@kong-ui-public/entities-plugins 9.105.0 → 9.106.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/entities-plugins.es.js +7939 -7897
- package/dist/entities-plugins.umd.js +35 -35
- package/dist/style.css +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/FlowCanvas.vue.d.ts +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/FlowCanvas.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/composables/useBranchLayout.d.ts +2 -1
- package/dist/types/components/free-form/Datakit/flow-editor/composables/useBranchLayout.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node/node.d.ts +2 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node/node.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/store/flow.d.ts +7 -8
- package/dist/types/components/free-form/Datakit/flow-editor/store/flow.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/types.d.ts +3 -2
- package/dist/types/components/free-form/Datakit/types.d.ts.map +1 -1
- package/package.json +7 -7
|
@@ -1,47 +1,47 @@
|
|
|
1
|
-
(function(xe,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("@vueuse/core"),require("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","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@vueuse/core","zod","@kong-ui-public/entities-plugins-icon"],t):(xe=typeof globalThis<"u"?globalThis:xe||self,t(xe["kong-ui-public-entities-plugins"]={},xe.Vue,xe["kong-ui-public-entities-shared"],xe.marked,xe.VueRouter,xe["kong-ui-public-i18n"],xe.entitiesPluginsMetadata,xe.forms,xe.entitiesVaults,null,xe.KongIcons,xe.Kongponents,xe.entitiesRedisConfigurations,null,xe.monaco,xe.core$1,xe.zod,xe.entitiesPluginsIcon))})(this,function(xe,t,ge,gr,wo,Ze,H,Me,ko,n2,Se,Oe,Co,o2,Wm,Xe,Q,Eo){"use strict";var e2=Object.defineProperty;var t2=(xe,t,ge)=>t in xe?e2(xe,t,{enumerable:!0,configurable:!0,writable:!0,value:ge}):xe[t]=ge;var ot=(xe,t,ge)=>t2(xe,typeof t!="symbol"?t+"":t,ge);function Xm(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 hr=Xm(Wm),rt={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"}}},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",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 jq node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return a response directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set gateway configuration data",description:"Get and set gateway host and request properties."},static:{name:"static",summary:"Define static values to use for call nodes",description:"Emits static values to be used as inputs for other nodes. The static node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Conditional execution",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Coming soon...",description:"Coming soon..."},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"},timeout:{label:"Timeout(s)"},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"},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'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(Te,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("@vueuse/core"),require("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","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@vueuse/core","zod","@kong-ui-public/entities-plugins-icon"],t):(Te=typeof globalThis<"u"?globalThis:Te||self,t(Te["kong-ui-public-entities-plugins"]={},Te.Vue,Te["kong-ui-public-entities-shared"],Te.marked,Te.VueRouter,Te["kong-ui-public-i18n"],Te.entitiesPluginsMetadata,Te.forms,Te.entitiesVaults,null,Te.KongIcons,Te.Kongponents,Te.entitiesRedisConfigurations,null,Te.monaco,Te.core$1,Te.zod,Te.entitiesPluginsIcon))})(this,function(Te,t,pe,wr,So,Qe,Y,je,vo,l2,xe,Ve,xo,s2,tg,Je,J,Ao){"use strict";var i2=Object.defineProperty;var a2=(Te,t,pe)=>t in Te?i2(Te,t,{enumerable:!0,configurable:!0,writable:!0,value:pe}):Te[t]=pe;var rt=(Te,t,pe)=>a2(Te,typeof t!="symbol"?t+"":t,pe);function ng(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 kr=ng(tg),it={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"}}},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",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 jq node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return a response directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set gateway configuration data",description:"Get and set gateway host and request properties."},static:{name:"static",summary:"Define static values to use for call nodes",description:"Emits static values to be used as inputs for other nodes. The static node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Conditional execution",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Coming soon...",description:"Coming soon..."},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"},timeout:{label:"Timeout(s)"},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"},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's counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error message",code_placeholder:"Code message",message_placeholder:"Error message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
2
2
|
If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
|
|
3
|
-
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function
|
|
4
|
-
client. If missing, it will be generated for you.`}},{tags:
|
|
3
|
+
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function Fe(){const e=Qe.createI18n("en-us",it);return{i18n:e,i18nT:Qe.i18nTComponent(e)}}function Cs(){const{capitalize:e}=pe.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(d,p,m)=>{var y,b,g;if(!(!d||!p||!m))switch(m.type){case"boolean":d[p]={type:pe.ConfigurationSchemaType.BadgeStatus,...d[p]};break;case"string":m.encrypted?d[p]={type:pe.ConfigurationSchemaType.Redacted,...d[p]}:d[p]={type:pe.ConfigurationSchemaType.Text,...d[p]};break;case"set":((y=m.elements)==null?void 0:y.type)==="string"&&(d[p]={type:pe.ConfigurationSchemaType.BadgeTag,...d[p]});break;case"array":n.includes(p)?d[p]={type:pe.ConfigurationSchemaType.BadgeMethod,...d[p]}:((b=m.elements)==null?void 0:b.type)==="string"?m.encrypted?d[p]={type:pe.ConfigurationSchemaType.RedactedArray,...d[p]}:d[p]={type:pe.ConfigurationSchemaType.BadgeTag,...d[p]}:((g=m.elements)==null?void 0:g.type)==="record"&&(d[p]={type:pe.ConfigurationSchemaType.Json,...d[p]});break;case"record":d[p]={type:pe.ConfigurationSchemaType.Json,...d[p]};break;default:d[p]={type:pe.ConfigurationSchemaType.Text,...d[p]};break}},convertToDotNotation:d=>d.replace(/-/g,"."),unFlattenObject:d=>{const p={};for(const m in d){const y=m.split(".");y.reduce((b,g,h)=>b[g]||(b[g]=isNaN(y[h+1])?y.length-1===h?d[m]:{}:[]),p)}return p},dismissField:(d,p,m="redis",y=!1)=>{const b=new RegExp("(?<=-redis-).*");if(typeof d!="object"||d===null)return d;m==="redis"?Object.keys(d).forEach(g=>{g.match(b)&&delete d[g]}):y?d[m]=null:delete d[m],Object.assign(d,p)},isObjectEmpty:d=>Object.keys(d).length===0,unsetNullForeignKey:(d,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(d)>-1&&p[d]===null&&(delete p[d],p[d.replace(".id","")]=null)},formatPluginFieldLabel:d=>e(d.replace(/_/g," ")),getTallestPluginCardHeight:d=>{let p=0;if(d.length)for(let m=0;m<d.length;m++){const y=d[m].$el;p=y.offsetHeight>p?y.offsetHeight:p}return p},getToggleVisibility:(d,p)=>{var m,y;if(d&&p){const b=(y=(m=window==null?void 0:window.getComputedStyle(d))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:y.split(" ").length;return p>b}return!0}}}var Cr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Cr||{});const Es=[Y.PluginGroup.AUTHENTICATION,Y.PluginGroup.AI,Y.PluginGroup.SECURITY,Y.PluginGroup.TRAFFIC_CONTROL,Y.PluginGroup.SERVERLESS,Y.PluginGroup.ANALYTICS_AND_MONITORING,Y.PluginGroup.TRANSFORMATIONS,Y.PluginGroup.LOGGING,Y.PluginGroup.DEPLOYMENT,Y.PluginGroup.WEBSOCKET,Y.PluginGroup.CUSTOM_PLUGINS],Ns={[Y.PluginGroup.AUTHENTICATION]:!1,[Y.PluginGroup.AI]:!1,[Y.PluginGroup.SECURITY]:!1,[Y.PluginGroup.TRAFFIC_CONTROL]:!1,[Y.PluginGroup.SERVERLESS]:!1,[Y.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[Y.PluginGroup.TRANSFORMATIONS]:!1,[Y.PluginGroup.LOGGING]:!1,[Y.PluginGroup.DEPLOYMENT]:!1,[Y.PluginGroup.CUSTOM_PLUGINS]:!1};var bn=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(bn||{});const wn=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},kn={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"},Gn={getColumnFields:wn,tags:kn,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}}}},Ss={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:kn}]},og={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"}}]},vs={fields:[{username:{}},{password:{inputType:"password"}},{tags:kn}]},rg={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"}}]},ig={class:"field-wrapper"},ag=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}=je.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=He.useI18n(),{t:c}=s,u={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(je.FORMS_CONFIG),{axiosInstance:d}=pe.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),y=t.ref([u]),b=async()=>{if((f==null?void 0:f.app)==="konnect")try{m.value=!0;let w=`${f==null?void 0:f.apiBaseUrl}/v1/realms`;const _=[];do{const k=await d.get(w);k&&k.data&&k.data.data&&_.push(...k.data.data.map(E=>({value:E.id,label:E.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),w=k.data.meta.next?`${f==null?void 0:f.apiBaseUrl}${k.data.meta.next}`:null}while(w);y.value=[u,..._]}catch(w){console.error("Failed to fetch Konnect realms",w)}finally{m.value=!1}},g=t.computed(()=>l.value.map(w=>w.id||"current-cp")),h=w=>{const _=w.includes("current-cp")?[{scope:"cp",id:null}]:[],k=l.value.filter(({scope:D})=>D!=="cp").map(({id:D})=>D),E=w.filter(D=>D!=="current-cp"),T=(k.length!==E.length||k.some(D=>!E.includes(D))?E.filter(D=>!k.includes(D)):E).map(D=>({...p(),scope:"realm",id:D}));l.value=[..._,...T]};return t.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),t.onMounted(()=>{b()}),n({clearValidationErrors:a}),(w,_)=>{const k=t.resolveComponent("KMultiselect");return t.openBlock(),t.createElementBlock("div",ig,[t.createVNode(k,{items:y.value,loading:m.value,"model-value":g.value,"onUpdate:modelValue":h},null,8,["items","loading","model-value"])])}}}),Ae=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},lg=Ae(ag,[["__scopeId","data-v-29b128ff"]]),xs={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
4
|
+
client. If missing, it will be generated for you.`}},{tags:kn},{ttl:{help:"Time-to-live value for data"}}]},sg=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(lg):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",unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},As={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
|
|
5
5
|
if this parameter isn’t provided, Kong will generate a value for you and
|
|
6
|
-
send it as part of the response body.`}},{tags:
|
|
6
|
+
send it as part of the response body.`}},{tags:kn}]},dg={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"}}]},ug={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
|
|
7
7
|
be auto-generated.`}},{algorithm:{order:1,hint:"The algorithm used to verify the token’s signature."}},{rsa_public_key:{order:2,type:"textArea",label:"RSA public-key",hint:`If algorithm is RSA or ECDSA, the public key (in PEM format) to
|
|
8
8
|
use to verify the token’s signature.`,rows:10,visible:e=>e&&e.algorithm&&/^((RS|PS|ES)(256|384|512)|EdDSA)$/.test(e.algorithm)}},{secret:{inputType:"text",hint:`If algorithm is HMAC, the secret used to sign JWTs for
|
|
9
|
-
this credential. If left out, will be auto-generated.`}},{tags:
|
|
9
|
+
this credential. If left out, will be auto-generated.`}},{tags:kn}]},fg={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"}}]},Is={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
|
|
10
10
|
will be generated for you.`,inputType:"text",encrypted:!0}},{client_secret:{submitWhenNull:!1,hint:`You can optionally set your own unique client_secret. If missing,
|
|
11
|
-
it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:
|
|
12
|
-
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:
|
|
13
|
-
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:_n},{ttl:{help:"Time-to-live value for data"}}]},sg=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)}}:{},cg={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},Vt={"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"]}},Un={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:ws,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:yn(ws),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:ks,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:yn(ks)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Cs,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:yn(Cs)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Ss,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:yn(Ss)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Ns,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:yn(Ns)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Es,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:yn(Es)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:ig,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},dg={acls:Zm,basicauth_credentials:Jm,keyauth_credentials:og,keyauth_enc_credentials:cg,oauth2_credentials:lg,hmacauth_credentials:rg,jwt_secrets:ag},ug=()=>{const{i18n:{t:e}}=De(),n={},o={};for(const[i,a]of Object.entries(Vt))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(Un))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:Un,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},No={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},fg={"config-prompts-prepend":{...No,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...No,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},pg={"config-templates":{...No,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},mg={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)}},gg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},hg={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:Fn.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"},_r={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},yg={"config-metrics":{..._r,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"}]}}}},_g={"config-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},bg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},wg={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},kg={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Cg={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Eg={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},vs=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:Fn.fields.arrayItems({newElementButtonLabel:"Add"})}),Eg),br={"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"}},Ng={"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":{}},Sg=["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]:Fn.fields.arrayItems({newElementButtonLabel:"Add"})}),Ng),xs={"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}}},vg={...xs,"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}}},xg={"config-rules":{...No,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},Ag={"config-session_redis_cluster_nodes":{...No,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},Ig={"config-flow-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Pg={"config-message-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Tg={"config-metrics":{..._r,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"]}]}}}},Og={"config-metrics":{..._r,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"]}]}}}},$g={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Bg={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var As=typeof global=="object"&&global&&global.Object===Object&&global,Vg=typeof self=="object"&&self&&self.Object===Object&&self,Rt=As||Vg||Function("return this")(),Ct=Rt.Symbol,Is=Object.prototype,Rg=Is.hasOwnProperty,Dg=Is.toString,So=Ct?Ct.toStringTag:void 0;function Mg(e){var n=Rg.call(e,So),o=e[So];try{e[So]=void 0;var r=!0}catch{}var i=Dg.call(e);return r&&(n?e[So]=o:delete e[So]),i}var Lg=Object.prototype,Fg=Lg.toString;function Ug(e){return Fg.call(e)}var Kg="[object Null]",jg="[object Undefined]",Ps=Ct?Ct.toStringTag:void 0;function bn(e){return e==null?e===void 0?jg:Kg:Ps&&Ps in Object(e)?Mg(e):Ug(e)}function zt(e){return e!=null&&typeof e=="object"}var Gg="[object Symbol]";function zi(e){return typeof e=="symbol"||zt(e)&&bn(e)==Gg}function Ts(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 At=Array.isArray,Os=Ct?Ct.prototype:void 0,$s=Os?Os.toString:void 0;function Bs(e){if(typeof e=="string")return e;if(At(e))return Ts(e,Bs)+"";if(zi(e))return $s?$s.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function wn(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function qg(e){return e}var zg="[object AsyncFunction]",Hg="[object Function]",Yg="[object GeneratorFunction]",Wg="[object Proxy]";function wr(e){if(!wn(e))return!1;var n=bn(e);return n==Hg||n==Yg||n==zg||n==Wg}var Hi=Rt["__core-js_shared__"],Vs=function(){var e=/[^.]+$/.exec(Hi&&Hi.keys&&Hi.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Xg(e){return!!Vs&&Vs in e}var Zg=Function.prototype,Jg=Zg.toString;function kn(e){if(e!=null){try{return Jg.call(e)}catch{}try{return e+""}catch{}}return""}var Qg=/[\\^$.*+?()[\]{}|]/g,eh=/^\[object .+?Constructor\]$/,th=Function.prototype,nh=Object.prototype,oh=th.toString,rh=nh.hasOwnProperty,ih=RegExp("^"+oh.call(rh).replace(Qg,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function ah(e){if(!wn(e)||Xg(e))return!1;var n=wr(e)?ih:eh;return n.test(kn(e))}function lh(e,n){return e==null?void 0:e[n]}function Cn(e,n){var o=lh(e,n);return ah(o)?o:void 0}var Yi=Cn(Rt,"WeakMap"),Rs=Object.create,sh=function(){function e(){}return function(n){if(!wn(n))return{};if(Rs)return Rs(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function ch(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 dh(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var uh=800,fh=16,ph=Date.now;function mh(e){var n=0,o=0;return function(){var r=ph(),i=fh-(r-o);if(o=r,i>0){if(++n>=uh)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function gh(e){return function(){return e}}var kr=function(){try{var e=Cn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),hh=kr?function(e,n){return kr(e,"toString",{configurable:!0,enumerable:!1,value:gh(n),writable:!0})}:qg,yh=mh(hh);function _h(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var bh=9007199254740991,wh=/^(?:0|[1-9]\d*)$/;function Wi(e,n){var o=typeof e;return n=n??bh,!!n&&(o=="number"||o!="symbol"&&wh.test(e))&&e>-1&&e%1==0&&e<n}function Ds(e,n,o){n=="__proto__"&&kr?kr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function Xi(e,n){return e===n||e!==e&&n!==n}var kh=Object.prototype,Ch=kh.hasOwnProperty;function Zi(e,n,o){var r=e[n];(!(Ch.call(e,n)&&Xi(r,o))||o===void 0&&!(n in e))&&Ds(e,n,o)}function vo(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?Ds(o,s,c):Zi(o,s,c)}return o}var Ms=Math.max;function Eh(e,n,o){return n=Ms(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=Ms(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),ch(e,this,s)}}var Nh=9007199254740991;function Ji(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Nh}function Qi(e){return e!=null&&Ji(e.length)&&!wr(e)}var Sh=Object.prototype;function Cr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||Sh;return e===o}function vh(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var xh="[object Arguments]";function Ls(e){return zt(e)&&bn(e)==xh}var Fs=Object.prototype,Ah=Fs.hasOwnProperty,Ih=Fs.propertyIsEnumerable,Er=Ls(function(){return arguments}())?Ls:function(e){return zt(e)&&Ah.call(e,"callee")&&!Ih.call(e,"callee")};function Ph(){return!1}var Us=typeof xe=="object"&&xe&&!xe.nodeType&&xe,Ks=Us&&typeof module=="object"&&module&&!module.nodeType&&module,Th=Ks&&Ks.exports===Us,js=Th?Rt.Buffer:void 0,Oh=js?js.isBuffer:void 0,xo=Oh||Ph,$h="[object Arguments]",Bh="[object Array]",Vh="[object Boolean]",Rh="[object Date]",Dh="[object Error]",Mh="[object Function]",Lh="[object Map]",Fh="[object Number]",Uh="[object Object]",Kh="[object RegExp]",jh="[object Set]",Gh="[object String]",qh="[object WeakMap]",zh="[object ArrayBuffer]",Hh="[object DataView]",Yh="[object Float32Array]",Wh="[object Float64Array]",Xh="[object Int8Array]",Zh="[object Int16Array]",Jh="[object Int32Array]",Qh="[object Uint8Array]",ey="[object Uint8ClampedArray]",ty="[object Uint16Array]",ny="[object Uint32Array]",ze={};ze[Yh]=ze[Wh]=ze[Xh]=ze[Zh]=ze[Jh]=ze[Qh]=ze[ey]=ze[ty]=ze[ny]=!0,ze[$h]=ze[Bh]=ze[zh]=ze[Vh]=ze[Hh]=ze[Rh]=ze[Dh]=ze[Mh]=ze[Lh]=ze[Fh]=ze[Uh]=ze[Kh]=ze[jh]=ze[Gh]=ze[qh]=!1;function oy(e){return zt(e)&&Ji(e.length)&&!!ze[bn(e)]}function ea(e){return function(n){return e(n)}}var Gs=typeof xe=="object"&&xe&&!xe.nodeType&&xe,Ao=Gs&&typeof module=="object"&&module&&!module.nodeType&&module,ry=Ao&&Ao.exports===Gs,ta=ry&&As.process,Kn=function(){try{var e=Ao&&Ao.require&&Ao.require("util").types;return e||ta&&ta.binding&&ta.binding("util")}catch{}}(),qs=Kn&&Kn.isTypedArray,na=qs?ea(qs):oy,iy=Object.prototype,ay=iy.hasOwnProperty;function zs(e,n){var o=At(e),r=!o&&Er(e),i=!o&&!r&&xo(e),a=!o&&!r&&!i&&na(e),l=o||r||i||a,s=l?vh(e.length,String):[],c=s.length;for(var u in e)(n||ay.call(e,u))&&!(l&&(u=="length"||i&&(u=="offset"||u=="parent")||a&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Wi(u,c)))&&s.push(u);return s}function Hs(e,n){return function(o){return e(n(o))}}var ly=Hs(Object.keys,Object),sy=Object.prototype,cy=sy.hasOwnProperty;function Ys(e){if(!Cr(e))return ly(e);var n=[];for(var o in Object(e))cy.call(e,o)&&o!="constructor"&&n.push(o);return n}function oa(e){return Qi(e)?zs(e):Ys(e)}function dy(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var uy=Object.prototype,fy=uy.hasOwnProperty;function py(e){if(!wn(e))return dy(e);var n=Cr(e),o=[];for(var r in e)r=="constructor"&&(n||!fy.call(e,r))||o.push(r);return o}function ra(e){return Qi(e)?zs(e,!0):py(e)}var my=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,gy=/^\w*$/;function hy(e,n){if(At(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||zi(e)?!0:gy.test(e)||!my.test(e)||n!=null&&e in Object(n)}var Io=Cn(Object,"create");function yy(){this.__data__=Io?Io(null):{},this.size=0}function _y(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var by="__lodash_hash_undefined__",wy=Object.prototype,ky=wy.hasOwnProperty;function Cy(e){var n=this.__data__;if(Io){var o=n[e];return o===by?void 0:o}return ky.call(n,e)?n[e]:void 0}var Ey=Object.prototype,Ny=Ey.hasOwnProperty;function Sy(e){var n=this.__data__;return Io?n[e]!==void 0:Ny.call(n,e)}var vy="__lodash_hash_undefined__";function xy(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Io&&n===void 0?vy:n,this}function En(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])}}En.prototype.clear=yy,En.prototype.delete=_y,En.prototype.get=Cy,En.prototype.has=Sy,En.prototype.set=xy;function Ay(){this.__data__=[],this.size=0}function Nr(e,n){for(var o=e.length;o--;)if(Xi(e[o][0],n))return o;return-1}var Iy=Array.prototype,Py=Iy.splice;function Ty(e){var n=this.__data__,o=Nr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Py.call(n,o,1),--this.size,!0}function Oy(e){var n=this.__data__,o=Nr(n,e);return o<0?void 0:n[o][1]}function $y(e){return Nr(this.__data__,e)>-1}function By(e,n){var o=this.__data__,r=Nr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Ht(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])}}Ht.prototype.clear=Ay,Ht.prototype.delete=Ty,Ht.prototype.get=Oy,Ht.prototype.has=$y,Ht.prototype.set=By;var Po=Cn(Rt,"Map");function Vy(){this.size=0,this.__data__={hash:new En,map:new(Po||Ht),string:new En}}function Ry(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Sr(e,n){var o=e.__data__;return Ry(n)?o[typeof n=="string"?"string":"hash"]:o.map}function Dy(e){var n=Sr(this,e).delete(e);return this.size-=n?1:0,n}function My(e){return Sr(this,e).get(e)}function Ly(e){return Sr(this,e).has(e)}function Fy(e,n){var o=Sr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Yt(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])}}Yt.prototype.clear=Vy,Yt.prototype.delete=Dy,Yt.prototype.get=My,Yt.prototype.has=Ly,Yt.prototype.set=Fy;var Uy="Expected a function";function ia(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(Uy);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(ia.Cache||Yt),o}ia.Cache=Yt;var Ky=500;function jy(e){var n=ia(e,function(r){return o.size===Ky&&o.clear(),r}),o=n.cache;return n}var Gy=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,qy=/\\(\\)?/g,zy=jy(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Gy,function(o,r,i,a){n.push(i?a.replace(qy,"$1"):r||o)}),n});function aa(e){return e==null?"":Bs(e)}function jn(e,n){return At(e)?e:hy(e,n)?[e]:zy(aa(e))}function vr(e){if(typeof e=="string"||zi(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function la(e,n){n=jn(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[vr(n[o++])];return o&&o==r?e:void 0}function Ws(e,n,o){var r=e==null?void 0:la(e,n);return r===void 0?o:r}function sa(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var Xs=Ct?Ct.isConcatSpreadable:void 0;function Hy(e){return At(e)||Er(e)||!!(Xs&&e&&e[Xs])}function Yy(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=Hy),i||(i=[]);++a<l;){var s=e[a];o(s)?sa(i,s):i[i.length]=s}return i}function Wy(e){var n=e==null?0:e.length;return n?Yy(e):[]}function Zs(e){return yh(Eh(e,void 0,Wy),e+"")}var ca=Hs(Object.getPrototypeOf,Object),Xy="[object Object]",Zy=Function.prototype,Jy=Object.prototype,Js=Zy.toString,Qy=Jy.hasOwnProperty,e_=Js.call(Object);function t_(e){if(!zt(e)||bn(e)!=Xy)return!1;var n=ca(e);if(n===null)return!0;var o=Qy.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&Js.call(o)==e_}function Qs(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 n_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:Qs(e,n,o)}var o_="\\ud800-\\udfff",r_="\\u0300-\\u036f",i_="\\ufe20-\\ufe2f",a_="\\u20d0-\\u20ff",l_=r_+i_+a_,s_="\\ufe0e\\ufe0f",c_="\\u200d",d_=RegExp("["+c_+o_+l_+s_+"]");function ec(e){return d_.test(e)}function u_(e){return e.split("")}var tc="\\ud800-\\udfff",f_="\\u0300-\\u036f",p_="\\ufe20-\\ufe2f",m_="\\u20d0-\\u20ff",g_=f_+p_+m_,h_="\\ufe0e\\ufe0f",y_="["+tc+"]",da="["+g_+"]",ua="\\ud83c[\\udffb-\\udfff]",__="(?:"+da+"|"+ua+")",nc="[^"+tc+"]",oc="(?:\\ud83c[\\udde6-\\uddff]){2}",rc="[\\ud800-\\udbff][\\udc00-\\udfff]",b_="\\u200d",ic=__+"?",ac="["+h_+"]?",w_="(?:"+b_+"(?:"+[nc,oc,rc].join("|")+")"+ac+ic+")*",k_=ac+ic+w_,C_="(?:"+[nc+da+"?",da,oc,rc,y_].join("|")+")",E_=RegExp(ua+"(?="+ua+")|"+C_+k_,"g");function N_(e){return e.match(E_)||[]}function S_(e){return ec(e)?N_(e):u_(e)}function v_(e){return function(n){n=aa(n);var o=ec(n)?S_(n):void 0,r=o?o[0]:n.charAt(0),i=o?n_(o,1).join(""):n.slice(1);return r[e]()+i}}var x_=v_("toUpperCase");function A_(){this.__data__=new Ht,this.size=0}function I_(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function P_(e){return this.__data__.get(e)}function T_(e){return this.__data__.has(e)}var O_=200;function $_(e,n){var o=this.__data__;if(o instanceof Ht){var r=o.__data__;if(!Po||r.length<O_-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Yt(r)}return o.set(e,n),this.size=o.size,this}function Wt(e){var n=this.__data__=new Ht(e);this.size=n.size}Wt.prototype.clear=A_,Wt.prototype.delete=I_,Wt.prototype.get=P_,Wt.prototype.has=T_,Wt.prototype.set=$_;function B_(e,n){return e&&vo(n,oa(n),e)}function V_(e,n){return e&&vo(n,ra(n),e)}var lc=typeof xe=="object"&&xe&&!xe.nodeType&&xe,sc=lc&&typeof module=="object"&&module&&!module.nodeType&&module,R_=sc&&sc.exports===lc,cc=R_?Rt.Buffer:void 0,dc=cc?cc.allocUnsafe:void 0;function D_(e,n){if(n)return e.slice();var o=e.length,r=dc?dc(o):new e.constructor(o);return e.copy(r),r}function M_(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 uc(){return[]}var L_=Object.prototype,F_=L_.propertyIsEnumerable,fc=Object.getOwnPropertySymbols,fa=fc?function(e){return e==null?[]:(e=Object(e),M_(fc(e),function(n){return F_.call(e,n)}))}:uc;function U_(e,n){return vo(e,fa(e),n)}var K_=Object.getOwnPropertySymbols,pc=K_?function(e){for(var n=[];e;)sa(n,fa(e)),e=ca(e);return n}:uc;function j_(e,n){return vo(e,pc(e),n)}function mc(e,n,o){var r=n(e);return At(e)?r:sa(r,o(e))}function pa(e){return mc(e,oa,fa)}function gc(e){return mc(e,ra,pc)}var ma=Cn(Rt,"DataView"),ga=Cn(Rt,"Promise"),ha=Cn(Rt,"Set"),hc="[object Map]",G_="[object Object]",yc="[object Promise]",_c="[object Set]",bc="[object WeakMap]",wc="[object DataView]",q_=kn(ma),z_=kn(Po),H_=kn(ga),Y_=kn(ha),W_=kn(Yi),Et=bn;(ma&&Et(new ma(new ArrayBuffer(1)))!=wc||Po&&Et(new Po)!=hc||ga&&Et(ga.resolve())!=yc||ha&&Et(new ha)!=_c||Yi&&Et(new Yi)!=bc)&&(Et=function(e){var n=bn(e),o=n==G_?e.constructor:void 0,r=o?kn(o):"";if(r)switch(r){case q_:return wc;case z_:return hc;case H_:return yc;case Y_:return _c;case W_:return bc}return n});var X_=Object.prototype,Z_=X_.hasOwnProperty;function J_(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&Z_.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var xr=Rt.Uint8Array;function ya(e){var n=new e.constructor(e.byteLength);return new xr(n).set(new xr(e)),n}function Q_(e,n){var o=n?ya(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var eb=/\w*$/;function tb(e){var n=new e.constructor(e.source,eb.exec(e));return n.lastIndex=e.lastIndex,n}var kc=Ct?Ct.prototype:void 0,Cc=kc?kc.valueOf:void 0;function nb(e){return Cc?Object(Cc.call(e)):{}}function ob(e,n){var o=n?ya(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var rb="[object Boolean]",ib="[object Date]",ab="[object Map]",lb="[object Number]",sb="[object RegExp]",cb="[object Set]",db="[object String]",ub="[object Symbol]",fb="[object ArrayBuffer]",pb="[object DataView]",mb="[object Float32Array]",gb="[object Float64Array]",hb="[object Int8Array]",yb="[object Int16Array]",_b="[object Int32Array]",bb="[object Uint8Array]",wb="[object Uint8ClampedArray]",kb="[object Uint16Array]",Cb="[object Uint32Array]";function Eb(e,n,o){var r=e.constructor;switch(n){case fb:return ya(e);case rb:case ib:return new r(+e);case pb:return Q_(e,o);case mb:case gb:case hb:case yb:case _b:case bb:case wb:case kb:case Cb:return ob(e,o);case ab:return new r;case lb:case db:return new r(e);case sb:return tb(e);case cb:return new r;case ub:return nb(e)}}function Nb(e){return typeof e.constructor=="function"&&!Cr(e)?sh(ca(e)):{}}var Sb="[object Map]";function vb(e){return zt(e)&&Et(e)==Sb}var Ec=Kn&&Kn.isMap,xb=Ec?ea(Ec):vb,Ab="[object Set]";function Ib(e){return zt(e)&&Et(e)==Ab}var Nc=Kn&&Kn.isSet,Pb=Nc?ea(Nc):Ib,Tb=1,Ob=2,$b=4,Sc="[object Arguments]",Bb="[object Array]",Vb="[object Boolean]",Rb="[object Date]",Db="[object Error]",vc="[object Function]",Mb="[object GeneratorFunction]",Lb="[object Map]",Fb="[object Number]",xc="[object Object]",Ub="[object RegExp]",Kb="[object Set]",jb="[object String]",Gb="[object Symbol]",qb="[object WeakMap]",zb="[object ArrayBuffer]",Hb="[object DataView]",Yb="[object Float32Array]",Wb="[object Float64Array]",Xb="[object Int8Array]",Zb="[object Int16Array]",Jb="[object Int32Array]",Qb="[object Uint8Array]",e0="[object Uint8ClampedArray]",t0="[object Uint16Array]",n0="[object Uint32Array]",qe={};qe[Sc]=qe[Bb]=qe[zb]=qe[Hb]=qe[Vb]=qe[Rb]=qe[Yb]=qe[Wb]=qe[Xb]=qe[Zb]=qe[Jb]=qe[Lb]=qe[Fb]=qe[xc]=qe[Ub]=qe[Kb]=qe[jb]=qe[Gb]=qe[Qb]=qe[e0]=qe[t0]=qe[n0]=!0,qe[Db]=qe[vc]=qe[qb]=!1;function To(e,n,o,r,i,a){var l,s=n&Tb,c=n&Ob,u=n&$b;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!wn(e))return e;var f=At(e);if(f){if(l=J_(e),!s)return dh(e,l)}else{var d=Et(e),p=d==vc||d==Mb;if(xo(e))return D_(e,s);if(d==xc||d==Sc||p&&!i){if(l=c||p?{}:Nb(e),!s)return c?j_(e,V_(l,e)):U_(e,B_(l,e))}else{if(!qe[d])return i?e:{};l=Eb(e,d,s)}}a||(a=new Wt);var m=a.get(e);if(m)return m;a.set(e,l),Pb(e)?e.forEach(function(g){l.add(To(g,n,o,g,e,a))}):xb(e)&&e.forEach(function(g,h){l.set(h,To(g,n,o,h,e,a))});var y=u?c?gc:pa:c?ra:oa,b=f?void 0:y(e);return _h(b||e,function(g,h){b&&(h=g,g=e[h]),Zi(l,h,To(g,n,o,h,e,a))}),l}var o0=1,r0=4;function Gn(e){return To(e,o0|r0)}var i0="__lodash_hash_undefined__";function a0(e){return this.__data__.set(e,i0),this}function l0(e){return this.__data__.has(e)}function Ar(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Yt;++n<o;)this.add(e[n])}Ar.prototype.add=Ar.prototype.push=a0,Ar.prototype.has=l0;function s0(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 c0(e,n){return e.has(n)}var d0=1,u0=2;function Ac(e,n,o,r,i,a){var l=o&d0,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var u=a.get(e),f=a.get(n);if(u&&f)return u==n&&f==e;var d=-1,p=!0,m=o&u0?new Ar:void 0;for(a.set(e,n),a.set(n,e);++d<s;){var y=e[d],b=n[d];if(r)var g=l?r(b,y,d,n,e,a):r(y,b,d,e,n,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!s0(n,function(h,w){if(!c0(m,w)&&(y===h||i(y,h,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(y===b||i(y,b,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function f0(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function p0(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var m0=1,g0=2,h0="[object Boolean]",y0="[object Date]",_0="[object Error]",b0="[object Map]",w0="[object Number]",k0="[object RegExp]",C0="[object Set]",E0="[object String]",N0="[object Symbol]",S0="[object ArrayBuffer]",v0="[object DataView]",Ic=Ct?Ct.prototype:void 0,_a=Ic?Ic.valueOf:void 0;function x0(e,n,o,r,i,a,l){switch(o){case v0:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case S0:return!(e.byteLength!=n.byteLength||!a(new xr(e),new xr(n)));case h0:case y0:case w0:return Xi(+e,+n);case _0:return e.name==n.name&&e.message==n.message;case k0:case E0:return e==n+"";case b0:var s=f0;case C0:var c=r&m0;if(s||(s=p0),e.size!=n.size&&!c)return!1;var u=l.get(e);if(u)return u==n;r|=g0,l.set(e,n);var f=Ac(s(e),s(n),r,i,a,l);return l.delete(e),f;case N0:if(_a)return _a.call(e)==_a.call(n)}return!1}var A0=1,I0=Object.prototype,P0=I0.hasOwnProperty;function T0(e,n,o,r,i,a){var l=o&A0,s=pa(e),c=s.length,u=pa(n),f=u.length;if(c!=f&&!l)return!1;for(var d=c;d--;){var p=s[d];if(!(l?p in n:P0.call(n,p)))return!1}var m=a.get(e),y=a.get(n);if(m&&y)return m==n&&y==e;var b=!0;a.set(e,n),a.set(n,e);for(var g=l;++d<c;){p=s[d];var h=e[p],w=n[p];if(r)var _=l?r(w,h,p,n,e,a):r(h,w,p,e,n,a);if(!(_===void 0?h===w||i(h,w,o,r,a):_)){b=!1;break}g||(g=p=="constructor")}if(b&&!g){var k=e.constructor,E=n.constructor;k!=E&&"constructor"in e&&"constructor"in n&&!(typeof k=="function"&&k instanceof k&&typeof E=="function"&&E instanceof E)&&(b=!1)}return a.delete(e),a.delete(n),b}var O0=1,Pc="[object Arguments]",Tc="[object Array]",Ir="[object Object]",$0=Object.prototype,Oc=$0.hasOwnProperty;function B0(e,n,o,r,i,a){var l=At(e),s=At(n),c=l?Tc:Et(e),u=s?Tc:Et(n);c=c==Pc?Ir:c,u=u==Pc?Ir:u;var f=c==Ir,d=u==Ir,p=c==u;if(p&&xo(e)){if(!xo(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Wt),l||na(e)?Ac(e,n,o,r,i,a):x0(e,n,c,o,r,i,a);if(!(o&O0)){var m=f&&Oc.call(e,"__wrapped__"),y=d&&Oc.call(n,"__wrapped__");if(m||y){var b=m?e.value():e,g=y?n.value():n;return a||(a=new Wt),i(b,g,o,r,a)}}return p?(a||(a=new Wt),T0(e,n,o,r,i,a)):!1}function $c(e,n,o,r,i){return e===n?!0:e==null||n==null||!zt(e)&&!zt(n)?e!==e&&n!==n:B0(e,n,o,r,$c,i)}function V0(e,n){return e!=null&&n in Object(e)}function R0(e,n,o){n=jn(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=vr(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&&Ji(i)&&Wi(l,i)&&(At(e)||Er(e)))}function D0(e,n){return e!=null&&R0(e,n,V0)}function M0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function L0(e,n){return n.length<2?e:la(e,Qs(n,0,-1))}var F0="[object Map]",U0="[object Set]",K0=Object.prototype,j0=K0.hasOwnProperty;function Bc(e){if(e==null)return!0;if(Qi(e)&&(At(e)||typeof e=="string"||typeof e.splice=="function"||xo(e)||na(e)||Er(e)))return!e.length;var n=Et(e);if(n==F0||n==U0)return!e.size;if(Cr(e))return!Ys(e).length;for(var o in e)if(j0.call(e,o))return!1;return!0}function Oo(e,n){return $c(e,n)}function Vc(e,n){return n=jn(n,e),e=L0(e,n),e==null||delete e[vr(M0(n))]}function G0(e){return t_(e)?void 0:e}var q0=1,z0=2,H0=4,$o=Zs(function(e,n){var o={};if(e==null)return o;var r=!1;n=Ts(n,function(a){return a=jn(a,e),r||(r=a.length>1),a}),vo(e,gc(e),o),r&&(o=To(o,q0|z0|H0,G0));for(var i=n.length;i--;)Vc(o,n[i]);return o});function Rc(e,n,o,r){if(!wn(e))return e;n=jn(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=vr(n[i]),u=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];u=void 0,u===void 0&&(u=wn(f)?f:Wi(n[i+1])?[]:{})}Zi(s,c,u),s=s[c]}return e}function Y0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=la(e,l);o(s,l)&&Rc(a,jn(l,e),s)}return a}function W0(e,n){return Y0(e,n,function(o,r){return D0(e,r)})}var ba=Zs(function(e,n){return e==null?{}:W0(e,n)});function X0(e,n,o){return e==null?e:Rc(e,n,o)}var Z0=0;function Pr(e){var n=++Z0;return aa(e)+n}function Dc(e,n){return e==null?!0:Vc(e,n)}const J0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],Nn=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,J0.some(s=>Oo(e.confluent,s))&&(e.confluent=null)},Q0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Nn((n=e.config)==null?void 0:n.schema_registry)}},ew={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Nn((n=e.config)==null?void 0:n.schema_registry)}},tw={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Nn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Nn(i==null?void 0:i.schema_registry)})}},nw={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Nn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Nn(i==null?void 0:i.schema_registry)})}},ow={shamefullyTransformPayload:({payload:e})=>{var n;Nn((n=e.config)==null?void 0:n.schema_registry)}},rw={"config-static_tags":{..._r,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"}]}}}},iw={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function wa(e,n){const o=iw[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const ka=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),Bo={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},Mc=Symbol("TOASTER_PROVIDER");function Lc(){return t.inject(ka,[])}function aw(e){t.provide(ka,e)}const lw=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},Fc=(e,n)=>(e.order??0)-(n.order??0),Uc=(e,n)=>lw(e,n)||Fc(e,n)||e.model.localeCompare(n.model),Ke={useI18n:De,usePluginMetaData:ug,usePluginHelpers:ys,useSchemas:e=>{const{capitalize:n}=ge.useStringHelpers(),{convertToDotNotation:o}=ys(),{i18n:{t:r}}=De(),i=Lc(),a={"application-registration":{overwriteDefault:!0,formSchema:{...hg}},datadog:{...yg},"exit-transformer":{..._g},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Tg},"statsd-advanced":{...Og},"route-by-header":{...xg},"ai-prompt-decorator":{...fg},"ai-prompt-template":{...pg},"ai-proxy-advanced":{...mg},"ai-llm-as-judge":{...gg},"vault-auth":{...Bg},"oas-validation":{...Cg},mocking:{...kg},"rate-limiting":{...br},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":br["config-consumer_groups"]}:{...br},"graphql-rate-limiting-advanced":{...bg},"injection-protection":{...wg},"response-ratelimiting":{...br},"pre-function":{...vs},"post-function":{...vs},"request-transformer-advanced":{...Sg},"response-transformer":{...xs},"response-transformer-advanced":{...vg},zipkin:{...rw},"upstream-oauth":{...$g},saml:{...Ag},"kafka-upstream":{...Q0},"solace-consume":{...Ig},"solace-upstream":{...Pg},"key-auth":ng(e),"key-auth-enc":sg(e),confluent:{...ew},"confluent-consume":{...tw},"kafka-consume":{...nw},"kafka-log":{...ow}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,N,I,D)=>{let G={};(N||C)&&(G=N||(C.fields?C.fields:C));const K=l().concat(C.blacklist?C.blacklist:[]),S=Object.keys(G).filter(v=>!K.includes(v)),ne=S.indexOf("comparator");ne>-1&&S.splice(ne,1);let x={fields:[]};const q={};S.forEach(v=>{u(G[v],v,G,q,x,I)});const U=q.name,te=Vt[U],V=[],T=v=>{const P=["cluster-cache"];for(const A of P)if(v.model.includes(A))return!1;return new RegExp("(?<=-redis-).*").test(v.model)};if(x._supported_redis_partial_type=C._supported_redis_partial_type,x._redis_partial_path=C._redis_partial_path,Me.getSharedFormName(U)||wa(U,i)||te!=null&&te.useLegacyForm||e!=null&&e.credential||D==="freeform"){if(te!=null&&te.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const v of x.fields)if(T(v)){V.push(v);continue}x.fields=x.fields.filter(v=>!T(v)),V.length&&x.fields.push({id:"_redis",fields:V,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}x.fields.sort((v,P)=>(v.order=v.order||0,P.order=P.order||0,v.order-P.order))}else{const v=[],P=[],A=[],Y=[],W={};if(te!=null&&te.fieldRules){const de=[...te.fieldRules.atLeastOneOf??[],...te.fieldRules.onlyOneOf??[],...te.fieldRules.mutuallyRequired??[]];if(te.fieldRules.onlyOneOfMutuallyRequired)for(const he of te.fieldRules.onlyOneOfMutuallyRequired)de.push(...he);for(const he of de)for(const X of he)W[X.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const de of x.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&T(de)){Y.push(de);continue}if(de.pinned){v.push(de);continue}if(de.required||W[de.model]!==void 0){W[de.model]===!1&&(W[de.model]=!0),P.push(de);continue}A.push(de)}Y.length&&A.push({id:"_redis",fields:Y,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const ie=Object.entries(W).filter(([,de])=>!de).map(([de])=>de.replace(/-/g,".").replace(/_/g,"-"));ie.length>0&&console.warn(`Unknown checked fields for plugin ${U}: ${ie.join(", ")}`);const oe=[];v.length>0&&oe.push({fields:v.sort(Fc)}),(P.length>0||A.length>0)&&oe.push({fields:P.sort(Uc),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:A.sort(Uc),triggerLabel:{expand:r("plugins.form.grouping.advanced_parameters.view"),collapse:r("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),x={groups:oe}}return{schema:x,model:q,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",u=(C,N,I,D,G,K)=>{const S=c(C);return D[N]=S?C.default:null,C.id=N,C.model=N,C.fields&&C.type==="record"?d(C,N,I,D,G,K):(I[N]=C,k(C,D),K&&K[N]&&f(I[N],K[N]),G.fields.push(C)),I},f=(C,N)=>(N&&(Object.assign(C,N),N.label&&(C.label=N.label)),C),d=(C,N,I,D,G,K)=>{C.fields.forEach(S=>{Object.keys(S).forEach(ne=>{const x=S[ne];I=u(x,N+"-"+ne,I,D,G,K)})})},p=(C,N)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const I=e==null?void 0:e.entityId;N[C.model]=I?{id:I}: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])},y=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")},b=C=>{C.type="checkbox",C.default=!0,C.required=!1},g=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 I=Object.keys(N)[0];return{model:I,type:"input",label:n(I),placeholder:I,inputType:N[I].type}})}}]})},h=C=>C.fields.reduce((N,I)=>(I.fields&&I.fields.forEach(D=>{N[D.model]=D}),I.model&&(N[I.model]=I),N),{}),w=(C,N)=>{if(!Me.customFields.includes(C.model))return;const I=h(C);Me.customFields.forEach(D=>{Object.keys(I).forEach(G=>{const K=c(I[G]);N[G]=K?I[G].default:null}),delete N[D]})},_=(C,N)=>C.inputType==="hidden"?"":o(n(C.label||N.replace(/_/g," "))),k=(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":y(C);break;case"boolean":b(C);break;case"map":g(C);break}C.inputType==="foreign"&&p(C,N),C.label=_(C,C.model)};function E(C,N){if(N==null||N.type&&N.type!=="record"||typeof C!="object"||C==null)return C;const I={};for(const D of N.fields){const G=Object.keys(D)[0],K=D[G];K.type==="record"?I[G]=E(C[G],K):K.type==="array"&&Array.isArray(C[G])&&K.elements.type==="record"?I[G]=C[G].map(S=>E(S,K.elements)):I[G]=C[G]}return I}return{buildFormSchema:u,parseSchema:s,customSchemas:a,typedefs:Fn,pruneRecord:E}},useExperimentalFreeForms:Lc,useProvideExperimentalFreeForms:aw},lt="/v2/control-planes/{controlPlaneId}/core-entities",ut="/{workspace}",We={list:{konnect:{all:`${lt}/plugins`,forEntity:`${lt}/{entityType}/{entityId}/plugins`},kongManager:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${lt}/v1/available-plugins`,streamingCustomPlugins:`${lt}/custom-plugins`,schemaCustomPluginItem:`${lt}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${lt}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${ut}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${lt}/plugins`,forEntity:`${lt}/{entityType}/{entityId}/plugins`},edit:{all:`${lt}/plugins/{id}`,forEntity:`${lt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${lt}/{resourceEndpoint}`,edit:`${lt}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${lt}/v1/schemas/json/plugin/validate`,entityGetOne:`${lt}/{entity}/{id}`,entityGetAll:`${lt}/{entity}`,entityPeek:`${lt}/{entity}?size={amount}`},kongManager:{create:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},edit:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${ut}/schemas/plugins/{plugin}`,credential:{create:`${ut}/{resourceEndpoint}`,edit:`${ut}/{resourceEndpoint}/{id}`},credentialSchema:`${ut}/schemas/{plugin}`,validate:`${ut}/schemas/plugins/validate`,entityGetOne:`${ut}/{entity}/{id}`,entityGetAll:`${ut}/{entity}`}},item:{konnect:{all:`${lt}/plugins/{id}`,forEntity:`${lt}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`}}},sw={key:0},cw=ve(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Ke.usePluginHelpers(),{i18n:{t:r}}=Ke.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(u=>o(u)).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 u=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(u,{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,d)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${d}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",sw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,d)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${d}`},[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-${d}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]),{t:qn}=Ze.createI18n("en-us",rt);function Ca(e){return e.map(n=>({value:n,label:`${n}`}))}const Ea="*",Kc="$",jc=".";function It(...e){return e.join(jc)}function Na(...e){return It(Kc,...e)}function Gc(e){return e.startsWith(It(Kc,""))}function zn(e){return e.split(jc).filter(n=>n!=="")}function Vo(e){const n=zn(e);return n[n.length-1]}const dw=e=>{var n,o;return e.type==="redis-ce"?qn("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.length?qn("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?qn("redis.shared_configuration.type_label.cluster"):qn("redis.shared_configuration.type_label.host_port")},uw={"redis-ce":qn("redis.shared_configuration.open_source"),"redis-ee":qn("redis.shared_configuration.enterprise")},fw=e=>uw[e]??"";function pw(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 mw(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const qc=Symbol("free-form-data"),zc=Symbol("free-form-schema"),Hc=Symbol("free-form-field-path"),Sa=Symbol("free-form-field-renderer-slots"),Tr=Symbol("free-form-field-renderer-matchers-map"),Yc=Symbol("free-form-config"),Wc=Symbol("free-form-field-reset-label-path-setting"),Hn="free-form-field-renderers-slot",gw={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function hw(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,va(r,n)):e.type==="array"&&e.elements&&Object.assign(o,xa(e,n)),o}function va(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?It(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=va(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=xa(a,l);Object.assign(o,s)}}return o}function xa(e,n=""){const o={};if(e.elements){const r=e.elements,i=It(n,Ea);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=va(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=xa(r,i);Object.assign(o,a)}}return o}function Aa(e){const n=zn(e).map(o=>/^\d+$/.test(o)?Ea:o);return It(...n)}function yw(e){const n=t.toValue(e),o=t.computed(()=>n?hw(n):{});function r(f){var d;return f==null?n:(d=o.value)==null?void 0:d[Aa(f)]}function i(f,d=!1){const p=r(f);return p?p.default!==void 0?p.default:d||p.required?p.type==="record"?a(p,f):p.type==="array"?[]:null:null:null}function a(f,d){const p={};if(Array.isArray(f.fields))for(const m of f.fields){const y=Object.keys(m)[0],b=d?`${d}.${y}`:y,g=i(b,!1);g!==void 0&&(p[y]=g)}return p}function l(f){return f?i(f,!0):a(r(),"")}function s(f){const d=r(f),p=d!=null&&d.description?gr.marked.parse(d.description,{async:!1}):void 0;return{...gw,"data-testid":`ff-label-${f}`,info:p}}function c(f){var p;const d=r(f);return Ca((d==null?void 0:d.one_of)||((p=d.elements)==null?void 0:p.one_of)||[])}function u(f){const d=r(f),p=d==null?void 0:d.default;let m=null;if((d==null?void 0:d.type)==="foreign"&&(p!=null&&p.id))m=p.id;else{if(p==null||typeof p=="object"||p==="")return null;if(Array.isArray(p)){if(p.length===0)return null;m=p.join(", ")}else m=p.toString()}return`Default: ${m}`}return{getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:u}}function Ye(){const e=t.inject(qc),n=t.inject(zc),o=t.inject(Yc,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!n)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...n}}const Xc=e=>{const n=t.inject(Hc,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!Gc(r)&&n.value&&(i=It(n.value,r)),Gc(r)&&(i=i.slice(Na("").length)),i});return t.provide(Hc,o),o},_w=e=>{const{getSchema:n}=Ye(),{default:o,...r}=t.useSlots(),i=t.inject(Sa),a=t.inject(Tr),l=t.computed(()=>{const c=t.toValue(i),u=Object.keys(r).filter(f=>f!==Hn&&f!=="item").reduce((f,d)=>{const p=Aa(It(t.toValue(e),d));return{...f,[p]:r[d]}},{});return c?{...c,...u}:u});t.provide(Sa,l);const s=t.toValue(e);return t.computed(()=>{if(o)return;const c=l.value[Aa(t.toValue(e))];if(c)return c;for(const[u,f]of a)if(u({path:s,schema:n(s)}))return f})},bw={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function ww(e){return bw[e.toLocaleLowerCase()]??e}function kw(e,n){const o=t.inject(Wc,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?It(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:u,isolate:f}=c,d=u?It(u,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=d,l.value.isolate=!1,l.value.parentPath=d}};(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(Wc,l),a}function Cw(e){return zn(e).map(o=>o.split("_").map(ww).join(" ")).map(x_).join(" › ")}function Ew(e,n){const o=t.toValue(e),r=Vo(o),{formConfig:i}=Ye(),a=kw(r,n),{getSchema:l}=Ye(),s=Zc(e);return t.computed(()=>{var p;const c=a.value??r,u=(p=s.value.parent)!=null&&p.path?l(s.value.parent.path):null,d=(u==null?void 0:u.type)==="array"?"":Cw(c);return i.transformLabel?i.transformLabel(d,o):d})}function Pt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ye(),a=t.toValue(e),l=t.toValue(n),s=Ew(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 Nw(e){var r;const n=zn(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?It(o.parent.path,i):i,o={parent:o}}return o}function Zc(e){return t.computed(()=>Nw(t.toValue(e)))}function Jc(e){const{formData:n}=Ye(),o=Xc(e);return{value:t.computed({get:()=>Ws(n,zn(o.value)),set:i=>X0(n,zn(o.value),i)})}}function wt(e){const{getSchema:n}=Ye(),o=Xc(e),r=_w(o),{value:i}=Jc(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:Zc(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function Ro(e){const{getSchema:n}=Ye(),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 Qc(e,n){const o=new WeakMap,r=new Map;function i(){return Pr(`${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((u,f)=>{c.add(f)}),Array.from(r.keys()).forEach(u=>{c.has(u)||r.delete(u)})},{immediate:!0,deep:!0}),{getKey:a}}const Sw="__request_callout_";function ed(){return Pr(Sw)}const Sn=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?Oe.KTextArea:Oe.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,d=>{s.value=d});const{formConfig:c}=Ye(),u=d=>{d!==s.value&&(s.value=d,c.updateOnChange||i("update:modelValue",d))},f=()=>{c.updateOnChange&&i("update:modelValue",s.value)};return(d,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(d.$attrs,{"character-limit":l.value,"model-value":d.modelValue,resizable:d.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":u}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,y)=>({name:y,fn:t.withCtx(b=>[t.renderSlot(d.$slots,y,t.normalizeProps(t.guardReactiveProps(b)))])}))]),1040,["character-limit","model-value","resizable"]))}}),vw=["innerHTML"],Yn=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}=De(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=wt(t.toRef(()=>e.name)),c=Pt(s.path,t.toRef({...i,...o})),u=l==null?void 0:l.value;function f(h){u!==void 0&&h===""&&h!==u?(l.value=null,a("update:modelValue",null)):(l.value=h.trim(),a("update:modelValue",h.trim()))}const d=t.computed(()=>{var h;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((h=s.schema)==null?void 0:h.value).encrypted}),p=t.inject(Me.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var h;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((h=s.schema.value)!=null&&h.referenceable)}),y=t.computed(()=>({referenceable:m.value})),b=Ro(s.ancestors),g=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Vo(e.name)==="name");return(h,w)=>{var k;const _=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},h.$attrs)),[t.createVNode(Sn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:d.value,type:d.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":g.value,"data-autofocus":t.unref(b),"data-testid":`ff-${s.path.value}`,error:h.error,"error-message":h.errorMessage,help:h.multiline&&h.error?h.errorMessage:h.help,"model-value":t.unref(l)??"",multiline:h.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(k=t.unref(c).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,vw)],!0)]),key:"0"}:void 0,h.multiline&&h.error?void 0:{name:"help",fn:t.withCtx(()=>[t.renderSlot(h.$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:y.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(_,{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"]]),xw=["innerHTML"],Ia=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}=wt(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=Pt(i.path,o);return(c,u)=>{var d;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(Oe.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},[(d=t.unref(s).labelAttributes)!=null&&d.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,xw)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),td=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(y=>[y,m.getPropertyValue(y)]))}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 y=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...y,transition:""})})}function c(p){a(p)}function u(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function d(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:d,onBeforeEnter:l,onBeforeLeave:u,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),Aw=["data-testid"],Iw=["data-testid"],Pw=["data-testid"],Tw=["innerHTML"],Ow={class:"ff-object-field-actions"},$w=["data-testid"],gt=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}=wt(t.toRef(n,"name")),{getSchema:i,getDefault:a}=Ye(),l=t.useModel(e,"added"),s=t.useModel(e,"expanded"),c=t.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),u=t.computed(()=>{var g,h;if((g=r.ancestors)!=null&&g.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((h=i(w.path))==null?void 0:h.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:u.value?"reset":"inherit"),d=Pt(r.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:f.value}))),p=t.computed(()=>d.value.required?!0:l.value??e.defaultAdded),m=t.computed(()=>e.asChild!==void 0?e.asChild:u.value),y=t.computed(()=>{let g=r.schema.value.fields;return e.omit&&(g=g.filter(h=>!e.omit.includes(Object.keys(h)[0]))),e.fieldsOrder?g.sort((h,w)=>{const _=Object.keys(h)[0],k=Object.keys(w)[0],E=e.fieldsOrder.indexOf(_),C=e.fieldsOrder.indexOf(k);return E===-1&&C===-1?0:E===-1?1:C===-1?-1:E-C}):g});function b(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,g=>{e.collapsible&&(s.value=g)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(g,h)=>{var _;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(g.$slots[t.unref(Hn)]))),r.error?(t.openBlock(),t.createBlock(w,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},g.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,k=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(k)[0],name:Object.keys(k)[0]},null,8,["name"]))),128))],!0)],16,Aw)):(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},g.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Oe.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(d),required:!1},{"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(_=t.unref(d).labelAttributes)!=null&&_.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Tw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",Ow,[g.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(Oe.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:h[0]||(h[0]=k=>s.value=!c.value)},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(Se.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(d).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.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:b},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(Se.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(Se.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,Pw),t.createVNode(td,null,{default:t.withCtx(()=>[c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,k=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(k)[0],name:Object.keys(k)[0]},null,8,["name"]))),128))],!0)],8,$w)):t.createCommentVNode("",!0)]),_:3})],16,Iw))],64)}}}),[["__scopeId","data-v-6f044592"]]),Bw=["innerHTML"],Wn=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}=wt(t.toRef(()=>e.name)),a=Pt(i.path,o),l=t.computed(()=>{var b;const p=(b=i.schema)==null?void 0:b.value;if(typeof p.gt=="number")return{min:p.gt};const[m,y]=p.between??[];return{min:o.min??m,max:o.max??y}}),s=n,c=r.value,u=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 d=Ro(i.ancestors);return(p,m)=>{var b;const y=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(y,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(Sn,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(d),"data-testid":`ff-${i.path.value}`,"model-value":u.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(b=t.unref(a).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,Bw)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),Vw=["innerHTML"],Nt=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}=Ye(),{value:a,...l}=wt(t.toRef(()=>e.name)),s=Pt(l.path,r),c=t.computed(()=>e.items?e.items:l.path?i(l.path.value):[]),u=t.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=l.schema.value)==null?void 0:d.type)==="set"}),f=t.computed(()=>u.value?Oe.KMultiselect:Oe.KSelect);return(d,p)=>{var y;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]=b=>t.isRef(a)?a.value=b:null),p[1]||(p[1]=b=>o("update",b))],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},[(y=t.unref(s).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(d.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Vw)],!0)]),key:"0"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-bfca8687"]]);function Or(e,n,o=!0){const{value:r,...i}=wt(t.toRef(e,"name")),a=Pt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(u(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Pr("ff-kv-field-")}function c(g,h,w){const _=w.indexOf(g),k=w.indexOf(h);return _===-1&&k===-1?0:_===-1?1:k===-1?-1:_-k}function u(g,h){const w=Object.entries(g).map(([_,k])=>({id:s(),key:_,value:k}));return h&&w.sort((_,k)=>c(_.key,k.key,h)),w}function f(){const g={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(g),g}function d(g){const h=l.value.findIndex(w=>w.id===g);h!==-1&&l.value.splice(h,1)}function p(){l.value=u(e.initialValue||{},e.keyOrder)}function m(g){l.value=u(g,e.keyOrder)}let y=null;t.watch(l,g=>{if(!o)return;const h=g.length?Object.fromEntries(g.map(({key:w,value:_})=>[w,_]).filter(([w])=>w)):null;r.value=h,y=h,n("change",h)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,g=>{Oo(g,y)||b(g)},{deep:!0});function b(g){if(!g){l.value=[];return}const h=new Map;l.value.forEach(E=>{E.key&&h.set(E.key,E)});const w=[],_=Object.keys(g);(e.keyOrder?[..._].sort((E,C)=>c(E,C,e.keyOrder)):_).forEach(E=>{const C=g[E];if(h.has(E)){const N=h.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:d,reset:p,setValue:m,labelAttrs:a,field:i}}const Rw=["data-testid"],Dw=["data-testid"],Mw=["innerHTML"],Lw=["data-testid"],Fw=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}=De(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:u,setValue:f,labelAttrs:d,field:p}=Or(r,a),m=t.useTemplateRef("root");async function y(E,C="key"){var N;m.value&&(await t.nextTick(),(N=m.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function b(){s();const E=l.value.findIndex(({key:C})=>!C);y(E===-1?l.value.length-1:E)}function g(E){E===l.value.length-1&&s(),y(E+1)}const h=t.inject(Me.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)}),_=t.computed(()=>({referenceable:w.value}));function k(E,C){l.value[E].value=C}return n({reset:u,setValue:f}),(E,C)=>{var G;const N=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),D=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(I,t.mergeProps({class:"ff-kv-field-label"},t.unref(d),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(G=t.unref(d).labelAttributes)!=null&&G.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Mw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(D,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon))]),_:1},8,["data-testid"])],8,Dw),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(K,S)=>(t.openBlock(),t.createElementBlock("div",{key:K.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${S}`},[t.createVNode(Sn,{modelValue:K.key,"onUpdate:modelValue":ne=>K.key=ne,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":S,"data-testid":`ff-key-${t.unref(p).path.value}.${S}`,placeholder:E.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(ne=>y(S,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Sn,{modelValue:K.value,"onUpdate:modelValue":ne=>K.value=ne,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${S}`,"data-value-input":S,placeholder:E.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(ne=>g(S),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(h)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(h)),{key:0,schema:_.value,update:ne=>k(S,ne),value:K.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(h)?(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(D,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${S}`,icon:"",onClick:ne=>t.unref(c)(K.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,Lw))),128))],8,Rw))}}}),[["__scopeId","data-v-92e0893d"]]),Uw=["data-testid"],Kw=["innerHTML"],Pa=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}=wt(t.toRef(()=>e.name)),s=Pt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var b,g;return((g=(b=l.schema)==null?void 0:b.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),u=t.ref("");function f(b){return b.map(g=>g.trim()).filter(Boolean).join(", ")}function d(b){return b.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(b){u.value=b;const g=d(b),h=!g.length&&c.value?null:g;a.value=h,i("update:modelValue",h)}const m=Ro(l.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Vo(e.name)==="name");return t.watch(a,b=>{const g=b?f(b):"";f(d(u.value))!==g&&(u.value=g)},{immediate:!0}),(b,g)=>{var w;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-tag-${l.path.value}`},[t.createVNode(Sn,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":y.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":u.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(w=t.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Kw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Uw))}}}),[["__scopeId","data-v-a27f4ff1"]]),jw=["data-testid"],Gw=["innerHTML"],qw=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}=wt(t.toRef(()=>e.name)),s=Pt(l.path,t.toRef({...r,...o})),c=t.ref("");function u(p){c.value=p;let m=p||null;try{const y=JSON.parse(p);y&&typeof y=="object"&&(m=y)}catch{}a.value=m,i("update:modelValue",m)}const f=Ro(l.ancestors),d=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Vo(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);Oo(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 b;const y=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(y,{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(Sn,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":d.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":u}),t.createSlots({_:2},[(b=t.unref(s).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Gw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,jw))}}}),[["__scopeId","data-v-5749f722"]]),zw=["innerHTML"],Hw=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}}=De(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,...s}=wt(t.toRef(()=>e.name));if(s.error)throw new Error(s.error.message);const c=Pt(s.path,t.toRef({...i,...o})),u=l.value?l.value.id:null,f=t.computed(()=>{var b;return c.value.placeholder?c.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((b=s.schema.value)==null?void 0:b.reference)??"entity"})}),d=t.ref(u??"");function p(b){u!==void 0&&b===""&&b!==u?(l.value=null,a("update:modelValue",null)):(l.value={id:b.trim()},a("update:modelValue",l.value))}const m=Ro(s.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Vo(e.name)==="name");return(b,g)=>{var h;return t.openBlock(),t.createBlock(Sn,t.mergeProps(t.unref(c),{class:"ff-foreign-field","data-1p-ignore":y.value,"data-autofocus":t.unref(m),"data-testid":`ff-${s.path.value}`,error:b.error,"error-message":b.errorMessage,help:b.help,"model-value":d.value,placeholder:f.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(h=t.unref(c).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,zw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])}}}),[["__scopeId","data-v-b54c028e"]]),pt=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=wt(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?Nt:Yn;case"boolean":return"one_of"in o.schema.value?Nt:Ia;case"number":case"integer":return"one_of"in o.schema.value?Nt:Wn;case"array":return $r;case"set":return mw(o.schema)?Pa:Nt;case"record":return gt;case"map":return Fw;case"json":return qw;case"foreign":return Hw;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(Hn)]))),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:Na(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:Na(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)}}}),Yw=["data-testid"],Ww=["data-testid"],Xw=["innerHTML"],Zw=["data-testid"],Jw={class:"ff-array-field-item-content"},Qw=["data-index","data-testid"],$r=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=>({"3e1c9ee2":E.value}));const o=e,r=n,{i18n:{t:i}}=De(),{getDefault:a,getSchema:l}=Ye(),{value:s,...c}=wt(t.toRef(o,"name")),u=Pt(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}),d=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=Qc("ff-array-field",d),m=t.computed(()=>o.appearance==="card"?Oe.KCard:"div");function y(N,I){return typeof o.itemLabel=="function"?o.itemLabel(N,I):o.itemLabel||u.value.label||`Item #${I}`}const b=t.computed(()=>d.value.map((N,I)=>({hash:`#${p(N,I)}`,title:""}))),g=t.ref((C=b.value[0])==null?void 0:C.hash),h=async()=>{var I;const N=a(It(c.path.value,Ea));Array.isArray(s.value)||(s.value=[]),s.value.push(N),r("add"),o.appearance==="tabs"&&(await t.nextTick(),g.value=(I=b.value[b.value.length-1])==null?void 0:I.hash),await t.nextTick(),k(d.value.length+1)},w=async N=>{var I;Array.isArray(s.value)&&s.value.splice(N,1),r("remove",N),o.appearance==="tabs"&&(g.value=(I=b.value[Math.max(0,N-1)])==null?void 0:I.hash)},_=t.useTemplateRef("root");function k(N){var D;if(!_.value)return;const I=Math.max(0,Math.min(N,d.value.length-1));(D=_.value.querySelector(`[data-index="${I}"] [data-autofocus]`))==null||D.focus()}const E=t.computed(()=>{const{appearance:N,stickyTabs:I}=o;return N!=="tabs"||I==null||I===!1?null:typeof I=="number"?`${o.stickyTabs}px`:typeof I=="string"?I:"0"});return(N,I)=>{var ne;const D=t.resolveComponent("KAlert"),G=t.resolveComponent("KLabel"),K=t.resolveComponent("KButton"),S=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(D,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:_,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${N.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":N.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(G,t.mergeProps({class:"ff-array-field-label"},t.unref(u),{"data-testid":`ff-label-${c.path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(ne=t.unref(u).labelAttributes)!=null&&ne.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,Xw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${c.path.value}`,icon:"",onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,Ww),d.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[N.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(d.value,(x,q)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(x,q),class:"ff-array-field-item","data-index":q,"data-testid":`ff-array-item-${c.path.value}.${q}`},{default:t.withCtx(()=>[t.createElementVNode("div",Jw,[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(Pa,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(q)},null,8,["help","name"])):(t.openBlock(),t.createBlock(pt,{key:2,name:String(q)},null,8,["name"]))]),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${q}`,icon:"",onClick:U=>w(q)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,Zw)):(t.openBlock(),t.createBlock(t.unref(Oe.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(S,{modelValue:g.value,"onUpdate:modelValue":I[0]||(I[0]=x=>g.value=x),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:b.value},t.createSlots({_:2},[t.renderList(d.value,(x,q)=>({name:t.unref(p)(x,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(pt,{key:1,name:String(q)},null,8,["name"]))],8,Qw)])})),t.renderList(d.value,(x,q)=>({name:`${t.unref(p)(x,q)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(y(x,q))+" ",1),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${q}`,icon:"",onClick:t.withModifiers(U=>w(q),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,Yw))}}}),[["__scopeId","data-v-3edd064c"]]),Do=Symbol(),ek=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Ye(),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(({[Do]: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(gt,{name:l.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(Nt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(gt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(u=>[t.createVNode(Nt,t.mergeProps(u,{items:t.unref(Ca)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),tk=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Ye();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Do]=ed())}return(r,i)=>(t.openBlock(),t.createBlock($r,{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(ek,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),nd=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),r=t.inject(Tr);if(!r)throw new Error(Tr.toString()+"not provided");return o&&r.set(n.match,o),(i,a)=>null}}),ht=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),a=yw(e.schema);t.provide(zc,a);const l=m=>{var y;return wr((y=e.config)==null?void 0:y.hasValue)?e.config.hasValue(m):!!m},s=t.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((y,b)=>{const g=Object.keys(y)[0],h=Object.keys(b)[0],w=e.fieldsOrder.indexOf(g),_=e.fieldsOrder.indexOf(h);return w===-1&&_===-1?0:w===-1?1:_===-1?-1:w-_}):m});let c=!1;const u=t.reactive({});t.provide(qc,u),t.provide(Sa,$o(i,"default",Hn));const f=new Map;t.provide(Tr,f),t.provide(Yc,e.config??{}),t.watch(u,m=>{c&&r("change",t.toValue(m))},{deep:!0,immediate:!0});function d(m){Object.keys(u).forEach(y=>{delete u[y]}),Object.assign(u,m)}function p(m){var b;let y;!m||!l(t.toValue(m))?y=a.getDefault():y=Gn(t.toValue(m)),wr((b=e.config)==null?void 0:b.prepareFormData)?d(e.config.prepareFormData(y)):d(y),c=!0}return t.onBeforeMount(()=>{p(e.data)}),t.watch(()=>e.data,m=>{p(m)},{deep:!0}),n({getInnerData:()=>t.toRaw(u)}),(m,y)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Hn)]))),t.renderSlot(m.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,b=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(b)[0],name:Object.keys(b)[0],onGlobalAction:y[0]||(y[0]=(g,h)=>r("globalAction",g,h))},null,8,["name"]))),128))])]),_:3}))}}),nk={class:"ff-advanced-fields"},Br=ve(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=Ze.createI18n("en-us",rt),{getSchema:o}=Ye(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Oe.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",nk,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(pt,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(pt,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Pa,{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"]]),ok=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}}=De();function a(u,f=!1){return u.reduce((d,{[Do]:p,name:m})=>(f?d[m]=p:d[p]=m,d),{})}function l(u){var m;const f=Gn(u);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:d}=f.config;d.forEach(y=>{y.request.body.custom=y.request.body.custom??{},y[Do]=ed()});const p=a(d,!0);return d.forEach(y=>{y.depends_on=y.depends_on.map(b=>p[b])}),f}function s(u){return!!(u!=null&&u.config)}function c(u){var p;if(!u)return;const f=Gn(u);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const d=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[Do]:y,depends_on:b,...g}=m;return{depends_on:b.map(h=>d[h]).filter(h=>h!=null),...g}}),o("change",f)}return(u,f)=>(t.openBlock(),t.createBlock(ht,{class:"rc-config-form",config:r,data:u.data,schema:u.schema,tag:"div",onChange:c},{[t.unref(Hn)]:t.withCtx(()=>[t.createVNode(nd,{match:({path:d})=>d.endsWith("by_lua")},{default:t.withCtx(d=>[t.createVNode(Yn,t.mergeProps(d,{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(nd,{match:({path:d})=>["cluster_nodes","sentinel_nodes"].some(p=>d.endsWith(p))},{default:t.withCtx(d=>[t.createVNode($r,t.mergeProps(d,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(tk),t.createVNode(gt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(gt,{appearance:"card",name:"cache"},{redis:t.withCtx(d=>[t.createVNode(gt,t.mergeProps(d,{"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(Br)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),rk={class:"ff-form-pinned-fields"},ik={class:"ff-form-config-form"},Ta=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}=Ze.createI18n("en-us",rt),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(d=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===d)}).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 d=f.fields.find(p=>Object.keys(p)[0]==="protocols");return d&&(d.protocols.help=d.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:d.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),d.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1),u=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return ba(o.model,f)});return(f,d)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",rk,[t.createVNode(t.unref(Me.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:t.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Oe.KCollapse),{modelValue:c.value,"onUpdate:modelValue":d[1]||(d[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",ik,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:u.value,schema:s.value,onChange:d[0]||(d[0]=(...p)=>f.onFormChange&&f.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),ak=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(Me.AUTOFILL_SLOT,o==null?void 0:o[Me.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ta,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(ok,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),lk={key:1},sk=["innerHTML"],ck={class:"horizontal-container"},dk=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}=Ye(),a=wt(t.toRef(()=>e.name)),l=Pt(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=u=>{a.value&&(a.value.value=u),o("update:modelValue",u)};return(u,f)=>{var m;const d=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(d,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",lk,[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,sk)]),key:"0"}:void 0]),1040),t.createElementVNode("div",ck,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,y=>(t.openBlock(),t.createBlock(t.unref(Oe.KRadio),{key:y.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=b=>t.unref(a).value.value=b),c],"card-orientation":"horizontal",label:y.label,"selected-value":y.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),uk={class:"sp-form-request-limits-subtitle"},fk={class:"sp-form-request-limits-content"},pk={class:"sp-form-window-type"},mk={class:"sp-form-request-limits-items"},gk={class:"sp-form-request-limits-row"},hk=["id"],yk={class:"sp-form-request-limits-actions"},_k={key:0,class:"sp-form-request-limits-examples"},bk={class:"sp-form-request-limits-examples-badges"},Oa="config.window_type",wk=ve(t.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t:n}=Ze.createI18n("en-us",rt),{formData:o,getSelectItems:r,getSchema:i}=Ye(),a=t.computed(()=>{var w,_;const h=(_=(w=o.config)==null?void 0:w.limit)==null?void 0:_.map((k,E)=>{var C,N;return{limit:k,windowSize:(N=(C=o.config)==null?void 0:C.window_size)==null?void 0:N[E]}});return!Array.isArray(h)||h.length===0?[{limit:null,windowSize:null}]:h}),{getKey:l}=Qc("request-limits",a),s=h=>{var w,_;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(_=o.config.window_size)!=null&&_.length||(o.config.window_size=[null]),o.config.limit.splice(h+1,0,null),o.config.window_size.splice(h+1,0,null))},c=h=>{o.config&&(o.config.limit.splice(h,1),o.config.window_size.splice(h,1))},u=(g=i(Oa))==null?void 0:g.default,f=t.computed(()=>Ws(o,Oa)),d=t.computed(()=>r(Oa).sort((h,w)=>h.value===u?-1:w.value===u?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}}]},y=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),b=(h,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=[h.config.limit],o.config.window_size=[h.config.window_size]};return(h,w)=>{const _=t.resolveComponent("KLabel"),k=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(_,{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",uk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",fk,[t.createElementVNode("div",pk,[t.createVNode(dk,{items:d.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=I=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",mk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(I,D)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(I,D)},[t.createVNode(_,{for:`sp-form-request-limits-item-${D}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:D+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",gk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${D}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Wn,{name:`$.config.limit.${D}`,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(Wn,{name:`$.config.window_size.${D}`,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,hk),t.createElementVNode("div",yk,[t.createVNode(k,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(D)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(k,{appearance:"tertiary",onClick:()=>s(D)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),y.value.length>0?(t.openBlock(),t.createElementBlock("div",_k,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",bk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,(I,D)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${D}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(I.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(I.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(I.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(E,{appearance:p.value===`${f.value}-${D}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>b(I,`${f.value}-${D}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(I.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),kk={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Ck=ve(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Ze.createI18n("en-us",rt);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",kk,[t.createVNode(Wn,{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(Yn,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Ek={class:"partial-config-card"},Nk={class:"config-card-row-label"},Sk={class:"label-text"},vk=["data-testid"],xk=["data-testid"],Ak={key:1},Ik=["data-testid"],Pk=["data-testid"],Tk=ve(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Ze.createI18n("en-us",rt),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=d=>d!=null,l=(d,p)=>a(p)&&["password","sentinel_password"].includes(d)?"password":"text",{convertKeyToTitle:s}=ge.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([d,p])=>{var m,y,b,g;return{key:d,label:((m=r[d])==null?void 0:m.label)??s(d),value:(y=r[d])!=null&&y.formatter?r[d].formatter(p):p,type:((b=r[d])==null?void 0:b.type)??l(d,p),order:((g=r[d])==null?void 0:g.order)??100}}).sort((d,p)=>d.order-p.order).filter(d=>d.type!=="hidden")),u=pw(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(u));return(d,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",Ek,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:y,label:b,value:g,type:h})=>(t.openBlock(),t.createElementBlock("div",{key:y,class:"partial-config-card-row"},[t.createElementVNode("div",Nk,[t.createElementVNode("div",Sk,t.toDisplayString(b),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${y}-property-value`},[a(g)?(t.openBlock(),t.createElementBlock("div",Ak,[h==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${y}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(g)},null,8,["text"])],8,Ik)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${y}-plain-text`},t.toDisplayString(g),9,Pk))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${y}-no-value`}," – ",8,xk))],8,vk)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Ok=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}=Ze.createI18n("en-us",rt),i=t.inject(Me.FORMS_CONFIG),a=n,{getMessageFromError:l}=ge.useErrors(),s=t.computed(()=>{switch(o.partialType){case Co.PartialType.REDIS_CE:return Co.PartialType.REDIS_EE;case Co.PartialType.REDIS_EE:return Co.PartialType.REDIS_CE;default:return}}),c=t.ref(!1),u=t.ref(),f=m=>{a("partialUpdateFailed",{message:l(m),appearance:"danger"})},d=()=>{a("partialUpdated",{message:r("plugins.free-form.redis_partial.partial_created_success_message"),appearance:"success"}),p()},p=()=>{u.value=void 0,a("modalClose"),t.nextTick(()=>{c.value=!1})};return t.watch(()=>o.visible,m=>{m&&(c.value=!0,t.nextTick(()=>{u.value="#km-modal-footer"}))}),(m,y)=>{const b=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(b,{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(()=>y[0]||(y[0]=[t.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:t.withCtx(()=>[t.createVNode(t.unref(Co.RedisConfigurationForm),{"action-teleport-target":u.value,config:t.unref(i),"disabled-partial-type":s.value,"slidout-top-offset":0,onCancel:p,onError:f,onUpdate:d},null,8,["action-teleport-target","config","disabled-partial-type"])]),_:1},8,["title","visible"])}}}),[["__scopeId","data-v-ac12474e"]]),$k="#ecfcff",Bk="#f1f0ff",Vk="#52596e",Rk="#e0e4ea",Dk="#007d60",Mk="#fffce0",Lk="#6c7489",Fk="#0044f4",Uk="#5f9aff",od="#000933",$a="#d60027",Kk="#ffe5e5",jk="#00abd2",Gk="#d60067",qk="#6f28ff",rd="#afb7c5",id="#6c7489",zk="#0044f4",Hk="#eefaff",Yk="#007d60",Wk="#ecfffb",Xk="#995c00",Mo="12px",Zk="16px",Ba="20px",ad="8px",Jk="32px",ld=Symbol("redis-partial-info"),sd={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"}},cd=["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"],Qk={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},eC={key:0,class:"shared-redis-config"},tC={class:"shared-redis-config-title"},nC={class:"redis-config-select","data-testid":"redis-config-select"},oC={class:"selected-redis-config"},rC=["data-testid"],iC={class:"select-item-name","data-testid":"selected-redis-config"},aC={class:"empty-redis-config","data-testid":"empty-redis-config"},lC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},sC="1000",cC=ve(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var te;const o=n,{t:r}=Ze.createI18n("en-us",rt),i=e,a=t.inject(ld),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var V;return i.redisPath?i.redisPath:(V=a==null?void 0:a.redisPath)!=null&&V.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((te=a==null?void 0:a.redisType)==null?void 0:te.value)||"all",u=t.computed(()=>{var V;return!!((V=a==null?void 0:a.redisType)!=null&&V.value)}),f=t.ref(!1),d=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=ge.useErrors(),y=t.ref(i.defaultRedisConfigItem),b=t.ref({}),g=t.ref(),{value:h}=Jc("$.partials"),{value:w}=wt(s),_=t.inject(Me.FORMS_CONFIG),{debouncedQueryChange:k,loading:E,error:C,loadItems:N,results:I}=ge.useDebouncedFilter(_,sd[_.app].getAll,sC,{fetchedItemsKey:"data",searchKeys:["id","name"]}),D=t.computed(()=>C.value?m(C.value):""),G=V=>{let T=`${_.apiBaseUrl}${sd[_.app].getOne}`;return _.app==="konnect"?T=T.replace(/{controlPlaneId}/gi,(_==null?void 0:_.controlPlaneId)||""):_.app==="kongManager"&&(T=T.replace(/\/{workspace}/gi,_!=null&&_.workspace?`/${_.workspace}`:"")),T=T.replace(/{id}/gi,String(V)),T},K=t.computed(()=>{const V=(I.value||[]).map(T=>({label:T.id,name:T.name,value:T.id,type:T.type,tag:dw(T)})).filter(T=>T.type==="redis-ce"||T.type==="redis-ee");return c!=="all"?V.filter(T=>T.type===c):V}),{axiosInstance:S}=ge.useAxios(_==null?void 0:_.axiosRequestConfig),ne=()=>{p.value?(g.value&&(h.value=g.value,y.value=g.value[0].id,w.value=void 0),w!=null&&w.value&&(b.value=w.value)):(Object.keys(b.value).length&&(w.value=b.value),h!=null&&h.value&&(g.value=h.value),h.value=l?null:void 0)},x=V=>{N(),o("globalAction","notify",V)},q=V=>{o("globalAction","notify",V)},U=async V=>{if(V){y.value=V,h.value=[{id:V}],g.value=[{id:V}],w.value=void 0;try{const T=await S.get(G(V));if(T.data.config){const v=Object.assign(T.data,T.data.config);delete v.config,d.value=v}}catch(T){console.error(T)}}};return t.watch(()=>p.value,()=>{ne()}),t.onBeforeMount(()=>{var V;if(N(),i.defaultRedisConfigItem||h!=null&&h.value){const T=i.defaultRedisConfigItem||((V=h==null?void 0:h.value)==null?void 0:V[0].id);U(T),p.value=!0}else w!=null&&w.value&&(b.value=w.value)}),(V,T)=>{const v=t.resolveComponent("KBadge"),P=t.resolveComponent("KRadio"),A=t.resolveComponent("KSelect"),Y=t.resolveComponent("KCard");return u.value?(t.openBlock(),t.createBlock(Y,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",Qk,[t.createVNode(P,{modelValue:p.value,"onUpdate:modelValue":T[0]||(T[0]=W=>p.value=W),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(v,{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(P,{modelValue:p.value,"onUpdate:modelValue":T[1]||(T[1]=W=>p.value=W),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",eC,[t.createElementVNode("div",tC,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",nC,[t.createVNode(A,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:K.value,loading:t.unref(E),"model-value":y.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:T[3]||(T[3]=W=>U(W==null?void 0:W.value)),onQueryChange:t.unref(k)},{"selected-item-template":t.withCtx(({item:W})=>[t.createElementVNode("div",oC,t.toDisplayString(W.name),1)]),"item-template":t.withCtx(({item:W})=>[t.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${W.name}`},[t.createElementVNode("span",iC,t.toDisplayString(W.name),1),t.createVNode(v,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(W.tag),1)]),_:2},1024)],8,rC)]),empty:t.withCtx(()=>[t.createElementVNode("div",aC,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:T[2]||(T[2]=()=>f.value=!0)},[t.createVNode(t.unref(Se.AddIcon),{size:t.unref(Mo)},null,8,["size"]),t.createElementVNode("span",null,t.toDisplayString(t.unref(r)("redis.shared_configuration.create_new_configuration",{type:t.unref(fw)(t.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),d.value?(t.openBlock(),t.createBlock(Tk,{key:0,"config-fields":d.value},null,8,["config-fields"])):t.createCommentVNode("",!0),D.value?(t.openBlock(),t.createElementBlock("p",lC,t.toDisplayString(D.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(gt,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(cd),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(Ok,{"partial-type":t.unref(c),visible:f.value,onModalClose:T[4]||(T[4]=W=>f.value=!1),onPartialUpdateFailed:q,onPartialUpdated:x},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(gt,t.mergeProps({key:1},i,{"fields-order":t.unref(cd),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-12b9ad82"]]),dC=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=Ye();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(td,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(cC,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),uC=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(ht,{config:r,data:a.data,schema:a.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(wk),t.createVNode(Ck)]),_:1}),t.createVNode(Br,null,{default:t.withCtx(()=>[t.createVNode(pt,{name:"config.dictionary_name"}),t.createVNode(pt,{name:"config.lock_dictionary_name"}),t.createVNode(pt,{name:"config.strategy"}),t.createVNode(dC,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(pt,{name:"config.namespace"}),t.createVNode(pt,{name:"config.hide_client_headers"}),t.createVNode(pt,{name:"config.disable_penalty"}),t.createVNode(pt,{name:"config.retry_after_jitter_max"}),t.createVNode(pt,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),fC=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(Me.AUTOFILL_SLOT,o==null?void 0:o[Me.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ta,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(uC,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),pC={class:"ff-standard-layout"},mC={class:"enabled"},gC={class:"scope"},hC={key:0,class:"scope-detail"},dd=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}=Ze.createI18n("en-us",rt),o=e,r=t.useSlots(),i=t.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(h=>h.model==="enabled")}}),a=t.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(h=>h.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:g,description:h})=>({label:g,description:h}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var h;const g=["instance_name","protocols","tags"];return{fields:(h=o.formSchema)==null?void 0:h.fields.filter(w=>g.includes(w.model))}}),u=["config"],f=t.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(h=>u.includes(Object.keys(h)[0])),g}),d=t.computed(()=>{const g=["config","partials","__ui_data"];return ba(o.model,g)}),p=ba(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]),m=t.ref(Object.values(p).some(g=>!!g)),y=t.ref(!0);function b(g,h){p[h]=g,o.onModelUpdated(g,h)}return t.watch(m,g=>{g?Object.keys(p).forEach(h=>{o.onModelUpdated(p[h],h)}):Object.keys(p).forEach(h=>{o.onModelUpdated("",h)})}),(g,h)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",pC,[t.createVNode(t.unref(ge.EntityFormBlock),{description:g.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:g.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",mC,[t.createVNode(t.unref(Me.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",gC,[t.createVNode(t.unref(Oe.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":h[0]||(h[0]=_=>m.value=_),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(Oe.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":h[1]||(h[1]=_=>m.value=_),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),m.value?(t.openBlock(),t.createElementBlock("div",hC,[t.createVNode(t.unref(Me.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:b},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:y.value,"onUpdate:modelValue":h[2]||(h[2]=_=>y.value=_),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(Me.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:c.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ge.EntityFormBlock),{description:g.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:g.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(g.$slots,"default",{data:d.value,schema:f.value,onChange:h[3]||(h[3]=(..._)=>g.onFormChange&&g.onFormChange(..._))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-8d0a8a0c"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function ud(e){return typeof e>"u"||e===null}function yC(e){return typeof e=="object"&&e!==null}function _C(e){return Array.isArray(e)?e:ud(e)?[]:[e]}function bC(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 wC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function kC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var CC=ud,EC=yC,NC=_C,SC=wC,vC=kC,xC=bC,it={isNothing:CC,isObject:EC,toArray:NC,repeat:SC,isNegativeZero:vC,extend:xC};function fd(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+=`
|
|
11
|
+
it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:Gn.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
|
|
12
|
+
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:Gn.tags}]},pg={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"]}}]},Ts={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:kn},{ttl:{help:"Time-to-live value for data"}}]},mg=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)}}:{},gg={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},Dt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...Y.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",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...Y.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"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...Y.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"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...Y.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"]]},...Y.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"]]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...Y.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",...Y.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",...Y.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"]]},...Y.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",...Y.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"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...Y.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,...Y.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,...Y.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,...Y.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,...Y.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,...Y.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,...Y.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,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...Y.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"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...Y.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"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...Y.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"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...Y.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"]]},...Y.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",...Y.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",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...Y.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,...Y.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,...Y.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,...Y.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"]]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...Y.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,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...Y.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,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...Y.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,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...Y.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,...Y.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,...Y.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,...Y.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,...Y.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,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]}},qn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ss,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:wn(Ss),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:vs,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:wn(vs)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:xs,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:wn(xs)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Ts,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:wn(Ts)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Is,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:wn(Is)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:As,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:wn(As)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:ug,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},hg={acls:og,basicauth_credentials:rg,keyauth_credentials:cg,keyauth_enc_credentials:gg,oauth2_credentials:pg,hmacauth_credentials:dg,jwt_secrets:fg},yg=()=>{const{i18n:{t:e}}=Fe(),n={},o={};for(const[i,a]of Object.entries(Dt))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(qn))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:qn,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},Io={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},_g={"config-prompts-prepend":{...Io,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":{...Io,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"}]}}}},bg={"config-templates":{...Io,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"}]}}}},wg={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)}},kg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Cg={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:Gn.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"}},Le={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"},Er={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Eg={"config-metrics":{...Er,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"}]}}}},Ng={"config-functions":{...Le,inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}}},Sg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},vg={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},xg={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Ag={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Ig={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Ps=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:Gn.fields.arrayItems({newElementButtonLabel:"Add"})}),Ig),Nr={"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"}},Tg={"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":{}},Pg=["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]:Gn.fields.arrayItems({newElementButtonLabel:"Add"})}),Tg),Os={"config-add-json":{...Le,label:"Config.Add.Json",inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Le,label:"Config.Append.Json",inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Le,label:"Config.Remove.Json",inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Le,label:"Config.Rename.Json",inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Le,label:"Config.Replace.Json",inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}}},Og={...Os,"config-allow-json":{...Le,label:"Config.Allow.Json",inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Le,label:"Config.Transform.Functions",inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Le,label:"Config.Transform.Json",inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}}},$g={"config-rules":{...Io,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"}]}}}},Bg={"config-session_redis_cluster_nodes":{...Io,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"}]}}}},Vg={"config-flow-functions":{...Le,inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}}},Rg={"config-message-functions":{...Le,inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}}},Dg={"config-metrics":{...Er,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"]}]}}}},Mg={"config-metrics":{...Er,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"]}]}}}},Lg={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Fg={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var $s=typeof global=="object"&&global&&global.Object===Object&&global,Ug=typeof self=="object"&&self&&self.Object===Object&&self,Mt=$s||Ug||Function("return this")(),Nt=Mt.Symbol,Bs=Object.prototype,Kg=Bs.hasOwnProperty,jg=Bs.toString,To=Nt?Nt.toStringTag:void 0;function Gg(e){var n=Kg.call(e,To),o=e[To];try{e[To]=void 0;var r=!0}catch{}var i=jg.call(e);return r&&(n?e[To]=o:delete e[To]),i}var qg=Object.prototype,zg=qg.toString;function Hg(e){return zg.call(e)}var Yg="[object Null]",Wg="[object Undefined]",Vs=Nt?Nt.toStringTag:void 0;function Cn(e){return e==null?e===void 0?Wg:Yg:Vs&&Vs in Object(e)?Gg(e):Hg(e)}function Wt(e){return e!=null&&typeof e=="object"}var Xg="[object Symbol]";function Zi(e){return typeof e=="symbol"||Wt(e)&&Cn(e)==Xg}function Rs(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 Tt=Array.isArray,Ds=Nt?Nt.prototype:void 0,Ms=Ds?Ds.toString:void 0;function Ls(e){if(typeof e=="string")return e;if(Tt(e))return Rs(e,Ls)+"";if(Zi(e))return Ms?Ms.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function En(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function Zg(e){return e}var Jg="[object AsyncFunction]",Qg="[object Function]",eh="[object GeneratorFunction]",th="[object Proxy]";function Sr(e){if(!En(e))return!1;var n=Cn(e);return n==Qg||n==eh||n==Jg||n==th}var Ji=Mt["__core-js_shared__"],Fs=function(){var e=/[^.]+$/.exec(Ji&&Ji.keys&&Ji.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function nh(e){return!!Fs&&Fs in e}var oh=Function.prototype,rh=oh.toString;function Nn(e){if(e!=null){try{return rh.call(e)}catch{}try{return e+""}catch{}}return""}var ih=/[\\^$.*+?()[\]{}|]/g,ah=/^\[object .+?Constructor\]$/,lh=Function.prototype,sh=Object.prototype,ch=lh.toString,dh=sh.hasOwnProperty,uh=RegExp("^"+ch.call(dh).replace(ih,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function fh(e){if(!En(e)||nh(e))return!1;var n=Sr(e)?uh:ah;return n.test(Nn(e))}function ph(e,n){return e==null?void 0:e[n]}function Sn(e,n){var o=ph(e,n);return fh(o)?o:void 0}var Qi=Sn(Mt,"WeakMap"),Us=Object.create,mh=function(){function e(){}return function(n){if(!En(n))return{};if(Us)return Us(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function gh(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 hh(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var yh=800,_h=16,bh=Date.now;function wh(e){var n=0,o=0;return function(){var r=bh(),i=_h-(r-o);if(o=r,i>0){if(++n>=yh)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function kh(e){return function(){return e}}var vr=function(){try{var e=Sn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Ch=vr?function(e,n){return vr(e,"toString",{configurable:!0,enumerable:!1,value:kh(n),writable:!0})}:Zg,Eh=wh(Ch);function Nh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var Sh=9007199254740991,vh=/^(?:0|[1-9]\d*)$/;function ea(e,n){var o=typeof e;return n=n??Sh,!!n&&(o=="number"||o!="symbol"&&vh.test(e))&&e>-1&&e%1==0&&e<n}function Ks(e,n,o){n=="__proto__"&&vr?vr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function ta(e,n){return e===n||e!==e&&n!==n}var xh=Object.prototype,Ah=xh.hasOwnProperty;function na(e,n,o){var r=e[n];(!(Ah.call(e,n)&&ta(r,o))||o===void 0&&!(n in e))&&Ks(e,n,o)}function Po(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?Ks(o,s,c):na(o,s,c)}return o}var js=Math.max;function Ih(e,n,o){return n=js(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=js(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),gh(e,this,s)}}var Th=9007199254740991;function oa(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Th}function ra(e){return e!=null&&oa(e.length)&&!Sr(e)}var Ph=Object.prototype;function xr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||Ph;return e===o}function Oh(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var $h="[object Arguments]";function Gs(e){return Wt(e)&&Cn(e)==$h}var qs=Object.prototype,Bh=qs.hasOwnProperty,Vh=qs.propertyIsEnumerable,Ar=Gs(function(){return arguments}())?Gs:function(e){return Wt(e)&&Bh.call(e,"callee")&&!Vh.call(e,"callee")};function Rh(){return!1}var zs=typeof Te=="object"&&Te&&!Te.nodeType&&Te,Hs=zs&&typeof module=="object"&&module&&!module.nodeType&&module,Dh=Hs&&Hs.exports===zs,Ys=Dh?Mt.Buffer:void 0,Mh=Ys?Ys.isBuffer:void 0,Oo=Mh||Rh,Lh="[object Arguments]",Fh="[object Array]",Uh="[object Boolean]",Kh="[object Date]",jh="[object Error]",Gh="[object Function]",qh="[object Map]",zh="[object Number]",Hh="[object Object]",Yh="[object RegExp]",Wh="[object Set]",Xh="[object String]",Zh="[object WeakMap]",Jh="[object ArrayBuffer]",Qh="[object DataView]",ey="[object Float32Array]",ty="[object Float64Array]",ny="[object Int8Array]",oy="[object Int16Array]",ry="[object Int32Array]",iy="[object Uint8Array]",ay="[object Uint8ClampedArray]",ly="[object Uint16Array]",sy="[object Uint32Array]",We={};We[ey]=We[ty]=We[ny]=We[oy]=We[ry]=We[iy]=We[ay]=We[ly]=We[sy]=!0,We[Lh]=We[Fh]=We[Jh]=We[Uh]=We[Qh]=We[Kh]=We[jh]=We[Gh]=We[qh]=We[zh]=We[Hh]=We[Yh]=We[Wh]=We[Xh]=We[Zh]=!1;function cy(e){return Wt(e)&&oa(e.length)&&!!We[Cn(e)]}function ia(e){return function(n){return e(n)}}var Ws=typeof Te=="object"&&Te&&!Te.nodeType&&Te,$o=Ws&&typeof module=="object"&&module&&!module.nodeType&&module,dy=$o&&$o.exports===Ws,aa=dy&&$s.process,zn=function(){try{var e=$o&&$o.require&&$o.require("util").types;return e||aa&&aa.binding&&aa.binding("util")}catch{}}(),Xs=zn&&zn.isTypedArray,la=Xs?ia(Xs):cy,uy=Object.prototype,fy=uy.hasOwnProperty;function Zs(e,n){var o=Tt(e),r=!o&&Ar(e),i=!o&&!r&&Oo(e),a=!o&&!r&&!i&&la(e),l=o||r||i||a,s=l?Oh(e.length,String):[],c=s.length;for(var u in e)(n||fy.call(e,u))&&!(l&&(u=="length"||i&&(u=="offset"||u=="parent")||a&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||ea(u,c)))&&s.push(u);return s}function Js(e,n){return function(o){return e(n(o))}}var py=Js(Object.keys,Object),my=Object.prototype,gy=my.hasOwnProperty;function Qs(e){if(!xr(e))return py(e);var n=[];for(var o in Object(e))gy.call(e,o)&&o!="constructor"&&n.push(o);return n}function sa(e){return ra(e)?Zs(e):Qs(e)}function hy(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var yy=Object.prototype,_y=yy.hasOwnProperty;function by(e){if(!En(e))return hy(e);var n=xr(e),o=[];for(var r in e)r=="constructor"&&(n||!_y.call(e,r))||o.push(r);return o}function ca(e){return ra(e)?Zs(e,!0):by(e)}var wy=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ky=/^\w*$/;function Cy(e,n){if(Tt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Zi(e)?!0:ky.test(e)||!wy.test(e)||n!=null&&e in Object(n)}var Bo=Sn(Object,"create");function Ey(){this.__data__=Bo?Bo(null):{},this.size=0}function Ny(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var Sy="__lodash_hash_undefined__",vy=Object.prototype,xy=vy.hasOwnProperty;function Ay(e){var n=this.__data__;if(Bo){var o=n[e];return o===Sy?void 0:o}return xy.call(n,e)?n[e]:void 0}var Iy=Object.prototype,Ty=Iy.hasOwnProperty;function Py(e){var n=this.__data__;return Bo?n[e]!==void 0:Ty.call(n,e)}var Oy="__lodash_hash_undefined__";function $y(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Bo&&n===void 0?Oy: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=Ey,vn.prototype.delete=Ny,vn.prototype.get=Ay,vn.prototype.has=Py,vn.prototype.set=$y;function By(){this.__data__=[],this.size=0}function Ir(e,n){for(var o=e.length;o--;)if(ta(e[o][0],n))return o;return-1}var Vy=Array.prototype,Ry=Vy.splice;function Dy(e){var n=this.__data__,o=Ir(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Ry.call(n,o,1),--this.size,!0}function My(e){var n=this.__data__,o=Ir(n,e);return o<0?void 0:n[o][1]}function Ly(e){return Ir(this.__data__,e)>-1}function Fy(e,n){var o=this.__data__,r=Ir(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Xt(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])}}Xt.prototype.clear=By,Xt.prototype.delete=Dy,Xt.prototype.get=My,Xt.prototype.has=Ly,Xt.prototype.set=Fy;var Vo=Sn(Mt,"Map");function Uy(){this.size=0,this.__data__={hash:new vn,map:new(Vo||Xt),string:new vn}}function Ky(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Tr(e,n){var o=e.__data__;return Ky(n)?o[typeof n=="string"?"string":"hash"]:o.map}function jy(e){var n=Tr(this,e).delete(e);return this.size-=n?1:0,n}function Gy(e){return Tr(this,e).get(e)}function qy(e){return Tr(this,e).has(e)}function zy(e,n){var o=Tr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Zt(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])}}Zt.prototype.clear=Uy,Zt.prototype.delete=jy,Zt.prototype.get=Gy,Zt.prototype.has=qy,Zt.prototype.set=zy;var Hy="Expected a function";function da(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(Hy);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(da.Cache||Zt),o}da.Cache=Zt;var Yy=500;function Wy(e){var n=da(e,function(r){return o.size===Yy&&o.clear(),r}),o=n.cache;return n}var Xy=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Zy=/\\(\\)?/g,Jy=Wy(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Xy,function(o,r,i,a){n.push(i?a.replace(Zy,"$1"):r||o)}),n});function ua(e){return e==null?"":Ls(e)}function Hn(e,n){return Tt(e)?e:Cy(e,n)?[e]:Jy(ua(e))}function Pr(e){if(typeof e=="string"||Zi(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function fa(e,n){n=Hn(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[Pr(n[o++])];return o&&o==r?e:void 0}function ec(e,n,o){var r=e==null?void 0:fa(e,n);return r===void 0?o:r}function pa(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var tc=Nt?Nt.isConcatSpreadable:void 0;function Qy(e){return Tt(e)||Ar(e)||!!(tc&&e&&e[tc])}function e_(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=Qy),i||(i=[]);++a<l;){var s=e[a];o(s)?pa(i,s):i[i.length]=s}return i}function t_(e){var n=e==null?0:e.length;return n?e_(e):[]}function nc(e){return Eh(Ih(e,void 0,t_),e+"")}var ma=Js(Object.getPrototypeOf,Object),n_="[object Object]",o_=Function.prototype,r_=Object.prototype,oc=o_.toString,i_=r_.hasOwnProperty,a_=oc.call(Object);function l_(e){if(!Wt(e)||Cn(e)!=n_)return!1;var n=ma(e);if(n===null)return!0;var o=i_.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&oc.call(o)==a_}function rc(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 s_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:rc(e,n,o)}var c_="\\ud800-\\udfff",d_="\\u0300-\\u036f",u_="\\ufe20-\\ufe2f",f_="\\u20d0-\\u20ff",p_=d_+u_+f_,m_="\\ufe0e\\ufe0f",g_="\\u200d",h_=RegExp("["+g_+c_+p_+m_+"]");function ic(e){return h_.test(e)}function y_(e){return e.split("")}var ac="\\ud800-\\udfff",__="\\u0300-\\u036f",b_="\\ufe20-\\ufe2f",w_="\\u20d0-\\u20ff",k_=__+b_+w_,C_="\\ufe0e\\ufe0f",E_="["+ac+"]",ga="["+k_+"]",ha="\\ud83c[\\udffb-\\udfff]",N_="(?:"+ga+"|"+ha+")",lc="[^"+ac+"]",sc="(?:\\ud83c[\\udde6-\\uddff]){2}",cc="[\\ud800-\\udbff][\\udc00-\\udfff]",S_="\\u200d",dc=N_+"?",uc="["+C_+"]?",v_="(?:"+S_+"(?:"+[lc,sc,cc].join("|")+")"+uc+dc+")*",x_=uc+dc+v_,A_="(?:"+[lc+ga+"?",ga,sc,cc,E_].join("|")+")",I_=RegExp(ha+"(?="+ha+")|"+A_+x_,"g");function T_(e){return e.match(I_)||[]}function P_(e){return ic(e)?T_(e):y_(e)}function O_(e){return function(n){n=ua(n);var o=ic(n)?P_(n):void 0,r=o?o[0]:n.charAt(0),i=o?s_(o,1).join(""):n.slice(1);return r[e]()+i}}var $_=O_("toUpperCase");function B_(){this.__data__=new Xt,this.size=0}function V_(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function R_(e){return this.__data__.get(e)}function D_(e){return this.__data__.has(e)}var M_=200;function L_(e,n){var o=this.__data__;if(o instanceof Xt){var r=o.__data__;if(!Vo||r.length<M_-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Zt(r)}return o.set(e,n),this.size=o.size,this}function Jt(e){var n=this.__data__=new Xt(e);this.size=n.size}Jt.prototype.clear=B_,Jt.prototype.delete=V_,Jt.prototype.get=R_,Jt.prototype.has=D_,Jt.prototype.set=L_;function F_(e,n){return e&&Po(n,sa(n),e)}function U_(e,n){return e&&Po(n,ca(n),e)}var fc=typeof Te=="object"&&Te&&!Te.nodeType&&Te,pc=fc&&typeof module=="object"&&module&&!module.nodeType&&module,K_=pc&&pc.exports===fc,mc=K_?Mt.Buffer:void 0,gc=mc?mc.allocUnsafe:void 0;function j_(e,n){if(n)return e.slice();var o=e.length,r=gc?gc(o):new e.constructor(o);return e.copy(r),r}function G_(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 hc(){return[]}var q_=Object.prototype,z_=q_.propertyIsEnumerable,yc=Object.getOwnPropertySymbols,ya=yc?function(e){return e==null?[]:(e=Object(e),G_(yc(e),function(n){return z_.call(e,n)}))}:hc;function H_(e,n){return Po(e,ya(e),n)}var Y_=Object.getOwnPropertySymbols,_c=Y_?function(e){for(var n=[];e;)pa(n,ya(e)),e=ma(e);return n}:hc;function W_(e,n){return Po(e,_c(e),n)}function bc(e,n,o){var r=n(e);return Tt(e)?r:pa(r,o(e))}function _a(e){return bc(e,sa,ya)}function wc(e){return bc(e,ca,_c)}var ba=Sn(Mt,"DataView"),wa=Sn(Mt,"Promise"),ka=Sn(Mt,"Set"),kc="[object Map]",X_="[object Object]",Cc="[object Promise]",Ec="[object Set]",Nc="[object WeakMap]",Sc="[object DataView]",Z_=Nn(ba),J_=Nn(Vo),Q_=Nn(wa),eb=Nn(ka),tb=Nn(Qi),St=Cn;(ba&&St(new ba(new ArrayBuffer(1)))!=Sc||Vo&&St(new Vo)!=kc||wa&&St(wa.resolve())!=Cc||ka&&St(new ka)!=Ec||Qi&&St(new Qi)!=Nc)&&(St=function(e){var n=Cn(e),o=n==X_?e.constructor:void 0,r=o?Nn(o):"";if(r)switch(r){case Z_:return Sc;case J_:return kc;case Q_:return Cc;case eb:return Ec;case tb:return Nc}return n});var nb=Object.prototype,ob=nb.hasOwnProperty;function rb(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&ob.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var Or=Mt.Uint8Array;function Ca(e){var n=new e.constructor(e.byteLength);return new Or(n).set(new Or(e)),n}function ib(e,n){var o=n?Ca(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var ab=/\w*$/;function lb(e){var n=new e.constructor(e.source,ab.exec(e));return n.lastIndex=e.lastIndex,n}var vc=Nt?Nt.prototype:void 0,xc=vc?vc.valueOf:void 0;function sb(e){return xc?Object(xc.call(e)):{}}function cb(e,n){var o=n?Ca(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var db="[object Boolean]",ub="[object Date]",fb="[object Map]",pb="[object Number]",mb="[object RegExp]",gb="[object Set]",hb="[object String]",yb="[object Symbol]",_b="[object ArrayBuffer]",bb="[object DataView]",wb="[object Float32Array]",kb="[object Float64Array]",Cb="[object Int8Array]",Eb="[object Int16Array]",Nb="[object Int32Array]",Sb="[object Uint8Array]",vb="[object Uint8ClampedArray]",xb="[object Uint16Array]",Ab="[object Uint32Array]";function Ib(e,n,o){var r=e.constructor;switch(n){case _b:return Ca(e);case db:case ub:return new r(+e);case bb:return ib(e,o);case wb:case kb:case Cb:case Eb:case Nb:case Sb:case vb:case xb:case Ab:return cb(e,o);case fb:return new r;case pb:case hb:return new r(e);case mb:return lb(e);case gb:return new r;case yb:return sb(e)}}function Tb(e){return typeof e.constructor=="function"&&!xr(e)?mh(ma(e)):{}}var Pb="[object Map]";function Ob(e){return Wt(e)&&St(e)==Pb}var Ac=zn&&zn.isMap,$b=Ac?ia(Ac):Ob,Bb="[object Set]";function Vb(e){return Wt(e)&&St(e)==Bb}var Ic=zn&&zn.isSet,Rb=Ic?ia(Ic):Vb,Db=1,Mb=2,Lb=4,Tc="[object Arguments]",Fb="[object Array]",Ub="[object Boolean]",Kb="[object Date]",jb="[object Error]",Pc="[object Function]",Gb="[object GeneratorFunction]",qb="[object Map]",zb="[object Number]",Oc="[object Object]",Hb="[object RegExp]",Yb="[object Set]",Wb="[object String]",Xb="[object Symbol]",Zb="[object WeakMap]",Jb="[object ArrayBuffer]",Qb="[object DataView]",e0="[object Float32Array]",t0="[object Float64Array]",n0="[object Int8Array]",o0="[object Int16Array]",r0="[object Int32Array]",i0="[object Uint8Array]",a0="[object Uint8ClampedArray]",l0="[object Uint16Array]",s0="[object Uint32Array]",Ye={};Ye[Tc]=Ye[Fb]=Ye[Jb]=Ye[Qb]=Ye[Ub]=Ye[Kb]=Ye[e0]=Ye[t0]=Ye[n0]=Ye[o0]=Ye[r0]=Ye[qb]=Ye[zb]=Ye[Oc]=Ye[Hb]=Ye[Yb]=Ye[Wb]=Ye[Xb]=Ye[i0]=Ye[a0]=Ye[l0]=Ye[s0]=!0,Ye[jb]=Ye[Pc]=Ye[Zb]=!1;function Ro(e,n,o,r,i,a){var l,s=n&Db,c=n&Mb,u=n&Lb;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!En(e))return e;var f=Tt(e);if(f){if(l=rb(e),!s)return hh(e,l)}else{var d=St(e),p=d==Pc||d==Gb;if(Oo(e))return j_(e,s);if(d==Oc||d==Tc||p&&!i){if(l=c||p?{}:Tb(e),!s)return c?W_(e,U_(l,e)):H_(e,F_(l,e))}else{if(!Ye[d])return i?e:{};l=Ib(e,d,s)}}a||(a=new Jt);var m=a.get(e);if(m)return m;a.set(e,l),Rb(e)?e.forEach(function(g){l.add(Ro(g,n,o,g,e,a))}):$b(e)&&e.forEach(function(g,h){l.set(h,Ro(g,n,o,h,e,a))});var y=u?c?wc:_a:c?ca:sa,b=f?void 0:y(e);return Nh(b||e,function(g,h){b&&(h=g,g=e[h]),na(l,h,Ro(g,n,o,h,e,a))}),l}var c0=1,d0=4;function Yn(e){return Ro(e,c0|d0)}var u0="__lodash_hash_undefined__";function f0(e){return this.__data__.set(e,u0),this}function p0(e){return this.__data__.has(e)}function $r(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Zt;++n<o;)this.add(e[n])}$r.prototype.add=$r.prototype.push=f0,$r.prototype.has=p0;function m0(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 g0(e,n){return e.has(n)}var h0=1,y0=2;function $c(e,n,o,r,i,a){var l=o&h0,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var u=a.get(e),f=a.get(n);if(u&&f)return u==n&&f==e;var d=-1,p=!0,m=o&y0?new $r:void 0;for(a.set(e,n),a.set(n,e);++d<s;){var y=e[d],b=n[d];if(r)var g=l?r(b,y,d,n,e,a):r(y,b,d,e,n,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!m0(n,function(h,w){if(!g0(m,w)&&(y===h||i(y,h,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(y===b||i(y,b,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function _0(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function b0(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var w0=1,k0=2,C0="[object Boolean]",E0="[object Date]",N0="[object Error]",S0="[object Map]",v0="[object Number]",x0="[object RegExp]",A0="[object Set]",I0="[object String]",T0="[object Symbol]",P0="[object ArrayBuffer]",O0="[object DataView]",Bc=Nt?Nt.prototype:void 0,Ea=Bc?Bc.valueOf:void 0;function $0(e,n,o,r,i,a,l){switch(o){case O0:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case P0:return!(e.byteLength!=n.byteLength||!a(new Or(e),new Or(n)));case C0:case E0:case v0:return ta(+e,+n);case N0:return e.name==n.name&&e.message==n.message;case x0:case I0:return e==n+"";case S0:var s=_0;case A0:var c=r&w0;if(s||(s=b0),e.size!=n.size&&!c)return!1;var u=l.get(e);if(u)return u==n;r|=k0,l.set(e,n);var f=$c(s(e),s(n),r,i,a,l);return l.delete(e),f;case T0:if(Ea)return Ea.call(e)==Ea.call(n)}return!1}var B0=1,V0=Object.prototype,R0=V0.hasOwnProperty;function D0(e,n,o,r,i,a){var l=o&B0,s=_a(e),c=s.length,u=_a(n),f=u.length;if(c!=f&&!l)return!1;for(var d=c;d--;){var p=s[d];if(!(l?p in n:R0.call(n,p)))return!1}var m=a.get(e),y=a.get(n);if(m&&y)return m==n&&y==e;var b=!0;a.set(e,n),a.set(n,e);for(var g=l;++d<c;){p=s[d];var h=e[p],w=n[p];if(r)var _=l?r(w,h,p,n,e,a):r(h,w,p,e,n,a);if(!(_===void 0?h===w||i(h,w,o,r,a):_)){b=!1;break}g||(g=p=="constructor")}if(b&&!g){var k=e.constructor,E=n.constructor;k!=E&&"constructor"in e&&"constructor"in n&&!(typeof k=="function"&&k instanceof k&&typeof E=="function"&&E instanceof E)&&(b=!1)}return a.delete(e),a.delete(n),b}var M0=1,Vc="[object Arguments]",Rc="[object Array]",Br="[object Object]",L0=Object.prototype,Dc=L0.hasOwnProperty;function F0(e,n,o,r,i,a){var l=Tt(e),s=Tt(n),c=l?Rc:St(e),u=s?Rc:St(n);c=c==Vc?Br:c,u=u==Vc?Br:u;var f=c==Br,d=u==Br,p=c==u;if(p&&Oo(e)){if(!Oo(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Jt),l||la(e)?$c(e,n,o,r,i,a):$0(e,n,c,o,r,i,a);if(!(o&M0)){var m=f&&Dc.call(e,"__wrapped__"),y=d&&Dc.call(n,"__wrapped__");if(m||y){var b=m?e.value():e,g=y?n.value():n;return a||(a=new Jt),i(b,g,o,r,a)}}return p?(a||(a=new Jt),D0(e,n,o,r,i,a)):!1}function Mc(e,n,o,r,i){return e===n?!0:e==null||n==null||!Wt(e)&&!Wt(n)?e!==e&&n!==n:F0(e,n,o,r,Mc,i)}function U0(e,n){return e!=null&&n in Object(e)}function K0(e,n,o){n=Hn(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=Pr(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&&oa(i)&&ea(l,i)&&(Tt(e)||Ar(e)))}function j0(e,n){return e!=null&&K0(e,n,U0)}function G0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function q0(e,n){return n.length<2?e:fa(e,rc(n,0,-1))}var z0="[object Map]",H0="[object Set]",Y0=Object.prototype,W0=Y0.hasOwnProperty;function Lc(e){if(e==null)return!0;if(ra(e)&&(Tt(e)||typeof e=="string"||typeof e.splice=="function"||Oo(e)||la(e)||Ar(e)))return!e.length;var n=St(e);if(n==z0||n==H0)return!e.size;if(xr(e))return!Qs(e).length;for(var o in e)if(W0.call(e,o))return!1;return!0}function Do(e,n){return Mc(e,n)}function Fc(e,n){return n=Hn(n,e),e=q0(e,n),e==null||delete e[Pr(G0(n))]}function X0(e){return l_(e)?void 0:e}var Z0=1,J0=2,Q0=4,Mo=nc(function(e,n){var o={};if(e==null)return o;var r=!1;n=Rs(n,function(a){return a=Hn(a,e),r||(r=a.length>1),a}),Po(e,wc(e),o),r&&(o=Ro(o,Z0|J0|Q0,X0));for(var i=n.length;i--;)Fc(o,n[i]);return o});function Uc(e,n,o,r){if(!En(e))return e;n=Hn(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=Pr(n[i]),u=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];u=void 0,u===void 0&&(u=En(f)?f:ea(n[i+1])?[]:{})}na(s,c,u),s=s[c]}return e}function ew(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=fa(e,l);o(s,l)&&Uc(a,Hn(l,e),s)}return a}function tw(e,n){return ew(e,n,function(o,r){return j0(e,r)})}var Na=nc(function(e,n){return e==null?{}:tw(e,n)});function nw(e,n,o){return e==null?e:Uc(e,n,o)}var ow=0;function Vr(e){var n=++ow;return ua(e)+n}function Kc(e,n){return e==null?!0:Fc(e,n)}const rw=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],xn=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,rw.some(s=>Do(e.confluent,s))&&(e.confluent=null)},iw={"config-message_by_lua_functions":{...Le,inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;xn((n=e.config)==null?void 0:n.schema_registry)}},aw={"config-message_by_lua_functions":{...Le,inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;xn((n=e.config)==null?void 0:n.schema_registry)}},lw={"config-message_by_lua_functions":{...Le,inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;xn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{xn(i==null?void 0:i.schema_registry)})}},sw={"config-message_by_lua_functions":{...Le,inputAttributes:{...Le.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;xn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{xn(i==null?void 0:i.schema_registry)})}},cw={shamefullyTransformPayload:({payload:e})=>{var n;xn((n=e.config)==null?void 0:n.schema_registry)}},dw={"config-static_tags":{...Er,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"}]}}}},uw={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function Sa(e,n){const o=uw[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const va=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),Lo={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},jc=Symbol("TOASTER_PROVIDER");function Gc(){return t.inject(va,[])}function fw(e){t.provide(va,e)}const pw=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},qc=(e,n)=>(e.order??0)-(n.order??0),zc=(e,n)=>pw(e,n)||qc(e,n)||e.model.localeCompare(n.model),He={useI18n:Fe,usePluginMetaData:yg,usePluginHelpers:Cs,useSchemas:e=>{const{capitalize:n}=pe.useStringHelpers(),{convertToDotNotation:o}=Cs(),{i18n:{t:r}}=Fe(),i=Gc(),a={"application-registration":{overwriteDefault:!0,formSchema:{...Cg}},datadog:{...Eg},"exit-transformer":{...Ng},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Dg},"statsd-advanced":{...Mg},"route-by-header":{...$g},"ai-prompt-decorator":{..._g},"ai-prompt-template":{...bg},"ai-proxy-advanced":{...wg},"ai-llm-as-judge":{...kg},"vault-auth":{...Fg},"oas-validation":{...Ag},mocking:{...xg},"rate-limiting":{...Nr},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Nr["config-consumer_groups"]}:{...Nr},"graphql-rate-limiting-advanced":{...Sg},"injection-protection":{...vg},"response-ratelimiting":{...Nr},"pre-function":{...Ps},"post-function":{...Ps},"request-transformer-advanced":{...Pg},"response-transformer":{...Os},"response-transformer-advanced":{...Og},zipkin:{...dw},"upstream-oauth":{...Lg},saml:{...Bg},"kafka-upstream":{...iw},"solace-consume":{...Vg},"solace-upstream":{...Rg},"key-auth":sg(e),"key-auth-enc":mg(e),confluent:{...aw},"confluent-consume":{...lw},"kafka-consume":{...sw},"kafka-log":{...cw}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,N,T,D)=>{let G={};(N||C)&&(G=N||(C.fields?C.fields:C));const j=l().concat(C.blacklist?C.blacklist:[]),S=Object.keys(G).filter(v=>!j.includes(v)),ee=S.indexOf("comparator");ee>-1&&S.splice(ee,1);let x={fields:[]};const q={};S.forEach(v=>{u(G[v],v,G,q,x,T)});const U=q.name,Q=Dt[U],R=[],P=v=>{const I=["cluster-cache"];for(const A of I)if(v.model.includes(A))return!1;return new RegExp("(?<=-redis-).*").test(v.model)};if(x._supported_redis_partial_type=C._supported_redis_partial_type,x._redis_partial_path=C._redis_partial_path,je.getSharedFormName(U)||Sa(U,i)||Q!=null&&Q.useLegacyForm||e!=null&&e.credential||D==="freeform"){if(Q!=null&&Q.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const v of x.fields)if(P(v)){R.push(v);continue}x.fields=x.fields.filter(v=>!P(v)),R.length&&x.fields.push({id:"_redis",fields:R,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}x.fields.sort((v,I)=>(v.order=v.order||0,I.order=I.order||0,v.order-I.order))}else{const v=[],I=[],A=[],W=[],H={};if(Q!=null&&Q.fieldRules){const se=[...Q.fieldRules.atLeastOneOf??[],...Q.fieldRules.onlyOneOf??[],...Q.fieldRules.mutuallyRequired??[]];if(Q.fieldRules.onlyOneOfMutuallyRequired)for(const ye of Q.fieldRules.onlyOneOfMutuallyRequired)se.push(...ye);for(const ye of se)for(const X of ye)H[X.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const se of x.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&P(se)){W.push(se);continue}if(se.pinned){v.push(se);continue}if(se.required||H[se.model]!==void 0){H[se.model]===!1&&(H[se.model]=!0),I.push(se);continue}A.push(se)}W.length&&A.push({id:"_redis",fields:W,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const te=Object.entries(H).filter(([,se])=>!se).map(([se])=>se.replace(/-/g,".").replace(/_/g,"-"));te.length>0&&console.warn(`Unknown checked fields for plugin ${U}: ${te.join(", ")}`);const oe=[];v.length>0&&oe.push({fields:v.sort(qc)}),(I.length>0||A.length>0)&&oe.push({fields:I.sort(zc),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:A.sort(zc),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"}}),x={groups:oe}}return{schema:x,model:q,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",u=(C,N,T,D,G,j)=>{const S=c(C);return D[N]=S?C.default:null,C.id=N,C.model=N,C.fields&&C.type==="record"?d(C,N,T,D,G,j):(T[N]=C,k(C,D),j&&j[N]&&f(T[N],j[N]),G.fields.push(C)),T},f=(C,N)=>(N&&(Object.assign(C,N),N.label&&(C.label=N.label)),C),d=(C,N,T,D,G,j)=>{C.fields.forEach(S=>{Object.keys(S).forEach(ee=>{const x=S[ee];T=u(x,N+"-"+ee,T,D,G,j)})})},p=(C,N)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const T=e==null?void 0:e.entityId;N[C.model]=T?{id:T}: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])},y=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")},b=C=>{C.type="checkbox",C.default=!0,C.required=!1},g=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:N}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Le,model:C.model,valueArrayType:N==="integer"?"number":N||"string",inputAttributes:{...Le.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 T=Object.keys(N)[0];return{model:T,type:"input",label:n(T),placeholder:T,inputType:N[T].type}})}}]})},h=C=>C.fields.reduce((N,T)=>(T.fields&&T.fields.forEach(D=>{N[D.model]=D}),T.model&&(N[T.model]=T),N),{}),w=(C,N)=>{if(!je.customFields.includes(C.model))return;const T=h(C);je.customFields.forEach(D=>{Object.keys(T).forEach(G=>{const j=c(T[G]);N[G]=j?T[G].default:null}),delete N[D]})},_=(C,N)=>C.inputType==="hidden"?"":o(n(C.label||N.replace(/_/g," "))),k=(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":y(C);break;case"boolean":b(C);break;case"map":g(C);break}C.inputType==="foreign"&&p(C,N),C.label=_(C,C.model)};function E(C,N){if(N==null||N.type&&N.type!=="record"||typeof C!="object"||C==null)return C;const T={};for(const D of N.fields){const G=Object.keys(D)[0],j=D[G];j.type==="record"?T[G]=E(C[G],j):j.type==="array"&&Array.isArray(C[G])&&j.elements.type==="record"?T[G]=C[G].map(S=>E(S,j.elements)):T[G]=C[G]}return T}return{buildFormSchema:u,parseSchema:s,customSchemas:a,typedefs:Gn,pruneRecord:E}},useExperimentalFreeForms:Gc,useProvideExperimentalFreeForms:fw},st="/v2/control-planes/{controlPlaneId}/core-entities",ut="/{workspace}",Ze={list:{konnect:{all:`${st}/plugins`,forEntity:`${st}/{entityType}/{entityId}/plugins`},kongManager:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${st}/v1/available-plugins`,streamingCustomPlugins:`${st}/custom-plugins`,schemaCustomPluginItem:`${st}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${st}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${ut}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${st}/plugins`,forEntity:`${st}/{entityType}/{entityId}/plugins`},edit:{all:`${st}/plugins/{id}`,forEntity:`${st}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${st}/{resourceEndpoint}`,edit:`${st}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${st}/v1/schemas/json/plugin/validate`,entityGetOne:`${st}/{entity}/{id}`,entityGetAll:`${st}/{entity}`,entityPeek:`${st}/{entity}?size={amount}`},kongManager:{create:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},edit:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${ut}/schemas/plugins/{plugin}`,credential:{create:`${ut}/{resourceEndpoint}`,edit:`${ut}/{resourceEndpoint}/{id}`},credentialSchema:`${ut}/schemas/{plugin}`,validate:`${ut}/schemas/plugins/validate`,entityGetOne:`${ut}/{entity}/{id}`,entityGetAll:`${ut}/{entity}`}},item:{konnect:{all:`${st}/plugins/{id}`,forEntity:`${st}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`}}},mw={key:0},gw=Ae(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=He.usePluginHelpers(),{i18n:{t:r}}=He.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(u=>o(u)).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 u=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(u,{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,d)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${d}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",mw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,d)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${d}`},[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-${d}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]),{t:Wn}=Qe.createI18n("en-us",it);function xa(e){return e.map(n=>({value:n,label:`${n}`}))}const Aa="*",Hc="$",Yc=".";function Pt(...e){return e.join(Yc)}function Ia(...e){return Pt(Hc,...e)}function Wc(e){return e.startsWith(Pt(Hc,""))}function Xn(e){return e.split(Yc).filter(n=>n!=="")}function Fo(e){const n=Xn(e);return n[n.length-1]}const hw=e=>{var n,o;return e.type==="redis-ce"?Wn("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.length?Wn("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?Wn("redis.shared_configuration.type_label.cluster"):Wn("redis.shared_configuration.type_label.host_port")},yw={"redis-ce":Wn("redis.shared_configuration.open_source"),"redis-ee":Wn("redis.shared_configuration.enterprise")},_w=e=>yw[e]??"";function bw(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 ww(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const Xc=Symbol("free-form-data"),Zc=Symbol("free-form-schema"),Jc=Symbol("free-form-field-path"),Ta=Symbol("free-form-field-renderer-slots"),Rr=Symbol("free-form-field-renderer-matchers-map"),Qc=Symbol("free-form-config"),ed=Symbol("free-form-field-reset-label-path-setting"),Zn="free-form-field-renderers-slot",kw={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function Cw(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,Pa(r,n)):e.type==="array"&&e.elements&&Object.assign(o,Oa(e,n)),o}function Pa(e,n=""){const o={};if(Array.isArray(e.fields))for(const r of e.fields){const i=Object.keys(r)[0],a=r[i],l=n?Pt(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=Pa(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=Oa(a,l);Object.assign(o,s)}}return o}function Oa(e,n=""){const o={};if(e.elements){const r=e.elements,i=Pt(n,Aa);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=Pa(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=Oa(r,i);Object.assign(o,a)}}return o}function $a(e){const n=Xn(e).map(o=>/^\d+$/.test(o)?Aa:o);return Pt(...n)}function Ew(e){const n=t.toValue(e),o=t.computed(()=>n?Cw(n):{});function r(f){var d;return f==null?n:(d=o.value)==null?void 0:d[$a(f)]}function i(f,d=!1){const p=r(f);return p?p.default!==void 0?p.default:d||p.required?p.type==="record"?a(p,f):p.type==="array"?[]:null:null:null}function a(f,d){const p={};if(Array.isArray(f.fields))for(const m of f.fields){const y=Object.keys(m)[0],b=d?`${d}.${y}`:y,g=i(b,!1);g!==void 0&&(p[y]=g)}return p}function l(f){return f?i(f,!0):a(r(),"")}function s(f){const d=r(f),p=d!=null&&d.description?wr.marked.parse(d.description,{async:!1}):void 0;return{...kw,"data-testid":`ff-label-${f}`,info:p}}function c(f){var p;const d=r(f);return xa((d==null?void 0:d.one_of)||((p=d.elements)==null?void 0:p.one_of)||[])}function u(f){const d=r(f),p=d==null?void 0:d.default;let m=null;if((d==null?void 0:d.type)==="foreign"&&(p!=null&&p.id))m=p.id;else{if(p==null||typeof p=="object"||p==="")return null;if(Array.isArray(p)){if(p.length===0)return null;m=p.join(", ")}else m=p.toString()}return`Default: ${m}`}return{getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:u}}function Xe(){const e=t.inject(Xc),n=t.inject(Zc),o=t.inject(Qc,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!n)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...n}}const td=e=>{const n=t.inject(Jc,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!Wc(r)&&n.value&&(i=Pt(n.value,r)),Wc(r)&&(i=i.slice(Ia("").length)),i});return t.provide(Jc,o),o},Nw=e=>{const{getSchema:n}=Xe(),{default:o,...r}=t.useSlots(),i=t.inject(Ta),a=t.inject(Rr),l=t.computed(()=>{const c=t.toValue(i),u=Object.keys(r).filter(f=>f!==Zn&&f!=="item").reduce((f,d)=>{const p=$a(Pt(t.toValue(e),d));return{...f,[p]:r[d]}},{});return c?{...c,...u}:u});t.provide(Ta,l);const s=t.toValue(e);return t.computed(()=>{if(o)return;const c=l.value[$a(t.toValue(e))];if(c)return c;for(const[u,f]of a)if(u({path:s,schema:n(s)}))return f})},Sw={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function vw(e){return Sw[e.toLocaleLowerCase()]??e}function xw(e,n){const o=t.inject(ed,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Pt(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:u,isolate:f}=c,d=u?Pt(u,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=d,l.value.isolate=!1,l.value.parentPath=d}};(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(ed,l),a}function Aw(e){return Xn(e).map(o=>o.split("_").map(vw).join(" ")).map($_).join(" › ")}function Iw(e,n){const o=t.toValue(e),r=Fo(o),{formConfig:i}=Xe(),a=xw(r,n),{getSchema:l}=Xe(),s=nd(e);return t.computed(()=>{var p;const c=a.value??r,u=(p=s.value.parent)!=null&&p.path?l(s.value.parent.path):null,d=(u==null?void 0:u.type)==="array"?"":Aw(c);return i.transformLabel?i.transformLabel(d,o):d})}function Ot(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Xe(),a=t.toValue(e),l=t.toValue(n),s=Iw(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 Tw(e){var r;const n=Xn(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Pt(o.parent.path,i):i,o={parent:o}}return o}function nd(e){return t.computed(()=>Tw(t.toValue(e)))}function od(e){const{formData:n}=Xe(),o=td(e);return{value:t.computed({get:()=>ec(n,Xn(o.value)),set:i=>nw(n,Xn(o.value),i)})}}function Ct(e){const{getSchema:n}=Xe(),o=td(e),r=Nw(o),{value:i}=od(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:nd(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function Uo(e){const{getSchema:n}=Xe(),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 rd(e,n){const o=new WeakMap,r=new Map;function i(){return Vr(`${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((u,f)=>{c.add(f)}),Array.from(r.keys()).forEach(u=>{c.has(u)||r.delete(u)})},{immediate:!0,deep:!0}),{getKey:a}}const Pw="__request_callout_";function id(){return Vr(Pw)}const An=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?Ve.KTextArea:Ve.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,d=>{s.value=d});const{formConfig:c}=Xe(),u=d=>{d!==s.value&&(s.value=d,c.updateOnChange||i("update:modelValue",d))},f=()=>{c.updateOnChange&&i("update:modelValue",s.value)};return(d,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(d.$attrs,{"character-limit":l.value,"model-value":d.modelValue,resizable:d.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":u}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,y)=>({name:y,fn:t.withCtx(b=>[t.renderSlot(d.$slots,y,t.normalizeProps(t.guardReactiveProps(b)))])}))]),1040,["character-limit","model-value","resizable"]))}}),Ow=["innerHTML"],Jn=Ae(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}=Fe(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=Ct(t.toRef(()=>e.name)),c=Ot(s.path,t.toRef({...i,...o})),u=l==null?void 0:l.value;function f(h){u!==void 0&&h===""&&h!==u?(l.value=null,a("update:modelValue",null)):(l.value=h.trim(),a("update:modelValue",h.trim()))}const d=t.computed(()=>{var h;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((h=s.schema)==null?void 0:h.value).encrypted}),p=t.inject(je.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var h;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((h=s.schema.value)!=null&&h.referenceable)}),y=t.computed(()=>({referenceable:m.value})),b=Uo(s.ancestors),g=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Fo(e.name)==="name");return(h,w)=>{var k;const _=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},h.$attrs)),[t.createVNode(An,t.mergeProps({...t.unref(c),showPasswordMaskToggle:d.value,type:d.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":g.value,"data-autofocus":t.unref(b),"data-testid":`ff-${s.path.value}`,error:h.error,"error-message":h.errorMessage,help:h.multiline&&h.error?h.errorMessage:h.help,"model-value":t.unref(l)??"",multiline:h.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(k=t.unref(c).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Ow)],!0)]),key:"0"}:void 0,h.multiline&&h.error?void 0:{name:"help",fn:t.withCtx(()=>[t.renderSlot(h.$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:y.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(_,{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"]]),$w=["innerHTML"],Ba=Ae(t.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=Ct(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=Ot(i.path,o);return(c,u)=>{var d;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(Ve.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},[(d=t.unref(s).labelAttributes)!=null&&d.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,$w)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),ad=Ae(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(y=>[y,m.getPropertyValue(y)]))}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 y=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...y,transition:""})})}function c(p){a(p)}function u(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function d(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:d,onBeforeEnter:l,onBeforeLeave:u,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),Bw=["data-testid"],Vw=["data-testid"],Rw=["data-testid"],Dw=["innerHTML"],Mw={class:"ff-object-field-actions"},Lw=["data-testid"],ht=Ae(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(e){const n=t.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=Ct(t.toRef(n,"name")),{getSchema:i,getDefault:a}=Xe(),l=t.useModel(e,"added"),s=t.useModel(e,"expanded"),c=t.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),u=t.computed(()=>{var g,h;if((g=r.ancestors)!=null&&g.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((h=i(w.path))==null?void 0:h.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:u.value?"reset":"inherit"),d=Ot(r.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:f.value}))),p=t.computed(()=>d.value.required?!0:l.value??e.defaultAdded),m=t.computed(()=>e.asChild!==void 0?e.asChild:u.value),y=t.computed(()=>{let g=r.schema.value.fields;return e.omit&&(g=g.filter(h=>!e.omit.includes(Object.keys(h)[0]))),e.fieldsOrder?g.sort((h,w)=>{const _=Object.keys(h)[0],k=Object.keys(w)[0],E=e.fieldsOrder.indexOf(_),C=e.fieldsOrder.indexOf(k);return E===-1&&C===-1?0:E===-1?1:C===-1?-1:E-C}):g});function b(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,g=>{e.collapsible&&(s.value=g)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(g,h)=>{var _;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(g.$slots[t.unref(Zn)]))),r.error?(t.openBlock(),t.createBlock(w,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},g.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,k=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(k)[0],name:Object.keys(k)[0]},null,8,["name"]))),128))],!0)],16,Bw)):(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},g.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Ve.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(d),required:!1},{"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(_=t.unref(d).labelAttributes)!=null&&_.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Dw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",Mw,[g.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(Ve.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:h[0]||(h[0]=k=>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(d).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ve.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:b},{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,Rw),t.createVNode(ad,null,{default:t.withCtx(()=>[c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,k=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(k)[0],name:Object.keys(k)[0]},null,8,["name"]))),128))],!0)],8,Lw)):t.createCommentVNode("",!0)]),_:3})],16,Vw))],64)}}}),[["__scopeId","data-v-6f044592"]]),Fw=["innerHTML"],Qn=Ae(t.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=Ct(t.toRef(()=>e.name)),a=Ot(i.path,o),l=t.computed(()=>{var b;const p=(b=i.schema)==null?void 0:b.value;if(typeof p.gt=="number")return{min:p.gt};const[m,y]=p.between??[];return{min:o.min??m,max:o.max??y}}),s=n,c=r.value,u=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 d=Uo(i.ancestors);return(p,m)=>{var b;const y=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(y,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(An,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(d),"data-testid":`ff-${i.path.value}`,"model-value":u.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(b=t.unref(a).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,Fw)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),Uw=["innerHTML"],vt=Ae(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}=Xe(),{value:a,...l}=Ct(t.toRef(()=>e.name)),s=Ot(l.path,r),c=t.computed(()=>e.items?e.items:l.path?i(l.path.value):[]),u=t.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=l.schema.value)==null?void 0:d.type)==="set"}),f=t.computed(()=>u.value?Ve.KMultiselect:Ve.KSelect);return(d,p)=>{var y;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]=b=>t.isRef(a)?a.value=b:null),p[1]||(p[1]=b=>o("update",b))],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},[(y=t.unref(s).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(d.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Uw)],!0)]),key:"0"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-bfca8687"]]);function Dr(e,n,o=!0){const{value:r,...i}=Ct(t.toRef(e,"name")),a=Ot(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(u(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Vr("ff-kv-field-")}function c(g,h,w){const _=w.indexOf(g),k=w.indexOf(h);return _===-1&&k===-1?0:_===-1?1:k===-1?-1:_-k}function u(g,h){const w=Object.entries(g).map(([_,k])=>({id:s(),key:_,value:k}));return h&&w.sort((_,k)=>c(_.key,k.key,h)),w}function f(){const g={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(g),g}function d(g){const h=l.value.findIndex(w=>w.id===g);h!==-1&&l.value.splice(h,1)}function p(){l.value=u(e.initialValue||{},e.keyOrder)}function m(g){l.value=u(g,e.keyOrder)}let y=null;t.watch(l,g=>{if(!o)return;const h=g.length?Object.fromEntries(g.map(({key:w,value:_})=>[w,_]).filter(([w])=>w)):null;r.value=h,y=h,n("change",h)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,g=>{Do(g,y)||b(g)},{deep:!0});function b(g){if(!g){l.value=[];return}const h=new Map;l.value.forEach(E=>{E.key&&h.set(E.key,E)});const w=[],_=Object.keys(g);(e.keyOrder?[..._].sort((E,C)=>c(E,C,e.keyOrder)):_).forEach(E=>{const C=g[E];if(h.has(E)){const N=h.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:d,reset:p,setValue:m,labelAttrs:a,field:i}}const Kw=["data-testid"],jw=["data-testid"],Gw=["innerHTML"],qw=["data-testid"],zw=Ae(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}=Fe(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:u,setValue:f,labelAttrs:d,field:p}=Dr(r,a),m=t.useTemplateRef("root");async function y(E,C="key"){var N;m.value&&(await t.nextTick(),(N=m.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function b(){s();const E=l.value.findIndex(({key:C})=>!C);y(E===-1?l.value.length-1:E)}function g(E){E===l.value.length-1&&s(),y(E+1)}const h=t.inject(je.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)}),_=t.computed(()=>({referenceable:w.value}));function k(E,C){l.value[E].value=C}return n({reset:u,setValue:f}),(E,C)=>{var G;const N=t.resolveComponent("KAlert"),T=t.resolveComponent("KLabel"),D=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(T,t.mergeProps({class:"ff-kv-field-label"},t.unref(d),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(G=t.unref(d).labelAttributes)!=null&&G.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Gw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(D,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:1},8,["data-testid"])],8,jw),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(j,S)=>(t.openBlock(),t.createElementBlock("div",{key:j.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${S}`},[t.createVNode(An,{modelValue:j.key,"onUpdate:modelValue":ee=>j.key=ee,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":S,"data-testid":`ff-key-${t.unref(p).path.value}.${S}`,placeholder:E.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(ee=>y(S,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(An,{modelValue:j.value,"onUpdate:modelValue":ee=>j.value=ee,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${S}`,"data-value-input":S,placeholder:E.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(ee=>g(S),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(h)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(h)),{key:0,schema:_.value,update:ee=>k(S,ee),value:j.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(h)?(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(D,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${S}`,icon:"",onClick:ee=>t.unref(c)(j.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,qw))),128))],8,Kw))}}}),[["__scopeId","data-v-92e0893d"]]),Hw=["data-testid"],Yw=["innerHTML"],Va=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=Ct(t.toRef(()=>e.name)),s=Ot(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var b,g;return((g=(b=l.schema)==null?void 0:b.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),u=t.ref("");function f(b){return b.map(g=>g.trim()).filter(Boolean).join(", ")}function d(b){return b.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(b){u.value=b;const g=d(b),h=!g.length&&c.value?null:g;a.value=h,i("update:modelValue",h)}const m=Uo(l.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Fo(e.name)==="name");return t.watch(a,b=>{const g=b?f(b):"";f(d(u.value))!==g&&(u.value=g)},{immediate:!0}),(b,g)=>{var w;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-tag-${l.path.value}`},[t.createVNode(An,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":y.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":u.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(w=t.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Yw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Hw))}}}),[["__scopeId","data-v-a27f4ff1"]]),Ww=["data-testid"],Xw=["innerHTML"],Zw=Ae(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{name:{},labelAttributes:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=Ct(t.toRef(()=>e.name)),s=Ot(l.path,t.toRef({...r,...o})),c=t.ref("");function u(p){c.value=p;let m=p||null;try{const y=JSON.parse(p);y&&typeof y=="object"&&(m=y)}catch{}a.value=m,i("update:modelValue",m)}const f=Uo(l.ancestors),d=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Fo(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);Do(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 b;const y=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(y,{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(An,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":d.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":u}),t.createSlots({_:2},[(b=t.unref(s).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Xw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Ww))}}}),[["__scopeId","data-v-5749f722"]]),Jw=["innerHTML"],Qw=Ae(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}}=Fe(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,...s}=Ct(t.toRef(()=>e.name));if(s.error)throw new Error(s.error.message);const c=Ot(s.path,t.toRef({...i,...o})),u=l.value?l.value.id:null,f=t.computed(()=>{var b;return c.value.placeholder?c.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((b=s.schema.value)==null?void 0:b.reference)??"entity"})}),d=t.ref(u??"");function p(b){u!==void 0&&b===""&&b!==u?(l.value=null,a("update:modelValue",null)):(l.value={id:b.trim()},a("update:modelValue",l.value))}const m=Uo(s.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Fo(e.name)==="name");return(b,g)=>{var h;return t.openBlock(),t.createBlock(An,t.mergeProps(t.unref(c),{class:"ff-foreign-field","data-1p-ignore":y.value,"data-autofocus":t.unref(m),"data-testid":`ff-${s.path.value}`,error:b.error,"error-message":b.errorMessage,help:b.help,"model-value":d.value,placeholder:f.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(h=t.unref(c).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Jw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])}}}),[["__scopeId","data-v-b54c028e"]]),pt=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=Ct(t.toRef(n,"name")),r=t.computed(()=>{var i,a;switch((a=(i=o.schema)==null?void 0:i.value)==null?void 0:a.type){case"string":return"one_of"in o.schema.value?vt:Jn;case"boolean":return"one_of"in o.schema.value?vt:Ba;case"number":case"integer":return"one_of"in o.schema.value?vt:Qn;case"array":return Mr;case"set":return ww(o.schema)?Va:vt;case"record":return ht;case"map":return zw;case"json":return Zw;case"foreign":return Qw;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(Zn)]))),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:Ia(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:Ia(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)}}}),ek=["data-testid"],tk=["data-testid"],nk=["innerHTML"],ok=["data-testid"],rk={class:"ff-array-field-item-content"},ik=["data-index","data-testid"],Mr=Ae(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=>({"3e1c9ee2":E.value}));const o=e,r=n,{i18n:{t:i}}=Fe(),{getDefault:a,getSchema:l}=Xe(),{value:s,...c}=Ct(t.toRef(o,"name")),u=Ot(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}),d=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=rd("ff-array-field",d),m=t.computed(()=>o.appearance==="card"?Ve.KCard:"div");function y(N,T){return typeof o.itemLabel=="function"?o.itemLabel(N,T):o.itemLabel||u.value.label||`Item #${T}`}const b=t.computed(()=>d.value.map((N,T)=>({hash:`#${p(N,T)}`,title:""}))),g=t.ref((C=b.value[0])==null?void 0:C.hash),h=async()=>{var T;const N=a(Pt(c.path.value,Aa));Array.isArray(s.value)||(s.value=[]),s.value.push(N),r("add"),o.appearance==="tabs"&&(await t.nextTick(),g.value=(T=b.value[b.value.length-1])==null?void 0:T.hash),await t.nextTick(),k(d.value.length+1)},w=async N=>{var T;Array.isArray(s.value)&&s.value.splice(N,1),r("remove",N),o.appearance==="tabs"&&(g.value=(T=b.value[Math.max(0,N-1)])==null?void 0:T.hash)},_=t.useTemplateRef("root");function k(N){var D;if(!_.value)return;const T=Math.max(0,Math.min(N,d.value.length-1));(D=_.value.querySelector(`[data-index="${T}"] [data-autofocus]`))==null||D.focus()}const E=t.computed(()=>{const{appearance:N,stickyTabs:T}=o;return N!=="tabs"||T==null||T===!1?null:typeof T=="number"?`${o.stickyTabs}px`:typeof T=="string"?T:"0"});return(N,T)=>{var ee;const D=t.resolveComponent("KAlert"),G=t.resolveComponent("KLabel"),j=t.resolveComponent("KButton"),S=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(D,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:_,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${N.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":N.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(G,t.mergeProps({class:"ff-array-field-label"},t.unref(u),{"data-testid":`ff-label-${c.path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(ee=t.unref(u).labelAttributes)!=null&&ee.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,nk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(j,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${c.path.value}`,icon:"",onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,tk),d.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[N.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(d.value,(x,q)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(x,q),class:"ff-array-field-item","data-index":q,"data-testid":`ff-array-item-${c.path.value}.${q}`},{default:t.withCtx(()=>[t.createElementVNode("div",rk,[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(Va,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(q)},null,8,["help","name"])):(t.openBlock(),t.createBlock(pt,{key:2,name:String(q)},null,8,["name"]))]),t.createVNode(j,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${q}`,icon:"",onClick:U=>w(q)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,ok)):(t.openBlock(),t.createBlock(t.unref(Ve.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(S,{modelValue:g.value,"onUpdate:modelValue":T[0]||(T[0]=x=>g.value=x),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:b.value},t.createSlots({_:2},[t.renderList(d.value,(x,q)=>({name:t.unref(p)(x,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(pt,{key:1,name:String(q)},null,8,["name"]))],8,ik)])})),t.renderList(d.value,(x,q)=>({name:`${t.unref(p)(x,q)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(y(x,q))+" ",1),t.createVNode(j,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${q}`,icon:"",onClick:t.withModifiers(U=>w(q),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,ek))}}}),[["__scopeId","data-v-3edd064c"]]),Ko=Symbol(),ak=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Xe(),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(({[Ko]: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(ht,{name:l.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(vt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(ht,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(u=>[t.createVNode(vt,t.mergeProps(u,{items:t.unref(xa)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),lk=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Xe();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Ko]=id())}return(r,i)=>(t.openBlock(),t.createBlock(Mr,{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(ak,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),ld=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),r=t.inject(Rr);if(!r)throw new Error(Rr.toString()+"not provided");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(),a=Ew(e.schema);t.provide(Zc,a);const l=m=>{var y;return Sr((y=e.config)==null?void 0:y.hasValue)?e.config.hasValue(m):!!m},s=t.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((y,b)=>{const g=Object.keys(y)[0],h=Object.keys(b)[0],w=e.fieldsOrder.indexOf(g),_=e.fieldsOrder.indexOf(h);return w===-1&&_===-1?0:w===-1?1:_===-1?-1:w-_}):m});let c=!1;const u=t.reactive({});t.provide(Xc,u),t.provide(Ta,Mo(i,"default",Zn));const f=new Map;t.provide(Rr,f),t.provide(Qc,e.config??{}),t.watch(u,m=>{c&&r("change",t.toValue(m))},{deep:!0,immediate:!0});function d(m){Object.keys(u).forEach(y=>{delete u[y]}),Object.assign(u,m)}function p(m){var b;let y;!m||!l(t.toValue(m))?y=a.getDefault():y=Yn(t.toValue(m)),Sr((b=e.config)==null?void 0:b.prepareFormData)?d(e.config.prepareFormData(y)):d(y),c=!0}return t.onBeforeMount(()=>{p(e.data)}),t.watch(()=>e.data,m=>{p(m)},{deep:!0}),n({getInnerData:()=>t.toRaw(u)}),(m,y)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Zn)]))),t.renderSlot(m.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,b=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(b)[0],name:Object.keys(b)[0],onGlobalAction:y[0]||(y[0]=(g,h)=>r("globalAction",g,h))},null,8,["name"]))),128))])]),_:3}))}}),sk={class:"ff-advanced-fields"},Lr=Ae(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=Qe.createI18n("en-us",it),{getSchema:o}=Xe(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Ve.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",sk,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(pt,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(pt,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Va,{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"]]),ck=Ae(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}}=Fe();function a(u,f=!1){return u.reduce((d,{[Ko]:p,name:m})=>(f?d[m]=p:d[p]=m,d),{})}function l(u){var m;const f=Yn(u);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:d}=f.config;d.forEach(y=>{y.request.body.custom=y.request.body.custom??{},y[Ko]=id()});const p=a(d,!0);return d.forEach(y=>{y.depends_on=y.depends_on.map(b=>p[b])}),f}function s(u){return!!(u!=null&&u.config)}function c(u){var p;if(!u)return;const f=Yn(u);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const d=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[Ko]:y,depends_on:b,...g}=m;return{depends_on:b.map(h=>d[h]).filter(h=>h!=null),...g}}),o("change",f)}return(u,f)=>(t.openBlock(),t.createBlock(yt,{class:"rc-config-form",config:r,data:u.data,schema:u.schema,tag:"div",onChange:c},{[t.unref(Zn)]:t.withCtx(()=>[t.createVNode(ld,{match:({path:d})=>d.endsWith("by_lua")},{default:t.withCtx(d=>[t.createVNode(Jn,t.mergeProps(d,{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(ld,{match:({path:d})=>["cluster_nodes","sentinel_nodes"].some(p=>d.endsWith(p))},{default:t.withCtx(d=>[t.createVNode(Mr,t.mergeProps(d,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(ht,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(lk),t.createVNode(ht,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(ht,{appearance:"card",name:"cache"},{redis:t.withCtx(d=>[t.createVNode(ht,t.mergeProps(d,{"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(Lr)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),dk={class:"ff-form-pinned-fields"},uk={class:"ff-form-config-form"},Ra=Ae(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Qe.createI18n("en-us",it),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(d=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===d)}).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 d=f.fields.find(p=>Object.keys(p)[0]==="protocols");return d&&(d.protocols.help=d.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:d.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),d.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1),u=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return Na(o.model,f)});return(f,d)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",dk,[t.createVNode(t.unref(je.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:t.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Ve.KCollapse),{modelValue:c.value,"onUpdate:modelValue":d[1]||(d[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",uk,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:u.value,schema:s.value,onChange:d[0]||(d[0]=(...p)=>f.onFormChange&&f.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),fk=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(je.AUTOFILL_SLOT,o==null?void 0:o[je.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ra,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(ck,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),pk={key:1},mk=["innerHTML"],gk={class:"horizontal-container"},hk=Ae(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}=Xe(),a=Ct(t.toRef(()=>e.name)),l=Ot(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=u=>{a.value&&(a.value.value=u),o("update:modelValue",u)};return(u,f)=>{var m;const d=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(d,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",pk,[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,mk)]),key:"0"}:void 0]),1040),t.createElementVNode("div",gk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,y=>(t.openBlock(),t.createBlock(t.unref(Ve.KRadio),{key:y.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=b=>t.unref(a).value.value=b),c],"card-orientation":"horizontal",label:y.label,"selected-value":y.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),yk={class:"sp-form-request-limits-subtitle"},_k={class:"sp-form-request-limits-content"},bk={class:"sp-form-window-type"},wk={class:"sp-form-request-limits-items"},kk={class:"sp-form-request-limits-row"},Ck=["id"],Ek={class:"sp-form-request-limits-actions"},Nk={key:0,class:"sp-form-request-limits-examples"},Sk={class:"sp-form-request-limits-examples-badges"},Da="config.window_type",vk=Ae(t.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t:n}=Qe.createI18n("en-us",it),{formData:o,getSelectItems:r,getSchema:i}=Xe(),a=t.computed(()=>{var w,_;const h=(_=(w=o.config)==null?void 0:w.limit)==null?void 0:_.map((k,E)=>{var C,N;return{limit:k,windowSize:(N=(C=o.config)==null?void 0:C.window_size)==null?void 0:N[E]}});return!Array.isArray(h)||h.length===0?[{limit:null,windowSize:null}]:h}),{getKey:l}=rd("request-limits",a),s=h=>{var w,_;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(_=o.config.window_size)!=null&&_.length||(o.config.window_size=[null]),o.config.limit.splice(h+1,0,null),o.config.window_size.splice(h+1,0,null))},c=h=>{o.config&&(o.config.limit.splice(h,1),o.config.window_size.splice(h,1))},u=(g=i(Da))==null?void 0:g.default,f=t.computed(()=>ec(o,Da)),d=t.computed(()=>r(Da).sort((h,w)=>h.value===u?-1:w.value===u?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}}]},y=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),b=(h,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=[h.config.limit],o.config.window_size=[h.config.window_size]};return(h,w)=>{const _=t.resolveComponent("KLabel"),k=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(_,{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",yk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",_k,[t.createElementVNode("div",bk,[t.createVNode(hk,{items:d.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=T=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",wk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(T,D)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(T,D)},[t.createVNode(_,{for:`sp-form-request-limits-item-${D}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:D+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",kk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${D}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Qn,{name:`$.config.limit.${D}`,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(Qn,{name:`$.config.window_size.${D}`,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,Ck),t.createElementVNode("div",Ek,[t.createVNode(k,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(D)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(k,{appearance:"tertiary",onClick:()=>s(D)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),y.value.length>0?(t.openBlock(),t.createElementBlock("div",Nk,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",Sk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,(T,D)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${D}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(T.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(T.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(T.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(E,{appearance:p.value===`${f.value}-${D}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>b(T,`${f.value}-${D}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(T.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),xk={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Ak=Ae(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Qe.createI18n("en-us",it);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",xk,[t.createVNode(Qn,{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(Jn,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Ik={class:"partial-config-card"},Tk={class:"config-card-row-label"},Pk={class:"label-text"},Ok=["data-testid"],$k=["data-testid"],Bk={key:1},Vk=["data-testid"],Rk=["data-testid"],Dk=Ae(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Qe.createI18n("en-us",it),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=d=>d!=null,l=(d,p)=>a(p)&&["password","sentinel_password"].includes(d)?"password":"text",{convertKeyToTitle:s}=pe.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([d,p])=>{var m,y,b,g;return{key:d,label:((m=r[d])==null?void 0:m.label)??s(d),value:(y=r[d])!=null&&y.formatter?r[d].formatter(p):p,type:((b=r[d])==null?void 0:b.type)??l(d,p),order:((g=r[d])==null?void 0:g.order)??100}}).sort((d,p)=>d.order-p.order).filter(d=>d.type!=="hidden")),u=bw(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(u));return(d,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",Ik,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:y,label:b,value:g,type:h})=>(t.openBlock(),t.createElementBlock("div",{key:y,class:"partial-config-card-row"},[t.createElementVNode("div",Tk,[t.createElementVNode("div",Pk,t.toDisplayString(b),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${y}-property-value`},[a(g)?(t.openBlock(),t.createElementBlock("div",Bk,[h==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${y}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(g)},null,8,["text"])],8,Vk)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${y}-plain-text`},t.toDisplayString(g),9,Rk))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${y}-no-value`}," – ",8,$k))],8,Ok)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Mk=Ae(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}=Qe.createI18n("en-us",it),i=t.inject(je.FORMS_CONFIG),a=n,{getMessageFromError:l}=pe.useErrors(),s=t.computed(()=>{switch(o.partialType){case xo.PartialType.REDIS_CE:return xo.PartialType.REDIS_EE;case xo.PartialType.REDIS_EE:return xo.PartialType.REDIS_CE;default:return}}),c=t.ref(!1),u=t.ref(),f=m=>{a("partialUpdateFailed",{message:l(m),appearance:"danger"})},d=()=>{a("partialUpdated",{message:r("plugins.free-form.redis_partial.partial_created_success_message"),appearance:"success"}),p()},p=()=>{u.value=void 0,a("modalClose"),t.nextTick(()=>{c.value=!1})};return t.watch(()=>o.visible,m=>{m&&(c.value=!0,t.nextTick(()=>{u.value="#km-modal-footer"}))}),(m,y)=>{const b=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(b,{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(()=>y[0]||(y[0]=[t.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:t.withCtx(()=>[t.createVNode(t.unref(xo.RedisConfigurationForm),{"action-teleport-target":u.value,config:t.unref(i),"disabled-partial-type":s.value,"slidout-top-offset":0,onCancel:p,onError:f,onUpdate:d},null,8,["action-teleport-target","config","disabled-partial-type"])]),_:1},8,["title","visible"])}}}),[["__scopeId","data-v-ac12474e"]]),Lk="#ecfcff",Fk="#f1f0ff",Uk="#52596e",Kk="#e0e4ea",jk="#007d60",Gk="#fffce0",qk="#6c7489",zk="#0044f4",Hk="#5f9aff",sd="#000933",Ma="#d60027",Yk="#ffe5e5",Wk="#00abd2",Xk="#d60067",Zk="#6f28ff",cd="#afb7c5",dd="#6c7489",Jk="#0044f4",Qk="#eefaff",eC="#007d60",tC="#ecfffb",nC="#995c00",jo="12px",oC="16px",La="20px",ud="8px",rC="32px",fd=Symbol("redis-partial-info"),pd={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"}},md=["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"],iC={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},aC={key:0,class:"shared-redis-config"},lC={class:"shared-redis-config-title"},sC={class:"redis-config-select","data-testid":"redis-config-select"},cC={class:"selected-redis-config"},dC=["data-testid"],uC={class:"select-item-name","data-testid":"selected-redis-config"},fC={class:"empty-redis-config","data-testid":"empty-redis-config"},pC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},mC="1000",gC=Ae(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var Q;const o=n,{t:r}=Qe.createI18n("en-us",it),i=e,a=t.inject(fd),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var R;return i.redisPath?i.redisPath:(R=a==null?void 0:a.redisPath)!=null&&R.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((Q=a==null?void 0:a.redisType)==null?void 0:Q.value)||"all",u=t.computed(()=>{var R;return!!((R=a==null?void 0:a.redisType)!=null&&R.value)}),f=t.ref(!1),d=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=pe.useErrors(),y=t.ref(i.defaultRedisConfigItem),b=t.ref({}),g=t.ref(),{value:h}=od("$.partials"),{value:w}=Ct(s),_=t.inject(je.FORMS_CONFIG),{debouncedQueryChange:k,loading:E,error:C,loadItems:N,results:T}=pe.useDebouncedFilter(_,pd[_.app].getAll,mC,{fetchedItemsKey:"data",searchKeys:["id","name"]}),D=t.computed(()=>C.value?m(C.value):""),G=R=>{let P=`${_.apiBaseUrl}${pd[_.app].getOne}`;return _.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,(_==null?void 0:_.controlPlaneId)||""):_.app==="kongManager"&&(P=P.replace(/\/{workspace}/gi,_!=null&&_.workspace?`/${_.workspace}`:"")),P=P.replace(/{id}/gi,String(R)),P},j=t.computed(()=>{const R=(T.value||[]).map(P=>({label:P.id,name:P.name,value:P.id,type:P.type,tag:hw(P)})).filter(P=>P.type==="redis-ce"||P.type==="redis-ee");return c!=="all"?R.filter(P=>P.type===c):R}),{axiosInstance:S}=pe.useAxios(_==null?void 0:_.axiosRequestConfig),ee=()=>{p.value?(g.value&&(h.value=g.value,y.value=g.value[0].id,w.value=void 0),w!=null&&w.value&&(b.value=w.value)):(Object.keys(b.value).length&&(w.value=b.value),h!=null&&h.value&&(g.value=h.value),h.value=l?null:void 0)},x=R=>{N(),o("globalAction","notify",R)},q=R=>{o("globalAction","notify",R)},U=async R=>{if(R){y.value=R,h.value=[{id:R}],g.value=[{id:R}],w.value=void 0;try{const P=await S.get(G(R));if(P.data.config){const v=Object.assign(P.data,P.data.config);delete v.config,d.value=v}}catch(P){console.error(P)}}};return t.watch(()=>p.value,()=>{ee()}),t.onBeforeMount(()=>{var R;if(N(),i.defaultRedisConfigItem||h!=null&&h.value){const P=i.defaultRedisConfigItem||((R=h==null?void 0:h.value)==null?void 0:R[0].id);U(P),p.value=!0}else w!=null&&w.value&&(b.value=w.value)}),(R,P)=>{const v=t.resolveComponent("KBadge"),I=t.resolveComponent("KRadio"),A=t.resolveComponent("KSelect"),W=t.resolveComponent("KCard");return u.value?(t.openBlock(),t.createBlock(W,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",iC,[t.createVNode(I,{modelValue:p.value,"onUpdate:modelValue":P[0]||(P[0]=H=>p.value=H),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(v,{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(I,{modelValue:p.value,"onUpdate:modelValue":P[1]||(P[1]=H=>p.value=H),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",aC,[t.createElementVNode("div",lC,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",sC,[t.createVNode(A,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:j.value,loading:t.unref(E),"model-value":y.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:P[3]||(P[3]=H=>U(H==null?void 0:H.value)),onQueryChange:t.unref(k)},{"selected-item-template":t.withCtx(({item:H})=>[t.createElementVNode("div",cC,t.toDisplayString(H.name),1)]),"item-template":t.withCtx(({item:H})=>[t.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${H.name}`},[t.createElementVNode("span",uC,t.toDisplayString(H.name),1),t.createVNode(v,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(H.tag),1)]),_:2},1024)],8,dC)]),empty:t.withCtx(()=>[t.createElementVNode("div",fC,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:P[2]||(P[2]=()=>f.value=!0)},[t.createVNode(t.unref(xe.AddIcon),{size:t.unref(jo)},null,8,["size"]),t.createElementVNode("span",null,t.toDisplayString(t.unref(r)("redis.shared_configuration.create_new_configuration",{type:t.unref(_w)(t.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),d.value?(t.openBlock(),t.createBlock(Dk,{key:0,"config-fields":d.value},null,8,["config-fields"])):t.createCommentVNode("",!0),D.value?(t.openBlock(),t.createElementBlock("p",pC,t.toDisplayString(D.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(ht,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(md),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(Mk,{"partial-type":t.unref(c),visible:f.value,onModalClose:P[4]||(P[4]=H=>f.value=!1),onPartialUpdateFailed:q,onPartialUpdated:x},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(ht,t.mergeProps({key:1},i,{"fields-order":t.unref(md),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-12b9ad82"]]),hC=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=Xe();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(ad,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(gC,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),yC=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:a.data,schema:a.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(ht,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(vk),t.createVNode(Ak)]),_:1}),t.createVNode(Lr,null,{default:t.withCtx(()=>[t.createVNode(pt,{name:"config.dictionary_name"}),t.createVNode(pt,{name:"config.lock_dictionary_name"}),t.createVNode(pt,{name:"config.strategy"}),t.createVNode(hC,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(pt,{name:"config.namespace"}),t.createVNode(pt,{name:"config.hide_client_headers"}),t.createVNode(pt,{name:"config.disable_penalty"}),t.createVNode(pt,{name:"config.retry_after_jitter_max"}),t.createVNode(pt,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),_C=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(je.AUTOFILL_SLOT,o==null?void 0:o[je.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ra,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(yC,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),bC={class:"ff-standard-layout"},wC={class:"enabled"},kC={class:"scope"},CC={key:0,class:"scope-detail"},gd=Ae(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}=Qe.createI18n("en-us",it),o=e,r=t.useSlots(),i=t.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(h=>h.model==="enabled")}}),a=t.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(h=>h.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:g,description:h})=>({label:g,description:h}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var h;const g=["instance_name","protocols","tags"];return{fields:(h=o.formSchema)==null?void 0:h.fields.filter(w=>g.includes(w.model))}}),u=["config"],f=t.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(h=>u.includes(Object.keys(h)[0])),g}),d=t.computed(()=>{const g=["config","partials","__ui_data"];return Na(o.model,g)}),p=Na(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]),m=t.ref(Object.values(p).some(g=>!!g)),y=t.ref(!0);function b(g,h){p[h]=g,o.onModelUpdated(g,h)}return t.watch(m,g=>{g?Object.keys(p).forEach(h=>{o.onModelUpdated(p[h],h)}):Object.keys(p).forEach(h=>{o.onModelUpdated("",h)})}),(g,h)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",bC,[t.createVNode(t.unref(pe.EntityFormBlock),{description:g.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:g.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",wC,[t.createVNode(t.unref(je.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",kC,[t.createVNode(t.unref(Ve.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":h[0]||(h[0]=_=>m.value=_),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(Ve.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":h[1]||(h[1]=_=>m.value=_),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),m.value?(t.openBlock(),t.createElementBlock("div",CC,[t.createVNode(t.unref(je.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:b},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:y.value,"onUpdate:modelValue":h[2]||(h[2]=_=>y.value=_),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(je.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:c.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(pe.EntityFormBlock),{description:g.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:g.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(g.$slots,"default",{data:d.value,schema:f.value,onChange:h[3]||(h[3]=(..._)=>g.onFormChange&&g.onFormChange(..._))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-8d0a8a0c"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function hd(e){return typeof e>"u"||e===null}function EC(e){return typeof e=="object"&&e!==null}function NC(e){return Array.isArray(e)?e:hd(e)?[]:[e]}function SC(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 vC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function xC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var AC=hd,IC=EC,TC=NC,PC=vC,OC=xC,$C=SC,at={isNothing:AC,isObject:IC,toArray:TC,repeat:PC,isNegativeZero:OC,extend:$C};function yd(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
|
-
`+e.mark.snippet),r+" "+o):r}function
|
|
16
|
-
`+s;for(u=
|
|
17
|
-
`,s+=
|
|
18
|
-
`,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)u=
|
|
19
|
-
`;return s.replace(/\n$/,"")}var
|
|
20
|
-
\r`;function
|
|
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
|
|
22
|
-
`,n-1))}function
|
|
23
|
-
`,a?1+c:c):i===
|
|
24
|
-
`);break}for(r?
|
|
25
|
-
`,a?1+c:c)):u?(u=!1,e.result+=
|
|
26
|
-
`,c+1)):c===0?a&&(e.result+=" "):e.result+=
|
|
27
|
-
`,c):e.result+=
|
|
28
|
-
`,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!
|
|
29
|
-
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new
|
|
15
|
+
`+e.mark.snippet),r+" "+o):r}function Go(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=yd(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Go.prototype=Object.create(Error.prototype),Go.prototype.constructor=Go,Go.prototype.toString=function(n){return this.name+": "+yd(this,n)};var mt=Go;function Fa(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 Ua(e,n){return at.repeat(" ",n-e.length)+e}function BC(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,u,f=Math.min(e.line+n.linesAfter,i.length).toString().length,d=n.maxLength-(n.indent+f+3);for(c=1;c<=n.linesBefore&&!(l-c<0);c++)u=Fa(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),d),s=at.repeat(" ",n.indent)+Ua((e.line-c+1).toString(),f)+" | "+u.str+`
|
|
16
|
+
`+s;for(u=Fa(e.buffer,r[l],i[l],e.position,d),s+=at.repeat(" ",n.indent)+Ua((e.line+1).toString(),f)+" | "+u.str+`
|
|
17
|
+
`,s+=at.repeat("-",n.indent+f+3+u.pos)+`^
|
|
18
|
+
`,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)u=Fa(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),d),s+=at.repeat(" ",n.indent)+Ua((e.line+c+1).toString(),f)+" | "+u.str+`
|
|
19
|
+
`;return s.replace(/\n$/,"")}var VC=BC,RC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],DC=["scalar","sequence","mapping"];function MC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function LC(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(RC.indexOf(o)===-1)throw new mt('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=MC(n.styleAliases||null),DC.indexOf(this.kind)===-1)throw new mt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var dt=LC;function _d(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 FC(){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 Ka(e){return this.extend(e)}Ka.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 mt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof dt))throw new mt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new mt("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 mt("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 mt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Ka.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=_d(i,"implicit"),i.compiledExplicit=_d(i,"explicit"),i.compiledTypeMap=FC(i.compiledImplicit,i.compiledExplicit),i};var bd=Ka,wd=new dt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),kd=new dt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Cd=new dt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Ed=new bd({explicit:[wd,kd,Cd]});function UC(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function KC(){return null}function jC(e){return e===null}var Nd=new dt("tag:yaml.org,2002:null",{kind:"scalar",resolve:UC,construct:KC,predicate:jC,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function GC(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 qC(e){return e==="true"||e==="True"||e==="TRUE"}function zC(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Sd=new dt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:GC,construct:qC,predicate:zC,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 HC(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function YC(e){return 48<=e&&e<=55}function WC(e){return 48<=e&&e<=57}function XC(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(!HC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!YC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!WC(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function ZC(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 JC(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!at.isNegativeZero(e)}var vd=new dt("tag:yaml.org,2002:int",{kind:"scalar",resolve:XC,construct:ZC,predicate:JC,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"]}}),QC=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function eE(e){return!(e===null||!QC.test(e)||e[e.length-1]==="_")}function tE(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 nE=/^[-+]?[0-9]+e/;function oE(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(at.isNegativeZero(e))return"-0.0";return o=e.toString(10),nE.test(o)?o.replace("e",".e"):o}function rE(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||at.isNegativeZero(e))}var xd=new dt("tag:yaml.org,2002:float",{kind:"scalar",resolve:eE,construct:tE,predicate:rE,represent:oE,defaultStyle:"lowercase"}),Ad=Ed.extend({implicit:[Nd,Sd,vd,xd]}),Id=Ad,Td=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Pd=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 iE(e){return e===null?!1:Td.exec(e)!==null||Pd.exec(e)!==null}function aE(e){var n,o,r,i,a,l,s,c=0,u=null,f,d,p;if(n=Td.exec(e),n===null&&(n=Pd.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],d=+(n[11]||0),u=(f*60+d)*6e4,n[9]==="-"&&(u=-u)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),u&&p.setTime(p.getTime()-u),p}function lE(e){return e.toISOString()}var Od=new dt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:iE,construct:aE,instanceOf:Date,represent:lE});function sE(e){return e==="<<"||e===null}var $d=new dt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:sE}),ja=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
|
20
|
+
\r`;function cE(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=ja;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 dE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=ja,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 uE(e){var n="",o=0,r,i,a=e.length,l=ja;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 fE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Bd=new dt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:cE,construct:dE,predicate:fE,represent:uE}),pE=Object.prototype.hasOwnProperty,mE=Object.prototype.toString;function gE(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,mE.call(i)!=="[object Object]")return!1;for(a in i)if(pE.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 hE(e){return e!==null?e:[]}var Vd=new dt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:gE,construct:hE}),yE=Object.prototype.toString;function _E(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],yE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function bE(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 Rd=new dt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:_E,construct:bE}),wE=Object.prototype.hasOwnProperty;function kE(e){if(e===null)return!0;var n,o=e;for(n in o)if(wE.call(o,n)&&o[n]!==null)return!1;return!0}function CE(e){return e!==null?e:{}}var Dd=new dt("tag:yaml.org,2002:set",{kind:"mapping",resolve:kE,construct:CE}),Ga=Id.extend({implicit:[Od,$d],explicit:[Bd,Vd,Rd,Dd]}),ln=Object.prototype.hasOwnProperty,Fr=1,Md=2,Ld=3,Ur=4,qa=1,EE=2,Fd=3,NE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,SE=/[\x85\u2028\u2029]/,vE=/[,\[\]\{\}]/,Ud=/^(?:!|!!|![a-z\-]+!)$/i,Kd=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function jd(e){return Object.prototype.toString.call(e)}function Lt(e){return e===10||e===13}function In(e){return e===9||e===32}function _t(e){return e===9||e===32||e===10||e===13}function eo(e){return e===44||e===91||e===93||e===123||e===125}function xE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function AE(e){return e===120?2:e===117?4:e===85?8:0}function IE(e){return 48<=e&&e<=57?e-48:-1}function Gd(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
|
|
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 TE(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}for(var qd=new Array(256),zd=new Array(256),to=0;to<256;to++)qd[to]=Gd(to)?1:0,zd[to]=Gd(to);function PE(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||Ga,this.onWarning=n.onWarning||null,this.legacy=n.legacy||!1,this.json=n.json||!1,this.listener=n.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Hd(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=VC(o),new mt(n,o)}function Pe(e,n){throw Hd(e,n)}function Kr(e,n){e.onWarning&&e.onWarning.call(null,Hd(e,n))}var Yd={YAML:function(n,o,r){var i,a,l;n.version!==null&&Pe(n,"duplication of %YAML directive"),r.length!==1&&Pe(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Pe(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Pe(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&Kr(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Pe(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],Ud.test(i)||Pe(n,"ill-formed tag handle (first argument) of the TAG directive"),ln.call(n.tagMap,i)&&Pe(n,'there is a previously declared suffix for "'+i+'" tag handle'),Kd.test(a)||Pe(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Pe(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function sn(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||Pe(e,"expected valid JSON character");else NE.test(s)&&Pe(e,"the stream contains non-printable characters");e.result+=s}}function Wd(e,n,o,r){var i,a,l,s;for(at.isObject(o)||Pe(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],ln.call(n,a)||(n[a]=o[a],r[a]=!0)}function no(e,n,o,r,i,a,l,s,c){var u,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),u=0,f=i.length;u<f;u+=1)Array.isArray(i[u])&&Pe(e,"nested arrays are not supported inside keys"),typeof i=="object"&&jd(i[u])==="[object Object]"&&(i[u]="[object Object]");if(typeof i=="object"&&jd(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(u=0,f=a.length;u<f;u+=1)Wd(e,n,a[u],o);else Wd(e,n,a,o);else!e.json&&!ln.call(o,i)&&ln.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,Pe(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 za(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++):Pe(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function et(e,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;In(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(Lt(i))for(za(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&&Kr(e,"deficient indentation"),r}function jr(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||_t(o)))}function Ha(e,n){n===1?e.result+=" ":n>1&&(e.result+=at.repeat(`
|
|
22
|
+
`,n-1))}function OE(e,n,o){var r,i,a,l,s,c,u,f,d=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),_t(m)||eo(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),_t(i)||o&&eo(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),_t(i)||o&&eo(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),_t(r))break}else{if(e.position===e.lineStart&&jr(e)||o&&eo(m))break;if(Lt(m))if(c=e.line,u=e.lineStart,f=e.lineIndent,et(e,!1,-1),e.lineIndent>=n){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=u,e.lineIndent=f;break}}s&&(sn(e,a,l,!1),Ha(e,e.line-c),a=l=e.position,s=!1),In(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return sn(e,a,l,!1),e.result?!0:(e.kind=d,e.result=p,!1)}function $E(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(sn(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 Lt(o)?(sn(e,r,i,!0),Ha(e,et(e,!1,n)),r=i=e.position):e.position===e.lineStart&&jr(e)?Pe(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Pe(e,"unexpected end of the stream within a single quoted scalar")}function BE(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 sn(e,o,e.position,!0),e.position++,!0;if(s===92){if(sn(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),Lt(s))et(e,!1,n);else if(s<256&&qd[s])e.result+=zd[s],e.position++;else if((l=AE(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=xE(s))>=0?a=(a<<4)+l:Pe(e,"expected hexadecimal character");e.result+=TE(a),e.position++}else Pe(e,"unknown escape sequence");o=r=e.position}else Lt(s)?(sn(e,o,r,!0),Ha(e,et(e,!1,n)),o=r=e.position):e.position===e.lineStart&&jr(e)?Pe(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Pe(e,"unexpected end of the stream within a double quoted scalar")}function VE(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,u,f,d,p,m,y=Object.create(null),b,g,h,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(et(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&&Pe(e,"expected the node content, but found ','"):Pe(e,"missed comma between flow collection entries"),g=b=h=null,d=p=!1,w===63&&(u=e.input.charCodeAt(e.position+1),_t(u)&&(d=p=!0,e.position++,et(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,oo(e,n,Fr,!1,!0),g=e.tag,b=e.result,et(e,!0,n),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(d=!0,w=e.input.charCodeAt(++e.position),et(e,!0,n),oo(e,n,Fr,!1,!0),h=e.result),m?no(e,s,y,g,b,h,r,i,a):d?s.push(no(e,null,y,g,b,h,r,i,a)):s.push(b),et(e,!0,n),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}Pe(e,"unexpected end of the stream within a flow collection")}function RE(e,n){var o,r,i=qa,a=!1,l=!1,s=n,c=0,u=!1,f,d;if(d=e.input.charCodeAt(e.position),d===124)r=!1;else if(d===62)r=!0;else return!1;for(e.kind="scalar",e.result="";d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)qa===i?i=d===43?Fd:EE:Pe(e,"repeat of a chomping mode identifier");else if((f=IE(d))>=0)f===0?Pe(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Pe(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(In(d)){do d=e.input.charCodeAt(++e.position);while(In(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!Lt(d)&&d!==0)}for(;d!==0;){for(za(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!l||e.lineIndent<s)&&d===32;)e.lineIndent++,d=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>s&&(s=e.lineIndent),Lt(d)){c++;continue}if(e.lineIndent<s){i===Fd?e.result+=at.repeat(`
|
|
23
|
+
`,a?1+c:c):i===qa&&a&&(e.result+=`
|
|
24
|
+
`);break}for(r?In(d)?(u=!0,e.result+=at.repeat(`
|
|
25
|
+
`,a?1+c:c)):u?(u=!1,e.result+=at.repeat(`
|
|
26
|
+
`,c+1)):c===0?a&&(e.result+=" "):e.result+=at.repeat(`
|
|
27
|
+
`,c):e.result+=at.repeat(`
|
|
28
|
+
`,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!Lt(d)&&d!==0;)d=e.input.charCodeAt(++e.position);sn(e,o,e.position,!1)}return!0}function Xd(e,n){var o,r=e.tag,i=e.anchor,a=[],l,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!_t(l))));){if(s=!0,e.position++,et(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,oo(e,n,Ld,!1,!0),a.push(e.result),et(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)Pe(e,"bad indentation of a sequence entry");else if(e.lineIndent<n)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function DE(e,n,o){var r,i,a,l,s,c,u=e.tag,f=e.anchor,d={},p=Object.create(null),m=null,y=null,b=null,g=!1,h=!1,w;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=d),w=e.input.charCodeAt(e.position);w!==0;){if(!g&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(w===63||w===58)&&_t(r))w===63?(g&&(no(e,d,p,m,y,null,l,s,c),m=y=b=null),h=!0,g=!0,i=!0):g?(g=!1,i=!0):Pe(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,w=r;else{if(l=e.line,s=e.lineStart,c=e.position,!oo(e,o,Md,!1,!0))break;if(e.line===a){for(w=e.input.charCodeAt(e.position);In(w);)w=e.input.charCodeAt(++e.position);if(w===58)w=e.input.charCodeAt(++e.position),_t(w)||Pe(e,"a whitespace character is expected after the key-value separator within a block mapping"),g&&(no(e,d,p,m,y,null,l,s,c),m=y=b=null),h=!0,g=!1,i=!1,m=e.tag,y=e.result;else if(h)Pe(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=u,e.anchor=f,!0}else if(h)Pe(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=u,e.anchor=f,!0}if((e.line===a||e.lineIndent>n)&&(g&&(l=e.line,s=e.lineStart,c=e.position),oo(e,n,Ur,!0,i)&&(g?y=e.result:b=e.result),g||(no(e,d,p,m,y,b,l,s,c),m=y=b=null),et(e,!0,-1),w=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&w!==0)Pe(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return g&&no(e,d,p,m,y,null,l,s,c),h&&(e.tag=u,e.anchor=f,e.kind="mapping",e.result=d),h}function ME(e){var n,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&Pe(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(o=!0,l=e.input.charCodeAt(++e.position)):l===33?(r=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",n=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(n,e.position),l=e.input.charCodeAt(++e.position)):Pe(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!_t(l);)l===33&&(r?Pe(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),Ud.test(i)||Pe(e,"named tag handle cannot contain such characters"),r=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(n,e.position),vE.test(a)&&Pe(e,"tag suffix cannot contain flow indicator characters")}a&&!Kd.test(a)&&Pe(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Pe(e,"tag name is malformed: "+a)}return o?e.tag=a:ln.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:Pe(e,'undeclared tag handle "'+i+'"'),!0}function LE(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&Pe(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!_t(o)&&!eo(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function FE(e){var n,o,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),n=e.position;r!==0&&!_t(r)&&!eo(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),ln.call(e.anchorMap,o)||Pe(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],et(e,!0,-1),!0}function oo(e,n,o,r,i){var a,l,s,c=1,u=!1,f=!1,d,p,m,y,b,g;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=Ur===o||Ld===o,r&&et(e,!0,-1)&&(u=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;ME(e)||LE(e);)et(e,!0,-1)?(u=!0,s=a,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)):s=!1;if(s&&(s=u||i),(c===1||Ur===o)&&(Fr===o||Md===o?b=n:b=n+1,g=e.position-e.lineStart,c===1?s&&(Xd(e,g)||DE(e,g,b))||VE(e,b)?f=!0:(l&&RE(e,b)||$E(e,b)||BE(e,b)?f=!0:FE(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&Pe(e,"alias node should not have any properties")):OE(e,b,Fr===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&Xd(e,g))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&Pe(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),d=0,p=e.implicitTypes.length;d<p;d+=1)if(y=e.implicitTypes[d],y.resolve(e.result)){e.result=y.construct(e.result),e.tag=y.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(ln.call(e.typeMap[e.kind||"fallback"],e.tag))y=e.typeMap[e.kind||"fallback"][e.tag];else for(y=null,m=e.typeMap.multi[e.kind||"fallback"],d=0,p=m.length;d<p;d+=1)if(e.tag.slice(0,m[d].tag.length)===m[d].tag){y=m[d];break}y||Pe(e,"unknown tag !<"+e.tag+">"),e.result!==null&&y.kind!==e.kind&&Pe(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+y.kind+'", not "'+e.kind+'"'),y.resolve(e.result,e.tag)?(e.result=y.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Pe(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function UE(e){var n=e.position,o,r,i,a=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(et(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(a=!0,l=e.input.charCodeAt(++e.position),o=e.position;l!==0&&!_t(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&Pe(e,"directive name must not be less than one character in length");l!==0;){for(;In(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!Lt(l));break}if(Lt(l))break;for(o=e.position;l!==0&&!_t(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&za(e),ln.call(Yd,r)?Yd[r](e,r,i):Kr(e,'unknown document directive "'+r+'"')}if(et(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,et(e,!0,-1)):a&&Pe(e,"directives end mark is expected"),oo(e,e.lineIndent-1,Ur,!1,!0),et(e,!0,-1),e.checkLineBreaks&&SE.test(e.input.slice(n,e.position))&&Kr(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&jr(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,et(e,!0,-1));return}if(e.position<e.length-1)Pe(e,"end of the stream or a document separator is expected");else return}function Zd(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
|
|
29
|
+
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new PE(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Pe(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;)UE(o);return o.documents}function KE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=Zd(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function jE(e,n){var o=Zd(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new mt("expected a single document in the stream, but found more")}}var GE=KE,qE=jE,Jd={loadAll:GE,load:qE},Qd=Object.prototype.toString,eu=Object.prototype.hasOwnProperty,Ya=65279,zE=9,qo=10,HE=13,YE=32,WE=33,XE=34,Wa=35,ZE=37,JE=38,QE=39,eN=42,tu=44,tN=45,Gr=58,nN=61,oN=62,rN=63,iN=64,nu=91,ou=93,aN=96,ru=123,lN=124,iu=125,ft={};ft[0]="\\0",ft[7]="\\a",ft[8]="\\b",ft[9]="\\t",ft[10]="\\n",ft[11]="\\v",ft[12]="\\f",ft[13]="\\r",ft[27]="\\e",ft[34]='\\"',ft[92]="\\\\",ft[133]="\\N",ft[160]="\\_",ft[8232]="\\L",ft[8233]="\\P";var sN=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],cN=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function dN(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&&eu.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function uN(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 mt("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+at.repeat("0",r-n.length)+n}var fN=1,zo=2;function pN(e){this.schema=e.schema||Ga,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=at.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=dN(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==='"'?zo:fN,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 au(e,n){for(var o=at.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
|
-
`&&(a+=o),a+=l;return a}function
|
|
32
|
-
`+
|
|
31
|
+
`&&(a+=o),a+=l;return a}function Xa(e,n){return`
|
|
32
|
+
`+at.repeat(" ",e.indent*n)}function mN(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 qr(e){return e===YE||e===zE}function Ho(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==Ya||65536<=e&&e<=1114111}function lu(e){return Ho(e)&&e!==Ya&&e!==HE&&e!==qo}function su(e,n,o){var r=lu(e),i=r&&!qr(e);return(o?r:r&&e!==tu&&e!==nu&&e!==ou&&e!==ru&&e!==iu)&&e!==Wa&&!(n===Gr&&!i)||lu(n)&&!qr(n)&&e===Wa||n===Gr&&i}function gN(e){return Ho(e)&&e!==Ya&&!qr(e)&&e!==tN&&e!==rN&&e!==Gr&&e!==tu&&e!==nu&&e!==ou&&e!==ru&&e!==iu&&e!==Wa&&e!==JE&&e!==eN&&e!==WE&&e!==lN&&e!==nN&&e!==oN&&e!==QE&&e!==XE&&e!==ZE&&e!==iN&&e!==aN}function hN(e){return!qr(e)&&e!==Gr}function Yo(e,n){var o=e.charCodeAt(n),r;return o>=55296&&o<=56319&&n+1<e.length&&(r=e.charCodeAt(n+1),r>=56320&&r<=57343)?(o-55296)*1024+r-56320+65536:o}function cu(e){var n=/^\n* /;return n.test(e)}var du=1,Za=2,uu=3,fu=4,ro=5;function yN(e,n,o,r,i,a,l,s){var c,u=0,f=null,d=!1,p=!1,m=r!==-1,y=-1,b=gN(Yo(e,0))&&hN(Yo(e,e.length-1));if(n||l)for(c=0;c<e.length;u>=65536?c+=2:c++){if(u=Yo(e,c),!Ho(u))return ro;b=b&&su(u,f,s),f=u}else{for(c=0;c<e.length;u>=65536?c+=2:c++){if(u=Yo(e,c),u===qo)d=!0,m&&(p=p||c-y-1>r&&e[y+1]!==" ",y=c);else if(!Ho(u))return ro;b=b&&su(u,f,s),f=u}p=p||m&&c-y-1>r&&e[y+1]!==" "}return!d&&!p?b&&!l&&!i(e)?du:a===zo?ro:Za:o>9&&cu(e)?ro:l?a===zo?ro:Za:p?fu:uu}function _N(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===zo?'""':"''";if(!e.noCompatMode&&(sN.indexOf(n)!==-1||cN.test(n)))return e.quotingType===zo?'"'+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(u){return mN(e,u)}switch(yN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case du:return n;case Za:return"'"+n.replace(/'/g,"''")+"'";case uu:return"|"+pu(n,e.indent)+mu(au(n,a));case fu:return">"+pu(n,e.indent)+mu(au(bN(n,l),a));case ro:return'"'+wN(n)+'"';default:throw new mt("impossible error: invalid scalar style")}}()}function pu(e,n){var o=cu(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+`
|
|
36
|
-
`}function
|
|
37
|
-
`?e.slice(0,-1):e}function
|
|
38
|
-
`);return u=u!==-1?u:e.length,o.lastIndex=u,
|
|
36
|
+
`}function mu(e){return e[e.length-1]===`
|
|
37
|
+
`?e.slice(0,-1):e}function bN(e,n){for(var o=/(\n+)([^\n]*)/g,r=function(){var u=e.indexOf(`
|
|
38
|
+
`);return u=u!==-1?u:e.length,o.lastIndex=u,gu(e.slice(0,u),n)}(),i=e[0]===`
|
|
39
39
|
`||e[0]===" ",a,l;l=o.exec(e);){var s=l[1],c=l[2];a=c[0]===" ",r+=s+(!i&&!a&&c!==""?`
|
|
40
|
-
`:"")+
|
|
40
|
+
`:"")+gu(c,n),i=a}return r}function gu(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
|
|
44
|
-
`:""}var
|
|
43
|
+
`+e.slice(l+1):c+=e.slice(i),c.slice(1)}function wN(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=Yo(e,i),r=ft[o],!r&&Ho(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||uN(o);return n}function kN(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)),(Qt(e,n,s,!1,!1)||typeof s>"u"&&Qt(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function hu(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)),(Qt(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&Qt(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=Xa(e,n)),e.dump&&qo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function CN(e,n,o){var r="",i=e.tag,a=Object.keys(o),l,s,c,u,f;for(l=0,s=a.length;l<s;l+=1)f="",r!==""&&(f+=", "),e.condenseFlow&&(f+='"'),c=a[l],u=o[c],e.replacer&&(u=e.replacer.call(o,c,u)),Qt(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Qt(e,n,u,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function EN(e,n,o,r){var i="",a=e.tag,l=Object.keys(o),s,c,u,f,d,p;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new mt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=Xa(e,n)),u=l[s],f=o[u],e.replacer&&(f=e.replacer.call(o,u,f)),Qt(e,n+1,u,!0,!0,!0)&&(d=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,d&&(e.dump&&qo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,d&&(p+=Xa(e,n)),Qt(e,n+1,f,!0,d)&&(e.dump&&qo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function yu(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,Qd.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(eu.call(s.represent,c))r=s.represent[c](n,c);else throw new mt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function Qt(e,n,o,r,i,a,l){e.tag=null,e.dump=o,yu(e,o,!1)||yu(e,o,!0);var s=Qd.call(e.dump),c=r,u;r&&(r=e.flowLevel<0||e.flowLevel>n);var f=s==="[object Object]"||s==="[object Array]",d,p;if(f&&(d=e.duplicates.indexOf(o),p=d!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&n>0)&&(i=!1),p&&e.usedDuplicates[d])e.dump="*ref_"+d;else{if(f&&p&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),s==="[object Object]")r&&Object.keys(e.dump).length!==0?(EN(e,n,e.dump,i),p&&(e.dump="&ref_"+d+e.dump)):(CN(e,n,e.dump),p&&(e.dump="&ref_"+d+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?hu(e,n-1,e.dump,i):hu(e,n,e.dump,i),p&&(e.dump="&ref_"+d+e.dump)):(kN(e,n,e.dump),p&&(e.dump="&ref_"+d+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&_N(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new mt("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(u=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?u="!"+u:u.slice(0,18)==="tag:yaml.org,2002:"?u="!!"+u.slice(18):u="!<"+u+">",e.dump=u+" "+e.dump)}return!0}function NN(e,n){var o=[],r=[],i,a;for(Ja(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function Ja(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)Ja(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)Ja(e[r[i]],n,o)}function SN(e,n){n=n||{};var o=new pN(n);o.noRefs||NN(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),Qt(o,0,r,!0,!0)?o.dump+`
|
|
44
|
+
`:""}var vN=SN,xN={dump:vN};function Qa(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 AN=dt,IN=bd,TN=Ed,zr=Ad,PN=Id,ON=Ga,$N=Jd.load,BN=Jd.loadAll,VN=xN.dump,RN=mt,DN={binary:Bd,float:xd,map:Cd,null:Nd,pairs:Rd,set:Dd,timestamp:Od,bool:Sd,int:vd,merge:$d,omap:Vd,seq:kd,str:wd},MN=Qa("safeLoad","load"),LN=Qa("safeLoadAll","loadAll"),FN=Qa("safeDump","dump"),el={Type:AN,Schema:IN,FAILSAFE_SCHEMA:TN,JSON_SCHEMA:zr,CORE_SCHEMA:PN,DEFAULT_SCHEMA:ON,load:$N,loadAll:BN,dump:VN,YAMLException:RN,types:DN,safeLoad:MN,safeLoadAll:LN,safeDump:FN};const tl=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"})),
|
|
119
|
-
`)[0],_=[{startLineNumber:g+1,startColumn:h+1,endLineNumber:g+1,endColumn:h+2,message:w,severity:hr.MarkerSeverity.Error,source:Za}];hr.editor.setModelMarkers(d,Za,_),a("error",w)}})}),t.onBeforeUnmount(()=>{var f;(f=s.value)==null||f.dispose()}),n({setExampleCode:c}),(f,d)=>(t.openBlock(),t.createElementBlock("div",VN,[t.createVNode(t.unref(Oe.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(Se.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",RN,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(Xa,(p,m)=>t.createVNode(t.unref(Oe.KButton),{key:m,appearance:"secondary",size:"small",onClick:y=>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",DN,null,512)]))}}),[["__scopeId","data-v-5f51e876"]]),pu=44,FN=220,mu=366,UN=1e3,KN=pu+parseFloat(ad),gu=["request","service_request","service_response","response","vault"],to=gu,hu=["call","jq","exit","property","static","branch","cache"],yu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Go="application/x-datakit+json",Kr={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"]},jr=1,jN=0,GN=1,qN=2,zN=3,Gr=parseInt(Jk,10),_t={call:{icon:Se.NetworkIcon,colors:{foreground:Xk,background:Mk}},jq:{icon:Se.CodeblockIcon,colors:{foreground:qk,background:Bk}},exit:{icon:Se.GatewayIcon,colors:{foreground:$a,background:Kk}},property:{icon:Se.StackIcon,colors:{foreground:Yk,background:Wk}},static:{icon:Se.VitalsIcon,colors:{foreground:zk,background:Hk}},branch:{icon:Se.ArrowSplitIcon,colors:{foreground:jk,background:$k}},cache:{icon:Se.StackIcon,colors:{foreground:Gk,background:"#fff0f7"}},vault:{icon:Se.KeyIcon},request:{icon:Se.CloudIcon},service_request:{icon:Se.CloudIcon},service_response:{icon:Se.CloudIcon},response:{icon:Se.CloudIcon}},{t:Ja}=Ze.createI18n("en-us",rt);function St(e){return Ja(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function xn(e){return Ja(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function HN(e){return Ja(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const Qa={call:{type:"call",summary:xn("call"),description:St("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},..._t.call},jq:{type:"jq",summary:xn("jq"),description:St("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},..._t.jq},exit:{type:"exit",summary:xn("exit"),description:St("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},..._t.exit},property:{type:"property",summary:xn("property"),description:St("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},..._t.property},static:{type:"static",summary:xn("static"),description:St("static"),io:{output:{fields:[],configurable:!0}},..._t.static},branch:{type:"branch",summary:xn("branch"),description:St("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},..._t.branch},cache:{type:"cache",summary:xn("cache"),description:St("cache"),..._t.cache}},qr={request:{type:"request",description:St("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},..._t.request},service_request:{type:"service_request",description:St("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},..._t.service_request},service_response:{type:"service_response",description:St("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},..._t.service_response},response:{type:"response",description:St("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},..._t.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},..._t.vault,hidden:!0}},el=Object.keys(qr),tl=e=>el.includes(e),YN=e=>[...el,...hu].includes(e),vt=e=>el.includes(e),_u=e=>vt(e.type),bu=e=>!!(e!=null&&e.startsWith("node:"));function an(e){return Gn(e)}function nl(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 no(e){return`${e}:${Pr()}`}function zr(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function wu(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function oo(e){return vt(e)?qr[e]:Qa[e]}function ku(e){var i,a,l,s;const n=oo(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 qo(e){var o,r,i;return((i=(r=(o=oo(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function Cu(e){return(e??[]).map(n=>({id:no("field"),name:n}))}function ln(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function sn(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function ol(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Eu(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function WN(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=qr[e];return{name:e,phase:n,position:{x:0,y:0},fields:ku(o.type),expanded:{},hidden:o.hidden}}function Nu(e,n){const r=(typeof e=="string"&&YN(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function rl(e,n){return`${e}:${n}`}function Hr(e,n){return`${e}:${n}`}function Su(e,n,o,r,i){return{id:rl(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 XN(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function ZN(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function vu(e,n){return[...XN(e),...ZN(n)]}function Yr(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 il(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 al(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&bu(i)):[]}function JN({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const _=new Map;for(const k of e.value.groups)for(const E of k.memberIds)_.set(E,{ownerId:k.ownerId,branch:k.branch});return _}),a=t.computed(()=>vu(e.value.edges,e.value.groups)),l=t.computed(()=>Yr(a.value));function s(_,k){return _?qo(_.type).includes(k):!1}function c(_,k){if(k===_.id)return!1;const E=o(k);return!(!E||vt(E.type)||E.phase!==_.phase)}function u(_,k){const E=[],C=new Set;for(const N of k)C.has(N)||(C.add(N),c(_,N)&&E.push(N));return E}function f(_,k,E){const C=o(_);return s(C,k)?u(C,E):[]}function d(_,k,E){const C=rl(_.id,k),N=n.value.get(C);E.length>0?N?(N.phase!==_.phase&&(N.phase=_.phase),nl(N.memberIds,E)||(N.memberIds=[...E])):e.value.groups.push(Su(_.id,k,_.phase,E)):N&&(e.value.groups=e.value.groups.filter(I=>I.id!==C))}function p(_,k,E,C={}){const N=o(_);if(!s(N,k))return!1;const I=u(N,E),D=al(N,k);if(nl(D,I))return!1;const G=N.config??(N.config={});return I.length>0?G[k]=[...I]:(delete G[k],Object.keys(G).length===0&&delete N.config),d(N,k,I),(C.commit??!0)&&r.commit(C.tag??`branch:set:${k}`),!0}function m(_){e.value.groups=e.value.groups.filter(k=>k.ownerId!==_)}function y(_,k){const E=n.value.get(rl(_,k));if(E)return[...E.memberIds];const C=o(_);return C?al(C,k):[]}function b(_){return i.value.get(_)}function g(_,k){if(_===k)return!0;const E=new Set,C=[k];for(;C.length>0;){const N=C.pop();if(E.has(N))continue;if(E.add(N),N===_)return!0;const I=l.value.get(N);if(I)for(const D of I)E.has(D)||C.push(D)}return!1}function h(_,k,E,C={}){const N=o(_);if(!N||!s(N,k)||!c(N,E)||g(_,E))return!1;const I=al(N,k);if(I.includes(E))return!1;w(E);const D=[...I,E];return p(_,k,D,{commit:!1})?((C.commit??!0)&&r.commit(C.tag??`branch:add:${k}`),!0):!1}function w(_){const k=b(_);if(!k)return;const C=y(k.ownerId,k.branch).filter(N=>N!==_);p(k.ownerId,k.branch,C,{commit:!1})}return{setMembers:p,prepareMembers:f,addMember:h,dropTarget:w,clear:m,getMembers:y,findMembership:b,wouldCreateCycle:g}}function QN(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:u,redoStack:f}=Xe.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let d;function p(_){var k;(k=n==null?void 0:n.onHistoryChange)==null||k.call(n,_,e.value)}function m(_){if(!_){d=void 0,o(),p("commit");return}if(_!=="*"&&d!==_){d=_,o(),p("commit");return}o(),u.value.shift(),p("commit")}function y(){r(),d=void 0,p("undo")}function b(){i(),d=void 0,p("redo")}function g(){s(),d=void 0,p("clear")}function h(){c(),d=void 0,p("reset")}function w(){r(),f.value.shift(),d=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:y,redo:b,clear:g,reset:h,revert:w}}function e1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function t1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function n1(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 xu(e,n){var b,g,h,w,_;const o=((b=e.config)==null?void 0:b.nodes)??[],r=((g=e.__ui_data)==null?void 0:g.nodes)??[],i=((h=e.__ui_data)==null?void 0:h.groups)??[],a=new Map(r.map(k=>[k.name,k])),l=new Map(i.map(k=>[k.name,k])),s=[],c=[],u=new Map,f=[],d=[],p=new Map,m=k=>{const E=new Set,C=[...k];for(;C.length>0;){const N=C.shift();if(!E.has(N)&&(E.add(N),tl(N)||(u.get(N).phase="request"),!!p.has(N)))for(const I of p.get(N))E.has(I)||C.push(I)}};let y=!1;for(const k of o){const E=a.get(k.name);!E&&!y&&(y=!0);const C=Iu({type:k.type,configNode:k,uiNode:E,pluginData:e});s.push(C),u.set(C.name,C)}for(const k of s){const E=qo(k.type);if(!E.length)continue;const C=k.config;if(C)for(const N of E){const I=C[N];if(!Array.isArray(I)){l.has(Hr(k.name,N))&&(y=!0);continue}const D=[];for(const G of I){if(typeof G!="string")continue;const K=u.get(G);K&&!vt(K.type)&&D.push(K.id)}if(D.length){C[N]=D;const G=Hr(k.name,N),K=l.get(G),S=K?{position:an(K.position)}:void 0,ne=Su(k.id,N,k.phase,D,S);f.push(ne),!K&&!y&&(y=!0)}else delete C[N],l.has(Hr(k.name,N))&&(y=!0)}}for(const k of to)if(!u.has(k)){let E=a.get(k);E||(y||(y=!0),E=WN(k));const C=Iu({type:k,uiNode:E,pluginData:e});s.push(C),u.set(C.name,C)}for(const k of o)i1(k,d);for(const k of d){const E=u.get(k.source),C=u.get(k.target);if(!E||!C){E||console.warn(`[initEditorState] skip: source "${k.source}" not found`),C||console.warn(`[initEditorState] skip: target "${k.target}" not found`);continue}p.has(k.source)||p.set(k.source,new Set),p.get(k.source).add(k.target),p.has(k.target)||p.set(k.target,new Set),p.get(k.target).add(k.source),c.push({id:no("edge"),source:E.id,sourceField:(w=ln(E,"output",k.sourceField))==null?void 0:w.id,target:C.id,targetField:(_=ln(C,"input",k.targetField))==null?void 0:_.id})}return m(["request","service_request"]),{nodes:s,edges:c,groups:f,pendingLayout:y?n?"keepHistory":"clearHistory":!1,pendingFitView:!0}}function Au(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=ku(n),c=oo(n);return{id:no("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Cu((a==null?void 0:a.input)??s.input),output:Cu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?an(l):{}}}function o1(e){return vt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Iu({type:e,configNode:n,uiNode:o,pluginData:r}){return Au({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??o1(e),position:o==null?void 0:o.position,fields:a1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:l1({type:e,configNode:n,pluginData:r})})}function r1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return an(s)}function i1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=zr(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}=zr(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=zr(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}=zr(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function a1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,u,f;const i=oo(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))),(u=a.output)!=null&&u.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const d=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>d.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>d.add(p)),d.size&&(l.output=Array.from(d))}e==="vault"&&(l.output=t1(r))}return Object.keys(l).length?l:void 0}function l1({type:e,configNode:n,pluginData:o}){return e==="vault"?e1(o):n?r1(n):void 0}function s1(e){const n=t.computed(()=>{const d=new Map;return e.value.nodes.forEach(p=>d.set(p.id,p)),d}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>vu(o.value,r.value));function a(d){return Yr(i.value,d?{source:d.source,target:d.target}:void 0)}function l(d){const p=n.value.get(d.source),m=n.value.get(d.target);if(!p||!m)return d;const y=Eu(p,d.sourceField)&&!ol(p,d.sourceField),b=ol(m,d.targetField);return y&&b?{source:d.target,sourceField:d.targetField,target:d.source,targetField:d.sourceField}:d}function s(d){const p=l(d),m=[],y=n.value.get(p.source),b=n.value.get(p.target);if(y||m.push("source node not found"),b||m.push("target node not found"),!y||!b)return{ok:!1,errors:m};ol(y,p.sourceField)||m.push("source handle is not an output field"),Eu(b,p.targetField)||m.push("target handle is not an input field"),b.name==="request"&&m.push('cannot target "request"'),y.name==="response"&&m.push('cannot source from "response"');const g=o.value.some(_=>_.target===p.target&&!_.targetField),h=o.value.some(_=>_.target===p.target&&!!_.targetField);(g&&p.targetField||h&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(_=>_.target===p.target&&_.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(_=>_.target===p.target&&!_.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 il(w)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const d=[];for(const p of to)[...n.value.values()].some(m=>m.name===p)||d.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"&&d.push(`edge "${p.id}" targets "request"`),m.name==="response"&&d.push(`edge "${p.id}" sources from "response"`)}return il(a())&&d.push("graph contains cycle"),d.length?{ok:!1,errors:d}:{ok:!0}}function u(d){return s(d).ok}function f(d){return!d.source||!d.target?!1:u({source:d.source,sourceField:d.sourceHandle,target:d.target,targetField:d.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:u,isValidVueFlowConnection:f,buildAdjacency:Yr}}const[Pu,c1]=Xe.createInjectionState(function(n,o={}){const r=t.ref(xu(n)),i=t.ref(),a=t.ref(!1),l=t.ref(!1),s=QN(r,{capacity:200,clone:an,onHistoryChange:L=>{var $;L!=="clear"&&(($=o.onChange)==null||$.call(o,B(),j(),R()))}}),c=t.ref(!1),u=t.ref(new Set);function f(){r.value.pendingLayout=!1,s.commit("*")}function d(L=!0){r.value.pendingFitView!==L&&(r.value.pendingFitView=L,s.commit("*"))}const p=t.computed(()=>new Map(r.value.nodes.map(L=>[L.id,L]))),m=t.computed(()=>new Map(r.value.nodes.map(L=>[L.name,L]))),y=t.computed(()=>{const L=new Map,$=new Map;for(const z of r.value.edges)L.set(z.id,z),$.has(z.source)||$.set(z.source,new Set),$.get(z.source).add(z.id),$.has(z.target)||$.set(z.target,new Set),$.get(z.target).add(z.id);return{edgeMapById:L,edgeIdMapByNodeId:$}}),b=t.computed(()=>y.value.edgeMapById),g=t.computed(()=>y.value.edgeIdMapByNodeId),h=t.computed(()=>new Map(r.value.groups.map(L=>[L.id,L]))),w=t.computed(()=>new Set(r.value.nodes.map(L=>L.name))),_=JN({state:r,groupMapById:h,getNodeById:D,history:s}),{canonicalizeConnection:k,validateConnection:E,validateGraph:C,isValidConnection:N,isValidVueFlowConnection:I}=s1(r);function D(L){return p.value.get(L)}function G(L){return m.value.get(L)}function K(L){return b.value.get(L)}function S(L){if(!g.value.has(L))return[];const $=[];return g.value.get(L).forEach(z=>{const M=K(z);M&&$.push(M)}),$}function ne(L){return S(L).filter($=>$.target===L)}function x(L){return S(L).filter($=>$.source===L)}const q=t.computed(()=>i.value?D(i.value):void 0);function U(L){i.value=L}function te(L){if(vt(L.type))throw new Error("[createNode] implicit nodes are fixed.");return Au({type:L.type,name:L.name||(vt(L.type)?void 0:Nu(L.type,w.value)),phase:L.phase,position:L.position,fields:L.fields,config:L.config})}function V(L,$=!0){const z=te(L);if(z)return r.value.nodes.push(z),$&&s.commit(),c.value=!0,z.id}function T(L,$,z=!0){const M=D(L);if(!M||vt(M.type))return;const le={...an(M),id:no("node"),name:Nu(M.name,w.value),position:$??{x:M.position.x+20,y:M.position.y+20}},pe=qo(le.type);if(pe.length&&le.config){for(const ye of pe)delete le.config[ye];Object.keys(le.config).length===0&&delete le.config}return r.value.nodes.push(le),z&&s.commit(),c.value=!0,le.id}function v(L,$=!0){if(!D(L))return;r.value.edges=r.value.edges.filter(le=>le.source!==L&&le.target!==L),_.clear(L),r.value.nodes=r.value.nodes.filter(le=>le.id!==L),i.value===L&&(i.value=void 0),_.dropTarget(L);const M=C();M.ok||console.warn("[removeNode] topology invalid:",M.errors.join("; ")),$&&s.commit()}function P(L,$,z=!0,M){const le=D(L);if(!le)return;if(tl(le.name)){console.warn("[renameNode] implicit node name is reserved.");return}le.name!==$&&(le.name=$,z&&s.commit(M))}function A(L,$,z=!0){const M=D(L);M&&(M.position={...$},z&&s.commit())}function Y(L,$,z=!0){const M=h.value.get(L);if(!M)return;const le=M.position;le&&le.x===$.x&&le.y===$.y||(M.position={...$},z&&s.commit())}function W(L,$,z=!0){const M=h.value.get(L);if(!M)return!1;const le={...$.position},pe={...$.dimensions},ye=M.position&&M.position.x===le.x&&M.position.y===le.y,me=M.dimensions&&M.dimensions.width===pe.width&&M.dimensions.height===pe.height;return ye&&me?!1:(M.position=le,M.dimensions=pe,z&&s.commit(),!0)}function ie(L,$,z,M=!0,le){const pe=D(L);if(!pe)return;const ye=z??!pe.expanded[$];ye!==!!pe.expanded[$]&&(pe.expanded[$]=ye,M&&s.commit(le??`toggle:${L}:${$}`))}function oe(L,$,z=!0,M){const le=D(L);le&&(le.config=an($),z&&s.commit(M))}function de(L,$,z,M=!0){const le=D(L);if(!le)return;const pe=le.fields[$];if(pe.some(ye=>ye.name===z)){console.warn(`[addField] field "${z}" already exists on ${$}.`);return}pe.push({id:no("field"),name:z}),$==="input"?le.fields.input=pe:le.fields.output=pe,M&&s.commit()}function he(L,$,z,M=!0){const le=D(L);if(!le)return;const pe=le.fields.input,ye=le.fields.output,me=pe.find(_e=>_e.id===$)??ye.find(_e=>_e.id===$);me&&(me.name=z,M&&s.commit())}function X(L,$,z=!0,M=!0){const le=D(L);if(!le)return;const pe=le.fields.input,ye=le.fields.output,me=pe.findIndex(re=>re.id===$);me>=0&&pe.splice(me,1);const _e=ye.findIndex(re=>re.id===$);_e>=0&&ye.splice(_e,1),le.fields.input=pe,le.fields.output=ye,z&&(r.value.edges=r.value.edges.filter(re=>re.sourceField!==$&&re.targetField!==$));const Be=C();Be.ok||console.warn("[removeField] topology invalid:",Be.errors.join("; ")),M&&s.commit()}function ce(L,$=!0){const z=k(L),M=E(z);if(!M.ok){console.warn("[connectEdge] invalid connection:",M.errors.join("; "));return}const le={id:no("edge"),...z};r.value.edges.push(le);const pe=C();if(!pe.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",pe.errors.join("; "));return}return $&&s.commit(),le.id}function se(L,$,z=!0){ue(L,!1),ce($,!1),z&&s.commit()}function ue(L,$=!0){const z=r.value.edges.findIndex(pe=>pe.id===L);if(z<0)return;const M=r.value.edges[z];r.value.edges.splice(z,1);const le=C();if(!le.ok){r.value.edges.splice(z,0,M),console.warn("[disconnectEdge] topology invalid:",le.errors.join("; "));return}$&&s.commit()}function fe(L,$=!0){const z=ne(L);for(const M of z)ue(M.id,!1);$&&s.commit()}function O(L,$=!0){const z=x(L);for(const M of z)ue(M.id,!1);$&&s.commit()}function B(){var $,z,M,le,pe;const L=[];for(const ye of r.value.nodes){if(vt(ye.type))continue;let me;const _e={};let Be;const re={};for(const Ne of r.value.edges.filter(Ae=>Ae.target===ye.id)){const Ae=D(Ne.source);if(!Ae)continue;const Re=($=sn(Ae,"output",Ne.sourceField))==null?void 0:$.name,je=Re?`${Ae.name}.${Re}`:Ae.name,He=(z=sn(ye,"input",Ne.targetField))==null?void 0:z.name;He?_e[He]=je:me===void 0&&(me=je)}for(const Ne of r.value.edges.filter(Ae=>Ae.source===ye.id)){const Ae=D(Ne.target);if(!Ae)continue;const Re=Ae.type;if(!vt(Re)||!((M=qr[Re].io)!=null&&M.input))continue;const je=(le=sn(Ae,"input",Ne.targetField))==null?void 0:le.name,He=je?`${Ae.name}.${je}`:Ae.name,Ge=(pe=sn(ye,"output",Ne.sourceField))==null?void 0:pe.name;Ge?re[Ge]=He:Be===void 0&&(Be=He)}const ee={...an(ye.config),name:ye.name,type:ye.type},Z=qo(ye.type);if(Z.length)for(const Ne of Z){const Ae=ee[Ne];if(!Array.isArray(Ae))continue;const Re=[];for(const je of Ae){const He=D(je);He&&Re.push(He.name)}Re.length?ee[Ne]=Array.from(new Set(Re)):delete ee[Ne]}Object.keys(_e).length>0?ee.inputs=_e:me!==void 0&&(ee.input=me),Object.keys(re).length>0?ee.outputs=re:Be!==void 0&&(ee.output=Be),L.push(ee)}return L}function F(){return r.value.nodes.map(L=>an({name:L.name,phase:L.phase,position:{...L.position},expanded:{...L.expanded},fields:{input:L.fields.input.map($=>$.name),output:L.fields.output.map($=>$.name)}}))}function R(){const L=G("vault");if(!L)return;const $=n1(L.config);if(!(!$||Object.keys($).length===0))return{vault:$}}function J(){const L=[];for(const $ of r.value.groups){const z=D($.ownerId);if(!z)continue;const M=$.position;M&&L.push({name:Hr(z.name,$.branch),position:{...M}})}return L}function j(){return{nodes:F(),groups:J()}}function ae(L,$){$&&s.commit(),r.value=xu(L,$),$||s.clear()}return{state:r,selection:i,modalOpen:a,skipValidation:c,invalidConfigNodeIds:u,propertiesPanelOpen:l,nodeMapById:p,nodeMapByName:m,edgeMapById:b,edgeIdMapByNodeId:g,groupMapById:h,getNodeById:D,getNodeByName:G,getEdgeById:K,getEdgesByNodeId:S,getInEdgesByNodeId:ne,getOutEdgesByNodeId:x,selectedNode:q,selectNode:U,createNode:te,addNode:V,duplicateNode:T,removeNode:v,renameNode:P,moveNode:A,moveGroup:Y,setGroupLayout:W,toggleExpanded:ie,replaceConfig:oe,branchGroups:_,addField:de,renameField:he,removeField:X,connectEdge:ce,replaceConnection:se,disconnectEdge:ue,disconnectInEdges:fe,disconnectOutEdges:O,toConfigNodes:B,toUINodes:F,toUIGroups:J,toUIData:j,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:I,validateGraph:()=>C(),clearPendingLayout:f,setPendingFitView:d}});function st(){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 ll=Xe.createGlobalState(()=>{const e=Xe.useLocalStorage("datakit-editor-mode","flow"),n=Xe.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}});function Wr(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function Zt(e){return typeof e=="function"?e():t.unref(e)}const d1=typeof window<"u"&&typeof document<"u",u1=e=>typeof e<"u",f1=Object.prototype.toString,p1=e=>f1.call(e)==="[object Object]",m1=()=>{};function g1(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 Tu=e=>e();function h1(e=Tu){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 Ou(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function y1(e,n,o={}){const{eventFilter:r=Tu,...i}=o;return t.watch(e,g1(r,n),i)}function ro(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=h1(r);return{stop:y1(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=Zt(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 sl(e,n=!1){function o(d,{flush:p="sync",deep:m=!1,timeout:y,throwOnTimeout:b}={}){let g=null;const w=[new Promise(_=>{g=t.watch(e,k=>{d(k)!==n&&(g==null||g(),_(k))},{flush:p,deep:m,immediate:!0})})];return y!=null&&w.push(Ou(y,b).then(()=>Zt(e)).finally(()=>g==null?void 0:g())),Promise.race(w)}function r(d,p){if(!t.isRef(d))return o(k=>k===d,p);const{flush:m="sync",deep:y=!1,timeout:b,throwOnTimeout:g}=p??{};let h=null;const _=[new Promise(k=>{h=t.watch([e,d],([E,C])=>{n!==(E===C)&&(h==null||h(),k(E))},{flush:m,deep:y,immediate:!0})})];return b!=null&&_.push(Ou(b,g).then(()=>Zt(e)).finally(()=>(h==null||h(),Zt(e)))),Promise.race(_)}function i(d){return o(p=>!!p,d)}function a(d){return r(null,d)}function l(d){return r(void 0,d)}function s(d){return o(Number.isNaN,d)}function c(d,p){return o(m=>{const y=Array.from(m);return y.includes(d)||y.includes(Zt(d))},p)}function u(d){return f(1,d)}function f(d=1,p){let m=-1;return o(()=>(m+=1,m>=d),p)}return Array.isArray(Zt(e))?{toMatch:o,toContains:c,changed:u,changedTimes:f,get not(){return sl(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:u,changedTimes:f,get not(){return sl(e,!n)}}}function cl(e){return sl(e)}function b1(e){var n;const o=Zt(e);return(n=o==null?void 0:o.$el)!=null?n:o}const $u=d1?window:void 0;function Bu(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=$u):[n,o,r,i]=e,!n)return m1;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(f=>f()),a.length=0},s=(f,d,p,m)=>(f.addEventListener(d,p,m),()=>f.removeEventListener(d,p,m)),c=t.watch(()=>[b1(n),Zt(i)],([f,d])=>{if(l(),!f)return;const p=p1(d)?{...d}:d;a.push(...o.flatMap(m=>r.map(y=>s(f,m,y,p))))},{immediate:!0,flush:"post"}),u=()=>{c(),l()};return Wr(u),u}function w1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Vu(...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=$u,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=w1(n);return Bu(i,a,f=>{f.repeat&&Zt(s)||c(f)&&o(f)},l)}function k1(e){return JSON.parse(JSON.stringify(e))}function dl(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:u,deep:f=!1,defaultValue:d,shouldEmit:p}=r,m=t.getCurrentInstance(),y=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 b=u;n||(n="modelValue"),b=b||`update:${n.toString()}`;const g=_=>s?typeof s=="function"?s(_):k1(_):_,h=()=>u1(e[n])?g(e[n]):d,w=_=>{p?p(_)&&y(b,_):y(b,_)};if(c){const _=h(),k=t.ref(_);let E=!1;return t.watch(()=>e[n],C=>{E||(E=!0,k.value=g(C),t.nextTick(()=>E=!1))}),t.watch(k,C=>{!E&&(C!==e[n]||f)&&w(C)},{deep:f}),k}else return t.computed({get(){return h()},set(_){w(_)}})}var C1={value:()=>{}};function Xr(){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 Zr(o)}function Zr(e){this._=e}function E1(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}})}Zr.prototype=Xr.prototype={constructor:Zr,on:function(e,n){var o=this._,r=E1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=N1(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]=Ru(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Ru(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 Zr(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 N1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Ru(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=C1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var ul="http://www.w3.org/1999/xhtml";const Du={svg:"http://www.w3.org/2000/svg",xhtml:ul,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Jr(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Du.hasOwnProperty(n)?{space:Du[n],local:e}:e}function S1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===ul&&n.documentElement.namespaceURI===ul?n.createElement(e):n.createElementNS(o,e)}}function v1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Mu(e){var n=Jr(e);return(n.local?v1:S1)(n)}function x1(){}function fl(e){return e==null?x1:function(){return this.querySelector(e)}}function A1(e){typeof e!="function"&&(e=fl(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,u,f=0;f<l;++f)(c=a[f])&&(u=e.call(c,c.__data__,f,a))&&("__data__"in c&&(u.__data__=c.__data__),s[f]=u);return new kt(r,this._parents)}function I1(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function P1(){return[]}function Lu(e){return e==null?P1:function(){return this.querySelectorAll(e)}}function T1(e){return function(){return I1(e.apply(this,arguments))}}function O1(e){typeof e=="function"?e=T1(e):e=Lu(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,u=0;u<s;++u)(c=l[u])&&(r.push(e.call(c,c.__data__,u,l)),i.push(c));return new kt(r,i)}function Fu(e){return function(){return this.matches(e)}}function Uu(e){return function(n){return n.matches(e)}}var $1=Array.prototype.find;function B1(e){return function(){return $1.call(this.children,e)}}function V1(){return this.firstElementChild}function R1(e){return this.select(e==null?V1:B1(typeof e=="function"?e:Uu(e)))}var D1=Array.prototype.filter;function M1(){return Array.from(this.children)}function L1(e){return function(){return D1.call(this.children,e)}}function F1(e){return this.selectAll(e==null?M1:L1(typeof e=="function"?e:Uu(e)))}function U1(e){typeof e!="function"&&(e=Fu(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,u=0;u<l;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&s.push(c);return new kt(r,this._parents)}function Ku(e){return new Array(e.length)}function K1(){return new kt(this._enter||this._groups.map(Ku),this._parents)}function Qr(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}Qr.prototype={constructor:Qr,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 j1(e){return function(){return e}}function G1(e,n,o,r,i,a){for(var l=0,s,c=n.length,u=a.length;l<u;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new Qr(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function q1(e,n,o,r,i,a,l){var s,c,u=new Map,f=n.length,d=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)+"",u.has(m)?i[s]=c:u.set(m,c));for(s=0;s<d;++s)m=l.call(e,a[s],s,a)+"",(c=u.get(m))?(r[s]=c,c.__data__=a[s],u.delete(m)):o[s]=new Qr(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&u.get(p[s])===c&&(i[s]=c)}function z1(e){return e.__data__}function H1(e,n){if(!arguments.length)return Array.from(this,z1);var o=n?q1:G1,r=this._parents,i=this._groups;typeof e!="function"&&(e=j1(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),u=0;u<a;++u){var f=r[u],d=i[u],p=d.length,m=Y1(e.call(f,f&&f.__data__,u,r)),y=m.length,b=s[u]=new Array(y),g=l[u]=new Array(y),h=c[u]=new Array(p);o(f,d,b,g,h,m,n);for(var w=0,_=0,k,E;w<y;++w)if(k=b[w]){for(w>=_&&(_=w+1);!(E=g[_])&&++_<y;);k._next=E||null}}return l=new kt(l,r),l._enter=s,l._exit=c,l}function Y1(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function W1(){return new kt(this._exit||this._groups.map(Ku),this._parents)}function X1(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 Z1(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 u=o[c],f=r[c],d=u.length,p=s[c]=new Array(d),m,y=0;y<d;++y)(m=u[y]||f[y])&&(p[y]=m);for(;c<i;++c)s[c]=o[c];return new kt(s,this._parents)}function J1(){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 Q1(e){e||(e=eS);function n(d,p){return d&&p?e(d.__data__,p.__data__):!d-!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),u,f=0;f<s;++f)(u=l[f])&&(c[f]=u);c.sort(n)}return new kt(i,this._parents).order()}function eS(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function tS(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function nS(){return Array.from(this)}function oS(){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 rS(){let e=0;for(const n of this)++e;return e}function iS(){return!this.node()}function aS(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 lS(e){return function(){this.removeAttribute(e)}}function sS(e){return function(){this.removeAttributeNS(e.space,e.local)}}function cS(e,n){return function(){this.setAttribute(e,n)}}function dS(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function uS(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function fS(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 pS(e,n){var o=Jr(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?sS:lS:typeof n=="function"?o.local?fS:uS:o.local?dS:cS)(o,n))}function ju(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function mS(e){return function(){this.style.removeProperty(e)}}function gS(e,n,o){return function(){this.style.setProperty(e,n,o)}}function hS(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function yS(e,n,o){return arguments.length>1?this.each((n==null?mS:typeof n=="function"?hS:gS)(e,n,o??"")):io(this.node(),e)}function io(e,n){return e.style.getPropertyValue(n)||ju(e).getComputedStyle(e,null).getPropertyValue(n)}function _S(e){return function(){delete this[e]}}function bS(e,n){return function(){this[e]=n}}function wS(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function kS(e,n){return arguments.length>1?this.each((n==null?_S:typeof n=="function"?wS:bS)(e,n)):this.node()[e]}function Gu(e){return e.trim().split(/^|\s+/)}function pl(e){return e.classList||new qu(e)}function qu(e){this._node=e,this._names=Gu(e.getAttribute("class")||"")}qu.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 zu(e,n){for(var o=pl(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function Hu(e,n){for(var o=pl(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function CS(e){return function(){zu(this,e)}}function ES(e){return function(){Hu(this,e)}}function NS(e,n){return function(){(n.apply(this,arguments)?zu:Hu)(this,e)}}function SS(e,n){var o=Gu(e+"");if(arguments.length<2){for(var r=pl(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?NS:n?CS:ES)(o,n))}function vS(){this.textContent=""}function xS(e){return function(){this.textContent=e}}function AS(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function IS(e){return arguments.length?this.each(e==null?vS:(typeof e=="function"?AS:xS)(e)):this.node().textContent}function PS(){this.innerHTML=""}function TS(e){return function(){this.innerHTML=e}}function OS(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function $S(e){return arguments.length?this.each(e==null?PS:(typeof e=="function"?OS:TS)(e)):this.node().innerHTML}function BS(){this.nextSibling&&this.parentNode.appendChild(this)}function VS(){return this.each(BS)}function RS(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function DS(){return this.each(RS)}function MS(e){var n=typeof e=="function"?e:Mu(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function LS(){return null}function FS(e,n){var o=typeof e=="function"?e:Mu(e),r=n==null?LS:typeof n=="function"?n:fl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function US(){var e=this.parentNode;e&&e.removeChild(this)}function KS(){return this.each(US)}function jS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function GS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function qS(e){return this.select(e?GS:jS)}function zS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function HS(e){return function(n){e.call(this,n,this.__data__)}}function YS(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 WS(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 XS(e,n,o){return function(){var r=this.__on,i,a=HS(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 ZS(e,n,o){var r=YS(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,u=s.length,f;c<u;++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?XS:WS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function Yu(e,n,o){var r=ju(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 JS(e,n){return function(){return Yu(this,e,n)}}function QS(e,n){return function(){return Yu(this,e,n.apply(this,arguments))}}function ev(e,n){return this.each((typeof n=="function"?QS:JS)(e,n))}function*tv(){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 Wu=[null];function kt(e,n){this._groups=e,this._parents=n}function zo(){return new kt([[document.documentElement]],Wu)}function nv(){return this}kt.prototype=zo.prototype={constructor:kt,select:A1,selectAll:O1,selectChild:R1,selectChildren:F1,filter:U1,data:H1,enter:K1,exit:W1,join:X1,merge:Z1,selection:nv,order:J1,sort:Q1,call:tS,nodes:nS,node:oS,size:rS,empty:iS,each:aS,attr:pS,style:yS,property:kS,classed:SS,text:IS,html:$S,raise:VS,lower:DS,append:MS,insert:FS,remove:KS,clone:qS,datum:zS,on:ZS,dispatch:ev,[Symbol.iterator]:tv};function Tt(e){return typeof e=="string"?new kt([[document.querySelector(e)]],[document.documentElement]):new kt([[e]],Wu)}function ov(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Mt(e,n){if(e=ov(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 rv={passive:!1},Ho={capture:!0,passive:!1};function ml(e){e.stopImmediatePropagation()}function ao(e){e.preventDefault(),e.stopImmediatePropagation()}function Xu(e){var n=e.document.documentElement,o=Tt(e).on("dragstart.drag",ao,Ho);"onselectstart"in n?o.on("selectstart.drag",ao,Ho):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function Zu(e,n){var o=e.document.documentElement,r=Tt(e).on("dragstart.drag",null);n&&(r.on("click.drag",ao,Ho),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 ei=e=>()=>e;function gl(e,{sourceEvent:n,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:u,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:u,enumerable:!0,configurable:!0},_:{value:f}})}gl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function iv(e){return!e.ctrlKey&&!e.button}function av(){return this.parentNode}function lv(e,n){return n??{x:e.x,y:e.y}}function sv(){return navigator.maxTouchPoints||"ontouchstart"in this}function cv(){var e=iv,n=av,o=lv,r=sv,i={},a=Xr("start","drag","end"),l=0,s,c,u,f,d=0;function p(k){k.on("mousedown.drag",m).filter(r).on("touchstart.drag",g).on("touchmove.drag",h,rv).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(k,E){if(!(f||!e.call(this,k,E))){var C=_(this,n.call(this,k,E),k,E,"mouse");C&&(Tt(k.view).on("mousemove.drag",y,Ho).on("mouseup.drag",b,Ho),Xu(k.view),ml(k),u=!1,s=k.clientX,c=k.clientY,C("start",k))}}function y(k){if(ao(k),!u){var E=k.clientX-s,C=k.clientY-c;u=E*E+C*C>d}i.mouse("drag",k)}function b(k){Tt(k.view).on("mousemove.drag mouseup.drag",null),Zu(k.view,u),ao(k),i.mouse("end",k)}function g(k,E){if(e.call(this,k,E)){var C=k.changedTouches,N=n.call(this,k,E),I=C.length,D,G;for(D=0;D<I;++D)(G=_(this,N,k,E,C[D].identifier,C[D]))&&(ml(k),G("start",k,C[D]))}}function h(k){var E=k.changedTouches,C=E.length,N,I;for(N=0;N<C;++N)(I=i[E[N].identifier])&&(ao(k),I("drag",k,E[N]))}function w(k){var E=k.changedTouches,C=E.length,N,I;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),N=0;N<C;++N)(I=i[E[N].identifier])&&(ml(k),I("end",k,E[N]))}function _(k,E,C,N,I,D){var G=a.copy(),K=Mt(D||C,E),S,ne,x;if((x=o.call(k,new gl("beforestart",{sourceEvent:C,target:p,identifier:I,active:l,x:K[0],y:K[1],dx:0,dy:0,dispatch:G}),N))!=null)return S=x.x-K[0]||0,ne=x.y-K[1]||0,function q(U,te,V){var T=K,v;switch(U){case"start":i[I]=q,v=l++;break;case"end":delete i[I],--l;case"drag":K=Mt(V||te,E),v=l;break}G.call(U,k,new gl(U,{sourceEvent:te,subject:x,target:p,identifier:I,active:v,x:K[0]+S,y:K[1]+ne,dx:K[0]-T[0],dy:K[1]-T[1],dispatch:G}),N)}}return p.filter=function(k){return arguments.length?(e=typeof k=="function"?k:ei(!!k),p):e},p.container=function(k){return arguments.length?(n=typeof k=="function"?k:ei(k),p):n},p.subject=function(k){return arguments.length?(o=typeof k=="function"?k:ei(k),p):o},p.touchable=function(k){return arguments.length?(r=typeof k=="function"?k:ei(!!k),p):r},p.on=function(){var k=a.on.apply(a,arguments);return k===a?p:k},p.clickDistance=function(k){return arguments.length?(d=(k=+k)*k,p):Math.sqrt(d)},p}function hl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function Ju(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function Yo(){}var Wo=.7,ti=1/Wo,lo="\\s*([+-]?\\d+)\\s*",Xo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Lt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",dv=/^#([0-9a-f]{3,8})$/,uv=new RegExp(`^rgb\\(${lo},${lo},${lo}\\)$`),fv=new RegExp(`^rgb\\(${Lt},${Lt},${Lt}\\)$`),pv=new RegExp(`^rgba\\(${lo},${lo},${lo},${Xo}\\)$`),mv=new RegExp(`^rgba\\(${Lt},${Lt},${Lt},${Xo}\\)$`),gv=new RegExp(`^hsl\\(${Xo},${Lt},${Lt}\\)$`),hv=new RegExp(`^hsla\\(${Xo},${Lt},${Lt},${Xo}\\)$`),Qu={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};hl(Yo,An,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:ef,formatHex:ef,formatHex8:yv,formatHsl:_v,formatRgb:tf,toString:tf});function ef(){return this.rgb().formatHex()}function yv(){return this.rgb().formatHex8()}function _v(){return lf(this).formatHsl()}function tf(){return this.rgb().formatRgb()}function An(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=dv.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?nf(n):o===3?new bt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?ni(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?ni(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=uv.exec(e))?new bt(n[1],n[2],n[3],1):(n=fv.exec(e))?new bt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=pv.exec(e))?ni(n[1],n[2],n[3],n[4]):(n=mv.exec(e))?ni(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=gv.exec(e))?af(n[1],n[2]/100,n[3]/100,1):(n=hv.exec(e))?af(n[1],n[2]/100,n[3]/100,n[4]):Qu.hasOwnProperty(e)?nf(Qu[e]):e==="transparent"?new bt(NaN,NaN,NaN,0):null}function nf(e){return new bt(e>>16&255,e>>8&255,e&255,1)}function ni(e,n,o,r){return r<=0&&(e=n=o=NaN),new bt(e,n,o,r)}function bv(e){return e instanceof Yo||(e=An(e)),e?(e=e.rgb(),new bt(e.r,e.g,e.b,e.opacity)):new bt}function yl(e,n,o,r){return arguments.length===1?bv(e):new bt(e,n,o,r??1)}function bt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}hl(bt,yl,Ju(Yo,{brighter(e){return e=e==null?ti:Math.pow(ti,e),new bt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Wo:Math.pow(Wo,e),new bt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new bt(In(this.r),In(this.g),In(this.b),oi(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:of,formatHex:of,formatHex8:wv,formatRgb:rf,toString:rf}));function of(){return`#${Pn(this.r)}${Pn(this.g)}${Pn(this.b)}`}function wv(){return`#${Pn(this.r)}${Pn(this.g)}${Pn(this.b)}${Pn((isNaN(this.opacity)?1:this.opacity)*255)}`}function rf(){const e=oi(this.opacity);return`${e===1?"rgb(":"rgba("}${In(this.r)}, ${In(this.g)}, ${In(this.b)}${e===1?")":`, ${e})`}`}function oi(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function In(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Pn(e){return e=In(e),(e<16?"0":"")+e.toString(16)}function af(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Ot(e,n,o,r)}function lf(e){if(e instanceof Ot)return new Ot(e.h,e.s,e.l,e.opacity);if(e instanceof Yo||(e=An(e)),!e)return new Ot;if(e instanceof Ot)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 Ot(l,s,c,e.opacity)}function kv(e,n,o,r){return arguments.length===1?lf(e):new Ot(e,n,o,r??1)}function Ot(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}hl(Ot,kv,Ju(Yo,{brighter(e){return e=e==null?ti:Math.pow(ti,e),new Ot(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Wo:Math.pow(Wo,e),new Ot(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 bt(_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 Ot(sf(this.h),ri(this.s),ri(this.l),oi(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=oi(this.opacity);return`${e===1?"hsl(":"hsla("}${sf(this.h)}, ${ri(this.s)*100}%, ${ri(this.l)*100}%${e===1?")":`, ${e})`}`}}));function sf(e){return e=(e||0)%360,e<0?e+360:e}function ri(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 Cv(e,n){return function(o){return e+o*n}}function Ev(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 Nv(e){return(e=+e)==1?cf:function(n,o){return o-n?Ev(n,o,e):bl(isNaN(n)?o:n)}}function cf(e,n){var o=n-e;return o?Cv(e,o):bl(isNaN(e)?n:e)}const ii=function e(n){var o=Nv(n);function r(i,a){var l=o((i=yl(i)).r,(a=yl(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),u=cf(i.opacity,a.opacity);return function(f){return i.r=l(f),i.g=s(f),i.b=c(f),i.opacity=u(f),i+""}}return r.gamma=e,r}(1);function Sv(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 vv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function xv(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]=Zo(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 Av(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Ft(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function Iv(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]=Zo(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var wl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,kl=new RegExp(wl.source,"g");function Pv(e){return function(){return e}}function Tv(e){return function(n){return e(n)+""}}function df(e,n){var o=wl.lastIndex=kl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=wl.exec(e))&&(i=kl.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:Ft(r,i)})),o=kl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?Tv(c[0].x):Pv(n):(n=c.length,function(u){for(var f=0,d;f<n;++f)s[(d=c[f]).i]=d.x(u);return s.join("")})}function Zo(e,n){var o=typeof n,r;return n==null||o==="boolean"?bl(n):(o==="number"?Ft:o==="string"?(r=An(n))?(n=r,ii):df:n instanceof An?ii:n instanceof Date?Av:vv(n)?Sv:Array.isArray(n)?xv:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?Iv:Ft)(e,n)}var uf=180/Math.PI,Cl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ff(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)*uf,skewX:Math.atan(c)*uf,scaleX:l,scaleY:s}}var ai;function Ov(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Cl:ff(n.a,n.b,n.c,n.d,n.e,n.f)}function $v(e){return e==null||(ai||(ai=document.createElementNS("http://www.w3.org/2000/svg","g")),ai.setAttribute("transform",e),!(e=ai.transform.baseVal.consolidate()))?Cl:(e=e.matrix,ff(e.a,e.b,e.c,e.d,e.e,e.f))}function pf(e,n,o,r){function i(u){return u.length?u.pop()+" ":""}function a(u,f,d,p,m,y){if(u!==d||f!==p){var b=m.push("translate(",null,n,null,o);y.push({i:b-4,x:Ft(u,d)},{i:b-2,x:Ft(f,p)})}else(d||p)&&m.push("translate("+d+n+p+o)}function l(u,f,d,p){u!==f?(u-f>180?f+=360:f-u>180&&(u+=360),p.push({i:d.push(i(d)+"rotate(",null,r)-2,x:Ft(u,f)})):f&&d.push(i(d)+"rotate("+f+r)}function s(u,f,d,p){u!==f?p.push({i:d.push(i(d)+"skewX(",null,r)-2,x:Ft(u,f)}):f&&d.push(i(d)+"skewX("+f+r)}function c(u,f,d,p,m,y){if(u!==d||f!==p){var b=m.push(i(m)+"scale(",null,",",null,")");y.push({i:b-4,x:Ft(u,d)},{i:b-2,x:Ft(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return function(u,f){var d=[],p=[];return u=e(u),f=e(f),a(u.translateX,u.translateY,f.translateX,f.translateY,d,p),l(u.rotate,f.rotate,d,p),s(u.skewX,f.skewX,d,p),c(u.scaleX,u.scaleY,f.scaleX,f.scaleY,d,p),u=f=null,function(m){for(var y=-1,b=p.length,g;++y<b;)d[(g=p[y]).i]=g.x(m);return d.join("")}}}var Bv=pf(Ov,"px, ","px)","deg)"),Vv=pf($v,", ",")",")"),Rv=1e-12;function mf(e){return((e=Math.exp(e))+1/e)/2}function Dv(e){return((e=Math.exp(e))-1/e)/2}function Mv(e){return((e=Math.exp(2*e))-1)/(e+1)}const li=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],u=a[2],f=l[0],d=l[1],p=l[2],m=f-s,y=d-c,b=m*m+y*y,g,h;if(b<Rv)h=Math.log(p/u)/n,g=function(N){return[s+N*m,c+N*y,u*Math.exp(n*N*h)]};else{var w=Math.sqrt(b),_=(p*p-u*u+r*b)/(2*u*o*w),k=(p*p-u*u-r*b)/(2*p*o*w),E=Math.log(Math.sqrt(_*_+1)-_),C=Math.log(Math.sqrt(k*k+1)-k);h=(C-E)/n,g=function(N){var I=N*h,D=mf(E),G=u/(o*w)*(D*Mv(n*I+E)-Dv(E));return[s+G*m,c+G*y,u*D/mf(n*I+E)]}}return g.duration=h*1e3*n/Math.SQRT2,g}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var so=0,Jo=0,Qo=0,gf=1e3,si,er,ci=0,Tn=0,di=0,tr=typeof performance=="object"&&performance.now?performance:Date,hf=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function El(){return Tn||(hf(Lv),Tn=tr.now()+di)}function Lv(){Tn=0}function ui(){this._call=this._time=this._next=null}ui.prototype=yf.prototype={constructor:ui,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?El():+o)+(n==null?0:+n),!this._next&&er!==this&&(er?er._next=this:si=this,er=this),this._call=e,this._time=o,Nl()},stop:function(){this._call&&(this._call=null,this._time=1/0,Nl())}};function yf(e,n,o){var r=new ui;return r.restart(e,n,o),r}function Fv(){El(),++so;for(var e=si,n;e;)(n=Tn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--so}function _f(){Tn=(ci=tr.now())+di,so=Jo=0;try{Fv()}finally{so=0,Kv(),Tn=0}}function Uv(){var e=tr.now(),n=e-ci;n>gf&&(di-=n,ci=e)}function Kv(){for(var e,n=si,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:si=o);er=e,Nl(r)}function Nl(e){if(!so){Jo&&(Jo=clearTimeout(Jo));var n=e-Tn;n>24?(e<1/0&&(Jo=setTimeout(_f,e-tr.now()-di)),Qo&&(Qo=clearInterval(Qo))):(Qo||(ci=tr.now(),Qo=setInterval(Uv,gf)),so=1,hf(_f))}}function bf(e,n,o){var r=new ui;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var jv=Xr("start","end","cancel","interrupt"),Gv=[],wf=0,kf=1,Sl=2,fi=3,Cf=4,vl=5,pi=6;function mi(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;qv(e,o,{name:n,index:r,group:i,on:jv,tween:Gv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:wf})}function xl(e,n){var o=$t(e,n);if(o.state>wf)throw new Error("too late; already scheduled");return o}function Ut(e,n){var o=$t(e,n);if(o.state>fi)throw new Error("too late; already running");return o}function $t(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function qv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=yf(a,0,o.time);function a(u){o.state=kf,o.timer.restart(l,o.delay,o.time),o.delay<=u&&l(u-o.delay)}function l(u){var f,d,p,m;if(o.state!==kf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===fi)return bf(l);m.state===Cf?(m.state=pi,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=pi,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(bf(function(){o.state===fi&&(o.state=Cf,o.timer.restart(s,o.delay,o.time),s(u))}),o.state=Sl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Sl){for(o.state=fi,i=new Array(p=o.tween.length),f=0,d=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++d]=m);i.length=d+1}}function s(u){for(var f=u<o.duration?o.ease.call(null,u/o.duration):(o.timer.restart(c),o.state=vl,1),d=-1,p=i.length;++d<p;)i[d].call(e,f);o.state===vl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=pi,o.timer.stop(),delete r[n];for(var u in r)return;delete e.__transition}}function gi(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>Sl&&r.state<vl,r.state=pi,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function zv(e){return this.each(function(){gi(this,e)})}function Hv(e,n){var o,r;return function(){var i=Ut(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 Yv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=Ut(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,u=i.length;c<u;++c)if(i[c].name===n){i[c]=s;break}c===u&&i.push(s)}a.tween=i}}function Wv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=$t(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?Hv:Yv)(o,e,n))}function Al(e,n,o){var r=e._id;return e.each(function(){var i=Ut(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return $t(i,r).value[n]}}function Ef(e,n){var o;return(typeof n=="number"?Ft:n instanceof An?ii:(o=An(n))?(n=o,ii):df)(e,n)}function Xv(e){return function(){this.removeAttribute(e)}}function Zv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Jv(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 Qv(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 ex(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 tx(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 nx(e,n){var o=Jr(e),r=o==="transform"?Vv:Ef;return this.attrTween(e,typeof n=="function"?(o.local?tx:ex)(o,r,Al(this,"attr."+e,n)):n==null?(o.local?Zv:Xv)(o):(o.local?Qv:Jv)(o,r,n))}function ox(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function rx(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function ix(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&rx(e,a)),o}return i._value=n,i}function ax(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&ox(e,a)),o}return i._value=n,i}function lx(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=Jr(e);return this.tween(o,(r.local?ix:ax)(r,n))}function sx(e,n){return function(){xl(this,e).delay=+n.apply(this,arguments)}}function cx(e,n){return n=+n,function(){xl(this,e).delay=n}}function dx(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?sx:cx)(n,e)):$t(this.node(),n).delay}function ux(e,n){return function(){Ut(this,e).duration=+n.apply(this,arguments)}}function fx(e,n){return n=+n,function(){Ut(this,e).duration=n}}function px(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?ux:fx)(n,e)):$t(this.node(),n).duration}function mx(e,n){if(typeof n!="function")throw new Error;return function(){Ut(this,e).ease=n}}function gx(e){var n=this._id;return arguments.length?this.each(mx(n,e)):$t(this.node(),n).ease}function hx(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;Ut(this,e).ease=o}}function yx(e){if(typeof e!="function")throw new Error;return this.each(hx(this._id,e))}function _x(e){typeof e!="function"&&(e=Fu(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,u=0;u<l;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&s.push(c);return new Jt(r,this._parents,this._name,this._id)}function bx(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],u=o[s],f=c.length,d=l[s]=new Array(f),p,m=0;m<f;++m)(p=c[m]||u[m])&&(d[m]=p);for(;s<r;++s)l[s]=n[s];return new Jt(l,this._parents,this._name,this._id)}function wx(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 kx(e,n,o){var r,i,a=wx(n)?xl:Ut;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Cx(e,n){var o=this._id;return arguments.length<2?$t(this.node(),o).on.on(e):this.each(kx(o,e,n))}function Ex(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Nx(){return this.on("end.remove",Ex(this._id))}function Sx(e){var n=this._name,o=this._id;typeof e!="function"&&(e=fl(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,u=a[l]=new Array(c),f,d,p=0;p<c;++p)(f=s[p])&&(d=e.call(f,f.__data__,p,s))&&("__data__"in f&&(d.__data__=f.__data__),u[p]=d,mi(u[p],n,o,p,u,$t(f,o)));return new Jt(a,this._parents,n,o)}function vx(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Lu(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],u=c.length,f,d=0;d<u;++d)if(f=c[d]){for(var p=e.call(f,f.__data__,d,c),m,y=$t(f,o),b=0,g=p.length;b<g;++b)(m=p[b])&&mi(m,n,o,b,p,y);a.push(p),l.push(f)}return new Jt(a,l,n,o)}var xx=zo.prototype.constructor;function Ax(){return new xx(this._groups,this._parents)}function Ix(e,n){var o,r,i;return function(){var a=io(this,e),l=(this.style.removeProperty(e),io(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Nf(e){return function(){this.style.removeProperty(e)}}function Px(e,n,o){var r,i=o+"",a;return function(){var l=io(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function Tx(e,n,o){var r,i,a;return function(){var l=io(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),io(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function Ox(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=Ut(this,e),u=c.on,f=c.value[a]==null?s||(s=Nf(n)):void 0;(u!==o||i!==f)&&(r=(o=u).copy()).on(l,i=f),c.on=r}}function $x(e,n,o){var r=(e+="")=="transform"?Bv:Ef;return n==null?this.styleTween(e,Ix(e,r)).on("end.style."+e,Nf(e)):typeof n=="function"?this.styleTween(e,Tx(e,r,Al(this,"style."+e,n))).each(Ox(this._id,e)):this.styleTween(e,Px(e,r,n),o).on("end.style."+e,null)}function Bx(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function Vx(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&Bx(e,l,o)),r}return a._value=n,a}function Rx(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,Vx(e,n,o??""))}function Dx(e){return function(){this.textContent=e}}function Mx(e){return function(){var n=e(this);this.textContent=n??""}}function Lx(e){return this.tween("text",typeof e=="function"?Mx(Al(this,"text",e)):Dx(e==null?"":e+""))}function Fx(e){return function(n){this.textContent=e.call(this,n)}}function Ux(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&Fx(i)),n}return r._value=e,r}function Kx(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,Ux(e))}function jx(){for(var e=this._name,n=this._id,o=Sf(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,u=0;u<s;++u)if(c=l[u]){var f=$t(c,n);mi(c,e,o,u,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Jt(r,this._parents,e,o)}function Gx(){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 u=Ut(this,r),f=u.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),u.on=n}),i===0&&a()})}var qx=0;function Jt(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Sf(){return++qx}var Qt=zo.prototype;Jt.prototype={constructor:Jt,select:Sx,selectAll:vx,selectChild:Qt.selectChild,selectChildren:Qt.selectChildren,filter:_x,merge:bx,selection:Ax,transition:jx,call:Qt.call,nodes:Qt.nodes,node:Qt.node,size:Qt.size,empty:Qt.empty,each:Qt.each,on:Cx,attr:nx,attrTween:lx,style:$x,styleTween:Rx,text:Lx,textTween:Kx,remove:Nx,tween:Wv,delay:dx,duration:px,ease:gx,easeVarying:yx,end:Gx,[Symbol.iterator]:Qt[Symbol.iterator]};function zx(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var Hx={time:null,delay:0,duration:250,ease:zx};function Yx(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 Wx(e){var n,o;e instanceof Jt?(n=e._id,e=e._name):(n=Sf(),(o=Hx).time=El(),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,u=0;u<s;++u)(c=l[u])&&mi(c,e,n,u,l,o||Yx(c,n));return new Jt(r,this._parents,e,n)}zo.prototype.interrupt=zv,zo.prototype.transition=Wx;const hi=e=>()=>e;function Xx(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 en(e,n,o){this.k=e,this.x=n,this.y=o}en.prototype={constructor:en,scale:function(e){return e===1?this:new en(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new en(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 co=new en(1,0,0);en.prototype;function Il(e){e.stopImmediatePropagation()}function nr(e){e.preventDefault(),e.stopImmediatePropagation()}function Zx(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function Jx(){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 vf(){return this.__zoom||co}function Qx(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function eA(){return navigator.maxTouchPoints||"ontouchstart"in this}function tA(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 nA(){var e=Zx,n=Jx,o=tA,r=Qx,i=eA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=li,u=Xr("start","zoom","end"),f,d,p,m=500,y=150,b=0,g=10;function h(x){x.property("__zoom",vf).on("wheel.zoom",I,{passive:!1}).on("mousedown.zoom",D).on("dblclick.zoom",G).filter(i).on("touchstart.zoom",K).on("touchmove.zoom",S).on("touchend.zoom touchcancel.zoom",ne).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}h.transform=function(x,q,U,te){var V=x.selection?x.selection():x;V.property("__zoom",vf),x!==V?E(x,q,U,te):V.interrupt().each(function(){C(this,arguments).event(te).start().zoom(null,typeof q=="function"?q.apply(this,arguments):q).end()})},h.scaleBy=function(x,q,U,te){h.scaleTo(x,function(){var V=this.__zoom.k,T=typeof q=="function"?q.apply(this,arguments):q;return V*T},U,te)},h.scaleTo=function(x,q,U,te){h.transform(x,function(){var V=n.apply(this,arguments),T=this.__zoom,v=U==null?k(V):typeof U=="function"?U.apply(this,arguments):U,P=T.invert(v),A=typeof q=="function"?q.apply(this,arguments):q;return o(_(w(T,A),v,P),V,l)},U,te)},h.translateBy=function(x,q,U,te){h.transform(x,function(){return o(this.__zoom.translate(typeof q=="function"?q.apply(this,arguments):q,typeof U=="function"?U.apply(this,arguments):U),n.apply(this,arguments),l)},null,te)},h.translateTo=function(x,q,U,te,V){h.transform(x,function(){var T=n.apply(this,arguments),v=this.__zoom,P=te==null?k(T):typeof te=="function"?te.apply(this,arguments):te;return o(co.translate(P[0],P[1]).scale(v.k).translate(typeof q=="function"?-q.apply(this,arguments):-q,typeof U=="function"?-U.apply(this,arguments):-U),T,l)},te,V)};function w(x,q){return q=Math.max(a[0],Math.min(a[1],q)),q===x.k?x:new en(q,x.x,x.y)}function _(x,q,U){var te=q[0]-U[0]*x.k,V=q[1]-U[1]*x.k;return te===x.x&&V===x.y?x:new en(x.k,te,V)}function k(x){return[(+x[0][0]+ +x[1][0])/2,(+x[0][1]+ +x[1][1])/2]}function E(x,q,U,te){x.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 V=this,T=arguments,v=C(V,T).event(te),P=n.apply(V,T),A=U==null?k(P):typeof U=="function"?U.apply(V,T):U,Y=Math.max(P[1][0]-P[0][0],P[1][1]-P[0][1]),W=V.__zoom,ie=typeof q=="function"?q.apply(V,T):q,oe=c(W.invert(A).concat(Y/W.k),ie.invert(A).concat(Y/ie.k));return function(de){if(de===1)de=ie;else{var he=oe(de),X=Y/he[2];de=new en(X,A[0]-he[0]*X,A[1]-he[1]*X)}v.zoom(null,de)}})}function C(x,q,U){return!U&&x.__zooming||new N(x,q)}function N(x,q){this.that=x,this.args=q,this.active=0,this.sourceEvent=null,this.extent=n.apply(x,q),this.taps=0}N.prototype={event:function(x){return x&&(this.sourceEvent=x),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(x,q){return this.mouse&&x!=="mouse"&&(this.mouse[1]=q.invert(this.mouse[0])),this.touch0&&x!=="touch"&&(this.touch0[1]=q.invert(this.touch0[0])),this.touch1&&x!=="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(x){var q=Tt(this.that).datum();u.call(x,this.that,new Xx(x,{sourceEvent:this.sourceEvent,target:h,transform:this.that.__zoom,dispatch:u}),q)}};function I(x,...q){if(!e.apply(this,arguments))return;var U=C(this,q).event(x),te=this.__zoom,V=Math.max(a[0],Math.min(a[1],te.k*Math.pow(2,r.apply(this,arguments)))),T=Mt(x);if(U.wheel)(U.mouse[0][0]!==T[0]||U.mouse[0][1]!==T[1])&&(U.mouse[1]=te.invert(U.mouse[0]=T)),clearTimeout(U.wheel);else{if(te.k===V)return;U.mouse=[T,te.invert(T)],gi(this),U.start()}nr(x),U.wheel=setTimeout(v,y),U.zoom("mouse",o(_(w(te,V),U.mouse[0],U.mouse[1]),U.extent,l));function v(){U.wheel=null,U.end()}}function D(x,...q){if(p||!e.apply(this,arguments))return;var U=x.currentTarget,te=C(this,q,!0).event(x),V=Tt(x.view).on("mousemove.zoom",A,!0).on("mouseup.zoom",Y,!0),T=Mt(x,U),v=x.clientX,P=x.clientY;Xu(x.view),Il(x),te.mouse=[T,this.__zoom.invert(T)],gi(this),te.start();function A(W){if(nr(W),!te.moved){var ie=W.clientX-v,oe=W.clientY-P;te.moved=ie*ie+oe*oe>b}te.event(W).zoom("mouse",o(_(te.that.__zoom,te.mouse[0]=Mt(W,U),te.mouse[1]),te.extent,l))}function Y(W){V.on("mousemove.zoom mouseup.zoom",null),Zu(W.view,te.moved),nr(W),te.event(W).end()}}function G(x,...q){if(e.apply(this,arguments)){var U=this.__zoom,te=Mt(x.changedTouches?x.changedTouches[0]:x,this),V=U.invert(te),T=U.k*(x.shiftKey?.5:2),v=o(_(w(U,T),te,V),n.apply(this,q),l);nr(x),s>0?Tt(this).transition().duration(s).call(E,v,te,x):Tt(this).call(h.transform,v,te,x)}}function K(x,...q){if(e.apply(this,arguments)){var U=x.touches,te=U.length,V=C(this,q,x.changedTouches.length===te).event(x),T,v,P,A;for(Il(x),v=0;v<te;++v)P=U[v],A=Mt(P,this),A=[A,this.__zoom.invert(A),P.identifier],V.touch0?!V.touch1&&V.touch0[2]!==A[2]&&(V.touch1=A,V.taps=0):(V.touch0=A,T=!0,V.taps=1+!!f);f&&(f=clearTimeout(f)),T&&(V.taps<2&&(d=A[0],f=setTimeout(function(){f=null},m)),gi(this),V.start())}}function S(x,...q){if(this.__zooming){var U=C(this,q).event(x),te=x.changedTouches,V=te.length,T,v,P,A;for(nr(x),T=0;T<V;++T)v=te[T],P=Mt(v,this),U.touch0&&U.touch0[2]===v.identifier?U.touch0[0]=P:U.touch1&&U.touch1[2]===v.identifier&&(U.touch1[0]=P);if(v=U.that.__zoom,U.touch1){var Y=U.touch0[0],W=U.touch0[1],ie=U.touch1[0],oe=U.touch1[1],de=(de=ie[0]-Y[0])*de+(de=ie[1]-Y[1])*de,he=(he=oe[0]-W[0])*he+(he=oe[1]-W[1])*he;v=w(v,Math.sqrt(de/he)),P=[(Y[0]+ie[0])/2,(Y[1]+ie[1])/2],A=[(W[0]+oe[0])/2,(W[1]+oe[1])/2]}else if(U.touch0)P=U.touch0[0],A=U.touch0[1];else return;U.zoom("touch",o(_(v,P,A),U.extent,l))}}function ne(x,...q){if(this.__zooming){var U=C(this,q).event(x),te=x.changedTouches,V=te.length,T,v;for(Il(x),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),T=0;T<V;++T)v=te[T],U.touch0&&U.touch0[2]===v.identifier?delete U.touch0:U.touch1&&U.touch1[2]===v.identifier&&delete U.touch1;if(U.touch1&&!U.touch0&&(U.touch0=U.touch1,delete U.touch1),U.touch0)U.touch0[1]=this.__zoom.invert(U.touch0[0]);else if(U.end(),U.taps===2&&(v=Mt(v,this),Math.hypot(d[0]-v[0],d[1]-v[1])<g)){var P=Tt(this).on("dblclick.zoom");P&&P.apply(this,arguments)}}}return h.wheelDelta=function(x){return arguments.length?(r=typeof x=="function"?x:hi(+x),h):r},h.filter=function(x){return arguments.length?(e=typeof x=="function"?x:hi(!!x),h):e},h.touchable=function(x){return arguments.length?(i=typeof x=="function"?x:hi(!!x),h):i},h.extent=function(x){return arguments.length?(n=typeof x=="function"?x:hi([[+x[0][0],+x[0][1]],[+x[1][0],+x[1][1]]]),h):n},h.scaleExtent=function(x){return arguments.length?(a[0]=+x[0],a[1]=+x[1],h):[a[0],a[1]]},h.translateExtent=function(x){return arguments.length?(l[0][0]=+x[0][0],l[1][0]=+x[1][0],l[0][1]=+x[0][1],l[1][1]=+x[1][1],h):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},h.constrain=function(x){return arguments.length?(o=x,h):o},h.duration=function(x){return arguments.length?(s=+x,h):s},h.interpolate=function(x){return arguments.length?(c=x,h):c},h.on=function(){var x=u.on.apply(u,arguments);return x===u?h:x},h.clickDistance=function(x){return arguments.length?(b=(x=+x)*x,h):Math.sqrt(b)},h.tapDistance=function(x){return arguments.length?(g=+x,h):g},h}var ke=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ke||{}),Pl=(e=>(e.Partial="partial",e.Full="full",e))(Pl||{}),On=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(On||{}),cn=(e=>(e.Strict="strict",e.Loose="loose",e))(cn||{}),or=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(or||{}),rr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(rr||{}),xf=(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))(xf||{});const oA=["INPUT","SELECT","TEXTAREA"],rA=typeof document<"u"?document:null;function Tl(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 oA.includes(r==null?void 0:r.nodeName)||i||!!a}function iA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Af(e,n,o,r){const i=n.replace("+",`
|
|
118
|
+
`},Symbol.toStringTag,{value:"Module"})),UN={class:"dk-code-editor"},KN={class:"examples-content"},jN={ref:"editor-root",class:"editor"},nl="YAML Syntax",GN="datakit.insert-example",qN=Ae(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const{t:r}=Qe.createI18n("en-us",it),{formData:i}=Xe(),a=o,l=t.useTemplateRef("editor-root"),s=t.shallowRef(null);function c(f){const d=s.value,p=d==null?void 0:d.getModel();if(!d||!p)return;const m=tl[f];d.getValue()!==m&&(d.pushUndoStop(),d.executeEdits(GN,[{range:p.getFullModelRange(),text:m}]),d.pushUndoStop()),u()}function u(){const f=s.value,d=f==null?void 0:f.getModel();!f||!d||(f.setPosition(d.getFullModelRange().getEndPosition()),f.focus())}return t.onMounted(()=>{const f=kr.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 d={...i.config};d.nodes&&d.nodes.length===0&&delete d.nodes;const p=Object.keys(d).length===0?"":el.dump(t.toRaw(d),{schema:zr,noArrayIndent:!0});f.setValue(p),u()}f.onDidChangeModelContent(()=>{const d=f.getModel(),p=f.getValue()||"";try{const m=el.load(p,{schema:zr,json:!0});kr.editor.setModelMarkers(d,nl,[]),i.config=m,a("change",m)}catch(m){const{message:y,mark:b}=m,{line:g,column:h}=b||{line:0,column:0},w=y.split(`
|
|
119
|
+
`)[0],_=[{startLineNumber:g+1,startColumn:h+1,endLineNumber:g+1,endColumn:h+2,message:w,severity:kr.MarkerSeverity.Error,source:nl}];kr.editor.setModelMarkers(d,nl,_),a("error",w)}})}),t.onBeforeUnmount(()=>{var f;(f=s.value)==null||f.dispose()}),n({setExampleCode:c}),(f,d)=>(t.openBlock(),t.createElementBlock("div",UN,[t.createVNode(t.unref(Ve.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(xe.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",KN,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(tl,(p,m)=>t.createVNode(t.unref(Ve.KButton),{key:m,appearance:"secondary",size:"small",onClick:y=>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",jN,null,512)]))}}),[["__scopeId","data-v-5f51e876"]]),_u=44,zN=220,bu=366,HN=1e3,YN=_u+parseFloat(ud),wu=["request","service_request","service_response","response","vault"],io=wu,ku=["call","jq","exit","property","static","branch","cache"],Cu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Wo="application/x-datakit+json",Hr={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"]},Yr=1,WN=0,XN=1,ZN=2,JN=3,ao=parseInt(rC,10),bt={call:{icon:xe.NetworkIcon,colors:{foreground:nC,background:Gk}},jq:{icon:xe.CodeblockIcon,colors:{foreground:Zk,background:Fk}},exit:{icon:xe.GatewayIcon,colors:{foreground:Ma,background:Yk}},property:{icon:xe.StackIcon,colors:{foreground:eC,background:tC}},static:{icon:xe.VitalsIcon,colors:{foreground:Jk,background:Qk}},branch:{icon:xe.ArrowSplitIcon,colors:{foreground:Wk,background:Lk}},cache:{icon:xe.StackIcon,colors:{foreground:Xk,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:ol}=Qe.createI18n("en-us",it);function xt(e){return ol(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function Tn(e){return ol(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function QN(e){return ol(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const rl={call:{type:"call",summary:Tn("call"),description:xt("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...bt.call},jq:{type:"jq",summary:Tn("jq"),description:xt("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...bt.jq},exit:{type:"exit",summary:Tn("exit"),description:xt("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...bt.exit},property:{type:"property",summary:Tn("property"),description:xt("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...bt.property},static:{type:"static",summary:Tn("static"),description:xt("static"),io:{output:{fields:[],configurable:!0}},...bt.static},branch:{type:"branch",summary:Tn("branch"),description:xt("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...bt.branch},cache:{type:"cache",summary:Tn("cache"),description:xt("cache"),...bt.cache}},Wr={request:{type:"request",description:xt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...bt.request},service_request:{type:"service_request",description:xt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...bt.service_request},service_response:{type:"service_response",description:xt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...bt.service_response},response:{type:"response",description:xt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...bt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...bt.vault,hidden:!0}},il=Object.keys(Wr),al=e=>il.includes(e),e1=e=>[...il,...ku].includes(e),At=e=>il.includes(e),Eu=e=>At(e.type),Nu=e=>!!(e!=null&&e.startsWith("node:")),Xr=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function cn(e){return Yn(e)}function ll(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 lo(e){return`${e}:${Vr()}`}function Zr(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function Su(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function so(e){return At(e)?Wr[e]:rl[e]}function vu(e){var i,a,l,s;const n=so(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 Xo(e){var o,r,i;return((i=(r=(o=so(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function xu(e){return(e??[]).map(n=>({id:lo("field"),name:n}))}function dn(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function un(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function sl(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Au(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function t1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=Wr[e];return{name:e,phase:n,position:{x:0,y:0},fields:vu(o.type),expanded:{},hidden:o.hidden}}function Iu(e,n){const r=(typeof e=="string"&&e1(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function cl(e,n){return`${e}:${n}`}function Jr(e,n){return`${e}:${n}`}function Tu(e,n,o,r,i){return{id:cl(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 n1(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function o1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function Pu(e,n){return[...n1(e),...o1(n)]}function Qr(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 dl(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 ul(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&Nu(i)):[]}function r1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const _=new Map;for(const k of e.value.groups)for(const E of k.memberIds)_.set(E,{ownerId:k.ownerId,branch:k.branch});return _}),a=t.computed(()=>Pu(e.value.edges,e.value.groups)),l=t.computed(()=>Qr(a.value));function s(_,k){return _?Xo(_.type).includes(k):!1}function c(_,k){if(k===_.id)return!1;const E=o(k);return!(!E||At(E.type)||E.phase!==_.phase)}function u(_,k){const E=[],C=new Set;for(const N of k)C.has(N)||(C.add(N),c(_,N)&&E.push(N));return E}function f(_,k,E){const C=o(_);return s(C,k)?u(C,E):[]}function d(_,k,E){const C=cl(_.id,k),N=n.value.get(C);E.length>0?N?(N.phase!==_.phase&&(N.phase=_.phase),ll(N.memberIds,E)||(N.memberIds=[...E])):e.value.groups.push(Tu(_.id,k,_.phase,E)):N&&(e.value.groups=e.value.groups.filter(T=>T.id!==C))}function p(_,k,E,C={}){const N=o(_);if(!s(N,k))return!1;const T=u(N,E),D=ul(N,k);if(ll(D,T))return!1;const G=N.config??(N.config={});return T.length>0?G[k]=[...T]:(delete G[k],Object.keys(G).length===0&&delete N.config),d(N,k,T),(C.commit??!0)&&r.commit(C.tag??`branch:set:${k}`),!0}function m(_){e.value.groups=e.value.groups.filter(k=>k.ownerId!==_)}function y(_,k){const E=n.value.get(cl(_,k));if(E)return[...E.memberIds];const C=o(_);return C?ul(C,k):[]}function b(_){return i.value.get(_)}function g(_,k){if(_===k)return!0;const E=new Set,C=[k];for(;C.length>0;){const N=C.pop();if(E.has(N))continue;if(E.add(N),N===_)return!0;const T=l.value.get(N);if(T)for(const D of T)E.has(D)||C.push(D)}return!1}function h(_,k,E,C={}){const N=o(_);if(!N||!s(N,k)||!c(N,E)||g(_,E))return!1;const T=ul(N,k);if(T.includes(E))return!1;w(E);const D=[...T,E];return p(_,k,D,{commit:!1})?((C.commit??!0)&&r.commit(C.tag??`branch:add:${k}`),!0):!1}function w(_){const k=b(_);if(!k)return;const C=y(k.ownerId,k.branch).filter(N=>N!==_);p(k.ownerId,k.branch,C,{commit:!1})}return{setMembers:p,prepareMembers:f,addMember:h,dropTarget:w,clear:m,getMembers:y,findMembership:b,wouldCreateCycle:g}}function i1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:u,redoStack:f}=Je.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let d;function p(_){var k;(k=n==null?void 0:n.onHistoryChange)==null||k.call(n,_,e.value)}function m(_){if(!_){d=void 0,o(),p("commit");return}if(_!=="*"&&d!==_){d=_,o(),p("commit");return}o(),u.value.shift(),p("commit")}function y(){r(),d=void 0,p("undo")}function b(){i(),d=void 0,p("redo")}function g(){s(),d=void 0,p("clear")}function h(){c(),d=void 0,p("reset")}function w(){r(),f.value.shift(),d=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:y,redo:b,clear:g,reset:h,revert:w}}function a1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function l1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function s1(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 Ou(e,n){var b,g,h,w,_;const o=((b=e.config)==null?void 0:b.nodes)??[],r=((g=e.__ui_data)==null?void 0:g.nodes)??[],i=((h=e.__ui_data)==null?void 0:h.groups)??[],a=new Map(r.map(k=>[k.name,k])),l=new Map(i.map(k=>[k.name,k])),s=[],c=[],u=new Map,f=[],d=[],p=new Map,m=k=>{const E=new Set,C=[...k];for(;C.length>0;){const N=C.shift();if(!E.has(N)&&(E.add(N),al(N)||(u.get(N).phase="request"),!!p.has(N)))for(const T of p.get(N))E.has(T)||C.push(T)}};let y=!1;for(const k of o){const E=a.get(k.name);!E&&!y&&(y=!0);const C=Bu({type:k.type,configNode:k,uiNode:E,pluginData:e});s.push(C),u.set(C.name,C)}for(const k of s){const E=Xo(k.type);if(!E.length)continue;const C=k.config;if(C)for(const N of E){const T=C[N];if(!Array.isArray(T)){l.has(Jr(k.name,N))&&(y=!0);continue}const D=[];for(const G of T){if(typeof G!="string")continue;const j=u.get(G);j&&!At(j.type)&&D.push(j.id)}if(D.length){C[N]=D;const G=Jr(k.name,N),j=l.get(G),S=j?{position:cn(j.position)}:void 0,ee=Tu(k.id,N,k.phase,D,S);f.push(ee),!j&&!y&&(y=!0)}else delete C[N],l.has(Jr(k.name,N))&&(y=!0)}}for(const k of io)if(!u.has(k)){let E=a.get(k);E||(y||(y=!0),E=t1(k));const C=Bu({type:k,uiNode:E,pluginData:e});s.push(C),u.set(C.name,C)}for(const k of o)u1(k,d);for(const k of d){const E=u.get(k.source),C=u.get(k.target);if(!E||!C){E||console.warn(`[initEditorState] skip: source "${k.source}" not found`),C||console.warn(`[initEditorState] skip: target "${k.target}" not found`);continue}p.has(k.source)||p.set(k.source,new Set),p.get(k.source).add(k.target),p.has(k.target)||p.set(k.target,new Set),p.get(k.target).add(k.source),c.push({id:lo("edge"),source:E.id,sourceField:(w=dn(E,"output",k.sourceField))==null?void 0:w.id,target:C.id,targetField:(_=dn(C,"input",k.targetField))==null?void 0:_.id})}return m(["request","service_request"]),{nodes:s,edges:c,groups:f,pendingLayout:y?n?"keepHistory":"clearHistory":!1,pendingFitView:!0}}function $u(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=vu(n),c=so(n);return{id:lo("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:xu((a==null?void 0:a.input)??s.input),output:xu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?cn(l):{}}}function c1(e){return At(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Bu({type:e,configNode:n,uiNode:o,pluginData:r}){return $u({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??c1(e),position:o==null?void 0:o.position,fields:f1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:p1({type:e,configNode:n,pluginData:r})})}function d1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return cn(s)}function u1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=Zr(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}=Zr(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=Zr(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}=Zr(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function f1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,u,f;const i=so(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))),(u=a.output)!=null&&u.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const d=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>d.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>d.add(p)),d.size&&(l.output=Array.from(d))}e==="vault"&&(l.output=l1(r))}return Object.keys(l).length?l:void 0}function p1({type:e,configNode:n,pluginData:o}){return e==="vault"?a1(o):n?d1(n):void 0}function m1(e){const n=t.computed(()=>{const d=new Map;return e.value.nodes.forEach(p=>d.set(p.id,p)),d}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>Pu(o.value,r.value));function a(d){return Qr(i.value,d?{source:d.source,target:d.target}:void 0)}function l(d){const p=n.value.get(d.source),m=n.value.get(d.target);if(!p||!m)return d;const y=Au(p,d.sourceField)&&!sl(p,d.sourceField),b=sl(m,d.targetField);return y&&b?{source:d.target,sourceField:d.targetField,target:d.source,targetField:d.sourceField}:d}function s(d){const p=l(d),m=[],y=n.value.get(p.source),b=n.value.get(p.target);if(y||m.push("source node not found"),b||m.push("target node not found"),!y||!b)return{ok:!1,errors:m};sl(y,p.sourceField)||m.push("source handle is not an output field"),Au(b,p.targetField)||m.push("target handle is not an input field"),b.name==="request"&&m.push('cannot target "request"'),y.name==="response"&&m.push('cannot source from "response"');const g=o.value.some(_=>_.target===p.target&&!_.targetField),h=o.value.some(_=>_.target===p.target&&!!_.targetField);(g&&p.targetField||h&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(_=>_.target===p.target&&_.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(_=>_.target===p.target&&!_.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 dl(w)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const d=[];for(const p of io)[...n.value.values()].some(m=>m.name===p)||d.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"&&d.push(`edge "${p.id}" targets "request"`),m.name==="response"&&d.push(`edge "${p.id}" sources from "response"`)}return dl(a())&&d.push("graph contains cycle"),d.length?{ok:!1,errors:d}:{ok:!0}}function u(d){return s(d).ok}function f(d){return!d.source||!d.target?!1:u({source:d.source,sourceField:d.sourceHandle,target:d.target,targetField:d.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:u,isValidVueFlowConnection:f,buildAdjacency:Qr}}const[Vu,g1]=Je.createInjectionState(function(n,o={}){const r=t.ref(Ou(n)),i=t.ref(),a=t.ref(!1),l=t.ref(!1),s=i1(r,{capacity:200,clone:cn,onHistoryChange:L=>{var $;L!=="clear"&&(($=o.onChange)==null||$.call(o,B(),K(),V()))}}),c=t.ref(!1),u=t.ref(new Set);function f(){r.value.pendingLayout=!1,s.commit("*")}function d(L=!0){r.value.pendingFitView!==L&&(r.value.pendingFitView=L,s.commit("*"))}const p=t.computed(()=>new Map(r.value.nodes.map(L=>[L.id,L]))),m=t.computed(()=>new Map(r.value.nodes.map(L=>[L.name,L]))),y=t.computed(()=>{const L=new Map,$=new Map;for(const z of r.value.edges)L.set(z.id,z),$.has(z.source)||$.set(z.source,new Set),$.get(z.source).add(z.id),$.has(z.target)||$.set(z.target,new Set),$.get(z.target).add(z.id);return{edgeMapById:L,edgeIdMapByNodeId:$}}),b=t.computed(()=>y.value.edgeMapById),g=t.computed(()=>y.value.edgeIdMapByNodeId),h=t.computed(()=>new Map(r.value.groups.map(L=>[L.id,L]))),w=t.computed(()=>new Set(r.value.nodes.map(L=>L.name))),_=r1({state:r,groupMapById:h,getNodeById:D,history:s}),{canonicalizeConnection:k,validateConnection:E,validateGraph:C,isValidConnection:N,isValidVueFlowConnection:T}=m1(r);function D(L){return p.value.get(L)}function G(L){return m.value.get(L)}function j(L){return b.value.get(L)}function S(L){if(!g.value.has(L))return[];const $=[];return g.value.get(L).forEach(z=>{const M=j(z);M&&$.push(M)}),$}function ee(L){return S(L).filter($=>$.target===L)}function x(L){return S(L).filter($=>$.source===L)}const q=t.computed(()=>i.value?D(i.value):void 0);function U(L){i.value=L}function Q(L){if(At(L.type))throw new Error("[createNode] implicit nodes are fixed.");return $u({type:L.type,name:L.name||(At(L.type)?void 0:Iu(L.type,w.value)),phase:L.phase,position:L.position,fields:L.fields,config:L.config})}function R(L,$=!0){const z=Q(L);if(z)return r.value.nodes.push(z),$&&s.commit(),c.value=!0,z.id}function P(L,$,z=!0){const M=D(L);if(!M||At(M.type))return;const ne={...cn(M),id:lo("node"),name:Iu(M.name,w.value),position:$??{x:M.position.x+20,y:M.position.y+20}},ue=Xo(ne.type);if(ue.length&&ne.config){for(const _e of ue)delete ne.config[_e];Object.keys(ne.config).length===0&&delete ne.config}return r.value.nodes.push(ne),z&&s.commit(),c.value=!0,ne.id}function v(L,$=!0){if(!D(L))return;r.value.edges=r.value.edges.filter(ne=>ne.source!==L&&ne.target!==L),_.clear(L),r.value.nodes=r.value.nodes.filter(ne=>ne.id!==L),i.value===L&&(i.value=void 0),_.dropTarget(L);const M=C();M.ok||console.warn("[removeNode] topology invalid:",M.errors.join("; ")),$&&s.commit()}function I(L,$,z=!0,M){const ne=D(L);if(!ne)return;if(al(ne.name)){console.warn("[renameNode] implicit node name is reserved.");return}ne.name!==$&&(ne.name=$,z&&s.commit(M))}function A(L,$,z=!0){const M=D(L);M&&(M.position={...$},z&&s.commit())}function W(L,$,z=!0){const M=h.value.get(L);if(!M)return;const ne=M.position;ne&&ne.x===$.x&&ne.y===$.y||(M.position={...$},z&&s.commit())}function H(L,$,z=!0){const M=h.value.get(L);if(!M)return!1;const ne={...$.position},ue={...$.dimensions},_e=M.position&&M.position.x===ne.x&&M.position.y===ne.y,fe=M.dimensions&&M.dimensions.width===ue.width&&M.dimensions.height===ue.height;return _e&&fe?!1:(M.position=ne,M.dimensions=ue,z&&s.commit(),!0)}function te(L,$,z,M=!0,ne){const ue=D(L);if(!ue)return;const _e=z??!ue.expanded[$];_e!==!!ue.expanded[$]&&(ue.expanded[$]=_e,M&&s.commit(ne??`toggle:${L}:${$}`))}function oe(L,$,z=!0,M){const ne=D(L);ne&&(ne.config=cn($),z&&s.commit(M))}function se(L,$,z,M=!0){const ne=D(L);if(!ne)return;const ue=ne.fields[$];if(ue.some(_e=>_e.name===z)){console.warn(`[addField] field "${z}" already exists on ${$}.`);return}ue.push({id:lo("field"),name:z}),$==="input"?ne.fields.input=ue:ne.fields.output=ue,M&&s.commit()}function ye(L,$,z,M=!0){const ne=D(L);if(!ne)return;const ue=ne.fields.input,_e=ne.fields.output,fe=ue.find(we=>we.id===$)??_e.find(we=>we.id===$);fe&&(fe.name=z,M&&s.commit())}function X(L,$,z=!0,M=!0){const ne=D(L);if(!ne)return;const ue=ne.fields.input,_e=ne.fields.output,fe=ue.findIndex(De=>De.id===$);fe>=0&&ue.splice(fe,1);const we=_e.findIndex(De=>De.id===$);we>=0&&_e.splice(we,1),ne.fields.input=ue,ne.fields.output=_e,z&&(r.value.edges=r.value.edges.filter(De=>De.sourceField!==$&&De.targetField!==$));const Re=C();Re.ok||console.warn("[removeField] topology invalid:",Re.errors.join("; ")),M&&s.commit()}function ie(L,$=!0){const z=k(L),M=E(z);if(!M.ok){console.warn("[connectEdge] invalid connection:",M.errors.join("; "));return}const ne={id:lo("edge"),...z};r.value.edges.push(ne);const ue=C();if(!ue.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",ue.errors.join("; "));return}return $&&s.commit(),ne.id}function ae(L,$,z=!0){ce(L,!1),ie($,!1),z&&s.commit()}function ce(L,$=!0){const z=r.value.edges.findIndex(ue=>ue.id===L);if(z<0)return;const M=r.value.edges[z];r.value.edges.splice(z,1);const ne=C();if(!ne.ok){r.value.edges.splice(z,0,M),console.warn("[disconnectEdge] topology invalid:",ne.errors.join("; "));return}$&&s.commit()}function de(L,$=!0){const z=ee(L);for(const M of z)ce(M.id,!1);$&&s.commit()}function O(L,$=!0){const z=x(L);for(const M of z)ce(M.id,!1);$&&s.commit()}function B(){var $,z,M,ne,ue;const L=[];for(const _e of r.value.nodes){if(At(_e.type))continue;let fe;const we={};let Re;const De={};for(const be of r.value.edges.filter(he=>he.target===_e.id)){const he=D(be.source);if(!he)continue;const Se=($=un(he,"output",be.sourceField))==null?void 0:$.name,ve=Se?`${he.name}.${Se}`:he.name,$e=(z=un(_e,"input",be.targetField))==null?void 0:z.name;$e?we[$e]=ve:fe===void 0&&(fe=ve)}for(const be of r.value.edges.filter(he=>he.source===_e.id)){const he=D(be.target);if(!he)continue;const Se=he.type;if(!At(Se)||!((M=Wr[Se].io)!=null&&M.input))continue;const ve=(ne=un(he,"input",be.targetField))==null?void 0:ne.name,$e=ve?`${he.name}.${ve}`:he.name,Me=(ue=un(_e,"output",be.sourceField))==null?void 0:ue.name;Me?De[Me]=$e:Re===void 0&&(Re=$e)}const me={...cn(_e.config),name:_e.name,type:_e.type},ge=Xo(_e.type);if(ge.length)for(const be of ge){const he=me[be];if(!Array.isArray(he))continue;const Se=[];for(const ve of he){const $e=D(ve);$e&&Se.push($e.name)}Se.length?me[be]=Array.from(new Set(Se)):delete me[be]}Object.keys(we).length>0?me.inputs=we:fe!==void 0&&(me.input=fe),Object.keys(De).length>0?me.outputs=De:Re!==void 0&&(me.output=Re),L.push(me)}return L}function F(){return r.value.nodes.map(L=>cn({name:L.name,phase:L.phase,position:{...L.position},expanded:{...L.expanded},fields:{input:L.fields.input.map($=>$.name),output:L.fields.output.map($=>$.name)}}))}function V(){const L=G("vault");if(!L)return;const $=s1(L.config);if(!(!$||Object.keys($).length===0))return{vault:$}}function Z(){const L=[];for(const $ of r.value.groups){const z=D($.ownerId);if(!z)continue;const M=$.position;M&&L.push({name:Jr(z.name,$.branch),position:{...M}})}return L}function K(){return{nodes:F(),groups:Z()}}function re(L,$){$&&s.commit(),r.value=Ou(L,$),$||s.clear()}return{state:r,selection:i,modalOpen:a,skipValidation:c,invalidConfigNodeIds:u,propertiesPanelOpen:l,nodeMapById:p,nodeMapByName:m,edgeMapById:b,edgeIdMapByNodeId:g,groupMapById:h,getNodeById:D,getNodeByName:G,getEdgeById:j,getEdgesByNodeId:S,getInEdgesByNodeId:ee,getOutEdgesByNodeId:x,selectedNode:q,selectNode:U,createNode:Q,addNode:R,duplicateNode:P,removeNode:v,renameNode:I,moveNode:A,moveGroup:W,setGroupLayout:H,toggleExpanded:te,replaceConfig:oe,branchGroups:_,addField:se,renameField:ye,removeField:X,connectEdge:ie,replaceConnection:ae,disconnectEdge:ce,disconnectInEdges:de,disconnectOutEdges:O,toConfigNodes:B,toUINodes:F,toUIGroups:Z,toUIData:K,load:re,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:T,validateGraph:()=>C(),clearPendingLayout:f,setPendingFitView:d}});function ct(){const e=g1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const fl=Je.createGlobalState(()=>{const e=Je.useLocalStorage("datakit-editor-mode","flow"),n=Je.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}});function ei(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function en(e){return typeof e=="function"?e():t.unref(e)}const h1=typeof window<"u"&&typeof document<"u",y1=e=>typeof e<"u",_1=Object.prototype.toString,b1=e=>_1.call(e)==="[object Object]",w1=()=>{};function k1(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 Ru=e=>e();function C1(e=Ru){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 Du(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function E1(e,n,o={}){const{eventFilter:r=Ru,...i}=o;return t.watch(e,k1(r,n),i)}function co(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=C1(r);return{stop:E1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function N1(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=en(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 pl(e,n=!1){function o(d,{flush:p="sync",deep:m=!1,timeout:y,throwOnTimeout:b}={}){let g=null;const w=[new Promise(_=>{g=t.watch(e,k=>{d(k)!==n&&(g==null||g(),_(k))},{flush:p,deep:m,immediate:!0})})];return y!=null&&w.push(Du(y,b).then(()=>en(e)).finally(()=>g==null?void 0:g())),Promise.race(w)}function r(d,p){if(!t.isRef(d))return o(k=>k===d,p);const{flush:m="sync",deep:y=!1,timeout:b,throwOnTimeout:g}=p??{};let h=null;const _=[new Promise(k=>{h=t.watch([e,d],([E,C])=>{n!==(E===C)&&(h==null||h(),k(E))},{flush:m,deep:y,immediate:!0})})];return b!=null&&_.push(Du(b,g).then(()=>en(e)).finally(()=>(h==null||h(),en(e)))),Promise.race(_)}function i(d){return o(p=>!!p,d)}function a(d){return r(null,d)}function l(d){return r(void 0,d)}function s(d){return o(Number.isNaN,d)}function c(d,p){return o(m=>{const y=Array.from(m);return y.includes(d)||y.includes(en(d))},p)}function u(d){return f(1,d)}function f(d=1,p){let m=-1;return o(()=>(m+=1,m>=d),p)}return Array.isArray(en(e))?{toMatch:o,toContains:c,changed:u,changedTimes:f,get not(){return pl(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:u,changedTimes:f,get not(){return pl(e,!n)}}}function ml(e){return pl(e)}function S1(e){var n;const o=en(e);return(n=o==null?void 0:o.$el)!=null?n:o}const Mu=h1?window:void 0;function Lu(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=Mu):[n,o,r,i]=e,!n)return w1;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(f=>f()),a.length=0},s=(f,d,p,m)=>(f.addEventListener(d,p,m),()=>f.removeEventListener(d,p,m)),c=t.watch(()=>[S1(n),en(i)],([f,d])=>{if(l(),!f)return;const p=b1(d)?{...d}:d;a.push(...o.flatMap(m=>r.map(y=>s(f,m,y,p))))},{immediate:!0,flush:"post"}),u=()=>{c(),l()};return ei(u),u}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 Fu(...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=Mu,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=v1(n);return Lu(i,a,f=>{f.repeat&&en(s)||c(f)&&o(f)},l)}function x1(e){return JSON.parse(JSON.stringify(e))}function gl(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:u,deep:f=!1,defaultValue:d,shouldEmit:p}=r,m=t.getCurrentInstance(),y=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 b=u;n||(n="modelValue"),b=b||`update:${n.toString()}`;const g=_=>s?typeof s=="function"?s(_):x1(_):_,h=()=>y1(e[n])?g(e[n]):d,w=_=>{p?p(_)&&y(b,_):y(b,_)};if(c){const _=h(),k=t.ref(_);let E=!1;return t.watch(()=>e[n],C=>{E||(E=!0,k.value=g(C),t.nextTick(()=>E=!1))}),t.watch(k,C=>{!E&&(C!==e[n]||f)&&w(C)},{deep:f}),k}else return t.computed({get(){return h()},set(_){w(_)}})}var A1={value:()=>{}};function ti(){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 ni(o)}function ni(e){this._=e}function I1(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}})}ni.prototype=ti.prototype={constructor:ni,on:function(e,n){var o=this._,r=I1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=T1(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]=Uu(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Uu(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 ni(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 T1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Uu(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=A1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var hl="http://www.w3.org/1999/xhtml";const Ku={svg:"http://www.w3.org/2000/svg",xhtml:hl,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function oi(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Ku.hasOwnProperty(n)?{space:Ku[n],local:e}:e}function P1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===hl&&n.documentElement.namespaceURI===hl?n.createElement(e):n.createElementNS(o,e)}}function O1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function ju(e){var n=oi(e);return(n.local?O1:P1)(n)}function $1(){}function yl(e){return e==null?$1:function(){return this.querySelector(e)}}function B1(e){typeof e!="function"&&(e=yl(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,u,f=0;f<l;++f)(c=a[f])&&(u=e.call(c,c.__data__,f,a))&&("__data__"in c&&(u.__data__=c.__data__),s[f]=u);return new Et(r,this._parents)}function V1(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function R1(){return[]}function Gu(e){return e==null?R1:function(){return this.querySelectorAll(e)}}function D1(e){return function(){return V1(e.apply(this,arguments))}}function M1(e){typeof e=="function"?e=D1(e):e=Gu(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,u=0;u<s;++u)(c=l[u])&&(r.push(e.call(c,c.__data__,u,l)),i.push(c));return new Et(r,i)}function qu(e){return function(){return this.matches(e)}}function zu(e){return function(n){return n.matches(e)}}var L1=Array.prototype.find;function F1(e){return function(){return L1.call(this.children,e)}}function U1(){return this.firstElementChild}function K1(e){return this.select(e==null?U1:F1(typeof e=="function"?e:zu(e)))}var j1=Array.prototype.filter;function G1(){return Array.from(this.children)}function q1(e){return function(){return j1.call(this.children,e)}}function z1(e){return this.selectAll(e==null?G1:q1(typeof e=="function"?e:zu(e)))}function H1(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,u=0;u<l;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&s.push(c);return new Et(r,this._parents)}function Hu(e){return new Array(e.length)}function Y1(){return new Et(this._enter||this._groups.map(Hu),this._parents)}function ri(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}ri.prototype={constructor:ri,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 W1(e){return function(){return e}}function X1(e,n,o,r,i,a){for(var l=0,s,c=n.length,u=a.length;l<u;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new ri(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function Z1(e,n,o,r,i,a,l){var s,c,u=new Map,f=n.length,d=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)+"",u.has(m)?i[s]=c:u.set(m,c));for(s=0;s<d;++s)m=l.call(e,a[s],s,a)+"",(c=u.get(m))?(r[s]=c,c.__data__=a[s],u.delete(m)):o[s]=new ri(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&u.get(p[s])===c&&(i[s]=c)}function J1(e){return e.__data__}function Q1(e,n){if(!arguments.length)return Array.from(this,J1);var o=n?Z1:X1,r=this._parents,i=this._groups;typeof e!="function"&&(e=W1(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),u=0;u<a;++u){var f=r[u],d=i[u],p=d.length,m=eS(e.call(f,f&&f.__data__,u,r)),y=m.length,b=s[u]=new Array(y),g=l[u]=new Array(y),h=c[u]=new Array(p);o(f,d,b,g,h,m,n);for(var w=0,_=0,k,E;w<y;++w)if(k=b[w]){for(w>=_&&(_=w+1);!(E=g[_])&&++_<y;);k._next=E||null}}return l=new Et(l,r),l._enter=s,l._exit=c,l}function eS(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function tS(){return new Et(this._exit||this._groups.map(Hu),this._parents)}function nS(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 oS(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 u=o[c],f=r[c],d=u.length,p=s[c]=new Array(d),m,y=0;y<d;++y)(m=u[y]||f[y])&&(p[y]=m);for(;c<i;++c)s[c]=o[c];return new Et(s,this._parents)}function rS(){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 iS(e){e||(e=aS);function n(d,p){return d&&p?e(d.__data__,p.__data__):!d-!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),u,f=0;f<s;++f)(u=l[f])&&(c[f]=u);c.sort(n)}return new Et(i,this._parents).order()}function aS(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function lS(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function sS(){return Array.from(this)}function cS(){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 dS(){let e=0;for(const n of this)++e;return e}function uS(){return!this.node()}function fS(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 pS(e){return function(){this.removeAttribute(e)}}function mS(e){return function(){this.removeAttributeNS(e.space,e.local)}}function gS(e,n){return function(){this.setAttribute(e,n)}}function hS(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function yS(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function _S(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 bS(e,n){var o=oi(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?mS:pS:typeof n=="function"?o.local?_S:yS:o.local?hS:gS)(o,n))}function Yu(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function wS(e){return function(){this.style.removeProperty(e)}}function kS(e,n,o){return function(){this.style.setProperty(e,n,o)}}function CS(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function ES(e,n,o){return arguments.length>1?this.each((n==null?wS:typeof n=="function"?CS:kS)(e,n,o??"")):uo(this.node(),e)}function uo(e,n){return e.style.getPropertyValue(n)||Yu(e).getComputedStyle(e,null).getPropertyValue(n)}function NS(e){return function(){delete this[e]}}function SS(e,n){return function(){this[e]=n}}function vS(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function xS(e,n){return arguments.length>1?this.each((n==null?NS:typeof n=="function"?vS:SS)(e,n)):this.node()[e]}function Wu(e){return e.trim().split(/^|\s+/)}function _l(e){return e.classList||new Xu(e)}function Xu(e){this._node=e,this._names=Wu(e.getAttribute("class")||"")}Xu.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 Zu(e,n){for(var o=_l(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function Ju(e,n){for(var o=_l(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function AS(e){return function(){Zu(this,e)}}function IS(e){return function(){Ju(this,e)}}function TS(e,n){return function(){(n.apply(this,arguments)?Zu:Ju)(this,e)}}function PS(e,n){var o=Wu(e+"");if(arguments.length<2){for(var r=_l(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?TS:n?AS:IS)(o,n))}function OS(){this.textContent=""}function $S(e){return function(){this.textContent=e}}function BS(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function VS(e){return arguments.length?this.each(e==null?OS:(typeof e=="function"?BS:$S)(e)):this.node().textContent}function RS(){this.innerHTML=""}function DS(e){return function(){this.innerHTML=e}}function MS(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function LS(e){return arguments.length?this.each(e==null?RS:(typeof e=="function"?MS:DS)(e)):this.node().innerHTML}function FS(){this.nextSibling&&this.parentNode.appendChild(this)}function US(){return this.each(FS)}function KS(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function jS(){return this.each(KS)}function GS(e){var n=typeof e=="function"?e:ju(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function qS(){return null}function zS(e,n){var o=typeof e=="function"?e:ju(e),r=n==null?qS:typeof n=="function"?n:yl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function HS(){var e=this.parentNode;e&&e.removeChild(this)}function YS(){return this.each(HS)}function WS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function XS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function ZS(e){return this.select(e?XS:WS)}function JS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function QS(e){return function(n){e.call(this,n,this.__data__)}}function ev(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 tv(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 nv(e,n,o){return function(){var r=this.__on,i,a=QS(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 ov(e,n,o){var r=ev(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,u=s.length,f;c<u;++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?nv:tv,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function Qu(e,n,o){var r=Yu(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 rv(e,n){return function(){return Qu(this,e,n)}}function iv(e,n){return function(){return Qu(this,e,n.apply(this,arguments))}}function av(e,n){return this.each((typeof n=="function"?iv:rv)(e,n))}function*lv(){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 ef=[null];function Et(e,n){this._groups=e,this._parents=n}function Zo(){return new Et([[document.documentElement]],ef)}function sv(){return this}Et.prototype=Zo.prototype={constructor:Et,select:B1,selectAll:M1,selectChild:K1,selectChildren:z1,filter:H1,data:Q1,enter:Y1,exit:tS,join:nS,merge:oS,selection:sv,order:rS,sort:iS,call:lS,nodes:sS,node:cS,size:dS,empty:uS,each:fS,attr:bS,style:ES,property:xS,classed:PS,text:VS,html:LS,raise:US,lower:jS,append:GS,insert:zS,remove:YS,clone:ZS,datum:JS,on:ov,dispatch:av,[Symbol.iterator]:lv};function $t(e){return typeof e=="string"?new Et([[document.querySelector(e)]],[document.documentElement]):new Et([[e]],ef)}function cv(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Ft(e,n){if(e=cv(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 dv={passive:!1},Jo={capture:!0,passive:!1};function bl(e){e.stopImmediatePropagation()}function fo(e){e.preventDefault(),e.stopImmediatePropagation()}function tf(e){var n=e.document.documentElement,o=$t(e).on("dragstart.drag",fo,Jo);"onselectstart"in n?o.on("selectstart.drag",fo,Jo):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function nf(e,n){var o=e.document.documentElement,r=$t(e).on("dragstart.drag",null);n&&(r.on("click.drag",fo,Jo),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 ii=e=>()=>e;function wl(e,{sourceEvent:n,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:u,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:u,enumerable:!0,configurable:!0},_:{value:f}})}wl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function uv(e){return!e.ctrlKey&&!e.button}function fv(){return this.parentNode}function pv(e,n){return n??{x:e.x,y:e.y}}function mv(){return navigator.maxTouchPoints||"ontouchstart"in this}function gv(){var e=uv,n=fv,o=pv,r=mv,i={},a=ti("start","drag","end"),l=0,s,c,u,f,d=0;function p(k){k.on("mousedown.drag",m).filter(r).on("touchstart.drag",g).on("touchmove.drag",h,dv).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(k,E){if(!(f||!e.call(this,k,E))){var C=_(this,n.call(this,k,E),k,E,"mouse");C&&($t(k.view).on("mousemove.drag",y,Jo).on("mouseup.drag",b,Jo),tf(k.view),bl(k),u=!1,s=k.clientX,c=k.clientY,C("start",k))}}function y(k){if(fo(k),!u){var E=k.clientX-s,C=k.clientY-c;u=E*E+C*C>d}i.mouse("drag",k)}function b(k){$t(k.view).on("mousemove.drag mouseup.drag",null),nf(k.view,u),fo(k),i.mouse("end",k)}function g(k,E){if(e.call(this,k,E)){var C=k.changedTouches,N=n.call(this,k,E),T=C.length,D,G;for(D=0;D<T;++D)(G=_(this,N,k,E,C[D].identifier,C[D]))&&(bl(k),G("start",k,C[D]))}}function h(k){var E=k.changedTouches,C=E.length,N,T;for(N=0;N<C;++N)(T=i[E[N].identifier])&&(fo(k),T("drag",k,E[N]))}function w(k){var E=k.changedTouches,C=E.length,N,T;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),N=0;N<C;++N)(T=i[E[N].identifier])&&(bl(k),T("end",k,E[N]))}function _(k,E,C,N,T,D){var G=a.copy(),j=Ft(D||C,E),S,ee,x;if((x=o.call(k,new wl("beforestart",{sourceEvent:C,target:p,identifier:T,active:l,x:j[0],y:j[1],dx:0,dy:0,dispatch:G}),N))!=null)return S=x.x-j[0]||0,ee=x.y-j[1]||0,function q(U,Q,R){var P=j,v;switch(U){case"start":i[T]=q,v=l++;break;case"end":delete i[T],--l;case"drag":j=Ft(R||Q,E),v=l;break}G.call(U,k,new wl(U,{sourceEvent:Q,subject:x,target:p,identifier:T,active:v,x:j[0]+S,y:j[1]+ee,dx:j[0]-P[0],dy:j[1]-P[1],dispatch:G}),N)}}return p.filter=function(k){return arguments.length?(e=typeof k=="function"?k:ii(!!k),p):e},p.container=function(k){return arguments.length?(n=typeof k=="function"?k:ii(k),p):n},p.subject=function(k){return arguments.length?(o=typeof k=="function"?k:ii(k),p):o},p.touchable=function(k){return arguments.length?(r=typeof k=="function"?k:ii(!!k),p):r},p.on=function(){var k=a.on.apply(a,arguments);return k===a?p:k},p.clickDistance=function(k){return arguments.length?(d=(k=+k)*k,p):Math.sqrt(d)},p}function kl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function of(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function Qo(){}var er=.7,ai=1/er,po="\\s*([+-]?\\d+)\\s*",tr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Ut="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",hv=/^#([0-9a-f]{3,8})$/,yv=new RegExp(`^rgb\\(${po},${po},${po}\\)$`),_v=new RegExp(`^rgb\\(${Ut},${Ut},${Ut}\\)$`),bv=new RegExp(`^rgba\\(${po},${po},${po},${tr}\\)$`),wv=new RegExp(`^rgba\\(${Ut},${Ut},${Ut},${tr}\\)$`),kv=new RegExp(`^hsl\\(${tr},${Ut},${Ut}\\)$`),Cv=new RegExp(`^hsla\\(${tr},${Ut},${Ut},${tr}\\)$`),rf={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};kl(Qo,Pn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:af,formatHex:af,formatHex8:Ev,formatHsl:Nv,formatRgb:lf,toString:lf});function af(){return this.rgb().formatHex()}function Ev(){return this.rgb().formatHex8()}function Nv(){return ff(this).formatHsl()}function lf(){return this.rgb().formatRgb()}function Pn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=hv.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?sf(n):o===3?new wt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?li(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?li(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=yv.exec(e))?new wt(n[1],n[2],n[3],1):(n=_v.exec(e))?new wt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=bv.exec(e))?li(n[1],n[2],n[3],n[4]):(n=wv.exec(e))?li(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=kv.exec(e))?uf(n[1],n[2]/100,n[3]/100,1):(n=Cv.exec(e))?uf(n[1],n[2]/100,n[3]/100,n[4]):rf.hasOwnProperty(e)?sf(rf[e]):e==="transparent"?new wt(NaN,NaN,NaN,0):null}function sf(e){return new wt(e>>16&255,e>>8&255,e&255,1)}function li(e,n,o,r){return r<=0&&(e=n=o=NaN),new wt(e,n,o,r)}function Sv(e){return e instanceof Qo||(e=Pn(e)),e?(e=e.rgb(),new wt(e.r,e.g,e.b,e.opacity)):new wt}function Cl(e,n,o,r){return arguments.length===1?Sv(e):new wt(e,n,o,r??1)}function wt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}kl(wt,Cl,of(Qo,{brighter(e){return e=e==null?ai:Math.pow(ai,e),new wt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?er:Math.pow(er,e),new wt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new wt(On(this.r),On(this.g),On(this.b),si(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:cf,formatHex:cf,formatHex8:vv,formatRgb:df,toString:df}));function cf(){return`#${$n(this.r)}${$n(this.g)}${$n(this.b)}`}function vv(){return`#${$n(this.r)}${$n(this.g)}${$n(this.b)}${$n((isNaN(this.opacity)?1:this.opacity)*255)}`}function df(){const e=si(this.opacity);return`${e===1?"rgb(":"rgba("}${On(this.r)}, ${On(this.g)}, ${On(this.b)}${e===1?")":`, ${e})`}`}function si(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function On(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function $n(e){return e=On(e),(e<16?"0":"")+e.toString(16)}function uf(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Bt(e,n,o,r)}function ff(e){if(e instanceof Bt)return new Bt(e.h,e.s,e.l,e.opacity);if(e instanceof Qo||(e=Pn(e)),!e)return new Bt;if(e instanceof Bt)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 Bt(l,s,c,e.opacity)}function xv(e,n,o,r){return arguments.length===1?ff(e):new Bt(e,n,o,r??1)}function Bt(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}kl(Bt,xv,of(Qo,{brighter(e){return e=e==null?ai:Math.pow(ai,e),new Bt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?er:Math.pow(er,e),new Bt(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 wt(El(e>=240?e-240:e+120,i,r),El(e,i,r),El(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Bt(pf(this.h),ci(this.s),ci(this.l),si(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=si(this.opacity);return`${e===1?"hsl(":"hsla("}${pf(this.h)}, ${ci(this.s)*100}%, ${ci(this.l)*100}%${e===1?")":`, ${e})`}`}}));function pf(e){return e=(e||0)%360,e<0?e+360:e}function ci(e){return Math.max(0,Math.min(1,e||0))}function El(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 Nl=e=>()=>e;function Av(e,n){return function(o){return e+o*n}}function Iv(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 Tv(e){return(e=+e)==1?mf:function(n,o){return o-n?Iv(n,o,e):Nl(isNaN(n)?o:n)}}function mf(e,n){var o=n-e;return o?Av(e,o):Nl(isNaN(e)?n:e)}const di=function e(n){var o=Tv(n);function r(i,a){var l=o((i=Cl(i)).r,(a=Cl(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),u=mf(i.opacity,a.opacity);return function(f){return i.r=l(f),i.g=s(f),i.b=c(f),i.opacity=u(f),i+""}}return r.gamma=e,r}(1);function Pv(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 Ov(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function $v(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]=nr(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 Bv(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Kt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function Vv(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]=nr(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Sl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,vl=new RegExp(Sl.source,"g");function Rv(e){return function(){return e}}function Dv(e){return function(n){return e(n)+""}}function gf(e,n){var o=Sl.lastIndex=vl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=Sl.exec(e))&&(i=vl.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:Kt(r,i)})),o=vl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?Dv(c[0].x):Rv(n):(n=c.length,function(u){for(var f=0,d;f<n;++f)s[(d=c[f]).i]=d.x(u);return s.join("")})}function nr(e,n){var o=typeof n,r;return n==null||o==="boolean"?Nl(n):(o==="number"?Kt:o==="string"?(r=Pn(n))?(n=r,di):gf:n instanceof Pn?di:n instanceof Date?Bv:Ov(n)?Pv:Array.isArray(n)?$v:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?Vv:Kt)(e,n)}var hf=180/Math.PI,xl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function yf(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)*hf,skewX:Math.atan(c)*hf,scaleX:l,scaleY:s}}var ui;function Mv(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?xl:yf(n.a,n.b,n.c,n.d,n.e,n.f)}function Lv(e){return e==null||(ui||(ui=document.createElementNS("http://www.w3.org/2000/svg","g")),ui.setAttribute("transform",e),!(e=ui.transform.baseVal.consolidate()))?xl:(e=e.matrix,yf(e.a,e.b,e.c,e.d,e.e,e.f))}function _f(e,n,o,r){function i(u){return u.length?u.pop()+" ":""}function a(u,f,d,p,m,y){if(u!==d||f!==p){var b=m.push("translate(",null,n,null,o);y.push({i:b-4,x:Kt(u,d)},{i:b-2,x:Kt(f,p)})}else(d||p)&&m.push("translate("+d+n+p+o)}function l(u,f,d,p){u!==f?(u-f>180?f+=360:f-u>180&&(u+=360),p.push({i:d.push(i(d)+"rotate(",null,r)-2,x:Kt(u,f)})):f&&d.push(i(d)+"rotate("+f+r)}function s(u,f,d,p){u!==f?p.push({i:d.push(i(d)+"skewX(",null,r)-2,x:Kt(u,f)}):f&&d.push(i(d)+"skewX("+f+r)}function c(u,f,d,p,m,y){if(u!==d||f!==p){var b=m.push(i(m)+"scale(",null,",",null,")");y.push({i:b-4,x:Kt(u,d)},{i:b-2,x:Kt(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return function(u,f){var d=[],p=[];return u=e(u),f=e(f),a(u.translateX,u.translateY,f.translateX,f.translateY,d,p),l(u.rotate,f.rotate,d,p),s(u.skewX,f.skewX,d,p),c(u.scaleX,u.scaleY,f.scaleX,f.scaleY,d,p),u=f=null,function(m){for(var y=-1,b=p.length,g;++y<b;)d[(g=p[y]).i]=g.x(m);return d.join("")}}}var Fv=_f(Mv,"px, ","px)","deg)"),Uv=_f(Lv,", ",")",")"),Kv=1e-12;function bf(e){return((e=Math.exp(e))+1/e)/2}function jv(e){return((e=Math.exp(e))-1/e)/2}function Gv(e){return((e=Math.exp(2*e))-1)/(e+1)}const fi=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],u=a[2],f=l[0],d=l[1],p=l[2],m=f-s,y=d-c,b=m*m+y*y,g,h;if(b<Kv)h=Math.log(p/u)/n,g=function(N){return[s+N*m,c+N*y,u*Math.exp(n*N*h)]};else{var w=Math.sqrt(b),_=(p*p-u*u+r*b)/(2*u*o*w),k=(p*p-u*u-r*b)/(2*p*o*w),E=Math.log(Math.sqrt(_*_+1)-_),C=Math.log(Math.sqrt(k*k+1)-k);h=(C-E)/n,g=function(N){var T=N*h,D=bf(E),G=u/(o*w)*(D*Gv(n*T+E)-jv(E));return[s+G*m,c+G*y,u*D/bf(n*T+E)]}}return g.duration=h*1e3*n/Math.SQRT2,g}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var mo=0,or=0,rr=0,wf=1e3,pi,ir,mi=0,Bn=0,gi=0,ar=typeof performance=="object"&&performance.now?performance:Date,kf=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Al(){return Bn||(kf(qv),Bn=ar.now()+gi)}function qv(){Bn=0}function hi(){this._call=this._time=this._next=null}hi.prototype=Cf.prototype={constructor:hi,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Al():+o)+(n==null?0:+n),!this._next&&ir!==this&&(ir?ir._next=this:pi=this,ir=this),this._call=e,this._time=o,Il()},stop:function(){this._call&&(this._call=null,this._time=1/0,Il())}};function Cf(e,n,o){var r=new hi;return r.restart(e,n,o),r}function zv(){Al(),++mo;for(var e=pi,n;e;)(n=Bn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--mo}function Ef(){Bn=(mi=ar.now())+gi,mo=or=0;try{zv()}finally{mo=0,Yv(),Bn=0}}function Hv(){var e=ar.now(),n=e-mi;n>wf&&(gi-=n,mi=e)}function Yv(){for(var e,n=pi,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:pi=o);ir=e,Il(r)}function Il(e){if(!mo){or&&(or=clearTimeout(or));var n=e-Bn;n>24?(e<1/0&&(or=setTimeout(Ef,e-ar.now()-gi)),rr&&(rr=clearInterval(rr))):(rr||(mi=ar.now(),rr=setInterval(Hv,wf)),mo=1,kf(Ef))}}function Nf(e,n,o){var r=new hi;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var Wv=ti("start","end","cancel","interrupt"),Xv=[],Sf=0,vf=1,Tl=2,yi=3,xf=4,Pl=5,_i=6;function bi(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;Zv(e,o,{name:n,index:r,group:i,on:Wv,tween:Xv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Sf})}function Ol(e,n){var o=Vt(e,n);if(o.state>Sf)throw new Error("too late; already scheduled");return o}function jt(e,n){var o=Vt(e,n);if(o.state>yi)throw new Error("too late; already running");return o}function Vt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function Zv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Cf(a,0,o.time);function a(u){o.state=vf,o.timer.restart(l,o.delay,o.time),o.delay<=u&&l(u-o.delay)}function l(u){var f,d,p,m;if(o.state!==vf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===yi)return Nf(l);m.state===xf?(m.state=_i,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=_i,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Nf(function(){o.state===yi&&(o.state=xf,o.timer.restart(s,o.delay,o.time),s(u))}),o.state=Tl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Tl){for(o.state=yi,i=new Array(p=o.tween.length),f=0,d=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++d]=m);i.length=d+1}}function s(u){for(var f=u<o.duration?o.ease.call(null,u/o.duration):(o.timer.restart(c),o.state=Pl,1),d=-1,p=i.length;++d<p;)i[d].call(e,f);o.state===Pl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=_i,o.timer.stop(),delete r[n];for(var u in r)return;delete e.__transition}}function wi(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>Tl&&r.state<Pl,r.state=_i,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function Jv(e){return this.each(function(){wi(this,e)})}function Qv(e,n){var o,r;return function(){var i=jt(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 ex(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=jt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,u=i.length;c<u;++c)if(i[c].name===n){i[c]=s;break}c===u&&i.push(s)}a.tween=i}}function tx(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Vt(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?Qv:ex)(o,e,n))}function $l(e,n,o){var r=e._id;return e.each(function(){var i=jt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return Vt(i,r).value[n]}}function Af(e,n){var o;return(typeof n=="number"?Kt:n instanceof Pn?di:(o=Pn(n))?(n=o,di):gf)(e,n)}function nx(e){return function(){this.removeAttribute(e)}}function ox(e){return function(){this.removeAttributeNS(e.space,e.local)}}function rx(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 ix(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 ax(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 lx(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 sx(e,n){var o=oi(e),r=o==="transform"?Uv:Af;return this.attrTween(e,typeof n=="function"?(o.local?lx:ax)(o,r,$l(this,"attr."+e,n)):n==null?(o.local?ox:nx)(o):(o.local?ix:rx)(o,r,n))}function cx(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function dx(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function ux(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&dx(e,a)),o}return i._value=n,i}function fx(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&cx(e,a)),o}return i._value=n,i}function px(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=oi(e);return this.tween(o,(r.local?ux:fx)(r,n))}function mx(e,n){return function(){Ol(this,e).delay=+n.apply(this,arguments)}}function gx(e,n){return n=+n,function(){Ol(this,e).delay=n}}function hx(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?mx:gx)(n,e)):Vt(this.node(),n).delay}function yx(e,n){return function(){jt(this,e).duration=+n.apply(this,arguments)}}function _x(e,n){return n=+n,function(){jt(this,e).duration=n}}function bx(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?yx:_x)(n,e)):Vt(this.node(),n).duration}function wx(e,n){if(typeof n!="function")throw new Error;return function(){jt(this,e).ease=n}}function kx(e){var n=this._id;return arguments.length?this.each(wx(n,e)):Vt(this.node(),n).ease}function Cx(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;jt(this,e).ease=o}}function Ex(e){if(typeof e!="function")throw new Error;return this.each(Cx(this._id,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,u=0;u<l;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&s.push(c);return new tn(r,this._parents,this._name,this._id)}function Sx(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],u=o[s],f=c.length,d=l[s]=new Array(f),p,m=0;m<f;++m)(p=c[m]||u[m])&&(d[m]=p);for(;s<r;++s)l[s]=n[s];return new tn(l,this._parents,this._name,this._id)}function vx(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 xx(e,n,o){var r,i,a=vx(n)?Ol:jt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Ax(e,n){var o=this._id;return arguments.length<2?Vt(this.node(),o).on.on(e):this.each(xx(o,e,n))}function Ix(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Tx(){return this.on("end.remove",Ix(this._id))}function Px(e){var n=this._name,o=this._id;typeof e!="function"&&(e=yl(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,u=a[l]=new Array(c),f,d,p=0;p<c;++p)(f=s[p])&&(d=e.call(f,f.__data__,p,s))&&("__data__"in f&&(d.__data__=f.__data__),u[p]=d,bi(u[p],n,o,p,u,Vt(f,o)));return new tn(a,this._parents,n,o)}function Ox(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Gu(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],u=c.length,f,d=0;d<u;++d)if(f=c[d]){for(var p=e.call(f,f.__data__,d,c),m,y=Vt(f,o),b=0,g=p.length;b<g;++b)(m=p[b])&&bi(m,n,o,b,p,y);a.push(p),l.push(f)}return new tn(a,l,n,o)}var $x=Zo.prototype.constructor;function Bx(){return new $x(this._groups,this._parents)}function Vx(e,n){var o,r,i;return function(){var a=uo(this,e),l=(this.style.removeProperty(e),uo(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function If(e){return function(){this.style.removeProperty(e)}}function Rx(e,n,o){var r,i=o+"",a;return function(){var l=uo(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function Dx(e,n,o){var r,i,a;return function(){var l=uo(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),uo(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function Mx(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=jt(this,e),u=c.on,f=c.value[a]==null?s||(s=If(n)):void 0;(u!==o||i!==f)&&(r=(o=u).copy()).on(l,i=f),c.on=r}}function Lx(e,n,o){var r=(e+="")=="transform"?Fv:Af;return n==null?this.styleTween(e,Vx(e,r)).on("end.style."+e,If(e)):typeof n=="function"?this.styleTween(e,Dx(e,r,$l(this,"style."+e,n))).each(Mx(this._id,e)):this.styleTween(e,Rx(e,r,n),o).on("end.style."+e,null)}function Fx(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function Ux(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&Fx(e,l,o)),r}return a._value=n,a}function Kx(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,Ux(e,n,o??""))}function jx(e){return function(){this.textContent=e}}function Gx(e){return function(){var n=e(this);this.textContent=n??""}}function qx(e){return this.tween("text",typeof e=="function"?Gx($l(this,"text",e)):jx(e==null?"":e+""))}function zx(e){return function(n){this.textContent=e.call(this,n)}}function Hx(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&zx(i)),n}return r._value=e,r}function Yx(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,Hx(e))}function Wx(){for(var e=this._name,n=this._id,o=Tf(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,u=0;u<s;++u)if(c=l[u]){var f=Vt(c,n);bi(c,e,o,u,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new tn(r,this._parents,e,o)}function Xx(){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 u=jt(this,r),f=u.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),u.on=n}),i===0&&a()})}var Zx=0;function tn(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Tf(){return++Zx}var nn=Zo.prototype;tn.prototype={constructor:tn,select:Px,selectAll:Ox,selectChild:nn.selectChild,selectChildren:nn.selectChildren,filter:Nx,merge:Sx,selection:Bx,transition:Wx,call:nn.call,nodes:nn.nodes,node:nn.node,size:nn.size,empty:nn.empty,each:nn.each,on:Ax,attr:sx,attrTween:px,style:Lx,styleTween:Kx,text:qx,textTween:Yx,remove:Tx,tween:tx,delay:hx,duration:bx,ease:kx,easeVarying:Ex,end:Xx,[Symbol.iterator]:nn[Symbol.iterator]};function Jx(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var Qx={time:null,delay:0,duration:250,ease:Jx};function eA(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 tA(e){var n,o;e instanceof tn?(n=e._id,e=e._name):(n=Tf(),(o=Qx).time=Al(),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,u=0;u<s;++u)(c=l[u])&&bi(c,e,n,u,l,o||eA(c,n));return new tn(r,this._parents,e,n)}Zo.prototype.interrupt=Jv,Zo.prototype.transition=tA;const ki=e=>()=>e;function nA(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 on(e,n,o){this.k=e,this.x=n,this.y=o}on.prototype={constructor:on,scale:function(e){return e===1?this:new on(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new on(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 go=new on(1,0,0);on.prototype;function Bl(e){e.stopImmediatePropagation()}function lr(e){e.preventDefault(),e.stopImmediatePropagation()}function oA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function rA(){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 Pf(){return this.__zoom||go}function iA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function aA(){return navigator.maxTouchPoints||"ontouchstart"in this}function lA(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 sA(){var e=oA,n=rA,o=lA,r=iA,i=aA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=fi,u=ti("start","zoom","end"),f,d,p,m=500,y=150,b=0,g=10;function h(x){x.property("__zoom",Pf).on("wheel.zoom",T,{passive:!1}).on("mousedown.zoom",D).on("dblclick.zoom",G).filter(i).on("touchstart.zoom",j).on("touchmove.zoom",S).on("touchend.zoom touchcancel.zoom",ee).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}h.transform=function(x,q,U,Q){var R=x.selection?x.selection():x;R.property("__zoom",Pf),x!==R?E(x,q,U,Q):R.interrupt().each(function(){C(this,arguments).event(Q).start().zoom(null,typeof q=="function"?q.apply(this,arguments):q).end()})},h.scaleBy=function(x,q,U,Q){h.scaleTo(x,function(){var R=this.__zoom.k,P=typeof q=="function"?q.apply(this,arguments):q;return R*P},U,Q)},h.scaleTo=function(x,q,U,Q){h.transform(x,function(){var R=n.apply(this,arguments),P=this.__zoom,v=U==null?k(R):typeof U=="function"?U.apply(this,arguments):U,I=P.invert(v),A=typeof q=="function"?q.apply(this,arguments):q;return o(_(w(P,A),v,I),R,l)},U,Q)},h.translateBy=function(x,q,U,Q){h.transform(x,function(){return o(this.__zoom.translate(typeof q=="function"?q.apply(this,arguments):q,typeof U=="function"?U.apply(this,arguments):U),n.apply(this,arguments),l)},null,Q)},h.translateTo=function(x,q,U,Q,R){h.transform(x,function(){var P=n.apply(this,arguments),v=this.__zoom,I=Q==null?k(P):typeof Q=="function"?Q.apply(this,arguments):Q;return o(go.translate(I[0],I[1]).scale(v.k).translate(typeof q=="function"?-q.apply(this,arguments):-q,typeof U=="function"?-U.apply(this,arguments):-U),P,l)},Q,R)};function w(x,q){return q=Math.max(a[0],Math.min(a[1],q)),q===x.k?x:new on(q,x.x,x.y)}function _(x,q,U){var Q=q[0]-U[0]*x.k,R=q[1]-U[1]*x.k;return Q===x.x&&R===x.y?x:new on(x.k,Q,R)}function k(x){return[(+x[0][0]+ +x[1][0])/2,(+x[0][1]+ +x[1][1])/2]}function E(x,q,U,Q){x.on("start.zoom",function(){C(this,arguments).event(Q).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(Q).end()}).tween("zoom",function(){var R=this,P=arguments,v=C(R,P).event(Q),I=n.apply(R,P),A=U==null?k(I):typeof U=="function"?U.apply(R,P):U,W=Math.max(I[1][0]-I[0][0],I[1][1]-I[0][1]),H=R.__zoom,te=typeof q=="function"?q.apply(R,P):q,oe=c(H.invert(A).concat(W/H.k),te.invert(A).concat(W/te.k));return function(se){if(se===1)se=te;else{var ye=oe(se),X=W/ye[2];se=new on(X,A[0]-ye[0]*X,A[1]-ye[1]*X)}v.zoom(null,se)}})}function C(x,q,U){return!U&&x.__zooming||new N(x,q)}function N(x,q){this.that=x,this.args=q,this.active=0,this.sourceEvent=null,this.extent=n.apply(x,q),this.taps=0}N.prototype={event:function(x){return x&&(this.sourceEvent=x),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(x,q){return this.mouse&&x!=="mouse"&&(this.mouse[1]=q.invert(this.mouse[0])),this.touch0&&x!=="touch"&&(this.touch0[1]=q.invert(this.touch0[0])),this.touch1&&x!=="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(x){var q=$t(this.that).datum();u.call(x,this.that,new nA(x,{sourceEvent:this.sourceEvent,target:h,transform:this.that.__zoom,dispatch:u}),q)}};function T(x,...q){if(!e.apply(this,arguments))return;var U=C(this,q).event(x),Q=this.__zoom,R=Math.max(a[0],Math.min(a[1],Q.k*Math.pow(2,r.apply(this,arguments)))),P=Ft(x);if(U.wheel)(U.mouse[0][0]!==P[0]||U.mouse[0][1]!==P[1])&&(U.mouse[1]=Q.invert(U.mouse[0]=P)),clearTimeout(U.wheel);else{if(Q.k===R)return;U.mouse=[P,Q.invert(P)],wi(this),U.start()}lr(x),U.wheel=setTimeout(v,y),U.zoom("mouse",o(_(w(Q,R),U.mouse[0],U.mouse[1]),U.extent,l));function v(){U.wheel=null,U.end()}}function D(x,...q){if(p||!e.apply(this,arguments))return;var U=x.currentTarget,Q=C(this,q,!0).event(x),R=$t(x.view).on("mousemove.zoom",A,!0).on("mouseup.zoom",W,!0),P=Ft(x,U),v=x.clientX,I=x.clientY;tf(x.view),Bl(x),Q.mouse=[P,this.__zoom.invert(P)],wi(this),Q.start();function A(H){if(lr(H),!Q.moved){var te=H.clientX-v,oe=H.clientY-I;Q.moved=te*te+oe*oe>b}Q.event(H).zoom("mouse",o(_(Q.that.__zoom,Q.mouse[0]=Ft(H,U),Q.mouse[1]),Q.extent,l))}function W(H){R.on("mousemove.zoom mouseup.zoom",null),nf(H.view,Q.moved),lr(H),Q.event(H).end()}}function G(x,...q){if(e.apply(this,arguments)){var U=this.__zoom,Q=Ft(x.changedTouches?x.changedTouches[0]:x,this),R=U.invert(Q),P=U.k*(x.shiftKey?.5:2),v=o(_(w(U,P),Q,R),n.apply(this,q),l);lr(x),s>0?$t(this).transition().duration(s).call(E,v,Q,x):$t(this).call(h.transform,v,Q,x)}}function j(x,...q){if(e.apply(this,arguments)){var U=x.touches,Q=U.length,R=C(this,q,x.changedTouches.length===Q).event(x),P,v,I,A;for(Bl(x),v=0;v<Q;++v)I=U[v],A=Ft(I,this),A=[A,this.__zoom.invert(A),I.identifier],R.touch0?!R.touch1&&R.touch0[2]!==A[2]&&(R.touch1=A,R.taps=0):(R.touch0=A,P=!0,R.taps=1+!!f);f&&(f=clearTimeout(f)),P&&(R.taps<2&&(d=A[0],f=setTimeout(function(){f=null},m)),wi(this),R.start())}}function S(x,...q){if(this.__zooming){var U=C(this,q).event(x),Q=x.changedTouches,R=Q.length,P,v,I,A;for(lr(x),P=0;P<R;++P)v=Q[P],I=Ft(v,this),U.touch0&&U.touch0[2]===v.identifier?U.touch0[0]=I:U.touch1&&U.touch1[2]===v.identifier&&(U.touch1[0]=I);if(v=U.that.__zoom,U.touch1){var W=U.touch0[0],H=U.touch0[1],te=U.touch1[0],oe=U.touch1[1],se=(se=te[0]-W[0])*se+(se=te[1]-W[1])*se,ye=(ye=oe[0]-H[0])*ye+(ye=oe[1]-H[1])*ye;v=w(v,Math.sqrt(se/ye)),I=[(W[0]+te[0])/2,(W[1]+te[1])/2],A=[(H[0]+oe[0])/2,(H[1]+oe[1])/2]}else if(U.touch0)I=U.touch0[0],A=U.touch0[1];else return;U.zoom("touch",o(_(v,I,A),U.extent,l))}}function ee(x,...q){if(this.__zooming){var U=C(this,q).event(x),Q=x.changedTouches,R=Q.length,P,v;for(Bl(x),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),P=0;P<R;++P)v=Q[P],U.touch0&&U.touch0[2]===v.identifier?delete U.touch0:U.touch1&&U.touch1[2]===v.identifier&&delete U.touch1;if(U.touch1&&!U.touch0&&(U.touch0=U.touch1,delete U.touch1),U.touch0)U.touch0[1]=this.__zoom.invert(U.touch0[0]);else if(U.end(),U.taps===2&&(v=Ft(v,this),Math.hypot(d[0]-v[0],d[1]-v[1])<g)){var I=$t(this).on("dblclick.zoom");I&&I.apply(this,arguments)}}}return h.wheelDelta=function(x){return arguments.length?(r=typeof x=="function"?x:ki(+x),h):r},h.filter=function(x){return arguments.length?(e=typeof x=="function"?x:ki(!!x),h):e},h.touchable=function(x){return arguments.length?(i=typeof x=="function"?x:ki(!!x),h):i},h.extent=function(x){return arguments.length?(n=typeof x=="function"?x:ki([[+x[0][0],+x[0][1]],[+x[1][0],+x[1][1]]]),h):n},h.scaleExtent=function(x){return arguments.length?(a[0]=+x[0],a[1]=+x[1],h):[a[0],a[1]]},h.translateExtent=function(x){return arguments.length?(l[0][0]=+x[0][0],l[1][0]=+x[1][0],l[0][1]=+x[0][1],l[1][1]=+x[1][1],h):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},h.constrain=function(x){return arguments.length?(o=x,h):o},h.duration=function(x){return arguments.length?(s=+x,h):s},h.interpolate=function(x){return arguments.length?(c=x,h):c},h.on=function(){var x=u.on.apply(u,arguments);return x===u?h:x},h.clickDistance=function(x){return arguments.length?(b=(x=+x)*x,h):Math.sqrt(b)},h.tapDistance=function(x){return arguments.length?(g=+x,h):g},h}var Ee=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(Ee||{}),Vl=(e=>(e.Partial="partial",e.Full="full",e))(Vl||{}),Vn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(Vn||{}),fn=(e=>(e.Strict="strict",e.Loose="loose",e))(fn||{}),sr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(sr||{}),cr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(cr||{}),Of=(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))(Of||{});const cA=["INPUT","SELECT","TEXTAREA"],dA=typeof document<"u"?document:null;function Rl(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 cA.includes(r==null?void 0:r.nodeName)||i||!!a}function uA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function $f(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 aA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=lA(o.code,e);return Array.isArray(e)?e.some(i=>Af(o[r],i,n,o.type==="keyup")):Af(o[r],e,n,o.type==="keyup")}}function lA(e,n){return n.includes(e)?"code":"key"}function ir(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??rA),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),(u,f)=>{typeof f=="boolean"&&typeof u!="boolean"&&s(),l=c(u)},{immediate:!0}),Bu(["blur","contextmenu"],s),Vu((...u)=>l(...u),u=>{var f,d;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=iA(u),(!i||i&&!p)&&Tl(u))return;const b=((d=(f=u.composedPath)==null?void 0:f.call(u))==null?void 0:d[0])||u.target,g=(b==null?void 0:b.nodeName)==="BUTTON"||(b==null?void 0:b.nodeName)==="A";!m&&(i||!g)&&u.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Vu((...u)=>l(...u),u=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&Tl(u))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.toValue(e)===!0}function c(u){return u===null?(s(),()=>!1):typeof u=="boolean"?(s(),r.value=u,()=>!1):Array.isArray(u)||typeof u=="string"?aA(u,a):u}return r}const If="vue-flow__node-desc",Pf="vue-flow__edge-desc",sA="vue-flow__aria-live",Tf=["Enter"," ","Escape"],uo={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function yi(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 $n(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function Of(e,n){return{x:$n(e.x,n[0][0],n[1][0]),y:$n(e.y,n[0][1],n[1][1])}}function $f(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function dn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function Bn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!dn(e)}function ar(e){return Bn(e)&&"computedPosition"in e}function wi(e){return!Number.isNaN(e)&&Number.isFinite(e)}function cA(e){return wi(e.width)&&wi(e.height)&&wi(e.x)&&wi(e.y)}function dA(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:et(e.data)?e.data:{},events:t.markRaw(et(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Bf(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:et(e.data)?e.data:{},events:t.markRaw(et(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 Vf(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 uA(...e){if(e.length===3){const[a,l,s]=e;return Vf(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>dn(a)&&a.source===r).map(a=>o.find(l=>Bn(l)&&l.id===a.target))}function fA(...e){if(e.length===3){const[a,l,s]=e;return Vf(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>dn(a)&&a.target===r).map(a=>o.find(l=>Bn(l)&&l.id===a.source))}function Rf({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function pA(e,n){return n.some(o=>dn(o)&&o.source===e.source&&o.target===e.target&&(o.sourceHandle===e.sourceHandle||!o.sourceHandle&&!e.sourceHandle)&&(o.targetHandle===e.targetHandle||!o.targetHandle&&!e.targetHandle))}function Ol({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function lr({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?Ci(s,l):s}function mA(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 Df({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function gA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Mf(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=mA(n,Df({...r.computedPosition,...r.dimensions}))}return gA(n)}function Lf(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...lr(n,o),width:n.width/o.zoom,height:n.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:u=!0,hidden:f=!1}=s,d=c.width??s.width??null,p=c.height??s.height??null;if(i&&!u||f)continue;const m=_i(a,yi(s)),y=d===null||p===null,b=r&&m>0,g=(d??0)*(p??0);(y||b||m>=g||s.dragging)&&l.push(s)}return l}function Ff(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 Uf(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)),u=Math.min(s,c),f=$n(u,r,i),d=e.x+e.width/2,p=e.y+e.height/2,m=n/2-d*f+(l.x??0),y=o/2-p*f+(l.y??0);return{x:m,y,zoom:f}}function hA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function Kf(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:Kf(o,n):!1}function sr(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function jf(e,n,o){return e<n?$n(Math.abs(e-n),1,n)/n:e>o?-$n(Math.abs(e-o),1,n)/n:0}function Gf(e,n,o=15,r=40){const i=jf(e.x,r,n.width-r)*o,a=jf(e.y,r,n.height-r)*o;return[i,a]}function $l(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 qf(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(ar(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&&ar(c)&&$l(l,c)}break;case"dimensions":if(ar(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&&ar(c)&&(!!c.dimensions.width&&!!c.dimensions.height?$l(l,c):t.nextTick(()=>{$l(l,c)}))}break}return n}function un(e,n){return{id:e,type:"select",selected:n}}function zf(e){return{item:e,type:"add"}}function Hf(e){return{id:e,type:"remove"}}function Yf(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function fn(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(un(a.id,l)))}return r}function we(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 Wr(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function Wf(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 yA(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!Kf(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 Bl({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 Xf(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"?Xf(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 at(Qe.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]=Xf(i.padding),u=(r==null?void 0:r.computedPosition.x)||0,f=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+u+c,i.range[0][1]+f+a],[i.range[1][0]+u-l,i.range[1][1]+f-s]]}return i==="parent"?[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]]:i}function wA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function Vl(e,n,o,r,i){const a=wA(e.dimensions,bA(e,o,r,i)),l=Of(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 fo(e,n,o=ke.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??NA(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case ke.Top:return{x:i+l/2,y:a};case ke.Right:return{x:i+l,y:a+s/2};case ke.Bottom:return{x:i+l/2,y:a+s};case ke.Left:return{x:i,y:a+s/2}}}function Zf(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function kA({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const u={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)};u.x===u.x2&&(u.x2+=1),u.y===u.y2&&(u.y2+=1);const f=Df({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),d=Math.max(0,Math.min(f.x2,u.x2)-Math.max(f.x,u.x)),p=Math.max(0,Math.min(f.y2,u.y2)-Math.max(f.y,u.y));return Math.ceil(d*p)>0}function CA(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 Qe=(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))(Qe||{});const Jf={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 fA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=pA(o.code,e);return Array.isArray(e)?e.some(i=>$f(o[r],i,n,o.type==="keyup")):$f(o[r],e,n,o.type==="keyup")}}function pA(e,n){return n.includes(e)?"code":"key"}function dr(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??dA),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),(u,f)=>{typeof f=="boolean"&&typeof u!="boolean"&&s(),l=c(u)},{immediate:!0}),Lu(["blur","contextmenu"],s),Fu((...u)=>l(...u),u=>{var f,d;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=uA(u),(!i||i&&!p)&&Rl(u))return;const b=((d=(f=u.composedPath)==null?void 0:f.call(u))==null?void 0:d[0])||u.target,g=(b==null?void 0:b.nodeName)==="BUTTON"||(b==null?void 0:b.nodeName)==="A";!m&&(i||!g)&&u.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Fu((...u)=>l(...u),u=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&Rl(u))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.toValue(e)===!0}function c(u){return u===null?(s(),()=>!1):typeof u=="boolean"?(s(),r.value=u,()=>!1):Array.isArray(u)||typeof u=="string"?fA(u,a):u}return r}const Bf="vue-flow__node-desc",Vf="vue-flow__edge-desc",mA="vue-flow__aria-live",Rf=["Enter"," ","Escape"],ho={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Ci(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Ei(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 Ni(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Rn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function Df(e,n){return{x:Rn(e.x,n[0][0],n[1][0]),y:Rn(e.y,n[0][1],n[1][1])}}function Mf(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function pn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function Dn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!pn(e)}function ur(e){return Dn(e)&&"computedPosition"in e}function Si(e){return!Number.isNaN(e)&&Number.isFinite(e)}function gA(e){return Si(e.width)&&Si(e.height)&&Si(e.x)&&Si(e.y)}function hA(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:nt(e.data)?e.data:{},events:t.markRaw(nt(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Lf(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:nt(e.data)?e.data:{},events:t.markRaw(nt(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 Ff(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 yA(...e){if(e.length===3){const[a,l,s]=e;return Ff(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>pn(a)&&a.source===r).map(a=>o.find(l=>Dn(l)&&l.id===a.target))}function _A(...e){if(e.length===3){const[a,l,s]=e;return Ff(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>pn(a)&&a.target===r).map(a=>o.find(l=>Dn(l)&&l.id===a.source))}function Uf({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function bA(e,n){return n.some(o=>pn(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 Dl({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function fr({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?xi(s,l):s}function wA(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 Kf({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function kA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function jf(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=wA(n,Kf({...r.computedPosition,...r.dimensions}))}return kA(n)}function Gf(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...fr(n,o),width:n.width/o.zoom,height:n.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:u=!0,hidden:f=!1}=s,d=c.width??s.width??null,p=c.height??s.height??null;if(i&&!u||f)continue;const m=Ei(a,Ci(s)),y=d===null||p===null,b=r&&m>0,g=(d??0)*(p??0);(y||b||m>=g||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 zf(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)),u=Math.min(s,c),f=Rn(u,r,i),d=e.x+e.width/2,p=e.y+e.height/2,m=n/2-d*f+(l.x??0),y=o/2-p*f+(l.y??0);return{x:m,y,zoom:f}}function CA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function Hf(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:Hf(o,n):!1}function pr(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function Yf(e,n,o){return e<n?Rn(Math.abs(e-n),1,n)/n:e>o?-Rn(Math.abs(e-o),1,n)/n:0}function Wf(e,n,o=15,r=40){const i=Yf(e.x,r,n.width-r)*o,a=Yf(e.y,r,n.height-r)*o;return[i,a]}function Ml(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 Xf(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(ur(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&&ur(c)&&Ml(l,c)}break;case"dimensions":if(ur(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&&ur(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Ml(l,c):t.nextTick(()=>{Ml(l,c)}))}break}return n}function mn(e,n){return{id:e,type:"select",selected:n}}function Zf(e){return{item:e,type:"add"}}function Jf(e){return{id:e,type:"remove"}}function Qf(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function gn(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(mn(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 ei(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function ep(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 EA(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!Hf(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 Ll({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 tp(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 NA(e,n,o){const[r,i,a,l]=typeof e!="string"?tp(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 SA(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=NA(i,e,r);a&&(i=a)}else n(new lt(tt.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]=tp(i.padding),u=(r==null?void 0:r.computedPosition.x)||0,f=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+u+c,i.range[0][1]+f+a],[i.range[1][0]+u-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 Fl(e,n,o,r,i){const a=vA(e.dimensions,SA(e,o,r,i)),l=Df(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 yo(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??TA(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 np(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function xA({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const u={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)};u.x===u.x2&&(u.x2+=1),u.y===u.y2&&(u.y2+=1);const f=Kf({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),d=Math.max(0,Math.min(f.x2,u.x2)-Math.max(f.x,u.x)),p=Math.max(0,Math.min(f.y2,u.y2)-Math.max(f.y,u.y));return Math.ceil(d*p)>0}function AA(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 tt=(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))(tt||{});const op={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 at extends Error{constructor(n,...o){var r;super((r=Jf[n])==null?void 0:r.call(Jf,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function Rl(e){return"clientX"in e}function EA(e){return"sourceEvent"in e}function Kt(e,n){const o=Rl(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 ki=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function NA(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 Ci(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const SA=()=>!0;function Dl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function vA(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,yi(a))>0&&r.push(a);return r}const xA=250;function AA(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=vA(e,o,n+xA);for(const u of c){const f=[...((i=u.handleBounds)==null?void 0:i.source)??[],...((a=u.handleBounds)==null?void 0:a.target)??[]];for(const d of f){if(r.nodeId===d.nodeId&&r.type===d.type&&r.id===d.id)continue;const{x:p,y:m}=fo(u,d,d.position,!0),y=Math.sqrt((p-e.x)**2+(m-e.y)**2);y>n||(y<s?(l=[{...d,x:p,y:m}],s=y):y===s&&l.push({...d,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const u=r.type==="source"?"target":"source";return l.find(f=>f.type===u)??l[0]}return l[0]}function Qf(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:u=SA},f,d,p){const m=a==="target",y=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:b,y:g}=Kt(e),h=l.elementFromPoint(b,g),w=h!=null&&h.classList.contains(`${s}-flow__handle`)?h:y,_={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const k=ep(void 0,w),E=w.getAttribute("data-nodeid"),C=w.getAttribute("data-handleid"),N=w.classList.contains("connectable"),I=w.classList.contains("connectableend");if(!E||!k)return _;const D={source:m?E:r,sourceHandle:m?C:i,target:m?r:E,targetHandle:m?i:C};_.connection=D;const K=N&&I&&(o===cn.Strict?m&&k==="source"||!m&&k==="target":E!==r||C!==i);_.isValid=K&&u(D,{nodes:d,edges:f,sourceNode:p(r),targetNode:p(E)}),_.toHandle=n}return _}function ep(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function IA(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function PA(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function TA(e,n,o,r,i,a=!1){var l,s,c;const u=r.get(e);if(!u)return null;const f=i===cn.Strict?(l=u.handleBounds)==null?void 0:l[n]:[...((s=u.handleBounds)==null?void 0:s.source)??[],...((c=u.handleBounds)==null?void 0:c.target)??[]],d=(o?f==null?void 0:f.find(p=>p.id===o):f==null?void 0:f[0])??null;return d&&a?{...d,...fo(u,d,d.position,!0)}:d}const Ml={[ke.Left]:ke.Right,[ke.Right]:ke.Left,[ke.Top]:ke.Bottom,[ke.Bottom]:ke.Top},OA=["production","prod"];function Ei(e,...n){tp()&&console.warn(`[Vue Flow]: ${e}`,...n)}function tp(){return!OA.includes(process.env.NODE_ENV||"")}function np(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 Ll(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 et(e){return typeof t.unref(e)<"u"}function $A(e,n,o,r){if(!e||!e.source||!e.target)return o(new at(Qe.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return dn(e)?i=e:i={...e,id:Rf(e)},i=Bf(i,void 0,r),pA(i,n)?!1:i}function BA(e,n,o,r,i){if(!n.source||!n.target)return i(new at(Qe.EDGE_INVALID,e.id)),!1;if(!o)return i(new at(Qe.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Rf(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function op(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!Bn(l)){o(new at(Qe.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=dA(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 at(Qe.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 rp(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 u=r.get(l)||new Map;r.set(l,u.set(o,n))}}function Fl(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},u=`${i}-${l}--${a}-${s}`,f=`${a}-${s}--${i}-${l}`;rp("source",c,f,e,i,l),rp("target",c,u,e,a,s)}}function ip(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function Ul(e,n,o,r,i,a,l,s){const c=[];for(const u of e){const f=dn(u)?u:$A(u,s,i,a);if(!f)continue;const d=o(f.source),p=o(f.target);if(!d||!p){i(new at(Qe.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!d){i(new at(Qe.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new at(Qe.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:d,targetNode:p})){i(new at(Qe.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Bf(f,m,a),sourceNode:d,targetNode:p})}return c}const ap=Symbol("vueFlow"),lp=Symbol("nodeId"),sp=Symbol("nodeRef"),VA=Symbol("edgeId"),RA=Symbol("edgeRef"),Ni=Symbol("slots");function cp(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:u,autoPanSpeed:f,nodesDraggable:d,panBy:p,findNode:m,multiSelectionActive:y,nodesSelectionActive:b,selectNodesOnDrag:g,removeSelectedElements:h,addSelectedNodes:w,updateNodePositions:_,emits:k}=Fe(),{onStart:E,onDrag:C,onStop:N,onClick:I,el:D,disabled:G,id:K,selectable:S,dragHandle:ne}=e,x=t.shallowRef(!1);let q=[],U,te=null,V={x:void 0,y:void 0},T={x:0,y:0},v=null,P=!1,A=0,Y=!1;const W=LA(),ie=({x:se,y:ue})=>{V={x:se,y:ue};let fe=!1;if(q=q.map(O=>{const B={x:se-O.distance.x,y:ue-O.distance.y},{computedPosition:F}=Vl(O,o.value?Ci(B,r.value):B,k.error,l.value,O.parentNode?m(O.parentNode):void 0);return fe=fe||O.position.x!==F.x||O.position.y!==F.y,O.position=F,O}),!!fe&&(_(q,!0,!0),x.value=!0,v)){const[O,B]=Bl({id:K,dragItems:q,findNode:m});C({event:v,node:O,nodes:B})}},oe=()=>{if(!te)return;const[se,ue]=Gf(T,te,f.value);if(se!==0||ue!==0){const fe={x:(V.x??0)-se/c.value.zoom,y:(V.y??0)-ue/c.value.zoom};p({x:se,y:ue})&&ie(fe)}A=requestAnimationFrame(oe)},de=(se,ue)=>{P=!0;const fe=m(K);!g.value&&!y.value&&fe&&(fe.selected||h()),fe&&t.toValue(S)&&g.value&&Ll(fe,y.value,w,h,b,!1,ue);const O=W(se.sourceEvent);if(V=O,q=yA(a.value,d.value,O,m,K),q.length){const[B,F]=Bl({id:K,dragItems:q,findNode:m});E({event:se.sourceEvent,node:B,nodes:F})}},he=(se,ue)=>{var fe;se.sourceEvent.type==="touchmove"&&se.sourceEvent.touches.length>1||(s.value===0&&de(se,ue),V=W(se.sourceEvent),te=((fe=n.value)==null?void 0:fe.getBoundingClientRect())||null,T=Kt(se.sourceEvent,te))},X=(se,ue)=>{const fe=W(se.sourceEvent);if(!Y&&P&&u.value&&(Y=!0,oe()),!P){const O=fe.xSnapped-(V.x??0),B=fe.ySnapped-(V.y??0);Math.sqrt(O*O+B*B)>s.value&&de(se,ue)}(V.x!==fe.xSnapped||V.y!==fe.ySnapped)&&q.length&&P&&(v=se.sourceEvent,T=Kt(se.sourceEvent,te),ie(fe))},ce=se=>{let ue=!1;if(!P&&!x.value&&!y.value){const fe=se.sourceEvent,O=W(fe),B=O.xSnapped-(V.x??0),F=O.ySnapped-(V.y??0),R=Math.sqrt(B*B+F*F);R!==0&&R<=s.value&&(I==null||I(fe),ue=!0)}if(q.length&&!ue){_(q,!1,!1);const[fe,O]=Bl({id:K,dragItems:q,findNode:m});N({event:se.sourceEvent,node:fe,nodes:O})}q=[],x.value=!1,Y=!1,P=!1,V={x:void 0,y:void 0},cancelAnimationFrame(A)};return t.watch([()=>t.toValue(G),D],([se,ue],fe,O)=>{if(ue){const B=Tt(ue);se||(U=cv().on("start",F=>he(F,ue)).on("drag",F=>X(F,ue)).on("end",F=>ce(F)).filter(F=>{const R=F.target,J=t.toValue(ne);return!F.button&&(!i.value||!Wf(R,`.${i.value}`,ue)&&(!J||Wf(R,J,ue)))}),B.call(U)),O(()=>{B.on(".drag",null),U&&(U.on("start",null),U.on("drag",null),U.on("end",null))})}}),x}function DA(){return{doubleClick:we(),click:we(),mouseEnter:we(),mouseMove:we(),mouseLeave:we(),contextMenu:we(),updateStart:we(),update:we(),updateEnd:we()}}function MA(e,n){const o=DA();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 LA(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Fe();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=EA(i)?i.sourceEvent:i,{x:c,y:u}=Kt(s,l),f=lr({x:c,y:u},e.value),{x:d,y:p}=o.value?Ci(f,n.value):f;return{xSnapped:d,ySnapped:p,...f}}}function Si(){return!0}function dp({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:u,connectionRadius:f,connectOnClick:d,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:y,autoPanSpeed:b,findNode:g,panBy:h,startConnection:w,updateConnection:_,endConnection:k,emits:E,viewport:C,edges:N,nodes:I,isValidConnection:D,nodeLookup:G}=Fe();let K=null,S=!1,ne=null;function x(U){var te;const V=t.toValue(o)==="target",T=Rl(U),v=$f(U.target);if(T&&U.button===0||!T){let P=function($){O=Kt($,se),ie=AA(lr(O,C.value,!1,[1,1]),f.value,G.value,R),B||(F(),B=!0);const z=Qf($,{handle:ie,connectionMode:u.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:V?"target":"source",isValidConnection:W,doc:v,lib:"vue",flowId:s,nodeLookup:G.value},N.value,I.value,g);ne=z.handleDomNode,K=z.connection,S=PA(!!ie,z.isValid);const M={...L,isValid:S,to:z.toHandle&&S?Ol({x:z.toHandle.x,y:z.toHandle.y},C.value):O,toHandle:z.toHandle,toPosition:S&&z.toHandle?z.toHandle.position:Ml[R.position],toNode:z.toHandle?G.value.get(z.toHandle.nodeId):null};if(!(S&&ie&&(L!=null&&L.toHandle)&&M.toHandle&&L.toHandle.type===M.toHandle.type&&L.toHandle.nodeId===M.toHandle.nodeId&&L.toHandle.id===M.toHandle.id&&L.to.x===M.to.x&&L.to.y===M.to.y)){if(_(ie&&S?Ol({x:ie.x,y:ie.y},C.value):O,z.toHandle,IA(!!ie,S)),L=M,!ie&&!S&&!ne)return Dl(fe);K&&K.source!==K.target&&ne&&(Dl(fe),fe=ne,ne.classList.add("connecting","vue-flow__handle-connecting"),ne.classList.toggle("valid",!!S),ne.classList.toggle("vue-flow__handle-valid",!!S))}},A=function($){(ie||ne)&&K&&S&&(a?a($,K):E.connect(K)),E.connectEnd($),i&&(l==null||l($)),Dl(fe),cancelAnimationFrame(oe),k($),B=!1,S=!1,K=null,ne=null,v.removeEventListener("mousemove",P),v.removeEventListener("mouseup",A),v.removeEventListener("touchmove",P),v.removeEventListener("touchend",A)};const Y=g(t.toValue(n));let W=t.toValue(r)||D.value||Si;!W&&Y&&(W=(V?Y.isValidSourcePos:Y.isValidTargetPos)||Si);let ie,oe=0;const{x:de,y:he}=Kt(U),X=v==null?void 0:v.elementFromPoint(de,he),ce=ep(t.toValue(i),X),se=(te=c.value)==null?void 0:te.getBoundingClientRect();if(!se||!ce)return;const ue=TA(t.toValue(n),ce,t.toValue(e),G.value,u.value);if(!ue)return;let fe,O=Kt(U,se),B=!1;const F=()=>{if(!y.value)return;const[$,z]=Gf(O,se,b.value);h({x:$,y:z}),oe=requestAnimationFrame(F)},R={...ue,nodeId:t.toValue(n),type:ce,position:ue.position},J=G.value.get(t.toValue(n)),ae={inProgress:!0,isValid:null,from:fo(J,R,ke.Left,!0),fromHandle:R,fromPosition:R.position,fromNode:J,to:O,toHandle:null,toPosition:Ml[R.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:ce,position:(X==null?void 0:X.getAttribute("data-handlepos"))||ke.Top,...O},{x:de-se.left,y:he-se.top}),E.connectStart({event:U,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:ce});let L=ae;v.addEventListener("mousemove",P),v.addEventListener("mouseup",A),v.addEventListener("touchmove",P),v.addEventListener("touchend",A)}}function q(U){var te,V;if(!d.value)return;const T=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:U,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:ke.Top,...Kt(U)},void 0,!0);return}let v=t.toValue(r)||D.value||Si;const P=g(t.toValue(n));if(!v&&P&&(v=(T?P.isValidSourcePos:P.isValidTargetPos)||Si),P&&(typeof P.connectable>"u"?m.value:P.connectable)===!1)return;const A=$f(U.target),Y=Qf(U,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:ke.Top,...Kt(U)},connectionMode:u.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:v,doc:A,lib:"vue",flowId:s,nodeLookup:G.value},N.value,I.value,g),W=((te=Y.connection)==null?void 0:te.source)===((V=Y.connection)==null?void 0:V.target);Y.isValid&&Y.connection&&!W&&E.connect(Y.connection),E.clickConnectEnd(U),k(U,!0)}return{handlePointerDown:x,handleClick:q}}function FA(){return t.inject(lp,"")}function up(e){const n=e??FA()??"",o=t.inject(sp,t.ref(null)),{findNode:r,edges:i,emits:a}=Fe(),l=r(n);return l||a.error(new at(Qe.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>Ff([l],i.value))}}function UA(){return{doubleClick:we(),click:we(),mouseEnter:we(),mouseMove:we(),mouseLeave:we(),contextMenu:we(),dragStart:we(),drag:we(),dragStop:we()}}function KA(e,n){const o=UA();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 fp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Fe();return(c,u=!1)=>{const f=a.value?i.value[0]:5,d=a.value?i.value[1]:5,p=u?4:1,m=c.x*f*p,y=c.y*d*p,b=[];for(const g of e.value)if(g.draggable||l&&typeof g.draggable>"u"){const h={x:g.computedPosition.x+m,y:g.computedPosition.y+y},{computedPosition:w}=Vl(g,h,s.error,n.value,g.parentNode?r(g.parentNode):void 0);b.push({id:g.id,position:w,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(b,!0,!1)}}const Kl=.1,jA=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function pn(){return Ei("Viewport not initialized yet."),Promise.resolve(!1)}const GA={zoomIn:pn,zoomOut:pn,zoomTo:pn,fitView:pn,setCenter:pn,fitBounds:pn,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:pn,setTransform:pn,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function qA(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?Zo:li).scaleBy(jl(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:u,y:f}=Of({x:-r,y:-i},e.translateExtent),d=co.translate(-u,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?Zo:li).transform(jl(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),d):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"?Zo:li).scaleTo(jl(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:Kl,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=Mf(s),{x:u,y:f,zoom:d}=Uf(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Kl,i.offset);return o(u,f,d,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,u=e.dimensions.height/2-a*s;return o(c,u,s,l)},fitBounds:(i,a={padding:Kl})=>{const{x:l,y:s,zoom:c}=Uf(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>lr(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 lr(s,e.viewport,e.snapToGrid,e.snapGrid)}return{x:0,y:0}},flowToScreenCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x+a,y:i.y+l};return Ol(s,e.viewport)}return{x:0,y:0}}}:GA)}function jl(e,n=0,o=jA,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function zA(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let b,g,h=!!(o.nodes.value.length||o.edges.value.length);b=ro([e.modelValue,()=>{var w,_;return(_=(w=e.modelValue)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setElements(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=ro([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,_])=>{var k;(k=e.modelValue)!=null&&k.value&&Array.isArray(e.modelValue.value)&&(b==null||b.pause(),e.modelValue.value=[...w,..._],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let b,g,h=!!o.nodes.value.length;b=ro([e.nodes,()=>{var w,_;return(_=(w=e.nodes)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setNodes(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=ro([o.nodes,()=>o.nodes.value.length],([w])=>{var _;(_=e.nodes)!=null&&_.value&&Array.isArray(e.nodes.value)&&(b==null||b.pause(),e.nodes.value=[...w],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let b,g,h=!!o.edges.value.length;b=ro([e.edges,()=>{var w,_;return(_=(w=e.edges)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setEdges(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=ro([o.edges,()=>o.edges.value.length],([w])=>{var _;(_=e.edges)!=null&&_.value&&Array.isArray(e.edges.value)&&(b==null||b.pause(),e.edges.value=[...w],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&et(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&et(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&et(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&et(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{et(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const b=async g=>{let h=g;typeof n.autoConnect=="function"&&(h=await n.autoConnect(g)),h!==!1&&o.addEdges([h])};t.watch(()=>n.autoConnect,()=>{et(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(g,h,w)=>{g?o.onConnect(b):o.hooks.value.connect.off(b),w(()=>{o.hooks.value.connect.off(b)})},{immediate:!0})})},m=()=>{const b=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const g of Object.keys(n)){const h=g;if(!b.includes(h)){const w=t.toRef(()=>n[h]),_=o[h];t.isRef(_)&&r.run(()=>{t.watch(w,k=>{et(k)&&(_.value=k)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),u(),f(),d(),p(),m()})()}),()=>r.stop()}function HA(){return{edgesChange:we(),nodesChange:we(),nodeDoubleClick:we(),nodeClick:we(),nodeMouseEnter:we(),nodeMouseMove:we(),nodeMouseLeave:we(),nodeContextMenu:we(),nodeDragStart:we(),nodeDrag:we(),nodeDragStop:we(),nodesInitialized:we(),miniMapNodeClick:we(),miniMapNodeDoubleClick:we(),miniMapNodeMouseEnter:we(),miniMapNodeMouseMove:we(),miniMapNodeMouseLeave:we(),connect:we(),connectStart:we(),connectEnd:we(),clickConnectStart:we(),clickConnectEnd:we(),paneReady:we(),init:we(),move:we(),moveStart:we(),moveEnd:we(),selectionDragStart:we(),selectionDrag:we(),selectionDragStop:we(),selectionContextMenu:we(),selectionStart:we(),selectionEnd:we(),viewportChangeStart:we(),viewportChange:we(),viewportChangeEnd:we(),paneScroll:we(),paneClick:we(),paneContextMenu:we(),paneMouseEnter:we(),paneMouseMove:we(),paneMouseLeave:we(),edgeContextMenu:we(),edgeMouseEnter:we(),edgeMouseMove:we(),edgeMouseLeave:we(),edgeDoubleClick:we(),edgeClick:we(),edgeUpdateStart:we(),edgeUpdate:we(),edgeUpdateEnd:we(),updateNodeInternals:we(),error:we(e=>Ei(e.message))}}function YA(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),Wr(()=>{r.off(i)})}})}function pp(){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:Pl.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:rr.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:On.Bezier,style:{}},connectionMode:cn.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:ki()?"Meta":"Control",zoomActivationKeyCode:ki()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:HA(),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 WA=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function XA(e,n,o){const r=qA(e),i=O=>{const B=O??[];e.hooks.updateNodeInternals.trigger(B)},a=O=>fA(O,e.nodes,e.edges),l=O=>uA(O,e.nodes,e.edges),s=O=>Ff(O,e.edges),c=({id:O,type:B,nodeId:F})=>{var R;return Array.from(((R=e.connectionLookup.get(`${F}-${B}-${O??null}`))==null?void 0:R.values())??[])},u=O=>{if(O)return n.value.get(O)},f=O=>{if(O)return o.value.get(O)},d=(O,B,F)=>{var R,J;const j=[];for(const ae of O){const L={id:ae.id,type:"position",dragging:F,from:ae.from};if(B&&(L.position=ae.position,ae.parentNode)){const $=u(ae.parentNode);L.position={x:L.position.x-(((R=$==null?void 0:$.computedPosition)==null?void 0:R.x)??0),y:L.position.y-(((J=$==null?void 0:$.computedPosition)==null?void 0:J.y)??0)}}j.push(L)}j!=null&&j.length&&e.hooks.nodesChange.trigger(j)},p=O=>{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),J=[];for(const j of O){const ae=j,L=u(ae.id);if(L){const $=bi(ae.nodeElement);if(!!($.width&&$.height&&(L.dimensions.width!==$.width||L.dimensions.height!==$.height||ae.forceUpdate))){const M=ae.nodeElement.getBoundingClientRect();L.dimensions=$,L.handleBounds.source=np("source",ae.nodeElement,M,R,L.id),L.handleBounds.target=np("target",ae.nodeElement,M,R,L.id),J.push({id:L.id,type:"dimensions",dimensions:$})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),J.length&&e.hooks.nodesChange.trigger(J)},m=(O,B)=>{const F=new Set,R=new Set;for(const ae of O)Bn(ae)?F.add(ae.id):dn(ae)&&R.add(ae.id);const J=fn(n.value,F,!0),j=fn(o.value,R);if(e.multiSelectionActive){for(const ae of F)J.push(un(ae,B));for(const ae of R)j.push(un(ae,B))}J.length&&e.hooks.nodesChange.trigger(J),j.length&&e.hooks.edgesChange.trigger(j)},y=O=>{if(e.multiSelectionActive){const B=O.map(F=>un(F.id,!0));e.hooks.nodesChange.trigger(B);return}e.hooks.nodesChange.trigger(fn(n.value,new Set(O.map(B=>B.id)),!0)),e.hooks.edgesChange.trigger(fn(o.value))},b=O=>{if(e.multiSelectionActive){const B=O.map(F=>un(F.id,!0));e.hooks.edgesChange.trigger(B);return}e.hooks.edgesChange.trigger(fn(o.value,new Set(O.map(B=>B.id)))),e.hooks.nodesChange.trigger(fn(n.value,new Set,!0))},g=O=>{m(O,!0)},h=O=>{const F=(O||e.nodes).map(R=>(R.selected=!1,un(R.id,!1)));e.hooks.nodesChange.trigger(F)},w=O=>{const F=(O||e.edges).map(R=>(R.selected=!1,un(R.id,!1)));e.hooks.edgesChange.trigger(F)},_=O=>{if(!O||!O.length)return m([],!1);const B=O.reduce((F,R)=>{const J=un(R.id,!1);return Bn(R)?F.nodes.push(J):F.edges.push(J),F},{nodes:[],edges:[]});B.nodes.length&&e.hooks.nodesChange.trigger(B.nodes),B.edges.length&&e.hooks.edgesChange.trigger(B.edges)},k=O=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([O,e.maxZoom]),e.minZoom=O},E=O=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([e.minZoom,O]),e.maxZoom=O},C=O=>{var B;(B=e.d3Zoom)==null||B.translateExtent(O),e.translateExtent=O},N=O=>{e.nodeExtent=O,i()},I=O=>{var B;(B=e.d3Zoom)==null||B.clickDistance(O)},D=O=>{e.nodesDraggable=O,e.nodesConnectable=O,e.elementsSelectable=O},G=O=>{const B=O instanceof Function?O(e.nodes):O;!e.initialized&&!B.length||(e.nodes=op(B,u,e.hooks.error.trigger))},K=O=>{const B=O instanceof Function?O(e.edges):O;if(!e.initialized&&!B.length)return;const F=Ul(B,e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);Fl(e.connectionLookup,o.value,F),e.edges=F},S=O=>{const B=O instanceof Function?O([...e.nodes,...e.edges]):O;!e.initialized&&!B.length||(G(B.filter(Bn)),K(B.filter(dn)))},ne=O=>{let B=O instanceof Function?O(e.nodes):O;B=Array.isArray(B)?B:[B];const F=op(B,u,e.hooks.error.trigger),R=[];for(const J of F)R.push(zf(J));R.length&&e.hooks.nodesChange.trigger(R)},x=O=>{let B=O instanceof Function?O(e.edges):O;B=Array.isArray(B)?B:[B];const F=Ul(B,e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),R=[];for(const J of F)R.push(zf(J));R.length&&e.hooks.edgesChange.trigger(R)},q=(O,B=!0,F=!1)=>{const R=O instanceof Function?O(e.nodes):O,J=Array.isArray(R)?R:[R],j=[],ae=[];function L(z){const M=s(z);for(const le of M)(!et(le.deletable)||le.deletable)&&ae.push(Yf(le.id,le.source,le.target,le.sourceHandle,le.targetHandle))}function $(z){const M=[];for(const le of e.nodes)le.parentNode===z&&M.push(le);if(M.length){for(const le of M)j.push(Hf(le.id));B&&L(M);for(const le of M)$(le.id)}}for(const z of J){const M=typeof z=="string"?u(z):z;M&&(et(M.deletable)&&!M.deletable||(j.push(Hf(M.id)),B&&L([M]),F&&$(M.id)))}ae.length&&e.hooks.edgesChange.trigger(ae),j.length&&e.hooks.nodesChange.trigger(j)},U=O=>{const B=O instanceof Function?O(e.edges):O,F=Array.isArray(B)?B:[B],R=[];for(const J of F){const j=typeof J=="string"?f(J):J;j&&(et(j.deletable)&&!j.deletable||R.push(Yf(typeof J=="string"?J:J.id,j.source,j.target,j.sourceHandle,j.targetHandle)))}e.hooks.edgesChange.trigger(R)},te=(O,B,F=!0)=>{const R=f(O.id);if(!R)return!1;const J=e.edges.indexOf(R),j=BA(O,B,R,F,e.hooks.error.trigger);if(j){const[ae]=Ul([j],e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((L,$)=>$===J?ae:L),Fl(e.connectionLookup,o.value,[ae]),ae}return!1},V=(O,B,F={replace:!1})=>{const R=f(O);if(!R)return;const J=typeof B=="function"?B(R):B;R.data=F.replace?J:{...R.data,...J}},T=O=>qf(O,e.nodes),v=O=>{const B=qf(O,e.edges);return Fl(e.connectionLookup,o.value,B),B},P=(O,B,F={replace:!1})=>{const R=u(O);if(!R)return;const J=typeof B=="function"?B(R):B;F.replace?e.nodes.splice(e.nodes.indexOf(R),1,J):Object.assign(R,J)},A=(O,B,F={replace:!1})=>{const R=u(O);if(!R)return;const J=typeof B=="function"?B(R):B;R.data=F.replace?J:{...R.data,...J}},Y=(O,B,F=!1)=>{F?e.connectionClickStartHandle=O:e.connectionStartHandle=O,e.connectionEndHandle=null,e.connectionStatus=null,B&&(e.connectionPosition=B)},W=(O,B=null,F=null)=>{e.connectionStartHandle&&(e.connectionPosition=O,e.connectionEndHandle=B,e.connectionStatus=F)},ie=(O,B)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,B?e.connectionClickStartHandle=null:e.connectionStartHandle=null},oe=O=>{const B=cA(O),F=B?null:ar(O)?O:u(O.id);return!B&&!F?[null,null,B]:[B?O:yi(F),F,B]},de=(O,B=!0,F=e.nodes)=>{const[R,J,j]=oe(O);if(!R)return[];const ae=[];for(const L of F||e.nodes){if(!j&&(L.id===J.id||!L.computedPosition))continue;const $=yi(L),z=_i($,R);(B&&z>0||z>=Number(R.width)*Number(R.height))&&ae.push(L)}return ae},he=(O,B,F=!0)=>{const[R]=oe(O);if(!R)return!1;const J=_i(R,B);return F&&J>0||J>=Number(R.width)*Number(R.height)},X=O=>{const{viewport:B,dimensions:F,d3Zoom:R,d3Selection:J,translateExtent:j}=e;if(!R||!J||!O.x&&!O.y)return!1;const ae=co.translate(B.x+O.x,B.y+O.y).scale(B.zoom),L=[[0,0],[F.width,F.height]],$=R.constrain()(ae,L,j),z=e.viewport.x!==$.x||e.viewport.y!==$.y||e.viewport.zoom!==$.k;return R.transform(J,$),z},ce=O=>{const B=O instanceof Function?O(e):O,F=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];et(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),S(R));const J=()=>{et(B.maxZoom)&&E(B.maxZoom),et(B.minZoom)&&k(B.minZoom),et(B.translateExtent)&&C(B.translateExtent)};for(const j of Object.keys(B)){const ae=j,L=B[ae];![...WA,...F].includes(ae)&&et(L)&&(e[ae]=L)}cl(()=>e.d3Zoom).not.toBeNull().then(J),e.initialized||(e.initialized=!0)};return{updateNodePositions:d,updateNodeDimensions:p,setElements:S,setNodes:G,setEdges:K,addNodes:ne,addEdges:x,removeNodes:q,removeEdges:U,findNode:u,findEdge:f,updateEdge:te,updateEdgeData:V,updateNode:P,updateNodeData:A,applyEdgeChanges:v,applyNodeChanges:T,addSelectedElements:g,addSelectedNodes:y,addSelectedEdges:b,setMinZoom:k,setMaxZoom:E,setTranslateExtent:C,setNodeExtent:N,setPaneClickDistance:I,removeSelectedElements:_,removeSelectedNodes:h,removeSelectedEdges:w,startConnection:Y,updateConnection:W,endConnection:ie,setInteractive:D,setState:ce,getIntersectingNodes:de,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:he,panBy:X,fitView:O=>r.value.fitView(O),zoomIn:O=>r.value.zoomIn(O),zoomOut:O=>r.value.zoomOut(O),zoomTo:(O,B)=>r.value.zoomTo(O,B),setViewport:(O,B)=>r.value.setViewport(O,B),setTransform:(O,B)=>r.value.setTransform(O,B),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(O,B,F)=>r.value.setCenter(O,B,F),fitBounds:(O,B)=>r.value.fitBounds(O,B),project:O=>r.value.project(O),screenToFlowCoordinate:O=>r.value.screenToFlowCoordinate(O),flowToScreenCoordinate:O=>r.value.flowToScreenCoordinate(O),toObject:()=>{const O=[],B=[];for(const F of e.nodes){const{computedPosition:R,handleBounds:J,selected:j,dimensions:ae,isParent:L,resizing:$,dragging:z,events:M,...le}=F;O.push(le)}for(const F of e.edges){const{selected:R,sourceNode:J,targetNode:j,events:ae,...L}=F;B.push(L)}return JSON.parse(JSON.stringify({nodes:O,edges:B,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:O=>new Promise(B=>{const{nodes:F,edges:R,position:J,zoom:j,viewport:ae}=O;if(F&&G(F),R&&K(R),ae!=null&&ae.x&&(ae!=null&&ae.y)||J){const L=(ae==null?void 0:ae.x)||J[0],$=(ae==null?void 0:ae.y)||J[1],z=(ae==null?void 0:ae.zoom)||j||e.viewport.zoom;return cl(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:L,y:$,zoom:z}).then(()=>{B(!0)})})}else B(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const O=pp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const B=co.translate(O.defaultViewport.x??0,O.defaultViewport.y??0).scale($n(O.defaultViewport.zoom??1,O.minZoom,O.maxZoom)),F=e.viewportRef.getBoundingClientRect(),R=[[0,0],[F.width,F.height]],J=e.d3Zoom.constrain()(B,R,O.translateExtent);e.d3Zoom.transform(e.d3Selection,J)}ce(O)},$destroy:()=>{}}}const ZA=["data-id","data-handleid","data-nodeid","data-handlepos"],JA={name:"Handle",compatConfig:{MODE:3}},jt=t.defineComponent({...JA,props:{id:{default:null},type:{},position:{default:()=>ke.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:u,nodesConnectable:f,noDragClassName:d,noPanClassName:p}=Fe(),{id:m,node:y,nodeEl:b,connectedEdges:g}=up(),h=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),_=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),k=t.toRef(()=>{var K,S,ne,x,q,U;return((K=l.value)==null?void 0:K.nodeId)===m&&((S=l.value)==null?void 0:S.id)===e.id&&((ne=l.value)==null?void 0:ne.type)===r.value||((x=c.value)==null?void 0:x.nodeId)===m&&((q=c.value)==null?void 0:q.id)===e.id&&((U=c.value)==null?void 0:U.type)===r.value}),E=t.toRef(()=>{var K,S,ne;return((K=s.value)==null?void 0:K.nodeId)===m&&((S=s.value)==null?void 0:S.id)===e.id&&((ne=s.value)==null?void 0:ne.type)===r.value}),{handlePointerDown:C,handleClick:N}=dp({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),I=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(K=>{const S=K[`${r.value}Handle`];return K[r.value]!==m?!1:S?S===e.id:!0}):typeof e.connectable=="number"?g.value.filter(K=>{const S=K[`${r.value}Handle`];return K[r.value]!==m?!1:S?S===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(y,g.value):et(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var K;if(!y.dimensions.width||!y.dimensions.height)return;const S=(K=y.handleBounds[r.value])==null?void 0:K.find(T=>T.id===e.id);if(!u.value||S)return;const ne=u.value.querySelector(".vue-flow__transformationpane");if(!b.value||!h.value||!ne||!e.id)return;const x=b.value.getBoundingClientRect(),q=h.value.getBoundingClientRect(),U=window.getComputedStyle(ne),{m22:te}=new window.DOMMatrixReadOnly(U.transform),V={id:e.id,position:e.position,x:(q.left-x.left)/te,y:(q.top-x.top)/te,type:r.value,nodeId:m,...bi(h.value)};y.handleBounds[r.value]=[...y.handleBounds[r.value]??[],V]});function D(K){const S=Rl(K);I.value&&w.value&&(S&&K.button===0||!S)&&C(K)}function G(K){!m||!s.value&&!w.value||I.value&&N(K)}return n({handleClick:N,handlePointerDown:C,onClick:G,onPointerDown:D}),(K,S)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:h,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":K.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${K.position}`,`vue-flow__handle-${e.id}`,t.unref(d),t.unref(p),r.value,{connectable:I.value,connecting:E.value,connectablestart:w.value,connectableend:_.value,connectionindicator:I.value&&(w.value&&!k.value||_.value&&k.value)}]]),onMousedown:D,onTouchstartPassive:D,onClick:G},[t.renderSlot(K.$slots,"default",{id:K.id})],42,ZA))}}),vi=function({sourcePosition:e=ke.Bottom,targetPosition:n=ke.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})]};vi.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],vi.inheritAttrs=!1,vi.compatConfig={MODE:3};const QA=vi,xi=function({targetPosition:e=ke.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])]};xi.props=["targetPosition","label","isValidTargetPos","connectable","data"],xi.inheritAttrs=!1,xi.compatConfig={MODE:3};const eI=xi,Ai=function({sourcePosition:e=ke.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})]};Ai.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Ai.inheritAttrs=!1,Ai.compatConfig={MODE:3};const tI=Ai,nI=["transform"],oI=["width","height","x","y","rx","ry"],rI=["y"],iI={name:"EdgeText",compatConfig:{MODE:3}},aI=t.defineComponent({...iI,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,oI)):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,rI)],8,nI))}}),lI=["id","d","marker-end","marker-start"],sI=["d","stroke-width"],cI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Ii=t.defineComponent({...cI,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,lI),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,sI)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(aI,{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 mp({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 gp({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,u=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),d=Math.abs(u-n);return[c,u,f,d]}function Pi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function hp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ke.Left:l=n-Pi(n-r,a),s=o;break;case ke.Right:l=n+Pi(r-n,a),s=o;break;case ke.Top:l=n,s=o-Pi(o-i,a);break;case ke.Bottom:l=n,s=o+Pi(i-o,a);break}return[l,s]}function yp(e){const{sourceX:n,sourceY:o,sourcePosition:r=ke.Bottom,targetX:i,targetY:a,targetPosition:l=ke.Top,curvature:s=.25}=e,[c,u]=hp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,d]=hp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,y,b]=gp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:u,targetControlX:f,targetControlY:d});return[`M${n},${o} C${c},${u} ${f},${d} ${i},${a}`,p,m,y,b]}function _p({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case ke.Left:case ke.Right:a=.5*(n+r),l=o;break;case ke.Top:case ke.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function bp(e){const{sourceX:n,sourceY:o,sourcePosition:r=ke.Bottom,targetX:i,targetY:a,targetPosition:l=ke.Top}=e,[s,c]=_p({pos:r,x1:n,y1:o,x2:i,y2:a}),[u,f]=_p({pos:l,x1:i,y1:a,x2:n,y2:o}),[d,p,m,y]=gp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:u,targetControlY:f});return[`M${n},${o} C${s},${c} ${u},${f} ${i},${a}`,d,p,m,y]}const wp={[ke.Left]:{x:-1,y:0},[ke.Right]:{x:1,y:0},[ke.Top]:{x:0,y:-1},[ke.Bottom]:{x:0,y:1}};function dI({source:e,sourcePosition:n=ke.Bottom,target:o}){return n===ke.Left||n===ke.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 kp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function uI({source:e,sourcePosition:n=ke.Bottom,target:o,targetPosition:r=ke.Top,center:i,offset:a}){const l=wp[n],s=wp[r],c={x:e.x+l.x*a,y:e.y+l.y*a},u={x:o.x+s.x*a,y:o.y+s.y*a},f=dI({source:c,sourcePosition:n,target:u}),d=f.x!==0?"x":"y",p=f[d];let m,y,b;const g={x:0,y:0},h={x:0,y:0},[w,_,k,E]=mp({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[d]*s[d]===-1){y=i.x??w,b=i.y??_;const N=[{x:y,y:c.y},{x:y,y:u.y}],I=[{x:c.x,y:b},{x:u.x,y:b}];l[d]===p?m=d==="x"?N:I:m=d==="x"?I:N}else{const N=[{x:c.x,y:u.y}],I=[{x:u.x,y:c.y}];if(d==="x"?m=l.x===p?I:N:m=l.y===p?N:I,n===r){const ne=Math.abs(e[d]-o[d]);if(ne<=a){const x=Math.min(a-1,a-ne);l[d]===p?g[d]=(c[d]>e[d]?-1:1)*x:h[d]=(u[d]>o[d]?-1:1)*x}}if(n!==r){const ne=d==="x"?"y":"x",x=l[d]===s[ne],q=c[ne]>u[ne],U=c[ne]<u[ne];(l[d]===1&&(!x&&q||x&&U)||l[d]!==1&&(!x&&U||x&&q))&&(m=d==="x"?N:I)}const D={x:c.x+g.x,y:c.y+g.y},G={x:u.x+h.x,y:u.y+h.y},K=Math.max(Math.abs(D.x-m[0].x),Math.abs(G.x-m[0].x)),S=Math.max(Math.abs(D.y-m[0].y),Math.abs(G.y-m[0].y));K>=S?(y=(D.x+G.x)/2,b=m[0].y):(y=m[0].x,b=(D.y+G.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...m,{x:u.x+h.x,y:u.y+h.y},o],y,b,k,E]}function fI(e,n,o,r){const i=Math.min(kp(e,n)/2,kp(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 u=e.x<o.x?-1:1,f=e.y<o.y?1:-1;return`L ${a+i*u},${l}Q ${a},${l} ${a},${l+i*f}`}const s=e.x<o.x?1:-1,c=e.y<o.y?-1:1;return`L ${a},${l+i*c}Q ${a},${l} ${a+i*s},${l}`}function Gl(e){const{sourceX:n,sourceY:o,sourcePosition:r=ke.Bottom,targetX:i,targetY:a,targetPosition:l=ke.Top,borderRadius:s=5,centerX:c,centerY:u,offset:f=20}=e,[d,p,m,y,b]=uI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:u},offset:f});return[d.reduce((h,w,_)=>{let k;return _>0&&_<d.length-1?k=fI(d[_-1],w,d[_+1],s):k=`${_===0?"M":"L"}${w.x} ${w.y}`,h+=k,h},""),p,m,y,b]}function pI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=mp({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const mI=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]=pI(e);return t.h(Ii,{path:o,labelX:r,labelY:i,...n,...e})}}}),Cp=t.defineComponent({name:"SmoothStepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","borderRadius","markerEnd","markerStart","interactionWidth","offset"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Gl({...e,sourcePosition:e.sourcePosition??ke.Bottom,targetPosition:e.targetPosition??ke.Top});return t.h(Ii,{path:o,labelX:r,labelY:i,...n,...e})}}}),gI=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(Cp,{...e,...n,borderRadius:0})}}),hI=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]=yp({...e,sourcePosition:e.sourcePosition??ke.Bottom,targetPosition:e.targetPosition??ke.Top});return t.h(Ii,{path:o,labelX:r,labelY:i,...n,...e})}}}),yI=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]=bp({...e,sourcePosition:e.sourcePosition??ke.Bottom,targetPosition:e.targetPosition??ke.Top});return t.h(Ii,{path:o,labelX:r,labelY:i,...n,...e})}}}),_I={input:tI,default:QA,output:eI},bI={default:hI,straight:mI,step:gI,smoothstep:Cp,simplebezier:yI};function wI(e,n,o){const r=t.computed(()=>b=>n.value.get(b)),i=t.computed(()=>b=>o.value.get(b)),a=t.computed(()=>{const b={...bI,...e.edgeTypes},g=Object.keys(b);for(const h of e.edges)h.type&&!g.includes(h.type)&&(b[h.type]=h.type);return b}),l=t.computed(()=>{const b={..._I,...e.nodeTypes},g=Object.keys(b);for(const h of e.nodes)h.type&&!g.includes(h.type)&&(b[h.type]=h.type);return b}),s=t.computed(()=>e.onlyRenderVisibleElements?Lf(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 b=[];for(const g of e.edges){const h=n.value.get(g.source),w=n.value.get(g.target);kA({sourcePos:h.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:h.dimensions.width,sourceHeight:h.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&b.push(g)}return b}return e.edges}),u=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const b=[];for(const g of e.nodes)g.selected&&b.push(g);return b}),d=t.computed(()=>{const b=[];for(const g of e.edges)g.selected&&b.push(g);return b}),p=t.computed(()=>[...f.value,...d.value]),m=t.computed(()=>{const b=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&b.push(g);return b}),y=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:u,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:d,getNodesInitialized:m,areNodesInitialized:y}}class Vn{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)??Vn.instance;return Vn.instance=r??new Vn,o&&(o.config.globalProperties.$vueFlowStorage=Vn.instance),Vn.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=pp(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const y=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[y]=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}),u=wI(i,s,c),f=XA(i,s,c);f.setState({...i,...o});const d={...a,...u,...f,..._1(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,d),d}getId(){return`vue-flow-${this.currentId++}`}}function Fe(e){const n=Vn.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(ap,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(),u=n.create(c,i);s=u,(o??t.effectScope(!0)).run(()=>{t.watch(u.applyDefault,(d,p,m)=>{const y=g=>{u.applyNodeChanges(g)},b=g=>{u.applyEdgeChanges(g)};d?(u.onNodesChange(y),u.onEdgesChange(b)):(u.hooks.value.nodesChange.off(y),u.hooks.value.edgesChange.off(b)),m(()=>{u.hooks.value.nodesChange.off(y),u.hooks.value.edgesChange.off(b)})},{immediate:!0}),Wr(()=>{if(s){const d=n.get(s.id);d?d.$destroy():Ei(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(ap,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new at(Qe.USEVUEFLOW_OPTIONS))}return s}function kI(e){const{emits:n,dimensions:o}=Fe();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 at(Qe.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 CI={name:"UserSelection",compatConfig:{MODE:3}},EI=t.defineComponent({...CI,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))}}),NI=["tabIndex"],SI={name:"NodesSelection",compatConfig:{MODE:3}},vI=t.defineComponent({...SI,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Fe(),s=fp(),c=t.ref(null),u=cp({el:c,onStart(y){n.selectionDragStart(y)},onDrag(y){n.selectionDrag(y)},onStop(y){n.selectionDragStop(y)}});t.onMounted(()=>{var y;a.value||(y=c.value)==null||y.focus({preventScroll:!0})});const f=t.computed(()=>Mf(r.value)),d=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(y){n.selectionContextMenu({event:y,nodes:r.value})}function m(y){a||uo[y.key]&&(y.preventDefault(),s({x:uo[y.key].x,y:uo[y.key].y},y.shiftKey))}return(y,b)=>!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(u)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(d.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,NI)],6)):t.createCommentVNode("",!0)}});function xI(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const AI={name:"Pane",compatConfig:{MODE:3}},II=t.defineComponent({...AI,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:u,getSelectedEdges:f,getSelectedNodes:d,removeNodes:p,removeEdges:m,selectionMode:y,deleteKeyCode:b,multiSelectionKeyCode:g,multiSelectionActive:h,edgeLookup:w,nodeLookup:_,connectionLookup:k,defaultEdgeOptions:E,connectionStartHandle:C}=Fe(),N=t.ref(null),I=t.ref(new Set),D=t.ref(new Set),G=t.ref(),K=t.toRef(()=>c.value&&(e.isSelecting||a.value)),S=t.toRef(()=>C.value!==null);let ne=!1,x=!1;const q=ir(b,{actInsideInputWithModifier:!1}),U=ir(g);t.watch(q,W=>{W&&(p(d.value),m(f.value),u.value=!1)}),t.watch(U,W=>{h.value=W});function te(W,ie){return oe=>{oe.target===ie&&(W==null||W(oe))}}function V(W){if(ne||S.value){ne=!1;return}i.paneClick(W),l(),u.value=!1}function T(W){W.preventDefault(),W.stopPropagation(),i.paneContextMenu(W)}function v(W){i.paneScroll(W)}function P(W){var ie,oe,de;if(G.value=(ie=n.value)==null?void 0:ie.getBoundingClientRect(),!c.value||!e.isSelecting||W.button!==0||W.target!==N.value||!G.value)return;(de=(oe=W.target)==null?void 0:oe.setPointerCapture)==null||de.call(oe,W.pointerId);const{x:he,y:X}=xI(W,G.value);x=!0,ne=!1,l(),s.value={width:0,height:0,startX:he,startY:X,x:he,y:X},i.selectionStart(W)}function A(W){var ie;if(!G.value||!s.value)return;ne=!0;const{x:oe,y:de}=Kt(W,G.value),{startX:he=0,startY:X=0}=s.value,ce={startX:he,startY:X,x:oe<he?oe:he,y:de<X?de:X,width:Math.abs(oe-he),height:Math.abs(de-X)},se=I.value,ue=D.value;I.value=new Set(Lf(o.value,ce,r.value,y.value===Pl.Partial,!0).map(O=>O.id)),D.value=new Set;const fe=((ie=E.value)==null?void 0:ie.selectable)??!0;for(const O of I.value){const B=k.value.get(O);if(B)for(const{edgeId:F}of B.values()){const R=w.value.get(F);R&&(R.selectable??fe)&&D.value.add(F)}}if(!ip(se,I.value)){const O=fn(_.value,I.value,!0);i.nodesChange(O)}if(!ip(ue,D.value)){const O=fn(w.value,D.value);i.edgesChange(O)}s.value=ce,a.value=!0,u.value=!1}function Y(W){var ie;W.button!==0||!x||((ie=W.target)==null||ie.releasePointerCapture(W.pointerId),!a.value&&s.value&&W.target===N.value&&V(W),a.value=!1,s.value=null,u.value=I.value.size>0,i.selectionEnd(W),e.selectionKeyPressed&&(ne=!1),x=!1)}return(W,ie)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:N,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:W.isSelecting}]),onClick:ie[0]||(ie[0]=oe=>K.value?void 0:te(V,N.value)(oe)),onContextmenu:ie[1]||(ie[1]=oe=>te(T,N.value)(oe)),onWheelPassive:ie[2]||(ie[2]=oe=>te(v,N.value)(oe)),onPointerenter:ie[3]||(ie[3]=oe=>K.value?void 0:t.unref(i).paneMouseEnter(oe)),onPointerdown:ie[4]||(ie[4]=oe=>K.value?P(oe):t.unref(i).paneMouseMove(oe)),onPointermove:ie[5]||(ie[5]=oe=>K.value?A(oe):t.unref(i).paneMouseMove(oe)),onPointerup:ie[6]||(ie[6]=oe=>K.value?Y(oe):void 0),onPointerleave:ie[7]||(ie[7]=oe=>t.unref(i).paneMouseLeave(oe))},[t.renderSlot(W.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(EI,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(u)&&t.unref(d).length?(t.openBlock(),t.createBlock(vI,{key:1})):t.createCommentVNode("",!0)],34))}}),PI={name:"Transform",compatConfig:{MODE:3}},TI=t.defineComponent({...PI,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Fe(),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))}}),OI={name:"Viewport",compatConfig:{MODE:3}},$I=t.defineComponent({...OI,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:u,panOnScrollSpeed:f,panOnDrag:d,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:y,preventScrolling:b,noWheelClassName:g,noPanClassName:h,emits:w,connectionStartHandle:_,userSelectionActive:k,paneDragging:E,d3Zoom:C,d3Selection:N,d3ZoomHandler:I,viewport:D,viewportRef:G,paneClickDistance:K}=Fe();kI(G);const S=t.shallowRef(!1),ne=t.shallowRef(!1);let x=null,q=!1,U=0,te={x:0,y:0,zoom:0};const V=ir(s),T=ir(l),v=ir(a),P=t.toRef(()=>(!T.value||T.value&&l.value===!0)&&(V.value||d.value)),A=t.toRef(()=>V.value||c.value),Y=t.toRef(()=>T.value||l.value===!0&&P.value!==!0);t.onMounted(()=>{if(!G.value){Ei("Viewport element is missing");return}const X=G.value,ce=X.getBoundingClientRect(),se=nA().clickDistance(K.value).scaleExtent([n.value,o.value]).translateExtent(i.value),ue=Tt(X).call(se),fe=ue.on("wheel.zoom"),O=co.translate(r.value.x??0,r.value.y??0).scale($n(r.value.zoom??1,n.value,o.value)),B=[[0,0],[ce.width,ce.height]],F=se.constrain()(O,B,i.value);se.transform(ue,F),se.wheelDelta(ie),C.value=se,N.value=ue,I.value=fe,D.value={x:F.x,y:F.y,zoom:F.k},se.on("start",R=>{var J;if(!R.sourceEvent)return null;U=R.sourceEvent.button,S.value=!0;const j=de(R.transform);((J=R.sourceEvent)==null?void 0:J.type)==="mousedown"&&(E.value=!0),te=j,w.viewportChangeStart(j),w.moveStart({event:R,flowTransform:j})}),se.on("end",R=>{if(!R.sourceEvent)return null;if(S.value=!1,E.value=!1,W(P.value,U??0)&&!q&&w.paneContextMenu(R.sourceEvent),q=!1,oe(te,R.transform)){const J=de(R.transform);te=J,w.viewportChangeEnd(J),w.moveEnd({event:R,flowTransform:J})}}),se.filter(R=>{var J;const j=v.value||y.value,ae=m.value&&R.ctrlKey,L=R.button;if(L===1&&R.type==="mousedown"&&(he(R,"vue-flow__node")||he(R,"vue-flow__edge")))return!0;if(!P.value&&!j&&!A.value&&!p.value&&!m.value||k.value||!p.value&&R.type==="dblclick"||he(R,g.value)&&R.type==="wheel"||he(R,h.value)&&(R.type!=="wheel"||A.value&&R.type==="wheel"&&!v.value)||!m.value&&R.ctrlKey&&R.type==="wheel"||!j&&!A.value&&!ae&&R.type==="wheel")return!1;if(!m&&R.type==="touchstart"&&((J=R.touches)==null?void 0:J.length)>1)return R.preventDefault(),!1;if(!P.value&&(R.type==="mousedown"||R.type==="touchstart")||l.value===!0&&Array.isArray(d.value)&&d.value.includes(0)&&L===0||Array.isArray(d.value)&&!d.value.includes(L)&&(R.type==="mousedown"||R.type==="touchstart"))return!1;const $=Array.isArray(d.value)&&d.value.includes(L)||l.value===!0&&Array.isArray(d.value)&&!d.value.includes(0)||!L||L<=1;return(!R.ctrlKey||V.value||R.type==="wheel")&&$}),t.watch([k,P],()=>{k.value&&!S.value?se.on("zoom",null):k.value||se.on("zoom",R=>{D.value={x:R.transform.x,y:R.transform.y,zoom:R.transform.k};const J=de(R.transform);q=W(P.value,U??0),w.viewportChange(J),w.move({event:R,flowTransform:J})})},{immediate:!0}),t.watch([k,A,u,v,m,b,g],()=>{A.value&&!v.value&&!k.value?ue.on("wheel.zoom",R=>{if(he(R,g.value))return!1;const J=v.value||y.value,j=m.value&&R.ctrlKey;if(!(!b.value||A.value||J||j))return!1;R.preventDefault(),R.stopImmediatePropagation();const L=ue.property("__zoom").k||1,$=ki();if(!V.value&&R.ctrlKey&&m.value&&$){const ye=Mt(R),me=ie(R),_e=L*2**me;se.scaleTo(ue,_e,ye,R);return}const z=R.deltaMode===1?20:1;let M=u.value===rr.Vertical?0:R.deltaX*z,le=u.value===rr.Horizontal?0:R.deltaY*z;!$&&R.shiftKey&&u.value!==rr.Vertical&&!M&&le&&(M=le,le=0),se.translateBy(ue,-(M/L)*f.value,-(le/L)*f.value);const pe=de(ue.property("__zoom"));x&&clearTimeout(x),ne.value?(w.move({event:R,flowTransform:pe}),w.viewportChange(pe),x=setTimeout(()=>{w.moveEnd({event:R,flowTransform:pe}),w.viewportChangeEnd(pe),ne.value=!1},150)):(ne.value=!0,w.moveStart({event:R,flowTransform:pe}),w.viewportChangeStart(pe))},{passive:!1}):typeof fe<"u"&&ue.on("wheel.zoom",function(R,J){const j=!b.value&&R.type==="wheel"&&!R.ctrlKey,ae=v.value||y.value,L=m.value&&R.ctrlKey;if(!ae&&!c.value&&!L&&R.type==="wheel"||j||he(R,g.value))return null;R.preventDefault(),fe.call(this,R,J)},{passive:!1})},{immediate:!0})});function W(X,ce){return ce===2&&Array.isArray(X)&&X.includes(2)}function ie(X){const ce=X.ctrlKey&&ki()?10:1;return-X.deltaY*(X.deltaMode===1?.05:X.deltaMode?1:.002)*ce}function oe(X,ce){return X.x!==ce.x&&!Number.isNaN(ce.x)||X.y!==ce.y&&!Number.isNaN(ce.y)||X.zoom!==ce.k&&!Number.isNaN(ce.k)}function de(X){return{x:X.x,y:X.y,zoom:X.k}}function he(X,ce){return X.target.closest(`.${ce}`)}return(X,ce)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:G,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(II,{"is-selecting":Y.value,"selection-key-pressed":t.unref(T),class:t.normalizeClass({connecting:!!t.unref(_),dragging:t.unref(E),draggable:t.unref(d)===!0||Array.isArray(t.unref(d))&&t.unref(d).includes(0)})},{default:t.withCtx(()=>[t.createVNode(TI,null,{default:t.withCtx(()=>[t.renderSlot(X.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),BI=["id"],VI=["id"],RI=["id"],DI={name:"A11yDescriptions",compatConfig:{MODE:3}},MI=t.defineComponent({...DI,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Fe();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(If)}-${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,BI),t.createElementVNode("div",{id:`${t.unref(Pf)}-${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,VI),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(sA)}-${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,RI))],64))}});function LI(){const e=Fe();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function FI(e,n,o){return o===ke.Left?e-n:o===ke.Right?e+n:e}function UI(e,n,o){return o===ke.Top?e-n:o===ke.Bottom?e+n:e}const ql=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=ke.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:FI(n,e,r),cy:UI(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};ql.props=["radius","centerX","centerY","position","type"],ql.compatConfig={MODE:3};const Ep=ql,KI=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:u,findEdge:f,findNode:d,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:y,elementsSelectable:b,edgesUpdatable:g,edgesFocusable:h,hooks:w}=Fe(),_=t.computed(()=>f(e.id)),{emit:k,on:E}=MA(_.value,a),C=t.inject(Ni),N=t.getCurrentInstance(),I=t.ref(!1),D=t.ref(!1),G=t.ref(""),K=t.ref(null),S=t.ref("source"),ne=t.ref(null),x=t.toRef(()=>typeof _.value.selectable>"u"?b.value:_.value.selectable),q=t.toRef(()=>typeof _.value.updatable>"u"?g.value:_.value.updatable),U=t.toRef(()=>typeof _.value.focusable>"u"?h.value:_.value.focusable);t.provide(VA,e.id),t.provide(RA,ne);const te=t.computed(()=>_.value.class instanceof Function?_.value.class(_.value):_.value.class),V=t.computed(()=>_.value.style instanceof Function?_.value.style(_.value):_.value.style),T=t.computed(()=>{const B=_.value.type||"default",F=C==null?void 0:C[`edge-${B}`];if(F)return F;let R=_.value.template??c.value[B];if(typeof R=="string"&&N){const J=Object.keys(N.appContext.components);J&&J.includes(B)&&(R=t.resolveComponent(B,!1))}return R&&typeof R!="string"?R:(a.error(new at(Qe.EDGE_TYPE_MISSING,R)),!1)}),{handlePointerDown:v}=dp({nodeId:G,handleId:K,type:S,isValidConnection:p,edgeUpdaterType:S,onEdgeUpdate:Y,onEdgeUpdateEnd:W});return()=>{const B=d(_.value.source),F=d(_.value.target),R="pathOptions"in _.value?_.value.pathOptions:{};if(!B&&!F)return a.error(new at(Qe.EDGE_SOURCE_TARGET_MISSING,_.value.id,_.value.source,_.value.target)),null;if(!B)return a.error(new at(Qe.EDGE_SOURCE_MISSING,_.value.id,_.value.source)),null;if(!F)return a.error(new at(Qe.EDGE_TARGET_MISSING,_.value.id,_.value.target)),null;if(!_.value||_.value.hidden||B.hidden||F.hidden)return null;let J;r.value===cn.Strict?J=B.handleBounds.source:J=[...B.handleBounds.source||[],...B.handleBounds.target||[]];const j=Zf(J,_.value.sourceHandle);let ae;r.value===cn.Strict?ae=F.handleBounds.target:ae=[...F.handleBounds.target||[],...F.handleBounds.source||[]];const L=Zf(ae,_.value.targetHandle),$=(j==null?void 0:j.position)||ke.Bottom,z=(L==null?void 0:L.position)||ke.Top,{x:M,y:le}=fo(B,j,$),{x:pe,y:ye}=fo(F,L,z);return _.value.sourceX=M,_.value.sourceY=le,_.value.targetX=pe,_.value.targetY=ye,t.h("g",{ref:ne,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${T.value===!1?"default":_.value.type||"default"}`,s.value,te.value,{updating:I.value,selected:_.value.selected,animated:_.value.animated,inactive:!x.value&&!w.value.edgeClick.hasListeners()}],tabIndex:U.value?0:void 0,"aria-label":_.value.ariaLabel===null?void 0:_.value.ariaLabel??`Edge from ${_.value.source} to ${_.value.target}`,"aria-describedby":U.value?`${Pf}-${n}`:void 0,"aria-roledescription":"edge",role:U.value?"group":"img",..._.value.domAttributes,onClick:oe,onContextmenu:de,onDblclick:he,onMouseenter:X,onMousemove:ce,onMouseleave:se,onKeyDown:U.value?O:void 0},[D.value?null:t.h(T.value===!1?c.value.default:T.value,{id:e.id,sourceNode:B,targetNode:F,source:_.value.source,target:_.value.target,type:_.value.type,updatable:q.value,selected:_.value.selected,animated:_.value.animated,label:_.value.label,labelStyle:_.value.labelStyle,labelShowBg:_.value.labelShowBg,labelBgStyle:_.value.labelBgStyle,labelBgPadding:_.value.labelBgPadding,labelBgBorderRadius:_.value.labelBgBorderRadius,data:_.value.data,events:{..._.value.events,...E},style:V.value,markerStart:`url('#${sr(_.value.markerStart,n)}')`,markerEnd:`url('#${sr(_.value.markerEnd,n)}')`,sourcePosition:$,targetPosition:z,sourceX:M,sourceY:le,targetX:pe,targetY:ye,sourceHandleId:_.value.sourceHandle,targetHandleId:_.value.targetHandle,interactionWidth:_.value.interactionWidth,...R}),[q.value==="source"||q.value===!0?[t.h("g",{onMousedown:ue,onMouseenter:P,onMouseout:A},t.h(Ep,{position:$,centerX:M,centerY:le,radius:i.value,type:"source","data-type":"source"}))]:null,q.value==="target"||q.value===!0?[t.h("g",{onMousedown:fe,onMouseenter:P,onMouseout:A},t.h(Ep,{position:z,centerX:pe,centerY:ye,radius:i.value,type:"target","data-type":"target"}))]:null]])};function P(){I.value=!0}function A(){I.value=!1}function Y(B,F){k.update({event:B,edge:_.value,connection:F})}function W(B){k.updateEnd({event:B,edge:_.value}),D.value=!1}function ie(B,F){B.button===0&&(D.value=!0,G.value=F?_.value.target:_.value.source,K.value=(F?_.value.targetHandle:_.value.sourceHandle)??null,S.value=F?"target":"source",k.updateStart({event:B,edge:_.value}),v(B))}function oe(B){var F;const R={event:B,edge:_.value};x.value&&(l.value=!1,_.value.selected&&m.value?(u([_.value]),(F=ne.value)==null||F.blur()):o([_.value])),k.click(R)}function de(B){k.contextMenu({event:B,edge:_.value})}function he(B){k.doubleClick({event:B,edge:_.value})}function X(B){k.mouseEnter({event:B,edge:_.value})}function ce(B){k.mouseMove({event:B,edge:_.value})}function se(B){k.mouseLeave({event:B,edge:_.value})}function ue(B){ie(B,!0)}function fe(B){ie(B,!1)}function O(B){var F;!y.value&&Tf.includes(B.key)&&x.value&&(B.key==="Escape"?((F=ne.value)==null||F.blur(),u([f(e.id)])):o([f(e.id)]))}}}),jI=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:u,viewport:f,findNode:d}=Fe(),p=(e=t.inject(Ni))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return d((w=r.value)==null?void 0:w.nodeId)}),y=t.computed(()=>{var w;return d((w=i.value)==null?void 0:w.nodeId)??null}),b=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),g=t.computed(()=>c.value.markerStart?`url(#${sr(c.value.markerStart,n)})`:""),h=t.computed(()=>c.value.markerEnd?`url(#${sr(c.value.markerEnd,n)})`:"");return()=>{var w,_,k;if(!m.value||!r.value)return null;const E=r.value.id,C=r.value.type,N=m.value.handleBounds;let I=(N==null?void 0:N[C])??[];if(o.value===cn.Loose){const V=(N==null?void 0:N[C==="source"?"target":"source"])??[];I=[...I,...V]}if(!I)return null;const D=(E?I.find(V=>V.id===E):I[0])??null,G=(D==null?void 0:D.position)??ke.Top,{x:K,y:S}=fo(m.value,D,G);let ne=null;y.value&&(o.value===cn.Strict?ne=((w=y.value.handleBounds[C==="source"?"target":"source"])==null?void 0:w.find(V=>{var T;return V.id===((T=i.value)==null?void 0:T.id)}))||null:ne=((_=[...y.value.handleBounds.source??[],...y.value.handleBounds.target??[]])==null?void 0:_.find(V=>{var T;return V.id===((T=i.value)==null?void 0:T.id)}))||null);const x=((k=i.value)==null?void 0:k.position)??(G?Ml[G]:null);if(!G||!x)return null;const q=l.value??c.value.type??On.Bezier;let U="";const te={sourceX:K,sourceY:S,sourcePosition:G,targetX:b.value.x,targetY:b.value.y,targetPosition:x};return q===On.Bezier?[U]=yp(te):q===On.Step?[U]=Gl({...te,borderRadius:0}):q===On.SmoothStep?[U]=Gl(te):q===On.SimpleBezier?[U]=bp(te):U=`M${K},${S} ${b.value.x},${b.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:K,sourceY:S,sourcePosition:G,targetX:b.value.x,targetY:b.value.y,targetPosition:x,sourceNode:m.value,sourceHandle:D,targetNode:y.value,targetHandle:ne,markerEnd:h.value,markerStart:g.value,connectionStatus:u.value}):t.h("path",{d:U,class:[c.value.class,u,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":h.value,"marker-start":g.value})))}}}),GI=["id","markerWidth","markerHeight","markerUnits","orient"],qI={name:"MarkerType",compatConfig:{MODE:3}},zI=t.defineComponent({...qI,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(or).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(or).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,GI))}}),HI={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},YI={name:"MarkerDefinitions",compatConfig:{MODE:3}},WI=t.defineComponent({...YI,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Fe(),a=t.computed(()=>{const l=new Set,s=[],c=u=>{if(u){const f=sr(u,n);l.has(f)||(typeof u=="object"?s.push({...u,id:f,color:u.color||i.value}):s.push({id:f,color:i.value,type:u}),l.add(f))}};for(const u of[r.value.markerEnd,r.value.markerStart])c(u);for(const u of o.value)for(const f of[u.markerStart,u.markerEnd])c(f);return s.sort((u,f)=>u.id.localeCompare(f.id))});return(l,s)=>(t.openBlock(),t.createElementBlock("svg",HI,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(zI,{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))])]))}}),XI={name:"Edges",compatConfig:{MODE:3}},ZI=t.defineComponent({...XI,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Fe();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(WI),(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(CA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(KI),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(jI))],64))}}),JI=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:u,onUpdateNodeInternals:f,getNodeTypes:d,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:y,ariaLiveMessage:b,snapToGrid:g,snapGrid:h,nodeDragThreshold:w,nodesDraggable:_,elementsSelectable:k,nodesConnectable:E,nodesFocusable:C,hooks:N}=Fe(),I=t.ref(null);t.provide(sp,I),t.provide(lp,e.id);const D=t.inject(Ni),G=t.getCurrentInstance(),K=fp(),{node:S,parentNode:ne}=up(e.id),{emit:x,on:q}=KA(S,l),U=t.toRef(()=>typeof S.draggable>"u"?_.value:S.draggable),te=t.toRef(()=>typeof S.selectable>"u"?k.value:S.selectable),V=t.toRef(()=>typeof S.connectable>"u"?E.value:S.connectable),T=t.toRef(()=>typeof S.focusable>"u"?C.value:S.focusable),v=t.computed(()=>te.value||U.value||N.value.nodeClick.hasListeners()||N.value.nodeDoubleClick.hasListeners()||N.value.nodeMouseEnter.hasListeners()||N.value.nodeMouseMove.hasListeners()||N.value.nodeMouseLeave.hasListeners()),P=t.toRef(()=>!!S.dimensions.width&&!!S.dimensions.height),A=t.computed(()=>{const F=S.type||"default",R=D==null?void 0:D[`node-${F}`];if(R)return R;let J=S.template||d.value[F];if(typeof J=="string"&&G){const j=Object.keys(G.appContext.components);j&&j.includes(F)&&(J=t.resolveComponent(F,!1))}return J&&typeof J!="string"?J:(l.error(new at(Qe.NODE_TYPE_MISSING,J)),!1)}),Y=cp({id:e.id,el:I,disabled:()=>!U.value,selectable:te,dragHandle:()=>S.dragHandle,onStart(F){x.dragStart(F)},onDrag(F){x.drag(F)},onStop(F){x.dragStop(F)},onClick(F){O(F)}}),W=t.computed(()=>S.class instanceof Function?S.class(S):S.class),ie=t.computed(()=>{const F=(S.style instanceof Function?S.style(S):S.style)||{},R=S.width instanceof Function?S.width(S):S.width,J=S.height instanceof Function?S.height(S):S.height;return!F.width&&R&&(F.width=typeof R=="string"?R:`${R}px`),!F.height&&J&&(F.height=typeof J=="string"?J:`${J}px`),F}),oe=t.toRef(()=>Number(S.zIndex??ie.value.zIndex??0));return f(F=>{(F.includes(e.id)||!F.length)&&he()}),t.onMounted(()=>{t.watch(()=>S.hidden,(F=!1,R,J)=>{!F&&I.value&&(e.resizeObserver.observe(I.value),J(()=>{I.value&&e.resizeObserver.unobserve(I.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>S.type,()=>S.sourcePosition,()=>S.targetPosition],()=>{t.nextTick(()=>{u([{id:e.id,nodeElement:I.value,forceUpdate:!0}])})}),t.watch([()=>S.position.x,()=>S.position.y,()=>{var F;return(F=ne.value)==null?void 0:F.computedPosition.x},()=>{var F;return(F=ne.value)==null?void 0:F.computedPosition.y},()=>{var F;return(F=ne.value)==null?void 0:F.computedPosition.z},oe,()=>S.selected,()=>S.dimensions.height,()=>S.dimensions.width,()=>{var F;return(F=ne.value)==null?void 0:F.dimensions.height},()=>{var F;return(F=ne.value)==null?void 0:F.dimensions.width}],([F,R,J,j,ae,L])=>{const $={x:F,y:R,z:L+(m.value&&S.selected?1e3:0)};typeof J<"u"&&typeof j<"u"?S.computedPosition=hA({x:J,y:j,z:ae},$):S.computedPosition=$},{flush:"post",immediate:!0}),t.watch([()=>S.extent,p],([F,R],[J,j])=>{(F!==J||R!==j)&&de()}),S.extent==="parent"||typeof S.extent=="object"&&"range"in S.extent&&S.extent.range==="parent"?cl(()=>P).toBe(!0).then(de):de(),()=>S.hidden?null:t.h("div",{ref:I,"data-id":S.id,class:["vue-flow__node",`vue-flow__node-${A.value===!1?"default":S.type||"default"}`,{[o.value]:U.value,dragging:Y==null?void 0:Y.value,draggable:U.value,selected:S.selected,selectable:te.value,parent:S.isParent},W.value],style:{visibility:P.value?"visible":"hidden",zIndex:S.computedPosition.z??oe.value,transform:`translate(${S.computedPosition.x}px,${S.computedPosition.y}px)`,pointerEvents:v.value?"all":"none",...ie.value},tabIndex:T.value?0:void 0,role:T.value?"group":void 0,"aria-describedby":y.value?void 0:`${If}-${n}`,"aria-label":S.ariaLabel,"aria-roledescription":"node",...S.domAttributes,onMouseenter:X,onMousemove:ce,onMouseleave:se,onContextmenu:ue,onClick:O,onDblclick:fe,onKeydown:B},[t.h(A.value===!1?d.value.default:A.value,{id:S.id,type:S.type,data:S.data,events:{...S.events,...q},selected:S.selected,resizing:S.resizing,dragging:Y.value,connectable:V.value,position:S.computedPosition,dimensions:S.dimensions,isValidTargetPos:S.isValidTargetPos,isValidSourcePos:S.isValidSourcePos,parent:S.parentNode,parentNodeId:S.parentNode,zIndex:S.computedPosition.z??oe.value,targetPosition:S.targetPosition,sourcePosition:S.sourcePosition,label:S.label,dragHandle:S.dragHandle,onUpdateNodeInternals:he})]);function de(){const F=S.computedPosition,{computedPosition:R,position:J}=Vl(S,g.value?Ci(F,h.value):F,l.error,p.value,ne.value);(S.computedPosition.x!==R.x||S.computedPosition.y!==R.y)&&(S.computedPosition={...S.computedPosition,...R}),(S.position.x!==J.x||S.position.y!==J.y)&&(S.position=J)}function he(){I.value&&u([{id:e.id,nodeElement:I.value,forceUpdate:!0}])}function X(F){Y!=null&&Y.value||x.mouseEnter({event:F,node:S})}function ce(F){Y!=null&&Y.value||x.mouseMove({event:F,node:S})}function se(F){Y!=null&&Y.value||x.mouseLeave({event:F,node:S})}function ue(F){return x.contextMenu({event:F,node:S})}function fe(F){return x.doubleClick({event:F,node:S})}function O(F){te.value&&(!r.value||!U.value||w.value>0)&&Ll(S,a.value,c,s,i,!1,I.value),x.click({event:F,node:S})}function B(F){if(!(Tl(F)||y.value))if(Tf.includes(F.key)&&te.value){const R=F.key==="Escape";Ll(S,a.value,c,s,i,R,I.value)}else U.value&&S.selected&&uo[F.key]&&(F.preventDefault(),b.value=`Moved selected node ${F.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~S.position.x}, y: ${~~S.position.y}`,K({x:uo[F.key].x,y:uo[F.key].y},F.shiftKey))}}});function QI(e={includeHiddenNodes:!1}){const{nodes:n}=Fe();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 eP={class:"vue-flow__nodes vue-flow__container"},tP={name:"Nodes",compatConfig:{MODE:3}},nP=t.defineComponent({...tP,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Fe(),i=QI(),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",eP,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,u,f,d)=>{const p=[c.id];if(d&&d.key===c.id&&t.isMemoSame(d,p))return d;const m=(t.openBlock(),t.createBlock(t.unref(JI),{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 oP(){const{emits:e}=Fe();t.onMounted(()=>{if(tp()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new at(Qe.MISSING_STYLES))}})}const rP=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),iP={name:"VueFlow",compatConfig:{MODE:3}},Np=t.defineComponent({...iP,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=dl(r,"modelValue",o),l=dl(r,"nodes",o),s=dl(r,"edges",o),c=Fe(r),u=zA({modelValue:a,nodes:l,edges:s},r,c);return YA(o,c.hooks),LI(),oP(),t.provide(Ni,i),t.onUnmounted(()=>{u()}),n(c),(f,d)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode($I,null,{default:t.withCtx(()=>[t.createVNode(ZI),rP,t.createVNode(nP),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(MI)],512))}}),aP={name:"Panel",compatConfig:{MODE:3}},lP=t.defineComponent({...aP,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Fe(),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 tn=(e=>(e.Lines="lines",e.Dots="dots",e))(tn||{});const Sp=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]}`})},vp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};tn.Lines+"",tn.Dots+"";const sP={[tn.Dots]:"#81818a",[tn.Lines]:"#eee"},cP=["id","x","y","width","height","patternTransform"],dP={key:2,height:"100",width:"100"},uP=["fill"],fP=["x","y","fill"],pP={name:"Background",compatConfig:{MODE:3}},mP=t.defineComponent({...pP,props:{id:{},variant:{default:()=>tn.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}=Fe(),r=t.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],u=[s*l||1,c*l||1],f=e.size*l,[d,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[d*l||1+u[0]/2,p*l||1+u[1]/2];return{scaledGap:u,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||sP[e.variant||tn.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(tn).Lines?(t.openBlock(),t.createBlock(t.unref(Sp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(tn).Dots?(t.openBlock(),t.createBlock(t.unref(vp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",dP,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,uP)])):t.createCommentVNode("",!0)])],8,cP)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,fP),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),gP={name:"ControlButton",compatConfig:{MODE:3}},hP=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},yP={class:"vue-flow__controls-button"};function _P(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",yP,[t.renderSlot(e.$slots,"default")])}const cr=hP(gP,[["render",_P]]),bP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},wP=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function kP(e,n){return t.openBlock(),t.createElementBlock("svg",bP,wP)}const CP={render:kP},EP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},NP=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function SP(e,n){return t.openBlock(),t.createElementBlock("svg",EP,NP)}const vP={render:SP},xP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},AP=[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 IP(e,n){return t.openBlock(),t.createElementBlock("svg",xP,AP)}const PP={render:IP},TP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},OP=[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 $P(e,n){return t.openBlock(),t.createElementBlock("svg",TP,OP)}const BP={render:$P},VP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},RP=[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 DP(e,n){return t.openBlock(),t.createElementBlock("svg",VP,RP)}const MP={render:DP},LP={name:"Controls",compatConfig:{MODE:3}},FP=t.defineComponent({...LP,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>xf.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:u,minZoom:f,maxZoom:d}=Fe(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>u.value.zoom<=f.value),y=t.toRef(()=>u.value.zoom>=d.value);function b(){l(),n("zoomIn")}function g(){s(),n("zoomOut")}function h(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(_,k)=>(t.openBlock(),t.createBlock(t.unref(lP),{class:"vue-flow__controls",position:_.position},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"top"),_.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(_.$slots,"control-zoom-in",{},()=>[t.createVNode(cr,{class:"vue-flow__controls-zoomin",disabled:y.value,onClick:b},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(CP))))])]),_:3},8,["disabled"])]),t.renderSlot(_.$slots,"control-zoom-out",{},()=>[t.createVNode(cr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(vP))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),_.showFitView?t.renderSlot(_.$slots,"control-fit-view",{key:1},()=>[t.createVNode(cr,{class:"vue-flow__controls-fitview",onClick:h},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(PP))))])]),_:3})]):t.createCommentVNode("",!0),_.showInteractive?t.renderSlot(_.$slots,"control-interactive",{key:2},()=>[_.showInteractive?(t.openBlock(),t.createBlock(cr,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(_.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(MP))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(_.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(BP))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(_.$slots,"default")]),_:3},8,["position"]))}}),UP=["undo","redo","duplicate","cut","copy","paste"],xp=()=>{};function KP(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function jP(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 GP=Xe.createSharedComposable(()=>{const e=new Set;Xe.useEventListener("keydown",o=>{if(KP(o.target))return;const r=jP(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(!UP.some(i=>typeof o[i]=="function"))return xp;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function Ap(e={}){if(typeof window>"u")return xp;const n=GP().subscribe(e);return t.onScopeDispose(n),n}const dr={padding:80,gaps:{nodes:40,edges:80,ranks:40}},qP=1600,zP=1.2,HP=0,YP=200,Ip=Symbol("confirm-modal"),po="{key}",Rn={"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}},Ti=Object.keys(Rn).filter(e=>e.includes(po)).map(e=>e.replace(po,""));function zl(e){if(!e||!fr(e))return;const n=Ti.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(po,"")}function ur(e){if(!e)return null;const n=Ti.find(o=>e.startsWith(o));return n||e}function fr(e){return e?Ti.some(n=>e.startsWith(n)):!1}function Pp(e){return e?fr(e)?ur(e)+po:e:null}function Hl(e){var o;if(!e)return!1;const n=Pp(e);return n?((o=Rn[n])==null?void 0:o.readable)??!1:!1}function Yl(e){var o;if(!e)return!1;const n=Pp(e);return n?((o=Rn[n])==null?void 0:o.writable)??!1:!1}function WP(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var XP="\0",Dn="\0",Tp="";let ZP=class{constructor(n){ot(this,"_isDirected",!0);ot(this,"_isMultigraph",!1);ot(this,"_isCompound",!1);ot(this,"_label");ot(this,"_defaultNodeLabelFn",()=>{});ot(this,"_defaultEdgeLabelFn",()=>{});ot(this,"_nodes",{});ot(this,"_in",{});ot(this,"_preds",{});ot(this,"_out",{});ot(this,"_sucs",{});ot(this,"_edgeObjs",{});ot(this,"_edgeLabels",{});ot(this,"_nodeCount",0);ot(this,"_edgeCount",0);ot(this,"_parent");ot(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[Dn]={})}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]=Dn,this._children[n]={},this._children[Dn][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=Dn;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!==Dn)return o}}children(n=Dn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===Dn)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=pr(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=JP(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Op(this._preds[o],n),Op(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?Wl(this._isDirected,arguments[0]):pr(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?Wl(this._isDirected,arguments[0]):pr(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?Wl(this._isDirected,arguments[0]):pr(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],$p(this._preds[o],n),$p(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 Op(e,n){e[n]?e[n]++:e[n]=1}function $p(e,n){--e[n]||delete e[n]}function pr(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Tp+a+Tp+(r===void 0?XP:r)}function JP(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 Wl(e,n){return pr(e,n.v,n.w,n.name)}var Xl=ZP,QP="2.2.4",eT={Graph:Xl,version:QP},tT=Xl,nT={write:oT,read:aT};function oT(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:rT(e),edges:iT(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function rT(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 iT(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 tT(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 lT=sT;function sT(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 Bp=class{constructor(){ot(this,"_arr",[]);ot(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}},cT=Bp,Vp=uT,dT=()=>1;function uT(e,n,o,r){return fT(e,String(n),o||dT,r||function(i){return e.outEdges(i)})}function fT(e,n,o,r){var i={},a=new cT,l,s,c=function(u){var f=u.v!==l?u.v:u.w,d=i[f],p=o(u),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+u+" Weight: "+p);m<d.distance&&(d.distance=m,d.predecessor=l,a.decrease(f,m))};for(e.nodes().forEach(function(u){var f=u===n?0:Number.POSITIVE_INFINITY;i[u]={distance:f},a.add(u,f)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var pT=Vp,mT=gT;function gT(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=pT(e,i,n,o),r},{})}var Rp=hT;function hT(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=[],u;do u=o.pop(),r[u].onStack=!1,c.push(u);while(l!==u);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var yT=Rp,_T=bT;function bT(e){return yT(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var wT=CT,kT=()=>1;function CT(e,n,o){return ET(e,n||kT,o||function(r){return e.outEdges(r)})}function ET(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(u){var f=c[a],d=l[u],p=c[u],m=f.distance+d.distance;m<p.distance&&(p.distance=m,p.predecessor=d.predecessor)})})}),r}function Dp(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new Zl;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 Zl;return r}class Zl extends Error{constructor(){super(...arguments)}}var Mp=Dp;Dp.CycleException=Zl;var Lp=Mp,NT=ST;function ST(e){try{Lp(e)}catch(n){if(n instanceof Lp.CycleException)return!1;throw n}return!0}var Fp=vT;function vT(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?xT:AT,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 xT(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]),Up(n(a[0]),l=>i.push([l,!1])))}}function AT(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),Up(n(a),l=>i.push(l)))}}function Up(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var IT=Fp,PT=TT;function TT(e,n){return IT(e,n,"post")}var OT=Fp,$T=BT;function BT(e,n){return OT(e,n,"pre")}var VT=Xl,RT=Bp,DT=MT;function MT(e,n){var o=new VT,r={},i=new RT,a;function l(c){var u=c.v===a?c.w:c.v,f=i.priority(u);if(f!==void 0){var d=n(c);d<f&&(r[u]=a,i.decrease(u,d))}}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 LT={components:lT,dijkstra:Vp,dijkstraAll:mT,findCycles:_T,floydWarshall:wT,isAcyclic:NT,postorder:PT,preorder:$T,prim:DT,tarjan:Rp,topsort:Mp},Kp=eT,Bt={Graph:Kp.Graph,json:nT,alg:LT,version:Kp.version};let FT=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return jp(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&jp(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,UT)),r=r._prev;return"["+n.join(", ")+"]"}};function jp(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function UT(e,n){if(e!=="_next"&&e!=="_prev")return n}var KT=FT;let jT=Bt.Graph,GT=KT;var qT=HT;let zT=()=>1;function HT(e,n){if(e.nodeCount()<=1)return[];let o=WT(e,n||zT);return YT(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function YT(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)Jl(e,n,o,l);for(;l=i.dequeue();)Jl(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(Jl(e,n,o,l,!0));break}}}return r}function Jl(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,Ql(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,u=e.node(c);u.in-=s,Ql(n,o,u)}),e.removeNode(r.v),a}function WT(e,n){let o=new jT,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,u=n(s),f=c+u;o.setEdge(s.v,s.w,f),i=Math.max(i,o.node(s.v).out+=u),r=Math.max(r,o.node(s.w).in+=u)});let a=XT(i+r+3).map(()=>new GT),l=r+1;return o.nodes().forEach(s=>{Ql(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function Ql(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 XT(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let Gp=Bt.Graph;var tt={addBorderNode:iO,addDummyNode:qp,applyWithChunking:Oi,asNonCompoundGraph:JT,buildLayerMatrix:nO,intersectRect:tO,mapValues:fO,maxRank:Hp,normalizeRanks:oO,notime:cO,partition:lO,pick:uO,predecessorWeights:eO,range:Wp,removeEmptyRanks:rO,simplify:ZT,successorWeights:QT,time:sO,uniqueId:Yp,zipObject:es};function qp(e,n,o,r){for(var i=r;e.hasNode(i);)i=Yp(r);return o.dummy=n,e.setNode(i,o),i}function ZT(e){let n=new Gp().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 JT(e){let n=new Gp({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 QT(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 es(e.nodes(),n)}function eO(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 es(e.nodes(),n)}function tO(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,u;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,u=s):(i<0&&(l=-l),c=l,u=l*a/i),{x:o+c,y:r+u}}function nO(e){let n=Wp(Hp(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 oO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=Oi(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function rO(e){let n=e.nodes().map(l=>e.node(l).rank),o=Oi(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 iO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),qp(e,"border",i,n)}function aO(e,n=zp){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const zp=65535;function Oi(e,n){if(n.length>zp){const o=aO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function Hp(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return Oi(Math.max,o)}function lO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function sO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function cO(e,n){return n()}let dO=0;function Yp(e){var n=++dO;return e+(""+n)}function Wp(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 uO(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function fO(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 es(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let pO=qT,mO=tt.uniqueId;var gO={run:hO,undo:_O};function hO(e){(e.graph().acyclicer==="greedy"?pO(e,o(e)):yO(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,mO("rev"))});function o(r){return i=>r.edge(i).weight}}function yO(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 _O(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 bO=tt;var wO={run:kO,undo:EO};function kO(e){e.graph().dummyChains=[],e.edges().forEach(n=>CO(e,n))}function CO(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 u,f,d;for(d=0,++r;r<a;++d,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},u=bO.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,u,{weight:s.weight},l),d===0&&e.graph().dummyChains.push(u),o=u;e.setEdge(o,i,{weight:s.weight},l)}function EO(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:NO}=tt;var $i={longestPath:SO,slack:vO};function SO(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=NO(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function vO(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var xO=Bt.Graph,Bi=$i.slack,Xp=AO;function AO(e){var n=new xO({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;IO(n,e)<r;)i=PO(n,e),a=n.hasNode(i.v)?Bi(e,i):-Bi(e,i),TO(n,e,a);return n}function IO(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!Bi(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function PO(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=Bi(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function TO(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var OO=Xp,Zp=$i.slack,$O=$i.longestPath,BO=Bt.alg.preorder,VO=Bt.alg.postorder,RO=tt.simplify,DO=Mn;Mn.initLowLimValues=ns,Mn.initCutValues=ts,Mn.calcCutValue=Jp,Mn.leaveEdge=em,Mn.enterEdge=tm,Mn.exchangeEdges=nm;function Mn(e){e=RO(e),$O(e);var n=OO(e);ns(n),ts(n,e);for(var o,r;o=em(n);)r=tm(n,e,o),nm(n,e,o,r)}function ts(e,n){var o=VO(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>MO(e,n,r))}function MO(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=Jp(e,n,o)}function Jp(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 u=c.v===o,f=u?c.w:c.v;if(f!==i){var d=u===a,p=n.edge(c).weight;if(s+=d?p:-p,FO(e,o,f)){var m=e.edge(o,f).cutvalue;s+=d?-m:m}}}),s}function ns(e,n){arguments.length<2&&(n=e.nodes()[0]),Qp(e,{},1,n)}function Qp(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=Qp(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function em(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function tm(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 u=n.edges().filter(f=>c===om(e,e.node(f.v),s)&&c!==om(e,e.node(f.w),s));return u.reduce((f,d)=>Zp(n,d)<Zp(n,f)?d:f)}function nm(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),ns(e),ts(e,n),LO(e,n)}function LO(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=BO(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 FO(e,n,o){return e.hasEdge(n,o)}function om(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var UO=$i,rm=UO.longestPath,KO=Xp,jO=DO,GO=qO;function qO(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":im(e);break;case"tight-tree":HO(e);break;case"longest-path":zO(e);break;case"none":break;default:im(e)}}var zO=rm;function HO(e){rm(e),KO(e)}function im(e){jO(e)}var YO=WO;function WO(e){let n=ZO(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=XO(e,n,i.v,i.w),l=a.path,s=a.lca,c=0,u=l[c],f=!0;for(;o!==i.w;){if(r=e.node(o),f){for(;(u=l[c])!==s&&e.node(u).maxRank<r.rank;)c++;u===s&&(f=!1)}if(!f){for(;c<l.length-1&&e.node(u=l[c+1]).minRank<=r.rank;)c++;u=l[c]}e.setParent(o,u),o=e.successors(o)[0]}})}function XO(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,u;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(u=c,c=r;(c=e.parent(c))!==u;)a.push(c);return{path:i.concat(a.reverse()),lca:u}}function ZO(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 Vi=tt;var JO={run:QO,cleanup:n$};function QO(e){let n=Vi.addDummyNode(e,"root",{},"_root"),o=e$(e),r=Object.values(o),i=Vi.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=t$(e)+1;e.children().forEach(s=>am(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function am(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=Vi.addBorderNode(e,"_bt"),u=Vi.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(u,l),f.borderBottom=u,s.forEach(d=>{am(e,n,o,r,i,a,d);let p=e.node(d),m=p.borderTop?p.borderTop:d,y=p.borderBottom?p.borderBottom:d,b=p.borderTop?r:2*r,g=m!==y?1:i-a[l]+1;e.setEdge(c,m,{weight:b,minlen:g,nestingEdge:!0}),e.setEdge(y,u,{weight:b,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function e$(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 t$(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 o$=tt;var r$=i$;function i$(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)lm(e,"borderLeft","_bl",o,i,a),lm(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function lm(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=o$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var a$={adjust:l$,undo:s$};function l$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&sm(e)}function s$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&c$(e),(n==="lr"||n==="rl")&&(d$(e),sm(e))}function sm(e){e.nodes().forEach(n=>cm(e.node(n))),e.edges().forEach(n=>cm(e.edge(n)))}function cm(e){let n=e.width;e.width=e.height,e.height=n}function c$(e){e.nodes().forEach(n=>os(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(os),Object.hasOwn(o,"y")&&os(o)})}function os(e){e.y=-e.y}function d$(e){e.nodes().forEach(n=>rs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(rs),Object.hasOwn(o,"x")&&rs(o)})}function rs(e){let n=e.x;e.x=e.y,e.y=n}let dm=tt;var u$=f$;function f$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=dm.applyWithChunking(Math.max,r),a=dm.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[c]=!0;let u=e.node(c);a[u.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,u)=>e.node(c).rank-e.node(u).rank).forEach(l),a}let p$=tt.zipObject;var m$=g$;function g$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=h$(e,n[r-1],n[r]);return o}function h$(e,n,o){let r=p$(o,o.map((u,f)=>f)),i=n.flatMap(u=>e.outEdges(u).map(f=>({pos:r[f.w],weight:e.edge(f).weight})).sort((f,d)=>f.pos-d.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(u=>{let f=u.pos+a;s[f]+=u.weight;let d=0;for(;f>0;)f%2&&(d+=s[f+1]),f=f-1>>1,s[f]+=u.weight;c+=u.weight*d}),c}var y$=_$;function _$(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 b$=tt;var w$=k$;function k$(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 C$(r)}function C$(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&E$(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=>b$.pick(i,["vs","i","barycenter","weight"]))}function E$(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 N$=tt;var S$=v$;function v$(e,n){let o=N$.partition(e,f=>Object.hasOwn(f,"barycenter")),r=o.lhs,i=o.rhs.sort((f,d)=>d.i-f.i),a=[],l=0,s=0,c=0;r.sort(x$(!!n)),c=um(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=um(a,i,c)});let u={vs:a.flat(!0)};return s&&(u.barycenter=l/s,u.weight=s),u}function um(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 x$(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let A$=y$,I$=w$,P$=S$;var T$=fm;function fm(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 u=A$(e,i);u.forEach(p=>{if(e.children(p.v).length){let m=fm(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&$$(p,m)}});let f=I$(u,o);O$(f,c);let d=P$(f,r);if(l&&(d.vs=[l,d.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(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function O$(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function $$(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 B$=Bt.Graph,V$=tt;var R$=D$;function D$(e,n,o){let r=M$(e),i=new B$({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 u=c.v===a?c.w:c.v,f=i.edge(u,a),d=f!==void 0?f.weight:0;i.setEdge(u,a,{weight:e.edge(c).weight+d})}),Object.hasOwn(l,"minRank")&&i.setNode(a,{borderLeft:l.borderLeft[n],borderRight:l.borderRight[n]}))}),i}function M$(e){for(var n;e.hasNode(n=V$.uniqueId("_root")););return n}var L$=F$;function F$(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 U$=u$,K$=m$,j$=T$,G$=R$,q$=L$,z$=Bt.Graph,Ri=tt;var H$=pm;function pm(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,pm);return}let o=Ri.maxRank(e),r=mm(e,Ri.range(1,o+1),"inEdges"),i=mm(e,Ri.range(o-1,-1,-1),"outEdges"),a=U$(e);if(gm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,u=0;u<4;++c,++u){Y$(c%2?r:i,c%4>=2),a=Ri.buildLayerMatrix(e);let f=K$(e,a);f<l&&(u=0,s=Object.assign({},a),l=f)}gm(e,s)}function mm(e,n,o){return n.map(function(r){return G$(e,r,o)})}function Y$(e,n){let o=new z$;e.forEach(function(r){let i=r.graph().root,a=j$(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),q$(r,o,a.vs)})}function gm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let W$=Bt.Graph,nn=tt;var X$={positionX:lB};function Z$(e,n){let o={};function r(i,a){let l=0,s=0,c=i.length,u=a[a.length-1];return a.forEach((f,d)=>{let p=Q$(e,f),m=p?e.node(p).order:c;(p||f===u)&&(a.slice(s,d+1).forEach(y=>{e.predecessors(y).forEach(b=>{let g=e.node(b),h=g.order;(h<l||m<h)&&!(g.dummy&&e.node(y).dummy)&&hm(o,b,y)})}),s=d+1,l=m)}),a}return n.length&&n.reduce(r),o}function J$(e,n){let o={};function r(a,l,s,c,u){let f;nn.range(l,s).forEach(d=>{f=a[d],e.node(f).dummy&&e.predecessors(f).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>u)&&hm(o,p,f)})})}function i(a,l){let s=-1,c,u=0;return l.forEach((f,d)=>{if(e.node(f).dummy==="border"){let p=e.predecessors(f);p.length&&(c=e.node(p[0]).order,r(l,u,d,s,c),u=d,s=c)}r(l,u,l.length,c,a.length)}),l}return n.length&&n.reduce(i),o}function Q$(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function hm(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 eB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function tB(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,u)=>{i[c]=c,a[c]=c,l[c]=u})}),n.forEach(s=>{let c=-1;s.forEach(u=>{let f=r(u);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let d=(f.length-1)/2;for(let p=Math.floor(d),m=Math.ceil(d);p<=m;++p){let y=f[p];a[u]===u&&c<l[y]&&!eB(o,u,y)&&(a[y]=u,a[u]=i[u]=i[y],c=l[y])}}})}),{root:i,align:a}}function nB(e,n,o,r,i){let a={},l=oB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(d,p){let m=l.nodes(),y=m.pop(),b={};for(;y;)b[y]?d(y):(b[y]=!0,m.push(y),m=m.concat(p(y))),y=m.pop()}function u(d){a[d]=l.inEdges(d).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(d){let p=l.outEdges(d).reduce((y,b)=>Math.min(y,a[b.w]-l.edge(b)),Number.POSITIVE_INFINITY),m=e.node(d);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[d]=Math.max(a[d],p))}return c(u,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(d=>a[d]=a[o[d]]),a}function oB(e,n,o,r){let i=new W$,a=e.graph(),l=sB(a.nodesep,a.edgesep,r);return n.forEach(s=>{let c;s.forEach(u=>{let f=o[u];if(i.setNode(f),c){var d=o[c],p=i.edge(d,f);i.setEdge(d,f,Math.max(l(e,u,c),p||0))}c=u})}),i}function rB(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 u=cB(e,s)/2;i=Math.max(c+u,i),a=Math.min(c-u,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function iB(e,n){let o=Object.values(n),r=nn.applyWithChunking(Math.min,o),i=nn.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let u=Object.values(c),f=r-nn.applyWithChunking(Math.min,u);l!=="l"&&(f=i-nn.applyWithChunking(Math.max,u)),f&&(e[s]=nn.mapValues(c,d=>d+f))})})}function aB(e,n){return nn.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 lB(e){let n=nn.buildLayerMatrix(e),o=Object.assign(Z$(e,n),J$(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(d=>Object.values(d).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),u=tB(e,i,o,c),f=nB(e,i,u.root,u.align,s==="r");s==="r"&&(f=nn.mapValues(f,d=>-d)),r[l+s]=f})});let a=rB(e,r);return iB(r,a),aB(r,e.graph().align)}function sB(e,n,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,u;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":u=-l.width/2;break;case"r":u=l.width/2;break}if(u&&(c+=o?u:-u),u=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":u=s.width/2;break;case"r":u=-s.width/2;break}return u&&(c+=o?u:-u),u=0,c}}function cB(e,n){return e.node(n).width}let ym=tt,dB=X$.positionX;var uB=fB;function fB(e){e=ym.asNonCompoundGraph(e),pB(e),Object.entries(dB(e)).forEach(([n,o])=>e.node(n).x=o)}function pB(e){let n=ym.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=gO,bm=wO,mB=GO,gB=tt.normalizeRanks,hB=YO,yB=tt.removeEmptyRanks,wm=JO,_B=r$,km=a$,bB=H$,wB=uB,xt=tt,kB=Bt.Graph;var CB=EB;function EB(e,n){let o=n&&n.debugTiming?xt.time:xt.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>$B(e));o(" runLayout",()=>NB(r,o,n)),o(" updateInputGraph",()=>SB(e,r))})}function NB(e,n,o){n(" makeSpaceForEdgeLabels",()=>BB(e)),n(" removeSelfEdges",()=>jB(e)),n(" acyclic",()=>_m.run(e)),n(" nestingGraph.run",()=>wm.run(e)),n(" rank",()=>mB(xt.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>VB(e)),n(" removeEmptyRanks",()=>yB(e)),n(" nestingGraph.cleanup",()=>wm.cleanup(e)),n(" normalizeRanks",()=>gB(e)),n(" assignRankMinMax",()=>RB(e)),n(" removeEdgeLabelProxies",()=>DB(e)),n(" normalize.run",()=>bm.run(e)),n(" parentDummyChains",()=>hB(e)),n(" addBorderSegments",()=>_B(e)),n(" order",()=>bB(e,o)),n(" insertSelfEdges",()=>GB(e)),n(" adjustCoordinateSystem",()=>km.adjust(e)),n(" position",()=>wB(e)),n(" positionSelfEdges",()=>qB(e)),n(" removeBorderNodes",()=>KB(e)),n(" normalize.undo",()=>bm.undo(e)),n(" fixupEdgeLabelCoords",()=>FB(e)),n(" undoCoordinateSystem",()=>km.undo(e)),n(" translateGraph",()=>MB(e)),n(" assignNodeIntersects",()=>LB(e)),n(" reversePoints",()=>UB(e)),n(" acyclic.undo",()=>_m.undo(e))}function SB(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 vB=["nodesep","edgesep","ranksep","marginx","marginy"],xB={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},AB=["acyclicer","ranker","rankdir","align"],IB=["width","height","rank"],Cm={width:0,height:0},PB=["minlen","weight","width","height","labeloffset"],TB={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},OB=["labelpos"];function $B(e){let n=new kB({multigraph:!0,compound:!0}),o=as(e.graph());return n.setGraph(Object.assign({},xB,is(o,vB),xt.pick(o,AB))),e.nodes().forEach(r=>{let i=as(e.node(r));const a=is(i,IB);Object.keys(Cm).forEach(l=>{a[l]===void 0&&(a[l]=Cm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=as(e.edge(r));n.setEdge(r,Object.assign({},TB,is(i,PB),xt.pick(i,OB)))}),n}function BB(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 VB(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};xt.addDummyNode(e,"edge-proxy",a,"_ep")}})}function RB(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 DB(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 MB(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(u){let f=u.x,d=u.y,p=u.width,m=u.height;n=Math.min(n,f-p/2),o=Math.max(o,f+p/2),r=Math.min(r,d-m/2),i=Math.max(i,d+m/2)}e.nodes().forEach(u=>c(e.node(u))),e.edges().forEach(u=>{let f=e.edge(u);Object.hasOwn(f,"x")&&c(f)}),n-=l,r-=s,e.nodes().forEach(u=>{let f=e.node(u);f.x-=n,f.y-=r}),e.edges().forEach(u=>{let f=e.edge(u);f.points.forEach(d=>{d.x-=n,d.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 LB(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(xt.intersectRect(r,a)),o.points.push(xt.intersectRect(i,l))})}function FB(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 UB(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function KB(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 jB(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 GB(e){var n=xt.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=>{xt.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 qB(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 is(e,n){return xt.mapValues(xt.pick(e,n),Number)}function as(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let zB=tt,HB=Bt.Graph;var YB={debugOrdering:WB};function WB(e){let n=zB.buildLayerMatrix(e),o=new HB({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 XB="1.1.5",ZB={graphlib:Bt,layout:CB,debug:YB,util:{time:tt.time,notime:tt.notime},version:XB};const Em=WP(ZB);function JB({phase:e,readonly:n,flowId:o}){const{findNode:r}=Fe(o),i=st(),{state:a,getNodeById:l,moveNode:s,moveGroup:c,setGroupLayout:u,commit:f}=i,d=t.ref(),p=t.computed(()=>new Map(a.value.groups.map(V=>[V.id,V]))),m=t.computed(()=>new Set(a.value.groups.map(V=>V.id))),y=V=>!!V&&m.value.has(V),b=V=>!!V&&V.startsWith("branch:");function g(V){const T=[];for(const v of V.memberIds){const P=l(v);P&&T.push(P)}return T}const h=t.computed(()=>{const V=new Map;for(const T of a.value.groups){if(T.phase!==e||!T.position)continue;const v=g(T).filter(P=>P.phase===e&&!P.hidden);if(v.length)for(const P of v)V.set(P.id,T)}return V}),w=t.computed(()=>{const V=new Map;for(const T of a.value.groups)V.has(T.ownerId)||V.set(T.ownerId,[]),V.get(T.ownerId).push(T);return V});function _(V){let T=0;const v=new Set;let P=h.value.get(V);for(;P&&!v.has(P.id);)T+=1,v.add(P.id),P=h.value.get(P.ownerId);return T}function k(V){return _(V.ownerId)}const E=t.computed(()=>{const V=[];for(const T of a.value.groups){const v=l(T.ownerId);if(!v||v.phase!==e)continue;const P=T.position,A=T.dimensions;if(!P||!A)continue;const Y=g(T).filter(ie=>ie.phase===e&&!ie.hidden),W=k(T);V.push({id:T.id,type:"group",position:P,width:A.width,height:A.height,data:{...T,memberIds:Y.map(ie=>ie.id)},draggable:!n,selectable:!1,zIndex:W*jr+jN})}return V}),C=t.computed(()=>{let V=0;for(const T of a.value.groups){if(T.phase!==e)continue;const v=k(T);v>V&&(V=v)}return V}),N=t.computed(()=>{const V=[];for(const T of a.value.groups){if(T.phase!==e||!T.position||!T.dimensions)continue;const v=l(T.ownerId);if(!v||v.phase!==e||v.hidden||!g(T).filter(W=>W.phase===e&&!W.hidden).length)continue;const A=Math.max(_(v.id),k(T))+C.value+1,Y={id:`branch:${T.id}`,source:v.id,target:T.id,sourceHandle:`branch@${T.branch}`,targetHandle:"input",markerEnd:or.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:v.id,branch:T.branch,groupId:T.id},zIndex:A*jr+qN};V.push(Y)}return V}),I=new Map,D=new Set;let G;function K(V){if(V.phase!==e)return;const T=g(V).filter(oe=>oe.phase===e&&!oe.hidden);if(!T.length)return;let v=Number.POSITIVE_INFINITY,P=Number.POSITIVE_INFINITY,A=Number.NEGATIVE_INFINITY,Y=Number.NEGATIVE_INFINITY;for(const oe of T){const de=r(oe.id),he=de==null?void 0:de.dimensions,X=(he==null?void 0:he.width)??0,ce=(he==null?void 0:he.height)??0;if(X<=0||ce<=0)return;const se=de==null?void 0:de.computedPosition,ue=(se==null?void 0:se.x)??oe.position.x,fe=(se==null?void 0:se.y)??oe.position.y;v=Math.min(v,ue),P=Math.min(P,fe),A=Math.max(A,ue+X),Y=Math.max(Y,fe+ce);const O=w.value.get(oe.id)??[];for(const B of O){if(B.phase!==e)continue;const F=I.get(B.id),R=(F==null?void 0:F.position)??B.position,J=(F==null?void 0:F.dimensions)??B.dimensions;!R||!J||(v=Math.min(v,R.x),P=Math.min(P,R.y),A=Math.max(A,R.x+J.width),Y=Math.max(Y,R.y+J.height))}}if(!Number.isFinite(v)||!Number.isFinite(P)||!Number.isFinite(A)||!Number.isFinite(Y))return;const W=A-v+Gr*2,ie=Y-P+Gr*2;return{position:{x:Math.round(v-Gr),y:Math.round(P-Gr)},dimensions:{width:Math.round(W),height:Math.round(ie)}}}function S(){if(I.size===0){G=void 0;return}const V=[];let T=!1;I.forEach((v,P)=>{const A=u(P,v,!1);V.push({id:P,changed:A}),A&&!T&&(T=!0)}),I.clear(),G=void 0;for(const{id:v,changed:P}of V){if(!P)continue;const A=p.value.get(v);if(!A)continue;const Y=h.value.get(A.ownerId);Y&&D.add(Y.id)}if(D.size>0){const v=Array.from(D);D.clear();for(const P of v)x(P)}T&&f("*")}function ne(){I.size!==0&&(G||(G=t.nextTick().then(S)))}function x(V){const T=p.value.get(V);if(!T)return;const v=K(T);v&&(I.set(V,v),ne())}function q(V,T,v,P){const A=p.value.get(V);if(!A)return;if(!A.position){c(V,T,!1),x(V);return}if(v===0&&P===0){c(V,T,!1);return}c(V,T,!1);const Y=[V],W=new Set([V]),ie=new Set;for(;Y.length;){const oe=Y.shift(),de=p.value.get(oe);if(!de)continue;const he=g(de).filter(X=>X.phase===e&&!X.hidden);for(const X of he){ie.has(X.id)||(s(X.id,{x:X.position.x+v,y:X.position.y+P},!1),ie.add(X.id));const ce=w.value.get(X.id)??[];for(const se of ce){if(W.has(se.id))continue;const ue=p.value.get(se.id);ue!=null&&ue.position&&c(se.id,{x:ue.position.x+v,y:ue.position.y+P},!1),W.add(se.id),Y.push(se.id)}}}}function U(V,T){const v=d.value;if(!v)return!1;if(v===V||T.some(P=>v===P))return!0;for(const P of T){const A=w.value.get(P);if(A!=null&&A.some(Y=>Y.id===v))return!0}return!1}const te=new Map;return t.watch(()=>a.value.groups.filter(T=>T.phase===e).map(T=>{const v=T.memberIds.map(P=>{var ie,oe;const A=r(P),Y=Math.round(((ie=A==null?void 0:A.dimensions)==null?void 0:ie.width)??0),W=Math.round(((oe=A==null?void 0:A.dimensions)==null?void 0:oe.height)??0);return`${P}:${Y}x${W}`});return{id:T.id,memberIds:T.memberIds,signature:v.join(",")}}),V=>{for(const T of V){if(U(T.id,T.memberIds))continue;te.get(T.id)!==T.signature&&(te.set(T.id,T.signature),x(T.id))}},{deep:!0,flush:"post"}),{groupMapById:p,memberGroupMap:h,groupNodes:E,branchEdges:N,isGroupId:y,isBranchEdgeId:b,updateGroupLayout:x,translateGroupTree:q,setDraggingNode:V=>{d.value=V},getNodeDepth:_,maxGroupDepth:C}}function Nm(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(Mc,e);return o=>n(o)}function Di(e,n,o){const r=n?sn(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function mr(e,n){const o=n(e.source),r=n(e.target);return[Di(o,e.sourceField,"output"),Di(r,e.targetField,"input")]}function ls(e,n,o,r,i){const a=i(e),l=i(o);return[Di(a,n,"output"),Di(l,r,"input")]}function QB(e){t.provide(Ip,e)}function Sm(){return t.inject(Ip,void 0)}function vm(){const e=Sm();if(!e)throw new Error("Confirm modal not provided");return e}function xm(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}function eV(){const e={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};return[r=>{e.x1=Math.min(e.x1,r.x),e.y1=Math.min(e.y1,r.y),e.x2=Math.max(e.x2,r.x+r.width),e.y2=Math.max(e.y2,r.y+r.height)},()=>{const r={...e};return r.x1>r.x2&&(r.x1=r.x2=0),r.y1>r.y2&&(r.y1=r.y2=0),r}]}const tV={default:Lk,hover:Uk,selected:Fk};let Am,ss;function Mi(e){const n=e.id===Am?"selected":e.id===ss?"hover":"default",o=tV[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,oV]=Xe.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=dr.padding,gaps:s=dr.gaps}=r,{nodes:c=dr.gaps.nodes,edges:u=dr.gaps.edges,ranks:f=dr.gaps.ranks}=s,d=Fe(o),p=st(),m=Sm(),y=Nm(),{i18n:{t:b}}=De(),{findNode:g,fitView:h,deleteKeyCode:w,onNodeDrag:_,onNodeDragStop:k,onConnect:E,onNodesChange:C,onEdgesChange:N,onEdgeUpdate:I,onEdgeMouseEnter:D,onEdgeMouseLeave:G,getNodes:K,setNodes:S,setEdges:ne,addSelectedNodes:x}=d;w.value=["Delete","Backspace"];const{state:q,commit:U,moveNode:te,selectNode:V,removeNode:T,getNodeById:v,connectEdge:P,disconnectEdge:A,getInEdgesByNodeId:Y,commit:W,reset:ie}=p;function oe(re,ee){const Z=v(re.source),be=v(re.target);return!!(Z&&be&&Z.phase===ee&&be.phase===ee)}const de=JB({phase:n,readonly:i,flowId:o}),{groupMapById:he,memberGroupMap:X,groupNodes:ce,branchEdges:se,isGroupId:ue,isBranchEdgeId:fe,updateGroupLayout:O,translateGroupTree:B,setDraggingNode:F,getNodeDepth:R,maxGroupDepth:J}=de,j=t.computed(()=>q.value.nodes.filter(re=>re.phase===n&&!re.hidden).map(re=>{const ee=X.value.get(re.id),Z=ee==null?void 0:ee.position,be=ee==null?void 0:ee.dimensions,$e=ee&&Z&&be?{x:re.position.x-Z.x,y:re.position.y-Z.y}:re.position,Ne=R(re.id),Ae=!!(ee&&Z&&be),Re=(Ae?Ne:0)+J.value+1;return{id:re.id,type:"flow",position:$e,data:re,deletable:!_u(re),parentNode:Ae?ee.id:void 0,zIndex:Re*jr+zN}})),ae=t.computed(()=>q.value.edges.filter(re=>oe(re,n)).filter(re=>{const ee=v(re.source),Z=v(re.target);return!(ee!=null&&ee.hidden)&&!(Z!=null&&Z.hidden)}).map(re=>{const ee=v(re.source),Z=v(re.target);if(ee){if(!Z)throw new Error(`Missing target node "${re.target}" for edge "${re.id}" in phase "${n}"`)}else throw new Error(`Missing source node "${re.source}" for edge "${re.id}" in phase "${n}"`);const be=Math.max(R(re.source),R(re.target))+J.value+1;return Mi({id:re.id,source:re.source,target:re.target,sourceHandle:re.sourceField?`outputs@${re.sourceField}`:"output",targetHandle:re.targetField?`inputs@${re.targetField}`:"input",markerEnd:or.ArrowClosed,data:re,updatable:!i,zIndex:be*jr+GN})})),L=t.computed(()=>[...se.value,...ae.value]);t.watch([j,ce,L],([re,ee,Z])=>{S([...ee,...re]),ne(Z)},{immediate:!0});const $=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 z({source:re,sourceHandle:ee,target:Z,targetHandle:be}){if(!ee||!be)return;const $e=xm(ee),Ne=xm(be);if(($e==null?void 0:$e.io)==="input"||(Ne==null?void 0:Ne.io)==="output"||ee==="output"&&be==="output")return;const Ae=Y(Z);let Re=!1,je=!1;const He=[],Ge=[],Ee=(Ne==null?void 0:Ne.io)==="input"?Ae.filter(Ce=>!Ce.targetField):Ae.filter(Ce=>!!Ce.targetField);Ee.length>0&&(Re=!0,Ee.forEach(Ce=>{Ge.push(mr(Ce,v)),A(Ce.id,!1)}));const Le=(Ne==null?void 0:Ne.io)==="input"?Ae.filter(Ce=>Ce.targetField===Ne.field):Ae.filter(Ce=>!Ce.targetField);if(Le.length>0){if(Le.some(Te=>Te.source===re&&Te.target===Z&&Te.targetField===(Ne==null?void 0:Ne.field)&&Te.sourceField===($e==null?void 0:$e.field)))return;je=!0,Le.forEach(Te=>{Ge.push(mr(Te,v)),A(Te.id,!1)})}if(!P({source:re,sourceField:$e==null?void 0:$e.field,target:Z,targetField:Ne==null?void 0:Ne.field},!1)){ie(),y({message:b("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(He.push(ls(re,$e==null?void 0:$e.field,Z,Ne==null?void 0:Ne.field,v)),Re||je){if(!m)throw ie(),new Error("Expected confirm modal to be provided here when reachable");if(!await m(b(Re?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),He,Ge)){ie();return}}W()}E(z);let M=!1;const le=()=>{M&&(M=!1,W())};C(re=>{re.filter(be=>be.type==="select").filter(be=>!ue(be.id)).sort((be,$e)=>be.selected===$e.selected?0:be.selected?1:-1).forEach(be=>{V(be.selected?be.id:void 0)});let Z=!1;re.forEach(be=>{if(be.type==="remove"){if(ue(be.id))return;Z=!0,T(be.id,!1)}}),Z&&!M&&(M=!0,queueMicrotask(le))}),_(({node:re})=>{var Ne;if(!re)return;if(ue(re.id)){const Ae=re.id;F(Ae);const Re=he.value.get(Ae);if(!Re)return;const je=Re.position??{...re.position},He=re.position.x-je.x,Ge=re.position.y-je.y;B(Ae,re.position,He,Ge);const Ee=X.value.get(Re.ownerId);Ee&&O(Ee.id);return}const ee=re.id;F(ee);const Z=re.parentNode;let be={...re.position};if(Z&&ue(Z)){const Ae=he.value.get(Z);Ae!=null&&Ae.position&&(be={x:Ae.position.x+re.position.x,y:Ae.position.y+re.position.y})}te(ee,be,!1);const $e=Z&&ue(Z)?Z:(Ne=X.value.get(ee))==null?void 0:Ne.id;$e&&O($e)}),k(({node:re})=>{var Ne;if(!re)return;if(ue(re.id)){const Ae=re.id;F(void 0),U(`drag-group:${Ae}`);return}const ee=re.id;F(void 0);const Z=re.parentNode;let be={...re.position};if(Z&&ue(Z)){const Ae=he.value.get(Z);Ae!=null&&Ae.position&&(be={x:Ae.position.x+re.position.x,y:Ae.position.y+re.position.y})}te(ee,be,!1);const $e=Z&&ue(Z)?Z:(Ne=X.value.get(ee))==null?void 0:Ne.id;$e&&O($e),U(`drag-node:${ee}`)}),N(re=>{re.filter(be=>be.type==="select").sort((be,$e)=>be.selected===$e.selected?0:be.selected?1:-1).forEach(be=>{fe(be.id)||(Am=be.selected?be.id:void 0,ne($e=>$e.map(Ne=>Ne.id!==be.id||!Ne.markerEnd?Ne:Mi({...Ne,zIndex:be.selected?1:void 0}))))});let Z=!1;re.forEach(be=>{if(be.type==="remove"){if(fe(be.id))return;Z=!0,A(be.id,!1)}}),Z&&!M&&(M=!0,queueMicrotask(le))}),D(({edge:re})=>{fe(re.id)||(ss=re.id,ne(ee=>ee.map(Z=>Z.id!==re.id?Z:Mi(Z))))}),G(({edge:re})=>{fe(re.id)||(ss=void 0,ne(ee=>ee.map(Z=>Z.id!==re.id?Z:Mi(Z))))}),I(({edge:re,connection:ee})=>{fe(re.id)||(A(re.id,!1),z(ee))});function pe(re=!0){let ee,Z;const be=[],$e=Pe=>{switch(Pe.data.name){case"request":{if(n!=="request")throw new Error(`Unexpected request node in ${n} phase`);if(ee)throw new Error("Duplicated request node in request phase");return ee=Pe,!0}case"service_request":{if(n!=="request")throw new Error(`Unexpected service_request node in ${n} phase`);if(Z)throw new Error("Duplicated service_request node in request phase");return Z=Pe,!0}case"service_response":{if(n!=="response")throw new Error(`Unexpected service_response node in ${n} phase`);if(Z)throw new Error("Duplicated service_response node in response phase");return Z=Pe,!0}case"response":{if(n!=="response")throw new Error(`Unexpected response node in ${n} phase`);if(ee)throw new Error("Duplicated response node in response phase");return ee=Pe,!0}default:return be.push(Pe),!1}};let Ne;for(const Pe of j.value)if(!$e(Pe)&&be.length>0){Ne||(Ne=new Em.graphlib.Graph({multigraph:!0}),Ne.setGraph({rankdir:n==="request"?"LR":"RL",nodesep:c,edgesep:u,ranksep:f}));const nt=g(Pe.id);if(!nt)throw new Error(`Node ${Pe.id} is missing from the graph in ${n} phase`);Ne.setNode(Pe.id,{width:nt.dimensions.width,height:nt.dimensions.height})}if(!ee||!Z)throw new Error(`One or more implicit nodes are missing from ${n} phase`);const Ae=g(ee.id),Re=g(Z.id);if(!Ae||!Re)throw new Error(`One or more implicit nodes are missing from the graph in ${n} phase`);if(be.length>0){if(!Ne)throw new Error("dagreGraph should be defined here if reachable");const Pe=new Set([ee.id,Z.id]);for(const nt of L.value)!Pe.has(nt.source)&&!Pe.has(nt.target)&&Ne.setEdge(nt.source,nt.target,{points:[]});Em.layout(Ne)}const[je,He]=eV(),Ge=Pe=>({x:Pe.x-Pe.width/2,y:Pe.y-Pe.height/2,width:Pe.width,height:Pe.height});if(be.length>0){if(!Ne)throw new Error("dagreGraph should be defined here if reachable");for(const Pe of be){const nt=Ne.node(Pe.id),dt=Ge(nt);je(dt),te(Pe.data.id,{x:dt.x,y:dt.y},!1)}}const Ee=He(),Le=Ee.x2-Ee.x1,Ue=Ee.y2-Ee.y1,Ce=Math.max(0,Math.min(t.toValue(a==null?void 0:a.width)??Number.POSITIVE_INFINITY,qP)-Le-2*c-Ae.dimensions.width-Re.dimensions.width-2*l),Te=Ee.y1+Ue/2;te(ee.data.id,{x:Ee.x1-c-Ce/2-Ae.dimensions.width,y:Te-Ae.dimensions.height/2},!1),te(Z.data.id,{x:Ee.x2+c+Ce/2,y:Te-Re.dimensions.height/2},!1),re&&U(`autolayout-${o}`)}function ye(re){h({...$.value,...re})}async function me(re){return V(re),new Promise(ee=>setTimeout(()=>{const Z=g(re);x(Z?[Z]:[]),ee()},0))}function _e(re){const ee=K.value.filter(({type:Ee})=>Ee!=="group"),Z=ee.find(({id:Ee})=>Ee===re);if(!Z)throw new Error(`Node ${re} not found`);const{position:{x:be,y:$e},dimensions:{width:Ne,height:Ae}}=Z,Re=$e,je=$e+Ae,He=ee.filter(({id:Ee})=>Ee!==re).filter(({position:{y:Ee},dimensions:{height:Le}})=>Ee<je&&Ee+Le>Re).map(({position:{x:Ee},dimensions:{width:Le}})=>({left:Ee,right:Ee+Le})).sort((Ee,Le)=>Ee.left-Le.left);let Ge=be+Ne+c;for(const{left:Ee,right:Le}of He)if(!(Le<=Ge)){if(Ge+Ne<=Ee)return{x:Ge,y:Re};Ge=Math.max(Ge,Le)+c}return{x:Ge,y:Re}}function Be(re){if(!re)return;const ee=g(re);if(!ee)throw new Error(`Node ${re} not found`);const{position:{x:Z},dimensions:{width:be}}=ee,$e=Z+be,{viewport:Ne,dimensions:Ae,setViewport:Re}=d,{x:je,y:He,zoom:Ge}=Ne.value,{width:Ee}=Ae.value,Le=Z*Ge+je,Ue=$e*Ge+je,Ce=Ee-mu-c;if(Ue<=Ce)return;let Te=Ce-Ue;Le+Te<0&&(Te=-Le),Te!==0&&Re({x:je+Te,y:He,zoom:Ge},{duration:YP})}return{vueFlowStore:d,editorStore:p,readonly:i,nodes:j,edges:L,selectNode:me,autoLayout:pe,placeToRight:_e,scrollRightToReveal:Be,fitViewParams:$,fitView:ye}}),Li=ve(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ke.Left},size:{default:()=>Number.parseFloat(ad)},type:{}},setup(e){t.useCssVars(o=>({"753622c4":o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[o.type,o.position===t.unref(ke).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Im=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,"6ae9eff4":(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>_t[e.type]),o=t.computed(()=>HN(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":r.iconOnly,"has-colors":!!n.value.colors}]),size:r.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 mo=null;function rV(){var n;if(mo)return mo;if(typeof navigator>"u")return mo="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?mo="mac":/Linux/i.test(e)&&!/Android/i.test(e)?mo="linux":mo="windows"}const iV={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"},lV={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 sV(e,n={}){const o=n.platform??rV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?iV:o==="linux"?lV:aV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const cV={key:0,class:"label"},dV={class:"keys"},Fi=ve(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=sV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:o.reverse}])},[o.label?(t.openBlock(),t.createElementBlock("span",cV,t.toDisplayString(o.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",dV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),uV={class:"indicator-box"},fV={key:1,class:"additional-count"},Ui=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 u=(f=n.targetFieldNames)==null?void 0:f[c];return u?`${s.name}.${u}`: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=_t[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(Oe.KTooltip),{placement:"top",text:o.value},{default:t.withCtx(()=>[t.createElementVNode("div",uV,[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,color:t.unref(id),size:16},null,8,["color"])):t.createCommentVNode("",!0),i.value>0?(t.openBlock(),t.createElementBlock("span",fV," +"+t.toDisplayString(i.value),1)):t.createCommentVNode("",!0)])]),_:1},8,["text"])],2))}}),[["__scopeId","data-v-d8506ba3"]]),pV={class:"body"},mV={class:"name"},gV={class:"handle"},hV={class:"handle-label-wrapper"},yV={class:"handle-label-wrapper"},_V={class:"handle-label text"},bV={class:"handle"},wV={class:"handle-label-wrapper"},kV={class:"handle-label-wrapper"},CV={class:"handle-label text"},EV={key:2,class:"branch-handles"},NV={class:"handle-label-wrapper"},SV={class:"handle-label text"},Pm=ve(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=oV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:u}=st(),f=t.computed(()=>oo(e.data.type)),d=t.computed(()=>e.data.fields.input.length>0),p=t.computed(()=>e.data.fields.output.length>0),m=t.computed(()=>d.value&&r(e.data.id).every(v=>v.targetField===void 0)),y=t.computed(()=>p.value&&i(e.data.id).every(v=>v.sourceField===void 0)),b=t.computed(()=>e.data.expanded.input??!1),g=t.computed(()=>e.data.expanded.output??!1),h=t.computed(()=>{var v,P,A;return((A=(P=(v=f.value.io)==null?void 0:v.next)==null?void 0:P.branches)==null?void 0:A.map(({name:Y})=>Y))??[]}),w=t.computed(()=>h.value.length>0),_=t.computed(()=>{var v,P;if(e.data.type==="property"){const A=(v=e.data.config)==null?void 0:v.property;return Yl(A)}return(P=f.value.io)==null?void 0:P.input}),k=t.computed(()=>{var v,P;if(e.data.type==="property"){const A=(v=e.data.config)==null?void 0:v.property;return Hl(A)}return(P=f.value.io)==null?void 0:P.output}),E=t.computed(()=>_u(e.data)),C=t.computed(()=>e.data.phase==="response"),N=t.computed(()=>e.data.phase==="request"?ke.Left:ke.Right),I=t.computed(()=>e.data.phase==="request"?ke.Right:ke.Left),D=t.computed(()=>e.data.phase==="request"?ke.Right:ke.Left),G=t.computed(()=>E.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),K=t.computed(()=>E.value?Vk:Rk),S=t.computed(()=>{const v=new Map,P=r(e.data.id);for(const A of P){const Y=a(A.source);if(!Y)continue;const W=Y.type==="vault",ie=Y.phase!==e.data.phase;if(!W&&!ie)continue;let oe;if(A.sourceField){const de=Y.fields.output.find(he=>he.id===A.sourceField);oe=de==null?void 0:de.name}if(A.targetField){const de=e.data.fields.input.find(he=>he.id===A.targetField);if(!de)continue;v.set(A.targetField,{fieldId:A.targetField,edgeId:A.id,field:de,sourceNode:Y,sourceFieldName:oe})}else v.set("input",{fieldId:"input",edgeId:A.id,field:null,sourceNode:Y,sourceFieldName:oe})}return v}),ne=t.computed(()=>{const v=new Map,P=i(e.data.id);for(const A of P){const Y=a(A.target);if(!Y||!(Y.phase!==e.data.phase))continue;let ie;if(A.targetField){const he=Y.fields.input.find(X=>X.id===A.targetField);ie=he==null?void 0:he.name}const oe=A.sourceField||"output";if(!v.has(oe)){const he=A.sourceField&&e.data.fields.output.find(X=>X.id===A.sourceField)||null;v.set(oe,{fieldId:oe,edgeIds:[],field:he,targetNodes:[],targetFieldNames:[]})}const de=v.get(oe);de.edgeIds.push(A.id),de.targetNodes.push(Y),de.targetFieldNames.push(ie)}return v});function x(v){return S.value.get(v)}function q(v){return ne.value.get(v)}function U(v){!o||o.readonly||v==="input"&&!m.value||v==="output"&&!y.value||l(e.data.id,v)}async function te(){if(!o||o.readonly)return;const v=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(v),o.scrollRightToReveal(v),u.value=!0}t.watch(m,v=>{v||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(y,v=>{v||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(v,P)=>{Oo(v,P)||l(e.data.id,"input",v.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(v,P)=>{Oo(v,P)||l(e.data.id,"output",v.length>0,!0,"*")},{deep:!0});const V=t.useTemplateRef("menu");function T(){var v;(v=V.value)==null||v.closeDropdown()}return(v,P)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:C.value,implicit:E.value,readonly:v.readonly}]),onMousedown:T},[t.createElementVNode("div",pV,[E.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:0,class:"badge",placement:"top",text:v.data.type},{default:t.withCtx(()=>[t.createVNode(Im,{"icon-only":"",size:"small",type:v.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",mV,t.toDisplayString(G.value),1),v.error?(t.openBlock(),t.createBlock(t.unref(Se.WarningIcon),{key:1,class:"error-icon",color:t.unref($a),size:16},null,8,["color"])):t.createCommentVNode("",!0),E.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KDropdown),{key:2,ref:"menu",class:"menu",disabled:v.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(Oe.KDropdownItem),{onClick:te},{default:t.withCtx(()=>[t.createVNode(Fi,{keys:t.unref(Kr).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),t.createVNode(t.unref(Oe.KDropdownItem),{danger:"",onClick:P[0]||(P[0]=A=>t.unref(c)(v.data.id))},{default:t.withCtx(()=>[t.createVNode(Fi,{keys:t.unref(Kr).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(Oe.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.MoreIcon),{color:t.unref(od)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:C.value}])},[_.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":d.value}])},[t.createElementVNode("div",gV,[t.createVNode(t.unref(jt),{id:"input",position:N.value,type:"target"},null,8,["position"]),x("input")?(t.openBlock(),t.createBlock(Ui,{key:0,"edge-id":x("input").edgeId,mode:"input",reversed:C.value,"source-field-name":x("input").sourceFieldName,"source-node":x("input").sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",hV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:m.value}]),onClick:P[2]||(P[2]=t.withModifiers(A=>U("input"),["stop"]))},[P[4]||(P[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),d.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[b.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Se.UnfoldMoreIcon),{key:0,size:t.unref(Mo)},null,8,["size"])),b.value?(t.openBlock(),t.createBlock(t.unref(Se.UnfoldLessIcon),{key:1,color:m.value?void 0:t.unref(rd),size:t.unref(Mo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),d.value&&b.value?(t.openBlock(),t.createBlock(Li,{key:0,color:K.value,position:N.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),d.value&&b.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(v.data.fields.input,(A,Y)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${A.id}`,class:"handle indented"},[t.createVNode(t.unref(jt),{id:`inputs@${A.id}`,position:N.value,type:"target"},null,8,["id","position"]),x(A.id)?(t.openBlock(),t.createBlock(Ui,{key:0,"edge-id":x(A.id).edgeId,mode:"input",reversed:C.value,"source-field-name":x(A.id).sourceFieldName,"source-node":x(A.id).sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",yV,[t.createElementVNode("div",_V,t.toDisplayString(A.name),1),t.createVNode(Li,{color:K.value,position:N.value,type:Y<v.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),k.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":p.value}])},[t.createElementVNode("div",bV,[t.createElementVNode("div",wV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:y.value}]),onClick:P[3]||(P[3]=t.withModifiers(A=>U("output"),["stop"]))},[P[5]||(P[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[g.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Se.UnfoldMoreIcon),{key:0,size:t.unref(Mo)},null,8,["size"])),g.value?(t.openBlock(),t.createBlock(t.unref(Se.UnfoldLessIcon),{key:1,color:y.value?void 0:t.unref(rd),size:t.unref(Mo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&g.value?(t.openBlock(),t.createBlock(Li,{key:0,color:K.value,position:I.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(jt),{id:"output",position:I.value,type:"source"},null,8,["position"]),q("output")?(t.openBlock(),t.createBlock(Ui,{key:0,mode:"output",reversed:C.value,"target-field-names":q("output").targetFieldNames,"target-nodes":q("output").targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]),p.value&&g.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(v.data.fields.output,(A,Y)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${A.id}`,class:"handle indented"},[t.createElementVNode("div",kV,[t.createElementVNode("div",CV,t.toDisplayString(A.name),1),t.createVNode(Li,{color:K.value,position:I.value,type:Y<v.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(jt),{id:`outputs@${A.id}`,position:I.value,type:"source"},null,8,["id","position"]),q(A.id)?(t.openBlock(),t.createBlock(Ui,{key:0,mode:"output",reversed:C.value,"target-field-names":q(A.id).targetFieldNames,"target-nodes":q(A.id).targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),w.value?(t.openBlock(),t.createElementBlock("div",EV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,A=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${A}`,class:"handle"},[t.createElementVNode("div",NV,[t.createElementVNode("div",SV,t.toDisplayString(A),1)]),t.createVNode(t.unref(jt),{id:`branch@${A}`,connectable:!1,position:D.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],34))}}),[["__scopeId","data-v-2bf41241"]]),vV=ve(t.defineComponent({__name:"GroupNode",props:{data:{}},setup(e){const n=e,o=t.computed(()=>n.data.phase==="response"),r=t.computed(()=>o.value?ke.Right:ke.Left);return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-branch-group-node",{reversed:o.value}])},[t.createVNode(t.unref(jt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-35113c02"]]),xV={key:0,class:"dk-flow-mask"},Tm=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=Xe.useElementBounding(i),{i18n:{t:l}}=De(),{vueFlowStore:s,editorStore:c,autoLayout:u,fitViewParams:f,fitView:d,selectNode:p,placeToRight:m,scrollRightToReveal:y}=nV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:b,propertiesPanelOpen:g,invalidConfigNodeIds:h,selectedNode:w,duplicateNode:_}=c,{project:k,vueFlowRef:E,zoomIn:C,zoomOut:N,viewport:I,maxZoom:D,minZoom:G}=s,K=t.ref(!1);function S(V){var T;if(e.mode==="edit"){if(((T=V==null?void 0:V.node)==null?void 0:T.type)==="group"){p(void 0);return}g.value=!0}}function ne(V){e.mode!=="edit"||K.value||V.preventDefault()}function x(V){var he,X;if(e.mode!=="edit"||K.value)return;const T=(he=V.dataTransfer)==null?void 0:he.getData(Go);if(!T)return;V.preventDefault();const v=JSON.parse(T);if(v.action!=="create-node")return;const{top:P=0,left:A=0}=((X=E.value)==null?void 0:X.getBoundingClientRect())||{},Y=k({x:V.clientX-A,y:V.clientY-P}),{type:W,anchor:ie}=v.data,oe={type:W,phase:e.phase,position:{x:Y.x-ie.offsetX,y:Y.y-ie.offsetY}},de=b(oe);de&&(p(de),g.value=!0)}function q(){u(),t.nextTick(()=>d())}const U=t.computed(()=>{if(e.mode==="preview")return[];const V=[{name:"zoom_in",icon:Se.AddIcon,action:C,disabled:I.value.zoom>=D.value},{name:"zoom_out",icon:Se.RemoveIcon,action:N,disabled:I.value.zoom<=G.value},{name:"fit_view",icon:Se.FullscreenIcon,action:d}];return e.mode==="edit"&&V.push({name:"auto_layout",icon:Se.AutoLayoutIcon,action:q}),V});if(e.phase==="response"&&e.mode==="edit"){Xe.useEventListener("dragstart",T=>{var A;const v=(A=T.dataTransfer)==null?void 0:A.types.find(Y=>Y.startsWith(`${Go}/`));if(!v)return;v.replace(`${Go}/`,"")==="call"&&(K.value=!0)});const{start:V}=Xe.useTimeoutFn(()=>{K.value=!1},80);Xe.useEventListener("dragover",()=>{V()}),Xe.useEventListener("dragend",()=>{K.value=!1})}async function te(){const V=w.value;if(e.mode!=="edit"||!V||V.phase!==e.phase)return;const T=_(V.id,m(V.id));T&&(await p(T),g.value=!0,y(T))}return Ap({enabled:t.computed(()=>!!w.value&&e.mode==="edit"&&w.value.phase===e.phase),duplicate:te}),n({autoLayout:u,fitView:d}),(V,T)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Np),{id:V.flowId,class:t.normalizeClass(["flow",{readonly:V.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":V.mode==="edit","max-zoom":t.unref(zP),"min-zoom":t.unref(HP),"multi-selection-key-code":null,"nodes-connectable":V.mode==="edit","nodes-draggable":V.mode==="edit","pan-on-drag":V.mode==="preview"?!1:void 0,"pan-on-scroll":V.mode!=="edit"?!1:void 0,"zoom-on-double-click":V.mode!=="edit"?!1:void 0,"zoom-on-pinch":V.mode!=="edit"?!1:void 0,"zoom-on-scroll":V.mode!=="edit"?!1:void 0,onDragover:ne,onDrop:x,onNodeClick:S,onNodesChange:T[0]||(T[0]=v=>r("nodes-change")),onNodesInitialized:T[1]||(T[1]=v=>r("initialized"))},{"node-flow":t.withCtx(({data:v})=>[t.createVNode(Pm,{data:v,error:t.unref(h).has(v.id),readonly:V.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:v})=>[t.createVNode(vV,{data:v},null,8,["data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(mP)),t.createVNode(t.unref(FP),{"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,v=>(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:v.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${v.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(cr),{disabled:v.disabled,onClick:t.withModifiers(v.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(v.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"]),K.value?(t.openBlock(),t.createElementBlock("div",xV,t.toDisplayString(t.unref(l)("plugins.free-form.datakit.flow_editor.phase_mask_help")),1)):t.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-c5f80aea"]]),cs=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}=st(),c=t.useId(),u=`${c}-request`,f=`${c}-response`,d=Fe(u),p=Fe(f);function m(A,Y){const{onPaneClick:W,onNodesChange:ie,onEdgesChange:oe,getSelectedNodes:de,getSelectedEdges:he}=A,{removeSelectedElements:X}=Y;function ce(se){if(!se){X();return}se.some(ue=>ue.type==="select")&&de.value.length+he.value.length>0&&X()}ie(ce),oe(ce),W(()=>ce())}m(d,p),m(p,d);const y=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),g=t.useTemplateRef("requestCanvasContainer"),h=t.useTemplateRef("requestFlow"),w=t.useTemplateRef("resizeHandle"),_=t.useTemplateRef("responseLabel"),k=t.useTemplateRef("responseCanvasContainer"),E=t.useTemplateRef("responseFlow"),C=Xe.useElementBounding(y),N=Xe.useElementBounding(b),I=Xe.useElementBounding(g),D=Xe.useElementBounding(w),G=Xe.useElementBounding(_),K=Xe.useElementBounding(k),S=t.computed(()=>Math.max(30,C.height.value*.03)),ne=t.computed(()=>I.height.value<S.value),x=t.computed(()=>K.height.value<S.value),q=t.ref("50%"),U=t.ref("50%"),te=()=>{e.resizable&&(ne.value?(q.value="50%",U.value="50%"):(q.value="0",U.value="100%"))},V=()=>{e.resizable&&(x.value?(q.value="50%",U.value="50%"):(q.value="100%",U.value="0"))},T=t.computed(()=>C.height.value-N.height.value-D.height.value-G.height.value),{isDragging:v}=Xe.useDraggable(w,{onMove(A){if(!e.resizable)return;const Y=Math.max(0,A.y-I.top.value),W=Math.min(1,Math.max(0,Y/T.value));q.value=`${W*100}%`,U.value=`${(1-W)*100}%`},onEnd(){e.resizable&&(I.height.value<S.value?(q.value="0",U.value="100%"):K.height.value<S.value&&(q.value="100%",U.value="0"))}});function P(){t.nextTick(()=>{var A,Y;(A=h.value)==null||A.fitView(),(Y=E.value)==null||Y.fitView()})}return t.watch([n,o,()=>r.value.pendingLayout,()=>r.value.pendingFitView],([A,Y,W,ie])=>{e.inactive||!A||!Y||!W&&!ie||(W&&i(),ie&&a(!1),setTimeout(()=>{var oe,de;W&&((oe=h.value)==null||oe.autoLayout(!1),(de=E.value)==null||de.autoLayout(!1),l("*"),W==="clearHistory"&&s()),ie&&P()},0))}),(A,Y)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:y,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:A.resizable}]),onClick:te},[A.resizable?(t.openBlock(),t.createBlock(t.unref(Se.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:ne.value}])},null,8,["class"])):t.createCommentVNode("",!0),Y[4]||(Y[4]=t.createElementVNode("div",{class:"label-content"}," Request ",-1))],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:g,class:t.normalizeClass(["canvas",{dragging:t.unref(v)}]),style:t.normalizeStyle({flexBasis:q.value})},[t.createVNode(Tm,{ref_key:"requestFlow",ref:h,"flow-id":u,mode:A.mode,phase:"request",onInitialized:Y[0]||(Y[0]=W=>n.value=!0),onNodesChange:Y[1]||(Y[1]=W=>n.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:t.normalizeClass(["resize-handle",{resizable:A.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:_,class:t.normalizeClass(["label response",{dragging:t.unref(v),resizable:A.resizable}]),onClick:V},[A.resizable?(t.openBlock(),t.createBlock(t.unref(Se.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:x.value}])},null,8,["class"])):t.createCommentVNode("",!0),Y[5]||(Y[5]=t.createElementVNode("div",{class:"label-content"}," Response ",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:k,class:t.normalizeClass(["canvas response",{dragging:t.unref(v)}]),style:t.normalizeStyle({flexBasis:U.value})},[t.createVNode(Tm,{ref_key:"responseFlow",ref:E,"flow-id":f,mode:A.mode,phase:"response",onInitialized:Y[2]||(Y[2]=W=>o.value=!0),onNodesChange:Y[3]||(Y[3]=W=>o.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-57dcdcfa"]]),AV={class:"dk-confirm-modal-body"},IV={class:"dk-confirm-modal-connections"},PV=ve(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=De(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let u=null;function f(){a.value=!1,i("cancel"),u==null||u(!1)}function d(){a.value=!1,i("confirm"),u==null||u(!0)}async function p(m,y,b){return l.value=m,s.value=y??[],c.value=b??[],a.value=!0,await new Promise(g=>{u=g})}return n({open:p}),(m,y)=>{const b=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(b,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:m.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:d},{default:t.withCtx(()=>[t.createElementVNode("div",AV,[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",IV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([g,h])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${h}`},[t.createVNode(t.unref(Se.AddIcon),{color:t.unref(Dk)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),y[0]||(y[0]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(h),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([g,h])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${h}`},[t.createVNode(t.unref(Se.RemoveIcon),{color:t.unref($a)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),y[1]||(y[1]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(h),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-9874f282"]]),TV={class:"dk-editor-nav"},OV={class:"top"},$V={class:"bottom"},BV=ve(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Ze.createI18n("en-us",rt),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Se.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=ll(),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(u,f)=>(t.openBlock(),t.createElementBlock("nav",TV,[t.createElementVNode("div",OV,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:d,to:p,icon:m,onClick:y})=>t.createVNode(t.unref(Oe.KTooltip),{key:d,"kpop-attributes":{offset:"10px"},label:d,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:d,appearance:"none",class:"nav-item",icon:"",to:p,onClick:y},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(Ba)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",$V,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(d=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(d=>s.value=!0,["self"]))},[t.createVNode(t.unref(Oe.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Oe.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(Se.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(Ba)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(Se.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(Ba)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),VV={class:"dk-editor-main"},RV={class:"header"},DV={class:"actions"},MV={class:"settings"},LV={ref:"canvasContainer",class:"body"},FV=ve(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Ze.createI18n("en-us",rt),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=st();function c(d){const p=Wa.load(d,{schema:Ur,json:!0});if(typeof p!="object"||p===null)return;const m=p,y={config:{...m,nodes:m.nodes??[]}};s(y,!0)}function u(){o.value=!1}Ap({enabled:o,undo:r,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(d,p)=>(t.openBlock(),t.createElementBlock("div",VV,[t.createElementVNode("header",RV,[t.createElementVNode("div",DV,[t.createVNode(t.unref(Oe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Fi,{keys:t.unref(Kr).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(Oe.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(Oe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Fi,{keys:t.unref(Kr).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(Oe.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",MV,[t.createVNode(Ia,{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(Oe.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(Xa,(m,y)=>t.createVNode(t.unref(Oe.KDropdownItem),{key:y,onClick:b=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${y}`)),1)]),_:2},1032,["onClick"])),64))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(Oe.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(Se.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Oe.KButton),{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",LV,[t.createVNode(cs,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-32006420"]]),UV=["draggable"],KV={class:"icon"},jV={class:"content"},GV={class:"title"},qV={class:"description"},zV=ve(t.defineComponent({__name:"NodePanelItem",props:{type:{}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(u=>({"209a0a7f":t.unref(l),"336bc2d8":t.unref(s)}));const o=n,r=e.type==="cache",{summary:i,icon:a,colors:{background:l,foreground:s}={}}=Qa[e.type];function c(u){o("dragstart",u,e.type)}return(u,f)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${u.type}`]:!0,unsupported:r}]),draggable:!r,onDragstart:c},[t.createElementVNode("div",KV,[t.createVNode(t.unref(a),{size:16})]),t.createElementVNode("div",jV,[t.createElementVNode("div",GV,t.toDisplayString(u.type),1),t.createElementVNode("div",qV,t.toDisplayString(t.unref(i)),1)])],42,UV))}}),[["__scopeId","data-v-3173f9b0"]]),HV={class:"dk-node-panel"},YV={key:0,class:"title"},WV={class:"node-list"},XV={"aria-hidden":"true",class:"preview",inert:""},Om=ve(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),{createNode:o}=st(),r=`dk-drag-preview-${t.useId()}`,i=t.shallowRef(),a=t.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var I,D,G;const u=s.currentTarget,{left:f,top:d,width:p,height:m}=u.getBoundingClientRect(),y=s.clientX-f,b=s.clientY-d;i.value=o({type:c}),await t.nextTick();const g=document.querySelector(`#${r}`)||u,h=g.cloneNode(!0);h.classList.add("dk-drag-snapshot");const{offsetWidth:w,offsetHeight:_}=g;Object.assign(h.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${_}px`}),document.body.appendChild(h);const k=y/p,E=b/m,C={ratioX:k,ratioY:E,offsetX:w*k,offsetY:_*E},N={action:"create-node",data:{type:c,anchor:C}};(I=s.dataTransfer)==null||I.setData(Go,JSON.stringify(N)),(D=s.dataTransfer)==null||D.setData(`${Go}/${c}`,c),(G=s.dataTransfer)==null||G.setDragImage(h,C.offsetX,C.offsetY),requestAnimationFrame(()=>{h.remove(),i.value=void 0})};return(s,c)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",HV,[s.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",YV,[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",WV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(Qa)),f=>(t.openBlock(),t.createBlock(zV,{key:f,type:f,onDragstart:l},null,8,["type"]))),128))]),t.createElementVNode("div",XV,[t.createVNode(t.unref(Np),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(Pm,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-51ccb23d"]]);function ZV(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=st(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var y;return((y=l.value.get("vault"))==null?void 0:y.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(y,b)=>{e(s.id,"output",y,!1);const g={...s.config,[y]:b};r(s.id,g)},removeVault:y=>{const b=ln(s,"output",y);if(!b)return;const g=s.fields.output.length===1;o(s.id,b.id,!0,!1);const h=$o(s.config,y);r(s.id,h,!g),g&&a(s.id)},updateVault:(y,b,g=!0)=>{const h={...s.config,[y]:b};r(s.id,h,g)},renameVault:(y,b,g=!0)=>{var k;const h=ln(s,"output",y);if(!h)return;i(s.id,h.id,b,!1);const w=((k=s.config)==null?void 0:k[y])??"",_={...$o(s.config,y),[b]:w};r(s.id,_,g)}}}const JV=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}}=Ke.useI18n(),i=t.inject(Me.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),u=()=>{const m=a.value.trim(),y=e.validateName(m,e.isEditing);return l.value=y||"",y===void 0},f=()=>{l.value="",u()},d=m=>{u()&&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,y)=>{const b=t.resolveComponent("KInput"),g=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(ko.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:m.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:d},{"form-prefix":t.withCtx(()=>[t.createVNode(b,{"model-value":a.value,"onUpdate:modelValue":[y[0]||(y[0]=h=>a.value=h),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(g,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),QV={class:"dk-vault-panel"},eR={class:"title"},tR={class:"vault-list"},nR={key:0,class:"vault-list-item"},oR={class:"vault-list-item-key"},rR={class:"vault-list-item-key-text"},iR=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}=Or(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:u}}=Ke.useI18n(),f=t.computed(()=>new Set(i.value.map(h=>h.key))),d=()=>{const h=a();c.value=h,s.value=h},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=h=>{if(!s.value)throw new Error("no selected entry");const w=s.value.key,_=w!==h.secretName,k=s.value.value!==h.secretRef,E=_||k;s.value.value=h.secretRef,s.value.key=h.secretName,c.value?r("add",h.secretName,h.secretRef):E&&r("update",h.secretName,h.secretRef,_?w:void 0),c.value=null,p()},y=h=>{s.value=h},b=h=>{l(h.id),r("remove",h.key)},g=(h,w)=>{var _;if(!h)return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(h)&&!(w&&h===((_=s.value)==null?void 0:_.key)))return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(h,w)=>{var C,N;const _=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",QV,[t.createElementVNode("h3",eR,t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(_,{appearance:"tertiary",class:"add-button",size:"small",onClick:d},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",tR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),I=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:I.id},[I.key?(t.openBlock(),t.createElementBlock("div",nR,[t.createElementVNode("div",oR,[t.createVNode(t.unref(Se.KeyIcon),{color:t.unref(id),size:16},null,8,["color"]),t.createElementVNode("div",rR,t.toDisplayString(I.key),1)]),t.createVNode(E,null,{items:t.withCtx(()=>[t.createVNode(k,{onClick:D=>y(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:2},1032,["onClick"]),t.createVNode(k,{danger:"",onClick:D=>b(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:2},1032,["onClick"])]),default:t.withCtx(()=>[t.createVNode(_,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.MoreIcon),{color:t.unref(od)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(JV,{"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":g,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-4df4e490"]]),aR={class:"dk-resources-panel"},lR=ve(t.defineComponent({__name:"ResourcesPanel",setup(e){const n={type:"record",fields:[{vault:{type:"map",keys:{type:"string"},values:{type:"string"}}}]},{addVault:o,removeVault:r,updateVault:i,renameVault:a,formData:l}=ZV();function s(c,u,f){f&&f!==c&&a(f,c,!1),i(c,u)}return(c,u)=>(t.openBlock(),t.createElementBlock("div",aR,[t.createVNode(ht,{data:t.unref(l),schema:n},{default:t.withCtx(()=>[t.createVNode(iR,{name:"vault",onAdd:t.unref(o),onRemove:t.unref(r),onUpdate:s},null,8,["onAdd","onRemove"])]),_:1},8,["data"])]))}}),[["__scopeId","data-v-20ce9c3d"]]),sR={class:"header"},cR={class:"title"},dR={class:"body"},uR={class:"panel"},fR=ve(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Ze.createI18n("en-us",rt),{sidePanelExpanded:o}=ll(),{propertiesPanelOpen:r,selectedNode:i}=st(),a=t.inject(Bo.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,u=>{u||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(u,f)=>{const d=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",sR,[t.createElementVNode("h2",cR,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",dR,[t.createElementVNode("div",uR,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(d,{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(Om,{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(Om,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),pR=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(Nt,{items:t.unref(Ca)([...t.unref(yu)]),name:n.name},null,8,["items","name"]))}}),mR=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Ye(),{i18n:o}=De(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(gt,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock(Nt,{key:l,clearable:"","enable-filtering":"",items:i.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},null,8,["items","name","placeholder","onChange"]))),128))]),_:1},8,["name"]))}}),gR=["data-testid"],hR={class:"dk-inputs-map-field-entry-body"},yR={class:"dk-inputs-map-field-entry-content"},_R=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}=Or(o,r),{i18n:{t:c}}=De(),u=t.useTemplateRef("root"),f=t.ref(null),d=t.ref({});let p;async function m(E,C="key"){var N;u.value&&(await t.nextTick(),(N=u.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function y(){const{id:E}=a(),C=i.value.findIndex(({key:N})=>!N);m(C===-1?i.value.length-1:C),f.value=E}function b(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function h(E){if(w(E)){E.key=p,delete d.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 d.value[E.id];const C=o.fieldNameValidator("input",p,E.key);if(C)return d.value[E.id]=C,C}function _(E){w(E)}function k(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"),I=t.resolveComponent("KLabel"),D=t.resolveComponent("KInput"),G=t.resolveComponent("KSelect"),K=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:u,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(S,ne)=>(t.openBlock(),t.createElementBlock("div",{key:S.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${ne}`},[t.createVNode(I,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${ne}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),t.createElementVNode("div",hR,[t.createElementVNode("div",yR,[t.createVNode(D,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${ne}`,modelValue:S.key,"onUpdate:modelValue":[x=>S.key=x,x=>w(S)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":ne,"data-testid":`ff-key-${t.unref(s).path.value}.${ne}`,error:!!d.value[S.id],"error-message":d.value[S.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:x=>_(S),onChange:x=>h(S),onFocus:x=>g(S)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(G,{modelValue:S.value,"onUpdate:modelValue":x=>S.value=x,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${ne}`,"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:x=>k(S,(x==null?void 0:x.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(K,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${ne}`,icon:"",onClick:x=>b(S)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,gR))),128)),t.createVNode(K,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.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-b2f89c26"]]),bR={key:1,class:"dk-inputs-field-or"},Ln=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}=Ye(),{i18n:{t:i}}=De(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?mR:_R:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function u(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function d(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(Oe.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(Nt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:p.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},null,8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",bR,[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(Oe.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":p.fieldNameValidator,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":u,"onRemove:field":f,"onRename:field":d},null,8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-08ddb036"]]),wR={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"},kR={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 CR(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function go(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function ho(e){const{i18n:{t:n}}=De(),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 $m(e,n){const{i18n:{t:o}}=De();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 ER(e=0,n=1/0,o){const{i18n:{t:r}}=De();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 Bm(e){const{i18n:{t:n}}=De();return function(r){if(!CR(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 Vm(e,n){const{i18n:{t:o}}=De();return function(i){if(i==null)return;const a=Bm(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 Rm(e=-1/0,n=1/0,o){const{i18n:{t:r}}=De();return function(a){if(a==null)return;const l=Bm(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 NR(e,n){const{state:o}=st(),{i18n:{t:r}}=De();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 SR(e,n,o){const{i18n:{t:r}}=De();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 vR(){const{i18n:{t:e}}=De();return function(o){if(tl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Dm(e){const{i18n:{t:n}}=De(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return go(ho(o),$m("identifier",o),vR(),NR(e,o))}function xR(e){const{i18n:{t:n}}=De(),{getNodeById:o}=st();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 go(ho(s),SR(i,o(e),l))(a)}}function AR(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=d=>{const p=typeof d=="function"?d():d,m=s(p);return n.value[l]=m,m},u=()=>{n.value[l]=void 0},f=d=>(u(),c(d));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 u=l[c],f=typeof u=="function"?u():u;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function Ki(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=st(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>AR(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function u(){const d=o(),p=l.value.validate(d),m={};for(const y in a.value)m[y]=p[y];return m}function f(d,p){return{onBlur:()=>{const m=o(),y=s.value[d];y&&y.handleBlur(m[d])},onUpdate:()=>{const m=o(),y=s.value[d];y&&y.handleChange(m[d]),p==null||p()},error:t.computed(()=>{const m=s.value[d];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[d];return m?m.error.value??"":""})}}return t.onMounted(()=>{i.value?i.value=!1:u()}),t.onBeforeUnmount(async()=>{try{const d=u(),p=Object.values(d).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:u,createFieldHandler:f}}function mn(e,n){const o=t.inject(Bo.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:u,disconnectEdge:f,connectEdge:d,invalidConfigNodeIds:p,commit:m,revert:y}=st(),{i18n:{t:b}}=De(),g=vm(),h=t.computed(()=>{const T=a(e);if(!T)throw new Error("Node not existed");return T}),w=t.computed(()=>{const v=r.value.edges.filter(P=>P.target===e).reduce((P,A)=>{var de,he;const Y=a(A.source),W=(de=sn(Y,"output",A.sourceField))==null?void 0:de.id,ie=(he=sn(h.value,"input",A.targetField))==null?void 0:he.name,oe=Y.id+(W?`.${W}`:"");return ie?P.inputs={...P.inputs,[ie]:oe}:P.input=oe,P},{});return h.value.fields.input.forEach(P=>{v.inputs||(v.inputs={}),v.inputs[P.name]||(v.inputs[P.name]=null)}),{...h.value.config,...v,name:h.value.name}}),_=T=>{i(e,T??"",!0,`${e}:rename`)},k=(T,v=!0)=>{if(!n)throw new Error("getFormInnerData is not defined");const P=$o(n(),["name","input","inputs"]),A=T?`update:${e}:${T}`:void 0;u(e,P,v,A)},E=(T,v)=>{const P=ln(h.value,T,v);if(!P)throw new Error(`Field with name "${v}" not found in node "${h.value.name}"`);return P},C=(T,v,P)=>{const A=!!P;l(e,T,v,!A),A&&K(v,P)},N=(T,v,P)=>{const A=E(T,v).id;s(e,A,P)},I=(T,v)=>{const P=E(T,v).id;c(e,P)},D=t.computed(()=>r.value.edges.filter(T=>T.target===e&&!T.targetField)[0]),G=t.computed(()=>r.value.edges.filter(T=>T.target===e&&T.targetField)),K=async(T,v)=>{const P=v==null,A=E("input",T).id;if(P){const se=G.value.find(ue=>ue.targetField===A);se&&f(se.id);return}const{nodeId:Y,fieldId:W}=wu(v),ie=E("input",T).id,oe=[];D.value&&(oe.push(mr(D.value,a)),f(D.value.id,!1));const de=G.value.find(se=>se.targetField===A);de&&(oe.push(mr(de,a)),f(de.id,!1)),d({source:Y,sourceField:W,target:e,targetField:ie},!1);const he=ls(Y,W,e,ie,a),X=oe[0]&&he?oe[0][1]===he[1]:!1;if(m(),X||oe.length===0)return;await g(b("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[he],oe)||y()},S=async T=>{if(T==null){D.value&&f(D.value.id);return}const P=[];for(const oe of G.value)P.push(mr(oe,a)),f(oe.id,!1);D.value&&f(D.value.id,!1);const{nodeId:A,fieldId:Y}=wu(T);d({source:A,sourceField:Y,target:e,targetField:void 0},!1);const W=ls(A,Y,e,void 0,a);if(m(),P.length===0)return;await g(b("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[W],P)||y()},ne=T=>{const v=[...r.value.edges,{source:T,target:e}];return il(Yr(v))},x=t.computed(()=>{var v,P;const T=[];for(const A of r.value.nodes)if(!(!o&&A.type==="vault"||!((v=oo(A.type).io)!=null&&v.output))&&A.fields.output&&A.id!==e&&!(A.type==="property"&&!Hl((P=A.config)==null?void 0:P.property))&&!ne(A.id)&&!(h.value.phase==="request"&&A.phase==="response")&&!(A.type==="vault"&&A.fields.output.length===0)){T.push({value:A.id,label:A.name});for(const W of A.fields.output)T.push({value:`${A.id}.${W.id}`,label:`${A.name}.${W.name}`})}return T}),q=t.computed(()=>h.value.fields.input.map(T=>T.name)||[]);function U(T){p.value.delete(e),T||p.value.add(e)}const te=xR(e);function V(T,v,P){const A=a(e);if(!A)throw new Error("Node not found when validating field name");const Y=ln(A,T,v);return te(T,P,Y==null?void 0:Y.id)}return{formData:w,inputOptions:x,inputEdge:D,inputsEdges:G,inputsFieldNames:q,currentNode:h,setName:_,setConfig:k,addField:C,renameFieldByName:N,removeFieldByName:I,setInputs:K,setInput:S,nameValidator:Dm(e),fieldNameValidator:V,toggleNodeValid:U}}function gn(e){const{getSchema:n}=Ye();return t.computed(()=>{if(vt(e))switch(e){case"response":return kR;case"service_request":return wR}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 yo=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=De(),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 u(){s=a.value.trim()}return t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,d)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":d[0]||(d[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:u},null,8,["model-value","error","error-message","label"])}}}),IR=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=De(),o=t.useTemplateRef("form"),r=gn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=mn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:y}=Ki({validationConfig:{url:go(ho({fieldName:"URL"}),$m("url",{fieldName:"URL"})),timeout:go(Vm("integer",{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}),Rm(0,2147483646,{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),b=y("url",()=>l("url")),g=y("timeout",()=>l("timeout"));return(h,w)=>{const _=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(i).name,validate:t.unref(d),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(_,{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(Yn,{error:t.unref(b).error.value,"error-message":t.unref(b).errorMessage.value,name:"url",onBlur:t.unref(b).onBlur,"onUpdate:modelValue":t.unref(b).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(pR,{name:"method",onUpdate:w[0]||(w[0]=k=>t.unref(l)())}),t.createVNode(Wn,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,label:t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(Yn,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=k=>t.unref(l)("ssl_server_name"))}),t.createVNode(Ln,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(u),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),PR=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(u,f)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Ln,{"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"]))}}),TR=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(u,f)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Ln,{"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"]))}}),Mm={jqlang:"https://jqlang.org/manual/"},OR=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=De(),r=t.useTemplateRef("form"),i=gn("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:u,setInput:f,addField:d,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:y,nameValidator:b,toggleNodeValid:g,fieldNameValidator:h}=mn(e.nodeId,()=>r.value.getInnerData());function w(I,D){d("input",I,D)}function _(I){p("input",I)}function k(I,D){m("input",I,D)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=Ki({validationConfig:{jq:go(ho({fieldName:E}),ER(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:g}),N=C("jq",()=>s("jq"));return(I,D)=>{const G=t.resolveComponent("KLabel"),K=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(a).name,validate:t.unref(b),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(G,{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(Yn,{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(K,{"hide-icon":"",href:t.unref(Mm).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Mm).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(Ln,{"field-name-validator":t.unref(h),"field-names":t.unref(y),items:t.unref(c),"onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(u),"onRemove:field":_,"onRename:field":k},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),$R=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}=Or(o,r,!1),{i18n:u}=De(),f=t.useTemplateRef("root"),d=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 y(){const E=l(),C=a.value.findIndex(({key:N})=>!N);m(C===-1?a.value.length-1:C),d.value=E}function b(E){var C;E.id===((C=d.value)==null?void 0:C.id)&&(d.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function h(E){var C;if(_(E)){E.key=p,delete i.value[E.id];return}if(E.id===((C=d.value)==null?void 0:C.id)){if(E.key.trim()==="")return;d.value=null,r("add:field",E.key,E.value)}else r("rename:field",p,E.key);p=E.key}function w(E,C){var I;if(C.id===((I=d.value)==null?void 0:I.id))return;const N=E.target.value.trim();r("change:value",C.key,N)}function _(E){delete i.value[E.id];const C=o.fieldNameValidator("output",p,E.key);if(C)return i.value[E.id]=C,C}function k(E){_(E)}return t.watchEffect(()=>{d.value&&!a.value.some(E=>E.id===d.value.id)&&a.value.push(d.value)}),(E,C)=>{const N=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),D=t.resolveComponent("KButton"),G=t.resolveComponent("KInput"),K=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(I,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).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),(S,ne)=>(t.openBlock(),t.createBlock(K,{key:S.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${ne}`},{actions:t.withCtx(()=>[t.createVNode(D,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${ne}`,icon:"",onClick:x=>b(S)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(G,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${ne}`,modelValue:S.key,"onUpdate:modelValue":[x=>S.key=x,x=>_(S)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":ne,"data-testid":`ff-key-${t.unref(c).path.value}.${ne}`,error:!!i.value[S.id],"error-message":i.value[S.id],label:t.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:x=>k(S),onChange:x=>h(S),onFocus:x=>g(S)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(G,{modelValue:S.value,"onUpdate:modelValue":x=>S.value=x,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${ne}`,label:t.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:x=>w(x,S)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(D,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!d.value,onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(u).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 BR(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 ji(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 VR(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 RR=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=st(),{fieldNameValidator:c}=mn(e.nodeId),u=gn("static"),f=Dm(e.nodeId),d=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var _;return((_=d.value)==null?void 0:_.fields.output.map(k=>k.name))||[]});function m(_){if(!d.value)throw new Error("No current node");n(d.value.id,_??"")}const y=t.computed(()=>{var D;if(!d.value)return{};const _=((D=d.value.config)==null?void 0:D.values)??{},k={},E=o(d.value.id).map(G=>G.sourceField).filter(Boolean).map(G=>sn(d.value,"output",G)).map(G=>G==null?void 0:G.name).filter(Boolean),C=d.value.fields.output.map(G=>G.name),N=Object.keys(_);return new Set([...N,...E,...C]).forEach(G=>{if(G in _){k[G]=_[G];return}k[G]=""}),{name:d.value.name,values:BR(k)}});function b(_,k){if(!d.value)throw new Error("No selected node");const E=k!==void 0;if(r(e.nodeId,"output",_,!E),E){const C={values:ji({...y.value.values,[_]:k})};l(e.nodeId,C)}}function g(_,k){if(!d.value)throw new Error("No selected node");const E=ln(d.value,"output",_);if(!E)throw new Error("No field found to rename");const C={values:ji(VR(y.value.values??{},_,k))};l(e.nodeId,C,!1),i(e.nodeId,E.id,k)}function h(_){var C;if(!d.value)throw new Error("No selected node");const k=ln(d.value,"output",_);if(!k)throw new Error("No field found to delete");a((C=d.value)==null?void 0:C.id,k.id,!0,!1);const E={values:ji({...y.value.values})};delete E.values[_],l(e.nodeId,E)}function w(_,k){if(!d.value)throw new Error("No selected node");const E={...y.value.values};E[_]=k;const C={values:ji(E)};l(e.nodeId,C)}return(_,k)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:y.value,schema:t.unref(u)},{default:t.withCtx(()=>{var E;return[t.createVNode(yo,{name:((E=d.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode($R,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":b,"onChange:value":w,"onRemove:field":h,"onRename:field":g},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),DR={class:"dk-kong-property-item"},MR={class:"property-type"},LR={class:"property-badges"},FR=ve(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=De(),r=e,i=n,{formData:a}=Ye(),l=t.ref(ur(a.property)),s=t.computed(()=>fr(a.property)),c=t.ref(zl(a.property)),u=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(Rn).map(([m])=>{var g;const y=fr(m)?(g=a.property)==null?void 0:g.startsWith(m.replace(po,"")):a.property===m;return{label:y&&c.value?m.replace(po,c.value):m,value:m,selected:y}}));function d(m){const y=Ti.find(b=>{var g;return(g=a.property)==null?void 0:g.startsWith(b)});y&&(a.property=y+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==ur(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=ur(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=zl(m),l.value=ur(m)}),(m,y)=>{const b=t.resolveComponent("KBadge"),g=t.resolveComponent("KSelect"),h=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(g,{key:u.value,"enable-filtering":"",error:!m.validators.property.isValid.value,help:m.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:y[0]||(y[0]=w=>m.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",DR,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",MR,t.toDisplayString(t.unref(Rn)[w.value].dataType),1)]),t.createElementVNode("div",LR,[t.unref(Rn)[w.value].readable?(t.openBlock(),t.createBlock(b,{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(Rn)[w.value].writable?(t.openBlock(),t.createBlock(b,{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(h,{key:0,"model-value":c.value,"onUpdate:modelValue":[y[1]||(y[1]=w=>c.value=w),d],error:!m.validators.key.isValid.value,"error-message":m.validators.key.error.value,label:"key",required:"",onBlur:y[2]||(y[2]=w=>m.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),UR=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=st(),a=gn("property"),{formData:l,setName:s,setConfig:c,inputOptions:u,setInputs:f,setInput:d,inputsFieldNames:p,nameValidator:m,toggleNodeValid:y,fieldNameValidator:b}=mn(e.nodeId,()=>n.value.getInnerData()),g=t.computed(()=>Yl(l.value.property));function h(_){var E;const k=(E=o.value)==null?void 0:E.id;if(!k)throw new Error("Expected selectedNode to be defined");Hl(_)||i(k,!1),Yl(_)||r(k,!1),c()}const{fields:w}=Ki({validationConfig:()=>({property:ho({fieldName:"Property"}),key:fr(l.value.property)?ho({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:zl(l.value.property)}),toggleNodeValid:y});return(_,k)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(Nt,{name:"content_type",onUpdate:k[0]||(k[0]=E=>t.unref(c)())}),t.createVNode(FR,{validators:t.unref(w),"onUpdate:modelValue":h,"onUpdate:propertyKey":k[1]||(k[1]=E=>t.unref(c)("property-key"))},null,8,["validators"]),g.value?(t.openBlock(),t.createBlock(Ln,{key:0,"field-name-validator":t.unref(b),"field-names":t.unref(p),items:t.unref(u),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),KR=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:u,nameValidator:f,toggleNodeValid:d,fieldNameValidator:p}=mn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:m}=Ki({validationConfig:{status:go(Vm("integer",{fieldName:"Status"}),Rm(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:d}),y=m("status",()=>a("status"));return(b,g)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Wn,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"status",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Ia,{name:"warn_headers_sent","onUpdate:modelValue":g[0]||(g[0]=h=>t.unref(a)())}),t.createVNode(Ln,{"field-name-validator":t.unref(p),"field-names":t.unref(u),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 jR(e){const n=mn(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=st(),{i18n:{t:l}}=De(),s=vm(),c=Nm(),u=t.computed(()=>{var _;const h={...n.formData.value},w=qo(((_=n.currentNode.value)==null?void 0:_.type)||"branch");for(const k of w)(!(k in h)||h[k]==null)&&(h[k]=[]);return h});function f(h,w,_){const k=r(h),E=r(_),C=k?`${k.name}.${w}`:`${h}.${w}`,N=E?E.name:_;return[C,N]}function d(h){return(h==null?[]:Array.isArray(h)?h:[h]).filter(w=>bu(w))}function p(h,w){return i.wouldCreateCycle(h,w)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(h,w,_){const k=[],E=[],C=[];for(const N of _){const I=i.findMembership(N);if(!I||I.ownerId===h&&I.branch===w)continue;const D=i.getMembers(I.ownerId,I.branch).filter(G=>G!==N);C.push({ownerId:I.ownerId,branch:I.branch,members:D}),k.push(f(h,w,N)),E.push(f(I.ownerId,I.branch,N))}return{conflictUpdates:C,addedAssignments:k,removedAssignments:E}}function y(h,w,_,k){let E=!1;for(const C of k)E=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||E;return E=i.setMembers(h,w,_,{commit:!1})||E,E}async function b(h,w){const _=n.currentNode.value,k=d(w),E=i.prepareMembers(_.id,h,k),C=i.getMembers(_.id,h);if(nl(C,E))return!0;const N=E.filter(S=>!C.includes(S));for(const S of N)if(p(_.id,S))return!1;const{conflictUpdates:I,addedAssignments:D,removedAssignments:G}=m(_.id,h,N);return I.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),D,G)?!1:(y(_.id,h,E,I)&&a(),!0)}const g=t.computed(()=>{const h=n.currentNode.value;return!h||!i?[]:o.value.nodes.filter(w=>w.id!==e&&!vt(w.type)&&w.phase===h.phase&&!i.wouldCreateCycle(h.id,w.id)).map(w=>({value:w.id,label:w.name}))});return{...n,formData:u,branchOptions:g,updateBranchMembers:b}}const GR=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=De(),o=gn("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:u,setInputs:f,inputsFieldNames:d,fieldNameValidator:p,updateBranchMembers:m}=jR(e.nodeId);async function y(b,g){await m(b,g)||(r.value+=1)}return(b,g)=>(t.openBlock(),t.createBlock(ht,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Oe.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(Nt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:g[0]||(g[0]=h=>y("then",h))},null,8,["items"]),t.createVNode(Nt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:g[1]||(g[1]=h=>y("else",h))},null,8,["items"]),t.createVNode(Ln,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),qR=["innerHTML"],zR=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${mu}px`},offsetTop:{default:`${KN}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=st(),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 IR;case"service_request":return PR;case"response":return TR;case"jq":return OR;case"static":return RR;case"property":return UR;case"exit":return KR;case"branch":return GR;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Oe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":i.maxWidth,"offset-top":i.offsetTop,visible:i.visible,"z-index":t.unref(UN),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(St)(o.value.type)},null,8,qR)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:i.nodeId,class:"dk-node-properties-panel-form","node-id":i.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Im,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),HR=ve(zR,[["__scopeId","data-v-558814e2"]]),YR={class:"dk-editor-content"},WR={class:"main"},XR=ve(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=st();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",YR,[t.createVNode(t.unref(fR)),t.createElementVNode("div",WR,[t.createVNode(FV)]),t.createVNode(HR,{"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"]]),ZR={key:0,class:"dk-editor-modal"},JR=ve(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({"5fe3dd96":`${t.unref(FN)}px`,"480b2f5d":`${t.unref(pu)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=st();QB(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=Xe.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",ZR,[t.createVNode(BV,{class:"nav",onBack:l}),t.createVNode(XR,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(PV,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-917708bb"]]),QR={class:"dk-flow-editor"},eD={class:"flow-panels-container"},tD={class:"overlay"},nD=ve(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Ze.createI18n("en-us",rt),{formData:r}=Ye(),i=n;function a(c,u,f){const d={...r.config,nodes:c};f!==void 0&&(d.resources=f);const p={...r.__ui_data,...u};r.config=d,r.__ui_data=p,i("change",d,p)}const{modalOpen:l,setPendingFitView:s}=Pu(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),(c,u)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",QR,[t.createElementVNode("div",eD,[t.createVNode(cs,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",tD,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:u[0]||(u[0]=d=>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(Se.ExpandIcon))]),_:1})])]),t.createVNode(JR,{open:t.unref(l),"onUpdate:open":u[1]||(u[1]=d=>t.isRef(l)?l.value=d:null)},null,8,["open"])])}}}),[["__scopeId","data-v-d50e16c9"]]);function oD(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 rD(e){const n=e.path[2];return n==="output"||n==="outputs"}function iD(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function Lm(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,u)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",u,"name"]}),i.add(c)}),e.nodes.forEach((c,u)=>{const f="input"in c&&c.input!=null,d="inputs"in c&&iD(c.inputs);f&&d&&o.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["nodes",u,"inputs"]})});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,u)=>{for(const f of oD(c,u)){const d=f.value.split(".",1)[0];if(a.has(d)||o.addIssue({code:"custom",message:`Unknown node "${d}" in connection "${f.value}"`,path:f.path}),rD(f)){const p=`${f.nodeName}->${d}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${d}" and "${d}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${d}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${d}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${d}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const aD=Q.z.enum(gu),lD=Q.z.enum(to),Fm=e=>to.includes(e),ds=Q.z.enum(hu),Um=ds.options;Q.z.union([ds,aD]);const sD=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,Km=Q.z.string().min(1).max(255).regex(sD,"Invalid node name (snake_case / kebab-case only)").refine(e=>!Fm(e),"Name clashes with reserved implicit node").brand(),Gi=Q.z.union([lD,Km]),cD=Q.z.string().min(1).brand(),dD=["then","else"];Q.z.enum(dD);const Gt=Q.z.string().refine(e=>{if(Gi.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return Gi.safeParse(o).success&&cD.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),jm=Q.z.enum(yu),_o=Q.z.object({type:Q.z.string(),name:Km,input:Gt,inputs:Q.z.record(Q.z.string(),Gt).nullish(),output:Gt,outputs:Q.z.record(Q.z.string(),Gt).nullish()}).loose(),uD=Q.z.object({type:Q.z.string(),name:Q.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}),Um.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${Um.join(", ")}`})}),fD=_o.extend({type:Q.z.literal("call"),method:jm.nullish(),ssl_server_name:Q.z.string().min(1).nullish(),timeout:Q.z.number().int().min(0).max(2147483646).nullish(),url:Q.z.url(),inputs:Q.z.object({body:Gt,headers:Gt,query:Gt}).partial().nullish(),outputs:Q.z.object({body:Gt,headers:Gt,status:Gt}).partial().nullish()}).strict(),pD=_o.extend({type:Q.z.literal("exit"),status:Q.z.number().int().min(200).max(599).nullish(),warn_headers_sent:Q.z.boolean().nullish(),output:Q.z.never().optional(),outputs:Q.z.never().optional()}).strict(),mD=_o.extend({type:Q.z.literal("jq"),jq:Q.z.string().min(1).max(10240),outputs:Q.z.never().optional()}).strict(),gD=_o.extend({type:Q.z.literal("property"),content_type:Q.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:Q.z.string().min(1),inputs:Q.z.never().optional(),outputs:Q.z.never().optional()}).strict(),hD=_o.extend({type:Q.z.literal("static"),values:Q.z.record(Q.z.string(),Q.z.unknown()),input:Q.z.never().optional(),inputs:Q.z.never().optional()}).strict(),yD=_o.extend({type:Q.z.literal("branch"),then:Q.z.array(Gi).nullish(),else:Q.z.array(Gi).nullish()}).strict(),_D=uD.pipe(Q.z.discriminatedUnion("type",[fD,pD,mD,gD,hD,yD])),bD=Q.z.record(Q.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),Q.z.string().min(1).max(4095)),wD=Q.z.object({dictionary_name:Q.z.string().default("kong_db_cache")}),kD=Q.z.object({host:Q.z.string().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).default(6379)}),CD=Q.z.object({ip:Q.z.string().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).default(6379)}),ED=Q.z.object({host:Q.z.string().optional().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:Q.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:Q.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:Q.z.number().int().min(0).max(2147483646).default(2e3),username:Q.z.string().optional(),password:Q.z.string().optional(),sentinel_username:Q.z.string().optional(),sentinel_password:Q.z.string().optional(),database:Q.z.number().int().optional().default(0),keepalive_pool_size:Q.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:Q.z.number().int().min(0).max(2147483646).optional(),sentinel_master:Q.z.string().optional(),sentinel_role:Q.z.enum(["master","slave","any"]).optional(),sentinel_nodes:Q.z.array(kD).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:Q.z.array(CD).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:Q.z.boolean().default(!1).optional(),ssl_verify:Q.z.boolean().default(!1).optional(),server_name:Q.z.string().optional(),cluster_max_redirections:Q.z.number().int().default(5).optional(),connection_is_proxied:Q.z.boolean().default(!1).optional(),timeout:Q.z.number().int().optional(),sentinel_addresses:Q.z.array(Q.z.string()).min(1).optional(),cluster_addresses:Q.z.array(Q.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"]})}),ND=Q.z.object({strategy:Q.z.enum(["memory","redis"]).optional(),memory:wD,redis:ED}),SD=Q.z.object({vault:bD.nullish(),cache:ND.nullish()});Q.z.array(Q.z.object({id:Q.z.string()})),Q.z.object({nodes:Q.z.array(_D).min(1,"At least one node is required"),debug:Q.z.boolean().nullish(),resources:SD.nullish()}).strict().superRefine((e,n)=>{Lm(e,to,n)});const Gm=ds.options,us=Q.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!Fm(e),"Node name conflicts with reserved implicit node"),qt=Q.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"),bo=Q.z.object({type:Q.z.string(),name:us,input:qt.nullish(),inputs:Q.z.record(Q.z.string(),qt.nullish()).nullish(),output:qt.nullish(),outputs:Q.z.record(Q.z.string(),qt.nullish()).nullish()}).loose(),vD=Q.z.object({type:Q.z.string(),name:Q.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}),Gm.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${Gm.join(", ")}`})}),xD=bo.extend({type:Q.z.literal("call"),method:jm.nullish(),ssl_server_name:Q.z.string().nullish(),timeout:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),url:Q.z.string().nullish(),inputs:Q.z.object({body:qt.nullish(),headers:qt.nullish(),query:qt.nullish()}).partial().nullish(),outputs:Q.z.object({body:qt.nullish(),headers:qt.nullish(),status:qt.nullish()}).partial().nullish()}).strict(),AD=bo.extend({type:Q.z.literal("exit"),status:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),warn_headers_sent:Q.z.boolean().nullish(),output:Q.z.never().optional(),outputs:Q.z.never().optional()}).strict(),ID=bo.extend({type:Q.z.literal("jq"),jq:Q.z.string().nullish(),outputs:Q.z.never().optional()}).strict(),PD=bo.extend({type:Q.z.literal("property"),content_type:Q.z.string().nullish(),property:Q.z.string().nullish(),inputs:Q.z.never().optional(),outputs:Q.z.never().optional()}).strict(),TD=bo.extend({type:Q.z.literal("static"),values:Q.z.record(Q.z.string(),Q.z.unknown()).nullish(),input:Q.z.never().optional(),inputs:Q.z.never().optional()}).strict(),OD=bo.extend({type:Q.z.literal("branch"),then:Q.z.array(us).nullish(),else:Q.z.array(us).nullish()}).strict(),$D=vD.pipe(Q.z.discriminatedUnion("type",[xD,AD,ID,PD,TD,OD])),BD=Q.z.record(Q.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),Q.z.string().min(1).max(4095)),VD=Q.z.object({dictionary_name:Q.z.string().default("kong_db_cache")}),RD=Q.z.object(),DD=Q.z.object({strategy:Q.z.enum(["memory","redis"]).optional(),memory:VD.optional(),redis:RD.optional()}),MD=Q.z.object({vault:BD.nullish(),cache:DD.nullish()}),LD=Q.z.object({nodes:Q.z.array($D).nullish(),debug:Q.z.boolean().nullish(),resources:MD.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||Lm(e,to,n)}).nullish(),FD={class:"option-label"},UD=["innerHTML"],KD=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}=Ze.createI18n("en-us",rt),o=e,r=t.inject(Bo.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(Bo.DATAKIT_M2,!1),{editorMode:a}=ll(),l=t.computed(()=>r&&c.value?a.value:"code"),s={flow:Se.DesignIcon,code:Se.CodeblockIcon},c=t.ref(!0),u=t.computed(()=>{const b=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return b[0].disabled=!c.value,b}),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 b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})});function d(){var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})}function p(){d()}function m(b){var w;d();const{success:g}=LD.safeParse(b);let h=g;if(!i&&h){const _=b;(w=_==null?void 0:_.resources)!=null&&w.vault&&(h=!1)}c.value=h}function y(b){var g;c.value=!1,(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!1,error:b})}return(b,g)=>{const h=t.resolveComponent("KTooltip");return t.openBlock(),t.createBlock(dd,t.mergeProps(o,{class:"dk-form"}),t.createSlots({default:t.withCtx(w=>[t.createVNode(ht,t.mergeProps(w,{tag:"div"}),{default:t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(nD,{key:0,"is-editing":o.isEditing,onChange:p},null,8,["is-editing"])):l.value==="code"?(t.openBlock(),t.createBlock(LN,{key:1,class:"code-editor",editing:o.isEditing,onChange:m,onError:y},null,8,["editing"])):t.createCommentVNode("",!0)]),_:2},1040)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:f.value},null,8,UD)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Oe.KSegmentedControl),{"model-value":l.value,options:u.value,"onUpdate:modelValue":g[0]||(g[0]=w=>a.value=w)},{"option-label":t.withCtx(({option:w})=>[t.createVNode(h,{disabled:c.value||w.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",FD,[(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"]]),qm=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))},zm=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},jD=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ke.useI18n(),l={prepareFormData:c=>{var f,d;const u=Gn(c);return(d=(f=u.config)==null?void 0:f.tools)!=null&&d.length&&u.config.tools.forEach(p=>{zm(p.headers),zm(p.query)}),u},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,d;const u=Gn(c);(d=(f=u.config)==null?void 0:f.tools)!=null&&d.length&&u.config.tools.forEach(p=>{qm(p.headers),qm(p.query)}),o("change",u)};return(c,u)=>(t.openBlock(),t.createBlock(ht,{config:l,data:c.data,schema:c.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config","reset-label-path":"reset"},{tools:t.withCtx(({name:f})=>[t.createVNode($r,{appearance:"tabs","item-label":(d,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(Br)]),_:1},8,["data","schema"]))}}),GD=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(Me.AUTOFILL_SLOT,o==null?void 0:o[Me.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ta,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(jD,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),qD=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(u=>Object.keys(u)[0]==="config").config.fields,s=[],c=[];for(const u of l){const f=Object.keys(u)[0];u[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(ht,{config:i,data:l.data,schema:l.schema,tag:"div",onChange:a},{default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config",omit:r.value.nonRequired,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(Br,{class:"ff-advanced-fields"},{default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config",omit:r.value.required,"reset-label-path":"reset"},null,8,["omit"])]),_:1})]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-3e5ed51d"]]),Hm=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:GD,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(Me.AUTOFILL_SLOT,o==null?void 0:o[Me.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(dd,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(qD,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:KD,RequestCalloutForm:ak,ServiceProtectionForm:fC},Symbol.toStringTag,{value:"Module"})),zD={class:"kong-ui-entities-plugin-form"},HD={key:1,class:"entity-form"},YD={class:"plugin-config-empty-state"},WD=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 de,he;const o=Object.keys(Me.sharedForms),r=Object.keys(Hm);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}=ge.useAxios((de=a.config)==null?void 0:de.axiosRequestConfig),{parseSchema:s}=Ke.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:u,dismissField:f,isObjectEmpty:d,unsetNullForeignKey:p}=Ke.usePluginHelpers(),m=Ke.useExperimentalFreeForms(),{objectsAreEqual:y}=ge.useHelpers(),{i18n:{t:b}}=De(),g=X=>a.config.app==="konnect"?X.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?X.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):X,h=(X,ce)=>{let se=`${a.config.apiBaseUrl}${We.form[a.config.app].entityGetOne}`;return se=g(se),se=se.replace(/{entity}/gi,X),se=se.replace(/{id}/gi,ce),se},w=X=>{let ce=`${a.config.apiBaseUrl}${We.form[a.config.app].entityGetAll}`;return ce=g(ce),ce=ce.replace(/{entity}/gi,X),ce},_=(X,ce)=>{const se=h(X,ce);return l.get(se)},k=(X,ce)=>{const se=w(X);return a.config.app==="konnect"?l.get(se).then(ue=>{const{data:{data:fe}}=ue;if(delete ce.size,delete ce.offset,fe.length&&Object.keys(ce).length===1){const O=Object.keys(ce)[0],B=fe.filter(F=>F[O]?!!F[O].toLowerCase().includes(ce[O].toLowerCase()):!1);ue.data.data=B}return ue}):l.get(se,{params:ce})},E=(X,ce,se)=>{const ue=w(X);if(a.config.app==="konnect"){const{size:fe,offset:O,...B}=ce;if(X==="consumer_groups")return l.get(ue,{params:{size:1e3},signal:se}).then(R=>{const{data:{data:J}}=R;if(J.length&&Object.keys(B).length===1){const j=Object.keys(B)[0],ae=J.filter(L=>L[j]?!!L[j].toLowerCase().includes(B[j].toLowerCase()):!1);R.data.data=ae}return R});const F={size:fe,offset:O};for(const R of Object.keys(B))F.filter={[R]:{contains:B[R]}};return l.get(ue,{params:F,signal:se})}return l.get(ue,{params:ce,signal:se})},C=(X,ce=50)=>{const se=w(X);return l.get(se,{params:{size:ce}})};t.provide(Me.FORMS_API_KEY,{getOne:_,getAll:k,getAllV2:E,peek:C}),t.provide(Me.FORMS_CONFIG,a.config);const N=t.ref(""),I=t.ref(""),D=t.ref(null),G=t.ref({}),K=t.reactive({}),S=t.reactive({}),ne=t.computed(()=>{var X;return(X=D.value)==null?void 0:X.options}),x=t.ref(!1),q=t.ref(),U=(X,ce)=>{x.value=X??"",q.value=ce},te=X=>{var ce;(ce=q.value)==null||ce.call(q,X),x.value=!1},V=()=>{var B,F;const X={...a.schema},ce=S,se=K,ue=Object.keys(ce),fe={};if(!d(G.value))for(let R=0;R<((F=(B=G.value)==null?void 0:B.fields)==null?void 0:F.length);R++)X[G.value.fields[R].model]=G.value.fields[R];Me.customFields.forEach(R=>{X[R]&&(X[R].fields.forEach(J=>{J.fields&&J.fields.forEach(j=>{X[j.model]=j}),J.model&&(X[J.model]=J)}),delete X[R])}),ue.forEach(R=>{var pe;if(!X[R]){R==="partials"&&(fe[R]=ce[R]);return}const J=X[R];let j=ce[R];const ae=se[R],L=Array.isArray(j)?"array":typeof j,$=J?J.valueType:null,z=J?J.valueArrayType:null,M=J?J.transform:null;if(j==null&&ae==null&&!J.submitWhenNull)return;if(J){if($&&L!==$)switch($){case"array":L==="string"&&j.length&&(j=j.split(",").map(ye=>{if(ye=ye.trim(),z==="string")return String(ye);if(z==="number")return Number(ye);if(z==="boolean"){if(typeof ye=="string")return ye.toLowerCase()==="true"||ye==="1";if(typeof ye=="number")return ye===1}return ye})),(!j||!j.length)&&(j=J.submitWhenNull?null:[]);break;case"number":j=Number(j);break;case"boolean":L==="string"&&(j=j.toLowerCase()==="true"||j==="1"),L==="number"&&(j=j===1);break;case"string":j=j==null?"":String(j);break}else $==="array"&&(!j||!j.length?j=J.submitWhenNull?null:[]:((pe=J.inputAttributes)==null?void 0:pe.type)==="number"&&(j=j.map(ye=>Number(ye))));if(J.type==="array"&&J.nestedFields){const ye=me=>{Object.keys(me).forEach(_e=>{me[_e]&&typeof me[_e]=="object"&&!Array.isArray(me[_e])&&me[_e]!==null?ye(me[_e]):(me[_e]===void 0||me[_e]===null||typeof me[_e]=="number"&&isNaN(me[_e])||typeof me[_e]=="string"&&me[_e].trim().length===0)&&delete me[_e]})};j&&typeof j=="object"&&ye(j)}J.type==="object-advanced"&&J.fields&&j!==null&&(Object.entries(j).length===0?j=null:Object.keys(j).forEach(ye=>{Array.isArray(j[ye])||(j[ye]=j[ye].split(","))}))}let le=c(R);if(J.fieldNameHasDashes){const[ye,...me]=le.split(".").reverse();le=[ye.replace(/_/g,"-"),...me].reverse().join(".")}if($==="object-expand"){let ye;[le,ye]=le.split(".");let me={};fe[le]&&(me=fe[le]),me[ye]=j,j=me}ae!==void 0&&j===""&&j!==ae?fe[le]=$==="object"?{}:null:J.type==="checklist"&&j===""?fe[le]=[]:j!==""&&(fe[le]=j),fe[le]=M?M(j):fe[le],p(le,fe)});const O=u(fe);return I.value&&Object.assign(O,Y.value),O},T=(X,ce={})=>{f(S,ce,X,a.editing),i("model-updated",{model:S,originalModel:K,data:V()})},v=(X,ce)=>{var fe;const se={[ce]:X};typeof((fe=a.schema[ce])==null?void 0:fe.modelTransformer)=="function"&&(se[ce]=a.schema[ce].modelTransformer(X));const ue=Object.assign({},S,se);Object.assign(S,ue),i("model-updated",{model:S,originalModel:K,data:V()})},P=X=>{i("validity-change",X)},A=(X,ce)=>{Object.keys(X).forEach(se=>{var F,R;let ue=ce?`${ce}-${se}`:se,fe=a.schema[ue];if(!fe){const J=ce?`${ce}-${se.replace(/-/g,"_")}`:se.replace(/-/g,"_");(F=a.schema[J])!=null&&F.fieldNameHasDashes&&(ue=J,fe=a.schema[ue]),ce&&((R=a.schema[ce])==null?void 0:R.keyFromObject)===se&&(ue=ce,fe=a.schema[ue])}const O=X[se],B=typeof O;if(fe&&fe.type==="object-advanced"&&!O){S[ue]={},K[ue]={};return}if(Array.isArray(O)){S[ue]=JSON.parse(JSON.stringify(O)),K[ue]=JSON.parse(JSON.stringify(O));return}if(B==="object"&&O&&!O.length)return A(O,ue);if(B==="object"&&O&&O.length&&fe.type==="input"){S[ue]=O.join(", "),K[ue]=O.join(", ");return}S[ue]=O,K[ue]=O}),i("model-updated",{model:S,originalModel:K,data:V()})},Y=t.shallowRef(a.record),W=X=>{Y.value=X,i("model-updated",{model:{...S,...X},originalModel:K,data:V()})},ie=t.ref(!0),oe=()=>{var X;if(a.record&&a.schema&&(A({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)&&A({consumer_id:a.record.consumer_id||a.record.consumer}),A(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)&&A({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&&T("redis",{partials:a.record.partials}),I.value?W(a.record):A(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const ce={};for(const se in a.entityMap){const ue=a.entityMap[se].id,fe=a.entityMap[se].idField,O=fe==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(fe).replace("_","-"));Object.prototype.hasOwnProperty.call(S,O)&&(ce[O]=ue)}A(ce)}if((X=a.entityMap.consumer)!=null&&X.id&&a.schema&&a.credential){const ce={};Object.prototype.hasOwnProperty.call(S,"consumer")&&(ce.consumer=a.entityMap.consumer.id),A(ce)}ie.value=!1};return t.watch(ie,X=>{i("loading",X)}),t.watch(()=>a.schema,(X,ce)=>{var ue,fe;if(y(X||{},ce||{}))return;const se=s(X,void 0,void 0,a.engine);Object.assign(S,se.model),G.value={fields:(fe=(ue=G.value)==null?void 0:ue.fields)==null?void 0:fe.map(O=>({...O,disabled:O.disabled||!1}))},Object.assign(K,JSON.parse(JSON.stringify(se.model))),I.value=a.engine?a.engine==="vfg"?void 0:wa(se.model.name,m)||"CommonForm":wa(se.model.name,m),N.value=Me.getSharedFormName(se.model.name),oe()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var X,ce;D.value=s(a.schema,void 0,void 0,a.engine),Object.assign(S,((X=D.value)==null?void 0:X.model)||{}),G.value=((ce=D.value)==null?void 0:ce.schema)||{},oe()}),(X,ce)=>{var ue;const se=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",zD,[ie.value?(t.openBlock(),t.createBlock(se,{key:0,type:"form"})):S.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",HD,[I.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(Hm[I.value]),{key:0,"form-model":S,"form-options":ne.value,"form-schema":G.value,"is-editing":e.editing,model:e.record,"on-form-change":W,"on-model-updated":v,"on-validity-change":P,schema:e.rawSchema,onGlobalAction:ce[0]||(ce[0]=(fe,O)=>X.$emit("globalAction",fe,O))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Me.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(ko.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:U}),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(Me.sharedForms)[N.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":S,"form-options":ne.value,"form-schema":G.value,"is-editing":e.editing,"on-model-updated":v,"on-partial-toggled":T,"show-new-partial-modal":fe=>X.$emit("showNewPartialModal",fe)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Me.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(ko.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:U}),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(Me.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:S,options:ne.value,schema:G.value,onModelUpdated:v,onPartialToggled:T,onRefreshModel:V,onShowNewPartialModal:ce[1]||(ce[1]=fe=>X.$emit("showNewPartialModal",fe))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",YD,t.toDisplayString(t.unref(b)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ue=t.unref(Vt)[S.name])!=null&&ue.fieldRules&&(a.config.isNewOtelSchema||S.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(cw,{rules:t.unref(Vt)[S.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Me.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(ko.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:U}),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(ko.VaultSecretPicker),{config:a.config,setup:x.value,onCancel:ce[2]||(ce[2]=()=>x.value=!1),onProceed:te},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-3a5319dd"]]),XD={key:1},ZD=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",XD,[t.renderSlot(n.$slots,"default")]))}}),JD={class:"kong-ui-entities-plugin-form-container"},QD={key:0},eM={class:"plugin-form-actions"},tM=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 L;const o=n,r=e,i=wo.useRouter(),{i18n:{t:a}}=Ke.useI18n(),{customSchemas:l,typedefs:s}=Ke.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ke.usePluginHelpers(),{getMessageFromError:u}=ge.useErrors(),{capitalize:f}=ge.useStringHelpers(),{objectsAreEqual:d}=ge.useHelpers(),{axiosInstance:p}=ge.useAxios((L=r.config)==null?void 0:L.axiosRequestConfig),m=t.ref(!1),y=t.computed(()=>!!r.pluginId),b=t.computed(()=>r.pluginId?ge.EntityBaseFormType.Edit:ge.EntityBaseFormType.Create),g=t.ref(void 0),h=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),_=t.ref(void 0),k=t.ref({}),E=t.ref(),C=t.ref();t.provide(ld,{redisType:E,redisPath:C,isEditing:y.value});const N=t.ref(!1),I=t.reactive({enabled:!0,protocols:[],tags:[]}),D=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),G=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&G.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const K=t.ref(""),S=t.computed(()=>{var z;if(w.value){let M=We.form[r.config.app].credential[b.value];return M=M.replace(/{resourceEndpoint}/gi,U.value),M}let $;return r.config.entityType&&r.config.entityId?$=We.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):$=We.form[r.config.app].edit.all,r.config.app==="konnect"&&((z=Vt[r.pluginType])!=null&&z.useUIData)?`${$}?__ui_data=true`:$}),ne=()=>{m.value=!m.value},x=t.computed(()=>{var ye,me,_e,Be,re,ee,Z,be;const $=r.config.entityType==="consumers"&&r.config.entityId||((me=(ye=_.value)==null?void 0:ye.consumer)==null?void 0:me.id),z=r.config.entityType==="consumer_groups"&&r.config.entityId||((Be=(_e=_.value)==null?void 0:_e.consumer_group)==null?void 0:Be.id),M=r.config.entityType==="services"&&r.config.entityId||((ee=(re=_.value)==null?void 0:re.service)==null?void 0:ee.id),le=r.config.entityType==="routes"&&r.config.entityId||((be=(Z=_.value)==null?void 0:Z.route)==null?void 0:be.id);if(!($||z||M||le))return{global:{entity:H.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const pe={};return M&&(pe.service={entity:H.PluginScope.SERVICE,entityEndpoint:"services",id:M,idField:hn.SERVICE}),le&&(pe.route={entity:H.PluginScope.ROUTE,entityEndpoint:"routes",id:le,idField:hn.ROUTE}),$&&(pe.consumer={entity:H.PluginScope.CONSUMER,entityEndpoint:"consumers",id:$,idField:hn.CONSUMER}),z&&(pe.consumer_group={entity:H.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:z,idField:hn.CONSUMER_GROUP}),r.config.entityType&&(pe.focusedEntity={entity:H.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:hn[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),pe}),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||b.value===ge.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}),U=t.computed(()=>{var M;const $=r.developer?"developers":"consumers",z=((M=Un[r.pluginType])==null?void 0:M.endpoint)||"/plugins";return`${$}/${r.config.entityId}${r.developer?"/credentials":""}${z}`}),te=$=>{const z=Array.from(new Set($.map(M=>typeof M)));return z.length>1?"string":z[0]},V=($,z,M,le)=>{var _e,Be;let pe=z&&z.fields||[];const ye=l[r.pluginType],me=(Be=(_e=Un[r.pluginType])==null?void 0:_e.schema)==null?void 0:Be.fields;return Array.isArray(pe)&&(pe=pe.reduce((re,ee)=>{const Z=Object.keys(ee)[0];return Z.match(/-/g)?re[Z.replace(/-/g,"_")]={...ee[Z],fieldNameHasDashes:!0}:re[Z]=ee[Z],re},{})),Object.keys(pe).sort().forEach(re=>{var $e,Ne,Ae,Re,je,He,Ge;const ee=pe[re];ee.type==="set"&&(ee.type="array");const Z=$?`${$}-${re}`:`${re}`;if(($e=ye==null?void 0:ye.fieldsToDelete)!=null&&$e.includes(Z)){Dc(M,Z);return}if(Object.prototype.hasOwnProperty.call(ee,"overwrite")||ee.hidden)return;if(ee.type==="table")return V(Z,ee.schema,M);if(ee.fields)return le&&ee.type==="record"?(M[Z]={type:"object",model:re,schema:{fields:Object.values(V(Z,ee,{},!0))}},M):V(Z,ee,M);if(M[Z]={id:Z,model:re},M[Z].type=ee.type==="boolean"?"checkbox":"input",M[Z].required=ee.required,M[Z].referenceable=ee.referenceable,Z.startsWith("config-"))if(!le&&ee.type==="array"&&(K.value=Z),le&&K.value&&Z.startsWith(K.value)){const Ee=Z.slice(K.value.length+1);M[Z].label=Ee.split("-").map(c).join(".")}else M[Z].label=c(Z);if(($==="config"||$.startsWith("config-"))&&(Ne=pe[re])!=null&&Ne.description&&(M[Z].help=gr.marked.parse(pe[re].description,{mangle:!1,headerIds:!1})),ee.type==="map"){if(M[Z].type="object-advanced",M[Z].values=ee.values,ee.values.type==="array"){const{type:Ee}=ee.values.elements||{};M[Z].schema={fields:[{schema:{fields:[{...Ve,model:Z,valueArrayType:Ee==="integer"?"number":Ee||"string",inputAttributes:{...Ve.inputAttributes,type:Ee==="integer"?"number":"text",inputMode:Ee==="integer"?"numeric":"text"}}]}}]}}else ee.values.fields&&(M[Z].schema={fields:[{type:"object",model:"object",schema:{fields:ee.values.fields.map(Ee=>{const Le=Object.keys(Ee)[0];return{model:Le,type:"input",label:f(Le),placeholder:Le,inputType:Ee[Le].type}})}}]});return M}if(ee.enum&&ee.type==="array"&&(M[Z].type="checklist",M[Z].values=ee.enum,M[Z].multi=!0,M[Z].multiSelect=!0),ee.one_of&&ee.type!=="array"&&(M[Z].type="select",M[Z].values=ee.one_of,M[Z].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),ee.elements&&ee.type==="array"){const Ee=ee.elements;if(M[Z].referenceable=Ee.referenceable,M[Z].elements=Ee,["string","integer","number"].includes(Ee.type)&&!Ee.one_of){const{id:Le,help:Ue,label:Ce,hint:Te,values:Pe,referenceable:nt,model:dt}=M[Z],{inputAttributes:qi,...QM}=JSON.parse(JSON.stringify(Ve));qi.type=Ee.type==="string"?"text":"number",M[Z]={id:Le,help:Ue,label:Ce,hint:Te,values:Pe,referenceable:nt,model:dt,inputAttributes:qi,...QM}}}if(ee.hint&&(M[Z].hint=ee.hint),ye&&!ye.overwriteDefault&&Object.keys(ye).forEach(Ee=>{if(Ee===Z){const{help:Le,label:Ue,hint:Ce,values:Te,referenceable:Pe,elements:nt}=M[Z],{help:dt,...qi}=ye[Ee];M[Z]={help:Le,label:Ue,hint:Ce,values:Te,referenceable:Pe,elements:nt,...qi},typeof dt=="string"&&(M[Z].help=gr.marked.parse(dt,{mangle:!1,headerIds:!1}))}}),ee.type==="array"&&((Ae=ee.elements)==null?void 0:Ae.type)==="record"&&Array.isArray(ee.elements.fields)){let Ee={};for(const Ue of ee.elements.fields)Ee={...Ee,...Ue};const Le=(He=(je=(Re=M[Z])==null?void 0:Re.items)==null?void 0:je.schema)==null?void 0:He.fields;if(Array.isArray(Le))for(const Ue of M[Z].items.schema.fields){const Ce=(Ge=Ee[Ue.model])==null?void 0:Ge.description;Ue.help===void 0&&typeof Ce=="string"&&(Ue.help=gr.marked.parse(Ce,{mangle:!1,headerIds:!1}))}if(Le||(M[Z].type="array",M[Z].newElementButtonLabelClasses="kong-form-new-element-button-label",M[Z].fieldClasses="array-card-container-wrapper",M[Z].itemContainerComponent="FieldArrayCardContainer",M[Z].items={type:"object",schema:{fields:Object.values(V(Z,ee.elements,{},!0))}},M[Z].items.schema.fields.forEach(Ue=>{var Ce,Te;for(const Pe of ee.elements.fields){const nt=Object.keys(Pe)[0],dt=((Te=(Ce=Ue.id)==null?void 0:Ce.split)==null?void 0:Te.call(Ce,"-"))??[];if(dt[dt.length-1]===nt){Ue.model=nt,Ue.label=c(nt);break}}}),ee.elements.type==="record"&&(M[Z].nestedFields=!0)),!M[Z].nestedFields)M[Z].items.default=()=>ee.elements.fields.reduce((Ue,Ce)=>{const Te=Object.keys(Ce)[0];return Ue[Te]=Ce[Te].default,Ue},{});else{const Ue=(Ce,Te)=>{if(Ce.type==="object"){Ce.model&&(Te[Ce.model]={});for(const Pe of Ce.schema.fields)Ue(Pe,Ce.model?Te[Ce.model]:Te)}else Ce.model&&(Te[Ce.model]=Ce.default)};M[Z].items.default=()=>{const Ce={};return Ue(M[Z].items,Ce),Ce}}}if(w.value&&me){for(let Ee=0;Ee<me.length;Ee++)if(me[Ee][Z]){M[Z]={...M[Z],...me[Ee][Z]};break}}if(ee.required&&ee.type!=="boolean"&&(M[Z].required=!0,M[Z].selectOptions={hideNoneSelectedText:!0}),ee.required&&ee.type==="boolean"&&(M[Z].default=ee.default??!1),ee.default!=null&&typeof ee.default!="object"&&ee.default!=="function"&&(M[Z].default=ee.default),M[Z].type==="input"){["string","number"].includes(typeof M[Z].default)&&r.config.app==="konnect"&&(M[Z].placeholder=`Default: ${M[Z].default===""?"<empty string>":M[Z].default}`);const{type:Ee}=ee.elements||{};Ee&&(M[Z].valueArrayType=Ee==="integer"?"number":Ee),M[Z].inputType=ee.type==="array"||ee.type==="string"?ee.encrypted?"password":"text":ee.type}let be="string";ee.enum?be=te(ee.enum):ee.type==="boolean"?be="boolean":ee.type==="number"||ee.type==="integer"?(be="number",M[Z].inputType="number"):ee.type==="array"?(be="array",M[Z].default=ee.default,ee.len_min>0&&(M[Z].submitWhenNull=!0)):ee.type==="foreign"?be="object":ee.default&&Array.isArray(ee.default)?(be="array",M[Z].valueArrayType=te(ee.default)):ee.default&&(be=typeof ee.default),M[Z].valueType=be,ee.fieldNameHasDashes&&(M[Z].fieldNameHasDashes=!0)}),M},T=()=>{var Z,be,$e,Ne,Ae,Re,je,He,Ge,Ee,Le,Ue;const $=((Z=Vt[r.pluginType])==null?void 0:Z.scope.includes(H.PluginScope.SERVICE))??!0,z=((be=Vt[r.pluginType])==null?void 0:be.scope.includes(H.PluginScope.ROUTE))??!0,M=(($e=Vt[r.pluginType])==null?void 0:$e.scope.includes(H.PluginScope.CONSUMER))??!0,le=r.config.disableConsumerGroupScope?!1:((Ne=Vt[r.pluginType])==null?void 0:Ne.scope.includes(H.PluginScope.CONSUMER_GROUP))??!0,pe=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Re=(Ae=_.value)==null?void 0:Ae.consumer)!=null&&Re.id),ye=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((He=(je=_.value)==null?void 0:je.consumer_group)!=null&&He.id),me=r.config.entityType==="services"&&!!r.config.entityId||!!((Ee=(Ge=_.value)==null?void 0:Ge.service)!=null&&Ee.id),_e=r.config.entityType==="routes"&&!!r.config.entityId||!!((Ue=(Le=_.value)==null?void 0:Le.route)!=null&&Ue.id),Be=[],re=(Ce,Te,Pe)=>Ce?a("plugins.form.disable_source_scope_change",{scope:Pe}):Te?a("plugins.form.disable_data_retrieving",{scope:Pe}):"",ee=Ce=>{var Te,Pe;return((Pe=(Te=r.scopedEntitiesPermissions)==null?void 0:Te[Ce])==null?void 0:Pe.canRetrieve)===!1};if($){const Ce=ee("service"),Te="services",Pe=me&&r.disableScopeSelection;Be.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:Te,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:Pe||Ce,disabledTooltip:re(Pe,Ce,Te)})}if(z){const Ce=ee("route"),Te="routes",Pe=_e&&r.disableScopeSelection;Be.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Te,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:Pe||Ce,disabledTooltip:re(Pe,Ce,Te)})}if(M){const Ce=ee("consumer"),Te="consumers",Pe=pe&&r.disableScopeSelection;Be.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Te,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:Pe||Ce,disabledTooltip:re(Pe,Ce,Te)})}if(le){const Ce=ee("consumer_group"),Te="consumer_groups",Pe=ye&&r.disableScopeSelection;Be.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Te,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:Pe||Ce,disabledTooltip:re(Pe,Ce,Te)})}if(Be.length){const Ce=[...$?["service"]:[],...z?["route"]:[],...M?["consumer"]:[],...le?["consumer_group"]:[]],Pe=Ce.splice(Ce.length-2,2).map(dt=>a(dt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${dt}.plural`)).join(`${Ce.length>0?",":""} and/or `),nt=["Specific",[...Ce.length>0?[Ce.map(dt=>a(dt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${dt}.plural`)).join(", ")]:[],Pe].join(", ")].join(" ");q.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:nt,fields:[]}),q.selectionGroup.fields[1].fields=Be}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(q,l[r.pluginType].formSchema)},v=t.computed(()=>!d(D.fields,I,!0)),P=t.computed(()=>!j.value&&!N.value&&(b.value===ge.EntityBaseFormType.Create||v.value)),A=t.ref(!1),Y=t.ref(),W=$=>{r.credential&&$.password&&($.password=""),D.fields.id=($==null?void 0:$.id)||void 0,Y.value=$==null?void 0:$.ordering,Object.assign(I,D.fields),_.value=$,A.value=!0},ie=t.ref({}),oe=$=>{var z;D.fields=$.model,D.fields.id=((z=_.value)==null?void 0:z.id)||void 0,Object.assign(I,$.originalModel),ie.value=$.data,r.isWizardStep&&o("model-updated",{model:D.fields,data:$.data,resourceEndpoint:U.value})},de=t.ref(new Map),he=t.computed(()=>[D.clientErrorMessage,D.serverErrorMessage].filter(Boolean).join("; ")),X=$=>{$.valid?de.value.delete($.model):de.value.set($.model,$.error),D.clientErrorMessage=[...de.value.entries()].map(([z,M])=>`${z}: ${typeof M=="string"?M:u(M)}`).join("; "),D.clientErrorMessage&&(D.serverErrorMessage="")};t.watch([x,A],($,z)=>{const M=$[0]!==z[0],le=$[1],pe=z[1];if(!w.value&&b.value===ge.EntityBaseFormType.Edit&&(M||le&&le!==pe)){const ye=V("config",k.value,q);fe.value&&(ye._isCustomPlugin=!0),E.value&&(ye._supported_redis_partial_type=E.value),h.value=ye}},{deep:!0});const ce=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},se=t.computed(()=>{let $=`${r.config.apiBaseUrl}${We.form[r.config.app].validate}`;return r.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),$=$.replace(/{id}/gi,r.pluginId),$}),ue=t.computed(()=>{const $=r.config.entityType&&r.config.entityId&&!r.developer,z=w.value?We.form[r.config.app].credential[b.value]:We.form[r.config.app][b.value][$?"forEntity":"all"];let M=`${r.config.apiBaseUrl}${z}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{resourceEndpoint}/gi,U.value),M=M.replace(/{id}/gi,r.pluginId),M=M.replace(/{entityType}/gi,r.config.entityType||""),M=M.replace(/{entityId}/gi,r.config.entityId||""),M}),fe=t.computed(()=>!Object.keys(Vt).includes(r.pluginType)),O=t.computed(()=>{const $=ie.value;if(w.value){for(const z in H.PluginScope){const M=H.PluginScope[z];$[M]&&!$[M].id&&($[M]={id:r.config.entityId})}delete $.created_at}return ie.value.partials&&C.value&&Dc($,C.value),$}),B=t.computed(()=>{const{__ui_data:$,...z}={...O.value};return z}),F=async()=>{if(!D.clientErrorMessage&&!r.isWizardStep)try{D.isReadonly=!0;let $;const z=JSON.parse(JSON.stringify(O.value)),M=l[r.pluginType];typeof(M==null?void 0:M.shamefullyTransformPayload)=="function"&&M.shamefullyTransformPayload({originalModel:I,model:D.fields,payload:z,schema:h.value}),!w.value&&!fe.value&&await p.post(se.value,z),b.value==="create"?$=await p.post(ue.value,z):b.value==="edit"&&($=r.config.app==="konnect"||E.value&&z.partials?await p.put(ue.value,Object.assign({ordering:Y.value},z)):await p.patch(ue.value,z)),Object.assign(I,D.fields),o("update",$==null?void 0:$.data)}catch($){D.serverErrorMessage=u($),o("error",$)}finally{D.isReadonly=!1}},R=t.computed(()=>{var le;const $=w.value?(le=Un[r.pluginType])==null?void 0:le.schemaEndpoint:r.pluginType,z=w.value?We.form[r.config.app].credentialSchema:We.form[r.config.app].pluginSchema;let M=`${r.config.apiBaseUrl}${z}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{plugin}/gi,$),M}),J=t.ref(""),j=t.ref(!1),ae=t.ref("");return t.onBeforeMount(async()=>{var $,z,M,le;j.value=!0;try{if(w.value&&r.config.app==="konnect"){const pe=($=Un[r.pluginType])==null?void 0:$.schemaEndpoint,ye=dg[pe];J.value=pe,h.value=V("",ye,{}),j.value=!1}else{const pe=r.schema??(await p.get(R.value)).data;if(g.value=pe,pe)if(w.value)h.value=V("",pe,{}),j.value=!1;else{const ye=pe.fields.find(_e=>_e.config);k.value=ye?ye.config:pe,pe.supported_partials&&(E.value=Object.keys(pe.supported_partials).find(_e=>[yr.REDIS_CE,yr.REDIS_EE].includes(_e)),C.value=(z=pe.supported_partials[E.value])==null?void 0:z[0]),T();const me=(M=pe.fields.find(_e=>_e.protocols))==null?void 0:M.protocols;if(me){const{default:_e=[],elements:Be={}}=me;q.protocols.default=_e,q.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:_e.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(le=Be.one_of)!=null&&le.length&&(q.protocols.values=Be.one_of.map(re=>({label:re,value:re})))}if(A.value||b.value===ge.EntityBaseFormType.Create){const _e=V("config",k.value,q);E.value&&(_e._supported_redis_partial_type=E.value),fe.value&&(_e._isCustomPlugin=!0),h.value=_e}}}}catch(pe){console.error(pe),ae.value=u(pe),o("error:fetch-schema",pe)}finally{j.value=!1}}),($,z)=>{const M=t.resolveComponent("KSkeleton"),le=t.resolveComponent("KEmptyState"),pe=t.resolveComponent("KButton"),ye=t.resolveComponent("KTabs"),me=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",JD,[j.value?(t.openBlock(),t.createBlock(M,{key:0,type:"form"})):ae.value?(t.openBlock(),t.createBlock(le,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(a)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ge.EntityBaseForm),{key:2,"can-submit":P.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ge.SupportedEntityType).Plugin,"error-message":he.value,"fetch-url":S.value,"form-fields":O.value,"is-readonly":D.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ce,"onFetch:error":z[4]||(z[4]=_e=>$.$emit("error",_e)),"onFetch:success":W,onLoading:z[5]||(z[5]=_e=>$.$emit("loading",_e))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",QD)):(t.openBlock(),t.createBlock(ZD,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",eM,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(pe,{key:0,appearance:"tertiary","data-testid":`plugin-${y.value?"edit":"create"}-form-view-configuration`,onClick:z[3]||(z[3]=_e=>ne())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(pe,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${y.value?"edit":"create"}-form-cancel`,disabled:D.isReadonly,onClick:ce},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(pe,{appearance:"primary","data-testid":`plugin-${y.value?"edit":"create"}-form-submit`,disabled:!P.value||D.isReadonly,type:"submit",onClick:F},{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:F},null,32),t.createVNode(WD,{config:e.config,credential:w.value,editing:b.value===t.unref(ge.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":x.value,"raw-schema":g.value,record:_.value,schema:h.value,onGlobalAction:z[0]||(z[0]=(_e,Be)=>$.$emit("globalAction",_e,Be)),onLoading:z[1]||(z[1]=_e=>N.value=_e),onModelUpdated:oe,onShowNewPartialModal:z[2]||(z[2]=_e=>$.$emit("showNewPartialModal",_e)),onValidityChange:X},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(me,{"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:ne},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(ye,{"data-testid":"form-view-configuration-slideout-tabs",tabs:G.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ge.JsonCodeBlock),{config:e.config,"entity-record":B.value,"fetcher-url":ue.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ge.YamlCodeBlock),{"entity-record":B.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ge.TerraformCodeBlock),{"credential-type":J.value,"entity-record":B.value,"entity-type":t.unref(ge.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-4e00808e"]]),nM={class:"kong-ui-entities-plugins-list"},oM={class:"button-row"},rM={class:"name-cell-wrapper"},iM={class:"info-wrapper"},aM={key:0,class:"info-name"},lM={key:1,class:"info-name"},sM={key:2,class:"info-type"},cM={key:1},dM=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,J;const o=Ke.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Ke.useI18n(),l=wo.useRouter(),{axiosInstance:s}=ge.useAxios((R=i.config)==null?void 0:R.axiosRequestConfig),{hasRecords:c,handleStateChange:u}=ge.useTableState(()=>_.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),d=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var j;return((j=i.config)==null?void 0:j.entityType)==="consumers"}),m=t.computed(()=>{var j;return((j=i.config)==null?void 0:j.entityType)==="consumer_groups"}),y=i.config.app==="konnect"||ge.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),b=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(J=i.config)!=null&&J.entityId||(g.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),g.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},y&&(g.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),g.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const h=g,w=t.computed(()=>{var ae,L,$,z;let j=i.config.entityType?`${i.config.apiBaseUrl}${We.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${We.list[i.config.app].all}`;return i.config.app==="konnect"?j=j.replace(/{controlPlaneId}/gi,((ae=i.config)==null?void 0:ae.controlPlaneId)||""):i.config.app==="kongManager"&&(j=j.replace(/\/{workspace}/gi,(L=i.config)!=null&&L.workspace?`/${i.config.workspace}`:"")),j.replace(/{entityType}/gi,(($=i.config)==null?void 0:$.entityType)||"").replace(/{entityId}/gi,((z=i.config)==null?void 0:z.entityId)||"")}),_=t.ref(""),k=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:g.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...g.enabled,label:a("search.filter.field.enabled")},name:g.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:C,fetcherCacheKey:N}=ge.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),I=()=>{_.value=""},D=()=>{N.value++},G=t.ref(null),K=j=>{var L,$,z,M;const ae=[];return((L=j.route)!=null&&L.id||j.route_id)&&ae.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),(($=j.service)!=null&&$.id||j.service_id)&&ae.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((z=j.consumer)!=null&&z.id||j.consumer_id)&&ae.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((M=j.consumer_group)!=null&&M.id||j.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")}]},S=async(j,ae)=>{var L;return j===null?!1:await((L=i.canRetrieveScopedEntity)==null?void 0:L.call(i,j,ae.id))},ne=(j,ae)=>{var $,z,M,le,pe;let L=null;switch(j){case"route":L=($=ae.route)==null?void 0:$.id;break;case"service":L=(z=ae.service)==null?void 0:z.id;break;case"consumer":L=(M=ae.consumer)==null?void 0:M.id;break;case"consumer_group":L=(le=ae.consumer_group)==null?void 0:le.id;break}L&&((pe=i.config)!=null&&pe.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(j,L))},x=t.ref(!1),q=t.ref(null),U=t.computed(()=>{const j={action:"disable",id:"",name:""};if(q.value){const{enabled:ae,id:L,name:$}=q.value;j.action=ae?"disable":"enable",j.id=L,j.name=o.getDisplayName($)||L}return j}),te=j=>{x.value=!0,q.value=j},V=()=>{x.value=!1,q.value=null},T=async()=>{var $,z,M,le,pe,ye,me,_e;if(!await(($=i.canEdit)==null?void 0:$.call(i,q.value))||!q.value)return;let ae=`${i.config.apiBaseUrl}${(pe=We.item[i.config.app])==null?void 0:pe[(z=i.config)!=null&&z.entityType?"forEntity":"all"].replace(/{entityType}/gi,((M=i.config)==null?void 0:M.entityType)||"").replace(/{entityId}/gi,((le=i.config)==null?void 0:le.entityId)||"")}`.replace(/{id}/gi,q.value.id||"");i.config.app==="konnect"?ae=ae.replace(/{controlPlaneId}/gi,((ye=i.config)==null?void 0:ye.controlPlaneId)||""):i.config.app==="kongManager"&&(ae=ae.replace(/\/{workspace}/gi,(me=i.config)!=null&&me.workspace?`/${i.config.workspace}`:""));const L=!q.value.enabled;try{const{data:Be}=((_e=i.config)==null?void 0:_e.app)==="konnect"?await s.put(ae,{...q.value,enabled:L},{timeout:12e4}):await s.patch(ae,{...q.value,enabled:L},{timeout:12e4});r("toggle-enabled",L,Be),q.value.enabled=L}catch(Be){r("error",Be)}},v=async(j,ae)=>{const L=j.id;if(!await ae(L)){r("copy:error",{entity:j,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:j,field:"id",message:a("copy.success",{val:L})})},P=async(j,ae)=>{const L=JSON.stringify(j);if(!await ae(L)){r("copy:error",{entity:j,message:a("errors.copy")});return}r("copy:success",{entity:j,message:a("copy.success_brief")})},A=async j=>{var L;await((L=i.canRetrieve)==null?void 0:L.call(i,j))&&l.push(i.config.getViewRoute(j))},Y=j=>({label:a("actions.view"),to:i.config.getViewRoute(j)}),W=j=>({label:a("actions.edit"),to:i.config.getEditRoute(j)}),ie=j=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(j)}),oe=t.ref(void 0),de=t.ref(!1),he=t.ref(!1),X=t.ref(""),ce=ge.useDeleteUrlBuilder(i.config,w.value),se=j=>{oe.value=j,de.value=!0},ue=()=>{de.value=!1},fe=async()=>{var j,ae,L;if((j=oe.value)!=null&&j.id){he.value=!0;try{await s.delete(ce(oe.value.id)),he.value=!1,de.value=!1,N.value++,r("delete:success",oe.value)}catch($){X.value=((L=(ae=$.response)==null?void 0:ae.data)==null?void 0:L.message)||$.message||a("errors.delete"),r("error",$)}finally{he.value=!1}}},O=()=>{l.push(i.config.createRoute)};t.watch(C,j=>{var ae,L,$;if(j.status===ge.FetcherStatus.Error){G.value={title:a("errors.general")},($=(L=(ae=j.error)==null?void 0:ae.response)==null?void 0:L.data)!=null&&$.message&&(G.value.message=j.error.response.data.message),r("error",j.error);return}G.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"))}),(j,ae)=>{const L=t.resolveComponent("KButton"),$=t.resolveComponent("KEmptyState"),z=t.resolveComponent("KBadge"),M=t.resolveComponent("KTruncate"),le=t.resolveComponent("KInputSwitch"),pe=t.resolveComponent("KDropdownItem"),ye=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",nM,[t.createVNode(t.unref(ge.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":b.value,"empty-state-options":B.value,"enable-entity-actions":"","error-message":G.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(N),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:_.value,"table-headers":t.unref(h),title:e.title,"title-tag":e.titleTag,onClearSearchInput:I,"onClick:row":ae[4]||(ae[4]=me=>A(me)),onSort:D,onState:t.unref(u)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ge.EntityFilter),{modelValue:_.value,"onUpdate:modelValue":ae[0]||(ae[0]=me=>_.value=me),config:k.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",oM,[!d.value&&f.value?(t.openBlock(),t.createBlock(L,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ae[1]||(ae[1]=me=>j.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(L,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.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:me})=>[t.createElementVNode("div",rM,[t.createVNode(t.unref(Eo.PluginIcon),{class:"plugin-icon",name:me.name,size:24},null,8,["name"]),t.createElementVNode("div",iM,[me.instance_name?(t.openBlock(),t.createElementBlock("span",aM,t.toDisplayString(me.instance_name),1)):(t.openBlock(),t.createElementBlock("span",lM,t.toDisplayString(t.unref(o).getDisplayName(me.name)),1)),me.instance_name?(t.openBlock(),t.createElementBlock("span",sM,t.toDisplayString(t.unref(o).getDisplayName(me.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:me})=>[K(me).length>0?(t.openBlock(),t.createBlock(M,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(K(me),_e=>(t.openBlock(),t.createBlock(t.unref(ge.PermissionsWrapper),{key:_e.badgeText,"auth-function":()=>S(_e.type,me),"force-show":""},{default:t.withCtx(({isAllowed:Be})=>[t.createVNode(z,{class:t.normalizeClass(Be||"disabled"),onClick:t.withModifiers(re=>Be&&_e.type&&ne(_e.type,me),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_e.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",cM,"-"))]),enabled:t.withCtx(({row:me})=>[t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(me)&&await e.canToggle(me)),"force-show":""},{default:t.withCtx(({isAllowed:_e})=>{var Be,re;return[t.createElementVNode("div",{onClick:ae[3]||(ae[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(le,{disabled:!_e,"disabled-tooltip-text":!_e&&((re=(Be=e.config).getToggleDisabledTooltip)==null?void 0:re.call(Be,me))||void 0,"model-value":me.enabled,onClick:t.withModifiers(ee=>_e&&te(me),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:me})=>[t.createVNode(z,{appearance:t.unref(Bc)(me)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Bc)(me)?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:me})=>[t.createVNode(t.unref(ge.TableTags),{tags:me},null,8,["tags"])]),actions:t.withCtx(({row:me})=>[t.createVNode(ye,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(pe,{"data-testid":"action-entity-copy-id",onClick:Be=>v(me,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(ye,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(pe,{"data-testid":"action-entity-copy-json",onClick:Be=>P(me,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(me)},{default:t.withCtx(()=>[t.createVNode(pe,{"data-testid":"action-entity-view","has-divider":"",item:Y(me)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canEdit(me)},{default:t.withCtx(()=>[t.createVNode(pe,{"data-testid":"action-entity-edit",item:W(me)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(y)?(t.openBlock(),t.createBlock(t.unref(ge.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(me)},{default:t.withCtx(()=>[ie(me)?(t.openBlock(),t.createBlock(pe,{key:0,"data-testid":"action-entity-config-dyn-order",item:ie(me)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canDelete(me)},{default:t.withCtx(()=>[t.createVNode(pe,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_e=>se(me)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!_.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var me;return[t.createVNode($,{"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(Se.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[F.value?(t.openBlock(),t.createBlock(L,{key:0,"data-testid":"entity-create-button",onClick:O},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(L,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ae[2]||(ae[2]=_e=>j.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(me=e.config)!=null&&me.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(ge.EntityToggleModal),{action:U.value.action,"entity-id":U.value.id,"entity-name":U.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":T,visible:x.value,onCancel:V,onProceed:V},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ge.EntityDeleteModal),{"action-pending":he.value,description:t.unref(a)("delete.description"),"entity-name":oe.value&&(oe.value.instance_name||oe.value.name||oe.value.id),"entity-type":t.unref(ge.EntityTypes).Plugin,error:X.value,title:t.unref(a)("delete.title"),visible:de.value,onCancel:ue,onProceed:fe},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-582a936c"]]),uM={class:"plugin-select-card-wrapper"},fM=["data-testid"],pM={class:"plugin-card-header"},mM={class:"plugin-card-title"},gM={key:0,class:"plugin-card-actions"},hM=["data-testid","title"],yM={key:0,class:"plugin-card-text"},_M={key:0},bM=["title"],fs=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=wo.useRouter(),{i18n:{t:a}}=Ke.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))),u=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?u():d()},d=()=>{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),y=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},b=(h,w)=>{const _=r.config;r.config.app==="konnect"&&typeof _.getCustomEditRoute=="function"&&_.getCustomEditRoute&&i.push(_.getCustomEditRoute(h,w))},g=()=>{if(!s.value&&r.config.app==="konnect"){const h=r.config;p.value&&h.createCustomRoute?i.push(h.createCustomRoute):m.value&&u()}};return(h,w)=>{const _=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",uM,[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",pM,[t.createElementVNode("div",mM,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",gM,[t.createVNode(E,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(_,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.MoreIcon),{size:t.unref(Zk)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(k,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(N=>b(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(k,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(y,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[t.createVNode(t.unref(Eo.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",yM,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",_M,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,bM)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,hM),t.createElementVNode("div",{class:"plugin-card-footer",onClick:g},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,fM)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),wM=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 y;const o=e,r=n,{i18nT:i,i18n:{t:a}}=Ke.useI18n(),{getMessageFromError:l}=ge.useErrors(),{axiosInstance:s}=ge.useAxios((y=o.config)==null?void 0:y.axiosRequestConfig),c=t.computed(()=>{var b;return d.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((b=o.plugin)==null?void 0:b.name)||a("delete.custom_plugin")})}),u=t.ref(!1),f=t.ref(""),d=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const b=o.plugin.customPluginType==="streaming"?We.select[o.config.app].streamingCustomPluginItem:We.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${b}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var b,g,h,w;if(u.value=!0,f.value="",!(!((b=o.plugin)!=null&&b.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(_){const{response:k}=_;(k==null?void 0:k.status)===400&&((w=(h=k.data)==null?void 0:h.message)!=null&&w.includes("plugin schema is currently in use"))?d.value=!0:f.value=l(_)}finally{u.value=!1}};return(b,g)=>{const h=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!d.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ge.EntityDeleteModal),{key:0,"action-pending":u.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(ge.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[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":u.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:g[2]||(g[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(h,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[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"]]),kM={class:"custom-plugins-grid"},CM={class:"empty-state-title"},EM={class:"empty-state-description"},ps=310,NM=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}}=Ke.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ke.usePluginHelpers(),s=t.ref(!0),c=E=>{r("plugin-clicked",E)},u=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),d=t.ref(null),p=E=>{f.value=!0,d.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var C;E&&(r("revalidate"),r("delete:success",((C=d.value)==null?void 0:C.name)||"")),f.value=!1,d.value=null},y=t.ref(ps),b=t.ref(null),g=t.ref(null),h=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${y.value}px`}:{}),w=t.ref(!1),_=()=>{y.value=Math.max(a(g.value),ps),k()},k=()=>{var E,C;(E=g.value)!=null&&E.length&&(w.value=l(b.value,(C=g.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),y.value=Math.max(a(g.value),ps),k(),window==null||window.addEventListener("resize",_)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",_)}),(E,C)=>{const N=t.resolveComponent("KEmptyState"),I=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",kM,[u.value.length?(t.openBlock(),t.createBlock(I,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=D=>s.value=D),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:b,class:"plugin-card-container",style:t.normalizeStyle(h.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(D,G)=>(t.openBlock(),t.createBlock(fs,{key:`plugin-card-${G}`,ref_for:!0,ref_key:"pluginCardRef",ref:g,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:D,onCustomPluginDelete:K=>p(D),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",CM,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",EM,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&d.value?(t.openBlock(),t.createBlock(wM,{key:2,config:e.config,plugin:d.value,onClosed:m,onProceed:C[1]||(C[1]=D=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),ms=310,Ym=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}}=Ke.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ke.usePluginHelpers(),c=t.ref(ms),u=t.ref(null),f=t.ref(null),d=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),ms),y()},y=()=>{var b,g;(b=f.value)!=null&&b.length&&(p.value=s(u.value,(g=f.value)==null?void 0:g.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),ms),y(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(b,g)=>{const h=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(h,{modelValue:o.value,"onUpdate:modelValue":g[0]||(g[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:u,class:"plugin-card-container",style:t.normalizeStyle(d.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock(fs,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:_=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[g[1]||(g[1]=t.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),SM={class:"plugin-select-grid"},vM={class:"empty-state-title"},xM={class:"empty-state-description"},gs=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}}=Ke.useI18n(),a=t.ref(!1),l=t.ref(bs),s=u=>{r("plugin-clicked",u)},c=t.computed(()=>{const u=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete u[H.PluginGroup.CUSTOM_PLUGINS],u});return(u,f)=>{const d=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",SM,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",vM,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",xM,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(Ym,{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(_s),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Ym,{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))])}}}),AM={class:"kong-ui-entities-plugin-select-form"},IM={class:"plugins-filter-input-container"},PM={key:0},TM={key:3,"aria-live":"polite",class:"plugins-results-container"},OM={"data-testid":"kong-tab"},$M={class:"tab-description"},BM={"data-testid":"custom-tab"},VM={class:"tab-description"},RM=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 v;const o=e,r=n,i=wo.useRoute(),a=wo.useRouter(),{i18n:{t:l}}=Ke.useI18n(),{pluginMetaData:s}=Ke.usePluginMetaData(),{getMessageFromError:c}=ge.useErrors(),{sortAlpha:u,objectsAreEqual:f}=ge.useHelpers(),d=t.ref(""),p=t.ref(!0),m=t.ref(!1),y=t.ref(""),b=t.ref([]),g=t.ref([]),h=t.ref({}),w=t.ref([]),{axiosInstance:_}=ge.useAxios((v=o.config)==null?void 0:v.axiosRequestConfig),k=t.computed(()=>h.value?Object.entries(h.value).filter(([P])=>P!==H.PluginGroup.CUSTOM_PLUGINS).reduce((P,[,A])=>{for(const Y of A)P[Y.id]=Y;return P},{}):{}),E=t.computed(()=>{var Y;if(!h.value)return{};const P=d.value.toLowerCase(),A=JSON.parse(JSON.stringify(h.value));for(const W in h.value){const ie=((Y=h.value[W])==null?void 0:Y.filter(oe=>oe.name.toLowerCase().includes(P)||oe.id.toLowerCase().includes(P)||oe.group.toLowerCase().includes(P)))||[];ie.length?A[W]=ie:delete A[W]}return A}),C=t.computed(()=>o.highlightedPluginIds.reduce((P,A)=>{const Y=k.value[A];return Y&&P.push(Y),P},[])),N=t.computed(()=>Object.keys(E.value).length>0),I=t.computed(()=>Object.keys(h.value).length>0&&!N.value),D=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)}]:[]),G=t.computed(()=>{var A;let P=D.value.length&&((i==null?void 0:i.hash)||((A=D.value[0])==null?void 0:A.hash))||"";return P==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(P="#kong"),P}),K=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...b.value])].filter(P=>!o.ignoredPlugins.includes(P)).filter(P=>o.config.entityType&&(o.config.entityType==="services"&&s[P]&&!s[P].scope.includes(H.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[P]&&!s[P].scope.includes(H.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[P]&&!s[P].scope.includes(H.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[P]&&!s[P].scope.includes(H.PluginScope.CONSUMER))?!1:P).reduce((P,A)=>{var de;const Y=s[A]&&s[A].name||A,W={...s[A],id:A,name:Y,available:b.value.includes(A),disabledMessage:"",group:((de=s[A])==null?void 0:de.group)||H.PluginGroup.CUSTOM_PLUGINS};W.group===H.PluginGroup.CUSTOM_PLUGINS&&(W.customPluginType=g.value.find(he=>he.name===A)?"streaming":"schema"),o.disabledPlugins&&(W.disabledMessage=o.disabledPlugins[A]);const ie=W.group||l("plugins.select.misc_plugins");let oe=P[ie];return oe||(oe=[]),oe.push(W),oe.sort(u("name")),P[ie]=oe,P},{}),S=t.computed(()=>{var A;let P=`${o.config.apiBaseUrl}${We.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(P=((A=o.config.gatewayInfo)==null?void 0:A.edition)==="community"?`${o.config.apiBaseUrl}${We.select[o.config.app].availablePluginsForOss}`:P.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),P}),ne=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let P=`${o.config.apiBaseUrl}${We.select[o.config.app].streamingCustomPlugins}`;return P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),P}return null}),x=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let P=`${o.config.apiBaseUrl}${We.list[o.config.app].forEntity}`;return o.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(P=P.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),P.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),q=P=>{a.replace({hash:P,query:i.query})};t.watch(()=>o.disabledPlugins,(P,A)=>{!f(P,A)&&!p.value&&(h.value=K())}),t.watch(()=>o.ignoredPlugins,(P,A)=>{!f(P,A)&&!p.value&&(h.value=K())}),t.watch(p,P=>{r("loading",P)});const U=t.ref(!1),te=t.ref(!1),V=t.ref(!1);t.onBeforeMount(async()=>{U.value=await o.canCreateCustomPlugin(),te.value=await o.canEditCustomPlugin(),V.value=await o.canDeleteCustomPlugin()});const T=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var P,A;(A=(P=T.value)==null?void 0:P.input)==null||A.focus();try{const{data:Y}=await _.get(S.value);if(o.config.app==="konnect"){const{names:W}=Y;if(b.value=W||[],ne.value){const{data:ie}=await _.get(ne.value);g.value=ie.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:W}}=Y;b.value=W?Object.keys(W):[]}}catch(Y){m.value=!0,y.value=c(Y)}if(x.value)try{const{data:{data:Y}}=await _.get(x.value);if(Y!=null&&Y.length){const W=Y.reduce((ie,oe)=>(oe.name&&ie.push(oe.name),ie),[]);w.value=w.value.concat(W)}}catch{}m.value||(h.value=K()),p.value=!1}),(P,A)=>{const Y=t.resolveComponent("KInput"),W=t.resolveComponent("KSkeletonBox"),ie=t.resolveComponent("KSkeleton"),oe=t.resolveComponent("KEmptyState"),de=t.resolveComponent("KTooltip"),he=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",AM,[t.createElementVNode("div",IM,[t.createVNode(Y,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":A[0]||(A[0]=X=>d.value=X),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",PM,[t.createVNode(W,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(ie,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(oe,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(y.value),1)]),_:1})):I.value&&d.value?(t.openBlock(),t.createBlock(oe,{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:d.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",TM,[D.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(he,{key:0,modelValue:G.value,"onUpdate:modelValue":A[5]||(A[5]=X=>G.value=X),"data-testid":"plugins-tabs",tabs:D.value,onChange:q},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",OM,[t.createElementVNode("p",$M,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(gs,{config:e.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:A[1]||(A[1]=X=>P.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",BM,[t.renderSlot(P.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",VM,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(NM,{"can-create-custom-plugin":U.value,"can-delete-custom-plugin":V.value,"can-edit-custom-plugin":te.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":A[2]||(A[2]=X=>P.$emit("delete-custom:success",X)),onPluginClicked:A[3]||(A[3]=X=>P.$emit("plugin-clicked",X)),onRevalidate:A[4]||(A[4]=()=>h.value=K())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(de,{"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(gs,{key:1,config:e.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:A[6]||(A[6]=X=>P.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-7b1adaaa"]]),DM={class:"datakit-config-card-canvas"},MM={class:"config-card-details-label","data-testid":"datakit-configuration-label"},LM={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},FM={class:"canvas-wrapper"},UM=ve(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return Pu(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",DM,[t.createElementVNode("div",MM,[t.createVNode(r,null,{default:t.withCtx(()=>o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])),_:1,__:[0]})]),t.createElementVNode("div",LM,[t.createElementVNode("div",FM,[t.createVNode(cs,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),KM={class:"kong-ui-entity-plugin-config-card"},jM={class:"name-cell-wrapper"},GM={class:"info-name"},qM={key:0},zM={key:0},HM={key:0},YM={key:0},WM={key:0},hs="config",XM=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}}=Ke.useI18n(),a=Ke.usePluginMetaData(),{setFieldType:l}=Ke.usePluginHelpers(),{getPropValue:s}=ge.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),u=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var I;let N=(I=We.item[r.config.app])==null?void 0:I[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const D=r.expandPartial?"&":"?";N=N.concat(`${D}__ui_data=true`)}return N}),d=t.computed(()=>{var D,G;const N={},I=((D=_.value)==null?void 0:D.fields)||[];for(let K=0;K<I.length;K++){const S=_.value.fields[K],ne=(G=Object.keys(S))==null?void 0:G[0];l(N,ne,S[ne])}return{...N,instance_name:{section:ge.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ge.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ge.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ge.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ge.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ge.ConfigurationSchemaType.BadgeTag,section:ge.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var I,D,G;if(!((I=_.value)!=null&&I.fields))return[];const N=(D=_.value.fields)==null?void 0:D.find(K=>{var ne;return((ne=Object.keys(K))==null?void 0:ne[0])===hs});return((G=N==null?void 0:N[hs])==null?void 0:G.fields)||[]}),m=t.computed(()=>{var I,D;const N={};if(!p.value)return N;for(let G=0;G<((I=p.value)==null?void 0:I.length);G++){const K=p.value[G],S=(D=Object.keys(K))==null?void 0:D[0],ne=K[S];ne.required&&(N[S]={order:1}),l(N,S,ne)}return N}),y=N=>{var D;const I=(D=a.pluginMetaData[r.config.pluginType])==null?void 0:D.scope;return I?Object.fromEntries(Object.entries(N).filter(([G,K])=>K?!0:!(G==="service"&&!I.includes(H.PluginScope.SERVICE)||G==="route"&&!I.includes(H.PluginScope.ROUTE)||G==="consumer"&&!I.includes(H.PluginScope.CONSUMER)||G==="consumer_group"&&!I.includes(H.PluginScope.CONSUMER_GROUP)))):N},b=N=>$o(N,"__ui_data"),{getMessageFromError:g}=ge.useErrors(),{axiosInstance:h}=ge.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),w=t.computed(()=>{var I,D;let N=`${r.config.apiBaseUrl}${We.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((I=r.config)==null?void 0:I.controlPlaneId)||""):r.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(D=r.config)!=null&&D.workspace?`/${r.config.workspace}`:"")),N=N.replace(/{plugin}/gi,r.config.pluginType),N}),_=t.ref({});ge.useSchemaProvider(_);const k=t.ref(!1),E=t.ref("");return t.onBeforeMount(async()=>{k.value=!0;try{const{data:N}=await h.get(w.value);_.value=N}catch(N){E.value=g(N),o("error:fetch-schema",N)}finally{k.value=!1}}),(N,I)=>{const D=t.resolveComponent("KSkeleton"),G=t.resolveComponent("KEmptyState"),K=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",KM,[k.value?(t.openBlock(),t.createBlock(D,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):E.value?(t.openBlock(),t.createBlock(G,{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(ge.EntityBaseConfigCard),{key:2,"code-block-record-formatter":b,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(ge.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":hs,"plugin-config-schema":m.value,"record-resolver":y,"onFetch:error":I[0]||(I[0]=S=>N.$emit("fetch:error",S)),"onFetch:success":I[1]||(I[1]=S=>N.$emit("fetch:success",S)),onLoading:I[2]||(I[2]=S=>N.$emit("loading",S))},t.createSlots({name:t.withCtx(S=>[t.createElementVNode("div",jM,[t.createVNode(t.unref(Eo.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",S),size:24},null,8,["name"]),t.createElementVNode("span",GM,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",S))),1)])]),consumer:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",qM,"–"))]),route:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",zM,"–"))]),service:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",HM,"–"))]),consumer_group:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",YM,"–"))]),partials:t.withCtx(S=>{var ne,x,q,U,te,V,T,v,P;return[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:(x=(ne=t.unref(s)("rowValue",S))==null?void 0:ne[0])==null?void 0:x.id,value:((U=(q=t.unref(s)("rowValue",S))==null?void 0:q[0])==null?void 0:U.id)+((V=(te=t.unref(s)("rowValue",S))==null?void 0:te[0])!=null&&V.name?"/"+((v=(T=t.unref(s)("rowValue",S))==null?void 0:T[0])==null?void 0:v.name):""),type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var A,Y;return N.$emit("navigation-click",(Y=(A=t.unref(s)("rowValue",S))==null?void 0:A[0])==null?void 0:Y.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"partial-copy-uuid",text:(P=t.unref(s)("rowValue",S))==null?void 0:P[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",WM,"–"))]}),_:2},[u.value?{name:"config-card-item-nodes",fn:t.withCtx(S=>[t.createVNode(UM,{"plugin-data":S.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:ZM,useProvideExperimentalFreeForms:JM}=Ke;Object.defineProperty(xe,"PluginGroup",{enumerable:!0,get:()=>H.PluginGroup}),Object.defineProperty(xe,"PluginScope",{enumerable:!0,get:()=>H.PluginScope}),Object.defineProperty(xe,"PluginIcon",{enumerable:!0,get:()=>Eo.PluginIcon}),Object.defineProperty(xe,"getPluginIconURL",{enumerable:!0,get:()=>Eo.getPluginIconURL}),xe.EXPERIMENTAL_FREE_FORM_PROVIDER=ka,xe.EntityTypeIdField=hn,xe.FEATURE_FLAGS=Bo,xe.PLUGIN_GROUPS_COLLAPSE_STATUS=bs,xe.PluginConfigCard=XM,xe.PluginForm=tM,xe.PluginGroupArray=_s,xe.PluginList=dM,xe.PluginPartialType=yr,xe.PluginSelect=RM,xe.PluginSelectCard=fs,xe.PluginSelectGrid=gs,xe.TOASTER_PROVIDER=Mc,xe.pluginEndpoints=We,xe.usePluginMetaData=ZM,xe.useProvideExperimentalFreeForms=JM,Object.defineProperty(xe,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=op[n])==null?void 0:r.call(op,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function Ul(e){return"clientX"in e}function IA(e){return"sourceEvent"in e}function Gt(e,n){const o=Ul(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 vi=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function TA(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 xi(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const PA=()=>!0;function Kl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function OA(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())Ei(i,Ci(a))>0&&r.push(a);return r}const $A=250;function BA(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=OA(e,o,n+$A);for(const u of c){const f=[...((i=u.handleBounds)==null?void 0:i.source)??[],...((a=u.handleBounds)==null?void 0:a.target)??[]];for(const d of f){if(r.nodeId===d.nodeId&&r.type===d.type&&r.id===d.id)continue;const{x:p,y:m}=yo(u,d,d.position,!0),y=Math.sqrt((p-e.x)**2+(m-e.y)**2);y>n||(y<s?(l=[{...d,x:p,y:m}],s=y):y===s&&l.push({...d,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const u=r.type==="source"?"target":"source";return l.find(f=>f.type===u)??l[0]}return l[0]}function rp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:u=PA},f,d,p){const m=a==="target",y=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:b,y:g}=Gt(e),h=l.elementFromPoint(b,g),w=h!=null&&h.classList.contains(`${s}-flow__handle`)?h:y,_={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const k=ip(void 0,w),E=w.getAttribute("data-nodeid"),C=w.getAttribute("data-handleid"),N=w.classList.contains("connectable"),T=w.classList.contains("connectableend");if(!E||!k)return _;const D={source:m?E:r,sourceHandle:m?C:i,target:m?r:E,targetHandle:m?i:C};_.connection=D;const j=N&&T&&(o===fn.Strict?m&&k==="source"||!m&&k==="target":E!==r||C!==i);_.isValid=j&&u(D,{nodes:d,edges:f,sourceNode:p(r),targetNode:p(E)}),_.toHandle=n}return _}function ip(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function VA(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function RA(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function DA(e,n,o,r,i,a=!1){var l,s,c;const u=r.get(e);if(!u)return null;const f=i===fn.Strict?(l=u.handleBounds)==null?void 0:l[n]:[...((s=u.handleBounds)==null?void 0:s.source)??[],...((c=u.handleBounds)==null?void 0:c.target)??[]],d=(o?f==null?void 0:f.find(p=>p.id===o):f==null?void 0:f[0])??null;return d&&a?{...d,...yo(u,d,d.position,!0)}:d}const jl={[Ee.Left]:Ee.Right,[Ee.Right]:Ee.Left,[Ee.Top]:Ee.Bottom,[Ee.Bottom]:Ee.Top},MA=["production","prod"];function Ai(e,...n){ap()&&console.warn(`[Vue Flow]: ${e}`,...n)}function ap(){return!MA.includes(process.env.NODE_ENV||"")}function lp(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,...Ni(l)}}):null}function Gl(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 nt(e){return typeof t.unref(e)<"u"}function LA(e,n,o,r){if(!e||!e.source||!e.target)return o(new lt(tt.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return pn(e)?i=e:i={...e,id:Uf(e)},i=Lf(i,void 0,r),bA(i,n)?!1:i}function FA(e,n,o,r,i){if(!n.source||!n.target)return i(new lt(tt.EDGE_INVALID,e.id)),!1;if(!o)return i(new lt(tt.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Uf(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function sp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!Dn(l)){o(new lt(tt.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=hA(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(tt.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 cp(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 u=r.get(l)||new Map;r.set(l,u.set(o,n))}}function ql(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},u=`${i}-${l}--${a}-${s}`,f=`${a}-${s}--${i}-${l}`;cp("source",c,f,e,i,l),cp("target",c,u,e,a,s)}}function dp(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function zl(e,n,o,r,i,a,l,s){const c=[];for(const u of e){const f=pn(u)?u:LA(u,s,i,a);if(!f)continue;const d=o(f.source),p=o(f.target);if(!d||!p){i(new lt(tt.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!d){i(new lt(tt.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new lt(tt.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:d,targetNode:p})){i(new lt(tt.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Lf(f,m,a),sourceNode:d,targetNode:p})}return c}const up=Symbol("vueFlow"),fp=Symbol("nodeId"),pp=Symbol("nodeRef"),UA=Symbol("edgeId"),KA=Symbol("edgeRef"),Ii=Symbol("slots");function mp(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:u,autoPanSpeed:f,nodesDraggable:d,panBy:p,findNode:m,multiSelectionActive:y,nodesSelectionActive:b,selectNodesOnDrag:g,removeSelectedElements:h,addSelectedNodes:w,updateNodePositions:_,emits:k}=Ge(),{onStart:E,onDrag:C,onStop:N,onClick:T,el:D,disabled:G,id:j,selectable:S,dragHandle:ee}=e,x=t.shallowRef(!1);let q=[],U,Q=null,R={x:void 0,y:void 0},P={x:0,y:0},v=null,I=!1,A=0,W=!1;const H=qA(),te=({x:ae,y:ce})=>{R={x:ae,y:ce};let de=!1;if(q=q.map(O=>{const B={x:ae-O.distance.x,y:ce-O.distance.y},{computedPosition:F}=Fl(O,o.value?xi(B,r.value):B,k.error,l.value,O.parentNode?m(O.parentNode):void 0);return de=de||O.position.x!==F.x||O.position.y!==F.y,O.position=F,O}),!!de&&(_(q,!0,!0),x.value=!0,v)){const[O,B]=Ll({id:j,dragItems:q,findNode:m});C({event:v,node:O,nodes:B})}},oe=()=>{if(!Q)return;const[ae,ce]=Wf(P,Q,f.value);if(ae!==0||ce!==0){const de={x:(R.x??0)-ae/c.value.zoom,y:(R.y??0)-ce/c.value.zoom};p({x:ae,y:ce})&&te(de)}A=requestAnimationFrame(oe)},se=(ae,ce)=>{I=!0;const de=m(j);!g.value&&!y.value&&de&&(de.selected||h()),de&&t.toValue(S)&&g.value&&Gl(de,y.value,w,h,b,!1,ce);const O=H(ae.sourceEvent);if(R=O,q=EA(a.value,d.value,O,m,j),q.length){const[B,F]=Ll({id:j,dragItems:q,findNode:m});E({event:ae.sourceEvent,node:B,nodes:F})}},ye=(ae,ce)=>{var de;ae.sourceEvent.type==="touchmove"&&ae.sourceEvent.touches.length>1||(s.value===0&&se(ae,ce),R=H(ae.sourceEvent),Q=((de=n.value)==null?void 0:de.getBoundingClientRect())||null,P=Gt(ae.sourceEvent,Q))},X=(ae,ce)=>{const de=H(ae.sourceEvent);if(!W&&I&&u.value&&(W=!0,oe()),!I){const O=de.xSnapped-(R.x??0),B=de.ySnapped-(R.y??0);Math.sqrt(O*O+B*B)>s.value&&se(ae,ce)}(R.x!==de.xSnapped||R.y!==de.ySnapped)&&q.length&&I&&(v=ae.sourceEvent,P=Gt(ae.sourceEvent,Q),te(de))},ie=ae=>{let ce=!1;if(!I&&!x.value&&!y.value){const de=ae.sourceEvent,O=H(de),B=O.xSnapped-(R.x??0),F=O.ySnapped-(R.y??0),V=Math.sqrt(B*B+F*F);V!==0&&V<=s.value&&(T==null||T(de),ce=!0)}if(q.length&&!ce){_(q,!1,!1);const[de,O]=Ll({id:j,dragItems:q,findNode:m});N({event:ae.sourceEvent,node:de,nodes:O})}q=[],x.value=!1,W=!1,I=!1,R={x:void 0,y:void 0},cancelAnimationFrame(A)};return t.watch([()=>t.toValue(G),D],([ae,ce],de,O)=>{if(ce){const B=$t(ce);ae||(U=gv().on("start",F=>ye(F,ce)).on("drag",F=>X(F,ce)).on("end",F=>ie(F)).filter(F=>{const V=F.target,Z=t.toValue(ee);return!F.button&&(!i.value||!ep(V,`.${i.value}`,ce)&&(!Z||ep(V,Z,ce)))}),B.call(U)),O(()=>{B.on(".drag",null),U&&(U.on("start",null),U.on("drag",null),U.on("end",null))})}}),x}function jA(){return{doubleClick:Ce(),click:Ce(),mouseEnter:Ce(),mouseMove:Ce(),mouseLeave:Ce(),contextMenu:Ce(),updateStart:Ce(),update:Ce(),updateEnd:Ce()}}function GA(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 qA(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Ge();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=IA(i)?i.sourceEvent:i,{x:c,y:u}=Gt(s,l),f=fr({x:c,y:u},e.value),{x:d,y:p}=o.value?xi(f,n.value):f;return{xSnapped:d,ySnapped:p,...f}}}function Ti(){return!0}function gp({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:u,connectionRadius:f,connectOnClick:d,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:y,autoPanSpeed:b,findNode:g,panBy:h,startConnection:w,updateConnection:_,endConnection:k,emits:E,viewport:C,edges:N,nodes:T,isValidConnection:D,nodeLookup:G}=Ge();let j=null,S=!1,ee=null;function x(U){var Q;const R=t.toValue(o)==="target",P=Ul(U),v=Mf(U.target);if(P&&U.button===0||!P){let I=function($){O=Gt($,ae),te=BA(fr(O,C.value,!1,[1,1]),f.value,G.value,V),B||(F(),B=!0);const z=rp($,{handle:te,connectionMode:u.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:R?"target":"source",isValidConnection:H,doc:v,lib:"vue",flowId:s,nodeLookup:G.value},N.value,T.value,g);ee=z.handleDomNode,j=z.connection,S=RA(!!te,z.isValid);const M={...L,isValid:S,to:z.toHandle&&S?Dl({x:z.toHandle.x,y:z.toHandle.y},C.value):O,toHandle:z.toHandle,toPosition:S&&z.toHandle?z.toHandle.position:jl[V.position],toNode:z.toHandle?G.value.get(z.toHandle.nodeId):null};if(!(S&&te&&(L!=null&&L.toHandle)&&M.toHandle&&L.toHandle.type===M.toHandle.type&&L.toHandle.nodeId===M.toHandle.nodeId&&L.toHandle.id===M.toHandle.id&&L.to.x===M.to.x&&L.to.y===M.to.y)){if(_(te&&S?Dl({x:te.x,y:te.y},C.value):O,z.toHandle,VA(!!te,S)),L=M,!te&&!S&&!ee)return Kl(de);j&&j.source!==j.target&&ee&&(Kl(de),de=ee,ee.classList.add("connecting","vue-flow__handle-connecting"),ee.classList.toggle("valid",!!S),ee.classList.toggle("vue-flow__handle-valid",!!S))}},A=function($){(te||ee)&&j&&S&&(a?a($,j):E.connect(j)),E.connectEnd($),i&&(l==null||l($)),Kl(de),cancelAnimationFrame(oe),k($),B=!1,S=!1,j=null,ee=null,v.removeEventListener("mousemove",I),v.removeEventListener("mouseup",A),v.removeEventListener("touchmove",I),v.removeEventListener("touchend",A)};const W=g(t.toValue(n));let H=t.toValue(r)||D.value||Ti;!H&&W&&(H=(R?W.isValidSourcePos:W.isValidTargetPos)||Ti);let te,oe=0;const{x:se,y:ye}=Gt(U),X=v==null?void 0:v.elementFromPoint(se,ye),ie=ip(t.toValue(i),X),ae=(Q=c.value)==null?void 0:Q.getBoundingClientRect();if(!ae||!ie)return;const ce=DA(t.toValue(n),ie,t.toValue(e),G.value,u.value);if(!ce)return;let de,O=Gt(U,ae),B=!1;const F=()=>{if(!y.value)return;const[$,z]=Wf(O,ae,b.value);h({x:$,y:z}),oe=requestAnimationFrame(F)},V={...ce,nodeId:t.toValue(n),type:ie,position:ce.position},Z=G.value.get(t.toValue(n)),re={inProgress:!0,isValid:null,from:yo(Z,V,Ee.Left,!0),fromHandle:V,fromPosition:V.position,fromNode:Z,to:O,toHandle:null,toPosition:jl[V.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:ie,position:(X==null?void 0:X.getAttribute("data-handlepos"))||Ee.Top,...O},{x:se-ae.left,y:ye-ae.top}),E.connectStart({event:U,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:ie});let L=re;v.addEventListener("mousemove",I),v.addEventListener("mouseup",A),v.addEventListener("touchmove",I),v.addEventListener("touchend",A)}}function q(U){var Q,R;if(!d.value)return;const P=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:U,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:Ee.Top,...Gt(U)},void 0,!0);return}let v=t.toValue(r)||D.value||Ti;const I=g(t.toValue(n));if(!v&&I&&(v=(P?I.isValidSourcePos:I.isValidTargetPos)||Ti),I&&(typeof I.connectable>"u"?m.value:I.connectable)===!1)return;const A=Mf(U.target),W=rp(U,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:Ee.Top,...Gt(U)},connectionMode:u.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:v,doc:A,lib:"vue",flowId:s,nodeLookup:G.value},N.value,T.value,g),H=((Q=W.connection)==null?void 0:Q.source)===((R=W.connection)==null?void 0:R.target);W.isValid&&W.connection&&!H&&E.connect(W.connection),E.clickConnectEnd(U),k(U,!0)}return{handlePointerDown:x,handleClick:q}}function zA(){return t.inject(fp,"")}function hp(e){const n=e??zA()??"",o=t.inject(pp,t.ref(null)),{findNode:r,edges:i,emits:a}=Ge(),l=r(n);return l||a.error(new lt(tt.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>qf([l],i.value))}}function HA(){return{doubleClick:Ce(),click:Ce(),mouseEnter:Ce(),mouseMove:Ce(),mouseLeave:Ce(),contextMenu:Ce(),dragStart:Ce(),drag:Ce(),dragStop:Ce()}}function YA(e,n){const o=HA();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 yp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Ge();return(c,u=!1)=>{const f=a.value?i.value[0]:5,d=a.value?i.value[1]:5,p=u?4:1,m=c.x*f*p,y=c.y*d*p,b=[];for(const g of e.value)if(g.draggable||l&&typeof g.draggable>"u"){const h={x:g.computedPosition.x+m,y:g.computedPosition.y+y},{computedPosition:w}=Fl(g,h,s.error,n.value,g.parentNode?r(g.parentNode):void 0);b.push({id:g.id,position:w,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(b,!0,!1)}}const Hl=.1,WA=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function hn(){return Ai("Viewport not initialized yet."),Promise.resolve(!1)}const XA={zoomIn:hn,zoomOut:hn,zoomTo:hn,fitView:hn,setCenter:hn,fitBounds:hn,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:hn,setTransform:hn,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function ZA(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?nr:fi).scaleBy(Yl(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:u,y:f}=Df({x:-r,y:-i},e.translateExtent),d=go.translate(-u,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?nr:fi).transform(Yl(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),d):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"?nr:fi).scaleTo(Yl(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:Hl,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=jf(s),{x:u,y:f,zoom:d}=zf(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Hl,i.offset);return o(u,f,d,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,u=e.dimensions.height/2-a*s;return o(c,u,s,l)},fitBounds:(i,a={padding:Hl})=>{const{x:l,y:s,zoom:c}=zf(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>fr(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 fr(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 Dl(s,e.viewport)}return{x:0,y:0}}}:XA)}function Yl(e,n=0,o=WA,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function JA(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let b,g,h=!!(o.nodes.value.length||o.edges.value.length);b=co([e.modelValue,()=>{var w,_;return(_=(w=e.modelValue)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setElements(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=co([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,_])=>{var k;(k=e.modelValue)!=null&&k.value&&Array.isArray(e.modelValue.value)&&(b==null||b.pause(),e.modelValue.value=[...w,..._],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let b,g,h=!!o.nodes.value.length;b=co([e.nodes,()=>{var w,_;return(_=(w=e.nodes)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setNodes(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=co([o.nodes,()=>o.nodes.value.length],([w])=>{var _;(_=e.nodes)!=null&&_.value&&Array.isArray(e.nodes.value)&&(b==null||b.pause(),e.nodes.value=[...w],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let b,g,h=!!o.edges.value.length;b=co([e.edges,()=>{var w,_;return(_=(w=e.edges)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setEdges(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=co([o.edges,()=>o.edges.value.length],([w])=>{var _;(_=e.edges)!=null&&_.value&&Array.isArray(e.edges.value)&&(b==null||b.pause(),e.edges.value=[...w],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&nt(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&nt(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&nt(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&nt(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{nt(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const b=async g=>{let h=g;typeof n.autoConnect=="function"&&(h=await n.autoConnect(g)),h!==!1&&o.addEdges([h])};t.watch(()=>n.autoConnect,()=>{nt(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(g,h,w)=>{g?o.onConnect(b):o.hooks.value.connect.off(b),w(()=>{o.hooks.value.connect.off(b)})},{immediate:!0})})},m=()=>{const b=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const g of Object.keys(n)){const h=g;if(!b.includes(h)){const w=t.toRef(()=>n[h]),_=o[h];t.isRef(_)&&r.run(()=>{t.watch(w,k=>{nt(k)&&(_.value=k)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),u(),f(),d(),p(),m()})()}),()=>r.stop()}function QA(){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=>Ai(e.message))}}function eI(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),ei(()=>{r.off(i)})}})}function _p(){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:Vl.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:cr.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:Vn.Bezier,style:{}},connectionMode:fn.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:vi()?"Meta":"Control",zoomActivationKeyCode:vi()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:QA(),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 tI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function nI(e,n,o){const r=ZA(e),i=O=>{const B=O??[];e.hooks.updateNodeInternals.trigger(B)},a=O=>_A(O,e.nodes,e.edges),l=O=>yA(O,e.nodes,e.edges),s=O=>qf(O,e.edges),c=({id:O,type:B,nodeId:F})=>{var V;return Array.from(((V=e.connectionLookup.get(`${F}-${B}-${O??null}`))==null?void 0:V.values())??[])},u=O=>{if(O)return n.value.get(O)},f=O=>{if(O)return o.value.get(O)},d=(O,B,F)=>{var V,Z;const K=[];for(const re of O){const L={id:re.id,type:"position",dragging:F,from:re.from};if(B&&(L.position=re.position,re.parentNode)){const $=u(re.parentNode);L.position={x:L.position.x-(((V=$==null?void 0:$.computedPosition)==null?void 0:V.x)??0),y:L.position.y-(((Z=$==null?void 0:$.computedPosition)==null?void 0:Z.y)??0)}}K.push(L)}K!=null&&K.length&&e.hooks.nodesChange.trigger(K)},p=O=>{if(!e.vueFlowRef)return;const B=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!B)return;const F=window.getComputedStyle(B),{m22:V}=new window.DOMMatrixReadOnly(F.transform),Z=[];for(const K of O){const re=K,L=u(re.id);if(L){const $=Ni(re.nodeElement);if(!!($.width&&$.height&&(L.dimensions.width!==$.width||L.dimensions.height!==$.height||re.forceUpdate))){const M=re.nodeElement.getBoundingClientRect();L.dimensions=$,L.handleBounds.source=lp("source",re.nodeElement,M,V,L.id),L.handleBounds.target=lp("target",re.nodeElement,M,V,L.id),Z.push({id:L.id,type:"dimensions",dimensions:$})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),Z.length&&e.hooks.nodesChange.trigger(Z)},m=(O,B)=>{const F=new Set,V=new Set;for(const re of O)Dn(re)?F.add(re.id):pn(re)&&V.add(re.id);const Z=gn(n.value,F,!0),K=gn(o.value,V);if(e.multiSelectionActive){for(const re of F)Z.push(mn(re,B));for(const re of V)K.push(mn(re,B))}Z.length&&e.hooks.nodesChange.trigger(Z),K.length&&e.hooks.edgesChange.trigger(K)},y=O=>{if(e.multiSelectionActive){const B=O.map(F=>mn(F.id,!0));e.hooks.nodesChange.trigger(B);return}e.hooks.nodesChange.trigger(gn(n.value,new Set(O.map(B=>B.id)),!0)),e.hooks.edgesChange.trigger(gn(o.value))},b=O=>{if(e.multiSelectionActive){const B=O.map(F=>mn(F.id,!0));e.hooks.edgesChange.trigger(B);return}e.hooks.edgesChange.trigger(gn(o.value,new Set(O.map(B=>B.id)))),e.hooks.nodesChange.trigger(gn(n.value,new Set,!0))},g=O=>{m(O,!0)},h=O=>{const F=(O||e.nodes).map(V=>(V.selected=!1,mn(V.id,!1)));e.hooks.nodesChange.trigger(F)},w=O=>{const F=(O||e.edges).map(V=>(V.selected=!1,mn(V.id,!1)));e.hooks.edgesChange.trigger(F)},_=O=>{if(!O||!O.length)return m([],!1);const B=O.reduce((F,V)=>{const Z=mn(V.id,!1);return Dn(V)?F.nodes.push(Z):F.edges.push(Z),F},{nodes:[],edges:[]});B.nodes.length&&e.hooks.nodesChange.trigger(B.nodes),B.edges.length&&e.hooks.edgesChange.trigger(B.edges)},k=O=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([O,e.maxZoom]),e.minZoom=O},E=O=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([e.minZoom,O]),e.maxZoom=O},C=O=>{var B;(B=e.d3Zoom)==null||B.translateExtent(O),e.translateExtent=O},N=O=>{e.nodeExtent=O,i()},T=O=>{var B;(B=e.d3Zoom)==null||B.clickDistance(O)},D=O=>{e.nodesDraggable=O,e.nodesConnectable=O,e.elementsSelectable=O},G=O=>{const B=O instanceof Function?O(e.nodes):O;!e.initialized&&!B.length||(e.nodes=sp(B,u,e.hooks.error.trigger))},j=O=>{const B=O instanceof Function?O(e.edges):O;if(!e.initialized&&!B.length)return;const F=zl(B,e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);ql(e.connectionLookup,o.value,F),e.edges=F},S=O=>{const B=O instanceof Function?O([...e.nodes,...e.edges]):O;!e.initialized&&!B.length||(G(B.filter(Dn)),j(B.filter(pn)))},ee=O=>{let B=O instanceof Function?O(e.nodes):O;B=Array.isArray(B)?B:[B];const F=sp(B,u,e.hooks.error.trigger),V=[];for(const Z of F)V.push(Zf(Z));V.length&&e.hooks.nodesChange.trigger(V)},x=O=>{let B=O instanceof Function?O(e.edges):O;B=Array.isArray(B)?B:[B];const F=zl(B,e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),V=[];for(const Z of F)V.push(Zf(Z));V.length&&e.hooks.edgesChange.trigger(V)},q=(O,B=!0,F=!1)=>{const V=O instanceof Function?O(e.nodes):O,Z=Array.isArray(V)?V:[V],K=[],re=[];function L(z){const M=s(z);for(const ne of M)(!nt(ne.deletable)||ne.deletable)&&re.push(Qf(ne.id,ne.source,ne.target,ne.sourceHandle,ne.targetHandle))}function $(z){const M=[];for(const ne of e.nodes)ne.parentNode===z&&M.push(ne);if(M.length){for(const ne of M)K.push(Jf(ne.id));B&&L(M);for(const ne of M)$(ne.id)}}for(const z of Z){const M=typeof z=="string"?u(z):z;M&&(nt(M.deletable)&&!M.deletable||(K.push(Jf(M.id)),B&&L([M]),F&&$(M.id)))}re.length&&e.hooks.edgesChange.trigger(re),K.length&&e.hooks.nodesChange.trigger(K)},U=O=>{const B=O instanceof Function?O(e.edges):O,F=Array.isArray(B)?B:[B],V=[];for(const Z of F){const K=typeof Z=="string"?f(Z):Z;K&&(nt(K.deletable)&&!K.deletable||V.push(Qf(typeof Z=="string"?Z:Z.id,K.source,K.target,K.sourceHandle,K.targetHandle)))}e.hooks.edgesChange.trigger(V)},Q=(O,B,F=!0)=>{const V=f(O.id);if(!V)return!1;const Z=e.edges.indexOf(V),K=FA(O,B,V,F,e.hooks.error.trigger);if(K){const[re]=zl([K],e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((L,$)=>$===Z?re:L),ql(e.connectionLookup,o.value,[re]),re}return!1},R=(O,B,F={replace:!1})=>{const V=f(O);if(!V)return;const Z=typeof B=="function"?B(V):B;V.data=F.replace?Z:{...V.data,...Z}},P=O=>Xf(O,e.nodes),v=O=>{const B=Xf(O,e.edges);return ql(e.connectionLookup,o.value,B),B},I=(O,B,F={replace:!1})=>{const V=u(O);if(!V)return;const Z=typeof B=="function"?B(V):B;F.replace?e.nodes.splice(e.nodes.indexOf(V),1,Z):Object.assign(V,Z)},A=(O,B,F={replace:!1})=>{const V=u(O);if(!V)return;const Z=typeof B=="function"?B(V):B;V.data=F.replace?Z:{...V.data,...Z}},W=(O,B,F=!1)=>{F?e.connectionClickStartHandle=O:e.connectionStartHandle=O,e.connectionEndHandle=null,e.connectionStatus=null,B&&(e.connectionPosition=B)},H=(O,B=null,F=null)=>{e.connectionStartHandle&&(e.connectionPosition=O,e.connectionEndHandle=B,e.connectionStatus=F)},te=(O,B)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,B?e.connectionClickStartHandle=null:e.connectionStartHandle=null},oe=O=>{const B=gA(O),F=B?null:ur(O)?O:u(O.id);return!B&&!F?[null,null,B]:[B?O:Ci(F),F,B]},se=(O,B=!0,F=e.nodes)=>{const[V,Z,K]=oe(O);if(!V)return[];const re=[];for(const L of F||e.nodes){if(!K&&(L.id===Z.id||!L.computedPosition))continue;const $=Ci(L),z=Ei($,V);(B&&z>0||z>=Number(V.width)*Number(V.height))&&re.push(L)}return re},ye=(O,B,F=!0)=>{const[V]=oe(O);if(!V)return!1;const Z=Ei(V,B);return F&&Z>0||Z>=Number(V.width)*Number(V.height)},X=O=>{const{viewport:B,dimensions:F,d3Zoom:V,d3Selection:Z,translateExtent:K}=e;if(!V||!Z||!O.x&&!O.y)return!1;const re=go.translate(B.x+O.x,B.y+O.y).scale(B.zoom),L=[[0,0],[F.width,F.height]],$=V.constrain()(re,L,K),z=e.viewport.x!==$.x||e.viewport.y!==$.y||e.viewport.zoom!==$.k;return V.transform(Z,$),z},ie=O=>{const B=O instanceof Function?O(e):O,F=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];nt(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),S(V));const Z=()=>{nt(B.maxZoom)&&E(B.maxZoom),nt(B.minZoom)&&k(B.minZoom),nt(B.translateExtent)&&C(B.translateExtent)};for(const K of Object.keys(B)){const re=K,L=B[re];![...tI,...F].includes(re)&&nt(L)&&(e[re]=L)}ml(()=>e.d3Zoom).not.toBeNull().then(Z),e.initialized||(e.initialized=!0)};return{updateNodePositions:d,updateNodeDimensions:p,setElements:S,setNodes:G,setEdges:j,addNodes:ee,addEdges:x,removeNodes:q,removeEdges:U,findNode:u,findEdge:f,updateEdge:Q,updateEdgeData:R,updateNode:I,updateNodeData:A,applyEdgeChanges:v,applyNodeChanges:P,addSelectedElements:g,addSelectedNodes:y,addSelectedEdges:b,setMinZoom:k,setMaxZoom:E,setTranslateExtent:C,setNodeExtent:N,setPaneClickDistance:T,removeSelectedElements:_,removeSelectedNodes:h,removeSelectedEdges:w,startConnection:W,updateConnection:H,endConnection:te,setInteractive:D,setState:ie,getIntersectingNodes:se,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:ye,panBy:X,fitView:O=>r.value.fitView(O),zoomIn:O=>r.value.zoomIn(O),zoomOut:O=>r.value.zoomOut(O),zoomTo:(O,B)=>r.value.zoomTo(O,B),setViewport:(O,B)=>r.value.setViewport(O,B),setTransform:(O,B)=>r.value.setTransform(O,B),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(O,B,F)=>r.value.setCenter(O,B,F),fitBounds:(O,B)=>r.value.fitBounds(O,B),project:O=>r.value.project(O),screenToFlowCoordinate:O=>r.value.screenToFlowCoordinate(O),flowToScreenCoordinate:O=>r.value.flowToScreenCoordinate(O),toObject:()=>{const O=[],B=[];for(const F of e.nodes){const{computedPosition:V,handleBounds:Z,selected:K,dimensions:re,isParent:L,resizing:$,dragging:z,events:M,...ne}=F;O.push(ne)}for(const F of e.edges){const{selected:V,sourceNode:Z,targetNode:K,events:re,...L}=F;B.push(L)}return JSON.parse(JSON.stringify({nodes:O,edges:B,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:O=>new Promise(B=>{const{nodes:F,edges:V,position:Z,zoom:K,viewport:re}=O;if(F&&G(F),V&&j(V),re!=null&&re.x&&(re!=null&&re.y)||Z){const L=(re==null?void 0:re.x)||Z[0],$=(re==null?void 0:re.y)||Z[1],z=(re==null?void 0:re.zoom)||K||e.viewport.zoom;return ml(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:L,y:$,zoom:z}).then(()=>{B(!0)})})}else B(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const O=_p();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const B=go.translate(O.defaultViewport.x??0,O.defaultViewport.y??0).scale(Rn(O.defaultViewport.zoom??1,O.minZoom,O.maxZoom)),F=e.viewportRef.getBoundingClientRect(),V=[[0,0],[F.width,F.height]],Z=e.d3Zoom.constrain()(B,V,O.translateExtent);e.d3Zoom.transform(e.d3Selection,Z)}ie(O)},$destroy:()=>{}}}const oI=["data-id","data-handleid","data-nodeid","data-handlepos"],rI={name:"Handle",compatConfig:{MODE:3}},qt=t.defineComponent({...rI,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:u,nodesConnectable:f,noDragClassName:d,noPanClassName:p}=Ge(),{id:m,node:y,nodeEl:b,connectedEdges:g}=hp(),h=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),_=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),k=t.toRef(()=>{var j,S,ee,x,q,U;return((j=l.value)==null?void 0:j.nodeId)===m&&((S=l.value)==null?void 0:S.id)===e.id&&((ee=l.value)==null?void 0:ee.type)===r.value||((x=c.value)==null?void 0:x.nodeId)===m&&((q=c.value)==null?void 0:q.id)===e.id&&((U=c.value)==null?void 0:U.type)===r.value}),E=t.toRef(()=>{var j,S,ee;return((j=s.value)==null?void 0:j.nodeId)===m&&((S=s.value)==null?void 0:S.id)===e.id&&((ee=s.value)==null?void 0:ee.type)===r.value}),{handlePointerDown:C,handleClick:N}=gp({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),T=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(j=>{const S=j[`${r.value}Handle`];return j[r.value]!==m?!1:S?S===e.id:!0}):typeof e.connectable=="number"?g.value.filter(j=>{const S=j[`${r.value}Handle`];return j[r.value]!==m?!1:S?S===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(y,g.value):nt(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var j;if(!y.dimensions.width||!y.dimensions.height)return;const S=(j=y.handleBounds[r.value])==null?void 0:j.find(P=>P.id===e.id);if(!u.value||S)return;const ee=u.value.querySelector(".vue-flow__transformationpane");if(!b.value||!h.value||!ee||!e.id)return;const x=b.value.getBoundingClientRect(),q=h.value.getBoundingClientRect(),U=window.getComputedStyle(ee),{m22:Q}=new window.DOMMatrixReadOnly(U.transform),R={id:e.id,position:e.position,x:(q.left-x.left)/Q,y:(q.top-x.top)/Q,type:r.value,nodeId:m,...Ni(h.value)};y.handleBounds[r.value]=[...y.handleBounds[r.value]??[],R]});function D(j){const S=Ul(j);T.value&&w.value&&(S&&j.button===0||!S)&&C(j)}function G(j){!m||!s.value&&!w.value||T.value&&N(j)}return n({handleClick:N,handlePointerDown:C,onClick:G,onPointerDown:D}),(j,S)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:h,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":j.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${j.position}`,`vue-flow__handle-${e.id}`,t.unref(d),t.unref(p),r.value,{connectable:T.value,connecting:E.value,connectablestart:w.value,connectableend:_.value,connectionindicator:T.value&&(w.value&&!k.value||_.value&&k.value)}]]),onMousedown:D,onTouchstartPassive:D,onClick:G},[t.renderSlot(j.$slots,"default",{id:j.id})],42,oI))}}),Pi=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(qt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(qt,{type:"source",position:e,connectable:r,isValidConnection:a})]};Pi.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Pi.inheritAttrs=!1,Pi.compatConfig={MODE:3};const iI=Pi,Oi=function({targetPosition:e=Ee.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(qt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Oi.props=["targetPosition","label","isValidTargetPos","connectable","data"],Oi.inheritAttrs=!1,Oi.compatConfig={MODE:3};const aI=Oi,$i=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(qt,{type:"source",position:e,connectable:o,isValidConnection:r})]};$i.props=["sourcePosition","label","isValidSourcePos","connectable","data"],$i.inheritAttrs=!1,$i.compatConfig={MODE:3};const lI=$i,sI=["transform"],cI=["width","height","x","y","rx","ry"],dI=["y"],uI={name:"EdgeText",compatConfig:{MODE:3}},fI=t.defineComponent({...uI,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,cI)):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,dI)],8,sI))}}),pI=["id","d","marker-end","marker-start"],mI=["d","stroke-width"],gI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Bi=t.defineComponent({...gI,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,pI),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,mI)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(fI,{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 bp({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 wp({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,u=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),d=Math.abs(u-n);return[c,u,f,d]}function Vi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function kp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case Ee.Left:l=n-Vi(n-r,a),s=o;break;case Ee.Right:l=n+Vi(r-n,a),s=o;break;case Ee.Top:l=n,s=o-Vi(o-i,a);break;case Ee.Bottom:l=n,s=o+Vi(i-o,a);break}return[l,s]}function Cp(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top,curvature:s=.25}=e,[c,u]=kp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,d]=kp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,y,b]=wp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:u,targetControlX:f,targetControlY:d});return[`M${n},${o} C${c},${u} ${f},${d} ${i},${a}`,p,m,y,b]}function Ep({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 Np(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top}=e,[s,c]=Ep({pos:r,x1:n,y1:o,x2:i,y2:a}),[u,f]=Ep({pos:l,x1:i,y1:a,x2:n,y2:o}),[d,p,m,y]=wp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:u,targetControlY:f});return[`M${n},${o} C${s},${c} ${u},${f} ${i},${a}`,d,p,m,y]}const Sp={[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 hI({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 vp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function yI({source:e,sourcePosition:n=Ee.Bottom,target:o,targetPosition:r=Ee.Top,center:i,offset:a}){const l=Sp[n],s=Sp[r],c={x:e.x+l.x*a,y:e.y+l.y*a},u={x:o.x+s.x*a,y:o.y+s.y*a},f=hI({source:c,sourcePosition:n,target:u}),d=f.x!==0?"x":"y",p=f[d];let m,y,b;const g={x:0,y:0},h={x:0,y:0},[w,_,k,E]=bp({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[d]*s[d]===-1){y=i.x??w,b=i.y??_;const N=[{x:y,y:c.y},{x:y,y:u.y}],T=[{x:c.x,y:b},{x:u.x,y:b}];l[d]===p?m=d==="x"?N:T:m=d==="x"?T:N}else{const N=[{x:c.x,y:u.y}],T=[{x:u.x,y:c.y}];if(d==="x"?m=l.x===p?T:N:m=l.y===p?N:T,n===r){const ee=Math.abs(e[d]-o[d]);if(ee<=a){const x=Math.min(a-1,a-ee);l[d]===p?g[d]=(c[d]>e[d]?-1:1)*x:h[d]=(u[d]>o[d]?-1:1)*x}}if(n!==r){const ee=d==="x"?"y":"x",x=l[d]===s[ee],q=c[ee]>u[ee],U=c[ee]<u[ee];(l[d]===1&&(!x&&q||x&&U)||l[d]!==1&&(!x&&U||x&&q))&&(m=d==="x"?N:T)}const D={x:c.x+g.x,y:c.y+g.y},G={x:u.x+h.x,y:u.y+h.y},j=Math.max(Math.abs(D.x-m[0].x),Math.abs(G.x-m[0].x)),S=Math.max(Math.abs(D.y-m[0].y),Math.abs(G.y-m[0].y));j>=S?(y=(D.x+G.x)/2,b=m[0].y):(y=m[0].x,b=(D.y+G.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...m,{x:u.x+h.x,y:u.y+h.y},o],y,b,k,E]}function _I(e,n,o,r){const i=Math.min(vp(e,n)/2,vp(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 u=e.x<o.x?-1:1,f=e.y<o.y?1:-1;return`L ${a+i*u},${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 Wl(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ee.Bottom,targetX:i,targetY:a,targetPosition:l=Ee.Top,borderRadius:s=5,centerX:c,centerY:u,offset:f=20}=e,[d,p,m,y,b]=yI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:u},offset:f});return[d.reduce((h,w,_)=>{let k;return _>0&&_<d.length-1?k=_I(d[_-1],w,d[_+1],s):k=`${_===0?"M":"L"}${w.x} ${w.y}`,h+=k,h},""),p,m,y,b]}function bI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=bp({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const wI=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]=bI(e);return t.h(Bi,{path:o,labelX:r,labelY:i,...n,...e})}}}),xp=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]=Wl({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Bi,{path:o,labelX:r,labelY:i,...n,...e})}}}),kI=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(xp,{...e,...n,borderRadius:0})}}),CI=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]=Cp({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Bi,{path:o,labelX:r,labelY:i,...n,...e})}}}),EI=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]=Np({...e,sourcePosition:e.sourcePosition??Ee.Bottom,targetPosition:e.targetPosition??Ee.Top});return t.h(Bi,{path:o,labelX:r,labelY:i,...n,...e})}}}),NI={input:lI,default:iI,output:aI},SI={default:CI,straight:wI,step:kI,smoothstep:xp,simplebezier:EI};function vI(e,n,o){const r=t.computed(()=>b=>n.value.get(b)),i=t.computed(()=>b=>o.value.get(b)),a=t.computed(()=>{const b={...SI,...e.edgeTypes},g=Object.keys(b);for(const h of e.edges)h.type&&!g.includes(h.type)&&(b[h.type]=h.type);return b}),l=t.computed(()=>{const b={...NI,...e.nodeTypes},g=Object.keys(b);for(const h of e.nodes)h.type&&!g.includes(h.type)&&(b[h.type]=h.type);return b}),s=t.computed(()=>e.onlyRenderVisibleElements?Gf(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 b=[];for(const g of e.edges){const h=n.value.get(g.source),w=n.value.get(g.target);xA({sourcePos:h.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:h.dimensions.width,sourceHeight:h.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&b.push(g)}return b}return e.edges}),u=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const b=[];for(const g of e.nodes)g.selected&&b.push(g);return b}),d=t.computed(()=>{const b=[];for(const g of e.edges)g.selected&&b.push(g);return b}),p=t.computed(()=>[...f.value,...d.value]),m=t.computed(()=>{const b=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&b.push(g);return b}),y=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:u,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:d,getNodesInitialized:m,areNodesInitialized:y}}class Mn{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)??Mn.instance;return Mn.instance=r??new Mn,o&&(o.config.globalProperties.$vueFlowStorage=Mn.instance),Mn.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=_p(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const y=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[y]=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}),u=vI(i,s,c),f=nI(i,s,c);f.setState({...i,...o});const d={...a,...u,...f,...N1(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,d),d}getId(){return`vue-flow-${this.currentId++}`}}function Ge(e){const n=Mn.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(up,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(),u=n.create(c,i);s=u,(o??t.effectScope(!0)).run(()=>{t.watch(u.applyDefault,(d,p,m)=>{const y=g=>{u.applyNodeChanges(g)},b=g=>{u.applyEdgeChanges(g)};d?(u.onNodesChange(y),u.onEdgesChange(b)):(u.hooks.value.nodesChange.off(y),u.hooks.value.edgesChange.off(b)),m(()=>{u.hooks.value.nodesChange.off(y),u.hooks.value.edgesChange.off(b)})},{immediate:!0}),ei(()=>{if(s){const d=n.get(s.id);d?d.$destroy():Ai(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(up,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new lt(tt.USEVUEFLOW_OPTIONS))}return s}function xI(e){const{emits:n,dimensions:o}=Ge();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Ni(i);(l.width===0||l.height===0)&&n.error(new lt(tt.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 AI={name:"UserSelection",compatConfig:{MODE:3}},II=t.defineComponent({...AI,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))}}),TI=["tabIndex"],PI={name:"NodesSelection",compatConfig:{MODE:3}},OI=t.defineComponent({...PI,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Ge(),s=yp(),c=t.ref(null),u=mp({el:c,onStart(y){n.selectionDragStart(y)},onDrag(y){n.selectionDrag(y)},onStop(y){n.selectionDragStop(y)}});t.onMounted(()=>{var y;a.value||(y=c.value)==null||y.focus({preventScroll:!0})});const f=t.computed(()=>jf(r.value)),d=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(y){n.selectionContextMenu({event:y,nodes:r.value})}function m(y){a||ho[y.key]&&(y.preventDefault(),s({x:ho[y.key].x,y:ho[y.key].y},y.shiftKey))}return(y,b)=>!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(u)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(d.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,TI)],6)):t.createCommentVNode("",!0)}});function $I(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const BI={name:"Pane",compatConfig:{MODE:3}},VI=t.defineComponent({...BI,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:u,getSelectedEdges:f,getSelectedNodes:d,removeNodes:p,removeEdges:m,selectionMode:y,deleteKeyCode:b,multiSelectionKeyCode:g,multiSelectionActive:h,edgeLookup:w,nodeLookup:_,connectionLookup:k,defaultEdgeOptions:E,connectionStartHandle:C}=Ge(),N=t.ref(null),T=t.ref(new Set),D=t.ref(new Set),G=t.ref(),j=t.toRef(()=>c.value&&(e.isSelecting||a.value)),S=t.toRef(()=>C.value!==null);let ee=!1,x=!1;const q=dr(b,{actInsideInputWithModifier:!1}),U=dr(g);t.watch(q,H=>{H&&(p(d.value),m(f.value),u.value=!1)}),t.watch(U,H=>{h.value=H});function Q(H,te){return oe=>{oe.target===te&&(H==null||H(oe))}}function R(H){if(ee||S.value){ee=!1;return}i.paneClick(H),l(),u.value=!1}function P(H){H.preventDefault(),H.stopPropagation(),i.paneContextMenu(H)}function v(H){i.paneScroll(H)}function I(H){var te,oe,se;if(G.value=(te=n.value)==null?void 0:te.getBoundingClientRect(),!c.value||!e.isSelecting||H.button!==0||H.target!==N.value||!G.value)return;(se=(oe=H.target)==null?void 0:oe.setPointerCapture)==null||se.call(oe,H.pointerId);const{x:ye,y:X}=$I(H,G.value);x=!0,ee=!1,l(),s.value={width:0,height:0,startX:ye,startY:X,x:ye,y:X},i.selectionStart(H)}function A(H){var te;if(!G.value||!s.value)return;ee=!0;const{x:oe,y:se}=Gt(H,G.value),{startX:ye=0,startY:X=0}=s.value,ie={startX:ye,startY:X,x:oe<ye?oe:ye,y:se<X?se:X,width:Math.abs(oe-ye),height:Math.abs(se-X)},ae=T.value,ce=D.value;T.value=new Set(Gf(o.value,ie,r.value,y.value===Vl.Partial,!0).map(O=>O.id)),D.value=new Set;const de=((te=E.value)==null?void 0:te.selectable)??!0;for(const O of T.value){const B=k.value.get(O);if(B)for(const{edgeId:F}of B.values()){const V=w.value.get(F);V&&(V.selectable??de)&&D.value.add(F)}}if(!dp(ae,T.value)){const O=gn(_.value,T.value,!0);i.nodesChange(O)}if(!dp(ce,D.value)){const O=gn(w.value,D.value);i.edgesChange(O)}s.value=ie,a.value=!0,u.value=!1}function W(H){var te;H.button!==0||!x||((te=H.target)==null||te.releasePointerCapture(H.pointerId),!a.value&&s.value&&H.target===N.value&&R(H),a.value=!1,s.value=null,u.value=T.value.size>0,i.selectionEnd(H),e.selectionKeyPressed&&(ee=!1),x=!1)}return(H,te)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:N,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:H.isSelecting}]),onClick:te[0]||(te[0]=oe=>j.value?void 0:Q(R,N.value)(oe)),onContextmenu:te[1]||(te[1]=oe=>Q(P,N.value)(oe)),onWheelPassive:te[2]||(te[2]=oe=>Q(v,N.value)(oe)),onPointerenter:te[3]||(te[3]=oe=>j.value?void 0:t.unref(i).paneMouseEnter(oe)),onPointerdown:te[4]||(te[4]=oe=>j.value?I(oe):t.unref(i).paneMouseMove(oe)),onPointermove:te[5]||(te[5]=oe=>j.value?A(oe):t.unref(i).paneMouseMove(oe)),onPointerup:te[6]||(te[6]=oe=>j.value?W(oe):void 0),onPointerleave:te[7]||(te[7]=oe=>t.unref(i).paneMouseLeave(oe))},[t.renderSlot(H.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(II,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(u)&&t.unref(d).length?(t.openBlock(),t.createBlock(OI,{key:1})):t.createCommentVNode("",!0)],34))}}),RI={name:"Transform",compatConfig:{MODE:3}},DI=t.defineComponent({...RI,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Ge(),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))}}),MI={name:"Viewport",compatConfig:{MODE:3}},LI=t.defineComponent({...MI,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:u,panOnScrollSpeed:f,panOnDrag:d,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:y,preventScrolling:b,noWheelClassName:g,noPanClassName:h,emits:w,connectionStartHandle:_,userSelectionActive:k,paneDragging:E,d3Zoom:C,d3Selection:N,d3ZoomHandler:T,viewport:D,viewportRef:G,paneClickDistance:j}=Ge();xI(G);const S=t.shallowRef(!1),ee=t.shallowRef(!1);let x=null,q=!1,U=0,Q={x:0,y:0,zoom:0};const R=dr(s),P=dr(l),v=dr(a),I=t.toRef(()=>(!P.value||P.value&&l.value===!0)&&(R.value||d.value)),A=t.toRef(()=>R.value||c.value),W=t.toRef(()=>P.value||l.value===!0&&I.value!==!0);t.onMounted(()=>{if(!G.value){Ai("Viewport element is missing");return}const X=G.value,ie=X.getBoundingClientRect(),ae=sA().clickDistance(j.value).scaleExtent([n.value,o.value]).translateExtent(i.value),ce=$t(X).call(ae),de=ce.on("wheel.zoom"),O=go.translate(r.value.x??0,r.value.y??0).scale(Rn(r.value.zoom??1,n.value,o.value)),B=[[0,0],[ie.width,ie.height]],F=ae.constrain()(O,B,i.value);ae.transform(ce,F),ae.wheelDelta(te),C.value=ae,N.value=ce,T.value=de,D.value={x:F.x,y:F.y,zoom:F.k},ae.on("start",V=>{var Z;if(!V.sourceEvent)return null;U=V.sourceEvent.button,S.value=!0;const K=se(V.transform);((Z=V.sourceEvent)==null?void 0:Z.type)==="mousedown"&&(E.value=!0),Q=K,w.viewportChangeStart(K),w.moveStart({event:V,flowTransform:K})}),ae.on("end",V=>{if(!V.sourceEvent)return null;if(S.value=!1,E.value=!1,H(I.value,U??0)&&!q&&w.paneContextMenu(V.sourceEvent),q=!1,oe(Q,V.transform)){const Z=se(V.transform);Q=Z,w.viewportChangeEnd(Z),w.moveEnd({event:V,flowTransform:Z})}}),ae.filter(V=>{var Z;const K=v.value||y.value,re=m.value&&V.ctrlKey,L=V.button;if(L===1&&V.type==="mousedown"&&(ye(V,"vue-flow__node")||ye(V,"vue-flow__edge")))return!0;if(!I.value&&!K&&!A.value&&!p.value&&!m.value||k.value||!p.value&&V.type==="dblclick"||ye(V,g.value)&&V.type==="wheel"||ye(V,h.value)&&(V.type!=="wheel"||A.value&&V.type==="wheel"&&!v.value)||!m.value&&V.ctrlKey&&V.type==="wheel"||!K&&!A.value&&!re&&V.type==="wheel")return!1;if(!m&&V.type==="touchstart"&&((Z=V.touches)==null?void 0:Z.length)>1)return V.preventDefault(),!1;if(!I.value&&(V.type==="mousedown"||V.type==="touchstart")||l.value===!0&&Array.isArray(d.value)&&d.value.includes(0)&&L===0||Array.isArray(d.value)&&!d.value.includes(L)&&(V.type==="mousedown"||V.type==="touchstart"))return!1;const $=Array.isArray(d.value)&&d.value.includes(L)||l.value===!0&&Array.isArray(d.value)&&!d.value.includes(0)||!L||L<=1;return(!V.ctrlKey||R.value||V.type==="wheel")&&$}),t.watch([k,I],()=>{k.value&&!S.value?ae.on("zoom",null):k.value||ae.on("zoom",V=>{D.value={x:V.transform.x,y:V.transform.y,zoom:V.transform.k};const Z=se(V.transform);q=H(I.value,U??0),w.viewportChange(Z),w.move({event:V,flowTransform:Z})})},{immediate:!0}),t.watch([k,A,u,v,m,b,g],()=>{A.value&&!v.value&&!k.value?ce.on("wheel.zoom",V=>{if(ye(V,g.value))return!1;const Z=v.value||y.value,K=m.value&&V.ctrlKey;if(!(!b.value||A.value||Z||K))return!1;V.preventDefault(),V.stopImmediatePropagation();const L=ce.property("__zoom").k||1,$=vi();if(!R.value&&V.ctrlKey&&m.value&&$){const _e=Ft(V),fe=te(V),we=L*2**fe;ae.scaleTo(ce,we,_e,V);return}const z=V.deltaMode===1?20:1;let M=u.value===cr.Vertical?0:V.deltaX*z,ne=u.value===cr.Horizontal?0:V.deltaY*z;!$&&V.shiftKey&&u.value!==cr.Vertical&&!M&&ne&&(M=ne,ne=0),ae.translateBy(ce,-(M/L)*f.value,-(ne/L)*f.value);const ue=se(ce.property("__zoom"));x&&clearTimeout(x),ee.value?(w.move({event:V,flowTransform:ue}),w.viewportChange(ue),x=setTimeout(()=>{w.moveEnd({event:V,flowTransform:ue}),w.viewportChangeEnd(ue),ee.value=!1},150)):(ee.value=!0,w.moveStart({event:V,flowTransform:ue}),w.viewportChangeStart(ue))},{passive:!1}):typeof de<"u"&&ce.on("wheel.zoom",function(V,Z){const K=!b.value&&V.type==="wheel"&&!V.ctrlKey,re=v.value||y.value,L=m.value&&V.ctrlKey;if(!re&&!c.value&&!L&&V.type==="wheel"||K||ye(V,g.value))return null;V.preventDefault(),de.call(this,V,Z)},{passive:!1})},{immediate:!0})});function H(X,ie){return ie===2&&Array.isArray(X)&&X.includes(2)}function te(X){const ie=X.ctrlKey&&vi()?10:1;return-X.deltaY*(X.deltaMode===1?.05:X.deltaMode?1:.002)*ie}function oe(X,ie){return X.x!==ie.x&&!Number.isNaN(ie.x)||X.y!==ie.y&&!Number.isNaN(ie.y)||X.zoom!==ie.k&&!Number.isNaN(ie.k)}function se(X){return{x:X.x,y:X.y,zoom:X.k}}function ye(X,ie){return X.target.closest(`.${ie}`)}return(X,ie)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:G,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(VI,{"is-selecting":W.value,"selection-key-pressed":t.unref(P),class:t.normalizeClass({connecting:!!t.unref(_),dragging:t.unref(E),draggable:t.unref(d)===!0||Array.isArray(t.unref(d))&&t.unref(d).includes(0)})},{default:t.withCtx(()=>[t.createVNode(DI,null,{default:t.withCtx(()=>[t.renderSlot(X.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),FI=["id"],UI=["id"],KI=["id"],jI={name:"A11yDescriptions",compatConfig:{MODE:3}},GI=t.defineComponent({...jI,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Ge();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Bf)}-${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,FI),t.createElementVNode("div",{id:`${t.unref(Vf)}-${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,UI),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(mA)}-${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,KI))],64))}});function qI(){const e=Ge();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function zI(e,n,o){return o===Ee.Left?e-n:o===Ee.Right?e+n:e}function HI(e,n,o){return o===Ee.Top?e-n:o===Ee.Bottom?e+n:e}const Xl=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:zI(n,e,r),cy:HI(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};Xl.props=["radius","centerX","centerY","position","type"],Xl.compatConfig={MODE:3};const Ap=Xl,YI=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:u,findEdge:f,findNode:d,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:y,elementsSelectable:b,edgesUpdatable:g,edgesFocusable:h,hooks:w}=Ge(),_=t.computed(()=>f(e.id)),{emit:k,on:E}=GA(_.value,a),C=t.inject(Ii),N=t.getCurrentInstance(),T=t.ref(!1),D=t.ref(!1),G=t.ref(""),j=t.ref(null),S=t.ref("source"),ee=t.ref(null),x=t.toRef(()=>typeof _.value.selectable>"u"?b.value:_.value.selectable),q=t.toRef(()=>typeof _.value.updatable>"u"?g.value:_.value.updatable),U=t.toRef(()=>typeof _.value.focusable>"u"?h.value:_.value.focusable);t.provide(UA,e.id),t.provide(KA,ee);const Q=t.computed(()=>_.value.class instanceof Function?_.value.class(_.value):_.value.class),R=t.computed(()=>_.value.style instanceof Function?_.value.style(_.value):_.value.style),P=t.computed(()=>{const B=_.value.type||"default",F=C==null?void 0:C[`edge-${B}`];if(F)return F;let V=_.value.template??c.value[B];if(typeof V=="string"&&N){const Z=Object.keys(N.appContext.components);Z&&Z.includes(B)&&(V=t.resolveComponent(B,!1))}return V&&typeof V!="string"?V:(a.error(new lt(tt.EDGE_TYPE_MISSING,V)),!1)}),{handlePointerDown:v}=gp({nodeId:G,handleId:j,type:S,isValidConnection:p,edgeUpdaterType:S,onEdgeUpdate:W,onEdgeUpdateEnd:H});return()=>{const B=d(_.value.source),F=d(_.value.target),V="pathOptions"in _.value?_.value.pathOptions:{};if(!B&&!F)return a.error(new lt(tt.EDGE_SOURCE_TARGET_MISSING,_.value.id,_.value.source,_.value.target)),null;if(!B)return a.error(new lt(tt.EDGE_SOURCE_MISSING,_.value.id,_.value.source)),null;if(!F)return a.error(new lt(tt.EDGE_TARGET_MISSING,_.value.id,_.value.target)),null;if(!_.value||_.value.hidden||B.hidden||F.hidden)return null;let Z;r.value===fn.Strict?Z=B.handleBounds.source:Z=[...B.handleBounds.source||[],...B.handleBounds.target||[]];const K=np(Z,_.value.sourceHandle);let re;r.value===fn.Strict?re=F.handleBounds.target:re=[...F.handleBounds.target||[],...F.handleBounds.source||[]];const L=np(re,_.value.targetHandle),$=(K==null?void 0:K.position)||Ee.Bottom,z=(L==null?void 0:L.position)||Ee.Top,{x:M,y:ne}=yo(B,K,$),{x:ue,y:_e}=yo(F,L,z);return _.value.sourceX=M,_.value.sourceY=ne,_.value.targetX=ue,_.value.targetY=_e,t.h("g",{ref:ee,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${P.value===!1?"default":_.value.type||"default"}`,s.value,Q.value,{updating:T.value,selected:_.value.selected,animated:_.value.animated,inactive:!x.value&&!w.value.edgeClick.hasListeners()}],tabIndex:U.value?0:void 0,"aria-label":_.value.ariaLabel===null?void 0:_.value.ariaLabel??`Edge from ${_.value.source} to ${_.value.target}`,"aria-describedby":U.value?`${Vf}-${n}`:void 0,"aria-roledescription":"edge",role:U.value?"group":"img",..._.value.domAttributes,onClick:oe,onContextmenu:se,onDblclick:ye,onMouseenter:X,onMousemove:ie,onMouseleave:ae,onKeyDown:U.value?O:void 0},[D.value?null:t.h(P.value===!1?c.value.default:P.value,{id:e.id,sourceNode:B,targetNode:F,source:_.value.source,target:_.value.target,type:_.value.type,updatable:q.value,selected:_.value.selected,animated:_.value.animated,label:_.value.label,labelStyle:_.value.labelStyle,labelShowBg:_.value.labelShowBg,labelBgStyle:_.value.labelBgStyle,labelBgPadding:_.value.labelBgPadding,labelBgBorderRadius:_.value.labelBgBorderRadius,data:_.value.data,events:{..._.value.events,...E},style:R.value,markerStart:`url('#${pr(_.value.markerStart,n)}')`,markerEnd:`url('#${pr(_.value.markerEnd,n)}')`,sourcePosition:$,targetPosition:z,sourceX:M,sourceY:ne,targetX:ue,targetY:_e,sourceHandleId:_.value.sourceHandle,targetHandleId:_.value.targetHandle,interactionWidth:_.value.interactionWidth,...V}),[q.value==="source"||q.value===!0?[t.h("g",{onMousedown:ce,onMouseenter:I,onMouseout:A},t.h(Ap,{position:$,centerX:M,centerY:ne,radius:i.value,type:"source","data-type":"source"}))]:null,q.value==="target"||q.value===!0?[t.h("g",{onMousedown:de,onMouseenter:I,onMouseout:A},t.h(Ap,{position:z,centerX:ue,centerY:_e,radius:i.value,type:"target","data-type":"target"}))]:null]])};function I(){T.value=!0}function A(){T.value=!1}function W(B,F){k.update({event:B,edge:_.value,connection:F})}function H(B){k.updateEnd({event:B,edge:_.value}),D.value=!1}function te(B,F){B.button===0&&(D.value=!0,G.value=F?_.value.target:_.value.source,j.value=(F?_.value.targetHandle:_.value.sourceHandle)??null,S.value=F?"target":"source",k.updateStart({event:B,edge:_.value}),v(B))}function oe(B){var F;const V={event:B,edge:_.value};x.value&&(l.value=!1,_.value.selected&&m.value?(u([_.value]),(F=ee.value)==null||F.blur()):o([_.value])),k.click(V)}function se(B){k.contextMenu({event:B,edge:_.value})}function ye(B){k.doubleClick({event:B,edge:_.value})}function X(B){k.mouseEnter({event:B,edge:_.value})}function ie(B){k.mouseMove({event:B,edge:_.value})}function ae(B){k.mouseLeave({event:B,edge:_.value})}function ce(B){te(B,!0)}function de(B){te(B,!1)}function O(B){var F;!y.value&&Rf.includes(B.key)&&x.value&&(B.key==="Escape"?((F=ee.value)==null||F.blur(),u([f(e.id)])):o([f(e.id)]))}}}),WI=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:u,viewport:f,findNode:d}=Ge(),p=(e=t.inject(Ii))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return d((w=r.value)==null?void 0:w.nodeId)}),y=t.computed(()=>{var w;return d((w=i.value)==null?void 0:w.nodeId)??null}),b=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),g=t.computed(()=>c.value.markerStart?`url(#${pr(c.value.markerStart,n)})`:""),h=t.computed(()=>c.value.markerEnd?`url(#${pr(c.value.markerEnd,n)})`:"");return()=>{var w,_,k;if(!m.value||!r.value)return null;const E=r.value.id,C=r.value.type,N=m.value.handleBounds;let T=(N==null?void 0:N[C])??[];if(o.value===fn.Loose){const R=(N==null?void 0:N[C==="source"?"target":"source"])??[];T=[...T,...R]}if(!T)return null;const D=(E?T.find(R=>R.id===E):T[0])??null,G=(D==null?void 0:D.position)??Ee.Top,{x:j,y:S}=yo(m.value,D,G);let ee=null;y.value&&(o.value===fn.Strict?ee=((w=y.value.handleBounds[C==="source"?"target":"source"])==null?void 0:w.find(R=>{var P;return R.id===((P=i.value)==null?void 0:P.id)}))||null:ee=((_=[...y.value.handleBounds.source??[],...y.value.handleBounds.target??[]])==null?void 0:_.find(R=>{var P;return R.id===((P=i.value)==null?void 0:P.id)}))||null);const x=((k=i.value)==null?void 0:k.position)??(G?jl[G]:null);if(!G||!x)return null;const q=l.value??c.value.type??Vn.Bezier;let U="";const Q={sourceX:j,sourceY:S,sourcePosition:G,targetX:b.value.x,targetY:b.value.y,targetPosition:x};return q===Vn.Bezier?[U]=Cp(Q):q===Vn.Step?[U]=Wl({...Q,borderRadius:0}):q===Vn.SmoothStep?[U]=Wl(Q):q===Vn.SimpleBezier?[U]=Np(Q):U=`M${j},${S} ${b.value.x},${b.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:j,sourceY:S,sourcePosition:G,targetX:b.value.x,targetY:b.value.y,targetPosition:x,sourceNode:m.value,sourceHandle:D,targetNode:y.value,targetHandle:ee,markerEnd:h.value,markerStart:g.value,connectionStatus:u.value}):t.h("path",{d:U,class:[c.value.class,u,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":h.value,"marker-start":g.value})))}}}),XI=["id","markerWidth","markerHeight","markerUnits","orient"],ZI={name:"MarkerType",compatConfig:{MODE:3}},JI=t.defineComponent({...ZI,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(sr).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(sr).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,XI))}}),QI={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},eT={name:"MarkerDefinitions",compatConfig:{MODE:3}},tT=t.defineComponent({...eT,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Ge(),a=t.computed(()=>{const l=new Set,s=[],c=u=>{if(u){const f=pr(u,n);l.has(f)||(typeof u=="object"?s.push({...u,id:f,color:u.color||i.value}):s.push({id:f,color:i.value,type:u}),l.add(f))}};for(const u of[r.value.markerEnd,r.value.markerStart])c(u);for(const u of o.value)for(const f of[u.markerStart,u.markerEnd])c(f);return s.sort((u,f)=>u.id.localeCompare(f.id))});return(l,s)=>(t.openBlock(),t.createElementBlock("svg",QI,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(JI,{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))])]))}}),nT={name:"Edges",compatConfig:{MODE:3}},oT=t.defineComponent({...nT,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Ge();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(tT),(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(AA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(YI),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(WI))],64))}}),rT=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:u,onUpdateNodeInternals:f,getNodeTypes:d,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:y,ariaLiveMessage:b,snapToGrid:g,snapGrid:h,nodeDragThreshold:w,nodesDraggable:_,elementsSelectable:k,nodesConnectable:E,nodesFocusable:C,hooks:N}=Ge(),T=t.ref(null);t.provide(pp,T),t.provide(fp,e.id);const D=t.inject(Ii),G=t.getCurrentInstance(),j=yp(),{node:S,parentNode:ee}=hp(e.id),{emit:x,on:q}=YA(S,l),U=t.toRef(()=>typeof S.draggable>"u"?_.value:S.draggable),Q=t.toRef(()=>typeof S.selectable>"u"?k.value:S.selectable),R=t.toRef(()=>typeof S.connectable>"u"?E.value:S.connectable),P=t.toRef(()=>typeof S.focusable>"u"?C.value:S.focusable),v=t.computed(()=>Q.value||U.value||N.value.nodeClick.hasListeners()||N.value.nodeDoubleClick.hasListeners()||N.value.nodeMouseEnter.hasListeners()||N.value.nodeMouseMove.hasListeners()||N.value.nodeMouseLeave.hasListeners()),I=t.toRef(()=>!!S.dimensions.width&&!!S.dimensions.height),A=t.computed(()=>{const F=S.type||"default",V=D==null?void 0:D[`node-${F}`];if(V)return V;let Z=S.template||d.value[F];if(typeof Z=="string"&&G){const K=Object.keys(G.appContext.components);K&&K.includes(F)&&(Z=t.resolveComponent(F,!1))}return Z&&typeof Z!="string"?Z:(l.error(new lt(tt.NODE_TYPE_MISSING,Z)),!1)}),W=mp({id:e.id,el:T,disabled:()=>!U.value,selectable:Q,dragHandle:()=>S.dragHandle,onStart(F){x.dragStart(F)},onDrag(F){x.drag(F)},onStop(F){x.dragStop(F)},onClick(F){O(F)}}),H=t.computed(()=>S.class instanceof Function?S.class(S):S.class),te=t.computed(()=>{const F=(S.style instanceof Function?S.style(S):S.style)||{},V=S.width instanceof Function?S.width(S):S.width,Z=S.height instanceof Function?S.height(S):S.height;return!F.width&&V&&(F.width=typeof V=="string"?V:`${V}px`),!F.height&&Z&&(F.height=typeof Z=="string"?Z:`${Z}px`),F}),oe=t.toRef(()=>Number(S.zIndex??te.value.zIndex??0));return f(F=>{(F.includes(e.id)||!F.length)&&ye()}),t.onMounted(()=>{t.watch(()=>S.hidden,(F=!1,V,Z)=>{!F&&T.value&&(e.resizeObserver.observe(T.value),Z(()=>{T.value&&e.resizeObserver.unobserve(T.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>S.type,()=>S.sourcePosition,()=>S.targetPosition],()=>{t.nextTick(()=>{u([{id:e.id,nodeElement:T.value,forceUpdate:!0}])})}),t.watch([()=>S.position.x,()=>S.position.y,()=>{var F;return(F=ee.value)==null?void 0:F.computedPosition.x},()=>{var F;return(F=ee.value)==null?void 0:F.computedPosition.y},()=>{var F;return(F=ee.value)==null?void 0:F.computedPosition.z},oe,()=>S.selected,()=>S.dimensions.height,()=>S.dimensions.width,()=>{var F;return(F=ee.value)==null?void 0:F.dimensions.height},()=>{var F;return(F=ee.value)==null?void 0:F.dimensions.width}],([F,V,Z,K,re,L])=>{const $={x:F,y:V,z:L+(m.value&&S.selected?1e3:0)};typeof Z<"u"&&typeof K<"u"?S.computedPosition=CA({x:Z,y:K,z:re},$):S.computedPosition=$},{flush:"post",immediate:!0}),t.watch([()=>S.extent,p],([F,V],[Z,K])=>{(F!==Z||V!==K)&&se()}),S.extent==="parent"||typeof S.extent=="object"&&"range"in S.extent&&S.extent.range==="parent"?ml(()=>I).toBe(!0).then(se):se(),()=>S.hidden?null:t.h("div",{ref:T,"data-id":S.id,class:["vue-flow__node",`vue-flow__node-${A.value===!1?"default":S.type||"default"}`,{[o.value]:U.value,dragging:W==null?void 0:W.value,draggable:U.value,selected:S.selected,selectable:Q.value,parent:S.isParent},H.value],style:{visibility:I.value?"visible":"hidden",zIndex:S.computedPosition.z??oe.value,transform:`translate(${S.computedPosition.x}px,${S.computedPosition.y}px)`,pointerEvents:v.value?"all":"none",...te.value},tabIndex:P.value?0:void 0,role:P.value?"group":void 0,"aria-describedby":y.value?void 0:`${Bf}-${n}`,"aria-label":S.ariaLabel,"aria-roledescription":"node",...S.domAttributes,onMouseenter:X,onMousemove:ie,onMouseleave:ae,onContextmenu:ce,onClick:O,onDblclick:de,onKeydown:B},[t.h(A.value===!1?d.value.default:A.value,{id:S.id,type:S.type,data:S.data,events:{...S.events,...q},selected:S.selected,resizing:S.resizing,dragging:W.value,connectable:R.value,position:S.computedPosition,dimensions:S.dimensions,isValidTargetPos:S.isValidTargetPos,isValidSourcePos:S.isValidSourcePos,parent:S.parentNode,parentNodeId:S.parentNode,zIndex:S.computedPosition.z??oe.value,targetPosition:S.targetPosition,sourcePosition:S.sourcePosition,label:S.label,dragHandle:S.dragHandle,onUpdateNodeInternals:ye})]);function se(){const F=S.computedPosition,{computedPosition:V,position:Z}=Fl(S,g.value?xi(F,h.value):F,l.error,p.value,ee.value);(S.computedPosition.x!==V.x||S.computedPosition.y!==V.y)&&(S.computedPosition={...S.computedPosition,...V}),(S.position.x!==Z.x||S.position.y!==Z.y)&&(S.position=Z)}function ye(){T.value&&u([{id:e.id,nodeElement:T.value,forceUpdate:!0}])}function X(F){W!=null&&W.value||x.mouseEnter({event:F,node:S})}function ie(F){W!=null&&W.value||x.mouseMove({event:F,node:S})}function ae(F){W!=null&&W.value||x.mouseLeave({event:F,node:S})}function ce(F){return x.contextMenu({event:F,node:S})}function de(F){return x.doubleClick({event:F,node:S})}function O(F){Q.value&&(!r.value||!U.value||w.value>0)&&Gl(S,a.value,c,s,i,!1,T.value),x.click({event:F,node:S})}function B(F){if(!(Rl(F)||y.value))if(Rf.includes(F.key)&&Q.value){const V=F.key==="Escape";Gl(S,a.value,c,s,i,V,T.value)}else U.value&&S.selected&&ho[F.key]&&(F.preventDefault(),b.value=`Moved selected node ${F.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~S.position.x}, y: ${~~S.position.y}`,j({x:ho[F.key].x,y:ho[F.key].y},F.shiftKey))}}});function iT(e={includeHiddenNodes:!1}){const{nodes:n}=Ge();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 aT={class:"vue-flow__nodes vue-flow__container"},lT={name:"Nodes",compatConfig:{MODE:3}},sT=t.defineComponent({...lT,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Ge(),i=iT(),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",aT,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,u,f,d)=>{const p=[c.id];if(d&&d.key===c.id&&t.isMemoSame(d,p))return d;const m=(t.openBlock(),t.createBlock(t.unref(rT),{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 cT(){const{emits:e}=Ge();t.onMounted(()=>{if(ap()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new lt(tt.MISSING_STYLES))}})}const dT=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),uT={name:"VueFlow",compatConfig:{MODE:3}},Ip=t.defineComponent({...uT,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=gl(r,"modelValue",o),l=gl(r,"nodes",o),s=gl(r,"edges",o),c=Ge(r),u=JA({modelValue:a,nodes:l,edges:s},r,c);return eI(o,c.hooks),qI(),cT(),t.provide(Ii,i),t.onUnmounted(()=>{u()}),n(c),(f,d)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(LI,null,{default:t.withCtx(()=>[t.createVNode(oT),dT,t.createVNode(sT),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(GI)],512))}}),fT={name:"Panel",compatConfig:{MODE:3}},pT=t.defineComponent({...fT,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Ge(),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 rn=(e=>(e.Lines="lines",e.Dots="dots",e))(rn||{});const Tp=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]}`})},Pp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};rn.Lines+"",rn.Dots+"";const mT={[rn.Dots]:"#81818a",[rn.Lines]:"#eee"},gT=["id","x","y","width","height","patternTransform"],hT={key:2,height:"100",width:"100"},yT=["fill"],_T=["x","y","fill"],bT={name:"Background",compatConfig:{MODE:3}},wT=t.defineComponent({...bT,props:{id:{},variant:{default:()=>rn.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}=Ge(),r=t.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],u=[s*l||1,c*l||1],f=e.size*l,[d,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[d*l||1+u[0]/2,p*l||1+u[1]/2];return{scaledGap:u,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||mT[e.variant||rn.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(rn).Lines?(t.openBlock(),t.createBlock(t.unref(Tp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(rn).Dots?(t.openBlock(),t.createBlock(t.unref(Pp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",hT,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,yT)])):t.createCommentVNode("",!0)])],8,gT)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,_T),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),kT={name:"ControlButton",compatConfig:{MODE:3}},CT=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},ET={class:"vue-flow__controls-button"};function NT(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",ET,[t.renderSlot(e.$slots,"default")])}const mr=CT(kT,[["render",NT]]),ST={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 xT(e,n){return t.openBlock(),t.createElementBlock("svg",ST,vT)}const AT={render:xT},IT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},TT=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function PT(e,n){return t.openBlock(),t.createElementBlock("svg",IT,TT)}const OT={render:PT},$T={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},BT=[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 VT(e,n){return t.openBlock(),t.createElementBlock("svg",$T,BT)}const RT={render:VT},DT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},MT=[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 LT(e,n){return t.openBlock(),t.createElementBlock("svg",DT,MT)}const FT={render:LT},UT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},KT=[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",UT,KT)}const GT={render:jT},qT={name:"Controls",compatConfig:{MODE:3}},zT=t.defineComponent({...qT,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Of.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:u,minZoom:f,maxZoom:d}=Ge(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>u.value.zoom<=f.value),y=t.toRef(()=>u.value.zoom>=d.value);function b(){l(),n("zoomIn")}function g(){s(),n("zoomOut")}function h(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(_,k)=>(t.openBlock(),t.createBlock(t.unref(pT),{class:"vue-flow__controls",position:_.position},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"top"),_.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(_.$slots,"control-zoom-in",{},()=>[t.createVNode(mr,{class:"vue-flow__controls-zoomin",disabled:y.value,onClick:b},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(AT))))])]),_:3},8,["disabled"])]),t.renderSlot(_.$slots,"control-zoom-out",{},()=>[t.createVNode(mr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(OT))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),_.showFitView?t.renderSlot(_.$slots,"control-fit-view",{key:1},()=>[t.createVNode(mr,{class:"vue-flow__controls-fitview",onClick:h},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(RT))))])]),_:3})]):t.createCommentVNode("",!0),_.showInteractive?t.renderSlot(_.$slots,"control-interactive",{key:2},()=>[_.showInteractive?(t.openBlock(),t.createBlock(mr,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(_.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(GT))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(_.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(FT))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(_.$slots,"default")]),_:3},8,["position"]))}}),HT=["undo","redo","duplicate","cut","copy","paste"],Op=()=>{};function YT(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function WT(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 XT=Je.createSharedComposable(()=>{const e=new Set;Je.useEventListener("keydown",o=>{if(YT(o.target))return;const r=WT(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(!HT.some(i=>typeof o[i]=="function"))return Op;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function $p(e={}){if(typeof window>"u")return Op;const n=XT().subscribe(e);return t.onScopeDispose(n),n}const gr={padding:80,gaps:{nodes:40,edges:80,ranks:40}},ZT=1600,JT=1.2,QT=0,eP=200,Bp=Symbol("confirm-modal"),_o="{key}",Ln={"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}},Ri=Object.keys(Ln).filter(e=>e.includes(_o)).map(e=>e.replace(_o,""));function Zl(e){if(!e||!yr(e))return;const n=Ri.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(_o,"")}function hr(e){if(!e)return null;const n=Ri.find(o=>e.startsWith(o));return n||e}function yr(e){return e?Ri.some(n=>e.startsWith(n)):!1}function Vp(e){return e?yr(e)?hr(e)+_o:e:null}function Jl(e){var o;if(!e)return!1;const n=Vp(e);return n?((o=Ln[n])==null?void 0:o.readable)??!1:!1}function Ql(e){var o;if(!e)return!1;const n=Vp(e);return n?((o=Ln[n])==null?void 0:o.writable)??!1:!1}function tP(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var nP="\0",Fn="\0",Rp="";let oP=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[Fn]={})}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]=Fn,this._children[n]={},this._children[Fn][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=Fn;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!==Fn)return o}}children(n=Fn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===Fn)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=_r(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=rP(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Dp(this._preds[o],n),Dp(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?es(this._isDirected,arguments[0]):_r(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?es(this._isDirected,arguments[0]):_r(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?es(this._isDirected,arguments[0]):_r(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],Mp(this._preds[o],n),Mp(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 Dp(e,n){e[n]?e[n]++:e[n]=1}function Mp(e,n){--e[n]||delete e[n]}function _r(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Rp+a+Rp+(r===void 0?nP:r)}function rP(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 es(e,n){return _r(e,n.v,n.w,n.name)}var ts=oP,iP="2.2.4",aP={Graph:ts,version:iP},lP=ts,sP={write:cP,read:fP};function cP(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:dP(e),edges:uP(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function dP(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 uP(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 fP(e){var n=new lP(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 pP=mP;function mP(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 Lp=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}},gP=Lp,Fp=yP,hP=()=>1;function yP(e,n,o,r){return _P(e,String(n),o||hP,r||function(i){return e.outEdges(i)})}function _P(e,n,o,r){var i={},a=new gP,l,s,c=function(u){var f=u.v!==l?u.v:u.w,d=i[f],p=o(u),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+u+" Weight: "+p);m<d.distance&&(d.distance=m,d.predecessor=l,a.decrease(f,m))};for(e.nodes().forEach(function(u){var f=u===n?0:Number.POSITIVE_INFINITY;i[u]={distance:f},a.add(u,f)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var bP=Fp,wP=kP;function kP(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=bP(e,i,n,o),r},{})}var Up=CP;function CP(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=[],u;do u=o.pop(),r[u].onStack=!1,c.push(u);while(l!==u);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var EP=Up,NP=SP;function SP(e){return EP(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var vP=AP,xP=()=>1;function AP(e,n,o){return IP(e,n||xP,o||function(r){return e.outEdges(r)})}function IP(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(u){var f=c[a],d=l[u],p=c[u],m=f.distance+d.distance;m<p.distance&&(p.distance=m,p.predecessor=d.predecessor)})})}),r}function Kp(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new ns;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 ns;return r}class ns extends Error{constructor(){super(...arguments)}}var jp=Kp;Kp.CycleException=ns;var Gp=jp,TP=PP;function PP(e){try{Gp(e)}catch(n){if(n instanceof Gp.CycleException)return!1;throw n}return!0}var qp=OP;function OP(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?$P:BP,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 $P(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]),zp(n(a[0]),l=>i.push([l,!1])))}}function BP(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),zp(n(a),l=>i.push(l)))}}function zp(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var VP=qp,RP=DP;function DP(e,n){return VP(e,n,"post")}var MP=qp,LP=FP;function FP(e,n){return MP(e,n,"pre")}var UP=ts,KP=Lp,jP=GP;function GP(e,n){var o=new UP,r={},i=new KP,a;function l(c){var u=c.v===a?c.w:c.v,f=i.priority(u);if(f!==void 0){var d=n(c);d<f&&(r[u]=a,i.decrease(u,d))}}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 qP={components:pP,dijkstra:Fp,dijkstraAll:wP,findCycles:NP,floydWarshall:vP,isAcyclic:TP,postorder:RP,preorder:LP,prim:jP,tarjan:Up,topsort:jp},Hp=aP,Rt={Graph:Hp.Graph,json:sP,alg:qP,version:Hp.version};let zP=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return Yp(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&Yp(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,HP)),r=r._prev;return"["+n.join(", ")+"]"}};function Yp(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function HP(e,n){if(e!=="_next"&&e!=="_prev")return n}var YP=zP;let WP=Rt.Graph,XP=YP;var ZP=QP;let JP=()=>1;function QP(e,n){if(e.nodeCount()<=1)return[];let o=tO(e,n||JP);return eO(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function eO(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)os(e,n,o,l);for(;l=i.dequeue();)os(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(os(e,n,o,l,!0));break}}}return r}function os(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,rs(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,u=e.node(c);u.in-=s,rs(n,o,u)}),e.removeNode(r.v),a}function tO(e,n){let o=new WP,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,u=n(s),f=c+u;o.setEdge(s.v,s.w,f),i=Math.max(i,o.node(s.v).out+=u),r=Math.max(r,o.node(s.w).in+=u)});let a=nO(i+r+3).map(()=>new XP),l=r+1;return o.nodes().forEach(s=>{rs(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function rs(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 nO(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let Wp=Rt.Graph;var ot={addBorderNode:uO,addDummyNode:Xp,applyWithChunking:Di,asNonCompoundGraph:rO,buildLayerMatrix:sO,intersectRect:lO,mapValues:_O,maxRank:Jp,normalizeRanks:cO,notime:gO,partition:pO,pick:yO,predecessorWeights:aO,range:em,removeEmptyRanks:dO,simplify:oO,successorWeights:iO,time:mO,uniqueId:Qp,zipObject:is};function Xp(e,n,o,r){for(var i=r;e.hasNode(i);)i=Qp(r);return o.dummy=n,e.setNode(i,o),i}function oO(e){let n=new Wp().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 rO(e){let n=new Wp({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 iO(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 is(e.nodes(),n)}function aO(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 is(e.nodes(),n)}function lO(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,u;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,u=s):(i<0&&(l=-l),c=l,u=l*a/i),{x:o+c,y:r+u}}function sO(e){let n=em(Jp(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 cO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=Di(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function dO(e){let n=e.nodes().map(l=>e.node(l).rank),o=Di(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 uO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),Xp(e,"border",i,n)}function fO(e,n=Zp){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const Zp=65535;function Di(e,n){if(n.length>Zp){const o=fO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function Jp(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return Di(Math.max,o)}function pO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function mO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function gO(e,n){return n()}let hO=0;function Qp(e){var n=++hO;return e+(""+n)}function em(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 yO(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function _O(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 is(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let bO=ZP,wO=ot.uniqueId;var kO={run:CO,undo:NO};function CO(e){(e.graph().acyclicer==="greedy"?bO(e,o(e)):EO(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,wO("rev"))});function o(r){return i=>r.edge(i).weight}}function EO(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 NO(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 SO=ot;var vO={run:xO,undo:IO};function xO(e){e.graph().dummyChains=[],e.edges().forEach(n=>AO(e,n))}function AO(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 u,f,d;for(d=0,++r;r<a;++d,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},u=SO.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,u,{weight:s.weight},l),d===0&&e.graph().dummyChains.push(u),o=u;e.setEdge(o,i,{weight:s.weight},l)}function IO(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:TO}=ot;var Mi={longestPath:PO,slack:OO};function PO(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=TO(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function OO(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var $O=Rt.Graph,Li=Mi.slack,tm=BO;function BO(e){var n=new $O({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;VO(n,e)<r;)i=RO(n,e),a=n.hasNode(i.v)?Li(e,i):-Li(e,i),DO(n,e,a);return n}function VO(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!Li(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function RO(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=Li(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function DO(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var MO=tm,nm=Mi.slack,LO=Mi.longestPath,FO=Rt.alg.preorder,UO=Rt.alg.postorder,KO=ot.simplify,jO=Un;Un.initLowLimValues=ls,Un.initCutValues=as,Un.calcCutValue=om,Un.leaveEdge=im,Un.enterEdge=am,Un.exchangeEdges=lm;function Un(e){e=KO(e),LO(e);var n=MO(e);ls(n),as(n,e);for(var o,r;o=im(n);)r=am(n,e,o),lm(n,e,o,r)}function as(e,n){var o=UO(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>GO(e,n,r))}function GO(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=om(e,n,o)}function om(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 u=c.v===o,f=u?c.w:c.v;if(f!==i){var d=u===a,p=n.edge(c).weight;if(s+=d?p:-p,zO(e,o,f)){var m=e.edge(o,f).cutvalue;s+=d?-m:m}}}),s}function ls(e,n){arguments.length<2&&(n=e.nodes()[0]),rm(e,{},1,n)}function rm(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=rm(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function im(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function am(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 u=n.edges().filter(f=>c===sm(e,e.node(f.v),s)&&c!==sm(e,e.node(f.w),s));return u.reduce((f,d)=>nm(n,d)<nm(n,f)?d:f)}function lm(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),ls(e),as(e,n),qO(e,n)}function qO(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=FO(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 zO(e,n,o){return e.hasEdge(n,o)}function sm(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var HO=Mi,cm=HO.longestPath,YO=tm,WO=jO,XO=ZO;function ZO(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":dm(e);break;case"tight-tree":QO(e);break;case"longest-path":JO(e);break;case"none":break;default:dm(e)}}var JO=cm;function QO(e){cm(e),YO(e)}function dm(e){WO(e)}var e$=t$;function t$(e){let n=o$(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=n$(e,n,i.v,i.w),l=a.path,s=a.lca,c=0,u=l[c],f=!0;for(;o!==i.w;){if(r=e.node(o),f){for(;(u=l[c])!==s&&e.node(u).maxRank<r.rank;)c++;u===s&&(f=!1)}if(!f){for(;c<l.length-1&&e.node(u=l[c+1]).minRank<=r.rank;)c++;u=l[c]}e.setParent(o,u),o=e.successors(o)[0]}})}function n$(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,u;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(u=c,c=r;(c=e.parent(c))!==u;)a.push(c);return{path:i.concat(a.reverse()),lca:u}}function o$(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 Fi=ot;var r$={run:i$,cleanup:s$};function i$(e){let n=Fi.addDummyNode(e,"root",{},"_root"),o=a$(e),r=Object.values(o),i=Fi.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=l$(e)+1;e.children().forEach(s=>um(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function um(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=Fi.addBorderNode(e,"_bt"),u=Fi.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(u,l),f.borderBottom=u,s.forEach(d=>{um(e,n,o,r,i,a,d);let p=e.node(d),m=p.borderTop?p.borderTop:d,y=p.borderBottom?p.borderBottom:d,b=p.borderTop?r:2*r,g=m!==y?1:i-a[l]+1;e.setEdge(c,m,{weight:b,minlen:g,nestingEdge:!0}),e.setEdge(y,u,{weight:b,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function a$(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 l$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function s$(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 c$=ot;var d$=u$;function u$(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)fm(e,"borderLeft","_bl",o,i,a),fm(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function fm(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=c$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var f$={adjust:p$,undo:m$};function p$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&pm(e)}function m$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&g$(e),(n==="lr"||n==="rl")&&(h$(e),pm(e))}function pm(e){e.nodes().forEach(n=>mm(e.node(n))),e.edges().forEach(n=>mm(e.edge(n)))}function mm(e){let n=e.width;e.width=e.height,e.height=n}function g$(e){e.nodes().forEach(n=>ss(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(ss),Object.hasOwn(o,"y")&&ss(o)})}function ss(e){e.y=-e.y}function h$(e){e.nodes().forEach(n=>cs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(cs),Object.hasOwn(o,"x")&&cs(o)})}function cs(e){let n=e.x;e.x=e.y,e.y=n}let gm=ot;var y$=_$;function _$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=gm.applyWithChunking(Math.max,r),a=gm.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[c]=!0;let u=e.node(c);a[u.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,u)=>e.node(c).rank-e.node(u).rank).forEach(l),a}let b$=ot.zipObject;var w$=k$;function k$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=C$(e,n[r-1],n[r]);return o}function C$(e,n,o){let r=b$(o,o.map((u,f)=>f)),i=n.flatMap(u=>e.outEdges(u).map(f=>({pos:r[f.w],weight:e.edge(f).weight})).sort((f,d)=>f.pos-d.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(u=>{let f=u.pos+a;s[f]+=u.weight;let d=0;for(;f>0;)f%2&&(d+=s[f+1]),f=f-1>>1,s[f]+=u.weight;c+=u.weight*d}),c}var E$=N$;function N$(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 S$=ot;var v$=x$;function x$(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 A$(r)}function A$(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&I$(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=>S$.pick(i,["vs","i","barycenter","weight"]))}function I$(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 T$=ot;var P$=O$;function O$(e,n){let o=T$.partition(e,f=>Object.hasOwn(f,"barycenter")),r=o.lhs,i=o.rhs.sort((f,d)=>d.i-f.i),a=[],l=0,s=0,c=0;r.sort($$(!!n)),c=hm(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=hm(a,i,c)});let u={vs:a.flat(!0)};return s&&(u.barycenter=l/s,u.weight=s),u}function hm(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 $$(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let B$=E$,V$=v$,R$=P$;var D$=ym;function ym(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 u=B$(e,i);u.forEach(p=>{if(e.children(p.v).length){let m=ym(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&L$(p,m)}});let f=V$(u,o);M$(f,c);let d=R$(f,r);if(l&&(d.vs=[l,d.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(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function M$(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function L$(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 F$=Rt.Graph,U$=ot;var K$=j$;function j$(e,n,o){let r=G$(e),i=new F$({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 u=c.v===a?c.w:c.v,f=i.edge(u,a),d=f!==void 0?f.weight:0;i.setEdge(u,a,{weight:e.edge(c).weight+d})}),Object.hasOwn(l,"minRank")&&i.setNode(a,{borderLeft:l.borderLeft[n],borderRight:l.borderRight[n]}))}),i}function G$(e){for(var n;e.hasNode(n=U$.uniqueId("_root")););return n}var q$=z$;function z$(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 H$=y$,Y$=w$,W$=D$,X$=K$,Z$=q$,J$=Rt.Graph,Ui=ot;var Q$=_m;function _m(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,_m);return}let o=Ui.maxRank(e),r=bm(e,Ui.range(1,o+1),"inEdges"),i=bm(e,Ui.range(o-1,-1,-1),"outEdges"),a=H$(e);if(wm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,u=0;u<4;++c,++u){eB(c%2?r:i,c%4>=2),a=Ui.buildLayerMatrix(e);let f=Y$(e,a);f<l&&(u=0,s=Object.assign({},a),l=f)}wm(e,s)}function bm(e,n,o){return n.map(function(r){return X$(e,r,o)})}function eB(e,n){let o=new J$;e.forEach(function(r){let i=r.graph().root,a=W$(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),Z$(r,o,a.vs)})}function wm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let tB=Rt.Graph,an=ot;var nB={positionX:pB};function oB(e,n){let o={};function r(i,a){let l=0,s=0,c=i.length,u=a[a.length-1];return a.forEach((f,d)=>{let p=iB(e,f),m=p?e.node(p).order:c;(p||f===u)&&(a.slice(s,d+1).forEach(y=>{e.predecessors(y).forEach(b=>{let g=e.node(b),h=g.order;(h<l||m<h)&&!(g.dummy&&e.node(y).dummy)&&km(o,b,y)})}),s=d+1,l=m)}),a}return n.length&&n.reduce(r),o}function rB(e,n){let o={};function r(a,l,s,c,u){let f;an.range(l,s).forEach(d=>{f=a[d],e.node(f).dummy&&e.predecessors(f).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>u)&&km(o,p,f)})})}function i(a,l){let s=-1,c,u=0;return l.forEach((f,d)=>{if(e.node(f).dummy==="border"){let p=e.predecessors(f);p.length&&(c=e.node(p[0]).order,r(l,u,d,s,c),u=d,s=c)}r(l,u,l.length,c,a.length)}),l}return n.length&&n.reduce(i),o}function iB(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function km(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 aB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function lB(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,u)=>{i[c]=c,a[c]=c,l[c]=u})}),n.forEach(s=>{let c=-1;s.forEach(u=>{let f=r(u);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let d=(f.length-1)/2;for(let p=Math.floor(d),m=Math.ceil(d);p<=m;++p){let y=f[p];a[u]===u&&c<l[y]&&!aB(o,u,y)&&(a[y]=u,a[u]=i[u]=i[y],c=l[y])}}})}),{root:i,align:a}}function sB(e,n,o,r,i){let a={},l=cB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(d,p){let m=l.nodes(),y=m.pop(),b={};for(;y;)b[y]?d(y):(b[y]=!0,m.push(y),m=m.concat(p(y))),y=m.pop()}function u(d){a[d]=l.inEdges(d).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(d){let p=l.outEdges(d).reduce((y,b)=>Math.min(y,a[b.w]-l.edge(b)),Number.POSITIVE_INFINITY),m=e.node(d);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[d]=Math.max(a[d],p))}return c(u,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(d=>a[d]=a[o[d]]),a}function cB(e,n,o,r){let i=new tB,a=e.graph(),l=mB(a.nodesep,a.edgesep,r);return n.forEach(s=>{let c;s.forEach(u=>{let f=o[u];if(i.setNode(f),c){var d=o[c],p=i.edge(d,f);i.setEdge(d,f,Math.max(l(e,u,c),p||0))}c=u})}),i}function dB(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 u=gB(e,s)/2;i=Math.max(c+u,i),a=Math.min(c-u,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function uB(e,n){let o=Object.values(n),r=an.applyWithChunking(Math.min,o),i=an.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let u=Object.values(c),f=r-an.applyWithChunking(Math.min,u);l!=="l"&&(f=i-an.applyWithChunking(Math.max,u)),f&&(e[s]=an.mapValues(c,d=>d+f))})})}function fB(e,n){return an.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 pB(e){let n=an.buildLayerMatrix(e),o=Object.assign(oB(e,n),rB(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(d=>Object.values(d).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),u=lB(e,i,o,c),f=sB(e,i,u.root,u.align,s==="r");s==="r"&&(f=an.mapValues(f,d=>-d)),r[l+s]=f})});let a=dB(e,r);return uB(r,a),fB(r,e.graph().align)}function mB(e,n,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,u;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":u=-l.width/2;break;case"r":u=l.width/2;break}if(u&&(c+=o?u:-u),u=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":u=s.width/2;break;case"r":u=-s.width/2;break}return u&&(c+=o?u:-u),u=0,c}}function gB(e,n){return e.node(n).width}let Cm=ot,hB=nB.positionX;var yB=_B;function _B(e){e=Cm.asNonCompoundGraph(e),bB(e),Object.entries(hB(e)).forEach(([n,o])=>e.node(n).x=o)}function bB(e){let n=Cm.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 Em=kO,Nm=vO,wB=XO,kB=ot.normalizeRanks,CB=e$,EB=ot.removeEmptyRanks,Sm=r$,NB=d$,vm=f$,SB=Q$,vB=yB,It=ot,xB=Rt.Graph;var AB=IB;function IB(e,n){let o=n&&n.debugTiming?It.time:It.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>LB(e));o(" runLayout",()=>TB(r,o,n)),o(" updateInputGraph",()=>PB(e,r))})}function TB(e,n,o){n(" makeSpaceForEdgeLabels",()=>FB(e)),n(" removeSelfEdges",()=>WB(e)),n(" acyclic",()=>Em.run(e)),n(" nestingGraph.run",()=>Sm.run(e)),n(" rank",()=>wB(It.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>UB(e)),n(" removeEmptyRanks",()=>EB(e)),n(" nestingGraph.cleanup",()=>Sm.cleanup(e)),n(" normalizeRanks",()=>kB(e)),n(" assignRankMinMax",()=>KB(e)),n(" removeEdgeLabelProxies",()=>jB(e)),n(" normalize.run",()=>Nm.run(e)),n(" parentDummyChains",()=>CB(e)),n(" addBorderSegments",()=>NB(e)),n(" order",()=>SB(e,o)),n(" insertSelfEdges",()=>XB(e)),n(" adjustCoordinateSystem",()=>vm.adjust(e)),n(" position",()=>vB(e)),n(" positionSelfEdges",()=>ZB(e)),n(" removeBorderNodes",()=>YB(e)),n(" normalize.undo",()=>Nm.undo(e)),n(" fixupEdgeLabelCoords",()=>zB(e)),n(" undoCoordinateSystem",()=>vm.undo(e)),n(" translateGraph",()=>GB(e)),n(" assignNodeIntersects",()=>qB(e)),n(" reversePoints",()=>HB(e)),n(" acyclic.undo",()=>Em.undo(e))}function PB(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 OB=["nodesep","edgesep","ranksep","marginx","marginy"],$B={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},BB=["acyclicer","ranker","rankdir","align"],VB=["width","height","rank"],xm={width:0,height:0},RB=["minlen","weight","width","height","labeloffset"],DB={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},MB=["labelpos"];function LB(e){let n=new xB({multigraph:!0,compound:!0}),o=us(e.graph());return n.setGraph(Object.assign({},$B,ds(o,OB),It.pick(o,BB))),e.nodes().forEach(r=>{let i=us(e.node(r));const a=ds(i,VB);Object.keys(xm).forEach(l=>{a[l]===void 0&&(a[l]=xm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=us(e.edge(r));n.setEdge(r,Object.assign({},DB,ds(i,RB),It.pick(i,MB)))}),n}function FB(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 UB(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};It.addDummyNode(e,"edge-proxy",a,"_ep")}})}function KB(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 jB(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 GB(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(u){let f=u.x,d=u.y,p=u.width,m=u.height;n=Math.min(n,f-p/2),o=Math.max(o,f+p/2),r=Math.min(r,d-m/2),i=Math.max(i,d+m/2)}e.nodes().forEach(u=>c(e.node(u))),e.edges().forEach(u=>{let f=e.edge(u);Object.hasOwn(f,"x")&&c(f)}),n-=l,r-=s,e.nodes().forEach(u=>{let f=e.node(u);f.x-=n,f.y-=r}),e.edges().forEach(u=>{let f=e.edge(u);f.points.forEach(d=>{d.x-=n,d.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 qB(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(It.intersectRect(r,a)),o.points.push(It.intersectRect(i,l))})}function zB(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 HB(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function YB(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 WB(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 XB(e){var n=It.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=>{It.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 ZB(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 ds(e,n){return It.mapValues(It.pick(e,n),Number)}function us(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let JB=ot,QB=Rt.Graph;var eV={debugOrdering:tV};function tV(e){let n=JB.buildLayerMatrix(e),o=new QB({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 nV="1.1.5",oV={graphlib:Rt,layout:AB,debug:eV,util:{time:ot.time,notime:ot.notime},version:nV};const Am=tP(oV);function Im(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(jc,e);return o=>n(o)}function Ki(e,n,o){const r=n?un(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function br(e,n){const o=n(e.source),r=n(e.target);return[Ki(o,e.sourceField,"output"),Ki(r,e.targetField,"input")]}function fs(e,n,o,r,i){const a=i(e),l=i(o);return[Ki(a,n,"output"),Ki(l,r,"input")]}function rV({phase:e,readonly:n,flowId:o}){const{findNode:r}=Ge(o),i=ct(),{state:a,getNodeById:l,moveNode:s,moveGroup:c,setGroupLayout:u,commit:f}=i,d=t.ref(),p=t.computed(()=>new Map(a.value.groups.map(R=>[R.id,R]))),m=t.computed(()=>new Set(a.value.groups.map(R=>R.id))),y=R=>!!R&&m.value.has(R),b=R=>!!R&&R.startsWith("branch:");function g(R){const P=[];for(const v of R.memberIds){const I=l(v);I&&P.push(I)}return P}const h=t.computed(()=>{const R=new Map;for(const P of a.value.groups){if(P.phase!==e||!P.position)continue;const v=g(P).filter(I=>I.phase===e&&!I.hidden);if(v.length)for(const I of v)R.set(I.id,P)}return R}),w=t.computed(()=>{const R=new Map;for(const P of a.value.groups)R.has(P.ownerId)||R.set(P.ownerId,[]),R.get(P.ownerId).push(P);return R});function _(R){let P=0;const v=new Set;let I=h.value.get(R);for(;I&&!v.has(I.id);)P+=1,v.add(I.id),I=h.value.get(I.ownerId);return P}function k(R){return _(R.ownerId)}const E=t.computed(()=>{const R=[];for(const P of a.value.groups){const v=l(P.ownerId);if(!v||v.phase!==e)continue;const I=P.position,A=P.dimensions;if(!I||!A)continue;const W=g(P).filter(te=>te.phase===e&&!te.hidden),H=k(P);R.push({id:P.id,type:"group",position:I,width:A.width,height:A.height,data:{...P,memberIds:W.map(te=>te.id)},draggable:!n,selectable:!1,zIndex:H*Yr+WN})}return R}),C=t.computed(()=>{let R=0;for(const P of a.value.groups){if(P.phase!==e)continue;const v=k(P);v>R&&(R=v)}return R}),N=t.computed(()=>{const R=[];for(const P of a.value.groups){if(P.phase!==e||!P.position||!P.dimensions)continue;const v=l(P.ownerId);if(!v||v.phase!==e||v.hidden||!g(P).filter(H=>H.phase===e&&!H.hidden).length)continue;const A=Math.max(_(v.id),k(P))+C.value+1,W={id:`branch:${P.id}`,source:v.id,target:P.id,sourceHandle:`branch@${P.branch}`,targetHandle:"input",markerEnd:sr.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:v.id,branch:P.branch,groupId:P.id},zIndex:A*Yr+ZN};R.push(W)}return R}),T=new Map,D=new Map;let G;function j(R,P=!0){if(R.phase!==e)return;const v=g(R).filter(se=>se.phase===e&&!se.hidden);if(!v.length)return;let I=Number.POSITIVE_INFINITY,A=Number.POSITIVE_INFINITY,W=Number.NEGATIVE_INFINITY,H=Number.NEGATIVE_INFINITY;for(const se of v){const ye=r(se.id),X=ye==null?void 0:ye.dimensions,ie=(X==null?void 0:X.width)??0,ae=(X==null?void 0:X.height)??0;if(ie<=0||ae<=0)return;const ce=ye==null?void 0:ye.computedPosition,de=(ce==null?void 0:ce.x)??se.position.x,O=(ce==null?void 0:ce.y)??se.position.y;I=Math.min(I,de),A=Math.min(A,O),W=Math.max(W,de+ie),H=Math.max(H,O+ae);const B=w.value.get(se.id)??[];for(const F of B){if(F.phase!==e)continue;const V=T.get(F.id),Z=(V==null?void 0:V.position)??F.position,K=(V==null?void 0:V.dimensions)??F.dimensions;!Z||!K||(I=Math.min(I,Z.x),A=Math.min(A,Z.y),W=Math.max(W,Z.x+K.width),H=Math.max(H,Z.y+K.height))}}if(!Number.isFinite(I)||!Number.isFinite(A)||!Number.isFinite(W)||!Number.isFinite(H))return;const te=W-I+ao*2,oe=H-A+ao*2;return{position:{x:Math.round(I-ao),y:Math.round(A-ao)},dimensions:{width:Math.round(te),height:Math.round(oe)},commit:P}}function S(){if(T.size===0){G=void 0;return}const R=[];let P=!1;T.forEach((v,I)=>{const A=u(I,v,!1);R.push({id:I,changed:A,commit:v.commit}),v.commit&&A&&!P&&(P=!0)}),T.clear(),G=void 0;for(const{id:v,changed:I,commit:A}of R){if(!I)continue;const W=p.value.get(v);if(!W)continue;const H=h.value.get(W.ownerId);H&&D.set(H.id,{commit:A})}if(D.size>0){const v=Array.from(D);D.clear();for(const[I,{commit:A}]of v)x(I,A)}P&&f("*")}function ee(){T.size!==0&&(G||(G=t.nextTick().then(S)))}function x(R,P=!0){const v=p.value.get(R);if(!v)return;const I=j(v,P);I&&(T.set(R,I),ee())}function q(R,P,v,I){const A=p.value.get(R);if(!A)return;if(!A.position){c(R,P,!1),x(R);return}if(v===0&&I===0){c(R,P,!1);return}c(R,P,!1);const W=[R],H=new Set([R]),te=new Set;for(;W.length;){const oe=W.shift(),se=p.value.get(oe);if(!se)continue;const ye=g(se).filter(X=>X.phase===e&&!X.hidden);for(const X of ye){te.has(X.id)||(s(X.id,{x:X.position.x+v,y:X.position.y+I},!1),te.add(X.id));const ie=w.value.get(X.id)??[];for(const ae of ie){if(H.has(ae.id))continue;const ce=p.value.get(ae.id);ce!=null&&ce.position&&c(ae.id,{x:ce.position.x+v,y:ce.position.y+I},!1),H.add(ae.id),W.push(ae.id)}}}}function U(R,P){const v=d.value;if(!v)return!1;if(v===R||P.some(I=>v===I))return!0;for(const I of P){const A=w.value.get(I);if(A!=null&&A.some(W=>W.id===v))return!0}return!1}const Q=new Map;return t.watch(()=>a.value.groups.filter(P=>P.phase===e).map(P=>{const v=P.memberIds.map(I=>{var te,oe;const A=r(I),W=Math.round(((te=A==null?void 0:A.dimensions)==null?void 0:te.width)??0),H=Math.round(((oe=A==null?void 0:A.dimensions)==null?void 0:oe.height)??0);return`${I}:${W}x${H}`});return{id:P.id,memberIds:P.memberIds,signature:v.join(",")}}),R=>{for(const P of R){if(U(P.id,P.memberIds))continue;Q.get(P.id)!==P.signature&&(Q.set(P.id,P.signature),x(P.id))}},{deep:!0,flush:"post"}),{groupMapById:p,groupsByOwner:w,memberGroupMap:h,groupNodes:E,branchEdges:N,isGroupId:y,isBranchEdgeId:b,updateGroupLayout:x,translateGroupTree:q,setDraggingNode:R=>{d.value=R},getNodeDepth:_,maxGroupDepth:C}}function iV(e){t.provide(Bp,e)}function Tm(){return t.inject(Bp,void 0)}function Pm(){const e=Tm();if(!e)throw new Error("Confirm modal not provided");return e}function Om(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}function aV(){const e={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};return[r=>{e.x1=Math.min(e.x1,r.x),e.y1=Math.min(e.y1,r.y),e.x2=Math.max(e.x2,r.x+r.width),e.y2=Math.max(e.y2,r.y+r.height)},()=>{const r={...e};return r.x1>r.x2&&(r.x1=r.x2=0),r.y1>r.y2&&(r.y1=r.y2=0),r}]}const lV={default:qk,hover:Hk,selected:zk};let $m,ps;function ji(e){const n=e.id===$m?"selected":e.id===ps?"hover":"default",o=lV[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[sV,cV]=Je.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=gr.padding,gaps:s=gr.gaps}=r,{nodes:c=gr.gaps.nodes,edges:u=gr.gaps.edges,ranks:f=gr.gaps.ranks}=s,d=Ge(o),p=ct(),m=Tm(),y=Im(),{i18n:{t:b}}=Fe(),{findNode:g,fitView:h,deleteKeyCode:w,onNodeDrag:_,onNodeDragStop:k,onConnect:E,onNodesChange:C,onEdgesChange:N,onEdgeUpdate:T,onEdgeMouseEnter:D,onEdgeMouseLeave:G,getNodes:j,setNodes:S,setEdges:ee,addSelectedNodes:x}=d;w.value=["Delete","Backspace"];const{state:q,commit:U,moveNode:Q,selectNode:R,removeNode:P,getNodeById:v,connectEdge:I,disconnectEdge:A,getInEdgesByNodeId:W,commit:H,reset:te}=p;function oe(le,Ne){const be=v(le.source),he=v(le.target);return!!(be&&he&&be.phase===Ne&&he.phase===Ne)}const se=rV({phase:n,readonly:i,flowId:o}),{groupMapById:ye,groupsByOwner:X,memberGroupMap:ie,groupNodes:ae,branchEdges:ce,isGroupId:de,isBranchEdgeId:O,updateGroupLayout:B,translateGroupTree:F,setDraggingNode:V,getNodeDepth:Z,maxGroupDepth:K}=se,re=t.computed(()=>q.value.nodes.filter(le=>le.phase===n&&!le.hidden).map(le=>{const Ne=ie.value.get(le.id),be=Ne==null?void 0:Ne.position,he=Ne==null?void 0:Ne.dimensions,Se=Ne&&be&&he?{x:le.position.x-be.x,y:le.position.y-be.y}:le.position,ve=Z(le.id),$e=!!(Ne&&be&&he),Me=($e?ve:0)+K.value+1;return{id:le.id,type:"flow",position:Se,data:le,deletable:!Eu(le),parentNode:$e?Ne.id:void 0,zIndex:Me*Yr+JN}})),L=t.computed(()=>q.value.edges.filter(le=>oe(le,n)).filter(le=>{const Ne=v(le.source),be=v(le.target);return!(Ne!=null&&Ne.hidden)&&!(be!=null&&be.hidden)}).map(le=>{const Ne=v(le.source),be=v(le.target);if(Ne){if(!be)throw new Error(`Missing target node "${le.target}" for edge "${le.id}" in phase "${n}"`)}else throw new Error(`Missing source node "${le.source}" for edge "${le.id}" in phase "${n}"`);const he=Math.max(Z(le.source),Z(le.target))+K.value+1;return ji({id:le.id,source:le.source,target:le.target,sourceHandle:le.sourceField?`outputs@${le.sourceField}`:"output",targetHandle:le.targetField?`inputs@${le.targetField}`:"input",markerEnd:sr.ArrowClosed,data:le,updatable:!i,zIndex:he*Yr+XN})})),$=t.computed(()=>[...ce.value,...L.value]);t.watch([re,ae,$],([le,Ne,be])=>{S([...Ne,...le]),ee(be)},{immediate:!0});const z=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function M({source:le,sourceHandle:Ne,target:be,targetHandle:he}){if(!Ne||!he)return;const Se=Om(Ne),ve=Om(he);if((Se==null?void 0:Se.io)==="input"||(ve==null?void 0:ve.io)==="output"||Ne==="output"&&he==="output")return;const $e=W(be);let Me=!1,Ie=!1;const Ue=[],Be=[],ke=(ve==null?void 0:ve.io)==="input"?$e.filter(ze=>!ze.targetField):$e.filter(ze=>!!ze.targetField);ke.length>0&&(Me=!0,ke.forEach(ze=>{Be.push(br(ze,v)),A(ze.id,!1)}));const Oe=(ve==null?void 0:ve.io)==="input"?$e.filter(ze=>ze.targetField===ve.field):$e.filter(ze=>!ze.targetField);if(Oe.length>0){if(Oe.some(qe=>qe.source===le&&qe.target===be&&qe.targetField===(ve==null?void 0:ve.field)&&qe.sourceField===(Se==null?void 0:Se.field)))return;Ie=!0,Oe.forEach(qe=>{Be.push(br(qe,v)),A(qe.id,!1)})}if(!I({source:le,sourceField:Se==null?void 0:Se.field,target:be,targetField:ve==null?void 0:ve.field},!1)){te(),y({message:b("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(Ue.push(fs(le,Se==null?void 0:Se.field,be,ve==null?void 0:ve.field,v)),Me||Ie){if(!m)throw te(),new Error("Expected confirm modal to be provided here when reachable");if(!await m(b(Me?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),Ue,Be)){te();return}}H()}E(M);let ne=!1;const ue=()=>{ne&&(ne=!1,H())};C(le=>{le.filter(he=>he.type==="select").filter(he=>!de(he.id)).sort((he,Se)=>he.selected===Se.selected?0:he.selected?1:-1).forEach(he=>{R(he.selected?he.id:void 0)});let be=!1;le.forEach(he=>{if(he.type==="remove"){if(de(he.id))return;be=!0,P(he.id,!1)}}),be&&!ne&&(ne=!0,queueMicrotask(ue))}),_(({node:le})=>{var ve;if(!le)return;if(de(le.id)){const $e=le.id;V($e);const Me=ye.value.get($e);if(!Me)return;const Ie=Me.position??{...le.position},Ue=le.position.x-Ie.x,Be=le.position.y-Ie.y;F($e,le.position,Ue,Be);const ke=ie.value.get(Me.ownerId);ke&&B(ke.id);return}const Ne=le.id;V(Ne);const be=le.parentNode;let he={...le.position};if(be&&de(be)){const $e=ye.value.get(be);$e!=null&&$e.position&&(he={x:$e.position.x+le.position.x,y:$e.position.y+le.position.y})}Q(Ne,he,!1);const Se=be&&de(be)?be:(ve=ie.value.get(Ne))==null?void 0:ve.id;Se&&B(Se)}),k(({node:le})=>{var ve;if(!le)return;if(de(le.id)){const $e=le.id;V(void 0),U(`drag-group:${$e}`);return}const Ne=le.id;V(void 0);const be=le.parentNode;let he={...le.position};if(be&&de(be)){const $e=ye.value.get(be);$e!=null&&$e.position&&(he={x:$e.position.x+le.position.x,y:$e.position.y+le.position.y})}Q(Ne,he,!1);const Se=be&&de(be)?be:(ve=ie.value.get(Ne))==null?void 0:ve.id;Se&&B(Se),U(`drag-node:${Ne}`)}),N(le=>{le.filter(he=>he.type==="select").sort((he,Se)=>he.selected===Se.selected?0:he.selected?1:-1).forEach(he=>{O(he.id)||($m=he.selected?he.id:void 0,ee(Se=>Se.map(ve=>ve.id!==he.id||!ve.markerEnd?ve:ji({...ve,zIndex:he.selected?1:void 0}))))});let be=!1;le.forEach(he=>{if(he.type==="remove"){if(O(he.id))return;be=!0,A(he.id,!1)}}),be&&!ne&&(ne=!0,queueMicrotask(ue))}),D(({edge:le})=>{O(le.id)||(ps=le.id,ee(Ne=>Ne.map(be=>be.id!==le.id?be:ji(be))))}),G(({edge:le})=>{O(le.id)||(ps=void 0,ee(Ne=>Ne.map(be=>be.id!==le.id?be:ji(be))))}),T(({edge:le,connection:Ne})=>{O(le.id)||(A(le.id,!1),M(Ne))});function _e(le,Ne,be){var ze,qe,jn,Xi,eg;const he=Ne?g(Ne.id):void 0,Se=be?g(be.id):void 0;let ve;if(le.length>0){ve=new Am.graphlib.Graph({multigraph:!0}),ve.setGraph({rankdir:n==="request"?"LR":"RL",nodesep:c,edgesep:u,ranksep:f});const gt=new Set;for(const kt of le){const Yt=g(kt.id);if(!Yt){console.warn(`Cannot find graph node '${kt.id}' in ${n} phase`);continue}gt.add(kt.id),Xr(kt)?ve.setNode(kt.id,kt.dimensions??Yt.dimensions):ve.setNode(kt.id,Yt.dimensions)}for(const kt of $.value)!gt.has(kt.source)||!gt.has(kt.target)||ve.setEdge(kt.source,kt.target,{points:[]});Am.layout(ve)}const[$e,Me]=aV(),Ie=gt=>({x:gt.x-gt.width/2,y:gt.y-gt.height/2,width:gt.width,height:gt.height});if(le.length>0){if(!ve)throw new Error("Expected dagreGraph to be initialized");for(const gt of le){const kt=ve.node(gt.id),Yt=Ie(kt);$e(Yt),Xr(gt)?F(gt.id,Yt,Yt.x+ao,Yt.y+ao):Q(gt.id,{x:Yt.x,y:Yt.y},!1)}}const Ue=Me(),Be=Ue.x2-Ue.x1,ke=Ue.y2-Ue.y1,Oe=Math.max(0,Math.min(t.toValue(a==null?void 0:a.width)??Number.POSITIVE_INFINITY,ZT)-Be-2*c-(((ze=he==null?void 0:he.dimensions)==null?void 0:ze.width)??0)-(((qe=Se==null?void 0:Se.dimensions)==null?void 0:qe.width)??0)-2*l),Ke=Ue.y1+ke/2;Ne&&Q(Ne.id,{x:Ue.x1-c-Oe/2-(((jn=he==null?void 0:he.dimensions)==null?void 0:jn.width)??0),y:Ke-(((Xi=he==null?void 0:he.dimensions)==null?void 0:Xi.height)??0)/2},!1),be&&Q(be.id,{x:Ue.x2+c+Oe/2,y:Ke-(((eg=Se==null?void 0:Se.dimensions)==null?void 0:eg.height)??0)/2},!1)}function fe(le){let Ne,be;const he=[];for(const Se of le){if(Xr(Se)){he.push(Se);continue}switch(Se.name){case"request":{if(n!=="request")throw new Error(`Unexpected request node in ${n} phase`);if(Ne)throw new Error("Duplicated request node in request phase");Ne=Se;break}case"service_request":{if(n!=="request")throw new Error(`Unexpected service_request node in ${n} phase`);if(be)throw new Error("Duplicated service_request node in request phase");be=Se;break}case"service_response":{if(n!=="response")throw new Error(`Unexpected service_response node in ${n} phase`);if(be)throw new Error("Duplicated service_response node in response phase");be=Se;break}case"response":{if(n!=="response")throw new Error(`Unexpected response node in ${n} phase`);if(Ne)throw new Error("Duplicated response node in response phase");Ne=Se;break}default:{he.push(Se);break}}}return{autoNodes:he,leftNode:Ne,rightNode:be}}async function we(le=!0){const Ne=new Map(re.value.map(Me=>[Me.id,Me.data])),be=q.value.groups.toSorted((Me,Ie)=>Z(Ie.ownerId)-Z(Me.ownerId));for(const Me of be)_e(Me.memberIds.reduce((Ie,Ue)=>{const Be=v(Ue);if(!Be)return console.warn(`Cannot find node '${Ue}' of group '${Me.id}' by getNodeById`),Ie;if(Be.phase!==n)return Ie;if(Be.type==="branch"){const ke=X.value.get(Be.id);ke&&Ie.push(...ke)}return Ne.delete(Be.id),Ie.push(Be),Ie},[])),await t.nextTick(),B(Me.id,!1),await t.nextTick();const he=Ne.values().toArray();for(const Me of he){if(Xr(Me)||Me.type!=="branch")continue;const Ie=X.value.get(Me.id);Ie&&he.push(...Ie)}const{autoNodes:Se,leftNode:ve,rightNode:$e}=fe(he);_e(Se,ve,$e),le&&U(`autolayout-${o}`)}function Re(le){h({...z.value,...le})}async function De(le){return R(le),new Promise(Ne=>setTimeout(()=>{const be=g(le);x(be?[be]:[]),Ne()},0))}function me(le){const Ne=j.value.filter(({type:ke})=>ke!=="group"),be=Ne.find(({id:ke})=>ke===le);if(!be)throw new Error(`Node ${le} not found`);const{position:{x:he,y:Se},dimensions:{width:ve,height:$e}}=be,Me=Se,Ie=Se+$e,Ue=Ne.filter(({id:ke})=>ke!==le).filter(({position:{y:ke},dimensions:{height:Oe}})=>ke<Ie&&ke+Oe>Me).map(({position:{x:ke},dimensions:{width:Oe}})=>({left:ke,right:ke+Oe})).sort((ke,Oe)=>ke.left-Oe.left);let Be=he+ve+c;for(const{left:ke,right:Oe}of Ue)if(!(Oe<=Be)){if(Be+ve<=ke)return{x:Be,y:Me};Be=Math.max(Be,Oe)+c}return{x:Be,y:Me}}function ge(le){if(!le)return;const Ne=g(le);if(!Ne)throw new Error(`Node ${le} not found`);const{position:{x:be},dimensions:{width:he}}=Ne,Se=be+he,{viewport:ve,dimensions:$e,setViewport:Me}=d,{x:Ie,y:Ue,zoom:Be}=ve.value,{width:ke}=$e.value,Oe=be*Be+Ie,Ke=Se*Be+Ie,ze=ke-bu-c;if(Ke<=ze)return;let qe=ze-Ke;Oe+qe<0&&(qe=-Oe),qe!==0&&Me({x:Ie+qe,y:Ue,zoom:Be},{duration:eP})}return{vueFlowStore:d,editorStore:p,readonly:i,nodes:re,edges:$,selectNode:De,autoLayout:we,placeToRight:me,scrollRightToReveal:ge,fitViewParams:z,fitView:Re}}),Gi=Ae(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>Ee.Left},size:{default:()=>Number.parseFloat(ud)},type:{}},setup(e){t.useCssVars(o=>({"753622c4":o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[o.type,o.position===t.unref(Ee).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Bm=Ae(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,"6ae9eff4":(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>bt[e.type]),o=t.computed(()=>QN(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":r.iconOnly,"has-colors":!!n.value.colors}]),size:r.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 bo=null;function dV(){var n;if(bo)return bo;if(typeof navigator>"u")return bo="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?bo="mac":/Linux/i.test(e)&&!/Android/i.test(e)?bo="linux":bo="windows"}const uV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},fV={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"},pV={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 mV(e,n={}){const o=n.platform??dV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?uV:o==="linux"?pV:fV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const gV={key:0,class:"label"},hV={class:"keys"},qi=Ae(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=mV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:o.reverse}])},[o.label?(t.openBlock(),t.createElementBlock("span",gV,t.toDisplayString(o.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",hV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),yV={class:"indicator-box"},_V={key:1,class:"additional-count"},zi=Ae(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 u=(f=n.targetFieldNames)==null?void 0:f[c];return u?`${s.name}.${u}`: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=bt[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(Ve.KTooltip),{placement:"top",text:o.value},{default:t.withCtx(()=>[t.createElementVNode("div",yV,[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,color:t.unref(dd),size:16},null,8,["color"])):t.createCommentVNode("",!0),i.value>0?(t.openBlock(),t.createElementBlock("span",_V," +"+t.toDisplayString(i.value),1)):t.createCommentVNode("",!0)])]),_:1},8,["text"])],2))}}),[["__scopeId","data-v-d8506ba3"]]),bV={class:"body"},wV={class:"name"},kV={class:"handle"},CV={class:"handle-label-wrapper"},EV={class:"handle-label-wrapper"},NV={class:"handle-label text"},SV={class:"handle"},vV={class:"handle-label-wrapper"},xV={class:"handle-label-wrapper"},AV={class:"handle-label text"},IV={key:2,class:"branch-handles"},TV={class:"handle-label-wrapper"},PV={class:"handle-label text"},Vm=Ae(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Qe.createI18n("en-us",it),o=cV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:u}=ct(),f=t.computed(()=>so(e.data.type)),d=t.computed(()=>e.data.fields.input.length>0),p=t.computed(()=>e.data.fields.output.length>0),m=t.computed(()=>d.value&&r(e.data.id).every(v=>v.targetField===void 0)),y=t.computed(()=>p.value&&i(e.data.id).every(v=>v.sourceField===void 0)),b=t.computed(()=>e.data.expanded.input??!1),g=t.computed(()=>e.data.expanded.output??!1),h=t.computed(()=>{var v,I,A;return((A=(I=(v=f.value.io)==null?void 0:v.next)==null?void 0:I.branches)==null?void 0:A.map(({name:W})=>W))??[]}),w=t.computed(()=>h.value.length>0),_=t.computed(()=>{var v,I;if(e.data.type==="property"){const A=(v=e.data.config)==null?void 0:v.property;return Ql(A)}return(I=f.value.io)==null?void 0:I.input}),k=t.computed(()=>{var v,I;if(e.data.type==="property"){const A=(v=e.data.config)==null?void 0:v.property;return Jl(A)}return(I=f.value.io)==null?void 0:I.output}),E=t.computed(()=>Eu(e.data)),C=t.computed(()=>e.data.phase==="response"),N=t.computed(()=>e.data.phase==="request"?Ee.Left:Ee.Right),T=t.computed(()=>e.data.phase==="request"?Ee.Right:Ee.Left),D=t.computed(()=>e.data.phase==="request"?Ee.Right:Ee.Left),G=t.computed(()=>E.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),j=t.computed(()=>E.value?Uk:Kk),S=t.computed(()=>{const v=new Map,I=r(e.data.id);for(const A of I){const W=a(A.source);if(!W)continue;const H=W.type==="vault",te=W.phase!==e.data.phase;if(!H&&!te)continue;let oe;if(A.sourceField){const se=W.fields.output.find(ye=>ye.id===A.sourceField);oe=se==null?void 0:se.name}if(A.targetField){const se=e.data.fields.input.find(ye=>ye.id===A.targetField);if(!se)continue;v.set(A.targetField,{fieldId:A.targetField,edgeId:A.id,field:se,sourceNode:W,sourceFieldName:oe})}else v.set("input",{fieldId:"input",edgeId:A.id,field:null,sourceNode:W,sourceFieldName:oe})}return v}),ee=t.computed(()=>{const v=new Map,I=i(e.data.id);for(const A of I){const W=a(A.target);if(!W||!(W.phase!==e.data.phase))continue;let te;if(A.targetField){const ye=W.fields.input.find(X=>X.id===A.targetField);te=ye==null?void 0:ye.name}const oe=A.sourceField||"output";if(!v.has(oe)){const ye=A.sourceField&&e.data.fields.output.find(X=>X.id===A.sourceField)||null;v.set(oe,{fieldId:oe,edgeIds:[],field:ye,targetNodes:[],targetFieldNames:[]})}const se=v.get(oe);se.edgeIds.push(A.id),se.targetNodes.push(W),se.targetFieldNames.push(te)}return v});function x(v){return S.value.get(v)}function q(v){return ee.value.get(v)}function U(v){!o||o.readonly||v==="input"&&!m.value||v==="output"&&!y.value||l(e.data.id,v)}async function Q(){if(!o||o.readonly)return;const v=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(v),o.scrollRightToReveal(v),u.value=!0}t.watch(m,v=>{v||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(y,v=>{v||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(v,I)=>{Do(v,I)||l(e.data.id,"input",v.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(v,I)=>{Do(v,I)||l(e.data.id,"output",v.length>0,!0,"*")},{deep:!0});const R=t.useTemplateRef("menu");function P(){var v;(v=R.value)==null||v.closeDropdown()}return(v,I)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:C.value,implicit:E.value,readonly:v.readonly}]),onMousedown:P},[t.createElementVNode("div",bV,[E.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ve.KTooltip),{key:0,class:"badge",placement:"top",text:v.data.type},{default:t.withCtx(()=>[t.createVNode(Bm,{"icon-only":"",size:"small",type:v.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",wV,t.toDisplayString(G.value),1),v.error?(t.openBlock(),t.createBlock(t.unref(xe.WarningIcon),{key:1,class:"error-icon",color:t.unref(Ma),size:16},null,8,["color"])):t.createCommentVNode("",!0),E.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ve.KDropdown),{key:2,ref:"menu",class:"menu",disabled:v.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:I[1]||(I[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(Ve.KDropdownItem),{onClick:Q},{default:t.withCtx(()=>[t.createVNode(qi,{keys:t.unref(Hr).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),t.createVNode(t.unref(Ve.KDropdownItem),{danger:"",onClick:I[0]||(I[0]=A=>t.unref(c)(v.data.id))},{default:t.withCtx(()=>[t.createVNode(qi,{keys:t.unref(Hr).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(Ve.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.MoreIcon),{color:t.unref(sd)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:C.value}])},[_.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":d.value}])},[t.createElementVNode("div",kV,[t.createVNode(t.unref(qt),{id:"input",position:N.value,type:"target"},null,8,["position"]),x("input")?(t.openBlock(),t.createBlock(zi,{key:0,"edge-id":x("input").edgeId,mode:"input",reversed:C.value,"source-field-name":x("input").sourceFieldName,"source-node":x("input").sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",CV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:m.value}]),onClick:I[2]||(I[2]=t.withModifiers(A=>U("input"),["stop"]))},[I[4]||(I[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),d.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[b.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(xe.UnfoldMoreIcon),{key:0,size:t.unref(jo)},null,8,["size"])),b.value?(t.openBlock(),t.createBlock(t.unref(xe.UnfoldLessIcon),{key:1,color:m.value?void 0:t.unref(cd),size:t.unref(jo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),d.value&&b.value?(t.openBlock(),t.createBlock(Gi,{key:0,color:j.value,position:N.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),d.value&&b.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(v.data.fields.input,(A,W)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${A.id}`,class:"handle indented"},[t.createVNode(t.unref(qt),{id:`inputs@${A.id}`,position:N.value,type:"target"},null,8,["id","position"]),x(A.id)?(t.openBlock(),t.createBlock(zi,{key:0,"edge-id":x(A.id).edgeId,mode:"input",reversed:C.value,"source-field-name":x(A.id).sourceFieldName,"source-node":x(A.id).sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",EV,[t.createElementVNode("div",NV,t.toDisplayString(A.name),1),t.createVNode(Gi,{color:j.value,position:N.value,type:W<v.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),k.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":p.value}])},[t.createElementVNode("div",SV,[t.createElementVNode("div",vV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:y.value}]),onClick:I[3]||(I[3]=t.withModifiers(A=>U("output"),["stop"]))},[I[5]||(I[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),p.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(jo)},null,8,["size"])),g.value?(t.openBlock(),t.createBlock(t.unref(xe.UnfoldLessIcon),{key:1,color:y.value?void 0:t.unref(cd),size:t.unref(jo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&g.value?(t.openBlock(),t.createBlock(Gi,{key:0,color:j.value,position:T.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(qt),{id:"output",position:T.value,type:"source"},null,8,["position"]),q("output")?(t.openBlock(),t.createBlock(zi,{key:0,mode:"output",reversed:C.value,"target-field-names":q("output").targetFieldNames,"target-nodes":q("output").targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]),p.value&&g.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(v.data.fields.output,(A,W)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${A.id}`,class:"handle indented"},[t.createElementVNode("div",xV,[t.createElementVNode("div",AV,t.toDisplayString(A.name),1),t.createVNode(Gi,{color:j.value,position:T.value,type:W<v.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(qt),{id:`outputs@${A.id}`,position:T.value,type:"source"},null,8,["id","position"]),q(A.id)?(t.openBlock(),t.createBlock(zi,{key:0,mode:"output",reversed:C.value,"target-field-names":q(A.id).targetFieldNames,"target-nodes":q(A.id).targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),w.value?(t.openBlock(),t.createElementBlock("div",IV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,A=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${A}`,class:"handle"},[t.createElementVNode("div",TV,[t.createElementVNode("div",PV,t.toDisplayString(A),1)]),t.createVNode(t.unref(qt),{id:`branch@${A}`,connectable:!1,position:D.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],34))}}),[["__scopeId","data-v-2bf41241"]]),OV=Ae(t.defineComponent({__name:"GroupNode",props:{data:{}},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}])},[t.createVNode(t.unref(qt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-35113c02"]]),$V={key:0,class:"dk-flow-mask"},Rm=Ae(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=Je.useElementBounding(i),{i18n:{t:l}}=Fe(),{vueFlowStore:s,editorStore:c,autoLayout:u,fitViewParams:f,fitView:d,selectNode:p,placeToRight:m,scrollRightToReveal:y}=sV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:b,propertiesPanelOpen:g,invalidConfigNodeIds:h,selectedNode:w,duplicateNode:_}=c,{project:k,vueFlowRef:E,zoomIn:C,zoomOut:N,viewport:T,maxZoom:D,minZoom:G}=s,j=t.ref(!1);function S(R){var P;if(e.mode==="edit"){if(((P=R==null?void 0:R.node)==null?void 0:P.type)==="group"){p(void 0);return}g.value=!0}}function ee(R){e.mode!=="edit"||j.value||R.preventDefault()}function x(R){var ye,X;if(e.mode!=="edit"||j.value)return;const P=(ye=R.dataTransfer)==null?void 0:ye.getData(Wo);if(!P)return;R.preventDefault();const v=JSON.parse(P);if(v.action!=="create-node")return;const{top:I=0,left:A=0}=((X=E.value)==null?void 0:X.getBoundingClientRect())||{},W=k({x:R.clientX-A,y:R.clientY-I}),{type:H,anchor:te}=v.data,oe={type:H,phase:e.phase,position:{x:W.x-te.offsetX,y:W.y-te.offsetY}},se=b(oe);se&&(p(se),g.value=!0)}async function q(){await u(),setTimeout(()=>d(),0)}const U=t.computed(()=>{if(e.mode==="preview")return[];const R=[{name:"zoom_in",icon:xe.AddIcon,action:C,disabled:T.value.zoom>=D.value},{name:"zoom_out",icon:xe.RemoveIcon,action:N,disabled:T.value.zoom<=G.value},{name:"fit_view",icon:xe.FullscreenIcon,action:d}];return e.mode==="edit"&&R.push({name:"auto_layout",icon:xe.AutoLayoutIcon,action:q}),R});if(e.phase==="response"&&e.mode==="edit"){Je.useEventListener("dragstart",P=>{var A;const v=(A=P.dataTransfer)==null?void 0:A.types.find(W=>W.startsWith(`${Wo}/`));if(!v)return;v.replace(`${Wo}/`,"")==="call"&&(j.value=!0)});const{start:R}=Je.useTimeoutFn(()=>{j.value=!1},80);Je.useEventListener("dragover",()=>{R()}),Je.useEventListener("dragend",()=>{j.value=!1})}async function Q(){const R=w.value;if(e.mode!=="edit"||!R||R.phase!==e.phase)return;const P=_(R.id,m(R.id));P&&(await p(P),g.value=!0,y(P))}return $p({enabled:t.computed(()=>!!w.value&&e.mode==="edit"&&w.value.phase===e.phase),duplicate:Q}),n({autoLayout:u,fitView:d}),(R,P)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Ip),{id:R.flowId,class:t.normalizeClass(["flow",{readonly:R.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":R.mode==="edit","max-zoom":t.unref(JT),"min-zoom":t.unref(QT),"multi-selection-key-code":null,"nodes-connectable":R.mode==="edit","nodes-draggable":R.mode==="edit","pan-on-drag":R.mode==="preview"?!1:void 0,"pan-on-scroll":R.mode!=="edit"?!1:void 0,"zoom-on-double-click":R.mode!=="edit"?!1:void 0,"zoom-on-pinch":R.mode!=="edit"?!1:void 0,"zoom-on-scroll":R.mode!=="edit"?!1:void 0,onDragover:ee,onDrop:x,onNodeClick:S,onNodesChange:P[0]||(P[0]=v=>r("nodes-change")),onNodesInitialized:P[1]||(P[1]=v=>r("initialized"))},{"node-flow":t.withCtx(({data:v})=>[t.createVNode(Vm,{data:v,error:t.unref(h).has(v.id),readonly:R.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:v})=>[t.createVNode(OV,{data:v},null,8,["data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(wT)),t.createVNode(t.unref(zT),{"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,v=>(t.openBlock(),t.createBlock(t.unref(Ve.KTooltip),{key:v.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${v.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(mr),{disabled:v.disabled,onClick:t.withModifiers(v.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(v.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"]),j.value?(t.openBlock(),t.createElementBlock("div",$V,t.toDisplayString(t.unref(l)("plugins.free-form.datakit.flow_editor.phase_mask_help")),1)):t.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-73a8d192"]]),ms=Ae(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}=ct(),c=t.useId(),u=`${c}-request`,f=`${c}-response`,d=Ge(u),p=Ge(f);function m(A,W){const{onPaneClick:H,onNodesChange:te,onEdgesChange:oe,getSelectedNodes:se,getSelectedEdges:ye}=A,{removeSelectedElements:X}=W;function ie(ae){if(!ae){X();return}ae.some(ce=>ce.type==="select")&&se.value.length+ye.value.length>0&&X()}te(ie),oe(ie),H(()=>ie())}m(d,p),m(p,d);const y=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),g=t.useTemplateRef("requestCanvasContainer"),h=t.useTemplateRef("requestFlow"),w=t.useTemplateRef("resizeHandle"),_=t.useTemplateRef("responseLabel"),k=t.useTemplateRef("responseCanvasContainer"),E=t.useTemplateRef("responseFlow"),C=Je.useElementBounding(y),N=Je.useElementBounding(b),T=Je.useElementBounding(g),D=Je.useElementBounding(w),G=Je.useElementBounding(_),j=Je.useElementBounding(k),S=t.computed(()=>Math.max(30,C.height.value*.03)),ee=t.computed(()=>T.height.value<S.value),x=t.computed(()=>j.height.value<S.value),q=t.ref("50%"),U=t.ref("50%"),Q=()=>{e.resizable&&(ee.value?(q.value="50%",U.value="50%"):(q.value="0",U.value="100%"))},R=()=>{e.resizable&&(x.value?(q.value="50%",U.value="50%"):(q.value="100%",U.value="0"))},P=t.computed(()=>C.height.value-N.height.value-D.height.value-G.height.value),{isDragging:v}=Je.useDraggable(w,{onMove(A){if(!e.resizable)return;const W=Math.max(0,A.y-T.top.value),H=Math.min(1,Math.max(0,W/P.value));q.value=`${H*100}%`,U.value=`${(1-H)*100}%`},onEnd(){e.resizable&&(T.height.value<S.value?(q.value="0",U.value="100%"):j.height.value<S.value&&(q.value="100%",U.value="0"))}});function I(){t.nextTick(()=>{var A,W;(A=h.value)==null||A.fitView(),(W=E.value)==null||W.fitView()})}return t.watch([n,o,()=>r.value.pendingLayout,()=>r.value.pendingFitView],([A,W,H,te])=>{e.inactive||!A||!W||!H&&!te||(H&&i(),te&&a(!1),setTimeout(async()=>{var oe,se;H&&(await((oe=h.value)==null?void 0:oe.autoLayout(!1)),await((se=E.value)==null?void 0:se.autoLayout(!1)),l("*"),H==="clearHistory"&&s()),te&&setTimeout(()=>I(),0)},0))}),(A,W)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:y,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:A.resizable}]),onClick:Q},[A.resizable?(t.openBlock(),t.createBlock(t.unref(xe.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:ee.value}])},null,8,["class"])):t.createCommentVNode("",!0),W[4]||(W[4]=t.createElementVNode("div",{class:"label-content"}," Request ",-1))],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:g,class:t.normalizeClass(["canvas",{dragging:t.unref(v)}]),style:t.normalizeStyle({flexBasis:q.value})},[t.createVNode(Rm,{ref_key:"requestFlow",ref:h,"flow-id":u,mode:A.mode,phase:"request",onInitialized:W[0]||(W[0]=H=>n.value=!0),onNodesChange:W[1]||(W[1]=H=>n.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:t.normalizeClass(["resize-handle",{resizable:A.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:_,class:t.normalizeClass(["label response",{dragging:t.unref(v),resizable:A.resizable}]),onClick:R},[A.resizable?(t.openBlock(),t.createBlock(t.unref(xe.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:x.value}])},null,8,["class"])):t.createCommentVNode("",!0),W[5]||(W[5]=t.createElementVNode("div",{class:"label-content"}," Response ",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:k,class:t.normalizeClass(["canvas response",{dragging:t.unref(v)}]),style:t.normalizeStyle({flexBasis:U.value})},[t.createVNode(Rm,{ref_key:"responseFlow",ref:E,"flow-id":f,mode:A.mode,phase:"response",onInitialized:W[2]||(W[2]=H=>o.value=!0),onNodesChange:W[3]||(W[3]=H=>o.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-f6dd01e7"]]),BV={class:"dk-confirm-modal-body"},VV={class:"dk-confirm-modal-connections"},RV=Ae(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=Fe(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let u=null;function f(){a.value=!1,i("cancel"),u==null||u(!1)}function d(){a.value=!1,i("confirm"),u==null||u(!0)}async function p(m,y,b){return l.value=m,s.value=y??[],c.value=b??[],a.value=!0,await new Promise(g=>{u=g})}return n({open:p}),(m,y)=>{const b=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(b,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:m.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:d},{default:t.withCtx(()=>[t.createElementVNode("div",BV,[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",VV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([g,h])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${h}`},[t.createVNode(t.unref(xe.AddIcon),{color:t.unref(jk)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),y[0]||(y[0]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(h),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([g,h])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${h}`},[t.createVNode(t.unref(xe.RemoveIcon),{color:t.unref(Ma)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),y[1]||(y[1]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(h),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-9874f282"]]),DV={class:"dk-editor-nav"},MV={class:"top"},LV={class:"bottom"},FV=Ae(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Qe.createI18n("en-us",it),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:xe.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=fl(),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(u,f)=>(t.openBlock(),t.createElementBlock("nav",DV,[t.createElementVNode("div",MV,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:d,to:p,icon:m,onClick:y})=>t.createVNode(t.unref(Ve.KTooltip),{key:d,"kpop-attributes":{offset:"10px"},label:d,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Ve.KButton),{key:d,appearance:"none",class:"nav-item",icon:"",to:p,onClick:y},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(La)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",LV,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(d=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(d=>s.value=!0,["self"]))},[t.createVNode(t.unref(Ve.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ve.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(La)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(xe.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(La)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),UV={class:"dk-editor-main"},KV={class:"header"},jV={class:"actions"},GV={class:"settings"},qV={ref:"canvasContainer",class:"body"},zV=Ae(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Qe.createI18n("en-us",it),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=ct();function c(d){const p=el.load(d,{schema:zr,json:!0});if(typeof p!="object"||p===null)return;const m=p,y={config:{...m,nodes:m.nodes??[]}};s(y,!0)}function u(){o.value=!1}$p({enabled:o,undo:r,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(d,p)=>(t.openBlock(),t.createElementBlock("div",UV,[t.createElementVNode("header",KV,[t.createElementVNode("div",jV,[t.createVNode(t.unref(Ve.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(qi,{keys:t.unref(Hr).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(Ve.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(Ve.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(qi,{keys:t.unref(Hr).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(Ve.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",GV,[t.createVNode(Ba,{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(Ve.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(tl,(m,y)=>t.createVNode(t.unref(Ve.KDropdownItem),{key:y,onClick:b=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${y}`)),1)]),_:2},1032,["onClick"])),64))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(Ve.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(Ve.KButton),{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",qV,[t.createVNode(ms,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-32006420"]]),HV=["draggable"],YV={class:"icon"},WV={class:"content"},XV={class:"title"},ZV={class:"description"},JV=Ae(t.defineComponent({__name:"NodePanelItem",props:{type:{}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(u=>({"209a0a7f":t.unref(l),"336bc2d8":t.unref(s)}));const o=n,r=e.type==="cache",{summary:i,icon:a,colors:{background:l,foreground:s}={}}=rl[e.type];function c(u){o("dragstart",u,e.type)}return(u,f)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${u.type}`]:!0,unsupported:r}]),draggable:!r,onDragstart:c},[t.createElementVNode("div",YV,[t.createVNode(t.unref(a),{size:16})]),t.createElementVNode("div",WV,[t.createElementVNode("div",XV,t.toDisplayString(u.type),1),t.createElementVNode("div",ZV,t.toDisplayString(t.unref(i)),1)])],42,HV))}}),[["__scopeId","data-v-3173f9b0"]]),QV={class:"dk-node-panel"},eR={key:0,class:"title"},tR={class:"node-list"},nR={"aria-hidden":"true",class:"preview",inert:""},Dm=Ae(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Qe.createI18n("en-us",it),{createNode:o}=ct(),r=`dk-drag-preview-${t.useId()}`,i=t.shallowRef(),a=t.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var T,D,G;const u=s.currentTarget,{left:f,top:d,width:p,height:m}=u.getBoundingClientRect(),y=s.clientX-f,b=s.clientY-d;i.value=o({type:c}),await t.nextTick();const g=document.querySelector(`#${r}`)||u,h=g.cloneNode(!0);h.classList.add("dk-drag-snapshot");const{offsetWidth:w,offsetHeight:_}=g;Object.assign(h.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${_}px`}),document.body.appendChild(h);const k=y/p,E=b/m,C={ratioX:k,ratioY:E,offsetX:w*k,offsetY:_*E},N={action:"create-node",data:{type:c,anchor:C}};(T=s.dataTransfer)==null||T.setData(Wo,JSON.stringify(N)),(D=s.dataTransfer)==null||D.setData(`${Wo}/${c}`,c),(G=s.dataTransfer)==null||G.setDragImage(h,C.offsetX,C.offsetY),requestAnimationFrame(()=>{h.remove(),i.value=void 0})};return(s,c)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",QV,[s.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",eR,[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",tR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(rl)),f=>(t.openBlock(),t.createBlock(JV,{key:f,type:f,onDragstart:l},null,8,["type"]))),128))]),t.createElementVNode("div",nR,[t.createVNode(t.unref(Ip),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(Vm,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-51ccb23d"]]);function oR(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=ct(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var y;return((y=l.value.get("vault"))==null?void 0:y.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(y,b)=>{e(s.id,"output",y,!1);const g={...s.config,[y]:b};r(s.id,g)},removeVault:y=>{const b=dn(s,"output",y);if(!b)return;const g=s.fields.output.length===1;o(s.id,b.id,!0,!1);const h=Mo(s.config,y);r(s.id,h,!g),g&&a(s.id)},updateVault:(y,b,g=!0)=>{const h={...s.config,[y]:b};r(s.id,h,g)},renameVault:(y,b,g=!0)=>{var k;const h=dn(s,"output",y);if(!h)return;i(s.id,h.id,b,!1);const w=((k=s.config)==null?void 0:k[y])??"",_={...Mo(s.config,y),[b]:w};r(s.id,_,g)}}}const rR=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}}=He.useI18n(),i=t.inject(je.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),u=()=>{const m=a.value.trim(),y=e.validateName(m,e.isEditing);return l.value=y||"",y===void 0},f=()=>{l.value="",u()},d=m=>{u()&&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,y)=>{const b=t.resolveComponent("KInput"),g=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:m.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:d},{"form-prefix":t.withCtx(()=>[t.createVNode(b,{"model-value":a.value,"onUpdate:modelValue":[y[0]||(y[0]=h=>a.value=h),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(g,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),iR={class:"dk-vault-panel"},aR={class:"title"},lR={class:"vault-list"},sR={key:0,class:"vault-list-item"},cR={class:"vault-list-item-key"},dR={class:"vault-list-item-key-text"},uR=Ae(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}=Dr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:u}}=He.useI18n(),f=t.computed(()=>new Set(i.value.map(h=>h.key))),d=()=>{const h=a();c.value=h,s.value=h},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=h=>{if(!s.value)throw new Error("no selected entry");const w=s.value.key,_=w!==h.secretName,k=s.value.value!==h.secretRef,E=_||k;s.value.value=h.secretRef,s.value.key=h.secretName,c.value?r("add",h.secretName,h.secretRef):E&&r("update",h.secretName,h.secretRef,_?w:void 0),c.value=null,p()},y=h=>{s.value=h},b=h=>{l(h.id),r("remove",h.key)},g=(h,w)=>{var _;if(!h)return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(h)&&!(w&&h===((_=s.value)==null?void 0:_.key)))return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(h,w)=>{var C,N;const _=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",iR,[t.createElementVNode("h3",aR,t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(_,{appearance:"tertiary",class:"add-button",size:"small",onClick:d},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",lR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),T=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:T.id},[T.key?(t.openBlock(),t.createElementBlock("div",sR,[t.createElementVNode("div",cR,[t.createVNode(t.unref(xe.KeyIcon),{color:t.unref(dd),size:16},null,8,["color"]),t.createElementVNode("div",dR,t.toDisplayString(T.key),1)]),t.createVNode(E,null,{items:t.withCtx(()=>[t.createVNode(k,{onClick:D=>y(T)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:2},1032,["onClick"]),t.createVNode(k,{danger:"",onClick:D=>b(T)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:2},1032,["onClick"])]),default:t.withCtx(()=>[t.createVNode(_,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.MoreIcon),{color:t.unref(sd)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(rR,{"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":g,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-4df4e490"]]),fR={class:"dk-resources-panel"},pR=Ae(t.defineComponent({__name:"ResourcesPanel",setup(e){const n={type:"record",fields:[{vault:{type:"map",keys:{type:"string"},values:{type:"string"}}}]},{addVault:o,removeVault:r,updateVault:i,renameVault:a,formData:l}=oR();function s(c,u,f){f&&f!==c&&a(f,c,!1),i(c,u)}return(c,u)=>(t.openBlock(),t.createElementBlock("div",fR,[t.createVNode(yt,{data:t.unref(l),schema:n},{default:t.withCtx(()=>[t.createVNode(uR,{name:"vault",onAdd:t.unref(o),onRemove:t.unref(r),onUpdate:s},null,8,["onAdd","onRemove"])]),_:1},8,["data"])]))}}),[["__scopeId","data-v-20ce9c3d"]]),mR={class:"header"},gR={class:"title"},hR={class:"body"},yR={class:"panel"},_R=Ae(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Qe.createI18n("en-us",it),{sidePanelExpanded:o}=fl(),{propertiesPanelOpen:r,selectedNode:i}=ct(),a=t.inject(Lo.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,u=>{u||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(u,f)=>{const d=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",mR,[t.createElementVNode("h2",gR,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",hR,[t.createElementVNode("div",yR,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(d,{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(Dm,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(pR,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(Dm,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),bR=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(vt,{items:t.unref(xa)([...t.unref(Cu)]),name:n.name},null,8,["items","name"]))}}),wR=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Xe(),{i18n:o}=Fe(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(ht,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock(vt,{key:l,clearable:"","enable-filtering":"",items:i.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},null,8,["items","name","placeholder","onChange"]))),128))]),_:1},8,["name"]))}}),kR=["data-testid"],CR={class:"dk-inputs-map-field-entry-body"},ER={class:"dk-inputs-map-field-entry-content"},NR=Ae(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}=Dr(o,r),{i18n:{t:c}}=Fe(),u=t.useTemplateRef("root"),f=t.ref(null),d=t.ref({});let p;async function m(E,C="key"){var N;u.value&&(await t.nextTick(),(N=u.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function y(){const{id:E}=a(),C=i.value.findIndex(({key:N})=>!N);m(C===-1?i.value.length-1:C),f.value=E}function b(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function h(E){if(w(E)){E.key=p,delete d.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 d.value[E.id];const C=o.fieldNameValidator("input",p,E.key);if(C)return d.value[E.id]=C,C}function _(E){w(E)}function k(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"),T=t.resolveComponent("KLabel"),D=t.resolveComponent("KInput"),G=t.resolveComponent("KSelect"),j=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:u,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(S,ee)=>(t.openBlock(),t.createElementBlock("div",{key:S.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${ee}`},[t.createVNode(T,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${ee}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),t.createElementVNode("div",CR,[t.createElementVNode("div",ER,[t.createVNode(D,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${ee}`,modelValue:S.key,"onUpdate:modelValue":[x=>S.key=x,x=>w(S)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":ee,"data-testid":`ff-key-${t.unref(s).path.value}.${ee}`,error:!!d.value[S.id],"error-message":d.value[S.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:x=>_(S),onChange:x=>h(S),onFocus:x=>g(S)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(G,{modelValue:S.value,"onUpdate:modelValue":x=>S.value=x,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${ee}`,"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:x=>k(S,(x==null?void 0:x.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(j,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${ee}`,icon:"",onClick:x=>b(S)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,kR))),128)),t.createVNode(j,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:y},{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-b2f89c26"]]),SR={key:1,class:"dk-inputs-field-or"},Kn=Ae(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}=Xe(),{i18n:{t:i}}=Fe(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?wR:NR:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function u(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function d(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(Ve.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(vt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:p.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},null,8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",SR,[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(Ve.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":p.fieldNameValidator,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":u,"onRemove:field":f,"onRename:field":d},null,8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-08ddb036"]]),vR={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"},xR={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 AR(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function wo(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function ko(e){const{i18n:{t:n}}=Fe(),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 Mm(e,n){const{i18n:{t:o}}=Fe();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 IR(e=0,n=1/0,o){const{i18n:{t:r}}=Fe();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 Lm(e){const{i18n:{t:n}}=Fe();return function(r){if(!AR(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 Fm(e,n){const{i18n:{t:o}}=Fe();return function(i){if(i==null)return;const a=Lm(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 Um(e=-1/0,n=1/0,o){const{i18n:{t:r}}=Fe();return function(a){if(a==null)return;const l=Lm(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 TR(e,n){const{state:o}=ct(),{i18n:{t:r}}=Fe();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 PR(e,n,o){const{i18n:{t:r}}=Fe();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 OR(){const{i18n:{t:e}}=Fe();return function(o){if(al(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Km(e){const{i18n:{t:n}}=Fe(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return wo(ko(o),Mm("identifier",o),OR(),TR(e,o))}function $R(e){const{i18n:{t:n}}=Fe(),{getNodeById:o}=ct();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 wo(ko(s),PR(i,o(e),l))(a)}}function BR(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=d=>{const p=typeof d=="function"?d():d,m=s(p);return n.value[l]=m,m},u=()=>{n.value[l]=void 0},f=d=>(u(),c(d));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 u=l[c],f=typeof u=="function"?u():u;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function Hi(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=ct(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>BR(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function u(){const d=o(),p=l.value.validate(d),m={};for(const y in a.value)m[y]=p[y];return m}function f(d,p){return{onBlur:()=>{const m=o(),y=s.value[d];y&&y.handleBlur(m[d])},onUpdate:()=>{const m=o(),y=s.value[d];y&&y.handleChange(m[d]),p==null||p()},error:t.computed(()=>{const m=s.value[d];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[d];return m?m.error.value??"":""})}}return t.onMounted(()=>{i.value?i.value=!1:u()}),t.onBeforeUnmount(async()=>{try{const d=u(),p=Object.values(d).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:u,createFieldHandler:f}}function yn(e,n){const o=t.inject(Lo.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:u,disconnectEdge:f,connectEdge:d,invalidConfigNodeIds:p,commit:m,revert:y}=ct(),{i18n:{t:b}}=Fe(),g=Pm(),h=t.computed(()=>{const P=a(e);if(!P)throw new Error("Node not existed");return P}),w=t.computed(()=>{const v=r.value.edges.filter(I=>I.target===e).reduce((I,A)=>{var se,ye;const W=a(A.source),H=(se=un(W,"output",A.sourceField))==null?void 0:se.id,te=(ye=un(h.value,"input",A.targetField))==null?void 0:ye.name,oe=W.id+(H?`.${H}`:"");return te?I.inputs={...I.inputs,[te]:oe}:I.input=oe,I},{});return h.value.fields.input.forEach(I=>{v.inputs||(v.inputs={}),v.inputs[I.name]||(v.inputs[I.name]=null)}),{...h.value.config,...v,name:h.value.name}}),_=P=>{i(e,P??"",!0,`${e}:rename`)},k=(P,v=!0)=>{if(!n)throw new Error("getFormInnerData is not defined");const I=Mo(n(),["name","input","inputs"]),A=P?`update:${e}:${P}`:void 0;u(e,I,v,A)},E=(P,v)=>{const I=dn(h.value,P,v);if(!I)throw new Error(`Field with name "${v}" not found in node "${h.value.name}"`);return I},C=(P,v,I)=>{const A=!!I;l(e,P,v,!A),A&&j(v,I)},N=(P,v,I)=>{const A=E(P,v).id;s(e,A,I)},T=(P,v)=>{const I=E(P,v).id;c(e,I)},D=t.computed(()=>r.value.edges.filter(P=>P.target===e&&!P.targetField)[0]),G=t.computed(()=>r.value.edges.filter(P=>P.target===e&&P.targetField)),j=async(P,v)=>{const I=v==null,A=E("input",P).id;if(I){const ae=G.value.find(ce=>ce.targetField===A);ae&&f(ae.id);return}const{nodeId:W,fieldId:H}=Su(v),te=E("input",P).id,oe=[];D.value&&(oe.push(br(D.value,a)),f(D.value.id,!1));const se=G.value.find(ae=>ae.targetField===A);se&&(oe.push(br(se,a)),f(se.id,!1)),d({source:W,sourceField:H,target:e,targetField:te},!1);const ye=fs(W,H,e,te,a),X=oe[0]&&ye?oe[0][1]===ye[1]:!1;if(m(),X||oe.length===0)return;await g(b("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ye],oe)||y()},S=async P=>{if(P==null){D.value&&f(D.value.id);return}const I=[];for(const oe of G.value)I.push(br(oe,a)),f(oe.id,!1);D.value&&f(D.value.id,!1);const{nodeId:A,fieldId:W}=Su(P);d({source:A,sourceField:W,target:e,targetField:void 0},!1);const H=fs(A,W,e,void 0,a);if(m(),I.length===0)return;await g(b("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[H],I)||y()},ee=P=>{const v=[...r.value.edges,{source:P,target:e}];return dl(Qr(v))},x=t.computed(()=>{var v,I;const P=[];for(const A of r.value.nodes)if(!(!o&&A.type==="vault"||!((v=so(A.type).io)!=null&&v.output))&&A.fields.output&&A.id!==e&&!(A.type==="property"&&!Jl((I=A.config)==null?void 0:I.property))&&!ee(A.id)&&!(h.value.phase==="request"&&A.phase==="response")&&!(A.type==="vault"&&A.fields.output.length===0)){P.push({value:A.id,label:A.name});for(const H of A.fields.output)P.push({value:`${A.id}.${H.id}`,label:`${A.name}.${H.name}`})}return P}),q=t.computed(()=>h.value.fields.input.map(P=>P.name)||[]);function U(P){p.value.delete(e),P||p.value.add(e)}const Q=$R(e);function R(P,v,I){const A=a(e);if(!A)throw new Error("Node not found when validating field name");const W=dn(A,P,v);return Q(P,I,W==null?void 0:W.id)}return{formData:w,inputOptions:x,inputEdge:D,inputsEdges:G,inputsFieldNames:q,currentNode:h,setName:_,setConfig:k,addField:C,renameFieldByName:N,removeFieldByName:T,setInputs:j,setInput:S,nameValidator:Km(e),fieldNameValidator:R,toggleNodeValid:U}}function _n(e){const{getSchema:n}=Xe();return t.computed(()=>{if(At(e))switch(e){case"response":return xR;case"service_request":return vR}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 Co=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Fe(),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 u(){s=a.value.trim()}return t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,d)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":d[0]||(d[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:u},null,8,["model-value","error","error-message","label"])}}}),VR=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Fe(),o=t.useTemplateRef("form"),r=_n("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=yn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:y}=Hi({validationConfig:{url:wo(ko({fieldName:"URL"}),Mm("url",{fieldName:"URL"})),timeout:wo(Fm("integer",{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}),Um(0,2147483646,{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),b=y("url",()=>l("url")),g=y("timeout",()=>l("timeout"));return(h,w)=>{const _=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Co,{name:t.unref(i).name,validate:t.unref(d),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(_,{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(Jn,{error:t.unref(b).error.value,"error-message":t.unref(b).errorMessage.value,name:"url",onBlur:t.unref(b).onBlur,"onUpdate:modelValue":t.unref(b).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(bR,{name:"method",onUpdate:w[0]||(w[0]=k=>t.unref(l)())}),t.createVNode(Qn,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,label:t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(Jn,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=k=>t.unref(l)("ssl_server_name"))}),t.createVNode(Kn,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(u),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),RR=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=_n("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=yn(e.nodeId,()=>n.value.getInnerData());return(u,f)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Kn,{"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"]))}}),DR=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=_n("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=yn(e.nodeId,()=>n.value.getInnerData());return(u,f)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Kn,{"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/"},MR=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=Fe(),r=t.useTemplateRef("form"),i=_n("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:u,setInput:f,addField:d,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:y,nameValidator:b,toggleNodeValid:g,fieldNameValidator:h}=yn(e.nodeId,()=>r.value.getInnerData());function w(T,D){d("input",T,D)}function _(T){p("input",T)}function k(T,D){m("input",T,D)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=Hi({validationConfig:{jq:wo(ko({fieldName:E}),IR(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:g}),N=C("jq",()=>s("jq"));return(T,D)=>{const G=t.resolveComponent("KLabel"),j=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(Co,{name:t.unref(a).name,validate:t.unref(b),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(G,{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(Jn,{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(j,{"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(Kn,{"field-name-validator":t.unref(h),"field-names":t.unref(y),items:t.unref(c),"onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(u),"onRemove:field":_,"onRename:field":k},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),LR=Ae(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}=Dr(o,r,!1),{i18n:u}=Fe(),f=t.useTemplateRef("root"),d=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 y(){const E=l(),C=a.value.findIndex(({key:N})=>!N);m(C===-1?a.value.length-1:C),d.value=E}function b(E){var C;E.id===((C=d.value)==null?void 0:C.id)&&(d.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function h(E){var C;if(_(E)){E.key=p,delete i.value[E.id];return}if(E.id===((C=d.value)==null?void 0:C.id)){if(E.key.trim()==="")return;d.value=null,r("add:field",E.key,E.value)}else r("rename:field",p,E.key);p=E.key}function w(E,C){var T;if(C.id===((T=d.value)==null?void 0:T.id))return;const N=E.target.value.trim();r("change:value",C.key,N)}function _(E){delete i.value[E.id];const C=o.fieldNameValidator("output",p,E.key);if(C)return i.value[E.id]=C,C}function k(E){_(E)}return t.watchEffect(()=>{d.value&&!a.value.some(E=>E.id===d.value.id)&&a.value.push(d.value)}),(E,C)=>{const N=t.resolveComponent("KAlert"),T=t.resolveComponent("KLabel"),D=t.resolveComponent("KButton"),G=t.resolveComponent("KInput"),j=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(T,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).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),(S,ee)=>(t.openBlock(),t.createBlock(j,{key:S.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${ee}`},{actions:t.withCtx(()=>[t.createVNode(D,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${ee}`,icon:"",onClick:x=>b(S)},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(G,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${ee}`,modelValue:S.key,"onUpdate:modelValue":[x=>S.key=x,x=>_(S)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":ee,"data-testid":`ff-key-${t.unref(c).path.value}.${ee}`,error:!!i.value[S.id],"error-message":i.value[S.id],label:t.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:x=>k(S),onChange:x=>h(S),onFocus:x=>g(S)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(G,{modelValue:S.value,"onUpdate:modelValue":x=>S.value=x,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${ee}`,label:t.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:x=>w(x,S)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(D,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!d.value,onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(u).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 FR(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 Yi(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 UR(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 KR=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=ct(),{fieldNameValidator:c}=yn(e.nodeId),u=_n("static"),f=Km(e.nodeId),d=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var _;return((_=d.value)==null?void 0:_.fields.output.map(k=>k.name))||[]});function m(_){if(!d.value)throw new Error("No current node");n(d.value.id,_??"")}const y=t.computed(()=>{var D;if(!d.value)return{};const _=((D=d.value.config)==null?void 0:D.values)??{},k={},E=o(d.value.id).map(G=>G.sourceField).filter(Boolean).map(G=>un(d.value,"output",G)).map(G=>G==null?void 0:G.name).filter(Boolean),C=d.value.fields.output.map(G=>G.name),N=Object.keys(_);return new Set([...N,...E,...C]).forEach(G=>{if(G in _){k[G]=_[G];return}k[G]=""}),{name:d.value.name,values:FR(k)}});function b(_,k){if(!d.value)throw new Error("No selected node");const E=k!==void 0;if(r(e.nodeId,"output",_,!E),E){const C={values:Yi({...y.value.values,[_]:k})};l(e.nodeId,C)}}function g(_,k){if(!d.value)throw new Error("No selected node");const E=dn(d.value,"output",_);if(!E)throw new Error("No field found to rename");const C={values:Yi(UR(y.value.values??{},_,k))};l(e.nodeId,C,!1),i(e.nodeId,E.id,k)}function h(_){var C;if(!d.value)throw new Error("No selected node");const k=dn(d.value,"output",_);if(!k)throw new Error("No field found to delete");a((C=d.value)==null?void 0:C.id,k.id,!0,!1);const E={values:Yi({...y.value.values})};delete E.values[_],l(e.nodeId,E)}function w(_,k){if(!d.value)throw new Error("No selected node");const E={...y.value.values};E[_]=k;const C={values:Yi(E)};l(e.nodeId,C)}return(_,k)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:y.value,schema:t.unref(u)},{default:t.withCtx(()=>{var E;return[t.createVNode(Co,{name:((E=d.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(LR,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":b,"onChange:value":w,"onRemove:field":h,"onRename:field":g},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),jR={class:"dk-kong-property-item"},GR={class:"property-type"},qR={class:"property-badges"},zR=Ae(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=Fe(),r=e,i=n,{formData:a}=Xe(),l=t.ref(hr(a.property)),s=t.computed(()=>yr(a.property)),c=t.ref(Zl(a.property)),u=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(Ln).map(([m])=>{var g;const y=yr(m)?(g=a.property)==null?void 0:g.startsWith(m.replace(_o,"")):a.property===m;return{label:y&&c.value?m.replace(_o,c.value):m,value:m,selected:y}}));function d(m){const y=Ri.find(b=>{var g;return(g=a.property)==null?void 0:g.startsWith(b)});y&&(a.property=y+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==hr(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=hr(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=Zl(m),l.value=hr(m)}),(m,y)=>{const b=t.resolveComponent("KBadge"),g=t.resolveComponent("KSelect"),h=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(g,{key:u.value,"enable-filtering":"",error:!m.validators.property.isValid.value,help:m.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:y[0]||(y[0]=w=>m.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",jR,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",GR,t.toDisplayString(t.unref(Ln)[w.value].dataType),1)]),t.createElementVNode("div",qR,[t.unref(Ln)[w.value].readable?(t.openBlock(),t.createBlock(b,{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(Ln)[w.value].writable?(t.openBlock(),t.createBlock(b,{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(h,{key:0,"model-value":c.value,"onUpdate:modelValue":[y[1]||(y[1]=w=>c.value=w),d],error:!m.validators.key.isValid.value,"error-message":m.validators.key.error.value,label:"key",required:"",onBlur:y[2]||(y[2]=w=>m.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),HR=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=ct(),a=_n("property"),{formData:l,setName:s,setConfig:c,inputOptions:u,setInputs:f,setInput:d,inputsFieldNames:p,nameValidator:m,toggleNodeValid:y,fieldNameValidator:b}=yn(e.nodeId,()=>n.value.getInnerData()),g=t.computed(()=>Ql(l.value.property));function h(_){var E;const k=(E=o.value)==null?void 0:E.id;if(!k)throw new Error("Expected selectedNode to be defined");Jl(_)||i(k,!1),Ql(_)||r(k,!1),c()}const{fields:w}=Hi({validationConfig:()=>({property:ko({fieldName:"Property"}),key:yr(l.value.property)?ko({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:Zl(l.value.property)}),toggleNodeValid:y});return(_,k)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(Co,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(vt,{name:"content_type",onUpdate:k[0]||(k[0]=E=>t.unref(c)())}),t.createVNode(zR,{validators:t.unref(w),"onUpdate:modelValue":h,"onUpdate:propertyKey":k[1]||(k[1]=E=>t.unref(c)("property-key"))},null,8,["validators"]),g.value?(t.openBlock(),t.createBlock(Kn,{key:0,"field-name-validator":t.unref(b),"field-names":t.unref(p),items:t.unref(u),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),YR=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=_n("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:u,nameValidator:f,toggleNodeValid:d,fieldNameValidator:p}=yn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:m}=Hi({validationConfig:{status:wo(Fm("integer",{fieldName:"Status"}),Um(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:d}),y=m("status",()=>a("status"));return(b,g)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Co,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Qn,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"status",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Ba,{name:"warn_headers_sent","onUpdate:modelValue":g[0]||(g[0]=h=>t.unref(a)())}),t.createVNode(Kn,{"field-name-validator":t.unref(p),"field-names":t.unref(u),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 WR(e){const n=yn(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=ct(),{i18n:{t:l}}=Fe(),s=Pm(),c=Im(),u=t.computed(()=>{var _;const h={...n.formData.value},w=Xo(((_=n.currentNode.value)==null?void 0:_.type)||"branch");for(const k of w)(!(k in h)||h[k]==null)&&(h[k]=[]);return h});function f(h,w,_){const k=r(h),E=r(_),C=k?`${k.name}.${w}`:`${h}.${w}`,N=E?E.name:_;return[C,N]}function d(h){return(h==null?[]:Array.isArray(h)?h:[h]).filter(w=>Nu(w))}function p(h,w){return i.wouldCreateCycle(h,w)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(h,w,_){const k=[],E=[],C=[];for(const N of _){const T=i.findMembership(N);if(!T||T.ownerId===h&&T.branch===w)continue;const D=i.getMembers(T.ownerId,T.branch).filter(G=>G!==N);C.push({ownerId:T.ownerId,branch:T.branch,members:D}),k.push(f(h,w,N)),E.push(f(T.ownerId,T.branch,N))}return{conflictUpdates:C,addedAssignments:k,removedAssignments:E}}function y(h,w,_,k){let E=!1;for(const C of k)E=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||E;return E=i.setMembers(h,w,_,{commit:!1})||E,E}async function b(h,w){const _=n.currentNode.value,k=d(w),E=i.prepareMembers(_.id,h,k),C=i.getMembers(_.id,h);if(ll(C,E))return!0;const N=E.filter(S=>!C.includes(S));for(const S of N)if(p(_.id,S))return!1;const{conflictUpdates:T,addedAssignments:D,removedAssignments:G}=m(_.id,h,N);return T.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),D,G)?!1:(y(_.id,h,E,T)&&a(),!0)}const g=t.computed(()=>{const h=n.currentNode.value;return!h||!i?[]:o.value.nodes.filter(w=>w.id!==e&&!At(w.type)&&w.phase===h.phase&&!i.wouldCreateCycle(h.id,w.id)).map(w=>({value:w.id,label:w.name}))});return{...n,formData:u,branchOptions:g,updateBranchMembers:b}}const XR=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Fe(),o=_n("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:u,setInputs:f,inputsFieldNames:d,fieldNameValidator:p,updateBranchMembers:m}=WR(e.nodeId);async function y(b,g){await m(b,g)||(r.value+=1)}return(b,g)=>(t.openBlock(),t.createBlock(yt,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Co,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Ve.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(vt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:g[0]||(g[0]=h=>y("then",h))},null,8,["items"]),t.createVNode(vt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:g[1]||(g[1]=h=>y("else",h))},null,8,["items"]),t.createVNode(Kn,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),ZR=["innerHTML"],JR=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${bu}px`},offsetTop:{default:`${YN}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=ct(),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 VR;case"service_request":return RR;case"response":return DR;case"jq":return MR;case"static":return KR;case"property":return HR;case"exit":return YR;case"branch":return XR;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Ve.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":i.maxWidth,"offset-top":i.offsetTop,visible:i.visible,"z-index":t.unref(HN),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(xt)(o.value.type)},null,8,ZR)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:i.nodeId,class:"dk-node-properties-panel-form","node-id":i.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Bm,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),QR=Ae(JR,[["__scopeId","data-v-558814e2"]]),eD={class:"dk-editor-content"},tD={class:"main"},nD=Ae(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=ct();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",eD,[t.createVNode(t.unref(_R)),t.createElementVNode("div",tD,[t.createVNode(zV)]),t.createVNode(QR,{"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"]]),oD={key:0,class:"dk-editor-modal"},rD=Ae(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({"5fe3dd96":`${t.unref(zN)}px`,"480b2f5d":`${t.unref(_u)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=ct();iV(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=Je.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",oD,[t.createVNode(FV,{class:"nav",onBack:l}),t.createVNode(nD,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(RV,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-917708bb"]]),iD={class:"dk-flow-editor"},aD={class:"flow-panels-container"},lD={class:"overlay"},sD=Ae(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Qe.createI18n("en-us",it),{formData:r}=Xe(),i=n;function a(c,u,f){const d={...r.config,nodes:c};f!==void 0&&(d.resources=f);const p={...r.__ui_data,...u};r.config=d,r.__ui_data=p,i("change",d,p)}const{modalOpen:l,setPendingFitView:s}=Vu(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),(c,u)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",iD,[t.createElementVNode("div",aD,[t.createVNode(ms,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",lD,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:u[0]||(u[0]=d=>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(rD,{open:t.unref(l),"onUpdate:open":u[1]||(u[1]=d=>t.isRef(l)?l.value=d:null)},null,8,["open"])])}}}),[["__scopeId","data-v-d50e16c9"]]);function cD(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 dD(e){const n=e.path[2];return n==="output"||n==="outputs"}function uD(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function Gm(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,u)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",u,"name"]}),i.add(c)}),e.nodes.forEach((c,u)=>{const f="input"in c&&c.input!=null,d="inputs"in c&&uD(c.inputs);f&&d&&o.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["nodes",u,"inputs"]})});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,u)=>{for(const f of cD(c,u)){const d=f.value.split(".",1)[0];if(a.has(d)||o.addIssue({code:"custom",message:`Unknown node "${d}" in connection "${f.value}"`,path:f.path}),dD(f)){const p=`${f.nodeName}->${d}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${d}" and "${d}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${d}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${d}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${d}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const fD=J.z.enum(wu),pD=J.z.enum(io),qm=e=>io.includes(e),gs=J.z.enum(ku),zm=gs.options;J.z.union([gs,fD]);const mD=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,Hm=J.z.string().min(1).max(255).regex(mD,"Invalid node name (snake_case / kebab-case only)").refine(e=>!qm(e),"Name clashes with reserved implicit node").brand(),Wi=J.z.union([pD,Hm]),gD=J.z.string().min(1).brand(),hD=["then","else"];J.z.enum(hD);const zt=J.z.string().refine(e=>{if(Wi.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return Wi.safeParse(o).success&&gD.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),Ym=J.z.enum(Cu),Eo=J.z.object({type:J.z.string(),name:Hm,input:zt,inputs:J.z.record(J.z.string(),zt).nullish(),output:zt,outputs:J.z.record(J.z.string(),zt).nullish()}).loose(),yD=J.z.object({type:J.z.string(),name:J.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}),zm.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${zm.join(", ")}`})}),_D=Eo.extend({type:J.z.literal("call"),method:Ym.nullish(),ssl_server_name:J.z.string().min(1).nullish(),timeout:J.z.number().int().min(0).max(2147483646).nullish(),url:J.z.url(),inputs:J.z.object({body:zt,headers:zt,query:zt}).partial().nullish(),outputs:J.z.object({body:zt,headers:zt,status:zt}).partial().nullish()}).strict(),bD=Eo.extend({type:J.z.literal("exit"),status:J.z.number().int().min(200).max(599).nullish(),warn_headers_sent:J.z.boolean().nullish(),output:J.z.never().optional(),outputs:J.z.never().optional()}).strict(),wD=Eo.extend({type:J.z.literal("jq"),jq:J.z.string().min(1).max(10240),outputs:J.z.never().optional()}).strict(),kD=Eo.extend({type:J.z.literal("property"),content_type:J.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:J.z.string().min(1),inputs:J.z.never().optional(),outputs:J.z.never().optional()}).strict(),CD=Eo.extend({type:J.z.literal("static"),values:J.z.record(J.z.string(),J.z.unknown()),input:J.z.never().optional(),inputs:J.z.never().optional()}).strict(),ED=Eo.extend({type:J.z.literal("branch"),then:J.z.array(Wi).nullish(),else:J.z.array(Wi).nullish()}).strict(),ND=yD.pipe(J.z.discriminatedUnion("type",[_D,bD,wD,kD,CD,ED])),SD=J.z.record(J.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),J.z.string().min(1).max(4095)),vD=J.z.object({dictionary_name:J.z.string().default("kong_db_cache")}),xD=J.z.object({host:J.z.string().default("127.0.0.1"),port:J.z.number().int().min(0).max(65535).default(6379)}),AD=J.z.object({ip:J.z.string().default("127.0.0.1"),port:J.z.number().int().min(0).max(65535).default(6379)}),ID=J.z.object({host:J.z.string().optional().default("127.0.0.1"),port:J.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:J.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:J.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:J.z.number().int().min(0).max(2147483646).default(2e3),username:J.z.string().optional(),password:J.z.string().optional(),sentinel_username:J.z.string().optional(),sentinel_password:J.z.string().optional(),database:J.z.number().int().optional().default(0),keepalive_pool_size:J.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:J.z.number().int().min(0).max(2147483646).optional(),sentinel_master:J.z.string().optional(),sentinel_role:J.z.enum(["master","slave","any"]).optional(),sentinel_nodes:J.z.array(xD).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:J.z.array(AD).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:J.z.boolean().default(!1).optional(),ssl_verify:J.z.boolean().default(!1).optional(),server_name:J.z.string().optional(),cluster_max_redirections:J.z.number().int().default(5).optional(),connection_is_proxied:J.z.boolean().default(!1).optional(),timeout:J.z.number().int().optional(),sentinel_addresses:J.z.array(J.z.string()).min(1).optional(),cluster_addresses:J.z.array(J.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"]})}),TD=J.z.object({strategy:J.z.enum(["memory","redis"]).optional(),memory:vD,redis:ID}),PD=J.z.object({vault:SD.nullish(),cache:TD.nullish()});J.z.array(J.z.object({id:J.z.string()})),J.z.object({nodes:J.z.array(ND).min(1,"At least one node is required"),debug:J.z.boolean().nullish(),resources:PD.nullish()}).strict().superRefine((e,n)=>{Gm(e,io,n)});const Wm=gs.options,hs=J.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!qm(e),"Node name conflicts with reserved implicit node"),Ht=J.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"),No=J.z.object({type:J.z.string(),name:hs,input:Ht.nullish(),inputs:J.z.record(J.z.string(),Ht.nullish()).nullish(),output:Ht.nullish(),outputs:J.z.record(J.z.string(),Ht.nullish()).nullish()}).loose(),OD=J.z.object({type:J.z.string(),name:J.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}),Wm.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${Wm.join(", ")}`})}),$D=No.extend({type:J.z.literal("call"),method:Ym.nullish(),ssl_server_name:J.z.string().nullish(),timeout:J.z.union([J.z.number(),J.z.string()]).nullish(),url:J.z.string().nullish(),inputs:J.z.object({body:Ht.nullish(),headers:Ht.nullish(),query:Ht.nullish()}).partial().nullish(),outputs:J.z.object({body:Ht.nullish(),headers:Ht.nullish(),status:Ht.nullish()}).partial().nullish()}).strict(),BD=No.extend({type:J.z.literal("exit"),status:J.z.union([J.z.number(),J.z.string()]).nullish(),warn_headers_sent:J.z.boolean().nullish(),output:J.z.never().optional(),outputs:J.z.never().optional()}).strict(),VD=No.extend({type:J.z.literal("jq"),jq:J.z.string().nullish(),outputs:J.z.never().optional()}).strict(),RD=No.extend({type:J.z.literal("property"),content_type:J.z.string().nullish(),property:J.z.string().nullish(),inputs:J.z.never().optional(),outputs:J.z.never().optional()}).strict(),DD=No.extend({type:J.z.literal("static"),values:J.z.record(J.z.string(),J.z.unknown()).nullish(),input:J.z.never().optional(),inputs:J.z.never().optional()}).strict(),MD=No.extend({type:J.z.literal("branch"),then:J.z.array(hs).nullish(),else:J.z.array(hs).nullish()}).strict(),LD=OD.pipe(J.z.discriminatedUnion("type",[$D,BD,VD,RD,DD,MD])),FD=J.z.record(J.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),J.z.string().min(1).max(4095)),UD=J.z.object({dictionary_name:J.z.string().default("kong_db_cache")}),KD=J.z.object(),jD=J.z.object({strategy:J.z.enum(["memory","redis"]).optional(),memory:UD.optional(),redis:KD.optional()}),GD=J.z.object({vault:FD.nullish(),cache:jD.nullish()}),qD=J.z.object({nodes:J.z.array(LD).nullish(),debug:J.z.boolean().nullish(),resources:GD.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||Gm(e,io,n)}).nullish(),zD={class:"option-label"},HD=["innerHTML"],YD=Ae(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}=Qe.createI18n("en-us",it),o=e,r=t.inject(Lo.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(Lo.DATAKIT_M2,!1),{editorMode:a}=fl(),l=t.computed(()=>r&&c.value?a.value:"code"),s={flow:xe.DesignIcon,code:xe.CodeblockIcon},c=t.ref(!0),u=t.computed(()=>{const b=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return b[0].disabled=!c.value,b}),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 b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})});function d(){var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})}function p(){d()}function m(b){var w;d();const{success:g}=qD.safeParse(b);let h=g;if(!i&&h){const _=b;(w=_==null?void 0:_.resources)!=null&&w.vault&&(h=!1)}c.value=h}function y(b){var g;c.value=!1,(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!1,error:b})}return(b,g)=>{const h=t.resolveComponent("KTooltip");return t.openBlock(),t.createBlock(gd,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(sD,{key:0,"is-editing":o.isEditing,onChange:p},null,8,["is-editing"])):l.value==="code"?(t.openBlock(),t.createBlock(qN,{key:1,class:"code-editor",editing:o.isEditing,onChange:m,onError:y},null,8,["editing"])):t.createCommentVNode("",!0)]),_:2},1040)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:f.value},null,8,HD)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Ve.KSegmentedControl),{"model-value":l.value,options:u.value,"onUpdate:modelValue":g[0]||(g[0]=w=>a.value=w)},{"option-label":t.withCtx(({option:w})=>[t.createVNode(h,{disabled:c.value||w.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",zD,[(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"]]),Xm=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))},Zm=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},WD=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=He.useI18n(),l={prepareFormData:c=>{var f,d;const u=Yn(c);return(d=(f=u.config)==null?void 0:f.tools)!=null&&d.length&&u.config.tools.forEach(p=>{Zm(p.headers),Zm(p.query)}),u},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,d;const u=Yn(c);(d=(f=u.config)==null?void 0:f.tools)!=null&&d.length&&u.config.tools.forEach(p=>{Xm(p.headers),Xm(p.query)}),o("change",u)};return(c,u)=>(t.openBlock(),t.createBlock(yt,{config:l,data:c.data,schema:c.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(ht,{"as-child":"",name:"config","reset-label-path":"reset"},{tools:t.withCtx(({name:f})=>[t.createVNode(Mr,{appearance:"tabs","item-label":(d,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(Lr)]),_:1},8,["data","schema"]))}}),XD=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(je.AUTOFILL_SLOT,o==null?void 0:o[je.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ra,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(WD,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),ZD=Ae(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(u=>Object.keys(u)[0]==="config").config.fields,s=[],c=[];for(const u of l){const f=Object.keys(u)[0];u[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:l.data,schema:l.schema,tag:"div",onChange:a},{default:t.withCtx(()=>[t.createVNode(ht,{"as-child":"",name:"config",omit:r.value.nonRequired,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(Lr,{class:"ff-advanced-fields"},{default:t.withCtx(()=>[t.createVNode(ht,{"as-child":"",name:"config",omit:r.value.required,"reset-label-path":"reset"},null,8,["omit"])]),_:1})]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-3e5ed51d"]]),Jm=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:XD,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(je.AUTOFILL_SLOT,o==null?void 0:o[je.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(gd,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(ZD,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:YD,RequestCalloutForm:fk,ServiceProtectionForm:_C},Symbol.toStringTag,{value:"Module"})),JD={class:"kong-ui-entities-plugin-form"},QD={key:1,class:"entity-form"},eM={class:"plugin-config-empty-state"},tM=Ae(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 se,ye;const o=Object.keys(je.sharedForms),r=Object.keys(Jm);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}=pe.useAxios((se=a.config)==null?void 0:se.axiosRequestConfig),{parseSchema:s}=He.useSchemas({entityId:((ye=a.entityMap.focusedEntity)==null?void 0:ye.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:u,dismissField:f,isObjectEmpty:d,unsetNullForeignKey:p}=He.usePluginHelpers(),m=He.useExperimentalFreeForms(),{objectsAreEqual:y}=pe.useHelpers(),{i18n:{t:b}}=Fe(),g=X=>a.config.app==="konnect"?X.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?X.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):X,h=(X,ie)=>{let ae=`${a.config.apiBaseUrl}${Ze.form[a.config.app].entityGetOne}`;return ae=g(ae),ae=ae.replace(/{entity}/gi,X),ae=ae.replace(/{id}/gi,ie),ae},w=X=>{let ie=`${a.config.apiBaseUrl}${Ze.form[a.config.app].entityGetAll}`;return ie=g(ie),ie=ie.replace(/{entity}/gi,X),ie},_=(X,ie)=>{const ae=h(X,ie);return l.get(ae)},k=(X,ie)=>{const ae=w(X);return a.config.app==="konnect"?l.get(ae).then(ce=>{const{data:{data:de}}=ce;if(delete ie.size,delete ie.offset,de.length&&Object.keys(ie).length===1){const O=Object.keys(ie)[0],B=de.filter(F=>F[O]?!!F[O].toLowerCase().includes(ie[O].toLowerCase()):!1);ce.data.data=B}return ce}):l.get(ae,{params:ie})},E=(X,ie,ae)=>{const ce=w(X);if(a.config.app==="konnect"){const{size:de,offset:O,...B}=ie;if(X==="consumer_groups")return l.get(ce,{params:{size:1e3},signal:ae}).then(V=>{const{data:{data:Z}}=V;if(Z.length&&Object.keys(B).length===1){const K=Object.keys(B)[0],re=Z.filter(L=>L[K]?!!L[K].toLowerCase().includes(B[K].toLowerCase()):!1);V.data.data=re}return V});const F={size:de,offset:O};for(const V of Object.keys(B))F.filter={[V]:{contains:B[V]}};return l.get(ce,{params:F,signal:ae})}return l.get(ce,{params:ie,signal:ae})},C=(X,ie=50)=>{const ae=w(X);return l.get(ae,{params:{size:ie}})};t.provide(je.FORMS_API_KEY,{getOne:_,getAll:k,getAllV2:E,peek:C}),t.provide(je.FORMS_CONFIG,a.config);const N=t.ref(""),T=t.ref(""),D=t.ref(null),G=t.ref({}),j=t.reactive({}),S=t.reactive({}),ee=t.computed(()=>{var X;return(X=D.value)==null?void 0:X.options}),x=t.ref(!1),q=t.ref(),U=(X,ie)=>{x.value=X??"",q.value=ie},Q=X=>{var ie;(ie=q.value)==null||ie.call(q,X),x.value=!1},R=()=>{var B,F;const X={...a.schema},ie=S,ae=j,ce=Object.keys(ie),de={};if(!d(G.value))for(let V=0;V<((F=(B=G.value)==null?void 0:B.fields)==null?void 0:F.length);V++)X[G.value.fields[V].model]=G.value.fields[V];je.customFields.forEach(V=>{X[V]&&(X[V].fields.forEach(Z=>{Z.fields&&Z.fields.forEach(K=>{X[K.model]=K}),Z.model&&(X[Z.model]=Z)}),delete X[V])}),ce.forEach(V=>{var ue;if(!X[V]){V==="partials"&&(de[V]=ie[V]);return}const Z=X[V];let K=ie[V];const re=ae[V],L=Array.isArray(K)?"array":typeof K,$=Z?Z.valueType:null,z=Z?Z.valueArrayType:null,M=Z?Z.transform:null;if(K==null&&re==null&&!Z.submitWhenNull)return;if(Z){if($&&L!==$)switch($){case"array":L==="string"&&K.length&&(K=K.split(",").map(_e=>{if(_e=_e.trim(),z==="string")return String(_e);if(z==="number")return Number(_e);if(z==="boolean"){if(typeof _e=="string")return _e.toLowerCase()==="true"||_e==="1";if(typeof _e=="number")return _e===1}return _e})),(!K||!K.length)&&(K=Z.submitWhenNull?null:[]);break;case"number":K=Number(K);break;case"boolean":L==="string"&&(K=K.toLowerCase()==="true"||K==="1"),L==="number"&&(K=K===1);break;case"string":K=K==null?"":String(K);break}else $==="array"&&(!K||!K.length?K=Z.submitWhenNull?null:[]:((ue=Z.inputAttributes)==null?void 0:ue.type)==="number"&&(K=K.map(_e=>Number(_e))));if(Z.type==="array"&&Z.nestedFields){const _e=fe=>{Object.keys(fe).forEach(we=>{fe[we]&&typeof fe[we]=="object"&&!Array.isArray(fe[we])&&fe[we]!==null?_e(fe[we]):(fe[we]===void 0||fe[we]===null||typeof fe[we]=="number"&&isNaN(fe[we])||typeof fe[we]=="string"&&fe[we].trim().length===0)&&delete fe[we]})};K&&typeof K=="object"&&_e(K)}Z.type==="object-advanced"&&Z.fields&&K!==null&&(Object.entries(K).length===0?K=null:Object.keys(K).forEach(_e=>{Array.isArray(K[_e])||(K[_e]=K[_e].split(","))}))}let ne=c(V);if(Z.fieldNameHasDashes){const[_e,...fe]=ne.split(".").reverse();ne=[_e.replace(/_/g,"-"),...fe].reverse().join(".")}if($==="object-expand"){let _e;[ne,_e]=ne.split(".");let fe={};de[ne]&&(fe=de[ne]),fe[_e]=K,K=fe}re!==void 0&&K===""&&K!==re?de[ne]=$==="object"?{}:null:Z.type==="checklist"&&K===""?de[ne]=[]:K!==""&&(de[ne]=K),de[ne]=M?M(K):de[ne],p(ne,de)});const O=u(de);return T.value&&Object.assign(O,W.value),O},P=(X,ie={})=>{f(S,ie,X,a.editing),i("model-updated",{model:S,originalModel:j,data:R()})},v=(X,ie)=>{var de;const ae={[ie]:X};typeof((de=a.schema[ie])==null?void 0:de.modelTransformer)=="function"&&(ae[ie]=a.schema[ie].modelTransformer(X));const ce=Object.assign({},S,ae);Object.assign(S,ce),i("model-updated",{model:S,originalModel:j,data:R()})},I=X=>{i("validity-change",X)},A=(X,ie)=>{Object.keys(X).forEach(ae=>{var F,V;let ce=ie?`${ie}-${ae}`:ae,de=a.schema[ce];if(!de){const Z=ie?`${ie}-${ae.replace(/-/g,"_")}`:ae.replace(/-/g,"_");(F=a.schema[Z])!=null&&F.fieldNameHasDashes&&(ce=Z,de=a.schema[ce]),ie&&((V=a.schema[ie])==null?void 0:V.keyFromObject)===ae&&(ce=ie,de=a.schema[ce])}const O=X[ae],B=typeof O;if(de&&de.type==="object-advanced"&&!O){S[ce]={},j[ce]={};return}if(Array.isArray(O)){S[ce]=JSON.parse(JSON.stringify(O)),j[ce]=JSON.parse(JSON.stringify(O));return}if(B==="object"&&O&&!O.length)return A(O,ce);if(B==="object"&&O&&O.length&&de.type==="input"){S[ce]=O.join(", "),j[ce]=O.join(", ");return}S[ce]=O,j[ce]=O}),i("model-updated",{model:S,originalModel:j,data:R()})},W=t.shallowRef(a.record),H=X=>{W.value=X,i("model-updated",{model:{...S,...X},originalModel:j,data:R()})},te=t.ref(!0),oe=()=>{var X;if(a.record&&a.schema&&(A({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)&&A({consumer_id:a.record.consumer_id||a.record.consumer}),A(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)&&A({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&&P("redis",{partials:a.record.partials}),T.value?H(a.record):A(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const ie={};for(const ae in a.entityMap){const ce=a.entityMap[ae].id,de=a.entityMap[ae].idField,O=de==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(de).replace("_","-"));Object.prototype.hasOwnProperty.call(S,O)&&(ie[O]=ce)}A(ie)}if((X=a.entityMap.consumer)!=null&&X.id&&a.schema&&a.credential){const ie={};Object.prototype.hasOwnProperty.call(S,"consumer")&&(ie.consumer=a.entityMap.consumer.id),A(ie)}te.value=!1};return t.watch(te,X=>{i("loading",X)}),t.watch(()=>a.schema,(X,ie)=>{var ce,de;if(y(X||{},ie||{}))return;const ae=s(X,void 0,void 0,a.engine);Object.assign(S,ae.model),G.value={fields:(de=(ce=G.value)==null?void 0:ce.fields)==null?void 0:de.map(O=>({...O,disabled:O.disabled||!1}))},Object.assign(j,JSON.parse(JSON.stringify(ae.model))),T.value=a.engine?a.engine==="vfg"?void 0:Sa(ae.model.name,m)||"CommonForm":Sa(ae.model.name,m),N.value=je.getSharedFormName(ae.model.name),oe()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var X,ie;D.value=s(a.schema,void 0,void 0,a.engine),Object.assign(S,((X=D.value)==null?void 0:X.model)||{}),G.value=((ie=D.value)==null?void 0:ie.schema)||{},oe()}),(X,ie)=>{var ce;const ae=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",JD,[te.value?(t.openBlock(),t.createBlock(ae,{key:0,type:"form"})):S.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",QD,[T.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(Jm[T.value]),{key:0,"form-model":S,"form-options":ee.value,"form-schema":G.value,"is-editing":e.editing,model:e.record,"on-form-change":H,"on-model-updated":v,"on-validity-change":I,schema:e.rawSchema,onGlobalAction:ie[0]||(ie[0]=(de,O)=>X.$emit("globalAction",de,O))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(je.AUTOFILL_SLOT_NAME),fn:t.withCtx(de=>[de.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(vo.VaultSecretPickerProvider),t.mergeProps({key:0},de,{onOpen:U}),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(je.sharedForms)[N.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":S,"form-options":ee.value,"form-schema":G.value,"is-editing":e.editing,"on-model-updated":v,"on-partial-toggled":P,"show-new-partial-modal":de=>X.$emit("showNewPartialModal",de)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(je.AUTOFILL_SLOT_NAME),fn:t.withCtx(de=>[de.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(vo.VaultSecretPickerProvider),t.mergeProps({key:0},de,{onOpen:U}),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(je.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:S,options:ee.value,schema:G.value,onModelUpdated:v,onPartialToggled:P,onRefreshModel:R,onShowNewPartialModal:ie[1]||(ie[1]=de=>X.$emit("showNewPartialModal",de))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",eM,t.toDisplayString(t.unref(b)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ce=t.unref(Dt)[S.name])!=null&&ce.fieldRules&&(a.config.isNewOtelSchema||S.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(gw,{rules:t.unref(Dt)[S.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(je.AUTOFILL_SLOT_NAME),fn:t.withCtx(de=>[de.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(vo.VaultSecretPickerProvider),t.mergeProps({key:0},de,{onOpen:U}),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:x.value,onCancel:ie[2]||(ie[2]=()=>x.value=!1),onProceed:Q},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-3a5319dd"]]),nM={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",nM,[t.renderSlot(n.$slots,"default")]))}}),rM={class:"kong-ui-entities-plugin-form-container"},iM={key:0},aM={class:"plugin-form-actions"},lM=Ae(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 L;const o=n,r=e,i=So.useRouter(),{i18n:{t:a}}=He.useI18n(),{customSchemas:l,typedefs:s}=He.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=He.usePluginHelpers(),{getMessageFromError:u}=pe.useErrors(),{capitalize:f}=pe.useStringHelpers(),{objectsAreEqual:d}=pe.useHelpers(),{axiosInstance:p}=pe.useAxios((L=r.config)==null?void 0:L.axiosRequestConfig),m=t.ref(!1),y=t.computed(()=>!!r.pluginId),b=t.computed(()=>r.pluginId?pe.EntityBaseFormType.Edit:pe.EntityBaseFormType.Create),g=t.ref(void 0),h=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),_=t.ref(void 0),k=t.ref({}),E=t.ref(),C=t.ref();t.provide(fd,{redisType:E,redisPath:C,isEditing:y.value});const N=t.ref(!1),T=t.reactive({enabled:!0,protocols:[],tags:[]}),D=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),G=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&G.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const j=t.ref(""),S=t.computed(()=>{var z;if(w.value){let M=Ze.form[r.config.app].credential[b.value];return M=M.replace(/{resourceEndpoint}/gi,U.value),M}let $;return r.config.entityType&&r.config.entityId?$=Ze.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):$=Ze.form[r.config.app].edit.all,r.config.app==="konnect"&&((z=Dt[r.pluginType])!=null&&z.useUIData)?`${$}?__ui_data=true`:$}),ee=()=>{m.value=!m.value},x=t.computed(()=>{var _e,fe,we,Re,De,me,ge,le;const $=r.config.entityType==="consumers"&&r.config.entityId||((fe=(_e=_.value)==null?void 0:_e.consumer)==null?void 0:fe.id),z=r.config.entityType==="consumer_groups"&&r.config.entityId||((Re=(we=_.value)==null?void 0:we.consumer_group)==null?void 0:Re.id),M=r.config.entityType==="services"&&r.config.entityId||((me=(De=_.value)==null?void 0:De.service)==null?void 0:me.id),ne=r.config.entityType==="routes"&&r.config.entityId||((le=(ge=_.value)==null?void 0:ge.route)==null?void 0:le.id);if(!($||z||M||ne))return{global:{entity:Y.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ue={};return M&&(ue.service={entity:Y.PluginScope.SERVICE,entityEndpoint:"services",id:M,idField:bn.SERVICE}),ne&&(ue.route={entity:Y.PluginScope.ROUTE,entityEndpoint:"routes",id:ne,idField:bn.ROUTE}),$&&(ue.consumer={entity:Y.PluginScope.CONSUMER,entityEndpoint:"consumers",id:$,idField:bn.CONSUMER}),z&&(ue.consumer_group={entity:Y.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:z,idField:bn.CONSUMER_GROUP}),r.config.entityType&&(ue.focusedEntity={entity:Y.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:bn[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),ue}),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||b.value===pe.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}),U=t.computed(()=>{var M;const $=r.developer?"developers":"consumers",z=((M=qn[r.pluginType])==null?void 0:M.endpoint)||"/plugins";return`${$}/${r.config.entityId}${r.developer?"/credentials":""}${z}`}),Q=$=>{const z=Array.from(new Set($.map(M=>typeof M)));return z.length>1?"string":z[0]},R=($,z,M,ne)=>{var we,Re;let ue=z&&z.fields||[];const _e=l[r.pluginType],fe=(Re=(we=qn[r.pluginType])==null?void 0:we.schema)==null?void 0:Re.fields;return Array.isArray(ue)&&(ue=ue.reduce((De,me)=>{const ge=Object.keys(me)[0];return ge.match(/-/g)?De[ge.replace(/-/g,"_")]={...me[ge],fieldNameHasDashes:!0}:De[ge]=me[ge],De},{})),Object.keys(ue).sort().forEach(De=>{var Ne,be,he,Se,ve,$e,Me;const me=ue[De];me.type==="set"&&(me.type="array");const ge=$?`${$}-${De}`:`${De}`;if((Ne=_e==null?void 0:_e.fieldsToDelete)!=null&&Ne.includes(ge)){Kc(M,ge);return}if(Object.prototype.hasOwnProperty.call(me,"overwrite")||me.hidden)return;if(me.type==="table")return R(ge,me.schema,M);if(me.fields)return ne&&me.type==="record"?(M[ge]={type:"object",model:De,schema:{fields:Object.values(R(ge,me,{},!0))}},M):R(ge,me,M);if(M[ge]={id:ge,model:De},M[ge].type=me.type==="boolean"?"checkbox":"input",M[ge].required=me.required,M[ge].referenceable=me.referenceable,ge.startsWith("config-"))if(!ne&&me.type==="array"&&(j.value=ge),ne&&j.value&&ge.startsWith(j.value)){const Ie=ge.slice(j.value.length+1);M[ge].label=Ie.split("-").map(c).join(".")}else M[ge].label=c(ge);if(($==="config"||$.startsWith("config-"))&&(be=ue[De])!=null&&be.description&&(M[ge].help=wr.marked.parse(ue[De].description,{mangle:!1,headerIds:!1})),me.type==="map"){if(M[ge].type="object-advanced",M[ge].values=me.values,me.values.type==="array"){const{type:Ie}=me.values.elements||{};M[ge].schema={fields:[{schema:{fields:[{...Le,model:ge,valueArrayType:Ie==="integer"?"number":Ie||"string",inputAttributes:{...Le.inputAttributes,type:Ie==="integer"?"number":"text",inputMode:Ie==="integer"?"numeric":"text"}}]}}]}}else me.values.fields&&(M[ge].schema={fields:[{type:"object",model:"object",schema:{fields:me.values.fields.map(Ie=>{const Ue=Object.keys(Ie)[0];return{model:Ue,type:"input",label:f(Ue),placeholder:Ue,inputType:Ie[Ue].type}})}}]});return M}if(me.enum&&me.type==="array"&&(M[ge].type="checklist",M[ge].values=me.enum,M[ge].multi=!0,M[ge].multiSelect=!0),me.one_of&&me.type!=="array"&&(M[ge].type="select",M[ge].values=me.one_of,M[ge].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),me.elements&&me.type==="array"){const Ie=me.elements;if(M[ge].referenceable=Ie.referenceable,M[ge].elements=Ie,["string","integer","number"].includes(Ie.type)&&!Ie.one_of){const{id:Ue,help:Be,label:ke,hint:Oe,values:Ke,referenceable:ze,model:qe}=M[ge],{inputAttributes:jn,...Xi}=JSON.parse(JSON.stringify(Le));jn.type=Ie.type==="string"?"text":"number",M[ge]={id:Ue,help:Be,label:ke,hint:Oe,values:Ke,referenceable:ze,model:qe,inputAttributes:jn,...Xi}}}if(me.hint&&(M[ge].hint=me.hint),_e&&!_e.overwriteDefault&&Object.keys(_e).forEach(Ie=>{if(Ie===ge){const{help:Ue,label:Be,hint:ke,values:Oe,referenceable:Ke,elements:ze}=M[ge],{help:qe,...jn}=_e[Ie];M[ge]={help:Ue,label:Be,hint:ke,values:Oe,referenceable:Ke,elements:ze,...jn},typeof qe=="string"&&(M[ge].help=wr.marked.parse(qe,{mangle:!1,headerIds:!1}))}}),me.type==="array"&&((he=me.elements)==null?void 0:he.type)==="record"&&Array.isArray(me.elements.fields)){let Ie={};for(const Be of me.elements.fields)Ie={...Ie,...Be};const Ue=($e=(ve=(Se=M[ge])==null?void 0:Se.items)==null?void 0:ve.schema)==null?void 0:$e.fields;if(Array.isArray(Ue))for(const Be of M[ge].items.schema.fields){const ke=(Me=Ie[Be.model])==null?void 0:Me.description;Be.help===void 0&&typeof ke=="string"&&(Be.help=wr.marked.parse(ke,{mangle:!1,headerIds:!1}))}if(Ue||(M[ge].type="array",M[ge].newElementButtonLabelClasses="kong-form-new-element-button-label",M[ge].fieldClasses="array-card-container-wrapper",M[ge].itemContainerComponent="FieldArrayCardContainer",M[ge].items={type:"object",schema:{fields:Object.values(R(ge,me.elements,{},!0))}},M[ge].items.schema.fields.forEach(Be=>{var ke,Oe;for(const Ke of me.elements.fields){const ze=Object.keys(Ke)[0],qe=((Oe=(ke=Be.id)==null?void 0:ke.split)==null?void 0:Oe.call(ke,"-"))??[];if(qe[qe.length-1]===ze){Be.model=ze,Be.label=c(ze);break}}}),me.elements.type==="record"&&(M[ge].nestedFields=!0)),!M[ge].nestedFields)M[ge].items.default=()=>me.elements.fields.reduce((Be,ke)=>{const Oe=Object.keys(ke)[0];return Be[Oe]=ke[Oe].default,Be},{});else{const Be=(ke,Oe)=>{if(ke.type==="object"){ke.model&&(Oe[ke.model]={});for(const Ke of ke.schema.fields)Be(Ke,ke.model?Oe[ke.model]:Oe)}else ke.model&&(Oe[ke.model]=ke.default)};M[ge].items.default=()=>{const ke={};return Be(M[ge].items,ke),ke}}}if(w.value&&fe){for(let Ie=0;Ie<fe.length;Ie++)if(fe[Ie][ge]){M[ge]={...M[ge],...fe[Ie][ge]};break}}if(me.required&&me.type!=="boolean"&&(M[ge].required=!0,M[ge].selectOptions={hideNoneSelectedText:!0}),me.required&&me.type==="boolean"&&(M[ge].default=me.default??!1),me.default!=null&&typeof me.default!="object"&&me.default!=="function"&&(M[ge].default=me.default),M[ge].type==="input"){["string","number"].includes(typeof M[ge].default)&&r.config.app==="konnect"&&(M[ge].placeholder=`Default: ${M[ge].default===""?"<empty string>":M[ge].default}`);const{type:Ie}=me.elements||{};Ie&&(M[ge].valueArrayType=Ie==="integer"?"number":Ie),M[ge].inputType=me.type==="array"||me.type==="string"?me.encrypted?"password":"text":me.type}let le="string";me.enum?le=Q(me.enum):me.type==="boolean"?le="boolean":me.type==="number"||me.type==="integer"?(le="number",M[ge].inputType="number"):me.type==="array"?(le="array",M[ge].default=me.default,me.len_min>0&&(M[ge].submitWhenNull=!0)):me.type==="foreign"?le="object":me.default&&Array.isArray(me.default)?(le="array",M[ge].valueArrayType=Q(me.default)):me.default&&(le=typeof me.default),M[ge].valueType=le,me.fieldNameHasDashes&&(M[ge].fieldNameHasDashes=!0)}),M},P=()=>{var ge,le,Ne,be,he,Se,ve,$e,Me,Ie,Ue,Be;const $=((ge=Dt[r.pluginType])==null?void 0:ge.scope.includes(Y.PluginScope.SERVICE))??!0,z=((le=Dt[r.pluginType])==null?void 0:le.scope.includes(Y.PluginScope.ROUTE))??!0,M=((Ne=Dt[r.pluginType])==null?void 0:Ne.scope.includes(Y.PluginScope.CONSUMER))??!0,ne=r.config.disableConsumerGroupScope?!1:((be=Dt[r.pluginType])==null?void 0:be.scope.includes(Y.PluginScope.CONSUMER_GROUP))??!0,ue=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Se=(he=_.value)==null?void 0:he.consumer)!=null&&Se.id),_e=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!(($e=(ve=_.value)==null?void 0:ve.consumer_group)!=null&&$e.id),fe=r.config.entityType==="services"&&!!r.config.entityId||!!((Ie=(Me=_.value)==null?void 0:Me.service)!=null&&Ie.id),we=r.config.entityType==="routes"&&!!r.config.entityId||!!((Be=(Ue=_.value)==null?void 0:Ue.route)!=null&&Be.id),Re=[],De=(ke,Oe,Ke)=>ke?a("plugins.form.disable_source_scope_change",{scope:Ke}):Oe?a("plugins.form.disable_data_retrieving",{scope:Ke}):"",me=ke=>{var Oe,Ke;return((Ke=(Oe=r.scopedEntitiesPermissions)==null?void 0:Oe[ke])==null?void 0:Ke.canRetrieve)===!1};if($){const ke=me("service"),Oe="services",Ke=fe&&r.disableScopeSelection;Re.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:Oe,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:Ke||ke,disabledTooltip:De(Ke,ke,Oe)})}if(z){const ke=me("route"),Oe="routes",Ke=we&&r.disableScopeSelection;Re.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:Ke||ke,disabledTooltip:De(Ke,ke,Oe)})}if(M){const ke=me("consumer"),Oe="consumers",Ke=ue&&r.disableScopeSelection;Re.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:Ke||ke,disabledTooltip:De(Ke,ke,Oe)})}if(ne){const ke=me("consumer_group"),Oe="consumer_groups",Ke=_e&&r.disableScopeSelection;Re.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:Ke||ke,disabledTooltip:De(Ke,ke,Oe)})}if(Re.length){const ke=[...$?["service"]:[],...z?["route"]:[],...M?["consumer"]:[],...ne?["consumer_group"]:[]],Ke=ke.splice(ke.length-2,2).map(qe=>a(qe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${qe}.plural`)).join(`${ke.length>0?",":""} and/or `),ze=["Specific",[...ke.length>0?[ke.map(qe=>a(qe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${qe}.plural`)).join(", ")]:[],Ke].join(", ")].join(" ");q.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:ze,fields:[]}),q.selectionGroup.fields[1].fields=Re}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(q,l[r.pluginType].formSchema)},v=t.computed(()=>!d(D.fields,T,!0)),I=t.computed(()=>!K.value&&!N.value&&(b.value===pe.EntityBaseFormType.Create||v.value)),A=t.ref(!1),W=t.ref(),H=$=>{r.credential&&$.password&&($.password=""),D.fields.id=($==null?void 0:$.id)||void 0,W.value=$==null?void 0:$.ordering,Object.assign(T,D.fields),_.value=$,A.value=!0},te=t.ref({}),oe=$=>{var z;D.fields=$.model,D.fields.id=((z=_.value)==null?void 0:z.id)||void 0,Object.assign(T,$.originalModel),te.value=$.data,r.isWizardStep&&o("model-updated",{model:D.fields,data:$.data,resourceEndpoint:U.value})},se=t.ref(new Map),ye=t.computed(()=>[D.clientErrorMessage,D.serverErrorMessage].filter(Boolean).join("; ")),X=$=>{$.valid?se.value.delete($.model):se.value.set($.model,$.error),D.clientErrorMessage=[...se.value.entries()].map(([z,M])=>`${z}: ${typeof M=="string"?M:u(M)}`).join("; "),D.clientErrorMessage&&(D.serverErrorMessage="")};t.watch([x,A],($,z)=>{const M=$[0]!==z[0],ne=$[1],ue=z[1];if(!w.value&&b.value===pe.EntityBaseFormType.Edit&&(M||ne&&ne!==ue)){const _e=R("config",k.value,q);de.value&&(_e._isCustomPlugin=!0),E.value&&(_e._supported_redis_partial_type=E.value),h.value=_e}},{deep:!0});const ie=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},ae=t.computed(()=>{let $=`${r.config.apiBaseUrl}${Ze.form[r.config.app].validate}`;return r.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),$=$.replace(/{id}/gi,r.pluginId),$}),ce=t.computed(()=>{const $=r.config.entityType&&r.config.entityId&&!r.developer,z=w.value?Ze.form[r.config.app].credential[b.value]:Ze.form[r.config.app][b.value][$?"forEntity":"all"];let M=`${r.config.apiBaseUrl}${z}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{resourceEndpoint}/gi,U.value),M=M.replace(/{id}/gi,r.pluginId),M=M.replace(/{entityType}/gi,r.config.entityType||""),M=M.replace(/{entityId}/gi,r.config.entityId||""),M}),de=t.computed(()=>!Object.keys(Dt).includes(r.pluginType)),O=t.computed(()=>{const $=te.value;if(w.value){for(const z in Y.PluginScope){const M=Y.PluginScope[z];$[M]&&!$[M].id&&($[M]={id:r.config.entityId})}delete $.created_at}return te.value.partials&&C.value&&Kc($,C.value),$}),B=t.computed(()=>{const{__ui_data:$,...z}={...O.value};return z}),F=async()=>{if(!D.clientErrorMessage&&!r.isWizardStep)try{D.isReadonly=!0;let $;const z=JSON.parse(JSON.stringify(O.value)),M=l[r.pluginType];typeof(M==null?void 0:M.shamefullyTransformPayload)=="function"&&M.shamefullyTransformPayload({originalModel:T,model:D.fields,payload:z,schema:h.value}),!w.value&&!de.value&&await p.post(ae.value,z),b.value==="create"?$=await p.post(ce.value,z):b.value==="edit"&&($=r.config.app==="konnect"||E.value&&z.partials?await p.put(ce.value,Object.assign({ordering:W.value},z)):await p.patch(ce.value,z)),Object.assign(T,D.fields),o("update",$==null?void 0:$.data)}catch($){D.serverErrorMessage=u($),o("error",$)}finally{D.isReadonly=!1}},V=t.computed(()=>{var ne;const $=w.value?(ne=qn[r.pluginType])==null?void 0:ne.schemaEndpoint:r.pluginType,z=w.value?Ze.form[r.config.app].credentialSchema:Ze.form[r.config.app].pluginSchema;let M=`${r.config.apiBaseUrl}${z}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{plugin}/gi,$),M}),Z=t.ref(""),K=t.ref(!1),re=t.ref("");return t.onBeforeMount(async()=>{var $,z,M,ne;K.value=!0;try{if(w.value&&r.config.app==="konnect"){const ue=($=qn[r.pluginType])==null?void 0:$.schemaEndpoint,_e=hg[ue];Z.value=ue,h.value=R("",_e,{}),K.value=!1}else{const ue=r.schema??(await p.get(V.value)).data;if(g.value=ue,ue)if(w.value)h.value=R("",ue,{}),K.value=!1;else{const _e=ue.fields.find(we=>we.config);k.value=_e?_e.config:ue,ue.supported_partials&&(E.value=Object.keys(ue.supported_partials).find(we=>[Cr.REDIS_CE,Cr.REDIS_EE].includes(we)),C.value=(z=ue.supported_partials[E.value])==null?void 0:z[0]),P();const fe=(M=ue.fields.find(we=>we.protocols))==null?void 0:M.protocols;if(fe){const{default:we=[],elements:Re={}}=fe;q.protocols.default=we,q.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:we.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(ne=Re.one_of)!=null&&ne.length&&(q.protocols.values=Re.one_of.map(De=>({label:De,value:De})))}if(A.value||b.value===pe.EntityBaseFormType.Create){const we=R("config",k.value,q);E.value&&(we._supported_redis_partial_type=E.value),de.value&&(we._isCustomPlugin=!0),h.value=we}}}}catch(ue){console.error(ue),re.value=u(ue),o("error:fetch-schema",ue)}finally{K.value=!1}}),($,z)=>{const M=t.resolveComponent("KSkeleton"),ne=t.resolveComponent("KEmptyState"),ue=t.resolveComponent("KButton"),_e=t.resolveComponent("KTabs"),fe=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",rM,[K.value?(t.openBlock(),t.createBlock(M,{key:0,type:"form"})):re.value?(t.openBlock(),t.createBlock(ne,{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(pe.EntityBaseForm),{key:2,"can-submit":I.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(pe.SupportedEntityType).Plugin,"error-message":ye.value,"fetch-url":S.value,"form-fields":O.value,"is-readonly":D.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ie,"onFetch:error":z[4]||(z[4]=we=>$.$emit("error",we)),"onFetch:success":H,onLoading:z[5]||(z[5]=we=>$.$emit("loading",we))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",iM)):(t.openBlock(),t.createBlock(oM,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",aM,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ue,{key:0,appearance:"tertiary","data-testid":`plugin-${y.value?"edit":"create"}-form-view-configuration`,onClick:z[3]||(z[3]=we=>ee())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(ue,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${y.value?"edit":"create"}-form-cancel`,disabled:D.isReadonly,onClick:ie},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(ue,{appearance:"primary","data-testid":`plugin-${y.value?"edit":"create"}-form-submit`,disabled:!I.value||D.isReadonly,type:"submit",onClick:F},{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:F},null,32),t.createVNode(tM,{config:e.config,credential:w.value,editing:b.value===t.unref(pe.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":x.value,"raw-schema":g.value,record:_.value,schema:h.value,onGlobalAction:z[0]||(z[0]=(we,Re)=>$.$emit("globalAction",we,Re)),onLoading:z[1]||(z[1]=we=>N.value=we),onModelUpdated:oe,onShowNewPartialModal:z[2]||(z[2]=we=>$.$emit("showNewPartialModal",we)),onValidityChange:X},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(fe,{"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:ee},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(_e,{"data-testid":"form-view-configuration-slideout-tabs",tabs:G.value},{json:t.withCtx(()=>[t.createVNode(t.unref(pe.JsonCodeBlock),{config:e.config,"entity-record":B.value,"fetcher-url":ce.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(pe.YamlCodeBlock),{"entity-record":B.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(pe.TerraformCodeBlock),{"credential-type":Z.value,"entity-record":B.value,"entity-type":t.unref(pe.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-4e00808e"]]),sM={class:"kong-ui-entities-plugins-list"},cM={class:"button-row"},dM={class:"name-cell-wrapper"},uM={class:"info-wrapper"},fM={key:0,class:"info-name"},pM={key:1,class:"info-name"},mM={key:2,class:"info-type"},gM={key:1},hM=Ae(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,Z;const o=He.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=He.useI18n(),l=So.useRouter(),{axiosInstance:s}=pe.useAxios((V=i.config)==null?void 0:V.axiosRequestConfig),{hasRecords:c,handleStateChange:u}=pe.useTableState(()=>_.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),d=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var K;return((K=i.config)==null?void 0:K.entityType)==="consumers"}),m=t.computed(()=>{var K;return((K=i.config)==null?void 0:K.entityType)==="consumer_groups"}),y=i.config.app==="konnect"||pe.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),b=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(Z=i.config)!=null&&Z.entityId||(g.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),g.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},y&&(g.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),g.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const h=g,w=t.computed(()=>{var re,L,$,z;let K=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"?K=K.replace(/{controlPlaneId}/gi,((re=i.config)==null?void 0:re.controlPlaneId)||""):i.config.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,(L=i.config)!=null&&L.workspace?`/${i.config.workspace}`:"")),K.replace(/{entityType}/gi,(($=i.config)==null?void 0:$.entityType)||"").replace(/{entityId}/gi,((z=i.config)==null?void 0:z.entityId)||"")}),_=t.ref(""),k=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:g.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...g.enabled,label:a("search.filter.field.enabled")},name:g.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:C,fetcherCacheKey:N}=pe.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),T=()=>{_.value=""},D=()=>{N.value++},G=t.ref(null),j=K=>{var L,$,z,M;const re=[];return((L=K.route)!=null&&L.id||K.route_id)&&re.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),(($=K.service)!=null&&$.id||K.service_id)&&re.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((z=K.consumer)!=null&&z.id||K.consumer_id)&&re.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((M=K.consumer_group)!=null&&M.id||K.consumer_group_id)&&re.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),re.length?re:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},S=async(K,re)=>{var L;return K===null?!1:await((L=i.canRetrieveScopedEntity)==null?void 0:L.call(i,K,re.id))},ee=(K,re)=>{var $,z,M,ne,ue;let L=null;switch(K){case"route":L=($=re.route)==null?void 0:$.id;break;case"service":L=(z=re.service)==null?void 0:z.id;break;case"consumer":L=(M=re.consumer)==null?void 0:M.id;break;case"consumer_group":L=(ne=re.consumer_group)==null?void 0:ne.id;break}L&&((ue=i.config)!=null&&ue.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(K,L))},x=t.ref(!1),q=t.ref(null),U=t.computed(()=>{const K={action:"disable",id:"",name:""};if(q.value){const{enabled:re,id:L,name:$}=q.value;K.action=re?"disable":"enable",K.id=L,K.name=o.getDisplayName($)||L}return K}),Q=K=>{x.value=!0,q.value=K},R=()=>{x.value=!1,q.value=null},P=async()=>{var $,z,M,ne,ue,_e,fe,we;if(!await(($=i.canEdit)==null?void 0:$.call(i,q.value))||!q.value)return;let re=`${i.config.apiBaseUrl}${(ue=Ze.item[i.config.app])==null?void 0:ue[(z=i.config)!=null&&z.entityType?"forEntity":"all"].replace(/{entityType}/gi,((M=i.config)==null?void 0:M.entityType)||"").replace(/{entityId}/gi,((ne=i.config)==null?void 0:ne.entityId)||"")}`.replace(/{id}/gi,q.value.id||"");i.config.app==="konnect"?re=re.replace(/{controlPlaneId}/gi,((_e=i.config)==null?void 0:_e.controlPlaneId)||""):i.config.app==="kongManager"&&(re=re.replace(/\/{workspace}/gi,(fe=i.config)!=null&&fe.workspace?`/${i.config.workspace}`:""));const L=!q.value.enabled;try{const{data:Re}=((we=i.config)==null?void 0:we.app)==="konnect"?await s.put(re,{...q.value,enabled:L},{timeout:12e4}):await s.patch(re,{...q.value,enabled:L},{timeout:12e4});r("toggle-enabled",L,Re),q.value.enabled=L}catch(Re){r("error",Re)}},v=async(K,re)=>{const L=K.id;if(!await re(L)){r("copy:error",{entity:K,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:K,field:"id",message:a("copy.success",{val:L})})},I=async(K,re)=>{const L=JSON.stringify(K);if(!await re(L)){r("copy:error",{entity:K,message:a("errors.copy")});return}r("copy:success",{entity:K,message:a("copy.success_brief")})},A=async K=>{var L;await((L=i.canRetrieve)==null?void 0:L.call(i,K))&&l.push(i.config.getViewRoute(K))},W=K=>({label:a("actions.view"),to:i.config.getViewRoute(K)}),H=K=>({label:a("actions.edit"),to:i.config.getEditRoute(K)}),te=K=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(K)}),oe=t.ref(void 0),se=t.ref(!1),ye=t.ref(!1),X=t.ref(""),ie=pe.useDeleteUrlBuilder(i.config,w.value),ae=K=>{oe.value=K,se.value=!0},ce=()=>{se.value=!1},de=async()=>{var K,re,L;if((K=oe.value)!=null&&K.id){ye.value=!0;try{await s.delete(ie(oe.value.id)),ye.value=!1,se.value=!1,N.value++,r("delete:success",oe.value)}catch($){X.value=((L=(re=$.response)==null?void 0:re.data)==null?void 0:L.message)||$.message||a("errors.delete"),r("error",$)}finally{ye.value=!1}}},O=()=>{l.push(i.config.createRoute)};t.watch(C,K=>{var re,L,$;if(K.status===pe.FetcherStatus.Error){G.value={title:a("errors.general")},($=(L=(re=K.error)==null?void 0:re.response)==null?void 0:L.data)!=null&&$.message&&(G.value.message=K.error.response.data.message),r("error",K.error);return}G.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"))}),(K,re)=>{const L=t.resolveComponent("KButton"),$=t.resolveComponent("KEmptyState"),z=t.resolveComponent("KBadge"),M=t.resolveComponent("KTruncate"),ne=t.resolveComponent("KInputSwitch"),ue=t.resolveComponent("KDropdownItem"),_e=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",sM,[t.createVNode(t.unref(pe.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":b.value,"empty-state-options":B.value,"enable-entity-actions":"","error-message":G.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(N),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:_.value,"table-headers":t.unref(h),title:e.title,"title-tag":e.titleTag,onClearSearchInput:T,"onClick:row":re[4]||(re[4]=fe=>A(fe)),onSort:D,onState:t.unref(u)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(pe.EntityFilter),{modelValue:_.value,"onUpdate:modelValue":re[0]||(re[0]=fe=>_.value=fe),config:k.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",cM,[!d.value&&f.value?(t.openBlock(),t.createBlock(L,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:re[1]||(re[1]=fe=>K.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(pe.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(L,{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:fe})=>[t.createElementVNode("div",dM,[t.createVNode(t.unref(Ao.PluginIcon),{class:"plugin-icon",name:fe.name,size:24},null,8,["name"]),t.createElementVNode("div",uM,[fe.instance_name?(t.openBlock(),t.createElementBlock("span",fM,t.toDisplayString(fe.instance_name),1)):(t.openBlock(),t.createElementBlock("span",pM,t.toDisplayString(t.unref(o).getDisplayName(fe.name)),1)),fe.instance_name?(t.openBlock(),t.createElementBlock("span",mM,t.toDisplayString(t.unref(o).getDisplayName(fe.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:fe})=>[j(fe).length>0?(t.openBlock(),t.createBlock(M,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(j(fe),we=>(t.openBlock(),t.createBlock(t.unref(pe.PermissionsWrapper),{key:we.badgeText,"auth-function":()=>S(we.type,fe),"force-show":""},{default:t.withCtx(({isAllowed:Re})=>[t.createVNode(z,{class:t.normalizeClass(Re||"disabled"),onClick:t.withModifiers(De=>Re&&we.type&&ee(we.type,fe),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(we.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",gM,"-"))]),enabled:t.withCtx(({row:fe})=>[t.createVNode(t.unref(pe.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(fe)&&await e.canToggle(fe)),"force-show":""},{default:t.withCtx(({isAllowed:we})=>{var Re,De;return[t.createElementVNode("div",{onClick:re[3]||(re[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(ne,{disabled:!we,"disabled-tooltip-text":!we&&((De=(Re=e.config).getToggleDisabledTooltip)==null?void 0:De.call(Re,fe))||void 0,"model-value":fe.enabled,onClick:t.withModifiers(me=>we&&Q(fe),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:fe})=>[t.createVNode(z,{appearance:t.unref(Lc)(fe)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Lc)(fe)?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:fe})=>[t.createVNode(t.unref(pe.TableTags),{tags:fe},null,8,["tags"])]),actions:t.withCtx(({row:fe})=>[t.createVNode(_e,null,{default:t.withCtx(({copyToClipboard:we})=>[t.createVNode(ue,{"data-testid":"action-entity-copy-id",onClick:Re=>v(fe,we)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(_e,null,{default:t.withCtx(({copyToClipboard:we})=>[t.createVNode(ue,{"data-testid":"action-entity-copy-json",onClick:Re=>I(fe,we)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(pe.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(fe)},{default:t.withCtx(()=>[t.createVNode(ue,{"data-testid":"action-entity-view","has-divider":"",item:W(fe)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(pe.PermissionsWrapper),{"auth-function":()=>e.canEdit(fe)},{default:t.withCtx(()=>[t.createVNode(ue,{"data-testid":"action-entity-edit",item:H(fe)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(y)?(t.openBlock(),t.createBlock(t.unref(pe.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(fe)},{default:t.withCtx(()=>[te(fe)?(t.openBlock(),t.createBlock(ue,{key:0,"data-testid":"action-entity-config-dyn-order",item:te(fe)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(pe.PermissionsWrapper),{"auth-function":()=>e.canDelete(fe)},{default:t.withCtx(()=>[t.createVNode(ue,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:we=>ae(fe)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!_.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var fe;return[t.createVNode($,{"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(L,{key:0,"data-testid":"entity-create-button",onClick:O},{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(L,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:re[2]||(re[2]=we=>K.$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},[(fe=e.config)!=null&&fe.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(pe.EntityToggleModal),{action:U.value.action,"entity-id":U.value.id,"entity-name":U.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":P,visible:x.value,onCancel:R,onProceed:R},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(pe.EntityDeleteModal),{"action-pending":ye.value,description:t.unref(a)("delete.description"),"entity-name":oe.value&&(oe.value.instance_name||oe.value.name||oe.value.id),"entity-type":t.unref(pe.EntityTypes).Plugin,error:X.value,title:t.unref(a)("delete.title"),visible:se.value,onCancel:ce,onProceed:de},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-582a936c"]]),yM={class:"plugin-select-card-wrapper"},_M=["data-testid"],bM={class:"plugin-card-header"},wM={class:"plugin-card-title"},kM={key:0,class:"plugin-card-actions"},CM=["data-testid","title"],EM={key:0,class:"plugin-card-text"},NM={key:0},SM=["title"],ys=Ae(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=So.useRouter(),{i18n:{t:a}}=He.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))),u=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?u():d()},d=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===Y.PluginGroup.CUSTOM_PLUGINS),y=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},b=(h,w)=>{const _=r.config;r.config.app==="konnect"&&typeof _.getCustomEditRoute=="function"&&_.getCustomEditRoute&&i.push(_.getCustomEditRoute(h,w))},g=()=>{if(!s.value&&r.config.app==="konnect"){const h=r.config;p.value&&h.createCustomRoute?i.push(h.createCustomRoute):m.value&&u()}};return(h,w)=>{const _=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",yM,[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",bM,[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",kM,[t.createVNode(E,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(_,{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(oC)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(k,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(N=>b(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(k,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(y,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[t.createVNode(t.unref(Ao.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",EM,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",NM,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,SM)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,CM),t.createElementVNode("div",{class:"plugin-card-footer",onClick:g},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,_M)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),vM=Ae(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 y;const o=e,r=n,{i18nT:i,i18n:{t:a}}=He.useI18n(),{getMessageFromError:l}=pe.useErrors(),{axiosInstance:s}=pe.useAxios((y=o.config)==null?void 0:y.axiosRequestConfig),c=t.computed(()=>{var b;return d.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((b=o.plugin)==null?void 0:b.name)||a("delete.custom_plugin")})}),u=t.ref(!1),f=t.ref(""),d=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const b=o.plugin.customPluginType==="streaming"?Ze.select[o.config.app].streamingCustomPluginItem:Ze.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${b}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var b,g,h,w;if(u.value=!0,f.value="",!(!((b=o.plugin)!=null&&b.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(_){const{response:k}=_;(k==null?void 0:k.status)===400&&((w=(h=k.data)==null?void 0:h.message)!=null&&w.includes("plugin schema is currently in use"))?d.value=!0:f.value=l(_)}finally{u.value=!1}};return(b,g)=>{const h=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!d.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(pe.EntityDeleteModal),{key:0,"action-pending":u.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(pe.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[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":u.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:g[2]||(g[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(h,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[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"]]),xM={class:"custom-plugins-grid"},AM={class:"empty-state-title"},IM={class:"empty-state-description"},_s=310,TM=Ae(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}}=He.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=He.usePluginHelpers(),s=t.ref(!0),c=E=>{r("plugin-clicked",E)},u=t.computed(()=>{if(o.config.app==="kongManager")return[];const E=JSON.parse(JSON.stringify(o.pluginList))[Y.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:Y.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(E):E}),f=t.ref(!1),d=t.ref(null),p=E=>{f.value=!0,d.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var C;E&&(r("revalidate"),r("delete:success",((C=d.value)==null?void 0:C.name)||"")),f.value=!1,d.value=null},y=t.ref(_s),b=t.ref(null),g=t.ref(null),h=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${y.value}px`}:{}),w=t.ref(!1),_=()=>{y.value=Math.max(a(g.value),_s),k()},k=()=>{var E,C;(E=g.value)!=null&&E.length&&(w.value=l(b.value,(C=g.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),y.value=Math.max(a(g.value),_s),k(),window==null||window.addEventListener("resize",_)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",_)}),(E,C)=>{const N=t.resolveComponent("KEmptyState"),T=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",xM,[u.value.length?(t.openBlock(),t.createBlock(T,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=D=>s.value=D),class:"custom-plugins-collapse","data-testid":`${t.unref(Y.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(Y.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:b,class:"plugin-card-container",style:t.normalizeStyle(h.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(D,G)=>(t.openBlock(),t.createBlock(ys,{key:`plugin-card-${G}`,ref_for:!0,ref_key:"pluginCardRef",ref:g,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:D,onCustomPluginDelete:j=>p(D),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",AM,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",IM,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&d.value?(t.openBlock(),t.createBlock(vM,{key:2,config:e.config,plugin:d.value,onClosed:m,onProceed:C[1]||(C[1]=D=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),bs=310,Qm=Ae(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}}=He.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=He.usePluginHelpers(),c=t.ref(bs),u=t.ref(null),f=t.ref(null),d=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),bs),y()},y=()=>{var b,g;(b=f.value)!=null&&b.length&&(p.value=s(u.value,(g=f.value)==null?void 0:g.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),bs),y(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(b,g)=>{const h=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(h,{modelValue:o.value,"onUpdate:modelValue":g[0]||(g[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:u,class:"plugin-card-container",style:t.normalizeStyle(d.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock(ys,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:_=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[g[1]||(g[1]=t.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),PM={class:"plugin-select-grid"},OM={class:"empty-state-title"},$M={class:"empty-state-description"},ws=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}}=He.useI18n(),a=t.ref(!1),l=t.ref(Ns),s=u=>{r("plugin-clicked",u)},c=t.computed(()=>{const u=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete u[Y.PluginGroup.CUSTOM_PLUGINS],u});return(u,f)=>{const d=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",PM,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",OM,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",$M,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(Qm,{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(Es),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Qm,{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))])}}}),BM={class:"kong-ui-entities-plugin-select-form"},VM={class:"plugins-filter-input-container"},RM={key:0},DM={key:3,"aria-live":"polite",class:"plugins-results-container"},MM={"data-testid":"kong-tab"},LM={class:"tab-description"},FM={"data-testid":"custom-tab"},UM={class:"tab-description"},KM=Ae(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 v;const o=e,r=n,i=So.useRoute(),a=So.useRouter(),{i18n:{t:l}}=He.useI18n(),{pluginMetaData:s}=He.usePluginMetaData(),{getMessageFromError:c}=pe.useErrors(),{sortAlpha:u,objectsAreEqual:f}=pe.useHelpers(),d=t.ref(""),p=t.ref(!0),m=t.ref(!1),y=t.ref(""),b=t.ref([]),g=t.ref([]),h=t.ref({}),w=t.ref([]),{axiosInstance:_}=pe.useAxios((v=o.config)==null?void 0:v.axiosRequestConfig),k=t.computed(()=>h.value?Object.entries(h.value).filter(([I])=>I!==Y.PluginGroup.CUSTOM_PLUGINS).reduce((I,[,A])=>{for(const W of A)I[W.id]=W;return I},{}):{}),E=t.computed(()=>{var W;if(!h.value)return{};const I=d.value.toLowerCase(),A=JSON.parse(JSON.stringify(h.value));for(const H in h.value){const te=((W=h.value[H])==null?void 0:W.filter(oe=>oe.name.toLowerCase().includes(I)||oe.id.toLowerCase().includes(I)||oe.group.toLowerCase().includes(I)))||[];te.length?A[H]=te:delete A[H]}return A}),C=t.computed(()=>o.highlightedPluginIds.reduce((I,A)=>{const W=k.value[A];return W&&I.push(W),I},[])),N=t.computed(()=>Object.keys(E.value).length>0),T=t.computed(()=>Object.keys(h.value).length>0&&!N.value),D=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)}]:[]),G=t.computed(()=>{var A;let I=D.value.length&&((i==null?void 0:i.hash)||((A=D.value[0])==null?void 0:A.hash))||"";return I==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(I="#kong"),I}),j=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...b.value])].filter(I=>!o.ignoredPlugins.includes(I)).filter(I=>o.config.entityType&&(o.config.entityType==="services"&&s[I]&&!s[I].scope.includes(Y.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[I]&&!s[I].scope.includes(Y.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[I]&&!s[I].scope.includes(Y.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[I]&&!s[I].scope.includes(Y.PluginScope.CONSUMER))?!1:I).reduce((I,A)=>{var se;const W=s[A]&&s[A].name||A,H={...s[A],id:A,name:W,available:b.value.includes(A),disabledMessage:"",group:((se=s[A])==null?void 0:se.group)||Y.PluginGroup.CUSTOM_PLUGINS};H.group===Y.PluginGroup.CUSTOM_PLUGINS&&(H.customPluginType=g.value.find(ye=>ye.name===A)?"streaming":"schema"),o.disabledPlugins&&(H.disabledMessage=o.disabledPlugins[A]);const te=H.group||l("plugins.select.misc_plugins");let oe=I[te];return oe||(oe=[]),oe.push(H),oe.sort(u("name")),I[te]=oe,I},{}),S=t.computed(()=>{var A;let I=`${o.config.apiBaseUrl}${Ze.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?I=I.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(I=((A=o.config.gatewayInfo)==null?void 0:A.edition)==="community"?`${o.config.apiBaseUrl}${Ze.select[o.config.app].availablePluginsForOss}`:I.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),I}),ee=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let I=`${o.config.apiBaseUrl}${Ze.select[o.config.app].streamingCustomPlugins}`;return I=I.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),I}return null}),x=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let I=`${o.config.apiBaseUrl}${Ze.list[o.config.app].forEntity}`;return o.config.app==="konnect"?I=I.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(I=I.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),I.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),q=I=>{a.replace({hash:I,query:i.query})};t.watch(()=>o.disabledPlugins,(I,A)=>{!f(I,A)&&!p.value&&(h.value=j())}),t.watch(()=>o.ignoredPlugins,(I,A)=>{!f(I,A)&&!p.value&&(h.value=j())}),t.watch(p,I=>{r("loading",I)});const U=t.ref(!1),Q=t.ref(!1),R=t.ref(!1);t.onBeforeMount(async()=>{U.value=await o.canCreateCustomPlugin(),Q.value=await o.canEditCustomPlugin(),R.value=await o.canDeleteCustomPlugin()});const P=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var I,A;(A=(I=P.value)==null?void 0:I.input)==null||A.focus();try{const{data:W}=await _.get(S.value);if(o.config.app==="konnect"){const{names:H}=W;if(b.value=H||[],ee.value){const{data:te}=await _.get(ee.value);g.value=te.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:H}}=W;b.value=H?Object.keys(H):[]}}catch(W){m.value=!0,y.value=c(W)}if(x.value)try{const{data:{data:W}}=await _.get(x.value);if(W!=null&&W.length){const H=W.reduce((te,oe)=>(oe.name&&te.push(oe.name),te),[]);w.value=w.value.concat(H)}}catch{}m.value||(h.value=j()),p.value=!1}),(I,A)=>{const W=t.resolveComponent("KInput"),H=t.resolveComponent("KSkeletonBox"),te=t.resolveComponent("KSkeleton"),oe=t.resolveComponent("KEmptyState"),se=t.resolveComponent("KTooltip"),ye=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",BM,[t.createElementVNode("div",VM,[t.createVNode(W,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":A[0]||(A[0]=X=>d.value=X),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",RM,[t.createVNode(H,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(te,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(oe,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(y.value),1)]),_:1})):T.value&&d.value?(t.openBlock(),t.createBlock(oe,{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:d.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",DM,[D.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(ye,{key:0,modelValue:G.value,"onUpdate:modelValue":A[5]||(A[5]=X=>G.value=X),"data-testid":"plugins-tabs",tabs:D.value,onChange:q},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",MM,[t.createElementVNode("p",LM,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(ws,{config:e.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:A[1]||(A[1]=X=>I.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",FM,[t.renderSlot(I.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",UM,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(TM,{"can-create-custom-plugin":U.value,"can-delete-custom-plugin":R.value,"can-edit-custom-plugin":Q.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":A[2]||(A[2]=X=>I.$emit("delete-custom:success",X)),onPluginClicked:A[3]||(A[3]=X=>I.$emit("plugin-clicked",X)),onRevalidate:A[4]||(A[4]=()=>h.value=j())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(se,{"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(ws,{key:1,config:e.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:A[6]||(A[6]=X=>I.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-7b1adaaa"]]),jM={class:"datakit-config-card-canvas"},GM={class:"config-card-details-label","data-testid":"datakit-configuration-label"},qM={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},zM={class:"canvas-wrapper"},HM=Ae(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return Vu(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",jM,[t.createElementVNode("div",GM,[t.createVNode(r,null,{default:t.withCtx(()=>o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])),_:1,__:[0]})]),t.createElementVNode("div",qM,[t.createElementVNode("div",zM,[t.createVNode(ms,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),YM={class:"kong-ui-entity-plugin-config-card"},WM={class:"name-cell-wrapper"},XM={class:"info-name"},ZM={key:0},JM={key:0},QM={key:0},e2={key:0},t2={key:0},ks="config",n2=Ae(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}}=He.useI18n(),a=He.usePluginMetaData(),{setFieldType:l}=He.usePluginHelpers(),{getPropValue:s}=pe.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),u=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var T;let N=(T=Ze.item[r.config.app])==null?void 0:T[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const D=r.expandPartial?"&":"?";N=N.concat(`${D}__ui_data=true`)}return N}),d=t.computed(()=>{var D,G;const N={},T=((D=_.value)==null?void 0:D.fields)||[];for(let j=0;j<T.length;j++){const S=_.value.fields[j],ee=(G=Object.keys(S))==null?void 0:G[0];l(N,ee,S[ee])}return{...N,instance_name:{section:pe.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:pe.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:pe.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:pe.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:pe.ConfigurationSchemaSection.Basic,order:6},protocols:{type:pe.ConfigurationSchemaType.BadgeTag,section:pe.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var T,D,G;if(!((T=_.value)!=null&&T.fields))return[];const N=(D=_.value.fields)==null?void 0:D.find(j=>{var ee;return((ee=Object.keys(j))==null?void 0:ee[0])===ks});return((G=N==null?void 0:N[ks])==null?void 0:G.fields)||[]}),m=t.computed(()=>{var T,D;const N={};if(!p.value)return N;for(let G=0;G<((T=p.value)==null?void 0:T.length);G++){const j=p.value[G],S=(D=Object.keys(j))==null?void 0:D[0],ee=j[S];ee.required&&(N[S]={order:1}),l(N,S,ee)}return N}),y=N=>{var D;const T=(D=a.pluginMetaData[r.config.pluginType])==null?void 0:D.scope;return T?Object.fromEntries(Object.entries(N).filter(([G,j])=>j?!0:!(G==="service"&&!T.includes(Y.PluginScope.SERVICE)||G==="route"&&!T.includes(Y.PluginScope.ROUTE)||G==="consumer"&&!T.includes(Y.PluginScope.CONSUMER)||G==="consumer_group"&&!T.includes(Y.PluginScope.CONSUMER_GROUP)))):N},b=N=>Mo(N,"__ui_data"),{getMessageFromError:g}=pe.useErrors(),{axiosInstance:h}=pe.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),w=t.computed(()=>{var T,D;let N=`${r.config.apiBaseUrl}${Ze.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((T=r.config)==null?void 0:T.controlPlaneId)||""):r.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(D=r.config)!=null&&D.workspace?`/${r.config.workspace}`:"")),N=N.replace(/{plugin}/gi,r.config.pluginType),N}),_=t.ref({});pe.useSchemaProvider(_);const k=t.ref(!1),E=t.ref("");return t.onBeforeMount(async()=>{k.value=!0;try{const{data:N}=await h.get(w.value);_.value=N}catch(N){E.value=g(N),o("error:fetch-schema",N)}finally{k.value=!1}}),(N,T)=>{const D=t.resolveComponent("KSkeleton"),G=t.resolveComponent("KEmptyState"),j=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",YM,[k.value?(t.openBlock(),t.createBlock(D,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):E.value?(t.openBlock(),t.createBlock(G,{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(pe.EntityBaseConfigCard),{key:2,"code-block-record-formatter":b,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(pe.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":ks,"plugin-config-schema":m.value,"record-resolver":y,"onFetch:error":T[0]||(T[0]=S=>N.$emit("fetch:error",S)),"onFetch:success":T[1]||(T[1]=S=>N.$emit("fetch:success",S)),onLoading:T[2]||(T[2]=S=>N.$emit("loading",S))},t.createSlots({name:t.withCtx(S=>[t.createElementVNode("div",WM,[t.createVNode(t.unref(Ao.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",S),size:24},null,8,["name"]),t.createElementVNode("span",XM,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",S))),1)])]),consumer:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(pe.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(pe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(j,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",ZM,"–"))]),route:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(pe.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(pe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(j,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",JM,"–"))]),service:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(pe.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(pe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(j,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",QM,"–"))]),consumer_group:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(pe.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(pe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(j,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",e2,"–"))]),partials:t.withCtx(S=>{var ee,x,q,U,Q,R,P,v,I;return[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(pe.InternalLinkItem),{key:1,item:{key:(x=(ee=t.unref(s)("rowValue",S))==null?void 0:ee[0])==null?void 0:x.id,value:((U=(q=t.unref(s)("rowValue",S))==null?void 0:q[0])==null?void 0:U.id)+((R=(Q=t.unref(s)("rowValue",S))==null?void 0:Q[0])!=null&&R.name?"/"+((v=(P=t.unref(s)("rowValue",S))==null?void 0:P[0])==null?void 0:v.name):""),type:t.unref(pe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var A,W;return N.$emit("navigation-click",(W=(A=t.unref(s)("rowValue",S))==null?void 0:A[0])==null?void 0:W.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(j,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"partial-copy-uuid",text:(I=t.unref(s)("rowValue",S))==null?void 0:I[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",t2,"–"))]}),_:2},[u.value?{name:"config-card-item-nodes",fn:t.withCtx(S=>[t.createVNode(HM,{"plugin-data":S.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:r2}=He;Object.defineProperty(Te,"PluginGroup",{enumerable:!0,get:()=>Y.PluginGroup}),Object.defineProperty(Te,"PluginScope",{enumerable:!0,get:()=>Y.PluginScope}),Object.defineProperty(Te,"PluginIcon",{enumerable:!0,get:()=>Ao.PluginIcon}),Object.defineProperty(Te,"getPluginIconURL",{enumerable:!0,get:()=>Ao.getPluginIconURL}),Te.EXPERIMENTAL_FREE_FORM_PROVIDER=va,Te.EntityTypeIdField=bn,Te.FEATURE_FLAGS=Lo,Te.PLUGIN_GROUPS_COLLAPSE_STATUS=Ns,Te.PluginConfigCard=n2,Te.PluginForm=lM,Te.PluginGroupArray=Es,Te.PluginList=hM,Te.PluginPartialType=Cr,Te.PluginSelect=KM,Te.PluginSelectCard=ys,Te.PluginSelectGrid=ws,Te.TOASTER_PROVIDER=jc,Te.pluginEndpoints=Ze,Te.usePluginMetaData=o2,Te.useProvideExperimentalFreeForms=r2,Object.defineProperty(Te,Symbol.toStringTag,{value:"Module"})});
|