@kong-ui-public/entities-plugins 9.143.0 → 9.143.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/entities-plugins.es.js +9350 -9227
- package/dist/entities-plugins.umd.js +38 -38
- package/dist/style.css +1 -1
- package/dist/types/components/free-form/Datakit/DatakitForm.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/FlowEditor.vue.d.ts +8 -2
- package/dist/types/components/free-form/Datakit/flow-editor/FlowEditor.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsField.vue.d.ts +2 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsField.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsRecordField.vue.d.ts +2 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsRecordField.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormBranch.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormCache.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormCall.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormExit.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormJq.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormJsonToXml.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormProperty.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormResponse.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormServiceRequest.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormXmlToJson.vue.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/schema/compat.d.ts +8 -3
- package/dist/types/components/free-form/Datakit/schema/compat.d.ts.map +1 -1
- package/dist/types/components/free-form/Datakit/schema/strict.d.ts +18 -9
- package/dist/types/components/free-form/Datakit/schema/strict.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -1,51 +1,51 @@
|
|
|
1
|
-
(function(Ae,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@vueuse/core"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("@kong-ui-public/monaco-editor"),require("@kong-ui-public/monaco-editor/dist/runtime/style.css"),require("shiki"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@vueuse/core","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@kong-ui-public/monaco-editor","@kong-ui-public/monaco-editor/dist/runtime/style.css","shiki","zod","@kong-ui-public/entities-plugins-icon"],t):(Ae=typeof globalThis<"u"?globalThis:Ae||self,t(Ae["kong-ui-public-entities-plugins"]={},Ae.Vue,Ae["kong-ui-public-entities-shared"],Ae.marked,Ae.VueRouter,Ae["kong-ui-public-i18n"],Ae.entitiesPluginsMetadata,Ae.forms,Ae.entitiesVaults,null,Ae.core$1,Ae.KongIcons,Ae.Kongponents,Ae.entitiesRedisConfigurations,null,Ae.monaco,Ae.monacoEditor,null,Ae.shiki,Ae.zod,Ae.entitiesPluginsIcon))})(this,function(Ae,t,he,Br,On,Xe,W,Le,Mo,nF,Ye,ke,$e,Gs,oF,vg,Ag,rF,Ig,Y,$n){"use strict";var eF=Object.defineProperty;var tF=(Ae,t,he)=>t in Ae?eF(Ae,t,{enumerable:!0,configurable:!0,writable:!0,value:he}):Ae[t]=he;var it=(Ae,t,he)=>tF(Ae,typeof t!="symbol"?t+"":t,he);function Pg(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 ma=Pg(vg),Qe={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",configure:"Configure",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",deck:"decK"},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",search_plugins:"Search plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},labels:{new:"New"},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."},"ai-lakera-guard":{name:"AI Lakera Guard",description:"Audit and enforce safety policies on LLM requests and responses using the AI AWS Lakera plugin before they reach upstream LLMs."}},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",show_all:"Show all",view_more:"View more",view_less:"View less",filter:{title:"Filter Plugins",featured:"Featured",type:"Type"},list:{table_headers:{name:"Plugin",description:"Description"}},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"},plugin_status:{label:"Plugin status",text_on:"Enabled",text_off:"Disabled"},instance_name:{label:"Name",placeholder:"Enter a unique name",help:"A custom name for this plugin instance to help with 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:{label:"Tags",help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Tag1, Tag2, Tag3"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",disable_global_radio:"The plugin is set to 'Scoped' by default. To apply a plugin globally, please navigate to the global plugin list page.",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:"Show additional settings",hide:"Hide additional settings"}},field_rules:{at_least_one_of:"At least one of the following values is required: {parameters}.",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"These values must be used together: {parameters}.",mutually_exclusive:"Only one of these values can be used: {parameters}.",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{plugin_scope:{title:"Plugin scope",description:"Choose whether this plugin applies to all traffic (global) or is scoped to a specific service, route, or consumer."},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."},plugin_general_info:{description:"Add a name or tags to help you identify and manage this plugin later."}}},"free-form":{"ai-mcp-proxy":{default_acl_item_label:"Default ACL #{index}",tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request callout",by_lua_placeholder:"Enter Lua script here..."},datakit:{plugin_config:{title:"Flow editor"},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:"Build flows visually with a drag-and-drop editor for Datakit. Visualize node connections, inputs, and outputs as you design.",description_example:"Start with a use case:",detected_config_format:"Detected {format} configuration. Do you want to convert it to Datakit configuration?",detected_config_format_title:"Convert configuration",detected_config_format_confirm:"Convert",examples:{authenticate:"Authenticate Kong to a third-party service",vault:"Authenticate to a third-party service using vault secrets",combine:"Combine multiple API responses",cache:"Conditionally fetch or store cache data",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",canvas_panel:{request:"Request",response:"Response",node_count_plural:"{count} nodes",node_count_singular:"1 node"},panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"},cache:{title:"Cache configuration",add_button:"Add cache configuration",strategy_options:{memory:"Memory",redis:"Redis"},select_redis_configuration:"Select a shared Redis configuration",inline_config:"Inline config",inline_config_preview:"You are using a dedicated Redis configuration, This is a preview of your current setup, please edit it in code editor"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",remove_from_branch:"Remove from branch",delete:"Delete",view_docs:"View docs",done:"Done"},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The <code>jq</code> node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway-specific data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Configure static input values ahead of time",description:"Emits static values to be used as inputs for other nodes. The <code>static</code> node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Execute nodes based on matching input conditions",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Store and fetch cached data",description:"Store data into cache and fetch cached data from cache."},xml_to_json:{name:"xml_to_json",summary:"Transform XML to JSON",description:"Transform XML to JSON."},json_to_xml:{name:"json_to_xml",summary:"Transform JSON to XML",description:"Transform JSON to XML."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {minLength} and {maxLength} characters",reserved_node_name:'"{nodeName}" is a reserved node name',attributes_required:"Provide at least one of attributes_block_name or attributes_name_prefix"}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved."},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:"Shared configuration",description:"Select an existing shared Redis configuration or create a new one. Changes to this configuration automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed."},dedicated_configuration:{label:"Dedicated configuration",description:"Create a Redis configuration that is used only by this plugin. Changes won’t affect other plugins."},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}}},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(Ae,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@vueuse/core"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("@kong-ui-public/monaco-editor"),require("@kong-ui-public/monaco-editor/dist/runtime/style.css"),require("shiki"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@vueuse/core","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@kong-ui-public/monaco-editor","@kong-ui-public/monaco-editor/dist/runtime/style.css","shiki","zod","@kong-ui-public/entities-plugins-icon"],t):(Ae=typeof globalThis<"u"?globalThis:Ae||self,t(Ae["kong-ui-public-entities-plugins"]={},Ae.Vue,Ae["kong-ui-public-entities-shared"],Ae.marked,Ae.VueRouter,Ae["kong-ui-public-i18n"],Ae.entitiesPluginsMetadata,Ae.forms,Ae.entitiesVaults,null,Ae.core$1,Ae.KongIcons,Ae.Kongponents,Ae.entitiesRedisConfigurations,null,Ae.monaco,Ae.monacoEditor,null,Ae.shiki,Ae.zod,Ae.entitiesPluginsIcon))})(this,function(Ae,t,he,Vr,On,Xe,W,Le,Mo,AF,Ye,ke,$e,zs,IF,Rg,Dg,PF,Mg,Y,$n){"use strict";var SF=Object.defineProperty;var vF=(Ae,t,he)=>t in Ae?SF(Ae,t,{enumerable:!0,configurable:!0,writable:!0,value:he}):Ae[t]=he;var lt=(Ae,t,he)=>vF(Ae,typeof t!="symbol"?t+"":t,he);function Lg(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 ha=Lg(Rg),Qe={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",configure:"Configure",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",deck:"decK"},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",search_plugins:"Search plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},labels:{new:"New"},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."},"ai-lakera-guard":{name:"AI Lakera Guard",description:"Audit and enforce safety policies on LLM requests and responses using the AI AWS Lakera plugin before they reach upstream LLMs."}},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",show_all:"Show all",view_more:"View more",view_less:"View less",filter:{title:"Filter Plugins",featured:"Featured",type:"Type"},list:{table_headers:{name:"Plugin",description:"Description"}},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"},plugin_status:{label:"Plugin status",text_on:"Enabled",text_off:"Disabled"},instance_name:{label:"Name",placeholder:"Enter a unique name",help:"A custom name for this plugin instance to help with 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:{label:"Tags",help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Tag1, Tag2, Tag3"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",disable_global_radio:"The plugin is set to 'Scoped' by default. To apply a plugin globally, please navigate to the global plugin list page.",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:"Show additional settings",hide:"Hide additional settings"}},field_rules:{at_least_one_of:"At least one of the following values is required: {parameters}.",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"These values must be used together: {parameters}.",mutually_exclusive:"Only one of these values can be used: {parameters}.",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{plugin_scope:{title:"Plugin scope",description:"Choose whether this plugin applies to all traffic (global) or is scoped to a specific service, route, or consumer."},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."},plugin_general_info:{description:"Add a name or tags to help you identify and manage this plugin later."}}},"free-form":{"ai-mcp-proxy":{default_acl_item_label:"Default ACL #{index}",tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request callout",by_lua_placeholder:"Enter Lua script here..."},datakit:{plugin_config:{title:"Flow editor"},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:"Build flows visually with a drag-and-drop editor for Datakit. Visualize node connections, inputs, and outputs as you design.",description_example:"Start with a use case:",detected_config_format:"Detected {format} configuration. Do you want to convert it to Datakit configuration?",detected_config_format_title:"Convert configuration",detected_config_format_confirm:"Convert",examples:{authenticate:"Authenticate Kong to a third-party service",vault:"Authenticate to a third-party service using vault secrets",combine:"Combine multiple API responses",cache:"Conditionally fetch or store cache data",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 due to critical configuration errors or features not supported in the flow editor:<br/><code>{reason}</code>",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",canvas_panel:{request:"Request",response:"Response",node_count_plural:"{count} nodes",node_count_singular:"1 node"},panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"},cache:{title:"Cache configuration",add_button:"Add cache configuration",strategy_options:{memory:"Memory",redis:"Redis"},select_redis_configuration:"Select a shared Redis configuration",inline_config:"Inline config",inline_config_preview:"You are using a dedicated Redis configuration, This is a preview of your current setup, please edit it in code editor"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",remove_from_branch:"Remove from branch",delete:"Delete",view_docs:"View docs",done:"Done"},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The <code>jq</code> node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway-specific data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Configure static input values ahead of time",description:"Emits static values to be used as inputs for other nodes. The <code>static</code> node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Execute nodes based on matching input conditions",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Store and fetch cached data",description:"Store data into cache and fetch cached data from cache."},xml_to_json:{name:"xml_to_json",summary:"Transform XML to JSON",description:"Transform XML to JSON."},json_to_xml:{name:"json_to_xml",summary:"Transform JSON to XML",description:"Transform JSON to XML."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {minLength} and {maxLength} characters",reserved_node_name:'"{nodeName}" is a reserved node name',attributes_required:"Provide at least one of attributes_block_name or attributes_name_prefix"}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved."},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:"Shared configuration",description:"Select an existing shared Redis configuration or create a new one. Changes to this configuration automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed."},dedicated_configuration:{label:"Dedicated configuration",description:"Create a Redis configuration that is used only by this plugin. Changes won’t affect other plugins."},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}}},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 Ve(){const e=Xe.createI18n("en-us",Qe);return{i18n:e,i18nT:Xe.i18nTComponent(e)}}function
|
|
4
|
-
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Rn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},
|
|
3
|
+
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function Ve(){const e=Xe.createI18n("en-us",Qe);return{i18n:e,i18nT:Xe.i18nTComponent(e)}}function Hs(){const{capitalize:e}=he.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var g,y,h;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:he.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:he.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:he.ConfigurationSchemaType.Text,...u[p]};break;case"set":((g=m.elements)==null?void 0:g.type)==="string"&&(u[p]={type:he.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:he.ConfigurationSchemaType.BadgeMethod,...u[p]}:((y=m.elements)==null?void 0:y.type)==="string"?m.encrypted?u[p]={type:he.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:he.ConfigurationSchemaType.BadgeTag,...u[p]}:((h=m.elements)==null?void 0:h.type)==="record"&&(u[p]={type:he.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:he.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:he.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const g=m.split(".");g.reduce((y,h,_)=>y[h]||(y[h]=isNaN(g[_+1])?g.length-1===_?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",g=!1)=>{const y=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(h=>{h.match(y)&&delete u[h]}):g?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const g=u[m].$el;p=g.offsetHeight>p?g.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,g;if(u&&p){const y=(g=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:g.split(" ").length;return p>y}return!0}}}var Rr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Rr||{});const Dr=["Featured"],ya=[W.PluginGroup.AUTHENTICATION,W.PluginGroup.AI,W.PluginGroup.SECURITY,W.PluginGroup.TRAFFIC_CONTROL,W.PluginGroup.SERVERLESS,W.PluginGroup.ANALYTICS_AND_MONITORING,W.PluginGroup.TRANSFORMATIONS,W.PluginGroup.LOGGING,W.PluginGroup.DEPLOYMENT,W.PluginGroup.WEBSOCKET,W.PluginGroup.CUSTOM_PLUGINS],_a=[W.PluginGroup.AI,W.PluginGroup.ANALYTICS_AND_MONITORING,W.PluginGroup.AUTHENTICATION,W.PluginGroup.LOGGING,W.PluginGroup.SECURITY,W.PluginGroup.SERVERLESS,W.PluginGroup.TRAFFIC_CONTROL,W.PluginGroup.TRANSFORMATIONS,W.PluginGroup.CUSTOM_PLUGINS],ba={[W.PluginGroup.AUTHENTICATION]:!1,[W.PluginGroup.AI]:!1,[W.PluginGroup.SECURITY]:!1,[W.PluginGroup.TRAFFIC_CONTROL]:!1,[W.PluginGroup.SERVERLESS]:!1,[W.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[W.PluginGroup.TRANSFORMATIONS]:!1,[W.PluginGroup.LOGGING]:!1,[W.PluginGroup.DEPLOYMENT]:!1,[W.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 Vn=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Rn={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"},co={getColumnFields:Vn,tags:Rn,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}}}},Ys={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Rn}]},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}},{group:{required:!0,type:"string",hint:"The arbitrary group name to associate to the consumer."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ws={fields:[{username:{}},{password:{inputType:"password"}},{tags:Rn}]},Ug={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"}}]},Xs=t.defineComponent({name:"KeyAuthIdentityRealmsBase",__name:"Base",props:{modelValue:{default:[{scope:"cp",id:null,region:null}]},modelModifiers:{}},emits:["update:modelValue"],setup(e){const n=t.useModel(e,"modelValue"),{i18n:o}=De.useI18n(),{t:r}=o,i={value:"current-cp",label:r("custom_field.key_auth_identity_realms.cp_label"),group:r("custom_field.key_auth_identity_realms.cp_group_label")},a=t.inject(Le.FORMS_CONFIG),{axiosInstance:l}=he.useAxios(a==null?void 0:a.axiosRequestConfig),s=()=>{if((a==null?void 0:a.app)==="konnect"){const m=/\b(us|eu|au|me|in)\b/.exec((a==null?void 0:a.apiBaseUrl)||"");if(m)return{region:m[1]}}return{}},c=t.ref(!0),d=t.ref([i]),f=async()=>{if((a==null?void 0:a.app)==="konnect")try{c.value=!0;let m=`${a==null?void 0:a.apiBaseUrl}/v1/realms`;const g=[];do{const y=await l.get(m);y&&y.data&&y.data.data&&g.push(...y.data.data.map(h=>({value:h.id,label:h.name,group:r("custom_field.key_auth_identity_realms.realm_group_label")}))),m=y.data.meta.next?`${a==null?void 0:a.apiBaseUrl}${y.data.meta.next}`:null}while(m);d.value=[i,...g]}catch(m){console.error("Failed to fetch Konnect realms",m)}finally{c.value=!1}},u=t.computed(()=>n.value.map(m=>m.id||"current-cp")),p=m=>{const g=m.includes("current-cp")?[{scope:"cp",id:null,region:null}]:[],y=n.value.filter(({scope:k})=>k!=="cp").map(({id:k})=>k),h=m.filter(k=>k!=="current-cp"),b=(y.length!==h.length||y.some(k=>!h.includes(k))?h.filter(k=>!y.includes(k)):h).map(k=>({...s(),scope:"realm",id:k}));n.value=[...g,...b]};return t.onMounted(()=>{f()}),(m,g)=>{const y=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(y,{items:d.value,loading:c.value,"model-value":u.value,"onUpdate:modelValue":p},null,8,["items","loading","model-value"])}}}),Kg={class:"field-wrapper"},jg=t.defineComponent({__name:"VfgAdapter",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}=Le.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:s=>{i("modelUpdated",s.value,s.model)}});return n({clearValidationErrors:a}),(s,c)=>(t.openBlock(),t.createElementBlock("div",Kg,[t.createVNode(Xs,{modelValue:t.unref(l),"onUpdate:modelValue":c[0]||(c[0]=d=>t.isRef(l)?l.value=d:null)},null,8,["modelValue"])]))}}),ve=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},Gg=ve(jg,[["__scopeId","data-v-269e85ed"]]),Zs={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
4
|
+
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Rn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},qg=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(Gg):null}}},zg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",encrypted:!0,unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Js={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:Rn}]},
|
|
6
|
+
send it as part of the response body.`}},{tags:Rn}]},Hg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{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"}}]},Yg={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:Rn}]},
|
|
9
|
+
this credential. If left out, will be auto-generated.`}},{tags:Rn}]},Wg={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"}}]},Qs={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
|
|
10
10
|
will be generated for you.`,inputType:"text",encrypted:!0}},{client_secret:{submitWhenNull:!1,hint:`You can optionally set your own unique client_secret. If missing,
|
|
11
11
|
it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:co.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:co.tags}]},
|
|
13
|
-
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Rn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Kg=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)}}:{},jg={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},It={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",freeformRenderRules:{dependencies:{"config.brute_force_protection.redis":["config.brute_force_protection.strategy","redis"]}},...W.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...W.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",...W.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...W.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"]]},...W.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"]]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...W.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",...W.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",...W.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"]]},freeformRenderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}},...W.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",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...W.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,...W.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,...W.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,...W.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,...W.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,...W.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,...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.access_logs_endpoint","config.traces_endpoint","config.logs_endpoint"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...W.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"]]},...W.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",...W.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",...W.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...W.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,...W.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,...W.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,...W.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"]]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...W.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,...W.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,...W.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,...W.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,...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]},"ai-lakera-guard":{descriptionKey:"plugins.meta.ai-lakera-guard.description",nameKey:"plugins.meta.ai-lakera-guard.name",useLegacyForm:!0,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-lakera-guard"]}},uo={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:zs,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Vn(zs),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Hs,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Vn(Hs)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Ws,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Vn(Ws)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Js,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Vn(Js)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Zs,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Vn(Zs)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Xs,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Vn(Xs)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Lg,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Gg={acls:Tg,basicauth_credentials:Og,keyauth_credentials:Dg,keyauth_enc_credentials:jg,oauth2_credentials:Ug,hmacauth_credentials:Mg,jwt_secrets:Fg},qg=()=>{const{i18n:{t:e}}=Ve(),n={},o={};for(const[i,a]of Object.entries(It))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(uo))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:uo,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},Lo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},zg={"config-prompts-prepend":{...Lo,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":{...Lo,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"}]}}}},Hg={"config-templates":{...Lo,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"}]}}}},Yg={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)}},Qs=e=>e.split(",").map(n=>n.trim()).filter(Boolean),Wg={shamefullyTransformPayload:({payload:e})=>{var n;(n=e==null?void 0:e.config)!=null&&n.collection_acl_config&&Object.values(e.config.collection_acl_config).forEach(o=>{typeof(o==null?void 0:o.allow)=="string"&&(o.allow=Qs(o.allow)),typeof(o==null?void 0:o.deny)=="string"&&(o.deny=Qs(o.deny))})}},Xg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Zg={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:co.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"}},Re={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"},Dr={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Jg={"config-metrics":{...Dr,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"}]}}}},Qg={"config-functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},eh={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},th={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},nh={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},oh={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},rh={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},ec=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:co.fields.arrayItems({newElementButtonLabel:"Add"})}),rh),Mr={"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"}},ih={"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":{}},ah=["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]:co.fields.arrayItems({newElementButtonLabel:"Add"})}),ih),tc={"config-add-json":{...Re,label:"Config.Add.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Re,label:"Config.Append.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Re,label:"Config.Remove.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Re,label:"Config.Rename.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Re,label:"Config.Replace.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},lh={...tc,"config-allow-json":{...Re,label:"Config.Allow.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Re,label:"Config.Transform.Functions",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Re,label:"Config.Transform.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},sh={"config-rules":{...Lo,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"}]}}}},ch={"config-session_redis_cluster_nodes":{...Lo,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"}]}}}},dh={"config-flow-functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},uh={"config-message-functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},fh={"config-metrics":{...Dr,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"]}]}}}},ph={"config-metrics":{...Dr,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"]}]}}}},mh={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},gh={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var nc=typeof global=="object"&&global&&global.Object===Object&&global,hh=typeof self=="object"&&self&&self.Object===Object&&self,qt=nc||hh||Function("return this")(),Pt=qt.Symbol,oc=Object.prototype,yh=oc.hasOwnProperty,_h=oc.toString,Fo=Pt?Pt.toStringTag:void 0;function bh(e){var n=yh.call(e,Fo),o=e[Fo];try{e[Fo]=void 0;var r=!0}catch{}var i=_h.call(e);return r&&(n?e[Fo]=o:delete e[Fo]),i}var wh=Object.prototype,kh=wh.toString;function Ch(e){return kh.call(e)}var Eh="[object Null]",Nh="[object Undefined]",rc=Pt?Pt.toStringTag:void 0;function Dn(e){return e==null?e===void 0?Nh:Eh:rc&&rc in Object(e)?bh(e):Ch(e)}function tn(e){return e!=null&&typeof e=="object"}var xh="[object Symbol]";function _a(e){return typeof e=="symbol"||tn(e)&&Dn(e)==xh}function ic(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 Rt=Array.isArray,ac=Pt?Pt.prototype:void 0,lc=ac?ac.toString:void 0;function sc(e){if(typeof e=="string")return e;if(Rt(e))return ic(e,sc)+"";if(_a(e))return lc?lc.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Mn(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function Sh(e){return e}var vh="[object AsyncFunction]",Ah="[object Function]",Ih="[object GeneratorFunction]",Ph="[object Proxy]";function Lr(e){if(!Mn(e))return!1;var n=Dn(e);return n==Ah||n==Ih||n==vh||n==Ph}var ba=qt["__core-js_shared__"],cc=function(){var e=/[^.]+$/.exec(ba&&ba.keys&&ba.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Th(e){return!!cc&&cc in e}var Oh=Function.prototype,$h=Oh.toString;function Ln(e){if(e!=null){try{return $h.call(e)}catch{}try{return e+""}catch{}}return""}var Bh=/[\\^$.*+?()[\]{}|]/g,Vh=/^\[object .+?Constructor\]$/,Rh=Function.prototype,Dh=Object.prototype,Mh=Rh.toString,Lh=Dh.hasOwnProperty,Fh=RegExp("^"+Mh.call(Lh).replace(Bh,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Uh(e){if(!Mn(e)||Th(e))return!1;var n=Lr(e)?Fh:Vh;return n.test(Ln(e))}function Kh(e,n){return e==null?void 0:e[n]}function Fn(e,n){var o=Kh(e,n);return Uh(o)?o:void 0}var wa=Fn(qt,"WeakMap"),dc=Object.create,jh=function(){function e(){}return function(n){if(!Mn(n))return{};if(dc)return dc(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 qh(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var zh=800,Hh=16,Yh=Date.now;function Wh(e){var n=0,o=0;return function(){var r=Yh(),i=Hh-(r-o);if(o=r,i>0){if(++n>=zh)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function Xh(e){return function(){return e}}var Fr=function(){try{var e=Fn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Zh=Fr?function(e,n){return Fr(e,"toString",{configurable:!0,enumerable:!1,value:Xh(n),writable:!0})}:Sh,Jh=Wh(Zh);function Qh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var ey=9007199254740991,ty=/^(?:0|[1-9]\d*)$/;function ka(e,n){var o=typeof e;return n=n??ey,!!n&&(o=="number"||o!="symbol"&&ty.test(e))&&e>-1&&e%1==0&&e<n}function uc(e,n,o){n=="__proto__"&&Fr?Fr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function Ca(e,n){return e===n||e!==e&&n!==n}var ny=Object.prototype,oy=ny.hasOwnProperty;function Ea(e,n,o){var r=e[n];(!(oy.call(e,n)&&Ca(r,o))||o===void 0&&!(n in e))&&uc(e,n,o)}function Uo(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?uc(o,s,c):Ea(o,s,c)}return o}var fc=Math.max;function ry(e,n,o){return n=fc(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=fc(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 iy=9007199254740991;function Na(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=iy}function xa(e){return e!=null&&Na(e.length)&&!Lr(e)}var ay=Object.prototype;function Ur(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||ay;return e===o}function ly(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var sy="[object Arguments]";function pc(e){return tn(e)&&Dn(e)==sy}var mc=Object.prototype,cy=mc.hasOwnProperty,dy=mc.propertyIsEnumerable,Kr=pc(function(){return arguments}())?pc:function(e){return tn(e)&&cy.call(e,"callee")&&!dy.call(e,"callee")};function uy(){return!1}var gc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,hc=gc&&typeof module=="object"&&module&&!module.nodeType&&module,fy=hc&&hc.exports===gc,yc=fy?qt.Buffer:void 0,py=yc?yc.isBuffer:void 0,Ko=py||uy,my="[object Arguments]",gy="[object Array]",hy="[object Boolean]",yy="[object Date]",_y="[object Error]",by="[object Function]",wy="[object Map]",ky="[object Number]",Cy="[object Object]",Ey="[object RegExp]",Ny="[object Set]",xy="[object String]",Sy="[object WeakMap]",vy="[object ArrayBuffer]",Ay="[object DataView]",Iy="[object Float32Array]",Py="[object Float64Array]",Ty="[object Int8Array]",Oy="[object Int16Array]",$y="[object Int32Array]",By="[object Uint8Array]",Vy="[object Uint8ClampedArray]",Ry="[object Uint16Array]",Dy="[object Uint32Array]",qe={};qe[Iy]=qe[Py]=qe[Ty]=qe[Oy]=qe[$y]=qe[By]=qe[Vy]=qe[Ry]=qe[Dy]=!0,qe[my]=qe[gy]=qe[vy]=qe[hy]=qe[Ay]=qe[yy]=qe[_y]=qe[by]=qe[wy]=qe[ky]=qe[Cy]=qe[Ey]=qe[Ny]=qe[xy]=qe[Sy]=!1;function My(e){return tn(e)&&Na(e.length)&&!!qe[Dn(e)]}function Sa(e){return function(n){return e(n)}}var _c=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,jo=_c&&typeof module=="object"&&module&&!module.nodeType&&module,Ly=jo&&jo.exports===_c,va=Ly&&nc.process,fo=function(){try{var e=jo&&jo.require&&jo.require("util").types;return e||va&&va.binding&&va.binding("util")}catch{}}(),bc=fo&&fo.isTypedArray,Aa=bc?Sa(bc):My,Fy=Object.prototype,Uy=Fy.hasOwnProperty;function wc(e,n){var o=Rt(e),r=!o&&Kr(e),i=!o&&!r&&Ko(e),a=!o&&!r&&!i&&Aa(e),l=o||r||i||a,s=l?ly(e.length,String):[],c=s.length;for(var d in e)(n||Uy.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||ka(d,c)))&&s.push(d);return s}function kc(e,n){return function(o){return e(n(o))}}var Ky=kc(Object.keys,Object),jy=Object.prototype,Gy=jy.hasOwnProperty;function Cc(e){if(!Ur(e))return Ky(e);var n=[];for(var o in Object(e))Gy.call(e,o)&&o!="constructor"&&n.push(o);return n}function Ia(e){return xa(e)?wc(e):Cc(e)}function qy(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var zy=Object.prototype,Hy=zy.hasOwnProperty;function Yy(e){if(!Mn(e))return qy(e);var n=Ur(e),o=[];for(var r in e)r=="constructor"&&(n||!Hy.call(e,r))||o.push(r);return o}function Pa(e){return xa(e)?wc(e,!0):Yy(e)}var Wy=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Xy=/^\w*$/;function Zy(e,n){if(Rt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||_a(e)?!0:Xy.test(e)||!Wy.test(e)||n!=null&&e in Object(n)}var Go=Fn(Object,"create");function Jy(){this.__data__=Go?Go(null):{},this.size=0}function Qy(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var e_="__lodash_hash_undefined__",t_=Object.prototype,n_=t_.hasOwnProperty;function o_(e){var n=this.__data__;if(Go){var o=n[e];return o===e_?void 0:o}return n_.call(n,e)?n[e]:void 0}var r_=Object.prototype,i_=r_.hasOwnProperty;function a_(e){var n=this.__data__;return Go?n[e]!==void 0:i_.call(n,e)}var l_="__lodash_hash_undefined__";function s_(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Go&&n===void 0?l_:n,this}function Un(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])}}Un.prototype.clear=Jy,Un.prototype.delete=Qy,Un.prototype.get=o_,Un.prototype.has=a_,Un.prototype.set=s_;function c_(){this.__data__=[],this.size=0}function jr(e,n){for(var o=e.length;o--;)if(Ca(e[o][0],n))return o;return-1}var d_=Array.prototype,u_=d_.splice;function f_(e){var n=this.__data__,o=jr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():u_.call(n,o,1),--this.size,!0}function p_(e){var n=this.__data__,o=jr(n,e);return o<0?void 0:n[o][1]}function m_(e){return jr(this.__data__,e)>-1}function g_(e,n){var o=this.__data__,r=jr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function nn(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}nn.prototype.clear=c_,nn.prototype.delete=f_,nn.prototype.get=p_,nn.prototype.has=m_,nn.prototype.set=g_;var qo=Fn(qt,"Map");function h_(){this.size=0,this.__data__={hash:new Un,map:new(qo||nn),string:new Un}}function y_(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Gr(e,n){var o=e.__data__;return y_(n)?o[typeof n=="string"?"string":"hash"]:o.map}function __(e){var n=Gr(this,e).delete(e);return this.size-=n?1:0,n}function b_(e){return Gr(this,e).get(e)}function w_(e){return Gr(this,e).has(e)}function k_(e,n){var o=Gr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function on(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}on.prototype.clear=h_,on.prototype.delete=__,on.prototype.get=b_,on.prototype.has=w_,on.prototype.set=k_;var C_="Expected a function";function Ta(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(C_);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(Ta.Cache||on),o}Ta.Cache=on;var E_=500;function N_(e){var n=Ta(e,function(r){return o.size===E_&&o.clear(),r}),o=n.cache;return n}var x_=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,S_=/\\(\\)?/g,v_=N_(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(x_,function(o,r,i,a){n.push(i?a.replace(S_,"$1"):r||o)}),n});function Oa(e){return e==null?"":sc(e)}function po(e,n){return Rt(e)?e:Zy(e,n)?[e]:v_(Oa(e))}function qr(e){if(typeof e=="string"||_a(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function $a(e,n){n=po(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[qr(n[o++])];return o&&o==r?e:void 0}function Ba(e,n,o){var r=e==null?void 0:$a(e,n);return r===void 0?o:r}function Va(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var Ec=Pt?Pt.isConcatSpreadable:void 0;function A_(e){return Rt(e)||Kr(e)||!!(Ec&&e&&e[Ec])}function I_(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=A_),i||(i=[]);++a<l;){var s=e[a];o(s)?Va(i,s):i[i.length]=s}return i}function P_(e){var n=e==null?0:e.length;return n?I_(e):[]}function Nc(e){return Jh(ry(e,void 0,P_),e+"")}var Ra=kc(Object.getPrototypeOf,Object),T_="[object Object]",O_=Function.prototype,$_=Object.prototype,xc=O_.toString,B_=$_.hasOwnProperty,V_=xc.call(Object);function R_(e){if(!tn(e)||Dn(e)!=T_)return!1;var n=Ra(e);if(n===null)return!0;var o=B_.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&xc.call(o)==V_}function Sc(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 D_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:Sc(e,n,o)}var M_="\\ud800-\\udfff",L_="\\u0300-\\u036f",F_="\\ufe20-\\ufe2f",U_="\\u20d0-\\u20ff",K_=L_+F_+U_,j_="\\ufe0e\\ufe0f",G_="\\u200d",q_=RegExp("["+G_+M_+K_+j_+"]");function vc(e){return q_.test(e)}function z_(e){return e.split("")}var Ac="\\ud800-\\udfff",H_="\\u0300-\\u036f",Y_="\\ufe20-\\ufe2f",W_="\\u20d0-\\u20ff",X_=H_+Y_+W_,Z_="\\ufe0e\\ufe0f",J_="["+Ac+"]",Da="["+X_+"]",Ma="\\ud83c[\\udffb-\\udfff]",Q_="(?:"+Da+"|"+Ma+")",Ic="[^"+Ac+"]",Pc="(?:\\ud83c[\\udde6-\\uddff]){2}",Tc="[\\ud800-\\udbff][\\udc00-\\udfff]",eb="\\u200d",Oc=Q_+"?",$c="["+Z_+"]?",tb="(?:"+eb+"(?:"+[Ic,Pc,Tc].join("|")+")"+$c+Oc+")*",nb=$c+Oc+tb,ob="(?:"+[Ic+Da+"?",Da,Pc,Tc,J_].join("|")+")",rb=RegExp(Ma+"(?="+Ma+")|"+ob+nb,"g");function ib(e){return e.match(rb)||[]}function ab(e){return vc(e)?ib(e):z_(e)}function lb(e){return function(n){n=Oa(n);var o=vc(n)?ab(n):void 0,r=o?o[0]:n.charAt(0),i=o?D_(o,1).join(""):n.slice(1);return r[e]()+i}}var sb=lb("toUpperCase");function cb(){this.__data__=new nn,this.size=0}function db(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function ub(e){return this.__data__.get(e)}function fb(e){return this.__data__.has(e)}var pb=200;function mb(e,n){var o=this.__data__;if(o instanceof nn){var r=o.__data__;if(!qo||r.length<pb-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new on(r)}return o.set(e,n),this.size=o.size,this}function rn(e){var n=this.__data__=new nn(e);this.size=n.size}rn.prototype.clear=cb,rn.prototype.delete=db,rn.prototype.get=ub,rn.prototype.has=fb,rn.prototype.set=mb;function gb(e,n){return e&&Uo(n,Ia(n),e)}function hb(e,n){return e&&Uo(n,Pa(n),e)}var Bc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,Vc=Bc&&typeof module=="object"&&module&&!module.nodeType&&module,yb=Vc&&Vc.exports===Bc,Rc=yb?qt.Buffer:void 0,Dc=Rc?Rc.allocUnsafe:void 0;function _b(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 bb(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 Mc(){return[]}var wb=Object.prototype,kb=wb.propertyIsEnumerable,Lc=Object.getOwnPropertySymbols,La=Lc?function(e){return e==null?[]:(e=Object(e),bb(Lc(e),function(n){return kb.call(e,n)}))}:Mc;function Cb(e,n){return Uo(e,La(e),n)}var Eb=Object.getOwnPropertySymbols,Fc=Eb?function(e){for(var n=[];e;)Va(n,La(e)),e=Ra(e);return n}:Mc;function Nb(e,n){return Uo(e,Fc(e),n)}function Uc(e,n,o){var r=n(e);return Rt(e)?r:Va(r,o(e))}function Fa(e){return Uc(e,Ia,La)}function Kc(e){return Uc(e,Pa,Fc)}var Ua=Fn(qt,"DataView"),Ka=Fn(qt,"Promise"),ja=Fn(qt,"Set"),jc="[object Map]",xb="[object Object]",Gc="[object Promise]",qc="[object Set]",zc="[object WeakMap]",Hc="[object DataView]",Sb=Ln(Ua),vb=Ln(qo),Ab=Ln(Ka),Ib=Ln(ja),Pb=Ln(wa),Tt=Dn;(Ua&&Tt(new Ua(new ArrayBuffer(1)))!=Hc||qo&&Tt(new qo)!=jc||Ka&&Tt(Ka.resolve())!=Gc||ja&&Tt(new ja)!=qc||wa&&Tt(new wa)!=zc)&&(Tt=function(e){var n=Dn(e),o=n==xb?e.constructor:void 0,r=o?Ln(o):"";if(r)switch(r){case Sb:return Hc;case vb:return jc;case Ab:return Gc;case Ib:return qc;case Pb:return zc}return n});var Tb=Object.prototype,Ob=Tb.hasOwnProperty;function $b(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 zr=qt.Uint8Array;function Ga(e){var n=new e.constructor(e.byteLength);return new zr(n).set(new zr(e)),n}function Bb(e,n){var o=n?Ga(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var Vb=/\w*$/;function Rb(e){var n=new e.constructor(e.source,Vb.exec(e));return n.lastIndex=e.lastIndex,n}var Yc=Pt?Pt.prototype:void 0,Wc=Yc?Yc.valueOf:void 0;function Db(e){return Wc?Object(Wc.call(e)):{}}function Mb(e,n){var o=n?Ga(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Lb="[object Boolean]",Fb="[object Date]",Ub="[object Map]",Kb="[object Number]",jb="[object RegExp]",Gb="[object Set]",qb="[object String]",zb="[object Symbol]",Hb="[object ArrayBuffer]",Yb="[object DataView]",Wb="[object Float32Array]",Xb="[object Float64Array]",Zb="[object Int8Array]",Jb="[object Int16Array]",Qb="[object Int32Array]",ew="[object Uint8Array]",tw="[object Uint8ClampedArray]",nw="[object Uint16Array]",ow="[object Uint32Array]";function rw(e,n,o){var r=e.constructor;switch(n){case Hb:return Ga(e);case Lb:case Fb:return new r(+e);case Yb:return Bb(e,o);case Wb:case Xb:case Zb:case Jb:case Qb:case ew:case tw:case nw:case ow:return Mb(e,o);case Ub:return new r;case Kb:case qb:return new r(e);case jb:return Rb(e);case Gb:return new r;case zb:return Db(e)}}function iw(e){return typeof e.constructor=="function"&&!Ur(e)?jh(Ra(e)):{}}var aw="[object Map]";function lw(e){return tn(e)&&Tt(e)==aw}var Xc=fo&&fo.isMap,sw=Xc?Sa(Xc):lw,cw="[object Set]";function dw(e){return tn(e)&&Tt(e)==cw}var Zc=fo&&fo.isSet,uw=Zc?Sa(Zc):dw,fw=1,pw=2,mw=4,Jc="[object Arguments]",gw="[object Array]",hw="[object Boolean]",yw="[object Date]",_w="[object Error]",Qc="[object Function]",bw="[object GeneratorFunction]",ww="[object Map]",kw="[object Number]",ed="[object Object]",Cw="[object RegExp]",Ew="[object Set]",Nw="[object String]",xw="[object Symbol]",Sw="[object WeakMap]",vw="[object ArrayBuffer]",Aw="[object DataView]",Iw="[object Float32Array]",Pw="[object Float64Array]",Tw="[object Int8Array]",Ow="[object Int16Array]",$w="[object Int32Array]",Bw="[object Uint8Array]",Vw="[object Uint8ClampedArray]",Rw="[object Uint16Array]",Dw="[object Uint32Array]",Ge={};Ge[Jc]=Ge[gw]=Ge[vw]=Ge[Aw]=Ge[hw]=Ge[yw]=Ge[Iw]=Ge[Pw]=Ge[Tw]=Ge[Ow]=Ge[$w]=Ge[ww]=Ge[kw]=Ge[ed]=Ge[Cw]=Ge[Ew]=Ge[Nw]=Ge[xw]=Ge[Bw]=Ge[Vw]=Ge[Rw]=Ge[Dw]=!0,Ge[_w]=Ge[Qc]=Ge[Sw]=!1;function zo(e,n,o,r,i,a){var l,s=n&fw,c=n&pw,d=n&mw;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!Mn(e))return e;var f=Rt(e);if(f){if(l=$b(e),!s)return qh(e,l)}else{var u=Tt(e),p=u==Qc||u==bw;if(Ko(e))return _b(e,s);if(u==ed||u==Jc||p&&!i){if(l=c||p?{}:iw(e),!s)return c?Nb(e,hb(l,e)):Cb(e,gb(l,e))}else{if(!Ge[u])return i?e:{};l=rw(e,u,s)}}a||(a=new rn);var m=a.get(e);if(m)return m;a.set(e,l),uw(e)?e.forEach(function(h){l.add(zo(h,n,o,h,e,a))}):sw(e)&&e.forEach(function(h,y){l.set(y,zo(h,n,o,y,e,a))});var g=d?c?Kc:Fa:c?Pa:Ia,_=f?void 0:g(e);return Qh(_||e,function(h,y){_&&(y=h,h=e[y]),Ea(l,y,zo(h,n,o,y,e,a))}),l}var Mw=1,Lw=4;function Kn(e){return zo(e,Mw|Lw)}var Fw="__lodash_hash_undefined__";function Uw(e){return this.__data__.set(e,Fw),this}function Kw(e){return this.__data__.has(e)}function Hr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new on;++n<o;)this.add(e[n])}Hr.prototype.add=Hr.prototype.push=Uw,Hr.prototype.has=Kw;function jw(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 Gw(e,n){return e.has(n)}var qw=1,zw=2;function td(e,n,o,r,i,a){var l=o&qw,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(n);if(d&&f)return d==n&&f==e;var u=-1,p=!0,m=o&zw?new Hr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var g=e[u],_=n[u];if(r)var h=l?r(_,g,u,n,e,a):r(g,_,u,e,n,a);if(h!==void 0){if(h)continue;p=!1;break}if(m){if(!jw(n,function(y,w){if(!Gw(m,w)&&(g===y||i(g,y,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(g===_||i(g,_,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function Hw(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function Yw(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var Ww=1,Xw=2,Zw="[object Boolean]",Jw="[object Date]",Qw="[object Error]",e0="[object Map]",t0="[object Number]",n0="[object RegExp]",o0="[object Set]",r0="[object String]",i0="[object Symbol]",a0="[object ArrayBuffer]",l0="[object DataView]",nd=Pt?Pt.prototype:void 0,qa=nd?nd.valueOf:void 0;function s0(e,n,o,r,i,a,l){switch(o){case l0:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case a0:return!(e.byteLength!=n.byteLength||!a(new zr(e),new zr(n)));case Zw:case Jw:case t0:return Ca(+e,+n);case Qw:return e.name==n.name&&e.message==n.message;case n0:case r0:return e==n+"";case e0:var s=Hw;case o0:var c=r&Ww;if(s||(s=Yw),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=Xw,l.set(e,n);var f=td(s(e),s(n),r,i,a,l);return l.delete(e),f;case i0:if(qa)return qa.call(e)==qa.call(n)}return!1}var c0=1,d0=Object.prototype,u0=d0.hasOwnProperty;function f0(e,n,o,r,i,a){var l=o&c0,s=Fa(e),c=s.length,d=Fa(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:u0.call(n,p)))return!1}var m=a.get(e),g=a.get(n);if(m&&g)return m==n&&g==e;var _=!0;a.set(e,n),a.set(n,e);for(var h=l;++u<c;){p=s[u];var y=e[p],w=n[p];if(r)var b=l?r(w,y,p,n,e,a):r(y,w,p,e,n,a);if(!(b===void 0?y===w||i(y,w,o,r,a):b)){_=!1;break}h||(h=p=="constructor")}if(_&&!h){var C=e.constructor,N=n.constructor;C!=N&&"constructor"in e&&"constructor"in n&&!(typeof C=="function"&&C instanceof C&&typeof N=="function"&&N instanceof N)&&(_=!1)}return a.delete(e),a.delete(n),_}var p0=1,od="[object Arguments]",rd="[object Array]",Yr="[object Object]",m0=Object.prototype,id=m0.hasOwnProperty;function g0(e,n,o,r,i,a){var l=Rt(e),s=Rt(n),c=l?rd:Tt(e),d=s?rd:Tt(n);c=c==od?Yr:c,d=d==od?Yr:d;var f=c==Yr,u=d==Yr,p=c==d;if(p&&Ko(e)){if(!Ko(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new rn),l||Aa(e)?td(e,n,o,r,i,a):s0(e,n,c,o,r,i,a);if(!(o&p0)){var m=f&&id.call(e,"__wrapped__"),g=u&&id.call(n,"__wrapped__");if(m||g){var _=m?e.value():e,h=g?n.value():n;return a||(a=new rn),i(_,h,o,r,a)}}return p?(a||(a=new rn),f0(e,n,o,r,i,a)):!1}function ad(e,n,o,r,i){return e===n?!0:e==null||n==null||!tn(e)&&!tn(n)?e!==e&&n!==n:g0(e,n,o,r,ad,i)}function h0(e,n){return e!=null&&n in Object(e)}function ld(e,n,o){n=po(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=qr(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&&Na(i)&&ka(l,i)&&(Rt(e)||Kr(e)))}function y0(e,n){return e!=null&&ld(e,n,h0)}function _0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}var b0=Object.prototype,w0=b0.hasOwnProperty;function k0(e,n){return e!=null&&w0.call(e,n)}function Wr(e,n){return e!=null&&ld(e,n,k0)}function C0(e,n){return n.length<2?e:$a(e,Sc(n,0,-1))}var E0="[object Map]",N0="[object Set]",x0=Object.prototype,S0=x0.hasOwnProperty;function sd(e){if(e==null)return!0;if(xa(e)&&(Rt(e)||typeof e=="string"||typeof e.splice=="function"||Ko(e)||Aa(e)||Kr(e)))return!e.length;var n=Tt(e);if(n==E0||n==N0)return!e.size;if(Ur(e))return!Cc(e).length;for(var o in e)if(S0.call(e,o))return!1;return!0}function jn(e,n){return ad(e,n)}var v0=Object.prototype,A0=v0.hasOwnProperty;function cd(e,n){n=po(n,e);var o=-1,r=n.length;if(!r)return!0;for(var i=e==null||typeof e!="object"&&typeof e!="function";++o<r;){var a=n[o];if(typeof a=="string"){if(a==="__proto__"&&!A0.call(e,"__proto__"))return!1;if(a==="constructor"&&o+1<r&&typeof n[o+1]=="string"&&n[o+1]==="prototype"){if(i&&o===0)continue;return!1}}}var l=C0(e,n);return l==null||delete l[qr(_0(n))]}function I0(e){return R_(e)?void 0:e}var P0=1,T0=2,O0=4,Gn=Nc(function(e,n){var o={};if(e==null)return o;var r=!1;n=ic(n,function(a){return a=po(a,e),r||(r=a.length>1),a}),Uo(e,Kc(e),o),r&&(o=zo(o,P0|T0|O0,I0));for(var i=n.length;i--;)cd(o,n[i]);return o});function dd(e,n,o,r){if(!Mn(e))return e;n=po(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=qr(n[i]),d=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];d=void 0,d===void 0&&(d=Mn(f)?f:ka(n[i+1])?[]:{})}Ea(s,c,d),s=s[c]}return e}function $0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=$a(e,l);o(s,l)&&dd(a,po(l,e),s)}return a}function B0(e,n){return $0(e,n,function(o,r){return y0(e,r)})}var za=Nc(function(e,n){return e==null?{}:B0(e,n)});function ud(e,n,o){return e==null?e:dd(e,n,o)}var V0=0;function Xr(e){var n=++V0;return Oa(e)+n}function fd(e,n){return e==null?!0:cd(e,n)}const R0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],qn=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,R0.some(s=>jn(e.confluent,s))&&(e.confluent=null)};function D0(e,n){const o=e.split(""),r=n.split(""),i=o.length,a=r.length,l=Array.from({length:i+1},()=>Array(a+1).fill(0));for(let f=1;f<=i;f++)for(let u=1;u<=a;u++)o[f-1]===r[u-1]?l[f][u]=l[f-1][u-1]+1:l[f][u]=Math.max(l[f-1][u],l[f][u-1]);let s="",c=i,d=a;for(;c>0&&d>0;)o[c-1]===r[d-1]?(s=o[c-1]+s,c--,d--):l[c-1][d]>l[c][d-1]?c--:d--;return s}function M0(e){const n=Date.now(),o=16*7*24*60*60*1e3;return Math.abs(n-e)<=o}const L0={"config-message_by_lua_functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;qn((n=e.config)==null?void 0:n.schema_registry)}},F0={"config-message_by_lua_functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;qn((n=e.config)==null?void 0:n.schema_registry)}},U0={"config-message_by_lua_functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;qn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{qn(i==null?void 0:i.schema_registry)})}},K0={"config-message_by_lua_functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;qn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{qn(i==null?void 0:i.schema_registry)})}},j0={shamefullyTransformPayload:({payload:e})=>{var n;qn((n=e.config)==null?void 0:n.schema_registry)}},G0={"config-static_tags":{...Dr,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"}]}}}},q0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function Ha(e,n){const o=q0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Ya=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),z0={},pd=Symbol("TOASTER_PROVIDER");function md(){return t.inject(Ya,[])}function H0(e){t.provide(Ya,e)}const Y0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},gd=(e,n)=>(e.order??0)-(n.order??0),hd=(e,n)=>Y0(e,n)||gd(e,n)||e.model.localeCompare(n.model),De={useI18n:Ve,usePluginMetaData:qg,usePluginHelpers:qs,useSchemas:e=>{const{capitalize:n}=he.useStringHelpers(),{convertToDotNotation:o}=qs(),{i18n:{t:r}}=Ve(),i=md(),a={"application-registration":{overwriteDefault:!0,formSchema:{...Zg}},datadog:{...Jg},"exit-transformer":{...Qg},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...fh},"statsd-advanced":{...ph},"route-by-header":{...sh},"ai-prompt-decorator":{...zg},"ai-prompt-template":{...Hg},"ai-proxy-advanced":{...Yg},"ai-rag-injector":{...Wg},"ai-llm-as-judge":{...Xg},"vault-auth":{...gh},"oas-validation":{...oh},mocking:{...nh},"rate-limiting":{...Mr},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Mr["config-consumer_groups"]}:{...Mr},"graphql-rate-limiting-advanced":{...eh},"injection-protection":{...th},"response-ratelimiting":{...Mr},"pre-function":{...ec},"post-function":{...ec},"request-transformer-advanced":{...ah},"response-transformer":{...tc},"response-transformer-advanced":{...lh},zipkin:{...G0},"upstream-oauth":{...mh},saml:{...ch},"kafka-upstream":{...L0},"solace-consume":{...dh},"solace-upstream":{...uh},"key-auth":Rg(e),"key-auth-enc":Kg(e),confluent:{...F0},"confluent-consume":{...U0},"kafka-consume":{...K0},"kafka-log":{...j0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(k,S,A,R)=>{let O={};(S||k)&&(O=S||(k.fields?k.fields:k));const T=l().concat(k.blacklist?k.blacklist:[]),E=Object.keys(O).filter(F=>!T.includes(F)),L=E.indexOf("comparator");L>-1&&E.splice(L,1);let x={fields:[]};const B={};E.forEach(F=>{d(O[F],F,O,B,x,A)});const P=B.name,q=It[P],G=[],K=F=>{const I=["cluster-cache"];for(const j of I)if(F.model.includes(j))return!1;return new RegExp("(?<=-redis-).*").test(F.model)};if(x._supported_redis_partial_type=k._supported_redis_partial_type,x._redis_partial_path=k._redis_partial_path,Le.getSharedFormName(P)||Ha(P,i)||q!=null&&q.useLegacyForm||e!=null&&e.credential||R==="freeform"){if(q!=null&&q.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&k._supported_redis_partial_type){for(const F of x.fields)if(K(F)){G.push(F);continue}x.fields=x.fields.filter(F=>!K(F)),G.length&&x.fields.push({id:"_redis",fields:G,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path})}x.fields.sort((F,I)=>(F.order=F.order||0,I.order=I.order||0,F.order-I.order))}else{const F=[],I=[],j=[],z=[],ae={};if(q!=null&&q.fieldRules){const ee=[...q.fieldRules.atLeastOneOf??[],...q.fieldRules.onlyOneOf??[],...q.fieldRules.mutuallyRequired??[]];if(q.fieldRules.onlyOneOfMutuallyRequired)for(const _e of q.fieldRules.onlyOneOfMutuallyRequired)ee.push(..._e);for(const _e of ee)for(const be of _e)ae[be.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const ee of x.fields){if(e!=null&&e.enableRedisPartial&&k._supported_redis_partial_type&&K(ee)){z.push(ee);continue}if(ee.pinned){F.push(ee);continue}if(ee.required||ae[ee.model]!==void 0){ae[ee.model]===!1&&(ae[ee.model]=!0),I.push(ee);continue}j.push(ee)}z.length&&j.push({id:"_redis",fields:z,model:"__redis_partial",pluginType:k._isCustomPlugin?"custom":"bundled",redisType:k._supported_redis_partial_type,redisPath:k._redis_partial_path,order:-1});const U=Object.entries(ae).filter(([,ee])=>!ee).map(([ee])=>ee.replace(/-/g,".").replace(/_/g,"-"));U.length>0&&console.warn(`Unknown checked fields for plugin ${P}: ${U.join(", ")}`);const H=[];F.length>0&&H.push({fields:F.sort(gd)}),(I.length>0||j.length>0)&&H.push({fields:I.sort(hd),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:j.sort(hd),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:H}}return{schema:x,model:B,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=k=>Array.isArray(k.default)||k.default!=null&&typeof k.default!="object"&&k.default!=="function",d=(k,S,A,R,O,T)=>{const E=c(k);return R[S]=E?k.default:null,k.id=S,k.model=S,k.fields&&k.type==="record"?u(k,S,A,R,O,T):(A[S]=k,C(k,R),T&&T[S]&&f(A[S],T[S]),O.fields.push(k)),A},f=(k,S)=>(S&&(Object.assign(k,S),S.label&&(k.label=S.label)),k),u=(k,S,A,R,O,T)=>{k.fields.forEach(E=>{Object.keys(E).forEach(L=>{const x=E[L];A=d(x,S+"-"+L,A,R,O,T)})})},p=(k,S)=>{k.type="input",k.inputType="hidden",k.styleClasses="kong-form-hidden-field-wrapper";const A=e==null?void 0:e.entityId;S[k.model]=A?{id:A}:null},m=k=>{k.type="input",k.inputType="number",k.between&&k.between.length===2&&(k.min=k.between[0],k.max=k.between[1])},g=k=>{Object.prototype.hasOwnProperty.call(k,"one_of")?(k.type="select",k.values=k.one_of,k.selectOptions={hideNoneSelectedText:!0}):(k.type="input",k.inputType="text")},_=k=>{k.type="checkbox",k.default=!0,k.required=!1},h=k=>{if(k.type="object-advanced",k.values.type==="array"){const{type:S}=k.values.elements||{};k.schema={fields:[{schema:{fields:[{...Re,model:k.model,valueArrayType:S==="integer"?"number":S||"string",inputAttributes:{...Re.inputAttributes,type:S==="integer"?"number":"text",inputMode:S==="integer"?"numeric":"text"}}]}}]}}else k.values.fields&&(k.schema={fields:[{type:"object",model:"object",schema:{fields:k.values.fields.map(S=>{const A=Object.keys(S)[0];return{model:A,type:"input",label:n(A),placeholder:A,inputType:S[A].type}})}}]})},y=k=>k.fields.reduce((S,A)=>(A.fields&&A.fields.forEach(R=>{S[R.model]=R}),A.model&&(S[A.model]=A),S),{}),w=(k,S)=>{if(!Le.customFields.includes(k.model))return;const A=y(k);Le.customFields.forEach(R=>{Object.keys(A).forEach(O=>{const T=c(A[O]);S[O]=T?A[O].default:null}),delete S[R]})},b=(k,S)=>k.inputType==="hidden"?"":o(n(k.label||S.replace(/_/g," "))),C=(k,S)=>{switch(w(k,S),k.type){case"foreign":p(k,S);break;case"number":m(k),k.attributes={step:"any"};break;case"integer":m(k);break;case"string":g(k);break;case"boolean":_(k);break;case"map":h(k);break}k.inputType==="foreign"&&p(k,S),k.label=b(k,k.model)};function N(k,S){if(S==null||S.type&&S.type!=="record"||typeof k!="object"||k==null)return k;const A={};for(const R of S.fields){const O=Object.keys(R)[0],T=R[O];T.type==="record"?A[O]=N(k[O],T):T.type==="array"&&Array.isArray(k[O])&&T.elements.type==="record"?A[O]=k[O].map(E=>N(E,T.elements)):A[O]=k[O]}return A}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:co,pruneRecord:N}},useExperimentalFreeForms:md,useProvideExperimentalFreeForms:H0},ut="/v2/control-planes/{controlPlaneId}/core-entities",bt="/{workspace}",ze={list:{konnect:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},kongManager:{all:`${bt}/plugins`,forEntity:`${bt}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ut}/v1/available-plugins`,streamingCustomPlugins:`${ut}/custom-plugins`,schemaCustomPluginItem:`${ut}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ut}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${bt}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},edit:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ut}/{resourceEndpoint}`,edit:`${ut}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ut}/{entity}/{id}`,entityGetAll:`${ut}/{entity}`,entityPeek:`${ut}/{entity}?size={amount}`},kongManager:{create:{all:`${bt}/plugins`,forEntity:`${bt}/{entityType}/{entityId}/plugins`},edit:{all:`${bt}/plugins/{id}`,forEntity:`${bt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${bt}/schemas/plugins/{plugin}`,credential:{create:`${bt}/{resourceEndpoint}`,edit:`${bt}/{resourceEndpoint}/{id}`},credentialSchema:`${bt}/schemas/{plugin}`,entityGetOne:`${bt}/{entity}/{id}`,entityGetAll:`${bt}/{entity}`}},item:{konnect:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${bt}/plugins/{id}`,forEntity:`${bt}/{entityType}/{entityId}/plugins/{id}`}}},W0={key:0},X0=ve(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=De.usePluginHelpers(),{i18n:{t:r}}=De.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>o(d)).join(".")).join(", "),a=(s,c)=>r(s,{parameters:i(c)}),l=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(f,u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",W0,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,u)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f,(p,m)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);function Wa(e){return e.map(n=>({value:n,label:`${n}`}))}const Xa="*",zn="$",Za=".";function Ze(...e){return e.join(Za)}function Ja(...e){return Ze(zn,...e)}function yd(e){return e.startsWith(Ze(zn,""))}function Dt(e){return e.split(Za).filter(n=>n!=="")}function Ho(e){const n=Dt(e);return n[n.length-1]}function Z0(e){return e.startsWith(zn)&&(e=Ze(...Dt(e).slice(1))),e}function J0(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 Q0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}function _d(e,n){return[...e].sort((o,r)=>{const i=Object.keys(o)[0],a=Object.keys(r)[0],l=n.indexOf(i),s=n.indexOf(a);return l===-1&&s===-1?0:l===-1?1:s===-1?-1:l-s})}function bd(e,n){const o=new Map;e.forEach(d=>{const f=Object.keys(d)[0];o.set(f,d)});const r=new Map;n.forEach((d,f)=>{d.forEach((u,p)=>{r.has(u)||r.set(u,[]),r.get(u).push({bundleIndex:f,position:p})})});const i=new Set,a=[],l=new Set,s=d=>{const f=r.get(d);if(!f)return!0;for(const{bundleIndex:u,position:p}of f){const m=n[u];for(let g=0;g<p;g++){const _=m[g];if(o.has(_)&&!i.has(_))return!1}}return!0},c=d=>{if(i.has(d))return;const f=o.get(d);if(!f)return;a.push(f),i.add(d),l.delete(d);const u=r.get(d);if(u)for(const{bundleIndex:m,position:g}of u){const _=n[m];for(let h=g+1;h<_.length;h++){const y=_[h];if(!i.has(y)){const w=o.get(y);w&&(a.push(w),i.add(y),l.delete(y))}}}const p=Array.from(l);for(const m of p)s(m)&&c(m)};for(const d of e){const f=Object.keys(d)[0];i.has(f)||(s(f)?c(f):l.add(f))}return a}const[ek,tk]=Ye.createInjectionState(function(n){const{schema:o,propsData:r,onChange:i,propsRenderRules:a,propsConfig:l}=n,s=rk(o),c=new Map,d=t.reactive({}),f=t.toRef(()=>l??{}),u=t.useSlots();t.provide(Qa,Gn(u,"default",Hn));const{useCurrentRules:p,createComputedRules:m,hiddenPaths:g,isFieldHidden:_}=uk(()=>i==null?void 0:i(C())),h=p({fieldPath:zn,rules:a,parentValue:d});function y(N){Object.keys(d).forEach(k=>{delete d[k]}),Object.assign(d,N)}function w(N){let k;!N||!b(t.toValue(N))?k=s.getDefault():k=Kn(t.toValue(N)),Lr(f.value.prepareFormData)?y(f.value.prepareFormData(k)):y(k)}function b(N){return Lr(f.value.hasValue)?f.value.hasValue(N):!!N}function C(){const N=t.toValue(d),k=Kn(N);if(g.value.size>0)for(const S of g.value)ud(k,Dt(S),s.getEmptyOrDefault(S));return k}return t.watch(d,()=>{i==null||i(C())},{deep:!0}),t.watch(()=>r==null?void 0:r.value,N=>{w(N)},{deep:!0,immediate:!0}),{formData:d,schema:o,config:f,fieldRendererRegistry:c,setValue:y,useCurrentRenderRules:p,rootRenderRules:h,createComputedRenderRules:m,...s,getValue:C,isFieldHidden:_}}),wd=Symbol("free-form-field-path"),Qa=Symbol("free-form-field-renderer-slots"),kd=Symbol("free-form-field-reset-label-path-setting"),Hn="free-form-field-renderers-slot",nk={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function ok(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,el(r,n)):e.type==="array"&&e.elements&&Object.assign(o,tl(e,n)),o}function el(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?Ze(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=el(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=tl(a,l);Object.assign(o,s)}}return o}function tl(e,n=""){const o={};if(e.elements){const r=e.elements,i=Ze(n,Xa);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=el(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=tl(r,i);Object.assign(o,a)}}return o}function Zr(e){const n=Dt(e).map(o=>/^\d+$/.test(o)?Xa:o);return Ze(...n)}function rk(e){const n=t.toValue(e),o=t.computed(()=>n?ok(n):{});function r(p){var m;return p==null?n:(m=o.value)==null?void 0:m[Zr(p)]}function i(p,m=!1){const g=r(p);return g?g.default!==void 0?g.default:m||g.required?g.type==="record"?a(g,p):g.type==="array"?[]:g.type==="map"?{}:null:null:null}function a(p,m){const g={};if(Array.isArray(p.fields))for(const _ of p.fields){const h=Object.keys(_)[0],y=m?`${m}.${h}`:h,w=i(y,!1);w!==void 0&&(g[h]=w)}return g}function l(p){return p?i(p,!0):a(r(),"")}function s(p){const m=r(p),g=m!=null&&m.description?Br.marked.parse(m.description,{async:!1}):void 0;return{...nk,"data-testid":`ff-label-${p}`,info:g}}function c(p){var g;const m=r(p);return Wa((m==null?void 0:m.one_of)||((g=m.elements)==null?void 0:g.one_of)||[])}function d(p){const m=r(p),g=m==null?void 0:m.default;let _=null;if((m==null?void 0:m.type)==="foreign"&&(g!=null&&g.id))_=g.id;else{if(g==null||typeof g=="object"||g==="")return null;if(Array.isArray(g)){if(g.length===0)return null;_=g.join(", ")}else _=g.toString()}return`Default: ${_}`}function f(){return o.value}function u(p){const m=r(p);return(m==null?void 0:m.required)?l(p):null}return{getSchemaMap:f,getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d,getEmptyOrDefault:u}}function Ue(){const e=tk();if(!e)throw new Error("useFormShared() called without provider.");return e}const Cd=e=>{const n=t.inject(wd,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!yd(r)&&n.value&&(i=Ze(n.value,r)),yd(r)&&(i=i.slice(Ja("").length)),i});return t.provide(wd,o),o},ik=e=>{const{getSchema:n,fieldRendererRegistry:o}=Ue(),{default:r,...i}=t.useSlots(),a=t.inject(Qa),l=t.computed(()=>{const c=t.toValue(a),d=Object.keys(i).filter(f=>f!==Hn&&f!=="item").reduce((f,u)=>{const p=Zr(Ze(t.toValue(e),u));return{...f,[p]:i[u]}},{});return c?{...c,...d}:d});t.provide(Qa,l);const s=t.toValue(e);return t.computed(()=>{if(r)return;const c=l.value[Zr(t.toValue(e))];if(c)return c;for(const[d,f]of o)if(d({path:s,schema:n(s)}))return f})},ak={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP",https:"HTTPS",api:"API",uri:"URI",jq:"jq",vpn:"VPN",id:"ID",llm:"LLM",tls:"TLS",tcp:"TCP",udp:"UDP",lua:"Lua",jwt:"JWT",aws:"AWS",gcp:"GCP",azure:"Azure"};function lk(e){return ak[e.toLocaleLowerCase()]??e}function sk(e,n){const o=t.inject(kd,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Ze(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?Ze(d,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=u,l.value.isolate=!1,l.value.parentPath=u}};(p=m[s])==null||p.call(m)}else f&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),t.provide(kd,l),a}function Ed(e){return Dt(e).map(o=>o.split("_").map(lk).join(" ")).map(sb).join(" › ")}function ck(e,n){const o=t.toValue(e),r=Ho(o),{config:i,getSchema:a}=Ue(),l=sk(r,n),s=Nd(e);return t.computed(()=>{var p;const c=l.value??r,d=(p=s.value.parent)!=null&&p.path?a(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":Ed(c);return i.value.transformLabel?i.value.transformLabel(u,o):u})}function Ot(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ue(),a=t.toValue(e),l=t.toValue(n),s=ck(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 dk(e){var r;const n=Dt(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Ze(o.parent.path,i):i,o={parent:o}}return o}function Nd(e){return t.computed(()=>dk(t.toValue(e)))}function xd(e){const{formData:n}=Ue(),o=Cd(e);return{value:t.computed({get:()=>Ba(n,Dt(o.value)),set:i=>ud(n,Dt(o.value),i)})}}function wt(e){const{getSchema:n,isFieldHidden:o,getEmptyOrDefault:r}=Ue(),i=Cd(e),a=ik(i),{value:l}=xd(e),s=t.computed(()=>n(i.value)),c=t.computed(()=>o(i.value)),d=t.computed(()=>r(i.value));return s.value?{schema:s,path:i,renderer:a,value:l,ancestors:Nd(i),hide:c,emptyOrDefaultValue:d,error:null}:{error:new Error(`path '${i.value}' is not found in schema.`)}}function Yo(e){const{getSchema:n}=Ue(),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 Sd(e,n){const o=new WeakMap,r=new Map;function i(){return Xr(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((d,f)=>{c.add(f)}),Array.from(r.keys()).forEach(d=>{c.has(d)||r.delete(d)})},{immediate:!0,deep:!0}),{getKey:a}}function uk(e){const n=t.ref({}),o=t.ref(new Set);function r(g,_){const h=g.map(w=>Dt(w).length),y=h[0];if(!h.every(w=>w===y)){const w=g.map((b,C)=>` - '${b}' is at level ${h[C]}`).join(`
|
|
14
|
-
`);throw new Error(`${
|
|
15
|
-
${w}`)}}function i(g){for(const[
|
|
16
|
-
${A}`)}if(
|
|
17
|
-
${S}`)}if(b.has(N))return;b.add(N),C.push(N);const k=h.dependencies[N];if(k){const[S]=k;h.dependencies[S]&&w(S)}C.pop()};const b=new Set,C=[];w(y)}}function l(g,_){const h=g.map(w=>_?Ze(_,w):w),y=Dt(h[0]);return y.pop(),Ze(...y)}function s(g,_){if(!_)return g;const h=`${_}${Za}`;return g.startsWith(h)?g.slice(h.length):g}function c(g){const _=Dt(g);return _.pop(),Ze(..._)}const d=t.computed(()=>{const g={};for(const[_,h]of Object.entries(n.value)){const y=_===zn?"":_;if(h.bundles)for(const w of h.bundles){if(w.length<2)throw new Error(`Bundle must contain at least 2 fields. Found ${w.length} field(s) in bundle: [${w.join(", ")}]`);const b=w.map(k=>y?Ze(y,k):k);r(b,`Bundle [${w.join(", ")}]`);const C=l(w,y)||zn;g[C]||(g[C]={}),g[C].bundles||(g[C].bundles=[]);const N=b.map(k=>s(k,C));g[C].bundles.push(N)}if(h.dependencies)for(const[w,[b,C]]of Object.entries(h.dependencies)){const N=y?Ze(y,w):w,k=y?Ze(y,b):b;r([N,k],`Dependency '${w}' -> '${b}'`);const S=c(N)||zn;g[S]||(g[S]={}),g[S].dependencies||(g[S].dependencies={});const A=s(N,S),R=s(k,S);g[S].dependencies[A]=[R,C]}}return i(g),a(g),g});function f(g){if(!g)return d.value;const _=Zr(g);return d.value[_]}function u(g){let _=!1;return t.computed(()=>{if(_)return;const h=t.toValue(g);try{return f(h)}catch(y){_=!0,console.error(`Failed to get render rules for path: \`${h}\`,`,y instanceof Error?y.message:"");return}})}function p(g){const{fieldPath:_,rules:h,parentValue:y,omittedFields:w}=g;t.watch([()=>t.toValue(h),()=>t.toValue(_)],([C,N],[,k])=>{C?n.value[N]=C:delete n.value[N],k&&k!==N&&delete n.value[k]},{immediate:!0,deep:!0});const b=u(_);return t.watch([()=>t.toValue(y),()=>{var C;return(C=t.toValue(b))==null?void 0:C.dependencies},()=>t.toValue(_),()=>t.toValue(w)],([C,N,k,S])=>{!N||!C||Object.entries(N).forEach(([A,[R,O]])=>{if(S!=null&&S.includes(A))return;const T=Ba(C,R),E=k?Z0(Ze(k,A)):A;if(jn(T,O)){o.value.delete(E),e();return}o.value.add(E),e()})},{deep:!0,immediate:!0}),t.onBeforeUnmount(()=>{const C=t.toValue(_);delete n.value[C]}),b}function m(g){return o.value.has(g)}return{useCurrentRules:p,createComputedRules:u,hiddenPaths:t.readonly(o),isFieldHidden:m}}const fk="__request_callout_";function vd(){return Xr(fk)}const Yn=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?$e.KTextArea:$e.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{s.value=u});const{config:c}=Ue(),d=u=>{u!==s.value&&(s.value=u,c.value.updateOnChange||i("update:modelValue",u))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":e.modelValue,resizable:e.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,g)=>({name:g,fn:t.withCtx(_=>[t.renderSlot(u.$slots,g,t.normalizeProps(t.guardReactiveProps(_)))])}))]),1040,["character-limit","model-value","resizable"]))}}),pk=["innerHTML"],kt=ve(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},placeholder:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=Ve(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,hide:s,...c}=wt(t.toRef(()=>e.name)),d=Ot(c.path,t.toRef({...i,...o})),f=l==null?void 0:l.value;function u(w){f!==void 0&&w===""&&w!==f?(l.value=null,a("update:modelValue",null)):(l.value=w.trim(),a("update:modelValue",w.trim()))}const p=t.computed(()=>{var w;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((w=c.schema)==null?void 0:w.value).encrypted}),m=t.inject(Le.AUTOFILL_SLOT,void 0),g=t.computed(()=>{var w;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((w=c.schema.value)!=null&&w.referenceable)}),_=t.computed(()=>({referenceable:g.value})),h=Yo(c.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return(w,b)=>{var N;const C=t.resolveComponent("KAlert");return c.error?(t.openBlock(),t.createBlock(C,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},w.$attrs)),[t.createVNode(Yn,t.mergeProps({...t.unref(d),showPasswordMaskToggle:p.value,type:p.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":y.value,"data-autofocus":t.unref(h),"data-testid":`ff-${c.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.multiline&&e.error?e.errorMessage:e.help,"model-value":t.unref(l)??"",multiline:e.multiline,placeholder:e.placeholder??t.unref(d).placeholder,"onUpdate:modelValue":u}),t.createSlots({_:2},[(N=t.unref(d).labelAttributes)!=null&&N.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(w.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,pk)],!0)]),key:"0"}:void 0,!(e.multiline&&e.error)&&w.$slots.help?{name:"help",fn:t.withCtx(()=>[t.renderSlot(w.$slots,"help",{},void 0,!0)]),key:"1"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline","placeholder"]),t.unref(m)&&g.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(m)),{key:0,schema:_.value,update:u,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),g.value&&!t.unref(m)?(t.openBlock(),t.createBlock(C,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${c.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16)),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-93d54a4e"]]),mk=["innerHTML"],mo=ve(t.defineComponent({__name:"BooleanField",props:{labelAttributes:{},modelValue:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,hide:i,emptyOrDefaultValue:a,...l}=wt(t.toRef(()=>e.name)),s=n,c=f=>{r.value=f,s("update:modelValue",f)},d=Ot(l.path,o);return(f,u)=>{var m;const p=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(p,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref($e.KCheckbox),t.mergeProps({key:1},t.unref(d),{class:"ff-boolean-field","data-testid":`ff-${l.path.value}`,"model-value":!!(t.unref(r)==null?t.unref(a):t.unref(r)),"onUpdate:modelValue":c}),t.createSlots({_:2},[(m=t.unref(d).labelAttributes)!=null&&m.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(f.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,mk)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"])),[[t.vShow,!t.unref(i)]])}}}),[["__scopeId","data-v-a64714b1"]]),Ad=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(g=>[g,m.getPropertyValue(g)]))}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 g=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...g,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(t.openBlock(),t.createBlock(t.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),gk={class:"ff-entity-checks-list"},Id=ve(t.defineComponent({__name:"EntityChecksAlert",props:{entityChecks:{},omittedFields:{}},setup(e){const{i18n:{t:n}}=De.useI18n(),o=t.computed(()=>{if(!Array.isArray(e.entityChecks)||e.entityChecks.length===0)return null;const a=[],l=[{key:"at_least_one_of",i18nKey:"plugins.form.field_rules.at_least_one_of"},{key:"mutually_required",i18nKey:"plugins.form.field_rules.mutually_required"},{key:"mutually_exclusive",i18nKey:"plugins.form.field_rules.mutually_exclusive"}];for(const s of e.entityChecks)for(const{key:c,i18nKey:d}of l)if(c in s){const f=s[c];Array.isArray(f)&&f.length>0&&i(f)&&a.push(n(d,{parameters:r(f)}));break}return a.length?a:null});function r(a){return a.map(Ed).join(", ")}function i(a){return Array.isArray(e.omittedFields)&&e.omittedFields.length>0?a.filter(s=>!e.omittedFields.includes(s)).length>0:!0}return(a,l)=>{const s=t.resolveComponent("KAlert");return o.value?(t.openBlock(),t.createBlock(s,{key:0,"data-testid":"ff-entity-checks-alert"},{default:t.withCtx(()=>[t.createElementVNode("ul",gk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.value,c=>(t.openBlock(),t.createElementBlock("li",{key:c,"data-testid":"ff-entity-check-item"},t.toDisplayString(c),1))),128))])]),_:1})):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-0b5baf37"]]),hk=["data-testid"],yk=["data-testid"],_k=["data-testid"],bk=["innerHTML"],wk={class:"ff-object-field-actions"},kk=["data-testid"],Et=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:{},renderRules:{}},{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,hide:r,...i}=wt(t.toRef(n,"name")),{getSchema:a,getDefault:l,useCurrentRenderRules:s}=Ue(),c=s({fieldPath:i.path,rules:t.toRef(n,"renderRules"),omittedFields:t.toRef(()=>e.omit),parentValue:o}),d=t.useModel(e,"added"),f=t.useModel(e,"expanded"),u=t.computed(()=>_.value&&(e.collapsible?f.value??e.defaultExpanded:!1)),p=t.computed(()=>{var b,C;if((b=i.ancestors)!=null&&b.value){const N=i.ancestors.value.parent;if(N!=null&&N.path)return((C=a(N.path))==null?void 0:C.type)==="array"}return!1}),m=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:p.value?"reset":"inherit"),g=Ot(i.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:m.value}))),_=t.computed(()=>g.value.required?!0:d.value??e.defaultAdded),h=t.computed(()=>e.asChild!==void 0?e.asChild:p.value),y=t.computed(()=>{var C;let b=i.schema.value.fields;return e.omit&&(b=b.filter(N=>!e.omit.includes(Object.keys(N)[0]))),e.fieldsOrder?_d(b,e.fieldsOrder):((C=c.value)!=null&&C.bundles&&(b=bd([...b],c.value.bundles)),b)});function w(){d.value=!d.value,d.value?o.value=l(i.path.value):o.value=null}return t.watch(_,b=>{e.collapsible&&(f.value=b)}),t.onBeforeMount(()=>{d.value=!!(o!=null&&o.value)}),(b,C)=>{var k;const N=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(b.$slots[t.unref(Hn)]))),i.error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):h.value?t.withDirectives((t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},b.$attrs,{"data-testid":`ff-object-${i.path.value}`}),[t.renderSlot(b.$slots,"default",{},()=>{var S;return[t.createVNode(Id,{"entity-checks":(S=i.schema.value)==null?void 0:S.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,A=>(t.openBlock(),t.createBlock(ft,{key:Object.keys(A)[0],name:Object.keys(A)[0]},null,8,["name"]))),128))]},!0)],16,hk)),[[t.vShow,!t.unref(r)]]):t.withDirectives((t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!u.value}],"data-testid":`ff-object-${i.path.value}`},b.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${i.path.value}`},[t.createVNode(t.unref($e.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${i.path.value}`},{...t.unref(g),required:!1},{"tooltip-attributes":t.unref(g).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(g).label)+" ",1)]),_:2},[(k=t.unref(g).labelAttributes)!=null&&k.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(g).labelAttributes.info},null,8,bk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",wk,[e.collapsible&&_.value?(t.openBlock(),t.createBlock(t.unref($e.KButton),{key:0,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${u.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${i.path.value}`,icon:"",onClick:C[0]||(C[0]=S=>f.value=!u.value)},{default:t.withCtx(()=>[_.value?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(g).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref($e.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${_.value?"remove":"add"}`),"data-testid":`ff-object-${_.value?"remove":"add"}-btn-${i.path.value}`,icon:"",onClick:w},{default:t.withCtx(()=>[_.value?(t.openBlock(),t.createBlock(t.unref(ke.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(ke.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,_k),t.createVNode(Ad,null,{default:t.withCtx(()=>[u.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${i.path.value}`},[t.renderSlot(b.$slots,"default",{},()=>{var S;return[t.createVNode(Id,{"entity-checks":(S=i.schema.value)==null?void 0:S.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,A=>(t.openBlock(),t.createBlock(ft,{key:Object.keys(A)[0],name:Object.keys(A)[0]},null,8,["name"]))),128))]},!0)],8,kk)):t.createCommentVNode("",!0)]),_:3})],16,yk)),[[t.vShow,!t.unref(r)]])],64)}}}),[["__scopeId","data-v-161e818f"]]),Ck={key:1,class:"ff-number-field-wrapper"},Ek=["innerHTML"],Wn=ve(t.defineComponent({__name:"NumberField",props:{showVaultSecretPicker:{type:Boolean,default:()=>{}},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["showVaultSecretPicker","name"]),{value:r,hide:i,...a}=wt(t.toRef(()=>e.name)),l=Ot(a.path,o),{i18n:s}=Ve(),c=t.computed(()=>{var k;const b=(k=a.schema)==null?void 0:k.value;if(typeof b.gt=="number")return{min:b.type==="integer"?b.gt+1:b.gt};const[C,N]=b.between??[];return{min:o.min??C,max:o.max??N}}),d=n,f=r.value,u=t.computed(()=>{const b=r==null?void 0:r.value;if(b==null||b==="")return"";if(y.value)return`${b}`;const C=typeof b=="number"?b:Number(b);return Number.isFinite(C)?`${C}`:""});function p(b){const C=m(b);f!==void 0&&b===""&&C!==f?(r.value=null,d("update:modelValue",null)):(r.value=C,d("update:modelValue",C))}function m(b){if(b==="")return null;const C=b.trim();if(C==="")return null;const N=Number(C);return Number.isFinite(N)?N:y.value?b:null}const g=Yo(a.ancestors),_=t.inject(Le.AUTOFILL_SLOT,void 0),h=t.computed(()=>({referenceable:y.value})),y=t.computed(()=>{var b;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((b=a.schema.value)!=null&&b.referenceable)}),w=t.computed(()=>y.value?"text":"number");return(b,C)=>{var k;const N=t.resolveComponent("KAlert");return a.error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:a.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",Ck,[t.createVNode(Yn,t.mergeProps({class:"ff-number-field"},{...t.unref(l),min:c.value.min,max:c.value.max},{"data-autofocus":t.unref(g),"data-testid":`ff-${a.path.value}`,"model-value":u.value,type:w.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(k=t.unref(l).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,Ek)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value","type"]),t.unref(_)&&y.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:h.value,update:p,value:t.unref(r)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),y.value&&!t.unref(_)?(t.openBlock(),t.createBlock(N,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${a.path.value}`,message:t.unref(s).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],512)),[[t.vShow,!t.unref(i)]])}}}),[["__scopeId","data-v-709884eb"]]),Nk=["innerHTML"],$t=ve(t.defineComponent({__name:"EnumField",props:{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},name:{}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=Ue(),{value:a,hide:l,...s}=wt(t.toRef(()=>e.name)),c=Ot(s.path,r),d=t.computed(()=>e.items?e.items:s.path?i(s.path.value):[]),f=t.computed(()=>{var p;return e.multiple!==void 0?e.multiple:((p=s.schema.value)==null?void 0:p.type)==="set"}),u=t.computed(()=>f.value?$e.KMultiselect:$e.KSelect);return(p,m)=>{var _;const g=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(g,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref(u),t.mergeProps({key:1},{...r,...t.unref(c)},{modelValue:t.unref(a),"onUpdate:modelValue":[m[0]||(m[0]=h=>t.isRef(a)?a.value=h:null),m[1]||(m[1]=h=>o("update",h))],class:"ff-enum-field",clearable:!t.unref(c).required,"data-testid":`ff-${s.path.value}`,items:d.value,"kpop-attributes":{"data-testid":`${s.path.value}-items`}}),t.createSlots({_:2},["tooltip"in p.$slots||(_=t.unref(c).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Nk)],!0)]),key:"0"}:void 0,p.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:h})=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"])),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-a339a451"]]);function Jr(e,n,o=!0){const{value:r,emptyOrDefaultValue:i,...a}=wt(t.toRef(e,"name")),l=Ot(a.path,t.toRef({...e,...t.useAttrs()})),s=t.ref(f(e.initialValue??t.toValue(r),e.keyOrder));function c(){return Xr("ff-kv-field-")}function d(y,w,b){const C=b.indexOf(y),N=b.indexOf(w);return C===-1&&N===-1?0:C===-1?1:N===-1?-1:C-N}function f(y,w){if(!y)return[];const b=Object.entries(y).map(([C,N])=>({id:c(),key:C,value:N}));return w&&b.sort((C,N)=>d(C.key,N.key,w)),b}function u(){const y={id:c(),key:e.defaultKey||"",value:e.defaultValue||""};return s.value.push(y),y}function p(y){const w=s.value.findIndex(b=>b.id===y);w!==-1&&s.value.splice(w,1)}function m(){s.value=f(e.initialValue,e.keyOrder)}function g(y){s.value=f(y,e.keyOrder)}let _=r==null?void 0:r.value;t.watch(s,y=>{if(!o)return;const w=y.length?Object.fromEntries(y.map(({key:b,value:C})=>[b,C]).filter(([b])=>b)):i==null?void 0:i.value;w===null&&r.value!==null&&typeof r.value=="object"&&Object.keys(r.value).length===0||(r.value=w,_=w,n("change",w))},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,y=>{jn(y,_)||h(y)},{deep:!0});function h(y){if(!y){s.value=[];return}const w=new Map;s.value.forEach(k=>{k.key&&w.set(k.key,k)});const b=[],C=Object.keys(y);(e.keyOrder?[...C].sort((k,S)=>d(k,S,e.keyOrder)):C).forEach(k=>{const S=y[k];if(w.has(k)){const A=w.get(k);A.value=S,b.push(A)}else b.push({id:c(),key:k,value:S})}),s.value=b}return{entries:s,addEntry:u,removeEntry:p,reset:m,setValue:g,labelAttrs:l,field:a}}const xk=["data-testid"],Sk=["data-testid"],vk=["innerHTML"],Ak=["data-testid"],Ik=ve(t.defineComponent({__name:"KeyValueField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{},name:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=Ve(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=Jr(r,a),m=t.useTemplateRef("root");async function g(N,k="key"){var S;m.value&&(await t.nextTick(),(S=m.value.querySelector(`[data-${k}-input="${N}"]`))==null||S.focus())}function _(){s();const N=l.value.findIndex(({key:k})=>!k);g(N===-1?l.value.length-1:N)}function h(N){N===l.value.length-1&&s(),g(N+1)}const y=t.inject(Le.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var N,k;return e.showVaultSecretPicker??!!((k=(N=p.schema.value)==null?void 0:N.values)!=null&&k.referenceable)}),b=t.computed(()=>({referenceable:w.value}));function C(N,k){l.value[N].value=k}return n({reset:d,setValue:f}),(N,k)=>{var O;const S=t.resolveComponent("KAlert"),A=t.resolveComponent("KLabel"),R=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(S,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):t.withDirectives((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(A,t.mergeProps({class:"ff-kv-field-label"},t.unref(u),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(O=t.unref(u).labelAttributes)!=null&&O.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,vk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(R,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["data-testid"])],8,Sk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(T,E)=>(t.openBlock(),t.createElementBlock("div",{key:T.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${E}`},[t.createVNode(Yn,{modelValue:T.key,"onUpdate:modelValue":L=>T.key=L,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":E,"data-testid":`ff-key-${t.unref(p).path.value}.${E}`,placeholder:e.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(L=>g(E,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Yn,{modelValue:T.value,"onUpdate:modelValue":L=>T.value=L,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${E}`,"data-value-input":E,placeholder:e.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(L=>h(E),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(y)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(y)),{key:0,schema:b.value,update:L=>C(E,L),value:T.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(y)?(t.openBlock(),t.createBlock(S,{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(R,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${E}`,icon:"",onClick:L=>t.unref(c)(T.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:1},8,["data-testid","onClick"])],8,Ak))),128))],8,xk)),[[t.vShow,!t.unref(p).hide.value]])}}}),[["__scopeId","data-v-6f20a032"]]),Pk=["data-testid"],Tk=["innerHTML"],Qr=ve(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{labelAttributes:{},multiline:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,hide:l,...s}=wt(t.toRef(()=>e.name)),c=Ot(s.path,t.toRef({...r,...o})),d=t.computed(()=>{var h,y;return((y=(h=s.schema)==null?void 0:h.value)==null?void 0:y.len_min)&&s.schema.value.len_min>0}),f=t.ref("");function u(h){return h.map(y=>y.trim()).filter(Boolean).join(", ")}function p(h){return h.trim().split(",").map(y=>y.trim()).filter(Boolean)}function m(h){f.value=h;const y=p(h),w=!y.length&&d.value?null:y;a.value=w,i("update:modelValue",w)}const g=Yo(s.ancestors),_=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return t.watch(a,h=>{const y=h?u(h):"";u(p(f.value))!==y&&(f.value=y)},{immediate:!0}),(h,y)=>{var b;const w=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(w,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${s.path.value}`},[t.createVNode(Yn,t.mergeProps(t.unref(c),{class:"ff-tag-field","data-1p-ignore":_.value,"data-autofocus":t.unref(g),"data-testid":`ff-${s.path.value}`,"model-value":f.value??"","onUpdate:modelValue":m}),t.createSlots({_:2},[(b=t.unref(c).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Tk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Pk)),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-5195e71a"]]),Ok=["data-testid"],$k=["innerHTML"],Bk=ve(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{labelAttributes:{},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,hide:l,...s}=wt(t.toRef(()=>e.name)),c=Ot(s.path,t.toRef({...r,...o})),d=t.ref("");function f(m){d.value=m;let g=m||null;try{const _=JSON.parse(m);_&&typeof _=="object"&&(g=_)}catch{}a.value=g,i("update:modelValue",g)}const u=Yo(s.ancestors),p=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return t.watch(a,m=>{if(m&&typeof m=="object"){try{const g=JSON.parse(d.value);jn(g,m)||(d.value=JSON.stringify(m,null,2))}catch{d.value=JSON.stringify(m,null,2)}return}d.value=m||""},{immediate:!0}),(m,g)=>{var h;const _=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${s.path.value}`},[t.createVNode(Yn,t.mergeProps(t.unref(c),{class:"ff-json-field","data-1p-ignore":p.value,"data-autofocus":t.unref(u),"data-testid":`ff-${s.path.value}`,"model-value":d.value??"",multiline:"","onUpdate:modelValue":f}),t.createSlots({_:2},[(h=t.unref(c).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(m.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,$k)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Ok)),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-02205863"]]),Vk=["innerHTML"],Rk=ve(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{labelAttributes:{},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:{t:r}}=Ve(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,hide:s,...c}=wt(t.toRef(()=>e.name));if(c.error)throw new Error(c.error.message);const d=Ot(c.path,t.toRef({...i,...o})),f=l.value?l.value.id:null,u=t.computed(()=>{var h;return d.value.placeholder?d.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((h=c.schema.value)==null?void 0:h.reference)??"entity"})}),p=t.ref(f??"");function m(h){f!==void 0&&h===""&&h!==f?(l.value=null,a("update:modelValue",null)):(l.value={id:h.trim()},a("update:modelValue",l.value))}const g=Yo(c.ancestors),_=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Ho(e.name)==="name");return(h,y)=>{var w;return t.withDirectives((t.openBlock(),t.createBlock(Yn,t.mergeProps(t.unref(d),{class:"ff-foreign-field","data-1p-ignore":_.value,"data-autofocus":t.unref(g),"data-testid":`ff-${c.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.help,"model-value":p.value,placeholder:u.value,"onUpdate:modelValue":m}),t.createSlots({_:2},[(w=t.unref(d).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Vk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-8626d32b"]]),ft=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?$t:kt;case"boolean":return"one_of"in o.schema.value?$t:mo;case"number":case"integer":return"one_of"in o.schema.value?$t:Wn;case"array":return Wo;case"set":return Q0(o.schema)?Qr:$t;case"record":return Et;case"map":return Ik;case"json":return Bk;case"foreign":return Rk;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:Ja(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:Ja(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)}}}),Dk=["data-testid"],Mk=["data-testid"],Lk=["innerHTML"],Fk=["data-testid"],Uk={class:"ff-array-field-item-content"},Kk=["data-index","data-testid"],Wo=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 S;t.useCssVars(A=>({v547e409b:k.value}));const o=e,r=n,{i18n:{t:i}}=Ve(),{getDefault:a,getSchema:l}=Ue(),{value:s,hide:c,...d}=wt(t.toRef(o,"name")),f=Ot(d.path,t.toRef({...o,...t.useAttrs()})),u=t.computed(()=>{if(!d.path)throw new Error("Field path is required for sub-schema retrieval");const A=l(d.path.value);if(!A)throw new Error(`Schema not found for path: ${d.path.value}`);return A.elements}),p=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:m}=Sd("ff-array-field",p),g=t.computed(()=>o.appearance==="card"?$e.KCard:"div");function _(A,R){return typeof o.itemLabel=="function"?o.itemLabel(A,R):o.itemLabel||f.value.label||`Item #${R}`}const h=t.computed(()=>p.value.map((A,R)=>({hash:`#${m(A,R)}`,title:""}))),y=t.ref((S=h.value[0])==null?void 0:S.hash),w=async()=>{var R;const A=a(Ze(d.path.value,Xa));Array.isArray(s.value)||(s.value=[]),s.value.push(A),r("add"),o.appearance==="tabs"&&(await t.nextTick(),y.value=(R=h.value[h.value.length-1])==null?void 0:R.hash),await t.nextTick(),N(p.value.length+1)},b=async A=>{var R;Array.isArray(s.value)&&s.value.splice(A,1),r("remove",A),o.appearance==="tabs"&&(y.value=(R=h.value[Math.max(0,A-1)])==null?void 0:R.hash)},C=t.useTemplateRef("root");function N(A){var O;if(!C.value)return;const R=Math.max(0,Math.min(A,p.value.length-1));(O=C.value.querySelector(`[data-index="${R}"] [data-autofocus]`))==null||O.focus()}const k=t.computed(()=>{const{appearance:A,stickyTabs:R}=o;return A!=="tabs"||R==null||R===!1?null:typeof R=="number"?`${o.stickyTabs}px`:typeof R=="string"?R:"0"});return(A,R)=>{var x;const O=t.resolveComponent("KAlert"),T=t.resolveComponent("KLabel"),E=t.resolveComponent("KButton"),L=t.resolveComponent("KTabs");return d.error?(t.openBlock(),t.createBlock(O,{key:0,appearance:"danger",message:d.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:C,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${e.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":e.stickyTabs}]),"data-testid":`ff-array-${d.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${d.path.value}`},[t.createVNode(T,t.mergeProps({class:"ff-array-field-label"},t.unref(f),{"data-testid":`ff-label-${d.path.value}`,"tooltip-attributes":t.unref(f).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(f).label)+" ",1)]),_:2},[(x=t.unref(f).labelAttributes)!=null&&x.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(f).labelAttributes.info},null,8,Lk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(E,{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-${d.path.value}`,icon:"",onClick:w},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,Mk),p.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${d.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(B,P)=>(t.openBlock(),t.createBlock(t.unref(g),{key:t.unref(m)(B,P),class:"ff-array-field-item","data-index":P,"data-testid":`ff-array-item-${d.path.value}.${P}`},{default:t.withCtx(()=>[t.createElementVNode("div",Uk,[A.$slots.item?t.renderSlot(A.$slots,"item",{key:0,fieldName:String(P),index:P},void 0,!0):t.createCommentVNode("",!0),u.value.type==="array"&&u.value.elements.type==="string"?(t.openBlock(),t.createBlock(Qr,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(P)},null,8,["help","name"])):(t.openBlock(),t.createBlock(ft,{key:2,name:String(P)},null,8,["name"]))]),t.createVNode(E,{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-${d.path.value}.${P}`,icon:"",onClick:q=>b(P)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,Fk)):(t.openBlock(),t.createBlock(t.unref($e.KCard),{key:1,"data-testid":`ff-array-tab-container-${d.path.value}`},{default:t.withCtx(()=>[t.createVNode(L,{modelValue:y.value,"onUpdate:modelValue":R[0]||(R[0]=B=>y.value=B),"data-testid":`ff-array-tabs-${d.path.value}`,tabs:h.value},t.createSlots({_:2},[t.renderList(p.value,(B,P)=>({name:t.unref(m)(B,P),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":P,"data-testid":`ff-array-item-${d.path.value}.${P}`},[A.$slots.item?t.renderSlot(A.$slots,"item",{key:0,fieldName:String(P),index:P},void 0,!0):(t.openBlock(),t.createBlock(ft,{key:1,name:String(P)},null,8,["name"]))],8,Kk)])})),t.renderList(p.value,(B,P)=>({name:`${t.unref(m)(B,P)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_(B,P))+" ",1),t.createVNode(E,{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-${d.path.value}.${P}`,icon:"",onClick:t.withModifiers(q=>b(P),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,Dk)),[[t.vShow,!t.unref(c)]])}}}),[["__scopeId","data-v-fd8cf789"]]),Xo=Symbol(),jk=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Ue(),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(({[Xo]: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(Et,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode($t,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(Et,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode($t,t.mergeProps(d,{items:t.unref(Wa)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),Gk=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Ue();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Xo]=vd())}return(r,i)=>(t.openBlock(),t.createBlock(Wo,{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(jk,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),ei=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),{fieldRendererRegistry:r}=Ue();return o&&r.set(n.match,o),(i,a)=>null}}),pt=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{},renderRules:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),{getSchema:a,formData:l,setValue:s,getValue:c,rootRenderRules:d}=ek({schema:e.schema,propsData:t.computed(()=>e.data),propsConfig:e.config,propsRenderRules:t.toRef(()=>e.renderRules),onChange:u=>r("change",u)}),f=t.computed(()=>{var m;const{fields:u}=a();let p=[...u];return e.fieldsOrder?_d(p,e.fieldsOrder):((m=d.value)!=null&&m.bundles&&(p=bd([...p],d.value.bundles)),p)});return n({getValue:c,getRawValue:()=>t.toRaw(l),setValue:s}),(u,p)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Hn)]))),t.renderSlot(u.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,m=>(t.openBlock(),t.createBlock(ft,{key:Object.keys(m)[0],name:Object.keys(m)[0],onGlobalAction:p[0]||(p[0]=(g,_)=>r("globalAction",g,_))},null,8,["name"]))),128))])]),_:3}))}}),qk={class:"ff-advanced-fields"},ti=ve(t.defineComponent({__name:"AdvancedFields",props:{hideGeneralFields:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{getSchema:o}=Ue(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref($e.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",qk,[e.hideGeneralFields?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(ft,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(ft,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Qr,{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)],64)),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-fb80aa6f"]]),zk=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}}=Ve();function a(d,f=!1){return d.reduce((u,{[Xo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=Kn(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(g=>{g.request.body.custom=g.request.body.custom??{},g[Xo]=vd()});const p=a(u,!0);return u.forEach(g=>{g.depends_on=g.depends_on.map(_=>p[_])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=Kn(d);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const u=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[Xo]:g,depends_on:_,...h}=m;return{depends_on:_.map(y=>u[y]).filter(y=>y!=null),...h}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(pt,{class:"rc-config-form",config:r,data:e.data,schema:e.schema,tag:"div",onChange:c},{[t.unref(Hn)]:t.withCtx(()=>[t.createVNode(ei,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(kt,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(ei,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(Wo,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Gk),t.createVNode(Et,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(Et,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(Et,t.mergeProps(u,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),t.createVNode(ti)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),Hk={class:"ff-form-pinned-fields"},Yk={class:"ff-form-config-form"},nl=ve(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(u=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===u)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=t.computed(()=>{const f=o.schema;f.fields=f.fields.filter(p=>l.includes(Object.keys(p)[0])),f.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const u=f.fields.find(p=>Object.keys(p)[0]==="protocols");return u&&(u.protocols.help=u.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),u.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1),d=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return za(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",Hk,[t.createVNode(t.unref(Le.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:t.unref(a),onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref($e.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"ff-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Yk,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:d.value,schema:s.value,onChange:u[0]||(u[0]=(...p)=>e.onFormChange&&e.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),Wk=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(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(nl,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(zk,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Xk={key:1},Zk=["innerHTML"],Jk={class:"horizontal-container"},Pd=ve(t.defineComponent({__name:"RadioField",props:{labelAttributes:{},multiple:{type:Boolean},items:{},label:{},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Ue(),a=wt(t.toRef(()=>e.name)),l=Ot(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,f)=>{var m;const u=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",Xk,[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,Zk)]),key:"0"}:void 0]),1040),t.createElementVNode("div",Jk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,g=>(t.openBlock(),t.createBlock(t.unref($e.KRadio),{key:g.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=_=>t.unref(a).value.value=_),c],"card-orientation":"horizontal",label:g.label,"selected-value":g.value},null,8,["model-value","label","selected-value"]))),128))])],512)),[[t.vShow,!t.unref(a).hide.value]])}}}),[["__scopeId","data-v-910a1c85"]]),Qk={class:"sp-form-request-limits-subtitle"},eC={class:"sp-form-request-limits-content"},tC={class:"sp-form-window-type"},nC={class:"sp-form-request-limits-items"},oC={class:"sp-form-request-limits-row"},rC=["id"],iC={class:"sp-form-request-limits-actions"},aC={key:0,class:"sp-form-request-limits-examples"},lC={class:"sp-form-request-limits-examples-badges"},ol="config.window_type",sC=ve(t.defineComponent({__name:"RequestLimitsForm",setup(e){var h;const{t:n}=Xe.createI18n("en-us",Qe),{formData:o,getSelectItems:r,getSchema:i}=Ue(),a=t.computed(()=>{var w,b;const y=(b=(w=o.config)==null?void 0:w.limit)==null?void 0:b.map((C,N)=>{var k,S;return{limit:C,windowSize:(S=(k=o.config)==null?void 0:k.window_size)==null?void 0:S[N]}});return!Array.isArray(y)||y.length===0?[{limit:null,windowSize:null}]:y}),{getKey:l}=Sd("request-limits",a),s=y=>{var w,b;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(b=o.config.window_size)!=null&&b.length||(o.config.window_size=[null]),o.config.limit.splice(y+1,0,null),o.config.window_size.splice(y+1,0,null))},c=y=>{o.config&&(o.config.limit.splice(y,1),o.config.window_size.splice(y,1))},d=(h=i(ol))==null?void 0:h.default,f=t.computed(()=>Ba(o,ol)),u=t.computed(()=>r(ol).sort((y,w)=>y.value===d?-1:w.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),_=(y,w)=>{if(w===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=w}),o.config.limit=[y.config.limit],o.config.window_size=[y.config.window_size]};return(y,w)=>{const b=t.resolveComponent("KLabel"),C=t.resolveComponent("KButton"),N=t.resolveComponent("KBadge"),k=t.resolveComponent("KTooltip"),S=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(S,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",Qk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",eC,[t.createElementVNode("div",tC,[t.createVNode(Pd,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=A=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",nC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(A,R)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(A,R)},[t.createVNode(b,{for:`sp-form-request-limits-item-${R}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:R+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",oC,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${R}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Wn,{name:`$.config.limit.${R}`,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.${R}`,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,rC),t.createElementVNode("div",iC,[t.createVNode(C,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(R)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(C,{appearance:"tertiary",onClick:()=>s(R)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(t.openBlock(),t.createElementBlock("div",aC,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",lC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,(A,R)=>(t.openBlock(),t.createBlock(k,{key:`use-case-${R}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(A.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(A.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(A.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(N,{appearance:p.value===`${f.value}-${R}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>_(A,`${f.value}-${R}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(A.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),cC={id:"sp-form-error-legend",class:"sp-form-error-inputs"},dC=ve(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Xe.createI18n("en-us",Qe);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",cC,[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(kt,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),uC={class:"partial-config-card"},fC={class:"config-card-row-label"},pC={class:"label-text"},mC=["data-testid"],gC=["data-testid"],hC={key:1},yC=["data-testid"],_C=["data-testid"],bC=ve(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Xe.createI18n("en-us",Qe),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=u=>u!=null,l=(u,p)=>a(p)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:s}=he.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,g,_,h;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(g=r[u])!=null&&g.formatter?r[u].formatter(p):p,type:((_=r[u])==null?void 0:_.type)??l(u,p),order:((h=r[u])==null?void 0:h.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=J0(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(d));return(u,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",uC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:g,label:_,value:h,type:y})=>(t.openBlock(),t.createElementBlock("div",{key:g,class:"partial-config-card-row"},[t.createElementVNode("div",fC,[t.createElementVNode("div",pC,t.toDisplayString(_),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${g}-property-value`},[a(h)?(t.openBlock(),t.createElementBlock("div",hC,[y==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${g}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(h)},null,8,["text"])],8,yC)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${g}-plain-text`},t.toDisplayString(h),9,_C))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${g}-no-value`}," – ",8,gC))],8,mC)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),ni=Symbol("redis-partial-info"),wC={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"}};function rl(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(pd,e);return o=>n(o)}const kC={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},CC={class:"shared-redis-config"},EC={class:"shared-redis-config-title"},NC={class:"redis-config-select","data-testid":"redis-config-select"},xC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Td=ve(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},setup(e){var O;const{t:n}=Xe.createI18n("en-us",Qe),o=["host","port","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","timeout","read_timeout","send_timeout","connect_timeout","connection_is_proxied","redis_proxy_type","cloud_authentication"],r={dependencies:{"cloud_authentication.aws_cache_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_region":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_is_serverless":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_access_key_id":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_secret_access_key":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_assume_role_arn":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_role_session_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.gcp_service_account_json":["cloud_authentication.auth_provider","gcp"],"cloud_authentication.azure_client_id":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_client_secret":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_tenant_id":["cloud_authentication.auth_provider","azure"]}},i=e,a=rl(),l=t.inject(ni),s=(l==null?void 0:l.isEditing)||!1,c=t.computed(()=>{var T;return i.redisPath?i.redisPath:(T=l==null?void 0:l.redisPath)!=null&&T.value?"$."+l.redisPath.value:"$.config.redis"}),d=i.redisType||((O=l==null?void 0:l.redisType)==null?void 0:O.value),f=t.computed(()=>{var T;return!!((T=l==null?void 0:l.redisType)!=null&&T.value)}),u=t.ref(null),p=t.ref(!s),{getMessageFromError:m}=he.useErrors(),g=t.ref(i.defaultRedisConfigItem),_=t.ref({}),h=t.ref(),{value:y}=xd("$.partials"),{value:w,hide:b}=wt(c),C=t.inject(Le.FORMS_CONFIG),N=t.ref(null),k=T=>{let E=`${C.apiBaseUrl}${wC[C.app].getOne}`;return C.app==="konnect"?E=E.replace(/{controlPlaneId}/gi,(C==null?void 0:C.controlPlaneId)||""):C.app==="kongManager"&&(E=E.replace(/\/{workspace}/gi,C!=null&&C.workspace?`/${C.workspace}`:"")),E=E.replace(/{id}/gi,String(T)),E},{axiosInstance:S}=he.useAxios(C==null?void 0:C.axiosRequestConfig),A=()=>{p.value?(h.value&&(y.value=h.value,g.value=h.value[0].id,w.value=void 0),w!=null&&w.value&&(_.value=w.value)):(Object.keys(_.value).length&&(w.value=_.value),y!=null&&y.value&&(h.value=y.value),y.value=s?null:void 0)},R=async T=>{if(T){g.value=T,y.value=[{id:T}],h.value=[{id:T}],w.value=void 0;try{const E=await S.get(k(T));if(E.data.config){const L=Object.assign(E.data,E.data.config);delete L.config,u.value=L}}catch(E){console.error(E)}}};return t.watch(()=>p.value,()=>{A()}),t.onBeforeMount(()=>{var T;if(i.defaultRedisConfigItem||y!=null&&y.value){const E=i.defaultRedisConfigItem||((T=y==null?void 0:y.value)==null?void 0:T[0].id);R(E),p.value=!0}else w!=null&&w.value&&(_.value=w.value)}),t.watch(()=>b==null?void 0:b.value,T=>{p.value&&(T&&y.value?y.value=s?null:void 0:T||h.value&&(y.value=h.value,R(h.value[0].id)))}),(T,E)=>{const L=t.resolveComponent("KRadio"),x=t.resolveComponent("KCard");return f.value?t.withDirectives((t.openBlock(),t.createBlock(x,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(n)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",kC,[t.createVNode(L,{modelValue:p.value,"onUpdate:modelValue":E[0]||(E[0]=B=>p.value=B),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(n)("redis.shared_configuration.description"),label:t.unref(n)("redis.shared_configuration.label"),"selected-value":!0},null,8,["modelValue","description","label"]),t.createVNode(L,{modelValue:p.value,"onUpdate:modelValue":E[1]||(E[1]=B=>p.value=B),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(n)("redis.dedicated_configuration.description"),label:t.unref(n)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),t.withDirectives(t.createElementVNode("div",CC,[t.createElementVNode("div",EC,t.toDisplayString(t.unref(n)("redis.shared_configuration.title")),1),t.createElementVNode("div",NC,[t.createVNode(t.unref(Gs.RedisConfigurationSelector),{"data-testid":"redis-config-select-trigger","model-value":g.value,"redis-type":t.unref(d),onErrorChange:E[2]||(E[2]=B=>N.value=B),onToast:t.unref(a),"onUpdate:modelValue":E[3]||(E[3]=B=>R(B))},null,8,["model-value","redis-type","onToast"])]),u.value?(t.openBlock(),t.createBlock(bC,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),N.value?(t.openBlock(),t.createElementBlock("p",xC,t.toDisplayString(N.value?t.unref(m)(N.value):t.unref(n)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)],512),[[t.vShow,p.value]]),p.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Et,t.mergeProps({key:0},i,{"as-child":"","fields-order":o,name:c.value,"render-rules":r,"reset-label-path":"reset"}),null,16,["name"]))]),_:1},8,["title"])),[[t.vShow,!t.unref(b)]]):t.withDirectives((t.openBlock(),t.createBlock(Et,t.mergeProps({key:1},i,{"fields-order":o,"hide-required-asterisk":"",name:c.value,"render-rules":r}),null,16,["name"])),[[t.vShow,!t.unref(b)]])}}}),[["__scopeId","data-v-d9fc3bcf"]]),SC=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=Ue(),o=t.inject(ni),r=(o==null?void 0:o.isEditing)||!1;return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=r?null:void 0)}),(i,a)=>(t.openBlock(),t.createBlock(Ad,null,{default:t.withCtx(()=>{var l;return[((l=t.unref(n).config)==null?void 0:l.strategy)==="redis"?(t.openBlock(),t.createBlock(Td,{key:0})):t.createCommentVNode("",!0)]}),_:1}))}}),vC=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change"],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(pt,{config:r,data:e.data,schema:e.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(sC),t.createVNode(dC)]),_:1}),t.createVNode(ti,null,{default:t.withCtx(()=>[t.createVNode(ft,{name:"config.dictionary_name"}),t.createVNode(ft,{name:"config.lock_dictionary_name"}),t.createVNode(ft,{name:"config.strategy"}),t.createVNode(SC),t.createVNode(ft,{name:"config.namespace"}),t.createVNode(ft,{name:"config.hide_client_headers"}),t.createVNode(ft,{name:"config.disable_penalty"}),t.createVNode(ft,{name:"config.retry_after_jitter_max"}),t.createVNode(ft,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),AC=t.defineComponent({__name:"ServiceProtectionForm",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(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(nl,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(vC,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Od=t.defineComponent({__name:"VFGField",props:{formOptions:{},vfgSchema:{}},setup(e){const n=Symbol("rawTagsString"),{formData:o,getSchema:r}=Ue(),i=t.computed(()=>{const l={};return e.vfgSchema.fields.forEach(s=>{s.type==="AutoSuggest"?o[s.model.split("-")[0]]&&(l[s.model]=o[s.model.split("-")[0]].id):s.model==="tags"&&o[s.model]?l[s.model]=o[s.model][n]??o[s.model].join(", "):l[s.model]=o[s.model]}),l});function a(l,s){const c=s.split("-")[0],d=r(c);if(!d)throw new Error(`Field schema not found for path: ${c}`);if(d.type==="foreign")o[c]=l?{id:l}:null;else if(c==="tags"){const f=l.split(",").map(u=>u.trim()).filter(Boolean);o[c]=f,o[c][n]=l}else o[c]=l}return(l,s)=>(t.openBlock(),t.createBlock(t.unref(Le.VueFormGenerator),{model:i.value,options:e.formOptions,schema:e.vfgSchema,onModelUpdated:a},null,8,["model","options","schema"]))}}),IC={"data-testid":"ff-identity-realms-field"},PC=["innerHTML"],TC=t.defineComponent({__name:"FreeFormAdapter",props:{name:{},label:{},labelAttributes:{},required:{type:Boolean},placeholder:{},resetLabelPath:{}},setup(e){const n=e,{error:o,value:r,path:i}=wt(t.toRef(n,"name"));if(o)throw o;const a=Ot(t.toRef(n,"name"),n);return(l,s)=>{var d;const c=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",IC,[t.createVNode(c,t.mergeProps({class:"ff-array-field-label"},t.unref(a),{"data-testid":`ff-label-${t.unref(i)}`,"tooltip-attributes":t.unref(a).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a).label)+" ",1)]),_:2},[(d=t.unref(a).labelAttributes)!=null&&d.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(l.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,PC)])]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(Ys,{modelValue:t.unref(r),"onUpdate:modelValue":s[0]||(s[0]=f=>t.isRef(r)?r.value=f:null)},null,8,["modelValue"])])}}}),OC={class:"radio-group"},$C={key:0,class:"scope-detail"},$d=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},editorMode:{default:"form"},formConfig:{},renderRules:{},pluginName:{}},setup(e){const n=["config","partials","__ui_data","enabled","protocols","instance_name","tags","consumer","consumer_group","route","service"],{t:o}=Xe.createI18n("en-us",Qe),r=t.createPropsRestProxy(e,["editorMode"]),i=t.inject(ni),a=t.useSlots(),l=t.computed(()=>r.formConfig??{hasValue:E=>!!E&&Object.keys(E).length>0,prepareFormData:E=>r.isEditing?E:{...E,...T()}}),s=t.computed(()=>{var E;return(E=f.value)!=null&&E.disabled?{class:"disabled-scope",maxWidth:"300",text:o("plugins.form.scoping.disable_global_radio")}:{class:"scope"}}),c=t.computed(()=>{var E,L;return(E=r.formSchema)!=null&&E.groups?r.formSchema.groups.reduce((x,B)=>{var G,K;const P=B.fields,q=(K=(G=B.collapsible)==null?void 0:G.nestedCollapsible)!=null&&K.fields?P.concat(B.collapsible.nestedCollapsible.fields):P;return x.concat(q)},[]):((L=r.formSchema)==null?void 0:L.fields)||[]}),d=t.computed(()=>({fields:c.value.filter(E=>E.model==="enabled").map(E=>({...E,styleClasses:"ff-enabled-field",label:o("plugins.form.fields.plugin_status.label"),textOn:o("plugins.form.fields.plugin_status.text_on"),textOff:o("plugins.form.fields.plugin_status.text_off")}))})),f=t.computed(()=>c.value.find(E=>E.type==="selectionGroup")),u=t.computed(()=>{var E;return(((E=f.value)==null?void 0:E.fields)||[]).map(({label:L,description:x})=>({label:L,description:x}))}),p=t.computed(()=>{var E,L;return(L=(E=f.value)==null?void 0:E.fields)==null?void 0:L[1]}),m=t.computed(()=>{const E=["instance_name","protocols","tags"];return{fields:c.value.filter(L=>E.includes(L.model))}}),g=["config"],_=t.computed(()=>{var x;const E={type:"record",fields:r.schema.fields.filter(B=>g.includes(Object.keys(B)[0]))};return[...d.value.fields,...((x=p.value)==null?void 0:x.fields)??[],...m.value.fields].forEach(B=>{if(B.type==="AutoSuggest")E.fields.push({[B.model.split("-")[0]]:{type:"foreign",reference:B.entity,description:B.help}});else if(B.model==="enabled")E.fields.push({[B.model]:{type:"boolean",default:!0}});else if(B.model==="instance_name")E.fields.push({[B.model]:{type:"string",description:B.help}});else if(B.model==="protocols")E.fields.push({[B.model]:{type:"set",elements:{type:"string",one_of:B.values.map(P=>P.value)},default:[...B.default],required:B.required,description:B.help,help:B.default?o("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:B.default.join(", ")}):o("plugins.form.fields.protocols.placeholder")}});else if(B.model==="tags")E.fields.push({[B.model]:{type:"set",elements:{type:"string"},description:B.help,default:B.default||[]}});else throw new Error(`Unsupported VFG field type '${B.type}' for model '${B.model}'`)}),E}),h=t.computed(()=>za(r.model,n)),y=t.computed(()=>{var E;return((E=p.value)==null?void 0:E.fields.map(L=>L.model))??[]}),w=t.computed(()=>y.value.map(E=>E.split("-")[0])),b=t.ref(r.isEditing?za(h.value,w.value):T()),C=t.ref(Object.values(b.value).some(O)),N=t.useTemplateRef("form");let k=!1;function S(){if(!N.value)return;const{getRawValue:E,setValue:L}=N.value,B={...E()};C.value?w.value.forEach(P=>{B[P]=b.value[P]??null}):w.value.forEach(P=>{B[P]=null}),k=!0,L(B),t.nextTick(()=>{k=!1})}function A(E){if(k||R(E),e.editorMode==="code"){const L=w.value.some(x=>O(E[x]));L!==C.value&&(C.value=L)}r.onFormChange(E,n)}function R(E){w.value.forEach(L=>{const x=E[L];Wr(x,"id")&&x.id!=null?b.value[L]=x:b.value[L]=null})}function O(E){return Wr(E,"id")&&E.id!=null}function T(){const E={};return y.value.forEach(L=>{if(r.formModel[L]){const x=L.split("-")[0];if(!x)return;E[x]={id:r.formModel[L]}}}),E}return(E,L)=>(t.openBlock(),t.createBlock(pt,{ref:"form",class:"ff-standard-layout",config:l.value,data:h.value,"render-rules":e.renderRules,schema:_.value,tag:"div",onChange:A},{[t.unref(Hn)]:t.withCtx(()=>[t.createVNode(ei,{match:({path:x})=>{var B,P;return x===((P=(B=t.unref(i))==null?void 0:B.redisPath)==null?void 0:P.value)}},{default:t.withCtx(()=>[t.createVNode(Td)]),_:1},8,["match"]),t.createVNode(ei,{match:({path:x})=>e.pluginName==="key-auth"&&x==="config.identity_realms"},{default:t.withCtx(x=>[t.createVNode(TC,t.normalizeProps(t.guardReactiveProps(x)),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[e.editorMode==="form"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(t.unref(he.EntityFormBlock),{"data-testid":"form-section-plugin-scope",description:e.generalInfoDescription??t.unref(o)("plugins.form.sections.plugin_scope.description"),step:1,title:e.generalInfoTitle??t.unref(o)("plugins.form.sections.plugin_scope.title")},t.createSlots({default:t.withCtx(()=>{var x;return[(t.openBlock(),t.createBlock(t.resolveDynamicComponent((x=f.value)!=null&&x.disabled?t.unref($e.KTooltip):"div"),t.normalizeProps(t.guardReactiveProps(s.value)),{default:t.withCtx(()=>{var B,P;return[t.createElementVNode("div",OC,[t.createVNode(t.unref($e.KRadio),t.mergeProps({modelValue:C.value,"onUpdate:modelValue":L[0]||(L[0]=q=>C.value=q),card:"","card-orientation":"horizontal"},u.value[0],{disabled:(B=f.value)==null?void 0:B.disabled,"selected-value":!1,"onUpdate:modelValue":S}),null,16,["modelValue","disabled"]),u.value[1]?(t.openBlock(),t.createBlock(t.unref($e.KRadio),t.mergeProps({key:0,modelValue:C.value,"onUpdate:modelValue":L[1]||(L[1]=q=>C.value=q),card:"","card-orientation":"horizontal"},u.value[1],{disabled:(P=f.value)==null?void 0:P.disabled,"selected-value":!0,"onUpdate:modelValue":S}),null,16,["modelValue","disabled"])):t.createCommentVNode("",!0)])]}),_:1},16)),p.value?t.withDirectives((t.openBlock(),t.createElementBlock("div",$C,[t.createVNode(Od,{"form-options":e.formOptions,"vfg-schema":p.value},null,8,["form-options","vfg-schema"])],512)),[[t.vShow,C.value]]):t.createCommentVNode("",!0)]}),_:2},[a["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,a["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,a["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(he.EntityFormBlock),{"data-testid":"form-section-plugin-config",description:e.pluginConfigDescription??t.unref(o)("plugins.form.sections.plugin_config.description"),step:2,title:e.pluginConfigTitle??t.unref(o)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(E.$slots,"default",{},void 0,!0)]),_:2},[a["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,a["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,a["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(he.EntityFormBlock),{"data-testid":"form-section-general-info",description:t.unref(o)("plugins.form.sections.plugin_general_info.description"),step:3,title:t.unref(o)("plugins.form.sections.general_info.title")},{default:t.withCtx(()=>[t.createVNode(Od,{"form-options":e.formOptions,"vfg-schema":d.value},null,8,["form-options","vfg-schema"]),_.value.fields.find(x=>Object.keys(x)[0]==="instance_name")?(t.openBlock(),t.createBlock(kt,{key:0,label:t.unref(o)("plugins.form.fields.instance_name.label"),name:"instance_name",placeholder:t.unref(o)("plugins.form.fields.instance_name.placeholder")},null,8,["label","placeholder"])):t.createCommentVNode("",!0),_.value.fields.find(x=>Object.keys(x)[0]==="tags")?(t.openBlock(),t.createBlock(Qr,{key:1,help:t.unref(o)("plugins.form.fields.tags.help"),name:"tags",placeholder:t.unref(o)("plugins.form.fields.tags.placeholder")},null,8,["help","placeholder"])):t.createCommentVNode("",!0),_.value.fields.find(x=>Object.keys(x)[0]==="protocols")?(t.openBlock(),t.createBlock(ft,{key:2,name:"protocols"})):t.createCommentVNode("",!0)]),_:1},8,["description","title"])],64)):t.renderSlot(E.$slots,"code-editor",{key:1},void 0,!0)]),_:2},1032,["config","data","render-rules","schema"]))}}),[["__scopeId","data-v-e4394231"]]);/*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT */function Bd(e){return typeof e>"u"||e===null}function BC(e){return typeof e=="object"&&e!==null}function VC(e){return Array.isArray(e)?e:Bd(e)?[]:[e]}function RC(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 DC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function MC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var LC=Bd,FC=BC,UC=VC,KC=DC,jC=MC,GC=RC,at={isNothing:LC,isObject:FC,toArray:UC,repeat:KC,isNegativeZero:jC,extend:GC};function Vd(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
|
|
12
|
+
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:co.tags}]},Xg={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"]}}]},ec={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:Rn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Zg=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)}}:{},Jg={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},It={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",freeformRenderRules:{dependencies:{"config.brute_force_protection.redis":["config.brute_force_protection.strategy","redis"]}},...W.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...W.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",...W.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...W.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"]]},...W.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"]]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...W.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",...W.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",...W.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"]]},freeformRenderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}},...W.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",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...W.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,...W.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,...W.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,...W.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,...W.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,...W.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,...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...W.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"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.access_logs_endpoint","config.traces_endpoint","config.logs_endpoint"]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...W.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"]]},...W.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",...W.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",...W.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...W.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,...W.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,...W.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,...W.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"]]]},...W.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...W.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...W.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,...W.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,...W.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,...W.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,...W.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,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]},"ai-lakera-guard":{descriptionKey:"plugins.meta.ai-lakera-guard.description",nameKey:"plugins.meta.ai-lakera-guard.name",useLegacyForm:!0,...W.PLUGIN_GROUP_AND_SCOPE_MAP["ai-lakera-guard"]}},uo={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Ys,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Vn(Ys),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Ws,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Vn(Ws)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Zs,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Vn(Zs)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:ec,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Vn(ec)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Qs,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Vn(Qs)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Js,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Vn(Js)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Yg,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Qg={acls:Fg,basicauth_credentials:Ug,keyauth_credentials:zg,keyauth_enc_credentials:Jg,oauth2_credentials:Xg,hmacauth_credentials:Hg,jwt_secrets:Wg},eh=()=>{const{i18n:{t:e}}=Ve(),n={},o={};for(const[i,a]of Object.entries(It))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(uo))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:uo,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},Lo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},th={"config-prompts-prepend":{...Lo,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":{...Lo,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"}]}}}},nh={"config-templates":{...Lo,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"}]}}}},oh={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)}},tc=e=>e.split(",").map(n=>n.trim()).filter(Boolean),rh={shamefullyTransformPayload:({payload:e})=>{var n;(n=e==null?void 0:e.config)!=null&&n.collection_acl_config&&Object.values(e.config.collection_acl_config).forEach(o=>{typeof(o==null?void 0:o.allow)=="string"&&(o.allow=tc(o.allow)),typeof(o==null?void 0:o.deny)=="string"&&(o.deny=tc(o.deny))})}},ih={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},ah={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:co.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"}},Re={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"},Mr={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},lh={"config-metrics":{...Mr,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"}]}}}},sh={"config-functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},ch={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},dh={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},uh={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},fh={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},ph={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},nc=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:co.fields.arrayItems({newElementButtonLabel:"Add"})}),ph),Lr={"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"}},mh={"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":{}},gh=["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]:co.fields.arrayItems({newElementButtonLabel:"Add"})}),mh),oc={"config-add-json":{...Re,label:"Config.Add.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Re,label:"Config.Append.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Re,label:"Config.Remove.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Re,label:"Config.Rename.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Re,label:"Config.Replace.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},hh={...oc,"config-allow-json":{...Re,label:"Config.Allow.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Re,label:"Config.Transform.Functions",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Re,label:"Config.Transform.Json",inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},yh={"config-rules":{...Lo,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"}]}}}},_h={"config-session_redis_cluster_nodes":{...Lo,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"}]}}}},bh={"config-flow-functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},wh={"config-message-functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}}},kh={"config-metrics":{...Mr,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"]}]}}}},Ch={"config-metrics":{...Mr,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage","cache_datastore_hits_total","cache_datastore_misses_total"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},Eh={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Nh={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var rc=typeof global=="object"&&global&&global.Object===Object&&global,xh=typeof self=="object"&&self&&self.Object===Object&&self,qt=rc||xh||Function("return this")(),Pt=qt.Symbol,ic=Object.prototype,Sh=ic.hasOwnProperty,vh=ic.toString,Fo=Pt?Pt.toStringTag:void 0;function Ah(e){var n=Sh.call(e,Fo),o=e[Fo];try{e[Fo]=void 0;var r=!0}catch{}var i=vh.call(e);return r&&(n?e[Fo]=o:delete e[Fo]),i}var Ih=Object.prototype,Ph=Ih.toString;function Th(e){return Ph.call(e)}var Oh="[object Null]",$h="[object Undefined]",ac=Pt?Pt.toStringTag:void 0;function Dn(e){return e==null?e===void 0?$h:Oh:ac&&ac in Object(e)?Ah(e):Th(e)}function zt(e){return e!=null&&typeof e=="object"}var Bh="[object Symbol]";function wa(e){return typeof e=="symbol"||zt(e)&&Dn(e)==Bh}function ka(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 Rt=Array.isArray,lc=Pt?Pt.prototype:void 0,sc=lc?lc.toString:void 0;function cc(e){if(typeof e=="string")return e;if(Rt(e))return ka(e,cc)+"";if(wa(e))return sc?sc.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Mn(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function dc(e){return e}var Vh="[object AsyncFunction]",Rh="[object Function]",Dh="[object GeneratorFunction]",Mh="[object Proxy]";function Fr(e){if(!Mn(e))return!1;var n=Dn(e);return n==Rh||n==Dh||n==Vh||n==Mh}var Ca=qt["__core-js_shared__"],uc=function(){var e=/[^.]+$/.exec(Ca&&Ca.keys&&Ca.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Lh(e){return!!uc&&uc in e}var Fh=Function.prototype,Uh=Fh.toString;function Ln(e){if(e!=null){try{return Uh.call(e)}catch{}try{return e+""}catch{}}return""}var Kh=/[\\^$.*+?()[\]{}|]/g,jh=/^\[object .+?Constructor\]$/,Gh=Function.prototype,qh=Object.prototype,zh=Gh.toString,Hh=qh.hasOwnProperty,Yh=RegExp("^"+zh.call(Hh).replace(Kh,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Wh(e){if(!Mn(e)||Lh(e))return!1;var n=Fr(e)?Yh:jh;return n.test(Ln(e))}function Xh(e,n){return e==null?void 0:e[n]}function Fn(e,n){var o=Xh(e,n);return Wh(o)?o:void 0}var Ea=Fn(qt,"WeakMap"),fc=Object.create,Zh=function(){function e(){}return function(n){if(!Mn(n))return{};if(fc)return fc(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function Jh(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 Qh(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var ey=800,ty=16,ny=Date.now;function oy(e){var n=0,o=0;return function(){var r=ny(),i=ty-(r-o);if(o=r,i>0){if(++n>=ey)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function ry(e){return function(){return e}}var Ur=function(){try{var e=Fn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),iy=Ur?function(e,n){return Ur(e,"toString",{configurable:!0,enumerable:!1,value:ry(n),writable:!0})}:dc,pc=oy(iy);function ay(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}function ly(e,n,o,r){for(var i=e.length,a=o+-1;++a<i;)if(n(e[a],a,e))return a;return-1}function sy(e){return e!==e}function cy(e,n,o){for(var r=o-1,i=e.length;++r<i;)if(e[r]===n)return r;return-1}function dy(e,n,o){return n===n?cy(e,n,o):ly(e,sy,o)}function uy(e,n){var o=e==null?0:e.length;return!!o&&dy(e,n,0)>-1}var fy=9007199254740991,py=/^(?:0|[1-9]\d*)$/;function Na(e,n){var o=typeof e;return n=n??fy,!!n&&(o=="number"||o!="symbol"&&py.test(e))&&e>-1&&e%1==0&&e<n}function mc(e,n,o){n=="__proto__"&&Ur?Ur(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function xa(e,n){return e===n||e!==e&&n!==n}var my=Object.prototype,gy=my.hasOwnProperty;function Sa(e,n,o){var r=e[n];(!(gy.call(e,n)&&xa(r,o))||o===void 0&&!(n in e))&&mc(e,n,o)}function Uo(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?mc(o,s,c):Sa(o,s,c)}return o}var gc=Math.max;function hc(e,n,o){return n=gc(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=gc(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),Jh(e,this,s)}}function hy(e,n){return pc(hc(e,n,dc),e+"")}var yy=9007199254740991;function va(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=yy}function Kr(e){return e!=null&&va(e.length)&&!Fr(e)}var _y=Object.prototype;function jr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||_y;return e===o}function by(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var wy="[object Arguments]";function yc(e){return zt(e)&&Dn(e)==wy}var _c=Object.prototype,ky=_c.hasOwnProperty,Cy=_c.propertyIsEnumerable,Gr=yc(function(){return arguments}())?yc:function(e){return zt(e)&&ky.call(e,"callee")&&!Cy.call(e,"callee")};function Ey(){return!1}var bc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,wc=bc&&typeof module=="object"&&module&&!module.nodeType&&module,Ny=wc&&wc.exports===bc,kc=Ny?qt.Buffer:void 0,xy=kc?kc.isBuffer:void 0,Ko=xy||Ey,Sy="[object Arguments]",vy="[object Array]",Ay="[object Boolean]",Iy="[object Date]",Py="[object Error]",Ty="[object Function]",Oy="[object Map]",$y="[object Number]",By="[object Object]",Vy="[object RegExp]",Ry="[object Set]",Dy="[object String]",My="[object WeakMap]",Ly="[object ArrayBuffer]",Fy="[object DataView]",Uy="[object Float32Array]",Ky="[object Float64Array]",jy="[object Int8Array]",Gy="[object Int16Array]",qy="[object Int32Array]",zy="[object Uint8Array]",Hy="[object Uint8ClampedArray]",Yy="[object Uint16Array]",Wy="[object Uint32Array]",qe={};qe[Uy]=qe[Ky]=qe[jy]=qe[Gy]=qe[qy]=qe[zy]=qe[Hy]=qe[Yy]=qe[Wy]=!0,qe[Sy]=qe[vy]=qe[Ly]=qe[Ay]=qe[Fy]=qe[Iy]=qe[Py]=qe[Ty]=qe[Oy]=qe[$y]=qe[By]=qe[Vy]=qe[Ry]=qe[Dy]=qe[My]=!1;function Xy(e){return zt(e)&&va(e.length)&&!!qe[Dn(e)]}function Aa(e){return function(n){return e(n)}}var Cc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,jo=Cc&&typeof module=="object"&&module&&!module.nodeType&&module,Zy=jo&&jo.exports===Cc,Ia=Zy&&rc.process,fo=function(){try{var e=jo&&jo.require&&jo.require("util").types;return e||Ia&&Ia.binding&&Ia.binding("util")}catch{}}(),Ec=fo&&fo.isTypedArray,Pa=Ec?Aa(Ec):Xy,Jy=Object.prototype,Qy=Jy.hasOwnProperty;function Nc(e,n){var o=Rt(e),r=!o&&Gr(e),i=!o&&!r&&Ko(e),a=!o&&!r&&!i&&Pa(e),l=o||r||i||a,s=l?by(e.length,String):[],c=s.length;for(var d in e)(n||Qy.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Na(d,c)))&&s.push(d);return s}function xc(e,n){return function(o){return e(n(o))}}var e_=xc(Object.keys,Object),t_=Object.prototype,n_=t_.hasOwnProperty;function Sc(e){if(!jr(e))return e_(e);var n=[];for(var o in Object(e))n_.call(e,o)&&o!="constructor"&&n.push(o);return n}function Ta(e){return Kr(e)?Nc(e):Sc(e)}function o_(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var r_=Object.prototype,i_=r_.hasOwnProperty;function a_(e){if(!Mn(e))return o_(e);var n=jr(e),o=[];for(var r in e)r=="constructor"&&(n||!i_.call(e,r))||o.push(r);return o}function Oa(e){return Kr(e)?Nc(e,!0):a_(e)}var l_=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s_=/^\w*$/;function c_(e,n){if(Rt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||wa(e)?!0:s_.test(e)||!l_.test(e)||n!=null&&e in Object(n)}var Go=Fn(Object,"create");function d_(){this.__data__=Go?Go(null):{},this.size=0}function u_(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var f_="__lodash_hash_undefined__",p_=Object.prototype,m_=p_.hasOwnProperty;function g_(e){var n=this.__data__;if(Go){var o=n[e];return o===f_?void 0:o}return m_.call(n,e)?n[e]:void 0}var h_=Object.prototype,y_=h_.hasOwnProperty;function __(e){var n=this.__data__;return Go?n[e]!==void 0:y_.call(n,e)}var b_="__lodash_hash_undefined__";function w_(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Go&&n===void 0?b_:n,this}function Un(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])}}Un.prototype.clear=d_,Un.prototype.delete=u_,Un.prototype.get=g_,Un.prototype.has=__,Un.prototype.set=w_;function k_(){this.__data__=[],this.size=0}function qr(e,n){for(var o=e.length;o--;)if(xa(e[o][0],n))return o;return-1}var C_=Array.prototype,E_=C_.splice;function N_(e){var n=this.__data__,o=qr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():E_.call(n,o,1),--this.size,!0}function x_(e){var n=this.__data__,o=qr(n,e);return o<0?void 0:n[o][1]}function S_(e){return qr(this.__data__,e)>-1}function v_(e,n){var o=this.__data__,r=qr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function nn(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}nn.prototype.clear=k_,nn.prototype.delete=N_,nn.prototype.get=x_,nn.prototype.has=S_,nn.prototype.set=v_;var qo=Fn(qt,"Map");function A_(){this.size=0,this.__data__={hash:new Un,map:new(qo||nn),string:new Un}}function I_(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function zr(e,n){var o=e.__data__;return I_(n)?o[typeof n=="string"?"string":"hash"]:o.map}function P_(e){var n=zr(this,e).delete(e);return this.size-=n?1:0,n}function T_(e){return zr(this,e).get(e)}function O_(e){return zr(this,e).has(e)}function $_(e,n){var o=zr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function on(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}on.prototype.clear=A_,on.prototype.delete=P_,on.prototype.get=T_,on.prototype.has=O_,on.prototype.set=$_;var B_="Expected a function";function $a(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(B_);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($a.Cache||on),o}$a.Cache=on;var V_=500;function R_(e){var n=$a(e,function(r){return o.size===V_&&o.clear(),r}),o=n.cache;return n}var D_=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,M_=/\\(\\)?/g,L_=R_(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(D_,function(o,r,i,a){n.push(i?a.replace(M_,"$1"):r||o)}),n});function Hr(e){return e==null?"":cc(e)}function po(e,n){return Rt(e)?e:c_(e,n)?[e]:L_(Hr(e))}function Yr(e){if(typeof e=="string"||wa(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Ba(e,n){n=po(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[Yr(n[o++])];return o&&o==r?e:void 0}function Va(e,n,o){var r=e==null?void 0:Ba(e,n);return r===void 0?o:r}function Ra(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var vc=Pt?Pt.isConcatSpreadable:void 0;function F_(e){return Rt(e)||Gr(e)||!!(vc&&e&&e[vc])}function U_(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=F_),i||(i=[]);++a<l;){var s=e[a];o(s)?Ra(i,s):i[i.length]=s}return i}function K_(e){var n=e==null?0:e.length;return n?U_(e):[]}function Ac(e){return pc(hc(e,void 0,K_),e+"")}var Da=xc(Object.getPrototypeOf,Object),j_="[object Object]",G_=Function.prototype,q_=Object.prototype,Ic=G_.toString,z_=q_.hasOwnProperty,H_=Ic.call(Object);function Y_(e){if(!zt(e)||Dn(e)!=j_)return!1;var n=Da(e);if(n===null)return!0;var o=z_.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&Ic.call(o)==H_}function Pc(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 W_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:Pc(e,n,o)}var X_="\\ud800-\\udfff",Z_="\\u0300-\\u036f",J_="\\ufe20-\\ufe2f",Q_="\\u20d0-\\u20ff",eb=Z_+J_+Q_,tb="\\ufe0e\\ufe0f",nb="\\u200d",ob=RegExp("["+nb+X_+eb+tb+"]");function Tc(e){return ob.test(e)}function rb(e){return e.split("")}var Oc="\\ud800-\\udfff",ib="\\u0300-\\u036f",ab="\\ufe20-\\ufe2f",lb="\\u20d0-\\u20ff",sb=ib+ab+lb,cb="\\ufe0e\\ufe0f",db="["+Oc+"]",Ma="["+sb+"]",La="\\ud83c[\\udffb-\\udfff]",ub="(?:"+Ma+"|"+La+")",$c="[^"+Oc+"]",Bc="(?:\\ud83c[\\udde6-\\uddff]){2}",Vc="[\\ud800-\\udbff][\\udc00-\\udfff]",fb="\\u200d",Rc=ub+"?",Dc="["+cb+"]?",pb="(?:"+fb+"(?:"+[$c,Bc,Vc].join("|")+")"+Dc+Rc+")*",mb=Dc+Rc+pb,gb="(?:"+[$c+Ma+"?",Ma,Bc,Vc,db].join("|")+")",hb=RegExp(La+"(?="+La+")|"+gb+mb,"g");function yb(e){return e.match(hb)||[]}function _b(e){return Tc(e)?yb(e):rb(e)}function bb(e){return function(n){n=Hr(n);var o=Tc(n)?_b(n):void 0,r=o?o[0]:n.charAt(0),i=o?W_(o,1).join(""):n.slice(1);return r[e]()+i}}var wb=bb("toUpperCase");function kb(e){return function(n){return e==null?void 0:e[n]}}function Cb(){this.__data__=new nn,this.size=0}function Eb(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function Nb(e){return this.__data__.get(e)}function xb(e){return this.__data__.has(e)}var Sb=200;function vb(e,n){var o=this.__data__;if(o instanceof nn){var r=o.__data__;if(!qo||r.length<Sb-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new on(r)}return o.set(e,n),this.size=o.size,this}function rn(e){var n=this.__data__=new nn(e);this.size=n.size}rn.prototype.clear=Cb,rn.prototype.delete=Eb,rn.prototype.get=Nb,rn.prototype.has=xb,rn.prototype.set=vb;function Ab(e,n){return e&&Uo(n,Ta(n),e)}function Ib(e,n){return e&&Uo(n,Oa(n),e)}var Mc=typeof Ae=="object"&&Ae&&!Ae.nodeType&&Ae,Lc=Mc&&typeof module=="object"&&module&&!module.nodeType&&module,Pb=Lc&&Lc.exports===Mc,Fc=Pb?qt.Buffer:void 0,Uc=Fc?Fc.allocUnsafe:void 0;function Tb(e,n){if(n)return e.slice();var o=e.length,r=Uc?Uc(o):new e.constructor(o);return e.copy(r),r}function Ob(e,n){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];n(l,o,e)&&(a[i++]=l)}return a}function Kc(){return[]}var $b=Object.prototype,Bb=$b.propertyIsEnumerable,jc=Object.getOwnPropertySymbols,Fa=jc?function(e){return e==null?[]:(e=Object(e),Ob(jc(e),function(n){return Bb.call(e,n)}))}:Kc;function Vb(e,n){return Uo(e,Fa(e),n)}var Rb=Object.getOwnPropertySymbols,Gc=Rb?function(e){for(var n=[];e;)Ra(n,Fa(e)),e=Da(e);return n}:Kc;function Db(e,n){return Uo(e,Gc(e),n)}function qc(e,n,o){var r=n(e);return Rt(e)?r:Ra(r,o(e))}function Ua(e){return qc(e,Ta,Fa)}function zc(e){return qc(e,Oa,Gc)}var Ka=Fn(qt,"DataView"),ja=Fn(qt,"Promise"),Ga=Fn(qt,"Set"),Hc="[object Map]",Mb="[object Object]",Yc="[object Promise]",Wc="[object Set]",Xc="[object WeakMap]",Zc="[object DataView]",Lb=Ln(Ka),Fb=Ln(qo),Ub=Ln(ja),Kb=Ln(Ga),jb=Ln(Ea),Tt=Dn;(Ka&&Tt(new Ka(new ArrayBuffer(1)))!=Zc||qo&&Tt(new qo)!=Hc||ja&&Tt(ja.resolve())!=Yc||Ga&&Tt(new Ga)!=Wc||Ea&&Tt(new Ea)!=Xc)&&(Tt=function(e){var n=Dn(e),o=n==Mb?e.constructor:void 0,r=o?Ln(o):"";if(r)switch(r){case Lb:return Zc;case Fb:return Hc;case Ub:return Yc;case Kb:return Wc;case jb:return Xc}return n});var Gb=Object.prototype,qb=Gb.hasOwnProperty;function zb(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&qb.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var Wr=qt.Uint8Array;function qa(e){var n=new e.constructor(e.byteLength);return new Wr(n).set(new Wr(e)),n}function Hb(e,n){var o=n?qa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var Yb=/\w*$/;function Wb(e){var n=new e.constructor(e.source,Yb.exec(e));return n.lastIndex=e.lastIndex,n}var Jc=Pt?Pt.prototype:void 0,Qc=Jc?Jc.valueOf:void 0;function Xb(e){return Qc?Object(Qc.call(e)):{}}function Zb(e,n){var o=n?qa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Jb="[object Boolean]",Qb="[object Date]",ew="[object Map]",tw="[object Number]",nw="[object RegExp]",ow="[object Set]",rw="[object String]",iw="[object Symbol]",aw="[object ArrayBuffer]",lw="[object DataView]",sw="[object Float32Array]",cw="[object Float64Array]",dw="[object Int8Array]",uw="[object Int16Array]",fw="[object Int32Array]",pw="[object Uint8Array]",mw="[object Uint8ClampedArray]",gw="[object Uint16Array]",hw="[object Uint32Array]";function yw(e,n,o){var r=e.constructor;switch(n){case aw:return qa(e);case Jb:case Qb:return new r(+e);case lw:return Hb(e,o);case sw:case cw:case dw:case uw:case fw:case pw:case mw:case gw:case hw:return Zb(e,o);case ew:return new r;case tw:case rw:return new r(e);case nw:return Wb(e);case ow:return new r;case iw:return Xb(e)}}function _w(e){return typeof e.constructor=="function"&&!jr(e)?Zh(Da(e)):{}}var bw="[object Map]";function ww(e){return zt(e)&&Tt(e)==bw}var ed=fo&&fo.isMap,kw=ed?Aa(ed):ww,Cw="[object Set]";function Ew(e){return zt(e)&&Tt(e)==Cw}var td=fo&&fo.isSet,Nw=td?Aa(td):Ew,xw=1,Sw=2,vw=4,nd="[object Arguments]",Aw="[object Array]",Iw="[object Boolean]",Pw="[object Date]",Tw="[object Error]",od="[object Function]",Ow="[object GeneratorFunction]",$w="[object Map]",Bw="[object Number]",rd="[object Object]",Vw="[object RegExp]",Rw="[object Set]",Dw="[object String]",Mw="[object Symbol]",Lw="[object WeakMap]",Fw="[object ArrayBuffer]",Uw="[object DataView]",Kw="[object Float32Array]",jw="[object Float64Array]",Gw="[object Int8Array]",qw="[object Int16Array]",zw="[object Int32Array]",Hw="[object Uint8Array]",Yw="[object Uint8ClampedArray]",Ww="[object Uint16Array]",Xw="[object Uint32Array]",Ge={};Ge[nd]=Ge[Aw]=Ge[Fw]=Ge[Uw]=Ge[Iw]=Ge[Pw]=Ge[Kw]=Ge[jw]=Ge[Gw]=Ge[qw]=Ge[zw]=Ge[$w]=Ge[Bw]=Ge[rd]=Ge[Vw]=Ge[Rw]=Ge[Dw]=Ge[Mw]=Ge[Hw]=Ge[Yw]=Ge[Ww]=Ge[Xw]=!0,Ge[Tw]=Ge[od]=Ge[Lw]=!1;function zo(e,n,o,r,i,a){var l,s=n&xw,c=n&Sw,d=n&vw;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!Mn(e))return e;var f=Rt(e);if(f){if(l=zb(e),!s)return Qh(e,l)}else{var u=Tt(e),p=u==od||u==Ow;if(Ko(e))return Tb(e,s);if(u==rd||u==nd||p&&!i){if(l=c||p?{}:_w(e),!s)return c?Db(e,Ib(l,e)):Vb(e,Ab(l,e))}else{if(!Ge[u])return i?e:{};l=yw(e,u,s)}}a||(a=new rn);var m=a.get(e);if(m)return m;a.set(e,l),Nw(e)?e.forEach(function(h){l.add(zo(h,n,o,h,e,a))}):kw(e)&&e.forEach(function(h,_){l.set(_,zo(h,n,o,_,e,a))});var g=d?c?zc:Ua:c?Oa:Ta,y=f?void 0:g(e);return ay(y||e,function(h,_){y&&(_=h,h=e[_]),Sa(l,_,zo(h,n,o,_,e,a))}),l}var Zw=1,Jw=4;function Kn(e){return zo(e,Zw|Jw)}var Qw="__lodash_hash_undefined__";function e0(e){return this.__data__.set(e,Qw),this}function t0(e){return this.__data__.has(e)}function Ho(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new on;++n<o;)this.add(e[n])}Ho.prototype.add=Ho.prototype.push=e0,Ho.prototype.has=t0;function n0(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 za(e,n){return e.has(n)}var o0=1,r0=2;function id(e,n,o,r,i,a){var l=o&o0,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(n);if(d&&f)return d==n&&f==e;var u=-1,p=!0,m=o&r0?new Ho:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var g=e[u],y=n[u];if(r)var h=l?r(y,g,u,n,e,a):r(g,y,u,e,n,a);if(h!==void 0){if(h)continue;p=!1;break}if(m){if(!n0(n,function(_,w){if(!za(m,w)&&(g===_||i(g,_,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(g===y||i(g,y,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function i0(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function a0(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var l0=1,s0=2,c0="[object Boolean]",d0="[object Date]",u0="[object Error]",f0="[object Map]",p0="[object Number]",m0="[object RegExp]",g0="[object Set]",h0="[object String]",y0="[object Symbol]",_0="[object ArrayBuffer]",b0="[object DataView]",ad=Pt?Pt.prototype:void 0,Ha=ad?ad.valueOf:void 0;function w0(e,n,o,r,i,a,l){switch(o){case b0:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case _0:return!(e.byteLength!=n.byteLength||!a(new Wr(e),new Wr(n)));case c0:case d0:case p0:return xa(+e,+n);case u0:return e.name==n.name&&e.message==n.message;case m0:case h0:return e==n+"";case f0:var s=i0;case g0:var c=r&l0;if(s||(s=a0),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=s0,l.set(e,n);var f=id(s(e),s(n),r,i,a,l);return l.delete(e),f;case y0:if(Ha)return Ha.call(e)==Ha.call(n)}return!1}var k0=1,C0=Object.prototype,E0=C0.hasOwnProperty;function N0(e,n,o,r,i,a){var l=o&k0,s=Ua(e),c=s.length,d=Ua(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:E0.call(n,p)))return!1}var m=a.get(e),g=a.get(n);if(m&&g)return m==n&&g==e;var y=!0;a.set(e,n),a.set(n,e);for(var h=l;++u<c;){p=s[u];var _=e[p],w=n[p];if(r)var b=l?r(w,_,p,n,e,a):r(_,w,p,e,n,a);if(!(b===void 0?_===w||i(_,w,o,r,a):b)){y=!1;break}h||(h=p=="constructor")}if(y&&!h){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)&&(y=!1)}return a.delete(e),a.delete(n),y}var x0=1,ld="[object Arguments]",sd="[object Array]",Xr="[object Object]",S0=Object.prototype,cd=S0.hasOwnProperty;function v0(e,n,o,r,i,a){var l=Rt(e),s=Rt(n),c=l?sd:Tt(e),d=s?sd:Tt(n);c=c==ld?Xr:c,d=d==ld?Xr:d;var f=c==Xr,u=d==Xr,p=c==d;if(p&&Ko(e)){if(!Ko(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new rn),l||Pa(e)?id(e,n,o,r,i,a):w0(e,n,c,o,r,i,a);if(!(o&x0)){var m=f&&cd.call(e,"__wrapped__"),g=u&&cd.call(n,"__wrapped__");if(m||g){var y=m?e.value():e,h=g?n.value():n;return a||(a=new rn),i(y,h,o,r,a)}}return p?(a||(a=new rn),N0(e,n,o,r,i,a)):!1}function dd(e,n,o,r,i){return e===n?!0:e==null||n==null||!zt(e)&&!zt(n)?e!==e&&n!==n:v0(e,n,o,r,dd,i)}function A0(e,n){return e!=null&&n in Object(e)}function ud(e,n,o){n=po(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=Yr(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&&va(i)&&Na(l,i)&&(Rt(e)||Gr(e)))}function I0(e,n){return e!=null&&ud(e,n,A0)}function P0(e){return zt(e)&&Kr(e)}function T0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}var O0={"&":"&","<":"<",">":">",'"':""","'":"'"},$0=kb(O0),fd=/[&<>"']/g,B0=RegExp(fd.source);function V0(e){return e=Hr(e),e&&B0.test(e)?e.replace(fd,$0):e}var R0=Object.prototype,D0=R0.hasOwnProperty;function M0(e,n){return e!=null&&D0.call(e,n)}function Zr(e,n){return e!=null&&ud(e,n,M0)}var L0=Math.min;function F0(e,n,o){for(var r=uy,i=e[0].length,a=e.length,l=a,s=Array(a),c=1/0,d=[];l--;){var f=e[l];c=L0(f.length,c),s[l]=i>=120&&f.length>=120?new Ho(l&&f):void 0}f=e[0];var u=-1,p=s[0];e:for(;++u<i&&d.length<c;){var m=f[u],g=m;if(m=m!==0?m:0,!(p?za(p,g):r(d,g))){for(l=a;--l;){var y=s[l];if(!(y?za(y,g):r(e[l],g)))continue e}p&&p.push(g),d.push(m)}}return d}function U0(e){return P0(e)?e:[]}var K0=hy(function(e){var n=ka(e,U0);return n.length&&n[0]===e[0]?F0(n):[]});function j0(e,n){return n.length<2?e:Ba(e,Pc(n,0,-1))}var G0="[object Map]",q0="[object Set]",z0=Object.prototype,H0=z0.hasOwnProperty;function pd(e){if(e==null)return!0;if(Kr(e)&&(Rt(e)||typeof e=="string"||typeof e.splice=="function"||Ko(e)||Pa(e)||Gr(e)))return!e.length;var n=Tt(e);if(n==G0||n==q0)return!e.size;if(jr(e))return!Sc(e).length;for(var o in e)if(H0.call(e,o))return!1;return!0}function jn(e,n){return dd(e,n)}var Y0=Object.prototype,W0=Y0.hasOwnProperty;function md(e,n){n=po(n,e);var o=-1,r=n.length;if(!r)return!0;for(var i=e==null||typeof e!="object"&&typeof e!="function";++o<r;){var a=n[o];if(typeof a=="string"){if(a==="__proto__"&&!W0.call(e,"__proto__"))return!1;if(a==="constructor"&&o+1<r&&typeof n[o+1]=="string"&&n[o+1]==="prototype"){if(i&&o===0)continue;return!1}}}var l=j0(e,n);return l==null||delete l[Yr(T0(n))]}function X0(e){return Y_(e)?void 0:e}var Z0=1,J0=2,Q0=4,Gn=Ac(function(e,n){var o={};if(e==null)return o;var r=!1;n=ka(n,function(a){return a=po(a,e),r||(r=a.length>1),a}),Uo(e,zc(e),o),r&&(o=zo(o,Z0|J0|Q0,X0));for(var i=n.length;i--;)md(o,n[i]);return o});function gd(e,n,o,r){if(!Mn(e))return e;n=po(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=Yr(n[i]),d=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];d=void 0,d===void 0&&(d=Mn(f)?f:Na(n[i+1])?[]:{})}Sa(s,c,d),s=s[c]}return e}function ek(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=Ba(e,l);o(s,l)&&gd(a,po(l,e),s)}return a}function tk(e,n){return ek(e,n,function(o,r){return I0(e,r)})}var Ya=Ac(function(e,n){return e==null?{}:tk(e,n)});function hd(e,n,o){return e==null?e:gd(e,n,o)}var nk=0;function Jr(e){var n=++nk;return Hr(e)+n}function yd(e,n){return e==null?!0:md(e,n)}const ok=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],qn=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,ok.some(s=>jn(e.confluent,s))&&(e.confluent=null)};function rk(e,n){const o=e.split(""),r=n.split(""),i=o.length,a=r.length,l=Array.from({length:i+1},()=>Array(a+1).fill(0));for(let f=1;f<=i;f++)for(let u=1;u<=a;u++)o[f-1]===r[u-1]?l[f][u]=l[f-1][u-1]+1:l[f][u]=Math.max(l[f-1][u],l[f][u-1]);let s="",c=i,d=a;for(;c>0&&d>0;)o[c-1]===r[d-1]?(s=o[c-1]+s,c--,d--):l[c-1][d]>l[c][d-1]?c--:d--;return s}function ik(e){const n=Date.now(),o=16*7*24*60*60*1e3;return Math.abs(n-e)<=o}const ak={"config-message_by_lua_functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;qn((n=e.config)==null?void 0:n.schema_registry)}},lk={"config-message_by_lua_functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;qn((n=e.config)==null?void 0:n.schema_registry)}},sk={"config-message_by_lua_functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;qn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{qn(i==null?void 0:i.schema_registry)})}},ck={"config-message_by_lua_functions":{...Re,inputAttributes:{...Re.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;qn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{qn(i==null?void 0:i.schema_registry)})}},dk={shamefullyTransformPayload:({payload:e})=>{var n;qn((n=e.config)==null?void 0:n.schema_registry)}},uk={"config-static_tags":{...Mr,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"}]}}}},fk={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function Wa(e,n){const o=fk[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Xa=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),pk={},_d=Symbol("TOASTER_PROVIDER");function bd(){return t.inject(Xa,[])}function mk(e){t.provide(Xa,e)}const gk=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},wd=(e,n)=>(e.order??0)-(n.order??0),kd=(e,n)=>gk(e,n)||wd(e,n)||e.model.localeCompare(n.model),De={useI18n:Ve,usePluginMetaData:eh,usePluginHelpers:Hs,useSchemas:e=>{const{capitalize:n}=he.useStringHelpers(),{convertToDotNotation:o}=Hs(),{i18n:{t:r}}=Ve(),i=bd(),a={"application-registration":{overwriteDefault:!0,formSchema:{...ah}},datadog:{...lh},"exit-transformer":{...sh},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...kh},"statsd-advanced":{...Ch},"route-by-header":{...yh},"ai-prompt-decorator":{...th},"ai-prompt-template":{...nh},"ai-proxy-advanced":{...oh},"ai-rag-injector":{...rh},"ai-llm-as-judge":{...ih},"vault-auth":{...Nh},"oas-validation":{...fh},mocking:{...uh},"rate-limiting":{...Lr},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Lr["config-consumer_groups"]}:{...Lr},"graphql-rate-limiting-advanced":{...ch},"injection-protection":{...dh},"response-ratelimiting":{...Lr},"pre-function":{...nc},"post-function":{...nc},"request-transformer-advanced":{...gh},"response-transformer":{...oc},"response-transformer-advanced":{...hh},zipkin:{...uk},"upstream-oauth":{...Eh},saml:{..._h},"kafka-upstream":{...ak},"solace-consume":{...bh},"solace-upstream":{...wh},"key-auth":qg(e),"key-auth-enc":Zg(e),confluent:{...lk},"confluent-consume":{...sk},"kafka-consume":{...ck},"kafka-log":{...dk}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,S,A,R)=>{let O={};(S||C)&&(O=S||(C.fields?C.fields:C));const T=l().concat(C.blacklist?C.blacklist:[]),N=Object.keys(O).filter(F=>!T.includes(F)),L=N.indexOf("comparator");L>-1&&N.splice(L,1);let x={fields:[]};const B={};N.forEach(F=>{d(O[F],F,O,B,x,A)});const P=B.name,q=It[P],G=[],K=F=>{const I=["cluster-cache"];for(const j of I)if(F.model.includes(j))return!1;return new RegExp("(?<=-redis-).*").test(F.model)};if(x._supported_redis_partial_type=C._supported_redis_partial_type,x._redis_partial_path=C._redis_partial_path,Le.getSharedFormName(P)||Wa(P,i)||q!=null&&q.useLegacyForm||e!=null&&e.credential||R==="freeform"){if(q!=null&&q.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const F of x.fields)if(K(F)){G.push(F);continue}x.fields=x.fields.filter(F=>!K(F)),G.length&&x.fields.push({id:"_redis",fields:G,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}x.fields.sort((F,I)=>(F.order=F.order||0,I.order=I.order||0,F.order-I.order))}else{const F=[],I=[],j=[],z=[],ae={};if(q!=null&&q.fieldRules){const ee=[...q.fieldRules.atLeastOneOf??[],...q.fieldRules.onlyOneOf??[],...q.fieldRules.mutuallyRequired??[]];if(q.fieldRules.onlyOneOfMutuallyRequired)for(const _e of q.fieldRules.onlyOneOfMutuallyRequired)ee.push(..._e);for(const _e of ee)for(const be of _e)ae[be.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const ee of x.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&K(ee)){z.push(ee);continue}if(ee.pinned){F.push(ee);continue}if(ee.required||ae[ee.model]!==void 0){ae[ee.model]===!1&&(ae[ee.model]=!0),I.push(ee);continue}j.push(ee)}z.length&&j.push({id:"_redis",fields:z,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const U=Object.entries(ae).filter(([,ee])=>!ee).map(([ee])=>ee.replace(/-/g,".").replace(/_/g,"-"));U.length>0&&console.warn(`Unknown checked fields for plugin ${P}: ${U.join(", ")}`);const H=[];F.length>0&&H.push({fields:F.sort(wd)}),(I.length>0||j.length>0)&&H.push({fields:I.sort(kd),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:j.sort(kd),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:H}}return{schema:x,model:B,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",d=(C,S,A,R,O,T)=>{const N=c(C);return R[S]=N?C.default:null,C.id=S,C.model=S,C.fields&&C.type==="record"?u(C,S,A,R,O,T):(A[S]=C,k(C,R),T&&T[S]&&f(A[S],T[S]),O.fields.push(C)),A},f=(C,S)=>(S&&(Object.assign(C,S),S.label&&(C.label=S.label)),C),u=(C,S,A,R,O,T)=>{C.fields.forEach(N=>{Object.keys(N).forEach(L=>{const x=N[L];A=d(x,S+"-"+L,A,R,O,T)})})},p=(C,S)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const A=e==null?void 0:e.entityId;S[C.model]=A?{id:A}: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])},g=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")},y=C=>{C.type="checkbox",C.default=!0,C.required=!1},h=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:S}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Re,model:C.model,valueArrayType:S==="integer"?"number":S||"string",inputAttributes:{...Re.inputAttributes,type:S==="integer"?"number":"text",inputMode:S==="integer"?"numeric":"text"}}]}}]}}else C.values.fields&&(C.schema={fields:[{type:"object",model:"object",schema:{fields:C.values.fields.map(S=>{const A=Object.keys(S)[0];return{model:A,type:"input",label:n(A),placeholder:A,inputType:S[A].type}})}}]})},_=C=>C.fields.reduce((S,A)=>(A.fields&&A.fields.forEach(R=>{S[R.model]=R}),A.model&&(S[A.model]=A),S),{}),w=(C,S)=>{if(!Le.customFields.includes(C.model))return;const A=_(C);Le.customFields.forEach(R=>{Object.keys(A).forEach(O=>{const T=c(A[O]);S[O]=T?A[O].default:null}),delete S[R]})},b=(C,S)=>C.inputType==="hidden"?"":o(n(C.label||S.replace(/_/g," "))),k=(C,S)=>{switch(w(C,S),C.type){case"foreign":p(C,S);break;case"number":m(C),C.attributes={step:"any"};break;case"integer":m(C);break;case"string":g(C);break;case"boolean":y(C);break;case"map":h(C);break}C.inputType==="foreign"&&p(C,S),C.label=b(C,C.model)};function E(C,S){if(S==null||S.type&&S.type!=="record"||typeof C!="object"||C==null)return C;const A={};for(const R of S.fields){const O=Object.keys(R)[0],T=R[O];T.type==="record"?A[O]=E(C[O],T):T.type==="array"&&Array.isArray(C[O])&&T.elements.type==="record"?A[O]=C[O].map(N=>E(N,T.elements)):A[O]=C[O]}return A}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:co,pruneRecord:E}},useExperimentalFreeForms:bd,useProvideExperimentalFreeForms:mk},ut="/v2/control-planes/{controlPlaneId}/core-entities",bt="/{workspace}",ze={list:{konnect:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},kongManager:{all:`${bt}/plugins`,forEntity:`${bt}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ut}/v1/available-plugins`,streamingCustomPlugins:`${ut}/custom-plugins`,schemaCustomPluginItem:`${ut}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ut}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${bt}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},edit:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ut}/{resourceEndpoint}`,edit:`${ut}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ut}/{entity}/{id}`,entityGetAll:`${ut}/{entity}`,entityPeek:`${ut}/{entity}?size={amount}`},kongManager:{create:{all:`${bt}/plugins`,forEntity:`${bt}/{entityType}/{entityId}/plugins`},edit:{all:`${bt}/plugins/{id}`,forEntity:`${bt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${bt}/schemas/plugins/{plugin}`,credential:{create:`${bt}/{resourceEndpoint}`,edit:`${bt}/{resourceEndpoint}/{id}`},credentialSchema:`${bt}/schemas/{plugin}`,entityGetOne:`${bt}/{entity}/{id}`,entityGetAll:`${bt}/{entity}`}},item:{konnect:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${bt}/plugins/{id}`,forEntity:`${bt}/{entityType}/{entityId}/plugins/{id}`}}},hk={key:0},yk=ve(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=De.usePluginHelpers(),{i18n:{t:r}}=De.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>o(d)).join(".")).join(", "),a=(s,c)=>r(s,{parameters:i(c)}),l=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(f,u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",hk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,u)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f,(p,m)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);function Za(e){return e.map(n=>({value:n,label:`${n}`}))}const Ja="*",zn="$",Qa=".";function Ze(...e){return e.join(Qa)}function el(...e){return Ze(zn,...e)}function Cd(e){return e.startsWith(Ze(zn,""))}function Dt(e){return e.split(Qa).filter(n=>n!=="")}function Yo(e){const n=Dt(e);return n[n.length-1]}function _k(e){return e.startsWith(zn)&&(e=Ze(...Dt(e).slice(1))),e}function bk(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 wk(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}function Ed(e,n){return[...e].sort((o,r)=>{const i=Object.keys(o)[0],a=Object.keys(r)[0],l=n.indexOf(i),s=n.indexOf(a);return l===-1&&s===-1?0:l===-1?1:s===-1?-1:l-s})}function Nd(e,n){const o=new Map;e.forEach(d=>{const f=Object.keys(d)[0];o.set(f,d)});const r=new Map;n.forEach((d,f)=>{d.forEach((u,p)=>{r.has(u)||r.set(u,[]),r.get(u).push({bundleIndex:f,position:p})})});const i=new Set,a=[],l=new Set,s=d=>{const f=r.get(d);if(!f)return!0;for(const{bundleIndex:u,position:p}of f){const m=n[u];for(let g=0;g<p;g++){const y=m[g];if(o.has(y)&&!i.has(y))return!1}}return!0},c=d=>{if(i.has(d))return;const f=o.get(d);if(!f)return;a.push(f),i.add(d),l.delete(d);const u=r.get(d);if(u)for(const{bundleIndex:m,position:g}of u){const y=n[m];for(let h=g+1;h<y.length;h++){const _=y[h];if(!i.has(_)){const w=o.get(_);w&&(a.push(w),i.add(_),l.delete(_))}}}const p=Array.from(l);for(const m of p)s(m)&&c(m)};for(const d of e){const f=Object.keys(d)[0];i.has(f)||(s(f)?c(f):l.add(f))}return a}const[kk,Ck]=Ye.createInjectionState(function(n){const{schema:o,propsData:r,onChange:i,propsRenderRules:a,propsConfig:l}=n,s=xk(o),c=new Map,d=t.reactive({}),f=t.toRef(()=>l??{}),u=t.useSlots();t.provide(tl,Gn(u,"default",Hn));const{useCurrentRules:p,createComputedRules:m,hiddenPaths:g,isFieldHidden:y}=Ok(()=>i==null?void 0:i(k())),h=p({fieldPath:zn,rules:a,parentValue:d});function _(E){Object.keys(d).forEach(C=>{delete d[C]}),Object.assign(d,E)}function w(E){let C;!E||!b(t.toValue(E))?C=s.getDefault():C=Kn(t.toValue(E)),Fr(f.value.prepareFormData)?_(f.value.prepareFormData(C)):_(C)}function b(E){return Fr(f.value.hasValue)?f.value.hasValue(E):!!E}function k(){const E=t.toValue(d),C=Kn(E);if(g.value.size>0)for(const S of g.value)hd(C,Dt(S),s.getEmptyOrDefault(S));return C}return t.watch(d,()=>{i==null||i(k())},{deep:!0}),t.watch(()=>r==null?void 0:r.value,E=>{w(E)},{deep:!0,immediate:!0}),{formData:d,schema:o,config:f,fieldRendererRegistry:c,setValue:_,useCurrentRenderRules:p,rootRenderRules:h,createComputedRenderRules:m,...s,getValue:k,isFieldHidden:y}}),xd=Symbol("free-form-field-path"),tl=Symbol("free-form-field-renderer-slots"),Sd=Symbol("free-form-field-reset-label-path-setting"),Hn="free-form-field-renderers-slot",Ek={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function Nk(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,nl(r,n)):e.type==="array"&&e.elements&&Object.assign(o,ol(e,n)),o}function nl(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?Ze(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=nl(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=ol(a,l);Object.assign(o,s)}}return o}function ol(e,n=""){const o={};if(e.elements){const r=e.elements,i=Ze(n,Ja);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=nl(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=ol(r,i);Object.assign(o,a)}}return o}function Qr(e){const n=Dt(e).map(o=>/^\d+$/.test(o)?Ja:o);return Ze(...n)}function xk(e){const n=t.toValue(e),o=t.computed(()=>n?Nk(n):{});function r(p){var m;return p==null?n:(m=o.value)==null?void 0:m[Qr(p)]}function i(p,m=!1){const g=r(p);return g?g.default!==void 0?g.default:m||g.required?g.type==="record"?a(g,p):g.type==="array"?[]:g.type==="map"?{}:null:null:null}function a(p,m){const g={};if(Array.isArray(p.fields))for(const y of p.fields){const h=Object.keys(y)[0],_=m?`${m}.${h}`:h,w=i(_,!1);w!==void 0&&(g[h]=w)}return g}function l(p){return p?i(p,!0):a(r(),"")}function s(p){const m=r(p),g=m!=null&&m.description?Vr.marked.parse(m.description,{async:!1}):void 0;return{...Ek,"data-testid":`ff-label-${p}`,info:g}}function c(p){var g;const m=r(p);return Za((m==null?void 0:m.one_of)||((g=m.elements)==null?void 0:g.one_of)||[])}function d(p){const m=r(p),g=m==null?void 0:m.default;let y=null;if((m==null?void 0:m.type)==="foreign"&&(g!=null&&g.id))y=g.id;else{if(g==null||typeof g=="object"||g==="")return null;if(Array.isArray(g)){if(g.length===0)return null;y=g.join(", ")}else y=g.toString()}return`Default: ${y}`}function f(){return o.value}function u(p){const m=r(p);return(m==null?void 0:m.required)?l(p):null}return{getSchemaMap:f,getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d,getEmptyOrDefault:u}}function Ue(){const e=Ck();if(!e)throw new Error("useFormShared() called without provider.");return e}const vd=e=>{const n=t.inject(xd,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!Cd(r)&&n.value&&(i=Ze(n.value,r)),Cd(r)&&(i=i.slice(el("").length)),i});return t.provide(xd,o),o},Sk=e=>{const{getSchema:n,fieldRendererRegistry:o}=Ue(),{default:r,...i}=t.useSlots(),a=t.inject(tl),l=t.computed(()=>{const c=t.toValue(a),d=Object.keys(i).filter(f=>f!==Hn&&f!=="item").reduce((f,u)=>{const p=Qr(Ze(t.toValue(e),u));return{...f,[p]:i[u]}},{});return c?{...c,...d}:d});t.provide(tl,l);const s=t.toValue(e);return t.computed(()=>{if(r)return;const c=l.value[Qr(t.toValue(e))];if(c)return c;for(const[d,f]of o)if(d({path:s,schema:n(s)}))return f})},vk={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP",https:"HTTPS",api:"API",uri:"URI",jq:"jq",vpn:"VPN",id:"ID",llm:"LLM",tls:"TLS",tcp:"TCP",udp:"UDP",lua:"Lua",jwt:"JWT",aws:"AWS",gcp:"GCP",azure:"Azure"};function Ak(e){return vk[e.toLocaleLowerCase()]??e}function Ik(e,n){const o=t.inject(Sd,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Ze(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?Ze(d,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=u,l.value.isolate=!1,l.value.parentPath=u}};(p=m[s])==null||p.call(m)}else f&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),t.provide(Sd,l),a}function Ad(e){return Dt(e).map(o=>o.split("_").map(Ak).join(" ")).map(wb).join(" › ")}function Pk(e,n){const o=t.toValue(e),r=Yo(o),{config:i,getSchema:a}=Ue(),l=Ik(r,n),s=Id(e);return t.computed(()=>{var p;const c=l.value??r,d=(p=s.value.parent)!=null&&p.path?a(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":Ad(c);return i.value.transformLabel?i.value.transformLabel(u,o):u})}function Ot(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ue(),a=t.toValue(e),l=t.toValue(n),s=Pk(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 Tk(e){var r;const n=Dt(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Ze(o.parent.path,i):i,o={parent:o}}return o}function Id(e){return t.computed(()=>Tk(t.toValue(e)))}function Pd(e){const{formData:n}=Ue(),o=vd(e);return{value:t.computed({get:()=>Va(n,Dt(o.value)),set:i=>hd(n,Dt(o.value),i)})}}function wt(e){const{getSchema:n,isFieldHidden:o,getEmptyOrDefault:r}=Ue(),i=vd(e),a=Sk(i),{value:l}=Pd(e),s=t.computed(()=>n(i.value)),c=t.computed(()=>o(i.value)),d=t.computed(()=>r(i.value));return s.value?{schema:s,path:i,renderer:a,value:l,ancestors:Id(i),hide:c,emptyOrDefaultValue:d,error:null}:{error:new Error(`path '${i.value}' is not found in schema.`)}}function Wo(e){const{getSchema:n}=Ue(),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 Td(e,n){const o=new WeakMap,r=new Map;function i(){return Jr(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((d,f)=>{c.add(f)}),Array.from(r.keys()).forEach(d=>{c.has(d)||r.delete(d)})},{immediate:!0,deep:!0}),{getKey:a}}function Ok(e){const n=t.ref({}),o=t.ref(new Set);function r(g,y){const h=g.map(w=>Dt(w).length),_=h[0];if(!h.every(w=>w===_)){const w=g.map((b,k)=>` - '${b}' is at level ${h[k]}`).join(`
|
|
14
|
+
`);throw new Error(`${y}: Fields must be at the same level. Found mixed levels:
|
|
15
|
+
${w}`)}}function i(g){for(const[y,h]of Object.entries(g)){if(!h.bundles)continue;for(const w of h.bundles)if(new Set(w).size!==w.length){const k=w.filter((E,C)=>w.indexOf(E)!==C);throw new Error(`Self-cycle detected in bundle: field '${k[0]}' appears multiple times in [${w.join(", ")}]`)}const _=new Map;for(const w of h.bundles)for(let b=1;b<w.length;b++){const k=w[b],E=w[b-1];_.has(k)||_.set(k,new Set),_.get(k).add(E)}for(const w of _.keys()){let b=function(C){if(E.includes(C)){const A=[...E,C].join(" -> ");throw new Error(`Circular bundle detected in path '${y}':
|
|
16
|
+
${A}`)}if(k.has(C))return;k.add(C),E.push(C);const S=_.get(C);if(S)for(const A of S)b(A);E.pop()};const k=new Set,E=[];b(w)}}}function a(g){for(const[y,h]of Object.entries(g))if(h.dependencies)for(const _ of Object.keys(h.dependencies)){let w=function(E){if(k.includes(E)){const S=[...k,E].join(" -> ");throw new Error(`Circular dependency detected in path '${y}':
|
|
17
|
+
${S}`)}if(b.has(E))return;b.add(E),k.push(E);const C=h.dependencies[E];if(C){const[S]=C;h.dependencies[S]&&w(S)}k.pop()};const b=new Set,k=[];w(_)}}function l(g,y){const h=g.map(w=>y?Ze(y,w):w),_=Dt(h[0]);return _.pop(),Ze(..._)}function s(g,y){if(!y)return g;const h=`${y}${Qa}`;return g.startsWith(h)?g.slice(h.length):g}function c(g){const y=Dt(g);return y.pop(),Ze(...y)}const d=t.computed(()=>{const g={};for(const[y,h]of Object.entries(n.value)){const _=y===zn?"":y;if(h.bundles)for(const w of h.bundles){if(w.length<2)throw new Error(`Bundle must contain at least 2 fields. Found ${w.length} field(s) in bundle: [${w.join(", ")}]`);const b=w.map(C=>_?Ze(_,C):C);r(b,`Bundle [${w.join(", ")}]`);const k=l(w,_)||zn;g[k]||(g[k]={}),g[k].bundles||(g[k].bundles=[]);const E=b.map(C=>s(C,k));g[k].bundles.push(E)}if(h.dependencies)for(const[w,[b,k]]of Object.entries(h.dependencies)){const E=_?Ze(_,w):w,C=_?Ze(_,b):b;r([E,C],`Dependency '${w}' -> '${b}'`);const S=c(E)||zn;g[S]||(g[S]={}),g[S].dependencies||(g[S].dependencies={});const A=s(E,S),R=s(C,S);g[S].dependencies[A]=[R,k]}}return i(g),a(g),g});function f(g){if(!g)return d.value;const y=Qr(g);return d.value[y]}function u(g){let y=!1;return t.computed(()=>{if(y)return;const h=t.toValue(g);try{return f(h)}catch(_){y=!0,console.error(`Failed to get render rules for path: \`${h}\`,`,_ instanceof Error?_.message:"");return}})}function p(g){const{fieldPath:y,rules:h,parentValue:_,omittedFields:w}=g;t.watch([()=>t.toValue(h),()=>t.toValue(y)],([k,E],[,C])=>{k?n.value[E]=k:delete n.value[E],C&&C!==E&&delete n.value[C]},{immediate:!0,deep:!0});const b=u(y);return t.watch([()=>t.toValue(_),()=>{var k;return(k=t.toValue(b))==null?void 0:k.dependencies},()=>t.toValue(y),()=>t.toValue(w)],([k,E,C,S])=>{!E||!k||Object.entries(E).forEach(([A,[R,O]])=>{if(S!=null&&S.includes(A))return;const T=Va(k,R),N=C?_k(Ze(C,A)):A;if(jn(T,O)){o.value.delete(N),e();return}o.value.add(N),e()})},{deep:!0,immediate:!0}),t.onBeforeUnmount(()=>{const k=t.toValue(y);delete n.value[k]}),b}function m(g){return o.value.has(g)}return{useCurrentRules:p,createComputedRules:u,hiddenPaths:t.readonly(o),isFieldHidden:m}}const $k="__request_callout_";function Od(){return Jr($k)}const Yn=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?$e.KTextArea:$e.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{s.value=u});const{config:c}=Ue(),d=u=>{u!==s.value&&(s.value=u,c.value.updateOnChange||i("update:modelValue",u))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":e.modelValue,resizable:e.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,g)=>({name:g,fn:t.withCtx(y=>[t.renderSlot(u.$slots,g,t.normalizeProps(t.guardReactiveProps(y)))])}))]),1040,["character-limit","model-value","resizable"]))}}),Bk=["innerHTML"],kt=ve(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},placeholder:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=Ve(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,hide:s,...c}=wt(t.toRef(()=>e.name)),d=Ot(c.path,t.toRef({...i,...o})),f=l==null?void 0:l.value;function u(w){f!==void 0&&w===""&&w!==f?(l.value=null,a("update:modelValue",null)):(l.value=w.trim(),a("update:modelValue",w.trim()))}const p=t.computed(()=>{var w;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((w=c.schema)==null?void 0:w.value).encrypted}),m=t.inject(Le.AUTOFILL_SLOT,void 0),g=t.computed(()=>{var w;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((w=c.schema.value)!=null&&w.referenceable)}),y=t.computed(()=>({referenceable:g.value})),h=Wo(c.ancestors),_=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Yo(e.name)==="name");return(w,b)=>{var E;const k=t.resolveComponent("KAlert");return c.error?(t.openBlock(),t.createBlock(k,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},w.$attrs)),[t.createVNode(Yn,t.mergeProps({...t.unref(d),showPasswordMaskToggle:p.value,type:p.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":_.value,"data-autofocus":t.unref(h),"data-testid":`ff-${c.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.multiline&&e.error?e.errorMessage:e.help,"model-value":t.unref(l)??"",multiline:e.multiline,placeholder:e.placeholder??t.unref(d).placeholder,"onUpdate:modelValue":u}),t.createSlots({_:2},[(E=t.unref(d).labelAttributes)!=null&&E.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(w.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Bk)],!0)]),key:"0"}:void 0,!(e.multiline&&e.error)&&w.$slots.help?{name:"help",fn:t.withCtx(()=>[t.renderSlot(w.$slots,"help",{},void 0,!0)]),key:"1"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline","placeholder"]),t.unref(m)&&g.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(m)),{key:0,schema:y.value,update:u,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),g.value&&!t.unref(m)?(t.openBlock(),t.createBlock(k,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${c.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16)),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-93d54a4e"]]),Vk=["innerHTML"],mo=ve(t.defineComponent({__name:"BooleanField",props:{labelAttributes:{},modelValue:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,hide:i,emptyOrDefaultValue:a,...l}=wt(t.toRef(()=>e.name)),s=n,c=f=>{r.value=f,s("update:modelValue",f)},d=Ot(l.path,o);return(f,u)=>{var m;const p=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(p,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref($e.KCheckbox),t.mergeProps({key:1},t.unref(d),{class:"ff-boolean-field","data-testid":`ff-${l.path.value}`,"model-value":!!(t.unref(r)==null?t.unref(a):t.unref(r)),"onUpdate:modelValue":c}),t.createSlots({_:2},[(m=t.unref(d).labelAttributes)!=null&&m.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(f.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Vk)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"])),[[t.vShow,!t.unref(i)]])}}}),[["__scopeId","data-v-a64714b1"]]),$d=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(g=>[g,m.getPropertyValue(g)]))}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 g=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...g,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(t.openBlock(),t.createBlock(t.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),Rk={class:"ff-entity-checks-list"},Bd=ve(t.defineComponent({__name:"EntityChecksAlert",props:{entityChecks:{},omittedFields:{}},setup(e){const{i18n:{t:n}}=De.useI18n(),o=t.computed(()=>{if(!Array.isArray(e.entityChecks)||e.entityChecks.length===0)return null;const a=[],l=[{key:"at_least_one_of",i18nKey:"plugins.form.field_rules.at_least_one_of"},{key:"mutually_required",i18nKey:"plugins.form.field_rules.mutually_required"},{key:"mutually_exclusive",i18nKey:"plugins.form.field_rules.mutually_exclusive"}];for(const s of e.entityChecks)for(const{key:c,i18nKey:d}of l)if(c in s){const f=s[c];Array.isArray(f)&&f.length>0&&i(f)&&a.push(n(d,{parameters:r(f)}));break}return a.length?a:null});function r(a){return a.map(Ad).join(", ")}function i(a){return Array.isArray(e.omittedFields)&&e.omittedFields.length>0?a.filter(s=>!e.omittedFields.includes(s)).length>0:!0}return(a,l)=>{const s=t.resolveComponent("KAlert");return o.value?(t.openBlock(),t.createBlock(s,{key:0,"data-testid":"ff-entity-checks-alert"},{default:t.withCtx(()=>[t.createElementVNode("ul",Rk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(o.value,c=>(t.openBlock(),t.createElementBlock("li",{key:c,"data-testid":"ff-entity-check-item"},t.toDisplayString(c),1))),128))])]),_:1})):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-0b5baf37"]]),Dk=["data-testid"],Mk=["data-testid"],Lk=["data-testid"],Fk=["innerHTML"],Uk={class:"ff-object-field-actions"},Kk=["data-testid"],Et=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:{},renderRules:{}},{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,hide:r,...i}=wt(t.toRef(n,"name")),{getSchema:a,getDefault:l,useCurrentRenderRules:s}=Ue(),c=s({fieldPath:i.path,rules:t.toRef(n,"renderRules"),omittedFields:t.toRef(()=>e.omit),parentValue:o}),d=t.useModel(e,"added"),f=t.useModel(e,"expanded"),u=t.computed(()=>y.value&&(e.collapsible?f.value??e.defaultExpanded:!1)),p=t.computed(()=>{var b,k;if((b=i.ancestors)!=null&&b.value){const E=i.ancestors.value.parent;if(E!=null&&E.path)return((k=a(E.path))==null?void 0:k.type)==="array"}return!1}),m=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:p.value?"reset":"inherit"),g=Ot(i.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:m.value}))),y=t.computed(()=>g.value.required?!0:d.value??e.defaultAdded),h=t.computed(()=>e.asChild!==void 0?e.asChild:p.value),_=t.computed(()=>{var k;let b=i.schema.value.fields;return e.omit&&(b=b.filter(E=>!e.omit.includes(Object.keys(E)[0]))),e.fieldsOrder?Ed(b,e.fieldsOrder):((k=c.value)!=null&&k.bundles&&(b=Nd([...b],c.value.bundles)),b)});function w(){d.value=!d.value,d.value?o.value=l(i.path.value):o.value=null}return t.watch(y,b=>{e.collapsible&&(f.value=b)}),t.onBeforeMount(()=>{d.value=!!(o!=null&&o.value)}),(b,k)=>{var C;const E=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(b.$slots[t.unref(Hn)]))),i.error?(t.openBlock(),t.createBlock(E,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):h.value?t.withDirectives((t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},b.$attrs,{"data-testid":`ff-object-${i.path.value}`}),[t.renderSlot(b.$slots,"default",{},()=>{var S;return[t.createVNode(Bd,{"entity-checks":(S=i.schema.value)==null?void 0:S.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(_.value,A=>(t.openBlock(),t.createBlock(ft,{key:Object.keys(A)[0],name:Object.keys(A)[0]},null,8,["name"]))),128))]},!0)],16,Dk)),[[t.vShow,!t.unref(r)]]):t.withDirectives((t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!u.value}],"data-testid":`ff-object-${i.path.value}`},b.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${i.path.value}`},[t.createVNode(t.unref($e.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${i.path.value}`},{...t.unref(g),required:!1},{"tooltip-attributes":t.unref(g).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(g).label)+" ",1)]),_:2},[(C=t.unref(g).labelAttributes)!=null&&C.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(g).labelAttributes.info},null,8,Fk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",Uk,[e.collapsible&&y.value?(t.openBlock(),t.createBlock(t.unref($e.KButton),{key:0,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${u.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${i.path.value}`,icon:"",onClick:k[0]||(k[0]=S=>f.value=!u.value)},{default:t.withCtx(()=>[y.value?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(g).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref($e.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${y.value?"remove":"add"}`),"data-testid":`ff-object-${y.value?"remove":"add"}-btn-${i.path.value}`,icon:"",onClick:w},{default:t.withCtx(()=>[y.value?(t.openBlock(),t.createBlock(t.unref(ke.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(ke.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,Lk),t.createVNode($d,null,{default:t.withCtx(()=>[u.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${i.path.value}`},[t.renderSlot(b.$slots,"default",{},()=>{var S;return[t.createVNode(Bd,{"entity-checks":(S=i.schema.value)==null?void 0:S.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(_.value,A=>(t.openBlock(),t.createBlock(ft,{key:Object.keys(A)[0],name:Object.keys(A)[0]},null,8,["name"]))),128))]},!0)],8,Kk)):t.createCommentVNode("",!0)]),_:3})],16,Mk)),[[t.vShow,!t.unref(r)]])],64)}}}),[["__scopeId","data-v-161e818f"]]),jk={key:1,class:"ff-number-field-wrapper"},Gk=["innerHTML"],Wn=ve(t.defineComponent({__name:"NumberField",props:{showVaultSecretPicker:{type:Boolean,default:()=>{}},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["showVaultSecretPicker","name"]),{value:r,hide:i,...a}=wt(t.toRef(()=>e.name)),l=Ot(a.path,o),{i18n:s}=Ve(),c=t.computed(()=>{var C;const b=(C=a.schema)==null?void 0:C.value;if(typeof b.gt=="number")return{min:b.type==="integer"?b.gt+1:b.gt};const[k,E]=b.between??[];return{min:o.min??k,max:o.max??E}}),d=n,f=r.value,u=t.computed(()=>{const b=r==null?void 0:r.value;if(b==null||b==="")return"";if(_.value)return`${b}`;const k=typeof b=="number"?b:Number(b);return Number.isFinite(k)?`${k}`:""});function p(b){const k=m(b);f!==void 0&&b===""&&k!==f?(r.value=null,d("update:modelValue",null)):(r.value=k,d("update:modelValue",k))}function m(b){if(b==="")return null;const k=b.trim();if(k==="")return null;const E=Number(k);return Number.isFinite(E)?E:_.value?b:null}const g=Wo(a.ancestors),y=t.inject(Le.AUTOFILL_SLOT,void 0),h=t.computed(()=>({referenceable:_.value})),_=t.computed(()=>{var b;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((b=a.schema.value)!=null&&b.referenceable)}),w=t.computed(()=>_.value?"text":"number");return(b,k)=>{var C;const E=t.resolveComponent("KAlert");return a.error?(t.openBlock(),t.createBlock(E,{key:0,appearance:"danger",message:a.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",jk,[t.createVNode(Yn,t.mergeProps({class:"ff-number-field"},{...t.unref(l),min:c.value.min,max:c.value.max},{"data-autofocus":t.unref(g),"data-testid":`ff-${a.path.value}`,"model-value":u.value,type:w.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(C=t.unref(l).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,Gk)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value","type"]),t.unref(y)&&_.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(y)),{key:0,schema:h.value,update:p,value:t.unref(r)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),_.value&&!t.unref(y)?(t.openBlock(),t.createBlock(E,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${a.path.value}`,message:t.unref(s).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],512)),[[t.vShow,!t.unref(i)]])}}}),[["__scopeId","data-v-709884eb"]]),qk=["innerHTML"],$t=ve(t.defineComponent({__name:"EnumField",props:{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},name:{}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=Ue(),{value:a,hide:l,...s}=wt(t.toRef(()=>e.name)),c=Ot(s.path,r),d=t.computed(()=>e.items?e.items:s.path?i(s.path.value):[]),f=t.computed(()=>{var p;return e.multiple!==void 0?e.multiple:((p=s.schema.value)==null?void 0:p.type)==="set"}),u=t.computed(()=>f.value?$e.KMultiselect:$e.KSelect);return(p,m)=>{var y;const g=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(g,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createBlock(t.unref(u),t.mergeProps({key:1},{...r,...t.unref(c)},{modelValue:t.unref(a),"onUpdate:modelValue":[m[0]||(m[0]=h=>t.isRef(a)?a.value=h:null),m[1]||(m[1]=h=>o("update",h))],class:"ff-enum-field",clearable:!t.unref(c).required,"data-testid":`ff-${s.path.value}`,items:d.value,"kpop-attributes":{"data-testid":`${s.path.value}-items`}}),t.createSlots({_:2},["tooltip"in p.$slots||(y=t.unref(c).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,qk)],!0)]),key:"0"}:void 0,p.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:h})=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"])),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-a339a451"]]);function ei(e,n,o=!0){const{value:r,emptyOrDefaultValue:i,...a}=wt(t.toRef(e,"name")),l=Ot(a.path,t.toRef({...e,...t.useAttrs()})),s=t.ref(f(e.initialValue??t.toValue(r),e.keyOrder));function c(){return Jr("ff-kv-field-")}function d(_,w,b){const k=b.indexOf(_),E=b.indexOf(w);return k===-1&&E===-1?0:k===-1?1:E===-1?-1:k-E}function f(_,w){if(!_)return[];const b=Object.entries(_).map(([k,E])=>({id:c(),key:k,value:E}));return w&&b.sort((k,E)=>d(k.key,E.key,w)),b}function u(){const _={id:c(),key:e.defaultKey||"",value:e.defaultValue||""};return s.value.push(_),_}function p(_){const w=s.value.findIndex(b=>b.id===_);w!==-1&&s.value.splice(w,1)}function m(){s.value=f(e.initialValue,e.keyOrder)}function g(_){s.value=f(_,e.keyOrder)}let y=r==null?void 0:r.value;t.watch(s,_=>{if(!o)return;const w=_.length?Object.fromEntries(_.map(({key:b,value:k})=>[b,k]).filter(([b])=>b)):i==null?void 0:i.value;w===null&&r.value!==null&&typeof r.value=="object"&&Object.keys(r.value).length===0||(r.value=w,y=w,n("change",w))},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,_=>{jn(_,y)||h(_)},{deep:!0});function h(_){if(!_){s.value=[];return}const w=new Map;s.value.forEach(C=>{C.key&&w.set(C.key,C)});const b=[],k=Object.keys(_);(e.keyOrder?[...k].sort((C,S)=>d(C,S,e.keyOrder)):k).forEach(C=>{const S=_[C];if(w.has(C)){const A=w.get(C);A.value=S,b.push(A)}else b.push({id:c(),key:C,value:S})}),s.value=b}return{entries:s,addEntry:u,removeEntry:p,reset:m,setValue:g,labelAttrs:l,field:a}}const zk=["data-testid"],Hk=["data-testid"],Yk=["innerHTML"],Wk=["data-testid"],Xk=ve(t.defineComponent({__name:"KeyValueField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{},name:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=Ve(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=ei(r,a),m=t.useTemplateRef("root");async function g(E,C="key"){var S;m.value&&(await t.nextTick(),(S=m.value.querySelector(`[data-${C}-input="${E}"]`))==null||S.focus())}function y(){s();const E=l.value.findIndex(({key:C})=>!C);g(E===-1?l.value.length-1:E)}function h(E){E===l.value.length-1&&s(),g(E+1)}const _=t.inject(Le.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var E,C;return e.showVaultSecretPicker??!!((C=(E=p.schema.value)==null?void 0:E.values)!=null&&C.referenceable)}),b=t.computed(()=>({referenceable:w.value}));function k(E,C){l.value[E].value=C}return n({reset:d,setValue:f}),(E,C)=>{var O;const S=t.resolveComponent("KAlert"),A=t.resolveComponent("KLabel"),R=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(S,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):t.withDirectives((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(A,t.mergeProps({class:"ff-kv-field-label"},t.unref(u),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(O=t.unref(u).labelAttributes)!=null&&O.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,Yk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(R,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["data-testid"])],8,Hk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(T,N)=>(t.openBlock(),t.createElementBlock("div",{key:T.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${N}`},[t.createVNode(Yn,{modelValue:T.key,"onUpdate:modelValue":L=>T.key=L,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":N,"data-testid":`ff-key-${t.unref(p).path.value}.${N}`,placeholder:e.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(L=>g(N,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Yn,{modelValue:T.value,"onUpdate:modelValue":L=>T.value=L,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${N}`,"data-value-input":N,placeholder:e.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(L=>h(N),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(_)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:b.value,update:L=>k(N,L),value:T.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(_)?(t.openBlock(),t.createBlock(S,{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(R,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${N}`,icon:"",onClick:L=>t.unref(c)(T.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:1},8,["data-testid","onClick"])],8,Wk))),128))],8,zk)),[[t.vShow,!t.unref(p).hide.value]])}}}),[["__scopeId","data-v-6f20a032"]]),Zk=["data-testid"],Jk=["innerHTML"],ti=ve(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{labelAttributes:{},multiline:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,hide:l,...s}=wt(t.toRef(()=>e.name)),c=Ot(s.path,t.toRef({...r,...o})),d=t.computed(()=>{var h,_;return((_=(h=s.schema)==null?void 0:h.value)==null?void 0:_.len_min)&&s.schema.value.len_min>0}),f=t.ref("");function u(h){return h.map(_=>_.trim()).filter(Boolean).join(", ")}function p(h){return h.trim().split(",").map(_=>_.trim()).filter(Boolean)}function m(h){f.value=h;const _=p(h),w=!_.length&&d.value?null:_;a.value=w,i("update:modelValue",w)}const g=Wo(s.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Yo(e.name)==="name");return t.watch(a,h=>{const _=h?u(h):"";u(p(f.value))!==_&&(f.value=_)},{immediate:!0}),(h,_)=>{var b;const w=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(w,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${s.path.value}`},[t.createVNode(Yn,t.mergeProps(t.unref(c),{class:"ff-tag-field","data-1p-ignore":y.value,"data-autofocus":t.unref(g),"data-testid":`ff-${s.path.value}`,"model-value":f.value??"","onUpdate:modelValue":m}),t.createSlots({_:2},[(b=t.unref(c).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Jk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Zk)),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-5195e71a"]]),Qk=["data-testid"],eC=["innerHTML"],tC=ve(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{labelAttributes:{},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,hide:l,...s}=wt(t.toRef(()=>e.name)),c=Ot(s.path,t.toRef({...r,...o})),d=t.ref("");function f(m){d.value=m;let g=m||null;try{const y=JSON.parse(m);y&&typeof y=="object"&&(g=y)}catch{}a.value=g,i("update:modelValue",g)}const u=Wo(s.ancestors),p=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Yo(e.name)==="name");return t.watch(a,m=>{if(m&&typeof m=="object"){try{const g=JSON.parse(d.value);jn(g,m)||(d.value=JSON.stringify(m,null,2))}catch{d.value=JSON.stringify(m,null,2)}return}d.value=m||""},{immediate:!0}),(m,g)=>{var h;const y=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(y,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${s.path.value}`},[t.createVNode(Yn,t.mergeProps(t.unref(c),{class:"ff-json-field","data-1p-ignore":p.value,"data-autofocus":t.unref(u),"data-testid":`ff-${s.path.value}`,"model-value":d.value??"",multiline:"","onUpdate:modelValue":f}),t.createSlots({_:2},[(h=t.unref(c).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(m.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,eC)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Qk)),[[t.vShow,!t.unref(l)]])}}}),[["__scopeId","data-v-02205863"]]),nC=["innerHTML"],oC=ve(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{labelAttributes:{},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:{t:r}}=Ve(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,hide:s,...c}=wt(t.toRef(()=>e.name));if(c.error)throw new Error(c.error.message);const d=Ot(c.path,t.toRef({...i,...o})),f=l.value?l.value.id:null,u=t.computed(()=>{var h;return d.value.placeholder?d.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((h=c.schema.value)==null?void 0:h.reference)??"entity"})}),p=t.ref(f??"");function m(h){f!==void 0&&h===""&&h!==f?(l.value=null,a("update:modelValue",null)):(l.value={id:h.trim()},a("update:modelValue",l.value))}const g=Wo(c.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Yo(e.name)==="name");return(h,_)=>{var w;return t.withDirectives((t.openBlock(),t.createBlock(Yn,t.mergeProps(t.unref(d),{class:"ff-foreign-field","data-1p-ignore":y.value,"data-autofocus":t.unref(g),"data-testid":`ff-${c.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.help,"model-value":p.value,placeholder:u.value,"onUpdate:modelValue":m}),t.createSlots({_:2},[(w=t.unref(d).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,nC)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])),[[t.vShow,!t.unref(s)]])}}}),[["__scopeId","data-v-8626d32b"]]),ft=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?$t:kt;case"boolean":return"one_of"in o.schema.value?$t:mo;case"number":case"integer":return"one_of"in o.schema.value?$t:Wn;case"array":return Xo;case"set":return wk(o.schema)?ti:$t;case"record":return Et;case"map":return Xk;case"json":return tC;case"foreign":return oC;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:el(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:el(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)}}}),rC=["data-testid"],iC=["data-testid"],aC=["innerHTML"],lC=["data-testid"],sC={class:"ff-array-field-item-content"},cC=["data-index","data-testid"],Xo=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 S;t.useCssVars(A=>({v547e409b:C.value}));const o=e,r=n,{i18n:{t:i}}=Ve(),{getDefault:a,getSchema:l}=Ue(),{value:s,hide:c,...d}=wt(t.toRef(o,"name")),f=Ot(d.path,t.toRef({...o,...t.useAttrs()})),u=t.computed(()=>{if(!d.path)throw new Error("Field path is required for sub-schema retrieval");const A=l(d.path.value);if(!A)throw new Error(`Schema not found for path: ${d.path.value}`);return A.elements}),p=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:m}=Td("ff-array-field",p),g=t.computed(()=>o.appearance==="card"?$e.KCard:"div");function y(A,R){return typeof o.itemLabel=="function"?o.itemLabel(A,R):o.itemLabel||f.value.label||`Item #${R}`}const h=t.computed(()=>p.value.map((A,R)=>({hash:`#${m(A,R)}`,title:""}))),_=t.ref((S=h.value[0])==null?void 0:S.hash),w=async()=>{var R;const A=a(Ze(d.path.value,Ja));Array.isArray(s.value)||(s.value=[]),s.value.push(A),r("add"),o.appearance==="tabs"&&(await t.nextTick(),_.value=(R=h.value[h.value.length-1])==null?void 0:R.hash),await t.nextTick(),E(p.value.length+1)},b=async A=>{var R;Array.isArray(s.value)&&s.value.splice(A,1),r("remove",A),o.appearance==="tabs"&&(_.value=(R=h.value[Math.max(0,A-1)])==null?void 0:R.hash)},k=t.useTemplateRef("root");function E(A){var O;if(!k.value)return;const R=Math.max(0,Math.min(A,p.value.length-1));(O=k.value.querySelector(`[data-index="${R}"] [data-autofocus]`))==null||O.focus()}const C=t.computed(()=>{const{appearance:A,stickyTabs:R}=o;return A!=="tabs"||R==null||R===!1?null:typeof R=="number"?`${o.stickyTabs}px`:typeof R=="string"?R:"0"});return(A,R)=>{var x;const O=t.resolveComponent("KAlert"),T=t.resolveComponent("KLabel"),N=t.resolveComponent("KButton"),L=t.resolveComponent("KTabs");return d.error?(t.openBlock(),t.createBlock(O,{key:0,appearance:"danger",message:d.error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:k,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${e.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":e.stickyTabs}]),"data-testid":`ff-array-${d.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${d.path.value}`},[t.createVNode(T,t.mergeProps({class:"ff-array-field-label"},t.unref(f),{"data-testid":`ff-label-${d.path.value}`,"tooltip-attributes":t.unref(f).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(f).label)+" ",1)]),_:2},[(x=t.unref(f).labelAttributes)!=null&&x.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(A.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(f).labelAttributes.info},null,8,aC)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(N,{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-${d.path.value}`,icon:"",onClick:w},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,iC),p.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${d.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(B,P)=>(t.openBlock(),t.createBlock(t.unref(g),{key:t.unref(m)(B,P),class:"ff-array-field-item","data-index":P,"data-testid":`ff-array-item-${d.path.value}.${P}`},{default:t.withCtx(()=>[t.createElementVNode("div",sC,[A.$slots.item?t.renderSlot(A.$slots,"item",{key:0,fieldName:String(P),index:P},void 0,!0):t.createCommentVNode("",!0),u.value.type==="array"&&u.value.elements.type==="string"?(t.openBlock(),t.createBlock(ti,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(P)},null,8,["help","name"])):(t.openBlock(),t.createBlock(ft,{key:2,name:String(P)},null,8,["name"]))]),t.createVNode(N,{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-${d.path.value}.${P}`,icon:"",onClick:q=>b(P)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,lC)):(t.openBlock(),t.createBlock(t.unref($e.KCard),{key:1,"data-testid":`ff-array-tab-container-${d.path.value}`},{default:t.withCtx(()=>[t.createVNode(L,{modelValue:_.value,"onUpdate:modelValue":R[0]||(R[0]=B=>_.value=B),"data-testid":`ff-array-tabs-${d.path.value}`,tabs:h.value},t.createSlots({_:2},[t.renderList(p.value,(B,P)=>({name:t.unref(m)(B,P),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":P,"data-testid":`ff-array-item-${d.path.value}.${P}`},[A.$slots.item?t.renderSlot(A.$slots,"item",{key:0,fieldName:String(P),index:P},void 0,!0):(t.openBlock(),t.createBlock(ft,{key:1,name:String(P)},null,8,["name"]))],8,cC)])})),t.renderList(p.value,(B,P)=>({name:`${t.unref(m)(B,P)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(y(B,P))+" ",1),t.createVNode(N,{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-${d.path.value}.${P}`,icon:"",onClick:t.withModifiers(q=>b(P),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,rC)),[[t.vShow,!t.unref(c)]])}}}),[["__scopeId","data-v-fd8cf789"]]),Zo=Symbol(),dC=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Ue(),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(({[Zo]: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(Et,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode($t,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(Et,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode($t,t.mergeProps(d,{items:t.unref(Za)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),uC=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Ue();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Zo]=Od())}return(r,i)=>(t.openBlock(),t.createBlock(Xo,{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(dC,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),ni=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),{fieldRendererRegistry:r}=Ue();return o&&r.set(n.match,o),(i,a)=>null}}),pt=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{},renderRules:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),{getSchema:a,formData:l,setValue:s,getValue:c,rootRenderRules:d}=kk({schema:e.schema,propsData:t.computed(()=>e.data),propsConfig:e.config,propsRenderRules:t.toRef(()=>e.renderRules),onChange:u=>r("change",u)}),f=t.computed(()=>{var m;const{fields:u}=a();let p=[...u];return e.fieldsOrder?Ed(p,e.fieldsOrder):((m=d.value)!=null&&m.bundles&&(p=Nd([...p],d.value.bundles)),p)});return n({getValue:c,getRawValue:()=>t.toRaw(l),setValue:s}),(u,p)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Hn)]))),t.renderSlot(u.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,m=>(t.openBlock(),t.createBlock(ft,{key:Object.keys(m)[0],name:Object.keys(m)[0],onGlobalAction:p[0]||(p[0]=(g,y)=>r("globalAction",g,y))},null,8,["name"]))),128))])]),_:3}))}}),fC={class:"ff-advanced-fields"},oi=ve(t.defineComponent({__name:"AdvancedFields",props:{hideGeneralFields:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{getSchema:o}=Ue(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref($e.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",fC,[e.hideGeneralFields?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(ft,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(ft,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(ti,{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)],64)),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-fb80aa6f"]]),pC=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}}=Ve();function a(d,f=!1){return d.reduce((u,{[Zo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=Kn(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(g=>{g.request.body.custom=g.request.body.custom??{},g[Zo]=Od()});const p=a(u,!0);return u.forEach(g=>{g.depends_on=g.depends_on.map(y=>p[y])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=Kn(d);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const u=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[Zo]:g,depends_on:y,...h}=m;return{depends_on:y.map(_=>u[_]).filter(_=>_!=null),...h}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(pt,{class:"rc-config-form",config:r,data:e.data,schema:e.schema,tag:"div",onChange:c},{[t.unref(Hn)]:t.withCtx(()=>[t.createVNode(ni,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(kt,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(ni,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(Xo,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(uC),t.createVNode(Et,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(Et,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(Et,t.mergeProps(u,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),t.createVNode(oi)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),mC={class:"ff-form-pinned-fields"},gC={class:"ff-form-config-form"},rl=ve(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(u=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===u)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=t.computed(()=>{const f=o.schema;f.fields=f.fields.filter(p=>l.includes(Object.keys(p)[0])),f.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const u=f.fields.find(p=>Object.keys(p)[0]==="protocols");return u&&(u.protocols.help=u.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),u.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1),d=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return Ya(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",mC,[t.createVNode(t.unref(Le.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:t.unref(a),onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref($e.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"ff-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",gC,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:d.value,schema:s.value,onChange:u[0]||(u[0]=(...p)=>e.onFormChange&&e.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),hC=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(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(rl,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(pC,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),yC={key:1},_C=["innerHTML"],bC={class:"horizontal-container"},Vd=ve(t.defineComponent({__name:"RadioField",props:{labelAttributes:{},multiple:{type:Boolean},items:{},label:{},name:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Ue(),a=wt(t.toRef(()=>e.name)),l=Ot(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,f)=>{var m;const u=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):t.withDirectives((t.openBlock(),t.createElementBlock("div",yC,[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,_C)]),key:"0"}:void 0]),1040),t.createElementVNode("div",bC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,g=>(t.openBlock(),t.createBlock(t.unref($e.KRadio),{key:g.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=y=>t.unref(a).value.value=y),c],"card-orientation":"horizontal",label:g.label,"selected-value":g.value},null,8,["model-value","label","selected-value"]))),128))])],512)),[[t.vShow,!t.unref(a).hide.value]])}}}),[["__scopeId","data-v-910a1c85"]]),wC={class:"sp-form-request-limits-subtitle"},kC={class:"sp-form-request-limits-content"},CC={class:"sp-form-window-type"},EC={class:"sp-form-request-limits-items"},NC={class:"sp-form-request-limits-row"},xC=["id"],SC={class:"sp-form-request-limits-actions"},vC={key:0,class:"sp-form-request-limits-examples"},AC={class:"sp-form-request-limits-examples-badges"},il="config.window_type",IC=ve(t.defineComponent({__name:"RequestLimitsForm",setup(e){var h;const{t:n}=Xe.createI18n("en-us",Qe),{formData:o,getSelectItems:r,getSchema:i}=Ue(),a=t.computed(()=>{var w,b;const _=(b=(w=o.config)==null?void 0:w.limit)==null?void 0:b.map((k,E)=>{var C,S;return{limit:k,windowSize:(S=(C=o.config)==null?void 0:C.window_size)==null?void 0:S[E]}});return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=Td("request-limits",a),s=_=>{var w,b;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(b=o.config.window_size)!=null&&b.length||(o.config.window_size=[null]),o.config.limit.splice(_+1,0,null),o.config.window_size.splice(_+1,0,null))},c=_=>{o.config&&(o.config.limit.splice(_,1),o.config.window_size.splice(_,1))},d=(h=i(il))==null?void 0:h.default,f=t.computed(()=>Va(o,il)),u=t.computed(()=>r(il).sort((_,w)=>_.value===d?-1:w.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),y=(_,w)=>{if(w===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=w}),o.config.limit=[_.config.limit],o.config.window_size=[_.config.window_size]};return(_,w)=>{const b=t.resolveComponent("KLabel"),k=t.resolveComponent("KButton"),E=t.resolveComponent("KBadge"),C=t.resolveComponent("KTooltip"),S=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(S,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",wC,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",kC,[t.createElementVNode("div",CC,[t.createVNode(Vd,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=A=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",EC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(A,R)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(A,R)},[t.createVNode(b,{for:`sp-form-request-limits-item-${R}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:R+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",NC,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${R}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Wn,{name:`$.config.limit.${R}`,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.${R}`,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,xC),t.createElementVNode("div",SC,[t.createVNode(k,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(R)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(k,{appearance:"tertiary",onClick:()=>s(R)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(t.openBlock(),t.createElementBlock("div",vC,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",AC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(g.value,(A,R)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${R}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(A.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(A.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(A.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(E,{appearance:p.value===`${f.value}-${R}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>y(A,`${f.value}-${R}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(A.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),PC={id:"sp-form-error-legend",class:"sp-form-error-inputs"},TC=ve(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Xe.createI18n("en-us",Qe);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",PC,[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(kt,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),OC={class:"partial-config-card"},$C={class:"config-card-row-label"},BC={class:"label-text"},VC=["data-testid"],RC=["data-testid"],DC={key:1},MC=["data-testid"],LC=["data-testid"],FC=ve(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Xe.createI18n("en-us",Qe),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=u=>u!=null,l=(u,p)=>a(p)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:s}=he.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,g,y,h;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(g=r[u])!=null&&g.formatter?r[u].formatter(p):p,type:((y=r[u])==null?void 0:y.type)??l(u,p),order:((h=r[u])==null?void 0:h.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=bk(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(d));return(u,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",OC,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:g,label:y,value:h,type:_})=>(t.openBlock(),t.createElementBlock("div",{key:g,class:"partial-config-card-row"},[t.createElementVNode("div",$C,[t.createElementVNode("div",BC,t.toDisplayString(y),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${g}-property-value`},[a(h)?(t.openBlock(),t.createElementBlock("div",DC,[_==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${g}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(h)},null,8,["text"])],8,MC)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${g}-plain-text`},t.toDisplayString(h),9,LC))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${g}-no-value`}," – ",8,RC))],8,VC)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),ri=Symbol("redis-partial-info"),UC={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"}};function al(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(_d,e);return o=>n(o)}const KC={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},jC={class:"shared-redis-config"},GC={class:"shared-redis-config-title"},qC={class:"redis-config-select","data-testid":"redis-config-select"},zC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Rd=ve(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},setup(e){var O;const{t:n}=Xe.createI18n("en-us",Qe),o=["host","port","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","timeout","read_timeout","send_timeout","connect_timeout","connection_is_proxied","redis_proxy_type","cloud_authentication"],r={dependencies:{"cloud_authentication.aws_cache_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_region":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_is_serverless":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_access_key_id":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_secret_access_key":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_assume_role_arn":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_role_session_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.gcp_service_account_json":["cloud_authentication.auth_provider","gcp"],"cloud_authentication.azure_client_id":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_client_secret":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_tenant_id":["cloud_authentication.auth_provider","azure"]}},i=e,a=al(),l=t.inject(ri),s=(l==null?void 0:l.isEditing)||!1,c=t.computed(()=>{var T;return i.redisPath?i.redisPath:(T=l==null?void 0:l.redisPath)!=null&&T.value?"$."+l.redisPath.value:"$.config.redis"}),d=i.redisType||((O=l==null?void 0:l.redisType)==null?void 0:O.value),f=t.computed(()=>{var T;return!!((T=l==null?void 0:l.redisType)!=null&&T.value)}),u=t.ref(null),p=t.ref(!s),{getMessageFromError:m}=he.useErrors(),g=t.ref(i.defaultRedisConfigItem),y=t.ref({}),h=t.ref(),{value:_}=Pd("$.partials"),{value:w,hide:b}=wt(c),k=t.inject(Le.FORMS_CONFIG),E=t.ref(null),C=T=>{let N=`${k.apiBaseUrl}${UC[k.app].getOne}`;return k.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,(k==null?void 0:k.controlPlaneId)||""):k.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,k!=null&&k.workspace?`/${k.workspace}`:"")),N=N.replace(/{id}/gi,String(T)),N},{axiosInstance:S}=he.useAxios(k==null?void 0:k.axiosRequestConfig),A=()=>{p.value?(h.value&&(_.value=h.value,g.value=h.value[0].id,w.value=void 0),w!=null&&w.value&&(y.value=w.value)):(Object.keys(y.value).length&&(w.value=y.value),_!=null&&_.value&&(h.value=_.value),_.value=s?null:void 0)},R=async T=>{if(T){g.value=T,_.value=[{id:T}],h.value=[{id:T}],w.value=void 0;try{const N=await S.get(C(T));if(N.data.config){const L=Object.assign(N.data,N.data.config);delete L.config,u.value=L}}catch(N){console.error(N)}}};return t.watch(()=>p.value,()=>{A()}),t.onBeforeMount(()=>{var T;if(i.defaultRedisConfigItem||_!=null&&_.value){const N=i.defaultRedisConfigItem||((T=_==null?void 0:_.value)==null?void 0:T[0].id);R(N),p.value=!0}else w!=null&&w.value&&(y.value=w.value)}),t.watch(()=>b==null?void 0:b.value,T=>{p.value&&(T&&_.value?_.value=s?null:void 0:T||h.value&&(_.value=h.value,R(h.value[0].id)))}),(T,N)=>{const L=t.resolveComponent("KRadio"),x=t.resolveComponent("KCard");return f.value?t.withDirectives((t.openBlock(),t.createBlock(x,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(n)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",KC,[t.createVNode(L,{modelValue:p.value,"onUpdate:modelValue":N[0]||(N[0]=B=>p.value=B),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(n)("redis.shared_configuration.description"),label:t.unref(n)("redis.shared_configuration.label"),"selected-value":!0},null,8,["modelValue","description","label"]),t.createVNode(L,{modelValue:p.value,"onUpdate:modelValue":N[1]||(N[1]=B=>p.value=B),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(n)("redis.dedicated_configuration.description"),label:t.unref(n)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),t.withDirectives(t.createElementVNode("div",jC,[t.createElementVNode("div",GC,t.toDisplayString(t.unref(n)("redis.shared_configuration.title")),1),t.createElementVNode("div",qC,[t.createVNode(t.unref(zs.RedisConfigurationSelector),{"data-testid":"redis-config-select-trigger","model-value":g.value,"redis-type":t.unref(d),onErrorChange:N[2]||(N[2]=B=>E.value=B),onToast:t.unref(a),"onUpdate:modelValue":N[3]||(N[3]=B=>R(B))},null,8,["model-value","redis-type","onToast"])]),u.value?(t.openBlock(),t.createBlock(FC,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),E.value?(t.openBlock(),t.createElementBlock("p",zC,t.toDisplayString(E.value?t.unref(m)(E.value):t.unref(n)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)],512),[[t.vShow,p.value]]),p.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Et,t.mergeProps({key:0},i,{"as-child":"","fields-order":o,name:c.value,"render-rules":r,"reset-label-path":"reset"}),null,16,["name"]))]),_:1},8,["title"])),[[t.vShow,!t.unref(b)]]):t.withDirectives((t.openBlock(),t.createBlock(Et,t.mergeProps({key:1},i,{"fields-order":o,"hide-required-asterisk":"",name:c.value,"render-rules":r}),null,16,["name"])),[[t.vShow,!t.unref(b)]])}}}),[["__scopeId","data-v-d9fc3bcf"]]),HC=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=Ue(),o=t.inject(ri),r=(o==null?void 0:o.isEditing)||!1;return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=r?null:void 0)}),(i,a)=>(t.openBlock(),t.createBlock($d,null,{default:t.withCtx(()=>{var l;return[((l=t.unref(n).config)==null?void 0:l.strategy)==="redis"?(t.openBlock(),t.createBlock(Rd,{key:0})):t.createCommentVNode("",!0)]}),_:1}))}}),YC=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change"],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(pt,{config:r,data:e.data,schema:e.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(IC),t.createVNode(TC)]),_:1}),t.createVNode(oi,null,{default:t.withCtx(()=>[t.createVNode(ft,{name:"config.dictionary_name"}),t.createVNode(ft,{name:"config.lock_dictionary_name"}),t.createVNode(ft,{name:"config.strategy"}),t.createVNode(HC),t.createVNode(ft,{name:"config.namespace"}),t.createVNode(ft,{name:"config.hide_client_headers"}),t.createVNode(ft,{name:"config.disable_penalty"}),t.createVNode(ft,{name:"config.retry_after_jitter_max"}),t.createVNode(ft,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),WC=t.defineComponent({__name:"ServiceProtectionForm",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(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(rl,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(YC,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Dd=t.defineComponent({__name:"VFGField",props:{formOptions:{},vfgSchema:{}},setup(e){const n=Symbol("rawTagsString"),{formData:o,getSchema:r}=Ue(),i=t.computed(()=>{const l={};return e.vfgSchema.fields.forEach(s=>{s.type==="AutoSuggest"?o[s.model.split("-")[0]]&&(l[s.model]=o[s.model.split("-")[0]].id):s.model==="tags"&&o[s.model]?l[s.model]=o[s.model][n]??o[s.model].join(", "):l[s.model]=o[s.model]}),l});function a(l,s){const c=s.split("-")[0],d=r(c);if(!d)throw new Error(`Field schema not found for path: ${c}`);if(d.type==="foreign")o[c]=l?{id:l}:null;else if(c==="tags"){const f=l.split(",").map(u=>u.trim()).filter(Boolean);o[c]=f,o[c][n]=l}else o[c]=l}return(l,s)=>(t.openBlock(),t.createBlock(t.unref(Le.VueFormGenerator),{model:i.value,options:e.formOptions,schema:e.vfgSchema,onModelUpdated:a},null,8,["model","options","schema"]))}}),XC={"data-testid":"ff-identity-realms-field"},ZC=["innerHTML"],JC=t.defineComponent({__name:"FreeFormAdapter",props:{name:{},label:{},labelAttributes:{},required:{type:Boolean},placeholder:{},resetLabelPath:{}},setup(e){const n=e,{error:o,value:r,path:i}=wt(t.toRef(n,"name"));if(o)throw o;const a=Ot(t.toRef(n,"name"),n);return(l,s)=>{var d;const c=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",XC,[t.createVNode(c,t.mergeProps({class:"ff-array-field-label"},t.unref(a),{"data-testid":`ff-label-${t.unref(i)}`,"tooltip-attributes":t.unref(a).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a).label)+" ",1)]),_:2},[(d=t.unref(a).labelAttributes)!=null&&d.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(l.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,ZC)])]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(Xs,{modelValue:t.unref(r),"onUpdate:modelValue":s[0]||(s[0]=f=>t.isRef(r)?r.value=f:null)},null,8,["modelValue"])])}}}),QC={class:"radio-group"},eE={key:0,class:"scope-detail"},Md=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},editorMode:{default:"form"},formConfig:{},renderRules:{},pluginName:{}},setup(e){const n=["config","partials","__ui_data","enabled","protocols","instance_name","tags","consumer","consumer_group","route","service"],{t:o}=Xe.createI18n("en-us",Qe),r=t.createPropsRestProxy(e,["editorMode"]),i=t.inject(ri),a=t.useSlots(),l=t.computed(()=>r.formConfig??{hasValue:N=>!!N&&Object.keys(N).length>0,prepareFormData:N=>r.isEditing?N:{...N,...T()}}),s=t.computed(()=>{var N;return(N=f.value)!=null&&N.disabled?{class:"disabled-scope",maxWidth:"300",text:o("plugins.form.scoping.disable_global_radio")}:{class:"scope"}}),c=t.computed(()=>{var N,L;return(N=r.formSchema)!=null&&N.groups?r.formSchema.groups.reduce((x,B)=>{var G,K;const P=B.fields,q=(K=(G=B.collapsible)==null?void 0:G.nestedCollapsible)!=null&&K.fields?P.concat(B.collapsible.nestedCollapsible.fields):P;return x.concat(q)},[]):((L=r.formSchema)==null?void 0:L.fields)||[]}),d=t.computed(()=>({fields:c.value.filter(N=>N.model==="enabled").map(N=>({...N,styleClasses:"ff-enabled-field",label:o("plugins.form.fields.plugin_status.label"),textOn:o("plugins.form.fields.plugin_status.text_on"),textOff:o("plugins.form.fields.plugin_status.text_off")}))})),f=t.computed(()=>c.value.find(N=>N.type==="selectionGroup")),u=t.computed(()=>{var N;return(((N=f.value)==null?void 0:N.fields)||[]).map(({label:L,description:x})=>({label:L,description:x}))}),p=t.computed(()=>{var N,L;return(L=(N=f.value)==null?void 0:N.fields)==null?void 0:L[1]}),m=t.computed(()=>{const N=["instance_name","protocols","tags"];return{fields:c.value.filter(L=>N.includes(L.model))}}),g=["config"],y=t.computed(()=>{var x;const N={type:"record",fields:r.schema.fields.filter(B=>g.includes(Object.keys(B)[0]))};return[...d.value.fields,...((x=p.value)==null?void 0:x.fields)??[],...m.value.fields].forEach(B=>{if(B.type==="AutoSuggest")N.fields.push({[B.model.split("-")[0]]:{type:"foreign",reference:B.entity,description:B.help}});else if(B.model==="enabled")N.fields.push({[B.model]:{type:"boolean",default:!0}});else if(B.model==="instance_name")N.fields.push({[B.model]:{type:"string",description:B.help}});else if(B.model==="protocols")N.fields.push({[B.model]:{type:"set",elements:{type:"string",one_of:B.values.map(P=>P.value)},default:[...B.default],required:B.required,description:B.help,help:B.default?o("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:B.default.join(", ")}):o("plugins.form.fields.protocols.placeholder")}});else if(B.model==="tags")N.fields.push({[B.model]:{type:"set",elements:{type:"string"},description:B.help,default:B.default||[]}});else throw new Error(`Unsupported VFG field type '${B.type}' for model '${B.model}'`)}),N}),h=t.computed(()=>Ya(r.model,n)),_=t.computed(()=>{var N;return((N=p.value)==null?void 0:N.fields.map(L=>L.model))??[]}),w=t.computed(()=>_.value.map(N=>N.split("-")[0])),b=t.ref(r.isEditing?Ya(h.value,w.value):T()),k=t.ref(Object.values(b.value).some(O)),E=t.useTemplateRef("form");let C=!1;function S(){if(!E.value)return;const{getRawValue:N,setValue:L}=E.value,B={...N()};k.value?w.value.forEach(P=>{B[P]=b.value[P]??null}):w.value.forEach(P=>{B[P]=null}),C=!0,L(B),t.nextTick(()=>{C=!1})}function A(N){if(C||R(N),e.editorMode==="code"){const L=w.value.some(x=>O(N[x]));L!==k.value&&(k.value=L)}r.onFormChange(N,n)}function R(N){w.value.forEach(L=>{const x=N[L];Zr(x,"id")&&x.id!=null?b.value[L]=x:b.value[L]=null})}function O(N){return Zr(N,"id")&&N.id!=null}function T(){const N={};return _.value.forEach(L=>{if(r.formModel[L]){const x=L.split("-")[0];if(!x)return;N[x]={id:r.formModel[L]}}}),N}return(N,L)=>(t.openBlock(),t.createBlock(pt,{ref:"form",class:"ff-standard-layout",config:l.value,data:h.value,"render-rules":e.renderRules,schema:y.value,tag:"div",onChange:A},{[t.unref(Hn)]:t.withCtx(()=>[t.createVNode(ni,{match:({path:x})=>{var B,P;return x===((P=(B=t.unref(i))==null?void 0:B.redisPath)==null?void 0:P.value)}},{default:t.withCtx(()=>[t.createVNode(Rd)]),_:1},8,["match"]),t.createVNode(ni,{match:({path:x})=>e.pluginName==="key-auth"&&x==="config.identity_realms"},{default:t.withCtx(x=>[t.createVNode(JC,t.normalizeProps(t.guardReactiveProps(x)),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[e.editorMode==="form"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(t.unref(he.EntityFormBlock),{"data-testid":"form-section-plugin-scope",description:e.generalInfoDescription??t.unref(o)("plugins.form.sections.plugin_scope.description"),step:1,title:e.generalInfoTitle??t.unref(o)("plugins.form.sections.plugin_scope.title")},t.createSlots({default:t.withCtx(()=>{var x;return[(t.openBlock(),t.createBlock(t.resolveDynamicComponent((x=f.value)!=null&&x.disabled?t.unref($e.KTooltip):"div"),t.normalizeProps(t.guardReactiveProps(s.value)),{default:t.withCtx(()=>{var B,P;return[t.createElementVNode("div",QC,[t.createVNode(t.unref($e.KRadio),t.mergeProps({modelValue:k.value,"onUpdate:modelValue":L[0]||(L[0]=q=>k.value=q),card:"","card-orientation":"horizontal"},u.value[0],{disabled:(B=f.value)==null?void 0:B.disabled,"selected-value":!1,"onUpdate:modelValue":S}),null,16,["modelValue","disabled"]),u.value[1]?(t.openBlock(),t.createBlock(t.unref($e.KRadio),t.mergeProps({key:0,modelValue:k.value,"onUpdate:modelValue":L[1]||(L[1]=q=>k.value=q),card:"","card-orientation":"horizontal"},u.value[1],{disabled:(P=f.value)==null?void 0:P.disabled,"selected-value":!0,"onUpdate:modelValue":S}),null,16,["modelValue","disabled"])):t.createCommentVNode("",!0)])]}),_:1},16)),p.value?t.withDirectives((t.openBlock(),t.createElementBlock("div",eE,[t.createVNode(Dd,{"form-options":e.formOptions,"vfg-schema":p.value},null,8,["form-options","vfg-schema"])],512)),[[t.vShow,k.value]]):t.createCommentVNode("",!0)]}),_:2},[a["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,a["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,a["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(he.EntityFormBlock),{"data-testid":"form-section-plugin-config",description:e.pluginConfigDescription??t.unref(o)("plugins.form.sections.plugin_config.description"),step:2,title:e.pluginConfigTitle??t.unref(o)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(N.$slots,"default",{},void 0,!0)]),_:2},[a["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,a["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,a["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(he.EntityFormBlock),{"data-testid":"form-section-general-info",description:t.unref(o)("plugins.form.sections.plugin_general_info.description"),step:3,title:t.unref(o)("plugins.form.sections.general_info.title")},{default:t.withCtx(()=>[t.createVNode(Dd,{"form-options":e.formOptions,"vfg-schema":d.value},null,8,["form-options","vfg-schema"]),y.value.fields.find(x=>Object.keys(x)[0]==="instance_name")?(t.openBlock(),t.createBlock(kt,{key:0,label:t.unref(o)("plugins.form.fields.instance_name.label"),name:"instance_name",placeholder:t.unref(o)("plugins.form.fields.instance_name.placeholder")},null,8,["label","placeholder"])):t.createCommentVNode("",!0),y.value.fields.find(x=>Object.keys(x)[0]==="tags")?(t.openBlock(),t.createBlock(ti,{key:1,help:t.unref(o)("plugins.form.fields.tags.help"),name:"tags",placeholder:t.unref(o)("plugins.form.fields.tags.placeholder")},null,8,["help","placeholder"])):t.createCommentVNode("",!0),y.value.fields.find(x=>Object.keys(x)[0]==="protocols")?(t.openBlock(),t.createBlock(ft,{key:2,name:"protocols"})):t.createCommentVNode("",!0)]),_:1},8,["description","title"])],64)):t.renderSlot(N.$slots,"code-editor",{key:1},void 0,!0)]),_:2},1032,["config","data","render-rules","schema"]))}}),[["__scopeId","data-v-e4394231"]]);/*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT */function Ld(e){return typeof e>"u"||e===null}function tE(e){return typeof e=="object"&&e!==null}function nE(e){return Array.isArray(e)?e:Ld(e)?[]:[e]}function oE(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 rE(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function iE(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var aE=Ld,lE=tE,sE=nE,cE=rE,dE=iE,uE=oE,st={isNothing:aE,isObject:lE,toArray:sE,repeat:cE,isNegativeZero:dE,extend:uE};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+=`
|
|
18
18
|
|
|
19
|
-
`+e.mark.snippet),r+" "+o):r}function
|
|
20
|
-
`+s;for(d=
|
|
21
|
-
`,s+=
|
|
22
|
-
`,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=
|
|
23
|
-
`;return s.replace(/\n$/,"")}var
|
|
24
|
-
\r`;function
|
|
25
|
-
`: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
|
|
26
|
-
`,n-1))}function
|
|
27
|
-
`,a?1+c:c):i===
|
|
28
|
-
`);break}for(r?Xn(u)?(d=!0,e.result+=
|
|
29
|
-
`,a?1+c:c)):d?(d=!1,e.result+=
|
|
30
|
-
`,c+1)):c===0?a&&(e.result+=" "):e.result+=
|
|
31
|
-
`,c):e.result+=
|
|
32
|
-
`,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!
|
|
33
|
-
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new
|
|
19
|
+
`+e.mark.snippet),r+" "+o):r}function Jo(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=Fd(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Jo.prototype=Object.create(Error.prototype),Jo.prototype.constructor=Jo,Jo.prototype.toString=function(n){return this.name+": "+Fd(this,n)};var Ct=Jo;function ll(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 sl(e,n){return st.repeat(" ",n-e.length)+e}function fE(e,n){if(n=Object.create(n||null),!e.buffer)return null;n.maxLength||(n.maxLength=79),typeof n.indent!="number"&&(n.indent=1),typeof n.linesBefore!="number"&&(n.linesBefore=3),typeof n.linesAfter!="number"&&(n.linesAfter=2);for(var o=/\r?\n|\r|\0/g,r=[0],i=[],a,l=-1;a=o.exec(e.buffer);)i.push(a.index),r.push(a.index+a[0].length),e.position<=a.index&&l<0&&(l=r.length-2);l<0&&(l=r.length-1);var s="",c,d,f=Math.min(e.line+n.linesAfter,i.length).toString().length,u=n.maxLength-(n.indent+f+3);for(c=1;c<=n.linesBefore&&!(l-c<0);c++)d=ll(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=st.repeat(" ",n.indent)+sl((e.line-c+1).toString(),f)+" | "+d.str+`
|
|
20
|
+
`+s;for(d=ll(e.buffer,r[l],i[l],e.position,u),s+=st.repeat(" ",n.indent)+sl((e.line+1).toString(),f)+" | "+d.str+`
|
|
21
|
+
`,s+=st.repeat("-",n.indent+f+3+d.pos)+`^
|
|
22
|
+
`,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=ll(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=st.repeat(" ",n.indent)+sl((e.line+c+1).toString(),f)+" | "+d.str+`
|
|
23
|
+
`;return s.replace(/\n$/,"")}var pE=fE,mE=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],gE=["scalar","sequence","mapping"];function hE(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function yE(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(mE.indexOf(o)===-1)throw new Ct('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=hE(n.styleAliases||null),gE.indexOf(this.kind)===-1)throw new Ct('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var mt=yE;function Ud(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 _E(){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 cl(e){return this.extend(e)}cl.prototype.extend=function(n){var o=[],r=[];if(n instanceof mt)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 Ct("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof mt))throw new Ct("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new Ct("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 Ct("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 mt))throw new Ct("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(cl.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Ud(i,"implicit"),i.compiledExplicit=Ud(i,"explicit"),i.compiledTypeMap=_E(i.compiledImplicit,i.compiledExplicit),i};var Kd=cl,jd=new mt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Gd=new mt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),qd=new mt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),zd=new Kd({explicit:[jd,Gd,qd]});function bE(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function wE(){return null}function kE(e){return e===null}var Hd=new mt("tag:yaml.org,2002:null",{kind:"scalar",resolve:bE,construct:wE,predicate:kE,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function CE(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 EE(e){return e==="true"||e==="True"||e==="TRUE"}function NE(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Yd=new mt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:CE,construct:EE,predicate:NE,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 xE(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function SE(e){return 48<=e&&e<=55}function vE(e){return 48<=e&&e<=57}function AE(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(!xE(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!SE(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!vE(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function IE(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 PE(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!st.isNegativeZero(e)}var Wd=new mt("tag:yaml.org,2002:int",{kind:"scalar",resolve:AE,construct:IE,predicate:PE,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"]}}),TE=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function OE(e){return!(e===null||!TE.test(e)||e[e.length-1]==="_")}function $E(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 BE=/^[-+]?[0-9]+e/;function VE(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(st.isNegativeZero(e))return"-0.0";return o=e.toString(10),BE.test(o)?o.replace("e",".e"):o}function RE(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||st.isNegativeZero(e))}var Xd=new mt("tag:yaml.org,2002:float",{kind:"scalar",resolve:OE,construct:$E,predicate:RE,represent:VE,defaultStyle:"lowercase"}),Zd=zd.extend({implicit:[Hd,Yd,Wd,Xd]}),Jd=Zd,Qd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),eu=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 DE(e){return e===null?!1:Qd.exec(e)!==null||eu.exec(e)!==null}function ME(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=Qd.exec(e),n===null&&(n=eu.exec(e)),n===null)throw new Error("Date resolve error");if(o=+n[1],r=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(o,r,i));if(a=+n[4],l=+n[5],s=+n[6],n[7]){for(c=n[7].slice(0,3);c.length<3;)c+="0";c=+c}return n[9]&&(f=+n[10],u=+(n[11]||0),d=(f*60+u)*6e4,n[9]==="-"&&(d=-d)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),d&&p.setTime(p.getTime()-d),p}function LE(e){return e.toISOString()}var tu=new mt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:DE,construct:ME,instanceOf:Date,represent:LE});function FE(e){return e==="<<"||e===null}var nu=new mt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:FE}),dl=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
|
24
|
+
\r`;function UE(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=dl;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 KE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=dl,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 jE(e){var n="",o=0,r,i,a=e.length,l=dl;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 GE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var ou=new mt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:UE,construct:KE,predicate:GE,represent:jE}),qE=Object.prototype.hasOwnProperty,zE=Object.prototype.toString;function HE(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,zE.call(i)!=="[object Object]")return!1;for(a in i)if(qE.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 YE(e){return e!==null?e:[]}var ru=new mt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:HE,construct:YE}),WE=Object.prototype.toString;function XE(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],WE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function ZE(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 iu=new mt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:XE,construct:ZE}),JE=Object.prototype.hasOwnProperty;function QE(e){if(e===null)return!0;var n,o=e;for(n in o)if(JE.call(o,n)&&o[n]!==null)return!1;return!0}function eN(e){return e!==null?e:{}}var au=new mt("tag:yaml.org,2002:set",{kind:"mapping",resolve:QE,construct:eN}),ul=Jd.extend({implicit:[tu,nu],explicit:[ou,ru,iu,au]}),wn=Object.prototype.hasOwnProperty,ii=1,lu=2,su=3,ai=4,fl=1,tN=2,cu=3,nN=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,oN=/[\x85\u2028\u2029]/,rN=/[,\[\]\{\}]/,du=/^(?:!|!!|![a-z\-]+!)$/i,uu=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function fu(e){return Object.prototype.toString.call(e)}function Ht(e){return e===10||e===13}function Xn(e){return e===9||e===32}function Nt(e){return e===9||e===32||e===10||e===13}function go(e){return e===44||e===91||e===93||e===123||e===125}function iN(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function aN(e){return e===120?2:e===117?4:e===85?8:0}function lN(e){return 48<=e&&e<=57?e-48:-1}function pu(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
|
|
25
|
+
`: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 sN(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function mu(e,n,o){n==="__proto__"?Object.defineProperty(e,n,{configurable:!0,enumerable:!0,writable:!0,value:o}):e[n]=o}for(var gu=new Array(256),hu=new Array(256),ho=0;ho<256;ho++)gu[ho]=pu(ho)?1:0,hu[ho]=pu(ho);function cN(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||ul,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 yu(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=pE(o),new Ct(n,o)}function Te(e,n){throw yu(e,n)}function li(e,n){e.onWarning&&e.onWarning.call(null,yu(e,n))}var _u={YAML:function(n,o,r){var i,a,l;n.version!==null&&Te(n,"duplication of %YAML directive"),r.length!==1&&Te(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Te(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Te(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&li(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Te(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],du.test(i)||Te(n,"ill-formed tag handle (first argument) of the TAG directive"),wn.call(n.tagMap,i)&&Te(n,'there is a previously declared suffix for "'+i+'" tag handle'),uu.test(a)||Te(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Te(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function kn(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||Te(e,"expected valid JSON character");else nN.test(s)&&Te(e,"the stream contains non-printable characters");e.result+=s}}function bu(e,n,o,r){var i,a,l,s;for(st.isObject(o)||Te(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],wn.call(n,a)||(mu(n,a,o[a]),r[a]=!0)}function yo(e,n,o,r,i,a,l,s,c){var d,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),d=0,f=i.length;d<f;d+=1)Array.isArray(i[d])&&Te(e,"nested arrays are not supported inside keys"),typeof i=="object"&&fu(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&fu(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(d=0,f=a.length;d<f;d+=1)bu(e,n,a[d],o);else bu(e,n,a,o);else!e.json&&!wn.call(o,i)&&wn.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,Te(e,"duplicated mapping key")),mu(n,i,a),delete o[i];return n}function pl(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++):Te(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(;Xn(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(Ht(i))for(pl(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&&li(e,"deficient indentation"),r}function si(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||Nt(o)))}function ml(e,n){n===1?e.result+=" ":n>1&&(e.result+=st.repeat(`
|
|
26
|
+
`,n-1))}function dN(e,n,o){var r,i,a,l,s,c,d,f,u=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),Nt(m)||go(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=e.input.charCodeAt(e.position+1),Nt(i)||o&&go(i)))return!1;for(e.kind="scalar",e.result="",a=l=e.position,s=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),Nt(i)||o&&go(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),Nt(r))break}else{if(e.position===e.lineStart&&si(e)||o&&go(m))break;if(Ht(m))if(c=e.line,d=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=d,e.lineIndent=f;break}}s&&(kn(e,a,l,!1),ml(e,e.line-c),a=l=e.position,s=!1),Xn(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return kn(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function uN(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(kn(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 Ht(o)?(kn(e,r,i,!0),ml(e,et(e,!1,n)),r=i=e.position):e.position===e.lineStart&&si(e)?Te(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Te(e,"unexpected end of the stream within a single quoted scalar")}function fN(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 kn(e,o,e.position,!0),e.position++,!0;if(s===92){if(kn(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),Ht(s))et(e,!1,n);else if(s<256&&gu[s])e.result+=hu[s],e.position++;else if((l=aN(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=iN(s))>=0?a=(a<<4)+l:Te(e,"expected hexadecimal character");e.result+=sN(a),e.position++}else Te(e,"unknown escape sequence");o=r=e.position}else Ht(s)?(kn(e,o,r,!0),ml(e,et(e,!1,n)),o=r=e.position):e.position===e.lineStart&&si(e)?Te(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Te(e,"unexpected end of the stream within a double quoted scalar")}function pN(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,g=Object.create(null),y,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&&Te(e,"expected the node content, but found ','"):Te(e,"missed comma between flow collection entries"),h=y=_=null,u=p=!1,w===63&&(d=e.input.charCodeAt(e.position+1),Nt(d)&&(u=p=!0,e.position++,et(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,_o(e,n,ii,!1,!0),h=e.tag,y=e.result,et(e,!0,n),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(u=!0,w=e.input.charCodeAt(++e.position),et(e,!0,n),_o(e,n,ii,!1,!0),_=e.result),m?yo(e,s,g,h,y,_,r,i,a):u?s.push(yo(e,null,g,h,y,_,r,i,a)):s.push(y),et(e,!0,n),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}Te(e,"unexpected end of the stream within a flow collection")}function mN(e,n){var o,r,i=fl,a=!1,l=!1,s=n,c=0,d=!1,f,u;if(u=e.input.charCodeAt(e.position),u===124)r=!1;else if(u===62)r=!0;else return!1;for(e.kind="scalar",e.result="";u!==0;)if(u=e.input.charCodeAt(++e.position),u===43||u===45)fl===i?i=u===43?cu:tN:Te(e,"repeat of a chomping mode identifier");else if((f=lN(u))>=0)f===0?Te(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Te(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(Xn(u)){do u=e.input.charCodeAt(++e.position);while(Xn(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!Ht(u)&&u!==0)}for(;u!==0;){for(pl(e),e.lineIndent=0,u=e.input.charCodeAt(e.position);(!l||e.lineIndent<s)&&u===32;)e.lineIndent++,u=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>s&&(s=e.lineIndent),Ht(u)){c++;continue}if(e.lineIndent<s){i===cu?e.result+=st.repeat(`
|
|
27
|
+
`,a?1+c:c):i===fl&&a&&(e.result+=`
|
|
28
|
+
`);break}for(r?Xn(u)?(d=!0,e.result+=st.repeat(`
|
|
29
|
+
`,a?1+c:c)):d?(d=!1,e.result+=st.repeat(`
|
|
30
|
+
`,c+1)):c===0?a&&(e.result+=" "):e.result+=st.repeat(`
|
|
31
|
+
`,c):e.result+=st.repeat(`
|
|
32
|
+
`,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!Ht(u)&&u!==0;)u=e.input.charCodeAt(++e.position);kn(e,o,e.position,!1)}return!0}function wu(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,Te(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!Nt(l))));){if(s=!0,e.position++,et(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,_o(e,n,su,!1,!0),a.push(e.result),et(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)Te(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 gN(e,n,o){var r,i,a,l,s,c,d=e.tag,f=e.anchor,u={},p=Object.create(null),m=null,g=null,y=null,h=!1,_=!1,w;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),w=e.input.charCodeAt(e.position);w!==0;){if(!h&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Te(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(w===63||w===58)&&Nt(r))w===63?(h&&(yo(e,u,p,m,g,null,l,s,c),m=g=y=null),_=!0,h=!0,i=!0):h?(h=!1,i=!0):Te(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,!_o(e,o,lu,!1,!0))break;if(e.line===a){for(w=e.input.charCodeAt(e.position);Xn(w);)w=e.input.charCodeAt(++e.position);if(w===58)w=e.input.charCodeAt(++e.position),Nt(w)||Te(e,"a whitespace character is expected after the key-value separator within a block mapping"),h&&(yo(e,u,p,m,g,null,l,s,c),m=g=y=null),_=!0,h=!1,i=!1,m=e.tag,g=e.result;else if(_)Te(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=f,!0}else if(_)Te(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=d,e.anchor=f,!0}if((e.line===a||e.lineIndent>n)&&(h&&(l=e.line,s=e.lineStart,c=e.position),_o(e,n,ai,!0,i)&&(h?g=e.result:y=e.result),h||(yo(e,u,p,m,g,y,l,s,c),m=g=y=null),et(e,!0,-1),w=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&w!==0)Te(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return h&&yo(e,u,p,m,g,null,l,s,c),_&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),_}function hN(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&&Te(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)):Te(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!Nt(l);)l===33&&(r?Te(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),du.test(i)||Te(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),rN.test(a)&&Te(e,"tag suffix cannot contain flow indicator characters")}a&&!uu.test(a)&&Te(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Te(e,"tag name is malformed: "+a)}return o?e.tag=a:wn.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:Te(e,'undeclared tag handle "'+i+'"'),!0}function yN(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&Te(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!Nt(o)&&!go(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&Te(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function _N(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&&!Nt(r)&&!go(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&Te(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),wn.call(e.anchorMap,o)||Te(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],et(e,!0,-1),!0}function _o(e,n,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,g,y,h;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=ai===o||su===o,r&&et(e,!0,-1)&&(d=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;hN(e)||yN(e);)et(e,!0,-1)?(d=!0,s=a,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)):s=!1;if(s&&(s=d||i),(c===1||ai===o)&&(ii===o||lu===o?y=n:y=n+1,h=e.position-e.lineStart,c===1?s&&(wu(e,h)||gN(e,h,y))||pN(e,y)?f=!0:(l&&mN(e,y)||uN(e,y)||fN(e,y)?f=!0:_N(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&Te(e,"alias node should not have any properties")):dN(e,y,ii===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&wu(e,h))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&Te(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),u=0,p=e.implicitTypes.length;u<p;u+=1)if(g=e.implicitTypes[u],g.resolve(e.result)){e.result=g.construct(e.result),e.tag=g.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(wn.call(e.typeMap[e.kind||"fallback"],e.tag))g=e.typeMap[e.kind||"fallback"][e.tag];else for(g=null,m=e.typeMap.multi[e.kind||"fallback"],u=0,p=m.length;u<p;u+=1)if(e.tag.slice(0,m[u].tag.length)===m[u].tag){g=m[u];break}g||Te(e,"unknown tag !<"+e.tag+">"),e.result!==null&&g.kind!==e.kind&&Te(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+g.kind+'", not "'+e.kind+'"'),g.resolve(e.result,e.tag)?(e.result=g.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Te(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 bN(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&&!Nt(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&Te(e,"directive name must not be less than one character in length");l!==0;){for(;Xn(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!Ht(l));break}if(Ht(l))break;for(o=e.position;l!==0&&!Nt(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&pl(e),wn.call(_u,r)?_u[r](e,r,i):li(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&&Te(e,"directives end mark is expected"),_o(e,e.lineIndent-1,ai,!1,!0),et(e,!0,-1),e.checkLineBreaks&&oN.test(e.input.slice(n,e.position))&&li(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&si(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,et(e,!0,-1));return}if(e.position<e.length-1)Te(e,"end of the stream or a document separator is expected");else return}function ku(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
|
|
33
|
+
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new cN(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Te(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;)bN(o);return o.documents}function wN(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=ku(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function kN(e,n){var o=ku(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new Ct("expected a single document in the stream, but found more")}}var CN=wN,EN=kN,Cu={loadAll:CN,load:EN},Eu=Object.prototype.toString,Nu=Object.prototype.hasOwnProperty,gl=65279,NN=9,Qo=10,xN=13,SN=32,vN=33,AN=34,hl=35,IN=37,PN=38,TN=39,ON=42,xu=44,$N=45,ci=58,BN=61,VN=62,RN=63,DN=64,Su=91,vu=93,MN=96,Au=123,LN=124,Iu=125,yt={};yt[0]="\\0",yt[7]="\\a",yt[8]="\\b",yt[9]="\\t",yt[10]="\\n",yt[11]="\\v",yt[12]="\\f",yt[13]="\\r",yt[27]="\\e",yt[34]='\\"',yt[92]="\\\\",yt[133]="\\N",yt[160]="\\_",yt[8232]="\\L",yt[8233]="\\P";var FN=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],UN=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function KN(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&&Nu.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function jN(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 Ct("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+st.repeat("0",r-n.length)+n}var GN=1,er=2;function qN(e){this.schema=e.schema||ul,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=st.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=KN(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==='"'?er:GN,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 Pu(e,n){for(var o=st.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
|
|
34
34
|
`,r),i===-1?(l=e.slice(r),r=s):(l=e.slice(r,i+1),r=i+1),l.length&&l!==`
|
|
35
|
-
`&&(a+=o),a+=l;return a}function
|
|
36
|
-
`+
|
|
35
|
+
`&&(a+=o),a+=l;return a}function yl(e,n){return`
|
|
36
|
+
`+st.repeat(" ",e.indent*n)}function zN(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 di(e){return e===SN||e===NN}function tr(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==gl||65536<=e&&e<=1114111}function Tu(e){return tr(e)&&e!==gl&&e!==xN&&e!==Qo}function Ou(e,n,o){var r=Tu(e),i=r&&!di(e);return(o?r:r&&e!==xu&&e!==Su&&e!==vu&&e!==Au&&e!==Iu)&&e!==hl&&!(n===ci&&!i)||Tu(n)&&!di(n)&&e===hl||n===ci&&i}function HN(e){return tr(e)&&e!==gl&&!di(e)&&e!==$N&&e!==RN&&e!==ci&&e!==xu&&e!==Su&&e!==vu&&e!==Au&&e!==Iu&&e!==hl&&e!==PN&&e!==ON&&e!==vN&&e!==LN&&e!==BN&&e!==VN&&e!==TN&&e!==AN&&e!==IN&&e!==DN&&e!==MN}function YN(e){return!di(e)&&e!==ci}function nr(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 $u(e){var n=/^\n* /;return n.test(e)}var Bu=1,_l=2,Vu=3,Ru=4,bo=5;function WN(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,g=-1,y=HN(nr(e,0))&&YN(nr(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=nr(e,c),!tr(d))return bo;y=y&&Ou(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=nr(e,c),d===Qo)u=!0,m&&(p=p||c-g-1>r&&e[g+1]!==" ",g=c);else if(!tr(d))return bo;y=y&&Ou(d,f,s),f=d}p=p||m&&c-g-1>r&&e[g+1]!==" "}return!u&&!p?y&&!l&&!i(e)?Bu:a===er?bo:_l:o>9&&$u(e)?bo:l?a===er?bo:_l:p?Ru:Vu}function XN(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===er?'""':"''";if(!e.noCompatMode&&(FN.indexOf(n)!==-1||UN.test(n)))return e.quotingType===er?'"'+n+'"':"'"+n+"'";var a=e.indent*Math.max(1,o),l=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),s=r||e.flowLevel>-1&&o>=e.flowLevel;function c(d){return zN(e,d)}switch(WN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case Bu:return n;case _l:return"'"+n.replace(/'/g,"''")+"'";case Vu:return"|"+Du(n,e.indent)+Mu(Pu(n,a));case Ru:return">"+Du(n,e.indent)+Mu(Pu(ZN(n,l),a));case bo:return'"'+JN(n)+'"';default:throw new Ct("impossible error: invalid scalar style")}}()}function Du(e,n){var o=$u(e)?String(n):"",r=e[e.length-1]===`
|
|
37
37
|
`,i=r&&(e[e.length-2]===`
|
|
38
38
|
`||e===`
|
|
39
39
|
`),a=i?"+":r?"":"-";return o+a+`
|
|
40
|
-
`}function
|
|
41
|
-
`?e.slice(0,-1):e}function
|
|
42
|
-
`);return d=d!==-1?d:e.length,o.lastIndex=d,
|
|
40
|
+
`}function Mu(e){return e[e.length-1]===`
|
|
41
|
+
`?e.slice(0,-1):e}function ZN(e,n){for(var o=/(\n+)([^\n]*)/g,r=function(){var d=e.indexOf(`
|
|
42
|
+
`);return d=d!==-1?d:e.length,o.lastIndex=d,Lu(e.slice(0,d),n)}(),i=e[0]===`
|
|
43
43
|
`||e[0]===" ",a,l;l=o.exec(e);){var s=l[1],c=l[2];a=c[0]===" ",r+=s+(!i&&!a&&c!==""?`
|
|
44
|
-
`:"")+
|
|
44
|
+
`:"")+Lu(c,n),i=a}return r}function Lu(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+=`
|
|
45
45
|
`+e.slice(i,a),i=a+1),l=s;return c+=`
|
|
46
46
|
`,e.length-i>n&&l>i?c+=e.slice(i,l)+`
|
|
47
|
-
`+e.slice(l+1):c+=e.slice(i),c.slice(1)}function
|
|
48
|
-
`:""}var
|
|
47
|
+
`+e.slice(l+1):c+=e.slice(i),c.slice(1)}function JN(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=nr(e,i),r=yt[o],!r&&tr(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||jN(o);return n}function QN(e,n,o){var r="",i=e.tag,a,l,s;for(a=0,l=o.length;a<l;a+=1)s=o[a],e.replacer&&(s=e.replacer.call(o,String(a),s)),(an(e,n,s,!1,!1)||typeof s>"u"&&an(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function Fu(e,n,o,r){var i="",a=e.tag,l,s,c;for(l=0,s=o.length;l<s;l+=1)c=o[l],e.replacer&&(c=e.replacer.call(o,String(l),c)),(an(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&an(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=yl(e,n)),e.dump&&Qo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function e1(e,n,o){var r="",i=e.tag,a=Object.keys(o),l,s,c,d,f;for(l=0,s=a.length;l<s;l+=1)f="",r!==""&&(f+=", "),e.condenseFlow&&(f+='"'),c=a[l],d=o[c],e.replacer&&(d=e.replacer.call(o,c,d)),an(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),an(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function t1(e,n,o,r){var i="",a=e.tag,l=Object.keys(o),s,c,d,f,u,p;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new Ct("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=yl(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),an(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Qo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=yl(e,n)),an(e,n+1,f,!0,u)&&(e.dump&&Qo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function Uu(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,Eu.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(Nu.call(s.represent,c))r=s.represent[c](n,c);else throw new Ct("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function an(e,n,o,r,i,a,l){e.tag=null,e.dump=o,Uu(e,o,!1)||Uu(e,o,!0);var s=Eu.call(e.dump),c=r,d;r&&(r=e.flowLevel<0||e.flowLevel>n);var f=s==="[object Object]"||s==="[object Array]",u,p;if(f&&(u=e.duplicates.indexOf(o),p=u!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&n>0)&&(i=!1),p&&e.usedDuplicates[u])e.dump="*ref_"+u;else{if(f&&p&&!e.usedDuplicates[u]&&(e.usedDuplicates[u]=!0),s==="[object Object]")r&&Object.keys(e.dump).length!==0?(t1(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(e1(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?Fu(e,n-1,e.dump,i):Fu(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(QN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&XN(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new Ct("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(d=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?d="!"+d:d.slice(0,18)==="tag:yaml.org,2002:"?d="!!"+d.slice(18):d="!<"+d+">",e.dump=d+" "+e.dump)}return!0}function n1(e,n){var o=[],r=[],i,a;for(bl(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function bl(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)bl(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)bl(e[r[i]],n,o)}function o1(e,n){n=n||{};var o=new qN(n);o.noRefs||n1(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),an(o,0,r,!0,!0)?o.dump+`
|
|
48
|
+
`:""}var r1=o1,i1={dump:r1};function wl(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 a1=mt,l1=Kd,s1=zd,wo=Zd,c1=Jd,d1=ul,u1=Cu.load,f1=Cu.loadAll,p1=i1.dump,m1=Ct,g1={binary:ou,float:Xd,map:qd,null:Hd,pairs:iu,set:au,timestamp:tu,bool:Yd,int:Wd,merge:nu,omap:ru,seq:Gd,str:jd},h1=wl("safeLoad","load"),y1=wl("safeLoadAll","loadAll"),_1=wl("safeDump","dump"),Cn={Type:a1,Schema:l1,FAILSAFE_SCHEMA:s1,JSON_SCHEMA:wo,CORE_SCHEMA:c1,DEFAULT_SCHEMA:d1,load:u1,loadAll:f1,dump:p1,YAMLException:m1,types:g1,safeLoad:h1,safeLoadAll:y1,safeDump:_1};const ui={authenticate:`nodes:
|
|
49
49
|
- name: STATIC_INPUTS
|
|
50
50
|
type: static
|
|
51
51
|
values:
|
|
@@ -205,13 +205,13 @@ nodes:
|
|
|
205
205
|
type: exit
|
|
206
206
|
input: API
|
|
207
207
|
status: 200
|
|
208
|
-
`};function
|
|
209
|
-
`)[0],x=[{startLineNumber:T+1,startColumn:E+1,endLineNumber:T+1,endColumn:E+2,message:L,severity:ma.MarkerSeverity.Error,source:bl}];ma.editor.setModelMarkers(S,bl,x),s("error",L)}}),l.app==="konnect"&&k.onDidPaste(A=>{const R=k.getModel();if(!R)return;const O=R.getValueInRange(A.range);for(const T of JN){const E=T.extract(O);if(E){h.value=E,y.value=T.name,_.value=!0;return}}}),N())}const _=t.shallowRef(!1),h=t.shallowRef(null),y=t.shallowRef("");function w(){_.value=!1,h.value=null,y.value=""}function b(){h.value&&(p.value=f(h.value),w())}function C(k){const S=ci[k];if(l.app==="kongManager"){p.value=S,N();return}try{const A=Cn.load(p.value,{schema:wo,json:!0}),R=Cn.load(S,{schema:wo,json:!0});if(jn(A.config,R))return;const O=Gn({...i,config:{...R}},["__ui_data"]);p.value=f(O)}catch(A){s("error",c(A))}N()}function N(){const k=d.value,S=k==null?void 0:k.getModel();!k||!S||(k.setPosition(S.getFullModelRange().getEndPosition()),k.focus())}return n({setExampleCode:C}),(k,S)=>(t.openBlock(),t.createElementBlock("div",QN,[t.createVNode(t.unref($e.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(ke.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",e1,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(ci),(A,R)=>(t.openBlock(),t.createBlock(t.unref($e.KButton),{key:R,appearance:"secondary",size:"small",onClick:O=>C(R)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${R}`)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),t.createVNode(t.unref(Ag.MonacoEditor),{ref:"editor",modelValue:p.value,"onUpdate:modelValue":S[0]||(S[0]=A=>p.value=A),class:"editor",language:"yaml",options:m,theme:"light",onReady:g},null,8,["modelValue"]),t.createVNode(t.unref($e.KModal),{"action-button-text":t.unref(r)("plugins.free-form.datakit.detected_config_format_confirm"),title:t.unref(r)("plugins.free-form.datakit.detected_config_format_title"),visible:_.value,onCancel:w,onProceed:b},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.detected_config_format",{format:y.value})),1)]),_:1},8,["action-button-text","title","visible"])]))}}),[["__scopeId","data-v-a1f60b0e"]]),Mu=["request","service_request","service_response","response","vault"],ko=Mu,Lu=["call","jq","exit","property","static","branch","cache","xml_to_json","json_to_xml"],Fu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],t1="#ecfcff",n1="#f1f0ff",o1="#52596e",wl="#e0e4ea",r1="#007d60",i1="#fffce0",a1="#6c7489",l1="#0044f4",s1="#5f9aff",or="#000933",kl="#d60027",c1="#ffe5e5",d1="#00abd2",u1="#d60067",Uu="#6f28ff",Ku="#afb7c5",Co="#6c7489",f1="#0044f4",p1="#eefaff",m1="#007d60",g1="#ecfffb",h1="#995c00",y1="#306fff",di="12px",ui="16px",rr="20px",_1="2px",ju="8px",b1="32px",gt={call:{icon:ke.NetworkIcon,colors:{foreground:h1,background:i1}},jq:{icon:ke.CodeblockIcon,colors:{foreground:Uu,background:n1}},exit:{icon:ke.GatewayIcon,colors:{foreground:kl,background:c1}},property:{icon:ke.StackIcon,colors:{foreground:m1,background:g1}},static:{icon:ke.DeployIcon,colors:{foreground:f1,background:p1}},branch:{icon:ke.ArrowSplitIcon,colors:{foreground:d1,background:t1}},cache:{icon:ke.CachedIcon,colors:{foreground:u1,background:"#fff0f7"}},xml_to_json:{icon:ke.DataObjectIcon,colors:{foreground:or,background:wl}},json_to_xml:{icon:ke.CodeIcon,colors:{foreground:or,background:wl}},vault:{icon:ke.KeyIcon},request:{icon:ke.CloudIcon},service_request:{icon:ke.CloudIcon},service_response:{icon:ke.CloudIcon},response:{icon:ke.CloudIcon}},{t:Cl}=Xe.createI18n("en-us",Qe);function xt(e){return Cl(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function ln(e){return Cl(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function w1(e){return Cl(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const El={call:{type:"call",summary:ln("call"),description:xt("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...gt.call},jq:{type:"jq",summary:ln("jq"),description:xt("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...gt.jq},exit:{type:"exit",summary:ln("exit"),description:xt("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...gt.exit},property:{type:"property",summary:ln("property"),description:xt("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...gt.property},static:{type:"static",summary:ln("static"),description:xt("static"),io:{output:{fields:[],configurable:!0}},...gt.static},branch:{type:"branch",summary:ln("branch"),description:xt("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...gt.branch},cache:{type:"cache",summary:ln("cache"),description:xt("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...gt.cache},xml_to_json:{type:"xml_to_json",summary:ln("xml_to_json"),description:xt("xml_to_json"),io:{input:{fields:[]},output:{fields:[]}},...gt.xml_to_json},json_to_xml:{type:"json_to_xml",summary:ln("json_to_xml"),description:xt("json_to_xml"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...gt.json_to_xml}},fi={request:{type:"request",description:xt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...gt.request},service_request:{type:"service_request",description:xt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...gt.service_request},service_response:{type:"service_response",description:xt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...gt.service_response},response:{type:"response",description:xt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...gt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...gt.vault,hidden:!0}},Nl=Object.keys(fi),xl=e=>Nl.includes(e),k1=e=>[...Nl,...Lu].includes(e),vt=e=>Nl.includes(e),Sl=e=>vt(e.type),vl=e=>!!(e!=null&&e.startsWith("node:")),ir=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function sn(e){return Kn(e)}function Al(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 Eo(e){return`${e}:${Xr()}`}function pi(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function Gu(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function No(e){return vt(e)?fi[e]:El[e]}function qu(e){var i,a,l,s;const n=No(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 ar(e){var o,r,i;return((i=(r=(o=No(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function zu(e){return(e??[]).map(n=>({id:Eo("field"),name:n}))}function En(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function Nn(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function Il(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Hu(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function C1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=fi[e];return{name:e,phase:n,position:{x:0,y:0},fields:qu(o.type),expanded:{},hidden:o.hidden}}function Yu(e,n){const r=(typeof e=="string"&&k1(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function Pl(e,n){return`${e}:${n}`}function E1(e){const n=e.lastIndexOf(":");if(n===-1)throw new Error(`Invalid group ID format: ${e}`);const o=e.slice(0,n),r=e.slice(n+1);return{nodeId:o,branch:r}}function mi(e,n){return`${e}:${n}`}function Wu(e,n,o,r,i){return{id:Pl(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 x1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function Xu(e,n){return[...N1(e),...x1(n)]}function gi(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 Tl(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 Ol(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&vl(i)):[]}function S1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const T=new Map;for(const E of e.value.groups)for(const L of E.memberIds)T.set(L,{ownerId:E.ownerId,branch:E.branch});return T}),a=t.computed(()=>{const T=new Map;for(const E of e.value.groups)for(const L of E.memberIds)T.set(L,E);return T}),l=t.computed(()=>{const T=new Map;for(const E of e.value.groups)T.has(E.ownerId)||T.set(E.ownerId,[]),T.get(E.ownerId).push(E);return T}),s=t.computed(()=>Xu(e.value.edges,e.value.groups)),c=t.computed(()=>gi(s.value));function d(T,E){return T?ar(T.type).includes(E):!1}function f(T,E){if(E===T.id)return!1;const L=o(E);return!(!L||vt(L.type)||L.phase!==T.phase)}function u(T,E){const L=[],x=new Set;for(const B of E)x.has(B)||(x.add(B),f(T,B)&&L.push(B));return L}function p(T,E,L){const x=o(T);return d(x,E)?u(x,L):[]}function m(T,E,L){const x=Pl(T.id,E),B=n.value.get(x);L.length>0?B?(B.phase!==T.phase&&(B.phase=T.phase),Al(B.memberIds,L)||(B.position=void 0,B.dimensions=void 0,B.memberIds=[...L])):e.value.groups.push(Wu(T.id,E,T.phase,L)):B&&(e.value.groups=e.value.groups.filter(P=>P.id!==x))}function g(T,E,L,x={}){const B=o(T);if(!d(B,E))return!1;const P=u(B,L),q=Ol(B,E);if(Al(q,P))return!1;const G=B.config??(B.config={});return P.length>0?G[E]=[...P]:(delete G[E],Object.keys(G).length===0&&delete B.config),m(B,E,P),(x.commit??!0)&&r.commit(x.tag),!0}function _(T,E={}){const L=e.value.groups.filter(x=>x.ownerId!==T);return L.length===e.value.groups.length?!1:(e.value.groups=L,(E.commit??!0)&&r.commit(E.tag),!0)}function h(T,E){const L=n.value.get(Pl(T,E));if(L)return[...L.memberIds];const x=o(T);return x?Ol(x,E):[]}function y(T){return i.value.get(T)}function w(T){const E=[];let L=a.value.get(T);for(;L;)E.push(L.id),L=a.value.get(L.ownerId);return E}function b(T,E){const L=w(E);if(L.length===0)return!1;const x=new Set(w(T));return x.size===0?!0:L.some(B=>!x.has(B))}function C(T,E){if(T===E)return!0;const L=new Set,x=[E];for(;x.length>0;){const B=x.pop();if(L.has(B))continue;if(L.add(B),B===T)return!0;const P=c.value.get(B);if(P)for(const q of P)L.has(q)||x.push(q)}return!1}function N(T,E,L){const x=o(T);return!(!d(x,E)||!f(x,L)||C(T,L))}function k(T,E,L,x={}){const B=o(T);if(!B||!N(T,E,L))return!1;const P=Ol(B,E);if(P.includes(L))return!1;S(L,{commit:!1});const q=[...P,L];return g(T,E,q,{commit:!1})?((x.commit??!0)&&r.commit(x.tag),!0):!1}function S(T,E={}){const L=y(T);if(!L)return!1;const x=h(L.ownerId,L.branch),B=x.filter(P=>P!==T);return B.length===x.length?!1:g(L.ownerId,L.branch,B,E)}function A(T){let E=0;const L=new Set;let x=a.value.get(T);for(;x&&!L.has(x.id);)E+=1,L.add(x.id),x=a.value.get(x.ownerId);return E}function R(T){const E=n.value.get(T);return E?A(E.ownerId):0}function O(T){return T?n.value.has(T):!1}return{memberGroupMap:a,groupsByOwner:l,findMembership:y,getMembers:h,wouldCreateCycle:C,setMembers:g,prepareMembers:p,addMember:k,removeMember:S,clear:_,getNodeDepth:A,getGroupDepth:R,isGroupId:O,isEdgeEnteringGroup:b,canAddMember:N}}function v1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=Ye.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var C;(C=n==null?void 0:n.onHistoryChange)==null||C.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function g(){r(),u=void 0,p("undo")}function _(){i(),u=void 0,p("redo")}function h(){s(),u=void 0,p("clear")}function y(){c(),u=void 0,p("reset")}function w(){r(),f.value.shift(),u=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:g,redo:_,clear:h,reset:y,revert:w}}function A1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function I1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function P1(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 Zu(e,n){var h,y,w,b,C,N,k;const o=((h=e.config)==null?void 0:h.nodes)??[],r=((y=e.__ui_data)==null?void 0:y.nodes)??[],i=((w=e.__ui_data)==null?void 0:w.groups)??[],a=new Map(r.map(S=>[S.name,S])),l=new Map(i.map(S=>[S.name,S])),s=[],c=[],d=new Map,f=[],u=[],p=new Map,m=S=>{const A=new Set,R=[...S];for(;R.length>0;){const O=R.shift();if(!A.has(O)&&(A.add(O),xl(O)||(d.get(O).phase="request"),!!p.has(O)))for(const T of p.get(O))A.has(T)||R.push(T)}};let g=!1;for(const S of o){const A=a.get(S.name);!A&&!g&&(g=!0);const R=Qu({type:S.type,configNode:S,uiNode:A,pluginData:e});s.push(R),d.set(R.name,R)}for(const S of s){const A=ar(S.type);if(!A.length)continue;const R=S.config;if(R)for(const O of A){const T=R[O];if(!Array.isArray(T)){l.has(mi(S.name,O))&&(g=!0);continue}const E=[];for(const L of T){if(typeof L!="string")continue;const x=d.get(L);x&&!vt(x.type)&&E.push(x.id)}if(E.length){R[O]=E;const L=mi(S.name,O),x=l.get(L),B=x?{position:sn(x.position)}:void 0,P=Wu(S.id,O,S.phase,E,B);f.push(P),!x&&!g&&(g=!0)}else delete R[O],l.has(mi(S.name,O))&&(g=!0)}}for(const S of ko)if(!d.has(S)){let A=a.get(S);A||(g||(g=!0),A=C1(S));const R=Qu({type:S,uiNode:A,pluginData:e});s.push(R),d.set(R.name,R)}for(const S of o)$1(S,u);for(const S of u){const A=d.get(S.source),R=d.get(S.target);if(!A||!R){A||console.warn(`[initEditorState] skip: source "${S.source}" not found`),R||console.warn(`[initEditorState] skip: target "${S.target}" not found`);continue}p.has(S.source)||p.set(S.source,new Set),p.get(S.source).add(S.target),p.has(S.target)||p.set(S.target,new Set),p.get(S.target).add(S.source),c.push({id:Eo("edge"),source:A.id,sourceField:(b=En(A,"output",S.sourceField))==null?void 0:b.id,target:R.id,targetField:(C=En(R,"input",S.targetField))==null?void 0:C.id})}m(["request","service_request"]);let _=null;return(k=(N=e.config)==null?void 0:N.resources)!=null&&k.cache&&(_={...e.config.resources.cache},e.partials&&(_.partial_id=e.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:g?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,..._?{cacheConfig:_}:{}}}function Ju(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=qu(n),c=No(n);return{id:Eo("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:zu((a==null?void 0:a.input)??s.input),output:zu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?sn(l):{}}}function T1(e){return vt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Qu({type:e,configNode:n,uiNode:o,pluginData:r}){return Ju({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??T1(e),position:o==null?void 0:o.position,fields:B1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:V1({type:e,configNode:n,pluginData:r})})}function O1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return sn(s)}function $1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=pi(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}=pi(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=pi(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}=pi(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function B1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=No(e),a=i==null?void 0:i.io;if(!a)return;const l={};if((s=a.input)!=null&&s.configurable&&(n?l.input=((c=n.fields)==null?void 0:c.input)??[]:o!=null&&o.inputs&&(l.input=Object.keys(o.inputs))),(d=a.output)!=null&&d.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const u=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>u.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>u.add(p)),u.size&&(l.output=Array.from(u))}e==="vault"&&(l.output=I1(r))}return Object.keys(l).length?l:void 0}function V1({type:e,configNode:n,pluginData:o}){return e==="vault"?A1(o):n?O1(n):void 0}function R1(e){const n=t.computed(()=>{const u=new Map;return e.value.nodes.forEach(p=>u.set(p.id,p)),u}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>Xu(o.value,r.value));function a(u){return gi(i.value,u?{source:u.source,target:u.target}:void 0)}function l(u){const p=n.value.get(u.source),m=n.value.get(u.target);if(!p||!m)return u;const g=Hu(p,u.sourceField)&&!Il(p,u.sourceField),_=Il(m,u.targetField);return g&&_?{source:u.target,sourceField:u.targetField,target:u.source,targetField:u.sourceField}:u}function s(u){const p=l(u),m=[],g=n.value.get(p.source),_=n.value.get(p.target);if(g||m.push("source node not found"),_||m.push("target node not found"),!g||!_)return{ok:!1,errors:m};Il(g,p.sourceField)||m.push("source handle is not an output field"),Hu(_,p.targetField)||m.push("target handle is not an input field"),_.name==="request"&&m.push('cannot target "request"'),g.name==="response"&&m.push('cannot source from "response"');const h=o.value.some(b=>b.target===p.target&&!b.targetField),y=o.value.some(b=>b.target===p.target&&!!b.targetField);(h&&p.targetField||y&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(b=>b.target===p.target&&b.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(b=>b.target===p.target&&!b.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const w=a({source:p.source,target:p.target});return Tl(w)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const u=[];for(const p of ko)[...n.value.values()].some(m=>m.name===p)||u.push(`missing implicit node "${p}"`);for(const p of o.value){const m=n.value.get(p.source);n.value.get(p.target).name==="request"&&u.push(`edge "${p.id}" targets "request"`),m.name==="response"&&u.push(`edge "${p.id}" sources from "response"`)}return Tl(a())&&u.push("graph contains cycle"),u.length?{ok:!1,errors:u}:{ok:!0}}function d(u){return s(u).ok}function f(u){return!u.source||!u.target?!1:d({source:u.source,sourceField:u.sourceHandle,target:u.target,targetField:u.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:d,isValidVueFlowConnection:f,buildAdjacency:gi}}const[ef,D1]=Ye.createInjectionState(function(n,o={}){const r=t.ref(Zu(n)),i=t.ref(),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=v1(r,{capacity:200,clone:sn,onHistoryChange:$=>{var oe,le;$!=="clear"&&((le=o.onChange)==null||le.call(o,ie(),Z(),ne(),(oe=r.value.cacheConfig)==null?void 0:oe.partial_id))}}),d=t.ref(!1),f=t.ref(new Set);function u(){r.value.pendingLayout=!1,c.commit("*")}function p($=!0){r.value.pendingFitView!==$&&(r.value.pendingFitView=$,c.commit("*"))}const m=t.computed(()=>{const $={request:0,response:0};return r.value.nodes.forEach(oe=>{vt(oe.type)||$[oe.phase]++}),$}),g=t.computed(()=>new Map(r.value.nodes.map($=>[$.id,$]))),_=t.computed(()=>new Map(r.value.nodes.map($=>[$.name,$]))),h=t.computed(()=>{const $=new Map,oe=new Map;for(const le of r.value.edges)$.set(le.id,le),oe.has(le.source)||oe.set(le.source,new Set),oe.get(le.source).add(le.id),oe.has(le.target)||oe.set(le.target,new Set),oe.get(le.target).add(le.id);return{edgeMapById:$,edgeIdMapByNodeId:oe}}),y=t.computed(()=>h.value.edgeMapById),w=t.computed(()=>h.value.edgeIdMapByNodeId),b=t.computed(()=>new Map(r.value.groups.map($=>[$.id,$]))),C=t.computed(()=>new Set(r.value.nodes.map($=>$.name))),N=S1({state:r,groupMapById:b,getNodeById:T,history:c}),{canonicalizeConnection:k,validateConnection:S,validateGraph:A,isValidConnection:R,isValidVueFlowConnection:O}=R1(r);function T($){return g.value.get($)}function E($){return _.value.get($)}function L($){return y.value.get($)}function x($){if(!w.value.has($))return[];const oe=[];return w.value.get($).forEach(le=>{const pe=L(le);pe&&oe.push(pe)}),oe}function B($){return x($).filter(oe=>oe.target===$)}function P($){return x($).filter(oe=>oe.source===$)}const q=t.computed(()=>i.value?T(i.value):void 0);function G($){i.value=$}function K($){a.value=$}function F($){if(vt($.type))throw new Error("[createNode] implicit nodes are fixed.");return Ju({type:$.type,name:$.name||(vt($.type)?void 0:Yu($.type,C.value)),phase:$.phase,position:$.position,fields:$.fields,config:$.config})}function I($,oe=!0){const le=F($);if(le)return r.value.nodes.push(le),oe&&c.commit(),d.value=!0,le.id}function j($,oe,le=!0){const pe=T($);if(!pe||vt(pe.type))return;const ce={...sn(pe),id:Eo("node"),name:Yu(pe.name,C.value),position:oe??{x:pe.position.x+20,y:pe.position.y+20}},fe=ar(ce.type);if(fe.length&&ce.config){for(const Ee of fe)delete ce.config[Ee];Object.keys(ce.config).length===0&&delete ce.config}return r.value.nodes.push(ce),le&&c.commit(),d.value=!0,ce.id}function z($,oe=!0){if(!T($))return;r.value.edges=r.value.edges.filter(ce=>ce.source!==$&&ce.target!==$),N.clear($,{commit:!1}),N.removeMember($,{commit:!1}),r.value.nodes=r.value.nodes.filter(ce=>ce.id!==$),i.value===$&&(i.value=void 0);const pe=A();pe.ok||console.warn("[removeNode] topology invalid:",pe.errors.join("; ")),oe&&c.commit()}function ae($,oe,le=!0,pe){const ce=T($);if(!ce)return;if(xl(ce.name)){console.warn("[renameNode] implicit node name is reserved.");return}ce.name!==oe&&(ce.name=oe,le&&c.commit(pe))}function U($,oe,le=!0){const pe=T($);pe&&(pe.position={...oe},le&&c.commit())}function H($,oe,le=!0){const pe=b.value.get($);if(!pe)return;const ce=pe.position;ce&&ce.x===oe.x&&ce.y===oe.y||(pe.position={...oe},le&&c.commit())}function ee($,oe,le=!0){const pe=b.value.get($);if(!pe)return!1;const ce={...oe.position},fe={...oe.dimensions},Ee=pe.position&&pe.position.x===ce.x&&pe.position.y===ce.y,Pe=pe.dimensions&&pe.dimensions.width===fe.width&&pe.dimensions.height===fe.height;return Ee&&Pe?!1:(pe.position=ce,pe.dimensions=fe,le&&c.commit(),!0)}function _e($,oe,le,pe=!0,ce){const fe=T($);if(!fe)return;const Ee=le??!fe.expanded[oe];Ee!==!!fe.expanded[oe]&&(fe.expanded[oe]=Ee,pe&&c.commit(ce??`toggle:${$}:${oe}`))}function be($,oe,le=!0,pe){const ce=T($);ce&&(ce.config=sn(oe),le&&c.commit(pe))}function re($,oe,le,pe=!0){const ce=T($);if(!ce)return;const fe=ce.fields[oe];if(fe.some(Ee=>Ee.name===le)){console.warn(`[addField] field "${le}" already exists on ${oe}.`);return}fe.push({id:Eo("field"),name:le}),oe==="input"?ce.fields.input=fe:ce.fields.output=fe,pe&&c.commit()}function J($,oe,le,pe=!0){const ce=T($);if(!ce)return;const fe=ce.fields.input,Ee=ce.fields.output,Pe=fe.find(ge=>ge.id===oe)??Ee.find(ge=>ge.id===oe);Pe&&(Pe.name=le,pe&&c.commit())}function te($,oe,le=!0,pe=!0){const ce=T($);if(!ce)return;const fe=ce.fields.input,Ee=ce.fields.output,Pe=fe.findIndex(Ke=>Ke.id===oe);Pe>=0&&fe.splice(Pe,1);const ge=Ee.findIndex(Ke=>Ke.id===oe);ge>=0&&Ee.splice(ge,1),ce.fields.input=fe,ce.fields.output=Ee,le&&(r.value.edges=r.value.edges.filter(Ke=>Ke.sourceField!==oe&&Ke.targetField!==oe));const ye=A();ye.ok||console.warn("[removeField] topology invalid:",ye.errors.join("; ")),pe&&c.commit()}function se($,oe=!0){const le=k($),pe=S(le);if(!pe.ok){console.warn("[connectEdge] invalid connection:",pe.errors.join("; "));return}const ce={id:Eo("edge"),...le};r.value.edges.push(ce);const fe=A();if(!fe.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",fe.errors.join("; "));return}return oe&&c.commit(),ce.id}function V($,oe,le=!0){v($,!1),se(oe,!1),le&&c.commit()}function v($,oe=!0){const le=r.value.edges.findIndex(fe=>fe.id===$);if(le<0)return;const pe=r.value.edges[le];r.value.edges.splice(le,1);const ce=A();if(!ce.ok){r.value.edges.splice(le,0,pe),console.warn("[disconnectEdge] topology invalid:",ce.errors.join("; "));return}oe&&c.commit()}function M($,oe=!0){const le=B($);for(const pe of le)v(pe.id,!1);oe&&c.commit()}function D($,oe=!0){const le=P($);for(const pe of le)v(pe.id,!1);oe&&c.commit()}function ie(){var oe,le,pe,ce,fe;const $=[];for(const Ee of r.value.nodes){if(vt(Ee.type))continue;let Pe;const ge={};let ye;const Ke={};for(const dt of r.value.edges.filter(de=>de.target===Ee.id)){const de=T(dt.source);if(!de)continue;const Se=(oe=Nn(de,"output",dt.sourceField))==null?void 0:oe.name,me=Se?`${de.name}.${Se}`:de.name,Ce=(le=Nn(Ee,"input",dt.targetField))==null?void 0:le.name;Ce?ge[Ce]=me:Pe===void 0&&(Pe=me)}for(const dt of r.value.edges.filter(de=>de.source===Ee.id)){const de=T(dt.target);if(!de)continue;const Se=de.type;if(!vt(Se)||!((pe=fi[Se].io)!=null&&pe.input))continue;const me=(ce=Nn(de,"input",dt.targetField))==null?void 0:ce.name,Ce=me?`${de.name}.${me}`:de.name,Ie=(fe=Nn(Ee,"output",dt.sourceField))==null?void 0:fe.name;Ie?Ke[Ie]=Ce:ye===void 0&&(ye=Ce)}const _t={...sn(Ee.config),name:Ee.name,type:Ee.type},en=ar(Ee.type);if(en.length)for(const dt of en){const de=_t[dt];if(!Array.isArray(de))continue;const Se=[];for(const me of de){const Ce=T(me);Ce&&Se.push(Ce.name)}Se.length?_t[dt]=Array.from(new Set(Se)):delete _t[dt]}Object.keys(ge).length>0?_t.inputs=ge:Pe!==void 0&&(_t.input=Pe),Object.keys(Ke).length>0?_t.outputs=Ke:ye!==void 0&&(_t.output=ye),$.push(_t)}return $}function X(){return r.value.nodes.map($=>sn({name:$.name,phase:$.phase,position:{...$.position},expanded:{...$.expanded},fields:{input:$.fields.input.map(oe=>oe.name),output:$.fields.output.map(oe=>oe.name)}}))}function ne(){const $={},oe=E("vault");if(oe){const le=P1(oe.config);le&&Object.keys(le).length>0&&($.vault=le)}if(r.value.cacheConfig){const{strategy:le,redis:pe,memory:ce}=r.value.cacheConfig;$.cache={strategy:le,redis:pe,memory:ce}}if(Object.keys($).length!==0)return $}function Q(){const $=[];for(const oe of r.value.groups){const le=T(oe.ownerId);if(!le)continue;const pe=oe.position;pe&&$.push({name:mi(le.name,oe.branch),position:{...pe}})}return $}function Z(){return{nodes:X(),groups:Q()}}function ue($,oe){oe&&c.commit(),r.value=Zu($,oe),oe||c.clear()}return{state:r,selection:i,portalSelection:a,modalOpen:l,skipValidation:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,configNodeCounts:m,nodeMapById:g,nodeMapByName:_,edgeMapById:y,edgeIdMapByNodeId:w,groupMapById:b,getNodeById:T,getNodeByName:E,getEdgeById:L,getEdgesByNodeId:x,getInEdgesByNodeId:B,getOutEdgesByNodeId:P,selectedNode:q,selectNode:G,selectPortalEdge:K,createNode:F,addNode:I,duplicateNode:j,removeNode:z,renameNode:ae,moveNode:U,moveGroup:H,setGroupLayout:ee,toggleExpanded:_e,replaceConfig:be,branchGroups:N,addField:re,renameField:J,removeField:te,connectEdge:se,replaceConnection:V,disconnectEdge:v,disconnectInEdges:M,disconnectOutEdges:D,toConfigNodes:ie,toUINodes:X,toUIGroups:Q,toUIData:Z,load:ue,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,revert:c.revert,isValidConnection:R,isValidVueFlowConnection:O,validateGraph:()=>A(),clearPendingLayout:u,setPendingFitView:p}});function We(){const e=D1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const{t:M1}=Xe.createI18n("en-us",Qe),hi=Ye.createGlobalState(()=>{const e=Ye.useLocalStorage("datakit-editor-mode","flow"),n=Ye.useLocalStorage("datakit-editor-sidebar-expanded",!0),o=Ye.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:e,sidePanelExpanded:n,responsePanelCollapsed:o}});function L1({enabled:e,confirm:n}){On.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm(M1("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=r=>{t.toValue(e)&&r.preventDefault()};Ye.useEventListener("beforeunload",o)}function lr(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function cn(e){return typeof e=="function"?e():t.unref(e)}const F1=typeof window<"u"&&typeof document<"u",U1=e=>typeof e<"u",K1=Object.prototype.toString,j1=e=>K1.call(e)==="[object Object]",G1=()=>{};function q1(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 tf=e=>e();function z1(e=tf){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 nf(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function H1(e,n,o={}){const{eventFilter:r=tf,...i}=o;return t.watch(e,q1(r,n),i)}function xo(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=z1(r);return{stop:H1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function Y1(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=cn(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 $l(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:g,throwOnTimeout:_}={}){let h=null;const w=[new Promise(b=>{h=t.watch(e,C=>{u(C)!==n&&(h==null||h(),b(C))},{flush:p,deep:m,immediate:!0})})];return g!=null&&w.push(nf(g,_).then(()=>cn(e)).finally(()=>h==null?void 0:h())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(C=>C===u,p);const{flush:m="sync",deep:g=!1,timeout:_,throwOnTimeout:h}=p??{};let y=null;const b=[new Promise(C=>{y=t.watch([e,u],([N,k])=>{n!==(N===k)&&(y==null||y(),C(N))},{flush:m,deep:g,immediate:!0})})];return _!=null&&b.push(nf(_,h).then(()=>cn(e)).finally(()=>(y==null||y(),cn(e)))),Promise.race(b)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const g=Array.from(m);return g.includes(u)||g.includes(cn(u))},p)}function d(u){return f(1,u)}function f(u=1,p){let m=-1;return o(()=>(m+=1,m>=u),p)}return Array.isArray(cn(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return $l(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return $l(e,!n)}}}function Bl(e){return $l(e)}function W1(e){var n;const o=cn(e);return(n=o==null?void 0:o.$el)!=null?n:o}const of=F1?window:void 0;function rf(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=of):[n,o,r,i]=e,!n)return G1;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(f=>f()),a.length=0},s=(f,u,p,m)=>(f.addEventListener(u,p,m),()=>f.removeEventListener(u,p,m)),c=t.watch(()=>[W1(n),cn(i)],([f,u])=>{if(l(),!f)return;const p=j1(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(g=>s(f,m,g,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return lr(d),d}function X1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function af(...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=of,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=X1(n);return rf(i,a,f=>{f.repeat&&cn(s)||c(f)&&o(f)},l)}function Z1(e){return JSON.parse(JSON.stringify(e))}function Vl(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.getCurrentInstance(),g=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let _=d;n||(n="modelValue"),_=_||`update:${n.toString()}`;const h=b=>s?typeof s=="function"?s(b):Z1(b):b,y=()=>U1(e[n])?h(e[n]):u,w=b=>{p?p(b)&&g(_,b):g(_,b)};if(c){const b=y(),C=t.ref(b);let N=!1;return t.watch(()=>e[n],k=>{N||(N=!0,C.value=h(k),t.nextTick(()=>N=!1))}),t.watch(C,k=>{!N&&(k!==e[n]||f)&&w(k)},{deep:f}),C}else return t.computed({get(){return y()},set(b){w(b)}})}var J1={value:()=>{}};function yi(){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 _i(o)}function _i(e){this._=e}function Q1(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}})}_i.prototype=yi.prototype={constructor:_i,on:function(e,n){var o=this._,r=Q1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=ex(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]=lf(o[i],e.name,n);else if(n==null)for(i in o)o[i]=lf(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 _i(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 ex(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function lf(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=J1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Rl="http://www.w3.org/1999/xhtml";const sf={svg:"http://www.w3.org/2000/svg",xhtml:Rl,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function bi(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),sf.hasOwnProperty(n)?{space:sf[n],local:e}:e}function tx(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Rl&&n.documentElement.namespaceURI===Rl?n.createElement(e):n.createElementNS(o,e)}}function nx(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function cf(e){var n=bi(e);return(n.local?nx:tx)(n)}function ox(){}function Dl(e){return e==null?ox:function(){return this.querySelector(e)}}function rx(e){typeof e!="function"&&(e=Dl(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=new Array(l),c,d,f=0;f<l;++f)(c=a[f])&&(d=e.call(c,c.__data__,f,a))&&("__data__"in c&&(d.__data__=c.__data__),s[f]=d);return new At(r,this._parents)}function ix(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function ax(){return[]}function df(e){return e==null?ax:function(){return this.querySelectorAll(e)}}function lx(e){return function(){return ix(e.apply(this,arguments))}}function sx(e){typeof e=="function"?e=lx(e):e=df(e);for(var n=this._groups,o=n.length,r=[],i=[],a=0;a<o;++a)for(var l=n[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&(r.push(e.call(c,c.__data__,d,l)),i.push(c));return new At(r,i)}function uf(e){return function(){return this.matches(e)}}function ff(e){return function(n){return n.matches(e)}}var cx=Array.prototype.find;function dx(e){return function(){return cx.call(this.children,e)}}function ux(){return this.firstElementChild}function fx(e){return this.select(e==null?ux:dx(typeof e=="function"?e:ff(e)))}var px=Array.prototype.filter;function mx(){return Array.from(this.children)}function gx(e){return function(){return px.call(this.children,e)}}function hx(e){return this.selectAll(e==null?mx:gx(typeof e=="function"?e:ff(e)))}function yx(e){typeof e!="function"&&(e=uf(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new At(r,this._parents)}function pf(e){return new Array(e.length)}function _x(){return new At(this._enter||this._groups.map(pf),this._parents)}function wi(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}wi.prototype={constructor:wi,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 bx(e){return function(){return e}}function wx(e,n,o,r,i,a){for(var l=0,s,c=n.length,d=a.length;l<d;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new wi(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function kx(e,n,o,r,i,a,l){var s,c,d=new Map,f=n.length,u=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=n[s])&&(p[s]=m=l.call(c,c.__data__,s,n)+"",d.has(m)?i[s]=c:d.set(m,c));for(s=0;s<u;++s)m=l.call(e,a[s],s,a)+"",(c=d.get(m))?(r[s]=c,c.__data__=a[s],d.delete(m)):o[s]=new wi(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function Cx(e){return e.__data__}function Ex(e,n){if(!arguments.length)return Array.from(this,Cx);var o=n?kx:wx,r=this._parents,i=this._groups;typeof e!="function"&&(e=bx(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),d=0;d<a;++d){var f=r[d],u=i[d],p=u.length,m=Nx(e.call(f,f&&f.__data__,d,r)),g=m.length,_=s[d]=new Array(g),h=l[d]=new Array(g),y=c[d]=new Array(p);o(f,u,_,h,y,m,n);for(var w=0,b=0,C,N;w<g;++w)if(C=_[w]){for(w>=b&&(b=w+1);!(N=h[b])&&++b<g;);C._next=N||null}}return l=new At(l,r),l._enter=s,l._exit=c,l}function Nx(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function xx(){return new At(this._exit||this._groups.map(pf),this._parents)}function Sx(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 vx(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],f=r[c],u=d.length,p=s[c]=new Array(u),m,g=0;g<u;++g)(m=d[g]||f[g])&&(p[g]=m);for(;c<i;++c)s[c]=o[c];return new At(s,this._parents)}function Ax(){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 Ix(e){e||(e=Px);function n(u,p){return u&&p?e(u.__data__,p.__data__):!u-!p}for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a){for(var l=o[a],s=l.length,c=i[a]=new Array(s),d,f=0;f<s;++f)(d=l[f])&&(c[f]=d);c.sort(n)}return new At(i,this._parents).order()}function Px(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function Tx(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Ox(){return Array.from(this)}function $x(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function Bx(){let e=0;for(const n of this)++e;return e}function Vx(){return!this.node()}function Rx(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 Dx(e){return function(){this.removeAttribute(e)}}function Mx(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Lx(e,n){return function(){this.setAttribute(e,n)}}function Fx(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function Ux(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function Kx(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 jx(e,n){var o=bi(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?Mx:Dx:typeof n=="function"?o.local?Kx:Ux:o.local?Fx:Lx)(o,n))}function mf(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Gx(e){return function(){this.style.removeProperty(e)}}function qx(e,n,o){return function(){this.style.setProperty(e,n,o)}}function zx(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function Hx(e,n,o){return arguments.length>1?this.each((n==null?Gx:typeof n=="function"?zx:qx)(e,n,o??"")):So(this.node(),e)}function So(e,n){return e.style.getPropertyValue(n)||mf(e).getComputedStyle(e,null).getPropertyValue(n)}function Yx(e){return function(){delete this[e]}}function Wx(e,n){return function(){this[e]=n}}function Xx(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function Zx(e,n){return arguments.length>1?this.each((n==null?Yx:typeof n=="function"?Xx:Wx)(e,n)):this.node()[e]}function gf(e){return e.trim().split(/^|\s+/)}function Ml(e){return e.classList||new hf(e)}function hf(e){this._node=e,this._names=gf(e.getAttribute("class")||"")}hf.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 yf(e,n){for(var o=Ml(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function _f(e,n){for(var o=Ml(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Jx(e){return function(){yf(this,e)}}function Qx(e){return function(){_f(this,e)}}function eS(e,n){return function(){(n.apply(this,arguments)?yf:_f)(this,e)}}function tS(e,n){var o=gf(e+"");if(arguments.length<2){for(var r=Ml(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?eS:n?Jx:Qx)(o,n))}function nS(){this.textContent=""}function oS(e){return function(){this.textContent=e}}function rS(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function iS(e){return arguments.length?this.each(e==null?nS:(typeof e=="function"?rS:oS)(e)):this.node().textContent}function aS(){this.innerHTML=""}function lS(e){return function(){this.innerHTML=e}}function sS(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function cS(e){return arguments.length?this.each(e==null?aS:(typeof e=="function"?sS:lS)(e)):this.node().innerHTML}function dS(){this.nextSibling&&this.parentNode.appendChild(this)}function uS(){return this.each(dS)}function fS(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function pS(){return this.each(fS)}function mS(e){var n=typeof e=="function"?e:cf(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function gS(){return null}function hS(e,n){var o=typeof e=="function"?e:cf(e),r=n==null?gS:typeof n=="function"?n:Dl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function yS(){var e=this.parentNode;e&&e.removeChild(this)}function _S(){return this.each(yS)}function bS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function wS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function kS(e){return this.select(e?wS:bS)}function CS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function ES(e){return function(n){e.call(this,n,this.__data__)}}function NS(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 xS(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 SS(e,n,o){return function(){var r=this.__on,i,a=ES(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 vS(e,n,o){var r=NS(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,d=s.length,f;c<d;++c)for(i=0,f=s[c];i<a;++i)if((l=r[i]).type===f.type&&l.name===f.name)return f.value}return}for(s=n?SS:xS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function bf(e,n,o){var r=mf(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 AS(e,n){return function(){return bf(this,e,n)}}function IS(e,n){return function(){return bf(this,e,n.apply(this,arguments))}}function PS(e,n){return this.each((typeof n=="function"?IS:AS)(e,n))}function*TS(){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 wf=[null];function At(e,n){this._groups=e,this._parents=n}function sr(){return new At([[document.documentElement]],wf)}function OS(){return this}At.prototype=sr.prototype={constructor:At,select:rx,selectAll:sx,selectChild:fx,selectChildren:hx,filter:yx,data:Ex,enter:_x,exit:xx,join:Sx,merge:vx,selection:OS,order:Ax,sort:Ix,call:Tx,nodes:Ox,node:$x,size:Bx,empty:Vx,each:Rx,attr:jx,style:Hx,property:Zx,classed:tS,text:iS,html:cS,raise:uS,lower:pS,append:mS,insert:hS,remove:_S,clone:kS,datum:CS,on:vS,dispatch:PS,[Symbol.iterator]:TS};function Mt(e){return typeof e=="string"?new At([[document.querySelector(e)]],[document.documentElement]):new At([[e]],wf)}function $S(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Ht(e,n){if(e=$S(e),n===void 0&&(n=e.currentTarget),n){var o=n.ownerSVGElement||n;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[e.clientX-i.left-n.clientLeft,e.clientY-i.top-n.clientTop]}}return[e.pageX,e.pageY]}const BS={passive:!1},cr={capture:!0,passive:!1};function Ll(e){e.stopImmediatePropagation()}function vo(e){e.preventDefault(),e.stopImmediatePropagation()}function kf(e){var n=e.document.documentElement,o=Mt(e).on("dragstart.drag",vo,cr);"onselectstart"in n?o.on("selectstart.drag",vo,cr):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function Cf(e,n){var o=e.document.documentElement,r=Mt(e).on("dragstart.drag",null);n&&(r.on("click.drag",vo,cr),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 ki=e=>()=>e;function Fl(e,{sourceEvent:n,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:d,dispatch:f}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:o,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:f}})}Fl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function VS(e){return!e.ctrlKey&&!e.button}function RS(){return this.parentNode}function DS(e,n){return n??{x:e.x,y:e.y}}function MS(){return navigator.maxTouchPoints||"ontouchstart"in this}function LS(){var e=VS,n=RS,o=DS,r=MS,i={},a=yi("start","drag","end"),l=0,s,c,d,f,u=0;function p(C){C.on("mousedown.drag",m).filter(r).on("touchstart.drag",h).on("touchmove.drag",y,BS).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(C,N){if(!(f||!e.call(this,C,N))){var k=b(this,n.call(this,C,N),C,N,"mouse");k&&(Mt(C.view).on("mousemove.drag",g,cr).on("mouseup.drag",_,cr),kf(C.view),Ll(C),d=!1,s=C.clientX,c=C.clientY,k("start",C))}}function g(C){if(vo(C),!d){var N=C.clientX-s,k=C.clientY-c;d=N*N+k*k>u}i.mouse("drag",C)}function _(C){Mt(C.view).on("mousemove.drag mouseup.drag",null),Cf(C.view,d),vo(C),i.mouse("end",C)}function h(C,N){if(e.call(this,C,N)){var k=C.changedTouches,S=n.call(this,C,N),A=k.length,R,O;for(R=0;R<A;++R)(O=b(this,S,C,N,k[R].identifier,k[R]))&&(Ll(C),O("start",C,k[R]))}}function y(C){var N=C.changedTouches,k=N.length,S,A;for(S=0;S<k;++S)(A=i[N[S].identifier])&&(vo(C),A("drag",C,N[S]))}function w(C){var N=C.changedTouches,k=N.length,S,A;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),S=0;S<k;++S)(A=i[N[S].identifier])&&(Ll(C),A("end",C,N[S]))}function b(C,N,k,S,A,R){var O=a.copy(),T=Ht(R||k,N),E,L,x;if((x=o.call(C,new Fl("beforestart",{sourceEvent:k,target:p,identifier:A,active:l,x:T[0],y:T[1],dx:0,dy:0,dispatch:O}),S))!=null)return E=x.x-T[0]||0,L=x.y-T[1]||0,function B(P,q,G){var K=T,F;switch(P){case"start":i[A]=B,F=l++;break;case"end":delete i[A],--l;case"drag":T=Ht(G||q,N),F=l;break}O.call(P,C,new Fl(P,{sourceEvent:q,subject:x,target:p,identifier:A,active:F,x:T[0]+E,y:T[1]+L,dx:T[0]-K[0],dy:T[1]-K[1],dispatch:O}),S)}}return p.filter=function(C){return arguments.length?(e=typeof C=="function"?C:ki(!!C),p):e},p.container=function(C){return arguments.length?(n=typeof C=="function"?C:ki(C),p):n},p.subject=function(C){return arguments.length?(o=typeof C=="function"?C:ki(C),p):o},p.touchable=function(C){return arguments.length?(r=typeof C=="function"?C:ki(!!C),p):r},p.on=function(){var C=a.on.apply(a,arguments);return C===a?p:C},p.clickDistance=function(C){return arguments.length?(u=(C=+C)*C,p):Math.sqrt(u)},p}function Ul(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function Ef(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function dr(){}var ur=.7,Ci=1/ur,Ao="\\s*([+-]?\\d+)\\s*",fr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Yt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",FS=/^#([0-9a-f]{3,8})$/,US=new RegExp(`^rgb\\(${Ao},${Ao},${Ao}\\)$`),KS=new RegExp(`^rgb\\(${Yt},${Yt},${Yt}\\)$`),jS=new RegExp(`^rgba\\(${Ao},${Ao},${Ao},${fr}\\)$`),GS=new RegExp(`^rgba\\(${Yt},${Yt},${Yt},${fr}\\)$`),qS=new RegExp(`^hsl\\(${fr},${Yt},${Yt}\\)$`),zS=new RegExp(`^hsla\\(${fr},${Yt},${Yt},${fr}\\)$`),Nf={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};Ul(dr,Zn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:xf,formatHex:xf,formatHex8:HS,formatHsl:YS,formatRgb:Sf,toString:Sf});function xf(){return this.rgb().formatHex()}function HS(){return this.rgb().formatHex8()}function YS(){return Tf(this).formatHsl()}function Sf(){return this.rgb().formatRgb()}function Zn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=FS.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?vf(n):o===3?new St(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?Ei(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?Ei(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=US.exec(e))?new St(n[1],n[2],n[3],1):(n=KS.exec(e))?new St(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=jS.exec(e))?Ei(n[1],n[2],n[3],n[4]):(n=GS.exec(e))?Ei(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=qS.exec(e))?Pf(n[1],n[2]/100,n[3]/100,1):(n=zS.exec(e))?Pf(n[1],n[2]/100,n[3]/100,n[4]):Nf.hasOwnProperty(e)?vf(Nf[e]):e==="transparent"?new St(NaN,NaN,NaN,0):null}function vf(e){return new St(e>>16&255,e>>8&255,e&255,1)}function Ei(e,n,o,r){return r<=0&&(e=n=o=NaN),new St(e,n,o,r)}function WS(e){return e instanceof dr||(e=Zn(e)),e?(e=e.rgb(),new St(e.r,e.g,e.b,e.opacity)):new St}function Kl(e,n,o,r){return arguments.length===1?WS(e):new St(e,n,o,r??1)}function St(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}Ul(St,Kl,Ef(dr,{brighter(e){return e=e==null?Ci:Math.pow(Ci,e),new St(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?ur:Math.pow(ur,e),new St(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new St(Jn(this.r),Jn(this.g),Jn(this.b),Ni(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:Af,formatHex:Af,formatHex8:XS,formatRgb:If,toString:If}));function Af(){return`#${Qn(this.r)}${Qn(this.g)}${Qn(this.b)}`}function XS(){return`#${Qn(this.r)}${Qn(this.g)}${Qn(this.b)}${Qn((isNaN(this.opacity)?1:this.opacity)*255)}`}function If(){const e=Ni(this.opacity);return`${e===1?"rgb(":"rgba("}${Jn(this.r)}, ${Jn(this.g)}, ${Jn(this.b)}${e===1?")":`, ${e})`}`}function Ni(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Jn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Qn(e){return e=Jn(e),(e<16?"0":"")+e.toString(16)}function Pf(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Lt(e,n,o,r)}function Tf(e){if(e instanceof Lt)return new Lt(e.h,e.s,e.l,e.opacity);if(e instanceof dr||(e=Zn(e)),!e)return new Lt;if(e instanceof Lt)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 Lt(l,s,c,e.opacity)}function ZS(e,n,o,r){return arguments.length===1?Tf(e):new Lt(e,n,o,r??1)}function Lt(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Ul(Lt,ZS,Ef(dr,{brighter(e){return e=e==null?Ci:Math.pow(Ci,e),new Lt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?ur:Math.pow(ur,e),new Lt(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 St(jl(e>=240?e-240:e+120,i,r),jl(e,i,r),jl(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Lt(Of(this.h),xi(this.s),xi(this.l),Ni(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=Ni(this.opacity);return`${e===1?"hsl(":"hsla("}${Of(this.h)}, ${xi(this.s)*100}%, ${xi(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Of(e){return e=(e||0)%360,e<0?e+360:e}function xi(e){return Math.max(0,Math.min(1,e||0))}function jl(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 Gl=e=>()=>e;function JS(e,n){return function(o){return e+o*n}}function QS(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 ev(e){return(e=+e)==1?$f:function(n,o){return o-n?QS(n,o,e):Gl(isNaN(n)?o:n)}}function $f(e,n){var o=n-e;return o?JS(e,o):Gl(isNaN(e)?n:e)}const Si=function e(n){var o=ev(n);function r(i,a){var l=o((i=Kl(i)).r,(a=Kl(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=$f(i.opacity,a.opacity);return function(f){return i.r=l(f),i.g=s(f),i.b=c(f),i.opacity=d(f),i+""}}return r.gamma=e,r}(1);function tv(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 nv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function ov(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]=pr(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 rv(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Wt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function 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]=pr(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var ql=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,zl=new RegExp(ql.source,"g");function av(e){return function(){return e}}function lv(e){return function(n){return e(n)+""}}function Bf(e,n){var o=ql.lastIndex=zl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=ql.exec(e))&&(i=zl.exec(n));)(a=i.index)>o&&(a=n.slice(o,a),s[l]?s[l]+=a:s[++l]=a),(r=r[0])===(i=i[0])?s[l]?s[l]+=i:s[++l]=i:(s[++l]=null,c.push({i:l,x:Wt(r,i)})),o=zl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?lv(c[0].x):av(n):(n=c.length,function(d){for(var f=0,u;f<n;++f)s[(u=c[f]).i]=u.x(d);return s.join("")})}function pr(e,n){var o=typeof n,r;return n==null||o==="boolean"?Gl(n):(o==="number"?Wt:o==="string"?(r=Zn(n))?(n=r,Si):Bf:n instanceof Zn?Si:n instanceof Date?rv:nv(n)?tv:Array.isArray(n)?ov:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?iv:Wt)(e,n)}var Vf=180/Math.PI,Hl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Rf(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)*Vf,skewX:Math.atan(c)*Vf,scaleX:l,scaleY:s}}var vi;function sv(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Hl:Rf(n.a,n.b,n.c,n.d,n.e,n.f)}function cv(e){return e==null||(vi||(vi=document.createElementNS("http://www.w3.org/2000/svg","g")),vi.setAttribute("transform",e),!(e=vi.transform.baseVal.consolidate()))?Hl:(e=e.matrix,Rf(e.a,e.b,e.c,e.d,e.e,e.f))}function Df(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,g){if(d!==u||f!==p){var _=m.push("translate(",null,n,null,o);g.push({i:_-4,x:Wt(d,u)},{i:_-2,x:Wt(f,p)})}else(u||p)&&m.push("translate("+u+n+p+o)}function l(d,f,u,p){d!==f?(d-f>180?f+=360:f-d>180&&(d+=360),p.push({i:u.push(i(u)+"rotate(",null,r)-2,x:Wt(d,f)})):f&&u.push(i(u)+"rotate("+f+r)}function s(d,f,u,p){d!==f?p.push({i:u.push(i(u)+"skewX(",null,r)-2,x:Wt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,g){if(d!==u||f!==p){var _=m.push(i(m)+"scale(",null,",",null,")");g.push({i:_-4,x:Wt(d,u)},{i:_-2,x:Wt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var g=-1,_=p.length,h;++g<_;)u[(h=p[g]).i]=h.x(m);return u.join("")}}}var dv=Df(sv,"px, ","px)","deg)"),uv=Df(cv,", ",")",")"),fv=1e-12;function Mf(e){return((e=Math.exp(e))+1/e)/2}function pv(e){return((e=Math.exp(e))-1/e)/2}function mv(e){return((e=Math.exp(2*e))-1)/(e+1)}const Ai=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,g=u-c,_=m*m+g*g,h,y;if(_<fv)y=Math.log(p/d)/n,h=function(S){return[s+S*m,c+S*g,d*Math.exp(n*S*y)]};else{var w=Math.sqrt(_),b=(p*p-d*d+r*_)/(2*d*o*w),C=(p*p-d*d-r*_)/(2*p*o*w),N=Math.log(Math.sqrt(b*b+1)-b),k=Math.log(Math.sqrt(C*C+1)-C);y=(k-N)/n,h=function(S){var A=S*y,R=Mf(N),O=d/(o*w)*(R*mv(n*A+N)-pv(N));return[s+O*m,c+O*g,d*R/Mf(n*A+N)]}}return h.duration=y*1e3*n/Math.SQRT2,h}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 Io=0,mr=0,gr=0,Lf=1e3,Ii,hr,Pi=0,eo=0,Ti=0,yr=typeof performance=="object"&&performance.now?performance:Date,Ff=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Yl(){return eo||(Ff(gv),eo=yr.now()+Ti)}function gv(){eo=0}function Oi(){this._call=this._time=this._next=null}Oi.prototype=Uf.prototype={constructor:Oi,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Yl():+o)+(n==null?0:+n),!this._next&&hr!==this&&(hr?hr._next=this:Ii=this,hr=this),this._call=e,this._time=o,Wl()},stop:function(){this._call&&(this._call=null,this._time=1/0,Wl())}};function Uf(e,n,o){var r=new Oi;return r.restart(e,n,o),r}function hv(){Yl(),++Io;for(var e=Ii,n;e;)(n=eo-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Io}function Kf(){eo=(Pi=yr.now())+Ti,Io=mr=0;try{hv()}finally{Io=0,_v(),eo=0}}function yv(){var e=yr.now(),n=e-Pi;n>Lf&&(Ti-=n,Pi=e)}function _v(){for(var e,n=Ii,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:Ii=o);hr=e,Wl(r)}function Wl(e){if(!Io){mr&&(mr=clearTimeout(mr));var n=e-eo;n>24?(e<1/0&&(mr=setTimeout(Kf,e-yr.now()-Ti)),gr&&(gr=clearInterval(gr))):(gr||(Pi=yr.now(),gr=setInterval(yv,Lf)),Io=1,Ff(Kf))}}function jf(e,n,o){var r=new Oi;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var bv=yi("start","end","cancel","interrupt"),wv=[],Gf=0,qf=1,Xl=2,$i=3,zf=4,Zl=5,Bi=6;function Vi(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;kv(e,o,{name:n,index:r,group:i,on:bv,tween:wv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Gf})}function Jl(e,n){var o=Ft(e,n);if(o.state>Gf)throw new Error("too late; already scheduled");return o}function Xt(e,n){var o=Ft(e,n);if(o.state>$i)throw new Error("too late; already running");return o}function Ft(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function kv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Uf(a,0,o.time);function a(d){o.state=qf,o.timer.restart(l,o.delay,o.time),o.delay<=d&&l(d-o.delay)}function l(d){var f,u,p,m;if(o.state!==qf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===$i)return jf(l);m.state===zf?(m.state=Bi,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=Bi,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(jf(function(){o.state===$i&&(o.state=zf,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Xl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Xl){for(o.state=$i,i=new Array(p=o.tween.length),f=0,u=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++u]=m);i.length=u+1}}function s(d){for(var f=d<o.duration?o.ease.call(null,d/o.duration):(o.timer.restart(c),o.state=Zl,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Zl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Bi,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Ri(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>Xl&&r.state<Zl,r.state=Bi,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function Cv(e){return this.each(function(){Ri(this,e)})}function Ev(e,n){var o,r;return function(){var i=Xt(this,e),a=i.tween;if(a!==o){r=o=a;for(var l=0,s=r.length;l<s;++l)if(r[l].name===n){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function Nv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=Xt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===n){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function xv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Ft(this.node(),o).tween,i=0,a=r.length,l;i<a;++i)if((l=r[i]).name===e)return l.value;return null}return this.each((n==null?Ev:Nv)(o,e,n))}function Ql(e,n,o){var r=e._id;return e.each(function(){var i=Xt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return Ft(i,r).value[n]}}function Hf(e,n){var o;return(typeof n=="number"?Wt:n instanceof Zn?Si:(o=Zn(n))?(n=o,Si):Bf)(e,n)}function Sv(e){return function(){this.removeAttribute(e)}}function vv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Av(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 Iv(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 Pv(e,n,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttribute(e):(l=this.getAttribute(e),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s)))}}function Tv(e,n,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s)))}}function Ov(e,n){var o=bi(e),r=o==="transform"?uv:Hf;return this.attrTween(e,typeof n=="function"?(o.local?Tv:Pv)(o,r,Ql(this,"attr."+e,n)):n==null?(o.local?vv:Sv)(o):(o.local?Iv:Av)(o,r,n))}function $v(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function Bv(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function Vv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&Bv(e,a)),o}return i._value=n,i}function Rv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&$v(e,a)),o}return i._value=n,i}function Dv(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=bi(e);return this.tween(o,(r.local?Vv:Rv)(r,n))}function Mv(e,n){return function(){Jl(this,e).delay=+n.apply(this,arguments)}}function Lv(e,n){return n=+n,function(){Jl(this,e).delay=n}}function Fv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Mv:Lv)(n,e)):Ft(this.node(),n).delay}function Uv(e,n){return function(){Xt(this,e).duration=+n.apply(this,arguments)}}function Kv(e,n){return n=+n,function(){Xt(this,e).duration=n}}function jv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Uv:Kv)(n,e)):Ft(this.node(),n).duration}function Gv(e,n){if(typeof n!="function")throw new Error;return function(){Xt(this,e).ease=n}}function qv(e){var n=this._id;return arguments.length?this.each(Gv(n,e)):Ft(this.node(),n).ease}function zv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;Xt(this,e).ease=o}}function Hv(e){if(typeof e!="function")throw new Error;return this.each(zv(this._id,e))}function Yv(e){typeof e!="function"&&(e=uf(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new dn(r,this._parents,this._name,this._id)}function Wv(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,o=e._groups,r=n.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=n[s],d=o[s],f=c.length,u=l[s]=new Array(f),p,m=0;m<f;++m)(p=c[m]||d[m])&&(u[m]=p);for(;s<r;++s)l[s]=n[s];return new dn(l,this._parents,this._name,this._id)}function Xv(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 Zv(e,n,o){var r,i,a=Xv(n)?Jl:Xt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Jv(e,n){var o=this._id;return arguments.length<2?Ft(this.node(),o).on.on(e):this.each(Zv(o,e,n))}function Qv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function eA(){return this.on("end.remove",Qv(this._id))}function tA(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Dl(e));for(var r=this._groups,i=r.length,a=new Array(i),l=0;l<i;++l)for(var s=r[l],c=s.length,d=a[l]=new Array(c),f,u,p=0;p<c;++p)(f=s[p])&&(u=e.call(f,f.__data__,p,s))&&("__data__"in f&&(u.__data__=f.__data__),d[p]=u,Vi(d[p],n,o,p,d,Ft(f,o)));return new dn(a,this._parents,n,o)}function nA(e){var n=this._name,o=this._id;typeof e!="function"&&(e=df(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,g=Ft(f,o),_=0,h=p.length;_<h;++_)(m=p[_])&&Vi(m,n,o,_,p,g);a.push(p),l.push(f)}return new dn(a,l,n,o)}var oA=sr.prototype.constructor;function rA(){return new oA(this._groups,this._parents)}function iA(e,n){var o,r,i;return function(){var a=So(this,e),l=(this.style.removeProperty(e),So(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Yf(e){return function(){this.style.removeProperty(e)}}function aA(e,n,o){var r,i=o+"",a;return function(){var l=So(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function lA(e,n,o){var r,i,a;return function(){var l=So(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),So(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function sA(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=Xt(this,e),d=c.on,f=c.value[a]==null?s||(s=Yf(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function cA(e,n,o){var r=(e+="")=="transform"?dv:Hf;return n==null?this.styleTween(e,iA(e,r)).on("end.style."+e,Yf(e)):typeof n=="function"?this.styleTween(e,lA(e,r,Ql(this,"style."+e,n))).each(sA(this._id,e)):this.styleTween(e,aA(e,r,n),o).on("end.style."+e,null)}function dA(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function uA(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&dA(e,l,o)),r}return a._value=n,a}function fA(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,uA(e,n,o??""))}function pA(e){return function(){this.textContent=e}}function mA(e){return function(){var n=e(this);this.textContent=n??""}}function gA(e){return this.tween("text",typeof e=="function"?mA(Ql(this,"text",e)):pA(e==null?"":e+""))}function hA(e){return function(n){this.textContent=e.call(this,n)}}function yA(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&hA(i)),n}return r._value=e,r}function _A(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,yA(e))}function bA(){for(var e=this._name,n=this._id,o=Wf(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)if(c=l[d]){var f=Ft(c,n);Vi(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new dn(r,this._parents,e,o)}function wA(){var e,n,o=this,r=o._id,i=o.size();return new Promise(function(a,l){var s={value:l},c={value:function(){--i===0&&a()}};o.each(function(){var d=Xt(this,r),f=d.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),d.on=n}),i===0&&a()})}var kA=0;function dn(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Wf(){return++kA}var un=sr.prototype;dn.prototype={constructor:dn,select:tA,selectAll:nA,selectChild:un.selectChild,selectChildren:un.selectChildren,filter:Yv,merge:Wv,selection:rA,transition:bA,call:un.call,nodes:un.nodes,node:un.node,size:un.size,empty:un.empty,each:un.each,on:Jv,attr:Ov,attrTween:Dv,style:cA,styleTween:fA,text:gA,textTween:_A,remove:eA,tween:xv,delay:Fv,duration:jv,ease:qv,easeVarying:Hv,end:wA,[Symbol.iterator]:un[Symbol.iterator]};function CA(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var EA={time:null,delay:0,duration:250,ease:CA};function NA(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 xA(e){var n,o;e instanceof dn?(n=e._id,e=e._name):(n=Wf(),(o=EA).time=Yl(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&Vi(c,e,n,d,l,o||NA(c,n));return new dn(r,this._parents,e,n)}sr.prototype.interrupt=Cv,sr.prototype.transition=xA;const Di=e=>()=>e;function SA(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 fn(e,n,o){this.k=e,this.x=n,this.y=o}fn.prototype={constructor:fn,scale:function(e){return e===1?this:new fn(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new fn(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 Po=new fn(1,0,0);fn.prototype;function es(e){e.stopImmediatePropagation()}function _r(e){e.preventDefault(),e.stopImmediatePropagation()}function vA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function AA(){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 Xf(){return this.__zoom||Po}function IA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function PA(){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 OA(){var e=vA,n=AA,o=TA,r=IA,i=PA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Ai,d=yi("start","zoom","end"),f,u,p,m=500,g=150,_=0,h=10;function y(x){x.property("__zoom",Xf).on("wheel.zoom",A,{passive:!1}).on("mousedown.zoom",R).on("dblclick.zoom",O).filter(i).on("touchstart.zoom",T).on("touchmove.zoom",E).on("touchend.zoom touchcancel.zoom",L).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}y.transform=function(x,B,P,q){var G=x.selection?x.selection():x;G.property("__zoom",Xf),x!==G?N(x,B,P,q):G.interrupt().each(function(){k(this,arguments).event(q).start().zoom(null,typeof B=="function"?B.apply(this,arguments):B).end()})},y.scaleBy=function(x,B,P,q){y.scaleTo(x,function(){var G=this.__zoom.k,K=typeof B=="function"?B.apply(this,arguments):B;return G*K},P,q)},y.scaleTo=function(x,B,P,q){y.transform(x,function(){var G=n.apply(this,arguments),K=this.__zoom,F=P==null?C(G):typeof P=="function"?P.apply(this,arguments):P,I=K.invert(F),j=typeof B=="function"?B.apply(this,arguments):B;return o(b(w(K,j),F,I),G,l)},P,q)},y.translateBy=function(x,B,P,q){y.transform(x,function(){return o(this.__zoom.translate(typeof B=="function"?B.apply(this,arguments):B,typeof P=="function"?P.apply(this,arguments):P),n.apply(this,arguments),l)},null,q)},y.translateTo=function(x,B,P,q,G){y.transform(x,function(){var K=n.apply(this,arguments),F=this.__zoom,I=q==null?C(K):typeof q=="function"?q.apply(this,arguments):q;return o(Po.translate(I[0],I[1]).scale(F.k).translate(typeof B=="function"?-B.apply(this,arguments):-B,typeof P=="function"?-P.apply(this,arguments):-P),K,l)},q,G)};function w(x,B){return B=Math.max(a[0],Math.min(a[1],B)),B===x.k?x:new fn(B,x.x,x.y)}function b(x,B,P){var q=B[0]-P[0]*x.k,G=B[1]-P[1]*x.k;return q===x.x&&G===x.y?x:new fn(x.k,q,G)}function C(x){return[(+x[0][0]+ +x[1][0])/2,(+x[0][1]+ +x[1][1])/2]}function N(x,B,P,q){x.on("start.zoom",function(){k(this,arguments).event(q).start()}).on("interrupt.zoom end.zoom",function(){k(this,arguments).event(q).end()}).tween("zoom",function(){var G=this,K=arguments,F=k(G,K).event(q),I=n.apply(G,K),j=P==null?C(I):typeof P=="function"?P.apply(G,K):P,z=Math.max(I[1][0]-I[0][0],I[1][1]-I[0][1]),ae=G.__zoom,U=typeof B=="function"?B.apply(G,K):B,H=c(ae.invert(j).concat(z/ae.k),U.invert(j).concat(z/U.k));return function(ee){if(ee===1)ee=U;else{var _e=H(ee),be=z/_e[2];ee=new fn(be,j[0]-_e[0]*be,j[1]-_e[1]*be)}F.zoom(null,ee)}})}function k(x,B,P){return!P&&x.__zooming||new S(x,B)}function S(x,B){this.that=x,this.args=B,this.active=0,this.sourceEvent=null,this.extent=n.apply(x,B),this.taps=0}S.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,B){return this.mouse&&x!=="mouse"&&(this.mouse[1]=B.invert(this.mouse[0])),this.touch0&&x!=="touch"&&(this.touch0[1]=B.invert(this.touch0[0])),this.touch1&&x!=="touch"&&(this.touch1[1]=B.invert(this.touch1[0])),this.that.__zoom=B,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(x){var B=Mt(this.that).datum();d.call(x,this.that,new SA(x,{sourceEvent:this.sourceEvent,target:y,transform:this.that.__zoom,dispatch:d}),B)}};function A(x,...B){if(!e.apply(this,arguments))return;var P=k(this,B).event(x),q=this.__zoom,G=Math.max(a[0],Math.min(a[1],q.k*Math.pow(2,r.apply(this,arguments)))),K=Ht(x);if(P.wheel)(P.mouse[0][0]!==K[0]||P.mouse[0][1]!==K[1])&&(P.mouse[1]=q.invert(P.mouse[0]=K)),clearTimeout(P.wheel);else{if(q.k===G)return;P.mouse=[K,q.invert(K)],Ri(this),P.start()}_r(x),P.wheel=setTimeout(F,g),P.zoom("mouse",o(b(w(q,G),P.mouse[0],P.mouse[1]),P.extent,l));function F(){P.wheel=null,P.end()}}function R(x,...B){if(p||!e.apply(this,arguments))return;var P=x.currentTarget,q=k(this,B,!0).event(x),G=Mt(x.view).on("mousemove.zoom",j,!0).on("mouseup.zoom",z,!0),K=Ht(x,P),F=x.clientX,I=x.clientY;kf(x.view),es(x),q.mouse=[K,this.__zoom.invert(K)],Ri(this),q.start();function j(ae){if(_r(ae),!q.moved){var U=ae.clientX-F,H=ae.clientY-I;q.moved=U*U+H*H>_}q.event(ae).zoom("mouse",o(b(q.that.__zoom,q.mouse[0]=Ht(ae,P),q.mouse[1]),q.extent,l))}function z(ae){G.on("mousemove.zoom mouseup.zoom",null),Cf(ae.view,q.moved),_r(ae),q.event(ae).end()}}function O(x,...B){if(e.apply(this,arguments)){var P=this.__zoom,q=Ht(x.changedTouches?x.changedTouches[0]:x,this),G=P.invert(q),K=P.k*(x.shiftKey?.5:2),F=o(b(w(P,K),q,G),n.apply(this,B),l);_r(x),s>0?Mt(this).transition().duration(s).call(N,F,q,x):Mt(this).call(y.transform,F,q,x)}}function T(x,...B){if(e.apply(this,arguments)){var P=x.touches,q=P.length,G=k(this,B,x.changedTouches.length===q).event(x),K,F,I,j;for(es(x),F=0;F<q;++F)I=P[F],j=Ht(I,this),j=[j,this.__zoom.invert(j),I.identifier],G.touch0?!G.touch1&&G.touch0[2]!==j[2]&&(G.touch1=j,G.taps=0):(G.touch0=j,K=!0,G.taps=1+!!f);f&&(f=clearTimeout(f)),K&&(G.taps<2&&(u=j[0],f=setTimeout(function(){f=null},m)),Ri(this),G.start())}}function E(x,...B){if(this.__zooming){var P=k(this,B).event(x),q=x.changedTouches,G=q.length,K,F,I,j;for(_r(x),K=0;K<G;++K)F=q[K],I=Ht(F,this),P.touch0&&P.touch0[2]===F.identifier?P.touch0[0]=I:P.touch1&&P.touch1[2]===F.identifier&&(P.touch1[0]=I);if(F=P.that.__zoom,P.touch1){var z=P.touch0[0],ae=P.touch0[1],U=P.touch1[0],H=P.touch1[1],ee=(ee=U[0]-z[0])*ee+(ee=U[1]-z[1])*ee,_e=(_e=H[0]-ae[0])*_e+(_e=H[1]-ae[1])*_e;F=w(F,Math.sqrt(ee/_e)),I=[(z[0]+U[0])/2,(z[1]+U[1])/2],j=[(ae[0]+H[0])/2,(ae[1]+H[1])/2]}else if(P.touch0)I=P.touch0[0],j=P.touch0[1];else return;P.zoom("touch",o(b(F,I,j),P.extent,l))}}function L(x,...B){if(this.__zooming){var P=k(this,B).event(x),q=x.changedTouches,G=q.length,K,F;for(es(x),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),K=0;K<G;++K)F=q[K],P.touch0&&P.touch0[2]===F.identifier?delete P.touch0:P.touch1&&P.touch1[2]===F.identifier&&delete P.touch1;if(P.touch1&&!P.touch0&&(P.touch0=P.touch1,delete P.touch1),P.touch0)P.touch0[1]=this.__zoom.invert(P.touch0[0]);else if(P.end(),P.taps===2&&(F=Ht(F,this),Math.hypot(u[0]-F[0],u[1]-F[1])<h)){var I=Mt(this).on("dblclick.zoom");I&&I.apply(this,arguments)}}}return y.wheelDelta=function(x){return arguments.length?(r=typeof x=="function"?x:Di(+x),y):r},y.filter=function(x){return arguments.length?(e=typeof x=="function"?x:Di(!!x),y):e},y.touchable=function(x){return arguments.length?(i=typeof x=="function"?x:Di(!!x),y):i},y.extent=function(x){return arguments.length?(n=typeof x=="function"?x:Di([[+x[0][0],+x[0][1]],[+x[1][0],+x[1][1]]]),y):n},y.scaleExtent=function(x){return arguments.length?(a[0]=+x[0],a[1]=+x[1],y):[a[0],a[1]]},y.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],y):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},y.constrain=function(x){return arguments.length?(o=x,y):o},y.duration=function(x){return arguments.length?(s=+x,y):s},y.interpolate=function(x){return arguments.length?(c=x,y):c},y.on=function(){var x=d.on.apply(d,arguments);return x===d?y:x},y.clickDistance=function(x){return arguments.length?(_=(x=+x)*x,y):Math.sqrt(_)},y.tapDistance=function(x){return arguments.length?(h=+x,y):h},y}var xe=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(xe||{}),ts=(e=>(e.Partial="partial",e.Full="full",e))(ts||{}),to=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(to||{}),xn=(e=>(e.Strict="strict",e.Loose="loose",e))(xn||{}),br=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(br||{}),wr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(wr||{}),Zf=(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))(Zf||{});const $A=["INPUT","SELECT","TEXTAREA"],BA=typeof document<"u"?document:null;function ns(e){var n,o;const r=((o=(n=e.composedPath)==null?void 0:n.call(e))==null?void 0:o[0])||e.target,i=typeof(r==null?void 0:r.hasAttribute)=="function"?r.hasAttribute("contenteditable"):!1,a=typeof(r==null?void 0:r.closest)=="function"?r.closest(".nokey"):null;return $A.includes(r==null?void 0:r.nodeName)||i||!!a}function VA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Jf(e,n,o,r){const i=n.replace("+",`
|
|
208
|
+
`};function or(e){return typeof e=="object"&&!Array.isArray(e)&&e!==null}const b1=[{name:"decK",extract(e){try{const n=Cn.load(e);return or(n)&&Array.isArray(n.plugins)&&n.plugins.find(r=>or(r)&&r.name==="datakit")||null}catch{return null}}},{name:"KIC",extract(e){let n=e;const o=e.match(/echo\s+(?:"([\s\S]*?)"|'([\s\S]*?)')\s*\|\s*kubectl/);o&&(n=o[1]||o[2]);try{const r=Cn.load(n);if(!or(r))return null;const i=or(r.metadata)?r.metadata:{},a=r.plugin||i.name;return(r.kind==="KongPlugin"||r.kind==="KongClusterPlugin")&&a==="datakit"&&r||null}catch{return null}}},{name:"cURL",extract(e){if(!e.trim().startsWith("curl"))return null;const n=e.match(/(?:--data|-d)\s+(?:'((?:[^'\\]|\\[\s\S])*)'|"((?:[^"\\]|\\[\s\S])*)")/);if(!n)return null;let o=n[1]||n[2];n[2]&&(o=o.replace(/\\(["\\])/g,"$1"));try{const r=JSON.parse(o);return or(r)&&r.name==="datakit"&&r||null}catch{return null}}}],w1={class:"dk-code-editor"},k1={class:"examples-content"},kl="YAML Syntax",Ku=ve(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const{t:r}=Xe.createI18n("en-us",Qe),{formData:i,setValue:a}=Ue(),l=t.inject(Le.FORMS_CONFIG),s=o,{getMessageFromError:c}=he.useErrors(),d=t.shallowRef(null);function f(C){return Cn.dump(t.toRaw(C),{schema:wo,noArrayIndent:!0})}function u(){return l.app==="kongManager"&&i.config?f(i.config):l.app==="konnect"?f(Gn(i,["__ui_data"])):""}const p=t.shallowRef(u()),m={scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep",editContext:!1};function g(C){const S=C.getModel();S&&(d.value=C,C.onDidChangeModelContent(()=>{try{const A=Cn.load(C.getValue()||"",{schema:wo,json:!0});ha.editor.setModelMarkers(S,kl,[]),l.app==="konnect"?a(A):i.config=A,s("change",A)}catch(A){const{message:R,mark:O}=A,{line:T,column:N}=O||{line:0,column:0},L=R.split(`
|
|
209
|
+
`)[0],x=[{startLineNumber:T+1,startColumn:N+1,endLineNumber:T+1,endColumn:N+2,message:L,severity:ha.MarkerSeverity.Error,source:kl}];ha.editor.setModelMarkers(S,kl,x),s("error",L)}}),l.app==="konnect"&&C.onDidPaste(A=>{const R=C.getModel();if(!R)return;const O=R.getValueInRange(A.range);for(const T of b1){const N=T.extract(O);if(N){h.value=N,_.value=T.name,y.value=!0;return}}}),E())}const y=t.shallowRef(!1),h=t.shallowRef(null),_=t.shallowRef("");function w(){y.value=!1,h.value=null,_.value=""}function b(){h.value&&(p.value=f(h.value),w())}function k(C){const S=ui[C];if(l.app==="kongManager"){p.value=S,E();return}try{const A=Cn.load(p.value,{schema:wo,json:!0}),R=Cn.load(S,{schema:wo,json:!0});if(jn(A.config,R))return;const O=Gn({...i,config:{...R}},["__ui_data"]);p.value=f(O)}catch(A){s("error",c(A))}E()}function E(){const C=d.value,S=C==null?void 0:C.getModel();!C||!S||(C.setPosition(S.getFullModelRange().getEndPosition()),C.focus())}return n({setExampleCode:k}),(C,S)=>(t.openBlock(),t.createElementBlock("div",w1,[t.createVNode(t.unref($e.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(ke.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",k1,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(ui),(A,R)=>(t.openBlock(),t.createBlock(t.unref($e.KButton),{key:R,appearance:"secondary",size:"small",onClick:O=>k(R)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${R}`)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),t.createVNode(t.unref(Dg.MonacoEditor),{ref:"editor",modelValue:p.value,"onUpdate:modelValue":S[0]||(S[0]=A=>p.value=A),class:"editor",language:"yaml",options:m,theme:"light",onReady:g},null,8,["modelValue"]),t.createVNode(t.unref($e.KModal),{"action-button-text":t.unref(r)("plugins.free-form.datakit.detected_config_format_confirm"),title:t.unref(r)("plugins.free-form.datakit.detected_config_format_title"),visible:y.value,onCancel:w,onProceed:b},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.detected_config_format",{format:_.value})),1)]),_:1},8,["action-button-text","title","visible"])]))}}),[["__scopeId","data-v-a1f60b0e"]]),ju=["request","service_request","service_response","response","vault"],ko=ju,Gu=["call","jq","exit","property","static","branch","cache","xml_to_json","json_to_xml"],qu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],C1="#ecfcff",E1="#f1f0ff",N1="#52596e",Cl="#e0e4ea",x1="#007d60",S1="#fffce0",v1="#6c7489",A1="#0044f4",I1="#5f9aff",rr="#000933",El="#d60027",P1="#ffe5e5",T1="#00abd2",O1="#d60067",zu="#6f28ff",Hu="#afb7c5",Co="#6c7489",$1="#0044f4",B1="#eefaff",V1="#007d60",R1="#ecfffb",D1="#995c00",M1="#306fff",fi="12px",pi="16px",ir="20px",L1="2px",Yu="8px",F1="32px",gt={call:{icon:ke.NetworkIcon,colors:{foreground:D1,background:S1}},jq:{icon:ke.CodeblockIcon,colors:{foreground:zu,background:E1}},exit:{icon:ke.GatewayIcon,colors:{foreground:El,background:P1}},property:{icon:ke.StackIcon,colors:{foreground:V1,background:R1}},static:{icon:ke.DeployIcon,colors:{foreground:$1,background:B1}},branch:{icon:ke.ArrowSplitIcon,colors:{foreground:T1,background:C1}},cache:{icon:ke.CachedIcon,colors:{foreground:O1,background:"#fff0f7"}},xml_to_json:{icon:ke.DataObjectIcon,colors:{foreground:rr,background:Cl}},json_to_xml:{icon:ke.CodeIcon,colors:{foreground:rr,background:Cl}},vault:{icon:ke.KeyIcon},request:{icon:ke.CloudIcon},service_request:{icon:ke.CloudIcon},service_response:{icon:ke.CloudIcon},response:{icon:ke.CloudIcon}},{t:Nl}=Xe.createI18n("en-us",Qe);function xt(e){return Nl(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function ln(e){return Nl(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function U1(e){return Nl(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const xl={call:{type:"call",summary:ln("call"),description:xt("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...gt.call},jq:{type:"jq",summary:ln("jq"),description:xt("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...gt.jq},exit:{type:"exit",summary:ln("exit"),description:xt("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...gt.exit},property:{type:"property",summary:ln("property"),description:xt("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...gt.property},static:{type:"static",summary:ln("static"),description:xt("static"),io:{output:{fields:[],configurable:!0}},...gt.static},branch:{type:"branch",summary:ln("branch"),description:xt("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...gt.branch},cache:{type:"cache",summary:ln("cache"),description:xt("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...gt.cache},xml_to_json:{type:"xml_to_json",summary:ln("xml_to_json"),description:xt("xml_to_json"),io:{input:{fields:[]},output:{fields:[]}},...gt.xml_to_json},json_to_xml:{type:"json_to_xml",summary:ln("json_to_xml"),description:xt("json_to_xml"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...gt.json_to_xml}},mi={request:{type:"request",description:xt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...gt.request},service_request:{type:"service_request",description:xt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...gt.service_request},service_response:{type:"service_response",description:xt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...gt.service_response},response:{type:"response",description:xt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...gt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...gt.vault,hidden:!0}},Sl=Object.keys(mi),vl=e=>Sl.includes(e),K1=e=>[...Sl,...Gu].includes(e),St=e=>Sl.includes(e),Al=e=>St(e.type),Il=e=>!!(e!=null&&e.startsWith("node:")),ar=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function sn(e){return Kn(e)}function Pl(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 Eo(e){return`${e}:${Jr()}`}function gi(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 No(e){return St(e)?mi[e]:xl[e]}function Xu(e){var i,a,l,s;const n=No(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 lr(e){var o,r,i;return((i=(r=(o=No(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function Zu(e){return(e??[]).map(n=>({id:Eo("field"),name:n}))}function En(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function Nn(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function Tl(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Ju(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function j1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=mi[e];return{name:e,phase:n,position:{x:0,y:0},fields:Xu(o.type),expanded:{},hidden:o.hidden}}function Qu(e,n){const r=(typeof e=="string"&&K1(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function Ol(e,n){return`${e}:${n}`}function G1(e){const n=e.lastIndexOf(":");if(n===-1)throw new Error(`Invalid group ID format: ${e}`);const o=e.slice(0,n),r=e.slice(n+1);return{nodeId:o,branch:r}}function hi(e,n){return`${e}:${n}`}function ef(e,n,o,r,i){return{id:Ol(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 q1(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function z1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function tf(e,n){return[...q1(e),...z1(n)]}function yi(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 $l(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 Bl(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&Il(i)):[]}function H1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const T=new Map;for(const N of e.value.groups)for(const L of N.memberIds)T.set(L,{ownerId:N.ownerId,branch:N.branch});return T}),a=t.computed(()=>{const T=new Map;for(const N of e.value.groups)for(const L of N.memberIds)T.set(L,N);return T}),l=t.computed(()=>{const T=new Map;for(const N of e.value.groups)T.has(N.ownerId)||T.set(N.ownerId,[]),T.get(N.ownerId).push(N);return T}),s=t.computed(()=>tf(e.value.edges,e.value.groups)),c=t.computed(()=>yi(s.value));function d(T,N){return T?lr(T.type).includes(N):!1}function f(T,N){if(N===T.id)return!1;const L=o(N);return!(!L||St(L.type)||L.phase!==T.phase)}function u(T,N){const L=[],x=new Set;for(const B of N)x.has(B)||(x.add(B),f(T,B)&&L.push(B));return L}function p(T,N,L){const x=o(T);return d(x,N)?u(x,L):[]}function m(T,N,L){const x=Ol(T.id,N),B=n.value.get(x);L.length>0?B?(B.phase!==T.phase&&(B.phase=T.phase),Pl(B.memberIds,L)||(B.position=void 0,B.dimensions=void 0,B.memberIds=[...L])):e.value.groups.push(ef(T.id,N,T.phase,L)):B&&(e.value.groups=e.value.groups.filter(P=>P.id!==x))}function g(T,N,L,x={}){const B=o(T);if(!d(B,N))return!1;const P=u(B,L),q=Bl(B,N);if(Pl(q,P))return!1;const G=B.config??(B.config={});return P.length>0?G[N]=[...P]:(delete G[N],Object.keys(G).length===0&&delete B.config),m(B,N,P),(x.commit??!0)&&r.commit(x.tag),!0}function y(T,N={}){const L=e.value.groups.filter(x=>x.ownerId!==T);return L.length===e.value.groups.length?!1:(e.value.groups=L,(N.commit??!0)&&r.commit(N.tag),!0)}function h(T,N){const L=n.value.get(Ol(T,N));if(L)return[...L.memberIds];const x=o(T);return x?Bl(x,N):[]}function _(T){return i.value.get(T)}function w(T){const N=[];let L=a.value.get(T);for(;L;)N.push(L.id),L=a.value.get(L.ownerId);return N}function b(T,N){const L=w(N);if(L.length===0)return!1;const x=new Set(w(T));return x.size===0?!0:L.some(B=>!x.has(B))}function k(T,N){if(T===N)return!0;const L=new Set,x=[N];for(;x.length>0;){const B=x.pop();if(L.has(B))continue;if(L.add(B),B===T)return!0;const P=c.value.get(B);if(P)for(const q of P)L.has(q)||x.push(q)}return!1}function E(T,N,L){const x=o(T);return!(!d(x,N)||!f(x,L)||k(T,L))}function C(T,N,L,x={}){const B=o(T);if(!B||!E(T,N,L))return!1;const P=Bl(B,N);if(P.includes(L))return!1;S(L,{commit:!1});const q=[...P,L];return g(T,N,q,{commit:!1})?((x.commit??!0)&&r.commit(x.tag),!0):!1}function S(T,N={}){const L=_(T);if(!L)return!1;const x=h(L.ownerId,L.branch),B=x.filter(P=>P!==T);return B.length===x.length?!1:g(L.ownerId,L.branch,B,N)}function A(T){let N=0;const L=new Set;let x=a.value.get(T);for(;x&&!L.has(x.id);)N+=1,L.add(x.id),x=a.value.get(x.ownerId);return N}function R(T){const N=n.value.get(T);return N?A(N.ownerId):0}function O(T){return T?n.value.has(T):!1}return{memberGroupMap:a,groupsByOwner:l,findMembership:_,getMembers:h,wouldCreateCycle:k,setMembers:g,prepareMembers:p,addMember:C,removeMember:S,clear:y,getNodeDepth:A,getGroupDepth:R,isGroupId:O,isEdgeEnteringGroup:b,canAddMember:E}}function Y1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=Ye.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var k;(k=n==null?void 0:n.onHistoryChange)==null||k.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function g(){r(),u=void 0,p("undo")}function y(){i(),u=void 0,p("redo")}function h(){s(),u=void 0,p("clear")}function _(){c(),u=void 0,p("reset")}function w(){r(),f.value.shift(),u=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:g,redo:y,clear:h,reset:_,revert:w}}function W1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function X1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function Z1(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 nf(e,n){var h,_,w,b,k,E,C;const o=((h=e.config)==null?void 0:h.nodes)??[],r=((_=e.__ui_data)==null?void 0:_.nodes)??[],i=((w=e.__ui_data)==null?void 0:w.groups)??[],a=new Map(r.map(S=>[S.name,S])),l=new Map(i.map(S=>[S.name,S])),s=[],c=[],d=new Map,f=[],u=[],p=new Map,m=S=>{const A=new Set,R=[...S];for(;R.length>0;){const O=R.shift();if(!A.has(O)&&(A.add(O),vl(O)||(d.get(O).phase="request"),!!p.has(O)))for(const T of p.get(O))A.has(T)||R.push(T)}};let g=!1;for(const S of o){const A=a.get(S.name);!A&&!g&&(g=!0);const R=rf({type:S.type,configNode:S,uiNode:A,pluginData:e});s.push(R),d.set(R.name,R)}for(const S of s){const A=lr(S.type);if(!A.length)continue;const R=S.config;if(R)for(const O of A){const T=R[O];if(!Array.isArray(T)){l.has(hi(S.name,O))&&(g=!0);continue}const N=[];for(const L of T){if(typeof L!="string")continue;const x=d.get(L);x&&!St(x.type)&&N.push(x.id)}if(N.length){R[O]=N;const L=hi(S.name,O),x=l.get(L),B=x?{position:sn(x.position)}:void 0,P=ef(S.id,O,S.phase,N,B);f.push(P),!x&&!g&&(g=!0)}else delete R[O],l.has(hi(S.name,O))&&(g=!0)}}for(const S of ko)if(!d.has(S)){let A=a.get(S);A||(g||(g=!0),A=j1(S));const R=rf({type:S,uiNode:A,pluginData:e});s.push(R),d.set(R.name,R)}for(const S of o)ex(S,u);for(const S of u){const A=d.get(S.source),R=d.get(S.target);if(!A||!R){A||console.warn(`[initEditorState] skip: source "${S.source}" not found`),R||console.warn(`[initEditorState] skip: target "${S.target}" not found`);continue}p.has(S.source)||p.set(S.source,new Set),p.get(S.source).add(S.target),p.has(S.target)||p.set(S.target,new Set),p.get(S.target).add(S.source),c.push({id:Eo("edge"),source:A.id,sourceField:(b=En(A,"output",S.sourceField))==null?void 0:b.id,target:R.id,targetField:(k=En(R,"input",S.targetField))==null?void 0:k.id})}m(["request","service_request"]);let y=null;return(C=(E=e.config)==null?void 0:E.resources)!=null&&C.cache&&(y={...e.config.resources.cache},e.partials&&(y.partial_id=e.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:g?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,...y?{cacheConfig:y}:{}}}function of(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Xu(n),c=No(n);return{id:Eo("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Zu((a==null?void 0:a.input)??s.input),output:Zu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?sn(l):{}}}function J1(e){return St(e)?e==="request"||e==="service_request"?"request":"response":"request"}function rf({type:e,configNode:n,uiNode:o,pluginData:r}){return of({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??J1(e),position:o==null?void 0:o.position,fields:tx({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:nx({type:e,configNode:n,pluginData:r})})}function Q1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return sn(s)}function ex(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=gi(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}=gi(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=gi(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}=gi(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function tx({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=No(e),a=i==null?void 0:i.io;if(!a)return;const l={};if((s=a.input)!=null&&s.configurable&&(n?l.input=((c=n.fields)==null?void 0:c.input)??[]:o!=null&&o.inputs&&(l.input=Object.keys(o.inputs))),(d=a.output)!=null&&d.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const u=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>u.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>u.add(p)),u.size&&(l.output=Array.from(u))}e==="vault"&&(l.output=X1(r))}return Object.keys(l).length?l:void 0}function nx({type:e,configNode:n,pluginData:o}){return e==="vault"?W1(o):n?Q1(n):void 0}function ox(e){const n=t.computed(()=>{const u=new Map;return e.value.nodes.forEach(p=>u.set(p.id,p)),u}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>tf(o.value,r.value));function a(u){return yi(i.value,u?{source:u.source,target:u.target}:void 0)}function l(u){const p=n.value.get(u.source),m=n.value.get(u.target);if(!p||!m)return u;const g=Ju(p,u.sourceField)&&!Tl(p,u.sourceField),y=Tl(m,u.targetField);return g&&y?{source:u.target,sourceField:u.targetField,target:u.source,targetField:u.sourceField}:u}function s(u){const p=l(u),m=[],g=n.value.get(p.source),y=n.value.get(p.target);if(g||m.push("source node not found"),y||m.push("target node not found"),!g||!y)return{ok:!1,errors:m};Tl(g,p.sourceField)||m.push("source handle is not an output field"),Ju(y,p.targetField)||m.push("target handle is not an input field"),y.name==="request"&&m.push('cannot target "request"'),g.name==="response"&&m.push('cannot source from "response"');const h=o.value.some(b=>b.target===p.target&&!b.targetField),_=o.value.some(b=>b.target===p.target&&!!b.targetField);(h&&p.targetField||_&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(b=>b.target===p.target&&b.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(b=>b.target===p.target&&!b.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const w=a({source:p.source,target:p.target});return $l(w)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const u=[];for(const p of ko)[...n.value.values()].some(m=>m.name===p)||u.push(`missing implicit node "${p}"`);for(const p of o.value){const m=n.value.get(p.source);n.value.get(p.target).name==="request"&&u.push(`edge "${p.id}" targets "request"`),m.name==="response"&&u.push(`edge "${p.id}" sources from "response"`)}return $l(a())&&u.push("graph contains cycle"),u.length?{ok:!1,errors:u}:{ok:!0}}function d(u){return s(u).ok}function f(u){return!u.source||!u.target?!1:d({source:u.source,sourceField:u.sourceHandle,target:u.target,targetField:u.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:d,isValidVueFlowConnection:f,buildAdjacency:yi}}const[af,rx]=Ye.createInjectionState(function(n,o={}){const r=t.ref(nf(n)),i=t.ref(),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=Y1(r,{capacity:200,clone:sn,onHistoryChange:$=>{var oe,le;$!=="clear"&&((le=o.onChange)==null||le.call(o,ie(),Z(),ne(),(oe=r.value.cacheConfig)==null?void 0:oe.partial_id))}}),d=t.ref(!1),f=t.ref(new Set);function u(){r.value.pendingLayout=!1,c.commit("*")}function p($=!0){r.value.pendingFitView!==$&&(r.value.pendingFitView=$,c.commit("*"))}const m=t.computed(()=>{const $={request:0,response:0};return r.value.nodes.forEach(oe=>{St(oe.type)||$[oe.phase]++}),$}),g=t.computed(()=>new Map(r.value.nodes.map($=>[$.id,$]))),y=t.computed(()=>new Map(r.value.nodes.map($=>[$.name,$]))),h=t.computed(()=>{const $=new Map,oe=new Map;for(const le of r.value.edges)$.set(le.id,le),oe.has(le.source)||oe.set(le.source,new Set),oe.get(le.source).add(le.id),oe.has(le.target)||oe.set(le.target,new Set),oe.get(le.target).add(le.id);return{edgeMapById:$,edgeIdMapByNodeId:oe}}),_=t.computed(()=>h.value.edgeMapById),w=t.computed(()=>h.value.edgeIdMapByNodeId),b=t.computed(()=>new Map(r.value.groups.map($=>[$.id,$]))),k=t.computed(()=>new Set(r.value.nodes.map($=>$.name))),E=H1({state:r,groupMapById:b,getNodeById:T,history:c}),{canonicalizeConnection:C,validateConnection:S,validateGraph:A,isValidConnection:R,isValidVueFlowConnection:O}=ox(r);function T($){return g.value.get($)}function N($){return y.value.get($)}function L($){return _.value.get($)}function x($){if(!w.value.has($))return[];const oe=[];return w.value.get($).forEach(le=>{const pe=L(le);pe&&oe.push(pe)}),oe}function B($){return x($).filter(oe=>oe.target===$)}function P($){return x($).filter(oe=>oe.source===$)}const q=t.computed(()=>i.value?T(i.value):void 0);function G($){i.value=$}function K($){a.value=$}function F($){if(St($.type))throw new Error("[createNode] implicit nodes are fixed.");return of({type:$.type,name:$.name||(St($.type)?void 0:Qu($.type,k.value)),phase:$.phase,position:$.position,fields:$.fields,config:$.config})}function I($,oe=!0){const le=F($);if(le)return r.value.nodes.push(le),oe&&c.commit(),d.value=!0,le.id}function j($,oe,le=!0){const pe=T($);if(!pe||St(pe.type))return;const ce={...sn(pe),id:Eo("node"),name:Qu(pe.name,k.value),position:oe??{x:pe.position.x+20,y:pe.position.y+20}},fe=lr(ce.type);if(fe.length&&ce.config){for(const Ee of fe)delete ce.config[Ee];Object.keys(ce.config).length===0&&delete ce.config}return r.value.nodes.push(ce),le&&c.commit(),d.value=!0,ce.id}function z($,oe=!0){if(!T($))return;r.value.edges=r.value.edges.filter(ce=>ce.source!==$&&ce.target!==$),E.clear($,{commit:!1}),E.removeMember($,{commit:!1}),r.value.nodes=r.value.nodes.filter(ce=>ce.id!==$),i.value===$&&(i.value=void 0);const pe=A();pe.ok||console.warn("[removeNode] topology invalid:",pe.errors.join("; ")),oe&&c.commit()}function ae($,oe,le=!0,pe){const ce=T($);if(!ce)return;if(vl(ce.name)){console.warn("[renameNode] implicit node name is reserved.");return}ce.name!==oe&&(ce.name=oe,le&&c.commit(pe))}function U($,oe,le=!0){const pe=T($);pe&&(pe.position={...oe},le&&c.commit())}function H($,oe,le=!0){const pe=b.value.get($);if(!pe)return;const ce=pe.position;ce&&ce.x===oe.x&&ce.y===oe.y||(pe.position={...oe},le&&c.commit())}function ee($,oe,le=!0){const pe=b.value.get($);if(!pe)return!1;const ce={...oe.position},fe={...oe.dimensions},Ee=pe.position&&pe.position.x===ce.x&&pe.position.y===ce.y,Pe=pe.dimensions&&pe.dimensions.width===fe.width&&pe.dimensions.height===fe.height;return Ee&&Pe?!1:(pe.position=ce,pe.dimensions=fe,le&&c.commit(),!0)}function _e($,oe,le,pe=!0,ce){const fe=T($);if(!fe)return;const Ee=le??!fe.expanded[oe];Ee!==!!fe.expanded[oe]&&(fe.expanded[oe]=Ee,pe&&c.commit(ce??`toggle:${$}:${oe}`))}function be($,oe,le=!0,pe){const ce=T($);ce&&(ce.config=sn(oe),le&&c.commit(pe))}function re($,oe,le,pe=!0){const ce=T($);if(!ce)return;const fe=ce.fields[oe];if(fe.some(Ee=>Ee.name===le)){console.warn(`[addField] field "${le}" already exists on ${oe}.`);return}fe.push({id:Eo("field"),name:le}),oe==="input"?ce.fields.input=fe:ce.fields.output=fe,pe&&c.commit()}function J($,oe,le,pe=!0){const ce=T($);if(!ce)return;const fe=ce.fields.input,Ee=ce.fields.output,Pe=fe.find(ge=>ge.id===oe)??Ee.find(ge=>ge.id===oe);Pe&&(Pe.name=le,pe&&c.commit())}function te($,oe,le=!0,pe=!0){const ce=T($);if(!ce)return;const fe=ce.fields.input,Ee=ce.fields.output,Pe=fe.findIndex(Ke=>Ke.id===oe);Pe>=0&&fe.splice(Pe,1);const ge=Ee.findIndex(Ke=>Ke.id===oe);ge>=0&&Ee.splice(ge,1),ce.fields.input=fe,ce.fields.output=Ee,le&&(r.value.edges=r.value.edges.filter(Ke=>Ke.sourceField!==oe&&Ke.targetField!==oe));const ye=A();ye.ok||console.warn("[removeField] topology invalid:",ye.errors.join("; ")),pe&&c.commit()}function se($,oe=!0){const le=C($),pe=S(le);if(!pe.ok){console.warn("[connectEdge] invalid connection:",pe.errors.join("; "));return}const ce={id:Eo("edge"),...le};r.value.edges.push(ce);const fe=A();if(!fe.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",fe.errors.join("; "));return}return oe&&c.commit(),ce.id}function V($,oe,le=!0){v($,!1),se(oe,!1),le&&c.commit()}function v($,oe=!0){const le=r.value.edges.findIndex(fe=>fe.id===$);if(le<0)return;const pe=r.value.edges[le];r.value.edges.splice(le,1);const ce=A();if(!ce.ok){r.value.edges.splice(le,0,pe),console.warn("[disconnectEdge] topology invalid:",ce.errors.join("; "));return}oe&&c.commit()}function M($,oe=!0){const le=B($);for(const pe of le)v(pe.id,!1);oe&&c.commit()}function D($,oe=!0){const le=P($);for(const pe of le)v(pe.id,!1);oe&&c.commit()}function ie(){var oe,le,pe,ce,fe;const $=[];for(const Ee of r.value.nodes){if(St(Ee.type))continue;let Pe;const ge={};let ye;const Ke={};for(const dt of r.value.edges.filter(de=>de.target===Ee.id)){const de=T(dt.source);if(!de)continue;const Se=(oe=Nn(de,"output",dt.sourceField))==null?void 0:oe.name,me=Se?`${de.name}.${Se}`:de.name,Ce=(le=Nn(Ee,"input",dt.targetField))==null?void 0:le.name;Ce?ge[Ce]=me:Pe===void 0&&(Pe=me)}for(const dt of r.value.edges.filter(de=>de.source===Ee.id)){const de=T(dt.target);if(!de)continue;const Se=de.type;if(!St(Se)||!((pe=mi[Se].io)!=null&&pe.input))continue;const me=(ce=Nn(de,"input",dt.targetField))==null?void 0:ce.name,Ce=me?`${de.name}.${me}`:de.name,Ie=(fe=Nn(Ee,"output",dt.sourceField))==null?void 0:fe.name;Ie?Ke[Ie]=Ce:ye===void 0&&(ye=Ce)}const _t={...sn(Ee.config),name:Ee.name,type:Ee.type},tn=lr(Ee.type);if(tn.length)for(const dt of tn){const de=_t[dt];if(!Array.isArray(de))continue;const Se=[];for(const me of de){const Ce=T(me);Ce&&Se.push(Ce.name)}Se.length?_t[dt]=Array.from(new Set(Se)):delete _t[dt]}Object.keys(ge).length>0?_t.inputs=ge:Pe!==void 0&&(_t.input=Pe),Object.keys(Ke).length>0?_t.outputs=Ke:ye!==void 0&&(_t.output=ye),$.push(_t)}return $}function X(){return r.value.nodes.map($=>sn({name:$.name,phase:$.phase,position:{...$.position},expanded:{...$.expanded},fields:{input:$.fields.input.map(oe=>oe.name),output:$.fields.output.map(oe=>oe.name)}}))}function ne(){const $={},oe=N("vault");if(oe){const le=Z1(oe.config);le&&Object.keys(le).length>0&&($.vault=le)}if(r.value.cacheConfig){const{strategy:le,redis:pe,memory:ce}=r.value.cacheConfig;$.cache={strategy:le,redis:pe,memory:ce}}if(Object.keys($).length!==0)return $}function Q(){const $=[];for(const oe of r.value.groups){const le=T(oe.ownerId);if(!le)continue;const pe=oe.position;pe&&$.push({name:hi(le.name,oe.branch),position:{...pe}})}return $}function Z(){return{nodes:X(),groups:Q()}}function ue($,oe){oe&&c.commit(),r.value=nf($,oe),oe||c.clear()}return{state:r,selection:i,portalSelection:a,modalOpen:l,skipValidation:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,configNodeCounts:m,nodeMapById:g,nodeMapByName:y,edgeMapById:_,edgeIdMapByNodeId:w,groupMapById:b,getNodeById:T,getNodeByName:N,getEdgeById:L,getEdgesByNodeId:x,getInEdgesByNodeId:B,getOutEdgesByNodeId:P,selectedNode:q,selectNode:G,selectPortalEdge:K,createNode:F,addNode:I,duplicateNode:j,removeNode:z,renameNode:ae,moveNode:U,moveGroup:H,setGroupLayout:ee,toggleExpanded:_e,replaceConfig:be,branchGroups:E,addField:re,renameField:J,removeField:te,connectEdge:se,replaceConnection:V,disconnectEdge:v,disconnectInEdges:M,disconnectOutEdges:D,toConfigNodes:ie,toUINodes:X,toUIGroups:Q,toUIData:Z,load:ue,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,revert:c.revert,isValidConnection:R,isValidVueFlowConnection:O,validateGraph:()=>A(),clearPendingLayout:u,setPendingFitView:p}});function We(){const e=rx();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const{t:ix}=Xe.createI18n("en-us",Qe),_i=Ye.createGlobalState(()=>{const e=Ye.useLocalStorage("datakit-editor-mode","flow"),n=Ye.useLocalStorage("datakit-editor-sidebar-expanded",!0),o=Ye.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:e,sidePanelExpanded:n,responsePanelCollapsed:o}});function ax({enabled:e,confirm:n}){On.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm(ix("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=r=>{t.toValue(e)&&r.preventDefault()};Ye.useEventListener("beforeunload",o)}function sr(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function cn(e){return typeof e=="function"?e():t.unref(e)}const lx=typeof window<"u"&&typeof document<"u",sx=e=>typeof e<"u",cx=Object.prototype.toString,dx=e=>cx.call(e)==="[object Object]",ux=()=>{};function fx(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 lf=e=>e();function px(e=lf){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 sf(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function mx(e,n,o={}){const{eventFilter:r=lf,...i}=o;return t.watch(e,fx(r,n),i)}function xo(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=px(r);return{stop:mx(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function gx(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=cn(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 Vl(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:g,throwOnTimeout:y}={}){let h=null;const w=[new Promise(b=>{h=t.watch(e,k=>{u(k)!==n&&(h==null||h(),b(k))},{flush:p,deep:m,immediate:!0})})];return g!=null&&w.push(sf(g,y).then(()=>cn(e)).finally(()=>h==null?void 0:h())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(k=>k===u,p);const{flush:m="sync",deep:g=!1,timeout:y,throwOnTimeout:h}=p??{};let _=null;const b=[new Promise(k=>{_=t.watch([e,u],([E,C])=>{n!==(E===C)&&(_==null||_(),k(E))},{flush:m,deep:g,immediate:!0})})];return y!=null&&b.push(sf(y,h).then(()=>cn(e)).finally(()=>(_==null||_(),cn(e)))),Promise.race(b)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const g=Array.from(m);return g.includes(u)||g.includes(cn(u))},p)}function d(u){return f(1,u)}function f(u=1,p){let m=-1;return o(()=>(m+=1,m>=u),p)}return Array.isArray(cn(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return Vl(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return Vl(e,!n)}}}function Rl(e){return Vl(e)}function hx(e){var n;const o=cn(e);return(n=o==null?void 0:o.$el)!=null?n:o}const cf=lx?window:void 0;function df(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=cf):[n,o,r,i]=e,!n)return ux;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(f=>f()),a.length=0},s=(f,u,p,m)=>(f.addEventListener(u,p,m),()=>f.removeEventListener(u,p,m)),c=t.watch(()=>[hx(n),cn(i)],([f,u])=>{if(l(),!f)return;const p=dx(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(g=>s(f,m,g,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return sr(d),d}function yx(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function uf(...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=cf,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=yx(n);return df(i,a,f=>{f.repeat&&cn(s)||c(f)&&o(f)},l)}function _x(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:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.getCurrentInstance(),g=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let y=d;n||(n="modelValue"),y=y||`update:${n.toString()}`;const h=b=>s?typeof s=="function"?s(b):_x(b):b,_=()=>sx(e[n])?h(e[n]):u,w=b=>{p?p(b)&&g(y,b):g(y,b)};if(c){const b=_(),k=t.ref(b);let E=!1;return t.watch(()=>e[n],C=>{E||(E=!0,k.value=h(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 _()},set(b){w(b)}})}var bx={value:()=>{}};function bi(){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 wi(o)}function wi(e){this._=e}function wx(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}})}wi.prototype=bi.prototype={constructor:wi,on:function(e,n){var o=this._,r=wx(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=kx(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]=ff(o[i],e.name,n);else if(n==null)for(i in o)o[i]=ff(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 wi(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 kx(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function ff(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=bx,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Ml="http://www.w3.org/1999/xhtml";const pf={svg:"http://www.w3.org/2000/svg",xhtml:Ml,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function ki(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),pf.hasOwnProperty(n)?{space:pf[n],local:e}:e}function Cx(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Ml&&n.documentElement.namespaceURI===Ml?n.createElement(e):n.createElementNS(o,e)}}function Ex(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function mf(e){var n=ki(e);return(n.local?Ex:Cx)(n)}function Nx(){}function Ll(e){return e==null?Nx:function(){return this.querySelector(e)}}function xx(e){typeof e!="function"&&(e=Ll(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=new Array(l),c,d,f=0;f<l;++f)(c=a[f])&&(d=e.call(c,c.__data__,f,a))&&("__data__"in c&&(d.__data__=c.__data__),s[f]=d);return new At(r,this._parents)}function Sx(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function vx(){return[]}function gf(e){return e==null?vx:function(){return this.querySelectorAll(e)}}function Ax(e){return function(){return Sx(e.apply(this,arguments))}}function Ix(e){typeof e=="function"?e=Ax(e):e=gf(e);for(var n=this._groups,o=n.length,r=[],i=[],a=0;a<o;++a)for(var l=n[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&(r.push(e.call(c,c.__data__,d,l)),i.push(c));return new At(r,i)}function hf(e){return function(){return this.matches(e)}}function yf(e){return function(n){return n.matches(e)}}var Px=Array.prototype.find;function Tx(e){return function(){return Px.call(this.children,e)}}function Ox(){return this.firstElementChild}function $x(e){return this.select(e==null?Ox:Tx(typeof e=="function"?e:yf(e)))}var Bx=Array.prototype.filter;function Vx(){return Array.from(this.children)}function Rx(e){return function(){return Bx.call(this.children,e)}}function Dx(e){return this.selectAll(e==null?Vx:Rx(typeof e=="function"?e:yf(e)))}function Mx(e){typeof e!="function"&&(e=hf(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new At(r,this._parents)}function _f(e){return new Array(e.length)}function Lx(){return new At(this._enter||this._groups.map(_f),this._parents)}function Ci(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}Ci.prototype={constructor:Ci,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 Fx(e){return function(){return e}}function Ux(e,n,o,r,i,a){for(var l=0,s,c=n.length,d=a.length;l<d;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new Ci(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function Kx(e,n,o,r,i,a,l){var s,c,d=new Map,f=n.length,u=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=n[s])&&(p[s]=m=l.call(c,c.__data__,s,n)+"",d.has(m)?i[s]=c:d.set(m,c));for(s=0;s<u;++s)m=l.call(e,a[s],s,a)+"",(c=d.get(m))?(r[s]=c,c.__data__=a[s],d.delete(m)):o[s]=new Ci(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function jx(e){return e.__data__}function Gx(e,n){if(!arguments.length)return Array.from(this,jx);var o=n?Kx:Ux,r=this._parents,i=this._groups;typeof e!="function"&&(e=Fx(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),d=0;d<a;++d){var f=r[d],u=i[d],p=u.length,m=qx(e.call(f,f&&f.__data__,d,r)),g=m.length,y=s[d]=new Array(g),h=l[d]=new Array(g),_=c[d]=new Array(p);o(f,u,y,h,_,m,n);for(var w=0,b=0,k,E;w<g;++w)if(k=y[w]){for(w>=b&&(b=w+1);!(E=h[b])&&++b<g;);k._next=E||null}}return l=new At(l,r),l._enter=s,l._exit=c,l}function qx(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function zx(){return new At(this._exit||this._groups.map(_f),this._parents)}function Hx(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 Yx(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],f=r[c],u=d.length,p=s[c]=new Array(u),m,g=0;g<u;++g)(m=d[g]||f[g])&&(p[g]=m);for(;c<i;++c)s[c]=o[c];return new At(s,this._parents)}function Wx(){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 Xx(e){e||(e=Zx);function n(u,p){return u&&p?e(u.__data__,p.__data__):!u-!p}for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a){for(var l=o[a],s=l.length,c=i[a]=new Array(s),d,f=0;f<s;++f)(d=l[f])&&(c[f]=d);c.sort(n)}return new At(i,this._parents).order()}function Zx(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function Jx(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Qx(){return Array.from(this)}function eS(){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 tS(){let e=0;for(const n of this)++e;return e}function nS(){return!this.node()}function oS(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 rS(e){return function(){this.removeAttribute(e)}}function iS(e){return function(){this.removeAttributeNS(e.space,e.local)}}function aS(e,n){return function(){this.setAttribute(e,n)}}function lS(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function sS(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function cS(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 dS(e,n){var o=ki(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?iS:rS:typeof n=="function"?o.local?cS:sS:o.local?lS:aS)(o,n))}function bf(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function uS(e){return function(){this.style.removeProperty(e)}}function fS(e,n,o){return function(){this.style.setProperty(e,n,o)}}function pS(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function mS(e,n,o){return arguments.length>1?this.each((n==null?uS:typeof n=="function"?pS:fS)(e,n,o??"")):So(this.node(),e)}function So(e,n){return e.style.getPropertyValue(n)||bf(e).getComputedStyle(e,null).getPropertyValue(n)}function gS(e){return function(){delete this[e]}}function hS(e,n){return function(){this[e]=n}}function yS(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function _S(e,n){return arguments.length>1?this.each((n==null?gS:typeof n=="function"?yS:hS)(e,n)):this.node()[e]}function wf(e){return e.trim().split(/^|\s+/)}function Fl(e){return e.classList||new kf(e)}function kf(e){this._node=e,this._names=wf(e.getAttribute("class")||"")}kf.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 Cf(e,n){for(var o=Fl(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function Ef(e,n){for(var o=Fl(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function bS(e){return function(){Cf(this,e)}}function wS(e){return function(){Ef(this,e)}}function kS(e,n){return function(){(n.apply(this,arguments)?Cf:Ef)(this,e)}}function CS(e,n){var o=wf(e+"");if(arguments.length<2){for(var r=Fl(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?kS:n?bS:wS)(o,n))}function ES(){this.textContent=""}function NS(e){return function(){this.textContent=e}}function xS(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function SS(e){return arguments.length?this.each(e==null?ES:(typeof e=="function"?xS:NS)(e)):this.node().textContent}function vS(){this.innerHTML=""}function AS(e){return function(){this.innerHTML=e}}function IS(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function PS(e){return arguments.length?this.each(e==null?vS:(typeof e=="function"?IS:AS)(e)):this.node().innerHTML}function TS(){this.nextSibling&&this.parentNode.appendChild(this)}function OS(){return this.each(TS)}function $S(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function BS(){return this.each($S)}function VS(e){var n=typeof e=="function"?e:mf(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function RS(){return null}function DS(e,n){var o=typeof e=="function"?e:mf(e),r=n==null?RS:typeof n=="function"?n:Ll(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function MS(){var e=this.parentNode;e&&e.removeChild(this)}function LS(){return this.each(MS)}function FS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function US(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function KS(e){return this.select(e?US:FS)}function jS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function GS(e){return function(n){e.call(this,n,this.__data__)}}function qS(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 zS(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 HS(e,n,o){return function(){var r=this.__on,i,a=GS(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 YS(e,n,o){var r=qS(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,d=s.length,f;c<d;++c)for(i=0,f=s[c];i<a;++i)if((l=r[i]).type===f.type&&l.name===f.name)return f.value}return}for(s=n?HS:zS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function Nf(e,n,o){var r=bf(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 WS(e,n){return function(){return Nf(this,e,n)}}function XS(e,n){return function(){return Nf(this,e,n.apply(this,arguments))}}function ZS(e,n){return this.each((typeof n=="function"?XS:WS)(e,n))}function*JS(){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 xf=[null];function At(e,n){this._groups=e,this._parents=n}function cr(){return new At([[document.documentElement]],xf)}function QS(){return this}At.prototype=cr.prototype={constructor:At,select:xx,selectAll:Ix,selectChild:$x,selectChildren:Dx,filter:Mx,data:Gx,enter:Lx,exit:zx,join:Hx,merge:Yx,selection:QS,order:Wx,sort:Xx,call:Jx,nodes:Qx,node:eS,size:tS,empty:nS,each:oS,attr:dS,style:mS,property:_S,classed:CS,text:SS,html:PS,raise:OS,lower:BS,append:VS,insert:DS,remove:LS,clone:KS,datum:jS,on:YS,dispatch:ZS,[Symbol.iterator]:JS};function Mt(e){return typeof e=="string"?new At([[document.querySelector(e)]],[document.documentElement]):new At([[e]],xf)}function ev(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Yt(e,n){if(e=ev(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 tv={passive:!1},dr={capture:!0,passive:!1};function Ul(e){e.stopImmediatePropagation()}function vo(e){e.preventDefault(),e.stopImmediatePropagation()}function Sf(e){var n=e.document.documentElement,o=Mt(e).on("dragstart.drag",vo,dr);"onselectstart"in n?o.on("selectstart.drag",vo,dr):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function vf(e,n){var o=e.document.documentElement,r=Mt(e).on("dragstart.drag",null);n&&(r.on("click.drag",vo,dr),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 Kl(e,{sourceEvent:n,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:d,dispatch:f}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:o,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:d,enumerable:!0,configurable:!0},_:{value:f}})}Kl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function nv(e){return!e.ctrlKey&&!e.button}function ov(){return this.parentNode}function rv(e,n){return n??{x:e.x,y:e.y}}function iv(){return navigator.maxTouchPoints||"ontouchstart"in this}function av(){var e=nv,n=ov,o=rv,r=iv,i={},a=bi("start","drag","end"),l=0,s,c,d,f,u=0;function p(k){k.on("mousedown.drag",m).filter(r).on("touchstart.drag",h).on("touchmove.drag",_,tv).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=b(this,n.call(this,k,E),k,E,"mouse");C&&(Mt(k.view).on("mousemove.drag",g,dr).on("mouseup.drag",y,dr),Sf(k.view),Ul(k),d=!1,s=k.clientX,c=k.clientY,C("start",k))}}function g(k){if(vo(k),!d){var E=k.clientX-s,C=k.clientY-c;d=E*E+C*C>u}i.mouse("drag",k)}function y(k){Mt(k.view).on("mousemove.drag mouseup.drag",null),vf(k.view,d),vo(k),i.mouse("end",k)}function h(k,E){if(e.call(this,k,E)){var C=k.changedTouches,S=n.call(this,k,E),A=C.length,R,O;for(R=0;R<A;++R)(O=b(this,S,k,E,C[R].identifier,C[R]))&&(Ul(k),O("start",k,C[R]))}}function _(k){var E=k.changedTouches,C=E.length,S,A;for(S=0;S<C;++S)(A=i[E[S].identifier])&&(vo(k),A("drag",k,E[S]))}function w(k){var E=k.changedTouches,C=E.length,S,A;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),S=0;S<C;++S)(A=i[E[S].identifier])&&(Ul(k),A("end",k,E[S]))}function b(k,E,C,S,A,R){var O=a.copy(),T=Yt(R||C,E),N,L,x;if((x=o.call(k,new Kl("beforestart",{sourceEvent:C,target:p,identifier:A,active:l,x:T[0],y:T[1],dx:0,dy:0,dispatch:O}),S))!=null)return N=x.x-T[0]||0,L=x.y-T[1]||0,function B(P,q,G){var K=T,F;switch(P){case"start":i[A]=B,F=l++;break;case"end":delete i[A],--l;case"drag":T=Yt(G||q,E),F=l;break}O.call(P,k,new Kl(P,{sourceEvent:q,subject:x,target:p,identifier:A,active:F,x:T[0]+N,y:T[1]+L,dx:T[0]-K[0],dy:T[1]-K[1],dispatch:O}),S)}}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?(u=(k=+k)*k,p):Math.sqrt(u)},p}function jl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function Af(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function ur(){}var fr=.7,Ni=1/fr,Ao="\\s*([+-]?\\d+)\\s*",pr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Wt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",lv=/^#([0-9a-f]{3,8})$/,sv=new RegExp(`^rgb\\(${Ao},${Ao},${Ao}\\)$`),cv=new RegExp(`^rgb\\(${Wt},${Wt},${Wt}\\)$`),dv=new RegExp(`^rgba\\(${Ao},${Ao},${Ao},${pr}\\)$`),uv=new RegExp(`^rgba\\(${Wt},${Wt},${Wt},${pr}\\)$`),fv=new RegExp(`^hsl\\(${pr},${Wt},${Wt}\\)$`),pv=new RegExp(`^hsla\\(${pr},${Wt},${Wt},${pr}\\)$`),If={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};jl(ur,Zn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Pf,formatHex:Pf,formatHex8:mv,formatHsl:gv,formatRgb:Tf,toString:Tf});function Pf(){return this.rgb().formatHex()}function mv(){return this.rgb().formatHex8()}function gv(){return Rf(this).formatHsl()}function Tf(){return this.rgb().formatRgb()}function Zn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=lv.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?Of(n):o===3?new vt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?xi(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?xi(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=sv.exec(e))?new vt(n[1],n[2],n[3],1):(n=cv.exec(e))?new vt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=dv.exec(e))?xi(n[1],n[2],n[3],n[4]):(n=uv.exec(e))?xi(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=fv.exec(e))?Vf(n[1],n[2]/100,n[3]/100,1):(n=pv.exec(e))?Vf(n[1],n[2]/100,n[3]/100,n[4]):If.hasOwnProperty(e)?Of(If[e]):e==="transparent"?new vt(NaN,NaN,NaN,0):null}function Of(e){return new vt(e>>16&255,e>>8&255,e&255,1)}function xi(e,n,o,r){return r<=0&&(e=n=o=NaN),new vt(e,n,o,r)}function hv(e){return e instanceof ur||(e=Zn(e)),e?(e=e.rgb(),new vt(e.r,e.g,e.b,e.opacity)):new vt}function Gl(e,n,o,r){return arguments.length===1?hv(e):new vt(e,n,o,r??1)}function vt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}jl(vt,Gl,Af(ur,{brighter(e){return e=e==null?Ni:Math.pow(Ni,e),new vt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?fr:Math.pow(fr,e),new vt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new vt(Jn(this.r),Jn(this.g),Jn(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:$f,formatHex:$f,formatHex8:yv,formatRgb:Bf,toString:Bf}));function $f(){return`#${Qn(this.r)}${Qn(this.g)}${Qn(this.b)}`}function yv(){return`#${Qn(this.r)}${Qn(this.g)}${Qn(this.b)}${Qn((isNaN(this.opacity)?1:this.opacity)*255)}`}function Bf(){const e=Si(this.opacity);return`${e===1?"rgb(":"rgba("}${Jn(this.r)}, ${Jn(this.g)}, ${Jn(this.b)}${e===1?")":`, ${e})`}`}function Si(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Jn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Qn(e){return e=Jn(e),(e<16?"0":"")+e.toString(16)}function Vf(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Lt(e,n,o,r)}function Rf(e){if(e instanceof Lt)return new Lt(e.h,e.s,e.l,e.opacity);if(e instanceof ur||(e=Zn(e)),!e)return new Lt;if(e instanceof Lt)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 Lt(l,s,c,e.opacity)}function _v(e,n,o,r){return arguments.length===1?Rf(e):new Lt(e,n,o,r??1)}function Lt(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}jl(Lt,_v,Af(ur,{brighter(e){return e=e==null?Ni:Math.pow(Ni,e),new Lt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?fr:Math.pow(fr,e),new Lt(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*n,i=2*o-r;return new vt(ql(e>=240?e-240:e+120,i,r),ql(e,i,r),ql(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Lt(Df(this.h),vi(this.s),vi(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("}${Df(this.h)}, ${vi(this.s)*100}%, ${vi(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Df(e){return e=(e||0)%360,e<0?e+360:e}function vi(e){return Math.max(0,Math.min(1,e||0))}function ql(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 zl=e=>()=>e;function bv(e,n){return function(o){return e+o*n}}function wv(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 kv(e){return(e=+e)==1?Mf:function(n,o){return o-n?wv(n,o,e):zl(isNaN(n)?o:n)}}function Mf(e,n){var o=n-e;return o?bv(e,o):zl(isNaN(e)?n:e)}const Ai=function e(n){var o=kv(n);function r(i,a){var l=o((i=Gl(i)).r,(a=Gl(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Mf(i.opacity,a.opacity);return function(f){return i.r=l(f),i.g=s(f),i.b=c(f),i.opacity=d(f),i+""}}return r.gamma=e,r}(1);function Cv(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 Ev(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Nv(e,n){var o=n?n.length:0,r=e?Math.min(o,e.length):0,i=new Array(r),a=new Array(o),l;for(l=0;l<r;++l)i[l]=mr(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 xv(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Xt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function Sv(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]=mr(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Hl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Yl=new RegExp(Hl.source,"g");function vv(e){return function(){return e}}function Av(e){return function(n){return e(n)+""}}function Lf(e,n){var o=Hl.lastIndex=Yl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=Hl.exec(e))&&(i=Yl.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:Xt(r,i)})),o=Yl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?Av(c[0].x):vv(n):(n=c.length,function(d){for(var f=0,u;f<n;++f)s[(u=c[f]).i]=u.x(d);return s.join("")})}function mr(e,n){var o=typeof n,r;return n==null||o==="boolean"?zl(n):(o==="number"?Xt:o==="string"?(r=Zn(n))?(n=r,Ai):Lf:n instanceof Zn?Ai:n instanceof Date?xv:Ev(n)?Cv:Array.isArray(n)?Nv:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?Sv:Xt)(e,n)}var Ff=180/Math.PI,Wl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Uf(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)*Ff,skewX:Math.atan(c)*Ff,scaleX:l,scaleY:s}}var Ii;function Iv(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Wl:Uf(n.a,n.b,n.c,n.d,n.e,n.f)}function Pv(e){return e==null||(Ii||(Ii=document.createElementNS("http://www.w3.org/2000/svg","g")),Ii.setAttribute("transform",e),!(e=Ii.transform.baseVal.consolidate()))?Wl:(e=e.matrix,Uf(e.a,e.b,e.c,e.d,e.e,e.f))}function Kf(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,g){if(d!==u||f!==p){var y=m.push("translate(",null,n,null,o);g.push({i:y-4,x:Xt(d,u)},{i:y-2,x:Xt(f,p)})}else(u||p)&&m.push("translate("+u+n+p+o)}function l(d,f,u,p){d!==f?(d-f>180?f+=360:f-d>180&&(d+=360),p.push({i:u.push(i(u)+"rotate(",null,r)-2,x:Xt(d,f)})):f&&u.push(i(u)+"rotate("+f+r)}function s(d,f,u,p){d!==f?p.push({i:u.push(i(u)+"skewX(",null,r)-2,x:Xt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,g){if(d!==u||f!==p){var y=m.push(i(m)+"scale(",null,",",null,")");g.push({i:y-4,x:Xt(d,u)},{i:y-2,x:Xt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var g=-1,y=p.length,h;++g<y;)u[(h=p[g]).i]=h.x(m);return u.join("")}}}var Tv=Kf(Iv,"px, ","px)","deg)"),Ov=Kf(Pv,", ",")",")"),$v=1e-12;function jf(e){return((e=Math.exp(e))+1/e)/2}function Bv(e){return((e=Math.exp(e))-1/e)/2}function Vv(e){return((e=Math.exp(2*e))-1)/(e+1)}const Pi=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,g=u-c,y=m*m+g*g,h,_;if(y<$v)_=Math.log(p/d)/n,h=function(S){return[s+S*m,c+S*g,d*Math.exp(n*S*_)]};else{var w=Math.sqrt(y),b=(p*p-d*d+r*y)/(2*d*o*w),k=(p*p-d*d-r*y)/(2*p*o*w),E=Math.log(Math.sqrt(b*b+1)-b),C=Math.log(Math.sqrt(k*k+1)-k);_=(C-E)/n,h=function(S){var A=S*_,R=jf(E),O=d/(o*w)*(R*Vv(n*A+E)-Bv(E));return[s+O*m,c+O*g,d*R/jf(n*A+E)]}}return h.duration=_*1e3*n/Math.SQRT2,h}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 Io=0,gr=0,hr=0,Gf=1e3,Ti,yr,Oi=0,eo=0,$i=0,_r=typeof performance=="object"&&performance.now?performance:Date,qf=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Xl(){return eo||(qf(Rv),eo=_r.now()+$i)}function Rv(){eo=0}function Bi(){this._call=this._time=this._next=null}Bi.prototype=zf.prototype={constructor:Bi,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Xl():+o)+(n==null?0:+n),!this._next&&yr!==this&&(yr?yr._next=this:Ti=this,yr=this),this._call=e,this._time=o,Zl()},stop:function(){this._call&&(this._call=null,this._time=1/0,Zl())}};function zf(e,n,o){var r=new Bi;return r.restart(e,n,o),r}function Dv(){Xl(),++Io;for(var e=Ti,n;e;)(n=eo-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Io}function Hf(){eo=(Oi=_r.now())+$i,Io=gr=0;try{Dv()}finally{Io=0,Lv(),eo=0}}function Mv(){var e=_r.now(),n=e-Oi;n>Gf&&($i-=n,Oi=e)}function Lv(){for(var e,n=Ti,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:Ti=o);yr=e,Zl(r)}function Zl(e){if(!Io){gr&&(gr=clearTimeout(gr));var n=e-eo;n>24?(e<1/0&&(gr=setTimeout(Hf,e-_r.now()-$i)),hr&&(hr=clearInterval(hr))):(hr||(Oi=_r.now(),hr=setInterval(Mv,Gf)),Io=1,qf(Hf))}}function Yf(e,n,o){var r=new Bi;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var Fv=bi("start","end","cancel","interrupt"),Uv=[],Wf=0,Xf=1,Jl=2,Vi=3,Zf=4,Ql=5,Ri=6;function Di(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;Kv(e,o,{name:n,index:r,group:i,on:Fv,tween:Uv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Wf})}function es(e,n){var o=Ft(e,n);if(o.state>Wf)throw new Error("too late; already scheduled");return o}function Zt(e,n){var o=Ft(e,n);if(o.state>Vi)throw new Error("too late; already running");return o}function Ft(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function Kv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=zf(a,0,o.time);function a(d){o.state=Xf,o.timer.restart(l,o.delay,o.time),o.delay<=d&&l(d-o.delay)}function l(d){var f,u,p,m;if(o.state!==Xf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Vi)return Yf(l);m.state===Zf?(m.state=Ri,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=Ri,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Yf(function(){o.state===Vi&&(o.state=Zf,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Jl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Jl){for(o.state=Vi,i=new Array(p=o.tween.length),f=0,u=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++u]=m);i.length=u+1}}function s(d){for(var f=d<o.duration?o.ease.call(null,d/o.duration):(o.timer.restart(c),o.state=Ql,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Ql&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Ri,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Mi(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>Jl&&r.state<Ql,r.state=Ri,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(){Mi(this,e)})}function Gv(e,n){var o,r;return function(){var i=Zt(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 qv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=Zt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===n){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function zv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Ft(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?Gv:qv)(o,e,n))}function ts(e,n,o){var r=e._id;return e.each(function(){var i=Zt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return Ft(i,r).value[n]}}function Jf(e,n){var o;return(typeof n=="number"?Xt:n instanceof Zn?Ai:(o=Zn(n))?(n=o,Ai):Lf)(e,n)}function Hv(e){return function(){this.removeAttribute(e)}}function Yv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Wv(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 Xv(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 Zv(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 Jv(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 Qv(e,n){var o=ki(e),r=o==="transform"?Ov:Jf;return this.attrTween(e,typeof n=="function"?(o.local?Jv:Zv)(o,r,ts(this,"attr."+e,n)):n==null?(o.local?Yv:Hv)(o):(o.local?Xv:Wv)(o,r,n))}function eA(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function tA(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function nA(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&tA(e,a)),o}return i._value=n,i}function oA(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&eA(e,a)),o}return i._value=n,i}function rA(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=ki(e);return this.tween(o,(r.local?nA:oA)(r,n))}function iA(e,n){return function(){es(this,e).delay=+n.apply(this,arguments)}}function aA(e,n){return n=+n,function(){es(this,e).delay=n}}function lA(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?iA:aA)(n,e)):Ft(this.node(),n).delay}function sA(e,n){return function(){Zt(this,e).duration=+n.apply(this,arguments)}}function cA(e,n){return n=+n,function(){Zt(this,e).duration=n}}function dA(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?sA:cA)(n,e)):Ft(this.node(),n).duration}function uA(e,n){if(typeof n!="function")throw new Error;return function(){Zt(this,e).ease=n}}function fA(e){var n=this._id;return arguments.length?this.each(uA(n,e)):Ft(this.node(),n).ease}function pA(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;Zt(this,e).ease=o}}function mA(e){if(typeof e!="function")throw new Error;return this.each(pA(this._id,e))}function gA(e){typeof e!="function"&&(e=hf(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new dn(r,this._parents,this._name,this._id)}function hA(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,o=e._groups,r=n.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=n[s],d=o[s],f=c.length,u=l[s]=new Array(f),p,m=0;m<f;++m)(p=c[m]||d[m])&&(u[m]=p);for(;s<r;++s)l[s]=n[s];return new dn(l,this._parents,this._name,this._id)}function yA(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 _A(e,n,o){var r,i,a=yA(n)?es:Zt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function bA(e,n){var o=this._id;return arguments.length<2?Ft(this.node(),o).on.on(e):this.each(_A(o,e,n))}function wA(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function kA(){return this.on("end.remove",wA(this._id))}function CA(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Ll(e));for(var r=this._groups,i=r.length,a=new Array(i),l=0;l<i;++l)for(var s=r[l],c=s.length,d=a[l]=new Array(c),f,u,p=0;p<c;++p)(f=s[p])&&(u=e.call(f,f.__data__,p,s))&&("__data__"in f&&(u.__data__=f.__data__),d[p]=u,Di(d[p],n,o,p,d,Ft(f,o)));return new dn(a,this._parents,n,o)}function EA(e){var n=this._name,o=this._id;typeof e!="function"&&(e=gf(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,g=Ft(f,o),y=0,h=p.length;y<h;++y)(m=p[y])&&Di(m,n,o,y,p,g);a.push(p),l.push(f)}return new dn(a,l,n,o)}var NA=cr.prototype.constructor;function xA(){return new NA(this._groups,this._parents)}function SA(e,n){var o,r,i;return function(){var a=So(this,e),l=(this.style.removeProperty(e),So(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Qf(e){return function(){this.style.removeProperty(e)}}function vA(e,n,o){var r,i=o+"",a;return function(){var l=So(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function AA(e,n,o){var r,i,a;return function(){var l=So(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),So(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function IA(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=Zt(this,e),d=c.on,f=c.value[a]==null?s||(s=Qf(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function PA(e,n,o){var r=(e+="")=="transform"?Tv:Jf;return n==null?this.styleTween(e,SA(e,r)).on("end.style."+e,Qf(e)):typeof n=="function"?this.styleTween(e,AA(e,r,ts(this,"style."+e,n))).each(IA(this._id,e)):this.styleTween(e,vA(e,r,n),o).on("end.style."+e,null)}function TA(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function OA(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&TA(e,l,o)),r}return a._value=n,a}function $A(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,OA(e,n,o??""))}function BA(e){return function(){this.textContent=e}}function VA(e){return function(){var n=e(this);this.textContent=n??""}}function RA(e){return this.tween("text",typeof e=="function"?VA(ts(this,"text",e)):BA(e==null?"":e+""))}function DA(e){return function(n){this.textContent=e.call(this,n)}}function MA(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&DA(i)),n}return r._value=e,r}function LA(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,MA(e))}function FA(){for(var e=this._name,n=this._id,o=ep(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)if(c=l[d]){var f=Ft(c,n);Di(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new dn(r,this._parents,e,o)}function UA(){var e,n,o=this,r=o._id,i=o.size();return new Promise(function(a,l){var s={value:l},c={value:function(){--i===0&&a()}};o.each(function(){var d=Zt(this,r),f=d.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),d.on=n}),i===0&&a()})}var KA=0;function dn(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function ep(){return++KA}var un=cr.prototype;dn.prototype={constructor:dn,select:CA,selectAll:EA,selectChild:un.selectChild,selectChildren:un.selectChildren,filter:gA,merge:hA,selection:xA,transition:FA,call:un.call,nodes:un.nodes,node:un.node,size:un.size,empty:un.empty,each:un.each,on:bA,attr:Qv,attrTween:rA,style:PA,styleTween:$A,text:RA,textTween:LA,remove:kA,tween:zv,delay:lA,duration:dA,ease:fA,easeVarying:mA,end:UA,[Symbol.iterator]:un[Symbol.iterator]};function jA(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var GA={time:null,delay:0,duration:250,ease:jA};function qA(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 zA(e){var n,o;e instanceof dn?(n=e._id,e=e._name):(n=ep(),(o=GA).time=Xl(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&Di(c,e,n,d,l,o||qA(c,n));return new dn(r,this._parents,e,n)}cr.prototype.interrupt=jv,cr.prototype.transition=zA;const Li=e=>()=>e;function HA(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 fn(e,n,o){this.k=e,this.x=n,this.y=o}fn.prototype={constructor:fn,scale:function(e){return e===1?this:new fn(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new fn(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 Po=new fn(1,0,0);fn.prototype;function ns(e){e.stopImmediatePropagation()}function br(e){e.preventDefault(),e.stopImmediatePropagation()}function YA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function WA(){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 tp(){return this.__zoom||Po}function XA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function ZA(){return navigator.maxTouchPoints||"ontouchstart"in this}function JA(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 QA(){var e=YA,n=WA,o=JA,r=XA,i=ZA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Pi,d=bi("start","zoom","end"),f,u,p,m=500,g=150,y=0,h=10;function _(x){x.property("__zoom",tp).on("wheel.zoom",A,{passive:!1}).on("mousedown.zoom",R).on("dblclick.zoom",O).filter(i).on("touchstart.zoom",T).on("touchmove.zoom",N).on("touchend.zoom touchcancel.zoom",L).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(x,B,P,q){var G=x.selection?x.selection():x;G.property("__zoom",tp),x!==G?E(x,B,P,q):G.interrupt().each(function(){C(this,arguments).event(q).start().zoom(null,typeof B=="function"?B.apply(this,arguments):B).end()})},_.scaleBy=function(x,B,P,q){_.scaleTo(x,function(){var G=this.__zoom.k,K=typeof B=="function"?B.apply(this,arguments):B;return G*K},P,q)},_.scaleTo=function(x,B,P,q){_.transform(x,function(){var G=n.apply(this,arguments),K=this.__zoom,F=P==null?k(G):typeof P=="function"?P.apply(this,arguments):P,I=K.invert(F),j=typeof B=="function"?B.apply(this,arguments):B;return o(b(w(K,j),F,I),G,l)},P,q)},_.translateBy=function(x,B,P,q){_.transform(x,function(){return o(this.__zoom.translate(typeof B=="function"?B.apply(this,arguments):B,typeof P=="function"?P.apply(this,arguments):P),n.apply(this,arguments),l)},null,q)},_.translateTo=function(x,B,P,q,G){_.transform(x,function(){var K=n.apply(this,arguments),F=this.__zoom,I=q==null?k(K):typeof q=="function"?q.apply(this,arguments):q;return o(Po.translate(I[0],I[1]).scale(F.k).translate(typeof B=="function"?-B.apply(this,arguments):-B,typeof P=="function"?-P.apply(this,arguments):-P),K,l)},q,G)};function w(x,B){return B=Math.max(a[0],Math.min(a[1],B)),B===x.k?x:new fn(B,x.x,x.y)}function b(x,B,P){var q=B[0]-P[0]*x.k,G=B[1]-P[1]*x.k;return q===x.x&&G===x.y?x:new fn(x.k,q,G)}function k(x){return[(+x[0][0]+ +x[1][0])/2,(+x[0][1]+ +x[1][1])/2]}function E(x,B,P,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 G=this,K=arguments,F=C(G,K).event(q),I=n.apply(G,K),j=P==null?k(I):typeof P=="function"?P.apply(G,K):P,z=Math.max(I[1][0]-I[0][0],I[1][1]-I[0][1]),ae=G.__zoom,U=typeof B=="function"?B.apply(G,K):B,H=c(ae.invert(j).concat(z/ae.k),U.invert(j).concat(z/U.k));return function(ee){if(ee===1)ee=U;else{var _e=H(ee),be=z/_e[2];ee=new fn(be,j[0]-_e[0]*be,j[1]-_e[1]*be)}F.zoom(null,ee)}})}function C(x,B,P){return!P&&x.__zooming||new S(x,B)}function S(x,B){this.that=x,this.args=B,this.active=0,this.sourceEvent=null,this.extent=n.apply(x,B),this.taps=0}S.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,B){return this.mouse&&x!=="mouse"&&(this.mouse[1]=B.invert(this.mouse[0])),this.touch0&&x!=="touch"&&(this.touch0[1]=B.invert(this.touch0[0])),this.touch1&&x!=="touch"&&(this.touch1[1]=B.invert(this.touch1[0])),this.that.__zoom=B,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(x){var B=Mt(this.that).datum();d.call(x,this.that,new HA(x,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:d}),B)}};function A(x,...B){if(!e.apply(this,arguments))return;var P=C(this,B).event(x),q=this.__zoom,G=Math.max(a[0],Math.min(a[1],q.k*Math.pow(2,r.apply(this,arguments)))),K=Yt(x);if(P.wheel)(P.mouse[0][0]!==K[0]||P.mouse[0][1]!==K[1])&&(P.mouse[1]=q.invert(P.mouse[0]=K)),clearTimeout(P.wheel);else{if(q.k===G)return;P.mouse=[K,q.invert(K)],Mi(this),P.start()}br(x),P.wheel=setTimeout(F,g),P.zoom("mouse",o(b(w(q,G),P.mouse[0],P.mouse[1]),P.extent,l));function F(){P.wheel=null,P.end()}}function R(x,...B){if(p||!e.apply(this,arguments))return;var P=x.currentTarget,q=C(this,B,!0).event(x),G=Mt(x.view).on("mousemove.zoom",j,!0).on("mouseup.zoom",z,!0),K=Yt(x,P),F=x.clientX,I=x.clientY;Sf(x.view),ns(x),q.mouse=[K,this.__zoom.invert(K)],Mi(this),q.start();function j(ae){if(br(ae),!q.moved){var U=ae.clientX-F,H=ae.clientY-I;q.moved=U*U+H*H>y}q.event(ae).zoom("mouse",o(b(q.that.__zoom,q.mouse[0]=Yt(ae,P),q.mouse[1]),q.extent,l))}function z(ae){G.on("mousemove.zoom mouseup.zoom",null),vf(ae.view,q.moved),br(ae),q.event(ae).end()}}function O(x,...B){if(e.apply(this,arguments)){var P=this.__zoom,q=Yt(x.changedTouches?x.changedTouches[0]:x,this),G=P.invert(q),K=P.k*(x.shiftKey?.5:2),F=o(b(w(P,K),q,G),n.apply(this,B),l);br(x),s>0?Mt(this).transition().duration(s).call(E,F,q,x):Mt(this).call(_.transform,F,q,x)}}function T(x,...B){if(e.apply(this,arguments)){var P=x.touches,q=P.length,G=C(this,B,x.changedTouches.length===q).event(x),K,F,I,j;for(ns(x),F=0;F<q;++F)I=P[F],j=Yt(I,this),j=[j,this.__zoom.invert(j),I.identifier],G.touch0?!G.touch1&&G.touch0[2]!==j[2]&&(G.touch1=j,G.taps=0):(G.touch0=j,K=!0,G.taps=1+!!f);f&&(f=clearTimeout(f)),K&&(G.taps<2&&(u=j[0],f=setTimeout(function(){f=null},m)),Mi(this),G.start())}}function N(x,...B){if(this.__zooming){var P=C(this,B).event(x),q=x.changedTouches,G=q.length,K,F,I,j;for(br(x),K=0;K<G;++K)F=q[K],I=Yt(F,this),P.touch0&&P.touch0[2]===F.identifier?P.touch0[0]=I:P.touch1&&P.touch1[2]===F.identifier&&(P.touch1[0]=I);if(F=P.that.__zoom,P.touch1){var z=P.touch0[0],ae=P.touch0[1],U=P.touch1[0],H=P.touch1[1],ee=(ee=U[0]-z[0])*ee+(ee=U[1]-z[1])*ee,_e=(_e=H[0]-ae[0])*_e+(_e=H[1]-ae[1])*_e;F=w(F,Math.sqrt(ee/_e)),I=[(z[0]+U[0])/2,(z[1]+U[1])/2],j=[(ae[0]+H[0])/2,(ae[1]+H[1])/2]}else if(P.touch0)I=P.touch0[0],j=P.touch0[1];else return;P.zoom("touch",o(b(F,I,j),P.extent,l))}}function L(x,...B){if(this.__zooming){var P=C(this,B).event(x),q=x.changedTouches,G=q.length,K,F;for(ns(x),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),K=0;K<G;++K)F=q[K],P.touch0&&P.touch0[2]===F.identifier?delete P.touch0:P.touch1&&P.touch1[2]===F.identifier&&delete P.touch1;if(P.touch1&&!P.touch0&&(P.touch0=P.touch1,delete P.touch1),P.touch0)P.touch0[1]=this.__zoom.invert(P.touch0[0]);else if(P.end(),P.taps===2&&(F=Yt(F,this),Math.hypot(u[0]-F[0],u[1]-F[1])<h)){var I=Mt(this).on("dblclick.zoom");I&&I.apply(this,arguments)}}}return _.wheelDelta=function(x){return arguments.length?(r=typeof x=="function"?x:Li(+x),_):r},_.filter=function(x){return arguments.length?(e=typeof x=="function"?x:Li(!!x),_):e},_.touchable=function(x){return arguments.length?(i=typeof x=="function"?x:Li(!!x),_):i},_.extent=function(x){return arguments.length?(n=typeof x=="function"?x:Li([[+x[0][0],+x[0][1]],[+x[1][0],+x[1][1]]]),_):n},_.scaleExtent=function(x){return arguments.length?(a[0]=+x[0],a[1]=+x[1],_):[a[0],a[1]]},_.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],_):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},_.constrain=function(x){return arguments.length?(o=x,_):o},_.duration=function(x){return arguments.length?(s=+x,_):s},_.interpolate=function(x){return arguments.length?(c=x,_):c},_.on=function(){var x=d.on.apply(d,arguments);return x===d?_:x},_.clickDistance=function(x){return arguments.length?(y=(x=+x)*x,_):Math.sqrt(y)},_.tapDistance=function(x){return arguments.length?(h=+x,_):h},_}var xe=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(xe||{}),os=(e=>(e.Partial="partial",e.Full="full",e))(os||{}),to=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(to||{}),xn=(e=>(e.Strict="strict",e.Loose="loose",e))(xn||{}),wr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(wr||{}),kr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(kr||{}),np=(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))(np||{});const eI=["INPUT","SELECT","TEXTAREA"],tI=typeof document<"u"?document:null;function rs(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 eI.includes(r==null?void 0:r.nodeName)||i||!!a}function nI(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function op(e,n,o,r){const i=n.replace("+",`
|
|
210
210
|
`).replace(`
|
|
211
211
|
|
|
212
212
|
`,`
|
|
213
213
|
+`).split(`
|
|
214
|
-
`).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 RA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=DA(o.code,e);return Array.isArray(e)?e.some(i=>Jf(o[r],i,n,o.type==="keyup")):Jf(o[r],e,n,o.type==="keyup")}}function DA(e,n){return n.includes(e)?"code":"key"}function kr(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??BA),r=t.shallowRef(t.toValue(e)===!0);let i=!1;const a=new Set;let l=c(t.toValue(e));t.watch(()=>t.toValue(e),(d,f)=>{typeof f=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),rf(["blur","contextmenu"],s),af((...d)=>l(...d),d=>{var f,u;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=VA(d),(!i||i&&!p)&&ns(d))return;const _=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,h=(_==null?void 0:_.nodeName)==="BUTTON"||(_==null?void 0:_.nodeName)==="A";!m&&(i||!h)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),af((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&ns(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.toValue(e)===!0}function c(d){return d===null?(s(),()=>!1):typeof d=="boolean"?(s(),r.value=d,()=>!1):Array.isArray(d)||typeof d=="string"?RA(d,a):d}return r}const Qf="vue-flow__node-desc",ep="vue-flow__edge-desc",MA="vue-flow__aria-live",tp=["Enter"," ","Escape"],To={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Mi(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Li(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 Fi(e){return{width:e.offsetWidth,height:e.offsetHeight}}function no(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function np(e,n){return{x:no(e.x,n[0][0],n[1][0]),y:no(e.y,n[0][1],n[1][1])}}function op(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function Sn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function oo(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!Sn(e)}function Cr(e){return oo(e)&&"computedPosition"in e}function Ui(e){return!Number.isNaN(e)&&Number.isFinite(e)}function LA(e){return Ui(e.width)&&Ui(e.height)&&Ui(e.x)&&Ui(e.y)}function FA(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 rp(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 ip(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 ip(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>Sn(a)&&a.source===r).map(a=>o.find(l=>oo(l)&&l.id===a.target))}function KA(...e){if(e.length===3){const[a,l,s]=e;return ip(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>Sn(a)&&a.target===r).map(a=>o.find(l=>oo(l)&&l.id===a.source))}function ap({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function jA(e,n){return n.some(o=>Sn(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 Er({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function Nr({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?ji(s,l):s}function GA(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 lp({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function qA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function sp(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=GA(n,lp({...r.computedPosition,...r.dimensions}))}return qA(n)}function cp(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Nr(n,o),width:n.width/o.zoom,height:n.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:d=!0,hidden:f=!1}=s,u=c.width??s.width??null,p=c.height??s.height??null;if(i&&!d||f)continue;const m=Li(a,Mi(s)),g=u===null||p===null,_=r&&m>0,h=(u??0)*(p??0);(g||_||m>=h||s.dragging)&&l.push(s)}return l}function dp(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 Oo(e,n){if(typeof e=="number")return Math.floor((n-n/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const o=Number.parseFloat(e);if(!Number.isNaN(o))return Math.floor(o)}if(typeof e=="string"&&e.endsWith("%")){const o=Number.parseFloat(e);if(!Number.isNaN(o))return Math.floor(n*o*.01)}return Sr(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function zA(e,n,o){if(typeof e=="string"||typeof e=="number"){const r=Oo(e,o),i=Oo(e,n);return{top:r,right:i,bottom:r,left:i,x:i*2,y:r*2}}if(typeof e=="object"){const r=Oo(e.top??e.y??0,o),i=Oo(e.bottom??e.y??0,o),a=Oo(e.left??e.x??0,n),l=Oo(e.right??e.x??0,n);return{top:r,right:l,bottom:i,left:a,x:a+l,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function HA(e,n,o,r,i,a){const{x:l,y:s}=Er(e,{x:n,y:o,zoom:r}),{x:c,y:d}=Er({x:e.x+e.width,y:e.y+e.height},{x:n,y:o,zoom:r}),f=i-c,u=a-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(f),bottom:Math.floor(u)}}function up(e,n,o,r,i,a=.1){const l=zA(a,n,o),s=(n-l.x)/e.width,c=(o-l.y)/e.height,d=Math.min(s,c),f=no(d,r,i),u=e.x+e.width/2,p=e.y+e.height/2,m=n/2-u*f,g=o/2-p*f,_=HA(e,m,g,f,n,o),h={left:Math.min(_.left-l.left,0),top:Math.min(_.top-l.top,0),right:Math.min(_.right-l.right,0),bottom:Math.min(_.bottom-l.bottom,0)};return{x:m-h.left+h.right,y:g-h.top+h.bottom,zoom:f}}function YA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function fp(e,n){if(!e.parentNode)return!1;const o=n.get(e.parentNode);return o?o.selected?!0:fp(o,n):!1}function xr(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function pp(e){const n=e.ctrlKey&&Ki()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*n}function mp(e,n,o){return e<n?no(Math.abs(e-n),1,n)/n:e>o?-no(Math.abs(e-o),1,n)/n:0}function gp(e,n,o=15,r=40){const i=mp(e.x,r,n.width-r)*o,a=mp(e.y,r,n.height-r)*o;return[i,a]}function os(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 hp(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(Cr(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&&Cr(c)&&os(l,c)}break;case"dimensions":if(Cr(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&&Cr(c)&&(!!c.dimensions.width&&!!c.dimensions.height?os(l,c):t.nextTick(()=>{os(l,c)}))}break}return n}function vn(e,n){return{id:e,type:"select",selected:n}}function yp(e){return{item:e,type:"add"}}function _p(e){return{id:e,type:"remove"}}function bp(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function An(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(vn(a.id,l)))}return r}const wp=()=>{};function Ne(e){const n=new Set;let o=wp,r=()=>!1;const i=()=>n.size>0||r(),a=p=>{o=p},l=()=>{o=wp},s=p=>{r=p},c=()=>{r=()=>!1},d=p=>{n.delete(p)};return{on:p=>{n.add(p);const m=()=>d(p);return lr(m),{off:m}},off:d,trigger:p=>{const m=[o];return i()?m.push(...n):e&&m.push(e),Promise.allSettled(m.map(g=>g(p)))},hasListeners:i,listeners:n,setEmitter:a,removeEmitter:l,setHasEmitListeners:s,removeHasEmitListeners:c}}function kp(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 WA(e,n,o,r){var i,a;const l=new Map;for(const[s,c]of e)(c.selected||c.id===r)&&(!c.parentNode||!fp(c,e))&&(c.draggable||n&&typeof c.draggable>"u")&&e.get(s)&&l.set(s,{id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((i=c.computedPosition)==null?void 0:i.x)||0,y:o.y-((a=c.computedPosition)==null?void 0:a.y)||0},from:{x:c.computedPosition.x,y:c.computedPosition.y},extent:c.extent,parentNode:c.parentNode,dimensions:{...c.dimensions},expandParent:c.expandParent});return Array.from(l.values())}function rs({id:e,dragItems:n,findNode:o}){const r=[];for(const i of n){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function Cp(e){if(Array.isArray(e))switch(e.length){case 1:return[e[0],e[0],e[0],e[0]];case 2:return[e[0],e[1],e[0],e[1]];case 3:return[e[0],e[1],e[2],e[1]];case 4:return e;default:return[0,0,0,0]}return[e,e,e,e]}function XA(e,n,o){const[r,i,a,l]=typeof e!="string"?Cp(e.padding):[0,0,0,0];return o&&typeof o.computedPosition.x<"u"&&typeof o.computedPosition.y<"u"&&typeof o.dimensions.width<"u"&&typeof o.dimensions.height<"u"?[[o.computedPosition.x+l,o.computedPosition.y+r],[o.computedPosition.x+o.dimensions.width-i,o.computedPosition.y+o.dimensions.height-a]]:!1}function ZA(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=XA(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]=Cp(i.padding),d=(r==null?void 0:r.computedPosition.x)||0,f=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+d+c,i.range[0][1]+f+a],[i.range[1][0]+d-l,i.range[1][1]+f-s]]}return i==="parent"?[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]]:i}function JA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function is(e,n,o,r,i){const a=JA(e.dimensions,ZA(e,o,r,i)),l=np(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 $o(e,n,o=xe.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??nI(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case xe.Top:return{x:i+l/2,y:a};case xe.Right:return{x:i+l,y:a+s/2};case xe.Bottom:return{x:i+l/2,y:a+s};case xe.Left:return{x:i,y:a+s/2}}}function Ep(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function QA({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x+o,n.x+i),y2:Math.max(e.y+r,n.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const f=lp({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),u=Math.max(0,Math.min(f.x2,d.x2)-Math.max(f.x,d.x)),p=Math.max(0,Math.min(f.y2,d.y2)-Math.max(f.y,d.y));return Math.ceil(u*p)>0}function eI(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 Np={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
|
|
214
|
+
`).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 oI(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=rI(o.code,e);return Array.isArray(e)?e.some(i=>op(o[r],i,n,o.type==="keyup")):op(o[r],e,n,o.type==="keyup")}}function rI(e,n){return n.includes(e)?"code":"key"}function Cr(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??tI),r=t.shallowRef(t.toValue(e)===!0);let i=!1;const a=new Set;let l=c(t.toValue(e));t.watch(()=>t.toValue(e),(d,f)=>{typeof f=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),df(["blur","contextmenu"],s),uf((...d)=>l(...d),d=>{var f,u;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=nI(d),(!i||i&&!p)&&rs(d))return;const y=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,h=(y==null?void 0:y.nodeName)==="BUTTON"||(y==null?void 0:y.nodeName)==="A";!m&&(i||!h)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),uf((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&rs(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.toValue(e)===!0}function c(d){return d===null?(s(),()=>!1):typeof d=="boolean"?(s(),r.value=d,()=>!1):Array.isArray(d)||typeof d=="string"?oI(d,a):d}return r}const rp="vue-flow__node-desc",ip="vue-flow__edge-desc",iI="vue-flow__aria-live",ap=["Enter"," ","Escape"],To={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Fi(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Ui(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 Ki(e){return{width:e.offsetWidth,height:e.offsetHeight}}function no(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function lp(e,n){return{x:no(e.x,n[0][0],n[1][0]),y:no(e.y,n[0][1],n[1][1])}}function sp(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function Sn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function oo(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!Sn(e)}function Er(e){return oo(e)&&"computedPosition"in e}function ji(e){return!Number.isNaN(e)&&Number.isFinite(e)}function aI(e){return ji(e.width)&&ji(e.height)&&ji(e.x)&&ji(e.y)}function lI(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 cp(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 dp(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 sI(...e){if(e.length===3){const[a,l,s]=e;return dp(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>Sn(a)&&a.source===r).map(a=>o.find(l=>oo(l)&&l.id===a.target))}function cI(...e){if(e.length===3){const[a,l,s]=e;return dp(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>Sn(a)&&a.target===r).map(a=>o.find(l=>oo(l)&&l.id===a.source))}function up({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function dI(e,n){return n.some(o=>Sn(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 Nr({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function xr({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?qi(s,l):s}function uI(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 fp({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function fI({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function pp(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=uI(n,fp({...r.computedPosition,...r.dimensions}))}return fI(n)}function mp(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...xr(n,o),width:n.width/o.zoom,height:n.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:d=!0,hidden:f=!1}=s,u=c.width??s.width??null,p=c.height??s.height??null;if(i&&!d||f)continue;const m=Ui(a,Fi(s)),g=u===null||p===null,y=r&&m>0,h=(u??0)*(p??0);(g||y||m>=h||s.dragging)&&l.push(s)}return l}function gp(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 Oo(e,n){if(typeof e=="number")return Math.floor((n-n/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const o=Number.parseFloat(e);if(!Number.isNaN(o))return Math.floor(o)}if(typeof e=="string"&&e.endsWith("%")){const o=Number.parseFloat(e);if(!Number.isNaN(o))return Math.floor(n*o*.01)}return vr(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function pI(e,n,o){if(typeof e=="string"||typeof e=="number"){const r=Oo(e,o),i=Oo(e,n);return{top:r,right:i,bottom:r,left:i,x:i*2,y:r*2}}if(typeof e=="object"){const r=Oo(e.top??e.y??0,o),i=Oo(e.bottom??e.y??0,o),a=Oo(e.left??e.x??0,n),l=Oo(e.right??e.x??0,n);return{top:r,right:l,bottom:i,left:a,x:a+l,y:r+i}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function mI(e,n,o,r,i,a){const{x:l,y:s}=Nr(e,{x:n,y:o,zoom:r}),{x:c,y:d}=Nr({x:e.x+e.width,y:e.y+e.height},{x:n,y:o,zoom:r}),f=i-c,u=a-d;return{left:Math.floor(l),top:Math.floor(s),right:Math.floor(f),bottom:Math.floor(u)}}function hp(e,n,o,r,i,a=.1){const l=pI(a,n,o),s=(n-l.x)/e.width,c=(o-l.y)/e.height,d=Math.min(s,c),f=no(d,r,i),u=e.x+e.width/2,p=e.y+e.height/2,m=n/2-u*f,g=o/2-p*f,y=mI(e,m,g,f,n,o),h={left:Math.min(y.left-l.left,0),top:Math.min(y.top-l.top,0),right:Math.min(y.right-l.right,0),bottom:Math.min(y.bottom-l.bottom,0)};return{x:m-h.left+h.right,y:g-h.top+h.bottom,zoom:f}}function gI(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function yp(e,n){if(!e.parentNode)return!1;const o=n.get(e.parentNode);return o?o.selected?!0:yp(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 _p(e){const n=e.ctrlKey&&Gi()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*n}function bp(e,n,o){return e<n?no(Math.abs(e-n),1,n)/n:e>o?-no(Math.abs(e-o),1,n)/n:0}function wp(e,n,o=15,r=40){const i=bp(e.x,r,n.width-r)*o,a=bp(e.y,r,n.height-r)*o;return[i,a]}function is(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 kp(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(Er(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&&Er(c)&&is(l,c)}break;case"dimensions":if(Er(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&&Er(c)&&(!!c.dimensions.width&&!!c.dimensions.height?is(l,c):t.nextTick(()=>{is(l,c)}))}break}return n}function vn(e,n){return{id:e,type:"select",selected:n}}function Cp(e){return{item:e,type:"add"}}function Ep(e){return{id:e,type:"remove"}}function Np(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function An(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(vn(a.id,l)))}return r}const xp=()=>{};function Ne(e){const n=new Set;let o=xp,r=()=>!1;const i=()=>n.size>0||r(),a=p=>{o=p},l=()=>{o=xp},s=p=>{r=p},c=()=>{r=()=>!1},d=p=>{n.delete(p)};return{on:p=>{n.add(p);const m=()=>d(p);return sr(m),{off:m}},off:d,trigger:p=>{const m=[o];return i()?m.push(...n):e&&m.push(e),Promise.allSettled(m.map(g=>g(p)))},hasListeners:i,listeners:n,setEmitter:a,removeEmitter:l,setHasEmitListeners:s,removeHasEmitListeners:c}}function Sp(e,n,o){let r=e;do{if(r&&r.matches(n))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function hI(e,n,o,r){var i,a;const l=new Map;for(const[s,c]of e)(c.selected||c.id===r)&&(!c.parentNode||!yp(c,e))&&(c.draggable||n&&typeof c.draggable>"u")&&e.get(s)&&l.set(s,{id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((i=c.computedPosition)==null?void 0:i.x)||0,y:o.y-((a=c.computedPosition)==null?void 0:a.y)||0},from:{x:c.computedPosition.x,y:c.computedPosition.y},extent:c.extent,parentNode:c.parentNode,dimensions:{...c.dimensions},expandParent:c.expandParent});return Array.from(l.values())}function as({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 vp(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 yI(e,n,o){const[r,i,a,l]=typeof e!="string"?vp(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 _I(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=yI(i,e,r);a&&(i=a)}else n(new ct(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]=vp(i.padding),d=(r==null?void 0:r.computedPosition.x)||0,f=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+d+c,i.range[0][1]+f+a],[i.range[1][0]+d-l,i.range[1][1]+f-s]]}return i==="parent"?[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]]:i}function bI({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function ls(e,n,o,r,i){const a=bI(e.dimensions,_I(e,o,r,i)),l=lp(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 $o(e,n,o=xe.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??EI(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case xe.Top:return{x:i+l/2,y:a};case xe.Right:return{x:i+l,y:a+s/2};case xe.Bottom:return{x:i+l/2,y:a+s};case xe.Left:return{x:i,y:a+s/2}}}function Ap(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function wI({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x+o,n.x+i),y2:Math.max(e.y+r,n.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const f=fp({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),u=Math.max(0,Math.min(f.x2,d.x2)-Math.max(f.x,d.x)),p=Math.max(0,Math.min(f.y2,d.y2)-Math.max(f.y,d.y));return Math.ceil(u*p)>0}function kI(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 Ip={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
|
|
215
215
|
Node: ${e}`,NODE_NOT_FOUND:e=>`Node not found
|
|
216
216
|
Node: ${e}`,NODE_MISSING_PARENT:(e,n)=>`Node is missing a parent
|
|
217
217
|
Node: ${e}
|
|
@@ -231,4 +231,4 @@ Edge: ${e}
|
|
|
231
231
|
Source: ${n}
|
|
232
232
|
Target: ${o}`,EDGE_ORPHANED:e=>`Edge was orphaned (suddenly missing source or target) and has been removed
|
|
233
233
|
Edge: ${e}`,EDGE_NOT_FOUND:e=>`Edge not found
|
|
234
|
-
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=Np[n])==null?void 0:r.call(Np,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function as(e){return"clientX"in e}function tI(e){return"sourceEvent"in e}function Zt(e,n){const o=as(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 nI(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 ji(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const oI=()=>!0;function ls(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function rI(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())Li(i,Mi(a))>0&&r.push(a);return r}const iI=250;function aI(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=rI(e,o,n+iI);for(const d of c){const f=[...((i=d.handleBounds)==null?void 0:i.source)??[],...((a=d.handleBounds)==null?void 0:a.target)??[]];for(const u of f){if(r.nodeId===u.nodeId&&r.type===u.type&&r.id===u.id)continue;const{x:p,y:m}=$o(d,u,u.position,!0),g=Math.sqrt((p-e.x)**2+(m-e.y)**2);g>n||(g<s?(l=[{...u,x:p,y:m}],s=g):g===s&&l.push({...u,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(f=>f.type===d)??l[0]}return l[0]}function xp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=oI},f,u,p,m){const g=a==="target",_=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:h,y}=Zt(e),w=l.elementFromPoint(h,y),b=w!=null&&w.classList.contains(`${s}-flow__handle`)?w:_,C={handleDomNode:b,isValid:!1,connection:null,toHandle:null};if(b){const N=Sp(void 0,b),k=b.getAttribute("data-nodeid"),S=b.getAttribute("data-handleid"),A=b.classList.contains("connectable"),R=b.classList.contains("connectableend");if(!k||!N)return C;const O={source:g?k:r,sourceHandle:g?S:i,target:g?r:k,targetHandle:g?i:S};C.connection=O;const E=A&&R&&(o===xn.Strict?g&&N==="source"||!g&&N==="target":k!==r||S!==i);C.isValid=E&&d(O,{nodes:u,edges:f,sourceNode:p(O.source),targetNode:p(O.target)}),C.toHandle=vp(k,N,S,m,o,!0)}return C}function Sp(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function lI(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function sI(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function vp(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===xn.Strict?(l=d.handleBounds)==null?void 0:l[n]:[...((s=d.handleBounds)==null?void 0:s.source)??[],...((c=d.handleBounds)==null?void 0:c.target)??[]],u=(o?f==null?void 0:f.find(p=>p.id===o):f==null?void 0:f[0])??null;return u&&a?{...u,...$o(d,u,u.position,!0)}:u}const ss={[xe.Left]:xe.Right,[xe.Right]:xe.Left,[xe.Top]:xe.Bottom,[xe.Bottom]:xe.Top},cI=["production","prod"];function Sr(e,...n){Ap()&&console.warn(`[Vue Flow]: ${e}`,...n)}function Ap(){return!cI.includes(process.env.NODE_ENV||"")}function Ip(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,...Fi(l)}}):null}function cs(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 dI(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 Sn(e)?i=e:i={...e,id:ap(e)},i=rp(i,void 0,r),jA(i,n)?!1:i}function uI(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?ap(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function Pp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!oo(l)){o(new lt(tt.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=FA(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 Tp(e,n,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,n)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,n)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,n))}}function ds(e,n,o){e.clear();for(const r of o){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=r,c={edgeId:r.id,source:i,target:a,sourceHandle:l,targetHandle:s},d=`${i}-${l}--${a}-${s}`,f=`${a}-${s}--${i}-${l}`;Tp("source",c,f,e,i,l),Tp("target",c,d,e,a,s)}}function Op(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function us(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=Sn(d)?d:dI(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new lt(tt.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){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:u,targetNode:p})){i(new lt(tt.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...rp(f,m,a),sourceNode:u,targetNode:p})}return c}const $p=Symbol("vueFlow"),Bp=Symbol("nodeId"),Vp=Symbol("nodeRef"),fI=Symbol("edgeId"),pI=Symbol("edgeRef"),Gi=Symbol("slots");function Rp(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodeLookup:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:f,nodesDraggable:u,panBy:p,findNode:m,multiSelectionActive:g,nodesSelectionActive:_,selectNodesOnDrag:h,removeSelectedElements:y,addSelectedNodes:w,updateNodePositions:b,emits:C}=Fe(),{onStart:N,onDrag:k,onStop:S,onClick:A,el:R,disabled:O,id:T,selectable:E,dragHandle:L}=e,x=t.shallowRef(!1);let B=[],P,q=null,G={x:void 0,y:void 0},K={x:0,y:0},F=null,I=!1,j=!1,z=0,ae=!1;const U=hI(),H=({x:te,y:se})=>{G={x:te,y:se};let V=!1;if(B=B.map(v=>{const M={x:te-v.distance.x,y:se-v.distance.y},{computedPosition:D}=is(v,o.value?ji(M,r.value):M,C.error,l.value,v.parentNode?m(v.parentNode):void 0);return V=V||v.position.x!==D.x||v.position.y!==D.y,v.position=D,v}),j=j||V,!!V&&(b(B,!0,!0),x.value=!0,F)){const[v,M]=rs({id:T,dragItems:B,findNode:m});k({event:F,node:v,nodes:M})}},ee=()=>{if(!q)return;const[te,se]=gp(K,q,f.value);if(te!==0||se!==0){const V={x:(G.x??0)-te/c.value.zoom,y:(G.y??0)-se/c.value.zoom};p({x:te,y:se})&&H(V)}z=requestAnimationFrame(ee)},_e=(te,se)=>{I=!0;const V=m(T);!h.value&&!g.value&&V&&(V.selected||y()),V&&t.toValue(E)&&h.value&&cs(V,g.value,w,y,_,!1,se);const v=U(te.sourceEvent);if(G=v,B=WA(a.value,u.value,v,T),B.length){const[M,D]=rs({id:T,dragItems:B,findNode:m});N({event:te.sourceEvent,node:M,nodes:D})}},be=(te,se)=>{var V;te.sourceEvent.type==="touchmove"&&te.sourceEvent.touches.length>1||(j=!1,s.value===0&&_e(te,se),G=U(te.sourceEvent),q=((V=n.value)==null?void 0:V.getBoundingClientRect())||null,K=Zt(te.sourceEvent,q))},re=(te,se)=>{const V=U(te.sourceEvent);if(!ae&&I&&d.value&&(ae=!0,ee()),!I){const v=V.xSnapped-(G.x??0),M=V.ySnapped-(G.y??0);Math.sqrt(v*v+M*M)>s.value&&_e(te,se)}(G.x!==V.xSnapped||G.y!==V.ySnapped)&&B.length&&I&&(F=te.sourceEvent,K=Zt(te.sourceEvent,q),H(V))},J=te=>{let se=!1;if(!I&&!x.value&&!g.value){const V=te.sourceEvent,v=U(V),M=v.xSnapped-(G.x??0),D=v.ySnapped-(G.y??0),ie=Math.sqrt(M*M+D*D);ie!==0&&ie<=s.value&&(A==null||A(V),se=!0)}if(B.length&&!se){j&&(b(B,!1,!1),j=!1);const[V,v]=rs({id:T,dragItems:B,findNode:m});S({event:te.sourceEvent,node:V,nodes:v})}B=[],x.value=!1,ae=!1,I=!1,G={x:void 0,y:void 0},cancelAnimationFrame(z)};return t.watch([()=>t.toValue(O),R],([te,se],V,v)=>{if(se){const M=Mt(se);te||(P=LS().on("start",D=>be(D,se)).on("drag",D=>re(D,se)).on("end",D=>J(D)).filter(D=>{const ie=D.target,X=t.toValue(L);return!D.button&&(!i.value||!kp(ie,`.${i.value}`,se)&&(!X||kp(ie,X,se)))}),M.call(P)),v(()=>{M.on(".drag",null),P&&(P.on("start",null),P.on("drag",null),P.on("end",null))})}}),x}function mI(){return{doubleClick:Ne(),click:Ne(),mouseEnter:Ne(),mouseMove:Ne(),mouseLeave:Ne(),contextMenu:Ne(),updateStart:Ne(),update:Ne(),updateEnd:Ne()}}function gI(e,n){const o=mI();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 hI(){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=tI(i)?i.sourceEvent:i,{x:c,y:d}=Zt(s,l),f=Nr({x:c,y:d},e.value),{x:u,y:p}=o.value?ji(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function qi(){return!0}function Dp({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:g,autoPanSpeed:_,findNode:h,panBy:y,startConnection:w,updateConnection:b,endConnection:C,emits:N,viewport:k,edges:S,nodes:A,isValidConnection:R,nodeLookup:O}=Fe();let T=null,E=!1,L=null;function x(P){var q;const G=t.toValue(o)==="target",K=as(P),F=op(P.target),I=P.currentTarget;if(I&&(K&&P.button===0||!K)){let j=function(Z){V=Zt(Z,J),H=aI(Nr(V,k.value,!1,[1,1]),f.value,O.value,D),v||(M(),v=!0);const ue=xp(Z,{handle:H,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:G?"target":"source",isValidConnection:U,doc:F,lib:"vue",flowId:s,nodeLookup:O.value},S.value,A.value,h,O.value);L=ue.handleDomNode,T=ue.connection,E=sI(!!H,ue.isValid);const $={...Q,isValid:E,to:ue.toHandle&&E?Er({x:ue.toHandle.x,y:ue.toHandle.y},k.value):V,toHandle:ue.toHandle,toPosition:E&&ue.toHandle?ue.toHandle.position:ss[D.position],toNode:ue.toHandle?O.value.get(ue.toHandle.nodeId):null};if(E&&H&&(Q!=null&&Q.toHandle)&&$.toHandle&&Q.toHandle.type===$.toHandle.type&&Q.toHandle.nodeId===$.toHandle.nodeId&&Q.toHandle.id===$.toHandle.id&&Q.to.x===$.to.x&&Q.to.y===$.to.y)return;const oe=H??ue.toHandle;if(b(oe&&E?Er({x:oe.x,y:oe.y},k.value):V,oe,lI(!!oe,E)),Q=$,!H&&!E&&!L)return ls(se);T&&T.source!==T.target&&L&&(ls(se),se=L,L.classList.add("connecting","vue-flow__handle-connecting"),L.classList.toggle("valid",!!E),L.classList.toggle("vue-flow__handle-valid",!!E))},z=function(Z){"touches"in Z&&Z.touches.length>0||((H||L)&&T&&E&&(a?a(Z,T):N.connect(T)),N.connectEnd(Z),i&&(l==null||l(Z)),ls(se),cancelAnimationFrame(ee),C(Z),v=!1,E=!1,T=null,L=null,F.removeEventListener("mousemove",j),F.removeEventListener("mouseup",z),F.removeEventListener("touchmove",j),F.removeEventListener("touchend",z))};const ae=h(t.toValue(n));let U=t.toValue(r)||R.value||qi;!U&&ae&&(U=(G?ae.isValidSourcePos:ae.isValidTargetPos)||qi);let H,ee=0;const{x:_e,y:be}=Zt(P),re=Sp(t.toValue(i),I),J=(q=c.value)==null?void 0:q.getBoundingClientRect();if(!J||!re)return;const te=vp(t.toValue(n),re,t.toValue(e),O.value,d.value);if(!te)return;let se,V=Zt(P,J),v=!1;const M=()=>{if(!g.value)return;const[Z,ue]=gp(V,J,_.value);y({x:Z,y:ue}),ee=requestAnimationFrame(M)},D={...te,nodeId:t.toValue(n),type:re,position:te.position},ie=O.value.get(t.toValue(n)),ne={inProgress:!0,isValid:null,from:$o(ie,D,xe.Left,!0),fromHandle:D,fromPosition:D.position,fromNode:ie,to:V,toHandle:null,toPosition:ss[D.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:re,position:(I==null?void 0:I.getAttribute("data-handlepos"))||xe.Top,...V},{x:_e-J.left,y:be-J.top}),N.connectStart({event:P,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:re});let Q=ne;F.addEventListener("mousemove",j),F.addEventListener("mouseup",z),F.addEventListener("touchmove",j),F.addEventListener("touchend",z)}}function B(P){var q,G;if(!u.value)return;const K=t.toValue(o)==="target";if(!p.value){N.clickConnectStart({event:P,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:xe.Top,...Zt(P)},void 0,!0);return}let F=t.toValue(r)||R.value||qi;const I=h(t.toValue(n));if(!F&&I&&(F=(K?I.isValidSourcePos:I.isValidTargetPos)||qi),I&&(typeof I.connectable>"u"?m.value:I.connectable)===!1)return;const j=op(P.target),z=xp(P,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:xe.Top,...Zt(P)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:F,doc:j,lib:"vue",flowId:s,nodeLookup:O.value},S.value,A.value,h,O.value),ae=((q=z.connection)==null?void 0:q.source)===((G=z.connection)==null?void 0:G.target);z.isValid&&z.connection&&!ae&&N.connect(z.connection),N.clickConnectEnd(P),C(P,!0)}return{handlePointerDown:x,handleClick:B}}function yI(){return t.inject(Bp,"")}function Mp(e){const n=e??yI()??"",o=t.inject(Vp,t.ref(null)),{findNode:r,edges:i,emits:a}=Fe(),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(()=>dp([l],i.value))}}function _I(){return{doubleClick:Ne(),click:Ne(),mouseEnter:Ne(),mouseMove:Ne(),mouseLeave:Ne(),contextMenu:Ne(),dragStart:Ne(),drag:Ne(),dragStop:Ne()}}function bI(e,n){const o=_I();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 Lp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Fe();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,g=c.y*u*p,_=[];for(const h of e.value)if(h.draggable||l&&typeof h.draggable>"u"){const y={x:h.computedPosition.x+m,y:h.computedPosition.y+g},{position:w}=is(h,y,s.error,n.value,h.parentNode?r(h.parentNode):void 0);_.push({id:h.id,position:w,from:h.position,distance:{x:c.x,y:c.y},dimensions:h.dimensions})}o(_,!0,!1)}}const zi=.1,wI=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function In(){return Sr("Viewport not initialized yet."),Promise.resolve(!1)}const kI={zoomIn:In,zoomOut:In,zoomTo:In,fitView:In,setCenter:In,fitBounds:In,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:In,setTransform:In,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function CI(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?pr:Ai).scaleBy(fs(e.d3Selection,i==null?void 0:i.duration,i==null?void 0:i.ease,()=>{a(!0)}),r):a(!1)})}function o(r,i,a,l){return new Promise(s=>{var c;const{x:d,y:f}=np({x:-r,y:-i},e.translateExtent),u=Po.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?pr:Ai).transform(fs(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),u):s(!1)})}return t.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>n(1.2,i),zoomOut:i=>n(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?pr:Ai).scaleTo(fs(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:zi,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=sp(s),{x:d,y:f,zoom:u}=up(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??zi);return o(d,f,u,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,d=e.dimensions.height/2-a*s;return o(c,d,s,l)},fitBounds:(i,a={padding:zi})=>{const{x:l,y:s,zoom:c}=up(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding??zi);return o(l,s,c,a)},project:i=>Nr(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 Nr(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 Er(s,e.viewport)}return{x:0,y:0}}}:kI)}function fs(e,n=0,o=wI,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function EI(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let _,h,y=!!(o.nodes.value.length||o.edges.value.length);_=xo([e.modelValue,()=>{var w,b;return(b=(w=e.modelValue)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setElements(w),!h&&!y&&w.length?y=!0:h==null||h.resume())}),h=xo([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,b])=>{var C;(C=e.modelValue)!=null&&C.value&&Array.isArray(e.modelValue.value)&&(_==null||_.pause(),e.modelValue.value=[...w,...b],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),h==null||h.stop()})})},a=()=>{r.run(()=>{let _,h,y=!!o.nodes.value.length;_=xo([e.nodes,()=>{var w,b;return(b=(w=e.nodes)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setNodes(w),!h&&!y&&w.length?y=!0:h==null||h.resume())}),h=xo([o.nodes,()=>o.nodes.value.length],([w])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(_==null||_.pause(),e.nodes.value=[...w],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),h==null||h.stop()})})},l=()=>{r.run(()=>{let _,h,y=!!o.edges.value.length;_=xo([e.edges,()=>{var w,b;return(b=(w=e.edges)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setEdges(w),!h&&!y&&w.length?y=!0:h==null||h.resume())}),h=xo([o.edges,()=>o.edges.value.length],([w])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(_==null||_.pause(),e.edges.value=[...w],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),h==null||h.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})})},d=()=>{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})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{nt(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const _=async h=>{let y=h;typeof n.autoConnect=="function"&&(y=await n.autoConnect(h)),y!==!1&&o.addEdges([y])};t.watch(()=>n.autoConnect,()=>{nt(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(h,y,w)=>{h?o.onConnect(_):o.hooks.value.connect.off(_),w(()=>{o.hooks.value.connect.off(_)})},{immediate:!0})})},m=()=>{const _=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const h of Object.keys(n)){const y=h;if(!_.includes(y)){const w=t.toRef(()=>n[y]),b=o[y];t.isRef(b)&&r.run(()=>{t.watch(w,C=>{nt(C)&&(b.value=C)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function NI(){return{edgesChange:Ne(),nodesChange:Ne(),nodeDoubleClick:Ne(),nodeClick:Ne(),nodeMouseEnter:Ne(),nodeMouseMove:Ne(),nodeMouseLeave:Ne(),nodeContextMenu:Ne(),nodeDragStart:Ne(),nodeDrag:Ne(),nodeDragStop:Ne(),nodesInitialized:Ne(),miniMapNodeClick:Ne(),miniMapNodeDoubleClick:Ne(),miniMapNodeMouseEnter:Ne(),miniMapNodeMouseMove:Ne(),miniMapNodeMouseLeave:Ne(),connect:Ne(),connectStart:Ne(),connectEnd:Ne(),clickConnectStart:Ne(),clickConnectEnd:Ne(),paneReady:Ne(),init:Ne(),move:Ne(),moveStart:Ne(),moveEnd:Ne(),selectionDragStart:Ne(),selectionDrag:Ne(),selectionDragStop:Ne(),selectionContextMenu:Ne(),selectionStart:Ne(),selectionEnd:Ne(),viewportChangeStart:Ne(),viewportChange:Ne(),viewportChangeEnd:Ne(),paneScroll:Ne(),paneClick:Ne(),paneContextMenu:Ne(),paneMouseEnter:Ne(),paneMouseMove:Ne(),paneMouseLeave:Ne(),edgeContextMenu:Ne(),edgeMouseEnter:Ne(),edgeMouseMove:Ne(),edgeMouseLeave:Ne(),edgeDoubleClick:Ne(),edgeClick:Ne(),edgeUpdateStart:Ne(),edgeUpdate:Ne(),edgeUpdateEnd:Ne(),updateNodeInternals:Ne(),error:Ne(e=>Sr(e.message))}}function xI(e,n){const o=t.getCurrentInstance();t.onBeforeMount(()=>{for(const[i,a]of Object.entries(n.value)){const l=s=>{e(i,s)};a.setEmitter(l),lr(a.removeEmitter),a.setHasEmitListeners(()=>r(i)),lr(a.removeHasEmitListeners)}});function r(i){var a;const l=SI(i);return!!((a=o==null?void 0:o.vnode.props)==null?void 0:a[l])}}function SI(e){const[n,...o]=e.split(":");return`on${n.replace(/(?:^|-)(\w)/g,(i,a)=>a.toUpperCase())}${o.length?`:${o.join(":")}`:""}`}function Fp(){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:ts.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:wr.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:to.Bezier,style:{}},connectionMode:xn.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:NI(),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 vI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function AI(e,n,o){const r=CI(e),i=V=>{const v=V??[];e.hooks.updateNodeInternals.trigger(v)},a=V=>KA(V,e.nodes,e.edges),l=V=>UA(V,e.nodes,e.edges),s=V=>dp(V,e.edges),c=({id:V,type:v,nodeId:M})=>{var D;const ie=V?`-${v}-${V}`:`-${v}`;return Array.from(((D=e.connectionLookup.get(`${M}${ie}`))==null?void 0:D.values())??[])},d=V=>{if(V)return n.value.get(V)},f=V=>{if(V)return o.value.get(V)},u=(V,v,M)=>{var D,ie;const X=[];for(const ne of V){const Q={id:ne.id,type:"position",dragging:M,from:ne.from};if(v&&(Q.position=ne.position,ne.parentNode)){const Z=d(ne.parentNode);Q.position={x:Q.position.x-(((D=Z==null?void 0:Z.computedPosition)==null?void 0:D.x)??0),y:Q.position.y-(((ie=Z==null?void 0:Z.computedPosition)==null?void 0:ie.y)??0)}}X.push(Q)}X!=null&&X.length&&e.hooks.nodesChange.trigger(X)},p=V=>{if(!e.vueFlowRef)return;const v=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!v)return;const M=window.getComputedStyle(v),{m22:D}=new window.DOMMatrixReadOnly(M.transform),ie=[];for(const X of V){const ne=X,Q=d(ne.id);if(Q){const Z=Fi(ne.nodeElement);if(!!(Z.width&&Z.height&&(Q.dimensions.width!==Z.width||Q.dimensions.height!==Z.height||ne.forceUpdate))){const $=ne.nodeElement.getBoundingClientRect();Q.dimensions=Z,Q.handleBounds.source=Ip("source",ne.nodeElement,$,D,Q.id),Q.handleBounds.target=Ip("target",ne.nodeElement,$,D,Q.id),ie.push({id:Q.id,type:"dimensions",dimensions:Z})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),ie.length&&e.hooks.nodesChange.trigger(ie)},m=(V,v)=>{const M=new Set,D=new Set;for(const ne of V)oo(ne)?M.add(ne.id):Sn(ne)&&D.add(ne.id);const ie=An(n.value,M,!0),X=An(o.value,D);if(e.multiSelectionActive){for(const ne of M)ie.push(vn(ne,v));for(const ne of D)X.push(vn(ne,v))}ie.length&&e.hooks.nodesChange.trigger(ie),X.length&&e.hooks.edgesChange.trigger(X)},g=V=>{if(e.multiSelectionActive){const v=V.map(M=>vn(M.id,!0));e.hooks.nodesChange.trigger(v);return}e.hooks.nodesChange.trigger(An(n.value,new Set(V.map(v=>v.id)),!0)),e.hooks.edgesChange.trigger(An(o.value))},_=V=>{if(e.multiSelectionActive){const v=V.map(M=>vn(M.id,!0));e.hooks.edgesChange.trigger(v);return}e.hooks.edgesChange.trigger(An(o.value,new Set(V.map(v=>v.id)))),e.hooks.nodesChange.trigger(An(n.value,new Set,!0))},h=V=>{m(V,!0)},y=V=>{const M=(V||e.nodes).map(D=>(D.selected=!1,vn(D.id,!1)));e.hooks.nodesChange.trigger(M)},w=V=>{const M=(V||e.edges).map(D=>(D.selected=!1,vn(D.id,!1)));e.hooks.edgesChange.trigger(M)},b=V=>{if(!V||!V.length)return m([],!1);const v=V.reduce((M,D)=>{const ie=vn(D.id,!1);return oo(D)?M.nodes.push(ie):M.edges.push(ie),M},{nodes:[],edges:[]});v.nodes.length&&e.hooks.nodesChange.trigger(v.nodes),v.edges.length&&e.hooks.edgesChange.trigger(v.edges)},C=V=>{var v;(v=e.d3Zoom)==null||v.scaleExtent([V,e.maxZoom]),e.minZoom=V},N=V=>{var v;(v=e.d3Zoom)==null||v.scaleExtent([e.minZoom,V]),e.maxZoom=V},k=V=>{var v;(v=e.d3Zoom)==null||v.translateExtent(V),e.translateExtent=V},S=V=>{e.nodeExtent=V,i()},A=V=>{var v;(v=e.d3Zoom)==null||v.clickDistance(V)},R=V=>{e.nodesDraggable=V,e.nodesConnectable=V,e.elementsSelectable=V},O=V=>{const v=V instanceof Function?V(e.nodes):V;!e.initialized&&!v.length||(e.nodes=Pp(v,d,e.hooks.error.trigger))},T=V=>{const v=V instanceof Function?V(e.edges):V;if(!e.initialized&&!v.length)return;const M=us(v,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);ds(e.connectionLookup,o.value,M),e.edges=M},E=V=>{const v=V instanceof Function?V([...e.nodes,...e.edges]):V;!e.initialized&&!v.length||(O(v.filter(oo)),T(v.filter(Sn)))},L=V=>{let v=V instanceof Function?V(e.nodes):V;v=Array.isArray(v)?v:[v];const M=Pp(v,d,e.hooks.error.trigger),D=[];for(const ie of M)D.push(yp(ie));D.length&&e.hooks.nodesChange.trigger(D)},x=V=>{let v=V instanceof Function?V(e.edges):V;v=Array.isArray(v)?v:[v];const M=us(v,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),D=[];for(const ie of M)D.push(yp(ie));D.length&&e.hooks.edgesChange.trigger(D)},B=(V,v=!0,M=!1)=>{const D=V instanceof Function?V(e.nodes):V,ie=Array.isArray(D)?D:[D],X=[],ne=[];function Q(ue){const $=s(ue);for(const oe of $)(!nt(oe.deletable)||oe.deletable)&&ne.push(bp(oe.id,oe.source,oe.target,oe.sourceHandle,oe.targetHandle))}function Z(ue){const $=[];for(const oe of e.nodes)oe.parentNode===ue&&$.push(oe);if($.length){for(const oe of $)X.push(_p(oe.id));v&&Q($);for(const oe of $)Z(oe.id)}}for(const ue of ie){const $=typeof ue=="string"?d(ue):ue;$&&(nt($.deletable)&&!$.deletable||(X.push(_p($.id)),v&&Q([$]),M&&Z($.id)))}ne.length&&e.hooks.edgesChange.trigger(ne),X.length&&e.hooks.nodesChange.trigger(X)},P=V=>{const v=V instanceof Function?V(e.edges):V,M=Array.isArray(v)?v:[v],D=[];for(const ie of M){const X=typeof ie=="string"?f(ie):ie;X&&(nt(X.deletable)&&!X.deletable||D.push(bp(typeof ie=="string"?ie:ie.id,X.source,X.target,X.sourceHandle,X.targetHandle)))}e.hooks.edgesChange.trigger(D)},q=(V,v,M=!0)=>{const D=f(V.id);if(!D)return!1;const ie=e.edges.indexOf(D),X=uI(V,v,D,M,e.hooks.error.trigger);if(X){const[ne]=us([X],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((Q,Z)=>Z===ie?ne:Q),ds(e.connectionLookup,o.value,[ne]),ne}return!1},G=(V,v,M={replace:!1})=>{const D=f(V);if(!D)return;const ie=typeof v=="function"?v(D):v;D.data=M.replace?ie:{...D.data,...ie}},K=V=>hp(V,e.nodes),F=V=>{const v=hp(V,e.edges);return ds(e.connectionLookup,o.value,v),v},I=(V,v,M={replace:!1})=>{const D=d(V);if(!D)return;const ie=typeof v=="function"?v(D):v;M.replace?e.nodes.splice(e.nodes.indexOf(D),1,ie):Object.assign(D,ie)},j=(V,v,M={replace:!1})=>{const D=d(V);if(!D)return;const ie=typeof v=="function"?v(D):v;D.data=M.replace?ie:{...D.data,...ie}},z=(V,v,M=!1)=>{M?e.connectionClickStartHandle=V:e.connectionStartHandle=V,e.connectionEndHandle=null,e.connectionStatus=null,v&&(e.connectionPosition=v)},ae=(V,v=null,M=null)=>{e.connectionStartHandle&&(e.connectionPosition=V,e.connectionEndHandle=v,e.connectionStatus=M)},U=(V,v)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,v?e.connectionClickStartHandle=null:e.connectionStartHandle=null},H=V=>{const v=LA(V),M=v?null:Cr(V)?V:d(V.id);return!v&&!M?[null,null,v]:[v?V:Mi(M),M,v]},ee=(V,v=!0,M=e.nodes)=>{const[D,ie,X]=H(V);if(!D)return[];const ne=[];for(const Q of M||e.nodes){if(!X&&(Q.id===ie.id||!Q.computedPosition))continue;const Z=Mi(Q),ue=Li(Z,D);(v&&ue>0||ue>=Z.width*Z.height||ue>=Number(D.width)*Number(D.height))&&ne.push(Q)}return ne},_e=(V,v,M=!0)=>{const[D]=H(V);if(!D)return!1;const ie=Li(D,v);return M&&ie>0||ie>=Number(D.width)*Number(D.height)},be=V=>{const{viewport:v,dimensions:M,d3Zoom:D,d3Selection:ie,translateExtent:X}=e;if(!D||!ie||!V.x&&!V.y)return!1;const ne=Po.translate(v.x+V.x,v.y+V.y).scale(v.zoom),Q=[[0,0],[M.width,M.height]],Z=D.constrain()(ne,Q,X),ue=e.viewport.x!==Z.x||e.viewport.y!==Z.y||e.viewport.zoom!==Z.k;return D.transform(ie,Z),ue},re=V=>{const v=V instanceof Function?V(e):V,M=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];nt(v.defaultEdgeOptions)&&(e.defaultEdgeOptions=v.defaultEdgeOptions);const D=v.modelValue||v.nodes||v.edges?[]:void 0;D&&(v.modelValue&&D.push(...v.modelValue),v.nodes&&D.push(...v.nodes),v.edges&&D.push(...v.edges),E(D));const ie=()=>{nt(v.maxZoom)&&N(v.maxZoom),nt(v.minZoom)&&C(v.minZoom),nt(v.translateExtent)&&k(v.translateExtent)};for(const X of Object.keys(v)){const ne=X,Q=v[ne];![...vI,...M].includes(ne)&&nt(Q)&&(e[ne]=Q)}Bl(()=>e.d3Zoom).not.toBeNull().then(ie),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:E,setNodes:O,setEdges:T,addNodes:L,addEdges:x,removeNodes:B,removeEdges:P,findNode:d,findEdge:f,updateEdge:q,updateEdgeData:G,updateNode:I,updateNodeData:j,applyEdgeChanges:F,applyNodeChanges:K,addSelectedElements:h,addSelectedNodes:g,addSelectedEdges:_,setMinZoom:C,setMaxZoom:N,setTranslateExtent:k,setNodeExtent:S,setPaneClickDistance:A,removeSelectedElements:b,removeSelectedNodes:y,removeSelectedEdges:w,startConnection:z,updateConnection:ae,endConnection:U,setInteractive:R,setState:re,getIntersectingNodes:ee,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:_e,panBy:be,fitView:V=>r.value.fitView(V),zoomIn:V=>r.value.zoomIn(V),zoomOut:V=>r.value.zoomOut(V),zoomTo:(V,v)=>r.value.zoomTo(V,v),setViewport:(V,v)=>r.value.setViewport(V,v),setTransform:(V,v)=>r.value.setTransform(V,v),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(V,v,M)=>r.value.setCenter(V,v,M),fitBounds:(V,v)=>r.value.fitBounds(V,v),project:V=>r.value.project(V),screenToFlowCoordinate:V=>r.value.screenToFlowCoordinate(V),flowToScreenCoordinate:V=>r.value.flowToScreenCoordinate(V),toObject:()=>{const V=[],v=[];for(const M of e.nodes){const{computedPosition:D,handleBounds:ie,selected:X,dimensions:ne,isParent:Q,resizing:Z,dragging:ue,events:$,...oe}=M;V.push(oe)}for(const M of e.edges){const{selected:D,sourceNode:ie,targetNode:X,events:ne,...Q}=M;v.push(Q)}return JSON.parse(JSON.stringify({nodes:V,edges:v,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:V=>new Promise(v=>{const{nodes:M,edges:D,position:ie,zoom:X,viewport:ne}=V;M&&O(M),D&&T(D);const[Q,Z]=ne!=null&&ne.x&&(ne!=null&&ne.y)?[ne.x,ne.y]:ie??[null,null];if(Q&&Z){const ue=(ne==null?void 0:ne.zoom)||X||e.viewport.zoom;return Bl(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:Q,y:Z,zoom:ue}).then(()=>{v(!0)})})}else v(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const V=Fp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const v=Po.translate(V.defaultViewport.x??0,V.defaultViewport.y??0).scale(no(V.defaultViewport.zoom??1,V.minZoom,V.maxZoom)),M=e.viewportRef.getBoundingClientRect(),D=[[0,0],[M.width,M.height]],ie=e.d3Zoom.constrain()(v,D,V.translateExtent);e.d3Zoom.transform(e.d3Selection,ie)}re(V)},$destroy:()=>{}}}const II=["data-id","data-handleid","data-nodeid","data-handlepos"],PI={name:"Handle",compatConfig:{MODE:3}},Jt=t.defineComponent({...PI,props:{id:{default:null},type:{},position:{default:()=>xe.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Fe(),{id:m,node:g,nodeEl:_,connectedEdges:h}=Mp(),y=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),C=t.toRef(()=>{var T,E,L,x,B,P;return((T=l.value)==null?void 0:T.nodeId)===m&&((E=l.value)==null?void 0:E.id)===e.id&&((L=l.value)==null?void 0:L.type)===r.value||((x=c.value)==null?void 0:x.nodeId)===m&&((B=c.value)==null?void 0:B.id)===e.id&&((P=c.value)==null?void 0:P.type)===r.value}),N=t.toRef(()=>{var T,E,L;return((T=s.value)==null?void 0:T.nodeId)===m&&((E=s.value)==null?void 0:E.id)===e.id&&((L=s.value)==null?void 0:L.type)===r.value}),{handlePointerDown:k,handleClick:S}=Dp({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),A=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!h.value.some(T=>{const E=T[`${r.value}Handle`];return T[r.value]!==m?!1:E?E===e.id:!0}):typeof e.connectable=="number"?h.value.filter(T=>{const E=T[`${r.value}Handle`];return T[r.value]!==m?!1:E?E===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(g,h.value):nt(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var T;if(!g.dimensions.width||!g.dimensions.height)return;const E=(T=g.handleBounds[r.value])==null?void 0:T.find(K=>K.id===e.id);if(!d.value||E)return;const L=d.value.querySelector(".vue-flow__transformationpane");if(!_.value||!y.value||!L||!e.id)return;const x=_.value.getBoundingClientRect(),B=y.value.getBoundingClientRect(),P=window.getComputedStyle(L),{m22:q}=new window.DOMMatrixReadOnly(P.transform),G={id:e.id,position:e.position,x:(B.left-x.left)/q,y:(B.top-x.top)/q,type:r.value,nodeId:m,...Fi(y.value)};g.handleBounds[r.value]=[...g.handleBounds[r.value]??[],G]});function R(T){const E=as(T);A.value&&w.value&&(E&&T.button===0||!E)&&k(T)}function O(T){!m||!s.value&&!w.value||A.value&&S(T)}return n({handleClick:S,handlePointerDown:k,onClick:O,onPointerDown:R}),(T,E)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:y,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":T.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${T.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:A.value,connecting:N.value,connectablestart:w.value,connectableend:b.value,connectionindicator:A.value&&(w.value&&!C.value||b.value&&C.value)}]]),onMousedown:R,onTouchstartPassive:R,onClick:O},[t.renderSlot(T.$slots,"default",{id:T.id})],42,II))}}),Hi=function({sourcePosition:e=xe.Bottom,targetPosition:n=xe.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})]};Hi.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Hi.inheritAttrs=!1,Hi.compatConfig={MODE:3};const TI=Hi,Yi=function({targetPosition:e=xe.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])]};Yi.props=["targetPosition","label","isValidTargetPos","connectable","data"],Yi.inheritAttrs=!1,Yi.compatConfig={MODE:3};const OI=Yi,Wi=function({sourcePosition:e=xe.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})]};Wi.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Wi.inheritAttrs=!1,Wi.compatConfig={MODE:3};const $I=Wi,BI=["transform"],VI=["width","height","x","y","rx","ry"],RI=["y"],DI={name:"EdgeText",compatConfig:{MODE:3}},MI=t.defineComponent({...DI,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,VI)):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,BI))}}),LI=["id","d","marker-end","marker-start"],FI=["d","stroke-width"],UI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Xi=t.defineComponent({...UI,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,FI)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(MI,{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 Up({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 Kp({sourceX:e,sourceY:n,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),u=Math.abs(d-n);return[c,d,f,u]}function Zi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function jp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case xe.Left:l=n-Zi(n-r,a),s=o;break;case xe.Right:l=n+Zi(r-n,a),s=o;break;case xe.Top:l=n,s=o-Zi(o-i,a);break;case xe.Bottom:l=n,s=o+Zi(i-o,a);break}return[l,s]}function Gp(e){const{sourceX:n,sourceY:o,sourcePosition:r=xe.Bottom,targetX:i,targetY:a,targetPosition:l=xe.Top,curvature:s=.25}=e,[c,d]=jp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=jp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,g,_]=Kp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,g,_]}function qp({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case xe.Left:case xe.Right:a=.5*(n+r),l=o;break;case xe.Top:case xe.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function zp(e){const{sourceX:n,sourceY:o,sourcePosition:r=xe.Bottom,targetX:i,targetY:a,targetPosition:l=xe.Top}=e,[s,c]=qp({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=qp({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,g]=Kp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${n},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,g]}const Hp={[xe.Left]:{x:-1,y:0},[xe.Right]:{x:1,y:0},[xe.Top]:{x:0,y:-1},[xe.Bottom]:{x:0,y:1}};function KI({source:e,sourcePosition:n=xe.Bottom,target:o}){return n===xe.Left||n===xe.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 Yp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function jI({source:e,sourcePosition:n=xe.Bottom,target:o,targetPosition:r=xe.Top,center:i,offset:a}){const l=Hp[n],s=Hp[r],c={x:e.x+l.x*a,y:e.y+l.y*a},d={x:o.x+s.x*a,y:o.y+s.y*a},f=KI({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,g,_;const h={x:0,y:0},y={x:0,y:0},[w,b,C,N]=Up({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){g=i.x??w,_=i.y??b;const S=[{x:g,y:c.y},{x:g,y:d.y}],A=[{x:c.x,y:_},{x:d.x,y:_}];l[u]===p?m=u==="x"?S:A:m=u==="x"?A:S}else{const S=[{x:c.x,y:d.y}],A=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?A:S:m=l.y===p?S:A,n===r){const L=Math.abs(e[u]-o[u]);if(L<=a){const x=Math.min(a-1,a-L);l[u]===p?h[u]=(c[u]>e[u]?-1:1)*x:y[u]=(d[u]>o[u]?-1:1)*x}}if(n!==r){const L=u==="x"?"y":"x",x=l[u]===s[L],B=c[L]>d[L],P=c[L]<d[L];(l[u]===1&&(!x&&B||x&&P)||l[u]!==1&&(!x&&P||x&&B))&&(m=u==="x"?S:A)}const R={x:c.x+h.x,y:c.y+h.y},O={x:d.x+y.x,y:d.y+y.y},T=Math.max(Math.abs(R.x-m[0].x),Math.abs(O.x-m[0].x)),E=Math.max(Math.abs(R.y-m[0].y),Math.abs(O.y-m[0].y));T>=E?(g=(R.x+O.x)/2,_=m[0].y):(g=m[0].x,_=(R.y+O.y)/2)}return[[e,{x:c.x+h.x,y:c.y+h.y},...m,{x:d.x+y.x,y:d.y+y.y},o],g,_,C,N]}function GI(e,n,o,r){const i=Math.min(Yp(e,n)/2,Yp(n,o)/2,r),{x:a,y:l}=n;if(e.x===a&&a===o.x||e.y===l&&l===o.y)return`L${a} ${l}`;if(e.y===l){const d=e.x<o.x?-1:1,f=e.y<o.y?1:-1;return`L ${a+i*d},${l}Q ${a},${l} ${a},${l+i*f}`}const s=e.x<o.x?1:-1,c=e.y<o.y?-1:1;return`L ${a},${l+i*c}Q ${a},${l} ${a+i*s},${l}`}function ps(e){const{sourceX:n,sourceY:o,sourcePosition:r=xe.Bottom,targetX:i,targetY:a,targetPosition:l=xe.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,g,_]=jI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((y,w,b)=>{let C;return b>0&&b<u.length-1?C=GI(u[b-1],w,u[b+1],s):C=`${b===0?"M":"L"}${w.x} ${w.y}`,y+=C,y},""),p,m,g,_]}function qI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Up({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const zI=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]=qI(e);return t.h(Xi,{path:o,labelX:r,labelY:i,...n,...e})}}}),Wp=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]=ps({...e,sourcePosition:e.sourcePosition??xe.Bottom,targetPosition:e.targetPosition??xe.Top});return t.h(Xi,{path:o,labelX:r,labelY:i,...n,...e})}}}),HI=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(Wp,{...e,...n,borderRadius:0})}}),YI=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]=Gp({...e,sourcePosition:e.sourcePosition??xe.Bottom,targetPosition:e.targetPosition??xe.Top});return t.h(Xi,{path:o,labelX:r,labelY:i,...n,...e})}}}),WI=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]=zp({...e,sourcePosition:e.sourcePosition??xe.Bottom,targetPosition:e.targetPosition??xe.Top});return t.h(Xi,{path:o,labelX:r,labelY:i,...n,...e})}}}),XI={input:$I,default:TI,output:OI},ZI={default:YI,straight:zI,step:HI,smoothstep:Wp,simplebezier:WI};function JI(e,n,o){const r=t.computed(()=>_=>n.value.get(_)),i=t.computed(()=>_=>o.value.get(_)),a=t.computed(()=>{const _={...ZI,...e.edgeTypes},h=Object.keys(_);for(const y of e.edges)y.type&&!h.includes(y.type)&&(_[y.type]=y.type);return _}),l=t.computed(()=>{const _={...XI,...e.nodeTypes},h=Object.keys(_);for(const y of e.nodes)y.type&&!h.includes(y.type)&&(_[y.type]=y.type);return _}),s=t.computed(()=>e.onlyRenderVisibleElements?cp(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const _=[];for(const h of e.edges){const y=n.value.get(h.source),w=n.value.get(h.target);QA({sourcePos:y.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:y.dimensions.width,sourceHeight:y.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&_.push(h)}return _}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const _=[];for(const h of e.nodes)h.selected&&_.push(h);return _}),u=t.computed(()=>{const _=[];for(const h of e.edges)h.selected&&_.push(h);return _}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const _=[];for(const h of e.nodes)h.dimensions.width&&h.dimensions.height&&h.handleBounds!==void 0&&_.push(h);return _}),g=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:g}}class ro{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)??ro.instance;return ro.instance=r??new ro,o&&(o.config.globalProperties.$vueFlowStorage=ro.instance),ro.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=Fp(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const g=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[g]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=JI(i,s,c),f=AI(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...Y1(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.48.1",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Fe(e){const n=ro.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($p,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const g=h=>{d.applyNodeChanges(h)},_=h=>{d.applyEdgeChanges(h)};u?(d.onNodesChange(g),d.onEdgesChange(_)):(d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(_)),m(()=>{d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(_)})},{immediate:!0}),lr(()=>{if(s){const u=n.get(s.id);u?u.$destroy():Sr(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide($p,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 QI(e){const{emits:n,dimensions:o}=Fe();let r;t.onMounted(()=>{const i=()=>{var a,l;if(!e.value||!(((l=(a=e.value).checkVisibility)==null?void 0:l.call(a))??!0))return;const s=Fi(e.value);(s.width===0||s.height===0)&&n.error(new lt(tt.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:s.width||500,height:s.height||500}};i(),window.addEventListener("resize",i),e.value&&(r=new ResizeObserver(()=>i()),r.observe(e.value)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",i),r&&e.value&&r.unobserve(e.value)})})}const eP={name:"UserSelection",compatConfig:{MODE:3}},tP=t.defineComponent({...eP,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))}}),nP=["tabIndex"],oP={name:"NodesSelection",compatConfig:{MODE:3}},rP=t.defineComponent({...oP,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Fe(),s=Lp(),c=t.ref(null),d=Rp({el:c,onStart(g){n.selectionDragStart(g),n.nodeDragStart(g)},onDrag(g){n.selectionDrag(g),n.nodeDrag(g)},onStop(g){n.selectionDragStop(g),n.nodeDragStop(g)}});t.onMounted(()=>{var g;a.value||(g=c.value)==null||g.focus({preventScroll:!0})});const f=t.computed(()=>sp(r.value)),u=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(g){n.selectionContextMenu({event:g,nodes:r.value})}function m(g){a.value||To[g.key]&&(g.preventDefault(),s({x:To[g.key].x,y:To[g.key].y},g.shiftKey))}return(g,_)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(d)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(u.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,nP)],6)):t.createCommentVNode("",!0)}});function iP(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const aP={name:"Pane",compatConfig:{MODE:3}},lP=t.defineComponent({...aP,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:g,deleteKeyCode:_,multiSelectionKeyCode:h,multiSelectionActive:y,edgeLookup:w,nodeLookup:b,connectionLookup:C,defaultEdgeOptions:N,connectionStartHandle:k,panOnDrag:S}=Fe(),A=t.shallowRef(null),R=t.shallowRef(new Set),O=t.shallowRef(new Set),T=t.shallowRef(null),E=t.toRef(()=>c.value&&(e.isSelecting||a.value)),L=t.toRef(()=>k.value!==null);let x=!1,B=!1;const P=kr(_,{actInsideInputWithModifier:!1}),q=kr(h);t.watch(P,U=>{U&&(p(u.value),m(f.value),d.value=!1)}),t.watch(q,U=>{y.value=U});function G(U,H){return ee=>{ee.target===H&&(U==null||U(ee))}}function K(U){if(x||L.value){x=!1;return}i.paneClick(U),l(),d.value=!1}function F(U){var H;if(Array.isArray(S.value)&&((H=S.value)!=null&&H.includes(2))){U.preventDefault();return}i.paneContextMenu(U)}function I(U){i.paneScroll(U)}function j(U){var H,ee,_e;if(T.value=((H=n.value)==null?void 0:H.getBoundingClientRect())??null,!c.value||!e.isSelecting||U.button!==0||U.target!==A.value||!T.value)return;(_e=(ee=U.target)==null?void 0:ee.setPointerCapture)==null||_e.call(ee,U.pointerId);const{x:be,y:re}=iP(U,T.value);B=!0,x=!1,l(),s.value={width:0,height:0,startX:be,startY:re,x:be,y:re},i.selectionStart(U)}function z(U){var H;if(!T.value||!s.value)return;x=!0;const{x:ee,y:_e}=Zt(U,T.value),{startX:be=0,startY:re=0}=s.value,J={startX:be,startY:re,x:ee<be?ee:be,y:_e<re?_e:re,width:Math.abs(ee-be),height:Math.abs(_e-re)},te=R.value,se=O.value;R.value=new Set(cp(o.value,J,r.value,g.value===ts.Partial,!0).map(v=>v.id)),O.value=new Set;const V=((H=N.value)==null?void 0:H.selectable)??!0;for(const v of R.value){const M=C.value.get(v);if(M)for(const{edgeId:D}of M.values()){const ie=w.value.get(D);ie&&(ie.selectable??V)&&O.value.add(D)}}if(!Op(te,R.value)){const v=An(b.value,R.value,!0);i.nodesChange(v)}if(!Op(se,O.value)){const v=An(w.value,O.value);i.edgesChange(v)}s.value=J,a.value=!0,d.value=!1}function ae(U){var H;U.button!==0||!B||((H=U.target)==null||H.releasePointerCapture(U.pointerId),!a.value&&s.value&&U.target===A.value&&K(U),a.value=!1,s.value=null,d.value=R.value.size>0,i.selectionEnd(U),e.selectionKeyPressed&&(x=!1),B=!1)}return(U,H)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:A,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:U.isSelecting}]),onClick:H[0]||(H[0]=ee=>E.value?void 0:G(K,A.value)(ee)),onContextmenu:H[1]||(H[1]=ee=>G(F,A.value)(ee)),onWheelPassive:H[2]||(H[2]=ee=>G(I,A.value)(ee)),onPointerenter:H[3]||(H[3]=ee=>E.value?void 0:t.unref(i).paneMouseEnter(ee)),onPointerdown:H[4]||(H[4]=ee=>E.value?j(ee):t.unref(i).paneMouseMove(ee)),onPointermove:H[5]||(H[5]=ee=>E.value?z(ee):t.unref(i).paneMouseMove(ee)),onPointerup:H[6]||(H[6]=ee=>E.value?ae(ee):void 0),onPointerleave:H[7]||(H[7]=ee=>t.unref(i).paneMouseLeave(ee))},[t.renderSlot(U.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(tP,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(d)&&t.unref(u).length?(t.openBlock(),t.createBlock(rP,{key:1})):t.createCommentVNode("",!0)],34))}}),sP={name:"Transform",compatConfig:{MODE:3}},cP=t.defineComponent({...sP,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))}}),dP={name:"Viewport",compatConfig:{MODE:3}},uP=t.defineComponent({...dP,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:g,preventScrolling:_,noWheelClassName:h,noPanClassName:y,emits:w,connectionStartHandle:b,userSelectionActive:C,paneDragging:N,d3Zoom:k,d3Selection:S,d3ZoomHandler:A,viewport:R,viewportRef:O,paneClickDistance:T}=Fe();QI(O);const E=t.shallowRef(!1),L=t.shallowRef(!1);let x=null,B=!1,P=0,q={x:0,y:0,zoom:0};const G=kr(s),K=kr(l),F=kr(a),I=t.toRef(()=>(!K.value||K.value&&l.value===!0)&&(G.value||u.value)),j=t.toRef(()=>G.value||c.value),z=t.toRef(()=>K.value||l.value===!0&&I.value!==!0),ae=t.toRef(()=>b.value!==null);t.onMounted(()=>{if(!O.value){Sr("Viewport element is missing");return}const be=O.value,re=be.getBoundingClientRect(),J=OA().clickDistance(T.value).scaleExtent([n.value,o.value]).translateExtent(i.value),te=Mt(be).call(J),se=te.on("wheel.zoom"),V=Po.translate(r.value.x??0,r.value.y??0).scale(no(r.value.zoom??1,n.value,o.value)),v=[[0,0],[re.width,re.height]],M=J.constrain()(V,v,i.value);J.transform(te,M),J.wheelDelta(pp),k.value=J,S.value=te,A.value=se,R.value={x:M.x,y:M.y,zoom:M.k},J.on("start",D=>{var ie;if(!D.sourceEvent)return null;P=D.sourceEvent.button,E.value=!0;const X=ee(D.transform);((ie=D.sourceEvent)==null?void 0:ie.type)==="mousedown"&&(N.value=!0),q=X,w.viewportChangeStart(X),w.moveStart({event:D,flowTransform:X})}),J.on("end",D=>{if(!D.sourceEvent)return null;if(E.value=!1,N.value=!1,U(I.value,P??0)&&!B&&w.paneContextMenu(D.sourceEvent),B=!1,H(q,D.transform)){const ie=ee(D.transform);q=ie,w.viewportChangeEnd(ie),w.moveEnd({event:D,flowTransform:ie})}}),J.filter(D=>{var ie;const X=F.value||g.value,ne=m.value&&D.ctrlKey,Q=D.button,Z=D.type==="wheel";if(Q===1&&D.type==="mousedown"&&(_e(D,"vue-flow__node")||_e(D,"vue-flow__edge")))return!0;if(!I.value&&!X&&!j.value&&!p.value&&!m.value||C.value||ae.value&&!Z||!p.value&&D.type==="dblclick"||_e(D,h.value)&&Z||_e(D,y.value)&&(!Z||j.value&&Z&&!F.value)||!m.value&&D.ctrlKey&&Z||!X&&!j.value&&!ne&&Z)return!1;if(!m&&D.type==="touchstart"&&((ie=D.touches)==null?void 0:ie.length)>1)return D.preventDefault(),!1;if(!I.value&&(D.type==="mousedown"||D.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&Q===0||Array.isArray(u.value)&&!u.value.includes(Q)&&(D.type==="mousedown"||D.type==="touchstart"))return!1;const ue=Array.isArray(u.value)&&u.value.includes(Q)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!Q||Q<=1;return(!D.ctrlKey||G.value||Z)&&ue}),t.watch([C,I],()=>{C.value&&!E.value?J.on("zoom",null):C.value||J.on("zoom",D=>{R.value={x:D.transform.x,y:D.transform.y,zoom:D.transform.k};const ie=ee(D.transform);B=U(I.value,P??0),w.viewportChange(ie),w.move({event:D,flowTransform:ie})})},{immediate:!0}),t.watch([C,j,d,F,m,_,h],()=>{j.value&&!F.value&&!C.value?te.on("wheel.zoom",D=>{if(_e(D,h.value))return!1;const ie=F.value||g.value,X=m.value&&D.ctrlKey;if(!(!_.value||j.value||ie||X))return!1;D.preventDefault(),D.stopImmediatePropagation();const Q=te.property("__zoom").k||1,Z=Ki();if(!G.value&&D.ctrlKey&&m.value&&Z){const pe=Ht(D),ce=pp(D),fe=Q*2**ce;J.scaleTo(te,fe,pe,D);return}const ue=D.deltaMode===1?20:1;let $=d.value===wr.Vertical?0:D.deltaX*ue,oe=d.value===wr.Horizontal?0:D.deltaY*ue;!Z&&D.shiftKey&&d.value!==wr.Vertical&&!$&&oe&&($=oe,oe=0),J.translateBy(te,-($/Q)*f.value,-(oe/Q)*f.value);const le=ee(te.property("__zoom"));x&&clearTimeout(x),L.value?(w.move({event:D,flowTransform:le}),w.viewportChange(le),x=setTimeout(()=>{w.moveEnd({event:D,flowTransform:le}),w.viewportChangeEnd(le),L.value=!1},150)):(L.value=!0,w.moveStart({event:D,flowTransform:le}),w.viewportChangeStart(le))},{passive:!1}):typeof se<"u"&&te.on("wheel.zoom",function(D,ie){const X=!_.value&&D.type==="wheel"&&!D.ctrlKey,ne=F.value||g.value,Q=m.value&&D.ctrlKey;if(!ne&&!c.value&&!Q&&D.type==="wheel"||X||_e(D,h.value))return null;D.preventDefault(),se.call(this,D,ie)},{passive:!1})},{immediate:!0})});function U(be,re){return re===2&&Array.isArray(be)&&be.includes(2)}function H(be,re){return be.x!==re.x&&!Number.isNaN(re.x)||be.y!==re.y&&!Number.isNaN(re.y)||be.zoom!==re.k&&!Number.isNaN(re.k)}function ee(be){return{x:be.x,y:be.y,zoom:be.k}}function _e(be,re){return be.target.closest(`.${re}`)}return(be,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:O,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(lP,{"is-selecting":z.value,"selection-key-pressed":t.unref(K),class:t.normalizeClass({connecting:ae.value,dragging:t.unref(N),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(cP,null,{default:t.withCtx(()=>[t.renderSlot(be.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),fP=["id"],pP=["id"],mP=["id"],gP={name:"A11yDescriptions",compatConfig:{MODE:3}},hP=t.defineComponent({...gP,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(Qf)}-${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,fP),t.createElementVNode("div",{id:`${t.unref(ep)}-${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,pP),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,mP))],64))}});function yP(){const e=Fe();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function _P(e,n,o){return o===xe.Left?e-n:o===xe.Right?e+n:e}function bP(e,n,o){return o===xe.Top?e-n:o===xe.Bottom?e+n:e}const ms=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=xe.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:_P(n,e,r),cy:bP(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};ms.props=["radius","centerX","centerY","position","type"],ms.compatConfig={MODE:3};const Xp=ms,wP=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:g,elementsSelectable:_,edgesUpdatable:h,edgesFocusable:y,hooks:w}=Fe(),b=t.computed(()=>f(e.id)),{emit:C,on:N}=gI(b.value,a),k=t.inject(Gi),S=t.getCurrentInstance(),A=t.ref(!1),R=t.ref(!1),O=t.ref(""),T=t.ref(null),E=t.ref("source"),L=t.ref(null),x=t.toRef(()=>typeof b.value.selectable>"u"?_.value:b.value.selectable),B=t.toRef(()=>typeof b.value.updatable>"u"?h.value:b.value.updatable),P=t.toRef(()=>typeof b.value.focusable>"u"?y.value:b.value.focusable);t.provide(fI,e.id),t.provide(pI,L);const q=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),G=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),K=t.computed(()=>{const v=b.value.type||"default",M=k==null?void 0:k[`edge-${v}`];if(M)return M;let D=b.value.template??c.value[v];if(typeof D=="string"&&S){const ie=Object.keys(S.appContext.components);ie&&ie.includes(v)&&(D=t.resolveComponent(v,!1))}return D&&typeof D!="string"?D:(a.error(new lt(tt.EDGE_TYPE_MISSING,D)),!1)}),{handlePointerDown:F}=Dp({nodeId:O,handleId:T,type:E,isValidConnection:p,edgeUpdaterType:E,onEdgeUpdate:z,onEdgeUpdateEnd:ae});return()=>{const v=u(b.value.source),M=u(b.value.target),D="pathOptions"in b.value?b.value.pathOptions:{};if(!v&&!M)return a.error(new lt(tt.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!v)return a.error(new lt(tt.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!M)return a.error(new lt(tt.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||v.hidden||M.hidden)return null;let ie;r.value===xn.Strict?ie=v.handleBounds.source:ie=[...v.handleBounds.source||[],...v.handleBounds.target||[]];const X=Ep(ie,b.value.sourceHandle);let ne;r.value===xn.Strict?ne=M.handleBounds.target:ne=[...M.handleBounds.target||[],...M.handleBounds.source||[]];const Q=Ep(ne,b.value.targetHandle),Z=(X==null?void 0:X.position)||xe.Bottom,ue=(Q==null?void 0:Q.position)||xe.Top,{x:$,y:oe}=$o(v,X,Z),{x:le,y:pe}=$o(M,Q,ue);return b.value.sourceX=$,b.value.sourceY=oe,b.value.targetX=le,b.value.targetY=pe,t.h("g",{ref:L,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${K.value===!1?"default":b.value.type||"default"}`,s.value,q.value,{updating:A.value,selected:b.value.selected,animated:b.value.animated,inactive:!x.value&&!w.value.edgeClick.hasListeners()}],tabIndex:P.value?0:void 0,"aria-label":b.value.ariaLabel===null?void 0:b.value.ariaLabel??`Edge from ${b.value.source} to ${b.value.target}`,"aria-describedby":P.value?`${ep}-${n}`:void 0,"aria-roledescription":"edge",role:P.value?"group":"img",...b.value.domAttributes,onClick:H,onContextmenu:ee,onDblclick:_e,onMouseenter:be,onMousemove:re,onMouseleave:J,onKeyDown:P.value?V:void 0},[R.value?null:t.h(K.value===!1?c.value.default:K.value,{id:e.id,sourceNode:v,targetNode:M,source:b.value.source,target:b.value.target,type:b.value.type,updatable:B.value,selected:b.value.selected,animated:b.value.animated,label:b.value.label,labelStyle:b.value.labelStyle,labelShowBg:b.value.labelShowBg,labelBgStyle:b.value.labelBgStyle,labelBgPadding:b.value.labelBgPadding,labelBgBorderRadius:b.value.labelBgBorderRadius,data:b.value.data,events:{...b.value.events,...N},style:G.value,markerStart:`url('#${xr(b.value.markerStart,n)}')`,markerEnd:`url('#${xr(b.value.markerEnd,n)}')`,sourcePosition:Z,targetPosition:ue,sourceX:$,sourceY:oe,targetX:le,targetY:pe,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...D}),[B.value==="source"||B.value===!0?[t.h("g",{onMousedown:te,onMouseenter:I,onMouseout:j},t.h(Xp,{position:Z,centerX:$,centerY:oe,radius:i.value,type:"source","data-type":"source"}))]:null,B.value==="target"||B.value===!0?[t.h("g",{onMousedown:se,onMouseenter:I,onMouseout:j},t.h(Xp,{position:ue,centerX:le,centerY:pe,radius:i.value,type:"target","data-type":"target"}))]:null]])};function I(){A.value=!0}function j(){A.value=!1}function z(v,M){C.update({event:v,edge:b.value,connection:M})}function ae(v){C.updateEnd({event:v,edge:b.value}),R.value=!1}function U(v,M){v.button===0&&(R.value=!0,O.value=M?b.value.target:b.value.source,T.value=(M?b.value.targetHandle:b.value.sourceHandle)??null,E.value=M?"target":"source",C.updateStart({event:v,edge:b.value}),F(v))}function H(v){var M;const D={event:v,edge:b.value};x.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(M=L.value)==null||M.blur()):o([b.value])),C.click(D)}function ee(v){C.contextMenu({event:v,edge:b.value})}function _e(v){C.doubleClick({event:v,edge:b.value})}function be(v){C.mouseEnter({event:v,edge:b.value})}function re(v){C.mouseMove({event:v,edge:b.value})}function J(v){C.mouseLeave({event:v,edge:b.value})}function te(v){U(v,!0)}function se(v){U(v,!1)}function V(v){var M;!g.value&&tp.includes(v.key)&&x.value&&(v.key==="Escape"?((M=L.value)==null||M.blur(),d([f(e.id)])):o([f(e.id)]))}}}),kP=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Fe(),p=(e=t.inject(Gi))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return u((w=r.value)==null?void 0:w.nodeId)}),g=t.computed(()=>{var w;return u((w=i.value)==null?void 0:w.nodeId)??null}),_=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),h=t.computed(()=>c.value.markerStart?`url(#${xr(c.value.markerStart,n)})`:""),y=t.computed(()=>c.value.markerEnd?`url(#${xr(c.value.markerEnd,n)})`:"");return()=>{var w,b,C;if(!m.value||!r.value)return null;const N=r.value.id,k=r.value.type,S=m.value.handleBounds;let A=(S==null?void 0:S[k])??[];if(o.value===xn.Loose){const G=(S==null?void 0:S[k==="source"?"target":"source"])??[];A=[...A,...G]}if(!A)return null;const R=(N?A.find(G=>G.id===N):A[0])??null,O=(R==null?void 0:R.position)??xe.Top,{x:T,y:E}=$o(m.value,R,O);let L=null;g.value&&(o.value===xn.Strict?L=((w=g.value.handleBounds[k==="source"?"target":"source"])==null?void 0:w.find(G=>{var K;return G.id===((K=i.value)==null?void 0:K.id)}))||null:L=((b=[...g.value.handleBounds.source??[],...g.value.handleBounds.target??[]])==null?void 0:b.find(G=>{var K;return G.id===((K=i.value)==null?void 0:K.id)}))||null);const x=((C=i.value)==null?void 0:C.position)??(O?ss[O]:null);if(!O||!x)return null;const B=l.value??c.value.type??to.Bezier;let P="";const q={sourceX:T,sourceY:E,sourcePosition:O,targetX:_.value.x,targetY:_.value.y,targetPosition:x};return B===to.Bezier?[P]=Gp(q):B===to.Step?[P]=ps({...q,borderRadius:0}):B===to.SmoothStep?[P]=ps(q):B===to.SimpleBezier?[P]=zp(q):P=`M${T},${E} ${_.value.x},${_.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:T,sourceY:E,sourcePosition:O,targetX:_.value.x,targetY:_.value.y,targetPosition:x,sourceNode:m.value,sourceHandle:R,targetNode:g.value,targetHandle:L,markerEnd:y.value,markerStart:h.value,connectionStatus:d.value}):t.h("path",{d:P,class:[c.value.class,d.value,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":y.value,"marker-start":h.value})))}}}),CP=["id","markerWidth","markerHeight","markerUnits","orient"],EP={name:"MarkerType",compatConfig:{MODE:3}},NP=t.defineComponent({...EP,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(br).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(br).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,CP))}}),xP={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},SP={name:"MarkerDefinitions",compatConfig:{MODE:3}},vP=t.defineComponent({...SP,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Fe(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=xr(d,n);l.has(f)||(typeof d=="object"?s.push({...d,id:f,color:d.color||i.value}):s.push({id:f,color:i.value,type:d}),l.add(f))}};for(const d of[r.value.markerEnd,r.value.markerStart])c(d);for(const d of o.value)for(const f of[d.markerStart,d.markerEnd])c(f);return s.sort((d,f)=>d.id.localeCompare(f.id))});return(l,s)=>(t.openBlock(),t.createElementBlock("svg",xP,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(NP,{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))])]))}}),AP={name:"Edges",compatConfig:{MODE:3}},IP=t.defineComponent({...AP,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Fe();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(vP),(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(eI)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(wP),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(kP))],64))}}),PP=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:g,ariaLiveMessage:_,snapToGrid:h,snapGrid:y,nodeDragThreshold:w,nodesDraggable:b,elementsSelectable:C,nodesConnectable:N,nodesFocusable:k,hooks:S}=Fe(),A=t.ref(null);t.provide(Vp,A),t.provide(Bp,e.id);const R=t.inject(Gi),O=t.getCurrentInstance(),T=Lp(),{node:E,parentNode:L}=Mp(e.id),{emit:x,on:B}=bI(E,l),P=t.toRef(()=>typeof E.draggable>"u"?b.value:E.draggable),q=t.toRef(()=>typeof E.selectable>"u"?C.value:E.selectable),G=t.toRef(()=>typeof E.connectable>"u"?N.value:E.connectable),K=t.toRef(()=>typeof E.focusable>"u"?k.value:E.focusable),F=t.computed(()=>q.value||P.value||S.value.nodeClick.hasListeners()||S.value.nodeDoubleClick.hasListeners()||S.value.nodeMouseEnter.hasListeners()||S.value.nodeMouseMove.hasListeners()||S.value.nodeMouseLeave.hasListeners()),I=t.toRef(()=>!!E.dimensions.width&&!!E.dimensions.height),j=t.computed(()=>{const M=E.type||"default",D=R==null?void 0:R[`node-${M}`];if(D)return D;let ie=E.template||u.value[M];if(typeof ie=="string"&&O){const X=Object.keys(O.appContext.components);X&&X.includes(M)&&(ie=t.resolveComponent(M,!1))}return ie&&typeof ie!="string"?ie:(l.error(new lt(tt.NODE_TYPE_MISSING,ie)),!1)}),z=Rp({id:e.id,el:A,disabled:()=>!P.value,selectable:q,dragHandle:()=>E.dragHandle,onStart(M){x.dragStart(M)},onDrag(M){x.drag(M)},onStop(M){x.dragStop(M)},onClick(M){V(M)}}),ae=t.computed(()=>E.class instanceof Function?E.class(E):E.class),U=t.computed(()=>{const M=(E.style instanceof Function?E.style(E):E.style)||{},D=E.width instanceof Function?E.width(E):E.width,ie=E.height instanceof Function?E.height(E):E.height;return!M.width&&D&&(M.width=typeof D=="string"?D:`${D}px`),!M.height&&ie&&(M.height=typeof ie=="string"?ie:`${ie}px`),M}),H=t.toRef(()=>Number(E.zIndex??U.value.zIndex??0));return f(M=>{(M.includes(e.id)||!M.length)&&_e()}),t.onMounted(()=>{t.watch(()=>E.hidden,(M=!1,D,ie)=>{!M&&A.value&&(e.resizeObserver.observe(A.value),ie(()=>{A.value&&e.resizeObserver.unobserve(A.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>E.type,()=>E.sourcePosition,()=>E.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:A.value,forceUpdate:!0}])})}),t.watch([()=>E.position.x,()=>E.position.y,()=>{var M;return(M=L.value)==null?void 0:M.computedPosition.x},()=>{var M;return(M=L.value)==null?void 0:M.computedPosition.y},()=>{var M;return(M=L.value)==null?void 0:M.computedPosition.z},H,()=>E.selected,()=>E.dimensions.height,()=>E.dimensions.width,()=>{var M;return(M=L.value)==null?void 0:M.dimensions.height},()=>{var M;return(M=L.value)==null?void 0:M.dimensions.width}],([M,D,ie,X,ne,Q])=>{const Z={x:M,y:D,z:Q+(m.value&&E.selected?1e3:0)};typeof ie<"u"&&typeof X<"u"?E.computedPosition=YA({x:ie,y:X,z:ne},Z):E.computedPosition=Z},{flush:"post",immediate:!0}),t.watch([()=>E.extent,p],([M,D],[ie,X])=>{(M!==ie||D!==X)&&ee()}),E.extent==="parent"||typeof E.extent=="object"&&"range"in E.extent&&E.extent.range==="parent"?Bl(()=>I).toBe(!0).then(ee):ee(),()=>E.hidden?null:t.h("div",{ref:A,"data-id":E.id,class:["vue-flow__node",`vue-flow__node-${j.value===!1?"default":E.type||"default"}`,{[o.value]:P.value,dragging:z==null?void 0:z.value,draggable:P.value,selected:E.selected,selectable:q.value,parent:E.isParent},ae.value],style:{visibility:I.value?"visible":"hidden",zIndex:E.computedPosition.z??H.value,transform:`translate(${E.computedPosition.x}px,${E.computedPosition.y}px)`,pointerEvents:F.value?"all":"none",...U.value},tabIndex:K.value?0:void 0,role:K.value?"group":void 0,"aria-describedby":g.value?void 0:`${Qf}-${n}`,"aria-label":E.ariaLabel,"aria-roledescription":"node",...E.domAttributes,onMouseenter:be,onMousemove:re,onMouseleave:J,onContextmenu:te,onClick:V,onDblclick:se,onKeydown:v},[t.h(j.value===!1?u.value.default:j.value,{id:E.id,type:E.type,data:E.data,events:{...E.events,...B},selected:E.selected,resizing:E.resizing,dragging:z.value,connectable:G.value,position:E.computedPosition,dimensions:E.dimensions,isValidTargetPos:E.isValidTargetPos,isValidSourcePos:E.isValidSourcePos,parent:E.parentNode,parentNodeId:E.parentNode,zIndex:E.computedPosition.z??H.value,targetPosition:E.targetPosition,sourcePosition:E.sourcePosition,label:E.label,dragHandle:E.dragHandle,onUpdateNodeInternals:_e})]);function ee(){const M=E.computedPosition,{computedPosition:D,position:ie}=is(E,h.value?ji(M,y.value):M,l.error,p.value,L.value);(E.computedPosition.x!==D.x||E.computedPosition.y!==D.y)&&(E.computedPosition={...E.computedPosition,...D}),(E.position.x!==ie.x||E.position.y!==ie.y)&&(E.position=ie)}function _e(){A.value&&d([{id:e.id,nodeElement:A.value,forceUpdate:!0}])}function be(M){z!=null&&z.value||x.mouseEnter({event:M,node:E})}function re(M){z!=null&&z.value||x.mouseMove({event:M,node:E})}function J(M){z!=null&&z.value||x.mouseLeave({event:M,node:E})}function te(M){return x.contextMenu({event:M,node:E})}function se(M){return x.doubleClick({event:M,node:E})}function V(M){q.value&&(!r.value||!P.value||w.value>0)&&cs(E,a.value,c,s,i,!1,A.value),x.click({event:M,node:E})}function v(M){if(!(ns(M)||g.value))if(tp.includes(M.key)&&q.value){const D=M.key==="Escape";cs(E,a.value,c,s,i,D,A.value)}else P.value&&E.selected&&To[M.key]&&(M.preventDefault(),_.value=`Moved selected node ${M.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~E.position.x}, y: ${~~E.position.y}`,T({x:To[M.key].x,y:To[M.key].y},M.shiftKey))}}});function TP(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 OP={class:"vue-flow__nodes vue-flow__container"},$P={name:"Nodes",compatConfig:{MODE:3}},BP=t.defineComponent({...$P,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Fe(),i=TP(),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",OP,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,d,f,u)=>{const p=[c.id];if(u&&u.key===c.id&&t.isMemoSame(u,p))return u;const m=(t.openBlock(),t.createBlock(t.unref(PP),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):t.createCommentVNode("",!0)]))}});function VP(){const{emits:e}=Fe();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 RP=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),DP={name:"VueFlow",compatConfig:{MODE:3}},Zp=t.defineComponent({...DP,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=Vl(r,"modelValue",o),l=Vl(r,"nodes",o),s=Vl(r,"edges",o),c=Fe(r),d=EI({modelValue:a,nodes:l,edges:s},r,c);return xI(o,c.hooks),yP(),VP(),t.provide(Gi,i),t.onUnmounted(d),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(uP,null,{default:t.withCtx(()=>[t.createVNode(IP),RP,t.createVNode(BP),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(hP)],512))}}),MP={name:"Panel",compatConfig:{MODE:3}},LP=t.defineComponent({...MP,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 pn=(e=>(e.Lines="lines",e.Dots="dots",e))(pn||{});const Jp=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]}`})},Qp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};pn.Lines+"",pn.Dots+"";const FP={[pn.Dots]:"#81818a",[pn.Lines]:"#eee"},UP=["id","x","y","width","height","patternTransform"],KP={key:2,height:"100",width:"100"},jP=["fill"],GP=["x","y","fill"],qP={name:"Background",compatConfig:{MODE:3}},zP=t.defineComponent({...qP,props:{id:{},variant:{default:()=>pn.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],d=[s*l||1,c*l||1],f=e.size*l,[u,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[u*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||FP[e.variant||pn.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(pn).Lines?(t.openBlock(),t.createBlock(t.unref(Jp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(pn).Dots?(t.openBlock(),t.createBlock(t.unref(Qp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",KP,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,jP)])):t.createCommentVNode("",!0)])],8,UP)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,GP),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),HP={name:"ControlButton",compatConfig:{MODE:3}},YP=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},WP={type:"button",class:"vue-flow__controls-button"};function XP(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",WP,[t.renderSlot(e.$slots,"default")])}const vr=YP(HP,[["render",XP]]),ZP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},JP=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function QP(e,n){return t.openBlock(),t.createElementBlock("svg",ZP,JP)}const eT={render:QP},tT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},nT=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function oT(e,n){return t.openBlock(),t.createElementBlock("svg",tT,nT)}const rT={render:oT},iT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},aT=[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 lT(e,n){return t.openBlock(),t.createElementBlock("svg",iT,aT)}const sT={render:lT},cT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},dT=[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 uT(e,n){return t.openBlock(),t.createElementBlock("svg",cT,dT)}const fT={render:uT},pT={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 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 gT(e,n){return t.openBlock(),t.createElementBlock("svg",pT,mT)}const hT={render:gT},yT={name:"Controls",compatConfig:{MODE:3}},_T=t.defineComponent({...yT,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Zf.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Fe(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),g=t.toRef(()=>d.value.zoom>=u.value);function _(){l(),n("zoomIn")}function h(){s(),n("zoomOut")}function y(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(b,C)=>(t.openBlock(),t.createBlock(t.unref(LP),{class:"vue-flow__controls",position:b.position},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"top"),b.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(b.$slots,"control-zoom-in",{},()=>[t.createVNode(vr,{class:"vue-flow__controls-zoomin",disabled:g.value,onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(eT))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(vr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:h},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(rT))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(vr,{class:"vue-flow__controls-fitview",onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(sT))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(vr,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(b.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(hT))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(fT))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),bT=["undo","redo","duplicate","cut","copy","paste"],em=()=>{};function wT(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function kT(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 CT=Ye.createSharedComposable(()=>{const e=new Set;Ye.useEventListener("keydown",o=>{if(wT(o.target))return;const r=kT(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(!bT.some(i=>typeof o[i]=="function"))return em;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function tm(e={}){if(typeof window>"u")return em;const n=CT().subscribe(e);return t.onScopeDispose(n),n}const nm=44,ET=220,om=366,NT=1e3,xT=nm+parseFloat(ju),Ji=1,ST=0,vT=1,AT=2,IT=3,Bo=parseInt(b1,10),Ar="application/x-datakit+json",Qi={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"]},Pn={padding:80,gaps:{nodes:60,edges:80,ranks:60}},PT=1600,TT=1.2,OT=0,$T=200,rm=Symbol("confirm-modal"),Vo="{key}",io={"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}},ea=Object.keys(io).filter(e=>e.includes(Vo)).map(e=>e.replace(Vo,""));function gs(e){if(!e||!Pr(e))return;const n=ea.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Vo,"")}function Ir(e){if(!e)return null;const n=ea.find(o=>e.startsWith(o));return n||e}function Pr(e){return e?ea.some(n=>e.startsWith(n)):!1}function im(e){return e?Pr(e)?Ir(e)+Vo:e:null}function hs(e){var o;if(!e)return!1;const n=im(e);return n?((o=io[n])==null?void 0:o.readable)??!1:!1}function ys(e){var o;if(!e)return!1;const n=im(e);return n?((o=io[n])==null?void 0:o.writable)??!1:!1}function ta(e,n,o){const r=n?Nn(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Tr(e,n){const o=n(e.source),r=n(e.target);return[ta(o,e.sourceField,"output"),ta(r,e.targetField,"input")]}function _s(e,n,o,r,i){const a=i(e),l=i(o);return[ta(a,n,"output"),ta(l,r,"input")]}function am(e){if(e.length===0)throw new Error("getBoundingRect requires at least one rect");let n=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;for(const{x:a,y:l,width:s,height:c}of e){if(![a,l,s,c].every(Number.isFinite))throw new Error("Rect values must be finite numbers");if(s<0||c<0)throw new RangeError("Rect width and height must be non-negative");const d=a+s,f=l+c;if(!Number.isFinite(d)||!Number.isFinite(f))throw new RangeError("Rect boundaries must be finite numbers");a<n&&(n=a),l<o&&(o=l),d>r&&(r=d),f>i&&(i=f)}return{x:n,y:o,width:r-n,height:i-o}}function BT(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var VT="\0",ao="\0",lm="";let RT=class{constructor(n){it(this,"_isDirected",!0);it(this,"_isMultigraph",!1);it(this,"_isCompound",!1);it(this,"_label");it(this,"_defaultNodeLabelFn",()=>{});it(this,"_defaultEdgeLabelFn",()=>{});it(this,"_nodes",{});it(this,"_in",{});it(this,"_preds",{});it(this,"_out",{});it(this,"_sucs",{});it(this,"_edgeObjs",{});it(this,"_edgeLabels",{});it(this,"_nodeCount",0);it(this,"_edgeCount",0);it(this,"_parent");it(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[ao]={})}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]=ao,this._children[n]={},this._children[ao][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=ao;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!==ao)return o}}children(n=ao){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===ao)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=Or(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=DT(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,sm(this._preds[o],n),sm(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?bs(this._isDirected,arguments[0]):Or(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?bs(this._isDirected,arguments[0]):Or(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?bs(this._isDirected,arguments[0]):Or(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],cm(this._preds[o],n),cm(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 sm(e,n){e[n]?e[n]++:e[n]=1}function cm(e,n){--e[n]||delete e[n]}function Or(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+lm+a+lm+(r===void 0?VT:r)}function DT(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 bs(e,n){return Or(e,n.v,n.w,n.name)}var ws=RT,MT="2.2.4",LT={Graph:ws,version:MT},FT=ws,UT={write:KT,read:qT};function KT(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:jT(e),edges:GT(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function jT(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 GT(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 qT(e){var n=new FT(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 zT=HT;function HT(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 dm=class{constructor(){it(this,"_arr",[]);it(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}},YT=dm,um=XT,WT=()=>1;function XT(e,n,o,r){return ZT(e,String(n),o||WT,r||function(i){return e.outEdges(i)})}function ZT(e,n,o,r){var i={},a=new YT,l,s,c=function(d){var f=d.v!==l?d.v:d.w,u=i[f],p=o(d),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+d+" Weight: "+p);m<u.distance&&(u.distance=m,u.predecessor=l,a.decrease(f,m))};for(e.nodes().forEach(function(d){var f=d===n?0:Number.POSITIVE_INFINITY;i[d]={distance:f},a.add(d,f)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var JT=um,QT=eO;function eO(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=JT(e,i,n,o),r},{})}var fm=tO;function tO(e){var n=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:n,index:n++};if(o.push(l),e.successors(l).forEach(function(f){Object.hasOwn(r,f)?r[f].onStack&&(s.lowlink=Math.min(s.lowlink,r[f].index)):(a(f),s.lowlink=Math.min(s.lowlink,r[f].lowlink))}),s.lowlink===s.index){var c=[],d;do d=o.pop(),r[d].onStack=!1,c.push(d);while(l!==d);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var nO=fm,oO=rO;function rO(e){return nO(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var iO=lO,aO=()=>1;function lO(e,n,o){return sO(e,n||aO,o||function(r){return e.outEdges(r)})}function sO(e,n,o){var r={},i=e.nodes();return i.forEach(function(a){r[a]={},r[a][a]={distance:0},i.forEach(function(l){a!==l&&(r[a][l]={distance:Number.POSITIVE_INFINITY})}),o(a).forEach(function(l){var s=l.v===a?l.w:l.v,c=n(l);r[a][s]={distance:c,predecessor:a}})}),i.forEach(function(a){var l=r[a];i.forEach(function(s){var c=r[s];i.forEach(function(d){var f=c[a],u=l[d],p=c[d],m=f.distance+u.distance;m<p.distance&&(p.distance=m,p.predecessor=u.predecessor)})})}),r}function pm(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new ks;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 ks;return r}class ks extends Error{constructor(){super(...arguments)}}var mm=pm;pm.CycleException=ks;var gm=mm,cO=dO;function dO(e){try{gm(e)}catch(n){if(n instanceof gm.CycleException)return!1;throw n}return!0}var hm=uO;function uO(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?fO:pO,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 fO(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]),ym(n(a[0]),l=>i.push([l,!1])))}}function pO(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),ym(n(a),l=>i.push(l)))}}function ym(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var mO=hm,gO=hO;function hO(e,n){return mO(e,n,"post")}var yO=hm,_O=bO;function bO(e,n){return yO(e,n,"pre")}var wO=ws,kO=dm,CO=EO;function EO(e,n){var o=new wO,r={},i=new kO,a;function l(c){var d=c.v===a?c.w:c.v,f=i.priority(d);if(f!==void 0){var u=n(c);u<f&&(r[d]=a,i.decrease(d,u))}}if(e.nodeCount()===0)return o;e.nodes().forEach(function(c){i.add(c,Number.POSITIVE_INFINITY),o.setNode(c)}),i.decrease(e.nodes()[0],0);for(var s=!1;i.size()>0;){if(a=i.removeMin(),Object.hasOwn(r,a))o.setEdge(a,r[a]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(a).forEach(l)}return o}var NO={components:zT,dijkstra:um,dijkstraAll:QT,findCycles:oO,floydWarshall:iO,isAcyclic:cO,postorder:gO,preorder:_O,prim:CO,tarjan:fm,topsort:mm},_m=LT,Ut={Graph:_m.Graph,json:UT,alg:NO,version:_m.version};let xO=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return bm(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&bm(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,SO)),r=r._prev;return"["+n.join(", ")+"]"}};function bm(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function SO(e,n){if(e!=="_next"&&e!=="_prev")return n}var vO=xO;let AO=Ut.Graph,IO=vO;var PO=OO;let TO=()=>1;function OO(e,n){if(e.nodeCount()<=1)return[];let o=BO(e,n||TO);return $O(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function $O(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)Cs(e,n,o,l);for(;l=i.dequeue();)Cs(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(Cs(e,n,o,l,!0));break}}}return r}function Cs(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,Es(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,Es(n,o,d)}),e.removeNode(r.v),a}function BO(e,n){let o=new AO,r=0,i=0;e.nodes().forEach(s=>{o.setNode(s,{v:s,in:0,out:0})}),e.edges().forEach(s=>{let c=o.edge(s.v,s.w)||0,d=n(s),f=c+d;o.setEdge(s.v,s.w,f),i=Math.max(i,o.node(s.v).out+=d),r=Math.max(r,o.node(s.w).in+=d)});let a=VO(i+r+3).map(()=>new IO),l=r+1;return o.nodes().forEach(s=>{Es(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function Es(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 VO(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let wm=Ut.Graph;var ot={addBorderNode:GO,addDummyNode:km,applyWithChunking:na,asNonCompoundGraph:DO,buildLayerMatrix:UO,intersectRect:FO,mapValues:ZO,maxRank:Em,normalizeRanks:KO,notime:YO,partition:zO,pick:XO,predecessorWeights:LO,range:xm,removeEmptyRanks:jO,simplify:RO,successorWeights:MO,time:HO,uniqueId:Nm,zipObject:Ns};function km(e,n,o,r){for(var i=r;e.hasNode(i);)i=Nm(r);return o.dummy=n,e.setNode(i,o),i}function RO(e){let n=new wm().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 DO(e){let n=new wm({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 MO(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 Ns(e.nodes(),n)}function LO(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 Ns(e.nodes(),n)}function FO(e,n){let o=e.x,r=e.y,i=n.x-o,a=n.y-r,l=e.width/2,s=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");let c,d;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,d=s):(i<0&&(l=-l),c=l,d=l*a/i),{x:o+c,y:r+d}}function UO(e){let n=xm(Em(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 KO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=na(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function jO(e){let n=e.nodes().map(l=>e.node(l).rank),o=na(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 GO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),km(e,"border",i,n)}function qO(e,n=Cm){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const Cm=65535;function na(e,n){if(n.length>Cm){const o=qO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function Em(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return na(Math.max,o)}function zO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function HO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function YO(e,n){return n()}let WO=0;function Nm(e){var n=++WO;return e+(""+n)}function xm(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 XO(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function ZO(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 Ns(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let JO=PO,QO=ot.uniqueId;var e$={run:t$,undo:o$};function t$(e){(e.graph().acyclicer==="greedy"?JO(e,o(e)):n$(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,QO("rev"))});function o(r){return i=>r.edge(i).weight}}function n$(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 r$=ot;var i$={run:a$,undo:s$};function a$(e){e.graph().dummyChains=[],e.edges().forEach(n=>l$(e,n))}function l$(e,n){let o=n.v,r=e.node(o).rank,i=n.w,a=e.node(i).rank,l=n.name,s=e.edge(n),c=s.labelRank;if(a===r+1)return;e.removeEdge(n);let d,f,u;for(u=0,++r;r<a;++u,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},d=r$.addDummyNode(e,"edge",f,"_d"),r===c&&(f.width=s.width,f.height=s.height,f.dummy="edge-label",f.labelpos=s.labelpos),e.setEdge(o,d,{weight:s.weight},l),u===0&&e.graph().dummyChains.push(d),o=d;e.setEdge(o,i,{weight:s.weight},l)}function s$(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:c$}=ot;var oa={longestPath:d$,slack:u$};function d$(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=c$(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function u$(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var f$=Ut.Graph,ra=oa.slack,Sm=p$;function p$(e){var n=new f$({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;m$(n,e)<r;)i=g$(n,e),a=n.hasNode(i.v)?ra(e,i):-ra(e,i),h$(n,e,a);return n}function m$(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!ra(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function g$(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=ra(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function h$(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var y$=Sm,vm=oa.slack,_$=oa.longestPath,b$=Ut.alg.preorder,w$=Ut.alg.postorder,k$=ot.simplify,C$=lo;lo.initLowLimValues=Ss,lo.initCutValues=xs,lo.calcCutValue=Am,lo.leaveEdge=Pm,lo.enterEdge=Tm,lo.exchangeEdges=Om;function lo(e){e=k$(e),_$(e);var n=y$(e);Ss(n),xs(n,e);for(var o,r;o=Pm(n);)r=Tm(n,e,o),Om(n,e,o,r)}function xs(e,n){var o=w$(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>E$(e,n,r))}function E$(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=Am(e,n,o)}function Am(e,n,o){var r=e.node(o),i=r.parent,a=!0,l=n.edge(o,i),s=0;return l||(a=!1,l=n.edge(i,o)),s=l.weight,n.nodeEdges(o).forEach(c=>{var d=c.v===o,f=d?c.w:c.v;if(f!==i){var u=d===a,p=n.edge(c).weight;if(s+=u?p:-p,x$(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function Ss(e,n){arguments.length<2&&(n=e.nodes()[0]),Im(e,{},1,n)}function Im(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=Im(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function Pm(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 d=n.edges().filter(f=>c===$m(e,e.node(f.v),s)&&c!==$m(e,e.node(f.w),s));return d.reduce((f,u)=>vm(n,u)<vm(n,f)?u:f)}function Om(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),Ss(e),xs(e,n),N$(e,n)}function N$(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=b$(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 x$(e,n,o){return e.hasEdge(n,o)}function $m(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var S$=oa,Bm=S$.longestPath,v$=Sm,A$=C$,I$=P$;function P$(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":Vm(e);break;case"tight-tree":O$(e);break;case"longest-path":T$(e);break;case"none":break;default:Vm(e)}}var T$=Bm;function O$(e){Bm(e),v$(e)}function Vm(e){A$(e)}var $$=B$;function B$(e){let n=R$(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=V$(e,n,i.v,i.w),l=a.path,s=a.lca,c=0,d=l[c],f=!0;for(;o!==i.w;){if(r=e.node(o),f){for(;(d=l[c])!==s&&e.node(d).maxRank<r.rank;)c++;d===s&&(f=!1)}if(!f){for(;c<l.length-1&&e.node(d=l[c+1]).minRank<=r.rank;)c++;d=l[c]}e.setParent(o,d),o=e.successors(o)[0]}})}function V$(e,n,o,r){let i=[],a=[],l=Math.min(n[o].low,n[r].low),s=Math.max(n[o].lim,n[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function R$(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 ia=ot;var D$={run:M$,cleanup:U$};function M$(e){let n=ia.addDummyNode(e,"root",{},"_root"),o=L$(e),r=Object.values(o),i=ia.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=F$(e)+1;e.children().forEach(s=>Rm(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function Rm(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=ia.addBorderNode(e,"_bt"),d=ia.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{Rm(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,g=p.borderBottom?p.borderBottom:u,_=p.borderTop?r:2*r,h=m!==g?1:i-a[l]+1;e.setEdge(c,m,{weight:_,minlen:h,nestingEdge:!0}),e.setEdge(g,d,{weight:_,minlen:h,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function L$(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 F$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function U$(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 K$=ot;var j$=G$;function G$(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)Dm(e,"borderLeft","_bl",o,i,a),Dm(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function Dm(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=K$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var q$={adjust:z$,undo:H$};function z$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&Mm(e)}function H$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&Y$(e),(n==="lr"||n==="rl")&&(W$(e),Mm(e))}function Mm(e){e.nodes().forEach(n=>Lm(e.node(n))),e.edges().forEach(n=>Lm(e.edge(n)))}function Lm(e){let n=e.width;e.width=e.height,e.height=n}function Y$(e){e.nodes().forEach(n=>vs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(vs),Object.hasOwn(o,"y")&&vs(o)})}function vs(e){e.y=-e.y}function W$(e){e.nodes().forEach(n=>As(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(As),Object.hasOwn(o,"x")&&As(o)})}function As(e){let n=e.x;e.x=e.y,e.y=n}let Fm=ot;var X$=Z$;function Z$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=Fm.applyWithChunking(Math.max,r),a=Fm.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[c]=!0;let d=e.node(c);a[d.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,d)=>e.node(c).rank-e.node(d).rank).forEach(l),a}let J$=ot.zipObject;var Q$=eB;function eB(e,n){let o=0;for(let r=1;r<n.length;++r)o+=tB(e,n[r-1],n[r]);return o}function tB(e,n,o){let r=J$(o,o.map((d,f)=>f)),i=n.flatMap(d=>e.outEdges(d).map(f=>({pos:r[f.w],weight:e.edge(f).weight})).sort((f,u)=>f.pos-u.pos)),a=1;for(;a<o.length;)a<<=1;let l=2*a-1;a-=1;let s=new Array(l).fill(0),c=0;return i.forEach(d=>{let f=d.pos+a;s[f]+=d.weight;let u=0;for(;f>0;)f%2&&(u+=s[f+1]),f=f-1>>1,s[f]+=d.weight;c+=d.weight*u}),c}var nB=oB;function oB(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 rB=ot;var iB=aB;function aB(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 lB(r)}function lB(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&sB(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=>rB.pick(i,["vs","i","barycenter","weight"]))}function sB(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 cB=ot;var dB=uB;function uB(e,n){let o=cB.partition(e,f=>Object.hasOwn(f,"barycenter")),r=o.lhs,i=o.rhs.sort((f,u)=>u.i-f.i),a=[],l=0,s=0,c=0;r.sort(fB(!!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 d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}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 fB(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let pB=nB,mB=iB,gB=dB;var hB=Km;function Km(e,n,o,r){let i=e.children(n),a=e.node(n),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=pB(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Km(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&_B(p,m)}});let f=mB(d,o);yB(f,c);let u=gB(f,r);if(l&&(u.vs=[l,u.vs,s].flat(!0),e.predecessors(l).length)){let p=e.node(e.predecessors(l)[0]),m=e.node(e.predecessors(s)[0]);Object.hasOwn(u,"barycenter")||(u.barycenter=0,u.weight=0),u.barycenter=(u.barycenter*u.weight+p.order+m.order)/(u.weight+2),u.weight+=2}return u}function yB(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function _B(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 bB=Ut.Graph,wB=ot;var kB=CB;function CB(e,n,o,r){r||(r=e.nodes());let i=EB(e),a=new bB({compound:!0}).setGraph({root:i}).setDefaultNodeLabel(l=>e.node(l));return r.forEach(l=>{let s=e.node(l),c=e.parent(l);(s.rank===n||s.minRank<=n&&n<=s.maxRank)&&(a.setNode(l),a.setParent(l,c||i),e[o](l).forEach(d=>{let f=d.v===l?d.w:d.v,u=a.edge(f,l),p=u!==void 0?u.weight:0;a.setEdge(f,l,{weight:e.edge(d).weight+p})}),Object.hasOwn(s,"minRank")&&a.setNode(l,{borderLeft:s.borderLeft[n],borderRight:s.borderRight[n]}))}),a}function EB(e){for(var n;e.hasNode(n=wB.uniqueId("_root")););return n}var NB=xB;function xB(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 SB=X$,vB=Q$,AB=hB,IB=kB,PB=NB,TB=Ut.Graph,aa=ot;var OB=jm;function jm(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,jm);return}let o=aa.maxRank(e),r=Gm(e,aa.range(1,o+1),"inEdges"),i=Gm(e,aa.range(o-1,-1,-1),"outEdges"),a=SB(e);if(qm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){$B(c%2?r:i,c%4>=2),a=aa.buildLayerMatrix(e);let f=vB(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}qm(e,s)}function Gm(e,n,o){const r=new Map,i=(a,l)=>{r.has(a)||r.set(a,[]),r.get(a).push(l)};for(const a of e.nodes()){const l=e.node(a);if(typeof l.rank=="number"&&i(l.rank,a),typeof l.minRank=="number"&&typeof l.maxRank=="number")for(let s=l.minRank;s<=l.maxRank;s++)s!==l.rank&&i(s,a)}return n.map(function(a){return IB(e,a,o,r.get(a)||[])})}function $B(e,n){let o=new TB;e.forEach(function(r){let i=r.graph().root,a=AB(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),PB(r,o,a.vs)})}function qm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let BB=Ut.Graph,mn=ot;var VB={positionX:zB};function RB(e,n){let o={};function r(i,a){let l=0,s=0,c=i.length,d=a[a.length-1];return a.forEach((f,u)=>{let p=MB(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(g=>{e.predecessors(g).forEach(_=>{let h=e.node(_),y=h.order;(y<l||m<y)&&!(h.dummy&&e.node(g).dummy)&&zm(o,_,g)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function DB(e,n){let o={};function r(a,l,s,c,d){let f;mn.range(l,s).forEach(u=>{f=a[u],e.node(f).dummy&&e.predecessors(f).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>d)&&zm(o,p,f)})})}function i(a,l){let s=-1,c,d=0;return l.forEach((f,u)=>{if(e.node(f).dummy==="border"){let p=e.predecessors(f);p.length&&(c=e.node(p[0]).order,r(l,d,u,s,c),d=u,s=c)}r(l,d,l.length,c,a.length)}),l}return n.length&&n.reduce(i),o}function MB(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function zm(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 LB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function FB(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),n.forEach(s=>{let c=-1;s.forEach(d=>{let f=r(d);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let u=(f.length-1)/2;for(let p=Math.floor(u),m=Math.ceil(u);p<=m;++p){let g=f[p];a[d]===d&&c<l[g]&&!LB(o,d,g)&&(a[g]=d,a[d]=i[d]=i[g],c=l[g])}}})}),{root:i,align:a}}function UB(e,n,o,r,i){let a={},l=KB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),g=m.pop(),_={};for(;g;)_[g]?u(g):(_[g]=!0,m.push(g),m=m.concat(p(g))),g=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((g,_)=>Math.min(g,a[_.w]-l.edge(_)),Number.POSITIVE_INFINITY),m=e.node(u);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[u]=Math.max(a[u],p))}return c(d,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(u=>a[u]=a[o[u]]),a}function KB(e,n,o,r){let i=new BB,a=e.graph(),l=HB(a.nodesep,a.edgesep,r);return n.forEach(s=>{let c;s.forEach(d=>{let f=o[d];if(i.setNode(f),c){var u=o[c],p=i.edge(u,f);i.setEdge(u,f,Math.max(l(e,d,c),p||0))}c=d})}),i}function jB(e,n){return Object.values(n).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=YB(e,s)/2;i=Math.max(c+d,i),a=Math.min(c-d,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function GB(e,n){let o=Object.values(n),r=mn.applyWithChunking(Math.min,o),i=mn.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let d=Object.values(c),f=r-mn.applyWithChunking(Math.min,d);l!=="l"&&(f=i-mn.applyWithChunking(Math.max,d)),f&&(e[s]=mn.mapValues(c,u=>u+f))})})}function qB(e,n){return mn.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 zB(e){let n=mn.buildLayerMatrix(e),o=Object.assign(RB(e,n),DB(e,n)),r={},i;["u","d"].forEach(l=>{i=l==="u"?n:Object.values(n).reverse(),["l","r"].forEach(s=>{s==="r"&&(i=i.map(u=>Object.values(u).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),d=FB(e,i,o,c),f=UB(e,i,d.root,d.align,s==="r");s==="r"&&(f=mn.mapValues(f,u=>-u)),r[l+s]=f})});let a=jB(e,r);return GB(r,a),qB(r,e.graph().align)}function HB(e,n,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,d;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":d=-l.width/2;break;case"r":d=l.width/2;break}if(d&&(c+=o?d:-d),d=0,c+=(l.dummy?n:e)/2,c+=(s.dummy?n:e)/2,c+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":d=s.width/2;break;case"r":d=-s.width/2;break}return d&&(c+=o?d:-d),d=0,c}}function YB(e,n){return e.node(n).width}let Hm=ot,WB=VB.positionX;var XB=ZB;function ZB(e){e=Hm.asNonCompoundGraph(e),JB(e),Object.entries(WB(e)).forEach(([n,o])=>e.node(n).x=o)}function JB(e){let n=Hm.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 Ym=e$,Wm=i$,QB=I$,eV=ot.normalizeRanks,tV=$$,nV=ot.removeEmptyRanks,Xm=D$,oV=j$,Zm=q$,rV=OB,iV=XB,Bt=ot,aV=Ut.Graph;var lV=sV;function sV(e,n){let o=n&&n.debugTiming?Bt.time:Bt.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>_V(e));o(" runLayout",()=>cV(r,o,n)),o(" updateInputGraph",()=>dV(e,r))})}function cV(e,n,o){n(" makeSpaceForEdgeLabels",()=>bV(e)),n(" removeSelfEdges",()=>AV(e)),n(" acyclic",()=>Ym.run(e)),n(" nestingGraph.run",()=>Xm.run(e)),n(" rank",()=>QB(Bt.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>wV(e)),n(" removeEmptyRanks",()=>nV(e)),n(" nestingGraph.cleanup",()=>Xm.cleanup(e)),n(" normalizeRanks",()=>eV(e)),n(" assignRankMinMax",()=>kV(e)),n(" removeEdgeLabelProxies",()=>CV(e)),n(" normalize.run",()=>Wm.run(e)),n(" parentDummyChains",()=>tV(e)),n(" addBorderSegments",()=>oV(e)),n(" order",()=>rV(e,o)),n(" insertSelfEdges",()=>IV(e)),n(" adjustCoordinateSystem",()=>Zm.adjust(e)),n(" position",()=>iV(e)),n(" positionSelfEdges",()=>PV(e)),n(" removeBorderNodes",()=>vV(e)),n(" normalize.undo",()=>Wm.undo(e)),n(" fixupEdgeLabelCoords",()=>xV(e)),n(" undoCoordinateSystem",()=>Zm.undo(e)),n(" translateGraph",()=>EV(e)),n(" assignNodeIntersects",()=>NV(e)),n(" reversePoints",()=>SV(e)),n(" acyclic.undo",()=>Ym.undo(e))}function dV(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 uV=["nodesep","edgesep","ranksep","marginx","marginy"],fV={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},pV=["acyclicer","ranker","rankdir","align"],mV=["width","height","rank"],Jm={width:0,height:0},gV=["minlen","weight","width","height","labeloffset"],hV={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},yV=["labelpos"];function _V(e){let n=new aV({multigraph:!0,compound:!0}),o=Ps(e.graph());return n.setGraph(Object.assign({},fV,Is(o,uV),Bt.pick(o,pV))),e.nodes().forEach(r=>{let i=Ps(e.node(r));const a=Is(i,mV);Object.keys(Jm).forEach(l=>{a[l]===void 0&&(a[l]=Jm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=Ps(e.edge(r));n.setEdge(r,Object.assign({},hV,Is(i,gV),Bt.pick(i,yV)))}),n}function bV(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 wV(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};Bt.addDummyNode(e,"edge-proxy",a,"_ep")}})}function kV(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 CV(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 EV(e){let n=Number.POSITIVE_INFINITY,o=0,r=Number.POSITIVE_INFINITY,i=0,a=e.graph(),l=a.marginx||0,s=a.marginy||0;function c(d){let f=d.x,u=d.y,p=d.width,m=d.height;n=Math.min(n,f-p/2),o=Math.max(o,f+p/2),r=Math.min(r,u-m/2),i=Math.max(i,u+m/2)}e.nodes().forEach(d=>c(e.node(d))),e.edges().forEach(d=>{let f=e.edge(d);Object.hasOwn(f,"x")&&c(f)}),n-=l,r-=s,e.nodes().forEach(d=>{let f=e.node(d);f.x-=n,f.y-=r}),e.edges().forEach(d=>{let f=e.edge(d);f.points.forEach(u=>{u.x-=n,u.y-=r}),Object.hasOwn(f,"x")&&(f.x-=n),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-n+l,a.height=i-r+s}function NV(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(Bt.intersectRect(r,a)),o.points.push(Bt.intersectRect(i,l))})}function xV(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 SV(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function vV(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 AV(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 IV(e){var n=Bt.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=>{Bt.addDummyNode(e,"selfedge",{width:s.label.width,height:s.label.height,rank:l.rank,order:a+ ++r,e:s.e,label:s.label},"_se")}),delete l.selfEdges})})}function PV(e){e.nodes().forEach(n=>{var o=e.node(n);if(o.dummy==="selfedge"){var r=e.node(o.e.v),i=r.x+r.width/2,a=r.y,l=o.x-i,s=r.height/2;e.setEdge(o.e,o.label),e.removeNode(n),o.label.points=[{x:i+2*l/3,y:a-s},{x:i+5*l/6,y:a-s},{x:i+l,y:a},{x:i+5*l/6,y:a+s},{x:i+2*l/3,y:a+s}],o.label.x=o.x,o.label.y=o.y}})}function Is(e,n){return Bt.mapValues(Bt.pick(e,n),Number)}function Ps(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let TV=ot,OV=Ut.Graph;var $V={debugOrdering:BV};function BV(e){let n=TV.buildLayerMatrix(e),o=new OV({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 VV="1.1.8",RV={graphlib:Ut,layout:lV,debug:$V,util:{time:ot.time,notime:ot.notime},version:VV};const Qm=BT(RV);function DV(e){const{branchLayout:n,phase:o,layoutOptions:r,nodes:i,edges:a}=e,{findNode:l}=Fe(),{state:s,branchGroups:c,getNodeById:d,moveNode:f,commit:u}=We(),{getNodeDepth:p,isGroupId:m,groupsByOwner:g}=c,{isBranchEdgeId:_,updateGroupLayout:h,translateGroupTree:y,waitForLayoutFlush:w}=n,{viewport:b,padding:C=Pn.padding,gaps:N=Pn.gaps}=r,{nodes:k=Pn.gaps.nodes,edges:S=Pn.gaps.edges,ranks:A=Pn.gaps.ranks}=N;async function R(E=!0){const L=new Map(i.value.map(U=>[U.id,U.data])),x=new Map,B=new Map,P=U=>{if(!U)return;let H=B.get(U);return H||(H=l(U),H&&B.set(U,H),H)},q=new Map,G=U=>{let H=q.get(U);return H!==void 0||(H=p(U),q.set(U,H)),H},K=U=>{if(!ir(U.data))return U.parentNode;const H=P(U.data.ownerId);if(!H)throw new Error(`Cannot find owner node '${U.data.ownerId}' for group node '${U.id}' via findNode`);return H.parentNode};for(const U of a.value){if(_(U.id))continue;const H=U.source,ee=U.target;if(m(H)||m(ee))continue;const _e=P(H),be=P(ee);if(_e){if(!be)throw new Error(`Cannot find target node '${ee}' for edge '${U.id}' via findNode`)}else throw new Error(`Cannot find source node '${H}' for edge '${U.id}' via findNode`);if(K(_e)===K(be))continue;let re=_e,J=be,te=G(re.id),se=G(J.id);for(;te!==se;)if(te>se){const V=K(re);if(!V)throw new Error(`Expected node '${re.id}' to have parent, but it does not`);const v=P(V);if(!v)throw new Error(`Cannot find parent node '${V}' for node '${re.id}' via findNode`);re=v,te--}else if(se>te){const V=K(J);if(!V)throw new Error(`Expected node '${J.id}' to have parent, but it does not`);const v=P(V);if(!v)throw new Error(`Cannot find parent node '${V}' for node '${J.id}' via findNode`);J=v,se--}for(;te>=0;){const V=K(re),v=K(J);if(V===v){x.has(te)||x.set(te,[]),x.get(te).push({v:re.id,w:J.id});break}if(V){if(!v){const ie=`Expected node '${J.id}' to have parent, but it does not`;throw console.error(ie,J),new Error(ie)}}else{const ie=`Expected node '${re.id}' to have parent, but it does not`;throw console.error(ie,re),new Error(ie)}const M=P(V),D=P(v);if(M){if(!D)throw new Error(`Cannot find parent node '${v}' for node '${J.id}' via findNode`)}else throw new Error(`Cannot find parent node '${V}' for node '${re.id}' via findNode`);re=M,J=D,te--,se--}}const F=s.value.groups.toSorted((U,H)=>G(H.ownerId)-G(U.ownerId));for(const U of F)O(U.memberIds.reduce((H,ee)=>{const _e=d(ee);if(!_e)return console.warn(`Cannot find node '${ee}' of group '${U.id}' by getNodeById`),H;if(_e.phase!==o)return H;if(_e.type==="branch"){const be=g.value.get(_e.id);be&&H.push(...be)}return L.delete(_e.id),H.push(_e),H},[]),{virtualEdges:x.get(G(U.ownerId)),cachedFindNode:P}),await t.nextTick(),h(U.id,!1),await w();const I=L.values().toArray();for(const U of I){if(ir(U)||U.type!=="branch")continue;const H=g.value.get(U.id);H&&I.push(...H)}const{autoNodes:j,leftNode:z,rightNode:ae}=T(I);O(j,{leftNode:z,rightNode:ae,virtualEdges:x.get(0),cachedFindNode:P}),E&&u()}function O(E,L){var re,J,te,se,V;const{leftNode:x,rightNode:B,virtualEdges:P,cachedFindNode:q}=L||{},G=x?(q??l)(x.id):void 0,K=B?(q??l)(B.id):void 0;let F;if(E.length>0){F=new Qm.graphlib.Graph({multigraph:!0}),F.setGraph({rankdir:o==="request"?"LR":"RL",nodesep:k,edgesep:S,ranksep:A});const v=new Set;for(const M of E){const D=(q??l)(M.id);if(!D){console.warn(`Cannot find graph node '${M.id}' in ${o} phase`);continue}v.add(M.id),ir(M)?F.setNode(M.id,{...M.dimensions??D.dimensions}):F.setNode(M.id,{...D.dimensions})}for(const M of a.value)!v.has(M.source)||!v.has(M.target)||F.setEdge(M.source,M.target,{points:[]});P==null||P.forEach(M=>F.setEdge(M,{points:[]})),Qm.layout(F)}const I=[],j=v=>({x:v.x-v.width/2,y:v.y-v.height/2,width:v.width,height:v.height});if(E.length>0){if(!F)throw new Error("Expected dagreGraph to be initialized");for(const v of E){const M=F.node(v.id),D=j(M);I.push(D),ir(v)?y(v.id,D,D.x+Bo,D.y+Bo):f(v.id,{x:D.x,y:D.y},!1)}}const z=I.length>0?am(I):{x:0,y:0,width:0,height:0},ae=z.width,U=z.height,H=z.x,ee=z.x+z.width,_e=Math.max(0,Math.min(t.toValue(b==null?void 0:b.width)??Number.POSITIVE_INFINITY,PT)-ae-2*k-(((re=G==null?void 0:G.dimensions)==null?void 0:re.width)??0)-(((J=K==null?void 0:K.dimensions)==null?void 0:J.width)??0)-2*C),be=z.y+U/2;x&&f(x.id,{x:H-k-_e/2-(((te=G==null?void 0:G.dimensions)==null?void 0:te.width)??0),y:be-(((se=G==null?void 0:G.dimensions)==null?void 0:se.height)??0)/2},!1),B&&f(B.id,{x:ee+k+_e/2,y:be-(((V=K==null?void 0:K.dimensions)==null?void 0:V.height)??0)/2},!1)}function T(E){let L,x;const B=[];for(const P of E){if(ir(P)){B.push(P);continue}switch(P.name){case"request":{if(o!=="request")throw new Error(`Unexpected request node in ${o} phase`);if(L)throw new Error("Duplicated request node in request phase");L=P;break}case"service_request":{if(o!=="request")throw new Error(`Unexpected service_request node in ${o} phase`);if(x)throw new Error("Duplicated service_request node in request phase");x=P;break}case"service_response":{if(o!=="response")throw new Error(`Unexpected service_response node in ${o} phase`);if(x)throw new Error("Duplicated service_response node in response phase");x=P;break}case"response":{if(o!=="response")throw new Error(`Unexpected response node in ${o} phase`);if(L)throw new Error("Duplicated response node in response phase");L=P;break}default:{B.push(P);break}}}return{autoNodes:B,leftNode:L,rightNode:x}}return{autoLayout:R}}function MV({phase:e,groupMapById:n,getNodeDepth:o,canAddMember:r,draggingId:i}){const a=t.shallowRef(),l=t.shallowRef();function s(u){a.value=u,l.value=void 0}function c(){a.value&&(a.value=void 0,l.value=void 0)}function d(u){let p;const m=i==null?void 0:i.value;return n.value.forEach(g=>{if(g.phase!==e||m&&vl(m)&&!r(g.ownerId,g.branch,m))return;const _=g.position,h=g.dimensions;if(!_||!h||!(u.x>=_.x&&u.x<=_.x+h.width&&u.y>=_.y&&u.y<=_.y+h.height))return;const w=o(g.ownerId);(!p||w>p.depth)&&(p={depth:w,id:g.id})}),p==null?void 0:p.id}function f(u){if(!a.value){l.value=void 0;return}if(!u){l.value=void 0;return}l.value=d(u)}return{activeGroupId:l,start:s,updateActiveGroup:f,end:c}}function LV({phase:e,readonly:n,flowId:o,draggingId:r}){const{findNode:i}=Fe(o),a=We(),{state:l,groupMapById:s,getNodeById:c,moveNode:d,moveGroup:f,setGroupLayout:u,commit:p,branchGroups:m}=a,{memberGroupMap:g,groupsByOwner:_,getNodeDepth:h,getGroupDepth:y}=m,w=K=>!!K&&K.startsWith("branch:");function b(K){const F=[];for(const I of K.memberIds){const j=c(I);j&&F.push(j)}return F}const C=t.computed(()=>{const K=new Map;return g.value.forEach((F,I)=>{if(F.phase!==e||!F.position)return;const j=c(I);j&&(j.phase!==e||j.hidden||K.set(I,F))}),K}),N=t.computed(()=>{const K=new Map;return _.value.forEach((F,I)=>{const j=F.filter(z=>z.phase===e);j.length>0&&K.set(I,j)}),K}),k=t.computed(()=>{const K=[];for(const F of l.value.groups){const I=c(F.ownerId);if(!I||I.phase!==e)continue;const j=F.position,z=F.dimensions;if(!j||!z)continue;const ae=b(F).filter(H=>H.phase===e&&!H.hidden),U=y(F.id);K.push({id:F.id,type:"group",position:j,width:z.width,height:z.height,data:{...F,memberIds:ae.map(H=>H.id)},draggable:!n,selectable:!1,zIndex:U*Ji+ST})}return K}),S=t.computed(()=>{let K=0;for(const F of l.value.groups){if(F.phase!==e)continue;const I=y(F.id);I>K&&(K=I)}return K}),A=t.computed(()=>{const K=[];for(const F of l.value.groups){if(F.phase!==e||!F.position||!F.dimensions)continue;const I=c(F.ownerId);if(!I||I.phase!==e||I.hidden||!b(F).filter(U=>U.phase===e&&!U.hidden).length)continue;const z=Math.max(h(I.id),y(F.id))+S.value+1,ae={id:`branch:${F.id}`,source:I.id,target:F.id,sourceHandle:`branch@${F.branch}`,targetHandle:"input",markerEnd:br.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:I.id,branch:F.branch,groupId:F.id},zIndex:z*Ji+AT};K.push(ae)}return K}),R=new Map,O=new Map;let T;function E(K,F=!0){if(K.phase!==e)return;const I=b(K).filter(H=>H.phase===e&&!H.hidden);if(!I.length)return;const j=[];for(const H of I){const ee=i(H.id),_e=ee==null?void 0:ee.dimensions,be=(_e==null?void 0:_e.width)??0,re=(_e==null?void 0:_e.height)??0;if(be<=0||re<=0)return;j.push({...H.position,width:be,height:re});const J=_.value.get(H.id)??[];for(const te of J){if(te.phase!==e)continue;const se=R.get(te.id),V=(se==null?void 0:se.position)??te.position,v=(se==null?void 0:se.dimensions)??te.dimensions;!V||!v||j.push({x:V.x,y:V.y,width:v.width,height:v.height})}}const z=am(j),ae=z.width+Bo*2,U=z.height+Bo*2;return{position:{x:Math.round(z.x-Bo),y:Math.round(z.y-Bo)},dimensions:{width:Math.round(ae),height:Math.round(U)},commit:F}}function L(){if(R.size===0){T=void 0;return}const K=[];let F=!1;R.forEach((I,j)=>{const z=u(j,I,!1);K.push({id:j,changed:z,commit:I.commit}),I.commit&&z&&!F&&(F=!0)}),R.clear(),T=void 0;for(const{id:I,changed:j,commit:z}of K){if(!j)continue;const ae=s.value.get(I);if(!ae)continue;const U=C.value.get(ae.ownerId);U&&O.set(U.id,{commit:z})}if(O.size>0){const I=Array.from(O);O.clear();for(const[j,{commit:z}]of I)B(j,z)}F&&p("*")}function x(){R.size!==0&&(T||(T=t.nextTick().then(L)))}function B(K,F=!0){const I=s.value.get(K);if(!I)return;const j=E(I,F);j&&(R.set(K,j),x())}function P(K,F,I,j){const z=s.value.get(K);if(!z)return;if(!z.position){f(K,F,!1),B(K);return}if(I===0&&j===0){f(K,F,!1);return}f(K,F,!1);const ae=[K],U=new Set([K]),H=new Set;for(;ae.length;){const ee=ae.shift(),_e=s.value.get(ee);if(!_e)continue;const be=b(_e).filter(re=>re.phase===e&&!re.hidden);for(const re of be){H.has(re.id)||(d(re.id,{x:re.position.x+I,y:re.position.y+j},!1),H.add(re.id));const J=N.value.get(re.id)??[];for(const te of J){if(U.has(te.id))continue;const se=s.value.get(te.id);se!=null&&se.position&&f(te.id,{x:se.position.x+I,y:se.position.y+j},!1),U.add(te.id),ae.push(te.id)}}}}function q(K,F){const I=r==null?void 0:r.value;if(!I)return!1;if(I===K||F.some(j=>I===j))return!0;for(const j of F){const z=N.value.get(j)??[];if(z!=null&&z.some(ae=>ae.id===I))return!0}return!1}const G=new Map;return t.watch(()=>l.value.groups.filter(F=>F.phase===e).map(F=>{const I=F.memberIds.map(j=>{var H,ee;const z=i(j),ae=Math.round(((H=z==null?void 0:z.dimensions)==null?void 0:H.width)??0),U=Math.round(((ee=z==null?void 0:z.dimensions)==null?void 0:ee.height)??0);return`${j}:${ae}x${U}`});return{id:F.id,memberIds:F.memberIds,signature:I.join(",")}}),K=>{const F=new Set(K.map(I=>I.id));for(const I of G.keys())F.has(I)||G.delete(I);for(const I of K)q(I.id,I.memberIds)||G.get(I.id)===I.signature||(G.set(I.id,I.signature),B(I.id))},{deep:!0,flush:"post"}),{groupsByOwner:N,memberGroupMap:C,groupNodes:k,branchEdges:A,isBranchEdgeId:w,updateGroupLayout:B,translateGroupTree:P,getNodeDepth:h,maxGroupDepth:S,waitForLayoutFlush:()=>T??Promise.resolve()}}function FV(e){t.provide(rm,e)}function eg(){return t.inject(rm,void 0)}function tg(){const e=eg();if(!e)throw new Error("Confirm modal not provided");return e}function UV(e){const{readonly:n,flowId:o}=e,r=Fe(o),{onNodesChange:i,onEdgesChange:a,onPaneClick:l,findEdge:s}=r,{disconnectEdge:c,commit:d,portalSelection:f,selectPortalEdge:u}=We();i(p=>{p.some(m=>m.type==="select"&&"selected"in m&&m.selected)&&u(void 0)}),a(p=>{const m=p.some(_=>_.type==="select"&&"selected"in _&&_.selected),g=f.value?p.some(_=>_.type==="remove"&&_.id===f.value):!1;(m||g)&&u(void 0)}),l(()=>u(void 0)),Ye.useEventListener("keydown",p=>{if(n||p.key!=="Delete"&&p.key!=="Backspace")return;const m=f.value;!m||s(m)||(p.preventDefault(),c(m,!1),u(void 0),d())})}function ng(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const KV={default:a1,hover:s1,selected:l1};let og,Ts;function la(e){const n=e.id===og?"selected":e.id===Ts?"hover":"default",o=KV[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[jV,GV]=Ye.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Pn.padding,gaps:s=Pn.gaps}=r,{nodes:c=Pn.gaps.nodes}=s,d=Fe(o),f=We(),u=eg(),p=rl(),{i18n:{t:m}}=Ve(),{findNode:g,fitView:_,deleteKeyCode:h,onNodeDrag:y,onNodeDragStop:w,onConnect:b,onNodesChange:C,onEdgesChange:N,onEdgeUpdate:k,onEdgeMouseEnter:S,onEdgeMouseLeave:A,getNodes:R,setNodes:O,setEdges:T,addSelectedNodes:E,screenToFlowCoordinate:L}=d;h.value=["Delete","Backspace"];const{state:x,commit:B,moveNode:P,selectNode:q,removeNode:G,getNodeById:K,connectEdge:F,disconnectEdge:I,getInEdgesByNodeId:j,branchGroups:z,commit:ae,reset:U,groupMapById:H}=f,{isGroupId:ee,canAddMember:_e}=z,be=t.shallowRef(),re=de=>{be.value=de},J=t.readonly(be);function te(de,Se){const me=K(de.source),Ce=K(de.target);return!!(me&&Ce&&me.phase===Se&&Ce.phase===Se)}const se=LV({phase:n,readonly:i,flowId:o,draggingId:J}),{memberGroupMap:V,groupNodes:v,branchEdges:M,isBranchEdgeId:D,updateGroupLayout:ie,translateGroupTree:X,getNodeDepth:ne,maxGroupDepth:Q}=se,{activeGroupId:Z,start:ue,updateActiveGroup:$,end:oe}=MV({phase:n,groupMapById:H,getNodeDepth:ne,canAddMember:_e,draggingId:J}),le=t.computed(()=>x.value.nodes.filter(de=>de.phase===n&&!de.hidden).map(de=>{const Se=V.value.get(de.id),me=Se==null?void 0:Se.position,Ce=Se==null?void 0:Se.dimensions,Ie=Se&&me&&Ce?{x:de.position.x-me.x,y:de.position.y-me.y}:de.position,we=ne(de.id),Oe=!!(Se&&me&&Ce),Be=(Oe?we:0)+Q.value+1;return{id:de.id,type:"flow",position:Ie,data:de,deletable:!Sl(de),parentNode:Oe?Se.id:void 0,zIndex:Be*Ji+IT}})),pe=t.computed(()=>x.value.edges.filter(de=>te(de,n)).filter(de=>!z.isEdgeEnteringGroup(de.source,de.target)).filter(de=>{const Se=K(de.source),me=K(de.target);return!(Se!=null&&Se.hidden)&&!(me!=null&&me.hidden)}).map(de=>{const Se=K(de.source),me=K(de.target);if(!Se||!me){const Ie=[];throw Se||Ie.push(`source node "${de.source}"`),me||Ie.push(`target node "${de.target}"`),new Error(`Missing ${Ie.join(" and ")} for edge "${de.id}" in phase "${n}"`)}const Ce=Math.max(ne(de.source),ne(de.target))+Q.value+1;return la({id:de.id,source:de.source,target:de.target,sourceHandle:de.sourceField?`outputs@${de.sourceField}`:"output",targetHandle:de.targetField?`inputs@${de.targetField}`:"input",markerEnd:br.ArrowClosed,data:de,updatable:!i,zIndex:Ce*Ji+vT})})),ce=t.computed(()=>[...M.value,...pe.value]),{autoLayout:fe}=DV({phase:n,layoutOptions:r,branchLayout:se,nodes:le,edges:ce});UV({readonly:i,flowId:o}),t.watch([le,v,ce],([de,Se,me])=>{O([...Se,...de]),T(me)},{immediate:!0});const Ee=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function Pe({source:de,sourceHandle:Se,target:me,targetHandle:Ce}){if(!Se||!Ce)return;const Ie=ng(Se),we=ng(Ce);if((Ie==null?void 0:Ie.io)==="input"||(we==null?void 0:we.io)==="output"||Se==="output"&&Ce==="output")return;const Oe=j(me);let Be=!1,Je=!1;const Me=[],He=[],je=(we==null?void 0:we.io)==="input"?Oe.filter(rt=>!rt.targetField):Oe.filter(rt=>!!rt.targetField);je.length>0&&(Be=!0,je.forEach(rt=>{He.push(Tr(rt,K)),I(rt.id,!1)}));const ht=(we==null?void 0:we.io)==="input"?we!=null&&we.field?Oe.filter(rt=>rt.targetField===we.field):Oe.filter(rt=>!!rt.targetField):Oe.filter(rt=>!rt.targetField);if(ht.length>0){if(ht.some(Vt=>Vt.source===de&&Vt.target===me&&Vt.targetField===(we==null?void 0:we.field)&&Vt.sourceField===(Ie==null?void 0:Ie.field)))return;Je=!0,ht.forEach(Vt=>{He.push(Tr(Vt,K)),I(Vt.id,!1)})}if(!F({source:de,sourceField:Ie==null?void 0:Ie.field,target:me,targetField:we==null?void 0:we.field},!1)){U(),p({message:m("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(Me.push(_s(de,Ie==null?void 0:Ie.field,me,we==null?void 0:we.field,K)),Be||Je){if(!u)throw U(),new Error("Expected confirm modal to be provided here when reachable");if(!await u(m(Be?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),Me,He)){U();return}}ae()}b(Pe);let ge=!1;const ye=()=>{ge&&(ge=!1,ae())};C(de=>{de.filter(Ce=>Ce.type==="select").filter(Ce=>!ee(Ce.id)).sort((Ce,Ie)=>Ce.selected===Ie.selected?0:Ce.selected?1:-1).forEach(Ce=>{q(Ce.selected?Ce.id:void 0)});let me=!1;de.forEach(Ce=>{if(Ce.type==="remove"){if(ee(Ce.id))return;me=!0,G(Ce.id,!1)}}),me&&!ge&&(ge=!0,queueMicrotask(ye))}),y(({node:de,event:Se})=>{var Oe,Be,Je;if(!de)return;if(ee(de.id)){const Me=de.id;re(Me),$(void 0);const He=H.value.get(Me);if(!He)return;const je=He.position??{...de.position},ht=de.position.x-je.x,$r=de.position.y-je.y;X(Me,de.position,ht,$r);const rt=V.value.get(He.ownerId);rt&&ie(rt.id,!1);return}const me=de.id;ue("canvas"),re(me);const Ce=de.parentNode;let Ie={...de.position};if(Ce&&ee(Ce)){const Me=H.value.get(Ce);Me!=null&&Me.position&&(Ie={x:Me.position.x+de.position.x,y:Me.position.y+de.position.y})}if(P(me,Ie,!1),!Sl(K(me))){const Me={x:Ie.x,y:Ie.y,width:((Oe=de.dimensions)==null?void 0:Oe.width)??0,height:((Be=de.dimensions)==null?void 0:Be.height)??0},He=Se&&"clientX"in Se?L({x:Se.clientX,y:Se.clientY}):void 0,je={x:Me.x+Me.width/2,y:Me.y+Me.height/2};$(He??je)}const we=Ce&&ee(Ce)?Ce:(Je=V.value.get(me))==null?void 0:Je.id;we&&ie(we,!1)}),w(({node:de})=>{var we;if(!de)return;if(re(void 0),ee(de.id)){B();return}const Se=de.id,me=de.parentNode;let Ce={...de.position};if(me&&ee(me)){const Oe=H.value.get(me);Oe!=null&&Oe.position&&(Ce={x:Oe.position.x+de.position.x,y:Oe.position.y+de.position.y})}P(Se,Ce,!1);const Ie=me&&ee(me)?me:(we=V.value.get(Se))==null?void 0:we.id;Ie&&ie(Ie,!1),bn(Se),oe(),B()}),N(de=>{de.filter(Ce=>Ce.type==="select").sort((Ce,Ie)=>Ce.selected===Ie.selected?0:Ce.selected?1:-1).forEach(Ce=>{D(Ce.id)||(og=Ce.selected?Ce.id:void 0,T(Ie=>Ie.map(we=>we.id!==Ce.id||!we.markerEnd?we:la({...we,zIndex:Ce.selected?1:void 0}))))});let me=!1;de.forEach(Ce=>{if(Ce.type==="remove"){if(D(Ce.id))return;me=!0,I(Ce.id,!1)}}),me&&!ge&&(ge=!0,queueMicrotask(ye))}),S(({edge:de})=>{D(de.id)||(Ts=de.id,T(Se=>Se.map(me=>me.id!==de.id?me:la(me))))}),A(({edge:de})=>{D(de.id)||(Ts=void 0,T(Se=>Se.map(me=>me.id!==de.id?me:la(me))))}),k(({edge:de,connection:Se})=>{D(de.id)||(I(de.id,!1),Pe(Se))});function Ke(de){_({...Ee.value,...de})}async function _t(de){return q(de),new Promise(Se=>setTimeout(()=>{const me=g(de);E(me?[me]:[]),Se()},0))}function en(de){const Se=R.value.filter(({type:je})=>je!=="group"),me=Se.find(({id:je})=>je===de);if(!me)throw new Error(`Node ${de} not found`);const{x:Ce,y:Ie}=me.data.position,{width:we,height:Oe}=me.dimensions,Be=Ie,Je=Ie+Oe,Me=Se.filter(({id:je})=>je!==de).filter(({data:{position:{y:je}},dimensions:{height:ht}})=>je<Je&&je+ht>Be).map(({data:{position:{x:je}},dimensions:{width:ht}})=>({left:je,right:je+ht})).sort((je,ht)=>je.left-ht.left);let He=Ce+we+c;for(const{left:je,right:ht}of Me)if(!(ht<=He)){if(He+we<=je)return{x:He,y:Be};He=Math.max(He,ht)+c}return{x:He,y:Be}}function Tn(de){if(!de)return;const Se=g(de);if(!Se)throw new Error(`Node ${de} not found`);const{position:{x:me},dimensions:{width:Ce}}=Se,Ie=me+Ce,{viewport:we,dimensions:Oe,setViewport:Be}=d,{x:Je,y:Me,zoom:He}=we.value,{width:je}=Oe.value,ht=me*He+Je,$r=Ie*He+Je,rt=je-om-c;if($r<=rt)return;let Vt=rt-$r;ht+Vt<0&&(Vt=-ht),Vt!==0&&Be({x:Je+Vt,y:Me,zoom:He},{duration:$T})}function bn(de){if(!Z.value)return!1;const{nodeId:Se,branch:me}=E1(Z.value),Ce=z.addMember(Se,me,de,{commit:!1});return $(void 0),Ce}return{vueFlowStore:d,editorStore:f,readonly:i,nodes:le,edges:ce,selectNode:_t,autoLayout:fe,placeToRight:en,scrollRightToReveal:Tn,fitViewParams:Ee,fitView:Ke,groupDrop:{activeGroupId:Z,startPanelDrag:()=>ue("panel"),endPanelDrag:oe,updateActiveGroup:$,attachNodeToActiveGroup:bn}}});let Ro=null;function qV(){var n;if(Ro)return Ro;if(typeof navigator>"u")return Ro="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?Ro="mac":/Linux/i.test(e)&&!/Android/i.test(e)?Ro="linux":Ro="windows"}const zV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},HV={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"},YV={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 WV(e,n={}){const o=n.platform??qV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?zV:o==="linux"?YV:HV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const XV={key:0,class:"label"},ZV={class:"keys"},sa=ve(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=WV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:e.reverse}])},[e.label?(t.openBlock(),t.createElementBlock("span",XV,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",ZV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),JV=["onClick"],QV={key:0,class:"additional-count"},rg=24,eR=16,ca=ve(t.defineComponent({__name:"NodePortal",props:{expanded:{type:Boolean,default:()=>{}},reversed:{type:Boolean},targets:{}},setup(e){const n=Number.parseFloat(_1)||0,o={target:"body"},{portalSelection:r,selectPortalEdge:i}=We(),a=t.ref(!1),l=t.computed(()=>{const g=r.value;return g?e.targets.some(_=>_.edgeId===g):!1}),s=t.computed(()=>e.expanded!==void 0?e.expanded||l.value:a.value||l.value),c=()=>rg*e.targets.length+n*(e.targets.length-1),d=t.computed(()=>({width:s.value?`${c()}px`:"fit-content"})),f=g=>{i(g)},u=g=>r.value===g,p=t.computed(()=>e.targets.map((g,_)=>{var y;const h=(rg+n)*_;return{edgeId:g.edgeId,key:`${g.node.id}-${g.fieldName??"node"}-${_}`,icon:(y=gt[g.node.type])==null?void 0:y.icon,tooltip:g.fieldName?`${g.node.name}.${g.fieldName}`:g.node.name,highlighted:u(g.edgeId),tooltipEl:null,style:_===0?{width:"fit-content",zIndex:e.targets.length}:{position:"absolute",...e.reversed?{left:`${h}px`,transform:s.value?"translateX(0)":`translateX(-${h}px)`}:{right:0,transform:s.value?`translateX(-${h}px)`:"translateX(0)"},zIndex:e.targets.length-_}}})),m=t.computed(()=>Math.max(e.targets.length-1,0));return(g,_)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-portal",{expanded:s.value,reversed:e.reversed}]),onClick:_[0]||(_[0]=t.withModifiers(()=>{},["stop"])),onDragstart:_[1]||(_[1]=t.withModifiers(()=>{},["stop"])),onMousedown:_[2]||(_[2]=t.withModifiers(()=>{},["stop"])),onMouseenter:_[3]||(_[3]=h=>a.value=!0),onMouseleave:_[4]||(_[4]=h=>a.value=!1)},[t.createElementVNode("div",{class:"target-boxes",style:t.normalizeStyle(d.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(h,y)=>(t.openBlock(),t.createBlock(t.unref($e.KTooltip),{key:h.key,class:"target-box-wrapper","kpop-attributes":o,placement:"top",style:t.normalizeStyle(h.style),text:h.tooltip},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["target-box",{highlighted:h.highlighted}]),onClick:t.withModifiers(w=>f(h.edgeId),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(h.icon),{color:t.unref(Co),size:eR},null,8,["color"])),y===0&&m.value>0?(t.openBlock(),t.createElementBlock("span",QV," +"+t.toDisplayString(m.value),1)):t.createCommentVNode("",!0)],10,JV)]),_:2},1032,["style","text"]))),128))],4)],34))}}),[["__scopeId","data-v-926821a3"]]),da=ve(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>xe.Left},size:{default:()=>Number.parseFloat(ju)},type:{}},setup(e){t.useCssVars(o=>({v753622c4:o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[e.type,e.position===t.unref(xe).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),ig=ve(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>gt[e.type]),o=t.computed(()=>w1(e.type));return(r,i)=>{var l;const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:"neutral",class:t.normalizeClass(["dk-node-badge",{"icon-only":e.iconOnly,"has-colors":!!n.value.colors}]),size:e.size},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]),tR={class:"body"},nR={class:"name"},oR={class:"handle"},rR={class:"handle-label-wrapper"},iR={class:"handle-label-wrapper"},aR={class:"handle-label text"},lR={class:"handle"},sR={class:"handle-label-wrapper"},cR={class:"handle-label-wrapper"},dR={class:"handle-label text"},uR={key:2,class:"branch-handles"},fR={class:"handle-label-wrapper"},pR={class:"handle-label text"},ag=ve(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),o=GV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d,branchGroups:f}=We(),u=t.computed(()=>No(e.data.type)),p=t.computed(()=>e.data.fields.input.length>0),m=t.computed(()=>e.data.fields.output.length>0),g=t.computed(()=>p.value&&r(e.data.id).every(I=>I.targetField===void 0)),_=t.computed(()=>m.value&&i(e.data.id).every(I=>I.sourceField===void 0)),h=t.computed(()=>e.data.expanded.input??!1),y=t.computed(()=>e.data.expanded.output??!1),w=t.computed(()=>{var I,j,z;return((z=(j=(I=u.value.io)==null?void 0:I.next)==null?void 0:j.branches)==null?void 0:z.map(({name:ae})=>ae))??[]}),b=t.computed(()=>w.value.length>0),C=t.computed(()=>f.findMembership(e.data.id)),N=t.computed(()=>{var I,j;if(e.data.type==="property"){const z=(I=e.data.config)==null?void 0:I.property;return ys(z)}return(j=u.value.io)==null?void 0:j.input}),k=t.computed(()=>{var I,j;if(e.data.type==="property"){const z=(I=e.data.config)==null?void 0:I.property;return hs(z)}return(j=u.value.io)==null?void 0:j.output}),S=t.computed(()=>Sl(e.data)),A=t.computed(()=>e.data.phase==="response"),R=t.computed(()=>e.data.phase==="request"?xe.Left:xe.Right),O=t.computed(()=>e.data.phase==="request"?xe.Right:xe.Left),T=t.computed(()=>e.data.phase==="request"?xe.Right:xe.Left),E=t.computed(()=>S.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),L=t.computed(()=>S.value?o1:wl);function x(I){return I==="input"?A.value:!A.value}function B(I){const j=new Map,z=I==="input"?r(e.data.id):i(e.data.id);for(const ae of z){const U=a(I==="input"?ae.source:ae.target);if(!U)continue;if(I==="input"){const re=U.type==="vault",J=U.phase!==e.data.phase,te=f.isEdgeEnteringGroup(U.id,e.data.id);if(!(re||J||te))continue}else{const re=U.phase!==e.data.phase,J=f.isEdgeEnteringGroup(e.data.id,U.id);if(!(re||J))continue}const H=I==="input"?ae.targetField||"input":ae.sourceField||"output";let ee;if(I==="input"&&ae.sourceField){const re=U.fields.output.find(J=>J.id===ae.sourceField);ee=re==null?void 0:re.name}else if(I==="output"&&ae.targetField){const re=U.fields.input.find(J=>J.id===ae.targetField);ee=re==null?void 0:re.name}const _e={edgeId:ae.id,node:U,fieldName:ee},be=j.get(H);be?be.push(_e):j.set(H,[_e])}return j}const P=t.computed(()=>B("input")),q=t.computed(()=>B("output"));function G(I){!o||o.readonly||I==="input"&&!g.value||I==="output"&&!_.value||l(e.data.id,I)}async function K(){if(!o||o.readonly)return;const I=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(I),o.scrollRightToReveal(I),d.value=!0}function F(){f.removeMember(e.data.id)}return t.watch(g,I=>{I||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(_,I=>{I||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(I,j)=>{jn(I,j)||l(e.data.id,"input",I.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(I,j)=>{jn(I,j)||l(e.data.id,"output",I.length>0,!0,"*")},{deep:!0}),(I,j)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:A.value,implicit:S.value,readonly:e.readonly}])},[t.createElementVNode("div",tR,[S.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref($e.KTooltip),{key:0,class:"badge",placement:"top",text:e.data.type},{default:t.withCtx(()=>[t.createVNode(ig,{"icon-only":"",size:"small",type:e.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",nR,t.toDisplayString(E.value),1),e.error?(t.openBlock(),t.createBlock(t.unref(ke.WarningIcon),{key:1,class:"error-icon",color:t.unref(kl),size:16},null,8,["color"])):t.createCommentVNode("",!0),S.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref($e.KDropdown),{key:2,class:"menu",disabled:e.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:j[1]||(j[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref($e.KDropdownItem),{onClick:K},{default:t.withCtx(()=>[t.createVNode(sa,{keys:t.unref(Qi).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),C.value?(t.openBlock(),t.createBlock(t.unref($e.KDropdownItem),{key:0,onClick:F},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref($e.KDropdownItem),{danger:"",onClick:j[0]||(j[0]=z=>t.unref(c)(e.data.id))},{default:t.withCtx(()=>[t.createVNode(sa,{keys:t.unref(Qi).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($e.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{color:t.unref(or)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:A.value}])},[N.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":p.value}])},[t.createElementVNode("div",oR,[t.createVNode(t.unref(Jt),{id:"input",position:R.value,type:"target"},null,8,["position"]),P.value.has("input")?(t.openBlock(),t.createBlock(ca,{key:0,mode:"input",reversed:x("input"),targets:P.value.get("input")},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",rR,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:g.value}]),onClick:j[2]||(j[2]=t.withModifiers(z=>G("input"),["stop"]))},[j[4]||(j[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[h.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ke.UnfoldMoreIcon),{key:0,size:t.unref(di)},null,8,["size"])),h.value?(t.openBlock(),t.createBlock(t.unref(ke.UnfoldLessIcon),{key:1,color:g.value?void 0:t.unref(Ku),size:t.unref(di)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&h.value?(t.openBlock(),t.createBlock(da,{key:0,color:L.value,position:R.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),p.value&&h.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.input,(z,ae)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${z.id}`,class:"handle indented"},[t.createVNode(t.unref(Jt),{id:`inputs@${z.id}`,position:R.value,type:"target"},null,8,["id","position"]),P.value.has(z.id)?(t.openBlock(),t.createBlock(ca,{key:0,mode:"input",reversed:x("input"),targets:P.value.get(z.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",iR,[t.createElementVNode("div",aR,t.toDisplayString(z.name),1),t.createVNode(da,{color:L.value,position:R.value,type:ae<e.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":m.value}])},[t.createElementVNode("div",lR,[t.createElementVNode("div",sR,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:_.value}]),onClick:j[3]||(j[3]=t.withModifiers(z=>G("output"),["stop"]))},[j[5]||(j[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),m.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ke.UnfoldMoreIcon),{key:0,size:t.unref(di)},null,8,["size"])),y.value?(t.openBlock(),t.createBlock(t.unref(ke.UnfoldLessIcon),{key:1,color:_.value?void 0:t.unref(Ku),size:t.unref(di)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),m.value&&y.value?(t.openBlock(),t.createBlock(da,{key:0,color:L.value,position:O.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Jt),{id:"output",position:O.value,type:"source"},null,8,["position"]),q.value.has("output")?(t.openBlock(),t.createBlock(ca,{key:0,mode:"output",reversed:x("output"),targets:q.value.get("output")},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]),m.value&&y.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.output,(z,ae)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${z.id}`,class:"handle indented"},[t.createElementVNode("div",cR,[t.createElementVNode("div",dR,t.toDisplayString(z.name),1),t.createVNode(da,{color:L.value,position:O.value,type:ae<e.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Jt),{id:`outputs@${z.id}`,position:O.value,type:"source"},null,8,["id","position"]),q.value.has(z.id)?(t.openBlock(),t.createBlock(ca,{key:0,mode:"output",reversed:x("output"),targets:q.value.get(z.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),b.value?(t.openBlock(),t.createElementBlock("div",uR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(w.value,z=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${z}`,class:"handle"},[t.createElementVNode("div",fR,[t.createElementVNode("div",pR,t.toDisplayString(z),1)]),t.createVNode(t.unref(Jt),{id:`branch@${z}`,connectable:!1,position:T.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-c0706d4a"]]),mR=ve(t.defineComponent({__name:"GroupNode",props:{data:{},active:{type:Boolean}},setup(e){const n=e,o=t.computed(()=>n.data.phase==="response"),r=t.computed(()=>o.value?xe.Right:xe.Left);return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-branch-group-node",{reversed:o.value,"drop-target":e.active}])},[t.createVNode(t.unref(Jt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),lg=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=Ye.useElementBounding(i),{i18n:{t:l}}=Ve(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:g,groupDrop:_}=jV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:h,propertiesPanelOpen:y,invalidConfigNodeIds:w,selectedNode:b,duplicateNode:C,commit:N,selectPortalEdge:k}=c,{screenToFlowCoordinate:S,zoomIn:A,zoomOut:R,viewport:O,maxZoom:T,minZoom:E}=s,{activeGroupId:L,startPanelDrag:x,endPanelDrag:B,updateActiveGroup:P,attachNodeToActiveGroup:q}=_;function G(U){var ee;const H=(ee=U.dataTransfer)==null?void 0:ee.types.find(_e=>_e.startsWith(`${Ar}/`));if(H)return H.replace(`${Ar}/`,"")}function K(U){var H;if(e.mode==="edit"){if(((H=U==null?void 0:U.node)==null?void 0:H.type)==="group"){p(void 0),k(void 0);return}y.value=!0}}function F(U){e.mode==="edit"&&(U.preventDefault(),P(S({x:U.clientX,y:U.clientY})))}function I(U){var se;if(e.mode!=="edit")return;const H=(se=U.dataTransfer)==null?void 0:se.getData(Ar);if(!H)return;U.preventDefault();const ee=JSON.parse(H);if(ee.action!=="create-node")return;const _e=S({x:U.clientX,y:U.clientY}),{type:be,anchor:re}=ee.data,J={type:be,phase:e.phase,position:{x:_e.x-re.offsetX,y:_e.y-re.offsetY}},te=h(J,!1);if(!te){B();return}q(te),N(),p(te),y.value=!0,B()}async function j(){await d(),setTimeout(()=>u(),0)}const z=t.computed(()=>{if(e.mode==="preview")return[];const U=[{name:"zoom_in",icon:ke.AddIcon,action:A,disabled:O.value.zoom>=T.value},{name:"zoom_out",icon:ke.RemoveIcon,action:R,disabled:O.value.zoom<=E.value},{name:"fit_view",icon:ke.FullscreenIcon,action:u}];return e.mode==="edit"&&U.push({name:"auto_layout",icon:ke.AutoLayoutIcon,action:j}),U});e.mode==="edit"&&(Ye.useEventListener("dragstart",U=>{G(U)&&x()}),Ye.useEventListener("dragend",()=>{B()}));async function ae(){const U=b.value;if(e.mode!=="edit"||!U||U.phase!==e.phase)return;const H=C(U.id,m(U.id));H&&(await p(H),y.value=!0,g(H))}return tm({enabled:t.computed(()=>!!b.value&&e.mode==="edit"&&b.value.phase===e.phase),duplicate:ae}),n({autoLayout:d,fitView:u}),(U,H)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Zp),{id:e.flowId,class:t.normalizeClass(["flow",{readonly:e.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":e.mode==="edit","max-zoom":t.unref(TT),"min-zoom":t.unref(OT),"multi-selection-key-code":null,"nodes-connectable":e.mode==="edit","nodes-draggable":e.mode==="edit","pan-on-drag":e.mode==="preview"?!1:void 0,"pan-on-scroll":e.mode!=="edit"?!1:void 0,"zoom-on-double-click":e.mode!=="edit"?!1:void 0,"zoom-on-pinch":e.mode!=="edit"?!1:void 0,"zoom-on-scroll":e.mode!=="edit"?!1:void 0,onDragover:F,onDrop:I,onNodeClick:K,onNodesChange:H[0]||(H[0]=ee=>r("nodes-change")),onNodesInitialized:H[1]||(H[1]=ee=>r("initialized"))},{"node-flow":t.withCtx(({data:ee})=>[t.createVNode(ag,{data:ee,error:t.unref(w).has(ee.id),readonly:e.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:ee})=>[t.createVNode(mR,{active:t.unref(L)===ee.id,data:ee},null,8,["active","data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(zP)),t.createVNode(t.unref(_T),{"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(z.value,ee=>(t.openBlock(),t.createBlock(t.unref($e.KTooltip),{key:ee.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${ee.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(vr),{disabled:ee.disabled,onClick:t.withModifiers(ee.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(ee.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"])],512))}}),[["__scopeId","data-v-47761eb0"]]),gR={class:"label-content"},hR={class:"count"},yR={class:"label-content"},_R={class:"count"},sg=.5,Os=.03,bR=30,$s=ve(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),o=t.ref(!1),r=t.ref(!1),{responsePanelCollapsed:i}=hi(),{state:a,configNodeCounts:l,clearPendingLayout:s,setPendingFitView:c,commit:d,clear:f,portalSelection:u}=We(),p=t.useId(),m=`${p}-request`,g=`${p}-response`,_=Fe(m),h=Fe(g);function y(J,te){const{onPaneClick:se,onNodesChange:V,onEdgesChange:v,getSelectedNodes:M,getSelectedEdges:D}=J,{removeSelectedElements:ie}=te;function X(ne){if(!ne){ie();return}ne.some(Q=>Q.type==="select")&&M.value.length+D.value.length>0&&ie()}V(X),v(X),se(()=>X())}y(_,h),y(h,_),t.watch(u,J=>{J&&(_.removeSelectedElements(),h.removeSelectedElements())});const w=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),C=t.useTemplateRef("requestCanvasContainer"),N=t.useTemplateRef("requestFlow"),k=t.useTemplateRef("resizeHandle"),S=t.useTemplateRef("responseLabel"),A=t.useTemplateRef("responseCanvasContainer"),R=t.useTemplateRef("responseFlow"),O=Ye.useElementBounding(w),T=Ye.useElementBounding(b),E=Ye.useElementBounding(C),L=Ye.useElementBounding(k),x=Ye.useElementBounding(S),B=Ye.useElementBounding(A),P=t.computed(()=>Math.max(bR,O.height.value*Os)),q=t.computed(()=>O.height.value-T.height.value-L.height.value-x.height.value),G=t.computed(()=>{const J=q.value;return J?Math.max(Os,P.value/J):Os}),K=t.ref(sg),F=t.computed(()=>`${K.value*100}%`),I=t.computed(()=>`${(1-K.value)*100}%`),j=t.computed(()=>K.value<=G.value),z=t.computed(()=>1-K.value<=G.value);function ae(J,{persist:te=!0}={}){const se=Math.min(1,Math.max(0,J));K.value=se,te&&e.mode==="edit"&&(i.value=z.value)}function U(J,te=!0){ae(J?1:sg,{persist:te})}function H(J=!0){ae(0,{persist:J})}if(e.mode==="edit"){const J=l.value.response===0,te=i.value;U(J||te,!1)}else t.watch(()=>l.value.response,J=>{U(J===0,!1)},{immediate:!0});const ee=()=>{e.resizable&&(j.value?U(!1):H())},_e=()=>{e.resizable&&U(!z.value)},{isDragging:be}=Ye.useDraggable(k,{onMove(J){if(!e.resizable)return;const te=Math.max(0,J.y-E.top.value),se=Math.min(1,Math.max(0,te/q.value));ae(se,{persist:!1})},onEnd(){e.resizable&&(E.height.value<P.value?H():B.height.value<P.value?U(!0):ae(K.value))}});function re(){t.nextTick(()=>{var J,te;(J=N.value)==null||J.fitView(),(te=R.value)==null||te.fitView()})}return t.watch([o,r,()=>a.value.pendingLayout,()=>a.value.pendingFitView],([J,te,se,V])=>{e.inactive||!J||!te||!se&&!V||(se&&s(),V&&c(!1),setTimeout(async()=>{var v,M;se&&(await((v=N.value)==null?void 0:v.autoLayout(!1)),await((M=R.value)==null?void 0:M.autoLayout(!1)),d("*"),se==="clearHistory"&&f()),V&&setTimeout(()=>re(),0)},0))}),(J,te)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:w,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:e.resizable}]),onClick:ee},[e.resizable?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:j.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",gR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),t.createElementVNode("span",hR,[t.unref(l).request===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(l).request}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:C,class:t.normalizeClass(["canvas",{dragging:t.unref(be)}]),style:t.normalizeStyle({flexBasis:F.value})},[t.createVNode(lg,{ref_key:"requestFlow",ref:N,"flow-id":m,mode:e.mode,phase:"request",onInitialized:te[0]||(te[0]=se=>o.value=!0),onNodesChange:te[1]||(te[1]=se=>o.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:k,class:t.normalizeClass(["resize-handle",{resizable:e.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:S,class:t.normalizeClass(["label response",{dragging:t.unref(be),resizable:e.resizable}]),onClick:_e},[e.resizable?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:z.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",yR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),t.createElementVNode("span",_R,[t.unref(l).response===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(l).response}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:A,class:t.normalizeClass(["canvas response",{dragging:t.unref(be)}]),style:t.normalizeStyle({flexBasis:I.value})},[t.createVNode(lg,{ref_key:"responseFlow",ref:R,"flow-id":g,mode:e.mode,phase:"response",onInitialized:te[2]||(te[2]=se=>r.value=!0),onNodesChange:te[3]||(te[3]=se=>r.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-3d68b40b"]]),wR={class:"dk-confirm-modal-body"},kR={class:"connections"},CR=ve(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=Ve(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,g,_){return l.value=m,s.value=g??[],c.value=_??[],a.value=!0,await new Promise(h=>{d=h})}return n({open:p}),(m,g)=>{const _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:e.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:u},{default:t.withCtx(()=>[t.createElementVNode("div",wR,[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",kR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([h,y])=>(t.openBlock(),t.createElementBlock("div",{key:`${h}-${y}`,class:"connection"},[t.createVNode(t.unref(ke.AddIcon),{color:t.unref(r1)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(h)+" → "+t.toDisplayString(y),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([h,y])=>(t.openBlock(),t.createElementBlock("div",{key:`${h}-${y}`,class:"connection"},[t.createVNode(t.unref(ke.RemoveIcon),{color:t.unref(kl)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(h)+" → "+t.toDisplayString(y),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),ER={class:"dk-editor-nav"},NR={class:"top"},xR={class:"bottom"},SR=ve(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Qe),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:ke.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=hi(),l=t.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=t.ref(!1);function c(){a.value=!a.value}return(d,f)=>(t.openBlock(),t.createElementBlock("nav",ER,[t.createElementVNode("div",NR,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:g})=>t.createVNode(t.unref($e.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref($e.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:g},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(rr)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",xR,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(u=>s.value=!0,["self"]))},[t.createVNode(t.unref($e.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref($e.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(rr)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(ke.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(rr)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),vR={class:"dk-editor-main"},AR={class:"header"},IR={class:"actions"},PR={class:"settings"},TR={ref:"canvasContainer",class:"body"},OR=ve(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=We();function c(u){const p=ci[u],m=Cn.load(p,{schema:wo,json:!0});if(typeof m!="object"||m===null)return;const g=m,_={config:{...g,nodes:g.nodes??[]}};s(_,!0)}function d(){o.value=!1}tm({enabled:o,undo:r,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(u,p)=>(t.openBlock(),t.createElementBlock("div",vR,[t.createElementVNode("header",AR,[t.createElementVNode("div",IR,[t.createVNode(t.unref($e.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(sa,{keys:t.unref(Qi).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($e.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref($e.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(sa,{keys:t.unref(Qi).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($e.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",PR,[t.createVNode(mo,{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($e.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples"),width:240},{items:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(ci),(m,g)=>(t.openBlock(),t.createBlock(t.unref($e.KDropdownItem),{key:g,onClick:_=>c(g)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${g}`)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),t.createVNode(t.unref($e.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(ke.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref($e.KButton),{onClick:d},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",TR,[t.createVNode($s,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-24a6777e"]]),$R=["draggable"],BR={class:"icon"},VR={class:"content"},RR={class:"title"},DR={class:"description"},MR=ve(t.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(c=>({f628e926:t.unref(a),v4a9b9f82:t.unref(l)}));const o=n,{summary:r,icon:i,colors:{background:a,foreground:l}={}}=El[e.type];function s(c){o("dragstart",c,e.type)}return(c,d)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${e.type}`]:!0,unsupported:e.unsupported}]),draggable:!e.unsupported,onDragstart:s},[t.createElementVNode("div",BR,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",VR,[t.createElementVNode("div",RR,t.toDisplayString(e.type),1),t.createElementVNode("div",DR,t.toDisplayString(t.unref(r)),1)])],42,$R))}}),[["__scopeId","data-v-38d156c9"]]),LR={class:"dk-node-panel"},FR={key:0,class:"title"},UR={class:"node-list"},KR={"aria-hidden":"true",class:"preview",inert:""},jR=ve(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{createNode:o}=We(),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 A,R,O;const d=s.currentTarget,{left:f,top:u,width:p,height:m}=d.getBoundingClientRect(),g=s.clientX-f,_=s.clientY-u;i.value=o({type:c}),await t.nextTick();const h=document.querySelector(`#${r}`)||d,y=h.cloneNode(!0);y.classList.add("dk-drag-snapshot");const{offsetWidth:w,offsetHeight:b}=h;Object.assign(y.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${b}px`}),document.body.appendChild(y);const C=g/p,N=_/m,k={ratioX:C,ratioY:N,offsetX:w*C,offsetY:b*N},S={action:"create-node",data:{type:c,anchor:k}};(A=s.dataTransfer)==null||A.setData(Ar,JSON.stringify(S)),(R=s.dataTransfer)==null||R.setData(`${Ar}/${c}`,c),(O=s.dataTransfer)==null||O.setDragImage(y,k.offsetX,k.offsetY),requestAnimationFrame(()=>{y.remove(),i.value=void 0})};return(s,c)=>{const d=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",LR,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",FR,[t.createVNode(d,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),t.createElementVNode("div",UR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(El)),f=>(t.openBlock(),t.createBlock(MR,{key:f,type:f,onDragstart:l},null,8,["type"]))),128))]),t.createElementVNode("div",KR,[t.createVNode(t.unref(Zp),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(ag,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-eb57924c"]]);function GR(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=We(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var g;return((g=l.value.get("vault"))==null?void 0:g.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(g,_)=>{e(s.id,"output",g,!1);const h={...s.config,[g]:_};r(s.id,h)},removeVault:g=>{const _=En(s,"output",g);if(!_)return;const h=s.fields.output.length===1;o(s.id,_.id,!0,!1);const y=Gn(s.config,g);r(s.id,y,!h),h&&a(s.id)},updateVault:(g,_,h=!0)=>{const y={...s.config,[g]:_};r(s.id,y,h)},renameVault:(g,_,h=!0)=>{var C;const y=En(s,"output",g);if(!y)return;i(s.id,y.id,_,!1);const w=((C=s.config)==null?void 0:C[g])??"",b={...Gn(s.config,g),[_]:w};r(s.id,b,h)}}}const qR=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}}=De.useI18n(),i=t.inject(Le.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),g=e.validateName(m,e.isEditing);return l.value=g||"",g===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,g)=>{const _=t.resolveComponent("KInput"),h=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(Mo.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:e.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:u},{"form-prefix":t.withCtx(()=>[t.createVNode(_,{"model-value":a.value,"onUpdate:modelValue":[g[0]||(g[0]=y=>a.value=y),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(h,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),zR={class:"dk-vault-panel"},HR={class:"title"},YR={class:"vault-list"},WR={key:0,class:"vault-list-item"},XR={class:"vault-list-item-key"},ZR={class:"vault-list-item-key-text"},JR=ve(t.defineComponent({__name:"VaultField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=Jr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=De.useI18n(),f=t.computed(()=>new Set(i.value.map(y=>y.key))),u=()=>{const y=a();c.value=y,s.value=y},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=y=>{if(!s.value)throw new Error("no selected entry");const w=s.value.key,b=w!==y.secretName,C=s.value.value!==y.secretRef,N=b||C;s.value.value=y.secretRef,s.value.key=y.secretName,c.value?r("add",y.secretName,y.secretRef):N&&r("update",y.secretName,y.secretRef,b?w:void 0),c.value=null,p()},g=y=>{s.value=y},_=y=>{l(y.id),r("remove",y.key)},h=(y,w)=>{var b;if(!y)return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(y)&&!(w&&y===((b=s.value)==null?void 0:b.key)))return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(y,w)=>{var k,S;const b=t.resolveComponent("KButton"),C=t.resolveComponent("KDropdownItem"),N=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",zR,[t.createElementVNode("h3",HR,t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(b,{appearance:"tertiary",class:"add-button",size:"small",onClick:u},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",YR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),A=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:A.id},[A.key?(t.openBlock(),t.createElementBlock("div",WR,[t.createElementVNode("div",XR,[t.createVNode(t.unref(ke.KeyIcon),{color:t.unref(Co),size:16},null,8,["color"]),t.createElementVNode("div",ZR,t.toDisplayString(A.key),1)]),t.createVNode(N,null,{items:t.withCtx(()=>[t.createVNode(C,{onClick:R=>g(A)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),t.createVNode(C,{danger:"",onClick:R=>_(A)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{color:t.unref(or)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(qR,{"is-editing":!!s.value&&!c.value,"secret-name":(k=s.value)==null?void 0:k.key,"secret-ref":(S=s.value)==null?void 0:S.value,"validate-name":h,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function QR(){const{getSchema:e}=Ue();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=sn(n);return o.fields.forEach(r=>{const i=Object.keys(r)[0];if(i==="cache"){const a=r[i];r[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]},a.fields.forEach(l=>{const s=Object.keys(l)[0];if(s==="redis"){const c=l[s];l[s]={...c},delete l[s].required}})}}),o})}const eD={class:"dk-cache-panel"},tD={class:"title"},nD={key:0,class:"cache-item"},oD={class:"cache-item-key"},rD={class:"cache-item-key-text"},iD={class:"dk-resource-cache-form"},aD={key:1},lD={key:2,class:"dk-cache-inline-redis"},sD=ve(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const o=n,{getDefault:r,formData:i}=Ue(),a=wt("cache");if(a.error)throw new Error("No cache schema");const l=t.ref(!1),{i18n:{t:s}}=De.useI18n(),c=t.computed(()=>!(d.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),d=t.computed(()=>{var w;return(w=a.value.value)==null?void 0:w.strategy}),f=t.computed(()=>{var w;return(w=a.value.value)!=null&&w.redis?Cn.dump(a.value.value.redis,{indent:2,noRefs:!0}):""}),u=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},g=()=>{u(),a.value.value||(a.value.value=r("cache"),a.value.value.strategy="memory")},_=()=>{l.value=!1,o("update",i)},h=()=>{var w,b;d.value==="memory"&&((w=i.cache)!=null&&w.partial_id)&&((b=i.cache)==null||delete b.partial_id)};async function y({codeElement:w,language:b,code:C}){w.innerHTML=await Ig.codeToHtml(C,{lang:b,theme:"catppuccin-mocha",structure:"inline"})}return(w,b)=>{const C=t.resolveComponent("KButton"),N=t.resolveComponent("KDropdownItem"),k=t.resolveComponent("KDropdown"),S=t.resolveComponent("KLabel"),A=t.resolveComponent("KCodeBlock"),R=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",eD,[t.createElementVNode("h3",tD,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",nD,[t.createElementVNode("div",oD,[t.createVNode(t.unref(ke.DatabaseIcon),{color:t.unref(Co),size:t.unref(ui)},null,8,["color","size"]),t.createElementVNode("div",rD,t.toDisplayString(e.strategy),1)]),t.createVNode(k,null,{items:t.withCtx(()=>[t.createVNode(N,{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),t.createVNode(N,{danger:"",onClick:m},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:t.withCtx(()=>[t.createVNode(C,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{color:t.unref(or)},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(C,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode(R,{"action-button-disabled":!c.value,"action-button-text":t.unref(s)("actions.save"),"max-width":"640px",title:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:l.value,onCancel:p,onProceed:_},{default:t.withCtx(()=>{var O,T;return[t.createElementVNode("div",iD,[t.createVNode(Pd,{items:[{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":h},null,8,["items"]),d.value==="memory"?(t.openBlock(),t.createBlock(ft,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),d.value==="redis"?(t.openBlock(),t.createElementBlock("div",aD,[t.createVNode(S,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(Gs.RedisConfigurationSelector),{"model-value":(O=t.unref(i).cache)==null?void 0:O.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":b[0]||(b[0]=E=>t.unref(i).cache.partial_id=E)},null,8,["model-value"])])):t.createCommentVNode("",!0),d.value==="redis"&&!((T=t.unref(i).cache)!=null&&T.partial_id)&&f.value?(t.openBlock(),t.createElementBlock("div",lD,[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),t.createVNode(A,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:y},null,8,["code"])])):t.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-103c3712"]]),cD={class:"dk-resources-panel"},dD=ve(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=QR(),o=t.ref(0),{addVault:r,removeVault:i,updateVault:a,renameVault:l,formData:s}=GR();function c(_,h,y){y&&y!==_&&l(y,_,!1),a(_,h)}const{state:d,commit:f}=We(),u=t.computed(()=>({cache:d.value.cacheConfig}));function p(_){d.value.cacheConfig=_.cache,f()}function m(){d.value.cacheConfig=void 0,f()}function g(){o.value++}return(_,h)=>(t.openBlock(),t.createElementBlock("div",cD,[t.createVNode(pt,{data:t.unref(s),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(JR,{name:"vault",onAdd:t.unref(r),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),h[0]||(h[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(pt,{key:`${o.value}`,data:u.value,schema:t.unref(n)},{default:t.withCtx(()=>{var y;return[t.createVNode(sD,{strategy:(y=u.value.cache)==null?void 0:y.strategy,onCancel:g,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),uD={class:"header"},fD={class:"title"},pD={class:"body"},mD={class:"panel"},gD=ve(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{sidePanelExpanded:o}=hi(),{propertiesPanelOpen:r,selectedNode:i}=We(),a=t.ref("nodes");function l(){r.value=!1}t.watch(i,c=>{c||l()});const s=t.ref(!1);return t.onMounted(()=>{s.value=!0}),(c,d)=>{const f=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:s.value}])},[t.createElementVNode("header",uD,[t.createElementVNode("h2",fD,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",pD,[t.createElementVNode("div",mD,[t.createVNode(f,{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=u=>a.value=u),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"]),a.value==="nodes"?(t.openBlock(),t.createBlock(jR,{key:0,"hide-title":""})):t.createCommentVNode("",!0),a.value==="resources"?(t.openBlock(),t.createBlock(dD,{key:1})):t.createCommentVNode("",!0)])])],2)}}}),[["__scopeId","data-v-e8c1849d"]]),hD=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock($t,{items:t.unref(Wa)([...t.unref(Fu)]),name:e.name},null,8,["items","name"]))}}),yD=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Ue(),{i18n:o}=Ve(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(Et,{"as-child":"",name:e.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock($t,{key:l,clearable:"","enable-filtering":"",items:e.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},t.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:t.withCtx(s=>[t.renderSlot(i.$slots,"item-label",t.mergeProps({ref_for:!0},s))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),_D=["data-testid"],bD={class:"dk-inputs-map-field-entry-body"},wD={class:"dk-inputs-map-field-entry-content"},kD=ve(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},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}=Jr(o,r),{i18n:{t:c}}=Ve(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(N,k="key"){var S;d.value&&(await t.nextTick(),(S=d.value.querySelector(`[data-${k}-input="${N}"]`))==null||S.focus())}function g(){const{id:N}=a(),k=i.value.findIndex(({key:S})=>!S);m(k===-1?i.value.length-1:k),f.value=N}function _(N){l(N.id),N.id===f.value&&(f.value=null),N.key.trim()!==""&&r("remove:field",N.key)}function h(N){p=N.key}function y(N){if(w(N)){N.key=p,delete u.value[N.id];return}if(N.id===f.value){if(N.key.trim()==="")return;r("add:field",N.key,N.value),f.value=null}else r("rename:field",p,N.key);p=N.key}function w(N){delete u.value[N.id];const k=o.fieldNameValidator("input",p,N.key);if(k)return u.value[N.id]=k,k}function b(N){w(N)}function C(N,k){N.id!==f.value&&r("change:inputs",N.key,k)}return t.watch(()=>i.value,N=>{f.value&&(N.find(({id:k})=>k===f.value)||(f.value=null))}),(N,k)=>{const S=t.resolveComponent("KAlert"),A=t.resolveComponent("KLabel"),R=t.resolveComponent("KInput"),O=t.resolveComponent("KSelect"),T=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(S,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(E,L)=>(t.openBlock(),t.createElementBlock("div",{key:E.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${L}`},[t.createVNode(A,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${L}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),t.createElementVNode("div",bD,[t.createElementVNode("div",wD,[t.createVNode(R,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${L}`,modelValue:E.key,"onUpdate:modelValue":[x=>E.key=x,x=>w(E)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":L,"data-testid":`ff-key-${t.unref(s).path.value}.${L}`,error:!!u.value[E.id],"error-message":u.value[E.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:x=>b(E),onChange:x=>y(E),onFocus:x=>h(E)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(O,{modelValue:E.value,"onUpdate:modelValue":x=>E.value=x,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${L}`,"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=>C(E,(x==null?void 0:x.value)??null)},t.createSlots({_:2},[N.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:x})=>[t.renderSlot(N.$slots,"item-label",t.mergeProps({ref_for:!0},x),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(T,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${L}`,icon:"",onClick:x=>_(E)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,_D))),128)),t.createVNode(T,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-dda8b239"]]),CD={class:"dk-source-item"},ua=ve(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("span",CD,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(gt)[e.item.type].icon),{color:t.unref(Co),size:t.unref(rr)},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),ED={key:1,class:"dk-inputs-field-or"},Qt=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}=Ue(),{i18n:{t:i}}=Ve(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?yD:kD:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function d(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function u(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref($e.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(r)("input")?(t.openBlock(),t.createBlock($t,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":t.withCtx(g=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(g)),()=>[t.createVNode(ua,{item:g},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",ED,[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($e.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:3,"field-name-validator":e.fieldNameValidator,items:e.items,"key-order":e.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},{"item-label":t.withCtx(g=>[t.createVNode(ua,{item:g},null,8,["item"])]),_:1},8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-90518c04"]]),ND={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"},xD={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 SD(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function Kt(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Do(e){const{i18n:{t:n}}=Ve(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function cg(e,n){const{i18n:{t:o}}=Ve();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function gn(e=0,n=1/0,o){const{i18n:{t:r}}=Ve();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function dg(e){const{i18n:{t:n}}=Ve();return function(r){if(!SD(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 Bs(e,n){const{i18n:{t:o}}=Ve();return function(i){if(i==null)return;const a=dg(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 Vs(e=-1/0,n=1/0,o){const{i18n:{t:r}}=Ve();return function(a){if(a==null)return;const l=dg(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 vD(e,n){const{state:o}=We(),{i18n:{t:r}}=Ve();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function AD(e,n,o){const{i18n:{t:r}}=Ve();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function ID(){const{i18n:{t:e}}=Ve();return function(o){if(xl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function ug(e){const{i18n:{t:n}}=Ve(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Kt(Do(o),cg("identifier",o),ID(),vD(e,o))}function PD(e){const{i18n:{t:n}}=Ve(),{getNodeById:o}=We();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 Kt(Do(s),AD(i,o(e),l))(a)}}function TD(e){const n=t.ref({}),o=t.computed(()=>Object.values(n.value).every(l=>!l)),r={};Object.keys(e).forEach(l=>{const s=e[l],c=u=>{const p=typeof u=="function"?u():u,m=s(p);return n.value[l]=m,m},d=()=>{n.value[l]=void 0},f=u=>(d(),c(u));r[l]={handleChange:f,handleBlur:f,validate:f,isValid:t.computed(()=>n.value[l]===void 0),error:t.computed(()=>n.value[l])}});function i(){n.value={}}function a(l){var s;for(const c of Object.keys(e)){const d=l[c],f=typeof d=="function"?d():d;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function so(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=We(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>TD(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const g in a.value)m[g]=p[g];return m}function f(u,p){const m=()=>{const _=o(),h=s.value[u];h&&h.handleBlur(_[u])},g=()=>{p==null||p();const _=o(),h=s.value[u];h&&h.handleChange(_[u])};return t.computed(()=>{const _=s.value[u];return{validate:m,update:g,error:_?!_.isValid.value:!1,errorMessage:_?_.error.value??"":""}})}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function jt(e,n){const{state:o,renameNode:r,getNodeById:i,addField:a,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:d,connectEdge:f,invalidConfigNodeIds:u,commit:p,revert:m}=We(),{i18n:{t:g}}=Ve(),_=tg(),h=t.computed(()=>{const G=i(e);if(!G)throw new Error("Node not existed");return G}),y=t.computed(()=>{const K=o.value.edges.filter(F=>F.target===e).reduce((F,I)=>{var H,ee;const j=i(I.source),z=(H=Nn(j,"output",I.sourceField))==null?void 0:H.id,ae=(ee=Nn(h.value,"input",I.targetField))==null?void 0:ee.name,U=j.id+(z?`.${z}`:"");return ae?F.inputs={...F.inputs,[ae]:U}:F.input=U,F},{});return h.value.fields.input.forEach(F=>{K.inputs||(K.inputs={}),K.inputs[F.name]||(K.inputs[F.name]=null)}),{...h.value.config,...K,name:h.value.name}}),w=G=>{r(e,G??"",!0,`${e}:rename`)},b=(G,K=!0)=>{if(!n)throw new Error("getFormValue is not defined");const F=Gn(n(),["name","input","inputs"]),I=G?`update:${e}:${G}`:void 0;c(e,F,K,I)},C=(G,K)=>{const F=En(h.value,G,K);if(!F)throw new Error(`Field with name "${K}" not found in node "${h.value.name}"`);return F},N=(G,K,F)=>{const I=!!F;a(e,G,K,!I),I&&O(K,F)},k=(G,K,F)=>{const I=C(G,K).id;l(e,I,F)},S=(G,K)=>{const F=C(G,K).id;s(e,F)},A=t.computed(()=>o.value.edges.filter(G=>G.target===e&&!G.targetField)[0]),R=t.computed(()=>o.value.edges.filter(G=>G.target===e&&G.targetField)),O=async(G,K)=>{const F=K==null,I=C("input",G).id;if(F){const re=R.value.find(J=>J.targetField===I);re&&d(re.id);return}const{nodeId:j,fieldId:z}=Gu(K),ae=C("input",G).id,U=[];A.value&&(U.push(Tr(A.value,i)),d(A.value.id,!1));const H=R.value.find(re=>re.targetField===I);H&&(U.push(Tr(H,i)),d(H.id,!1)),f({source:j,sourceField:z,target:e,targetField:ae},!1);const ee=_s(j,z,e,ae,i),_e=U[0]&&ee?U[0][1]===ee[1]:!1;if(p(),_e||U.length===0)return;await _(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ee],U)||m()},T=async G=>{if(G==null){A.value&&d(A.value.id);return}const F=[];for(const U of R.value)F.push(Tr(U,i)),d(U.id,!1);A.value&&d(A.value.id,!1);const{nodeId:I,fieldId:j}=Gu(G);f({source:I,sourceField:j,target:e,targetField:void 0},!1);const z=_s(I,j,e,void 0,i);if(p(),F.length===0)return;await _(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[z],F)||m()},E=G=>{const K=[...o.value.edges,{source:G,target:e}];return Tl(gi(K))},L=t.computed(()=>{var K,F;const G=[];for(const I of o.value.nodes)if((K=No(I.type).io)!=null&&K.output&&I.fields.output&&I.id!==e&&!(I.type==="property"&&!hs((F=I.config)==null?void 0:F.property))&&!E(I.id)&&!(h.value.phase==="request"&&I.phase==="response")&&!(I.type==="vault"&&I.fields.output.length===0)){G.push({value:I.id,label:I.name,type:I.type});for(const z of I.fields.output)G.push({value:`${I.id}.${z.id}`,label:`${I.name}.${z.name}`,type:I.type})}return G}),x=t.computed(()=>h.value.fields.input.map(G=>G.name)||[]);function B(G){u.value.delete(e),G||u.value.add(e)}const P=PD(e);function q(G,K,F){const I=i(e);if(!I)throw new Error("Node not found when validating field name");const j=En(I,G,K);return P(G,F,j==null?void 0:j.id)}return{formData:y,inputOptions:L,inputEdge:A,inputsEdges:R,inputsFieldNames:x,currentNode:h,setName:w,setConfig:b,addField:N,renameFieldByName:k,removeFieldByName:S,setInputs:O,setInput:T,nameValidator:ug(e),fieldNameValidator:q,toggleNodeValid:B}}function Gt(e){const{getSchema:n}=Ue();return t.computed(()=>{if(vt(e))switch(e){case"response":return xD;case"service_request":return ND}try{const r=n().fields.find(d=>Wr(d,"config"));if(!r)throw new Error("Config field not found in schema.");const a=r.config.fields.find(d=>Wr(d,"nodes"));if(!a)throw new Error("Nodes field not found in config schema.");const c=a.nodes.elements.subschema_definitions[e];if(!c)throw new Error(`Subschema "${e}" not found in the schema.`);return c}catch(o){throw new Error(`Failed to get subschema "${e}": ${o.message}`)}})}const hn=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ve(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 0?"":f});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function d(){s=a.value.trim()}return t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),OD=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Ve(),o=t.useTemplateRef("form"),r=Gt("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=jt(e.nodeId,()=>o.value.getValue()),{createFieldHandler:g}=so({validationConfig:{url:Kt(Do({fieldName:"URL"}),cg("url",{fieldName:"URL"})),timeout:Kt(Bs("integer"),Vs(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),_=g("url",()=>l("url")),h=g("timeout",()=>l("timeout"));return(y,w)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(hn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(kt,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"url",onBlur:t.unref(_).validate,"onUpdate:modelValue":t.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(hD,{name:"method",onUpdate:w[0]||(w[0]=C=>t.unref(l)())}),t.createVNode(Wn,{error:t.unref(h).error,"error-message":t.unref(h).errorMessage,name:"timeout",onBlur:t.unref(h).validate,"onUpdate:modelValue":t.unref(h).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(kt,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=C=>t.unref(l)("ssl_server_name"))}),t.createVNode(Qt,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),$D=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=jt(e.nodeId,()=>n.value.getValue());return(d,f)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Qt,{"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"]))}}),BD=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=jt(e.nodeId,()=>n.value.getValue());return(d,f)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Qt,{"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"]))}}),fg={jqlang:"https://jqlang.org/manual/"},VD=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=Ve(),r=t.useTemplateRef("form"),i=Gt("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:g,nameValidator:_,toggleNodeValid:h,fieldNameValidator:y}=jt(e.nodeId,()=>r.value.getValue());function w(A,R){u("input",A,R)}function b(A){p("input",A)}function C(A,R){m("input",A,R)}const N=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:k}=so({validationConfig:{jq:Kt(Do({fieldName:N}),gn(1,10240,{fieldName:N}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:h}),S=k("jq",()=>s("jq"));return(A,R)=>{const O=t.resolveComponent("KLabel"),T=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(hn,{name:t.unref(a).name,validate:t.unref(_),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(O,{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(kt,{autosize:"",error:t.unref(S).error,"error-message":t.unref(S).errorMessage,label:t.unref(N),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(S).validate,"onUpdate:modelValue":t.unref(S).update},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(T,{"hide-icon":"",href:t.unref(fg).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(fg).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(Qt,{"field-name-validator":t.unref(y),"field-names":t.unref(g),items:t.unref(c),"onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":C},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),RD=ve(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},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}=Jr(o,r,!1),{i18n:d}=Ve(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(N,k="key"){var S;f.value&&(await t.nextTick(),(S=f.value.querySelector(`[data-${k}-input="${N}"]`))==null||S.focus())}function g(){const N=l(),k=a.value.findIndex(({key:S})=>!S);m(k===-1?a.value.length-1:k),u.value=N}function _(N){var k;N.id===((k=u.value)==null?void 0:k.id)&&(u.value=null),s(N.id),N.key.trim()!==""&&r("remove:field",N.key)}function h(N){p=N.key}function y(N){var k;if(b(N)){N.key=p,delete i.value[N.id];return}if(N.id===((k=u.value)==null?void 0:k.id)){if(N.key.trim()==="")return;u.value=null,r("add:field",N.key,N.value)}else r("rename:field",p,N.key);p=N.key}function w(N,k){var A;if(k.id===((A=u.value)==null?void 0:A.id))return;const S=N.target.value.trim();r("change:value",k.key,S)}function b(N){delete i.value[N.id];const k=o.fieldNameValidator("output",p,N.key);if(k)return i.value[N.id]=k,k}function C(N){b(N)}return t.watchEffect(()=>{u.value&&!a.value.some(N=>N.id===u.value.id)&&a.value.push(u.value)}),(N,k)=>{const S=t.resolveComponent("KAlert"),A=t.resolveComponent("KLabel"),R=t.resolveComponent("KButton"),O=t.resolveComponent("KInput"),T=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(S,{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(A,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(E,L)=>(t.openBlock(),t.createBlock(T,{key:E.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${L}`},{actions:t.withCtx(()=>[t.createVNode(R,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${L}`,icon:"",onClick:x=>_(E)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(O,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${L}`,modelValue:E.key,"onUpdate:modelValue":[x=>E.key=x,x=>b(E)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":L,"data-testid":`ff-key-${t.unref(c).path.value}.${L}`,error:!!i.value[E.id],"error-message":i.value[E.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:x=>C(E),onChange:x=>y(E),onFocus:x=>h(E)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(O,{modelValue:E.value,"onUpdate:modelValue":x=>E.value=x,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${L}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:x=>w(x,E)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(R,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!u.value,onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-5e17f8cb"]]);function DD(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 fa(e){const n={};for(const[o,r]of Object.entries(e))if(r!=null){n[o]=r;try{r==="null"?n[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(n[o]=JSON.parse(r))}catch{}}return n}function MD(e,n,o){const r={};for(const i of Object.keys(e))i===n?r[o]=e[n]:r[i]=e[i];return r}const LD=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=We(),{fieldNameValidator:c}=jt(e.nodeId),d=Gt("static"),f=ug(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(C=>C.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const g=t.computed(()=>{var R;if(!u.value)return{};const b=((R=u.value.config)==null?void 0:R.values)??{},C={},N=o(u.value.id).map(O=>O.sourceField).filter(Boolean).map(O=>Nn(u.value,"output",O)).map(O=>O==null?void 0:O.name).filter(Boolean),k=u.value.fields.output.map(O=>O.name),S=Object.keys(b);return new Set([...S,...N,...k]).forEach(O=>{if(O in b){C[O]=b[O];return}C[O]=""}),{name:u.value.name,values:DD(C)}});function _(b,C){if(!u.value)throw new Error("No selected node");const N=C!==void 0;if(r(e.nodeId,"output",b,!N),N){const k={values:fa({...g.value.values,[b]:C})};l(e.nodeId,k)}}function h(b,C){if(!u.value)throw new Error("No selected node");const N=En(u.value,"output",b);if(!N)throw new Error("No field found to rename");const k={values:fa(MD(g.value.values??{},b,C))};l(e.nodeId,k,!1),i(e.nodeId,N.id,C)}function y(b){var k;if(!u.value)throw new Error("No selected node");const C=En(u.value,"output",b);if(!C)throw new Error("No field found to delete");a((k=u.value)==null?void 0:k.id,C.id,!0,!1);const N={values:fa({...g.value.values})};delete N.values[b],l(e.nodeId,N)}function w(b,C){if(!u.value)throw new Error("No selected node");const N={...g.value.values};N[b]=C;const k={values:fa(N)};l(e.nodeId,k)}return(b,C)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:g.value,schema:t.unref(d)},{default:t.withCtx(()=>{var N;return[t.createVNode(hn,{name:((N=u.value)==null?void 0:N.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(RD,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":_,"onChange:value":w,"onRemove:field":y,"onRename:field":h},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),FD={class:"dk-kong-property-item"},UD={class:"property-type"},KD={class:"property-badges"},jD=ve(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=Ve(),r=e,i=n,{formData:a}=Ue(),l=t.ref(Ir(a.property)),s=t.computed(()=>Pr(a.property)),c=t.ref(gs(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(io).map(([m])=>{var h;const g=Pr(m)?(h=a.property)==null?void 0:h.startsWith(m.replace(Vo,"")):a.property===m;return{label:g&&c.value?m.replace(Vo,c.value):m,value:m,selected:g}}));function u(m){const g=ea.find(_=>{var h;return(h=a.property)==null?void 0:h.startsWith(_)});g&&(a.property=g+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Ir(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Ir(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=gs(m),l.value=Ir(m)}),(m,g)=>{const _=t.resolveComponent("KBadge"),h=t.resolveComponent("KSelect"),y=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(h,{key:d.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=w=>e.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",FD,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",UD,t.toDisplayString(t.unref(io)[w.value].dataType),1)]),t.createElementVNode("div",KD,[t.unref(io)[w.value].readable?(t.openBlock(),t.createBlock(_,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(io)[w.value].writable?(t.openBlock(),t.createBlock(_,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(y,{key:0,"model-value":c.value,"onUpdate:modelValue":[g[1]||(g[1]=w=>c.value=w),u],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=w=>e.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),GD=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=We(),a=Gt("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:g,fieldNameValidator:_}=jt(e.nodeId,()=>n.value.getValue()),h=t.computed(()=>ys(l.value.property));function y(b){var N;const C=(N=o.value)==null?void 0:N.id;if(!C)throw new Error("Expected selectedNode to be defined");hs(b)||i(C,!1),ys(b)||r(C,!1),c()}const{fields:w}=so({validationConfig:()=>({property:Do({fieldName:"Property"}),key:Pr(l.value.property)?Do({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:gs(l.value.property)}),toggleNodeValid:g});return(b,C)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(hn,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode($t,{name:"content_type",onUpdate:C[0]||(C[0]=N=>t.unref(c)())}),t.createVNode(jD,{validators:t.unref(w),"onUpdate:modelValue":y,"onUpdate:propertyKey":C[1]||(C[1]=N=>t.unref(c)("property-key"))},null,8,["validators"]),h.value?(t.openBlock(),t.createBlock(Qt,{key:0,"field-name-validator":t.unref(_),"field-names":t.unref(p),items:t.unref(d),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),qD=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=jt(e.nodeId,()=>n.value.getValue()),{createFieldHandler:m}=so({validationConfig:{status:Kt(Bs("integer",{fieldName:"Status"}),Vs(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),g=m("status",()=>a("status"));return(_,h)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(hn,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Wn,{error:t.unref(g).error,"error-message":t.unref(g).errorMessage,name:"status",onBlur:t.unref(g).validate,"onUpdate:modelValue":t.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(mo,{name:"warn_headers_sent","onUpdate:modelValue":h[0]||(h[0]=y=>t.unref(a)())}),t.createVNode(Qt,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function zD(e){const n=jt(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=We(),{i18n:{t:l}}=Ve(),s=tg(),c=rl(),d=t.computed(()=>{var b;const y={...n.formData.value},w=ar(((b=n.currentNode.value)==null?void 0:b.type)||"branch");for(const C of w)(!(C in y)||y[C]==null)&&(y[C]=[]);return y});function f(y,w,b){const C=r(y),N=r(b),k=C?`${C.name}.${w}`:`${y}.${w}`,S=N?N.name:b;return[k,S]}function u(y){return(y==null?[]:Array.isArray(y)?y:[y]).filter(w=>vl(w))}function p(y,w){return i.wouldCreateCycle(y,w)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(y,w,b){const C=[],N=[],k=[];for(const S of b){const A=i.findMembership(S);if(!A||A.ownerId===y&&A.branch===w)continue;const R=i.getMembers(A.ownerId,A.branch).filter(O=>O!==S);k.push({ownerId:A.ownerId,branch:A.branch,members:R}),C.push(f(y,w,S)),N.push(f(A.ownerId,A.branch,S))}return{conflictUpdates:k,addedAssignments:C,removedAssignments:N}}function g(y,w,b,C){let N=!1;for(const k of C)N=i.setMembers(k.ownerId,k.branch,k.members,{commit:!1})||N;return N=i.setMembers(y,w,b,{commit:!1})||N,N}async function _(y,w){const b=n.currentNode.value,C=u(w),N=i.prepareMembers(b.id,y,C),k=i.getMembers(b.id,y);if(Al(k,N))return!0;const S=N.filter(E=>!k.includes(E));for(const E of S)if(p(b.id,E))return!1;const{conflictUpdates:A,addedAssignments:R,removedAssignments:O}=m(b.id,y,S);return A.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),R,O)?!1:(g(b.id,y,N,A)&&a(),!0)}const h=t.computed(()=>{const y=n.currentNode.value;return!y||!i?[]:o.value.nodes.filter(w=>w.id!==e&&!vt(w.type)&&w.phase===y.phase&&!i.wouldCreateCycle(y.id,w.id)).map(w=>({value:w.id,label:w.name,type:w.type}))});return{...n,formData:d,branchOptions:h,updateBranchMembers:_}}const HD=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Ve(),o=Gt("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:d,setInputs:f,inputsFieldNames:u,fieldNameValidator:p,updateBranchMembers:m}=zD(e.nodeId);async function g(_,h){await m(_,h)||(r.value+=1)}return(_,h)=>(t.openBlock(),t.createBlock(pt,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(hn,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref($e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode($t,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:h[0]||(h[0]=y=>g("then",y))},{"item-label":t.withCtx(y=>[t.createVNode(ua,{item:y},null,8,["item"])]),_:1},8,["items"]),t.createVNode($t,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:h[1]||(h[1]=y=>g("else",y))},{"item-label":t.withCtx(y=>[t.createVNode(ua,{item:y},null,8,["item"])]),_:1},8,["items"]),t.createVNode(Qt,{"field-name-validator":t.unref(p),"field-names":t.unref(u),items:t.unref(l),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),YD=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("cache"),{i18n:{t:r}}=Ve(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=jt(e.nodeId,()=>n.value.getValue()),{createFieldHandler:g}=so({validationConfig:()=>({ttl:Kt(Bs("integer",{fieldName:"TTL"}),Vs(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),_=g("ttl",()=>l("ttl"));return(h,y)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(hn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref($e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(mo,{name:"bypass_on_error","onUpdate:modelValue":y[0]||(y[0]=w=>t.unref(l)("bypass_on_error"))}),t.createVNode(Wn,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"ttl",onBlur:t.unref(_).validate,"onUpdate:modelValue":t.unref(_).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Qt,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),WD=t.defineComponent({__name:"NodeFormXmlToJson",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("xml_to_json"),{i18n:{t:r}}=Ve(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=jt(e.nodeId,()=>n.value.getValue()),g=r("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),_=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:h}=so({validationConfig:()=>({attributes_block_name:Kt(()=>_()?void 0:g,A=>{if(A)return gn(1,32,{fieldName:"Attributes block name"})(A)}),attributes_name_prefix:Kt(()=>_()?void 0:g,A=>{if(A)return gn(1,32,{fieldName:"Attributes name prefix"})(A)}),text_block_name:gn(1,32,{fieldName:"Text block name"}),xpath:gn(1,256,{fieldName:"XPath"})}),getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,text_block_name:i.value.text_block_name,xpath:i.value.xpath}),toggleNodeValid:p}),y=h("attributes_block_name",()=>l("attributes_block_name")),w=h("attributes_name_prefix",()=>l("attributes_name_prefix")),b=h("text_block_name",()=>l("text_block_name")),C=h("xpath",()=>l("xpath")),N=()=>{y.value.validate(),w.value.validate()},k=()=>{y.value.update(),w.value.validate()},S=()=>{w.value.update(),y.value.validate()};return(A,R)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(hn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref($e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(mo,{name:"recognize_type","onUpdate:modelValue":R[0]||(R[0]=O=>t.unref(l)("recognize_type"))}),t.createVNode(kt,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"attributes_block_name",onBlur:N,"onUpdate:modelValue":k},null,8,["error","error-message"]),t.createVNode(kt,{error:t.unref(w).error,"error-message":t.unref(w).errorMessage,name:"attributes_name_prefix",onBlur:N,"onUpdate:modelValue":S},null,8,["error","error-message"]),t.createVNode(kt,{error:t.unref(b).error,"error-message":t.unref(b).errorMessage,name:"text_block_name",onBlur:t.unref(b).validate,"onUpdate:modelValue":t.unref(b).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(mo,{name:"text_as_property","onUpdate:modelValue":R[1]||(R[1]=O=>t.unref(l)("text_as_property"))}),t.createVNode(kt,{error:t.unref(C).error,"error-message":t.unref(C).errorMessage,name:"xpath",onBlur:t.unref(C).validate,"onUpdate:modelValue":t.unref(C).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Qt,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),XD=t.defineComponent({__name:"NodeFormJsonToXml",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("json_to_xml"),{i18n:{t:r}}=Ve(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,addField:f,removeFieldByName:u,renameFieldByName:p,inputsFieldNames:m,nameValidator:g,toggleNodeValid:_,fieldNameValidator:h}=jt(e.nodeId,()=>n.value.getValue()),y=r("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),w=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:b}=so({validationConfig:{attributes_block_name:Kt(()=>w()?void 0:y,gn(1,32,{fieldName:"Attributes block name"})),attributes_name_prefix:Kt(()=>w()?void 0:y,gn(1,32,{fieldName:"Attributes name prefix"})),root_element_name:gn(1,64,{fieldName:"Root element name"}),text_block_name:gn(1,32,{fieldName:"Text block name"})},getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,root_element_name:i.value.root_element_name,text_block_name:i.value.text_block_name}),toggleNodeValid:_}),C=b("attributes_block_name",()=>l("attributes_block_name")),N=b("attributes_name_prefix",()=>l("attributes_name_prefix")),k=b("root_element_name",()=>l("root_element_name")),S=b("text_block_name",()=>l("text_block_name"));function A(){C.value.validate(),N.value.validate()}function R(){C.value.update(),N.value.validate()}function O(){N.value.update(),C.value.validate()}function T(x,B){f("input",x,B)}function E(x){u("input",x)}function L(x,B){p("input",x,B)}return(x,B)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(hn,{name:t.unref(i).name,validate:t.unref(g),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref($e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(kt,{error:t.unref(C).error,"error-message":t.unref(C).errorMessage,name:"attributes_block_name",onBlur:A,"onUpdate:modelValue":R},null,8,["error","error-message"]),t.createVNode(kt,{error:t.unref(N).error,"error-message":t.unref(N).errorMessage,name:"attributes_name_prefix",onBlur:A,"onUpdate:modelValue":O},null,8,["error","error-message"]),t.createVNode(kt,{error:t.unref(k).error,"error-message":t.unref(k).errorMessage,name:"root_element_name",onBlur:t.unref(k).validate,"onUpdate:modelValue":t.unref(k).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(kt,{error:t.unref(S).error,"error-message":t.unref(S).errorMessage,name:"text_block_name",onBlur:t.unref(S).validate,"onUpdate:modelValue":t.unref(S).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Qt,{"field-name-validator":t.unref(h),"field-names":t.unref(m),items:t.unref(s),"onAdd:field":T,"onChange:input":t.unref(d),"onChange:inputs":t.unref(c),"onRemove:field":E,"onRename:field":L},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),ZD=["innerHTML"],JD={key:1,class:"branch-note"},QD={class:"branch-label"},eM={class:"branch-text"},tM=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${om}px`},offsetTop:{default:`${xT}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{getNodeById:o,branchGroups:r}=We(),i=t.computed(()=>e.nodeId&&o(e.nodeId)),a=t.computed(()=>{if(e.nodeId)return r.findMembership(e.nodeId)}),l=t.computed(()=>{if(!a.value)return"";const d=o(a.value.ownerId);return d?`${d.name}.${a.value.branch}`:""});function s(){e.nodeId&&r.removeMember(e.nodeId)}const c=t.computed(()=>{var d;switch((d=i.value)==null?void 0:d.type){case"call":return OD;case"service_request":return $D;case"response":return BD;case"jq":return VD;case"static":return LD;case"property":return GD;case"exit":return qD;case"branch":return HD;case"cache":return YD;case"xml_to_json":return WD;case"json_to_xml":return XD;default:return null}});return(d,f)=>(t.openBlock(),t.createBlock(t.unref($e.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":e.maxWidth,"offset-top":e.offsetTop,visible:e.visible,"z-index":t.unref(NT),onClose:f[0]||(f[0]=u=>d.$emit("close"))},t.createSlots({default:t.withCtx(()=>[i.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(xt)(i.value.type)},null,8,ZD)):t.createCommentVNode("",!0),a.value?(t.openBlock(),t.createElementBlock("div",JD,[t.createElementVNode("span",QD,[t.createVNode(t.unref(ke.ArrowSplitIcon),{color:t.unref(Co),size:t.unref(rr)},null,8,["color","size"]),t.createElementVNode("span",eM,t.toDisplayString(l.value),1)]),t.createVNode(t.unref($e.KTooltip),{placement:"top",text:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:t.withCtx(()=>[t.createVNode(t.unref($e.KButton),{appearance:"none","aria-label":t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:s},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):t.createCommentVNode("",!0),c.value?(t.openBlock(),t.createBlock(t.unref(c),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(ig,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),nM=ve(tM,[["__scopeId","data-v-6b2b83cd"]]),oM={class:"dk-editor-content"},rM={class:"main"},iM=ve(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=We();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",oM,[t.createVNode(t.unref(gD)),t.createElementVNode("div",rM,[t.createVNode(OR)]),t.createVNode(nM,{"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"]]),aM={key:0,class:"dk-editor-modal"},lM=ve(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({v8758bbfe:`${t.unref(ET)}px`,v30e03211:`${t.unref(nm)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=We();FV(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=Ye.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",aM,[t.createVNode(SR,{class:"nav",onBack:l}),t.createVNode(iM,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(CR,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),sM={class:"dk-flow-editor"},cM={class:"flow-panels-container"},dM={class:"overlay"},uM=ve(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Qe),{formData:r}=Ue(),i=n;function a(c,d,f,u){const p={...r.config,nodes:c};f!==void 0&&(p.resources=f);const m={...r.__ui_data,...d};r.config=p,r.__ui_data=m,u!=null?r.partials=[{id:u}]:r.partials&&(r.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=ef(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),L1({enabled:l}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",sM,[t.createElementVNode("div",cM,[t.createVNode($s,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",dM,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=u=>l.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(ke.ExpandIcon))]),_:1})])]),t.createVNode(lM,{open:t.unref(l),"onUpdate:open":d[1]||(d[1]=u=>t.isRef(l)?l.value=u:null)},null,8,["open"])])}}}),[["__scopeId","data-v-82ca6e78"]]);function fM(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 pM(e){const n=e.path[2];return n==="output"||n==="outputs"}function pg(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function mg(e,n){const o=e.input!==void 0&&e.input!==null,r=pg(e.inputs);o&&r&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=e.output!==void 0&&e.output!==null,a=pg(e.outputs);i&&a&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function gg(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,d)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,d)=>{for(const f of fM(c,d)){const u=f.value.split(".",1)[0];if(a.has(u)||o.addIssue({code:"custom",message:`Unknown node "${u}" in connection "${f.value}"`,path:f.path}),pM(f)){const p=`${f.nodeName}->${u}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${u}" and "${u}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${u}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${u}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${u}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const mM=Y.z.enum(Mu),gM=Y.z.enum(ko),hg=e=>ko.includes(e),Rs=Y.z.enum(Lu),yg=Rs.options;Y.z.union([Rs,mM]);const hM=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,_g=Y.z.string().min(1).max(255).regex(hM,"Invalid node name (snake_case / kebab-case only)").refine(e=>!hg(e),"Name clashes with reserved implicit node").brand(),pa=Y.z.union([gM,_g]),yM=Y.z.string().min(1).brand(),_M=["then","else"];Y.z.enum(_M);const st=Y.z.string().min(1).max(255).refine(e=>{if(pa.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return pa.safeParse(o).success&&yM.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),bg=Y.z.enum(Fu),yn=Y.z.object({type:Y.z.string(),name:_g,input:st,inputs:Y.z.record(Y.z.string().min(1).max(255),st).nullish(),output:st,outputs:Y.z.record(Y.z.string().min(1).max(255),st).nullish()}).loose().superRefine((e,n)=>{mg(e,n)}),bM=Y.z.object({type:Y.z.string(),name:Y.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}),yg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${yg.join(", ")}`})}),wM=yn.safeExtend({type:Y.z.literal("call"),method:bg.nullish(),ssl_server_name:Y.z.string().min(1).nullish(),timeout:Y.z.number().int().min(0).max(2147483646).nullish(),url:Y.z.url(),inputs:Y.z.object({body:st,headers:st,query:st}).partial().nullish(),outputs:Y.z.object({body:st,headers:st,status:st}).partial().nullish()}).strict(),kM=yn.safeExtend({type:Y.z.literal("exit"),status:Y.z.number().int().min(200).max(599).nullish(),warn_headers_sent:Y.z.boolean().nullish(),output:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),CM=yn.safeExtend({type:Y.z.literal("jq"),jq:Y.z.string().min(1).max(10240),outputs:Y.z.never().nullish()}).strict(),EM=yn.safeExtend({type:Y.z.literal("xml_to_json"),recognize_type:Y.z.boolean().nullish().default(!0),attributes_block_name:Y.z.string().min(1).max(32).nullish().default("#attr"),attributes_name_prefix:Y.z.string().min(1).max(32).nullish(),text_block_name:Y.z.string().min(1).max(32).nullish().default("#text"),text_as_property:Y.z.boolean().nullish().default(!1),xpath:Y.z.string().min(1).max(256).nullish(),inputs:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict().superRefine((e,n)=>{!e.attributes_block_name&&!e.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),NM=yn.safeExtend({type:Y.z.literal("json_to_xml"),attributes_block_name:Y.z.string().min(1).max(32).nullish().default("#attr"),attributes_name_prefix:Y.z.string().min(1).max(32).nullish(),root_element_name:Y.z.string().min(1).max(64).nullish(),text_block_name:Y.z.string().min(1).max(32).nullish().default("#text"),inputs:Y.z.record(Y.z.string().min(1).max(255),st).nullish(),outputs:Y.z.never().nullish()}).strict().superRefine((e,n)=>{!e.attributes_block_name&&!e.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),xM=yn.safeExtend({type:Y.z.literal("property"),content_type:Y.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:Y.z.string().min(1),inputs:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),SM=yn.safeExtend({type:Y.z.literal("static"),values:Y.z.record(Y.z.string(),Y.z.unknown()),input:Y.z.never().nullish(),inputs:Y.z.never().nullish()}).strict(),vM=yn.safeExtend({type:Y.z.literal("cache"),bypass_on_error:Y.z.boolean().nullish(),inputs:Y.z.object({data:st,key:st,ttl:st}).partial().nullish(),outputs:Y.z.object({data:st,hit:st,miss:st,stored:st}).partial().nullish(),ttl:Y.z.number().int().gt(0).nullish()}).strict(),AM=yn.safeExtend({type:Y.z.literal("branch"),then:Y.z.array(pa).nullish(),else:Y.z.array(pa).nullish()}).strict(),IM=bM.pipe(Y.z.discriminatedUnion("type",[wM,kM,CM,EM,NM,xM,SM,vM,AM])),PM=Y.z.record(Y.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),Y.z.string().min(1).max(4095)),TM=Y.z.object({dictionary_name:Y.z.string().nullish().default("kong_db_cache")}),OM=Y.z.object({host:Y.z.string().default("127.0.0.1"),port:Y.z.number().int().min(0).max(65535).default(6379)}),$M=Y.z.object({ip:Y.z.string().default("127.0.0.1"),port:Y.z.number().int().min(0).max(65535).default(6379)}),BM=Y.z.object({host:Y.z.string().nullish().default("127.0.0.1"),port:Y.z.number().int().min(0).max(65535).nullish().default(6379),connect_timeout:Y.z.number().int().min(0).max(2147483646).nullish().default(2e3),send_timeout:Y.z.number().int().min(0).max(2147483646).nullish().default(2e3),read_timeout:Y.z.number().int().min(0).max(2147483646).nullish().default(2e3),username:Y.z.string().nullish(),password:Y.z.string().nullish(),sentinel_username:Y.z.string().nullish(),sentinel_password:Y.z.string().nullish(),database:Y.z.number().int().nullish().default(0),keepalive_pool_size:Y.z.number().int().min(1).max(2147483646).nullish().default(256),keepalive_backlog:Y.z.number().int().min(0).max(2147483646).nullish(),sentinel_master:Y.z.string().nullish(),sentinel_role:Y.z.enum(["master","slave","any"]).nullish(),sentinel_nodes:Y.z.array(OM).min(1,{message:"sentinel_nodes must contain at least 1 item"}).nullish(),cluster_nodes:Y.z.array($M).min(1,{message:"cluster_nodes must contain at least 1 item"}).nullish(),ssl:Y.z.boolean().default(!1).nullish(),ssl_verify:Y.z.boolean().default(!1).nullish(),server_name:Y.z.string().nullish(),cluster_max_redirections:Y.z.number().int().default(5).nullish(),connection_is_proxied:Y.z.boolean().default(!1).nullish(),timeout:Y.z.number().int().nullish(),sentinel_addresses:Y.z.array(Y.z.string()).min(1).nullish(),cluster_addresses:Y.z.array(Y.z.string()).min(1).nullish()}).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"]})}),VM=Y.z.object({strategy:Y.z.enum(["memory","redis"]).nullish(),memory:TM,redis:BM}),RM=Y.z.object({vault:PM.nullish(),cache:VM.nullish()});Y.z.array(Y.z.object({id:Y.z.string()})),Y.z.object({nodes:Y.z.array(IM).min(1,"At least one node is required"),debug:Y.z.boolean().nullish(),resources:RM.nullish()}).strict().superRefine((e,n)=>{gg(e,ko,n)});const wg=Rs.options,Ds=Y.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!hg(e),"Node name conflicts with reserved implicit node"),ct=Y.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"),_n=Y.z.object({type:Y.z.string(),name:Ds,input:ct.nullish(),inputs:Y.z.record(Y.z.string(),ct.nullish()).nullish(),output:ct.nullish(),outputs:Y.z.record(Y.z.string(),ct.nullish()).nullish()}).loose().superRefine((e,n)=>{mg(e,n)}),DM=Y.z.object({type:Y.z.string(),name:Y.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}),wg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${wg.join(", ")}`})}),MM=_n.safeExtend({type:Y.z.literal("call"),method:bg.nullish(),ssl_server_name:Y.z.string().nullish(),timeout:Y.z.union([Y.z.number(),Y.z.string()]).nullish(),url:Y.z.string().nullish(),inputs:Y.z.object({body:ct.nullish(),headers:ct.nullish(),query:ct.nullish()}).partial().nullish(),outputs:Y.z.object({body:ct.nullish(),headers:ct.nullish(),status:ct.nullish()}).partial().nullish()}).strict(),LM=_n.safeExtend({type:Y.z.literal("exit"),status:Y.z.union([Y.z.number(),Y.z.string()]).nullish(),warn_headers_sent:Y.z.boolean().nullish(),output:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),FM=_n.safeExtend({type:Y.z.literal("jq"),jq:Y.z.string().nullish(),outputs:Y.z.never().nullish()}).strict(),UM=_n.safeExtend({type:Y.z.literal("xml_to_json"),recognize_type:Y.z.boolean().nullish(),attributes_block_name:Y.z.string().nullish(),attributes_name_prefix:Y.z.string().nullish(),text_block_name:Y.z.string().nullish(),text_as_property:Y.z.boolean().nullish(),xpath:Y.z.string().nullish(),inputs:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),KM=_n.safeExtend({type:Y.z.literal("json_to_xml"),attributes_block_name:Y.z.string().nullish(),attributes_name_prefix:Y.z.string().nullish(),root_element_name:Y.z.string().nullish(),text_block_name:Y.z.string().nullish(),inputs:Y.z.record(Y.z.string(),ct.nullish()).nullish(),outputs:Y.z.never().nullish()}).strict(),jM=_n.safeExtend({type:Y.z.literal("property"),content_type:Y.z.string().nullish(),property:Y.z.string().nullish(),inputs:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),GM=_n.safeExtend({type:Y.z.literal("static"),values:Y.z.record(Y.z.string(),Y.z.unknown()).nullish(),input:Y.z.never().nullish(),inputs:Y.z.never().nullish()}).strict(),qM=_n.safeExtend({type:Y.z.literal("cache"),bypass_on_error:Y.z.boolean().nullish(),inputs:Y.z.object({data:ct.nullish(),key:ct.nullish(),ttl:ct.nullish()}).partial().nullish(),outputs:Y.z.object({data:ct.nullish(),hit:ct.nullish(),miss:ct.nullish(),stored:ct.nullish()}).partial().nullish(),ttl:Y.z.union([Y.z.number(),Y.z.string()]).nullish()}).strict(),zM=_n.safeExtend({type:Y.z.literal("branch"),then:Y.z.array(Ds).nullish(),else:Y.z.array(Ds).nullish()}).strict(),HM=DM.pipe(Y.z.discriminatedUnion("type",[MM,LM,FM,UM,KM,jM,GM,qM,zM])),YM=Y.z.record(Y.z.string(),Y.z.string()),WM=Y.z.object({dictionary_name:Y.z.string().nullish()}),XM=Y.z.object(),ZM=Y.z.object({strategy:Y.z.enum(["memory","redis"]).nullish(),memory:WM.nullish(),redis:XM.nullish()}),JM=Y.z.object({vault:YM.nullish(),cache:ZM.nullish()}),kg=Y.z.object({nodes:Y.z.array(HM).nullish(),debug:Y.z.boolean().nullish(),resources:JM.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||gg(e,ko,n)}).nullish(),QM={class:"dk-option-label"},eL=["innerHTML"],tL=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},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),o=e,r=t.inject(Le.FORMS_CONFIG),i=t.ref(!1);t.onMounted(()=>{i.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:a}=hi(),l=t.computed(()=>r.app!=="konnect"||d.value===!1?"code":a.value),s=t.computed(()=>r.app==="kongManager"||l.value==="flow"?"form":"code"),c={flow:ke.DesignIcon,code:ke.CodeblockIcon},d=t.ref(!0),f=t.computed(()=>{const h=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return h[0].disabled=!d.value,h}),u=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 h;(h=o.onValidityChange)==null||h.call(o,{model:"config",valid:!0})});function p(){var h;(h=o.onValidityChange)==null||h.call(o,{model:"config",valid:!0})}function m(){p()}function g(h){if(p(),r.app!=="konnect")return;const y=h==null?void 0:h.config,{success:w}=kg.safeParse(y);d.value=w}function _(h){var y;d.value=!1,(y=o.onValidityChange)==null||y.call(o,{model:"config",valid:!1,error:h})}return(h,y)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(r).app==="konnect"?(t.openBlock(),t.createBlock(t.Teleport,{key:0,disabled:!i.value,to:"#plugin-form-page-actions"},[t.createVNode(t.unref($e.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":l.value,options:f.value,"onUpdate:modelValue":y[0]||(y[0]=w=>a.value=w)},{"option-label":t.withCtx(({option:w})=>[t.createVNode(t.unref($e.KTooltip),{disabled:d.value||w.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",QM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(c[w.value]))),t.createTextVNode(" "+t.toDisplayString(w.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])],8,["disabled"])):t.createCommentVNode("",!0),t.createVNode($d,t.mergeProps(o,{class:"dk-form","editor-mode":s.value}),{"code-editor":t.withCtx(()=>[t.createVNode(Du,{class:"code-editor",editing:o.isEditing,onChange:g,onError:_},null,8,["editing"])]),"plugin-config-title":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.plugin_config.title")),1)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:u.value},null,8,eL)]),default:t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(uM,{key:0,"is-editing":o.isEditing,onChange:m},null,8,["is-editing"])):l.value==="code"&&t.unref(r).app==="kongManager"?(t.openBlock(),t.createBlock(Du,{key:1,class:"code-editor",editing:o.isEditing,onChange:g,onError:_},null,8,["editing"])):t.createCommentVNode("",!0)]),_:1},16,["editor-mode"])],64))}}),[["__scopeId","data-v-26bca75b"]]),Cg=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))},Eg=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},nL=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=De.useI18n(),l={prepareFormData:c=>{var f,u;const d=Kn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Eg(p.headers),Eg(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=Kn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Cg(p.headers),Cg(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(pt,{config:l,data:e.data,schema:e.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default_acl:t.withCtx(({name:f})=>[t.createVNode(Wo,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.default_acl_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),tools:t.withCtx(({name:f})=>[t.createVNode(Wo,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(ti)]),_:1},8,["data","schema"]))}}),oL=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(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(nl,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(nL,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),rL=ve(t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n,createComputedRenderRules:o}=Ue(),r=o("config"),i=t.computed(()=>{var _;const a=[],l=[],s=new Set,d=n().fields.find(h=>Object.keys(h)[0]==="config");if(!d||!("config"in d))return{defaultVisible:a,advanced:l};const f=d.config;f.entity_checks&&f.entity_checks.forEach(h=>{var w,b;let y;"at_least_one_of"in h?y=h.at_least_one_of:"conditional"in h&&((w=n(Ze("config",h.conditional.if_field)))!=null&&w.required)&&h.conditional.then_match.required?y=[h.conditional.if_field,h.conditional.then_field]:"conditional_at_least_one_of"in h&&((b=n(Ze("config",h.conditional_at_least_one_of.if_field)))!=null&&b.required)&&(y=[h.conditional_at_least_one_of.if_field,...h.conditional_at_least_one_of.then_at_least_one_of]),y==null||y.forEach(C=>s.add(C))});const u=((_=r.value)==null?void 0:_.bundles)??[],p=new Map;for(const h of u)for(let y=1;y<h.length;y++)p.set(h[y],h[y-1]);const m=h=>{const y=p.get(h);return y?m(y):h},g=new Map;for(const h of f.fields){const y=Object.keys(h)[0];g.set(y,m(y))}for(const h of f.fields){const y=Object.keys(h)[0];if(g.get(y)!==y)continue;let b;h[y].required||s.has(y)?b=a:b=l,b.push(y)}for(const h of f.fields){const y=Object.keys(h)[0],w=g.get(y);w!==y&&(a.includes(w)?a:l).push(y)}return{defaultVisible:a,advanced:l}});return(a,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Et,{"as-child":"",name:"config",omit:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(ti,{class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(Et,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1})],64))}}),[["__scopeId","data-v-e757fbd3"]]),Ng=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:oL,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},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const n=e,o=t.useSlots();return t.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock($d,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(()=>[t.createVNode(rL)]),_:1},16))}}),DatakitForm:tL,RequestCalloutForm:Wk,ServiceProtectionForm:AC},Symbol.toStringTag,{value:"Module"}));function iL(e,n){const o=It[e];if(!o||!o.fieldRules)return n;const r=aL(o.fieldRules),i={...n};return i.fields=i.fields.map(a=>Object.keys(a)[0]==="config"?{config:{...a.config,entity_checks:[...a.config.entity_checks||[],...r]}}:a),i}function aL(e){const n=[],o=r=>r.startsWith("config.")?r.substring(7):r;return e.atLeastOneOf&&e.atLeastOneOf.forEach(r=>{n.push({at_least_one_of:r.map(o)})}),e.onlyOneOf&&e.onlyOneOf.forEach(r=>{n.push({mutually_exclusive:r.map(o)})}),e.mutuallyRequired&&e.mutuallyRequired.forEach(r=>{n.push({mutually_required:r.map(o)})}),e.onlyOneOfMutuallyRequired&&e.onlyOneOfMutuallyRequired.forEach(r=>{if(r.forEach(i=>{n.push({mutually_required:i.map(o)})}),r.length>1)for(let i=0;i<r.length;i++)for(let a=i+1;a<r.length;a++){const l=r[i].map(o),s=r[a].map(o);l.forEach(c=>{s.forEach(d=>{n.push({mutually_exclusive:[c,d]})})})}}),n}const lL={class:"kong-ui-entities-plugin-form"},sL={key:1,class:"entity-form"},cL={class:"plugin-config-empty-state"},dL=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,default:void 0}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var _e,be;const o=Object.keys(Le.sharedForms),r=Object.keys(Ng);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}=he.useAxios((_e=a.config)==null?void 0:_e.axiosRequestConfig),{parseSchema:s}=De.useSchemas({entityId:((be=a.entityMap.focusedEntity)==null?void 0:be.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:d,dismissField:f,isObjectEmpty:u,unsetNullForeignKey:p}=De.usePluginHelpers(),m=De.useExperimentalFreeForms(),{objectsAreEqual:g}=he.useHelpers(),{i18n:{t:_}}=Ve(),h=re=>a.config.app==="konnect"?re.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?re.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):re,y=(re,J)=>{let te=`${a.config.apiBaseUrl}${ze.form[a.config.app].entityGetOne}`;return te=h(te),te=te.replace(/{entity}/gi,re),te=te.replace(/{id}/gi,J),te},w=re=>{let J=`${a.config.apiBaseUrl}${ze.form[a.config.app].entityGetAll}`;return J=h(J),J=J.replace(/{entity}/gi,re),J},b=(re,J,te)=>{const se=y(re,J);return l.get(se,te)},C=(re,J)=>{const te=w(re);return a.config.app==="konnect"?l.get(te).then(se=>{const{data:{data:V}}=se;if(delete J.size,delete J.offset,V.length&&Object.keys(J).length===1){const v=Object.keys(J)[0],M=V.filter(D=>D[v]?!!D[v].toLowerCase().includes(J[v].toLowerCase()):!1);se.data.data=M}return se}):l.get(te,{params:J})},N=(re,J,te)=>{const se=w(re);if(a.config.app==="konnect"){const{size:V,offset:v,...M}=J;if(re==="consumer_groups")return l.get(se,{params:{size:1e3},signal:te}).then(ie=>{const{data:{data:X}}=ie;if(X.length&&Object.keys(M).length===1){const ne=Object.keys(M)[0],Q=X.filter(Z=>Z[ne]?!!Z[ne].toLowerCase().includes(M[ne].toLowerCase()):!1);ie.data.data=Q}return ie});const D={size:V,offset:v};for(const ie of Object.keys(M))D.filter={[ie]:{contains:M[ie]}};return l.get(se,{params:D,signal:te})}return l.get(se,{params:J,signal:te})},k=(re,J=50)=>{const te=w(re);return l.get(te,{params:{size:J}})};t.provide(Le.FORMS_API_KEY,{getOne:b,getAll:C,getAllV2:N,peek:k}),t.provide(Le.FORMS_CONFIG,a.config);const S=t.ref(""),A=t.ref(""),R=t.ref(null),O=t.ref({}),T=t.reactive({}),E=t.reactive({}),L=t.computed(()=>{var re;return(re=R.value)==null?void 0:re.options}),x=t.computed(()=>iL(E.name,a.rawSchema)),B=t.ref(!1),P=t.ref(),q=(re,J)=>{B.value=re??"",P.value=J},G=re=>{var J;(J=P.value)==null||J.call(P,re),B.value=!1},K=re=>{var D,ie;const J={...a.schema},te=E,se=T,V=Object.keys(te),v={};if(!u(O.value))for(let X=0;X<((ie=(D=O.value)==null?void 0:D.fields)==null?void 0:ie.length);X++)J[O.value.fields[X].model]=O.value.fields[X];Le.customFields.forEach(X=>{J[X]&&(J[X].fields.forEach(ne=>{ne.fields&&ne.fields.forEach(Q=>{J[Q.model]=Q}),ne.model&&(J[ne.model]=ne)}),delete J[X])}),V.forEach(X=>{var ce;if(!J[X]){X==="partials"&&(v[X]=te[X]);return}const ne=J[X];let Q=te[X];const Z=se[X],ue=Array.isArray(Q)?"array":typeof Q,$=ne?ne.valueType:null,oe=ne?ne.valueArrayType:null,le=ne?ne.transform:null;if(Q==null&&Z==null&&!ne.submitWhenNull)return;if(ne){if($&&ue!==$)switch($){case"array":ue==="string"&&Q.length&&(Q=Q.split(",").map(fe=>{if(fe=fe.trim(),oe==="string")return String(fe);if(oe==="number")return Number(fe);if(oe==="boolean"){if(typeof fe=="string")return fe.toLowerCase()==="true"||fe==="1";if(typeof fe=="number")return fe===1}return fe})),(!Q||!Q.length)&&(Q=ne.submitWhenNull?null:[]);break;case"number":ne.referenceable!==!0&&(Q=Number(Q));break;case"boolean":ue==="string"&&(Q=Q.toLowerCase()==="true"||Q==="1"),ue==="number"&&(Q=Q===1);break;case"string":Q=Q==null?"":String(Q);break}else $==="array"&&(!Q||!Q.length?Q=ne.submitWhenNull?null:[]:((ce=ne.inputAttributes)==null?void 0:ce.type)==="number"&&(Q=Q.map(fe=>Number(fe))));if(ne.type==="array"&&ne.nestedFields){const fe=Ee=>{Object.keys(Ee).forEach(Pe=>{Ee[Pe]&&typeof Ee[Pe]=="object"&&!Array.isArray(Ee[Pe])&&Ee[Pe]!==null?fe(Ee[Pe]):(Ee[Pe]===void 0||Ee[Pe]===null||typeof Ee[Pe]=="number"&&isNaN(Ee[Pe])||typeof Ee[Pe]=="string"&&Ee[Pe].trim().length===0)&&delete Ee[Pe]})};Q&&typeof Q=="object"&&fe(Q)}ne.type==="object-advanced"&&ne.fields&&Q!==null&&(Object.entries(Q).length===0?Q=null:Object.keys(Q).forEach(fe=>{Array.isArray(Q[fe])||(Q[fe]=Q[fe].split(","))}))}let pe=c(X);if(ne.fieldNameHasDashes){const[fe,...Ee]=pe.split(".").reverse();pe=[fe.replace(/_/g,"-"),...Ee].reverse().join(".")}if($==="object-expand"){let fe;[pe,fe]=pe.split(".");let Ee={};v[pe]&&(Ee=v[pe]),Ee[fe]=Q,Q=Ee}Z!==void 0&&Q===""&&Q!==Z?v[pe]=$==="object"?{}:null:ne.type==="checklist"&&Q===""?v[pe]=[]:Q!==""&&(v[pe]=Q),v[pe]=le?le(Q):v[pe],p(pe,v)});const M=d(v);if(A.value){if(re&&re.length)for(const X of re)delete M[X];Object.assign(M,ae.value)}return M},F=(re,J={})=>{f(E,J,re,a.editing),i("model-updated",{model:E,originalModel:T,data:K()})},I=(re,J)=>{var V;const te={[J]:re};typeof((V=a.schema[J])==null?void 0:V.modelTransformer)=="function"&&(te[J]=a.schema[J].modelTransformer(re));const se=Object.assign({},E,te);Object.assign(E,se),i("model-updated",{model:E,originalModel:T,data:K()})},j=re=>{i("validity-change",re)},z=(re,J)=>{Object.keys(re).forEach(te=>{var D,ie;let se=J?`${J}-${te}`:te,V=a.schema[se];if(!V){const X=J?`${J}-${te.replace(/-/g,"_")}`:te.replace(/-/g,"_");(D=a.schema[X])!=null&&D.fieldNameHasDashes&&(se=X,V=a.schema[se]),J&&((ie=a.schema[J])==null?void 0:ie.keyFromObject)===te&&(se=J,V=a.schema[se])}const v=re[te],M=typeof v;if(V&&V.type==="object-advanced"&&!v){E[se]={},T[se]={};return}if(Array.isArray(v)){E[se]=JSON.parse(JSON.stringify(v)),T[se]=JSON.parse(JSON.stringify(v));return}if(M==="object"&&v&&!v.length)return z(v,se);if(M==="object"&&v&&v.length&&V.type==="input"){E[se]=v.join(", "),T[se]=v.join(", ");return}E[se]=v,T[se]=v}),i("model-updated",{model:E,originalModel:T,data:K()})},ae=t.shallowRef(a.record),U=(re,J)=>{ae.value=re;const te={...E};for(const se of J||[])delete te[se];i("model-updated",{model:{...te,...re},originalModel:T,data:K(J)})},H=t.ref(!0),ee=()=>{var re;if(a.record&&a.schema&&(z({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)&&z({consumer_id:a.record.consumer_id||a.record.consumer}),z(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)&&z({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&&F("redis",{partials:a.record.partials}),A.value?U(a.record):z(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const J={};for(const te in a.entityMap){const se=a.entityMap[te].id,V=a.entityMap[te].idField,v=V==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(V).replace("_","-"));Object.prototype.hasOwnProperty.call(E,v)&&(J[v]=se)}z(J)}if((re=a.entityMap.consumer)!=null&&re.id&&a.schema&&a.credential){const J={};Object.prototype.hasOwnProperty.call(E,"consumer")&&(J.consumer=a.entityMap.consumer.id),z(J)}H.value=!1};return t.watch(H,re=>{i("loading",re)}),t.watch(()=>a.schema,(re,J)=>{var se,V;if(g(re||{},J||{}))return;const te=s(re,void 0,void 0,a.engine);Object.assign(E,te.model),O.value={fields:(V=(se=O.value)==null?void 0:se.fields)==null?void 0:V.map(v=>({...v,disabled:v.disabled||!1}))},Object.assign(T,JSON.parse(JSON.stringify(te.model))),A.value=a.engine?a.engine==="vfg"?void 0:Ha(te.model.name,m)||"CommonForm":Ha(te.model.name,m),S.value=Le.getSharedFormName(te.model.name),ee()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var re,J;R.value=s(a.schema,void 0,void 0,a.engine),Object.assign(E,((re=R.value)==null?void 0:re.model)||{}),O.value=((J=R.value)==null?void 0:J.schema)||{},ee()}),(re,J)=>{var se,V;const te=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",lL,[H.value?(t.openBlock(),t.createBlock(te,{key:0,type:"form"})):E.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",sL,[A.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(Ng[A.value]),{key:0,"form-model":E,"form-options":L.value,"form-schema":O.value,"is-editing":e.editing,model:e.record,"on-form-change":U,"on-model-updated":I,"on-validity-change":j,"plugin-name":E.name,"render-rules":(se=t.unref(It)[E.name])==null?void 0:se.freeformRenderRules,schema:x.value,onGlobalAction:J[0]||(J[0]=(v,M)=>re.$emit("globalAction",v,M))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Le.AUTOFILL_SLOT_NAME),fn:t.withCtx(v=>[v.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Mo.VaultSecretPickerProvider),t.mergeProps({key:0},v,{onOpen:q}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","plugin-name","render-rules","schema"])):S.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Le.sharedForms)[S.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":E,"form-options":L.value,"form-schema":O.value,"is-editing":e.editing,"on-model-updated":I,"on-partial-toggled":F,"show-new-partial-modal":v=>re.$emit("showNewPartialModal",v)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Le.AUTOFILL_SLOT_NAME),fn:t.withCtx(v=>[v.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Mo.VaultSecretPickerProvider),t.mergeProps({key:0},v,{onOpen:q}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(t.openBlock(),t.createBlock(t.unref(Le.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:E,options:L.value,schema:O.value,onModelUpdated:I,onPartialToggled:F,onRefreshModel:K,onShowNewPartialModal:J[1]||(J[1]=v=>re.$emit("showNewPartialModal",v))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",cL,t.toDisplayString(t.unref(_)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(V=t.unref(It)[E.name])!=null&&V.fieldRules&&(a.config.isNewOtelSchema||E.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(X0,{rules:t.unref(It)[E.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Le.AUTOFILL_SLOT_NAME),fn:t.withCtx(v=>[v.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Mo.VaultSecretPickerProvider),t.mergeProps({key:0},v,{onOpen:q}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Mo.VaultSecretPicker),{config:a.config,setup:B.value,onCancel:J[2]||(J[2]=()=>B.value=!1),onProceed:G},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-247656d9"]]),uL={key:1},fL=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",uL,[t.renderSlot(n.$slots,"default")]))}}),pL={key:0},mL={class:"plugin-form-actions"},gL=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,default:void 0}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var Q;const o=t.inject(he.FEATURE_FLAGS.KM_1948_PLUGIN_FORM_LAYOUT,t.computed(()=>!1)),r=n,i=e,a=On.useRouter(),{i18n:{t:l}}=De.useI18n(),{customSchemas:s,typedefs:c}=De.useSchemas({app:i.config.app,credential:i.credential,experimentalRenders:i.config.app==="konnect"?i.config.experimentalRenders:void 0}),{formatPluginFieldLabel:d}=De.usePluginHelpers(),{getMessageFromError:f}=he.useErrors(),{capitalize:u}=he.useStringHelpers(),{objectsAreEqual:p}=he.useHelpers(),{axiosInstance:m}=he.useAxios((Q=i.config)==null?void 0:Q.axiosRequestConfig),g=t.ref(!1),_=t.computed(()=>!!i.pluginId),h=t.computed(()=>i.pluginId?he.EntityBaseFormType.Edit:he.EntityBaseFormType.Create),y=t.ref(void 0),w=t.ref(void 0),b=t.computed(()=>!!(i.credential&&i.config.entityId)),C=t.ref(void 0),N=t.ref({}),k=t.ref(),S=t.ref();t.provide(ni,{redisType:k,redisPath:S,isEditing:_.value});const A=t.ref(!1),R=t.reactive({enabled:!0,protocols:[],tags:[]}),O=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),T=t.ref([{title:l("view_configuration.json"),hash:"#json"},{title:l("view_configuration.yaml"),hash:"#yaml"}]);i.config.app==="konnect"&&T.value.splice(1,0,{title:l("view_configuration.terraform"),hash:"#terraform"}),(i.config.app==="kongManager"||i.config.enableDeckTab)&&T.value.push({title:l("view_configuration.deck"),hash:"#deck"});const E=t.ref(""),L=t.computed(()=>{var ue;if(b.value){let $=ze.form[i.config.app].credential[h.value];return $=$.replace(/{resourceEndpoint}/gi,q.value),$}let Z;return i.config.entityType&&i.config.entityId?Z=ze.form[i.config.app].edit.forEntity.replace(/{entityType}/gi,i.config.entityType).replace(/{entityId}/gi,i.config.entityId):Z=ze.form[i.config.app].edit.all,i.config.app==="konnect"&&((ue=It[i.pluginType])!=null&&ue.useUIData)?`${Z}?__ui_data=true`:Z}),x=()=>{g.value=!g.value},B=t.computed(()=>{var pe,ce,fe,Ee,Pe,ge,ye,Ke;const Z=i.config.entityType==="consumers"&&i.config.entityId||((ce=(pe=C.value)==null?void 0:pe.consumer)==null?void 0:ce.id),ue=i.config.entityType==="consumer_groups"&&i.config.entityId||((Ee=(fe=C.value)==null?void 0:fe.consumer_group)==null?void 0:Ee.id),$=i.config.entityType==="services"&&i.config.entityId||((ge=(Pe=C.value)==null?void 0:Pe.service)==null?void 0:ge.id),oe=i.config.entityType==="routes"&&i.config.entityId||((Ke=(ye=C.value)==null?void 0:ye.route)==null?void 0:Ke.id);if(!(Z||ue||$||oe))return{global:{entity:W.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const le={};return $&&(le.service={entity:W.PluginScope.SERVICE,entityEndpoint:"services",id:$,idField:Bn.SERVICE}),oe&&(le.route={entity:W.PluginScope.ROUTE,entityEndpoint:"routes",id:oe,idField:Bn.ROUTE}),Z&&(le.consumer={entity:W.PluginScope.CONSUMER,entityEndpoint:"consumers",id:Z,idField:Bn.CONSUMER}),ue&&(le.consumer_group={entity:W.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:ue,idField:Bn.CONSUMER_GROUP}),i.config.entityType&&(le.focusedEntity={entity:W.PluginScope[i.config.entityType.substring(0,i.config.entityType.length-1).toUpperCase()],entityEndpoint:i.config.entityType,id:i.config.entityId,idField:Bn[i.config.entityType.substring(0,i.config.entityType.length-1).toUpperCase()]}),le}),P=t.reactive({name:{default:i.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:l("plugins.form.fields.enabled.label"),textOn:l("plugins.form.fields.enabled.on_text"),textOff:l("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:i.hideScopeSelection&&(i.hideScopeSelection||h.value===he.EntityBaseFormType.Create&&i.config.entityId)?"foreign":"selectionGroup",disabled:i.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:l("plugins.form.scoping.global.label"),description:l("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:l("plugins.form.fields.protocols.help"),label:l("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:l("plugins.form.fields.instance_name.label"),inputType:"text",help:l("plugins.form.fields.instance_name.help")},tags:c.tags}),q=t.computed(()=>{var $;const Z=i.developer?"developers":"consumers",ue=(($=uo[i.pluginType])==null?void 0:$.endpoint)||"/plugins";return`${Z}/${i.config.entityId}${i.developer?"/credentials":""}${ue}`}),G=Z=>{const ue=Array.from(new Set(Z.map($=>typeof $)));return ue.length>1?"string":ue[0]},K=(Z,ue,$,oe)=>{var fe,Ee;let le=ue&&ue.fields||[];const pe=s[i.pluginType],ce=(Ee=(fe=uo[i.pluginType])==null?void 0:fe.schema)==null?void 0:Ee.fields;return Array.isArray(le)&&(le=le.reduce((Pe,ge)=>{const ye=Object.keys(ge)[0];return ye.match(/-/g)?Pe[ye.replace(/-/g,"_")]={...ge[ye],fieldNameHasDashes:!0}:Pe[ye]=ge[ye],Pe},{})),Object.keys(le).sort().forEach(Pe=>{var _t,en,Tn,bn,dt,de,Se;const ge=le[Pe];ge.type==="set"&&(ge.type="array");const ye=Z?`${Z}-${Pe}`:`${Pe}`;if((_t=pe==null?void 0:pe.fieldsToDelete)!=null&&_t.includes(ye)){fd($,ye);return}if(Object.prototype.hasOwnProperty.call(ge,"overwrite")||ge.hidden)return;if(ge.type==="table")return K(ye,ge.schema,$);if(ge.fields)return oe&&ge.type==="record"?($[ye]={type:"object",model:Pe,schema:{fields:Object.values(K(ye,ge,{},!0))}},$):K(ye,ge,$);if($[ye]={id:ye,model:Pe},$[ye].type=ge.type==="boolean"?"checkbox":"input",$[ye].required=ge.required,$[ye].referenceable=ge.referenceable,ye.startsWith("config-"))if(!oe&&ge.type==="array"&&(E.value=ye),oe&&E.value&&ye.startsWith(E.value)){const me=ye.slice(E.value.length+1);$[ye].label=me.split("-").map(d).join(".")}else $[ye].label=d(ye);if((Z==="config"||Z.startsWith("config-"))&&(en=le[Pe])!=null&&en.description&&($[ye].help=Br.marked.parse(le[Pe].description,{mangle:!1,headerIds:!1})),ge.type==="map"){if($[ye].type="object-advanced",$[ye].values=ge.values,ge.values.type==="array"){const{type:me}=ge.values.elements||{};$[ye].schema={fields:[{schema:{fields:[{...Re,model:ye,valueArrayType:me==="integer"?"number":me||"string",inputAttributes:{...Re.inputAttributes,type:me==="integer"?"number":"text",inputMode:me==="integer"?"numeric":"text"}}]}}]}}else ge.values.fields&&($[ye].schema={fields:[{type:"object",model:"object",schema:{fields:ge.values.fields.map(me=>{const Ce=Object.keys(me)[0];return{model:Ce,type:"input",label:u(Ce),placeholder:Ce,inputType:me[Ce].type}})}}]});return $}if(ge.enum&&ge.type==="array"&&($[ye].type="checklist",$[ye].values=ge.enum,$[ye].multi=!0,$[ye].multiSelect=!0),ge.one_of&&ge.type!=="array"&&($[ye].type="select",$[ye].values=ge.one_of,$[ye].selectOptions={noneSelectedText:l("plugins.form.no_selection")}),ge.elements&&ge.type==="array"){const me=ge.elements;if($[ye].referenceable=me.referenceable,$[ye].elements=me,["string","integer","number"].includes(me.type)&&!me.one_of){const{id:Ce,help:Ie,label:we,hint:Oe,values:Be,referenceable:Je,model:Me}=$[ye],{inputAttributes:He,...je}=JSON.parse(JSON.stringify(Re));He.type=me.type==="string"?"text":"number",$[ye]={id:Ce,help:Ie,label:we,hint:Oe,values:Be,referenceable:Je,model:Me,inputAttributes:He,...je}}}if(ge.hint&&($[ye].hint=ge.hint),pe&&!pe.overwriteDefault&&Object.keys(pe).forEach(me=>{if(me===ye){const{help:Ce,label:Ie,hint:we,values:Oe,referenceable:Be,elements:Je}=$[ye],{help:Me,...He}=pe[me];$[ye]={help:Ce,label:Ie,hint:we,values:Oe,referenceable:Be,elements:Je,...He},typeof Me=="string"&&($[ye].help=Br.marked.parse(Me,{mangle:!1,headerIds:!1}))}}),ge.type==="array"&&((Tn=ge.elements)==null?void 0:Tn.type)==="record"&&Array.isArray(ge.elements.fields)){let me={};for(const Ie of ge.elements.fields)me={...me,...Ie};const Ce=(de=(dt=(bn=$[ye])==null?void 0:bn.items)==null?void 0:dt.schema)==null?void 0:de.fields;if(Array.isArray(Ce))for(const Ie of $[ye].items.schema.fields){const we=(Se=me[Ie.model])==null?void 0:Se.description;Ie.help===void 0&&typeof we=="string"&&(Ie.help=Br.marked.parse(we,{mangle:!1,headerIds:!1}))}if(Ce||($[ye].type="array",$[ye].newElementButtonLabelClasses="kong-form-new-element-button-label",$[ye].fieldClasses="array-card-container-wrapper",$[ye].itemContainerComponent="FieldArrayCardContainer",$[ye].items={type:"object",schema:{fields:Object.values(K(ye,ge.elements,{},!0))}},$[ye].items.schema.fields.forEach(Ie=>{var we,Oe;for(const Be of ge.elements.fields){const Je=Object.keys(Be)[0],Me=((Oe=(we=Ie.id)==null?void 0:we.split)==null?void 0:Oe.call(we,"-"))??[];if(Me[Me.length-1]===Je){Ie.model=Je,Ie.label=d(Je);break}}}),ge.elements.type==="record"&&($[ye].nestedFields=!0)),!$[ye].nestedFields)$[ye].items.default=()=>ge.elements.fields.reduce((Ie,we)=>{const Oe=Object.keys(we)[0];return Ie[Oe]=we[Oe].default,Ie},{});else{const Ie=(we,Oe)=>{if(we.type==="object"){we.model&&(Oe[we.model]={});for(const Be of we.schema.fields)Ie(Be,we.model?Oe[we.model]:Oe)}else we.model&&(Oe[we.model]=we.default)};$[ye].items.default=()=>{const we={};return Ie($[ye].items,we),we}}}if(b.value&&ce){for(let me=0;me<ce.length;me++)if(ce[me][ye]){$[ye]={...$[ye],...ce[me][ye]};break}}if(ge.required&&ge.type!=="boolean"&&($[ye].required=!0,$[ye].selectOptions={hideNoneSelectedText:!0}),ge.required&&ge.type==="boolean"&&($[ye].default=ge.default??!1),ge.default!=null&&typeof ge.default!="object"&&ge.default!=="function"&&($[ye].default=ge.default),$[ye].type==="input"){["string","number"].includes(typeof $[ye].default)&&i.config.app==="konnect"&&($[ye].placeholder=`Default: ${$[ye].default===""?"<empty string>":$[ye].default}`);const{type:me}=ge.elements||{};me&&($[ye].valueArrayType=me==="integer"?"number":me),$[ye].inputType=ge.type==="array"||ge.type==="string"?ge.encrypted?"password":"text":ge.type}let Ke="string";ge.enum?Ke=G(ge.enum):ge.type==="boolean"?Ke="boolean":ge.type==="number"||ge.type==="integer"?(Ke="number",$[ye].inputType="number"):ge.type==="array"?(Ke="array",$[ye].default=ge.default,ge.len_min>0&&($[ye].submitWhenNull=!0)):ge.type==="foreign"?Ke="object":ge.default&&Array.isArray(ge.default)?(Ke="array",$[ye].valueArrayType=G(ge.default)):ge.default&&(Ke=typeof ge.default),$[ye].valueType=Ke,ge.fieldNameHasDashes&&($[ye].fieldNameHasDashes=!0)}),$},F=()=>{var ye,Ke,_t,en,Tn,bn,dt,de,Se,me,Ce,Ie;const Z=((ye=It[i.pluginType])==null?void 0:ye.scope.includes(W.PluginScope.SERVICE))??!0,ue=((Ke=It[i.pluginType])==null?void 0:Ke.scope.includes(W.PluginScope.ROUTE))??!0,$=((_t=It[i.pluginType])==null?void 0:_t.scope.includes(W.PluginScope.CONSUMER))??!0,oe=i.config.disableConsumerGroupScope?!1:((en=It[i.pluginType])==null?void 0:en.scope.includes(W.PluginScope.CONSUMER_GROUP))??!0,le=i.config.entityType==="consumers"&&!!i.config.entityId||!!((bn=(Tn=C.value)==null?void 0:Tn.consumer)!=null&&bn.id),pe=i.config.entityType==="consumer_groups"&&!!i.config.entityId||!!((de=(dt=C.value)==null?void 0:dt.consumer_group)!=null&&de.id),ce=i.config.entityType==="services"&&!!i.config.entityId||!!((me=(Se=C.value)==null?void 0:Se.service)!=null&&me.id),fe=i.config.entityType==="routes"&&!!i.config.entityId||!!((Ie=(Ce=C.value)==null?void 0:Ce.route)!=null&&Ie.id),Ee=[],Pe=(we,Oe,Be)=>we?l("plugins.form.disable_source_scope_change",{scope:Be}):Oe?l("plugins.form.disable_data_retrieving",{scope:Be}):"",ge=we=>{var Oe,Be;return((Be=(Oe=i.scopedEntitiesPermissions)==null?void 0:Oe[we])==null?void 0:Be.canRetrieve)===!1};if(Z){const we=ge("service"),Oe="services",Be=ce&&i.disableScopeSelection;Ee.push({id:"service-id",model:"service-id",label:l("plugins.form.scoping.gateway_service.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Oe,inputValues:{fields:["name","id"]},help:l("plugins.form.scoping.gateway_service.help"),disabled:Be||we,disabledTooltip:Pe(Be,we,Oe)})}if(ue){const we=ge("route"),Oe="routes",Be=fe&&i.disableScopeSelection;Ee.push({id:"route-id",model:"route-id",label:l("plugins.form.scoping.route.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:l("plugins.form.scoping.route.help"),disabled:Be||we,disabledTooltip:Pe(Be,we,Oe)})}if($){const we=ge("consumer"),Oe="consumers",Be=le&&i.disableScopeSelection;Ee.push({model:"consumer-id",label:l("plugins.form.scoping.consumer.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:l("plugins.form.scoping.consumer.help"),disabled:Be||we,disabledTooltip:Pe(Be,we,Oe)})}if(oe){const we=ge("consumer_group"),Oe="consumer_groups",Be=pe&&i.disableScopeSelection;Ee.push({model:"consumer_group-id",label:l("plugins.form.scoping.consumer_group.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:l("plugins.form.scoping.consumer_group.help"),disabled:Be||we,disabledTooltip:Pe(Be,we,Oe)})}if(Ee.length){const we=[...Z?["service"]:[],...ue?["route"]:[],...$?["consumer"]:[],...oe?["consumer_group"]:[]],Be=we.splice(we.length-2,2).map(Me=>l(Me==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Me}.plural`)).join(`${we.length>0?",":""} and/or `),Je=["Specific",[...we.length>0?[we.map(Me=>l(Me==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Me}.plural`)).join(", ")]:[],Be].join(", ")].join(" ");P.selectionGroup.fields.push({label:l("plugins.form.scoping.label"),description:Je,fields:[]}),P.selectionGroup.fields[1].fields=Ee}s[i.pluginType]&&s[i.pluginType].overwriteDefault&&Object.hasOwnProperty.call(s[i.pluginType],"formSchema")&&Object.assign(P,s[i.pluginType].formSchema)},I=t.computed(()=>!p(O.fields,R,!0)),j=t.computed(()=>!X.value&&!A.value&&(h.value===he.EntityBaseFormType.Create||I.value)),z=t.ref(!1),ae=t.ref(),U=Z=>{i.credential&&Z.password&&(Z.password=""),O.fields.id=(Z==null?void 0:Z.id)||void 0,ae.value=Z==null?void 0:Z.ordering,Object.assign(R,O.fields),C.value=Z,z.value=!0},H=t.ref({}),ee=Z=>{var ue;O.fields=Z.model,O.fields.id=((ue=C.value)==null?void 0:ue.id)||void 0,Object.assign(R,Z.originalModel),H.value=Z.data,i.isWizardStep&&r("model-updated",{model:O.fields,data:Z.data,resourceEndpoint:q.value})},_e=t.ref(new Map),be=t.computed(()=>[O.clientErrorMessage,O.serverErrorMessage].filter(Boolean).join("; ")),re=Z=>{Z.valid?_e.value.delete(Z.model):_e.value.set(Z.model,Z.error),O.clientErrorMessage=[..._e.value.entries()].map(([ue,$])=>`${ue}: ${typeof $=="string"?$:f($)}`).join("; "),O.clientErrorMessage&&(O.serverErrorMessage="")};t.watch([B,z],(Z,ue)=>{const $=Z[0]!==ue[0],oe=Z[1],le=ue[1];if(!b.value&&h.value===he.EntityBaseFormType.Edit&&($||oe&&oe!==le)){const pe=K("config",N.value,P);se.value&&(pe._isCustomPlugin=!0),k.value&&(pe._supported_redis_partial_type=k.value),w.value=pe}},{deep:!0});const J=()=>{i.config.cancelRoute?a.push(i.config.cancelRoute):r("cancel")},te=t.computed(()=>{const Z=i.config.entityType&&i.config.entityId&&!i.developer,ue=b.value?ze.form[i.config.app].credential[h.value]:ze.form[i.config.app][h.value][Z?"forEntity":"all"];let $=`${i.config.apiBaseUrl}${ue}`;return i.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),$=$.replace(/{resourceEndpoint}/gi,q.value),$=$.replace(/{id}/gi,i.pluginId),$=$.replace(/{entityType}/gi,i.config.entityType||""),$=$.replace(/{entityId}/gi,i.config.entityId||""),$}),se=t.computed(()=>!Object.keys(It).includes(i.pluginType)),V=t.computed(()=>{const Z=H.value;if(b.value){for(const ue in W.PluginScope){const $=W.PluginScope[ue];Z[$]&&!Z[$].id&&(Z[$]={id:i.config.entityId})}delete Z.created_at}return H.value.partials&&S.value&&fd(Z,S.value),Z}),v=t.computed(()=>{const{__ui_data:Z,...ue}={...V.value};return ue}),M=async()=>{if(!O.clientErrorMessage&&!i.isWizardStep)try{O.isReadonly=!0;let Z;const ue=JSON.parse(JSON.stringify(V.value)),$=s[i.pluginType];typeof($==null?void 0:$.shamefullyTransformPayload)=="function"&&$.shamefullyTransformPayload({originalModel:R,model:O.fields,payload:ue,schema:w.value}),h.value==="create"?Z=await m.post(te.value,ue):h.value==="edit"&&(Z=i.config.app==="konnect"||k.value&&ue.partials?await m.put(te.value,Object.assign({ordering:ae.value},ue)):await m.patch(te.value,ue)),Object.assign(R,O.fields),r("update",Z==null?void 0:Z.data)}catch(Z){O.serverErrorMessage=f(Z),r("error",Z)}finally{O.isReadonly=!1}},D=t.computed(()=>{var oe;const Z=b.value?(oe=uo[i.pluginType])==null?void 0:oe.schemaEndpoint:i.pluginType,ue=b.value?ze.form[i.config.app].credentialSchema:ze.form[i.config.app].pluginSchema;let $=`${i.config.apiBaseUrl}${ue}`;return i.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),$=$.replace(/{plugin}/gi,Z),$}),ie=t.ref(""),X=t.ref(!1),ne=t.ref("");return t.onBeforeMount(async()=>{var Z,ue,$,oe;X.value=!0;try{if(b.value&&i.config.app==="konnect"){const le=(Z=uo[i.pluginType])==null?void 0:Z.schemaEndpoint,pe=Gg[le];ie.value=le,w.value=K("",pe,{}),X.value=!1}else{const le=i.schema??(await m.get(D.value)).data;if(y.value=le,le)if(b.value)w.value=K("",le,{}),X.value=!1;else{const pe=le.fields.find(fe=>fe.config);N.value=pe?pe.config:le,le.supported_partials&&(k.value=Object.keys(le.supported_partials).find(fe=>[Vr.REDIS_CE,Vr.REDIS_EE].includes(fe)),S.value=(ue=le.supported_partials[k.value])==null?void 0:ue[0]),F();const ce=($=le.fields.find(fe=>fe.protocols))==null?void 0:$.protocols;if(ce){const{default:fe=[],elements:Ee={}}=ce;P.protocols.default=fe,P.protocols.placeholder=i.config.app==="konnect"?l("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:fe.join(", ")}):l("plugins.form.fields.protocols.placeholder"),(oe=Ee.one_of)!=null&&oe.length&&(P.protocols.values=Ee.one_of.map(Pe=>({label:Pe,value:Pe})))}if(z.value||h.value===he.EntityBaseFormType.Create){const fe=K("config",N.value,P);k.value&&(fe._supported_redis_partial_type=k.value),se.value&&(fe._isCustomPlugin=!0),w.value=fe}}}}catch(le){console.error(le),ne.value=f(le),r("error:fetch-schema",le)}finally{X.value=!1}}),(Z,ue)=>{const $=t.resolveComponent("KSkeleton"),oe=t.resolveComponent("KEmptyState"),le=t.resolveComponent("KButton"),pe=t.resolveComponent("KTabs"),ce=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["kong-ui-entities-plugin-form-container",{"new-form-layout":t.unref(o)}])},[X.value?(t.openBlock(),t.createBlock($,{key:0,type:"form"})):ne.value?(t.openBlock(),t.createBlock(oe,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(l)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(he.EntityBaseForm),{key:2,"can-submit":j.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(he.SupportedEntityType).Plugin,"error-message":be.value,"fetch-url":L.value,"form-fields":V.value,"is-readonly":O.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:J,"onFetch:error":ue[4]||(ue[4]=fe=>Z.$emit("error",fe)),"onFetch:success":U,onLoading:ue[5]||(ue[5]=fe=>Z.$emit("loading",fe))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",pL)):(t.openBlock(),t.createBlock(fL,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",mL,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(le,{key:0,appearance:"tertiary","data-testid":`plugin-${_.value?"edit":"create"}-form-view-configuration`,onClick:ue[3]||(ue[3]=fe=>x())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(le,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${_.value?"edit":"create"}-form-cancel`,disabled:O.isReadonly,onClick:J},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(le,{appearance:"primary","data-testid":`plugin-${_.value?"edit":"create"}-form-submit`,disabled:!j.value||O.isReadonly,type:"submit",onClick:M},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:M},null,32),t.createVNode(dL,{config:e.config,credential:b.value,editing:h.value===t.unref(he.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":i.enableVaultSecretPicker,engine:e.engine,"entity-map":B.value,"raw-schema":y.value,record:C.value,schema:w.value,onGlobalAction:ue[0]||(ue[0]=(fe,Ee)=>Z.$emit("globalAction",fe,Ee)),onLoading:ue[1]||(ue[1]=fe=>A.value=fe),onModelUpdated:ee,onShowNewPartialModal:ue[2]||(ue[2]=fe=>Z.$emit("showNewPartialModal",fe)),onValidityChange:re},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(ce,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(l)("view_configuration.title"),visible:g.value,onClose:x},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("view_configuration.message")),1),t.createVNode(pe,{"data-testid":"form-view-configuration-slideout-tabs",tabs:T.value},{json:t.withCtx(()=>[t.createVNode(t.unref(he.JsonCodeBlock),{config:e.config,"entity-record":v.value,"fetcher-url":te.value,"request-method":i.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(he.YamlCodeBlock),{"entity-record":v.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(he.TerraformCodeBlock),{"credential-type":ie.value,"entity-record":v.value,"entity-type":t.unref(he.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:t.withCtx(()=>[t.createVNode(t.unref(he.DeckCodeBlock),{app:e.config.app,"control-plane-name":e.config.app==="konnect"?e.config.controlPlaneName:void 0,"entity-record":v.value,"entity-type":t.unref(he.SupportedEntityType).Plugin,"geo-api-server-url":e.config.app==="konnect"?e.config.geoApiServerUrl:void 0,"kong-admin-api-url":e.config.app==="kongManager"?e.config.apiBaseUrl:void 0,workspace:e.config.app==="kongManager"?e.config.workspace:void 0},null,8,["app","control-plane-name","entity-record","entity-type","geo-api-server-url","kong-admin-api-url","workspace"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])],2)}}}),[["__scopeId","data-v-1e674a69"]]),hL={class:"kong-ui-entities-plugins-list"},yL={class:"button-row"},_L={class:"name-cell-wrapper"},bL={class:"info-wrapper"},wL={key:0,class:"info-name"},kL={key:1,class:"info-name"},CL={key:2,class:"info-type"},EL={key:1},NL=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 D,ie;const o=De.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=De.useI18n(),l=On.useRouter(),{axiosInstance:s}=he.useAxios((D=i.config)==null?void 0:D.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=he.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var X;return((X=i.config)==null?void 0:X.entityType)==="consumers"}),m=t.computed(()=>{var X;return((X=i.config)==null?void 0:X.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||he.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),_=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),h={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(ie=i.config)!=null&&ie.entityId||(h.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),h.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(h.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),h.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const y=h,w=t.computed(()=>{var ne,Q,Z,ue;let X=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"?X=X.replace(/{controlPlaneId}/gi,((ne=i.config)==null?void 0:ne.controlPlaneId)||""):i.config.app==="kongManager"&&(X=X.replace(/\/{workspace}/gi,(Q=i.config)!=null&&Q.workspace?`/${i.config.workspace}`:"")),X.replace(/{entityType}/gi,((Z=i.config)==null?void 0:Z.entityType)||"").replace(/{entityId}/gi,((ue=i.config)==null?void 0:ue.entityId)||"")}),b=t.ref(""),C=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:h.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:{...h.enabled,label:a("search.filter.field.enabled")},name:h.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:N,fetcherState:k,fetcherCacheKey:S}=he.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),A=()=>{b.value=""},R=()=>{S.value++},O=t.ref(null),T=X=>{var Q,Z,ue,$;const ne=[];return((Q=X.route)!=null&&Q.id||X.route_id)&&ne.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((Z=X.service)!=null&&Z.id||X.service_id)&&ne.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((ue=X.consumer)!=null&&ue.id||X.consumer_id)&&ne.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),(($=X.consumer_group)!=null&&$.id||X.consumer_group_id)&&ne.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),ne.length?ne:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},E=async(X,ne)=>{var Q;return X===null?!1:await((Q=i.canRetrieveScopedEntity)==null?void 0:Q.call(i,X,ne.id))},L=(X,ne)=>{var Z,ue,$,oe,le;let Q=null;switch(X){case"route":Q=(Z=ne.route)==null?void 0:Z.id;break;case"service":Q=(ue=ne.service)==null?void 0:ue.id;break;case"consumer":Q=($=ne.consumer)==null?void 0:$.id;break;case"consumer_group":Q=(oe=ne.consumer_group)==null?void 0:oe.id;break}Q&&((le=i.config)!=null&&le.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(X,Q))},x=t.ref(!1),B=t.ref(null),P=t.computed(()=>{const X={action:"disable",id:"",name:""};if(B.value){const{enabled:ne,id:Q,name:Z}=B.value;X.action=ne?"disable":"enable",X.id=Q,X.name=o.getDisplayName(Z)||Q}return X}),q=X=>{x.value=!0,B.value=X},G=()=>{x.value=!1,B.value=null},K=async()=>{var Z,ue,$,oe,le,pe,ce,fe;if(!await((Z=i.canEdit)==null?void 0:Z.call(i,B.value))||!B.value)return;let ne=`${i.config.apiBaseUrl}${(le=ze.item[i.config.app])==null?void 0:le[(ue=i.config)!=null&&ue.entityType?"forEntity":"all"].replace(/{entityType}/gi,(($=i.config)==null?void 0:$.entityType)||"").replace(/{entityId}/gi,((oe=i.config)==null?void 0:oe.entityId)||"")}`.replace(/{id}/gi,B.value.id||"");i.config.app==="konnect"?ne=ne.replace(/{controlPlaneId}/gi,((pe=i.config)==null?void 0:pe.controlPlaneId)||""):i.config.app==="kongManager"&&(ne=ne.replace(/\/{workspace}/gi,(ce=i.config)!=null&&ce.workspace?`/${i.config.workspace}`:""));const Q=!B.value.enabled;try{const Ee=(fe=i.config)==null?void 0:fe.app;let Pe;b.value&&Ee==="konnect"&&(Pe=await s.get(ne));const{data:ge}=Ee==="konnect"?await s.put(ne,{...(Pe==null?void 0:Pe.data)||B.value,enabled:Q},{timeout:12e4}):await s.patch(ne,{...B.value,enabled:Q},{timeout:12e4});r("toggle-enabled",Q,ge),B.value.enabled=Q}catch(Ee){r("error",Ee)}},F=async(X,ne)=>{const Q=X.id;if(!await ne(Q)){r("copy:error",{entity:X,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:X,field:"id",message:a("copy.success",{val:Q})})},I=async(X,ne)=>{const Q=JSON.stringify(X);if(!await ne(Q)){r("copy:error",{entity:X,message:a("errors.copy")});return}r("copy:success",{entity:X,message:a("copy.success_brief")})},j=async X=>{var Q;await((Q=i.canRetrieve)==null?void 0:Q.call(i,X))&&l.push(i.config.getViewRoute(X))},z=X=>({label:a("actions.view"),to:i.config.getViewRoute(X)}),ae=X=>({label:a("actions.edit"),to:i.config.getEditRoute(X)}),U=X=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(X)}),H=t.ref(void 0),ee=t.ref(!1),_e=t.ref(!1),be=t.ref(""),re=he.useDeleteUrlBuilder(i.config,w.value),J=X=>{H.value=X,ee.value=!0},te=()=>{ee.value=!1},se=async()=>{var X,ne,Q;if((X=H.value)!=null&&X.id){_e.value=!0;try{await s.delete(re(H.value.id)),_e.value=!1,ee.value=!1,S.value++,r("delete:success",H.value)}catch(Z){be.value=((Q=(ne=Z.response)==null?void 0:ne.data)==null?void 0:Q.message)||Z.message||a("errors.delete"),r("error",Z)}finally{_e.value=!1}}},V=()=>{l.push(i.config.createRoute)};t.watch(k,X=>{var ne,Q,Z;if(X.status===he.FetcherStatus.Error){O.value={title:a("errors.general")},(Z=(Q=(ne=X.error)==null?void 0:ne.response)==null?void 0:Q.data)!=null&&Z.message&&(O.value.message=X.error.response.data.message),r("error",X.error);return}O.value=null});const v=t.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")}),M=t.ref(!1);return t.onBeforeMount(async()=>{M.value=await i.canCreate(),M.value&&(v.value.title=a("plugins.list.empty_state.title"),v.value.ctaText=a("actions.create"))}),(X,ne)=>{const Q=t.resolveComponent("KButton"),Z=t.resolveComponent("KEmptyState"),ue=t.resolveComponent("KBadge"),$=t.resolveComponent("KTruncate"),oe=t.resolveComponent("KInputSwitch"),le=t.resolveComponent("KDropdownItem"),pe=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",hL,[t.createVNode(t.unref(he.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":v.value,"enable-entity-actions":"","error-message":O.value,fetcher:t.unref(N),"fetcher-cache-key":t.unref(S),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(y),title:e.title,"title-tag":e.titleTag,onClearSearchInput:A,"onClick:row":ne[4]||(ne[4]=ce=>j(ce)),onSort:R,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(he.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":ne[0]||(ne[0]=ce=>b.value=ce),config:C.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",yL,[!u.value&&f.value?(t.openBlock(),t.createBlock(Q,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ne[1]||(ne[1]=ce=>X.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(Q,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:ce})=>[t.createElementVNode("div",_L,[t.createVNode(t.unref($n.PluginIcon),{class:"plugin-icon",name:ce.name,size:24},null,8,["name"]),t.createElementVNode("div",bL,[ce.instance_name?(t.openBlock(),t.createElementBlock("span",wL,t.toDisplayString(ce.instance_name),1)):(t.openBlock(),t.createElementBlock("span",kL,t.toDisplayString(t.unref(o).getDisplayName(ce.name)),1)),ce.instance_name?(t.openBlock(),t.createElementBlock("span",CL,t.toDisplayString(t.unref(o).getDisplayName(ce.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:ce})=>[T(ce).length>0?(t.openBlock(),t.createBlock($,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(T(ce),fe=>(t.openBlock(),t.createBlock(t.unref(he.PermissionsWrapper),{key:fe.badgeText,"auth-function":()=>E(fe.type,ce),"force-show":""},{default:t.withCtx(({isAllowed:Ee})=>[t.createVNode(ue,{class:t.normalizeClass(Ee||"disabled"),onClick:t.withModifiers(Pe=>Ee&&fe.type&&L(fe.type,ce),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(fe.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",EL,"-"))]),enabled:t.withCtx(({row:ce})=>[t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(ce)&&await e.canToggle(ce)),"force-show":""},{default:t.withCtx(({isAllowed:fe})=>{var Ee,Pe;return[t.createElementVNode("div",{onClick:ne[3]||(ne[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(oe,{disabled:!fe,"disabled-tooltip-text":!fe&&((Pe=(Ee=e.config).getToggleDisabledTooltip)==null?void 0:Pe.call(Ee,ce))||void 0,"model-value":ce.enabled,onClick:t.withModifiers(ge=>fe&&q(ce),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:ce})=>[t.createVNode(ue,{appearance:t.unref(sd)(ce)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(sd)(ce)?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:ce})=>[t.createVNode(t.unref(he.TableTags),{tags:ce},null,8,["tags"])]),actions:t.withCtx(({row:ce})=>[t.createVNode(pe,null,{default:t.withCtx(({copyToClipboard:fe})=>[t.createVNode(le,{"data-testid":"action-entity-copy-id",onClick:Ee=>F(ce,fe)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(pe,null,{default:t.withCtx(({copyToClipboard:fe})=>[t.createVNode(le,{"data-testid":"action-entity-copy-json",onClick:Ee=>I(ce,fe)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(ce)},{default:t.withCtx(()=>[t.createVNode(le,{"data-testid":"action-entity-view","has-divider":"",item:z(ce)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canEdit(ce)},{default:t.withCtx(()=>[t.createVNode(le,{"data-testid":"action-entity-edit",item:ae(ce)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(g)?(t.openBlock(),t.createBlock(t.unref(he.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(ce)},{default:t.withCtx(()=>[U(ce)?(t.openBlock(),t.createBlock(le,{key:0,"data-testid":"action-entity-config-dyn-order",item:U(ce)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canDelete(ce)},{default:t.withCtx(()=>[t.createVNode(le,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:fe=>J(ce)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var ce;return[t.createVNode(Z,{"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(ke.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[M.value?(t.openBlock(),t.createBlock(Q,{key:0,"data-testid":"entity-create-button",onClick:V},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(Q,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ne[2]||(ne[2]=fe=>X.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(ce=e.config)!=null&&ce.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(he.EntityToggleModal),{action:P.value.action,"entity-id":P.value.id,"entity-name":P.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":K,visible:x.value,onCancel:G,onProceed:G},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(he.EntityDeleteModal),{"action-pending":_e.value,description:t.unref(a)("delete.description"),"entity-name":H.value&&(H.value.instance_name||H.value.name||H.value.id),"entity-type":t.unref(he.EntityTypes).Plugin,error:be.value,title:t.unref(a)("delete.title"),visible:ee.value,onCancel:te,onProceed:se},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-25799614"]]),xL={class:"plugin-select-card-wrapper"},SL=["data-testid"],vL={class:"plugin-card-header"},AL={class:"plugin-card-title"},IL={key:0,class:"plugin-card-actions"},PL=["data-testid","title"],TL={key:0,class:"plugin-card-text"},OL={key:0},$L=["title"],Ms=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=On.useRouter(),{i18n:{t:a}}=De.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?d():u()},u=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===W.PluginGroup.CUSTOM_PLUGINS),g=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},_=(y,w)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(y,w))},h=()=>{if(!s.value&&r.config.app==="konnect"){const y=r.config;p.value&&y.createCustomRoute?i.push(y.createCustomRoute):m.value&&d()}};return(y,w)=>{const b=t.resolveComponent("KButton"),C=t.resolveComponent("KDropdownItem"),N=t.resolveComponent("KDropdownMenu"),k=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",xL,[t.createVNode(k,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:w[1]||(w[1]=S=>s.value||m.value?void 0:f())},[t.createElementVNode("div",vL,[t.createElementVNode("div",AL,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",IL,[t.createVNode(N,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{size:t.unref(ui)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(C,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(S=>_(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(C,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(g,["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:h},[t.createVNode(t.unref($n.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",TL,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",OL,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,$L)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,PL),t.createElementVNode("div",{class:"plugin-card-footer",onClick:h},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,SL)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),Ls=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 g;const o=e,r=n,{i18nT:i,i18n:{t:a}}=De.useI18n(),{getMessageFromError:l}=he.useErrors(),{axiosInstance:s}=he.useAxios((g=o.config)==null?void 0:g.axiosRequestConfig),c=t.computed(()=>{var _;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((_=o.plugin)==null?void 0:_.name)||a("delete.custom_plugin")})}),d=t.ref(!1),f=t.ref(""),u=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const _=o.plugin.customPluginType==="streaming"?ze.select[o.config.app].streamingCustomPluginItem:ze.select[o.config.app].schemaCustomPluginItem;let h=`${o.config.apiBaseUrl}${_}`;return h=h.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),h=h.replace(/{pluginId}/gi,o.plugin.id),h}return null}),m=async()=>{var _,h,y,w;if(d.value=!0,f.value="",!(!((_=o.plugin)!=null&&_.name)||((h=o.config)==null?void 0:h.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:C}=b;(C==null?void 0:C.status)===400&&((w=(y=C.data)==null?void 0:y.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(_,h)=>{const y=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(he.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(he.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:h[0]||(h[0]=b=>_.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(w,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:h[2]||(h[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(y,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:h[1]||(h[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"]]),BL={class:"custom-plugins-grid"},VL={class:"empty-state-title"},RL={class:"empty-state-description"},Fs=310,DL=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}}=De.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=De.usePluginHelpers(),s=t.ref(!0),c=N=>{r("plugin-clicked",N)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const N=JSON.parse(JSON.stringify(o.pluginList))[W.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:W.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(N):N}),f=t.ref(!1),u=t.ref(null),p=N=>{f.value=!0,u.value={id:N.id,name:N.name,customPluginType:N.customPluginType}},m=N=>{var k;N&&(r("revalidate"),r("delete:success",((k=u.value)==null?void 0:k.name)||"")),f.value=!1,u.value=null},g=t.ref(Fs),_=t.ref(null),h=t.ref(null),y=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),w=t.ref(!1),b=()=>{g.value=Math.max(a(h.value),Fs),C()},C=()=>{var N,k;(N=h.value)!=null&&N.length&&(w.value=l(_.value,(k=h.value)==null?void 0:k.length))};return t.onMounted(async()=>{await t.nextTick(),g.value=Math.max(a(h.value),Fs),C(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(N,k)=>{const S=t.resolveComponent("KEmptyState"),A=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",BL,[d.value.length?(t.openBlock(),t.createBlock(A,{key:1,modelValue:s.value,"onUpdate:modelValue":k[0]||(k[0]=R=>s.value=R),class:"custom-plugins-collapse","data-testid":`${t.unref(W.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(W.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:_,class:"plugin-card-container",style:t.normalizeStyle(y.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(R,O)=>(t.openBlock(),t.createBlock(Ms,{key:`plugin-card-${O}`,ref_for:!0,ref_key:"pluginCardRef",ref:h,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:R,onCustomPluginDelete:T=>p(R),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[w.value?void 0:{name:"trigger",fn:t.withCtx(()=>[k[2]||(k[2]=t.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(S,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",VL,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",RL,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(Ls,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:k[1]||(k[1]=R=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Us=310,xg=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}}=De.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=De.usePluginHelpers(),c=t.ref(Us),d=t.ref(null),f=t.ref(null),u=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),Us),g()},g=()=>{var _,h;(_=f.value)!=null&&_.length&&(p.value=s(d.value,(h=f.value)==null?void 0:h.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),Us),g(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(_,h)=>{const y=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(y,{modelValue:o.value,"onUpdate:modelValue":h[0]||(h[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(u.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock(Ms,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:b=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[h[1]||(h[1]=t.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),ML={class:"plugin-select-grid"},LL={class:"empty-state-title"},FL={class:"empty-state-description"},Ks=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}}=De.useI18n(),a=t.ref(!1),l=t.ref(ya),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[W.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",ML,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",LL,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",FL,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(xg,{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(ga),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(xg,{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))])}}}),UL={class:"kong-ui-entities-plugin-select-form"},KL={class:"plugins-filter-input-container"},jL={key:0},GL={key:3,"aria-live":"polite",class:"plugins-results-container"},qL={"data-testid":"kong-tab"},zL={class:"tab-description"},HL={"data-testid":"custom-tab"},YL={class:"tab-description"},WL=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 F;const o=e,r=n,i=On.useRoute(),a=On.useRouter(),{i18n:{t:l}}=De.useI18n(),{pluginMetaData:s}=De.usePluginMetaData(),{getMessageFromError:c}=he.useErrors(),{sortAlpha:d,objectsAreEqual:f}=he.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),g=t.ref(""),_=t.ref([]),h=t.ref([]),y=t.ref({}),w=t.ref([]),{axiosInstance:b}=he.useAxios((F=o.config)==null?void 0:F.axiosRequestConfig),C=t.computed(()=>y.value?Object.entries(y.value).filter(([I])=>I!==W.PluginGroup.CUSTOM_PLUGINS).reduce((I,[,j])=>{for(const z of j??[])I[z.id]=z;return I},{}):{}),N=t.computed(()=>{var z;if(!y.value)return{};const I=u.value.toLowerCase(),j=JSON.parse(JSON.stringify(y.value));for(const ae in y.value){const U=((z=y.value[ae])==null?void 0:z.filter(H=>H.name.toLowerCase().includes(I)||H.id.toLowerCase().includes(I)||H.group.toLowerCase().includes(I)))||[];U.length?j[ae]=U:delete j[ae]}return j}),k=t.computed(()=>o.highlightedPluginIds.reduce((I,j)=>{const z=C.value[j];return z&&I.push(z),I},[])),S=t.computed(()=>Object.keys(N.value).length>0),A=t.computed(()=>Object.keys(y.value).length>0&&!S.value),R=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)}]:[]),O=t.computed(()=>{var j;let I=R.value.length&&((i==null?void 0:i.hash)||((j=R.value[0])==null?void 0:j.hash))||"";return I==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(I="#kong"),I}),T=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),..._.value])].filter(I=>!o.ignoredPlugins.includes(I)).filter(I=>o.config.entityType&&(o.config.entityType==="services"&&s[I]&&!s[I].scope.includes(W.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[I]&&!s[I].scope.includes(W.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[I]&&!s[I].scope.includes(W.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[I]&&!s[I].scope.includes(W.PluginScope.CONSUMER))?!1:I).reduce((I,j)=>{var ee;const z=s[j]&&s[j].name||j,ae={...s[j],id:j,name:z,available:_.value.includes(j),disabledMessage:"",group:((ee=s[j])==null?void 0:ee.group)||W.PluginGroup.CUSTOM_PLUGINS};ae.group===W.PluginGroup.CUSTOM_PLUGINS&&(ae.customPluginType=h.value.find(_e=>_e.name===j)?"streaming":"schema"),o.disabledPlugins&&(ae.disabledMessage=o.disabledPlugins[j]);const U=ae.group||l("plugins.select.misc_plugins");let H=I[U];return H||(H=[]),H.push(ae),H.sort(d("name")),I[U]=H,I},{}),E=t.computed(()=>{var j;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=((j=o.config.gatewayInfo)==null?void 0:j.edition)==="community"?`${o.config.apiBaseUrl}${ze.select[o.config.app].availablePluginsForOss}`:I.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),I}),L=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""}),B=I=>{a.replace({hash:I,query:i.query})};t.watch(()=>o.disabledPlugins,(I,j)=>{!f(I,j)&&!p.value&&(y.value=T())}),t.watch(()=>o.ignoredPlugins,(I,j)=>{!f(I,j)&&!p.value&&(y.value=T())}),t.watch(p,I=>{r("loading",I)});const P=t.ref(!1),q=t.ref(!1),G=t.ref(!1);t.onBeforeMount(async()=>{P.value=await o.canCreateCustomPlugin(),q.value=await o.canEditCustomPlugin(),G.value=await o.canDeleteCustomPlugin()});const K=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var I,j;(j=(I=K.value)==null?void 0:I.input)==null||j.focus();try{const{data:z}=await b.get(E.value);if(o.config.app==="konnect"){const{names:ae}=z;if(_.value=ae||[],L.value){const{data:U}=await b.get(L.value);h.value=U.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:ae}}=z;_.value=ae?Object.keys(ae):[]}}catch(z){m.value=!0,g.value=c(z)}if(x.value)try{const{data:{data:z}}=await b.get(x.value);if(z!=null&&z.length){const ae=z.reduce((U,H)=>(H.name&&U.push(H.name),U),[]);w.value=w.value.concat(ae)}}catch{}m.value||(y.value=T()),p.value=!1}),(I,j)=>{const z=t.resolveComponent("KInput"),ae=t.resolveComponent("KSkeletonBox"),U=t.resolveComponent("KSkeleton"),H=t.resolveComponent("KEmptyState"),ee=t.resolveComponent("KTooltip"),_e=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",UL,[t.createElementVNode("div",KL,[t.createVNode(z,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":j[0]||(j[0]=be=>u.value=be),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",jL,[t.createVNode(ae,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(U,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(H,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(g.value),1)]),_:1})):A.value&&u.value?(t.openBlock(),t.createBlock(H,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(l)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",GL,[R.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(_e,{key:0,modelValue:O.value,"onUpdate:modelValue":j[5]||(j[5]=be=>O.value=be),"data-testid":"plugins-tabs",tabs:R.value,onChange:B},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",qL,[t.createElementVNode("p",zL,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Ks,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":k.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,onPluginClicked:j[1]||(j[1]=be=>I.$emit("plugin-clicked",be))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",HL,[t.renderSlot(I.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",YL,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(DL,{"can-create-custom-plugin":P.value,"can-delete-custom-plugin":G.value,"can-edit-custom-plugin":q.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,"onDelete:success":j[2]||(j[2]=be=>I.$emit("delete-custom:success",be)),onPluginClicked:j[3]||(j[3]=be=>I.$emit("plugin-clicked",be)),onRevalidate:j[4]||(j[4]=()=>y.value=T())},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(ee,{"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(Ks,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":k.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,onPluginClicked:j[6]||(j[6]=be=>I.$emit("plugin-clicked",be))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-a2b8a174"]]),XL={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},ZL=["data-testid"],JL={class:"plugin-card-header"},QL={class:"plugin-card-title"},e2={key:0,class:"plugin-card-actions"},t2=["data-testid","title"],n2={key:0},o2={key:0},r2=["title"],i2={class:"plugin-card-footer"},a2=ve(t.defineComponent({__name:"PluginCatalogCard",props:{config:{},plugin:{}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=On.useRouter(),{i18n:{t:a}}=De.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(u.value&&!f.value&&l.value)),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=t.computed(()=>r.plugin.id==="custom-plugin-create"),u=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===W.PluginGroup.CUSTOM_PLUGINS),p=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},m=(_,h)=>{const y=r.config;r.config.app==="konnect"&&typeof y.getCustomEditRoute=="function"&&i.push(y.getCustomEditRoute(_,h))},g=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;f.value&&_.createCustomRoute?i.push(_.createCustomRoute):u.value&&d()}};return(_,h)=>{const y=t.resolveComponent("KButton"),w=t.resolveComponent("KDropdownItem"),b=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",XL,[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:h[1]||(h[1]=N=>s.value||u.value?void 0:d())},[t.createElementVNode("div",JL,[t.createElementVNode("div",QL,[t.createVNode(t.unref($n.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!u.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",e2,[t.createVNode(b,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(y,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{size:t.unref(ui)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[t.createVNode(w,{"data-testid":"edit-plugin-schema",onClick:h[0]||(h[0]=t.withModifiers(N=>m(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1}),t.createVNode(w,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(p,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:"plugin-card-body","data-testid":`${e.plugin.id}-card-body`,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[e.plugin.description||u.value&&!f.value?(t.openBlock(),t.createElementBlock("div",n2,[u.value&&!f.value?(t.openBlock(),t.createElementBlock("div",o2,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("div",{key:1,title:e.plugin.description},t.toDisplayString(e.plugin.description),9,r2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],8,t2),t.createElementVNode("div",i2,[t.createElementVNode("div",null,t.toDisplayString(f.value?t.unref(a)("actions.create_custom"):t.unref(a)("actions.configure")),1),t.renderSlot(_.$slots,"footer-extra",{},void 0,!0)])],10,ZL)]),_:3},8,["text"])])}}}),[["__scopeId","data-v-ef7d59a6"]]),l2=["data-testid"],s2={class:"group-icon-wrapper"},c2={class:"group-title-text"},d2=["data-testid"],u2=["data-testid"],Sg=ve(t.defineComponent({__name:"PluginCatalogGroup",props:{config:{},name:{},plugins:{},showAllCard:{type:Boolean}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=t.computed(()=>{switch(o.name){case"Featured":return ke.PopularIcon;case"AI":return ke.BotIcon;case"Analytics & Monitoring":return ke.AnalyticsIcon;case"Authentication":return ke.LockIcon;case"Logging":return ke.ServiceDocumentIcon;case"Security":return ke.SecurityIcon;case"Serverless":return ke.RuntimeServerlessIcon;case"Traffic Control":return ke.TrafficIcon;case"Transformations":return ke.TransformationIcon;case"Deployment":return ke.DeployIcon;case"Custom Plugins":return ke.CodeblockIcon;default:return null}}),i=n,{i18n:{t:a}}=De.useI18n(),l=t.ref(!1),s=t.computed(()=>o.showAllCard?o.plugins:!l.value&&o.plugins.length>9?o.plugins.slice(0,8):o.plugins),c=t.computed(()=>!o.showAllCard&&!l.value&&o.plugins.length>9);function d(){l.value=!0}const f=t.ref(!1),u=t.ref(null),p=g=>{f.value=!0,u.value={id:g.id,name:g.name,customPluginType:g.customPluginType}},m=g=>{var _;g&&(i("revalidate"),i("delete:success",((_=u.value)==null?void 0:_.name)||"")),f.value=!1,u.value=null};return(g,_)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.name?(t.openBlock(),t.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${e.name}-title`},[t.createElementVNode("div",s2,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{color:t.unref(Uu)},null,8,["color"]))]),t.createElementVNode("span",c2,t.toDisplayString(e.name),1)],8,l2)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${e.name}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(a2,{key:`plugin-card-${h.id}`,config:e.config,plugin:h,onCustomPluginDelete:y=>p(h),onPluginClicked:y=>i("plugin-clicked",h)},t.createSlots({_:2},[h.gatewayVersion&&t.unref(M0)(t.unref(W.GATEWAY_VERSION_TIMESTAMP_MAP)[h.gatewayVersion])?{name:"footer-extra",fn:t.withCtx(()=>[t.createElementVNode("span",{class:"plugin-card-new-badge","data-testid":`plugin-card-${h.id}-new-badge`},t.toDisplayString(t.unref(a)("labels.new")),9,u2)]),key:"0"}:void 0]),1032,["config","plugin","onCustomPluginDelete","onPluginClicked"]))),128)),c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:d},t.toDisplayString(t.unref(a)("plugins.select.show_all")),1)):t.createCommentVNode("",!0)],8,d2),f.value&&u.value?(t.openBlock(),t.createBlock(Ls,{key:1,config:e.config,plugin:u.value,onClosed:m,onProceed:_[0]||(_[0]=h=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-a244b0ca"]]),f2={class:"plugin-select-grid"},p2={class:"empty-state-title"},m2={class:"empty-state-description"},g2={key:1},h2=ve(t.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{}},emits:["plugin-clicked","delete:success"],setup(e,{emit:n}){const o=Rr.concat(ga),r=n,{i18n:{t:i}}=De.useI18n(),a=t.ref(ya),l=s=>{r("plugin-clicked",s)};return(s,c)=>{var f,u;const d=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",f2,[Object.keys(e.pluginList||[]).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",p2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",m2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),p=>{var m;return t.openBlock(),t.createElementBlock(t.Fragment,null,[(m=e.pluginList)!=null&&m[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Sg,{modelValue:a.value[p],"onUpdate:modelValue":g=>a.value[p]=g,config:e.config,name:p,plugins:e.pluginList[p]||[],"onDelete:success":c[0]||(c[0]=g=>r("delete:success",g)),onPluginClicked:c[1]||(c[1]=g=>l(g))},null,8,["modelValue","onUpdate:modelValue","config","name","plugins"])])):t.createCommentVNode("",!0)],64)}),256)),(u=(f=e.pluginList)==null?void 0:f["Query Result"])!=null&&u.length?(t.openBlock(),t.createElementBlock("div",g2,[t.createVNode(Sg,{modelValue:a.value["Query Result"],"onUpdate:modelValue":c[2]||(c[2]=p=>a.value["Query Result"]=p),config:e.config,plugins:e.pluginList["Query Result"]||[],"show-all-card":"",onPluginClicked:c[3]||(c[3]=p=>l(p))},null,8,["modelValue","config","plugins"])])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-c3ddcaea"]]),y2={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},_2=["title"],b2=["title"],w2={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},k2={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},C2=ve(t.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{}},emits:["revalidate","delete:success"],setup(e,{emit:n}){const o=n,r=e,{i18n:{t:i}}=De.useI18n(),a=t.computed(()=>h.value.some(C=>{var N;return!!((N=C.plugin)!=null&&N.customPluginType)})),l=t.computed(()=>{const C=[{key:"name",label:i("plugins.select.list.table_headers.name"),sortable:!0},{key:"description",label:i("plugins.select.list.table_headers.description")},{key:"action",hideLabel:!0}];return a.value&&C.push({key:"more-actions",hideLabel:!0}),C}),s=t.computed(()=>{if(!r.pluginList)return[];const C=Object.values(r.pluginList).flat();return Array.from(new Map(C.map(k=>[k.id,k])).values()).map(k=>({id:k.id,name:k.name,description:k.description,plugin:k}))}),c=t.ref(0),d=t.ref(10),f=t.ref(1),u=t.ref(s.value),p=t.ref(!1),m=t.ref(null),g=C=>{p.value=!0,m.value={id:C.id,name:C.name,customPluginType:C.customPluginType}},_=C=>{var N;C&&(o("revalidate"),o("delete:success",((N=m.value)==null?void 0:N.name)||"")),p.value=!1,m.value=null},h=t.computed(()=>{const C=u.value.length,N=Math.max(1,Math.ceil(C/d.value)),S=(Math.min(f.value,N)-1)*d.value;return u.value.slice(S,S+d.value)});t.watch(s,()=>{u.value=[...s.value],f.value=1,c.value++});const y=({page:C})=>{f.value=C},w=({pageSize:C})=>{d.value=C},b=C=>{const{sortColumnKey:N,sortColumnOrder:k}=C;N==="name"&&(u.value=[...u.value].sort((S,A)=>{const R=(S[N]||"").toLowerCase(),O=(A[N]||"").toLowerCase();return R<O?k==="asc"?-1:1:R>O?k==="asc"?1:-1:0}))};return(C,N)=>{const k=t.resolveComponent("KButton"),S=t.resolveComponent("KDropdownItem"),A=t.resolveComponent("KDropdown"),R=t.resolveComponent("KTableView"),O=t.resolveComponent("KCard");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(O,{"data-testid":"plugin-catalog-list-view-card"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(R,{key:c.value,class:"plugin-catalog-table","client-sort":"",data:h.value,"data-testid":"plugin-catalog-list-view-table",headers:l.value,"pagination-attributes":{totalCount:s.value.length,currentPage:f.value,initialPageSize:d.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:y,onPageSizeChange:w,onSort:b},{name:t.withCtx(({row:T})=>[t.createElementVNode("span",y2,[t.createVNode(t.unref($n.PluginIcon),{"data-testid":`plugin-catalog-list-view-${T.plugin.id}-icon`,name:T.plugin.id,size:20},null,8,["data-testid","name"]),t.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:T.name},t.toDisplayString(T.name),9,_2)])]),description:t.withCtx(({row:T})=>[t.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:T.description},t.toDisplayString(T.description),9,b2)]),action:t.withCtx(({row:T})=>[t.createElementVNode("div",w2,[t.createVNode(k,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:r.config.getCreateRoute(T.id)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":t.withCtx(({row:T})=>{var E;return[(E=T.plugin)!=null&&E.customPluginType?(t.openBlock(),t.createElementBlock("div",k2,[t.createVNode(A,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:t.withCtx(()=>{var L,x;return[t.createVNode(S,{"data-testid":"edit-plugin-schema",to:(x=(L=e.config).getCustomEditRoute)==null?void 0:x.call(L,T.plugin.name,T.plugin.customPluginType)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.edit")),1)]),_:1},8,["to"]),t.createVNode(S,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:()=>g(T.plugin)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.delete")),1)]),_:1},8,["onClick"])]}),default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{color:t.unref(Co),size:t.unref(ui)},null,8,["color","size"])]),_:2},1024)])):t.createCommentVNode("",!0)]}),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),p.value&&m.value?(t.openBlock(),t.createBlock(Ls,{key:0,config:e.config,plugin:m.value,onClosed:_,onProceed:N[0]||(N[0]=T=>_(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-3df3760d"]]),E2={class:"plugin-catalog","data-testid":"plugin-catalog"},N2={class:"plugin-filter","data-testid":"plugin-filter"},x2={class:"plugin-filter-title"},S2={class:"featured-title"},v2={class:"plugin-featured-filter"},A2=["data-testid"],I2={class:"group-title"},P2={class:"plugin-type-filter"},T2=["data-testid"],O2={class:"plugins-container"},$2={class:"plugins-filter-input-container"},B2={class:"icon-container"},V2={key:0},R2={key:3,"aria-live":"polite",class:"plugins-results-container"},D2=ve(t.defineComponent({__name:"PluginCatalog",props:{config:{},disabledPlugins:{},highlightedPluginIds:{},customPluginSupport:{},availableOnServer:{type:Boolean,default:!0}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var B;const o=n,{i18n:{t:r}}=De.useI18n(),{pluginMetaData:i}=De.usePluginMetaData(),{getMessageFromError:a}=he.useErrors(),{sortAlpha:l,objectsAreEqual:s}=he.useHelpers(),c=e,{axiosInstance:d}=he.useAxios((B=c.config)==null?void 0:B.axiosRequestConfig),f=t.useTemplateRef("filter-input"),u=t.ref(""),p=t.ref(!1),m=t.ref(!1),g=t.ref(Object.fromEntries(Rr.concat(ha).map(P=>[P,!1]))),_=t.ref(!0),h=t.ref(!1),y=t.ref(""),w=t.ref([]),b=t.ref([]),C=t.ref({}),N=t.ref([]),k=t.ref(!1),S=t.computed(()=>k.value?ke.GridIcon:ke.ListIcon),A=t.computed(()=>{var q;let P=`${c.config.apiBaseUrl}${ze.select[c.config.app].availablePlugins}`;return c.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(P=((q=c.config.gatewayInfo)==null?void 0:q.edition)==="community"?`${c.config.apiBaseUrl}${ze.select[c.config.app].availablePluginsForOss}`:P.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),P}),R=t.computed(()=>{if(c.config.app==="konnect"&&c.customPluginSupport==="streaming"){let P=`${c.config.apiBaseUrl}${ze.select[c.config.app].streamingCustomPlugins}`;return P=P.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""),P}return null}),O=t.computed(()=>{if(c.config.entityType&&c.config.entityId){let P=`${c.config.apiBaseUrl}${ze.list[c.config.app].forEntity}`;return c.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(P=P.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),P.replace(/{entityType}/gi,c.config.entityType||"").replace(/{entityId}/gi,c.config.entityId||"")}return""}),T=t.computed(()=>{var j;if(!C.value)return{};const P=Object.entries(g.value).filter(([z,ae])=>ae).map(([z])=>z);let q={};P.length===0&&(q=C.value),P.forEach(z=>{C.value[z]&&(q[z]=C.value[z])});const G=u.value.toLowerCase();if(!G)return q;const K=JSON.parse(JSON.stringify(q));for(const z in q){const ae=((j=q[z])==null?void 0:j.filter(U=>[U.name.toLowerCase(),U.id.toLowerCase()].some(ee=>D0(G,ee).length===G.length)))||[];ae.length?K[z]=ae:delete K[z]}const F=Object.values(K).flat().filter(z=>!!z),I=Array.from(F.reduce((z,ae)=>(z.has(ae.id)||z.set(ae.id,ae),z),new Map).values());return I.length?{"Query Result":I}:{}}),E=t.computed(()=>Object.keys(T.value).length>0),L=t.computed(()=>Object.keys(C.value).length>0&&!E.value),x=()=>{const P=[...new Set([...Object.keys({...c.availableOnServer?{}:i}),...w.value])].filter(q=>c.config.entityType&&(c.config.entityType==="services"&&i[q]&&!i[q].scope.includes(W.PluginScope.SERVICE)||c.config.entityType==="routes"&&i[q]&&!i[q].scope.includes(W.PluginScope.ROUTE)||c.config.entityType==="consumer_groups"&&i[q]&&!i[q].scope.includes(W.PluginScope.CONSUMER_GROUP)||c.config.entityType==="consumers"&&i[q]&&!i[q].scope.includes(W.PluginScope.CONSUMER))?!1:q).reduce((q,G)=>{var z;const K=i[G]&&i[G].name||G,F={...i[G],id:G,name:K,available:w.value.includes(G),disabledMessage:"",group:((z=i[G])==null?void 0:z.group)||W.PluginGroup.CUSTOM_PLUGINS};F.group===W.PluginGroup.CUSTOM_PLUGINS&&(F.customPluginType=b.value.find(ae=>ae.name===G)?"streaming":"schema"),c.disabledPlugins&&(F.disabledMessage=c.disabledPlugins[G]);const I=F.group||r("plugins.select.misc_plugins");let j=q[I];return j||(j=[]),j.push(F),j.sort(l("name")),q[I]=j,q},{});return c.highlightedPluginIds&&c.highlightedPluginIds.length>0&&(P.Featured=c.highlightedPluginIds.flatMap(q=>{var K;const G=i[q];return G?{...G,id:q,name:G.name||q,available:w.value.includes(q),disabledMessage:((K=c.disabledPlugins)==null?void 0:K[q])||"",group:G.group||W.PluginGroup.CUSTOM_PLUGINS}:[]}).filter(Boolean)),P};return t.watch(()=>c.disabledPlugins,(P,q)=>{!s(P||{},q||{})&&!_.value&&(C.value=x())}),t.watch(_,P=>{o("loading",P)}),t.onMounted(async()=>{var P,q;(q=(P=f.value)==null?void 0:P.input)==null||q.focus();try{const{data:G}=await d.get(A.value);if(c.config.app==="konnect"){const{names:K}=G;if(w.value=K||[],R.value){const{data:F}=await d.get(R.value);b.value=F.data||[]}}else if(c.config.app==="kongManager"){const{plugins:{available_on_server:K}}=G;w.value=K?Object.keys(K):[]}}catch(G){h.value=!0,y.value=a(G)}if(O.value)try{const{data:{data:G}}=await d.get(O.value);if(G!=null&&G.length){const K=G.reduce((F,I)=>(I.name&&F.push(I.name),F),[]);N.value=N.value.concat(K)}}catch{}h.value||(C.value=x()),_.value=!1}),(P,q)=>{const G=t.resolveComponent("KCheckbox"),K=t.resolveComponent("KBadge"),F=t.resolveComponent("KCollapse"),I=t.resolveComponent("KInput"),j=t.resolveComponent("KSkeletonBox"),z=t.resolveComponent("KSkeleton"),ae=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",E2,[t.createElementVNode("div",N2,[t.createElementVNode("div",x2,t.toDisplayString(t.unref(r)("plugins.select.filter.title")),1),t.createVNode(F,{modelValue:p.value,"onUpdate:modelValue":q[0]||(q[0]=U=>p.value=U)},{title:t.withCtx(()=>[t.createElementVNode("div",S2,t.toDisplayString(t.unref(r)("plugins.select.filter.featured")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",v2,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Rr),U=>(t.openBlock(),t.createElementBlock("div",{key:U,class:"plugin-filter-item","data-testid":`plugin-filter-item-${U}`},[t.createVNode(G,{modelValue:g.value[U],"onUpdate:modelValue":H=>g.value[U]=H,label:U},null,8,["modelValue","onUpdate:modelValue","label"]),t.createVNode(K,{appearance:"neutral"},{default:t.withCtx(()=>{var H,ee;return[t.createTextVNode(t.toDisplayString(((ee=(H=C.value)==null?void 0:H[U])==null?void 0:ee.length)||0),1)]}),_:2},1024)],8,A2))),128))])]),_:1},8,["modelValue"]),t.createVNode(F,{modelValue:m.value,"onUpdate:modelValue":q[1]||(q[1]=U=>m.value=U)},{title:t.withCtx(()=>[t.createElementVNode("div",I2,t.toDisplayString(t.unref(r)("plugins.select.filter.type")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",P2,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(ha),U=>(t.openBlock(),t.createElementBlock("div",{key:U,class:"plugin-filter-item","data-testid":`plugin-filter-item-${U}`},[t.createVNode(G,{modelValue:g.value[U],"onUpdate:modelValue":H=>g.value[U]=H,"data-testid":`plugin-filter-checkbox-${U}`,label:U},null,8,["modelValue","onUpdate:modelValue","data-testid","label"]),t.createVNode(K,{appearance:"neutral","data-testid":`plugin-filter-count-${U}`},{default:t.withCtx(()=>{var H,ee;return[t.createTextVNode(t.toDisplayString(((ee=(H=C.value)==null?void 0:H[U])==null?void 0:ee.length)||0),1)]}),_:2},1032,["data-testid"])],8,T2))),128))])]),_:1},8,["modelValue"])]),t.createElementVNode("div",O2,[t.createElementVNode("div",$2,[t.createVNode(I,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":q[2]||(q[2]=U=>u.value=U),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:t.unref(r)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),t.createElementVNode("div",B2,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(S.value),{class:"plugins-filter-icon",color:t.unref(y1),onClick:q[3]||(q[3]=U=>k.value=!k.value)},null,8,["color"]))])]),_.value?(t.openBlock(),t.createElementBlock("section",V2,[t.createVNode(j,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(z,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):h.value?(t.openBlock(),t.createBlock(ae,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(y.value),1)]),_:1})):L.value&&u.value?(t.openBlock(),t.createBlock(ae,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(r)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",R2,[k.value?(t.openBlock(),t.createBlock(C2,{key:0,config:e.config,"plugin-list":T.value,"onDelete:success":q[4]||(q[4]=U=>P.$emit("delete-custom:success",U))},null,8,["config","plugin-list"])):(t.openBlock(),t.createBlock(h2,{key:1,config:e.config,"plugin-list":T.value,"onDelete:success":q[5]||(q[5]=U=>P.$emit("delete-custom:success",U)),onPluginClicked:q[6]||(q[6]=U=>P.$emit("plugin-clicked",U))},null,8,["config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-2d691c7b"]]),M2={key:1,class:"datakit-config-card-canvas"},L2={class:"config-card-details-label","data-testid":"datakit-configuration-label"},F2={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},U2={class:"canvas-wrapper"},K2=ve(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{},item:{}},setup(e){const n=t.computed(()=>{var o;return kg.safeParse((o=e.pluginData)==null?void 0:o.config).success});return ef(e.pluginData),(o,r)=>{const i=t.resolveComponent("KLabel");return n.value?(t.openBlock(),t.createElementBlock("div",M2,[t.createElementVNode("div",L2,[t.createVNode(i,null,{default:t.withCtx(()=>[...r[0]||(r[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",F2,[t.createElementVNode("div",U2,[t.createVNode($s,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])):(t.openBlock(),t.createBlock(t.unref(he.ConfigCardItem),{key:0,item:e.item},null,8,["item"]))}}}),[["__scopeId","data-v-0dc992b2"]]),j2={class:"kong-ui-entity-plugin-config-card"},G2={class:"name-cell-wrapper"},q2={class:"info-name"},z2={key:0},H2={key:0},Y2={key:0},W2={key:0},X2={key:0},js="config",Z2=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}}=De.useI18n(),a=De.usePluginMetaData(),{setFieldType:l}=De.usePluginHelpers(),{getPropValue:s}=he.useHelpers(),c=t.computed(()=>{var k;let N=(k=ze.item[r.config.app])==null?void 0:k[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(r.config.app==="konnect"){const S=r.expandPartial?"&":"?";N=N.concat(`${S}__ui_data=true`)}return N}),d=t.computed(()=>{var S,A;const N={},k=((S=y.value)==null?void 0:S.fields)||[];for(let R=0;R<k.length;R++){const O=y.value.fields[R],T=(A=Object.keys(O))==null?void 0:A[0];l(N,T,O[T])}return{...N,instance_name:{section:he.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:he.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:he.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:he.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:he.ConfigurationSchemaSection.Basic,order:6},protocols:{type:he.ConfigurationSchemaType.BadgeTag,section:he.ConfigurationSchemaSection.Basic,order:7}}}),f=t.computed(()=>{var k,S,A;if(!((k=y.value)!=null&&k.fields))return[];const N=(S=y.value.fields)==null?void 0:S.find(R=>{var T;return((T=Object.keys(R))==null?void 0:T[0])===js});return((A=N==null?void 0:N[js])==null?void 0:A.fields)||[]}),u=t.computed(()=>{var k,S;const N={};if(!f.value)return N;for(let A=0;A<((k=f.value)==null?void 0:k.length);A++){const R=f.value[A],O=(S=Object.keys(R))==null?void 0:S[0],T=R[O];T.required&&(N[O]={order:1}),l(N,O,T)}return N}),p=N=>{var S;const k=(S=a.pluginMetaData[r.config.pluginType])==null?void 0:S.scope;return k?Object.fromEntries(Object.entries(N).filter(([A,R])=>R?!0:!(A==="service"&&!k.includes(W.PluginScope.SERVICE)||A==="route"&&!k.includes(W.PluginScope.ROUTE)||A==="consumer"&&!k.includes(W.PluginScope.CONSUMER)||A==="consumer_group"&&!k.includes(W.PluginScope.CONSUMER_GROUP)))):N},m=N=>Gn(N,"__ui_data"),{getMessageFromError:g}=he.useErrors(),{axiosInstance:_}=he.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),h=t.computed(()=>{var k,S;let N=`${r.config.apiBaseUrl}${ze.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((k=r.config)==null?void 0:k.controlPlaneId)||""):r.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(S=r.config)!=null&&S.workspace?`/${r.config.workspace}`:"")),N=N.replace(/{plugin}/gi,r.config.pluginType),N}),y=t.ref({});he.useSchemaProvider(y);const w=t.ref(!1),b=t.ref("");return t.onBeforeMount(async()=>{w.value=!0;try{const{data:N}=await _.get(h.value);y.value=N}catch(N){b.value=g(N),o("error:fetch-schema",N)}finally{w.value=!1}}),(N,k)=>{const S=t.resolveComponent("KSkeleton"),A=t.resolveComponent("KEmptyState"),R=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",j2,[w.value?(t.openBlock(),t.createBlock(S,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):b.value?(t.openBlock(),t.createBlock(A,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(b.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(he.EntityBaseConfigCard),{key:2,"code-block-record-formatter":m,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(he.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":js,"plugin-config-schema":u.value,"record-resolver":p,"onFetch:error":k[0]||(k[0]=O=>N.$emit("fetch:error",O)),"onFetch:success":k[1]||(k[1]=O=>N.$emit("fetch:success",O)),onLoading:k[2]||(k[2]=O=>N.$emit("loading",O))},t.createSlots({name:t.withCtx(O=>[t.createElementVNode("div",G2,[t.createVNode(t.unref($n.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",O),size:24},null,8,["name"]),t.createElementVNode("span",q2,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",O))),1)])]),consumer:t.withCtx(O=>[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",O).id,value:t.unref(s)("rowValue",O).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",O).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",z2,"–"))]),route:t.withCtx(O=>[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",O).id,value:t.unref(s)("rowValue",O).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",O).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",H2,"–"))]),service:t.withCtx(O=>[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",O).id,value:t.unref(s)("rowValue",O).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",O).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",Y2,"–"))]),consumer_group:t.withCtx(O=>[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",O).id,value:t.unref(s)("rowValue",O).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",O).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",W2,"–"))]),partials:t.withCtx(O=>{var T,E,L,x,B,P,q,G,K;return[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:(E=(T=t.unref(s)("rowValue",O))==null?void 0:T[0])==null?void 0:E.id,value:((x=(L=t.unref(s)("rowValue",O))==null?void 0:L[0])==null?void 0:x.id)+((P=(B=t.unref(s)("rowValue",O))==null?void 0:B[0])!=null&&P.name?"/"+((G=(q=t.unref(s)("rowValue",O))==null?void 0:q[0])==null?void 0:G.name):""),type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var F,I;return N.$emit("navigation-click",(I=(F=t.unref(s)("rowValue",O))==null?void 0:F[0])==null?void 0:I.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"partial-copy-uuid",text:(K=t.unref(s)("rowValue",O))==null?void 0:K[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",X2,"–"))]}),_:2},[e.config.pluginType==="datakit"&&e.config.app==="konnect"?{name:"config-card-item-nodes",fn:t.withCtx(O=>[t.createVNode(K2,{item:O.row,"plugin-data":O.record},null,8,["item","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-0c1ac825"]]),{usePluginMetaData:J2,useProvideExperimentalFreeForms:Q2}=De;Object.defineProperty(Ae,"PluginGroup",{enumerable:!0,get:()=>W.PluginGroup}),Object.defineProperty(Ae,"PluginScope",{enumerable:!0,get:()=>W.PluginScope}),Object.defineProperty(Ae,"PluginIcon",{enumerable:!0,get:()=>$n.PluginIcon}),Object.defineProperty(Ae,"getPluginIconURL",{enumerable:!0,get:()=>$n.getPluginIconURL}),Ae.EXPERIMENTAL_FREE_FORM_PROVIDER=Ya,Ae.EntityTypeIdField=Bn,Ae.FEATURE_FLAGS=z0,Ae.PLUGIN_GROUPS_COLLAPSE_STATUS=ya,Ae.PluginCatalog=D2,Ae.PluginConfigCard=Z2,Ae.PluginFeaturedArray=Rr,Ae.PluginForm=gL,Ae.PluginGroupArray=ga,Ae.PluginGroupArraySortedAlphabetically=ha,Ae.PluginList=NL,Ae.PluginPartialType=Vr,Ae.PluginSelect=WL,Ae.PluginSelectCard=Ms,Ae.PluginSelectGrid=Ks,Ae.TOASTER_PROVIDER=pd,Ae.pluginEndpoints=ze,Ae.usePluginMetaData=J2,Ae.useProvideExperimentalFreeForms=Q2,Object.defineProperty(Ae,Symbol.toStringTag,{value:"Module"})});
|
|
234
|
+
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 ct extends Error{constructor(n,...o){var r;super((r=Ip[n])==null?void 0:r.call(Ip,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function ss(e){return"clientX"in e}function CI(e){return"sourceEvent"in e}function Jt(e,n){const o=ss(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 Gi=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function EI(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 qi(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const NI=()=>!0;function cs(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function xI(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())Ui(i,Fi(a))>0&&r.push(a);return r}const SI=250;function vI(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=xI(e,o,n+SI);for(const d of c){const f=[...((i=d.handleBounds)==null?void 0:i.source)??[],...((a=d.handleBounds)==null?void 0:a.target)??[]];for(const u of f){if(r.nodeId===u.nodeId&&r.type===u.type&&r.id===u.id)continue;const{x:p,y:m}=$o(d,u,u.position,!0),g=Math.sqrt((p-e.x)**2+(m-e.y)**2);g>n||(g<s?(l=[{...u,x:p,y:m}],s=g):g===s&&l.push({...u,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(f=>f.type===d)??l[0]}return l[0]}function Pp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=NI},f,u,p,m){const g=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:h,y:_}=Jt(e),w=l.elementFromPoint(h,_),b=w!=null&&w.classList.contains(`${s}-flow__handle`)?w:y,k={handleDomNode:b,isValid:!1,connection:null,toHandle:null};if(b){const E=Tp(void 0,b),C=b.getAttribute("data-nodeid"),S=b.getAttribute("data-handleid"),A=b.classList.contains("connectable"),R=b.classList.contains("connectableend");if(!C||!E)return k;const O={source:g?C:r,sourceHandle:g?S:i,target:g?r:C,targetHandle:g?i:S};k.connection=O;const N=A&&R&&(o===xn.Strict?g&&E==="source"||!g&&E==="target":C!==r||S!==i);k.isValid=N&&d(O,{nodes:u,edges:f,sourceNode:p(O.source),targetNode:p(O.target)}),k.toHandle=Op(C,E,S,m,o,!0)}return k}function Tp(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function AI(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function II(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function Op(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===xn.Strict?(l=d.handleBounds)==null?void 0:l[n]:[...((s=d.handleBounds)==null?void 0:s.source)??[],...((c=d.handleBounds)==null?void 0:c.target)??[]],u=(o?f==null?void 0:f.find(p=>p.id===o):f==null?void 0:f[0])??null;return u&&a?{...u,...$o(d,u,u.position,!0)}:u}const ds={[xe.Left]:xe.Right,[xe.Right]:xe.Left,[xe.Top]:xe.Bottom,[xe.Bottom]:xe.Top},PI=["production","prod"];function vr(e,...n){$p()&&console.warn(`[Vue Flow]: ${e}`,...n)}function $p(){return!PI.includes(process.env.NODE_ENV||"")}function Bp(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,...Ki(l)}}):null}function us(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 TI(e,n,o,r){if(!e||!e.source||!e.target)return o(new ct(tt.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return Sn(e)?i=e:i={...e,id:up(e)},i=cp(i,void 0,r),dI(i,n)?!1:i}function OI(e,n,o,r,i){if(!n.source||!n.target)return i(new ct(tt.EDGE_INVALID,e.id)),!1;if(!o)return i(new ct(tt.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?up(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function Vp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!oo(l)){o(new ct(tt.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=lI(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 ct(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 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 d=r.get(l)||new Map;r.set(l,d.set(o,n))}}function fs(e,n,o){e.clear();for(const r of o){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=r,c={edgeId:r.id,source:i,target:a,sourceHandle:l,targetHandle:s},d=`${i}-${l}--${a}-${s}`,f=`${a}-${s}--${i}-${l}`;Rp("source",c,f,e,i,l),Rp("target",c,d,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 ps(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=Sn(d)?d:TI(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new ct(tt.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new ct(tt.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new ct(tt.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new ct(tt.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...cp(f,m,a),sourceNode:u,targetNode:p})}return c}const Mp=Symbol("vueFlow"),Lp=Symbol("nodeId"),Fp=Symbol("nodeRef"),$I=Symbol("edgeId"),BI=Symbol("edgeRef"),zi=Symbol("slots");function Up(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodeLookup:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:f,nodesDraggable:u,panBy:p,findNode:m,multiSelectionActive:g,nodesSelectionActive:y,selectNodesOnDrag:h,removeSelectedElements:_,addSelectedNodes:w,updateNodePositions:b,emits:k}=Fe(),{onStart:E,onDrag:C,onStop:S,onClick:A,el:R,disabled:O,id:T,selectable:N,dragHandle:L}=e,x=t.shallowRef(!1);let B=[],P,q=null,G={x:void 0,y:void 0},K={x:0,y:0},F=null,I=!1,j=!1,z=0,ae=!1;const U=DI(),H=({x:te,y:se})=>{G={x:te,y:se};let V=!1;if(B=B.map(v=>{const M={x:te-v.distance.x,y:se-v.distance.y},{computedPosition:D}=ls(v,o.value?qi(M,r.value):M,k.error,l.value,v.parentNode?m(v.parentNode):void 0);return V=V||v.position.x!==D.x||v.position.y!==D.y,v.position=D,v}),j=j||V,!!V&&(b(B,!0,!0),x.value=!0,F)){const[v,M]=as({id:T,dragItems:B,findNode:m});C({event:F,node:v,nodes:M})}},ee=()=>{if(!q)return;const[te,se]=wp(K,q,f.value);if(te!==0||se!==0){const V={x:(G.x??0)-te/c.value.zoom,y:(G.y??0)-se/c.value.zoom};p({x:te,y:se})&&H(V)}z=requestAnimationFrame(ee)},_e=(te,se)=>{I=!0;const V=m(T);!h.value&&!g.value&&V&&(V.selected||_()),V&&t.toValue(N)&&h.value&&us(V,g.value,w,_,y,!1,se);const v=U(te.sourceEvent);if(G=v,B=hI(a.value,u.value,v,T),B.length){const[M,D]=as({id:T,dragItems:B,findNode:m});E({event:te.sourceEvent,node:M,nodes:D})}},be=(te,se)=>{var V;te.sourceEvent.type==="touchmove"&&te.sourceEvent.touches.length>1||(j=!1,s.value===0&&_e(te,se),G=U(te.sourceEvent),q=((V=n.value)==null?void 0:V.getBoundingClientRect())||null,K=Jt(te.sourceEvent,q))},re=(te,se)=>{const V=U(te.sourceEvent);if(!ae&&I&&d.value&&(ae=!0,ee()),!I){const v=V.xSnapped-(G.x??0),M=V.ySnapped-(G.y??0);Math.sqrt(v*v+M*M)>s.value&&_e(te,se)}(G.x!==V.xSnapped||G.y!==V.ySnapped)&&B.length&&I&&(F=te.sourceEvent,K=Jt(te.sourceEvent,q),H(V))},J=te=>{let se=!1;if(!I&&!x.value&&!g.value){const V=te.sourceEvent,v=U(V),M=v.xSnapped-(G.x??0),D=v.ySnapped-(G.y??0),ie=Math.sqrt(M*M+D*D);ie!==0&&ie<=s.value&&(A==null||A(V),se=!0)}if(B.length&&!se){j&&(b(B,!1,!1),j=!1);const[V,v]=as({id:T,dragItems:B,findNode:m});S({event:te.sourceEvent,node:V,nodes:v})}B=[],x.value=!1,ae=!1,I=!1,G={x:void 0,y:void 0},cancelAnimationFrame(z)};return t.watch([()=>t.toValue(O),R],([te,se],V,v)=>{if(se){const M=Mt(se);te||(P=av().on("start",D=>be(D,se)).on("drag",D=>re(D,se)).on("end",D=>J(D)).filter(D=>{const ie=D.target,X=t.toValue(L);return!D.button&&(!i.value||!Sp(ie,`.${i.value}`,se)&&(!X||Sp(ie,X,se)))}),M.call(P)),v(()=>{M.on(".drag",null),P&&(P.on("start",null),P.on("drag",null),P.on("end",null))})}}),x}function VI(){return{doubleClick:Ne(),click:Ne(),mouseEnter:Ne(),mouseMove:Ne(),mouseLeave:Ne(),contextMenu:Ne(),updateStart:Ne(),update:Ne(),updateEnd:Ne()}}function RI(e,n){const o=VI();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 DI(){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=CI(i)?i.sourceEvent:i,{x:c,y:d}=Jt(s,l),f=xr({x:c,y:d},e.value),{x:u,y:p}=o.value?qi(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Hi(){return!0}function Kp({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:g,autoPanSpeed:y,findNode:h,panBy:_,startConnection:w,updateConnection:b,endConnection:k,emits:E,viewport:C,edges:S,nodes:A,isValidConnection:R,nodeLookup:O}=Fe();let T=null,N=!1,L=null;function x(P){var q;const G=t.toValue(o)==="target",K=ss(P),F=sp(P.target),I=P.currentTarget;if(I&&(K&&P.button===0||!K)){let j=function(Z){V=Jt(Z,J),H=vI(xr(V,C.value,!1,[1,1]),f.value,O.value,D),v||(M(),v=!0);const ue=Pp(Z,{handle:H,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:G?"target":"source",isValidConnection:U,doc:F,lib:"vue",flowId:s,nodeLookup:O.value},S.value,A.value,h,O.value);L=ue.handleDomNode,T=ue.connection,N=II(!!H,ue.isValid);const $={...Q,isValid:N,to:ue.toHandle&&N?Nr({x:ue.toHandle.x,y:ue.toHandle.y},C.value):V,toHandle:ue.toHandle,toPosition:N&&ue.toHandle?ue.toHandle.position:ds[D.position],toNode:ue.toHandle?O.value.get(ue.toHandle.nodeId):null};if(N&&H&&(Q!=null&&Q.toHandle)&&$.toHandle&&Q.toHandle.type===$.toHandle.type&&Q.toHandle.nodeId===$.toHandle.nodeId&&Q.toHandle.id===$.toHandle.id&&Q.to.x===$.to.x&&Q.to.y===$.to.y)return;const oe=H??ue.toHandle;if(b(oe&&N?Nr({x:oe.x,y:oe.y},C.value):V,oe,AI(!!oe,N)),Q=$,!H&&!N&&!L)return cs(se);T&&T.source!==T.target&&L&&(cs(se),se=L,L.classList.add("connecting","vue-flow__handle-connecting"),L.classList.toggle("valid",!!N),L.classList.toggle("vue-flow__handle-valid",!!N))},z=function(Z){"touches"in Z&&Z.touches.length>0||((H||L)&&T&&N&&(a?a(Z,T):E.connect(T)),E.connectEnd(Z),i&&(l==null||l(Z)),cs(se),cancelAnimationFrame(ee),k(Z),v=!1,N=!1,T=null,L=null,F.removeEventListener("mousemove",j),F.removeEventListener("mouseup",z),F.removeEventListener("touchmove",j),F.removeEventListener("touchend",z))};const ae=h(t.toValue(n));let U=t.toValue(r)||R.value||Hi;!U&&ae&&(U=(G?ae.isValidSourcePos:ae.isValidTargetPos)||Hi);let H,ee=0;const{x:_e,y:be}=Jt(P),re=Tp(t.toValue(i),I),J=(q=c.value)==null?void 0:q.getBoundingClientRect();if(!J||!re)return;const te=Op(t.toValue(n),re,t.toValue(e),O.value,d.value);if(!te)return;let se,V=Jt(P,J),v=!1;const M=()=>{if(!g.value)return;const[Z,ue]=wp(V,J,y.value);_({x:Z,y:ue}),ee=requestAnimationFrame(M)},D={...te,nodeId:t.toValue(n),type:re,position:te.position},ie=O.value.get(t.toValue(n)),ne={inProgress:!0,isValid:null,from:$o(ie,D,xe.Left,!0),fromHandle:D,fromPosition:D.position,fromNode:ie,to:V,toHandle:null,toPosition:ds[D.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:re,position:(I==null?void 0:I.getAttribute("data-handlepos"))||xe.Top,...V},{x:_e-J.left,y:be-J.top}),E.connectStart({event:P,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:re});let Q=ne;F.addEventListener("mousemove",j),F.addEventListener("mouseup",z),F.addEventListener("touchmove",j),F.addEventListener("touchend",z)}}function B(P){var q,G;if(!u.value)return;const K=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:P,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:xe.Top,...Jt(P)},void 0,!0);return}let F=t.toValue(r)||R.value||Hi;const I=h(t.toValue(n));if(!F&&I&&(F=(K?I.isValidSourcePos:I.isValidTargetPos)||Hi),I&&(typeof I.connectable>"u"?m.value:I.connectable)===!1)return;const j=sp(P.target),z=Pp(P,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:xe.Top,...Jt(P)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:F,doc:j,lib:"vue",flowId:s,nodeLookup:O.value},S.value,A.value,h,O.value),ae=((q=z.connection)==null?void 0:q.source)===((G=z.connection)==null?void 0:G.target);z.isValid&&z.connection&&!ae&&E.connect(z.connection),E.clickConnectEnd(P),k(P,!0)}return{handlePointerDown:x,handleClick:B}}function MI(){return t.inject(Lp,"")}function jp(e){const n=e??MI()??"",o=t.inject(Fp,t.ref(null)),{findNode:r,edges:i,emits:a}=Fe(),l=r(n);return l||a.error(new ct(tt.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>gp([l],i.value))}}function LI(){return{doubleClick:Ne(),click:Ne(),mouseEnter:Ne(),mouseMove:Ne(),mouseLeave:Ne(),contextMenu:Ne(),dragStart:Ne(),drag:Ne(),dragStop:Ne()}}function FI(e,n){const o=LI();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 Gp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Fe();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,g=c.y*u*p,y=[];for(const h of e.value)if(h.draggable||l&&typeof h.draggable>"u"){const _={x:h.computedPosition.x+m,y:h.computedPosition.y+g},{position:w}=ls(h,_,s.error,n.value,h.parentNode?r(h.parentNode):void 0);y.push({id:h.id,position:w,from:h.position,distance:{x:c.x,y:c.y},dimensions:h.dimensions})}o(y,!0,!1)}}const Yi=.1,UI=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function In(){return vr("Viewport not initialized yet."),Promise.resolve(!1)}const KI={zoomIn:In,zoomOut:In,zoomTo:In,fitView:In,setCenter:In,fitBounds:In,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:In,setTransform:In,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function jI(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?mr:Pi).scaleBy(ms(e.d3Selection,i==null?void 0:i.duration,i==null?void 0:i.ease,()=>{a(!0)}),r):a(!1)})}function o(r,i,a,l){return new Promise(s=>{var c;const{x:d,y:f}=lp({x:-r,y:-i},e.translateExtent),u=Po.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?mr:Pi).transform(ms(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),u):s(!1)})}return t.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>n(1.2,i),zoomOut:i=>n(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?mr:Pi).scaleTo(ms(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:Yi,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=pp(s),{x:d,y:f,zoom:u}=hp(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Yi);return o(d,f,u,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,d=e.dimensions.height/2-a*s;return o(c,d,s,l)},fitBounds:(i,a={padding:Yi})=>{const{x:l,y:s,zoom:c}=hp(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding??Yi);return o(l,s,c,a)},project:i=>xr(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 xr(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 Nr(s,e.viewport)}return{x:0,y:0}}}:KI)}function ms(e,n=0,o=UI,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function GI(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let y,h,_=!!(o.nodes.value.length||o.edges.value.length);y=xo([e.modelValue,()=>{var w,b;return(b=(w=e.modelValue)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setElements(w),!h&&!_&&w.length?_=!0:h==null||h.resume())}),h=xo([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,b])=>{var k;(k=e.modelValue)!=null&&k.value&&Array.isArray(e.modelValue.value)&&(y==null||y.pause(),e.modelValue.value=[...w,...b],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),h==null||h.stop()})})},a=()=>{r.run(()=>{let y,h,_=!!o.nodes.value.length;y=xo([e.nodes,()=>{var w,b;return(b=(w=e.nodes)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setNodes(w),!h&&!_&&w.length?_=!0:h==null||h.resume())}),h=xo([o.nodes,()=>o.nodes.value.length],([w])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(y==null||y.pause(),e.nodes.value=[...w],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),h==null||h.stop()})})},l=()=>{r.run(()=>{let y,h,_=!!o.edges.value.length;y=xo([e.edges,()=>{var w,b;return(b=(w=e.edges)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setEdges(w),!h&&!_&&w.length?_=!0:h==null||h.resume())}),h=xo([o.edges,()=>o.edges.value.length],([w])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(y==null||y.pause(),e.edges.value=[...w],t.nextTick(()=>{y==null||y.resume()}))},{immediate:_}),t.onScopeDispose(()=>{y==null||y.stop(),h==null||h.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})})},d=()=>{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})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{nt(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const y=async h=>{let _=h;typeof n.autoConnect=="function"&&(_=await n.autoConnect(h)),_!==!1&&o.addEdges([_])};t.watch(()=>n.autoConnect,()=>{nt(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(h,_,w)=>{h?o.onConnect(y):o.hooks.value.connect.off(y),w(()=>{o.hooks.value.connect.off(y)})},{immediate:!0})})},m=()=>{const y=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const h of Object.keys(n)){const _=h;if(!y.includes(_)){const w=t.toRef(()=>n[_]),b=o[_];t.isRef(b)&&r.run(()=>{t.watch(w,k=>{nt(k)&&(b.value=k)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function qI(){return{edgesChange:Ne(),nodesChange:Ne(),nodeDoubleClick:Ne(),nodeClick:Ne(),nodeMouseEnter:Ne(),nodeMouseMove:Ne(),nodeMouseLeave:Ne(),nodeContextMenu:Ne(),nodeDragStart:Ne(),nodeDrag:Ne(),nodeDragStop:Ne(),nodesInitialized:Ne(),miniMapNodeClick:Ne(),miniMapNodeDoubleClick:Ne(),miniMapNodeMouseEnter:Ne(),miniMapNodeMouseMove:Ne(),miniMapNodeMouseLeave:Ne(),connect:Ne(),connectStart:Ne(),connectEnd:Ne(),clickConnectStart:Ne(),clickConnectEnd:Ne(),paneReady:Ne(),init:Ne(),move:Ne(),moveStart:Ne(),moveEnd:Ne(),selectionDragStart:Ne(),selectionDrag:Ne(),selectionDragStop:Ne(),selectionContextMenu:Ne(),selectionStart:Ne(),selectionEnd:Ne(),viewportChangeStart:Ne(),viewportChange:Ne(),viewportChangeEnd:Ne(),paneScroll:Ne(),paneClick:Ne(),paneContextMenu:Ne(),paneMouseEnter:Ne(),paneMouseMove:Ne(),paneMouseLeave:Ne(),edgeContextMenu:Ne(),edgeMouseEnter:Ne(),edgeMouseMove:Ne(),edgeMouseLeave:Ne(),edgeDoubleClick:Ne(),edgeClick:Ne(),edgeUpdateStart:Ne(),edgeUpdate:Ne(),edgeUpdateEnd:Ne(),updateNodeInternals:Ne(),error:Ne(e=>vr(e.message))}}function zI(e,n){const o=t.getCurrentInstance();t.onBeforeMount(()=>{for(const[i,a]of Object.entries(n.value)){const l=s=>{e(i,s)};a.setEmitter(l),sr(a.removeEmitter),a.setHasEmitListeners(()=>r(i)),sr(a.removeHasEmitListeners)}});function r(i){var a;const l=HI(i);return!!((a=o==null?void 0:o.vnode.props)==null?void 0:a[l])}}function HI(e){const[n,...o]=e.split(":");return`on${n.replace(/(?:^|-)(\w)/g,(i,a)=>a.toUpperCase())}${o.length?`:${o.join(":")}`:""}`}function qp(){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:os.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:kr.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:to.Bezier,style:{}},connectionMode:xn.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:Gi()?"Meta":"Control",zoomActivationKeyCode:Gi()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:qI(),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 YI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function WI(e,n,o){const r=jI(e),i=V=>{const v=V??[];e.hooks.updateNodeInternals.trigger(v)},a=V=>cI(V,e.nodes,e.edges),l=V=>sI(V,e.nodes,e.edges),s=V=>gp(V,e.edges),c=({id:V,type:v,nodeId:M})=>{var D;const ie=V?`-${v}-${V}`:`-${v}`;return Array.from(((D=e.connectionLookup.get(`${M}${ie}`))==null?void 0:D.values())??[])},d=V=>{if(V)return n.value.get(V)},f=V=>{if(V)return o.value.get(V)},u=(V,v,M)=>{var D,ie;const X=[];for(const ne of V){const Q={id:ne.id,type:"position",dragging:M,from:ne.from};if(v&&(Q.position=ne.position,ne.parentNode)){const Z=d(ne.parentNode);Q.position={x:Q.position.x-(((D=Z==null?void 0:Z.computedPosition)==null?void 0:D.x)??0),y:Q.position.y-(((ie=Z==null?void 0:Z.computedPosition)==null?void 0:ie.y)??0)}}X.push(Q)}X!=null&&X.length&&e.hooks.nodesChange.trigger(X)},p=V=>{if(!e.vueFlowRef)return;const v=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!v)return;const M=window.getComputedStyle(v),{m22:D}=new window.DOMMatrixReadOnly(M.transform),ie=[];for(const X of V){const ne=X,Q=d(ne.id);if(Q){const Z=Ki(ne.nodeElement);if(!!(Z.width&&Z.height&&(Q.dimensions.width!==Z.width||Q.dimensions.height!==Z.height||ne.forceUpdate))){const $=ne.nodeElement.getBoundingClientRect();Q.dimensions=Z,Q.handleBounds.source=Bp("source",ne.nodeElement,$,D,Q.id),Q.handleBounds.target=Bp("target",ne.nodeElement,$,D,Q.id),ie.push({id:Q.id,type:"dimensions",dimensions:Z})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),ie.length&&e.hooks.nodesChange.trigger(ie)},m=(V,v)=>{const M=new Set,D=new Set;for(const ne of V)oo(ne)?M.add(ne.id):Sn(ne)&&D.add(ne.id);const ie=An(n.value,M,!0),X=An(o.value,D);if(e.multiSelectionActive){for(const ne of M)ie.push(vn(ne,v));for(const ne of D)X.push(vn(ne,v))}ie.length&&e.hooks.nodesChange.trigger(ie),X.length&&e.hooks.edgesChange.trigger(X)},g=V=>{if(e.multiSelectionActive){const v=V.map(M=>vn(M.id,!0));e.hooks.nodesChange.trigger(v);return}e.hooks.nodesChange.trigger(An(n.value,new Set(V.map(v=>v.id)),!0)),e.hooks.edgesChange.trigger(An(o.value))},y=V=>{if(e.multiSelectionActive){const v=V.map(M=>vn(M.id,!0));e.hooks.edgesChange.trigger(v);return}e.hooks.edgesChange.trigger(An(o.value,new Set(V.map(v=>v.id)))),e.hooks.nodesChange.trigger(An(n.value,new Set,!0))},h=V=>{m(V,!0)},_=V=>{const M=(V||e.nodes).map(D=>(D.selected=!1,vn(D.id,!1)));e.hooks.nodesChange.trigger(M)},w=V=>{const M=(V||e.edges).map(D=>(D.selected=!1,vn(D.id,!1)));e.hooks.edgesChange.trigger(M)},b=V=>{if(!V||!V.length)return m([],!1);const v=V.reduce((M,D)=>{const ie=vn(D.id,!1);return oo(D)?M.nodes.push(ie):M.edges.push(ie),M},{nodes:[],edges:[]});v.nodes.length&&e.hooks.nodesChange.trigger(v.nodes),v.edges.length&&e.hooks.edgesChange.trigger(v.edges)},k=V=>{var v;(v=e.d3Zoom)==null||v.scaleExtent([V,e.maxZoom]),e.minZoom=V},E=V=>{var v;(v=e.d3Zoom)==null||v.scaleExtent([e.minZoom,V]),e.maxZoom=V},C=V=>{var v;(v=e.d3Zoom)==null||v.translateExtent(V),e.translateExtent=V},S=V=>{e.nodeExtent=V,i()},A=V=>{var v;(v=e.d3Zoom)==null||v.clickDistance(V)},R=V=>{e.nodesDraggable=V,e.nodesConnectable=V,e.elementsSelectable=V},O=V=>{const v=V instanceof Function?V(e.nodes):V;!e.initialized&&!v.length||(e.nodes=Vp(v,d,e.hooks.error.trigger))},T=V=>{const v=V instanceof Function?V(e.edges):V;if(!e.initialized&&!v.length)return;const M=ps(v,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);fs(e.connectionLookup,o.value,M),e.edges=M},N=V=>{const v=V instanceof Function?V([...e.nodes,...e.edges]):V;!e.initialized&&!v.length||(O(v.filter(oo)),T(v.filter(Sn)))},L=V=>{let v=V instanceof Function?V(e.nodes):V;v=Array.isArray(v)?v:[v];const M=Vp(v,d,e.hooks.error.trigger),D=[];for(const ie of M)D.push(Cp(ie));D.length&&e.hooks.nodesChange.trigger(D)},x=V=>{let v=V instanceof Function?V(e.edges):V;v=Array.isArray(v)?v:[v];const M=ps(v,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),D=[];for(const ie of M)D.push(Cp(ie));D.length&&e.hooks.edgesChange.trigger(D)},B=(V,v=!0,M=!1)=>{const D=V instanceof Function?V(e.nodes):V,ie=Array.isArray(D)?D:[D],X=[],ne=[];function Q(ue){const $=s(ue);for(const oe of $)(!nt(oe.deletable)||oe.deletable)&&ne.push(Np(oe.id,oe.source,oe.target,oe.sourceHandle,oe.targetHandle))}function Z(ue){const $=[];for(const oe of e.nodes)oe.parentNode===ue&&$.push(oe);if($.length){for(const oe of $)X.push(Ep(oe.id));v&&Q($);for(const oe of $)Z(oe.id)}}for(const ue of ie){const $=typeof ue=="string"?d(ue):ue;$&&(nt($.deletable)&&!$.deletable||(X.push(Ep($.id)),v&&Q([$]),M&&Z($.id)))}ne.length&&e.hooks.edgesChange.trigger(ne),X.length&&e.hooks.nodesChange.trigger(X)},P=V=>{const v=V instanceof Function?V(e.edges):V,M=Array.isArray(v)?v:[v],D=[];for(const ie of M){const X=typeof ie=="string"?f(ie):ie;X&&(nt(X.deletable)&&!X.deletable||D.push(Np(typeof ie=="string"?ie:ie.id,X.source,X.target,X.sourceHandle,X.targetHandle)))}e.hooks.edgesChange.trigger(D)},q=(V,v,M=!0)=>{const D=f(V.id);if(!D)return!1;const ie=e.edges.indexOf(D),X=OI(V,v,D,M,e.hooks.error.trigger);if(X){const[ne]=ps([X],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((Q,Z)=>Z===ie?ne:Q),fs(e.connectionLookup,o.value,[ne]),ne}return!1},G=(V,v,M={replace:!1})=>{const D=f(V);if(!D)return;const ie=typeof v=="function"?v(D):v;D.data=M.replace?ie:{...D.data,...ie}},K=V=>kp(V,e.nodes),F=V=>{const v=kp(V,e.edges);return fs(e.connectionLookup,o.value,v),v},I=(V,v,M={replace:!1})=>{const D=d(V);if(!D)return;const ie=typeof v=="function"?v(D):v;M.replace?e.nodes.splice(e.nodes.indexOf(D),1,ie):Object.assign(D,ie)},j=(V,v,M={replace:!1})=>{const D=d(V);if(!D)return;const ie=typeof v=="function"?v(D):v;D.data=M.replace?ie:{...D.data,...ie}},z=(V,v,M=!1)=>{M?e.connectionClickStartHandle=V:e.connectionStartHandle=V,e.connectionEndHandle=null,e.connectionStatus=null,v&&(e.connectionPosition=v)},ae=(V,v=null,M=null)=>{e.connectionStartHandle&&(e.connectionPosition=V,e.connectionEndHandle=v,e.connectionStatus=M)},U=(V,v)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,v?e.connectionClickStartHandle=null:e.connectionStartHandle=null},H=V=>{const v=aI(V),M=v?null:Er(V)?V:d(V.id);return!v&&!M?[null,null,v]:[v?V:Fi(M),M,v]},ee=(V,v=!0,M=e.nodes)=>{const[D,ie,X]=H(V);if(!D)return[];const ne=[];for(const Q of M||e.nodes){if(!X&&(Q.id===ie.id||!Q.computedPosition))continue;const Z=Fi(Q),ue=Ui(Z,D);(v&&ue>0||ue>=Z.width*Z.height||ue>=Number(D.width)*Number(D.height))&&ne.push(Q)}return ne},_e=(V,v,M=!0)=>{const[D]=H(V);if(!D)return!1;const ie=Ui(D,v);return M&&ie>0||ie>=Number(D.width)*Number(D.height)},be=V=>{const{viewport:v,dimensions:M,d3Zoom:D,d3Selection:ie,translateExtent:X}=e;if(!D||!ie||!V.x&&!V.y)return!1;const ne=Po.translate(v.x+V.x,v.y+V.y).scale(v.zoom),Q=[[0,0],[M.width,M.height]],Z=D.constrain()(ne,Q,X),ue=e.viewport.x!==Z.x||e.viewport.y!==Z.y||e.viewport.zoom!==Z.k;return D.transform(ie,Z),ue},re=V=>{const v=V instanceof Function?V(e):V,M=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];nt(v.defaultEdgeOptions)&&(e.defaultEdgeOptions=v.defaultEdgeOptions);const D=v.modelValue||v.nodes||v.edges?[]:void 0;D&&(v.modelValue&&D.push(...v.modelValue),v.nodes&&D.push(...v.nodes),v.edges&&D.push(...v.edges),N(D));const ie=()=>{nt(v.maxZoom)&&E(v.maxZoom),nt(v.minZoom)&&k(v.minZoom),nt(v.translateExtent)&&C(v.translateExtent)};for(const X of Object.keys(v)){const ne=X,Q=v[ne];![...YI,...M].includes(ne)&&nt(Q)&&(e[ne]=Q)}Rl(()=>e.d3Zoom).not.toBeNull().then(ie),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:N,setNodes:O,setEdges:T,addNodes:L,addEdges:x,removeNodes:B,removeEdges:P,findNode:d,findEdge:f,updateEdge:q,updateEdgeData:G,updateNode:I,updateNodeData:j,applyEdgeChanges:F,applyNodeChanges:K,addSelectedElements:h,addSelectedNodes:g,addSelectedEdges:y,setMinZoom:k,setMaxZoom:E,setTranslateExtent:C,setNodeExtent:S,setPaneClickDistance:A,removeSelectedElements:b,removeSelectedNodes:_,removeSelectedEdges:w,startConnection:z,updateConnection:ae,endConnection:U,setInteractive:R,setState:re,getIntersectingNodes:ee,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:_e,panBy:be,fitView:V=>r.value.fitView(V),zoomIn:V=>r.value.zoomIn(V),zoomOut:V=>r.value.zoomOut(V),zoomTo:(V,v)=>r.value.zoomTo(V,v),setViewport:(V,v)=>r.value.setViewport(V,v),setTransform:(V,v)=>r.value.setTransform(V,v),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(V,v,M)=>r.value.setCenter(V,v,M),fitBounds:(V,v)=>r.value.fitBounds(V,v),project:V=>r.value.project(V),screenToFlowCoordinate:V=>r.value.screenToFlowCoordinate(V),flowToScreenCoordinate:V=>r.value.flowToScreenCoordinate(V),toObject:()=>{const V=[],v=[];for(const M of e.nodes){const{computedPosition:D,handleBounds:ie,selected:X,dimensions:ne,isParent:Q,resizing:Z,dragging:ue,events:$,...oe}=M;V.push(oe)}for(const M of e.edges){const{selected:D,sourceNode:ie,targetNode:X,events:ne,...Q}=M;v.push(Q)}return JSON.parse(JSON.stringify({nodes:V,edges:v,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:V=>new Promise(v=>{const{nodes:M,edges:D,position:ie,zoom:X,viewport:ne}=V;M&&O(M),D&&T(D);const[Q,Z]=ne!=null&&ne.x&&(ne!=null&&ne.y)?[ne.x,ne.y]:ie??[null,null];if(Q&&Z){const ue=(ne==null?void 0:ne.zoom)||X||e.viewport.zoom;return Rl(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:Q,y:Z,zoom:ue}).then(()=>{v(!0)})})}else v(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const V=qp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const v=Po.translate(V.defaultViewport.x??0,V.defaultViewport.y??0).scale(no(V.defaultViewport.zoom??1,V.minZoom,V.maxZoom)),M=e.viewportRef.getBoundingClientRect(),D=[[0,0],[M.width,M.height]],ie=e.d3Zoom.constrain()(v,D,V.translateExtent);e.d3Zoom.transform(e.d3Selection,ie)}re(V)},$destroy:()=>{}}}const XI=["data-id","data-handleid","data-nodeid","data-handlepos"],ZI={name:"Handle",compatConfig:{MODE:3}},Qt=t.defineComponent({...ZI,props:{id:{default:null},type:{},position:{default:()=>xe.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Fe(),{id:m,node:g,nodeEl:y,connectedEdges:h}=jp(),_=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),k=t.toRef(()=>{var T,N,L,x,B,P;return((T=l.value)==null?void 0:T.nodeId)===m&&((N=l.value)==null?void 0:N.id)===e.id&&((L=l.value)==null?void 0:L.type)===r.value||((x=c.value)==null?void 0:x.nodeId)===m&&((B=c.value)==null?void 0:B.id)===e.id&&((P=c.value)==null?void 0:P.type)===r.value}),E=t.toRef(()=>{var T,N,L;return((T=s.value)==null?void 0:T.nodeId)===m&&((N=s.value)==null?void 0:N.id)===e.id&&((L=s.value)==null?void 0:L.type)===r.value}),{handlePointerDown:C,handleClick:S}=Kp({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),A=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!h.value.some(T=>{const N=T[`${r.value}Handle`];return T[r.value]!==m?!1:N?N===e.id:!0}):typeof e.connectable=="number"?h.value.filter(T=>{const N=T[`${r.value}Handle`];return T[r.value]!==m?!1:N?N===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(g,h.value):nt(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var T;if(!g.dimensions.width||!g.dimensions.height)return;const N=(T=g.handleBounds[r.value])==null?void 0:T.find(K=>K.id===e.id);if(!d.value||N)return;const L=d.value.querySelector(".vue-flow__transformationpane");if(!y.value||!_.value||!L||!e.id)return;const x=y.value.getBoundingClientRect(),B=_.value.getBoundingClientRect(),P=window.getComputedStyle(L),{m22:q}=new window.DOMMatrixReadOnly(P.transform),G={id:e.id,position:e.position,x:(B.left-x.left)/q,y:(B.top-x.top)/q,type:r.value,nodeId:m,...Ki(_.value)};g.handleBounds[r.value]=[...g.handleBounds[r.value]??[],G]});function R(T){const N=ss(T);A.value&&w.value&&(N&&T.button===0||!N)&&C(T)}function O(T){!m||!s.value&&!w.value||A.value&&S(T)}return n({handleClick:S,handlePointerDown:C,onClick:O,onPointerDown:R}),(T,N)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:_,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":T.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${T.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:A.value,connecting:E.value,connectablestart:w.value,connectableend:b.value,connectionindicator:A.value&&(w.value&&!k.value||b.value&&k.value)}]]),onMousedown:R,onTouchstartPassive:R,onClick:O},[t.renderSlot(T.$slots,"default",{id:T.id})],42,XI))}}),Wi=function({sourcePosition:e=xe.Bottom,targetPosition:n=xe.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})]};Wi.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Wi.inheritAttrs=!1,Wi.compatConfig={MODE:3};const JI=Wi,Xi=function({targetPosition:e=xe.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])]};Xi.props=["targetPosition","label","isValidTargetPos","connectable","data"],Xi.inheritAttrs=!1,Xi.compatConfig={MODE:3};const QI=Xi,Zi=function({sourcePosition:e=xe.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})]};Zi.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Zi.inheritAttrs=!1,Zi.compatConfig={MODE:3};const eP=Zi,tP=["transform"],nP=["width","height","x","y","rx","ry"],oP=["y"],rP={name:"EdgeText",compatConfig:{MODE:3}},iP=t.defineComponent({...rP,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,nP)):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,oP)],8,tP))}}),aP=["id","d","marker-end","marker-start"],lP=["d","stroke-width"],sP={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Ji=t.defineComponent({...sP,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,aP),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,lP)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(iP,{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 zp({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 Hp({sourceX:e,sourceY:n,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),u=Math.abs(d-n);return[c,d,f,u]}function Qi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Yp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case xe.Left:l=n-Qi(n-r,a),s=o;break;case xe.Right:l=n+Qi(r-n,a),s=o;break;case xe.Top:l=n,s=o-Qi(o-i,a);break;case xe.Bottom:l=n,s=o+Qi(i-o,a);break}return[l,s]}function Wp(e){const{sourceX:n,sourceY:o,sourcePosition:r=xe.Bottom,targetX:i,targetY:a,targetPosition:l=xe.Top,curvature:s=.25}=e,[c,d]=Yp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Yp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,g,y]=Hp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,g,y]}function Xp({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case xe.Left:case xe.Right:a=.5*(n+r),l=o;break;case xe.Top:case xe.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function Zp(e){const{sourceX:n,sourceY:o,sourcePosition:r=xe.Bottom,targetX:i,targetY:a,targetPosition:l=xe.Top}=e,[s,c]=Xp({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Xp({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,g]=Hp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${n},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,g]}const Jp={[xe.Left]:{x:-1,y:0},[xe.Right]:{x:1,y:0},[xe.Top]:{x:0,y:-1},[xe.Bottom]:{x:0,y:1}};function cP({source:e,sourcePosition:n=xe.Bottom,target:o}){return n===xe.Left||n===xe.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 Qp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function dP({source:e,sourcePosition:n=xe.Bottom,target:o,targetPosition:r=xe.Top,center:i,offset:a}){const l=Jp[n],s=Jp[r],c={x:e.x+l.x*a,y:e.y+l.y*a},d={x:o.x+s.x*a,y:o.y+s.y*a},f=cP({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,g,y;const h={x:0,y:0},_={x:0,y:0},[w,b,k,E]=zp({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){g=i.x??w,y=i.y??b;const S=[{x:g,y:c.y},{x:g,y:d.y}],A=[{x:c.x,y},{x:d.x,y}];l[u]===p?m=u==="x"?S:A:m=u==="x"?A:S}else{const S=[{x:c.x,y:d.y}],A=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?A:S:m=l.y===p?S:A,n===r){const L=Math.abs(e[u]-o[u]);if(L<=a){const x=Math.min(a-1,a-L);l[u]===p?h[u]=(c[u]>e[u]?-1:1)*x:_[u]=(d[u]>o[u]?-1:1)*x}}if(n!==r){const L=u==="x"?"y":"x",x=l[u]===s[L],B=c[L]>d[L],P=c[L]<d[L];(l[u]===1&&(!x&&B||x&&P)||l[u]!==1&&(!x&&P||x&&B))&&(m=u==="x"?S:A)}const R={x:c.x+h.x,y:c.y+h.y},O={x:d.x+_.x,y:d.y+_.y},T=Math.max(Math.abs(R.x-m[0].x),Math.abs(O.x-m[0].x)),N=Math.max(Math.abs(R.y-m[0].y),Math.abs(O.y-m[0].y));T>=N?(g=(R.x+O.x)/2,y=m[0].y):(g=m[0].x,y=(R.y+O.y)/2)}return[[e,{x:c.x+h.x,y:c.y+h.y},...m,{x:d.x+_.x,y:d.y+_.y},o],g,y,k,E]}function uP(e,n,o,r){const i=Math.min(Qp(e,n)/2,Qp(n,o)/2,r),{x:a,y:l}=n;if(e.x===a&&a===o.x||e.y===l&&l===o.y)return`L${a} ${l}`;if(e.y===l){const d=e.x<o.x?-1:1,f=e.y<o.y?1:-1;return`L ${a+i*d},${l}Q ${a},${l} ${a},${l+i*f}`}const s=e.x<o.x?1:-1,c=e.y<o.y?-1:1;return`L ${a},${l+i*c}Q ${a},${l} ${a+i*s},${l}`}function gs(e){const{sourceX:n,sourceY:o,sourcePosition:r=xe.Bottom,targetX:i,targetY:a,targetPosition:l=xe.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,g,y]=dP({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((_,w,b)=>{let k;return b>0&&b<u.length-1?k=uP(u[b-1],w,u[b+1],s):k=`${b===0?"M":"L"}${w.x} ${w.y}`,_+=k,_},""),p,m,g,y]}function fP(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=zp({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const pP=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]=fP(e);return t.h(Ji,{path:o,labelX:r,labelY:i,...n,...e})}}}),em=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]=gs({...e,sourcePosition:e.sourcePosition??xe.Bottom,targetPosition:e.targetPosition??xe.Top});return t.h(Ji,{path:o,labelX:r,labelY:i,...n,...e})}}}),mP=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(em,{...e,...n,borderRadius:0})}}),gP=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]=Wp({...e,sourcePosition:e.sourcePosition??xe.Bottom,targetPosition:e.targetPosition??xe.Top});return t.h(Ji,{path:o,labelX:r,labelY:i,...n,...e})}}}),hP=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]=Zp({...e,sourcePosition:e.sourcePosition??xe.Bottom,targetPosition:e.targetPosition??xe.Top});return t.h(Ji,{path:o,labelX:r,labelY:i,...n,...e})}}}),yP={input:eP,default:JI,output:QI},_P={default:gP,straight:pP,step:mP,smoothstep:em,simplebezier:hP};function bP(e,n,o){const r=t.computed(()=>y=>n.value.get(y)),i=t.computed(()=>y=>o.value.get(y)),a=t.computed(()=>{const y={..._P,...e.edgeTypes},h=Object.keys(y);for(const _ of e.edges)_.type&&!h.includes(_.type)&&(y[_.type]=_.type);return y}),l=t.computed(()=>{const y={...yP,...e.nodeTypes},h=Object.keys(y);for(const _ of e.nodes)_.type&&!h.includes(_.type)&&(y[_.type]=_.type);return y}),s=t.computed(()=>e.onlyRenderVisibleElements?mp(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const y=[];for(const h of e.edges){const _=n.value.get(h.source),w=n.value.get(h.target);wI({sourcePos:_.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:_.dimensions.width,sourceHeight:_.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&y.push(h)}return y}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const y=[];for(const h of e.nodes)h.selected&&y.push(h);return y}),u=t.computed(()=>{const y=[];for(const h of e.edges)h.selected&&y.push(h);return y}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const y=[];for(const h of e.nodes)h.dimensions.width&&h.dimensions.height&&h.handleBounds!==void 0&&y.push(h);return y}),g=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:g}}class ro{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)??ro.instance;return ro.instance=r??new ro,o&&(o.config.globalProperties.$vueFlowStorage=ro.instance),ro.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=qp(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const g=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[g]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=bP(i,s,c),f=WI(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...gx(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.48.1",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Fe(e){const n=ro.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(Mp,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const g=h=>{d.applyNodeChanges(h)},y=h=>{d.applyEdgeChanges(h)};u?(d.onNodesChange(g),d.onEdgesChange(y)):(d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(y)),m(()=>{d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(y)})},{immediate:!0}),sr(()=>{if(s){const u=n.get(s.id);u?u.$destroy():vr(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(Mp,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new ct(tt.USEVUEFLOW_OPTIONS))}return s}function wP(e){const{emits:n,dimensions:o}=Fe();let r;t.onMounted(()=>{const i=()=>{var a,l;if(!e.value||!(((l=(a=e.value).checkVisibility)==null?void 0:l.call(a))??!0))return;const s=Ki(e.value);(s.width===0||s.height===0)&&n.error(new ct(tt.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:s.width||500,height:s.height||500}};i(),window.addEventListener("resize",i),e.value&&(r=new ResizeObserver(()=>i()),r.observe(e.value)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",i),r&&e.value&&r.unobserve(e.value)})})}const kP={name:"UserSelection",compatConfig:{MODE:3}},CP=t.defineComponent({...kP,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))}}),EP=["tabIndex"],NP={name:"NodesSelection",compatConfig:{MODE:3}},xP=t.defineComponent({...NP,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Fe(),s=Gp(),c=t.ref(null),d=Up({el:c,onStart(g){n.selectionDragStart(g),n.nodeDragStart(g)},onDrag(g){n.selectionDrag(g),n.nodeDrag(g)},onStop(g){n.selectionDragStop(g),n.nodeDragStop(g)}});t.onMounted(()=>{var g;a.value||(g=c.value)==null||g.focus({preventScroll:!0})});const f=t.computed(()=>pp(r.value)),u=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(g){n.selectionContextMenu({event:g,nodes:r.value})}function m(g){a.value||To[g.key]&&(g.preventDefault(),s({x:To[g.key].x,y:To[g.key].y},g.shiftKey))}return(g,y)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(d)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(u.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,EP)],6)):t.createCommentVNode("",!0)}});function SP(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const vP={name:"Pane",compatConfig:{MODE:3}},AP=t.defineComponent({...vP,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:g,deleteKeyCode:y,multiSelectionKeyCode:h,multiSelectionActive:_,edgeLookup:w,nodeLookup:b,connectionLookup:k,defaultEdgeOptions:E,connectionStartHandle:C,panOnDrag:S}=Fe(),A=t.shallowRef(null),R=t.shallowRef(new Set),O=t.shallowRef(new Set),T=t.shallowRef(null),N=t.toRef(()=>c.value&&(e.isSelecting||a.value)),L=t.toRef(()=>C.value!==null);let x=!1,B=!1;const P=Cr(y,{actInsideInputWithModifier:!1}),q=Cr(h);t.watch(P,U=>{U&&(p(u.value),m(f.value),d.value=!1)}),t.watch(q,U=>{_.value=U});function G(U,H){return ee=>{ee.target===H&&(U==null||U(ee))}}function K(U){if(x||L.value){x=!1;return}i.paneClick(U),l(),d.value=!1}function F(U){var H;if(Array.isArray(S.value)&&((H=S.value)!=null&&H.includes(2))){U.preventDefault();return}i.paneContextMenu(U)}function I(U){i.paneScroll(U)}function j(U){var H,ee,_e;if(T.value=((H=n.value)==null?void 0:H.getBoundingClientRect())??null,!c.value||!e.isSelecting||U.button!==0||U.target!==A.value||!T.value)return;(_e=(ee=U.target)==null?void 0:ee.setPointerCapture)==null||_e.call(ee,U.pointerId);const{x:be,y:re}=SP(U,T.value);B=!0,x=!1,l(),s.value={width:0,height:0,startX:be,startY:re,x:be,y:re},i.selectionStart(U)}function z(U){var H;if(!T.value||!s.value)return;x=!0;const{x:ee,y:_e}=Jt(U,T.value),{startX:be=0,startY:re=0}=s.value,J={startX:be,startY:re,x:ee<be?ee:be,y:_e<re?_e:re,width:Math.abs(ee-be),height:Math.abs(_e-re)},te=R.value,se=O.value;R.value=new Set(mp(o.value,J,r.value,g.value===os.Partial,!0).map(v=>v.id)),O.value=new Set;const V=((H=E.value)==null?void 0:H.selectable)??!0;for(const v of R.value){const M=k.value.get(v);if(M)for(const{edgeId:D}of M.values()){const ie=w.value.get(D);ie&&(ie.selectable??V)&&O.value.add(D)}}if(!Dp(te,R.value)){const v=An(b.value,R.value,!0);i.nodesChange(v)}if(!Dp(se,O.value)){const v=An(w.value,O.value);i.edgesChange(v)}s.value=J,a.value=!0,d.value=!1}function ae(U){var H;U.button!==0||!B||((H=U.target)==null||H.releasePointerCapture(U.pointerId),!a.value&&s.value&&U.target===A.value&&K(U),a.value=!1,s.value=null,d.value=R.value.size>0,i.selectionEnd(U),e.selectionKeyPressed&&(x=!1),B=!1)}return(U,H)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:A,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:U.isSelecting}]),onClick:H[0]||(H[0]=ee=>N.value?void 0:G(K,A.value)(ee)),onContextmenu:H[1]||(H[1]=ee=>G(F,A.value)(ee)),onWheelPassive:H[2]||(H[2]=ee=>G(I,A.value)(ee)),onPointerenter:H[3]||(H[3]=ee=>N.value?void 0:t.unref(i).paneMouseEnter(ee)),onPointerdown:H[4]||(H[4]=ee=>N.value?j(ee):t.unref(i).paneMouseMove(ee)),onPointermove:H[5]||(H[5]=ee=>N.value?z(ee):t.unref(i).paneMouseMove(ee)),onPointerup:H[6]||(H[6]=ee=>N.value?ae(ee):void 0),onPointerleave:H[7]||(H[7]=ee=>t.unref(i).paneMouseLeave(ee))},[t.renderSlot(U.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(CP,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(d)&&t.unref(u).length?(t.openBlock(),t.createBlock(xP,{key:1})):t.createCommentVNode("",!0)],34))}}),IP={name:"Transform",compatConfig:{MODE:3}},PP=t.defineComponent({...IP,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))}}),TP={name:"Viewport",compatConfig:{MODE:3}},OP=t.defineComponent({...TP,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:g,preventScrolling:y,noWheelClassName:h,noPanClassName:_,emits:w,connectionStartHandle:b,userSelectionActive:k,paneDragging:E,d3Zoom:C,d3Selection:S,d3ZoomHandler:A,viewport:R,viewportRef:O,paneClickDistance:T}=Fe();wP(O);const N=t.shallowRef(!1),L=t.shallowRef(!1);let x=null,B=!1,P=0,q={x:0,y:0,zoom:0};const G=Cr(s),K=Cr(l),F=Cr(a),I=t.toRef(()=>(!K.value||K.value&&l.value===!0)&&(G.value||u.value)),j=t.toRef(()=>G.value||c.value),z=t.toRef(()=>K.value||l.value===!0&&I.value!==!0),ae=t.toRef(()=>b.value!==null);t.onMounted(()=>{if(!O.value){vr("Viewport element is missing");return}const be=O.value,re=be.getBoundingClientRect(),J=QA().clickDistance(T.value).scaleExtent([n.value,o.value]).translateExtent(i.value),te=Mt(be).call(J),se=te.on("wheel.zoom"),V=Po.translate(r.value.x??0,r.value.y??0).scale(no(r.value.zoom??1,n.value,o.value)),v=[[0,0],[re.width,re.height]],M=J.constrain()(V,v,i.value);J.transform(te,M),J.wheelDelta(_p),C.value=J,S.value=te,A.value=se,R.value={x:M.x,y:M.y,zoom:M.k},J.on("start",D=>{var ie;if(!D.sourceEvent)return null;P=D.sourceEvent.button,N.value=!0;const X=ee(D.transform);((ie=D.sourceEvent)==null?void 0:ie.type)==="mousedown"&&(E.value=!0),q=X,w.viewportChangeStart(X),w.moveStart({event:D,flowTransform:X})}),J.on("end",D=>{if(!D.sourceEvent)return null;if(N.value=!1,E.value=!1,U(I.value,P??0)&&!B&&w.paneContextMenu(D.sourceEvent),B=!1,H(q,D.transform)){const ie=ee(D.transform);q=ie,w.viewportChangeEnd(ie),w.moveEnd({event:D,flowTransform:ie})}}),J.filter(D=>{var ie;const X=F.value||g.value,ne=m.value&&D.ctrlKey,Q=D.button,Z=D.type==="wheel";if(Q===1&&D.type==="mousedown"&&(_e(D,"vue-flow__node")||_e(D,"vue-flow__edge")))return!0;if(!I.value&&!X&&!j.value&&!p.value&&!m.value||k.value||ae.value&&!Z||!p.value&&D.type==="dblclick"||_e(D,h.value)&&Z||_e(D,_.value)&&(!Z||j.value&&Z&&!F.value)||!m.value&&D.ctrlKey&&Z||!X&&!j.value&&!ne&&Z)return!1;if(!m&&D.type==="touchstart"&&((ie=D.touches)==null?void 0:ie.length)>1)return D.preventDefault(),!1;if(!I.value&&(D.type==="mousedown"||D.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&Q===0||Array.isArray(u.value)&&!u.value.includes(Q)&&(D.type==="mousedown"||D.type==="touchstart"))return!1;const ue=Array.isArray(u.value)&&u.value.includes(Q)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!Q||Q<=1;return(!D.ctrlKey||G.value||Z)&&ue}),t.watch([k,I],()=>{k.value&&!N.value?J.on("zoom",null):k.value||J.on("zoom",D=>{R.value={x:D.transform.x,y:D.transform.y,zoom:D.transform.k};const ie=ee(D.transform);B=U(I.value,P??0),w.viewportChange(ie),w.move({event:D,flowTransform:ie})})},{immediate:!0}),t.watch([k,j,d,F,m,y,h],()=>{j.value&&!F.value&&!k.value?te.on("wheel.zoom",D=>{if(_e(D,h.value))return!1;const ie=F.value||g.value,X=m.value&&D.ctrlKey;if(!(!y.value||j.value||ie||X))return!1;D.preventDefault(),D.stopImmediatePropagation();const Q=te.property("__zoom").k||1,Z=Gi();if(!G.value&&D.ctrlKey&&m.value&&Z){const pe=Yt(D),ce=_p(D),fe=Q*2**ce;J.scaleTo(te,fe,pe,D);return}const ue=D.deltaMode===1?20:1;let $=d.value===kr.Vertical?0:D.deltaX*ue,oe=d.value===kr.Horizontal?0:D.deltaY*ue;!Z&&D.shiftKey&&d.value!==kr.Vertical&&!$&&oe&&($=oe,oe=0),J.translateBy(te,-($/Q)*f.value,-(oe/Q)*f.value);const le=ee(te.property("__zoom"));x&&clearTimeout(x),L.value?(w.move({event:D,flowTransform:le}),w.viewportChange(le),x=setTimeout(()=>{w.moveEnd({event:D,flowTransform:le}),w.viewportChangeEnd(le),L.value=!1},150)):(L.value=!0,w.moveStart({event:D,flowTransform:le}),w.viewportChangeStart(le))},{passive:!1}):typeof se<"u"&&te.on("wheel.zoom",function(D,ie){const X=!y.value&&D.type==="wheel"&&!D.ctrlKey,ne=F.value||g.value,Q=m.value&&D.ctrlKey;if(!ne&&!c.value&&!Q&&D.type==="wheel"||X||_e(D,h.value))return null;D.preventDefault(),se.call(this,D,ie)},{passive:!1})},{immediate:!0})});function U(be,re){return re===2&&Array.isArray(be)&&be.includes(2)}function H(be,re){return be.x!==re.x&&!Number.isNaN(re.x)||be.y!==re.y&&!Number.isNaN(re.y)||be.zoom!==re.k&&!Number.isNaN(re.k)}function ee(be){return{x:be.x,y:be.y,zoom:be.k}}function _e(be,re){return be.target.closest(`.${re}`)}return(be,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:O,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(AP,{"is-selecting":z.value,"selection-key-pressed":t.unref(K),class:t.normalizeClass({connecting:ae.value,dragging:t.unref(E),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(PP,null,{default:t.withCtx(()=>[t.renderSlot(be.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),$P=["id"],BP=["id"],VP=["id"],RP={name:"A11yDescriptions",compatConfig:{MODE:3}},DP=t.defineComponent({...RP,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(rp)}-${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,$P),t.createElementVNode("div",{id:`${t.unref(ip)}-${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,BP),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(iI)}-${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,VP))],64))}});function MP(){const e=Fe();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function LP(e,n,o){return o===xe.Left?e-n:o===xe.Right?e+n:e}function FP(e,n,o){return o===xe.Top?e-n:o===xe.Bottom?e+n:e}const hs=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=xe.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:LP(n,e,r),cy:FP(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};hs.props=["radius","centerX","centerY","position","type"],hs.compatConfig={MODE:3};const tm=hs,UP=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:g,elementsSelectable:y,edgesUpdatable:h,edgesFocusable:_,hooks:w}=Fe(),b=t.computed(()=>f(e.id)),{emit:k,on:E}=RI(b.value,a),C=t.inject(zi),S=t.getCurrentInstance(),A=t.ref(!1),R=t.ref(!1),O=t.ref(""),T=t.ref(null),N=t.ref("source"),L=t.ref(null),x=t.toRef(()=>typeof b.value.selectable>"u"?y.value:b.value.selectable),B=t.toRef(()=>typeof b.value.updatable>"u"?h.value:b.value.updatable),P=t.toRef(()=>typeof b.value.focusable>"u"?_.value:b.value.focusable);t.provide($I,e.id),t.provide(BI,L);const q=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),G=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),K=t.computed(()=>{const v=b.value.type||"default",M=C==null?void 0:C[`edge-${v}`];if(M)return M;let D=b.value.template??c.value[v];if(typeof D=="string"&&S){const ie=Object.keys(S.appContext.components);ie&&ie.includes(v)&&(D=t.resolveComponent(v,!1))}return D&&typeof D!="string"?D:(a.error(new ct(tt.EDGE_TYPE_MISSING,D)),!1)}),{handlePointerDown:F}=Kp({nodeId:O,handleId:T,type:N,isValidConnection:p,edgeUpdaterType:N,onEdgeUpdate:z,onEdgeUpdateEnd:ae});return()=>{const v=u(b.value.source),M=u(b.value.target),D="pathOptions"in b.value?b.value.pathOptions:{};if(!v&&!M)return a.error(new ct(tt.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!v)return a.error(new ct(tt.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!M)return a.error(new ct(tt.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||v.hidden||M.hidden)return null;let ie;r.value===xn.Strict?ie=v.handleBounds.source:ie=[...v.handleBounds.source||[],...v.handleBounds.target||[]];const X=Ap(ie,b.value.sourceHandle);let ne;r.value===xn.Strict?ne=M.handleBounds.target:ne=[...M.handleBounds.target||[],...M.handleBounds.source||[]];const Q=Ap(ne,b.value.targetHandle),Z=(X==null?void 0:X.position)||xe.Bottom,ue=(Q==null?void 0:Q.position)||xe.Top,{x:$,y:oe}=$o(v,X,Z),{x:le,y:pe}=$o(M,Q,ue);return b.value.sourceX=$,b.value.sourceY=oe,b.value.targetX=le,b.value.targetY=pe,t.h("g",{ref:L,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${K.value===!1?"default":b.value.type||"default"}`,s.value,q.value,{updating:A.value,selected:b.value.selected,animated:b.value.animated,inactive:!x.value&&!w.value.edgeClick.hasListeners()}],tabIndex:P.value?0:void 0,"aria-label":b.value.ariaLabel===null?void 0:b.value.ariaLabel??`Edge from ${b.value.source} to ${b.value.target}`,"aria-describedby":P.value?`${ip}-${n}`:void 0,"aria-roledescription":"edge",role:P.value?"group":"img",...b.value.domAttributes,onClick:H,onContextmenu:ee,onDblclick:_e,onMouseenter:be,onMousemove:re,onMouseleave:J,onKeyDown:P.value?V:void 0},[R.value?null:t.h(K.value===!1?c.value.default:K.value,{id:e.id,sourceNode:v,targetNode:M,source:b.value.source,target:b.value.target,type:b.value.type,updatable:B.value,selected:b.value.selected,animated:b.value.animated,label:b.value.label,labelStyle:b.value.labelStyle,labelShowBg:b.value.labelShowBg,labelBgStyle:b.value.labelBgStyle,labelBgPadding:b.value.labelBgPadding,labelBgBorderRadius:b.value.labelBgBorderRadius,data:b.value.data,events:{...b.value.events,...E},style:G.value,markerStart:`url('#${Sr(b.value.markerStart,n)}')`,markerEnd:`url('#${Sr(b.value.markerEnd,n)}')`,sourcePosition:Z,targetPosition:ue,sourceX:$,sourceY:oe,targetX:le,targetY:pe,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...D}),[B.value==="source"||B.value===!0?[t.h("g",{onMousedown:te,onMouseenter:I,onMouseout:j},t.h(tm,{position:Z,centerX:$,centerY:oe,radius:i.value,type:"source","data-type":"source"}))]:null,B.value==="target"||B.value===!0?[t.h("g",{onMousedown:se,onMouseenter:I,onMouseout:j},t.h(tm,{position:ue,centerX:le,centerY:pe,radius:i.value,type:"target","data-type":"target"}))]:null]])};function I(){A.value=!0}function j(){A.value=!1}function z(v,M){k.update({event:v,edge:b.value,connection:M})}function ae(v){k.updateEnd({event:v,edge:b.value}),R.value=!1}function U(v,M){v.button===0&&(R.value=!0,O.value=M?b.value.target:b.value.source,T.value=(M?b.value.targetHandle:b.value.sourceHandle)??null,N.value=M?"target":"source",k.updateStart({event:v,edge:b.value}),F(v))}function H(v){var M;const D={event:v,edge:b.value};x.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(M=L.value)==null||M.blur()):o([b.value])),k.click(D)}function ee(v){k.contextMenu({event:v,edge:b.value})}function _e(v){k.doubleClick({event:v,edge:b.value})}function be(v){k.mouseEnter({event:v,edge:b.value})}function re(v){k.mouseMove({event:v,edge:b.value})}function J(v){k.mouseLeave({event:v,edge:b.value})}function te(v){U(v,!0)}function se(v){U(v,!1)}function V(v){var M;!g.value&&ap.includes(v.key)&&x.value&&(v.key==="Escape"?((M=L.value)==null||M.blur(),d([f(e.id)])):o([f(e.id)]))}}}),KP=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Fe(),p=(e=t.inject(zi))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return u((w=r.value)==null?void 0:w.nodeId)}),g=t.computed(()=>{var w;return u((w=i.value)==null?void 0:w.nodeId)??null}),y=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),h=t.computed(()=>c.value.markerStart?`url(#${Sr(c.value.markerStart,n)})`:""),_=t.computed(()=>c.value.markerEnd?`url(#${Sr(c.value.markerEnd,n)})`:"");return()=>{var w,b,k;if(!m.value||!r.value)return null;const E=r.value.id,C=r.value.type,S=m.value.handleBounds;let A=(S==null?void 0:S[C])??[];if(o.value===xn.Loose){const G=(S==null?void 0:S[C==="source"?"target":"source"])??[];A=[...A,...G]}if(!A)return null;const R=(E?A.find(G=>G.id===E):A[0])??null,O=(R==null?void 0:R.position)??xe.Top,{x:T,y:N}=$o(m.value,R,O);let L=null;g.value&&(o.value===xn.Strict?L=((w=g.value.handleBounds[C==="source"?"target":"source"])==null?void 0:w.find(G=>{var K;return G.id===((K=i.value)==null?void 0:K.id)}))||null:L=((b=[...g.value.handleBounds.source??[],...g.value.handleBounds.target??[]])==null?void 0:b.find(G=>{var K;return G.id===((K=i.value)==null?void 0:K.id)}))||null);const x=((k=i.value)==null?void 0:k.position)??(O?ds[O]:null);if(!O||!x)return null;const B=l.value??c.value.type??to.Bezier;let P="";const q={sourceX:T,sourceY:N,sourcePosition:O,targetX:y.value.x,targetY:y.value.y,targetPosition:x};return B===to.Bezier?[P]=Wp(q):B===to.Step?[P]=gs({...q,borderRadius:0}):B===to.SmoothStep?[P]=gs(q):B===to.SimpleBezier?[P]=Zp(q):P=`M${T},${N} ${y.value.x},${y.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:T,sourceY:N,sourcePosition:O,targetX:y.value.x,targetY:y.value.y,targetPosition:x,sourceNode:m.value,sourceHandle:R,targetNode:g.value,targetHandle:L,markerEnd:_.value,markerStart:h.value,connectionStatus:d.value}):t.h("path",{d:P,class:[c.value.class,d.value,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":_.value,"marker-start":h.value})))}}}),jP=["id","markerWidth","markerHeight","markerUnits","orient"],GP={name:"MarkerType",compatConfig:{MODE:3}},qP=t.defineComponent({...GP,props:{id:{},type:{},color:{default:"none"},width:{default:12.5},height:{default:12.5},markerUnits:{default:"strokeWidth"},orient:{default:"auto-start-reverse"},strokeWidth:{default:1}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("marker",{id:n.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${n.width}`,markerHeight:`${n.height}`,markerUnits:n.markerUnits,orient:n.orient},[n.type===t.unref(wr).ArrowClosed?(t.openBlock(),t.createElementBlock("polyline",{key:0,style:t.normalizeStyle({stroke:n.color,fill:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):t.createCommentVNode("",!0),n.type===t.unref(wr).Arrow?(t.openBlock(),t.createElementBlock("polyline",{key:1,style:t.normalizeStyle({stroke:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):t.createCommentVNode("",!0)],8,jP))}}),zP={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},HP={name:"MarkerDefinitions",compatConfig:{MODE:3}},YP=t.defineComponent({...HP,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Fe(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=Sr(d,n);l.has(f)||(typeof d=="object"?s.push({...d,id:f,color:d.color||i.value}):s.push({id:f,color:i.value,type:d}),l.add(f))}};for(const d of[r.value.markerEnd,r.value.markerStart])c(d);for(const d of o.value)for(const f of[d.markerStart,d.markerEnd])c(f);return s.sort((d,f)=>d.id.localeCompare(f.id))});return(l,s)=>(t.openBlock(),t.createElementBlock("svg",zP,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(qP,{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))])]))}}),WP={name:"Edges",compatConfig:{MODE:3}},XP=t.defineComponent({...WP,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Fe();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(YP),(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(kI)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(UP),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(KP))],64))}}),ZP=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:g,ariaLiveMessage:y,snapToGrid:h,snapGrid:_,nodeDragThreshold:w,nodesDraggable:b,elementsSelectable:k,nodesConnectable:E,nodesFocusable:C,hooks:S}=Fe(),A=t.ref(null);t.provide(Fp,A),t.provide(Lp,e.id);const R=t.inject(zi),O=t.getCurrentInstance(),T=Gp(),{node:N,parentNode:L}=jp(e.id),{emit:x,on:B}=FI(N,l),P=t.toRef(()=>typeof N.draggable>"u"?b.value:N.draggable),q=t.toRef(()=>typeof N.selectable>"u"?k.value:N.selectable),G=t.toRef(()=>typeof N.connectable>"u"?E.value:N.connectable),K=t.toRef(()=>typeof N.focusable>"u"?C.value:N.focusable),F=t.computed(()=>q.value||P.value||S.value.nodeClick.hasListeners()||S.value.nodeDoubleClick.hasListeners()||S.value.nodeMouseEnter.hasListeners()||S.value.nodeMouseMove.hasListeners()||S.value.nodeMouseLeave.hasListeners()),I=t.toRef(()=>!!N.dimensions.width&&!!N.dimensions.height),j=t.computed(()=>{const M=N.type||"default",D=R==null?void 0:R[`node-${M}`];if(D)return D;let ie=N.template||u.value[M];if(typeof ie=="string"&&O){const X=Object.keys(O.appContext.components);X&&X.includes(M)&&(ie=t.resolveComponent(M,!1))}return ie&&typeof ie!="string"?ie:(l.error(new ct(tt.NODE_TYPE_MISSING,ie)),!1)}),z=Up({id:e.id,el:A,disabled:()=>!P.value,selectable:q,dragHandle:()=>N.dragHandle,onStart(M){x.dragStart(M)},onDrag(M){x.drag(M)},onStop(M){x.dragStop(M)},onClick(M){V(M)}}),ae=t.computed(()=>N.class instanceof Function?N.class(N):N.class),U=t.computed(()=>{const M=(N.style instanceof Function?N.style(N):N.style)||{},D=N.width instanceof Function?N.width(N):N.width,ie=N.height instanceof Function?N.height(N):N.height;return!M.width&&D&&(M.width=typeof D=="string"?D:`${D}px`),!M.height&&ie&&(M.height=typeof ie=="string"?ie:`${ie}px`),M}),H=t.toRef(()=>Number(N.zIndex??U.value.zIndex??0));return f(M=>{(M.includes(e.id)||!M.length)&&_e()}),t.onMounted(()=>{t.watch(()=>N.hidden,(M=!1,D,ie)=>{!M&&A.value&&(e.resizeObserver.observe(A.value),ie(()=>{A.value&&e.resizeObserver.unobserve(A.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>N.type,()=>N.sourcePosition,()=>N.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:A.value,forceUpdate:!0}])})}),t.watch([()=>N.position.x,()=>N.position.y,()=>{var M;return(M=L.value)==null?void 0:M.computedPosition.x},()=>{var M;return(M=L.value)==null?void 0:M.computedPosition.y},()=>{var M;return(M=L.value)==null?void 0:M.computedPosition.z},H,()=>N.selected,()=>N.dimensions.height,()=>N.dimensions.width,()=>{var M;return(M=L.value)==null?void 0:M.dimensions.height},()=>{var M;return(M=L.value)==null?void 0:M.dimensions.width}],([M,D,ie,X,ne,Q])=>{const Z={x:M,y:D,z:Q+(m.value&&N.selected?1e3:0)};typeof ie<"u"&&typeof X<"u"?N.computedPosition=gI({x:ie,y:X,z:ne},Z):N.computedPosition=Z},{flush:"post",immediate:!0}),t.watch([()=>N.extent,p],([M,D],[ie,X])=>{(M!==ie||D!==X)&&ee()}),N.extent==="parent"||typeof N.extent=="object"&&"range"in N.extent&&N.extent.range==="parent"?Rl(()=>I).toBe(!0).then(ee):ee(),()=>N.hidden?null:t.h("div",{ref:A,"data-id":N.id,class:["vue-flow__node",`vue-flow__node-${j.value===!1?"default":N.type||"default"}`,{[o.value]:P.value,dragging:z==null?void 0:z.value,draggable:P.value,selected:N.selected,selectable:q.value,parent:N.isParent},ae.value],style:{visibility:I.value?"visible":"hidden",zIndex:N.computedPosition.z??H.value,transform:`translate(${N.computedPosition.x}px,${N.computedPosition.y}px)`,pointerEvents:F.value?"all":"none",...U.value},tabIndex:K.value?0:void 0,role:K.value?"group":void 0,"aria-describedby":g.value?void 0:`${rp}-${n}`,"aria-label":N.ariaLabel,"aria-roledescription":"node",...N.domAttributes,onMouseenter:be,onMousemove:re,onMouseleave:J,onContextmenu:te,onClick:V,onDblclick:se,onKeydown:v},[t.h(j.value===!1?u.value.default:j.value,{id:N.id,type:N.type,data:N.data,events:{...N.events,...B},selected:N.selected,resizing:N.resizing,dragging:z.value,connectable:G.value,position:N.computedPosition,dimensions:N.dimensions,isValidTargetPos:N.isValidTargetPos,isValidSourcePos:N.isValidSourcePos,parent:N.parentNode,parentNodeId:N.parentNode,zIndex:N.computedPosition.z??H.value,targetPosition:N.targetPosition,sourcePosition:N.sourcePosition,label:N.label,dragHandle:N.dragHandle,onUpdateNodeInternals:_e})]);function ee(){const M=N.computedPosition,{computedPosition:D,position:ie}=ls(N,h.value?qi(M,_.value):M,l.error,p.value,L.value);(N.computedPosition.x!==D.x||N.computedPosition.y!==D.y)&&(N.computedPosition={...N.computedPosition,...D}),(N.position.x!==ie.x||N.position.y!==ie.y)&&(N.position=ie)}function _e(){A.value&&d([{id:e.id,nodeElement:A.value,forceUpdate:!0}])}function be(M){z!=null&&z.value||x.mouseEnter({event:M,node:N})}function re(M){z!=null&&z.value||x.mouseMove({event:M,node:N})}function J(M){z!=null&&z.value||x.mouseLeave({event:M,node:N})}function te(M){return x.contextMenu({event:M,node:N})}function se(M){return x.doubleClick({event:M,node:N})}function V(M){q.value&&(!r.value||!P.value||w.value>0)&&us(N,a.value,c,s,i,!1,A.value),x.click({event:M,node:N})}function v(M){if(!(rs(M)||g.value))if(ap.includes(M.key)&&q.value){const D=M.key==="Escape";us(N,a.value,c,s,i,D,A.value)}else P.value&&N.selected&&To[M.key]&&(M.preventDefault(),y.value=`Moved selected node ${M.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~N.position.x}, y: ${~~N.position.y}`,T({x:To[M.key].x,y:To[M.key].y},M.shiftKey))}}});function JP(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 QP={class:"vue-flow__nodes vue-flow__container"},eT={name:"Nodes",compatConfig:{MODE:3}},tT=t.defineComponent({...eT,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Fe(),i=JP(),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",QP,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,d,f,u)=>{const p=[c.id];if(u&&u.key===c.id&&t.isMemoSame(u,p))return u;const m=(t.openBlock(),t.createBlock(t.unref(ZP),{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 nT(){const{emits:e}=Fe();t.onMounted(()=>{if($p()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new ct(tt.MISSING_STYLES))}})}const oT=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),rT={name:"VueFlow",compatConfig:{MODE:3}},nm=t.defineComponent({...rT,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),d=GI({modelValue:a,nodes:l,edges:s},r,c);return zI(o,c.hooks),MP(),nT(),t.provide(zi,i),t.onUnmounted(d),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(OP,null,{default:t.withCtx(()=>[t.createVNode(XP),oT,t.createVNode(tT),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(DP)],512))}}),iT={name:"Panel",compatConfig:{MODE:3}},aT=t.defineComponent({...iT,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 pn=(e=>(e.Lines="lines",e.Dots="dots",e))(pn||{});const om=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]}`})},rm=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};pn.Lines+"",pn.Dots+"";const lT={[pn.Dots]:"#81818a",[pn.Lines]:"#eee"},sT=["id","x","y","width","height","patternTransform"],cT={key:2,height:"100",width:"100"},dT=["fill"],uT=["x","y","fill"],fT={name:"Background",compatConfig:{MODE:3}},pT=t.defineComponent({...fT,props:{id:{},variant:{default:()=>pn.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],d=[s*l||1,c*l||1],f=e.size*l,[u,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[u*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||lT[e.variant||pn.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(pn).Lines?(t.openBlock(),t.createBlock(t.unref(om),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(pn).Dots?(t.openBlock(),t.createBlock(t.unref(rm),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",cT,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,dT)])):t.createCommentVNode("",!0)])],8,sT)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,uT),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),mT={name:"ControlButton",compatConfig:{MODE:3}},gT=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},hT={type:"button",class:"vue-flow__controls-button"};function yT(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",hT,[t.renderSlot(e.$slots,"default")])}const Ar=gT(mT,[["render",yT]]),_T={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},bT=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function wT(e,n){return t.openBlock(),t.createElementBlock("svg",_T,bT)}const kT={render:wT},CT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},ET=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function NT(e,n){return t.openBlock(),t.createElementBlock("svg",CT,ET)}const xT={render:NT},ST={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},vT=[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 AT(e,n){return t.openBlock(),t.createElementBlock("svg",ST,vT)}const IT={render:AT},PT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},TT=[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 OT(e,n){return t.openBlock(),t.createElementBlock("svg",PT,TT)}const $T={render:OT},BT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},VT=[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 RT(e,n){return t.openBlock(),t.createElementBlock("svg",BT,VT)}const DT={render:RT},MT={name:"Controls",compatConfig:{MODE:3}},LT=t.defineComponent({...MT,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>np.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Fe(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),g=t.toRef(()=>d.value.zoom>=u.value);function y(){l(),n("zoomIn")}function h(){s(),n("zoomOut")}function _(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(b,k)=>(t.openBlock(),t.createBlock(t.unref(aT),{class:"vue-flow__controls",position:b.position},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"top"),b.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(b.$slots,"control-zoom-in",{},()=>[t.createVNode(Ar,{class:"vue-flow__controls-zoomin",disabled:g.value,onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(kT))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(Ar,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:h},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(xT))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(Ar,{class:"vue-flow__controls-fitview",onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(IT))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(Ar,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(b.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(DT))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref($T))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),FT=["undo","redo","duplicate","cut","copy","paste"],im=()=>{};function UT(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function KT(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 jT=Ye.createSharedComposable(()=>{const e=new Set;Ye.useEventListener("keydown",o=>{if(UT(o.target))return;const r=KT(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(!FT.some(i=>typeof o[i]=="function"))return im;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function am(e={}){if(typeof window>"u")return im;const n=jT().subscribe(e);return t.onScopeDispose(n),n}const lm=44,GT=220,sm=366,qT=1e3,zT=lm+parseFloat(Yu),ea=1,HT=0,YT=1,WT=2,XT=3,Bo=parseInt(F1,10),Ir="application/x-datakit+json",ta={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"]},Pn={padding:80,gaps:{nodes:60,edges:80,ranks:60}},ZT=1600,JT=1.2,QT=0,eO=200,cm=Symbol("confirm-modal"),Vo="{key}",io={"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}},na=Object.keys(io).filter(e=>e.includes(Vo)).map(e=>e.replace(Vo,""));function ys(e){if(!e||!Tr(e))return;const n=na.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Vo,"")}function Pr(e){if(!e)return null;const n=na.find(o=>e.startsWith(o));return n||e}function Tr(e){return e?na.some(n=>e.startsWith(n)):!1}function dm(e){return e?Tr(e)?Pr(e)+Vo:e:null}function _s(e){var o;if(!e)return!1;const n=dm(e);return n?((o=io[n])==null?void 0:o.readable)??!1:!1}function bs(e){var o;if(!e)return!1;const n=dm(e);return n?((o=io[n])==null?void 0:o.writable)??!1:!1}function oa(e,n,o){const r=n?Nn(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Or(e,n){const o=n(e.source),r=n(e.target);return[oa(o,e.sourceField,"output"),oa(r,e.targetField,"input")]}function ws(e,n,o,r,i){const a=i(e),l=i(o);return[oa(a,n,"output"),oa(l,r,"input")]}function um(e){if(e.length===0)throw new Error("getBoundingRect requires at least one rect");let n=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;for(const{x:a,y:l,width:s,height:c}of e){if(![a,l,s,c].every(Number.isFinite))throw new Error("Rect values must be finite numbers");if(s<0||c<0)throw new RangeError("Rect width and height must be non-negative");const d=a+s,f=l+c;if(!Number.isFinite(d)||!Number.isFinite(f))throw new RangeError("Rect boundaries must be finite numbers");a<n&&(n=a),l<o&&(o=l),d>r&&(r=d),f>i&&(i=f)}return{x:n,y:o,width:r-n,height:i-o}}function tO(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var nO="\0",ao="\0",fm="";let oO=class{constructor(n){lt(this,"_isDirected",!0);lt(this,"_isMultigraph",!1);lt(this,"_isCompound",!1);lt(this,"_label");lt(this,"_defaultNodeLabelFn",()=>{});lt(this,"_defaultEdgeLabelFn",()=>{});lt(this,"_nodes",{});lt(this,"_in",{});lt(this,"_preds",{});lt(this,"_out",{});lt(this,"_sucs",{});lt(this,"_edgeObjs",{});lt(this,"_edgeLabels",{});lt(this,"_nodeCount",0);lt(this,"_edgeCount",0);lt(this,"_parent");lt(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[ao]={})}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]=ao,this._children[n]={},this._children[ao][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=ao;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!==ao)return o}}children(n=ao){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===ao)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=rO(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,pm(this._preds[o],n),pm(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?ks(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?ks(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?ks(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],mm(this._preds[o],n),mm(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 pm(e,n){e[n]?e[n]++:e[n]=1}function mm(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+fm+a+fm+(r===void 0?nO:r)}function rO(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 ks(e,n){return $r(e,n.v,n.w,n.name)}var Cs=oO,iO="2.2.4",aO={Graph:Cs,version:iO},lO=Cs,sO={write:cO,read:fO};function cO(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:dO(e),edges:uO(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function dO(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 uO(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 fO(e){var n=new lO(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 pO=mO;function mO(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 gm=class{constructor(){lt(this,"_arr",[]);lt(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}},gO=gm,hm=yO,hO=()=>1;function yO(e,n,o,r){return _O(e,String(n),o||hO,r||function(i){return e.outEdges(i)})}function _O(e,n,o,r){var i={},a=new gO,l,s,c=function(d){var f=d.v!==l?d.v:d.w,u=i[f],p=o(d),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+d+" Weight: "+p);m<u.distance&&(u.distance=m,u.predecessor=l,a.decrease(f,m))};for(e.nodes().forEach(function(d){var f=d===n?0:Number.POSITIVE_INFINITY;i[d]={distance:f},a.add(d,f)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var bO=hm,wO=kO;function kO(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=bO(e,i,n,o),r},{})}var ym=CO;function CO(e){var n=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:n,index:n++};if(o.push(l),e.successors(l).forEach(function(f){Object.hasOwn(r,f)?r[f].onStack&&(s.lowlink=Math.min(s.lowlink,r[f].index)):(a(f),s.lowlink=Math.min(s.lowlink,r[f].lowlink))}),s.lowlink===s.index){var c=[],d;do d=o.pop(),r[d].onStack=!1,c.push(d);while(l!==d);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var EO=ym,NO=xO;function xO(e){return EO(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var SO=AO,vO=()=>1;function AO(e,n,o){return IO(e,n||vO,o||function(r){return e.outEdges(r)})}function IO(e,n,o){var r={},i=e.nodes();return i.forEach(function(a){r[a]={},r[a][a]={distance:0},i.forEach(function(l){a!==l&&(r[a][l]={distance:Number.POSITIVE_INFINITY})}),o(a).forEach(function(l){var s=l.v===a?l.w:l.v,c=n(l);r[a][s]={distance:c,predecessor:a}})}),i.forEach(function(a){var l=r[a];i.forEach(function(s){var c=r[s];i.forEach(function(d){var f=c[a],u=l[d],p=c[d],m=f.distance+u.distance;m<p.distance&&(p.distance=m,p.predecessor=u.predecessor)})})}),r}function _m(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new Es;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 Es;return r}class Es extends Error{constructor(){super(...arguments)}}var bm=_m;_m.CycleException=Es;var wm=bm,PO=TO;function TO(e){try{wm(e)}catch(n){if(n instanceof wm.CycleException)return!1;throw n}return!0}var km=OO;function OO(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?$O:BO,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 $O(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]),Cm(n(a[0]),l=>i.push([l,!1])))}}function BO(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),Cm(n(a),l=>i.push(l)))}}function Cm(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var VO=km,RO=DO;function DO(e,n){return VO(e,n,"post")}var MO=km,LO=FO;function FO(e,n){return MO(e,n,"pre")}var UO=Cs,KO=gm,jO=GO;function GO(e,n){var o=new UO,r={},i=new KO,a;function l(c){var d=c.v===a?c.w:c.v,f=i.priority(d);if(f!==void 0){var u=n(c);u<f&&(r[d]=a,i.decrease(d,u))}}if(e.nodeCount()===0)return o;e.nodes().forEach(function(c){i.add(c,Number.POSITIVE_INFINITY),o.setNode(c)}),i.decrease(e.nodes()[0],0);for(var s=!1;i.size()>0;){if(a=i.removeMin(),Object.hasOwn(r,a))o.setEdge(a,r[a]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(a).forEach(l)}return o}var qO={components:pO,dijkstra:hm,dijkstraAll:wO,findCycles:NO,floydWarshall:SO,isAcyclic:PO,postorder:RO,preorder:LO,prim:jO,tarjan:ym,topsort:bm},Em=aO,Ut={Graph:Em.Graph,json:sO,alg:qO,version:Em.version};let zO=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return Nm(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&Nm(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,HO)),r=r._prev;return"["+n.join(", ")+"]"}};function Nm(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function HO(e,n){if(e!=="_next"&&e!=="_prev")return n}var YO=zO;let WO=Ut.Graph,XO=YO;var ZO=QO;let JO=()=>1;function QO(e,n){if(e.nodeCount()<=1)return[];let o=t$(e,n||JO);return e$(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function e$(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)Ns(e,n,o,l);for(;l=i.dequeue();)Ns(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(Ns(e,n,o,l,!0));break}}}return r}function Ns(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,xs(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,xs(n,o,d)}),e.removeNode(r.v),a}function t$(e,n){let o=new WO,r=0,i=0;e.nodes().forEach(s=>{o.setNode(s,{v:s,in:0,out:0})}),e.edges().forEach(s=>{let c=o.edge(s.v,s.w)||0,d=n(s),f=c+d;o.setEdge(s.v,s.w,f),i=Math.max(i,o.node(s.v).out+=d),r=Math.max(r,o.node(s.w).in+=d)});let a=n$(i+r+3).map(()=>new XO),l=r+1;return o.nodes().forEach(s=>{xs(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function xs(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 n$(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let xm=Ut.Graph;var ot={addBorderNode:u$,addDummyNode:Sm,applyWithChunking:ra,asNonCompoundGraph:r$,buildLayerMatrix:s$,intersectRect:l$,mapValues:_$,maxRank:Am,normalizeRanks:c$,notime:g$,partition:p$,pick:y$,predecessorWeights:a$,range:Pm,removeEmptyRanks:d$,simplify:o$,successorWeights:i$,time:m$,uniqueId:Im,zipObject:Ss};function Sm(e,n,o,r){for(var i=r;e.hasNode(i);)i=Im(r);return o.dummy=n,e.setNode(i,o),i}function o$(e){let n=new xm().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 r$(e){let n=new xm({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 i$(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 Ss(e.nodes(),n)}function a$(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 Ss(e.nodes(),n)}function l$(e,n){let o=e.x,r=e.y,i=n.x-o,a=n.y-r,l=e.width/2,s=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");let c,d;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,d=s):(i<0&&(l=-l),c=l,d=l*a/i),{x:o+c,y:r+d}}function s$(e){let n=Pm(Am(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 c$(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=ra(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function d$(e){let n=e.nodes().map(l=>e.node(l).rank),o=ra(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 u$(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),Sm(e,"border",i,n)}function f$(e,n=vm){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const vm=65535;function ra(e,n){if(n.length>vm){const o=f$(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function Am(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return ra(Math.max,o)}function p$(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function m$(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function g$(e,n){return n()}let h$=0;function Im(e){var n=++h$;return e+(""+n)}function Pm(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 y$(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function _$(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 Ss(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let b$=ZO,w$=ot.uniqueId;var k$={run:C$,undo:N$};function C$(e){(e.graph().acyclicer==="greedy"?b$(e,o(e)):E$(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,w$("rev"))});function o(r){return i=>r.edge(i).weight}}function E$(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 N$(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 x$=ot;var S$={run:v$,undo:I$};function v$(e){e.graph().dummyChains=[],e.edges().forEach(n=>A$(e,n))}function A$(e,n){let o=n.v,r=e.node(o).rank,i=n.w,a=e.node(i).rank,l=n.name,s=e.edge(n),c=s.labelRank;if(a===r+1)return;e.removeEdge(n);let d,f,u;for(u=0,++r;r<a;++u,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},d=x$.addDummyNode(e,"edge",f,"_d"),r===c&&(f.width=s.width,f.height=s.height,f.dummy="edge-label",f.labelpos=s.labelpos),e.setEdge(o,d,{weight:s.weight},l),u===0&&e.graph().dummyChains.push(d),o=d;e.setEdge(o,i,{weight:s.weight},l)}function I$(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:P$}=ot;var ia={longestPath:T$,slack:O$};function T$(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=P$(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function O$(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var $$=Ut.Graph,aa=ia.slack,Tm=B$;function B$(e){var n=new $$({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;V$(n,e)<r;)i=R$(n,e),a=n.hasNode(i.v)?aa(e,i):-aa(e,i),D$(n,e,a);return n}function V$(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!aa(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function R$(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=aa(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function D$(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var M$=Tm,Om=ia.slack,L$=ia.longestPath,F$=Ut.alg.preorder,U$=Ut.alg.postorder,K$=ot.simplify,j$=lo;lo.initLowLimValues=As,lo.initCutValues=vs,lo.calcCutValue=$m,lo.leaveEdge=Vm,lo.enterEdge=Rm,lo.exchangeEdges=Dm;function lo(e){e=K$(e),L$(e);var n=M$(e);As(n),vs(n,e);for(var o,r;o=Vm(n);)r=Rm(n,e,o),Dm(n,e,o,r)}function vs(e,n){var o=U$(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>G$(e,n,r))}function G$(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=$m(e,n,o)}function $m(e,n,o){var r=e.node(o),i=r.parent,a=!0,l=n.edge(o,i),s=0;return l||(a=!1,l=n.edge(i,o)),s=l.weight,n.nodeEdges(o).forEach(c=>{var d=c.v===o,f=d?c.w:c.v;if(f!==i){var u=d===a,p=n.edge(c).weight;if(s+=u?p:-p,z$(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function As(e,n){arguments.length<2&&(n=e.nodes()[0]),Bm(e,{},1,n)}function Bm(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=Bm(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function Vm(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function Rm(e,n,o){var r=o.v,i=o.w;n.hasEdge(r,i)||(r=o.w,i=o.v);var a=e.node(r),l=e.node(i),s=a,c=!1;a.lim>l.lim&&(s=l,c=!0);var d=n.edges().filter(f=>c===Mm(e,e.node(f.v),s)&&c!==Mm(e,e.node(f.w),s));return d.reduce((f,u)=>Om(n,u)<Om(n,f)?u:f)}function Dm(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),As(e),vs(e,n),q$(e,n)}function q$(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=F$(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 z$(e,n,o){return e.hasEdge(n,o)}function Mm(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var H$=ia,Lm=H$.longestPath,Y$=Tm,W$=j$,X$=Z$;function Z$(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":Fm(e);break;case"tight-tree":Q$(e);break;case"longest-path":J$(e);break;case"none":break;default:Fm(e)}}var J$=Lm;function Q$(e){Lm(e),Y$(e)}function Fm(e){W$(e)}var eB=tB;function tB(e){let n=oB(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=nB(e,n,i.v,i.w),l=a.path,s=a.lca,c=0,d=l[c],f=!0;for(;o!==i.w;){if(r=e.node(o),f){for(;(d=l[c])!==s&&e.node(d).maxRank<r.rank;)c++;d===s&&(f=!1)}if(!f){for(;c<l.length-1&&e.node(d=l[c+1]).minRank<=r.rank;)c++;d=l[c]}e.setParent(o,d),o=e.successors(o)[0]}})}function nB(e,n,o,r){let i=[],a=[],l=Math.min(n[o].low,n[r].low),s=Math.max(n[o].lim,n[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function oB(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 la=ot;var rB={run:iB,cleanup:sB};function iB(e){let n=la.addDummyNode(e,"root",{},"_root"),o=aB(e),r=Object.values(o),i=la.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=lB(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=la.addBorderNode(e,"_bt"),d=la.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{Um(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,g=p.borderBottom?p.borderBottom:u,y=p.borderTop?r:2*r,h=m!==g?1:i-a[l]+1;e.setEdge(c,m,{weight:y,minlen:h,nestingEdge:!0}),e.setEdge(g,d,{weight:y,minlen:h,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function aB(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 lB(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function sB(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 cB=ot;var dB=uB;function uB(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)Km(e,"borderLeft","_bl",o,i,a),Km(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function Km(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=cB.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var fB={adjust:pB,undo:mB};function pB(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&jm(e)}function mB(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&gB(e),(n==="lr"||n==="rl")&&(hB(e),jm(e))}function jm(e){e.nodes().forEach(n=>Gm(e.node(n))),e.edges().forEach(n=>Gm(e.edge(n)))}function Gm(e){let n=e.width;e.width=e.height,e.height=n}function gB(e){e.nodes().forEach(n=>Is(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(Is),Object.hasOwn(o,"y")&&Is(o)})}function Is(e){e.y=-e.y}function hB(e){e.nodes().forEach(n=>Ps(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(Ps),Object.hasOwn(o,"x")&&Ps(o)})}function Ps(e){let n=e.x;e.x=e.y,e.y=n}let qm=ot;var yB=_B;function _B(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=qm.applyWithChunking(Math.max,r),a=qm.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[c]=!0;let d=e.node(c);a[d.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,d)=>e.node(c).rank-e.node(d).rank).forEach(l),a}let bB=ot.zipObject;var wB=kB;function kB(e,n){let o=0;for(let r=1;r<n.length;++r)o+=CB(e,n[r-1],n[r]);return o}function CB(e,n,o){let r=bB(o,o.map((d,f)=>f)),i=n.flatMap(d=>e.outEdges(d).map(f=>({pos:r[f.w],weight:e.edge(f).weight})).sort((f,u)=>f.pos-u.pos)),a=1;for(;a<o.length;)a<<=1;let l=2*a-1;a-=1;let s=new Array(l).fill(0),c=0;return i.forEach(d=>{let f=d.pos+a;s[f]+=d.weight;let u=0;for(;f>0;)f%2&&(u+=s[f+1]),f=f-1>>1,s[f]+=d.weight;c+=d.weight*u}),c}var EB=NB;function NB(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 xB=ot;var SB=vB;function vB(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 AB(r)}function AB(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&IB(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=>xB.pick(i,["vs","i","barycenter","weight"]))}function IB(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 PB=ot;var TB=OB;function OB(e,n){let o=PB.partition(e,f=>Object.hasOwn(f,"barycenter")),r=o.lhs,i=o.rhs.sort((f,u)=>u.i-f.i),a=[],l=0,s=0,c=0;r.sort($B(!!n)),c=zm(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=zm(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function zm(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 $B(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let BB=EB,VB=SB,RB=TB;var DB=Hm;function Hm(e,n,o,r){let i=e.children(n),a=e.node(n),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=BB(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Hm(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&LB(p,m)}});let f=VB(d,o);MB(f,c);let u=RB(f,r);if(l&&(u.vs=[l,u.vs,s].flat(!0),e.predecessors(l).length)){let p=e.node(e.predecessors(l)[0]),m=e.node(e.predecessors(s)[0]);Object.hasOwn(u,"barycenter")||(u.barycenter=0,u.weight=0),u.barycenter=(u.barycenter*u.weight+p.order+m.order)/(u.weight+2),u.weight+=2}return u}function MB(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function LB(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 FB=Ut.Graph,UB=ot;var KB=jB;function jB(e,n,o,r){r||(r=e.nodes());let i=GB(e),a=new FB({compound:!0}).setGraph({root:i}).setDefaultNodeLabel(l=>e.node(l));return r.forEach(l=>{let s=e.node(l),c=e.parent(l);(s.rank===n||s.minRank<=n&&n<=s.maxRank)&&(a.setNode(l),a.setParent(l,c||i),e[o](l).forEach(d=>{let f=d.v===l?d.w:d.v,u=a.edge(f,l),p=u!==void 0?u.weight:0;a.setEdge(f,l,{weight:e.edge(d).weight+p})}),Object.hasOwn(s,"minRank")&&a.setNode(l,{borderLeft:s.borderLeft[n],borderRight:s.borderRight[n]}))}),a}function GB(e){for(var n;e.hasNode(n=UB.uniqueId("_root")););return n}var qB=zB;function zB(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 HB=yB,YB=wB,WB=DB,XB=KB,ZB=qB,JB=Ut.Graph,sa=ot;var QB=Ym;function Ym(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,Ym);return}let o=sa.maxRank(e),r=Wm(e,sa.range(1,o+1),"inEdges"),i=Wm(e,sa.range(o-1,-1,-1),"outEdges"),a=HB(e);if(Xm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){eV(c%2?r:i,c%4>=2),a=sa.buildLayerMatrix(e);let f=YB(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Xm(e,s)}function Wm(e,n,o){const r=new Map,i=(a,l)=>{r.has(a)||r.set(a,[]),r.get(a).push(l)};for(const a of e.nodes()){const l=e.node(a);if(typeof l.rank=="number"&&i(l.rank,a),typeof l.minRank=="number"&&typeof l.maxRank=="number")for(let s=l.minRank;s<=l.maxRank;s++)s!==l.rank&&i(s,a)}return n.map(function(a){return XB(e,a,o,r.get(a)||[])})}function eV(e,n){let o=new JB;e.forEach(function(r){let i=r.graph().root,a=WB(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),ZB(r,o,a.vs)})}function Xm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let tV=Ut.Graph,mn=ot;var nV={positionX:pV};function oV(e,n){let o={};function r(i,a){let l=0,s=0,c=i.length,d=a[a.length-1];return a.forEach((f,u)=>{let p=iV(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(g=>{e.predecessors(g).forEach(y=>{let h=e.node(y),_=h.order;(_<l||m<_)&&!(h.dummy&&e.node(g).dummy)&&Zm(o,y,g)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function rV(e,n){let o={};function r(a,l,s,c,d){let f;mn.range(l,s).forEach(u=>{f=a[u],e.node(f).dummy&&e.predecessors(f).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>d)&&Zm(o,p,f)})})}function i(a,l){let s=-1,c,d=0;return l.forEach((f,u)=>{if(e.node(f).dummy==="border"){let p=e.predecessors(f);p.length&&(c=e.node(p[0]).order,r(l,d,u,s,c),d=u,s=c)}r(l,d,l.length,c,a.length)}),l}return n.length&&n.reduce(i),o}function iV(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function Zm(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 aV(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function lV(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),n.forEach(s=>{let c=-1;s.forEach(d=>{let f=r(d);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let u=(f.length-1)/2;for(let p=Math.floor(u),m=Math.ceil(u);p<=m;++p){let g=f[p];a[d]===d&&c<l[g]&&!aV(o,d,g)&&(a[g]=d,a[d]=i[d]=i[g],c=l[g])}}})}),{root:i,align:a}}function sV(e,n,o,r,i){let a={},l=cV(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),g=m.pop(),y={};for(;g;)y[g]?u(g):(y[g]=!0,m.push(g),m=m.concat(p(g))),g=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((g,y)=>Math.min(g,a[y.w]-l.edge(y)),Number.POSITIVE_INFINITY),m=e.node(u);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[u]=Math.max(a[u],p))}return c(d,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(u=>a[u]=a[o[u]]),a}function cV(e,n,o,r){let i=new tV,a=e.graph(),l=mV(a.nodesep,a.edgesep,r);return n.forEach(s=>{let c;s.forEach(d=>{let f=o[d];if(i.setNode(f),c){var u=o[c],p=i.edge(u,f);i.setEdge(u,f,Math.max(l(e,d,c),p||0))}c=d})}),i}function dV(e,n){return Object.values(n).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=gV(e,s)/2;i=Math.max(c+d,i),a=Math.min(c-d,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function uV(e,n){let o=Object.values(n),r=mn.applyWithChunking(Math.min,o),i=mn.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let d=Object.values(c),f=r-mn.applyWithChunking(Math.min,d);l!=="l"&&(f=i-mn.applyWithChunking(Math.max,d)),f&&(e[s]=mn.mapValues(c,u=>u+f))})})}function fV(e,n){return mn.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 pV(e){let n=mn.buildLayerMatrix(e),o=Object.assign(oV(e,n),rV(e,n)),r={},i;["u","d"].forEach(l=>{i=l==="u"?n:Object.values(n).reverse(),["l","r"].forEach(s=>{s==="r"&&(i=i.map(u=>Object.values(u).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),d=lV(e,i,o,c),f=sV(e,i,d.root,d.align,s==="r");s==="r"&&(f=mn.mapValues(f,u=>-u)),r[l+s]=f})});let a=dV(e,r);return uV(r,a),fV(r,e.graph().align)}function mV(e,n,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,d;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":d=-l.width/2;break;case"r":d=l.width/2;break}if(d&&(c+=o?d:-d),d=0,c+=(l.dummy?n:e)/2,c+=(s.dummy?n:e)/2,c+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":d=s.width/2;break;case"r":d=-s.width/2;break}return d&&(c+=o?d:-d),d=0,c}}function gV(e,n){return e.node(n).width}let Jm=ot,hV=nV.positionX;var yV=_V;function _V(e){e=Jm.asNonCompoundGraph(e),bV(e),Object.entries(hV(e)).forEach(([n,o])=>e.node(n).x=o)}function bV(e){let n=Jm.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 Qm=k$,eg=S$,wV=X$,kV=ot.normalizeRanks,CV=eB,EV=ot.removeEmptyRanks,tg=rB,NV=dB,ng=fB,xV=QB,SV=yV,Bt=ot,vV=Ut.Graph;var AV=IV;function IV(e,n){let o=n&&n.debugTiming?Bt.time:Bt.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>LV(e));o(" runLayout",()=>PV(r,o,n)),o(" updateInputGraph",()=>TV(e,r))})}function PV(e,n,o){n(" makeSpaceForEdgeLabels",()=>FV(e)),n(" removeSelfEdges",()=>WV(e)),n(" acyclic",()=>Qm.run(e)),n(" nestingGraph.run",()=>tg.run(e)),n(" rank",()=>wV(Bt.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>UV(e)),n(" removeEmptyRanks",()=>EV(e)),n(" nestingGraph.cleanup",()=>tg.cleanup(e)),n(" normalizeRanks",()=>kV(e)),n(" assignRankMinMax",()=>KV(e)),n(" removeEdgeLabelProxies",()=>jV(e)),n(" normalize.run",()=>eg.run(e)),n(" parentDummyChains",()=>CV(e)),n(" addBorderSegments",()=>NV(e)),n(" order",()=>xV(e,o)),n(" insertSelfEdges",()=>XV(e)),n(" adjustCoordinateSystem",()=>ng.adjust(e)),n(" position",()=>SV(e)),n(" positionSelfEdges",()=>ZV(e)),n(" removeBorderNodes",()=>YV(e)),n(" normalize.undo",()=>eg.undo(e)),n(" fixupEdgeLabelCoords",()=>zV(e)),n(" undoCoordinateSystem",()=>ng.undo(e)),n(" translateGraph",()=>GV(e)),n(" assignNodeIntersects",()=>qV(e)),n(" reversePoints",()=>HV(e)),n(" acyclic.undo",()=>Qm.undo(e))}function TV(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 OV=["nodesep","edgesep","ranksep","marginx","marginy"],$V={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},BV=["acyclicer","ranker","rankdir","align"],VV=["width","height","rank"],og={width:0,height:0},RV=["minlen","weight","width","height","labeloffset"],DV={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},MV=["labelpos"];function LV(e){let n=new vV({multigraph:!0,compound:!0}),o=Os(e.graph());return n.setGraph(Object.assign({},$V,Ts(o,OV),Bt.pick(o,BV))),e.nodes().forEach(r=>{let i=Os(e.node(r));const a=Ts(i,VV);Object.keys(og).forEach(l=>{a[l]===void 0&&(a[l]=og[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=Os(e.edge(r));n.setEdge(r,Object.assign({},DV,Ts(i,RV),Bt.pick(i,MV)))}),n}function FV(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 UV(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};Bt.addDummyNode(e,"edge-proxy",a,"_ep")}})}function KV(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 jV(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 GV(e){let n=Number.POSITIVE_INFINITY,o=0,r=Number.POSITIVE_INFINITY,i=0,a=e.graph(),l=a.marginx||0,s=a.marginy||0;function c(d){let f=d.x,u=d.y,p=d.width,m=d.height;n=Math.min(n,f-p/2),o=Math.max(o,f+p/2),r=Math.min(r,u-m/2),i=Math.max(i,u+m/2)}e.nodes().forEach(d=>c(e.node(d))),e.edges().forEach(d=>{let f=e.edge(d);Object.hasOwn(f,"x")&&c(f)}),n-=l,r-=s,e.nodes().forEach(d=>{let f=e.node(d);f.x-=n,f.y-=r}),e.edges().forEach(d=>{let f=e.edge(d);f.points.forEach(u=>{u.x-=n,u.y-=r}),Object.hasOwn(f,"x")&&(f.x-=n),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-n+l,a.height=i-r+s}function qV(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(Bt.intersectRect(r,a)),o.points.push(Bt.intersectRect(i,l))})}function zV(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 HV(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function YV(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 WV(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 XV(e){var n=Bt.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=>{Bt.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 ZV(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 Ts(e,n){return Bt.mapValues(Bt.pick(e,n),Number)}function Os(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let JV=ot,QV=Ut.Graph;var eR={debugOrdering:tR};function tR(e){let n=JV.buildLayerMatrix(e),o=new QV({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 nR="1.1.8",oR={graphlib:Ut,layout:AV,debug:eR,util:{time:ot.time,notime:ot.notime},version:nR};const rg=tO(oR);function rR(e){const{branchLayout:n,phase:o,layoutOptions:r,nodes:i,edges:a}=e,{findNode:l}=Fe(),{state:s,branchGroups:c,getNodeById:d,moveNode:f,commit:u}=We(),{getNodeDepth:p,isGroupId:m,groupsByOwner:g}=c,{isBranchEdgeId:y,updateGroupLayout:h,translateGroupTree:_,waitForLayoutFlush:w}=n,{viewport:b,padding:k=Pn.padding,gaps:E=Pn.gaps}=r,{nodes:C=Pn.gaps.nodes,edges:S=Pn.gaps.edges,ranks:A=Pn.gaps.ranks}=E;async function R(N=!0){const L=new Map(i.value.map(U=>[U.id,U.data])),x=new Map,B=new Map,P=U=>{if(!U)return;let H=B.get(U);return H||(H=l(U),H&&B.set(U,H),H)},q=new Map,G=U=>{let H=q.get(U);return H!==void 0||(H=p(U),q.set(U,H)),H},K=U=>{if(!ar(U.data))return U.parentNode;const H=P(U.data.ownerId);if(!H)throw new Error(`Cannot find owner node '${U.data.ownerId}' for group node '${U.id}' via findNode`);return H.parentNode};for(const U of a.value){if(y(U.id))continue;const H=U.source,ee=U.target;if(m(H)||m(ee))continue;const _e=P(H),be=P(ee);if(_e){if(!be)throw new Error(`Cannot find target node '${ee}' for edge '${U.id}' via findNode`)}else throw new Error(`Cannot find source node '${H}' for edge '${U.id}' via findNode`);if(K(_e)===K(be))continue;let re=_e,J=be,te=G(re.id),se=G(J.id);for(;te!==se;)if(te>se){const V=K(re);if(!V)throw new Error(`Expected node '${re.id}' to have parent, but it does not`);const v=P(V);if(!v)throw new Error(`Cannot find parent node '${V}' for node '${re.id}' via findNode`);re=v,te--}else if(se>te){const V=K(J);if(!V)throw new Error(`Expected node '${J.id}' to have parent, but it does not`);const v=P(V);if(!v)throw new Error(`Cannot find parent node '${V}' for node '${J.id}' via findNode`);J=v,se--}for(;te>=0;){const V=K(re),v=K(J);if(V===v){x.has(te)||x.set(te,[]),x.get(te).push({v:re.id,w:J.id});break}if(V){if(!v){const ie=`Expected node '${J.id}' to have parent, but it does not`;throw console.error(ie,J),new Error(ie)}}else{const ie=`Expected node '${re.id}' to have parent, but it does not`;throw console.error(ie,re),new Error(ie)}const M=P(V),D=P(v);if(M){if(!D)throw new Error(`Cannot find parent node '${v}' for node '${J.id}' via findNode`)}else throw new Error(`Cannot find parent node '${V}' for node '${re.id}' via findNode`);re=M,J=D,te--,se--}}const F=s.value.groups.toSorted((U,H)=>G(H.ownerId)-G(U.ownerId));for(const U of F)O(U.memberIds.reduce((H,ee)=>{const _e=d(ee);if(!_e)return console.warn(`Cannot find node '${ee}' of group '${U.id}' by getNodeById`),H;if(_e.phase!==o)return H;if(_e.type==="branch"){const be=g.value.get(_e.id);be&&H.push(...be)}return L.delete(_e.id),H.push(_e),H},[]),{virtualEdges:x.get(G(U.ownerId)),cachedFindNode:P}),await t.nextTick(),h(U.id,!1),await w();const I=L.values().toArray();for(const U of I){if(ar(U)||U.type!=="branch")continue;const H=g.value.get(U.id);H&&I.push(...H)}const{autoNodes:j,leftNode:z,rightNode:ae}=T(I);O(j,{leftNode:z,rightNode:ae,virtualEdges:x.get(0),cachedFindNode:P}),N&&u()}function O(N,L){var re,J,te,se,V;const{leftNode:x,rightNode:B,virtualEdges:P,cachedFindNode:q}=L||{},G=x?(q??l)(x.id):void 0,K=B?(q??l)(B.id):void 0;let F;if(N.length>0){F=new rg.graphlib.Graph({multigraph:!0}),F.setGraph({rankdir:o==="request"?"LR":"RL",nodesep:C,edgesep:S,ranksep:A});const v=new Set;for(const M of N){const D=(q??l)(M.id);if(!D){console.warn(`Cannot find graph node '${M.id}' in ${o} phase`);continue}v.add(M.id),ar(M)?F.setNode(M.id,{...M.dimensions??D.dimensions}):F.setNode(M.id,{...D.dimensions})}for(const M of a.value)!v.has(M.source)||!v.has(M.target)||F.setEdge(M.source,M.target,{points:[]});P==null||P.forEach(M=>F.setEdge(M,{points:[]})),rg.layout(F)}const I=[],j=v=>({x:v.x-v.width/2,y:v.y-v.height/2,width:v.width,height:v.height});if(N.length>0){if(!F)throw new Error("Expected dagreGraph to be initialized");for(const v of N){const M=F.node(v.id),D=j(M);I.push(D),ar(v)?_(v.id,D,D.x+Bo,D.y+Bo):f(v.id,{x:D.x,y:D.y},!1)}}const z=I.length>0?um(I):{x:0,y:0,width:0,height:0},ae=z.width,U=z.height,H=z.x,ee=z.x+z.width,_e=Math.max(0,Math.min(t.toValue(b==null?void 0:b.width)??Number.POSITIVE_INFINITY,ZT)-ae-2*C-(((re=G==null?void 0:G.dimensions)==null?void 0:re.width)??0)-(((J=K==null?void 0:K.dimensions)==null?void 0:J.width)??0)-2*k),be=z.y+U/2;x&&f(x.id,{x:H-C-_e/2-(((te=G==null?void 0:G.dimensions)==null?void 0:te.width)??0),y:be-(((se=G==null?void 0:G.dimensions)==null?void 0:se.height)??0)/2},!1),B&&f(B.id,{x:ee+C+_e/2,y:be-(((V=K==null?void 0:K.dimensions)==null?void 0:V.height)??0)/2},!1)}function T(N){let L,x;const B=[];for(const P of N){if(ar(P)){B.push(P);continue}switch(P.name){case"request":{if(o!=="request")throw new Error(`Unexpected request node in ${o} phase`);if(L)throw new Error("Duplicated request node in request phase");L=P;break}case"service_request":{if(o!=="request")throw new Error(`Unexpected service_request node in ${o} phase`);if(x)throw new Error("Duplicated service_request node in request phase");x=P;break}case"service_response":{if(o!=="response")throw new Error(`Unexpected service_response node in ${o} phase`);if(x)throw new Error("Duplicated service_response node in response phase");x=P;break}case"response":{if(o!=="response")throw new Error(`Unexpected response node in ${o} phase`);if(L)throw new Error("Duplicated response node in response phase");L=P;break}default:{B.push(P);break}}}return{autoNodes:B,leftNode:L,rightNode:x}}return{autoLayout:R}}function iR({phase:e,groupMapById:n,getNodeDepth:o,canAddMember:r,draggingId:i}){const a=t.shallowRef(),l=t.shallowRef();function s(u){a.value=u,l.value=void 0}function c(){a.value&&(a.value=void 0,l.value=void 0)}function d(u){let p;const m=i==null?void 0:i.value;return n.value.forEach(g=>{if(g.phase!==e||m&&Il(m)&&!r(g.ownerId,g.branch,m))return;const y=g.position,h=g.dimensions;if(!y||!h||!(u.x>=y.x&&u.x<=y.x+h.width&&u.y>=y.y&&u.y<=y.y+h.height))return;const w=o(g.ownerId);(!p||w>p.depth)&&(p={depth:w,id:g.id})}),p==null?void 0:p.id}function f(u){if(!a.value){l.value=void 0;return}if(!u){l.value=void 0;return}l.value=d(u)}return{activeGroupId:l,start:s,updateActiveGroup:f,end:c}}function aR({phase:e,readonly:n,flowId:o,draggingId:r}){const{findNode:i}=Fe(o),a=We(),{state:l,groupMapById:s,getNodeById:c,moveNode:d,moveGroup:f,setGroupLayout:u,commit:p,branchGroups:m}=a,{memberGroupMap:g,groupsByOwner:y,getNodeDepth:h,getGroupDepth:_}=m,w=K=>!!K&&K.startsWith("branch:");function b(K){const F=[];for(const I of K.memberIds){const j=c(I);j&&F.push(j)}return F}const k=t.computed(()=>{const K=new Map;return g.value.forEach((F,I)=>{if(F.phase!==e||!F.position)return;const j=c(I);j&&(j.phase!==e||j.hidden||K.set(I,F))}),K}),E=t.computed(()=>{const K=new Map;return y.value.forEach((F,I)=>{const j=F.filter(z=>z.phase===e);j.length>0&&K.set(I,j)}),K}),C=t.computed(()=>{const K=[];for(const F of l.value.groups){const I=c(F.ownerId);if(!I||I.phase!==e)continue;const j=F.position,z=F.dimensions;if(!j||!z)continue;const ae=b(F).filter(H=>H.phase===e&&!H.hidden),U=_(F.id);K.push({id:F.id,type:"group",position:j,width:z.width,height:z.height,data:{...F,memberIds:ae.map(H=>H.id)},draggable:!n,selectable:!1,zIndex:U*ea+HT})}return K}),S=t.computed(()=>{let K=0;for(const F of l.value.groups){if(F.phase!==e)continue;const I=_(F.id);I>K&&(K=I)}return K}),A=t.computed(()=>{const K=[];for(const F of l.value.groups){if(F.phase!==e||!F.position||!F.dimensions)continue;const I=c(F.ownerId);if(!I||I.phase!==e||I.hidden||!b(F).filter(U=>U.phase===e&&!U.hidden).length)continue;const z=Math.max(h(I.id),_(F.id))+S.value+1,ae={id:`branch:${F.id}`,source:I.id,target:F.id,sourceHandle:`branch@${F.branch}`,targetHandle:"input",markerEnd:wr.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:I.id,branch:F.branch,groupId:F.id},zIndex:z*ea+WT};K.push(ae)}return K}),R=new Map,O=new Map;let T;function N(K,F=!0){if(K.phase!==e)return;const I=b(K).filter(H=>H.phase===e&&!H.hidden);if(!I.length)return;const j=[];for(const H of I){const ee=i(H.id),_e=ee==null?void 0:ee.dimensions,be=(_e==null?void 0:_e.width)??0,re=(_e==null?void 0:_e.height)??0;if(be<=0||re<=0)return;j.push({...H.position,width:be,height:re});const J=y.value.get(H.id)??[];for(const te of J){if(te.phase!==e)continue;const se=R.get(te.id),V=(se==null?void 0:se.position)??te.position,v=(se==null?void 0:se.dimensions)??te.dimensions;!V||!v||j.push({x:V.x,y:V.y,width:v.width,height:v.height})}}const z=um(j),ae=z.width+Bo*2,U=z.height+Bo*2;return{position:{x:Math.round(z.x-Bo),y:Math.round(z.y-Bo)},dimensions:{width:Math.round(ae),height:Math.round(U)},commit:F}}function L(){if(R.size===0){T=void 0;return}const K=[];let F=!1;R.forEach((I,j)=>{const z=u(j,I,!1);K.push({id:j,changed:z,commit:I.commit}),I.commit&&z&&!F&&(F=!0)}),R.clear(),T=void 0;for(const{id:I,changed:j,commit:z}of K){if(!j)continue;const ae=s.value.get(I);if(!ae)continue;const U=k.value.get(ae.ownerId);U&&O.set(U.id,{commit:z})}if(O.size>0){const I=Array.from(O);O.clear();for(const[j,{commit:z}]of I)B(j,z)}F&&p("*")}function x(){R.size!==0&&(T||(T=t.nextTick().then(L)))}function B(K,F=!0){const I=s.value.get(K);if(!I)return;const j=N(I,F);j&&(R.set(K,j),x())}function P(K,F,I,j){const z=s.value.get(K);if(!z)return;if(!z.position){f(K,F,!1),B(K);return}if(I===0&&j===0){f(K,F,!1);return}f(K,F,!1);const ae=[K],U=new Set([K]),H=new Set;for(;ae.length;){const ee=ae.shift(),_e=s.value.get(ee);if(!_e)continue;const be=b(_e).filter(re=>re.phase===e&&!re.hidden);for(const re of be){H.has(re.id)||(d(re.id,{x:re.position.x+I,y:re.position.y+j},!1),H.add(re.id));const J=E.value.get(re.id)??[];for(const te of J){if(U.has(te.id))continue;const se=s.value.get(te.id);se!=null&&se.position&&f(te.id,{x:se.position.x+I,y:se.position.y+j},!1),U.add(te.id),ae.push(te.id)}}}}function q(K,F){const I=r==null?void 0:r.value;if(!I)return!1;if(I===K||F.some(j=>I===j))return!0;for(const j of F){const z=E.value.get(j)??[];if(z!=null&&z.some(ae=>ae.id===I))return!0}return!1}const G=new Map;return t.watch(()=>l.value.groups.filter(F=>F.phase===e).map(F=>{const I=F.memberIds.map(j=>{var H,ee;const z=i(j),ae=Math.round(((H=z==null?void 0:z.dimensions)==null?void 0:H.width)??0),U=Math.round(((ee=z==null?void 0:z.dimensions)==null?void 0:ee.height)??0);return`${j}:${ae}x${U}`});return{id:F.id,memberIds:F.memberIds,signature:I.join(",")}}),K=>{const F=new Set(K.map(I=>I.id));for(const I of G.keys())F.has(I)||G.delete(I);for(const I of K)q(I.id,I.memberIds)||G.get(I.id)===I.signature||(G.set(I.id,I.signature),B(I.id))},{deep:!0,flush:"post"}),{groupsByOwner:E,memberGroupMap:k,groupNodes:C,branchEdges:A,isBranchEdgeId:w,updateGroupLayout:B,translateGroupTree:P,getNodeDepth:h,maxGroupDepth:S,waitForLayoutFlush:()=>T??Promise.resolve()}}function lR(e){t.provide(cm,e)}function ig(){return t.inject(cm,void 0)}function ag(){const e=ig();if(!e)throw new Error("Confirm modal not provided");return e}function sR(e){const{readonly:n,flowId:o}=e,r=Fe(o),{onNodesChange:i,onEdgesChange:a,onPaneClick:l,findEdge:s}=r,{disconnectEdge:c,commit:d,portalSelection:f,selectPortalEdge:u}=We();i(p=>{p.some(m=>m.type==="select"&&"selected"in m&&m.selected)&&u(void 0)}),a(p=>{const m=p.some(y=>y.type==="select"&&"selected"in y&&y.selected),g=f.value?p.some(y=>y.type==="remove"&&y.id===f.value):!1;(m||g)&&u(void 0)}),l(()=>u(void 0)),Ye.useEventListener("keydown",p=>{if(n||p.key!=="Delete"&&p.key!=="Backspace")return;const m=f.value;!m||s(m)||(p.preventDefault(),c(m,!1),u(void 0),d())})}function lg(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const cR={default:v1,hover:I1,selected:A1};let sg,$s;function ca(e){const n=e.id===sg?"selected":e.id===$s?"hover":"default",o=cR[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[dR,uR]=Ye.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Pn.padding,gaps:s=Pn.gaps}=r,{nodes:c=Pn.gaps.nodes}=s,d=Fe(o),f=We(),u=ig(),p=al(),{i18n:{t:m}}=Ve(),{findNode:g,fitView:y,deleteKeyCode:h,onNodeDrag:_,onNodeDragStop:w,onConnect:b,onNodesChange:k,onEdgesChange:E,onEdgeUpdate:C,onEdgeMouseEnter:S,onEdgeMouseLeave:A,getNodes:R,setNodes:O,setEdges:T,addSelectedNodes:N,screenToFlowCoordinate:L}=d;h.value=["Delete","Backspace"];const{state:x,commit:B,moveNode:P,selectNode:q,removeNode:G,getNodeById:K,connectEdge:F,disconnectEdge:I,getInEdgesByNodeId:j,branchGroups:z,commit:ae,reset:U,groupMapById:H}=f,{isGroupId:ee,canAddMember:_e}=z,be=t.shallowRef(),re=de=>{be.value=de},J=t.readonly(be);function te(de,Se){const me=K(de.source),Ce=K(de.target);return!!(me&&Ce&&me.phase===Se&&Ce.phase===Se)}const se=aR({phase:n,readonly:i,flowId:o,draggingId:J}),{memberGroupMap:V,groupNodes:v,branchEdges:M,isBranchEdgeId:D,updateGroupLayout:ie,translateGroupTree:X,getNodeDepth:ne,maxGroupDepth:Q}=se,{activeGroupId:Z,start:ue,updateActiveGroup:$,end:oe}=iR({phase:n,groupMapById:H,getNodeDepth:ne,canAddMember:_e,draggingId:J}),le=t.computed(()=>x.value.nodes.filter(de=>de.phase===n&&!de.hidden).map(de=>{const Se=V.value.get(de.id),me=Se==null?void 0:Se.position,Ce=Se==null?void 0:Se.dimensions,Ie=Se&&me&&Ce?{x:de.position.x-me.x,y:de.position.y-me.y}:de.position,we=ne(de.id),Oe=!!(Se&&me&&Ce),Be=(Oe?we:0)+Q.value+1;return{id:de.id,type:"flow",position:Ie,data:de,deletable:!Al(de),parentNode:Oe?Se.id:void 0,zIndex:Be*ea+XT}})),pe=t.computed(()=>x.value.edges.filter(de=>te(de,n)).filter(de=>!z.isEdgeEnteringGroup(de.source,de.target)).filter(de=>{const Se=K(de.source),me=K(de.target);return!(Se!=null&&Se.hidden)&&!(me!=null&&me.hidden)}).map(de=>{const Se=K(de.source),me=K(de.target);if(!Se||!me){const Ie=[];throw Se||Ie.push(`source node "${de.source}"`),me||Ie.push(`target node "${de.target}"`),new Error(`Missing ${Ie.join(" and ")} for edge "${de.id}" in phase "${n}"`)}const Ce=Math.max(ne(de.source),ne(de.target))+Q.value+1;return ca({id:de.id,source:de.source,target:de.target,sourceHandle:de.sourceField?`outputs@${de.sourceField}`:"output",targetHandle:de.targetField?`inputs@${de.targetField}`:"input",markerEnd:wr.ArrowClosed,data:de,updatable:!i,zIndex:Ce*ea+YT})})),ce=t.computed(()=>[...M.value,...pe.value]),{autoLayout:fe}=rR({phase:n,layoutOptions:r,branchLayout:se,nodes:le,edges:ce});sR({readonly:i,flowId:o}),t.watch([le,v,ce],([de,Se,me])=>{O([...Se,...de]),T(me)},{immediate:!0});const Ee=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function Pe({source:de,sourceHandle:Se,target:me,targetHandle:Ce}){if(!Se||!Ce)return;const Ie=lg(Se),we=lg(Ce);if((Ie==null?void 0:Ie.io)==="input"||(we==null?void 0:we.io)==="output"||Se==="output"&&Ce==="output")return;const Oe=j(me);let Be=!1,Je=!1;const Me=[],He=[],je=(we==null?void 0:we.io)==="input"?Oe.filter(at=>!at.targetField):Oe.filter(at=>!!at.targetField);je.length>0&&(Be=!0,je.forEach(at=>{He.push(Or(at,K)),I(at.id,!1)}));const ht=(we==null?void 0:we.io)==="input"?we!=null&&we.field?Oe.filter(at=>at.targetField===we.field):Oe.filter(at=>!!at.targetField):Oe.filter(at=>!at.targetField);if(ht.length>0){if(ht.some(Vt=>Vt.source===de&&Vt.target===me&&Vt.targetField===(we==null?void 0:we.field)&&Vt.sourceField===(Ie==null?void 0:Ie.field)))return;Je=!0,ht.forEach(Vt=>{He.push(Or(Vt,K)),I(Vt.id,!1)})}if(!F({source:de,sourceField:Ie==null?void 0:Ie.field,target:me,targetField:we==null?void 0:we.field},!1)){U(),p({message:m("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(Me.push(ws(de,Ie==null?void 0:Ie.field,me,we==null?void 0:we.field,K)),Be||Je){if(!u)throw U(),new Error("Expected confirm modal to be provided here when reachable");if(!await u(m(Be?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),Me,He)){U();return}}ae()}b(Pe);let ge=!1;const ye=()=>{ge&&(ge=!1,ae())};k(de=>{de.filter(Ce=>Ce.type==="select").filter(Ce=>!ee(Ce.id)).sort((Ce,Ie)=>Ce.selected===Ie.selected?0:Ce.selected?1:-1).forEach(Ce=>{q(Ce.selected?Ce.id:void 0)});let me=!1;de.forEach(Ce=>{if(Ce.type==="remove"){if(ee(Ce.id))return;me=!0,G(Ce.id,!1)}}),me&&!ge&&(ge=!0,queueMicrotask(ye))}),_(({node:de,event:Se})=>{var Oe,Be,Je;if(!de)return;if(ee(de.id)){const Me=de.id;re(Me),$(void 0);const He=H.value.get(Me);if(!He)return;const je=He.position??{...de.position},ht=de.position.x-je.x,Br=de.position.y-je.y;X(Me,de.position,ht,Br);const at=V.value.get(He.ownerId);at&&ie(at.id,!1);return}const me=de.id;ue("canvas"),re(me);const Ce=de.parentNode;let Ie={...de.position};if(Ce&&ee(Ce)){const Me=H.value.get(Ce);Me!=null&&Me.position&&(Ie={x:Me.position.x+de.position.x,y:Me.position.y+de.position.y})}if(P(me,Ie,!1),!Al(K(me))){const Me={x:Ie.x,y:Ie.y,width:((Oe=de.dimensions)==null?void 0:Oe.width)??0,height:((Be=de.dimensions)==null?void 0:Be.height)??0},He=Se&&"clientX"in Se?L({x:Se.clientX,y:Se.clientY}):void 0,je={x:Me.x+Me.width/2,y:Me.y+Me.height/2};$(He??je)}const we=Ce&&ee(Ce)?Ce:(Je=V.value.get(me))==null?void 0:Je.id;we&&ie(we,!1)}),w(({node:de})=>{var we;if(!de)return;if(re(void 0),ee(de.id)){B();return}const Se=de.id,me=de.parentNode;let Ce={...de.position};if(me&&ee(me)){const Oe=H.value.get(me);Oe!=null&&Oe.position&&(Ce={x:Oe.position.x+de.position.x,y:Oe.position.y+de.position.y})}P(Se,Ce,!1);const Ie=me&&ee(me)?me:(we=V.value.get(Se))==null?void 0:we.id;Ie&&ie(Ie,!1),bn(Se),oe(),B()}),E(de=>{de.filter(Ce=>Ce.type==="select").sort((Ce,Ie)=>Ce.selected===Ie.selected?0:Ce.selected?1:-1).forEach(Ce=>{D(Ce.id)||(sg=Ce.selected?Ce.id:void 0,T(Ie=>Ie.map(we=>we.id!==Ce.id||!we.markerEnd?we:ca({...we,zIndex:Ce.selected?1:void 0}))))});let me=!1;de.forEach(Ce=>{if(Ce.type==="remove"){if(D(Ce.id))return;me=!0,I(Ce.id,!1)}}),me&&!ge&&(ge=!0,queueMicrotask(ye))}),S(({edge:de})=>{D(de.id)||($s=de.id,T(Se=>Se.map(me=>me.id!==de.id?me:ca(me))))}),A(({edge:de})=>{D(de.id)||($s=void 0,T(Se=>Se.map(me=>me.id!==de.id?me:ca(me))))}),C(({edge:de,connection:Se})=>{D(de.id)||(I(de.id,!1),Pe(Se))});function Ke(de){y({...Ee.value,...de})}async function _t(de){return q(de),new Promise(Se=>setTimeout(()=>{const me=g(de);N(me?[me]:[]),Se()},0))}function tn(de){const Se=R.value.filter(({type:je})=>je!=="group"),me=Se.find(({id:je})=>je===de);if(!me)throw new Error(`Node ${de} not found`);const{x:Ce,y:Ie}=me.data.position,{width:we,height:Oe}=me.dimensions,Be=Ie,Je=Ie+Oe,Me=Se.filter(({id:je})=>je!==de).filter(({data:{position:{y:je}},dimensions:{height:ht}})=>je<Je&&je+ht>Be).map(({data:{position:{x:je}},dimensions:{width:ht}})=>({left:je,right:je+ht})).sort((je,ht)=>je.left-ht.left);let He=Ce+we+c;for(const{left:je,right:ht}of Me)if(!(ht<=He)){if(He+we<=je)return{x:He,y:Be};He=Math.max(He,ht)+c}return{x:He,y:Be}}function Tn(de){if(!de)return;const Se=g(de);if(!Se)throw new Error(`Node ${de} not found`);const{position:{x:me},dimensions:{width:Ce}}=Se,Ie=me+Ce,{viewport:we,dimensions:Oe,setViewport:Be}=d,{x:Je,y:Me,zoom:He}=we.value,{width:je}=Oe.value,ht=me*He+Je,Br=Ie*He+Je,at=je-sm-c;if(Br<=at)return;let Vt=at-Br;ht+Vt<0&&(Vt=-ht),Vt!==0&&Be({x:Je+Vt,y:Me,zoom:He},{duration:eO})}function bn(de){if(!Z.value)return!1;const{nodeId:Se,branch:me}=G1(Z.value),Ce=z.addMember(Se,me,de,{commit:!1});return $(void 0),Ce}return{vueFlowStore:d,editorStore:f,readonly:i,nodes:le,edges:ce,selectNode:_t,autoLayout:fe,placeToRight:tn,scrollRightToReveal:Tn,fitViewParams:Ee,fitView:Ke,groupDrop:{activeGroupId:Z,startPanelDrag:()=>ue("panel"),endPanelDrag:oe,updateActiveGroup:$,attachNodeToActiveGroup:bn}}});let Ro=null;function fR(){var n;if(Ro)return Ro;if(typeof navigator>"u")return Ro="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?Ro="mac":/Linux/i.test(e)&&!/Android/i.test(e)?Ro="linux":Ro="windows"}const pR={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},mR={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"},gR={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 hR(e,n={}){const o=n.platform??fR(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?pR:o==="linux"?gR:mR;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const yR={key:0,class:"label"},_R={class:"keys"},da=ve(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=hR(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:e.reverse}])},[e.label?(t.openBlock(),t.createElementBlock("span",yR,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",_R,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),bR=["onClick"],wR={key:0,class:"additional-count"},cg=24,kR=16,ua=ve(t.defineComponent({__name:"NodePortal",props:{expanded:{type:Boolean,default:()=>{}},reversed:{type:Boolean},targets:{}},setup(e){const n=Number.parseFloat(L1)||0,o={target:"body"},{portalSelection:r,selectPortalEdge:i}=We(),a=t.ref(!1),l=t.computed(()=>{const g=r.value;return g?e.targets.some(y=>y.edgeId===g):!1}),s=t.computed(()=>e.expanded!==void 0?e.expanded||l.value:a.value||l.value),c=()=>cg*e.targets.length+n*(e.targets.length-1),d=t.computed(()=>({width:s.value?`${c()}px`:"fit-content"})),f=g=>{i(g)},u=g=>r.value===g,p=t.computed(()=>e.targets.map((g,y)=>{var _;const h=(cg+n)*y;return{edgeId:g.edgeId,key:`${g.node.id}-${g.fieldName??"node"}-${y}`,icon:(_=gt[g.node.type])==null?void 0:_.icon,tooltip:g.fieldName?`${g.node.name}.${g.fieldName}`:g.node.name,highlighted:u(g.edgeId),tooltipEl:null,style:y===0?{width:"fit-content",zIndex:e.targets.length}:{position:"absolute",...e.reversed?{left:`${h}px`,transform:s.value?"translateX(0)":`translateX(-${h}px)`}:{right:0,transform:s.value?`translateX(-${h}px)`:"translateX(0)"},zIndex:e.targets.length-y}}})),m=t.computed(()=>Math.max(e.targets.length-1,0));return(g,y)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-portal",{expanded:s.value,reversed:e.reversed}]),onClick:y[0]||(y[0]=t.withModifiers(()=>{},["stop"])),onDragstart:y[1]||(y[1]=t.withModifiers(()=>{},["stop"])),onMousedown:y[2]||(y[2]=t.withModifiers(()=>{},["stop"])),onMouseenter:y[3]||(y[3]=h=>a.value=!0),onMouseleave:y[4]||(y[4]=h=>a.value=!1)},[t.createElementVNode("div",{class:"target-boxes",style:t.normalizeStyle(d.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(h,_)=>(t.openBlock(),t.createBlock(t.unref($e.KTooltip),{key:h.key,class:"target-box-wrapper","kpop-attributes":o,placement:"top",style:t.normalizeStyle(h.style),text:h.tooltip},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["target-box",{highlighted:h.highlighted}]),onClick:t.withModifiers(w=>f(h.edgeId),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(h.icon),{color:t.unref(Co),size:kR},null,8,["color"])),_===0&&m.value>0?(t.openBlock(),t.createElementBlock("span",wR," +"+t.toDisplayString(m.value),1)):t.createCommentVNode("",!0)],10,bR)]),_:2},1032,["style","text"]))),128))],4)],34))}}),[["__scopeId","data-v-926821a3"]]),fa=ve(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>xe.Left},size:{default:()=>Number.parseFloat(Yu)},type:{}},setup(e){t.useCssVars(o=>({v753622c4:o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[e.type,e.position===t.unref(xe).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),dg=ve(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>gt[e.type]),o=t.computed(()=>U1(e.type));return(r,i)=>{var l;const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:"neutral",class:t.normalizeClass(["dk-node-badge",{"icon-only":e.iconOnly,"has-colors":!!n.value.colors}]),size:e.size},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]),CR={class:"body"},ER={class:"name"},NR={class:"handle"},xR={class:"handle-label-wrapper"},SR={class:"handle-label-wrapper"},vR={class:"handle-label text"},AR={class:"handle"},IR={class:"handle-label-wrapper"},PR={class:"handle-label-wrapper"},TR={class:"handle-label text"},OR={key:2,class:"branch-handles"},$R={class:"handle-label-wrapper"},BR={class:"handle-label text"},ug=ve(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),o=uR(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d,branchGroups:f}=We(),u=t.computed(()=>No(e.data.type)),p=t.computed(()=>e.data.fields.input.length>0),m=t.computed(()=>e.data.fields.output.length>0),g=t.computed(()=>p.value&&r(e.data.id).every(I=>I.targetField===void 0)),y=t.computed(()=>m.value&&i(e.data.id).every(I=>I.sourceField===void 0)),h=t.computed(()=>e.data.expanded.input??!1),_=t.computed(()=>e.data.expanded.output??!1),w=t.computed(()=>{var I,j,z;return((z=(j=(I=u.value.io)==null?void 0:I.next)==null?void 0:j.branches)==null?void 0:z.map(({name:ae})=>ae))??[]}),b=t.computed(()=>w.value.length>0),k=t.computed(()=>f.findMembership(e.data.id)),E=t.computed(()=>{var I,j;if(e.data.type==="property"){const z=(I=e.data.config)==null?void 0:I.property;return bs(z)}return(j=u.value.io)==null?void 0:j.input}),C=t.computed(()=>{var I,j;if(e.data.type==="property"){const z=(I=e.data.config)==null?void 0:I.property;return _s(z)}return(j=u.value.io)==null?void 0:j.output}),S=t.computed(()=>Al(e.data)),A=t.computed(()=>e.data.phase==="response"),R=t.computed(()=>e.data.phase==="request"?xe.Left:xe.Right),O=t.computed(()=>e.data.phase==="request"?xe.Right:xe.Left),T=t.computed(()=>e.data.phase==="request"?xe.Right:xe.Left),N=t.computed(()=>S.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),L=t.computed(()=>S.value?N1:Cl);function x(I){return I==="input"?A.value:!A.value}function B(I){const j=new Map,z=I==="input"?r(e.data.id):i(e.data.id);for(const ae of z){const U=a(I==="input"?ae.source:ae.target);if(!U)continue;if(I==="input"){const re=U.type==="vault",J=U.phase!==e.data.phase,te=f.isEdgeEnteringGroup(U.id,e.data.id);if(!(re||J||te))continue}else{const re=U.phase!==e.data.phase,J=f.isEdgeEnteringGroup(e.data.id,U.id);if(!(re||J))continue}const H=I==="input"?ae.targetField||"input":ae.sourceField||"output";let ee;if(I==="input"&&ae.sourceField){const re=U.fields.output.find(J=>J.id===ae.sourceField);ee=re==null?void 0:re.name}else if(I==="output"&&ae.targetField){const re=U.fields.input.find(J=>J.id===ae.targetField);ee=re==null?void 0:re.name}const _e={edgeId:ae.id,node:U,fieldName:ee},be=j.get(H);be?be.push(_e):j.set(H,[_e])}return j}const P=t.computed(()=>B("input")),q=t.computed(()=>B("output"));function G(I){!o||o.readonly||I==="input"&&!g.value||I==="output"&&!y.value||l(e.data.id,I)}async function K(){if(!o||o.readonly)return;const I=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(I),o.scrollRightToReveal(I),d.value=!0}function F(){f.removeMember(e.data.id)}return t.watch(g,I=>{I||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(y,I=>{I||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(I,j)=>{jn(I,j)||l(e.data.id,"input",I.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(I,j)=>{jn(I,j)||l(e.data.id,"output",I.length>0,!0,"*")},{deep:!0}),(I,j)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:A.value,implicit:S.value,readonly:e.readonly}])},[t.createElementVNode("div",CR,[S.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref($e.KTooltip),{key:0,class:"badge",placement:"top",text:e.data.type},{default:t.withCtx(()=>[t.createVNode(dg,{"icon-only":"",size:"small",type:e.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",ER,t.toDisplayString(N.value),1),e.error?(t.openBlock(),t.createBlock(t.unref(ke.WarningIcon),{key:1,class:"error-icon",color:t.unref(El),size:16},null,8,["color"])):t.createCommentVNode("",!0),S.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref($e.KDropdown),{key:2,class:"menu",disabled:e.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:j[1]||(j[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref($e.KDropdownItem),{onClick:K},{default:t.withCtx(()=>[t.createVNode(da,{keys:t.unref(ta).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),k.value?(t.openBlock(),t.createBlock(t.unref($e.KDropdownItem),{key:0,onClick:F},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref($e.KDropdownItem),{danger:"",onClick:j[0]||(j[0]=z=>t.unref(c)(e.data.id))},{default:t.withCtx(()=>[t.createVNode(da,{keys:t.unref(ta).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($e.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{color:t.unref(rr)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:A.value}])},[E.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":p.value}])},[t.createElementVNode("div",NR,[t.createVNode(t.unref(Qt),{id:"input",position:R.value,type:"target"},null,8,["position"]),P.value.has("input")?(t.openBlock(),t.createBlock(ua,{key:0,mode:"input",reversed:x("input"),targets:P.value.get("input")},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",xR,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:g.value}]),onClick:j[2]||(j[2]=t.withModifiers(z=>G("input"),["stop"]))},[j[4]||(j[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[h.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ke.UnfoldMoreIcon),{key:0,size:t.unref(fi)},null,8,["size"])),h.value?(t.openBlock(),t.createBlock(t.unref(ke.UnfoldLessIcon),{key:1,color:g.value?void 0:t.unref(Hu),size:t.unref(fi)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&h.value?(t.openBlock(),t.createBlock(fa,{key:0,color:L.value,position:R.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),p.value&&h.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.input,(z,ae)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${z.id}`,class:"handle indented"},[t.createVNode(t.unref(Qt),{id:`inputs@${z.id}`,position:R.value,type:"target"},null,8,["id","position"]),P.value.has(z.id)?(t.openBlock(),t.createBlock(ua,{key:0,mode:"input",reversed:x("input"),targets:P.value.get(z.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",SR,[t.createElementVNode("div",vR,t.toDisplayString(z.name),1),t.createVNode(fa,{color:L.value,position:R.value,type:ae<e.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),C.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":m.value}])},[t.createElementVNode("div",AR,[t.createElementVNode("div",IR,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:y.value}]),onClick:j[3]||(j[3]=t.withModifiers(z=>G("output"),["stop"]))},[j[5]||(j[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),m.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[_.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ke.UnfoldMoreIcon),{key:0,size:t.unref(fi)},null,8,["size"])),_.value?(t.openBlock(),t.createBlock(t.unref(ke.UnfoldLessIcon),{key:1,color:y.value?void 0:t.unref(Hu),size:t.unref(fi)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),m.value&&_.value?(t.openBlock(),t.createBlock(fa,{key:0,color:L.value,position:O.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Qt),{id:"output",position:O.value,type:"source"},null,8,["position"]),q.value.has("output")?(t.openBlock(),t.createBlock(ua,{key:0,mode:"output",reversed:x("output"),targets:q.value.get("output")},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]),m.value&&_.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.output,(z,ae)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${z.id}`,class:"handle indented"},[t.createElementVNode("div",PR,[t.createElementVNode("div",TR,t.toDisplayString(z.name),1),t.createVNode(fa,{color:L.value,position:O.value,type:ae<e.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Qt),{id:`outputs@${z.id}`,position:O.value,type:"source"},null,8,["id","position"]),q.value.has(z.id)?(t.openBlock(),t.createBlock(ua,{key:0,mode:"output",reversed:x("output"),targets:q.value.get(z.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),b.value?(t.openBlock(),t.createElementBlock("div",OR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(w.value,z=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${z}`,class:"handle"},[t.createElementVNode("div",$R,[t.createElementVNode("div",BR,t.toDisplayString(z),1)]),t.createVNode(t.unref(Qt),{id:`branch@${z}`,connectable:!1,position:T.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-c0706d4a"]]),VR=ve(t.defineComponent({__name:"GroupNode",props:{data:{},active:{type:Boolean}},setup(e){const n=e,o=t.computed(()=>n.data.phase==="response"),r=t.computed(()=>o.value?xe.Right:xe.Left);return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-branch-group-node",{reversed:o.value,"drop-target":e.active}])},[t.createVNode(t.unref(Qt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),fg=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=Ye.useElementBounding(i),{i18n:{t:l}}=Ve(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:g,groupDrop:y}=dR({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:h,propertiesPanelOpen:_,invalidConfigNodeIds:w,selectedNode:b,duplicateNode:k,commit:E,selectPortalEdge:C}=c,{screenToFlowCoordinate:S,zoomIn:A,zoomOut:R,viewport:O,maxZoom:T,minZoom:N}=s,{activeGroupId:L,startPanelDrag:x,endPanelDrag:B,updateActiveGroup:P,attachNodeToActiveGroup:q}=y;function G(U){var ee;const H=(ee=U.dataTransfer)==null?void 0:ee.types.find(_e=>_e.startsWith(`${Ir}/`));if(H)return H.replace(`${Ir}/`,"")}function K(U){var H;if(e.mode==="edit"){if(((H=U==null?void 0:U.node)==null?void 0:H.type)==="group"){p(void 0),C(void 0);return}_.value=!0}}function F(U){e.mode==="edit"&&(U.preventDefault(),P(S({x:U.clientX,y:U.clientY})))}function I(U){var se;if(e.mode!=="edit")return;const H=(se=U.dataTransfer)==null?void 0:se.getData(Ir);if(!H)return;U.preventDefault();const ee=JSON.parse(H);if(ee.action!=="create-node")return;const _e=S({x:U.clientX,y:U.clientY}),{type:be,anchor:re}=ee.data,J={type:be,phase:e.phase,position:{x:_e.x-re.offsetX,y:_e.y-re.offsetY}},te=h(J,!1);if(!te){B();return}q(te),E(),p(te),_.value=!0,B()}async function j(){await d(),setTimeout(()=>u(),0)}const z=t.computed(()=>{if(e.mode==="preview")return[];const U=[{name:"zoom_in",icon:ke.AddIcon,action:A,disabled:O.value.zoom>=T.value},{name:"zoom_out",icon:ke.RemoveIcon,action:R,disabled:O.value.zoom<=N.value},{name:"fit_view",icon:ke.FullscreenIcon,action:u}];return e.mode==="edit"&&U.push({name:"auto_layout",icon:ke.AutoLayoutIcon,action:j}),U});e.mode==="edit"&&(Ye.useEventListener("dragstart",U=>{G(U)&&x()}),Ye.useEventListener("dragend",()=>{B()}));async function ae(){const U=b.value;if(e.mode!=="edit"||!U||U.phase!==e.phase)return;const H=k(U.id,m(U.id));H&&(await p(H),_.value=!0,g(H))}return am({enabled:t.computed(()=>!!b.value&&e.mode==="edit"&&b.value.phase===e.phase),duplicate:ae}),n({autoLayout:d,fitView:u}),(U,H)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(nm),{id:e.flowId,class:t.normalizeClass(["flow",{readonly:e.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":e.mode==="edit","max-zoom":t.unref(JT),"min-zoom":t.unref(QT),"multi-selection-key-code":null,"nodes-connectable":e.mode==="edit","nodes-draggable":e.mode==="edit","pan-on-drag":e.mode==="preview"?!1:void 0,"pan-on-scroll":e.mode!=="edit"?!1:void 0,"zoom-on-double-click":e.mode!=="edit"?!1:void 0,"zoom-on-pinch":e.mode!=="edit"?!1:void 0,"zoom-on-scroll":e.mode!=="edit"?!1:void 0,onDragover:F,onDrop:I,onNodeClick:K,onNodesChange:H[0]||(H[0]=ee=>r("nodes-change")),onNodesInitialized:H[1]||(H[1]=ee=>r("initialized"))},{"node-flow":t.withCtx(({data:ee})=>[t.createVNode(ug,{data:ee,error:t.unref(w).has(ee.id),readonly:e.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:ee})=>[t.createVNode(VR,{active:t.unref(L)===ee.id,data:ee},null,8,["active","data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(pT)),t.createVNode(t.unref(LT),{"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(z.value,ee=>(t.openBlock(),t.createBlock(t.unref($e.KTooltip),{key:ee.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${ee.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ar),{disabled:ee.disabled,onClick:t.withModifiers(ee.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(ee.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"])],512))}}),[["__scopeId","data-v-47761eb0"]]),RR={class:"label-content"},DR={class:"count"},MR={class:"label-content"},LR={class:"count"},pg=.5,Bs=.03,FR=30,Vs=ve(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),o=t.ref(!1),r=t.ref(!1),{responsePanelCollapsed:i}=_i(),{state:a,configNodeCounts:l,clearPendingLayout:s,setPendingFitView:c,commit:d,clear:f,portalSelection:u}=We(),p=t.useId(),m=`${p}-request`,g=`${p}-response`,y=Fe(m),h=Fe(g);function _(J,te){const{onPaneClick:se,onNodesChange:V,onEdgesChange:v,getSelectedNodes:M,getSelectedEdges:D}=J,{removeSelectedElements:ie}=te;function X(ne){if(!ne){ie();return}ne.some(Q=>Q.type==="select")&&M.value.length+D.value.length>0&&ie()}V(X),v(X),se(()=>X())}_(y,h),_(h,y),t.watch(u,J=>{J&&(y.removeSelectedElements(),h.removeSelectedElements())});const w=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),k=t.useTemplateRef("requestCanvasContainer"),E=t.useTemplateRef("requestFlow"),C=t.useTemplateRef("resizeHandle"),S=t.useTemplateRef("responseLabel"),A=t.useTemplateRef("responseCanvasContainer"),R=t.useTemplateRef("responseFlow"),O=Ye.useElementBounding(w),T=Ye.useElementBounding(b),N=Ye.useElementBounding(k),L=Ye.useElementBounding(C),x=Ye.useElementBounding(S),B=Ye.useElementBounding(A),P=t.computed(()=>Math.max(FR,O.height.value*Bs)),q=t.computed(()=>O.height.value-T.height.value-L.height.value-x.height.value),G=t.computed(()=>{const J=q.value;return J?Math.max(Bs,P.value/J):Bs}),K=t.ref(pg),F=t.computed(()=>`${K.value*100}%`),I=t.computed(()=>`${(1-K.value)*100}%`),j=t.computed(()=>K.value<=G.value),z=t.computed(()=>1-K.value<=G.value);function ae(J,{persist:te=!0}={}){const se=Math.min(1,Math.max(0,J));K.value=se,te&&e.mode==="edit"&&(i.value=z.value)}function U(J,te=!0){ae(J?1:pg,{persist:te})}function H(J=!0){ae(0,{persist:J})}if(e.mode==="edit"){const J=l.value.response===0,te=i.value;U(J||te,!1)}else t.watch(()=>l.value.response,J=>{U(J===0,!1)},{immediate:!0});const ee=()=>{e.resizable&&(j.value?U(!1):H())},_e=()=>{e.resizable&&U(!z.value)},{isDragging:be}=Ye.useDraggable(C,{onMove(J){if(!e.resizable)return;const te=Math.max(0,J.y-N.top.value),se=Math.min(1,Math.max(0,te/q.value));ae(se,{persist:!1})},onEnd(){e.resizable&&(N.height.value<P.value?H():B.height.value<P.value?U(!0):ae(K.value))}});function re(){t.nextTick(()=>{var J,te;(J=E.value)==null||J.fitView(),(te=R.value)==null||te.fitView()})}return t.watch([o,r,()=>a.value.pendingLayout,()=>a.value.pendingFitView],([J,te,se,V])=>{e.inactive||!J||!te||!se&&!V||(se&&s(),V&&c(!1),setTimeout(async()=>{var v,M;se&&(await((v=E.value)==null?void 0:v.autoLayout(!1)),await((M=R.value)==null?void 0:M.autoLayout(!1)),d("*"),se==="clearHistory"&&f()),V&&setTimeout(()=>re(),0)},0))}),(J,te)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:w,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:e.resizable}]),onClick:ee},[e.resizable?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:j.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",RR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),t.createElementVNode("span",DR,[t.unref(l).request===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(l).request}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:k,class:t.normalizeClass(["canvas",{dragging:t.unref(be)}]),style:t.normalizeStyle({flexBasis:F.value})},[t.createVNode(fg,{ref_key:"requestFlow",ref:E,"flow-id":m,mode:e.mode,phase:"request",onInitialized:te[0]||(te[0]=se=>o.value=!0),onNodesChange:te[1]||(te[1]=se=>o.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:C,class:t.normalizeClass(["resize-handle",{resizable:e.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:S,class:t.normalizeClass(["label response",{dragging:t.unref(be),resizable:e.resizable}]),onClick:_e},[e.resizable?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:z.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",MR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),t.createElementVNode("span",LR,[t.unref(l).response===1?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(" ("+t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:t.unref(l).response}))+") ",1)],64))])])],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:A,class:t.normalizeClass(["canvas response",{dragging:t.unref(be)}]),style:t.normalizeStyle({flexBasis:I.value})},[t.createVNode(fg,{ref_key:"responseFlow",ref:R,"flow-id":g,mode:e.mode,phase:"response",onInitialized:te[2]||(te[2]=se=>r.value=!0),onNodesChange:te[3]||(te[3]=se=>r.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-3d68b40b"]]),UR={class:"dk-confirm-modal-body"},KR={class:"connections"},jR=ve(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=Ve(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,g,y){return l.value=m,s.value=g??[],c.value=y??[],a.value=!0,await new Promise(h=>{d=h})}return n({open:p}),(m,g)=>{const y=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(y,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:e.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:u},{default:t.withCtx(()=>[t.createElementVNode("div",UR,[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",KR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([h,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${h}-${_}`,class:"connection"},[t.createVNode(t.unref(ke.AddIcon),{color:t.unref(x1)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(h)+" → "+t.toDisplayString(_),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([h,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${h}-${_}`,class:"connection"},[t.createVNode(t.unref(ke.RemoveIcon),{color:t.unref(El)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(h)+" → "+t.toDisplayString(_),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),GR={class:"dk-editor-nav"},qR={class:"top"},zR={class:"bottom"},HR=ve(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Qe),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:ke.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=_i(),l=t.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=t.ref(!1);function c(){a.value=!a.value}return(d,f)=>(t.openBlock(),t.createElementBlock("nav",GR,[t.createElementVNode("div",qR,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:g})=>t.createVNode(t.unref($e.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref($e.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:g},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(ir)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",zR,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(u=>s.value=!0,["self"]))},[t.createVNode(t.unref($e.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref($e.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(ke.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(ir)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(ke.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(ir)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),YR={class:"dk-editor-main"},WR={class:"header"},XR={class:"actions"},ZR={class:"settings"},JR={ref:"canvasContainer",class:"body"},QR=ve(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=We();function c(u){const p=ui[u],m=Cn.load(p,{schema:wo,json:!0});if(typeof m!="object"||m===null)return;const g=m,y={config:{...g,nodes:g.nodes??[]}};s(y,!0)}function d(){o.value=!1}am({enabled:o,undo:r,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(u,p)=>(t.openBlock(),t.createElementBlock("div",YR,[t.createElementVNode("header",WR,[t.createElementVNode("div",XR,[t.createVNode(t.unref($e.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(da,{keys:t.unref(ta).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($e.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref($e.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(da,{keys:t.unref(ta).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($e.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",ZR,[t.createVNode(mo,{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($e.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples"),width:240},{items:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(ui),(m,g)=>(t.openBlock(),t.createBlock(t.unref($e.KDropdownItem),{key:g,onClick:y=>c(g)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${g}`)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),t.createVNode(t.unref($e.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(ke.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref($e.KButton),{onClick:d},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",JR,[t.createVNode(Vs,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-24a6777e"]]),eD=["draggable"],tD={class:"icon"},nD={class:"content"},oD={class:"title"},rD={class:"description"},iD=ve(t.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(c=>({f628e926:t.unref(a),v4a9b9f82:t.unref(l)}));const o=n,{summary:r,icon:i,colors:{background:a,foreground:l}={}}=xl[e.type];function s(c){o("dragstart",c,e.type)}return(c,d)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${e.type}`]:!0,unsupported:e.unsupported}]),draggable:!e.unsupported,onDragstart:s},[t.createElementVNode("div",tD,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",nD,[t.createElementVNode("div",oD,t.toDisplayString(e.type),1),t.createElementVNode("div",rD,t.toDisplayString(t.unref(r)),1)])],42,eD))}}),[["__scopeId","data-v-38d156c9"]]),aD={class:"dk-node-panel"},lD={key:0,class:"title"},sD={class:"node-list"},cD={"aria-hidden":"true",class:"preview",inert:""},dD=ve(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{createNode:o}=We(),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 A,R,O;const d=s.currentTarget,{left:f,top:u,width:p,height:m}=d.getBoundingClientRect(),g=s.clientX-f,y=s.clientY-u;i.value=o({type:c}),await t.nextTick();const h=document.querySelector(`#${r}`)||d,_=h.cloneNode(!0);_.classList.add("dk-drag-snapshot");const{offsetWidth:w,offsetHeight:b}=h;Object.assign(_.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${b}px`}),document.body.appendChild(_);const k=g/p,E=y/m,C={ratioX:k,ratioY:E,offsetX:w*k,offsetY:b*E},S={action:"create-node",data:{type:c,anchor:C}};(A=s.dataTransfer)==null||A.setData(Ir,JSON.stringify(S)),(R=s.dataTransfer)==null||R.setData(`${Ir}/${c}`,c),(O=s.dataTransfer)==null||O.setDragImage(_,C.offsetX,C.offsetY),requestAnimationFrame(()=>{_.remove(),i.value=void 0})};return(s,c)=>{const d=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",aD,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",lD,[t.createVNode(d,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),t.createElementVNode("div",sD,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(xl)),f=>(t.openBlock(),t.createBlock(iD,{key:f,type:f,onDragstart:l},null,8,["type"]))),128))]),t.createElementVNode("div",cD,[t.createVNode(t.unref(nm),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(ug,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-eb57924c"]]);function uD(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=We(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var g;return((g=l.value.get("vault"))==null?void 0:g.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(g,y)=>{e(s.id,"output",g,!1);const h={...s.config,[g]:y};r(s.id,h)},removeVault:g=>{const y=En(s,"output",g);if(!y)return;const h=s.fields.output.length===1;o(s.id,y.id,!0,!1);const _=Gn(s.config,g);r(s.id,_,!h),h&&a(s.id)},updateVault:(g,y,h=!0)=>{const _={...s.config,[g]:y};r(s.id,_,h)},renameVault:(g,y,h=!0)=>{var k;const _=En(s,"output",g);if(!_)return;i(s.id,_.id,y,!1);const w=((k=s.config)==null?void 0:k[g])??"",b={...Gn(s.config,g),[y]:w};r(s.id,b,h)}}}const fD=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}}=De.useI18n(),i=t.inject(Le.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),g=e.validateName(m,e.isEditing);return l.value=g||"",g===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,g)=>{const y=t.resolveComponent("KInput"),h=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(Mo.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:e.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:u},{"form-prefix":t.withCtx(()=>[t.createVNode(y,{"model-value":a.value,"onUpdate:modelValue":[g[0]||(g[0]=_=>a.value=_),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(h,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),pD={class:"dk-vault-panel"},mD={class:"title"},gD={class:"vault-list"},hD={key:0,class:"vault-list-item"},yD={class:"vault-list-item-key"},_D={class:"vault-list-item-key-text"},bD=ve(t.defineComponent({__name:"VaultField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=ei(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=De.useI18n(),f=t.computed(()=>new Set(i.value.map(_=>_.key))),u=()=>{const _=a();c.value=_,s.value=_},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=_=>{if(!s.value)throw new Error("no selected entry");const w=s.value.key,b=w!==_.secretName,k=s.value.value!==_.secretRef,E=b||k;s.value.value=_.secretRef,s.value.key=_.secretName,c.value?r("add",_.secretName,_.secretRef):E&&r("update",_.secretName,_.secretRef,b?w:void 0),c.value=null,p()},g=_=>{s.value=_},y=_=>{l(_.id),r("remove",_.key)},h=(_,w)=>{var b;if(!_)return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(_)&&!(w&&_===((b=s.value)==null?void 0:b.key)))return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(_,w)=>{var C,S;const b=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",pD,[t.createElementVNode("h3",mD,t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(b,{appearance:"tertiary",class:"add-button",size:"small",onClick:u},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",gD,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),A=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:A.id},[A.key?(t.openBlock(),t.createElementBlock("div",hD,[t.createElementVNode("div",yD,[t.createVNode(t.unref(ke.KeyIcon),{color:t.unref(Co),size:16},null,8,["color"]),t.createElementVNode("div",_D,t.toDisplayString(A.key),1)]),t.createVNode(E,null,{items:t.withCtx(()=>[t.createVNode(k,{onClick:R=>g(A)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),t.createVNode(k,{danger:"",onClick:R=>y(A)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{color:t.unref(rr)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(fD,{"is-editing":!!s.value&&!c.value,"secret-name":(C=s.value)==null?void 0:C.key,"secret-ref":(S=s.value)==null?void 0:S.value,"validate-name":h,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function wD(){const{getSchema:e}=Ue();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=sn(n);return o.fields.forEach(r=>{const i=Object.keys(r)[0];if(i==="cache"){const a=r[i];r[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]},a.fields.forEach(l=>{const s=Object.keys(l)[0];if(s==="redis"){const c=l[s];l[s]={...c},delete l[s].required}})}}),o})}const kD={class:"dk-cache-panel"},CD={class:"title"},ED={key:0,class:"cache-item"},ND={class:"cache-item-key"},xD={class:"cache-item-key-text"},SD={class:"dk-resource-cache-form"},vD={key:1},AD={key:2,class:"dk-cache-inline-redis"},ID=ve(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const o=n,{getDefault:r,formData:i}=Ue(),a=wt("cache");if(a.error)throw new Error("No cache schema");const l=t.ref(!1),{i18n:{t:s}}=De.useI18n(),c=t.computed(()=>!(d.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),d=t.computed(()=>{var w;return(w=a.value.value)==null?void 0:w.strategy}),f=t.computed(()=>{var w;return(w=a.value.value)!=null&&w.redis?Cn.dump(a.value.value.redis,{indent:2,noRefs:!0}):""}),u=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},g=()=>{u(),a.value.value||(a.value.value=r("cache"),a.value.value.strategy="memory")},y=()=>{l.value=!1,o("update",i)},h=()=>{var w,b;d.value==="memory"&&((w=i.cache)!=null&&w.partial_id)&&((b=i.cache)==null||delete b.partial_id)};async function _({codeElement:w,language:b,code:k}){w.innerHTML=await Mg.codeToHtml(k,{lang:b,theme:"catppuccin-mocha",structure:"inline"})}return(w,b)=>{const k=t.resolveComponent("KButton"),E=t.resolveComponent("KDropdownItem"),C=t.resolveComponent("KDropdown"),S=t.resolveComponent("KLabel"),A=t.resolveComponent("KCodeBlock"),R=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",kD,[t.createElementVNode("h3",CD,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",ED,[t.createElementVNode("div",ND,[t.createVNode(t.unref(ke.DatabaseIcon),{color:t.unref(Co),size:t.unref(pi)},null,8,["color","size"]),t.createElementVNode("div",xD,t.toDisplayString(e.strategy),1)]),t.createVNode(C,null,{items:t.withCtx(()=>[t.createVNode(E,{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),t.createVNode(E,{danger:"",onClick:m},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:t.withCtx(()=>[t.createVNode(k,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{color:t.unref(rr)},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(k,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode(R,{"action-button-disabled":!c.value,"action-button-text":t.unref(s)("actions.save"),"max-width":"640px",title:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:l.value,onCancel:p,onProceed:y},{default:t.withCtx(()=>{var O,T;return[t.createElementVNode("div",SD,[t.createVNode(Vd,{items:[{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":h},null,8,["items"]),d.value==="memory"?(t.openBlock(),t.createBlock(ft,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),d.value==="redis"?(t.openBlock(),t.createElementBlock("div",vD,[t.createVNode(S,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(zs.RedisConfigurationSelector),{"model-value":(O=t.unref(i).cache)==null?void 0:O.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":b[0]||(b[0]=N=>t.unref(i).cache.partial_id=N)},null,8,["model-value"])])):t.createCommentVNode("",!0),d.value==="redis"&&!((T=t.unref(i).cache)!=null&&T.partial_id)&&f.value?(t.openBlock(),t.createElementBlock("div",AD,[t.createElementVNode("div",null,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),t.createVNode(A,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:_},null,8,["code"])])):t.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-103c3712"]]),PD={class:"dk-resources-panel"},TD=ve(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=wD(),o=t.ref(0),{addVault:r,removeVault:i,updateVault:a,renameVault:l,formData:s}=uD();function c(y,h,_){_&&_!==y&&l(_,y,!1),a(y,h)}const{state:d,commit:f}=We(),u=t.computed(()=>({cache:d.value.cacheConfig}));function p(y){d.value.cacheConfig=y.cache,f()}function m(){d.value.cacheConfig=void 0,f()}function g(){o.value++}return(y,h)=>(t.openBlock(),t.createElementBlock("div",PD,[t.createVNode(pt,{data:t.unref(s),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(bD,{name:"vault",onAdd:t.unref(r),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),h[0]||(h[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(pt,{key:`${o.value}`,data:u.value,schema:t.unref(n)},{default:t.withCtx(()=>{var _;return[t.createVNode(ID,{strategy:(_=u.value.cache)==null?void 0:_.strategy,onCancel:g,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),OD={class:"header"},$D={class:"title"},BD={class:"body"},VD={class:"panel"},RD=ve(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{sidePanelExpanded:o}=_i(),{propertiesPanelOpen:r,selectedNode:i}=We(),a=t.ref("nodes");function l(){r.value=!1}t.watch(i,c=>{c||l()});const s=t.ref(!1);return t.onMounted(()=>{s.value=!0}),(c,d)=>{const f=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:s.value}])},[t.createElementVNode("header",OD,[t.createElementVNode("h2",$D,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",BD,[t.createElementVNode("div",VD,[t.createVNode(f,{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=u=>a.value=u),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"]),a.value==="nodes"?(t.openBlock(),t.createBlock(dD,{key:0,"hide-title":""})):t.createCommentVNode("",!0),a.value==="resources"?(t.openBlock(),t.createBlock(TD,{key:1})):t.createCommentVNode("",!0)])])],2)}}}),[["__scopeId","data-v-e8c1849d"]]),DD=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock($t,{items:t.unref(Za)([...t.unref(qu)]),name:e.name},null,8,["items","name"]))}});function MD(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 LD(e){const n=e.path[2];return n==="output"||n==="outputs"}function mg(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function gg(e,n){const o=e.input!==void 0&&e.input!==null,r=mg(e.inputs);o&&r&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=e.output!==void 0&&e.output!==null,a=mg(e.outputs);i&&a&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function hg(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,d)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,d)=>{for(const f of MD(c,d)){const u=f.value.split(".",1)[0];if(a.has(u)||o.addIssue({code:"custom",message:`Unknown node "${u}" in connection "${f.value}"`,path:f.path}),LD(f)){const p=`${f.nodeName}->${u}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${u}" and "${u}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${u}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${u}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${u}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const FD=Y.z.enum(ju),UD=Y.z.enum(ko),yg=e=>ko.includes(e),Rs=Y.z.enum(Gu),_g=Rs.options;Y.z.union([Rs,FD]);const KD=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,bg=Y.z.string().min(1).max(255).regex(KD,"Invalid node name (snake_case / kebab-case only)").refine(e=>!yg(e),"Name clashes with reserved implicit node").brand(),pa=Y.z.union([UD,bg]),jD=Y.z.string().min(1).brand(),GD=["then","else"];Y.z.enum(GD);const rt=Y.z.string().min(1).max(255).refine(e=>{if(pa.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return pa.safeParse(o).success&&jD.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),qD=Y.z.object({body:rt,headers:rt,query:rt}).partial().strict(),zD=Y.z.object({headers:rt,body:rt}).partial().strict(),HD=Y.z.object({data:rt,key:rt,ttl:rt}).partial().strict(),wg=Y.z.enum(qu),gn=Y.z.object({type:Y.z.string(),name:bg,input:rt,inputs:Y.z.record(Y.z.string().min(1).max(255),rt).nullish(),output:rt,outputs:Y.z.record(Y.z.string().min(1).max(255),rt).nullish()}).loose().superRefine((e,n)=>{gg(e,n)}),YD=Y.z.object({type:Y.z.string(),name:Y.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}),_g.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${_g.join(", ")}`})}),WD=gn.safeExtend({type:Y.z.literal("call"),method:wg.nullish(),ssl_server_name:Y.z.string().min(1).nullish(),timeout:Y.z.number().int().min(0).max(2147483646).nullish(),url:Y.z.url(),inputs:qD.nullish(),outputs:Y.z.object({body:rt,headers:rt,status:rt}).partial().nullish()}).strict(),XD=gn.safeExtend({type:Y.z.literal("exit"),status:Y.z.number().int().min(200).max(599).nullish(),warn_headers_sent:Y.z.boolean().nullish(),inputs:zD.nullish(),output:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),ZD=gn.safeExtend({type:Y.z.literal("jq"),jq:Y.z.string().min(1).max(10240),outputs:Y.z.never().nullish()}).strict(),JD=gn.safeExtend({type:Y.z.literal("xml_to_json"),recognize_type:Y.z.boolean().nullish().default(!0),attributes_block_name:Y.z.string().min(1).max(32).nullish().default("#attr"),attributes_name_prefix:Y.z.string().min(1).max(32).nullish(),text_block_name:Y.z.string().min(1).max(32).nullish().default("#text"),text_as_property:Y.z.boolean().nullish().default(!1),xpath:Y.z.string().min(1).max(256).nullish(),inputs:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict().superRefine((e,n)=>{!e.attributes_block_name&&!e.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),QD=gn.safeExtend({type:Y.z.literal("json_to_xml"),attributes_block_name:Y.z.string().min(1).max(32).nullish().default("#attr"),attributes_name_prefix:Y.z.string().min(1).max(32).nullish(),root_element_name:Y.z.string().min(1).max(64).nullish(),text_block_name:Y.z.string().min(1).max(32).nullish().default("#text"),inputs:Y.z.record(Y.z.string().min(1).max(255),rt).nullish(),outputs:Y.z.never().nullish()}).strict().superRefine((e,n)=>{!e.attributes_block_name&&!e.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),eM=gn.safeExtend({type:Y.z.literal("property"),content_type:Y.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:Y.z.string().min(1),inputs:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),tM=gn.safeExtend({type:Y.z.literal("static"),values:Y.z.record(Y.z.string(),Y.z.unknown()),input:Y.z.never().nullish(),inputs:Y.z.never().nullish()}).strict(),nM=gn.safeExtend({type:Y.z.literal("cache"),bypass_on_error:Y.z.boolean().nullish(),inputs:HD.nullish(),outputs:Y.z.object({data:rt,hit:rt,miss:rt,stored:rt}).partial().nullish(),ttl:Y.z.number().int().gt(0).nullish()}).strict(),oM=gn.safeExtend({type:Y.z.literal("branch"),then:Y.z.array(pa).nullish(),else:Y.z.array(pa).nullish()}).strict(),rM=YD.pipe(Y.z.discriminatedUnion("type",[WD,XD,ZD,JD,QD,eM,tM,nM,oM])),iM=Y.z.record(Y.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),Y.z.string().min(1).max(4095)),aM=Y.z.object({dictionary_name:Y.z.string().nullish().default("kong_db_cache")}),lM=Y.z.object({host:Y.z.string().default("127.0.0.1"),port:Y.z.number().int().min(0).max(65535).default(6379)}),sM=Y.z.object({ip:Y.z.string().default("127.0.0.1"),port:Y.z.number().int().min(0).max(65535).default(6379)}),cM=Y.z.object({host:Y.z.string().nullish().default("127.0.0.1"),port:Y.z.number().int().min(0).max(65535).nullish().default(6379),connect_timeout:Y.z.number().int().min(0).max(2147483646).nullish().default(2e3),send_timeout:Y.z.number().int().min(0).max(2147483646).nullish().default(2e3),read_timeout:Y.z.number().int().min(0).max(2147483646).nullish().default(2e3),username:Y.z.string().nullish(),password:Y.z.string().nullish(),sentinel_username:Y.z.string().nullish(),sentinel_password:Y.z.string().nullish(),database:Y.z.number().int().nullish().default(0),keepalive_pool_size:Y.z.number().int().min(1).max(2147483646).nullish().default(256),keepalive_backlog:Y.z.number().int().min(0).max(2147483646).nullish(),sentinel_master:Y.z.string().nullish(),sentinel_role:Y.z.enum(["master","slave","any"]).nullish(),sentinel_nodes:Y.z.array(lM).min(1,{message:"sentinel_nodes must contain at least 1 item"}).nullish(),cluster_nodes:Y.z.array(sM).min(1,{message:"cluster_nodes must contain at least 1 item"}).nullish(),ssl:Y.z.boolean().default(!1).nullish(),ssl_verify:Y.z.boolean().default(!1).nullish(),server_name:Y.z.string().nullish(),cluster_max_redirections:Y.z.number().int().default(5).nullish(),connection_is_proxied:Y.z.boolean().default(!1).nullish(),timeout:Y.z.number().int().nullish(),sentinel_addresses:Y.z.array(Y.z.string()).min(1).nullish(),cluster_addresses:Y.z.array(Y.z.string()).min(1).nullish()}).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"]})}),dM=Y.z.object({strategy:Y.z.enum(["memory","redis"]).nullish(),memory:aM,redis:cM}),uM=Y.z.object({vault:iM.nullish(),cache:dM.nullish()});Y.z.array(Y.z.object({id:Y.z.string()})),Y.z.object({nodes:Y.z.array(rM).min(1,"At least one node is required"),debug:Y.z.boolean().nullish(),resources:uM.nullish()}).strict().superRefine((e,n)=>{hg(e,ko,n)});const kg=Rs.options,Ds=Y.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!yg(e),"Node name conflicts with reserved implicit node"),it=Y.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"),Cg=Y.z.object({body:it.nullish(),headers:it.nullish(),query:it.nullish()}).partial().strict(),Eg=Y.z.object({headers:it.nullish(),body:it.nullish()}).partial().strict(),Ng=Y.z.object({data:it.nullish(),key:it.nullish(),ttl:it.nullish()}).partial().strict(),fM={call:Cg,exit:Eg,cache:Ng};function pM(e){const n=fM[e];return n?Object.keys(n.shape):null}const hn=Y.z.object({type:Y.z.string(),name:Ds,input:it.nullish(),inputs:Y.z.record(Y.z.string(),it.nullish()).nullish(),output:it.nullish(),outputs:Y.z.record(Y.z.string(),it.nullish()).nullish()}).loose().superRefine((e,n)=>{gg(e,n)}),mM=Y.z.object({type:Y.z.string(),name:Y.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}),kg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${kg.join(", ")}`})}),gM=hn.safeExtend({type:Y.z.literal("call"),method:wg.nullish(),ssl_server_name:Y.z.string().nullish(),timeout:Y.z.union([Y.z.number(),Y.z.string()]).nullish(),url:Y.z.string().nullish(),inputs:Cg.nullish(),outputs:Y.z.object({body:it.nullish(),headers:it.nullish(),status:it.nullish()}).partial().nullish()}).strict(),hM=hn.safeExtend({type:Y.z.literal("exit"),status:Y.z.union([Y.z.number(),Y.z.string()]).nullish(),warn_headers_sent:Y.z.boolean().nullish(),inputs:Eg.nullish(),output:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),yM=hn.safeExtend({type:Y.z.literal("jq"),jq:Y.z.string().nullish(),outputs:Y.z.never().nullish()}).strict(),_M=hn.safeExtend({type:Y.z.literal("xml_to_json"),recognize_type:Y.z.boolean().nullish(),attributes_block_name:Y.z.string().nullish(),attributes_name_prefix:Y.z.string().nullish(),text_block_name:Y.z.string().nullish(),text_as_property:Y.z.boolean().nullish(),xpath:Y.z.string().nullish(),inputs:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),bM=hn.safeExtend({type:Y.z.literal("json_to_xml"),attributes_block_name:Y.z.string().nullish(),attributes_name_prefix:Y.z.string().nullish(),root_element_name:Y.z.string().nullish(),text_block_name:Y.z.string().nullish(),inputs:Y.z.record(Y.z.string(),it.nullish()).nullish(),outputs:Y.z.never().nullish()}).strict(),wM=hn.safeExtend({type:Y.z.literal("property"),content_type:Y.z.string().nullish(),property:Y.z.string().nullish(),inputs:Y.z.never().nullish(),outputs:Y.z.never().nullish()}).strict(),kM=hn.safeExtend({type:Y.z.literal("static"),values:Y.z.record(Y.z.string(),Y.z.unknown()).nullish(),input:Y.z.never().nullish(),inputs:Y.z.never().nullish()}).strict(),CM=hn.safeExtend({type:Y.z.literal("cache"),bypass_on_error:Y.z.boolean().nullish(),inputs:Ng.nullish(),outputs:Y.z.object({data:it.nullish(),hit:it.nullish(),miss:it.nullish(),stored:it.nullish()}).partial().nullish(),ttl:Y.z.union([Y.z.number(),Y.z.string()]).nullish()}).strict(),EM=hn.safeExtend({type:Y.z.literal("branch"),then:Y.z.array(Ds).nullish(),else:Y.z.array(Ds).nullish()}).strict(),NM=mM.pipe(Y.z.discriminatedUnion("type",[gM,hM,yM,_M,bM,wM,kM,CM,EM])),xM=Y.z.record(Y.z.string(),Y.z.string()),SM=Y.z.object({dictionary_name:Y.z.string().nullish()}),vM=Y.z.object(),AM=Y.z.object({strategy:Y.z.enum(["memory","redis"]).nullish(),memory:SM.nullish(),redis:vM.nullish()}),IM=Y.z.object({vault:xM.nullish(),cache:AM.nullish()}),xg=Y.z.object({nodes:Y.z.array(NM).nullish(),debug:Y.z.boolean().nullish(),resources:IM.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||hg(e,ko,n)}).nullish(),Sg=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{},nodeType:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Ue(),{i18n:o}=Ve(),r=t.computed(()=>{const i=n("inputs");if(!i)return[];const a=i.fields.map(s=>Object.keys(s)[0]);if(St(e.nodeType))return a;const l=pM(e.nodeType);return l===null?a:l.length===0?[]:K0(a,l)});return(i,a)=>(t.openBlock(),t.createBlock(Et,{"as-child":"",name:e.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock($t,{key:l,clearable:"","enable-filtering":"",items:e.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},t.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:t.withCtx(s=>[t.renderSlot(i.$slots,"item-label",t.mergeProps({ref_for:!0},s))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),PM=["data-testid"],TM={class:"dk-inputs-map-field-entry-body"},OM={class:"dk-inputs-map-field-entry-content"},$M=ve(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},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}=ei(o,r),{i18n:{t:c}}=Ve(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(E,C="key"){var S;d.value&&(await t.nextTick(),(S=d.value.querySelector(`[data-${C}-input="${E}"]`))==null||S.focus())}function g(){const{id:E}=a(),C=i.value.findIndex(({key:S})=>!S);m(C===-1?i.value.length-1:C),f.value=E}function y(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function h(E){p=E.key}function _(E){if(w(E)){E.key=p,delete u.value[E.id];return}if(E.id===f.value){if(E.key.trim()==="")return;r("add:field",E.key,E.value),f.value=null}else r("rename:field",p,E.key);p=E.key}function w(E){delete u.value[E.id];const C=o.fieldNameValidator("input",p,E.key);if(C)return u.value[E.id]=C,C}function b(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 S=t.resolveComponent("KAlert"),A=t.resolveComponent("KLabel"),R=t.resolveComponent("KInput"),O=t.resolveComponent("KSelect"),T=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(S,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(N,L)=>(t.openBlock(),t.createElementBlock("div",{key:N.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${L}`},[t.createVNode(A,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${L}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),t.createElementVNode("div",TM,[t.createElementVNode("div",OM,[t.createVNode(R,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${L}`,modelValue:N.key,"onUpdate:modelValue":[x=>N.key=x,x=>w(N)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":L,"data-testid":`ff-key-${t.unref(s).path.value}.${L}`,error:!!u.value[N.id],"error-message":u.value[N.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:x=>b(N),onChange:x=>_(N),onFocus:x=>h(N)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(O,{modelValue:N.value,"onUpdate:modelValue":x=>N.value=x,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${L}`,"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(N,(x==null?void 0:x.value)??null)},t.createSlots({_:2},[E.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:x})=>[t.renderSlot(E.$slots,"item-label",t.mergeProps({ref_for:!0},x),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(T,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${L}`,icon:"",onClick:x=>y(N)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,PM))),128)),t.createVNode(T,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-dda8b239"]]),BM={class:"dk-source-item"},ma=ve(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("span",BM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(gt)[e.item.type].icon),{color:t.unref(Co),size:t.unref(ir)},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),VM={key:1,class:"dk-inputs-field-or"},en=ve(t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{},nodeType:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=Ue(),{i18n:{t:i}}=Ve(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?Sg:$M:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function d(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function u(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref($e.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(r)("input")?(t.openBlock(),t.createBlock($t,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":t.withCtx(g=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(g)),()=>[t.createVNode(ma,{item:g},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",VM,[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($e.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),t.mergeProps({key:3,items:e.items,"key-order":e.fieldNames,name:"inputs"},l.value===Sg?{nodeType:e.nodeType}:{fieldNameValidator:e.fieldNameValidator},{"onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u}),{"item-label":t.withCtx(g=>[t.createVNode(ma,{item:g},null,8,["item"])]),_:1},16,["items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-f80a82e6"]]),RM={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"},DM={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 MM(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function Kt(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Do(e){const{i18n:{t:n}}=Ve(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function vg(e,n){const{i18n:{t:o}}=Ve();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function yn(e=0,n=1/0,o){const{i18n:{t:r}}=Ve();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function Ag(e){const{i18n:{t:n}}=Ve();return function(r){if(!MM(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 Ms(e,n){const{i18n:{t:o}}=Ve();return function(i){if(i==null)return;const a=Ag(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 Ls(e=-1/0,n=1/0,o){const{i18n:{t:r}}=Ve();return function(a){if(a==null)return;const l=Ag(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 LM(e,n){const{state:o}=We(),{i18n:{t:r}}=Ve();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function FM(e,n,o){const{i18n:{t:r}}=Ve();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function UM(){const{i18n:{t:e}}=Ve();return function(o){if(vl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Ig(e){const{i18n:{t:n}}=Ve(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Kt(Do(o),vg("identifier",o),UM(),LM(e,o))}function KM(e){const{i18n:{t:n}}=Ve(),{getNodeById:o}=We();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 Kt(Do(s),FM(i,o(e),l))(a)}}function jM(e){const n=t.ref({}),o=t.computed(()=>Object.values(n.value).every(l=>!l)),r={};Object.keys(e).forEach(l=>{const s=e[l],c=u=>{const p=typeof u=="function"?u():u,m=s(p);return n.value[l]=m,m},d=()=>{n.value[l]=void 0},f=u=>(d(),c(u));r[l]={handleChange:f,handleBlur:f,validate:f,isValid:t.computed(()=>n.value[l]===void 0),error:t.computed(()=>n.value[l])}});function i(){n.value={}}function a(l){var s;for(const c of Object.keys(e)){const d=l[c],f=typeof d=="function"?d():d;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function so(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=We(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>jM(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const g in a.value)m[g]=p[g];return m}function f(u,p){const m=()=>{const y=o(),h=s.value[u];h&&h.handleBlur(y[u])},g=()=>{p==null||p();const y=o(),h=s.value[u];h&&h.handleChange(y[u])};return t.computed(()=>{const y=s.value[u];return{validate:m,update:g,error:y?!y.isValid.value:!1,errorMessage:y?y.error.value??"":""}})}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function jt(e,n){const{state:o,renameNode:r,getNodeById:i,addField:a,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:d,connectEdge:f,invalidConfigNodeIds:u,commit:p,revert:m}=We(),{i18n:{t:g}}=Ve(),y=ag(),h=t.computed(()=>{const G=i(e);if(!G)throw new Error("Node not existed");return G}),_=t.computed(()=>{const K=o.value.edges.filter(F=>F.target===e).reduce((F,I)=>{var H,ee;const j=i(I.source),z=(H=Nn(j,"output",I.sourceField))==null?void 0:H.id,ae=(ee=Nn(h.value,"input",I.targetField))==null?void 0:ee.name,U=j.id+(z?`.${z}`:"");return ae?F.inputs={...F.inputs,[ae]:U}:F.input=U,F},{});return h.value.fields.input.forEach(F=>{K.inputs||(K.inputs={}),K.inputs[F.name]||(K.inputs[F.name]=null)}),{...h.value.config,...K,name:h.value.name}}),w=G=>{r(e,G??"",!0,`${e}:rename`)},b=(G,K=!0)=>{if(!n)throw new Error("getFormValue is not defined");const F=Gn(n(),["name","input","inputs"]),I=G?`update:${e}:${G}`:void 0;c(e,F,K,I)},k=(G,K)=>{const F=En(h.value,G,K);if(!F)throw new Error(`Field with name "${K}" not found in node "${h.value.name}"`);return F},E=(G,K,F)=>{const I=!!F;a(e,G,K,!I),I&&O(K,F)},C=(G,K,F)=>{const I=k(G,K).id;l(e,I,F)},S=(G,K)=>{const F=k(G,K).id;s(e,F)},A=t.computed(()=>o.value.edges.filter(G=>G.target===e&&!G.targetField)[0]),R=t.computed(()=>o.value.edges.filter(G=>G.target===e&&G.targetField)),O=async(G,K)=>{const F=K==null,I=k("input",G).id;if(F){const re=R.value.find(J=>J.targetField===I);re&&d(re.id);return}const{nodeId:j,fieldId:z}=Wu(K),ae=k("input",G).id,U=[];A.value&&(U.push(Or(A.value,i)),d(A.value.id,!1));const H=R.value.find(re=>re.targetField===I);H&&(U.push(Or(H,i)),d(H.id,!1)),f({source:j,sourceField:z,target:e,targetField:ae},!1);const ee=ws(j,z,e,ae,i),_e=U[0]&&ee?U[0][1]===ee[1]:!1;if(p(),_e||U.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ee],U)||m()},T=async G=>{if(G==null){A.value&&d(A.value.id);return}const F=[];for(const U of R.value)F.push(Or(U,i)),d(U.id,!1);A.value&&d(A.value.id,!1);const{nodeId:I,fieldId:j}=Wu(G);f({source:I,sourceField:j,target:e,targetField:void 0},!1);const z=ws(I,j,e,void 0,i);if(p(),F.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[z],F)||m()},N=G=>{const K=[...o.value.edges,{source:G,target:e}];return $l(yi(K))},L=t.computed(()=>{var K,F;const G=[];for(const I of o.value.nodes)if((K=No(I.type).io)!=null&&K.output&&I.fields.output&&I.id!==e&&!(I.type==="property"&&!_s((F=I.config)==null?void 0:F.property))&&!N(I.id)&&!(h.value.phase==="request"&&I.phase==="response")&&!(I.type==="vault"&&I.fields.output.length===0)){G.push({value:I.id,label:I.name,type:I.type});for(const z of I.fields.output)G.push({value:`${I.id}.${z.id}`,label:`${I.name}.${z.name}`,type:I.type})}return G}),x=t.computed(()=>h.value.fields.input.map(G=>G.name)||[]);function B(G){u.value.delete(e),G||u.value.add(e)}const P=KM(e);function q(G,K,F){const I=i(e);if(!I)throw new Error("Node not found when validating field name");const j=En(I,G,K);return P(G,F,j==null?void 0:j.id)}return{formData:_,inputOptions:L,inputEdge:A,inputsEdges:R,inputsFieldNames:x,currentNode:h,setName:w,setConfig:b,addField:E,renameFieldByName:C,removeFieldByName:S,setInputs:O,setInput:T,nameValidator:Ig(e),fieldNameValidator:q,toggleNodeValid:B}}function Gt(e){const{getSchema:n}=Ue();return t.computed(()=>{if(St(e))switch(e){case"response":return DM;case"service_request":return RM}try{const r=n().fields.find(d=>Zr(d,"config"));if(!r)throw new Error("Config field not found in schema.");const a=r.config.fields.find(d=>Zr(d,"nodes"));if(!a)throw new Error("Nodes field not found in config schema.");const c=a.nodes.elements.subschema_definitions[e];if(!c)throw new Error(`Subschema "${e}" not found in the schema.`);return c}catch(o){throw new Error(`Failed to get subschema "${e}": ${o.message}`)}})}const _n=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ve(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 0?"":f});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function d(){s=a.value.trim()}return t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),GM=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Ve(),o=t.useTemplateRef("form"),r=Gt("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=jt(e.nodeId,()=>o.value.getValue()),{createFieldHandler:g}=so({validationConfig:{url:Kt(Do({fieldName:"URL"}),vg("url",{fieldName:"URL"})),timeout:Kt(Ms("integer"),Ls(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),y=g("url",()=>l("url")),h=g("timeout",()=>l("timeout"));return(_,w)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(_n,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(kt,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"url",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(DD,{name:"method",onUpdate:w[0]||(w[0]=k=>t.unref(l)())}),t.createVNode(Wn,{error:t.unref(h).error,"error-message":t.unref(h).errorMessage,name:"timeout",onBlur:t.unref(h).validate,"onUpdate:modelValue":t.unref(h).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(kt,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=k=>t.unref(l)("ssl_server_name"))}),t.createVNode(en,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"node-type":"call","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),qM=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=jt(e.nodeId,()=>n.value.getValue());return(d,f)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(en,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"node-type":"service_request","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"]))}}),zM=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=jt(e.nodeId,()=>n.value.getValue());return(d,f)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(en,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"node-type":"response","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"]))}}),Pg={jqlang:"https://jqlang.org/manual/"},HM=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=Ve(),r=t.useTemplateRef("form"),i=Gt("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:g,nameValidator:y,toggleNodeValid:h,fieldNameValidator:_}=jt(e.nodeId,()=>r.value.getValue());function w(A,R){u("input",A,R)}function b(A){p("input",A)}function k(A,R){m("input",A,R)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=so({validationConfig:{jq:Kt(Do({fieldName:E}),yn(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:h}),S=C("jq",()=>s("jq"));return(A,R)=>{const O=t.resolveComponent("KLabel"),T=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(_n,{name:t.unref(a).name,validate:t.unref(y),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(O,{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(kt,{autosize:"",error:t.unref(S).error,"error-message":t.unref(S).errorMessage,label:t.unref(E),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(S).validate,"onUpdate:modelValue":t.unref(S).update},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(T,{"hide-icon":"",href:t.unref(Pg).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Pg).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(en,{"field-name-validator":t.unref(_),"field-names":t.unref(g),items:t.unref(c),"node-type":"jq","onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":k},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),YM=ve(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},name:{}},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}=ei(o,r,!1),{i18n:d}=Ve(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(E,C="key"){var S;f.value&&(await t.nextTick(),(S=f.value.querySelector(`[data-${C}-input="${E}"]`))==null||S.focus())}function g(){const E=l(),C=a.value.findIndex(({key:S})=>!S);m(C===-1?a.value.length-1:C),u.value=E}function y(E){var C;E.id===((C=u.value)==null?void 0:C.id)&&(u.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function h(E){p=E.key}function _(E){var C;if(b(E)){E.key=p,delete i.value[E.id];return}if(E.id===((C=u.value)==null?void 0:C.id)){if(E.key.trim()==="")return;u.value=null,r("add:field",E.key,E.value)}else r("rename:field",p,E.key);p=E.key}function w(E,C){var A;if(C.id===((A=u.value)==null?void 0:A.id))return;const S=E.target.value.trim();r("change:value",C.key,S)}function b(E){delete i.value[E.id];const C=o.fieldNameValidator("output",p,E.key);if(C)return i.value[E.id]=C,C}function k(E){b(E)}return t.watchEffect(()=>{u.value&&!a.value.some(E=>E.id===u.value.id)&&a.value.push(u.value)}),(E,C)=>{const S=t.resolveComponent("KAlert"),A=t.resolveComponent("KLabel"),R=t.resolveComponent("KButton"),O=t.resolveComponent("KInput"),T=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(S,{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(A,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(N,L)=>(t.openBlock(),t.createBlock(T,{key:N.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${L}`},{actions:t.withCtx(()=>[t.createVNode(R,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${L}`,icon:"",onClick:x=>y(N)},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(O,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${L}`,modelValue:N.key,"onUpdate:modelValue":[x=>N.key=x,x=>b(N)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":L,"data-testid":`ff-key-${t.unref(c).path.value}.${L}`,error:!!i.value[N.id],"error-message":i.value[N.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:x=>k(N),onChange:x=>_(N),onFocus:x=>h(N)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(O,{modelValue:N.value,"onUpdate:modelValue":x=>N.value=x,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${L}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:x=>w(x,N)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(R,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!u.value,onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-5e17f8cb"]]);function WM(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 ga(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 XM(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 ZM=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=We(),{fieldNameValidator:c}=jt(e.nodeId),d=Gt("static"),f=Ig(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(k=>k.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const g=t.computed(()=>{var R;if(!u.value)return{};const b=((R=u.value.config)==null?void 0:R.values)??{},k={},E=o(u.value.id).map(O=>O.sourceField).filter(Boolean).map(O=>Nn(u.value,"output",O)).map(O=>O==null?void 0:O.name).filter(Boolean),C=u.value.fields.output.map(O=>O.name),S=Object.keys(b);return new Set([...S,...E,...C]).forEach(O=>{if(O in b){k[O]=b[O];return}k[O]=""}),{name:u.value.name,values:WM(k)}});function y(b,k){if(!u.value)throw new Error("No selected node");const E=k!==void 0;if(r(e.nodeId,"output",b,!E),E){const C={values:ga({...g.value.values,[b]:k})};l(e.nodeId,C)}}function h(b,k){if(!u.value)throw new Error("No selected node");const E=En(u.value,"output",b);if(!E)throw new Error("No field found to rename");const C={values:ga(XM(g.value.values??{},b,k))};l(e.nodeId,C,!1),i(e.nodeId,E.id,k)}function _(b){var C;if(!u.value)throw new Error("No selected node");const k=En(u.value,"output",b);if(!k)throw new Error("No field found to delete");a((C=u.value)==null?void 0:C.id,k.id,!0,!1);const E={values:ga({...g.value.values})};delete E.values[b],l(e.nodeId,E)}function w(b,k){if(!u.value)throw new Error("No selected node");const E={...g.value.values};E[b]=k;const C={values:ga(E)};l(e.nodeId,C)}return(b,k)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:g.value,schema:t.unref(d)},{default:t.withCtx(()=>{var E;return[t.createVNode(_n,{name:((E=u.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(YM,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":y,"onChange:value":w,"onRemove:field":_,"onRename:field":h},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),JM={class:"dk-kong-property-item"},QM={class:"property-type"},eL={class:"property-badges"},tL=ve(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=Ve(),r=e,i=n,{formData:a}=Ue(),l=t.ref(Pr(a.property)),s=t.computed(()=>Tr(a.property)),c=t.ref(ys(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(io).map(([m])=>{var h;const g=Tr(m)?(h=a.property)==null?void 0:h.startsWith(m.replace(Vo,"")):a.property===m;return{label:g&&c.value?m.replace(Vo,c.value):m,value:m,selected:g}}));function u(m){const g=na.find(y=>{var h;return(h=a.property)==null?void 0:h.startsWith(y)});g&&(a.property=g+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Pr(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Pr(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=ys(m),l.value=Pr(m)}),(m,g)=>{const y=t.resolveComponent("KBadge"),h=t.resolveComponent("KSelect"),_=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(h,{key:d.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=w=>e.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",JM,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",QM,t.toDisplayString(t.unref(io)[w.value].dataType),1)]),t.createElementVNode("div",eL,[t.unref(io)[w.value].readable?(t.openBlock(),t.createBlock(y,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(io)[w.value].writable?(t.openBlock(),t.createBlock(y,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(_,{key:0,"model-value":c.value,"onUpdate:modelValue":[g[1]||(g[1]=w=>c.value=w),u],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=w=>e.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),nL=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=We(),a=Gt("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:g,fieldNameValidator:y}=jt(e.nodeId,()=>n.value.getValue()),h=t.computed(()=>bs(l.value.property));function _(b){var E;const k=(E=o.value)==null?void 0:E.id;if(!k)throw new Error("Expected selectedNode to be defined");_s(b)||i(k,!1),bs(b)||r(k,!1),c()}const{fields:w}=so({validationConfig:()=>({property:Do({fieldName:"Property"}),key:Tr(l.value.property)?Do({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:ys(l.value.property)}),toggleNodeValid:g});return(b,k)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(_n,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode($t,{name:"content_type",onUpdate:k[0]||(k[0]=E=>t.unref(c)())}),t.createVNode(tL,{validators:t.unref(w),"onUpdate:modelValue":_,"onUpdate:propertyKey":k[1]||(k[1]=E=>t.unref(c)("property-key"))},null,8,["validators"]),h.value?(t.openBlock(),t.createBlock(en,{key:0,"field-name-validator":t.unref(y),"field-names":t.unref(p),items:t.unref(d),"node-type":"property","onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),oL=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=jt(e.nodeId,()=>n.value.getValue()),{createFieldHandler:m}=so({validationConfig:{status:Kt(Ms("integer",{fieldName:"Status"}),Ls(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),g=m("status",()=>a("status"));return(y,h)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(_n,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Wn,{error:t.unref(g).error,"error-message":t.unref(g).errorMessage,name:"status",onBlur:t.unref(g).validate,"onUpdate:modelValue":t.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(mo,{name:"warn_headers_sent","onUpdate:modelValue":h[0]||(h[0]=_=>t.unref(a)())}),t.createVNode(en,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"node-type":"exit","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 rL(e){const n=jt(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=We(),{i18n:{t:l}}=Ve(),s=ag(),c=al(),d=t.computed(()=>{var b;const _={...n.formData.value},w=lr(((b=n.currentNode.value)==null?void 0:b.type)||"branch");for(const k of w)(!(k in _)||_[k]==null)&&(_[k]=[]);return _});function f(_,w,b){const k=r(_),E=r(b),C=k?`${k.name}.${w}`:`${_}.${w}`,S=E?E.name:b;return[C,S]}function u(_){return(_==null?[]:Array.isArray(_)?_:[_]).filter(w=>Il(w))}function p(_,w){return i.wouldCreateCycle(_,w)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(_,w,b){const k=[],E=[],C=[];for(const S of b){const A=i.findMembership(S);if(!A||A.ownerId===_&&A.branch===w)continue;const R=i.getMembers(A.ownerId,A.branch).filter(O=>O!==S);C.push({ownerId:A.ownerId,branch:A.branch,members:R}),k.push(f(_,w,S)),E.push(f(A.ownerId,A.branch,S))}return{conflictUpdates:C,addedAssignments:k,removedAssignments:E}}function g(_,w,b,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(_,w,b,{commit:!1})||E,E}async function y(_,w){const b=n.currentNode.value,k=u(w),E=i.prepareMembers(b.id,_,k),C=i.getMembers(b.id,_);if(Pl(C,E))return!0;const S=E.filter(N=>!C.includes(N));for(const N of S)if(p(b.id,N))return!1;const{conflictUpdates:A,addedAssignments:R,removedAssignments:O}=m(b.id,_,S);return A.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),R,O)?!1:(g(b.id,_,E,A)&&a(),!0)}const h=t.computed(()=>{const _=n.currentNode.value;return!_||!i?[]:o.value.nodes.filter(w=>w.id!==e&&!St(w.type)&&w.phase===_.phase&&!i.wouldCreateCycle(_.id,w.id)).map(w=>({value:w.id,label:w.name,type:w.type}))});return{...n,formData:d,branchOptions:h,updateBranchMembers:y}}const iL=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Ve(),o=Gt("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:d,setInputs:f,inputsFieldNames:u,fieldNameValidator:p,updateBranchMembers:m}=rL(e.nodeId);async function g(y,h){await m(y,h)||(r.value+=1)}return(y,h)=>(t.openBlock(),t.createBlock(pt,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(_n,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref($e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode($t,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:h[0]||(h[0]=_=>g("then",_))},{"item-label":t.withCtx(_=>[t.createVNode(ma,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode($t,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:h[1]||(h[1]=_=>g("else",_))},{"item-label":t.withCtx(_=>[t.createVNode(ma,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode(en,{"field-name-validator":t.unref(p),"field-names":t.unref(u),items:t.unref(l),"node-type":"branch","onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),aL=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("cache"),{i18n:{t:r}}=Ve(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=jt(e.nodeId,()=>n.value.getValue()),{createFieldHandler:g}=so({validationConfig:()=>({ttl:Kt(Ms("integer",{fieldName:"TTL"}),Ls(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),y=g("ttl",()=>l("ttl"));return(h,_)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(_n,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref($e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(mo,{name:"bypass_on_error","onUpdate:modelValue":_[0]||(_[0]=w=>t.unref(l)("bypass_on_error"))}),t.createVNode(Wn,{error:t.unref(y).error,"error-message":t.unref(y).errorMessage,name:"ttl",onBlur:t.unref(y).validate,"onUpdate:modelValue":t.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"node-type":"cache","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),lL=t.defineComponent({__name:"NodeFormXmlToJson",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("xml_to_json"),{i18n:{t:r}}=Ve(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=jt(e.nodeId,()=>n.value.getValue()),g=r("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),y=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:h}=so({validationConfig:()=>({attributes_block_name:Kt(()=>y()?void 0:g,A=>{if(A)return yn(1,32,{fieldName:"Attributes block name"})(A)}),attributes_name_prefix:Kt(()=>y()?void 0:g,A=>{if(A)return yn(1,32,{fieldName:"Attributes name prefix"})(A)}),text_block_name:yn(1,32,{fieldName:"Text block name"}),xpath:yn(1,256,{fieldName:"XPath"})}),getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,text_block_name:i.value.text_block_name,xpath:i.value.xpath}),toggleNodeValid:p}),_=h("attributes_block_name",()=>l("attributes_block_name")),w=h("attributes_name_prefix",()=>l("attributes_name_prefix")),b=h("text_block_name",()=>l("text_block_name")),k=h("xpath",()=>l("xpath")),E=()=>{_.value.validate(),w.value.validate()},C=()=>{_.value.update(),w.value.validate()},S=()=>{w.value.update(),_.value.validate()};return(A,R)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(_n,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref($e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(mo,{name:"recognize_type","onUpdate:modelValue":R[0]||(R[0]=O=>t.unref(l)("recognize_type"))}),t.createVNode(kt,{error:t.unref(_).error,"error-message":t.unref(_).errorMessage,name:"attributes_block_name",onBlur:E,"onUpdate:modelValue":C},null,8,["error","error-message"]),t.createVNode(kt,{error:t.unref(w).error,"error-message":t.unref(w).errorMessage,name:"attributes_name_prefix",onBlur:E,"onUpdate:modelValue":S},null,8,["error","error-message"]),t.createVNode(kt,{error:t.unref(b).error,"error-message":t.unref(b).errorMessage,name:"text_block_name",onBlur:t.unref(b).validate,"onUpdate:modelValue":t.unref(b).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(mo,{name:"text_as_property","onUpdate:modelValue":R[1]||(R[1]=O=>t.unref(l)("text_as_property"))}),t.createVNode(kt,{error:t.unref(k).error,"error-message":t.unref(k).errorMessage,name:"xpath",onBlur:t.unref(k).validate,"onUpdate:modelValue":t.unref(k).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"node-type":"xml_to_json","onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),sL=t.defineComponent({__name:"NodeFormJsonToXml",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Gt("json_to_xml"),{i18n:{t:r}}=Ve(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,addField:f,removeFieldByName:u,renameFieldByName:p,inputsFieldNames:m,nameValidator:g,toggleNodeValid:y,fieldNameValidator:h}=jt(e.nodeId,()=>n.value.getValue()),_=r("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),w=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:b}=so({validationConfig:{attributes_block_name:Kt(()=>w()?void 0:_,yn(1,32,{fieldName:"Attributes block name"})),attributes_name_prefix:Kt(()=>w()?void 0:_,yn(1,32,{fieldName:"Attributes name prefix"})),root_element_name:yn(1,64,{fieldName:"Root element name"}),text_block_name:yn(1,32,{fieldName:"Text block name"})},getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,root_element_name:i.value.root_element_name,text_block_name:i.value.text_block_name}),toggleNodeValid:y}),k=b("attributes_block_name",()=>l("attributes_block_name")),E=b("attributes_name_prefix",()=>l("attributes_name_prefix")),C=b("root_element_name",()=>l("root_element_name")),S=b("text_block_name",()=>l("text_block_name"));function A(){k.value.validate(),E.value.validate()}function R(){k.value.update(),E.value.validate()}function O(){E.value.update(),k.value.validate()}function T(x,B){f("input",x,B)}function N(x){u("input",x)}function L(x,B){p("input",x,B)}return(x,B)=>(t.openBlock(),t.createBlock(pt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(_n,{name:t.unref(i).name,validate:t.unref(g),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref($e.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(kt,{error:t.unref(k).error,"error-message":t.unref(k).errorMessage,name:"attributes_block_name",onBlur:A,"onUpdate:modelValue":R},null,8,["error","error-message"]),t.createVNode(kt,{error:t.unref(E).error,"error-message":t.unref(E).errorMessage,name:"attributes_name_prefix",onBlur:A,"onUpdate:modelValue":O},null,8,["error","error-message"]),t.createVNode(kt,{error:t.unref(C).error,"error-message":t.unref(C).errorMessage,name:"root_element_name",onBlur:t.unref(C).validate,"onUpdate:modelValue":t.unref(C).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(kt,{error:t.unref(S).error,"error-message":t.unref(S).errorMessage,name:"text_block_name",onBlur:t.unref(S).validate,"onUpdate:modelValue":t.unref(S).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(en,{"field-name-validator":t.unref(h),"field-names":t.unref(m),items:t.unref(s),"node-type":"json_to_xml","onAdd:field":T,"onChange:input":t.unref(d),"onChange:inputs":t.unref(c),"onRemove:field":N,"onRename:field":L},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),cL=["innerHTML"],dL={key:1,class:"branch-note"},uL={class:"branch-label"},fL={class:"branch-text"},pL=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${sm}px`},offsetTop:{default:`${zT}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{t:n}=Xe.createI18n("en-us",Qe),{getNodeById:o,branchGroups:r}=We(),i=t.computed(()=>e.nodeId&&o(e.nodeId)),a=t.computed(()=>{if(e.nodeId)return r.findMembership(e.nodeId)}),l=t.computed(()=>{if(!a.value)return"";const d=o(a.value.ownerId);return d?`${d.name}.${a.value.branch}`:""});function s(){e.nodeId&&r.removeMember(e.nodeId)}const c=t.computed(()=>{var d;switch((d=i.value)==null?void 0:d.type){case"call":return GM;case"service_request":return qM;case"response":return zM;case"jq":return HM;case"static":return ZM;case"property":return nL;case"exit":return oL;case"branch":return iL;case"cache":return aL;case"xml_to_json":return lL;case"json_to_xml":return sL;default:return null}});return(d,f)=>(t.openBlock(),t.createBlock(t.unref($e.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":e.maxWidth,"offset-top":e.offsetTop,visible:e.visible,"z-index":t.unref(qT),onClose:f[0]||(f[0]=u=>d.$emit("close"))},t.createSlots({default:t.withCtx(()=>[i.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(xt)(i.value.type)},null,8,cL)):t.createCommentVNode("",!0),a.value?(t.openBlock(),t.createElementBlock("div",dL,[t.createElementVNode("span",uL,[t.createVNode(t.unref(ke.ArrowSplitIcon),{color:t.unref(Co),size:t.unref(ir)},null,8,["color","size"]),t.createElementVNode("span",fL,t.toDisplayString(l.value),1)]),t.createVNode(t.unref($e.KTooltip),{placement:"top",text:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:t.withCtx(()=>[t.createVNode(t.unref($e.KButton),{appearance:"none","aria-label":t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:s},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):t.createCommentVNode("",!0),c.value?(t.openBlock(),t.createBlock(t.unref(c),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(dg,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),mL=ve(pL,[["__scopeId","data-v-6b2b83cd"]]),gL={class:"dk-editor-content"},hL={class:"main"},yL=ve(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=We();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",gL,[t.createVNode(t.unref(RD)),t.createElementVNode("div",hL,[t.createVNode(QR)]),t.createVNode(mL,{"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"]]),_L={key:0,class:"dk-editor-modal"},bL=ve(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({v8758bbfe:`${t.unref(GT)}px`,v30e03211:`${t.unref(lm)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=We();lR(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=Ye.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",_L,[t.createVNode(HR,{class:"nav",onBack:l}),t.createVNode(yL,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(jR,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),wL={class:"dk-flow-editor"},kL={class:"flow-panels-container"},CL={class:"overlay"},EL=ve(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Xe.createI18n("en-us",Qe),{formData:r}=Ue(),i=n;function a(c,d,f,u){const p={...r.config,nodes:c};f!==void 0&&(p.resources=f);const m={...r.__ui_data,...d};r.config=p,r.__ui_data=m,u!=null?r.partials=[{id:u}]:r.partials&&(r.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=af(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),ax({enabled:l}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",wL,[t.createElementVNode("div",kL,[t.createVNode(Vs,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",CL,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=u=>l.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(ke.ExpandIcon))]),_:1})])]),t.createVNode(bL,{open:t.unref(l),"onUpdate:open":d[1]||(d[1]=u=>t.isRef(l)?l.value=u:null)},null,8,["open"])])}}}),[["__scopeId","data-v-82ca6e78"]]),NL=["innerHTML"],xL={class:"dk-option-label"},SL=["innerHTML"],vL=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},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const{t:n}=Xe.createI18n("en-us",Qe),o=e,r=t.inject(Le.FORMS_CONFIG),i=t.ref(!1);t.onMounted(()=>{i.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:a}=_i(),l=t.computed(()=>r.app!=="konnect"||d.value===!1?"code":a.value),s=t.computed(()=>r.app==="kongManager"||l.value==="flow"?"form":"code"),c={flow:ke.DesignIcon,code:ke.CodeblockIcon},d=t.ref(!0),f=t.ref(""),u=t.computed(()=>{const k=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return k[0].disabled=!d.value,k}),p=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""}}),m=t.computed(()=>d.value?"":n("plugins.free-form.datakit.flow_editor.disabled_tooltip",{reason:f.value,code:k=>`<code>${V0(k)}</code>`}));t.watch(l,()=>{var k;(k=o.onValidityChange)==null||k.call(o,{model:"config",valid:!0})});function g(){var k;(k=o.onValidityChange)==null||k.call(o,{model:"config",valid:!0})}function y(){g()}function h(k){return k.map(E=>typeof E=="number"?`[${E}]`:k.length&&typeof E=="string"&&E.includes(".")?`["${E}"]`:`.${E}`).join("").replace(/^\./,"")}function _(k){return k.issues.map(E=>`${h(E.path)} - ${E.message}`).join("; ")}function w(k){if(g(),r.app!=="konnect")return;const E=k==null?void 0:k.config,{success:C,error:S}=xg.safeParse(E);f.value=C||!S?"":_(S),d.value=C}function b(k){var E;f.value=k,d.value=!1,(E=o.onValidityChange)==null||E.call(o,{model:"config",valid:!1,error:k})}return(k,E)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(r).app==="konnect"?(t.openBlock(),t.createBlock(t.Teleport,{key:0,disabled:!i.value,to:"#plugin-form-page-actions"},[t.createVNode(t.unref($e.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":l.value,options:u.value,"onUpdate:modelValue":E[0]||(E[0]=C=>a.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(t.unref($e.KTooltip),{disabled:d.value||C.value!=="flow"},{content:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:m.value},null,8,NL)]),default:t.withCtx(()=>[t.createElementVNode("div",xL,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(c[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled"])]),_:1},8,["model-value","options"])],8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(Md,t.mergeProps(o,{class:"dk-form","editor-mode":s.value}),{"code-editor":t.withCtx(()=>[t.createVNode(Ku,{class:"code-editor",editing:o.isEditing,onChange:w,onError:b},null,8,["editing"])]),"plugin-config-title":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.plugin_config.title")),1)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:p.value},null,8,SL)]),default:t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(EL,{key:0,"is-editing":o.isEditing,onChange:y},null,8,["is-editing"])):l.value==="code"&&t.unref(r).app==="kongManager"?(t.openBlock(),t.createBlock(Ku,{key:1,class:"code-editor",editing:o.isEditing,onChange:w,onError:b},null,8,["editing"])):t.createCommentVNode("",!0)]),_:1},16,["editor-mode"])],64))}}),[["__scopeId","data-v-81b23a63"]]),Tg=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))},Og=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},AL=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=De.useI18n(),l={prepareFormData:c=>{var f,u;const d=Kn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Og(p.headers),Og(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=Kn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Tg(p.headers),Tg(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(pt,{config:l,data:e.data,schema:e.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default_acl:t.withCtx(({name:f})=>[t.createVNode(Xo,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.default_acl_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),tools:t.withCtx(({name:f})=>[t.createVNode(Xo,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(oi)]),_:1},8,["data","schema"]))}}),IL=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(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(rl,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(AL,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),PL=ve(t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n,createComputedRenderRules:o}=Ue(),r=o("config"),i=t.computed(()=>{var y;const a=[],l=[],s=new Set,d=n().fields.find(h=>Object.keys(h)[0]==="config");if(!d||!("config"in d))return{defaultVisible:a,advanced:l};const f=d.config;f.entity_checks&&f.entity_checks.forEach(h=>{var w,b;let _;"at_least_one_of"in h?_=h.at_least_one_of:"conditional"in h&&((w=n(Ze("config",h.conditional.if_field)))!=null&&w.required)&&h.conditional.then_match.required?_=[h.conditional.if_field,h.conditional.then_field]:"conditional_at_least_one_of"in h&&((b=n(Ze("config",h.conditional_at_least_one_of.if_field)))!=null&&b.required)&&(_=[h.conditional_at_least_one_of.if_field,...h.conditional_at_least_one_of.then_at_least_one_of]),_==null||_.forEach(k=>s.add(k))});const u=((y=r.value)==null?void 0:y.bundles)??[],p=new Map;for(const h of u)for(let _=1;_<h.length;_++)p.set(h[_],h[_-1]);const m=h=>{const _=p.get(h);return _?m(_):h},g=new Map;for(const h of f.fields){const _=Object.keys(h)[0];g.set(_,m(_))}for(const h of f.fields){const _=Object.keys(h)[0];if(g.get(_)!==_)continue;let b;h[_].required||s.has(_)?b=a:b=l,b.push(_)}for(const h of f.fields){const _=Object.keys(h)[0],w=g.get(_);w!==_&&(a.includes(w)?a:l).push(_)}return{defaultVisible:a,advanced:l}});return(a,l)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(Et,{"as-child":"",name:"config",omit:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(oi,{class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(Et,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1})],64))}}),[["__scopeId","data-v-e757fbd3"]]),$g=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:IL,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},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const n=e,o=t.useSlots();return t.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Md,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(()=>[t.createVNode(PL)]),_:1},16))}}),DatakitForm:vL,RequestCalloutForm:hC,ServiceProtectionForm:WC},Symbol.toStringTag,{value:"Module"}));function TL(e,n){const o=It[e];if(!o||!o.fieldRules)return n;const r=OL(o.fieldRules),i={...n};return i.fields=i.fields.map(a=>Object.keys(a)[0]==="config"?{config:{...a.config,entity_checks:[...a.config.entity_checks||[],...r]}}:a),i}function OL(e){const n=[],o=r=>r.startsWith("config.")?r.substring(7):r;return e.atLeastOneOf&&e.atLeastOneOf.forEach(r=>{n.push({at_least_one_of:r.map(o)})}),e.onlyOneOf&&e.onlyOneOf.forEach(r=>{n.push({mutually_exclusive:r.map(o)})}),e.mutuallyRequired&&e.mutuallyRequired.forEach(r=>{n.push({mutually_required:r.map(o)})}),e.onlyOneOfMutuallyRequired&&e.onlyOneOfMutuallyRequired.forEach(r=>{if(r.forEach(i=>{n.push({mutually_required:i.map(o)})}),r.length>1)for(let i=0;i<r.length;i++)for(let a=i+1;a<r.length;a++){const l=r[i].map(o),s=r[a].map(o);l.forEach(c=>{s.forEach(d=>{n.push({mutually_exclusive:[c,d]})})})}}),n}const $L={class:"kong-ui-entities-plugin-form"},BL={key:1,class:"entity-form"},VL={class:"plugin-config-empty-state"},RL=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,default:void 0}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var _e,be;const o=Object.keys(Le.sharedForms),r=Object.keys($g);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}=he.useAxios((_e=a.config)==null?void 0:_e.axiosRequestConfig),{parseSchema:s}=De.useSchemas({entityId:((be=a.entityMap.focusedEntity)==null?void 0:be.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:d,dismissField:f,isObjectEmpty:u,unsetNullForeignKey:p}=De.usePluginHelpers(),m=De.useExperimentalFreeForms(),{objectsAreEqual:g}=he.useHelpers(),{i18n:{t:y}}=Ve(),h=re=>a.config.app==="konnect"?re.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?re.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):re,_=(re,J)=>{let te=`${a.config.apiBaseUrl}${ze.form[a.config.app].entityGetOne}`;return te=h(te),te=te.replace(/{entity}/gi,re),te=te.replace(/{id}/gi,J),te},w=re=>{let J=`${a.config.apiBaseUrl}${ze.form[a.config.app].entityGetAll}`;return J=h(J),J=J.replace(/{entity}/gi,re),J},b=(re,J,te)=>{const se=_(re,J);return l.get(se,te)},k=(re,J)=>{const te=w(re);return a.config.app==="konnect"?l.get(te).then(se=>{const{data:{data:V}}=se;if(delete J.size,delete J.offset,V.length&&Object.keys(J).length===1){const v=Object.keys(J)[0],M=V.filter(D=>D[v]?!!D[v].toLowerCase().includes(J[v].toLowerCase()):!1);se.data.data=M}return se}):l.get(te,{params:J})},E=(re,J,te)=>{const se=w(re);if(a.config.app==="konnect"){const{size:V,offset:v,...M}=J;if(re==="consumer_groups")return l.get(se,{params:{size:1e3},signal:te}).then(ie=>{const{data:{data:X}}=ie;if(X.length&&Object.keys(M).length===1){const ne=Object.keys(M)[0],Q=X.filter(Z=>Z[ne]?!!Z[ne].toLowerCase().includes(M[ne].toLowerCase()):!1);ie.data.data=Q}return ie});const D={size:V,offset:v};for(const ie of Object.keys(M))D.filter={[ie]:{contains:M[ie]}};return l.get(se,{params:D,signal:te})}return l.get(se,{params:J,signal:te})},C=(re,J=50)=>{const te=w(re);return l.get(te,{params:{size:J}})};t.provide(Le.FORMS_API_KEY,{getOne:b,getAll:k,getAllV2:E,peek:C}),t.provide(Le.FORMS_CONFIG,a.config);const S=t.ref(""),A=t.ref(""),R=t.ref(null),O=t.ref({}),T=t.reactive({}),N=t.reactive({}),L=t.computed(()=>{var re;return(re=R.value)==null?void 0:re.options}),x=t.computed(()=>TL(N.name,a.rawSchema)),B=t.ref(!1),P=t.ref(),q=(re,J)=>{B.value=re??"",P.value=J},G=re=>{var J;(J=P.value)==null||J.call(P,re),B.value=!1},K=re=>{var D,ie;const J={...a.schema},te=N,se=T,V=Object.keys(te),v={};if(!u(O.value))for(let X=0;X<((ie=(D=O.value)==null?void 0:D.fields)==null?void 0:ie.length);X++)J[O.value.fields[X].model]=O.value.fields[X];Le.customFields.forEach(X=>{J[X]&&(J[X].fields.forEach(ne=>{ne.fields&&ne.fields.forEach(Q=>{J[Q.model]=Q}),ne.model&&(J[ne.model]=ne)}),delete J[X])}),V.forEach(X=>{var ce;if(!J[X]){X==="partials"&&(v[X]=te[X]);return}const ne=J[X];let Q=te[X];const Z=se[X],ue=Array.isArray(Q)?"array":typeof Q,$=ne?ne.valueType:null,oe=ne?ne.valueArrayType:null,le=ne?ne.transform:null;if(Q==null&&Z==null&&!ne.submitWhenNull)return;if(ne){if($&&ue!==$)switch($){case"array":ue==="string"&&Q.length&&(Q=Q.split(",").map(fe=>{if(fe=fe.trim(),oe==="string")return String(fe);if(oe==="number")return Number(fe);if(oe==="boolean"){if(typeof fe=="string")return fe.toLowerCase()==="true"||fe==="1";if(typeof fe=="number")return fe===1}return fe})),(!Q||!Q.length)&&(Q=ne.submitWhenNull?null:[]);break;case"number":ne.referenceable!==!0&&(Q=Number(Q));break;case"boolean":ue==="string"&&(Q=Q.toLowerCase()==="true"||Q==="1"),ue==="number"&&(Q=Q===1);break;case"string":Q=Q==null?"":String(Q);break}else $==="array"&&(!Q||!Q.length?Q=ne.submitWhenNull?null:[]:((ce=ne.inputAttributes)==null?void 0:ce.type)==="number"&&(Q=Q.map(fe=>Number(fe))));if(ne.type==="array"&&ne.nestedFields){const fe=Ee=>{Object.keys(Ee).forEach(Pe=>{Ee[Pe]&&typeof Ee[Pe]=="object"&&!Array.isArray(Ee[Pe])&&Ee[Pe]!==null?fe(Ee[Pe]):(Ee[Pe]===void 0||Ee[Pe]===null||typeof Ee[Pe]=="number"&&isNaN(Ee[Pe])||typeof Ee[Pe]=="string"&&Ee[Pe].trim().length===0)&&delete Ee[Pe]})};Q&&typeof Q=="object"&&fe(Q)}ne.type==="object-advanced"&&ne.fields&&Q!==null&&(Object.entries(Q).length===0?Q=null:Object.keys(Q).forEach(fe=>{Array.isArray(Q[fe])||(Q[fe]=Q[fe].split(","))}))}let pe=c(X);if(ne.fieldNameHasDashes){const[fe,...Ee]=pe.split(".").reverse();pe=[fe.replace(/_/g,"-"),...Ee].reverse().join(".")}if($==="object-expand"){let fe;[pe,fe]=pe.split(".");let Ee={};v[pe]&&(Ee=v[pe]),Ee[fe]=Q,Q=Ee}Z!==void 0&&Q===""&&Q!==Z?v[pe]=$==="object"?{}:null:ne.type==="checklist"&&Q===""?v[pe]=[]:Q!==""&&(v[pe]=Q),v[pe]=le?le(Q):v[pe],p(pe,v)});const M=d(v);if(A.value){if(re&&re.length)for(const X of re)delete M[X];Object.assign(M,ae.value)}return M},F=(re,J={})=>{f(N,J,re,a.editing),i("model-updated",{model:N,originalModel:T,data:K()})},I=(re,J)=>{var V;const te={[J]:re};typeof((V=a.schema[J])==null?void 0:V.modelTransformer)=="function"&&(te[J]=a.schema[J].modelTransformer(re));const se=Object.assign({},N,te);Object.assign(N,se),i("model-updated",{model:N,originalModel:T,data:K()})},j=re=>{i("validity-change",re)},z=(re,J)=>{Object.keys(re).forEach(te=>{var D,ie;let se=J?`${J}-${te}`:te,V=a.schema[se];if(!V){const X=J?`${J}-${te.replace(/-/g,"_")}`:te.replace(/-/g,"_");(D=a.schema[X])!=null&&D.fieldNameHasDashes&&(se=X,V=a.schema[se]),J&&((ie=a.schema[J])==null?void 0:ie.keyFromObject)===te&&(se=J,V=a.schema[se])}const v=re[te],M=typeof v;if(V&&V.type==="object-advanced"&&!v){N[se]={},T[se]={};return}if(Array.isArray(v)){N[se]=JSON.parse(JSON.stringify(v)),T[se]=JSON.parse(JSON.stringify(v));return}if(M==="object"&&v&&!v.length)return z(v,se);if(M==="object"&&v&&v.length&&V.type==="input"){N[se]=v.join(", "),T[se]=v.join(", ");return}N[se]=v,T[se]=v}),i("model-updated",{model:N,originalModel:T,data:K()})},ae=t.shallowRef(a.record),U=(re,J)=>{ae.value=re;const te={...N};for(const se of J||[])delete te[se];i("model-updated",{model:{...te,...re},originalModel:T,data:K(J)})},H=t.ref(!0),ee=()=>{var re;if(a.record&&a.schema&&(z({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)&&z({consumer_id:a.record.consumer_id||a.record.consumer}),z(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)&&z({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&&F("redis",{partials:a.record.partials}),A.value?U(a.record):z(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const J={};for(const te in a.entityMap){const se=a.entityMap[te].id,V=a.entityMap[te].idField,v=V==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(V).replace("_","-"));Object.prototype.hasOwnProperty.call(N,v)&&(J[v]=se)}z(J)}if((re=a.entityMap.consumer)!=null&&re.id&&a.schema&&a.credential){const J={};Object.prototype.hasOwnProperty.call(N,"consumer")&&(J.consumer=a.entityMap.consumer.id),z(J)}H.value=!1};return t.watch(H,re=>{i("loading",re)}),t.watch(()=>a.schema,(re,J)=>{var se,V;if(g(re||{},J||{}))return;const te=s(re,void 0,void 0,a.engine);Object.assign(N,te.model),O.value={fields:(V=(se=O.value)==null?void 0:se.fields)==null?void 0:V.map(v=>({...v,disabled:v.disabled||!1}))},Object.assign(T,JSON.parse(JSON.stringify(te.model))),A.value=a.engine?a.engine==="vfg"?void 0:Wa(te.model.name,m)||"CommonForm":Wa(te.model.name,m),S.value=Le.getSharedFormName(te.model.name),ee()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var re,J;R.value=s(a.schema,void 0,void 0,a.engine),Object.assign(N,((re=R.value)==null?void 0:re.model)||{}),O.value=((J=R.value)==null?void 0:J.schema)||{},ee()}),(re,J)=>{var se,V;const te=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",$L,[H.value?(t.openBlock(),t.createBlock(te,{key:0,type:"form"})):N.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",BL,[A.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent($g[A.value]),{key:0,"form-model":N,"form-options":L.value,"form-schema":O.value,"is-editing":e.editing,model:e.record,"on-form-change":U,"on-model-updated":I,"on-validity-change":j,"plugin-name":N.name,"render-rules":(se=t.unref(It)[N.name])==null?void 0:se.freeformRenderRules,schema:x.value,onGlobalAction:J[0]||(J[0]=(v,M)=>re.$emit("globalAction",v,M))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Le.AUTOFILL_SLOT_NAME),fn:t.withCtx(v=>[v.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Mo.VaultSecretPickerProvider),t.mergeProps({key:0},v,{onOpen:q}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","plugin-name","render-rules","schema"])):S.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Le.sharedForms)[S.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":N,"form-options":L.value,"form-schema":O.value,"is-editing":e.editing,"on-model-updated":I,"on-partial-toggled":F,"show-new-partial-modal":v=>re.$emit("showNewPartialModal",v)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Le.AUTOFILL_SLOT_NAME),fn:t.withCtx(v=>[v.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Mo.VaultSecretPickerProvider),t.mergeProps({key:0},v,{onOpen:q}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(t.openBlock(),t.createBlock(t.unref(Le.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:N,options:L.value,schema:O.value,onModelUpdated:I,onPartialToggled:F,onRefreshModel:K,onShowNewPartialModal:J[1]||(J[1]=v=>re.$emit("showNewPartialModal",v))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",VL,t.toDisplayString(t.unref(y)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(V=t.unref(It)[N.name])!=null&&V.fieldRules&&(a.config.isNewOtelSchema||N.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(yk,{rules:t.unref(It)[N.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Le.AUTOFILL_SLOT_NAME),fn:t.withCtx(v=>[v.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Mo.VaultSecretPickerProvider),t.mergeProps({key:0},v,{onOpen:q}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Mo.VaultSecretPicker),{config:a.config,setup:B.value,onCancel:J[2]||(J[2]=()=>B.value=!1),onProceed:G},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-247656d9"]]),DL={key:1},ML=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",DL,[t.renderSlot(n.$slots,"default")]))}}),LL={key:0},FL={class:"plugin-form-actions"},UL=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,default:void 0}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var Q;const o=t.inject(he.FEATURE_FLAGS.KM_1948_PLUGIN_FORM_LAYOUT,t.computed(()=>!1)),r=n,i=e,a=On.useRouter(),{i18n:{t:l}}=De.useI18n(),{customSchemas:s,typedefs:c}=De.useSchemas({app:i.config.app,credential:i.credential,experimentalRenders:i.config.app==="konnect"?i.config.experimentalRenders:void 0}),{formatPluginFieldLabel:d}=De.usePluginHelpers(),{getMessageFromError:f}=he.useErrors(),{capitalize:u}=he.useStringHelpers(),{objectsAreEqual:p}=he.useHelpers(),{axiosInstance:m}=he.useAxios((Q=i.config)==null?void 0:Q.axiosRequestConfig),g=t.ref(!1),y=t.computed(()=>!!i.pluginId),h=t.computed(()=>i.pluginId?he.EntityBaseFormType.Edit:he.EntityBaseFormType.Create),_=t.ref(void 0),w=t.ref(void 0),b=t.computed(()=>!!(i.credential&&i.config.entityId)),k=t.ref(void 0),E=t.ref({}),C=t.ref(),S=t.ref();t.provide(ri,{redisType:C,redisPath:S,isEditing:y.value});const A=t.ref(!1),R=t.reactive({enabled:!0,protocols:[],tags:[]}),O=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),T=t.ref([{title:l("view_configuration.json"),hash:"#json"},{title:l("view_configuration.yaml"),hash:"#yaml"}]);i.config.app==="konnect"&&T.value.splice(1,0,{title:l("view_configuration.terraform"),hash:"#terraform"}),(i.config.app==="kongManager"||i.config.enableDeckTab)&&T.value.push({title:l("view_configuration.deck"),hash:"#deck"});const N=t.ref(""),L=t.computed(()=>{var ue;if(b.value){let $=ze.form[i.config.app].credential[h.value];return $=$.replace(/{resourceEndpoint}/gi,q.value),$}let Z;return i.config.entityType&&i.config.entityId?Z=ze.form[i.config.app].edit.forEntity.replace(/{entityType}/gi,i.config.entityType).replace(/{entityId}/gi,i.config.entityId):Z=ze.form[i.config.app].edit.all,i.config.app==="konnect"&&((ue=It[i.pluginType])!=null&&ue.useUIData)?`${Z}?__ui_data=true`:Z}),x=()=>{g.value=!g.value},B=t.computed(()=>{var pe,ce,fe,Ee,Pe,ge,ye,Ke;const Z=i.config.entityType==="consumers"&&i.config.entityId||((ce=(pe=k.value)==null?void 0:pe.consumer)==null?void 0:ce.id),ue=i.config.entityType==="consumer_groups"&&i.config.entityId||((Ee=(fe=k.value)==null?void 0:fe.consumer_group)==null?void 0:Ee.id),$=i.config.entityType==="services"&&i.config.entityId||((ge=(Pe=k.value)==null?void 0:Pe.service)==null?void 0:ge.id),oe=i.config.entityType==="routes"&&i.config.entityId||((Ke=(ye=k.value)==null?void 0:ye.route)==null?void 0:Ke.id);if(!(Z||ue||$||oe))return{global:{entity:W.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const le={};return $&&(le.service={entity:W.PluginScope.SERVICE,entityEndpoint:"services",id:$,idField:Bn.SERVICE}),oe&&(le.route={entity:W.PluginScope.ROUTE,entityEndpoint:"routes",id:oe,idField:Bn.ROUTE}),Z&&(le.consumer={entity:W.PluginScope.CONSUMER,entityEndpoint:"consumers",id:Z,idField:Bn.CONSUMER}),ue&&(le.consumer_group={entity:W.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:ue,idField:Bn.CONSUMER_GROUP}),i.config.entityType&&(le.focusedEntity={entity:W.PluginScope[i.config.entityType.substring(0,i.config.entityType.length-1).toUpperCase()],entityEndpoint:i.config.entityType,id:i.config.entityId,idField:Bn[i.config.entityType.substring(0,i.config.entityType.length-1).toUpperCase()]}),le}),P=t.reactive({name:{default:i.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:l("plugins.form.fields.enabled.label"),textOn:l("plugins.form.fields.enabled.on_text"),textOff:l("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:i.hideScopeSelection&&(i.hideScopeSelection||h.value===he.EntityBaseFormType.Create&&i.config.entityId)?"foreign":"selectionGroup",disabled:i.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:l("plugins.form.scoping.global.label"),description:l("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:l("plugins.form.fields.protocols.help"),label:l("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:l("plugins.form.fields.instance_name.label"),inputType:"text",help:l("plugins.form.fields.instance_name.help")},tags:c.tags}),q=t.computed(()=>{var $;const Z=i.developer?"developers":"consumers",ue=(($=uo[i.pluginType])==null?void 0:$.endpoint)||"/plugins";return`${Z}/${i.config.entityId}${i.developer?"/credentials":""}${ue}`}),G=Z=>{const ue=Array.from(new Set(Z.map($=>typeof $)));return ue.length>1?"string":ue[0]},K=(Z,ue,$,oe)=>{var fe,Ee;let le=ue&&ue.fields||[];const pe=s[i.pluginType],ce=(Ee=(fe=uo[i.pluginType])==null?void 0:fe.schema)==null?void 0:Ee.fields;return Array.isArray(le)&&(le=le.reduce((Pe,ge)=>{const ye=Object.keys(ge)[0];return ye.match(/-/g)?Pe[ye.replace(/-/g,"_")]={...ge[ye],fieldNameHasDashes:!0}:Pe[ye]=ge[ye],Pe},{})),Object.keys(le).sort().forEach(Pe=>{var _t,tn,Tn,bn,dt,de,Se;const ge=le[Pe];ge.type==="set"&&(ge.type="array");const ye=Z?`${Z}-${Pe}`:`${Pe}`;if((_t=pe==null?void 0:pe.fieldsToDelete)!=null&&_t.includes(ye)){yd($,ye);return}if(Object.prototype.hasOwnProperty.call(ge,"overwrite")||ge.hidden)return;if(ge.type==="table")return K(ye,ge.schema,$);if(ge.fields)return oe&&ge.type==="record"?($[ye]={type:"object",model:Pe,schema:{fields:Object.values(K(ye,ge,{},!0))}},$):K(ye,ge,$);if($[ye]={id:ye,model:Pe},$[ye].type=ge.type==="boolean"?"checkbox":"input",$[ye].required=ge.required,$[ye].referenceable=ge.referenceable,ye.startsWith("config-"))if(!oe&&ge.type==="array"&&(N.value=ye),oe&&N.value&&ye.startsWith(N.value)){const me=ye.slice(N.value.length+1);$[ye].label=me.split("-").map(d).join(".")}else $[ye].label=d(ye);if((Z==="config"||Z.startsWith("config-"))&&(tn=le[Pe])!=null&&tn.description&&($[ye].help=Vr.marked.parse(le[Pe].description,{mangle:!1,headerIds:!1})),ge.type==="map"){if($[ye].type="object-advanced",$[ye].values=ge.values,ge.values.type==="array"){const{type:me}=ge.values.elements||{};$[ye].schema={fields:[{schema:{fields:[{...Re,model:ye,valueArrayType:me==="integer"?"number":me||"string",inputAttributes:{...Re.inputAttributes,type:me==="integer"?"number":"text",inputMode:me==="integer"?"numeric":"text"}}]}}]}}else ge.values.fields&&($[ye].schema={fields:[{type:"object",model:"object",schema:{fields:ge.values.fields.map(me=>{const Ce=Object.keys(me)[0];return{model:Ce,type:"input",label:u(Ce),placeholder:Ce,inputType:me[Ce].type}})}}]});return $}if(ge.enum&&ge.type==="array"&&($[ye].type="checklist",$[ye].values=ge.enum,$[ye].multi=!0,$[ye].multiSelect=!0),ge.one_of&&ge.type!=="array"&&($[ye].type="select",$[ye].values=ge.one_of,$[ye].selectOptions={noneSelectedText:l("plugins.form.no_selection")}),ge.elements&&ge.type==="array"){const me=ge.elements;if($[ye].referenceable=me.referenceable,$[ye].elements=me,["string","integer","number"].includes(me.type)&&!me.one_of){const{id:Ce,help:Ie,label:we,hint:Oe,values:Be,referenceable:Je,model:Me}=$[ye],{inputAttributes:He,...je}=JSON.parse(JSON.stringify(Re));He.type=me.type==="string"?"text":"number",$[ye]={id:Ce,help:Ie,label:we,hint:Oe,values:Be,referenceable:Je,model:Me,inputAttributes:He,...je}}}if(ge.hint&&($[ye].hint=ge.hint),pe&&!pe.overwriteDefault&&Object.keys(pe).forEach(me=>{if(me===ye){const{help:Ce,label:Ie,hint:we,values:Oe,referenceable:Be,elements:Je}=$[ye],{help:Me,...He}=pe[me];$[ye]={help:Ce,label:Ie,hint:we,values:Oe,referenceable:Be,elements:Je,...He},typeof Me=="string"&&($[ye].help=Vr.marked.parse(Me,{mangle:!1,headerIds:!1}))}}),ge.type==="array"&&((Tn=ge.elements)==null?void 0:Tn.type)==="record"&&Array.isArray(ge.elements.fields)){let me={};for(const Ie of ge.elements.fields)me={...me,...Ie};const Ce=(de=(dt=(bn=$[ye])==null?void 0:bn.items)==null?void 0:dt.schema)==null?void 0:de.fields;if(Array.isArray(Ce))for(const Ie of $[ye].items.schema.fields){const we=(Se=me[Ie.model])==null?void 0:Se.description;Ie.help===void 0&&typeof we=="string"&&(Ie.help=Vr.marked.parse(we,{mangle:!1,headerIds:!1}))}if(Ce||($[ye].type="array",$[ye].newElementButtonLabelClasses="kong-form-new-element-button-label",$[ye].fieldClasses="array-card-container-wrapper",$[ye].itemContainerComponent="FieldArrayCardContainer",$[ye].items={type:"object",schema:{fields:Object.values(K(ye,ge.elements,{},!0))}},$[ye].items.schema.fields.forEach(Ie=>{var we,Oe;for(const Be of ge.elements.fields){const Je=Object.keys(Be)[0],Me=((Oe=(we=Ie.id)==null?void 0:we.split)==null?void 0:Oe.call(we,"-"))??[];if(Me[Me.length-1]===Je){Ie.model=Je,Ie.label=d(Je);break}}}),ge.elements.type==="record"&&($[ye].nestedFields=!0)),!$[ye].nestedFields)$[ye].items.default=()=>ge.elements.fields.reduce((Ie,we)=>{const Oe=Object.keys(we)[0];return Ie[Oe]=we[Oe].default,Ie},{});else{const Ie=(we,Oe)=>{if(we.type==="object"){we.model&&(Oe[we.model]={});for(const Be of we.schema.fields)Ie(Be,we.model?Oe[we.model]:Oe)}else we.model&&(Oe[we.model]=we.default)};$[ye].items.default=()=>{const we={};return Ie($[ye].items,we),we}}}if(b.value&&ce){for(let me=0;me<ce.length;me++)if(ce[me][ye]){$[ye]={...$[ye],...ce[me][ye]};break}}if(ge.required&&ge.type!=="boolean"&&($[ye].required=!0,$[ye].selectOptions={hideNoneSelectedText:!0}),ge.required&&ge.type==="boolean"&&($[ye].default=ge.default??!1),ge.default!=null&&typeof ge.default!="object"&&ge.default!=="function"&&($[ye].default=ge.default),$[ye].type==="input"){["string","number"].includes(typeof $[ye].default)&&i.config.app==="konnect"&&($[ye].placeholder=`Default: ${$[ye].default===""?"<empty string>":$[ye].default}`);const{type:me}=ge.elements||{};me&&($[ye].valueArrayType=me==="integer"?"number":me),$[ye].inputType=ge.type==="array"||ge.type==="string"?ge.encrypted?"password":"text":ge.type}let Ke="string";ge.enum?Ke=G(ge.enum):ge.type==="boolean"?Ke="boolean":ge.type==="number"||ge.type==="integer"?(Ke="number",$[ye].inputType="number"):ge.type==="array"?(Ke="array",$[ye].default=ge.default,ge.len_min>0&&($[ye].submitWhenNull=!0)):ge.type==="foreign"?Ke="object":ge.default&&Array.isArray(ge.default)?(Ke="array",$[ye].valueArrayType=G(ge.default)):ge.default&&(Ke=typeof ge.default),$[ye].valueType=Ke,ge.fieldNameHasDashes&&($[ye].fieldNameHasDashes=!0)}),$},F=()=>{var ye,Ke,_t,tn,Tn,bn,dt,de,Se,me,Ce,Ie;const Z=((ye=It[i.pluginType])==null?void 0:ye.scope.includes(W.PluginScope.SERVICE))??!0,ue=((Ke=It[i.pluginType])==null?void 0:Ke.scope.includes(W.PluginScope.ROUTE))??!0,$=((_t=It[i.pluginType])==null?void 0:_t.scope.includes(W.PluginScope.CONSUMER))??!0,oe=i.config.disableConsumerGroupScope?!1:((tn=It[i.pluginType])==null?void 0:tn.scope.includes(W.PluginScope.CONSUMER_GROUP))??!0,le=i.config.entityType==="consumers"&&!!i.config.entityId||!!((bn=(Tn=k.value)==null?void 0:Tn.consumer)!=null&&bn.id),pe=i.config.entityType==="consumer_groups"&&!!i.config.entityId||!!((de=(dt=k.value)==null?void 0:dt.consumer_group)!=null&&de.id),ce=i.config.entityType==="services"&&!!i.config.entityId||!!((me=(Se=k.value)==null?void 0:Se.service)!=null&&me.id),fe=i.config.entityType==="routes"&&!!i.config.entityId||!!((Ie=(Ce=k.value)==null?void 0:Ce.route)!=null&&Ie.id),Ee=[],Pe=(we,Oe,Be)=>we?l("plugins.form.disable_source_scope_change",{scope:Be}):Oe?l("plugins.form.disable_data_retrieving",{scope:Be}):"",ge=we=>{var Oe,Be;return((Be=(Oe=i.scopedEntitiesPermissions)==null?void 0:Oe[we])==null?void 0:Be.canRetrieve)===!1};if(Z){const we=ge("service"),Oe="services",Be=ce&&i.disableScopeSelection;Ee.push({id:"service-id",model:"service-id",label:l("plugins.form.scoping.gateway_service.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Oe,inputValues:{fields:["name","id"]},help:l("plugins.form.scoping.gateway_service.help"),disabled:Be||we,disabledTooltip:Pe(Be,we,Oe)})}if(ue){const we=ge("route"),Oe="routes",Be=fe&&i.disableScopeSelection;Ee.push({id:"route-id",model:"route-id",label:l("plugins.form.scoping.route.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:l("plugins.form.scoping.route.help"),disabled:Be||we,disabledTooltip:Pe(Be,we,Oe)})}if($){const we=ge("consumer"),Oe="consumers",Be=le&&i.disableScopeSelection;Ee.push({model:"consumer-id",label:l("plugins.form.scoping.consumer.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:l("plugins.form.scoping.consumer.help"),disabled:Be||we,disabledTooltip:Pe(Be,we,Oe)})}if(oe){const we=ge("consumer_group"),Oe="consumer_groups",Be=pe&&i.disableScopeSelection;Ee.push({model:"consumer_group-id",label:l("plugins.form.scoping.consumer_group.label"),placeholder:l("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:l("plugins.form.scoping.consumer_group.help"),disabled:Be||we,disabledTooltip:Pe(Be,we,Oe)})}if(Ee.length){const we=[...Z?["service"]:[],...ue?["route"]:[],...$?["consumer"]:[],...oe?["consumer_group"]:[]],Be=we.splice(we.length-2,2).map(Me=>l(Me==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Me}.plural`)).join(`${we.length>0?",":""} and/or `),Je=["Specific",[...we.length>0?[we.map(Me=>l(Me==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Me}.plural`)).join(", ")]:[],Be].join(", ")].join(" ");P.selectionGroup.fields.push({label:l("plugins.form.scoping.label"),description:Je,fields:[]}),P.selectionGroup.fields[1].fields=Ee}s[i.pluginType]&&s[i.pluginType].overwriteDefault&&Object.hasOwnProperty.call(s[i.pluginType],"formSchema")&&Object.assign(P,s[i.pluginType].formSchema)},I=t.computed(()=>!p(O.fields,R,!0)),j=t.computed(()=>!X.value&&!A.value&&(h.value===he.EntityBaseFormType.Create||I.value)),z=t.ref(!1),ae=t.ref(),U=Z=>{i.credential&&Z.password&&(Z.password=""),O.fields.id=(Z==null?void 0:Z.id)||void 0,ae.value=Z==null?void 0:Z.ordering,Object.assign(R,O.fields),k.value=Z,z.value=!0},H=t.ref({}),ee=Z=>{var ue;O.fields=Z.model,O.fields.id=((ue=k.value)==null?void 0:ue.id)||void 0,Object.assign(R,Z.originalModel),H.value=Z.data,i.isWizardStep&&r("model-updated",{model:O.fields,data:Z.data,resourceEndpoint:q.value})},_e=t.ref(new Map),be=t.computed(()=>[O.clientErrorMessage,O.serverErrorMessage].filter(Boolean).join("; ")),re=Z=>{Z.valid?_e.value.delete(Z.model):_e.value.set(Z.model,Z.error),O.clientErrorMessage=[..._e.value.entries()].map(([ue,$])=>`${ue}: ${typeof $=="string"?$:f($)}`).join("; "),O.clientErrorMessage&&(O.serverErrorMessage="")};t.watch([B,z],(Z,ue)=>{const $=Z[0]!==ue[0],oe=Z[1],le=ue[1];if(!b.value&&h.value===he.EntityBaseFormType.Edit&&($||oe&&oe!==le)){const pe=K("config",E.value,P);se.value&&(pe._isCustomPlugin=!0),C.value&&(pe._supported_redis_partial_type=C.value),w.value=pe}},{deep:!0});const J=()=>{i.config.cancelRoute?a.push(i.config.cancelRoute):r("cancel")},te=t.computed(()=>{const Z=i.config.entityType&&i.config.entityId&&!i.developer,ue=b.value?ze.form[i.config.app].credential[h.value]:ze.form[i.config.app][h.value][Z?"forEntity":"all"];let $=`${i.config.apiBaseUrl}${ue}`;return i.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),$=$.replace(/{resourceEndpoint}/gi,q.value),$=$.replace(/{id}/gi,i.pluginId),$=$.replace(/{entityType}/gi,i.config.entityType||""),$=$.replace(/{entityId}/gi,i.config.entityId||""),$}),se=t.computed(()=>!Object.keys(It).includes(i.pluginType)),V=t.computed(()=>{const Z=H.value;if(b.value){for(const ue in W.PluginScope){const $=W.PluginScope[ue];Z[$]&&!Z[$].id&&(Z[$]={id:i.config.entityId})}delete Z.created_at}return H.value.partials&&S.value&&yd(Z,S.value),Z}),v=t.computed(()=>{const{__ui_data:Z,...ue}={...V.value};return ue}),M=async()=>{if(!O.clientErrorMessage&&!i.isWizardStep)try{O.isReadonly=!0;let Z;const ue=JSON.parse(JSON.stringify(V.value)),$=s[i.pluginType];typeof($==null?void 0:$.shamefullyTransformPayload)=="function"&&$.shamefullyTransformPayload({originalModel:R,model:O.fields,payload:ue,schema:w.value}),h.value==="create"?Z=await m.post(te.value,ue):h.value==="edit"&&(Z=i.config.app==="konnect"||C.value&&ue.partials?await m.put(te.value,Object.assign({ordering:ae.value},ue)):await m.patch(te.value,ue)),Object.assign(R,O.fields),r("update",Z==null?void 0:Z.data)}catch(Z){O.serverErrorMessage=f(Z),r("error",Z)}finally{O.isReadonly=!1}},D=t.computed(()=>{var oe;const Z=b.value?(oe=uo[i.pluginType])==null?void 0:oe.schemaEndpoint:i.pluginType,ue=b.value?ze.form[i.config.app].credentialSchema:ze.form[i.config.app].pluginSchema;let $=`${i.config.apiBaseUrl}${ue}`;return i.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,i.config.controlPlaneId||""):i.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,i.config.workspace?`/${i.config.workspace}`:"")),$=$.replace(/{plugin}/gi,Z),$}),ie=t.ref(""),X=t.ref(!1),ne=t.ref("");return t.onBeforeMount(async()=>{var Z,ue,$,oe;X.value=!0;try{if(b.value&&i.config.app==="konnect"){const le=(Z=uo[i.pluginType])==null?void 0:Z.schemaEndpoint,pe=Qg[le];ie.value=le,w.value=K("",pe,{}),X.value=!1}else{const le=i.schema??(await m.get(D.value)).data;if(_.value=le,le)if(b.value)w.value=K("",le,{}),X.value=!1;else{const pe=le.fields.find(fe=>fe.config);E.value=pe?pe.config:le,le.supported_partials&&(C.value=Object.keys(le.supported_partials).find(fe=>[Rr.REDIS_CE,Rr.REDIS_EE].includes(fe)),S.value=(ue=le.supported_partials[C.value])==null?void 0:ue[0]),F();const ce=($=le.fields.find(fe=>fe.protocols))==null?void 0:$.protocols;if(ce){const{default:fe=[],elements:Ee={}}=ce;P.protocols.default=fe,P.protocols.placeholder=i.config.app==="konnect"?l("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:fe.join(", ")}):l("plugins.form.fields.protocols.placeholder"),(oe=Ee.one_of)!=null&&oe.length&&(P.protocols.values=Ee.one_of.map(Pe=>({label:Pe,value:Pe})))}if(z.value||h.value===he.EntityBaseFormType.Create){const fe=K("config",E.value,P);C.value&&(fe._supported_redis_partial_type=C.value),se.value&&(fe._isCustomPlugin=!0),w.value=fe}}}}catch(le){console.error(le),ne.value=f(le),r("error:fetch-schema",le)}finally{X.value=!1}}),(Z,ue)=>{const $=t.resolveComponent("KSkeleton"),oe=t.resolveComponent("KEmptyState"),le=t.resolveComponent("KButton"),pe=t.resolveComponent("KTabs"),ce=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["kong-ui-entities-plugin-form-container",{"new-form-layout":t.unref(o)}])},[X.value?(t.openBlock(),t.createBlock($,{key:0,type:"form"})):ne.value?(t.openBlock(),t.createBlock(oe,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(l)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(he.EntityBaseForm),{key:2,"can-submit":j.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(he.SupportedEntityType).Plugin,"error-message":be.value,"fetch-url":L.value,"form-fields":V.value,"is-readonly":O.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:J,"onFetch:error":ue[4]||(ue[4]=fe=>Z.$emit("error",fe)),"onFetch:success":U,onLoading:ue[5]||(ue[5]=fe=>Z.$emit("loading",fe))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",LL)):(t.openBlock(),t.createBlock(ML,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",FL,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(le,{key:0,appearance:"tertiary","data-testid":`plugin-${y.value?"edit":"create"}-form-view-configuration`,onClick:ue[3]||(ue[3]=fe=>x())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(le,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${y.value?"edit":"create"}-form-cancel`,disabled:O.isReadonly,onClick:J},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(le,{appearance:"primary","data-testid":`plugin-${y.value?"edit":"create"}-form-submit`,disabled:!j.value||O.isReadonly,type:"submit",onClick:M},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:M},null,32),t.createVNode(RL,{config:e.config,credential:b.value,editing:h.value===t.unref(he.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":i.enableVaultSecretPicker,engine:e.engine,"entity-map":B.value,"raw-schema":_.value,record:k.value,schema:w.value,onGlobalAction:ue[0]||(ue[0]=(fe,Ee)=>Z.$emit("globalAction",fe,Ee)),onLoading:ue[1]||(ue[1]=fe=>A.value=fe),onModelUpdated:ee,onShowNewPartialModal:ue[2]||(ue[2]=fe=>Z.$emit("showNewPartialModal",fe)),onValidityChange:re},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(ce,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(l)("view_configuration.title"),visible:g.value,onClose:x},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("view_configuration.message")),1),t.createVNode(pe,{"data-testid":"form-view-configuration-slideout-tabs",tabs:T.value},{json:t.withCtx(()=>[t.createVNode(t.unref(he.JsonCodeBlock),{config:e.config,"entity-record":v.value,"fetcher-url":te.value,"request-method":i.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(he.YamlCodeBlock),{"entity-record":v.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(he.TerraformCodeBlock),{"credential-type":ie.value,"entity-record":v.value,"entity-type":t.unref(he.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:t.withCtx(()=>[t.createVNode(t.unref(he.DeckCodeBlock),{app:e.config.app,"control-plane-name":e.config.app==="konnect"?e.config.controlPlaneName:void 0,"entity-record":v.value,"entity-type":t.unref(he.SupportedEntityType).Plugin,"geo-api-server-url":e.config.app==="konnect"?e.config.geoApiServerUrl:void 0,"kong-admin-api-url":e.config.app==="kongManager"?e.config.apiBaseUrl:void 0,workspace:e.config.app==="kongManager"?e.config.workspace:void 0},null,8,["app","control-plane-name","entity-record","entity-type","geo-api-server-url","kong-admin-api-url","workspace"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])],2)}}}),[["__scopeId","data-v-1e674a69"]]),KL={class:"kong-ui-entities-plugins-list"},jL={class:"button-row"},GL={class:"name-cell-wrapper"},qL={class:"info-wrapper"},zL={key:0,class:"info-name"},HL={key:1,class:"info-name"},YL={key:2,class:"info-type"},WL={key:1},XL=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 D,ie;const o=De.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=De.useI18n(),l=On.useRouter(),{axiosInstance:s}=he.useAxios((D=i.config)==null?void 0:D.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=he.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var X;return((X=i.config)==null?void 0:X.entityType)==="consumers"}),m=t.computed(()=>{var X;return((X=i.config)==null?void 0:X.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||he.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),y=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),h={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(ie=i.config)!=null&&ie.entityId||(h.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),h.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(h.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),h.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const _=h,w=t.computed(()=>{var ne,Q,Z,ue;let X=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"?X=X.replace(/{controlPlaneId}/gi,((ne=i.config)==null?void 0:ne.controlPlaneId)||""):i.config.app==="kongManager"&&(X=X.replace(/\/{workspace}/gi,(Q=i.config)!=null&&Q.workspace?`/${i.config.workspace}`:"")),X.replace(/{entityType}/gi,((Z=i.config)==null?void 0:Z.entityType)||"").replace(/{entityId}/gi,((ue=i.config)==null?void 0:ue.entityId)||"")}),b=t.ref(""),k=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:h.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:{...h.enabled,label:a("search.filter.field.enabled")},name:h.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:C,fetcherCacheKey:S}=he.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),A=()=>{b.value=""},R=()=>{S.value++},O=t.ref(null),T=X=>{var Q,Z,ue,$;const ne=[];return((Q=X.route)!=null&&Q.id||X.route_id)&&ne.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((Z=X.service)!=null&&Z.id||X.service_id)&&ne.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((ue=X.consumer)!=null&&ue.id||X.consumer_id)&&ne.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),(($=X.consumer_group)!=null&&$.id||X.consumer_group_id)&&ne.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),ne.length?ne:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},N=async(X,ne)=>{var Q;return X===null?!1:await((Q=i.canRetrieveScopedEntity)==null?void 0:Q.call(i,X,ne.id))},L=(X,ne)=>{var Z,ue,$,oe,le;let Q=null;switch(X){case"route":Q=(Z=ne.route)==null?void 0:Z.id;break;case"service":Q=(ue=ne.service)==null?void 0:ue.id;break;case"consumer":Q=($=ne.consumer)==null?void 0:$.id;break;case"consumer_group":Q=(oe=ne.consumer_group)==null?void 0:oe.id;break}Q&&((le=i.config)!=null&&le.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(X,Q))},x=t.ref(!1),B=t.ref(null),P=t.computed(()=>{const X={action:"disable",id:"",name:""};if(B.value){const{enabled:ne,id:Q,name:Z}=B.value;X.action=ne?"disable":"enable",X.id=Q,X.name=o.getDisplayName(Z)||Q}return X}),q=X=>{x.value=!0,B.value=X},G=()=>{x.value=!1,B.value=null},K=async()=>{var Z,ue,$,oe,le,pe,ce,fe;if(!await((Z=i.canEdit)==null?void 0:Z.call(i,B.value))||!B.value)return;let ne=`${i.config.apiBaseUrl}${(le=ze.item[i.config.app])==null?void 0:le[(ue=i.config)!=null&&ue.entityType?"forEntity":"all"].replace(/{entityType}/gi,(($=i.config)==null?void 0:$.entityType)||"").replace(/{entityId}/gi,((oe=i.config)==null?void 0:oe.entityId)||"")}`.replace(/{id}/gi,B.value.id||"");i.config.app==="konnect"?ne=ne.replace(/{controlPlaneId}/gi,((pe=i.config)==null?void 0:pe.controlPlaneId)||""):i.config.app==="kongManager"&&(ne=ne.replace(/\/{workspace}/gi,(ce=i.config)!=null&&ce.workspace?`/${i.config.workspace}`:""));const Q=!B.value.enabled;try{const Ee=(fe=i.config)==null?void 0:fe.app;let Pe;b.value&&Ee==="konnect"&&(Pe=await s.get(ne));const{data:ge}=Ee==="konnect"?await s.put(ne,{...(Pe==null?void 0:Pe.data)||B.value,enabled:Q},{timeout:12e4}):await s.patch(ne,{...B.value,enabled:Q},{timeout:12e4});r("toggle-enabled",Q,ge),B.value.enabled=Q}catch(Ee){r("error",Ee)}},F=async(X,ne)=>{const Q=X.id;if(!await ne(Q)){r("copy:error",{entity:X,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:X,field:"id",message:a("copy.success",{val:Q})})},I=async(X,ne)=>{const Q=JSON.stringify(X);if(!await ne(Q)){r("copy:error",{entity:X,message:a("errors.copy")});return}r("copy:success",{entity:X,message:a("copy.success_brief")})},j=async X=>{var Q;await((Q=i.canRetrieve)==null?void 0:Q.call(i,X))&&l.push(i.config.getViewRoute(X))},z=X=>({label:a("actions.view"),to:i.config.getViewRoute(X)}),ae=X=>({label:a("actions.edit"),to:i.config.getEditRoute(X)}),U=X=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(X)}),H=t.ref(void 0),ee=t.ref(!1),_e=t.ref(!1),be=t.ref(""),re=he.useDeleteUrlBuilder(i.config,w.value),J=X=>{H.value=X,ee.value=!0},te=()=>{ee.value=!1},se=async()=>{var X,ne,Q;if((X=H.value)!=null&&X.id){_e.value=!0;try{await s.delete(re(H.value.id)),_e.value=!1,ee.value=!1,S.value++,r("delete:success",H.value)}catch(Z){be.value=((Q=(ne=Z.response)==null?void 0:ne.data)==null?void 0:Q.message)||Z.message||a("errors.delete"),r("error",Z)}finally{_e.value=!1}}},V=()=>{l.push(i.config.createRoute)};t.watch(C,X=>{var ne,Q,Z;if(X.status===he.FetcherStatus.Error){O.value={title:a("errors.general")},(Z=(Q=(ne=X.error)==null?void 0:ne.response)==null?void 0:Q.data)!=null&&Z.message&&(O.value.message=X.error.response.data.message),r("error",X.error);return}O.value=null});const v=t.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")}),M=t.ref(!1);return t.onBeforeMount(async()=>{M.value=await i.canCreate(),M.value&&(v.value.title=a("plugins.list.empty_state.title"),v.value.ctaText=a("actions.create"))}),(X,ne)=>{const Q=t.resolveComponent("KButton"),Z=t.resolveComponent("KEmptyState"),ue=t.resolveComponent("KBadge"),$=t.resolveComponent("KTruncate"),oe=t.resolveComponent("KInputSwitch"),le=t.resolveComponent("KDropdownItem"),pe=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",KL,[t.createVNode(t.unref(he.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":y.value,"empty-state-options":v.value,"enable-entity-actions":"","error-message":O.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(S),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(_),title:e.title,"title-tag":e.titleTag,onClearSearchInput:A,"onClick:row":ne[4]||(ne[4]=ce=>j(ce)),onSort:R,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(he.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":ne[0]||(ne[0]=ce=>b.value=ce),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",jL,[!u.value&&f.value?(t.openBlock(),t.createBlock(Q,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ne[1]||(ne[1]=ce=>X.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(Q,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:ce})=>[t.createElementVNode("div",GL,[t.createVNode(t.unref($n.PluginIcon),{class:"plugin-icon",name:ce.name,size:24},null,8,["name"]),t.createElementVNode("div",qL,[ce.instance_name?(t.openBlock(),t.createElementBlock("span",zL,t.toDisplayString(ce.instance_name),1)):(t.openBlock(),t.createElementBlock("span",HL,t.toDisplayString(t.unref(o).getDisplayName(ce.name)),1)),ce.instance_name?(t.openBlock(),t.createElementBlock("span",YL,t.toDisplayString(t.unref(o).getDisplayName(ce.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:ce})=>[T(ce).length>0?(t.openBlock(),t.createBlock($,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(T(ce),fe=>(t.openBlock(),t.createBlock(t.unref(he.PermissionsWrapper),{key:fe.badgeText,"auth-function":()=>N(fe.type,ce),"force-show":""},{default:t.withCtx(({isAllowed:Ee})=>[t.createVNode(ue,{class:t.normalizeClass(Ee||"disabled"),onClick:t.withModifiers(Pe=>Ee&&fe.type&&L(fe.type,ce),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(fe.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",WL,"-"))]),enabled:t.withCtx(({row:ce})=>[t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(ce)&&await e.canToggle(ce)),"force-show":""},{default:t.withCtx(({isAllowed:fe})=>{var Ee,Pe;return[t.createElementVNode("div",{onClick:ne[3]||(ne[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(oe,{disabled:!fe,"disabled-tooltip-text":!fe&&((Pe=(Ee=e.config).getToggleDisabledTooltip)==null?void 0:Pe.call(Ee,ce))||void 0,"model-value":ce.enabled,onClick:t.withModifiers(ge=>fe&&q(ce),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:ce})=>[t.createVNode(ue,{appearance:t.unref(pd)(ce)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(pd)(ce)?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:ce})=>[t.createVNode(t.unref(he.TableTags),{tags:ce},null,8,["tags"])]),actions:t.withCtx(({row:ce})=>[t.createVNode(pe,null,{default:t.withCtx(({copyToClipboard:fe})=>[t.createVNode(le,{"data-testid":"action-entity-copy-id",onClick:Ee=>F(ce,fe)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(pe,null,{default:t.withCtx(({copyToClipboard:fe})=>[t.createVNode(le,{"data-testid":"action-entity-copy-json",onClick:Ee=>I(ce,fe)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(ce)},{default:t.withCtx(()=>[t.createVNode(le,{"data-testid":"action-entity-view","has-divider":"",item:z(ce)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canEdit(ce)},{default:t.withCtx(()=>[t.createVNode(le,{"data-testid":"action-entity-edit",item:ae(ce)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(g)?(t.openBlock(),t.createBlock(t.unref(he.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(ce)},{default:t.withCtx(()=>[U(ce)?(t.openBlock(),t.createBlock(le,{key:0,"data-testid":"action-entity-config-dyn-order",item:U(ce)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(he.PermissionsWrapper),{"auth-function":()=>e.canDelete(ce)},{default:t.withCtx(()=>[t.createVNode(le,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:fe=>J(ce)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var ce;return[t.createVNode(Z,{"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(ke.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[M.value?(t.openBlock(),t.createBlock(Q,{key:0,"data-testid":"entity-create-button",onClick:V},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(Q,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ne[2]||(ne[2]=fe=>X.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(ce=e.config)!=null&&ce.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(he.EntityToggleModal),{action:P.value.action,"entity-id":P.value.id,"entity-name":P.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":K,visible:x.value,onCancel:G,onProceed:G},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(he.EntityDeleteModal),{"action-pending":_e.value,description:t.unref(a)("delete.description"),"entity-name":H.value&&(H.value.instance_name||H.value.name||H.value.id),"entity-type":t.unref(he.EntityTypes).Plugin,error:be.value,title:t.unref(a)("delete.title"),visible:ee.value,onCancel:te,onProceed:se},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-25799614"]]),ZL={class:"plugin-select-card-wrapper"},JL=["data-testid"],QL={class:"plugin-card-header"},e2={class:"plugin-card-title"},t2={key:0,class:"plugin-card-actions"},n2=["data-testid","title"],o2={key:0,class:"plugin-card-text"},r2={key:0},i2=["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=On.useRouter(),{i18n:{t:a}}=De.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?d():u()},u=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===W.PluginGroup.CUSTOM_PLUGINS),g=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},y=(_,w)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(_,w))},h=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;p.value&&_.createCustomRoute?i.push(_.createCustomRoute):m.value&&d()}};return(_,w)=>{const b=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",ZL,[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]=S=>s.value||m.value?void 0:f())},[t.createElementVNode("div",QL,[t.createElementVNode("div",e2,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",t2,[t.createVNode(E,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{size:t.unref(pi)},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(S=>y(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(k,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(g,["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:h},[t.createVNode(t.unref($n.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",o2,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",r2,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,i2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,n2),t.createElementVNode("div",{class:"plugin-card-footer",onClick:h},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,JL)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),Us=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 g;const o=e,r=n,{i18nT:i,i18n:{t:a}}=De.useI18n(),{getMessageFromError:l}=he.useErrors(),{axiosInstance:s}=he.useAxios((g=o.config)==null?void 0:g.axiosRequestConfig),c=t.computed(()=>{var y;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((y=o.plugin)==null?void 0:y.name)||a("delete.custom_plugin")})}),d=t.ref(!1),f=t.ref(""),u=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const y=o.plugin.customPluginType==="streaming"?ze.select[o.config.app].streamingCustomPluginItem:ze.select[o.config.app].schemaCustomPluginItem;let h=`${o.config.apiBaseUrl}${y}`;return h=h.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),h=h.replace(/{pluginId}/gi,o.plugin.id),h}return null}),m=async()=>{var y,h,_,w;if(d.value=!0,f.value="",!(!((y=o.plugin)!=null&&y.name)||((h=o.config)==null?void 0:h.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:k}=b;(k==null?void 0:k.status)===400&&((w=(_=k.data)==null?void 0:_.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(y,h)=>{const _=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(he.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(he.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:h[0]||(h[0]=b=>y.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(w,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:h[2]||(h[2]=b=>y.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(_,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:h[1]||(h[1]=b=>y.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),a2={class:"custom-plugins-grid"},l2={class:"empty-state-title"},s2={class:"empty-state-description"},Ks=310,c2=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}}=De.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=De.usePluginHelpers(),s=t.ref(!0),c=E=>{r("plugin-clicked",E)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const E=JSON.parse(JSON.stringify(o.pluginList))[W.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:W.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(E):E}),f=t.ref(!1),u=t.ref(null),p=E=>{f.value=!0,u.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var C;E&&(r("revalidate"),r("delete:success",((C=u.value)==null?void 0:C.name)||"")),f.value=!1,u.value=null},g=t.ref(Ks),y=t.ref(null),h=t.ref(null),_=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),w=t.ref(!1),b=()=>{g.value=Math.max(a(h.value),Ks),k()},k=()=>{var E,C;(E=h.value)!=null&&E.length&&(w.value=l(y.value,(C=h.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),g.value=Math.max(a(h.value),Ks),k(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(E,C)=>{const S=t.resolveComponent("KEmptyState"),A=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",a2,[d.value.length?(t.openBlock(),t.createBlock(A,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=R=>s.value=R),class:"custom-plugins-collapse","data-testid":`${t.unref(W.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(W.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:t.normalizeStyle(_.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(R,O)=>(t.openBlock(),t.createBlock(Fs,{key:`plugin-card-${O}`,ref_for:!0,ref_key:"pluginCardRef",ref:h,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:R,onCustomPluginDelete:T=>p(R),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(S,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",l2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",s2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(Us,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:C[1]||(C[1]=R=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),js=310,Bg=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}}=De.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=De.usePluginHelpers(),c=t.ref(js),d=t.ref(null),f=t.ref(null),u=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),js),g()},g=()=>{var y,h;(y=f.value)!=null&&y.length&&(p.value=s(d.value,(h=f.value)==null?void 0:h.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),js),g(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(y,h)=>{const _=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(_,{modelValue:o.value,"onUpdate:modelValue":h[0]||(h[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(u.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock(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:b=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[h[1]||(h[1]=t.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),d2={class:"plugin-select-grid"},u2={class:"empty-state-title"},f2={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}}=De.useI18n(),a=t.ref(!1),l=t.ref(ba),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[W.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",d2,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",u2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",f2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(Bg,{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(ya),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Bg,{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))])}}}),p2={class:"kong-ui-entities-plugin-select-form"},m2={class:"plugins-filter-input-container"},g2={key:0},h2={key:3,"aria-live":"polite",class:"plugins-results-container"},y2={"data-testid":"kong-tab"},_2={class:"tab-description"},b2={"data-testid":"custom-tab"},w2={class:"tab-description"},k2=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 F;const o=e,r=n,i=On.useRoute(),a=On.useRouter(),{i18n:{t:l}}=De.useI18n(),{pluginMetaData:s}=De.usePluginMetaData(),{getMessageFromError:c}=he.useErrors(),{sortAlpha:d,objectsAreEqual:f}=he.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),g=t.ref(""),y=t.ref([]),h=t.ref([]),_=t.ref({}),w=t.ref([]),{axiosInstance:b}=he.useAxios((F=o.config)==null?void 0:F.axiosRequestConfig),k=t.computed(()=>_.value?Object.entries(_.value).filter(([I])=>I!==W.PluginGroup.CUSTOM_PLUGINS).reduce((I,[,j])=>{for(const z of j??[])I[z.id]=z;return I},{}):{}),E=t.computed(()=>{var z;if(!_.value)return{};const I=u.value.toLowerCase(),j=JSON.parse(JSON.stringify(_.value));for(const ae in _.value){const U=((z=_.value[ae])==null?void 0:z.filter(H=>H.name.toLowerCase().includes(I)||H.id.toLowerCase().includes(I)||H.group.toLowerCase().includes(I)))||[];U.length?j[ae]=U:delete j[ae]}return j}),C=t.computed(()=>o.highlightedPluginIds.reduce((I,j)=>{const z=k.value[j];return z&&I.push(z),I},[])),S=t.computed(()=>Object.keys(E.value).length>0),A=t.computed(()=>Object.keys(_.value).length>0&&!S.value),R=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)}]:[]),O=t.computed(()=>{var j;let I=R.value.length&&((i==null?void 0:i.hash)||((j=R.value[0])==null?void 0:j.hash))||"";return I==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(I="#kong"),I}),T=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...y.value])].filter(I=>!o.ignoredPlugins.includes(I)).filter(I=>o.config.entityType&&(o.config.entityType==="services"&&s[I]&&!s[I].scope.includes(W.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[I]&&!s[I].scope.includes(W.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[I]&&!s[I].scope.includes(W.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[I]&&!s[I].scope.includes(W.PluginScope.CONSUMER))?!1:I).reduce((I,j)=>{var ee;const z=s[j]&&s[j].name||j,ae={...s[j],id:j,name:z,available:y.value.includes(j),disabledMessage:"",group:((ee=s[j])==null?void 0:ee.group)||W.PluginGroup.CUSTOM_PLUGINS};ae.group===W.PluginGroup.CUSTOM_PLUGINS&&(ae.customPluginType=h.value.find(_e=>_e.name===j)?"streaming":"schema"),o.disabledPlugins&&(ae.disabledMessage=o.disabledPlugins[j]);const U=ae.group||l("plugins.select.misc_plugins");let H=I[U];return H||(H=[]),H.push(ae),H.sort(d("name")),I[U]=H,I},{}),N=t.computed(()=>{var j;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=((j=o.config.gatewayInfo)==null?void 0:j.edition)==="community"?`${o.config.apiBaseUrl}${ze.select[o.config.app].availablePluginsForOss}`:I.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),I}),L=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""}),B=I=>{a.replace({hash:I,query:i.query})};t.watch(()=>o.disabledPlugins,(I,j)=>{!f(I,j)&&!p.value&&(_.value=T())}),t.watch(()=>o.ignoredPlugins,(I,j)=>{!f(I,j)&&!p.value&&(_.value=T())}),t.watch(p,I=>{r("loading",I)});const P=t.ref(!1),q=t.ref(!1),G=t.ref(!1);t.onBeforeMount(async()=>{P.value=await o.canCreateCustomPlugin(),q.value=await o.canEditCustomPlugin(),G.value=await o.canDeleteCustomPlugin()});const K=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var I,j;(j=(I=K.value)==null?void 0:I.input)==null||j.focus();try{const{data:z}=await b.get(N.value);if(o.config.app==="konnect"){const{names:ae}=z;if(y.value=ae||[],L.value){const{data:U}=await b.get(L.value);h.value=U.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:ae}}=z;y.value=ae?Object.keys(ae):[]}}catch(z){m.value=!0,g.value=c(z)}if(x.value)try{const{data:{data:z}}=await b.get(x.value);if(z!=null&&z.length){const ae=z.reduce((U,H)=>(H.name&&U.push(H.name),U),[]);w.value=w.value.concat(ae)}}catch{}m.value||(_.value=T()),p.value=!1}),(I,j)=>{const z=t.resolveComponent("KInput"),ae=t.resolveComponent("KSkeletonBox"),U=t.resolveComponent("KSkeleton"),H=t.resolveComponent("KEmptyState"),ee=t.resolveComponent("KTooltip"),_e=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",p2,[t.createElementVNode("div",m2,[t.createVNode(z,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":j[0]||(j[0]=be=>u.value=be),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",g2,[t.createVNode(ae,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(U,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(H,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(g.value),1)]),_:1})):A.value&&u.value?(t.openBlock(),t.createBlock(H,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(l)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",h2,[R.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(_e,{key:0,modelValue:O.value,"onUpdate:modelValue":j[5]||(j[5]=be=>O.value=be),"data-testid":"plugins-tabs",tabs:R.value,onChange:B},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",y2,[t.createElementVNode("p",_2,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Gs,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:j[1]||(j[1]=be=>I.$emit("plugin-clicked",be))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",b2,[t.renderSlot(I.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",w2,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(c2,{"can-create-custom-plugin":P.value,"can-delete-custom-plugin":G.value,"can-edit-custom-plugin":q.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":j[2]||(j[2]=be=>I.$emit("delete-custom:success",be)),onPluginClicked:j[3]||(j[3]=be=>I.$emit("plugin-clicked",be)),onRevalidate:j[4]||(j[4]=()=>_.value=T())},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(ee,{"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":u.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:j[6]||(j[6]=be=>I.$emit("plugin-clicked",be))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-a2b8a174"]]),C2={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},E2=["data-testid"],N2={class:"plugin-card-header"},x2={class:"plugin-card-title"},S2={key:0,class:"plugin-card-actions"},v2=["data-testid","title"],A2={key:0},I2={key:0},P2=["title"],T2={class:"plugin-card-footer"},O2=ve(t.defineComponent({__name:"PluginCatalogCard",props:{config:{},plugin:{}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=On.useRouter(),{i18n:{t:a}}=De.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(u.value&&!f.value&&l.value)),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=t.computed(()=>r.plugin.id==="custom-plugin-create"),u=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===W.PluginGroup.CUSTOM_PLUGINS),p=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},m=(y,h)=>{const _=r.config;r.config.app==="konnect"&&typeof _.getCustomEditRoute=="function"&&i.push(_.getCustomEditRoute(y,h))},g=()=>{if(!s.value&&r.config.app==="konnect"){const y=r.config;f.value&&y.createCustomRoute?i.push(y.createCustomRoute):u.value&&d()}};return(y,h)=>{const _=t.resolveComponent("KButton"),w=t.resolveComponent("KDropdownItem"),b=t.resolveComponent("KDropdownMenu"),k=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",C2,[t.createVNode(k,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:h[1]||(h[1]=E=>s.value||u.value?void 0:d())},[t.createElementVNode("div",N2,[t.createElementVNode("div",x2,[t.createVNode(t.unref($n.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!u.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",S2,[t.createVNode(b,{"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(ke.MoreIcon),{size:t.unref(pi)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[t.createVNode(w,{"data-testid":"edit-plugin-schema",onClick:h[0]||(h[0]=t.withModifiers(E=>m(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1}),t.createVNode(w,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(p,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:"plugin-card-body","data-testid":`${e.plugin.id}-card-body`,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[e.plugin.description||u.value&&!f.value?(t.openBlock(),t.createElementBlock("div",A2,[u.value&&!f.value?(t.openBlock(),t.createElementBlock("div",I2,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("div",{key:1,title:e.plugin.description},t.toDisplayString(e.plugin.description),9,P2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],8,v2),t.createElementVNode("div",T2,[t.createElementVNode("div",null,t.toDisplayString(f.value?t.unref(a)("actions.create_custom"):t.unref(a)("actions.configure")),1),t.renderSlot(y.$slots,"footer-extra",{},void 0,!0)])],10,E2)]),_:3},8,["text"])])}}}),[["__scopeId","data-v-ef7d59a6"]]),$2=["data-testid"],B2={class:"group-icon-wrapper"},V2={class:"group-title-text"},R2=["data-testid"],D2=["data-testid"],Vg=ve(t.defineComponent({__name:"PluginCatalogGroup",props:{config:{},name:{},plugins:{},showAllCard:{type:Boolean}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=t.computed(()=>{switch(o.name){case"Featured":return ke.PopularIcon;case"AI":return ke.BotIcon;case"Analytics & Monitoring":return ke.AnalyticsIcon;case"Authentication":return ke.LockIcon;case"Logging":return ke.ServiceDocumentIcon;case"Security":return ke.SecurityIcon;case"Serverless":return ke.RuntimeServerlessIcon;case"Traffic Control":return ke.TrafficIcon;case"Transformations":return ke.TransformationIcon;case"Deployment":return ke.DeployIcon;case"Custom Plugins":return ke.CodeblockIcon;default:return null}}),i=n,{i18n:{t:a}}=De.useI18n(),l=t.ref(!1),s=t.computed(()=>o.showAllCard?o.plugins:!l.value&&o.plugins.length>9?o.plugins.slice(0,8):o.plugins),c=t.computed(()=>!o.showAllCard&&!l.value&&o.plugins.length>9);function d(){l.value=!0}const f=t.ref(!1),u=t.ref(null),p=g=>{f.value=!0,u.value={id:g.id,name:g.name,customPluginType:g.customPluginType}},m=g=>{var y;g&&(i("revalidate"),i("delete:success",((y=u.value)==null?void 0:y.name)||"")),f.value=!1,u.value=null};return(g,y)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.name?(t.openBlock(),t.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${e.name}-title`},[t.createElementVNode("div",B2,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{color:t.unref(zu)},null,8,["color"]))]),t.createElementVNode("span",V2,t.toDisplayString(e.name),1)],8,$2)):t.createCommentVNode("",!0),t.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${e.name}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(O2,{key:`plugin-card-${h.id}`,config:e.config,plugin:h,onCustomPluginDelete:_=>p(h),onPluginClicked:_=>i("plugin-clicked",h)},t.createSlots({_:2},[h.gatewayVersion&&t.unref(ik)(t.unref(W.GATEWAY_VERSION_TIMESTAMP_MAP)[h.gatewayVersion])?{name:"footer-extra",fn:t.withCtx(()=>[t.createElementVNode("span",{class:"plugin-card-new-badge","data-testid":`plugin-card-${h.id}-new-badge`},t.toDisplayString(t.unref(a)("labels.new")),9,D2)]),key:"0"}:void 0]),1032,["config","plugin","onCustomPluginDelete","onPluginClicked"]))),128)),c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:d},t.toDisplayString(t.unref(a)("plugins.select.show_all")),1)):t.createCommentVNode("",!0)],8,R2),f.value&&u.value?(t.openBlock(),t.createBlock(Us,{key:1,config:e.config,plugin:u.value,onClosed:m,onProceed:y[0]||(y[0]=h=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-a244b0ca"]]),M2={class:"plugin-select-grid"},L2={class:"empty-state-title"},F2={class:"empty-state-description"},U2={key:1},K2=ve(t.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{}},emits:["plugin-clicked","delete:success"],setup(e,{emit:n}){const o=Dr.concat(ya),r=n,{i18n:{t:i}}=De.useI18n(),a=t.ref(ba),l=s=>{r("plugin-clicked",s)};return(s,c)=>{var f,u;const d=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",M2,[Object.keys(e.pluginList||[]).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",L2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",F2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),p=>{var m;return t.openBlock(),t.createElementBlock(t.Fragment,null,[(m=e.pluginList)!=null&&m[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Vg,{modelValue:a.value[p],"onUpdate:modelValue":g=>a.value[p]=g,config:e.config,name:p,plugins:e.pluginList[p]||[],"onDelete:success":c[0]||(c[0]=g=>r("delete:success",g)),onPluginClicked:c[1]||(c[1]=g=>l(g))},null,8,["modelValue","onUpdate:modelValue","config","name","plugins"])])):t.createCommentVNode("",!0)],64)}),256)),(u=(f=e.pluginList)==null?void 0:f["Query Result"])!=null&&u.length?(t.openBlock(),t.createElementBlock("div",U2,[t.createVNode(Vg,{modelValue:a.value["Query Result"],"onUpdate:modelValue":c[2]||(c[2]=p=>a.value["Query Result"]=p),config:e.config,plugins:e.pluginList["Query Result"]||[],"show-all-card":"",onPluginClicked:c[3]||(c[3]=p=>l(p))},null,8,["modelValue","config","plugins"])])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-c3ddcaea"]]),j2={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},G2=["title"],q2=["title"],z2={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},H2={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},Y2=ve(t.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{}},emits:["revalidate","delete:success"],setup(e,{emit:n}){const o=n,r=e,{i18n:{t:i}}=De.useI18n(),a=t.computed(()=>h.value.some(k=>{var E;return!!((E=k.plugin)!=null&&E.customPluginType)})),l=t.computed(()=>{const k=[{key:"name",label:i("plugins.select.list.table_headers.name"),sortable:!0},{key:"description",label:i("plugins.select.list.table_headers.description")},{key:"action",hideLabel:!0}];return a.value&&k.push({key:"more-actions",hideLabel:!0}),k}),s=t.computed(()=>{if(!r.pluginList)return[];const k=Object.values(r.pluginList).flat();return Array.from(new Map(k.map(C=>[C.id,C])).values()).map(C=>({id:C.id,name:C.name,description:C.description,plugin:C}))}),c=t.ref(0),d=t.ref(10),f=t.ref(1),u=t.ref(s.value),p=t.ref(!1),m=t.ref(null),g=k=>{p.value=!0,m.value={id:k.id,name:k.name,customPluginType:k.customPluginType}},y=k=>{var E;k&&(o("revalidate"),o("delete:success",((E=m.value)==null?void 0:E.name)||"")),p.value=!1,m.value=null},h=t.computed(()=>{const k=u.value.length,E=Math.max(1,Math.ceil(k/d.value)),S=(Math.min(f.value,E)-1)*d.value;return u.value.slice(S,S+d.value)});t.watch(s,()=>{u.value=[...s.value],f.value=1,c.value++});const _=({page:k})=>{f.value=k},w=({pageSize:k})=>{d.value=k},b=k=>{const{sortColumnKey:E,sortColumnOrder:C}=k;E==="name"&&(u.value=[...u.value].sort((S,A)=>{const R=(S[E]||"").toLowerCase(),O=(A[E]||"").toLowerCase();return R<O?C==="asc"?-1:1:R>O?C==="asc"?1:-1:0}))};return(k,E)=>{const C=t.resolveComponent("KButton"),S=t.resolveComponent("KDropdownItem"),A=t.resolveComponent("KDropdown"),R=t.resolveComponent("KTableView"),O=t.resolveComponent("KCard");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(O,{"data-testid":"plugin-catalog-list-view-card"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(R,{key:c.value,class:"plugin-catalog-table","client-sort":"",data:h.value,"data-testid":"plugin-catalog-list-view-table",headers:l.value,"pagination-attributes":{totalCount:s.value.length,currentPage:f.value,initialPageSize:d.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:_,onPageSizeChange:w,onSort:b},{name:t.withCtx(({row:T})=>[t.createElementVNode("span",j2,[t.createVNode(t.unref($n.PluginIcon),{"data-testid":`plugin-catalog-list-view-${T.plugin.id}-icon`,name:T.plugin.id,size:20},null,8,["data-testid","name"]),t.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:T.name},t.toDisplayString(T.name),9,G2)])]),description:t.withCtx(({row:T})=>[t.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:T.description},t.toDisplayString(T.description),9,q2)]),action:t.withCtx(({row:T})=>[t.createElementVNode("div",z2,[t.createVNode(C,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:r.config.getCreateRoute(T.id)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":t.withCtx(({row:T})=>{var N;return[(N=T.plugin)!=null&&N.customPluginType?(t.openBlock(),t.createElementBlock("div",H2,[t.createVNode(A,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:t.withCtx(()=>{var L,x;return[t.createVNode(S,{"data-testid":"edit-plugin-schema",to:(x=(L=e.config).getCustomEditRoute)==null?void 0:x.call(L,T.plugin.name,T.plugin.customPluginType)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.edit")),1)]),_:1},8,["to"]),t.createVNode(S,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:()=>g(T.plugin)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("actions.delete")),1)]),_:1},8,["onClick"])]}),default:t.withCtx(()=>[t.createVNode(t.unref(ke.MoreIcon),{color:t.unref(Co),size:t.unref(pi)},null,8,["color","size"])]),_:2},1024)])):t.createCommentVNode("",!0)]}),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),p.value&&m.value?(t.openBlock(),t.createBlock(Us,{key:0,config:e.config,plugin:m.value,onClosed:y,onProceed:E[0]||(E[0]=T=>y(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-3df3760d"]]),W2={class:"plugin-catalog","data-testid":"plugin-catalog"},X2={class:"plugin-filter","data-testid":"plugin-filter"},Z2={class:"plugin-filter-title"},J2={class:"featured-title"},Q2={class:"plugin-featured-filter"},eF=["data-testid"],tF={class:"group-title"},nF={class:"plugin-type-filter"},oF=["data-testid"],rF={class:"plugins-container"},iF={class:"plugins-filter-input-container"},aF={class:"icon-container"},lF={key:0},sF={key:3,"aria-live":"polite",class:"plugins-results-container"},cF=ve(t.defineComponent({__name:"PluginCatalog",props:{config:{},disabledPlugins:{},highlightedPluginIds:{},customPluginSupport:{},availableOnServer:{type:Boolean,default:!0}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var B;const o=n,{i18n:{t:r}}=De.useI18n(),{pluginMetaData:i}=De.usePluginMetaData(),{getMessageFromError:a}=he.useErrors(),{sortAlpha:l,objectsAreEqual:s}=he.useHelpers(),c=e,{axiosInstance:d}=he.useAxios((B=c.config)==null?void 0:B.axiosRequestConfig),f=t.useTemplateRef("filter-input"),u=t.ref(""),p=t.ref(!1),m=t.ref(!1),g=t.ref(Object.fromEntries(Dr.concat(_a).map(P=>[P,!1]))),y=t.ref(!0),h=t.ref(!1),_=t.ref(""),w=t.ref([]),b=t.ref([]),k=t.ref({}),E=t.ref([]),C=t.ref(!1),S=t.computed(()=>C.value?ke.GridIcon:ke.ListIcon),A=t.computed(()=>{var q;let P=`${c.config.apiBaseUrl}${ze.select[c.config.app].availablePlugins}`;return c.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(P=((q=c.config.gatewayInfo)==null?void 0:q.edition)==="community"?`${c.config.apiBaseUrl}${ze.select[c.config.app].availablePluginsForOss}`:P.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),P}),R=t.computed(()=>{if(c.config.app==="konnect"&&c.customPluginSupport==="streaming"){let P=`${c.config.apiBaseUrl}${ze.select[c.config.app].streamingCustomPlugins}`;return P=P.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""),P}return null}),O=t.computed(()=>{if(c.config.entityType&&c.config.entityId){let P=`${c.config.apiBaseUrl}${ze.list[c.config.app].forEntity}`;return c.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(P=P.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),P.replace(/{entityType}/gi,c.config.entityType||"").replace(/{entityId}/gi,c.config.entityId||"")}return""}),T=t.computed(()=>{var j;if(!k.value)return{};const P=Object.entries(g.value).filter(([z,ae])=>ae).map(([z])=>z);let q={};P.length===0&&(q=k.value),P.forEach(z=>{k.value[z]&&(q[z]=k.value[z])});const G=u.value.toLowerCase();if(!G)return q;const K=JSON.parse(JSON.stringify(q));for(const z in q){const ae=((j=q[z])==null?void 0:j.filter(U=>[U.name.toLowerCase(),U.id.toLowerCase()].some(ee=>rk(G,ee).length===G.length)))||[];ae.length?K[z]=ae:delete K[z]}const F=Object.values(K).flat().filter(z=>!!z),I=Array.from(F.reduce((z,ae)=>(z.has(ae.id)||z.set(ae.id,ae),z),new Map).values());return I.length?{"Query Result":I}:{}}),N=t.computed(()=>Object.keys(T.value).length>0),L=t.computed(()=>Object.keys(k.value).length>0&&!N.value),x=()=>{const P=[...new Set([...Object.keys({...c.availableOnServer?{}:i}),...w.value])].filter(q=>c.config.entityType&&(c.config.entityType==="services"&&i[q]&&!i[q].scope.includes(W.PluginScope.SERVICE)||c.config.entityType==="routes"&&i[q]&&!i[q].scope.includes(W.PluginScope.ROUTE)||c.config.entityType==="consumer_groups"&&i[q]&&!i[q].scope.includes(W.PluginScope.CONSUMER_GROUP)||c.config.entityType==="consumers"&&i[q]&&!i[q].scope.includes(W.PluginScope.CONSUMER))?!1:q).reduce((q,G)=>{var z;const K=i[G]&&i[G].name||G,F={...i[G],id:G,name:K,available:w.value.includes(G),disabledMessage:"",group:((z=i[G])==null?void 0:z.group)||W.PluginGroup.CUSTOM_PLUGINS};F.group===W.PluginGroup.CUSTOM_PLUGINS&&(F.customPluginType=b.value.find(ae=>ae.name===G)?"streaming":"schema"),c.disabledPlugins&&(F.disabledMessage=c.disabledPlugins[G]);const I=F.group||r("plugins.select.misc_plugins");let j=q[I];return j||(j=[]),j.push(F),j.sort(l("name")),q[I]=j,q},{});return c.highlightedPluginIds&&c.highlightedPluginIds.length>0&&(P.Featured=c.highlightedPluginIds.flatMap(q=>{var K;const G=i[q];return G?{...G,id:q,name:G.name||q,available:w.value.includes(q),disabledMessage:((K=c.disabledPlugins)==null?void 0:K[q])||"",group:G.group||W.PluginGroup.CUSTOM_PLUGINS}:[]}).filter(Boolean)),P};return t.watch(()=>c.disabledPlugins,(P,q)=>{!s(P||{},q||{})&&!y.value&&(k.value=x())}),t.watch(y,P=>{o("loading",P)}),t.onMounted(async()=>{var P,q;(q=(P=f.value)==null?void 0:P.input)==null||q.focus();try{const{data:G}=await d.get(A.value);if(c.config.app==="konnect"){const{names:K}=G;if(w.value=K||[],R.value){const{data:F}=await d.get(R.value);b.value=F.data||[]}}else if(c.config.app==="kongManager"){const{plugins:{available_on_server:K}}=G;w.value=K?Object.keys(K):[]}}catch(G){h.value=!0,_.value=a(G)}if(O.value)try{const{data:{data:G}}=await d.get(O.value);if(G!=null&&G.length){const K=G.reduce((F,I)=>(I.name&&F.push(I.name),F),[]);E.value=E.value.concat(K)}}catch{}h.value||(k.value=x()),y.value=!1}),(P,q)=>{const G=t.resolveComponent("KCheckbox"),K=t.resolveComponent("KBadge"),F=t.resolveComponent("KCollapse"),I=t.resolveComponent("KInput"),j=t.resolveComponent("KSkeletonBox"),z=t.resolveComponent("KSkeleton"),ae=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",W2,[t.createElementVNode("div",X2,[t.createElementVNode("div",Z2,t.toDisplayString(t.unref(r)("plugins.select.filter.title")),1),t.createVNode(F,{modelValue:p.value,"onUpdate:modelValue":q[0]||(q[0]=U=>p.value=U)},{title:t.withCtx(()=>[t.createElementVNode("div",J2,t.toDisplayString(t.unref(r)("plugins.select.filter.featured")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Q2,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(Dr),U=>(t.openBlock(),t.createElementBlock("div",{key:U,class:"plugin-filter-item","data-testid":`plugin-filter-item-${U}`},[t.createVNode(G,{modelValue:g.value[U],"onUpdate:modelValue":H=>g.value[U]=H,label:U},null,8,["modelValue","onUpdate:modelValue","label"]),t.createVNode(K,{appearance:"neutral"},{default:t.withCtx(()=>{var H,ee;return[t.createTextVNode(t.toDisplayString(((ee=(H=k.value)==null?void 0:H[U])==null?void 0:ee.length)||0),1)]}),_:2},1024)],8,eF))),128))])]),_:1},8,["modelValue"]),t.createVNode(F,{modelValue:m.value,"onUpdate:modelValue":q[1]||(q[1]=U=>m.value=U)},{title:t.withCtx(()=>[t.createElementVNode("div",tF,t.toDisplayString(t.unref(r)("plugins.select.filter.type")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",nF,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(_a),U=>(t.openBlock(),t.createElementBlock("div",{key:U,class:"plugin-filter-item","data-testid":`plugin-filter-item-${U}`},[t.createVNode(G,{modelValue:g.value[U],"onUpdate:modelValue":H=>g.value[U]=H,"data-testid":`plugin-filter-checkbox-${U}`,label:U},null,8,["modelValue","onUpdate:modelValue","data-testid","label"]),t.createVNode(K,{appearance:"neutral","data-testid":`plugin-filter-count-${U}`},{default:t.withCtx(()=>{var H,ee;return[t.createTextVNode(t.toDisplayString(((ee=(H=k.value)==null?void 0:H[U])==null?void 0:ee.length)||0),1)]}),_:2},1032,["data-testid"])],8,oF))),128))])]),_:1},8,["modelValue"])]),t.createElementVNode("div",rF,[t.createElementVNode("div",iF,[t.createVNode(I,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":q[2]||(q[2]=U=>u.value=U),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:t.unref(r)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),t.createElementVNode("div",aF,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(S.value),{class:"plugins-filter-icon",color:t.unref(M1),onClick:q[3]||(q[3]=U=>C.value=!C.value)},null,8,["color"]))])]),y.value?(t.openBlock(),t.createElementBlock("section",lF,[t.createVNode(j,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(z,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):h.value?(t.openBlock(),t.createBlock(ae,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(_.value),1)]),_:1})):L.value&&u.value?(t.openBlock(),t.createBlock(ae,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(r)("search.no_results",{filter:u.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",sF,[C.value?(t.openBlock(),t.createBlock(Y2,{key:0,config:e.config,"plugin-list":T.value,"onDelete:success":q[4]||(q[4]=U=>P.$emit("delete-custom:success",U))},null,8,["config","plugin-list"])):(t.openBlock(),t.createBlock(K2,{key:1,config:e.config,"plugin-list":T.value,"onDelete:success":q[5]||(q[5]=U=>P.$emit("delete-custom:success",U)),onPluginClicked:q[6]||(q[6]=U=>P.$emit("plugin-clicked",U))},null,8,["config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-2d691c7b"]]),dF={key:1,class:"datakit-config-card-canvas"},uF={class:"config-card-details-label","data-testid":"datakit-configuration-label"},fF={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},pF={class:"canvas-wrapper"},mF=ve(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{},item:{}},setup(e){const n=t.computed(()=>{var o;return xg.safeParse((o=e.pluginData)==null?void 0:o.config).success});return af(e.pluginData),(o,r)=>{const i=t.resolveComponent("KLabel");return n.value?(t.openBlock(),t.createElementBlock("div",dF,[t.createElementVNode("div",uF,[t.createVNode(i,null,{default:t.withCtx(()=>[...r[0]||(r[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",fF,[t.createElementVNode("div",pF,[t.createVNode(Vs,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])):(t.openBlock(),t.createBlock(t.unref(he.ConfigCardItem),{key:0,item:e.item},null,8,["item"]))}}}),[["__scopeId","data-v-0dc992b2"]]),gF={class:"kong-ui-entity-plugin-config-card"},hF={class:"name-cell-wrapper"},yF={class:"info-name"},_F={key:0},bF={key:0},wF={key:0},kF={key:0},CF={key:0},qs="config",EF=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 k;const o=n,r=e,{i18n:{t:i}}=De.useI18n(),a=De.usePluginMetaData(),{setFieldType:l}=De.usePluginHelpers(),{getPropValue:s}=he.useHelpers(),c=t.computed(()=>{var C;let E=(C=ze.item[r.config.app])==null?void 0:C[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(r.config.app==="konnect"){const S=r.expandPartial?"&":"?";E=E.concat(`${S}__ui_data=true`)}return E}),d=t.computed(()=>{var S,A;const E={},C=((S=_.value)==null?void 0:S.fields)||[];for(let R=0;R<C.length;R++){const O=_.value.fields[R],T=(A=Object.keys(O))==null?void 0:A[0];l(E,T,O[T])}return{...E,instance_name:{section:he.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:he.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:he.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:he.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:he.ConfigurationSchemaSection.Basic,order:6},protocols:{type:he.ConfigurationSchemaType.BadgeTag,section:he.ConfigurationSchemaSection.Basic,order:7}}}),f=t.computed(()=>{var C,S,A;if(!((C=_.value)!=null&&C.fields))return[];const E=(S=_.value.fields)==null?void 0:S.find(R=>{var T;return((T=Object.keys(R))==null?void 0:T[0])===qs});return((A=E==null?void 0:E[qs])==null?void 0:A.fields)||[]}),u=t.computed(()=>{var C,S;const E={};if(!f.value)return E;for(let A=0;A<((C=f.value)==null?void 0:C.length);A++){const R=f.value[A],O=(S=Object.keys(R))==null?void 0:S[0],T=R[O];T.required&&(E[O]={order:1}),l(E,O,T)}return E}),p=E=>{var S;const C=(S=a.pluginMetaData[r.config.pluginType])==null?void 0:S.scope;return C?Object.fromEntries(Object.entries(E).filter(([A,R])=>R?!0:!(A==="service"&&!C.includes(W.PluginScope.SERVICE)||A==="route"&&!C.includes(W.PluginScope.ROUTE)||A==="consumer"&&!C.includes(W.PluginScope.CONSUMER)||A==="consumer_group"&&!C.includes(W.PluginScope.CONSUMER_GROUP)))):E},m=E=>Gn(E,"__ui_data"),{getMessageFromError:g}=he.useErrors(),{axiosInstance:y}=he.useAxios((k=r.config)==null?void 0:k.axiosRequestConfig),h=t.computed(()=>{var C,S;let E=`${r.config.apiBaseUrl}${ze.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?E=E.replace(/{controlPlaneId}/gi,((C=r.config)==null?void 0:C.controlPlaneId)||""):r.config.app==="kongManager"&&(E=E.replace(/\/{workspace}/gi,(S=r.config)!=null&&S.workspace?`/${r.config.workspace}`:"")),E=E.replace(/{plugin}/gi,r.config.pluginType),E}),_=t.ref({});he.useSchemaProvider(_);const w=t.ref(!1),b=t.ref("");return t.onBeforeMount(async()=>{w.value=!0;try{const{data:E}=await y.get(h.value);_.value=E}catch(E){b.value=g(E),o("error:fetch-schema",E)}finally{w.value=!1}}),(E,C)=>{const S=t.resolveComponent("KSkeleton"),A=t.resolveComponent("KEmptyState"),R=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",gF,[w.value?(t.openBlock(),t.createBlock(S,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):b.value?(t.openBlock(),t.createBlock(A,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(b.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(he.EntityBaseConfigCard),{key:2,"code-block-record-formatter":m,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(he.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":qs,"plugin-config-schema":u.value,"record-resolver":p,"onFetch:error":C[0]||(C[0]=O=>E.$emit("fetch:error",O)),"onFetch:success":C[1]||(C[1]=O=>E.$emit("fetch:success",O)),onLoading:C[2]||(C[2]=O=>E.$emit("loading",O))},t.createSlots({name:t.withCtx(O=>[t.createElementVNode("div",hF,[t.createVNode(t.unref($n.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",O),size:24},null,8,["name"]),t.createElementVNode("span",yF,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",O))),1)])]),consumer:t.withCtx(O=>[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",O).id,value:t.unref(s)("rowValue",O).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",t.unref(s)("rowValue",O).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",_F,"–"))]),route:t.withCtx(O=>[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",O).id,value:t.unref(s)("rowValue",O).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",t.unref(s)("rowValue",O).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",bF,"–"))]),service:t.withCtx(O=>[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",O).id,value:t.unref(s)("rowValue",O).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",t.unref(s)("rowValue",O).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",wF,"–"))]),consumer_group:t.withCtx(O=>[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",O).id,value:t.unref(s)("rowValue",O).id,type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>E.$emit("navigation-click",t.unref(s)("rowValue",O).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",kF,"–"))]),partials:t.withCtx(O=>{var T,N,L,x,B,P,q,G,K;return[t.unref(s)("rowValue",O)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(he.InternalLinkItem),{key:1,item:{key:(N=(T=t.unref(s)("rowValue",O))==null?void 0:T[0])==null?void 0:N.id,value:((x=(L=t.unref(s)("rowValue",O))==null?void 0:L[0])==null?void 0:x.id)+((P=(B=t.unref(s)("rowValue",O))==null?void 0:B[0])!=null&&P.name?"/"+((G=(q=t.unref(s)("rowValue",O))==null?void 0:q[0])==null?void 0:G.name):""),type:t.unref(he.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var F,I;return E.$emit("navigation-click",(I=(F=t.unref(s)("rowValue",O))==null?void 0:F[0])==null?void 0:I.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(R,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",O).label}),"data-testid":"partial-copy-uuid",text:(K=t.unref(s)("rowValue",O))==null?void 0:K[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",CF,"–"))]}),_:2},[e.config.pluginType==="datakit"&&e.config.app==="konnect"?{name:"config-card-item-nodes",fn:t.withCtx(O=>[t.createVNode(mF,{item:O.row,"plugin-data":O.record},null,8,["item","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-0c1ac825"]]),{usePluginMetaData:NF,useProvideExperimentalFreeForms:xF}=De;Object.defineProperty(Ae,"PluginGroup",{enumerable:!0,get:()=>W.PluginGroup}),Object.defineProperty(Ae,"PluginScope",{enumerable:!0,get:()=>W.PluginScope}),Object.defineProperty(Ae,"PluginIcon",{enumerable:!0,get:()=>$n.PluginIcon}),Object.defineProperty(Ae,"getPluginIconURL",{enumerable:!0,get:()=>$n.getPluginIconURL}),Ae.EXPERIMENTAL_FREE_FORM_PROVIDER=Xa,Ae.EntityTypeIdField=Bn,Ae.FEATURE_FLAGS=pk,Ae.PLUGIN_GROUPS_COLLAPSE_STATUS=ba,Ae.PluginCatalog=cF,Ae.PluginConfigCard=EF,Ae.PluginFeaturedArray=Dr,Ae.PluginForm=UL,Ae.PluginGroupArray=ya,Ae.PluginGroupArraySortedAlphabetically=_a,Ae.PluginList=XL,Ae.PluginPartialType=Rr,Ae.PluginSelect=k2,Ae.PluginSelectCard=Fs,Ae.PluginSelectGrid=Gs,Ae.TOASTER_PROVIDER=_d,Ae.pluginEndpoints=ze,Ae.usePluginMetaData=NF,Ae.useProvideExperimentalFreeForms=xF,Object.defineProperty(Ae,Symbol.toStringTag,{value:"Module"})});
|