@kong-ui-public/entities-plugins 9.126.0 → 9.127.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (26) hide show
  1. package/dist/entities-plugins.es.js +7904 -7576
  2. package/dist/entities-plugins.umd.js +39 -35
  3. package/dist/style.css +1 -1
  4. package/dist/types/components/PluginEntityForm.vue.d.ts +3 -0
  5. package/dist/types/components/PluginEntityForm.vue.d.ts.map +1 -1
  6. package/dist/types/components/free-form/Common/ConfigForm.vue.d.ts.map +1 -1
  7. package/dist/types/components/free-form/Datakit/flow-editor/FlowEditor.vue.d.ts +2 -2
  8. package/dist/types/components/free-form/Datakit/flow-editor/store/flow.d.ts +6 -6
  9. package/dist/types/components/free-form/Datakit/flow-editor/store/store.d.ts +4 -4
  10. package/dist/types/components/free-form/Datakit/schema/strict.d.ts +3 -3
  11. package/dist/types/components/free-form/shared/Form.vue.d.ts +2 -1
  12. package/dist/types/components/free-form/shared/Form.vue.d.ts.map +1 -1
  13. package/dist/types/components/free-form/shared/ObjectField.vue.d.ts +2 -1
  14. package/dist/types/components/free-form/shared/ObjectField.vue.d.ts.map +1 -1
  15. package/dist/types/components/free-form/shared/composables.d.ts +28 -2
  16. package/dist/types/components/free-form/shared/composables.d.ts.map +1 -1
  17. package/dist/types/components/free-form/shared/layout/StandardLayout.vue.d.ts +2 -1
  18. package/dist/types/components/free-form/shared/layout/StandardLayout.vue.d.ts.map +1 -1
  19. package/dist/types/components/free-form/shared/types.d.ts +40 -0
  20. package/dist/types/components/free-form/shared/types.d.ts.map +1 -1
  21. package/dist/types/components/free-form/shared/utils.d.ts +42 -1
  22. package/dist/types/components/free-form/shared/utils.d.ts.map +1 -1
  23. package/dist/types/definitions/metadata.d.ts.map +1 -1
  24. package/dist/types/types/plugin.d.ts +2 -0
  25. package/dist/types/types/plugin.d.ts.map +1 -1
  26. package/package.json +6 -6
@@ -1,47 +1,51 @@
1
- (function(Ie,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("monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js"),require("@shikijs/core"),require("@shikijs/engine-javascript"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@vueuse/core","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js","@shikijs/core","@shikijs/engine-javascript","zod","@kong-ui-public/entities-plugins-icon"],t):(Ie=typeof globalThis<"u"?globalThis:Ie||self,t(Ie["kong-ui-public-entities-plugins"]={},Ie.Vue,Ie["kong-ui-public-entities-shared"],Ie.marked,Ie.VueRouter,Ie["kong-ui-public-i18n"],Ie.entitiesPluginsMetadata,Ie.forms,Ie.entitiesVaults,null,Ie.core$1,Ie.KongIcons,Ie.Kongponents,Ie.entitiesRedisConfigurations,null,Ie.monaco,null,Ie.core$2,Ie.engineJavascript,Ie.zod,Ie.entitiesPluginsIcon))})(this,function(Ie,t,ye,Cr,eo,Ze,Z,Ue,Po,K2,Ge,ve,Be,As,G2,pg,j2,Is,mg,ee,Oo){"use strict";var F2=Object.defineProperty;var U2=(Ie,t,ye)=>t in Ie?F2(Ie,t,{enumerable:!0,configurable:!0,writable:!0,value:ye}):Ie[t]=ye;var ot=(Ie,t,ye)=>U2(Ie,typeof t!="symbol"?t+"":t,ye);function gg(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return n.default=e,Object.freeze(n)}const Er=gg(pg),rt={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here.",learn_more:"Learn more"}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service."},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."},"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",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Select a route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Select a consumer group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View advanced parameters",hide:"Hide advanced parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"These parameters are mutually required: {parameters}",mutually_exclusive:"These parameters are mutually exclusive: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Set the plugin's behavior by defining its configuration settings."}}},"free-form":{"ai-mcp-proxy":{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:",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."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved.",phase_mask_help:"You can't add call nodes in the response phase."},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2",foreign_placeholder:"Enter a UUID of {entity}"}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",badge:"Recommended"},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact 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&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error message",code_placeholder:"Code message",message_placeholder:"Error message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
1
+ (function(Ie,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("monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js"),require("@shikijs/core"),require("@shikijs/engine-javascript"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@vueuse/core","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","monaco-editor/esm/vs/basic-languages/yaml/yaml.contribution.js","@shikijs/core","@shikijs/engine-javascript","zod","@kong-ui-public/entities-plugins-icon"],t):(Ie=typeof globalThis<"u"?globalThis:Ie||self,t(Ie["kong-ui-public-entities-plugins"]={},Ie.Vue,Ie["kong-ui-public-entities-shared"],Ie.marked,Ie.VueRouter,Ie["kong-ui-public-i18n"],Ie.entitiesPluginsMetadata,Ie.forms,Ie.entitiesVaults,null,Ie.core$1,Ie.KongIcons,Ie.Kongponents,Ie.entitiesRedisConfigurations,null,Ie.monaco,null,Ie.core$2,Ie.engineJavascript,Ie.zod,Ie.entitiesPluginsIcon))})(this,function(Ie,t,ye,Nr,no,Ze,Z,Ue,$o,z2,je,ve,Be,Ps,H2,yg,Y2,Os,_g,ee,Bo){"use strict";var G2=Object.defineProperty;var q2=(Ie,t,ye)=>t in Ie?G2(Ie,t,{enumerable:!0,configurable:!0,writable:!0,value:ye}):Ie[t]=ye;var rt=(Ie,t,ye)=>q2(Ie,typeof t!="symbol"?t+"":t,ye);function bg(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 xr=bg(yg),it={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here.",learn_more:"Learn more"}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service."},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."},"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",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Select a route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Select a consumer group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View advanced parameters",hide:"Hide advanced parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"These parameters are mutually required: {parameters}",mutually_exclusive:"These parameters are mutually exclusive: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Set the plugin's behavior by defining its configuration settings."}}},"free-form":{"ai-mcp-proxy":{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:",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."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved.",phase_mask_help:"You can't add call nodes in the response phase."},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2",foreign_placeholder:"Enter a UUID of {entity}"}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",badge:"Recommended"},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact 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&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error message",code_placeholder:"Code message",message_placeholder:"Error message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
2
2
  If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
3
- will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function Re(){const e=Ze.createI18n("en-us",rt);return{i18n:e,i18nT:Ze.i18nTComponent(e)}}function Ts(){const{capitalize:e}=ye.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var h,g,y;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:ye.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:ye.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:ye.ConfigurationSchemaType.Text,...u[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(u[p]={type:ye.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:ye.ConfigurationSchemaType.BadgeMethod,...u[p]}:((g=m.elements)==null?void 0:g.type)==="string"?m.encrypted?u[p]={type:ye.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:ye.ConfigurationSchemaType.BadgeTag,...u[p]}:((y=m.elements)==null?void 0:y.type)==="record"&&(u[p]={type:ye.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:ye.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:ye.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const h=m.split(".");h.reduce((g,y,_)=>g[y]||(g[y]=isNaN(h[_+1])?h.length-1===_?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",h=!1)=>{const g=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(y=>{y.match(g)&&delete u[y]}):h?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const h=u[m].$el;p=h.offsetHeight>p?h.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,h;if(u&&p){const g=(h=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:h.split(" ").length;return p>g}return!0}}}var Nr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Nr||{});const Ps=[Z.PluginGroup.AUTHENTICATION,Z.PluginGroup.AI,Z.PluginGroup.SECURITY,Z.PluginGroup.TRAFFIC_CONTROL,Z.PluginGroup.SERVERLESS,Z.PluginGroup.ANALYTICS_AND_MONITORING,Z.PluginGroup.TRANSFORMATIONS,Z.PluginGroup.LOGGING,Z.PluginGroup.DEPLOYMENT,Z.PluginGroup.WEBSOCKET,Z.PluginGroup.CUSTOM_PLUGINS],Os={[Z.PluginGroup.AUTHENTICATION]:!1,[Z.PluginGroup.AI]:!1,[Z.PluginGroup.SECURITY]:!1,[Z.PluginGroup.TRAFFIC_CONTROL]:!1,[Z.PluginGroup.SERVERLESS]:!1,[Z.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[Z.PluginGroup.TRANSFORMATIONS]:!1,[Z.PluginGroup.LOGGING]:!1,[Z.PluginGroup.DEPLOYMENT]:!1,[Z.PluginGroup.CUSTOM_PLUGINS]:!1};var Nn=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(Nn||{});const xn=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Sn={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"},to={getColumnFields:xn,tags:Sn,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}}}},$s={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Sn}]},hg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{group:{required:!0,type:"string",hint:"The arbitrary group name to associate to the consumer."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Bs={fields:[{username:{}},{password:{inputType:"password"}},{tags:Sn}]},yg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0}},{password:{type:"string",required:!0,encrypted:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Vs=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}=Ke.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(Ue.FORMS_CONFIG),{axiosInstance:l}=ye.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 h=[];do{const g=await l.get(m);g&&g.data&&g.data.data&&h.push(...g.data.data.map(y=>({value:y.id,label:y.name,group:r("custom_field.key_auth_identity_realms.realm_group_label")}))),m=g.data.meta.next?`${a==null?void 0:a.apiBaseUrl}${g.data.meta.next}`:null}while(m);d.value=[i,...h]}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 h=m.includes("current-cp")?[{scope:"cp",id:null,region:null}]:[],g=n.value.filter(({scope:S})=>S!=="cp").map(({id:S})=>S),y=m.filter(S=>S!=="current-cp"),b=(g.length!==y.length||g.some(S=>!y.includes(S))?y.filter(S=>!g.includes(S)):y).map(S=>({...s(),scope:"realm",id:S}));n.value=[...h,...b]};return t.onMounted(()=>{f()}),(m,h)=>{const g=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(g,{items:d.value,loading:c.value,"model-value":u.value,"onUpdate:modelValue":p},null,8,["items","loading","model-value"])}}}),_g={class:"field-wrapper"},bg=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}=Ue.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",_g,[t.createVNode(Vs,{modelValue:t.unref(l),"onUpdate:modelValue":c[0]||(c[0]=d=>t.isRef(l)?l.value=d:null)},null,8,["modelValue"])]))}}),Ae=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},wg=Ae(bg,[["__scopeId","data-v-269e85ed"]]),Ds={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:Sn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},kg=e=>{var n;return(e==null?void 0:e.app)==="kongManager"?{fieldsToDelete:["config-identity_realms"],shamefullyTransformPayload:({payload:o})=>{(e!=null&&e.credential&&typeof o.ttl!="number"||Number.isNaN(o.ttl))&&(o.ttl=0)}}:{"config-identity_realms":{component:((n=e==null?void 0:e.experimentalRenders)==null?void 0:n.keyAuthIdentityRealms)??!1?t.markRaw(wg):null}}},Cg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",encrypted:!0,unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Rs={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
3
+ will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function De(){const e=Ze.createI18n("en-us",it);return{i18n:e,i18nT:Ze.i18nTComponent(e)}}function $s(){const{capitalize:e}=ye.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var h,g,y;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:ye.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:ye.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:ye.ConfigurationSchemaType.Text,...u[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(u[p]={type:ye.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:ye.ConfigurationSchemaType.BadgeMethod,...u[p]}:((g=m.elements)==null?void 0:g.type)==="string"?m.encrypted?u[p]={type:ye.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:ye.ConfigurationSchemaType.BadgeTag,...u[p]}:((y=m.elements)==null?void 0:y.type)==="record"&&(u[p]={type:ye.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:ye.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:ye.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const h=m.split(".");h.reduce((g,y,_)=>g[y]||(g[y]=isNaN(h[_+1])?h.length-1===_?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",h=!1)=>{const g=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(y=>{y.match(g)&&delete u[y]}):h?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const h=u[m].$el;p=h.offsetHeight>p?h.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,h;if(u&&p){const g=(h=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:h.split(" ").length;return p>g}return!0}}}var Sr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Sr||{});const Bs=[Z.PluginGroup.AUTHENTICATION,Z.PluginGroup.AI,Z.PluginGroup.SECURITY,Z.PluginGroup.TRAFFIC_CONTROL,Z.PluginGroup.SERVERLESS,Z.PluginGroup.ANALYTICS_AND_MONITORING,Z.PluginGroup.TRANSFORMATIONS,Z.PluginGroup.LOGGING,Z.PluginGroup.DEPLOYMENT,Z.PluginGroup.WEBSOCKET,Z.PluginGroup.CUSTOM_PLUGINS],Vs={[Z.PluginGroup.AUTHENTICATION]:!1,[Z.PluginGroup.AI]:!1,[Z.PluginGroup.SECURITY]:!1,[Z.PluginGroup.TRAFFIC_CONTROL]:!1,[Z.PluginGroup.SERVERLESS]:!1,[Z.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[Z.PluginGroup.TRANSFORMATIONS]:!1,[Z.PluginGroup.LOGGING]:!1,[Z.PluginGroup.DEPLOYMENT]:!1,[Z.PluginGroup.CUSTOM_PLUGINS]:!1};var Sn=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(Sn||{});const vn=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},An={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"},oo={getColumnFields:vn,tags:An,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}}}},Rs={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:An}]},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}},{group:{required:!0,type:"string",hint:"The arbitrary group name to associate to the consumer."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ds={fields:[{username:{}},{password:{inputType:"password"}},{tags:An}]},kg={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"}}]},Ms=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}=Ke.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(Ue.FORMS_CONFIG),{axiosInstance:l}=ye.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 h=[];do{const g=await l.get(m);g&&g.data&&g.data.data&&h.push(...g.data.data.map(y=>({value:y.id,label:y.name,group:r("custom_field.key_auth_identity_realms.realm_group_label")}))),m=g.data.meta.next?`${a==null?void 0:a.apiBaseUrl}${g.data.meta.next}`:null}while(m);d.value=[i,...h]}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 h=m.includes("current-cp")?[{scope:"cp",id:null,region:null}]:[],g=n.value.filter(({scope:E})=>E!=="cp").map(({id:E})=>E),y=m.filter(E=>E!=="current-cp"),b=(g.length!==y.length||g.some(E=>!y.includes(E))?y.filter(E=>!g.includes(E)):y).map(E=>({...s(),scope:"realm",id:E}));n.value=[...h,...b]};return t.onMounted(()=>{f()}),(m,h)=>{const g=t.resolveComponent("KMultiselect");return t.openBlock(),t.createBlock(g,{items:d.value,loading:c.value,"model-value":u.value,"onUpdate:modelValue":p},null,8,["items","loading","model-value"])}}}),Cg={class:"field-wrapper"},Eg=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}=Ue.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",Cg,[t.createVNode(Ms,{modelValue:t.unref(l),"onUpdate:modelValue":c[0]||(c[0]=d=>t.isRef(l)?l.value=d:null)},null,8,["modelValue"])]))}}),Ae=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},Ng=Ae(Eg,[["__scopeId","data-v-269e85ed"]]),Ls={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:An},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},xg=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(Ng):null}}},Sg={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"}}]},Fs={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:Sn}]},Eg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",encrypted:!0,hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ng={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
6
+ send it as part of the response body.`}},{tags:An}]},vg={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"}}]},Ag={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:Sn}]},xg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",encrypted:!0,unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string",encrypted:!0}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ms={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
9
+ this credential. If left out, will be auto-generated.`}},{tags:An}]},Ig={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"}}]},Us={fields:[{name:{}},{client_id:{submitWhenNull:!1,hint:`You can optionally set your own unique client_id. If missing, it
10
10
  will be generated for you.`,inputType:"text",encrypted:!0}},{client_secret:{submitWhenNull:!1,hint:`You can optionally set your own unique client_secret. If missing,
11
- it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:to.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:to.tags}]},Sg={fields:[{id:{uuid:!0,auto:!0,type:"string",description:"A string representing a UUID (universally unique identifier)."}},{created_at:{description:"An integer representing an automatic Unix timestamp in seconds.",timestamp:!0,auto:!0,type:"integer"}},{consumer:{on_delete:"cascade",type:"foreign",reference:"consumers",required:!0}},{name:{required:!0,type:"string"}},{client_id:{required:!1,hint:"You can optionally set your own unique client_id. If missing, it will be generated for you.",unique:!0,auto:!0,type:"string"}},{client_secret:{required:!1,hint:"You can optionally set your own unique client_secret. If missing, it will be generated for you.",auto:!0,type:"string",encrypted:!0}},{hash_secret:{required:!0,type:"boolean",default:!1}},{redirect_uris:{required:!1,hint:"One or more URLs in your app where users will be sent after authorization (RFC 6742 Section 3.1.2)",type:"array",elements:{type:"string"}}},{tags:{elements:{required:!0,type:"string",description:"A string representing a tag."},type:"set",description:"A set of strings representing tags."}},{client_type:{required:!0,default:"confidential",type:"string",one_of:["confidential","public"]}}]},Ls={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:Sn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},vg=e=>(e==null?void 0:e.app)==="kongManager"?{shamefullyTransformPayload:({payload:n})=>{(e!=null&&e.credential&&typeof n.ttl!="number"||Number.isNaN(n.ttl))&&(n.ttl=0)}}:{},Ag={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Ot={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",nameKey:"plugins.meta.ldap-auth-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...Z.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"]]},...Z.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"]]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",nameKey:"plugins.meta.rate-limiting-advanced.name",...Z.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"]]},...Z.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",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...Z.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"]]},...Z.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",...Z.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",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...Z.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,...Z.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,...Z.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,...Z.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"]]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...Z.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,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...Z.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,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...Z.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,...Z.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,...Z.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,...Z.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,...Z.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,...Z.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,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-lakera-guard"]}},no={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:$s,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:xn($s),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Bs,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:xn(Bs)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Ds,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:xn(Ds)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Ls,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:xn(Ls)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Ms,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:xn(Ms)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Rs,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:xn(Rs)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Ng,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Ig={acls:hg,basicauth_credentials:yg,keyauth_credentials:Cg,keyauth_enc_credentials:Ag,oauth2_credentials:Sg,hmacauth_credentials:Eg,jwt_secrets:xg},Tg=()=>{const{i18n:{t:e}}=Re(),n={},o={};for(const[i,a]of Object.entries(Ot))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(no))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:no,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},$o={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Pg={"config-prompts-prepend":{...$o,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":{...$o,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},Og={"config-templates":{...$o,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},$g={shamefullyTransformPayload:({originalModel:e,model:n,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&n[l]?!0:e[l]===n[l]?!1:e[l]===null?n[l]!==""&&!Number.isNaN(n[l]):!0},a=l=>Object.keys(e).some(s=>s.startsWith(l)&&i(s));a("config-embeddings")||(o.config.embeddings=null),a("config-vectordb")||(o.config.vectordb=null)}},Fs=e=>e.split(",").map(n=>n.trim()).filter(Boolean),Bg={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=Fs(o.allow)),typeof(o==null?void 0:o.deny)=="string"&&(o.deny=Fs(o.deny))})}},Vg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Dg={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:to.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"}},Me={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"},xr={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Rg={"config-metrics":{...xr,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"}]}}}},Mg={"config-functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},Lg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Fg={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Ug={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Kg={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Gg={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Us=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:to.fields.arrayItems({newElementButtonLabel:"Add"})}),Gg),Sr={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},jg={"config-remove-headers":{},"config-remove.querystring":{},"config-remove-body":{},"config-replace-headers":{},"config-replace-querystring":{},"config-replace-body":{},"config-rename-headers":{},"config-rename-querystring":{},"config-rename-body":{},"config-add-headers":{},"config-add-querystring":{},"config-add-body":{},"config-append-headers":{},"config-append-querystring":{},"config-append-body":{},"config-allow-body":{}},qg=["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]:to.fields.arrayItems({newElementButtonLabel:"Add"})}),jg),Ks={"config-add-json":{...Me,label:"Config.Add.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Me,label:"Config.Append.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Me,label:"Config.Remove.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Me,label:"Config.Rename.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Me,label:"Config.Replace.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},zg={...Ks,"config-allow-json":{...Me,label:"Config.Allow.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Me,label:"Config.Transform.Functions",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Me,label:"Config.Transform.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},Hg={"config-rules":{...$o,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"}]}}}},Yg={"config-session_redis_cluster_nodes":{...$o,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"}]}}}},Wg={"config-flow-functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},Xg={"config-message-functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},Zg={"config-metrics":{...xr,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"]}]}}}},Jg={"config-metrics":{...xr,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"]}]}}}},Qg={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},eh={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var Gs=typeof global=="object"&&global&&global.Object===Object&&global,th=typeof self=="object"&&self&&self.Object===Object&&self,Lt=Gs||th||Function("return this")(),xt=Lt.Symbol,js=Object.prototype,nh=js.hasOwnProperty,oh=js.toString,Bo=xt?xt.toStringTag:void 0;function rh(e){var n=nh.call(e,Bo),o=e[Bo];try{e[Bo]=void 0;var r=!0}catch{}var i=oh.call(e);return r&&(n?e[Bo]=o:delete e[Bo]),i}var ih=Object.prototype,ah=ih.toString;function lh(e){return ah.call(e)}var sh="[object Null]",ch="[object Undefined]",qs=xt?xt.toStringTag:void 0;function vn(e){return e==null?e===void 0?ch:sh:qs&&qs in Object(e)?rh(e):lh(e)}function Ht(e){return e!=null&&typeof e=="object"}var dh="[object Symbol]";function ea(e){return typeof e=="symbol"||Ht(e)&&vn(e)==dh}function zs(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 $t=Array.isArray,Hs=xt?xt.prototype:void 0,Ys=Hs?Hs.toString:void 0;function Ws(e){if(typeof e=="string")return e;if($t(e))return zs(e,Ws)+"";if(ea(e))return Ys?Ys.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function An(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function uh(e){return e}var fh="[object AsyncFunction]",ph="[object Function]",mh="[object GeneratorFunction]",gh="[object Proxy]";function vr(e){if(!An(e))return!1;var n=vn(e);return n==ph||n==mh||n==fh||n==gh}var ta=Lt["__core-js_shared__"],Xs=function(){var e=/[^.]+$/.exec(ta&&ta.keys&&ta.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function hh(e){return!!Xs&&Xs in e}var yh=Function.prototype,_h=yh.toString;function In(e){if(e!=null){try{return _h.call(e)}catch{}try{return e+""}catch{}}return""}var bh=/[\\^$.*+?()[\]{}|]/g,wh=/^\[object .+?Constructor\]$/,kh=Function.prototype,Ch=Object.prototype,Eh=kh.toString,Nh=Ch.hasOwnProperty,xh=RegExp("^"+Eh.call(Nh).replace(bh,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Sh(e){if(!An(e)||hh(e))return!1;var n=vr(e)?xh:wh;return n.test(In(e))}function vh(e,n){return e==null?void 0:e[n]}function Tn(e,n){var o=vh(e,n);return Sh(o)?o:void 0}var na=Tn(Lt,"WeakMap"),Zs=Object.create,Ah=function(){function e(){}return function(n){if(!An(n))return{};if(Zs)return Zs(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function Ih(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 Th(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var Ph=800,Oh=16,$h=Date.now;function Bh(e){var n=0,o=0;return function(){var r=$h(),i=Oh-(r-o);if(o=r,i>0){if(++n>=Ph)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function Vh(e){return function(){return e}}var Ar=function(){try{var e=Tn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Dh=Ar?function(e,n){return Ar(e,"toString",{configurable:!0,enumerable:!1,value:Vh(n),writable:!0})}:uh,Rh=Bh(Dh);function Mh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var Lh=9007199254740991,Fh=/^(?:0|[1-9]\d*)$/;function oa(e,n){var o=typeof e;return n=n??Lh,!!n&&(o=="number"||o!="symbol"&&Fh.test(e))&&e>-1&&e%1==0&&e<n}function Js(e,n,o){n=="__proto__"&&Ar?Ar(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function ra(e,n){return e===n||e!==e&&n!==n}var Uh=Object.prototype,Kh=Uh.hasOwnProperty;function ia(e,n,o){var r=e[n];(!(Kh.call(e,n)&&ra(r,o))||o===void 0&&!(n in e))&&Js(e,n,o)}function Vo(e,n,o,r){var i=!o;o||(o={});for(var a=-1,l=n.length;++a<l;){var s=n[a],c=void 0;c===void 0&&(c=e[s]),i?Js(o,s,c):ia(o,s,c)}return o}var Qs=Math.max;function Gh(e,n,o){return n=Qs(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=Qs(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),Ih(e,this,s)}}var jh=9007199254740991;function aa(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=jh}function la(e){return e!=null&&aa(e.length)&&!vr(e)}var qh=Object.prototype;function Ir(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||qh;return e===o}function zh(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var Hh="[object Arguments]";function ec(e){return Ht(e)&&vn(e)==Hh}var tc=Object.prototype,Yh=tc.hasOwnProperty,Wh=tc.propertyIsEnumerable,Tr=ec(function(){return arguments}())?ec:function(e){return Ht(e)&&Yh.call(e,"callee")&&!Wh.call(e,"callee")};function Xh(){return!1}var nc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,oc=nc&&typeof module=="object"&&module&&!module.nodeType&&module,Zh=oc&&oc.exports===nc,rc=Zh?Lt.Buffer:void 0,Jh=rc?rc.isBuffer:void 0,Do=Jh||Xh,Qh="[object Arguments]",ey="[object Array]",ty="[object Boolean]",ny="[object Date]",oy="[object Error]",ry="[object Function]",iy="[object Map]",ay="[object Number]",ly="[object Object]",sy="[object RegExp]",cy="[object Set]",dy="[object String]",uy="[object WeakMap]",fy="[object ArrayBuffer]",py="[object DataView]",my="[object Float32Array]",gy="[object Float64Array]",hy="[object Int8Array]",yy="[object Int16Array]",_y="[object Int32Array]",by="[object Uint8Array]",wy="[object Uint8ClampedArray]",ky="[object Uint16Array]",Cy="[object Uint32Array]",ze={};ze[my]=ze[gy]=ze[hy]=ze[yy]=ze[_y]=ze[by]=ze[wy]=ze[ky]=ze[Cy]=!0,ze[Qh]=ze[ey]=ze[fy]=ze[ty]=ze[py]=ze[ny]=ze[oy]=ze[ry]=ze[iy]=ze[ay]=ze[ly]=ze[sy]=ze[cy]=ze[dy]=ze[uy]=!1;function Ey(e){return Ht(e)&&aa(e.length)&&!!ze[vn(e)]}function sa(e){return function(n){return e(n)}}var ic=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,Ro=ic&&typeof module=="object"&&module&&!module.nodeType&&module,Ny=Ro&&Ro.exports===ic,ca=Ny&&Gs.process,oo=function(){try{var e=Ro&&Ro.require&&Ro.require("util").types;return e||ca&&ca.binding&&ca.binding("util")}catch{}}(),ac=oo&&oo.isTypedArray,da=ac?sa(ac):Ey,xy=Object.prototype,Sy=xy.hasOwnProperty;function lc(e,n){var o=$t(e),r=!o&&Tr(e),i=!o&&!r&&Do(e),a=!o&&!r&&!i&&da(e),l=o||r||i||a,s=l?zh(e.length,String):[],c=s.length;for(var d in e)(n||Sy.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||oa(d,c)))&&s.push(d);return s}function sc(e,n){return function(o){return e(n(o))}}var vy=sc(Object.keys,Object),Ay=Object.prototype,Iy=Ay.hasOwnProperty;function cc(e){if(!Ir(e))return vy(e);var n=[];for(var o in Object(e))Iy.call(e,o)&&o!="constructor"&&n.push(o);return n}function ua(e){return la(e)?lc(e):cc(e)}function Ty(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var Py=Object.prototype,Oy=Py.hasOwnProperty;function $y(e){if(!An(e))return Ty(e);var n=Ir(e),o=[];for(var r in e)r=="constructor"&&(n||!Oy.call(e,r))||o.push(r);return o}function fa(e){return la(e)?lc(e,!0):$y(e)}var By=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Vy=/^\w*$/;function Dy(e,n){if($t(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||ea(e)?!0:Vy.test(e)||!By.test(e)||n!=null&&e in Object(n)}var Mo=Tn(Object,"create");function Ry(){this.__data__=Mo?Mo(null):{},this.size=0}function My(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var Ly="__lodash_hash_undefined__",Fy=Object.prototype,Uy=Fy.hasOwnProperty;function Ky(e){var n=this.__data__;if(Mo){var o=n[e];return o===Ly?void 0:o}return Uy.call(n,e)?n[e]:void 0}var Gy=Object.prototype,jy=Gy.hasOwnProperty;function qy(e){var n=this.__data__;return Mo?n[e]!==void 0:jy.call(n,e)}var zy="__lodash_hash_undefined__";function Hy(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Mo&&n===void 0?zy:n,this}function Pn(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])}}Pn.prototype.clear=Ry,Pn.prototype.delete=My,Pn.prototype.get=Ky,Pn.prototype.has=qy,Pn.prototype.set=Hy;function Yy(){this.__data__=[],this.size=0}function Pr(e,n){for(var o=e.length;o--;)if(ra(e[o][0],n))return o;return-1}var Wy=Array.prototype,Xy=Wy.splice;function Zy(e){var n=this.__data__,o=Pr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Xy.call(n,o,1),--this.size,!0}function Jy(e){var n=this.__data__,o=Pr(n,e);return o<0?void 0:n[o][1]}function Qy(e){return Pr(this.__data__,e)>-1}function e_(e,n){var o=this.__data__,r=Pr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Yt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Yt.prototype.clear=Yy,Yt.prototype.delete=Zy,Yt.prototype.get=Jy,Yt.prototype.has=Qy,Yt.prototype.set=e_;var Lo=Tn(Lt,"Map");function t_(){this.size=0,this.__data__={hash:new Pn,map:new(Lo||Yt),string:new Pn}}function n_(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Or(e,n){var o=e.__data__;return n_(n)?o[typeof n=="string"?"string":"hash"]:o.map}function o_(e){var n=Or(this,e).delete(e);return this.size-=n?1:0,n}function r_(e){return Or(this,e).get(e)}function i_(e){return Or(this,e).has(e)}function a_(e,n){var o=Or(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Wt(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])}}Wt.prototype.clear=t_,Wt.prototype.delete=o_,Wt.prototype.get=r_,Wt.prototype.has=i_,Wt.prototype.set=a_;var l_="Expected a function";function pa(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(l_);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(pa.Cache||Wt),o}pa.Cache=Wt;var s_=500;function c_(e){var n=pa(e,function(r){return o.size===s_&&o.clear(),r}),o=n.cache;return n}var d_=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,u_=/\\(\\)?/g,f_=c_(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(d_,function(o,r,i,a){n.push(i?a.replace(u_,"$1"):r||o)}),n});function ma(e){return e==null?"":Ws(e)}function ro(e,n){return $t(e)?e:Dy(e,n)?[e]:f_(ma(e))}function $r(e){if(typeof e=="string"||ea(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function ga(e,n){n=ro(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[$r(n[o++])];return o&&o==r?e:void 0}function dc(e,n,o){var r=e==null?void 0:ga(e,n);return r===void 0?o:r}function ha(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var uc=xt?xt.isConcatSpreadable:void 0;function p_(e){return $t(e)||Tr(e)||!!(uc&&e&&e[uc])}function m_(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=p_),i||(i=[]);++a<l;){var s=e[a];o(s)?ha(i,s):i[i.length]=s}return i}function g_(e){var n=e==null?0:e.length;return n?m_(e):[]}function fc(e){return Rh(Gh(e,void 0,g_),e+"")}var ya=sc(Object.getPrototypeOf,Object),h_="[object Object]",y_=Function.prototype,__=Object.prototype,pc=y_.toString,b_=__.hasOwnProperty,w_=pc.call(Object);function k_(e){if(!Ht(e)||vn(e)!=h_)return!1;var n=ya(e);if(n===null)return!0;var o=b_.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&pc.call(o)==w_}function mc(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 C_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:mc(e,n,o)}var E_="\\ud800-\\udfff",N_="\\u0300-\\u036f",x_="\\ufe20-\\ufe2f",S_="\\u20d0-\\u20ff",v_=N_+x_+S_,A_="\\ufe0e\\ufe0f",I_="\\u200d",T_=RegExp("["+I_+E_+v_+A_+"]");function gc(e){return T_.test(e)}function P_(e){return e.split("")}var hc="\\ud800-\\udfff",O_="\\u0300-\\u036f",$_="\\ufe20-\\ufe2f",B_="\\u20d0-\\u20ff",V_=O_+$_+B_,D_="\\ufe0e\\ufe0f",R_="["+hc+"]",_a="["+V_+"]",ba="\\ud83c[\\udffb-\\udfff]",M_="(?:"+_a+"|"+ba+")",yc="[^"+hc+"]",_c="(?:\\ud83c[\\udde6-\\uddff]){2}",bc="[\\ud800-\\udbff][\\udc00-\\udfff]",L_="\\u200d",wc=M_+"?",kc="["+D_+"]?",F_="(?:"+L_+"(?:"+[yc,_c,bc].join("|")+")"+kc+wc+")*",U_=kc+wc+F_,K_="(?:"+[yc+_a+"?",_a,_c,bc,R_].join("|")+")",G_=RegExp(ba+"(?="+ba+")|"+K_+U_,"g");function j_(e){return e.match(G_)||[]}function q_(e){return gc(e)?j_(e):P_(e)}function z_(e){return function(n){n=ma(n);var o=gc(n)?q_(n):void 0,r=o?o[0]:n.charAt(0),i=o?C_(o,1).join(""):n.slice(1);return r[e]()+i}}var H_=z_("toUpperCase");function Y_(){this.__data__=new Yt,this.size=0}function W_(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function X_(e){return this.__data__.get(e)}function Z_(e){return this.__data__.has(e)}var J_=200;function Q_(e,n){var o=this.__data__;if(o instanceof Yt){var r=o.__data__;if(!Lo||r.length<J_-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Wt(r)}return o.set(e,n),this.size=o.size,this}function Xt(e){var n=this.__data__=new Yt(e);this.size=n.size}Xt.prototype.clear=Y_,Xt.prototype.delete=W_,Xt.prototype.get=X_,Xt.prototype.has=Z_,Xt.prototype.set=Q_;function eb(e,n){return e&&Vo(n,ua(n),e)}function tb(e,n){return e&&Vo(n,fa(n),e)}var Cc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,Ec=Cc&&typeof module=="object"&&module&&!module.nodeType&&module,nb=Ec&&Ec.exports===Cc,Nc=nb?Lt.Buffer:void 0,xc=Nc?Nc.allocUnsafe:void 0;function ob(e,n){if(n)return e.slice();var o=e.length,r=xc?xc(o):new e.constructor(o);return e.copy(r),r}function rb(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 Sc(){return[]}var ib=Object.prototype,ab=ib.propertyIsEnumerable,vc=Object.getOwnPropertySymbols,wa=vc?function(e){return e==null?[]:(e=Object(e),rb(vc(e),function(n){return ab.call(e,n)}))}:Sc;function lb(e,n){return Vo(e,wa(e),n)}var sb=Object.getOwnPropertySymbols,Ac=sb?function(e){for(var n=[];e;)ha(n,wa(e)),e=ya(e);return n}:Sc;function cb(e,n){return Vo(e,Ac(e),n)}function Ic(e,n,o){var r=n(e);return $t(e)?r:ha(r,o(e))}function ka(e){return Ic(e,ua,wa)}function Tc(e){return Ic(e,fa,Ac)}var Ca=Tn(Lt,"DataView"),Ea=Tn(Lt,"Promise"),Na=Tn(Lt,"Set"),Pc="[object Map]",db="[object Object]",Oc="[object Promise]",$c="[object Set]",Bc="[object WeakMap]",Vc="[object DataView]",ub=In(Ca),fb=In(Lo),pb=In(Ea),mb=In(Na),gb=In(na),St=vn;(Ca&&St(new Ca(new ArrayBuffer(1)))!=Vc||Lo&&St(new Lo)!=Pc||Ea&&St(Ea.resolve())!=Oc||Na&&St(new Na)!=$c||na&&St(new na)!=Bc)&&(St=function(e){var n=vn(e),o=n==db?e.constructor:void 0,r=o?In(o):"";if(r)switch(r){case ub:return Vc;case fb:return Pc;case pb:return Oc;case mb:return $c;case gb:return Bc}return n});var hb=Object.prototype,yb=hb.hasOwnProperty;function _b(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&yb.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var Br=Lt.Uint8Array;function xa(e){var n=new e.constructor(e.byteLength);return new Br(n).set(new Br(e)),n}function bb(e,n){var o=n?xa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var wb=/\w*$/;function kb(e){var n=new e.constructor(e.source,wb.exec(e));return n.lastIndex=e.lastIndex,n}var Dc=xt?xt.prototype:void 0,Rc=Dc?Dc.valueOf:void 0;function Cb(e){return Rc?Object(Rc.call(e)):{}}function Eb(e,n){var o=n?xa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Nb="[object Boolean]",xb="[object Date]",Sb="[object Map]",vb="[object Number]",Ab="[object RegExp]",Ib="[object Set]",Tb="[object String]",Pb="[object Symbol]",Ob="[object ArrayBuffer]",$b="[object DataView]",Bb="[object Float32Array]",Vb="[object Float64Array]",Db="[object Int8Array]",Rb="[object Int16Array]",Mb="[object Int32Array]",Lb="[object Uint8Array]",Fb="[object Uint8ClampedArray]",Ub="[object Uint16Array]",Kb="[object Uint32Array]";function Gb(e,n,o){var r=e.constructor;switch(n){case Ob:return xa(e);case Nb:case xb:return new r(+e);case $b:return bb(e,o);case Bb:case Vb:case Db:case Rb:case Mb:case Lb:case Fb:case Ub:case Kb:return Eb(e,o);case Sb:return new r;case vb:case Tb:return new r(e);case Ab:return kb(e);case Ib:return new r;case Pb:return Cb(e)}}function jb(e){return typeof e.constructor=="function"&&!Ir(e)?Ah(ya(e)):{}}var qb="[object Map]";function zb(e){return Ht(e)&&St(e)==qb}var Mc=oo&&oo.isMap,Hb=Mc?sa(Mc):zb,Yb="[object Set]";function Wb(e){return Ht(e)&&St(e)==Yb}var Lc=oo&&oo.isSet,Xb=Lc?sa(Lc):Wb,Zb=1,Jb=2,Qb=4,Fc="[object Arguments]",ew="[object Array]",tw="[object Boolean]",nw="[object Date]",ow="[object Error]",Uc="[object Function]",rw="[object GeneratorFunction]",iw="[object Map]",aw="[object Number]",Kc="[object Object]",lw="[object RegExp]",sw="[object Set]",cw="[object String]",dw="[object Symbol]",uw="[object WeakMap]",fw="[object ArrayBuffer]",pw="[object DataView]",mw="[object Float32Array]",gw="[object Float64Array]",hw="[object Int8Array]",yw="[object Int16Array]",_w="[object Int32Array]",bw="[object Uint8Array]",ww="[object Uint8ClampedArray]",kw="[object Uint16Array]",Cw="[object Uint32Array]",qe={};qe[Fc]=qe[ew]=qe[fw]=qe[pw]=qe[tw]=qe[nw]=qe[mw]=qe[gw]=qe[hw]=qe[yw]=qe[_w]=qe[iw]=qe[aw]=qe[Kc]=qe[lw]=qe[sw]=qe[cw]=qe[dw]=qe[bw]=qe[ww]=qe[kw]=qe[Cw]=!0,qe[ow]=qe[Uc]=qe[uw]=!1;function Fo(e,n,o,r,i,a){var l,s=n&Zb,c=n&Jb,d=n&Qb;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!An(e))return e;var f=$t(e);if(f){if(l=_b(e),!s)return Th(e,l)}else{var u=St(e),p=u==Uc||u==rw;if(Do(e))return ob(e,s);if(u==Kc||u==Fc||p&&!i){if(l=c||p?{}:jb(e),!s)return c?cb(e,tb(l,e)):lb(e,eb(l,e))}else{if(!qe[u])return i?e:{};l=Gb(e,u,s)}}a||(a=new Xt);var m=a.get(e);if(m)return m;a.set(e,l),Xb(e)?e.forEach(function(y){l.add(Fo(y,n,o,y,e,a))}):Hb(e)&&e.forEach(function(y,_){l.set(_,Fo(y,n,o,_,e,a))});var h=d?c?Tc:ka:c?fa:ua,g=f?void 0:h(e);return Mh(g||e,function(y,_){g&&(_=y,y=e[_]),ia(l,_,Fo(y,n,o,_,e,a))}),l}var Ew=1,Nw=4;function io(e){return Fo(e,Ew|Nw)}var xw="__lodash_hash_undefined__";function Sw(e){return this.__data__.set(e,xw),this}function vw(e){return this.__data__.has(e)}function Vr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Wt;++n<o;)this.add(e[n])}Vr.prototype.add=Vr.prototype.push=Sw,Vr.prototype.has=vw;function Aw(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 Iw(e,n){return e.has(n)}var Tw=1,Pw=2;function Gc(e,n,o,r,i,a){var l=o&Tw,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(n);if(d&&f)return d==n&&f==e;var u=-1,p=!0,m=o&Pw?new Vr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var h=e[u],g=n[u];if(r)var y=l?r(g,h,u,n,e,a):r(h,g,u,e,n,a);if(y!==void 0){if(y)continue;p=!1;break}if(m){if(!Aw(n,function(_,k){if(!Iw(m,k)&&(h===_||i(h,_,o,r,a)))return m.push(k)})){p=!1;break}}else if(!(h===g||i(h,g,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function Ow(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function $w(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var Bw=1,Vw=2,Dw="[object Boolean]",Rw="[object Date]",Mw="[object Error]",Lw="[object Map]",Fw="[object Number]",Uw="[object RegExp]",Kw="[object Set]",Gw="[object String]",jw="[object Symbol]",qw="[object ArrayBuffer]",zw="[object DataView]",jc=xt?xt.prototype:void 0,Sa=jc?jc.valueOf:void 0;function Hw(e,n,o,r,i,a,l){switch(o){case zw:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case qw:return!(e.byteLength!=n.byteLength||!a(new Br(e),new Br(n)));case Dw:case Rw:case Fw:return ra(+e,+n);case Mw:return e.name==n.name&&e.message==n.message;case Uw:case Gw:return e==n+"";case Lw:var s=Ow;case Kw:var c=r&Bw;if(s||(s=$w),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=Vw,l.set(e,n);var f=Gc(s(e),s(n),r,i,a,l);return l.delete(e),f;case jw:if(Sa)return Sa.call(e)==Sa.call(n)}return!1}var Yw=1,Ww=Object.prototype,Xw=Ww.hasOwnProperty;function Zw(e,n,o,r,i,a){var l=o&Yw,s=ka(e),c=s.length,d=ka(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:Xw.call(n,p)))return!1}var m=a.get(e),h=a.get(n);if(m&&h)return m==n&&h==e;var g=!0;a.set(e,n),a.set(n,e);for(var y=l;++u<c;){p=s[u];var _=e[p],k=n[p];if(r)var b=l?r(k,_,p,n,e,a):r(_,k,p,e,n,a);if(!(b===void 0?_===k||i(_,k,o,r,a):b)){g=!1;break}y||(y=p=="constructor")}if(g&&!y){var S=e.constructor,E=n.constructor;S!=E&&"constructor"in e&&"constructor"in n&&!(typeof S=="function"&&S instanceof S&&typeof E=="function"&&E instanceof E)&&(g=!1)}return a.delete(e),a.delete(n),g}var Jw=1,qc="[object Arguments]",zc="[object Array]",Dr="[object Object]",Qw=Object.prototype,Hc=Qw.hasOwnProperty;function e0(e,n,o,r,i,a){var l=$t(e),s=$t(n),c=l?zc:St(e),d=s?zc:St(n);c=c==qc?Dr:c,d=d==qc?Dr:d;var f=c==Dr,u=d==Dr,p=c==d;if(p&&Do(e)){if(!Do(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Xt),l||da(e)?Gc(e,n,o,r,i,a):Hw(e,n,c,o,r,i,a);if(!(o&Jw)){var m=f&&Hc.call(e,"__wrapped__"),h=u&&Hc.call(n,"__wrapped__");if(m||h){var g=m?e.value():e,y=h?n.value():n;return a||(a=new Xt),i(g,y,o,r,a)}}return p?(a||(a=new Xt),Zw(e,n,o,r,i,a)):!1}function Yc(e,n,o,r,i){return e===n?!0:e==null||n==null||!Ht(e)&&!Ht(n)?e!==e&&n!==n:e0(e,n,o,r,Yc,i)}function t0(e,n){return e!=null&&n in Object(e)}function Wc(e,n,o){n=ro(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=$r(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&&aa(i)&&oa(l,i)&&($t(e)||Tr(e)))}function n0(e,n){return e!=null&&Wc(e,n,t0)}function o0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}var r0=Object.prototype,i0=r0.hasOwnProperty;function a0(e,n){return e!=null&&i0.call(e,n)}function Xc(e,n){return e!=null&&Wc(e,n,a0)}function l0(e,n){return n.length<2?e:ga(e,mc(n,0,-1))}var s0="[object Map]",c0="[object Set]",d0=Object.prototype,u0=d0.hasOwnProperty;function Zc(e){if(e==null)return!0;if(la(e)&&($t(e)||typeof e=="string"||typeof e.splice=="function"||Do(e)||da(e)||Tr(e)))return!e.length;var n=St(e);if(n==s0||n==c0)return!e.size;if(Ir(e))return!cc(e).length;for(var o in e)if(u0.call(e,o))return!1;return!0}function ao(e,n){return Yc(e,n)}function Jc(e,n){return n=ro(n,e),e=l0(e,n),e==null||delete e[$r(o0(n))]}function f0(e){return k_(e)?void 0:e}var p0=1,m0=2,g0=4,Zt=fc(function(e,n){var o={};if(e==null)return o;var r=!1;n=zs(n,function(a){return a=ro(a,e),r||(r=a.length>1),a}),Vo(e,Tc(e),o),r&&(o=Fo(o,p0|m0|g0,f0));for(var i=n.length;i--;)Jc(o,n[i]);return o});function Qc(e,n,o,r){if(!An(e))return e;n=ro(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=$r(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=An(f)?f:oa(n[i+1])?[]:{})}ia(s,c,d),s=s[c]}return e}function h0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=ga(e,l);o(s,l)&&Qc(a,ro(l,e),s)}return a}function y0(e,n){return h0(e,n,function(o,r){return n0(e,r)})}var va=fc(function(e,n){return e==null?{}:y0(e,n)});function _0(e,n,o){return e==null?e:Qc(e,n,o)}var b0=0;function Rr(e){var n=++b0;return ma(e)+n}function ed(e,n){return e==null?!0:Jc(e,n)}const w0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],On=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,w0.some(s=>ao(e.confluent,s))&&(e.confluent=null)},k0={"config-message_by_lua_functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;On((n=e.config)==null?void 0:n.schema_registry)}},C0={"config-message_by_lua_functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;On((n=e.config)==null?void 0:n.schema_registry)}},E0={"config-message_by_lua_functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;On((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{On(i==null?void 0:i.schema_registry)})}},N0={"config-message_by_lua_functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;On((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{On(i==null?void 0:i.schema_registry)})}},x0={shamefullyTransformPayload:({payload:e})=>{var n;On((n=e.config)==null?void 0:n.schema_registry)}},S0={"config-static_tags":{...xr,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"}]}}}},v0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function Aa(e,n){const o=v0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Ia=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),dn={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},td=Symbol("TOASTER_PROVIDER");function nd(){return t.inject(Ia,[])}function A0(e){t.provide(Ia,e)}const I0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},od=(e,n)=>(e.order??0)-(n.order??0),rd=(e,n)=>I0(e,n)||od(e,n)||e.model.localeCompare(n.model),Ke={useI18n:Re,usePluginMetaData:Tg,usePluginHelpers:Ts,useSchemas:e=>{const{capitalize:n}=ye.useStringHelpers(),{convertToDotNotation:o}=Ts(),{i18n:{t:r}}=Re(),i=nd(),a={"application-registration":{overwriteDefault:!0,formSchema:{...Dg}},datadog:{...Rg},"exit-transformer":{...Mg},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Zg},"statsd-advanced":{...Jg},"route-by-header":{...Hg},"ai-prompt-decorator":{...Pg},"ai-prompt-template":{...Og},"ai-proxy-advanced":{...$g},"ai-rag-injector":{...Bg},"ai-llm-as-judge":{...Vg},"vault-auth":{...eh},"oas-validation":{...Kg},mocking:{...Ug},"rate-limiting":{...Sr},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Sr["config-consumer_groups"]}:{...Sr},"graphql-rate-limiting-advanced":{...Lg},"injection-protection":{...Fg},"response-ratelimiting":{...Sr},"pre-function":{...Us},"post-function":{...Us},"request-transformer-advanced":{...qg},"response-transformer":{...Ks},"response-transformer-advanced":{...zg},zipkin:{...S0},"upstream-oauth":{...Qg},saml:{...Yg},"kafka-upstream":{...k0},"solace-consume":{...Wg},"solace-upstream":{...Xg},"key-auth":kg(e),"key-auth-enc":vg(e),confluent:{...C0},"confluent-consume":{...E0},"kafka-consume":{...N0},"kafka-log":{...x0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,N,P,v)=>{let I={};(N||C)&&(I=N||(C.fields?C.fields:C));const $=l().concat(C.blacklist?C.blacklist:[]),w=Object.keys(I).filter(L=>!$.includes(L)),U=w.indexOf("comparator");U>-1&&w.splice(U,1);let x={fields:[]};const F={};w.forEach(L=>{d(I[L],L,I,F,x,P)});const R=F.name,oe=Ot[R],ie=[],M=L=>{const A=["cluster-cache"];for(const V of A)if(L.model.includes(V))return!1;return new RegExp("(?<=-redis-).*").test(L.model)};if(x._supported_redis_partial_type=C._supported_redis_partial_type,x._redis_partial_path=C._redis_partial_path,Ue.getSharedFormName(R)||Aa(R,i)||oe!=null&&oe.useLegacyForm||e!=null&&e.credential||v==="freeform"){if(oe!=null&&oe.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const L of x.fields)if(M(L)){ie.push(L);continue}x.fields=x.fields.filter(L=>!M(L)),ie.length&&x.fields.push({id:"_redis",fields:ie,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}x.fields.sort((L,A)=>(L.order=L.order||0,A.order=A.order||0,L.order-A.order))}else{const L=[],A=[],V=[],H=[],te={};if(oe!=null&&oe.fieldRules){const se=[...oe.fieldRules.atLeastOneOf??[],...oe.fieldRules.onlyOneOf??[],...oe.fieldRules.mutuallyRequired??[]];if(oe.fieldRules.onlyOneOfMutuallyRequired)for(const ue of oe.fieldRules.onlyOneOfMutuallyRequired)se.push(...ue);for(const ue of se)for(const ge of ue)te[ge.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const se of x.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&M(se)){H.push(se);continue}if(se.pinned){L.push(se);continue}if(se.required||te[se.model]!==void 0){te[se.model]===!1&&(te[se.model]=!0),A.push(se);continue}V.push(se)}H.length&&V.push({id:"_redis",fields:H,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const W=Object.entries(te).filter(([,se])=>!se).map(([se])=>se.replace(/-/g,".").replace(/_/g,"-"));W.length>0&&console.warn(`Unknown checked fields for plugin ${R}: ${W.join(", ")}`);const G=[];L.length>0&&G.push({fields:L.sort(od)}),(A.length>0||V.length>0)&&G.push({fields:A.sort(rd),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:V.sort(rd),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:G}}return{schema:x,model:F,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",d=(C,N,P,v,I,$)=>{const w=c(C);return v[N]=w?C.default:null,C.id=N,C.model=N,C.fields&&C.type==="record"?u(C,N,P,v,I,$):(P[N]=C,S(C,v),$&&$[N]&&f(P[N],$[N]),I.fields.push(C)),P},f=(C,N)=>(N&&(Object.assign(C,N),N.label&&(C.label=N.label)),C),u=(C,N,P,v,I,$)=>{C.fields.forEach(w=>{Object.keys(w).forEach(U=>{const x=w[U];P=d(x,N+"-"+U,P,v,I,$)})})},p=(C,N)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const P=e==null?void 0:e.entityId;N[C.model]=P?{id:P}:null},m=C=>{C.type="input",C.inputType="number",C.between&&C.between.length===2&&(C.min=C.between[0],C.max=C.between[1])},h=C=>{Object.prototype.hasOwnProperty.call(C,"one_of")?(C.type="select",C.values=C.one_of,C.selectOptions={hideNoneSelectedText:!0}):(C.type="input",C.inputType="text")},g=C=>{C.type="checkbox",C.default=!0,C.required=!1},y=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:N}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Me,model:C.model,valueArrayType:N==="integer"?"number":N||"string",inputAttributes:{...Me.inputAttributes,type:N==="integer"?"number":"text",inputMode:N==="integer"?"numeric":"text"}}]}}]}}else C.values.fields&&(C.schema={fields:[{type:"object",model:"object",schema:{fields:C.values.fields.map(N=>{const P=Object.keys(N)[0];return{model:P,type:"input",label:n(P),placeholder:P,inputType:N[P].type}})}}]})},_=C=>C.fields.reduce((N,P)=>(P.fields&&P.fields.forEach(v=>{N[v.model]=v}),P.model&&(N[P.model]=P),N),{}),k=(C,N)=>{if(!Ue.customFields.includes(C.model))return;const P=_(C);Ue.customFields.forEach(v=>{Object.keys(P).forEach(I=>{const $=c(P[I]);N[I]=$?P[I].default:null}),delete N[v]})},b=(C,N)=>C.inputType==="hidden"?"":o(n(C.label||N.replace(/_/g," "))),S=(C,N)=>{switch(k(C,N),C.type){case"foreign":p(C,N);break;case"number":m(C),C.attributes={step:"any"};break;case"integer":m(C);break;case"string":h(C);break;case"boolean":g(C);break;case"map":y(C);break}C.inputType==="foreign"&&p(C,N),C.label=b(C,C.model)};function E(C,N){if(N==null||N.type&&N.type!=="record"||typeof C!="object"||C==null)return C;const P={};for(const v of N.fields){const I=Object.keys(v)[0],$=v[I];$.type==="record"?P[I]=E(C[I],$):$.type==="array"&&Array.isArray(C[I])&&$.elements.type==="record"?P[I]=C[I].map(w=>E(w,$.elements)):P[I]=C[I]}return P}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:to,pruneRecord:E}},useExperimentalFreeForms:nd,useProvideExperimentalFreeForms:A0},st="/v2/control-planes/{controlPlaneId}/core-entities",gt="/{workspace}",Xe={list:{konnect:{all:`${st}/plugins`,forEntity:`${st}/{entityType}/{entityId}/plugins`},kongManager:{all:`${gt}/plugins`,forEntity:`${gt}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${st}/v1/available-plugins`,streamingCustomPlugins:`${st}/custom-plugins`,schemaCustomPluginItem:`${st}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${st}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${gt}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${st}/plugins`,forEntity:`${st}/{entityType}/{entityId}/plugins`},edit:{all:`${st}/plugins/{id}`,forEntity:`${st}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${st}/{resourceEndpoint}`,edit:`${st}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${st}/{entity}/{id}`,entityGetAll:`${st}/{entity}`,entityPeek:`${st}/{entity}?size={amount}`},kongManager:{create:{all:`${gt}/plugins`,forEntity:`${gt}/{entityType}/{entityId}/plugins`},edit:{all:`${gt}/plugins/{id}`,forEntity:`${gt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${gt}/schemas/plugins/{plugin}`,credential:{create:`${gt}/{resourceEndpoint}`,edit:`${gt}/{resourceEndpoint}/{id}`},credentialSchema:`${gt}/schemas/{plugin}`,entityGetOne:`${gt}/{entity}/{id}`,entityGetAll:`${gt}/{entity}`}},item:{konnect:{all:`${st}/plugins/{id}`,forEntity:`${st}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${gt}/plugins/{id}`,forEntity:`${gt}/{entityType}/{entityId}/plugins/{id}`}}},T0={key:0},P0=Ae(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Ke.usePluginHelpers(),{i18n:{t:r}}=Ke.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(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",T0,[(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 Ta(e){return e.map(n=>({value:n,label:`${n}`}))}const Pa="*",id="$",ad=".";function Bt(...e){return e.join(ad)}function Oa(...e){return Bt(id,...e)}function ld(e){return e.startsWith(Bt(id,""))}function lo(e){return e.split(ad).filter(n=>n!=="")}function Uo(e){const n=lo(e);return n[n.length-1]}function O0(e,n){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return n.filter(a=>{const l=a.model.match(o);return l&&!Object.keys(e).includes(l[0])}).map(a=>{const l=a.label.match(r);return{label:l?l[0]:a.label,key:a.model,value:"N/A",type:"text"}})}function $0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const[B0,V0]=Ge.createInjectionState(function(n,o,r,i){const a=M0(n),l=new Map,s=t.reactive({}),c=t.toRef(()=>r??{}),d=t.useSlots();t.provide($a,Zt(d,"default",$n));function f(m){Object.keys(s).forEach(h=>{delete s[h]}),Object.assign(s,m)}function u(m){let h;!m||!p(t.toValue(m))?h=a.getDefault():h=io(t.toValue(m)),vr(c.value.prepareFormData)?f(c.value.prepareFormData(h)):f(h)}function p(m){return vr(c.value.hasValue)?c.value.hasValue(m):!!m}return t.watch(s,m=>{i==null||i(t.toValue(m))},{deep:!0}),t.watch(()=>o==null?void 0:o.value,m=>{u(m)},{deep:!0,immediate:!0}),{formData:s,schema:n,config:c,fieldRendererRegistry:l,resetFormData:f,...a}}),sd=Symbol("free-form-field-path"),$a=Symbol("free-form-field-renderer-slots"),cd=Symbol("free-form-field-reset-label-path-setting"),$n="free-form-field-renderers-slot",D0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function R0(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,Ba(r,n)):e.type==="array"&&e.elements&&Object.assign(o,Va(e,n)),o}function Ba(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?Bt(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=Ba(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=Va(a,l);Object.assign(o,s)}}return o}function Va(e,n=""){const o={};if(e.elements){const r=e.elements,i=Bt(n,Pa);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=Ba(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=Va(r,i);Object.assign(o,a)}}return o}function Da(e){const n=lo(e).map(o=>/^\d+$/.test(o)?Pa:o);return Bt(...n)}function M0(e){const n=t.toValue(e),o=t.computed(()=>n?R0(n):{});function r(u){var p;return u==null?n:(p=o.value)==null?void 0:p[Da(u)]}function i(u,p=!1){const m=r(u);return m?m.default!==void 0?m.default:p||m.required?m.type==="record"?a(m,u):m.type==="array"?[]:null:null:null}function a(u,p){const m={};if(Array.isArray(u.fields))for(const h of u.fields){const g=Object.keys(h)[0],y=p?`${p}.${g}`:g,_=i(y,!1);_!==void 0&&(m[g]=_)}return m}function l(u){return u?i(u,!0):a(r(),"")}function s(u){const p=r(u),m=p!=null&&p.description?Cr.marked.parse(p.description,{async:!1}):void 0;return{...D0,"data-testid":`ff-label-${u}`,info:m}}function c(u){var m;const p=r(u);return Ta((p==null?void 0:p.one_of)||((m=p.elements)==null?void 0:m.one_of)||[])}function d(u){const p=r(u),m=p==null?void 0:p.default;let h=null;if((p==null?void 0:p.type)==="foreign"&&(m!=null&&m.id))h=m.id;else{if(m==null||typeof m=="object"||m==="")return null;if(Array.isArray(m)){if(m.length===0)return null;h=m.join(", ")}else h=m.toString()}return`Default: ${h}`}function f(){return o.value}return{getSchemaMap:f,getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function je(){const e=V0();if(!e)throw new Error("useFormShared() called without provider.");return e}const dd=e=>{const n=t.inject(sd,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!ld(r)&&n.value&&(i=Bt(n.value,r)),ld(r)&&(i=i.slice(Oa("").length)),i});return t.provide(sd,o),o},L0=e=>{const{getSchema:n,fieldRendererRegistry:o}=je(),{default:r,...i}=t.useSlots(),a=t.inject($a),l=t.computed(()=>{const c=t.toValue(a),d=Object.keys(i).filter(f=>f!==$n&&f!=="item").reduce((f,u)=>{const p=Da(Bt(t.toValue(e),u));return{...f,[p]:i[u]}},{});return c?{...c,...d}:d});t.provide($a,l);const s=t.toValue(e);return t.computed(()=>{if(r)return;const c=l.value[Da(t.toValue(e))];if(c)return c;for(const[d,f]of o)if(d({path:s,schema:n(s)}))return f})},F0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP",api:"API",uri:"URI"};function U0(e){return F0[e.toLocaleLowerCase()]??e}function K0(e,n){const o=t.inject(cd,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Bt(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?Bt(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(cd,l),a}function ud(e){return lo(e).map(o=>o.split("_").map(U0).join(" ")).map(H_).join(" › ")}function G0(e,n){const o=t.toValue(e),r=Uo(o),{config:i,getSchema:a}=je(),l=K0(r,n),s=fd(e);return t.computed(()=>{var p;const c=l.value??r,d=(p=s.value.parent)!=null&&p.path?a(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":ud(c);return i.value.transformLabel?i.value.transformLabel(u,o):u})}function vt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=je(),a=t.toValue(e),l=t.toValue(n),s=G0(e,t.toRef(()=>t.toValue(n).resetLabelPath));return t.computed(()=>{var c;return{...l,placeholder:l.placeholder??r(a)??void 0,labelAttributes:l.labelAttributes??o(a),label:l.label??s.value,required:l.required??((c=i(a))==null?void 0:c.required)}})}function j0(e){var r;const n=lo(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Bt(o.parent.path,i):i,o={parent:o}}return o}function fd(e){return t.computed(()=>j0(t.toValue(e)))}function pd(e){const{formData:n}=je(),o=dd(e);return{value:t.computed({get:()=>dc(n,lo(o.value)),set:i=>_0(n,lo(o.value),i)})}}function ht(e){const{getSchema:n}=je(),o=dd(e),r=L0(o),{value:i}=pd(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:fd(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function Ko(e){const{getSchema:n}=je(),o=t.useAttrs();return t.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=t.toValue(e).parent;return r!=null&&r.path?((i=n(r.path))==null?void 0:i.type)==="array":!1})}function md(e,n){const o=new WeakMap,r=new Map;function i(){return Rr(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((d,f)=>{c.add(f)}),Array.from(r.keys()).forEach(d=>{c.has(d)||r.delete(d)})},{immediate:!0,deep:!0}),{getKey:a}}const q0="__request_callout_";function gd(){return Rr(q0)}const Bn=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?Be.KTextArea:Be.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}=je(),d=u=>{u!==s.value&&(s.value=u,c.value.updateOnChange||i("update:modelValue",u))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":e.modelValue,resizable:e.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,h)=>({name:h,fn:t.withCtx(g=>[t.renderSlot(u.$slots,h,t.normalizeProps(t.guardReactiveProps(g)))])}))]),1040,["character-limit","model-value","resizable"]))}}),z0=["innerHTML"],so=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=Re(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=ht(t.toRef(()=>e.name)),c=vt(s.path,t.toRef({...i,...o})),d=l==null?void 0:l.value;function f(_){d!==void 0&&_===""&&_!==d?(l.value=null,a("update:modelValue",null)):(l.value=_.trim(),a("update:modelValue",_.trim()))}const u=t.computed(()=>{var _;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((_=s.schema)==null?void 0:_.value).encrypted}),p=t.inject(Ue.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var _;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((_=s.schema.value)!=null&&_.referenceable)}),h=t.computed(()=>({referenceable:m.value})),g=Ko(s.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Uo(e.name)==="name");return(_,k)=>{var S;const b=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(b,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},_.$attrs)),[t.createVNode(Bn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":y.value,"data-autofocus":t.unref(g),"data-testid":`ff-${s.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.multiline&&e.error?e.errorMessage:e.help,"model-value":t.unref(l)??"",multiline:e.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(S=t.unref(c).labelAttributes)!=null&&S.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,z0)],!0)]),key:"0"}:void 0,e.multiline&&e.error?void 0:{name:"help",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"help",{},void 0,!0)]),key:"1"}]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(p)&&m.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(p)),{key:0,schema:h.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(b,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-8b9ee4c2"]]),H0=["innerHTML"],Mr=Ae(t.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=ht(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=vt(i.path,o);return(c,d)=>{var u;const f=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(Be.KCheckbox),t.mergeProps({key:1},t.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":t.unref(r)??!1,"onUpdate:modelValue":l}),t.createSlots({_:2},[(u=t.unref(s).labelAttributes)!=null&&u.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,H0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),hd=Ae(t.defineComponent({__name:"SlideTransition",setup(e){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),r=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(h=>[h,m.getPropertyValue(h)]))}function a(p){["overflow","transition",...n].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const h=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...h,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(t.openBlock(),t.createBlock(t.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),Y0={class:"ff-entity-checks-list"},yd=Ae(t.defineComponent({__name:"EntityChecksAlert",props:{entityChecks:{},omittedFields:{}},setup(e){const{i18n:{t:n}}=Ke.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(ud).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",Y0,[(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"]]),W0=["data-testid"],X0=["data-testid"],Z0=["data-testid"],J0=["innerHTML"],Q0={class:"ff-object-field-actions"},ek=["data-testid"],wt=Ae(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(e){const n=t.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=ht(t.toRef(n,"name")),{getSchema:i,getDefault:a}=je(),l=t.useModel(e,"added"),s=t.useModel(e,"expanded"),c=t.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),d=t.computed(()=>{var y,_;if((y=r.ancestors)!=null&&y.value){const k=r.ancestors.value.parent;if(k!=null&&k.path)return((_=i(k.path))==null?void 0:_.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=vt(r.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:f.value}))),p=t.computed(()=>u.value.required?!0:l.value??e.defaultAdded),m=t.computed(()=>e.asChild!==void 0?e.asChild:d.value),h=t.computed(()=>{let y=r.schema.value.fields;return e.omit&&(y=y.filter(_=>!e.omit.includes(Object.keys(_)[0]))),e.fieldsOrder?y.sort((_,k)=>{const b=Object.keys(_)[0],S=Object.keys(k)[0],E=e.fieldsOrder.indexOf(b),C=e.fieldsOrder.indexOf(S);return E===-1&&C===-1?0:E===-1?1:C===-1?-1:E-C}):y});function g(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,y=>{e.collapsible&&(s.value=y)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(y,_)=>{var b;const k=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y.$slots[t.unref($n)]))),r.error?(t.openBlock(),t.createBlock(k,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},y.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(y.$slots,"default",{},()=>{var S;return[t.createVNode(yd,{"entity-checks":(S=r.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(h.value,E=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(E)[0],name:Object.keys(E)[0]},null,8,["name"]))),128))]},!0)],16,W0)):(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},y.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Be.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(u),required:!1},{"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(b=t.unref(u).labelAttributes)!=null&&b.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,J0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",Q0,[e.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(Be.KButton),{key:0,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${c.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${r.path.value}`,icon:"",onClick:_[0]||(_[0]=S=>s.value=!c.value)},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(ve.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(u).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Be.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:g},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(ve.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(ve.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,Z0),t.createVNode(hd,null,{default:t.withCtx(()=>[c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[t.renderSlot(y.$slots,"default",{},()=>{var S;return[t.createVNode(yd,{"entity-checks":(S=r.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(h.value,E=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(E)[0],name:Object.keys(E)[0]},null,8,["name"]))),128))]},!0)],8,ek)):t.createCommentVNode("",!0)]),_:3})],16,X0))],64)}}}),[["__scopeId","data-v-c6789dd1"]]),tk=["innerHTML"],Vn=Ae(t.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=ht(t.toRef(()=>e.name)),a=vt(i.path,o),l=t.computed(()=>{var g;const p=(g=i.schema)==null?void 0:g.value;if(typeof p.gt=="number")return{min:p.type==="integer"?p.gt+1:p.gt};const[m,h]=p.between??[];return{min:o.min??m,max:o.max??h}}),s=n,c=r.value,d=t.computed(()=>(r==null?void 0:r.value)!=null&&Number.isFinite(r.value)?`${r.value}`:"");function f(p){c!==void 0&&p===""&&Number(p)!==c?(r.value=null,s("update:modelValue",null)):(r.value=p===""?null:Number(p),s("update:modelValue",p===""?null:Number(p)))}const u=Ko(i.ancestors);return(p,m)=>{var g;const h=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(Bn,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(u),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(g=t.unref(a).labelAttributes)!=null&&g.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,tk)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-1a89f288"]]),nk=["innerHTML"],At=Ae(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},items:{},placeholder:{},multiple:{type:Boolean,default:()=>{}},modelValue:{},label:{},help:{},error:{type:Boolean},searchPlaceholder:{},kpopAttributes:{},dropdownMaxHeight:{},width:{},selectedRowCount:{},collapsedContext:{type:Boolean},filterFunction:{type:Function},autosuggest:{type:Boolean},enableItemCreation:{type:Boolean},loading:{type:Boolean},dropdownFooterText:{},dropdownFooterTextPosition:{},itemCreationValidator:{type:Function},enableFiltering:{type:Boolean},clearable:{type:Boolean},reuseItemTemplate:{type:Boolean}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=je(),{value:a,...l}=ht(t.toRef(()=>e.name)),s=vt(l.path,r),c=t.computed(()=>e.items?e.items:l.path?i(l.path.value):[]),d=t.computed(()=>{var u;return e.multiple!==void 0?e.multiple:((u=l.schema.value)==null?void 0:u.type)==="set"}),f=t.computed(()=>d.value?Be.KMultiselect:Be.KSelect);return(u,p)=>{var h;const m=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(m,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(f),t.mergeProps({key:1},{...r,...t.unref(s)},{modelValue:t.unref(a),"onUpdate:modelValue":[p[0]||(p[0]=g=>t.isRef(a)?a.value=g:null),p[1]||(p[1]=g=>o("update",g))],class:"ff-enum-field",clearable:!t.unref(s).required,"data-testid":`ff-${l.path.value}`,items:c.value,"kpop-attributes":{"data-testid":`${l.path.value}-items`}}),t.createSlots({_:2},["tooltip"in u.$slots||(h=t.unref(s).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(u.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,nk)],!0)]),key:"0"}:void 0,u.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:g})=>[t.renderSlot(u.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(g)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-e67d00d5"]]);function Lr(e,n,o=!0){const{value:r,...i}=ht(t.toRef(e,"name")),a=vt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(d(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Rr("ff-kv-field-")}function c(y,_,k){const b=k.indexOf(y),S=k.indexOf(_);return b===-1&&S===-1?0:b===-1?1:S===-1?-1:b-S}function d(y,_){const k=Object.entries(y).map(([b,S])=>({id:s(),key:b,value:S}));return _&&k.sort((b,S)=>c(b.key,S.key,_)),k}function f(){const y={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(y),y}function u(y){const _=l.value.findIndex(k=>k.id===y);_!==-1&&l.value.splice(_,1)}function p(){l.value=d(e.initialValue||{},e.keyOrder)}function m(y){l.value=d(y,e.keyOrder)}let h=null;t.watch(l,y=>{if(!o)return;const _=y.length?Object.fromEntries(y.map(({key:k,value:b})=>[k,b]).filter(([k])=>k)):null;r.value=_,h=_,n("change",_)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,y=>{ao(y,h)||g(y)},{deep:!0});function g(y){if(!y){l.value=[];return}const _=new Map;l.value.forEach(E=>{E.key&&_.set(E.key,E)});const k=[],b=Object.keys(y);(e.keyOrder?[...b].sort((E,C)=>c(E,C,e.keyOrder)):b).forEach(E=>{const C=y[E];if(_.has(E)){const N=_.get(E);N.value=C,k.push(N)}else k.push({id:s(),key:E,value:C})}),l.value=k}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const ok=["data-testid"],rk=["data-testid"],ik=["innerHTML"],ak=["data-testid"],lk=Ae(t.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=Re(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=Lr(r,a),m=t.useTemplateRef("root");async function h(E,C="key"){var N;m.value&&(await t.nextTick(),(N=m.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function g(){s();const E=l.value.findIndex(({key:C})=>!C);h(E===-1?l.value.length-1:E)}function y(E){E===l.value.length-1&&s(),h(E+1)}const _=t.inject(Ue.AUTOFILL_SLOT,void 0),k=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:k.value}));function S(E,C){l.value[E].value=C}return n({reset:d,setValue:f}),(E,C)=>{var I;const N=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${t.unref(p).path.value}`},[t.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${t.unref(p).path.value}`},[t.createVNode(P,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},[(I=t.unref(u).labelAttributes)!=null&&I.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,ik)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon))]),_:1},8,["data-testid"])],8,rk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),($,w)=>(t.openBlock(),t.createElementBlock("div",{key:$.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${w}`},[t.createVNode(Bn,{modelValue:$.key,"onUpdate:modelValue":U=>$.key=U,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":w,"data-testid":`ff-key-${t.unref(p).path.value}.${w}`,placeholder:e.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(U=>h(w,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Bn,{modelValue:$.value,"onUpdate:modelValue":U=>$.value=U,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${w}`,"data-value-input":w,placeholder:e.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(U=>y(w),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(_)&&k.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:b.value,update:U=>S(w,U),value:$.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),k.value&&!t.unref(_)?(t.openBlock(),t.createBlock(N,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${t.unref(p).path.value}`,message:t.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${w}`,icon:"",onClick:U=>t.unref(c)($.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.TrashIcon))]),_:1},8,["data-testid","onClick"])],8,ak))),128))],8,ok))}}}),[["__scopeId","data-v-92e0893d"]]),sk=["data-testid"],ck=["innerHTML"],Ra=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ht(t.toRef(()=>e.name)),s=vt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var g,y;return((y=(g=l.schema)==null?void 0:g.value)==null?void 0:y.len_min)&&l.schema.value.len_min>0}),d=t.ref("");function f(g){return g.map(y=>y.trim()).filter(Boolean).join(", ")}function u(g){return g.trim().split(",").map(y=>y.trim()).filter(Boolean)}function p(g){d.value=g;const y=u(g),_=!y.length&&c.value?null:y;a.value=_,i("update:modelValue",_)}const m=Ko(l.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Uo(e.name)==="name");return t.watch(a,g=>{const y=g?f(g):"";f(u(d.value))!==y&&(d.value=y)},{immediate:!0}),(g,y)=>{var k;const _=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[t.createVNode(Bn,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(k=t.unref(s).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,ck)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,sk))}}}),[["__scopeId","data-v-a27f4ff1"]]),dk=["data-testid"],uk=["innerHTML"],fk=Ae(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{name:{},labelAttributes:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ht(t.toRef(()=>e.name)),s=vt(l.path,t.toRef({...r,...o})),c=t.ref("");function d(p){c.value=p;let m=p||null;try{const h=JSON.parse(p);h&&typeof h=="object"&&(m=h)}catch{}a.value=m,i("update:modelValue",m)}const f=Ko(l.ancestors),u=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Uo(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);ao(m,p)||(c.value=JSON.stringify(p,null,2))}catch{c.value=JSON.stringify(p,null,2)}return}c.value=p||""},{immediate:!0}),(p,m)=>{var g;const h=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${l.path.value}`},[t.createVNode(Bn,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":u.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":d}),t.createSlots({_:2},[(g=t.unref(s).labelAttributes)!=null&&g.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,uk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,dk))}}}),[["__scopeId","data-v-5749f722"]]),pk=["innerHTML"],mk=Ae(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{name:{},labelAttributes:{},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:{t:r}}=Re(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,...s}=ht(t.toRef(()=>e.name));if(s.error)throw new Error(s.error.message);const c=vt(s.path,t.toRef({...i,...o})),d=l.value?l.value.id:null,f=t.computed(()=>{var g;return c.value.placeholder?c.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((g=s.schema.value)==null?void 0:g.reference)??"entity"})}),u=t.ref(d??"");function p(g){d!==void 0&&g===""&&g!==d?(l.value=null,a("update:modelValue",null)):(l.value={id:g.trim()},a("update:modelValue",l.value))}const m=Ko(s.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Uo(e.name)==="name");return(g,y)=>{var _;return t.openBlock(),t.createBlock(Bn,t.mergeProps(t.unref(c),{class:"ff-foreign-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${s.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.help,"model-value":u.value,placeholder:f.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(_=t.unref(c).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,pk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])}}}),[["__scopeId","data-v-b54c028e"]]),pt=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=ht(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?At:so;case"boolean":return"one_of"in o.schema.value?At:Mr;case"number":case"integer":return"one_of"in o.schema.value?At:Vn;case"array":return Go;case"set":return $0(o.schema)?Ra:At;case"record":return wt;case"map":return lk;case"json":return fk;case"foreign":return mk;default:return}});return(i,a)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.$slots[t.unref($n)]))),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:Oa(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:Oa(t.unref(o).path.value)},null,8,["name"])):(t.openBlock(),t.createBlock(l,{key:1,appearance:"warning",message:`${t.unref(o).path.value} ${t.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),t.renderSlot(i.$slots,"default")],64))],64)}}}),gk=["data-testid"],hk=["data-testid"],yk=["innerHTML"],_k=["data-testid"],bk={class:"ff-array-field-item-content"},wk=["data-index","data-testid"],Go=Ae(t.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:n}){var C;t.useCssVars(N=>({v3e1c9ee2:E.value}));const o=e,r=n,{i18n:{t:i}}=Re(),{getDefault:a,getSchema:l}=je(),{value:s,...c}=ht(t.toRef(o,"name")),d=vt(c.path,t.toRef({...o,...t.useAttrs()})),f=t.computed(()=>{if(!c.path)throw new Error("Field path is required for sub-schema retrieval");const N=l(c.path.value);if(!N)throw new Error(`Schema not found for path: ${c.path.value}`);return N.elements}),u=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=md("ff-array-field",u),m=t.computed(()=>o.appearance==="card"?Be.KCard:"div");function h(N,P){return typeof o.itemLabel=="function"?o.itemLabel(N,P):o.itemLabel||d.value.label||`Item #${P}`}const g=t.computed(()=>u.value.map((N,P)=>({hash:`#${p(N,P)}`,title:""}))),y=t.ref((C=g.value[0])==null?void 0:C.hash),_=async()=>{var P;const N=a(Bt(c.path.value,Pa));Array.isArray(s.value)||(s.value=[]),s.value.push(N),r("add"),o.appearance==="tabs"&&(await t.nextTick(),y.value=(P=g.value[g.value.length-1])==null?void 0:P.hash),await t.nextTick(),S(u.value.length+1)},k=async N=>{var P;Array.isArray(s.value)&&s.value.splice(N,1),r("remove",N),o.appearance==="tabs"&&(y.value=(P=g.value[Math.max(0,N-1)])==null?void 0:P.hash)},b=t.useTemplateRef("root");function S(N){var v;if(!b.value)return;const P=Math.max(0,Math.min(N,u.value.length-1));(v=b.value.querySelector(`[data-index="${P}"] [data-autofocus]`))==null||v.focus()}const E=t.computed(()=>{const{appearance:N,stickyTabs:P}=o;return N!=="tabs"||P==null||P===!1?null:typeof P=="number"?`${o.stickyTabs}px`:typeof P=="string"?P:"0"});return(N,P)=>{var U;const v=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),$=t.resolveComponent("KButton"),w=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(v,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:b,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${e.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":e.stickyTabs}]),"data-testid":`ff-array-${c.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${c.path.value}`},[t.createVNode(I,t.mergeProps({class:"ff-array-field-label"},t.unref(d),{"data-testid":`ff-label-${c.path.value}`,"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(U=t.unref(d).labelAttributes)!=null&&U.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,yk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode($,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${c.path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,hk),u.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${c.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(x,F)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(x,F),class:"ff-array-field-item","data-index":F,"data-testid":`ff-array-item-${c.path.value}.${F}`},{default:t.withCtx(()=>[t.createElementVNode("div",bk,[N.$slots.item?t.renderSlot(N.$slots,"item",{key:0,fieldName:String(F),index:F},void 0,!0):t.createCommentVNode("",!0),f.value.type==="array"&&f.value.elements.type==="string"?(t.openBlock(),t.createBlock(Ra,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(F)},null,8,["help","name"])):(t.openBlock(),t.createBlock(pt,{key:2,name:String(F)},null,8,["name"]))]),t.createVNode($,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${F}`,icon:"",onClick:R=>k(F)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,_k)):(t.openBlock(),t.createBlock(t.unref(Be.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(w,{modelValue:y.value,"onUpdate:modelValue":P[0]||(P[0]=x=>y.value=x),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:g.value},t.createSlots({_:2},[t.renderList(u.value,(x,F)=>({name:t.unref(p)(x,F),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":F,"data-testid":`ff-array-item-${c.path.value}.${F}`},[N.$slots.item?t.renderSlot(N.$slots,"item",{key:0,fieldName:String(F),index:F},void 0,!0):(t.openBlock(),t.createBlock(pt,{key:1,name:String(F)},null,8,["name"]))],8,wk)])})),t.renderList(u.value,(x,F)=>({name:`${t.unref(p)(x,F)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h(x,F))+" ",1),t.createVNode($,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${F}`,icon:"",onClick:t.withModifiers(R=>k(F),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,gk))}}}),[["__scopeId","data-v-3edd064c"]]),jo=Symbol(),kk=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=je(),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(({[jo]: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(wt,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(At,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(wt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(At,t.mergeProps(d,{items:t.unref(Ta)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),Ck=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=je();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[jo]=gd())}return(r,i)=>(t.openBlock(),t.createBlock(Go,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:t.withCtx(({index:a,fieldName:l})=>[t.createVNode(kk,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),Fr=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),{fieldRendererRegistry:r}=je();return o&&r.set(n.match,o),(i,a)=>null}}),yt=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),{getSchema:a,formData:l,resetFormData:s}=B0(e.schema,t.computed(()=>e.data),e.config,d=>r("change",d)),c=t.computed(()=>{const{fields:d}=a();return e.fieldsOrder?d.sort((f,u)=>{const p=Object.keys(f)[0],m=Object.keys(u)[0],h=e.fieldsOrder.indexOf(p),g=e.fieldsOrder.indexOf(m);return h===-1&&g===-1?0:h===-1?1:g===-1?-1:h-g}):d});return n({getInnerData:()=>t.toRaw(l),setInnerData:d=>s(d)}),(d,f)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref($n)]))),t.renderSlot(d.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value,u=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(u)[0],name:Object.keys(u)[0],onGlobalAction:f[0]||(f[0]=(p,m)=>r("globalAction",p,m))},null,8,["name"]))),128))])]),_:3}))}}),Ek={class:"ff-advanced-fields"},Ur=Ae(t.defineComponent({__name:"AdvancedFields",props:{hideGeneralFields:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),{getSchema:o}=je(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Be.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"data-testid":"view-advanced","trigger-label":r.value?t.unref(n)("plugins.form.grouping.advanced_parameters.view"):t.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:t.withCtx(()=>[t.createElementVNode("div",Ek,[e.hideGeneralFields?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(pt,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(pt,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Ra,{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"]]),Nk=Ae(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=Re();function a(d,f=!1){return d.reduce((u,{[jo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=io(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(h=>{h.request.body.custom=h.request.body.custom??{},h[jo]=gd()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(g=>p[g])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=io(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{[jo]:h,depends_on:g,...y}=m;return{depends_on:g.map(_=>u[_]).filter(_=>_!=null),...y}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(yt,{class:"rc-config-form",config:r,data:e.data,schema:e.schema,tag:"div",onChange:c},{[t.unref($n)]:t.withCtx(()=>[t.createVNode(Fr,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(so,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(Fr,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(Go,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(wt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Ck),t.createVNode(wt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(wt,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(wt,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(Ur)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),xk={class:"ff-form-pinned-fields"},Sk={class:"ff-form-config-form"},Ma=Ae(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),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 va(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",xk,[t.createVNode(t.unref(Ue.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:t.unref(a),onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Be.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"ff-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Sk,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:d.value,schema:s.value,onChange:u[0]||(u[0]=(...p)=>e.onFormChange&&e.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),vk=t.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Ue.AUTOFILL_SLOT,o==null?void 0:o[Ue.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ma,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Nk,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Ak={key:1},Ik=["innerHTML"],Tk={class:"horizontal-container"},_d=Ae(t.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=je(),a=ht(t.toRef(()=>e.name)),l=vt(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,f)=>{var m;const u=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",Ak,[t.createVNode(p,t.normalizeProps(t.guardReactiveProps(t.unref(l).labelAttributes)),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l).label)+" ",1)]),_:2},[(m=t.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,Ik)]),key:"0"}:void 0]),1040),t.createElementVNode("div",Tk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(t.unref(Be.KRadio),{key:h.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=g=>t.unref(a).value.value=g),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),Pk={class:"sp-form-request-limits-subtitle"},Ok={class:"sp-form-request-limits-content"},$k={class:"sp-form-window-type"},Bk={class:"sp-form-request-limits-items"},Vk={class:"sp-form-request-limits-row"},Dk=["id"],Rk={class:"sp-form-request-limits-actions"},Mk={key:0,class:"sp-form-request-limits-examples"},Lk={class:"sp-form-request-limits-examples-badges"},La="config.window_type",Fk=Ae(t.defineComponent({__name:"RequestLimitsForm",setup(e){var y;const{t:n}=Ze.createI18n("en-us",rt),{formData:o,getSelectItems:r,getSchema:i}=je(),a=t.computed(()=>{var k,b;const _=(b=(k=o.config)==null?void 0:k.limit)==null?void 0:b.map((S,E)=>{var C,N;return{limit:S,windowSize:(N=(C=o.config)==null?void 0:C.window_size)==null?void 0:N[E]}});return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=md("request-limits",a),s=_=>{var k,b;p.value=void 0,o.config&&((k=o.config.limit)!=null&&k.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=(y=i(La))==null?void 0:y.default,f=t.computed(()=>dc(o,La)),u=t.computed(()=>r(La).sort((_,k)=>_.value===d?-1:k.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},h=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),g=(_,k)=>{if(k===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=k}),o.config.limit=[_.config.limit],o.config.window_size=[_.config.window_size]};return(_,k)=>{const b=t.resolveComponent("KLabel"),S=t.resolveComponent("KButton"),E=t.resolveComponent("KBadge"),C=t.resolveComponent("KTooltip"),N=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(N,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",Pk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Ok,[t.createElementVNode("div",$k,[t.createVNode(_d,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":k[0]||(k[0]=P=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",Bk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(P,v)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(P,v)},[t.createVNode(b,{for:`sp-form-request-limits-item-${v}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:v+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",Vk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${v}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Vn,{name:`$.config.limit.${v}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(Vn,{name:`$.config.window_size.${v}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,Dk),t.createElementVNode("div",Rk,[t.createVNode(S,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(v)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(S,{appearance:"tertiary",onClick:()=>s(v)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),h.value.length>0?(t.openBlock(),t.createElementBlock("div",Mk,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",Lk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(P,v)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${v}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(P.description),1),k[1]||(k[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(P.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(P.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(E,{appearance:p.value===`${f.value}-${v}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>g(P,`${f.value}-${v}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(P.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),Uk={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Kk=Ae(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Ze.createI18n("en-us",rt);return(o,r)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",Uk,[t.createVNode(Vn,{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(so,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Gk={class:"partial-config-card"},jk={class:"config-card-row-label"},qk={class:"label-text"},zk=["data-testid"],Hk=["data-testid"],Yk={key:1},Wk=["data-testid"],Xk=["data-testid"],Zk=Ae(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Ze.createI18n("en-us",rt),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=u=>u!=null,l=(u,p)=>a(p)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:s}=ye.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,g,y;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(h=r[u])!=null&&h.formatter?r[u].formatter(p):p,type:((g=r[u])==null?void 0:g.type)??l(u,p),order:((y=r[u])==null?void 0:y.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=O0(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(d));return(u,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",Gk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:h,label:g,value:y,type:_})=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"partial-config-card-row"},[t.createElementVNode("div",jk,[t.createElementVNode("div",qk,t.toDisplayString(g),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(y)?(t.openBlock(),t.createElementBlock("div",Yk,[_==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(y)},null,8,["text"])],8,Wk)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},t.toDisplayString(y),9,Xk))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,Hk))],8,zk)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Fa=Symbol("redis-partial-info"),Jk={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"}},bd=["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"];function Ua(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(td,e);return o=>n(o)}const Qk={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},eC={class:"shared-redis-config"},tC={class:"shared-redis-config-title"},nC={class:"redis-config-select","data-testid":"redis-config-select"},oC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},wd=Ae(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},setup(e){var N;const{t:n}=Ze.createI18n("en-us",rt),o=e,r=Ua(),i=t.inject(Fa),a=(i==null?void 0:i.isEditing)||!1,l=t.computed(()=>{var P;return o.redisPath?o.redisPath:(P=i==null?void 0:i.redisPath)!=null&&P.value?"$."+i.redisPath.value:"$.config.redis"}),s=o.redisType||((N=i==null?void 0:i.redisType)==null?void 0:N.value),c=t.computed(()=>{var P;return!!((P=i==null?void 0:i.redisType)!=null&&P.value)}),d=t.ref(null),f=t.ref(!a),{getMessageFromError:u}=ye.useErrors(),p=t.ref(o.defaultRedisConfigItem),m=t.ref({}),h=t.ref(),{value:g}=pd("$.partials"),{value:y}=ht(l),_=t.inject(Ue.FORMS_CONFIG),k=t.ref(null),b=P=>{let v=`${_.apiBaseUrl}${Jk[_.app].getOne}`;return _.app==="konnect"?v=v.replace(/{controlPlaneId}/gi,(_==null?void 0:_.controlPlaneId)||""):_.app==="kongManager"&&(v=v.replace(/\/{workspace}/gi,_!=null&&_.workspace?`/${_.workspace}`:"")),v=v.replace(/{id}/gi,String(P)),v},{axiosInstance:S}=ye.useAxios(_==null?void 0:_.axiosRequestConfig),E=()=>{f.value?(h.value&&(g.value=h.value,p.value=h.value[0].id,y.value=void 0),y!=null&&y.value&&(m.value=y.value)):(Object.keys(m.value).length&&(y.value=m.value),g!=null&&g.value&&(h.value=g.value),g.value=a?null:void 0)},C=async P=>{if(P){p.value=P,g.value=[{id:P}],h.value=[{id:P}],y.value=void 0;try{const v=await S.get(b(P));if(v.data.config){const I=Object.assign(v.data,v.data.config);delete I.config,d.value=I}}catch(v){console.error(v)}}};return t.watch(()=>f.value,()=>{E()}),t.onBeforeMount(()=>{var P;if(o.defaultRedisConfigItem||g!=null&&g.value){const v=o.defaultRedisConfigItem||((P=g==null?void 0:g.value)==null?void 0:P[0].id);C(v),f.value=!0}else y!=null&&y.value&&(m.value=y.value)}),(P,v)=>{const I=t.resolveComponent("KBadge"),$=t.resolveComponent("KRadio"),w=t.resolveComponent("KCard");return c.value?(t.openBlock(),t.createBlock(w,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(n)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",Qk,[t.createVNode($,{modelValue:f.value,"onUpdate:modelValue":v[0]||(v[0]=U=>f.value=U),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},{default:t.withCtx(()=>[t.createVNode(I,{appearance:"success"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),t.createVNode($,{modelValue:f.value,"onUpdate:modelValue":v[1]||(v[1]=U=>f.value=U),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",eC,[t.createElementVNode("div",tC,t.toDisplayString(t.unref(n)("redis.shared_configuration.title")),1),t.createElementVNode("div",nC,[t.createVNode(t.unref(As.RedisConfigurationSelector),{"data-testid":"redis-config-select-trigger","model-value":p.value,"redis-type":t.unref(s),onErrorChange:v[2]||(v[2]=U=>k.value=U),onToast:t.unref(r),"onUpdate:modelValue":v[3]||(v[3]=U=>C(U))},null,8,["model-value","redis-type","onToast"])]),d.value?(t.openBlock(),t.createBlock(Zk,{key:0,"config-fields":d.value},null,8,["config-fields"])):t.createCommentVNode("",!0),k.value?(t.openBlock(),t.createElementBlock("p",oC,t.toDisplayString(k.value?t.unref(u)(k.value):t.unref(n)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)],512),[[t.vShow,f.value]]),f.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(wt,t.mergeProps({key:0},o,{"as-child":"","fields-order":t.unref(bd),name:l.value,"reset-label-path":"reset"}),null,16,["fields-order","name"]))]),_:1},8,["title"])):(t.openBlock(),t.createBlock(wt,t.mergeProps({key:1},o,{"fields-order":t.unref(bd),"hide-required-asterisk":"",name:l.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-2ac03f3c"]]),rC=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=je();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(hd,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(wd,{key:0})):t.createCommentVNode("",!0)]}),_:1}))}}),iC=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(yt,{config:r,data:e.data,schema:e.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(wt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Fk),t.createVNode(Kk)]),_:1}),t.createVNode(Ur,null,{default:t.withCtx(()=>[t.createVNode(pt,{name:"config.dictionary_name"}),t.createVNode(pt,{name:"config.lock_dictionary_name"}),t.createVNode(pt,{name:"config.strategy"}),t.createVNode(rC),t.createVNode(pt,{name:"config.namespace"}),t.createVNode(pt,{name:"config.hide_client_headers"}),t.createVNode(pt,{name:"config.disable_penalty"}),t.createVNode(pt,{name:"config.retry_after_jitter_max"}),t.createVNode(pt,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),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(Ue.AUTOFILL_SLOT,o==null?void 0:o[Ue.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ma,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(iC,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Ka=t.defineComponent({__name:"VFGField",props:{formOptions:{},vfgSchema:{}},setup(e){const n=Symbol("rawTagsString"),{formData:o,getSchema:r}=je(),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(Ue.VueFormGenerator),{model:i.value,options:e.formOptions,schema:e.vfgSchema,onModelUpdated:a},null,8,["model","options","schema"]))}}),lC={"data-testid":"ff-identity-realms-field"},sC=["innerHTML"],cC=t.defineComponent({__name:"FreeFormAdapter",props:{name:{},label:{},labelAttributes:{},required:{type:Boolean},placeholder:{},resetLabelPath:{}},setup(e){const n=e,{error:o,value:r,path:i}=ht(t.toRef(n,"name"));if(o)throw o;const a=vt(t.toRef(n,"name"),n);return(l,s)=>{var d;const c=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",lC,[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,sC)])]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(Vs,{modelValue:t.unref(r),"onUpdate:modelValue":s[0]||(s[0]=f=>t.isRef(r)?r.value=f:null)},null,8,["modelValue"])])}}}),dC={class:"enabled"},uC={class:"scope"},fC={key:0,class:"scope-detail"},kd=Ae(t.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{default:"form"},formConfig:{},pluginName:{}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=t.createPropsRestProxy(e,["editorMode"]),r=t.inject(Fa),i=t.useSlots(),a=t.computed(()=>o.formConfig??{hasValue:v=>!!v&&Object.keys(v).length>0}),l=t.computed(()=>{var v,I;return(v=o.formSchema)!=null&&v.groups?o.formSchema.groups.reduce(($,w)=>{var F,R;const U=w.fields,x=(R=(F=w.collapsible)==null?void 0:F.nestedCollapsible)!=null&&R.fields?U.concat(w.collapsible.nestedCollapsible.fields):U;return $.concat(x)},[]):((I=o.formSchema)==null?void 0:I.fields)||[]}),s=t.computed(()=>({fields:l.value.filter(v=>v.model==="enabled")})),c=t.computed(()=>l.value.find(v=>v.type==="selectionGroup")),d=t.computed(()=>{var v;return(((v=c.value)==null?void 0:v.fields)||[]).map(({label:I,description:$})=>({label:I,description:$}))}),f=t.computed(()=>{var v,I;return(I=(v=c.value)==null?void 0:v.fields)==null?void 0:I[1]}),u=t.computed(()=>{const v=["instance_name","protocols","tags"];return{fields:l.value.filter(I=>v.includes(I.model))}}),p=["config"],m=t.computed(()=>{var $;const v={type:"record",fields:o.schema.fields.filter(w=>p.includes(Object.keys(w)[0]))};return[...s.value.fields,...(($=f.value)==null?void 0:$.fields)??[],...u.value.fields].forEach(w=>{if(w.type==="AutoSuggest")v.fields.push({[w.model.split("-")[0]]:{type:"foreign",reference:w.entity,description:w.help}});else if(w.model==="enabled")v.fields.push({[w.model]:{type:"boolean",default:!0}});else if(w.model==="instance_name")v.fields.push({[w.model]:{type:"string",description:w.help}});else if(w.model==="protocols")v.fields.push({[w.model]:{type:"set",elements:{type:"string",one_of:w.values.map(U=>U.value)},default:[...w.default]}});else if(w.model==="tags")v.fields.push({[w.model]:{type:"set",elements:{type:"string"}}});else throw new Error(`Unsupported VFG field type '${w.type}' for model '${w.model}'`)}),v}),h=t.computed(()=>{const v=["config","partials","__ui_data","enabled","protocols","instance_name","tags","consumer","consumer_group","route","service"];return va(o.model,v)}),g=t.computed(()=>{var v;return((v=f.value)==null?void 0:v.fields.map(I=>I.model.split("-")[0]))??[]}),y=t.ref(va(h.value,g.value)),_=t.ref(Object.values(y.value).some(P)),k=t.ref(!0),b=t.useTemplateRef("form");let S=!1;function E(){if(!b.value)return;const{getInnerData:v,setInnerData:I}=b.value,w={...v()};_.value?g.value.forEach(U=>{w[U]=y.value[U]??null}):g.value.forEach(U=>{w[U]=null}),S=!0,I(w),t.nextTick(()=>{S=!1})}function C(v){if(S||N(v),e.editorMode==="code"){const I=g.value.some($=>P(v[$]));I!==_.value&&(_.value=I)}o.onFormChange(v)}function N(v){g.value.forEach(I=>{const $=v[I];Xc($,"id")&&$.id!=null?y.value[I]=$:y.value[I]=null})}function P(v){return Xc(v,"id")&&v.id!=null}return(v,I)=>{const $=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(yt,{ref:"form",class:"ff-standard-layout",config:a.value,data:h.value,schema:m.value,tag:"div",onChange:C},{[t.unref($n)]:t.withCtx(()=>[t.createVNode(Fr,{match:({path:w})=>{var U,x;return w===((x=(U=t.unref(r))==null?void 0:U.redisPath)==null?void 0:x.value)}},{default:t.withCtx(()=>[t.createVNode(wd)]),_:1},8,["match"]),t.createVNode(Fr,{match:({path:w})=>e.pluginName==="key-auth"&&w==="config.identity_realms"},{default:t.withCtx(w=>[t.createVNode(cC,t.normalizeProps(t.guardReactiveProps(w)),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[e.editorMode==="form"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(t.unref(ye.EntityFormBlock),{description:e.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:e.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",dC,[t.createVNode(Ka,{"form-options":e.formOptions,"vfg-schema":s.value},null,8,["form-options","vfg-schema"])]),t.createElementVNode("div",uC,[t.createVNode(t.unref(Be.KRadio),t.mergeProps({modelValue:_.value,"onUpdate:modelValue":I[0]||(I[0]=w=>_.value=w),card:"","card-orientation":"horizontal"},d.value[0],{"selected-value":!1,"onUpdate:modelValue":E}),null,16,["modelValue"]),t.createVNode(t.unref(Be.KRadio),t.mergeProps({modelValue:_.value,"onUpdate:modelValue":I[1]||(I[1]=w=>_.value=w),card:"","card-orientation":"horizontal"},d.value[1],{"selected-value":!0,"onUpdate:modelValue":E}),null,16,["modelValue"])]),_.value&&f.value?(t.openBlock(),t.createElementBlock("div",fC,[t.createVNode(Ka,{"form-options":e.formOptions,"vfg-schema":f.value},null,8,["form-options","vfg-schema"])])):t.createCommentVNode("",!0),t.createVNode($,{modelValue:k.value,"onUpdate:modelValue":I[2]||(I[2]=w=>k.value=w),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(Ka,{"form-options":e.formOptions,"vfg-schema":u.value},null,8,["form-options","vfg-schema"])]),_:1},8,["modelValue"])]),_:2},[i["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,i["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,i["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ye.EntityFormBlock),{description:e.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:e.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(v.$slots,"default",{},void 0,!0)]),_:2},[i["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,i["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,i["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])],64)):t.renderSlot(v.$slots,"code-editor",{key:1},void 0,!0)]),_:2},1032,["config","data","schema"])}}}),[["__scopeId","data-v-49606adb"]]);/*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT */function Cd(e){return typeof e>"u"||e===null}function pC(e){return typeof e=="object"&&e!==null}function mC(e){return Array.isArray(e)?e:Cd(e)?[]:[e]}function gC(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 hC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function yC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var _C=Cd,bC=pC,wC=mC,kC=hC,CC=yC,EC=gC,it={isNothing:_C,isObject:bC,toArray:wC,repeat:kC,isNegativeZero:CC,extend:EC};function Ed(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
11
+ it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:oo.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:oo.tags}]},Tg={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"]}}]},Ks={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:An},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Pg=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)}}:{},Og={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"}}]},St={"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"]}},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",nameKey:"plugins.meta.ldap-auth-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...Z.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"]]},...Z.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"]]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",nameKey:"plugins.meta.rate-limiting-advanced.name",...Z.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"]}},...Z.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",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...Z.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"]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...Z.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"]]},...Z.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",...Z.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",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...Z.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,...Z.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,...Z.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,...Z.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"]]]},...Z.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...Z.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,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...Z.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,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...Z.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...Z.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,...Z.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,...Z.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,...Z.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,...Z.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,...Z.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,...Z.PLUGIN_GROUP_AND_SCOPE_MAP["ai-lakera-guard"]}},ro={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Rs,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:vn(Rs),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Ds,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:vn(Ds)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Ls,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:vn(Ls)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Ks,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:vn(Ks)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Us,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:vn(Us)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Fs,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:vn(Fs)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Ag,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},$g={acls:wg,basicauth_credentials:kg,keyauth_credentials:Sg,keyauth_enc_credentials:Og,oauth2_credentials:Tg,hmacauth_credentials:vg,jwt_secrets:Ig},Bg=()=>{const{i18n:{t:e}}=De(),n={},o={};for(const[i,a]of Object.entries(St))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(ro))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:ro,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},Vo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Vg={"config-prompts-prepend":{...Vo,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":{...Vo,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"}]}}}},Rg={"config-templates":{...Vo,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"}]}}}},Dg={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)}},js=e=>e.split(",").map(n=>n.trim()).filter(Boolean),Mg={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=js(o.allow)),typeof(o==null?void 0:o.deny)=="string"&&(o.deny=js(o.deny))})}},Lg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Fg={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:oo.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"}},Me={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"},vr={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Ug={"config-metrics":{...vr,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"}]}}}},Kg={"config-functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},jg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Gg={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},qg={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},zg={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Hg={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},Gs=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:oo.fields.arrayItems({newElementButtonLabel:"Add"})}),Hg),Ar={"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"}},Yg={"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":{}},Wg=["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]:oo.fields.arrayItems({newElementButtonLabel:"Add"})}),Yg),qs={"config-add-json":{...Me,label:"Config.Add.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Me,label:"Config.Append.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Me,label:"Config.Remove.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Me,label:"Config.Rename.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Me,label:"Config.Replace.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},Xg={...qs,"config-allow-json":{...Me,label:"Config.Allow.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Me,label:"Config.Transform.Functions",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Me,label:"Config.Transform.Json",inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},Zg={"config-rules":{...Vo,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"}]}}}},Jg={"config-session_redis_cluster_nodes":{...Vo,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"}]}}}},Qg={"config-flow-functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},eh={"config-message-functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}}},th={"config-metrics":{...vr,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"]}]}}}},nh={"config-metrics":{...vr,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"]}]}}}},oh={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},rh={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var zs=typeof global=="object"&&global&&global.Object===Object&&global,ih=typeof self=="object"&&self&&self.Object===Object&&self,Lt=zs||ih||Function("return this")(),vt=Lt.Symbol,Hs=Object.prototype,ah=Hs.hasOwnProperty,lh=Hs.toString,Ro=vt?vt.toStringTag:void 0;function sh(e){var n=ah.call(e,Ro),o=e[Ro];try{e[Ro]=void 0;var r=!0}catch{}var i=lh.call(e);return r&&(n?e[Ro]=o:delete e[Ro]),i}var ch=Object.prototype,dh=ch.toString;function uh(e){return dh.call(e)}var fh="[object Null]",ph="[object Undefined]",Ys=vt?vt.toStringTag:void 0;function In(e){return e==null?e===void 0?ph:fh:Ys&&Ys in Object(e)?sh(e):uh(e)}function Ht(e){return e!=null&&typeof e=="object"}var mh="[object Symbol]";function oa(e){return typeof e=="symbol"||Ht(e)&&In(e)==mh}function Ws(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var Bt=Array.isArray,Xs=vt?vt.prototype:void 0,Zs=Xs?Xs.toString:void 0;function Js(e){if(typeof e=="string")return e;if(Bt(e))return Ws(e,Js)+"";if(oa(e))return Zs?Zs.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Tn(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function gh(e){return e}var hh="[object AsyncFunction]",yh="[object Function]",_h="[object GeneratorFunction]",bh="[object Proxy]";function Ir(e){if(!Tn(e))return!1;var n=In(e);return n==yh||n==_h||n==hh||n==bh}var ra=Lt["__core-js_shared__"],Qs=function(){var e=/[^.]+$/.exec(ra&&ra.keys&&ra.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function wh(e){return!!Qs&&Qs in e}var kh=Function.prototype,Ch=kh.toString;function Pn(e){if(e!=null){try{return Ch.call(e)}catch{}try{return e+""}catch{}}return""}var Eh=/[\\^$.*+?()[\]{}|]/g,Nh=/^\[object .+?Constructor\]$/,xh=Function.prototype,Sh=Object.prototype,vh=xh.toString,Ah=Sh.hasOwnProperty,Ih=RegExp("^"+vh.call(Ah).replace(Eh,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Th(e){if(!Tn(e)||wh(e))return!1;var n=Ir(e)?Ih:Nh;return n.test(Pn(e))}function Ph(e,n){return e==null?void 0:e[n]}function On(e,n){var o=Ph(e,n);return Th(o)?o:void 0}var ia=On(Lt,"WeakMap"),ec=Object.create,Oh=function(){function e(){}return function(n){if(!Tn(n))return{};if(ec)return ec(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function $h(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 Bh(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var Vh=800,Rh=16,Dh=Date.now;function Mh(e){var n=0,o=0;return function(){var r=Dh(),i=Rh-(r-o);if(o=r,i>0){if(++n>=Vh)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function Lh(e){return function(){return e}}var Tr=function(){try{var e=On(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Fh=Tr?function(e,n){return Tr(e,"toString",{configurable:!0,enumerable:!1,value:Lh(n),writable:!0})}:gh,Uh=Mh(Fh);function Kh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var jh=9007199254740991,Gh=/^(?:0|[1-9]\d*)$/;function aa(e,n){var o=typeof e;return n=n??jh,!!n&&(o=="number"||o!="symbol"&&Gh.test(e))&&e>-1&&e%1==0&&e<n}function tc(e,n,o){n=="__proto__"&&Tr?Tr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function la(e,n){return e===n||e!==e&&n!==n}var qh=Object.prototype,zh=qh.hasOwnProperty;function sa(e,n,o){var r=e[n];(!(zh.call(e,n)&&la(r,o))||o===void 0&&!(n in e))&&tc(e,n,o)}function Do(e,n,o,r){var i=!o;o||(o={});for(var a=-1,l=n.length;++a<l;){var s=n[a],c=void 0;c===void 0&&(c=e[s]),i?tc(o,s,c):sa(o,s,c)}return o}var nc=Math.max;function Hh(e,n,o){return n=nc(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=nc(r.length-n,0),l=Array(a);++i<a;)l[i]=r[n+i];i=-1;for(var s=Array(n+1);++i<n;)s[i]=r[i];return s[n]=o(l),$h(e,this,s)}}var Yh=9007199254740991;function ca(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Yh}function da(e){return e!=null&&ca(e.length)&&!Ir(e)}var Wh=Object.prototype;function Pr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||Wh;return e===o}function Xh(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var Zh="[object Arguments]";function oc(e){return Ht(e)&&In(e)==Zh}var rc=Object.prototype,Jh=rc.hasOwnProperty,Qh=rc.propertyIsEnumerable,Or=oc(function(){return arguments}())?oc:function(e){return Ht(e)&&Jh.call(e,"callee")&&!Qh.call(e,"callee")};function ey(){return!1}var ic=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,ac=ic&&typeof module=="object"&&module&&!module.nodeType&&module,ty=ac&&ac.exports===ic,lc=ty?Lt.Buffer:void 0,ny=lc?lc.isBuffer:void 0,Mo=ny||ey,oy="[object Arguments]",ry="[object Array]",iy="[object Boolean]",ay="[object Date]",ly="[object Error]",sy="[object Function]",cy="[object Map]",dy="[object Number]",uy="[object Object]",fy="[object RegExp]",py="[object Set]",my="[object String]",gy="[object WeakMap]",hy="[object ArrayBuffer]",yy="[object DataView]",_y="[object Float32Array]",by="[object Float64Array]",wy="[object Int8Array]",ky="[object Int16Array]",Cy="[object Int32Array]",Ey="[object Uint8Array]",Ny="[object Uint8ClampedArray]",xy="[object Uint16Array]",Sy="[object Uint32Array]",ze={};ze[_y]=ze[by]=ze[wy]=ze[ky]=ze[Cy]=ze[Ey]=ze[Ny]=ze[xy]=ze[Sy]=!0,ze[oy]=ze[ry]=ze[hy]=ze[iy]=ze[yy]=ze[ay]=ze[ly]=ze[sy]=ze[cy]=ze[dy]=ze[uy]=ze[fy]=ze[py]=ze[my]=ze[gy]=!1;function vy(e){return Ht(e)&&ca(e.length)&&!!ze[In(e)]}function ua(e){return function(n){return e(n)}}var sc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,Lo=sc&&typeof module=="object"&&module&&!module.nodeType&&module,Ay=Lo&&Lo.exports===sc,fa=Ay&&zs.process,io=function(){try{var e=Lo&&Lo.require&&Lo.require("util").types;return e||fa&&fa.binding&&fa.binding("util")}catch{}}(),cc=io&&io.isTypedArray,pa=cc?ua(cc):vy,Iy=Object.prototype,Ty=Iy.hasOwnProperty;function dc(e,n){var o=Bt(e),r=!o&&Or(e),i=!o&&!r&&Mo(e),a=!o&&!r&&!i&&pa(e),l=o||r||i||a,s=l?Xh(e.length,String):[],c=s.length;for(var d in e)(n||Ty.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||aa(d,c)))&&s.push(d);return s}function uc(e,n){return function(o){return e(n(o))}}var Py=uc(Object.keys,Object),Oy=Object.prototype,$y=Oy.hasOwnProperty;function fc(e){if(!Pr(e))return Py(e);var n=[];for(var o in Object(e))$y.call(e,o)&&o!="constructor"&&n.push(o);return n}function ma(e){return da(e)?dc(e):fc(e)}function By(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var Vy=Object.prototype,Ry=Vy.hasOwnProperty;function Dy(e){if(!Tn(e))return By(e);var n=Pr(e),o=[];for(var r in e)r=="constructor"&&(n||!Ry.call(e,r))||o.push(r);return o}function ga(e){return da(e)?dc(e,!0):Dy(e)}var My=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ly=/^\w*$/;function Fy(e,n){if(Bt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||oa(e)?!0:Ly.test(e)||!My.test(e)||n!=null&&e in Object(n)}var Fo=On(Object,"create");function Uy(){this.__data__=Fo?Fo(null):{},this.size=0}function Ky(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var jy="__lodash_hash_undefined__",Gy=Object.prototype,qy=Gy.hasOwnProperty;function zy(e){var n=this.__data__;if(Fo){var o=n[e];return o===jy?void 0:o}return qy.call(n,e)?n[e]:void 0}var Hy=Object.prototype,Yy=Hy.hasOwnProperty;function Wy(e){var n=this.__data__;return Fo?n[e]!==void 0:Yy.call(n,e)}var Xy="__lodash_hash_undefined__";function Zy(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Fo&&n===void 0?Xy:n,this}function $n(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])}}$n.prototype.clear=Uy,$n.prototype.delete=Ky,$n.prototype.get=zy,$n.prototype.has=Wy,$n.prototype.set=Zy;function Jy(){this.__data__=[],this.size=0}function $r(e,n){for(var o=e.length;o--;)if(la(e[o][0],n))return o;return-1}var Qy=Array.prototype,e_=Qy.splice;function t_(e){var n=this.__data__,o=$r(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 n_(e){var n=this.__data__,o=$r(n,e);return o<0?void 0:n[o][1]}function o_(e){return $r(this.__data__,e)>-1}function r_(e,n){var o=this.__data__,r=$r(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Yt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Yt.prototype.clear=Jy,Yt.prototype.delete=t_,Yt.prototype.get=n_,Yt.prototype.has=o_,Yt.prototype.set=r_;var Uo=On(Lt,"Map");function i_(){this.size=0,this.__data__={hash:new $n,map:new(Uo||Yt),string:new $n}}function a_(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Br(e,n){var o=e.__data__;return a_(n)?o[typeof n=="string"?"string":"hash"]:o.map}function l_(e){var n=Br(this,e).delete(e);return this.size-=n?1:0,n}function s_(e){return Br(this,e).get(e)}function c_(e){return Br(this,e).has(e)}function d_(e,n){var o=Br(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Wt(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])}}Wt.prototype.clear=i_,Wt.prototype.delete=l_,Wt.prototype.get=s_,Wt.prototype.has=c_,Wt.prototype.set=d_;var u_="Expected a function";function ha(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(u_);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(ha.Cache||Wt),o}ha.Cache=Wt;var f_=500;function p_(e){var n=ha(e,function(r){return o.size===f_&&o.clear(),r}),o=n.cache;return n}var m_=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,g_=/\\(\\)?/g,h_=p_(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(m_,function(o,r,i,a){n.push(i?a.replace(g_,"$1"):r||o)}),n});function ya(e){return e==null?"":Js(e)}function ao(e,n){return Bt(e)?e:Fy(e,n)?[e]:h_(ya(e))}function Vr(e){if(typeof e=="string"||oa(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function _a(e,n){n=ao(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[Vr(n[o++])];return o&&o==r?e:void 0}function lo(e,n,o){var r=e==null?void 0:_a(e,n);return r===void 0?o:r}function ba(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var pc=vt?vt.isConcatSpreadable:void 0;function y_(e){return Bt(e)||Or(e)||!!(pc&&e&&e[pc])}function __(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=y_),i||(i=[]);++a<l;){var s=e[a];o(s)?ba(i,s):i[i.length]=s}return i}function b_(e){var n=e==null?0:e.length;return n?__(e):[]}function mc(e){return Uh(Hh(e,void 0,b_),e+"")}var wa=uc(Object.getPrototypeOf,Object),w_="[object Object]",k_=Function.prototype,C_=Object.prototype,gc=k_.toString,E_=C_.hasOwnProperty,N_=gc.call(Object);function x_(e){if(!Ht(e)||In(e)!=w_)return!1;var n=wa(e);if(n===null)return!0;var o=E_.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&gc.call(o)==N_}function hc(e,n,o){var r=-1,i=e.length;n<0&&(n=-n>i?0:i+n),o=o>i?i:o,o<0&&(o+=i),i=n>o?0:o-n>>>0,n>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+n];return a}function S_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:hc(e,n,o)}var v_="\\ud800-\\udfff",A_="\\u0300-\\u036f",I_="\\ufe20-\\ufe2f",T_="\\u20d0-\\u20ff",P_=A_+I_+T_,O_="\\ufe0e\\ufe0f",$_="\\u200d",B_=RegExp("["+$_+v_+P_+O_+"]");function yc(e){return B_.test(e)}function V_(e){return e.split("")}var _c="\\ud800-\\udfff",R_="\\u0300-\\u036f",D_="\\ufe20-\\ufe2f",M_="\\u20d0-\\u20ff",L_=R_+D_+M_,F_="\\ufe0e\\ufe0f",U_="["+_c+"]",ka="["+L_+"]",Ca="\\ud83c[\\udffb-\\udfff]",K_="(?:"+ka+"|"+Ca+")",bc="[^"+_c+"]",wc="(?:\\ud83c[\\udde6-\\uddff]){2}",kc="[\\ud800-\\udbff][\\udc00-\\udfff]",j_="\\u200d",Cc=K_+"?",Ec="["+F_+"]?",G_="(?:"+j_+"(?:"+[bc,wc,kc].join("|")+")"+Ec+Cc+")*",q_=Ec+Cc+G_,z_="(?:"+[bc+ka+"?",ka,wc,kc,U_].join("|")+")",H_=RegExp(Ca+"(?="+Ca+")|"+z_+q_,"g");function Y_(e){return e.match(H_)||[]}function W_(e){return yc(e)?Y_(e):V_(e)}function X_(e){return function(n){n=ya(n);var o=yc(n)?W_(n):void 0,r=o?o[0]:n.charAt(0),i=o?S_(o,1).join(""):n.slice(1);return r[e]()+i}}var Z_=X_("toUpperCase");function J_(){this.__data__=new Yt,this.size=0}function Q_(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function eb(e){return this.__data__.get(e)}function tb(e){return this.__data__.has(e)}var nb=200;function ob(e,n){var o=this.__data__;if(o instanceof Yt){var r=o.__data__;if(!Uo||r.length<nb-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Wt(r)}return o.set(e,n),this.size=o.size,this}function Xt(e){var n=this.__data__=new Yt(e);this.size=n.size}Xt.prototype.clear=J_,Xt.prototype.delete=Q_,Xt.prototype.get=eb,Xt.prototype.has=tb,Xt.prototype.set=ob;function rb(e,n){return e&&Do(n,ma(n),e)}function ib(e,n){return e&&Do(n,ga(n),e)}var Nc=typeof Ie=="object"&&Ie&&!Ie.nodeType&&Ie,xc=Nc&&typeof module=="object"&&module&&!module.nodeType&&module,ab=xc&&xc.exports===Nc,Sc=ab?Lt.Buffer:void 0,vc=Sc?Sc.allocUnsafe:void 0;function lb(e,n){if(n)return e.slice();var o=e.length,r=vc?vc(o):new e.constructor(o);return e.copy(r),r}function sb(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 Ac(){return[]}var cb=Object.prototype,db=cb.propertyIsEnumerable,Ic=Object.getOwnPropertySymbols,Ea=Ic?function(e){return e==null?[]:(e=Object(e),sb(Ic(e),function(n){return db.call(e,n)}))}:Ac;function ub(e,n){return Do(e,Ea(e),n)}var fb=Object.getOwnPropertySymbols,Tc=fb?function(e){for(var n=[];e;)ba(n,Ea(e)),e=wa(e);return n}:Ac;function pb(e,n){return Do(e,Tc(e),n)}function Pc(e,n,o){var r=n(e);return Bt(e)?r:ba(r,o(e))}function Na(e){return Pc(e,ma,Ea)}function Oc(e){return Pc(e,ga,Tc)}var xa=On(Lt,"DataView"),Sa=On(Lt,"Promise"),va=On(Lt,"Set"),$c="[object Map]",mb="[object Object]",Bc="[object Promise]",Vc="[object Set]",Rc="[object WeakMap]",Dc="[object DataView]",gb=Pn(xa),hb=Pn(Uo),yb=Pn(Sa),_b=Pn(va),bb=Pn(ia),At=In;(xa&&At(new xa(new ArrayBuffer(1)))!=Dc||Uo&&At(new Uo)!=$c||Sa&&At(Sa.resolve())!=Bc||va&&At(new va)!=Vc||ia&&At(new ia)!=Rc)&&(At=function(e){var n=In(e),o=n==mb?e.constructor:void 0,r=o?Pn(o):"";if(r)switch(r){case gb:return Dc;case hb:return $c;case yb:return Bc;case _b:return Vc;case bb:return Rc}return n});var wb=Object.prototype,kb=wb.hasOwnProperty;function Cb(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&kb.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var Rr=Lt.Uint8Array;function Aa(e){var n=new e.constructor(e.byteLength);return new Rr(n).set(new Rr(e)),n}function Eb(e,n){var o=n?Aa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var Nb=/\w*$/;function xb(e){var n=new e.constructor(e.source,Nb.exec(e));return n.lastIndex=e.lastIndex,n}var Mc=vt?vt.prototype:void 0,Lc=Mc?Mc.valueOf:void 0;function Sb(e){return Lc?Object(Lc.call(e)):{}}function vb(e,n){var o=n?Aa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var Ab="[object Boolean]",Ib="[object Date]",Tb="[object Map]",Pb="[object Number]",Ob="[object RegExp]",$b="[object Set]",Bb="[object String]",Vb="[object Symbol]",Rb="[object ArrayBuffer]",Db="[object DataView]",Mb="[object Float32Array]",Lb="[object Float64Array]",Fb="[object Int8Array]",Ub="[object Int16Array]",Kb="[object Int32Array]",jb="[object Uint8Array]",Gb="[object Uint8ClampedArray]",qb="[object Uint16Array]",zb="[object Uint32Array]";function Hb(e,n,o){var r=e.constructor;switch(n){case Rb:return Aa(e);case Ab:case Ib:return new r(+e);case Db:return Eb(e,o);case Mb:case Lb:case Fb:case Ub:case Kb:case jb:case Gb:case qb:case zb:return vb(e,o);case Tb:return new r;case Pb:case Bb:return new r(e);case Ob:return xb(e);case $b:return new r;case Vb:return Sb(e)}}function Yb(e){return typeof e.constructor=="function"&&!Pr(e)?Oh(wa(e)):{}}var Wb="[object Map]";function Xb(e){return Ht(e)&&At(e)==Wb}var Fc=io&&io.isMap,Zb=Fc?ua(Fc):Xb,Jb="[object Set]";function Qb(e){return Ht(e)&&At(e)==Jb}var Uc=io&&io.isSet,ew=Uc?ua(Uc):Qb,tw=1,nw=2,ow=4,Kc="[object Arguments]",rw="[object Array]",iw="[object Boolean]",aw="[object Date]",lw="[object Error]",jc="[object Function]",sw="[object GeneratorFunction]",cw="[object Map]",dw="[object Number]",Gc="[object Object]",uw="[object RegExp]",fw="[object Set]",pw="[object String]",mw="[object Symbol]",gw="[object WeakMap]",hw="[object ArrayBuffer]",yw="[object DataView]",_w="[object Float32Array]",bw="[object Float64Array]",ww="[object Int8Array]",kw="[object Int16Array]",Cw="[object Int32Array]",Ew="[object Uint8Array]",Nw="[object Uint8ClampedArray]",xw="[object Uint16Array]",Sw="[object Uint32Array]",qe={};qe[Kc]=qe[rw]=qe[hw]=qe[yw]=qe[iw]=qe[aw]=qe[_w]=qe[bw]=qe[ww]=qe[kw]=qe[Cw]=qe[cw]=qe[dw]=qe[Gc]=qe[uw]=qe[fw]=qe[pw]=qe[mw]=qe[Ew]=qe[Nw]=qe[xw]=qe[Sw]=!0,qe[lw]=qe[jc]=qe[gw]=!1;function Ko(e,n,o,r,i,a){var l,s=n&tw,c=n&nw,d=n&ow;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!Tn(e))return e;var f=Bt(e);if(f){if(l=Cb(e),!s)return Bh(e,l)}else{var u=At(e),p=u==jc||u==sw;if(Mo(e))return lb(e,s);if(u==Gc||u==Kc||p&&!i){if(l=c||p?{}:Yb(e),!s)return c?pb(e,ib(l,e)):ub(e,rb(l,e))}else{if(!qe[u])return i?e:{};l=Hb(e,u,s)}}a||(a=new Xt);var m=a.get(e);if(m)return m;a.set(e,l),ew(e)?e.forEach(function(y){l.add(Ko(y,n,o,y,e,a))}):Zb(e)&&e.forEach(function(y,_){l.set(_,Ko(y,n,o,_,e,a))});var h=d?c?Oc:Na:c?ga:ma,g=f?void 0:h(e);return Kh(g||e,function(y,_){g&&(_=y,y=e[_]),sa(l,_,Ko(y,n,o,_,e,a))}),l}var vw=1,Aw=4;function so(e){return Ko(e,vw|Aw)}var Iw="__lodash_hash_undefined__";function Tw(e){return this.__data__.set(e,Iw),this}function Pw(e){return this.__data__.has(e)}function Dr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Wt;++n<o;)this.add(e[n])}Dr.prototype.add=Dr.prototype.push=Tw,Dr.prototype.has=Pw;function Ow(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 $w(e,n){return e.has(n)}var Bw=1,Vw=2;function qc(e,n,o,r,i,a){var l=o&Bw,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&Vw?new Dr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var h=e[u],g=n[u];if(r)var y=l?r(g,h,u,n,e,a):r(h,g,u,e,n,a);if(y!==void 0){if(y)continue;p=!1;break}if(m){if(!Ow(n,function(_,w){if(!$w(m,w)&&(h===_||i(h,_,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(h===g||i(h,g,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function Rw(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function Dw(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var Mw=1,Lw=2,Fw="[object Boolean]",Uw="[object Date]",Kw="[object Error]",jw="[object Map]",Gw="[object Number]",qw="[object RegExp]",zw="[object Set]",Hw="[object String]",Yw="[object Symbol]",Ww="[object ArrayBuffer]",Xw="[object DataView]",zc=vt?vt.prototype:void 0,Ia=zc?zc.valueOf:void 0;function Zw(e,n,o,r,i,a,l){switch(o){case Xw:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case Ww:return!(e.byteLength!=n.byteLength||!a(new Rr(e),new Rr(n)));case Fw:case Uw:case Gw:return la(+e,+n);case Kw:return e.name==n.name&&e.message==n.message;case qw:case Hw:return e==n+"";case jw:var s=Rw;case zw:var c=r&Mw;if(s||(s=Dw),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=Lw,l.set(e,n);var f=qc(s(e),s(n),r,i,a,l);return l.delete(e),f;case Yw:if(Ia)return Ia.call(e)==Ia.call(n)}return!1}var Jw=1,Qw=Object.prototype,e0=Qw.hasOwnProperty;function t0(e,n,o,r,i,a){var l=o&Jw,s=Na(e),c=s.length,d=Na(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),h=a.get(n);if(m&&h)return m==n&&h==e;var g=!0;a.set(e,n),a.set(n,e);for(var y=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)){g=!1;break}y||(y=p=="constructor")}if(g&&!y){var E=e.constructor,N=n.constructor;E!=N&&"constructor"in e&&"constructor"in n&&!(typeof E=="function"&&E instanceof E&&typeof N=="function"&&N instanceof N)&&(g=!1)}return a.delete(e),a.delete(n),g}var n0=1,Hc="[object Arguments]",Yc="[object Array]",Mr="[object Object]",o0=Object.prototype,Wc=o0.hasOwnProperty;function r0(e,n,o,r,i,a){var l=Bt(e),s=Bt(n),c=l?Yc:At(e),d=s?Yc:At(n);c=c==Hc?Mr:c,d=d==Hc?Mr:d;var f=c==Mr,u=d==Mr,p=c==d;if(p&&Mo(e)){if(!Mo(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Xt),l||pa(e)?qc(e,n,o,r,i,a):Zw(e,n,c,o,r,i,a);if(!(o&n0)){var m=f&&Wc.call(e,"__wrapped__"),h=u&&Wc.call(n,"__wrapped__");if(m||h){var g=m?e.value():e,y=h?n.value():n;return a||(a=new Xt),i(g,y,o,r,a)}}return p?(a||(a=new Xt),t0(e,n,o,r,i,a)):!1}function Xc(e,n,o,r,i){return e===n?!0:e==null||n==null||!Ht(e)&&!Ht(n)?e!==e&&n!==n:r0(e,n,o,r,Xc,i)}function i0(e,n){return e!=null&&n in Object(e)}function Zc(e,n,o){n=ao(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=Vr(n[r]);if(!(a=e!=null&&o(e,l)))break;e=e[l]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&ca(i)&&aa(l,i)&&(Bt(e)||Or(e)))}function a0(e,n){return e!=null&&Zc(e,n,i0)}function l0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}var s0=Object.prototype,c0=s0.hasOwnProperty;function d0(e,n){return e!=null&&c0.call(e,n)}function Jc(e,n){return e!=null&&Zc(e,n,d0)}function u0(e,n){return n.length<2?e:_a(e,hc(n,0,-1))}var f0="[object Map]",p0="[object Set]",m0=Object.prototype,g0=m0.hasOwnProperty;function Qc(e){if(e==null)return!0;if(da(e)&&(Bt(e)||typeof e=="string"||typeof e.splice=="function"||Mo(e)||pa(e)||Or(e)))return!e.length;var n=At(e);if(n==f0||n==p0)return!e.size;if(Pr(e))return!fc(e).length;for(var o in e)if(g0.call(e,o))return!1;return!0}function Zt(e,n){return Xc(e,n)}function ed(e,n){return n=ao(n,e),e=u0(e,n),e==null||delete e[Vr(l0(n))]}function h0(e){return x_(e)?void 0:e}var y0=1,_0=2,b0=4,Jt=mc(function(e,n){var o={};if(e==null)return o;var r=!1;n=Ws(n,function(a){return a=ao(a,e),r||(r=a.length>1),a}),Do(e,Oc(e),o),r&&(o=Ko(o,y0|_0|b0,h0));for(var i=n.length;i--;)ed(o,n[i]);return o});function td(e,n,o,r){if(!Tn(e))return e;n=ao(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=Vr(n[i]),d=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];d=void 0,d===void 0&&(d=Tn(f)?f:aa(n[i+1])?[]:{})}sa(s,c,d),s=s[c]}return e}function w0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=_a(e,l);o(s,l)&&td(a,ao(l,e),s)}return a}function k0(e,n){return w0(e,n,function(o,r){return a0(e,r)})}var Ta=mc(function(e,n){return e==null?{}:k0(e,n)});function nd(e,n,o){return e==null?e:td(e,n,o)}var C0=0;function Lr(e){var n=++C0;return ya(e)+n}function od(e,n){return e==null?!0:ed(e,n)}const E0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],Bn=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,E0.some(s=>Zt(e.confluent,s))&&(e.confluent=null)},N0={"config-message_by_lua_functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Bn((n=e.config)==null?void 0:n.schema_registry)}},x0={"config-message_by_lua_functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Bn((n=e.config)==null?void 0:n.schema_registry)}},S0={"config-message_by_lua_functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Bn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Bn(i==null?void 0:i.schema_registry)})}},v0={"config-message_by_lua_functions":{...Me,inputAttributes:{...Me.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Bn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Bn(i==null?void 0:i.schema_registry)})}},A0={shamefullyTransformPayload:({payload:e})=>{var n;Bn((n=e.config)==null?void 0:n.schema_registry)}},I0={"config-static_tags":{...vr,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"}]}}}},T0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function Pa(e,n){const o=T0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Oa=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),fn={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},rd=Symbol("TOASTER_PROVIDER");function id(){return t.inject(Oa,[])}function P0(e){t.provide(Oa,e)}const O0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},ad=(e,n)=>(e.order??0)-(n.order??0),ld=(e,n)=>O0(e,n)||ad(e,n)||e.model.localeCompare(n.model),Ke={useI18n:De,usePluginMetaData:Bg,usePluginHelpers:$s,useSchemas:e=>{const{capitalize:n}=ye.useStringHelpers(),{convertToDotNotation:o}=$s(),{i18n:{t:r}}=De(),i=id(),a={"application-registration":{overwriteDefault:!0,formSchema:{...Fg}},datadog:{...Ug},"exit-transformer":{...Kg},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...th},"statsd-advanced":{...nh},"route-by-header":{...Zg},"ai-prompt-decorator":{...Vg},"ai-prompt-template":{...Rg},"ai-proxy-advanced":{...Dg},"ai-rag-injector":{...Mg},"ai-llm-as-judge":{...Lg},"vault-auth":{...rh},"oas-validation":{...zg},mocking:{...qg},"rate-limiting":{...Ar},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Ar["config-consumer_groups"]}:{...Ar},"graphql-rate-limiting-advanced":{...jg},"injection-protection":{...Gg},"response-ratelimiting":{...Ar},"pre-function":{...Gs},"post-function":{...Gs},"request-transformer-advanced":{...Wg},"response-transformer":{...qs},"response-transformer-advanced":{...Xg},zipkin:{...I0},"upstream-oauth":{...oh},saml:{...Jg},"kafka-upstream":{...N0},"solace-consume":{...Qg},"solace-upstream":{...eh},"key-auth":xg(e),"key-auth-enc":Pg(e),confluent:{...x0},"confluent-consume":{...S0},"kafka-consume":{...v0},"kafka-log":{...A0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,x,P,v)=>{let T={};(x||C)&&(T=x||(C.fields?C.fields:C));const O=l().concat(C.blacklist?C.blacklist:[]),k=Object.keys(T).filter(U=>!O.includes(U)),F=k.indexOf("comparator");F>-1&&k.splice(F,1);let S={fields:[]};const M={};k.forEach(U=>{d(T[U],U,T,M,S,P)});const D=M.name,oe=St[D],ie=[],L=U=>{const I=["cluster-cache"];for(const V of I)if(U.model.includes(V))return!1;return new RegExp("(?<=-redis-).*").test(U.model)};if(S._supported_redis_partial_type=C._supported_redis_partial_type,S._redis_partial_path=C._redis_partial_path,Ue.getSharedFormName(D)||Pa(D,i)||oe!=null&&oe.useLegacyForm||e!=null&&e.credential||v==="freeform"){if(oe!=null&&oe.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const U of S.fields)if(L(U)){ie.push(U);continue}S.fields=S.fields.filter(U=>!L(U)),ie.length&&S.fields.push({id:"_redis",fields:ie,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}S.fields.sort((U,I)=>(U.order=U.order||0,I.order=I.order||0,U.order-I.order))}else{const U=[],I=[],V=[],H=[],te={};if(oe!=null&&oe.fieldRules){const se=[...oe.fieldRules.atLeastOneOf??[],...oe.fieldRules.onlyOneOf??[],...oe.fieldRules.mutuallyRequired??[]];if(oe.fieldRules.onlyOneOfMutuallyRequired)for(const ue of oe.fieldRules.onlyOneOfMutuallyRequired)se.push(...ue);for(const ue of se)for(const ge of ue)te[ge.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const se of S.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&L(se)){H.push(se);continue}if(se.pinned){U.push(se);continue}if(se.required||te[se.model]!==void 0){te[se.model]===!1&&(te[se.model]=!0),I.push(se);continue}V.push(se)}H.length&&V.push({id:"_redis",fields:H,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const W=Object.entries(te).filter(([,se])=>!se).map(([se])=>se.replace(/-/g,".").replace(/_/g,"-"));W.length>0&&console.warn(`Unknown checked fields for plugin ${D}: ${W.join(", ")}`);const j=[];U.length>0&&j.push({fields:U.sort(ad)}),(I.length>0||V.length>0)&&j.push({fields:I.sort(ld),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:V.sort(ld),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"}}),S={groups:j}}return{schema:S,model:M,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",d=(C,x,P,v,T,O)=>{const k=c(C);return v[x]=k?C.default:null,C.id=x,C.model=x,C.fields&&C.type==="record"?u(C,x,P,v,T,O):(P[x]=C,E(C,v),O&&O[x]&&f(P[x],O[x]),T.fields.push(C)),P},f=(C,x)=>(x&&(Object.assign(C,x),x.label&&(C.label=x.label)),C),u=(C,x,P,v,T,O)=>{C.fields.forEach(k=>{Object.keys(k).forEach(F=>{const S=k[F];P=d(S,x+"-"+F,P,v,T,O)})})},p=(C,x)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const P=e==null?void 0:e.entityId;x[C.model]=P?{id:P}:null},m=C=>{C.type="input",C.inputType="number",C.between&&C.between.length===2&&(C.min=C.between[0],C.max=C.between[1])},h=C=>{Object.prototype.hasOwnProperty.call(C,"one_of")?(C.type="select",C.values=C.one_of,C.selectOptions={hideNoneSelectedText:!0}):(C.type="input",C.inputType="text")},g=C=>{C.type="checkbox",C.default=!0,C.required=!1},y=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:x}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Me,model:C.model,valueArrayType:x==="integer"?"number":x||"string",inputAttributes:{...Me.inputAttributes,type:x==="integer"?"number":"text",inputMode:x==="integer"?"numeric":"text"}}]}}]}}else C.values.fields&&(C.schema={fields:[{type:"object",model:"object",schema:{fields:C.values.fields.map(x=>{const P=Object.keys(x)[0];return{model:P,type:"input",label:n(P),placeholder:P,inputType:x[P].type}})}}]})},_=C=>C.fields.reduce((x,P)=>(P.fields&&P.fields.forEach(v=>{x[v.model]=v}),P.model&&(x[P.model]=P),x),{}),w=(C,x)=>{if(!Ue.customFields.includes(C.model))return;const P=_(C);Ue.customFields.forEach(v=>{Object.keys(P).forEach(T=>{const O=c(P[T]);x[T]=O?P[T].default:null}),delete x[v]})},b=(C,x)=>C.inputType==="hidden"?"":o(n(C.label||x.replace(/_/g," "))),E=(C,x)=>{switch(w(C,x),C.type){case"foreign":p(C,x);break;case"number":m(C),C.attributes={step:"any"};break;case"integer":m(C);break;case"string":h(C);break;case"boolean":g(C);break;case"map":y(C);break}C.inputType==="foreign"&&p(C,x),C.label=b(C,C.model)};function N(C,x){if(x==null||x.type&&x.type!=="record"||typeof C!="object"||C==null)return C;const P={};for(const v of x.fields){const T=Object.keys(v)[0],O=v[T];O.type==="record"?P[T]=N(C[T],O):O.type==="array"&&Array.isArray(C[T])&&O.elements.type==="record"?P[T]=C[T].map(k=>N(k,O.elements)):P[T]=C[T]}return P}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:oo,pruneRecord:N}},useExperimentalFreeForms:id,useProvideExperimentalFreeForms:P0},ct="/v2/control-planes/{controlPlaneId}/core-entities",ht="/{workspace}",Xe={list:{konnect:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},kongManager:{all:`${ht}/plugins`,forEntity:`${ht}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ct}/v1/available-plugins`,streamingCustomPlugins:`${ct}/custom-plugins`,schemaCustomPluginItem:`${ct}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ct}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${ht}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ct}/plugins`,forEntity:`${ct}/{entityType}/{entityId}/plugins`},edit:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ct}/{resourceEndpoint}`,edit:`${ct}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ct}/{entity}/{id}`,entityGetAll:`${ct}/{entity}`,entityPeek:`${ct}/{entity}?size={amount}`},kongManager:{create:{all:`${ht}/plugins`,forEntity:`${ht}/{entityType}/{entityId}/plugins`},edit:{all:`${ht}/plugins/{id}`,forEntity:`${ht}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${ht}/schemas/plugins/{plugin}`,credential:{create:`${ht}/{resourceEndpoint}`,edit:`${ht}/{resourceEndpoint}/{id}`},credentialSchema:`${ht}/schemas/{plugin}`,entityGetOne:`${ht}/{entity}/{id}`,entityGetAll:`${ht}/{entity}`}},item:{konnect:{all:`${ct}/plugins/{id}`,forEntity:`${ct}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${ht}/plugins/{id}`,forEntity:`${ht}/{entityType}/{entityId}/plugins/{id}`}}},$0={key:0},B0=Ae(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Ke.usePluginHelpers(),{i18n:{t:r}}=Ke.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(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",$0,[(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 $a(e){return e.map(n=>({value:n,label:`${n}`}))}const Ba="*",co="$",Va=".";function Je(...e){return e.join(Va)}function Ra(...e){return Je(co,...e)}function sd(e){return e.startsWith(Je(co,""))}function Qt(e){return e.split(Va).filter(n=>n!=="")}function jo(e){const n=Qt(e);return n[n.length-1]}function V0(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 R0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}function cd(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 dd(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 h=0;h<p;h++){const g=m[h];if(o.has(g)&&!i.has(g))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:h}of u){const g=n[m];for(let y=h+1;y<g.length;y++){const _=g[y];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}function ud(e,n,o){return e.filter(r=>{const i=Object.keys(r)[0],a=n[i];if(!a)return!0;const[l,s]=a,c=o(l);return Zt(c,s)})}const[D0,M0]=je.createInjectionState(function(n){const{schema:o,propsData:r,onChange:i,propsRenderRules:a,propsConfig:l}=n,s=U0(o),c=new Map,d=t.reactive({}),f=t.toRef(()=>l??{}),u=t.useSlots();t.provide(Da,Jt(u,"default",Vn));const{useCurrentRules:p,createComputedRules:m}=Y0(),h=p({fieldPath:co,rules:a,parentValue:d,getSchema:s.getSchema,getDefault:s.getDefault});function g(w){Object.keys(d).forEach(b=>{delete d[b]}),Object.assign(d,w)}function y(w){let b;!w||!_(t.toValue(w))?b=s.getDefault():b=so(t.toValue(w)),Ir(f.value.prepareFormData)?g(f.value.prepareFormData(b)):g(b)}function _(w){return Ir(f.value.hasValue)?f.value.hasValue(w):!!w}return t.watch(d,w=>{i==null||i(t.toValue(w))},{deep:!0}),t.watch(()=>r==null?void 0:r.value,w=>{y(w)},{deep:!0,immediate:!0}),{formData:d,schema:o,config:f,fieldRendererRegistry:c,resetFormData:g,useCurrentRenderRules:p,rootRenderRules:h,createComputedRenderRules:m,...s}}),fd=Symbol("free-form-field-path"),Da=Symbol("free-form-field-renderer-slots"),pd=Symbol("free-form-field-reset-label-path-setting"),Vn="free-form-field-renderers-slot",L0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function F0(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,Ma(r,n)):e.type==="array"&&e.elements&&Object.assign(o,La(e,n)),o}function Ma(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?Je(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=Ma(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=La(a,l);Object.assign(o,s)}}return o}function La(e,n=""){const o={};if(e.elements){const r=e.elements,i=Je(n,Ba);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=Ma(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=La(r,i);Object.assign(o,a)}}return o}function Fr(e){const n=Qt(e).map(o=>/^\d+$/.test(o)?Ba:o);return Je(...n)}function U0(e){const n=t.toValue(e),o=t.computed(()=>n?F0(n):{});function r(u){var p;return u==null?n:(p=o.value)==null?void 0:p[Fr(u)]}function i(u,p=!1){const m=r(u);return m?m.default!==void 0?m.default:p||m.required?m.type==="record"?a(m,u):m.type==="array"?[]:null:null:null}function a(u,p){const m={};if(Array.isArray(u.fields))for(const h of u.fields){const g=Object.keys(h)[0],y=p?`${p}.${g}`:g,_=i(y,!1);_!==void 0&&(m[g]=_)}return m}function l(u){return u?i(u,!0):a(r(),"")}function s(u){const p=r(u),m=p!=null&&p.description?Nr.marked.parse(p.description,{async:!1}):void 0;return{...L0,"data-testid":`ff-label-${u}`,info:m}}function c(u){var m;const p=r(u);return $a((p==null?void 0:p.one_of)||((m=p.elements)==null?void 0:m.one_of)||[])}function d(u){const p=r(u),m=p==null?void 0:p.default;let h=null;if((p==null?void 0:p.type)==="foreign"&&(m!=null&&m.id))h=m.id;else{if(m==null||typeof m=="object"||m==="")return null;if(Array.isArray(m)){if(m.length===0)return null;h=m.join(", ")}else h=m.toString()}return`Default: ${h}`}function f(){return o.value}return{getSchemaMap:f,getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function Ge(){const e=M0();if(!e)throw new Error("useFormShared() called without provider.");return e}const md=e=>{const n=t.inject(fd,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!sd(r)&&n.value&&(i=Je(n.value,r)),sd(r)&&(i=i.slice(Ra("").length)),i});return t.provide(fd,o),o},K0=e=>{const{getSchema:n,fieldRendererRegistry:o}=Ge(),{default:r,...i}=t.useSlots(),a=t.inject(Da),l=t.computed(()=>{const c=t.toValue(a),d=Object.keys(i).filter(f=>f!==Vn&&f!=="item").reduce((f,u)=>{const p=Fr(Je(t.toValue(e),u));return{...f,[p]:i[u]}},{});return c?{...c,...d}:d});t.provide(Da,l);const s=t.toValue(e);return t.computed(()=>{if(r)return;const c=l.value[Fr(t.toValue(e))];if(c)return c;for(const[d,f]of o)if(d({path:s,schema:n(s)}))return f})},j0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP",api:"API",uri:"URI"};function G0(e){return j0[e.toLocaleLowerCase()]??e}function q0(e,n){const o=t.inject(pd,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?Je(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?Je(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(pd,l),a}function gd(e){return Qt(e).map(o=>o.split("_").map(G0).join(" ")).map(Z_).join(" › ")}function z0(e,n){const o=t.toValue(e),r=jo(o),{config:i,getSchema:a}=Ge(),l=q0(r,n),s=hd(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"?"":gd(c);return i.value.transformLabel?i.value.transformLabel(u,o):u})}function It(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ge(),a=t.toValue(e),l=t.toValue(n),s=z0(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 H0(e){var r;const n=Qt(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?Je(o.parent.path,i):i,o={parent:o}}return o}function hd(e){return t.computed(()=>H0(t.toValue(e)))}function yd(e){const{formData:n}=Ge(),o=md(e);return{value:t.computed({get:()=>lo(n,Qt(o.value)),set:i=>nd(n,Qt(o.value),i)})}}function yt(e){const{getSchema:n}=Ge(),o=md(e),r=K0(o),{value:i}=yd(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:hd(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function Go(e){const{getSchema:n}=Ge(),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 _d(e,n){const o=new WeakMap,r=new Map;function i(){return Lr(`${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 Y0(){const e=t.ref({});function n(u,p){const m=u.map(g=>Qt(g).length),h=m[0];if(!m.every(g=>g===h)){const g=u.map((y,_)=>` - '${y}' is at level ${m[_]}`).join(`
14
+ `);throw new Error(`${p}: Fields must be at the same level. Found mixed levels:
15
+ ${g}`)}}function o(u){for(const[p,m]of Object.entries(u)){if(!m.bundles)continue;for(const g of m.bundles)if(new Set(g).size!==g.length){const _=g.filter((w,b)=>g.indexOf(w)!==b);throw new Error(`Self-cycle detected in bundle: field '${_[0]}' appears multiple times in [${g.join(", ")}]`)}const h=new Map;for(const g of m.bundles)for(let y=1;y<g.length;y++){const _=g[y],w=g[y-1];h.has(_)||h.set(_,new Set),h.get(_).add(w)}for(const g of h.keys()){let y=function(b){if(w.includes(b)){const N=[...w,b].join(" -> ");throw new Error(`Circular bundle detected in path '${p}':
16
+ ${N}`)}if(_.has(b))return;_.add(b),w.push(b);const E=h.get(b);if(E)for(const N of E)y(N);w.pop()};const _=new Set,w=[];y(g)}}}function r(u){for(const[p,m]of Object.entries(u))if(m.dependencies)for(const h of Object.keys(m.dependencies)){let g=function(w){if(_.includes(w)){const E=[..._,w].join(" -> ");throw new Error(`Circular dependency detected in path '${p}':
17
+ ${E}`)}if(y.has(w))return;y.add(w),_.push(w);const b=m.dependencies[w];if(b){const[E]=b;m.dependencies[E]&&g(E)}_.pop()};const y=new Set,_=[];g(h)}}function i(u,p){const m=u.map(g=>p?Je(p,g):g),h=Qt(m[0]);return h.pop(),Je(...h)}function a(u,p){if(!p)return u;const m=`${p}${Va}`;return u.startsWith(m)?u.slice(m.length):u}function l(u){const p=Qt(u);return p.pop(),Je(...p)}const s=t.computed(()=>{const u={};for(const[p,m]of Object.entries(e.value)){const h=p===co?"":p;if(m.bundles)for(const g of m.bundles){if(g.length<2)throw new Error(`Bundle must contain at least 2 fields. Found ${g.length} field(s) in bundle: [${g.join(", ")}]`);const y=g.map(b=>h?Je(h,b):b);n(y,`Bundle [${g.join(", ")}]`);const _=i(g,h)||co;u[_]||(u[_]={}),u[_].bundles||(u[_].bundles=[]);const w=y.map(b=>a(b,_));u[_].bundles.push(w)}if(m.dependencies)for(const[g,[y,_]]of Object.entries(m.dependencies)){const w=h?Je(h,g):g,b=h?Je(h,y):y;n([w,b],`Dependency '${g}' -> '${y}'`);const E=l(w)||co;u[E]||(u[E]={}),u[E].dependencies||(u[E].dependencies={});const N=a(w,E),C=a(b,E);u[E].dependencies[N]=[C,_]}}return o(u),r(u),u});function c(u){if(!u)return s.value;const p=Fr(u);return s.value[p]}function d(u){let p=!1;return t.computed(()=>{if(p)return;const m=t.toValue(u);try{return c(m)}catch(h){p=!0,console.error(`Failed to get render rules for path: \`${m}\`,`,h instanceof Error?h.message:"");return}})}function f(u){const{fieldPath:p,rules:m,parentValue:h,omittedFields:g,getSchema:y,getDefault:_}=u;t.watch([()=>t.toValue(m),()=>t.toValue(p)],([N,C],[,x])=>{N?e.value[C]=N:delete e.value[C],x&&x!==C&&delete e.value[x]},{immediate:!0,deep:!0});const w=d(p);let b=!1;const E=[];return t.watch([()=>t.toValue(h),()=>{var N;return(N=t.toValue(w))==null?void 0:N.dependencies},()=>t.toValue(p),()=>t.toValue(g)],([N,C,x,P])=>{if(!(!C||!N||b)&&(Object.entries(C).forEach(([v,[T,O]])=>{if(P!=null&&P.includes(v))return;const k=lo(N,T);if(Zt(k,O))return;const F=x?Je(x,v):v,S=y(F),M=lo(N,v);let D,oe=!1;S!=null&&S.required?(D=_(F),oe=!Zt(M,D)):(D=null,oe=M!=null),oe&&E.push({fieldName:v,targetValue:D})}),E.length>0)){for(b=!0;E.length>0;){const{fieldName:v,targetValue:T}=E.pop();nd(N,v,T)}t.nextTick(()=>{b=!1})}},{deep:!0,immediate:!0}),t.onBeforeUnmount(()=>{const N=t.toValue(p);delete e.value[N]}),w}return{useCurrentRules:f,createComputedRules:d}}const W0="__request_callout_";function bd(){return Lr(W0)}const Rn=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?Be.KTextArea:Be.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}=Ge(),d=u=>{u!==s.value&&(s.value=u,c.value.updateOnChange||i("update:modelValue",u))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":e.modelValue,resizable:e.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,h)=>({name:h,fn:t.withCtx(g=>[t.renderSlot(u.$slots,h,t.normalizeProps(t.guardReactiveProps(g)))])}))]),1040,["character-limit","model-value","resizable"]))}}),X0=["innerHTML"],uo=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=De(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=yt(t.toRef(()=>e.name)),c=It(s.path,t.toRef({...i,...o})),d=l==null?void 0:l.value;function f(_){d!==void 0&&_===""&&_!==d?(l.value=null,a("update:modelValue",null)):(l.value=_.trim(),a("update:modelValue",_.trim()))}const u=t.computed(()=>{var _;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((_=s.schema)==null?void 0:_.value).encrypted}),p=t.inject(Ue.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var _;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((_=s.schema.value)!=null&&_.referenceable)}),h=t.computed(()=>({referenceable:m.value})),g=Go(s.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:jo(e.name)==="name");return(_,w)=>{var E;const b=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(b,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},_.$attrs)),[t.createVNode(Rn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":y.value,"data-autofocus":t.unref(g),"data-testid":`ff-${s.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.multiline&&e.error?e.errorMessage:e.help,"model-value":t.unref(l)??"",multiline:e.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(E=t.unref(c).labelAttributes)!=null&&E.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,X0)],!0)]),key:"0"}:void 0,e.multiline&&e.error?void 0:{name:"help",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"help",{},void 0,!0)]),key:"1"}]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(p)&&m.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(p)),{key:0,schema:h.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(b,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-8b9ee4c2"]]),Z0=["innerHTML"],Ur=Ae(t.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=yt(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=It(i.path,o);return(c,d)=>{var u;const f=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(Be.KCheckbox),t.mergeProps({key:1},t.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":t.unref(r)??!1,"onUpdate:modelValue":l}),t.createSlots({_:2},[(u=t.unref(s).labelAttributes)!=null&&u.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Z0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),wd=Ae(t.defineComponent({__name:"SlideTransition",setup(e){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),r=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(h=>[h,m.getPropertyValue(h)]))}function a(p){["overflow","transition",...n].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const h=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...h,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(t.openBlock(),t.createBlock(t.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),J0={class:"ff-entity-checks-list"},kd=Ae(t.defineComponent({__name:"EntityChecksAlert",props:{entityChecks:{},omittedFields:{}},setup(e){const{i18n:{t:n}}=Ke.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(gd).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",J0,[(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"]]),Q0=["data-testid"],ek=["data-testid"],tk=["data-testid"],nk=["innerHTML"],ok={class:"ff-object-field-actions"},rk=["data-testid"],kt=Ae(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{},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,...r}=yt(t.toRef(n,"name")),{getSchema:i,getDefault:a,useCurrentRenderRules:l}=Ge(),s=l({fieldPath:r.path,rules:t.toRef(n,"renderRules"),omittedFields:t.toRef(()=>e.omit),getDefault:a,getSchema:i,parentValue:o}),c=t.useModel(e,"added"),d=t.useModel(e,"expanded"),f=t.computed(()=>h.value&&(e.collapsible?d.value??e.defaultExpanded:!1)),u=t.computed(()=>{var w,b;if((w=r.ancestors)!=null&&w.value){const E=r.ancestors.value.parent;if(E!=null&&E.path)return((b=i(E.path))==null?void 0:b.type)==="array"}return!1}),p=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:u.value?"reset":"inherit"),m=It(r.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:p.value}))),h=t.computed(()=>m.value.required?!0:c.value??e.defaultAdded),g=t.computed(()=>e.asChild!==void 0?e.asChild:u.value),y=t.computed(()=>{var b,E;let w=r.schema.value.fields;return e.omit&&(w=w.filter(N=>!e.omit.includes(Object.keys(N)[0]))),(b=s.value)!=null&&b.dependencies&&(w=ud(w,s.value.dependencies,N=>lo(o.value,N))),e.fieldsOrder?cd(w,e.fieldsOrder):((E=s.value)!=null&&E.bundles&&(w=dd([...w],s.value.bundles)),w)});function _(){c.value=!c.value,c.value?o.value=a(r.path.value):o.value=null}return t.watch(h,w=>{e.collapsible&&(d.value=w)}),t.onBeforeMount(()=>{c.value=!!(o!=null&&o.value)}),(w,b)=>{var N;const E=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(w.$slots[t.unref(Vn)]))),r.error?(t.openBlock(),t.createBlock(E,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):g.value?(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},w.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(w.$slots,"default",{},()=>{var C;return[t.createVNode(kd,{"entity-checks":(C=r.schema.value)==null?void 0:C.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,x=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(x)[0],name:Object.keys(x)[0]},null,8,["name"]))),128))]},!0)],16,Q0)):(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!f.value}],"data-testid":`ff-object-${r.path.value}`},w.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Be.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(m),required:!1},{"tooltip-attributes":t.unref(m).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(m).label)+" ",1)]),_:2},[(N=t.unref(m).labelAttributes)!=null&&N.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(w.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(m).labelAttributes.info},null,8,nk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",ok,[e.collapsible&&h.value?(t.openBlock(),t.createBlock(t.unref(Be.KButton),{key:0,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${f.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${r.path.value}`,icon:"",onClick:b[0]||(b[0]=C=>d.value=!f.value)},{default:t.withCtx(()=>[h.value?(t.openBlock(),t.createBlock(t.unref(ve.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(m).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Be.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${h.value?"remove":"add"}`),"data-testid":`ff-object-${h.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[h.value?(t.openBlock(),t.createBlock(t.unref(ve.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(ve.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,tk),t.createVNode(wd,null,{default:t.withCtx(()=>[f.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[t.renderSlot(w.$slots,"default",{},()=>{var C;return[t.createVNode(kd,{"entity-checks":(C=r.schema.value)==null?void 0:C.entity_checks,"omitted-fields":e.omit},null,8,["entity-checks","omitted-fields"]),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,x=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(x)[0],name:Object.keys(x)[0]},null,8,["name"]))),128))]},!0)],8,rk)):t.createCommentVNode("",!0)]),_:3})],16,ek))],64)}}}),[["__scopeId","data-v-57e6beb7"]]),ik=["innerHTML"],Dn=Ae(t.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=yt(t.toRef(()=>e.name)),a=It(i.path,o),l=t.computed(()=>{var g;const p=(g=i.schema)==null?void 0:g.value;if(typeof p.gt=="number")return{min:p.type==="integer"?p.gt+1:p.gt};const[m,h]=p.between??[];return{min:o.min??m,max:o.max??h}}),s=n,c=r.value,d=t.computed(()=>(r==null?void 0:r.value)!=null&&Number.isFinite(r.value)?`${r.value}`:"");function f(p){c!==void 0&&p===""&&Number(p)!==c?(r.value=null,s("update:modelValue",null)):(r.value=p===""?null:Number(p),s("update:modelValue",p===""?null:Number(p)))}const u=Go(i.ancestors);return(p,m)=>{var g;const h=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(Rn,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(u),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(g=t.unref(a).labelAttributes)!=null&&g.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,ik)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-1a89f288"]]),ak=["innerHTML"],Tt=Ae(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},items:{},placeholder:{},multiple:{type:Boolean,default:()=>{}},modelValue:{},label:{},help:{},error:{type:Boolean},searchPlaceholder:{},kpopAttributes:{},dropdownMaxHeight:{},width:{},selectedRowCount:{},collapsedContext:{type:Boolean},filterFunction:{type:Function},autosuggest:{type:Boolean},enableItemCreation:{type:Boolean},loading:{type:Boolean},dropdownFooterText:{},dropdownFooterTextPosition:{},itemCreationValidator:{type:Function},enableFiltering:{type:Boolean},clearable:{type:Boolean},reuseItemTemplate:{type:Boolean}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=Ge(),{value:a,...l}=yt(t.toRef(()=>e.name)),s=It(l.path,r),c=t.computed(()=>e.items?e.items:l.path?i(l.path.value):[]),d=t.computed(()=>{var u;return e.multiple!==void 0?e.multiple:((u=l.schema.value)==null?void 0:u.type)==="set"}),f=t.computed(()=>d.value?Be.KMultiselect:Be.KSelect);return(u,p)=>{var h;const m=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(m,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(f),t.mergeProps({key:1},{...r,...t.unref(s)},{modelValue:t.unref(a),"onUpdate:modelValue":[p[0]||(p[0]=g=>t.isRef(a)?a.value=g:null),p[1]||(p[1]=g=>o("update",g))],class:"ff-enum-field",clearable:!t.unref(s).required,"data-testid":`ff-${l.path.value}`,items:c.value,"kpop-attributes":{"data-testid":`${l.path.value}-items`}}),t.createSlots({_:2},["tooltip"in u.$slots||(h=t.unref(s).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(u.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,ak)],!0)]),key:"0"}:void 0,u.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:g})=>[t.renderSlot(u.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(g)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-e67d00d5"]]);function Kr(e,n,o=!0){const{value:r,...i}=yt(t.toRef(e,"name")),a=It(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(d(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Lr("ff-kv-field-")}function c(y,_,w){const b=w.indexOf(y),E=w.indexOf(_);return b===-1&&E===-1?0:b===-1?1:E===-1?-1:b-E}function d(y,_){const w=Object.entries(y).map(([b,E])=>({id:s(),key:b,value:E}));return _&&w.sort((b,E)=>c(b.key,E.key,_)),w}function f(){const y={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(y),y}function u(y){const _=l.value.findIndex(w=>w.id===y);_!==-1&&l.value.splice(_,1)}function p(){l.value=d(e.initialValue||{},e.keyOrder)}function m(y){l.value=d(y,e.keyOrder)}let h=null;t.watch(l,y=>{if(!o)return;const _=y.length?Object.fromEntries(y.map(({key:w,value:b})=>[w,b]).filter(([w])=>w)):null;r.value=_,h=_,n("change",_)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,y=>{Zt(y,h)||g(y)},{deep:!0});function g(y){if(!y){l.value=[];return}const _=new Map;l.value.forEach(N=>{N.key&&_.set(N.key,N)});const w=[],b=Object.keys(y);(e.keyOrder?[...b].sort((N,C)=>c(N,C,e.keyOrder)):b).forEach(N=>{const C=y[N];if(_.has(N)){const x=_.get(N);x.value=C,w.push(x)}else w.push({id:s(),key:N,value:C})}),l.value=w}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const lk=["data-testid"],sk=["data-testid"],ck=["innerHTML"],dk=["data-testid"],uk=Ae(t.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=De(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=Kr(r,a),m=t.useTemplateRef("root");async function h(N,C="key"){var x;m.value&&(await t.nextTick(),(x=m.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function g(){s();const N=l.value.findIndex(({key:C})=>!C);h(N===-1?l.value.length-1:N)}function y(N){N===l.value.length-1&&s(),h(N+1)}const _=t.inject(Ue.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var N,C;return e.showVaultSecretPicker??!!((C=(N=p.schema.value)==null?void 0:N.values)!=null&&C.referenceable)}),b=t.computed(()=>({referenceable:w.value}));function E(N,C){l.value[N].value=C}return n({reset:d,setValue:f}),(N,C)=>{var T;const x=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(x,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${t.unref(p).path.value}`},[t.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${t.unref(p).path.value}`},[t.createVNode(P,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},[(T=t.unref(u).labelAttributes)!=null&&T.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,ck)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:g},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon))]),_:1},8,["data-testid"])],8,sk),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(O,k)=>(t.openBlock(),t.createElementBlock("div",{key:O.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${k}`},[t.createVNode(Rn,{modelValue:O.key,"onUpdate:modelValue":F=>O.key=F,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":k,"data-testid":`ff-key-${t.unref(p).path.value}.${k}`,placeholder:e.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(F=>h(k,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Rn,{modelValue:O.value,"onUpdate:modelValue":F=>O.value=F,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${k}`,"data-value-input":k,placeholder:e.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(F=>y(k),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(_)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:b.value,update:F=>E(k,F),value:O.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(_)?(t.openBlock(),t.createBlock(x,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${t.unref(p).path.value}`,message:t.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${k}`,icon:"",onClick:F=>t.unref(c)(O.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.TrashIcon))]),_:1},8,["data-testid","onClick"])],8,dk))),128))],8,lk))}}}),[["__scopeId","data-v-92e0893d"]]),fk=["data-testid"],pk=["innerHTML"],Fa=Ae(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=yt(t.toRef(()=>e.name)),s=It(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var g,y;return((y=(g=l.schema)==null?void 0:g.value)==null?void 0:y.len_min)&&l.schema.value.len_min>0}),d=t.ref("");function f(g){return g.map(y=>y.trim()).filter(Boolean).join(", ")}function u(g){return g.trim().split(",").map(y=>y.trim()).filter(Boolean)}function p(g){d.value=g;const y=u(g),_=!y.length&&c.value?null:y;a.value=_,i("update:modelValue",_)}const m=Go(l.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:jo(e.name)==="name");return t.watch(a,g=>{const y=g?f(g):"";f(u(d.value))!==y&&(d.value=y)},{immediate:!0}),(g,y)=>{var w;const _=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[t.createVNode(Rn,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(w=t.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,pk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,fk))}}}),[["__scopeId","data-v-a27f4ff1"]]),mk=["data-testid"],gk=["innerHTML"],hk=Ae(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{name:{},labelAttributes:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=yt(t.toRef(()=>e.name)),s=It(l.path,t.toRef({...r,...o})),c=t.ref("");function d(p){c.value=p;let m=p||null;try{const h=JSON.parse(p);h&&typeof h=="object"&&(m=h)}catch{}a.value=m,i("update:modelValue",m)}const f=Go(l.ancestors),u=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:jo(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);Zt(m,p)||(c.value=JSON.stringify(p,null,2))}catch{c.value=JSON.stringify(p,null,2)}return}c.value=p||""},{immediate:!0}),(p,m)=>{var g;const h=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${l.path.value}`},[t.createVNode(Rn,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":u.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":d}),t.createSlots({_:2},[(g=t.unref(s).labelAttributes)!=null&&g.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,gk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,mk))}}}),[["__scopeId","data-v-5749f722"]]),yk=["innerHTML"],_k=Ae(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{name:{},labelAttributes:{},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:{t:r}}=De(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,...s}=yt(t.toRef(()=>e.name));if(s.error)throw new Error(s.error.message);const c=It(s.path,t.toRef({...i,...o})),d=l.value?l.value.id:null,f=t.computed(()=>{var g;return c.value.placeholder?c.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((g=s.schema.value)==null?void 0:g.reference)??"entity"})}),u=t.ref(d??"");function p(g){d!==void 0&&g===""&&g!==d?(l.value=null,a("update:modelValue",null)):(l.value={id:g.trim()},a("update:modelValue",l.value))}const m=Go(s.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:jo(e.name)==="name");return(g,y)=>{var _;return t.openBlock(),t.createBlock(Rn,t.mergeProps(t.unref(c),{class:"ff-foreign-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${s.path.value}`,error:e.error,"error-message":e.errorMessage,help:e.help,"model-value":u.value,placeholder:f.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(_=t.unref(c).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,yk)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])}}}),[["__scopeId","data-v-b54c028e"]]),mt=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=yt(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?Tt:uo;case"boolean":return"one_of"in o.schema.value?Tt:Ur;case"number":case"integer":return"one_of"in o.schema.value?Tt:Dn;case"array":return qo;case"set":return R0(o.schema)?Fa:Tt;case"record":return kt;case"map":return uk;case"json":return hk;case"foreign":return _k;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(Vn)]))),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:Ra(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:Ra(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)}}}),bk=["data-testid"],wk=["data-testid"],kk=["innerHTML"],Ck=["data-testid"],Ek={class:"ff-array-field-item-content"},Nk=["data-index","data-testid"],qo=Ae(t.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:n}){var C;t.useCssVars(x=>({v3e1c9ee2:N.value}));const o=e,r=n,{i18n:{t:i}}=De(),{getDefault:a,getSchema:l}=Ge(),{value:s,...c}=yt(t.toRef(o,"name")),d=It(c.path,t.toRef({...o,...t.useAttrs()})),f=t.computed(()=>{if(!c.path)throw new Error("Field path is required for sub-schema retrieval");const x=l(c.path.value);if(!x)throw new Error(`Schema not found for path: ${c.path.value}`);return x.elements}),u=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=_d("ff-array-field",u),m=t.computed(()=>o.appearance==="card"?Be.KCard:"div");function h(x,P){return typeof o.itemLabel=="function"?o.itemLabel(x,P):o.itemLabel||d.value.label||`Item #${P}`}const g=t.computed(()=>u.value.map((x,P)=>({hash:`#${p(x,P)}`,title:""}))),y=t.ref((C=g.value[0])==null?void 0:C.hash),_=async()=>{var P;const x=a(Je(c.path.value,Ba));Array.isArray(s.value)||(s.value=[]),s.value.push(x),r("add"),o.appearance==="tabs"&&(await t.nextTick(),y.value=(P=g.value[g.value.length-1])==null?void 0:P.hash),await t.nextTick(),E(u.value.length+1)},w=async x=>{var P;Array.isArray(s.value)&&s.value.splice(x,1),r("remove",x),o.appearance==="tabs"&&(y.value=(P=g.value[Math.max(0,x-1)])==null?void 0:P.hash)},b=t.useTemplateRef("root");function E(x){var v;if(!b.value)return;const P=Math.max(0,Math.min(x,u.value.length-1));(v=b.value.querySelector(`[data-index="${P}"] [data-autofocus]`))==null||v.focus()}const N=t.computed(()=>{const{appearance:x,stickyTabs:P}=o;return x!=="tabs"||P==null||P===!1?null:typeof P=="number"?`${o.stickyTabs}px`:typeof P=="string"?P:"0"});return(x,P)=>{var F;const v=t.resolveComponent("KAlert"),T=t.resolveComponent("KLabel"),O=t.resolveComponent("KButton"),k=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(v,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:b,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${e.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":e.stickyTabs}]),"data-testid":`ff-array-${c.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${c.path.value}`},[t.createVNode(T,t.mergeProps({class:"ff-array-field-label"},t.unref(d),{"data-testid":`ff-label-${c.path.value}`,"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(F=t.unref(d).labelAttributes)!=null&&F.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(x.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,kk)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(O,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${c.path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,wk),u.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[e.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${c.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(S,M)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(S,M),class:"ff-array-field-item","data-index":M,"data-testid":`ff-array-item-${c.path.value}.${M}`},{default:t.withCtx(()=>[t.createElementVNode("div",Ek,[x.$slots.item?t.renderSlot(x.$slots,"item",{key:0,fieldName:String(M),index:M},void 0,!0):t.createCommentVNode("",!0),f.value.type==="array"&&f.value.elements.type==="string"?(t.openBlock(),t.createBlock(Fa,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(M)},null,8,["help","name"])):(t.openBlock(),t.createBlock(mt,{key:2,name:String(M)},null,8,["name"]))]),t.createVNode(O,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${M}`,icon:"",onClick:D=>w(M)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,Ck)):(t.openBlock(),t.createBlock(t.unref(Be.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(k,{modelValue:y.value,"onUpdate:modelValue":P[0]||(P[0]=S=>y.value=S),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:g.value},t.createSlots({_:2},[t.renderList(u.value,(S,M)=>({name:t.unref(p)(S,M),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":M,"data-testid":`ff-array-item-${c.path.value}.${M}`},[x.$slots.item?t.renderSlot(x.$slots,"item",{key:0,fieldName:String(M),index:M},void 0,!0):(t.openBlock(),t.createBlock(mt,{key:1,name:String(M)},null,8,["name"]))],8,Nk)])})),t.renderList(u.value,(S,M)=>({name:`${t.unref(p)(S,M)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h(S,M))+" ",1),t.createVNode(O,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${M}`,icon:"",onClick:t.withModifiers(D=>w(M),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,bk))}}}),[["__scopeId","data-v-3edd064c"]]),zo=Symbol(),xk=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Ge(),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(kt,{name:e.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(Tt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(kt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(Tt,t.mergeProps(d,{items:t.unref($a)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),Sk=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Ge();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[zo]=bd())}return(r,i)=>(t.openBlock(),t.createBlock(qo,{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(xk,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),jr=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),{fieldRendererRegistry:r}=Ge();return o&&r.set(n.match,o),(i,a)=>null}}),_t=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,resetFormData:s,rootRenderRules:c}=D0({schema:e.schema,propsData:t.computed(()=>e.data),propsConfig:e.config,propsRenderRules:t.toRef(()=>e.renderRules),onChange:f=>r("change",f)}),d=t.computed(()=>{var p,m;const{fields:f}=a();let u=[...f];return(p=c.value)!=null&&p.dependencies&&(u=ud(u,c.value.dependencies,h=>lo(l,h))),e.fieldsOrder?cd(u,e.fieldsOrder):((m=c.value)!=null&&m.bundles&&(u=dd([...u],c.value.bundles)),u)});return n({getInnerData:()=>t.toRaw(l),setInnerData:f=>s(f)}),(f,u)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Vn)]))),t.renderSlot(f.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,p=>(t.openBlock(),t.createBlock(mt,{key:Object.keys(p)[0],name:Object.keys(p)[0],onGlobalAction:u[0]||(u[0]=(m,h)=>r("globalAction",m,h))},null,8,["name"]))),128))])]),_:3}))}}),vk={class:"ff-advanced-fields"},Gr=Ae(t.defineComponent({__name:"AdvancedFields",props:{hideGeneralFields:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",it),{getSchema:o}=Ge(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Be.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",vk,[e.hideGeneralFields?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(mt,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(mt,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Fa,{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"]]),Ak=Ae(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=De();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=so(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(h=>{h.request.body.custom=h.request.body.custom??{},h[zo]=bd()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(g=>p[g])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=so(d);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const u=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[zo]:h,depends_on:g,...y}=m;return{depends_on:g.map(_=>u[_]).filter(_=>_!=null),...y}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(_t,{class:"rc-config-form",config:r,data:e.data,schema:e.schema,tag:"div",onChange:c},{[t.unref(Vn)]:t.withCtx(()=>[t.createVNode(jr,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(uo,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(jr,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(qo,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(kt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Sk),t.createVNode(kt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(kt,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(kt,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(Gr)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),Ik={class:"ff-form-pinned-fields"},Tk={class:"ff-form-config-form"},Ua=Ae(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Ze.createI18n("en-us",it),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 Ta(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",Ik,[t.createVNode(t.unref(Ue.VueFormGenerator),{model:e.formModel,options:e.formOptions,schema:t.unref(a),onModelUpdated:e.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Be.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",Tk,[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"]]),Pk=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(Ue.AUTOFILL_SLOT,o==null?void 0:o[Ue.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ua,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Ak,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Ok={key:1},$k=["innerHTML"],Bk={class:"horizontal-container"},Cd=Ae(t.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Ge(),a=yt(t.toRef(()=>e.name)),l=It(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,f)=>{var m;const u=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",Ok,[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,$k)]),key:"0"}:void 0]),1040),t.createElementVNode("div",Bk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(t.unref(Be.KRadio),{key:h.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=g=>t.unref(a).value.value=g),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),Vk={class:"sp-form-request-limits-subtitle"},Rk={class:"sp-form-request-limits-content"},Dk={class:"sp-form-window-type"},Mk={class:"sp-form-request-limits-items"},Lk={class:"sp-form-request-limits-row"},Fk=["id"],Uk={class:"sp-form-request-limits-actions"},Kk={key:0,class:"sp-form-request-limits-examples"},jk={class:"sp-form-request-limits-examples-badges"},Ka="config.window_type",Gk=Ae(t.defineComponent({__name:"RequestLimitsForm",setup(e){var y;const{t:n}=Ze.createI18n("en-us",it),{formData:o,getSelectItems:r,getSchema:i}=Ge(),a=t.computed(()=>{var w,b;const _=(b=(w=o.config)==null?void 0:w.limit)==null?void 0:b.map((E,N)=>{var C,x;return{limit:E,windowSize:(x=(C=o.config)==null?void 0:C.window_size)==null?void 0:x[N]}});return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=_d("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=(y=i(Ka))==null?void 0:y.default,f=t.computed(()=>lo(o,Ka)),u=t.computed(()=>r(Ka).sort((_,w)=>_.value===d?-1:w.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},h=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),g=(_,w)=>{if(w===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=w}),o.config.limit=[_.config.limit],o.config.window_size=[_.config.window_size]};return(_,w)=>{const b=t.resolveComponent("KLabel"),E=t.resolveComponent("KButton"),N=t.resolveComponent("KBadge"),C=t.resolveComponent("KTooltip"),x=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(x,{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",Vk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Rk,[t.createElementVNode("div",Dk,[t.createVNode(Cd,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=P=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",Mk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(P,v)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(P,v)},[t.createVNode(b,{for:`sp-form-request-limits-item-${v}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:v+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",Lk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${v}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Dn,{name:`$.config.limit.${v}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(Dn,{name:`$.config.window_size.${v}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,Fk),t.createElementVNode("div",Uk,[t.createVNode(E,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(v)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.RemoveIcon))]),_:1},8,["disabled","onClick"]),t.createVNode(E,{appearance:"tertiary",onClick:()=>s(v)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),h.value.length>0?(t.openBlock(),t.createElementBlock("div",Kk,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",jk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(P,v)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${v}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(P.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(P.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(P.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(N,{appearance:p.value===`${f.value}-${v}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>g(P,`${f.value}-${v}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(P.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),qk={id:"sp-form-error-legend",class:"sp-form-error-inputs"},zk=Ae(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Ze.createI18n("en-us",it);return(o,r)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",qk,[t.createVNode(Dn,{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(uo,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Hk={class:"partial-config-card"},Yk={class:"config-card-row-label"},Wk={class:"label-text"},Xk=["data-testid"],Zk=["data-testid"],Jk={key:1},Qk=["data-testid"],eC=["data-testid"],tC=Ae(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Ze.createI18n("en-us",it),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=u=>u!=null,l=(u,p)=>a(p)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:s}=ye.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,g,y;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(h=r[u])!=null&&h.formatter?r[u].formatter(p):p,type:((g=r[u])==null?void 0:g.type)??l(u,p),order:((y=r[u])==null?void 0:y.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=V0(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",Hk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:h,label:g,value:y,type:_})=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"partial-config-card-row"},[t.createElementVNode("div",Yk,[t.createElementVNode("div",Wk,t.toDisplayString(g),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(y)?(t.openBlock(),t.createElementBlock("div",Jk,[_==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(y)},null,8,["text"])],8,Qk)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},t.toDisplayString(y),9,eC))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,Zk))],8,Xk)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),ja=Symbol("redis-partial-info"),nC={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"}},Ed=["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"];function Ga(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(rd,e);return o=>n(o)}const oC={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},rC={class:"shared-redis-config"},iC={class:"shared-redis-config-title"},aC={class:"redis-config-select","data-testid":"redis-config-select"},lC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Nd=Ae(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},setup(e){var x;const{t:n}=Ze.createI18n("en-us",it),o=e,r=Ga(),i=t.inject(ja),a=(i==null?void 0:i.isEditing)||!1,l=t.computed(()=>{var P;return o.redisPath?o.redisPath:(P=i==null?void 0:i.redisPath)!=null&&P.value?"$."+i.redisPath.value:"$.config.redis"}),s=o.redisType||((x=i==null?void 0:i.redisType)==null?void 0:x.value),c=t.computed(()=>{var P;return!!((P=i==null?void 0:i.redisType)!=null&&P.value)}),d=t.ref(null),f=t.ref(!a),{getMessageFromError:u}=ye.useErrors(),p=t.ref(o.defaultRedisConfigItem),m=t.ref({}),h=t.ref(),{value:g}=yd("$.partials"),{value:y}=yt(l),_=t.inject(Ue.FORMS_CONFIG),w=t.ref(null),b=P=>{let v=`${_.apiBaseUrl}${nC[_.app].getOne}`;return _.app==="konnect"?v=v.replace(/{controlPlaneId}/gi,(_==null?void 0:_.controlPlaneId)||""):_.app==="kongManager"&&(v=v.replace(/\/{workspace}/gi,_!=null&&_.workspace?`/${_.workspace}`:"")),v=v.replace(/{id}/gi,String(P)),v},{axiosInstance:E}=ye.useAxios(_==null?void 0:_.axiosRequestConfig),N=()=>{f.value?(h.value&&(g.value=h.value,p.value=h.value[0].id,y.value=void 0),y!=null&&y.value&&(m.value=y.value)):(Object.keys(m.value).length&&(y.value=m.value),g!=null&&g.value&&(h.value=g.value),g.value=a?null:void 0)},C=async P=>{if(P){p.value=P,g.value=[{id:P}],h.value=[{id:P}],y.value=void 0;try{const v=await E.get(b(P));if(v.data.config){const T=Object.assign(v.data,v.data.config);delete T.config,d.value=T}}catch(v){console.error(v)}}};return t.watch(()=>f.value,()=>{N()}),t.onBeforeMount(()=>{var P;if(o.defaultRedisConfigItem||g!=null&&g.value){const v=o.defaultRedisConfigItem||((P=g==null?void 0:g.value)==null?void 0:P[0].id);C(v),f.value=!0}else y!=null&&y.value&&(m.value=y.value)}),(P,v)=>{const T=t.resolveComponent("KBadge"),O=t.resolveComponent("KRadio"),k=t.resolveComponent("KCard");return c.value?(t.openBlock(),t.createBlock(k,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(n)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",oC,[t.createVNode(O,{modelValue:f.value,"onUpdate:modelValue":v[0]||(v[0]=F=>f.value=F),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},{default:t.withCtx(()=>[t.createVNode(T,{appearance:"success"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),t.createVNode(O,{modelValue:f.value,"onUpdate:modelValue":v[1]||(v[1]=F=>f.value=F),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",rC,[t.createElementVNode("div",iC,t.toDisplayString(t.unref(n)("redis.shared_configuration.title")),1),t.createElementVNode("div",aC,[t.createVNode(t.unref(Ps.RedisConfigurationSelector),{"data-testid":"redis-config-select-trigger","model-value":p.value,"redis-type":t.unref(s),onErrorChange:v[2]||(v[2]=F=>w.value=F),onToast:t.unref(r),"onUpdate:modelValue":v[3]||(v[3]=F=>C(F))},null,8,["model-value","redis-type","onToast"])]),d.value?(t.openBlock(),t.createBlock(tC,{key:0,"config-fields":d.value},null,8,["config-fields"])):t.createCommentVNode("",!0),w.value?(t.openBlock(),t.createElementBlock("p",lC,t.toDisplayString(w.value?t.unref(u)(w.value):t.unref(n)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)],512),[[t.vShow,f.value]]),f.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(kt,t.mergeProps({key:0},o,{"as-child":"","fields-order":t.unref(Ed),name:l.value,"reset-label-path":"reset"}),null,16,["fields-order","name"]))]),_:1},8,["title"])):(t.openBlock(),t.createBlock(kt,t.mergeProps({key:1},o,{"fields-order":t.unref(Ed),"hide-required-asterisk":"",name:l.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-2ac03f3c"]]),sC=t.defineComponent({__name:"RedisField",setup(e){const{formData:n}=Ge();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(wd,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(Nd,{key:0})):t.createCommentVNode("",!0)]}),_:1}))}}),cC=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(_t,{config:r,data:e.data,schema:e.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(kt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Gk),t.createVNode(zk)]),_:1}),t.createVNode(Gr,null,{default:t.withCtx(()=>[t.createVNode(mt,{name:"config.dictionary_name"}),t.createVNode(mt,{name:"config.lock_dictionary_name"}),t.createVNode(mt,{name:"config.strategy"}),t.createVNode(sC),t.createVNode(mt,{name:"config.namespace"}),t.createVNode(mt,{name:"config.hide_client_headers"}),t.createVNode(mt,{name:"config.disable_penalty"}),t.createVNode(mt,{name:"config.retry_after_jitter_max"}),t.createVNode(mt,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),dC=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(Ue.AUTOFILL_SLOT,o==null?void 0:o[Ue.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ua,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(cC,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),qa=t.defineComponent({__name:"VFGField",props:{formOptions:{},vfgSchema:{}},setup(e){const n=Symbol("rawTagsString"),{formData:o,getSchema:r}=Ge(),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(Ue.VueFormGenerator),{model:i.value,options:e.formOptions,schema:e.vfgSchema,onModelUpdated:a},null,8,["model","options","schema"]))}}),uC={"data-testid":"ff-identity-realms-field"},fC=["innerHTML"],pC=t.defineComponent({__name:"FreeFormAdapter",props:{name:{},label:{},labelAttributes:{},required:{type:Boolean},placeholder:{},resetLabelPath:{}},setup(e){const n=e,{error:o,value:r,path:i}=yt(t.toRef(n,"name"));if(o)throw o;const a=It(t.toRef(n,"name"),n);return(l,s)=>{var d;const c=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",uC,[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,fC)])]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(Ms,{modelValue:t.unref(r),"onUpdate:modelValue":s[0]||(s[0]=f=>t.isRef(r)?r.value=f:null)},null,8,["modelValue"])])}}}),mC={class:"enabled"},gC={class:"scope"},hC={key:0,class:"scope-detail"},xd=Ae(t.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{default:"form"},formConfig:{},renderRules:{},pluginName:{}},setup(e){const{t:n}=Ze.createI18n("en-us",it),o=t.createPropsRestProxy(e,["editorMode"]),r=t.inject(ja),i=t.useSlots(),a=t.computed(()=>o.formConfig??{hasValue:v=>!!v&&Object.keys(v).length>0}),l=t.computed(()=>{var v,T;return(v=o.formSchema)!=null&&v.groups?o.formSchema.groups.reduce((O,k)=>{var M,D;const F=k.fields,S=(D=(M=k.collapsible)==null?void 0:M.nestedCollapsible)!=null&&D.fields?F.concat(k.collapsible.nestedCollapsible.fields):F;return O.concat(S)},[]):((T=o.formSchema)==null?void 0:T.fields)||[]}),s=t.computed(()=>({fields:l.value.filter(v=>v.model==="enabled")})),c=t.computed(()=>l.value.find(v=>v.type==="selectionGroup")),d=t.computed(()=>{var v;return(((v=c.value)==null?void 0:v.fields)||[]).map(({label:T,description:O})=>({label:T,description:O}))}),f=t.computed(()=>{var v,T;return(T=(v=c.value)==null?void 0:v.fields)==null?void 0:T[1]}),u=t.computed(()=>{const v=["instance_name","protocols","tags"];return{fields:l.value.filter(T=>v.includes(T.model))}}),p=["config"],m=t.computed(()=>{var O;const v={type:"record",fields:o.schema.fields.filter(k=>p.includes(Object.keys(k)[0]))};return[...s.value.fields,...((O=f.value)==null?void 0:O.fields)??[],...u.value.fields].forEach(k=>{if(k.type==="AutoSuggest")v.fields.push({[k.model.split("-")[0]]:{type:"foreign",reference:k.entity,description:k.help}});else if(k.model==="enabled")v.fields.push({[k.model]:{type:"boolean",default:!0}});else if(k.model==="instance_name")v.fields.push({[k.model]:{type:"string",description:k.help}});else if(k.model==="protocols")v.fields.push({[k.model]:{type:"set",elements:{type:"string",one_of:k.values.map(F=>F.value)},default:[...k.default]}});else if(k.model==="tags")v.fields.push({[k.model]:{type:"set",elements:{type:"string"}}});else throw new Error(`Unsupported VFG field type '${k.type}' for model '${k.model}'`)}),v}),h=t.computed(()=>{const v=["config","partials","__ui_data","enabled","protocols","instance_name","tags","consumer","consumer_group","route","service"];return Ta(o.model,v)}),g=t.computed(()=>{var v;return((v=f.value)==null?void 0:v.fields.map(T=>T.model.split("-")[0]))??[]}),y=t.ref(Ta(h.value,g.value)),_=t.ref(Object.values(y.value).some(P)),w=t.ref(!0),b=t.useTemplateRef("form");let E=!1;function N(){if(!b.value)return;const{getInnerData:v,setInnerData:T}=b.value,k={...v()};_.value?g.value.forEach(F=>{k[F]=y.value[F]??null}):g.value.forEach(F=>{k[F]=null}),E=!0,T(k),t.nextTick(()=>{E=!1})}function C(v){if(E||x(v),e.editorMode==="code"){const T=g.value.some(O=>P(v[O]));T!==_.value&&(_.value=T)}o.onFormChange(v)}function x(v){g.value.forEach(T=>{const O=v[T];Jc(O,"id")&&O.id!=null?y.value[T]=O:y.value[T]=null})}function P(v){return Jc(v,"id")&&v.id!=null}return(v,T)=>{const O=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(_t,{ref:"form",class:"ff-standard-layout",config:a.value,data:h.value,"render-rules":e.renderRules,schema:m.value,tag:"div",onChange:C},{[t.unref(Vn)]:t.withCtx(()=>[t.createVNode(jr,{match:({path:k})=>{var F,S;return k===((S=(F=t.unref(r))==null?void 0:F.redisPath)==null?void 0:S.value)}},{default:t.withCtx(()=>[t.createVNode(Nd)]),_:1},8,["match"]),t.createVNode(jr,{match:({path:k})=>e.pluginName==="key-auth"&&k==="config.identity_realms"},{default:t.withCtx(k=>[t.createVNode(pC,t.normalizeProps(t.guardReactiveProps(k)),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[e.editorMode==="form"?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(t.unref(ye.EntityFormBlock),{description:e.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:e.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",mC,[t.createVNode(qa,{"form-options":e.formOptions,"vfg-schema":s.value},null,8,["form-options","vfg-schema"])]),t.createElementVNode("div",gC,[t.createVNode(t.unref(Be.KRadio),t.mergeProps({modelValue:_.value,"onUpdate:modelValue":T[0]||(T[0]=k=>_.value=k),card:"","card-orientation":"horizontal"},d.value[0],{"selected-value":!1,"onUpdate:modelValue":N}),null,16,["modelValue"]),d.value[1]?(t.openBlock(),t.createBlock(t.unref(Be.KRadio),t.mergeProps({key:0,modelValue:_.value,"onUpdate:modelValue":T[1]||(T[1]=k=>_.value=k),card:"","card-orientation":"horizontal"},d.value[1],{"selected-value":!0,"onUpdate:modelValue":N}),null,16,["modelValue"])):t.createCommentVNode("",!0)]),_.value&&f.value?(t.openBlock(),t.createElementBlock("div",hC,[t.createVNode(qa,{"form-options":e.formOptions,"vfg-schema":f.value},null,8,["form-options","vfg-schema"])])):t.createCommentVNode("",!0),t.createVNode(O,{modelValue:w.value,"onUpdate:modelValue":T[2]||(T[2]=k=>w.value=k),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(qa,{"form-options":e.formOptions,"vfg-schema":u.value},null,8,["form-options","vfg-schema"])]),_:1},8,["modelValue"])]),_:2},[i["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,i["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,i["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ye.EntityFormBlock),{description:e.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:e.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(v.$slots,"default",{},void 0,!0)]),_:2},[i["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,i["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,i["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(v.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])],64)):t.renderSlot(v.$slots,"code-editor",{key:1},void 0,!0)]),_:2},1032,["config","data","render-rules","schema"])}}}),[["__scopeId","data-v-454d5f51"]]);/*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT */function Sd(e){return typeof e>"u"||e===null}function yC(e){return typeof e=="object"&&e!==null}function _C(e){return Array.isArray(e)?e:Sd(e)?[]:[e]}function bC(e,n){var o,r,i,a;if(n)for(a=Object.keys(n),o=0,r=a.length;o<r;o+=1)i=a[o],e[i]=n[i];return e}function wC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function kC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var CC=Sd,EC=yC,NC=_C,xC=wC,SC=kC,vC=bC,at={isNothing:CC,isObject:EC,toArray:NC,repeat:xC,isNegativeZero:SC,extend:vC};function vd(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
14
18
 
15
- `+e.mark.snippet),r+" "+o):r}function qo(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=Ed(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}qo.prototype=Object.create(Error.prototype),qo.prototype.constructor=qo,qo.prototype.toString=function(n){return this.name+": "+Ed(this,n)};var _t=qo;function Ga(e,n,o,r,i){var a="",l="",s=Math.floor(i/2)-1;return r-n>s&&(a=" ... ",n=r-s+a.length),o-r>s&&(l=" ...",o=r+s-l.length),{str:a+e.slice(n,o).replace(/\t/g,"→")+l,pos:r-n+a.length}}function ja(e,n){return it.repeat(" ",n-e.length)+e}function NC(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=Ga(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=it.repeat(" ",n.indent)+ja((e.line-c+1).toString(),f)+" | "+d.str+`
16
- `+s;for(d=Ga(e.buffer,r[l],i[l],e.position,u),s+=it.repeat(" ",n.indent)+ja((e.line+1).toString(),f)+" | "+d.str+`
17
- `,s+=it.repeat("-",n.indent+f+3+d.pos)+`^
18
- `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=Ga(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=it.repeat(" ",n.indent)+ja((e.line+c+1).toString(),f)+" | "+d.str+`
19
- `;return s.replace(/\n$/,"")}var xC=NC,SC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],vC=["scalar","sequence","mapping"];function AC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function IC(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(SC.indexOf(o)===-1)throw new _t('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=AC(n.styleAliases||null),vC.indexOf(this.kind)===-1)throw new _t('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var ct=IC;function Nd(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 TC(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},n,o;function r(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(n=0,o=arguments.length;n<o;n+=1)arguments[n].forEach(r);return e}function qa(e){return this.extend(e)}qa.prototype.extend=function(n){var o=[],r=[];if(n instanceof ct)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 _t("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof ct))throw new _t("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new _t("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 _t("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 ct))throw new _t("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(qa.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Nd(i,"implicit"),i.compiledExplicit=Nd(i,"explicit"),i.compiledTypeMap=TC(i.compiledImplicit,i.compiledExplicit),i};var xd=qa,Sd=new ct("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),vd=new ct("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Ad=new ct("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Id=new xd({explicit:[Sd,vd,Ad]});function PC(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function OC(){return null}function $C(e){return e===null}var Td=new ct("tag:yaml.org,2002:null",{kind:"scalar",resolve:PC,construct:OC,predicate:$C,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function BC(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 VC(e){return e==="true"||e==="True"||e==="TRUE"}function DC(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Pd=new ct("tag:yaml.org,2002:bool",{kind:"scalar",resolve:BC,construct:VC,predicate:DC,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 RC(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function MC(e){return 48<=e&&e<=55}function LC(e){return 48<=e&&e<=57}function FC(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(!RC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!MC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!LC(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function UC(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 KC(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!it.isNegativeZero(e)}var Od=new ct("tag:yaml.org,2002:int",{kind:"scalar",resolve:FC,construct:UC,predicate:KC,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"]}}),GC=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function jC(e){return!(e===null||!GC.test(e)||e[e.length-1]==="_")}function qC(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 zC=/^[-+]?[0-9]+e/;function HC(e,n){var o;if(isNaN(e))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(n){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(it.isNegativeZero(e))return"-0.0";return o=e.toString(10),zC.test(o)?o.replace("e",".e"):o}function YC(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||it.isNegativeZero(e))}var $d=new ct("tag:yaml.org,2002:float",{kind:"scalar",resolve:jC,construct:qC,predicate:YC,represent:HC,defaultStyle:"lowercase"}),Bd=Id.extend({implicit:[Td,Pd,Od,$d]}),Vd=Bd,Dd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Rd=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 WC(e){return e===null?!1:Dd.exec(e)!==null||Rd.exec(e)!==null}function XC(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=Dd.exec(e),n===null&&(n=Rd.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 ZC(e){return e.toISOString()}var Md=new ct("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:WC,construct:XC,instanceOf:Date,represent:ZC});function JC(e){return e==="<<"||e===null}var Ld=new ct("tag:yaml.org,2002:merge",{kind:"scalar",resolve:JC}),za=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
20
- \r`;function QC(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=za;for(o=0;o<i;o++)if(n=a.indexOf(e.charAt(o)),!(n>64)){if(n<0)return!1;r+=6}return r%8===0}function eE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=za,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 tE(e){var n="",o=0,r,i,a=e.length,l=za;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 nE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Fd=new ct("tag:yaml.org,2002:binary",{kind:"scalar",resolve:QC,construct:eE,predicate:nE,represent:tE}),oE=Object.prototype.hasOwnProperty,rE=Object.prototype.toString;function iE(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,rE.call(i)!=="[object Object]")return!1;for(a in i)if(oE.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 aE(e){return e!==null?e:[]}var Ud=new ct("tag:yaml.org,2002:omap",{kind:"sequence",resolve:iE,construct:aE}),lE=Object.prototype.toString;function sE(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],lE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function cE(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 Kd=new ct("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:sE,construct:cE}),dE=Object.prototype.hasOwnProperty;function uE(e){if(e===null)return!0;var n,o=e;for(n in o)if(dE.call(o,n)&&o[n]!==null)return!1;return!0}function fE(e){return e!==null?e:{}}var Gd=new ct("tag:yaml.org,2002:set",{kind:"mapping",resolve:uE,construct:fE}),Ha=Vd.extend({implicit:[Md,Ld],explicit:[Fd,Ud,Kd,Gd]}),un=Object.prototype.hasOwnProperty,Kr=1,jd=2,qd=3,Gr=4,Ya=1,pE=2,zd=3,mE=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,gE=/[\x85\u2028\u2029]/,hE=/[,\[\]\{\}]/,Hd=/^(?:!|!!|![a-z\-]+!)$/i,Yd=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Wd(e){return Object.prototype.toString.call(e)}function Ft(e){return e===10||e===13}function Dn(e){return e===9||e===32}function kt(e){return e===9||e===32||e===10||e===13}function co(e){return e===44||e===91||e===93||e===123||e===125}function yE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function _E(e){return e===120?2:e===117?4:e===85?8:0}function bE(e){return 48<=e&&e<=57?e-48:-1}function Xd(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
21
- `:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"…":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function wE(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function Zd(e,n,o){n==="__proto__"?Object.defineProperty(e,n,{configurable:!0,enumerable:!0,writable:!0,value:o}):e[n]=o}for(var Jd=new Array(256),Qd=new Array(256),uo=0;uo<256;uo++)Jd[uo]=Xd(uo)?1:0,Qd[uo]=Xd(uo);function kE(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||Ha,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 eu(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=xC(o),new _t(n,o)}function Pe(e,n){throw eu(e,n)}function jr(e,n){e.onWarning&&e.onWarning.call(null,eu(e,n))}var tu={YAML:function(n,o,r){var i,a,l;n.version!==null&&Pe(n,"duplication of %YAML directive"),r.length!==1&&Pe(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Pe(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Pe(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&jr(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Pe(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],Hd.test(i)||Pe(n,"ill-formed tag handle (first argument) of the TAG directive"),un.call(n.tagMap,i)&&Pe(n,'there is a previously declared suffix for "'+i+'" tag handle'),Yd.test(a)||Pe(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Pe(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function fn(e,n,o,r){var i,a,l,s;if(n<o){if(s=e.input.slice(n,o),r)for(i=0,a=s.length;i<a;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||Pe(e,"expected valid JSON character");else mE.test(s)&&Pe(e,"the stream contains non-printable characters");e.result+=s}}function nu(e,n,o,r){var i,a,l,s;for(it.isObject(o)||Pe(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)a=i[l],un.call(n,a)||(Zd(n,a,o[a]),r[a]=!0)}function fo(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])&&Pe(e,"nested arrays are not supported inside keys"),typeof i=="object"&&Wd(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&Wd(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)nu(e,n,a[d],o);else nu(e,n,a,o);else!e.json&&!un.call(o,i)&&un.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,Pe(e,"duplicated mapping key")),Zd(n,i,a),delete o[i];return n}function Wa(e){var n;n=e.input.charCodeAt(e.position),n===10?e.position++:n===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):Pe(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Je(e,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;Dn(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(Ft(i))for(Wa(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&&jr(e,"deficient indentation"),r}function qr(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||kt(o)))}function Xa(e,n){n===1?e.result+=" ":n>1&&(e.result+=it.repeat(`
22
- `,n-1))}function CE(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),kt(m)||co(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),kt(i)||o&&co(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),kt(i)||o&&co(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),kt(r))break}else{if(e.position===e.lineStart&&qr(e)||o&&co(m))break;if(Ft(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,Je(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&&(fn(e,a,l,!1),Xa(e,e.line-c),a=l=e.position,s=!1),Dn(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return fn(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function EE(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(fn(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 Ft(o)?(fn(e,r,i,!0),Xa(e,Je(e,!1,n)),r=i=e.position):e.position===e.lineStart&&qr(e)?Pe(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Pe(e,"unexpected end of the stream within a single quoted scalar")}function NE(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 fn(e,o,e.position,!0),e.position++,!0;if(s===92){if(fn(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),Ft(s))Je(e,!1,n);else if(s<256&&Jd[s])e.result+=Qd[s],e.position++;else if((l=_E(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=yE(s))>=0?a=(a<<4)+l:Pe(e,"expected hexadecimal character");e.result+=wE(a),e.position++}else Pe(e,"unknown escape sequence");o=r=e.position}else Ft(s)?(fn(e,o,r,!0),Xa(e,Je(e,!1,n)),o=r=e.position):e.position===e.lineStart&&qr(e)?Pe(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Pe(e,"unexpected end of the stream within a double quoted scalar")}function xE(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,h=Object.create(null),g,y,_,k;if(k=e.input.charCodeAt(e.position),k===91)f=93,m=!1,s=[];else if(k===123)f=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),k=e.input.charCodeAt(++e.position);k!==0;){if(Je(e,!0,n),k=e.input.charCodeAt(e.position),k===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?k===44&&Pe(e,"expected the node content, but found ','"):Pe(e,"missed comma between flow collection entries"),y=g=_=null,u=p=!1,k===63&&(d=e.input.charCodeAt(e.position+1),kt(d)&&(u=p=!0,e.position++,Je(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,po(e,n,Kr,!1,!0),y=e.tag,g=e.result,Je(e,!0,n),k=e.input.charCodeAt(e.position),(p||e.line===r)&&k===58&&(u=!0,k=e.input.charCodeAt(++e.position),Je(e,!0,n),po(e,n,Kr,!1,!0),_=e.result),m?fo(e,s,h,y,g,_,r,i,a):u?s.push(fo(e,null,h,y,g,_,r,i,a)):s.push(g),Je(e,!0,n),k=e.input.charCodeAt(e.position),k===44?(o=!0,k=e.input.charCodeAt(++e.position)):o=!1}Pe(e,"unexpected end of the stream within a flow collection")}function SE(e,n){var o,r,i=Ya,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)Ya===i?i=u===43?zd:pE:Pe(e,"repeat of a chomping mode identifier");else if((f=bE(u))>=0)f===0?Pe(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Pe(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(Dn(u)){do u=e.input.charCodeAt(++e.position);while(Dn(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!Ft(u)&&u!==0)}for(;u!==0;){for(Wa(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),Ft(u)){c++;continue}if(e.lineIndent<s){i===zd?e.result+=it.repeat(`
23
- `,a?1+c:c):i===Ya&&a&&(e.result+=`
24
- `);break}for(r?Dn(u)?(d=!0,e.result+=it.repeat(`
25
- `,a?1+c:c)):d?(d=!1,e.result+=it.repeat(`
26
- `,c+1)):c===0?a&&(e.result+=" "):e.result+=it.repeat(`
27
- `,c):e.result+=it.repeat(`
28
- `,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!Ft(u)&&u!==0;)u=e.input.charCodeAt(++e.position);fn(e,o,e.position,!1)}return!0}function ou(e,n){var o,r=e.tag,i=e.anchor,a=[],l,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!kt(l))));){if(s=!0,e.position++,Je(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,po(e,n,qd,!1,!0),a.push(e.result),Je(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)Pe(e,"bad indentation of a sequence entry");else if(e.lineIndent<n)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function vE(e,n,o){var r,i,a,l,s,c,d=e.tag,f=e.anchor,u={},p=Object.create(null),m=null,h=null,g=null,y=!1,_=!1,k;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),k=e.input.charCodeAt(e.position);k!==0;){if(!y&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(k===63||k===58)&&kt(r))k===63?(y&&(fo(e,u,p,m,h,null,l,s,c),m=h=g=null),_=!0,y=!0,i=!0):y?(y=!1,i=!0):Pe(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,k=r;else{if(l=e.line,s=e.lineStart,c=e.position,!po(e,o,jd,!1,!0))break;if(e.line===a){for(k=e.input.charCodeAt(e.position);Dn(k);)k=e.input.charCodeAt(++e.position);if(k===58)k=e.input.charCodeAt(++e.position),kt(k)||Pe(e,"a whitespace character is expected after the key-value separator within a block mapping"),y&&(fo(e,u,p,m,h,null,l,s,c),m=h=g=null),_=!0,y=!1,i=!1,m=e.tag,h=e.result;else if(_)Pe(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=f,!0}else if(_)Pe(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)&&(y&&(l=e.line,s=e.lineStart,c=e.position),po(e,n,Gr,!0,i)&&(y?h=e.result:g=e.result),y||(fo(e,u,p,m,h,g,l,s,c),m=h=g=null),Je(e,!0,-1),k=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&k!==0)Pe(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return y&&fo(e,u,p,m,h,null,l,s,c),_&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),_}function AE(e){var n,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&Pe(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(o=!0,l=e.input.charCodeAt(++e.position)):l===33?(r=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",n=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(n,e.position),l=e.input.charCodeAt(++e.position)):Pe(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!kt(l);)l===33&&(r?Pe(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),Hd.test(i)||Pe(e,"named tag handle cannot contain such characters"),r=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(n,e.position),hE.test(a)&&Pe(e,"tag suffix cannot contain flow indicator characters")}a&&!Yd.test(a)&&Pe(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Pe(e,"tag name is malformed: "+a)}return o?e.tag=a:un.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:Pe(e,'undeclared tag handle "'+i+'"'),!0}function IE(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&Pe(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!kt(o)&&!co(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function TE(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&&!kt(r)&&!co(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),un.call(e.anchorMap,o)||Pe(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Je(e,!0,-1),!0}function po(e,n,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,h,g,y;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=Gr===o||qd===o,r&&Je(e,!0,-1)&&(d=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;AE(e)||IE(e);)Je(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||Gr===o)&&(Kr===o||jd===o?g=n:g=n+1,y=e.position-e.lineStart,c===1?s&&(ou(e,y)||vE(e,y,g))||xE(e,g)?f=!0:(l&&SE(e,g)||EE(e,g)||NE(e,g)?f=!0:TE(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&Pe(e,"alias node should not have any properties")):CE(e,g,Kr===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&ou(e,y))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&Pe(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),u=0,p=e.implicitTypes.length;u<p;u+=1)if(h=e.implicitTypes[u],h.resolve(e.result)){e.result=h.construct(e.result),e.tag=h.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(un.call(e.typeMap[e.kind||"fallback"],e.tag))h=e.typeMap[e.kind||"fallback"][e.tag];else for(h=null,m=e.typeMap.multi[e.kind||"fallback"],u=0,p=m.length;u<p;u+=1)if(e.tag.slice(0,m[u].tag.length)===m[u].tag){h=m[u];break}h||Pe(e,"unknown tag !<"+e.tag+">"),e.result!==null&&h.kind!==e.kind&&Pe(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+h.kind+'", not "'+e.kind+'"'),h.resolve(e.result,e.tag)?(e.result=h.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Pe(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function PE(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&&(Je(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&&!kt(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&Pe(e,"directive name must not be less than one character in length");l!==0;){for(;Dn(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!Ft(l));break}if(Ft(l))break;for(o=e.position;l!==0&&!kt(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&Wa(e),un.call(tu,r)?tu[r](e,r,i):jr(e,'unknown document directive "'+r+'"')}if(Je(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,Je(e,!0,-1)):a&&Pe(e,"directives end mark is expected"),po(e,e.lineIndent-1,Gr,!1,!0),Je(e,!0,-1),e.checkLineBreaks&&gE.test(e.input.slice(n,e.position))&&jr(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&qr(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Je(e,!0,-1));return}if(e.position<e.length-1)Pe(e,"end of the stream or a document separator is expected");else return}function ru(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
29
- `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new kE(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Pe(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)PE(o);return o.documents}function OE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=ru(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function $E(e,n){var o=ru(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new _t("expected a single document in the stream, but found more")}}var BE=OE,VE=$E,iu={loadAll:BE,load:VE},au=Object.prototype.toString,lu=Object.prototype.hasOwnProperty,Za=65279,DE=9,zo=10,RE=13,ME=32,LE=33,FE=34,Ja=35,UE=37,KE=38,GE=39,jE=42,su=44,qE=45,zr=58,zE=61,HE=62,YE=63,WE=64,cu=91,du=93,XE=96,uu=123,ZE=124,fu=125,mt={};mt[0]="\\0",mt[7]="\\a",mt[8]="\\b",mt[9]="\\t",mt[10]="\\n",mt[11]="\\v",mt[12]="\\f",mt[13]="\\r",mt[27]="\\e",mt[34]='\\"',mt[92]="\\\\",mt[133]="\\N",mt[160]="\\_",mt[8232]="\\L",mt[8233]="\\P";var JE=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],QE=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function eN(e,n){var o,r,i,a,l,s,c;if(n===null)return{};for(o={},r=Object.keys(n),i=0,a=r.length;i<a;i+=1)l=r[i],s=String(n[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&lu.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function tN(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 _t("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+it.repeat("0",r-n.length)+n}var nN=1,Ho=2;function oN(e){this.schema=e.schema||Ha,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=it.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=eN(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?Ho:nN,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=it.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
19
+ `+e.mark.snippet),r+" "+o):r}function Ho(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=vd(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Ho.prototype=Object.create(Error.prototype),Ho.prototype.constructor=Ho,Ho.prototype.toString=function(n){return this.name+": "+vd(this,n)};var bt=Ho;function za(e,n,o,r,i){var a="",l="",s=Math.floor(i/2)-1;return r-n>s&&(a=" ... ",n=r-s+a.length),o-r>s&&(l=" ...",o=r+s-l.length),{str:a+e.slice(n,o).replace(/\t/g,"→")+l,pos:r-n+a.length}}function Ha(e,n){return at.repeat(" ",n-e.length)+e}function AC(e,n){if(n=Object.create(n||null),!e.buffer)return null;n.maxLength||(n.maxLength=79),typeof n.indent!="number"&&(n.indent=1),typeof n.linesBefore!="number"&&(n.linesBefore=3),typeof n.linesAfter!="number"&&(n.linesAfter=2);for(var o=/\r?\n|\r|\0/g,r=[0],i=[],a,l=-1;a=o.exec(e.buffer);)i.push(a.index),r.push(a.index+a[0].length),e.position<=a.index&&l<0&&(l=r.length-2);l<0&&(l=r.length-1);var s="",c,d,f=Math.min(e.line+n.linesAfter,i.length).toString().length,u=n.maxLength-(n.indent+f+3);for(c=1;c<=n.linesBefore&&!(l-c<0);c++)d=za(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=at.repeat(" ",n.indent)+Ha((e.line-c+1).toString(),f)+" | "+d.str+`
20
+ `+s;for(d=za(e.buffer,r[l],i[l],e.position,u),s+=at.repeat(" ",n.indent)+Ha((e.line+1).toString(),f)+" | "+d.str+`
21
+ `,s+=at.repeat("-",n.indent+f+3+d.pos)+`^
22
+ `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=za(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=at.repeat(" ",n.indent)+Ha((e.line+c+1).toString(),f)+" | "+d.str+`
23
+ `;return s.replace(/\n$/,"")}var IC=AC,TC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],PC=["scalar","sequence","mapping"];function OC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function $C(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(TC.indexOf(o)===-1)throw new bt('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=OC(n.styleAliases||null),PC.indexOf(this.kind)===-1)throw new bt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var dt=$C;function Ad(e,n){var o=[];return e[n].forEach(function(r){var i=o.length;o.forEach(function(a,l){a.tag===r.tag&&a.kind===r.kind&&a.multi===r.multi&&(i=l)}),o[i]=r}),o}function BC(){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 Ya(e){return this.extend(e)}Ya.prototype.extend=function(n){var o=[],r=[];if(n instanceof dt)r.push(n);else if(Array.isArray(n))r=r.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(o=o.concat(n.implicit)),n.explicit&&(r=r.concat(n.explicit));else throw new bt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof dt))throw new bt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new bt("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 bt("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(a){if(!(a instanceof dt))throw new bt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Ya.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Ad(i,"implicit"),i.compiledExplicit=Ad(i,"explicit"),i.compiledTypeMap=BC(i.compiledImplicit,i.compiledExplicit),i};var Id=Ya,Td=new dt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Pd=new dt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Od=new dt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),$d=new Id({explicit:[Td,Pd,Od]});function VC(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function RC(){return null}function DC(e){return e===null}var Bd=new dt("tag:yaml.org,2002:null",{kind:"scalar",resolve:VC,construct:RC,predicate:DC,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function MC(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 LC(e){return e==="true"||e==="True"||e==="TRUE"}function FC(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Vd=new dt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:MC,construct:LC,predicate:FC,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 UC(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function KC(e){return 48<=e&&e<=55}function jC(e){return 48<=e&&e<=57}function GC(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(!UC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!KC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!jC(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function qC(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 zC(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!at.isNegativeZero(e)}var Rd=new dt("tag:yaml.org,2002:int",{kind:"scalar",resolve:GC,construct:qC,predicate:zC,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"]}}),HC=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function YC(e){return!(e===null||!HC.test(e)||e[e.length-1]==="_")}function WC(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 XC=/^[-+]?[0-9]+e/;function ZC(e,n){var o;if(isNaN(e))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(n){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(at.isNegativeZero(e))return"-0.0";return o=e.toString(10),XC.test(o)?o.replace("e",".e"):o}function JC(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||at.isNegativeZero(e))}var Dd=new dt("tag:yaml.org,2002:float",{kind:"scalar",resolve:YC,construct:WC,predicate:JC,represent:ZC,defaultStyle:"lowercase"}),Md=$d.extend({implicit:[Bd,Vd,Rd,Dd]}),Ld=Md,Fd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Ud=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function QC(e){return e===null?!1:Fd.exec(e)!==null||Ud.exec(e)!==null}function eE(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=Fd.exec(e),n===null&&(n=Ud.exec(e)),n===null)throw new Error("Date resolve error");if(o=+n[1],r=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(o,r,i));if(a=+n[4],l=+n[5],s=+n[6],n[7]){for(c=n[7].slice(0,3);c.length<3;)c+="0";c=+c}return n[9]&&(f=+n[10],u=+(n[11]||0),d=(f*60+u)*6e4,n[9]==="-"&&(d=-d)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),d&&p.setTime(p.getTime()-d),p}function tE(e){return e.toISOString()}var Kd=new dt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:QC,construct:eE,instanceOf:Date,represent:tE});function nE(e){return e==="<<"||e===null}var jd=new dt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:nE}),Wa=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
24
+ \r`;function oE(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=Wa;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 rE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=Wa,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 iE(e){var n="",o=0,r,i,a=e.length,l=Wa;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 aE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Gd=new dt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:oE,construct:rE,predicate:aE,represent:iE}),lE=Object.prototype.hasOwnProperty,sE=Object.prototype.toString;function cE(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,sE.call(i)!=="[object Object]")return!1;for(a in i)if(lE.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 dE(e){return e!==null?e:[]}var qd=new dt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:cE,construct:dE}),uE=Object.prototype.toString;function fE(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],uE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function pE(e){if(e===null)return[];var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1)r=l[n],i=Object.keys(r),a[n]=[i[0],r[i[0]]];return a}var zd=new dt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:fE,construct:pE}),mE=Object.prototype.hasOwnProperty;function gE(e){if(e===null)return!0;var n,o=e;for(n in o)if(mE.call(o,n)&&o[n]!==null)return!1;return!0}function hE(e){return e!==null?e:{}}var Hd=new dt("tag:yaml.org,2002:set",{kind:"mapping",resolve:gE,construct:hE}),Xa=Ld.extend({implicit:[Kd,jd],explicit:[Gd,qd,zd,Hd]}),pn=Object.prototype.hasOwnProperty,qr=1,Yd=2,Wd=3,zr=4,Za=1,yE=2,Xd=3,_E=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,bE=/[\x85\u2028\u2029]/,wE=/[,\[\]\{\}]/,Zd=/^(?:!|!!|![a-z\-]+!)$/i,Jd=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Qd(e){return Object.prototype.toString.call(e)}function Ft(e){return e===10||e===13}function Mn(e){return e===9||e===32}function Ct(e){return e===9||e===32||e===10||e===13}function fo(e){return e===44||e===91||e===93||e===123||e===125}function kE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function CE(e){return e===120?2:e===117?4:e===85?8:0}function EE(e){return 48<=e&&e<=57?e-48:-1}function eu(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
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 NE(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}function tu(e,n,o){n==="__proto__"?Object.defineProperty(e,n,{configurable:!0,enumerable:!0,writable:!0,value:o}):e[n]=o}for(var nu=new Array(256),ou=new Array(256),po=0;po<256;po++)nu[po]=eu(po)?1:0,ou[po]=eu(po);function xE(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||Xa,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 ru(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=IC(o),new bt(n,o)}function Pe(e,n){throw ru(e,n)}function Hr(e,n){e.onWarning&&e.onWarning.call(null,ru(e,n))}var iu={YAML:function(n,o,r){var i,a,l;n.version!==null&&Pe(n,"duplication of %YAML directive"),r.length!==1&&Pe(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Pe(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Pe(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&Hr(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Pe(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],Zd.test(i)||Pe(n,"ill-formed tag handle (first argument) of the TAG directive"),pn.call(n.tagMap,i)&&Pe(n,'there is a previously declared suffix for "'+i+'" tag handle'),Jd.test(a)||Pe(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Pe(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function mn(e,n,o,r){var i,a,l,s;if(n<o){if(s=e.input.slice(n,o),r)for(i=0,a=s.length;i<a;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||Pe(e,"expected valid JSON character");else _E.test(s)&&Pe(e,"the stream contains non-printable characters");e.result+=s}}function au(e,n,o,r){var i,a,l,s;for(at.isObject(o)||Pe(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)a=i[l],pn.call(n,a)||(tu(n,a,o[a]),r[a]=!0)}function mo(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])&&Pe(e,"nested arrays are not supported inside keys"),typeof i=="object"&&Qd(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&Qd(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(d=0,f=a.length;d<f;d+=1)au(e,n,a[d],o);else au(e,n,a,o);else!e.json&&!pn.call(o,i)&&pn.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,Pe(e,"duplicated mapping key")),tu(n,i,a),delete o[i];return n}function Ja(e){var n;n=e.input.charCodeAt(e.position),n===10?e.position++:n===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):Pe(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Qe(e,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;Mn(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(Ft(i))for(Ja(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&&Hr(e,"deficient indentation"),r}function Yr(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||Ct(o)))}function Qa(e,n){n===1?e.result+=" ":n>1&&(e.result+=at.repeat(`
26
+ `,n-1))}function SE(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),Ct(m)||fo(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),Ct(i)||o&&fo(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),Ct(i)||o&&fo(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),Ct(r))break}else{if(e.position===e.lineStart&&Yr(e)||o&&fo(m))break;if(Ft(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,Qe(e,!1,-1),e.lineIndent>=n){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=d,e.lineIndent=f;break}}s&&(mn(e,a,l,!1),Qa(e,e.line-c),a=l=e.position,s=!1),Mn(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return mn(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function vE(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(mn(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 Ft(o)?(mn(e,r,i,!0),Qa(e,Qe(e,!1,n)),r=i=e.position):e.position===e.lineStart&&Yr(e)?Pe(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Pe(e,"unexpected end of the stream within a single quoted scalar")}function AE(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 mn(e,o,e.position,!0),e.position++,!0;if(s===92){if(mn(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),Ft(s))Qe(e,!1,n);else if(s<256&&nu[s])e.result+=ou[s],e.position++;else if((l=CE(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=kE(s))>=0?a=(a<<4)+l:Pe(e,"expected hexadecimal character");e.result+=NE(a),e.position++}else Pe(e,"unknown escape sequence");o=r=e.position}else Ft(s)?(mn(e,o,r,!0),Qa(e,Qe(e,!1,n)),o=r=e.position):e.position===e.lineStart&&Yr(e)?Pe(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Pe(e,"unexpected end of the stream within a double quoted scalar")}function IE(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,h=Object.create(null),g,y,_,w;if(w=e.input.charCodeAt(e.position),w===91)f=93,m=!1,s=[];else if(w===123)f=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),w=e.input.charCodeAt(++e.position);w!==0;){if(Qe(e,!0,n),w=e.input.charCodeAt(e.position),w===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?w===44&&Pe(e,"expected the node content, but found ','"):Pe(e,"missed comma between flow collection entries"),y=g=_=null,u=p=!1,w===63&&(d=e.input.charCodeAt(e.position+1),Ct(d)&&(u=p=!0,e.position++,Qe(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,go(e,n,qr,!1,!0),y=e.tag,g=e.result,Qe(e,!0,n),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(u=!0,w=e.input.charCodeAt(++e.position),Qe(e,!0,n),go(e,n,qr,!1,!0),_=e.result),m?mo(e,s,h,y,g,_,r,i,a):u?s.push(mo(e,null,h,y,g,_,r,i,a)):s.push(g),Qe(e,!0,n),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}Pe(e,"unexpected end of the stream within a flow collection")}function TE(e,n){var o,r,i=Za,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)Za===i?i=u===43?Xd:yE:Pe(e,"repeat of a chomping mode identifier");else if((f=EE(u))>=0)f===0?Pe(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Pe(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(Mn(u)){do u=e.input.charCodeAt(++e.position);while(Mn(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!Ft(u)&&u!==0)}for(;u!==0;){for(Ja(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),Ft(u)){c++;continue}if(e.lineIndent<s){i===Xd?e.result+=at.repeat(`
27
+ `,a?1+c:c):i===Za&&a&&(e.result+=`
28
+ `);break}for(r?Mn(u)?(d=!0,e.result+=at.repeat(`
29
+ `,a?1+c:c)):d?(d=!1,e.result+=at.repeat(`
30
+ `,c+1)):c===0?a&&(e.result+=" "):e.result+=at.repeat(`
31
+ `,c):e.result+=at.repeat(`
32
+ `,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!Ft(u)&&u!==0;)u=e.input.charCodeAt(++e.position);mn(e,o,e.position,!1)}return!0}function lu(e,n){var o,r=e.tag,i=e.anchor,a=[],l,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!Ct(l))));){if(s=!0,e.position++,Qe(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,go(e,n,Wd,!1,!0),a.push(e.result),Qe(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)Pe(e,"bad indentation of a sequence entry");else if(e.lineIndent<n)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function PE(e,n,o){var r,i,a,l,s,c,d=e.tag,f=e.anchor,u={},p=Object.create(null),m=null,h=null,g=null,y=!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(!y&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Pe(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(w===63||w===58)&&Ct(r))w===63?(y&&(mo(e,u,p,m,h,null,l,s,c),m=h=g=null),_=!0,y=!0,i=!0):y?(y=!1,i=!0):Pe(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,w=r;else{if(l=e.line,s=e.lineStart,c=e.position,!go(e,o,Yd,!1,!0))break;if(e.line===a){for(w=e.input.charCodeAt(e.position);Mn(w);)w=e.input.charCodeAt(++e.position);if(w===58)w=e.input.charCodeAt(++e.position),Ct(w)||Pe(e,"a whitespace character is expected after the key-value separator within a block mapping"),y&&(mo(e,u,p,m,h,null,l,s,c),m=h=g=null),_=!0,y=!1,i=!1,m=e.tag,h=e.result;else if(_)Pe(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=f,!0}else if(_)Pe(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)&&(y&&(l=e.line,s=e.lineStart,c=e.position),go(e,n,zr,!0,i)&&(y?h=e.result:g=e.result),y||(mo(e,u,p,m,h,g,l,s,c),m=h=g=null),Qe(e,!0,-1),w=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&w!==0)Pe(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return y&&mo(e,u,p,m,h,null,l,s,c),_&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),_}function OE(e){var n,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&Pe(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(o=!0,l=e.input.charCodeAt(++e.position)):l===33?(r=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",n=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(n,e.position),l=e.input.charCodeAt(++e.position)):Pe(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!Ct(l);)l===33&&(r?Pe(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),Zd.test(i)||Pe(e,"named tag handle cannot contain such characters"),r=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(n,e.position),wE.test(a)&&Pe(e,"tag suffix cannot contain flow indicator characters")}a&&!Jd.test(a)&&Pe(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Pe(e,"tag name is malformed: "+a)}return o?e.tag=a:pn.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:Pe(e,'undeclared tag handle "'+i+'"'),!0}function $E(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&Pe(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!Ct(o)&&!fo(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function BE(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&&!Ct(r)&&!fo(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&Pe(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),pn.call(e.anchorMap,o)||Pe(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Qe(e,!0,-1),!0}function go(e,n,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,h,g,y;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=zr===o||Wd===o,r&&Qe(e,!0,-1)&&(d=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;OE(e)||$E(e);)Qe(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||zr===o)&&(qr===o||Yd===o?g=n:g=n+1,y=e.position-e.lineStart,c===1?s&&(lu(e,y)||PE(e,y,g))||IE(e,g)?f=!0:(l&&TE(e,g)||vE(e,g)||AE(e,g)?f=!0:BE(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&Pe(e,"alias node should not have any properties")):SE(e,g,qr===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&lu(e,y))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&Pe(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),u=0,p=e.implicitTypes.length;u<p;u+=1)if(h=e.implicitTypes[u],h.resolve(e.result)){e.result=h.construct(e.result),e.tag=h.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(pn.call(e.typeMap[e.kind||"fallback"],e.tag))h=e.typeMap[e.kind||"fallback"][e.tag];else for(h=null,m=e.typeMap.multi[e.kind||"fallback"],u=0,p=m.length;u<p;u+=1)if(e.tag.slice(0,m[u].tag.length)===m[u].tag){h=m[u];break}h||Pe(e,"unknown tag !<"+e.tag+">"),e.result!==null&&h.kind!==e.kind&&Pe(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+h.kind+'", not "'+e.kind+'"'),h.resolve(e.result,e.tag)?(e.result=h.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Pe(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function VE(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&&(Qe(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&&!Ct(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&Pe(e,"directive name must not be less than one character in length");l!==0;){for(;Mn(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!Ft(l));break}if(Ft(l))break;for(o=e.position;l!==0&&!Ct(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&Ja(e),pn.call(iu,r)?iu[r](e,r,i):Hr(e,'unknown document directive "'+r+'"')}if(Qe(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,Qe(e,!0,-1)):a&&Pe(e,"directives end mark is expected"),go(e,e.lineIndent-1,zr,!1,!0),Qe(e,!0,-1),e.checkLineBreaks&&bE.test(e.input.slice(n,e.position))&&Hr(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Yr(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Qe(e,!0,-1));return}if(e.position<e.length-1)Pe(e,"end of the stream or a document separator is expected");else return}function su(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 xE(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Pe(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)VE(o);return o.documents}function RE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=su(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function DE(e,n){var o=su(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new bt("expected a single document in the stream, but found more")}}var ME=RE,LE=DE,cu={loadAll:ME,load:LE},du=Object.prototype.toString,uu=Object.prototype.hasOwnProperty,el=65279,FE=9,Yo=10,UE=13,KE=32,jE=33,GE=34,tl=35,qE=37,zE=38,HE=39,YE=42,fu=44,WE=45,Wr=58,XE=61,ZE=62,JE=63,QE=64,pu=91,mu=93,eN=96,gu=123,tN=124,hu=125,gt={};gt[0]="\\0",gt[7]="\\a",gt[8]="\\b",gt[9]="\\t",gt[10]="\\n",gt[11]="\\v",gt[12]="\\f",gt[13]="\\r",gt[27]="\\e",gt[34]='\\"',gt[92]="\\\\",gt[133]="\\N",gt[160]="\\_",gt[8232]="\\L",gt[8233]="\\P";var nN=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],oN=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function rN(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&&uu.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function iN(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 bt("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+at.repeat("0",r-n.length)+n}var aN=1,Wo=2;function lN(e){this.schema=e.schema||Xa,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=at.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=rN(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==='"'?Wo:aN,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 yu(e,n){for(var o=at.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
30
34
  `,r),i===-1?(l=e.slice(r),r=s):(l=e.slice(r,i+1),r=i+1),l.length&&l!==`
31
- `&&(a+=o),a+=l;return a}function Qa(e,n){return`
32
- `+it.repeat(" ",e.indent*n)}function rN(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 Hr(e){return e===ME||e===DE}function Yo(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==Za||65536<=e&&e<=1114111}function mu(e){return Yo(e)&&e!==Za&&e!==RE&&e!==zo}function gu(e,n,o){var r=mu(e),i=r&&!Hr(e);return(o?r:r&&e!==su&&e!==cu&&e!==du&&e!==uu&&e!==fu)&&e!==Ja&&!(n===zr&&!i)||mu(n)&&!Hr(n)&&e===Ja||n===zr&&i}function iN(e){return Yo(e)&&e!==Za&&!Hr(e)&&e!==qE&&e!==YE&&e!==zr&&e!==su&&e!==cu&&e!==du&&e!==uu&&e!==fu&&e!==Ja&&e!==KE&&e!==jE&&e!==LE&&e!==ZE&&e!==zE&&e!==HE&&e!==GE&&e!==FE&&e!==UE&&e!==WE&&e!==XE}function aN(e){return!Hr(e)&&e!==zr}function Wo(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 hu(e){var n=/^\n* /;return n.test(e)}var yu=1,el=2,_u=3,bu=4,mo=5;function lN(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,h=-1,g=iN(Wo(e,0))&&aN(Wo(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Wo(e,c),!Yo(d))return mo;g=g&&gu(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Wo(e,c),d===zo)u=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!Yo(d))return mo;g=g&&gu(d,f,s),f=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!u&&!p?g&&!l&&!i(e)?yu:a===Ho?mo:el:o>9&&hu(e)?mo:l?a===Ho?mo:el:p?bu:_u}function sN(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Ho?'""':"''";if(!e.noCompatMode&&(JE.indexOf(n)!==-1||QE.test(n)))return e.quotingType===Ho?'"'+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 rN(e,d)}switch(lN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case yu:return n;case el:return"'"+n.replace(/'/g,"''")+"'";case _u:return"|"+wu(n,e.indent)+ku(pu(n,a));case bu:return">"+wu(n,e.indent)+ku(pu(cN(n,l),a));case mo:return'"'+dN(n)+'"';default:throw new _t("impossible error: invalid scalar style")}}()}function wu(e,n){var o=hu(e)?String(n):"",r=e[e.length-1]===`
35
+ `&&(a+=o),a+=l;return a}function nl(e,n){return`
36
+ `+at.repeat(" ",e.indent*n)}function sN(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 Xr(e){return e===KE||e===FE}function Xo(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==el||65536<=e&&e<=1114111}function _u(e){return Xo(e)&&e!==el&&e!==UE&&e!==Yo}function bu(e,n,o){var r=_u(e),i=r&&!Xr(e);return(o?r:r&&e!==fu&&e!==pu&&e!==mu&&e!==gu&&e!==hu)&&e!==tl&&!(n===Wr&&!i)||_u(n)&&!Xr(n)&&e===tl||n===Wr&&i}function cN(e){return Xo(e)&&e!==el&&!Xr(e)&&e!==WE&&e!==JE&&e!==Wr&&e!==fu&&e!==pu&&e!==mu&&e!==gu&&e!==hu&&e!==tl&&e!==zE&&e!==YE&&e!==jE&&e!==tN&&e!==XE&&e!==ZE&&e!==HE&&e!==GE&&e!==qE&&e!==QE&&e!==eN}function dN(e){return!Xr(e)&&e!==Wr}function Zo(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 wu(e){var n=/^\n* /;return n.test(e)}var ku=1,ol=2,Cu=3,Eu=4,ho=5;function uN(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,h=-1,g=cN(Zo(e,0))&&dN(Zo(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Zo(e,c),!Xo(d))return ho;g=g&&bu(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Zo(e,c),d===Yo)u=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!Xo(d))return ho;g=g&&bu(d,f,s),f=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!u&&!p?g&&!l&&!i(e)?ku:a===Wo?ho:ol:o>9&&wu(e)?ho:l?a===Wo?ho:ol:p?Eu:Cu}function fN(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Wo?'""':"''";if(!e.noCompatMode&&(nN.indexOf(n)!==-1||oN.test(n)))return e.quotingType===Wo?'"'+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 sN(e,d)}switch(uN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case ku:return n;case ol:return"'"+n.replace(/'/g,"''")+"'";case Cu:return"|"+Nu(n,e.indent)+xu(yu(n,a));case Eu:return">"+Nu(n,e.indent)+xu(yu(pN(n,l),a));case ho:return'"'+mN(n)+'"';default:throw new bt("impossible error: invalid scalar style")}}()}function Nu(e,n){var o=wu(e)?String(n):"",r=e[e.length-1]===`
33
37
  `,i=r&&(e[e.length-2]===`
34
38
  `||e===`
35
39
  `),a=i?"+":r?"":"-";return o+a+`
36
- `}function ku(e){return e[e.length-1]===`
37
- `?e.slice(0,-1):e}function cN(e,n){for(var o=/(\n+)([^\n]*)/g,r=function(){var d=e.indexOf(`
38
- `);return d=d!==-1?d:e.length,o.lastIndex=d,Cu(e.slice(0,d),n)}(),i=e[0]===`
40
+ `}function xu(e){return e[e.length-1]===`
41
+ `?e.slice(0,-1):e}function pN(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,Su(e.slice(0,d),n)}(),i=e[0]===`
39
43
  `||e[0]===" ",a,l;l=o.exec(e);){var s=l[1],c=l[2];a=c[0]===" ",r+=s+(!i&&!a&&c!==""?`
40
- `:"")+Cu(c,n),i=a}return r}function Cu(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+=`
44
+ `:"")+Su(c,n),i=a}return r}function Su(e,n){if(e===""||e[0]===" ")return e;for(var o=/ [^ ]/g,r,i=0,a,l=0,s=0,c="";r=o.exec(e);)s=r.index,s-i>n&&(a=l>i?l:s,c+=`
41
45
  `+e.slice(i,a),i=a+1),l=s;return c+=`
42
46
  `,e.length-i>n&&l>i?c+=e.slice(i,l)+`
43
- `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function dN(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=Wo(e,i),r=mt[o],!r&&Yo(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||tN(o);return n}function uN(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)),(Jt(e,n,s,!1,!1)||typeof s>"u"&&Jt(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function Eu(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)),(Jt(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&Jt(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=Qa(e,n)),e.dump&&zo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function fN(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)),Jt(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Jt(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function pN(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 _t("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=Qa(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),Jt(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&zo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=Qa(e,n)),Jt(e,n+1,f,!0,u)&&(e.dump&&zo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function Nu(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,au.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(lu.call(s.represent,c))r=s.represent[c](n,c);else throw new _t("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function Jt(e,n,o,r,i,a,l){e.tag=null,e.dump=o,Nu(e,o,!1)||Nu(e,o,!0);var s=au.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?(pN(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(fN(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?Eu(e,n-1,e.dump,i):Eu(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(uN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&sN(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new _t("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 mN(e,n){var o=[],r=[],i,a;for(tl(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function tl(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)tl(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)tl(e[r[i]],n,o)}function gN(e,n){n=n||{};var o=new oN(n);o.noRefs||mN(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),Jt(o,0,r,!0,!0)?o.dump+`
44
- `:""}var hN=gN,yN={dump:hN};function nl(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 _N=ct,bN=xd,wN=Id,pn=Bd,kN=Vd,CN=Ha,EN=iu.load,NN=iu.loadAll,xN=yN.dump,SN=_t,vN={binary:Fd,float:$d,map:Ad,null:Td,pairs:Kd,set:Gd,timestamp:Md,bool:Pd,int:Od,merge:Ld,omap:Ud,seq:vd,str:Sd},AN=nl("safeLoad","load"),IN=nl("safeLoadAll","loadAll"),TN=nl("safeDump","dump"),mn={Type:_N,Schema:bN,FAILSAFE_SCHEMA:wN,JSON_SCHEMA:pn,CORE_SCHEMA:kN,DEFAULT_SCHEMA:CN,load:EN,loadAll:NN,dump:xN,YAMLException:SN,types:vN,safeLoad:AN,safeLoadAll:IN,safeDump:TN};const go={authenticate:`nodes:
47
+ `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function mN(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=Zo(e,i),r=gt[o],!r&&Xo(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||iN(o);return n}function gN(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)),(en(e,n,s,!1,!1)||typeof s>"u"&&en(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function vu(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)),(en(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&en(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=nl(e,n)),e.dump&&Yo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function hN(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)),en(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),en(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function yN(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 bt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=nl(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),en(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Yo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=nl(e,n)),en(e,n+1,f,!0,u)&&(e.dump&&Yo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function Au(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,du.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(uu.call(s.represent,c))r=s.represent[c](n,c);else throw new bt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function en(e,n,o,r,i,a,l){e.tag=null,e.dump=o,Au(e,o,!1)||Au(e,o,!0);var s=du.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?(yN(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(hN(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?vu(e,n-1,e.dump,i):vu(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(gN(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&fN(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new bt("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 _N(e,n){var o=[],r=[],i,a;for(rl(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function rl(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)rl(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)rl(e[r[i]],n,o)}function bN(e,n){n=n||{};var o=new lN(n);o.noRefs||_N(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),en(o,0,r,!0,!0)?o.dump+`
48
+ `:""}var wN=bN,kN={dump:wN};function il(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 CN=dt,EN=Id,NN=$d,gn=Md,xN=Ld,SN=Xa,vN=cu.load,AN=cu.loadAll,IN=kN.dump,TN=bt,PN={binary:Gd,float:Dd,map:Od,null:Bd,pairs:zd,set:Hd,timestamp:Kd,bool:Vd,int:Rd,merge:jd,omap:qd,seq:Pd,str:Td},ON=il("safeLoad","load"),$N=il("safeLoadAll","loadAll"),BN=il("safeDump","dump"),hn={Type:CN,Schema:EN,FAILSAFE_SCHEMA:NN,JSON_SCHEMA:gn,CORE_SCHEMA:xN,DEFAULT_SCHEMA:SN,load:vN,loadAll:AN,dump:IN,YAMLException:TN,types:PN,safeLoad:ON,safeLoadAll:$N,safeDump:BN};const yo={authenticate:`nodes:
45
49
  - name: STATIC_INPUTS
46
50
  type: static
47
51
  values:
@@ -201,13 +205,13 @@ nodes:
201
205
  type: exit
202
206
  input: API
203
207
  status: 200
204
- `},PN={class:"dk-code-editor"},ON={class:"examples-content"},$N={ref:"editor-root",class:"editor"},ol="YAML Syntax",xu="datakit.insert-example",Su=Ae(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const r=t.inject(dn.DATAKIT_M2,!1),{t:i}=Ze.createI18n("en-us",rt),{formData:a,resetFormData:l}=je(),s=o,{getMessageFromError:c}=ye.useErrors(),d=t.useTemplateRef("editor-root"),f=t.shallowRef(null),u=["vault","cache"],p=t.computed(()=>r?go:Zt(go,u));function m(g){const y=f.value,_=y==null?void 0:y.getModel();if(!y||!_)return;const k=go[g];if(!r&&y.getValue()!==k&&(y.pushUndoStop(),y.executeEdits(xu,[{range:_.getFullModelRange(),text:k}]),y.pushUndoStop()),r)try{const b=y.getValue()||"",S=mn.load(b,{schema:pn,json:!0}),E=mn.load(k,{schema:pn,json:!0});if(ao(S.config,E))return;const C=Zt({...a,config:{...E}},["__ui_data"]),N=mn.dump(C,{schema:pn,noArrayIndent:!0});y.pushUndoStop(),y.executeEdits(xu,[{range:_.getFullModelRange(),text:N}]),y.pushUndoStop()}catch(b){s("error",c(b))}h()}function h(){const g=f.value,y=g==null?void 0:g.getModel();!g||!y||(g.setPosition(y.getFullModelRange().getEndPosition()),g.focus())}return t.onMounted(()=>{const g=Er.editor.create(d.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});if(f.value=g,!r&&a.config&&Object.keys(a.config).length>0){const y={...a.config};y.nodes&&y.nodes.length===0&&delete y.nodes;const _=Object.keys(y).length===0?"":mn.dump(t.toRaw(y),{schema:pn,noArrayIndent:!0});g.setValue(_),h()}if(r){const y=Zt({...a},["__ui_data"]),_=mn.dump(y,{schema:pn,noArrayIndent:!0});g.setValue(_),h()}g.onDidChangeModelContent(()=>{const y=g.getModel(),_=g.getValue()||"";try{const k=mn.load(_,{schema:pn,json:!0});Er.editor.setModelMarkers(y,ol,[]),r?l(k):a.config=k,s("change",k)}catch(k){const{message:b,mark:S}=k,{line:E,column:C}=S||{line:0,column:0},N=b.split(`
205
- `)[0],P=[{startLineNumber:E+1,startColumn:C+1,endLineNumber:E+1,endColumn:C+2,message:N,severity:Er.MarkerSeverity.Error,source:ol}];Er.editor.setModelMarkers(y,ol,P),s("error",N)}})}),t.onBeforeUnmount(()=>{var g;(g=f.value)==null||g.dispose()}),n({setExampleCode:m}),(g,y)=>(t.openBlock(),t.createElementBlock("div",PN,[t.createVNode(t.unref(Be.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(ve.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",ON,[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(_,k)=>(t.openBlock(),t.createBlock(t.unref(Be.KButton),{key:k,appearance:"secondary",size:"small",onClick:b=>m(k)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)(`plugins.free-form.datakit.examples.${k}`)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),t.createElementVNode("div",$N,null,512)]))}}),[["__scopeId","data-v-a5b10969"]]),vu=["request","service_request","service_response","response","vault"],ho=vu,Au=["call","jq","exit","property","static","branch","cache"],Iu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],BN="#ecfcff",VN="#f1f0ff",DN="#52596e",RN="#e0e4ea",MN="#007d60",LN="#fffce0",FN="#6c7489",UN="#0044f4",KN="#5f9aff",rl="#000933",il="#d60027",GN="#ffe5e5",jN="#00abd2",qN="#d60067",zN="#6f28ff",Tu="#afb7c5",Yr="#6c7489",HN="#0044f4",YN="#eefaff",WN="#007d60",XN="#ecfffb",ZN="#995c00",Wr="12px",Pu="16px",Xr="20px",JN="2px",Ou="8px",QN="32px",bt={call:{icon:ve.NetworkIcon,colors:{foreground:ZN,background:LN}},jq:{icon:ve.CodeblockIcon,colors:{foreground:zN,background:VN}},exit:{icon:ve.GatewayIcon,colors:{foreground:il,background:GN}},property:{icon:ve.StackIcon,colors:{foreground:WN,background:XN}},static:{icon:ve.DeployIcon,colors:{foreground:HN,background:YN}},branch:{icon:ve.ArrowSplitIcon,colors:{foreground:jN,background:BN}},cache:{icon:ve.CachedIcon,colors:{foreground:qN,background:"#fff0f7"}},vault:{icon:ve.KeyIcon},request:{icon:ve.CloudIcon},service_request:{icon:ve.CloudIcon},service_response:{icon:ve.CloudIcon},response:{icon:ve.CloudIcon}},{t:al}=Ze.createI18n("en-us",rt);function It(e){return al(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function Rn(e){return al(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function e1(e){return al(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const ll={call:{type:"call",summary:Rn("call"),description:It("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...bt.call},jq:{type:"jq",summary:Rn("jq"),description:It("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...bt.jq},exit:{type:"exit",summary:Rn("exit"),description:It("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...bt.exit},property:{type:"property",summary:Rn("property"),description:It("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...bt.property},static:{type:"static",summary:Rn("static"),description:It("static"),io:{output:{fields:[],configurable:!0}},...bt.static},branch:{type:"branch",summary:Rn("branch"),description:It("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...bt.branch},cache:{type:"cache",summary:Rn("cache"),description:It("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...bt.cache}},Zr={request:{type:"request",description:It("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...bt.request},service_request:{type:"service_request",description:It("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...bt.service_request},service_response:{type:"service_response",description:It("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...bt.service_response},response:{type:"response",description:It("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...bt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...bt.vault,hidden:!0}},sl=Object.keys(Zr),cl=e=>sl.includes(e),t1=e=>[...sl,...Au].includes(e),Et=e=>sl.includes(e),dl=e=>Et(e.type),$u=e=>!!(e!=null&&e.startsWith("node:")),Xo=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function Qt(e){return io(e)}function ul(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 yo(e){return`${e}:${Rr()}`}function Jr(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function Bu(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function _o(e){return Et(e)?Zr[e]:ll[e]}function Vu(e){var i,a,l,s;const n=_o(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 Zo(e){var o,r,i;return((i=(r=(o=_o(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function Du(e){return(e??[]).map(n=>({id:yo("field"),name:n}))}function gn(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function hn(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function fl(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Ru(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function n1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=Zr[e];return{name:e,phase:n,position:{x:0,y:0},fields:Vu(o.type),expanded:{},hidden:o.hidden}}function Mu(e,n){const r=(typeof e=="string"&&t1(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 o1(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 Qr(e,n){return`${e}:${n}`}function Lu(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 r1(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function i1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function Fu(e,n){return[...r1(e),...i1(n)]}function ei(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 ml(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 gl(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&$u(i)):[]}function a1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const I=new Map;for(const $ of e.value.groups)for(const w of $.memberIds)I.set(w,{ownerId:$.ownerId,branch:$.branch});return I}),a=t.computed(()=>{const I=new Map;for(const $ of e.value.groups)for(const w of $.memberIds)I.set(w,$);return I}),l=t.computed(()=>{const I=new Map;for(const $ of e.value.groups)I.has($.ownerId)||I.set($.ownerId,[]),I.get($.ownerId).push($);return I}),s=t.computed(()=>Fu(e.value.edges,e.value.groups)),c=t.computed(()=>ei(s.value));function d(I,$){return I?Zo(I.type).includes($):!1}function f(I,$){if($===I.id)return!1;const w=o($);return!(!w||Et(w.type)||w.phase!==I.phase)}function u(I,$){const w=[],U=new Set;for(const x of $)U.has(x)||(U.add(x),f(I,x)&&w.push(x));return w}function p(I,$,w){const U=o(I);return d(U,$)?u(U,w):[]}function m(I,$,w){const U=pl(I.id,$),x=n.value.get(U);w.length>0?x?(x.phase!==I.phase&&(x.phase=I.phase),ul(x.memberIds,w)||(x.position=void 0,x.dimensions=void 0,x.memberIds=[...w])):e.value.groups.push(Lu(I.id,$,I.phase,w)):x&&(e.value.groups=e.value.groups.filter(F=>F.id!==U))}function h(I,$,w,U={}){const x=o(I);if(!d(x,$))return!1;const F=u(x,w),R=gl(x,$);if(ul(R,F))return!1;const oe=x.config??(x.config={});return F.length>0?oe[$]=[...F]:(delete oe[$],Object.keys(oe).length===0&&delete x.config),m(x,$,F),(U.commit??!0)&&r.commit(U.tag),!0}function g(I,$={}){const w=e.value.groups.filter(U=>U.ownerId!==I);return w.length===e.value.groups.length?!1:(e.value.groups=w,($.commit??!0)&&r.commit($.tag),!0)}function y(I,$){const w=n.value.get(pl(I,$));if(w)return[...w.memberIds];const U=o(I);return U?gl(U,$):[]}function _(I){return i.value.get(I)}function k(I){const $=[];let w=a.value.get(I);for(;w;)$.push(w.id),w=a.value.get(w.ownerId);return $}function b(I,$){const w=k($);if(w.length===0)return!1;const U=new Set(k(I));return U.size===0?!0:w.some(x=>!U.has(x))}function S(I,$){if(I===$)return!0;const w=new Set,U=[$];for(;U.length>0;){const x=U.pop();if(w.has(x))continue;if(w.add(x),x===I)return!0;const F=c.value.get(x);if(F)for(const R of F)w.has(R)||U.push(R)}return!1}function E(I,$,w,U={}){const x=o(I);if(!x||!d(x,$)||!f(x,w)||S(I,w))return!1;const F=gl(x,$);if(F.includes(w))return!1;C(w,{commit:!1});const R=[...F,w];return h(I,$,R,{commit:!1})?((U.commit??!0)&&r.commit(U.tag),!0):!1}function C(I,$={}){const w=_(I);if(!w)return!1;const U=y(w.ownerId,w.branch),x=U.filter(F=>F!==I);return x.length===U.length?!1:h(w.ownerId,w.branch,x,$)}function N(I){let $=0;const w=new Set;let U=a.value.get(I);for(;U&&!w.has(U.id);)$+=1,w.add(U.id),U=a.value.get(U.ownerId);return $}function P(I){const $=n.value.get(I);return $?N($.ownerId):0}function v(I){return I?n.value.has(I):!1}return{memberGroupMap:a,groupsByOwner:l,findMembership:_,getMembers:y,wouldCreateCycle:S,setMembers:h,prepareMembers:p,addMember:E,removeMember:C,clear:g,getNodeDepth:N,getGroupDepth:P,isGroupId:v,isEdgeEnteringGroup:b}}function l1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=Ge.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var S;(S=n==null?void 0:n.onHistoryChange)==null||S.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function h(){r(),u=void 0,p("undo")}function g(){i(),u=void 0,p("redo")}function y(){s(),u=void 0,p("clear")}function _(){c(),u=void 0,p("reset")}function k(){r(),f.value.shift(),u=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:h,redo:g,clear:y,reset:_,revert:k}}function s1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function c1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function d1(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 Uu(e,n){var y,_,k,b,S,E,C;const o=((y=e.config)==null?void 0:y.nodes)??[],r=((_=e.__ui_data)==null?void 0:_.nodes)??[],i=((k=e.__ui_data)==null?void 0:k.groups)??[],a=new Map(r.map(N=>[N.name,N])),l=new Map(i.map(N=>[N.name,N])),s=[],c=[],d=new Map,f=[],u=[],p=new Map,m=N=>{const P=new Set,v=[...N];for(;v.length>0;){const I=v.shift();if(!P.has(I)&&(P.add(I),cl(I)||(d.get(I).phase="request"),!!p.has(I)))for(const $ of p.get(I))P.has($)||v.push($)}};let h=!1;for(const N of o){const P=a.get(N.name);!P&&!h&&(h=!0);const v=Gu({type:N.type,configNode:N,uiNode:P,pluginData:e});s.push(v),d.set(v.name,v)}for(const N of s){const P=Zo(N.type);if(!P.length)continue;const v=N.config;if(v)for(const I of P){const $=v[I];if(!Array.isArray($)){l.has(Qr(N.name,I))&&(h=!0);continue}const w=[];for(const U of $){if(typeof U!="string")continue;const x=d.get(U);x&&!Et(x.type)&&w.push(x.id)}if(w.length){v[I]=w;const U=Qr(N.name,I),x=l.get(U),F=x?{position:Qt(x.position)}:void 0,R=Lu(N.id,I,N.phase,w,F);f.push(R),!x&&!h&&(h=!0)}else delete v[I],l.has(Qr(N.name,I))&&(h=!0)}}for(const N of ho)if(!d.has(N)){let P=a.get(N);P||(h||(h=!0),P=n1(N));const v=Gu({type:N,uiNode:P,pluginData:e});s.push(v),d.set(v.name,v)}for(const N of o)p1(N,u);for(const N of u){const P=d.get(N.source),v=d.get(N.target);if(!P||!v){P||console.warn(`[initEditorState] skip: source "${N.source}" not found`),v||console.warn(`[initEditorState] skip: target "${N.target}" not found`);continue}p.has(N.source)||p.set(N.source,new Set),p.get(N.source).add(N.target),p.has(N.target)||p.set(N.target,new Set),p.get(N.target).add(N.source),c.push({id:yo("edge"),source:P.id,sourceField:(b=gn(P,"output",N.sourceField))==null?void 0:b.id,target:v.id,targetField:(S=gn(v,"input",N.targetField))==null?void 0:S.id})}m(["request","service_request"]);let g=null;return(C=(E=e.config)==null?void 0:E.resources)!=null&&C.cache&&(g={...e.config.resources.cache},e.partials&&(g.partial_id=e.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:h?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,...g?{cacheConfig:g}:{}}}function Ku(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Vu(n),c=_o(n);return{id:yo("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Du((a==null?void 0:a.input)??s.input),output:Du((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?Qt(l):{}}}function u1(e){return Et(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Gu({type:e,configNode:n,uiNode:o,pluginData:r}){return Ku({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??u1(e),position:o==null?void 0:o.position,fields:m1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:g1({type:e,configNode:n,pluginData:r})})}function f1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return Qt(s)}function p1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=Jr(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}=Jr(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=Jr(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}=Jr(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function m1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=_o(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=c1(r))}return Object.keys(l).length?l:void 0}function g1({type:e,configNode:n,pluginData:o}){return e==="vault"?s1(o):n?f1(n):void 0}function h1(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(()=>Fu(o.value,r.value));function a(u){return ei(i.value,u?{source:u.source,target:u.target}:void 0)}function l(u){const p=n.value.get(u.source),m=n.value.get(u.target);if(!p||!m)return u;const h=Ru(p,u.sourceField)&&!fl(p,u.sourceField),g=fl(m,u.targetField);return h&&g?{source:u.target,sourceField:u.targetField,target:u.source,targetField:u.sourceField}:u}function s(u){const p=l(u),m=[],h=n.value.get(p.source),g=n.value.get(p.target);if(h||m.push("source node not found"),g||m.push("target node not found"),!h||!g)return{ok:!1,errors:m};fl(h,p.sourceField)||m.push("source handle is not an output field"),Ru(g,p.targetField)||m.push("target handle is not an input field"),g.name==="request"&&m.push('cannot target "request"'),h.name==="response"&&m.push('cannot source from "response"');const y=o.value.some(b=>b.target===p.target&&!b.targetField),_=o.value.some(b=>b.target===p.target&&!!b.targetField);(y&&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 k=a({source:p.source,target:p.target});return ml(k)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const u=[];for(const p of ho)[...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 ml(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:ei}}const[ju,y1]=Ge.createInjectionState(function(n,o={}){const r=t.ref(Uu(n)),i=t.ref(),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=l1(r,{capacity:200,clone:Qt,onHistoryChange:z=>{var J,de;z!=="clear"&&((de=o.onChange)==null||de.call(o,ne(),le(),Y(),(J=r.value.cacheConfig)==null?void 0:J.partial_id))}}),d=t.ref(!1),f=t.ref(new Set);function u(){r.value.pendingLayout=!1,c.commit("*")}function p(z=!0){r.value.pendingFitView!==z&&(r.value.pendingFitView=z,c.commit("*"))}const m=t.computed(()=>{const z={request:0,response:0};return r.value.nodes.forEach(J=>{Et(J.type)||z[J.phase]++}),z}),h=t.computed(()=>new Map(r.value.nodes.map(z=>[z.id,z]))),g=t.computed(()=>new Map(r.value.nodes.map(z=>[z.name,z]))),y=t.computed(()=>{const z=new Map,J=new Map;for(const de of r.value.edges)z.set(de.id,de),J.has(de.source)||J.set(de.source,new Set),J.get(de.source).add(de.id),J.has(de.target)||J.set(de.target,new Set),J.get(de.target).add(de.id);return{edgeMapById:z,edgeIdMapByNodeId:J}}),_=t.computed(()=>y.value.edgeMapById),k=t.computed(()=>y.value.edgeIdMapByNodeId),b=t.computed(()=>new Map(r.value.groups.map(z=>[z.id,z]))),S=t.computed(()=>new Set(r.value.nodes.map(z=>z.name))),E=a1({state:r,groupMapById:b,getNodeById:$,history:c}),{canonicalizeConnection:C,validateConnection:N,validateGraph:P,isValidConnection:v,isValidVueFlowConnection:I}=h1(r);function $(z){return h.value.get(z)}function w(z){return g.value.get(z)}function U(z){return _.value.get(z)}function x(z){if(!k.value.has(z))return[];const J=[];return k.value.get(z).forEach(de=>{const _e=U(de);_e&&J.push(_e)}),J}function F(z){return x(z).filter(J=>J.target===z)}function R(z){return x(z).filter(J=>J.source===z)}const oe=t.computed(()=>i.value?$(i.value):void 0);function ie(z){i.value=z}function M(z){a.value=z}function L(z){if(Et(z.type))throw new Error("[createNode] implicit nodes are fixed.");return Ku({type:z.type,name:z.name||(Et(z.type)?void 0:Mu(z.type,S.value)),phase:z.phase,position:z.position,fields:z.fields,config:z.config})}function A(z,J=!0){const de=L(z);if(de)return r.value.nodes.push(de),J&&c.commit(),d.value=!0,de.id}function V(z,J,de=!0){const _e=$(z);if(!_e||Et(_e.type))return;const Q={...Qt(_e),id:yo("node"),name:Mu(_e.name,S.value),position:J??{x:_e.position.x+20,y:_e.position.y+20}},he=Zo(Q.type);if(he.length&&Q.config){for(const Ce of he)delete Q.config[Ce];Object.keys(Q.config).length===0&&delete Q.config}return r.value.nodes.push(Q),de&&c.commit(),d.value=!0,Q.id}function H(z,J=!0){if(!$(z))return;r.value.edges=r.value.edges.filter(Q=>Q.source!==z&&Q.target!==z),E.clear(z,{commit:!1}),E.removeMember(z,{commit:!1}),r.value.nodes=r.value.nodes.filter(Q=>Q.id!==z),i.value===z&&(i.value=void 0);const _e=P();_e.ok||console.warn("[removeNode] topology invalid:",_e.errors.join("; ")),J&&c.commit()}function te(z,J,de=!0,_e){const Q=$(z);if(!Q)return;if(cl(Q.name)){console.warn("[renameNode] implicit node name is reserved.");return}Q.name!==J&&(Q.name=J,de&&c.commit(_e))}function W(z,J,de=!0){const _e=$(z);_e&&(_e.position={...J},de&&c.commit())}function G(z,J,de=!0){const _e=b.value.get(z);if(!_e)return;const Q=_e.position;Q&&Q.x===J.x&&Q.y===J.y||(_e.position={...J},de&&c.commit())}function se(z,J,de=!0){const _e=b.value.get(z);if(!_e)return!1;const Q={...J.position},he={...J.dimensions},Ce=_e.position&&_e.position.x===Q.x&&_e.position.y===Q.y,pe=_e.dimensions&&_e.dimensions.width===he.width&&_e.dimensions.height===he.height;return Ce&&pe?!1:(_e.position=Q,_e.dimensions=he,de&&c.commit(),!0)}function ue(z,J,de,_e=!0,Q){const he=$(z);if(!he)return;const Ce=de??!he.expanded[J];Ce!==!!he.expanded[J]&&(he.expanded[J]=Ce,_e&&c.commit(Q??`toggle:${z}:${J}`))}function ge(z,J,de=!0,_e){const Q=$(z);Q&&(Q.config=Qt(J),de&&c.commit(_e))}function re(z,J,de,_e=!0){const Q=$(z);if(!Q)return;const he=Q.fields[J];if(he.some(Ce=>Ce.name===de)){console.warn(`[addField] field "${de}" already exists on ${J}.`);return}he.push({id:yo("field"),name:de}),J==="input"?Q.fields.input=he:Q.fields.output=he,_e&&c.commit()}function q(z,J,de,_e=!0){const Q=$(z);if(!Q)return;const he=Q.fields.input,Ce=Q.fields.output,pe=he.find(me=>me.id===J)??Ce.find(me=>me.id===J);pe&&(pe.name=de,_e&&c.commit())}function ae(z,J,de=!0,_e=!0){const Q=$(z);if(!Q)return;const he=Q.fields.input,Ce=Q.fields.output,pe=he.findIndex(lt=>lt.id===J);pe>=0&&he.splice(pe,1);const me=Ce.findIndex(lt=>lt.id===J);me>=0&&Ce.splice(me,1),Q.fields.input=he,Q.fields.output=Ce,de&&(r.value.edges=r.value.edges.filter(lt=>lt.sourceField!==J&&lt.targetField!==J));const He=P();He.ok||console.warn("[removeField] topology invalid:",He.errors.join("; ")),_e&&c.commit()}function ce(z,J=!0){const de=C(z),_e=N(de);if(!_e.ok){console.warn("[connectEdge] invalid connection:",_e.errors.join("; "));return}const Q={id:yo("edge"),...de};r.value.edges.push(Q);const he=P();if(!he.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",he.errors.join("; "));return}return J&&c.commit(),Q.id}function O(z,J,de=!0){T(z,!1),ce(J,!1),de&&c.commit()}function T(z,J=!0){const de=r.value.edges.findIndex(he=>he.id===z);if(de<0)return;const _e=r.value.edges[de];r.value.edges.splice(de,1);const Q=P();if(!Q.ok){r.value.edges.splice(de,0,_e),console.warn("[disconnectEdge] topology invalid:",Q.errors.join("; "));return}J&&c.commit()}function B(z,J=!0){const de=F(z);for(const _e of de)T(_e.id,!1);J&&c.commit()}function D(z,J=!0){const de=R(z);for(const _e of de)T(_e.id,!1);J&&c.commit()}function ne(){var J,de,_e,Q,he;const z=[];for(const Ce of r.value.nodes){if(Et(Ce.type))continue;let pe;const me={};let He;const lt={};for(const ke of r.value.edges.filter(we=>we.target===Ce.id)){const we=$(ke.source);if(!we)continue;const be=(J=hn(we,"output",ke.sourceField))==null?void 0:J.name,Se=be?`${we.name}.${be}`:we.name,Oe=(de=hn(Ce,"input",ke.targetField))==null?void 0:de.name;Oe?me[Oe]=Se:pe===void 0&&(pe=Se)}for(const ke of r.value.edges.filter(we=>we.source===Ce.id)){const we=$(ke.target);if(!we)continue;const be=we.type;if(!Et(be)||!((_e=Zr[be].io)!=null&&_e.input))continue;const Se=(Q=hn(we,"input",ke.targetField))==null?void 0:Q.name,Oe=Se?`${we.name}.${Se}`:we.name,xe=(he=hn(Ce,"output",ke.sourceField))==null?void 0:he.name;xe?lt[xe]=Oe:He===void 0&&(He=Oe)}const ft={...Qt(Ce.config),name:Ce.name,type:Ce.type},cn=Zo(Ce.type);if(cn.length)for(const ke of cn){const we=ft[ke];if(!Array.isArray(we))continue;const be=[];for(const Se of we){const Oe=$(Se);Oe&&be.push(Oe.name)}be.length?ft[ke]=Array.from(new Set(be)):delete ft[ke]}Object.keys(me).length>0?ft.inputs=me:pe!==void 0&&(ft.input=pe),Object.keys(lt).length>0?ft.outputs=lt:He!==void 0&&(ft.output=He),z.push(ft)}return z}function X(){return r.value.nodes.map(z=>Qt({name:z.name,phase:z.phase,position:{...z.position},expanded:{...z.expanded},fields:{input:z.fields.input.map(J=>J.name),output:z.fields.output.map(J=>J.name)}}))}function Y(){const z={},J=w("vault");if(J){const de=d1(J.config);de&&Object.keys(de).length>0&&(z.vault=de)}if(r.value.cacheConfig){const{strategy:de,redis:_e,memory:Q}=r.value.cacheConfig;z.cache={strategy:de,redis:_e,memory:Q}}if(Object.keys(z).length!==0)return z}function K(){const z=[];for(const J of r.value.groups){const de=$(J.ownerId);if(!de)continue;const _e=J.position;_e&&z.push({name:Qr(de.name,J.branch),position:{..._e}})}return z}function le(){return{nodes:X(),groups:K()}}function j(z,J){J&&c.commit(),r.value=Uu(z,J),J||c.clear()}return{state:r,selection:i,portalSelection:a,modalOpen:l,skipValidation:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,configNodeCounts:m,nodeMapById:h,nodeMapByName:g,edgeMapById:_,edgeIdMapByNodeId:k,groupMapById:b,getNodeById:$,getNodeByName:w,getEdgeById:U,getEdgesByNodeId:x,getInEdgesByNodeId:F,getOutEdgesByNodeId:R,selectedNode:oe,selectNode:ie,selectPortalEdge:M,createNode:L,addNode:A,duplicateNode:V,removeNode:H,renameNode:te,moveNode:W,moveGroup:G,setGroupLayout:se,toggleExpanded:ue,replaceConfig:ge,branchGroups:E,addField:re,renameField:q,removeField:ae,connectEdge:ce,replaceConnection:O,disconnectEdge:T,disconnectInEdges:B,disconnectOutEdges:D,toConfigNodes:ne,toUINodes:X,toUIGroups:K,toUIData:le,load:j,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:v,isValidVueFlowConnection:I,validateGraph:()=>P(),clearPendingLayout:u,setPendingFitView:p}});function Ye(){const e=y1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const{t:_1}=Ze.createI18n("en-us",rt),ti=Ge.createGlobalState(()=>{const e=Ge.useLocalStorage("datakit-editor-mode","flow"),n=Ge.useLocalStorage("datakit-editor-sidebar-expanded",!0),o=Ge.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:e,sidePanelExpanded:n,responsePanelCollapsed:o}});function b1({enabled:e,confirm:n}){eo.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm(_1("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=r=>{t.toValue(e)&&r.preventDefault()};Ge.useEventListener("beforeunload",o)}function ni(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function en(e){return typeof e=="function"?e():t.unref(e)}const w1=typeof window<"u"&&typeof document<"u",k1=e=>typeof e<"u",C1=Object.prototype.toString,E1=e=>C1.call(e)==="[object Object]",N1=()=>{};function x1(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 qu=e=>e();function S1(e=qu){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 zu(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function v1(e,n,o={}){const{eventFilter:r=qu,...i}=o;return t.watch(e,x1(r,n),i)}function bo(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=S1(r);return{stop:v1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function A1(e,n={}){if(!t.isRef(e))return t.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=t.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=en(n.replaceRef))!=null?a:!0)if(Array.isArray(e.value)){const s=[...e.value];s[r]=i,e.value=s}else{const s={...e.value,[r]:i};Object.setPrototypeOf(s,Object.getPrototypeOf(e.value)),e.value=s}else e.value[r]=i}}));return o}function hl(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:g}={}){let y=null;const k=[new Promise(b=>{y=t.watch(e,S=>{u(S)!==n&&(y==null||y(),b(S))},{flush:p,deep:m,immediate:!0})})];return h!=null&&k.push(zu(h,g).then(()=>en(e)).finally(()=>y==null?void 0:y())),Promise.race(k)}function r(u,p){if(!t.isRef(u))return o(S=>S===u,p);const{flush:m="sync",deep:h=!1,timeout:g,throwOnTimeout:y}=p??{};let _=null;const b=[new Promise(S=>{_=t.watch([e,u],([E,C])=>{n!==(E===C)&&(_==null||_(),S(E))},{flush:m,deep:h,immediate:!0})})];return g!=null&&b.push(zu(g,y).then(()=>en(e)).finally(()=>(_==null||_(),en(e)))),Promise.race(b)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const h=Array.from(m);return h.includes(u)||h.includes(en(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(en(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return hl(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return hl(e,!n)}}}function yl(e){return hl(e)}function I1(e){var n;const o=en(e);return(n=o==null?void 0:o.$el)!=null?n:o}const Hu=w1?window:void 0;function Yu(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=Hu):[n,o,r,i]=e,!n)return N1;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(()=>[I1(n),en(i)],([f,u])=>{if(l(),!f)return;const p=E1(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return ni(d),d}function T1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Wu(...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=Hu,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=T1(n);return Yu(i,a,f=>{f.repeat&&en(s)||c(f)&&o(f)},l)}function P1(e){return JSON.parse(JSON.stringify(e))}function _l(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.getCurrentInstance(),h=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let g=d;n||(n="modelValue"),g=g||`update:${n.toString()}`;const y=b=>s?typeof s=="function"?s(b):P1(b):b,_=()=>k1(e[n])?y(e[n]):u,k=b=>{p?p(b)&&h(g,b):h(g,b)};if(c){const b=_(),S=t.ref(b);let E=!1;return t.watch(()=>e[n],C=>{E||(E=!0,S.value=y(C),t.nextTick(()=>E=!1))}),t.watch(S,C=>{!E&&(C!==e[n]||f)&&k(C)},{deep:f}),S}else return t.computed({get(){return _()},set(b){k(b)}})}var O1={value:()=>{}};function oi(){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 ri(o)}function ri(e){this._=e}function $1(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}})}ri.prototype=oi.prototype={constructor:ri,on:function(e,n){var o=this._,r=$1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=B1(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]=Xu(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Xu(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 ri(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 B1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Xu(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=O1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var bl="http://www.w3.org/1999/xhtml";const Zu={svg:"http://www.w3.org/2000/svg",xhtml:bl,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function ii(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Zu.hasOwnProperty(n)?{space:Zu[n],local:e}:e}function V1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===bl&&n.documentElement.namespaceURI===bl?n.createElement(e):n.createElementNS(o,e)}}function D1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Ju(e){var n=ii(e);return(n.local?D1:V1)(n)}function R1(){}function wl(e){return e==null?R1:function(){return this.querySelector(e)}}function M1(e){typeof e!="function"&&(e=wl(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 Nt(r,this._parents)}function L1(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function F1(){return[]}function Qu(e){return e==null?F1:function(){return this.querySelectorAll(e)}}function U1(e){return function(){return L1(e.apply(this,arguments))}}function K1(e){typeof e=="function"?e=U1(e):e=Qu(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 Nt(r,i)}function ef(e){return function(){return this.matches(e)}}function tf(e){return function(n){return n.matches(e)}}var G1=Array.prototype.find;function j1(e){return function(){return G1.call(this.children,e)}}function q1(){return this.firstElementChild}function z1(e){return this.select(e==null?q1:j1(typeof e=="function"?e:tf(e)))}var H1=Array.prototype.filter;function Y1(){return Array.from(this.children)}function W1(e){return function(){return H1.call(this.children,e)}}function X1(e){return this.selectAll(e==null?Y1:W1(typeof e=="function"?e:tf(e)))}function Z1(e){typeof e!="function"&&(e=ef(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 Nt(r,this._parents)}function nf(e){return new Array(e.length)}function J1(){return new Nt(this._enter||this._groups.map(nf),this._parents)}function ai(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}ai.prototype={constructor:ai,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 Q1(e){return function(){return e}}function ex(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 ai(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function tx(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 ai(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function nx(e){return e.__data__}function ox(e,n){if(!arguments.length)return Array.from(this,nx);var o=n?tx:ex,r=this._parents,i=this._groups;typeof e!="function"&&(e=Q1(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=rx(e.call(f,f&&f.__data__,d,r)),h=m.length,g=s[d]=new Array(h),y=l[d]=new Array(h),_=c[d]=new Array(p);o(f,u,g,y,_,m,n);for(var k=0,b=0,S,E;k<h;++k)if(S=g[k]){for(k>=b&&(b=k+1);!(E=y[b])&&++b<h;);S._next=E||null}}return l=new Nt(l,r),l._enter=s,l._exit=c,l}function rx(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function ix(){return new Nt(this._exit||this._groups.map(nf),this._parents)}function ax(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 lx(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],f=r[c],u=d.length,p=s[c]=new Array(u),m,h=0;h<u;++h)(m=d[h]||f[h])&&(p[h]=m);for(;c<i;++c)s[c]=o[c];return new Nt(s,this._parents)}function sx(){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 cx(e){e||(e=dx);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 Nt(i,this._parents).order()}function dx(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function ux(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function fx(){return Array.from(this)}function px(){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 mx(){let e=0;for(const n of this)++e;return e}function gx(){return!this.node()}function hx(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 yx(e){return function(){this.removeAttribute(e)}}function _x(e){return function(){this.removeAttributeNS(e.space,e.local)}}function bx(e,n){return function(){this.setAttribute(e,n)}}function wx(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function kx(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function Cx(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 Ex(e,n){var o=ii(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?_x:yx:typeof n=="function"?o.local?Cx:kx:o.local?wx:bx)(o,n))}function of(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Nx(e){return function(){this.style.removeProperty(e)}}function xx(e,n,o){return function(){this.style.setProperty(e,n,o)}}function Sx(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function vx(e,n,o){return arguments.length>1?this.each((n==null?Nx:typeof n=="function"?Sx:xx)(e,n,o??"")):wo(this.node(),e)}function wo(e,n){return e.style.getPropertyValue(n)||of(e).getComputedStyle(e,null).getPropertyValue(n)}function Ax(e){return function(){delete this[e]}}function Ix(e,n){return function(){this[e]=n}}function Tx(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function Px(e,n){return arguments.length>1?this.each((n==null?Ax:typeof n=="function"?Tx:Ix)(e,n)):this.node()[e]}function rf(e){return e.trim().split(/^|\s+/)}function kl(e){return e.classList||new af(e)}function af(e){this._node=e,this._names=rf(e.getAttribute("class")||"")}af.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 lf(e,n){for(var o=kl(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function sf(e,n){for(var o=kl(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Ox(e){return function(){lf(this,e)}}function $x(e){return function(){sf(this,e)}}function Bx(e,n){return function(){(n.apply(this,arguments)?lf:sf)(this,e)}}function Vx(e,n){var o=rf(e+"");if(arguments.length<2){for(var r=kl(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?Bx:n?Ox:$x)(o,n))}function Dx(){this.textContent=""}function Rx(e){return function(){this.textContent=e}}function Mx(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function Lx(e){return arguments.length?this.each(e==null?Dx:(typeof e=="function"?Mx:Rx)(e)):this.node().textContent}function Fx(){this.innerHTML=""}function Ux(e){return function(){this.innerHTML=e}}function Kx(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function Gx(e){return arguments.length?this.each(e==null?Fx:(typeof e=="function"?Kx:Ux)(e)):this.node().innerHTML}function jx(){this.nextSibling&&this.parentNode.appendChild(this)}function qx(){return this.each(jx)}function zx(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Hx(){return this.each(zx)}function Yx(e){var n=typeof e=="function"?e:Ju(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function Wx(){return null}function Xx(e,n){var o=typeof e=="function"?e:Ju(e),r=n==null?Wx:typeof n=="function"?n:wl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function Zx(){var e=this.parentNode;e&&e.removeChild(this)}function Jx(){return this.each(Zx)}function Qx(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function eS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function tS(e){return this.select(e?eS:Qx)}function nS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function oS(e){return function(n){e.call(this,n,this.__data__)}}function rS(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 iS(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 aS(e,n,o){return function(){var r=this.__on,i,a=oS(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 lS(e,n,o){var r=rS(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?aS:iS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function cf(e,n,o){var r=of(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 sS(e,n){return function(){return cf(this,e,n)}}function cS(e,n){return function(){return cf(this,e,n.apply(this,arguments))}}function dS(e,n){return this.each((typeof n=="function"?cS:sS)(e,n))}function*uS(){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 df=[null];function Nt(e,n){this._groups=e,this._parents=n}function Jo(){return new Nt([[document.documentElement]],df)}function fS(){return this}Nt.prototype=Jo.prototype={constructor:Nt,select:M1,selectAll:K1,selectChild:z1,selectChildren:X1,filter:Z1,data:ox,enter:J1,exit:ix,join:ax,merge:lx,selection:fS,order:sx,sort:cx,call:ux,nodes:fx,node:px,size:mx,empty:gx,each:hx,attr:Ex,style:vx,property:Px,classed:Vx,text:Lx,html:Gx,raise:qx,lower:Hx,append:Yx,insert:Xx,remove:Jx,clone:tS,datum:nS,on:lS,dispatch:dS,[Symbol.iterator]:uS};function Vt(e){return typeof e=="string"?new Nt([[document.querySelector(e)]],[document.documentElement]):new Nt([[e]],df)}function pS(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Ut(e,n){if(e=pS(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 mS={passive:!1},Qo={capture:!0,passive:!1};function Cl(e){e.stopImmediatePropagation()}function ko(e){e.preventDefault(),e.stopImmediatePropagation()}function uf(e){var n=e.document.documentElement,o=Vt(e).on("dragstart.drag",ko,Qo);"onselectstart"in n?o.on("selectstart.drag",ko,Qo):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function ff(e,n){var o=e.document.documentElement,r=Vt(e).on("dragstart.drag",null);n&&(r.on("click.drag",ko,Qo),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 li=e=>()=>e;function El(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}})}El.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function gS(e){return!e.ctrlKey&&!e.button}function hS(){return this.parentNode}function yS(e,n){return n??{x:e.x,y:e.y}}function _S(){return navigator.maxTouchPoints||"ontouchstart"in this}function bS(){var e=gS,n=hS,o=yS,r=_S,i={},a=oi("start","drag","end"),l=0,s,c,d,f,u=0;function p(S){S.on("mousedown.drag",m).filter(r).on("touchstart.drag",y).on("touchmove.drag",_,mS).on("touchend.drag touchcancel.drag",k).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(S,E){if(!(f||!e.call(this,S,E))){var C=b(this,n.call(this,S,E),S,E,"mouse");C&&(Vt(S.view).on("mousemove.drag",h,Qo).on("mouseup.drag",g,Qo),uf(S.view),Cl(S),d=!1,s=S.clientX,c=S.clientY,C("start",S))}}function h(S){if(ko(S),!d){var E=S.clientX-s,C=S.clientY-c;d=E*E+C*C>u}i.mouse("drag",S)}function g(S){Vt(S.view).on("mousemove.drag mouseup.drag",null),ff(S.view,d),ko(S),i.mouse("end",S)}function y(S,E){if(e.call(this,S,E)){var C=S.changedTouches,N=n.call(this,S,E),P=C.length,v,I;for(v=0;v<P;++v)(I=b(this,N,S,E,C[v].identifier,C[v]))&&(Cl(S),I("start",S,C[v]))}}function _(S){var E=S.changedTouches,C=E.length,N,P;for(N=0;N<C;++N)(P=i[E[N].identifier])&&(ko(S),P("drag",S,E[N]))}function k(S){var E=S.changedTouches,C=E.length,N,P;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),N=0;N<C;++N)(P=i[E[N].identifier])&&(Cl(S),P("end",S,E[N]))}function b(S,E,C,N,P,v){var I=a.copy(),$=Ut(v||C,E),w,U,x;if((x=o.call(S,new El("beforestart",{sourceEvent:C,target:p,identifier:P,active:l,x:$[0],y:$[1],dx:0,dy:0,dispatch:I}),N))!=null)return w=x.x-$[0]||0,U=x.y-$[1]||0,function F(R,oe,ie){var M=$,L;switch(R){case"start":i[P]=F,L=l++;break;case"end":delete i[P],--l;case"drag":$=Ut(ie||oe,E),L=l;break}I.call(R,S,new El(R,{sourceEvent:oe,subject:x,target:p,identifier:P,active:L,x:$[0]+w,y:$[1]+U,dx:$[0]-M[0],dy:$[1]-M[1],dispatch:I}),N)}}return p.filter=function(S){return arguments.length?(e=typeof S=="function"?S:li(!!S),p):e},p.container=function(S){return arguments.length?(n=typeof S=="function"?S:li(S),p):n},p.subject=function(S){return arguments.length?(o=typeof S=="function"?S:li(S),p):o},p.touchable=function(S){return arguments.length?(r=typeof S=="function"?S:li(!!S),p):r},p.on=function(){var S=a.on.apply(a,arguments);return S===a?p:S},p.clickDistance=function(S){return arguments.length?(u=(S=+S)*S,p):Math.sqrt(u)},p}function Nl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function pf(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function er(){}var tr=.7,si=1/tr,Co="\\s*([+-]?\\d+)\\s*",nr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Kt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",wS=/^#([0-9a-f]{3,8})$/,kS=new RegExp(`^rgb\\(${Co},${Co},${Co}\\)$`),CS=new RegExp(`^rgb\\(${Kt},${Kt},${Kt}\\)$`),ES=new RegExp(`^rgba\\(${Co},${Co},${Co},${nr}\\)$`),NS=new RegExp(`^rgba\\(${Kt},${Kt},${Kt},${nr}\\)$`),xS=new RegExp(`^hsl\\(${nr},${Kt},${Kt}\\)$`),SS=new RegExp(`^hsla\\(${nr},${Kt},${Kt},${nr}\\)$`),mf={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};Nl(er,Mn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:gf,formatHex:gf,formatHex8:vS,formatHsl:AS,formatRgb:hf,toString:hf});function gf(){return this.rgb().formatHex()}function vS(){return this.rgb().formatHex8()}function AS(){return kf(this).formatHsl()}function hf(){return this.rgb().formatRgb()}function Mn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=wS.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?yf(n):o===3?new Ct(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?ci(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?ci(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=kS.exec(e))?new Ct(n[1],n[2],n[3],1):(n=CS.exec(e))?new Ct(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=ES.exec(e))?ci(n[1],n[2],n[3],n[4]):(n=NS.exec(e))?ci(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=xS.exec(e))?wf(n[1],n[2]/100,n[3]/100,1):(n=SS.exec(e))?wf(n[1],n[2]/100,n[3]/100,n[4]):mf.hasOwnProperty(e)?yf(mf[e]):e==="transparent"?new Ct(NaN,NaN,NaN,0):null}function yf(e){return new Ct(e>>16&255,e>>8&255,e&255,1)}function ci(e,n,o,r){return r<=0&&(e=n=o=NaN),new Ct(e,n,o,r)}function IS(e){return e instanceof er||(e=Mn(e)),e?(e=e.rgb(),new Ct(e.r,e.g,e.b,e.opacity)):new Ct}function xl(e,n,o,r){return arguments.length===1?IS(e):new Ct(e,n,o,r??1)}function Ct(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}Nl(Ct,xl,pf(er,{brighter(e){return e=e==null?si:Math.pow(si,e),new Ct(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?tr:Math.pow(tr,e),new Ct(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Ct(Ln(this.r),Ln(this.g),Ln(this.b),di(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:TS,formatRgb:bf,toString:bf}));function _f(){return`#${Fn(this.r)}${Fn(this.g)}${Fn(this.b)}`}function TS(){return`#${Fn(this.r)}${Fn(this.g)}${Fn(this.b)}${Fn((isNaN(this.opacity)?1:this.opacity)*255)}`}function bf(){const e=di(this.opacity);return`${e===1?"rgb(":"rgba("}${Ln(this.r)}, ${Ln(this.g)}, ${Ln(this.b)}${e===1?")":`, ${e})`}`}function di(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Ln(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Fn(e){return e=Ln(e),(e<16?"0":"")+e.toString(16)}function wf(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Dt(e,n,o,r)}function kf(e){if(e instanceof Dt)return new Dt(e.h,e.s,e.l,e.opacity);if(e instanceof er||(e=Mn(e)),!e)return new Dt;if(e instanceof Dt)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 Dt(l,s,c,e.opacity)}function PS(e,n,o,r){return arguments.length===1?kf(e):new Dt(e,n,o,r??1)}function Dt(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Nl(Dt,PS,pf(er,{brighter(e){return e=e==null?si:Math.pow(si,e),new Dt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?tr:Math.pow(tr,e),new Dt(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 Ct(Sl(e>=240?e-240:e+120,i,r),Sl(e,i,r),Sl(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Dt(Cf(this.h),ui(this.s),ui(this.l),di(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=di(this.opacity);return`${e===1?"hsl(":"hsla("}${Cf(this.h)}, ${ui(this.s)*100}%, ${ui(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Cf(e){return e=(e||0)%360,e<0?e+360:e}function ui(e){return Math.max(0,Math.min(1,e||0))}function Sl(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 vl=e=>()=>e;function OS(e,n){return function(o){return e+o*n}}function $S(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 BS(e){return(e=+e)==1?Ef:function(n,o){return o-n?$S(n,o,e):vl(isNaN(n)?o:n)}}function Ef(e,n){var o=n-e;return o?OS(e,o):vl(isNaN(e)?n:e)}const fi=function e(n){var o=BS(n);function r(i,a){var l=o((i=xl(i)).r,(a=xl(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Ef(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 VS(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 DS(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function RS(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]=or(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 MS(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Gt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function LS(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]=or(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Al=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Il=new RegExp(Al.source,"g");function FS(e){return function(){return e}}function US(e){return function(n){return e(n)+""}}function Nf(e,n){var o=Al.lastIndex=Il.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=Al.exec(e))&&(i=Il.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:Gt(r,i)})),o=Il.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?US(c[0].x):FS(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 or(e,n){var o=typeof n,r;return n==null||o==="boolean"?vl(n):(o==="number"?Gt:o==="string"?(r=Mn(n))?(n=r,fi):Nf:n instanceof Mn?fi:n instanceof Date?MS:DS(n)?VS:Array.isArray(n)?RS:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?LS:Gt)(e,n)}var xf=180/Math.PI,Tl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Sf(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)*xf,skewX:Math.atan(c)*xf,scaleX:l,scaleY:s}}var pi;function KS(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Tl:Sf(n.a,n.b,n.c,n.d,n.e,n.f)}function GS(e){return e==null||(pi||(pi=document.createElementNS("http://www.w3.org/2000/svg","g")),pi.setAttribute("transform",e),!(e=pi.transform.baseVal.consolidate()))?Tl:(e=e.matrix,Sf(e.a,e.b,e.c,e.d,e.e,e.f))}function vf(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,h){if(d!==u||f!==p){var g=m.push("translate(",null,n,null,o);h.push({i:g-4,x:Gt(d,u)},{i:g-2,x:Gt(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:Gt(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:Gt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var g=m.push(i(m)+"scale(",null,",",null,")");h.push({i:g-4,x:Gt(d,u)},{i:g-2,x:Gt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var h=-1,g=p.length,y;++h<g;)u[(y=p[h]).i]=y.x(m);return u.join("")}}}var jS=vf(KS,"px, ","px)","deg)"),qS=vf(GS,", ",")",")"),zS=1e-12;function Af(e){return((e=Math.exp(e))+1/e)/2}function HS(e){return((e=Math.exp(e))-1/e)/2}function YS(e){return((e=Math.exp(2*e))-1)/(e+1)}const mi=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,h=u-c,g=m*m+h*h,y,_;if(g<zS)_=Math.log(p/d)/n,y=function(N){return[s+N*m,c+N*h,d*Math.exp(n*N*_)]};else{var k=Math.sqrt(g),b=(p*p-d*d+r*g)/(2*d*o*k),S=(p*p-d*d-r*g)/(2*p*o*k),E=Math.log(Math.sqrt(b*b+1)-b),C=Math.log(Math.sqrt(S*S+1)-S);_=(C-E)/n,y=function(N){var P=N*_,v=Af(E),I=d/(o*k)*(v*YS(n*P+E)-HS(E));return[s+I*m,c+I*h,d*v/Af(n*P+E)]}}return y.duration=_*1e3*n/Math.SQRT2,y}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var Eo=0,rr=0,ir=0,If=1e3,gi,ar,hi=0,Un=0,yi=0,lr=typeof performance=="object"&&performance.now?performance:Date,Tf=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Pl(){return Un||(Tf(WS),Un=lr.now()+yi)}function WS(){Un=0}function _i(){this._call=this._time=this._next=null}_i.prototype=Pf.prototype={constructor:_i,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Pl():+o)+(n==null?0:+n),!this._next&&ar!==this&&(ar?ar._next=this:gi=this,ar=this),this._call=e,this._time=o,Ol()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ol())}};function Pf(e,n,o){var r=new _i;return r.restart(e,n,o),r}function XS(){Pl(),++Eo;for(var e=gi,n;e;)(n=Un-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Eo}function Of(){Un=(hi=lr.now())+yi,Eo=rr=0;try{XS()}finally{Eo=0,JS(),Un=0}}function ZS(){var e=lr.now(),n=e-hi;n>If&&(yi-=n,hi=e)}function JS(){for(var e,n=gi,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:gi=o);ar=e,Ol(r)}function Ol(e){if(!Eo){rr&&(rr=clearTimeout(rr));var n=e-Un;n>24?(e<1/0&&(rr=setTimeout(Of,e-lr.now()-yi)),ir&&(ir=clearInterval(ir))):(ir||(hi=lr.now(),ir=setInterval(ZS,If)),Eo=1,Tf(Of))}}function $f(e,n,o){var r=new _i;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var QS=oi("start","end","cancel","interrupt"),ev=[],Bf=0,Vf=1,$l=2,bi=3,Df=4,Bl=5,wi=6;function ki(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;tv(e,o,{name:n,index:r,group:i,on:QS,tween:ev,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Bf})}function Vl(e,n){var o=Rt(e,n);if(o.state>Bf)throw new Error("too late; already scheduled");return o}function jt(e,n){var o=Rt(e,n);if(o.state>bi)throw new Error("too late; already running");return o}function Rt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function tv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Pf(a,0,o.time);function a(d){o.state=Vf,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!==Vf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===bi)return $f(l);m.state===Df?(m.state=wi,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=wi,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if($f(function(){o.state===bi&&(o.state=Df,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=$l,o.on.call("start",e,e.__data__,o.index,o.group),o.state===$l){for(o.state=bi,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=Bl,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Bl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=wi,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Ci(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>$l&&r.state<Bl,r.state=wi,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function nv(e){return this.each(function(){Ci(this,e)})}function ov(e,n){var o,r;return function(){var i=jt(this,e),a=i.tween;if(a!==o){r=o=a;for(var l=0,s=r.length;l<s;++l)if(r[l].name===n){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function rv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=jt(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===n){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function iv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Rt(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?ov:rv)(o,e,n))}function Dl(e,n,o){var r=e._id;return e.each(function(){var i=jt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return Rt(i,r).value[n]}}function Rf(e,n){var o;return(typeof n=="number"?Gt:n instanceof Mn?fi:(o=Mn(n))?(n=o,fi):Nf)(e,n)}function av(e){return function(){this.removeAttribute(e)}}function lv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function sv(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 cv(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 dv(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 uv(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 fv(e,n){var o=ii(e),r=o==="transform"?qS:Rf;return this.attrTween(e,typeof n=="function"?(o.local?uv:dv)(o,r,Dl(this,"attr."+e,n)):n==null?(o.local?lv:av)(o):(o.local?cv:sv)(o,r,n))}function pv(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function mv(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function gv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&mv(e,a)),o}return i._value=n,i}function hv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&pv(e,a)),o}return i._value=n,i}function yv(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=ii(e);return this.tween(o,(r.local?gv:hv)(r,n))}function _v(e,n){return function(){Vl(this,e).delay=+n.apply(this,arguments)}}function bv(e,n){return n=+n,function(){Vl(this,e).delay=n}}function wv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?_v:bv)(n,e)):Rt(this.node(),n).delay}function kv(e,n){return function(){jt(this,e).duration=+n.apply(this,arguments)}}function Cv(e,n){return n=+n,function(){jt(this,e).duration=n}}function Ev(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?kv:Cv)(n,e)):Rt(this.node(),n).duration}function Nv(e,n){if(typeof n!="function")throw new Error;return function(){jt(this,e).ease=n}}function xv(e){var n=this._id;return arguments.length?this.each(Nv(n,e)):Rt(this.node(),n).ease}function Sv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;jt(this,e).ease=o}}function vv(e){if(typeof e!="function")throw new Error;return this.each(Sv(this._id,e))}function Av(e){typeof e!="function"&&(e=ef(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 tn(r,this._parents,this._name,this._id)}function Iv(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 tn(l,this._parents,this._name,this._id)}function Tv(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 Pv(e,n,o){var r,i,a=Tv(n)?Vl:jt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Ov(e,n){var o=this._id;return arguments.length<2?Rt(this.node(),o).on.on(e):this.each(Pv(o,e,n))}function $v(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Bv(){return this.on("end.remove",$v(this._id))}function Vv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=wl(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,ki(d[p],n,o,p,d,Rt(f,o)));return new tn(a,this._parents,n,o)}function Dv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Qu(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,h=Rt(f,o),g=0,y=p.length;g<y;++g)(m=p[g])&&ki(m,n,o,g,p,h);a.push(p),l.push(f)}return new tn(a,l,n,o)}var Rv=Jo.prototype.constructor;function Mv(){return new Rv(this._groups,this._parents)}function Lv(e,n){var o,r,i;return function(){var a=wo(this,e),l=(this.style.removeProperty(e),wo(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Mf(e){return function(){this.style.removeProperty(e)}}function Fv(e,n,o){var r,i=o+"",a;return function(){var l=wo(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function Uv(e,n,o){var r,i,a;return function(){var l=wo(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),wo(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function Kv(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=jt(this,e),d=c.on,f=c.value[a]==null?s||(s=Mf(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function Gv(e,n,o){var r=(e+="")=="transform"?jS:Rf;return n==null?this.styleTween(e,Lv(e,r)).on("end.style."+e,Mf(e)):typeof n=="function"?this.styleTween(e,Uv(e,r,Dl(this,"style."+e,n))).each(Kv(this._id,e)):this.styleTween(e,Fv(e,r,n),o).on("end.style."+e,null)}function jv(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function qv(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&jv(e,l,o)),r}return a._value=n,a}function zv(e,n,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;return this.tween(r,qv(e,n,o??""))}function Hv(e){return function(){this.textContent=e}}function Yv(e){return function(){var n=e(this);this.textContent=n??""}}function Wv(e){return this.tween("text",typeof e=="function"?Yv(Dl(this,"text",e)):Hv(e==null?"":e+""))}function Xv(e){return function(n){this.textContent=e.call(this,n)}}function Zv(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&Xv(i)),n}return r._value=e,r}function Jv(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,Zv(e))}function Qv(){for(var e=this._name,n=this._id,o=Lf(),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=Rt(c,n);ki(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new tn(r,this._parents,e,o)}function eA(){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=jt(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 tA=0;function tn(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Lf(){return++tA}var nn=Jo.prototype;tn.prototype={constructor:tn,select:Vv,selectAll:Dv,selectChild:nn.selectChild,selectChildren:nn.selectChildren,filter:Av,merge:Iv,selection:Mv,transition:Qv,call:nn.call,nodes:nn.nodes,node:nn.node,size:nn.size,empty:nn.empty,each:nn.each,on:Ov,attr:fv,attrTween:yv,style:Gv,styleTween:zv,text:Wv,textTween:Jv,remove:Bv,tween:iv,delay:wv,duration:Ev,ease:xv,easeVarying:vv,end:eA,[Symbol.iterator]:nn[Symbol.iterator]};function nA(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var oA={time:null,delay:0,duration:250,ease:nA};function rA(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 iA(e){var n,o;e instanceof tn?(n=e._id,e=e._name):(n=Lf(),(o=oA).time=Pl(),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])&&ki(c,e,n,d,l,o||rA(c,n));return new tn(r,this._parents,e,n)}Jo.prototype.interrupt=nv,Jo.prototype.transition=iA;const Ei=e=>()=>e;function aA(e,{sourceEvent:n,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function on(e,n,o){this.k=e,this.x=n,this.y=o}on.prototype={constructor:on,scale:function(e){return e===1?this:new on(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new on(this.k,this.x+this.k*e,this.y+this.k*n)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var No=new on(1,0,0);on.prototype;function Rl(e){e.stopImmediatePropagation()}function sr(e){e.preventDefault(),e.stopImmediatePropagation()}function lA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function sA(){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 Ff(){return this.__zoom||No}function cA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function dA(){return navigator.maxTouchPoints||"ontouchstart"in this}function uA(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 fA(){var e=lA,n=sA,o=uA,r=cA,i=dA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=mi,d=oi("start","zoom","end"),f,u,p,m=500,h=150,g=0,y=10;function _(x){x.property("__zoom",Ff).on("wheel.zoom",P,{passive:!1}).on("mousedown.zoom",v).on("dblclick.zoom",I).filter(i).on("touchstart.zoom",$).on("touchmove.zoom",w).on("touchend.zoom touchcancel.zoom",U).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(x,F,R,oe){var ie=x.selection?x.selection():x;ie.property("__zoom",Ff),x!==ie?E(x,F,R,oe):ie.interrupt().each(function(){C(this,arguments).event(oe).start().zoom(null,typeof F=="function"?F.apply(this,arguments):F).end()})},_.scaleBy=function(x,F,R,oe){_.scaleTo(x,function(){var ie=this.__zoom.k,M=typeof F=="function"?F.apply(this,arguments):F;return ie*M},R,oe)},_.scaleTo=function(x,F,R,oe){_.transform(x,function(){var ie=n.apply(this,arguments),M=this.__zoom,L=R==null?S(ie):typeof R=="function"?R.apply(this,arguments):R,A=M.invert(L),V=typeof F=="function"?F.apply(this,arguments):F;return o(b(k(M,V),L,A),ie,l)},R,oe)},_.translateBy=function(x,F,R,oe){_.transform(x,function(){return o(this.__zoom.translate(typeof F=="function"?F.apply(this,arguments):F,typeof R=="function"?R.apply(this,arguments):R),n.apply(this,arguments),l)},null,oe)},_.translateTo=function(x,F,R,oe,ie){_.transform(x,function(){var M=n.apply(this,arguments),L=this.__zoom,A=oe==null?S(M):typeof oe=="function"?oe.apply(this,arguments):oe;return o(No.translate(A[0],A[1]).scale(L.k).translate(typeof F=="function"?-F.apply(this,arguments):-F,typeof R=="function"?-R.apply(this,arguments):-R),M,l)},oe,ie)};function k(x,F){return F=Math.max(a[0],Math.min(a[1],F)),F===x.k?x:new on(F,x.x,x.y)}function b(x,F,R){var oe=F[0]-R[0]*x.k,ie=F[1]-R[1]*x.k;return oe===x.x&&ie===x.y?x:new on(x.k,oe,ie)}function S(x){return[(+x[0][0]+ +x[1][0])/2,(+x[0][1]+ +x[1][1])/2]}function E(x,F,R,oe){x.on("start.zoom",function(){C(this,arguments).event(oe).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(oe).end()}).tween("zoom",function(){var ie=this,M=arguments,L=C(ie,M).event(oe),A=n.apply(ie,M),V=R==null?S(A):typeof R=="function"?R.apply(ie,M):R,H=Math.max(A[1][0]-A[0][0],A[1][1]-A[0][1]),te=ie.__zoom,W=typeof F=="function"?F.apply(ie,M):F,G=c(te.invert(V).concat(H/te.k),W.invert(V).concat(H/W.k));return function(se){if(se===1)se=W;else{var ue=G(se),ge=H/ue[2];se=new on(ge,V[0]-ue[0]*ge,V[1]-ue[1]*ge)}L.zoom(null,se)}})}function C(x,F,R){return!R&&x.__zooming||new N(x,F)}function N(x,F){this.that=x,this.args=F,this.active=0,this.sourceEvent=null,this.extent=n.apply(x,F),this.taps=0}N.prototype={event:function(x){return x&&(this.sourceEvent=x),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(x,F){return this.mouse&&x!=="mouse"&&(this.mouse[1]=F.invert(this.mouse[0])),this.touch0&&x!=="touch"&&(this.touch0[1]=F.invert(this.touch0[0])),this.touch1&&x!=="touch"&&(this.touch1[1]=F.invert(this.touch1[0])),this.that.__zoom=F,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(x){var F=Vt(this.that).datum();d.call(x,this.that,new aA(x,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:d}),F)}};function P(x,...F){if(!e.apply(this,arguments))return;var R=C(this,F).event(x),oe=this.__zoom,ie=Math.max(a[0],Math.min(a[1],oe.k*Math.pow(2,r.apply(this,arguments)))),M=Ut(x);if(R.wheel)(R.mouse[0][0]!==M[0]||R.mouse[0][1]!==M[1])&&(R.mouse[1]=oe.invert(R.mouse[0]=M)),clearTimeout(R.wheel);else{if(oe.k===ie)return;R.mouse=[M,oe.invert(M)],Ci(this),R.start()}sr(x),R.wheel=setTimeout(L,h),R.zoom("mouse",o(b(k(oe,ie),R.mouse[0],R.mouse[1]),R.extent,l));function L(){R.wheel=null,R.end()}}function v(x,...F){if(p||!e.apply(this,arguments))return;var R=x.currentTarget,oe=C(this,F,!0).event(x),ie=Vt(x.view).on("mousemove.zoom",V,!0).on("mouseup.zoom",H,!0),M=Ut(x,R),L=x.clientX,A=x.clientY;uf(x.view),Rl(x),oe.mouse=[M,this.__zoom.invert(M)],Ci(this),oe.start();function V(te){if(sr(te),!oe.moved){var W=te.clientX-L,G=te.clientY-A;oe.moved=W*W+G*G>g}oe.event(te).zoom("mouse",o(b(oe.that.__zoom,oe.mouse[0]=Ut(te,R),oe.mouse[1]),oe.extent,l))}function H(te){ie.on("mousemove.zoom mouseup.zoom",null),ff(te.view,oe.moved),sr(te),oe.event(te).end()}}function I(x,...F){if(e.apply(this,arguments)){var R=this.__zoom,oe=Ut(x.changedTouches?x.changedTouches[0]:x,this),ie=R.invert(oe),M=R.k*(x.shiftKey?.5:2),L=o(b(k(R,M),oe,ie),n.apply(this,F),l);sr(x),s>0?Vt(this).transition().duration(s).call(E,L,oe,x):Vt(this).call(_.transform,L,oe,x)}}function $(x,...F){if(e.apply(this,arguments)){var R=x.touches,oe=R.length,ie=C(this,F,x.changedTouches.length===oe).event(x),M,L,A,V;for(Rl(x),L=0;L<oe;++L)A=R[L],V=Ut(A,this),V=[V,this.__zoom.invert(V),A.identifier],ie.touch0?!ie.touch1&&ie.touch0[2]!==V[2]&&(ie.touch1=V,ie.taps=0):(ie.touch0=V,M=!0,ie.taps=1+!!f);f&&(f=clearTimeout(f)),M&&(ie.taps<2&&(u=V[0],f=setTimeout(function(){f=null},m)),Ci(this),ie.start())}}function w(x,...F){if(this.__zooming){var R=C(this,F).event(x),oe=x.changedTouches,ie=oe.length,M,L,A,V;for(sr(x),M=0;M<ie;++M)L=oe[M],A=Ut(L,this),R.touch0&&R.touch0[2]===L.identifier?R.touch0[0]=A:R.touch1&&R.touch1[2]===L.identifier&&(R.touch1[0]=A);if(L=R.that.__zoom,R.touch1){var H=R.touch0[0],te=R.touch0[1],W=R.touch1[0],G=R.touch1[1],se=(se=W[0]-H[0])*se+(se=W[1]-H[1])*se,ue=(ue=G[0]-te[0])*ue+(ue=G[1]-te[1])*ue;L=k(L,Math.sqrt(se/ue)),A=[(H[0]+W[0])/2,(H[1]+W[1])/2],V=[(te[0]+G[0])/2,(te[1]+G[1])/2]}else if(R.touch0)A=R.touch0[0],V=R.touch0[1];else return;R.zoom("touch",o(b(L,A,V),R.extent,l))}}function U(x,...F){if(this.__zooming){var R=C(this,F).event(x),oe=x.changedTouches,ie=oe.length,M,L;for(Rl(x),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),M=0;M<ie;++M)L=oe[M],R.touch0&&R.touch0[2]===L.identifier?delete R.touch0:R.touch1&&R.touch1[2]===L.identifier&&delete R.touch1;if(R.touch1&&!R.touch0&&(R.touch0=R.touch1,delete R.touch1),R.touch0)R.touch0[1]=this.__zoom.invert(R.touch0[0]);else if(R.end(),R.taps===2&&(L=Ut(L,this),Math.hypot(u[0]-L[0],u[1]-L[1])<y)){var A=Vt(this).on("dblclick.zoom");A&&A.apply(this,arguments)}}}return _.wheelDelta=function(x){return arguments.length?(r=typeof x=="function"?x:Ei(+x),_):r},_.filter=function(x){return arguments.length?(e=typeof x=="function"?x:Ei(!!x),_):e},_.touchable=function(x){return arguments.length?(i=typeof x=="function"?x:Ei(!!x),_):i},_.extent=function(x){return arguments.length?(n=typeof x=="function"?x:Ei([[+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?(g=(x=+x)*x,_):Math.sqrt(g)},_.tapDistance=function(x){return arguments.length?(y=+x,_):y},_}var Ne=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(Ne||{}),Ml=(e=>(e.Partial="partial",e.Full="full",e))(Ml||{}),Kn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(Kn||{}),yn=(e=>(e.Strict="strict",e.Loose="loose",e))(yn||{}),cr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(cr||{}),dr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(dr||{}),Uf=(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))(Uf||{});const pA=["INPUT","SELECT","TEXTAREA"],mA=typeof document<"u"?document:null;function Ll(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 pA.includes(r==null?void 0:r.nodeName)||i||!!a}function gA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Kf(e,n,o,r){const i=n.replace("+",`
208
+ `},VN={class:"dk-code-editor"},RN={class:"examples-content"},DN={ref:"editor-root",class:"editor"},al="YAML Syntax",Iu="datakit.insert-example",Tu=Ae(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const r=t.inject(fn.DATAKIT_M2,!1),{t:i}=Ze.createI18n("en-us",it),{formData:a,resetFormData:l}=Ge(),s=o,{getMessageFromError:c}=ye.useErrors(),d=t.useTemplateRef("editor-root"),f=t.shallowRef(null),u=["vault","cache"],p=t.computed(()=>r?yo:Jt(yo,u));function m(g){const y=f.value,_=y==null?void 0:y.getModel();if(!y||!_)return;const w=yo[g];if(!r&&y.getValue()!==w&&(y.pushUndoStop(),y.executeEdits(Iu,[{range:_.getFullModelRange(),text:w}]),y.pushUndoStop()),r)try{const b=y.getValue()||"",E=hn.load(b,{schema:gn,json:!0}),N=hn.load(w,{schema:gn,json:!0});if(Zt(E.config,N))return;const C=Jt({...a,config:{...N}},["__ui_data"]),x=hn.dump(C,{schema:gn,noArrayIndent:!0});y.pushUndoStop(),y.executeEdits(Iu,[{range:_.getFullModelRange(),text:x}]),y.pushUndoStop()}catch(b){s("error",c(b))}h()}function h(){const g=f.value,y=g==null?void 0:g.getModel();!g||!y||(g.setPosition(y.getFullModelRange().getEndPosition()),g.focus())}return t.onMounted(()=>{const g=xr.editor.create(d.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});if(f.value=g,!r&&a.config&&Object.keys(a.config).length>0){const y={...a.config};y.nodes&&y.nodes.length===0&&delete y.nodes;const _=Object.keys(y).length===0?"":hn.dump(t.toRaw(y),{schema:gn,noArrayIndent:!0});g.setValue(_),h()}if(r){const y=Jt({...a},["__ui_data"]),_=hn.dump(y,{schema:gn,noArrayIndent:!0});g.setValue(_),h()}g.onDidChangeModelContent(()=>{const y=g.getModel(),_=g.getValue()||"";try{const w=hn.load(_,{schema:gn,json:!0});xr.editor.setModelMarkers(y,al,[]),r?l(w):a.config=w,s("change",w)}catch(w){const{message:b,mark:E}=w,{line:N,column:C}=E||{line:0,column:0},x=b.split(`
209
+ `)[0],P=[{startLineNumber:N+1,startColumn:C+1,endLineNumber:N+1,endColumn:C+2,message:x,severity:xr.MarkerSeverity.Error,source:al}];xr.editor.setModelMarkers(y,al,P),s("error",x)}})}),t.onBeforeUnmount(()=>{var g;(g=f.value)==null||g.dispose()}),n({setExampleCode:m}),(g,y)=>(t.openBlock(),t.createElementBlock("div",VN,[t.createVNode(t.unref(Be.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(ve.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",RN,[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(p.value,(_,w)=>(t.openBlock(),t.createBlock(t.unref(Be.KButton),{key:w,appearance:"secondary",size:"small",onClick:b=>m(w)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)(`plugins.free-form.datakit.examples.${w}`)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),t.createElementVNode("div",DN,null,512)]))}}),[["__scopeId","data-v-a5b10969"]]),Pu=["request","service_request","service_response","response","vault"],_o=Pu,Ou=["call","jq","exit","property","static","branch","cache"],$u=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],MN="#ecfcff",LN="#f1f0ff",FN="#52596e",UN="#e0e4ea",KN="#007d60",jN="#fffce0",GN="#6c7489",qN="#0044f4",zN="#5f9aff",ll="#000933",sl="#d60027",HN="#ffe5e5",YN="#00abd2",WN="#d60067",XN="#6f28ff",Bu="#afb7c5",Zr="#6c7489",ZN="#0044f4",JN="#eefaff",QN="#007d60",e1="#ecfffb",t1="#995c00",Jr="12px",Vu="16px",Qr="20px",n1="2px",Ru="8px",o1="32px",wt={call:{icon:ve.NetworkIcon,colors:{foreground:t1,background:jN}},jq:{icon:ve.CodeblockIcon,colors:{foreground:XN,background:LN}},exit:{icon:ve.GatewayIcon,colors:{foreground:sl,background:HN}},property:{icon:ve.StackIcon,colors:{foreground:QN,background:e1}},static:{icon:ve.DeployIcon,colors:{foreground:ZN,background:JN}},branch:{icon:ve.ArrowSplitIcon,colors:{foreground:YN,background:MN}},cache:{icon:ve.CachedIcon,colors:{foreground:WN,background:"#fff0f7"}},vault:{icon:ve.KeyIcon},request:{icon:ve.CloudIcon},service_request:{icon:ve.CloudIcon},service_response:{icon:ve.CloudIcon},response:{icon:ve.CloudIcon}},{t:cl}=Ze.createI18n("en-us",it);function Pt(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 r1(e){return cl(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const dl={call:{type:"call",summary:Ln("call"),description:Pt("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...wt.call},jq:{type:"jq",summary:Ln("jq"),description:Pt("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...wt.jq},exit:{type:"exit",summary:Ln("exit"),description:Pt("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...wt.exit},property:{type:"property",summary:Ln("property"),description:Pt("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...wt.property},static:{type:"static",summary:Ln("static"),description:Pt("static"),io:{output:{fields:[],configurable:!0}},...wt.static},branch:{type:"branch",summary:Ln("branch"),description:Pt("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...wt.branch},cache:{type:"cache",summary:Ln("cache"),description:Pt("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...wt.cache}},ei={request:{type:"request",description:Pt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...wt.request},service_request:{type:"service_request",description:Pt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...wt.service_request},service_response:{type:"service_response",description:Pt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...wt.service_response},response:{type:"response",description:Pt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...wt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...wt.vault,hidden:!0}},ul=Object.keys(ei),fl=e=>ul.includes(e),i1=e=>[...ul,...Ou].includes(e),Nt=e=>ul.includes(e),pl=e=>Nt(e.type),Du=e=>!!(e!=null&&e.startsWith("node:")),Jo=e=>Object.prototype.hasOwnProperty.call(e,"ownerId");function tn(e){return so(e)}function ml(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 bo(e){return`${e}:${Lr()}`}function ti(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function Mu(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function wo(e){return Nt(e)?ei[e]:dl[e]}function Lu(e){var i,a,l,s;const n=wo(e),o=((a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields.map(({name:c})=>c))??[],r=((s=(l=n.io)==null?void 0:l.output)==null?void 0:s.fields.map(({name:c})=>c))??[];return{input:o,output:r}}function Qo(e){var o,r,i;return((i=(r=(o=wo(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function Fu(e){return(e??[]).map(n=>({id:bo("field"),name:n}))}function yn(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function _n(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function gl(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Uu(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function a1(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=ei[e];return{name:e,phase:n,position:{x:0,y:0},fields:Lu(o.type),expanded:{},hidden:o.hidden}}function Ku(e,n){const r=(typeof e=="string"&&i1(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function hl(e,n){return`${e}:${n}`}function l1(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 ni(e,n){return`${e}:${n}`}function ju(e,n,o,r,i){return{id:hl(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 s1(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function c1(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function Gu(e,n){return[...s1(e),...c1(n)]}function oi(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 yl(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 _l(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&Du(i)):[]}function d1({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const T=new Map;for(const O of e.value.groups)for(const k of O.memberIds)T.set(k,{ownerId:O.ownerId,branch:O.branch});return T}),a=t.computed(()=>{const T=new Map;for(const O of e.value.groups)for(const k of O.memberIds)T.set(k,O);return T}),l=t.computed(()=>{const T=new Map;for(const O of e.value.groups)T.has(O.ownerId)||T.set(O.ownerId,[]),T.get(O.ownerId).push(O);return T}),s=t.computed(()=>Gu(e.value.edges,e.value.groups)),c=t.computed(()=>oi(s.value));function d(T,O){return T?Qo(T.type).includes(O):!1}function f(T,O){if(O===T.id)return!1;const k=o(O);return!(!k||Nt(k.type)||k.phase!==T.phase)}function u(T,O){const k=[],F=new Set;for(const S of O)F.has(S)||(F.add(S),f(T,S)&&k.push(S));return k}function p(T,O,k){const F=o(T);return d(F,O)?u(F,k):[]}function m(T,O,k){const F=hl(T.id,O),S=n.value.get(F);k.length>0?S?(S.phase!==T.phase&&(S.phase=T.phase),ml(S.memberIds,k)||(S.position=void 0,S.dimensions=void 0,S.memberIds=[...k])):e.value.groups.push(ju(T.id,O,T.phase,k)):S&&(e.value.groups=e.value.groups.filter(M=>M.id!==F))}function h(T,O,k,F={}){const S=o(T);if(!d(S,O))return!1;const M=u(S,k),D=_l(S,O);if(ml(D,M))return!1;const oe=S.config??(S.config={});return M.length>0?oe[O]=[...M]:(delete oe[O],Object.keys(oe).length===0&&delete S.config),m(S,O,M),(F.commit??!0)&&r.commit(F.tag),!0}function g(T,O={}){const k=e.value.groups.filter(F=>F.ownerId!==T);return k.length===e.value.groups.length?!1:(e.value.groups=k,(O.commit??!0)&&r.commit(O.tag),!0)}function y(T,O){const k=n.value.get(hl(T,O));if(k)return[...k.memberIds];const F=o(T);return F?_l(F,O):[]}function _(T){return i.value.get(T)}function w(T){const O=[];let k=a.value.get(T);for(;k;)O.push(k.id),k=a.value.get(k.ownerId);return O}function b(T,O){const k=w(O);if(k.length===0)return!1;const F=new Set(w(T));return F.size===0?!0:k.some(S=>!F.has(S))}function E(T,O){if(T===O)return!0;const k=new Set,F=[O];for(;F.length>0;){const S=F.pop();if(k.has(S))continue;if(k.add(S),S===T)return!0;const M=c.value.get(S);if(M)for(const D of M)k.has(D)||F.push(D)}return!1}function N(T,O,k,F={}){const S=o(T);if(!S||!d(S,O)||!f(S,k)||E(T,k))return!1;const M=_l(S,O);if(M.includes(k))return!1;C(k,{commit:!1});const D=[...M,k];return h(T,O,D,{commit:!1})?((F.commit??!0)&&r.commit(F.tag),!0):!1}function C(T,O={}){const k=_(T);if(!k)return!1;const F=y(k.ownerId,k.branch),S=F.filter(M=>M!==T);return S.length===F.length?!1:h(k.ownerId,k.branch,S,O)}function x(T){let O=0;const k=new Set;let F=a.value.get(T);for(;F&&!k.has(F.id);)O+=1,k.add(F.id),F=a.value.get(F.ownerId);return O}function P(T){const O=n.value.get(T);return O?x(O.ownerId):0}function v(T){return T?n.value.has(T):!1}return{memberGroupMap:a,groupsByOwner:l,findMembership:_,getMembers:y,wouldCreateCycle:E,setMembers:h,prepareMembers:p,addMember:N,removeMember:C,clear:g,getNodeDepth:x,getGroupDepth:P,isGroupId:v,isEdgeEnteringGroup:b}}function u1(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=je.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var E;(E=n==null?void 0:n.onHistoryChange)==null||E.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function h(){r(),u=void 0,p("undo")}function g(){i(),u=void 0,p("redo")}function y(){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:h,redo:g,clear:y,reset:_,revert:w}}function f1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function p1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function m1(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 qu(e,n){var y,_,w,b,E,N,C;const o=((y=e.config)==null?void 0:y.nodes)??[],r=((_=e.__ui_data)==null?void 0:_.nodes)??[],i=((w=e.__ui_data)==null?void 0:w.groups)??[],a=new Map(r.map(x=>[x.name,x])),l=new Map(i.map(x=>[x.name,x])),s=[],c=[],d=new Map,f=[],u=[],p=new Map,m=x=>{const P=new Set,v=[...x];for(;v.length>0;){const T=v.shift();if(!P.has(T)&&(P.add(T),fl(T)||(d.get(T).phase="request"),!!p.has(T)))for(const O of p.get(T))P.has(O)||v.push(O)}};let h=!1;for(const x of o){const P=a.get(x.name);!P&&!h&&(h=!0);const v=Hu({type:x.type,configNode:x,uiNode:P,pluginData:e});s.push(v),d.set(v.name,v)}for(const x of s){const P=Qo(x.type);if(!P.length)continue;const v=x.config;if(v)for(const T of P){const O=v[T];if(!Array.isArray(O)){l.has(ni(x.name,T))&&(h=!0);continue}const k=[];for(const F of O){if(typeof F!="string")continue;const S=d.get(F);S&&!Nt(S.type)&&k.push(S.id)}if(k.length){v[T]=k;const F=ni(x.name,T),S=l.get(F),M=S?{position:tn(S.position)}:void 0,D=ju(x.id,T,x.phase,k,M);f.push(D),!S&&!h&&(h=!0)}else delete v[T],l.has(ni(x.name,T))&&(h=!0)}}for(const x of _o)if(!d.has(x)){let P=a.get(x);P||(h||(h=!0),P=a1(x));const v=Hu({type:x,uiNode:P,pluginData:e});s.push(v),d.set(v.name,v)}for(const x of o)y1(x,u);for(const x of u){const P=d.get(x.source),v=d.get(x.target);if(!P||!v){P||console.warn(`[initEditorState] skip: source "${x.source}" not found`),v||console.warn(`[initEditorState] skip: target "${x.target}" not found`);continue}p.has(x.source)||p.set(x.source,new Set),p.get(x.source).add(x.target),p.has(x.target)||p.set(x.target,new Set),p.get(x.target).add(x.source),c.push({id:bo("edge"),source:P.id,sourceField:(b=yn(P,"output",x.sourceField))==null?void 0:b.id,target:v.id,targetField:(E=yn(v,"input",x.targetField))==null?void 0:E.id})}m(["request","service_request"]);let g=null;return(C=(N=e.config)==null?void 0:N.resources)!=null&&C.cache&&(g={...e.config.resources.cache},e.partials&&(g.partial_id=e.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:h?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,...g?{cacheConfig:g}:{}}}function zu(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Lu(n),c=wo(n);return{id:bo("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Fu((a==null?void 0:a.input)??s.input),output:Fu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?tn(l):{}}}function g1(e){return Nt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Hu({type:e,configNode:n,uiNode:o,pluginData:r}){return zu({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??g1(e),position:o==null?void 0:o.position,fields:_1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:b1({type:e,configNode:n,pluginData:r})})}function h1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return tn(s)}function y1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=ti(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}=ti(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=ti(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}=ti(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function _1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=wo(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=p1(r))}return Object.keys(l).length?l:void 0}function b1({type:e,configNode:n,pluginData:o}){return e==="vault"?f1(o):n?h1(n):void 0}function w1(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(()=>Gu(o.value,r.value));function a(u){return oi(i.value,u?{source:u.source,target:u.target}:void 0)}function l(u){const p=n.value.get(u.source),m=n.value.get(u.target);if(!p||!m)return u;const h=Uu(p,u.sourceField)&&!gl(p,u.sourceField),g=gl(m,u.targetField);return h&&g?{source:u.target,sourceField:u.targetField,target:u.source,targetField:u.sourceField}:u}function s(u){const p=l(u),m=[],h=n.value.get(p.source),g=n.value.get(p.target);if(h||m.push("source node not found"),g||m.push("target node not found"),!h||!g)return{ok:!1,errors:m};gl(h,p.sourceField)||m.push("source handle is not an output field"),Uu(g,p.targetField)||m.push("target handle is not an input field"),g.name==="request"&&m.push('cannot target "request"'),h.name==="response"&&m.push('cannot source from "response"');const y=o.value.some(b=>b.target===p.target&&!b.targetField),_=o.value.some(b=>b.target===p.target&&!!b.targetField);(y&&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 yl(w)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const u=[];for(const p of _o)[...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 yl(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:oi}}const[Yu,k1]=je.createInjectionState(function(n,o={}){const r=t.ref(qu(n)),i=t.ref(),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=u1(r,{capacity:200,clone:tn,onHistoryChange:z=>{var J,de;z!=="clear"&&((de=o.onChange)==null||de.call(o,ne(),le(),Y(),(J=r.value.cacheConfig)==null?void 0:J.partial_id))}}),d=t.ref(!1),f=t.ref(new Set);function u(){r.value.pendingLayout=!1,c.commit("*")}function p(z=!0){r.value.pendingFitView!==z&&(r.value.pendingFitView=z,c.commit("*"))}const m=t.computed(()=>{const z={request:0,response:0};return r.value.nodes.forEach(J=>{Nt(J.type)||z[J.phase]++}),z}),h=t.computed(()=>new Map(r.value.nodes.map(z=>[z.id,z]))),g=t.computed(()=>new Map(r.value.nodes.map(z=>[z.name,z]))),y=t.computed(()=>{const z=new Map,J=new Map;for(const de of r.value.edges)z.set(de.id,de),J.has(de.source)||J.set(de.source,new Set),J.get(de.source).add(de.id),J.has(de.target)||J.set(de.target,new Set),J.get(de.target).add(de.id);return{edgeMapById:z,edgeIdMapByNodeId:J}}),_=t.computed(()=>y.value.edgeMapById),w=t.computed(()=>y.value.edgeIdMapByNodeId),b=t.computed(()=>new Map(r.value.groups.map(z=>[z.id,z]))),E=t.computed(()=>new Set(r.value.nodes.map(z=>z.name))),N=d1({state:r,groupMapById:b,getNodeById:O,history:c}),{canonicalizeConnection:C,validateConnection:x,validateGraph:P,isValidConnection:v,isValidVueFlowConnection:T}=w1(r);function O(z){return h.value.get(z)}function k(z){return g.value.get(z)}function F(z){return _.value.get(z)}function S(z){if(!w.value.has(z))return[];const J=[];return w.value.get(z).forEach(de=>{const _e=F(de);_e&&J.push(_e)}),J}function M(z){return S(z).filter(J=>J.target===z)}function D(z){return S(z).filter(J=>J.source===z)}const oe=t.computed(()=>i.value?O(i.value):void 0);function ie(z){i.value=z}function L(z){a.value=z}function U(z){if(Nt(z.type))throw new Error("[createNode] implicit nodes are fixed.");return zu({type:z.type,name:z.name||(Nt(z.type)?void 0:Ku(z.type,E.value)),phase:z.phase,position:z.position,fields:z.fields,config:z.config})}function I(z,J=!0){const de=U(z);if(de)return r.value.nodes.push(de),J&&c.commit(),d.value=!0,de.id}function V(z,J,de=!0){const _e=O(z);if(!_e||Nt(_e.type))return;const Q={...tn(_e),id:bo("node"),name:Ku(_e.name,E.value),position:J??{x:_e.position.x+20,y:_e.position.y+20}},he=Qo(Q.type);if(he.length&&Q.config){for(const Ce of he)delete Q.config[Ce];Object.keys(Q.config).length===0&&delete Q.config}return r.value.nodes.push(Q),de&&c.commit(),d.value=!0,Q.id}function H(z,J=!0){if(!O(z))return;r.value.edges=r.value.edges.filter(Q=>Q.source!==z&&Q.target!==z),N.clear(z,{commit:!1}),N.removeMember(z,{commit:!1}),r.value.nodes=r.value.nodes.filter(Q=>Q.id!==z),i.value===z&&(i.value=void 0);const _e=P();_e.ok||console.warn("[removeNode] topology invalid:",_e.errors.join("; ")),J&&c.commit()}function te(z,J,de=!0,_e){const Q=O(z);if(!Q)return;if(fl(Q.name)){console.warn("[renameNode] implicit node name is reserved.");return}Q.name!==J&&(Q.name=J,de&&c.commit(_e))}function W(z,J,de=!0){const _e=O(z);_e&&(_e.position={...J},de&&c.commit())}function j(z,J,de=!0){const _e=b.value.get(z);if(!_e)return;const Q=_e.position;Q&&Q.x===J.x&&Q.y===J.y||(_e.position={...J},de&&c.commit())}function se(z,J,de=!0){const _e=b.value.get(z);if(!_e)return!1;const Q={...J.position},he={...J.dimensions},Ce=_e.position&&_e.position.x===Q.x&&_e.position.y===Q.y,pe=_e.dimensions&&_e.dimensions.width===he.width&&_e.dimensions.height===he.height;return Ce&&pe?!1:(_e.position=Q,_e.dimensions=he,de&&c.commit(),!0)}function ue(z,J,de,_e=!0,Q){const he=O(z);if(!he)return;const Ce=de??!he.expanded[J];Ce!==!!he.expanded[J]&&(he.expanded[J]=Ce,_e&&c.commit(Q??`toggle:${z}:${J}`))}function ge(z,J,de=!0,_e){const Q=O(z);Q&&(Q.config=tn(J),de&&c.commit(_e))}function re(z,J,de,_e=!0){const Q=O(z);if(!Q)return;const he=Q.fields[J];if(he.some(Ce=>Ce.name===de)){console.warn(`[addField] field "${de}" already exists on ${J}.`);return}he.push({id:bo("field"),name:de}),J==="input"?Q.fields.input=he:Q.fields.output=he,_e&&c.commit()}function q(z,J,de,_e=!0){const Q=O(z);if(!Q)return;const he=Q.fields.input,Ce=Q.fields.output,pe=he.find(me=>me.id===J)??Ce.find(me=>me.id===J);pe&&(pe.name=de,_e&&c.commit())}function ae(z,J,de=!0,_e=!0){const Q=O(z);if(!Q)return;const he=Q.fields.input,Ce=Q.fields.output,pe=he.findIndex(st=>st.id===J);pe>=0&&he.splice(pe,1);const me=Ce.findIndex(st=>st.id===J);me>=0&&Ce.splice(me,1),Q.fields.input=he,Q.fields.output=Ce,de&&(r.value.edges=r.value.edges.filter(st=>st.sourceField!==J&&st.targetField!==J));const He=P();He.ok||console.warn("[removeField] topology invalid:",He.errors.join("; ")),_e&&c.commit()}function ce(z,J=!0){const de=C(z),_e=x(de);if(!_e.ok){console.warn("[connectEdge] invalid connection:",_e.errors.join("; "));return}const Q={id:bo("edge"),...de};r.value.edges.push(Q);const he=P();if(!he.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",he.errors.join("; "));return}return J&&c.commit(),Q.id}function $(z,J,de=!0){A(z,!1),ce(J,!1),de&&c.commit()}function A(z,J=!0){const de=r.value.edges.findIndex(he=>he.id===z);if(de<0)return;const _e=r.value.edges[de];r.value.edges.splice(de,1);const Q=P();if(!Q.ok){r.value.edges.splice(de,0,_e),console.warn("[disconnectEdge] topology invalid:",Q.errors.join("; "));return}J&&c.commit()}function B(z,J=!0){const de=M(z);for(const _e of de)A(_e.id,!1);J&&c.commit()}function R(z,J=!0){const de=D(z);for(const _e of de)A(_e.id,!1);J&&c.commit()}function ne(){var J,de,_e,Q,he;const z=[];for(const Ce of r.value.nodes){if(Nt(Ce.type))continue;let pe;const me={};let He;const st={};for(const ke of r.value.edges.filter(we=>we.target===Ce.id)){const we=O(ke.source);if(!we)continue;const be=(J=_n(we,"output",ke.sourceField))==null?void 0:J.name,Se=be?`${we.name}.${be}`:we.name,Oe=(de=_n(Ce,"input",ke.targetField))==null?void 0:de.name;Oe?me[Oe]=Se:pe===void 0&&(pe=Se)}for(const ke of r.value.edges.filter(we=>we.source===Ce.id)){const we=O(ke.target);if(!we)continue;const be=we.type;if(!Nt(be)||!((_e=ei[be].io)!=null&&_e.input))continue;const Se=(Q=_n(we,"input",ke.targetField))==null?void 0:Q.name,Oe=Se?`${we.name}.${Se}`:we.name,xe=(he=_n(Ce,"output",ke.sourceField))==null?void 0:he.name;xe?st[xe]=Oe:He===void 0&&(He=Oe)}const pt={...tn(Ce.config),name:Ce.name,type:Ce.type},un=Qo(Ce.type);if(un.length)for(const ke of un){const we=pt[ke];if(!Array.isArray(we))continue;const be=[];for(const Se of we){const Oe=O(Se);Oe&&be.push(Oe.name)}be.length?pt[ke]=Array.from(new Set(be)):delete pt[ke]}Object.keys(me).length>0?pt.inputs=me:pe!==void 0&&(pt.input=pe),Object.keys(st).length>0?pt.outputs=st:He!==void 0&&(pt.output=He),z.push(pt)}return z}function X(){return r.value.nodes.map(z=>tn({name:z.name,phase:z.phase,position:{...z.position},expanded:{...z.expanded},fields:{input:z.fields.input.map(J=>J.name),output:z.fields.output.map(J=>J.name)}}))}function Y(){const z={},J=k("vault");if(J){const de=m1(J.config);de&&Object.keys(de).length>0&&(z.vault=de)}if(r.value.cacheConfig){const{strategy:de,redis:_e,memory:Q}=r.value.cacheConfig;z.cache={strategy:de,redis:_e,memory:Q}}if(Object.keys(z).length!==0)return z}function K(){const z=[];for(const J of r.value.groups){const de=O(J.ownerId);if(!de)continue;const _e=J.position;_e&&z.push({name:ni(de.name,J.branch),position:{..._e}})}return z}function le(){return{nodes:X(),groups:K()}}function G(z,J){J&&c.commit(),r.value=qu(z,J),J||c.clear()}return{state:r,selection:i,portalSelection:a,modalOpen:l,skipValidation:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,configNodeCounts:m,nodeMapById:h,nodeMapByName:g,edgeMapById:_,edgeIdMapByNodeId:w,groupMapById:b,getNodeById:O,getNodeByName:k,getEdgeById:F,getEdgesByNodeId:S,getInEdgesByNodeId:M,getOutEdgesByNodeId:D,selectedNode:oe,selectNode:ie,selectPortalEdge:L,createNode:U,addNode:I,duplicateNode:V,removeNode:H,renameNode:te,moveNode:W,moveGroup:j,setGroupLayout:se,toggleExpanded:ue,replaceConfig:ge,branchGroups:N,addField:re,renameField:q,removeField:ae,connectEdge:ce,replaceConnection:$,disconnectEdge:A,disconnectInEdges:B,disconnectOutEdges:R,toConfigNodes:ne,toUINodes:X,toUIGroups:K,toUIData:le,load:G,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:v,isValidVueFlowConnection:T,validateGraph:()=>P(),clearPendingLayout:u,setPendingFitView:p}});function Ye(){const e=k1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const{t:C1}=Ze.createI18n("en-us",it),ri=je.createGlobalState(()=>{const e=je.useLocalStorage("datakit-editor-mode","flow"),n=je.useLocalStorage("datakit-editor-sidebar-expanded",!0),o=je.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:e,sidePanelExpanded:n,responsePanelCollapsed:o}});function E1({enabled:e,confirm:n}){no.onBeforeRouteLeave(()=>t.toValue(e)?n?n():window.confirm(C1("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=r=>{t.toValue(e)&&r.preventDefault()};je.useEventListener("beforeunload",o)}function ii(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function nn(e){return typeof e=="function"?e():t.unref(e)}const N1=typeof window<"u"&&typeof document<"u",x1=e=>typeof e<"u",S1=Object.prototype.toString,v1=e=>S1.call(e)==="[object Object]",A1=()=>{};function I1(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 Wu=e=>e();function T1(e=Wu){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 Xu(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function P1(e,n,o={}){const{eventFilter:r=Wu,...i}=o;return t.watch(e,I1(r,n),i)}function ko(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=T1(r);return{stop:P1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function O1(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=nn(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 bl(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:g}={}){let y=null;const w=[new Promise(b=>{y=t.watch(e,E=>{u(E)!==n&&(y==null||y(),b(E))},{flush:p,deep:m,immediate:!0})})];return h!=null&&w.push(Xu(h,g).then(()=>nn(e)).finally(()=>y==null?void 0:y())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(E=>E===u,p);const{flush:m="sync",deep:h=!1,timeout:g,throwOnTimeout:y}=p??{};let _=null;const b=[new Promise(E=>{_=t.watch([e,u],([N,C])=>{n!==(N===C)&&(_==null||_(),E(N))},{flush:m,deep:h,immediate:!0})})];return g!=null&&b.push(Xu(g,y).then(()=>nn(e)).finally(()=>(_==null||_(),nn(e)))),Promise.race(b)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const h=Array.from(m);return h.includes(u)||h.includes(nn(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(nn(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return bl(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return bl(e,!n)}}}function wl(e){return bl(e)}function $1(e){var n;const o=nn(e);return(n=o==null?void 0:o.$el)!=null?n:o}const Zu=N1?window:void 0;function Ju(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=Zu):[n,o,r,i]=e,!n)return A1;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(()=>[$1(n),nn(i)],([f,u])=>{if(l(),!f)return;const p=v1(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return ii(d),d}function B1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Qu(...e){let n,o,r={};e.length===3?(n=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(n=!0,o=e[0],r=e[1]):(n=e[0],o=e[1]):(n=!0,o=e[0]);const{target:i=Zu,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=B1(n);return Ju(i,a,f=>{f.repeat&&nn(s)||c(f)&&o(f)},l)}function V1(e){return JSON.parse(JSON.stringify(e))}function kl(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.getCurrentInstance(),h=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let g=d;n||(n="modelValue"),g=g||`update:${n.toString()}`;const y=b=>s?typeof s=="function"?s(b):V1(b):b,_=()=>x1(e[n])?y(e[n]):u,w=b=>{p?p(b)&&h(g,b):h(g,b)};if(c){const b=_(),E=t.ref(b);let N=!1;return t.watch(()=>e[n],C=>{N||(N=!0,E.value=y(C),t.nextTick(()=>N=!1))}),t.watch(E,C=>{!N&&(C!==e[n]||f)&&w(C)},{deep:f}),E}else return t.computed({get(){return _()},set(b){w(b)}})}var R1={value:()=>{}};function ai(){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 li(o)}function li(e){this._=e}function D1(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}})}li.prototype=ai.prototype={constructor:li,on:function(e,n){var o=this._,r=D1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=M1(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]=ef(o[i],e.name,n);else if(n==null)for(i in o)o[i]=ef(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 li(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 M1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function ef(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=R1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var Cl="http://www.w3.org/1999/xhtml";const tf={svg:"http://www.w3.org/2000/svg",xhtml:Cl,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function si(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),tf.hasOwnProperty(n)?{space:tf[n],local:e}:e}function L1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===Cl&&n.documentElement.namespaceURI===Cl?n.createElement(e):n.createElementNS(o,e)}}function F1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function nf(e){var n=si(e);return(n.local?F1:L1)(n)}function U1(){}function El(e){return e==null?U1:function(){return this.querySelector(e)}}function K1(e){typeof e!="function"&&(e=El(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 xt(r,this._parents)}function j1(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function G1(){return[]}function of(e){return e==null?G1:function(){return this.querySelectorAll(e)}}function q1(e){return function(){return j1(e.apply(this,arguments))}}function z1(e){typeof e=="function"?e=q1(e):e=of(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 xt(r,i)}function rf(e){return function(){return this.matches(e)}}function af(e){return function(n){return n.matches(e)}}var H1=Array.prototype.find;function Y1(e){return function(){return H1.call(this.children,e)}}function W1(){return this.firstElementChild}function X1(e){return this.select(e==null?W1:Y1(typeof e=="function"?e:af(e)))}var Z1=Array.prototype.filter;function J1(){return Array.from(this.children)}function Q1(e){return function(){return Z1.call(this.children,e)}}function ex(e){return this.selectAll(e==null?J1:Q1(typeof e=="function"?e:af(e)))}function tx(e){typeof e!="function"&&(e=rf(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 xt(r,this._parents)}function lf(e){return new Array(e.length)}function nx(){return new xt(this._enter||this._groups.map(lf),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 ox(e){return function(){return e}}function rx(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 ix(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 ax(e){return e.__data__}function lx(e,n){if(!arguments.length)return Array.from(this,ax);var o=n?ix:rx,r=this._parents,i=this._groups;typeof e!="function"&&(e=ox(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=sx(e.call(f,f&&f.__data__,d,r)),h=m.length,g=s[d]=new Array(h),y=l[d]=new Array(h),_=c[d]=new Array(p);o(f,u,g,y,_,m,n);for(var w=0,b=0,E,N;w<h;++w)if(E=g[w]){for(w>=b&&(b=w+1);!(N=y[b])&&++b<h;);E._next=N||null}}return l=new xt(l,r),l._enter=s,l._exit=c,l}function sx(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function cx(){return new xt(this._exit||this._groups.map(lf),this._parents)}function dx(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 ux(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],f=r[c],u=d.length,p=s[c]=new Array(u),m,h=0;h<u;++h)(m=d[h]||f[h])&&(p[h]=m);for(;c<i;++c)s[c]=o[c];return new xt(s,this._parents)}function fx(){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 px(e){e||(e=mx);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 xt(i,this._parents).order()}function mx(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function gx(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function hx(){return Array.from(this)}function yx(){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 _x(){let e=0;for(const n of this)++e;return e}function bx(){return!this.node()}function wx(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 kx(e){return function(){this.removeAttribute(e)}}function Cx(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Ex(e,n){return function(){this.setAttribute(e,n)}}function Nx(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function xx(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function Sx(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 vx(e,n){var o=si(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?Cx:kx:typeof n=="function"?o.local?Sx:xx:o.local?Nx:Ex)(o,n))}function sf(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Ax(e){return function(){this.style.removeProperty(e)}}function Ix(e,n,o){return function(){this.style.setProperty(e,n,o)}}function Tx(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function Px(e,n,o){return arguments.length>1?this.each((n==null?Ax:typeof n=="function"?Tx:Ix)(e,n,o??"")):Co(this.node(),e)}function Co(e,n){return e.style.getPropertyValue(n)||sf(e).getComputedStyle(e,null).getPropertyValue(n)}function Ox(e){return function(){delete this[e]}}function $x(e,n){return function(){this[e]=n}}function Bx(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function Vx(e,n){return arguments.length>1?this.each((n==null?Ox:typeof n=="function"?Bx:$x)(e,n)):this.node()[e]}function cf(e){return e.trim().split(/^|\s+/)}function Nl(e){return e.classList||new df(e)}function df(e){this._node=e,this._names=cf(e.getAttribute("class")||"")}df.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 uf(e,n){for(var o=Nl(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function ff(e,n){for(var o=Nl(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Rx(e){return function(){uf(this,e)}}function Dx(e){return function(){ff(this,e)}}function Mx(e,n){return function(){(n.apply(this,arguments)?uf:ff)(this,e)}}function Lx(e,n){var o=cf(e+"");if(arguments.length<2){for(var r=Nl(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?Mx:n?Rx:Dx)(o,n))}function Fx(){this.textContent=""}function Ux(e){return function(){this.textContent=e}}function Kx(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function jx(e){return arguments.length?this.each(e==null?Fx:(typeof e=="function"?Kx:Ux)(e)):this.node().textContent}function Gx(){this.innerHTML=""}function qx(e){return function(){this.innerHTML=e}}function zx(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function Hx(e){return arguments.length?this.each(e==null?Gx:(typeof e=="function"?zx:qx)(e)):this.node().innerHTML}function Yx(){this.nextSibling&&this.parentNode.appendChild(this)}function Wx(){return this.each(Yx)}function Xx(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Zx(){return this.each(Xx)}function Jx(e){var n=typeof e=="function"?e:nf(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function Qx(){return null}function eS(e,n){var o=typeof e=="function"?e:nf(e),r=n==null?Qx:typeof n=="function"?n:El(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function tS(){var e=this.parentNode;e&&e.removeChild(this)}function nS(){return this.each(tS)}function oS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function rS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function iS(e){return this.select(e?rS:oS)}function aS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function lS(e){return function(n){e.call(this,n,this.__data__)}}function sS(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 cS(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 dS(e,n,o){return function(){var r=this.__on,i,a=lS(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 uS(e,n,o){var r=sS(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?dS:cS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function pf(e,n,o){var r=sf(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 fS(e,n){return function(){return pf(this,e,n)}}function pS(e,n){return function(){return pf(this,e,n.apply(this,arguments))}}function mS(e,n){return this.each((typeof n=="function"?pS:fS)(e,n))}function*gS(){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 mf=[null];function xt(e,n){this._groups=e,this._parents=n}function er(){return new xt([[document.documentElement]],mf)}function hS(){return this}xt.prototype=er.prototype={constructor:xt,select:K1,selectAll:z1,selectChild:X1,selectChildren:ex,filter:tx,data:lx,enter:nx,exit:cx,join:dx,merge:ux,selection:hS,order:fx,sort:px,call:gx,nodes:hx,node:yx,size:_x,empty:bx,each:wx,attr:vx,style:Px,property:Vx,classed:Lx,text:jx,html:Hx,raise:Wx,lower:Zx,append:Jx,insert:eS,remove:nS,clone:iS,datum:aS,on:uS,dispatch:mS,[Symbol.iterator]:gS};function Vt(e){return typeof e=="string"?new xt([[document.querySelector(e)]],[document.documentElement]):new xt([[e]],mf)}function yS(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Ut(e,n){if(e=yS(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 _S={passive:!1},tr={capture:!0,passive:!1};function xl(e){e.stopImmediatePropagation()}function Eo(e){e.preventDefault(),e.stopImmediatePropagation()}function gf(e){var n=e.document.documentElement,o=Vt(e).on("dragstart.drag",Eo,tr);"onselectstart"in n?o.on("selectstart.drag",Eo,tr):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function hf(e,n){var o=e.document.documentElement,r=Vt(e).on("dragstart.drag",null);n&&(r.on("click.drag",Eo,tr),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 di=e=>()=>e;function Sl(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}})}Sl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function bS(e){return!e.ctrlKey&&!e.button}function wS(){return this.parentNode}function kS(e,n){return n??{x:e.x,y:e.y}}function CS(){return navigator.maxTouchPoints||"ontouchstart"in this}function ES(){var e=bS,n=wS,o=kS,r=CS,i={},a=ai("start","drag","end"),l=0,s,c,d,f,u=0;function p(E){E.on("mousedown.drag",m).filter(r).on("touchstart.drag",y).on("touchmove.drag",_,_S).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(E,N){if(!(f||!e.call(this,E,N))){var C=b(this,n.call(this,E,N),E,N,"mouse");C&&(Vt(E.view).on("mousemove.drag",h,tr).on("mouseup.drag",g,tr),gf(E.view),xl(E),d=!1,s=E.clientX,c=E.clientY,C("start",E))}}function h(E){if(Eo(E),!d){var N=E.clientX-s,C=E.clientY-c;d=N*N+C*C>u}i.mouse("drag",E)}function g(E){Vt(E.view).on("mousemove.drag mouseup.drag",null),hf(E.view,d),Eo(E),i.mouse("end",E)}function y(E,N){if(e.call(this,E,N)){var C=E.changedTouches,x=n.call(this,E,N),P=C.length,v,T;for(v=0;v<P;++v)(T=b(this,x,E,N,C[v].identifier,C[v]))&&(xl(E),T("start",E,C[v]))}}function _(E){var N=E.changedTouches,C=N.length,x,P;for(x=0;x<C;++x)(P=i[N[x].identifier])&&(Eo(E),P("drag",E,N[x]))}function w(E){var N=E.changedTouches,C=N.length,x,P;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),x=0;x<C;++x)(P=i[N[x].identifier])&&(xl(E),P("end",E,N[x]))}function b(E,N,C,x,P,v){var T=a.copy(),O=Ut(v||C,N),k,F,S;if((S=o.call(E,new Sl("beforestart",{sourceEvent:C,target:p,identifier:P,active:l,x:O[0],y:O[1],dx:0,dy:0,dispatch:T}),x))!=null)return k=S.x-O[0]||0,F=S.y-O[1]||0,function M(D,oe,ie){var L=O,U;switch(D){case"start":i[P]=M,U=l++;break;case"end":delete i[P],--l;case"drag":O=Ut(ie||oe,N),U=l;break}T.call(D,E,new Sl(D,{sourceEvent:oe,subject:S,target:p,identifier:P,active:U,x:O[0]+k,y:O[1]+F,dx:O[0]-L[0],dy:O[1]-L[1],dispatch:T}),x)}}return p.filter=function(E){return arguments.length?(e=typeof E=="function"?E:di(!!E),p):e},p.container=function(E){return arguments.length?(n=typeof E=="function"?E:di(E),p):n},p.subject=function(E){return arguments.length?(o=typeof E=="function"?E:di(E),p):o},p.touchable=function(E){return arguments.length?(r=typeof E=="function"?E:di(!!E),p):r},p.on=function(){var E=a.on.apply(a,arguments);return E===a?p:E},p.clickDistance=function(E){return arguments.length?(u=(E=+E)*E,p):Math.sqrt(u)},p}function vl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function yf(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function nr(){}var or=.7,ui=1/or,No="\\s*([+-]?\\d+)\\s*",rr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Kt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",NS=/^#([0-9a-f]{3,8})$/,xS=new RegExp(`^rgb\\(${No},${No},${No}\\)$`),SS=new RegExp(`^rgb\\(${Kt},${Kt},${Kt}\\)$`),vS=new RegExp(`^rgba\\(${No},${No},${No},${rr}\\)$`),AS=new RegExp(`^rgba\\(${Kt},${Kt},${Kt},${rr}\\)$`),IS=new RegExp(`^hsl\\(${rr},${Kt},${Kt}\\)$`),TS=new RegExp(`^hsla\\(${rr},${Kt},${Kt},${rr}\\)$`),_f={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};vl(nr,Fn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:bf,formatHex:bf,formatHex8:PS,formatHsl:OS,formatRgb:wf,toString:wf});function bf(){return this.rgb().formatHex()}function PS(){return this.rgb().formatHex8()}function OS(){return xf(this).formatHsl()}function wf(){return this.rgb().formatRgb()}function Fn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=NS.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?kf(n):o===3?new Et(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?fi(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?fi(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=xS.exec(e))?new Et(n[1],n[2],n[3],1):(n=SS.exec(e))?new Et(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=vS.exec(e))?fi(n[1],n[2],n[3],n[4]):(n=AS.exec(e))?fi(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=IS.exec(e))?Nf(n[1],n[2]/100,n[3]/100,1):(n=TS.exec(e))?Nf(n[1],n[2]/100,n[3]/100,n[4]):_f.hasOwnProperty(e)?kf(_f[e]):e==="transparent"?new Et(NaN,NaN,NaN,0):null}function kf(e){return new Et(e>>16&255,e>>8&255,e&255,1)}function fi(e,n,o,r){return r<=0&&(e=n=o=NaN),new Et(e,n,o,r)}function $S(e){return e instanceof nr||(e=Fn(e)),e?(e=e.rgb(),new Et(e.r,e.g,e.b,e.opacity)):new Et}function Al(e,n,o,r){return arguments.length===1?$S(e):new Et(e,n,o,r??1)}function Et(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}vl(Et,Al,yf(nr,{brighter(e){return e=e==null?ui:Math.pow(ui,e),new Et(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?or:Math.pow(or,e),new Et(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Et(Un(this.r),Un(this.g),Un(this.b),pi(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Cf,formatHex:Cf,formatHex8:BS,formatRgb:Ef,toString:Ef}));function Cf(){return`#${Kn(this.r)}${Kn(this.g)}${Kn(this.b)}`}function BS(){return`#${Kn(this.r)}${Kn(this.g)}${Kn(this.b)}${Kn((isNaN(this.opacity)?1:this.opacity)*255)}`}function Ef(){const e=pi(this.opacity);return`${e===1?"rgb(":"rgba("}${Un(this.r)}, ${Un(this.g)}, ${Un(this.b)}${e===1?")":`, ${e})`}`}function pi(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Un(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Kn(e){return e=Un(e),(e<16?"0":"")+e.toString(16)}function Nf(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Rt(e,n,o,r)}function xf(e){if(e instanceof Rt)return new Rt(e.h,e.s,e.l,e.opacity);if(e instanceof nr||(e=Fn(e)),!e)return new Rt;if(e instanceof Rt)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 Rt(l,s,c,e.opacity)}function VS(e,n,o,r){return arguments.length===1?xf(e):new Rt(e,n,o,r??1)}function Rt(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}vl(Rt,VS,yf(nr,{brighter(e){return e=e==null?ui:Math.pow(ui,e),new Rt(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?or:Math.pow(or,e),new Rt(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 Et(Il(e>=240?e-240:e+120,i,r),Il(e,i,r),Il(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Rt(Sf(this.h),mi(this.s),mi(this.l),pi(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=pi(this.opacity);return`${e===1?"hsl(":"hsla("}${Sf(this.h)}, ${mi(this.s)*100}%, ${mi(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Sf(e){return e=(e||0)%360,e<0?e+360:e}function mi(e){return Math.max(0,Math.min(1,e||0))}function Il(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 Tl=e=>()=>e;function RS(e,n){return function(o){return e+o*n}}function DS(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 MS(e){return(e=+e)==1?vf:function(n,o){return o-n?DS(n,o,e):Tl(isNaN(n)?o:n)}}function vf(e,n){var o=n-e;return o?RS(e,o):Tl(isNaN(e)?n:e)}const gi=function e(n){var o=MS(n);function r(i,a){var l=o((i=Al(i)).r,(a=Al(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=vf(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 LS(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 FS(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function US(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]=ir(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 KS(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function jt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function jS(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]=ir(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Pl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ol=new RegExp(Pl.source,"g");function GS(e){return function(){return e}}function qS(e){return function(n){return e(n)+""}}function Af(e,n){var o=Pl.lastIndex=Ol.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=Pl.exec(e))&&(i=Ol.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:jt(r,i)})),o=Ol.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?qS(c[0].x):GS(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 ir(e,n){var o=typeof n,r;return n==null||o==="boolean"?Tl(n):(o==="number"?jt:o==="string"?(r=Fn(n))?(n=r,gi):Af:n instanceof Fn?gi:n instanceof Date?KS:FS(n)?LS:Array.isArray(n)?US:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?jS:jt)(e,n)}var If=180/Math.PI,$l={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Tf(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)*If,skewX:Math.atan(c)*If,scaleX:l,scaleY:s}}var hi;function zS(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?$l:Tf(n.a,n.b,n.c,n.d,n.e,n.f)}function HS(e){return e==null||(hi||(hi=document.createElementNS("http://www.w3.org/2000/svg","g")),hi.setAttribute("transform",e),!(e=hi.transform.baseVal.consolidate()))?$l:(e=e.matrix,Tf(e.a,e.b,e.c,e.d,e.e,e.f))}function Pf(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,h){if(d!==u||f!==p){var g=m.push("translate(",null,n,null,o);h.push({i:g-4,x:jt(d,u)},{i:g-2,x:jt(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:jt(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:jt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var g=m.push(i(m)+"scale(",null,",",null,")");h.push({i:g-4,x:jt(d,u)},{i:g-2,x:jt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var h=-1,g=p.length,y;++h<g;)u[(y=p[h]).i]=y.x(m);return u.join("")}}}var YS=Pf(zS,"px, ","px)","deg)"),WS=Pf(HS,", ",")",")"),XS=1e-12;function Of(e){return((e=Math.exp(e))+1/e)/2}function ZS(e){return((e=Math.exp(e))-1/e)/2}function JS(e){return((e=Math.exp(2*e))-1)/(e+1)}const yi=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,h=u-c,g=m*m+h*h,y,_;if(g<XS)_=Math.log(p/d)/n,y=function(x){return[s+x*m,c+x*h,d*Math.exp(n*x*_)]};else{var w=Math.sqrt(g),b=(p*p-d*d+r*g)/(2*d*o*w),E=(p*p-d*d-r*g)/(2*p*o*w),N=Math.log(Math.sqrt(b*b+1)-b),C=Math.log(Math.sqrt(E*E+1)-E);_=(C-N)/n,y=function(x){var P=x*_,v=Of(N),T=d/(o*w)*(v*JS(n*P+N)-ZS(N));return[s+T*m,c+T*h,d*v/Of(n*P+N)]}}return y.duration=_*1e3*n/Math.SQRT2,y}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var xo=0,ar=0,lr=0,$f=1e3,_i,sr,bi=0,jn=0,wi=0,cr=typeof performance=="object"&&performance.now?performance:Date,Bf=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Bl(){return jn||(Bf(QS),jn=cr.now()+wi)}function QS(){jn=0}function ki(){this._call=this._time=this._next=null}ki.prototype=Vf.prototype={constructor:ki,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Bl():+o)+(n==null?0:+n),!this._next&&sr!==this&&(sr?sr._next=this:_i=this,sr=this),this._call=e,this._time=o,Vl()},stop:function(){this._call&&(this._call=null,this._time=1/0,Vl())}};function Vf(e,n,o){var r=new ki;return r.restart(e,n,o),r}function ev(){Bl(),++xo;for(var e=_i,n;e;)(n=jn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--xo}function Rf(){jn=(bi=cr.now())+wi,xo=ar=0;try{ev()}finally{xo=0,nv(),jn=0}}function tv(){var e=cr.now(),n=e-bi;n>$f&&(wi-=n,bi=e)}function nv(){for(var e,n=_i,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:_i=o);sr=e,Vl(r)}function Vl(e){if(!xo){ar&&(ar=clearTimeout(ar));var n=e-jn;n>24?(e<1/0&&(ar=setTimeout(Rf,e-cr.now()-wi)),lr&&(lr=clearInterval(lr))):(lr||(bi=cr.now(),lr=setInterval(tv,$f)),xo=1,Bf(Rf))}}function Df(e,n,o){var r=new ki;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var ov=ai("start","end","cancel","interrupt"),rv=[],Mf=0,Lf=1,Rl=2,Ci=3,Ff=4,Dl=5,Ei=6;function Ni(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;iv(e,o,{name:n,index:r,group:i,on:ov,tween:rv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Mf})}function Ml(e,n){var o=Dt(e,n);if(o.state>Mf)throw new Error("too late; already scheduled");return o}function Gt(e,n){var o=Dt(e,n);if(o.state>Ci)throw new Error("too late; already running");return o}function Dt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function iv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=Vf(a,0,o.time);function a(d){o.state=Lf,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!==Lf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Ci)return Df(l);m.state===Ff?(m.state=Ei,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=Ei,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Df(function(){o.state===Ci&&(o.state=Ff,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Rl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Rl){for(o.state=Ci,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=Dl,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===Dl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Ei,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function xi(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>Rl&&r.state<Dl,r.state=Ei,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function av(e){return this.each(function(){xi(this,e)})}function lv(e,n){var o,r;return function(){var i=Gt(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 sv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=Gt(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 cv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Dt(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?lv:sv)(o,e,n))}function Ll(e,n,o){var r=e._id;return e.each(function(){var i=Gt(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return Dt(i,r).value[n]}}function Uf(e,n){var o;return(typeof n=="number"?jt:n instanceof Fn?gi:(o=Fn(n))?(n=o,gi):Af)(e,n)}function dv(e){return function(){this.removeAttribute(e)}}function uv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function fv(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 pv(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 mv(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 gv(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 hv(e,n){var o=si(e),r=o==="transform"?WS:Uf;return this.attrTween(e,typeof n=="function"?(o.local?gv:mv)(o,r,Ll(this,"attr."+e,n)):n==null?(o.local?uv:dv)(o):(o.local?pv:fv)(o,r,n))}function yv(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function _v(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function bv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&_v(e,a)),o}return i._value=n,i}function wv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&yv(e,a)),o}return i._value=n,i}function kv(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=si(e);return this.tween(o,(r.local?bv:wv)(r,n))}function Cv(e,n){return function(){Ml(this,e).delay=+n.apply(this,arguments)}}function Ev(e,n){return n=+n,function(){Ml(this,e).delay=n}}function Nv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Cv:Ev)(n,e)):Dt(this.node(),n).delay}function xv(e,n){return function(){Gt(this,e).duration=+n.apply(this,arguments)}}function Sv(e,n){return n=+n,function(){Gt(this,e).duration=n}}function vv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?xv:Sv)(n,e)):Dt(this.node(),n).duration}function Av(e,n){if(typeof n!="function")throw new Error;return function(){Gt(this,e).ease=n}}function Iv(e){var n=this._id;return arguments.length?this.each(Av(n,e)):Dt(this.node(),n).ease}function Tv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;Gt(this,e).ease=o}}function Pv(e){if(typeof e!="function")throw new Error;return this.each(Tv(this._id,e))}function Ov(e){typeof e!="function"&&(e=rf(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 on(r,this._parents,this._name,this._id)}function $v(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 on(l,this._parents,this._name,this._id)}function Bv(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 Vv(e,n,o){var r,i,a=Bv(n)?Ml:Gt;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Rv(e,n){var o=this._id;return arguments.length<2?Dt(this.node(),o).on.on(e):this.each(Vv(o,e,n))}function Dv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Mv(){return this.on("end.remove",Dv(this._id))}function Lv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=El(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,Ni(d[p],n,o,p,d,Dt(f,o)));return new on(a,this._parents,n,o)}function Fv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=of(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,h=Dt(f,o),g=0,y=p.length;g<y;++g)(m=p[g])&&Ni(m,n,o,g,p,h);a.push(p),l.push(f)}return new on(a,l,n,o)}var Uv=er.prototype.constructor;function Kv(){return new Uv(this._groups,this._parents)}function jv(e,n){var o,r,i;return function(){var a=Co(this,e),l=(this.style.removeProperty(e),Co(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Kf(e){return function(){this.style.removeProperty(e)}}function Gv(e,n,o){var r,i=o+"",a;return function(){var l=Co(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function qv(e,n,o){var r,i,a;return function(){var l=Co(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Co(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function zv(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=Gt(this,e),d=c.on,f=c.value[a]==null?s||(s=Kf(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function Hv(e,n,o){var r=(e+="")=="transform"?YS:Uf;return n==null?this.styleTween(e,jv(e,r)).on("end.style."+e,Kf(e)):typeof n=="function"?this.styleTween(e,qv(e,r,Ll(this,"style."+e,n))).each(zv(this._id,e)):this.styleTween(e,Gv(e,r,n),o).on("end.style."+e,null)}function Yv(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function Wv(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&Yv(e,l,o)),r}return a._value=n,a}function Xv(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,Wv(e,n,o??""))}function Zv(e){return function(){this.textContent=e}}function Jv(e){return function(){var n=e(this);this.textContent=n??""}}function Qv(e){return this.tween("text",typeof e=="function"?Jv(Ll(this,"text",e)):Zv(e==null?"":e+""))}function eA(e){return function(n){this.textContent=e.call(this,n)}}function tA(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&eA(i)),n}return r._value=e,r}function nA(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,tA(e))}function oA(){for(var e=this._name,n=this._id,o=jf(),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=Dt(c,n);Ni(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new on(r,this._parents,e,o)}function rA(){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=Gt(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 iA=0;function on(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function jf(){return++iA}var rn=er.prototype;on.prototype={constructor:on,select:Lv,selectAll:Fv,selectChild:rn.selectChild,selectChildren:rn.selectChildren,filter:Ov,merge:$v,selection:Kv,transition:oA,call:rn.call,nodes:rn.nodes,node:rn.node,size:rn.size,empty:rn.empty,each:rn.each,on:Rv,attr:hv,attrTween:kv,style:Hv,styleTween:Xv,text:Qv,textTween:nA,remove:Mv,tween:cv,delay:Nv,duration:vv,ease:Iv,easeVarying:Pv,end:rA,[Symbol.iterator]:rn[Symbol.iterator]};function aA(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var lA={time:null,delay:0,duration:250,ease:aA};function sA(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 cA(e){var n,o;e instanceof on?(n=e._id,e=e._name):(n=jf(),(o=lA).time=Bl(),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])&&Ni(c,e,n,d,l,o||sA(c,n));return new on(r,this._parents,e,n)}er.prototype.interrupt=av,er.prototype.transition=cA;const Si=e=>()=>e;function dA(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 an(e,n,o){this.k=e,this.x=n,this.y=o}an.prototype={constructor:an,scale:function(e){return e===1?this:new an(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new an(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 So=new an(1,0,0);an.prototype;function Fl(e){e.stopImmediatePropagation()}function dr(e){e.preventDefault(),e.stopImmediatePropagation()}function uA(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function fA(){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 Gf(){return this.__zoom||So}function pA(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function mA(){return navigator.maxTouchPoints||"ontouchstart"in this}function gA(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 hA(){var e=uA,n=fA,o=gA,r=pA,i=mA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=yi,d=ai("start","zoom","end"),f,u,p,m=500,h=150,g=0,y=10;function _(S){S.property("__zoom",Gf).on("wheel.zoom",P,{passive:!1}).on("mousedown.zoom",v).on("dblclick.zoom",T).filter(i).on("touchstart.zoom",O).on("touchmove.zoom",k).on("touchend.zoom touchcancel.zoom",F).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(S,M,D,oe){var ie=S.selection?S.selection():S;ie.property("__zoom",Gf),S!==ie?N(S,M,D,oe):ie.interrupt().each(function(){C(this,arguments).event(oe).start().zoom(null,typeof M=="function"?M.apply(this,arguments):M).end()})},_.scaleBy=function(S,M,D,oe){_.scaleTo(S,function(){var ie=this.__zoom.k,L=typeof M=="function"?M.apply(this,arguments):M;return ie*L},D,oe)},_.scaleTo=function(S,M,D,oe){_.transform(S,function(){var ie=n.apply(this,arguments),L=this.__zoom,U=D==null?E(ie):typeof D=="function"?D.apply(this,arguments):D,I=L.invert(U),V=typeof M=="function"?M.apply(this,arguments):M;return o(b(w(L,V),U,I),ie,l)},D,oe)},_.translateBy=function(S,M,D,oe){_.transform(S,function(){return o(this.__zoom.translate(typeof M=="function"?M.apply(this,arguments):M,typeof D=="function"?D.apply(this,arguments):D),n.apply(this,arguments),l)},null,oe)},_.translateTo=function(S,M,D,oe,ie){_.transform(S,function(){var L=n.apply(this,arguments),U=this.__zoom,I=oe==null?E(L):typeof oe=="function"?oe.apply(this,arguments):oe;return o(So.translate(I[0],I[1]).scale(U.k).translate(typeof M=="function"?-M.apply(this,arguments):-M,typeof D=="function"?-D.apply(this,arguments):-D),L,l)},oe,ie)};function w(S,M){return M=Math.max(a[0],Math.min(a[1],M)),M===S.k?S:new an(M,S.x,S.y)}function b(S,M,D){var oe=M[0]-D[0]*S.k,ie=M[1]-D[1]*S.k;return oe===S.x&&ie===S.y?S:new an(S.k,oe,ie)}function E(S){return[(+S[0][0]+ +S[1][0])/2,(+S[0][1]+ +S[1][1])/2]}function N(S,M,D,oe){S.on("start.zoom",function(){C(this,arguments).event(oe).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(oe).end()}).tween("zoom",function(){var ie=this,L=arguments,U=C(ie,L).event(oe),I=n.apply(ie,L),V=D==null?E(I):typeof D=="function"?D.apply(ie,L):D,H=Math.max(I[1][0]-I[0][0],I[1][1]-I[0][1]),te=ie.__zoom,W=typeof M=="function"?M.apply(ie,L):M,j=c(te.invert(V).concat(H/te.k),W.invert(V).concat(H/W.k));return function(se){if(se===1)se=W;else{var ue=j(se),ge=H/ue[2];se=new an(ge,V[0]-ue[0]*ge,V[1]-ue[1]*ge)}U.zoom(null,se)}})}function C(S,M,D){return!D&&S.__zooming||new x(S,M)}function x(S,M){this.that=S,this.args=M,this.active=0,this.sourceEvent=null,this.extent=n.apply(S,M),this.taps=0}x.prototype={event:function(S){return S&&(this.sourceEvent=S),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(S,M){return this.mouse&&S!=="mouse"&&(this.mouse[1]=M.invert(this.mouse[0])),this.touch0&&S!=="touch"&&(this.touch0[1]=M.invert(this.touch0[0])),this.touch1&&S!=="touch"&&(this.touch1[1]=M.invert(this.touch1[0])),this.that.__zoom=M,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(S){var M=Vt(this.that).datum();d.call(S,this.that,new dA(S,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:d}),M)}};function P(S,...M){if(!e.apply(this,arguments))return;var D=C(this,M).event(S),oe=this.__zoom,ie=Math.max(a[0],Math.min(a[1],oe.k*Math.pow(2,r.apply(this,arguments)))),L=Ut(S);if(D.wheel)(D.mouse[0][0]!==L[0]||D.mouse[0][1]!==L[1])&&(D.mouse[1]=oe.invert(D.mouse[0]=L)),clearTimeout(D.wheel);else{if(oe.k===ie)return;D.mouse=[L,oe.invert(L)],xi(this),D.start()}dr(S),D.wheel=setTimeout(U,h),D.zoom("mouse",o(b(w(oe,ie),D.mouse[0],D.mouse[1]),D.extent,l));function U(){D.wheel=null,D.end()}}function v(S,...M){if(p||!e.apply(this,arguments))return;var D=S.currentTarget,oe=C(this,M,!0).event(S),ie=Vt(S.view).on("mousemove.zoom",V,!0).on("mouseup.zoom",H,!0),L=Ut(S,D),U=S.clientX,I=S.clientY;gf(S.view),Fl(S),oe.mouse=[L,this.__zoom.invert(L)],xi(this),oe.start();function V(te){if(dr(te),!oe.moved){var W=te.clientX-U,j=te.clientY-I;oe.moved=W*W+j*j>g}oe.event(te).zoom("mouse",o(b(oe.that.__zoom,oe.mouse[0]=Ut(te,D),oe.mouse[1]),oe.extent,l))}function H(te){ie.on("mousemove.zoom mouseup.zoom",null),hf(te.view,oe.moved),dr(te),oe.event(te).end()}}function T(S,...M){if(e.apply(this,arguments)){var D=this.__zoom,oe=Ut(S.changedTouches?S.changedTouches[0]:S,this),ie=D.invert(oe),L=D.k*(S.shiftKey?.5:2),U=o(b(w(D,L),oe,ie),n.apply(this,M),l);dr(S),s>0?Vt(this).transition().duration(s).call(N,U,oe,S):Vt(this).call(_.transform,U,oe,S)}}function O(S,...M){if(e.apply(this,arguments)){var D=S.touches,oe=D.length,ie=C(this,M,S.changedTouches.length===oe).event(S),L,U,I,V;for(Fl(S),U=0;U<oe;++U)I=D[U],V=Ut(I,this),V=[V,this.__zoom.invert(V),I.identifier],ie.touch0?!ie.touch1&&ie.touch0[2]!==V[2]&&(ie.touch1=V,ie.taps=0):(ie.touch0=V,L=!0,ie.taps=1+!!f);f&&(f=clearTimeout(f)),L&&(ie.taps<2&&(u=V[0],f=setTimeout(function(){f=null},m)),xi(this),ie.start())}}function k(S,...M){if(this.__zooming){var D=C(this,M).event(S),oe=S.changedTouches,ie=oe.length,L,U,I,V;for(dr(S),L=0;L<ie;++L)U=oe[L],I=Ut(U,this),D.touch0&&D.touch0[2]===U.identifier?D.touch0[0]=I:D.touch1&&D.touch1[2]===U.identifier&&(D.touch1[0]=I);if(U=D.that.__zoom,D.touch1){var H=D.touch0[0],te=D.touch0[1],W=D.touch1[0],j=D.touch1[1],se=(se=W[0]-H[0])*se+(se=W[1]-H[1])*se,ue=(ue=j[0]-te[0])*ue+(ue=j[1]-te[1])*ue;U=w(U,Math.sqrt(se/ue)),I=[(H[0]+W[0])/2,(H[1]+W[1])/2],V=[(te[0]+j[0])/2,(te[1]+j[1])/2]}else if(D.touch0)I=D.touch0[0],V=D.touch0[1];else return;D.zoom("touch",o(b(U,I,V),D.extent,l))}}function F(S,...M){if(this.__zooming){var D=C(this,M).event(S),oe=S.changedTouches,ie=oe.length,L,U;for(Fl(S),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),L=0;L<ie;++L)U=oe[L],D.touch0&&D.touch0[2]===U.identifier?delete D.touch0:D.touch1&&D.touch1[2]===U.identifier&&delete D.touch1;if(D.touch1&&!D.touch0&&(D.touch0=D.touch1,delete D.touch1),D.touch0)D.touch0[1]=this.__zoom.invert(D.touch0[0]);else if(D.end(),D.taps===2&&(U=Ut(U,this),Math.hypot(u[0]-U[0],u[1]-U[1])<y)){var I=Vt(this).on("dblclick.zoom");I&&I.apply(this,arguments)}}}return _.wheelDelta=function(S){return arguments.length?(r=typeof S=="function"?S:Si(+S),_):r},_.filter=function(S){return arguments.length?(e=typeof S=="function"?S:Si(!!S),_):e},_.touchable=function(S){return arguments.length?(i=typeof S=="function"?S:Si(!!S),_):i},_.extent=function(S){return arguments.length?(n=typeof S=="function"?S:Si([[+S[0][0],+S[0][1]],[+S[1][0],+S[1][1]]]),_):n},_.scaleExtent=function(S){return arguments.length?(a[0]=+S[0],a[1]=+S[1],_):[a[0],a[1]]},_.translateExtent=function(S){return arguments.length?(l[0][0]=+S[0][0],l[1][0]=+S[1][0],l[0][1]=+S[0][1],l[1][1]=+S[1][1],_):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},_.constrain=function(S){return arguments.length?(o=S,_):o},_.duration=function(S){return arguments.length?(s=+S,_):s},_.interpolate=function(S){return arguments.length?(c=S,_):c},_.on=function(){var S=d.on.apply(d,arguments);return S===d?_:S},_.clickDistance=function(S){return arguments.length?(g=(S=+S)*S,_):Math.sqrt(g)},_.tapDistance=function(S){return arguments.length?(y=+S,_):y},_}var Ne=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(Ne||{}),Ul=(e=>(e.Partial="partial",e.Full="full",e))(Ul||{}),Gn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(Gn||{}),bn=(e=>(e.Strict="strict",e.Loose="loose",e))(bn||{}),ur=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(ur||{}),fr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(fr||{}),qf=(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))(qf||{});const yA=["INPUT","SELECT","TEXTAREA"],_A=typeof document<"u"?document:null;function Kl(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 yA.includes(r==null?void 0:r.nodeName)||i||!!a}function bA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function zf(e,n,o,r){const i=n.replace("+",`
206
210
  `).replace(`
207
211
 
208
212
  `,`
209
213
  +`).split(`
210
- `).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 hA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=yA(o.code,e);return Array.isArray(e)?e.some(i=>Kf(o[r],i,n,o.type==="keyup")):Kf(o[r],e,n,o.type==="keyup")}}function yA(e,n){return n.includes(e)?"code":"key"}function ur(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??mA),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}),Yu(["blur","contextmenu"],s),Wu((...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=gA(d),(!i||i&&!p)&&Ll(d))return;const g=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,y=(g==null?void 0:g.nodeName)==="BUTTON"||(g==null?void 0:g.nodeName)==="A";!m&&(i||!y)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Wu((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&Ll(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"?hA(d,a):d}return r}const Gf="vue-flow__node-desc",jf="vue-flow__edge-desc",_A="vue-flow__aria-live",qf=["Enter"," ","Escape"],xo={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Ni(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function xi(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 Si(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Gn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function zf(e,n){return{x:Gn(e.x,n[0][0],n[1][0]),y:Gn(e.y,n[0][1],n[1][1])}}function Hf(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function _n(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function jn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!_n(e)}function fr(e){return jn(e)&&"computedPosition"in e}function vi(e){return!Number.isNaN(e)&&Number.isFinite(e)}function bA(e){return vi(e.width)&&vi(e.height)&&vi(e.x)&&vi(e.y)}function wA(e,n,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:t.markRaw({width:0,height:0}),computedPosition:t.markRaw({z:0,...e.position}),handleBounds:{source:[],target:[]},draggable:void 0,selectable:void 0,connectable:void 0,focusable:void 0,selected:!1,dragging:!1,resizing:!1,initialized:!1,isParent:!1,position:{x:0,y:0},data:et(e.data)?e.data:{},events:t.markRaw(et(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Yf(e,n,o){var r,i;const a={id:e.id.toString(),type:e.type??(n==null?void 0:n.type)??"default",source:e.source.toString(),target:e.target.toString(),sourceHandle:(r=e.sourceHandle)==null?void 0:r.toString(),targetHandle:(i=e.targetHandle)==null?void 0:i.toString(),updatable:e.updatable??(o==null?void 0:o.updatable),selectable:e.selectable??(o==null?void 0:o.selectable),focusable:e.focusable??(o==null?void 0:o.focusable),data:et(e.data)?e.data:{},events:t.markRaw(et(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(n??a,e,{id:e.id.toString()})}function Wf(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 kA(...e){if(e.length===3){const[a,l,s]=e;return Wf(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>_n(a)&&a.source===r).map(a=>o.find(l=>jn(l)&&l.id===a.target))}function CA(...e){if(e.length===3){const[a,l,s]=e;return Wf(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>_n(a)&&a.target===r).map(a=>o.find(l=>jn(l)&&l.id===a.source))}function Xf({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function EA(e,n){return n.some(o=>_n(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 Fl({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function pr({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?Ii(s,l):s}function NA(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 Zf({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function xA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Jf(e){let n={x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};for(let o=0;o<e.length;o++){const r=e[o];n=NA(n,Zf({...r.computedPosition,...r.dimensions}))}return xA(n)}function Qf(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...pr(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=xi(a,Ni(s)),h=u===null||p===null,g=r&&m>0,y=(u??0)*(p??0);(h||g||m>=y||s.dragging)&&l.push(s)}return l}function ep(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 tp(e,n,o,r,i,a=.1,l={x:0,y:0}){const s=n/(e.width*(1+a)),c=o/(e.height*(1+a)),d=Math.min(s,c),f=Gn(d,r,i),u=e.x+e.width/2,p=e.y+e.height/2,m=n/2-u*f+(l.x??0),h=o/2-p*f+(l.y??0);return{x:m,y:h,zoom:f}}function SA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function np(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:np(o,n):!1}function mr(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function op(e,n,o){return e<n?Gn(Math.abs(e-n),1,n)/n:e>o?-Gn(Math.abs(e-o),1,n)/n:0}function rp(e,n,o=15,r=40){const i=op(e.x,r,n.width-r)*o,a=op(e.y,r,n.height-r)*o;return[i,a]}function Ul(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 ip(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(fr(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&&fr(c)&&Ul(l,c)}break;case"dimensions":if(fr(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&&fr(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Ul(l,c):t.nextTick(()=>{Ul(l,c)}))}break}return n}function bn(e,n){return{id:e,type:"select",selected:n}}function ap(e){return{item:e,type:"add"}}function lp(e){return{id:e,type:"remove"}}function sp(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function wn(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(bn(a.id,l)))}return r}function Ee(e){const n=new Set;let o=!1;const r=()=>n.size>0;e&&(o=!0,n.add(e));const i=s=>{n.delete(s)};return{on:s=>{e&&o&&n.delete(e),n.add(s);const c=()=>{i(s),e&&o&&n.add(e)};return ni(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function cp(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 vA(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!np(c,r))&&(c.draggable||n&&typeof c.draggable>"u")&&s.push(t.markRaw({id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((a=c.computedPosition)==null?void 0:a.x)||0,y:o.y-((l=c.computedPosition)==null?void 0:l.y)||0},from:c.computedPosition,extent:c.extent,parentNode:c.parentNode,dimensions:c.dimensions,expandParent:c.expandParent}));return s}function Kl({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 dp(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 AA(e,n,o){const[r,i,a,l]=typeof e!="string"?dp(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 IA(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=AA(i,e,r);a&&(i=a)}else n(new at(Qe.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=dp(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 TA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function Gl(e,n,o,r,i){const a=TA(e.dimensions,IA(e,o,r,i)),l=zf(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 So(e,n,o=Ne.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??BA(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case Ne.Top:return{x:i+l/2,y:a};case Ne.Right:return{x:i+l,y:a+s/2};case Ne.Bottom:return{x:i+l/2,y:a+s};case Ne.Left:return{x:i,y:a+s/2}}}function up(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function PA({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=Zf({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 OA(e,n,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=n(e.source),l=n(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var Qe=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(Qe||{});const fp={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 wA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=kA(o.code,e);return Array.isArray(e)?e.some(i=>zf(o[r],i,n,o.type==="keyup")):zf(o[r],e,n,o.type==="keyup")}}function kA(e,n){return n.includes(e)?"code":"key"}function pr(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??_A),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}),Ju(["blur","contextmenu"],s),Qu((...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=bA(d),(!i||i&&!p)&&Kl(d))return;const g=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,y=(g==null?void 0:g.nodeName)==="BUTTON"||(g==null?void 0:g.nodeName)==="A";!m&&(i||!y)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Qu((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&Kl(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"?wA(d,a):d}return r}const Hf="vue-flow__node-desc",Yf="vue-flow__edge-desc",CA="vue-flow__aria-live",Wf=["Enter"," ","Escape"],vo={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function vi(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Ai(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 Ii(e){return{width:e.offsetWidth,height:e.offsetHeight}}function qn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function Xf(e,n){return{x:qn(e.x,n[0][0],n[1][0]),y:qn(e.y,n[0][1],n[1][1])}}function Zf(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function wn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function zn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!wn(e)}function mr(e){return zn(e)&&"computedPosition"in e}function Ti(e){return!Number.isNaN(e)&&Number.isFinite(e)}function EA(e){return Ti(e.width)&&Ti(e.height)&&Ti(e.x)&&Ti(e.y)}function NA(e,n,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:t.markRaw({width:0,height:0}),computedPosition:t.markRaw({z:0,...e.position}),handleBounds:{source:[],target:[]},draggable:void 0,selectable:void 0,connectable:void 0,focusable:void 0,selected:!1,dragging:!1,resizing:!1,initialized:!1,isParent:!1,position:{x:0,y:0},data:tt(e.data)?e.data:{},events:t.markRaw(tt(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Jf(e,n,o){var r,i;const a={id:e.id.toString(),type:e.type??(n==null?void 0:n.type)??"default",source:e.source.toString(),target:e.target.toString(),sourceHandle:(r=e.sourceHandle)==null?void 0:r.toString(),targetHandle:(i=e.targetHandle)==null?void 0:i.toString(),updatable:e.updatable??(o==null?void 0:o.updatable),selectable:e.selectable??(o==null?void 0:o.selectable),focusable:e.focusable??(o==null?void 0:o.focusable),data:tt(e.data)?e.data:{},events:t.markRaw(tt(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(n??a,e,{id:e.id.toString()})}function Qf(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 xA(...e){if(e.length===3){const[a,l,s]=e;return Qf(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>wn(a)&&a.source===r).map(a=>o.find(l=>zn(l)&&l.id===a.target))}function SA(...e){if(e.length===3){const[a,l,s]=e;return Qf(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>wn(a)&&a.target===r).map(a=>o.find(l=>zn(l)&&l.id===a.source))}function ep({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function vA(e,n){return n.some(o=>wn(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 jl({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function gr({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?Oi(s,l):s}function AA(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 tp({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function IA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function np(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=AA(n,tp({...r.computedPosition,...r.dimensions}))}return IA(n)}function op(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...gr(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=Ai(a,vi(s)),h=u===null||p===null,g=r&&m>0,y=(u??0)*(p??0);(h||g||m>=y||s.dragging)&&l.push(s)}return l}function rp(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 ip(e,n,o,r,i,a=.1,l={x:0,y:0}){const s=n/(e.width*(1+a)),c=o/(e.height*(1+a)),d=Math.min(s,c),f=qn(d,r,i),u=e.x+e.width/2,p=e.y+e.height/2,m=n/2-u*f+(l.x??0),h=o/2-p*f+(l.y??0);return{x:m,y:h,zoom:f}}function TA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function ap(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:ap(o,n):!1}function hr(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function lp(e,n,o){return e<n?qn(Math.abs(e-n),1,n)/n:e>o?-qn(Math.abs(e-o),1,n)/n:0}function sp(e,n,o=15,r=40){const i=lp(e.x,r,n.width-r)*o,a=lp(e.y,r,n.height-r)*o;return[i,a]}function Gl(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 cp(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(mr(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&&mr(c)&&Gl(l,c)}break;case"dimensions":if(mr(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&&mr(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Gl(l,c):t.nextTick(()=>{Gl(l,c)}))}break}return n}function kn(e,n){return{id:e,type:"select",selected:n}}function dp(e){return{item:e,type:"add"}}function up(e){return{id:e,type:"remove"}}function fp(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function Cn(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(kn(a.id,l)))}return r}function Ee(e){const n=new Set;let o=!1;const r=()=>n.size>0;e&&(o=!0,n.add(e));const i=s=>{n.delete(s)};return{on:s=>{e&&o&&n.delete(e),n.add(s);const c=()=>{i(s),e&&o&&n.add(e)};return ii(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function pp(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 PA(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!ap(c,r))&&(c.draggable||n&&typeof c.draggable>"u")&&s.push(t.markRaw({id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((a=c.computedPosition)==null?void 0:a.x)||0,y:o.y-((l=c.computedPosition)==null?void 0:l.y)||0},from:c.computedPosition,extent:c.extent,parentNode:c.parentNode,dimensions:c.dimensions,expandParent:c.expandParent}));return s}function ql({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 mp(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 OA(e,n,o){const[r,i,a,l]=typeof e!="string"?mp(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 $A(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=OA(i,e,r);a&&(i=a)}else n(new lt(et.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=mp(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 BA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function zl(e,n,o,r,i){const a=BA(e.dimensions,$A(e,o,r,i)),l=Xf(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 Ao(e,n,o=Ne.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??MA(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case Ne.Top:return{x:i+l/2,y:a};case Ne.Right:return{x:i+l,y:a+s/2};case Ne.Bottom:return{x:i+l/2,y:a+s};case Ne.Left:return{x:i,y:a+s/2}}}function gp(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function VA({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=tp({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 RA(e,n,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=n(e.source),l=n(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var et=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(et||{});const hp={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
211
215
  Node: ${e}`,NODE_NOT_FOUND:e=>`Node not found
212
216
  Node: ${e}`,NODE_MISSING_PARENT:(e,n)=>`Node is missing a parent
213
217
  Node: ${e}
@@ -227,4 +231,4 @@ Edge: ${e}
227
231
  Source: ${n}
228
232
  Target: ${o}`,EDGE_ORPHANED:e=>`Edge was orphaned (suddenly missing source or target) and has been removed
229
233
  Edge: ${e}`,EDGE_NOT_FOUND:e=>`Edge not found
230
- Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will be removed in the next major version. Please use the id parameter instead"};class at extends Error{constructor(n,...o){var r;super((r=fp[n])==null?void 0:r.call(fp,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function jl(e){return"clientX"in e}function $A(e){return"sourceEvent"in e}function qt(e,n){const o=jl(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 Ai=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function BA(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 Ii(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const VA=()=>!0;function ql(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function DA(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())xi(i,Ni(a))>0&&r.push(a);return r}const RA=250;function MA(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=DA(e,o,n+RA);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}=So(d,u,u.position,!0),h=Math.sqrt((p-e.x)**2+(m-e.y)**2);h>n||(h<s?(l=[{...u,x:p,y:m}],s=h):h===s&&l.push({...u,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(f=>f.type===d)??l[0]}return l[0]}function pp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=VA},f,u,p){const m=a==="target",h=n?l.querySelector(`.${s}-flow__handle[data-id="${c}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:g,y}=qt(e),_=l.elementFromPoint(g,y),k=_!=null&&_.classList.contains(`${s}-flow__handle`)?_:h,b={handleDomNode:k,isValid:!1,connection:null,toHandle:null};if(k){const S=mp(void 0,k),E=k.getAttribute("data-nodeid"),C=k.getAttribute("data-handleid"),N=k.classList.contains("connectable"),P=k.classList.contains("connectableend");if(!E||!S)return b;const v={source:m?E:r,sourceHandle:m?C:i,target:m?r:E,targetHandle:m?i:C};b.connection=v;const $=N&&P&&(o===yn.Strict?m&&S==="source"||!m&&S==="target":E!==r||C!==i);b.isValid=$&&d(v,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(E)}),b.toHandle=n}return b}function mp(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function LA(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function FA(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function UA(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===yn.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,...So(d,u,u.position,!0)}:u}const zl={[Ne.Left]:Ne.Right,[Ne.Right]:Ne.Left,[Ne.Top]:Ne.Bottom,[Ne.Bottom]:Ne.Top},KA=["production","prod"];function Ti(e,...n){gp()&&console.warn(`[Vue Flow]: ${e}`,...n)}function gp(){return!KA.includes(process.env.NODE_ENV||"")}function hp(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,...Si(l)}}):null}function Hl(e,n,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&n)&&(r([e]),t.nextTick(()=>{l.blur()})):o([e])}function et(e){return typeof t.unref(e)<"u"}function GA(e,n,o,r){if(!e||!e.source||!e.target)return o(new at(Qe.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return _n(e)?i=e:i={...e,id:Xf(e)},i=Yf(i,void 0,r),EA(i,n)?!1:i}function jA(e,n,o,r,i){if(!n.source||!n.target)return i(new at(Qe.EDGE_INVALID,e.id)),!1;if(!o)return i(new at(Qe.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Xf(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function yp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!jn(l)){o(new at(Qe.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=wA(l,n(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=n(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new at(Qe.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function _p(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 Yl(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}`;_p("source",c,f,e,i,l),_p("target",c,d,e,a,s)}}function bp(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function Wl(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=_n(d)?d:GA(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new at(Qe.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new at(Qe.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new at(Qe.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new at(Qe.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Yf(f,m,a),sourceNode:u,targetNode:p})}return c}const wp=Symbol("vueFlow"),kp=Symbol("nodeId"),Cp=Symbol("nodeRef"),qA=Symbol("edgeId"),zA=Symbol("edgeRef"),Pi=Symbol("slots");function Ep(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:f,nodesDraggable:u,panBy:p,findNode:m,multiSelectionActive:h,nodesSelectionActive:g,selectNodesOnDrag:y,removeSelectedElements:_,addSelectedNodes:k,updateNodePositions:b,emits:S}=Le(),{onStart:E,onDrag:C,onStop:N,onClick:P,el:v,disabled:I,id:$,selectable:w,dragHandle:U}=e,x=t.shallowRef(!1);let F=[],R,oe=null,ie={x:void 0,y:void 0},M={x:0,y:0},L=null,A=!1,V=0,H=!1;const te=WA(),W=({x:q,y:ae})=>{ie={x:q,y:ae};let ce=!1;if(F=F.map(O=>{const T={x:q-O.distance.x,y:ae-O.distance.y},{computedPosition:B}=Gl(O,o.value?Ii(T,r.value):T,S.error,l.value,O.parentNode?m(O.parentNode):void 0);return ce=ce||O.position.x!==B.x||O.position.y!==B.y,O.position=B,O}),!!ce&&(b(F,!0,!0),x.value=!0,L)){const[O,T]=Kl({id:$,dragItems:F,findNode:m});C({event:L,node:O,nodes:T})}},G=()=>{if(!oe)return;const[q,ae]=rp(M,oe,f.value);if(q!==0||ae!==0){const ce={x:(ie.x??0)-q/c.value.zoom,y:(ie.y??0)-ae/c.value.zoom};p({x:q,y:ae})&&W(ce)}V=requestAnimationFrame(G)},se=(q,ae)=>{A=!0;const ce=m($);!y.value&&!h.value&&ce&&(ce.selected||_()),ce&&t.toValue(w)&&y.value&&Hl(ce,h.value,k,_,g,!1,ae);const O=te(q.sourceEvent);if(ie=O,F=vA(a.value,u.value,O,m,$),F.length){const[T,B]=Kl({id:$,dragItems:F,findNode:m});E({event:q.sourceEvent,node:T,nodes:B})}},ue=(q,ae)=>{var ce;q.sourceEvent.type==="touchmove"&&q.sourceEvent.touches.length>1||(s.value===0&&se(q,ae),ie=te(q.sourceEvent),oe=((ce=n.value)==null?void 0:ce.getBoundingClientRect())||null,M=qt(q.sourceEvent,oe))},ge=(q,ae)=>{const ce=te(q.sourceEvent);if(!H&&A&&d.value&&(H=!0,G()),!A){const O=ce.xSnapped-(ie.x??0),T=ce.ySnapped-(ie.y??0);Math.sqrt(O*O+T*T)>s.value&&se(q,ae)}(ie.x!==ce.xSnapped||ie.y!==ce.ySnapped)&&F.length&&A&&(L=q.sourceEvent,M=qt(q.sourceEvent,oe),W(ce))},re=q=>{let ae=!1;if(!A&&!x.value&&!h.value){const ce=q.sourceEvent,O=te(ce),T=O.xSnapped-(ie.x??0),B=O.ySnapped-(ie.y??0),D=Math.sqrt(T*T+B*B);D!==0&&D<=s.value&&(P==null||P(ce),ae=!0)}if(F.length&&!ae){b(F,!1,!1);const[ce,O]=Kl({id:$,dragItems:F,findNode:m});N({event:q.sourceEvent,node:ce,nodes:O})}F=[],x.value=!1,H=!1,A=!1,ie={x:void 0,y:void 0},cancelAnimationFrame(V)};return t.watch([()=>t.toValue(I),v],([q,ae],ce,O)=>{if(ae){const T=Vt(ae);q||(R=bS().on("start",B=>ue(B,ae)).on("drag",B=>ge(B,ae)).on("end",B=>re(B)).filter(B=>{const D=B.target,ne=t.toValue(U);return!B.button&&(!i.value||!cp(D,`.${i.value}`,ae)&&(!ne||cp(D,ne,ae)))}),T.call(R)),O(()=>{T.on(".drag",null),R&&(R.on("start",null),R.on("drag",null),R.on("end",null))})}}),x}function HA(){return{doubleClick:Ee(),click:Ee(),mouseEnter:Ee(),mouseMove:Ee(),mouseLeave:Ee(),contextMenu:Ee(),updateStart:Ee(),update:Ee(),updateEnd:Ee()}}function YA(e,n){const o=HA();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 WA(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Le();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=$A(i)?i.sourceEvent:i,{x:c,y:d}=qt(s,l),f=pr({x:c,y:d},e.value),{x:u,y:p}=o.value?Ii(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Oi(){return!0}function Np({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:h,autoPanSpeed:g,findNode:y,panBy:_,startConnection:k,updateConnection:b,endConnection:S,emits:E,viewport:C,edges:N,nodes:P,isValidConnection:v,nodeLookup:I}=Le();let $=null,w=!1,U=null;function x(R){var oe;const ie=t.toValue(o)==="target",M=jl(R),L=Hf(R.target);if(M&&R.button===0||!M){let A=function(le){O=qt(le,q),W=MA(pr(O,C.value,!1,[1,1]),f.value,I.value,D),T||(B(),T=!0);const j=pp(le,{handle:W,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:ie?"target":"source",isValidConnection:te,doc:L,lib:"vue",flowId:s,nodeLookup:I.value},N.value,P.value,y);U=j.handleDomNode,$=j.connection,w=FA(!!W,j.isValid);const z={...K,isValid:w,to:j.toHandle&&w?Fl({x:j.toHandle.x,y:j.toHandle.y},C.value):O,toHandle:j.toHandle,toPosition:w&&j.toHandle?j.toHandle.position:zl[D.position],toNode:j.toHandle?I.value.get(j.toHandle.nodeId):null};if(!(w&&W&&(K!=null&&K.toHandle)&&z.toHandle&&K.toHandle.type===z.toHandle.type&&K.toHandle.nodeId===z.toHandle.nodeId&&K.toHandle.id===z.toHandle.id&&K.to.x===z.to.x&&K.to.y===z.to.y)){if(b(W&&w?Fl({x:W.x,y:W.y},C.value):O,j.toHandle,LA(!!W,w)),K=z,!W&&!w&&!U)return ql(ce);$&&$.source!==$.target&&U&&(ql(ce),ce=U,U.classList.add("connecting","vue-flow__handle-connecting"),U.classList.toggle("valid",!!w),U.classList.toggle("vue-flow__handle-valid",!!w))}},V=function(le){(W||U)&&$&&w&&(a?a(le,$):E.connect($)),E.connectEnd(le),i&&(l==null||l(le)),ql(ce),cancelAnimationFrame(G),S(le),T=!1,w=!1,$=null,U=null,L.removeEventListener("mousemove",A),L.removeEventListener("mouseup",V),L.removeEventListener("touchmove",A),L.removeEventListener("touchend",V)};const H=y(t.toValue(n));let te=t.toValue(r)||v.value||Oi;!te&&H&&(te=(ie?H.isValidSourcePos:H.isValidTargetPos)||Oi);let W,G=0;const{x:se,y:ue}=qt(R),ge=L==null?void 0:L.elementFromPoint(se,ue),re=mp(t.toValue(i),ge),q=(oe=c.value)==null?void 0:oe.getBoundingClientRect();if(!q||!re)return;const ae=UA(t.toValue(n),re,t.toValue(e),I.value,d.value);if(!ae)return;let ce,O=qt(R,q),T=!1;const B=()=>{if(!h.value)return;const[le,j]=rp(O,q,g.value);_({x:le,y:j}),G=requestAnimationFrame(B)},D={...ae,nodeId:t.toValue(n),type:re,position:ae.position},ne=I.value.get(t.toValue(n)),Y={inProgress:!0,isValid:null,from:So(ne,D,Ne.Left,!0),fromHandle:D,fromPosition:D.position,fromNode:ne,to:O,toHandle:null,toPosition:zl[D.position],toNode:null};k({nodeId:t.toValue(n),id:t.toValue(e),type:re,position:(ge==null?void 0:ge.getAttribute("data-handlepos"))||Ne.Top,...O},{x:se-q.left,y:ue-q.top}),E.connectStart({event:R,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:re});let K=Y;L.addEventListener("mousemove",A),L.addEventListener("mouseup",V),L.addEventListener("touchmove",A),L.addEventListener("touchend",V)}}function F(R){var oe,ie;if(!u.value)return;const M=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:R,nodeId:t.toValue(n),handleId:t.toValue(e)}),k({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:Ne.Top,...qt(R)},void 0,!0);return}let L=t.toValue(r)||v.value||Oi;const A=y(t.toValue(n));if(!L&&A&&(L=(M?A.isValidSourcePos:A.isValidTargetPos)||Oi),A&&(typeof A.connectable>"u"?m.value:A.connectable)===!1)return;const V=Hf(R.target),H=pp(R,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:Ne.Top,...qt(R)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:L,doc:V,lib:"vue",flowId:s,nodeLookup:I.value},N.value,P.value,y),te=((oe=H.connection)==null?void 0:oe.source)===((ie=H.connection)==null?void 0:ie.target);H.isValid&&H.connection&&!te&&E.connect(H.connection),E.clickConnectEnd(R),S(R,!0)}return{handlePointerDown:x,handleClick:F}}function XA(){return t.inject(kp,"")}function xp(e){const n=e??XA()??"",o=t.inject(Cp,t.ref(null)),{findNode:r,edges:i,emits:a}=Le(),l=r(n);return l||a.error(new at(Qe.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>ep([l],i.value))}}function ZA(){return{doubleClick:Ee(),click:Ee(),mouseEnter:Ee(),mouseMove:Ee(),mouseLeave:Ee(),contextMenu:Ee(),dragStart:Ee(),drag:Ee(),dragStop:Ee()}}function JA(e,n){const o=ZA();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 Sp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Le();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,h=c.y*u*p,g=[];for(const y of e.value)if(y.draggable||l&&typeof y.draggable>"u"){const _={x:y.computedPosition.x+m,y:y.computedPosition.y+h},{computedPosition:k}=Gl(y,_,s.error,n.value,y.parentNode?r(y.parentNode):void 0);g.push({id:y.id,position:k,from:y.position,distance:{x:c.x,y:c.y},dimensions:y.dimensions})}o(g,!0,!1)}}const Xl=.1,QA=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function kn(){return Ti("Viewport not initialized yet."),Promise.resolve(!1)}const eI={zoomIn:kn,zoomOut:kn,zoomTo:kn,fitView:kn,setCenter:kn,fitBounds:kn,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:kn,setTransform:kn,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function tI(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?or:mi).scaleBy(Zl(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}=zf({x:-r,y:-i},e.translateExtent),u=No.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?or:mi).transform(Zl(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"?or:mi).scaleTo(Zl(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:Xl,includeHiddenNodes:!1,duration:0})=>{var a,l;const s=[];for(const p of e.nodes)p.dimensions.width&&p.dimensions.height&&((i==null?void 0:i.includeHiddenNodes)||!p.hidden)&&(!((a=i.nodes)!=null&&a.length)||(l=i.nodes)!=null&&l.length&&i.nodes.includes(p.id))&&s.push(p);if(!s.length)return Promise.resolve(!1);const c=Jf(s),{x:d,y:f,zoom:u}=tp(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Xl,i.offset);return o(d,f,u,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,d=e.dimensions.height/2-a*s;return o(c,d,s,l)},fitBounds:(i,a={padding:Xl})=>{const{x:l,y:s,zoom:c}=tp(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>pr(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 pr(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 Fl(s,e.viewport)}return{x:0,y:0}}}:eI)}function Zl(e,n=0,o=QA,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function nI(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let g,y,_=!!(o.nodes.value.length||o.edges.value.length);g=bo([e.modelValue,()=>{var k,b;return(b=(k=e.modelValue)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(y==null||y.pause(),o.setElements(k),!y&&!_&&k.length?_=!0:y==null||y.resume())}),y=bo([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([k,b])=>{var S;(S=e.modelValue)!=null&&S.value&&Array.isArray(e.modelValue.value)&&(g==null||g.pause(),e.modelValue.value=[...k,...b],t.nextTick(()=>{g==null||g.resume()}))},{immediate:_}),t.onScopeDispose(()=>{g==null||g.stop(),y==null||y.stop()})})},a=()=>{r.run(()=>{let g,y,_=!!o.nodes.value.length;g=bo([e.nodes,()=>{var k,b;return(b=(k=e.nodes)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(y==null||y.pause(),o.setNodes(k),!y&&!_&&k.length?_=!0:y==null||y.resume())}),y=bo([o.nodes,()=>o.nodes.value.length],([k])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(g==null||g.pause(),e.nodes.value=[...k],t.nextTick(()=>{g==null||g.resume()}))},{immediate:_}),t.onScopeDispose(()=>{g==null||g.stop(),y==null||y.stop()})})},l=()=>{r.run(()=>{let g,y,_=!!o.edges.value.length;g=bo([e.edges,()=>{var k,b;return(b=(k=e.edges)==null?void 0:k.value)==null?void 0:b.length}],([k])=>{k&&Array.isArray(k)&&(y==null||y.pause(),o.setEdges(k),!y&&!_&&k.length?_=!0:y==null||y.resume())}),y=bo([o.edges,()=>o.edges.value.length],([k])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(g==null||g.pause(),e.edges.value=[...k],t.nextTick(()=>{g==null||g.resume()}))},{immediate:_}),t.onScopeDispose(()=>{g==null||g.stop(),y==null||y.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&et(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&et(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&et(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&et(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{et(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const g=async y=>{let _=y;typeof n.autoConnect=="function"&&(_=await n.autoConnect(y)),_!==!1&&o.addEdges([_])};t.watch(()=>n.autoConnect,()=>{et(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(y,_,k)=>{y?o.onConnect(g):o.hooks.value.connect.off(g),k(()=>{o.hooks.value.connect.off(g)})},{immediate:!0})})},m=()=>{const g=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const y of Object.keys(n)){const _=y;if(!g.includes(_)){const k=t.toRef(()=>n[_]),b=o[_];t.isRef(b)&&r.run(()=>{t.watch(k,S=>{et(S)&&(b.value=S)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function oI(){return{edgesChange:Ee(),nodesChange:Ee(),nodeDoubleClick:Ee(),nodeClick:Ee(),nodeMouseEnter:Ee(),nodeMouseMove:Ee(),nodeMouseLeave:Ee(),nodeContextMenu:Ee(),nodeDragStart:Ee(),nodeDrag:Ee(),nodeDragStop:Ee(),nodesInitialized:Ee(),miniMapNodeClick:Ee(),miniMapNodeDoubleClick:Ee(),miniMapNodeMouseEnter:Ee(),miniMapNodeMouseMove:Ee(),miniMapNodeMouseLeave:Ee(),connect:Ee(),connectStart:Ee(),connectEnd:Ee(),clickConnectStart:Ee(),clickConnectEnd:Ee(),paneReady:Ee(),init:Ee(),move:Ee(),moveStart:Ee(),moveEnd:Ee(),selectionDragStart:Ee(),selectionDrag:Ee(),selectionDragStop:Ee(),selectionContextMenu:Ee(),selectionStart:Ee(),selectionEnd:Ee(),viewportChangeStart:Ee(),viewportChange:Ee(),viewportChangeEnd:Ee(),paneScroll:Ee(),paneClick:Ee(),paneContextMenu:Ee(),paneMouseEnter:Ee(),paneMouseMove:Ee(),paneMouseLeave:Ee(),edgeContextMenu:Ee(),edgeMouseEnter:Ee(),edgeMouseMove:Ee(),edgeMouseLeave:Ee(),edgeDoubleClick:Ee(),edgeClick:Ee(),edgeUpdateStart:Ee(),edgeUpdate:Ee(),edgeUpdateEnd:Ee(),updateNodeInternals:Ee(),error:Ee(e=>Ti(e.message))}}function rI(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),ni(()=>{r.off(i)})}})}function vp(){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:Ml.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:dr.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:Kn.Bezier,style:{}},connectionMode:yn.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:Ai()?"Meta":"Control",zoomActivationKeyCode:Ai()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:oI(),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 iI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function aI(e,n,o){const r=tI(e),i=O=>{const T=O??[];e.hooks.updateNodeInternals.trigger(T)},a=O=>CA(O,e.nodes,e.edges),l=O=>kA(O,e.nodes,e.edges),s=O=>ep(O,e.edges),c=({id:O,type:T,nodeId:B})=>{var D;return Array.from(((D=e.connectionLookup.get(`${B}-${T}-${O??null}`))==null?void 0:D.values())??[])},d=O=>{if(O)return n.value.get(O)},f=O=>{if(O)return o.value.get(O)},u=(O,T,B)=>{var D,ne;const X=[];for(const Y of O){const K={id:Y.id,type:"position",dragging:B,from:Y.from};if(T&&(K.position=Y.position,Y.parentNode)){const le=d(Y.parentNode);K.position={x:K.position.x-(((D=le==null?void 0:le.computedPosition)==null?void 0:D.x)??0),y:K.position.y-(((ne=le==null?void 0:le.computedPosition)==null?void 0:ne.y)??0)}}X.push(K)}X!=null&&X.length&&e.hooks.nodesChange.trigger(X)},p=O=>{if(!e.vueFlowRef)return;const T=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!T)return;const B=window.getComputedStyle(T),{m22:D}=new window.DOMMatrixReadOnly(B.transform),ne=[];for(const X of O){const Y=X,K=d(Y.id);if(K){const le=Si(Y.nodeElement);if(!!(le.width&&le.height&&(K.dimensions.width!==le.width||K.dimensions.height!==le.height||Y.forceUpdate))){const z=Y.nodeElement.getBoundingClientRect();K.dimensions=le,K.handleBounds.source=hp("source",Y.nodeElement,z,D,K.id),K.handleBounds.target=hp("target",Y.nodeElement,z,D,K.id),ne.push({id:K.id,type:"dimensions",dimensions:le})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),ne.length&&e.hooks.nodesChange.trigger(ne)},m=(O,T)=>{const B=new Set,D=new Set;for(const Y of O)jn(Y)?B.add(Y.id):_n(Y)&&D.add(Y.id);const ne=wn(n.value,B,!0),X=wn(o.value,D);if(e.multiSelectionActive){for(const Y of B)ne.push(bn(Y,T));for(const Y of D)X.push(bn(Y,T))}ne.length&&e.hooks.nodesChange.trigger(ne),X.length&&e.hooks.edgesChange.trigger(X)},h=O=>{if(e.multiSelectionActive){const T=O.map(B=>bn(B.id,!0));e.hooks.nodesChange.trigger(T);return}e.hooks.nodesChange.trigger(wn(n.value,new Set(O.map(T=>T.id)),!0)),e.hooks.edgesChange.trigger(wn(o.value))},g=O=>{if(e.multiSelectionActive){const T=O.map(B=>bn(B.id,!0));e.hooks.edgesChange.trigger(T);return}e.hooks.edgesChange.trigger(wn(o.value,new Set(O.map(T=>T.id)))),e.hooks.nodesChange.trigger(wn(n.value,new Set,!0))},y=O=>{m(O,!0)},_=O=>{const B=(O||e.nodes).map(D=>(D.selected=!1,bn(D.id,!1)));e.hooks.nodesChange.trigger(B)},k=O=>{const B=(O||e.edges).map(D=>(D.selected=!1,bn(D.id,!1)));e.hooks.edgesChange.trigger(B)},b=O=>{if(!O||!O.length)return m([],!1);const T=O.reduce((B,D)=>{const ne=bn(D.id,!1);return jn(D)?B.nodes.push(ne):B.edges.push(ne),B},{nodes:[],edges:[]});T.nodes.length&&e.hooks.nodesChange.trigger(T.nodes),T.edges.length&&e.hooks.edgesChange.trigger(T.edges)},S=O=>{var T;(T=e.d3Zoom)==null||T.scaleExtent([O,e.maxZoom]),e.minZoom=O},E=O=>{var T;(T=e.d3Zoom)==null||T.scaleExtent([e.minZoom,O]),e.maxZoom=O},C=O=>{var T;(T=e.d3Zoom)==null||T.translateExtent(O),e.translateExtent=O},N=O=>{e.nodeExtent=O,i()},P=O=>{var T;(T=e.d3Zoom)==null||T.clickDistance(O)},v=O=>{e.nodesDraggable=O,e.nodesConnectable=O,e.elementsSelectable=O},I=O=>{const T=O instanceof Function?O(e.nodes):O;!e.initialized&&!T.length||(e.nodes=yp(T,d,e.hooks.error.trigger))},$=O=>{const T=O instanceof Function?O(e.edges):O;if(!e.initialized&&!T.length)return;const B=Wl(T,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);Yl(e.connectionLookup,o.value,B),e.edges=B},w=O=>{const T=O instanceof Function?O([...e.nodes,...e.edges]):O;!e.initialized&&!T.length||(I(T.filter(jn)),$(T.filter(_n)))},U=O=>{let T=O instanceof Function?O(e.nodes):O;T=Array.isArray(T)?T:[T];const B=yp(T,d,e.hooks.error.trigger),D=[];for(const ne of B)D.push(ap(ne));D.length&&e.hooks.nodesChange.trigger(D)},x=O=>{let T=O instanceof Function?O(e.edges):O;T=Array.isArray(T)?T:[T];const B=Wl(T,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),D=[];for(const ne of B)D.push(ap(ne));D.length&&e.hooks.edgesChange.trigger(D)},F=(O,T=!0,B=!1)=>{const D=O instanceof Function?O(e.nodes):O,ne=Array.isArray(D)?D:[D],X=[],Y=[];function K(j){const z=s(j);for(const J of z)(!et(J.deletable)||J.deletable)&&Y.push(sp(J.id,J.source,J.target,J.sourceHandle,J.targetHandle))}function le(j){const z=[];for(const J of e.nodes)J.parentNode===j&&z.push(J);if(z.length){for(const J of z)X.push(lp(J.id));T&&K(z);for(const J of z)le(J.id)}}for(const j of ne){const z=typeof j=="string"?d(j):j;z&&(et(z.deletable)&&!z.deletable||(X.push(lp(z.id)),T&&K([z]),B&&le(z.id)))}Y.length&&e.hooks.edgesChange.trigger(Y),X.length&&e.hooks.nodesChange.trigger(X)},R=O=>{const T=O instanceof Function?O(e.edges):O,B=Array.isArray(T)?T:[T],D=[];for(const ne of B){const X=typeof ne=="string"?f(ne):ne;X&&(et(X.deletable)&&!X.deletable||D.push(sp(typeof ne=="string"?ne:ne.id,X.source,X.target,X.sourceHandle,X.targetHandle)))}e.hooks.edgesChange.trigger(D)},oe=(O,T,B=!0)=>{const D=f(O.id);if(!D)return!1;const ne=e.edges.indexOf(D),X=jA(O,T,D,B,e.hooks.error.trigger);if(X){const[Y]=Wl([X],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((K,le)=>le===ne?Y:K),Yl(e.connectionLookup,o.value,[Y]),Y}return!1},ie=(O,T,B={replace:!1})=>{const D=f(O);if(!D)return;const ne=typeof T=="function"?T(D):T;D.data=B.replace?ne:{...D.data,...ne}},M=O=>ip(O,e.nodes),L=O=>{const T=ip(O,e.edges);return Yl(e.connectionLookup,o.value,T),T},A=(O,T,B={replace:!1})=>{const D=d(O);if(!D)return;const ne=typeof T=="function"?T(D):T;B.replace?e.nodes.splice(e.nodes.indexOf(D),1,ne):Object.assign(D,ne)},V=(O,T,B={replace:!1})=>{const D=d(O);if(!D)return;const ne=typeof T=="function"?T(D):T;D.data=B.replace?ne:{...D.data,...ne}},H=(O,T,B=!1)=>{B?e.connectionClickStartHandle=O:e.connectionStartHandle=O,e.connectionEndHandle=null,e.connectionStatus=null,T&&(e.connectionPosition=T)},te=(O,T=null,B=null)=>{e.connectionStartHandle&&(e.connectionPosition=O,e.connectionEndHandle=T,e.connectionStatus=B)},W=(O,T)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,T?e.connectionClickStartHandle=null:e.connectionStartHandle=null},G=O=>{const T=bA(O),B=T?null:fr(O)?O:d(O.id);return!T&&!B?[null,null,T]:[T?O:Ni(B),B,T]},se=(O,T=!0,B=e.nodes)=>{const[D,ne,X]=G(O);if(!D)return[];const Y=[];for(const K of B||e.nodes){if(!X&&(K.id===ne.id||!K.computedPosition))continue;const le=Ni(K),j=xi(le,D);(T&&j>0||j>=Number(D.width)*Number(D.height))&&Y.push(K)}return Y},ue=(O,T,B=!0)=>{const[D]=G(O);if(!D)return!1;const ne=xi(D,T);return B&&ne>0||ne>=Number(D.width)*Number(D.height)},ge=O=>{const{viewport:T,dimensions:B,d3Zoom:D,d3Selection:ne,translateExtent:X}=e;if(!D||!ne||!O.x&&!O.y)return!1;const Y=No.translate(T.x+O.x,T.y+O.y).scale(T.zoom),K=[[0,0],[B.width,B.height]],le=D.constrain()(Y,K,X),j=e.viewport.x!==le.x||e.viewport.y!==le.y||e.viewport.zoom!==le.k;return D.transform(ne,le),j},re=O=>{const T=O instanceof Function?O(e):O,B=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];et(T.defaultEdgeOptions)&&(e.defaultEdgeOptions=T.defaultEdgeOptions);const D=T.modelValue||T.nodes||T.edges?[]:void 0;D&&(T.modelValue&&D.push(...T.modelValue),T.nodes&&D.push(...T.nodes),T.edges&&D.push(...T.edges),w(D));const ne=()=>{et(T.maxZoom)&&E(T.maxZoom),et(T.minZoom)&&S(T.minZoom),et(T.translateExtent)&&C(T.translateExtent)};for(const X of Object.keys(T)){const Y=X,K=T[Y];![...iI,...B].includes(Y)&&et(K)&&(e[Y]=K)}yl(()=>e.d3Zoom).not.toBeNull().then(ne),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:w,setNodes:I,setEdges:$,addNodes:U,addEdges:x,removeNodes:F,removeEdges:R,findNode:d,findEdge:f,updateEdge:oe,updateEdgeData:ie,updateNode:A,updateNodeData:V,applyEdgeChanges:L,applyNodeChanges:M,addSelectedElements:y,addSelectedNodes:h,addSelectedEdges:g,setMinZoom:S,setMaxZoom:E,setTranslateExtent:C,setNodeExtent:N,setPaneClickDistance:P,removeSelectedElements:b,removeSelectedNodes:_,removeSelectedEdges:k,startConnection:H,updateConnection:te,endConnection:W,setInteractive:v,setState:re,getIntersectingNodes:se,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:ue,panBy:ge,fitView:O=>r.value.fitView(O),zoomIn:O=>r.value.zoomIn(O),zoomOut:O=>r.value.zoomOut(O),zoomTo:(O,T)=>r.value.zoomTo(O,T),setViewport:(O,T)=>r.value.setViewport(O,T),setTransform:(O,T)=>r.value.setTransform(O,T),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(O,T,B)=>r.value.setCenter(O,T,B),fitBounds:(O,T)=>r.value.fitBounds(O,T),project:O=>r.value.project(O),screenToFlowCoordinate:O=>r.value.screenToFlowCoordinate(O),flowToScreenCoordinate:O=>r.value.flowToScreenCoordinate(O),toObject:()=>{const O=[],T=[];for(const B of e.nodes){const{computedPosition:D,handleBounds:ne,selected:X,dimensions:Y,isParent:K,resizing:le,dragging:j,events:z,...J}=B;O.push(J)}for(const B of e.edges){const{selected:D,sourceNode:ne,targetNode:X,events:Y,...K}=B;T.push(K)}return JSON.parse(JSON.stringify({nodes:O,edges:T,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:O=>new Promise(T=>{const{nodes:B,edges:D,position:ne,zoom:X,viewport:Y}=O;if(B&&I(B),D&&$(D),Y!=null&&Y.x&&(Y!=null&&Y.y)||ne){const K=(Y==null?void 0:Y.x)||ne[0],le=(Y==null?void 0:Y.y)||ne[1],j=(Y==null?void 0:Y.zoom)||X||e.viewport.zoom;return yl(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:K,y:le,zoom:j}).then(()=>{T(!0)})})}else T(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const O=vp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const T=No.translate(O.defaultViewport.x??0,O.defaultViewport.y??0).scale(Gn(O.defaultViewport.zoom??1,O.minZoom,O.maxZoom)),B=e.viewportRef.getBoundingClientRect(),D=[[0,0],[B.width,B.height]],ne=e.d3Zoom.constrain()(T,D,O.translateExtent);e.d3Zoom.transform(e.d3Selection,ne)}re(O)},$destroy:()=>{}}}const lI=["data-id","data-handleid","data-nodeid","data-handlepos"],sI={name:"Handle",compatConfig:{MODE:3}},zt=t.defineComponent({...sI,props:{id:{default:null},type:{},position:{default:()=>Ne.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Le(),{id:m,node:h,nodeEl:g,connectedEdges:y}=xp(),_=t.ref(),k=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),S=t.toRef(()=>{var $,w,U,x,F,R;return(($=l.value)==null?void 0:$.nodeId)===m&&((w=l.value)==null?void 0:w.id)===e.id&&((U=l.value)==null?void 0:U.type)===r.value||((x=c.value)==null?void 0:x.nodeId)===m&&((F=c.value)==null?void 0:F.id)===e.id&&((R=c.value)==null?void 0:R.type)===r.value}),E=t.toRef(()=>{var $,w,U;return(($=s.value)==null?void 0:$.nodeId)===m&&((w=s.value)==null?void 0:w.id)===e.id&&((U=s.value)==null?void 0:U.type)===r.value}),{handlePointerDown:C,handleClick:N}=Np({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),P=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!y.value.some($=>{const w=$[`${r.value}Handle`];return $[r.value]!==m?!1:w?w===e.id:!0}):typeof e.connectable=="number"?y.value.filter($=>{const w=$[`${r.value}Handle`];return $[r.value]!==m?!1:w?w===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,y.value):et(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var $;if(!h.dimensions.width||!h.dimensions.height)return;const w=($=h.handleBounds[r.value])==null?void 0:$.find(M=>M.id===e.id);if(!d.value||w)return;const U=d.value.querySelector(".vue-flow__transformationpane");if(!g.value||!_.value||!U||!e.id)return;const x=g.value.getBoundingClientRect(),F=_.value.getBoundingClientRect(),R=window.getComputedStyle(U),{m22:oe}=new window.DOMMatrixReadOnly(R.transform),ie={id:e.id,position:e.position,x:(F.left-x.left)/oe,y:(F.top-x.top)/oe,type:r.value,nodeId:m,...Si(_.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],ie]});function v($){const w=jl($);P.value&&k.value&&(w&&$.button===0||!w)&&C($)}function I($){!m||!s.value&&!k.value||P.value&&N($)}return n({handleClick:N,handlePointerDown:C,onClick:I,onPointerDown:v}),($,w)=>(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":$.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${$.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:P.value,connecting:E.value,connectablestart:k.value,connectableend:b.value,connectionindicator:P.value&&(k.value&&!S.value||b.value&&S.value)}]]),onMousedown:v,onTouchstartPassive:v,onClick:I},[t.renderSlot($.$slots,"default",{id:$.id})],42,lI))}}),$i=function({sourcePosition:e=Ne.Bottom,targetPosition:n=Ne.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(zt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(zt,{type:"source",position:e,connectable:r,isValidConnection:a})]};$i.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],$i.inheritAttrs=!1,$i.compatConfig={MODE:3};const cI=$i,Bi=function({targetPosition:e=Ne.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(zt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Bi.props=["targetPosition","label","isValidTargetPos","connectable","data"],Bi.inheritAttrs=!1,Bi.compatConfig={MODE:3};const dI=Bi,Vi=function({sourcePosition:e=Ne.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(zt,{type:"source",position:e,connectable:o,isValidConnection:r})]};Vi.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Vi.inheritAttrs=!1,Vi.compatConfig={MODE:3};const uI=Vi,fI=["transform"],pI=["width","height","x","y","rx","ry"],mI=["y"],gI={name:"EdgeText",compatConfig:{MODE:3}},hI=t.defineComponent({...gI,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,pI)):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,mI)],8,fI))}}),yI=["id","d","marker-end","marker-start"],_I=["d","stroke-width"],bI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Di=t.defineComponent({...bI,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,yI),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,_I)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(hI,{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 Ap({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 Ip({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 Ri(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Tp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case Ne.Left:l=n-Ri(n-r,a),s=o;break;case Ne.Right:l=n+Ri(r-n,a),s=o;break;case Ne.Top:l=n,s=o-Ri(o-i,a);break;case Ne.Bottom:l=n,s=o+Ri(i-o,a);break}return[l,s]}function Pp(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ne.Bottom,targetX:i,targetY:a,targetPosition:l=Ne.Top,curvature:s=.25}=e,[c,d]=Tp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Tp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,h,g]=Ip({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,h,g]}function Op({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case Ne.Left:case Ne.Right:a=.5*(n+r),l=o;break;case Ne.Top:case Ne.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function $p(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ne.Bottom,targetX:i,targetY:a,targetPosition:l=Ne.Top}=e,[s,c]=Op({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Op({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,h]=Ip({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${n},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,h]}const Bp={[Ne.Left]:{x:-1,y:0},[Ne.Right]:{x:1,y:0},[Ne.Top]:{x:0,y:-1},[Ne.Bottom]:{x:0,y:1}};function wI({source:e,sourcePosition:n=Ne.Bottom,target:o}){return n===Ne.Left||n===Ne.Right?e.x<o.x?{x:1,y:0}:{x:-1,y:0}:e.y<o.y?{x:0,y:1}:{x:0,y:-1}}function Vp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function kI({source:e,sourcePosition:n=Ne.Bottom,target:o,targetPosition:r=Ne.Top,center:i,offset:a}){const l=Bp[n],s=Bp[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=wI({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,g;const y={x:0,y:0},_={x:0,y:0},[k,b,S,E]=Ap({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??k,g=i.y??b;const N=[{x:h,y:c.y},{x:h,y:d.y}],P=[{x:c.x,y:g},{x:d.x,y:g}];l[u]===p?m=u==="x"?N:P:m=u==="x"?P:N}else{const N=[{x:c.x,y:d.y}],P=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?P:N:m=l.y===p?N:P,n===r){const U=Math.abs(e[u]-o[u]);if(U<=a){const x=Math.min(a-1,a-U);l[u]===p?y[u]=(c[u]>e[u]?-1:1)*x:_[u]=(d[u]>o[u]?-1:1)*x}}if(n!==r){const U=u==="x"?"y":"x",x=l[u]===s[U],F=c[U]>d[U],R=c[U]<d[U];(l[u]===1&&(!x&&F||x&&R)||l[u]!==1&&(!x&&R||x&&F))&&(m=u==="x"?N:P)}const v={x:c.x+y.x,y:c.y+y.y},I={x:d.x+_.x,y:d.y+_.y},$=Math.max(Math.abs(v.x-m[0].x),Math.abs(I.x-m[0].x)),w=Math.max(Math.abs(v.y-m[0].y),Math.abs(I.y-m[0].y));$>=w?(h=(v.x+I.x)/2,g=m[0].y):(h=m[0].x,g=(v.y+I.y)/2)}return[[e,{x:c.x+y.x,y:c.y+y.y},...m,{x:d.x+_.x,y:d.y+_.y},o],h,g,S,E]}function CI(e,n,o,r){const i=Math.min(Vp(e,n)/2,Vp(n,o)/2,r),{x:a,y:l}=n;if(e.x===a&&a===o.x||e.y===l&&l===o.y)return`L${a} ${l}`;if(e.y===l){const 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 Jl(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ne.Bottom,targetX:i,targetY:a,targetPosition:l=Ne.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,h,g]=kI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((_,k,b)=>{let S;return b>0&&b<u.length-1?S=CI(u[b-1],k,u[b+1],s):S=`${b===0?"M":"L"}${k.x} ${k.y}`,_+=S,_},""),p,m,h,g]}function EI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Ap({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const NI=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]=EI(e);return t.h(Di,{path:o,labelX:r,labelY:i,...n,...e})}}}),Dp=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]=Jl({...e,sourcePosition:e.sourcePosition??Ne.Bottom,targetPosition:e.targetPosition??Ne.Top});return t.h(Di,{path:o,labelX:r,labelY:i,...n,...e})}}}),xI=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(Dp,{...e,...n,borderRadius:0})}}),SI=t.defineComponent({name:"BezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","curvature","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Pp({...e,sourcePosition:e.sourcePosition??Ne.Bottom,targetPosition:e.targetPosition??Ne.Top});return t.h(Di,{path:o,labelX:r,labelY:i,...n,...e})}}}),vI=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]=$p({...e,sourcePosition:e.sourcePosition??Ne.Bottom,targetPosition:e.targetPosition??Ne.Top});return t.h(Di,{path:o,labelX:r,labelY:i,...n,...e})}}}),AI={input:uI,default:cI,output:dI},II={default:SI,straight:NI,step:xI,smoothstep:Dp,simplebezier:vI};function TI(e,n,o){const r=t.computed(()=>g=>n.value.get(g)),i=t.computed(()=>g=>o.value.get(g)),a=t.computed(()=>{const g={...II,...e.edgeTypes},y=Object.keys(g);for(const _ of e.edges)_.type&&!y.includes(_.type)&&(g[_.type]=_.type);return g}),l=t.computed(()=>{const g={...AI,...e.nodeTypes},y=Object.keys(g);for(const _ of e.nodes)_.type&&!y.includes(_.type)&&(g[_.type]=_.type);return g}),s=t.computed(()=>e.onlyRenderVisibleElements?Qf(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 g=[];for(const y of e.edges){const _=n.value.get(y.source),k=n.value.get(y.target);PA({sourcePos:_.computedPosition||{x:0,y:0},targetPos:k.computedPosition||{x:0,y:0},sourceWidth:_.dimensions.width,sourceHeight:_.dimensions.height,targetWidth:k.dimensions.width,targetHeight:k.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&g.push(y)}return g}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const g=[];for(const y of e.nodes)y.selected&&g.push(y);return g}),u=t.computed(()=>{const g=[];for(const y of e.edges)y.selected&&g.push(y);return g}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const g=[];for(const y of e.nodes)y.dimensions.width&&y.dimensions.height&&y.handleBounds!==void 0&&g.push(y);return g}),h=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:h}}class qn{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)??qn.instance;return qn.instance=r??new qn,o&&(o.config.globalProperties.$vueFlowStorage=qn.instance),qn.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=vp(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const h=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[h]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=TI(i,s,c),f=aI(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...A1(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Le(e){const n=qn.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(wp,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const h=y=>{d.applyNodeChanges(y)},g=y=>{d.applyEdgeChanges(y)};u?(d.onNodesChange(h),d.onEdgesChange(g)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(g)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(g)})},{immediate:!0}),ni(()=>{if(s){const u=n.get(s.id);u?u.$destroy():Ti(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(wp,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new at(Qe.USEVUEFLOW_OPTIONS))}return s}function PI(e){const{emits:n,dimensions:o}=Le();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Si(i);(l.width===0||l.height===0)&&n.error(new at(Qe.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:l.width||500,height:l.height||500}};a(),window.addEventListener("resize",a),i&&(r=new ResizeObserver(()=>a()),r.observe(i)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const OI={name:"UserSelection",compatConfig:{MODE:3}},$I=t.defineComponent({...OI,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))}}),BI=["tabIndex"],VI={name:"NodesSelection",compatConfig:{MODE:3}},DI=t.defineComponent({...VI,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Le(),s=Sp(),c=t.ref(null),d=Ep({el:c,onStart(h){n.selectionDragStart(h)},onDrag(h){n.selectionDrag(h)},onStop(h){n.selectionDragStop(h)}});t.onMounted(()=>{var h;a.value||(h=c.value)==null||h.focus({preventScroll:!0})});const f=t.computed(()=>Jf(r.value)),u=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(h){n.selectionContextMenu({event:h,nodes:r.value})}function m(h){a||xo[h.key]&&(h.preventDefault(),s({x:xo[h.key].x,y:xo[h.key].y},h.shiftKey))}return(h,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,BI)],6)):t.createCommentVNode("",!0)}});function RI(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const MI={name:"Pane",compatConfig:{MODE:3}},LI=t.defineComponent({...MI,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:h,deleteKeyCode:g,multiSelectionKeyCode:y,multiSelectionActive:_,edgeLookup:k,nodeLookup:b,connectionLookup:S,defaultEdgeOptions:E,connectionStartHandle:C}=Le(),N=t.ref(null),P=t.ref(new Set),v=t.ref(new Set),I=t.ref(),$=t.toRef(()=>c.value&&(e.isSelecting||a.value)),w=t.toRef(()=>C.value!==null);let U=!1,x=!1;const F=ur(g,{actInsideInputWithModifier:!1}),R=ur(y);t.watch(F,te=>{te&&(p(u.value),m(f.value),d.value=!1)}),t.watch(R,te=>{_.value=te});function oe(te,W){return G=>{G.target===W&&(te==null||te(G))}}function ie(te){if(U||w.value){U=!1;return}i.paneClick(te),l(),d.value=!1}function M(te){te.preventDefault(),te.stopPropagation(),i.paneContextMenu(te)}function L(te){i.paneScroll(te)}function A(te){var W,G,se;if(I.value=(W=n.value)==null?void 0:W.getBoundingClientRect(),!c.value||!e.isSelecting||te.button!==0||te.target!==N.value||!I.value)return;(se=(G=te.target)==null?void 0:G.setPointerCapture)==null||se.call(G,te.pointerId);const{x:ue,y:ge}=RI(te,I.value);x=!0,U=!1,l(),s.value={width:0,height:0,startX:ue,startY:ge,x:ue,y:ge},i.selectionStart(te)}function V(te){var W;if(!I.value||!s.value)return;U=!0;const{x:G,y:se}=qt(te,I.value),{startX:ue=0,startY:ge=0}=s.value,re={startX:ue,startY:ge,x:G<ue?G:ue,y:se<ge?se:ge,width:Math.abs(G-ue),height:Math.abs(se-ge)},q=P.value,ae=v.value;P.value=new Set(Qf(o.value,re,r.value,h.value===Ml.Partial,!0).map(O=>O.id)),v.value=new Set;const ce=((W=E.value)==null?void 0:W.selectable)??!0;for(const O of P.value){const T=S.value.get(O);if(T)for(const{edgeId:B}of T.values()){const D=k.value.get(B);D&&(D.selectable??ce)&&v.value.add(B)}}if(!bp(q,P.value)){const O=wn(b.value,P.value,!0);i.nodesChange(O)}if(!bp(ae,v.value)){const O=wn(k.value,v.value);i.edgesChange(O)}s.value=re,a.value=!0,d.value=!1}function H(te){var W;te.button!==0||!x||((W=te.target)==null||W.releasePointerCapture(te.pointerId),!a.value&&s.value&&te.target===N.value&&ie(te),a.value=!1,s.value=null,d.value=P.value.size>0,i.selectionEnd(te),e.selectionKeyPressed&&(U=!1),x=!1)}return(te,W)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:N,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:te.isSelecting}]),onClick:W[0]||(W[0]=G=>$.value?void 0:oe(ie,N.value)(G)),onContextmenu:W[1]||(W[1]=G=>oe(M,N.value)(G)),onWheelPassive:W[2]||(W[2]=G=>oe(L,N.value)(G)),onPointerenter:W[3]||(W[3]=G=>$.value?void 0:t.unref(i).paneMouseEnter(G)),onPointerdown:W[4]||(W[4]=G=>$.value?A(G):t.unref(i).paneMouseMove(G)),onPointermove:W[5]||(W[5]=G=>$.value?V(G):t.unref(i).paneMouseMove(G)),onPointerup:W[6]||(W[6]=G=>$.value?H(G):void 0),onPointerleave:W[7]||(W[7]=G=>t.unref(i).paneMouseLeave(G))},[t.renderSlot(te.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock($I,{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(DI,{key:1})):t.createCommentVNode("",!0)],34))}}),FI={name:"Transform",compatConfig:{MODE:3}},UI=t.defineComponent({...FI,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Le(),i=t.computed(()=>o.value?!r.value:!1),a=t.computed(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:t.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[t.renderSlot(l.$slots,"default")],4))}}),KI={name:"Viewport",compatConfig:{MODE:3}},GI=t.defineComponent({...KI,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:h,preventScrolling:g,noWheelClassName:y,noPanClassName:_,emits:k,connectionStartHandle:b,userSelectionActive:S,paneDragging:E,d3Zoom:C,d3Selection:N,d3ZoomHandler:P,viewport:v,viewportRef:I,paneClickDistance:$}=Le();PI(I);const w=t.shallowRef(!1),U=t.shallowRef(!1);let x=null,F=!1,R=0,oe={x:0,y:0,zoom:0};const ie=ur(s),M=ur(l),L=ur(a),A=t.toRef(()=>(!M.value||M.value&&l.value===!0)&&(ie.value||u.value)),V=t.toRef(()=>ie.value||c.value),H=t.toRef(()=>M.value||l.value===!0&&A.value!==!0);t.onMounted(()=>{if(!I.value){Ti("Viewport element is missing");return}const ge=I.value,re=ge.getBoundingClientRect(),q=fA().clickDistance($.value).scaleExtent([n.value,o.value]).translateExtent(i.value),ae=Vt(ge).call(q),ce=ae.on("wheel.zoom"),O=No.translate(r.value.x??0,r.value.y??0).scale(Gn(r.value.zoom??1,n.value,o.value)),T=[[0,0],[re.width,re.height]],B=q.constrain()(O,T,i.value);q.transform(ae,B),q.wheelDelta(W),C.value=q,N.value=ae,P.value=ce,v.value={x:B.x,y:B.y,zoom:B.k},q.on("start",D=>{var ne;if(!D.sourceEvent)return null;R=D.sourceEvent.button,w.value=!0;const X=se(D.transform);((ne=D.sourceEvent)==null?void 0:ne.type)==="mousedown"&&(E.value=!0),oe=X,k.viewportChangeStart(X),k.moveStart({event:D,flowTransform:X})}),q.on("end",D=>{if(!D.sourceEvent)return null;if(w.value=!1,E.value=!1,te(A.value,R??0)&&!F&&k.paneContextMenu(D.sourceEvent),F=!1,G(oe,D.transform)){const ne=se(D.transform);oe=ne,k.viewportChangeEnd(ne),k.moveEnd({event:D,flowTransform:ne})}}),q.filter(D=>{var ne;const X=L.value||h.value,Y=m.value&&D.ctrlKey,K=D.button;if(K===1&&D.type==="mousedown"&&(ue(D,"vue-flow__node")||ue(D,"vue-flow__edge")))return!0;if(!A.value&&!X&&!V.value&&!p.value&&!m.value||S.value||!p.value&&D.type==="dblclick"||ue(D,y.value)&&D.type==="wheel"||ue(D,_.value)&&(D.type!=="wheel"||V.value&&D.type==="wheel"&&!L.value)||!m.value&&D.ctrlKey&&D.type==="wheel"||!X&&!V.value&&!Y&&D.type==="wheel")return!1;if(!m&&D.type==="touchstart"&&((ne=D.touches)==null?void 0:ne.length)>1)return D.preventDefault(),!1;if(!A.value&&(D.type==="mousedown"||D.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&K===0||Array.isArray(u.value)&&!u.value.includes(K)&&(D.type==="mousedown"||D.type==="touchstart"))return!1;const le=Array.isArray(u.value)&&u.value.includes(K)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!K||K<=1;return(!D.ctrlKey||ie.value||D.type==="wheel")&&le}),t.watch([S,A],()=>{S.value&&!w.value?q.on("zoom",null):S.value||q.on("zoom",D=>{v.value={x:D.transform.x,y:D.transform.y,zoom:D.transform.k};const ne=se(D.transform);F=te(A.value,R??0),k.viewportChange(ne),k.move({event:D,flowTransform:ne})})},{immediate:!0}),t.watch([S,V,d,L,m,g,y],()=>{V.value&&!L.value&&!S.value?ae.on("wheel.zoom",D=>{if(ue(D,y.value))return!1;const ne=L.value||h.value,X=m.value&&D.ctrlKey;if(!(!g.value||V.value||ne||X))return!1;D.preventDefault(),D.stopImmediatePropagation();const K=ae.property("__zoom").k||1,le=Ai();if(!ie.value&&D.ctrlKey&&m.value&&le){const _e=Ut(D),Q=W(D),he=K*2**Q;q.scaleTo(ae,he,_e,D);return}const j=D.deltaMode===1?20:1;let z=d.value===dr.Vertical?0:D.deltaX*j,J=d.value===dr.Horizontal?0:D.deltaY*j;!le&&D.shiftKey&&d.value!==dr.Vertical&&!z&&J&&(z=J,J=0),q.translateBy(ae,-(z/K)*f.value,-(J/K)*f.value);const de=se(ae.property("__zoom"));x&&clearTimeout(x),U.value?(k.move({event:D,flowTransform:de}),k.viewportChange(de),x=setTimeout(()=>{k.moveEnd({event:D,flowTransform:de}),k.viewportChangeEnd(de),U.value=!1},150)):(U.value=!0,k.moveStart({event:D,flowTransform:de}),k.viewportChangeStart(de))},{passive:!1}):typeof ce<"u"&&ae.on("wheel.zoom",function(D,ne){const X=!g.value&&D.type==="wheel"&&!D.ctrlKey,Y=L.value||h.value,K=m.value&&D.ctrlKey;if(!Y&&!c.value&&!K&&D.type==="wheel"||X||ue(D,y.value))return null;D.preventDefault(),ce.call(this,D,ne)},{passive:!1})},{immediate:!0})});function te(ge,re){return re===2&&Array.isArray(ge)&&ge.includes(2)}function W(ge){const re=ge.ctrlKey&&Ai()?10:1;return-ge.deltaY*(ge.deltaMode===1?.05:ge.deltaMode?1:.002)*re}function G(ge,re){return ge.x!==re.x&&!Number.isNaN(re.x)||ge.y!==re.y&&!Number.isNaN(re.y)||ge.zoom!==re.k&&!Number.isNaN(re.k)}function se(ge){return{x:ge.x,y:ge.y,zoom:ge.k}}function ue(ge,re){return ge.target.closest(`.${re}`)}return(ge,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:I,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(LI,{"is-selecting":H.value,"selection-key-pressed":t.unref(M),class:t.normalizeClass({connecting:!!t.unref(b),dragging:t.unref(E),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(UI,null,{default:t.withCtx(()=>[t.renderSlot(ge.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),jI=["id"],qI=["id"],zI=["id"],HI={name:"A11yDescriptions",compatConfig:{MODE:3}},YI=t.defineComponent({...HI,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Le();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Gf)}-${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,jI),t.createElementVNode("div",{id:`${t.unref(jf)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select an edge. You can then press delete to remove it or press escape to cancel. ",8,qI),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(_A)}-${t.unref(n)}`,"aria-live":"assertive","aria-atomic":"true",style:{position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(100%)"}},t.toDisplayString(t.unref(r)),9,zI))],64))}});function WI(){const e=Le();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function XI(e,n,o){return o===Ne.Left?e-n:o===Ne.Right?e+n:e}function ZI(e,n,o){return o===Ne.Top?e-n:o===Ne.Bottom?e+n:e}const Ql=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=Ne.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:XI(n,e,r),cy:ZI(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};Ql.props=["radius","centerX","centerY","position","type"],Ql.compatConfig={MODE:3};const Rp=Ql,JI=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:h,elementsSelectable:g,edgesUpdatable:y,edgesFocusable:_,hooks:k}=Le(),b=t.computed(()=>f(e.id)),{emit:S,on:E}=YA(b.value,a),C=t.inject(Pi),N=t.getCurrentInstance(),P=t.ref(!1),v=t.ref(!1),I=t.ref(""),$=t.ref(null),w=t.ref("source"),U=t.ref(null),x=t.toRef(()=>typeof b.value.selectable>"u"?g.value:b.value.selectable),F=t.toRef(()=>typeof b.value.updatable>"u"?y.value:b.value.updatable),R=t.toRef(()=>typeof b.value.focusable>"u"?_.value:b.value.focusable);t.provide(qA,e.id),t.provide(zA,U);const oe=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),ie=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),M=t.computed(()=>{const T=b.value.type||"default",B=C==null?void 0:C[`edge-${T}`];if(B)return B;let D=b.value.template??c.value[T];if(typeof D=="string"&&N){const ne=Object.keys(N.appContext.components);ne&&ne.includes(T)&&(D=t.resolveComponent(T,!1))}return D&&typeof D!="string"?D:(a.error(new at(Qe.EDGE_TYPE_MISSING,D)),!1)}),{handlePointerDown:L}=Np({nodeId:I,handleId:$,type:w,isValidConnection:p,edgeUpdaterType:w,onEdgeUpdate:H,onEdgeUpdateEnd:te});return()=>{const T=u(b.value.source),B=u(b.value.target),D="pathOptions"in b.value?b.value.pathOptions:{};if(!T&&!B)return a.error(new at(Qe.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!T)return a.error(new at(Qe.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!B)return a.error(new at(Qe.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||T.hidden||B.hidden)return null;let ne;r.value===yn.Strict?ne=T.handleBounds.source:ne=[...T.handleBounds.source||[],...T.handleBounds.target||[]];const X=up(ne,b.value.sourceHandle);let Y;r.value===yn.Strict?Y=B.handleBounds.target:Y=[...B.handleBounds.target||[],...B.handleBounds.source||[]];const K=up(Y,b.value.targetHandle),le=(X==null?void 0:X.position)||Ne.Bottom,j=(K==null?void 0:K.position)||Ne.Top,{x:z,y:J}=So(T,X,le),{x:de,y:_e}=So(B,K,j);return b.value.sourceX=z,b.value.sourceY=J,b.value.targetX=de,b.value.targetY=_e,t.h("g",{ref:U,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${M.value===!1?"default":b.value.type||"default"}`,s.value,oe.value,{updating:P.value,selected:b.value.selected,animated:b.value.animated,inactive:!x.value&&!k.value.edgeClick.hasListeners()}],tabIndex:R.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":R.value?`${jf}-${n}`:void 0,"aria-roledescription":"edge",role:R.value?"group":"img",...b.value.domAttributes,onClick:G,onContextmenu:se,onDblclick:ue,onMouseenter:ge,onMousemove:re,onMouseleave:q,onKeyDown:R.value?O:void 0},[v.value?null:t.h(M.value===!1?c.value.default:M.value,{id:e.id,sourceNode:T,targetNode:B,source:b.value.source,target:b.value.target,type:b.value.type,updatable:F.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:ie.value,markerStart:`url('#${mr(b.value.markerStart,n)}')`,markerEnd:`url('#${mr(b.value.markerEnd,n)}')`,sourcePosition:le,targetPosition:j,sourceX:z,sourceY:J,targetX:de,targetY:_e,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...D}),[F.value==="source"||F.value===!0?[t.h("g",{onMousedown:ae,onMouseenter:A,onMouseout:V},t.h(Rp,{position:le,centerX:z,centerY:J,radius:i.value,type:"source","data-type":"source"}))]:null,F.value==="target"||F.value===!0?[t.h("g",{onMousedown:ce,onMouseenter:A,onMouseout:V},t.h(Rp,{position:j,centerX:de,centerY:_e,radius:i.value,type:"target","data-type":"target"}))]:null]])};function A(){P.value=!0}function V(){P.value=!1}function H(T,B){S.update({event:T,edge:b.value,connection:B})}function te(T){S.updateEnd({event:T,edge:b.value}),v.value=!1}function W(T,B){T.button===0&&(v.value=!0,I.value=B?b.value.target:b.value.source,$.value=(B?b.value.targetHandle:b.value.sourceHandle)??null,w.value=B?"target":"source",S.updateStart({event:T,edge:b.value}),L(T))}function G(T){var B;const D={event:T,edge:b.value};x.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(B=U.value)==null||B.blur()):o([b.value])),S.click(D)}function se(T){S.contextMenu({event:T,edge:b.value})}function ue(T){S.doubleClick({event:T,edge:b.value})}function ge(T){S.mouseEnter({event:T,edge:b.value})}function re(T){S.mouseMove({event:T,edge:b.value})}function q(T){S.mouseLeave({event:T,edge:b.value})}function ae(T){W(T,!0)}function ce(T){W(T,!1)}function O(T){var B;!h.value&&qf.includes(T.key)&&x.value&&(T.key==="Escape"?((B=U.value)==null||B.blur(),d([f(e.id)])):o([f(e.id)]))}}}),QI=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Le(),p=(e=t.inject(Pi))==null?void 0:e["connection-line"],m=t.computed(()=>{var k;return u((k=r.value)==null?void 0:k.nodeId)}),h=t.computed(()=>{var k;return u((k=i.value)==null?void 0:k.nodeId)??null}),g=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),y=t.computed(()=>c.value.markerStart?`url(#${mr(c.value.markerStart,n)})`:""),_=t.computed(()=>c.value.markerEnd?`url(#${mr(c.value.markerEnd,n)})`:"");return()=>{var k,b,S;if(!m.value||!r.value)return null;const E=r.value.id,C=r.value.type,N=m.value.handleBounds;let P=(N==null?void 0:N[C])??[];if(o.value===yn.Loose){const ie=(N==null?void 0:N[C==="source"?"target":"source"])??[];P=[...P,...ie]}if(!P)return null;const v=(E?P.find(ie=>ie.id===E):P[0])??null,I=(v==null?void 0:v.position)??Ne.Top,{x:$,y:w}=So(m.value,v,I);let U=null;h.value&&(o.value===yn.Strict?U=((k=h.value.handleBounds[C==="source"?"target":"source"])==null?void 0:k.find(ie=>{var M;return ie.id===((M=i.value)==null?void 0:M.id)}))||null:U=((b=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:b.find(ie=>{var M;return ie.id===((M=i.value)==null?void 0:M.id)}))||null);const x=((S=i.value)==null?void 0:S.position)??(I?zl[I]:null);if(!I||!x)return null;const F=l.value??c.value.type??Kn.Bezier;let R="";const oe={sourceX:$,sourceY:w,sourcePosition:I,targetX:g.value.x,targetY:g.value.y,targetPosition:x};return F===Kn.Bezier?[R]=Pp(oe):F===Kn.Step?[R]=Jl({...oe,borderRadius:0}):F===Kn.SmoothStep?[R]=Jl(oe):F===Kn.SimpleBezier?[R]=$p(oe):R=`M${$},${w} ${g.value.x},${g.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:$,sourceY:w,sourcePosition:I,targetX:g.value.x,targetY:g.value.y,targetPosition:x,sourceNode:m.value,sourceHandle:v,targetNode:h.value,targetHandle:U,markerEnd:_.value,markerStart:y.value,connectionStatus:d.value}):t.h("path",{d:R,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":_.value,"marker-start":y.value})))}}}),eT=["id","markerWidth","markerHeight","markerUnits","orient"],tT={name:"MarkerType",compatConfig:{MODE:3}},nT=t.defineComponent({...tT,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(cr).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(cr).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,eT))}}),oT={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},rT={name:"MarkerDefinitions",compatConfig:{MODE:3}},iT=t.defineComponent({...rT,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Le(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=mr(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",oT,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(nT,{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))])]))}}),aT={name:"Edges",compatConfig:{MODE:3}},lT=t.defineComponent({...aT,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Le();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(iT),(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(OA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(JI),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(QI))],64))}}),sT=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:h,ariaLiveMessage:g,snapToGrid:y,snapGrid:_,nodeDragThreshold:k,nodesDraggable:b,elementsSelectable:S,nodesConnectable:E,nodesFocusable:C,hooks:N}=Le(),P=t.ref(null);t.provide(Cp,P),t.provide(kp,e.id);const v=t.inject(Pi),I=t.getCurrentInstance(),$=Sp(),{node:w,parentNode:U}=xp(e.id),{emit:x,on:F}=JA(w,l),R=t.toRef(()=>typeof w.draggable>"u"?b.value:w.draggable),oe=t.toRef(()=>typeof w.selectable>"u"?S.value:w.selectable),ie=t.toRef(()=>typeof w.connectable>"u"?E.value:w.connectable),M=t.toRef(()=>typeof w.focusable>"u"?C.value:w.focusable),L=t.computed(()=>oe.value||R.value||N.value.nodeClick.hasListeners()||N.value.nodeDoubleClick.hasListeners()||N.value.nodeMouseEnter.hasListeners()||N.value.nodeMouseMove.hasListeners()||N.value.nodeMouseLeave.hasListeners()),A=t.toRef(()=>!!w.dimensions.width&&!!w.dimensions.height),V=t.computed(()=>{const B=w.type||"default",D=v==null?void 0:v[`node-${B}`];if(D)return D;let ne=w.template||u.value[B];if(typeof ne=="string"&&I){const X=Object.keys(I.appContext.components);X&&X.includes(B)&&(ne=t.resolveComponent(B,!1))}return ne&&typeof ne!="string"?ne:(l.error(new at(Qe.NODE_TYPE_MISSING,ne)),!1)}),H=Ep({id:e.id,el:P,disabled:()=>!R.value,selectable:oe,dragHandle:()=>w.dragHandle,onStart(B){x.dragStart(B)},onDrag(B){x.drag(B)},onStop(B){x.dragStop(B)},onClick(B){O(B)}}),te=t.computed(()=>w.class instanceof Function?w.class(w):w.class),W=t.computed(()=>{const B=(w.style instanceof Function?w.style(w):w.style)||{},D=w.width instanceof Function?w.width(w):w.width,ne=w.height instanceof Function?w.height(w):w.height;return!B.width&&D&&(B.width=typeof D=="string"?D:`${D}px`),!B.height&&ne&&(B.height=typeof ne=="string"?ne:`${ne}px`),B}),G=t.toRef(()=>Number(w.zIndex??W.value.zIndex??0));return f(B=>{(B.includes(e.id)||!B.length)&&ue()}),t.onMounted(()=>{t.watch(()=>w.hidden,(B=!1,D,ne)=>{!B&&P.value&&(e.resizeObserver.observe(P.value),ne(()=>{P.value&&e.resizeObserver.unobserve(P.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>w.type,()=>w.sourcePosition,()=>w.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:P.value,forceUpdate:!0}])})}),t.watch([()=>w.position.x,()=>w.position.y,()=>{var B;return(B=U.value)==null?void 0:B.computedPosition.x},()=>{var B;return(B=U.value)==null?void 0:B.computedPosition.y},()=>{var B;return(B=U.value)==null?void 0:B.computedPosition.z},G,()=>w.selected,()=>w.dimensions.height,()=>w.dimensions.width,()=>{var B;return(B=U.value)==null?void 0:B.dimensions.height},()=>{var B;return(B=U.value)==null?void 0:B.dimensions.width}],([B,D,ne,X,Y,K])=>{const le={x:B,y:D,z:K+(m.value&&w.selected?1e3:0)};typeof ne<"u"&&typeof X<"u"?w.computedPosition=SA({x:ne,y:X,z:Y},le):w.computedPosition=le},{flush:"post",immediate:!0}),t.watch([()=>w.extent,p],([B,D],[ne,X])=>{(B!==ne||D!==X)&&se()}),w.extent==="parent"||typeof w.extent=="object"&&"range"in w.extent&&w.extent.range==="parent"?yl(()=>A).toBe(!0).then(se):se(),()=>w.hidden?null:t.h("div",{ref:P,"data-id":w.id,class:["vue-flow__node",`vue-flow__node-${V.value===!1?"default":w.type||"default"}`,{[o.value]:R.value,dragging:H==null?void 0:H.value,draggable:R.value,selected:w.selected,selectable:oe.value,parent:w.isParent},te.value],style:{visibility:A.value?"visible":"hidden",zIndex:w.computedPosition.z??G.value,transform:`translate(${w.computedPosition.x}px,${w.computedPosition.y}px)`,pointerEvents:L.value?"all":"none",...W.value},tabIndex:M.value?0:void 0,role:M.value?"group":void 0,"aria-describedby":h.value?void 0:`${Gf}-${n}`,"aria-label":w.ariaLabel,"aria-roledescription":"node",...w.domAttributes,onMouseenter:ge,onMousemove:re,onMouseleave:q,onContextmenu:ae,onClick:O,onDblclick:ce,onKeydown:T},[t.h(V.value===!1?u.value.default:V.value,{id:w.id,type:w.type,data:w.data,events:{...w.events,...F},selected:w.selected,resizing:w.resizing,dragging:H.value,connectable:ie.value,position:w.computedPosition,dimensions:w.dimensions,isValidTargetPos:w.isValidTargetPos,isValidSourcePos:w.isValidSourcePos,parent:w.parentNode,parentNodeId:w.parentNode,zIndex:w.computedPosition.z??G.value,targetPosition:w.targetPosition,sourcePosition:w.sourcePosition,label:w.label,dragHandle:w.dragHandle,onUpdateNodeInternals:ue})]);function se(){const B=w.computedPosition,{computedPosition:D,position:ne}=Gl(w,y.value?Ii(B,_.value):B,l.error,p.value,U.value);(w.computedPosition.x!==D.x||w.computedPosition.y!==D.y)&&(w.computedPosition={...w.computedPosition,...D}),(w.position.x!==ne.x||w.position.y!==ne.y)&&(w.position=ne)}function ue(){P.value&&d([{id:e.id,nodeElement:P.value,forceUpdate:!0}])}function ge(B){H!=null&&H.value||x.mouseEnter({event:B,node:w})}function re(B){H!=null&&H.value||x.mouseMove({event:B,node:w})}function q(B){H!=null&&H.value||x.mouseLeave({event:B,node:w})}function ae(B){return x.contextMenu({event:B,node:w})}function ce(B){return x.doubleClick({event:B,node:w})}function O(B){oe.value&&(!r.value||!R.value||k.value>0)&&Hl(w,a.value,c,s,i,!1,P.value),x.click({event:B,node:w})}function T(B){if(!(Ll(B)||h.value))if(qf.includes(B.key)&&oe.value){const D=B.key==="Escape";Hl(w,a.value,c,s,i,D,P.value)}else R.value&&w.selected&&xo[B.key]&&(B.preventDefault(),g.value=`Moved selected node ${B.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~w.position.x}, y: ${~~w.position.y}`,$({x:xo[B.key].x,y:xo[B.key].y},B.shiftKey))}}});function cT(e={includeHiddenNodes:!1}){const{nodes:n}=Le();return t.computed(()=>{if(n.value.length===0)return!1;for(const o of n.value)if((e.includeHiddenNodes||!o.hidden)&&((o==null?void 0:o.handleBounds)===void 0||o.dimensions.width===0||o.dimensions.height===0))return!1;return!0})}const dT={class:"vue-flow__nodes vue-flow__container"},uT={name:"Nodes",compatConfig:{MODE:3}},fT=t.defineComponent({...uT,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Le(),i=cT(),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",dT,[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(sT),{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 pT(){const{emits:e}=Le();t.onMounted(()=>{if(gp()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new at(Qe.MISSING_STYLES))}})}const mT=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),gT={name:"VueFlow",compatConfig:{MODE:3}},Mp=t.defineComponent({...gT,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=_l(r,"modelValue",o),l=_l(r,"nodes",o),s=_l(r,"edges",o),c=Le(r),d=nI({modelValue:a,nodes:l,edges:s},r,c);return rI(o,c.hooks),WI(),pT(),t.provide(Pi,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(GI,null,{default:t.withCtx(()=>[t.createVNode(lT),mT,t.createVNode(fT),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(YI)],512))}}),hT={name:"Panel",compatConfig:{MODE:3}},yT=t.defineComponent({...hT,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Le(),r=t.computed(()=>`${n.position}`.split("-"));return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vue-flow__panel",r.value]),style:t.normalizeStyle({pointerEvents:t.unref(o)?"none":"all"})},[t.renderSlot(i.$slots,"default")],6))}});var rn=(e=>(e.Lines="lines",e.Dots="dots",e))(rn||{});const Lp=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]}`})},Fp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};rn.Lines+"",rn.Dots+"";const _T={[rn.Dots]:"#81818a",[rn.Lines]:"#eee"},bT=["id","x","y","width","height","patternTransform"],wT={key:2,height:"100",width:"100"},kT=["fill"],CT=["x","y","fill"],ET={name:"Background",compatConfig:{MODE:3}},NT=t.defineComponent({...ET,props:{id:{},variant:{default:()=>rn.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:n,viewport:o}=Le(),r=t.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],d=[s*l||1,c*l||1],f=e.size*l,[u,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[u*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||_T[e.variant||rn.Dots]);return(l,s)=>(t.openBlock(),t.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:t.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[t.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[t.createElementVNode("pattern",{id:i.value,x:t.unref(o).x%r.value.scaledGap[0],y:t.unref(o).y%r.value.scaledGap[1],width:r.value.scaledGap[0],height:r.value.scaledGap[1],patternTransform:`translate(-${r.value.offset[0]},-${r.value.offset[1]})`,patternUnits:"userSpaceOnUse"},[t.renderSlot(l.$slots,"pattern",{},()=>[l.variant===t.unref(rn).Lines?(t.openBlock(),t.createBlock(t.unref(Lp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(rn).Dots?(t.openBlock(),t.createBlock(t.unref(Fp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",wT,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,kT)])):t.createCommentVNode("",!0)])],8,bT)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,CT),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),xT={name:"ControlButton",compatConfig:{MODE:3}},ST=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},vT={class:"vue-flow__controls-button"};function AT(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",vT,[t.renderSlot(e.$slots,"default")])}const gr=ST(xT,[["render",AT]]),IT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},TT=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function PT(e,n){return t.openBlock(),t.createElementBlock("svg",IT,TT)}const OT={render:PT},$T={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},BT=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function VT(e,n){return t.openBlock(),t.createElementBlock("svg",$T,BT)}const DT={render:VT},RT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},MT=[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",RT,MT)}const FT={render:LT},UT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},KT=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 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 GT(e,n){return t.openBlock(),t.createElementBlock("svg",UT,KT)}const jT={render:GT},qT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},zT=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z"},null,-1)];function HT(e,n){return t.openBlock(),t.createElementBlock("svg",qT,zT)}const YT={render:HT},WT={name:"Controls",compatConfig:{MODE:3}},XT=t.defineComponent({...WT,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Uf.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Le(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),h=t.toRef(()=>d.value.zoom>=u.value);function g(){l(),n("zoomIn")}function y(){s(),n("zoomOut")}function _(){c(e.fitViewParams),n("fitView")}function k(){a(!p.value),n("interactionChange",!p.value)}return(b,S)=>(t.openBlock(),t.createBlock(t.unref(yT),{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(gr,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(OT))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(gr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(DT))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(gr,{class:"vue-flow__controls-fitview",onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(FT))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(gr,{key:0,class:"vue-flow__controls-interactive",onClick:k},{default:t.withCtx(()=>[p.value?t.renderSlot(b.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(YT))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(jT))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),ZT=["undo","redo","duplicate","cut","copy","paste"],Up=()=>{};function JT(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function QT(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 eP=Ge.createSharedComposable(()=>{const e=new Set;Ge.useEventListener("keydown",o=>{if(JT(o.target))return;const r=QT(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(!ZT.some(i=>typeof o[i]=="function"))return Up;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function Kp(e={}){if(typeof window>"u")return Up;const n=eP().subscribe(e);return t.onScopeDispose(n),n}const Gp=44,tP=220,jp=366,nP=1e3,oP=Gp+parseFloat(Ou),Mi=1,rP=0,iP=1,aP=2,lP=3,vo=parseInt(QN,10),hr="application/x-datakit+json",Li={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"]},Cn={padding:80,gaps:{nodes:60,edges:80,ranks:60}},sP=1600,cP=1.2,dP=0,uP=200,qp=Symbol("confirm-modal"),Ao="{key}",zn={"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}},Fi=Object.keys(zn).filter(e=>e.includes(Ao)).map(e=>e.replace(Ao,""));function es(e){if(!e||!_r(e))return;const n=Fi.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Ao,"")}function yr(e){if(!e)return null;const n=Fi.find(o=>e.startsWith(o));return n||e}function _r(e){return e?Fi.some(n=>e.startsWith(n)):!1}function zp(e){return e?_r(e)?yr(e)+Ao:e:null}function ts(e){var o;if(!e)return!1;const n=zp(e);return n?((o=zn[n])==null?void 0:o.readable)??!1:!1}function ns(e){var o;if(!e)return!1;const n=zp(e);return n?((o=zn[n])==null?void 0:o.writable)??!1:!1}function Ui(e,n,o){const r=n?hn(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function br(e,n){const o=n(e.source),r=n(e.target);return[Ui(o,e.sourceField,"output"),Ui(r,e.targetField,"input")]}function os(e,n,o,r,i){const a=i(e),l=i(o);return[Ui(a,n,"output"),Ui(l,r,"input")]}function Hp(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 fP(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var pP="\0",Hn="\0",Yp="";let mP=class{constructor(n){ot(this,"_isDirected",!0);ot(this,"_isMultigraph",!1);ot(this,"_isCompound",!1);ot(this,"_label");ot(this,"_defaultNodeLabelFn",()=>{});ot(this,"_defaultEdgeLabelFn",()=>{});ot(this,"_nodes",{});ot(this,"_in",{});ot(this,"_preds",{});ot(this,"_out",{});ot(this,"_sucs",{});ot(this,"_edgeObjs",{});ot(this,"_edgeLabels",{});ot(this,"_nodeCount",0);ot(this,"_edgeCount",0);ot(this,"_parent");ot(this,"_children");n&&(this._isDirected=Object.hasOwn(n,"directed")?n.directed:!0,this._isMultigraph=Object.hasOwn(n,"multigraph")?n.multigraph:!1,this._isCompound=Object.hasOwn(n,"compound")?n.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[Hn]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(n){return this._label=n,this}graph(){return this._label}setDefaultNodeLabel(n){return this._defaultNodeLabelFn=n,typeof n!="function"&&(this._defaultNodeLabelFn=()=>n),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var n=this;return this.nodes().filter(o=>Object.keys(n._in[o]).length===0)}sinks(){var n=this;return this.nodes().filter(o=>Object.keys(n._out[o]).length===0)}setNodes(n,o){var r=arguments,i=this;return n.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(n,o){return Object.hasOwn(this._nodes,n)?(arguments.length>1&&(this._nodes[n]=o),this):(this._nodes[n]=arguments.length>1?o:this._defaultNodeLabelFn(n),this._isCompound&&(this._parent[n]=Hn,this._children[n]={},this._children[Hn][n]=!0),this._in[n]={},this._preds[n]={},this._out[n]={},this._sucs[n]={},++this._nodeCount,this)}node(n){return this._nodes[n]}hasNode(n){return Object.hasOwn(this._nodes,n)}removeNode(n){var o=this;if(Object.hasOwn(this._nodes,n)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[n],this._isCompound&&(this._removeFromParentsChildList(n),delete this._parent[n],this.children(n).forEach(function(i){o.setParent(i)}),delete this._children[n]),Object.keys(this._in[n]).forEach(r),delete this._in[n],delete this._preds[n],Object.keys(this._out[n]).forEach(r),delete this._out[n],delete this._sucs[n],--this._nodeCount}return this}setParent(n,o){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(o===void 0)o=Hn;else{o+="";for(var r=o;r!==void 0;r=this.parent(r))if(r===n)throw new Error("Setting "+o+" as parent of "+n+" would create a cycle");this.setNode(o)}return this.setNode(n),this._removeFromParentsChildList(n),this._parent[n]=o,this._children[o][n]=!0,this}_removeFromParentsChildList(n){delete this._children[this._parent[n]][n]}parent(n){if(this._isCompound){var o=this._parent[n];if(o!==Hn)return o}}children(n=Hn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===Hn)return this.nodes();if(this.hasNode(n))return[]}}predecessors(n){var o=this._preds[n];if(o)return Object.keys(o)}successors(n){var o=this._sucs[n];if(o)return Object.keys(o)}neighbors(n){var o=this.predecessors(n);if(o){const i=new Set(o);for(var r of this.successors(n))i.add(r);return Array.from(i.values())}}isLeaf(n){var o;return this.isDirected()?o=this.successors(n):o=this.neighbors(n),o.length===0}filterNodes(n){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});o.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([l,s]){n(l)&&o.setNode(l,s)}),Object.values(this._edgeObjs).forEach(function(l){o.hasNode(l.v)&&o.hasNode(l.w)&&o.setEdge(l,r.edge(l))});var i={};function a(l){var s=r.parent(l);return s===void 0||o.hasNode(s)?(i[l]=s,s):s in i?i[s]:a(s)}return this._isCompound&&o.nodes().forEach(l=>o.setParent(l,a(l))),o}setDefaultEdgeLabel(n){return this._defaultEdgeLabelFn=n,typeof n!="function"&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,o){var r=this,i=arguments;return n.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var n,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(n=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(n=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),n=""+n,o=""+o,r!==void 0&&(r=""+r);var s=wr(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=gP(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Wp(this._preds[o],n),Wp(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?rs(this._isDirected,arguments[0]):wr(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?rs(this._isDirected,arguments[0]):wr(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?rs(this._isDirected,arguments[0]):wr(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],Xp(this._preds[o],n),Xp(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 Wp(e,n){e[n]?e[n]++:e[n]=1}function Xp(e,n){--e[n]||delete e[n]}function wr(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Yp+a+Yp+(r===void 0?pP:r)}function gP(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 rs(e,n){return wr(e,n.v,n.w,n.name)}var is=mP,hP="2.2.4",yP={Graph:is,version:hP},_P=is,bP={write:wP,read:EP};function wP(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:kP(e),edges:CP(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function kP(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 CP(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 EP(e){var n=new _P(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 NP=xP;function xP(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 Zp=class{constructor(){ot(this,"_arr",[]);ot(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var r=this._keyIndices;if(n=String(n),!Object.hasOwn(r,n)){var i=this._arr,a=i.length;return r[n]=a,i.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var r=this._keyIndices[n];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(n){var o=this._arr,r=2*n,i=r+1,a=n;r<o.length&&(a=o[r].priority<o[a].priority?r:a,i<o.length&&(a=o[i].priority<o[a].priority?i:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,r=o[n].priority,i;n!==0&&(i=n>>1,!(o[i].priority<r));)this._swap(n,i),n=i}_swap(n,o){var r=this._arr,i=this._keyIndices,a=r[n],l=r[o];r[n]=l,r[o]=a,i[l.key]=n,i[a.key]=o}},SP=Zp,Jp=AP,vP=()=>1;function AP(e,n,o,r){return IP(e,String(n),o||vP,r||function(i){return e.outEdges(i)})}function IP(e,n,o,r){var i={},a=new SP,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 TP=Jp,PP=OP;function OP(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=TP(e,i,n,o),r},{})}var Qp=$P;function $P(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 BP=Qp,VP=DP;function DP(e){return BP(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var RP=LP,MP=()=>1;function LP(e,n,o){return FP(e,n||MP,o||function(r){return e.outEdges(r)})}function FP(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 em(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new as;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 as;return r}class as extends Error{constructor(){super(...arguments)}}var tm=em;em.CycleException=as;var nm=tm,UP=KP;function KP(e){try{nm(e)}catch(n){if(n instanceof nm.CycleException)return!1;throw n}return!0}var om=GP;function GP(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?jP:qP,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 jP(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]),rm(n(a[0]),l=>i.push([l,!1])))}}function qP(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),rm(n(a),l=>i.push(l)))}}function rm(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var zP=om,HP=YP;function YP(e,n){return zP(e,n,"post")}var WP=om,XP=ZP;function ZP(e,n){return WP(e,n,"pre")}var JP=is,QP=Zp,eO=tO;function tO(e,n){var o=new JP,r={},i=new QP,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:NP,dijkstra:Jp,dijkstraAll:PP,findCycles:VP,floydWarshall:RP,isAcyclic:UP,postorder:HP,preorder:XP,prim:eO,tarjan:Qp,topsort:tm},im=yP,Mt={Graph:im.Graph,json:bP,alg:nO,version:im.version};let oO=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return am(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&am(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,rO)),r=r._prev;return"["+n.join(", ")+"]"}};function am(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function rO(e,n){if(e!=="_next"&&e!=="_prev")return n}var iO=oO;let aO=Mt.Graph,lO=iO;var sO=dO;let cO=()=>1;function dO(e,n){if(e.nodeCount()<=1)return[];let o=fO(e,n||cO);return uO(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function uO(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)ls(e,n,o,l);for(;l=i.dequeue();)ls(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(ls(e,n,o,l,!0));break}}}return r}function ls(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,ss(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,ss(n,o,d)}),e.removeNode(r.v),a}function fO(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=pO(i+r+3).map(()=>new lO),l=r+1;return o.nodes().forEach(s=>{ss(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function ss(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 pO(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let lm=Mt.Graph;var tt={addBorderNode:CO,addDummyNode:sm,applyWithChunking:Ki,asNonCompoundGraph:gO,buildLayerMatrix:bO,intersectRect:_O,mapValues:IO,maxRank:dm,normalizeRanks:wO,notime:SO,partition:NO,pick:AO,predecessorWeights:yO,range:fm,removeEmptyRanks:kO,simplify:mO,successorWeights:hO,time:xO,uniqueId:um,zipObject:cs};function sm(e,n,o,r){for(var i=r;e.hasNode(i);)i=um(r);return o.dummy=n,e.setNode(i,o),i}function mO(e){let n=new lm().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 gO(e){let n=new lm({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 hO(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 cs(e.nodes(),n)}function yO(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 cs(e.nodes(),n)}function _O(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 bO(e){let n=fm(dm(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 wO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=Ki(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function kO(e){let n=e.nodes().map(l=>e.node(l).rank),o=Ki(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 CO(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 EO(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 Ki(e,n){if(n.length>cm){const o=EO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function dm(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return Ki(Math.max,o)}function NO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function xO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function SO(e,n){return n()}let vO=0;function um(e){var n=++vO;return e+(""+n)}function fm(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 AO(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function IO(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 cs(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let TO=sO,PO=tt.uniqueId;var OO={run:$O,undo:VO};function $O(e){(e.graph().acyclicer==="greedy"?TO(e,o(e)):BO(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,PO("rev"))});function o(r){return i=>r.edge(i).weight}}function BO(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 VO(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 DO=tt;var RO={run:MO,undo:FO};function MO(e){e.graph().dummyChains=[],e.edges().forEach(n=>LO(e,n))}function LO(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=DO.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 FO(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:UO}=tt;var Gi={longestPath:KO,slack:GO};function KO(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=UO(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function GO(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var jO=Mt.Graph,ji=Gi.slack,pm=qO;function qO(e){var n=new jO({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;zO(n,e)<r;)i=HO(n,e),a=n.hasNode(i.v)?ji(e,i):-ji(e,i),YO(n,e,a);return n}function zO(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!ji(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function HO(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=ji(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function YO(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var WO=pm,mm=Gi.slack,XO=Gi.longestPath,ZO=Mt.alg.preorder,JO=Mt.alg.postorder,QO=tt.simplify,e$=Yn;Yn.initLowLimValues=us,Yn.initCutValues=ds,Yn.calcCutValue=gm,Yn.leaveEdge=ym,Yn.enterEdge=_m,Yn.exchangeEdges=bm;function Yn(e){e=QO(e),XO(e);var n=WO(e);us(n),ds(n,e);for(var o,r;o=ym(n);)r=_m(n,e,o),bm(n,e,o,r)}function ds(e,n){var o=JO(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>t$(e,n,r))}function t$(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=gm(e,n,o)}function gm(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,o$(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function us(e,n){arguments.length<2&&(n=e.nodes()[0]),hm(e,{},1,n)}function hm(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=hm(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function ym(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function _m(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===wm(e,e.node(f.v),s)&&c!==wm(e,e.node(f.w),s));return d.reduce((f,u)=>mm(n,u)<mm(n,f)?u:f)}function bm(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),us(e),ds(e,n),n$(e,n)}function n$(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=ZO(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 o$(e,n,o){return e.hasEdge(n,o)}function wm(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var r$=Gi,km=r$.longestPath,i$=pm,a$=e$,l$=s$;function s$(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":Cm(e);break;case"tight-tree":d$(e);break;case"longest-path":c$(e);break;case"none":break;default:Cm(e)}}var c$=km;function d$(e){km(e),i$(e)}function Cm(e){a$(e)}var u$=f$;function f$(e){let n=m$(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=p$(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 p$(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 m$(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 qi=tt;var g$={run:h$,cleanup:b$};function h$(e){let n=qi.addDummyNode(e,"root",{},"_root"),o=y$(e),r=Object.values(o),i=qi.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=_$(e)+1;e.children().forEach(s=>Em(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function Em(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=qi.addBorderNode(e,"_bt"),d=qi.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{Em(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,g=p.borderTop?r:2*r,y=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:g,minlen:y,nestingEdge:!0}),e.setEdge(h,d,{weight:g,minlen:y,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function y$(e){var n={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),n[r]=i}return e.children().forEach(r=>o(r,1)),n}function _$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function b$(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 w$=tt;var k$=C$;function C$(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)Nm(e,"borderLeft","_bl",o,i,a),Nm(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function Nm(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=w$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var E$={adjust:N$,undo:x$};function N$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&xm(e)}function x$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&S$(e),(n==="lr"||n==="rl")&&(v$(e),xm(e))}function xm(e){e.nodes().forEach(n=>Sm(e.node(n))),e.edges().forEach(n=>Sm(e.edge(n)))}function Sm(e){let n=e.width;e.width=e.height,e.height=n}function S$(e){e.nodes().forEach(n=>fs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(fs),Object.hasOwn(o,"y")&&fs(o)})}function fs(e){e.y=-e.y}function v$(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 vm=tt;var A$=I$;function I$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=vm.applyWithChunking(Math.max,r),a=vm.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 T$=tt.zipObject;var P$=O$;function O$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=$$(e,n[r-1],n[r]);return o}function $$(e,n,o){let r=T$(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 B$=V$;function V$(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 D$=tt;var R$=M$;function M$(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 L$(r)}function L$(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&F$(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=>D$.pick(i,["vs","i","barycenter","weight"]))}function F$(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 U$=tt;var K$=G$;function G$(e,n){let o=U$.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(j$(!!n)),c=Am(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Am(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Am(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 j$(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let q$=B$,z$=R$,H$=K$;var Y$=Im;function Im(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=q$(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Im(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&X$(p,m)}});let f=z$(d,o);W$(f,c);let u=H$(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 W$(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function X$(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 Z$=Mt.Graph,J$=tt;var Q$=eB;function eB(e,n,o){let r=tB(e),i=new Z$({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(a=>e.node(a));return e.nodes().forEach(a=>{let l=e.node(a),s=e.parent(a);(l.rank===n||l.minRank<=n&&n<=l.maxRank)&&(i.setNode(a),i.setParent(a,s||r),e[o](a).forEach(c=>{let d=c.v===a?c.w:c.v,f=i.edge(d,a),u=f!==void 0?f.weight:0;i.setEdge(d,a,{weight:e.edge(c).weight+u})}),Object.hasOwn(l,"minRank")&&i.setNode(a,{borderLeft:l.borderLeft[n],borderRight:l.borderRight[n]}))}),i}function tB(e){for(var n;e.hasNode(n=J$.uniqueId("_root")););return n}var nB=oB;function oB(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 rB=A$,iB=P$,aB=Y$,lB=Q$,sB=nB,cB=Mt.Graph,zi=tt;var dB=Tm;function Tm(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,Tm);return}let o=zi.maxRank(e),r=Pm(e,zi.range(1,o+1),"inEdges"),i=Pm(e,zi.range(o-1,-1,-1),"outEdges"),a=rB(e);if(Om(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){uB(c%2?r:i,c%4>=2),a=zi.buildLayerMatrix(e);let f=iB(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Om(e,s)}function Pm(e,n,o){return n.map(function(r){return lB(e,r,o)})}function uB(e,n){let o=new cB;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),sB(r,o,a.vs)})}function Om(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let fB=Mt.Graph,an=tt;var pB={positionX:NB};function mB(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=hB(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(g=>{let y=e.node(g),_=y.order;(_<l||m<_)&&!(y.dummy&&e.node(h).dummy)&&$m(o,g,h)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function gB(e,n){let o={};function r(a,l,s,c,d){let f;an.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)&&$m(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 hB(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function $m(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 yB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function _B(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),n.forEach(s=>{let c=-1;s.forEach(d=>{let f=r(d);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let u=(f.length-1)/2;for(let p=Math.floor(u),m=Math.ceil(u);p<=m;++p){let h=f[p];a[d]===d&&c<l[h]&&!yB(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function bB(e,n,o,r,i){let a={},l=wB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),g={};for(;h;)g[h]?u(h):(g[h]=!0,m.push(h),m=m.concat(p(h))),h=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((h,g)=>Math.min(h,a[g.w]-l.edge(g)),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 wB(e,n,o,r){let i=new fB,a=e.graph(),l=xB(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 kB(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=SB(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 CB(e,n){let o=Object.values(n),r=an.applyWithChunking(Math.min,o),i=an.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let d=Object.values(c),f=r-an.applyWithChunking(Math.min,d);l!=="l"&&(f=i-an.applyWithChunking(Math.max,d)),f&&(e[s]=an.mapValues(c,u=>u+f))})})}function EB(e,n){return an.mapValues(e.ul,(o,r)=>{if(n)return e[n.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function NB(e){let n=an.buildLayerMatrix(e),o=Object.assign(mB(e,n),gB(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=_B(e,i,o,c),f=bB(e,i,d.root,d.align,s==="r");s==="r"&&(f=an.mapValues(f,u=>-u)),r[l+s]=f})});let a=kB(e,r);return CB(r,a),EB(r,e.graph().align)}function xB(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 SB(e,n){return e.node(n).width}let Bm=tt,vB=pB.positionX;var AB=IB;function IB(e){e=Bm.asNonCompoundGraph(e),TB(e),Object.entries(vB(e)).forEach(([n,o])=>e.node(n).x=o)}function TB(e){let n=Bm.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 Vm=OO,Dm=RO,PB=l$,OB=tt.normalizeRanks,$B=u$,BB=tt.removeEmptyRanks,Rm=g$,VB=k$,Mm=E$,DB=dB,RB=AB,Tt=tt,MB=Mt.Graph;var LB=FB;function FB(e,n){let o=n&&n.debugTiming?Tt.time:Tt.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>XB(e));o(" runLayout",()=>UB(r,o,n)),o(" updateInputGraph",()=>KB(e,r))})}function UB(e,n,o){n(" makeSpaceForEdgeLabels",()=>ZB(e)),n(" removeSelfEdges",()=>aV(e)),n(" acyclic",()=>Vm.run(e)),n(" nestingGraph.run",()=>Rm.run(e)),n(" rank",()=>PB(Tt.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>JB(e)),n(" removeEmptyRanks",()=>BB(e)),n(" nestingGraph.cleanup",()=>Rm.cleanup(e)),n(" normalizeRanks",()=>OB(e)),n(" assignRankMinMax",()=>QB(e)),n(" removeEdgeLabelProxies",()=>eV(e)),n(" normalize.run",()=>Dm.run(e)),n(" parentDummyChains",()=>$B(e)),n(" addBorderSegments",()=>VB(e)),n(" order",()=>DB(e,o)),n(" insertSelfEdges",()=>lV(e)),n(" adjustCoordinateSystem",()=>Mm.adjust(e)),n(" position",()=>RB(e)),n(" positionSelfEdges",()=>sV(e)),n(" removeBorderNodes",()=>iV(e)),n(" normalize.undo",()=>Dm.undo(e)),n(" fixupEdgeLabelCoords",()=>oV(e)),n(" undoCoordinateSystem",()=>Mm.undo(e)),n(" translateGraph",()=>tV(e)),n(" assignNodeIntersects",()=>nV(e)),n(" reversePoints",()=>rV(e)),n(" acyclic.undo",()=>Vm.undo(e))}function KB(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 GB=["nodesep","edgesep","ranksep","marginx","marginy"],jB={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},qB=["acyclicer","ranker","rankdir","align"],zB=["width","height","rank"],Lm={width:0,height:0},HB=["minlen","weight","width","height","labeloffset"],YB={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},WB=["labelpos"];function XB(e){let n=new MB({multigraph:!0,compound:!0}),o=gs(e.graph());return n.setGraph(Object.assign({},jB,ms(o,GB),Tt.pick(o,qB))),e.nodes().forEach(r=>{let i=gs(e.node(r));const a=ms(i,zB);Object.keys(Lm).forEach(l=>{a[l]===void 0&&(a[l]=Lm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=gs(e.edge(r));n.setEdge(r,Object.assign({},YB,ms(i,HB),Tt.pick(i,WB)))}),n}function ZB(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 JB(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};Tt.addDummyNode(e,"edge-proxy",a,"_ep")}})}function QB(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 eV(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 tV(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(Tt.intersectRect(r,a)),o.points.push(Tt.intersectRect(i,l))})}function oV(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 rV(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function iV(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 lV(e){var n=Tt.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=>{Tt.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 sV(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 ms(e,n){return Tt.mapValues(Tt.pick(e,n),Number)}function gs(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let cV=tt,dV=Mt.Graph;var uV={debugOrdering:fV};function fV(e){let n=cV.buildLayerMatrix(e),o=new dV({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 pV="1.1.5",mV={graphlib:Mt,layout:LB,debug:uV,util:{time:tt.time,notime:tt.notime},version:pV};const Fm=fP(mV);function gV(e){const{branchLayout:n,phase:o,layoutOptions:r,nodes:i,edges:a}=e,{findNode:l}=Le(),{state:s,branchGroups:c,getNodeById:d,moveNode:f,commit:u}=Ye(),{getNodeDepth:p,isGroupId:m,groupsByOwner:h}=c,{isBranchEdgeId:g,updateGroupLayout:y,translateGroupTree:_,waitForLayoutFlush:k}=n,{viewport:b,padding:S=Cn.padding,gaps:E=Cn.gaps}=r,{nodes:C=Cn.gaps.nodes,edges:N=Cn.gaps.edges,ranks:P=Cn.gaps.ranks}=E;async function v(w=!0){const U=new Map(i.value.map(W=>[W.id,W.data])),x=new Map,F=new Map,R=W=>{if(!W)return;let G=F.get(W);return G||(G=l(W),G&&F.set(W,G),G)},oe=new Map,ie=W=>{let G=oe.get(W);return G!==void 0||(G=p(W),oe.set(W,G)),G},M=W=>{if(!Xo(W.data))return W.parentNode;const G=R(W.data.ownerId);if(!G)throw new Error(`Cannot find owner node '${W.data.ownerId}' for group node '${W.id}' via findNode`);return G.parentNode};for(const W of a.value){if(g(W.id))continue;const G=W.source,se=W.target;if(m(G)||m(se))continue;const ue=R(G),ge=R(se);if(ue){if(!ge)throw new Error(`Cannot find target node '${se}' for edge '${W.id}' via findNode`)}else throw new Error(`Cannot find source node '${G}' for edge '${W.id}' via findNode`);if(M(ue)===M(ge))continue;let re=ue,q=ge,ae=ie(re.id),ce=ie(q.id);for(;ae!==ce;)if(ae>ce){const O=M(re);if(!O)throw new Error(`Expected node '${re.id}' to have parent, but it does not`);const T=R(O);if(!T)throw new Error(`Cannot find parent node '${O}' for node '${re.id}' via findNode`);re=T,ae--}else if(ce>ae){const O=M(q);if(!O)throw new Error(`Expected node '${q.id}' to have parent, but it does not`);const T=R(O);if(!T)throw new Error(`Cannot find parent node '${O}' for node '${q.id}' via findNode`);q=T,ce--}for(;ae>=0;){const O=M(re),T=M(q);if(O===T){x.has(ae)||x.set(ae,[]),x.get(ae).push({v:re.id,w:q.id});break}if(O){if(!T){const ne=`Expected node '${q.id}' to have parent, but it does not`;throw console.error(ne,q),new Error(ne)}}else{const ne=`Expected node '${re.id}' to have parent, but it does not`;throw console.error(ne,re),new Error(ne)}const B=R(O),D=R(T);if(B){if(!D)throw new Error(`Cannot find parent node '${T}' for node '${q.id}' via findNode`)}else throw new Error(`Cannot find parent node '${O}' for node '${re.id}' via findNode`);re=B,q=D,ae--,ce--}}const L=s.value.groups.toSorted((W,G)=>ie(G.ownerId)-ie(W.ownerId));for(const W of L)I(W.memberIds.reduce((G,se)=>{const ue=d(se);if(!ue)return console.warn(`Cannot find node '${se}' of group '${W.id}' by getNodeById`),G;if(ue.phase!==o)return G;if(ue.type==="branch"){const ge=h.value.get(ue.id);ge&&G.push(...ge)}return U.delete(ue.id),G.push(ue),G},[]),{virtualEdges:x.get(ie(W.ownerId)),cachedFindNode:R}),await t.nextTick(),y(W.id,!1),await k();const A=U.values().toArray();for(const W of A){if(Xo(W)||W.type!=="branch")continue;const G=h.value.get(W.id);G&&A.push(...G)}const{autoNodes:V,leftNode:H,rightNode:te}=$(A);I(V,{leftNode:H,rightNode:te,virtualEdges:x.get(0),cachedFindNode:R}),w&&u()}function I(w,U){var re,q,ae,ce,O;const{leftNode:x,rightNode:F,virtualEdges:R,cachedFindNode:oe}=U||{},ie=x?(oe??l)(x.id):void 0,M=F?(oe??l)(F.id):void 0;let L;if(w.length>0){L=new Fm.graphlib.Graph({multigraph:!0}),L.setGraph({rankdir:o==="request"?"LR":"RL",nodesep:C,edgesep:N,ranksep:P});const T=new Set;for(const B of w){const D=(oe??l)(B.id);if(!D){console.warn(`Cannot find graph node '${B.id}' in ${o} phase`);continue}T.add(B.id),Xo(B)?L.setNode(B.id,B.dimensions??D.dimensions):L.setNode(B.id,D.dimensions)}for(const B of a.value)!T.has(B.source)||!T.has(B.target)||L.setEdge(B.source,B.target,{points:[]});R==null||R.forEach(B=>L.setEdge(B,{points:[]})),Fm.layout(L)}const A=[],V=T=>({x:T.x-T.width/2,y:T.y-T.height/2,width:T.width,height:T.height});if(w.length>0){if(!L)throw new Error("Expected dagreGraph to be initialized");for(const T of w){const B=L.node(T.id),D=V(B);A.push(D),Xo(T)?_(T.id,D,D.x+vo,D.y+vo):f(T.id,{x:D.x,y:D.y},!1)}}const H=A.length>0?Hp(A):{x:0,y:0,width:0,height:0},te=H.width,W=H.height,G=H.x,se=H.x+H.width,ue=Math.max(0,Math.min(t.toValue(b==null?void 0:b.width)??Number.POSITIVE_INFINITY,sP)-te-2*C-(((re=ie==null?void 0:ie.dimensions)==null?void 0:re.width)??0)-(((q=M==null?void 0:M.dimensions)==null?void 0:q.width)??0)-2*S),ge=H.y+W/2;x&&f(x.id,{x:G-C-ue/2-(((ae=ie==null?void 0:ie.dimensions)==null?void 0:ae.width)??0),y:ge-(((ce=ie==null?void 0:ie.dimensions)==null?void 0:ce.height)??0)/2},!1),F&&f(F.id,{x:se+C+ue/2,y:ge-(((O=M==null?void 0:M.dimensions)==null?void 0:O.height)??0)/2},!1)}function $(w){let U,x;const F=[];for(const R of w){if(Xo(R)){F.push(R);continue}switch(R.name){case"request":{if(o!=="request")throw new Error(`Unexpected request node in ${o} phase`);if(U)throw new Error("Duplicated request node in request phase");U=R;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=R;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=R;break}case"response":{if(o!=="response")throw new Error(`Unexpected response node in ${o} phase`);if(U)throw new Error("Duplicated response node in response phase");U=R;break}default:{F.push(R);break}}}return{autoNodes:F,leftNode:U,rightNode:x}}return{autoLayout:v}}function hV({phase:e,groupMapById:n,getNodeDepth:o}){const r=t.shallowRef(),i=t.shallowRef();function a(d){r.value=d,i.value=void 0}function l(){r.value&&(r.value=void 0,i.value=void 0)}function s(d){let f;return n.value.forEach(u=>{if(u.phase!==e)return;const p=u.position,m=u.dimensions;if(!p||!m||!(d.x>=p.x&&d.x<=p.x+m.width&&d.y>=p.y&&d.y<=p.y+m.height))return;const g=o(u.ownerId);(!f||g>f.depth)&&(f={depth:g,id:u.id})}),f==null?void 0:f.id}function c(d){if(!r.value){i.value=void 0;return}if(!d){i.value=void 0;return}i.value=s(d)}return{activeGroupId:i,start:a,updateActiveGroup:c,end:l}}function yV({phase:e,readonly:n,flowId:o}){const{findNode:r}=Le(o),i=Ye(),{state:a,groupMapById:l,getNodeById:s,moveNode:c,moveGroup:d,setGroupLayout:f,commit:u,branchGroups:p}=i,{memberGroupMap:m,groupsByOwner:h,getNodeDepth:g,getGroupDepth:y}=p,_=t.ref(),k=M=>!!M&&M.startsWith("branch:");function b(M){const L=[];for(const A of M.memberIds){const V=s(A);V&&L.push(V)}return L}const S=t.computed(()=>{const M=new Map;return m.value.forEach((L,A)=>{if(L.phase!==e||!L.position)return;const V=s(A);V&&(V.phase!==e||V.hidden||M.set(A,L))}),M}),E=t.computed(()=>{const M=new Map;return h.value.forEach((L,A)=>{const V=L.filter(H=>H.phase===e);V.length>0&&M.set(A,V)}),M}),C=t.computed(()=>{const M=[];for(const L of a.value.groups){const A=s(L.ownerId);if(!A||A.phase!==e)continue;const V=L.position,H=L.dimensions;if(!V||!H)continue;const te=b(L).filter(G=>G.phase===e&&!G.hidden),W=y(L.id);M.push({id:L.id,type:"group",position:V,width:H.width,height:H.height,data:{...L,memberIds:te.map(G=>G.id)},draggable:!n,selectable:!1,zIndex:W*Mi+rP})}return M}),N=t.computed(()=>{let M=0;for(const L of a.value.groups){if(L.phase!==e)continue;const A=y(L.id);A>M&&(M=A)}return M}),P=t.computed(()=>{const M=[];for(const L of a.value.groups){if(L.phase!==e||!L.position||!L.dimensions)continue;const A=s(L.ownerId);if(!A||A.phase!==e||A.hidden||!b(L).filter(W=>W.phase===e&&!W.hidden).length)continue;const H=Math.max(g(A.id),y(L.id))+N.value+1,te={id:`branch:${L.id}`,source:A.id,target:L.id,sourceHandle:`branch@${L.branch}`,targetHandle:"input",markerEnd:cr.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:A.id,branch:L.branch,groupId:L.id},zIndex:H*Mi+aP};M.push(te)}return M}),v=new Map,I=new Map;let $;function w(M,L=!0){if(M.phase!==e)return;const A=b(M).filter(G=>G.phase===e&&!G.hidden);if(!A.length)return;const V=[];for(const G of A){const se=r(G.id),ue=se==null?void 0:se.dimensions,ge=(ue==null?void 0:ue.width)??0,re=(ue==null?void 0:ue.height)??0;if(ge<=0||re<=0)return;V.push({...G.position,width:ge,height:re});const q=h.value.get(G.id)??[];for(const ae of q){if(ae.phase!==e)continue;const ce=v.get(ae.id),O=(ce==null?void 0:ce.position)??ae.position,T=(ce==null?void 0:ce.dimensions)??ae.dimensions;!O||!T||V.push({x:O.x,y:O.y,width:T.width,height:T.height})}}const H=Hp(V),te=H.width+vo*2,W=H.height+vo*2;return{position:{x:Math.round(H.x-vo),y:Math.round(H.y-vo)},dimensions:{width:Math.round(te),height:Math.round(W)},commit:L}}function U(){if(v.size===0){$=void 0;return}const M=[];let L=!1;v.forEach((A,V)=>{const H=f(V,A,!1);M.push({id:V,changed:H,commit:A.commit}),A.commit&&H&&!L&&(L=!0)}),v.clear(),$=void 0;for(const{id:A,changed:V,commit:H}of M){if(!V)continue;const te=l.value.get(A);if(!te)continue;const W=S.value.get(te.ownerId);W&&I.set(W.id,{commit:H})}if(I.size>0){const A=Array.from(I);I.clear();for(const[V,{commit:H}]of A)F(V,H)}L&&u("*")}function x(){v.size!==0&&($||($=t.nextTick().then(U)))}function F(M,L=!0){const A=l.value.get(M);if(!A)return;const V=w(A,L);V&&(v.set(M,V),x())}function R(M,L,A,V){const H=l.value.get(M);if(!H)return;if(!H.position){d(M,L,!1),F(M);return}if(A===0&&V===0){d(M,L,!1);return}d(M,L,!1);const te=[M],W=new Set([M]),G=new Set;for(;te.length;){const se=te.shift(),ue=l.value.get(se);if(!ue)continue;const ge=b(ue).filter(re=>re.phase===e&&!re.hidden);for(const re of ge){G.has(re.id)||(c(re.id,{x:re.position.x+A,y:re.position.y+V},!1),G.add(re.id));const q=E.value.get(re.id)??[];for(const ae of q){if(W.has(ae.id))continue;const ce=l.value.get(ae.id);ce!=null&&ce.position&&d(ae.id,{x:ce.position.x+A,y:ce.position.y+V},!1),W.add(ae.id),te.push(ae.id)}}}}function oe(M,L){const A=_.value;if(!A)return!1;if(A===M||L.some(V=>A===V))return!0;for(const V of L){const H=E.value.get(V)??[];if(H!=null&&H.some(te=>te.id===A))return!0}return!1}const ie=new Map;return t.watch(()=>a.value.groups.filter(L=>L.phase===e).map(L=>{const A=L.memberIds.map(V=>{var G,se;const H=r(V),te=Math.round(((G=H==null?void 0:H.dimensions)==null?void 0:G.width)??0),W=Math.round(((se=H==null?void 0:H.dimensions)==null?void 0:se.height)??0);return`${V}:${te}x${W}`});return{id:L.id,memberIds:L.memberIds,signature:A.join(",")}}),M=>{const L=new Set(M.map(A=>A.id));for(const A of ie.keys())L.has(A)||ie.delete(A);for(const A of M)oe(A.id,A.memberIds)||ie.get(A.id)===A.signature||(ie.set(A.id,A.signature),F(A.id))},{deep:!0,flush:"post"}),{groupsByOwner:E,memberGroupMap:S,groupNodes:C,branchEdges:P,isBranchEdgeId:k,updateGroupLayout:F,translateGroupTree:R,updateDragging:M=>{_.value=M},getNodeDepth:g,maxGroupDepth:N,waitForLayoutFlush:()=>$??Promise.resolve()}}function _V(e){t.provide(qp,e)}function Um(){return t.inject(qp,void 0)}function Km(){const e=Um();if(!e)throw new Error("Confirm modal not provided");return e}function bV(e){const{readonly:n,flowId:o}=e,r=Le(o),{onNodesChange:i,onEdgesChange:a,onPaneClick:l,findEdge:s}=r,{disconnectEdge:c,commit:d,portalSelection:f,selectPortalEdge:u}=Ye();i(p=>{p.some(m=>m.type==="select"&&"selected"in m&&m.selected)&&u(void 0)}),a(p=>{const m=p.some(g=>g.type==="select"&&"selected"in g&&g.selected),h=f.value?p.some(g=>g.type==="remove"&&g.id===f.value):!1;(m||h)&&u(void 0)}),l(()=>u(void 0)),Ge.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 Gm(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const wV={default:FN,hover:KN,selected:UN};let jm,hs;function Hi(e){const n=e.id===jm?"selected":e.id===hs?"hover":"default",o=wV[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[kV,CV]=Ge.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Cn.padding,gaps:s=Cn.gaps}=r,{nodes:c=Cn.gaps.nodes}=s,d=Le(o),f=Ye(),u=Um(),p=Ua(),{i18n:{t:m}}=Re(),{findNode:h,fitView:g,deleteKeyCode:y,onNodeDrag:_,onNodeDragStop:k,onConnect:b,onNodesChange:S,onEdgesChange:E,onEdgeUpdate:C,onEdgeMouseEnter:N,onEdgeMouseLeave:P,getNodes:v,setNodes:I,setEdges:$,addSelectedNodes:w,screenToFlowCoordinate:U}=d;y.value=["Delete","Backspace"];const{state:x,commit:F,moveNode:R,selectNode:oe,removeNode:ie,getNodeById:M,connectEdge:L,disconnectEdge:A,getInEdgesByNodeId:V,branchGroups:H,commit:te,reset:W,groupMapById:G}=f,{isGroupId:se}=H;function ue(fe,Te){const ke=M(fe.source),we=M(fe.target);return!!(ke&&we&&ke.phase===Te&&we.phase===Te)}const ge=yV({phase:n,readonly:i,flowId:o}),{memberGroupMap:re,groupNodes:q,branchEdges:ae,isBranchEdgeId:ce,updateGroupLayout:O,translateGroupTree:T,updateDragging:B,getNodeDepth:D,maxGroupDepth:ne}=ge,{activeGroupId:X,start:Y,updateActiveGroup:K,end:le}=hV({phase:n,groupMapById:G,getNodeDepth:D}),j=t.computed(()=>x.value.nodes.filter(fe=>fe.phase===n&&!fe.hidden).map(fe=>{const Te=re.value.get(fe.id),ke=Te==null?void 0:Te.position,we=Te==null?void 0:Te.dimensions,be=Te&&ke&&we?{x:fe.position.x-ke.x,y:fe.position.y-ke.y}:fe.position,Se=D(fe.id),Oe=!!(Te&&ke&&we),xe=(Oe?Se:0)+ne.value+1;return{id:fe.id,type:"flow",position:be,data:fe,deletable:!dl(fe),parentNode:Oe?Te.id:void 0,zIndex:xe*Mi+lP}})),z=t.computed(()=>x.value.edges.filter(fe=>ue(fe,n)).filter(fe=>!H.isEdgeEnteringGroup(fe.source,fe.target)).filter(fe=>{const Te=M(fe.source),ke=M(fe.target);return!(Te!=null&&Te.hidden)&&!(ke!=null&&ke.hidden)}).map(fe=>{const Te=M(fe.source),ke=M(fe.target);if(!Te||!ke){const be=[];throw Te||be.push(`source node "${fe.source}"`),ke||be.push(`target node "${fe.target}"`),new Error(`Missing ${be.join(" and ")} for edge "${fe.id}" in phase "${n}"`)}const we=Math.max(D(fe.source),D(fe.target))+ne.value+1;return Hi({id:fe.id,source:fe.source,target:fe.target,sourceHandle:fe.sourceField?`outputs@${fe.sourceField}`:"output",targetHandle:fe.targetField?`inputs@${fe.targetField}`:"input",markerEnd:cr.ArrowClosed,data:fe,updatable:!i,zIndex:we*Mi+iP})})),J=t.computed(()=>[...ae.value,...z.value]),{autoLayout:de}=gV({phase:n,layoutOptions:r,branchLayout:ge,nodes:j,edges:J});bV({readonly:i,flowId:o}),t.watch([j,q,J],([fe,Te,ke])=>{I([...Te,...fe]),$(ke)},{immediate:!0});const _e=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 Q({source:fe,sourceHandle:Te,target:ke,targetHandle:we}){if(!Te||!we)return;const be=Gm(Te),Se=Gm(we);if((be==null?void 0:be.io)==="input"||(Se==null?void 0:Se.io)==="output"||Te==="output"&&we==="output")return;const Oe=V(ke);let xe=!1,Ve=!1;const $e=[],Fe=[],De=(Se==null?void 0:Se.io)==="input"?Oe.filter(nt=>!nt.targetField):Oe.filter(nt=>!!nt.targetField);De.length>0&&(xe=!0,De.forEach(nt=>{Fe.push(br(nt,M)),A(nt.id,!1)}));const We=(Se==null?void 0:Se.io)==="input"?Se!=null&&Se.field?Oe.filter(nt=>nt.targetField===Se.field):Oe.filter(nt=>!!nt.targetField):Oe.filter(nt=>!nt.targetField);if(We.length>0){if(We.some(Pt=>Pt.source===fe&&Pt.target===ke&&Pt.targetField===(Se==null?void 0:Se.field)&&Pt.sourceField===(be==null?void 0:be.field)))return;Ve=!0,We.forEach(Pt=>{Fe.push(br(Pt,M)),A(Pt.id,!1)})}if(!L({source:fe,sourceField:be==null?void 0:be.field,target:ke,targetField:Se==null?void 0:Se.field},!1)){W(),p({message:m("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if($e.push(os(fe,be==null?void 0:be.field,ke,Se==null?void 0:Se.field,M)),xe||Ve){if(!u)throw W(),new Error("Expected confirm modal to be provided here when reachable");if(!await u(m(xe?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),$e,Fe)){W();return}}te()}b(Q);let he=!1;const Ce=()=>{he&&(he=!1,te())};S(fe=>{fe.filter(we=>we.type==="select").filter(we=>!se(we.id)).sort((we,be)=>we.selected===be.selected?0:we.selected?1:-1).forEach(we=>{oe(we.selected?we.id:void 0)});let ke=!1;fe.forEach(we=>{if(we.type==="remove"){if(se(we.id))return;ke=!0,ie(we.id,!1)}}),ke&&!he&&(he=!0,queueMicrotask(Ce))}),_(({node:fe,event:Te})=>{var Oe,xe,Ve;if(!fe)return;if(se(fe.id)){const $e=fe.id;B($e),K(void 0);const Fe=G.value.get($e);if(!Fe)return;const De=Fe.position??{...fe.position},We=fe.position.x-De.x,Qn=fe.position.y-De.y;T($e,fe.position,We,Qn);const nt=re.value.get(Fe.ownerId);nt&&O(nt.id,!1);return}const ke=fe.id;Y("canvas"),B(ke);const we=fe.parentNode;let be={...fe.position};if(we&&se(we)){const $e=G.value.get(we);$e!=null&&$e.position&&(be={x:$e.position.x+fe.position.x,y:$e.position.y+fe.position.y})}if(R(ke,be,!1),!dl(M(ke))){const $e={x:be.x,y:be.y,width:((Oe=fe.dimensions)==null?void 0:Oe.width)??0,height:((xe=fe.dimensions)==null?void 0:xe.height)??0},Fe=Te&&"clientX"in Te?U({x:Te.clientX,y:Te.clientY}):void 0,De={x:$e.x+$e.width/2,y:$e.y+$e.height/2};K(Fe??De)}const Se=we&&se(we)?we:(Ve=re.value.get(ke))==null?void 0:Ve.id;Se&&O(Se,!1)}),k(({node:fe})=>{var Se;if(!fe)return;if(B(void 0),se(fe.id)){F();return}const Te=fe.id,ke=fe.parentNode;let we={...fe.position};if(ke&&se(ke)){const Oe=G.value.get(ke);Oe!=null&&Oe.position&&(we={x:Oe.position.x+fe.position.x,y:Oe.position.y+fe.position.y})}R(Te,we,!1);const be=ke&&se(ke)?ke:(Se=re.value.get(Te))==null?void 0:Se.id;be&&O(be,!1),ft(Te),le(),F()}),E(fe=>{fe.filter(we=>we.type==="select").sort((we,be)=>we.selected===be.selected?0:we.selected?1:-1).forEach(we=>{ce(we.id)||(jm=we.selected?we.id:void 0,$(be=>be.map(Se=>Se.id!==we.id||!Se.markerEnd?Se:Hi({...Se,zIndex:we.selected?1:void 0}))))});let ke=!1;fe.forEach(we=>{if(we.type==="remove"){if(ce(we.id))return;ke=!0,A(we.id,!1)}}),ke&&!he&&(he=!0,queueMicrotask(Ce))}),N(({edge:fe})=>{ce(fe.id)||(hs=fe.id,$(Te=>Te.map(ke=>ke.id!==fe.id?ke:Hi(ke))))}),P(({edge:fe})=>{ce(fe.id)||(hs=void 0,$(Te=>Te.map(ke=>ke.id!==fe.id?ke:Hi(ke))))}),C(({edge:fe,connection:Te})=>{ce(fe.id)||(A(fe.id,!1),Q(Te))});function pe(fe){g({..._e.value,...fe})}async function me(fe){return oe(fe),new Promise(Te=>setTimeout(()=>{const ke=h(fe);w(ke?[ke]:[]),Te()},0))}function He(fe){const Te=v.value.filter(({type:De})=>De!=="group"),ke=Te.find(({id:De})=>De===fe);if(!ke)throw new Error(`Node ${fe} not found`);const{x:we,y:be}=ke.data.position,{width:Se,height:Oe}=ke.dimensions,xe=be,Ve=be+Oe,$e=Te.filter(({id:De})=>De!==fe).filter(({data:{position:{y:De}},dimensions:{height:We}})=>De<Ve&&De+We>xe).map(({data:{position:{x:De}},dimensions:{width:We}})=>({left:De,right:De+We})).sort((De,We)=>De.left-We.left);let Fe=we+Se+c;for(const{left:De,right:We}of $e)if(!(We<=Fe)){if(Fe+Se<=De)return{x:Fe,y:xe};Fe=Math.max(Fe,We)+c}return{x:Fe,y:xe}}function lt(fe){if(!fe)return;const Te=h(fe);if(!Te)throw new Error(`Node ${fe} not found`);const{position:{x:ke},dimensions:{width:we}}=Te,be=ke+we,{viewport:Se,dimensions:Oe,setViewport:xe}=d,{x:Ve,y:$e,zoom:Fe}=Se.value,{width:De}=Oe.value,We=ke*Fe+Ve,Qn=be*Fe+Ve,nt=De-jp-c;if(Qn<=nt)return;let Pt=nt-Qn;We+Pt<0&&(Pt=-We),Pt!==0&&xe({x:Ve+Pt,y:$e,zoom:Fe},{duration:uP})}function ft(fe){if(!X.value)return!1;const{nodeId:Te,branch:ke}=o1(X.value),we=H.addMember(Te,ke,fe,{commit:!1});return K(void 0),we}return{vueFlowStore:d,editorStore:f,readonly:i,nodes:j,edges:J,selectNode:me,autoLayout:de,placeToRight:He,scrollRightToReveal:lt,fitViewParams:_e,fitView:pe,groupDrop:{activeGroupId:X,startPanelDrag:()=>Y("panel"),endPanelDrag:le,updateActiveGroup:K,attachNodeToActiveGroup:ft}}});let Io=null;function EV(){var n;if(Io)return Io;if(typeof navigator>"u")return Io="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?Io="mac":/Linux/i.test(e)&&!/Android/i.test(e)?Io="linux":Io="windows"}const NV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},xV={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"},SV={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 vV(e,n={}){const o=n.platform??EV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?NV:o==="linux"?SV:xV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const AV={key:0,class:"label"},IV={class:"keys"},Yi=Ae(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=vV(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",AV,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",IV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),TV=["onClick"],PV={key:0,class:"additional-count"},qm=24,OV=16,Wi=Ae(t.defineComponent({__name:"NodePortal",props:{expanded:{type:Boolean,default:()=>{}},reversed:{type:Boolean},targets:{}},setup(e){const n=Number.parseFloat(JN)||0,o={target:"body"},{portalSelection:r,selectPortalEdge:i}=Ye(),a=t.ref(!1),l=t.computed(()=>{const h=r.value;return h?e.targets.some(g=>g.edgeId===h):!1}),s=t.computed(()=>e.expanded!==void 0?e.expanded||l.value:a.value||l.value),c=()=>qm*e.targets.length+n*(e.targets.length-1),d=t.computed(()=>({width:s.value?`${c()}px`:"fit-content"})),f=h=>{i(h)},u=h=>r.value===h,p=t.computed(()=>e.targets.map((h,g)=>{var _;const y=(qm+n)*g;return{edgeId:h.edgeId,key:`${h.node.id}-${h.fieldName??"node"}-${g}`,icon:(_=bt[h.node.type])==null?void 0:_.icon,tooltip:h.fieldName?`${h.node.name}.${h.fieldName}`:h.node.name,highlighted:u(h.edgeId),tooltipEl:null,style:g===0?{width:"fit-content",zIndex:e.targets.length}:{position:"absolute",...e.reversed?{left:`${y}px`,transform:s.value?"translateX(0)":`translateX(-${y}px)`}:{right:0,transform:s.value?`translateX(-${y}px)`:"translateX(0)"},zIndex:e.targets.length-g}}})),m=t.computed(()=>Math.max(e.targets.length-1,0));return(h,g)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-portal",{expanded:s.value,reversed:e.reversed}]),onClick:g[0]||(g[0]=t.withModifiers(()=>{},["stop"])),onDragstart:g[1]||(g[1]=t.withModifiers(()=>{},["stop"])),onMousedown:g[2]||(g[2]=t.withModifiers(()=>{},["stop"])),onMouseenter:g[3]||(g[3]=y=>a.value=!0),onMouseleave:g[4]||(g[4]=y=>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,(y,_)=>(t.openBlock(),t.createBlock(t.unref(Be.KTooltip),{key:y.key,class:"target-box-wrapper","kpop-attributes":o,placement:"top",style:t.normalizeStyle(y.style),text:y.tooltip},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["target-box",{highlighted:y.highlighted}]),onClick:t.withModifiers(k=>f(y.edgeId),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y.icon),{color:t.unref(Yr),size:OV},null,8,["color"])),_===0&&m.value>0?(t.openBlock(),t.createElementBlock("span",PV," +"+t.toDisplayString(m.value),1)):t.createCommentVNode("",!0)],10,TV)]),_:2},1032,["style","text"]))),128))],4)],34))}}),[["__scopeId","data-v-926821a3"]]),Xi=Ae(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>Ne.Left},size:{default:()=>Number.parseFloat(Ou)},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(Ne).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),zm=Ae(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>bt[e.type]),o=t.computed(()=>e1(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"]]),$V={class:"body"},BV={class:"name"},VV={class:"handle"},DV={class:"handle-label-wrapper"},RV={class:"handle-label-wrapper"},MV={class:"handle-label text"},LV={class:"handle"},FV={class:"handle-label-wrapper"},UV={class:"handle-label-wrapper"},KV={class:"handle-label text"},GV={key:2,class:"branch-handles"},jV={class:"handle-label-wrapper"},qV={class:"handle-label text"},Hm=Ae(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=CV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d,branchGroups:f}=Ye(),u=t.computed(()=>_o(e.data.type)),p=t.computed(()=>e.data.fields.input.length>0),m=t.computed(()=>e.data.fields.output.length>0),h=t.computed(()=>p.value&&r(e.data.id).every(A=>A.targetField===void 0)),g=t.computed(()=>m.value&&i(e.data.id).every(A=>A.sourceField===void 0)),y=t.computed(()=>e.data.expanded.input??!1),_=t.computed(()=>e.data.expanded.output??!1),k=t.computed(()=>{var A,V,H;return((H=(V=(A=u.value.io)==null?void 0:A.next)==null?void 0:V.branches)==null?void 0:H.map(({name:te})=>te))??[]}),b=t.computed(()=>k.value.length>0),S=t.computed(()=>f.findMembership(e.data.id)),E=t.computed(()=>{var A,V;if(e.data.type==="property"){const H=(A=e.data.config)==null?void 0:A.property;return ns(H)}return(V=u.value.io)==null?void 0:V.input}),C=t.computed(()=>{var A,V;if(e.data.type==="property"){const H=(A=e.data.config)==null?void 0:A.property;return ts(H)}return(V=u.value.io)==null?void 0:V.output}),N=t.computed(()=>dl(e.data)),P=t.computed(()=>e.data.phase==="response"),v=t.computed(()=>e.data.phase==="request"?Ne.Left:Ne.Right),I=t.computed(()=>e.data.phase==="request"?Ne.Right:Ne.Left),$=t.computed(()=>e.data.phase==="request"?Ne.Right:Ne.Left),w=t.computed(()=>N.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),U=t.computed(()=>N.value?DN:RN);function x(A){return A==="input"?P.value:!P.value}function F(A){const V=new Map,H=A==="input"?r(e.data.id):i(e.data.id);for(const te of H){const W=a(A==="input"?te.source:te.target);if(!W)continue;if(A==="input"){const re=W.type==="vault",q=W.phase!==e.data.phase,ae=f.isEdgeEnteringGroup(W.id,e.data.id);if(!(re||q||ae))continue}else{const re=W.phase!==e.data.phase,q=f.isEdgeEnteringGroup(e.data.id,W.id);if(!(re||q))continue}const G=A==="input"?te.targetField||"input":te.sourceField||"output";let se;if(A==="input"&&te.sourceField){const re=W.fields.output.find(q=>q.id===te.sourceField);se=re==null?void 0:re.name}else if(A==="output"&&te.targetField){const re=W.fields.input.find(q=>q.id===te.targetField);se=re==null?void 0:re.name}const ue={edgeId:te.id,node:W,fieldName:se},ge=V.get(G);ge?ge.push(ue):V.set(G,[ue])}return V}const R=t.computed(()=>F("input")),oe=t.computed(()=>F("output"));function ie(A){!o||o.readonly||A==="input"&&!h.value||A==="output"&&!g.value||l(e.data.id,A)}async function M(){if(!o||o.readonly)return;const A=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(A),o.scrollRightToReveal(A),d.value=!0}function L(){f.removeMember(e.data.id)}return t.watch(h,A=>{A||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(g,A=>{A||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(A,V)=>{ao(A,V)||l(e.data.id,"input",A.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(A,V)=>{ao(A,V)||l(e.data.id,"output",A.length>0,!0,"*")},{deep:!0}),(A,V)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:P.value,implicit:N.value,readonly:e.readonly}])},[t.createElementVNode("div",$V,[N.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Be.KTooltip),{key:0,class:"badge",placement:"top",text:e.data.type},{default:t.withCtx(()=>[t.createVNode(zm,{"icon-only":"",size:"small",type:e.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",BV,t.toDisplayString(w.value),1),e.error?(t.openBlock(),t.createBlock(t.unref(ve.WarningIcon),{key:1,class:"error-icon",color:t.unref(il),size:16},null,8,["color"])):t.createCommentVNode("",!0),N.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Be.KDropdown),{key:2,class:"menu",disabled:e.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:V[1]||(V[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(Be.KDropdownItem),{onClick:M},{default:t.withCtx(()=>[t.createVNode(Yi,{keys:t.unref(Li).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),S.value?(t.openBlock(),t.createBlock(t.unref(Be.KDropdownItem),{key:0,onClick:L},{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(Be.KDropdownItem),{danger:"",onClick:V[0]||(V[0]=H=>t.unref(c)(e.data.id))},{default:t.withCtx(()=>[t.createVNode(Yi,{keys:t.unref(Li).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(Be.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.MoreIcon),{color:t.unref(rl)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:P.value}])},[E.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":p.value}])},[t.createElementVNode("div",VV,[t.createVNode(t.unref(zt),{id:"input",position:v.value,type:"target"},null,8,["position"]),R.value.has("input")?(t.openBlock(),t.createBlock(Wi,{key:0,mode:"input",reversed:x("input"),targets:R.value.get("input")},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",DV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:h.value}]),onClick:V[2]||(V[2]=t.withModifiers(H=>ie("input"),["stop"]))},[V[4]||(V[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ve.UnfoldMoreIcon),{key:0,size:t.unref(Wr)},null,8,["size"])),y.value?(t.openBlock(),t.createBlock(t.unref(ve.UnfoldLessIcon),{key:1,color:h.value?void 0:t.unref(Tu),size:t.unref(Wr)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&y.value?(t.openBlock(),t.createBlock(Xi,{key:0,color:U.value,position:v.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),p.value&&y.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.input,(H,te)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${H.id}`,class:"handle indented"},[t.createVNode(t.unref(zt),{id:`inputs@${H.id}`,position:v.value,type:"target"},null,8,["id","position"]),R.value.has(H.id)?(t.openBlock(),t.createBlock(Wi,{key:0,mode:"input",reversed:x("input"),targets:R.value.get(H.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",RV,[t.createElementVNode("div",MV,t.toDisplayString(H.name),1),t.createVNode(Xi,{color:U.value,position:v.value,type:te<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",LV,[t.createElementVNode("div",FV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:g.value}]),onClick:V[3]||(V[3]=t.withModifiers(H=>ie("output"),["stop"]))},[V[5]||(V[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(ve.UnfoldMoreIcon),{key:0,size:t.unref(Wr)},null,8,["size"])),_.value?(t.openBlock(),t.createBlock(t.unref(ve.UnfoldLessIcon),{key:1,color:g.value?void 0:t.unref(Tu),size:t.unref(Wr)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),m.value&&_.value?(t.openBlock(),t.createBlock(Xi,{key:0,color:U.value,position:I.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(zt),{id:"output",position:I.value,type:"source"},null,8,["position"]),oe.value.has("output")?(t.openBlock(),t.createBlock(Wi,{key:0,mode:"output",reversed:x("output"),targets:oe.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,(H,te)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${H.id}`,class:"handle indented"},[t.createElementVNode("div",UV,[t.createElementVNode("div",KV,t.toDisplayString(H.name),1),t.createVNode(Xi,{color:U.value,position:I.value,type:te<e.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(zt),{id:`outputs@${H.id}`,position:I.value,type:"source"},null,8,["id","position"]),oe.value.has(H.id)?(t.openBlock(),t.createBlock(Wi,{key:0,mode:"output",reversed:x("output"),targets:oe.value.get(H.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),b.value?(t.openBlock(),t.createElementBlock("div",GV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(k.value,H=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${H}`,class:"handle"},[t.createElementVNode("div",jV,[t.createElementVNode("div",qV,t.toDisplayString(H),1)]),t.createVNode(t.unref(zt),{id:`branch@${H}`,connectable:!1,position:$.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-ba1af209"]]),zV=Ae(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?Ne.Right:Ne.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(zt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),HV={key:0,class:"dk-flow-mask"},Ym=Ae(t.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=Ge.useElementBounding(i),{i18n:{t:l}}=Re(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:h,groupDrop:g}=kV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:y,propertiesPanelOpen:_,invalidConfigNodeIds:k,selectedNode:b,duplicateNode:S,commit:E,selectPortalEdge:C}=c,{screenToFlowCoordinate:N,zoomIn:P,zoomOut:v,viewport:I,maxZoom:$,minZoom:w}=s,{activeGroupId:U,startPanelDrag:x,endPanelDrag:F,updateActiveGroup:R,attachNodeToActiveGroup:oe}=g,ie=t.ref(!1);function M(G){var ue;const se=(ue=G.dataTransfer)==null?void 0:ue.types.find(ge=>ge.startsWith(`${hr}/`));if(se)return se.replace(`${hr}/`,"")}function L(G){var se;if(e.mode==="edit"){if(((se=G==null?void 0:G.node)==null?void 0:se.type)==="group"){p(void 0),C(void 0);return}_.value=!0}}function A(G){e.mode!=="edit"||ie.value||(G.preventDefault(),R(N({x:G.clientX,y:G.clientY})))}function V(G){var O;if(e.mode!=="edit"||ie.value)return;const se=(O=G.dataTransfer)==null?void 0:O.getData(hr);if(!se)return;G.preventDefault();const ue=JSON.parse(se);if(ue.action!=="create-node")return;const ge=N({x:G.clientX,y:G.clientY}),{type:re,anchor:q}=ue.data,ae={type:re,phase:e.phase,position:{x:ge.x-q.offsetX,y:ge.y-q.offsetY}},ce=y(ae,!1);if(!ce){F();return}oe(ce),E(),p(ce),_.value=!0,F()}async function H(){await d(),setTimeout(()=>u(),0)}const te=t.computed(()=>{if(e.mode==="preview")return[];const G=[{name:"zoom_in",icon:ve.AddIcon,action:P,disabled:I.value.zoom>=$.value},{name:"zoom_out",icon:ve.RemoveIcon,action:v,disabled:I.value.zoom<=w.value},{name:"fit_view",icon:ve.FullscreenIcon,action:u}];return e.mode==="edit"&&G.push({name:"auto_layout",icon:ve.AutoLayoutIcon,action:H}),G});if(e.phase==="response"&&e.mode==="edit"){Ge.useEventListener("dragstart",se=>{M(se)==="call"&&(ie.value=!0)});const{start:G}=Ge.useTimeoutFn(()=>{ie.value=!1},80);Ge.useEventListener("dragover",()=>{G()}),Ge.useEventListener("dragend",()=>{ie.value=!1})}e.mode==="edit"&&(Ge.useEventListener("dragstart",G=>{M(G)&&x()}),Ge.useEventListener("dragend",()=>{F()}));async function W(){const G=b.value;if(e.mode!=="edit"||!G||G.phase!==e.phase)return;const se=S(G.id,m(G.id));se&&(await p(se),_.value=!0,h(se))}return Kp({enabled:t.computed(()=>!!b.value&&e.mode==="edit"&&b.value.phase===e.phase),duplicate:W}),n({autoLayout:d,fitView:u}),(G,se)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Mp),{id:e.flowId,class:t.normalizeClass(["flow",{readonly:e.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":e.mode==="edit","max-zoom":t.unref(cP),"min-zoom":t.unref(dP),"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:A,onDrop:V,onNodeClick:L,onNodesChange:se[0]||(se[0]=ue=>r("nodes-change")),onNodesInitialized:se[1]||(se[1]=ue=>r("initialized"))},{"node-flow":t.withCtx(({data:ue})=>[t.createVNode(Hm,{data:ue,error:t.unref(k).has(ue.id),readonly:e.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:ue})=>[t.createVNode(zV,{active:t.unref(U)===ue.id,data:ue},null,8,["active","data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(NT)),t.createVNode(t.unref(XT),{"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(te.value,ue=>(t.openBlock(),t.createBlock(t.unref(Be.KTooltip),{key:ue.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${ue.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(gr),{disabled:ue.disabled,onClick:t.withModifiers(ue.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(ue.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"]),ie.value?(t.openBlock(),t.createElementBlock("div",HV,t.toDisplayString(t.unref(l)("plugins.free-form.datakit.flow_editor.phase_mask_help")),1)):t.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-c1890d6b"]]),YV={class:"label-content"},WV={class:"count"},XV={class:"label-content"},ZV={class:"count"},Wm=.5,ys=.03,JV=30,_s=Ae(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=t.ref(!1),r=t.ref(!1),{responsePanelCollapsed:i}=ti(),{state:a,configNodeCounts:l,clearPendingLayout:s,setPendingFitView:c,commit:d,clear:f,portalSelection:u}=Ye(),p=t.useId(),m=`${p}-request`,h=`${p}-response`,g=Le(m),y=Le(h);function _(q,ae){const{onPaneClick:ce,onNodesChange:O,onEdgesChange:T,getSelectedNodes:B,getSelectedEdges:D}=q,{removeSelectedElements:ne}=ae;function X(Y){if(!Y){ne();return}Y.some(K=>K.type==="select")&&B.value.length+D.value.length>0&&ne()}O(X),T(X),ce(()=>X())}_(g,y),_(y,g),t.watch(u,q=>{q&&(g.removeSelectedElements(),y.removeSelectedElements())});const k=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),S=t.useTemplateRef("requestCanvasContainer"),E=t.useTemplateRef("requestFlow"),C=t.useTemplateRef("resizeHandle"),N=t.useTemplateRef("responseLabel"),P=t.useTemplateRef("responseCanvasContainer"),v=t.useTemplateRef("responseFlow"),I=Ge.useElementBounding(k),$=Ge.useElementBounding(b),w=Ge.useElementBounding(S),U=Ge.useElementBounding(C),x=Ge.useElementBounding(N),F=Ge.useElementBounding(P),R=t.computed(()=>Math.max(JV,I.height.value*ys)),oe=t.computed(()=>I.height.value-$.height.value-U.height.value-x.height.value),ie=t.computed(()=>{const q=oe.value;return q?Math.max(ys,R.value/q):ys}),M=t.ref(Wm),L=t.computed(()=>`${M.value*100}%`),A=t.computed(()=>`${(1-M.value)*100}%`),V=t.computed(()=>M.value<=ie.value),H=t.computed(()=>1-M.value<=ie.value);function te(q,{persist:ae=!0}={}){const ce=Math.min(1,Math.max(0,q));M.value=ce,ae&&e.mode==="edit"&&(i.value=H.value)}function W(q,ae=!0){te(q?1:Wm,{persist:ae})}function G(q=!0){te(0,{persist:q})}if(e.mode==="edit"){const q=l.value.response===0,ae=i.value;W(q||ae,!1)}else t.watch(()=>l.value.response,q=>{W(q===0,!1)},{immediate:!0});const se=()=>{e.resizable&&(V.value?W(!1):G())},ue=()=>{e.resizable&&W(!H.value)},{isDragging:ge}=Ge.useDraggable(C,{onMove(q){if(!e.resizable)return;const ae=Math.max(0,q.y-w.top.value),ce=Math.min(1,Math.max(0,ae/oe.value));te(ce,{persist:!1})},onEnd(){e.resizable&&(w.height.value<R.value?G():F.height.value<R.value?W(!0):te(M.value))}});function re(){t.nextTick(()=>{var q,ae;(q=E.value)==null||q.fitView(),(ae=v.value)==null||ae.fitView()})}return t.watch([o,r,()=>a.value.pendingLayout,()=>a.value.pendingFitView],([q,ae,ce,O])=>{e.inactive||!q||!ae||!ce&&!O||(ce&&s(),O&&c(!1),setTimeout(async()=>{var T,B;ce&&(await((T=E.value)==null?void 0:T.autoLayout(!1)),await((B=v.value)==null?void 0:B.autoLayout(!1)),d("*"),ce==="clearHistory"&&f()),O&&setTimeout(()=>re(),0)},0))}),(q,ae)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:k,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:e.resizable}]),onClick:se},[e.resizable?(t.openBlock(),t.createBlock(t.unref(ve.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:V.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",YV,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),t.createElementVNode("span",WV,[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:S,class:t.normalizeClass(["canvas",{dragging:t.unref(ge)}]),style:t.normalizeStyle({flexBasis:L.value})},[t.createVNode(Ym,{ref_key:"requestFlow",ref:E,"flow-id":m,mode:e.mode,phase:"request",onInitialized:ae[0]||(ae[0]=ce=>o.value=!0),onNodesChange:ae[1]||(ae[1]=ce=>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:N,class:t.normalizeClass(["label response",{dragging:t.unref(ge),resizable:e.resizable}]),onClick:ue},[e.resizable?(t.openBlock(),t.createBlock(t.unref(ve.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:H.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",XV,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),t.createElementVNode("span",ZV,[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:P,class:t.normalizeClass(["canvas response",{dragging:t.unref(ge)}]),style:t.normalizeStyle({flexBasis:A.value})},[t.createVNode(Ym,{ref_key:"responseFlow",ref:v,"flow-id":h,mode:e.mode,phase:"response",onInitialized:ae[2]||(ae[2]=ce=>r.value=!0),onNodesChange:ae[3]||(ae[3]=ce=>r.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-3d68b40b"]]),QV={class:"dk-confirm-modal-body"},eD={class:"connections"},tD=Ae(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=Re(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,h,g){return l.value=m,s.value=h??[],c.value=g??[],a.value=!0,await new Promise(y=>{d=y})}return n({open:p}),(m,h)=>{const g=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(g,{"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",QV,[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",eD,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([y,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${_}`,class:"connection"},[t.createVNode(t.unref(ve.AddIcon),{color:t.unref(MN)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(_),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([y,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${_}`,class:"connection"},[t.createVNode(t.unref(ve.RemoveIcon),{color:t.unref(il)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(_),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),nD={class:"dk-editor-nav"},oD={class:"top"},rD={class:"bottom"},iD=Ae(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Ze.createI18n("en-us",rt),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:ve.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=ti(),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",nD,[t.createElementVNode("div",oD,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:h})=>t.createVNode(t.unref(Be.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Be.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:h},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(Xr)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",rD,[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(Be.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Be.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(ve.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(Xr)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(ve.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(Xr)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),aD={class:"dk-editor-main"},lD={class:"header"},sD={class:"actions"},cD={class:"settings"},dD={ref:"canvasContainer",class:"body"},uD=Ae(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Ze.createI18n("en-us",rt),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=Ye(),c=t.inject(dn.DATAKIT_M2,!1),d=["vault","cache"],f=t.computed(()=>c?go:Zt(go,d));function u(h){const g=go[h],y=mn.load(g,{schema:pn,json:!0});if(typeof y!="object"||y===null)return;const _=y,k={config:{..._,nodes:_.nodes??[]}};s(k,!0)}function p(){o.value=!1}Kp({enabled:o,undo:r,redo:i});const m={maxWidth:"300px",zIndex:1e4};return(h,g)=>(t.openBlock(),t.createElementBlock("div",aD,[t.createElementVNode("header",lD,[t.createElementVNode("div",sD,[t.createVNode(t.unref(Be.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Yi,{keys:t.unref(Li).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(Be.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(Be.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Yi,{keys:t.unref(Li).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(Be.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),g[0]||(g[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",cD,[t.createVNode(Mr,{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:m},name:"config.debug"},null,8,["label","label-attributes"])]),g[1]||(g[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(Be.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(f.value,(y,_)=>(t.openBlock(),t.createBlock(t.unref(Be.KDropdownItem),{key:_,onClick:k=>u(_)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${_}`)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(Be.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(ve.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Be.KButton),{onClick:p},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",dD,[t.createVNode(_s,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-e342016d"]]),fD=["draggable"],pD={class:"icon"},mD={class:"content"},gD={class:"title"},hD={class:"description"},yD=Ae(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}={}}=ll[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",pD,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",mD,[t.createElementVNode("div",gD,t.toDisplayString(e.type),1),t.createElementVNode("div",hD,t.toDisplayString(t.unref(r)),1)])],42,fD))}}),[["__scopeId","data-v-38d156c9"]]),_D={class:"dk-node-panel"},bD={key:0,class:"title"},wD={class:"node-list"},kD={"aria-hidden":"true",class:"preview",inert:""},Xm=Ae(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),{createNode:o}=Ye(),r=t.inject(dn.DATAKIT_M2,!1),i=["branch","cache"],a=`dk-drag-preview-${t.useId()}`,l=t.shallowRef(),s=t.computed(()=>l.value?[{id:"preview",type:"flow",data:l.value,position:{x:0,y:0}}]:[]),c=async(d,f)=>{var I,$,w;const u=d.currentTarget,{left:p,top:m,width:h,height:g}=u.getBoundingClientRect(),y=d.clientX-p,_=d.clientY-m;l.value=o({type:f}),await t.nextTick();const k=document.querySelector(`#${a}`)||u,b=k.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:S,offsetHeight:E}=k;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${S}px`,height:`${E}px`}),document.body.appendChild(b);const C=y/h,N=_/g,P={ratioX:C,ratioY:N,offsetX:S*C,offsetY:E*N},v={action:"create-node",data:{type:f,anchor:P}};(I=d.dataTransfer)==null||I.setData(hr,JSON.stringify(v)),($=d.dataTransfer)==null||$.setData(`${hr}/${f}`,f),(w=d.dataTransfer)==null||w.setDragImage(b,P.offsetX,P.offsetY),requestAnimationFrame(()=>{b.remove(),l.value=void 0})};return(d,f)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",_D,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",bD,[t.createVNode(u,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),t.createElementVNode("div",wD,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(ll)),p=>(t.openBlock(),t.createBlock(yD,{key:p,type:p,unsupported:!t.unref(r)&&i.includes(p),onDragstart:c},null,8,["type","unsupported"]))),128))]),t.createElementVNode("div",kD,[t.createVNode(t.unref(Mp),{nodes:s.value},{"node-flow":t.withCtx(p=>[t.createVNode(Hm,{id:a,data:p.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-03b0fafb"]]);function CD(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=Ye(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var h;return((h=l.value.get("vault"))==null?void 0:h.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(h,g)=>{e(s.id,"output",h,!1);const y={...s.config,[h]:g};r(s.id,y)},removeVault:h=>{const g=gn(s,"output",h);if(!g)return;const y=s.fields.output.length===1;o(s.id,g.id,!0,!1);const _=Zt(s.config,h);r(s.id,_,!y),y&&a(s.id)},updateVault:(h,g,y=!0)=>{const _={...s.config,[h]:g};r(s.id,_,y)},renameVault:(h,g,y=!0)=>{var S;const _=gn(s,"output",h);if(!_)return;i(s.id,_.id,g,!1);const k=((S=s.config)==null?void 0:S[h])??"",b={...Zt(s.config,h),[g]:k};r(s.id,b,y)}}}const ED=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ke.useI18n(),i=t.inject(Ue.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),h=e.validateName(m,e.isEditing);return l.value=h||"",h===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,h)=>{const g=t.resolveComponent("KInput"),y=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(Po.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(g,{"model-value":a.value,"onUpdate:modelValue":[h[0]||(h[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(y,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),ND={class:"dk-vault-panel"},xD={class:"title"},SD={class:"vault-list"},vD={key:0,class:"vault-list-item"},AD={class:"vault-list-item-key"},ID={class:"vault-list-item-key-text"},TD=Ae(t.defineComponent({__name:"VaultField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=Lr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=Ke.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 k=s.value.key,b=k!==_.secretName,S=s.value.value!==_.secretRef,E=b||S;s.value.value=_.secretRef,s.value.key=_.secretName,c.value?r("add",_.secretName,_.secretRef):E&&r("update",_.secretName,_.secretRef,b?k:void 0),c.value=null,p()},h=_=>{s.value=_},g=_=>{l(_.id),r("remove",_.key)},y=(_,k)=>{var b;if(!_)return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(_)&&!(k&&_===((b=s.value)==null?void 0:b.key)))return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(_,k)=>{var C,N;const b=t.resolveComponent("KButton"),S=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",ND,[t.createElementVNode("h3",xD,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(ve.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",SD,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),P=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:P.id},[P.key?(t.openBlock(),t.createElementBlock("div",vD,[t.createElementVNode("div",AD,[t.createVNode(t.unref(ve.KeyIcon),{color:t.unref(Yr),size:16},null,8,["color"]),t.createElementVNode("div",ID,t.toDisplayString(P.key),1)]),t.createVNode(E,null,{items:t.withCtx(()=>[t.createVNode(S,{onClick:v=>h(P)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),t.createVNode(S,{danger:"",onClick:v=>g(P)},{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(ve.MoreIcon),{color:t.unref(rl)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(ED,{"is-editing":!!s.value&&!c.value,"secret-name":(C=s.value)==null?void 0:C.key,"secret-ref":(N=s.value)==null?void 0:N.value,"validate-name":y,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function PD(){const{getSchema:e}=je();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=Qt(n);return o.fields.forEach(r=>{const i=Object.keys(r)[0];if(i==="cache"){const a=r[i];r[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]}}}),o})}const OD={class:"dk-cache-panel"},$D={class:"title"},BD={key:0,class:"cache-item"},VD={class:"cache-item-key"},DD={class:"cache-item-key-text"},RD={class:"dk-resource-cache-form"},MD={key:1},LD={key:2,class:"dk-cache-inline-redis"},FD=Ae(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const o=n,{getDefault:r,formData:i}=je(),a=ht("cache");if(a.error)throw new Error("No cache schema");const l=t.ref(!1),{i18n:{t:s}}=Ke.useI18n(),c=t.computed(()=>!(d.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),d=t.computed(()=>{var S;return(S=a.value.value)==null?void 0:S.strategy}),f=t.computed(()=>{var S;return(S=a.value.value)!=null&&S.redis?mn.dump(a.value.value.redis,{indent:2,noRefs:!0}):""}),u=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},h=()=>{u(),a.value.value||(a.value.value=r("cache"),a.value.value.strategy="memory")},g=()=>{l.value=!1,o("update",i)},y=Is.createdBundledHighlighter({langs:{yaml:()=>import("@shikijs/langs/yaml")},themes:{"github-dark":()=>import("@shikijs/themes/github-dark")},engine:()=>mg.createJavaScriptRegexEngine()}),{codeToHtml:_}=Is.createSingletonShorthands(y),k=()=>{var S,E;d.value==="memory"&&((S=i.cache)!=null&&S.partial_id)&&((E=i.cache)==null||delete E.partial_id)};async function b({codeElement:S,language:E,code:C}){S.innerHTML=await _(C,{lang:E,theme:"github-dark",structure:"inline"})}return(S,E)=>{const C=t.resolveComponent("KButton"),N=t.resolveComponent("KDropdownItem"),P=t.resolveComponent("KDropdown"),v=t.resolveComponent("KLabel"),I=t.resolveComponent("KCodeBlock"),$=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",OD,[t.createElementVNode("h3",$D,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",BD,[t.createElementVNode("div",VD,[t.createVNode(t.unref(ve.DeployIcon),{color:t.unref(Yr),size:t.unref(Pu)},null,8,["color","size"]),t.createElementVNode("div",DD,t.toDisplayString(e.strategy),1)]),t.createVNode(P,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(ve.MoreIcon),{color:t.unref(rl)},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(C,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode($,{"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:g},{default:t.withCtx(()=>{var w,U;return[t.createElementVNode("div",RD,[t.createVNode(_d,{items:[{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":k},null,8,["items"]),d.value==="memory"?(t.openBlock(),t.createBlock(pt,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),d.value==="redis"?(t.openBlock(),t.createElementBlock("div",MD,[t.createVNode(v,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(As.RedisConfigurationSelector),{"model-value":(w=t.unref(i).cache)==null?void 0:w.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":E[0]||(E[0]=x=>t.unref(i).cache.partial_id=x)},null,8,["model-value"])])):t.createCommentVNode("",!0),d.value==="redis"&&!((U=t.unref(i).cache)!=null&&U.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(I,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:b},null,8,["code"])])):t.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-ad53942e"]]),UD={class:"dk-resources-panel"},KD=Ae(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=PD(),o=t.ref(0),{addVault:r,removeVault:i,updateVault:a,renameVault:l,formData:s}=CD();function c(g,y,_){_&&_!==g&&l(_,g,!1),a(g,y)}const{state:d,commit:f}=Ye(),u=t.computed(()=>({cache:d.value.cacheConfig}));function p(g){d.value.cacheConfig=g.cache,f()}function m(){d.value.cacheConfig=void 0,f()}function h(){o.value++}return(g,y)=>(t.openBlock(),t.createElementBlock("div",UD,[t.createVNode(yt,{data:t.unref(s),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(TD,{name:"vault",onAdd:t.unref(r),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),y[0]||(y[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(yt,{key:`${o.value}`,data:u.value,schema:t.unref(n)},{default:t.withCtx(()=>{var _;return[t.createVNode(FD,{strategy:(_=u.value.cache)==null?void 0:_.strategy,onCancel:h,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),GD={class:"header"},jD={class:"title"},qD={class:"body"},zD={class:"panel"},HD=Ae(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Ze.createI18n("en-us",rt),{sidePanelExpanded:o}=ti(),{propertiesPanelOpen:r,selectedNode:i}=Ye(),a=t.inject(dn.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,d=>{d||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(d,f)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",GD,[t.createElementVNode("h2",jD,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",qD,[t.createElementVNode("div",zD,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(u,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=p=>l.value=p),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),l.value==="nodes"?(t.openBlock(),t.createBlock(Xm,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(KD,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(Xm,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),YD=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(At,{items:t.unref(Ta)([...t.unref(Iu)]),name:e.name},null,8,["items","name"]))}}),WD=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=je(),{i18n:o}=Re(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(wt,{"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(At,{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"]))}}),XD=["data-testid"],ZD={class:"dk-inputs-map-field-entry-body"},JD={class:"dk-inputs-map-field-entry-content"},QD=Ae(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l,field:s}=Lr(o,r),{i18n:{t:c}}=Re(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(E,C="key"){var N;d.value&&(await t.nextTick(),(N=d.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function h(){const{id:E}=a(),C=i.value.findIndex(({key:N})=>!N);m(C===-1?i.value.length-1:C),f.value=E}function g(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function y(E){p=E.key}function _(E){if(k(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 k(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){k(E)}function S(E,C){E.id!==f.value&&r("change:inputs",E.key,C)}return t.watch(()=>i.value,E=>{f.value&&(E.find(({id:C})=>C===f.value)||(f.value=null))}),(E,C)=>{const N=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),v=t.resolveComponent("KInput"),I=t.resolveComponent("KSelect"),$=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(w,U)=>(t.openBlock(),t.createElementBlock("div",{key:w.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${U}`},[t.createVNode(P,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${U}`},{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",ZD,[t.createElementVNode("div",JD,[t.createVNode(v,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${U}`,modelValue:w.key,"onUpdate:modelValue":[x=>w.key=x,x=>k(w)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":U,"data-testid":`ff-key-${t.unref(s).path.value}.${U}`,error:!!u.value[w.id],"error-message":u.value[w.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:x=>b(w),onChange:x=>_(w),onFocus:x=>y(w)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(I,{modelValue:w.value,"onUpdate:modelValue":x=>w.value=x,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${U}`,"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=>S(w,(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($,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${U}`,icon:"",onClick:x=>g(w)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,XD))),128)),t.createVNode($,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.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"]]),eR={class:"dk-source-item"},Zi=Ae(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("span",eR,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(bt)[e.item.type].icon),{color:t.unref(Yr),size:t.unref(Xr)},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),tR={key:1,class:"dk-inputs-field-or"},En=Ae(t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=je(),{i18n:{t:i}}=Re(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?WD:QD: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(Be.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(At,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":t.withCtx(h=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),()=>[t.createVNode(Zi,{item:h},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",tR,[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(Be.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:3,"field-name-validator":e.fieldNameValidator,items:e.items,"key-order":e.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},{"item-label":t.withCtx(h=>[t.createVNode(Zi,{item:h},null,8,["item"])]),_:1},8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-90518c04"]]),nR={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"},oR={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 rR(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function Wn(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function To(e){const{i18n:{t:n}}=Re(),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 Zm(e,n){const{i18n:{t:o}}=Re();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function iR(e=0,n=1/0,o){const{i18n:{t:r}}=Re();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 Jm(e){const{i18n:{t:n}}=Re();return function(r){if(!rR(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}}=Re();return function(i){if(i==null)return;const a=Jm(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 ws(e=-1/0,n=1/0,o){const{i18n:{t:r}}=Re();return function(a){if(a==null)return;const l=Jm(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 aR(e,n){const{state:o}=Ye(),{i18n:{t:r}}=Re();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 lR(e,n,o){const{i18n:{t:r}}=Re();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 sR(){const{i18n:{t:e}}=Re();return function(o){if(cl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Qm(e){const{i18n:{t:n}}=Re(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Wn(To(o),Zm("identifier",o),sR(),aR(e,o))}function cR(e){const{i18n:{t:n}}=Re(),{getNodeById:o}=Ye();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 Wn(To(s),lR(i,o(e),l))(a)}}function dR(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 kr(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=Ye(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>dR(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const h in a.value)m[h]=p[h];return m}function f(u,p){return{onBlur:()=>{const m=o(),h=s.value[u];h&&h.handleBlur(m[u])},onUpdate:()=>{const m=o(),h=s.value[u];h&&h.handleChange(m[u]),p==null||p()},error:t.computed(()=>{const m=s.value[u];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[u];return m?m.error.value??"":""})}}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function ln(e,n){const o=t.inject(dn.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:d,disconnectEdge:f,connectEdge:u,invalidConfigNodeIds:p,commit:m,revert:h}=Ye(),{i18n:{t:g}}=Re(),y=Km(),_=t.computed(()=>{const M=a(e);if(!M)throw new Error("Node not existed");return M}),k=t.computed(()=>{const L=r.value.edges.filter(A=>A.target===e).reduce((A,V)=>{var se,ue;const H=a(V.source),te=(se=hn(H,"output",V.sourceField))==null?void 0:se.id,W=(ue=hn(_.value,"input",V.targetField))==null?void 0:ue.name,G=H.id+(te?`.${te}`:"");return W?A.inputs={...A.inputs,[W]:G}:A.input=G,A},{});return _.value.fields.input.forEach(A=>{L.inputs||(L.inputs={}),L.inputs[A.name]||(L.inputs[A.name]=null)}),{..._.value.config,...L,name:_.value.name}}),b=M=>{i(e,M??"",!0,`${e}:rename`)},S=(M,L=!0)=>{if(!n)throw new Error("getFormInnerData is not defined");const A=Zt(n(),["name","input","inputs"]),V=M?`update:${e}:${M}`:void 0;d(e,A,L,V)},E=(M,L)=>{const A=gn(_.value,M,L);if(!A)throw new Error(`Field with name "${L}" not found in node "${_.value.name}"`);return A},C=(M,L,A)=>{const V=!!A;l(e,M,L,!V),V&&$(L,A)},N=(M,L,A)=>{const V=E(M,L).id;s(e,V,A)},P=(M,L)=>{const A=E(M,L).id;c(e,A)},v=t.computed(()=>r.value.edges.filter(M=>M.target===e&&!M.targetField)[0]),I=t.computed(()=>r.value.edges.filter(M=>M.target===e&&M.targetField)),$=async(M,L)=>{const A=L==null,V=E("input",M).id;if(A){const q=I.value.find(ae=>ae.targetField===V);q&&f(q.id);return}const{nodeId:H,fieldId:te}=Bu(L),W=E("input",M).id,G=[];v.value&&(G.push(br(v.value,a)),f(v.value.id,!1));const se=I.value.find(q=>q.targetField===V);se&&(G.push(br(se,a)),f(se.id,!1)),u({source:H,sourceField:te,target:e,targetField:W},!1);const ue=os(H,te,e,W,a),ge=G[0]&&ue?G[0][1]===ue[1]:!1;if(m(),ge||G.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ue],G)||h()},w=async M=>{if(M==null){v.value&&f(v.value.id);return}const A=[];for(const G of I.value)A.push(br(G,a)),f(G.id,!1);v.value&&f(v.value.id,!1);const{nodeId:V,fieldId:H}=Bu(M);u({source:V,sourceField:H,target:e,targetField:void 0},!1);const te=os(V,H,e,void 0,a);if(m(),A.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[te],A)||h()},U=M=>{const L=[...r.value.edges,{source:M,target:e}];return ml(ei(L))},x=t.computed(()=>{var L,A;const M=[];for(const V of r.value.nodes)if(!(!o&&V.type==="vault"||!((L=_o(V.type).io)!=null&&L.output))&&V.fields.output&&V.id!==e&&!(V.type==="property"&&!ts((A=V.config)==null?void 0:A.property))&&!U(V.id)&&!(_.value.phase==="request"&&V.phase==="response")&&!(V.type==="vault"&&V.fields.output.length===0)){M.push({value:V.id,label:V.name,type:V.type});for(const te of V.fields.output)M.push({value:`${V.id}.${te.id}`,label:`${V.name}.${te.name}`,type:V.type})}return M}),F=t.computed(()=>_.value.fields.input.map(M=>M.name)||[]);function R(M){p.value.delete(e),M||p.value.add(e)}const oe=cR(e);function ie(M,L,A){const V=a(e);if(!V)throw new Error("Node not found when validating field name");const H=gn(V,M,L);return oe(M,A,H==null?void 0:H.id)}return{formData:k,inputOptions:x,inputEdge:v,inputsEdges:I,inputsFieldNames:F,currentNode:_,setName:b,setConfig:S,addField:C,renameFieldByName:N,removeFieldByName:P,setInputs:$,setInput:w,nameValidator:Qm(e),fieldNameValidator:ie,toggleNodeValid:R}}function sn(e){const{getSchema:n}=je();return t.computed(()=>{if(Et(e))switch(e){case"response":return oR;case"service_request":return nR}try{const l=n().fields[0].config.fields[0].nodes.elements.subschema_definitions[e];if(!l)throw new Error(`Subschema "${e}" not found in the schema.`);return l}catch(o){throw new Error(`Failed to get subschema "${e}": ${o.message}`)}})}const Xn=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Re(),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"])}}}),uR=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Re(),o=t.useTemplateRef("form"),r=sn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=ln(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:h}=kr({validationConfig:{url:Wn(To({fieldName:"URL"}),Zm("url",{fieldName:"URL"})),timeout:Wn(bs("integer"),ws(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),g=h("url",()=>l("url")),y=h("timeout",()=>l("timeout"));return(_,k)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Xn,{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(so,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,name:"url",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(YD,{name:"method",onUpdate:k[0]||(k[0]=S=>t.unref(l)())}),t.createVNode(Vn,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"timeout",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(so,{name:"ssl_server_name","onUpdate:modelValue":k[1]||(k[1]=S=>t.unref(l)("ssl_server_name"))}),t.createVNode(En,{"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"])}}}),fR=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=sn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=ln(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(En,{"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"]))}}),pR=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=sn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=ln(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(En,{"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"]))}}),eg={jqlang:"https://jqlang.org/manual/"},mR=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=Re(),r=t.useTemplateRef("form"),i=sn("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:h,nameValidator:g,toggleNodeValid:y,fieldNameValidator:_}=ln(e.nodeId,()=>r.value.getInnerData());function k(P,v){u("input",P,v)}function b(P){p("input",P)}function S(P,v){m("input",P,v)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=kr({validationConfig:{jq:Wn(To({fieldName:E}),iR(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:y}),N=C("jq",()=>s("jq"));return(P,v)=>{const I=t.resolveComponent("KLabel"),$=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(Xn,{name:t.unref(a).name,validate:t.unref(g),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(I,{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(so,{autosize:"",error:t.unref(N).error.value,"error-message":t.unref(N).errorMessage.value,label:t.unref(E),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(N).onBlur,"onUpdate:modelValue":t.unref(N).onUpdate},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode($,{"hide-icon":"",href:t.unref(eg).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(eg).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(h),items:t.unref(c),"onAdd:field":k,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":S},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),gR=Ae(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(e,{emit:n}){const o=e,r=n,i=t.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=Lr(o,r,!1),{i18n:d}=Re(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(E,C="key"){var N;f.value&&(await t.nextTick(),(N=f.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function h(){const E=l(),C=a.value.findIndex(({key:N})=>!N);m(C===-1?a.value.length-1:C),u.value=E}function g(E){var C;E.id===((C=u.value)==null?void 0:C.id)&&(u.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function y(E){p=E.key}function _(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 k(E,C){var P;if(C.id===((P=u.value)==null?void 0:P.id))return;const N=E.target.value.trim();r("change:value",C.key,N)}function b(E){delete i.value[E.id];const C=o.fieldNameValidator("output",p,E.key);if(C)return i.value[E.id]=C,C}function S(E){b(E)}return t.watchEffect(()=>{u.value&&!a.value.some(E=>E.id===u.value.id)&&a.value.push(u.value)}),(E,C)=>{const N=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton"),I=t.resolveComponent("KInput"),$=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:t.unref(c).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[t.createVNode(P,{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),(w,U)=>(t.openBlock(),t.createBlock($,{key:w.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${U}`},{actions:t.withCtx(()=>[t.createVNode(v,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${U}`,icon:"",onClick:x=>g(w)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(I,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${U}`,modelValue:w.key,"onUpdate:modelValue":[x=>w.key=x,x=>b(w)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":U,"data-testid":`ff-key-${t.unref(c).path.value}.${U}`,error:!!i.value[w.id],"error-message":i.value[w.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:x=>S(w),onChange:x=>_(w),onFocus:x=>y(w)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(I,{modelValue:w.value,"onUpdate:modelValue":x=>w.value=x,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${U}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:x=>k(x,w)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!u.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.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 hR(e){const n={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?n[o]=JSON.stringify(r):n[o]=String(r);return n}function Ji(e){const n={};for(const[o,r]of Object.entries(e))if(r!=null){n[o]=r;try{r==="null"?n[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(n[o]=JSON.parse(r))}catch{}}return n}function yR(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 _R=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=Ye(),{fieldNameValidator:c}=ln(e.nodeId),d=sn("static"),f=Qm(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(S=>S.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const h=t.computed(()=>{var v;if(!u.value)return{};const b=((v=u.value.config)==null?void 0:v.values)??{},S={},E=o(u.value.id).map(I=>I.sourceField).filter(Boolean).map(I=>hn(u.value,"output",I)).map(I=>I==null?void 0:I.name).filter(Boolean),C=u.value.fields.output.map(I=>I.name),N=Object.keys(b);return new Set([...N,...E,...C]).forEach(I=>{if(I in b){S[I]=b[I];return}S[I]=""}),{name:u.value.name,values:hR(S)}});function g(b,S){if(!u.value)throw new Error("No selected node");const E=S!==void 0;if(r(e.nodeId,"output",b,!E),E){const C={values:Ji({...h.value.values,[b]:S})};l(e.nodeId,C)}}function y(b,S){if(!u.value)throw new Error("No selected node");const E=gn(u.value,"output",b);if(!E)throw new Error("No field found to rename");const C={values:Ji(yR(h.value.values??{},b,S))};l(e.nodeId,C,!1),i(e.nodeId,E.id,S)}function _(b){var C;if(!u.value)throw new Error("No selected node");const S=gn(u.value,"output",b);if(!S)throw new Error("No field found to delete");a((C=u.value)==null?void 0:C.id,S.id,!0,!1);const E={values:Ji({...h.value.values})};delete E.values[b],l(e.nodeId,E)}function k(b,S){if(!u.value)throw new Error("No selected node");const E={...h.value.values};E[b]=S;const C={values:Ji(E)};l(e.nodeId,C)}return(b,S)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>{var E;return[t.createVNode(Xn,{name:((E=u.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(gR,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":g,"onChange:value":k,"onRemove:field":_,"onRename:field":y},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),bR={class:"dk-kong-property-item"},wR={class:"property-type"},kR={class:"property-badges"},CR=Ae(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=Re(),r=e,i=n,{formData:a}=je(),l=t.ref(yr(a.property)),s=t.computed(()=>_r(a.property)),c=t.ref(es(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(zn).map(([m])=>{var y;const h=_r(m)?(y=a.property)==null?void 0:y.startsWith(m.replace(Ao,"")):a.property===m;return{label:h&&c.value?m.replace(Ao,c.value):m,value:m,selected:h}}));function u(m){const h=Fi.find(g=>{var y;return(y=a.property)==null?void 0:y.startsWith(g)});h&&(a.property=h+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==yr(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=yr(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=es(m),l.value=yr(m)}),(m,h)=>{const g=t.resolveComponent("KBadge"),y=t.resolveComponent("KSelect"),_=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(y,{key:d.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:h[0]||(h[0]=k=>e.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:k})=>[t.createElementVNode("div",bR,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(k.label),1),t.createElementVNode("div",wR,t.toDisplayString(t.unref(zn)[k.value].dataType),1)]),t.createElementVNode("div",kR,[t.unref(zn)[k.value].readable?(t.openBlock(),t.createBlock(g,{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(zn)[k.value].writable?(t.openBlock(),t.createBlock(g,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(_,{key:0,"model-value":c.value,"onUpdate:modelValue":[h[1]||(h[1]=k=>c.value=k),u],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:h[2]||(h[2]=k=>e.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),ER=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=Ye(),a=sn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,fieldNameValidator:g}=ln(e.nodeId,()=>n.value.getInnerData()),y=t.computed(()=>ns(l.value.property));function _(b){var E;const S=(E=o.value)==null?void 0:E.id;if(!S)throw new Error("Expected selectedNode to be defined");ts(b)||i(S,!1),ns(b)||r(S,!1),c()}const{fields:k}=kr({validationConfig:()=>({property:To({fieldName:"Property"}),key:_r(l.value.property)?To({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:es(l.value.property)}),toggleNodeValid:h});return(b,S)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(Xn,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(At,{name:"content_type",onUpdate:S[0]||(S[0]=E=>t.unref(c)())}),t.createVNode(CR,{validators:t.unref(k),"onUpdate:modelValue":_,"onUpdate:propertyKey":S[1]||(S[1]=E=>t.unref(c)("property-key"))},null,8,["validators"]),y.value?(t.openBlock(),t.createBlock(En,{key:0,"field-name-validator":t.unref(g),"field-names":t.unref(p),items:t.unref(d),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),NR=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=sn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=ln(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:m}=kr({validationConfig:{status:Wn(bs("integer",{fieldName:"Status"}),ws(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),h=m("status",()=>a("status"));return(g,y)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Xn,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Vn,{error:t.unref(h).error.value,"error-message":t.unref(h).errorMessage.value,name:"status",onBlur:t.unref(h).onBlur,"onUpdate:modelValue":t.unref(h).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Mr,{name:"warn_headers_sent","onUpdate:modelValue":y[0]||(y[0]=_=>t.unref(a)())}),t.createVNode(En,{"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 xR(e){const n=ln(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=Ye(),{i18n:{t:l}}=Re(),s=Km(),c=Ua(),d=t.computed(()=>{var b;const _={...n.formData.value},k=Zo(((b=n.currentNode.value)==null?void 0:b.type)||"branch");for(const S of k)(!(S in _)||_[S]==null)&&(_[S]=[]);return _});function f(_,k,b){const S=r(_),E=r(b),C=S?`${S.name}.${k}`:`${_}.${k}`,N=E?E.name:b;return[C,N]}function u(_){return(_==null?[]:Array.isArray(_)?_:[_]).filter(k=>$u(k))}function p(_,k){return i.wouldCreateCycle(_,k)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(_,k,b){const S=[],E=[],C=[];for(const N of b){const P=i.findMembership(N);if(!P||P.ownerId===_&&P.branch===k)continue;const v=i.getMembers(P.ownerId,P.branch).filter(I=>I!==N);C.push({ownerId:P.ownerId,branch:P.branch,members:v}),S.push(f(_,k,N)),E.push(f(P.ownerId,P.branch,N))}return{conflictUpdates:C,addedAssignments:S,removedAssignments:E}}function h(_,k,b,S){let E=!1;for(const C of S)E=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||E;return E=i.setMembers(_,k,b,{commit:!1})||E,E}async function g(_,k){const b=n.currentNode.value,S=u(k),E=i.prepareMembers(b.id,_,S),C=i.getMembers(b.id,_);if(ul(C,E))return!0;const N=E.filter(w=>!C.includes(w));for(const w of N)if(p(b.id,w))return!1;const{conflictUpdates:P,addedAssignments:v,removedAssignments:I}=m(b.id,_,N);return P.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),v,I)?!1:(h(b.id,_,E,P)&&a(),!0)}const y=t.computed(()=>{const _=n.currentNode.value;return!_||!i?[]:o.value.nodes.filter(k=>k.id!==e&&!Et(k.type)&&k.phase===_.phase&&!i.wouldCreateCycle(_.id,k.id)).map(k=>({value:k.id,label:k.name,type:k.type}))});return{...n,formData:d,branchOptions:y,updateBranchMembers:g}}const SR=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Re(),o=sn("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}=xR(e.nodeId);async function h(g,y){await m(g,y)||(r.value+=1)}return(g,y)=>(t.openBlock(),t.createBlock(yt,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Xn,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Be.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(At,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:y[0]||(y[0]=_=>h("then",_))},{"item-label":t.withCtx(_=>[t.createVNode(Zi,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode(At,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:y[1]||(y[1]=_=>h("else",_))},{"item-label":t.withCtx(_=>[t.createVNode(Zi,{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),"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"]))}}),vR=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=sn("cache"),{i18n:{t:r}}=Re(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=ln(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:h}=kr({validationConfig:()=>({ttl:Wn(bs("integer",{fieldName:"TTL"}),ws(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),g=h("ttl",()=>l("ttl"));return(y,_)=>(t.openBlock(),t.createBlock(yt,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Xn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Be.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(Mr,{name:"bypass_on_error","onUpdate:modelValue":_[0]||(_[0]=k=>t.unref(l)("bypass_on_error"))}),t.createVNode(Vn,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,name:"ttl",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},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),"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"]))}}),AR=["innerHTML"],IR=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${jp}px`},offsetTop:{default:`${oP}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=Ye(),o=t.computed(()=>e.nodeId&&n(e.nodeId)),r=t.computed(()=>{var i;switch((i=o.value)==null?void 0:i.type){case"call":return uR;case"service_request":return fR;case"response":return pR;case"jq":return mR;case"static":return _R;case"property":return ER;case"exit":return NR;case"branch":return SR;case"cache":return vR;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Be.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(nP),onClose:a[0]||(a[0]=l=>i.$emit("close"))},t.createSlots({default:t.withCtx(()=>[o.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(It)(o.value.type)},null,8,AR)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(zm,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),TR=Ae(IR,[["__scopeId","data-v-bad25d77"]]),PR={class:"dk-editor-content"},OR={class:"main"},$R=Ae(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=Ye();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",PR,[t.createVNode(t.unref(HD)),t.createElementVNode("div",OR,[t.createVNode(uD)]),t.createVNode(TR,{"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"]]),BR={key:0,class:"dk-editor-modal"},VR=Ae(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({v8758bbfe:`${t.unref(tP)}px`,v30e03211:`${t.unref(Gp)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=Ye();_V(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=Ge.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",BR,[t.createVNode(iD,{class:"nav",onBack:l}),t.createVNode($R,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(tD,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),DR={class:"dk-flow-editor"},RR={class:"flow-panels-container"},MR={class:"overlay"},LR=Ae(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Ze.createI18n("en-us",rt),{formData:r}=je(),i=n;function a(c,d,f,u){const p={...r.config,nodes:c};f!==void 0&&(p.resources=f);const m={...r.__ui_data,...d};r.config=p,r.__ui_data=m,u!=null?r.partials=[{id:u}]:r.partials&&(r.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=ju(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),b1({enabled:l}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",DR,[t.createElementVNode("div",RR,[t.createVNode(_s,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",MR,[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(ve.ExpandIcon))]),_:1})])]),t.createVNode(VR,{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 FR(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 UR(e){const n=e.path[2];return n==="output"||n==="outputs"}function tg(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function ng(e,n){const o=e.input!==void 0&&e.input!==null,r=tg(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=tg(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 og(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 FR(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}),UR(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 KR=ee.z.enum(vu),GR=ee.z.enum(ho),rg=e=>ho.includes(e),ks=ee.z.enum(Au),ig=ks.options;ee.z.union([ks,KR]);const jR=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,ag=ee.z.string().min(1).max(255).regex(jR,"Invalid node name (snake_case / kebab-case only)").refine(e=>!rg(e),"Name clashes with reserved implicit node").brand(),Qi=ee.z.union([GR,ag]),qR=ee.z.string().min(1).brand(),zR=["then","else"];ee.z.enum(zR);const dt=ee.z.string().refine(e=>{if(Qi.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return Qi.safeParse(o).success&&qR.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),lg=ee.z.enum(Iu),Zn=ee.z.object({type:ee.z.string(),name:ag,input:dt,inputs:ee.z.record(ee.z.string(),dt).nullish(),output:dt,outputs:ee.z.record(ee.z.string(),dt).nullish()}).loose().superRefine((e,n)=>{ng(e,n)}),HR=ee.z.object({type:ee.z.string(),name:ee.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}),ig.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${ig.join(", ")}`})}),YR=Zn.safeExtend({type:ee.z.literal("call"),method:lg.nullish(),ssl_server_name:ee.z.string().min(1).nullish(),timeout:ee.z.number().int().min(0).max(2147483646).nullish(),url:ee.z.url(),inputs:ee.z.object({body:dt,headers:dt,query:dt}).partial().nullish(),outputs:ee.z.object({body:dt,headers:dt,status:dt}).partial().nullish()}).strict(),WR=Zn.safeExtend({type:ee.z.literal("exit"),status:ee.z.number().int().min(200).max(599).nullish(),warn_headers_sent:ee.z.boolean().nullish(),output:ee.z.never().optional(),outputs:ee.z.never().optional()}).strict(),XR=Zn.safeExtend({type:ee.z.literal("jq"),jq:ee.z.string().min(1).max(10240),outputs:ee.z.never().optional()}).strict(),ZR=Zn.safeExtend({type:ee.z.literal("property"),content_type:ee.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:ee.z.string().min(1),inputs:ee.z.never().optional(),outputs:ee.z.never().optional()}).strict(),JR=Zn.safeExtend({type:ee.z.literal("static"),values:ee.z.record(ee.z.string(),ee.z.unknown()),input:ee.z.never().optional(),inputs:ee.z.never().optional()}).strict(),QR=Zn.safeExtend({type:ee.z.literal("cache"),bypass_on_error:ee.z.boolean().nullish(),inputs:ee.z.object({data:dt,key:dt,ttl:dt}).partial().nullish(),outputs:ee.z.object({data:dt,hit:dt,miss:dt,stored:dt}).partial().nullish(),ttl:ee.z.number().int().gt(0).nullish()}).strict(),eM=Zn.safeExtend({type:ee.z.literal("branch"),then:ee.z.array(Qi).nullish(),else:ee.z.array(Qi).nullish()}).strict(),tM=HR.pipe(ee.z.discriminatedUnion("type",[YR,WR,XR,ZR,JR,QR,eM])),nM=ee.z.record(ee.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),ee.z.string().min(1).max(4095)),oM=ee.z.object({dictionary_name:ee.z.string().default("kong_db_cache")}),rM=ee.z.object({host:ee.z.string().default("127.0.0.1"),port:ee.z.number().int().min(0).max(65535).default(6379)}),iM=ee.z.object({ip:ee.z.string().default("127.0.0.1"),port:ee.z.number().int().min(0).max(65535).default(6379)}),aM=ee.z.object({host:ee.z.string().optional().default("127.0.0.1"),port:ee.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:ee.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:ee.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:ee.z.number().int().min(0).max(2147483646).default(2e3),username:ee.z.string().optional(),password:ee.z.string().optional(),sentinel_username:ee.z.string().optional(),sentinel_password:ee.z.string().optional(),database:ee.z.number().int().optional().default(0),keepalive_pool_size:ee.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:ee.z.number().int().min(0).max(2147483646).optional(),sentinel_master:ee.z.string().optional(),sentinel_role:ee.z.enum(["master","slave","any"]).optional(),sentinel_nodes:ee.z.array(rM).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:ee.z.array(iM).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:ee.z.boolean().default(!1).optional(),ssl_verify:ee.z.boolean().default(!1).optional(),server_name:ee.z.string().optional(),cluster_max_redirections:ee.z.number().int().default(5).optional(),connection_is_proxied:ee.z.boolean().default(!1).optional(),timeout:ee.z.number().int().optional(),sentinel_addresses:ee.z.array(ee.z.string()).min(1).optional(),cluster_addresses:ee.z.array(ee.z.string()).min(1).optional()}).superRefine((e,n)=>{var c;const o=e.host!==void 0&&e.host!==null,r=e.port!==void 0&&e.port!==null;(o&&!r||!o&&r)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,l=!!((c=e.sentinel_nodes)!=null&&c.length),s=[i,a,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!o&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),lM=ee.z.object({strategy:ee.z.enum(["memory","redis"]).optional(),memory:oM,redis:aM}),sM=ee.z.object({vault:nM.nullish(),cache:lM.nullish()});ee.z.array(ee.z.object({id:ee.z.string()})),ee.z.object({nodes:ee.z.array(tM).min(1,"At least one node is required"),debug:ee.z.boolean().nullish(),resources:sM.nullish()}).strict().superRefine((e,n)=>{og(e,ho,n)});const sg=ks.options,Cs=ee.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!rg(e),"Node name conflicts with reserved implicit node"),ut=ee.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"),Jn=ee.z.object({type:ee.z.string(),name:Cs,input:ut.nullish(),inputs:ee.z.record(ee.z.string(),ut.nullish()).nullish(),output:ut.nullish(),outputs:ee.z.record(ee.z.string(),ut.nullish()).nullish()}).loose().superRefine((e,n)=>{ng(e,n)}),cM=ee.z.object({type:ee.z.string(),name:ee.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}),sg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${sg.join(", ")}`})}),dM=Jn.safeExtend({type:ee.z.literal("call"),method:lg.nullish(),ssl_server_name:ee.z.string().nullish(),timeout:ee.z.union([ee.z.number(),ee.z.string()]).nullish(),url:ee.z.string().nullish(),inputs:ee.z.object({body:ut.nullish(),headers:ut.nullish(),query:ut.nullish()}).partial().nullish(),outputs:ee.z.object({body:ut.nullish(),headers:ut.nullish(),status:ut.nullish()}).partial().nullish()}).strict(),uM=Jn.safeExtend({type:ee.z.literal("exit"),status:ee.z.union([ee.z.number(),ee.z.string()]).nullish(),warn_headers_sent:ee.z.boolean().nullish(),output:ee.z.never().optional(),outputs:ee.z.never().optional()}).strict(),fM=Jn.safeExtend({type:ee.z.literal("jq"),jq:ee.z.string().nullish(),outputs:ee.z.never().optional()}).strict(),pM=Jn.safeExtend({type:ee.z.literal("property"),content_type:ee.z.string().nullish(),property:ee.z.string().nullish(),inputs:ee.z.never().optional(),outputs:ee.z.never().optional()}).strict(),mM=Jn.safeExtend({type:ee.z.literal("static"),values:ee.z.record(ee.z.string(),ee.z.unknown()).nullish(),input:ee.z.never().optional(),inputs:ee.z.never().optional()}).strict(),gM=Jn.safeExtend({type:ee.z.literal("cache"),bypass_on_error:ee.z.boolean().nullish(),inputs:ee.z.object({data:ut.nullish(),key:ut.nullish(),ttl:ut.nullish()}).partial().nullish(),outputs:ee.z.object({data:ut.nullish(),hit:ut.nullish(),miss:ut.nullish(),stored:ut.nullish()}).partial().nullish(),ttl:ee.z.union([ee.z.number(),ee.z.string()]).nullish()}).strict(),hM=Jn.safeExtend({type:ee.z.literal("branch"),then:ee.z.array(Cs).nullish(),else:ee.z.array(Cs).nullish()}).strict(),yM=cM.pipe(ee.z.discriminatedUnion("type",[dM,uM,fM,pM,mM,gM,hM])),_M=ee.z.record(ee.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),ee.z.string().min(1).max(4095)),bM=ee.z.object({dictionary_name:ee.z.string().default("kong_db_cache")}),wM=ee.z.object(),kM=ee.z.object({strategy:ee.z.enum(["memory","redis"]).optional(),memory:bM.optional(),redis:wM.optional()}),CM=ee.z.object({vault:_M.nullish(),cache:kM.nullish()}),EM=ee.z.object({nodes:ee.z.array(yM).nullish(),debug:ee.z.boolean().nullish(),resources:CM.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||og(e,ho,n)}).nullish(),NM={class:"dk-option-label"},xM={class:"dk-option-label"},SM=["innerHTML"],vM=Ae(t.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},pluginName:{}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=e,r=t.inject(dn.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(dn.DATAKIT_M2,!1),a=t.ref(!1);t.onMounted(()=>{a.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:l}=ti(),s=t.computed(()=>r&&f.value?l.value:"code"),c=t.computed(()=>i?s.value==="flow"?"form":"code":"form"),d={flow:ve.DesignIcon,code:ve.CodeblockIcon},f=t.ref(!0),u=t.computed(()=>{const b=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return b[0].disabled=!f.value,b}),p=t.computed(()=>{switch(s.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(()=>n(i?"plugins.free-form.datakit.plugin_config.title":"plugins.form.sections.plugin_config.title"));t.watch(s,()=>{var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})});function h(){var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})}function g(){h()}function y(b){h();let S=b;i&&(S=b==null?void 0:b.config);const{success:E}=EM.safeParse(S);let C=E;!i&&C&&(C=!_(b)),f.value=C}function _(b){var E,C;return!!((E=b==null?void 0:b.resources)!=null&&E.vault||((C=b==null?void 0:b.nodes)==null?void 0:C.some(N=>N.type==="branch"||N.type==="cache")))}function k(b){var S;f.value=!1,(S=o.onValidityChange)==null||S.call(o,{model:"config",valid:!1,error:b})}return(b,S)=>{const E=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(i)?(t.openBlock(),t.createBlock(t.Teleport,{key:0,disabled:!a.value,to:"#plugin-form-page-actions"},[t.createVNode(t.unref(Be.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":s.value,options:u.value,"onUpdate:modelValue":S[0]||(S[0]=C=>l.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(E,{disabled:f.value||C.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",NM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])],8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(kd,t.mergeProps(o,{class:"dk-form","editor-mode":c.value}),t.createSlots({"code-editor":t.withCtx(()=>[t.createVNode(Su,{class:"code-editor",editing:o.isEditing,onChange:y,onError:k},null,8,["editing"])]),"plugin-config-title":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(m.value),1)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:p.value},null,8,SM)]),default:t.withCtx(()=>[s.value==="flow"?(t.openBlock(),t.createBlock(LR,{key:0,"is-editing":o.isEditing,onChange:g},null,8,["is-editing"])):s.value==="code"&&!t.unref(i)?(t.openBlock(),t.createBlock(Su,{key:1,class:"code-editor",editing:o.isEditing,onChange:y,onError:k},null,8,["editing"])):t.createCommentVNode("",!0)]),_:2},[t.unref(r)&&!t.unref(i)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Be.KSegmentedControl),{"model-value":s.value,options:u.value,"onUpdate:modelValue":S[1]||(S[1]=C=>l.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(E,{disabled:f.value||C.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",xM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])]),key:"0"}:void 0]),1040,["editor-mode"])],64)}}}),[["__scopeId","data-v-35f07a89"]]),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))},dg=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},AM=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ke.useI18n(),l={prepareFormData:c=>{var f,u;const d=io(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{dg(p.headers),dg(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=io(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(yt,{config:l,data:e.data,schema:e.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(wt,{"as-child":"",name:"config","reset-label-path":"reset"},{default_acl:t.withCtx(({name:f})=>[t.createVNode(Go,{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(Go,{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(Ur)]),_:1},8,["data","schema"]))}}),IM=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(Ue.AUTOFILL_SLOT,o==null?void 0:o[Ue.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ma,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(AM,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),TM=Ae(t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n}=je(),o=t.computed(()=>{const r=[],i=[],a=new Set,s=n().fields.find(d=>Object.keys(d)[0]==="config");if(!s||!("config"in s))return{defaultVisible:r,advanced:i};const c=s.config;c.entity_checks&&c.entity_checks.forEach(d=>{var u,p;let f;"at_least_one_of"in d?f=d.at_least_one_of:"conditional"in d&&((u=n(`config.${d.conditional.if_field}`))!=null&&u.required)&&d.conditional.then_match.required?f=[d.conditional.if_field,d.conditional.then_field]:"conditional_at_least_one_of"in d&&((p=n(`config.${d.conditional_at_least_one_of.if_field}`))!=null&&p.required)&&(f=[d.conditional_at_least_one_of.if_field,...d.conditional_at_least_one_of.then_at_least_one_of]),f==null||f.forEach(m=>a.add(m))});for(const d of c.fields){const f=Object.keys(d)[0];if(d[f].required){r.push(f);continue}if(a.has(f)){r.push(f);continue}i.push(f)}return{defaultVisible:r,advanced:i}});return(r,i)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(wt,{"as-child":"",name:"config",omit:o.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(Ur,{class:"ff-advanced-fields","hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(wt,{"as-child":"",name:"config",omit:o.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1})],64))}}),[["__scopeId","data-v-27eb1788"]]),ug=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:IM,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:{},pluginName:{}},setup(e){const n=e,o=t.useSlots();return t.provide(Ue.AUTOFILL_SLOT,o==null?void 0:o[Ue.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(kd,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(()=>[t.createVNode(TM)]),_:1},16))}}),DatakitForm:vM,RequestCalloutForm:vk,ServiceProtectionForm:aC},Symbol.toStringTag,{value:"Module"}));function PM(e,n){const o=Ot[e];if(!o||!o.fieldRules)return n;const r=OM(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 OM(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 $M={class:"kong-ui-entities-plugin-form"},BM={key:1,class:"entity-form"},VM={class:"plugin-config-empty-state"},DM=Ae(t.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var ue,ge;const o=Object.keys(Ue.sharedForms),r=Object.keys(ug);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,a=e,{axiosInstance:l}=ye.useAxios((ue=a.config)==null?void 0:ue.axiosRequestConfig),{parseSchema:s}=Ke.useSchemas({entityId:((ge=a.entityMap.focusedEntity)==null?void 0:ge.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}=Ke.usePluginHelpers(),m=Ke.useExperimentalFreeForms(),{objectsAreEqual:h}=ye.useHelpers(),{i18n:{t:g}}=Re(),y=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,q)=>{let ae=`${a.config.apiBaseUrl}${Xe.form[a.config.app].entityGetOne}`;return ae=y(ae),ae=ae.replace(/{entity}/gi,re),ae=ae.replace(/{id}/gi,q),ae},k=re=>{let q=`${a.config.apiBaseUrl}${Xe.form[a.config.app].entityGetAll}`;return q=y(q),q=q.replace(/{entity}/gi,re),q},b=(re,q,ae)=>{const ce=_(re,q);return l.get(ce,ae)},S=(re,q)=>{const ae=k(re);return a.config.app==="konnect"?l.get(ae).then(ce=>{const{data:{data:O}}=ce;if(delete q.size,delete q.offset,O.length&&Object.keys(q).length===1){const T=Object.keys(q)[0],B=O.filter(D=>D[T]?!!D[T].toLowerCase().includes(q[T].toLowerCase()):!1);ce.data.data=B}return ce}):l.get(ae,{params:q})},E=(re,q,ae)=>{const ce=k(re);if(a.config.app==="konnect"){const{size:O,offset:T,...B}=q;if(re==="consumer_groups")return l.get(ce,{params:{size:1e3},signal:ae}).then(ne=>{const{data:{data:X}}=ne;if(X.length&&Object.keys(B).length===1){const Y=Object.keys(B)[0],K=X.filter(le=>le[Y]?!!le[Y].toLowerCase().includes(B[Y].toLowerCase()):!1);ne.data.data=K}return ne});const D={size:O,offset:T};for(const ne of Object.keys(B))D.filter={[ne]:{contains:B[ne]}};return l.get(ce,{params:D,signal:ae})}return l.get(ce,{params:q,signal:ae})},C=(re,q=50)=>{const ae=k(re);return l.get(ae,{params:{size:q}})};t.provide(Ue.FORMS_API_KEY,{getOne:b,getAll:S,getAllV2:E,peek:C}),t.provide(Ue.FORMS_CONFIG,a.config);const N=t.ref(""),P=t.ref(""),v=t.ref(null),I=t.ref({}),$=t.reactive({}),w=t.reactive({}),U=t.computed(()=>{var re;return(re=v.value)==null?void 0:re.options}),x=t.computed(()=>PM(w.name,a.rawSchema)),F=t.ref(!1),R=t.ref(),oe=(re,q)=>{F.value=re??"",R.value=q},ie=re=>{var q;(q=R.value)==null||q.call(R,re),F.value=!1},M=()=>{var B,D;const re={...a.schema},q=w,ae=$,ce=Object.keys(q),O={};if(!u(I.value))for(let ne=0;ne<((D=(B=I.value)==null?void 0:B.fields)==null?void 0:D.length);ne++)re[I.value.fields[ne].model]=I.value.fields[ne];Ue.customFields.forEach(ne=>{re[ne]&&(re[ne].fields.forEach(X=>{X.fields&&X.fields.forEach(Y=>{re[Y.model]=Y}),X.model&&(re[X.model]=X)}),delete re[ne])}),ce.forEach(ne=>{var _e;if(!re[ne]){ne==="partials"&&(O[ne]=q[ne]);return}const X=re[ne];let Y=q[ne];const K=ae[ne],le=Array.isArray(Y)?"array":typeof Y,j=X?X.valueType:null,z=X?X.valueArrayType:null,J=X?X.transform:null;if(Y==null&&K==null&&!X.submitWhenNull)return;if(X){if(j&&le!==j)switch(j){case"array":le==="string"&&Y.length&&(Y=Y.split(",").map(Q=>{if(Q=Q.trim(),z==="string")return String(Q);if(z==="number")return Number(Q);if(z==="boolean"){if(typeof Q=="string")return Q.toLowerCase()==="true"||Q==="1";if(typeof Q=="number")return Q===1}return Q})),(!Y||!Y.length)&&(Y=X.submitWhenNull?null:[]);break;case"number":Y=Number(Y);break;case"boolean":le==="string"&&(Y=Y.toLowerCase()==="true"||Y==="1"),le==="number"&&(Y=Y===1);break;case"string":Y=Y==null?"":String(Y);break}else j==="array"&&(!Y||!Y.length?Y=X.submitWhenNull?null:[]:((_e=X.inputAttributes)==null?void 0:_e.type)==="number"&&(Y=Y.map(Q=>Number(Q))));if(X.type==="array"&&X.nestedFields){const Q=he=>{Object.keys(he).forEach(Ce=>{he[Ce]&&typeof he[Ce]=="object"&&!Array.isArray(he[Ce])&&he[Ce]!==null?Q(he[Ce]):(he[Ce]===void 0||he[Ce]===null||typeof he[Ce]=="number"&&isNaN(he[Ce])||typeof he[Ce]=="string"&&he[Ce].trim().length===0)&&delete he[Ce]})};Y&&typeof Y=="object"&&Q(Y)}X.type==="object-advanced"&&X.fields&&Y!==null&&(Object.entries(Y).length===0?Y=null:Object.keys(Y).forEach(Q=>{Array.isArray(Y[Q])||(Y[Q]=Y[Q].split(","))}))}let de=c(ne);if(X.fieldNameHasDashes){const[Q,...he]=de.split(".").reverse();de=[Q.replace(/_/g,"-"),...he].reverse().join(".")}if(j==="object-expand"){let Q;[de,Q]=de.split(".");let he={};O[de]&&(he=O[de]),he[Q]=Y,Y=he}K!==void 0&&Y===""&&Y!==K?O[de]=j==="object"?{}:null:X.type==="checklist"&&Y===""?O[de]=[]:Y!==""&&(O[de]=Y),O[de]=J?J(Y):O[de],p(de,O)});const T=d(O);return P.value&&Object.assign(T,te.value),T},L=(re,q={})=>{f(w,q,re,a.editing),i("model-updated",{model:w,originalModel:$,data:M()})},A=(re,q)=>{var O;const ae={[q]:re};typeof((O=a.schema[q])==null?void 0:O.modelTransformer)=="function"&&(ae[q]=a.schema[q].modelTransformer(re));const ce=Object.assign({},w,ae);Object.assign(w,ce),i("model-updated",{model:w,originalModel:$,data:M()})},V=re=>{i("validity-change",re)},H=(re,q)=>{Object.keys(re).forEach(ae=>{var D,ne;let ce=q?`${q}-${ae}`:ae,O=a.schema[ce];if(!O){const X=q?`${q}-${ae.replace(/-/g,"_")}`:ae.replace(/-/g,"_");(D=a.schema[X])!=null&&D.fieldNameHasDashes&&(ce=X,O=a.schema[ce]),q&&((ne=a.schema[q])==null?void 0:ne.keyFromObject)===ae&&(ce=q,O=a.schema[ce])}const T=re[ae],B=typeof T;if(O&&O.type==="object-advanced"&&!T){w[ce]={},$[ce]={};return}if(Array.isArray(T)){w[ce]=JSON.parse(JSON.stringify(T)),$[ce]=JSON.parse(JSON.stringify(T));return}if(B==="object"&&T&&!T.length)return H(T,ce);if(B==="object"&&T&&T.length&&O.type==="input"){w[ce]=T.join(", "),$[ce]=T.join(", ");return}w[ce]=T,$[ce]=T}),i("model-updated",{model:w,originalModel:$,data:M()})},te=t.shallowRef(a.record),W=re=>{te.value=re,i("model-updated",{model:{...w,...re},originalModel:$,data:M()})},G=t.ref(!0),se=()=>{var re;if(a.record&&a.schema&&(H({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)&&H({consumer_id:a.record.consumer_id||a.record.consumer}),H(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)&&H({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&&L("redis",{partials:a.record.partials}),P.value?W(a.record):H(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const q={};for(const ae in a.entityMap){const ce=a.entityMap[ae].id,O=a.entityMap[ae].idField,T=O==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(O).replace("_","-"));Object.prototype.hasOwnProperty.call(w,T)&&(q[T]=ce)}H(q)}if((re=a.entityMap.consumer)!=null&&re.id&&a.schema&&a.credential){const q={};Object.prototype.hasOwnProperty.call(w,"consumer")&&(q.consumer=a.entityMap.consumer.id),H(q)}G.value=!1};return t.watch(G,re=>{i("loading",re)}),t.watch(()=>a.schema,(re,q)=>{var ce,O;if(h(re||{},q||{}))return;const ae=s(re,void 0,void 0,a.engine);Object.assign(w,ae.model),I.value={fields:(O=(ce=I.value)==null?void 0:ce.fields)==null?void 0:O.map(T=>({...T,disabled:T.disabled||!1}))},Object.assign($,JSON.parse(JSON.stringify(ae.model))),P.value=a.engine?a.engine==="vfg"?void 0:Aa(ae.model.name,m)||"CommonForm":Aa(ae.model.name,m),N.value=Ue.getSharedFormName(ae.model.name),se()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var re,q;v.value=s(a.schema,void 0,void 0,a.engine),Object.assign(w,((re=v.value)==null?void 0:re.model)||{}),I.value=((q=v.value)==null?void 0:q.schema)||{},se()}),(re,q)=>{var ce;const ae=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",$M,[G.value?(t.openBlock(),t.createBlock(ae,{key:0,type:"form"})):w.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",BM,[P.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(ug[P.value]),{key:0,"form-model":w,"form-options":U.value,"form-schema":I.value,"is-editing":e.editing,model:e.record,"on-form-change":W,"on-model-updated":A,"on-validity-change":V,"plugin-name":w.name,schema:x.value,onGlobalAction:q[0]||(q[0]=(O,T)=>re.$emit("globalAction",O,T))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ue.AUTOFILL_SLOT_NAME),fn:t.withCtx(O=>[O.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Po.VaultSecretPickerProvider),t.mergeProps({key:0},O,{onOpen:oe}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","plugin-name","schema"])):N.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Ue.sharedForms)[N.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":w,"form-options":U.value,"form-schema":I.value,"is-editing":e.editing,"on-model-updated":A,"on-partial-toggled":L,"show-new-partial-modal":O=>re.$emit("showNewPartialModal",O)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ue.AUTOFILL_SLOT_NAME),fn:t.withCtx(O=>[O.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Po.VaultSecretPickerProvider),t.mergeProps({key:0},O,{onOpen:oe}),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(Ue.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:w,options:U.value,schema:I.value,onModelUpdated:A,onPartialToggled:L,onRefreshModel:M,onShowNewPartialModal:q[1]||(q[1]=O=>re.$emit("showNewPartialModal",O))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",VM,t.toDisplayString(t.unref(g)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ce=t.unref(Ot)[w.name])!=null&&ce.fieldRules&&(a.config.isNewOtelSchema||w.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(P0,{rules:t.unref(Ot)[w.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Ue.AUTOFILL_SLOT_NAME),fn:t.withCtx(O=>[O.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Po.VaultSecretPickerProvider),t.mergeProps({key:0},O,{onOpen:oe}),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(Po.VaultSecretPicker),{config:a.config,setup:F.value,onCancel:q[2]||(q[2]=()=>F.value=!1),onProceed:ie},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-67bf19f1"]]),RM={key:1},MM=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",RM,[t.renderSlot(n.$slots,"default")]))}}),LM={class:"kong-ui-entities-plugin-form-container"},FM={key:0},UM={class:"plugin-form-actions"},KM=Ae(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var Y;const o=n,r=e,i=eo.useRouter(),{i18n:{t:a}}=Ke.useI18n(),{customSchemas:l,typedefs:s}=Ke.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ke.usePluginHelpers(),{getMessageFromError:d}=ye.useErrors(),{capitalize:f}=ye.useStringHelpers(),{objectsAreEqual:u}=ye.useHelpers(),{axiosInstance:p}=ye.useAxios((Y=r.config)==null?void 0:Y.axiosRequestConfig),m=t.ref(!1),h=t.computed(()=>!!r.pluginId),g=t.computed(()=>r.pluginId?ye.EntityBaseFormType.Edit:ye.EntityBaseFormType.Create),y=t.ref(void 0),_=t.ref(void 0),k=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),S=t.ref({}),E=t.ref(),C=t.ref();t.provide(Fa,{redisType:E,redisPath:C,isEditing:h.value});const N=t.ref(!1),P=t.reactive({enabled:!0,protocols:[],tags:[]}),v=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),I=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&I.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const $=t.ref(""),w=t.computed(()=>{var le;if(k.value){let j=Xe.form[r.config.app].credential[g.value];return j=j.replace(/{resourceEndpoint}/gi,R.value),j}let K;return r.config.entityType&&r.config.entityId?K=Xe.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):K=Xe.form[r.config.app].edit.all,r.config.app==="konnect"&&((le=Ot[r.pluginType])!=null&&le.useUIData)?`${K}?__ui_data=true`:K}),U=()=>{m.value=!m.value},x=t.computed(()=>{var de,_e,Q,he,Ce,pe,me,He;const K=r.config.entityType==="consumers"&&r.config.entityId||((_e=(de=b.value)==null?void 0:de.consumer)==null?void 0:_e.id),le=r.config.entityType==="consumer_groups"&&r.config.entityId||((he=(Q=b.value)==null?void 0:Q.consumer_group)==null?void 0:he.id),j=r.config.entityType==="services"&&r.config.entityId||((pe=(Ce=b.value)==null?void 0:Ce.service)==null?void 0:pe.id),z=r.config.entityType==="routes"&&r.config.entityId||((He=(me=b.value)==null?void 0:me.route)==null?void 0:He.id);if(!(K||le||j||z))return{global:{entity:Z.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const J={};return j&&(J.service={entity:Z.PluginScope.SERVICE,entityEndpoint:"services",id:j,idField:Nn.SERVICE}),z&&(J.route={entity:Z.PluginScope.ROUTE,entityEndpoint:"routes",id:z,idField:Nn.ROUTE}),K&&(J.consumer={entity:Z.PluginScope.CONSUMER,entityEndpoint:"consumers",id:K,idField:Nn.CONSUMER}),le&&(J.consumer_group={entity:Z.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:le,idField:Nn.CONSUMER_GROUP}),r.config.entityType&&(J.focusedEntity={entity:Z.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:Nn[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),J}),F=t.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||g.value===ye.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:a("plugins.form.scoping.global.label"),description:a("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:a("plugins.form.fields.protocols.help"),label:a("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:a("plugins.form.fields.instance_name.label"),inputType:"text",help:a("plugins.form.fields.instance_name.help")},tags:s.tags}),R=t.computed(()=>{var j;const K=r.developer?"developers":"consumers",le=((j=no[r.pluginType])==null?void 0:j.endpoint)||"/plugins";return`${K}/${r.config.entityId}${r.developer?"/credentials":""}${le}`}),oe=K=>{const le=Array.from(new Set(K.map(j=>typeof j)));return le.length>1?"string":le[0]},ie=(K,le,j,z)=>{var Q,he;let J=le&&le.fields||[];const de=l[r.pluginType],_e=(he=(Q=no[r.pluginType])==null?void 0:Q.schema)==null?void 0:he.fields;return Array.isArray(J)&&(J=J.reduce((Ce,pe)=>{const me=Object.keys(pe)[0];return me.match(/-/g)?Ce[me.replace(/-/g,"_")]={...pe[me],fieldNameHasDashes:!0}:Ce[me]=pe[me],Ce},{})),Object.keys(J).sort().forEach(Ce=>{var lt,ft,cn,fe,Te,ke,we;const pe=J[Ce];pe.type==="set"&&(pe.type="array");const me=K?`${K}-${Ce}`:`${Ce}`;if((lt=de==null?void 0:de.fieldsToDelete)!=null&&lt.includes(me)){ed(j,me);return}if(Object.prototype.hasOwnProperty.call(pe,"overwrite")||pe.hidden)return;if(pe.type==="table")return ie(me,pe.schema,j);if(pe.fields)return z&&pe.type==="record"?(j[me]={type:"object",model:Ce,schema:{fields:Object.values(ie(me,pe,{},!0))}},j):ie(me,pe,j);if(j[me]={id:me,model:Ce},j[me].type=pe.type==="boolean"?"checkbox":"input",j[me].required=pe.required,j[me].referenceable=pe.referenceable,me.startsWith("config-"))if(!z&&pe.type==="array"&&($.value=me),z&&$.value&&me.startsWith($.value)){const be=me.slice($.value.length+1);j[me].label=be.split("-").map(c).join(".")}else j[me].label=c(me);if((K==="config"||K.startsWith("config-"))&&(ft=J[Ce])!=null&&ft.description&&(j[me].help=Cr.marked.parse(J[Ce].description,{mangle:!1,headerIds:!1})),pe.type==="map"){if(j[me].type="object-advanced",j[me].values=pe.values,pe.values.type==="array"){const{type:be}=pe.values.elements||{};j[me].schema={fields:[{schema:{fields:[{...Me,model:me,valueArrayType:be==="integer"?"number":be||"string",inputAttributes:{...Me.inputAttributes,type:be==="integer"?"number":"text",inputMode:be==="integer"?"numeric":"text"}}]}}]}}else pe.values.fields&&(j[me].schema={fields:[{type:"object",model:"object",schema:{fields:pe.values.fields.map(be=>{const Se=Object.keys(be)[0];return{model:Se,type:"input",label:f(Se),placeholder:Se,inputType:be[Se].type}})}}]});return j}if(pe.enum&&pe.type==="array"&&(j[me].type="checklist",j[me].values=pe.enum,j[me].multi=!0,j[me].multiSelect=!0),pe.one_of&&pe.type!=="array"&&(j[me].type="select",j[me].values=pe.one_of,j[me].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),pe.elements&&pe.type==="array"){const be=pe.elements;if(j[me].referenceable=be.referenceable,j[me].elements=be,["string","integer","number"].includes(be.type)&&!be.one_of){const{id:Se,help:Oe,label:xe,hint:Ve,values:$e,referenceable:Fe,model:De}=j[me],{inputAttributes:We,...Qn}=JSON.parse(JSON.stringify(Me));We.type=be.type==="string"?"text":"number",j[me]={id:Se,help:Oe,label:xe,hint:Ve,values:$e,referenceable:Fe,model:De,inputAttributes:We,...Qn}}}if(pe.hint&&(j[me].hint=pe.hint),de&&!de.overwriteDefault&&Object.keys(de).forEach(be=>{if(be===me){const{help:Se,label:Oe,hint:xe,values:Ve,referenceable:$e,elements:Fe}=j[me],{help:De,...We}=de[be];j[me]={help:Se,label:Oe,hint:xe,values:Ve,referenceable:$e,elements:Fe,...We},typeof De=="string"&&(j[me].help=Cr.marked.parse(De,{mangle:!1,headerIds:!1}))}}),pe.type==="array"&&((cn=pe.elements)==null?void 0:cn.type)==="record"&&Array.isArray(pe.elements.fields)){let be={};for(const Oe of pe.elements.fields)be={...be,...Oe};const Se=(ke=(Te=(fe=j[me])==null?void 0:fe.items)==null?void 0:Te.schema)==null?void 0:ke.fields;if(Array.isArray(Se))for(const Oe of j[me].items.schema.fields){const xe=(we=be[Oe.model])==null?void 0:we.description;Oe.help===void 0&&typeof xe=="string"&&(Oe.help=Cr.marked.parse(xe,{mangle:!1,headerIds:!1}))}if(Se||(j[me].type="array",j[me].newElementButtonLabelClasses="kong-form-new-element-button-label",j[me].fieldClasses="array-card-container-wrapper",j[me].itemContainerComponent="FieldArrayCardContainer",j[me].items={type:"object",schema:{fields:Object.values(ie(me,pe.elements,{},!0))}},j[me].items.schema.fields.forEach(Oe=>{var xe,Ve;for(const $e of pe.elements.fields){const Fe=Object.keys($e)[0],De=((Ve=(xe=Oe.id)==null?void 0:xe.split)==null?void 0:Ve.call(xe,"-"))??[];if(De[De.length-1]===Fe){Oe.model=Fe,Oe.label=c(Fe);break}}}),pe.elements.type==="record"&&(j[me].nestedFields=!0)),!j[me].nestedFields)j[me].items.default=()=>pe.elements.fields.reduce((Oe,xe)=>{const Ve=Object.keys(xe)[0];return Oe[Ve]=xe[Ve].default,Oe},{});else{const Oe=(xe,Ve)=>{if(xe.type==="object"){xe.model&&(Ve[xe.model]={});for(const $e of xe.schema.fields)Oe($e,xe.model?Ve[xe.model]:Ve)}else xe.model&&(Ve[xe.model]=xe.default)};j[me].items.default=()=>{const xe={};return Oe(j[me].items,xe),xe}}}if(k.value&&_e){for(let be=0;be<_e.length;be++)if(_e[be][me]){j[me]={...j[me],..._e[be][me]};break}}if(pe.required&&pe.type!=="boolean"&&(j[me].required=!0,j[me].selectOptions={hideNoneSelectedText:!0}),pe.required&&pe.type==="boolean"&&(j[me].default=pe.default??!1),pe.default!=null&&typeof pe.default!="object"&&pe.default!=="function"&&(j[me].default=pe.default),j[me].type==="input"){["string","number"].includes(typeof j[me].default)&&r.config.app==="konnect"&&(j[me].placeholder=`Default: ${j[me].default===""?"<empty string>":j[me].default}`);const{type:be}=pe.elements||{};be&&(j[me].valueArrayType=be==="integer"?"number":be),j[me].inputType=pe.type==="array"||pe.type==="string"?pe.encrypted?"password":"text":pe.type}let He="string";pe.enum?He=oe(pe.enum):pe.type==="boolean"?He="boolean":pe.type==="number"||pe.type==="integer"?(He="number",j[me].inputType="number"):pe.type==="array"?(He="array",j[me].default=pe.default,pe.len_min>0&&(j[me].submitWhenNull=!0)):pe.type==="foreign"?He="object":pe.default&&Array.isArray(pe.default)?(He="array",j[me].valueArrayType=oe(pe.default)):pe.default&&(He=typeof pe.default),j[me].valueType=He,pe.fieldNameHasDashes&&(j[me].fieldNameHasDashes=!0)}),j},M=()=>{var me,He,lt,ft,cn,fe,Te,ke,we,be,Se,Oe;const K=((me=Ot[r.pluginType])==null?void 0:me.scope.includes(Z.PluginScope.SERVICE))??!0,le=((He=Ot[r.pluginType])==null?void 0:He.scope.includes(Z.PluginScope.ROUTE))??!0,j=((lt=Ot[r.pluginType])==null?void 0:lt.scope.includes(Z.PluginScope.CONSUMER))??!0,z=r.config.disableConsumerGroupScope?!1:((ft=Ot[r.pluginType])==null?void 0:ft.scope.includes(Z.PluginScope.CONSUMER_GROUP))??!0,J=r.config.entityType==="consumers"&&!!r.config.entityId||!!((fe=(cn=b.value)==null?void 0:cn.consumer)!=null&&fe.id),de=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((ke=(Te=b.value)==null?void 0:Te.consumer_group)!=null&&ke.id),_e=r.config.entityType==="services"&&!!r.config.entityId||!!((be=(we=b.value)==null?void 0:we.service)!=null&&be.id),Q=r.config.entityType==="routes"&&!!r.config.entityId||!!((Oe=(Se=b.value)==null?void 0:Se.route)!=null&&Oe.id),he=[],Ce=(xe,Ve,$e)=>xe?a("plugins.form.disable_source_scope_change",{scope:$e}):Ve?a("plugins.form.disable_data_retrieving",{scope:$e}):"",pe=xe=>{var Ve,$e;return(($e=(Ve=r.scopedEntitiesPermissions)==null?void 0:Ve[xe])==null?void 0:$e.canRetrieve)===!1};if(K){const xe=pe("service"),Ve="services",$e=_e&&r.disableScopeSelection;he.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Ve,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:$e||xe,disabledTooltip:Ce($e,xe,Ve)})}if(le){const xe=pe("route"),Ve="routes",$e=Q&&r.disableScopeSelection;he.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ve,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:$e||xe,disabledTooltip:Ce($e,xe,Ve)})}if(j){const xe=pe("consumer"),Ve="consumers",$e=J&&r.disableScopeSelection;he.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ve,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:$e||xe,disabledTooltip:Ce($e,xe,Ve)})}if(z){const xe=pe("consumer_group"),Ve="consumer_groups",$e=de&&r.disableScopeSelection;he.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ve,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:$e||xe,disabledTooltip:Ce($e,xe,Ve)})}if(he.length){const xe=[...K?["service"]:[],...le?["route"]:[],...j?["consumer"]:[],...z?["consumer_group"]:[]],$e=xe.splice(xe.length-2,2).map(De=>a(De==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${De}.plural`)).join(`${xe.length>0?",":""} and/or `),Fe=["Specific",[...xe.length>0?[xe.map(De=>a(De==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${De}.plural`)).join(", ")]:[],$e].join(", ")].join(" ");F.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Fe,fields:[]}),F.selectionGroup.fields[1].fields=he}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(F,l[r.pluginType].formSchema)},L=t.computed(()=>!u(v.fields,P,!0)),A=t.computed(()=>!ne.value&&!N.value&&(g.value===ye.EntityBaseFormType.Create||L.value)),V=t.ref(!1),H=t.ref(),te=K=>{r.credential&&K.password&&(K.password=""),v.fields.id=(K==null?void 0:K.id)||void 0,H.value=K==null?void 0:K.ordering,Object.assign(P,v.fields),b.value=K,V.value=!0},W=t.ref({}),G=K=>{var le;v.fields=K.model,v.fields.id=((le=b.value)==null?void 0:le.id)||void 0,Object.assign(P,K.originalModel),W.value=K.data,r.isWizardStep&&o("model-updated",{model:v.fields,data:K.data,resourceEndpoint:R.value})},se=t.ref(new Map),ue=t.computed(()=>[v.clientErrorMessage,v.serverErrorMessage].filter(Boolean).join("; ")),ge=K=>{K.valid?se.value.delete(K.model):se.value.set(K.model,K.error),v.clientErrorMessage=[...se.value.entries()].map(([le,j])=>`${le}: ${typeof j=="string"?j:d(j)}`).join("; "),v.clientErrorMessage&&(v.serverErrorMessage="")};t.watch([x,V],(K,le)=>{const j=K[0]!==le[0],z=K[1],J=le[1];if(!k.value&&g.value===ye.EntityBaseFormType.Edit&&(j||z&&z!==J)){const de=ie("config",S.value,F);ae.value&&(de._isCustomPlugin=!0),E.value&&(de._supported_redis_partial_type=E.value),_.value=de}},{deep:!0});const re=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},q=t.computed(()=>{const K=r.config.entityType&&r.config.entityId&&!r.developer,le=k.value?Xe.form[r.config.app].credential[g.value]:Xe.form[r.config.app][g.value][K?"forEntity":"all"];let j=`${r.config.apiBaseUrl}${le}`;return r.config.app==="konnect"?j=j.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(j=j.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),j=j.replace(/{resourceEndpoint}/gi,R.value),j=j.replace(/{id}/gi,r.pluginId),j=j.replace(/{entityType}/gi,r.config.entityType||""),j=j.replace(/{entityId}/gi,r.config.entityId||""),j}),ae=t.computed(()=>!Object.keys(Ot).includes(r.pluginType)),ce=t.computed(()=>{const K=W.value;if(k.value){for(const le in Z.PluginScope){const j=Z.PluginScope[le];K[j]&&!K[j].id&&(K[j]={id:r.config.entityId})}delete K.created_at}return W.value.partials&&C.value&&ed(K,C.value),K}),O=t.computed(()=>{const{__ui_data:K,...le}={...ce.value};return le}),T=async()=>{if(!v.clientErrorMessage&&!r.isWizardStep)try{v.isReadonly=!0;let K;const le=JSON.parse(JSON.stringify(ce.value)),j=l[r.pluginType];typeof(j==null?void 0:j.shamefullyTransformPayload)=="function"&&j.shamefullyTransformPayload({originalModel:P,model:v.fields,payload:le,schema:_.value}),g.value==="create"?K=await p.post(q.value,le):g.value==="edit"&&(K=r.config.app==="konnect"||E.value&&le.partials?await p.put(q.value,Object.assign({ordering:H.value},le)):await p.patch(q.value,le)),Object.assign(P,v.fields),o("update",K==null?void 0:K.data)}catch(K){v.serverErrorMessage=d(K),o("error",K)}finally{v.isReadonly=!1}},B=t.computed(()=>{var z;const K=k.value?(z=no[r.pluginType])==null?void 0:z.schemaEndpoint:r.pluginType,le=k.value?Xe.form[r.config.app].credentialSchema:Xe.form[r.config.app].pluginSchema;let j=`${r.config.apiBaseUrl}${le}`;return r.config.app==="konnect"?j=j.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(j=j.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),j=j.replace(/{plugin}/gi,K),j}),D=t.ref(""),ne=t.ref(!1),X=t.ref("");return t.onBeforeMount(async()=>{var K,le,j,z;ne.value=!0;try{if(k.value&&r.config.app==="konnect"){const J=(K=no[r.pluginType])==null?void 0:K.schemaEndpoint,de=Ig[J];D.value=J,_.value=ie("",de,{}),ne.value=!1}else{const J=r.schema??(await p.get(B.value)).data;if(y.value=J,J)if(k.value)_.value=ie("",J,{}),ne.value=!1;else{const de=J.fields.find(Q=>Q.config);S.value=de?de.config:J,J.supported_partials&&(E.value=Object.keys(J.supported_partials).find(Q=>[Nr.REDIS_CE,Nr.REDIS_EE].includes(Q)),C.value=(le=J.supported_partials[E.value])==null?void 0:le[0]),M();const _e=(j=J.fields.find(Q=>Q.protocols))==null?void 0:j.protocols;if(_e){const{default:Q=[],elements:he={}}=_e;F.protocols.default=Q,F.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:Q.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(z=he.one_of)!=null&&z.length&&(F.protocols.values=he.one_of.map(Ce=>({label:Ce,value:Ce})))}if(V.value||g.value===ye.EntityBaseFormType.Create){const Q=ie("config",S.value,F);E.value&&(Q._supported_redis_partial_type=E.value),ae.value&&(Q._isCustomPlugin=!0),_.value=Q}}}}catch(J){console.error(J),X.value=d(J),o("error:fetch-schema",J)}finally{ne.value=!1}}),(K,le)=>{const j=t.resolveComponent("KSkeleton"),z=t.resolveComponent("KEmptyState"),J=t.resolveComponent("KButton"),de=t.resolveComponent("KTabs"),_e=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",LM,[ne.value?(t.openBlock(),t.createBlock(j,{key:0,type:"form"})):X.value?(t.openBlock(),t.createBlock(z,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(a)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ye.EntityBaseForm),{key:2,"can-submit":A.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ye.SupportedEntityType).Plugin,"error-message":ue.value,"fetch-url":w.value,"form-fields":ce.value,"is-readonly":v.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:re,"onFetch:error":le[4]||(le[4]=Q=>K.$emit("error",Q)),"onFetch:success":te,onLoading:le[5]||(le[5]=Q=>K.$emit("loading",Q))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",FM)):(t.openBlock(),t.createBlock(MM,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",UM,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(J,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:le[3]||(le[3]=Q=>U())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(J,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:v.isReadonly,onClick:re},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(J,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!A.value||v.isReadonly,type:"submit",onClick:T},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:T},null,32),t.createVNode(DM,{config:e.config,credential:k.value,editing:g.value===t.unref(ye.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":x.value,"raw-schema":y.value,record:b.value,schema:_.value,onGlobalAction:le[0]||(le[0]=(Q,he)=>K.$emit("globalAction",Q,he)),onLoading:le[1]||(le[1]=Q=>N.value=Q),onModelUpdated:G,onShowNewPartialModal:le[2]||(le[2]=Q=>K.$emit("showNewPartialModal",Q)),onValidityChange:ge},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(_e,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(a)("view_configuration.title"),visible:m.value,onClose:U},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(de,{"data-testid":"form-view-configuration-slideout-tabs",tabs:I.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ye.JsonCodeBlock),{config:e.config,"entity-record":O.value,"fetcher-url":q.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ye.YamlCodeBlock),{"entity-record":O.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ye.TerraformCodeBlock),{"credential-type":D.value,"entity-record":O.value,"entity-type":t.unref(ye.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-b9713619"]]),GM={class:"kong-ui-entities-plugins-list"},jM={class:"button-row"},qM={class:"name-cell-wrapper"},zM={class:"info-wrapper"},HM={key:0,class:"info-name"},YM={key:1,class:"info-name"},WM={key:2,class:"info-type"},XM={key:1},ZM=Ae(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var D,ne;const o=Ke.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Ke.useI18n(),l=eo.useRouter(),{axiosInstance:s}=ye.useAxios((D=i.config)==null?void 0:D.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ye.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var 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"}),h=i.config.app==="konnect"||ye.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),g=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),y={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(ne=i.config)!=null&&ne.entityId||(y.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),y.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(y.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),y.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const _=y,k=t.computed(()=>{var Y,K,le,j;let X=i.config.entityType?`${i.config.apiBaseUrl}${Xe.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Xe.list[i.config.app].all}`;return i.config.app==="konnect"?X=X.replace(/{controlPlaneId}/gi,((Y=i.config)==null?void 0:Y.controlPlaneId)||""):i.config.app==="kongManager"&&(X=X.replace(/\/{workspace}/gi,(K=i.config)!=null&&K.workspace?`/${i.config.workspace}`:"")),X.replace(/{entityType}/gi,((le=i.config)==null?void 0:le.entityType)||"").replace(/{entityId}/gi,((j=i.config)==null?void 0:j.entityId)||"")}),b=t.ref(""),S=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:y.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...y.enabled,label:a("search.filter.field.enabled")},name:y.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:C,fetcherCacheKey:N}=ye.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),k),P=()=>{b.value=""},v=()=>{N.value++},I=t.ref(null),$=X=>{var K,le,j,z;const Y=[];return((K=X.route)!=null&&K.id||X.route_id)&&Y.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((le=X.service)!=null&&le.id||X.service_id)&&Y.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((j=X.consumer)!=null&&j.id||X.consumer_id)&&Y.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((z=X.consumer_group)!=null&&z.id||X.consumer_group_id)&&Y.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),Y.length?Y:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},w=async(X,Y)=>{var K;return X===null?!1:await((K=i.canRetrieveScopedEntity)==null?void 0:K.call(i,X,Y.id))},U=(X,Y)=>{var le,j,z,J,de;let K=null;switch(X){case"route":K=(le=Y.route)==null?void 0:le.id;break;case"service":K=(j=Y.service)==null?void 0:j.id;break;case"consumer":K=(z=Y.consumer)==null?void 0:z.id;break;case"consumer_group":K=(J=Y.consumer_group)==null?void 0:J.id;break}K&&((de=i.config)!=null&&de.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(X,K))},x=t.ref(!1),F=t.ref(null),R=t.computed(()=>{const X={action:"disable",id:"",name:""};if(F.value){const{enabled:Y,id:K,name:le}=F.value;X.action=Y?"disable":"enable",X.id=K,X.name=o.getDisplayName(le)||K}return X}),oe=X=>{x.value=!0,F.value=X},ie=()=>{x.value=!1,F.value=null},M=async()=>{var le,j,z,J,de,_e,Q,he;if(!await((le=i.canEdit)==null?void 0:le.call(i,F.value))||!F.value)return;let Y=`${i.config.apiBaseUrl}${(de=Xe.item[i.config.app])==null?void 0:de[(j=i.config)!=null&&j.entityType?"forEntity":"all"].replace(/{entityType}/gi,((z=i.config)==null?void 0:z.entityType)||"").replace(/{entityId}/gi,((J=i.config)==null?void 0:J.entityId)||"")}`.replace(/{id}/gi,F.value.id||"");i.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,((_e=i.config)==null?void 0:_e.controlPlaneId)||""):i.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,(Q=i.config)!=null&&Q.workspace?`/${i.config.workspace}`:""));const K=!F.value.enabled;try{const Ce=(he=i.config)==null?void 0:he.app;let pe;b.value&&Ce==="konnect"&&(pe=await s.get(Y));const{data:me}=Ce==="konnect"?await s.put(Y,{...(pe==null?void 0:pe.data)||F.value,enabled:K},{timeout:12e4}):await s.patch(Y,{...F.value,enabled:K},{timeout:12e4});r("toggle-enabled",K,me),F.value.enabled=K}catch(Ce){r("error",Ce)}},L=async(X,Y)=>{const K=X.id;if(!await Y(K)){r("copy:error",{entity:X,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:X,field:"id",message:a("copy.success",{val:K})})},A=async(X,Y)=>{const K=JSON.stringify(X);if(!await Y(K)){r("copy:error",{entity:X,message:a("errors.copy")});return}r("copy:success",{entity:X,message:a("copy.success_brief")})},V=async X=>{var K;await((K=i.canRetrieve)==null?void 0:K.call(i,X))&&l.push(i.config.getViewRoute(X))},H=X=>({label:a("actions.view"),to:i.config.getViewRoute(X)}),te=X=>({label:a("actions.edit"),to:i.config.getEditRoute(X)}),W=X=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(X)}),G=t.ref(void 0),se=t.ref(!1),ue=t.ref(!1),ge=t.ref(""),re=ye.useDeleteUrlBuilder(i.config,k.value),q=X=>{G.value=X,se.value=!0},ae=()=>{se.value=!1},ce=async()=>{var X,Y,K;if((X=G.value)!=null&&X.id){ue.value=!0;try{await s.delete(re(G.value.id)),ue.value=!1,se.value=!1,N.value++,r("delete:success",G.value)}catch(le){ge.value=((K=(Y=le.response)==null?void 0:Y.data)==null?void 0:K.message)||le.message||a("errors.delete"),r("error",le)}finally{ue.value=!1}}},O=()=>{l.push(i.config.createRoute)};t.watch(C,X=>{var Y,K,le;if(X.status===ye.FetcherStatus.Error){I.value={title:a("errors.general")},(le=(K=(Y=X.error)==null?void 0:Y.response)==null?void 0:K.data)!=null&&le.message&&(I.value.message=X.error.response.data.message),r("error",X.error);return}I.value=null});const T=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")}),B=t.ref(!1);return t.onBeforeMount(async()=>{B.value=await i.canCreate(),B.value&&(T.value.title=a("plugins.list.empty_state.title"),T.value.ctaText=a("actions.create"))}),(X,Y)=>{const K=t.resolveComponent("KButton"),le=t.resolveComponent("KEmptyState"),j=t.resolveComponent("KBadge"),z=t.resolveComponent("KTruncate"),J=t.resolveComponent("KInputSwitch"),de=t.resolveComponent("KDropdownItem"),_e=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",GM,[t.createVNode(t.unref(ye.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":g.value,"empty-state-options":T.value,"enable-entity-actions":"","error-message":I.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(N),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(_),title:e.title,"title-tag":e.titleTag,onClearSearchInput:P,"onClick:row":Y[4]||(Y[4]=Q=>V(Q)),onSort:v,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ye.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":Y[0]||(Y[0]=Q=>b.value=Q),config:S.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",jM,[!u.value&&f.value?(t.openBlock(),t.createBlock(K,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:Y[1]||(Y[1]=Q=>X.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(K,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.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:Q})=>[t.createElementVNode("div",qM,[t.createVNode(t.unref(Oo.PluginIcon),{class:"plugin-icon",name:Q.name,size:24},null,8,["name"]),t.createElementVNode("div",zM,[Q.instance_name?(t.openBlock(),t.createElementBlock("span",HM,t.toDisplayString(Q.instance_name),1)):(t.openBlock(),t.createElementBlock("span",YM,t.toDisplayString(t.unref(o).getDisplayName(Q.name)),1)),Q.instance_name?(t.openBlock(),t.createElementBlock("span",WM,t.toDisplayString(t.unref(o).getDisplayName(Q.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:Q})=>[$(Q).length>0?(t.openBlock(),t.createBlock(z,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList($(Q),he=>(t.openBlock(),t.createBlock(t.unref(ye.PermissionsWrapper),{key:he.badgeText,"auth-function":()=>w(he.type,Q),"force-show":""},{default:t.withCtx(({isAllowed:Ce})=>[t.createVNode(j,{class:t.normalizeClass(Ce||"disabled"),onClick:t.withModifiers(pe=>Ce&&he.type&&U(he.type,Q),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(he.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",XM,"-"))]),enabled:t.withCtx(({row:Q})=>[t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(Q)&&await e.canToggle(Q)),"force-show":""},{default:t.withCtx(({isAllowed:he})=>{var Ce,pe;return[t.createElementVNode("div",{onClick:Y[3]||(Y[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(J,{disabled:!he,"disabled-tooltip-text":!he&&((pe=(Ce=e.config).getToggleDisabledTooltip)==null?void 0:pe.call(Ce,Q))||void 0,"model-value":Q.enabled,onClick:t.withModifiers(me=>he&&oe(Q),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:Q})=>[t.createVNode(j,{appearance:t.unref(Zc)(Q)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Zc)(Q)?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:Q})=>[t.createVNode(t.unref(ye.TableTags),{tags:Q},null,8,["tags"])]),actions:t.withCtx(({row:Q})=>[t.createVNode(_e,null,{default:t.withCtx(({copyToClipboard:he})=>[t.createVNode(de,{"data-testid":"action-entity-copy-id",onClick:Ce=>L(Q,he)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(_e,null,{default:t.withCtx(({copyToClipboard:he})=>[t.createVNode(de,{"data-testid":"action-entity-copy-json",onClick:Ce=>A(Q,he)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(Q)},{default:t.withCtx(()=>[t.createVNode(de,{"data-testid":"action-entity-view","has-divider":"",item:H(Q)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canEdit(Q)},{default:t.withCtx(()=>[t.createVNode(de,{"data-testid":"action-entity-edit",item:te(Q)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(ye.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(Q)},{default:t.withCtx(()=>[W(Q)?(t.openBlock(),t.createBlock(de,{key:0,"data-testid":"action-entity-config-dyn-order",item:W(Q)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canDelete(Q)},{default:t.withCtx(()=>[t.createVNode(de,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:he=>q(Q)},{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 Q;return[t.createVNode(le,{"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(ve.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[B.value?(t.openBlock(),t.createBlock(K,{key:0,"data-testid":"entity-create-button",onClick:O},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(K,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:Y[2]||(Y[2]=he=>X.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(Q=e.config)!=null&&Q.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),t.createVNode(t.unref(ye.EntityToggleModal),{action:R.value.action,"entity-id":R.value.id,"entity-name":R.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":M,visible:x.value,onCancel:ie,onProceed:ie},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ye.EntityDeleteModal),{"action-pending":ue.value,description:t.unref(a)("delete.description"),"entity-name":G.value&&(G.value.instance_name||G.value.name||G.value.id),"entity-type":t.unref(ye.EntityTypes).Plugin,error:ge.value,title:t.unref(a)("delete.title"),visible:se.value,onCancel:ae,onProceed:ce},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-25799614"]]),JM={class:"plugin-select-card-wrapper"},QM=["data-testid"],e2={class:"plugin-card-header"},t2={class:"plugin-card-title"},n2={key:0,class:"plugin-card-actions"},o2=["data-testid","title"],r2={key:0,class:"plugin-card-text"},i2={key:0},a2=["title"],Es=Ae(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=eo.useRouter(),{i18n:{t:a}}=Ke.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?d():u()},u=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===Z.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},g=(_,k)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(_,k))},y=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;p.value&&_.createCustomRoute?i.push(_.createCustomRoute):m.value&&d()}};return(_,k)=>{const b=t.resolveComponent("KButton"),S=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",JM,[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:k[1]||(k[1]=N=>s.value||m.value?void 0:f())},[t.createElementVNode("div",e2,[t.createElementVNode("div",t2,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",n2,[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(ve.MoreIcon),{size:t.unref(Pu)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(S,{key:0,"data-testid":"edit-plugin-schema",onClick:k[0]||(k[0]=t.withModifiers(N=>g(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(S,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(h,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:y},[t.createVNode(t.unref(Oo.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",r2,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",i2,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,a2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,o2),t.createElementVNode("div",{class:"plugin-card-footer",onClick:y},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,QM)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),l2=Ae(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var h;const o=e,r=n,{i18nT:i,i18n:{t:a}}=Ke.useI18n(),{getMessageFromError:l}=ye.useErrors(),{axiosInstance:s}=ye.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var g;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((g=o.plugin)==null?void 0:g.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 g=o.plugin.customPluginType==="streaming"?Xe.select[o.config.app].streamingCustomPluginItem:Xe.select[o.config.app].schemaCustomPluginItem;let y=`${o.config.apiBaseUrl}${g}`;return y=y.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),y=y.replace(/{pluginId}/gi,o.plugin.id),y}return null}),m=async()=>{var g,y,_,k;if(d.value=!0,f.value="",!(!((g=o.plugin)!=null&&g.name)||((y=o.config)==null?void 0:y.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:S}=b;(S==null?void 0:S.status)===400&&((k=(_=S.data)==null?void 0:_.message)!=null&&k.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(g,y)=>{const _=t.resolveComponent("KButton"),k=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ye.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(ye.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:y[0]||(y[0]=b=>g.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(k,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:y[2]||(y[2]=b=>g.$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:y[1]||(y[1]=b=>g.$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"]]),s2={class:"custom-plugins-grid"},c2={class:"empty-state-title"},d2={class:"empty-state-description"},Ns=310,u2=Ae(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ke.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ke.usePluginHelpers(),s=t.ref(!0),c=E=>{r("plugin-clicked",E)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const E=JSON.parse(JSON.stringify(o.pluginList))[Z.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:Z.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(E):E}),f=t.ref(!1),u=t.ref(null),p=E=>{f.value=!0,u.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var C;E&&(r("revalidate"),r("delete:success",((C=u.value)==null?void 0:C.name)||"")),f.value=!1,u.value=null},h=t.ref(Ns),g=t.ref(null),y=t.ref(null),_=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),k=t.ref(!1),b=()=>{h.value=Math.max(a(y.value),Ns),S()},S=()=>{var E,C;(E=y.value)!=null&&E.length&&(k.value=l(g.value,(C=y.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(y.value),Ns),S(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(E,C)=>{const N=t.resolveComponent("KEmptyState"),P=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",s2,[d.value.length?(t.openBlock(),t.createBlock(P,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=v=>s.value=v),class:"custom-plugins-collapse","data-testid":`${t.unref(Z.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(Z.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:g,class:"plugin-card-container",style:t.normalizeStyle(_.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(v,I)=>(t.openBlock(),t.createBlock(Es,{key:`plugin-card-${I}`,ref_for:!0,ref_key:"pluginCardRef",ref:y,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:v,onCustomPluginDelete:$=>p(v),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[k.value?void 0:{name:"trigger",fn:t.withCtx(()=>[C[2]||(C[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(N,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",c2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",d2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(l2,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:C[1]||(C[1]=v=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),xs=310,fg=Ae(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const o=t.useModel(e,"modelValue"),r=e,i=n,{i18n:{t:a}}=Ke.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ke.usePluginHelpers(),c=t.ref(xs),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),xs),h()},h=()=>{var g,y;(g=f.value)!=null&&g.length&&(p.value=s(d.value,(y=f.value)==null?void 0:y.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),xs),h(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(g,y)=>{const _=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(_,{modelValue:o.value,"onUpdate:modelValue":y[0]||(y[0]=k=>o.value=k),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,k=>(t.openBlock(),t.createBlock(Es,{key:`plugin-card-${k.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:k,onPluginClicked:b=>i("plugin-clicked",k)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[y[1]||(y[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),f2={class:"plugin-select-grid"},p2={class:"empty-state-title"},m2={class:"empty-state-description"},Ss=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ke.useI18n(),a=t.ref(!1),l=t.ref(Os),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[Z.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",f2,[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",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})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(fg,{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(Ps),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(fg,{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))])}}}),g2={class:"kong-ui-entities-plugin-select-form"},h2={class:"plugins-filter-input-container"},y2={key:0},_2={key:3,"aria-live":"polite",class:"plugins-results-container"},b2={"data-testid":"kong-tab"},w2={class:"tab-description"},k2={"data-testid":"custom-tab"},C2={class:"tab-description"},E2=Ae(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var L;const o=e,r=n,i=eo.useRoute(),a=eo.useRouter(),{i18n:{t:l}}=Ke.useI18n(),{pluginMetaData:s}=Ke.usePluginMetaData(),{getMessageFromError:c}=ye.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ye.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),g=t.ref([]),y=t.ref([]),_=t.ref({}),k=t.ref([]),{axiosInstance:b}=ye.useAxios((L=o.config)==null?void 0:L.axiosRequestConfig),S=t.computed(()=>_.value?Object.entries(_.value).filter(([A])=>A!==Z.PluginGroup.CUSTOM_PLUGINS).reduce((A,[,V])=>{for(const H of V)A[H.id]=H;return A},{}):{}),E=t.computed(()=>{var H;if(!_.value)return{};const A=u.value.toLowerCase(),V=JSON.parse(JSON.stringify(_.value));for(const te in _.value){const W=((H=_.value[te])==null?void 0:H.filter(G=>G.name.toLowerCase().includes(A)||G.id.toLowerCase().includes(A)||G.group.toLowerCase().includes(A)))||[];W.length?V[te]=W:delete V[te]}return V}),C=t.computed(()=>o.highlightedPluginIds.reduce((A,V)=>{const H=S.value[V];return H&&A.push(H),A},[])),N=t.computed(()=>Object.keys(E.value).length>0),P=t.computed(()=>Object.keys(_.value).length>0&&!N.value),v=t.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),I=t.computed(()=>{var V;let A=v.value.length&&((i==null?void 0:i.hash)||((V=v.value[0])==null?void 0:V.hash))||"";return A==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(A="#kong"),A}),$=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...g.value])].filter(A=>!o.ignoredPlugins.includes(A)).filter(A=>o.config.entityType&&(o.config.entityType==="services"&&s[A]&&!s[A].scope.includes(Z.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[A]&&!s[A].scope.includes(Z.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[A]&&!s[A].scope.includes(Z.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[A]&&!s[A].scope.includes(Z.PluginScope.CONSUMER))?!1:A).reduce((A,V)=>{var se;const H=s[V]&&s[V].name||V,te={...s[V],id:V,name:H,available:g.value.includes(V),disabledMessage:"",group:((se=s[V])==null?void 0:se.group)||Z.PluginGroup.CUSTOM_PLUGINS};te.group===Z.PluginGroup.CUSTOM_PLUGINS&&(te.customPluginType=y.value.find(ue=>ue.name===V)?"streaming":"schema"),o.disabledPlugins&&(te.disabledMessage=o.disabledPlugins[V]);const W=te.group||l("plugins.select.misc_plugins");let G=A[W];return G||(G=[]),G.push(te),G.sort(d("name")),A[W]=G,A},{}),w=t.computed(()=>{var V;let A=`${o.config.apiBaseUrl}${Xe.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=((V=o.config.gatewayInfo)==null?void 0:V.edition)==="community"?`${o.config.apiBaseUrl}${Xe.select[o.config.app].availablePluginsForOss}`:A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A}),U=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let A=`${o.config.apiBaseUrl}${Xe.select[o.config.app].streamingCustomPlugins}`;return A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),A}return null}),x=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let A=`${o.config.apiBaseUrl}${Xe.list[o.config.app].forEntity}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),F=A=>{a.replace({hash:A,query:i.query})};t.watch(()=>o.disabledPlugins,(A,V)=>{!f(A,V)&&!p.value&&(_.value=$())}),t.watch(()=>o.ignoredPlugins,(A,V)=>{!f(A,V)&&!p.value&&(_.value=$())}),t.watch(p,A=>{r("loading",A)});const R=t.ref(!1),oe=t.ref(!1),ie=t.ref(!1);t.onBeforeMount(async()=>{R.value=await o.canCreateCustomPlugin(),oe.value=await o.canEditCustomPlugin(),ie.value=await o.canDeleteCustomPlugin()});const M=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var A,V;(V=(A=M.value)==null?void 0:A.input)==null||V.focus();try{const{data:H}=await b.get(w.value);if(o.config.app==="konnect"){const{names:te}=H;if(g.value=te||[],U.value){const{data:W}=await b.get(U.value);y.value=W.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:te}}=H;g.value=te?Object.keys(te):[]}}catch(H){m.value=!0,h.value=c(H)}if(x.value)try{const{data:{data:H}}=await b.get(x.value);if(H!=null&&H.length){const te=H.reduce((W,G)=>(G.name&&W.push(G.name),W),[]);k.value=k.value.concat(te)}}catch{}m.value||(_.value=$()),p.value=!1}),(A,V)=>{const H=t.resolveComponent("KInput"),te=t.resolveComponent("KSkeletonBox"),W=t.resolveComponent("KSkeleton"),G=t.resolveComponent("KEmptyState"),se=t.resolveComponent("KTooltip"),ue=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",g2,[t.createElementVNode("div",h2,[t.createVNode(H,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":V[0]||(V[0]=ge=>u.value=ge),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",y2,[t.createVNode(te,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(W,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(G,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(h.value),1)]),_:1})):P.value&&u.value?(t.openBlock(),t.createBlock(G,{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",_2,[v.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(ue,{key:0,modelValue:I.value,"onUpdate:modelValue":V[5]||(V[5]=ge=>I.value=ge),"data-testid":"plugins-tabs",tabs:v.value,onChange:F},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",b2,[t.createElementVNode("p",w2,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Ss,{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:V[1]||(V[1]=ge=>A.$emit("plugin-clicked",ge))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",k2,[t.renderSlot(A.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",C2,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(u2,{"can-create-custom-plugin":R.value,"can-delete-custom-plugin":ie.value,"can-edit-custom-plugin":oe.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":V[2]||(V[2]=ge=>A.$emit("delete-custom:success",ge)),onPluginClicked:V[3]||(V[3]=ge=>A.$emit("plugin-clicked",ge)),onRevalidate:V[4]||(V[4]=()=>_.value=$())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(se,{"max-width":"300",text:t.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(Ss,{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:V[6]||(V[6]=ge=>A.$emit("plugin-clicked",ge))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-7b1adaaa"]]),N2={class:"datakit-config-card-canvas"},x2={class:"config-card-details-label","data-testid":"datakit-configuration-label"},S2={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},v2={class:"canvas-wrapper"},A2=Ae(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return ju(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",N2,[t.createElementVNode("div",x2,[t.createVNode(r,null,{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",S2,[t.createElementVNode("div",v2,[t.createVNode(_s,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),I2={class:"kong-ui-entity-plugin-config-card"},T2={class:"name-cell-wrapper"},P2={class:"info-name"},O2={key:0},$2={key:0},B2={key:0},V2={key:0},D2={key:0},vs="config",R2=Ae(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var C;const o=n,r=e,{i18n:{t:i}}=Ke.useI18n(),a=Ke.usePluginMetaData(),{setFieldType:l}=Ke.usePluginHelpers(),{getPropValue:s}=ye.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),d=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var P;let N=(P=Xe.item[r.config.app])==null?void 0:P[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const v=r.expandPartial?"&":"?";N=N.concat(`${v}__ui_data=true`)}return N}),u=t.computed(()=>{var v,I;const N={},P=((v=b.value)==null?void 0:v.fields)||[];for(let $=0;$<P.length;$++){const w=b.value.fields[$],U=(I=Object.keys(w))==null?void 0:I[0];l(N,U,w[U])}return{...N,instance_name:{section:ye.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ye.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ye.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ye.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ye.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ye.ConfigurationSchemaType.BadgeTag,section:ye.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var P,v,I;if(!((P=b.value)!=null&&P.fields))return[];const N=(v=b.value.fields)==null?void 0:v.find($=>{var U;return((U=Object.keys($))==null?void 0:U[0])===vs});return((I=N==null?void 0:N[vs])==null?void 0:I.fields)||[]}),m=t.computed(()=>{var P,v;const N={};if(!p.value)return N;for(let I=0;I<((P=p.value)==null?void 0:P.length);I++){const $=p.value[I],w=(v=Object.keys($))==null?void 0:v[0],U=$[w];U.required&&(N[w]={order:1}),l(N,w,U)}return N}),h=N=>{var v;const P=(v=a.pluginMetaData[r.config.pluginType])==null?void 0:v.scope;return P?Object.fromEntries(Object.entries(N).filter(([I,$])=>$?!0:!(I==="service"&&!P.includes(Z.PluginScope.SERVICE)||I==="route"&&!P.includes(Z.PluginScope.ROUTE)||I==="consumer"&&!P.includes(Z.PluginScope.CONSUMER)||I==="consumer_group"&&!P.includes(Z.PluginScope.CONSUMER_GROUP)))):N},g=N=>Zt(N,"__ui_data"),{getMessageFromError:y}=ye.useErrors(),{axiosInstance:_}=ye.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),k=t.computed(()=>{var P,v;let N=`${r.config.apiBaseUrl}${Xe.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((P=r.config)==null?void 0:P.controlPlaneId)||""):r.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(v=r.config)!=null&&v.workspace?`/${r.config.workspace}`:"")),N=N.replace(/{plugin}/gi,r.config.pluginType),N}),b=t.ref({});ye.useSchemaProvider(b);const S=t.ref(!1),E=t.ref("");return t.onBeforeMount(async()=>{S.value=!0;try{const{data:N}=await _.get(k.value);b.value=N}catch(N){E.value=y(N),o("error:fetch-schema",N)}finally{S.value=!1}}),(N,P)=>{const v=t.resolveComponent("KSkeleton"),I=t.resolveComponent("KEmptyState"),$=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",I2,[S.value?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):E.value?(t.openBlock(),t.createBlock(I,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(E.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ye.EntityBaseConfigCard),{key:2,"code-block-record-formatter":g,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":u.value,"entity-type":t.unref(ye.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":vs,"plugin-config-schema":m.value,"record-resolver":h,"onFetch:error":P[0]||(P[0]=w=>N.$emit("fetch:error",w)),"onFetch:success":P[1]||(P[1]=w=>N.$emit("fetch:success",w)),onLoading:P[2]||(P[2]=w=>N.$emit("loading",w))},t.createSlots({name:t.withCtx(w=>[t.createElementVNode("div",T2,[t.createVNode(t.unref(Oo.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",w),size:24},null,8,["name"]),t.createElementVNode("span",P2,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",w))),1)])]),consumer:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",w).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",O2,"–"))]),route:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",w).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",$2,"–"))]),service:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",w).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",B2,"–"))]),consumer_group:t.withCtx(w=>[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",w).id,value:t.unref(s)("rowValue",w).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",w).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",w).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",V2,"–"))]),partials:t.withCtx(w=>{var U,x,F,R,oe,ie,M,L,A;return[t.unref(s)("rowValue",w)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:(x=(U=t.unref(s)("rowValue",w))==null?void 0:U[0])==null?void 0:x.id,value:((R=(F=t.unref(s)("rowValue",w))==null?void 0:F[0])==null?void 0:R.id)+((ie=(oe=t.unref(s)("rowValue",w))==null?void 0:oe[0])!=null&&ie.name?"/"+((L=(M=t.unref(s)("rowValue",w))==null?void 0:M[0])==null?void 0:L.name):""),type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var V,H;return N.$emit("navigation-click",(H=(V=t.unref(s)("rowValue",w))==null?void 0:V[0])==null?void 0:H.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",w).label}),"data-testid":"partial-copy-uuid",text:(A=t.unref(s)("rowValue",w))==null?void 0:A[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",D2,"–"))]}),_:2},[d.value?{name:"config-card-item-nodes",fn:t.withCtx(w=>[t.createVNode(A2,{"plugin-data":w.record},null,8,["plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-a5302acb"]]),{usePluginMetaData:M2,useProvideExperimentalFreeForms:L2}=Ke;Object.defineProperty(Ie,"PluginGroup",{enumerable:!0,get:()=>Z.PluginGroup}),Object.defineProperty(Ie,"PluginScope",{enumerable:!0,get:()=>Z.PluginScope}),Object.defineProperty(Ie,"PluginIcon",{enumerable:!0,get:()=>Oo.PluginIcon}),Object.defineProperty(Ie,"getPluginIconURL",{enumerable:!0,get:()=>Oo.getPluginIconURL}),Ie.EXPERIMENTAL_FREE_FORM_PROVIDER=Ia,Ie.EntityTypeIdField=Nn,Ie.FEATURE_FLAGS=dn,Ie.PLUGIN_GROUPS_COLLAPSE_STATUS=Os,Ie.PluginConfigCard=R2,Ie.PluginForm=KM,Ie.PluginGroupArray=Ps,Ie.PluginList=ZM,Ie.PluginPartialType=Nr,Ie.PluginSelect=E2,Ie.PluginSelectCard=Es,Ie.PluginSelectGrid=Ss,Ie.TOASTER_PROVIDER=td,Ie.pluginEndpoints=Xe,Ie.usePluginMetaData=M2,Ie.useProvideExperimentalFreeForms=L2,Object.defineProperty(Ie,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 lt extends Error{constructor(n,...o){var r;super((r=hp[n])==null?void 0:r.call(hp,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function Hl(e){return"clientX"in e}function DA(e){return"sourceEvent"in e}function qt(e,n){const o=Hl(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 Pi=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function MA(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 Oi(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const LA=()=>!0;function Yl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function FA(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())Ai(i,vi(a))>0&&r.push(a);return r}const UA=250;function KA(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=FA(e,o,n+UA);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}=Ao(d,u,u.position,!0),h=Math.sqrt((p-e.x)**2+(m-e.y)**2);h>n||(h<s?(l=[{...u,x:p,y:m}],s=h):h===s&&l.push({...u,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(f=>f.type===d)??l[0]}return l[0]}function yp(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=LA},f,u,p){const m=a==="target",h=n?l.querySelector(`.${s}-flow__handle[data-id="${c}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:g,y}=qt(e),_=l.elementFromPoint(g,y),w=_!=null&&_.classList.contains(`${s}-flow__handle`)?_:h,b={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const E=_p(void 0,w),N=w.getAttribute("data-nodeid"),C=w.getAttribute("data-handleid"),x=w.classList.contains("connectable"),P=w.classList.contains("connectableend");if(!N||!E)return b;const v={source:m?N:r,sourceHandle:m?C:i,target:m?r:N,targetHandle:m?i:C};b.connection=v;const O=x&&P&&(o===bn.Strict?m&&E==="source"||!m&&E==="target":N!==r||C!==i);b.isValid=O&&d(v,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(N)}),b.toHandle=n}return b}function _p(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function jA(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function GA(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function qA(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===bn.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,...Ao(d,u,u.position,!0)}:u}const Wl={[Ne.Left]:Ne.Right,[Ne.Right]:Ne.Left,[Ne.Top]:Ne.Bottom,[Ne.Bottom]:Ne.Top},zA=["production","prod"];function $i(e,...n){bp()&&console.warn(`[Vue Flow]: ${e}`,...n)}function bp(){return!zA.includes(process.env.NODE_ENV||"")}function wp(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,...Ii(l)}}):null}function Xl(e,n,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&n)&&(r([e]),t.nextTick(()=>{l.blur()})):o([e])}function tt(e){return typeof t.unref(e)<"u"}function HA(e,n,o,r){if(!e||!e.source||!e.target)return o(new lt(et.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return wn(e)?i=e:i={...e,id:ep(e)},i=Jf(i,void 0,r),vA(i,n)?!1:i}function YA(e,n,o,r,i){if(!n.source||!n.target)return i(new lt(et.EDGE_INVALID,e.id)),!1;if(!o)return i(new lt(et.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?ep(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function kp(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!zn(l)){o(new lt(et.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=NA(l,n(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=n(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new lt(et.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function Cp(e,n,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,n)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,n)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,n))}}function Zl(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}`;Cp("source",c,f,e,i,l),Cp("target",c,d,e,a,s)}}function Ep(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function Jl(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=wn(d)?d:HA(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new lt(et.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new lt(et.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new lt(et.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new lt(et.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Jf(f,m,a),sourceNode:u,targetNode:p})}return c}const Np=Symbol("vueFlow"),xp=Symbol("nodeId"),Sp=Symbol("nodeRef"),WA=Symbol("edgeId"),XA=Symbol("edgeRef"),Bi=Symbol("slots");function vp(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:f,nodesDraggable:u,panBy:p,findNode:m,multiSelectionActive:h,nodesSelectionActive:g,selectNodesOnDrag:y,removeSelectedElements:_,addSelectedNodes:w,updateNodePositions:b,emits:E}=Le(),{onStart:N,onDrag:C,onStop:x,onClick:P,el:v,disabled:T,id:O,selectable:k,dragHandle:F}=e,S=t.shallowRef(!1);let M=[],D,oe=null,ie={x:void 0,y:void 0},L={x:0,y:0},U=null,I=!1,V=0,H=!1;const te=QA(),W=({x:q,y:ae})=>{ie={x:q,y:ae};let ce=!1;if(M=M.map($=>{const A={x:q-$.distance.x,y:ae-$.distance.y},{computedPosition:B}=zl($,o.value?Oi(A,r.value):A,E.error,l.value,$.parentNode?m($.parentNode):void 0);return ce=ce||$.position.x!==B.x||$.position.y!==B.y,$.position=B,$}),!!ce&&(b(M,!0,!0),S.value=!0,U)){const[$,A]=ql({id:O,dragItems:M,findNode:m});C({event:U,node:$,nodes:A})}},j=()=>{if(!oe)return;const[q,ae]=sp(L,oe,f.value);if(q!==0||ae!==0){const ce={x:(ie.x??0)-q/c.value.zoom,y:(ie.y??0)-ae/c.value.zoom};p({x:q,y:ae})&&W(ce)}V=requestAnimationFrame(j)},se=(q,ae)=>{I=!0;const ce=m(O);!y.value&&!h.value&&ce&&(ce.selected||_()),ce&&t.toValue(k)&&y.value&&Xl(ce,h.value,w,_,g,!1,ae);const $=te(q.sourceEvent);if(ie=$,M=PA(a.value,u.value,$,m,O),M.length){const[A,B]=ql({id:O,dragItems:M,findNode:m});N({event:q.sourceEvent,node:A,nodes:B})}},ue=(q,ae)=>{var ce;q.sourceEvent.type==="touchmove"&&q.sourceEvent.touches.length>1||(s.value===0&&se(q,ae),ie=te(q.sourceEvent),oe=((ce=n.value)==null?void 0:ce.getBoundingClientRect())||null,L=qt(q.sourceEvent,oe))},ge=(q,ae)=>{const ce=te(q.sourceEvent);if(!H&&I&&d.value&&(H=!0,j()),!I){const $=ce.xSnapped-(ie.x??0),A=ce.ySnapped-(ie.y??0);Math.sqrt($*$+A*A)>s.value&&se(q,ae)}(ie.x!==ce.xSnapped||ie.y!==ce.ySnapped)&&M.length&&I&&(U=q.sourceEvent,L=qt(q.sourceEvent,oe),W(ce))},re=q=>{let ae=!1;if(!I&&!S.value&&!h.value){const ce=q.sourceEvent,$=te(ce),A=$.xSnapped-(ie.x??0),B=$.ySnapped-(ie.y??0),R=Math.sqrt(A*A+B*B);R!==0&&R<=s.value&&(P==null||P(ce),ae=!0)}if(M.length&&!ae){b(M,!1,!1);const[ce,$]=ql({id:O,dragItems:M,findNode:m});x({event:q.sourceEvent,node:ce,nodes:$})}M=[],S.value=!1,H=!1,I=!1,ie={x:void 0,y:void 0},cancelAnimationFrame(V)};return t.watch([()=>t.toValue(T),v],([q,ae],ce,$)=>{if(ae){const A=Vt(ae);q||(D=ES().on("start",B=>ue(B,ae)).on("drag",B=>ge(B,ae)).on("end",B=>re(B)).filter(B=>{const R=B.target,ne=t.toValue(F);return!B.button&&(!i.value||!pp(R,`.${i.value}`,ae)&&(!ne||pp(R,ne,ae)))}),A.call(D)),$(()=>{A.on(".drag",null),D&&(D.on("start",null),D.on("drag",null),D.on("end",null))})}}),S}function ZA(){return{doubleClick:Ee(),click:Ee(),mouseEnter:Ee(),mouseMove:Ee(),mouseLeave:Ee(),contextMenu:Ee(),updateStart:Ee(),update:Ee(),updateEnd:Ee()}}function JA(e,n){const o=ZA();return o.doubleClick.on(r=>{var i,a;n.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;n.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;n.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;n.edgeUpdateEnd(r),(a=(i=e.events)==null?void 0:i.updateEnd)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function QA(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Le();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=DA(i)?i.sourceEvent:i,{x:c,y:d}=qt(s,l),f=gr({x:c,y:d},e.value),{x:u,y:p}=o.value?Oi(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Vi(){return!0}function Ap({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:h,autoPanSpeed:g,findNode:y,panBy:_,startConnection:w,updateConnection:b,endConnection:E,emits:N,viewport:C,edges:x,nodes:P,isValidConnection:v,nodeLookup:T}=Le();let O=null,k=!1,F=null;function S(D){var oe;const ie=t.toValue(o)==="target",L=Hl(D),U=Zf(D.target);if(L&&D.button===0||!L){let I=function(le){$=qt(le,q),W=KA(gr($,C.value,!1,[1,1]),f.value,T.value,R),A||(B(),A=!0);const G=yp(le,{handle:W,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:ie?"target":"source",isValidConnection:te,doc:U,lib:"vue",flowId:s,nodeLookup:T.value},x.value,P.value,y);F=G.handleDomNode,O=G.connection,k=GA(!!W,G.isValid);const z={...K,isValid:k,to:G.toHandle&&k?jl({x:G.toHandle.x,y:G.toHandle.y},C.value):$,toHandle:G.toHandle,toPosition:k&&G.toHandle?G.toHandle.position:Wl[R.position],toNode:G.toHandle?T.value.get(G.toHandle.nodeId):null};if(!(k&&W&&(K!=null&&K.toHandle)&&z.toHandle&&K.toHandle.type===z.toHandle.type&&K.toHandle.nodeId===z.toHandle.nodeId&&K.toHandle.id===z.toHandle.id&&K.to.x===z.to.x&&K.to.y===z.to.y)){if(b(W&&k?jl({x:W.x,y:W.y},C.value):$,G.toHandle,jA(!!W,k)),K=z,!W&&!k&&!F)return Yl(ce);O&&O.source!==O.target&&F&&(Yl(ce),ce=F,F.classList.add("connecting","vue-flow__handle-connecting"),F.classList.toggle("valid",!!k),F.classList.toggle("vue-flow__handle-valid",!!k))}},V=function(le){(W||F)&&O&&k&&(a?a(le,O):N.connect(O)),N.connectEnd(le),i&&(l==null||l(le)),Yl(ce),cancelAnimationFrame(j),E(le),A=!1,k=!1,O=null,F=null,U.removeEventListener("mousemove",I),U.removeEventListener("mouseup",V),U.removeEventListener("touchmove",I),U.removeEventListener("touchend",V)};const H=y(t.toValue(n));let te=t.toValue(r)||v.value||Vi;!te&&H&&(te=(ie?H.isValidSourcePos:H.isValidTargetPos)||Vi);let W,j=0;const{x:se,y:ue}=qt(D),ge=U==null?void 0:U.elementFromPoint(se,ue),re=_p(t.toValue(i),ge),q=(oe=c.value)==null?void 0:oe.getBoundingClientRect();if(!q||!re)return;const ae=qA(t.toValue(n),re,t.toValue(e),T.value,d.value);if(!ae)return;let ce,$=qt(D,q),A=!1;const B=()=>{if(!h.value)return;const[le,G]=sp($,q,g.value);_({x:le,y:G}),j=requestAnimationFrame(B)},R={...ae,nodeId:t.toValue(n),type:re,position:ae.position},ne=T.value.get(t.toValue(n)),Y={inProgress:!0,isValid:null,from:Ao(ne,R,Ne.Left,!0),fromHandle:R,fromPosition:R.position,fromNode:ne,to:$,toHandle:null,toPosition:Wl[R.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:re,position:(ge==null?void 0:ge.getAttribute("data-handlepos"))||Ne.Top,...$},{x:se-q.left,y:ue-q.top}),N.connectStart({event:D,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:re});let K=Y;U.addEventListener("mousemove",I),U.addEventListener("mouseup",V),U.addEventListener("touchmove",I),U.addEventListener("touchend",V)}}function M(D){var oe,ie;if(!u.value)return;const L=t.toValue(o)==="target";if(!p.value){N.clickConnectStart({event:D,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:Ne.Top,...qt(D)},void 0,!0);return}let U=t.toValue(r)||v.value||Vi;const I=y(t.toValue(n));if(!U&&I&&(U=(L?I.isValidSourcePos:I.isValidTargetPos)||Vi),I&&(typeof I.connectable>"u"?m.value:I.connectable)===!1)return;const V=Zf(D.target),H=yp(D,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:Ne.Top,...qt(D)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:U,doc:V,lib:"vue",flowId:s,nodeLookup:T.value},x.value,P.value,y),te=((oe=H.connection)==null?void 0:oe.source)===((ie=H.connection)==null?void 0:ie.target);H.isValid&&H.connection&&!te&&N.connect(H.connection),N.clickConnectEnd(D),E(D,!0)}return{handlePointerDown:S,handleClick:M}}function eI(){return t.inject(xp,"")}function Ip(e){const n=e??eI()??"",o=t.inject(Sp,t.ref(null)),{findNode:r,edges:i,emits:a}=Le(),l=r(n);return l||a.error(new lt(et.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>rp([l],i.value))}}function tI(){return{doubleClick:Ee(),click:Ee(),mouseEnter:Ee(),mouseMove:Ee(),mouseLeave:Ee(),contextMenu:Ee(),dragStart:Ee(),drag:Ee(),dragStop:Ee()}}function nI(e,n){const o=tI();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 Tp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Le();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,h=c.y*u*p,g=[];for(const y of e.value)if(y.draggable||l&&typeof y.draggable>"u"){const _={x:y.computedPosition.x+m,y:y.computedPosition.y+h},{computedPosition:w}=zl(y,_,s.error,n.value,y.parentNode?r(y.parentNode):void 0);g.push({id:y.id,position:w,from:y.position,distance:{x:c.x,y:c.y},dimensions:y.dimensions})}o(g,!0,!1)}}const Ql=.1,oI=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function En(){return $i("Viewport not initialized yet."),Promise.resolve(!1)}const rI={zoomIn:En,zoomOut:En,zoomTo:En,fitView:En,setCenter:En,fitBounds:En,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:En,setTransform:En,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function iI(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?ir:yi).scaleBy(es(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}=Xf({x:-r,y:-i},e.translateExtent),u=So.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?ir:yi).transform(es(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"?ir:yi).scaleTo(es(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:Ql,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=np(s),{x:d,y:f,zoom:u}=ip(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Ql,i.offset);return o(d,f,u,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,d=e.dimensions.height/2-a*s;return o(c,d,s,l)},fitBounds:(i,a={padding:Ql})=>{const{x:l,y:s,zoom:c}=ip(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>gr(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 gr(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 jl(s,e.viewport)}return{x:0,y:0}}}:rI)}function es(e,n=0,o=oI,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function aI(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let g,y,_=!!(o.nodes.value.length||o.edges.value.length);g=ko([e.modelValue,()=>{var w,b;return(b=(w=e.modelValue)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(y==null||y.pause(),o.setElements(w),!y&&!_&&w.length?_=!0:y==null||y.resume())}),y=ko([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,b])=>{var E;(E=e.modelValue)!=null&&E.value&&Array.isArray(e.modelValue.value)&&(g==null||g.pause(),e.modelValue.value=[...w,...b],t.nextTick(()=>{g==null||g.resume()}))},{immediate:_}),t.onScopeDispose(()=>{g==null||g.stop(),y==null||y.stop()})})},a=()=>{r.run(()=>{let g,y,_=!!o.nodes.value.length;g=ko([e.nodes,()=>{var w,b;return(b=(w=e.nodes)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(y==null||y.pause(),o.setNodes(w),!y&&!_&&w.length?_=!0:y==null||y.resume())}),y=ko([o.nodes,()=>o.nodes.value.length],([w])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(g==null||g.pause(),e.nodes.value=[...w],t.nextTick(()=>{g==null||g.resume()}))},{immediate:_}),t.onScopeDispose(()=>{g==null||g.stop(),y==null||y.stop()})})},l=()=>{r.run(()=>{let g,y,_=!!o.edges.value.length;g=ko([e.edges,()=>{var w,b;return(b=(w=e.edges)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(y==null||y.pause(),o.setEdges(w),!y&&!_&&w.length?_=!0:y==null||y.resume())}),y=ko([o.edges,()=>o.edges.value.length],([w])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(g==null||g.pause(),e.edges.value=[...w],t.nextTick(()=>{g==null||g.resume()}))},{immediate:_}),t.onScopeDispose(()=>{g==null||g.stop(),y==null||y.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&tt(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&tt(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&tt(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&tt(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{tt(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const g=async y=>{let _=y;typeof n.autoConnect=="function"&&(_=await n.autoConnect(y)),_!==!1&&o.addEdges([_])};t.watch(()=>n.autoConnect,()=>{tt(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(y,_,w)=>{y?o.onConnect(g):o.hooks.value.connect.off(g),w(()=>{o.hooks.value.connect.off(g)})},{immediate:!0})})},m=()=>{const g=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const y of Object.keys(n)){const _=y;if(!g.includes(_)){const w=t.toRef(()=>n[_]),b=o[_];t.isRef(b)&&r.run(()=>{t.watch(w,E=>{tt(E)&&(b.value=E)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function lI(){return{edgesChange:Ee(),nodesChange:Ee(),nodeDoubleClick:Ee(),nodeClick:Ee(),nodeMouseEnter:Ee(),nodeMouseMove:Ee(),nodeMouseLeave:Ee(),nodeContextMenu:Ee(),nodeDragStart:Ee(),nodeDrag:Ee(),nodeDragStop:Ee(),nodesInitialized:Ee(),miniMapNodeClick:Ee(),miniMapNodeDoubleClick:Ee(),miniMapNodeMouseEnter:Ee(),miniMapNodeMouseMove:Ee(),miniMapNodeMouseLeave:Ee(),connect:Ee(),connectStart:Ee(),connectEnd:Ee(),clickConnectStart:Ee(),clickConnectEnd:Ee(),paneReady:Ee(),init:Ee(),move:Ee(),moveStart:Ee(),moveEnd:Ee(),selectionDragStart:Ee(),selectionDrag:Ee(),selectionDragStop:Ee(),selectionContextMenu:Ee(),selectionStart:Ee(),selectionEnd:Ee(),viewportChangeStart:Ee(),viewportChange:Ee(),viewportChangeEnd:Ee(),paneScroll:Ee(),paneClick:Ee(),paneContextMenu:Ee(),paneMouseEnter:Ee(),paneMouseMove:Ee(),paneMouseLeave:Ee(),edgeContextMenu:Ee(),edgeMouseEnter:Ee(),edgeMouseMove:Ee(),edgeMouseLeave:Ee(),edgeDoubleClick:Ee(),edgeClick:Ee(),edgeUpdateStart:Ee(),edgeUpdate:Ee(),edgeUpdateEnd:Ee(),updateNodeInternals:Ee(),error:Ee(e=>$i(e.message))}}function sI(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),ii(()=>{r.off(i)})}})}function Pp(){return{vueFlowRef:null,viewportRef:null,nodes:[],edges:[],connectionLookup:new Map,nodeTypes:{},edgeTypes:{},initialized:!1,dimensions:{width:0,height:0},viewport:{x:0,y:0,zoom:1},d3Zoom:null,d3Selection:null,d3ZoomHandler:null,minZoom:.5,maxZoom:2,translateExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],nodeExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],selectionMode:Ul.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:fr.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:Gn.Bezier,style:{}},connectionMode:bn.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:Pi()?"Meta":"Control",zoomActivationKeyCode:Pi()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:lI(),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 cI=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function dI(e,n,o){const r=iI(e),i=$=>{const A=$??[];e.hooks.updateNodeInternals.trigger(A)},a=$=>SA($,e.nodes,e.edges),l=$=>xA($,e.nodes,e.edges),s=$=>rp($,e.edges),c=({id:$,type:A,nodeId:B})=>{var R;return Array.from(((R=e.connectionLookup.get(`${B}-${A}-${$??null}`))==null?void 0:R.values())??[])},d=$=>{if($)return n.value.get($)},f=$=>{if($)return o.value.get($)},u=($,A,B)=>{var R,ne;const X=[];for(const Y of $){const K={id:Y.id,type:"position",dragging:B,from:Y.from};if(A&&(K.position=Y.position,Y.parentNode)){const le=d(Y.parentNode);K.position={x:K.position.x-(((R=le==null?void 0:le.computedPosition)==null?void 0:R.x)??0),y:K.position.y-(((ne=le==null?void 0:le.computedPosition)==null?void 0:ne.y)??0)}}X.push(K)}X!=null&&X.length&&e.hooks.nodesChange.trigger(X)},p=$=>{if(!e.vueFlowRef)return;const A=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!A)return;const B=window.getComputedStyle(A),{m22:R}=new window.DOMMatrixReadOnly(B.transform),ne=[];for(const X of $){const Y=X,K=d(Y.id);if(K){const le=Ii(Y.nodeElement);if(!!(le.width&&le.height&&(K.dimensions.width!==le.width||K.dimensions.height!==le.height||Y.forceUpdate))){const z=Y.nodeElement.getBoundingClientRect();K.dimensions=le,K.handleBounds.source=wp("source",Y.nodeElement,z,R,K.id),K.handleBounds.target=wp("target",Y.nodeElement,z,R,K.id),ne.push({id:K.id,type:"dimensions",dimensions:le})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),ne.length&&e.hooks.nodesChange.trigger(ne)},m=($,A)=>{const B=new Set,R=new Set;for(const Y of $)zn(Y)?B.add(Y.id):wn(Y)&&R.add(Y.id);const ne=Cn(n.value,B,!0),X=Cn(o.value,R);if(e.multiSelectionActive){for(const Y of B)ne.push(kn(Y,A));for(const Y of R)X.push(kn(Y,A))}ne.length&&e.hooks.nodesChange.trigger(ne),X.length&&e.hooks.edgesChange.trigger(X)},h=$=>{if(e.multiSelectionActive){const A=$.map(B=>kn(B.id,!0));e.hooks.nodesChange.trigger(A);return}e.hooks.nodesChange.trigger(Cn(n.value,new Set($.map(A=>A.id)),!0)),e.hooks.edgesChange.trigger(Cn(o.value))},g=$=>{if(e.multiSelectionActive){const A=$.map(B=>kn(B.id,!0));e.hooks.edgesChange.trigger(A);return}e.hooks.edgesChange.trigger(Cn(o.value,new Set($.map(A=>A.id)))),e.hooks.nodesChange.trigger(Cn(n.value,new Set,!0))},y=$=>{m($,!0)},_=$=>{const B=($||e.nodes).map(R=>(R.selected=!1,kn(R.id,!1)));e.hooks.nodesChange.trigger(B)},w=$=>{const B=($||e.edges).map(R=>(R.selected=!1,kn(R.id,!1)));e.hooks.edgesChange.trigger(B)},b=$=>{if(!$||!$.length)return m([],!1);const A=$.reduce((B,R)=>{const ne=kn(R.id,!1);return zn(R)?B.nodes.push(ne):B.edges.push(ne),B},{nodes:[],edges:[]});A.nodes.length&&e.hooks.nodesChange.trigger(A.nodes),A.edges.length&&e.hooks.edgesChange.trigger(A.edges)},E=$=>{var A;(A=e.d3Zoom)==null||A.scaleExtent([$,e.maxZoom]),e.minZoom=$},N=$=>{var A;(A=e.d3Zoom)==null||A.scaleExtent([e.minZoom,$]),e.maxZoom=$},C=$=>{var A;(A=e.d3Zoom)==null||A.translateExtent($),e.translateExtent=$},x=$=>{e.nodeExtent=$,i()},P=$=>{var A;(A=e.d3Zoom)==null||A.clickDistance($)},v=$=>{e.nodesDraggable=$,e.nodesConnectable=$,e.elementsSelectable=$},T=$=>{const A=$ instanceof Function?$(e.nodes):$;!e.initialized&&!A.length||(e.nodes=kp(A,d,e.hooks.error.trigger))},O=$=>{const A=$ instanceof Function?$(e.edges):$;if(!e.initialized&&!A.length)return;const B=Jl(A,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);Zl(e.connectionLookup,o.value,B),e.edges=B},k=$=>{const A=$ instanceof Function?$([...e.nodes,...e.edges]):$;!e.initialized&&!A.length||(T(A.filter(zn)),O(A.filter(wn)))},F=$=>{let A=$ instanceof Function?$(e.nodes):$;A=Array.isArray(A)?A:[A];const B=kp(A,d,e.hooks.error.trigger),R=[];for(const ne of B)R.push(dp(ne));R.length&&e.hooks.nodesChange.trigger(R)},S=$=>{let A=$ instanceof Function?$(e.edges):$;A=Array.isArray(A)?A:[A];const B=Jl(A,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),R=[];for(const ne of B)R.push(dp(ne));R.length&&e.hooks.edgesChange.trigger(R)},M=($,A=!0,B=!1)=>{const R=$ instanceof Function?$(e.nodes):$,ne=Array.isArray(R)?R:[R],X=[],Y=[];function K(G){const z=s(G);for(const J of z)(!tt(J.deletable)||J.deletable)&&Y.push(fp(J.id,J.source,J.target,J.sourceHandle,J.targetHandle))}function le(G){const z=[];for(const J of e.nodes)J.parentNode===G&&z.push(J);if(z.length){for(const J of z)X.push(up(J.id));A&&K(z);for(const J of z)le(J.id)}}for(const G of ne){const z=typeof G=="string"?d(G):G;z&&(tt(z.deletable)&&!z.deletable||(X.push(up(z.id)),A&&K([z]),B&&le(z.id)))}Y.length&&e.hooks.edgesChange.trigger(Y),X.length&&e.hooks.nodesChange.trigger(X)},D=$=>{const A=$ instanceof Function?$(e.edges):$,B=Array.isArray(A)?A:[A],R=[];for(const ne of B){const X=typeof ne=="string"?f(ne):ne;X&&(tt(X.deletable)&&!X.deletable||R.push(fp(typeof ne=="string"?ne:ne.id,X.source,X.target,X.sourceHandle,X.targetHandle)))}e.hooks.edgesChange.trigger(R)},oe=($,A,B=!0)=>{const R=f($.id);if(!R)return!1;const ne=e.edges.indexOf(R),X=YA($,A,R,B,e.hooks.error.trigger);if(X){const[Y]=Jl([X],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((K,le)=>le===ne?Y:K),Zl(e.connectionLookup,o.value,[Y]),Y}return!1},ie=($,A,B={replace:!1})=>{const R=f($);if(!R)return;const ne=typeof A=="function"?A(R):A;R.data=B.replace?ne:{...R.data,...ne}},L=$=>cp($,e.nodes),U=$=>{const A=cp($,e.edges);return Zl(e.connectionLookup,o.value,A),A},I=($,A,B={replace:!1})=>{const R=d($);if(!R)return;const ne=typeof A=="function"?A(R):A;B.replace?e.nodes.splice(e.nodes.indexOf(R),1,ne):Object.assign(R,ne)},V=($,A,B={replace:!1})=>{const R=d($);if(!R)return;const ne=typeof A=="function"?A(R):A;R.data=B.replace?ne:{...R.data,...ne}},H=($,A,B=!1)=>{B?e.connectionClickStartHandle=$:e.connectionStartHandle=$,e.connectionEndHandle=null,e.connectionStatus=null,A&&(e.connectionPosition=A)},te=($,A=null,B=null)=>{e.connectionStartHandle&&(e.connectionPosition=$,e.connectionEndHandle=A,e.connectionStatus=B)},W=($,A)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,A?e.connectionClickStartHandle=null:e.connectionStartHandle=null},j=$=>{const A=EA($),B=A?null:mr($)?$:d($.id);return!A&&!B?[null,null,A]:[A?$:vi(B),B,A]},se=($,A=!0,B=e.nodes)=>{const[R,ne,X]=j($);if(!R)return[];const Y=[];for(const K of B||e.nodes){if(!X&&(K.id===ne.id||!K.computedPosition))continue;const le=vi(K),G=Ai(le,R);(A&&G>0||G>=Number(R.width)*Number(R.height))&&Y.push(K)}return Y},ue=($,A,B=!0)=>{const[R]=j($);if(!R)return!1;const ne=Ai(R,A);return B&&ne>0||ne>=Number(R.width)*Number(R.height)},ge=$=>{const{viewport:A,dimensions:B,d3Zoom:R,d3Selection:ne,translateExtent:X}=e;if(!R||!ne||!$.x&&!$.y)return!1;const Y=So.translate(A.x+$.x,A.y+$.y).scale(A.zoom),K=[[0,0],[B.width,B.height]],le=R.constrain()(Y,K,X),G=e.viewport.x!==le.x||e.viewport.y!==le.y||e.viewport.zoom!==le.k;return R.transform(ne,le),G},re=$=>{const A=$ instanceof Function?$(e):$,B=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];tt(A.defaultEdgeOptions)&&(e.defaultEdgeOptions=A.defaultEdgeOptions);const R=A.modelValue||A.nodes||A.edges?[]:void 0;R&&(A.modelValue&&R.push(...A.modelValue),A.nodes&&R.push(...A.nodes),A.edges&&R.push(...A.edges),k(R));const ne=()=>{tt(A.maxZoom)&&N(A.maxZoom),tt(A.minZoom)&&E(A.minZoom),tt(A.translateExtent)&&C(A.translateExtent)};for(const X of Object.keys(A)){const Y=X,K=A[Y];![...cI,...B].includes(Y)&&tt(K)&&(e[Y]=K)}wl(()=>e.d3Zoom).not.toBeNull().then(ne),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:k,setNodes:T,setEdges:O,addNodes:F,addEdges:S,removeNodes:M,removeEdges:D,findNode:d,findEdge:f,updateEdge:oe,updateEdgeData:ie,updateNode:I,updateNodeData:V,applyEdgeChanges:U,applyNodeChanges:L,addSelectedElements:y,addSelectedNodes:h,addSelectedEdges:g,setMinZoom:E,setMaxZoom:N,setTranslateExtent:C,setNodeExtent:x,setPaneClickDistance:P,removeSelectedElements:b,removeSelectedNodes:_,removeSelectedEdges:w,startConnection:H,updateConnection:te,endConnection:W,setInteractive:v,setState:re,getIntersectingNodes:se,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:ue,panBy:ge,fitView:$=>r.value.fitView($),zoomIn:$=>r.value.zoomIn($),zoomOut:$=>r.value.zoomOut($),zoomTo:($,A)=>r.value.zoomTo($,A),setViewport:($,A)=>r.value.setViewport($,A),setTransform:($,A)=>r.value.setTransform($,A),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:($,A,B)=>r.value.setCenter($,A,B),fitBounds:($,A)=>r.value.fitBounds($,A),project:$=>r.value.project($),screenToFlowCoordinate:$=>r.value.screenToFlowCoordinate($),flowToScreenCoordinate:$=>r.value.flowToScreenCoordinate($),toObject:()=>{const $=[],A=[];for(const B of e.nodes){const{computedPosition:R,handleBounds:ne,selected:X,dimensions:Y,isParent:K,resizing:le,dragging:G,events:z,...J}=B;$.push(J)}for(const B of e.edges){const{selected:R,sourceNode:ne,targetNode:X,events:Y,...K}=B;A.push(K)}return JSON.parse(JSON.stringify({nodes:$,edges:A,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:$=>new Promise(A=>{const{nodes:B,edges:R,position:ne,zoom:X,viewport:Y}=$;if(B&&T(B),R&&O(R),Y!=null&&Y.x&&(Y!=null&&Y.y)||ne){const K=(Y==null?void 0:Y.x)||ne[0],le=(Y==null?void 0:Y.y)||ne[1],G=(Y==null?void 0:Y.zoom)||X||e.viewport.zoom;return wl(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:K,y:le,zoom:G}).then(()=>{A(!0)})})}else A(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const $=Pp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const A=So.translate($.defaultViewport.x??0,$.defaultViewport.y??0).scale(qn($.defaultViewport.zoom??1,$.minZoom,$.maxZoom)),B=e.viewportRef.getBoundingClientRect(),R=[[0,0],[B.width,B.height]],ne=e.d3Zoom.constrain()(A,R,$.translateExtent);e.d3Zoom.transform(e.d3Selection,ne)}re($)},$destroy:()=>{}}}const uI=["data-id","data-handleid","data-nodeid","data-handlepos"],fI={name:"Handle",compatConfig:{MODE:3}},zt=t.defineComponent({...fI,props:{id:{default:null},type:{},position:{default:()=>Ne.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Le(),{id:m,node:h,nodeEl:g,connectedEdges:y}=Ip(),_=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),E=t.toRef(()=>{var O,k,F,S,M,D;return((O=l.value)==null?void 0:O.nodeId)===m&&((k=l.value)==null?void 0:k.id)===e.id&&((F=l.value)==null?void 0:F.type)===r.value||((S=c.value)==null?void 0:S.nodeId)===m&&((M=c.value)==null?void 0:M.id)===e.id&&((D=c.value)==null?void 0:D.type)===r.value}),N=t.toRef(()=>{var O,k,F;return((O=s.value)==null?void 0:O.nodeId)===m&&((k=s.value)==null?void 0:k.id)===e.id&&((F=s.value)==null?void 0:F.type)===r.value}),{handlePointerDown:C,handleClick:x}=Ap({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),P=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!y.value.some(O=>{const k=O[`${r.value}Handle`];return O[r.value]!==m?!1:k?k===e.id:!0}):typeof e.connectable=="number"?y.value.filter(O=>{const k=O[`${r.value}Handle`];return O[r.value]!==m?!1:k?k===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,y.value):tt(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var O;if(!h.dimensions.width||!h.dimensions.height)return;const k=(O=h.handleBounds[r.value])==null?void 0:O.find(L=>L.id===e.id);if(!d.value||k)return;const F=d.value.querySelector(".vue-flow__transformationpane");if(!g.value||!_.value||!F||!e.id)return;const S=g.value.getBoundingClientRect(),M=_.value.getBoundingClientRect(),D=window.getComputedStyle(F),{m22:oe}=new window.DOMMatrixReadOnly(D.transform),ie={id:e.id,position:e.position,x:(M.left-S.left)/oe,y:(M.top-S.top)/oe,type:r.value,nodeId:m,...Ii(_.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],ie]});function v(O){const k=Hl(O);P.value&&w.value&&(k&&O.button===0||!k)&&C(O)}function T(O){!m||!s.value&&!w.value||P.value&&x(O)}return n({handleClick:x,handlePointerDown:C,onClick:T,onPointerDown:v}),(O,k)=>(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":O.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${O.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:P.value,connecting:N.value,connectablestart:w.value,connectableend:b.value,connectionindicator:P.value&&(w.value&&!E.value||b.value&&E.value)}]]),onMousedown:v,onTouchstartPassive:v,onClick:T},[t.renderSlot(O.$slots,"default",{id:O.id})],42,uI))}}),Ri=function({sourcePosition:e=Ne.Bottom,targetPosition:n=Ne.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(zt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(zt,{type:"source",position:e,connectable:r,isValidConnection:a})]};Ri.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Ri.inheritAttrs=!1,Ri.compatConfig={MODE:3};const pI=Ri,Di=function({targetPosition:e=Ne.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(zt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Di.props=["targetPosition","label","isValidTargetPos","connectable","data"],Di.inheritAttrs=!1,Di.compatConfig={MODE:3};const mI=Di,Mi=function({sourcePosition:e=Ne.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(zt,{type:"source",position:e,connectable:o,isValidConnection:r})]};Mi.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Mi.inheritAttrs=!1,Mi.compatConfig={MODE:3};const gI=Mi,hI=["transform"],yI=["width","height","x","y","rx","ry"],_I=["y"],bI={name:"EdgeText",compatConfig:{MODE:3}},wI=t.defineComponent({...bI,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,yI)):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,_I)],8,hI))}}),kI=["id","d","marker-end","marker-start"],CI=["d","stroke-width"],EI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Li=t.defineComponent({...EI,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,kI),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,CI)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(wI,{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 Op({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 $p({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 Fi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Bp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case Ne.Left:l=n-Fi(n-r,a),s=o;break;case Ne.Right:l=n+Fi(r-n,a),s=o;break;case Ne.Top:l=n,s=o-Fi(o-i,a);break;case Ne.Bottom:l=n,s=o+Fi(i-o,a);break}return[l,s]}function Vp(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ne.Bottom,targetX:i,targetY:a,targetPosition:l=Ne.Top,curvature:s=.25}=e,[c,d]=Bp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Bp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,h,g]=$p({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,h,g]}function Rp({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case Ne.Left:case Ne.Right:a=.5*(n+r),l=o;break;case Ne.Top:case Ne.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function Dp(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ne.Bottom,targetX:i,targetY:a,targetPosition:l=Ne.Top}=e,[s,c]=Rp({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Rp({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,h]=$p({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${n},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,h]}const Mp={[Ne.Left]:{x:-1,y:0},[Ne.Right]:{x:1,y:0},[Ne.Top]:{x:0,y:-1},[Ne.Bottom]:{x:0,y:1}};function NI({source:e,sourcePosition:n=Ne.Bottom,target:o}){return n===Ne.Left||n===Ne.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 Lp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function xI({source:e,sourcePosition:n=Ne.Bottom,target:o,targetPosition:r=Ne.Top,center:i,offset:a}){const l=Mp[n],s=Mp[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=NI({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,g;const y={x:0,y:0},_={x:0,y:0},[w,b,E,N]=Op({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??w,g=i.y??b;const x=[{x:h,y:c.y},{x:h,y:d.y}],P=[{x:c.x,y:g},{x:d.x,y:g}];l[u]===p?m=u==="x"?x:P:m=u==="x"?P:x}else{const x=[{x:c.x,y:d.y}],P=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?P:x:m=l.y===p?x:P,n===r){const F=Math.abs(e[u]-o[u]);if(F<=a){const S=Math.min(a-1,a-F);l[u]===p?y[u]=(c[u]>e[u]?-1:1)*S:_[u]=(d[u]>o[u]?-1:1)*S}}if(n!==r){const F=u==="x"?"y":"x",S=l[u]===s[F],M=c[F]>d[F],D=c[F]<d[F];(l[u]===1&&(!S&&M||S&&D)||l[u]!==1&&(!S&&D||S&&M))&&(m=u==="x"?x:P)}const v={x:c.x+y.x,y:c.y+y.y},T={x:d.x+_.x,y:d.y+_.y},O=Math.max(Math.abs(v.x-m[0].x),Math.abs(T.x-m[0].x)),k=Math.max(Math.abs(v.y-m[0].y),Math.abs(T.y-m[0].y));O>=k?(h=(v.x+T.x)/2,g=m[0].y):(h=m[0].x,g=(v.y+T.y)/2)}return[[e,{x:c.x+y.x,y:c.y+y.y},...m,{x:d.x+_.x,y:d.y+_.y},o],h,g,E,N]}function SI(e,n,o,r){const i=Math.min(Lp(e,n)/2,Lp(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 ts(e){const{sourceX:n,sourceY:o,sourcePosition:r=Ne.Bottom,targetX:i,targetY:a,targetPosition:l=Ne.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,h,g]=xI({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 E;return b>0&&b<u.length-1?E=SI(u[b-1],w,u[b+1],s):E=`${b===0?"M":"L"}${w.x} ${w.y}`,_+=E,_},""),p,m,h,g]}function vI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Op({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const AI=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]=vI(e);return t.h(Li,{path:o,labelX:r,labelY:i,...n,...e})}}}),Fp=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]=ts({...e,sourcePosition:e.sourcePosition??Ne.Bottom,targetPosition:e.targetPosition??Ne.Top});return t.h(Li,{path:o,labelX:r,labelY:i,...n,...e})}}}),II=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(Fp,{...e,...n,borderRadius:0})}}),TI=t.defineComponent({name:"BezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","curvature","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Vp({...e,sourcePosition:e.sourcePosition??Ne.Bottom,targetPosition:e.targetPosition??Ne.Top});return t.h(Li,{path:o,labelX:r,labelY:i,...n,...e})}}}),PI=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]=Dp({...e,sourcePosition:e.sourcePosition??Ne.Bottom,targetPosition:e.targetPosition??Ne.Top});return t.h(Li,{path:o,labelX:r,labelY:i,...n,...e})}}}),OI={input:gI,default:pI,output:mI},$I={default:TI,straight:AI,step:II,smoothstep:Fp,simplebezier:PI};function BI(e,n,o){const r=t.computed(()=>g=>n.value.get(g)),i=t.computed(()=>g=>o.value.get(g)),a=t.computed(()=>{const g={...$I,...e.edgeTypes},y=Object.keys(g);for(const _ of e.edges)_.type&&!y.includes(_.type)&&(g[_.type]=_.type);return g}),l=t.computed(()=>{const g={...OI,...e.nodeTypes},y=Object.keys(g);for(const _ of e.nodes)_.type&&!y.includes(_.type)&&(g[_.type]=_.type);return g}),s=t.computed(()=>e.onlyRenderVisibleElements?op(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 g=[];for(const y of e.edges){const _=n.value.get(y.source),w=n.value.get(y.target);VA({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})&&g.push(y)}return g}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const g=[];for(const y of e.nodes)y.selected&&g.push(y);return g}),u=t.computed(()=>{const g=[];for(const y of e.edges)y.selected&&g.push(y);return g}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const g=[];for(const y of e.nodes)y.dimensions.width&&y.dimensions.height&&y.handleBounds!==void 0&&g.push(y);return g}),h=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:h}}class Hn{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)??Hn.instance;return Hn.instance=r??new Hn,o&&(o.config.globalProperties.$vueFlowStorage=Hn.instance),Hn.instance}set(n,o){return this.flows.set(n,o)}get(n){return this.flows.get(n)}remove(n){return this.flows.delete(n)}create(n,o){const r=Pp(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const h=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[h]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=BI(i,s,c),f=dI(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...O1(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Le(e){const n=Hn.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(Np,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const h=y=>{d.applyNodeChanges(y)},g=y=>{d.applyEdgeChanges(y)};u?(d.onNodesChange(h),d.onEdgesChange(g)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(g)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(g)})},{immediate:!0}),ii(()=>{if(s){const u=n.get(s.id);u?u.$destroy():$i(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(Np,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new lt(et.USEVUEFLOW_OPTIONS))}return s}function VI(e){const{emits:n,dimensions:o}=Le();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Ii(i);(l.width===0||l.height===0)&&n.error(new lt(et.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:l.width||500,height:l.height||500}};a(),window.addEventListener("resize",a),i&&(r=new ResizeObserver(()=>a()),r.observe(i)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const RI={name:"UserSelection",compatConfig:{MODE:3}},DI=t.defineComponent({...RI,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))}}),MI=["tabIndex"],LI={name:"NodesSelection",compatConfig:{MODE:3}},FI=t.defineComponent({...LI,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Le(),s=Tp(),c=t.ref(null),d=vp({el:c,onStart(h){n.selectionDragStart(h)},onDrag(h){n.selectionDrag(h)},onStop(h){n.selectionDragStop(h)}});t.onMounted(()=>{var h;a.value||(h=c.value)==null||h.focus({preventScroll:!0})});const f=t.computed(()=>np(r.value)),u=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(h){n.selectionContextMenu({event:h,nodes:r.value})}function m(h){a||vo[h.key]&&(h.preventDefault(),s({x:vo[h.key].x,y:vo[h.key].y},h.shiftKey))}return(h,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,MI)],6)):t.createCommentVNode("",!0)}});function UI(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const KI={name:"Pane",compatConfig:{MODE:3}},jI=t.defineComponent({...KI,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:h,deleteKeyCode:g,multiSelectionKeyCode:y,multiSelectionActive:_,edgeLookup:w,nodeLookup:b,connectionLookup:E,defaultEdgeOptions:N,connectionStartHandle:C}=Le(),x=t.ref(null),P=t.ref(new Set),v=t.ref(new Set),T=t.ref(),O=t.toRef(()=>c.value&&(e.isSelecting||a.value)),k=t.toRef(()=>C.value!==null);let F=!1,S=!1;const M=pr(g,{actInsideInputWithModifier:!1}),D=pr(y);t.watch(M,te=>{te&&(p(u.value),m(f.value),d.value=!1)}),t.watch(D,te=>{_.value=te});function oe(te,W){return j=>{j.target===W&&(te==null||te(j))}}function ie(te){if(F||k.value){F=!1;return}i.paneClick(te),l(),d.value=!1}function L(te){te.preventDefault(),te.stopPropagation(),i.paneContextMenu(te)}function U(te){i.paneScroll(te)}function I(te){var W,j,se;if(T.value=(W=n.value)==null?void 0:W.getBoundingClientRect(),!c.value||!e.isSelecting||te.button!==0||te.target!==x.value||!T.value)return;(se=(j=te.target)==null?void 0:j.setPointerCapture)==null||se.call(j,te.pointerId);const{x:ue,y:ge}=UI(te,T.value);S=!0,F=!1,l(),s.value={width:0,height:0,startX:ue,startY:ge,x:ue,y:ge},i.selectionStart(te)}function V(te){var W;if(!T.value||!s.value)return;F=!0;const{x:j,y:se}=qt(te,T.value),{startX:ue=0,startY:ge=0}=s.value,re={startX:ue,startY:ge,x:j<ue?j:ue,y:se<ge?se:ge,width:Math.abs(j-ue),height:Math.abs(se-ge)},q=P.value,ae=v.value;P.value=new Set(op(o.value,re,r.value,h.value===Ul.Partial,!0).map($=>$.id)),v.value=new Set;const ce=((W=N.value)==null?void 0:W.selectable)??!0;for(const $ of P.value){const A=E.value.get($);if(A)for(const{edgeId:B}of A.values()){const R=w.value.get(B);R&&(R.selectable??ce)&&v.value.add(B)}}if(!Ep(q,P.value)){const $=Cn(b.value,P.value,!0);i.nodesChange($)}if(!Ep(ae,v.value)){const $=Cn(w.value,v.value);i.edgesChange($)}s.value=re,a.value=!0,d.value=!1}function H(te){var W;te.button!==0||!S||((W=te.target)==null||W.releasePointerCapture(te.pointerId),!a.value&&s.value&&te.target===x.value&&ie(te),a.value=!1,s.value=null,d.value=P.value.size>0,i.selectionEnd(te),e.selectionKeyPressed&&(F=!1),S=!1)}return(te,W)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:x,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:te.isSelecting}]),onClick:W[0]||(W[0]=j=>O.value?void 0:oe(ie,x.value)(j)),onContextmenu:W[1]||(W[1]=j=>oe(L,x.value)(j)),onWheelPassive:W[2]||(W[2]=j=>oe(U,x.value)(j)),onPointerenter:W[3]||(W[3]=j=>O.value?void 0:t.unref(i).paneMouseEnter(j)),onPointerdown:W[4]||(W[4]=j=>O.value?I(j):t.unref(i).paneMouseMove(j)),onPointermove:W[5]||(W[5]=j=>O.value?V(j):t.unref(i).paneMouseMove(j)),onPointerup:W[6]||(W[6]=j=>O.value?H(j):void 0),onPointerleave:W[7]||(W[7]=j=>t.unref(i).paneMouseLeave(j))},[t.renderSlot(te.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(DI,{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(FI,{key:1})):t.createCommentVNode("",!0)],34))}}),GI={name:"Transform",compatConfig:{MODE:3}},qI=t.defineComponent({...GI,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Le(),i=t.computed(()=>o.value?!r.value:!1),a=t.computed(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:t.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[t.renderSlot(l.$slots,"default")],4))}}),zI={name:"Viewport",compatConfig:{MODE:3}},HI=t.defineComponent({...zI,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:h,preventScrolling:g,noWheelClassName:y,noPanClassName:_,emits:w,connectionStartHandle:b,userSelectionActive:E,paneDragging:N,d3Zoom:C,d3Selection:x,d3ZoomHandler:P,viewport:v,viewportRef:T,paneClickDistance:O}=Le();VI(T);const k=t.shallowRef(!1),F=t.shallowRef(!1);let S=null,M=!1,D=0,oe={x:0,y:0,zoom:0};const ie=pr(s),L=pr(l),U=pr(a),I=t.toRef(()=>(!L.value||L.value&&l.value===!0)&&(ie.value||u.value)),V=t.toRef(()=>ie.value||c.value),H=t.toRef(()=>L.value||l.value===!0&&I.value!==!0);t.onMounted(()=>{if(!T.value){$i("Viewport element is missing");return}const ge=T.value,re=ge.getBoundingClientRect(),q=hA().clickDistance(O.value).scaleExtent([n.value,o.value]).translateExtent(i.value),ae=Vt(ge).call(q),ce=ae.on("wheel.zoom"),$=So.translate(r.value.x??0,r.value.y??0).scale(qn(r.value.zoom??1,n.value,o.value)),A=[[0,0],[re.width,re.height]],B=q.constrain()($,A,i.value);q.transform(ae,B),q.wheelDelta(W),C.value=q,x.value=ae,P.value=ce,v.value={x:B.x,y:B.y,zoom:B.k},q.on("start",R=>{var ne;if(!R.sourceEvent)return null;D=R.sourceEvent.button,k.value=!0;const X=se(R.transform);((ne=R.sourceEvent)==null?void 0:ne.type)==="mousedown"&&(N.value=!0),oe=X,w.viewportChangeStart(X),w.moveStart({event:R,flowTransform:X})}),q.on("end",R=>{if(!R.sourceEvent)return null;if(k.value=!1,N.value=!1,te(I.value,D??0)&&!M&&w.paneContextMenu(R.sourceEvent),M=!1,j(oe,R.transform)){const ne=se(R.transform);oe=ne,w.viewportChangeEnd(ne),w.moveEnd({event:R,flowTransform:ne})}}),q.filter(R=>{var ne;const X=U.value||h.value,Y=m.value&&R.ctrlKey,K=R.button;if(K===1&&R.type==="mousedown"&&(ue(R,"vue-flow__node")||ue(R,"vue-flow__edge")))return!0;if(!I.value&&!X&&!V.value&&!p.value&&!m.value||E.value||!p.value&&R.type==="dblclick"||ue(R,y.value)&&R.type==="wheel"||ue(R,_.value)&&(R.type!=="wheel"||V.value&&R.type==="wheel"&&!U.value)||!m.value&&R.ctrlKey&&R.type==="wheel"||!X&&!V.value&&!Y&&R.type==="wheel")return!1;if(!m&&R.type==="touchstart"&&((ne=R.touches)==null?void 0:ne.length)>1)return R.preventDefault(),!1;if(!I.value&&(R.type==="mousedown"||R.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&K===0||Array.isArray(u.value)&&!u.value.includes(K)&&(R.type==="mousedown"||R.type==="touchstart"))return!1;const le=Array.isArray(u.value)&&u.value.includes(K)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!K||K<=1;return(!R.ctrlKey||ie.value||R.type==="wheel")&&le}),t.watch([E,I],()=>{E.value&&!k.value?q.on("zoom",null):E.value||q.on("zoom",R=>{v.value={x:R.transform.x,y:R.transform.y,zoom:R.transform.k};const ne=se(R.transform);M=te(I.value,D??0),w.viewportChange(ne),w.move({event:R,flowTransform:ne})})},{immediate:!0}),t.watch([E,V,d,U,m,g,y],()=>{V.value&&!U.value&&!E.value?ae.on("wheel.zoom",R=>{if(ue(R,y.value))return!1;const ne=U.value||h.value,X=m.value&&R.ctrlKey;if(!(!g.value||V.value||ne||X))return!1;R.preventDefault(),R.stopImmediatePropagation();const K=ae.property("__zoom").k||1,le=Pi();if(!ie.value&&R.ctrlKey&&m.value&&le){const _e=Ut(R),Q=W(R),he=K*2**Q;q.scaleTo(ae,he,_e,R);return}const G=R.deltaMode===1?20:1;let z=d.value===fr.Vertical?0:R.deltaX*G,J=d.value===fr.Horizontal?0:R.deltaY*G;!le&&R.shiftKey&&d.value!==fr.Vertical&&!z&&J&&(z=J,J=0),q.translateBy(ae,-(z/K)*f.value,-(J/K)*f.value);const de=se(ae.property("__zoom"));S&&clearTimeout(S),F.value?(w.move({event:R,flowTransform:de}),w.viewportChange(de),S=setTimeout(()=>{w.moveEnd({event:R,flowTransform:de}),w.viewportChangeEnd(de),F.value=!1},150)):(F.value=!0,w.moveStart({event:R,flowTransform:de}),w.viewportChangeStart(de))},{passive:!1}):typeof ce<"u"&&ae.on("wheel.zoom",function(R,ne){const X=!g.value&&R.type==="wheel"&&!R.ctrlKey,Y=U.value||h.value,K=m.value&&R.ctrlKey;if(!Y&&!c.value&&!K&&R.type==="wheel"||X||ue(R,y.value))return null;R.preventDefault(),ce.call(this,R,ne)},{passive:!1})},{immediate:!0})});function te(ge,re){return re===2&&Array.isArray(ge)&&ge.includes(2)}function W(ge){const re=ge.ctrlKey&&Pi()?10:1;return-ge.deltaY*(ge.deltaMode===1?.05:ge.deltaMode?1:.002)*re}function j(ge,re){return ge.x!==re.x&&!Number.isNaN(re.x)||ge.y!==re.y&&!Number.isNaN(re.y)||ge.zoom!==re.k&&!Number.isNaN(re.k)}function se(ge){return{x:ge.x,y:ge.y,zoom:ge.k}}function ue(ge,re){return ge.target.closest(`.${re}`)}return(ge,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:T,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(jI,{"is-selecting":H.value,"selection-key-pressed":t.unref(L),class:t.normalizeClass({connecting:!!t.unref(b),dragging:t.unref(N),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(qI,null,{default:t.withCtx(()=>[t.renderSlot(ge.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),YI=["id"],WI=["id"],XI=["id"],ZI={name:"A11yDescriptions",compatConfig:{MODE:3}},JI=t.defineComponent({...ZI,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Le();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Hf)}-${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,YI),t.createElementVNode("div",{id:`${t.unref(Yf)}-${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,WI),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(CA)}-${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,XI))],64))}});function QI(){const e=Le();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function eT(e,n,o){return o===Ne.Left?e-n:o===Ne.Right?e+n:e}function tT(e,n,o){return o===Ne.Top?e-n:o===Ne.Bottom?e+n:e}const ns=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=Ne.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:eT(n,e,r),cy:tT(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};ns.props=["radius","centerX","centerY","position","type"],ns.compatConfig={MODE:3};const Up=ns,nT=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:h,elementsSelectable:g,edgesUpdatable:y,edgesFocusable:_,hooks:w}=Le(),b=t.computed(()=>f(e.id)),{emit:E,on:N}=JA(b.value,a),C=t.inject(Bi),x=t.getCurrentInstance(),P=t.ref(!1),v=t.ref(!1),T=t.ref(""),O=t.ref(null),k=t.ref("source"),F=t.ref(null),S=t.toRef(()=>typeof b.value.selectable>"u"?g.value:b.value.selectable),M=t.toRef(()=>typeof b.value.updatable>"u"?y.value:b.value.updatable),D=t.toRef(()=>typeof b.value.focusable>"u"?_.value:b.value.focusable);t.provide(WA,e.id),t.provide(XA,F);const oe=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),ie=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),L=t.computed(()=>{const A=b.value.type||"default",B=C==null?void 0:C[`edge-${A}`];if(B)return B;let R=b.value.template??c.value[A];if(typeof R=="string"&&x){const ne=Object.keys(x.appContext.components);ne&&ne.includes(A)&&(R=t.resolveComponent(A,!1))}return R&&typeof R!="string"?R:(a.error(new lt(et.EDGE_TYPE_MISSING,R)),!1)}),{handlePointerDown:U}=Ap({nodeId:T,handleId:O,type:k,isValidConnection:p,edgeUpdaterType:k,onEdgeUpdate:H,onEdgeUpdateEnd:te});return()=>{const A=u(b.value.source),B=u(b.value.target),R="pathOptions"in b.value?b.value.pathOptions:{};if(!A&&!B)return a.error(new lt(et.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!A)return a.error(new lt(et.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!B)return a.error(new lt(et.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||A.hidden||B.hidden)return null;let ne;r.value===bn.Strict?ne=A.handleBounds.source:ne=[...A.handleBounds.source||[],...A.handleBounds.target||[]];const X=gp(ne,b.value.sourceHandle);let Y;r.value===bn.Strict?Y=B.handleBounds.target:Y=[...B.handleBounds.target||[],...B.handleBounds.source||[]];const K=gp(Y,b.value.targetHandle),le=(X==null?void 0:X.position)||Ne.Bottom,G=(K==null?void 0:K.position)||Ne.Top,{x:z,y:J}=Ao(A,X,le),{x:de,y:_e}=Ao(B,K,G);return b.value.sourceX=z,b.value.sourceY=J,b.value.targetX=de,b.value.targetY=_e,t.h("g",{ref:F,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${L.value===!1?"default":b.value.type||"default"}`,s.value,oe.value,{updating:P.value,selected:b.value.selected,animated:b.value.animated,inactive:!S.value&&!w.value.edgeClick.hasListeners()}],tabIndex:D.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":D.value?`${Yf}-${n}`:void 0,"aria-roledescription":"edge",role:D.value?"group":"img",...b.value.domAttributes,onClick:j,onContextmenu:se,onDblclick:ue,onMouseenter:ge,onMousemove:re,onMouseleave:q,onKeyDown:D.value?$:void 0},[v.value?null:t.h(L.value===!1?c.value.default:L.value,{id:e.id,sourceNode:A,targetNode:B,source:b.value.source,target:b.value.target,type:b.value.type,updatable:M.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:ie.value,markerStart:`url('#${hr(b.value.markerStart,n)}')`,markerEnd:`url('#${hr(b.value.markerEnd,n)}')`,sourcePosition:le,targetPosition:G,sourceX:z,sourceY:J,targetX:de,targetY:_e,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...R}),[M.value==="source"||M.value===!0?[t.h("g",{onMousedown:ae,onMouseenter:I,onMouseout:V},t.h(Up,{position:le,centerX:z,centerY:J,radius:i.value,type:"source","data-type":"source"}))]:null,M.value==="target"||M.value===!0?[t.h("g",{onMousedown:ce,onMouseenter:I,onMouseout:V},t.h(Up,{position:G,centerX:de,centerY:_e,radius:i.value,type:"target","data-type":"target"}))]:null]])};function I(){P.value=!0}function V(){P.value=!1}function H(A,B){E.update({event:A,edge:b.value,connection:B})}function te(A){E.updateEnd({event:A,edge:b.value}),v.value=!1}function W(A,B){A.button===0&&(v.value=!0,T.value=B?b.value.target:b.value.source,O.value=(B?b.value.targetHandle:b.value.sourceHandle)??null,k.value=B?"target":"source",E.updateStart({event:A,edge:b.value}),U(A))}function j(A){var B;const R={event:A,edge:b.value};S.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(B=F.value)==null||B.blur()):o([b.value])),E.click(R)}function se(A){E.contextMenu({event:A,edge:b.value})}function ue(A){E.doubleClick({event:A,edge:b.value})}function ge(A){E.mouseEnter({event:A,edge:b.value})}function re(A){E.mouseMove({event:A,edge:b.value})}function q(A){E.mouseLeave({event:A,edge:b.value})}function ae(A){W(A,!0)}function ce(A){W(A,!1)}function $(A){var B;!h.value&&Wf.includes(A.key)&&S.value&&(A.key==="Escape"?((B=F.value)==null||B.blur(),d([f(e.id)])):o([f(e.id)]))}}}),oT=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Le(),p=(e=t.inject(Bi))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return u((w=r.value)==null?void 0:w.nodeId)}),h=t.computed(()=>{var w;return u((w=i.value)==null?void 0:w.nodeId)??null}),g=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),y=t.computed(()=>c.value.markerStart?`url(#${hr(c.value.markerStart,n)})`:""),_=t.computed(()=>c.value.markerEnd?`url(#${hr(c.value.markerEnd,n)})`:"");return()=>{var w,b,E;if(!m.value||!r.value)return null;const N=r.value.id,C=r.value.type,x=m.value.handleBounds;let P=(x==null?void 0:x[C])??[];if(o.value===bn.Loose){const ie=(x==null?void 0:x[C==="source"?"target":"source"])??[];P=[...P,...ie]}if(!P)return null;const v=(N?P.find(ie=>ie.id===N):P[0])??null,T=(v==null?void 0:v.position)??Ne.Top,{x:O,y:k}=Ao(m.value,v,T);let F=null;h.value&&(o.value===bn.Strict?F=((w=h.value.handleBounds[C==="source"?"target":"source"])==null?void 0:w.find(ie=>{var L;return ie.id===((L=i.value)==null?void 0:L.id)}))||null:F=((b=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:b.find(ie=>{var L;return ie.id===((L=i.value)==null?void 0:L.id)}))||null);const S=((E=i.value)==null?void 0:E.position)??(T?Wl[T]:null);if(!T||!S)return null;const M=l.value??c.value.type??Gn.Bezier;let D="";const oe={sourceX:O,sourceY:k,sourcePosition:T,targetX:g.value.x,targetY:g.value.y,targetPosition:S};return M===Gn.Bezier?[D]=Vp(oe):M===Gn.Step?[D]=ts({...oe,borderRadius:0}):M===Gn.SmoothStep?[D]=ts(oe):M===Gn.SimpleBezier?[D]=Dp(oe):D=`M${O},${k} ${g.value.x},${g.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:O,sourceY:k,sourcePosition:T,targetX:g.value.x,targetY:g.value.y,targetPosition:S,sourceNode:m.value,sourceHandle:v,targetNode:h.value,targetHandle:F,markerEnd:_.value,markerStart:y.value,connectionStatus:d.value}):t.h("path",{d:D,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":_.value,"marker-start":y.value})))}}}),rT=["id","markerWidth","markerHeight","markerUnits","orient"],iT={name:"MarkerType",compatConfig:{MODE:3}},aT=t.defineComponent({...iT,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(ur).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(ur).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,rT))}}),lT={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},sT={name:"MarkerDefinitions",compatConfig:{MODE:3}},cT=t.defineComponent({...sT,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Le(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=hr(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",lT,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(aT,{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))])]))}}),dT={name:"Edges",compatConfig:{MODE:3}},uT=t.defineComponent({...dT,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Le();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(cT),(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(RA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(nT),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(oT))],64))}}),fT=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:h,ariaLiveMessage:g,snapToGrid:y,snapGrid:_,nodeDragThreshold:w,nodesDraggable:b,elementsSelectable:E,nodesConnectable:N,nodesFocusable:C,hooks:x}=Le(),P=t.ref(null);t.provide(Sp,P),t.provide(xp,e.id);const v=t.inject(Bi),T=t.getCurrentInstance(),O=Tp(),{node:k,parentNode:F}=Ip(e.id),{emit:S,on:M}=nI(k,l),D=t.toRef(()=>typeof k.draggable>"u"?b.value:k.draggable),oe=t.toRef(()=>typeof k.selectable>"u"?E.value:k.selectable),ie=t.toRef(()=>typeof k.connectable>"u"?N.value:k.connectable),L=t.toRef(()=>typeof k.focusable>"u"?C.value:k.focusable),U=t.computed(()=>oe.value||D.value||x.value.nodeClick.hasListeners()||x.value.nodeDoubleClick.hasListeners()||x.value.nodeMouseEnter.hasListeners()||x.value.nodeMouseMove.hasListeners()||x.value.nodeMouseLeave.hasListeners()),I=t.toRef(()=>!!k.dimensions.width&&!!k.dimensions.height),V=t.computed(()=>{const B=k.type||"default",R=v==null?void 0:v[`node-${B}`];if(R)return R;let ne=k.template||u.value[B];if(typeof ne=="string"&&T){const X=Object.keys(T.appContext.components);X&&X.includes(B)&&(ne=t.resolveComponent(B,!1))}return ne&&typeof ne!="string"?ne:(l.error(new lt(et.NODE_TYPE_MISSING,ne)),!1)}),H=vp({id:e.id,el:P,disabled:()=>!D.value,selectable:oe,dragHandle:()=>k.dragHandle,onStart(B){S.dragStart(B)},onDrag(B){S.drag(B)},onStop(B){S.dragStop(B)},onClick(B){$(B)}}),te=t.computed(()=>k.class instanceof Function?k.class(k):k.class),W=t.computed(()=>{const B=(k.style instanceof Function?k.style(k):k.style)||{},R=k.width instanceof Function?k.width(k):k.width,ne=k.height instanceof Function?k.height(k):k.height;return!B.width&&R&&(B.width=typeof R=="string"?R:`${R}px`),!B.height&&ne&&(B.height=typeof ne=="string"?ne:`${ne}px`),B}),j=t.toRef(()=>Number(k.zIndex??W.value.zIndex??0));return f(B=>{(B.includes(e.id)||!B.length)&&ue()}),t.onMounted(()=>{t.watch(()=>k.hidden,(B=!1,R,ne)=>{!B&&P.value&&(e.resizeObserver.observe(P.value),ne(()=>{P.value&&e.resizeObserver.unobserve(P.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>k.type,()=>k.sourcePosition,()=>k.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:P.value,forceUpdate:!0}])})}),t.watch([()=>k.position.x,()=>k.position.y,()=>{var B;return(B=F.value)==null?void 0:B.computedPosition.x},()=>{var B;return(B=F.value)==null?void 0:B.computedPosition.y},()=>{var B;return(B=F.value)==null?void 0:B.computedPosition.z},j,()=>k.selected,()=>k.dimensions.height,()=>k.dimensions.width,()=>{var B;return(B=F.value)==null?void 0:B.dimensions.height},()=>{var B;return(B=F.value)==null?void 0:B.dimensions.width}],([B,R,ne,X,Y,K])=>{const le={x:B,y:R,z:K+(m.value&&k.selected?1e3:0)};typeof ne<"u"&&typeof X<"u"?k.computedPosition=TA({x:ne,y:X,z:Y},le):k.computedPosition=le},{flush:"post",immediate:!0}),t.watch([()=>k.extent,p],([B,R],[ne,X])=>{(B!==ne||R!==X)&&se()}),k.extent==="parent"||typeof k.extent=="object"&&"range"in k.extent&&k.extent.range==="parent"?wl(()=>I).toBe(!0).then(se):se(),()=>k.hidden?null:t.h("div",{ref:P,"data-id":k.id,class:["vue-flow__node",`vue-flow__node-${V.value===!1?"default":k.type||"default"}`,{[o.value]:D.value,dragging:H==null?void 0:H.value,draggable:D.value,selected:k.selected,selectable:oe.value,parent:k.isParent},te.value],style:{visibility:I.value?"visible":"hidden",zIndex:k.computedPosition.z??j.value,transform:`translate(${k.computedPosition.x}px,${k.computedPosition.y}px)`,pointerEvents:U.value?"all":"none",...W.value},tabIndex:L.value?0:void 0,role:L.value?"group":void 0,"aria-describedby":h.value?void 0:`${Hf}-${n}`,"aria-label":k.ariaLabel,"aria-roledescription":"node",...k.domAttributes,onMouseenter:ge,onMousemove:re,onMouseleave:q,onContextmenu:ae,onClick:$,onDblclick:ce,onKeydown:A},[t.h(V.value===!1?u.value.default:V.value,{id:k.id,type:k.type,data:k.data,events:{...k.events,...M},selected:k.selected,resizing:k.resizing,dragging:H.value,connectable:ie.value,position:k.computedPosition,dimensions:k.dimensions,isValidTargetPos:k.isValidTargetPos,isValidSourcePos:k.isValidSourcePos,parent:k.parentNode,parentNodeId:k.parentNode,zIndex:k.computedPosition.z??j.value,targetPosition:k.targetPosition,sourcePosition:k.sourcePosition,label:k.label,dragHandle:k.dragHandle,onUpdateNodeInternals:ue})]);function se(){const B=k.computedPosition,{computedPosition:R,position:ne}=zl(k,y.value?Oi(B,_.value):B,l.error,p.value,F.value);(k.computedPosition.x!==R.x||k.computedPosition.y!==R.y)&&(k.computedPosition={...k.computedPosition,...R}),(k.position.x!==ne.x||k.position.y!==ne.y)&&(k.position=ne)}function ue(){P.value&&d([{id:e.id,nodeElement:P.value,forceUpdate:!0}])}function ge(B){H!=null&&H.value||S.mouseEnter({event:B,node:k})}function re(B){H!=null&&H.value||S.mouseMove({event:B,node:k})}function q(B){H!=null&&H.value||S.mouseLeave({event:B,node:k})}function ae(B){return S.contextMenu({event:B,node:k})}function ce(B){return S.doubleClick({event:B,node:k})}function $(B){oe.value&&(!r.value||!D.value||w.value>0)&&Xl(k,a.value,c,s,i,!1,P.value),S.click({event:B,node:k})}function A(B){if(!(Kl(B)||h.value))if(Wf.includes(B.key)&&oe.value){const R=B.key==="Escape";Xl(k,a.value,c,s,i,R,P.value)}else D.value&&k.selected&&vo[B.key]&&(B.preventDefault(),g.value=`Moved selected node ${B.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~k.position.x}, y: ${~~k.position.y}`,O({x:vo[B.key].x,y:vo[B.key].y},B.shiftKey))}}});function pT(e={includeHiddenNodes:!1}){const{nodes:n}=Le();return t.computed(()=>{if(n.value.length===0)return!1;for(const o of n.value)if((e.includeHiddenNodes||!o.hidden)&&((o==null?void 0:o.handleBounds)===void 0||o.dimensions.width===0||o.dimensions.height===0))return!1;return!0})}const mT={class:"vue-flow__nodes vue-flow__container"},gT={name:"Nodes",compatConfig:{MODE:3}},hT=t.defineComponent({...gT,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Le(),i=pT(),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",mT,[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(fT),{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 yT(){const{emits:e}=Le();t.onMounted(()=>{if(bp()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new lt(et.MISSING_STYLES))}})}const _T=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),bT={name:"VueFlow",compatConfig:{MODE:3}},Kp=t.defineComponent({...bT,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=kl(r,"modelValue",o),l=kl(r,"nodes",o),s=kl(r,"edges",o),c=Le(r),d=aI({modelValue:a,nodes:l,edges:s},r,c);return sI(o,c.hooks),QI(),yT(),t.provide(Bi,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(HI,null,{default:t.withCtx(()=>[t.createVNode(uT),_T,t.createVNode(hT),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(JI)],512))}}),wT={name:"Panel",compatConfig:{MODE:3}},kT=t.defineComponent({...wT,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Le(),r=t.computed(()=>`${n.position}`.split("-"));return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vue-flow__panel",r.value]),style:t.normalizeStyle({pointerEvents:t.unref(o)?"none":"all"})},[t.renderSlot(i.$slots,"default")],6))}});var ln=(e=>(e.Lines="lines",e.Dots="dots",e))(ln||{});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]}`})},Gp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};ln.Lines+"",ln.Dots+"";const CT={[ln.Dots]:"#81818a",[ln.Lines]:"#eee"},ET=["id","x","y","width","height","patternTransform"],NT={key:2,height:"100",width:"100"},xT=["fill"],ST=["x","y","fill"],vT={name:"Background",compatConfig:{MODE:3}},AT=t.defineComponent({...vT,props:{id:{},variant:{default:()=>ln.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:n,viewport:o}=Le(),r=t.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],d=[s*l||1,c*l||1],f=e.size*l,[u,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[u*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||CT[e.variant||ln.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(ln).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(ln).Dots?(t.openBlock(),t.createBlock(t.unref(Gp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",NT,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,xT)])):t.createCommentVNode("",!0)])],8,ET)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,ST),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),IT={name:"ControlButton",compatConfig:{MODE:3}},TT=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},PT={class:"vue-flow__controls-button"};function OT(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",PT,[t.renderSlot(e.$slots,"default")])}const yr=TT(IT,[["render",OT]]),$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 VT(e,n){return t.openBlock(),t.createElementBlock("svg",$T,BT)}const RT={render:VT},DT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},MT=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function LT(e,n){return t.openBlock(),t.createElementBlock("svg",DT,MT)}const FT={render:LT},UT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},KT=[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 jT(e,n){return t.openBlock(),t.createElementBlock("svg",UT,KT)}const GT={render:jT},qT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},zT=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 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 HT(e,n){return t.openBlock(),t.createElementBlock("svg",qT,zT)}const YT={render:HT},WT={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},XT=[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 ZT(e,n){return t.openBlock(),t.createElementBlock("svg",WT,XT)}const JT={render:ZT},QT={name:"Controls",compatConfig:{MODE:3}},eP=t.defineComponent({...QT,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>qf.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Le(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),h=t.toRef(()=>d.value.zoom>=u.value);function g(){l(),n("zoomIn")}function y(){s(),n("zoomOut")}function _(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(b,E)=>(t.openBlock(),t.createBlock(t.unref(kT),{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(yr,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(RT))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(yr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(FT))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(yr,{class:"vue-flow__controls-fitview",onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(GT))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(yr,{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(JT))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(YT))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),tP=["undo","redo","duplicate","cut","copy","paste"],qp=()=>{};function nP(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function oP(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 rP=je.createSharedComposable(()=>{const e=new Set;je.useEventListener("keydown",o=>{if(nP(o.target))return;const r=oP(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(!tP.some(i=>typeof o[i]=="function"))return qp;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function zp(e={}){if(typeof window>"u")return qp;const n=rP().subscribe(e);return t.onScopeDispose(n),n}const Hp=44,iP=220,Yp=366,aP=1e3,lP=Hp+parseFloat(Ru),Ui=1,sP=0,cP=1,dP=2,uP=3,Io=parseInt(o1,10),_r="application/x-datakit+json",Ki={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"]},Nn={padding:80,gaps:{nodes:60,edges:80,ranks:60}},fP=1600,pP=1.2,mP=0,gP=200,Wp=Symbol("confirm-modal"),To="{key}",Yn={"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}},ji=Object.keys(Yn).filter(e=>e.includes(To)).map(e=>e.replace(To,""));function os(e){if(!e||!wr(e))return;const n=ji.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(To,"")}function br(e){if(!e)return null;const n=ji.find(o=>e.startsWith(o));return n||e}function wr(e){return e?ji.some(n=>e.startsWith(n)):!1}function Xp(e){return e?wr(e)?br(e)+To:e:null}function rs(e){var o;if(!e)return!1;const n=Xp(e);return n?((o=Yn[n])==null?void 0:o.readable)??!1:!1}function is(e){var o;if(!e)return!1;const n=Xp(e);return n?((o=Yn[n])==null?void 0:o.writable)??!1:!1}function Gi(e,n,o){const r=n?_n(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function kr(e,n){const o=n(e.source),r=n(e.target);return[Gi(o,e.sourceField,"output"),Gi(r,e.targetField,"input")]}function as(e,n,o,r,i){const a=i(e),l=i(o);return[Gi(a,n,"output"),Gi(l,r,"input")]}function Zp(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 hP(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var yP="\0",Wn="\0",Jp="";let _P=class{constructor(n){rt(this,"_isDirected",!0);rt(this,"_isMultigraph",!1);rt(this,"_isCompound",!1);rt(this,"_label");rt(this,"_defaultNodeLabelFn",()=>{});rt(this,"_defaultEdgeLabelFn",()=>{});rt(this,"_nodes",{});rt(this,"_in",{});rt(this,"_preds",{});rt(this,"_out",{});rt(this,"_sucs",{});rt(this,"_edgeObjs",{});rt(this,"_edgeLabels",{});rt(this,"_nodeCount",0);rt(this,"_edgeCount",0);rt(this,"_parent");rt(this,"_children");n&&(this._isDirected=Object.hasOwn(n,"directed")?n.directed:!0,this._isMultigraph=Object.hasOwn(n,"multigraph")?n.multigraph:!1,this._isCompound=Object.hasOwn(n,"compound")?n.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[Wn]={})}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]=Wn,this._children[n]={},this._children[Wn][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=Wn;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!==Wn)return o}}children(n=Wn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===Wn)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=Cr(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=bP(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Qp(this._preds[o],n),Qp(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?ls(this._isDirected,arguments[0]):Cr(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?ls(this._isDirected,arguments[0]):Cr(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?ls(this._isDirected,arguments[0]):Cr(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],em(this._preds[o],n),em(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 Qp(e,n){e[n]?e[n]++:e[n]=1}function em(e,n){--e[n]||delete e[n]}function Cr(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Jp+a+Jp+(r===void 0?yP:r)}function bP(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 ls(e,n){return Cr(e,n.v,n.w,n.name)}var ss=_P,wP="2.2.4",kP={Graph:ss,version:wP},CP=ss,EP={write:NP,read:vP};function NP(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:xP(e),edges:SP(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function xP(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 SP(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 vP(e){var n=new CP(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 AP=IP;function IP(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 tm=class{constructor(){rt(this,"_arr",[]);rt(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var r=this._keyIndices;if(n=String(n),!Object.hasOwn(r,n)){var i=this._arr,a=i.length;return r[n]=a,i.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var r=this._keyIndices[n];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(n){var o=this._arr,r=2*n,i=r+1,a=n;r<o.length&&(a=o[r].priority<o[a].priority?r:a,i<o.length&&(a=o[i].priority<o[a].priority?i:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,r=o[n].priority,i;n!==0&&(i=n>>1,!(o[i].priority<r));)this._swap(n,i),n=i}_swap(n,o){var r=this._arr,i=this._keyIndices,a=r[n],l=r[o];r[n]=l,r[o]=a,i[l.key]=n,i[a.key]=o}},TP=tm,nm=OP,PP=()=>1;function OP(e,n,o,r){return $P(e,String(n),o||PP,r||function(i){return e.outEdges(i)})}function $P(e,n,o,r){var i={},a=new TP,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 BP=nm,VP=RP;function RP(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=BP(e,i,n,o),r},{})}var om=DP;function DP(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 MP=om,LP=FP;function FP(e){return MP(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var UP=jP,KP=()=>1;function jP(e,n,o){return GP(e,n||KP,o||function(r){return e.outEdges(r)})}function GP(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 rm(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new cs;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 cs;return r}class cs extends Error{constructor(){super(...arguments)}}var im=rm;rm.CycleException=cs;var am=im,qP=zP;function zP(e){try{am(e)}catch(n){if(n instanceof am.CycleException)return!1;throw n}return!0}var lm=HP;function HP(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?YP:WP,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 YP(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]),sm(n(a[0]),l=>i.push([l,!1])))}}function WP(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),sm(n(a),l=>i.push(l)))}}function sm(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var XP=lm,ZP=JP;function JP(e,n){return XP(e,n,"post")}var QP=lm,eO=tO;function tO(e,n){return QP(e,n,"pre")}var nO=ss,oO=tm,rO=iO;function iO(e,n){var o=new nO,r={},i=new oO,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 aO={components:AP,dijkstra:nm,dijkstraAll:VP,findCycles:LP,floydWarshall:UP,isAcyclic:qP,postorder:ZP,preorder:eO,prim:rO,tarjan:om,topsort:im},cm=kP,Mt={Graph:cm.Graph,json:EP,alg:aO,version:cm.version};let lO=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return dm(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&dm(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 dm(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 cO=lO;let dO=Mt.Graph,uO=cO;var fO=mO;let pO=()=>1;function mO(e,n){if(e.nodeCount()<=1)return[];let o=hO(e,n||pO);return gO(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function gO(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)ds(e,n,o,l);for(;l=i.dequeue();)ds(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(ds(e,n,o,l,!0));break}}}return r}function ds(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,us(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,us(n,o,d)}),e.removeNode(r.v),a}function hO(e,n){let o=new dO,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=yO(i+r+3).map(()=>new uO),l=r+1;return o.nodes().forEach(s=>{us(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function us(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 yO(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let um=Mt.Graph;var nt={addBorderNode:SO,addDummyNode:fm,applyWithChunking:qi,asNonCompoundGraph:bO,buildLayerMatrix:EO,intersectRect:CO,mapValues:$O,maxRank:mm,normalizeRanks:NO,notime:TO,partition:AO,pick:OO,predecessorWeights:kO,range:hm,removeEmptyRanks:xO,simplify:_O,successorWeights:wO,time:IO,uniqueId:gm,zipObject:fs};function fm(e,n,o,r){for(var i=r;e.hasNode(i);)i=gm(r);return o.dummy=n,e.setNode(i,o),i}function _O(e){let n=new um().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 bO(e){let n=new um({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 wO(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 fs(e.nodes(),n)}function kO(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 fs(e.nodes(),n)}function CO(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 EO(e){let n=hm(mm(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 NO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=qi(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function xO(e){let n=e.nodes().map(l=>e.node(l).rank),o=qi(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 SO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),fm(e,"border",i,n)}function vO(e,n=pm){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const pm=65535;function qi(e,n){if(n.length>pm){const o=vO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function mm(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return qi(Math.max,o)}function AO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function IO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function TO(e,n){return n()}let PO=0;function gm(e){var n=++PO;return e+(""+n)}function hm(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 OO(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function $O(e,n){let o=n;return typeof n=="string"&&(o=r=>r[n]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function fs(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let BO=fO,VO=nt.uniqueId;var RO={run:DO,undo:LO};function DO(e){(e.graph().acyclicer==="greedy"?BO(e,o(e)):MO(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,VO("rev"))});function o(r){return i=>r.edge(i).weight}}function MO(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 LO(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 FO=nt;var UO={run:KO,undo:GO};function KO(e){e.graph().dummyChains=[],e.edges().forEach(n=>jO(e,n))}function jO(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=FO.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 GO(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:qO}=nt;var zi={longestPath:zO,slack:HO};function zO(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=qO(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function HO(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var YO=Mt.Graph,Hi=zi.slack,ym=WO;function WO(e){var n=new YO({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;XO(n,e)<r;)i=ZO(n,e),a=n.hasNode(i.v)?Hi(e,i):-Hi(e,i),JO(n,e,a);return n}function XO(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!Hi(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function ZO(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=Hi(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function JO(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var QO=ym,_m=zi.slack,e$=zi.longestPath,t$=Mt.alg.preorder,n$=Mt.alg.postorder,o$=nt.simplify,r$=Xn;Xn.initLowLimValues=ms,Xn.initCutValues=ps,Xn.calcCutValue=bm,Xn.leaveEdge=km,Xn.enterEdge=Cm,Xn.exchangeEdges=Em;function Xn(e){e=o$(e),e$(e);var n=QO(e);ms(n),ps(n,e);for(var o,r;o=km(n);)r=Cm(n,e,o),Em(n,e,o,r)}function ps(e,n){var o=n$(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>i$(e,n,r))}function i$(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=bm(e,n,o)}function bm(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,l$(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function ms(e,n){arguments.length<2&&(n=e.nodes()[0]),wm(e,{},1,n)}function wm(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=wm(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function km(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function Cm(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===Nm(e,e.node(f.v),s)&&c!==Nm(e,e.node(f.w),s));return d.reduce((f,u)=>_m(n,u)<_m(n,f)?u:f)}function Em(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),ms(e),ps(e,n),a$(e,n)}function a$(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=t$(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 l$(e,n,o){return e.hasEdge(n,o)}function Nm(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var s$=zi,xm=s$.longestPath,c$=ym,d$=r$,u$=f$;function f$(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":Sm(e);break;case"tight-tree":m$(e);break;case"longest-path":p$(e);break;case"none":break;default:Sm(e)}}var p$=xm;function m$(e){xm(e),c$(e)}function Sm(e){d$(e)}var g$=h$;function h$(e){let n=_$(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=y$(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 y$(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 _$(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 Yi=nt;var b$={run:w$,cleanup:E$};function w$(e){let n=Yi.addDummyNode(e,"root",{},"_root"),o=k$(e),r=Object.values(o),i=Yi.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=C$(e)+1;e.children().forEach(s=>vm(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function vm(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=Yi.addBorderNode(e,"_bt"),d=Yi.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{vm(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,g=p.borderTop?r:2*r,y=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:g,minlen:y,nestingEdge:!0}),e.setEdge(h,d,{weight:g,minlen:y,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function k$(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 C$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function E$(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 N$=nt;var x$=S$;function S$(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)Am(e,"borderLeft","_bl",o,i,a),Am(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function Am(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=N$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var v$={adjust:A$,undo:I$};function A$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&Im(e)}function I$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&T$(e),(n==="lr"||n==="rl")&&(P$(e),Im(e))}function Im(e){e.nodes().forEach(n=>Tm(e.node(n))),e.edges().forEach(n=>Tm(e.edge(n)))}function Tm(e){let n=e.width;e.width=e.height,e.height=n}function T$(e){e.nodes().forEach(n=>gs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(gs),Object.hasOwn(o,"y")&&gs(o)})}function gs(e){e.y=-e.y}function P$(e){e.nodes().forEach(n=>hs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(hs),Object.hasOwn(o,"x")&&hs(o)})}function hs(e){let n=e.x;e.x=e.y,e.y=n}let Pm=nt;var O$=$$;function $$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=Pm.applyWithChunking(Math.max,r),a=Pm.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 B$=nt.zipObject;var V$=R$;function R$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=D$(e,n[r-1],n[r]);return o}function D$(e,n,o){let r=B$(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 M$=L$;function L$(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 F$=nt;var U$=K$;function K$(e,n){let o={};e.forEach((i,a)=>{let l=o[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};i.barycenter!==void 0&&(l.barycenter=i.barycenter,l.weight=i.weight)}),n.edges().forEach(i=>{let a=o[i.v],l=o[i.w];a!==void 0&&l!==void 0&&(l.indegree++,a.out.push(o[i.w]))});let r=Object.values(o).filter(i=>!i.indegree);return j$(r)}function j$(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&G$(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=>F$.pick(i,["vs","i","barycenter","weight"]))}function G$(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 q$=nt;var z$=H$;function H$(e,n){let o=q$.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(Y$(!!n)),c=Om(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Om(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Om(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 Y$(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let W$=M$,X$=U$,Z$=z$;var J$=$m;function $m(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=W$(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=$m(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&eB(p,m)}});let f=X$(d,o);Q$(f,c);let u=Z$(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 Q$(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function eB(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 tB=Mt.Graph,nB=nt;var oB=rB;function rB(e,n,o){let r=iB(e),i=new tB({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(a=>e.node(a));return e.nodes().forEach(a=>{let l=e.node(a),s=e.parent(a);(l.rank===n||l.minRank<=n&&n<=l.maxRank)&&(i.setNode(a),i.setParent(a,s||r),e[o](a).forEach(c=>{let d=c.v===a?c.w:c.v,f=i.edge(d,a),u=f!==void 0?f.weight:0;i.setEdge(d,a,{weight:e.edge(c).weight+u})}),Object.hasOwn(l,"minRank")&&i.setNode(a,{borderLeft:l.borderLeft[n],borderRight:l.borderRight[n]}))}),i}function iB(e){for(var n;e.hasNode(n=nB.uniqueId("_root")););return n}var aB=lB;function lB(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=O$,cB=V$,dB=J$,uB=oB,fB=aB,pB=Mt.Graph,Wi=nt;var mB=Bm;function Bm(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,Bm);return}let o=Wi.maxRank(e),r=Vm(e,Wi.range(1,o+1),"inEdges"),i=Vm(e,Wi.range(o-1,-1,-1),"outEdges"),a=sB(e);if(Rm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){gB(c%2?r:i,c%4>=2),a=Wi.buildLayerMatrix(e);let f=cB(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Rm(e,s)}function Vm(e,n,o){return n.map(function(r){return uB(e,r,o)})}function gB(e,n){let o=new pB;e.forEach(function(r){let i=r.graph().root,a=dB(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),fB(r,o,a.vs)})}function Rm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let hB=Mt.Graph,sn=nt;var yB={positionX:AB};function _B(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=wB(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(g=>{let y=e.node(g),_=y.order;(_<l||m<_)&&!(y.dummy&&e.node(h).dummy)&&Dm(o,g,h)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function bB(e,n){let o={};function r(a,l,s,c,d){let f;sn.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)&&Dm(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 wB(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function Dm(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 kB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function CB(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),n.forEach(s=>{let c=-1;s.forEach(d=>{let f=r(d);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let u=(f.length-1)/2;for(let p=Math.floor(u),m=Math.ceil(u);p<=m;++p){let h=f[p];a[d]===d&&c<l[h]&&!kB(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function EB(e,n,o,r,i){let a={},l=NB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),g={};for(;h;)g[h]?u(h):(g[h]=!0,m.push(h),m=m.concat(p(h))),h=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((h,g)=>Math.min(h,a[g.w]-l.edge(g)),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 NB(e,n,o,r){let i=new hB,a=e.graph(),l=IB(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 xB(e,n){return Object.values(n).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=TB(e,s)/2;i=Math.max(c+d,i),a=Math.min(c-d,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function SB(e,n){let o=Object.values(n),r=sn.applyWithChunking(Math.min,o),i=sn.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-sn.applyWithChunking(Math.min,d);l!=="l"&&(f=i-sn.applyWithChunking(Math.max,d)),f&&(e[s]=sn.mapValues(c,u=>u+f))})})}function vB(e,n){return sn.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 AB(e){let n=sn.buildLayerMatrix(e),o=Object.assign(_B(e,n),bB(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=CB(e,i,o,c),f=EB(e,i,d.root,d.align,s==="r");s==="r"&&(f=sn.mapValues(f,u=>-u)),r[l+s]=f})});let a=xB(e,r);return SB(r,a),vB(r,e.graph().align)}function IB(e,n,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,d;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":d=-l.width/2;break;case"r":d=l.width/2;break}if(d&&(c+=o?d:-d),d=0,c+=(l.dummy?n:e)/2,c+=(s.dummy?n:e)/2,c+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":d=s.width/2;break;case"r":d=-s.width/2;break}return d&&(c+=o?d:-d),d=0,c}}function TB(e,n){return e.node(n).width}let Mm=nt,PB=yB.positionX;var OB=$B;function $B(e){e=Mm.asNonCompoundGraph(e),BB(e),Object.entries(PB(e)).forEach(([n,o])=>e.node(n).x=o)}function BB(e){let n=Mm.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 Lm=RO,Fm=UO,VB=u$,RB=nt.normalizeRanks,DB=g$,MB=nt.removeEmptyRanks,Um=b$,LB=x$,Km=v$,FB=mB,UB=OB,Ot=nt,KB=Mt.Graph;var jB=GB;function GB(e,n){let o=n&&n.debugTiming?Ot.time:Ot.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>eV(e));o(" runLayout",()=>qB(r,o,n)),o(" updateInputGraph",()=>zB(e,r))})}function qB(e,n,o){n(" makeSpaceForEdgeLabels",()=>tV(e)),n(" removeSelfEdges",()=>dV(e)),n(" acyclic",()=>Lm.run(e)),n(" nestingGraph.run",()=>Um.run(e)),n(" rank",()=>VB(Ot.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>nV(e)),n(" removeEmptyRanks",()=>MB(e)),n(" nestingGraph.cleanup",()=>Um.cleanup(e)),n(" normalizeRanks",()=>RB(e)),n(" assignRankMinMax",()=>oV(e)),n(" removeEdgeLabelProxies",()=>rV(e)),n(" normalize.run",()=>Fm.run(e)),n(" parentDummyChains",()=>DB(e)),n(" addBorderSegments",()=>LB(e)),n(" order",()=>FB(e,o)),n(" insertSelfEdges",()=>uV(e)),n(" adjustCoordinateSystem",()=>Km.adjust(e)),n(" position",()=>UB(e)),n(" positionSelfEdges",()=>fV(e)),n(" removeBorderNodes",()=>cV(e)),n(" normalize.undo",()=>Fm.undo(e)),n(" fixupEdgeLabelCoords",()=>lV(e)),n(" undoCoordinateSystem",()=>Km.undo(e)),n(" translateGraph",()=>iV(e)),n(" assignNodeIntersects",()=>aV(e)),n(" reversePoints",()=>sV(e)),n(" acyclic.undo",()=>Lm.undo(e))}function zB(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 HB=["nodesep","edgesep","ranksep","marginx","marginy"],YB={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},WB=["acyclicer","ranker","rankdir","align"],XB=["width","height","rank"],jm={width:0,height:0},ZB=["minlen","weight","width","height","labeloffset"],JB={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},QB=["labelpos"];function eV(e){let n=new KB({multigraph:!0,compound:!0}),o=_s(e.graph());return n.setGraph(Object.assign({},YB,ys(o,HB),Ot.pick(o,WB))),e.nodes().forEach(r=>{let i=_s(e.node(r));const a=ys(i,XB);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=_s(e.edge(r));n.setEdge(r,Object.assign({},JB,ys(i,ZB),Ot.pick(i,QB)))}),n}function tV(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 nV(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};Ot.addDummyNode(e,"edge-proxy",a,"_ep")}})}function oV(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 rV(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 iV(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 aV(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(Ot.intersectRect(r,a)),o.points.push(Ot.intersectRect(i,l))})}function lV(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 cV(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 dV(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 uV(e){var n=Ot.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=>{Ot.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 fV(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 ys(e,n){return Ot.mapValues(Ot.pick(e,n),Number)}function _s(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let pV=nt,mV=Mt.Graph;var gV={debugOrdering:hV};function hV(e){let n=pV.buildLayerMatrix(e),o=new mV({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 yV="1.1.5",_V={graphlib:Mt,layout:jB,debug:gV,util:{time:nt.time,notime:nt.notime},version:yV};const Gm=hP(_V);function bV(e){const{branchLayout:n,phase:o,layoutOptions:r,nodes:i,edges:a}=e,{findNode:l}=Le(),{state:s,branchGroups:c,getNodeById:d,moveNode:f,commit:u}=Ye(),{getNodeDepth:p,isGroupId:m,groupsByOwner:h}=c,{isBranchEdgeId:g,updateGroupLayout:y,translateGroupTree:_,waitForLayoutFlush:w}=n,{viewport:b,padding:E=Nn.padding,gaps:N=Nn.gaps}=r,{nodes:C=Nn.gaps.nodes,edges:x=Nn.gaps.edges,ranks:P=Nn.gaps.ranks}=N;async function v(k=!0){const F=new Map(i.value.map(W=>[W.id,W.data])),S=new Map,M=new Map,D=W=>{if(!W)return;let j=M.get(W);return j||(j=l(W),j&&M.set(W,j),j)},oe=new Map,ie=W=>{let j=oe.get(W);return j!==void 0||(j=p(W),oe.set(W,j)),j},L=W=>{if(!Jo(W.data))return W.parentNode;const j=D(W.data.ownerId);if(!j)throw new Error(`Cannot find owner node '${W.data.ownerId}' for group node '${W.id}' via findNode`);return j.parentNode};for(const W of a.value){if(g(W.id))continue;const j=W.source,se=W.target;if(m(j)||m(se))continue;const ue=D(j),ge=D(se);if(ue){if(!ge)throw new Error(`Cannot find target node '${se}' for edge '${W.id}' via findNode`)}else throw new Error(`Cannot find source node '${j}' for edge '${W.id}' via findNode`);if(L(ue)===L(ge))continue;let re=ue,q=ge,ae=ie(re.id),ce=ie(q.id);for(;ae!==ce;)if(ae>ce){const $=L(re);if(!$)throw new Error(`Expected node '${re.id}' to have parent, but it does not`);const A=D($);if(!A)throw new Error(`Cannot find parent node '${$}' for node '${re.id}' via findNode`);re=A,ae--}else if(ce>ae){const $=L(q);if(!$)throw new Error(`Expected node '${q.id}' to have parent, but it does not`);const A=D($);if(!A)throw new Error(`Cannot find parent node '${$}' for node '${q.id}' via findNode`);q=A,ce--}for(;ae>=0;){const $=L(re),A=L(q);if($===A){S.has(ae)||S.set(ae,[]),S.get(ae).push({v:re.id,w:q.id});break}if($){if(!A){const ne=`Expected node '${q.id}' to have parent, but it does not`;throw console.error(ne,q),new Error(ne)}}else{const ne=`Expected node '${re.id}' to have parent, but it does not`;throw console.error(ne,re),new Error(ne)}const B=D($),R=D(A);if(B){if(!R)throw new Error(`Cannot find parent node '${A}' for node '${q.id}' via findNode`)}else throw new Error(`Cannot find parent node '${$}' for node '${re.id}' via findNode`);re=B,q=R,ae--,ce--}}const U=s.value.groups.toSorted((W,j)=>ie(j.ownerId)-ie(W.ownerId));for(const W of U)T(W.memberIds.reduce((j,se)=>{const ue=d(se);if(!ue)return console.warn(`Cannot find node '${se}' of group '${W.id}' by getNodeById`),j;if(ue.phase!==o)return j;if(ue.type==="branch"){const ge=h.value.get(ue.id);ge&&j.push(...ge)}return F.delete(ue.id),j.push(ue),j},[]),{virtualEdges:S.get(ie(W.ownerId)),cachedFindNode:D}),await t.nextTick(),y(W.id,!1),await w();const I=F.values().toArray();for(const W of I){if(Jo(W)||W.type!=="branch")continue;const j=h.value.get(W.id);j&&I.push(...j)}const{autoNodes:V,leftNode:H,rightNode:te}=O(I);T(V,{leftNode:H,rightNode:te,virtualEdges:S.get(0),cachedFindNode:D}),k&&u()}function T(k,F){var re,q,ae,ce,$;const{leftNode:S,rightNode:M,virtualEdges:D,cachedFindNode:oe}=F||{},ie=S?(oe??l)(S.id):void 0,L=M?(oe??l)(M.id):void 0;let U;if(k.length>0){U=new Gm.graphlib.Graph({multigraph:!0}),U.setGraph({rankdir:o==="request"?"LR":"RL",nodesep:C,edgesep:x,ranksep:P});const A=new Set;for(const B of k){const R=(oe??l)(B.id);if(!R){console.warn(`Cannot find graph node '${B.id}' in ${o} phase`);continue}A.add(B.id),Jo(B)?U.setNode(B.id,B.dimensions??R.dimensions):U.setNode(B.id,R.dimensions)}for(const B of a.value)!A.has(B.source)||!A.has(B.target)||U.setEdge(B.source,B.target,{points:[]});D==null||D.forEach(B=>U.setEdge(B,{points:[]})),Gm.layout(U)}const I=[],V=A=>({x:A.x-A.width/2,y:A.y-A.height/2,width:A.width,height:A.height});if(k.length>0){if(!U)throw new Error("Expected dagreGraph to be initialized");for(const A of k){const B=U.node(A.id),R=V(B);I.push(R),Jo(A)?_(A.id,R,R.x+Io,R.y+Io):f(A.id,{x:R.x,y:R.y},!1)}}const H=I.length>0?Zp(I):{x:0,y:0,width:0,height:0},te=H.width,W=H.height,j=H.x,se=H.x+H.width,ue=Math.max(0,Math.min(t.toValue(b==null?void 0:b.width)??Number.POSITIVE_INFINITY,fP)-te-2*C-(((re=ie==null?void 0:ie.dimensions)==null?void 0:re.width)??0)-(((q=L==null?void 0:L.dimensions)==null?void 0:q.width)??0)-2*E),ge=H.y+W/2;S&&f(S.id,{x:j-C-ue/2-(((ae=ie==null?void 0:ie.dimensions)==null?void 0:ae.width)??0),y:ge-(((ce=ie==null?void 0:ie.dimensions)==null?void 0:ce.height)??0)/2},!1),M&&f(M.id,{x:se+C+ue/2,y:ge-((($=L==null?void 0:L.dimensions)==null?void 0:$.height)??0)/2},!1)}function O(k){let F,S;const M=[];for(const D of k){if(Jo(D)){M.push(D);continue}switch(D.name){case"request":{if(o!=="request")throw new Error(`Unexpected request node in ${o} phase`);if(F)throw new Error("Duplicated request node in request phase");F=D;break}case"service_request":{if(o!=="request")throw new Error(`Unexpected service_request node in ${o} phase`);if(S)throw new Error("Duplicated service_request node in request phase");S=D;break}case"service_response":{if(o!=="response")throw new Error(`Unexpected service_response node in ${o} phase`);if(S)throw new Error("Duplicated service_response node in response phase");S=D;break}case"response":{if(o!=="response")throw new Error(`Unexpected response node in ${o} phase`);if(F)throw new Error("Duplicated response node in response phase");F=D;break}default:{M.push(D);break}}}return{autoNodes:M,leftNode:F,rightNode:S}}return{autoLayout:v}}function wV({phase:e,groupMapById:n,getNodeDepth:o}){const r=t.shallowRef(),i=t.shallowRef();function a(d){r.value=d,i.value=void 0}function l(){r.value&&(r.value=void 0,i.value=void 0)}function s(d){let f;return n.value.forEach(u=>{if(u.phase!==e)return;const p=u.position,m=u.dimensions;if(!p||!m||!(d.x>=p.x&&d.x<=p.x+m.width&&d.y>=p.y&&d.y<=p.y+m.height))return;const g=o(u.ownerId);(!f||g>f.depth)&&(f={depth:g,id:u.id})}),f==null?void 0:f.id}function c(d){if(!r.value){i.value=void 0;return}if(!d){i.value=void 0;return}i.value=s(d)}return{activeGroupId:i,start:a,updateActiveGroup:c,end:l}}function kV({phase:e,readonly:n,flowId:o}){const{findNode:r}=Le(o),i=Ye(),{state:a,groupMapById:l,getNodeById:s,moveNode:c,moveGroup:d,setGroupLayout:f,commit:u,branchGroups:p}=i,{memberGroupMap:m,groupsByOwner:h,getNodeDepth:g,getGroupDepth:y}=p,_=t.ref(),w=L=>!!L&&L.startsWith("branch:");function b(L){const U=[];for(const I of L.memberIds){const V=s(I);V&&U.push(V)}return U}const E=t.computed(()=>{const L=new Map;return m.value.forEach((U,I)=>{if(U.phase!==e||!U.position)return;const V=s(I);V&&(V.phase!==e||V.hidden||L.set(I,U))}),L}),N=t.computed(()=>{const L=new Map;return h.value.forEach((U,I)=>{const V=U.filter(H=>H.phase===e);V.length>0&&L.set(I,V)}),L}),C=t.computed(()=>{const L=[];for(const U of a.value.groups){const I=s(U.ownerId);if(!I||I.phase!==e)continue;const V=U.position,H=U.dimensions;if(!V||!H)continue;const te=b(U).filter(j=>j.phase===e&&!j.hidden),W=y(U.id);L.push({id:U.id,type:"group",position:V,width:H.width,height:H.height,data:{...U,memberIds:te.map(j=>j.id)},draggable:!n,selectable:!1,zIndex:W*Ui+sP})}return L}),x=t.computed(()=>{let L=0;for(const U of a.value.groups){if(U.phase!==e)continue;const I=y(U.id);I>L&&(L=I)}return L}),P=t.computed(()=>{const L=[];for(const U of a.value.groups){if(U.phase!==e||!U.position||!U.dimensions)continue;const I=s(U.ownerId);if(!I||I.phase!==e||I.hidden||!b(U).filter(W=>W.phase===e&&!W.hidden).length)continue;const H=Math.max(g(I.id),y(U.id))+x.value+1,te={id:`branch:${U.id}`,source:I.id,target:U.id,sourceHandle:`branch@${U.branch}`,targetHandle:"input",markerEnd:ur.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:I.id,branch:U.branch,groupId:U.id},zIndex:H*Ui+dP};L.push(te)}return L}),v=new Map,T=new Map;let O;function k(L,U=!0){if(L.phase!==e)return;const I=b(L).filter(j=>j.phase===e&&!j.hidden);if(!I.length)return;const V=[];for(const j of I){const se=r(j.id),ue=se==null?void 0:se.dimensions,ge=(ue==null?void 0:ue.width)??0,re=(ue==null?void 0:ue.height)??0;if(ge<=0||re<=0)return;V.push({...j.position,width:ge,height:re});const q=h.value.get(j.id)??[];for(const ae of q){if(ae.phase!==e)continue;const ce=v.get(ae.id),$=(ce==null?void 0:ce.position)??ae.position,A=(ce==null?void 0:ce.dimensions)??ae.dimensions;!$||!A||V.push({x:$.x,y:$.y,width:A.width,height:A.height})}}const H=Zp(V),te=H.width+Io*2,W=H.height+Io*2;return{position:{x:Math.round(H.x-Io),y:Math.round(H.y-Io)},dimensions:{width:Math.round(te),height:Math.round(W)},commit:U}}function F(){if(v.size===0){O=void 0;return}const L=[];let U=!1;v.forEach((I,V)=>{const H=f(V,I,!1);L.push({id:V,changed:H,commit:I.commit}),I.commit&&H&&!U&&(U=!0)}),v.clear(),O=void 0;for(const{id:I,changed:V,commit:H}of L){if(!V)continue;const te=l.value.get(I);if(!te)continue;const W=E.value.get(te.ownerId);W&&T.set(W.id,{commit:H})}if(T.size>0){const I=Array.from(T);T.clear();for(const[V,{commit:H}]of I)M(V,H)}U&&u("*")}function S(){v.size!==0&&(O||(O=t.nextTick().then(F)))}function M(L,U=!0){const I=l.value.get(L);if(!I)return;const V=k(I,U);V&&(v.set(L,V),S())}function D(L,U,I,V){const H=l.value.get(L);if(!H)return;if(!H.position){d(L,U,!1),M(L);return}if(I===0&&V===0){d(L,U,!1);return}d(L,U,!1);const te=[L],W=new Set([L]),j=new Set;for(;te.length;){const se=te.shift(),ue=l.value.get(se);if(!ue)continue;const ge=b(ue).filter(re=>re.phase===e&&!re.hidden);for(const re of ge){j.has(re.id)||(c(re.id,{x:re.position.x+I,y:re.position.y+V},!1),j.add(re.id));const q=N.value.get(re.id)??[];for(const ae of q){if(W.has(ae.id))continue;const ce=l.value.get(ae.id);ce!=null&&ce.position&&d(ae.id,{x:ce.position.x+I,y:ce.position.y+V},!1),W.add(ae.id),te.push(ae.id)}}}}function oe(L,U){const I=_.value;if(!I)return!1;if(I===L||U.some(V=>I===V))return!0;for(const V of U){const H=N.value.get(V)??[];if(H!=null&&H.some(te=>te.id===I))return!0}return!1}const ie=new Map;return t.watch(()=>a.value.groups.filter(U=>U.phase===e).map(U=>{const I=U.memberIds.map(V=>{var j,se;const H=r(V),te=Math.round(((j=H==null?void 0:H.dimensions)==null?void 0:j.width)??0),W=Math.round(((se=H==null?void 0:H.dimensions)==null?void 0:se.height)??0);return`${V}:${te}x${W}`});return{id:U.id,memberIds:U.memberIds,signature:I.join(",")}}),L=>{const U=new Set(L.map(I=>I.id));for(const I of ie.keys())U.has(I)||ie.delete(I);for(const I of L)oe(I.id,I.memberIds)||ie.get(I.id)===I.signature||(ie.set(I.id,I.signature),M(I.id))},{deep:!0,flush:"post"}),{groupsByOwner:N,memberGroupMap:E,groupNodes:C,branchEdges:P,isBranchEdgeId:w,updateGroupLayout:M,translateGroupTree:D,updateDragging:L=>{_.value=L},getNodeDepth:g,maxGroupDepth:x,waitForLayoutFlush:()=>O??Promise.resolve()}}function CV(e){t.provide(Wp,e)}function qm(){return t.inject(Wp,void 0)}function zm(){const e=qm();if(!e)throw new Error("Confirm modal not provided");return e}function EV(e){const{readonly:n,flowId:o}=e,r=Le(o),{onNodesChange:i,onEdgesChange:a,onPaneClick:l,findEdge:s}=r,{disconnectEdge:c,commit:d,portalSelection:f,selectPortalEdge:u}=Ye();i(p=>{p.some(m=>m.type==="select"&&"selected"in m&&m.selected)&&u(void 0)}),a(p=>{const m=p.some(g=>g.type==="select"&&"selected"in g&&g.selected),h=f.value?p.some(g=>g.type==="remove"&&g.id===f.value):!1;(m||h)&&u(void 0)}),l(()=>u(void 0)),je.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 Hm(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const NV={default:GN,hover:zN,selected:qN};let Ym,bs;function Xi(e){const n=e.id===Ym?"selected":e.id===bs?"hover":"default",o=NV[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[xV,SV]=je.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=Nn.padding,gaps:s=Nn.gaps}=r,{nodes:c=Nn.gaps.nodes}=s,d=Le(o),f=Ye(),u=qm(),p=Ga(),{i18n:{t:m}}=De(),{findNode:h,fitView:g,deleteKeyCode:y,onNodeDrag:_,onNodeDragStop:w,onConnect:b,onNodesChange:E,onEdgesChange:N,onEdgeUpdate:C,onEdgeMouseEnter:x,onEdgeMouseLeave:P,getNodes:v,setNodes:T,setEdges:O,addSelectedNodes:k,screenToFlowCoordinate:F}=d;y.value=["Delete","Backspace"];const{state:S,commit:M,moveNode:D,selectNode:oe,removeNode:ie,getNodeById:L,connectEdge:U,disconnectEdge:I,getInEdgesByNodeId:V,branchGroups:H,commit:te,reset:W,groupMapById:j}=f,{isGroupId:se}=H;function ue(fe,Te){const ke=L(fe.source),we=L(fe.target);return!!(ke&&we&&ke.phase===Te&&we.phase===Te)}const ge=kV({phase:n,readonly:i,flowId:o}),{memberGroupMap:re,groupNodes:q,branchEdges:ae,isBranchEdgeId:ce,updateGroupLayout:$,translateGroupTree:A,updateDragging:B,getNodeDepth:R,maxGroupDepth:ne}=ge,{activeGroupId:X,start:Y,updateActiveGroup:K,end:le}=wV({phase:n,groupMapById:j,getNodeDepth:R}),G=t.computed(()=>S.value.nodes.filter(fe=>fe.phase===n&&!fe.hidden).map(fe=>{const Te=re.value.get(fe.id),ke=Te==null?void 0:Te.position,we=Te==null?void 0:Te.dimensions,be=Te&&ke&&we?{x:fe.position.x-ke.x,y:fe.position.y-ke.y}:fe.position,Se=R(fe.id),Oe=!!(Te&&ke&&we),xe=(Oe?Se:0)+ne.value+1;return{id:fe.id,type:"flow",position:be,data:fe,deletable:!pl(fe),parentNode:Oe?Te.id:void 0,zIndex:xe*Ui+uP}})),z=t.computed(()=>S.value.edges.filter(fe=>ue(fe,n)).filter(fe=>!H.isEdgeEnteringGroup(fe.source,fe.target)).filter(fe=>{const Te=L(fe.source),ke=L(fe.target);return!(Te!=null&&Te.hidden)&&!(ke!=null&&ke.hidden)}).map(fe=>{const Te=L(fe.source),ke=L(fe.target);if(!Te||!ke){const be=[];throw Te||be.push(`source node "${fe.source}"`),ke||be.push(`target node "${fe.target}"`),new Error(`Missing ${be.join(" and ")} for edge "${fe.id}" in phase "${n}"`)}const we=Math.max(R(fe.source),R(fe.target))+ne.value+1;return Xi({id:fe.id,source:fe.source,target:fe.target,sourceHandle:fe.sourceField?`outputs@${fe.sourceField}`:"output",targetHandle:fe.targetField?`inputs@${fe.targetField}`:"input",markerEnd:ur.ArrowClosed,data:fe,updatable:!i,zIndex:we*Ui+cP})})),J=t.computed(()=>[...ae.value,...z.value]),{autoLayout:de}=bV({phase:n,layoutOptions:r,branchLayout:ge,nodes:G,edges:J});EV({readonly:i,flowId:o}),t.watch([G,q,J],([fe,Te,ke])=>{T([...Te,...fe]),O(ke)},{immediate:!0});const _e=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 Q({source:fe,sourceHandle:Te,target:ke,targetHandle:we}){if(!Te||!we)return;const be=Hm(Te),Se=Hm(we);if((be==null?void 0:be.io)==="input"||(Se==null?void 0:Se.io)==="output"||Te==="output"&&we==="output")return;const Oe=V(ke);let xe=!1,Ve=!1;const $e=[],Fe=[],Re=(Se==null?void 0:Se.io)==="input"?Oe.filter(ot=>!ot.targetField):Oe.filter(ot=>!!ot.targetField);Re.length>0&&(xe=!0,Re.forEach(ot=>{Fe.push(kr(ot,L)),I(ot.id,!1)}));const We=(Se==null?void 0:Se.io)==="input"?Se!=null&&Se.field?Oe.filter(ot=>ot.targetField===Se.field):Oe.filter(ot=>!!ot.targetField):Oe.filter(ot=>!ot.targetField);if(We.length>0){if(We.some($t=>$t.source===fe&&$t.target===ke&&$t.targetField===(Se==null?void 0:Se.field)&&$t.sourceField===(be==null?void 0:be.field)))return;Ve=!0,We.forEach($t=>{Fe.push(kr($t,L)),I($t.id,!1)})}if(!U({source:fe,sourceField:be==null?void 0:be.field,target:ke,targetField:Se==null?void 0:Se.field},!1)){W(),p({message:m("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if($e.push(as(fe,be==null?void 0:be.field,ke,Se==null?void 0:Se.field,L)),xe||Ve){if(!u)throw W(),new Error("Expected confirm modal to be provided here when reachable");if(!await u(m(xe?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),$e,Fe)){W();return}}te()}b(Q);let he=!1;const Ce=()=>{he&&(he=!1,te())};E(fe=>{fe.filter(we=>we.type==="select").filter(we=>!se(we.id)).sort((we,be)=>we.selected===be.selected?0:we.selected?1:-1).forEach(we=>{oe(we.selected?we.id:void 0)});let ke=!1;fe.forEach(we=>{if(we.type==="remove"){if(se(we.id))return;ke=!0,ie(we.id,!1)}}),ke&&!he&&(he=!0,queueMicrotask(Ce))}),_(({node:fe,event:Te})=>{var Oe,xe,Ve;if(!fe)return;if(se(fe.id)){const $e=fe.id;B($e),K(void 0);const Fe=j.value.get($e);if(!Fe)return;const Re=Fe.position??{...fe.position},We=fe.position.x-Re.x,to=fe.position.y-Re.y;A($e,fe.position,We,to);const ot=re.value.get(Fe.ownerId);ot&&$(ot.id,!1);return}const ke=fe.id;Y("canvas"),B(ke);const we=fe.parentNode;let be={...fe.position};if(we&&se(we)){const $e=j.value.get(we);$e!=null&&$e.position&&(be={x:$e.position.x+fe.position.x,y:$e.position.y+fe.position.y})}if(D(ke,be,!1),!pl(L(ke))){const $e={x:be.x,y:be.y,width:((Oe=fe.dimensions)==null?void 0:Oe.width)??0,height:((xe=fe.dimensions)==null?void 0:xe.height)??0},Fe=Te&&"clientX"in Te?F({x:Te.clientX,y:Te.clientY}):void 0,Re={x:$e.x+$e.width/2,y:$e.y+$e.height/2};K(Fe??Re)}const Se=we&&se(we)?we:(Ve=re.value.get(ke))==null?void 0:Ve.id;Se&&$(Se,!1)}),w(({node:fe})=>{var Se;if(!fe)return;if(B(void 0),se(fe.id)){M();return}const Te=fe.id,ke=fe.parentNode;let we={...fe.position};if(ke&&se(ke)){const Oe=j.value.get(ke);Oe!=null&&Oe.position&&(we={x:Oe.position.x+fe.position.x,y:Oe.position.y+fe.position.y})}D(Te,we,!1);const be=ke&&se(ke)?ke:(Se=re.value.get(Te))==null?void 0:Se.id;be&&$(be,!1),pt(Te),le(),M()}),N(fe=>{fe.filter(we=>we.type==="select").sort((we,be)=>we.selected===be.selected?0:we.selected?1:-1).forEach(we=>{ce(we.id)||(Ym=we.selected?we.id:void 0,O(be=>be.map(Se=>Se.id!==we.id||!Se.markerEnd?Se:Xi({...Se,zIndex:we.selected?1:void 0}))))});let ke=!1;fe.forEach(we=>{if(we.type==="remove"){if(ce(we.id))return;ke=!0,I(we.id,!1)}}),ke&&!he&&(he=!0,queueMicrotask(Ce))}),x(({edge:fe})=>{ce(fe.id)||(bs=fe.id,O(Te=>Te.map(ke=>ke.id!==fe.id?ke:Xi(ke))))}),P(({edge:fe})=>{ce(fe.id)||(bs=void 0,O(Te=>Te.map(ke=>ke.id!==fe.id?ke:Xi(ke))))}),C(({edge:fe,connection:Te})=>{ce(fe.id)||(I(fe.id,!1),Q(Te))});function pe(fe){g({..._e.value,...fe})}async function me(fe){return oe(fe),new Promise(Te=>setTimeout(()=>{const ke=h(fe);k(ke?[ke]:[]),Te()},0))}function He(fe){const Te=v.value.filter(({type:Re})=>Re!=="group"),ke=Te.find(({id:Re})=>Re===fe);if(!ke)throw new Error(`Node ${fe} not found`);const{x:we,y:be}=ke.data.position,{width:Se,height:Oe}=ke.dimensions,xe=be,Ve=be+Oe,$e=Te.filter(({id:Re})=>Re!==fe).filter(({data:{position:{y:Re}},dimensions:{height:We}})=>Re<Ve&&Re+We>xe).map(({data:{position:{x:Re}},dimensions:{width:We}})=>({left:Re,right:Re+We})).sort((Re,We)=>Re.left-We.left);let Fe=we+Se+c;for(const{left:Re,right:We}of $e)if(!(We<=Fe)){if(Fe+Se<=Re)return{x:Fe,y:xe};Fe=Math.max(Fe,We)+c}return{x:Fe,y:xe}}function st(fe){if(!fe)return;const Te=h(fe);if(!Te)throw new Error(`Node ${fe} not found`);const{position:{x:ke},dimensions:{width:we}}=Te,be=ke+we,{viewport:Se,dimensions:Oe,setViewport:xe}=d,{x:Ve,y:$e,zoom:Fe}=Se.value,{width:Re}=Oe.value,We=ke*Fe+Ve,to=be*Fe+Ve,ot=Re-Yp-c;if(to<=ot)return;let $t=ot-to;We+$t<0&&($t=-We),$t!==0&&xe({x:Ve+$t,y:$e,zoom:Fe},{duration:gP})}function pt(fe){if(!X.value)return!1;const{nodeId:Te,branch:ke}=l1(X.value),we=H.addMember(Te,ke,fe,{commit:!1});return K(void 0),we}return{vueFlowStore:d,editorStore:f,readonly:i,nodes:G,edges:J,selectNode:me,autoLayout:de,placeToRight:He,scrollRightToReveal:st,fitViewParams:_e,fitView:pe,groupDrop:{activeGroupId:X,startPanelDrag:()=>Y("panel"),endPanelDrag:le,updateActiveGroup:K,attachNodeToActiveGroup:pt}}});let Po=null;function vV(){var n;if(Po)return Po;if(typeof navigator>"u")return Po="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?Po="mac":/Linux/i.test(e)&&!/Android/i.test(e)?Po="linux":Po="windows"}const AV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},IV={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"},TV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Super",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Space",Delete:"Delete"};function PV(e,n={}){const o=n.platform??vV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?AV:o==="linux"?TV:IV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const OV={key:0,class:"label"},$V={class:"keys"},Zi=Ae(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=PV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:e.reverse}])},[e.label?(t.openBlock(),t.createElementBlock("span",OV,t.toDisplayString(e.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",$V,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),BV=["onClick"],VV={key:0,class:"additional-count"},Wm=24,RV=16,Ji=Ae(t.defineComponent({__name:"NodePortal",props:{expanded:{type:Boolean,default:()=>{}},reversed:{type:Boolean},targets:{}},setup(e){const n=Number.parseFloat(n1)||0,o={target:"body"},{portalSelection:r,selectPortalEdge:i}=Ye(),a=t.ref(!1),l=t.computed(()=>{const h=r.value;return h?e.targets.some(g=>g.edgeId===h):!1}),s=t.computed(()=>e.expanded!==void 0?e.expanded||l.value:a.value||l.value),c=()=>Wm*e.targets.length+n*(e.targets.length-1),d=t.computed(()=>({width:s.value?`${c()}px`:"fit-content"})),f=h=>{i(h)},u=h=>r.value===h,p=t.computed(()=>e.targets.map((h,g)=>{var _;const y=(Wm+n)*g;return{edgeId:h.edgeId,key:`${h.node.id}-${h.fieldName??"node"}-${g}`,icon:(_=wt[h.node.type])==null?void 0:_.icon,tooltip:h.fieldName?`${h.node.name}.${h.fieldName}`:h.node.name,highlighted:u(h.edgeId),tooltipEl:null,style:g===0?{width:"fit-content",zIndex:e.targets.length}:{position:"absolute",...e.reversed?{left:`${y}px`,transform:s.value?"translateX(0)":`translateX(-${y}px)`}:{right:0,transform:s.value?`translateX(-${y}px)`:"translateX(0)"},zIndex:e.targets.length-g}}})),m=t.computed(()=>Math.max(e.targets.length-1,0));return(h,g)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-portal",{expanded:s.value,reversed:e.reversed}]),onClick:g[0]||(g[0]=t.withModifiers(()=>{},["stop"])),onDragstart:g[1]||(g[1]=t.withModifiers(()=>{},["stop"])),onMousedown:g[2]||(g[2]=t.withModifiers(()=>{},["stop"])),onMouseenter:g[3]||(g[3]=y=>a.value=!0),onMouseleave:g[4]||(g[4]=y=>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,(y,_)=>(t.openBlock(),t.createBlock(t.unref(Be.KTooltip),{key:y.key,class:"target-box-wrapper","kpop-attributes":o,placement:"top",style:t.normalizeStyle(y.style),text:y.tooltip},{default:t.withCtx(()=>[t.createElementVNode("div",{class:t.normalizeClass(["target-box",{highlighted:y.highlighted}]),onClick:t.withModifiers(w=>f(y.edgeId),["stop"])},[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(y.icon),{color:t.unref(Zr),size:RV},null,8,["color"])),_===0&&m.value>0?(t.openBlock(),t.createElementBlock("span",VV," +"+t.toDisplayString(m.value),1)):t.createCommentVNode("",!0)],10,BV)]),_:2},1032,["style","text"]))),128))],4)],34))}}),[["__scopeId","data-v-926821a3"]]),Qi=Ae(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>Ne.Left},size:{default:()=>Number.parseFloat(Ru)},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(Ne).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Xm=Ae(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>wt[e.type]),o=t.computed(()=>r1(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"]]),DV={class:"body"},MV={class:"name"},LV={class:"handle"},FV={class:"handle-label-wrapper"},UV={class:"handle-label-wrapper"},KV={class:"handle-label text"},jV={class:"handle"},GV={class:"handle-label-wrapper"},qV={class:"handle-label-wrapper"},zV={class:"handle-label text"},HV={key:2,class:"branch-handles"},YV={class:"handle-label-wrapper"},WV={class:"handle-label text"},Zm=Ae(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",it),o=SV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d,branchGroups:f}=Ye(),u=t.computed(()=>wo(e.data.type)),p=t.computed(()=>e.data.fields.input.length>0),m=t.computed(()=>e.data.fields.output.length>0),h=t.computed(()=>p.value&&r(e.data.id).every(I=>I.targetField===void 0)),g=t.computed(()=>m.value&&i(e.data.id).every(I=>I.sourceField===void 0)),y=t.computed(()=>e.data.expanded.input??!1),_=t.computed(()=>e.data.expanded.output??!1),w=t.computed(()=>{var I,V,H;return((H=(V=(I=u.value.io)==null?void 0:I.next)==null?void 0:V.branches)==null?void 0:H.map(({name:te})=>te))??[]}),b=t.computed(()=>w.value.length>0),E=t.computed(()=>f.findMembership(e.data.id)),N=t.computed(()=>{var I,V;if(e.data.type==="property"){const H=(I=e.data.config)==null?void 0:I.property;return is(H)}return(V=u.value.io)==null?void 0:V.input}),C=t.computed(()=>{var I,V;if(e.data.type==="property"){const H=(I=e.data.config)==null?void 0:I.property;return rs(H)}return(V=u.value.io)==null?void 0:V.output}),x=t.computed(()=>pl(e.data)),P=t.computed(()=>e.data.phase==="response"),v=t.computed(()=>e.data.phase==="request"?Ne.Left:Ne.Right),T=t.computed(()=>e.data.phase==="request"?Ne.Right:Ne.Left),O=t.computed(()=>e.data.phase==="request"?Ne.Right:Ne.Left),k=t.computed(()=>x.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),F=t.computed(()=>x.value?FN:UN);function S(I){return I==="input"?P.value:!P.value}function M(I){const V=new Map,H=I==="input"?r(e.data.id):i(e.data.id);for(const te of H){const W=a(I==="input"?te.source:te.target);if(!W)continue;if(I==="input"){const re=W.type==="vault",q=W.phase!==e.data.phase,ae=f.isEdgeEnteringGroup(W.id,e.data.id);if(!(re||q||ae))continue}else{const re=W.phase!==e.data.phase,q=f.isEdgeEnteringGroup(e.data.id,W.id);if(!(re||q))continue}const j=I==="input"?te.targetField||"input":te.sourceField||"output";let se;if(I==="input"&&te.sourceField){const re=W.fields.output.find(q=>q.id===te.sourceField);se=re==null?void 0:re.name}else if(I==="output"&&te.targetField){const re=W.fields.input.find(q=>q.id===te.targetField);se=re==null?void 0:re.name}const ue={edgeId:te.id,node:W,fieldName:se},ge=V.get(j);ge?ge.push(ue):V.set(j,[ue])}return V}const D=t.computed(()=>M("input")),oe=t.computed(()=>M("output"));function ie(I){!o||o.readonly||I==="input"&&!h.value||I==="output"&&!g.value||l(e.data.id,I)}async function L(){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 U(){f.removeMember(e.data.id)}return t.watch(h,I=>{I||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(g,I=>{I||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(I,V)=>{Zt(I,V)||l(e.data.id,"input",I.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(I,V)=>{Zt(I,V)||l(e.data.id,"output",I.length>0,!0,"*")},{deep:!0}),(I,V)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:P.value,implicit:x.value,readonly:e.readonly}])},[t.createElementVNode("div",DV,[x.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Be.KTooltip),{key:0,class:"badge",placement:"top",text:e.data.type},{default:t.withCtx(()=>[t.createVNode(Xm,{"icon-only":"",size:"small",type:e.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",MV,t.toDisplayString(k.value),1),e.error?(t.openBlock(),t.createBlock(t.unref(ve.WarningIcon),{key:1,class:"error-icon",color:t.unref(sl),size:16},null,8,["color"])):t.createCommentVNode("",!0),x.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Be.KDropdown),{key:2,class:"menu",disabled:e.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:V[1]||(V[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(Be.KDropdownItem),{onClick:L},{default:t.withCtx(()=>[t.createVNode(Zi,{keys:t.unref(Ki).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),E.value?(t.openBlock(),t.createBlock(t.unref(Be.KDropdownItem),{key:0,onClick:U},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(Be.KDropdownItem),{danger:"",onClick:V[0]||(V[0]=H=>t.unref(c)(e.data.id))},{default:t.withCtx(()=>[t.createVNode(Zi,{keys:t.unref(Ki).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(Be.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.MoreIcon),{color:t.unref(ll)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:P.value}])},[N.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":p.value}])},[t.createElementVNode("div",LV,[t.createVNode(t.unref(zt),{id:"input",position:v.value,type:"target"},null,8,["position"]),D.value.has("input")?(t.openBlock(),t.createBlock(Ji,{key:0,mode:"input",reversed:S("input"),targets:D.value.get("input")},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",FV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:h.value}]),onClick:V[2]||(V[2]=t.withModifiers(H=>ie("input"),["stop"]))},[V[4]||(V[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[y.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(ve.UnfoldMoreIcon),{key:0,size:t.unref(Jr)},null,8,["size"])),y.value?(t.openBlock(),t.createBlock(t.unref(ve.UnfoldLessIcon),{key:1,color:h.value?void 0:t.unref(Bu),size:t.unref(Jr)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&y.value?(t.openBlock(),t.createBlock(Qi,{key:0,color:F.value,position:v.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),p.value&&y.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(e.data.fields.input,(H,te)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${H.id}`,class:"handle indented"},[t.createVNode(t.unref(zt),{id:`inputs@${H.id}`,position:v.value,type:"target"},null,8,["id","position"]),D.value.has(H.id)?(t.openBlock(),t.createBlock(Ji,{key:0,mode:"input",reversed:S("input"),targets:D.value.get(H.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0),t.createElementVNode("div",UV,[t.createElementVNode("div",KV,t.toDisplayString(H.name),1),t.createVNode(Qi,{color:F.value,position:v.value,type:te<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",jV,[t.createElementVNode("div",GV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:g.value}]),onClick:V[3]||(V[3]=t.withModifiers(H=>ie("output"),["stop"]))},[V[5]||(V[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(ve.UnfoldMoreIcon),{key:0,size:t.unref(Jr)},null,8,["size"])),_.value?(t.openBlock(),t.createBlock(t.unref(ve.UnfoldLessIcon),{key:1,color:g.value?void 0:t.unref(Bu),size:t.unref(Jr)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),m.value&&_.value?(t.openBlock(),t.createBlock(Qi,{key:0,color:F.value,position:T.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(zt),{id:"output",position:T.value,type:"source"},null,8,["position"]),oe.value.has("output")?(t.openBlock(),t.createBlock(Ji,{key:0,mode:"output",reversed:S("output"),targets:oe.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,(H,te)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${H.id}`,class:"handle indented"},[t.createElementVNode("div",qV,[t.createElementVNode("div",zV,t.toDisplayString(H.name),1),t.createVNode(Qi,{color:F.value,position:T.value,type:te<e.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(zt),{id:`outputs@${H.id}`,position:T.value,type:"source"},null,8,["id","position"]),oe.value.has(H.id)?(t.openBlock(),t.createBlock(Ji,{key:0,mode:"output",reversed:S("output"),targets:oe.value.get(H.id)},null,8,["reversed","targets"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),b.value?(t.openBlock(),t.createElementBlock("div",HV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(w.value,H=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${H}`,class:"handle"},[t.createElementVNode("div",YV,[t.createElementVNode("div",WV,t.toDisplayString(H),1)]),t.createVNode(t.unref(zt),{id:`branch@${H}`,connectable:!1,position:O.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-ba1af209"]]),XV=Ae(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?Ne.Right:Ne.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(zt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),ZV={key:0,class:"dk-flow-mask"},Jm=Ae(t.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=je.useElementBounding(i),{i18n:{t:l}}=De(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:h,groupDrop:g}=xV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:y,propertiesPanelOpen:_,invalidConfigNodeIds:w,selectedNode:b,duplicateNode:E,commit:N,selectPortalEdge:C}=c,{screenToFlowCoordinate:x,zoomIn:P,zoomOut:v,viewport:T,maxZoom:O,minZoom:k}=s,{activeGroupId:F,startPanelDrag:S,endPanelDrag:M,updateActiveGroup:D,attachNodeToActiveGroup:oe}=g,ie=t.ref(!1);function L(j){var ue;const se=(ue=j.dataTransfer)==null?void 0:ue.types.find(ge=>ge.startsWith(`${_r}/`));if(se)return se.replace(`${_r}/`,"")}function U(j){var se;if(e.mode==="edit"){if(((se=j==null?void 0:j.node)==null?void 0:se.type)==="group"){p(void 0),C(void 0);return}_.value=!0}}function I(j){e.mode!=="edit"||ie.value||(j.preventDefault(),D(x({x:j.clientX,y:j.clientY})))}function V(j){var $;if(e.mode!=="edit"||ie.value)return;const se=($=j.dataTransfer)==null?void 0:$.getData(_r);if(!se)return;j.preventDefault();const ue=JSON.parse(se);if(ue.action!=="create-node")return;const ge=x({x:j.clientX,y:j.clientY}),{type:re,anchor:q}=ue.data,ae={type:re,phase:e.phase,position:{x:ge.x-q.offsetX,y:ge.y-q.offsetY}},ce=y(ae,!1);if(!ce){M();return}oe(ce),N(),p(ce),_.value=!0,M()}async function H(){await d(),setTimeout(()=>u(),0)}const te=t.computed(()=>{if(e.mode==="preview")return[];const j=[{name:"zoom_in",icon:ve.AddIcon,action:P,disabled:T.value.zoom>=O.value},{name:"zoom_out",icon:ve.RemoveIcon,action:v,disabled:T.value.zoom<=k.value},{name:"fit_view",icon:ve.FullscreenIcon,action:u}];return e.mode==="edit"&&j.push({name:"auto_layout",icon:ve.AutoLayoutIcon,action:H}),j});if(e.phase==="response"&&e.mode==="edit"){je.useEventListener("dragstart",se=>{L(se)==="call"&&(ie.value=!0)});const{start:j}=je.useTimeoutFn(()=>{ie.value=!1},80);je.useEventListener("dragover",()=>{j()}),je.useEventListener("dragend",()=>{ie.value=!1})}e.mode==="edit"&&(je.useEventListener("dragstart",j=>{L(j)&&S()}),je.useEventListener("dragend",()=>{M()}));async function W(){const j=b.value;if(e.mode!=="edit"||!j||j.phase!==e.phase)return;const se=E(j.id,m(j.id));se&&(await p(se),_.value=!0,h(se))}return zp({enabled:t.computed(()=>!!b.value&&e.mode==="edit"&&b.value.phase===e.phase),duplicate:W}),n({autoLayout:d,fitView:u}),(j,se)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Kp),{id:e.flowId,class:t.normalizeClass(["flow",{readonly:e.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":e.mode==="edit","max-zoom":t.unref(pP),"min-zoom":t.unref(mP),"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:I,onDrop:V,onNodeClick:U,onNodesChange:se[0]||(se[0]=ue=>r("nodes-change")),onNodesInitialized:se[1]||(se[1]=ue=>r("initialized"))},{"node-flow":t.withCtx(({data:ue})=>[t.createVNode(Zm,{data:ue,error:t.unref(w).has(ue.id),readonly:e.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:ue})=>[t.createVNode(XV,{active:t.unref(F)===ue.id,data:ue},null,8,["active","data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(AT)),t.createVNode(t.unref(eP),{"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(te.value,ue=>(t.openBlock(),t.createBlock(t.unref(Be.KTooltip),{key:ue.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${ue.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(yr),{disabled:ue.disabled,onClick:t.withModifiers(ue.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(ue.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"]),ie.value?(t.openBlock(),t.createElementBlock("div",ZV,t.toDisplayString(t.unref(l)("plugins.free-form.datakit.flow_editor.phase_mask_help")),1)):t.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-c1890d6b"]]),JV={class:"label-content"},QV={class:"count"},eR={class:"label-content"},tR={class:"count"},Qm=.5,ws=.03,nR=30,ks=Ae(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",it),o=t.ref(!1),r=t.ref(!1),{responsePanelCollapsed:i}=ri(),{state:a,configNodeCounts:l,clearPendingLayout:s,setPendingFitView:c,commit:d,clear:f,portalSelection:u}=Ye(),p=t.useId(),m=`${p}-request`,h=`${p}-response`,g=Le(m),y=Le(h);function _(q,ae){const{onPaneClick:ce,onNodesChange:$,onEdgesChange:A,getSelectedNodes:B,getSelectedEdges:R}=q,{removeSelectedElements:ne}=ae;function X(Y){if(!Y){ne();return}Y.some(K=>K.type==="select")&&B.value.length+R.value.length>0&&ne()}$(X),A(X),ce(()=>X())}_(g,y),_(y,g),t.watch(u,q=>{q&&(g.removeSelectedElements(),y.removeSelectedElements())});const w=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),E=t.useTemplateRef("requestCanvasContainer"),N=t.useTemplateRef("requestFlow"),C=t.useTemplateRef("resizeHandle"),x=t.useTemplateRef("responseLabel"),P=t.useTemplateRef("responseCanvasContainer"),v=t.useTemplateRef("responseFlow"),T=je.useElementBounding(w),O=je.useElementBounding(b),k=je.useElementBounding(E),F=je.useElementBounding(C),S=je.useElementBounding(x),M=je.useElementBounding(P),D=t.computed(()=>Math.max(nR,T.height.value*ws)),oe=t.computed(()=>T.height.value-O.height.value-F.height.value-S.height.value),ie=t.computed(()=>{const q=oe.value;return q?Math.max(ws,D.value/q):ws}),L=t.ref(Qm),U=t.computed(()=>`${L.value*100}%`),I=t.computed(()=>`${(1-L.value)*100}%`),V=t.computed(()=>L.value<=ie.value),H=t.computed(()=>1-L.value<=ie.value);function te(q,{persist:ae=!0}={}){const ce=Math.min(1,Math.max(0,q));L.value=ce,ae&&e.mode==="edit"&&(i.value=H.value)}function W(q,ae=!0){te(q?1:Qm,{persist:ae})}function j(q=!0){te(0,{persist:q})}if(e.mode==="edit"){const q=l.value.response===0,ae=i.value;W(q||ae,!1)}else t.watch(()=>l.value.response,q=>{W(q===0,!1)},{immediate:!0});const se=()=>{e.resizable&&(V.value?W(!1):j())},ue=()=>{e.resizable&&W(!H.value)},{isDragging:ge}=je.useDraggable(C,{onMove(q){if(!e.resizable)return;const ae=Math.max(0,q.y-k.top.value),ce=Math.min(1,Math.max(0,ae/oe.value));te(ce,{persist:!1})},onEnd(){e.resizable&&(k.height.value<D.value?j():M.height.value<D.value?W(!0):te(L.value))}});function re(){t.nextTick(()=>{var q,ae;(q=N.value)==null||q.fitView(),(ae=v.value)==null||ae.fitView()})}return t.watch([o,r,()=>a.value.pendingLayout,()=>a.value.pendingFitView],([q,ae,ce,$])=>{e.inactive||!q||!ae||!ce&&!$||(ce&&s(),$&&c(!1),setTimeout(async()=>{var A,B;ce&&(await((A=N.value)==null?void 0:A.autoLayout(!1)),await((B=v.value)==null?void 0:B.autoLayout(!1)),d("*"),ce==="clearHistory"&&f()),$&&setTimeout(()=>re(),0)},0))}),(q,ae)=>(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:se},[e.resizable?(t.openBlock(),t.createBlock(t.unref(ve.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:V.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",JV,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),t.createElementVNode("span",QV,[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:E,class:t.normalizeClass(["canvas",{dragging:t.unref(ge)}]),style:t.normalizeStyle({flexBasis:U.value})},[t.createVNode(Jm,{ref_key:"requestFlow",ref:N,"flow-id":m,mode:e.mode,phase:"request",onInitialized:ae[0]||(ae[0]=ce=>o.value=!0),onNodesChange:ae[1]||(ae[1]=ce=>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:x,class:t.normalizeClass(["label response",{dragging:t.unref(ge),resizable:e.resizable}]),onClick:ue},[e.resizable?(t.openBlock(),t.createBlock(t.unref(ve.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:H.value}])},null,8,["class"])):t.createCommentVNode("",!0),t.createElementVNode("div",eR,[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),t.createElementVNode("span",tR,[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:P,class:t.normalizeClass(["canvas response",{dragging:t.unref(ge)}]),style:t.normalizeStyle({flexBasis:I.value})},[t.createVNode(Jm,{ref_key:"responseFlow",ref:v,"flow-id":h,mode:e.mode,phase:"response",onInitialized:ae[2]||(ae[2]=ce=>r.value=!0),onNodesChange:ae[3]||(ae[3]=ce=>r.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-3d68b40b"]]),oR={class:"dk-confirm-modal-body"},rR={class:"connections"},iR=Ae(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=De(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,h,g){return l.value=m,s.value=h??[],c.value=g??[],a.value=!0,await new Promise(y=>{d=y})}return n({open:p}),(m,h)=>{const g=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(g,{"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",oR,[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",rR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([y,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${_}`,class:"connection"},[t.createVNode(t.unref(ve.AddIcon),{color:t.unref(KN)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(_),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([y,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${y}-${_}`,class:"connection"},[t.createVNode(t.unref(ve.RemoveIcon),{color:t.unref(sl)},null,8,["color"]),t.createTextVNode(" "+t.toDisplayString(y)+" → "+t.toDisplayString(_),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),aR={class:"dk-editor-nav"},lR={class:"top"},sR={class:"bottom"},cR=Ae(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Ze.createI18n("en-us",it),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:ve.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=ri(),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",aR,[t.createElementVNode("div",lR,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:h})=>t.createVNode(t.unref(Be.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Be.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:h},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(Qr)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",sR,[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(Be.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Be.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(ve.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(Qr)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(ve.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(Qr)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),dR={class:"dk-editor-main"},uR={class:"header"},fR={class:"actions"},pR={class:"settings"},mR={ref:"canvasContainer",class:"body"},gR=Ae(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Ze.createI18n("en-us",it),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=Ye(),c=t.inject(fn.DATAKIT_M2,!1),d=["vault","cache"],f=t.computed(()=>c?yo:Jt(yo,d));function u(h){const g=yo[h],y=hn.load(g,{schema:gn,json:!0});if(typeof y!="object"||y===null)return;const _=y,w={config:{..._,nodes:_.nodes??[]}};s(w,!0)}function p(){o.value=!1}zp({enabled:o,undo:r,redo:i});const m={maxWidth:"300px",zIndex:1e4};return(h,g)=>(t.openBlock(),t.createElementBlock("div",dR,[t.createElementVNode("header",uR,[t.createElementVNode("div",fR,[t.createVNode(t.unref(Be.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Zi,{keys:t.unref(Ki).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(Be.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(Be.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Zi,{keys:t.unref(Ki).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(Be.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),g[0]||(g[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",pR,[t.createVNode(Ur,{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:m},name:"config.debug"},null,8,["label","label-attributes"])]),g[1]||(g[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(Be.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(f.value,(y,_)=>(t.openBlock(),t.createBlock(t.unref(Be.KDropdownItem),{key:_,onClick:w=>u(_)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${_}`)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(Be.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(ve.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Be.KButton),{onClick:p},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",mR,[t.createVNode(ks,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-e342016d"]]),hR=["draggable"],yR={class:"icon"},_R={class:"content"},bR={class:"title"},wR={class:"description"},kR=Ae(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}={}}=dl[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",yR,[t.createVNode(t.unref(i),{size:16})]),t.createElementVNode("div",_R,[t.createElementVNode("div",bR,t.toDisplayString(e.type),1),t.createElementVNode("div",wR,t.toDisplayString(t.unref(r)),1)])],42,hR))}}),[["__scopeId","data-v-38d156c9"]]),CR={class:"dk-node-panel"},ER={key:0,class:"title"},NR={class:"node-list"},xR={"aria-hidden":"true",class:"preview",inert:""},eg=Ae(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",it),{createNode:o}=Ye(),r=t.inject(fn.DATAKIT_M2,!1),i=["branch","cache"],a=`dk-drag-preview-${t.useId()}`,l=t.shallowRef(),s=t.computed(()=>l.value?[{id:"preview",type:"flow",data:l.value,position:{x:0,y:0}}]:[]),c=async(d,f)=>{var T,O,k;const u=d.currentTarget,{left:p,top:m,width:h,height:g}=u.getBoundingClientRect(),y=d.clientX-p,_=d.clientY-m;l.value=o({type:f}),await t.nextTick();const w=document.querySelector(`#${a}`)||u,b=w.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:E,offsetHeight:N}=w;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${E}px`,height:`${N}px`}),document.body.appendChild(b);const C=y/h,x=_/g,P={ratioX:C,ratioY:x,offsetX:E*C,offsetY:N*x},v={action:"create-node",data:{type:f,anchor:P}};(T=d.dataTransfer)==null||T.setData(_r,JSON.stringify(v)),(O=d.dataTransfer)==null||O.setData(`${_r}/${f}`,f),(k=d.dataTransfer)==null||k.setDragImage(b,P.offsetX,P.offsetY),requestAnimationFrame(()=>{b.remove(),l.value=void 0})};return(d,f)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",CR,[e.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",ER,[t.createVNode(u,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),t.createElementVNode("div",NR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(dl)),p=>(t.openBlock(),t.createBlock(kR,{key:p,type:p,unsupported:!t.unref(r)&&i.includes(p),onDragstart:c},null,8,["type","unsupported"]))),128))]),t.createElementVNode("div",xR,[t.createVNode(t.unref(Kp),{nodes:s.value},{"node-flow":t.withCtx(p=>[t.createVNode(Zm,{id:a,data:p.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-03b0fafb"]]);function SR(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=Ye(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var h;return((h=l.value.get("vault"))==null?void 0:h.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(h,g)=>{e(s.id,"output",h,!1);const y={...s.config,[h]:g};r(s.id,y)},removeVault:h=>{const g=yn(s,"output",h);if(!g)return;const y=s.fields.output.length===1;o(s.id,g.id,!0,!1);const _=Jt(s.config,h);r(s.id,_,!y),y&&a(s.id)},updateVault:(h,g,y=!0)=>{const _={...s.config,[h]:g};r(s.id,_,y)},renameVault:(h,g,y=!0)=>{var E;const _=yn(s,"output",h);if(!_)return;i(s.id,_.id,g,!1);const w=((E=s.config)==null?void 0:E[h])??"",b={...Jt(s.config,h),[g]:w};r(s.id,b,y)}}}const vR=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ke.useI18n(),i=t.inject(Ue.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),h=e.validateName(m,e.isEditing);return l.value=h||"",h===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,h)=>{const g=t.resolveComponent("KInput"),y=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref($o.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(g,{"model-value":a.value,"onUpdate:modelValue":[h[0]||(h[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(y,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),AR={class:"dk-vault-panel"},IR={class:"title"},TR={class:"vault-list"},PR={key:0,class:"vault-list-item"},OR={class:"vault-list-item-key"},$R={class:"vault-list-item-key-text"},BR=Ae(t.defineComponent({__name:"VaultField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=Kr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=Ke.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,E=s.value.value!==_.secretRef,N=b||E;s.value.value=_.secretRef,s.value.key=_.secretName,c.value?r("add",_.secretName,_.secretRef):N&&r("update",_.secretName,_.secretRef,b?w:void 0),c.value=null,p()},h=_=>{s.value=_},g=_=>{l(_.id),r("remove",_.key)},y=(_,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,x;const b=t.resolveComponent("KButton"),E=t.resolveComponent("KDropdownItem"),N=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",AR,[t.createElementVNode("h3",IR,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(ve.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",TR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),P=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:P.id},[P.key?(t.openBlock(),t.createElementBlock("div",PR,[t.createElementVNode("div",OR,[t.createVNode(t.unref(ve.KeyIcon),{color:t.unref(Zr),size:16},null,8,["color"]),t.createElementVNode("div",$R,t.toDisplayString(P.key),1)]),t.createVNode(N,null,{items:t.withCtx(()=>[t.createVNode(E,{onClick:v=>h(P)},{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(E,{danger:"",onClick:v=>g(P)},{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(ve.MoreIcon),{color:t.unref(ll)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(vR,{"is-editing":!!s.value&&!c.value,"secret-name":(C=s.value)==null?void 0:C.key,"secret-ref":(x=s.value)==null?void 0:x.value,"validate-name":y,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function VR(){const{getSchema:e}=Ge();return t.computed(()=>{const n=e("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=tn(n);return o.fields.forEach(r=>{const i=Object.keys(r)[0];if(i==="cache"){const a=r[i];r[i]={...a,fields:[...a.fields,{partial_id:{type:"string"}}]}}}),o})}const RR={class:"dk-cache-panel"},DR={class:"title"},MR={key:0,class:"cache-item"},LR={class:"cache-item-key"},FR={class:"cache-item-key-text"},UR={class:"dk-resource-cache-form"},KR={key:1},jR={key:2,class:"dk-cache-inline-redis"},GR=Ae(t.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(e,{emit:n}){const o=n,{getDefault:r,formData:i}=Ge(),a=yt("cache");if(a.error)throw new Error("No cache schema");const l=t.ref(!1),{i18n:{t:s}}=Ke.useI18n(),c=t.computed(()=>!(d.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),d=t.computed(()=>{var E;return(E=a.value.value)==null?void 0:E.strategy}),f=t.computed(()=>{var E;return(E=a.value.value)!=null&&E.redis?hn.dump(a.value.value.redis,{indent:2,noRefs:!0}):""}),u=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},h=()=>{u(),a.value.value||(a.value.value=r("cache"),a.value.value.strategy="memory")},g=()=>{l.value=!1,o("update",i)},y=Os.createdBundledHighlighter({langs:{yaml:()=>import("@shikijs/langs/yaml")},themes:{"github-dark":()=>import("@shikijs/themes/github-dark")},engine:()=>_g.createJavaScriptRegexEngine()}),{codeToHtml:_}=Os.createSingletonShorthands(y),w=()=>{var E,N;d.value==="memory"&&((E=i.cache)!=null&&E.partial_id)&&((N=i.cache)==null||delete N.partial_id)};async function b({codeElement:E,language:N,code:C}){E.innerHTML=await _(C,{lang:N,theme:"github-dark",structure:"inline"})}return(E,N)=>{const C=t.resolveComponent("KButton"),x=t.resolveComponent("KDropdownItem"),P=t.resolveComponent("KDropdown"),v=t.resolveComponent("KLabel"),T=t.resolveComponent("KCodeBlock"),O=t.resolveComponent("KModal");return t.openBlock(),t.createElementBlock("div",RR,[t.createElementVNode("h3",DR,t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),e.strategy?(t.openBlock(),t.createElementBlock("div",MR,[t.createElementVNode("div",LR,[t.createVNode(t.unref(ve.DeployIcon),{color:t.unref(Zr),size:t.unref(Vu)},null,8,["color","size"]),t.createElementVNode("div",FR,t.toDisplayString(e.strategy),1)]),t.createVNode(P,null,{items:t.withCtx(()=>[t.createVNode(x,{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(x,{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(ve.MoreIcon),{color:t.unref(ll)},null,8,["color"])]),_:1})]),_:1})])):(t.openBlock(),t.createBlock(C,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),t.createVNode(O,{"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:g},{default:t.withCtx(()=>{var k,F;return[t.createElementVNode("div",UR,[t.createVNode(Cd,{items:[{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":w},null,8,["items"]),d.value==="memory"?(t.openBlock(),t.createBlock(mt,{key:0,name:"memory.dictionary_name"})):t.createCommentVNode("",!0),d.value==="redis"?(t.openBlock(),t.createElementBlock("div",KR,[t.createVNode(v,null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),t.createVNode(t.unref(Ps.RedisConfigurationSelector),{"model-value":(k=t.unref(i).cache)==null?void 0:k.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":N[0]||(N[0]=S=>t.unref(i).cache.partial_id=S)},null,8,["model-value"])])):t.createCommentVNode("",!0),d.value==="redis"&&!((F=t.unref(i).cache)!=null&&F.partial_id)&&f.value?(t.openBlock(),t.createElementBlock("div",jR,[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(T,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:b},null,8,["code"])])):t.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-ad53942e"]]),qR={class:"dk-resources-panel"},zR=Ae(t.defineComponent({__name:"ResourcesPanel",setup(e){const n=VR(),o=t.ref(0),{addVault:r,removeVault:i,updateVault:a,renameVault:l,formData:s}=SR();function c(g,y,_){_&&_!==g&&l(_,g,!1),a(g,y)}const{state:d,commit:f}=Ye(),u=t.computed(()=>({cache:d.value.cacheConfig}));function p(g){d.value.cacheConfig=g.cache,f()}function m(){d.value.cacheConfig=void 0,f()}function h(){o.value++}return(g,y)=>(t.openBlock(),t.createElementBlock("div",qR,[t.createVNode(_t,{data:t.unref(s),schema:t.unref(n)},{default:t.withCtx(()=>[t.createVNode(BR,{name:"vault",onAdd:t.unref(r),onRemove:t.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),y[0]||(y[0]=t.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(t.openBlock(),t.createBlock(_t,{key:`${o.value}`,data:u.value,schema:t.unref(n)},{default:t.withCtx(()=>{var _;return[t.createVNode(GR,{strategy:(_=u.value.cache)==null?void 0:_.strategy,onCancel:h,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),HR={class:"header"},YR={class:"title"},WR={class:"body"},XR={class:"panel"},ZR=Ae(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Ze.createI18n("en-us",it),{sidePanelExpanded:o}=ri(),{propertiesPanelOpen:r,selectedNode:i}=Ye(),a=t.inject(fn.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,d=>{d||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(d,f)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",HR,[t.createElementVNode("h2",YR,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",WR,[t.createElementVNode("div",XR,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(u,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=p=>l.value=p),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),l.value==="nodes"?(t.openBlock(),t.createBlock(eg,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(zR,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(eg,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),JR=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(Tt,{items:t.unref($a)([...t.unref($u)]),name:e.name},null,8,["items","name"]))}}),QR=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Ge(),{i18n:o}=De(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(kt,{"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(Tt,{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"]))}}),eD=["data-testid"],tD={class:"dk-inputs-map-field-entry-body"},nD={class:"dk-inputs-map-field-entry-content"},oD=Ae(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l,field:s}=Kr(o,r),{i18n:{t:c}}=De(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(N,C="key"){var x;d.value&&(await t.nextTick(),(x=d.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function h(){const{id:N}=a(),C=i.value.findIndex(({key:x})=>!x);m(C===-1?i.value.length-1:C),f.value=N}function g(N){l(N.id),N.id===f.value&&(f.value=null),N.key.trim()!==""&&r("remove:field",N.key)}function y(N){p=N.key}function _(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 C=o.fieldNameValidator("input",p,N.key);if(C)return u.value[N.id]=C,C}function b(N){w(N)}function E(N,C){N.id!==f.value&&r("change:inputs",N.key,C)}return t.watch(()=>i.value,N=>{f.value&&(N.find(({id:C})=>C===f.value)||(f.value=null))}),(N,C)=>{const x=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),v=t.resolveComponent("KInput"),T=t.resolveComponent("KSelect"),O=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(x,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(k,F)=>(t.openBlock(),t.createElementBlock("div",{key:k.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${F}`},[t.createVNode(P,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${F}`},{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",tD,[t.createElementVNode("div",nD,[t.createVNode(v,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${F}`,modelValue:k.key,"onUpdate:modelValue":[S=>k.key=S,S=>w(k)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":F,"data-testid":`ff-key-${t.unref(s).path.value}.${F}`,error:!!u.value[k.id],"error-message":u.value[k.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:S=>b(k),onChange:S=>_(k),onFocus:S=>y(k)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(T,{modelValue:k.value,"onUpdate:modelValue":S=>k.value=S,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${F}`,"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:S=>E(k,(S==null?void 0:S.value)??null)},t.createSlots({_:2},[N.$slots["item-label"]?{name:"item-template",fn:t.withCtx(({item:S})=>[t.renderSlot(N.$slots,"item-label",t.mergeProps({ref_for:!0},S),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(O,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${F}`,icon:"",onClick:S=>g(k)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,eD))),128)),t.createVNode(O,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.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"]]),rD={class:"dk-source-item"},ea=Ae(t.defineComponent({__name:"SourceItem",props:{item:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("span",rD,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(wt)[e.item.type].icon),{color:t.unref(Zr),size:t.unref(Qr)},null,8,["color","size"])),t.createTextVNode(" "+t.toDisplayString(e.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),iD={key:1,class:"dk-inputs-field-or"},xn=Ae(t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=Ge(),{i18n:{t:i}}=De(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?QR:oD: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(Be.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(Tt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:e.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":t.withCtx(h=>[t.renderSlot(p.$slots,"item-label",t.normalizeProps(t.guardReactiveProps(h)),()=>[t.createVNode(ea,{item:h},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",iD,[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(Be.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:3,"field-name-validator":e.fieldNameValidator,items:e.items,"key-order":e.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},{"item-label":t.withCtx(h=>[t.createVNode(ea,{item:h},null,8,["item"])]),_:1},8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-90518c04"]]),aD={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"},lD={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 Zn(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Oo(e){const{i18n:{t:n}}=De(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function tg(e,n){const{i18n:{t:o}}=De();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function cD(e=0,n=1/0,o){const{i18n:{t:r}}=De();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function ng(e){const{i18n:{t:n}}=De();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 Cs(e,n){const{i18n:{t:o}}=De();return function(i){if(i==null)return;const a=ng(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 Es(e=-1/0,n=1/0,o){const{i18n:{t:r}}=De();return function(a){if(a==null)return;const l=ng(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 dD(e,n){const{state:o}=Ye(),{i18n:{t:r}}=De();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function uD(e,n,o){const{i18n:{t:r}}=De();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function fD(){const{i18n:{t:e}}=De();return function(o){if(fl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function og(e){const{i18n:{t:n}}=De(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Zn(Oo(o),tg("identifier",o),fD(),dD(e,o))}function pD(e){const{i18n:{t:n}}=De(),{getNodeById:o}=Ye();return function(i,a,l){const s={fieldName:n(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return Zn(Oo(s),uD(i,o(e),l))(a)}}function mD(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 Er(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=Ye(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>mD(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const h in a.value)m[h]=p[h];return m}function f(u,p){return{onBlur:()=>{const m=o(),h=s.value[u];h&&h.handleBlur(m[u])},onUpdate:()=>{const m=o(),h=s.value[u];h&&h.handleChange(m[u]),p==null||p()},error:t.computed(()=>{const m=s.value[u];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[u];return m?m.error.value??"":""})}}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function cn(e,n){const o=t.inject(fn.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:d,disconnectEdge:f,connectEdge:u,invalidConfigNodeIds:p,commit:m,revert:h}=Ye(),{i18n:{t:g}}=De(),y=zm(),_=t.computed(()=>{const L=a(e);if(!L)throw new Error("Node not existed");return L}),w=t.computed(()=>{const U=r.value.edges.filter(I=>I.target===e).reduce((I,V)=>{var se,ue;const H=a(V.source),te=(se=_n(H,"output",V.sourceField))==null?void 0:se.id,W=(ue=_n(_.value,"input",V.targetField))==null?void 0:ue.name,j=H.id+(te?`.${te}`:"");return W?I.inputs={...I.inputs,[W]:j}:I.input=j,I},{});return _.value.fields.input.forEach(I=>{U.inputs||(U.inputs={}),U.inputs[I.name]||(U.inputs[I.name]=null)}),{..._.value.config,...U,name:_.value.name}}),b=L=>{i(e,L??"",!0,`${e}:rename`)},E=(L,U=!0)=>{if(!n)throw new Error("getFormInnerData is not defined");const I=Jt(n(),["name","input","inputs"]),V=L?`update:${e}:${L}`:void 0;d(e,I,U,V)},N=(L,U)=>{const I=yn(_.value,L,U);if(!I)throw new Error(`Field with name "${U}" not found in node "${_.value.name}"`);return I},C=(L,U,I)=>{const V=!!I;l(e,L,U,!V),V&&O(U,I)},x=(L,U,I)=>{const V=N(L,U).id;s(e,V,I)},P=(L,U)=>{const I=N(L,U).id;c(e,I)},v=t.computed(()=>r.value.edges.filter(L=>L.target===e&&!L.targetField)[0]),T=t.computed(()=>r.value.edges.filter(L=>L.target===e&&L.targetField)),O=async(L,U)=>{const I=U==null,V=N("input",L).id;if(I){const q=T.value.find(ae=>ae.targetField===V);q&&f(q.id);return}const{nodeId:H,fieldId:te}=Mu(U),W=N("input",L).id,j=[];v.value&&(j.push(kr(v.value,a)),f(v.value.id,!1));const se=T.value.find(q=>q.targetField===V);se&&(j.push(kr(se,a)),f(se.id,!1)),u({source:H,sourceField:te,target:e,targetField:W},!1);const ue=as(H,te,e,W,a),ge=j[0]&&ue?j[0][1]===ue[1]:!1;if(m(),ge||j.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ue],j)||h()},k=async L=>{if(L==null){v.value&&f(v.value.id);return}const I=[];for(const j of T.value)I.push(kr(j,a)),f(j.id,!1);v.value&&f(v.value.id,!1);const{nodeId:V,fieldId:H}=Mu(L);u({source:V,sourceField:H,target:e,targetField:void 0},!1);const te=as(V,H,e,void 0,a);if(m(),I.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[te],I)||h()},F=L=>{const U=[...r.value.edges,{source:L,target:e}];return yl(oi(U))},S=t.computed(()=>{var U,I;const L=[];for(const V of r.value.nodes)if(!(!o&&V.type==="vault"||!((U=wo(V.type).io)!=null&&U.output))&&V.fields.output&&V.id!==e&&!(V.type==="property"&&!rs((I=V.config)==null?void 0:I.property))&&!F(V.id)&&!(_.value.phase==="request"&&V.phase==="response")&&!(V.type==="vault"&&V.fields.output.length===0)){L.push({value:V.id,label:V.name,type:V.type});for(const te of V.fields.output)L.push({value:`${V.id}.${te.id}`,label:`${V.name}.${te.name}`,type:V.type})}return L}),M=t.computed(()=>_.value.fields.input.map(L=>L.name)||[]);function D(L){p.value.delete(e),L||p.value.add(e)}const oe=pD(e);function ie(L,U,I){const V=a(e);if(!V)throw new Error("Node not found when validating field name");const H=yn(V,L,U);return oe(L,I,H==null?void 0:H.id)}return{formData:w,inputOptions:S,inputEdge:v,inputsEdges:T,inputsFieldNames:M,currentNode:_,setName:b,setConfig:E,addField:C,renameFieldByName:x,removeFieldByName:P,setInputs:O,setInput:k,nameValidator:og(e),fieldNameValidator:ie,toggleNodeValid:D}}function dn(e){const{getSchema:n}=Ge();return t.computed(()=>{if(Nt(e))switch(e){case"response":return lD;case"service_request":return aD}try{const l=n().fields[0].config.fields[0].nodes.elements.subschema_definitions[e];if(!l)throw new Error(`Subschema "${e}" not found in the schema.`);return l}catch(o){throw new Error(`Failed to get subschema "${e}": ${o.message}`)}})}const Jn=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=De(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 0?"":f});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function 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"])}}}),gD=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=De(),o=t.useTemplateRef("form"),r=dn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=cn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:h}=Er({validationConfig:{url:Zn(Oo({fieldName:"URL"}),tg("url",{fieldName:"URL"})),timeout:Zn(Cs("integer"),Es(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),g=h("url",()=>l("url")),y=h("timeout",()=>l("timeout"));return(_,w)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(_t,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(Jn,{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(uo,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,name:"url",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(JR,{name:"method",onUpdate:w[0]||(w[0]=E=>t.unref(l)())}),t.createVNode(Dn,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"timeout",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(uo,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=E=>t.unref(l)("ssl_server_name"))}),t.createVNode(xn,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),hD=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=dn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=cn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(_t,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),yD=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=dn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=cn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(_t,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(xn,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),rg={jqlang:"https://jqlang.org/manual/"},_D=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=De(),r=t.useTemplateRef("form"),i=dn("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:h,nameValidator:g,toggleNodeValid:y,fieldNameValidator:_}=cn(e.nodeId,()=>r.value.getInnerData());function w(P,v){u("input",P,v)}function b(P){p("input",P)}function E(P,v){m("input",P,v)}const N=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=Er({validationConfig:{jq:Zn(Oo({fieldName:N}),cD(1,10240,{fieldName:N}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:y}),x=C("jq",()=>s("jq"));return(P,v)=>{const T=t.resolveComponent("KLabel"),O=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(_t,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(Jn,{name:t.unref(a).name,validate:t.unref(g),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(T,{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(uo,{autosize:"",error:t.unref(x).error.value,"error-message":t.unref(x).errorMessage.value,label:t.unref(N),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(x).onBlur,"onUpdate:modelValue":t.unref(x).onUpdate},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(O,{"hide-icon":"",href:t.unref(rg).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(rg).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(_),"field-names":t.unref(h),items:t.unref(c),"onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":E},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),bD=Ae(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(e,{emit:n}){const o=e,r=n,i=t.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=Kr(o,r,!1),{i18n:d}=De(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(N,C="key"){var x;f.value&&(await t.nextTick(),(x=f.value.querySelector(`[data-${C}-input="${N}"]`))==null||x.focus())}function h(){const N=l(),C=a.value.findIndex(({key:x})=>!x);m(C===-1?a.value.length-1:C),u.value=N}function g(N){var C;N.id===((C=u.value)==null?void 0:C.id)&&(u.value=null),s(N.id),N.key.trim()!==""&&r("remove:field",N.key)}function y(N){p=N.key}function _(N){var C;if(b(N)){N.key=p,delete i.value[N.id];return}if(N.id===((C=u.value)==null?void 0:C.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,C){var P;if(C.id===((P=u.value)==null?void 0:P.id))return;const x=N.target.value.trim();r("change:value",C.key,x)}function b(N){delete i.value[N.id];const C=o.fieldNameValidator("output",p,N.key);if(C)return i.value[N.id]=C,C}function E(N){b(N)}return t.watchEffect(()=>{u.value&&!a.value.some(N=>N.id===u.value.id)&&a.value.push(u.value)}),(N,C)=>{const x=t.resolveComponent("KAlert"),P=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton"),T=t.resolveComponent("KInput"),O=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(x,{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(P,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(k,F)=>(t.openBlock(),t.createBlock(O,{key:k.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${F}`},{actions:t.withCtx(()=>[t.createVNode(v,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${F}`,icon:"",onClick:S=>g(k)},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(T,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${F}`,modelValue:k.key,"onUpdate:modelValue":[S=>k.key=S,S=>b(k)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":F,"data-testid":`ff-key-${t.unref(c).path.value}.${F}`,error:!!i.value[k.id],"error-message":i.value[k.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:S=>E(k),onChange:S=>_(k),onFocus:S=>y(k)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(T,{modelValue:k.value,"onUpdate:modelValue":S=>k.value=S,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${F}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:S=>w(S,k)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!u.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.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 wD(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 ta(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 kD(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 CD=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=Ye(),{fieldNameValidator:c}=cn(e.nodeId),d=dn("static"),f=og(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(E=>E.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const h=t.computed(()=>{var v;if(!u.value)return{};const b=((v=u.value.config)==null?void 0:v.values)??{},E={},N=o(u.value.id).map(T=>T.sourceField).filter(Boolean).map(T=>_n(u.value,"output",T)).map(T=>T==null?void 0:T.name).filter(Boolean),C=u.value.fields.output.map(T=>T.name),x=Object.keys(b);return new Set([...x,...N,...C]).forEach(T=>{if(T in b){E[T]=b[T];return}E[T]=""}),{name:u.value.name,values:wD(E)}});function g(b,E){if(!u.value)throw new Error("No selected node");const N=E!==void 0;if(r(e.nodeId,"output",b,!N),N){const C={values:ta({...h.value.values,[b]:E})};l(e.nodeId,C)}}function y(b,E){if(!u.value)throw new Error("No selected node");const N=yn(u.value,"output",b);if(!N)throw new Error("No field found to rename");const C={values:ta(kD(h.value.values??{},b,E))};l(e.nodeId,C,!1),i(e.nodeId,N.id,E)}function _(b){var C;if(!u.value)throw new Error("No selected node");const E=yn(u.value,"output",b);if(!E)throw new Error("No field found to delete");a((C=u.value)==null?void 0:C.id,E.id,!0,!1);const N={values:ta({...h.value.values})};delete N.values[b],l(e.nodeId,N)}function w(b,E){if(!u.value)throw new Error("No selected node");const N={...h.value.values};N[b]=E;const C={values:ta(N)};l(e.nodeId,C)}return(b,E)=>(t.openBlock(),t.createBlock(_t,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>{var N;return[t.createVNode(Jn,{name:((N=u.value)==null?void 0:N.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(bD,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":g,"onChange:value":w,"onRemove:field":_,"onRename:field":y},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),ED={class:"dk-kong-property-item"},ND={class:"property-type"},xD={class:"property-badges"},SD=Ae(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=De(),r=e,i=n,{formData:a}=Ge(),l=t.ref(br(a.property)),s=t.computed(()=>wr(a.property)),c=t.ref(os(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(Yn).map(([m])=>{var y;const h=wr(m)?(y=a.property)==null?void 0:y.startsWith(m.replace(To,"")):a.property===m;return{label:h&&c.value?m.replace(To,c.value):m,value:m,selected:h}}));function u(m){const h=ji.find(g=>{var y;return(y=a.property)==null?void 0:y.startsWith(g)});h&&(a.property=h+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==br(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=br(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=os(m),l.value=br(m)}),(m,h)=>{const g=t.resolveComponent("KBadge"),y=t.resolveComponent("KSelect"),_=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(y,{key:d.value,"enable-filtering":"",error:!e.validators.property.isValid.value,help:e.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:h[0]||(h[0]=w=>e.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",ED,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",ND,t.toDisplayString(t.unref(Yn)[w.value].dataType),1)]),t.createElementVNode("div",xD,[t.unref(Yn)[w.value].readable?(t.openBlock(),t.createBlock(g,{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(Yn)[w.value].writable?(t.openBlock(),t.createBlock(g,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(_,{key:0,"model-value":c.value,"onUpdate:modelValue":[h[1]||(h[1]=w=>c.value=w),u],error:!e.validators.key.isValid.value,"error-message":e.validators.key.error.value,label:"key",required:"",onBlur:h[2]||(h[2]=w=>e.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),vD=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=Ye(),a=dn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,fieldNameValidator:g}=cn(e.nodeId,()=>n.value.getInnerData()),y=t.computed(()=>is(l.value.property));function _(b){var N;const E=(N=o.value)==null?void 0:N.id;if(!E)throw new Error("Expected selectedNode to be defined");rs(b)||i(E,!1),is(b)||r(E,!1),c()}const{fields:w}=Er({validationConfig:()=>({property:Oo({fieldName:"Property"}),key:wr(l.value.property)?Oo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:os(l.value.property)}),toggleNodeValid:h});return(b,E)=>(t.openBlock(),t.createBlock(_t,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(Jn,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(Tt,{name:"content_type",onUpdate:E[0]||(E[0]=N=>t.unref(c)())}),t.createVNode(SD,{validators:t.unref(w),"onUpdate:modelValue":_,"onUpdate:propertyKey":E[1]||(E[1]=N=>t.unref(c)("property-key"))},null,8,["validators"]),y.value?(t.openBlock(),t.createBlock(xn,{key:0,"field-name-validator":t.unref(g),"field-names":t.unref(p),items:t.unref(d),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),AD=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=dn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=cn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:m}=Er({validationConfig:{status:Zn(Cs("integer",{fieldName:"Status"}),Es(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),h=m("status",()=>a("status"));return(g,y)=>(t.openBlock(),t.createBlock(_t,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Jn,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Dn,{error:t.unref(h).error.value,"error-message":t.unref(h).errorMessage.value,name:"status",onBlur:t.unref(h).onBlur,"onUpdate:modelValue":t.unref(h).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Ur,{name:"warn_headers_sent","onUpdate:modelValue":y[0]||(y[0]=_=>t.unref(a)())}),t.createVNode(xn,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function ID(e){const n=cn(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=Ye(),{i18n:{t:l}}=De(),s=zm(),c=Ga(),d=t.computed(()=>{var b;const _={...n.formData.value},w=Qo(((b=n.currentNode.value)==null?void 0:b.type)||"branch");for(const E of w)(!(E in _)||_[E]==null)&&(_[E]=[]);return _});function f(_,w,b){const E=r(_),N=r(b),C=E?`${E.name}.${w}`:`${_}.${w}`,x=N?N.name:b;return[C,x]}function u(_){return(_==null?[]:Array.isArray(_)?_:[_]).filter(w=>Du(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 E=[],N=[],C=[];for(const x of b){const P=i.findMembership(x);if(!P||P.ownerId===_&&P.branch===w)continue;const v=i.getMembers(P.ownerId,P.branch).filter(T=>T!==x);C.push({ownerId:P.ownerId,branch:P.branch,members:v}),E.push(f(_,w,x)),N.push(f(P.ownerId,P.branch,x))}return{conflictUpdates:C,addedAssignments:E,removedAssignments:N}}function h(_,w,b,E){let N=!1;for(const C of E)N=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||N;return N=i.setMembers(_,w,b,{commit:!1})||N,N}async function g(_,w){const b=n.currentNode.value,E=u(w),N=i.prepareMembers(b.id,_,E),C=i.getMembers(b.id,_);if(ml(C,N))return!0;const x=N.filter(k=>!C.includes(k));for(const k of x)if(p(b.id,k))return!1;const{conflictUpdates:P,addedAssignments:v,removedAssignments:T}=m(b.id,_,x);return P.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),v,T)?!1:(h(b.id,_,N,P)&&a(),!0)}const y=t.computed(()=>{const _=n.currentNode.value;return!_||!i?[]:o.value.nodes.filter(w=>w.id!==e&&!Nt(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:y,updateBranchMembers:g}}const TD=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=De(),o=dn("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}=ID(e.nodeId);async function h(g,y){await m(g,y)||(r.value+=1)}return(g,y)=>(t.openBlock(),t.createBlock(_t,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Jn,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Be.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(Tt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:y[0]||(y[0]=_=>h("then",_))},{"item-label":t.withCtx(_=>[t.createVNode(ea,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode(Tt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:y[1]||(y[1]=_=>h("else",_))},{"item-label":t.withCtx(_=>[t.createVNode(ea,{item:_},null,8,["item"])]),_:1},8,["items"]),t.createVNode(xn,{"field-name-validator":t.unref(p),"field-names":t.unref(u),items:t.unref(l),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),PD=t.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=dn("cache"),{i18n:{t:r}}=De(),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=cn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:h}=Er({validationConfig:()=>({ttl:Zn(Cs("integer",{fieldName:"TTL"}),Es(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),g=h("ttl",()=>l("ttl"));return(y,_)=>(t.openBlock(),t.createBlock(_t,{ref:"form",data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Jn,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Be.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(Ur,{name:"bypass_on_error","onUpdate:modelValue":_[0]||(_[0]=w=>t.unref(l)("bypass_on_error"))}),t.createVNode(Dn,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,name:"ttl",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(xn,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),OD=["innerHTML"],$D=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${Yp}px`},offsetTop:{default:`${lP}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=Ye(),o=t.computed(()=>e.nodeId&&n(e.nodeId)),r=t.computed(()=>{var i;switch((i=o.value)==null?void 0:i.type){case"call":return gD;case"service_request":return hD;case"response":return yD;case"jq":return _D;case"static":return CD;case"property":return vD;case"exit":return AD;case"branch":return TD;case"cache":return PD;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Be.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(aP),onClose:a[0]||(a[0]=l=>i.$emit("close"))},t.createSlots({default:t.withCtx(()=>[o.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(Pt)(o.value.type)},null,8,OD)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:e.nodeId,class:"dk-node-properties-panel-form","node-id":e.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Xm,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),BD=Ae($D,[["__scopeId","data-v-bad25d77"]]),VD={class:"dk-editor-content"},RD={class:"main"},DD=Ae(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=Ye();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",VD,[t.createVNode(t.unref(ZR)),t.createElementVNode("div",RD,[t.createVNode(gR)]),t.createVNode(BD,{"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"]]),MD={key:0,class:"dk-editor-modal"},LD=Ae(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({v8758bbfe:`${t.unref(iP)}px`,v30e03211:`${t.unref(Hp)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=Ye();CV(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=je.useScrollLock(document);t.watch(n,s=>{a.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(t.openBlock(),t.createElementBlock("div",MD,[t.createVNode(cR,{class:"nav",onBack:l}),t.createVNode(DD,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(iR,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),FD={class:"dk-flow-editor"},UD={class:"flow-panels-container"},KD={class:"overlay"},jD=Ae(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Ze.createI18n("en-us",it),{formData:r}=Ge(),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}=Yu(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),E1({enabled:l}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",FD,[t.createElementVNode("div",UD,[t.createVNode(ks,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",KD,[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(ve.ExpandIcon))]),_:1})])]),t.createVNode(LD,{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 GD(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 qD(e){const n=e.path[2];return n==="output"||n==="outputs"}function ig(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function ag(e,n){const o=e.input!==void 0&&e.input!==null,r=ig(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=ig(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 lg(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 GD(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}),qD(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 zD=ee.z.enum(Pu),HD=ee.z.enum(_o),sg=e=>_o.includes(e),Ns=ee.z.enum(Ou),cg=Ns.options;ee.z.union([Ns,zD]);const YD=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,dg=ee.z.string().min(1).max(255).regex(YD,"Invalid node name (snake_case / kebab-case only)").refine(e=>!sg(e),"Name clashes with reserved implicit node").brand(),na=ee.z.union([HD,dg]),WD=ee.z.string().min(1).brand(),XD=["then","else"];ee.z.enum(XD);const ut=ee.z.string().refine(e=>{if(na.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return na.safeParse(o).success&&WD.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),ug=ee.z.enum($u),Qn=ee.z.object({type:ee.z.string(),name:dg,input:ut,inputs:ee.z.record(ee.z.string(),ut).nullish(),output:ut,outputs:ee.z.record(ee.z.string(),ut).nullish()}).loose().superRefine((e,n)=>{ag(e,n)}),ZD=ee.z.object({type:ee.z.string(),name:ee.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}),cg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${cg.join(", ")}`})}),JD=Qn.safeExtend({type:ee.z.literal("call"),method:ug.nullish(),ssl_server_name:ee.z.string().min(1).nullish(),timeout:ee.z.number().int().min(0).max(2147483646).nullish(),url:ee.z.url(),inputs:ee.z.object({body:ut,headers:ut,query:ut}).partial().nullish(),outputs:ee.z.object({body:ut,headers:ut,status:ut}).partial().nullish()}).strict(),QD=Qn.safeExtend({type:ee.z.literal("exit"),status:ee.z.number().int().min(200).max(599).nullish(),warn_headers_sent:ee.z.boolean().nullish(),output:ee.z.never().optional(),outputs:ee.z.never().optional()}).strict(),eM=Qn.safeExtend({type:ee.z.literal("jq"),jq:ee.z.string().min(1).max(10240),outputs:ee.z.never().optional()}).strict(),tM=Qn.safeExtend({type:ee.z.literal("property"),content_type:ee.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:ee.z.string().min(1),inputs:ee.z.never().optional(),outputs:ee.z.never().optional()}).strict(),nM=Qn.safeExtend({type:ee.z.literal("static"),values:ee.z.record(ee.z.string(),ee.z.unknown()),input:ee.z.never().optional(),inputs:ee.z.never().optional()}).strict(),oM=Qn.safeExtend({type:ee.z.literal("cache"),bypass_on_error:ee.z.boolean().nullish(),inputs:ee.z.object({data:ut,key:ut,ttl:ut}).partial().nullish(),outputs:ee.z.object({data:ut,hit:ut,miss:ut,stored:ut}).partial().nullish(),ttl:ee.z.number().int().gt(0).nullish()}).strict(),rM=Qn.safeExtend({type:ee.z.literal("branch"),then:ee.z.array(na).nullish(),else:ee.z.array(na).nullish()}).strict(),iM=ZD.pipe(ee.z.discriminatedUnion("type",[JD,QD,eM,tM,nM,oM,rM])),aM=ee.z.record(ee.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),ee.z.string().min(1).max(4095)),lM=ee.z.object({dictionary_name:ee.z.string().default("kong_db_cache")}),sM=ee.z.object({host:ee.z.string().default("127.0.0.1"),port:ee.z.number().int().min(0).max(65535).default(6379)}),cM=ee.z.object({ip:ee.z.string().default("127.0.0.1"),port:ee.z.number().int().min(0).max(65535).default(6379)}),dM=ee.z.object({host:ee.z.string().optional().default("127.0.0.1"),port:ee.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:ee.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:ee.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:ee.z.number().int().min(0).max(2147483646).default(2e3),username:ee.z.string().optional(),password:ee.z.string().optional(),sentinel_username:ee.z.string().optional(),sentinel_password:ee.z.string().optional(),database:ee.z.number().int().optional().default(0),keepalive_pool_size:ee.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:ee.z.number().int().min(0).max(2147483646).optional(),sentinel_master:ee.z.string().optional(),sentinel_role:ee.z.enum(["master","slave","any"]).optional(),sentinel_nodes:ee.z.array(sM).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:ee.z.array(cM).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:ee.z.boolean().default(!1).optional(),ssl_verify:ee.z.boolean().default(!1).optional(),server_name:ee.z.string().optional(),cluster_max_redirections:ee.z.number().int().default(5).optional(),connection_is_proxied:ee.z.boolean().default(!1).optional(),timeout:ee.z.number().int().optional(),sentinel_addresses:ee.z.array(ee.z.string()).min(1).optional(),cluster_addresses:ee.z.array(ee.z.string()).min(1).optional()}).superRefine((e,n)=>{var c;const o=e.host!==void 0&&e.host!==null,r=e.port!==void 0&&e.port!==null;(o&&!r||!o&&r)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,l=!!((c=e.sentinel_nodes)!=null&&c.length),s=[i,a,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!o&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),uM=ee.z.object({strategy:ee.z.enum(["memory","redis"]).optional(),memory:lM,redis:dM}),fM=ee.z.object({vault:aM.nullish(),cache:uM.nullish()});ee.z.array(ee.z.object({id:ee.z.string()})),ee.z.object({nodes:ee.z.array(iM).min(1,"At least one node is required"),debug:ee.z.boolean().nullish(),resources:fM.nullish()}).strict().superRefine((e,n)=>{lg(e,_o,n)});const fg=Ns.options,xs=ee.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!sg(e),"Node name conflicts with reserved implicit node"),ft=ee.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"),eo=ee.z.object({type:ee.z.string(),name:xs,input:ft.nullish(),inputs:ee.z.record(ee.z.string(),ft.nullish()).nullish(),output:ft.nullish(),outputs:ee.z.record(ee.z.string(),ft.nullish()).nullish()}).loose().superRefine((e,n)=>{ag(e,n)}),pM=ee.z.object({type:ee.z.string(),name:ee.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}),fg.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${fg.join(", ")}`})}),mM=eo.safeExtend({type:ee.z.literal("call"),method:ug.nullish(),ssl_server_name:ee.z.string().nullish(),timeout:ee.z.union([ee.z.number(),ee.z.string()]).nullish(),url:ee.z.string().nullish(),inputs:ee.z.object({body:ft.nullish(),headers:ft.nullish(),query:ft.nullish()}).partial().nullish(),outputs:ee.z.object({body:ft.nullish(),headers:ft.nullish(),status:ft.nullish()}).partial().nullish()}).strict(),gM=eo.safeExtend({type:ee.z.literal("exit"),status:ee.z.union([ee.z.number(),ee.z.string()]).nullish(),warn_headers_sent:ee.z.boolean().nullish(),output:ee.z.never().optional(),outputs:ee.z.never().optional()}).strict(),hM=eo.safeExtend({type:ee.z.literal("jq"),jq:ee.z.string().nullish(),outputs:ee.z.never().optional()}).strict(),yM=eo.safeExtend({type:ee.z.literal("property"),content_type:ee.z.string().nullish(),property:ee.z.string().nullish(),inputs:ee.z.never().optional(),outputs:ee.z.never().optional()}).strict(),_M=eo.safeExtend({type:ee.z.literal("static"),values:ee.z.record(ee.z.string(),ee.z.unknown()).nullish(),input:ee.z.never().optional(),inputs:ee.z.never().optional()}).strict(),bM=eo.safeExtend({type:ee.z.literal("cache"),bypass_on_error:ee.z.boolean().nullish(),inputs:ee.z.object({data:ft.nullish(),key:ft.nullish(),ttl:ft.nullish()}).partial().nullish(),outputs:ee.z.object({data:ft.nullish(),hit:ft.nullish(),miss:ft.nullish(),stored:ft.nullish()}).partial().nullish(),ttl:ee.z.union([ee.z.number(),ee.z.string()]).nullish()}).strict(),wM=eo.safeExtend({type:ee.z.literal("branch"),then:ee.z.array(xs).nullish(),else:ee.z.array(xs).nullish()}).strict(),kM=pM.pipe(ee.z.discriminatedUnion("type",[mM,gM,hM,yM,_M,bM,wM])),CM=ee.z.record(ee.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),ee.z.string().min(1).max(4095)),EM=ee.z.object({dictionary_name:ee.z.string().default("kong_db_cache")}),NM=ee.z.object(),xM=ee.z.object({strategy:ee.z.enum(["memory","redis"]).optional(),memory:EM.optional(),redis:NM.optional()}),SM=ee.z.object({vault:CM.nullish(),cache:xM.nullish()}),vM=ee.z.object({nodes:ee.z.array(kM).nullish(),debug:ee.z.boolean().nullish(),resources:SM.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||lg(e,_o,n)}).nullish(),AM={class:"dk-option-label"},IM={class:"dk-option-label"},TM=["innerHTML"],PM=Ae(t.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(e){const{t:n}=Ze.createI18n("en-us",it),o=e,r=t.inject(fn.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(fn.DATAKIT_M2,!1),a=t.ref(!1);t.onMounted(()=>{a.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:l}=ri(),s=t.computed(()=>r&&f.value?l.value:"code"),c=t.computed(()=>i?s.value==="flow"?"form":"code":"form"),d={flow:ve.DesignIcon,code:ve.CodeblockIcon},f=t.ref(!0),u=t.computed(()=>{const b=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return b[0].disabled=!f.value,b}),p=t.computed(()=>{switch(s.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(()=>n(i?"plugins.free-form.datakit.plugin_config.title":"plugins.form.sections.plugin_config.title"));t.watch(s,()=>{var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})});function h(){var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})}function g(){h()}function y(b){h();let E=b;i&&(E=b==null?void 0:b.config);const{success:N}=vM.safeParse(E);let C=N;!i&&C&&(C=!_(b)),f.value=C}function _(b){var N,C;return!!((N=b==null?void 0:b.resources)!=null&&N.vault||((C=b==null?void 0:b.nodes)==null?void 0:C.some(x=>x.type==="branch"||x.type==="cache")))}function w(b){var E;f.value=!1,(E=o.onValidityChange)==null||E.call(o,{model:"config",valid:!1,error:b})}return(b,E)=>{const N=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(i)?(t.openBlock(),t.createBlock(t.Teleport,{key:0,disabled:!a.value,to:"#plugin-form-page-actions"},[t.createVNode(t.unref(Be.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":s.value,options:u.value,"onUpdate:modelValue":E[0]||(E[0]=C=>l.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(N,{disabled:f.value||C.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",AM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])],8,["disabled"])):t.createCommentVNode("",!0),t.createVNode(xd,t.mergeProps(o,{class:"dk-form","editor-mode":c.value}),t.createSlots({"code-editor":t.withCtx(()=>[t.createVNode(Tu,{class:"code-editor",editing:o.isEditing,onChange:y,onError:w},null,8,["editing"])]),"plugin-config-title":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(m.value),1)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:p.value},null,8,TM)]),default:t.withCtx(()=>[s.value==="flow"?(t.openBlock(),t.createBlock(jD,{key:0,"is-editing":o.isEditing,onChange:g},null,8,["is-editing"])):s.value==="code"&&!t.unref(i)?(t.openBlock(),t.createBlock(Tu,{key:1,class:"code-editor",editing:o.isEditing,onChange:y,onError:w},null,8,["editing"])):t.createCommentVNode("",!0)]),_:2},[t.unref(r)&&!t.unref(i)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Be.KSegmentedControl),{"model-value":s.value,options:u.value,"onUpdate:modelValue":E[1]||(E[1]=C=>l.value=C)},{"option-label":t.withCtx(({option:C})=>[t.createVNode(N,{disabled:f.value||C.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",IM,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(d[C.value]))),t.createTextVNode(" "+t.toDisplayString(C.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])]),key:"0"}:void 0]),1040,["editor-mode"])],64)}}}),[["__scopeId","data-v-35f07a89"]]),pg=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))},mg=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},OM=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ke.useI18n(),l={prepareFormData:c=>{var f,u;const d=so(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{mg(p.headers),mg(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=so(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{pg(p.headers),pg(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(_t,{config:l,data:e.data,schema:e.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(kt,{"as-child":"",name:"config","reset-label-path":"reset"},{default_acl:t.withCtx(({name:f})=>[t.createVNode(qo,{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(qo,{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(Gr)]),_:1},8,["data","schema"]))}}),$M=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(Ue.AUTOFILL_SLOT,o==null?void 0:o[Ue.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ua,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(OM,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),BM=Ae(t.defineComponent({__name:"ConfigForm",setup(e){const{getSchema:n,createComputedRenderRules:o}=Ge(),r=o("config"),i=t.computed(()=>{var g;const a=[],l=[],s=new Set,d=n().fields.find(y=>Object.keys(y)[0]==="config");if(!d||!("config"in d))return{defaultVisible:a,advanced:l};const f=d.config;f.entity_checks&&f.entity_checks.forEach(y=>{var w,b;let _;"at_least_one_of"in y?_=y.at_least_one_of:"conditional"in y&&((w=n(Je("config",y.conditional.if_field)))!=null&&w.required)&&y.conditional.then_match.required?_=[y.conditional.if_field,y.conditional.then_field]:"conditional_at_least_one_of"in y&&((b=n(Je("config",y.conditional_at_least_one_of.if_field)))!=null&&b.required)&&(_=[y.conditional_at_least_one_of.if_field,...y.conditional_at_least_one_of.then_at_least_one_of]),_==null||_.forEach(E=>s.add(E))});const u=((g=r.value)==null?void 0:g.bundles)??[],p=new Map;for(const y of u)for(let _=1;_<y.length;_++)p.set(y[_],y[_-1]);const m=y=>{const _=p.get(y);return _?m(_):y},h=new Map;for(const y of f.fields){const _=Object.keys(y)[0];h.set(_,m(_))}for(const y of f.fields){const _=Object.keys(y)[0];if(h.get(_)!==_)continue;let b;y[_].required||s.has(_)?b=a:b=l,b.push(_)}for(const y of f.fields){const _=Object.keys(y)[0],w=h.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(kt,{"as-child":"",name:"config",omit:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(Gr,{class:"ff-advanced-fields","hide-general-fields":""},{default:t.withCtx(()=>[t.createVNode(kt,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1})],64))}}),[["__scopeId","data-v-f5897284"]]),gg=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:$M,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(Ue.AUTOFILL_SLOT,o==null?void 0:o[Ue.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(xd,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(()=>[t.createVNode(BM)]),_:1},16))}}),DatakitForm:PM,RequestCalloutForm:Pk,ServiceProtectionForm:dC},Symbol.toStringTag,{value:"Module"}));function VM(e,n){const o=St[e];if(!o||!o.fieldRules)return n;const r=RM(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 RM(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 DM={class:"kong-ui-entities-plugin-form"},MM={key:1,class:"entity-form"},LM={class:"plugin-config-empty-state"},FM=Ae(t.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1,default:void 0}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var ue,ge;const o=Object.keys(Ue.sharedForms),r=Object.keys(gg);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,a=e,{axiosInstance:l}=ye.useAxios((ue=a.config)==null?void 0:ue.axiosRequestConfig),{parseSchema:s}=Ke.useSchemas({entityId:((ge=a.entityMap.focusedEntity)==null?void 0:ge.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}=Ke.usePluginHelpers(),m=Ke.useExperimentalFreeForms(),{objectsAreEqual:h}=ye.useHelpers(),{i18n:{t:g}}=De(),y=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,q)=>{let ae=`${a.config.apiBaseUrl}${Xe.form[a.config.app].entityGetOne}`;return ae=y(ae),ae=ae.replace(/{entity}/gi,re),ae=ae.replace(/{id}/gi,q),ae},w=re=>{let q=`${a.config.apiBaseUrl}${Xe.form[a.config.app].entityGetAll}`;return q=y(q),q=q.replace(/{entity}/gi,re),q},b=(re,q,ae)=>{const ce=_(re,q);return l.get(ce,ae)},E=(re,q)=>{const ae=w(re);return a.config.app==="konnect"?l.get(ae).then(ce=>{const{data:{data:$}}=ce;if(delete q.size,delete q.offset,$.length&&Object.keys(q).length===1){const A=Object.keys(q)[0],B=$.filter(R=>R[A]?!!R[A].toLowerCase().includes(q[A].toLowerCase()):!1);ce.data.data=B}return ce}):l.get(ae,{params:q})},N=(re,q,ae)=>{const ce=w(re);if(a.config.app==="konnect"){const{size:$,offset:A,...B}=q;if(re==="consumer_groups")return l.get(ce,{params:{size:1e3},signal:ae}).then(ne=>{const{data:{data:X}}=ne;if(X.length&&Object.keys(B).length===1){const Y=Object.keys(B)[0],K=X.filter(le=>le[Y]?!!le[Y].toLowerCase().includes(B[Y].toLowerCase()):!1);ne.data.data=K}return ne});const R={size:$,offset:A};for(const ne of Object.keys(B))R.filter={[ne]:{contains:B[ne]}};return l.get(ce,{params:R,signal:ae})}return l.get(ce,{params:q,signal:ae})},C=(re,q=50)=>{const ae=w(re);return l.get(ae,{params:{size:q}})};t.provide(Ue.FORMS_API_KEY,{getOne:b,getAll:E,getAllV2:N,peek:C}),t.provide(Ue.FORMS_CONFIG,a.config);const x=t.ref(""),P=t.ref(""),v=t.ref(null),T=t.ref({}),O=t.reactive({}),k=t.reactive({}),F=t.computed(()=>{var re;return(re=v.value)==null?void 0:re.options}),S=t.computed(()=>VM(k.name,a.rawSchema)),M=t.ref(!1),D=t.ref(),oe=(re,q)=>{M.value=re??"",D.value=q},ie=re=>{var q;(q=D.value)==null||q.call(D,re),M.value=!1},L=()=>{var B,R;const re={...a.schema},q=k,ae=O,ce=Object.keys(q),$={};if(!u(T.value))for(let ne=0;ne<((R=(B=T.value)==null?void 0:B.fields)==null?void 0:R.length);ne++)re[T.value.fields[ne].model]=T.value.fields[ne];Ue.customFields.forEach(ne=>{re[ne]&&(re[ne].fields.forEach(X=>{X.fields&&X.fields.forEach(Y=>{re[Y.model]=Y}),X.model&&(re[X.model]=X)}),delete re[ne])}),ce.forEach(ne=>{var _e;if(!re[ne]){ne==="partials"&&($[ne]=q[ne]);return}const X=re[ne];let Y=q[ne];const K=ae[ne],le=Array.isArray(Y)?"array":typeof Y,G=X?X.valueType:null,z=X?X.valueArrayType:null,J=X?X.transform:null;if(Y==null&&K==null&&!X.submitWhenNull)return;if(X){if(G&&le!==G)switch(G){case"array":le==="string"&&Y.length&&(Y=Y.split(",").map(Q=>{if(Q=Q.trim(),z==="string")return String(Q);if(z==="number")return Number(Q);if(z==="boolean"){if(typeof Q=="string")return Q.toLowerCase()==="true"||Q==="1";if(typeof Q=="number")return Q===1}return Q})),(!Y||!Y.length)&&(Y=X.submitWhenNull?null:[]);break;case"number":Y=Number(Y);break;case"boolean":le==="string"&&(Y=Y.toLowerCase()==="true"||Y==="1"),le==="number"&&(Y=Y===1);break;case"string":Y=Y==null?"":String(Y);break}else G==="array"&&(!Y||!Y.length?Y=X.submitWhenNull?null:[]:((_e=X.inputAttributes)==null?void 0:_e.type)==="number"&&(Y=Y.map(Q=>Number(Q))));if(X.type==="array"&&X.nestedFields){const Q=he=>{Object.keys(he).forEach(Ce=>{he[Ce]&&typeof he[Ce]=="object"&&!Array.isArray(he[Ce])&&he[Ce]!==null?Q(he[Ce]):(he[Ce]===void 0||he[Ce]===null||typeof he[Ce]=="number"&&isNaN(he[Ce])||typeof he[Ce]=="string"&&he[Ce].trim().length===0)&&delete he[Ce]})};Y&&typeof Y=="object"&&Q(Y)}X.type==="object-advanced"&&X.fields&&Y!==null&&(Object.entries(Y).length===0?Y=null:Object.keys(Y).forEach(Q=>{Array.isArray(Y[Q])||(Y[Q]=Y[Q].split(","))}))}let de=c(ne);if(X.fieldNameHasDashes){const[Q,...he]=de.split(".").reverse();de=[Q.replace(/_/g,"-"),...he].reverse().join(".")}if(G==="object-expand"){let Q;[de,Q]=de.split(".");let he={};$[de]&&(he=$[de]),he[Q]=Y,Y=he}K!==void 0&&Y===""&&Y!==K?$[de]=G==="object"?{}:null:X.type==="checklist"&&Y===""?$[de]=[]:Y!==""&&($[de]=Y),$[de]=J?J(Y):$[de],p(de,$)});const A=d($);return P.value&&Object.assign(A,te.value),A},U=(re,q={})=>{f(k,q,re,a.editing),i("model-updated",{model:k,originalModel:O,data:L()})},I=(re,q)=>{var $;const ae={[q]:re};typeof(($=a.schema[q])==null?void 0:$.modelTransformer)=="function"&&(ae[q]=a.schema[q].modelTransformer(re));const ce=Object.assign({},k,ae);Object.assign(k,ce),i("model-updated",{model:k,originalModel:O,data:L()})},V=re=>{i("validity-change",re)},H=(re,q)=>{Object.keys(re).forEach(ae=>{var R,ne;let ce=q?`${q}-${ae}`:ae,$=a.schema[ce];if(!$){const X=q?`${q}-${ae.replace(/-/g,"_")}`:ae.replace(/-/g,"_");(R=a.schema[X])!=null&&R.fieldNameHasDashes&&(ce=X,$=a.schema[ce]),q&&((ne=a.schema[q])==null?void 0:ne.keyFromObject)===ae&&(ce=q,$=a.schema[ce])}const A=re[ae],B=typeof A;if($&&$.type==="object-advanced"&&!A){k[ce]={},O[ce]={};return}if(Array.isArray(A)){k[ce]=JSON.parse(JSON.stringify(A)),O[ce]=JSON.parse(JSON.stringify(A));return}if(B==="object"&&A&&!A.length)return H(A,ce);if(B==="object"&&A&&A.length&&$.type==="input"){k[ce]=A.join(", "),O[ce]=A.join(", ");return}k[ce]=A,O[ce]=A}),i("model-updated",{model:k,originalModel:O,data:L()})},te=t.shallowRef(a.record),W=re=>{te.value=re,i("model-updated",{model:{...k,...re},originalModel:O,data:L()})},j=t.ref(!0),se=()=>{var re;if(a.record&&a.schema&&(H({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)&&H({consumer_id:a.record.consumer_id||a.record.consumer}),H(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)&&H({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&&U("redis",{partials:a.record.partials}),P.value?W(a.record):H(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const q={};for(const ae in a.entityMap){const ce=a.entityMap[ae].id,$=a.entityMap[ae].idField,A=$==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify($).replace("_","-"));Object.prototype.hasOwnProperty.call(k,A)&&(q[A]=ce)}H(q)}if((re=a.entityMap.consumer)!=null&&re.id&&a.schema&&a.credential){const q={};Object.prototype.hasOwnProperty.call(k,"consumer")&&(q.consumer=a.entityMap.consumer.id),H(q)}j.value=!1};return t.watch(j,re=>{i("loading",re)}),t.watch(()=>a.schema,(re,q)=>{var ce,$;if(h(re||{},q||{}))return;const ae=s(re,void 0,void 0,a.engine);Object.assign(k,ae.model),T.value={fields:($=(ce=T.value)==null?void 0:ce.fields)==null?void 0:$.map(A=>({...A,disabled:A.disabled||!1}))},Object.assign(O,JSON.parse(JSON.stringify(ae.model))),P.value=a.engine?a.engine==="vfg"?void 0:Pa(ae.model.name,m)||"CommonForm":Pa(ae.model.name,m),x.value=Ue.getSharedFormName(ae.model.name),se()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var re,q;v.value=s(a.schema,void 0,void 0,a.engine),Object.assign(k,((re=v.value)==null?void 0:re.model)||{}),T.value=((q=v.value)==null?void 0:q.schema)||{},se()}),(re,q)=>{var ce,$;const ae=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",DM,[j.value?(t.openBlock(),t.createBlock(ae,{key:0,type:"form"})):k.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",MM,[P.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(gg[P.value]),{key:0,"form-model":k,"form-options":F.value,"form-schema":T.value,"is-editing":e.editing,model:e.record,"on-form-change":W,"on-model-updated":I,"on-validity-change":V,"plugin-name":k.name,"render-rules":(ce=t.unref(St)[k.name])==null?void 0:ce.freeformRenderRules,schema:S.value,onGlobalAction:q[0]||(q[0]=(A,B)=>re.$emit("globalAction",A,B))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ue.AUTOFILL_SLOT_NAME),fn:t.withCtx(A=>[A.schema.referenceable?(t.openBlock(),t.createBlock(t.unref($o.VaultSecretPickerProvider),t.mergeProps({key:0},A,{onOpen:oe}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","plugin-name","render-rules","schema"])):x.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Ue.sharedForms)[x.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":k,"form-options":F.value,"form-schema":T.value,"is-editing":e.editing,"on-model-updated":I,"on-partial-toggled":U,"show-new-partial-modal":A=>re.$emit("showNewPartialModal",A)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ue.AUTOFILL_SLOT_NAME),fn:t.withCtx(A=>[A.schema.referenceable?(t.openBlock(),t.createBlock(t.unref($o.VaultSecretPickerProvider),t.mergeProps({key:0},A,{onOpen:oe}),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(Ue.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:k,options:F.value,schema:T.value,onModelUpdated:I,onPartialToggled:U,onRefreshModel:L,onShowNewPartialModal:q[1]||(q[1]=A=>re.$emit("showNewPartialModal",A))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",LM,t.toDisplayString(t.unref(g)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[($=t.unref(St)[k.name])!=null&&$.fieldRules&&(a.config.isNewOtelSchema||k.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(B0,{rules:t.unref(St)[k.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Ue.AUTOFILL_SLOT_NAME),fn:t.withCtx(A=>[A.schema.referenceable?(t.openBlock(),t.createBlock(t.unref($o.VaultSecretPickerProvider),t.mergeProps({key:0},A,{onOpen:oe}),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($o.VaultSecretPicker),{config:a.config,setup:M.value,onCancel:q[2]||(q[2]=()=>M.value=!1),onProceed:ie},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-cf91fa41"]]),UM={key:1},KM=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",UM,[t.renderSlot(n.$slots,"default")]))}}),jM={class:"kong-ui-entities-plugin-form-container"},GM={key:0},qM={class:"plugin-form-actions"},zM=Ae(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var Y;const o=n,r=e,i=no.useRouter(),{i18n:{t:a}}=Ke.useI18n(),{customSchemas:l,typedefs:s}=Ke.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ke.usePluginHelpers(),{getMessageFromError:d}=ye.useErrors(),{capitalize:f}=ye.useStringHelpers(),{objectsAreEqual:u}=ye.useHelpers(),{axiosInstance:p}=ye.useAxios((Y=r.config)==null?void 0:Y.axiosRequestConfig),m=t.ref(!1),h=t.computed(()=>!!r.pluginId),g=t.computed(()=>r.pluginId?ye.EntityBaseFormType.Edit:ye.EntityBaseFormType.Create),y=t.ref(void 0),_=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),E=t.ref({}),N=t.ref(),C=t.ref();t.provide(ja,{redisType:N,redisPath:C,isEditing:h.value});const x=t.ref(!1),P=t.reactive({enabled:!0,protocols:[],tags:[]}),v=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),T=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&T.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const O=t.ref(""),k=t.computed(()=>{var le;if(w.value){let G=Xe.form[r.config.app].credential[g.value];return G=G.replace(/{resourceEndpoint}/gi,D.value),G}let K;return r.config.entityType&&r.config.entityId?K=Xe.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):K=Xe.form[r.config.app].edit.all,r.config.app==="konnect"&&((le=St[r.pluginType])!=null&&le.useUIData)?`${K}?__ui_data=true`:K}),F=()=>{m.value=!m.value},S=t.computed(()=>{var de,_e,Q,he,Ce,pe,me,He;const K=r.config.entityType==="consumers"&&r.config.entityId||((_e=(de=b.value)==null?void 0:de.consumer)==null?void 0:_e.id),le=r.config.entityType==="consumer_groups"&&r.config.entityId||((he=(Q=b.value)==null?void 0:Q.consumer_group)==null?void 0:he.id),G=r.config.entityType==="services"&&r.config.entityId||((pe=(Ce=b.value)==null?void 0:Ce.service)==null?void 0:pe.id),z=r.config.entityType==="routes"&&r.config.entityId||((He=(me=b.value)==null?void 0:me.route)==null?void 0:He.id);if(!(K||le||G||z))return{global:{entity:Z.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const J={};return G&&(J.service={entity:Z.PluginScope.SERVICE,entityEndpoint:"services",id:G,idField:Sn.SERVICE}),z&&(J.route={entity:Z.PluginScope.ROUTE,entityEndpoint:"routes",id:z,idField:Sn.ROUTE}),K&&(J.consumer={entity:Z.PluginScope.CONSUMER,entityEndpoint:"consumers",id:K,idField:Sn.CONSUMER}),le&&(J.consumer_group={entity:Z.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:le,idField:Sn.CONSUMER_GROUP}),r.config.entityType&&(J.focusedEntity={entity:Z.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:Sn[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),J}),M=t.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||g.value===ye.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:a("plugins.form.scoping.global.label"),description:a("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:a("plugins.form.fields.protocols.help"),label:a("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:a("plugins.form.fields.instance_name.label"),inputType:"text",help:a("plugins.form.fields.instance_name.help")},tags:s.tags}),D=t.computed(()=>{var G;const K=r.developer?"developers":"consumers",le=((G=ro[r.pluginType])==null?void 0:G.endpoint)||"/plugins";return`${K}/${r.config.entityId}${r.developer?"/credentials":""}${le}`}),oe=K=>{const le=Array.from(new Set(K.map(G=>typeof G)));return le.length>1?"string":le[0]},ie=(K,le,G,z)=>{var Q,he;let J=le&&le.fields||[];const de=l[r.pluginType],_e=(he=(Q=ro[r.pluginType])==null?void 0:Q.schema)==null?void 0:he.fields;return Array.isArray(J)&&(J=J.reduce((Ce,pe)=>{const me=Object.keys(pe)[0];return me.match(/-/g)?Ce[me.replace(/-/g,"_")]={...pe[me],fieldNameHasDashes:!0}:Ce[me]=pe[me],Ce},{})),Object.keys(J).sort().forEach(Ce=>{var st,pt,un,fe,Te,ke,we;const pe=J[Ce];pe.type==="set"&&(pe.type="array");const me=K?`${K}-${Ce}`:`${Ce}`;if((st=de==null?void 0:de.fieldsToDelete)!=null&&st.includes(me)){od(G,me);return}if(Object.prototype.hasOwnProperty.call(pe,"overwrite")||pe.hidden)return;if(pe.type==="table")return ie(me,pe.schema,G);if(pe.fields)return z&&pe.type==="record"?(G[me]={type:"object",model:Ce,schema:{fields:Object.values(ie(me,pe,{},!0))}},G):ie(me,pe,G);if(G[me]={id:me,model:Ce},G[me].type=pe.type==="boolean"?"checkbox":"input",G[me].required=pe.required,G[me].referenceable=pe.referenceable,me.startsWith("config-"))if(!z&&pe.type==="array"&&(O.value=me),z&&O.value&&me.startsWith(O.value)){const be=me.slice(O.value.length+1);G[me].label=be.split("-").map(c).join(".")}else G[me].label=c(me);if((K==="config"||K.startsWith("config-"))&&(pt=J[Ce])!=null&&pt.description&&(G[me].help=Nr.marked.parse(J[Ce].description,{mangle:!1,headerIds:!1})),pe.type==="map"){if(G[me].type="object-advanced",G[me].values=pe.values,pe.values.type==="array"){const{type:be}=pe.values.elements||{};G[me].schema={fields:[{schema:{fields:[{...Me,model:me,valueArrayType:be==="integer"?"number":be||"string",inputAttributes:{...Me.inputAttributes,type:be==="integer"?"number":"text",inputMode:be==="integer"?"numeric":"text"}}]}}]}}else pe.values.fields&&(G[me].schema={fields:[{type:"object",model:"object",schema:{fields:pe.values.fields.map(be=>{const Se=Object.keys(be)[0];return{model:Se,type:"input",label:f(Se),placeholder:Se,inputType:be[Se].type}})}}]});return G}if(pe.enum&&pe.type==="array"&&(G[me].type="checklist",G[me].values=pe.enum,G[me].multi=!0,G[me].multiSelect=!0),pe.one_of&&pe.type!=="array"&&(G[me].type="select",G[me].values=pe.one_of,G[me].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),pe.elements&&pe.type==="array"){const be=pe.elements;if(G[me].referenceable=be.referenceable,G[me].elements=be,["string","integer","number"].includes(be.type)&&!be.one_of){const{id:Se,help:Oe,label:xe,hint:Ve,values:$e,referenceable:Fe,model:Re}=G[me],{inputAttributes:We,...to}=JSON.parse(JSON.stringify(Me));We.type=be.type==="string"?"text":"number",G[me]={id:Se,help:Oe,label:xe,hint:Ve,values:$e,referenceable:Fe,model:Re,inputAttributes:We,...to}}}if(pe.hint&&(G[me].hint=pe.hint),de&&!de.overwriteDefault&&Object.keys(de).forEach(be=>{if(be===me){const{help:Se,label:Oe,hint:xe,values:Ve,referenceable:$e,elements:Fe}=G[me],{help:Re,...We}=de[be];G[me]={help:Se,label:Oe,hint:xe,values:Ve,referenceable:$e,elements:Fe,...We},typeof Re=="string"&&(G[me].help=Nr.marked.parse(Re,{mangle:!1,headerIds:!1}))}}),pe.type==="array"&&((un=pe.elements)==null?void 0:un.type)==="record"&&Array.isArray(pe.elements.fields)){let be={};for(const Oe of pe.elements.fields)be={...be,...Oe};const Se=(ke=(Te=(fe=G[me])==null?void 0:fe.items)==null?void 0:Te.schema)==null?void 0:ke.fields;if(Array.isArray(Se))for(const Oe of G[me].items.schema.fields){const xe=(we=be[Oe.model])==null?void 0:we.description;Oe.help===void 0&&typeof xe=="string"&&(Oe.help=Nr.marked.parse(xe,{mangle:!1,headerIds:!1}))}if(Se||(G[me].type="array",G[me].newElementButtonLabelClasses="kong-form-new-element-button-label",G[me].fieldClasses="array-card-container-wrapper",G[me].itemContainerComponent="FieldArrayCardContainer",G[me].items={type:"object",schema:{fields:Object.values(ie(me,pe.elements,{},!0))}},G[me].items.schema.fields.forEach(Oe=>{var xe,Ve;for(const $e of pe.elements.fields){const Fe=Object.keys($e)[0],Re=((Ve=(xe=Oe.id)==null?void 0:xe.split)==null?void 0:Ve.call(xe,"-"))??[];if(Re[Re.length-1]===Fe){Oe.model=Fe,Oe.label=c(Fe);break}}}),pe.elements.type==="record"&&(G[me].nestedFields=!0)),!G[me].nestedFields)G[me].items.default=()=>pe.elements.fields.reduce((Oe,xe)=>{const Ve=Object.keys(xe)[0];return Oe[Ve]=xe[Ve].default,Oe},{});else{const Oe=(xe,Ve)=>{if(xe.type==="object"){xe.model&&(Ve[xe.model]={});for(const $e of xe.schema.fields)Oe($e,xe.model?Ve[xe.model]:Ve)}else xe.model&&(Ve[xe.model]=xe.default)};G[me].items.default=()=>{const xe={};return Oe(G[me].items,xe),xe}}}if(w.value&&_e){for(let be=0;be<_e.length;be++)if(_e[be][me]){G[me]={...G[me],..._e[be][me]};break}}if(pe.required&&pe.type!=="boolean"&&(G[me].required=!0,G[me].selectOptions={hideNoneSelectedText:!0}),pe.required&&pe.type==="boolean"&&(G[me].default=pe.default??!1),pe.default!=null&&typeof pe.default!="object"&&pe.default!=="function"&&(G[me].default=pe.default),G[me].type==="input"){["string","number"].includes(typeof G[me].default)&&r.config.app==="konnect"&&(G[me].placeholder=`Default: ${G[me].default===""?"<empty string>":G[me].default}`);const{type:be}=pe.elements||{};be&&(G[me].valueArrayType=be==="integer"?"number":be),G[me].inputType=pe.type==="array"||pe.type==="string"?pe.encrypted?"password":"text":pe.type}let He="string";pe.enum?He=oe(pe.enum):pe.type==="boolean"?He="boolean":pe.type==="number"||pe.type==="integer"?(He="number",G[me].inputType="number"):pe.type==="array"?(He="array",G[me].default=pe.default,pe.len_min>0&&(G[me].submitWhenNull=!0)):pe.type==="foreign"?He="object":pe.default&&Array.isArray(pe.default)?(He="array",G[me].valueArrayType=oe(pe.default)):pe.default&&(He=typeof pe.default),G[me].valueType=He,pe.fieldNameHasDashes&&(G[me].fieldNameHasDashes=!0)}),G},L=()=>{var me,He,st,pt,un,fe,Te,ke,we,be,Se,Oe;const K=((me=St[r.pluginType])==null?void 0:me.scope.includes(Z.PluginScope.SERVICE))??!0,le=((He=St[r.pluginType])==null?void 0:He.scope.includes(Z.PluginScope.ROUTE))??!0,G=((st=St[r.pluginType])==null?void 0:st.scope.includes(Z.PluginScope.CONSUMER))??!0,z=r.config.disableConsumerGroupScope?!1:((pt=St[r.pluginType])==null?void 0:pt.scope.includes(Z.PluginScope.CONSUMER_GROUP))??!0,J=r.config.entityType==="consumers"&&!!r.config.entityId||!!((fe=(un=b.value)==null?void 0:un.consumer)!=null&&fe.id),de=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((ke=(Te=b.value)==null?void 0:Te.consumer_group)!=null&&ke.id),_e=r.config.entityType==="services"&&!!r.config.entityId||!!((be=(we=b.value)==null?void 0:we.service)!=null&&be.id),Q=r.config.entityType==="routes"&&!!r.config.entityId||!!((Oe=(Se=b.value)==null?void 0:Se.route)!=null&&Oe.id),he=[],Ce=(xe,Ve,$e)=>xe?a("plugins.form.disable_source_scope_change",{scope:$e}):Ve?a("plugins.form.disable_data_retrieving",{scope:$e}):"",pe=xe=>{var Ve,$e;return(($e=(Ve=r.scopedEntitiesPermissions)==null?void 0:Ve[xe])==null?void 0:$e.canRetrieve)===!1};if(K){const xe=pe("service"),Ve="services",$e=_e&&r.disableScopeSelection;he.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Ve,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:$e||xe,disabledTooltip:Ce($e,xe,Ve)})}if(le){const xe=pe("route"),Ve="routes",$e=Q&&r.disableScopeSelection;he.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ve,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:$e||xe,disabledTooltip:Ce($e,xe,Ve)})}if(G){const xe=pe("consumer"),Ve="consumers",$e=J&&r.disableScopeSelection;he.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ve,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:$e||xe,disabledTooltip:Ce($e,xe,Ve)})}if(z){const xe=pe("consumer_group"),Ve="consumer_groups",$e=de&&r.disableScopeSelection;he.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Ve,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:$e||xe,disabledTooltip:Ce($e,xe,Ve)})}if(he.length){const xe=[...K?["service"]:[],...le?["route"]:[],...G?["consumer"]:[],...z?["consumer_group"]:[]],$e=xe.splice(xe.length-2,2).map(Re=>a(Re==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Re}.plural`)).join(`${xe.length>0?",":""} and/or `),Fe=["Specific",[...xe.length>0?[xe.map(Re=>a(Re==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Re}.plural`)).join(", ")]:[],$e].join(", ")].join(" ");M.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Fe,fields:[]}),M.selectionGroup.fields[1].fields=he}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(M,l[r.pluginType].formSchema)},U=t.computed(()=>!u(v.fields,P,!0)),I=t.computed(()=>!ne.value&&!x.value&&(g.value===ye.EntityBaseFormType.Create||U.value)),V=t.ref(!1),H=t.ref(),te=K=>{r.credential&&K.password&&(K.password=""),v.fields.id=(K==null?void 0:K.id)||void 0,H.value=K==null?void 0:K.ordering,Object.assign(P,v.fields),b.value=K,V.value=!0},W=t.ref({}),j=K=>{var le;v.fields=K.model,v.fields.id=((le=b.value)==null?void 0:le.id)||void 0,Object.assign(P,K.originalModel),W.value=K.data,r.isWizardStep&&o("model-updated",{model:v.fields,data:K.data,resourceEndpoint:D.value})},se=t.ref(new Map),ue=t.computed(()=>[v.clientErrorMessage,v.serverErrorMessage].filter(Boolean).join("; ")),ge=K=>{K.valid?se.value.delete(K.model):se.value.set(K.model,K.error),v.clientErrorMessage=[...se.value.entries()].map(([le,G])=>`${le}: ${typeof G=="string"?G:d(G)}`).join("; "),v.clientErrorMessage&&(v.serverErrorMessage="")};t.watch([S,V],(K,le)=>{const G=K[0]!==le[0],z=K[1],J=le[1];if(!w.value&&g.value===ye.EntityBaseFormType.Edit&&(G||z&&z!==J)){const de=ie("config",E.value,M);ae.value&&(de._isCustomPlugin=!0),N.value&&(de._supported_redis_partial_type=N.value),_.value=de}},{deep:!0});const re=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},q=t.computed(()=>{const K=r.config.entityType&&r.config.entityId&&!r.developer,le=w.value?Xe.form[r.config.app].credential[g.value]:Xe.form[r.config.app][g.value][K?"forEntity":"all"];let G=`${r.config.apiBaseUrl}${le}`;return r.config.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),G=G.replace(/{resourceEndpoint}/gi,D.value),G=G.replace(/{id}/gi,r.pluginId),G=G.replace(/{entityType}/gi,r.config.entityType||""),G=G.replace(/{entityId}/gi,r.config.entityId||""),G}),ae=t.computed(()=>!Object.keys(St).includes(r.pluginType)),ce=t.computed(()=>{const K=W.value;if(w.value){for(const le in Z.PluginScope){const G=Z.PluginScope[le];K[G]&&!K[G].id&&(K[G]={id:r.config.entityId})}delete K.created_at}return W.value.partials&&C.value&&od(K,C.value),K}),$=t.computed(()=>{const{__ui_data:K,...le}={...ce.value};return le}),A=async()=>{if(!v.clientErrorMessage&&!r.isWizardStep)try{v.isReadonly=!0;let K;const le=JSON.parse(JSON.stringify(ce.value)),G=l[r.pluginType];typeof(G==null?void 0:G.shamefullyTransformPayload)=="function"&&G.shamefullyTransformPayload({originalModel:P,model:v.fields,payload:le,schema:_.value}),g.value==="create"?K=await p.post(q.value,le):g.value==="edit"&&(K=r.config.app==="konnect"||N.value&&le.partials?await p.put(q.value,Object.assign({ordering:H.value},le)):await p.patch(q.value,le)),Object.assign(P,v.fields),o("update",K==null?void 0:K.data)}catch(K){v.serverErrorMessage=d(K),o("error",K)}finally{v.isReadonly=!1}},B=t.computed(()=>{var z;const K=w.value?(z=ro[r.pluginType])==null?void 0:z.schemaEndpoint:r.pluginType,le=w.value?Xe.form[r.config.app].credentialSchema:Xe.form[r.config.app].pluginSchema;let G=`${r.config.apiBaseUrl}${le}`;return r.config.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),G=G.replace(/{plugin}/gi,K),G}),R=t.ref(""),ne=t.ref(!1),X=t.ref("");return t.onBeforeMount(async()=>{var K,le,G,z;ne.value=!0;try{if(w.value&&r.config.app==="konnect"){const J=(K=ro[r.pluginType])==null?void 0:K.schemaEndpoint,de=$g[J];R.value=J,_.value=ie("",de,{}),ne.value=!1}else{const J=r.schema??(await p.get(B.value)).data;if(y.value=J,J)if(w.value)_.value=ie("",J,{}),ne.value=!1;else{const de=J.fields.find(Q=>Q.config);E.value=de?de.config:J,J.supported_partials&&(N.value=Object.keys(J.supported_partials).find(Q=>[Sr.REDIS_CE,Sr.REDIS_EE].includes(Q)),C.value=(le=J.supported_partials[N.value])==null?void 0:le[0]),L();const _e=(G=J.fields.find(Q=>Q.protocols))==null?void 0:G.protocols;if(_e){const{default:Q=[],elements:he={}}=_e;M.protocols.default=Q,M.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:Q.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(z=he.one_of)!=null&&z.length&&(M.protocols.values=he.one_of.map(Ce=>({label:Ce,value:Ce})))}if(V.value||g.value===ye.EntityBaseFormType.Create){const Q=ie("config",E.value,M);N.value&&(Q._supported_redis_partial_type=N.value),ae.value&&(Q._isCustomPlugin=!0),_.value=Q}}}}catch(J){console.error(J),X.value=d(J),o("error:fetch-schema",J)}finally{ne.value=!1}}),(K,le)=>{const G=t.resolveComponent("KSkeleton"),z=t.resolveComponent("KEmptyState"),J=t.resolveComponent("KButton"),de=t.resolveComponent("KTabs"),_e=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",jM,[ne.value?(t.openBlock(),t.createBlock(G,{key:0,type:"form"})):X.value?(t.openBlock(),t.createBlock(z,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(a)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ye.EntityBaseForm),{key:2,"can-submit":I.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ye.SupportedEntityType).Plugin,"error-message":ue.value,"fetch-url":k.value,"form-fields":ce.value,"is-readonly":v.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:re,"onFetch:error":le[4]||(le[4]=Q=>K.$emit("error",Q)),"onFetch:success":te,onLoading:le[5]||(le[5]=Q=>K.$emit("loading",Q))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",GM)):(t.openBlock(),t.createBlock(KM,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",qM,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(J,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:le[3]||(le[3]=Q=>F())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(J,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:v.isReadonly,onClick:re},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(J,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!I.value||v.isReadonly,type:"submit",onClick:A},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:A},null,32),t.createVNode(FM,{config:e.config,credential:w.value,editing:g.value===t.unref(ye.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":S.value,"raw-schema":y.value,record:b.value,schema:_.value,onGlobalAction:le[0]||(le[0]=(Q,he)=>K.$emit("globalAction",Q,he)),onLoading:le[1]||(le[1]=Q=>x.value=Q),onModelUpdated:j,onShowNewPartialModal:le[2]||(le[2]=Q=>K.$emit("showNewPartialModal",Q)),onValidityChange:ge},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(_e,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(a)("view_configuration.title"),visible:m.value,onClose:F},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(de,{"data-testid":"form-view-configuration-slideout-tabs",tabs:T.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ye.JsonCodeBlock),{config:e.config,"entity-record":$.value,"fetcher-url":q.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ye.YamlCodeBlock),{"entity-record":$.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ye.TerraformCodeBlock),{"credential-type":R.value,"entity-record":$.value,"entity-type":t.unref(ye.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-b9713619"]]),HM={class:"kong-ui-entities-plugins-list"},YM={class:"button-row"},WM={class:"name-cell-wrapper"},XM={class:"info-wrapper"},ZM={key:0,class:"info-name"},JM={key:1,class:"info-name"},QM={key:2,class:"info-type"},e2={key:1},t2=Ae(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var R,ne;const o=Ke.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Ke.useI18n(),l=no.useRouter(),{axiosInstance:s}=ye.useAxios((R=i.config)==null?void 0:R.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ye.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var 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"}),h=i.config.app==="konnect"||ye.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),g=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),y={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(ne=i.config)!=null&&ne.entityId||(y.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),y.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(y.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),y.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const _=y,w=t.computed(()=>{var Y,K,le,G;let X=i.config.entityType?`${i.config.apiBaseUrl}${Xe.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Xe.list[i.config.app].all}`;return i.config.app==="konnect"?X=X.replace(/{controlPlaneId}/gi,((Y=i.config)==null?void 0:Y.controlPlaneId)||""):i.config.app==="kongManager"&&(X=X.replace(/\/{workspace}/gi,(K=i.config)!=null&&K.workspace?`/${i.config.workspace}`:"")),X.replace(/{entityType}/gi,((le=i.config)==null?void 0:le.entityType)||"").replace(/{entityId}/gi,((G=i.config)==null?void 0:G.entityId)||"")}),b=t.ref(""),E=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:y.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...y.enabled,label:a("search.filter.field.enabled")},name:y.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:N,fetcherState:C,fetcherCacheKey:x}=ye.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),P=()=>{b.value=""},v=()=>{x.value++},T=t.ref(null),O=X=>{var K,le,G,z;const Y=[];return((K=X.route)!=null&&K.id||X.route_id)&&Y.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((le=X.service)!=null&&le.id||X.service_id)&&Y.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((G=X.consumer)!=null&&G.id||X.consumer_id)&&Y.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((z=X.consumer_group)!=null&&z.id||X.consumer_group_id)&&Y.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),Y.length?Y:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},k=async(X,Y)=>{var K;return X===null?!1:await((K=i.canRetrieveScopedEntity)==null?void 0:K.call(i,X,Y.id))},F=(X,Y)=>{var le,G,z,J,de;let K=null;switch(X){case"route":K=(le=Y.route)==null?void 0:le.id;break;case"service":K=(G=Y.service)==null?void 0:G.id;break;case"consumer":K=(z=Y.consumer)==null?void 0:z.id;break;case"consumer_group":K=(J=Y.consumer_group)==null?void 0:J.id;break}K&&((de=i.config)!=null&&de.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(X,K))},S=t.ref(!1),M=t.ref(null),D=t.computed(()=>{const X={action:"disable",id:"",name:""};if(M.value){const{enabled:Y,id:K,name:le}=M.value;X.action=Y?"disable":"enable",X.id=K,X.name=o.getDisplayName(le)||K}return X}),oe=X=>{S.value=!0,M.value=X},ie=()=>{S.value=!1,M.value=null},L=async()=>{var le,G,z,J,de,_e,Q,he;if(!await((le=i.canEdit)==null?void 0:le.call(i,M.value))||!M.value)return;let Y=`${i.config.apiBaseUrl}${(de=Xe.item[i.config.app])==null?void 0:de[(G=i.config)!=null&&G.entityType?"forEntity":"all"].replace(/{entityType}/gi,((z=i.config)==null?void 0:z.entityType)||"").replace(/{entityId}/gi,((J=i.config)==null?void 0:J.entityId)||"")}`.replace(/{id}/gi,M.value.id||"");i.config.app==="konnect"?Y=Y.replace(/{controlPlaneId}/gi,((_e=i.config)==null?void 0:_e.controlPlaneId)||""):i.config.app==="kongManager"&&(Y=Y.replace(/\/{workspace}/gi,(Q=i.config)!=null&&Q.workspace?`/${i.config.workspace}`:""));const K=!M.value.enabled;try{const Ce=(he=i.config)==null?void 0:he.app;let pe;b.value&&Ce==="konnect"&&(pe=await s.get(Y));const{data:me}=Ce==="konnect"?await s.put(Y,{...(pe==null?void 0:pe.data)||M.value,enabled:K},{timeout:12e4}):await s.patch(Y,{...M.value,enabled:K},{timeout:12e4});r("toggle-enabled",K,me),M.value.enabled=K}catch(Ce){r("error",Ce)}},U=async(X,Y)=>{const K=X.id;if(!await Y(K)){r("copy:error",{entity:X,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:X,field:"id",message:a("copy.success",{val:K})})},I=async(X,Y)=>{const K=JSON.stringify(X);if(!await Y(K)){r("copy:error",{entity:X,message:a("errors.copy")});return}r("copy:success",{entity:X,message:a("copy.success_brief")})},V=async X=>{var K;await((K=i.canRetrieve)==null?void 0:K.call(i,X))&&l.push(i.config.getViewRoute(X))},H=X=>({label:a("actions.view"),to:i.config.getViewRoute(X)}),te=X=>({label:a("actions.edit"),to:i.config.getEditRoute(X)}),W=X=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(X)}),j=t.ref(void 0),se=t.ref(!1),ue=t.ref(!1),ge=t.ref(""),re=ye.useDeleteUrlBuilder(i.config,w.value),q=X=>{j.value=X,se.value=!0},ae=()=>{se.value=!1},ce=async()=>{var X,Y,K;if((X=j.value)!=null&&X.id){ue.value=!0;try{await s.delete(re(j.value.id)),ue.value=!1,se.value=!1,x.value++,r("delete:success",j.value)}catch(le){ge.value=((K=(Y=le.response)==null?void 0:Y.data)==null?void 0:K.message)||le.message||a("errors.delete"),r("error",le)}finally{ue.value=!1}}},$=()=>{l.push(i.config.createRoute)};t.watch(C,X=>{var Y,K,le;if(X.status===ye.FetcherStatus.Error){T.value={title:a("errors.general")},(le=(K=(Y=X.error)==null?void 0:Y.response)==null?void 0:K.data)!=null&&le.message&&(T.value.message=X.error.response.data.message),r("error",X.error);return}T.value=null});const A=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")}),B=t.ref(!1);return t.onBeforeMount(async()=>{B.value=await i.canCreate(),B.value&&(A.value.title=a("plugins.list.empty_state.title"),A.value.ctaText=a("actions.create"))}),(X,Y)=>{const K=t.resolveComponent("KButton"),le=t.resolveComponent("KEmptyState"),G=t.resolveComponent("KBadge"),z=t.resolveComponent("KTruncate"),J=t.resolveComponent("KInputSwitch"),de=t.resolveComponent("KDropdownItem"),_e=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",HM,[t.createVNode(t.unref(ye.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":g.value,"empty-state-options":A.value,"enable-entity-actions":"","error-message":T.value,fetcher:t.unref(N),"fetcher-cache-key":t.unref(x),"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:P,"onClick:row":Y[4]||(Y[4]=Q=>V(Q)),onSort:v,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ye.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":Y[0]||(Y[0]=Q=>b.value=Q),config:E.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",YM,[!u.value&&f.value?(t.openBlock(),t.createBlock(K,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:Y[1]||(Y[1]=Q=>X.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(K,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.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:Q})=>[t.createElementVNode("div",WM,[t.createVNode(t.unref(Bo.PluginIcon),{class:"plugin-icon",name:Q.name,size:24},null,8,["name"]),t.createElementVNode("div",XM,[Q.instance_name?(t.openBlock(),t.createElementBlock("span",ZM,t.toDisplayString(Q.instance_name),1)):(t.openBlock(),t.createElementBlock("span",JM,t.toDisplayString(t.unref(o).getDisplayName(Q.name)),1)),Q.instance_name?(t.openBlock(),t.createElementBlock("span",QM,t.toDisplayString(t.unref(o).getDisplayName(Q.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:Q})=>[O(Q).length>0?(t.openBlock(),t.createBlock(z,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(O(Q),he=>(t.openBlock(),t.createBlock(t.unref(ye.PermissionsWrapper),{key:he.badgeText,"auth-function":()=>k(he.type,Q),"force-show":""},{default:t.withCtx(({isAllowed:Ce})=>[t.createVNode(G,{class:t.normalizeClass(Ce||"disabled"),onClick:t.withModifiers(pe=>Ce&&he.type&&F(he.type,Q),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(he.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",e2,"-"))]),enabled:t.withCtx(({row:Q})=>[t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(Q)&&await e.canToggle(Q)),"force-show":""},{default:t.withCtx(({isAllowed:he})=>{var Ce,pe;return[t.createElementVNode("div",{onClick:Y[3]||(Y[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(J,{disabled:!he,"disabled-tooltip-text":!he&&((pe=(Ce=e.config).getToggleDisabledTooltip)==null?void 0:pe.call(Ce,Q))||void 0,"model-value":Q.enabled,onClick:t.withModifiers(me=>he&&oe(Q),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:Q})=>[t.createVNode(G,{appearance:t.unref(Qc)(Q)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Qc)(Q)?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:Q})=>[t.createVNode(t.unref(ye.TableTags),{tags:Q},null,8,["tags"])]),actions:t.withCtx(({row:Q})=>[t.createVNode(_e,null,{default:t.withCtx(({copyToClipboard:he})=>[t.createVNode(de,{"data-testid":"action-entity-copy-id",onClick:Ce=>U(Q,he)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(_e,null,{default:t.withCtx(({copyToClipboard:he})=>[t.createVNode(de,{"data-testid":"action-entity-copy-json",onClick:Ce=>I(Q,he)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(Q)},{default:t.withCtx(()=>[t.createVNode(de,{"data-testid":"action-entity-view","has-divider":"",item:H(Q)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canEdit(Q)},{default:t.withCtx(()=>[t.createVNode(de,{"data-testid":"action-entity-edit",item:te(Q)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(ye.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(Q)},{default:t.withCtx(()=>[W(Q)?(t.openBlock(),t.createBlock(de,{key:0,"data-testid":"action-entity-config-dyn-order",item:W(Q)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ye.PermissionsWrapper),{"auth-function":()=>e.canDelete(Q)},{default:t.withCtx(()=>[t.createVNode(de,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:he=>q(Q)},{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 Q;return[t.createVNode(le,{"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(ve.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[B.value?(t.openBlock(),t.createBlock(K,{key:0,"data-testid":"entity-create-button",onClick:$},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(K,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:Y[2]||(Y[2]=he=>X.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(ve.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(Q=e.config)!=null&&Q.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),t.createVNode(t.unref(ye.EntityToggleModal),{action:D.value.action,"entity-id":D.value.id,"entity-name":D.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":L,visible:S.value,onCancel:ie,onProceed:ie},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ye.EntityDeleteModal),{"action-pending":ue.value,description:t.unref(a)("delete.description"),"entity-name":j.value&&(j.value.instance_name||j.value.name||j.value.id),"entity-type":t.unref(ye.EntityTypes).Plugin,error:ge.value,title:t.unref(a)("delete.title"),visible:se.value,onCancel:ae,onProceed:ce},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-25799614"]]),n2={class:"plugin-select-card-wrapper"},o2=["data-testid"],r2={class:"plugin-card-header"},i2={class:"plugin-card-title"},a2={key:0,class:"plugin-card-actions"},l2=["data-testid","title"],s2={key:0,class:"plugin-card-text"},c2={key:0},d2=["title"],Ss=Ae(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=no.useRouter(),{i18n:{t:a}}=Ke.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?d():u()},u=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===Z.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},g=(_,w)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(_,w))},y=()=>{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"),E=t.resolveComponent("KDropdownItem"),N=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",n2,[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]=x=>s.value||m.value?void 0:f())},[t.createElementVNode("div",r2,[t.createElementVNode("div",i2,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",a2,[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(ve.MoreIcon),{size:t.unref(Vu)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(E,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(x=>g(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(E,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(h,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:y},[t.createVNode(t.unref(Bo.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",s2,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",c2,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,d2)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,l2),t.createElementVNode("div",{class:"plugin-card-footer",onClick:y},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,o2)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),u2=Ae(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var h;const o=e,r=n,{i18nT:i,i18n:{t:a}}=Ke.useI18n(),{getMessageFromError:l}=ye.useErrors(),{axiosInstance:s}=ye.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var g;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((g=o.plugin)==null?void 0:g.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 g=o.plugin.customPluginType==="streaming"?Xe.select[o.config.app].streamingCustomPluginItem:Xe.select[o.config.app].schemaCustomPluginItem;let y=`${o.config.apiBaseUrl}${g}`;return y=y.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),y=y.replace(/{pluginId}/gi,o.plugin.id),y}return null}),m=async()=>{var g,y,_,w;if(d.value=!0,f.value="",!(!((g=o.plugin)!=null&&g.name)||((y=o.config)==null?void 0:y.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:E}=b;(E==null?void 0:E.status)===400&&((w=(_=E.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(g,y)=>{const _=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ye.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(ye.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:y[0]||(y[0]=b=>g.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(w,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:y[2]||(y[2]=b=>g.$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:y[1]||(y[1]=b=>g.$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"]]),f2={class:"custom-plugins-grid"},p2={class:"empty-state-title"},m2={class:"empty-state-description"},vs=310,g2=Ae(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ke.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ke.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))[Z.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:Z.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(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 C;N&&(r("revalidate"),r("delete:success",((C=u.value)==null?void 0:C.name)||"")),f.value=!1,u.value=null},h=t.ref(vs),g=t.ref(null),y=t.ref(null),_=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),w=t.ref(!1),b=()=>{h.value=Math.max(a(y.value),vs),E()},E=()=>{var N,C;(N=y.value)!=null&&N.length&&(w.value=l(g.value,(C=y.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(y.value),vs),E(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(N,C)=>{const x=t.resolveComponent("KEmptyState"),P=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",f2,[d.value.length?(t.openBlock(),t.createBlock(P,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=v=>s.value=v),class:"custom-plugins-collapse","data-testid":`${t.unref(Z.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(Z.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:g,class:"plugin-card-container",style:t.normalizeStyle(_.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(v,T)=>(t.openBlock(),t.createBlock(Ss,{key:`plugin-card-${T}`,ref_for:!0,ref_key:"pluginCardRef",ref:y,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:v,onCustomPluginDelete:O=>p(v),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[w.value?void 0:{name:"trigger",fn:t.withCtx(()=>[C[2]||(C[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(x,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",p2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",m2,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(u2,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:C[1]||(C[1]=v=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),As=310,hg=Ae(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const o=t.useModel(e,"modelValue"),r=e,i=n,{i18n:{t:a}}=Ke.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ke.usePluginHelpers(),c=t.ref(As),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),As),h()},h=()=>{var g,y;(g=f.value)!=null&&g.length&&(p.value=s(d.value,(y=f.value)==null?void 0:y.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),As),h(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(g,y)=>{const _=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(_,{modelValue:o.value,"onUpdate:modelValue":y[0]||(y[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(u.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock(Ss,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:b=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[y[1]||(y[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),h2={class:"plugin-select-grid"},y2={class:"empty-state-title"},_2={class:"empty-state-description"},Is=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ke.useI18n(),a=t.ref(!1),l=t.ref(Vs),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[Z.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",h2,[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",y2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",_2,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(hg,{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(Bs),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(hg,{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))])}}}),b2={class:"kong-ui-entities-plugin-select-form"},w2={class:"plugins-filter-input-container"},k2={key:0},C2={key:3,"aria-live":"polite",class:"plugins-results-container"},E2={"data-testid":"kong-tab"},N2={class:"tab-description"},x2={"data-testid":"custom-tab"},S2={class:"tab-description"},v2=Ae(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var U;const o=e,r=n,i=no.useRoute(),a=no.useRouter(),{i18n:{t:l}}=Ke.useI18n(),{pluginMetaData:s}=Ke.usePluginMetaData(),{getMessageFromError:c}=ye.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ye.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),g=t.ref([]),y=t.ref([]),_=t.ref({}),w=t.ref([]),{axiosInstance:b}=ye.useAxios((U=o.config)==null?void 0:U.axiosRequestConfig),E=t.computed(()=>_.value?Object.entries(_.value).filter(([I])=>I!==Z.PluginGroup.CUSTOM_PLUGINS).reduce((I,[,V])=>{for(const H of V)I[H.id]=H;return I},{}):{}),N=t.computed(()=>{var H;if(!_.value)return{};const I=u.value.toLowerCase(),V=JSON.parse(JSON.stringify(_.value));for(const te in _.value){const W=((H=_.value[te])==null?void 0:H.filter(j=>j.name.toLowerCase().includes(I)||j.id.toLowerCase().includes(I)||j.group.toLowerCase().includes(I)))||[];W.length?V[te]=W:delete V[te]}return V}),C=t.computed(()=>o.highlightedPluginIds.reduce((I,V)=>{const H=E.value[V];return H&&I.push(H),I},[])),x=t.computed(()=>Object.keys(N.value).length>0),P=t.computed(()=>Object.keys(_.value).length>0&&!x.value),v=t.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),T=t.computed(()=>{var V;let I=v.value.length&&((i==null?void 0:i.hash)||((V=v.value[0])==null?void 0:V.hash))||"";return I==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(I="#kong"),I}),O=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...g.value])].filter(I=>!o.ignoredPlugins.includes(I)).filter(I=>o.config.entityType&&(o.config.entityType==="services"&&s[I]&&!s[I].scope.includes(Z.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[I]&&!s[I].scope.includes(Z.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[I]&&!s[I].scope.includes(Z.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[I]&&!s[I].scope.includes(Z.PluginScope.CONSUMER))?!1:I).reduce((I,V)=>{var se;const H=s[V]&&s[V].name||V,te={...s[V],id:V,name:H,available:g.value.includes(V),disabledMessage:"",group:((se=s[V])==null?void 0:se.group)||Z.PluginGroup.CUSTOM_PLUGINS};te.group===Z.PluginGroup.CUSTOM_PLUGINS&&(te.customPluginType=y.value.find(ue=>ue.name===V)?"streaming":"schema"),o.disabledPlugins&&(te.disabledMessage=o.disabledPlugins[V]);const W=te.group||l("plugins.select.misc_plugins");let j=I[W];return j||(j=[]),j.push(te),j.sort(d("name")),I[W]=j,I},{}),k=t.computed(()=>{var V;let I=`${o.config.apiBaseUrl}${Xe.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?I=I.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(I=((V=o.config.gatewayInfo)==null?void 0:V.edition)==="community"?`${o.config.apiBaseUrl}${Xe.select[o.config.app].availablePluginsForOss}`:I.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),I}),F=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let I=`${o.config.apiBaseUrl}${Xe.select[o.config.app].streamingCustomPlugins}`;return I=I.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),I}return null}),S=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let I=`${o.config.apiBaseUrl}${Xe.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""}),M=I=>{a.replace({hash:I,query:i.query})};t.watch(()=>o.disabledPlugins,(I,V)=>{!f(I,V)&&!p.value&&(_.value=O())}),t.watch(()=>o.ignoredPlugins,(I,V)=>{!f(I,V)&&!p.value&&(_.value=O())}),t.watch(p,I=>{r("loading",I)});const D=t.ref(!1),oe=t.ref(!1),ie=t.ref(!1);t.onBeforeMount(async()=>{D.value=await o.canCreateCustomPlugin(),oe.value=await o.canEditCustomPlugin(),ie.value=await o.canDeleteCustomPlugin()});const L=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var I,V;(V=(I=L.value)==null?void 0:I.input)==null||V.focus();try{const{data:H}=await b.get(k.value);if(o.config.app==="konnect"){const{names:te}=H;if(g.value=te||[],F.value){const{data:W}=await b.get(F.value);y.value=W.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:te}}=H;g.value=te?Object.keys(te):[]}}catch(H){m.value=!0,h.value=c(H)}if(S.value)try{const{data:{data:H}}=await b.get(S.value);if(H!=null&&H.length){const te=H.reduce((W,j)=>(j.name&&W.push(j.name),W),[]);w.value=w.value.concat(te)}}catch{}m.value||(_.value=O()),p.value=!1}),(I,V)=>{const H=t.resolveComponent("KInput"),te=t.resolveComponent("KSkeletonBox"),W=t.resolveComponent("KSkeleton"),j=t.resolveComponent("KEmptyState"),se=t.resolveComponent("KTooltip"),ue=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",b2,[t.createElementVNode("div",w2,[t.createVNode(H,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":V[0]||(V[0]=ge=>u.value=ge),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",k2,[t.createVNode(te,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(W,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(j,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(h.value),1)]),_:1})):P.value&&u.value?(t.openBlock(),t.createBlock(j,{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",C2,[v.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(ue,{key:0,modelValue:T.value,"onUpdate:modelValue":V[5]||(V[5]=ge=>T.value=ge),"data-testid":"plugins-tabs",tabs:v.value,onChange:M},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",E2,[t.createElementVNode("p",N2,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Is,{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":N.value,onPluginClicked:V[1]||(V[1]=ge=>I.$emit("plugin-clicked",ge))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",x2,[t.renderSlot(I.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",S2,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(g2,{"can-create-custom-plugin":D.value,"can-delete-custom-plugin":ie.value,"can-edit-custom-plugin":oe.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":N.value,"onDelete:success":V[2]||(V[2]=ge=>I.$emit("delete-custom:success",ge)),onPluginClicked:V[3]||(V[3]=ge=>I.$emit("plugin-clicked",ge)),onRevalidate:V[4]||(V[4]=()=>_.value=O())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(se,{"max-width":"300",text:t.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(Is,{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":N.value,onPluginClicked:V[6]||(V[6]=ge=>I.$emit("plugin-clicked",ge))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-7b1adaaa"]]),A2={class:"datakit-config-card-canvas"},I2={class:"config-card-details-label","data-testid":"datakit-configuration-label"},T2={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},P2={class:"canvas-wrapper"},O2=Ae(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return Yu(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",A2,[t.createElementVNode("div",I2,[t.createVNode(r,null,{default:t.withCtx(()=>[...o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),t.createElementVNode("div",T2,[t.createElementVNode("div",P2,[t.createVNode(ks,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),$2={class:"kong-ui-entity-plugin-config-card"},B2={class:"name-cell-wrapper"},V2={class:"info-name"},R2={key:0},D2={key:0},M2={key:0},L2={key:0},F2={key:0},Ts="config",U2=Ae(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var C;const o=n,r=e,{i18n:{t:i}}=Ke.useI18n(),a=Ke.usePluginMetaData(),{setFieldType:l}=Ke.usePluginHelpers(),{getPropValue:s}=ye.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),d=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var P;let x=(P=Xe.item[r.config.app])==null?void 0:P[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const v=r.expandPartial?"&":"?";x=x.concat(`${v}__ui_data=true`)}return x}),u=t.computed(()=>{var v,T;const x={},P=((v=b.value)==null?void 0:v.fields)||[];for(let O=0;O<P.length;O++){const k=b.value.fields[O],F=(T=Object.keys(k))==null?void 0:T[0];l(x,F,k[F])}return{...x,instance_name:{section:ye.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ye.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ye.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ye.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ye.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ye.ConfigurationSchemaType.BadgeTag,section:ye.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var P,v,T;if(!((P=b.value)!=null&&P.fields))return[];const x=(v=b.value.fields)==null?void 0:v.find(O=>{var F;return((F=Object.keys(O))==null?void 0:F[0])===Ts});return((T=x==null?void 0:x[Ts])==null?void 0:T.fields)||[]}),m=t.computed(()=>{var P,v;const x={};if(!p.value)return x;for(let T=0;T<((P=p.value)==null?void 0:P.length);T++){const O=p.value[T],k=(v=Object.keys(O))==null?void 0:v[0],F=O[k];F.required&&(x[k]={order:1}),l(x,k,F)}return x}),h=x=>{var v;const P=(v=a.pluginMetaData[r.config.pluginType])==null?void 0:v.scope;return P?Object.fromEntries(Object.entries(x).filter(([T,O])=>O?!0:!(T==="service"&&!P.includes(Z.PluginScope.SERVICE)||T==="route"&&!P.includes(Z.PluginScope.ROUTE)||T==="consumer"&&!P.includes(Z.PluginScope.CONSUMER)||T==="consumer_group"&&!P.includes(Z.PluginScope.CONSUMER_GROUP)))):x},g=x=>Jt(x,"__ui_data"),{getMessageFromError:y}=ye.useErrors(),{axiosInstance:_}=ye.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),w=t.computed(()=>{var P,v;let x=`${r.config.apiBaseUrl}${Xe.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?x=x.replace(/{controlPlaneId}/gi,((P=r.config)==null?void 0:P.controlPlaneId)||""):r.config.app==="kongManager"&&(x=x.replace(/\/{workspace}/gi,(v=r.config)!=null&&v.workspace?`/${r.config.workspace}`:"")),x=x.replace(/{plugin}/gi,r.config.pluginType),x}),b=t.ref({});ye.useSchemaProvider(b);const E=t.ref(!1),N=t.ref("");return t.onBeforeMount(async()=>{E.value=!0;try{const{data:x}=await _.get(w.value);b.value=x}catch(x){N.value=y(x),o("error:fetch-schema",x)}finally{E.value=!1}}),(x,P)=>{const v=t.resolveComponent("KSkeleton"),T=t.resolveComponent("KEmptyState"),O=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",$2,[E.value?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):N.value?(t.openBlock(),t.createBlock(T,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(N.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ye.EntityBaseConfigCard),{key:2,"code-block-record-formatter":g,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":u.value,"entity-type":t.unref(ye.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":Ts,"plugin-config-schema":m.value,"record-resolver":h,"onFetch:error":P[0]||(P[0]=k=>x.$emit("fetch:error",k)),"onFetch:success":P[1]||(P[1]=k=>x.$emit("fetch:success",k)),onLoading:P[2]||(P[2]=k=>x.$emit("loading",k))},t.createSlots({name:t.withCtx(k=>[t.createElementVNode("div",B2,[t.createVNode(t.unref(Bo.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",k),size:24},null,8,["name"]),t.createElementVNode("span",V2,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",k))),1)])]),consumer:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",R2,"–"))]),route:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",k).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",D2,"–"))]),service:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",k).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",M2,"–"))]),consumer_group:t.withCtx(k=>[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",k).id,value:t.unref(s)("rowValue",k).id,type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>x.$emit("navigation-click",t.unref(s)("rowValue",k).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",k).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",L2,"–"))]),partials:t.withCtx(k=>{var F,S,M,D,oe,ie,L,U,I;return[t.unref(s)("rowValue",k)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ye.InternalLinkItem),{key:1,item:{key:(S=(F=t.unref(s)("rowValue",k))==null?void 0:F[0])==null?void 0:S.id,value:((D=(M=t.unref(s)("rowValue",k))==null?void 0:M[0])==null?void 0:D.id)+((ie=(oe=t.unref(s)("rowValue",k))==null?void 0:oe[0])!=null&&ie.name?"/"+((U=(L=t.unref(s)("rowValue",k))==null?void 0:L[0])==null?void 0:U.name):""),type:t.unref(ye.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var V,H;return x.$emit("navigation-click",(H=(V=t.unref(s)("rowValue",k))==null?void 0:V[0])==null?void 0:H.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(O,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",k).label}),"data-testid":"partial-copy-uuid",text:(I=t.unref(s)("rowValue",k))==null?void 0:I[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",F2,"–"))]}),_:2},[d.value?{name:"config-card-item-nodes",fn:t.withCtx(k=>[t.createVNode(O2,{"plugin-data":k.record},null,8,["plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-a5302acb"]]),{usePluginMetaData:K2,useProvideExperimentalFreeForms:j2}=Ke;Object.defineProperty(Ie,"PluginGroup",{enumerable:!0,get:()=>Z.PluginGroup}),Object.defineProperty(Ie,"PluginScope",{enumerable:!0,get:()=>Z.PluginScope}),Object.defineProperty(Ie,"PluginIcon",{enumerable:!0,get:()=>Bo.PluginIcon}),Object.defineProperty(Ie,"getPluginIconURL",{enumerable:!0,get:()=>Bo.getPluginIconURL}),Ie.EXPERIMENTAL_FREE_FORM_PROVIDER=Oa,Ie.EntityTypeIdField=Sn,Ie.FEATURE_FLAGS=fn,Ie.PLUGIN_GROUPS_COLLAPSE_STATUS=Vs,Ie.PluginConfigCard=U2,Ie.PluginForm=zM,Ie.PluginGroupArray=Bs,Ie.PluginList=t2,Ie.PluginPartialType=Sr,Ie.PluginSelect=v2,Ie.PluginSelectCard=Ss,Ie.PluginSelectGrid=Is,Ie.TOASTER_PROVIDER=rd,Ie.pluginEndpoints=Xe,Ie.usePluginMetaData=K2,Ie.useProvideExperimentalFreeForms=j2,Object.defineProperty(Ie,Symbol.toStringTag,{value:"Module"})});