@kong-ui-public/entities-plugins 9.68.0 → 9.69.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 (29) hide show
  1. package/dist/entities-plugins.es.js +10546 -11064
  2. package/dist/entities-plugins.umd.js +42 -49
  3. package/dist/style.css +1 -1
  4. package/dist/types/components/PluginForm.vue.d.ts +2 -2
  5. package/dist/types/components/free-form/Datakit/flow-editor/composables/helpers.d.ts +18 -0
  6. package/dist/types/components/free-form/Datakit/flow-editor/composables/helpers.d.ts.map +1 -0
  7. package/dist/types/components/free-form/Datakit/flow-editor/composables/useConflictConnectionConfirm.d.ts +4 -0
  8. package/dist/types/components/free-form/Datakit/flow-editor/composables/useConflictConnectionConfirm.d.ts.map +1 -0
  9. package/dist/types/components/free-form/Datakit/flow-editor/composables/useFlow.d.ts +1 -3
  10. package/dist/types/components/free-form/Datakit/flow-editor/composables/useFlow.d.ts.map +1 -1
  11. package/dist/types/components/free-form/Datakit/flow-editor/composables/useNodeForm.d.ts +2 -2
  12. package/dist/types/components/free-form/Datakit/flow-editor/composables/useNodeForm.d.ts.map +1 -1
  13. package/dist/types/components/free-form/Datakit/flow-editor/constants.d.ts +1 -0
  14. package/dist/types/components/free-form/Datakit/flow-editor/constants.d.ts.map +1 -1
  15. package/dist/types/components/free-form/Datakit/flow-editor/modal/ConflictConnectionConfirmModal.vue.d.ts +20 -0
  16. package/dist/types/components/free-form/Datakit/flow-editor/modal/ConflictConnectionConfirmModal.vue.d.ts.map +1 -0
  17. package/dist/types/components/free-form/Datakit/flow-editor/modal/EditorModal.vue.d.ts.map +1 -1
  18. package/dist/types/components/free-form/Datakit/flow-editor/store/history.d.ts +1 -3
  19. package/dist/types/components/free-form/Datakit/flow-editor/store/history.d.ts.map +1 -1
  20. package/dist/types/components/free-form/Datakit/flow-editor/store/store.d.ts +2 -6
  21. package/dist/types/components/free-form/Datakit/flow-editor/store/store.d.ts.map +1 -1
  22. package/dist/types/components/free-form/Datakit/flow-editor/store/validation.d.ts.map +1 -1
  23. package/dist/types/composables/useToaster.d.ts +6 -0
  24. package/dist/types/composables/useToaster.d.ts.map +1 -0
  25. package/dist/types/constants/index.d.ts +1 -0
  26. package/dist/types/constants/index.d.ts.map +1 -1
  27. package/dist/types/utils/helper.d.ts +3 -1
  28. package/dist/types/utils/helper.d.ts.map +1 -1
  29. package/package.json +6 -6
@@ -1,79 +1,72 @@
1
- (function(he,n){typeof exports=="object"&&typeof module<"u"?n(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("@vueuse/core"),require("monaco-editor"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","@vueuse/core","monaco-editor","@kong-ui-public/entities-plugins-icon"],n):(he=typeof globalThis<"u"?globalThis:he||self,n(he["kong-ui-public-entities-plugins"]={},he.Vue,he["kong-ui-public-entities-shared"],he.marked,he.VueRouter,he["kong-ui-public-i18n"],he.entitiesPluginsMetadata,he.forms,he.entitiesVaults,null,he.KongIcons,he.Kongponents,he.entitiesRedisConfigurations,null,he.core$1,he.monaco,he.entitiesPluginsIcon))})(this,function(he,n,ce,Zo,no,Re,H,ve,Jo,JR,Ee,Ie,oo,QR,Je,pm,ro){"use strict";var XR=Object.defineProperty;var ZR=(he,n,ce)=>n in he?XR(he,n,{enumerable:!0,configurable:!0,writable:!0,value:ce}):he[n]=ce;var Ke=(he,n,ce)=>ZR(he,typeof n!="symbol"?n+"":n,ce);function mm(e){const t=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(t,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const Qo=mm(pm),je={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here."}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service. "},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Gateway Service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Consumer Group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View Advanced Parameters",hide:"Hide Advanced Parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"All of these parameters are required: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Configure parameters for this plugin by using a form or a YAML file."}}},"free-form":{"ai-mcp":{tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request Callout",by_lua_placeholder:"Enter Lua script here..."},redis_partial:{redis_partial_modal_title:"New shared configuration",partial_created_success_message:"Successfully created a new Redis configuration."},datakit:{description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Configure this plugin by using the flow editor.",description_example:"Start with a use case:",examples:{authenticate:"Authenticate Kong to a third-party service",combine:"Combine multiple API responses",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow Editor",name:"Datakit Flow Editor",cta:"Go to flow editor",done:"Done",view_docs:"View Docs",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to Plugin configuration",node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The jq node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return a response directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway configuration data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Define static values to use for call nodes",description:"Emits static values to be used as inputs for other nodes. The static node can help you with hardcoding some known value for an input."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."}},node_properties:{name:"Name",Configuration:"Configuration",input:{placeholder:"Select output(s)",add_button:"Add an input"},input_name:{label:"Input Name",placeholder:"Input Name"},timeout:{label:"Timeout(s)"},jq:{label:"jq script"},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}}},code_editor:{mode:"Code Editor"}},vault_picker:{component_error:"The vault secret picker is not available"}}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",open_source:"open source",enterprise:"enterprise",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."},type_label:{host_port:"Host/Port",sentinel:"Sentinel",cluster:"Cluster"}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}},sp:{window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error Message",code_placeholder:"Code Message",message_placeholder:"Error Message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
1
+ (function(he,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("@vueuse/core"),require("monaco-editor"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","@vueuse/core","monaco-editor","@kong-ui-public/entities-plugins-icon"],t):(he=typeof globalThis<"u"?globalThis:he||self,t(he["kong-ui-public-entities-plugins"]={},he.Vue,he["kong-ui-public-entities-shared"],he.marked,he.VueRouter,he["kong-ui-public-i18n"],he.entitiesPluginsMetadata,he.forms,he.entitiesVaults,null,he.KongIcons,he.Kongponents,he.entitiesRedisConfigurations,null,he.core$1,he.monaco,he.entitiesPluginsIcon))})(this,function(he,t,de,Ho,Qn,Re,j,Ne,Yo,cR,Ee,Te,eo,dR,at,Xp,to){"use strict";var lR=Object.defineProperty;var sR=(he,t,de)=>t in he?lR(he,t,{enumerable:!0,configurable:!0,writable:!0,value:de}):he[t]=de;var Ke=(he,t,de)=>sR(he,typeof t!="symbol"?t+"":t,de);function Zp(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 Wo=Zp(Xp),je={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here."}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service. "},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Gateway Service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Consumer Group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View Advanced Parameters",hide:"Hide Advanced Parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"All of these parameters are required: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Configure parameters for this plugin by using a form or a YAML file."}}},"free-form":{"ai-mcp":{tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request Callout",by_lua_placeholder:"Enter Lua script here..."},redis_partial:{redis_partial_modal_title:"New shared configuration",partial_created_success_message:"Successfully created a new Redis configuration."},datakit:{description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Configure this plugin by using the flow editor.",description_example:"Start with a use case:",examples:{authenticate:"Authenticate Kong to a third-party service",combine:"Combine multiple API responses",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow Editor",name:"Datakit Flow Editor",cta:"Go to flow editor",done:"Done",view_docs:"View Docs",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to Plugin configuration",node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The jq node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return a response directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway configuration data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Define static values to use for call nodes",description:"Emits static values to be used as inputs for other nodes. The static node can help you with hardcoding some known value for an input."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."}},node_properties:{name:"Name",Configuration:"Configuration",input:{placeholder:"Select output(s)",add_button:"Add an input"},input_name:{label:"Input Name",placeholder:"Input Name"},timeout:{label:"Timeout(s)"},jq:{label:"jq script"},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}},error:{invalid_connection:"Invalid connection"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can either connect all outputs from another node or select individual ones.",override:"Each input can connect to only one output, but one output can connect to many inputs."},proceed:"Yes, update"}},code_editor:{mode:"Code Editor"}},vault_picker:{component_error:"The vault secret picker is not available"}}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",open_source:"open source",enterprise:"enterprise",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."},type_label:{host_port:"Host/Port",sentinel:"Sentinel",cluster:"Cluster"}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}},sp:{window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window&#39;s counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request Limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error Message",code_placeholder:"Code Message",message_placeholder:"Error Message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
2
2
  If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
3
- will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function Se(){const e=Re.createI18n("en-us",je);return{i18n:e,i18nT:Re.i18nTComponent(e)}}function zl(){const{capitalize:e}=ce.useStringHelpers(),t=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var g,_,h;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:ce.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:ce.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:ce.ConfigurationSchemaType.Text,...u[p]};break;case"set":((g=m.elements)==null?void 0:g.type)==="string"&&(u[p]={type:ce.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":t.includes(p)?u[p]={type:ce.ConfigurationSchemaType.BadgeMethod,...u[p]}:((_=m.elements)==null?void 0:_.type)==="string"?m.encrypted?u[p]={type:ce.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:ce.ConfigurationSchemaType.BadgeTag,...u[p]}:((h=m.elements)==null?void 0:h.type)==="record"&&(u[p]={type:ce.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:ce.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:ce.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const g=m.split(".");g.reduce((_,h,b)=>_[h]||(_[h]=isNaN(g[b+1])?g.length-1===b?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",g=!1)=>{const _=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(h=>{h.match(_)&&delete u[h]}):g?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const g=u[m].$el;p=g.offsetHeight>p?g.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,g;if(u&&p){const _=(g=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:g.split(" ").length;return p>_}return!0}}}var er=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(er||{});const Hl=[H.PluginGroup.AUTHENTICATION,H.PluginGroup.AI,H.PluginGroup.SECURITY,H.PluginGroup.TRAFFIC_CONTROL,H.PluginGroup.SERVERLESS,H.PluginGroup.ANALYTICS_AND_MONITORING,H.PluginGroup.TRANSFORMATIONS,H.PluginGroup.LOGGING,H.PluginGroup.DEPLOYMENT,H.PluginGroup.WEBSOCKET,H.PluginGroup.CUSTOM_PLUGINS],Yl={[H.PluginGroup.AUTHENTICATION]:!1,[H.PluginGroup.AI]:!1,[H.PluginGroup.SECURITY]:!1,[H.PluginGroup.TRAFFIC_CONTROL]:!1,[H.PluginGroup.SERVERLESS]:!1,[H.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[H.PluginGroup.TRANSFORMATIONS]:!1,[H.PluginGroup.LOGGING]:!1,[H.PluginGroup.DEPLOYMENT]:!1,[H.PluginGroup.CUSTOM_PLUGINS]:!1};var Xt=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(Xt||{});const Zt=e=>{const t=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in t||(t.id={}),t},Jt={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"},Nn={getColumnFields:Zt,tags:Jt,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(e){const t=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"},...t},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...e}}}},Wl={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Jt}]},gm={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"}}]},Xl={fields:[{username:{}},{password:{inputType:"password"}},{tags:Jt}]},hm={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"}}]},ym={class:"field-wrapper"},_m=n.defineComponent({__name:"KeyAuthIdentityRealms",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(e,{expose:t,emit:o}){const r=e,i=o,{clearValidationErrors:a,value:l}=ve.composables.useAbstractFields({model:n.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=Oe.useI18n(),{t:c}=s,d={value:"current-cp",label:c("custom_field.key_auth_identity_realms.cp_label"),group:c("custom_field.key_auth_identity_realms.cp_group_label")},f=n.inject(ve.FORMS_CONFIG),{axiosInstance:u}=ce.useAxios(f==null?void 0:f.axiosRequestConfig),p=()=>{if((f==null?void 0:f.app)==="konnect"){const w=/\b(us|eu|au|me|in)\b/.exec((f==null?void 0:f.apiBaseUrl)||"");if(w)return{region:w[1]}}return{}},m=n.ref(!0),g=n.ref([d]),_=async()=>{if((f==null?void 0:f.app)==="konnect")try{m.value=!0;let w=`${f==null?void 0:f.apiBaseUrl}/v1/realms`;const y=[];do{const v=await u.get(w);v&&v.data&&v.data.data&&y.push(...v.data.data.map(k=>({value:k.id,label:k.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),w=v.data.meta.next?`${f==null?void 0:f.apiBaseUrl}${v.data.meta.next}`:null}while(w);g.value=[d,...y]}catch(w){console.error("Failed to fetch Konnect realms",w)}finally{m.value=!1}},h=n.computed(()=>l.value.map(w=>w.id||"current-cp")),b=w=>{const y=w.includes("current-cp")?[{scope:"cp",id:null}]:[],v=l.value.filter(({scope:T})=>T!=="cp").map(({id:T})=>T),k=w.filter(T=>T!=="current-cp"),O=(v.length!==k.length||v.some(T=>!k.includes(T))?k.filter(T=>!v.includes(T)):k).map(T=>({...p(),scope:"realm",id:T}));l.value=[...y,...O]};return n.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),n.onMounted(()=>{_()}),t({clearValidationErrors:a}),(w,y)=>{const v=n.resolveComponent("KMultiselect");return n.openBlock(),n.createElementBlock("div",ym,[n.createVNode(v,{items:g.value,loading:m.value,"model-value":h.value,"onUpdate:modelValue":b},null,8,["items","loading","model-value"])])}}}),we=(e,t)=>{const o=e.__vccOpts||e;for(const[r,i]of t)o[r]=i;return o},bm=we(_m,[["__scopeId","data-v-29b128ff"]]),Zl={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
4
- client. If missing, it will be generated for you.`}},{tags:Jt},{ttl:{help:"Time-to-live value for data"}}]},wm=e=>{var t;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:((t=e==null?void 0:e.experimentalRenders)==null?void 0:t.keyAuthIdentityRealms)??!1?n.markRaw(bm):null}}},Em={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},Jl={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 ve(){const e=Re.createI18n("en-us",je);return{i18n:e,i18nT:Re.i18nTComponent(e)}}function Dl(){const{capitalize:e}=de.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var h,b,g;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:de.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:de.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:de.ConfigurationSchemaType.Text,...u[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(u[p]={type:de.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:de.ConfigurationSchemaType.BadgeMethod,...u[p]}:((b=m.elements)==null?void 0:b.type)==="string"?m.encrypted?u[p]={type:de.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:de.ConfigurationSchemaType.BadgeTag,...u[p]}:((g=m.elements)==null?void 0:g.type)==="record"&&(u[p]={type:de.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:de.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:de.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((b,g,_)=>b[g]||(b[g]=isNaN(h[_+1])?h.length-1===_?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",h=!1)=>{const b=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(g=>{g.match(b)&&delete u[g]}):h?u[m]=null:delete u[m],Object.assign(u,p)},isObjectEmpty:u=>Object.keys(u).length===0,unsetNullForeignKey:(u,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(u)>-1&&p[u]===null&&(delete p[u],p[u.replace(".id","")]=null)},formatPluginFieldLabel:u=>e(u.replace(/_/g," ")),getTallestPluginCardHeight:u=>{let p=0;if(u.length)for(let m=0;m<u.length;m++){const h=u[m].$el;p=h.offsetHeight>p?h.offsetHeight:p}return p},getToggleVisibility:(u,p)=>{var m,h;if(u&&p){const b=(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>b}return!0}}}var Xo=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(Xo||{});const Ml=[j.PluginGroup.AUTHENTICATION,j.PluginGroup.AI,j.PluginGroup.SECURITY,j.PluginGroup.TRAFFIC_CONTROL,j.PluginGroup.SERVERLESS,j.PluginGroup.ANALYTICS_AND_MONITORING,j.PluginGroup.TRANSFORMATIONS,j.PluginGroup.LOGGING,j.PluginGroup.DEPLOYMENT,j.PluginGroup.WEBSOCKET,j.PluginGroup.CUSTOM_PLUGINS],Ll={[j.PluginGroup.AUTHENTICATION]:!1,[j.PluginGroup.AI]:!1,[j.PluginGroup.SECURITY]:!1,[j.PluginGroup.TRAFFIC_CONTROL]:!1,[j.PluginGroup.SERVERLESS]:!1,[j.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[j.PluginGroup.TRANSFORMATIONS]:!1,[j.PluginGroup.LOGGING]:!1,[j.PluginGroup.DEPLOYMENT]:!1,[j.PluginGroup.CUSTOM_PLUGINS]:!1};var Zt=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(Zt||{});const Jt=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},Qt={label:"Tags",name:"tags",type:"input",inputType:"text",valueType:"array",valueArrayType:"string",placeholder:"Enter list of tags",help:"An optional set of strings for grouping and filtering, separated by commas.",hint:"e.g. tag1, tag2, tag3"},Cn={getColumnFields:Jt,tags:Qt,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(e){const n=e.inputAttributes||{};return delete e.inputAttributes,{type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",newElementButtonLabelClasses:"kong-form-new-element-button-label",inputAttributes:{class:"form-control",style:{minWidth:"200px"},...n},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...e}}}},Fl={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:Qt}]},Jp={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"}}]},Ul={fields:[{username:{}},{password:{inputType:"password"}},{tags:Qt}]},Qp={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"}}]},em={class:"field-wrapper"},tm=t.defineComponent({__name:"KeyAuthIdentityRealms",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(e,{expose:n,emit:o}){const r=e,i=o,{clearValidationErrors:a,value:l}=Ne.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=$e.useI18n(),{t:c}=s,d={value:"current-cp",label:c("custom_field.key_auth_identity_realms.cp_label"),group:c("custom_field.key_auth_identity_realms.cp_group_label")},f=t.inject(Ne.FORMS_CONFIG),{axiosInstance:u}=de.useAxios(f==null?void 0:f.axiosRequestConfig),p=()=>{if((f==null?void 0:f.app)==="konnect"){const w=/\b(us|eu|au|me|in)\b/.exec((f==null?void 0:f.apiBaseUrl)||"");if(w)return{region:w[1]}}return{}},m=t.ref(!0),h=t.ref([d]),b=async()=>{if((f==null?void 0:f.app)==="konnect")try{m.value=!0;let w=`${f==null?void 0:f.apiBaseUrl}/v1/realms`;const y=[];do{const N=await u.get(w);N&&N.data&&N.data.data&&y.push(...N.data.data.map(k=>({value:k.id,label:k.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),w=N.data.meta.next?`${f==null?void 0:f.apiBaseUrl}${N.data.meta.next}`:null}while(w);h.value=[d,...y]}catch(w){console.error("Failed to fetch Konnect realms",w)}finally{m.value=!1}},g=t.computed(()=>l.value.map(w=>w.id||"current-cp")),_=w=>{const y=w.includes("current-cp")?[{scope:"cp",id:null}]:[],N=l.value.filter(({scope:P})=>P!=="cp").map(({id:P})=>P),k=w.filter(P=>P!=="current-cp"),I=(N.length!==k.length||N.some(P=>!k.includes(P))?k.filter(P=>!N.includes(P)):k).map(P=>({...p(),scope:"realm",id:P}));l.value=[...y,...I]};return t.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),t.onMounted(()=>{b()}),n({clearValidationErrors:a}),(w,y)=>{const N=t.resolveComponent("KMultiselect");return t.openBlock(),t.createElementBlock("div",em,[t.createVNode(N,{items:h.value,loading:m.value,"model-value":g.value,"onUpdate:modelValue":_},null,8,["items","loading","model-value"])])}}}),we=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},nm=we(tm,[["__scopeId","data-v-29b128ff"]]),Kl={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
4
+ client. If missing, it will be generated for you.`}},{tags:Qt},{ttl:{help:"Time-to-live value for data"}}]},om=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(nm):null}}},rm={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},jl={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:Jt}]},km={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Cm={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:Qt}]},im={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},am={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:Jt}]},vm={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",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"}},{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"}}]},Ql={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:Qt}]},lm={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",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"}},{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"}}]},Gl={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:Nn.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:Nn.tags}]},Nm={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"]}}]},es={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:Jt},{ttl:{help:"Time-to-live value for data"}}]},Sm=e=>(e==null?void 0:e.app)==="kongManager"?{shamefullyTransformPayload:({payload:t})=>{(e!=null&&e.credential&&typeof t.ttl!="number"||Number.isNaN(t.ttl))&&(t.ttl=0)}}:{},xm={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},Tt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",isEnterprise:!1,nameKey:"plugins.meta.jwt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",isEnterprise:!1,nameKey:"plugins.meta.cors.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",isEnterprise:!0,nameKey:"plugins.meta.opa.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",isEnterprise:!1,nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",isEnterprise:!0,nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",isEnterprise:!0,nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",isEnterprise:!0,nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",isEnterprise:!0,nameKey:"plugins.meta.post-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",isEnterprise:!1,nameKey:"plugins.meta.datadog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",isEnterprise:!0,nameKey:"plugins.meta.collector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",isEnterprise:!0,nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",isEnterprise:!1,nameKey:"plugins.meta.file-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",isEnterprise:!1,nameKey:"plugins.meta.http-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",isEnterprise:!1,nameKey:"plugins.meta.loggly.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",isEnterprise:!1,nameKey:"plugins.meta.statsd.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",isEnterprise:!1,nameKey:"plugins.meta.syslog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",isEnterprise:!1,nameKey:"plugins.meta.session.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",isEnterprise:!1,nameKey:"plugins.meta.acme.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",isEnterprise:!0,nameKey:"plugins.meta.saml.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.json-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",isEnterprise:!0,nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",isEnterprise:!0,nameKey:"plugins.meta.confluent.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",isEnterprise:!1,nameKey:"plugins.meta.redirect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",isEnterprise:!1,nameKey:"plugins.meta.kafka-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",isEnterprise:!1,nameKey:"plugins.meta.confluent-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",isEnterprise:!1,nameKey:"plugins.meta.request-callout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",isEnterprise:!1,nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",isEnterprise:!1,nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",isEnterprise:!1,nameKey:"plugins.meta.datakit.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",isEnterprise:!1,nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",isEnterprise:!1,nameKey:"plugins.meta.solace-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",isEnterprise:!1,nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]}},Sn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Wl,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Zt(Wl),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Xl,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Zt(Xl)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Zl,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Zt(Zl)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:es,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Zt(es)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Ql,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Zt(Ql)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Jl,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Zt(Jl)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Cm,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Am={acls:gm,basicauth_credentials:hm,keyauth_credentials:Em,keyauth_enc_credentials:xm,oauth2_credentials:Nm,hmacauth_credentials:km,jwt_secrets:vm},Tm=()=>{const{i18n:{t:e}}=Se(),t={},o={};for(const[i,a]of Object.entries(Tt))t[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(Sn))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:t,credentialMetaData:o,credentialSchemas:Sn,getDisplayName:i=>{var a;return((a=t[i])==null?void 0:a.name)||i}}},io={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Im={"config-prompts-prepend":{...io,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...io,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},Pm={"config-templates":{...io,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},Om={shamefullyTransformPayload:({originalModel:e,model:t,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&t[l]?!0:e[l]===t[l]?!1:e[l]===null?t[l]!==""&&!Number.isNaN(t[l]):!0},a=l=>Object.keys(e).some(s=>s.startsWith(l)&&i(s));a("config-embeddings")||(o.config.embeddings=null),a("config-vectordb")||(o.config.vectordb=null)}},$m={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Bm={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:Nn.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},Pe={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},tr={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Vm={"config-metrics":{...tr,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"}]}}}},Rm={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},Dm={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Mm={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Fm={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Lm={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},ts=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,t)=>({...e,[t]:Nn.fields.arrayItems({newElementButtonLabel:"Add"})}),Lm),nr={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},Um={"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":{}},Km=["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,t)=>({...e,[t]:Nn.fields.arrayItems({newElementButtonLabel:"Add"})}),Um),ns={"config-add-json":{...Pe,label:"Config.Add.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Pe,label:"Config.Append.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Pe,label:"Config.Remove.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Pe,label:"Config.Rename.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Pe,label:"Config.Replace.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}}},jm={...ns,"config-allow-json":{...Pe,label:"Config.Allow.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Pe,label:"Config.Transform.Functions",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Pe,label:"Config.Transform.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}}},Gm={"config-rules":{...io,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},qm={"config-session_redis_cluster_nodes":{...io,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},zm={"config-metrics":{...tr,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"]}]}}}},Hm={"config-metrics":{...tr,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"]}]}}}},Ym={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Wm={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}},Qt=e=>{var o,r;const t=(r=(o=e==null?void 0:e.confluent)==null?void 0:o.authentication)==null?void 0:r.basic;t&&!t.password&&!t.username&&delete e.confluent.authentication.basic},Xm={"config-message_by_lua_functions":{...Pe,inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var t;Qt((t=e.config)==null?void 0:t.schema_registry)}},Zm={"config-message_by_lua_functions":{...Pe,inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var t;Qt((t=e.config)==null?void 0:t.schema_registry)}},Jm={shamefullyTransformPayload:({payload:e})=>{var t,o,r;Qt((t=e.config)==null?void 0:t.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Qt(i==null?void 0:i.schema_registry)})}},Qm={shamefullyTransformPayload:({payload:e})=>{var t,o,r;Qt((t=e.config)==null?void 0:t.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Qt(i==null?void 0:i.schema_registry)})}},eg={shamefullyTransformPayload:({payload:e})=>{var t;Qt((t=e.config)==null?void 0:t.schema_registry)}},tg={"config-static_tags":{...tr,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"}]}}}},ng={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp":"AIMcpForm"};function os(e,t){const o=ng[e];if(typeof o=="string")return o;if(t.includes(e))return o.component}const Ti=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),rs={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR")};function is(){return n.inject(Ti,[])}function og(e){n.provide(Ti,e)}const rg=(e,t)=>{const o=e.model.startsWith("config-"),r=t.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},as=(e,t)=>(e.order??0)-(t.order??0),ls=(e,t)=>rg(e,t)||as(e,t)||e.model.localeCompare(t.model),Oe={useI18n:Se,usePluginMetaData:Tm,usePluginHelpers:zl,useSchemas:e=>{const{capitalize:t}=ce.useStringHelpers(),{convertToDotNotation:o}=zl(),{i18n:{t:r}}=Se(),i=is(),a={"application-registration":{overwriteDefault:!0,formSchema:{...Bm}},datadog:{...Vm},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...zm},"statsd-advanced":{...Hm},"route-by-header":{...Gm},"ai-prompt-decorator":{...Im},"ai-prompt-template":{...Pm},"ai-proxy-advanced":{...Om},"ai-llm-as-judge":{...$m},"vault-auth":{...Wm},"oas-validation":{...Fm},mocking:{...Mm},"rate-limiting":{...nr},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":nr["config-consumer_groups"]}:{...nr},"graphql-rate-limiting-advanced":{...Rm},"injection-protection":{...Dm},"response-ratelimiting":{...nr},"pre-function":{...ts},"post-function":{...ts},"request-transformer-advanced":{...Km},"response-transformer":{...ns},"response-transformer-advanced":{...jm},zipkin:{...tg},"upstream-oauth":{...Ym},saml:{...qm},"kafka-upstream":{...Xm},"key-auth":wm(e),"key-auth-enc":Sm(e),confluent:{...Zm},"confluent-consume":{...Jm},"kafka-consume":{...Qm},"kafka-log":{...eg}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(E,R,O)=>{let T={};(R||E)&&(T=R||(E.fields?E.fields:E));const q=l().concat(E.blacklist?E.blacklist:[]),j=Object.keys(T).filter(B=>!q.includes(B)),A=j.indexOf("comparator");A>-1&&j.splice(A,1);let I={fields:[]};const C={};j.forEach(B=>{d(T[B],B,T,C,I,O)});const D=C.name,P=Tt[D],L=[],F=B=>{const $=["cluster-cache"];for(const G of $)if(B.model.includes(G))return!1;return new RegExp("(?<=-redis-).*").test(B.model)};if(I._supported_redis_partial_type=E._supported_redis_partial_type,I._redis_partial_path=E._redis_partial_path,ve.getSharedFormName(D)||os(D,i)||P!=null&&P.useLegacyForm||e!=null&&e.credential){if(P!=null&&P.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&E._supported_redis_partial_type){for(const B of I.fields)if(F(B)){L.push(B);continue}I.fields=I.fields.filter(B=>!F(B)),L.length&&I.fields.push({id:"_redis",fields:L,model:"__redis_partial",pluginType:E._isCustomPlugin?"custom":"bundled",redisType:E._supported_redis_partial_type,redisPath:E._redis_partial_path})}I.fields.sort((B,$)=>(B.order=B.order||0,$.order=$.order||0,B.order-$.order))}else{const B=[],$=[],G=[],ee=[],re={};if(P!=null&&P.fieldRules){const z=[...P.fieldRules.atLeastOneOf??[],...P.fieldRules.onlyOneOf??[],...P.fieldRules.mutuallyRequired??[]];if(P.fieldRules.onlyOneOfMutuallyRequired)for(const Z of P.fieldRules.onlyOneOfMutuallyRequired)z.push(...Z);for(const Z of z)for(const ie of Z)re[ie.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const z of I.fields){if(e!=null&&e.enableRedisPartial&&E._supported_redis_partial_type&&F(z)){ee.push(z);continue}if(z.pinned){B.push(z);continue}if(z.required||re[z.model]!==void 0){re[z.model]===!1&&(re[z.model]=!0),$.push(z);continue}G.push(z)}ee.length&&G.push({id:"_redis",fields:ee,model:"__redis_partial",pluginType:E._isCustomPlugin?"custom":"bundled",redisType:E._supported_redis_partial_type,redisPath:E._redis_partial_path,order:-1});const J=Object.entries(re).filter(([,z])=>!z).map(([z])=>z.replace(/-/g,".").replace(/_/g,"-"));J.length>0&&console.warn(`Unknown checked fields for plugin ${D}: ${J.join(", ")}`);const ne=[];B.length>0&&ne.push({fields:B.sort(as)}),($.length>0||G.length>0)&&ne.push({fields:$.sort(ls),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:G.sort(ls),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"}}),I={groups:ne}}return{schema:I,model:C,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=E=>Array.isArray(E.default)||E.default!=null&&typeof E.default!="object"&&E.default!=="function",d=(E,R,O,T,q,j)=>{const A=c(E);return T[R]=A?E.default:null,E.id=R,E.model=R,E.fields&&E.type==="record"?u(E,R,O,T,q,j):(O[R]=E,v(E,T),j&&j[R]&&f(O[R],j[R]),q.fields.push(E)),O},f=(E,R)=>(R&&(Object.assign(E,R),R.label&&(E.label=R.label)),E),u=(E,R,O,T,q,j)=>{E.fields.forEach(A=>{Object.keys(A).forEach(I=>{const C=A[I];O=d(C,R+"-"+I,O,T,q,j)})})},p=(E,R)=>{E.type="input",E.inputType="hidden",E.styleClasses="kong-form-hidden-field-wrapper";const O=e==null?void 0:e.entityId;R[E.model]=O?{id:O}:null},m=E=>{E.type="input",E.inputType="number",E.between&&E.between.length===2&&(E.min=E.between[0],E.max=E.between[1])},g=E=>{Object.prototype.hasOwnProperty.call(E,"one_of")?(E.type="select",E.values=E.one_of,E.selectOptions={hideNoneSelectedText:!0}):(E.type="input",E.inputType="text")},_=E=>{E.type="checkbox",E.default=!0,E.required=!1},h=E=>{if(E.type="object-advanced",E.values.type==="array"){const{type:R}=E.values.elements||{};E.schema={fields:[{schema:{fields:[{...Pe,model:E.model,valueArrayType:R==="integer"?"number":R||"string",inputAttributes:{...Pe.inputAttributes,type:R==="integer"?"number":"text",inputMode:R==="integer"?"numeric":"text"}}]}}]}}else E.values.fields&&(E.schema={fields:[{type:"object",model:"object",schema:{fields:E.values.fields.map(R=>{const O=Object.keys(R)[0];return{model:O,type:"input",label:t(O),placeholder:O,inputType:R[O].type}})}}]})},b=E=>E.fields.reduce((R,O)=>(O.fields&&O.fields.forEach(T=>{R[T.model]=T}),O.model&&(R[O.model]=O),R),{}),w=(E,R)=>{if(!ve.customFields.includes(E.model))return;const O=b(E);ve.customFields.forEach(T=>{Object.keys(O).forEach(q=>{const j=c(O[q]);R[q]=j?O[q].default:null}),delete R[T]})},y=(E,R)=>E.inputType==="hidden"?"":o(t(E.label||R.replace(/_/g," "))),v=(E,R)=>{switch(w(E,R),E.type){case"foreign":p(E,R);break;case"number":m(E),E.attributes={step:"any"};break;case"integer":m(E);break;case"string":g(E);break;case"boolean":_(E);break;case"map":h(E);break}E.inputType==="foreign"&&p(E,R),E.label=y(E,E.model)};function k(E,R){if(R==null||R.type&&R.type!=="record"||typeof E!="object"||E==null)return E;const O={};for(const T of R.fields){const q=Object.keys(T)[0],j=T[q];j.type==="record"?O[q]=k(E[q],j):j.type==="array"&&Array.isArray(E[q])&&j.elements.type==="record"?O[q]=E[q].map(A=>k(A,j.elements)):O[q]=E[q]}return O}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:Nn,pruneRecord:k}},useExperimentalFreeForms:is,useProvideExperimentalFreeForms:og},ze="/v2/control-planes/{controlPlaneId}/core-entities",We="/{workspace}",Be={list:{konnect:{all:`${ze}/plugins`,forEntity:`${ze}/{entityType}/{entityId}/plugins`},kongManager:{all:`${We}/plugins`,forEntity:`${We}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ze}/v1/available-plugins`,streamingCustomPlugins:`${ze}/custom-plugins`,schemaCustomPluginItem:`${ze}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ze}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${We}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ze}/plugins`,forEntity:`${ze}/{entityType}/{entityId}/plugins`},edit:{all:`${ze}/plugins/{id}`,forEntity:`${ze}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ze}/{resourceEndpoint}`,edit:`${ze}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${ze}/v1/schemas/json/plugin/validate`,entityGetOne:`${ze}/{entity}/{id}`,entityGetAll:`${ze}/{entity}?size=1000`},kongManager:{create:{all:`${We}/plugins`,forEntity:`${We}/{entityType}/{entityId}/plugins`},edit:{all:`${We}/plugins/{id}`,forEntity:`${We}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${We}/schemas/plugins/{plugin}`,credential:{create:`${We}/{resourceEndpoint}`,edit:`${We}/{resourceEndpoint}/{id}`},credentialSchema:`${We}/schemas/{plugin}`,validate:`${We}/schemas/plugins/validate`,entityGetOne:`${We}/{entity}/{id}`,entityGetAll:`${We}/{entity}`}},item:{konnect:{all:`${ze}/plugins/{id}`,forEntity:`${ze}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${We}/plugins/{id}`,forEntity:`${We}/{entityType}/{entityId}/plugins/{id}`}}},ig={key:0},ag=we(n.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const t=e,{formatPluginFieldLabel:o}=Oe.usePluginHelpers(),{i18n:{t:r}}=Oe.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=n.computed(()=>{const s=[];if(t.rules.atLeastOneOf)for(const c of t.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(t.rules.onlyOneOf)for(const c of t.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(t.rules.mutuallyRequired)for(const c of t.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=n.resolveComponent("KAlert");return n.openBlock(),n.createBlock(d,{class:"plugin-field-rule-alerts"},{default:n.withCtx(()=>[n.createElementVNode("ul",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(l.value,(f,u)=>(n.openBlock(),n.createElementBlock("li",{key:`simple-alert-${u}`},n.toDisplayString(f),1))),128)),t.rules.onlyOneOfMutuallyRequired&&t.rules.onlyOneOfMutuallyRequired.length>0?(n.openBlock(),n.createElementBlock("li",ig,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(t.rules.onlyOneOfMutuallyRequired,(f,u)=>(n.openBlock(),n.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[n.createElementVNode("div",null,n.toDisplayString(n.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),n.createElementVNode("ul",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(f,(p,m)=>(n.openBlock(),n.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},n.toDisplayString(i(p)),1))),128))])]))),128))])):n.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]);var ss=typeof global=="object"&&global&&global.Object===Object&&global,lg=typeof self=="object"&&self&&self.Object===Object&&self,bt=ss||lg||Function("return this")(),lt=bt.Symbol,cs=Object.prototype,sg=cs.hasOwnProperty,cg=cs.toString,ao=lt?lt.toStringTag:void 0;function dg(e){var t=sg.call(e,ao),o=e[ao];try{e[ao]=void 0;var r=!0}catch{}var i=cg.call(e);return r&&(t?e[ao]=o:delete e[ao]),i}var ug=Object.prototype,fg=ug.toString;function pg(e){return fg.call(e)}var mg="[object Null]",gg="[object Undefined]",ds=lt?lt.toStringTag:void 0;function en(e){return e==null?e===void 0?gg:mg:ds&&ds in Object(e)?dg(e):pg(e)}function It(e){return e!=null&&typeof e=="object"}var hg="[object Symbol]";function Ii(e){return typeof e=="symbol"||It(e)&&en(e)==hg}function us(e,t){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=t(e[o],o,e);return i}var ft=Array.isArray,fs=lt?lt.prototype:void 0,ps=fs?fs.toString:void 0;function ms(e){if(typeof e=="string")return e;if(ft(e))return us(e,ms)+"";if(Ii(e))return ps?ps.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function tn(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}function yg(e){return e}var _g="[object AsyncFunction]",bg="[object Function]",wg="[object GeneratorFunction]",Eg="[object Proxy]";function or(e){if(!tn(e))return!1;var t=en(e);return t==bg||t==wg||t==_g||t==Eg}var Pi=bt["__core-js_shared__"],gs=function(){var e=/[^.]+$/.exec(Pi&&Pi.keys&&Pi.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function kg(e){return!!gs&&gs in e}var Cg=Function.prototype,vg=Cg.toString;function nn(e){if(e!=null){try{return vg.call(e)}catch{}try{return e+""}catch{}}return""}var Ng=/[\\^$.*+?()[\]{}|]/g,Sg=/^\[object .+?Constructor\]$/,xg=Function.prototype,Ag=Object.prototype,Tg=xg.toString,Ig=Ag.hasOwnProperty,Pg=RegExp("^"+Tg.call(Ig).replace(Ng,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Og(e){if(!tn(e)||kg(e))return!1;var t=or(e)?Pg:Sg;return t.test(nn(e))}function $g(e,t){return e==null?void 0:e[t]}function on(e,t){var o=$g(e,t);return Og(o)?o:void 0}var Oi=on(bt,"WeakMap"),hs=Object.create,Bg=function(){function e(){}return function(t){if(!tn(t))return{};if(hs)return hs(t);e.prototype=t;var o=new e;return e.prototype=void 0,o}}();function Vg(e,t,o){switch(o.length){case 0:return e.call(t);case 1:return e.call(t,o[0]);case 2:return e.call(t,o[0],o[1]);case 3:return e.call(t,o[0],o[1],o[2])}return e.apply(t,o)}function Rg(e,t){var o=-1,r=e.length;for(t||(t=Array(r));++o<r;)t[o]=e[o];return t}var Dg=800,Mg=16,Fg=Date.now;function Lg(e){var t=0,o=0;return function(){var r=Fg(),i=Mg-(r-o);if(o=r,i>0){if(++t>=Dg)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}function Ug(e){return function(){return e}}var rr=function(){try{var e=on(Object,"defineProperty");return e({},"",{}),e}catch{}}(),Kg=rr?function(e,t){return rr(e,"toString",{configurable:!0,enumerable:!1,value:Ug(t),writable:!0})}:yg,jg=Lg(Kg);function Gg(e,t){for(var o=-1,r=e==null?0:e.length;++o<r&&t(e[o],o,e)!==!1;);return e}var qg=9007199254740991,zg=/^(?:0|[1-9]\d*)$/;function $i(e,t){var o=typeof e;return t=t??qg,!!t&&(o=="number"||o!="symbol"&&zg.test(e))&&e>-1&&e%1==0&&e<t}function ys(e,t,o){t=="__proto__"&&rr?rr(e,t,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[t]=o}function Bi(e,t){return e===t||e!==e&&t!==t}var Hg=Object.prototype,Yg=Hg.hasOwnProperty;function Vi(e,t,o){var r=e[t];(!(Yg.call(e,t)&&Bi(r,o))||o===void 0&&!(t in e))&&ys(e,t,o)}function lo(e,t,o,r){var i=!o;o||(o={});for(var a=-1,l=t.length;++a<l;){var s=t[a],c=void 0;c===void 0&&(c=e[s]),i?ys(o,s,c):Vi(o,s,c)}return o}var _s=Math.max;function Wg(e,t,o){return t=_s(t===void 0?e.length-1:t,0),function(){for(var r=arguments,i=-1,a=_s(r.length-t,0),l=Array(a);++i<a;)l[i]=r[t+i];i=-1;for(var s=Array(t+1);++i<t;)s[i]=r[i];return s[t]=o(l),Vg(e,this,s)}}var Xg=9007199254740991;function Ri(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Xg}function Di(e){return e!=null&&Ri(e.length)&&!or(e)}var Zg=Object.prototype;function ir(e){var t=e&&e.constructor,o=typeof t=="function"&&t.prototype||Zg;return e===o}function Jg(e,t){for(var o=-1,r=Array(e);++o<e;)r[o]=t(o);return r}var Qg="[object Arguments]";function bs(e){return It(e)&&en(e)==Qg}var ws=Object.prototype,eh=ws.hasOwnProperty,th=ws.propertyIsEnumerable,ar=bs(function(){return arguments}())?bs:function(e){return It(e)&&eh.call(e,"callee")&&!th.call(e,"callee")};function nh(){return!1}var Es=typeof he=="object"&&he&&!he.nodeType&&he,ks=Es&&typeof module=="object"&&module&&!module.nodeType&&module,oh=ks&&ks.exports===Es,Cs=oh?bt.Buffer:void 0,rh=Cs?Cs.isBuffer:void 0,so=rh||nh,ih="[object Arguments]",ah="[object Array]",lh="[object Boolean]",sh="[object Date]",ch="[object Error]",dh="[object Function]",uh="[object Map]",fh="[object Number]",ph="[object Object]",mh="[object RegExp]",gh="[object Set]",hh="[object String]",yh="[object WeakMap]",_h="[object ArrayBuffer]",bh="[object DataView]",wh="[object Float32Array]",Eh="[object Float64Array]",kh="[object Int8Array]",Ch="[object Int16Array]",vh="[object Int32Array]",Nh="[object Uint8Array]",Sh="[object Uint8ClampedArray]",xh="[object Uint16Array]",Ah="[object Uint32Array]",$e={};$e[wh]=$e[Eh]=$e[kh]=$e[Ch]=$e[vh]=$e[Nh]=$e[Sh]=$e[xh]=$e[Ah]=!0,$e[ih]=$e[ah]=$e[_h]=$e[lh]=$e[bh]=$e[sh]=$e[ch]=$e[dh]=$e[uh]=$e[fh]=$e[ph]=$e[mh]=$e[gh]=$e[hh]=$e[yh]=!1;function Th(e){return It(e)&&Ri(e.length)&&!!$e[en(e)]}function Mi(e){return function(t){return e(t)}}var vs=typeof he=="object"&&he&&!he.nodeType&&he,co=vs&&typeof module=="object"&&module&&!module.nodeType&&module,Ih=co&&co.exports===vs,Fi=Ih&&ss.process,xn=function(){try{var e=co&&co.require&&co.require("util").types;return e||Fi&&Fi.binding&&Fi.binding("util")}catch{}}(),Ns=xn&&xn.isTypedArray,Li=Ns?Mi(Ns):Th,Ph=Object.prototype,Oh=Ph.hasOwnProperty;function Ss(e,t){var o=ft(e),r=!o&&ar(e),i=!o&&!r&&so(e),a=!o&&!r&&!i&&Li(e),l=o||r||i||a,s=l?Jg(e.length,String):[],c=s.length;for(var d in e)(t||Oh.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||$i(d,c)))&&s.push(d);return s}function xs(e,t){return function(o){return e(t(o))}}var $h=xs(Object.keys,Object),Bh=Object.prototype,Vh=Bh.hasOwnProperty;function As(e){if(!ir(e))return $h(e);var t=[];for(var o in Object(e))Vh.call(e,o)&&o!="constructor"&&t.push(o);return t}function Ui(e){return Di(e)?Ss(e):As(e)}function Rh(e){var t=[];if(e!=null)for(var o in Object(e))t.push(o);return t}var Dh=Object.prototype,Mh=Dh.hasOwnProperty;function Fh(e){if(!tn(e))return Rh(e);var t=ir(e),o=[];for(var r in e)r=="constructor"&&(t||!Mh.call(e,r))||o.push(r);return o}function Ki(e){return Di(e)?Ss(e,!0):Fh(e)}var Lh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Uh=/^\w*$/;function Kh(e,t){if(ft(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Ii(e)?!0:Uh.test(e)||!Lh.test(e)||t!=null&&e in Object(t)}var uo=on(Object,"create");function jh(){this.__data__=uo?uo(null):{},this.size=0}function Gh(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var qh="__lodash_hash_undefined__",zh=Object.prototype,Hh=zh.hasOwnProperty;function Yh(e){var t=this.__data__;if(uo){var o=t[e];return o===qh?void 0:o}return Hh.call(t,e)?t[e]:void 0}var Wh=Object.prototype,Xh=Wh.hasOwnProperty;function Zh(e){var t=this.__data__;return uo?t[e]!==void 0:Xh.call(t,e)}var Jh="__lodash_hash_undefined__";function Qh(e,t){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=uo&&t===void 0?Jh:t,this}function rn(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}rn.prototype.clear=jh,rn.prototype.delete=Gh,rn.prototype.get=Yh,rn.prototype.has=Zh,rn.prototype.set=Qh;function ey(){this.__data__=[],this.size=0}function lr(e,t){for(var o=e.length;o--;)if(Bi(e[o][0],t))return o;return-1}var ty=Array.prototype,ny=ty.splice;function oy(e){var t=this.__data__,o=lr(t,e);if(o<0)return!1;var r=t.length-1;return o==r?t.pop():ny.call(t,o,1),--this.size,!0}function ry(e){var t=this.__data__,o=lr(t,e);return o<0?void 0:t[o][1]}function iy(e){return lr(this.__data__,e)>-1}function ay(e,t){var o=this.__data__,r=lr(o,e);return r<0?(++this.size,o.push([e,t])):o[r][1]=t,this}function Pt(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}Pt.prototype.clear=ey,Pt.prototype.delete=oy,Pt.prototype.get=ry,Pt.prototype.has=iy,Pt.prototype.set=ay;var fo=on(bt,"Map");function ly(){this.size=0,this.__data__={hash:new rn,map:new(fo||Pt),string:new rn}}function sy(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function sr(e,t){var o=e.__data__;return sy(t)?o[typeof t=="string"?"string":"hash"]:o.map}function cy(e){var t=sr(this,e).delete(e);return this.size-=t?1:0,t}function dy(e){return sr(this,e).get(e)}function uy(e){return sr(this,e).has(e)}function fy(e,t){var o=sr(this,e),r=o.size;return o.set(e,t),this.size+=o.size==r?0:1,this}function Ot(e){var t=-1,o=e==null?0:e.length;for(this.clear();++t<o;){var r=e[t];this.set(r[0],r[1])}}Ot.prototype.clear=ly,Ot.prototype.delete=cy,Ot.prototype.get=dy,Ot.prototype.has=uy,Ot.prototype.set=fy;var py="Expected a function";function ji(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(py);var o=function(){var r=arguments,i=t?t.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(ji.Cache||Ot),o}ji.Cache=Ot;var my=500;function gy(e){var t=ji(e,function(r){return o.size===my&&o.clear(),r}),o=t.cache;return t}var hy=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,yy=/\\(\\)?/g,_y=gy(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(hy,function(o,r,i,a){t.push(i?a.replace(yy,"$1"):r||o)}),t});function cr(e){return e==null?"":ms(e)}function An(e,t){return ft(e)?e:Kh(e,t)?[e]:_y(cr(e))}function dr(e){if(typeof e=="string"||Ii(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}function Gi(e,t){t=An(t,e);for(var o=0,r=t.length;e!=null&&o<r;)e=e[dr(t[o++])];return o&&o==r?e:void 0}function Ts(e,t,o){var r=e==null?void 0:Gi(e,t);return r===void 0?o:r}function qi(e,t){for(var o=-1,r=t.length,i=e.length;++o<r;)e[i+o]=t[o];return e}var Is=lt?lt.isConcatSpreadable:void 0;function by(e){return ft(e)||ar(e)||!!(Is&&e&&e[Is])}function wy(e,t,o,r,i){var a=-1,l=e.length;for(o||(o=by),i||(i=[]);++a<l;){var s=e[a];o(s)?qi(i,s):i[i.length]=s}return i}function Ey(e){var t=e==null?0:e.length;return t?wy(e):[]}function Ps(e){return jg(Wg(e,void 0,Ey),e+"")}var zi=xs(Object.getPrototypeOf,Object),ky="[object Object]",Cy=Function.prototype,vy=Object.prototype,Os=Cy.toString,Ny=vy.hasOwnProperty,Sy=Os.call(Object);function xy(e){if(!It(e)||en(e)!=ky)return!1;var t=zi(e);if(t===null)return!0;var o=Ny.call(t,"constructor")&&t.constructor;return typeof o=="function"&&o instanceof o&&Os.call(o)==Sy}function $s(e,t,o){var r=-1,i=e.length;t<0&&(t=-t>i?0:i+t),o=o>i?i:o,o<0&&(o+=i),i=t>o?0:o-t>>>0,t>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+t];return a}function Ay(e,t,o){var r=e.length;return o=o===void 0?r:o,!t&&o>=r?e:$s(e,t,o)}var Ty="\\ud800-\\udfff",Iy="\\u0300-\\u036f",Py="\\ufe20-\\ufe2f",Oy="\\u20d0-\\u20ff",$y=Iy+Py+Oy,By="\\ufe0e\\ufe0f",Vy="\\u200d",Ry=RegExp("["+Vy+Ty+$y+By+"]");function Bs(e){return Ry.test(e)}function Dy(e){return e.split("")}var Vs="\\ud800-\\udfff",My="\\u0300-\\u036f",Fy="\\ufe20-\\ufe2f",Ly="\\u20d0-\\u20ff",Uy=My+Fy+Ly,Ky="\\ufe0e\\ufe0f",jy="["+Vs+"]",Hi="["+Uy+"]",Yi="\\ud83c[\\udffb-\\udfff]",Gy="(?:"+Hi+"|"+Yi+")",Rs="[^"+Vs+"]",Ds="(?:\\ud83c[\\udde6-\\uddff]){2}",Ms="[\\ud800-\\udbff][\\udc00-\\udfff]",qy="\\u200d",Fs=Gy+"?",Ls="["+Ky+"]?",zy="(?:"+qy+"(?:"+[Rs,Ds,Ms].join("|")+")"+Ls+Fs+")*",Hy=Ls+Fs+zy,Yy="(?:"+[Rs+Hi+"?",Hi,Ds,Ms,jy].join("|")+")",Wy=RegExp(Yi+"(?="+Yi+")|"+Yy+Hy,"g");function Xy(e){return e.match(Wy)||[]}function Zy(e){return Bs(e)?Xy(e):Dy(e)}function Jy(e){return function(t){t=cr(t);var o=Bs(t)?Zy(t):void 0,r=o?o[0]:t.charAt(0),i=o?Ay(o,1).join(""):t.slice(1);return r[e]()+i}}var Qy=Jy("toUpperCase");function e_(e){return Qy(cr(e).toLowerCase())}function t_(){this.__data__=new Pt,this.size=0}function n_(e){var t=this.__data__,o=t.delete(e);return this.size=t.size,o}function o_(e){return this.__data__.get(e)}function r_(e){return this.__data__.has(e)}var i_=200;function a_(e,t){var o=this.__data__;if(o instanceof Pt){var r=o.__data__;if(!fo||r.length<i_-1)return r.push([e,t]),this.size=++o.size,this;o=this.__data__=new Ot(r)}return o.set(e,t),this.size=o.size,this}function $t(e){var t=this.__data__=new Pt(e);this.size=t.size}$t.prototype.clear=t_,$t.prototype.delete=n_,$t.prototype.get=o_,$t.prototype.has=r_,$t.prototype.set=a_;function l_(e,t){return e&&lo(t,Ui(t),e)}function s_(e,t){return e&&lo(t,Ki(t),e)}var Us=typeof he=="object"&&he&&!he.nodeType&&he,Ks=Us&&typeof module=="object"&&module&&!module.nodeType&&module,c_=Ks&&Ks.exports===Us,js=c_?bt.Buffer:void 0,Gs=js?js.allocUnsafe:void 0;function d_(e,t){if(t)return e.slice();var o=e.length,r=Gs?Gs(o):new e.constructor(o);return e.copy(r),r}function u_(e,t){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];t(l,o,e)&&(a[i++]=l)}return a}function qs(){return[]}var f_=Object.prototype,p_=f_.propertyIsEnumerable,zs=Object.getOwnPropertySymbols,Wi=zs?function(e){return e==null?[]:(e=Object(e),u_(zs(e),function(t){return p_.call(e,t)}))}:qs;function m_(e,t){return lo(e,Wi(e),t)}var g_=Object.getOwnPropertySymbols,Hs=g_?function(e){for(var t=[];e;)qi(t,Wi(e)),e=zi(e);return t}:qs;function h_(e,t){return lo(e,Hs(e),t)}function Ys(e,t,o){var r=t(e);return ft(e)?r:qi(r,o(e))}function Xi(e){return Ys(e,Ui,Wi)}function Ws(e){return Ys(e,Ki,Hs)}var Zi=on(bt,"DataView"),Ji=on(bt,"Promise"),Qi=on(bt,"Set"),Xs="[object Map]",y_="[object Object]",Zs="[object Promise]",Js="[object Set]",Qs="[object WeakMap]",ec="[object DataView]",__=nn(Zi),b_=nn(fo),w_=nn(Ji),E_=nn(Qi),k_=nn(Oi),st=en;(Zi&&st(new Zi(new ArrayBuffer(1)))!=ec||fo&&st(new fo)!=Xs||Ji&&st(Ji.resolve())!=Zs||Qi&&st(new Qi)!=Js||Oi&&st(new Oi)!=Qs)&&(st=function(e){var t=en(e),o=t==y_?e.constructor:void 0,r=o?nn(o):"";if(r)switch(r){case __:return ec;case b_:return Xs;case w_:return Zs;case E_:return Js;case k_:return Qs}return t});var C_=Object.prototype,v_=C_.hasOwnProperty;function N_(e){var t=e.length,o=new e.constructor(t);return t&&typeof e[0]=="string"&&v_.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var ur=bt.Uint8Array;function ea(e){var t=new e.constructor(e.byteLength);return new ur(t).set(new ur(e)),t}function S_(e,t){var o=t?ea(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var x_=/\w*$/;function A_(e){var t=new e.constructor(e.source,x_.exec(e));return t.lastIndex=e.lastIndex,t}var tc=lt?lt.prototype:void 0,nc=tc?tc.valueOf:void 0;function T_(e){return nc?Object(nc.call(e)):{}}function I_(e,t){var o=t?ea(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var P_="[object Boolean]",O_="[object Date]",$_="[object Map]",B_="[object Number]",V_="[object RegExp]",R_="[object Set]",D_="[object String]",M_="[object Symbol]",F_="[object ArrayBuffer]",L_="[object DataView]",U_="[object Float32Array]",K_="[object Float64Array]",j_="[object Int8Array]",G_="[object Int16Array]",q_="[object Int32Array]",z_="[object Uint8Array]",H_="[object Uint8ClampedArray]",Y_="[object Uint16Array]",W_="[object Uint32Array]";function X_(e,t,o){var r=e.constructor;switch(t){case F_:return ea(e);case P_:case O_:return new r(+e);case L_:return S_(e,o);case U_:case K_:case j_:case G_:case q_:case z_:case H_:case Y_:case W_:return I_(e,o);case $_:return new r;case B_:case D_:return new r(e);case V_:return A_(e);case R_:return new r;case M_:return T_(e)}}function Z_(e){return typeof e.constructor=="function"&&!ir(e)?Bg(zi(e)):{}}var J_="[object Map]";function Q_(e){return It(e)&&st(e)==J_}var oc=xn&&xn.isMap,eb=oc?Mi(oc):Q_,tb="[object Set]";function nb(e){return It(e)&&st(e)==tb}var rc=xn&&xn.isSet,ob=rc?Mi(rc):nb,rb=1,ib=2,ab=4,ic="[object Arguments]",lb="[object Array]",sb="[object Boolean]",cb="[object Date]",db="[object Error]",ac="[object Function]",ub="[object GeneratorFunction]",fb="[object Map]",pb="[object Number]",lc="[object Object]",mb="[object RegExp]",gb="[object Set]",hb="[object String]",yb="[object Symbol]",_b="[object WeakMap]",bb="[object ArrayBuffer]",wb="[object DataView]",Eb="[object Float32Array]",kb="[object Float64Array]",Cb="[object Int8Array]",vb="[object Int16Array]",Nb="[object Int32Array]",Sb="[object Uint8Array]",xb="[object Uint8ClampedArray]",Ab="[object Uint16Array]",Tb="[object Uint32Array]",Ae={};Ae[ic]=Ae[lb]=Ae[bb]=Ae[wb]=Ae[sb]=Ae[cb]=Ae[Eb]=Ae[kb]=Ae[Cb]=Ae[vb]=Ae[Nb]=Ae[fb]=Ae[pb]=Ae[lc]=Ae[mb]=Ae[gb]=Ae[hb]=Ae[yb]=Ae[Sb]=Ae[xb]=Ae[Ab]=Ae[Tb]=!0,Ae[db]=Ae[ac]=Ae[_b]=!1;function po(e,t,o,r,i,a){var l,s=t&rb,c=t&ib,d=t&ab;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!tn(e))return e;var f=ft(e);if(f){if(l=N_(e),!s)return Rg(e,l)}else{var u=st(e),p=u==ac||u==ub;if(so(e))return d_(e,s);if(u==lc||u==ic||p&&!i){if(l=c||p?{}:Z_(e),!s)return c?h_(e,s_(l,e)):m_(e,l_(l,e))}else{if(!Ae[u])return i?e:{};l=X_(e,u,s)}}a||(a=new $t);var m=a.get(e);if(m)return m;a.set(e,l),ob(e)?e.forEach(function(h){l.add(po(h,t,o,h,e,a))}):eb(e)&&e.forEach(function(h,b){l.set(b,po(h,t,o,b,e,a))});var g=d?c?Ws:Xi:c?Ki:Ui,_=f?void 0:g(e);return Gg(_||e,function(h,b){_&&(b=h,h=e[b]),Vi(l,b,po(h,t,o,b,e,a))}),l}var Ib=1,Pb=4;function Tn(e){return po(e,Ib|Pb)}var Ob="__lodash_hash_undefined__";function $b(e){return this.__data__.set(e,Ob),this}function Bb(e){return this.__data__.has(e)}function fr(e){var t=-1,o=e==null?0:e.length;for(this.__data__=new Ot;++t<o;)this.add(e[t])}fr.prototype.add=fr.prototype.push=$b,fr.prototype.has=Bb;function Vb(e,t){for(var o=-1,r=e==null?0:e.length;++o<r;)if(t(e[o],o,e))return!0;return!1}function Rb(e,t){return e.has(t)}var Db=1,Mb=2;function sc(e,t,o,r,i,a){var l=o&Db,s=e.length,c=t.length;if(s!=c&&!(l&&c>s))return!1;var d=a.get(e),f=a.get(t);if(d&&f)return d==t&&f==e;var u=-1,p=!0,m=o&Mb?new fr:void 0;for(a.set(e,t),a.set(t,e);++u<s;){var g=e[u],_=t[u];if(r)var h=l?r(_,g,u,t,e,a):r(g,_,u,e,t,a);if(h!==void 0){if(h)continue;p=!1;break}if(m){if(!Vb(t,function(b,w){if(!Rb(m,w)&&(g===b||i(g,b,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(g===_||i(g,_,o,r,a))){p=!1;break}}return a.delete(e),a.delete(t),p}function Fb(e){var t=-1,o=Array(e.size);return e.forEach(function(r,i){o[++t]=[i,r]}),o}function Lb(e){var t=-1,o=Array(e.size);return e.forEach(function(r){o[++t]=r}),o}var Ub=1,Kb=2,jb="[object Boolean]",Gb="[object Date]",qb="[object Error]",zb="[object Map]",Hb="[object Number]",Yb="[object RegExp]",Wb="[object Set]",Xb="[object String]",Zb="[object Symbol]",Jb="[object ArrayBuffer]",Qb="[object DataView]",cc=lt?lt.prototype:void 0,ta=cc?cc.valueOf:void 0;function e0(e,t,o,r,i,a,l){switch(o){case Qb:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case Jb:return!(e.byteLength!=t.byteLength||!a(new ur(e),new ur(t)));case jb:case Gb:case Hb:return Bi(+e,+t);case qb:return e.name==t.name&&e.message==t.message;case Yb:case Xb:return e==t+"";case zb:var s=Fb;case Wb:var c=r&Ub;if(s||(s=Lb),e.size!=t.size&&!c)return!1;var d=l.get(e);if(d)return d==t;r|=Kb,l.set(e,t);var f=sc(s(e),s(t),r,i,a,l);return l.delete(e),f;case Zb:if(ta)return ta.call(e)==ta.call(t)}return!1}var t0=1,n0=Object.prototype,o0=n0.hasOwnProperty;function r0(e,t,o,r,i,a){var l=o&t0,s=Xi(e),c=s.length,d=Xi(t),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in t:o0.call(t,p)))return!1}var m=a.get(e),g=a.get(t);if(m&&g)return m==t&&g==e;var _=!0;a.set(e,t),a.set(t,e);for(var h=l;++u<c;){p=s[u];var b=e[p],w=t[p];if(r)var y=l?r(w,b,p,t,e,a):r(b,w,p,e,t,a);if(!(y===void 0?b===w||i(b,w,o,r,a):y)){_=!1;break}h||(h=p=="constructor")}if(_&&!h){var v=e.constructor,k=t.constructor;v!=k&&"constructor"in e&&"constructor"in t&&!(typeof v=="function"&&v instanceof v&&typeof k=="function"&&k instanceof k)&&(_=!1)}return a.delete(e),a.delete(t),_}var i0=1,dc="[object Arguments]",uc="[object Array]",pr="[object Object]",a0=Object.prototype,fc=a0.hasOwnProperty;function l0(e,t,o,r,i,a){var l=ft(e),s=ft(t),c=l?uc:st(e),d=s?uc:st(t);c=c==dc?pr:c,d=d==dc?pr:d;var f=c==pr,u=d==pr,p=c==d;if(p&&so(e)){if(!so(t))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new $t),l||Li(e)?sc(e,t,o,r,i,a):e0(e,t,c,o,r,i,a);if(!(o&i0)){var m=f&&fc.call(e,"__wrapped__"),g=u&&fc.call(t,"__wrapped__");if(m||g){var _=m?e.value():e,h=g?t.value():t;return a||(a=new $t),i(_,h,o,r,a)}}return p?(a||(a=new $t),r0(e,t,o,r,i,a)):!1}function pc(e,t,o,r,i){return e===t?!0:e==null||t==null||!It(e)&&!It(t)?e!==e&&t!==t:l0(e,t,o,r,pc,i)}function s0(e,t){return e!=null&&t in Object(e)}function c0(e,t,o){t=An(t,e);for(var r=-1,i=t.length,a=!1;++r<i;){var l=dr(t[r]);if(!(a=e!=null&&o(e,l)))break;e=e[l]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&Ri(i)&&$i(l,i)&&(ft(e)||ar(e)))}function d0(e,t){return e!=null&&c0(e,t,s0)}function u0(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}function f0(e,t){return t.length<2?e:Gi(e,$s(t,0,-1))}var p0="[object Map]",m0="[object Set]",g0=Object.prototype,h0=g0.hasOwnProperty;function mc(e){if(e==null)return!0;if(Di(e)&&(ft(e)||typeof e=="string"||typeof e.splice=="function"||so(e)||Li(e)||ar(e)))return!e.length;var t=st(e);if(t==p0||t==m0)return!e.size;if(ir(e))return!As(e).length;for(var o in e)if(h0.call(e,o))return!1;return!0}function gc(e,t){return pc(e,t)}function hc(e,t){return t=An(t,e),e=f0(e,t),e==null||delete e[dr(u0(t))]}function y0(e){return xy(e)?void 0:e}var _0=1,b0=2,w0=4,yc=Ps(function(e,t){var o={};if(e==null)return o;var r=!1;t=us(t,function(a){return a=An(a,e),r||(r=a.length>1),a}),lo(e,Ws(e),o),r&&(o=po(o,_0|b0|w0,y0));for(var i=t.length;i--;)hc(o,t[i]);return o});function _c(e,t,o,r){if(!tn(e))return e;t=An(t,e);for(var i=-1,a=t.length,l=a-1,s=e;s!=null&&++i<a;){var c=dr(t[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:$i(t[i+1])?[]:{})}Vi(s,c,d),s=s[c]}return e}function E0(e,t,o){for(var r=-1,i=t.length,a={};++r<i;){var l=t[r],s=Gi(e,l);o(s,l)&&_c(a,An(l,e),s)}return a}function k0(e,t){return E0(e,t,function(o,r){return d0(e,r)})}var na=Ps(function(e,t){return e==null?{}:k0(e,t)});function C0(e,t,o){return e==null?e:_c(e,t,o)}var v0=0;function oa(e){var t=++v0;return cr(e)+t}function bc(e,t){return e==null?!0:hc(e,t)}const{t:In}=Re.createI18n("en-us",je);function ra(e){return e.map(t=>({value:t,label:t}))}const ia="*",wc="$",Ec=".";function pt(...e){return e.join(Ec)}function aa(...e){return pt(wc,...e)}function kc(e){return e.startsWith(pt(wc,""))}function Pn(e){return e.split(Ec).filter(t=>t!=="")}function mr(e){const t=Pn(e);return t[t.length-1]}const N0=e=>{var t,o;return e.type==="redis-ce"?In("redis.shared_configuration.type_label.host_port"):(t=e.config.sentinel_nodes)!=null&&t.length?In("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?In("redis.shared_configuration.type_label.cluster"):In("redis.shared_configuration.type_label.host_port")},S0={"redis-ce":In("redis.shared_configuration.open_source"),"redis-ee":In("redis.shared_configuration.enterprise")},x0=e=>S0[e]??"";function A0(e,t){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return t.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 T0(e){const t=n.toValue(e);return t?t.type==="set"&&t.elements.type==="string"&&!t.elements.one_of:!1}const Cc=Symbol("free-form-data"),vc=Symbol("free-form-schema"),Nc=Symbol("free-form-field-path"),la=Symbol("free-form-field-renderer-slots"),gr=Symbol("free-form-field-renderer-matchers-map"),Sc=Symbol("free-form-config"),xc=Symbol("free-form-field-reset-label-path-setting"),On="free-form-field-renderers-slot",I0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function sa(e,t=""){const o={},r=e;if(Array.isArray(r.fields))for(const i of r.fields){const a=Object.keys(i)[0],l=i[a],s=t?pt(t,a):a;if(o[s]=l,l.type==="record"&&Array.isArray(l.fields)){const c=sa(l,s);Object.assign(o,c)}else if(l.type==="array"&&l.elements){const c=l.elements,d=pt(s,ia);if(o[d]=c,c.type==="record"&&Array.isArray(c.fields)){const f=sa(c,d);Object.assign(o,f)}}}return o}function ca(e){const t=Pn(e).map(o=>/^\d+$/.test(o)?ia:o);return pt(...t)}function P0(e){const t=n.toValue(e),o=n.computed(()=>t?sa(t):{});function r(f){var u;return f==null?t:(u=o.value)==null?void 0:u[ca(f)]}function i(f,u=!1){const p=r(f);return p?p.default!==void 0?p.default:u||p.required?p.type==="record"?a(p,f):p.type==="array"?[]:null:null:null}function a(f,u){const p={};if(Array.isArray(f.fields))for(const m of f.fields){const g=Object.keys(m)[0],_=u?`${u}.${g}`:g,h=i(_,!1);h!==void 0&&(p[g]=h)}return p}function l(f){return f?i(f,!0):a(r(),"")}function s(f){const u=r(f),p=u!=null&&u.description?Zo.marked.parse(u.description,{async:!1}):void 0;return{...I0,"data-testid":`ff-label-${f}`,info:p}}function c(f){var p;const u=r(f);return ra((u==null?void 0:u.one_of)||((p=u.elements)==null?void 0:p.one_of)||[])}function d(f){var m;const u=(m=r(f))==null?void 0:m.default;let p=null;if(u==null||typeof u=="object"||u==="")return null;if(Array.isArray(u)){if(u.length===0)return null;p=u.join(", ")}else p=u.toString();return`Default: ${p}`}return{getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function Ve(){const e=n.inject(Cc),t=n.inject(vc),o=n.inject(Sc,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!t)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...t}}const Ac=e=>{const t=n.inject(Nc,n.computed(()=>"")),o=n.computed(()=>{const r=n.toValue(e);let i=r;return!kc(r)&&t.value&&(i=pt(t.value,r)),kc(r)&&(i=i.slice(aa("").length)),i});return n.provide(Nc,o),o},O0=e=>{const{getSchema:t}=Ve(),{default:o,...r}=n.useSlots(),i=n.inject(la),a=n.inject(gr),l=n.computed(()=>{const c=n.toValue(i),d=Object.keys(r).filter(f=>f!==On&&f!=="item").reduce((f,u)=>{const p=ca(pt(n.toValue(e),u));return{...f,[p]:r[u]}},{});return c?{...c,...d}:d});n.provide(la,l);const s=n.toValue(e);return n.computed(()=>{if(o)return;const c=l.value[ca(n.toValue(e))];if(c)return c;for(const[d,f]of a)if(d({path:s,schema:t(s)}))return f})},$0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function B0(e){return $0[e.toLocaleLowerCase()]??e}function V0(e,t){const o=n.inject(xc,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=n.toValue(o),a=n.ref(r?pt(r,e):e),l=n.ref({parentPath:a.value,isolate:i});return n.watch([n.toRef(t),n.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?pt(d,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=u,l.value.isolate=!1,l.value.parentPath=u}};(p=m[s])==null||p.call(m)}else f&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),n.provide(xc,l),a}function R0(e){return Pn(e).map(o=>o.split("_").map(e_).map(B0).join(" ")).join(" › ")}function D0(e,t){const o=n.toValue(e),r=mr(o),{formConfig:i}=Ve(),a=V0(r,t),{getSchema:l}=Ve(),s=Tc(e);return n.computed(()=>{var p;const c=a.value??r,d=(p=s.value.parent)!=null&&p.path?l(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":R0(c);return i.transformLabel?i.transformLabel(u,o):u})}function wt(e,t){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ve(),a=n.toValue(e),l=n.toValue(t),s=D0(e,n.toRef(()=>n.toValue(t).resetLabelPath));return n.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 M0(e){var r;const t=Pn(e);let o={parent:null};for(t.pop();t.length;){const i=t.shift();o.path=(r=o.parent)!=null&&r.path?pt(o.parent.path,i):i,o={parent:o}}return o}function Tc(e){return n.computed(()=>M0(n.toValue(e)))}function Ic(e){const{formData:t}=Ve(),o=Ac(e);return{value:n.computed({get:()=>Ts(t,Pn(o.value)),set:i=>C0(t,Pn(o.value),i)})}}function ct(e){const{getSchema:t}=Ve(),o=Ac(e),r=O0(o),{value:i}=Ic(e),a=n.computed(()=>t(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:Tc(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function hr(e){const{getSchema:t}=Ve(),o=n.useAttrs();return n.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=n.toValue(e).parent;return r!=null&&r.path?((i=t(r.path))==null?void 0:i.type)==="array":!1})}function Pc(e,t){const o=n.reactive(new Map);function r(){return oa(`${e}-`)}function i(a,l){return a!=null&&typeof a=="object"?o.get(a):`${e}-${l}`}return n.watch(t,a=>{const l=n.toValue(a);l.forEach(c=>{o.has(c)||o.set(c,r())});const s=new Set(l);[...o.keys()].forEach(c=>{s.has(c)||o.delete(c)})},{immediate:!0,deep:!0}),{getKey:i}}const F0="__request_callout_";function Oc(){return oa(F0)}const $n=n.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const o=e,r=t,i=n.computed(()=>o.multiline?Ie.KTextArea:Ie.KInput),a=n.ref(o.modelValue);n.watch(()=>o.modelValue,d=>{a.value=d});const{formConfig:l}=Ve(),s=d=>{a.value=d,l.updateOnChange||r("update:modelValue",d)},c=()=>{l.updateOnChange&&r("update:modelValue",a.value)};return(d,f)=>(n.openBlock(),n.createBlock(n.unref(i),n.mergeProps(d.$attrs,{"model-value":d.modelValue,resizable:d.multiline?!0:void 0,onChange:c,"onUpdate:modelValue":s}),n.createSlots({_:2},[n.renderList(n.useSlots(),(u,p)=>({name:p,fn:n.withCtx(m=>[n.renderSlot(d.$slots,p,n.normalizeProps(n.guardReactiveProps(m)))])}))]),1040,["model-value","resizable"]))}}),L0=["innerHTML"],Bn=we(n.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:t}){const o=n.useAttrs(),{i18n:r}=Se(),i=n.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=t,{value:l,...s}=ct(n.toRef(()=>e.name)),c=wt(s.path,n.toRef({...i,...o})),d=l==null?void 0:l.value;function f(b){d!==void 0&&b===""&&b!==d?(l.value=null,a("update:modelValue",null)):(l.value=b.trim(),a("update:modelValue",b.trim()))}const u=n.computed(()=>{var b;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((b=s.schema)==null?void 0:b.value).encrypted}),p=n.inject(ve.AUTOFILL_SLOT,void 0),m=n.computed(()=>{var b;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((b=s.schema.value)!=null&&b.referenceable)}),g=n.computed(()=>({referenceable:m.value})),_=hr(s.ancestors),h=n.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:mr(e.name)==="name");return(b,w)=>{var v;const y=n.resolveComponent("KAlert");return s.error?(n.openBlock(),n.createBlock(y,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",n.normalizeProps(n.mergeProps({key:1},b.$attrs)),[n.createVNode($n,n.mergeProps({...n.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":h.value,"data-autofocus":n.unref(_),"data-testid":`ff-${s.path.value}`,error:b.error,"error-message":b.errorMessage,help:b.help,"model-value":n.unref(l)??"",multiline:b.multiline,"onUpdate:modelValue":f}),n.createSlots({_:2},[(v=n.unref(c).labelAttributes)!=null&&v.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(b.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(c).labelAttributes.info},null,8,L0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),n.unref(p)&&m.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(p)),{key:0,schema:g.value,update:f,value:n.unref(l)??""},null,8,["schema","value"])):n.createCommentVNode("",!0),m.value&&!n.unref(p)?(n.openBlock(),n.createBlock(y,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:n.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):n.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-fb5b80e5"]]),U0=["innerHTML"],da=we(n.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.createPropsRestProxy(e,["name"]),{value:r,...i}=ct(n.toRef(()=>e.name)),a=t,l=c=>{r.value=c,a("update:modelValue",c)},s=wt(i.path,o);return(c,d)=>{var u;const f=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock(n.unref(Ie.KCheckbox),n.mergeProps({key:1},n.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":n.unref(r)??!1,"onUpdate:modelValue":l}),n.createSlots({_:2},[(u=n.unref(s).labelAttributes)!=null&&u.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(c.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(s).labelAttributes.info},null,8,U0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),$c=we(n.defineComponent({__name:"SlideTransition",setup(e){const t=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(t.map(p=>[p,""])),r=Object.fromEntries(t.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(t.map(g=>[g,m.getPropertyValue(g)]))}function a(p){["overflow","transition",...t].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const g=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...g,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(n.openBlock(),n.createBlock(n.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:n.withCtx(()=>[n.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),K0=["data-testid"],j0=["data-testid"],G0=["data-testid"],q0=["innerHTML"],z0={class:"ff-object-field-actions"},H0=["data-testid"],dt=we(n.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:n.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 t=n.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=ct(n.toRef(t,"name")),{getSchema:i,getDefault:a}=Ve(),l=n.useModel(e,"added"),s=n.useModel(e,"expanded"),c=n.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),d=n.computed(()=>{var h,b;if((h=r.ancestors)!=null&&h.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((b=i(w.path))==null?void 0:b.type)==="array"}return!1}),f=n.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=wt(r.path,n.toRef(()=>({required:e.required,...t,resetLabelPath:f.value}))),p=n.computed(()=>u.value.required?!0:l.value??e.defaultAdded),m=n.computed(()=>e.asChild!==void 0?e.asChild:d.value),g=n.computed(()=>{let h=r.schema.value.fields;return e.omit&&(h=h.filter(b=>!e.omit.includes(Object.keys(b)[0]))),e.fieldsOrder?h.sort((b,w)=>{const y=Object.keys(b)[0],v=Object.keys(w)[0],k=e.fieldsOrder.indexOf(y),E=e.fieldsOrder.indexOf(v);return k===-1&&E===-1?0:k===-1?1:E===-1?-1:k-E}):h});function _(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return n.watch(p,h=>{e.collapsible&&(s.value=h)}),n.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(h,b)=>{var y;const w=n.resolveComponent("KAlert");return n.openBlock(),n.createElementBlock(n.Fragment,null,[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(h.$slots[n.unref(On)]))),r.error?(n.openBlock(),n.createBlock(w,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(n.openBlock(),n.createElementBlock("div",n.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},h.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[n.renderSlot(h.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(g.value,v=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(v)[0],name:Object.keys(v)[0]},null,8,["name"]))),128))],!0)],16,K0)):(n.openBlock(),n.createElementBlock("div",n.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},h.$attrs),[n.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[n.createVNode(n.unref(Ie.KLabel),n.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...n.unref(u),required:!1},{"tooltip-attributes":n.unref(u).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(u).label)+" ",1)]),_:2},[(y=n.unref(u).labelAttributes)!=null&&y.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(h.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(u).labelAttributes.info},null,8,q0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createElementVNode("div",z0,[h.collapsible&&p.value?(n.openBlock(),n.createBlock(n.unref(Ie.KButton),{key:0,appearance:"tertiary",class:n.normalizeClass(`ff-object-field-button-${c.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${r.path.value}`,icon:"",onClick:b[0]||(b[0]=v=>s.value=!c.value)},{default:n.withCtx(()=>[p.value?(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):n.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):n.createCommentVNode("",!0),n.unref(u).required?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Ie.KButton),{key:1,appearance:"tertiary",class:n.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:_},{default:n.withCtx(()=>[p.value?(n.openBlock(),n.createBlock(n.unref(Ee.TrashIcon),{key:0})):(n.openBlock(),n.createBlock(n.unref(Ee.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,G0),n.createVNode($c,null,{default:n.withCtx(()=>[c.value?(n.openBlock(),n.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[n.renderSlot(h.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(g.value,v=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(v)[0],name:Object.keys(v)[0]},null,8,["name"]))),128))],!0)],8,H0)):n.createCommentVNode("",!0)]),_:3})],16,j0))],64)}}}),[["__scopeId","data-v-6f044592"]]),Y0=["innerHTML"],Vn=we(n.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:t}){const o=n.createPropsRestProxy(e,["name"]),{value:r,...i}=ct(n.toRef(()=>e.name)),a=wt(i.path,o),l=n.computed(()=>{var _;const p=(_=i.schema)==null?void 0:_.value;if(typeof p.gt=="number")return{min:p.gt};const[m,g]=p.between??[];return{min:o.min??m,max:o.max??g}}),s=t,c=r.value,d=n.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=hr(i.ancestors);return(p,m)=>{var _;const g=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(g,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock($n,n.mergeProps({key:1,class:"ff-number-field"},{...n.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":n.unref(u),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":f}),n.createSlots({_:2},[(_=n.unref(a).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(p.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(a).labelAttributes.info},null,8,Y0)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),W0=["innerHTML"],Et=we(n.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},multiple:{type:Boolean,default:()=>{}},items:{},placeholder:{}},setup(e){const t=n.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:o}=Ve(),{value:r,...i}=ct(n.toRef(()=>e.name)),a=wt(i.path,t),l=n.computed(()=>e.items?e.items:i.path?o(i.path.value):[]),s=n.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=i.schema.value)==null?void 0:d.type)==="set"}),c=n.computed(()=>s.value?Ie.KMultiselect:Ie.KSelect);return(d,f)=>{var p;const u=n.resolveComponent("KAlert");return i.error?(n.openBlock(),n.createBlock(u,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(n.openBlock(),n.createBlock(n.unref(c),n.mergeProps({key:1},n.unref(a),{modelValue:n.unref(r),"onUpdate:modelValue":f[0]||(f[0]=m=>n.isRef(r)?r.value=m:null),class:"ff-enum-field",clearable:!n.unref(a).required,"data-testid":`ff-${i.path.value}`,items:l.value,"kpop-attributes":{"data-testid":`${i.path.value}-items`}}),n.createSlots({_:2},[(p=n.unref(a).labelAttributes)!=null&&p.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(d.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(a).labelAttributes.info},null,8,W0)],!0)]),key:"0"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-8b105573"]]);function ua(e,t,o=!0){const{value:r,...i}=ct(n.toRef(e,"name")),a=wt(i.path,n.toRef({...e,...n.useAttrs()})),l=n.ref(d(e.initialValue??n.toValue(r)??{},e.keyOrder));function s(){return oa("ff-kv-field-")}function c(h,b,w){const y=w.indexOf(h),v=w.indexOf(b);return y===-1&&v===-1?0:y===-1?1:v===-1?-1:y-v}function d(h,b){const w=Object.entries(h).map(([y,v])=>({id:s(),key:y,value:v}));return b&&w.sort((y,v)=>c(y.key,v.key,b)),w}function f(){const h={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(h),h}function u(h){const b=l.value.findIndex(w=>w.id===h);b!==-1&&l.value.splice(b,1)}function p(){l.value=d(e.initialValue||{},e.keyOrder)}function m(h){l.value=d(h,e.keyOrder)}let g=null;n.watch(l,h=>{if(!o)return;const b=h.length?Object.fromEntries(h.map(({key:w,value:y})=>[w,y]).filter(([w])=>w)):null;r.value=b,g=b,t("change",b)},{deep:!0,immediate:!0}),n.watch(()=>r==null?void 0:r.value,h=>{gc(h,g)||_(h)},{deep:!0});function _(h){if(!h){l.value=[];return}const b=new Map;l.value.forEach(k=>{k.key&&b.set(k.key,k)});const w=[],y=Object.keys(h);(e.keyOrder?[...y].sort((k,E)=>c(k,E,e.keyOrder)):y).forEach(k=>{const E=h[k];if(b.has(k)){const R=b.get(k);R.value=E,w.push(R)}else w.push({id:s(),key:k,value:E})}),l.value=w}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const X0=["data-testid"],Z0=["data-testid"],J0=["innerHTML"],Q0=["data-testid"],ew=we(n.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:t,emit:o}){const r=n.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=Se(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=ua(r,a),m=n.useTemplateRef("root");async function g(k,E="key"){var R;m.value&&(await n.nextTick(),(R=m.value.querySelector(`[data-${E}-input="${k}"]`))==null||R.focus())}function _(){s();const k=l.value.findIndex(({key:E})=>!E);g(k===-1?l.value.length-1:k)}function h(k){k===l.value.length-1&&s(),g(k+1)}const b=n.inject(ve.AUTOFILL_SLOT,void 0),w=n.computed(()=>{var k,E;return e.showVaultSecretPicker??!!((E=(k=p.schema.value)==null?void 0:k.values)!=null&&E.referenceable)}),y=n.computed(()=>({referenceable:w.value}));function v(k,E){l.value[k].value=E}return t({reset:d,setValue:f}),(k,E)=>{var q;const R=n.resolveComponent("KAlert"),O=n.resolveComponent("KLabel"),T=n.resolveComponent("KButton");return n.unref(p).error?(n.openBlock(),n.createBlock(R,{key:0,appearance:"danger",message:n.unref(p).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${n.unref(p).path.value}`},[n.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${n.unref(p).path.value}`},[n.createVNode(O,n.mergeProps({class:"ff-kv-field-label"},n.unref(u),{"data-testid":`ff-label-${n.unref(p).path.value}`,"tooltip-attributes":n.unref(u).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(u).label)+" ",1)]),_:2},[(q=n.unref(u).labelAttributes)!=null&&q.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(k.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(u).labelAttributes.info},null,8,J0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createVNode(T,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(p).path.value}`,icon:"",onClick:_},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:1},8,["data-testid"])],8,Z0),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(l),(j,A)=>(n.openBlock(),n.createElementBlock("div",{key:j.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${n.unref(p).path.value}.${A}`},[n.createVNode($n,{modelValue:j.key,"onUpdate:modelValue":I=>j.key=I,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":A,"data-testid":`ff-key-${n.unref(p).path.value}.${A}`,placeholder:k.keyPlaceholder||"Key",onKeydown:n.withKeys(n.withModifiers(I=>g(A,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),n.createVNode($n,{modelValue:j.value,"onUpdate:modelValue":I=>j.value=I,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${n.unref(p).path.value}.${A}`,"data-value-input":A,placeholder:k.valuePlaceholder||"Value",onKeydown:n.withKeys(n.withModifiers(I=>h(A),["prevent"]),["enter"])},{after:n.withCtx(()=>[n.unref(b)&&w.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(b)),{key:0,schema:y.value,update:I=>v(A,I),value:j.value},null,8,["schema","update","value"])):n.createCommentVNode("",!0),w.value&&!n.unref(b)?(n.openBlock(),n.createBlock(R,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${n.unref(p).path.value}`,message:n.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):n.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),n.createVNode(T,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${n.unref(p).path.value}.${A}`,icon:"",onClick:I=>n.unref(c)(j.id)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,Q0))),128))],8,X0))}}}),[["__scopeId","data-v-92e0893d"]]),tw=["data-testid"],nw=["innerHTML"],Bc=we(n.defineComponent({inheritAttrs:!1,__name:"TagField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.useAttrs(),r=n.createPropsRestProxy(e,["name"]),i=t,{value:a,...l}=ct(n.toRef(()=>e.name)),s=wt(l.path,n.toRef({...r,...o})),c=n.computed(()=>{var _,h;return((h=(_=l.schema)==null?void 0:_.value)==null?void 0:h.len_min)&&l.schema.value.len_min>0}),d=n.ref("");function f(_){return _.map(h=>h.trim()).filter(Boolean).join(", ")}function u(_){return _.trim().split(",").map(h=>h.trim()).filter(Boolean)}function p(_){d.value=_;const h=u(_),b=!h.length&&c.value?null:h;a.value=b,i("update:modelValue",b)}const m=hr(l.ancestors),g=n.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:mr(e.name)==="name");return n.watch(a,_=>{const h=_?f(_):"";f(u(d.value))!==h&&(d.value=h)},{immediate:!0}),(_,h)=>{var w;const b=n.resolveComponent("KAlert");return l.error?(n.openBlock(),n.createBlock(b,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[n.createVNode($n,n.mergeProps(n.unref(s),{class:"ff-tag-field","data-1p-ignore":g.value,"data-autofocus":n.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),n.createSlots({_:2},[(w=n.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(_.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(s).labelAttributes.info},null,8,nw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,tw))}}}),[["__scopeId","data-v-82df1597"]]),ow=["data-testid"],rw=["innerHTML"],iw=we(n.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{name:{},labelAttributes:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=n.useAttrs(),r=n.createPropsRestProxy(e,["name"]),i=t,{value:a,...l}=ct(n.toRef(()=>e.name)),s=wt(l.path,n.toRef({...r,...o})),c=n.ref("");function d(p){c.value=p;let m=p||null;try{const g=JSON.parse(p);g&&typeof g=="object"&&(m=g)}catch{}a.value=m,i("update:modelValue",m)}const f=hr(l.ancestors),u=n.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:mr(e.name)==="name");return n.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);gc(m,p)||(c.value=JSON.stringify(p,null,2))}catch{c.value=JSON.stringify(p,null,2)}return}c.value=p||""},{immediate:!0}),(p,m)=>{var _;const g=n.resolveComponent("KAlert");return l.error?(n.openBlock(),n.createBlock(g,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,"data-testid":`ff-json-${l.path.value}`},[n.createVNode($n,n.mergeProps(n.unref(s),{class:"ff-json-field","data-1p-ignore":u.value,"data-autofocus":n.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":d}),n.createSlots({_:2},[(_=n.unref(s).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:n.withCtx(()=>[n.renderSlot(p.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(s).labelAttributes.info},null,8,rw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,ow))}}}),[["__scopeId","data-v-5749f722"]]),Qe=n.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const t=e,o=ct(n.toRef(t,"name")),r=n.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?Et:Bn;case"boolean":return"one_of"in o.schema.value?Et:da;case"number":case"integer":return"one_of"in o.schema.value?Et:Vn;case"array":return yr;case"set":return T0(o.schema)?Bc:Et;case"record":return dt;case"map":return ew;case"json":return iw;default:return}});return(i,a)=>{const l=n.resolveComponent("KAlert");return n.openBlock(),n.createElementBlock(n.Fragment,null,[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(i.$slots[n.unref(On)]))),n.unref(o).error?(n.openBlock(),n.createBlock(l,{key:0,appearance:"danger",message:n.unref(o).error.message},null,8,["message"])):n.unref(o).renderer.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(o).renderer.value),{key:1,name:aa(n.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(n.openBlock(),n.createElementBlock(n.Fragment,{key:2},[r.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(r.value),{key:0,name:aa(n.unref(o).path.value)},null,8,["name"])):(n.openBlock(),n.createBlock(l,{key:1,appearance:"warning",message:`${n.unref(o).path.value} ${n.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),n.renderSlot(i.$slots,"default")],64))],64)}}}),aw=["data-testid"],lw=["data-testid"],sw=["innerHTML"],cw=["data-testid"],dw={class:"ff-array-field-item-content"},uw=["data-index","data-testid"],yr=we(n.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:t}){var v;n.useCssVars(k=>({"6954cf1c":y.value}));const o=e,r=t,{i18n:{t:i}}=Se(),{getDefault:a}=Ve(),{value:l,...s}=ct(n.toRef(o,"name")),c=wt(s.path,n.toRef({...o,...n.useAttrs()})),d=n.computed(()=>o.items??n.toValue(l)??[]),{getKey:f}=Pc("ff-array-field",d),u=n.computed(()=>o.appearance==="card"?Ie.KCard:"div");function p(k,E){return typeof o.itemLabel=="function"?o.itemLabel(k,E):o.itemLabel||c.value.label||`Item #${E}`}const m=n.computed(()=>d.value.map((k,E)=>({hash:`#${f(k,E)}`,title:""}))),g=n.ref((v=m.value[0])==null?void 0:v.hash),_=async()=>{var E;const k=a(pt(s.path.value,ia));Array.isArray(l.value)||(l.value=[]),l.value.push(k),r("add"),o.appearance==="tabs"&&(await n.nextTick(),g.value=(E=m.value[m.value.length-1])==null?void 0:E.hash),await n.nextTick(),w(d.value.length+1)},h=async k=>{var E;Array.isArray(l.value)&&l.value.splice(k,1),r("remove",k),o.appearance==="tabs"&&(g.value=(E=m.value[Math.max(0,k-1)])==null?void 0:E.hash)},b=n.useTemplateRef("root");function w(k){var R;if(!b.value)return;const E=Math.max(0,Math.min(k,d.value.length-1));(R=b.value.querySelector(`[data-index="${E}"] [data-autofocus]`))==null||R.focus()}const y=n.computed(()=>{const{appearance:k,stickyTabs:E}=o;return k!=="tabs"||E==null||E===!1?null:typeof E=="number"?`${o.stickyTabs}px`:typeof E=="string"?E:"0"});return(k,E)=>{var j;const R=n.resolveComponent("KAlert"),O=n.resolveComponent("KLabel"),T=n.resolveComponent("KButton"),q=n.resolveComponent("KTabs");return s.error?(n.openBlock(),n.createBlock(R,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:b,class:n.normalizeClass(["ff-array-field",{[`ff-array-field-${k.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":k.stickyTabs}]),"data-testid":`ff-array-${s.path.value}`},[n.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${s.path.value}`},[n.createVNode(O,n.mergeProps({class:"ff-array-field-label"},n.unref(c),{"data-testid":`ff-label-${s.path.value}`,"tooltip-attributes":n.unref(c).labelAttributes.tooltipAttributes}),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(c).label)+" ",1)]),_:2},[(j=n.unref(c).labelAttributes)!=null&&j.info?{name:"tooltip",fn:n.withCtx(()=>[n.renderSlot(k.$slots,"tooltip",{},()=>[n.createElementVNode("div",{innerHTML:n.unref(c).labelAttributes.info},null,8,sw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),n.createVNode(T,{appearance:"tertiary","aria-label":n.unref(i)("actions.add_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${s.path.value}`,icon:"",onClick:_},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,lw),d.value.length?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[k.appearance!=="tabs"?(n.openBlock(),n.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${s.path.value}`},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(d.value,(A,I)=>(n.openBlock(),n.createBlock(n.unref(u),{key:n.unref(f)(A,I),class:"ff-array-field-item","data-index":I,"data-testid":`ff-array-item-${s.path.value}.${I}`},{default:n.withCtx(()=>[n.createElementVNode("div",dw,[k.$slots.item?n.renderSlot(k.$slots,"item",{key:0,fieldName:String(I),index:I},void 0,!0):(n.openBlock(),n.createBlock(Qe,{key:1,name:String(I)},null,8,["name"]))]),n.createVNode(T,{appearance:"tertiary","aria-label":n.unref(i)("actions.remove_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${s.path.value}.${I}`,icon:"",onClick:C=>h(I)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,cw)):(n.openBlock(),n.createBlock(n.unref(Ie.KCard),{key:1,"data-testid":`ff-array-tab-container-${s.path.value}`},{default:n.withCtx(()=>[n.createVNode(q,{modelValue:g.value,"onUpdate:modelValue":E[0]||(E[0]=A=>g.value=A),"data-testid":`ff-array-tabs-${s.path.value}`,tabs:m.value},n.createSlots({_:2},[n.renderList(d.value,(A,I)=>({name:n.unref(f)(A,I),fn:n.withCtx(()=>[n.createElementVNode("div",{class:"ff-array-field-item","data-index":I,"data-testid":`ff-array-item-${s.path.value}.${I}`},[k.$slots.item?n.renderSlot(k.$slots,"item",{key:0,fieldName:String(I),index:I},void 0,!0):(n.openBlock(),n.createBlock(Qe,{key:1,name:String(I)},null,8,["name"]))],8,uw)])})),n.renderList(d.value,(A,I)=>({name:`${n.unref(f)(A,I)}-anchor`,fn:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(p(A,I))+" ",1),n.createVNode(T,{appearance:"tertiary","aria-label":n.unref(i)("actions.remove_entity",{entity:n.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${s.path.value}.${I}`,icon:"",onClick:n.withModifiers(C=>h(I),["stop"])},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):n.createCommentVNode("",!0)],10,aw))}}}),[["__scopeId","data-v-463d07bb"]]),mo=Symbol(),fw=n.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const t=e,{formData:o}=Ve(),r=n.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[t.index])==null?void 0:c.name)})}),i=n.computed(()=>r.value.map(({[mo]:l,name:s})=>({value:l,label:s}))),a=n.computed(()=>o.config.callouts[t.index]);return n.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(n.openBlock(),n.createBlock(dt,{name:l.fieldName},{depends_on:n.withCtx(c=>[n.createVNode(Et,n.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:n.withCtx(c=>[n.createVNode(dt,n.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:n.withCtx(d=>[n.createVNode(Et,n.mergeProps(d,{items:n.unref(ra)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),pw=n.defineComponent({__name:"CalloutsForm",setup(e){const{formData:t}=Ve();function o(){const r=t.config.callouts[t.config.callouts.length-1];r&&(r[mo]=Oc())}return(r,i)=>(n.openBlock(),n.createBlock(yr,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:n.withCtx(({index:a,fieldName:l})=>[n.createVNode(fw,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),Vc=n.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const t=e,{default:o}=n.useSlots(),r=n.inject(gr);if(!r)throw new Error(gr.toString()+"not provided");return o&&r.set(t.match,o),(i,a)=>null}}),mt=n.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:t,emit:o}){const r=o,i=n.useSlots(),a=P0(e.schema);n.provide(vc,a);const l=m=>{var g;return or((g=e.config)==null?void 0:g.hasValue)?e.config.hasValue(m):!!m},s=n.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((g,_)=>{const h=Object.keys(g)[0],b=Object.keys(_)[0],w=e.fieldsOrder.indexOf(h),y=e.fieldsOrder.indexOf(b);return w===-1&&y===-1?0:w===-1?1:y===-1?-1:w-y}):m});let c=!1;const d=n.reactive({});n.provide(Cc,d),n.provide(la,yc(i,"default",On));const f=new Map;n.provide(gr,f),n.provide(Sc,e.config??{}),n.watch(d,m=>{c&&r("change",n.toValue(m))},{deep:!0,immediate:!0});function u(m){Object.keys(d).forEach(g=>{delete d[g]}),Object.assign(d,m)}function p(m){var _;let g;!m||!l(n.toValue(m))?g=a.getDefault():g=Tn(n.toValue(m)),or((_=e.config)==null?void 0:_.prepareFormData)?u(e.config.prepareFormData(g)):u(g),c=!0}return n.onBeforeMount(()=>{p(e.data)}),n.watch(()=>e.data,m=>{p(m)},{deep:!0}),t({getInnerData:()=>n.toRaw(d)}),(m,g)=>(n.openBlock(),n.createBlock(n.resolveDynamicComponent(m.tag),null,{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(i)[n.unref(On)]))),n.renderSlot(m.$slots,"default",{},()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(s.value,_=>(n.openBlock(),n.createBlock(Qe,{key:Object.keys(_)[0],name:Object.keys(_)[0],onGlobalAction:g[0]||(g[0]=(h,b)=>r("globalAction",h,b))},null,8,["name"]))),128))])]),_:3}))}}),mw={class:"ff-advanced-fields"},fa=we(n.defineComponent({__name:"AdvancedFields",setup(e){const{t}=Re.createI18n("en-us",je),{getSchema:o}=Ve(),r=n.ref(!0);return(i,a)=>(n.openBlock(),n.createBlock(n.unref(Ie.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"trigger-label":r.value?n.unref(t)("plugins.form.grouping.advanced_parameters.view"):n.unref(t)("plugins.form.grouping.advanced_parameters.hide")},{default:n.withCtx(()=>[n.createElementVNode("div",mw,[n.unref(o)("instance_name")?(n.openBlock(),n.createBlock(Qe,{key:0,name:"instance_name"})):n.createCommentVNode("",!0),n.unref(o)("protocols")?(n.openBlock(),n.createBlock(Qe,{key:1,name:"protocols"})):n.createCommentVNode("",!0),n.unref(o)("tags")?(n.openBlock(),n.createBlock(Bc,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:n.unref(t)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):n.createCommentVNode("",!0),n.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-190b1d21"]]),gw=n.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:t}){const o=t,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=Se();function a(d,f=!1){return d.reduce((u,{[mo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=Tn(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(g=>{g.request.body.custom=g.request.body.custom??{},g[mo]=Oc()});const p=a(u,!0);return u.forEach(g=>{g.depends_on=g.depends_on.map(_=>p[_])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=Tn(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{[mo]:g,depends_on:_,...h}=m;return{depends_on:_.map(b=>u[b]).filter(b=>b!=null),...h}}),o("change",f)}return(d,f)=>(n.openBlock(),n.createBlock(mt,{class:"rc-config-form",config:r,data:d.data,schema:d.schema,tag:"div",onChange:c},{[n.unref(On)]:n.withCtx(()=>[n.createVNode(Vc,{match:({path:u})=>u.endsWith("by_lua")},{default:n.withCtx(u=>[n.createVNode(Bn,n.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:n.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),n.createVNode(Vc,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:n.withCtx(u=>[n.createVNode(yr,n.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:n.withCtx(()=>[n.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:n.withCtx(()=>[n.createVNode(pw),n.createVNode(dt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),n.createVNode(dt,{appearance:"card",name:"cache"},{redis:n.withCtx(u=>[n.createVNode(dt,n.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}),n.createVNode(fa)]),_:2},1032,["data","schema"]))}}),hw={class:"sc-form-pinned-fields"},yw={class:"sc-form-config-form"},pa=we(n.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t}=Re.createI18n("en-us",je),o=e;n.useSlots();function r(f){return n.computed(()=>({fields:n.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=n.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:t("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:t("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?t("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):t("plugins.form.fields.protocols.placeholder"),u.protocols.description=t("plugins.form.fields.protocols.help")),f}),c=n.ref(!1);function d(f){return na(f,["config","instance_name","partials","protocols","tags"])}return(f,u)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",hw,[n.createVNode(n.unref(ve.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:n.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),n.createVNode(n.unref(Ie.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"sc-form-config-fields"},{title:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.form.grouping.plugin_configuration.description")),1)]),default:n.withCtx(()=>[n.createElementVNode("div",yw,[n.renderSlot(f.$slots,"default",{data:d(f.model),schema:s.value,onChange:u[0]||(u[0]=(...p)=>f.onFormChange&&f.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-175fd883"]]),_w=n.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const t=e,o=n.useSlots();return n.provide(ve.AUTOFILL_SLOT,o==null?void 0:o[ve.AUTOFILL_SLOT_NAME]),(r,i)=>(n.openBlock(),n.createBlock(pa,n.normalizeProps(n.guardReactiveProps(t)),{default:n.withCtx(a=>[n.createVNode(gw,n.normalizeProps(n.guardReactiveProps(a)),null,16)]),_:1},16))}}),bw={key:1},ww=["innerHTML"],Ew={class:"horizontal-container"},kw=we(n.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:t}){const o=t,r=n.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Ve(),a=ct(n.toRef(()=>e.name)),l=wt(a.path,r),s=n.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=n.resolveComponent("KAlert"),p=n.resolveComponent("KLabel");return n.unref(a).error?(n.openBlock(),n.createBlock(u,{key:0,appearance:"danger",message:n.unref(a).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",bw,[n.createVNode(p,n.normalizeProps(n.guardReactiveProps(n.unref(l).labelAttributes)),n.createSlots({default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(l).label)+" ",1)]),_:2},[(m=n.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:n.withCtx(()=>[n.createElementVNode("div",{innerHTML:n.unref(l).labelAttributes.info},null,8,ww)]),key:"0"}:void 0]),1040),n.createElementVNode("div",Ew,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(s.value,g=>(n.openBlock(),n.createBlock(n.unref(Ie.KRadio),{key:g.value,"model-value":n.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=_=>n.unref(a).value.value=_),c],"card-orientation":"horizontal",label:g.label,"selected-value":g.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),Cw={class:"sp-form-request-limits-subtitle"},vw={class:"sp-form-request-limits-content"},Nw={class:"sp-form-window-type"},Sw={class:"sp-form-request-limits-items"},xw={class:"sp-form-request-limits-row"},Aw=["id"],Tw={class:"sp-form-request-limits-actions"},Iw={key:0,class:"sp-form-request-limits-examples"},Pw={class:"sp-form-request-limits-examples-badges"},ma="config.window_type",Ow=we(n.defineComponent({__name:"RequestLimitsForm",setup(e){var h;const{t}=Re.createI18n("en-us",je),{formData:o,getSelectItems:r,getSchema:i}=Ve(),a=n.computed(()=>{var w,y;const b=(y=(w=o.config)==null?void 0:w.limit)==null?void 0:y.map((v,k)=>{var E,R;return{limit:v,windowSize:(R=(E=o.config)==null?void 0:E.window_size)==null?void 0:R[k]}});return!Array.isArray(b)||b.length===0?[{limit:null,windowSize:null}]:b}),{getKey:l}=Pc("request-limits",a),s=b=>{var w,y;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(y=o.config.window_size)!=null&&y.length||(o.config.window_size=[null]),o.config.limit.splice(b+1,0,null),o.config.window_size.splice(b+1,0,null))},c=b=>{o.config&&(o.config.limit.splice(b,1),o.config.window_size.splice(b,1))},d=(h=i(ma))==null?void 0:h.default,f=n.computed(()=>Ts(o,ma)),u=n.computed(()=>r(ma).sort((b,w)=>b.value===d?-1:w.value===d?1:0)),p=n.ref(),m={fixed:[{label:t("sp.use_cases.fixed.hourly_500.label"),description:t("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:t("sp.use_cases.fixed.half_hourly_200.label"),description:t("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:t("sp.use_cases.fixed.daily_500.label"),description:t("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:t("sp.use_cases.sliding.hourly_100.label"),description:t("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:t("sp.use_cases.sliding.half_hourly_300.label"),description:t("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:t("sp.use_cases.sliding.hourly_500.label"),description:t("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=n.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),_=(b,w)=>{if(w===p.value){n.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}n.nextTick(()=>{p.value=w}),o.config.limit=[b.config.limit],o.config.window_size=[b.config.window_size]};return(b,w)=>{const y=n.resolveComponent("KLabel"),v=n.resolveComponent("KButton"),k=n.resolveComponent("KBadge"),E=n.resolveComponent("KTooltip"),R=n.resolveComponent("KCard");return n.openBlock(),n.createBlock(R,{class:"sp-form-request-limits"},{title:n.withCtx(()=>[n.createVNode(y,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.request_limits.title")),1)]),_:1}),n.createElementVNode("div",Cw,n.toDisplayString(n.unref(t)("sp.request_limits.subtitle")),1)]),default:n.withCtx(()=>[n.createElementVNode("div",vw,[n.createElementVNode("div",Nw,[n.createVNode(kw,{items:u.value,label:n.unref(t)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=O=>p.value=void 0)},null,8,["items","label"])]),n.createElementVNode("div",Sw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(a.value,(O,T)=>(n.openBlock(),n.createElementBlock("div",{key:n.unref(l)(O,T)},[n.createVNode(y,{for:`sp-form-request-limits-item-${T}-legend`},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.request_limits.label_index",{index:T+1})),1)]),_:2},1032,["for"]),n.createElementVNode("div",xw,[n.createElementVNode("legend",{id:`sp-form-request-limits-item-${T}-legend`,class:"sp-form-request-limits-inputs"},[n.createVNode(Vn,{name:`$.config.limit.${T}`,placeholder:n.unref(t)("sp.request_limits.request_number")},null,8,["name","placeholder"]),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.interval_determiner")),1),n.createVNode(Vn,{name:`$.config.window_size.${T}`,placeholder:n.unref(t)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.seconds")),1)],8,Aw),n.createElementVNode("div",Tw,[n.createVNode(v,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(T)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.RemoveIcon))]),_:2},1032,["disabled","onClick"]),n.createVNode(v,{appearance:"tertiary",onClick:()=>s(T)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),g.value.length>0?(n.openBlock(),n.createElementBlock("div",Iw,[n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.start_with_a_use_case")),1),n.createElementVNode("div",Pw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(g.value,(O,T)=>(n.openBlock(),n.createBlock(E,{key:`use-case-${T}`,"max-width":"300"},{content:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(O.description),1),w[1]||(w[1]=n.createElementVNode("br",null,null,-1)),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.label"))+": "+n.toDisplayString(O.config.limit),1),n.createElementVNode("div",null,n.toDisplayString(n.unref(t)("sp.request_limits.time_interval"))+": "+n.toDisplayString(O.config.window_size),1)]),default:n.withCtx(()=>[n.createVNode(k,{appearance:p.value===`${f.value}-${T}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>_(O,`${f.value}-${T}`)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(O.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):n.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),$w={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Bw=we(n.defineComponent({__name:"ErrorMessageForm",setup(e){const{t}=Re.createI18n("en-us",je);return(o,r)=>{const i=n.resolveComponent("KLabel");return n.openBlock(),n.createElementBlock("div",null,[n.createVNode(i,{for:"sp-form-error-legend",info:n.unref(t)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("sp.error_message.label")),1)]),_:1},8,["info"]),n.createElementVNode("legend",$w,[n.createVNode(Vn,{class:"input-error-code",label:"",name:"error_code",placeholder:n.unref(t)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=n.createElementVNode("div",null,":",-1)),n.createVNode(Bn,{class:"input-error-message",label:"",name:"error_message",placeholder:n.unref(t)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Vw={class:"partial-config-card"},Rw={class:"config-card-row-label"},Dw={class:"label-text"},Mw=["data-testid"],Fw=["data-testid"],Lw={key:1},Uw=["data-testid"],Kw=["data-testid"],jw=we(n.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t,formatUnixTimeStamp:o}=Re.createI18n("en-us",je),r={id:{order:1},name:{order:1},type:{label:t("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:t("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:t("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}=ce.useStringHelpers(),c=n.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,g,_,h;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(g=r[u])!=null&&g.formatter?r[u].formatter(p):p,type:((_=r[u])==null?void 0:_.type)??l(u,p),order:((h=r[u])==null?void 0:h.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=A0(i.configFields,i.pluginRedisFields||[]),f=n.computed(()=>c.value.concat(d));return(u,p)=>{const m=n.resolveComponent("KCopy");return n.openBlock(),n.createElementBlock("div",Vw,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(f.value,({key:g,label:_,value:h,type:b})=>(n.openBlock(),n.createElementBlock("div",{key:g,class:"partial-config-card-row"},[n.createElementVNode("div",Rw,[n.createElementVNode("div",Dw,n.toDisplayString(_),1)]),n.createElementVNode("div",{class:"config-card-row-value","data-testid":`${g}-property-value`},[a(h)?(n.openBlock(),n.createElementBlock("div",Lw,[b==="password"?(n.openBlock(),n.createElementBlock("div",{key:0,"data-testid":`${g}-copy-password`},[n.createVNode(m,{format:"redacted",text:String(h)},null,8,["text"])],8,Uw)):(n.openBlock(),n.createElementBlock("div",{key:1,"data-testid":`${g}-plain-text`},n.toDisplayString(h),9,Kw))])):(n.openBlock(),n.createElementBlock("div",{key:0,"data-testid":`${g}-no-value`}," – ",8,Fw))],8,Mw)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Gw=we(n.defineComponent({__name:"NewRedisPartialModal",props:{visible:{type:Boolean,default:!1},partialType:{type:String,default:""}},emits:["partialUpdated","partialUpdateFailed","modalClose"],setup(e,{emit:t}){const o=e,{t:r}=Re.createI18n("en-us",je),i=n.inject(ve.FORMS_CONFIG),a=t,{getMessageFromError:l}=ce.useErrors(),s=n.computed(()=>{switch(o.partialType){case oo.PartialType.REDIS_CE:return oo.PartialType.REDIS_EE;case oo.PartialType.REDIS_EE:return oo.PartialType.REDIS_CE;default:return}}),c=n.ref(!1),d=n.ref(),f=m=>{a("partialUpdateFailed",{message:l(m),appearance:"danger"})},u=()=>{a("partialUpdated",{message:r("plugins.free-form.redis_partial.partial_created_success_message"),appearance:"success"}),p()},p=()=>{d.value=void 0,a("modalClose"),n.nextTick(()=>{c.value=!1})};return n.watch(()=>o.visible,m=>{m&&(c.value=!0,n.nextTick(()=>{d.value="#km-modal-footer"}))}),(m,g)=>{const _=n.resolveComponent("KModal");return n.openBlock(),n.createBlock(_,{class:"plugin-redis-partial-form","data-testid":"redis-partial-form-modal","full-screen":"",title:n.unref(r)("plugins.free-form.redis_partial.redis_partial_modal_title"),visible:c.value,onCancel:p},{footer:n.withCtx(()=>g[0]||(g[0]=[n.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:n.withCtx(()=>[n.createVNode(n.unref(oo.RedisConfigurationForm),{"action-teleport-target":d.value,config:n.unref(i),"disabled-partial-type":s.value,"slidout-top-offset":0,onCancel:p,onError:f,onUpdate:u},null,8,["action-teleport-target","config","disabled-partial-type"])]),_:1},8,["title","visible"])}}}),[["__scopeId","data-v-ac12474e"]]),qw="#52596e",zw="#e0e4ea",Hw="#d60027",Yw="#00abd2",Rc="#afb7c5",go="12px",Ww="16px",ga="20px",Xw="24px",Zw="8px",Dc=Symbol("redis-partial-info"),Mc={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"}},Fc=["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"],Jw={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},Qw={key:0,class:"shared-redis-config"},eE={class:"shared-redis-config-title"},tE={class:"redis-config-select","data-testid":"redis-config-select"},nE={class:"selected-redis-config"},oE=["data-testid"],rE={class:"select-item-name","data-testid":"selected-redis-config"},iE={class:"empty-redis-config","data-testid":"empty-redis-config"},aE={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},lE="1000",sE=we(n.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:t}){var L;const o=t,{t:r}=Re.createI18n("en-us",je),i=e,a=n.inject(Dc),l=(a==null?void 0:a.isEditing)||!1,s=n.computed(()=>{var F;return i.redisPath?i.redisPath:(F=a==null?void 0:a.redisPath)!=null&&F.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((L=a==null?void 0:a.redisType)==null?void 0:L.value)||"all",d=n.computed(()=>{var F;return!!((F=a==null?void 0:a.redisType)!=null&&F.value)}),f=n.ref(!1),u=n.ref(null),p=n.ref(!l),{getMessageFromError:m}=ce.useErrors(),g=n.ref(i.defaultRedisConfigItem),_=n.ref({}),h=n.ref(),{value:b}=Ic("$.partials"),{value:w}=ct(s),y=n.inject(ve.FORMS_CONFIG),{debouncedQueryChange:v,loading:k,error:E,loadItems:R,results:O}=ce.useDebouncedFilter(y,Mc[y.app].getAll,lE,{fetchedItemsKey:"data",searchKeys:["id","name"]}),T=n.computed(()=>E.value?m(E.value):""),q=F=>{let B=`${y.apiBaseUrl}${Mc[y.app].getOne}`;return y.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,(y==null?void 0:y.controlPlaneId)||""):y.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,y!=null&&y.workspace?`/${y.workspace}`:"")),B=B.replace(/{id}/gi,String(F)),B},j=n.computed(()=>{const F=(O.value||[]).map(B=>({label:B.id,name:B.name,value:B.id,type:B.type,tag:N0(B)})).filter(B=>B.type==="redis-ce"||B.type==="redis-ee");return c!=="all"?F.filter(B=>B.type===c):F}),{axiosInstance:A}=ce.useAxios(y==null?void 0:y.axiosRequestConfig),I=()=>{p.value?(h.value&&(b.value=h.value,g.value=h.value[0].id,w.value=void 0),w!=null&&w.value&&(_.value=w.value)):(Object.keys(_.value).length&&(w.value=_.value),b!=null&&b.value&&(h.value=b.value),b.value=l?null:void 0)},C=F=>{R(),o("globalAction","notify",F)},D=F=>{o("globalAction","notify",F)},P=async F=>{if(F){g.value=F,b.value=[{id:F}],h.value=[{id:F}],w.value=void 0;try{const B=await A.get(q(F));if(B.data.config){const $=Object.assign(B.data,B.data.config);delete $.config,u.value=$}}catch(B){console.error(B)}}};return n.watch(()=>p.value,()=>{I()}),n.onBeforeMount(()=>{var F;if(R(),i.defaultRedisConfigItem||b!=null&&b.value){const B=i.defaultRedisConfigItem||((F=b==null?void 0:b.value)==null?void 0:F[0].id);P(B),p.value=!0}else w!=null&&w.value&&(_.value=w.value)}),(F,B)=>{const $=n.resolveComponent("KBadge"),G=n.resolveComponent("KRadio"),ee=n.resolveComponent("KSelect"),re=n.resolveComponent("KCard");return d.value?(n.openBlock(),n.createBlock(re,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:n.unref(r)("redis.title")},{default:n.withCtx(()=>[n.createElementVNode("div",Jw,[n.createVNode(G,{modelValue:p.value,"onUpdate:modelValue":B[0]||(B[0]=J=>p.value=J),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:n.unref(r)("redis.shared_configuration.description"),label:n.unref(r)("redis.shared_configuration.label"),"selected-value":!0},{default:n.withCtx(()=>[n.createVNode($,{appearance:"success"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(r)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),n.createVNode(G,{modelValue:p.value,"onUpdate:modelValue":B[1]||(B[1]=J=>p.value=J),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:n.unref(r)("redis.dedicated_configuration.description"),label:n.unref(r)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),p.value?(n.openBlock(),n.createElementBlock("div",Qw,[n.createElementVNode("div",eE,n.toDisplayString(n.unref(r)("redis.shared_configuration.title")),1),n.createElementVNode("div",tE,[n.createVNode(ee,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:j.value,loading:n.unref(k),"model-value":g.value,placeholder:n.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:B[3]||(B[3]=J=>P(J==null?void 0:J.value)),onQueryChange:n.unref(v)},{"selected-item-template":n.withCtx(({item:J})=>[n.createElementVNode("div",nE,n.toDisplayString(J.name),1)]),"item-template":n.withCtx(({item:J})=>[n.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${J.name}`},[n.createElementVNode("span",rE,n.toDisplayString(J.name),1),n.createVNode($,{appearance:"info",class:"select-item-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(J.tag),1)]),_:2},1024)],8,oE)]),empty:n.withCtx(()=>[n.createElementVNode("div",iE,n.toDisplayString(n.unref(r)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":n.withCtx(()=>[n.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:B[2]||(B[2]=()=>f.value=!0)},[n.createVNode(n.unref(Ee.AddIcon),{size:n.unref(go)},null,8,["size"]),n.createElementVNode("span",null,n.toDisplayString(n.unref(r)("redis.shared_configuration.create_new_configuration",{type:n.unref(x0)(n.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),u.value?(n.openBlock(),n.createBlock(jw,{key:0,"config-fields":u.value},null,8,["config-fields"])):n.createCommentVNode("",!0),T.value?(n.openBlock(),n.createElementBlock("p",aE,n.toDisplayString(T.value||n.unref(r)("redis.shared_configuration.error")),1)):n.createCommentVNode("",!0)])):(n.openBlock(),n.createBlock(dt,n.mergeProps({key:1},i,{"as-child":"","fields-order":n.unref(Fc),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),n.createVNode(Gw,{"partial-type":n.unref(c),visible:f.value,onModalClose:B[4]||(B[4]=J=>f.value=!1),onPartialUpdateFailed:D,onPartialUpdated:C},null,8,["partial-type","visible"])]),_:1},8,["title"])):(n.openBlock(),n.createBlock(dt,n.mergeProps({key:1},i,{"fields-order":n.unref(Fc),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-12b9ad82"]]),cE=n.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:t}=Ve();return n.watchEffect(()=>{t.config&&t.config.strategy!=="redis"&&(t.partials=void 0)}),(o,r)=>(n.openBlock(),n.createBlock($c,null,{default:n.withCtx(()=>{var i;return[((i=n.unref(t).config)==null?void 0:i.strategy)==="redis"?(n.openBlock(),n.createBlock(sE,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):n.createCommentVNode("",!0)]}),_:1}))}}),dE=n.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change","globalAction"],setup(e,{emit:t}){const o=t,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)=>(n.openBlock(),n.createBlock(mt,{class:"rc-config-form",config:r,data:a.data,schema:a.schema,tag:"div",onChange:i},{default:n.withCtx(()=>[n.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:n.withCtx(()=>[n.createVNode(Ow),n.createVNode(Bw)]),_:1}),n.createVNode(fa,null,{default:n.withCtx(()=>[n.createVNode(Qe,{name:"config.dictionary_name"}),n.createVNode(Qe,{name:"config.lock_dictionary_name"}),n.createVNode(Qe,{name:"config.strategy"}),n.createVNode(cE,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),n.createVNode(Qe,{name:"config.namespace"}),n.createVNode(Qe,{name:"config.hide_client_headers"}),n.createVNode(Qe,{name:"config.disable_penalty"}),n.createVNode(Qe,{name:"config.retry_after_jitter_max"}),n.createVNode(Qe,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),uE=n.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},emits:["globalAction"],setup(e){const t=e,o=n.useSlots();return n.provide(ve.AUTOFILL_SLOT,o==null?void 0:o[ve.AUTOFILL_SLOT_NAME]),(r,i)=>(n.openBlock(),n.createBlock(pa,n.normalizeProps(n.guardReactiveProps(t)),{default:n.withCtx(a=>[n.createVNode(dE,n.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),fE={class:"ff-standard-layout"},pE={class:"enabled"},mE={class:"scope"},gE={key:0,class:"scope-detail"},hE=we(n.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t}=Re.createI18n("en-us",je),o=e,r=n.useSlots();n.provide(ve.AUTOFILL_SLOT,r==null?void 0:r[ve.AUTOFILL_SLOT_NAME]);const i=n.computed(()=>{var h;return{fields:(h=o.formSchema)==null?void 0:h.fields.filter(b=>b.model==="enabled")}}),a=n.computed(()=>{var h;return(h=o.formSchema)==null?void 0:h.fields.find(b=>b.model==="selectionGroup")}),l=n.computed(()=>(a.value.fields||[]).map(({label:h,description:b})=>({label:h,description:b}))),s=n.computed(()=>a.value.fields[1]),c=n.computed(()=>{var b;const h=["instance_name","protocols","tags"];return{fields:(b=o.formSchema)==null?void 0:b.fields.filter(w=>h.includes(w.model))}}),d=["config"],f=n.computed(()=>{const h=o.schema;return h.fields=h.fields.filter(b=>d.includes(Object.keys(b)[0])),h});function u(h){return na(h,["config","partials"])}const p=n.ref(!1),m=n.ref(!0),g=na(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]);function _(h,b){g[b]=h,o.onModelUpdated(h,b)}return n.watch(p,h=>{h?Object.keys(g).forEach(b=>{o.onModelUpdated(g[b],b)}):Object.keys(g).forEach(b=>{o.onModelUpdated("",b)})}),(h,b)=>{const w=n.resolveComponent("KCollapse");return n.openBlock(),n.createElementBlock("div",fE,[n.createVNode(n.unref(ce.EntityFormBlock),{description:n.unref(t)("plugins.form.sections.general_info.description"),step:1,title:n.unref(t)("plugins.form.sections.general_info.title")},n.createSlots({default:n.withCtx(()=>[n.createElementVNode("div",pE,[n.createVNode(n.unref(ve.VueFormGenerator),{model:h.formModel,options:h.formOptions,schema:i.value,onModelUpdated:h.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),n.createElementVNode("div",mE,[n.createVNode(n.unref(Ie.KRadio),n.mergeProps({modelValue:p.value,"onUpdate:modelValue":b[0]||(b[0]=y=>p.value=y),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),n.createVNode(n.unref(Ie.KRadio),n.mergeProps({modelValue:p.value,"onUpdate:modelValue":b[1]||(b[1]=y=>p.value=y),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),p.value?(n.openBlock(),n.createElementBlock("div",gE,[n.createVNode(n.unref(ve.VueFormGenerator),{model:h.formModel,options:h.formOptions,schema:s.value,onModelUpdated:_},null,8,["model","options","schema"])])):n.createCommentVNode("",!0),n.createVNode(w,{modelValue:m.value,"onUpdate:modelValue":b[2]||(b[2]=y=>m.value=y),"trigger-label":"Show more"},{default:n.withCtx(()=>[n.createVNode(n.unref(ve.VueFormGenerator),{model:h.formModel,options:h.formOptions,schema:c.value,onModelUpdated:h.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:n.withCtx(()=>[n.renderSlot(h.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:n.withCtx(()=>[n.renderSlot(h.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:n.withCtx(()=>[n.renderSlot(h.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),n.createVNode(n.unref(ce.EntityFormBlock),{description:n.unref(t)("plugins.form.sections.plugin_config.description"),step:2,title:n.unref(t)("plugins.form.sections.plugin_config.title")},n.createSlots({default:n.withCtx(()=>[n.renderSlot(h.$slots,"default",{data:u(h.model),schema:f.value,onChange:b[3]||(b[3]=(...y)=>h.onFormChange&&h.onFormChange(...y))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:n.withCtx(()=>[n.renderSlot(h.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:n.withCtx(()=>[n.renderSlot(h.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:n.withCtx(()=>[n.renderSlot(h.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-a727028f"]]),{t:ha}=Re.createI18n("en-us",je);function kt(e){return ha(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function ho(e){return ha(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function yE(e){return ha(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const _r={call:{type:"call",summary:ho("call"),description:kt("call"),icon:Ee.NetworkIcon,io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}}},jq:{type:"jq",summary:ho("jq"),description:kt("jq"),icon:Ee.CodeblockIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},exit:{type:"exit",summary:ho("exit"),description:kt("exit"),icon:Ee.GatewayIcon,io:{input:{fields:[{name:"headers"},{name:"body"}]}}},property:{type:"property",summary:ho("property"),description:kt("property"),icon:Ee.StackIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},static:{type:"static",summary:ho("static"),description:kt("static"),icon:Ee.VitalsIcon,io:{output:{fields:[],configurable:!0}}}},br={request:{type:"request",description:kt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_request:{type:"service_request",description:kt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_response:{type:"service_response",description:kt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}}},response:{type:"response",description:kt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}}}},Lc=Object.keys(br),ya=e=>Lc.includes(e),Bt=e=>Lc.includes(e),Uc=e=>Bt(e.type),_E="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let bE=(e=21)=>{let t="",o=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)t+=_E[o[e]&63];return t};function Rn(e){return Tn(e)}function yo(e){return`${e}:${bE()}`}function wr(e){const[t,o]=e.split(".");return{nodeName:t,fieldName:o}}function Kc(e){const[t,o]=e.split(".");return{nodeId:t,fieldId:o}}function _a(e){return Bt(e)?br[e]:_r[e]}function jc(e){var i,a,l,s,c,d;const t=_a(e),o=((l=(a=(i=t.io)==null?void 0:i.input)==null?void 0:a.fields)==null?void 0:l.map(({name:f})=>f))??[],r=((d=(c=(s=t.io)==null?void 0:s.output)==null?void 0:c.fields)==null?void 0:d.map(({name:f})=>f))??[];return{input:o,output:r}}function Gc(e){return(e??[]).map(t=>({id:yo("field"),name:t}))}function Dn(e,t,o){if(o)return e.fields[t].find(r=>r.name===o)}function an(e,t,o){if(o)return e.fields[t].find(r=>r.id===o)}function ba(e,t){return t?e.fields.output.some(o=>o.id===t):!0}function qc(e,t){return t?e.fields.input.some(o=>o.id===t):!0}const wE=["request","service_request","service_response","response"];function EE(e){const t=e==="request"||e==="service_request"?"request":"response",o=br[e];return{name:e,phase:t,position:{x:0,y:0},fields:jc(o.type),expanded:{}}}function kE(e,t){const o=e.toUpperCase();let r=1;for(;t.has(`${o}_${r}`);)r++;return`${o}_${r}`}function CE(e,t){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d}=Je.useManualRefHistory(e,{capacity:t==null?void 0:t.capacity,clone:t==null?void 0:t.clone});let f;function u(b){var w;(w=t==null?void 0:t.onHistoryChange)==null||w.call(t,b,e.value)}function p(b,w){if(!!(w!=null&&w.replace)&&b&&f===b&&d.value.length>0&&d.value.pop(),f!==b){f=b,o(),u("commit");return}const v=d.value[0]??null;o(),d.value.shift(),v&&d.value.unshift(v),u("commit")}function m(){r(),f=void 0,u("undo")}function g(){i(),f=void 0,u("redo")}function _(){s(),f=void 0,u("clear")}function h(){c(),f=void 0,u("reset")}return{canUndo:a,canRedo:l,commit:p,undo:m,redo:g,clear:_,reset:h}}function zc(e,t){var d,f;const o=new Map(t.map(u=>[u.name,u])),r=[],i=[],a=new Map,l=[],s=new Map,c=u=>{const p=new Set,m=[...u];for(;m.length>0;){const g=m.shift();if(!p.has(g)&&(p.add(g),ya(g)||(a.get(g).phase="request"),!!s.has(g)))for(const _ of s.get(g))p.has(_)||m.push(_)}};for(const u of e){const p=o.get(u.name),m=Yc(u.type,u,p);r.push(m),a.set(m.name,m)}for(const u of wE)if(!a.has(u)){const p=o.get(u)??EE(u),m=Yc(u,void 0,p);r.push(m),a.set(m.name,m)}for(const u of e)SE(u,l);for(const u of l){const p=a.get(u.source),m=a.get(u.target);if(!p||!m){p||console.warn(`[initEditorState] skip: source "${u.source}" not found`),m||console.warn(`[initEditorState] skip: target "${u.target}" not found`);continue}s.has(u.source)||s.set(u.source,new Set),s.get(u.source).add(u.target),s.has(u.target)||s.set(u.target,new Set),s.get(u.target).add(u.source),i.push({id:yo("edge"),source:p.id,sourceField:(d=Dn(p,"output",u.sourceField))==null?void 0:d.id,target:m.id,targetField:(f=Dn(m,"input",u.targetField))==null?void 0:f.id})}return c(["request","service_request"]),{nodes:r,edges:i}}function Hc(e){const{type:t,name:o,phase:r,position:i,fields:a,config:l}=e,s=jc(t);return{id:yo("node"),type:t,name:o??t,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Gc((a==null?void 0:a.input)??s.input),output:Gc((a==null?void 0:a.output)??s.output)},config:l?Rn(l):{}}}function vE(e){return Bt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Yc(e,t,o){return Hc({type:e,name:t==null?void 0:t.name,phase:(o==null?void 0:o.phase)??vE(e),position:o==null?void 0:o.position,fields:xE(t,o),config:t?NE(t):void 0})}function NE(e){const{type:t,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return Rn(s)}function SE(e,t){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=wr(e.input);r&&t.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}=wr(i);a&&t.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=wr(e.output);r&&t.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}=wr(i);a&&t.push({source:o,sourceField:r,target:a,targetField:l})}}function xE(e,t){var a,l;if(!e&&!t)return;const o=new Set,r=new Set;e!=null&&e.inputs&&Object.keys(e.inputs).forEach(s=>o.add(s)),e!=null&&e.outputs&&Object.keys(e.outputs).forEach(s=>r.add(s)),(a=t==null?void 0:t.fields)!=null&&a.input&&t.fields.input.forEach(s=>o.add(s)),(l=t==null?void 0:t.fields)!=null&&l.output&&t.fields.output.forEach(s=>r.add(s));const i={};return o.size&&(i.input=Array.from(o)),r.size&&(i.output=Array.from(r)),Object.keys(i).length?i:void 0}function AE(e){const t=n.computed(()=>{const c=new Map;return e.value.nodes.forEach(d=>c.set(d.id,d)),c}),o=n.computed(()=>e.value.edges);function r(c){const d=t.value.get(c.source),f=t.value.get(c.target);if(!d||!f)return c;const u=qc(d,c.sourceField)&&!ba(d,c.sourceField),p=ba(f,c.targetField);return u&&p?{source:c.target,sourceField:c.targetField,target:c.source,targetField:c.sourceField}:c}function i(c){const d=r(c),f=[],u=t.value.get(d.source),p=t.value.get(d.target);if(u||f.push("source node not found"),p||f.push("target node not found"),!u||!p)return{ok:!1,errors:f};ba(u,d.sourceField)||f.push("source handle is not an output field"),qc(p,d.targetField)||f.push("target handle is not an input field"),u.phase==="response"&&p.phase==="request"&&f.push("cannot connect from response phase to request phase"),p.name==="request"&&f.push('cannot target "request"'),u.name==="response"&&f.push('cannot source from "response"'),u.phase==="response"&&p.phase!=="response"&&f.push("response-phase output must go to response-phase nodes");const m=o.value.some(h=>h.target===d.target&&!h.targetField),g=o.value.some(h=>h.target===d.target&&!!h.targetField);(m&&d.targetField||g&&!d.targetField)&&f.push("cannot mix whole-node and field-level inputs on same target"),d.targetField&&o.value.some(h=>h.target===d.target&&h.targetField===d.targetField)&&f.push("target field already connected"),!d.targetField&&o.value.some(h=>h.target===d.target&&!h.targetField)&&f.push("target input already taken"),d.source===d.target&&f.push("self-loop not allowed");const _=Er(o.value,d);return wa(_)&&f.push("connection introduces a cycle"),f.length?{ok:!1,errors:f}:{ok:!0}}function a(){const c=[],d=["request","service_request","service_response","response"];for(const f of d)[...t.value.values()].some(u=>u.name===f)||c.push(`missing implicit node "${f}"`);for(const f of o.value){const u=t.value.get(f.source),p=t.value.get(f.target);u.phase==="response"&&p.phase==="request"&&c.push(`edge "${f.id}" crosses phases (response → request)`),p.name==="request"&&c.push(`edge "${f.id}" targets "request"`),u.name==="response"&&c.push(`edge "${f.id}" sources from "response"`),u.phase==="response"&&p.phase!=="response"&&c.push(`edge "${f.id}" violates response-phase rule`)}return wa(Er(o.value))&&c.push("graph contains cycle"),c.length?{ok:!1,errors:c}:{ok:!0}}function l(c){return i(c).ok}function s(c){return!c.source||!c.target?!1:l({source:c.source,sourceField:c.sourceHandle,target:c.target,targetField:c.targetHandle})}return{canonicalizeConnection:r,validateConnection:i,validateGraph:a,isValidConnection:l,isValidVueFlowConnection:s,buildAdjacency:Er}}function wa(e){const t=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(t.has(i))return!1;t.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 Er(e,t){const o=new Map;for(const r of e)o.has(r.source)||o.set(r.source,[]),o.get(r.source).push(r.target),o.has(r.target)||o.set(r.target,[]);return t&&(o.has(t.source)||o.set(t.source,[]),o.get(t.source).push(t.target),o.has(t.target)||o.set(t.target,[])),o}const[TE,IE]=Je.createInjectionState(function(t,o,r={}){const i=n.ref(zc(t,o)),a=n.ref(),l=n.ref(!1),s=n.ref(!1),c=CE(i,{capacity:200,clone:Rn,onHistoryChange:Y=>{var te;Y!=="clear"&&((te=r.onChange)==null||te.call(r,{nodes:oe()}))}}),d=n.ref(null),f=n.ref(new Set),u=n.computed(()=>new Map(i.value.nodes.map(Y=>[Y.id,Y]))),p=n.computed(()=>new Map(i.value.nodes.map(Y=>[Y.name,Y]))),m=n.computed(()=>{const Y=new Map,te=new Map;for(const N of i.value.edges)Y.set(N.id,N),te.has(N.source)||te.set(N.source,new Set),te.get(N.source).add(N.id),te.has(N.target)||te.set(N.target,new Set),te.get(N.target).add(N.id);return{edgeMapById:Y,edgeIdMapByNodeId:te}}),g=n.computed(()=>m.value.edgeMapById),_=n.computed(()=>m.value.edgeIdMapByNodeId),h=n.computed(()=>new Set(i.value.nodes.map(Y=>Y.name))),{canonicalizeConnection:b,validateConnection:w,validateGraph:y,isValidConnection:v,isValidVueFlowConnection:k}=AE(i);function E(Y){return u.value.get(Y)}function R(Y){return p.value.get(Y)}function O(Y){return g.value.get(Y)}function T(Y){if(!_.value.has(Y))return[];const te=[];return _.value.get(Y).forEach(N=>{const S=O(N);S&&te.push(S)}),te}function q(Y){return T(Y).filter(te=>te.target===Y)}function j(Y){return T(Y).filter(te=>te.source===Y)}const A=n.computed(()=>a.value?E(a.value):void 0);function I(Y){a.value=Y}function C(Y){if(Bt(Y.type))throw new Error("[createNode] implicit nodes are fixed.");return Hc({type:Y.type,name:Y.name||(Bt(Y.type)?void 0:kE(Y.type,h.value)),phase:Y.phase,position:Y.position,fields:Y.fields,config:Y.config})}function D(Y,te=!0){const N=C(Y);if(N)return i.value.nodes.push(N),te&&c.commit(),N.id}function P(Y,te=!0){i.value.edges=i.value.edges.filter(S=>S.source!==Y&&S.target!==Y),i.value.nodes=i.value.nodes.filter(S=>S.id!==Y),a.value===Y&&(a.value=void 0);const N=y();N.ok||console.warn("[removeNode] topology invalid:",N.errors.join("; ")),te&&c.commit()}function L(Y,te,N=!0,S){const x=E(Y);if(x){if(ya(x.name)){console.warn("[renameNode] implicit node name is reserved.");return}x.name=te,N&&c.commit(S)}}function F(Y,te,N=!0){const S=E(Y);S&&(S.position={...te},N&&c.commit())}function B(Y,te,N,S=!0){const x=E(Y);x&&(x.expanded[te]=N??!x.expanded[te],S&&c.commit(`toggle:${Y}:${te}`))}function $(Y,te,N=!0,S){const x=E(Y);x&&(x.config=Rn(te),N&&c.commit(S))}function G(Y,te,N,S=!0){const x=E(Y);if(!x)return;const V=x.fields[te];if(V.some(M=>M.name===N)){console.warn(`[addField] field "${N}" already exists on ${te}.`);return}V.push({id:yo("field"),name:N}),te==="input"?x.fields.input=V:x.fields.output=V,S&&c.commit()}function ee(Y,te,N,S=!0){const x=E(Y);if(!x)return;const V=x.fields.input,M=x.fields.output,X=V.find(Q=>Q.id===te)??M.find(Q=>Q.id===te);X&&(X.name=N,S&&c.commit())}function re(Y,te,N=!0,S=!0){const x=E(Y);if(!x)return;const V=x.fields.input,M=x.fields.output,X=V.findIndex(W=>W.id===te);X>=0&&V.splice(X,1);const Q=M.findIndex(W=>W.id===te);Q>=0&&M.splice(Q,1),x.fields.input=V,x.fields.output=M,N&&(i.value.edges=i.value.edges.filter(W=>W.sourceField!==te&&W.targetField!==te));const U=y();U.ok||console.warn("[removeField] topology invalid:",U.errors.join("; ")),S&&c.commit()}function J(Y,te=!0){const N=b(Y),S=w(N);if(!S.ok){console.warn("[connectEdge] invalid connection:",S.errors.join("; "));return}const x={id:yo("edge"),...N};i.value.edges.push(x);const V=y();if(!V.ok){i.value.edges.pop(),console.warn("[connectEdge] topology invalid:",V.errors.join("; "));return}return te&&c.commit(),x.id}function ne(Y,te,N=!0){z(Y,!1),J(te,!1),N&&c.commit()}function z(Y,te=!0){const N=i.value.edges.findIndex(V=>V.id===Y);if(N<0)return;const S=i.value.edges[N];i.value.edges.splice(N,1);const x=y();if(!x.ok){i.value.edges.splice(N,0,S),console.warn("[disconnectEdge] topology invalid:",x.errors.join("; "));return}te&&c.commit()}function Z(Y,te=!0){const N=q(Y);for(const S of N)z(S.id,!1);te&&c.commit()}function ie(Y,te=!0){const N=j(Y);for(const S of N)z(S.id,!1);te&&c.commit()}function oe(){var te,N,S,x,V;const Y=[];for(const M of i.value.nodes){if(Bt(M.type))continue;let X;const Q={};let U;const W={};for(const ae of i.value.edges.filter(_e=>_e.target===M.id)){const _e=E(ae.source);if(!_e)continue;const be=(te=an(_e,"output",ae.sourceField))==null?void 0:te.name,Ce=be?`${_e.name}.${be}`:_e.name,xe=(N=an(M,"input",ae.targetField))==null?void 0:N.name;xe?Q[xe]=Ce:X===void 0&&(X=Ce)}for(const ae of i.value.edges.filter(_e=>_e.source===M.id)){const _e=E(ae.target);if(!_e)continue;const be=_e.type;if(!Bt(be)||!((S=br[be].io)!=null&&S.input))continue;const Ce=(x=an(_e,"input",ae.targetField))==null?void 0:x.name,xe=Ce?`${_e.name}.${Ce}`:_e.name,pe=(V=an(M,"output",ae.sourceField))==null?void 0:V.name;pe?W[pe]=xe:U===void 0&&(U=xe)}const K={...Rn(M.config),name:M.name,type:M.type};Object.keys(Q).length>0?K.inputs=Q:X!==void 0&&(K.input=X),Object.keys(W).length>0?K.outputs=W:U!==void 0&&(K.output=U),Y.push(K)}return Y}function ue(){return i.value.nodes.map(Y=>Rn({name:Y.name,phase:Y.phase,position:{...Y.position},expanded:{...Y.expanded},fields:{input:Y.fields.input.map(te=>te.name),output:Y.fields.output.map(te=>te.name)}}))}function de(Y,te){i.value=zc(Y,te),c.reset()}return{state:i,selection:a,modalOpen:l,newCreatedNodeId:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,nodeMapById:u,nodeMapByName:p,edgeMapById:g,edgeIdMapByNodeId:_,getNodeById:E,getNodeByName:R,getEdgeById:O,getEdgesByNodeId:T,getInEdgesByNodeId:q,getOutEdgesByNodeId:j,selectedNode:A,selectNode:I,createNode:C,addNode:D,removeNode:P,renameNode:L,moveNode:F,toggleExpanded:B,replaceConfig:$,addField:G,renameField:ee,removeField:re,connectEdge:J,replaceConnection:ne,disconnectEdge:z,disconnectInEdges:Z,disconnectOutEdges:ie,toConfigNodes:oe,toUINodes:ue,load:de,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,isValidConnection:v,isValidVueFlowConnection:k,validateGraph:()=>y()}});function rt(){const e=IE();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const Ea=Je.createGlobalState(()=>{const e=Je.useLocalStorage("datakit-editor-mode","flow"),t=Je.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:t}});typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const PE=e=>e!=null;/*!
14
- * tabbable 6.2.0
15
- * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE
16
- */var Wc=["input:not([inert])","select:not([inert])","textarea:not([inert])","a[href]:not([inert])","button:not([inert])","[tabindex]:not(slot):not([inert])","audio[controls]:not([inert])","video[controls]:not([inert])",'[contenteditable]:not([contenteditable="false"]):not([inert])',"details>summary:first-of-type:not([inert])","details:not([inert])"],kr=Wc.join(","),Xc=typeof Element>"u",ln=Xc?function(){}:Element.prototype.matches||Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector,Cr=!Xc&&Element.prototype.getRootNode?function(e){var t;return e==null||(t=e.getRootNode)===null||t===void 0?void 0:t.call(e)}:function(e){return e==null?void 0:e.ownerDocument},vr=function e(t,o){var r;o===void 0&&(o=!0);var i=t==null||(r=t.getAttribute)===null||r===void 0?void 0:r.call(t,"inert"),a=i===""||i==="true",l=a||o&&t&&e(t.parentNode);return l},OE=function(t){var o,r=t==null||(o=t.getAttribute)===null||o===void 0?void 0:o.call(t,"contenteditable");return r===""||r==="true"},Zc=function(t,o,r){if(vr(t))return[];var i=Array.prototype.slice.apply(t.querySelectorAll(kr));return o&&ln.call(t,kr)&&i.unshift(t),i=i.filter(r),i},Jc=function e(t,o,r){for(var i=[],a=Array.from(t);a.length;){var l=a.shift();if(!vr(l,!1))if(l.tagName==="SLOT"){var s=l.assignedElements(),c=s.length?s:l.children,d=e(c,!0,r);r.flatten?i.push.apply(i,d):i.push({scopeParent:l,candidates:d})}else{var f=ln.call(l,kr);f&&r.filter(l)&&(o||!t.includes(l))&&i.push(l);var u=l.shadowRoot||typeof r.getShadowRoot=="function"&&r.getShadowRoot(l),p=!vr(u,!1)&&(!r.shadowRootFilter||r.shadowRootFilter(l));if(u&&p){var m=e(u===!0?l.children:u.children,!0,r);r.flatten?i.push.apply(i,m):i.push({scopeParent:l,candidates:m})}else a.unshift.apply(a,l.children)}}return i},Qc=function(t){return!isNaN(parseInt(t.getAttribute("tabindex"),10))},sn=function(t){if(!t)throw new Error("No node provided");return t.tabIndex<0&&(/^(AUDIO|VIDEO|DETAILS)$/.test(t.tagName)||OE(t))&&!Qc(t)?0:t.tabIndex},$E=function(t,o){var r=sn(t);return r<0&&o&&!Qc(t)?0:r},BE=function(t,o){return t.tabIndex===o.tabIndex?t.documentOrder-o.documentOrder:t.tabIndex-o.tabIndex},ed=function(t){return t.tagName==="INPUT"},VE=function(t){return ed(t)&&t.type==="hidden"},RE=function(t){var o=t.tagName==="DETAILS"&&Array.prototype.slice.apply(t.children).some(function(r){return r.tagName==="SUMMARY"});return o},DE=function(t,o){for(var r=0;r<t.length;r++)if(t[r].checked&&t[r].form===o)return t[r]},ME=function(t){if(!t.name)return!0;var o=t.form||Cr(t),r=function(s){return o.querySelectorAll('input[type="radio"][name="'+s+'"]')},i;if(typeof window<"u"&&typeof window.CSS<"u"&&typeof window.CSS.escape=="function")i=r(window.CSS.escape(t.name));else try{i=r(t.name)}catch(l){return console.error("Looks like you have a radio button with a name attribute containing invalid CSS selector characters and need the CSS.escape polyfill: %s",l.message),!1}var a=DE(i,t.form);return!a||a===t},FE=function(t){return ed(t)&&t.type==="radio"},LE=function(t){return FE(t)&&!ME(t)},UE=function(t){var o,r=t&&Cr(t),i=(o=r)===null||o===void 0?void 0:o.host,a=!1;if(r&&r!==t){var l,s,c;for(a=!!((l=i)!==null&&l!==void 0&&(s=l.ownerDocument)!==null&&s!==void 0&&s.contains(i)||t!=null&&(c=t.ownerDocument)!==null&&c!==void 0&&c.contains(t));!a&&i;){var d,f,u;r=Cr(i),i=(d=r)===null||d===void 0?void 0:d.host,a=!!((f=i)!==null&&f!==void 0&&(u=f.ownerDocument)!==null&&u!==void 0&&u.contains(i))}}return a},td=function(t){var o=t.getBoundingClientRect(),r=o.width,i=o.height;return r===0&&i===0},KE=function(t,o){var r=o.displayCheck,i=o.getShadowRoot;if(getComputedStyle(t).visibility==="hidden")return!0;var a=ln.call(t,"details>summary:first-of-type"),l=a?t.parentElement:t;if(ln.call(l,"details:not([open]) *"))return!0;if(!r||r==="full"||r==="legacy-full"){if(typeof i=="function"){for(var s=t;t;){var c=t.parentElement,d=Cr(t);if(c&&!c.shadowRoot&&i(c)===!0)return td(t);t.assignedSlot?t=t.assignedSlot:!c&&d!==t.ownerDocument?t=d.host:t=c}t=s}if(UE(t))return!t.getClientRects().length;if(r!=="legacy-full")return!0}else if(r==="non-zero-area")return td(t);return!1},jE=function(t){if(/^(INPUT|BUTTON|SELECT|TEXTAREA)$/.test(t.tagName))for(var o=t.parentElement;o;){if(o.tagName==="FIELDSET"&&o.disabled){for(var r=0;r<o.children.length;r++){var i=o.children.item(r);if(i.tagName==="LEGEND")return ln.call(o,"fieldset[disabled] *")?!0:!i.contains(t)}return!0}o=o.parentElement}return!1},Nr=function(t,o){return!(o.disabled||vr(o)||VE(o)||KE(o,t)||RE(o)||jE(o))},ka=function(t,o){return!(LE(o)||sn(o)<0||!Nr(t,o))},GE=function(t){var o=parseInt(t.getAttribute("tabindex"),10);return!!(isNaN(o)||o>=0)},qE=function e(t){var o=[],r=[];return t.forEach(function(i,a){var l=!!i.scopeParent,s=l?i.scopeParent:i,c=$E(s,l),d=l?e(i.candidates):s;c===0?l?o.push.apply(o,d):o.push(s):r.push({documentOrder:a,tabIndex:c,item:i,isScope:l,content:d})}),r.sort(BE).reduce(function(i,a){return a.isScope?i.push.apply(i,a.content):i.push(a.content),i},[]).concat(o)},zE=function(t,o){o=o||{};var r;return o.getShadowRoot?r=Jc([t],o.includeContainer,{filter:ka.bind(null,o),flatten:!1,getShadowRoot:o.getShadowRoot,shadowRootFilter:GE}):r=Zc(t,o.includeContainer,ka.bind(null,o)),qE(r)},HE=function(t,o){o=o||{};var r;return o.getShadowRoot?r=Jc([t],o.includeContainer,{filter:Nr.bind(null,o),flatten:!0,getShadowRoot:o.getShadowRoot}):r=Zc(t,o.includeContainer,Nr.bind(null,o)),r},Mn=function(t,o){if(o=o||{},!t)throw new Error("No node provided");return ln.call(t,kr)===!1?!1:ka(o,t)},YE=Wc.concat("iframe").join(","),Ca=function(t,o){if(o=o||{},!t)throw new Error("No node provided");return ln.call(t,YE)===!1?!1:Nr(o,t)};/*!
17
- * focus-trap 7.6.5
18
- * @license MIT, https://github.com/focus-trap/focus-trap/blob/master/LICENSE
19
- */function va(e,t){(t==null||t>e.length)&&(t=e.length);for(var o=0,r=Array(t);o<t;o++)r[o]=e[o];return r}function WE(e){if(Array.isArray(e))return va(e)}function XE(e,t,o){return(t=tk(t))in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o,e}function ZE(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function JE(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
20
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function nd(e,t){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),o.push.apply(o,r)}return o}function od(e){for(var t=1;t<arguments.length;t++){var o=arguments[t]!=null?arguments[t]:{};t%2?nd(Object(o),!0).forEach(function(r){XE(e,r,o[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):nd(Object(o)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(o,r))})}return e}function QE(e){return WE(e)||ZE(e)||nk(e)||JE()}function ek(e,t){if(typeof e!="object"||!e)return e;var o=e[Symbol.toPrimitive];if(o!==void 0){var r=o.call(e,t);if(typeof r!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function tk(e){var t=ek(e,"string");return typeof t=="symbol"?t:t+""}function nk(e,t){if(e){if(typeof e=="string")return va(e,t);var o={}.toString.call(e).slice(8,-1);return o==="Object"&&e.constructor&&(o=e.constructor.name),o==="Map"||o==="Set"?Array.from(e):o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o)?va(e,t):void 0}}var rd={activateTrap:function(t,o){if(t.length>0){var r=t[t.length-1];r!==o&&r._setPausedState(!0)}var i=t.indexOf(o);i===-1||t.splice(i,1),t.push(o)},deactivateTrap:function(t,o){var r=t.indexOf(o);r!==-1&&t.splice(r,1),t.length>0&&!t[t.length-1]._isManuallyPaused()&&t[t.length-1]._setPausedState(!1)}},ok=function(t){return t.tagName&&t.tagName.toLowerCase()==="input"&&typeof t.select=="function"},rk=function(t){return(t==null?void 0:t.key)==="Escape"||(t==null?void 0:t.key)==="Esc"||(t==null?void 0:t.keyCode)===27},_o=function(t){return(t==null?void 0:t.key)==="Tab"||(t==null?void 0:t.keyCode)===9},ik=function(t){return _o(t)&&!t.shiftKey},ak=function(t){return _o(t)&&t.shiftKey},id=function(t){return setTimeout(t,0)},bo=function(t){for(var o=arguments.length,r=new Array(o>1?o-1:0),i=1;i<o;i++)r[i-1]=arguments[i];return typeof t=="function"?t.apply(void 0,r):t},Sr=function(t){return t.target.shadowRoot&&typeof t.composedPath=="function"?t.composedPath()[0]:t.target},lk=[],sk=function(t,o){var r=(o==null?void 0:o.document)||document,i=(o==null?void 0:o.trapStack)||lk,a=od({returnFocusOnDeactivate:!0,escapeDeactivates:!0,delayInitialFocus:!0,isKeyForward:ik,isKeyBackward:ak},o),l={containers:[],containerGroups:[],tabbableGroups:[],nodeFocusedBeforeActivation:null,mostRecentlyFocusedNode:null,active:!1,paused:!1,manuallyPaused:!1,delayInitialFocusTimer:void 0,recentNavEvent:void 0},s,c=function(I,C,D){return I&&I[C]!==void 0?I[C]:a[D||C]},d=function(I,C){var D=typeof(C==null?void 0:C.composedPath)=="function"?C.composedPath():void 0;return l.containerGroups.findIndex(function(P){var L=P.container,F=P.tabbableNodes;return L.contains(I)||(D==null?void 0:D.includes(L))||F.find(function(B){return B===I})})},f=function(I){var C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},D=C.hasFallback,P=D===void 0?!1:D,L=C.params,F=L===void 0?[]:L,B=a[I];if(typeof B=="function"&&(B=B.apply(void 0,QE(F))),B===!0&&(B=void 0),!B){if(B===void 0||B===!1)return B;throw new Error("`".concat(I,"` was specified but was not a node, or did not return a node"))}var $=B;if(typeof B=="string"){try{$=r.querySelector(B)}catch(G){throw new Error("`".concat(I,'` appears to be an invalid selector; error="').concat(G.message,'"'))}if(!$&&!P)throw new Error("`".concat(I,"` as selector refers to no known node"))}return $},u=function(){var I=f("initialFocus",{hasFallback:!0});if(I===!1)return!1;if(I===void 0||I&&!Ca(I,a.tabbableOptions))if(d(r.activeElement)>=0)I=r.activeElement;else{var C=l.tabbableGroups[0],D=C&&C.firstTabbableNode;I=D||f("fallbackFocus")}else I===null&&(I=f("fallbackFocus"));if(!I)throw new Error("Your focus-trap needs to have at least one focusable element");return I},p=function(){if(l.containerGroups=l.containers.map(function(I){var C=zE(I,a.tabbableOptions),D=HE(I,a.tabbableOptions),P=C.length>0?C[0]:void 0,L=C.length>0?C[C.length-1]:void 0,F=D.find(function(G){return Mn(G)}),B=D.slice().reverse().find(function(G){return Mn(G)}),$=!!C.find(function(G){return sn(G)>0});return{container:I,tabbableNodes:C,focusableNodes:D,posTabIndexesFound:$,firstTabbableNode:P,lastTabbableNode:L,firstDomTabbableNode:F,lastDomTabbableNode:B,nextTabbableNode:function(ee){var re=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,J=C.indexOf(ee);return J<0?re?D.slice(D.indexOf(ee)+1).find(function(ne){return Mn(ne)}):D.slice(0,D.indexOf(ee)).reverse().find(function(ne){return Mn(ne)}):C[J+(re?1:-1)]}}}),l.tabbableGroups=l.containerGroups.filter(function(I){return I.tabbableNodes.length>0}),l.tabbableGroups.length<=0&&!f("fallbackFocus"))throw new Error("Your focus-trap must have at least one container with at least one tabbable node in it at all times");if(l.containerGroups.find(function(I){return I.posTabIndexesFound})&&l.containerGroups.length>1)throw new Error("At least one node with a positive tabindex was found in one of your focus-trap's multiple containers. Positive tabindexes are only supported in single-container focus-traps.")},m=function(I){var C=I.activeElement;if(C)return C.shadowRoot&&C.shadowRoot.activeElement!==null?m(C.shadowRoot):C},g=function(I){if(I!==!1&&I!==m(document)){if(!I||!I.focus){g(u());return}I.focus({preventScroll:!!a.preventScroll}),l.mostRecentlyFocusedNode=I,ok(I)&&I.select()}},_=function(I){var C=f("setReturnFocus",{params:[I]});return C||(C===!1?!1:I)},h=function(I){var C=I.target,D=I.event,P=I.isBackward,L=P===void 0?!1:P;C=C||Sr(D),p();var F=null;if(l.tabbableGroups.length>0){var B=d(C,D),$=B>=0?l.containerGroups[B]:void 0;if(B<0)L?F=l.tabbableGroups[l.tabbableGroups.length-1].lastTabbableNode:F=l.tabbableGroups[0].firstTabbableNode;else if(L){var G=l.tabbableGroups.findIndex(function(Z){var ie=Z.firstTabbableNode;return C===ie});if(G<0&&($.container===C||Ca(C,a.tabbableOptions)&&!Mn(C,a.tabbableOptions)&&!$.nextTabbableNode(C,!1))&&(G=B),G>=0){var ee=G===0?l.tabbableGroups.length-1:G-1,re=l.tabbableGroups[ee];F=sn(C)>=0?re.lastTabbableNode:re.lastDomTabbableNode}else _o(D)||(F=$.nextTabbableNode(C,!1))}else{var J=l.tabbableGroups.findIndex(function(Z){var ie=Z.lastTabbableNode;return C===ie});if(J<0&&($.container===C||Ca(C,a.tabbableOptions)&&!Mn(C,a.tabbableOptions)&&!$.nextTabbableNode(C))&&(J=B),J>=0){var ne=J===l.tabbableGroups.length-1?0:J+1,z=l.tabbableGroups[ne];F=sn(C)>=0?z.firstTabbableNode:z.firstDomTabbableNode}else _o(D)||(F=$.nextTabbableNode(C))}}else F=f("fallbackFocus");return F},b=function(I){var C=Sr(I);if(!(d(C,I)>=0)){if(bo(a.clickOutsideDeactivates,I)){s.deactivate({returnFocus:a.returnFocusOnDeactivate});return}bo(a.allowOutsideClick,I)||I.preventDefault()}},w=function(I){var C=Sr(I),D=d(C,I)>=0;if(D||C instanceof Document)D&&(l.mostRecentlyFocusedNode=C);else{I.stopImmediatePropagation();var P,L=!0;if(l.mostRecentlyFocusedNode)if(sn(l.mostRecentlyFocusedNode)>0){var F=d(l.mostRecentlyFocusedNode),B=l.containerGroups[F].tabbableNodes;if(B.length>0){var $=B.findIndex(function(G){return G===l.mostRecentlyFocusedNode});$>=0&&(a.isKeyForward(l.recentNavEvent)?$+1<B.length&&(P=B[$+1],L=!1):$-1>=0&&(P=B[$-1],L=!1))}}else l.containerGroups.some(function(G){return G.tabbableNodes.some(function(ee){return sn(ee)>0})})||(L=!1);else L=!1;L&&(P=h({target:l.mostRecentlyFocusedNode,isBackward:a.isKeyBackward(l.recentNavEvent)})),g(P||l.mostRecentlyFocusedNode||u())}l.recentNavEvent=void 0},y=function(I){var C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;l.recentNavEvent=I;var D=h({event:I,isBackward:C});D&&(_o(I)&&I.preventDefault(),g(D))},v=function(I){(a.isKeyForward(I)||a.isKeyBackward(I))&&y(I,a.isKeyBackward(I))},k=function(I){rk(I)&&bo(a.escapeDeactivates,I)!==!1&&(I.preventDefault(),s.deactivate())},E=function(I){var C=Sr(I);d(C,I)>=0||bo(a.clickOutsideDeactivates,I)||bo(a.allowOutsideClick,I)||(I.preventDefault(),I.stopImmediatePropagation())},R=function(){if(l.active)return rd.activateTrap(i,s),l.delayInitialFocusTimer=a.delayInitialFocus?id(function(){g(u())}):g(u()),r.addEventListener("focusin",w,!0),r.addEventListener("mousedown",b,{capture:!0,passive:!1}),r.addEventListener("touchstart",b,{capture:!0,passive:!1}),r.addEventListener("click",E,{capture:!0,passive:!1}),r.addEventListener("keydown",v,{capture:!0,passive:!1}),r.addEventListener("keydown",k),s},O=function(){if(l.active)return r.removeEventListener("focusin",w,!0),r.removeEventListener("mousedown",b,!0),r.removeEventListener("touchstart",b,!0),r.removeEventListener("click",E,!0),r.removeEventListener("keydown",v,!0),r.removeEventListener("keydown",k),s},T=function(I){var C=I.some(function(D){var P=Array.from(D.removedNodes);return P.some(function(L){return L===l.mostRecentlyFocusedNode})});C&&g(u())},q=typeof window<"u"&&"MutationObserver"in window?new MutationObserver(T):void 0,j=function(){q&&(q.disconnect(),l.active&&!l.paused&&l.containers.map(function(I){q.observe(I,{subtree:!0,childList:!0})}))};return s={get active(){return l.active},get paused(){return l.paused},activate:function(I){if(l.active)return this;var C=c(I,"onActivate"),D=c(I,"onPostActivate"),P=c(I,"checkCanFocusTrap");P||p(),l.active=!0,l.paused=!1,l.nodeFocusedBeforeActivation=m(r),C==null||C();var L=function(){P&&p(),R(),j(),D==null||D()};return P?(P(l.containers.concat()).then(L,L),this):(L(),this)},deactivate:function(I){if(!l.active)return this;var C=od({onDeactivate:a.onDeactivate,onPostDeactivate:a.onPostDeactivate,checkCanReturnFocus:a.checkCanReturnFocus},I);clearTimeout(l.delayInitialFocusTimer),l.delayInitialFocusTimer=void 0,O(),l.active=!1,l.paused=!1,j(),rd.deactivateTrap(i,s);var D=c(C,"onDeactivate"),P=c(C,"onPostDeactivate"),L=c(C,"checkCanReturnFocus"),F=c(C,"returnFocus","returnFocusOnDeactivate");D==null||D();var B=function(){id(function(){F&&g(_(l.nodeFocusedBeforeActivation)),P==null||P()})};return F&&L?(L(_(l.nodeFocusedBeforeActivation)).then(B,B),this):(B(),this)},pause:function(I){return l.active?(l.manuallyPaused=!0,this._setPausedState(!0,I)):this},unpause:function(I){return l.active?(l.manuallyPaused=!1,i[i.length-1]!==this?this:this._setPausedState(!1,I)):this},updateContainerElements:function(I){var C=[].concat(I).filter(Boolean);return l.containers=C.map(function(D){return typeof D=="string"?r.querySelector(D):D}),l.active&&p(),j(),this}},Object.defineProperties(s,{_isManuallyPaused:{value:function(){return l.manuallyPaused}},_setPausedState:{value:function(I,C){if(l.paused===I)return this;if(l.paused=I,I){var D=c(C,"onPause"),P=c(C,"onPostPause");D==null||D(),O(),j(),P==null||P()}else{var L=c(C,"onUnpause"),F=c(C,"onPostUnpause");L==null||L(),p(),R(),j(),F==null||F()}return this}}}),s.updateContainerElements(t),s};function ck(e,t={}){let o;const{immediate:r,...i}=t,a=n.shallowRef(!1),l=n.shallowRef(!1),s=p=>o&&o.activate(p),c=p=>o&&o.deactivate(p),d=()=>{o&&(o.pause(),l.value=!0)},f=()=>{o&&(o.unpause(),l.value=!1)},u=n.computed(()=>{const p=n.toValue(e);return Je.toArray(p).map(m=>{const g=n.toValue(m);return typeof g=="string"?g:Je.unrefElement(g)}).filter(PE)});return n.watch(u,p=>{p.length&&(o=sk(p,{...i,onActivate(){a.value=!0,t.onActivate&&t.onActivate()},onDeactivate(){a.value=!1,t.onDeactivate&&t.onDeactivate()}}),r&&s())},{flush:"post"}),Je.tryOnScopeDispose(()=>c()),{hasFocus:a,isPaused:l,activate:s,deactivate:c,pause:d,unpause:f}}const dk="44px",uk="220px",fk="366px",pk="52px",mk=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],ad="application/x-datakit+json",gk={class:"dk-editor-nav"},hk={class:"top"},yk={class:"bottom"},_k=we(n.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:t}){const{t:o}=Re.createI18n("en-us",je),r=t,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Ee.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=Ea(),l=n.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=n.ref(!1);function c(){a.value=!a.value}return(d,f)=>(n.openBlock(),n.createElementBlock("nav",gk,[n.createElementVNode("div",hk,[(n.openBlock(),n.createElementBlock(n.Fragment,null,n.renderList(i,({label:u,to:p,icon:m,onClick:g})=>n.createVNode(n.unref(Ie.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.unref(Ie.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:g},{default:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(m),{decorative:"",size:n.unref(ga)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),n.createElementVNode("div",yk,[n.createElementVNode("div",{class:n.normalizeClass(["side-panel-toggle",{expanded:n.unref(a)}]),onTransitionend:f[0]||(f[0]=n.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=n.withModifiers(u=>s.value=!0,["self"]))},[n.createVNode(n.unref(Ie.KTooltip),{label:s.value?void 0:l.value,placement:n.unref(a)?"left":"right"},{default:n.withCtx(()=>[n.createVNode(n.unref(Ie.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:n.withCtx(()=>[n.unref(a)?(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDoubleLeftIcon),{key:0,decorative:"",size:n.unref(ga)},null,8,["size"])):(n.openBlock(),n.createBlock(n.unref(Ee.ChevronDoubleRightIcon),{key:1,decorative:"",size:n.unref(ga)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-4498cfce"]]),bk=we(n.defineComponent({__name:"EditorCanvas",setup(e){const t=n.useTemplateRef("editorCanvas"),o=n.useTemplateRef("requestLabel"),r=n.useTemplateRef("requestCanvas"),i=n.useTemplateRef("resizeHandle"),a=n.useTemplateRef("responseCanvas"),l=Je.useElementBounding(t),s=Je.useElementBounding(o),c=Je.useElementBounding(r),d=Je.useElementBounding(i),f=Je.useElementBounding(a),u=n.computed(()=>Math.max(30,l.height.value*.03)),p=n.computed(()=>c.height.value<u.value),m=n.computed(()=>f.height.value<u.value),g=n.ref("50%"),_=()=>{p.value?g.value="50%":g.value="0"},h=()=>{m.value?g.value="50%":g.value="100%"},{isDragging:b}=Je.useDraggable(i,{onMove(w){const v=w.y+d.height.value/2-s.bottom.value;g.value=`max(0%, min(100%, ${v}px))`},onEnd(){c.height.value<u.value?g.value="0":f.height.value<u.value&&(g.value="100%")}});return(w,y)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"editorCanvas",ref:t,class:"editor-canvas"},[n.createElementVNode("div",{ref_key:"requestLabel",ref:o,class:"label",onClick:_},[n.createVNode(n.unref(Ee.ChevronDownIcon),{class:n.normalizeClass(["icon",{collapsed:p.value}])},null,8,["class"]),y[0]||(y[0]=n.createElementVNode("div",null,"Request",-1))],512),n.createElementVNode("div",{ref_key:"requestCanvas",ref:r,class:n.normalizeClass(["canvas",{dragging:n.unref(b)}]),style:n.normalizeStyle({height:g.value})},[n.renderSlot(w.$slots,"request",{},void 0,!0)],6),n.createElementVNode("div",{ref_key:"resizeHandle",ref:i,class:"resize-handle"},null,512),n.createElementVNode("div",{ref:"responseLabel",class:n.normalizeClass(["label",{dragging:n.unref(b)}]),onClick:h},[n.createVNode(n.unref(Ee.ChevronDownIcon),{class:n.normalizeClass(["icon",{collapsed:m.value}])},null,8,["class"]),y[1]||(y[1]=n.createElementVNode("div",null,"Response",-1))],2),n.createElementVNode("div",{ref_key:"responseCanvas",ref:a,class:"canvas response"},[n.renderSlot(w.$slots,"response",{},void 0,!0)],512)],512))}}),[["__scopeId","data-v-1045a730"]]);function xr(e){return n.getCurrentScope()?(n.onScopeDispose(e),!0):!1}function Vt(e){return typeof e=="function"?e():n.unref(e)}const wk=typeof window<"u"&&typeof document<"u",Ek=e=>typeof e<"u",kk=Object.prototype.toString,Ck=e=>kk.call(e)==="[object Object]",vk=()=>{};function Nk(e,t){function o(...r){return new Promise((i,a)=>{Promise.resolve(e(()=>t.apply(this,r),{fn:t,thisArg:this,args:r})).then(i).catch(a)})}return o}const ld=e=>e();function Sk(e=ld){const t=n.ref(!0);function o(){t.value=!1}function r(){t.value=!0}const i=(...a)=>{t.value&&e(...a)};return{isActive:n.readonly(t),pause:o,resume:r,eventFilter:i}}function sd(e,t=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(t?()=>i(o):r,e)})}function xk(e,t,o={}){const{eventFilter:r=ld,...i}=o;return n.watch(e,Nk(r,t),i)}function Fn(e,t,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=Sk(r);return{stop:xk(e,t,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function Ak(e,t={}){if(!n.isRef(e))return n.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=n.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=Vt(t.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 Na(e,t=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:g,throwOnTimeout:_}={}){let h=null;const w=[new Promise(y=>{h=n.watch(e,v=>{u(v)!==t&&(h==null||h(),y(v))},{flush:p,deep:m,immediate:!0})})];return g!=null&&w.push(sd(g,_).then(()=>Vt(e)).finally(()=>h==null?void 0:h())),Promise.race(w)}function r(u,p){if(!n.isRef(u))return o(v=>v===u,p);const{flush:m="sync",deep:g=!1,timeout:_,throwOnTimeout:h}=p??{};let b=null;const y=[new Promise(v=>{b=n.watch([e,u],([k,E])=>{t!==(k===E)&&(b==null||b(),v(k))},{flush:m,deep:g,immediate:!0})})];return _!=null&&y.push(sd(_,h).then(()=>Vt(e)).finally(()=>(b==null||b(),Vt(e)))),Promise.race(y)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const g=Array.from(m);return g.includes(u)||g.includes(Vt(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(Vt(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return Na(e,!t)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return Na(e,!t)}}}function Sa(e){return Na(e)}function Tk(e){var t;const o=Vt(e);return(t=o==null?void 0:o.$el)!=null?t:o}const cd=wk?window:void 0;function dd(...e){let t,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,t=cd):[t,o,r,i]=e,!t)return vk;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=n.watch(()=>[Tk(t),Vt(i)],([f,u])=>{if(l(),!f)return;const p=Ck(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(g=>s(f,m,g,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return xr(d),d}function Ik(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function ud(...e){let t,o,r={};e.length===3?(t=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,o=e[0],r=e[1]):(t=e[0],o=e[1]):(t=!0,o=e[0]);const{target:i=cd,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=Ik(t);return dd(i,a,f=>{f.repeat&&Vt(s)||c(f)&&o(f)},l)}function Pk(e){return JSON.parse(JSON.stringify(e))}function xa(e,t,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=n.getCurrentInstance(),g=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let _=d;t||(t="modelValue"),_=_||`update:${t.toString()}`;const h=y=>s?typeof s=="function"?s(y):Pk(y):y,b=()=>Ek(e[t])?h(e[t]):u,w=y=>{p?p(y)&&g(_,y):g(_,y)};if(c){const y=b(),v=n.ref(y);let k=!1;return n.watch(()=>e[t],E=>{k||(k=!0,v.value=h(E),n.nextTick(()=>k=!1))}),n.watch(v,E=>{!k&&(E!==e[t]||f)&&w(E)},{deep:f}),v}else return n.computed({get(){return b()},set(y){w(y)}})}var Ok={value:()=>{}};function Ar(){for(var e=0,t=arguments.length,o={},r;e<t;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new Tr(o)}function Tr(e){this._=e}function $k(e,t){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&&!t.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}Tr.prototype=Ar.prototype={constructor:Tr,on:function(e,t){var o=this._,r=$k(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=Bk(o[i],e.name)))return i;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++a<l;)if(i=(e=r[a]).type)o[i]=fd(o[i],e.name,t);else if(t==null)for(i in o)o[i]=fd(o[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var o in t)e[o]=t[o].slice();return new Tr(e)},call:function(e,t){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(t,o)},apply:function(e,t,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(t,o)}};function Bk(e,t){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===t)return i.value}function fd(e,t,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=Ok,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:t,value:o}),e}var Aa="http://www.w3.org/1999/xhtml";const pd={svg:"http://www.w3.org/2000/svg",xhtml:Aa,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Ir(e){var t=e+="",o=t.indexOf(":");return o>=0&&(t=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),pd.hasOwnProperty(t)?{space:pd[t],local:e}:e}function Vk(e){return function(){var t=this.ownerDocument,o=this.namespaceURI;return o===Aa&&t.documentElement.namespaceURI===Aa?t.createElement(e):t.createElementNS(o,e)}}function Rk(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function md(e){var t=Ir(e);return(t.local?Rk:Vk)(t)}function Dk(){}function Ta(e){return e==null?Dk:function(){return this.querySelector(e)}}function Mk(e){typeof e!="function"&&(e=Ta(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[i],l=a.length,s=r[i]=new Array(l),c,d,f=0;f<l;++f)(c=a[f])&&(d=e.call(c,c.__data__,f,a))&&("__data__"in c&&(d.__data__=c.__data__),s[f]=d);return new it(r,this._parents)}function Fk(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function Lk(){return[]}function gd(e){return e==null?Lk:function(){return this.querySelectorAll(e)}}function Uk(e){return function(){return Fk(e.apply(this,arguments))}}function Kk(e){typeof e=="function"?e=Uk(e):e=gd(e);for(var t=this._groups,o=t.length,r=[],i=[],a=0;a<o;++a)for(var l=t[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&(r.push(e.call(c,c.__data__,d,l)),i.push(c));return new it(r,i)}function hd(e){return function(){return this.matches(e)}}function yd(e){return function(t){return t.matches(e)}}var jk=Array.prototype.find;function Gk(e){return function(){return jk.call(this.children,e)}}function qk(){return this.firstElementChild}function zk(e){return this.select(e==null?qk:Gk(typeof e=="function"?e:yd(e)))}var Hk=Array.prototype.filter;function Yk(){return Array.from(this.children)}function Wk(e){return function(){return Hk.call(this.children,e)}}function Xk(e){return this.selectAll(e==null?Yk:Wk(typeof e=="function"?e:yd(e)))}function Zk(e){typeof e!="function"&&(e=hd(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[i],l=a.length,s=r[i]=[],c,d=0;d<l;++d)(c=a[d])&&e.call(c,c.__data__,d,a)&&s.push(c);return new it(r,this._parents)}function _d(e){return new Array(e.length)}function Jk(){return new it(this._enter||this._groups.map(_d),this._parents)}function Pr(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}Pr.prototype={constructor:Pr,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Qk(e){return function(){return e}}function eC(e,t,o,r,i,a){for(var l=0,s,c=t.length,d=a.length;l<d;++l)(s=t[l])?(s.__data__=a[l],r[l]=s):o[l]=new Pr(e,a[l]);for(;l<c;++l)(s=t[l])&&(i[l]=s)}function tC(e,t,o,r,i,a,l){var s,c,d=new Map,f=t.length,u=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=t[s])&&(p[s]=m=l.call(c,c.__data__,s,t)+"",d.has(m)?i[s]=c:d.set(m,c));for(s=0;s<u;++s)m=l.call(e,a[s],s,a)+"",(c=d.get(m))?(r[s]=c,c.__data__=a[s],d.delete(m)):o[s]=new Pr(e,a[s]);for(s=0;s<f;++s)(c=t[s])&&d.get(p[s])===c&&(i[s]=c)}function nC(e){return e.__data__}function oC(e,t){if(!arguments.length)return Array.from(this,nC);var o=t?tC:eC,r=this._parents,i=this._groups;typeof e!="function"&&(e=Qk(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=rC(e.call(f,f&&f.__data__,d,r)),g=m.length,_=s[d]=new Array(g),h=l[d]=new Array(g),b=c[d]=new Array(p);o(f,u,_,h,b,m,t);for(var w=0,y=0,v,k;w<g;++w)if(v=_[w]){for(w>=y&&(y=w+1);!(k=h[y])&&++y<g;);v._next=k||null}}return l=new it(l,r),l._enter=s,l._exit=c,l}function rC(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function iC(){return new it(this._exit||this._groups.map(_d),this._parents)}function aC(e,t,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+""),t!=null&&(i=t(i),i&&(i=i.selection())),o==null?a.remove():o(a),r&&i?r.merge(i).order():i}function lC(e){for(var t=e.selection?e.selection():e,o=this._groups,r=t._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var d=o[c],f=r[c],u=d.length,p=s[c]=new Array(u),m,g=0;g<u;++g)(m=d[g]||f[g])&&(p[g]=m);for(;c<i;++c)s[c]=o[c];return new it(s,this._parents)}function sC(){for(var e=this._groups,t=-1,o=e.length;++t<o;)for(var r=e[t],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 cC(e){e||(e=dC);function t(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(t)}return new it(i,this._parents).order()}function dC(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function uC(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function fC(){return Array.from(this)}function pC(){for(var e=this._groups,t=0,o=e.length;t<o;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function mC(){let e=0;for(const t of this)++e;return e}function gC(){return!this.node()}function hC(e){for(var t=this._groups,o=0,r=t.length;o<r;++o)for(var i=t[o],a=0,l=i.length,s;a<l;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function yC(e){return function(){this.removeAttribute(e)}}function _C(e){return function(){this.removeAttributeNS(e.space,e.local)}}function bC(e,t){return function(){this.setAttribute(e,t)}}function wC(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function EC(e,t){return function(){var o=t.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function kC(e,t){return function(){var o=t.apply(this,arguments);o==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,o)}}function CC(e,t){var o=Ir(e);if(arguments.length<2){var r=this.node();return o.local?r.getAttributeNS(o.space,o.local):r.getAttribute(o)}return this.each((t==null?o.local?_C:yC:typeof t=="function"?o.local?kC:EC:o.local?wC:bC)(o,t))}function bd(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function vC(e){return function(){this.style.removeProperty(e)}}function NC(e,t,o){return function(){this.style.setProperty(e,t,o)}}function SC(e,t,o){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function xC(e,t,o){return arguments.length>1?this.each((t==null?vC:typeof t=="function"?SC:NC)(e,t,o??"")):Ln(this.node(),e)}function Ln(e,t){return e.style.getPropertyValue(t)||bd(e).getComputedStyle(e,null).getPropertyValue(t)}function AC(e){return function(){delete this[e]}}function TC(e,t){return function(){this[e]=t}}function IC(e,t){return function(){var o=t.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function PC(e,t){return arguments.length>1?this.each((t==null?AC:typeof t=="function"?IC:TC)(e,t)):this.node()[e]}function wd(e){return e.trim().split(/^|\s+/)}function Ia(e){return e.classList||new Ed(e)}function Ed(e){this._node=e,this._names=wd(e.getAttribute("class")||"")}Ed.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function kd(e,t){for(var o=Ia(e),r=-1,i=t.length;++r<i;)o.add(t[r])}function Cd(e,t){for(var o=Ia(e),r=-1,i=t.length;++r<i;)o.remove(t[r])}function OC(e){return function(){kd(this,e)}}function $C(e){return function(){Cd(this,e)}}function BC(e,t){return function(){(t.apply(this,arguments)?kd:Cd)(this,e)}}function VC(e,t){var o=wd(e+"");if(arguments.length<2){for(var r=Ia(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof t=="function"?BC:t?OC:$C)(o,t))}function RC(){this.textContent=""}function DC(e){return function(){this.textContent=e}}function MC(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function FC(e){return arguments.length?this.each(e==null?RC:(typeof e=="function"?MC:DC)(e)):this.node().textContent}function LC(){this.innerHTML=""}function UC(e){return function(){this.innerHTML=e}}function KC(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function jC(e){return arguments.length?this.each(e==null?LC:(typeof e=="function"?KC:UC)(e)):this.node().innerHTML}function GC(){this.nextSibling&&this.parentNode.appendChild(this)}function qC(){return this.each(GC)}function zC(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function HC(){return this.each(zC)}function YC(e){var t=typeof e=="function"?e:md(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function WC(){return null}function XC(e,t){var o=typeof e=="function"?e:md(e),r=t==null?WC:typeof t=="function"?t:Ta(t);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function ZC(){var e=this.parentNode;e&&e.removeChild(this)}function JC(){return this.each(ZC)}function QC(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function ev(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function tv(e){return this.select(e?ev:QC)}function nv(e){return arguments.length?this.property("__data__",e):this.node().__data__}function ov(e){return function(t){e.call(this,t,this.__data__)}}function rv(e){return e.trim().split(/^|\s+/).map(function(t){var o="",r=t.indexOf(".");return r>=0&&(o=t.slice(r+1),t=t.slice(0,r)),{type:t,name:o}})}function iv(e){return function(){var t=this.__on;if(t){for(var o=0,r=-1,i=t.length,a;o<i;++o)a=t[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function av(e,t,o){return function(){var r=this.__on,i,a=ov(t);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=t;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:t,listener:a,options:o},r?r.push(i):this.__on=[i]}}function lv(e,t,o){var r=rv(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=t?av:iv,i=0;i<a;++i)this.each(s(r[i],t,o));return this}function vd(e,t,o){var r=bd(e),i=r.CustomEvent;typeof i=="function"?i=new i(t,o):(i=r.document.createEvent("Event"),o?(i.initEvent(t,o.bubbles,o.cancelable),i.detail=o.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function sv(e,t){return function(){return vd(this,e,t)}}function cv(e,t){return function(){return vd(this,e,t.apply(this,arguments))}}function dv(e,t){return this.each((typeof t=="function"?cv:sv)(e,t))}function*uv(){for(var e=this._groups,t=0,o=e.length;t<o;++t)for(var r=e[t],i=0,a=r.length,l;i<a;++i)(l=r[i])&&(yield l)}var Nd=[null];function it(e,t){this._groups=e,this._parents=t}function wo(){return new it([[document.documentElement]],Nd)}function fv(){return this}it.prototype=wo.prototype={constructor:it,select:Mk,selectAll:Kk,selectChild:zk,selectChildren:Xk,filter:Zk,data:oC,enter:Jk,exit:iC,join:aC,merge:lC,selection:fv,order:sC,sort:cC,call:uC,nodes:fC,node:pC,size:mC,empty:gC,each:hC,attr:CC,style:xC,property:PC,classed:VC,text:FC,html:jC,raise:qC,lower:HC,append:YC,insert:XC,remove:JC,clone:tv,datum:nv,on:lv,dispatch:dv,[Symbol.iterator]:uv};function gt(e){return typeof e=="string"?new it([[document.querySelector(e)]],[document.documentElement]):new it([[e]],Nd)}function pv(e){let t;for(;t=e.sourceEvent;)e=t;return e}function Ct(e,t){if(e=pv(e),t===void 0&&(t=e.currentTarget),t){var o=t.ownerSVGElement||t;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}const mv={passive:!1},Eo={capture:!0,passive:!1};function Pa(e){e.stopImmediatePropagation()}function Un(e){e.preventDefault(),e.stopImmediatePropagation()}function Sd(e){var t=e.document.documentElement,o=gt(e).on("dragstart.drag",Un,Eo);"onselectstart"in t?o.on("selectstart.drag",Un,Eo):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function xd(e,t){var o=e.document.documentElement,r=gt(e).on("dragstart.drag",null);t&&(r.on("click.drag",Un,Eo),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in o?r.on("selectstart.drag",null):(o.style.MozUserSelect=o.__noselect,delete o.__noselect)}const Or=e=>()=>e;function Oa(e,{sourceEvent:t,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:t,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}})}Oa.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function gv(e){return!e.ctrlKey&&!e.button}function hv(){return this.parentNode}function yv(e,t){return t??{x:e.x,y:e.y}}function _v(){return navigator.maxTouchPoints||"ontouchstart"in this}function bv(){var e=gv,t=hv,o=yv,r=_v,i={},a=Ar("start","drag","end"),l=0,s,c,d,f,u=0;function p(v){v.on("mousedown.drag",m).filter(r).on("touchstart.drag",h).on("touchmove.drag",b,mv).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(v,k){if(!(f||!e.call(this,v,k))){var E=y(this,t.call(this,v,k),v,k,"mouse");E&&(gt(v.view).on("mousemove.drag",g,Eo).on("mouseup.drag",_,Eo),Sd(v.view),Pa(v),d=!1,s=v.clientX,c=v.clientY,E("start",v))}}function g(v){if(Un(v),!d){var k=v.clientX-s,E=v.clientY-c;d=k*k+E*E>u}i.mouse("drag",v)}function _(v){gt(v.view).on("mousemove.drag mouseup.drag",null),xd(v.view,d),Un(v),i.mouse("end",v)}function h(v,k){if(e.call(this,v,k)){var E=v.changedTouches,R=t.call(this,v,k),O=E.length,T,q;for(T=0;T<O;++T)(q=y(this,R,v,k,E[T].identifier,E[T]))&&(Pa(v),q("start",v,E[T]))}}function b(v){var k=v.changedTouches,E=k.length,R,O;for(R=0;R<E;++R)(O=i[k[R].identifier])&&(Un(v),O("drag",v,k[R]))}function w(v){var k=v.changedTouches,E=k.length,R,O;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),R=0;R<E;++R)(O=i[k[R].identifier])&&(Pa(v),O("end",v,k[R]))}function y(v,k,E,R,O,T){var q=a.copy(),j=Ct(T||E,k),A,I,C;if((C=o.call(v,new Oa("beforestart",{sourceEvent:E,target:p,identifier:O,active:l,x:j[0],y:j[1],dx:0,dy:0,dispatch:q}),R))!=null)return A=C.x-j[0]||0,I=C.y-j[1]||0,function D(P,L,F){var B=j,$;switch(P){case"start":i[O]=D,$=l++;break;case"end":delete i[O],--l;case"drag":j=Ct(F||L,k),$=l;break}q.call(P,v,new Oa(P,{sourceEvent:L,subject:C,target:p,identifier:O,active:$,x:j[0]+A,y:j[1]+I,dx:j[0]-B[0],dy:j[1]-B[1],dispatch:q}),R)}}return p.filter=function(v){return arguments.length?(e=typeof v=="function"?v:Or(!!v),p):e},p.container=function(v){return arguments.length?(t=typeof v=="function"?v:Or(v),p):t},p.subject=function(v){return arguments.length?(o=typeof v=="function"?v:Or(v),p):o},p.touchable=function(v){return arguments.length?(r=typeof v=="function"?v:Or(!!v),p):r},p.on=function(){var v=a.on.apply(a,arguments);return v===a?p:v},p.clickDistance=function(v){return arguments.length?(u=(v=+v)*v,p):Math.sqrt(u)},p}function $a(e,t,o){e.prototype=t.prototype=o,o.constructor=e}function Ad(e,t){var o=Object.create(e.prototype);for(var r in t)o[r]=t[r];return o}function ko(){}var Co=.7,$r=1/Co,Kn="\\s*([+-]?\\d+)\\s*",vo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",vt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",wv=/^#([0-9a-f]{3,8})$/,Ev=new RegExp(`^rgb\\(${Kn},${Kn},${Kn}\\)$`),kv=new RegExp(`^rgb\\(${vt},${vt},${vt}\\)$`),Cv=new RegExp(`^rgba\\(${Kn},${Kn},${Kn},${vo}\\)$`),vv=new RegExp(`^rgba\\(${vt},${vt},${vt},${vo}\\)$`),Nv=new RegExp(`^hsl\\(${vo},${vt},${vt}\\)$`),Sv=new RegExp(`^hsla\\(${vo},${vt},${vt},${vo}\\)$`),Td={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};$a(ko,cn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Id,formatHex:Id,formatHex8:xv,formatHsl:Av,formatRgb:Pd,toString:Pd});function Id(){return this.rgb().formatHex()}function xv(){return this.rgb().formatHex8()}function Av(){return Rd(this).formatHsl()}function Pd(){return this.rgb().formatRgb()}function cn(e){var t,o;return e=(e+"").trim().toLowerCase(),(t=wv.exec(e))?(o=t[1].length,t=parseInt(t[1],16),o===6?Od(t):o===3?new tt(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):o===8?Br(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):o===4?Br(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Ev.exec(e))?new tt(t[1],t[2],t[3],1):(t=kv.exec(e))?new tt(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Cv.exec(e))?Br(t[1],t[2],t[3],t[4]):(t=vv.exec(e))?Br(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Nv.exec(e))?Vd(t[1],t[2]/100,t[3]/100,1):(t=Sv.exec(e))?Vd(t[1],t[2]/100,t[3]/100,t[4]):Td.hasOwnProperty(e)?Od(Td[e]):e==="transparent"?new tt(NaN,NaN,NaN,0):null}function Od(e){return new tt(e>>16&255,e>>8&255,e&255,1)}function Br(e,t,o,r){return r<=0&&(e=t=o=NaN),new tt(e,t,o,r)}function Tv(e){return e instanceof ko||(e=cn(e)),e?(e=e.rgb(),new tt(e.r,e.g,e.b,e.opacity)):new tt}function Ba(e,t,o,r){return arguments.length===1?Tv(e):new tt(e,t,o,r??1)}function tt(e,t,o,r){this.r=+e,this.g=+t,this.b=+o,this.opacity=+r}$a(tt,Ba,Ad(ko,{brighter(e){return e=e==null?$r:Math.pow($r,e),new tt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Co:Math.pow(Co,e),new tt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new tt(dn(this.r),dn(this.g),dn(this.b),Vr(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:$d,formatHex:$d,formatHex8:Iv,formatRgb:Bd,toString:Bd}));function $d(){return`#${un(this.r)}${un(this.g)}${un(this.b)}`}function Iv(){return`#${un(this.r)}${un(this.g)}${un(this.b)}${un((isNaN(this.opacity)?1:this.opacity)*255)}`}function Bd(){const e=Vr(this.opacity);return`${e===1?"rgb(":"rgba("}${dn(this.r)}, ${dn(this.g)}, ${dn(this.b)}${e===1?")":`, ${e})`}`}function Vr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function dn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function un(e){return e=dn(e),(e<16?"0":"")+e.toString(16)}function Vd(e,t,o,r){return r<=0?e=t=o=NaN:o<=0||o>=1?e=t=NaN:t<=0&&(e=NaN),new ht(e,t,o,r)}function Rd(e){if(e instanceof ht)return new ht(e.h,e.s,e.l,e.opacity);if(e instanceof ko||(e=cn(e)),!e)return new ht;if(e instanceof ht)return e;e=e.rgb();var t=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(t,o,r),a=Math.max(t,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(t===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-t)/s+2:l=(t-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new ht(l,s,c,e.opacity)}function Pv(e,t,o,r){return arguments.length===1?Rd(e):new ht(e,t,o,r??1)}function ht(e,t,o,r){this.h=+e,this.s=+t,this.l=+o,this.opacity=+r}$a(ht,Pv,Ad(ko,{brighter(e){return e=e==null?$r:Math.pow($r,e),new ht(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Co:Math.pow(Co,e),new ht(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*t,i=2*o-r;return new tt(Va(e>=240?e-240:e+120,i,r),Va(e,i,r),Va(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new ht(Dd(this.h),Rr(this.s),Rr(this.l),Vr(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Vr(this.opacity);return`${e===1?"hsl(":"hsla("}${Dd(this.h)}, ${Rr(this.s)*100}%, ${Rr(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Dd(e){return e=(e||0)%360,e<0?e+360:e}function Rr(e){return Math.max(0,Math.min(1,e||0))}function Va(e,t,o){return(e<60?t+(o-t)*e/60:e<180?o:e<240?t+(o-t)*(240-e)/60:t)*255}const Ra=e=>()=>e;function Ov(e,t){return function(o){return e+o*t}}function $v(e,t,o){return e=Math.pow(e,o),t=Math.pow(t,o)-e,o=1/o,function(r){return Math.pow(e+r*t,o)}}function Bv(e){return(e=+e)==1?Md:function(t,o){return o-t?$v(t,o,e):Ra(isNaN(t)?o:t)}}function Md(e,t){var o=t-e;return o?Ov(e,o):Ra(isNaN(e)?t:e)}const Dr=function e(t){var o=Bv(t);function r(i,a){var l=o((i=Ba(i)).r,(a=Ba(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Md(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 Vv(e,t){t||(t=[]);var o=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<o;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function Rv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Dv(e,t){var o=t?t.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]=No(e[l],t[l]);for(;l<o;++l)a[l]=t[l];return function(s){for(l=0;l<r;++l)a[l]=i[l](s);return a}}function Mv(e,t){var o=new Date;return e=+e,t=+t,function(r){return o.setTime(e*(1-r)+t*r),o}}function Nt(e,t){return e=+e,t=+t,function(o){return e*(1-o)+t*o}}function Fv(e,t){var o={},r={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?o[i]=No(e[i],t[i]):r[i]=t[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var Da=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Ma=new RegExp(Da.source,"g");function Lv(e){return function(){return e}}function Uv(e){return function(t){return e(t)+""}}function Fd(e,t){var o=Da.lastIndex=Ma.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",t=t+"";(r=Da.exec(e))&&(i=Ma.exec(t));)(a=i.index)>o&&(a=t.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:Nt(r,i)})),o=Ma.lastIndex;return o<t.length&&(a=t.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?Uv(c[0].x):Lv(t):(t=c.length,function(d){for(var f=0,u;f<t;++f)s[(u=c[f]).i]=u.x(d);return s.join("")})}function No(e,t){var o=typeof t,r;return t==null||o==="boolean"?Ra(t):(o==="number"?Nt:o==="string"?(r=cn(t))?(t=r,Dr):Fd:t instanceof cn?Dr:t instanceof Date?Mv:Rv(t)?Vv:Array.isArray(t)?Dv:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?Fv:Nt)(e,t)}var Ld=180/Math.PI,Fa={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Ud(e,t,o,r,i,a){var l,s,c;return(l=Math.sqrt(e*e+t*t))&&(e/=l,t/=l),(c=e*o+t*r)&&(o-=e*c,r-=t*c),(s=Math.sqrt(o*o+r*r))&&(o/=s,r/=s,c/=s),e*r<t*o&&(e=-e,t=-t,c=-c,l=-l),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*Ld,skewX:Math.atan(c)*Ld,scaleX:l,scaleY:s}}var Mr;function Kv(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?Fa:Ud(t.a,t.b,t.c,t.d,t.e,t.f)}function jv(e){return e==null||(Mr||(Mr=document.createElementNS("http://www.w3.org/2000/svg","g")),Mr.setAttribute("transform",e),!(e=Mr.transform.baseVal.consolidate()))?Fa:(e=e.matrix,Ud(e.a,e.b,e.c,e.d,e.e,e.f))}function Kd(e,t,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,g){if(d!==u||f!==p){var _=m.push("translate(",null,t,null,o);g.push({i:_-4,x:Nt(d,u)},{i:_-2,x:Nt(f,p)})}else(u||p)&&m.push("translate("+u+t+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:Nt(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:Nt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,g){if(d!==u||f!==p){var _=m.push(i(m)+"scale(",null,",",null,")");g.push({i:_-4,x:Nt(d,u)},{i:_-2,x:Nt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var g=-1,_=p.length,h;++g<_;)u[(h=p[g]).i]=h.x(m);return u.join("")}}}var Gv=Kd(Kv,"px, ","px)","deg)"),qv=Kd(jv,", ",")",")"),zv=1e-12;function jd(e){return((e=Math.exp(e))+1/e)/2}function Hv(e){return((e=Math.exp(e))-1/e)/2}function Yv(e){return((e=Math.exp(2*e))-1)/(e+1)}const Fr=function e(t,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,g=u-c,_=m*m+g*g,h,b;if(_<zv)b=Math.log(p/d)/t,h=function(R){return[s+R*m,c+R*g,d*Math.exp(t*R*b)]};else{var w=Math.sqrt(_),y=(p*p-d*d+r*_)/(2*d*o*w),v=(p*p-d*d-r*_)/(2*p*o*w),k=Math.log(Math.sqrt(y*y+1)-y),E=Math.log(Math.sqrt(v*v+1)-v);b=(E-k)/t,h=function(R){var O=R*b,T=jd(k),q=d/(o*w)*(T*Yv(t*O+k)-Hv(k));return[s+q*m,c+q*g,d*T/jd(t*O+k)]}}return h.duration=b*1e3*t/Math.SQRT2,h}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var jn=0,So=0,xo=0,Gd=1e3,Lr,Ao,Ur=0,fn=0,Kr=0,To=typeof performance=="object"&&performance.now?performance:Date,qd=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function La(){return fn||(qd(Wv),fn=To.now()+Kr)}function Wv(){fn=0}function jr(){this._call=this._time=this._next=null}jr.prototype=zd.prototype={constructor:jr,restart:function(e,t,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?La():+o)+(t==null?0:+t),!this._next&&Ao!==this&&(Ao?Ao._next=this:Lr=this,Ao=this),this._call=e,this._time=o,Ua()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ua())}};function zd(e,t,o){var r=new jr;return r.restart(e,t,o),r}function Xv(){La(),++jn;for(var e=Lr,t;e;)(t=fn-e._time)>=0&&e._call.call(void 0,t),e=e._next;--jn}function Hd(){fn=(Ur=To.now())+Kr,jn=So=0;try{Xv()}finally{jn=0,Jv(),fn=0}}function Zv(){var e=To.now(),t=e-Ur;t>Gd&&(Kr-=t,Ur=e)}function Jv(){for(var e,t=Lr,o,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(o=t._next,t._next=null,t=e?e._next=o:Lr=o);Ao=e,Ua(r)}function Ua(e){if(!jn){So&&(So=clearTimeout(So));var t=e-fn;t>24?(e<1/0&&(So=setTimeout(Hd,e-To.now()-Kr)),xo&&(xo=clearInterval(xo))):(xo||(Ur=To.now(),xo=setInterval(Zv,Gd)),jn=1,qd(Hd))}}function Yd(e,t,o){var r=new jr;return t=t==null?0:+t,r.restart(i=>{r.stop(),e(i+t)},t,o),r}var Qv=Ar("start","end","cancel","interrupt"),eN=[],Wd=0,Xd=1,Ka=2,Gr=3,Zd=4,ja=5,qr=6;function zr(e,t,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;tN(e,o,{name:t,index:r,group:i,on:Qv,tween:eN,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Wd})}function Ga(e,t){var o=yt(e,t);if(o.state>Wd)throw new Error("too late; already scheduled");return o}function St(e,t){var o=yt(e,t);if(o.state>Gr)throw new Error("too late; already running");return o}function yt(e,t){var o=e.__transition;if(!o||!(o=o[t]))throw new Error("transition not found");return o}function tN(e,t,o){var r=e.__transition,i;r[t]=o,o.timer=zd(a,0,o.time);function a(d){o.state=Xd,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!==Xd)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Gr)return Yd(l);m.state===Zd?(m.state=qr,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<t&&(m.state=qr,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Yd(function(){o.state===Gr&&(o.state=Zd,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Ka,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Ka){for(o.state=Gr,i=new Array(p=o.tween.length),f=0,u=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++u]=m);i.length=u+1}}function s(d){for(var f=d<o.duration?o.ease.call(null,d/o.duration):(o.timer.restart(c),o.state=ja,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===ja&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=qr,o.timer.stop(),delete r[t];for(var d in r)return;delete e.__transition}}function Hr(e,t){var o=e.__transition,r,i,a=!0,l;if(o){t=t==null?null:t+"";for(l in o){if((r=o[l]).name!==t){a=!1;continue}i=r.state>Ka&&r.state<ja,r.state=qr,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function nN(e){return this.each(function(){Hr(this,e)})}function oN(e,t){var o,r;return function(){var i=St(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===t){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function rN(e,t,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=St(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:t,value:o},c=0,d=i.length;c<d;++c)if(i[c].name===t){i[c]=s;break}c===d&&i.push(s)}a.tween=i}}function iN(e,t){var o=this._id;if(e+="",arguments.length<2){for(var r=yt(this.node(),o).tween,i=0,a=r.length,l;i<a;++i)if((l=r[i]).name===e)return l.value;return null}return this.each((t==null?oN:rN)(o,e,t))}function qa(e,t,o){var r=e._id;return e.each(function(){var i=St(this,r);(i.value||(i.value={}))[t]=o.apply(this,arguments)}),function(i){return yt(i,r).value[t]}}function Jd(e,t){var o;return(typeof t=="number"?Nt:t instanceof cn?Dr:(o=cn(t))?(t=o,Dr):Fd)(e,t)}function aN(e){return function(){this.removeAttribute(e)}}function lN(e){return function(){this.removeAttributeNS(e.space,e.local)}}function sN(e,t,o){var r,i=o+"",a;return function(){var l=this.getAttribute(e);return l===i?null:l===r?a:a=t(r=l,o)}}function cN(e,t,o){var r,i=o+"",a;return function(){var l=this.getAttributeNS(e.space,e.local);return l===i?null:l===r?a:a=t(r=l,o)}}function dN(e,t,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=t(r=l,s)))}}function uN(e,t,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=t(r=l,s)))}}function fN(e,t){var o=Ir(e),r=o==="transform"?qv:Jd;return this.attrTween(e,typeof t=="function"?(o.local?uN:dN)(o,r,qa(this,"attr."+e,t)):t==null?(o.local?lN:aN)(o):(o.local?cN:sN)(o,r,t))}function pN(e,t){return function(o){this.setAttribute(e,t.call(this,o))}}function mN(e,t){return function(o){this.setAttributeNS(e.space,e.local,t.call(this,o))}}function gN(e,t){var o,r;function i(){var a=t.apply(this,arguments);return a!==r&&(o=(r=a)&&mN(e,a)),o}return i._value=t,i}function hN(e,t){var o,r;function i(){var a=t.apply(this,arguments);return a!==r&&(o=(r=a)&&pN(e,a)),o}return i._value=t,i}function yN(e,t){var o="attr."+e;if(arguments.length<2)return(o=this.tween(o))&&o._value;if(t==null)return this.tween(o,null);if(typeof t!="function")throw new Error;var r=Ir(e);return this.tween(o,(r.local?gN:hN)(r,t))}function _N(e,t){return function(){Ga(this,e).delay=+t.apply(this,arguments)}}function bN(e,t){return t=+t,function(){Ga(this,e).delay=t}}function wN(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?_N:bN)(t,e)):yt(this.node(),t).delay}function EN(e,t){return function(){St(this,e).duration=+t.apply(this,arguments)}}function kN(e,t){return t=+t,function(){St(this,e).duration=t}}function CN(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?EN:kN)(t,e)):yt(this.node(),t).duration}function vN(e,t){if(typeof t!="function")throw new Error;return function(){St(this,e).ease=t}}function NN(e){var t=this._id;return arguments.length?this.each(vN(t,e)):yt(this.node(),t).ease}function SN(e,t){return function(){var o=t.apply(this,arguments);if(typeof o!="function")throw new Error;St(this,e).ease=o}}function xN(e){if(typeof e!="function")throw new Error;return this.each(SN(this._id,e))}function AN(e){typeof e!="function"&&(e=hd(e));for(var t=this._groups,o=t.length,r=new Array(o),i=0;i<o;++i)for(var a=t[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 Rt(r,this._parents,this._name,this._id)}function TN(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,o=e._groups,r=t.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=t[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]=t[s];return new Rt(l,this._parents,this._name,this._id)}function IN(e){return(e+"").trim().split(/^|\s+/).every(function(t){var o=t.indexOf(".");return o>=0&&(t=t.slice(0,o)),!t||t==="start"})}function PN(e,t,o){var r,i,a=IN(t)?Ga:St;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(t,o),l.on=i}}function ON(e,t){var o=this._id;return arguments.length<2?yt(this.node(),o).on.on(e):this.each(PN(o,e,t))}function $N(e){return function(){var t=this.parentNode;for(var o in this.__transition)if(+o!==e)return;t&&t.removeChild(this)}}function BN(){return this.on("end.remove",$N(this._id))}function VN(e){var t=this._name,o=this._id;typeof e!="function"&&(e=Ta(e));for(var r=this._groups,i=r.length,a=new Array(i),l=0;l<i;++l)for(var s=r[l],c=s.length,d=a[l]=new Array(c),f,u,p=0;p<c;++p)(f=s[p])&&(u=e.call(f,f.__data__,p,s))&&("__data__"in f&&(u.__data__=f.__data__),d[p]=u,zr(d[p],t,o,p,d,yt(f,o)));return new Rt(a,this._parents,t,o)}function RN(e){var t=this._name,o=this._id;typeof e!="function"&&(e=gd(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,g=yt(f,o),_=0,h=p.length;_<h;++_)(m=p[_])&&zr(m,t,o,_,p,g);a.push(p),l.push(f)}return new Rt(a,l,t,o)}var DN=wo.prototype.constructor;function MN(){return new DN(this._groups,this._parents)}function FN(e,t){var o,r,i;return function(){var a=Ln(this,e),l=(this.style.removeProperty(e),Ln(this,e));return a===l?null:a===o&&l===r?i:i=t(o=a,r=l)}}function Qd(e){return function(){this.style.removeProperty(e)}}function LN(e,t,o){var r,i=o+"",a;return function(){var l=Ln(this,e);return l===i?null:l===r?a:a=t(r=l,o)}}function UN(e,t,o){var r,i,a;return function(){var l=Ln(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Ln(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=t(r=l,s))}}function KN(e,t){var o,r,i,a="style."+t,l="end."+a,s;return function(){var c=St(this,e),d=c.on,f=c.value[a]==null?s||(s=Qd(t)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function jN(e,t,o){var r=(e+="")=="transform"?Gv:Jd;return t==null?this.styleTween(e,FN(e,r)).on("end.style."+e,Qd(e)):typeof t=="function"?this.styleTween(e,UN(e,r,qa(this,"style."+e,t))).each(KN(this._id,e)):this.styleTween(e,LN(e,r,t),o).on("end.style."+e,null)}function GN(e,t,o){return function(r){this.style.setProperty(e,t.call(this,r),o)}}function qN(e,t,o){var r,i;function a(){var l=t.apply(this,arguments);return l!==i&&(r=(i=l)&&GN(e,l,o)),r}return a._value=t,a}function zN(e,t,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!="function")throw new Error;return this.tween(r,qN(e,t,o??""))}function HN(e){return function(){this.textContent=e}}function YN(e){return function(){var t=e(this);this.textContent=t??""}}function WN(e){return this.tween("text",typeof e=="function"?YN(qa(this,"text",e)):HN(e==null?"":e+""))}function XN(e){return function(t){this.textContent=e.call(this,t)}}function ZN(e){var t,o;function r(){var i=e.apply(this,arguments);return i!==o&&(t=(o=i)&&XN(i)),t}return r._value=e,r}function JN(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,ZN(e))}function QN(){for(var e=this._name,t=this._id,o=eu(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)if(c=l[d]){var f=yt(c,t);zr(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Rt(r,this._parents,e,o)}function e1(){var e,t,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=St(this,r),f=d.on;f!==e&&(t=(e=f).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),d.on=t}),i===0&&a()})}var t1=0;function Rt(e,t,o,r){this._groups=e,this._parents=t,this._name=o,this._id=r}function eu(){return++t1}var Dt=wo.prototype;Rt.prototype={constructor:Rt,select:VN,selectAll:RN,selectChild:Dt.selectChild,selectChildren:Dt.selectChildren,filter:AN,merge:TN,selection:MN,transition:QN,call:Dt.call,nodes:Dt.nodes,node:Dt.node,size:Dt.size,empty:Dt.empty,each:Dt.each,on:ON,attr:fN,attrTween:yN,style:jN,styleTween:zN,text:WN,textTween:JN,remove:BN,tween:iN,delay:wN,duration:CN,ease:NN,easeVarying:xN,end:e1,[Symbol.iterator]:Dt[Symbol.iterator]};function n1(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var o1={time:null,delay:0,duration:250,ease:n1};function r1(e,t){for(var o;!(o=e.__transition)||!(o=o[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return o}function i1(e){var t,o;e instanceof Rt?(t=e._id,e=e._name):(t=eu(),(o=o1).time=La(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)(c=l[d])&&zr(c,e,t,d,l,o||r1(c,t));return new Rt(r,this._parents,e,t)}wo.prototype.interrupt=nN,wo.prototype.transition=i1;const Yr=e=>()=>e;function a1(e,{sourceEvent:t,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function Mt(e,t,o){this.k=e,this.x=t,this.y=o}Mt.prototype={constructor:Mt,scale:function(e){return e===1?this:new Mt(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Mt(this.k,this.x+this.k*e,this.y+this.k*t)},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 Gn=new Mt(1,0,0);Mt.prototype;function za(e){e.stopImmediatePropagation()}function Io(e){e.preventDefault(),e.stopImmediatePropagation()}function l1(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function s1(){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 tu(){return this.__zoom||Gn}function c1(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function d1(){return navigator.maxTouchPoints||"ontouchstart"in this}function u1(e,t,o){var r=e.invertX(t[0][0])-o[0][0],i=e.invertX(t[1][0])-o[1][0],a=e.invertY(t[0][1])-o[0][1],l=e.invertY(t[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 f1(){var e=l1,t=s1,o=u1,r=c1,i=d1,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Fr,d=Ar("start","zoom","end"),f,u,p,m=500,g=150,_=0,h=10;function b(C){C.property("__zoom",tu).on("wheel.zoom",O,{passive:!1}).on("mousedown.zoom",T).on("dblclick.zoom",q).filter(i).on("touchstart.zoom",j).on("touchmove.zoom",A).on("touchend.zoom touchcancel.zoom",I).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}b.transform=function(C,D,P,L){var F=C.selection?C.selection():C;F.property("__zoom",tu),C!==F?k(C,D,P,L):F.interrupt().each(function(){E(this,arguments).event(L).start().zoom(null,typeof D=="function"?D.apply(this,arguments):D).end()})},b.scaleBy=function(C,D,P,L){b.scaleTo(C,function(){var F=this.__zoom.k,B=typeof D=="function"?D.apply(this,arguments):D;return F*B},P,L)},b.scaleTo=function(C,D,P,L){b.transform(C,function(){var F=t.apply(this,arguments),B=this.__zoom,$=P==null?v(F):typeof P=="function"?P.apply(this,arguments):P,G=B.invert($),ee=typeof D=="function"?D.apply(this,arguments):D;return o(y(w(B,ee),$,G),F,l)},P,L)},b.translateBy=function(C,D,P,L){b.transform(C,function(){return o(this.__zoom.translate(typeof D=="function"?D.apply(this,arguments):D,typeof P=="function"?P.apply(this,arguments):P),t.apply(this,arguments),l)},null,L)},b.translateTo=function(C,D,P,L,F){b.transform(C,function(){var B=t.apply(this,arguments),$=this.__zoom,G=L==null?v(B):typeof L=="function"?L.apply(this,arguments):L;return o(Gn.translate(G[0],G[1]).scale($.k).translate(typeof D=="function"?-D.apply(this,arguments):-D,typeof P=="function"?-P.apply(this,arguments):-P),B,l)},L,F)};function w(C,D){return D=Math.max(a[0],Math.min(a[1],D)),D===C.k?C:new Mt(D,C.x,C.y)}function y(C,D,P){var L=D[0]-P[0]*C.k,F=D[1]-P[1]*C.k;return L===C.x&&F===C.y?C:new Mt(C.k,L,F)}function v(C){return[(+C[0][0]+ +C[1][0])/2,(+C[0][1]+ +C[1][1])/2]}function k(C,D,P,L){C.on("start.zoom",function(){E(this,arguments).event(L).start()}).on("interrupt.zoom end.zoom",function(){E(this,arguments).event(L).end()}).tween("zoom",function(){var F=this,B=arguments,$=E(F,B).event(L),G=t.apply(F,B),ee=P==null?v(G):typeof P=="function"?P.apply(F,B):P,re=Math.max(G[1][0]-G[0][0],G[1][1]-G[0][1]),J=F.__zoom,ne=typeof D=="function"?D.apply(F,B):D,z=c(J.invert(ee).concat(re/J.k),ne.invert(ee).concat(re/ne.k));return function(Z){if(Z===1)Z=ne;else{var ie=z(Z),oe=re/ie[2];Z=new Mt(oe,ee[0]-ie[0]*oe,ee[1]-ie[1]*oe)}$.zoom(null,Z)}})}function E(C,D,P){return!P&&C.__zooming||new R(C,D)}function R(C,D){this.that=C,this.args=D,this.active=0,this.sourceEvent=null,this.extent=t.apply(C,D),this.taps=0}R.prototype={event:function(C){return C&&(this.sourceEvent=C),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(C,D){return this.mouse&&C!=="mouse"&&(this.mouse[1]=D.invert(this.mouse[0])),this.touch0&&C!=="touch"&&(this.touch0[1]=D.invert(this.touch0[0])),this.touch1&&C!=="touch"&&(this.touch1[1]=D.invert(this.touch1[0])),this.that.__zoom=D,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(C){var D=gt(this.that).datum();d.call(C,this.that,new a1(C,{sourceEvent:this.sourceEvent,target:b,transform:this.that.__zoom,dispatch:d}),D)}};function O(C,...D){if(!e.apply(this,arguments))return;var P=E(this,D).event(C),L=this.__zoom,F=Math.max(a[0],Math.min(a[1],L.k*Math.pow(2,r.apply(this,arguments)))),B=Ct(C);if(P.wheel)(P.mouse[0][0]!==B[0]||P.mouse[0][1]!==B[1])&&(P.mouse[1]=L.invert(P.mouse[0]=B)),clearTimeout(P.wheel);else{if(L.k===F)return;P.mouse=[B,L.invert(B)],Hr(this),P.start()}Io(C),P.wheel=setTimeout($,g),P.zoom("mouse",o(y(w(L,F),P.mouse[0],P.mouse[1]),P.extent,l));function $(){P.wheel=null,P.end()}}function T(C,...D){if(p||!e.apply(this,arguments))return;var P=C.currentTarget,L=E(this,D,!0).event(C),F=gt(C.view).on("mousemove.zoom",ee,!0).on("mouseup.zoom",re,!0),B=Ct(C,P),$=C.clientX,G=C.clientY;Sd(C.view),za(C),L.mouse=[B,this.__zoom.invert(B)],Hr(this),L.start();function ee(J){if(Io(J),!L.moved){var ne=J.clientX-$,z=J.clientY-G;L.moved=ne*ne+z*z>_}L.event(J).zoom("mouse",o(y(L.that.__zoom,L.mouse[0]=Ct(J,P),L.mouse[1]),L.extent,l))}function re(J){F.on("mousemove.zoom mouseup.zoom",null),xd(J.view,L.moved),Io(J),L.event(J).end()}}function q(C,...D){if(e.apply(this,arguments)){var P=this.__zoom,L=Ct(C.changedTouches?C.changedTouches[0]:C,this),F=P.invert(L),B=P.k*(C.shiftKey?.5:2),$=o(y(w(P,B),L,F),t.apply(this,D),l);Io(C),s>0?gt(this).transition().duration(s).call(k,$,L,C):gt(this).call(b.transform,$,L,C)}}function j(C,...D){if(e.apply(this,arguments)){var P=C.touches,L=P.length,F=E(this,D,C.changedTouches.length===L).event(C),B,$,G,ee;for(za(C),$=0;$<L;++$)G=P[$],ee=Ct(G,this),ee=[ee,this.__zoom.invert(ee),G.identifier],F.touch0?!F.touch1&&F.touch0[2]!==ee[2]&&(F.touch1=ee,F.taps=0):(F.touch0=ee,B=!0,F.taps=1+!!f);f&&(f=clearTimeout(f)),B&&(F.taps<2&&(u=ee[0],f=setTimeout(function(){f=null},m)),Hr(this),F.start())}}function A(C,...D){if(this.__zooming){var P=E(this,D).event(C),L=C.changedTouches,F=L.length,B,$,G,ee;for(Io(C),B=0;B<F;++B)$=L[B],G=Ct($,this),P.touch0&&P.touch0[2]===$.identifier?P.touch0[0]=G:P.touch1&&P.touch1[2]===$.identifier&&(P.touch1[0]=G);if($=P.that.__zoom,P.touch1){var re=P.touch0[0],J=P.touch0[1],ne=P.touch1[0],z=P.touch1[1],Z=(Z=ne[0]-re[0])*Z+(Z=ne[1]-re[1])*Z,ie=(ie=z[0]-J[0])*ie+(ie=z[1]-J[1])*ie;$=w($,Math.sqrt(Z/ie)),G=[(re[0]+ne[0])/2,(re[1]+ne[1])/2],ee=[(J[0]+z[0])/2,(J[1]+z[1])/2]}else if(P.touch0)G=P.touch0[0],ee=P.touch0[1];else return;P.zoom("touch",o(y($,G,ee),P.extent,l))}}function I(C,...D){if(this.__zooming){var P=E(this,D).event(C),L=C.changedTouches,F=L.length,B,$;for(za(C),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),B=0;B<F;++B)$=L[B],P.touch0&&P.touch0[2]===$.identifier?delete P.touch0:P.touch1&&P.touch1[2]===$.identifier&&delete P.touch1;if(P.touch1&&!P.touch0&&(P.touch0=P.touch1,delete P.touch1),P.touch0)P.touch0[1]=this.__zoom.invert(P.touch0[0]);else if(P.end(),P.taps===2&&($=Ct($,this),Math.hypot(u[0]-$[0],u[1]-$[1])<h)){var G=gt(this).on("dblclick.zoom");G&&G.apply(this,arguments)}}}return b.wheelDelta=function(C){return arguments.length?(r=typeof C=="function"?C:Yr(+C),b):r},b.filter=function(C){return arguments.length?(e=typeof C=="function"?C:Yr(!!C),b):e},b.touchable=function(C){return arguments.length?(i=typeof C=="function"?C:Yr(!!C),b):i},b.extent=function(C){return arguments.length?(t=typeof C=="function"?C:Yr([[+C[0][0],+C[0][1]],[+C[1][0],+C[1][1]]]),b):t},b.scaleExtent=function(C){return arguments.length?(a[0]=+C[0],a[1]=+C[1],b):[a[0],a[1]]},b.translateExtent=function(C){return arguments.length?(l[0][0]=+C[0][0],l[1][0]=+C[1][0],l[0][1]=+C[0][1],l[1][1]=+C[1][1],b):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},b.constrain=function(C){return arguments.length?(o=C,b):o},b.duration=function(C){return arguments.length?(s=+C,b):s},b.interpolate=function(C){return arguments.length?(c=C,b):c},b.on=function(){var C=d.on.apply(d,arguments);return C===d?b:C},b.clickDistance=function(C){return arguments.length?(_=(C=+C)*C,b):Math.sqrt(_)},b.tapDistance=function(C){return arguments.length?(h=+C,b):h},b}var ge=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ge||{}),Ha=(e=>(e.Partial="partial",e.Full="full",e))(Ha||{}),pn=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(pn||{}),Kt=(e=>(e.Strict="strict",e.Loose="loose",e))(Kt||{}),Wr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(Wr||{}),Po=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(Po||{}),nu=(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))(nu||{});const p1=["INPUT","SELECT","TEXTAREA"],m1=typeof document<"u"?document:null;function Ya(e){var t,o;const r=((o=(t=e.composedPath)==null?void 0:t.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 p1.includes(r==null?void 0:r.nodeName)||i||!!a}function g1(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function ou(e,t,o,r){const i=t.replace("+",`
11
+ it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:Cn.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
12
+ authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:Cn.tags}]},sm={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"]}}]},ql={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
13
+ client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:Qt},{ttl:{help:"Time-to-live value for data"}}]},cm=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)}}:{},dm={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},It={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",isEnterprise:!1,nameKey:"plugins.meta.basic-auth.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",isEnterprise:!1,nameKey:"plugins.meta.hmac-auth.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",isEnterprise:!0,nameKey:"plugins.meta.jwt-signer.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",isEnterprise:!1,nameKey:"plugins.meta.jwt.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",isEnterprise:!1,nameKey:"plugins.meta.key-auth-enc.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ldap-auth-advanced.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",isEnterprise:!1,nameKey:"plugins.meta.ldap-auth.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",isEnterprise:!0,nameKey:"plugins.meta.oauth2-introspection.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",isEnterprise:!1,nameKey:"plugins.meta.oauth2.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",isEnterprise:!0,nameKey:"plugins.meta.openid-connect.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",isEnterprise:!0,nameKey:"plugins.meta.mtls-auth.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",isEnterprise:!0,nameKey:"plugins.meta.vault-auth.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",isEnterprise:!1,nameKey:"plugins.meta.bot-detection.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",isEnterprise:!1,nameKey:"plugins.meta.cors.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",isEnterprise:!1,nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",isEnterprise:!0,nameKey:"plugins.meta.opa.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",isEnterprise:!1,nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",isEnterprise:!0,nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",isEnterprise:!1,nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",isEnterprise:!0,nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.proxy-cache-advanced.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.rate-limiting-advanced.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",isEnterprise:!0,nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",isEnterprise:!1,nameKey:"plugins.meta.request-size-limiting.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",isEnterprise:!1,nameKey:"plugins.meta.request-termination.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",isEnterprise:!1,nameKey:"plugins.meta.response-ratelimiting.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",isEnterprise:!0,nameKey:"plugins.meta.route-by-header.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",isEnterprise:!0,nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",isEnterprise:!1,nameKey:"plugins.meta.aws-lambda.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",isEnterprise:!0,nameKey:"plugins.meta.azure-functions.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",isEnterprise:!1,nameKey:"plugins.meta.openwhisk.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",isEnterprise:!0,nameKey:"plugins.meta.pre-function.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",isEnterprise:!0,nameKey:"plugins.meta.post-function.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",isEnterprise:!1,nameKey:"plugins.meta.datadog.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",isEnterprise:!0,nameKey:"plugins.meta.prometheus.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",isEnterprise:!0,nameKey:"plugins.meta.zipkin.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",isEnterprise:!0,nameKey:"plugins.meta.collector.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer-advanced.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",isEnterprise:!1,nameKey:"plugins.meta.correlation-id.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.request-transformer-advanced.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.request-transformer.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",isEnterprise:!1,nameKey:"plugins.meta.response-transformer.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-upstream.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",isEnterprise:!0,nameKey:"plugins.meta.degraphql.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",isEnterprise:!0,nameKey:"plugins.meta.exit-transformer.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",isEnterprise:!0,nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",isEnterprise:!1,nameKey:"plugins.meta.file-log.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",isEnterprise:!1,nameKey:"plugins.meta.http-log.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",isEnterprise:!1,nameKey:"plugins.meta.loggly.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.statsd-advanced.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",isEnterprise:!1,nameKey:"plugins.meta.statsd.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",isEnterprise:!1,nameKey:"plugins.meta.syslog.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",isEnterprise:!1,nameKey:"plugins.meta.tcp-log.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",isEnterprise:!1,nameKey:"plugins.meta.udp-log.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",isEnterprise:!0,nameKey:"plugins.meta.kafka-log.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",isEnterprise:!1,nameKey:"plugins.meta.session.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-tls.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",isEnterprise:!0,nameKey:"plugins.meta.application-registration.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",isEnterprise:!1,nameKey:"plugins.meta.konnect-application-auth.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",isEnterprise:!1,nameKey:"plugins.meta.acme.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-gateway.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",isEnterprise:!1,nameKey:"plugins.meta.grpc-web.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-timeout.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",isEnterprise:!1,nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-validator.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",isEnterprise:!0,nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",isEnterprise:!0,nameKey:"plugins.meta.tls-metadata-headers.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",isEnterprise:!0,nameKey:"plugins.meta.tls-handshake-modifier.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",isEnterprise:!0,nameKey:"plugins.meta.oas-validation.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",isEnterprise:!0,nameKey:"plugins.meta.jwe-decrypt.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.xml-threat-protection.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",isEnterprise:!0,nameKey:"plugins.meta.saml.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",isEnterprise:!0,nameKey:"plugins.meta.app-dynamics.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",isEnterprise:!0,nameKey:"plugins.meta.json-threat-protection.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",isEnterprise:!1,nameKey:"plugins.meta.standard-webhooks.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",isEnterprise:!0,nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",isEnterprise:!0,nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",isEnterprise:!0,nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...j.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",isEnterprise:!0,nameKey:"plugins.meta.upstream-oauth.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",isEnterprise:!0,nameKey:"plugins.meta.confluent.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",isEnterprise:!0,nameKey:"plugins.meta.service-protection.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",isEnterprise:!0,nameKey:"plugins.meta.injection-protection.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",isEnterprise:!1,nameKey:"plugins.meta.redirect.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",isEnterprise:!1,nameKey:"plugins.meta.kafka-consume.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",isEnterprise:!1,nameKey:"plugins.meta.confluent-consume.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",isEnterprise:!1,nameKey:"plugins.meta.request-callout.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",isEnterprise:!1,nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",isEnterprise:!1,nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",isEnterprise:!1,nameKey:"plugins.meta.datakit.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",isEnterprise:!1,nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",isEnterprise:!1,nameKey:"plugins.meta.solace-upstream.name",...j.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",isEnterprise:!1,nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...j.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]}},Nn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:Fl,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:Jt(Fl),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:Ul,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:Jt(Ul)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Kl,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:Jt(Kl)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:ql,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:Jt(ql)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Gl,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:Jt(Gl)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:jl,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:Jt(jl)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:am,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},um={acls:Jp,basicauth_credentials:Qp,keyauth_credentials:rm,keyauth_enc_credentials:dm,oauth2_credentials:sm,hmacauth_credentials:im,jwt_secrets:lm},fm=()=>{const{i18n:{t:e}}=ve(),n={},o={};for(const[i,a]of Object.entries(It))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(Nn))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:Nn,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},no={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},pm={"config-prompts-prepend":{...no,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...no,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},mm={"config-templates":{...no,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},gm={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)}},hm={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},ym={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:Cn.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},Pe={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},Zo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},_m={"config-metrics":{...Zo,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"}]}}}},bm={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},wm={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Em={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},km={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Cm={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},zl=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:Cn.fields.arrayItems({newElementButtonLabel:"Add"})}),Cm),Jo={"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"}},Nm={"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":{}},vm=["config-remove-headers","config-remove.querystring","config-remove-body","config-replace-headers","config-replace-querystring","config-replace-body","config-rename-headers","config-rename-querystring","config-rename-body","config-add-headers","config-add-querystring","config-add-body","config-append-headers","config-append-querystring","config-append-body","config-allow-body"].reduce((e,n)=>({...e,[n]:Cn.fields.arrayItems({newElementButtonLabel:"Add"})}),Nm),Hl={"config-add-json":{...Pe,label:"Config.Add.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Pe,label:"Config.Append.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Pe,label:"Config.Remove.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Pe,label:"Config.Rename.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Pe,label:"Config.Replace.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}}},Sm={...Hl,"config-allow-json":{...Pe,label:"Config.Allow.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Pe,label:"Config.Transform.Functions",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Pe,label:"Config.Transform.Json",inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}}},xm={"config-rules":{...no,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},Am={"config-session_redis_cluster_nodes":{...no,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},Im={"config-metrics":{...Zo,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"]}]}}}},Tm={"config-metrics":{...Zo,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"]}]}}}},Pm={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Om={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var Yl=typeof global=="object"&&global&&global.Object===Object&&global,$m=typeof self=="object"&&self&&self.Object===Object&&self,bt=Yl||$m||Function("return this")(),lt=bt.Symbol,Wl=Object.prototype,Bm=Wl.hasOwnProperty,Vm=Wl.toString,oo=lt?lt.toStringTag:void 0;function Rm(e){var n=Bm.call(e,oo),o=e[oo];try{e[oo]=void 0;var r=!0}catch{}var i=Vm.call(e);return r&&(n?e[oo]=o:delete e[oo]),i}var Dm=Object.prototype,Mm=Dm.toString;function Lm(e){return Mm.call(e)}var Fm="[object Null]",Um="[object Undefined]",Xl=lt?lt.toStringTag:void 0;function en(e){return e==null?e===void 0?Um:Fm:Xl&&Xl in Object(e)?Rm(e):Lm(e)}function Tt(e){return e!=null&&typeof e=="object"}var Km="[object Symbol]";function Ei(e){return typeof e=="symbol"||Tt(e)&&en(e)==Km}function Zl(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var ft=Array.isArray,Jl=lt?lt.prototype:void 0,Ql=Jl?Jl.toString:void 0;function es(e){if(typeof e=="string")return e;if(ft(e))return Zl(e,es)+"";if(Ei(e))return Ql?Ql.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 jm(e){return e}var Gm="[object AsyncFunction]",qm="[object Function]",zm="[object GeneratorFunction]",Hm="[object Proxy]";function Qo(e){if(!tn(e))return!1;var n=en(e);return n==qm||n==zm||n==Gm||n==Hm}var ki=bt["__core-js_shared__"],ts=function(){var e=/[^.]+$/.exec(ki&&ki.keys&&ki.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Ym(e){return!!ts&&ts in e}var Wm=Function.prototype,Xm=Wm.toString;function nn(e){if(e!=null){try{return Xm.call(e)}catch{}try{return e+""}catch{}}return""}var Zm=/[\\^$.*+?()[\]{}|]/g,Jm=/^\[object .+?Constructor\]$/,Qm=Function.prototype,eg=Object.prototype,tg=Qm.toString,ng=eg.hasOwnProperty,og=RegExp("^"+tg.call(ng).replace(Zm,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function rg(e){if(!tn(e)||Ym(e))return!1;var n=Qo(e)?og:Jm;return n.test(nn(e))}function ig(e,n){return e==null?void 0:e[n]}function on(e,n){var o=ig(e,n);return rg(o)?o:void 0}var Ci=on(bt,"WeakMap"),ns=Object.create,ag=function(){function e(){}return function(n){if(!tn(n))return{};if(ns)return ns(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function lg(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 sg(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var cg=800,dg=16,ug=Date.now;function fg(e){var n=0,o=0;return function(){var r=ug(),i=dg-(r-o);if(o=r,i>0){if(++n>=cg)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function pg(e){return function(){return e}}var er=function(){try{var e=on(Object,"defineProperty");return e({},"",{}),e}catch{}}(),mg=er?function(e,n){return er(e,"toString",{configurable:!0,enumerable:!1,value:pg(n),writable:!0})}:jm,gg=fg(mg);function hg(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var yg=9007199254740991,_g=/^(?:0|[1-9]\d*)$/;function Ni(e,n){var o=typeof e;return n=n??yg,!!n&&(o=="number"||o!="symbol"&&_g.test(e))&&e>-1&&e%1==0&&e<n}function os(e,n,o){n=="__proto__"&&er?er(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function vi(e,n){return e===n||e!==e&&n!==n}var bg=Object.prototype,wg=bg.hasOwnProperty;function Si(e,n,o){var r=e[n];(!(wg.call(e,n)&&vi(r,o))||o===void 0&&!(n in e))&&os(e,n,o)}function ro(e,n,o,r){var i=!o;o||(o={});for(var a=-1,l=n.length;++a<l;){var s=n[a],c=void 0;c===void 0&&(c=e[s]),i?os(o,s,c):Si(o,s,c)}return o}var rs=Math.max;function Eg(e,n,o){return n=rs(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=rs(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),lg(e,this,s)}}var kg=9007199254740991;function xi(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=kg}function Ai(e){return e!=null&&xi(e.length)&&!Qo(e)}var Cg=Object.prototype;function tr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||Cg;return e===o}function Ng(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var vg="[object Arguments]";function is(e){return Tt(e)&&en(e)==vg}var as=Object.prototype,Sg=as.hasOwnProperty,xg=as.propertyIsEnumerable,nr=is(function(){return arguments}())?is:function(e){return Tt(e)&&Sg.call(e,"callee")&&!xg.call(e,"callee")};function Ag(){return!1}var ls=typeof he=="object"&&he&&!he.nodeType&&he,ss=ls&&typeof module=="object"&&module&&!module.nodeType&&module,Ig=ss&&ss.exports===ls,cs=Ig?bt.Buffer:void 0,Tg=cs?cs.isBuffer:void 0,io=Tg||Ag,Pg="[object Arguments]",Og="[object Array]",$g="[object Boolean]",Bg="[object Date]",Vg="[object Error]",Rg="[object Function]",Dg="[object Map]",Mg="[object Number]",Lg="[object Object]",Fg="[object RegExp]",Ug="[object Set]",Kg="[object String]",jg="[object WeakMap]",Gg="[object ArrayBuffer]",qg="[object DataView]",zg="[object Float32Array]",Hg="[object Float64Array]",Yg="[object Int8Array]",Wg="[object Int16Array]",Xg="[object Int32Array]",Zg="[object Uint8Array]",Jg="[object Uint8ClampedArray]",Qg="[object Uint16Array]",eh="[object Uint32Array]",Oe={};Oe[zg]=Oe[Hg]=Oe[Yg]=Oe[Wg]=Oe[Xg]=Oe[Zg]=Oe[Jg]=Oe[Qg]=Oe[eh]=!0,Oe[Pg]=Oe[Og]=Oe[Gg]=Oe[$g]=Oe[qg]=Oe[Bg]=Oe[Vg]=Oe[Rg]=Oe[Dg]=Oe[Mg]=Oe[Lg]=Oe[Fg]=Oe[Ug]=Oe[Kg]=Oe[jg]=!1;function th(e){return Tt(e)&&xi(e.length)&&!!Oe[en(e)]}function Ii(e){return function(n){return e(n)}}var ds=typeof he=="object"&&he&&!he.nodeType&&he,ao=ds&&typeof module=="object"&&module&&!module.nodeType&&module,nh=ao&&ao.exports===ds,Ti=nh&&Yl.process,vn=function(){try{var e=ao&&ao.require&&ao.require("util").types;return e||Ti&&Ti.binding&&Ti.binding("util")}catch{}}(),us=vn&&vn.isTypedArray,Pi=us?Ii(us):th,oh=Object.prototype,rh=oh.hasOwnProperty;function fs(e,n){var o=ft(e),r=!o&&nr(e),i=!o&&!r&&io(e),a=!o&&!r&&!i&&Pi(e),l=o||r||i||a,s=l?Ng(e.length,String):[],c=s.length;for(var d in e)(n||rh.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||Ni(d,c)))&&s.push(d);return s}function ps(e,n){return function(o){return e(n(o))}}var ih=ps(Object.keys,Object),ah=Object.prototype,lh=ah.hasOwnProperty;function ms(e){if(!tr(e))return ih(e);var n=[];for(var o in Object(e))lh.call(e,o)&&o!="constructor"&&n.push(o);return n}function Oi(e){return Ai(e)?fs(e):ms(e)}function sh(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var ch=Object.prototype,dh=ch.hasOwnProperty;function uh(e){if(!tn(e))return sh(e);var n=tr(e),o=[];for(var r in e)r=="constructor"&&(n||!dh.call(e,r))||o.push(r);return o}function $i(e){return Ai(e)?fs(e,!0):uh(e)}var fh=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ph=/^\w*$/;function mh(e,n){if(ft(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Ei(e)?!0:ph.test(e)||!fh.test(e)||n!=null&&e in Object(n)}var lo=on(Object,"create");function gh(){this.__data__=lo?lo(null):{},this.size=0}function hh(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var yh="__lodash_hash_undefined__",_h=Object.prototype,bh=_h.hasOwnProperty;function wh(e){var n=this.__data__;if(lo){var o=n[e];return o===yh?void 0:o}return bh.call(n,e)?n[e]:void 0}var Eh=Object.prototype,kh=Eh.hasOwnProperty;function Ch(e){var n=this.__data__;return lo?n[e]!==void 0:kh.call(n,e)}var Nh="__lodash_hash_undefined__";function vh(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=lo&&n===void 0?Nh:n,this}function rn(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}rn.prototype.clear=gh,rn.prototype.delete=hh,rn.prototype.get=wh,rn.prototype.has=Ch,rn.prototype.set=vh;function Sh(){this.__data__=[],this.size=0}function or(e,n){for(var o=e.length;o--;)if(vi(e[o][0],n))return o;return-1}var xh=Array.prototype,Ah=xh.splice;function Ih(e){var n=this.__data__,o=or(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Ah.call(n,o,1),--this.size,!0}function Th(e){var n=this.__data__,o=or(n,e);return o<0?void 0:n[o][1]}function Ph(e){return or(this.__data__,e)>-1}function Oh(e,n){var o=this.__data__,r=or(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Pt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Pt.prototype.clear=Sh,Pt.prototype.delete=Ih,Pt.prototype.get=Th,Pt.prototype.has=Ph,Pt.prototype.set=Oh;var so=on(bt,"Map");function $h(){this.size=0,this.__data__={hash:new rn,map:new(so||Pt),string:new rn}}function Bh(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function rr(e,n){var o=e.__data__;return Bh(n)?o[typeof n=="string"?"string":"hash"]:o.map}function Vh(e){var n=rr(this,e).delete(e);return this.size-=n?1:0,n}function Rh(e){return rr(this,e).get(e)}function Dh(e){return rr(this,e).has(e)}function Mh(e,n){var o=rr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Ot(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Ot.prototype.clear=$h,Ot.prototype.delete=Vh,Ot.prototype.get=Rh,Ot.prototype.has=Dh,Ot.prototype.set=Mh;var Lh="Expected a function";function Bi(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(Lh);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(Bi.Cache||Ot),o}Bi.Cache=Ot;var Fh=500;function Uh(e){var n=Bi(e,function(r){return o.size===Fh&&o.clear(),r}),o=n.cache;return n}var Kh=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,jh=/\\(\\)?/g,Gh=Uh(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Kh,function(o,r,i,a){n.push(i?a.replace(jh,"$1"):r||o)}),n});function ir(e){return e==null?"":es(e)}function Sn(e,n){return ft(e)?e:mh(e,n)?[e]:Gh(ir(e))}function ar(e){if(typeof e=="string"||Ei(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function Vi(e,n){n=Sn(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[ar(n[o++])];return o&&o==r?e:void 0}function gs(e,n,o){var r=e==null?void 0:Vi(e,n);return r===void 0?o:r}function Ri(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var hs=lt?lt.isConcatSpreadable:void 0;function qh(e){return ft(e)||nr(e)||!!(hs&&e&&e[hs])}function zh(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=qh),i||(i=[]);++a<l;){var s=e[a];o(s)?Ri(i,s):i[i.length]=s}return i}function Hh(e){var n=e==null?0:e.length;return n?zh(e):[]}function ys(e){return gg(Eg(e,void 0,Hh),e+"")}var Di=ps(Object.getPrototypeOf,Object),Yh="[object Object]",Wh=Function.prototype,Xh=Object.prototype,_s=Wh.toString,Zh=Xh.hasOwnProperty,Jh=_s.call(Object);function Qh(e){if(!Tt(e)||en(e)!=Yh)return!1;var n=Di(e);if(n===null)return!0;var o=Zh.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&_s.call(o)==Jh}function bs(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 ey(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:bs(e,n,o)}var ty="\\ud800-\\udfff",ny="\\u0300-\\u036f",oy="\\ufe20-\\ufe2f",ry="\\u20d0-\\u20ff",iy=ny+oy+ry,ay="\\ufe0e\\ufe0f",ly="\\u200d",sy=RegExp("["+ly+ty+iy+ay+"]");function ws(e){return sy.test(e)}function cy(e){return e.split("")}var Es="\\ud800-\\udfff",dy="\\u0300-\\u036f",uy="\\ufe20-\\ufe2f",fy="\\u20d0-\\u20ff",py=dy+uy+fy,my="\\ufe0e\\ufe0f",gy="["+Es+"]",Mi="["+py+"]",Li="\\ud83c[\\udffb-\\udfff]",hy="(?:"+Mi+"|"+Li+")",ks="[^"+Es+"]",Cs="(?:\\ud83c[\\udde6-\\uddff]){2}",Ns="[\\ud800-\\udbff][\\udc00-\\udfff]",yy="\\u200d",vs=hy+"?",Ss="["+my+"]?",_y="(?:"+yy+"(?:"+[ks,Cs,Ns].join("|")+")"+Ss+vs+")*",by=Ss+vs+_y,wy="(?:"+[ks+Mi+"?",Mi,Cs,Ns,gy].join("|")+")",Ey=RegExp(Li+"(?="+Li+")|"+wy+by,"g");function ky(e){return e.match(Ey)||[]}function Cy(e){return ws(e)?ky(e):cy(e)}function Ny(e){return function(n){n=ir(n);var o=ws(n)?Cy(n):void 0,r=o?o[0]:n.charAt(0),i=o?ey(o,1).join(""):n.slice(1);return r[e]()+i}}var vy=Ny("toUpperCase");function Sy(e){return vy(ir(e).toLowerCase())}function xy(){this.__data__=new Pt,this.size=0}function Ay(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function Iy(e){return this.__data__.get(e)}function Ty(e){return this.__data__.has(e)}var Py=200;function Oy(e,n){var o=this.__data__;if(o instanceof Pt){var r=o.__data__;if(!so||r.length<Py-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Ot(r)}return o.set(e,n),this.size=o.size,this}function $t(e){var n=this.__data__=new Pt(e);this.size=n.size}$t.prototype.clear=xy,$t.prototype.delete=Ay,$t.prototype.get=Iy,$t.prototype.has=Ty,$t.prototype.set=Oy;function $y(e,n){return e&&ro(n,Oi(n),e)}function By(e,n){return e&&ro(n,$i(n),e)}var xs=typeof he=="object"&&he&&!he.nodeType&&he,As=xs&&typeof module=="object"&&module&&!module.nodeType&&module,Vy=As&&As.exports===xs,Is=Vy?bt.Buffer:void 0,Ts=Is?Is.allocUnsafe:void 0;function Ry(e,n){if(n)return e.slice();var o=e.length,r=Ts?Ts(o):new e.constructor(o);return e.copy(r),r}function Dy(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 Ps(){return[]}var My=Object.prototype,Ly=My.propertyIsEnumerable,Os=Object.getOwnPropertySymbols,Fi=Os?function(e){return e==null?[]:(e=Object(e),Dy(Os(e),function(n){return Ly.call(e,n)}))}:Ps;function Fy(e,n){return ro(e,Fi(e),n)}var Uy=Object.getOwnPropertySymbols,$s=Uy?function(e){for(var n=[];e;)Ri(n,Fi(e)),e=Di(e);return n}:Ps;function Ky(e,n){return ro(e,$s(e),n)}function Bs(e,n,o){var r=n(e);return ft(e)?r:Ri(r,o(e))}function Ui(e){return Bs(e,Oi,Fi)}function Vs(e){return Bs(e,$i,$s)}var Ki=on(bt,"DataView"),ji=on(bt,"Promise"),Gi=on(bt,"Set"),Rs="[object Map]",jy="[object Object]",Ds="[object Promise]",Ms="[object Set]",Ls="[object WeakMap]",Fs="[object DataView]",Gy=nn(Ki),qy=nn(so),zy=nn(ji),Hy=nn(Gi),Yy=nn(Ci),st=en;(Ki&&st(new Ki(new ArrayBuffer(1)))!=Fs||so&&st(new so)!=Rs||ji&&st(ji.resolve())!=Ds||Gi&&st(new Gi)!=Ms||Ci&&st(new Ci)!=Ls)&&(st=function(e){var n=en(e),o=n==jy?e.constructor:void 0,r=o?nn(o):"";if(r)switch(r){case Gy:return Fs;case qy:return Rs;case zy:return Ds;case Hy:return Ms;case Yy:return Ls}return n});var Wy=Object.prototype,Xy=Wy.hasOwnProperty;function Zy(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&Xy.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var lr=bt.Uint8Array;function qi(e){var n=new e.constructor(e.byteLength);return new lr(n).set(new lr(e)),n}function Jy(e,n){var o=n?qi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var Qy=/\w*$/;function e_(e){var n=new e.constructor(e.source,Qy.exec(e));return n.lastIndex=e.lastIndex,n}var Us=lt?lt.prototype:void 0,Ks=Us?Us.valueOf:void 0;function t_(e){return Ks?Object(Ks.call(e)):{}}function n_(e,n){var o=n?qi(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var o_="[object Boolean]",r_="[object Date]",i_="[object Map]",a_="[object Number]",l_="[object RegExp]",s_="[object Set]",c_="[object String]",d_="[object Symbol]",u_="[object ArrayBuffer]",f_="[object DataView]",p_="[object Float32Array]",m_="[object Float64Array]",g_="[object Int8Array]",h_="[object Int16Array]",y_="[object Int32Array]",__="[object Uint8Array]",b_="[object Uint8ClampedArray]",w_="[object Uint16Array]",E_="[object Uint32Array]";function k_(e,n,o){var r=e.constructor;switch(n){case u_:return qi(e);case o_:case r_:return new r(+e);case f_:return Jy(e,o);case p_:case m_:case g_:case h_:case y_:case __:case b_:case w_:case E_:return n_(e,o);case i_:return new r;case a_:case c_:return new r(e);case l_:return e_(e);case s_:return new r;case d_:return t_(e)}}function C_(e){return typeof e.constructor=="function"&&!tr(e)?ag(Di(e)):{}}var N_="[object Map]";function v_(e){return Tt(e)&&st(e)==N_}var js=vn&&vn.isMap,S_=js?Ii(js):v_,x_="[object Set]";function A_(e){return Tt(e)&&st(e)==x_}var Gs=vn&&vn.isSet,I_=Gs?Ii(Gs):A_,T_=1,P_=2,O_=4,qs="[object Arguments]",$_="[object Array]",B_="[object Boolean]",V_="[object Date]",R_="[object Error]",zs="[object Function]",D_="[object GeneratorFunction]",M_="[object Map]",L_="[object Number]",Hs="[object Object]",F_="[object RegExp]",U_="[object Set]",K_="[object String]",j_="[object Symbol]",G_="[object WeakMap]",q_="[object ArrayBuffer]",z_="[object DataView]",H_="[object Float32Array]",Y_="[object Float64Array]",W_="[object Int8Array]",X_="[object Int16Array]",Z_="[object Int32Array]",J_="[object Uint8Array]",Q_="[object Uint8ClampedArray]",eb="[object Uint16Array]",tb="[object Uint32Array]",Ae={};Ae[qs]=Ae[$_]=Ae[q_]=Ae[z_]=Ae[B_]=Ae[V_]=Ae[H_]=Ae[Y_]=Ae[W_]=Ae[X_]=Ae[Z_]=Ae[M_]=Ae[L_]=Ae[Hs]=Ae[F_]=Ae[U_]=Ae[K_]=Ae[j_]=Ae[J_]=Ae[Q_]=Ae[eb]=Ae[tb]=!0,Ae[R_]=Ae[zs]=Ae[G_]=!1;function co(e,n,o,r,i,a){var l,s=n&T_,c=n&P_,d=n&O_;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!tn(e))return e;var f=ft(e);if(f){if(l=Zy(e),!s)return sg(e,l)}else{var u=st(e),p=u==zs||u==D_;if(io(e))return Ry(e,s);if(u==Hs||u==qs||p&&!i){if(l=c||p?{}:C_(e),!s)return c?Ky(e,By(l,e)):Fy(e,$y(l,e))}else{if(!Ae[u])return i?e:{};l=k_(e,u,s)}}a||(a=new $t);var m=a.get(e);if(m)return m;a.set(e,l),I_(e)?e.forEach(function(g){l.add(co(g,n,o,g,e,a))}):S_(e)&&e.forEach(function(g,_){l.set(_,co(g,n,o,_,e,a))});var h=d?c?Vs:Ui:c?$i:Oi,b=f?void 0:h(e);return hg(b||e,function(g,_){b&&(_=g,g=e[_]),Si(l,_,co(g,n,o,_,e,a))}),l}var nb=1,ob=4;function xn(e){return co(e,nb|ob)}var rb="__lodash_hash_undefined__";function ib(e){return this.__data__.set(e,rb),this}function ab(e){return this.__data__.has(e)}function sr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Ot;++n<o;)this.add(e[n])}sr.prototype.add=sr.prototype.push=ib,sr.prototype.has=ab;function lb(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 sb(e,n){return e.has(n)}var cb=1,db=2;function Ys(e,n,o,r,i,a){var l=o&cb,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&db?new sr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var h=e[u],b=n[u];if(r)var g=l?r(b,h,u,n,e,a):r(h,b,u,e,n,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!lb(n,function(_,w){if(!sb(m,w)&&(h===_||i(h,_,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(h===b||i(h,b,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function ub(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function fb(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var pb=1,mb=2,gb="[object Boolean]",hb="[object Date]",yb="[object Error]",_b="[object Map]",bb="[object Number]",wb="[object RegExp]",Eb="[object Set]",kb="[object String]",Cb="[object Symbol]",Nb="[object ArrayBuffer]",vb="[object DataView]",Ws=lt?lt.prototype:void 0,zi=Ws?Ws.valueOf:void 0;function Sb(e,n,o,r,i,a,l){switch(o){case vb:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case Nb:return!(e.byteLength!=n.byteLength||!a(new lr(e),new lr(n)));case gb:case hb:case bb:return vi(+e,+n);case yb:return e.name==n.name&&e.message==n.message;case wb:case kb:return e==n+"";case _b:var s=ub;case Eb:var c=r&pb;if(s||(s=fb),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=mb,l.set(e,n);var f=Ys(s(e),s(n),r,i,a,l);return l.delete(e),f;case Cb:if(zi)return zi.call(e)==zi.call(n)}return!1}var xb=1,Ab=Object.prototype,Ib=Ab.hasOwnProperty;function Tb(e,n,o,r,i,a){var l=o&xb,s=Ui(e),c=s.length,d=Ui(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:Ib.call(n,p)))return!1}var m=a.get(e),h=a.get(n);if(m&&h)return m==n&&h==e;var b=!0;a.set(e,n),a.set(n,e);for(var g=l;++u<c;){p=s[u];var _=e[p],w=n[p];if(r)var y=l?r(w,_,p,n,e,a):r(_,w,p,e,n,a);if(!(y===void 0?_===w||i(_,w,o,r,a):y)){b=!1;break}g||(g=p=="constructor")}if(b&&!g){var N=e.constructor,k=n.constructor;N!=k&&"constructor"in e&&"constructor"in n&&!(typeof N=="function"&&N instanceof N&&typeof k=="function"&&k instanceof k)&&(b=!1)}return a.delete(e),a.delete(n),b}var Pb=1,Xs="[object Arguments]",Zs="[object Array]",cr="[object Object]",Ob=Object.prototype,Js=Ob.hasOwnProperty;function $b(e,n,o,r,i,a){var l=ft(e),s=ft(n),c=l?Zs:st(e),d=s?Zs:st(n);c=c==Xs?cr:c,d=d==Xs?cr:d;var f=c==cr,u=d==cr,p=c==d;if(p&&io(e)){if(!io(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new $t),l||Pi(e)?Ys(e,n,o,r,i,a):Sb(e,n,c,o,r,i,a);if(!(o&Pb)){var m=f&&Js.call(e,"__wrapped__"),h=u&&Js.call(n,"__wrapped__");if(m||h){var b=m?e.value():e,g=h?n.value():n;return a||(a=new $t),i(b,g,o,r,a)}}return p?(a||(a=new $t),Tb(e,n,o,r,i,a)):!1}function Qs(e,n,o,r,i){return e===n?!0:e==null||n==null||!Tt(e)&&!Tt(n)?e!==e&&n!==n:$b(e,n,o,r,Qs,i)}function Bb(e,n){return e!=null&&n in Object(e)}function Vb(e,n,o){n=Sn(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=ar(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&&xi(i)&&Ni(l,i)&&(ft(e)||nr(e)))}function Rb(e,n){return e!=null&&Vb(e,n,Bb)}function Db(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function Mb(e,n){return n.length<2?e:Vi(e,bs(n,0,-1))}var Lb="[object Map]",Fb="[object Set]",Ub=Object.prototype,Kb=Ub.hasOwnProperty;function ec(e){if(e==null)return!0;if(Ai(e)&&(ft(e)||typeof e=="string"||typeof e.splice=="function"||io(e)||Pi(e)||nr(e)))return!e.length;var n=st(e);if(n==Lb||n==Fb)return!e.size;if(tr(e))return!ms(e).length;for(var o in e)if(Kb.call(e,o))return!1;return!0}function Hi(e,n){return Qs(e,n)}function tc(e,n){return n=Sn(n,e),e=Mb(e,n),e==null||delete e[ar(Db(n))]}function jb(e){return Qh(e)?void 0:e}var Gb=1,qb=2,zb=4,nc=ys(function(e,n){var o={};if(e==null)return o;var r=!1;n=Zl(n,function(a){return a=Sn(a,e),r||(r=a.length>1),a}),ro(e,Vs(e),o),r&&(o=co(o,Gb|qb|zb,jb));for(var i=n.length;i--;)tc(o,n[i]);return o});function oc(e,n,o,r){if(!tn(e))return e;n=Sn(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=ar(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:Ni(n[i+1])?[]:{})}Si(s,c,d),s=s[c]}return e}function Hb(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=Vi(e,l);o(s,l)&&oc(a,Sn(l,e),s)}return a}function Yb(e,n){return Hb(e,n,function(o,r){return Rb(e,r)})}var Yi=ys(function(e,n){return e==null?{}:Yb(e,n)});function Wb(e,n,o){return e==null?e:oc(e,n,o)}var Xb=0;function Wi(e){var n=++Xb;return ir(e)+n}function rc(e,n){return e==null?!0:tc(e,n)}const Zb=e=>{const n=Object.keys(e);return n.length===0?!0:n.length===2&&n.includes("ssl_verify")&&n.includes("authentication")?Hi(e,{ssl_verify:!0,authentication:{mode:"none"}}):!1},an=e=>{var o,r;e.confluent&&Zb(e==null?void 0:e.confluent)&&(e.confluent=null);const n=(r=(o=e==null?void 0:e.confluent)==null?void 0:o.authentication)==null?void 0:r.basic;n&&!n.password&&!n.username&&delete e.confluent.authentication.basic},Jb={"config-message_by_lua_functions":{...Pe,inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},Qb={"config-message_by_lua_functions":{...Pe,inputAttributes:{...Pe.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},e0={shamefullyTransformPayload:({payload:e})=>{var n,o,r;an((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{an(i==null?void 0:i.schema_registry)})}},t0={shamefullyTransformPayload:({payload:e})=>{var n,o,r;an((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{an(i==null?void 0:i.schema_registry)})}},n0={shamefullyTransformPayload:({payload:e})=>{var n;an((n=e.config)==null?void 0:n.schema_registry)}},o0={"config-static_tags":{...Zo,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"}]}}}},r0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp":"AIMcpForm"};function ic(e,n){const o=r0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const Xi=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),ac={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR")},lc=Symbol("TOASTER_PROVIDER");function sc(){return t.inject(Xi,[])}function i0(e){t.provide(Xi,e)}const a0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},cc=(e,n)=>(e.order??0)-(n.order??0),dc=(e,n)=>a0(e,n)||cc(e,n)||e.model.localeCompare(n.model),$e={useI18n:ve,usePluginMetaData:fm,usePluginHelpers:Dl,useSchemas:e=>{const{capitalize:n}=de.useStringHelpers(),{convertToDotNotation:o}=Dl(),{i18n:{t:r}}=ve(),i=sc(),a={"application-registration":{overwriteDefault:!0,formSchema:{...ym}},datadog:{..._m},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Im},"statsd-advanced":{...Tm},"route-by-header":{...xm},"ai-prompt-decorator":{...pm},"ai-prompt-template":{...mm},"ai-proxy-advanced":{...gm},"ai-llm-as-judge":{...hm},"vault-auth":{...Om},"oas-validation":{...km},mocking:{...Em},"rate-limiting":{...Jo},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":Jo["config-consumer_groups"]}:{...Jo},"graphql-rate-limiting-advanced":{...bm},"injection-protection":{...wm},"response-ratelimiting":{...Jo},"pre-function":{...zl},"post-function":{...zl},"request-transformer-advanced":{...vm},"response-transformer":{...Hl},"response-transformer-advanced":{...Sm},zipkin:{...o0},"upstream-oauth":{...Pm},saml:{...Am},"kafka-upstream":{...Jb},"key-auth":om(e),"key-auth-enc":cm(e),confluent:{...Qb},"confluent-consume":{...e0},"kafka-consume":{...t0},"kafka-log":{...n0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(E,$,I)=>{let P={};($||E)&&(P=$||(E.fields?E.fields:E));const Y=l().concat(E.blacklist?E.blacklist:[]),K=Object.keys(P).filter(F=>!Y.includes(F)),A=K.indexOf("comparator");A>-1&&K.splice(A,1);let z={fields:[]};const x={};K.forEach(F=>{d(P[F],F,P,x,z,I)});const R=x.name,O=It[R],W=[],G=F=>{const V=["cluster-cache"];for(const D of V)if(F.model.includes(D))return!1;return new RegExp("(?<=-redis-).*").test(F.model)};if(z._supported_redis_partial_type=E._supported_redis_partial_type,z._redis_partial_path=E._redis_partial_path,Ne.getSharedFormName(R)||ic(R,i)||O!=null&&O.useLegacyForm||e!=null&&e.credential){if(O!=null&&O.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&E._supported_redis_partial_type){for(const F of z.fields)if(G(F)){W.push(F);continue}z.fields=z.fields.filter(F=>!G(F)),W.length&&z.fields.push({id:"_redis",fields:W,model:"__redis_partial",pluginType:E._isCustomPlugin?"custom":"bundled",redisType:E._supported_redis_partial_type,redisPath:E._redis_partial_path})}z.fields.sort((F,V)=>(F.order=F.order||0,V.order=V.order||0,F.order-V.order))}else{const F=[],V=[],D=[],Q=[],ie={};if(O!=null&&O.fieldRules){const U=[...O.fieldRules.atLeastOneOf??[],...O.fieldRules.onlyOneOf??[],...O.fieldRules.mutuallyRequired??[]];if(O.fieldRules.onlyOneOfMutuallyRequired)for(const Z of O.fieldRules.onlyOneOfMutuallyRequired)U.push(...Z);for(const Z of U)for(const ee of Z)ie[ee.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const U of z.fields){if(e!=null&&e.enableRedisPartial&&E._supported_redis_partial_type&&G(U)){Q.push(U);continue}if(U.pinned){F.push(U);continue}if(U.required||ie[U.model]!==void 0){ie[U.model]===!1&&(ie[U.model]=!0),V.push(U);continue}D.push(U)}Q.length&&D.push({id:"_redis",fields:Q,model:"__redis_partial",pluginType:E._isCustomPlugin?"custom":"bundled",redisType:E._supported_redis_partial_type,redisPath:E._redis_partial_path,order:-1});const H=Object.entries(ie).filter(([,U])=>!U).map(([U])=>U.replace(/-/g,".").replace(/_/g,"-"));H.length>0&&console.warn(`Unknown checked fields for plugin ${R}: ${H.join(", ")}`);const re=[];F.length>0&&re.push({fields:F.sort(cc)}),(V.length>0||D.length>0)&&re.push({fields:V.sort(dc),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:D.sort(dc),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"}}),z={groups:re}}return{schema:z,model:x,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=E=>Array.isArray(E.default)||E.default!=null&&typeof E.default!="object"&&E.default!=="function",d=(E,$,I,P,Y,K)=>{const A=c(E);return P[$]=A?E.default:null,E.id=$,E.model=$,E.fields&&E.type==="record"?u(E,$,I,P,Y,K):(I[$]=E,N(E,P),K&&K[$]&&f(I[$],K[$]),Y.fields.push(E)),I},f=(E,$)=>($&&(Object.assign(E,$),$.label&&(E.label=$.label)),E),u=(E,$,I,P,Y,K)=>{E.fields.forEach(A=>{Object.keys(A).forEach(z=>{const x=A[z];I=d(x,$+"-"+z,I,P,Y,K)})})},p=(E,$)=>{E.type="input",E.inputType="hidden",E.styleClasses="kong-form-hidden-field-wrapper";const I=e==null?void 0:e.entityId;$[E.model]=I?{id:I}:null},m=E=>{E.type="input",E.inputType="number",E.between&&E.between.length===2&&(E.min=E.between[0],E.max=E.between[1])},h=E=>{Object.prototype.hasOwnProperty.call(E,"one_of")?(E.type="select",E.values=E.one_of,E.selectOptions={hideNoneSelectedText:!0}):(E.type="input",E.inputType="text")},b=E=>{E.type="checkbox",E.default=!0,E.required=!1},g=E=>{if(E.type="object-advanced",E.values.type==="array"){const{type:$}=E.values.elements||{};E.schema={fields:[{schema:{fields:[{...Pe,model:E.model,valueArrayType:$==="integer"?"number":$||"string",inputAttributes:{...Pe.inputAttributes,type:$==="integer"?"number":"text",inputMode:$==="integer"?"numeric":"text"}}]}}]}}else E.values.fields&&(E.schema={fields:[{type:"object",model:"object",schema:{fields:E.values.fields.map($=>{const I=Object.keys($)[0];return{model:I,type:"input",label:n(I),placeholder:I,inputType:$[I].type}})}}]})},_=E=>E.fields.reduce(($,I)=>(I.fields&&I.fields.forEach(P=>{$[P.model]=P}),I.model&&($[I.model]=I),$),{}),w=(E,$)=>{if(!Ne.customFields.includes(E.model))return;const I=_(E);Ne.customFields.forEach(P=>{Object.keys(I).forEach(Y=>{const K=c(I[Y]);$[Y]=K?I[Y].default:null}),delete $[P]})},y=(E,$)=>E.inputType==="hidden"?"":o(n(E.label||$.replace(/_/g," "))),N=(E,$)=>{switch(w(E,$),E.type){case"foreign":p(E,$);break;case"number":m(E),E.attributes={step:"any"};break;case"integer":m(E);break;case"string":h(E);break;case"boolean":b(E);break;case"map":g(E);break}E.inputType==="foreign"&&p(E,$),E.label=y(E,E.model)};function k(E,$){if($==null||$.type&&$.type!=="record"||typeof E!="object"||E==null)return E;const I={};for(const P of $.fields){const Y=Object.keys(P)[0],K=P[Y];K.type==="record"?I[Y]=k(E[Y],K):K.type==="array"&&Array.isArray(E[Y])&&K.elements.type==="record"?I[Y]=E[Y].map(A=>k(A,K.elements)):I[Y]=E[Y]}return I}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:Cn,pruneRecord:k}},useExperimentalFreeForms:sc,useProvideExperimentalFreeForms:i0},ze="/v2/control-planes/{controlPlaneId}/core-entities",We="/{workspace}",Be={list:{konnect:{all:`${ze}/plugins`,forEntity:`${ze}/{entityType}/{entityId}/plugins`},kongManager:{all:`${We}/plugins`,forEntity:`${We}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ze}/v1/available-plugins`,streamingCustomPlugins:`${ze}/custom-plugins`,schemaCustomPluginItem:`${ze}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ze}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${We}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ze}/plugins`,forEntity:`${ze}/{entityType}/{entityId}/plugins`},edit:{all:`${ze}/plugins/{id}`,forEntity:`${ze}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ze}/{resourceEndpoint}`,edit:`${ze}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${ze}/v1/schemas/json/plugin/validate`,entityGetOne:`${ze}/{entity}/{id}`,entityGetAll:`${ze}/{entity}?size=1000`},kongManager:{create:{all:`${We}/plugins`,forEntity:`${We}/{entityType}/{entityId}/plugins`},edit:{all:`${We}/plugins/{id}`,forEntity:`${We}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${We}/schemas/plugins/{plugin}`,credential:{create:`${We}/{resourceEndpoint}`,edit:`${We}/{resourceEndpoint}/{id}`},credentialSchema:`${We}/schemas/{plugin}`,validate:`${We}/schemas/plugins/validate`,entityGetOne:`${We}/{entity}/{id}`,entityGetAll:`${We}/{entity}`}},item:{konnect:{all:`${ze}/plugins/{id}`,forEntity:`${ze}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${We}/plugins/{id}`,forEntity:`${We}/{entityType}/{entityId}/plugins/{id}`}}},l0={key:0},s0=we(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=$e.usePluginHelpers(),{i18n:{t:r}}=$e.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(d=>o(d)).join(".")).join(", "),a=(s,c)=>r(s,{parameters:i(c)}),l=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const d=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(d,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(f,u)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${u}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",l0,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,u)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f,(p,m)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]),{t:An}=Re.createI18n("en-us",je);function Zi(e){return e.map(n=>({value:n,label:n}))}const Ji="*",uc="$",fc=".";function pt(...e){return e.join(fc)}function Qi(...e){return pt(uc,...e)}function pc(e){return e.startsWith(pt(uc,""))}function In(e){return e.split(fc).filter(n=>n!=="")}function dr(e){const n=In(e);return n[n.length-1]}const c0=e=>{var n,o;return e.type==="redis-ce"?An("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.length?An("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?An("redis.shared_configuration.type_label.cluster"):An("redis.shared_configuration.type_label.host_port")},d0={"redis-ce":An("redis.shared_configuration.open_source"),"redis-ee":An("redis.shared_configuration.enterprise")},u0=e=>d0[e]??"";function f0(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 p0(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const mc=Symbol("free-form-data"),gc=Symbol("free-form-schema"),hc=Symbol("free-form-field-path"),ea=Symbol("free-form-field-renderer-slots"),ur=Symbol("free-form-field-renderer-matchers-map"),yc=Symbol("free-form-config"),_c=Symbol("free-form-field-reset-label-path-setting"),Tn="free-form-field-renderers-slot",m0={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function ta(e,n=""){const o={},r=e;if(Array.isArray(r.fields))for(const i of r.fields){const a=Object.keys(i)[0],l=i[a],s=n?pt(n,a):a;if(o[s]=l,l.type==="record"&&Array.isArray(l.fields)){const c=ta(l,s);Object.assign(o,c)}else if(l.type==="array"&&l.elements){const c=l.elements,d=pt(s,Ji);if(o[d]=c,c.type==="record"&&Array.isArray(c.fields)){const f=ta(c,d);Object.assign(o,f)}}}return o}function na(e){const n=In(e).map(o=>/^\d+$/.test(o)?Ji:o);return pt(...n)}function g0(e){const n=t.toValue(e),o=t.computed(()=>n?ta(n):{});function r(f){var u;return f==null?n:(u=o.value)==null?void 0:u[na(f)]}function i(f,u=!1){const p=r(f);return p?p.default!==void 0?p.default:u||p.required?p.type==="record"?a(p,f):p.type==="array"?[]:null:null:null}function a(f,u){const p={};if(Array.isArray(f.fields))for(const m of f.fields){const h=Object.keys(m)[0],b=u?`${u}.${h}`:h,g=i(b,!1);g!==void 0&&(p[h]=g)}return p}function l(f){return f?i(f,!0):a(r(),"")}function s(f){const u=r(f),p=u!=null&&u.description?Ho.marked.parse(u.description,{async:!1}):void 0;return{...m0,"data-testid":`ff-label-${f}`,info:p}}function c(f){var p;const u=r(f);return Zi((u==null?void 0:u.one_of)||((p=u.elements)==null?void 0:p.one_of)||[])}function d(f){var m;const u=(m=r(f))==null?void 0:m.default;let p=null;if(u==null||typeof u=="object"||u==="")return null;if(Array.isArray(u)){if(u.length===0)return null;p=u.join(", ")}else p=u.toString();return`Default: ${p}`}return{getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function Ve(){const e=t.inject(mc),n=t.inject(gc),o=t.inject(yc,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!n)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...n}}const bc=e=>{const n=t.inject(hc,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!pc(r)&&n.value&&(i=pt(n.value,r)),pc(r)&&(i=i.slice(Qi("").length)),i});return t.provide(hc,o),o},h0=e=>{const{getSchema:n}=Ve(),{default:o,...r}=t.useSlots(),i=t.inject(ea),a=t.inject(ur),l=t.computed(()=>{const c=t.toValue(i),d=Object.keys(r).filter(f=>f!==Tn&&f!=="item").reduce((f,u)=>{const p=na(pt(t.toValue(e),u));return{...f,[p]:r[u]}},{});return c?{...c,...d}:d});t.provide(ea,l);const s=t.toValue(e);return t.computed(()=>{if(o)return;const c=l.value[na(t.toValue(e))];if(c)return c;for(const[d,f]of a)if(d({path:s,schema:n(s)}))return f})},y0={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function _0(e){return y0[e.toLocaleLowerCase()]??e}function b0(e,n){const o=t.inject(_c,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?pt(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:d,isolate:f}=c,u=d?pt(d,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=u,l.value.isolate=!1,l.value.parentPath=u}};(p=m[s])==null||p.call(m)}else f&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),t.provide(_c,l),a}function w0(e){return In(e).map(o=>o.split("_").map(Sy).map(_0).join(" ")).join(" › ")}function E0(e,n){const o=t.toValue(e),r=dr(o),{formConfig:i}=Ve(),a=b0(r,n),{getSchema:l}=Ve(),s=wc(e);return t.computed(()=>{var p;const c=a.value??r,d=(p=s.value.parent)!=null&&p.path?l(s.value.parent.path):null,u=(d==null?void 0:d.type)==="array"?"":w0(c);return i.transformLabel?i.transformLabel(u,o):u})}function wt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ve(),a=t.toValue(e),l=t.toValue(n),s=E0(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 k0(e){var r;const n=In(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?pt(o.parent.path,i):i,o={parent:o}}return o}function wc(e){return t.computed(()=>k0(t.toValue(e)))}function Ec(e){const{formData:n}=Ve(),o=bc(e);return{value:t.computed({get:()=>gs(n,In(o.value)),set:i=>Wb(n,In(o.value),i)})}}function ct(e){const{getSchema:n}=Ve(),o=bc(e),r=h0(o),{value:i}=Ec(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:wc(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function fr(e){const{getSchema:n}=Ve(),o=t.useAttrs();return t.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=t.toValue(e).parent;return r!=null&&r.path?((i=n(r.path))==null?void 0:i.type)==="array":!1})}function kc(e,n){const o=t.reactive(new Map);function r(){return Wi(`${e}-`)}function i(a,l){return a!=null&&typeof a=="object"?o.get(a):`${e}-${l}`}return t.watch(n,a=>{const l=t.toValue(a);l.forEach(c=>{o.has(c)||o.set(c,r())});const s=new Set(l);[...o.keys()].forEach(c=>{s.has(c)||o.delete(c)})},{immediate:!0,deep:!0}),{getKey:i}}const C0="__request_callout_";function Cc(){return Wi(C0)}const Pn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=n,i=t.computed(()=>o.multiline?Te.KTextArea:Te.KInput),a=t.ref(o.modelValue);t.watch(()=>o.modelValue,d=>{a.value=d});const{formConfig:l}=Ve(),s=d=>{a.value=d,l.updateOnChange||r("update:modelValue",d)},c=()=>{l.updateOnChange&&r("update:modelValue",a.value)};return(d,f)=>(t.openBlock(),t.createBlock(t.unref(i),t.mergeProps(d.$attrs,{"model-value":d.modelValue,resizable:d.multiline?!0:void 0,onChange:c,"onUpdate:modelValue":s}),t.createSlots({_:2},[t.renderList(t.useSlots(),(u,p)=>({name:p,fn:t.withCtx(m=>[t.renderSlot(d.$slots,p,t.normalizeProps(t.guardReactiveProps(m)))])}))]),1040,["model-value","resizable"]))}}),N0=["innerHTML"],On=we(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=ve(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=ct(t.toRef(()=>e.name)),c=wt(s.path,t.toRef({...i,...o})),d=l==null?void 0:l.value;function f(_){d!==void 0&&_===""&&_!==d?(l.value=null,a("update:modelValue",null)):(l.value=_.trim(),a("update:modelValue",_.trim()))}const u=t.computed(()=>{var _;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((_=s.schema)==null?void 0:_.value).encrypted}),p=t.inject(Ne.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var _;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((_=s.schema.value)!=null&&_.referenceable)}),h=t.computed(()=>({referenceable:m.value})),b=fr(s.ancestors),g=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:dr(e.name)==="name");return(_,w)=>{var N;const y=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(y,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},_.$attrs)),[t.createVNode(Pn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:u.value,type:u.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":g.value,"data-autofocus":t.unref(b),"data-testid":`ff-${s.path.value}`,error:_.error,"error-message":_.errorMessage,help:_.help,"model-value":t.unref(l)??"",multiline:_.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(N=t.unref(c).labelAttributes)!=null&&N.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,N0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(p)&&m.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(p)),{key:0,schema:h.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(y,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-fb5b80e5"]]),v0=["innerHTML"],oa=we(t.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=ct(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=wt(i.path,o);return(c,d)=>{var u;const f=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(Te.KCheckbox),t.mergeProps({key:1},t.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":t.unref(r)??!1,"onUpdate:modelValue":l}),t.createSlots({_:2},[(u=t.unref(s).labelAttributes)!=null&&u.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,v0)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),Nc=we(t.defineComponent({__name:"SlideTransition",setup(e){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),r=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(h=>[h,m.getPropertyValue(h)]))}function a(p){["overflow","transition",...n].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const h=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...h,transition:""})})}function c(p){a(p)}function d(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function u(p){a(p)}return(p,m)=>(t.openBlock(),t.createBlock(t.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:u,onBeforeEnter:l,onBeforeLeave:d,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),S0=["data-testid"],x0=["data-testid"],A0=["data-testid"],I0=["innerHTML"],T0={class:"ff-object-field-actions"},P0=["data-testid"],dt=we(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(e){const n=t.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=ct(t.toRef(n,"name")),{getSchema:i,getDefault:a}=Ve(),l=t.useModel(e,"added"),s=t.useModel(e,"expanded"),c=t.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),d=t.computed(()=>{var g,_;if((g=r.ancestors)!=null&&g.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((_=i(w.path))==null?void 0:_.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=wt(r.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:f.value}))),p=t.computed(()=>u.value.required?!0:l.value??e.defaultAdded),m=t.computed(()=>e.asChild!==void 0?e.asChild:d.value),h=t.computed(()=>{let g=r.schema.value.fields;return e.omit&&(g=g.filter(_=>!e.omit.includes(Object.keys(_)[0]))),e.fieldsOrder?g.sort((_,w)=>{const y=Object.keys(_)[0],N=Object.keys(w)[0],k=e.fieldsOrder.indexOf(y),E=e.fieldsOrder.indexOf(N);return k===-1&&E===-1?0:k===-1?1:E===-1?-1:k-E}):g});function b(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,g=>{e.collapsible&&(s.value=g)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(g,_)=>{var y;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(g.$slots[t.unref(Tn)]))),r.error?(t.openBlock(),t.createBlock(w,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},g.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,N=>(t.openBlock(),t.createBlock(Je,{key:Object.keys(N)[0],name:Object.keys(N)[0]},null,8,["name"]))),128))],!0)],16,S0)):(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},g.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Te.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(u),required:!1},{"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(y=t.unref(u).labelAttributes)!=null&&y.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,I0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",T0,[g.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:0,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${c.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${r.path.value}`,icon:"",onClick:_[0]||(_[0]=N=>s.value=!c.value)},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(u).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:b},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(Ee.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(Ee.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,A0),t.createVNode(Nc,null,{default:t.withCtx(()=>[c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,N=>(t.openBlock(),t.createBlock(Je,{key:Object.keys(N)[0],name:Object.keys(N)[0]},null,8,["name"]))),128))],!0)],8,P0)):t.createCommentVNode("",!0)]),_:3})],16,x0))],64)}}}),[["__scopeId","data-v-6f044592"]]),O0=["innerHTML"],$n=we(t.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=ct(t.toRef(()=>e.name)),a=wt(i.path,o),l=t.computed(()=>{var b;const p=(b=i.schema)==null?void 0:b.value;if(typeof p.gt=="number")return{min:p.gt};const[m,h]=p.between??[];return{min:o.min??m,max:o.max??h}}),s=n,c=r.value,d=t.computed(()=>(r==null?void 0:r.value)!=null&&Number.isFinite(r.value)?`${r.value}`:"");function f(p){c!==void 0&&p===""&&Number(p)!==c?(r.value=null,s("update:modelValue",null)):(r.value=p===""?null:Number(p),s("update:modelValue",p===""?null:Number(p)))}const u=fr(i.ancestors);return(p,m)=>{var b;const h=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(Pn,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(u),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(b=t.unref(a).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,O0)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),$0=["innerHTML"],Et=we(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},multiple:{type:Boolean,default:()=>{}},items:{},placeholder:{}},setup(e){const n=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:o}=Ve(),{value:r,...i}=ct(t.toRef(()=>e.name)),a=wt(i.path,n),l=t.computed(()=>e.items?e.items:i.path?o(i.path.value):[]),s=t.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=i.schema.value)==null?void 0:d.type)==="set"}),c=t.computed(()=>s.value?Te.KMultiselect:Te.KSelect);return(d,f)=>{var p;const u=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(c),t.mergeProps({key:1},t.unref(a),{modelValue:t.unref(r),"onUpdate:modelValue":f[0]||(f[0]=m=>t.isRef(r)?r.value=m:null),class:"ff-enum-field",clearable:!t.unref(a).required,"data-testid":`ff-${i.path.value}`,items:l.value,"kpop-attributes":{"data-testid":`${i.path.value}-items`}}),t.createSlots({_:2},[(p=t.unref(a).labelAttributes)!=null&&p.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(d.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,$0)],!0)]),key:"0"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-8b105573"]]);function ra(e,n,o=!0){const{value:r,...i}=ct(t.toRef(e,"name")),a=wt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(d(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Wi("ff-kv-field-")}function c(g,_,w){const y=w.indexOf(g),N=w.indexOf(_);return y===-1&&N===-1?0:y===-1?1:N===-1?-1:y-N}function d(g,_){const w=Object.entries(g).map(([y,N])=>({id:s(),key:y,value:N}));return _&&w.sort((y,N)=>c(y.key,N.key,_)),w}function f(){const g={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(g),g}function u(g){const _=l.value.findIndex(w=>w.id===g);_!==-1&&l.value.splice(_,1)}function p(){l.value=d(e.initialValue||{},e.keyOrder)}function m(g){l.value=d(g,e.keyOrder)}let h=null;t.watch(l,g=>{if(!o)return;const _=g.length?Object.fromEntries(g.map(({key:w,value:y})=>[w,y]).filter(([w])=>w)):null;r.value=_,h=_,n("change",_)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,g=>{Hi(g,h)||b(g)},{deep:!0});function b(g){if(!g){l.value=[];return}const _=new Map;l.value.forEach(k=>{k.key&&_.set(k.key,k)});const w=[],y=Object.keys(g);(e.keyOrder?[...y].sort((k,E)=>c(k,E,e.keyOrder)):y).forEach(k=>{const E=g[k];if(_.has(k)){const $=_.get(k);$.value=E,w.push($)}else w.push({id:s(),key:k,value:E})}),l.value=w}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const B0=["data-testid"],V0=["data-testid"],R0=["innerHTML"],D0=["data-testid"],M0=we(t.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=ve(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=ra(r,a),m=t.useTemplateRef("root");async function h(k,E="key"){var $;m.value&&(await t.nextTick(),($=m.value.querySelector(`[data-${E}-input="${k}"]`))==null||$.focus())}function b(){s();const k=l.value.findIndex(({key:E})=>!E);h(k===-1?l.value.length-1:k)}function g(k){k===l.value.length-1&&s(),h(k+1)}const _=t.inject(Ne.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var k,E;return e.showVaultSecretPicker??!!((E=(k=p.schema.value)==null?void 0:k.values)!=null&&E.referenceable)}),y=t.computed(()=>({referenceable:w.value}));function N(k,E){l.value[k].value=E}return n({reset:d,setValue:f}),(k,E)=>{var Y;const $=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),P=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock($,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${t.unref(p).path.value}`},[t.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${t.unref(p).path.value}`},[t.createVNode(I,t.mergeProps({class:"ff-kv-field-label"},t.unref(u),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(Y=t.unref(u).labelAttributes)!=null&&Y.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(k.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,R0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(P,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:1},8,["data-testid"])],8,V0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(K,A)=>(t.openBlock(),t.createElementBlock("div",{key:K.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${A}`},[t.createVNode(Pn,{modelValue:K.key,"onUpdate:modelValue":z=>K.key=z,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":A,"data-testid":`ff-key-${t.unref(p).path.value}.${A}`,placeholder:k.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(z=>h(A,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Pn,{modelValue:K.value,"onUpdate:modelValue":z=>K.value=z,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${A}`,"data-value-input":A,placeholder:k.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(z=>g(A),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(_)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(_)),{key:0,schema:y.value,update:z=>N(A,z),value:K.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(_)?(t.openBlock(),t.createBlock($,{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(P,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${A}`,icon:"",onClick:z=>t.unref(c)(K.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,D0))),128))],8,B0))}}}),[["__scopeId","data-v-92e0893d"]]),L0=["data-testid"],F0=["innerHTML"],vc=we(t.defineComponent({inheritAttrs:!1,__name:"TagField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ct(t.toRef(()=>e.name)),s=wt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var b,g;return((g=(b=l.schema)==null?void 0:b.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),d=t.ref("");function f(b){return b.map(g=>g.trim()).filter(Boolean).join(", ")}function u(b){return b.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(b){d.value=b;const g=u(b),_=!g.length&&c.value?null:g;a.value=_,i("update:modelValue",_)}const m=fr(l.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:dr(e.name)==="name");return t.watch(a,b=>{const g=b?f(b):"";f(u(d.value))!==g&&(d.value=g)},{immediate:!0}),(b,g)=>{var w;const _=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[t.createVNode(Pn,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(w=t.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,F0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,L0))}}}),[["__scopeId","data-v-82df1597"]]),U0=["data-testid"],K0=["innerHTML"],j0=we(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{name:{},labelAttributes:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ct(t.toRef(()=>e.name)),s=wt(l.path,t.toRef({...r,...o})),c=t.ref("");function d(p){c.value=p;let m=p||null;try{const h=JSON.parse(p);h&&typeof h=="object"&&(m=h)}catch{}a.value=m,i("update:modelValue",m)}const f=fr(l.ancestors),u=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:dr(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);Hi(m,p)||(c.value=JSON.stringify(p,null,2))}catch{c.value=JSON.stringify(p,null,2)}return}c.value=p||""},{immediate:!0}),(p,m)=>{var b;const h=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${l.path.value}`},[t.createVNode(Pn,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":u.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":d}),t.createSlots({_:2},[(b=t.unref(s).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,K0)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,U0))}}}),[["__scopeId","data-v-5749f722"]]),Je=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=ct(t.toRef(n,"name")),r=t.computed(()=>{var i,a;switch((a=(i=o.schema)==null?void 0:i.value)==null?void 0:a.type){case"string":return"one_of"in o.schema.value?Et:On;case"boolean":return"one_of"in o.schema.value?Et:oa;case"number":case"integer":return"one_of"in o.schema.value?Et:$n;case"array":return pr;case"set":return p0(o.schema)?vc:Et;case"record":return dt;case"map":return M0;case"json":return j0;default:return}});return(i,a)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.$slots[t.unref(Tn)]))),t.unref(o).error?(t.openBlock(),t.createBlock(l,{key:0,appearance:"danger",message:t.unref(o).error.message},null,8,["message"])):t.unref(o).renderer.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(o).renderer.value),{key:1,name:Qi(t.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,name:Qi(t.unref(o).path.value)},null,8,["name"])):(t.openBlock(),t.createBlock(l,{key:1,appearance:"warning",message:`${t.unref(o).path.value} ${t.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),t.renderSlot(i.$slots,"default")],64))],64)}}}),G0=["data-testid"],q0=["data-testid"],z0=["innerHTML"],H0=["data-testid"],Y0={class:"ff-array-field-item-content"},W0=["data-index","data-testid"],pr=we(t.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:n}){var N;t.useCssVars(k=>({"6954cf1c":y.value}));const o=e,r=n,{i18n:{t:i}}=ve(),{getDefault:a}=Ve(),{value:l,...s}=ct(t.toRef(o,"name")),c=wt(s.path,t.toRef({...o,...t.useAttrs()})),d=t.computed(()=>o.items??t.toValue(l)??[]),{getKey:f}=kc("ff-array-field",d),u=t.computed(()=>o.appearance==="card"?Te.KCard:"div");function p(k,E){return typeof o.itemLabel=="function"?o.itemLabel(k,E):o.itemLabel||c.value.label||`Item #${E}`}const m=t.computed(()=>d.value.map((k,E)=>({hash:`#${f(k,E)}`,title:""}))),h=t.ref((N=m.value[0])==null?void 0:N.hash),b=async()=>{var E;const k=a(pt(s.path.value,Ji));Array.isArray(l.value)||(l.value=[]),l.value.push(k),r("add"),o.appearance==="tabs"&&(await t.nextTick(),h.value=(E=m.value[m.value.length-1])==null?void 0:E.hash),await t.nextTick(),w(d.value.length+1)},g=async k=>{var E;Array.isArray(l.value)&&l.value.splice(k,1),r("remove",k),o.appearance==="tabs"&&(h.value=(E=m.value[Math.max(0,k-1)])==null?void 0:E.hash)},_=t.useTemplateRef("root");function w(k){var $;if(!_.value)return;const E=Math.max(0,Math.min(k,d.value.length-1));($=_.value.querySelector(`[data-index="${E}"] [data-autofocus]`))==null||$.focus()}const y=t.computed(()=>{const{appearance:k,stickyTabs:E}=o;return k!=="tabs"||E==null||E===!1?null:typeof E=="number"?`${o.stickyTabs}px`:typeof E=="string"?E:"0"});return(k,E)=>{var K;const $=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),P=t.resolveComponent("KButton"),Y=t.resolveComponent("KTabs");return s.error?(t.openBlock(),t.createBlock($,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:_,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${k.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":k.stickyTabs}]),"data-testid":`ff-array-${s.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${s.path.value}`},[t.createVNode(I,t.mergeProps({class:"ff-array-field-label"},t.unref(c),{"data-testid":`ff-label-${s.path.value}`,"tooltip-attributes":t.unref(c).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c).label)+" ",1)]),_:2},[(K=t.unref(c).labelAttributes)!=null&&K.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(k.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,z0)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(P,{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-${s.path.value}`,icon:"",onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,q0),d.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[k.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${s.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(A,z)=>(t.openBlock(),t.createBlock(t.unref(u),{key:t.unref(f)(A,z),class:"ff-array-field-item","data-index":z,"data-testid":`ff-array-item-${s.path.value}.${z}`},{default:t.withCtx(()=>[t.createElementVNode("div",Y0,[k.$slots.item?t.renderSlot(k.$slots,"item",{key:0,fieldName:String(z),index:z},void 0,!0):(t.openBlock(),t.createBlock(Je,{key:1,name:String(z)},null,8,["name"]))]),t.createVNode(P,{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-${s.path.value}.${z}`,icon:"",onClick:x=>g(z)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,H0)):(t.openBlock(),t.createBlock(t.unref(Te.KCard),{key:1,"data-testid":`ff-array-tab-container-${s.path.value}`},{default:t.withCtx(()=>[t.createVNode(Y,{modelValue:h.value,"onUpdate:modelValue":E[0]||(E[0]=A=>h.value=A),"data-testid":`ff-array-tabs-${s.path.value}`,tabs:m.value},t.createSlots({_:2},[t.renderList(d.value,(A,z)=>({name:t.unref(f)(A,z),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":z,"data-testid":`ff-array-item-${s.path.value}.${z}`},[k.$slots.item?t.renderSlot(k.$slots,"item",{key:0,fieldName:String(z),index:z},void 0,!0):(t.openBlock(),t.createBlock(Je,{key:1,name:String(z)},null,8,["name"]))],8,W0)])})),t.renderList(d.value,(A,z)=>({name:`${t.unref(f)(A,z)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(p(A,z))+" ",1),t.createVNode(P,{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-${s.path.value}.${z}`,icon:"",onClick:t.withModifiers(x=>g(z),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,G0))}}}),[["__scopeId","data-v-463d07bb"]]),uo=Symbol(),X0=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Ve(),r=t.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[n.index])==null?void 0:c.name)})}),i=t.computed(()=>r.value.map(({[uo]:l,name:s})=>({value:l,label:s}))),a=t.computed(()=>o.config.callouts[n.index]);return t.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(t.openBlock(),t.createBlock(dt,{name:l.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(Et,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(dt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(Et,t.mergeProps(d,{items:t.unref(Zi)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),Z0=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Ve();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[uo]=Cc())}return(r,i)=>(t.openBlock(),t.createBlock(pr,{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(X0,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),Sc=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),r=t.inject(ur);if(!r)throw new Error(ur.toString()+"not provided");return o&&r.set(n.match,o),(i,a)=>null}}),mt=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),a=g0(e.schema);t.provide(gc,a);const l=m=>{var h;return Qo((h=e.config)==null?void 0:h.hasValue)?e.config.hasValue(m):!!m},s=t.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((h,b)=>{const g=Object.keys(h)[0],_=Object.keys(b)[0],w=e.fieldsOrder.indexOf(g),y=e.fieldsOrder.indexOf(_);return w===-1&&y===-1?0:w===-1?1:y===-1?-1:w-y}):m});let c=!1;const d=t.reactive({});t.provide(mc,d),t.provide(ea,nc(i,"default",Tn));const f=new Map;t.provide(ur,f),t.provide(yc,e.config??{}),t.watch(d,m=>{c&&r("change",t.toValue(m))},{deep:!0,immediate:!0});function u(m){Object.keys(d).forEach(h=>{delete d[h]}),Object.assign(d,m)}function p(m){var b;let h;!m||!l(t.toValue(m))?h=a.getDefault():h=xn(t.toValue(m)),Qo((b=e.config)==null?void 0:b.prepareFormData)?u(e.config.prepareFormData(h)):u(h),c=!0}return t.onBeforeMount(()=>{p(e.data)}),t.watch(()=>e.data,m=>{p(m)},{deep:!0}),n({getInnerData:()=>t.toRaw(d)}),(m,h)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Tn)]))),t.renderSlot(m.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,b=>(t.openBlock(),t.createBlock(Je,{key:Object.keys(b)[0],name:Object.keys(b)[0],onGlobalAction:h[0]||(h[0]=(g,_)=>r("globalAction",g,_))},null,8,["name"]))),128))])]),_:3}))}}),J0={class:"ff-advanced-fields"},ia=we(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=Re.createI18n("en-us",je),{getSchema:o}=Ve(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Te.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"trigger-label":r.value?t.unref(n)("plugins.form.grouping.advanced_parameters.view"):t.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:t.withCtx(()=>[t.createElementVNode("div",J0,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(Je,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(Je,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(vc,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:t.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):t.createCommentVNode("",!0),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-190b1d21"]]),Q0=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=ve();function a(d,f=!1){return d.reduce((u,{[uo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=xn(d);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:u}=f.config;u.forEach(h=>{h.request.body.custom=h.request.body.custom??{},h[uo]=Cc()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(b=>p[b])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=xn(d);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const u=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[uo]:h,depends_on:b,...g}=m;return{depends_on:b.map(_=>u[_]).filter(_=>_!=null),...g}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(mt,{class:"rc-config-form",config:r,data:d.data,schema:d.schema,tag:"div",onChange:c},{[t.unref(Tn)]:t.withCtx(()=>[t.createVNode(Sc,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(On,t.mergeProps(u,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(Sc,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(pr,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Z0),t.createVNode(dt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(dt,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(dt,t.mergeProps(u,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),t.createVNode(ia)]),_:2},1032,["data","schema"]))}}),ew={class:"sc-form-pinned-fields"},tw={class:"sc-form-config-form"},aa=we(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Re.createI18n("en-us",je),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(u=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===u)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=t.computed(()=>{const f=o.schema;f.fields=f.fields.filter(p=>l.includes(Object.keys(p)[0])),f.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const u=f.fields.find(p=>Object.keys(p)[0]==="protocols");return u&&(u.protocols.help=u.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),u.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1);function d(f){return Yi(f,["config","instance_name","partials","protocols","tags"])}return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",ew,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:t.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Te.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"sc-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",tw,[t.renderSlot(f.$slots,"default",{data:d(f.model),schema:s.value,onChange:u[0]||(u[0]=(...p)=>f.onFormChange&&f.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-175fd883"]]),nw=t.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(aa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Q0,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),ow={key:1},rw=["innerHTML"],iw={class:"horizontal-container"},aw=we(t.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Ve(),a=ct(t.toRef(()=>e.name)),l=wt(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=d=>{a.value&&(a.value.value=d),o("update:modelValue",d)};return(d,f)=>{var m;const u=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(u,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",ow,[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,rw)]),key:"0"}:void 0]),1040),t.createElementVNode("div",iw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(t.unref(Te.KRadio),{key:h.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=b=>t.unref(a).value.value=b),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),lw={class:"sp-form-request-limits-subtitle"},sw={class:"sp-form-request-limits-content"},cw={class:"sp-form-window-type"},dw={class:"sp-form-request-limits-items"},uw={class:"sp-form-request-limits-row"},fw=["id"],pw={class:"sp-form-request-limits-actions"},mw={key:0,class:"sp-form-request-limits-examples"},gw={class:"sp-form-request-limits-examples-badges"},la="config.window_type",hw=we(t.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t:n}=Re.createI18n("en-us",je),{formData:o,getSelectItems:r,getSchema:i}=Ve(),a=t.computed(()=>{var w,y;const _=(y=(w=o.config)==null?void 0:w.limit)==null?void 0:y.map((N,k)=>{var E,$;return{limit:N,windowSize:($=(E=o.config)==null?void 0:E.window_size)==null?void 0:$[k]}});return!Array.isArray(_)||_.length===0?[{limit:null,windowSize:null}]:_}),{getKey:l}=kc("request-limits",a),s=_=>{var w,y;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(y=o.config.window_size)!=null&&y.length||(o.config.window_size=[null]),o.config.limit.splice(_+1,0,null),o.config.window_size.splice(_+1,0,null))},c=_=>{o.config&&(o.config.limit.splice(_,1),o.config.window_size.splice(_,1))},d=(g=i(la))==null?void 0:g.default,f=t.computed(()=>gs(o,la)),u=t.computed(()=>r(la).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]:[]),b=(_,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 y=t.resolveComponent("KLabel"),N=t.resolveComponent("KButton"),k=t.resolveComponent("KBadge"),E=t.resolveComponent("KTooltip"),$=t.resolveComponent("KCard");return t.openBlock(),t.createBlock($,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(y,{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",lw,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",sw,[t.createElementVNode("div",cw,[t.createVNode(aw,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=I=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",dw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(I,P)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(I,P)},[t.createVNode(y,{for:`sp-form-request-limits-item-${P}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:P+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",uw,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${P}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode($n,{name:`$.config.limit.${P}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode($n,{name:`$.config.window_size.${P}`,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,fw),t.createElementVNode("div",pw,[t.createVNode(N,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(P)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(N,{appearance:"tertiary",onClick:()=>s(P)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),h.value.length>0?(t.openBlock(),t.createElementBlock("div",mw,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",gw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(I,P)=>(t.openBlock(),t.createBlock(E,{key:`use-case-${P}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(I.description),1),w[1]||(w[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(I.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(I.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(k,{appearance:p.value===`${f.value}-${P}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>b(I,`${f.value}-${P}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(I.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),yw={id:"sp-form-error-legend",class:"sp-form-error-inputs"},_w=we(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Re.createI18n("en-us",je);return(o,r)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",yw,[t.createVNode($n,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(On,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),bw={class:"partial-config-card"},ww={class:"config-card-row-label"},Ew={class:"label-text"},kw=["data-testid"],Cw=["data-testid"],Nw={key:1},vw=["data-testid"],Sw=["data-testid"],xw=we(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Re.createI18n("en-us",je),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=u=>u!=null,l=(u,p)=>a(p)&&["password","sentinel_password"].includes(u)?"password":"text",{convertKeyToTitle:s}=de.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,b,g;return{key:u,label:((m=r[u])==null?void 0:m.label)??s(u),value:(h=r[u])!=null&&h.formatter?r[u].formatter(p):p,type:((b=r[u])==null?void 0:b.type)??l(u,p),order:((g=r[u])==null?void 0:g.order)??100}}).sort((u,p)=>u.order-p.order).filter(u=>u.type!=="hidden")),d=f0(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",bw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:h,label:b,value:g,type:_})=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"partial-config-card-row"},[t.createElementVNode("div",ww,[t.createElementVNode("div",Ew,t.toDisplayString(b),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(g)?(t.openBlock(),t.createElementBlock("div",Nw,[_==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(g)},null,8,["text"])],8,vw)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},t.toDisplayString(g),9,Sw))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,Cw))],8,kw)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Aw=we(t.defineComponent({__name:"NewRedisPartialModal",props:{visible:{type:Boolean,default:!1},partialType:{type:String,default:""}},emits:["partialUpdated","partialUpdateFailed","modalClose"],setup(e,{emit:n}){const o=e,{t:r}=Re.createI18n("en-us",je),i=t.inject(Ne.FORMS_CONFIG),a=n,{getMessageFromError:l}=de.useErrors(),s=t.computed(()=>{switch(o.partialType){case eo.PartialType.REDIS_CE:return eo.PartialType.REDIS_EE;case eo.PartialType.REDIS_EE:return eo.PartialType.REDIS_CE;default:return}}),c=t.ref(!1),d=t.ref(),f=m=>{a("partialUpdateFailed",{message:l(m),appearance:"danger"})},u=()=>{a("partialUpdated",{message:r("plugins.free-form.redis_partial.partial_created_success_message"),appearance:"success"}),p()},p=()=>{d.value=void 0,a("modalClose"),t.nextTick(()=>{c.value=!1})};return t.watch(()=>o.visible,m=>{m&&(c.value=!0,t.nextTick(()=>{d.value="#km-modal-footer"}))}),(m,h)=>{const b=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(b,{class:"plugin-redis-partial-form","data-testid":"redis-partial-form-modal","full-screen":"",title:t.unref(r)("plugins.free-form.redis_partial.redis_partial_modal_title"),visible:c.value,onCancel:p},{footer:t.withCtx(()=>h[0]||(h[0]=[t.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:t.withCtx(()=>[t.createVNode(t.unref(eo.RedisConfigurationForm),{"action-teleport-target":d.value,config:t.unref(i),"disabled-partial-type":s.value,"slidout-top-offset":0,onCancel:p,onError:f,onUpdate:u},null,8,["action-teleport-target","config","disabled-partial-type"])]),_:1},8,["title","visible"])}}}),[["__scopeId","data-v-ac12474e"]]),Iw="#52596e",Tw="#e0e4ea",Pw="#007d60",xc="#d60027",Ow="#00abd2",Ac="#afb7c5",fo="12px",$w="16px",sa="20px",Bw="24px",Vw="8px",Ic=Symbol("redis-partial-info"),Tc={konnect:{getOne:"/v2/control-planes/{controlPlaneId}/core-entities/partials/{id}",getAll:"/v2/control-planes/{controlPlaneId}/core-entities/partials"},kongManager:{getOne:"/{workspace}/partials/{id}",getAll:"/{workspace}/partials"}},Pc=["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"],Rw={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},Dw={key:0,class:"shared-redis-config"},Mw={class:"shared-redis-config-title"},Lw={class:"redis-config-select","data-testid":"redis-config-select"},Fw={class:"selected-redis-config"},Uw=["data-testid"],Kw={class:"select-item-name","data-testid":"selected-redis-config"},jw={class:"empty-redis-config","data-testid":"empty-redis-config"},Gw={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},qw="1000",zw=we(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var W;const o=n,{t:r}=Re.createI18n("en-us",je),i=e,a=t.inject(Ic),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var G;return i.redisPath?i.redisPath:(G=a==null?void 0:a.redisPath)!=null&&G.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((W=a==null?void 0:a.redisType)==null?void 0:W.value)||"all",d=t.computed(()=>{var G;return!!((G=a==null?void 0:a.redisType)!=null&&G.value)}),f=t.ref(!1),u=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=de.useErrors(),h=t.ref(i.defaultRedisConfigItem),b=t.ref({}),g=t.ref(),{value:_}=Ec("$.partials"),{value:w}=ct(s),y=t.inject(Ne.FORMS_CONFIG),{debouncedQueryChange:N,loading:k,error:E,loadItems:$,results:I}=de.useDebouncedFilter(y,Tc[y.app].getAll,qw,{fetchedItemsKey:"data",searchKeys:["id","name"]}),P=t.computed(()=>E.value?m(E.value):""),Y=G=>{let F=`${y.apiBaseUrl}${Tc[y.app].getOne}`;return y.app==="konnect"?F=F.replace(/{controlPlaneId}/gi,(y==null?void 0:y.controlPlaneId)||""):y.app==="kongManager"&&(F=F.replace(/\/{workspace}/gi,y!=null&&y.workspace?`/${y.workspace}`:"")),F=F.replace(/{id}/gi,String(G)),F},K=t.computed(()=>{const G=(I.value||[]).map(F=>({label:F.id,name:F.name,value:F.id,type:F.type,tag:c0(F)})).filter(F=>F.type==="redis-ce"||F.type==="redis-ee");return c!=="all"?G.filter(F=>F.type===c):G}),{axiosInstance:A}=de.useAxios(y==null?void 0:y.axiosRequestConfig),z=()=>{p.value?(g.value&&(_.value=g.value,h.value=g.value[0].id,w.value=void 0),w!=null&&w.value&&(b.value=w.value)):(Object.keys(b.value).length&&(w.value=b.value),_!=null&&_.value&&(g.value=_.value),_.value=l?null:void 0)},x=G=>{$(),o("globalAction","notify",G)},R=G=>{o("globalAction","notify",G)},O=async G=>{if(G){h.value=G,_.value=[{id:G}],g.value=[{id:G}],w.value=void 0;try{const F=await A.get(Y(G));if(F.data.config){const V=Object.assign(F.data,F.data.config);delete V.config,u.value=V}}catch(F){console.error(F)}}};return t.watch(()=>p.value,()=>{z()}),t.onBeforeMount(()=>{var G;if($(),i.defaultRedisConfigItem||_!=null&&_.value){const F=i.defaultRedisConfigItem||((G=_==null?void 0:_.value)==null?void 0:G[0].id);O(F),p.value=!0}else w!=null&&w.value&&(b.value=w.value)}),(G,F)=>{const V=t.resolveComponent("KBadge"),D=t.resolveComponent("KRadio"),Q=t.resolveComponent("KSelect"),ie=t.resolveComponent("KCard");return d.value?(t.openBlock(),t.createBlock(ie,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",Rw,[t.createVNode(D,{modelValue:p.value,"onUpdate:modelValue":F[0]||(F[0]=H=>p.value=H),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(r)("redis.shared_configuration.description"),label:t.unref(r)("redis.shared_configuration.label"),"selected-value":!0},{default:t.withCtx(()=>[t.createVNode(V,{appearance:"success"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),t.createVNode(D,{modelValue:p.value,"onUpdate:modelValue":F[1]||(F[1]=H=>p.value=H),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(r)("redis.dedicated_configuration.description"),label:t.unref(r)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),p.value?(t.openBlock(),t.createElementBlock("div",Dw,[t.createElementVNode("div",Mw,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",Lw,[t.createVNode(Q,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:K.value,loading:t.unref(k),"model-value":h.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:F[3]||(F[3]=H=>O(H==null?void 0:H.value)),onQueryChange:t.unref(N)},{"selected-item-template":t.withCtx(({item:H})=>[t.createElementVNode("div",Fw,t.toDisplayString(H.name),1)]),"item-template":t.withCtx(({item:H})=>[t.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${H.name}`},[t.createElementVNode("span",Kw,t.toDisplayString(H.name),1),t.createVNode(V,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(H.tag),1)]),_:2},1024)],8,Uw)]),empty:t.withCtx(()=>[t.createElementVNode("div",jw,t.toDisplayString(t.unref(r)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":t.withCtx(()=>[t.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:F[2]||(F[2]=()=>f.value=!0)},[t.createVNode(t.unref(Ee.AddIcon),{size:t.unref(fo)},null,8,["size"]),t.createElementVNode("span",null,t.toDisplayString(t.unref(r)("redis.shared_configuration.create_new_configuration",{type:t.unref(u0)(t.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),u.value?(t.openBlock(),t.createBlock(xw,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),P.value?(t.openBlock(),t.createElementBlock("p",Gw,t.toDisplayString(P.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(dt,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(Pc),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(Aw,{"partial-type":t.unref(c),visible:f.value,onModalClose:F[4]||(F[4]=H=>f.value=!1),onPartialUpdateFailed:R,onPartialUpdated:x},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(dt,t.mergeProps({key:1},i,{"fields-order":t.unref(Pc),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-12b9ad82"]]),Hw=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=Ve();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(Nc,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(zw,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),Yw=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change","globalAction"],setup(e,{emit:n}){const o=n,r={hasValue:a=>!!(a!=null&&a.config)};function i(a){var l;((l=a.config)==null?void 0:l.namespace)===null&&delete a.config.namespace,o("change",a)}return(a,l)=>(t.openBlock(),t.createBlock(mt,{class:"rc-config-form",config:r,data:a.data,schema:a.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(hw),t.createVNode(_w)]),_:1}),t.createVNode(ia,null,{default:t.withCtx(()=>[t.createVNode(Je,{name:"config.dictionary_name"}),t.createVNode(Je,{name:"config.lock_dictionary_name"}),t.createVNode(Je,{name:"config.strategy"}),t.createVNode(Hw,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(Je,{name:"config.namespace"}),t.createVNode(Je,{name:"config.hide_client_headers"}),t.createVNode(Je,{name:"config.disable_penalty"}),t.createVNode(Je,{name:"config.retry_after_jitter_max"}),t.createVNode(Je,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),Ww=t.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},emits:["globalAction"],setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(aa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Yw,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),Xw={class:"ff-standard-layout"},Zw={class:"enabled"},Jw={class:"scope"},Qw={key:0,class:"scope-detail"},eE=we(t.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t:n}=Re.createI18n("en-us",je),o=e,r=t.useSlots();t.provide(Ne.AUTOFILL_SLOT,r==null?void 0:r[Ne.AUTOFILL_SLOT_NAME]);const i=t.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(_=>_.model==="enabled")}}),a=t.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(_=>_.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:g,description:_})=>({label:g,description:_}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var _;const g=["instance_name","protocols","tags"];return{fields:(_=o.formSchema)==null?void 0:_.fields.filter(w=>g.includes(w.model))}}),d=["config"],f=t.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(_=>d.includes(Object.keys(_)[0])),g});function u(g){return Yi(g,["config","partials"])}const p=t.ref(!1),m=t.ref(!0),h=Yi(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]);function b(g,_){h[_]=g,o.onModelUpdated(g,_)}return t.watch(p,g=>{g?Object.keys(h).forEach(_=>{o.onModelUpdated(h[_],_)}):Object.keys(h).forEach(_=>{o.onModelUpdated("",_)})}),(g,_)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",Xw,[t.createVNode(t.unref(de.EntityFormBlock),{description:t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",Zw,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",Jw,[t.createVNode(t.unref(Te.KRadio),t.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[0]||(_[0]=y=>p.value=y),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(Te.KRadio),t.mergeProps({modelValue:p.value,"onUpdate:modelValue":_[1]||(_[1]=y=>p.value=y),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),p.value?(t.openBlock(),t.createElementBlock("div",Qw,[t.createVNode(t.unref(Ne.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:b},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:m.value,"onUpdate:modelValue":_[2]||(_[2]=y=>m.value=y),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ne.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:c.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(de.EntityFormBlock),{description:t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(g.$slots,"default",{data:u(g.model),schema:f.value,onChange:_[3]||(_[3]=(...y)=>g.onFormChange&&g.onFormChange(...y))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-a727028f"]]),{t:ca}=Re.createI18n("en-us",je);function kt(e){return ca(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function po(e){return ca(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function tE(e){return ca(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const mr={call:{type:"call",summary:po("call"),description:kt("call"),icon:Ee.NetworkIcon,io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}}},jq:{type:"jq",summary:po("jq"),description:kt("jq"),icon:Ee.CodeblockIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},exit:{type:"exit",summary:po("exit"),description:kt("exit"),icon:Ee.GatewayIcon,io:{input:{fields:[{name:"headers"},{name:"body"}]}}},property:{type:"property",summary:po("property"),description:kt("property"),icon:Ee.StackIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},static:{type:"static",summary:po("static"),description:kt("static"),icon:Ee.VitalsIcon,io:{output:{fields:[],configurable:!0}}}},gr={request:{type:"request",description:kt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_request:{type:"service_request",description:kt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_response:{type:"service_response",description:kt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}}},response:{type:"response",description:kt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}}}},Oc=Object.keys(gr),da=e=>Oc.includes(e),Bt=e=>Oc.includes(e),$c=e=>Bt(e.type),nE="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let oE=(e=21)=>{let n="",o=crypto.getRandomValues(new Uint8Array(e|=0));for(;e--;)n+=nE[o[e]&63];return n};function Bn(e){return xn(e)}function mo(e){return`${e}:${oE()}`}function hr(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function Bc(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function ua(e){return Bt(e)?gr[e]:mr[e]}function Vc(e){var i,a,l,s,c,d;const n=ua(e),o=((l=(a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields)==null?void 0:l.map(({name:f})=>f))??[],r=((d=(c=(s=n.io)==null?void 0:s.output)==null?void 0:c.fields)==null?void 0:d.map(({name:f})=>f))??[];return{input:o,output:r}}function Rc(e){return(e??[]).map(n=>({id:mo("field"),name:n}))}function Vn(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function Kt(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function fa(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Dc(e,n){return n?e.fields.input.some(o=>o.id===n):!0}const rE=["request","service_request","service_response","response"];function iE(e){const n=e==="request"||e==="service_request"?"request":"response",o=gr[e];return{name:e,phase:n,position:{x:0,y:0},fields:Vc(o.type),expanded:{}}}function aE(e,n){const o=e.toUpperCase();let r=1;for(;n.has(`${o}_${r}`);)r++;return`${o}_${r}`}function lE(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d}=at.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let f;function u(_){var w;(w=n==null?void 0:n.onHistoryChange)==null||w.call(n,_,e.value)}function p(_){if(!_){f=void 0,o(),u("commit");return}if(f!==_){f=_,o(),u("commit");return}const w=d.value[0]??null;o(),d.value.shift(),w&&d.value.unshift(w),u("commit")}function m(){r(),f=void 0,u("undo")}function h(){i(),f=void 0,u("redo")}function b(){s(),f=void 0,u("clear")}function g(){c(),f=void 0,u("reset")}return{canUndo:a,canRedo:l,commit:p,undo:m,redo:h,clear:b,reset:g}}function Mc(e,n){var d,f;const o=new Map(n.map(u=>[u.name,u])),r=[],i=[],a=new Map,l=[],s=new Map,c=u=>{const p=new Set,m=[...u];for(;m.length>0;){const h=m.shift();if(!p.has(h)&&(p.add(h),da(h)||(a.get(h).phase="request"),!!s.has(h)))for(const b of s.get(h))p.has(b)||m.push(b)}};for(const u of e){const p=o.get(u.name),m=Fc(u.type,u,p);r.push(m),a.set(m.name,m)}for(const u of rE)if(!a.has(u)){const p=o.get(u)??iE(u),m=Fc(u,void 0,p);r.push(m),a.set(m.name,m)}for(const u of e)dE(u,l);for(const u of l){const p=a.get(u.source),m=a.get(u.target);if(!p||!m){p||console.warn(`[initEditorState] skip: source "${u.source}" not found`),m||console.warn(`[initEditorState] skip: target "${u.target}" not found`);continue}s.has(u.source)||s.set(u.source,new Set),s.get(u.source).add(u.target),s.has(u.target)||s.set(u.target,new Set),s.get(u.target).add(u.source),i.push({id:mo("edge"),source:p.id,sourceField:(d=Vn(p,"output",u.sourceField))==null?void 0:d.id,target:m.id,targetField:(f=Vn(m,"input",u.targetField))==null?void 0:f.id})}return c(["request","service_request"]),{nodes:r,edges:i}}function Lc(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=Vc(n);return{id:mo("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Rc((a==null?void 0:a.input)??s.input),output:Rc((a==null?void 0:a.output)??s.output)},config:l?Bn(l):{}}}function sE(e){return Bt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Fc(e,n,o){return Lc({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??sE(e),position:o==null?void 0:o.position,fields:uE(n,o),config:n?cE(n):void 0})}function cE(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return Bn(s)}function dE(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=hr(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}=hr(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=hr(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}=hr(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function uE(e,n){var a,l;if(!e&&!n)return;const o=new Set,r=new Set;e!=null&&e.inputs&&Object.keys(e.inputs).forEach(s=>o.add(s)),e!=null&&e.outputs&&Object.keys(e.outputs).forEach(s=>r.add(s)),(a=n==null?void 0:n.fields)!=null&&a.input&&n.fields.input.forEach(s=>o.add(s)),(l=n==null?void 0:n.fields)!=null&&l.output&&n.fields.output.forEach(s=>r.add(s));const i={};return o.size&&(i.input=Array.from(o)),r.size&&(i.output=Array.from(r)),Object.keys(i).length?i:void 0}function fE(e){const n=t.computed(()=>{const c=new Map;return e.value.nodes.forEach(d=>c.set(d.id,d)),c}),o=t.computed(()=>e.value.edges);function r(c){const d=n.value.get(c.source),f=n.value.get(c.target);if(!d||!f)return c;const u=Dc(d,c.sourceField)&&!fa(d,c.sourceField),p=fa(f,c.targetField);return u&&p?{source:c.target,sourceField:c.targetField,target:c.source,targetField:c.sourceField}:c}function i(c){const d=r(c),f=[],u=n.value.get(d.source),p=n.value.get(d.target);if(u||f.push("source node not found"),p||f.push("target node not found"),!u||!p)return{ok:!1,errors:f};fa(u,d.sourceField)||f.push("source handle is not an output field"),Dc(p,d.targetField)||f.push("target handle is not an input field"),p.name==="request"&&f.push('cannot target "request"'),u.name==="response"&&f.push('cannot source from "response"');const m=o.value.some(g=>g.target===d.target&&!g.targetField),h=o.value.some(g=>g.target===d.target&&!!g.targetField);(m&&d.targetField||h&&!d.targetField)&&f.push("cannot mix whole-node and field-level inputs on same target"),d.targetField&&o.value.some(g=>g.target===d.target&&g.targetField===d.targetField)&&f.push("target field already connected"),!d.targetField&&o.value.some(g=>g.target===d.target&&!g.targetField)&&f.push("target input already taken"),d.source===d.target&&f.push("self-loop not allowed");const b=yr(o.value,d);return pa(b)&&f.push("connection introduces a cycle"),f.length?{ok:!1,errors:f}:{ok:!0}}function a(){const c=[],d=["request","service_request","service_response","response"];for(const f of d)[...n.value.values()].some(u=>u.name===f)||c.push(`missing implicit node "${f}"`);for(const f of o.value){const u=n.value.get(f.source);n.value.get(f.target).name==="request"&&c.push(`edge "${f.id}" targets "request"`),u.name==="response"&&c.push(`edge "${f.id}" sources from "response"`)}return pa(yr(o.value))&&c.push("graph contains cycle"),c.length?{ok:!1,errors:c}:{ok:!0}}function l(c){return i(c).ok}function s(c){return!c.source||!c.target?!1:l({source:c.source,sourceField:c.sourceHandle,target:c.target,targetField:c.targetHandle})}return{canonicalizeConnection:r,validateConnection:i,validateGraph:a,isValidConnection:l,isValidVueFlowConnection:s,buildAdjacency:yr}}function pa(e){const n=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(n.has(i))return!1;n.add(i),o.add(i);for(const a of e.get(i)??[])if(r(a))return!0;return o.delete(i),!1}for(const i of e.keys())if(r(i))return!0;return!1}function yr(e,n){const o=new Map;for(const r of e)o.has(r.source)||o.set(r.source,[]),o.get(r.source).push(r.target),o.has(r.target)||o.set(r.target,[]);return n&&(o.has(n.source)||o.set(n.source,[]),o.get(n.source).push(n.target),o.has(n.target)||o.set(n.target,[])),o}const[pE,mE]=at.createInjectionState(function(n,o,r={}){const i=t.ref(Mc(n,o)),a=t.ref(),l=t.ref(!1),s=t.ref(!1),c=lE(i,{capacity:200,clone:Bn,onHistoryChange:q=>{var te;q!=="clear"&&((te=r.onChange)==null||te.call(r,{nodes:ne()}))}}),d=t.ref(null),f=t.ref(new Set),u=t.computed(()=>new Map(i.value.nodes.map(q=>[q.id,q]))),p=t.computed(()=>new Map(i.value.nodes.map(q=>[q.name,q]))),m=t.computed(()=>{const q=new Map,te=new Map;for(const v of i.value.edges)q.set(v.id,v),te.has(v.source)||te.set(v.source,new Set),te.get(v.source).add(v.id),te.has(v.target)||te.set(v.target,new Set),te.get(v.target).add(v.id);return{edgeMapById:q,edgeIdMapByNodeId:te}}),h=t.computed(()=>m.value.edgeMapById),b=t.computed(()=>m.value.edgeIdMapByNodeId),g=t.computed(()=>new Set(i.value.nodes.map(q=>q.name))),{canonicalizeConnection:_,validateConnection:w,validateGraph:y,isValidConnection:N,isValidVueFlowConnection:k}=fE(i);function E(q){return u.value.get(q)}function $(q){return p.value.get(q)}function I(q){return h.value.get(q)}function P(q){if(!b.value.has(q))return[];const te=[];return b.value.get(q).forEach(v=>{const C=I(v);C&&te.push(C)}),te}function Y(q){return P(q).filter(te=>te.target===q)}function K(q){return P(q).filter(te=>te.source===q)}const A=t.computed(()=>a.value?E(a.value):void 0);function z(q){a.value=q}function x(q){if(Bt(q.type))throw new Error("[createNode] implicit nodes are fixed.");return Lc({type:q.type,name:q.name||(Bt(q.type)?void 0:aE(q.type,g.value)),phase:q.phase,position:q.position,fields:q.fields,config:q.config})}function R(q,te=!0){const v=x(q);if(v)return i.value.nodes.push(v),te&&c.commit(),v.id}function O(q,te=!0){i.value.edges=i.value.edges.filter(C=>C.source!==q&&C.target!==q),i.value.nodes=i.value.nodes.filter(C=>C.id!==q),a.value===q&&(a.value=void 0);const v=y();v.ok||console.warn("[removeNode] topology invalid:",v.errors.join("; ")),te&&c.commit()}function W(q,te,v=!0,C){const S=E(q);if(S){if(da(S.name)){console.warn("[renameNode] implicit node name is reserved.");return}S.name=te,v&&c.commit(C)}}function G(q,te,v=!0){const C=E(q);C&&(C.position={...te},v&&c.commit())}function F(q,te,v,C=!0){const S=E(q);S&&(S.expanded[te]=v??!S.expanded[te],C&&c.commit(`toggle:${q}:${te}`))}function V(q,te,v=!0,C){const S=E(q);S&&(S.config=Bn(te),v&&c.commit(C))}function D(q,te,v,C=!0){const S=E(q);if(!S)return;const T=S.fields[te];if(T.some(B=>B.name===v)){console.warn(`[addField] field "${v}" already exists on ${te}.`);return}T.push({id:mo("field"),name:v}),te==="input"?S.fields.input=T:S.fields.output=T,C&&c.commit()}function Q(q,te,v,C=!0){const S=E(q);if(!S)return;const T=S.fields.input,B=S.fields.output,J=T.find(oe=>oe.id===te)??B.find(oe=>oe.id===te);J&&(J.name=v,C&&c.commit())}function ie(q,te,v=!0,C=!0){const S=E(q);if(!S)return;const T=S.fields.input,B=S.fields.output,J=T.findIndex(X=>X.id===te);J>=0&&T.splice(J,1);const oe=B.findIndex(X=>X.id===te);oe>=0&&B.splice(oe,1),S.fields.input=T,S.fields.output=B,v&&(i.value.edges=i.value.edges.filter(X=>X.sourceField!==te&&X.targetField!==te));const M=y();M.ok||console.warn("[removeField] topology invalid:",M.errors.join("; ")),C&&c.commit()}function H(q,te=!0){const v=_(q),C=w(v);if(!C.ok){console.warn("[connectEdge] invalid connection:",C.errors.join("; "));return}const S={id:mo("edge"),...v};i.value.edges.push(S);const T=y();if(!T.ok){i.value.edges.pop(),console.warn("[connectEdge] topology invalid:",T.errors.join("; "));return}return te&&c.commit(),S.id}function re(q,te,v=!0){U(q,!1),H(te,!1),v&&c.commit()}function U(q,te=!0){const v=i.value.edges.findIndex(T=>T.id===q);if(v<0)return;const C=i.value.edges[v];i.value.edges.splice(v,1);const S=y();if(!S.ok){i.value.edges.splice(v,0,C),console.warn("[disconnectEdge] topology invalid:",S.errors.join("; "));return}te&&c.commit()}function Z(q,te=!0){const v=Y(q);for(const C of v)U(C.id,!1);te&&c.commit()}function ee(q,te=!0){const v=K(q);for(const C of v)U(C.id,!1);te&&c.commit()}function ne(){var te,v,C,S,T;const q=[];for(const B of i.value.nodes){if(Bt(B.type))continue;let J;const oe={};let M;const X={};for(const le of i.value.edges.filter(_e=>_e.target===B.id)){const _e=E(le.source);if(!_e)continue;const be=(te=Kt(_e,"output",le.sourceField))==null?void 0:te.name,Ce=be?`${_e.name}.${be}`:_e.name,xe=(v=Kt(B,"input",le.targetField))==null?void 0:v.name;xe?oe[xe]=Ce:J===void 0&&(J=Ce)}for(const le of i.value.edges.filter(_e=>_e.source===B.id)){const _e=E(le.target);if(!_e)continue;const be=_e.type;if(!Bt(be)||!((C=gr[be].io)!=null&&C.input))continue;const Ce=(S=Kt(_e,"input",le.targetField))==null?void 0:S.name,xe=Ce?`${_e.name}.${Ce}`:_e.name,pe=(T=Kt(B,"output",le.sourceField))==null?void 0:T.name;pe?X[pe]=xe:M===void 0&&(M=xe)}const L={...Bn(B.config),name:B.name,type:B.type};Object.keys(oe).length>0?L.inputs=oe:J!==void 0&&(L.input=J),Object.keys(X).length>0?L.outputs=X:M!==void 0&&(L.output=M),q.push(L)}return q}function ae(){return i.value.nodes.map(q=>Bn({name:q.name,phase:q.phase,position:{...q.position},expanded:{...q.expanded},fields:{input:q.fields.input.map(te=>te.name),output:q.fields.output.map(te=>te.name)}}))}function ue(q,te){i.value=Mc(q,te),c.reset()}return{state:i,selection:a,modalOpen:l,newCreatedNodeId:d,invalidConfigNodeIds:f,propertiesPanelOpen:s,nodeMapById:u,nodeMapByName:p,edgeMapById:h,edgeIdMapByNodeId:b,getNodeById:E,getNodeByName:$,getEdgeById:I,getEdgesByNodeId:P,getInEdgesByNodeId:Y,getOutEdgesByNodeId:K,selectedNode:A,selectNode:z,createNode:x,addNode:R,removeNode:O,renameNode:W,moveNode:G,toggleExpanded:F,replaceConfig:V,addField:D,renameField:Q,removeField:ie,connectEdge:H,replaceConnection:re,disconnectEdge:U,disconnectInEdges:Z,disconnectOutEdges:ee,toConfigNodes:ne,toUINodes:ae,load:ue,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,isValidConnection:N,isValidVueFlowConnection:k,validateGraph:()=>y()}});function ot(){const e=mE();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const ma=at.createGlobalState(()=>{const e=at.useLocalStorage("datakit-editor-mode","flow"),n=at.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}}),gE="44px",hE="220px",yE="366px",_E="52px",bE=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Uc="application/x-datakit+json",wE={class:"dk-confirm-modal-body"},EE={class:"dk-confirm-modal-connections"},kE=we(t.defineComponent({__name:"ConflictConnectionConfirmModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=ve(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,h,b){return l.value=m,s.value=h??[],c.value=b??[],a.value=!0,await new Promise(g=>{d=g})}return n({open:p}),(m,h)=>{const b=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(b,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:m.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:u},{default:t.withCtx(()=>[t.createElementVNode("div",wE,[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",EE,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([g,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${_}`},[t.createVNode(t.unref(Ee.AddIcon),{color:t.unref(Pw)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),h[0]||(h[0]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(_),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([g,_])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${_}`},[t.createVNode(t.unref(Ee.RemoveIcon),{color:t.unref(xc)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),h[1]||(h[1]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(_),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-c4d58082"]]),CE={class:"dk-editor-nav"},NE={class:"top"},vE={class:"bottom"},SE=we(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Re.createI18n("en-us",je),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Ee.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=ma(),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",CE,[t.createElementVNode("div",NE,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:h})=>t.createVNode(t.unref(Te.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Te.KButton),{key:u,appearance:"none",class:"nav-item",icon:"",to:p,onClick:h},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(sa)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",vE,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(u=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(u=>s.value=!0,["self"]))},[t.createVNode(t.unref(Te.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Te.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(sa)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(Ee.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(sa)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-4498cfce"]]),xE=we(t.defineComponent({__name:"EditorCanvas",setup(e){const n=t.useTemplateRef("editorCanvas"),o=t.useTemplateRef("requestLabel"),r=t.useTemplateRef("requestCanvas"),i=t.useTemplateRef("resizeHandle"),a=t.useTemplateRef("responseCanvas"),l=at.useElementBounding(n),s=at.useElementBounding(o),c=at.useElementBounding(r),d=at.useElementBounding(i),f=at.useElementBounding(a),u=t.computed(()=>Math.max(30,l.height.value*.03)),p=t.computed(()=>c.height.value<u.value),m=t.computed(()=>f.height.value<u.value),h=t.ref("50%"),b=()=>{p.value?h.value="50%":h.value="0"},g=()=>{m.value?h.value="50%":h.value="100%"},{isDragging:_}=at.useDraggable(i,{onMove(w){const N=w.y+d.height.value/2-s.bottom.value;h.value=`max(0%, min(100%, ${N}px))`},onEnd(){c.height.value<u.value?h.value="0":f.height.value<u.value&&(h.value="100%")}});return(w,y)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"editorCanvas",ref:n,class:"editor-canvas"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:o,class:"label",onClick:b},[t.createVNode(t.unref(Ee.ChevronDownIcon),{class:t.normalizeClass(["icon",{collapsed:p.value}])},null,8,["class"]),y[0]||(y[0]=t.createElementVNode("div",null,"Request",-1))],512),t.createElementVNode("div",{ref_key:"requestCanvas",ref:r,class:t.normalizeClass(["canvas",{dragging:t.unref(_)}]),style:t.normalizeStyle({height:h.value})},[t.renderSlot(w.$slots,"request",{},void 0,!0)],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:i,class:"resize-handle"},null,512),t.createElementVNode("div",{ref:"responseLabel",class:t.normalizeClass(["label",{dragging:t.unref(_)}]),onClick:g},[t.createVNode(t.unref(Ee.ChevronDownIcon),{class:t.normalizeClass(["icon",{collapsed:m.value}])},null,8,["class"]),y[1]||(y[1]=t.createElementVNode("div",null,"Response",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvas",ref:a,class:"canvas response"},[t.renderSlot(w.$slots,"response",{},void 0,!0)],512)],512))}}),[["__scopeId","data-v-1045a730"]]);function _r(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function Vt(e){return typeof e=="function"?e():t.unref(e)}const AE=typeof window<"u"&&typeof document<"u",IE=e=>typeof e<"u",TE=Object.prototype.toString,PE=e=>TE.call(e)==="[object Object]",OE=()=>{};function $E(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 Kc=e=>e();function BE(e=Kc){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 jc(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function VE(e,n,o={}){const{eventFilter:r=Kc,...i}=o;return t.watch(e,$E(r,n),i)}function Rn(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=BE(r);return{stop:VE(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function RE(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=Vt(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 ga(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:b}={}){let g=null;const w=[new Promise(y=>{g=t.watch(e,N=>{u(N)!==n&&(g==null||g(),y(N))},{flush:p,deep:m,immediate:!0})})];return h!=null&&w.push(jc(h,b).then(()=>Vt(e)).finally(()=>g==null?void 0:g())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(N=>N===u,p);const{flush:m="sync",deep:h=!1,timeout:b,throwOnTimeout:g}=p??{};let _=null;const y=[new Promise(N=>{_=t.watch([e,u],([k,E])=>{n!==(k===E)&&(_==null||_(),N(k))},{flush:m,deep:h,immediate:!0})})];return b!=null&&y.push(jc(b,g).then(()=>Vt(e)).finally(()=>(_==null||_(),Vt(e)))),Promise.race(y)}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(Vt(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(Vt(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return ga(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return ga(e,!n)}}}function ha(e){return ga(e)}function DE(e){var n;const o=Vt(e);return(n=o==null?void 0:o.$el)!=null?n:o}const Gc=AE?window:void 0;function qc(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=Gc):[n,o,r,i]=e,!n)return OE;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(()=>[DE(n),Vt(i)],([f,u])=>{if(l(),!f)return;const p=PE(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return _r(d),d}function ME(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function zc(...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=Gc,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=ME(n);return qc(i,a,f=>{f.repeat&&Vt(s)||c(f)&&o(f)},l)}function LE(e){return JSON.parse(JSON.stringify(e))}function ya(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 b=d;n||(n="modelValue"),b=b||`update:${n.toString()}`;const g=y=>s?typeof s=="function"?s(y):LE(y):y,_=()=>IE(e[n])?g(e[n]):u,w=y=>{p?p(y)&&h(b,y):h(b,y)};if(c){const y=_(),N=t.ref(y);let k=!1;return t.watch(()=>e[n],E=>{k||(k=!0,N.value=g(E),t.nextTick(()=>k=!1))}),t.watch(N,E=>{!k&&(E!==e[n]||f)&&w(E)},{deep:f}),N}else return t.computed({get(){return _()},set(y){w(y)}})}var FE={value:()=>{}};function br(){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 wr(o)}function wr(e){this._=e}function UE(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}})}wr.prototype=br.prototype={constructor:wr,on:function(e,n){var o=this._,r=UE(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=KE(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]=Hc(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Hc(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 wr(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 KE(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Hc(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=FE,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var _a="http://www.w3.org/1999/xhtml";const Yc={svg:"http://www.w3.org/2000/svg",xhtml:_a,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Er(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Yc.hasOwnProperty(n)?{space:Yc[n],local:e}:e}function jE(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===_a&&n.documentElement.namespaceURI===_a?n.createElement(e):n.createElementNS(o,e)}}function GE(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Wc(e){var n=Er(e);return(n.local?GE:jE)(n)}function qE(){}function ba(e){return e==null?qE:function(){return this.querySelector(e)}}function zE(e){typeof e!="function"&&(e=ba(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 rt(r,this._parents)}function HE(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function YE(){return[]}function Xc(e){return e==null?YE:function(){return this.querySelectorAll(e)}}function WE(e){return function(){return HE(e.apply(this,arguments))}}function XE(e){typeof e=="function"?e=WE(e):e=Xc(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 rt(r,i)}function Zc(e){return function(){return this.matches(e)}}function Jc(e){return function(n){return n.matches(e)}}var ZE=Array.prototype.find;function JE(e){return function(){return ZE.call(this.children,e)}}function QE(){return this.firstElementChild}function ek(e){return this.select(e==null?QE:JE(typeof e=="function"?e:Jc(e)))}var tk=Array.prototype.filter;function nk(){return Array.from(this.children)}function ok(e){return function(){return tk.call(this.children,e)}}function rk(e){return this.selectAll(e==null?nk:ok(typeof e=="function"?e:Jc(e)))}function ik(e){typeof e!="function"&&(e=Zc(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 rt(r,this._parents)}function Qc(e){return new Array(e.length)}function ak(){return new rt(this._enter||this._groups.map(Qc),this._parents)}function kr(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}kr.prototype={constructor:kr,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 lk(e){return function(){return e}}function sk(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 kr(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function ck(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 kr(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function dk(e){return e.__data__}function uk(e,n){if(!arguments.length)return Array.from(this,dk);var o=n?ck:sk,r=this._parents,i=this._groups;typeof e!="function"&&(e=lk(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=fk(e.call(f,f&&f.__data__,d,r)),h=m.length,b=s[d]=new Array(h),g=l[d]=new Array(h),_=c[d]=new Array(p);o(f,u,b,g,_,m,n);for(var w=0,y=0,N,k;w<h;++w)if(N=b[w]){for(w>=y&&(y=w+1);!(k=g[y])&&++y<h;);N._next=k||null}}return l=new rt(l,r),l._enter=s,l._exit=c,l}function fk(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function pk(){return new rt(this._exit||this._groups.map(Qc),this._parents)}function mk(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 gk(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 rt(s,this._parents)}function hk(){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 yk(e){e||(e=_k);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 rt(i,this._parents).order()}function _k(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function bk(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function wk(){return Array.from(this)}function Ek(){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 kk(){let e=0;for(const n of this)++e;return e}function Ck(){return!this.node()}function Nk(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 vk(e){return function(){this.removeAttribute(e)}}function Sk(e){return function(){this.removeAttributeNS(e.space,e.local)}}function xk(e,n){return function(){this.setAttribute(e,n)}}function Ak(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function Ik(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function Tk(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 Pk(e,n){var o=Er(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?Sk:vk:typeof n=="function"?o.local?Tk:Ik:o.local?Ak:xk)(o,n))}function ed(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function Ok(e){return function(){this.style.removeProperty(e)}}function $k(e,n,o){return function(){this.style.setProperty(e,n,o)}}function Bk(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function Vk(e,n,o){return arguments.length>1?this.each((n==null?Ok:typeof n=="function"?Bk:$k)(e,n,o??"")):Dn(this.node(),e)}function Dn(e,n){return e.style.getPropertyValue(n)||ed(e).getComputedStyle(e,null).getPropertyValue(n)}function Rk(e){return function(){delete this[e]}}function Dk(e,n){return function(){this[e]=n}}function Mk(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function Lk(e,n){return arguments.length>1?this.each((n==null?Rk:typeof n=="function"?Mk:Dk)(e,n)):this.node()[e]}function td(e){return e.trim().split(/^|\s+/)}function wa(e){return e.classList||new nd(e)}function nd(e){this._node=e,this._names=td(e.getAttribute("class")||"")}nd.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 od(e,n){for(var o=wa(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function rd(e,n){for(var o=wa(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function Fk(e){return function(){od(this,e)}}function Uk(e){return function(){rd(this,e)}}function Kk(e,n){return function(){(n.apply(this,arguments)?od:rd)(this,e)}}function jk(e,n){var o=td(e+"");if(arguments.length<2){for(var r=wa(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?Kk:n?Fk:Uk)(o,n))}function Gk(){this.textContent=""}function qk(e){return function(){this.textContent=e}}function zk(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function Hk(e){return arguments.length?this.each(e==null?Gk:(typeof e=="function"?zk:qk)(e)):this.node().textContent}function Yk(){this.innerHTML=""}function Wk(e){return function(){this.innerHTML=e}}function Xk(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function Zk(e){return arguments.length?this.each(e==null?Yk:(typeof e=="function"?Xk:Wk)(e)):this.node().innerHTML}function Jk(){this.nextSibling&&this.parentNode.appendChild(this)}function Qk(){return this.each(Jk)}function eC(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function tC(){return this.each(eC)}function nC(e){var n=typeof e=="function"?e:Wc(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function oC(){return null}function rC(e,n){var o=typeof e=="function"?e:Wc(e),r=n==null?oC:typeof n=="function"?n:ba(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function iC(){var e=this.parentNode;e&&e.removeChild(this)}function aC(){return this.each(iC)}function lC(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function sC(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function cC(e){return this.select(e?sC:lC)}function dC(e){return arguments.length?this.property("__data__",e):this.node().__data__}function uC(e){return function(n){e.call(this,n,this.__data__)}}function fC(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 pC(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 mC(e,n,o){return function(){var r=this.__on,i,a=uC(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 gC(e,n,o){var r=fC(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?mC:pC,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function id(e,n,o){var r=ed(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 hC(e,n){return function(){return id(this,e,n)}}function yC(e,n){return function(){return id(this,e,n.apply(this,arguments))}}function _C(e,n){return this.each((typeof n=="function"?yC:hC)(e,n))}function*bC(){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 ad=[null];function rt(e,n){this._groups=e,this._parents=n}function go(){return new rt([[document.documentElement]],ad)}function wC(){return this}rt.prototype=go.prototype={constructor:rt,select:zE,selectAll:XE,selectChild:ek,selectChildren:rk,filter:ik,data:uk,enter:ak,exit:pk,join:mk,merge:gk,selection:wC,order:hk,sort:yk,call:bk,nodes:wk,node:Ek,size:kk,empty:Ck,each:Nk,attr:Pk,style:Vk,property:Lk,classed:jk,text:Hk,html:Zk,raise:Qk,lower:tC,append:nC,insert:rC,remove:aC,clone:cC,datum:dC,on:gC,dispatch:_C,[Symbol.iterator]:bC};function gt(e){return typeof e=="string"?new rt([[document.querySelector(e)]],[document.documentElement]):new rt([[e]],ad)}function EC(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Ct(e,n){if(e=EC(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 kC={passive:!1},ho={capture:!0,passive:!1};function Ea(e){e.stopImmediatePropagation()}function Mn(e){e.preventDefault(),e.stopImmediatePropagation()}function ld(e){var n=e.document.documentElement,o=gt(e).on("dragstart.drag",Mn,ho);"onselectstart"in n?o.on("selectstart.drag",Mn,ho):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function sd(e,n){var o=e.document.documentElement,r=gt(e).on("dragstart.drag",null);n&&(r.on("click.drag",Mn,ho),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in o?r.on("selectstart.drag",null):(o.style.MozUserSelect=o.__noselect,delete o.__noselect)}const Cr=e=>()=>e;function ka(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}})}ka.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function CC(e){return!e.ctrlKey&&!e.button}function NC(){return this.parentNode}function vC(e,n){return n??{x:e.x,y:e.y}}function SC(){return navigator.maxTouchPoints||"ontouchstart"in this}function xC(){var e=CC,n=NC,o=vC,r=SC,i={},a=br("start","drag","end"),l=0,s,c,d,f,u=0;function p(N){N.on("mousedown.drag",m).filter(r).on("touchstart.drag",g).on("touchmove.drag",_,kC).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(N,k){if(!(f||!e.call(this,N,k))){var E=y(this,n.call(this,N,k),N,k,"mouse");E&&(gt(N.view).on("mousemove.drag",h,ho).on("mouseup.drag",b,ho),ld(N.view),Ea(N),d=!1,s=N.clientX,c=N.clientY,E("start",N))}}function h(N){if(Mn(N),!d){var k=N.clientX-s,E=N.clientY-c;d=k*k+E*E>u}i.mouse("drag",N)}function b(N){gt(N.view).on("mousemove.drag mouseup.drag",null),sd(N.view,d),Mn(N),i.mouse("end",N)}function g(N,k){if(e.call(this,N,k)){var E=N.changedTouches,$=n.call(this,N,k),I=E.length,P,Y;for(P=0;P<I;++P)(Y=y(this,$,N,k,E[P].identifier,E[P]))&&(Ea(N),Y("start",N,E[P]))}}function _(N){var k=N.changedTouches,E=k.length,$,I;for($=0;$<E;++$)(I=i[k[$].identifier])&&(Mn(N),I("drag",N,k[$]))}function w(N){var k=N.changedTouches,E=k.length,$,I;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),$=0;$<E;++$)(I=i[k[$].identifier])&&(Ea(N),I("end",N,k[$]))}function y(N,k,E,$,I,P){var Y=a.copy(),K=Ct(P||E,k),A,z,x;if((x=o.call(N,new ka("beforestart",{sourceEvent:E,target:p,identifier:I,active:l,x:K[0],y:K[1],dx:0,dy:0,dispatch:Y}),$))!=null)return A=x.x-K[0]||0,z=x.y-K[1]||0,function R(O,W,G){var F=K,V;switch(O){case"start":i[I]=R,V=l++;break;case"end":delete i[I],--l;case"drag":K=Ct(G||W,k),V=l;break}Y.call(O,N,new ka(O,{sourceEvent:W,subject:x,target:p,identifier:I,active:V,x:K[0]+A,y:K[1]+z,dx:K[0]-F[0],dy:K[1]-F[1],dispatch:Y}),$)}}return p.filter=function(N){return arguments.length?(e=typeof N=="function"?N:Cr(!!N),p):e},p.container=function(N){return arguments.length?(n=typeof N=="function"?N:Cr(N),p):n},p.subject=function(N){return arguments.length?(o=typeof N=="function"?N:Cr(N),p):o},p.touchable=function(N){return arguments.length?(r=typeof N=="function"?N:Cr(!!N),p):r},p.on=function(){var N=a.on.apply(a,arguments);return N===a?p:N},p.clickDistance=function(N){return arguments.length?(u=(N=+N)*N,p):Math.sqrt(u)},p}function Ca(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function cd(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function yo(){}var _o=.7,Nr=1/_o,Ln="\\s*([+-]?\\d+)\\s*",bo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Nt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",AC=/^#([0-9a-f]{3,8})$/,IC=new RegExp(`^rgb\\(${Ln},${Ln},${Ln}\\)$`),TC=new RegExp(`^rgb\\(${Nt},${Nt},${Nt}\\)$`),PC=new RegExp(`^rgba\\(${Ln},${Ln},${Ln},${bo}\\)$`),OC=new RegExp(`^rgba\\(${Nt},${Nt},${Nt},${bo}\\)$`),$C=new RegExp(`^hsl\\(${bo},${Nt},${Nt}\\)$`),BC=new RegExp(`^hsla\\(${bo},${Nt},${Nt},${bo}\\)$`),dd={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};Ca(yo,ln,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:ud,formatHex:ud,formatHex8:VC,formatHsl:RC,formatRgb:fd,toString:fd});function ud(){return this.rgb().formatHex()}function VC(){return this.rgb().formatHex8()}function RC(){return yd(this).formatHsl()}function fd(){return this.rgb().formatRgb()}function ln(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=AC.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?pd(n):o===3?new et(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?vr(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?vr(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=IC.exec(e))?new et(n[1],n[2],n[3],1):(n=TC.exec(e))?new et(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=PC.exec(e))?vr(n[1],n[2],n[3],n[4]):(n=OC.exec(e))?vr(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=$C.exec(e))?hd(n[1],n[2]/100,n[3]/100,1):(n=BC.exec(e))?hd(n[1],n[2]/100,n[3]/100,n[4]):dd.hasOwnProperty(e)?pd(dd[e]):e==="transparent"?new et(NaN,NaN,NaN,0):null}function pd(e){return new et(e>>16&255,e>>8&255,e&255,1)}function vr(e,n,o,r){return r<=0&&(e=n=o=NaN),new et(e,n,o,r)}function DC(e){return e instanceof yo||(e=ln(e)),e?(e=e.rgb(),new et(e.r,e.g,e.b,e.opacity)):new et}function Na(e,n,o,r){return arguments.length===1?DC(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}Ca(et,Na,cd(yo,{brighter(e){return e=e==null?Nr:Math.pow(Nr,e),new et(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?_o:Math.pow(_o,e),new et(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new et(sn(this.r),sn(this.g),sn(this.b),Sr(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:md,formatHex:md,formatHex8:MC,formatRgb:gd,toString:gd}));function md(){return`#${cn(this.r)}${cn(this.g)}${cn(this.b)}`}function MC(){return`#${cn(this.r)}${cn(this.g)}${cn(this.b)}${cn((isNaN(this.opacity)?1:this.opacity)*255)}`}function gd(){const e=Sr(this.opacity);return`${e===1?"rgb(":"rgba("}${sn(this.r)}, ${sn(this.g)}, ${sn(this.b)}${e===1?")":`, ${e})`}`}function Sr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function sn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function cn(e){return e=sn(e),(e<16?"0":"")+e.toString(16)}function hd(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new ht(e,n,o,r)}function yd(e){if(e instanceof ht)return new ht(e.h,e.s,e.l,e.opacity);if(e instanceof yo||(e=ln(e)),!e)return new ht;if(e instanceof ht)return e;e=e.rgb();var n=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(n,o,r),a=Math.max(n,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(n===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-n)/s+2:l=(n-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new ht(l,s,c,e.opacity)}function LC(e,n,o,r){return arguments.length===1?yd(e):new ht(e,n,o,r??1)}function ht(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}Ca(ht,LC,cd(yo,{brighter(e){return e=e==null?Nr:Math.pow(Nr,e),new ht(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?_o:Math.pow(_o,e),new ht(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*n,i=2*o-r;return new et(va(e>=240?e-240:e+120,i,r),va(e,i,r),va(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new ht(_d(this.h),xr(this.s),xr(this.l),Sr(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=Sr(this.opacity);return`${e===1?"hsl(":"hsla("}${_d(this.h)}, ${xr(this.s)*100}%, ${xr(this.l)*100}%${e===1?")":`, ${e})`}`}}));function _d(e){return e=(e||0)%360,e<0?e+360:e}function xr(e){return Math.max(0,Math.min(1,e||0))}function va(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 Sa=e=>()=>e;function FC(e,n){return function(o){return e+o*n}}function UC(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 KC(e){return(e=+e)==1?bd:function(n,o){return o-n?UC(n,o,e):Sa(isNaN(n)?o:n)}}function bd(e,n){var o=n-e;return o?FC(e,o):Sa(isNaN(e)?n:e)}const Ar=function e(n){var o=KC(n);function r(i,a){var l=o((i=Na(i)).r,(a=Na(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=bd(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 jC(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 GC(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function qC(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]=wo(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 zC(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function vt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function HC(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]=wo(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var xa=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Aa=new RegExp(xa.source,"g");function YC(e){return function(){return e}}function WC(e){return function(n){return e(n)+""}}function wd(e,n){var o=xa.lastIndex=Aa.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=xa.exec(e))&&(i=Aa.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:vt(r,i)})),o=Aa.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?WC(c[0].x):YC(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 wo(e,n){var o=typeof n,r;return n==null||o==="boolean"?Sa(n):(o==="number"?vt:o==="string"?(r=ln(n))?(n=r,Ar):wd:n instanceof ln?Ar:n instanceof Date?zC:GC(n)?jC:Array.isArray(n)?qC:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?HC:vt)(e,n)}var Ed=180/Math.PI,Ia={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function kd(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)*Ed,skewX:Math.atan(c)*Ed,scaleX:l,scaleY:s}}var Ir;function XC(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Ia:kd(n.a,n.b,n.c,n.d,n.e,n.f)}function ZC(e){return e==null||(Ir||(Ir=document.createElementNS("http://www.w3.org/2000/svg","g")),Ir.setAttribute("transform",e),!(e=Ir.transform.baseVal.consolidate()))?Ia:(e=e.matrix,kd(e.a,e.b,e.c,e.d,e.e,e.f))}function Cd(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 b=m.push("translate(",null,n,null,o);h.push({i:b-4,x:vt(d,u)},{i:b-2,x:vt(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:vt(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:vt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var b=m.push(i(m)+"scale(",null,",",null,")");h.push({i:b-4,x:vt(d,u)},{i:b-2,x:vt(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,b=p.length,g;++h<b;)u[(g=p[h]).i]=g.x(m);return u.join("")}}}var JC=Cd(XC,"px, ","px)","deg)"),QC=Cd(ZC,", ",")",")"),eN=1e-12;function Nd(e){return((e=Math.exp(e))+1/e)/2}function tN(e){return((e=Math.exp(e))-1/e)/2}function nN(e){return((e=Math.exp(2*e))-1)/(e+1)}const Tr=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,b=m*m+h*h,g,_;if(b<eN)_=Math.log(p/d)/n,g=function($){return[s+$*m,c+$*h,d*Math.exp(n*$*_)]};else{var w=Math.sqrt(b),y=(p*p-d*d+r*b)/(2*d*o*w),N=(p*p-d*d-r*b)/(2*p*o*w),k=Math.log(Math.sqrt(y*y+1)-y),E=Math.log(Math.sqrt(N*N+1)-N);_=(E-k)/n,g=function($){var I=$*_,P=Nd(k),Y=d/(o*w)*(P*nN(n*I+k)-tN(k));return[s+Y*m,c+Y*h,d*P/Nd(n*I+k)]}}return g.duration=_*1e3*n/Math.SQRT2,g}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var Fn=0,Eo=0,ko=0,vd=1e3,Pr,Co,Or=0,dn=0,$r=0,No=typeof performance=="object"&&performance.now?performance:Date,Sd=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Ta(){return dn||(Sd(oN),dn=No.now()+$r)}function oN(){dn=0}function Br(){this._call=this._time=this._next=null}Br.prototype=xd.prototype={constructor:Br,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?Ta():+o)+(n==null?0:+n),!this._next&&Co!==this&&(Co?Co._next=this:Pr=this,Co=this),this._call=e,this._time=o,Pa()},stop:function(){this._call&&(this._call=null,this._time=1/0,Pa())}};function xd(e,n,o){var r=new Br;return r.restart(e,n,o),r}function rN(){Ta(),++Fn;for(var e=Pr,n;e;)(n=dn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Fn}function Ad(){dn=(Or=No.now())+$r,Fn=Eo=0;try{rN()}finally{Fn=0,aN(),dn=0}}function iN(){var e=No.now(),n=e-Or;n>vd&&($r-=n,Or=e)}function aN(){for(var e,n=Pr,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:Pr=o);Co=e,Pa(r)}function Pa(e){if(!Fn){Eo&&(Eo=clearTimeout(Eo));var n=e-dn;n>24?(e<1/0&&(Eo=setTimeout(Ad,e-No.now()-$r)),ko&&(ko=clearInterval(ko))):(ko||(Or=No.now(),ko=setInterval(iN,vd)),Fn=1,Sd(Ad))}}function Id(e,n,o){var r=new Br;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var lN=br("start","end","cancel","interrupt"),sN=[],Td=0,Pd=1,Oa=2,Vr=3,Od=4,$a=5,Rr=6;function Dr(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;cN(e,o,{name:n,index:r,group:i,on:lN,tween:sN,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:Td})}function Ba(e,n){var o=yt(e,n);if(o.state>Td)throw new Error("too late; already scheduled");return o}function St(e,n){var o=yt(e,n);if(o.state>Vr)throw new Error("too late; already running");return o}function yt(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function cN(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=xd(a,0,o.time);function a(d){o.state=Pd,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!==Pd)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===Vr)return Id(l);m.state===Od?(m.state=Rr,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=Rr,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(Id(function(){o.state===Vr&&(o.state=Od,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=Oa,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Oa){for(o.state=Vr,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=$a,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===$a&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=Rr,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function Mr(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>Oa&&r.state<$a,r.state=Rr,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function dN(e){return this.each(function(){Mr(this,e)})}function uN(e,n){var o,r;return function(){var i=St(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 fN(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=St(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 pN(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=yt(this.node(),o).tween,i=0,a=r.length,l;i<a;++i)if((l=r[i]).name===e)return l.value;return null}return this.each((n==null?uN:fN)(o,e,n))}function Va(e,n,o){var r=e._id;return e.each(function(){var i=St(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return yt(i,r).value[n]}}function $d(e,n){var o;return(typeof n=="number"?vt:n instanceof ln?Ar:(o=ln(n))?(n=o,Ar):wd)(e,n)}function mN(e){return function(){this.removeAttribute(e)}}function gN(e){return function(){this.removeAttributeNS(e.space,e.local)}}function hN(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 yN(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 _N(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 bN(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 wN(e,n){var o=Er(e),r=o==="transform"?QC:$d;return this.attrTween(e,typeof n=="function"?(o.local?bN:_N)(o,r,Va(this,"attr."+e,n)):n==null?(o.local?gN:mN)(o):(o.local?yN:hN)(o,r,n))}function EN(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function kN(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function CN(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&kN(e,a)),o}return i._value=n,i}function NN(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&EN(e,a)),o}return i._value=n,i}function vN(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=Er(e);return this.tween(o,(r.local?CN:NN)(r,n))}function SN(e,n){return function(){Ba(this,e).delay=+n.apply(this,arguments)}}function xN(e,n){return n=+n,function(){Ba(this,e).delay=n}}function AN(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?SN:xN)(n,e)):yt(this.node(),n).delay}function IN(e,n){return function(){St(this,e).duration=+n.apply(this,arguments)}}function TN(e,n){return n=+n,function(){St(this,e).duration=n}}function PN(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?IN:TN)(n,e)):yt(this.node(),n).duration}function ON(e,n){if(typeof n!="function")throw new Error;return function(){St(this,e).ease=n}}function $N(e){var n=this._id;return arguments.length?this.each(ON(n,e)):yt(this.node(),n).ease}function BN(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;St(this,e).ease=o}}function VN(e){if(typeof e!="function")throw new Error;return this.each(BN(this._id,e))}function RN(e){typeof e!="function"&&(e=Zc(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 Rt(r,this._parents,this._name,this._id)}function DN(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 Rt(l,this._parents,this._name,this._id)}function MN(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 LN(e,n,o){var r,i,a=MN(n)?Ba:St;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function FN(e,n){var o=this._id;return arguments.length<2?yt(this.node(),o).on.on(e):this.each(LN(o,e,n))}function UN(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function KN(){return this.on("end.remove",UN(this._id))}function jN(e){var n=this._name,o=this._id;typeof e!="function"&&(e=ba(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,Dr(d[p],n,o,p,d,yt(f,o)));return new Rt(a,this._parents,n,o)}function GN(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Xc(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],d=c.length,f,u=0;u<d;++u)if(f=c[u]){for(var p=e.call(f,f.__data__,u,c),m,h=yt(f,o),b=0,g=p.length;b<g;++b)(m=p[b])&&Dr(m,n,o,b,p,h);a.push(p),l.push(f)}return new Rt(a,l,n,o)}var qN=go.prototype.constructor;function zN(){return new qN(this._groups,this._parents)}function HN(e,n){var o,r,i;return function(){var a=Dn(this,e),l=(this.style.removeProperty(e),Dn(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Bd(e){return function(){this.style.removeProperty(e)}}function YN(e,n,o){var r,i=o+"",a;return function(){var l=Dn(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function WN(e,n,o){var r,i,a;return function(){var l=Dn(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Dn(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function XN(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=St(this,e),d=c.on,f=c.value[a]==null?s||(s=Bd(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function ZN(e,n,o){var r=(e+="")=="transform"?JC:$d;return n==null?this.styleTween(e,HN(e,r)).on("end.style."+e,Bd(e)):typeof n=="function"?this.styleTween(e,WN(e,r,Va(this,"style."+e,n))).each(XN(this._id,e)):this.styleTween(e,YN(e,r,n),o).on("end.style."+e,null)}function JN(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function QN(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&JN(e,l,o)),r}return a._value=n,a}function e1(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,QN(e,n,o??""))}function t1(e){return function(){this.textContent=e}}function n1(e){return function(){var n=e(this);this.textContent=n??""}}function o1(e){return this.tween("text",typeof e=="function"?n1(Va(this,"text",e)):t1(e==null?"":e+""))}function r1(e){return function(n){this.textContent=e.call(this,n)}}function i1(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&r1(i)),n}return r._value=e,r}function a1(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,i1(e))}function l1(){for(var e=this._name,n=this._id,o=Vd(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,d=0;d<s;++d)if(c=l[d]){var f=yt(c,n);Dr(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Rt(r,this._parents,e,o)}function s1(){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=St(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 c1=0;function Rt(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Vd(){return++c1}var Dt=go.prototype;Rt.prototype={constructor:Rt,select:jN,selectAll:GN,selectChild:Dt.selectChild,selectChildren:Dt.selectChildren,filter:RN,merge:DN,selection:zN,transition:l1,call:Dt.call,nodes:Dt.nodes,node:Dt.node,size:Dt.size,empty:Dt.empty,each:Dt.each,on:FN,attr:wN,attrTween:vN,style:ZN,styleTween:e1,text:o1,textTween:a1,remove:KN,tween:pN,delay:AN,duration:PN,ease:$N,easeVarying:VN,end:s1,[Symbol.iterator]:Dt[Symbol.iterator]};function d1(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var u1={time:null,delay:0,duration:250,ease:d1};function f1(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 p1(e){var n,o;e instanceof Rt?(n=e._id,e=e._name):(n=Vd(),(o=u1).time=Ta(),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])&&Dr(c,e,n,d,l,o||f1(c,n));return new Rt(r,this._parents,e,n)}go.prototype.interrupt=dN,go.prototype.transition=p1;const Lr=e=>()=>e;function m1(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 Mt(e,n,o){this.k=e,this.x=n,this.y=o}Mt.prototype={constructor:Mt,scale:function(e){return e===1?this:new Mt(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new Mt(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 Un=new Mt(1,0,0);Mt.prototype;function Ra(e){e.stopImmediatePropagation()}function vo(e){e.preventDefault(),e.stopImmediatePropagation()}function g1(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function h1(){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 Rd(){return this.__zoom||Un}function y1(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function _1(){return navigator.maxTouchPoints||"ontouchstart"in this}function b1(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 w1(){var e=g1,n=h1,o=b1,r=y1,i=_1,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=Tr,d=br("start","zoom","end"),f,u,p,m=500,h=150,b=0,g=10;function _(x){x.property("__zoom",Rd).on("wheel.zoom",I,{passive:!1}).on("mousedown.zoom",P).on("dblclick.zoom",Y).filter(i).on("touchstart.zoom",K).on("touchmove.zoom",A).on("touchend.zoom touchcancel.zoom",z).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}_.transform=function(x,R,O,W){var G=x.selection?x.selection():x;G.property("__zoom",Rd),x!==G?k(x,R,O,W):G.interrupt().each(function(){E(this,arguments).event(W).start().zoom(null,typeof R=="function"?R.apply(this,arguments):R).end()})},_.scaleBy=function(x,R,O,W){_.scaleTo(x,function(){var G=this.__zoom.k,F=typeof R=="function"?R.apply(this,arguments):R;return G*F},O,W)},_.scaleTo=function(x,R,O,W){_.transform(x,function(){var G=n.apply(this,arguments),F=this.__zoom,V=O==null?N(G):typeof O=="function"?O.apply(this,arguments):O,D=F.invert(V),Q=typeof R=="function"?R.apply(this,arguments):R;return o(y(w(F,Q),V,D),G,l)},O,W)},_.translateBy=function(x,R,O,W){_.transform(x,function(){return o(this.__zoom.translate(typeof R=="function"?R.apply(this,arguments):R,typeof O=="function"?O.apply(this,arguments):O),n.apply(this,arguments),l)},null,W)},_.translateTo=function(x,R,O,W,G){_.transform(x,function(){var F=n.apply(this,arguments),V=this.__zoom,D=W==null?N(F):typeof W=="function"?W.apply(this,arguments):W;return o(Un.translate(D[0],D[1]).scale(V.k).translate(typeof R=="function"?-R.apply(this,arguments):-R,typeof O=="function"?-O.apply(this,arguments):-O),F,l)},W,G)};function w(x,R){return R=Math.max(a[0],Math.min(a[1],R)),R===x.k?x:new Mt(R,x.x,x.y)}function y(x,R,O){var W=R[0]-O[0]*x.k,G=R[1]-O[1]*x.k;return W===x.x&&G===x.y?x:new Mt(x.k,W,G)}function N(x){return[(+x[0][0]+ +x[1][0])/2,(+x[0][1]+ +x[1][1])/2]}function k(x,R,O,W){x.on("start.zoom",function(){E(this,arguments).event(W).start()}).on("interrupt.zoom end.zoom",function(){E(this,arguments).event(W).end()}).tween("zoom",function(){var G=this,F=arguments,V=E(G,F).event(W),D=n.apply(G,F),Q=O==null?N(D):typeof O=="function"?O.apply(G,F):O,ie=Math.max(D[1][0]-D[0][0],D[1][1]-D[0][1]),H=G.__zoom,re=typeof R=="function"?R.apply(G,F):R,U=c(H.invert(Q).concat(ie/H.k),re.invert(Q).concat(ie/re.k));return function(Z){if(Z===1)Z=re;else{var ee=U(Z),ne=ie/ee[2];Z=new Mt(ne,Q[0]-ee[0]*ne,Q[1]-ee[1]*ne)}V.zoom(null,Z)}})}function E(x,R,O){return!O&&x.__zooming||new $(x,R)}function $(x,R){this.that=x,this.args=R,this.active=0,this.sourceEvent=null,this.extent=n.apply(x,R),this.taps=0}$.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,R){return this.mouse&&x!=="mouse"&&(this.mouse[1]=R.invert(this.mouse[0])),this.touch0&&x!=="touch"&&(this.touch0[1]=R.invert(this.touch0[0])),this.touch1&&x!=="touch"&&(this.touch1[1]=R.invert(this.touch1[0])),this.that.__zoom=R,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(x){var R=gt(this.that).datum();d.call(x,this.that,new m1(x,{sourceEvent:this.sourceEvent,target:_,transform:this.that.__zoom,dispatch:d}),R)}};function I(x,...R){if(!e.apply(this,arguments))return;var O=E(this,R).event(x),W=this.__zoom,G=Math.max(a[0],Math.min(a[1],W.k*Math.pow(2,r.apply(this,arguments)))),F=Ct(x);if(O.wheel)(O.mouse[0][0]!==F[0]||O.mouse[0][1]!==F[1])&&(O.mouse[1]=W.invert(O.mouse[0]=F)),clearTimeout(O.wheel);else{if(W.k===G)return;O.mouse=[F,W.invert(F)],Mr(this),O.start()}vo(x),O.wheel=setTimeout(V,h),O.zoom("mouse",o(y(w(W,G),O.mouse[0],O.mouse[1]),O.extent,l));function V(){O.wheel=null,O.end()}}function P(x,...R){if(p||!e.apply(this,arguments))return;var O=x.currentTarget,W=E(this,R,!0).event(x),G=gt(x.view).on("mousemove.zoom",Q,!0).on("mouseup.zoom",ie,!0),F=Ct(x,O),V=x.clientX,D=x.clientY;ld(x.view),Ra(x),W.mouse=[F,this.__zoom.invert(F)],Mr(this),W.start();function Q(H){if(vo(H),!W.moved){var re=H.clientX-V,U=H.clientY-D;W.moved=re*re+U*U>b}W.event(H).zoom("mouse",o(y(W.that.__zoom,W.mouse[0]=Ct(H,O),W.mouse[1]),W.extent,l))}function ie(H){G.on("mousemove.zoom mouseup.zoom",null),sd(H.view,W.moved),vo(H),W.event(H).end()}}function Y(x,...R){if(e.apply(this,arguments)){var O=this.__zoom,W=Ct(x.changedTouches?x.changedTouches[0]:x,this),G=O.invert(W),F=O.k*(x.shiftKey?.5:2),V=o(y(w(O,F),W,G),n.apply(this,R),l);vo(x),s>0?gt(this).transition().duration(s).call(k,V,W,x):gt(this).call(_.transform,V,W,x)}}function K(x,...R){if(e.apply(this,arguments)){var O=x.touches,W=O.length,G=E(this,R,x.changedTouches.length===W).event(x),F,V,D,Q;for(Ra(x),V=0;V<W;++V)D=O[V],Q=Ct(D,this),Q=[Q,this.__zoom.invert(Q),D.identifier],G.touch0?!G.touch1&&G.touch0[2]!==Q[2]&&(G.touch1=Q,G.taps=0):(G.touch0=Q,F=!0,G.taps=1+!!f);f&&(f=clearTimeout(f)),F&&(G.taps<2&&(u=Q[0],f=setTimeout(function(){f=null},m)),Mr(this),G.start())}}function A(x,...R){if(this.__zooming){var O=E(this,R).event(x),W=x.changedTouches,G=W.length,F,V,D,Q;for(vo(x),F=0;F<G;++F)V=W[F],D=Ct(V,this),O.touch0&&O.touch0[2]===V.identifier?O.touch0[0]=D:O.touch1&&O.touch1[2]===V.identifier&&(O.touch1[0]=D);if(V=O.that.__zoom,O.touch1){var ie=O.touch0[0],H=O.touch0[1],re=O.touch1[0],U=O.touch1[1],Z=(Z=re[0]-ie[0])*Z+(Z=re[1]-ie[1])*Z,ee=(ee=U[0]-H[0])*ee+(ee=U[1]-H[1])*ee;V=w(V,Math.sqrt(Z/ee)),D=[(ie[0]+re[0])/2,(ie[1]+re[1])/2],Q=[(H[0]+U[0])/2,(H[1]+U[1])/2]}else if(O.touch0)D=O.touch0[0],Q=O.touch0[1];else return;O.zoom("touch",o(y(V,D,Q),O.extent,l))}}function z(x,...R){if(this.__zooming){var O=E(this,R).event(x),W=x.changedTouches,G=W.length,F,V;for(Ra(x),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),F=0;F<G;++F)V=W[F],O.touch0&&O.touch0[2]===V.identifier?delete O.touch0:O.touch1&&O.touch1[2]===V.identifier&&delete O.touch1;if(O.touch1&&!O.touch0&&(O.touch0=O.touch1,delete O.touch1),O.touch0)O.touch0[1]=this.__zoom.invert(O.touch0[0]);else if(O.end(),O.taps===2&&(V=Ct(V,this),Math.hypot(u[0]-V[0],u[1]-V[1])<g)){var D=gt(this).on("dblclick.zoom");D&&D.apply(this,arguments)}}}return _.wheelDelta=function(x){return arguments.length?(r=typeof x=="function"?x:Lr(+x),_):r},_.filter=function(x){return arguments.length?(e=typeof x=="function"?x:Lr(!!x),_):e},_.touchable=function(x){return arguments.length?(i=typeof x=="function"?x:Lr(!!x),_):i},_.extent=function(x){return arguments.length?(n=typeof x=="function"?x:Lr([[+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?(b=(x=+x)*x,_):Math.sqrt(b)},_.tapDistance=function(x){return arguments.length?(g=+x,_):g},_}var ge=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ge||{}),Da=(e=>(e.Partial="partial",e.Full="full",e))(Da||{}),un=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(un||{}),jt=(e=>(e.Strict="strict",e.Loose="loose",e))(jt||{}),Fr=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(Fr||{}),So=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(So||{}),Dd=(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))(Dd||{});const E1=["INPUT","SELECT","TEXTAREA"],k1=typeof document<"u"?document:null;function Ma(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 E1.includes(r==null?void 0:r.nodeName)||i||!!a}function C1(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Md(e,n,o,r){const i=n.replace("+",`
21
14
  `).replace(`
22
15
 
23
16
  `,`
24
17
  +`).split(`
25
- `).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===t.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 h1(e,t){return o=>{if(!o.code&&!o.key)return!1;const r=y1(o.code,e);return Array.isArray(e)?e.some(i=>ou(o[r],i,t,o.type==="keyup")):ou(o[r],e,t,o.type==="keyup")}}function y1(e,t){return t.includes(e)?"code":"key"}function Oo(e,t){const o=n.computed(()=>n.toValue(t==null?void 0:t.target)??m1),r=n.shallowRef(n.toValue(e)===!0);let i=!1;const a=new Set;let l=c(n.toValue(e));n.watch(()=>n.toValue(e),(d,f)=>{typeof f=="boolean"&&typeof d!="boolean"&&s(),l=c(d)},{immediate:!0}),dd(["blur","contextmenu"],s),ud((...d)=>l(...d),d=>{var f,u;const p=n.toValue(t==null?void 0:t.actInsideInputWithModifier)??!0,m=n.toValue(t==null?void 0:t.preventDefault)??!1;if(i=g1(d),(!i||i&&!p)&&Ya(d))return;const _=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,h=(_==null?void 0:_.nodeName)==="BUTTON"||(_==null?void 0:_.nodeName)==="A";!m&&(i||!h)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),ud((...d)=>l(...d),d=>{const f=n.toValue(t==null?void 0:t.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&Ya(d))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=n.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"?h1(d,a):d}return r}const ru="vue-flow__node-desc",iu="vue-flow__edge-desc",_1="vue-flow__aria-live",au=["Enter"," ","Escape"],qn={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Xr(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Zr(e,t){const o=Math.max(0,Math.min(e.x+e.width,t.x+t.width)-Math.max(e.x,t.x)),r=Math.max(0,Math.min(e.y+e.height,t.y+t.height)-Math.max(e.y,t.y));return Math.ceil(o*r)}function Jr(e){return{width:e.offsetWidth,height:e.offsetHeight}}function mn(e,t=0,o=1){return Math.min(Math.max(e,t),o)}function lu(e,t){return{x:mn(e.x,t[0][0],t[1][0]),y:mn(e.y,t[0][1],t[1][1])}}function su(e){const t=e.getRootNode();return"elementFromPoint"in t?t:window.document}function jt(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function gn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!jt(e)}function $o(e){return gn(e)&&"computedPosition"in e}function Qr(e){return!Number.isNaN(e)&&Number.isFinite(e)}function b1(e){return Qr(e.width)&&Qr(e.height)&&Qr(e.x)&&Qr(e.y)}function w1(e,t,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:n.markRaw({width:0,height:0}),computedPosition:n.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:Me(e.data)?e.data:{},events:n.markRaw(Me(e.events)?e.events:{})};return Object.assign(t??r,e,{id:e.id.toString(),parentNode:o})}function cu(e,t,o){var r,i;const a={id:e.id.toString(),type:e.type??(t==null?void 0:t.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:Me(e.data)?e.data:{},events:n.markRaw(Me(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(t??a,e,{id:e.id.toString()})}function du(e,t,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 t.filter(s=>a.has(s.id))}function E1(...e){if(e.length===3){const[a,l,s]=e;return du(a,l,s,"target")}const[t,o]=e,r=typeof t=="string"?t:t.id;return o.filter(a=>jt(a)&&a.source===r).map(a=>o.find(l=>gn(l)&&l.id===a.target))}function k1(...e){if(e.length===3){const[a,l,s]=e;return du(a,l,s,"source")}const[t,o]=e,r=typeof t=="string"?t:t.id;return o.filter(a=>jt(a)&&a.target===r).map(a=>o.find(l=>gn(l)&&l.id===a.source))}function uu({source:e,sourceHandle:t,target:o,targetHandle:r}){return`vueflow__edge-${e}${t??""}-${o}${r??""}`}function C1(e,t){return t.some(o=>jt(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 Wa({x:e,y:t},{x:o,y:r,zoom:i}){return{x:e*i+o,y:t*i+r}}function Bo({x:e,y:t},{x:o,y:r,zoom:i},a=!1,l=[1,1]){const s={x:(e-o)/i,y:(t-r)/i};return a?ti(s,l):s}function v1(e,t){return{x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}}function fu({x:e,y:t,width:o,height:r}){return{x:e,y:t,x2:e+o,y2:t+r}}function N1({x:e,y:t,x2:o,y2:r}){return{x:e,y:t,width:o-e,height:r-t}}function pu(e){let t={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];t=v1(t,fu({...r.computedPosition,...r.dimensions}))}return N1(t)}function mu(e,t,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Bo(t,o),width:t.width/o.zoom,height:t.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:d=!0,hidden:f=!1}=s,u=c.width??s.width??null,p=c.height??s.height??null;if(i&&!d||f)continue;const m=Zr(a,Xr(s)),g=u===null||p===null,_=r&&m>0,h=(u??0)*(p??0);(g||_||m>=h||s.dragging)&&l.push(s)}return l}function gu(e,t){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 t.filter(r=>o.has(r.source)||o.has(r.target))}function hu(e,t,o,r,i,a=.1,l={x:0,y:0}){const s=t/(e.width*(1+a)),c=o/(e.height*(1+a)),d=Math.min(s,c),f=mn(d,r,i),u=e.x+e.width/2,p=e.y+e.height/2,m=t/2-u*f+(l.x??0),g=o/2-p*f+(l.y??0);return{x:m,y:g,zoom:f}}function S1(e,t){return{x:t.x+e.x,y:t.y+e.y,z:(e.z>t.z?e.z:t.z)+1}}function yu(e,t){if(!e.parentNode)return!1;const o=t(e.parentNode);return o?o.selected?!0:yu(o,t):!1}function Vo(e,t){return typeof e>"u"?"":typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function _u(e,t,o){return e<t?mn(Math.abs(e-t),1,t)/t:e>o?-mn(Math.abs(e-o),1,t)/t:0}function bu(e,t,o=15,r=40){const i=_u(e.x,r,t.width-r)*o,a=_u(e.y,r,t.height-r)*o;return[i,a]}function Xa(e,t){if(t){const o=e.position.x+e.dimensions.width-t.dimensions.width,r=e.position.y+e.dimensions.height-t.dimensions.height;if(o>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof t.style=="function"?i={...t.style(t)}:t.style&&(i={...t.style}),i.width=i.width??`${t.dimensions.width}px`,i.height=i.height??`${t.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(t.position.x=t.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(t.position.y=t.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}t.dimensions.width=Number(i.width.toString().replace("px","")),t.dimensions.height=Number(i.height.toString().replace("px","")),typeof t.style=="function"?t.style=a=>{const l=t.style;return{...l(a),...i}}:t.style={...t.style,...i}}}}function wu(e,t){var o,r;const i=e.filter(l=>l.type==="add"||l.type==="remove");for(const l of i)if(l.type==="add")t.findIndex(c=>c.id===l.item.id)===-1&&t.push(l.item);else if(l.type==="remove"){const s=t.findIndex(c=>c.id===l.id);s!==-1&&t.splice(s,1)}const a=t.map(l=>l.id);for(const l of t)for(const s of e)if(s.id===l.id)switch(s.type){case"select":l.selected=s.selected;break;case"position":if($o(l)&&(typeof s.position<"u"&&(l.position=s.position),typeof s.dragging<"u"&&(l.dragging=s.dragging),l.expandParent&&l.parentNode)){const c=t[a.indexOf(l.parentNode)];c&&$o(c)&&Xa(l,c)}break;case"dimensions":if($o(l)&&(typeof s.dimensions<"u"&&(l.dimensions=s.dimensions),typeof s.updateStyle<"u"&&s.updateStyle&&(l.style={...l.style||{},width:`${(o=s.dimensions)==null?void 0:o.width}px`,height:`${(r=s.dimensions)==null?void 0:r.height}px`}),typeof s.resizing<"u"&&(l.resizing=s.resizing),l.expandParent&&l.parentNode)){const c=t[a.indexOf(l.parentNode)];c&&$o(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Xa(l,c):n.nextTick(()=>{Xa(l,c)}))}break}return t}function Gt(e,t){return{id:e,type:"select",selected:t}}function Eu(e){return{item:e,type:"add"}}function ku(e){return{id:e,type:"remove"}}function Cu(e,t,o,r,i){return{id:e,source:t,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function qt(e,t=new Set,o=!1){const r=[];for(const[i,a]of e){const l=t.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(o&&(a.selected=l),r.push(Gt(a.id,l)))}return r}function me(e){const t=new Set;let o=!1;const r=()=>t.size>0;e&&(o=!0,t.add(e));const i=s=>{t.delete(s)};return{on:s=>{e&&o&&t.delete(e),t.add(s);const c=()=>{i(s),e&&o&&t.add(e)};return xr(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(t).map(c=>c(s))),hasListeners:r,fns:t}}function vu(e,t,o){let r=e;do{if(r&&r.matches(t))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function x1(e,t,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!yu(c,r))&&(c.draggable||t&&typeof c.draggable>"u")&&s.push(n.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 Za({id:e,dragItems:t,findNode:o}){const r=[];for(const i of t){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function Nu(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 A1(e,t,o){const[r,i,a,l]=typeof e!="string"?Nu(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 T1(e,t,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=A1(i,e,r);a&&(i=a)}else t(new Ge(De.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=Nu(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 I1({width:e,height:t},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(t||0)]]}function Ja(e,t,o,r,i){const a=I1(e.dimensions,T1(e,o,r,i)),l=lu(t,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 zn(e,t,o=ge.Left,r=!1){const i=((t==null?void 0:t.x)??0)+e.computedPosition.x,a=((t==null?void 0:t.y)??0)+e.computedPosition.y,{width:l,height:s}=t??B1(e);if(r)return{x:i+l/2,y:a+s/2};switch((t==null?void 0:t.position)??o){case ge.Top:return{x:i+l/2,y:a};case ge.Right:return{x:i+l,y:a+s/2};case ge.Bottom:return{x:i+l/2,y:a+s};case ge.Left:return{x:i,y:a+s/2}}}function Su(e,t){return e&&(t?e.find(o=>o.id===t):e[0])||null}function P1({sourcePos:e,targetPos:t,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const d={x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x+o,t.x+i),y2:Math.max(e.y+r,t.y+a)};d.x===d.x2&&(d.x2+=1),d.y===d.y2&&(d.y2+=1);const f=fu({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 O1(e,t,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=t(e.source),l=t(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var De=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(De||{});const xu={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
18
+ `).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 N1(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=v1(o.code,e);return Array.isArray(e)?e.some(i=>Md(o[r],i,n,o.type==="keyup")):Md(o[r],e,n,o.type==="keyup")}}function v1(e,n){return n.includes(e)?"code":"key"}function xo(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??k1),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}),qc(["blur","contextmenu"],s),zc((...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=C1(d),(!i||i&&!p)&&Ma(d))return;const b=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,g=(b==null?void 0:b.nodeName)==="BUTTON"||(b==null?void 0:b.nodeName)==="A";!m&&(i||!g)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),zc((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&Ma(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"?N1(d,a):d}return r}const Ld="vue-flow__node-desc",Fd="vue-flow__edge-desc",S1="vue-flow__aria-live",Ud=["Enter"," ","Escape"],Kn={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function Ur(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function Kr(e,n){const o=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),r=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(o*r)}function jr(e){return{width:e.offsetWidth,height:e.offsetHeight}}function fn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function Kd(e,n){return{x:fn(e.x,n[0][0],n[1][0]),y:fn(e.y,n[0][1],n[1][1])}}function jd(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function Gt(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function pn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!Gt(e)}function Ao(e){return pn(e)&&"computedPosition"in e}function Gr(e){return!Number.isNaN(e)&&Number.isFinite(e)}function x1(e){return Gr(e.width)&&Gr(e.height)&&Gr(e.x)&&Gr(e.y)}function A1(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:Me(e.data)?e.data:{},events:t.markRaw(Me(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Gd(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:Me(e.data)?e.data:{},events:t.markRaw(Me(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 qd(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 I1(...e){if(e.length===3){const[a,l,s]=e;return qd(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>Gt(a)&&a.source===r).map(a=>o.find(l=>pn(l)&&l.id===a.target))}function T1(...e){if(e.length===3){const[a,l,s]=e;return qd(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>Gt(a)&&a.target===r).map(a=>o.find(l=>pn(l)&&l.id===a.source))}function zd({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function P1(e,n){return n.some(o=>Gt(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 La({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function Io({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?zr(s,l):s}function O1(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 Hd({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function $1({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Yd(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=O1(n,Hd({...r.computedPosition,...r.dimensions}))}return $1(n)}function Wd(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Io(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=Kr(a,Ur(s)),h=u===null||p===null,b=r&&m>0,g=(u??0)*(p??0);(h||b||m>=g||s.dragging)&&l.push(s)}return l}function Xd(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 Zd(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=fn(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 B1(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function Jd(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:Jd(o,n):!1}function To(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function Qd(e,n,o){return e<n?fn(Math.abs(e-n),1,n)/n:e>o?-fn(Math.abs(e-o),1,n)/n:0}function eu(e,n,o=15,r=40){const i=Qd(e.x,r,n.width-r)*o,a=Qd(e.y,r,n.height-r)*o;return[i,a]}function Fa(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 tu(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(Ao(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&&Ao(c)&&Fa(l,c)}break;case"dimensions":if(Ao(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&&Ao(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Fa(l,c):t.nextTick(()=>{Fa(l,c)}))}break}return n}function qt(e,n){return{id:e,type:"select",selected:n}}function nu(e){return{item:e,type:"add"}}function ou(e){return{id:e,type:"remove"}}function ru(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function zt(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(qt(a.id,l)))}return r}function me(e){const n=new Set;let o=!1;const r=()=>n.size>0;e&&(o=!0,n.add(e));const i=s=>{n.delete(s)};return{on:s=>{e&&o&&n.delete(e),n.add(s);const c=()=>{i(s),e&&o&&n.add(e)};return _r(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function iu(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 V1(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!Jd(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 Ua({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 au(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 R1(e,n,o){const[r,i,a,l]=typeof e!="string"?au(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 D1(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=R1(i,e,r);a&&(i=a)}else n(new Ge(De.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=au(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 M1({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function Ka(e,n,o,r,i){const a=M1(e.dimensions,D1(e,o,r,i)),l=Kd(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 jn(e,n,o=ge.Left,r=!1){const i=((n==null?void 0:n.x)??0)+e.computedPosition.x,a=((n==null?void 0:n.y)??0)+e.computedPosition.y,{width:l,height:s}=n??K1(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case ge.Top:return{x:i+l/2,y:a};case ge.Right:return{x:i+l,y:a+s/2};case ge.Bottom:return{x:i+l/2,y:a+s};case ge.Left:return{x:i,y:a+s/2}}}function lu(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function L1({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=Hd({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 F1(e,n,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=n(e.source),l=n(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var De=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(De||{});const su={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
26
19
  Node: ${e}`,NODE_NOT_FOUND:e=>`Node not found
27
- Node: ${e}`,NODE_MISSING_PARENT:(e,t)=>`Node is missing a parent
20
+ Node: ${e}`,NODE_MISSING_PARENT:(e,n)=>`Node is missing a parent
28
21
  Node: ${e}
29
- Parent: ${t}`,NODE_TYPE_MISSING:e=>`Node type is missing
22
+ Parent: ${n}`,NODE_TYPE_MISSING:e=>`Node type is missing
30
23
  Type: ${e}`,NODE_EXTENT_INVALID:e=>`Only child nodes can use a parent extent
31
24
  Node: ${e}`,EDGE_INVALID:e=>`An edge needs a source and a target
32
- Edge: ${e}`,EDGE_SOURCE_MISSING:(e,t)=>`Edge source is missing
25
+ Edge: ${e}`,EDGE_SOURCE_MISSING:(e,n)=>`Edge source is missing
33
26
  Edge: ${e}
34
- Source: ${t}`,EDGE_TARGET_MISSING:(e,t)=>`Edge target is missing
27
+ Source: ${n}`,EDGE_TARGET_MISSING:(e,n)=>`Edge target is missing
35
28
  Edge: ${e}
36
- Target: ${t}`,EDGE_TYPE_MISSING:e=>`Edge type is missing
37
- Type: ${e}`,EDGE_SOURCE_TARGET_SAME:(e,t,o)=>`Edge source and target are the same
29
+ Target: ${n}`,EDGE_TYPE_MISSING:e=>`Edge type is missing
30
+ Type: ${e}`,EDGE_SOURCE_TARGET_SAME:(e,n,o)=>`Edge source and target are the same
38
31
  Edge: ${e}
39
- Source: ${t}
40
- Target: ${o}`,EDGE_SOURCE_TARGET_MISSING:(e,t,o)=>`Edge source or target is missing
32
+ Source: ${n}
33
+ Target: ${o}`,EDGE_SOURCE_TARGET_MISSING:(e,n,o)=>`Edge source or target is missing
41
34
  Edge: ${e}
42
- Source: ${t}
35
+ Source: ${n}
43
36
  Target: ${o}`,EDGE_ORPHANED:e=>`Edge was orphaned (suddenly missing source or target) and has been removed
44
37
  Edge: ${e}`,EDGE_NOT_FOUND:e=>`Edge not found
45
- 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 Ge extends Error{constructor(t,...o){var r;super((r=xu[t])==null?void 0:r.call(xu,...o)),this.name="VueFlowError",this.code=t,this.args=o}}function Qa(e){return"clientX"in e}function $1(e){return"sourceEvent"in e}function xt(e,t){const o=Qa(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-((t==null?void 0:t.left)??0),y:i-((t==null?void 0:t.top)??0)}}const ei=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function B1(e){var t,o;return{width:((t=e.dimensions)==null?void 0:t.width)??e.width??0,height:((o=e.dimensions)==null?void 0:o.height)??e.height??0}}function ti(e,t=[1,1]){return{x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}}const V1=()=>!0;function el(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function R1(e,t,o){const r=[],i={x:e.x-o,y:e.y-o,width:o*2,height:o*2};for(const a of t.values())Zr(i,Xr(a))>0&&r.push(a);return r}const D1=250;function M1(e,t,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=R1(e,o,t+D1);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}=zn(d,u,u.position,!0),g=Math.sqrt((p-e.x)**2+(m-e.y)**2);g>t||(g<s?(l=[{...u,x:p,y:m}],s=g):g===s&&l.push({...u,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const d=r.type==="source"?"target":"source";return l.find(f=>f.type===d)??l[0]}return l[0]}function Au(e,{handle:t,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=V1},f,u,p){const m=a==="target",g=t?l.querySelector(`.${s}-flow__handle[data-id="${c}-${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`):null,{x:_,y:h}=xt(e),b=l.elementFromPoint(_,h),w=b!=null&&b.classList.contains(`${s}-flow__handle`)?b:g,y={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const v=Tu(void 0,w),k=w.getAttribute("data-nodeid"),E=w.getAttribute("data-handleid"),R=w.classList.contains("connectable"),O=w.classList.contains("connectableend");if(!k||!v)return y;const T={source:m?k:r,sourceHandle:m?E:i,target:m?r:k,targetHandle:m?i:E};y.connection=T;const j=R&&O&&(o===Kt.Strict?m&&v==="source"||!m&&v==="target":k!==r||E!==i);y.isValid=j&&d(T,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(k)}),y.toHandle=t}return y}function Tu(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function F1(e,t){let o=null;return t?o="valid":e&&!t&&(o="invalid"),o}function L1(e,t){let o=null;return t?o=!0:e&&!t&&(o=!1),o}function U1(e,t,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===Kt.Strict?(l=d.handleBounds)==null?void 0:l[t]:[...((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,...zn(d,u,u.position,!0)}:u}const tl={[ge.Left]:ge.Right,[ge.Right]:ge.Left,[ge.Top]:ge.Bottom,[ge.Bottom]:ge.Top},K1=["production","prod"];function ni(e,...t){Iu()&&console.warn(`[Vue Flow]: ${e}`,...t)}function Iu(){return!K1.includes(process.env.NODE_ENV||"")}function Pu(e,t,o,r,i){const a=t.querySelectorAll(`.vue-flow__handle.${e}`);return a!=null&&a.length?Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-o.left)/r,y:(s.top-o.top)/r,...Jr(l)}}):null}function nl(e,t,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&t)&&(r([e]),n.nextTick(()=>{l.blur()})):o([e])}function Me(e){return typeof n.unref(e)<"u"}function j1(e,t,o,r){if(!e||!e.source||!e.target)return o(new Ge(De.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return jt(e)?i=e:i={...e,id:uu(e)},i=cu(i,void 0,r),C1(i,t)?!1:i}function G1(e,t,o,r,i){if(!t.source||!t.target)return i(new Ge(De.EDGE_INVALID,e.id)),!1;if(!o)return i(new Ge(De.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?uu(t):a,source:t.source,target:t.target,sourceHandle:t.sourceHandle,targetHandle:t.targetHandle}}function Ou(e,t,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!gn(l)){o(new Ge(De.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=w1(l,t(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=t(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new Ge(De.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function $u(e,t,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,t)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,t)),a){l=`${i}-${e}-${a}`;const d=r.get(l)||new Map;r.set(l,d.set(o,t))}}function ol(e,t,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}`;$u("source",c,f,e,i,l),$u("target",c,d,e,a,s)}}function Bu(e,t){if(e.size!==t.size)return!1;for(const o of e)if(!t.has(o))return!1;return!0}function rl(e,t,o,r,i,a,l,s){const c=[];for(const d of e){const f=jt(d)?d:j1(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new Ge(De.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new Ge(De.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new Ge(De.EDGE_TARGET_MISSING,f.id,f.target));continue}if(t&&!t(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new Ge(De.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...cu(f,m,a),sourceNode:u,targetNode:p})}return c}const Vu=Symbol("vueFlow"),Ru=Symbol("nodeId"),Du=Symbol("nodeRef"),q1=Symbol("edgeId"),z1=Symbol("edgeRef"),oi=Symbol("slots");function Mu(e){const{vueFlowRef:t,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:g,nodesSelectionActive:_,selectNodesOnDrag:h,removeSelectedElements:b,addSelectedNodes:w,updateNodePositions:y,emits:v}=Te(),{onStart:k,onDrag:E,onStop:R,onClick:O,el:T,disabled:q,id:j,selectable:A,dragHandle:I}=e,C=n.shallowRef(!1);let D=[],P,L=null,F={x:void 0,y:void 0},B={x:0,y:0},$=null,G=!1,ee=0,re=!1;const J=W1(),ne=({x:de,y:Y})=>{F={x:de,y:Y};let te=!1;if(D=D.map(N=>{const S={x:de-N.distance.x,y:Y-N.distance.y},{computedPosition:x}=Ja(N,o.value?ti(S,r.value):S,v.error,l.value,N.parentNode?m(N.parentNode):void 0);return te=te||N.position.x!==x.x||N.position.y!==x.y,N.position=x,N}),!!te&&(y(D,!0,!0),C.value=!0,$)){const[N,S]=Za({id:j,dragItems:D,findNode:m});E({event:$,node:N,nodes:S})}},z=()=>{if(!L)return;const[de,Y]=bu(B,L,f.value);if(de!==0||Y!==0){const te={x:(F.x??0)-de/c.value.zoom,y:(F.y??0)-Y/c.value.zoom};p({x:de,y:Y})&&ne(te)}ee=requestAnimationFrame(z)},Z=(de,Y)=>{G=!0;const te=m(j);!h.value&&!g.value&&te&&(te.selected||b()),te&&n.toValue(A)&&h.value&&nl(te,g.value,w,b,_,!1,Y);const N=J(de.sourceEvent);if(F=N,D=x1(a.value,u.value,N,m,j),D.length){const[S,x]=Za({id:j,dragItems:D,findNode:m});k({event:de.sourceEvent,node:S,nodes:x})}},ie=(de,Y)=>{var te;de.sourceEvent.type==="touchmove"&&de.sourceEvent.touches.length>1||(s.value===0&&Z(de,Y),F=J(de.sourceEvent),L=((te=t.value)==null?void 0:te.getBoundingClientRect())||null,B=xt(de.sourceEvent,L))},oe=(de,Y)=>{const te=J(de.sourceEvent);if(!re&&G&&d.value&&(re=!0,z()),!G){const N=te.xSnapped-(F.x??0),S=te.ySnapped-(F.y??0);Math.sqrt(N*N+S*S)>s.value&&Z(de,Y)}(F.x!==te.xSnapped||F.y!==te.ySnapped)&&D.length&&G&&($=de.sourceEvent,B=xt(de.sourceEvent,L),ne(te))},ue=de=>{let Y=!1;if(!G&&!C.value&&!g.value){const te=de.sourceEvent,N=J(te),S=N.xSnapped-(F.x??0),x=N.ySnapped-(F.y??0),V=Math.sqrt(S*S+x*x);V!==0&&V<=s.value&&(O==null||O(te),Y=!0)}if(D.length&&!Y){y(D,!1,!1);const[te,N]=Za({id:j,dragItems:D,findNode:m});R({event:de.sourceEvent,node:te,nodes:N})}D=[],C.value=!1,re=!1,G=!1,F={x:void 0,y:void 0},cancelAnimationFrame(ee)};return n.watch([()=>n.toValue(q),T],([de,Y],te,N)=>{if(Y){const S=gt(Y);de||(P=bv().on("start",x=>ie(x,Y)).on("drag",x=>oe(x,Y)).on("end",x=>ue(x)).filter(x=>{const V=x.target,M=n.toValue(I);return!x.button&&(!i.value||!vu(V,`.${i.value}`,Y)&&(!M||vu(V,M,Y)))}),S.call(P)),N(()=>{S.on(".drag",null),P&&(P.on("start",null),P.on("drag",null),P.on("end",null))})}}),C}function H1(){return{doubleClick:me(),click:me(),mouseEnter:me(),mouseMove:me(),mouseLeave:me(),contextMenu:me(),updateStart:me(),update:me(),updateEnd:me()}}function Y1(e,t){const o=H1();return o.doubleClick.on(r=>{var i,a;t.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;t.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;t.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;t.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;t.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;t.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;t.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;t.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;t.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 W1(){const{viewport:e,snapGrid:t,snapToGrid:o,vueFlowRef:r}=Te();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=$1(i)?i.sourceEvent:i,{x:c,y:d}=xt(s,l),f=Bo({x:c,y:d},e.value),{x:u,y:p}=o.value?ti(f,t.value):f;return{xSnapped:u,ySnapped:p,...f}}}function ri(){return!0}function Fu({handleId:e,nodeId:t,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:g,autoPanSpeed:_,findNode:h,panBy:b,startConnection:w,updateConnection:y,endConnection:v,emits:k,viewport:E,edges:R,nodes:O,isValidConnection:T,nodeLookup:q}=Te();let j=null,A=!1,I=null;function C(P){var L;const F=n.toValue(o)==="target",B=Qa(P),$=su(P.target);if(B&&P.button===0||!B){let G=function(W){N=xt(W,de),ne=M1(Bo(N,E.value,!1,[1,1]),f.value,q.value,V),S||(x(),S=!0);const K=Au(W,{handle:ne,connectionMode:d.value,fromNodeId:n.toValue(t),fromHandleId:n.toValue(e),fromType:F?"target":"source",isValidConnection:J,doc:$,lib:"vue",flowId:s,nodeLookup:q.value},R.value,O.value,h);I=K.handleDomNode,j=K.connection,A=L1(!!ne,K.isValid);const le={...U,isValid:A,to:K.toHandle&&A?Wa({x:K.toHandle.x,y:K.toHandle.y},E.value):N,toHandle:K.toHandle,toPosition:A&&K.toHandle?K.toHandle.position:tl[V.position],toNode:K.toHandle?q.value.get(K.toHandle.nodeId):null};if(!(A&&ne&&(U!=null&&U.toHandle)&&le.toHandle&&U.toHandle.type===le.toHandle.type&&U.toHandle.nodeId===le.toHandle.nodeId&&U.toHandle.id===le.toHandle.id&&U.to.x===le.to.x&&U.to.y===le.to.y)){if(y(ne&&A?Wa({x:ne.x,y:ne.y},E.value):N,K.toHandle,F1(!!ne,A)),U=le,!ne&&!A&&!I)return el(te);j&&j.source!==j.target&&I&&(el(te),te=I,I.classList.add("connecting","vue-flow__handle-connecting"),I.classList.toggle("valid",!!A),I.classList.toggle("vue-flow__handle-valid",!!A))}},ee=function(W){(ne||I)&&j&&A&&(a?a(W,j):k.connect(j)),k.connectEnd(W),i&&(l==null||l(W)),el(te),cancelAnimationFrame(z),v(W),S=!1,A=!1,j=null,I=null,$.removeEventListener("mousemove",G),$.removeEventListener("mouseup",ee),$.removeEventListener("touchmove",G),$.removeEventListener("touchend",ee)};const re=h(n.toValue(t));let J=n.toValue(r)||T.value||ri;!J&&re&&(J=(F?re.isValidSourcePos:re.isValidTargetPos)||ri);let ne,z=0;const{x:Z,y:ie}=xt(P),oe=$==null?void 0:$.elementFromPoint(Z,ie),ue=Tu(n.toValue(i),oe),de=(L=c.value)==null?void 0:L.getBoundingClientRect();if(!de||!ue)return;const Y=U1(n.toValue(t),ue,n.toValue(e),q.value,d.value);if(!Y)return;let te,N=xt(P,de),S=!1;const x=()=>{if(!g.value)return;const[W,K]=bu(N,de,_.value);b({x:W,y:K}),z=requestAnimationFrame(x)},V={...Y,nodeId:n.toValue(t),type:ue,position:Y.position},M=q.value.get(n.toValue(t)),Q={inProgress:!0,isValid:null,from:zn(M,V,ge.Left,!0),fromHandle:V,fromPosition:V.position,fromNode:M,to:N,toHandle:null,toPosition:tl[V.position],toNode:null};w({nodeId:n.toValue(t),id:n.toValue(e),type:ue,position:(oe==null?void 0:oe.getAttribute("data-handlepos"))||ge.Top,...N},{x:Z-de.left,y:ie-de.top}),k.connectStart({event:P,nodeId:n.toValue(t),handleId:n.toValue(e),handleType:ue});let U=Q;$.addEventListener("mousemove",G),$.addEventListener("mouseup",ee),$.addEventListener("touchmove",G),$.addEventListener("touchend",ee)}}function D(P){var L,F;if(!u.value)return;const B=n.toValue(o)==="target";if(!p.value){k.clickConnectStart({event:P,nodeId:n.toValue(t),handleId:n.toValue(e)}),w({nodeId:n.toValue(t),type:n.toValue(o),id:n.toValue(e),position:ge.Top,...xt(P)},void 0,!0);return}let $=n.toValue(r)||T.value||ri;const G=h(n.toValue(t));if(!$&&G&&($=(B?G.isValidSourcePos:G.isValidTargetPos)||ri),G&&(typeof G.connectable>"u"?m.value:G.connectable)===!1)return;const ee=su(P.target),re=Au(P,{handle:{nodeId:n.toValue(t),id:n.toValue(e),type:n.toValue(o),position:ge.Top,...xt(P)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:$,doc:ee,lib:"vue",flowId:s,nodeLookup:q.value},R.value,O.value,h),J=((L=re.connection)==null?void 0:L.source)===((F=re.connection)==null?void 0:F.target);re.isValid&&re.connection&&!J&&k.connect(re.connection),k.clickConnectEnd(P),v(P,!0)}return{handlePointerDown:C,handleClick:D}}function X1(){return n.inject(Ru,"")}function Lu(e){const t=e??X1()??"",o=n.inject(Du,n.ref(null)),{findNode:r,edges:i,emits:a}=Te(),l=r(t);return l||a.error(new Ge(De.NODE_NOT_FOUND,t)),{id:t,nodeEl:o,node:l,parentNode:n.computed(()=>r(l.parentNode)),connectedEdges:n.computed(()=>gu([l],i.value))}}function Z1(){return{doubleClick:me(),click:me(),mouseEnter:me(),mouseMove:me(),mouseLeave:me(),contextMenu:me(),dragStart:me(),drag:me(),dragStop:me()}}function J1(e,t){const o=Z1();return o.doubleClick.on(r=>{var i,a;t.nodeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;t.nodeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;t.nodeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;t.nodeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;t.nodeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;t.nodeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.dragStart.on(r=>{var i,a;t.nodeDragStart(r),(a=(i=e.events)==null?void 0:i.dragStart)==null||a.call(i,r)}),o.drag.on(r=>{var i,a;t.nodeDrag(r),(a=(i=e.events)==null?void 0:i.drag)==null||a.call(i,r)}),o.dragStop.on(r=>{var i,a;t.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 Uu(){const{getSelectedNodes:e,nodeExtent:t,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Te();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,g=c.y*u*p,_=[];for(const h of e.value)if(h.draggable||l&&typeof h.draggable>"u"){const b={x:h.computedPosition.x+m,y:h.computedPosition.y+g},{computedPosition:w}=Ja(h,b,s.error,t.value,h.parentNode?r(h.parentNode):void 0);_.push({id:h.id,position:w,from:h.position,distance:{x:c.x,y:c.y},dimensions:h.dimensions})}o(_,!0,!1)}}const il=.1,Q1=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function zt(){return ni("Viewport not initialized yet."),Promise.resolve(!1)}const eS={zoomIn:zt,zoomOut:zt,zoomTo:zt,fitView:zt,setCenter:zt,fitBounds:zt,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:zt,setTransform:zt,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function tS(e){function t(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?No:Fr).scaleBy(al(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}=lu({x:-r,y:-i},e.translateExtent),u=Gn.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?No:Fr).transform(al(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),u):s(!1)})}return n.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>t(1.2,i),zoomOut:i=>t(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?No:Fr).scaleTo(al(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:il,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=pu(s),{x:d,y:f,zoom:u}=hu(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??il,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:il})=>{const{x:l,y:s,zoom:c}=hu(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>Bo(i,e.viewport,e.snapToGrid,e.snapGrid),screenToFlowCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x-a,y:i.y-l};return Bo(s,e.viewport,e.snapToGrid,e.snapGrid)}return{x:0,y:0}},flowToScreenCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x+a,y:i.y+l};return Wa(s,e.viewport)}return{x:0,y:0}}}:eS)}function al(e,t=0,o=Q1,r=()=>{}){const i=typeof t=="number"&&t>0;return i||r(),i?e.transition().duration(t).ease(o).on("end",r):e}function nS(e,t,o){const r=n.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let _,h,b=!!(o.nodes.value.length||o.edges.value.length);_=Fn([e.modelValue,()=>{var w,y;return(y=(w=e.modelValue)==null?void 0:w.value)==null?void 0:y.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setElements(w),!h&&!b&&w.length?b=!0:h==null||h.resume())}),h=Fn([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,y])=>{var v;(v=e.modelValue)!=null&&v.value&&Array.isArray(e.modelValue.value)&&(_==null||_.pause(),e.modelValue.value=[...w,...y],n.nextTick(()=>{_==null||_.resume()}))},{immediate:b}),n.onScopeDispose(()=>{_==null||_.stop(),h==null||h.stop()})})},a=()=>{r.run(()=>{let _,h,b=!!o.nodes.value.length;_=Fn([e.nodes,()=>{var w,y;return(y=(w=e.nodes)==null?void 0:w.value)==null?void 0:y.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setNodes(w),!h&&!b&&w.length?b=!0:h==null||h.resume())}),h=Fn([o.nodes,()=>o.nodes.value.length],([w])=>{var y;(y=e.nodes)!=null&&y.value&&Array.isArray(e.nodes.value)&&(_==null||_.pause(),e.nodes.value=[...w],n.nextTick(()=>{_==null||_.resume()}))},{immediate:b}),n.onScopeDispose(()=>{_==null||_.stop(),h==null||h.stop()})})},l=()=>{r.run(()=>{let _,h,b=!!o.edges.value.length;_=Fn([e.edges,()=>{var w,y;return(y=(w=e.edges)==null?void 0:w.value)==null?void 0:y.length}],([w])=>{w&&Array.isArray(w)&&(h==null||h.pause(),o.setEdges(w),!h&&!b&&w.length?b=!0:h==null||h.resume())}),h=Fn([o.edges,()=>o.edges.value.length],([w])=>{var y;(y=e.edges)!=null&&y.value&&Array.isArray(e.edges.value)&&(_==null||_.pause(),e.edges.value=[...w],n.nextTick(()=>{_==null||_.resume()}))},{immediate:b}),n.onScopeDispose(()=>{_==null||_.stop(),h==null||h.stop()})})},s=()=>{r.run(()=>{n.watch(()=>t.maxZoom,()=>{t.maxZoom&&Me(t.maxZoom)&&o.setMaxZoom(t.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{n.watch(()=>t.minZoom,()=>{t.minZoom&&Me(t.minZoom)&&o.setMinZoom(t.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{n.watch(()=>t.translateExtent,()=>{t.translateExtent&&Me(t.translateExtent)&&o.setTranslateExtent(t.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{n.watch(()=>t.nodeExtent,()=>{t.nodeExtent&&Me(t.nodeExtent)&&o.setNodeExtent(t.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{n.watch(()=>t.applyDefault,()=>{Me(t.applyDefault)&&(o.applyDefault.value=t.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const _=async h=>{let b=h;typeof t.autoConnect=="function"&&(b=await t.autoConnect(h)),b!==!1&&o.addEdges([b])};n.watch(()=>t.autoConnect,()=>{Me(t.autoConnect)&&(o.autoConnect.value=t.autoConnect)},{immediate:!0}),n.watch(o.autoConnect,(h,b,w)=>{h?o.onConnect(_):o.hooks.value.connect.off(_),w(()=>{o.hooks.value.connect.off(_)})},{immediate:!0})})},m=()=>{const _=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const h of Object.keys(t)){const b=h;if(!_.includes(b)){const w=n.toRef(()=>t[b]),y=o[b];n.isRef(y)&&r.run(()=>{n.watch(w,v=>{Me(v)&&(y.value=v)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function oS(){return{edgesChange:me(),nodesChange:me(),nodeDoubleClick:me(),nodeClick:me(),nodeMouseEnter:me(),nodeMouseMove:me(),nodeMouseLeave:me(),nodeContextMenu:me(),nodeDragStart:me(),nodeDrag:me(),nodeDragStop:me(),nodesInitialized:me(),miniMapNodeClick:me(),miniMapNodeDoubleClick:me(),miniMapNodeMouseEnter:me(),miniMapNodeMouseMove:me(),miniMapNodeMouseLeave:me(),connect:me(),connectStart:me(),connectEnd:me(),clickConnectStart:me(),clickConnectEnd:me(),paneReady:me(),init:me(),move:me(),moveStart:me(),moveEnd:me(),selectionDragStart:me(),selectionDrag:me(),selectionDragStop:me(),selectionContextMenu:me(),selectionStart:me(),selectionEnd:me(),viewportChangeStart:me(),viewportChange:me(),viewportChangeEnd:me(),paneScroll:me(),paneClick:me(),paneContextMenu:me(),paneMouseEnter:me(),paneMouseMove:me(),paneMouseLeave:me(),edgeContextMenu:me(),edgeMouseEnter:me(),edgeMouseMove:me(),edgeMouseLeave:me(),edgeDoubleClick:me(),edgeClick:me(),edgeUpdateStart:me(),edgeUpdate:me(),edgeUpdateEnd:me(),updateNodeInternals:me(),error:me(e=>ni(e.message))}}function rS(e,t){n.onBeforeMount(()=>{for(const[o,r]of Object.entries(t.value)){const i=a=>{e(o,a)};r.fns.add(i),xr(()=>{r.off(i)})}})}function Ku(){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:Ha.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:Po.Free,paneClickDistance:0,panOnDrag:!0,edgeUpdaterRadius:10,onlyRenderVisibleElements:!1,defaultViewport:{x:0,y:0,zoom:1},nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,defaultMarkerColor:"#b1b1b7",connectionLineStyle:{},connectionLineType:null,connectionLineOptions:{type:pn.Bezier,style:{}},connectionMode:Kt.Loose,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectionPosition:{x:Number.NaN,y:Number.NaN},connectionRadius:20,connectOnClick:!0,connectionStatus:null,isValidConnection:null,snapGrid:[15,15],snapToGrid:!1,edgesUpdatable:!1,edgesFocusable:!0,nodesFocusable:!0,nodesConnectable:!0,nodesDraggable:!0,nodeDragThreshold:1,elementsSelectable:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,selectionKeyCode:"Shift",multiSelectionKeyCode:ei()?"Meta":"Control",zoomActivationKeyCode:ei()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:oS(),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 iS=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function aS(e,t,o){const r=tS(e),i=N=>{const S=N??[];e.hooks.updateNodeInternals.trigger(S)},a=N=>k1(N,e.nodes,e.edges),l=N=>E1(N,e.nodes,e.edges),s=N=>gu(N,e.edges),c=({id:N,type:S,nodeId:x})=>{var V;return Array.from(((V=e.connectionLookup.get(`${x}-${S}-${N??null}`))==null?void 0:V.values())??[])},d=N=>{if(N)return t.value.get(N)},f=N=>{if(N)return o.value.get(N)},u=(N,S,x)=>{var V,M;const X=[];for(const Q of N){const U={id:Q.id,type:"position",dragging:x,from:Q.from};if(S&&(U.position=Q.position,Q.parentNode)){const W=d(Q.parentNode);U.position={x:U.position.x-(((V=W==null?void 0:W.computedPosition)==null?void 0:V.x)??0),y:U.position.y-(((M=W==null?void 0:W.computedPosition)==null?void 0:M.y)??0)}}X.push(U)}X!=null&&X.length&&e.hooks.nodesChange.trigger(X)},p=N=>{if(!e.vueFlowRef)return;const S=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!S)return;const x=window.getComputedStyle(S),{m22:V}=new window.DOMMatrixReadOnly(x.transform),M=[];for(const X of N){const Q=X,U=d(Q.id);if(U){const W=Jr(Q.nodeElement);if(!!(W.width&&W.height&&(U.dimensions.width!==W.width||U.dimensions.height!==W.height||Q.forceUpdate))){const le=Q.nodeElement.getBoundingClientRect();U.dimensions=W,U.handleBounds.source=Pu("source",Q.nodeElement,le,V,U.id),U.handleBounds.target=Pu("target",Q.nodeElement,le,V,U.id),M.push({id:U.id,type:"dimensions",dimensions:W})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),M.length&&e.hooks.nodesChange.trigger(M)},m=(N,S)=>{const x=new Set,V=new Set;for(const Q of N)gn(Q)?x.add(Q.id):jt(Q)&&V.add(Q.id);const M=qt(t.value,x,!0),X=qt(o.value,V);if(e.multiSelectionActive){for(const Q of x)M.push(Gt(Q,S));for(const Q of V)X.push(Gt(Q,S))}M.length&&e.hooks.nodesChange.trigger(M),X.length&&e.hooks.edgesChange.trigger(X)},g=N=>{if(e.multiSelectionActive){const S=N.map(x=>Gt(x.id,!0));e.hooks.nodesChange.trigger(S);return}e.hooks.nodesChange.trigger(qt(t.value,new Set(N.map(S=>S.id)),!0)),e.hooks.edgesChange.trigger(qt(o.value))},_=N=>{if(e.multiSelectionActive){const S=N.map(x=>Gt(x.id,!0));e.hooks.edgesChange.trigger(S);return}e.hooks.edgesChange.trigger(qt(o.value,new Set(N.map(S=>S.id)))),e.hooks.nodesChange.trigger(qt(t.value,new Set,!0))},h=N=>{m(N,!0)},b=N=>{const x=(N||e.nodes).map(V=>(V.selected=!1,Gt(V.id,!1)));e.hooks.nodesChange.trigger(x)},w=N=>{const x=(N||e.edges).map(V=>(V.selected=!1,Gt(V.id,!1)));e.hooks.edgesChange.trigger(x)},y=N=>{if(!N||!N.length)return m([],!1);const S=N.reduce((x,V)=>{const M=Gt(V.id,!1);return gn(V)?x.nodes.push(M):x.edges.push(M),x},{nodes:[],edges:[]});S.nodes.length&&e.hooks.nodesChange.trigger(S.nodes),S.edges.length&&e.hooks.edgesChange.trigger(S.edges)},v=N=>{var S;(S=e.d3Zoom)==null||S.scaleExtent([N,e.maxZoom]),e.minZoom=N},k=N=>{var S;(S=e.d3Zoom)==null||S.scaleExtent([e.minZoom,N]),e.maxZoom=N},E=N=>{var S;(S=e.d3Zoom)==null||S.translateExtent(N),e.translateExtent=N},R=N=>{e.nodeExtent=N,i()},O=N=>{var S;(S=e.d3Zoom)==null||S.clickDistance(N)},T=N=>{e.nodesDraggable=N,e.nodesConnectable=N,e.elementsSelectable=N},q=N=>{const S=N instanceof Function?N(e.nodes):N;!e.initialized&&!S.length||(e.nodes=Ou(S,d,e.hooks.error.trigger))},j=N=>{const S=N instanceof Function?N(e.edges):N;if(!e.initialized&&!S.length)return;const x=rl(S,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);ol(e.connectionLookup,o.value,x),e.edges=x},A=N=>{const S=N instanceof Function?N([...e.nodes,...e.edges]):N;!e.initialized&&!S.length||(q(S.filter(gn)),j(S.filter(jt)))},I=N=>{let S=N instanceof Function?N(e.nodes):N;S=Array.isArray(S)?S:[S];const x=Ou(S,d,e.hooks.error.trigger),V=[];for(const M of x)V.push(Eu(M));V.length&&e.hooks.nodesChange.trigger(V)},C=N=>{let S=N instanceof Function?N(e.edges):N;S=Array.isArray(S)?S:[S];const x=rl(S,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),V=[];for(const M of x)V.push(Eu(M));V.length&&e.hooks.edgesChange.trigger(V)},D=(N,S=!0,x=!1)=>{const V=N instanceof Function?N(e.nodes):N,M=Array.isArray(V)?V:[V],X=[],Q=[];function U(K){const le=s(K);for(const se of le)(!Me(se.deletable)||se.deletable)&&Q.push(Cu(se.id,se.source,se.target,se.sourceHandle,se.targetHandle))}function W(K){const le=[];for(const se of e.nodes)se.parentNode===K&&le.push(se);if(le.length){for(const se of le)X.push(ku(se.id));S&&U(le);for(const se of le)W(se.id)}}for(const K of M){const le=typeof K=="string"?d(K):K;le&&(Me(le.deletable)&&!le.deletable||(X.push(ku(le.id)),S&&U([le]),x&&W(le.id)))}Q.length&&e.hooks.edgesChange.trigger(Q),X.length&&e.hooks.nodesChange.trigger(X)},P=N=>{const S=N instanceof Function?N(e.edges):N,x=Array.isArray(S)?S:[S],V=[];for(const M of x){const X=typeof M=="string"?f(M):M;X&&(Me(X.deletable)&&!X.deletable||V.push(Cu(typeof M=="string"?M:M.id,X.source,X.target,X.sourceHandle,X.targetHandle)))}e.hooks.edgesChange.trigger(V)},L=(N,S,x=!0)=>{const V=f(N.id);if(!V)return!1;const M=e.edges.indexOf(V),X=G1(N,S,V,x,e.hooks.error.trigger);if(X){const[Q]=rl([X],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((U,W)=>W===M?Q:U),ol(e.connectionLookup,o.value,[Q]),Q}return!1},F=(N,S,x={replace:!1})=>{const V=f(N);if(!V)return;const M=typeof S=="function"?S(V):S;V.data=x.replace?M:{...V.data,...M}},B=N=>wu(N,e.nodes),$=N=>{const S=wu(N,e.edges);return ol(e.connectionLookup,o.value,S),S},G=(N,S,x={replace:!1})=>{const V=d(N);if(!V)return;const M=typeof S=="function"?S(V):S;x.replace?e.nodes.splice(e.nodes.indexOf(V),1,M):Object.assign(V,M)},ee=(N,S,x={replace:!1})=>{const V=d(N);if(!V)return;const M=typeof S=="function"?S(V):S;V.data=x.replace?M:{...V.data,...M}},re=(N,S,x=!1)=>{x?e.connectionClickStartHandle=N:e.connectionStartHandle=N,e.connectionEndHandle=null,e.connectionStatus=null,S&&(e.connectionPosition=S)},J=(N,S=null,x=null)=>{e.connectionStartHandle&&(e.connectionPosition=N,e.connectionEndHandle=S,e.connectionStatus=x)},ne=(N,S)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,S?e.connectionClickStartHandle=null:e.connectionStartHandle=null},z=N=>{const S=b1(N),x=S?null:$o(N)?N:d(N.id);return!S&&!x?[null,null,S]:[S?N:Xr(x),x,S]},Z=(N,S=!0,x=e.nodes)=>{const[V,M,X]=z(N);if(!V)return[];const Q=[];for(const U of x||e.nodes){if(!X&&(U.id===M.id||!U.computedPosition))continue;const W=Xr(U),K=Zr(W,V);(S&&K>0||K>=Number(V.width)*Number(V.height))&&Q.push(U)}return Q},ie=(N,S,x=!0)=>{const[V]=z(N);if(!V)return!1;const M=Zr(V,S);return x&&M>0||M>=Number(V.width)*Number(V.height)},oe=N=>{const{viewport:S,dimensions:x,d3Zoom:V,d3Selection:M,translateExtent:X}=e;if(!V||!M||!N.x&&!N.y)return!1;const Q=Gn.translate(S.x+N.x,S.y+N.y).scale(S.zoom),U=[[0,0],[x.width,x.height]],W=V.constrain()(Q,U,X),K=e.viewport.x!==W.x||e.viewport.y!==W.y||e.viewport.zoom!==W.k;return V.transform(M,W),K},ue=N=>{const S=N instanceof Function?N(e):N,x=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];Me(S.defaultEdgeOptions)&&(e.defaultEdgeOptions=S.defaultEdgeOptions);const V=S.modelValue||S.nodes||S.edges?[]:void 0;V&&(S.modelValue&&V.push(...S.modelValue),S.nodes&&V.push(...S.nodes),S.edges&&V.push(...S.edges),A(V));const M=()=>{Me(S.maxZoom)&&k(S.maxZoom),Me(S.minZoom)&&v(S.minZoom),Me(S.translateExtent)&&E(S.translateExtent)};for(const X of Object.keys(S)){const Q=X,U=S[Q];![...iS,...x].includes(Q)&&Me(U)&&(e[Q]=U)}Sa(()=>e.d3Zoom).not.toBeNull().then(M),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:A,setNodes:q,setEdges:j,addNodes:I,addEdges:C,removeNodes:D,removeEdges:P,findNode:d,findEdge:f,updateEdge:L,updateEdgeData:F,updateNode:G,updateNodeData:ee,applyEdgeChanges:$,applyNodeChanges:B,addSelectedElements:h,addSelectedNodes:g,addSelectedEdges:_,setMinZoom:v,setMaxZoom:k,setTranslateExtent:E,setNodeExtent:R,setPaneClickDistance:O,removeSelectedElements:y,removeSelectedNodes:b,removeSelectedEdges:w,startConnection:re,updateConnection:J,endConnection:ne,setInteractive:T,setState:ue,getIntersectingNodes:Z,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:ie,panBy:oe,fitView:N=>r.value.fitView(N),zoomIn:N=>r.value.zoomIn(N),zoomOut:N=>r.value.zoomOut(N),zoomTo:(N,S)=>r.value.zoomTo(N,S),setViewport:(N,S)=>r.value.setViewport(N,S),setTransform:(N,S)=>r.value.setTransform(N,S),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(N,S,x)=>r.value.setCenter(N,S,x),fitBounds:(N,S)=>r.value.fitBounds(N,S),project:N=>r.value.project(N),screenToFlowCoordinate:N=>r.value.screenToFlowCoordinate(N),flowToScreenCoordinate:N=>r.value.flowToScreenCoordinate(N),toObject:()=>{const N=[],S=[];for(const x of e.nodes){const{computedPosition:V,handleBounds:M,selected:X,dimensions:Q,isParent:U,resizing:W,dragging:K,events:le,...se}=x;N.push(se)}for(const x of e.edges){const{selected:V,sourceNode:M,targetNode:X,events:Q,...U}=x;S.push(U)}return JSON.parse(JSON.stringify({nodes:N,edges:S,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:N=>new Promise(S=>{const{nodes:x,edges:V,position:M,zoom:X,viewport:Q}=N;if(x&&q(x),V&&j(V),Q!=null&&Q.x&&(Q!=null&&Q.y)||M){const U=(Q==null?void 0:Q.x)||M[0],W=(Q==null?void 0:Q.y)||M[1],K=(Q==null?void 0:Q.zoom)||X||e.viewport.zoom;return Sa(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:U,y:W,zoom:K}).then(()=>{S(!0)})})}else S(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const N=Ku();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const S=Gn.translate(N.defaultViewport.x??0,N.defaultViewport.y??0).scale(mn(N.defaultViewport.zoom??1,N.minZoom,N.maxZoom)),x=e.viewportRef.getBoundingClientRect(),V=[[0,0],[x.width,x.height]],M=e.d3Zoom.constrain()(S,V,N.translateExtent);e.d3Zoom.transform(e.d3Selection,M)}ue(N)},$destroy:()=>{}}}const lS=["data-id","data-handleid","data-nodeid","data-handlepos"],sS={name:"Handle",compatConfig:{MODE:3}},Ht=n.defineComponent({...sS,props:{id:{default:null},type:{},position:{default:()=>ge.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:t}){const o=n.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=n.toRef(()=>o.type??"source"),i=n.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Te(),{id:m,node:g,nodeEl:_,connectedEdges:h}=Lu(),b=n.ref(),w=n.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),y=n.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),v=n.toRef(()=>{var j,A,I,C,D,P;return((j=l.value)==null?void 0:j.nodeId)===m&&((A=l.value)==null?void 0:A.id)===e.id&&((I=l.value)==null?void 0:I.type)===r.value||((C=c.value)==null?void 0:C.nodeId)===m&&((D=c.value)==null?void 0:D.id)===e.id&&((P=c.value)==null?void 0:P.type)===r.value}),k=n.toRef(()=>{var j,A,I;return((j=s.value)==null?void 0:j.nodeId)===m&&((A=s.value)==null?void 0:A.id)===e.id&&((I=s.value)==null?void 0:I.type)===r.value}),{handlePointerDown:E,handleClick:R}=Fu({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),O=n.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!h.value.some(j=>{const A=j[`${r.value}Handle`];return j[r.value]!==m?!1:A?A===e.id:!0}):typeof e.connectable=="number"?h.value.filter(j=>{const A=j[`${r.value}Handle`];return j[r.value]!==m?!1:A?A===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(g,h.value):Me(e.connectable)?e.connectable:f.value);n.onMounted(()=>{var j;if(!g.dimensions.width||!g.dimensions.height)return;const A=(j=g.handleBounds[r.value])==null?void 0:j.find(B=>B.id===e.id);if(!d.value||A)return;const I=d.value.querySelector(".vue-flow__transformationpane");if(!_.value||!b.value||!I||!e.id)return;const C=_.value.getBoundingClientRect(),D=b.value.getBoundingClientRect(),P=window.getComputedStyle(I),{m22:L}=new window.DOMMatrixReadOnly(P.transform),F={id:e.id,position:e.position,x:(D.left-C.left)/L,y:(D.top-C.top)/L,type:r.value,nodeId:m,...Jr(b.value)};g.handleBounds[r.value]=[...g.handleBounds[r.value]??[],F]});function T(j){const A=Qa(j);O.value&&w.value&&(A&&j.button===0||!A)&&E(j)}function q(j){!m||!s.value&&!w.value||O.value&&R(j)}return t({handleClick:R,handlePointerDown:E,onClick:q,onPointerDown:T}),(j,A)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"handle",ref:b,"data-id":`${n.unref(a)}-${n.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":n.unref(m),"data-handlepos":j.position,class:n.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${j.position}`,`vue-flow__handle-${e.id}`,n.unref(u),n.unref(p),r.value,{connectable:O.value,connecting:k.value,connectablestart:w.value,connectableend:y.value,connectionindicator:O.value&&(w.value&&!v.value||y.value&&v.value)}]]),onMousedown:T,onTouchstartPassive:T,onClick:q},[n.renderSlot(j.$slots,"default",{id:j.id})],42,lS))}}),ii=function({sourcePosition:e=ge.Bottom,targetPosition:t=ge.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[n.h(Ht,{type:"target",position:t,connectable:r,isValidConnection:i}),typeof s!="string"&&s?n.h(s):n.h(n.Fragment,[s]),n.h(Ht,{type:"source",position:e,connectable:r,isValidConnection:a})]};ii.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],ii.inheritAttrs=!1,ii.compatConfig={MODE:3};const cS=ii,ai=function({targetPosition:e=ge.Top,label:t,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??t;return[n.h(Ht,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?n.h(a):n.h(n.Fragment,[a])]};ai.props=["targetPosition","label","isValidTargetPos","connectable","data"],ai.inheritAttrs=!1,ai.compatConfig={MODE:3};const dS=ai,li=function({sourcePosition:e=ge.Bottom,label:t,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??t;return[typeof a!="string"&&a?n.h(a):n.h(n.Fragment,[a]),n.h(Ht,{type:"source",position:e,connectable:o,isValidConnection:r})]};li.props=["sourcePosition","label","isValidSourcePos","connectable","data"],li.inheritAttrs=!1,li.compatConfig={MODE:3};const uS=li,fS=["transform"],pS=["width","height","x","y","rx","ry"],mS=["y"],gS={name:"EdgeText",compatConfig:{MODE:3}},hS=n.defineComponent({...gS,props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(e){const t=n.ref({x:0,y:0,width:0,height:0}),o=n.ref(null),r=n.computed(()=>`translate(${e.x-t.value.width/2} ${e.y-t.value.height/2})`);n.onMounted(i),n.watch([()=>e.x,()=>e.y,o,()=>e.label],i);function i(){if(!o.value)return;const a=o.value.getBBox();(a.width!==t.value.width||a.height!==t.value.height)&&(t.value=a)}return(a,l)=>(n.openBlock(),n.createElementBlock("g",{transform:r.value,class:"vue-flow__edge-textwrapper"},[a.labelShowBg?(n.openBlock(),n.createElementBlock("rect",{key:0,class:"vue-flow__edge-textbg",width:`${t.value.width+2*a.labelBgPadding[0]}px`,height:`${t.value.height+2*a.labelBgPadding[1]}px`,x:-a.labelBgPadding[0],y:-a.labelBgPadding[1],style:n.normalizeStyle(a.labelBgStyle),rx:a.labelBgBorderRadius,ry:a.labelBgBorderRadius},null,12,pS)):n.createCommentVNode("",!0),n.createElementVNode("text",n.mergeProps(a.$attrs,{ref_key:"el",ref:o,class:"vue-flow__edge-text",y:t.value.height/2,dy:"0.3em",style:a.labelStyle}),[n.renderSlot(a.$slots,"default",{},()=>[typeof a.label!="string"?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(a.label),{key:0})):(n.openBlock(),n.createElementBlock(n.Fragment,{key:1},[n.createTextVNode(n.toDisplayString(a.label),1)],64))])],16,mS)],8,fS))}}),yS=["id","d","marker-end","marker-start"],_S=["d","stroke-width"],bS={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},si=n.defineComponent({...bS,props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(e,{expose:t}){const o=n.ref(null),r=n.ref(null),i=n.ref(null),a=n.useAttrs();return t({pathEl:o,interactionEl:r,labelEl:i}),(l,s)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("path",n.mergeProps(n.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,yS),l.interactionWidth?(n.openBlock(),n.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,_S)):n.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(n.openBlock(),n.createBlock(hS,{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"])):n.createCommentVNode("",!0)],64))}});function ju({sourceX:e,sourceY:t,targetX:o,targetY:r}){const i=Math.abs(o-e)/2,a=o<e?o+i:o-i,l=Math.abs(r-t)/2,s=r<t?r+l:r-l;return[a,s,i,l]}function Gu({sourceX:e,sourceY:t,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,d=t*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),u=Math.abs(d-t);return[c,d,f,u]}function ci(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function qu({pos:e,x1:t,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ge.Left:l=t-ci(t-r,a),s=o;break;case ge.Right:l=t+ci(r-t,a),s=o;break;case ge.Top:l=t,s=o-ci(o-i,a);break;case ge.Bottom:l=t,s=o+ci(i-o,a);break}return[l,s]}function zu(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,curvature:s=.25}=e,[c,d]=qu({pos:r,x1:t,y1:o,x2:i,y2:a,c:s}),[f,u]=qu({pos:l,x1:i,y1:a,x2:t,y2:o,c:s}),[p,m,g,_]=Gu({sourceX:t,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${t},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,g,_]}function Hu({pos:e,x1:t,y1:o,x2:r,y2:i}){let a,l;switch(e){case ge.Left:case ge.Right:a=.5*(t+r),l=o;break;case ge.Top:case ge.Bottom:a=t,l=.5*(o+i);break}return[a,l]}function Yu(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top}=e,[s,c]=Hu({pos:r,x1:t,y1:o,x2:i,y2:a}),[d,f]=Hu({pos:l,x1:i,y1:a,x2:t,y2:o}),[u,p,m,g]=Gu({sourceX:t,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:d,targetControlY:f});return[`M${t},${o} C${s},${c} ${d},${f} ${i},${a}`,u,p,m,g]}const Wu={[ge.Left]:{x:-1,y:0},[ge.Right]:{x:1,y:0},[ge.Top]:{x:0,y:-1},[ge.Bottom]:{x:0,y:1}};function wS({source:e,sourcePosition:t=ge.Bottom,target:o}){return t===ge.Left||t===ge.Right?e.x<o.x?{x:1,y:0}:{x:-1,y:0}:e.y<o.y?{x:0,y:1}:{x:0,y:-1}}function Xu(e,t){return Math.sqrt((t.x-e.x)**2+(t.y-e.y)**2)}function ES({source:e,sourcePosition:t=ge.Bottom,target:o,targetPosition:r=ge.Top,center:i,offset:a}){const l=Wu[t],s=Wu[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=wS({source:c,sourcePosition:t,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,g,_;const h={x:0,y:0},b={x:0,y:0},[w,y,v,k]=ju({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){g=i.x??w,_=i.y??y;const R=[{x:g,y:c.y},{x:g,y:d.y}],O=[{x:c.x,y:_},{x:d.x,y:_}];l[u]===p?m=u==="x"?R:O:m=u==="x"?O:R}else{const R=[{x:c.x,y:d.y}],O=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?O:R:m=l.y===p?R:O,t===r){const I=Math.abs(e[u]-o[u]);if(I<=a){const C=Math.min(a-1,a-I);l[u]===p?h[u]=(c[u]>e[u]?-1:1)*C:b[u]=(d[u]>o[u]?-1:1)*C}}if(t!==r){const I=u==="x"?"y":"x",C=l[u]===s[I],D=c[I]>d[I],P=c[I]<d[I];(l[u]===1&&(!C&&D||C&&P)||l[u]!==1&&(!C&&P||C&&D))&&(m=u==="x"?R:O)}const T={x:c.x+h.x,y:c.y+h.y},q={x:d.x+b.x,y:d.y+b.y},j=Math.max(Math.abs(T.x-m[0].x),Math.abs(q.x-m[0].x)),A=Math.max(Math.abs(T.y-m[0].y),Math.abs(q.y-m[0].y));j>=A?(g=(T.x+q.x)/2,_=m[0].y):(g=m[0].x,_=(T.y+q.y)/2)}return[[e,{x:c.x+h.x,y:c.y+h.y},...m,{x:d.x+b.x,y:d.y+b.y},o],g,_,v,k]}function kS(e,t,o,r){const i=Math.min(Xu(e,t)/2,Xu(t,o)/2,r),{x:a,y:l}=t;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 ll(e){const{sourceX:t,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,g,_]=ES({source:{x:t,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((b,w,y)=>{let v;return y>0&&y<u.length-1?v=kS(u[y-1],w,u[y+1],s):v=`${y===0?"M":"L"}${w.x} ${w.y}`,b+=v,b},""),p,m,g,_]}function CS(e){const{sourceX:t,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=ju({sourceX:t,sourceY:o,targetX:r,targetY:i});return[`M ${t},${o}L ${r},${i}`,a,l,s,c]}const vS=n.defineComponent({name:"StraightEdge",props:["label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:t}){return()=>{const[o,r,i]=CS(e);return n.h(si,{path:o,labelX:r,labelY:i,...t,...e})}}}),Zu=n.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:t}){return()=>{const[o,r,i]=ll({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(si,{path:o,labelX:r,labelY:i,...t,...e})}}}),NS=n.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:t}){return()=>n.h(Zu,{...e,...t,borderRadius:0})}}),SS=n.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:t}){return()=>{const[o,r,i]=zu({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(si,{path:o,labelX:r,labelY:i,...t,...e})}}}),xS=n.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:t}){return()=>{const[o,r,i]=Yu({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return n.h(si,{path:o,labelX:r,labelY:i,...t,...e})}}}),AS={input:uS,default:cS,output:dS},TS={default:SS,straight:vS,step:NS,smoothstep:Zu,simplebezier:xS};function IS(e,t,o){const r=n.computed(()=>_=>t.value.get(_)),i=n.computed(()=>_=>o.value.get(_)),a=n.computed(()=>{const _={...TS,...e.edgeTypes},h=Object.keys(_);for(const b of e.edges)b.type&&!h.includes(b.type)&&(_[b.type]=b.type);return _}),l=n.computed(()=>{const _={...AS,...e.nodeTypes},h=Object.keys(_);for(const b of e.nodes)b.type&&!h.includes(b.type)&&(_[b.type]=b.type);return _}),s=n.computed(()=>e.onlyRenderVisibleElements?mu(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=n.computed(()=>{if(e.onlyRenderVisibleElements){const _=[];for(const h of e.edges){const b=t.value.get(h.source),w=t.value.get(h.target);P1({sourcePos:b.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:b.dimensions.width,sourceHeight:b.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&_.push(h)}return _}return e.edges}),d=n.computed(()=>[...s.value,...c.value]),f=n.computed(()=>{const _=[];for(const h of e.nodes)h.selected&&_.push(h);return _}),u=n.computed(()=>{const _=[];for(const h of e.edges)h.selected&&_.push(h);return _}),p=n.computed(()=>[...f.value,...u.value]),m=n.computed(()=>{const _=[];for(const h of e.nodes)h.dimensions.width&&h.dimensions.height&&h.handleBounds!==void 0&&_.push(h);return _}),g=n.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:g}}class hn{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){var t;const o=(t=n.getCurrentInstance())==null?void 0:t.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(t,o){return this.flows.set(t,o)}get(t){return this.flows.get(t)}remove(t){return this.flows.delete(t)}create(t,o){const r=Ku(),i=n.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const g=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[g]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=n.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=n.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),d=IS(i,s,c),f=aS(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...Ak(i),nodeLookup:s,edgeLookup:c,emits:l,id:t,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(t)}};return this.set(t,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Te(e){const t=hn.getInstance(),o=n.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=n.inject(Vu,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=t.get(l)),!s||l&&s.id!==l){const c=a??t.getId(),d=t.create(c,i);s=d,(o??n.effectScope(!0)).run(()=>{n.watch(d.applyDefault,(u,p,m)=>{const g=h=>{d.applyNodeChanges(h)},_=h=>{d.applyEdgeChanges(h)};u?(d.onNodesChange(g),d.onEdgesChange(_)):(d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(_)),m(()=>{d.hooks.value.nodesChange.off(g),d.hooks.value.edgesChange.off(_)})},{immediate:!0}),xr(()=>{if(s){const u=t.get(s.id);u?u.$destroy():ni(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(n.provide(Vu,s),o.vueFlowId=s.id),r){const c=n.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new Ge(De.USEVUEFLOW_OPTIONS))}return s}function PS(e){const{emits:t,dimensions:o}=Te();let r;n.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=Jr(i);(l.width===0||l.height===0)&&t.error(new Ge(De.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:l.width||500,height:l.height||500}};a(),window.addEventListener("resize",a),i&&(r=new ResizeObserver(()=>a()),r.observe(i)),n.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const OS={name:"UserSelection",compatConfig:{MODE:3}},$S=n.defineComponent({...OS,props:{userSelectionRect:{}},setup(e){return(t,o)=>(n.openBlock(),n.createElementBlock("div",{class:"vue-flow__selection vue-flow__container",style:n.normalizeStyle({width:`${t.userSelectionRect.width}px`,height:`${t.userSelectionRect.height}px`,transform:`translate(${t.userSelectionRect.x}px, ${t.userSelectionRect.y}px)`})},null,4))}}),BS=["tabIndex"],VS={name:"NodesSelection",compatConfig:{MODE:3}},RS=n.defineComponent({...VS,setup(e){const{emits:t,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Te(),s=Uu(),c=n.ref(null),d=Mu({el:c,onStart(g){t.selectionDragStart(g)},onDrag(g){t.selectionDrag(g)},onStop(g){t.selectionDragStop(g)}});n.onMounted(()=>{var g;a.value||(g=c.value)==null||g.focus({preventScroll:!0})});const f=n.computed(()=>pu(r.value)),u=n.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(g){t.selectionContextMenu({event:g,nodes:r.value})}function m(g){a||qn[g.key]&&(g.preventDefault(),s({x:qn[g.key].x,y:qn[g.key].y},g.shiftKey))}return(g,_)=>!n.unref(l)&&f.value.width&&f.value.height?(n.openBlock(),n.createElementBlock("div",{key:0,class:n.normalizeClass(["vue-flow__nodesselection vue-flow__container",n.unref(i)]),style:n.normalizeStyle({transform:`translate(${n.unref(o).x}px,${n.unref(o).y}px) scale(${n.unref(o).zoom})`})},[n.createElementVNode("div",{ref_key:"el",ref:c,class:n.normalizeClass([{dragging:n.unref(d)},"vue-flow__nodesselection-rect"]),style:n.normalizeStyle(u.value),tabIndex:n.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,BS)],6)):n.createCommentVNode("",!0)}});function DS(e,t){return{x:e.clientX-t.left,y:e.clientY-t.top}}const MS={name:"Pane",compatConfig:{MODE:3}},FS=n.defineComponent({...MS,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:t,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:g,deleteKeyCode:_,multiSelectionKeyCode:h,multiSelectionActive:b,edgeLookup:w,nodeLookup:y,connectionLookup:v,defaultEdgeOptions:k,connectionStartHandle:E}=Te(),R=n.ref(null),O=n.ref(new Set),T=n.ref(new Set),q=n.ref(),j=n.toRef(()=>c.value&&(e.isSelecting||a.value)),A=n.toRef(()=>E.value!==null);let I=!1,C=!1;const D=Oo(_,{actInsideInputWithModifier:!1}),P=Oo(h);n.watch(D,J=>{J&&(p(u.value),m(f.value),d.value=!1)}),n.watch(P,J=>{b.value=J});function L(J,ne){return z=>{z.target===ne&&(J==null||J(z))}}function F(J){if(I||A.value){I=!1;return}i.paneClick(J),l(),d.value=!1}function B(J){J.preventDefault(),J.stopPropagation(),i.paneContextMenu(J)}function $(J){i.paneScroll(J)}function G(J){var ne,z,Z;if(q.value=(ne=t.value)==null?void 0:ne.getBoundingClientRect(),!c.value||!e.isSelecting||J.button!==0||J.target!==R.value||!q.value)return;(Z=(z=J.target)==null?void 0:z.setPointerCapture)==null||Z.call(z,J.pointerId);const{x:ie,y:oe}=DS(J,q.value);C=!0,I=!1,l(),s.value={width:0,height:0,startX:ie,startY:oe,x:ie,y:oe},i.selectionStart(J)}function ee(J){var ne;if(!q.value||!s.value)return;I=!0;const{x:z,y:Z}=xt(J,q.value),{startX:ie=0,startY:oe=0}=s.value,ue={startX:ie,startY:oe,x:z<ie?z:ie,y:Z<oe?Z:oe,width:Math.abs(z-ie),height:Math.abs(Z-oe)},de=O.value,Y=T.value;O.value=new Set(mu(o.value,ue,r.value,g.value===Ha.Partial,!0).map(N=>N.id)),T.value=new Set;const te=((ne=k.value)==null?void 0:ne.selectable)??!0;for(const N of O.value){const S=v.value.get(N);if(S)for(const{edgeId:x}of S.values()){const V=w.value.get(x);V&&(V.selectable??te)&&T.value.add(x)}}if(!Bu(de,O.value)){const N=qt(y.value,O.value,!0);i.nodesChange(N)}if(!Bu(Y,T.value)){const N=qt(w.value,T.value);i.edgesChange(N)}s.value=ue,a.value=!0,d.value=!1}function re(J){var ne;J.button!==0||!C||((ne=J.target)==null||ne.releasePointerCapture(J.pointerId),!a.value&&s.value&&J.target===R.value&&F(J),a.value=!1,s.value=null,d.value=O.value.size>0,i.selectionEnd(J),e.selectionKeyPressed&&(I=!1),C=!1)}return(J,ne)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"container",ref:R,class:n.normalizeClass(["vue-flow__pane vue-flow__container",{selection:J.isSelecting}]),onClick:ne[0]||(ne[0]=z=>j.value?void 0:L(F,R.value)(z)),onContextmenu:ne[1]||(ne[1]=z=>L(B,R.value)(z)),onWheelPassive:ne[2]||(ne[2]=z=>L($,R.value)(z)),onPointerenter:ne[3]||(ne[3]=z=>j.value?void 0:n.unref(i).paneMouseEnter(z)),onPointerdown:ne[4]||(ne[4]=z=>j.value?G(z):n.unref(i).paneMouseMove(z)),onPointermove:ne[5]||(ne[5]=z=>j.value?ee(z):n.unref(i).paneMouseMove(z)),onPointerup:ne[6]||(ne[6]=z=>j.value?re(z):void 0),onPointerleave:ne[7]||(ne[7]=z=>n.unref(i).paneMouseLeave(z))},[n.renderSlot(J.$slots,"default"),n.unref(a)&&n.unref(s)?(n.openBlock(),n.createBlock($S,{key:0,"user-selection-rect":n.unref(s)},null,8,["user-selection-rect"])):n.createCommentVNode("",!0),n.unref(d)&&n.unref(u).length?(n.openBlock(),n.createBlock(RS,{key:1})):n.createCommentVNode("",!0)],34))}}),LS={name:"Transform",compatConfig:{MODE:3}},US=n.defineComponent({...LS,setup(e){const{viewport:t,fitViewOnInit:o,fitViewOnInitDone:r}=Te(),i=n.computed(()=>o.value?!r.value:!1),a=n.computed(()=>`translate(${t.value.x}px,${t.value.y}px) scale(${t.value.zoom})`);return(l,s)=>(n.openBlock(),n.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:n.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[n.renderSlot(l.$slots,"default")],4))}}),KS={name:"Viewport",compatConfig:{MODE:3}},jS=n.defineComponent({...KS,setup(e){const{minZoom:t,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:g,preventScrolling:_,noWheelClassName:h,noPanClassName:b,emits:w,connectionStartHandle:y,userSelectionActive:v,paneDragging:k,d3Zoom:E,d3Selection:R,d3ZoomHandler:O,viewport:T,viewportRef:q,paneClickDistance:j}=Te();PS(q);const A=n.shallowRef(!1),I=n.shallowRef(!1);let C=null,D=!1,P=0,L={x:0,y:0,zoom:0};const F=Oo(s),B=Oo(l),$=Oo(a),G=n.toRef(()=>(!B.value||B.value&&l.value===!0)&&(F.value||u.value)),ee=n.toRef(()=>F.value||c.value),re=n.toRef(()=>B.value||l.value===!0&&G.value!==!0);n.onMounted(()=>{if(!q.value){ni("Viewport element is missing");return}const oe=q.value,ue=oe.getBoundingClientRect(),de=f1().clickDistance(j.value).scaleExtent([t.value,o.value]).translateExtent(i.value),Y=gt(oe).call(de),te=Y.on("wheel.zoom"),N=Gn.translate(r.value.x??0,r.value.y??0).scale(mn(r.value.zoom??1,t.value,o.value)),S=[[0,0],[ue.width,ue.height]],x=de.constrain()(N,S,i.value);de.transform(Y,x),de.wheelDelta(ne),E.value=de,R.value=Y,O.value=te,T.value={x:x.x,y:x.y,zoom:x.k},de.on("start",V=>{var M;if(!V.sourceEvent)return null;P=V.sourceEvent.button,A.value=!0;const X=Z(V.transform);((M=V.sourceEvent)==null?void 0:M.type)==="mousedown"&&(k.value=!0),L=X,w.viewportChangeStart(X),w.moveStart({event:V,flowTransform:X})}),de.on("end",V=>{if(!V.sourceEvent)return null;if(A.value=!1,k.value=!1,J(G.value,P??0)&&!D&&w.paneContextMenu(V.sourceEvent),D=!1,z(L,V.transform)){const M=Z(V.transform);L=M,w.viewportChangeEnd(M),w.moveEnd({event:V,flowTransform:M})}}),de.filter(V=>{var M;const X=$.value||g.value,Q=m.value&&V.ctrlKey,U=V.button;if(U===1&&V.type==="mousedown"&&(ie(V,"vue-flow__node")||ie(V,"vue-flow__edge")))return!0;if(!G.value&&!X&&!ee.value&&!p.value&&!m.value||v.value||!p.value&&V.type==="dblclick"||ie(V,h.value)&&V.type==="wheel"||ie(V,b.value)&&(V.type!=="wheel"||ee.value&&V.type==="wheel"&&!$.value)||!m.value&&V.ctrlKey&&V.type==="wheel"||!X&&!ee.value&&!Q&&V.type==="wheel")return!1;if(!m&&V.type==="touchstart"&&((M=V.touches)==null?void 0:M.length)>1)return V.preventDefault(),!1;if(!G.value&&(V.type==="mousedown"||V.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&U===0||Array.isArray(u.value)&&!u.value.includes(U)&&(V.type==="mousedown"||V.type==="touchstart"))return!1;const W=Array.isArray(u.value)&&u.value.includes(U)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!U||U<=1;return(!V.ctrlKey||F.value||V.type==="wheel")&&W}),n.watch([v,G],()=>{v.value&&!A.value?de.on("zoom",null):v.value||de.on("zoom",V=>{T.value={x:V.transform.x,y:V.transform.y,zoom:V.transform.k};const M=Z(V.transform);D=J(G.value,P??0),w.viewportChange(M),w.move({event:V,flowTransform:M})})},{immediate:!0}),n.watch([v,ee,d,$,m,_,h],()=>{ee.value&&!$.value&&!v.value?Y.on("wheel.zoom",V=>{if(ie(V,h.value))return!1;const M=$.value||g.value,X=m.value&&V.ctrlKey;if(!(!_.value||ee.value||M||X))return!1;V.preventDefault(),V.stopImmediatePropagation();const U=Y.property("__zoom").k||1,W=ei();if(!F.value&&V.ctrlKey&&m.value&&W){const _e=Ct(V),be=ne(V),Ce=U*2**be;de.scaleTo(Y,Ce,_e,V);return}const K=V.deltaMode===1?20:1;let le=d.value===Po.Vertical?0:V.deltaX*K,se=d.value===Po.Horizontal?0:V.deltaY*K;!W&&V.shiftKey&&d.value!==Po.Vertical&&!le&&se&&(le=se,se=0),de.translateBy(Y,-(le/U)*f.value,-(se/U)*f.value);const ae=Z(Y.property("__zoom"));C&&clearTimeout(C),I.value?(w.move({event:V,flowTransform:ae}),w.viewportChange(ae),C=setTimeout(()=>{w.moveEnd({event:V,flowTransform:ae}),w.viewportChangeEnd(ae),I.value=!1},150)):(I.value=!0,w.moveStart({event:V,flowTransform:ae}),w.viewportChangeStart(ae))},{passive:!1}):typeof te<"u"&&Y.on("wheel.zoom",function(V,M){const X=!_.value&&V.type==="wheel"&&!V.ctrlKey,Q=$.value||g.value,U=m.value&&V.ctrlKey;if(!Q&&!c.value&&!U&&V.type==="wheel"||X||ie(V,h.value))return null;V.preventDefault(),te.call(this,V,M)},{passive:!1})},{immediate:!0})});function J(oe,ue){return ue===2&&Array.isArray(oe)&&oe.includes(2)}function ne(oe){const ue=oe.ctrlKey&&ei()?10:1;return-oe.deltaY*(oe.deltaMode===1?.05:oe.deltaMode?1:.002)*ue}function z(oe,ue){return oe.x!==ue.x&&!Number.isNaN(ue.x)||oe.y!==ue.y&&!Number.isNaN(ue.y)||oe.zoom!==ue.k&&!Number.isNaN(ue.k)}function Z(oe){return{x:oe.x,y:oe.y,zoom:oe.k}}function ie(oe,ue){return oe.target.closest(`.${ue}`)}return(oe,ue)=>(n.openBlock(),n.createElementBlock("div",{ref_key:"viewportRef",ref:q,class:"vue-flow__viewport vue-flow__container"},[n.createVNode(FS,{"is-selecting":re.value,"selection-key-pressed":n.unref(B),class:n.normalizeClass({connecting:!!n.unref(y),dragging:n.unref(k),draggable:n.unref(u)===!0||Array.isArray(n.unref(u))&&n.unref(u).includes(0)})},{default:n.withCtx(()=>[n.createVNode(US,null,{default:n.withCtx(()=>[n.renderSlot(oe.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),GS=["id"],qS=["id"],zS=["id"],HS={name:"A11yDescriptions",compatConfig:{MODE:3}},YS=n.defineComponent({...HS,setup(e){const{id:t,disableKeyboardA11y:o,ariaLiveMessage:r}=Te();return(i,a)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",{id:`${n.unref(ru)}-${n.unref(t)}`,style:{display:"none"}}," Press enter or space to select a node. "+n.toDisplayString(n.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,GS),n.createElementVNode("div",{id:`${n.unref(iu)}-${n.unref(t)}`,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,qS),n.unref(o)?n.createCommentVNode("",!0):(n.openBlock(),n.createElementBlock("div",{key:0,id:`${n.unref(_1)}-${n.unref(t)}`,"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%)"}},n.toDisplayString(n.unref(r)),9,zS))],64))}});function WS(){const e=Te();n.watch(()=>e.viewportHelper.value.viewportInitialized,t=>{t&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function XS(e,t,o){return o===ge.Left?e-t:o===ge.Right?e+t:e}function ZS(e,t,o){return o===ge.Top?e-t:o===ge.Bottom?e+t:e}const sl=function({radius:e=10,centerX:t=0,centerY:o=0,position:r=ge.Top,type:i}){return n.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:XS(t,e,r),cy:ZS(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};sl.props=["radius","centerX","centerY","position","type"],sl.compatConfig={MODE:3};const Ju=sl,JS=n.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:t,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:g,elementsSelectable:_,edgesUpdatable:h,edgesFocusable:b,hooks:w}=Te(),y=n.computed(()=>f(e.id)),{emit:v,on:k}=Y1(y.value,a),E=n.inject(oi),R=n.getCurrentInstance(),O=n.ref(!1),T=n.ref(!1),q=n.ref(""),j=n.ref(null),A=n.ref("source"),I=n.ref(null),C=n.toRef(()=>typeof y.value.selectable>"u"?_.value:y.value.selectable),D=n.toRef(()=>typeof y.value.updatable>"u"?h.value:y.value.updatable),P=n.toRef(()=>typeof y.value.focusable>"u"?b.value:y.value.focusable);n.provide(q1,e.id),n.provide(z1,I);const L=n.computed(()=>y.value.class instanceof Function?y.value.class(y.value):y.value.class),F=n.computed(()=>y.value.style instanceof Function?y.value.style(y.value):y.value.style),B=n.computed(()=>{const S=y.value.type||"default",x=E==null?void 0:E[`edge-${S}`];if(x)return x;let V=y.value.template??c.value[S];if(typeof V=="string"&&R){const M=Object.keys(R.appContext.components);M&&M.includes(S)&&(V=n.resolveComponent(S,!1))}return V&&typeof V!="string"?V:(a.error(new Ge(De.EDGE_TYPE_MISSING,V)),!1)}),{handlePointerDown:$}=Fu({nodeId:q,handleId:j,type:A,isValidConnection:p,edgeUpdaterType:A,onEdgeUpdate:re,onEdgeUpdateEnd:J});return()=>{const S=u(y.value.source),x=u(y.value.target),V="pathOptions"in y.value?y.value.pathOptions:{};if(!S&&!x)return a.error(new Ge(De.EDGE_SOURCE_TARGET_MISSING,y.value.id,y.value.source,y.value.target)),null;if(!S)return a.error(new Ge(De.EDGE_SOURCE_MISSING,y.value.id,y.value.source)),null;if(!x)return a.error(new Ge(De.EDGE_TARGET_MISSING,y.value.id,y.value.target)),null;if(!y.value||y.value.hidden||S.hidden||x.hidden)return null;let M;r.value===Kt.Strict?M=S.handleBounds.source:M=[...S.handleBounds.source||[],...S.handleBounds.target||[]];const X=Su(M,y.value.sourceHandle);let Q;r.value===Kt.Strict?Q=x.handleBounds.target:Q=[...x.handleBounds.target||[],...x.handleBounds.source||[]];const U=Su(Q,y.value.targetHandle),W=(X==null?void 0:X.position)||ge.Bottom,K=(U==null?void 0:U.position)||ge.Top,{x:le,y:se}=zn(S,X,W),{x:ae,y:_e}=zn(x,U,K);return y.value.sourceX=le,y.value.sourceY=se,y.value.targetX=ae,y.value.targetY=_e,n.h("g",{ref:I,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${B.value===!1?"default":y.value.type||"default"}`,s.value,L.value,{updating:O.value,selected:y.value.selected,animated:y.value.animated,inactive:!C.value&&!w.value.edgeClick.hasListeners()}],tabIndex:P.value?0:void 0,"aria-label":y.value.ariaLabel===null?void 0:y.value.ariaLabel??`Edge from ${y.value.source} to ${y.value.target}`,"aria-describedby":P.value?`${iu}-${t}`:void 0,"aria-roledescription":"edge",role:P.value?"group":"img",...y.value.domAttributes,onClick:z,onContextmenu:Z,onDblclick:ie,onMouseenter:oe,onMousemove:ue,onMouseleave:de,onKeyDown:P.value?N:void 0},[T.value?null:n.h(B.value===!1?c.value.default:B.value,{id:e.id,sourceNode:S,targetNode:x,source:y.value.source,target:y.value.target,type:y.value.type,updatable:D.value,selected:y.value.selected,animated:y.value.animated,label:y.value.label,labelStyle:y.value.labelStyle,labelShowBg:y.value.labelShowBg,labelBgStyle:y.value.labelBgStyle,labelBgPadding:y.value.labelBgPadding,labelBgBorderRadius:y.value.labelBgBorderRadius,data:y.value.data,events:{...y.value.events,...k},style:F.value,markerStart:`url('#${Vo(y.value.markerStart,t)}')`,markerEnd:`url('#${Vo(y.value.markerEnd,t)}')`,sourcePosition:W,targetPosition:K,sourceX:le,sourceY:se,targetX:ae,targetY:_e,sourceHandleId:y.value.sourceHandle,targetHandleId:y.value.targetHandle,interactionWidth:y.value.interactionWidth,...V}),[D.value==="source"||D.value===!0?[n.h("g",{onMousedown:Y,onMouseenter:G,onMouseout:ee},n.h(Ju,{position:W,centerX:le,centerY:se,radius:i.value,type:"source","data-type":"source"}))]:null,D.value==="target"||D.value===!0?[n.h("g",{onMousedown:te,onMouseenter:G,onMouseout:ee},n.h(Ju,{position:K,centerX:ae,centerY:_e,radius:i.value,type:"target","data-type":"target"}))]:null]])};function G(){O.value=!0}function ee(){O.value=!1}function re(S,x){v.update({event:S,edge:y.value,connection:x})}function J(S){v.updateEnd({event:S,edge:y.value}),T.value=!1}function ne(S,x){S.button===0&&(T.value=!0,q.value=x?y.value.target:y.value.source,j.value=(x?y.value.targetHandle:y.value.sourceHandle)??null,A.value=x?"target":"source",v.updateStart({event:S,edge:y.value}),$(S))}function z(S){var x;const V={event:S,edge:y.value};C.value&&(l.value=!1,y.value.selected&&m.value?(d([y.value]),(x=I.value)==null||x.blur()):o([y.value])),v.click(V)}function Z(S){v.contextMenu({event:S,edge:y.value})}function ie(S){v.doubleClick({event:S,edge:y.value})}function oe(S){v.mouseEnter({event:S,edge:y.value})}function ue(S){v.mouseMove({event:S,edge:y.value})}function de(S){v.mouseLeave({event:S,edge:y.value})}function Y(S){ne(S,!0)}function te(S){ne(S,!1)}function N(S){var x;!g.value&&au.includes(S.key)&&C.value&&(S.key==="Escape"?((x=I.value)==null||x.blur(),d([f(e.id)])):o([f(e.id)]))}}}),QS=n.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:t,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Te(),p=(e=n.inject(oi))==null?void 0:e["connection-line"],m=n.computed(()=>{var w;return u((w=r.value)==null?void 0:w.nodeId)}),g=n.computed(()=>{var w;return u((w=i.value)==null?void 0:w.nodeId)??null}),_=n.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),h=n.computed(()=>c.value.markerStart?`url(#${Vo(c.value.markerStart,t)})`:""),b=n.computed(()=>c.value.markerEnd?`url(#${Vo(c.value.markerEnd,t)})`:"");return()=>{var w,y,v;if(!m.value||!r.value)return null;const k=r.value.id,E=r.value.type,R=m.value.handleBounds;let O=(R==null?void 0:R[E])??[];if(o.value===Kt.Loose){const F=(R==null?void 0:R[E==="source"?"target":"source"])??[];O=[...O,...F]}if(!O)return null;const T=(k?O.find(F=>F.id===k):O[0])??null,q=(T==null?void 0:T.position)??ge.Top,{x:j,y:A}=zn(m.value,T,q);let I=null;g.value&&(o.value===Kt.Strict?I=((w=g.value.handleBounds[E==="source"?"target":"source"])==null?void 0:w.find(F=>{var B;return F.id===((B=i.value)==null?void 0:B.id)}))||null:I=((y=[...g.value.handleBounds.source??[],...g.value.handleBounds.target??[]])==null?void 0:y.find(F=>{var B;return F.id===((B=i.value)==null?void 0:B.id)}))||null);const C=((v=i.value)==null?void 0:v.position)??(q?tl[q]:null);if(!q||!C)return null;const D=l.value??c.value.type??pn.Bezier;let P="";const L={sourceX:j,sourceY:A,sourcePosition:q,targetX:_.value.x,targetY:_.value.y,targetPosition:C};return D===pn.Bezier?[P]=zu(L):D===pn.Step?[P]=ll({...L,borderRadius:0}):D===pn.SmoothStep?[P]=ll(L):D===pn.SimpleBezier?[P]=Yu(L):P=`M${j},${A} ${_.value.x},${_.value.y}`,n.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},n.h("g",{class:"vue-flow__connection"},p?n.h(p,{sourceX:j,sourceY:A,sourcePosition:q,targetX:_.value.x,targetY:_.value.y,targetPosition:C,sourceNode:m.value,sourceHandle:T,targetNode:g.value,targetHandle:I,markerEnd:b.value,markerStart:h.value,connectionStatus:d.value}):n.h("path",{d:P,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":b.value,"marker-start":h.value})))}}}),ex=["id","markerWidth","markerHeight","markerUnits","orient"],tx={name:"MarkerType",compatConfig:{MODE:3}},nx=n.defineComponent({...tx,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(t,o)=>(n.openBlock(),n.createElementBlock("marker",{id:t.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${t.width}`,markerHeight:`${t.height}`,markerUnits:t.markerUnits,orient:t.orient},[t.type===n.unref(Wr).ArrowClosed?(n.openBlock(),n.createElementBlock("polyline",{key:0,style:n.normalizeStyle({stroke:t.color,fill:t.color,strokeWidth:t.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):n.createCommentVNode("",!0),t.type===n.unref(Wr).Arrow?(n.openBlock(),n.createElementBlock("polyline",{key:1,style:n.normalizeStyle({stroke:t.color,strokeWidth:t.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):n.createCommentVNode("",!0)],8,ex))}}),ox={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},rx={name:"MarkerDefinitions",compatConfig:{MODE:3}},ix=n.defineComponent({...rx,setup(e){const{id:t,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Te(),a=n.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=Vo(d,t);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)=>(n.openBlock(),n.createElementBlock("svg",ox,[n.createElementVNode("defs",null,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(a.value,c=>(n.openBlock(),n.createBlock(nx,{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))])]))}}),ax={name:"Edges",compatConfig:{MODE:3}},lx=n.defineComponent({...ax,setup(e){const{findNode:t,getEdges:o,elevateEdgesOnSelect:r}=Te();return(i,a)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createVNode(ix),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(o),l=>(n.openBlock(),n.createElementBlock("svg",{key:l.id,class:"vue-flow__edges vue-flow__container",style:n.normalizeStyle({zIndex:n.unref(O1)(l,n.unref(t),n.unref(r))})},[n.createVNode(n.unref(JS),{id:l.id},null,8,["id"])],4))),128)),n.createVNode(n.unref(QS))],64))}}),sx=n.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:t,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:g,ariaLiveMessage:_,snapToGrid:h,snapGrid:b,nodeDragThreshold:w,nodesDraggable:y,elementsSelectable:v,nodesConnectable:k,nodesFocusable:E,hooks:R}=Te(),O=n.ref(null);n.provide(Du,O),n.provide(Ru,e.id);const T=n.inject(oi),q=n.getCurrentInstance(),j=Uu(),{node:A,parentNode:I}=Lu(e.id),{emit:C,on:D}=J1(A,l),P=n.toRef(()=>typeof A.draggable>"u"?y.value:A.draggable),L=n.toRef(()=>typeof A.selectable>"u"?v.value:A.selectable),F=n.toRef(()=>typeof A.connectable>"u"?k.value:A.connectable),B=n.toRef(()=>typeof A.focusable>"u"?E.value:A.focusable),$=n.computed(()=>L.value||P.value||R.value.nodeClick.hasListeners()||R.value.nodeDoubleClick.hasListeners()||R.value.nodeMouseEnter.hasListeners()||R.value.nodeMouseMove.hasListeners()||R.value.nodeMouseLeave.hasListeners()),G=n.toRef(()=>!!A.dimensions.width&&!!A.dimensions.height),ee=n.computed(()=>{const x=A.type||"default",V=T==null?void 0:T[`node-${x}`];if(V)return V;let M=A.template||u.value[x];if(typeof M=="string"&&q){const X=Object.keys(q.appContext.components);X&&X.includes(x)&&(M=n.resolveComponent(x,!1))}return M&&typeof M!="string"?M:(l.error(new Ge(De.NODE_TYPE_MISSING,M)),!1)}),re=Mu({id:e.id,el:O,disabled:()=>!P.value,selectable:L,dragHandle:()=>A.dragHandle,onStart(x){C.dragStart(x)},onDrag(x){C.drag(x)},onStop(x){C.dragStop(x)},onClick(x){N(x)}}),J=n.computed(()=>A.class instanceof Function?A.class(A):A.class),ne=n.computed(()=>{const x=(A.style instanceof Function?A.style(A):A.style)||{},V=A.width instanceof Function?A.width(A):A.width,M=A.height instanceof Function?A.height(A):A.height;return!x.width&&V&&(x.width=typeof V=="string"?V:`${V}px`),!x.height&&M&&(x.height=typeof M=="string"?M:`${M}px`),x}),z=n.toRef(()=>Number(A.zIndex??ne.value.zIndex??0));return f(x=>{(x.includes(e.id)||!x.length)&&ie()}),n.onMounted(()=>{n.watch(()=>A.hidden,(x=!1,V,M)=>{!x&&O.value&&(e.resizeObserver.observe(O.value),M(()=>{O.value&&e.resizeObserver.unobserve(O.value)}))},{immediate:!0,flush:"post"})}),n.watch([()=>A.type,()=>A.sourcePosition,()=>A.targetPosition],()=>{n.nextTick(()=>{d([{id:e.id,nodeElement:O.value,forceUpdate:!0}])})}),n.watch([()=>A.position.x,()=>A.position.y,()=>{var x;return(x=I.value)==null?void 0:x.computedPosition.x},()=>{var x;return(x=I.value)==null?void 0:x.computedPosition.y},()=>{var x;return(x=I.value)==null?void 0:x.computedPosition.z},z,()=>A.selected,()=>A.dimensions.height,()=>A.dimensions.width,()=>{var x;return(x=I.value)==null?void 0:x.dimensions.height},()=>{var x;return(x=I.value)==null?void 0:x.dimensions.width}],([x,V,M,X,Q,U])=>{const W={x,y:V,z:U+(m.value&&A.selected?1e3:0)};typeof M<"u"&&typeof X<"u"?A.computedPosition=S1({x:M,y:X,z:Q},W):A.computedPosition=W},{flush:"post",immediate:!0}),n.watch([()=>A.extent,p],([x,V],[M,X])=>{(x!==M||V!==X)&&Z()}),A.extent==="parent"||typeof A.extent=="object"&&"range"in A.extent&&A.extent.range==="parent"?Sa(()=>G).toBe(!0).then(Z):Z(),()=>A.hidden?null:n.h("div",{ref:O,"data-id":A.id,class:["vue-flow__node",`vue-flow__node-${ee.value===!1?"default":A.type||"default"}`,{[o.value]:P.value,dragging:re==null?void 0:re.value,draggable:P.value,selected:A.selected,selectable:L.value,parent:A.isParent},J.value],style:{visibility:G.value?"visible":"hidden",zIndex:A.computedPosition.z??z.value,transform:`translate(${A.computedPosition.x}px,${A.computedPosition.y}px)`,pointerEvents:$.value?"all":"none",...ne.value},tabIndex:B.value?0:void 0,role:B.value?"group":void 0,"aria-describedby":g.value?void 0:`${ru}-${t}`,"aria-label":A.ariaLabel,"aria-roledescription":"node",...A.domAttributes,onMouseenter:oe,onMousemove:ue,onMouseleave:de,onContextmenu:Y,onClick:N,onDblclick:te,onKeydown:S},[n.h(ee.value===!1?u.value.default:ee.value,{id:A.id,type:A.type,data:A.data,events:{...A.events,...D},selected:A.selected,resizing:A.resizing,dragging:re.value,connectable:F.value,position:A.computedPosition,dimensions:A.dimensions,isValidTargetPos:A.isValidTargetPos,isValidSourcePos:A.isValidSourcePos,parent:A.parentNode,parentNodeId:A.parentNode,zIndex:A.computedPosition.z??z.value,targetPosition:A.targetPosition,sourcePosition:A.sourcePosition,label:A.label,dragHandle:A.dragHandle,onUpdateNodeInternals:ie})]);function Z(){const x=A.computedPosition,{computedPosition:V,position:M}=Ja(A,h.value?ti(x,b.value):x,l.error,p.value,I.value);(A.computedPosition.x!==V.x||A.computedPosition.y!==V.y)&&(A.computedPosition={...A.computedPosition,...V}),(A.position.x!==M.x||A.position.y!==M.y)&&(A.position=M)}function ie(){O.value&&d([{id:e.id,nodeElement:O.value,forceUpdate:!0}])}function oe(x){re!=null&&re.value||C.mouseEnter({event:x,node:A})}function ue(x){re!=null&&re.value||C.mouseMove({event:x,node:A})}function de(x){re!=null&&re.value||C.mouseLeave({event:x,node:A})}function Y(x){return C.contextMenu({event:x,node:A})}function te(x){return C.doubleClick({event:x,node:A})}function N(x){L.value&&(!r.value||!P.value||w.value>0)&&nl(A,a.value,c,s,i,!1,O.value),C.click({event:x,node:A})}function S(x){if(!(Ya(x)||g.value))if(au.includes(x.key)&&L.value){const V=x.key==="Escape";nl(A,a.value,c,s,i,V,O.value)}else P.value&&A.selected&&qn[x.key]&&(x.preventDefault(),_.value=`Moved selected node ${x.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~A.position.x}, y: ${~~A.position.y}`,j({x:qn[x.key].x,y:qn[x.key].y},x.shiftKey))}}});function cx(e={includeHiddenNodes:!1}){const{nodes:t}=Te();return n.computed(()=>{if(t.value.length===0)return!1;for(const o of t.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 dx={class:"vue-flow__nodes vue-flow__container"},ux={name:"Nodes",compatConfig:{MODE:3}},fx=n.defineComponent({...ux,setup(e){const{getNodes:t,updateNodeDimensions:o,emits:r}=Te(),i=cx(),a=n.ref();return n.watch(i,l=>{l&&n.nextTick(()=>{r.nodesInitialized(t.value)})},{immediate:!0}),n.onMounted(()=>{a.value=new ResizeObserver(l=>{const s=l.map(c=>({id:c.target.getAttribute("data-id"),nodeElement:c.target,forceUpdate:!0}));n.nextTick(()=>o(s))})}),n.onBeforeUnmount(()=>{var l;return(l=a.value)==null?void 0:l.disconnect()}),(l,s)=>(n.openBlock(),n.createElementBlock("div",dx,[a.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(n.unref(t),(c,d,f,u)=>{const p=[c.id];if(u&&u.key===c.id&&n.isMemoSame(u,p))return u;const m=(n.openBlock(),n.createBlock(n.unref(sx),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):n.createCommentVNode("",!0)]))}});function px(){const{emits:e}=Te();n.onMounted(()=>{if(Iu()){const t=document.querySelector(".vue-flow__pane");t&&window.getComputedStyle(t).zIndex!=="1"&&e.error(new Ge(De.MISSING_STYLES))}})}const mx=n.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),gx={name:"VueFlow",compatConfig:{MODE:3}},Qu=n.defineComponent({...gx,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:t,emit:o}){const r=e,i=n.useSlots(),a=xa(r,"modelValue",o),l=xa(r,"nodes",o),s=xa(r,"edges",o),c=Te(r),d=nS({modelValue:a,nodes:l,edges:s},r,c);return rS(o,c.hooks),WS(),px(),n.provide(oi,i),n.onUnmounted(()=>{d()}),t(c),(f,u)=>(n.openBlock(),n.createElementBlock("div",{ref:n.unref(c).vueFlowRef,class:"vue-flow"},[n.createVNode(jS,null,{default:n.withCtx(()=>[n.createVNode(lx),mx,n.createVNode(fx),n.renderSlot(f.$slots,"zoom-pane")]),_:3}),n.renderSlot(f.$slots,"default"),n.createVNode(YS)],512))}}),hx={name:"Panel",compatConfig:{MODE:3}},yx=n.defineComponent({...hx,props:{position:{}},setup(e){const t=e,{userSelectionActive:o}=Te(),r=n.computed(()=>`${t.position}`.split("-"));return(i,a)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["vue-flow__panel",r.value]),style:n.normalizeStyle({pointerEvents:n.unref(o)?"none":"all"})},[n.renderSlot(i.$slots,"default")],6))}});var Ft=(e=>(e.Lines="lines",e.Dots="dots",e))(Ft||{});const ef=function({dimensions:e,size:t,color:o}){return n.h("path",{stroke:o,"stroke-width":t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},tf=function({radius:e,color:t}){return n.h("circle",{cx:e,cy:e,r:e,fill:t})};Ft.Lines+"",Ft.Dots+"";const _x={[Ft.Dots]:"#81818a",[Ft.Lines]:"#eee"},bx=["id","x","y","width","height","patternTransform"],wx={key:2,height:"100",width:"100"},Ex=["fill"],kx=["x","y","fill"],Cx={name:"Background",compatConfig:{MODE:3}},vx=n.defineComponent({...Cx,props:{id:{},variant:{default:()=>Ft.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:t,viewport:o}=Te(),r=n.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=n.toRef(()=>`pattern-${t}${e.id?`-${e.id}`:""}`),a=n.toRef(()=>e.color||e.patternColor||_x[e.variant||Ft.Dots]);return(l,s)=>(n.openBlock(),n.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:n.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[n.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[n.createElementVNode("pattern",{id:i.value,x:n.unref(o).x%r.value.scaledGap[0],y:n.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"},[n.renderSlot(l.$slots,"pattern",{},()=>[l.variant===n.unref(Ft).Lines?(n.openBlock(),n.createBlock(n.unref(ef),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===n.unref(Ft).Dots?(n.openBlock(),n.createBlock(n.unref(tf),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):n.createCommentVNode("",!0),l.bgColor?(n.openBlock(),n.createElementBlock("svg",wx,[n.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,Ex)])):n.createCommentVNode("",!0)])],8,bx)]),n.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,kx),n.renderSlot(l.$slots,"default",{id:i.value})],4))}}),Nx={name:"ControlButton",compatConfig:{MODE:3}},Sx=(e,t)=>{const o=e.__vccOpts||e;for(const[r,i]of t)o[r]=i;return o},xx={class:"vue-flow__controls-button"};function Ax(e,t,o,r,i,a){return n.openBlock(),n.createElementBlock("button",xx,[n.renderSlot(e.$slots,"default")])}const di=Sx(Nx,[["render",Ax]]),Tx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},Ix=[n.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function Px(e,t){return n.openBlock(),n.createElementBlock("svg",Tx,Ix)}const Ox={render:Px},$x={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},Bx=[n.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function Vx(e,t){return n.openBlock(),n.createElementBlock("svg",$x,Bx)}const Rx={render:Vx},Dx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},Mx=[n.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 Fx(e,t){return n.openBlock(),n.createElementBlock("svg",Dx,Mx)}const Lx={render:Fx},Ux={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},Kx=[n.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 jx(e,t){return n.openBlock(),n.createElementBlock("svg",Ux,Kx)}const Gx={render:jx},qx={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},zx=[n.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 Hx(e,t){return n.openBlock(),n.createElementBlock("svg",qx,zx)}const Yx={render:Hx},Wx={name:"Controls",compatConfig:{MODE:3}},Xx=n.defineComponent({...Wx,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>nu.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:t}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Te(),p=n.toRef(()=>o.value||r.value||i.value),m=n.toRef(()=>d.value.zoom<=f.value),g=n.toRef(()=>d.value.zoom>=u.value);function _(){l(),t("zoomIn")}function h(){s(),t("zoomOut")}function b(){c(e.fitViewParams),t("fitView")}function w(){a(!p.value),t("interactionChange",!p.value)}return(y,v)=>(n.openBlock(),n.createBlock(n.unref(yx),{class:"vue-flow__controls",position:y.position},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"top"),y.showZoom?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.renderSlot(y.$slots,"control-zoom-in",{},()=>[n.createVNode(di,{class:"vue-flow__controls-zoomin",disabled:g.value,onClick:_},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-zoom-in",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Ox))))])]),_:3},8,["disabled"])]),n.renderSlot(y.$slots,"control-zoom-out",{},()=>[n.createVNode(di,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:h},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-zoom-out",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Rx))))])]),_:3},8,["disabled"])])],64)):n.createCommentVNode("",!0),y.showFitView?n.renderSlot(y.$slots,"control-fit-view",{key:1},()=>[n.createVNode(di,{class:"vue-flow__controls-fitview",onClick:b},{default:n.withCtx(()=>[n.renderSlot(y.$slots,"icon-fit-view",{},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Lx))))])]),_:3})]):n.createCommentVNode("",!0),y.showInteractive?n.renderSlot(y.$slots,"control-interactive",{key:2},()=>[y.showInteractive?(n.openBlock(),n.createBlock(di,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:n.withCtx(()=>[p.value?n.renderSlot(y.$slots,"icon-unlock",{key:0},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Yx))))]):n.createCommentVNode("",!0),p.value?n.createCommentVNode("",!0):n.renderSlot(y.$slots,"icon-lock",{key:1},()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(Gx))))])]),_:3})):n.createCommentVNode("",!0)]):n.createCommentVNode("",!0),n.renderSlot(y.$slots,"default")]),_:3},8,["position"]))}});function Zx(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Jx="\0",yn="\0",nf="";let Qx=class{constructor(t){Ke(this,"_isDirected",!0);Ke(this,"_isMultigraph",!1);Ke(this,"_isCompound",!1);Ke(this,"_label");Ke(this,"_defaultNodeLabelFn",()=>{});Ke(this,"_defaultEdgeLabelFn",()=>{});Ke(this,"_nodes",{});Ke(this,"_in",{});Ke(this,"_preds",{});Ke(this,"_out",{});Ke(this,"_sucs",{});Ke(this,"_edgeObjs",{});Ke(this,"_edgeLabels",{});Ke(this,"_nodeCount",0);Ke(this,"_edgeCount",0);Ke(this,"_parent");Ke(this,"_children");t&&(this._isDirected=Object.hasOwn(t,"directed")?t.directed:!0,this._isMultigraph=Object.hasOwn(t,"multigraph")?t.multigraph:!1,this._isCompound=Object.hasOwn(t,"compound")?t.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[yn]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(t){return this._label=t,this}graph(){return this._label}setDefaultNodeLabel(t){return this._defaultNodeLabelFn=t,typeof t!="function"&&(this._defaultNodeLabelFn=()=>t),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var t=this;return this.nodes().filter(o=>Object.keys(t._in[o]).length===0)}sinks(){var t=this;return this.nodes().filter(o=>Object.keys(t._out[o]).length===0)}setNodes(t,o){var r=arguments,i=this;return t.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(t,o){return Object.hasOwn(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=o),this):(this._nodes[t]=arguments.length>1?o:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=yn,this._children[t]={},this._children[yn][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)}node(t){return this._nodes[t]}hasNode(t){return Object.hasOwn(this._nodes,t)}removeNode(t){var o=this;if(Object.hasOwn(this._nodes,t)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],this.children(t).forEach(function(i){o.setParent(i)}),delete this._children[t]),Object.keys(this._in[t]).forEach(r),delete this._in[t],delete this._preds[t],Object.keys(this._out[t]).forEach(r),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this}setParent(t,o){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(o===void 0)o=yn;else{o+="";for(var r=o;r!==void 0;r=this.parent(r))if(r===t)throw new Error("Setting "+o+" as parent of "+t+" would create a cycle");this.setNode(o)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=o,this._children[o][t]=!0,this}_removeFromParentsChildList(t){delete this._children[this._parent[t]][t]}parent(t){if(this._isCompound){var o=this._parent[t];if(o!==yn)return o}}children(t=yn){if(this._isCompound){var o=this._children[t];if(o)return Object.keys(o)}else{if(t===yn)return this.nodes();if(this.hasNode(t))return[]}}predecessors(t){var o=this._preds[t];if(o)return Object.keys(o)}successors(t){var o=this._sucs[t];if(o)return Object.keys(o)}neighbors(t){var o=this.predecessors(t);if(o){const i=new Set(o);for(var r of this.successors(t))i.add(r);return Array.from(i.values())}}isLeaf(t){var o;return this.isDirected()?o=this.successors(t):o=this.neighbors(t),o.length===0}filterNodes(t){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]){t(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(t){return this._defaultEdgeLabelFn=t,typeof t!="function"&&(this._defaultEdgeLabelFn=()=>t),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(t,o){var r=this,i=arguments;return t.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var t,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(t=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(t=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),t=""+t,o=""+o,r!==void 0&&(r=""+r);var s=Ro(this._isDirected,t,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(t),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(t,o,r);var c=eA(this._isDirected,t,o,r);return t=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,of(this._preds[o],t),of(this._sucs[t],o),this._in[o][s]=c,this._out[t][s]=c,this._edgeCount++,this}edge(t,o,r){var i=arguments.length===1?cl(this._isDirected,arguments[0]):Ro(this._isDirected,t,o,r);return this._edgeLabels[i]}edgeAsObj(){const t=this.edge(...arguments);return typeof t!="object"?{label:t}:t}hasEdge(t,o,r){var i=arguments.length===1?cl(this._isDirected,arguments[0]):Ro(this._isDirected,t,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(t,o,r){var i=arguments.length===1?cl(this._isDirected,arguments[0]):Ro(this._isDirected,t,o,r),a=this._edgeObjs[i];return a&&(t=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],rf(this._preds[o],t),rf(this._sucs[t],o),delete this._in[o][i],delete this._out[t][i],this._edgeCount--),this}inEdges(t,o){var r=this._in[t];if(r){var i=Object.values(r);return o?i.filter(a=>a.v===o):i}}outEdges(t,o){var r=this._out[t];if(r){var i=Object.values(r);return o?i.filter(a=>a.w===o):i}}nodeEdges(t,o){var r=this.inEdges(t,o);if(r)return r.concat(this.outEdges(t,o))}};function of(e,t){e[t]?e[t]++:e[t]=1}function rf(e,t){--e[t]||delete e[t]}function Ro(e,t,o,r){var i=""+t,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+nf+a+nf+(r===void 0?Jx:r)}function eA(e,t,o,r){var i=""+t,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 cl(e,t){return Ro(e,t.v,t.w,t.name)}var dl=Qx,tA="2.2.4",nA={Graph:dl,version:tA},oA=dl,rA={write:iA,read:sA};function iA(e){var t={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:aA(e),edges:lA(e)};return e.graph()!==void 0&&(t.value=structuredClone(e.graph())),t}function aA(e){return e.nodes().map(function(t){var o=e.node(t),r=e.parent(t),i={v:t};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function lA(e){return e.edges().map(function(t){var o=e.edge(t),r={v:t.v,w:t.w};return t.name!==void 0&&(r.name=t.name),o!==void 0&&(r.value=o),r})}function sA(e){var t=new oA(e.options).setGraph(e.value);return e.nodes.forEach(function(o){t.setNode(o.v,o.value),o.parent&&t.setParent(o.v,o.parent)}),e.edges.forEach(function(o){t.setEdge({v:o.v,w:o.w,name:o.name},o.value)}),t}var cA=dA;function dA(e){var t={},o=[],r;function i(a){Object.hasOwn(t,a)||(t[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 af=class{constructor(){Ke(this,"_arr",[]);Ke(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(t){return t.key})}has(t){return Object.hasOwn(this._keyIndices,t)}priority(t){var o=this._keyIndices[t];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(t,o){var r=this._keyIndices;if(t=String(t),!Object.hasOwn(r,t)){var i=this._arr,a=i.length;return r[t]=a,i.push({key:t,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key}decrease(t,o){var r=this._keyIndices[t];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(t){var o=this._arr,r=2*t,i=r+1,a=t;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!==t&&(this._swap(t,a),this._heapify(a)))}_decrease(t){for(var o=this._arr,r=o[t].priority,i;t!==0&&(i=t>>1,!(o[i].priority<r));)this._swap(t,i),t=i}_swap(t,o){var r=this._arr,i=this._keyIndices,a=r[t],l=r[o];r[t]=l,r[o]=a,i[l.key]=t,i[a.key]=o}},uA=af,lf=pA,fA=()=>1;function pA(e,t,o,r){return mA(e,String(t),o||fA,r||function(i){return e.outEdges(i)})}function mA(e,t,o,r){var i={},a=new uA,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===t?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 gA=lf,hA=yA;function yA(e,t,o){return e.nodes().reduce(function(r,i){return r[i]=gA(e,i,t,o),r},{})}var sf=_A;function _A(e){var t=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:t,index:t++};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 bA=sf,wA=EA;function EA(e){return bA(e).filter(function(t){return t.length>1||t.length===1&&e.hasEdge(t[0],t[0])})}var kA=vA,CA=()=>1;function vA(e,t,o){return NA(e,t||CA,o||function(r){return e.outEdges(r)})}function NA(e,t,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=t(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 cf(e){var t={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new ul;Object.hasOwn(t,a)||(o[a]=!0,t[a]=!0,e.predecessors(a).forEach(i),delete o[a],r.push(a))}if(e.sinks().forEach(i),Object.keys(t).length!==e.nodeCount())throw new ul;return r}class ul extends Error{constructor(){super(...arguments)}}var df=cf;cf.CycleException=ul;var uf=df,SA=xA;function xA(e){try{uf(e)}catch(t){if(t instanceof uf.CycleException)return!1;throw t}return!0}var ff=AA;function AA(e,t,o){Array.isArray(t)||(t=[t]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?TA:IA,a=[],l={};return t.forEach(s=>{if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,r,l,a)}),a}function TA(e,t,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]),pf(t(a[0]),l=>i.push([l,!1])))}}function IA(e,t,o,r){for(var i=[e];i.length>0;){var a=i.pop();Object.hasOwn(o,a)||(o[a]=!0,r.push(a),pf(t(a),l=>i.push(l)))}}function pf(e,t){for(var o=e.length;o--;)t(e[o],o,e);return e}var PA=ff,OA=$A;function $A(e,t){return PA(e,t,"post")}var BA=ff,VA=RA;function RA(e,t){return BA(e,t,"pre")}var DA=dl,MA=af,FA=LA;function LA(e,t){var o=new DA,r={},i=new MA,a;function l(c){var d=c.v===a?c.w:c.v,f=i.priority(d);if(f!==void 0){var u=t(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 UA={components:cA,dijkstra:lf,dijkstraAll:hA,findCycles:wA,floydWarshall:kA,isAcyclic:SA,postorder:OA,preorder:VA,prim:FA,tarjan:sf,topsort:df},mf=nA,_t={Graph:mf.Graph,json:rA,alg:UA,version:mf.version};let KA=class{constructor(){let t={};t._next=t._prev=t,this._sentinel=t}dequeue(){let t=this._sentinel,o=t._prev;if(o!==t)return gf(o),o}enqueue(t){let o=this._sentinel;t._prev&&t._next&&gf(t),t._next=o._next,o._next._prev=t,o._next=t,t._prev=o}toString(){let t=[],o=this._sentinel,r=o._prev;for(;r!==o;)t.push(JSON.stringify(r,jA)),r=r._prev;return"["+t.join(", ")+"]"}};function gf(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function jA(e,t){if(e!=="_next"&&e!=="_prev")return t}var GA=KA;let qA=_t.Graph,zA=GA;var HA=WA;let YA=()=>1;function WA(e,t){if(e.nodeCount()<=1)return[];let o=ZA(e,t||YA);return XA(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function XA(e,t,o){let r=[],i=t[t.length-1],a=t[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)fl(e,t,o,l);for(;l=i.dequeue();)fl(e,t,o,l);if(e.nodeCount()){for(let s=t.length-2;s>0;--s)if(l=t[s].dequeue(),l){r=r.concat(fl(e,t,o,l,!0));break}}}return r}function fl(e,t,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,pl(t,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,pl(t,o,d)}),e.removeNode(r.v),a}function ZA(e,t){let o=new qA,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=t(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=JA(i+r+3).map(()=>new zA),l=r+1;return o.nodes().forEach(s=>{pl(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function pl(e,t,o){o.out?o.in?e[o.out-o.in+t].enqueue(o):e[e.length-1].enqueue(o):e[0].enqueue(o)}function JA(e){const t=[];for(let o=0;o<e;o++)t.push(o);return t}let hf=_t.Graph;var Fe={addBorderNode:lT,addDummyNode:yf,applyWithChunking:ui,asNonCompoundGraph:eT,buildLayerMatrix:rT,intersectRect:oT,mapValues:mT,maxRank:bf,normalizeRanks:iT,notime:uT,partition:cT,pick:pT,predecessorWeights:nT,range:Ef,removeEmptyRanks:aT,simplify:QA,successorWeights:tT,time:dT,uniqueId:wf,zipObject:ml};function yf(e,t,o,r){for(var i=r;e.hasNode(i);)i=wf(r);return o.dummy=t,e.setNode(i,o),i}function QA(e){let t=new hf().setGraph(e.graph());return e.nodes().forEach(o=>t.setNode(o,e.node(o))),e.edges().forEach(o=>{let r=t.edge(o.v,o.w)||{weight:0,minlen:1},i=e.edge(o);t.setEdge(o.v,o.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),t}function eT(e){let t=new hf({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(o=>{e.children(o).length||t.setNode(o,e.node(o))}),e.edges().forEach(o=>{t.setEdge(o,e.edge(o))}),t}function tT(e){let t=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 ml(e.nodes(),t)}function nT(e){let t=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 ml(e.nodes(),t)}function oT(e,t){let o=e.x,r=e.y,i=t.x-o,a=t.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 rT(e){let t=Ef(bf(e)+1).map(()=>[]);return e.nodes().forEach(o=>{let r=e.node(o),i=r.rank;i!==void 0&&(t[i][r.order]=o)}),t}function iT(e){let t=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=ui(Math.min,t);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function aT(e){let t=e.nodes().map(l=>e.node(l).rank),o=ui(Math.min,t),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 lT(e,t,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),yf(e,"border",i,t)}function sT(e,t=_f){const o=[];for(let r=0;r<e.length;r+=t){const i=e.slice(r,r+t);o.push(i)}return o}const _f=65535;function ui(e,t){if(t.length>_f){const o=sT(t);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,t)}function bf(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return ui(Math.max,o)}function cT(e,t){let o={lhs:[],rhs:[]};return e.forEach(r=>{t(r)?o.lhs.push(r):o.rhs.push(r)}),o}function dT(e,t){let o=Date.now();try{return t()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function uT(e,t){return t()}let fT=0;function wf(e){var t=++fT;return e+(""+t)}function Ef(e,t,o=1){t==null&&(t=e,e=0);let r=a=>a<t;o<0&&(r=a=>t<a);const i=[];for(let a=e;r(a);a+=o)i.push(a);return i}function pT(e,t){const o={};for(const r of t)e[r]!==void 0&&(o[r]=e[r]);return o}function mT(e,t){let o=t;return typeof t=="string"&&(o=r=>r[t]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function ml(e,t){return e.reduce((o,r,i)=>(o[r]=t[i],o),{})}let gT=HA,hT=Fe.uniqueId;var yT={run:_T,undo:wT};function _T(e){(e.graph().acyclicer==="greedy"?gT(e,o(e)):bT(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,hT("rev"))});function o(r){return i=>r.edge(i).weight}}function bT(e){let t=[],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)?t.push(l):i(l.w)}),delete o[a])}return e.nodes().forEach(i),t}function wT(e){e.edges().forEach(t=>{let o=e.edge(t);if(o.reversed){e.removeEdge(t);let r=o.forwardName;delete o.reversed,delete o.forwardName,e.setEdge(t.w,t.v,o,r)}})}let ET=Fe;var kT={run:CT,undo:NT};function CT(e){e.graph().dummyChains=[],e.edges().forEach(t=>vT(e,t))}function vT(e,t){let o=t.v,r=e.node(o).rank,i=t.w,a=e.node(i).rank,l=t.name,s=e.edge(t),c=s.labelRank;if(a===r+1)return;e.removeEdge(t);let d,f,u;for(u=0,++r;r<a;++u,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:t,rank:r},d=ET.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 NT(e){e.graph().dummyChains.forEach(t=>{let o=e.node(t),r=o.edgeLabel,i;for(e.setEdge(o.edgeObj,r);o.dummy;)i=e.successors(t)[0],e.removeNode(t),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),t=i,o=e.node(t)})}const{applyWithChunking:ST}=Fe;var fi={longestPath:xT,slack:AT};function xT(e){var t={};function o(r){var i=e.node(r);if(Object.hasOwn(t,r))return i.rank;t[r]=!0;let a=e.outEdges(r).map(s=>s==null?Number.POSITIVE_INFINITY:o(s.w)-e.edge(s).minlen);var l=ST(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function AT(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}var TT=_t.Graph,pi=fi.slack,kf=IT;function IT(e){var t=new TT({directed:!1}),o=e.nodes()[0],r=e.nodeCount();t.setNode(o,{});for(var i,a;PT(t,e)<r;)i=OT(t,e),a=t.hasNode(i.v)?pi(e,i):-pi(e,i),$T(t,e,a);return t}function PT(e,t){function o(r){t.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!pi(t,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function OT(e,t){return t.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=pi(t,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function $T(e,t,o){e.nodes().forEach(r=>t.node(r).rank+=o)}var BT=kf,Cf=fi.slack,VT=fi.longestPath,RT=_t.alg.preorder,DT=_t.alg.postorder,MT=Fe.simplify,FT=_n;_n.initLowLimValues=hl,_n.initCutValues=gl,_n.calcCutValue=vf,_n.leaveEdge=Sf,_n.enterEdge=xf,_n.exchangeEdges=Af;function _n(e){e=MT(e),VT(e);var t=BT(e);hl(t),gl(t,e);for(var o,r;o=Sf(t);)r=xf(t,e,o),Af(t,e,o,r)}function gl(e,t){var o=DT(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>LT(e,t,r))}function LT(e,t,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=vf(e,t,o)}function vf(e,t,o){var r=e.node(o),i=r.parent,a=!0,l=t.edge(o,i),s=0;return l||(a=!1,l=t.edge(i,o)),s=l.weight,t.nodeEdges(o).forEach(c=>{var d=c.v===o,f=d?c.w:c.v;if(f!==i){var u=d===a,p=t.edge(c).weight;if(s+=u?p:-p,KT(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function hl(e,t){arguments.length<2&&(t=e.nodes()[0]),Nf(e,{},1,t)}function Nf(e,t,o,r,i){var a=o,l=e.node(r);return t[r]=!0,e.neighbors(r).forEach(s=>{Object.hasOwn(t,s)||(o=Nf(e,t,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function Sf(e){return e.edges().find(t=>e.edge(t).cutvalue<0)}function xf(e,t,o){var r=o.v,i=o.w;t.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=t.edges().filter(f=>c===Tf(e,e.node(f.v),s)&&c!==Tf(e,e.node(f.w),s));return d.reduce((f,u)=>Cf(t,u)<Cf(t,f)?u:f)}function Af(e,t,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),hl(e),gl(e,t),UT(e,t)}function UT(e,t){var o=e.nodes().find(i=>!t.node(i).parent),r=RT(e,o);r=r.slice(1),r.forEach(i=>{var a=e.node(i).parent,l=t.edge(i,a),s=!1;l||(l=t.edge(a,i),s=!0),t.node(i).rank=t.node(a).rank+(s?l.minlen:-l.minlen)})}function KT(e,t,o){return e.hasEdge(t,o)}function Tf(e,t,o){return o.low<=t.lim&&t.lim<=o.lim}var jT=fi,If=jT.longestPath,GT=kf,qT=FT,zT=HT;function HT(e){var t=e.graph().ranker;if(t instanceof Function)return t(e);switch(e.graph().ranker){case"network-simplex":Pf(e);break;case"tight-tree":WT(e);break;case"longest-path":YT(e);break;case"none":break;default:Pf(e)}}var YT=If;function WT(e){If(e),GT(e)}function Pf(e){qT(e)}var XT=ZT;function ZT(e){let t=QT(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=JT(e,t,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 JT(e,t,o,r){let i=[],a=[],l=Math.min(t[o].low,t[r].low),s=Math.max(t[o].lim,t[r].lim),c,d;c=o;do c=e.parent(c),i.push(c);while(c&&(t[c].low>l||s>t[c].lim));for(d=c,c=r;(c=e.parent(c))!==d;)a.push(c);return{path:i.concat(a.reverse()),lca:d}}function QT(e){let t={},o=0;function r(i){let a=o;e.children(i).forEach(r),t[i]={low:a,lim:o++}}return e.children().forEach(r),t}let mi=Fe;var eI={run:tI,cleanup:rI};function tI(e){let t=mi.addDummyNode(e,"root",{},"_root"),o=nI(e),r=Object.values(o),i=mi.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=t,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=oI(e)+1;e.children().forEach(s=>Of(e,t,a,l,i,o,s)),e.graph().nodeRankFactor=a}function Of(e,t,o,r,i,a,l){let s=e.children(l);if(!s.length){l!==t&&e.setEdge(t,l,{weight:0,minlen:o});return}let c=mi.addBorderNode(e,"_bt"),d=mi.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{Of(e,t,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,g=p.borderBottom?p.borderBottom:u,_=p.borderTop?r:2*r,h=m!==g?1:i-a[l]+1;e.setEdge(c,m,{weight:_,minlen:h,nestingEdge:!0}),e.setEdge(g,d,{weight:_,minlen:h,nestingEdge:!0})}),e.parent(l)||e.setEdge(t,c,{weight:0,minlen:i+a[l]})}function nI(e){var t={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),t[r]=i}return e.children().forEach(r=>o(r,1)),t}function oI(e){return e.edges().reduce((t,o)=>t+e.edge(o).weight,0)}function rI(e){var t=e.graph();e.removeNode(t.nestingRoot),delete t.nestingRoot,e.edges().forEach(o=>{var r=e.edge(o);r.nestingEdge&&e.removeEdge(o)})}let iI=Fe;var aI=lI;function lI(e){function t(o){let r=e.children(o),i=e.node(o);if(r.length&&r.forEach(t),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,l=i.maxRank+1;a<l;++a)$f(e,"borderLeft","_bl",o,i,a),$f(e,"borderRight","_br",o,i,a)}}e.children().forEach(t)}function $f(e,t,o,r,i,a){let l={width:0,height:0,rank:a,borderType:t},s=i[t][a-1],c=iI.addDummyNode(e,"border",l,o);i[t][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var sI={adjust:cI,undo:dI};function cI(e){let t=e.graph().rankdir.toLowerCase();(t==="lr"||t==="rl")&&Bf(e)}function dI(e){let t=e.graph().rankdir.toLowerCase();(t==="bt"||t==="rl")&&uI(e),(t==="lr"||t==="rl")&&(fI(e),Bf(e))}function Bf(e){e.nodes().forEach(t=>Vf(e.node(t))),e.edges().forEach(t=>Vf(e.edge(t)))}function Vf(e){let t=e.width;e.width=e.height,e.height=t}function uI(e){e.nodes().forEach(t=>yl(e.node(t))),e.edges().forEach(t=>{let o=e.edge(t);o.points.forEach(yl),Object.hasOwn(o,"y")&&yl(o)})}function yl(e){e.y=-e.y}function fI(e){e.nodes().forEach(t=>_l(e.node(t))),e.edges().forEach(t=>{let o=e.edge(t);o.points.forEach(_l),Object.hasOwn(o,"x")&&_l(o)})}function _l(e){let t=e.x;e.x=e.y,e.y=t}let Rf=Fe;var pI=mI;function mI(e){let t={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=Rf.applyWithChunking(Math.max,r),a=Rf.range(i+1).map(()=>[]);function l(c){if(t[c])return;t[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 gI=Fe.zipObject;var hI=yI;function yI(e,t){let o=0;for(let r=1;r<t.length;++r)o+=_I(e,t[r-1],t[r]);return o}function _I(e,t,o){let r=gI(o,o.map((d,f)=>f)),i=t.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 bI=wI;function wI(e,t=[]){return t.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 EI=Fe;var kI=CI;function CI(e,t){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)}),t.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 vI(r)}function vI(e){let t=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&NI(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();t.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return t.filter(i=>!i.merged).map(i=>EI.pick(i,["vs","i","barycenter","weight"]))}function NI(e,t){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),t.weight&&(o+=t.barycenter*t.weight,r+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}let SI=Fe;var xI=AI;function AI(e,t){let o=SI.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(TI(!!t)),c=Df(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Df(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Df(e,t,o){let r;for(;t.length&&(r=t[t.length-1]).i<=o;)t.pop(),e.push(r.vs),o++;return o}function TI(e){return(t,o)=>t.barycenter<o.barycenter?-1:t.barycenter>o.barycenter?1:e?o.i-t.i:t.i-o.i}let II=bI,PI=kI,OI=xI;var $I=Mf;function Mf(e,t,o,r){let i=e.children(t),a=e.node(t),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let d=II(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Mf(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&VI(p,m)}});let f=PI(d,o);BI(f,c);let u=OI(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 BI(e,t){e.forEach(o=>{o.vs=o.vs.flatMap(r=>t[r]?t[r].vs:r)})}function VI(e,t){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight):(e.barycenter=t.barycenter,e.weight=t.weight)}let RI=_t.Graph,DI=Fe;var MI=FI;function FI(e,t,o){let r=LI(e),i=new RI({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===t||l.minRank<=t&&t<=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[t],borderRight:l.borderRight[t]}))}),i}function LI(e){for(var t;e.hasNode(t=DI.uniqueId("_root")););return t}var UI=KI;function KI(e,t,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){t.setEdge(c,l);return}l=s}})}let jI=pI,GI=hI,qI=$I,zI=MI,HI=UI,YI=_t.Graph,gi=Fe;var WI=Ff;function Ff(e,t){if(t&&typeof t.customOrder=="function"){t.customOrder(e,Ff);return}let o=gi.maxRank(e),r=Lf(e,gi.range(1,o+1),"inEdges"),i=Lf(e,gi.range(o-1,-1,-1),"outEdges"),a=jI(e);if(Uf(e,a),t&&t.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){XI(c%2?r:i,c%4>=2),a=gi.buildLayerMatrix(e);let f=GI(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}Uf(e,s)}function Lf(e,t,o){return t.map(function(r){return zI(e,r,o)})}function XI(e,t){let o=new YI;e.forEach(function(r){let i=r.graph().root,a=qI(r,i,o,t);a.vs.forEach((l,s)=>r.node(l).order=s),HI(r,o,a.vs)})}function Uf(e,t){Object.values(t).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let ZI=_t.Graph,Lt=Fe;var JI={positionX:cP};function QI(e,t){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=tP(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(g=>{e.predecessors(g).forEach(_=>{let h=e.node(_),b=h.order;(b<l||m<b)&&!(h.dummy&&e.node(g).dummy)&&Kf(o,_,g)})}),s=u+1,l=m)}),a}return t.length&&t.reduce(r),o}function eP(e,t){let o={};function r(a,l,s,c,d){let f;Lt.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)&&Kf(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 t.length&&t.reduce(i),o}function tP(e,t){if(e.node(t).dummy)return e.predecessors(t).find(o=>e.node(o).dummy)}function Kf(e,t,o){if(t>o){let i=t;t=o,o=i}let r=e[t];r||(e[t]=r={}),r[o]=!0}function nP(e,t,o){if(t>o){let r=t;t=o,o=r}return!!e[t]&&Object.hasOwn(e[t],o)}function oP(e,t,o,r){let i={},a={},l={};return t.forEach(s=>{s.forEach((c,d)=>{i[c]=c,a[c]=c,l[c]=d})}),t.forEach(s=>{let c=-1;s.forEach(d=>{let f=r(d);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let u=(f.length-1)/2;for(let p=Math.floor(u),m=Math.ceil(u);p<=m;++p){let g=f[p];a[d]===d&&c<l[g]&&!nP(o,d,g)&&(a[g]=d,a[d]=i[d]=i[g],c=l[g])}}})}),{root:i,align:a}}function rP(e,t,o,r,i){let a={},l=iP(e,t,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),g=m.pop(),_={};for(;g;)_[g]?u(g):(_[g]=!0,m.push(g),m=m.concat(p(g))),g=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((g,_)=>Math.min(g,a[_.w]-l.edge(_)),Number.POSITIVE_INFINITY),m=e.node(u);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[u]=Math.max(a[u],p))}return c(d,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(u=>a[u]=a[o[u]]),a}function iP(e,t,o,r){let i=new ZI,a=e.graph(),l=dP(a.nodesep,a.edgesep,r);return t.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 aP(e,t){return Object.values(t).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let d=uP(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 lP(e,t){let o=Object.values(t),r=Lt.applyWithChunking(Math.min,o),i=Lt.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===t)return;let d=Object.values(c),f=r-Lt.applyWithChunking(Math.min,d);l!=="l"&&(f=i-Lt.applyWithChunking(Math.max,d)),f&&(e[s]=Lt.mapValues(c,u=>u+f))})})}function sP(e,t){return Lt.mapValues(e.ul,(o,r)=>{if(t)return e[t.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function cP(e){let t=Lt.buildLayerMatrix(e),o=Object.assign(QI(e,t),eP(e,t)),r={},i;["u","d"].forEach(l=>{i=l==="u"?t:Object.values(t).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=oP(e,i,o,c),f=rP(e,i,d.root,d.align,s==="r");s==="r"&&(f=Lt.mapValues(f,u=>-u)),r[l+s]=f})});let a=aP(e,r);return lP(r,a),sP(r,e.graph().align)}function dP(e,t,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?t:e)/2,c+=(s.dummy?t: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 uP(e,t){return e.node(t).width}let jf=Fe,fP=JI.positionX;var pP=mP;function mP(e){e=jf.asNonCompoundGraph(e),gP(e),Object.entries(fP(e)).forEach(([t,o])=>e.node(t).x=o)}function gP(e){let t=jf.buildLayerMatrix(e),o=e.graph().ranksep,r=0;t.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 Gf=yT,qf=kT,hP=zT,yP=Fe.normalizeRanks,_P=XT,bP=Fe.removeEmptyRanks,zf=eI,wP=aI,Hf=sI,EP=WI,kP=pP,ut=Fe,CP=_t.Graph;var vP=NP;function NP(e,t){let o=t&&t.debugTiming?ut.time:ut.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>VP(e));o(" runLayout",()=>SP(r,o,t)),o(" updateInputGraph",()=>xP(e,r))})}function SP(e,t,o){t(" makeSpaceForEdgeLabels",()=>RP(e)),t(" removeSelfEdges",()=>qP(e)),t(" acyclic",()=>Gf.run(e)),t(" nestingGraph.run",()=>zf.run(e)),t(" rank",()=>hP(ut.asNonCompoundGraph(e))),t(" injectEdgeLabelProxies",()=>DP(e)),t(" removeEmptyRanks",()=>bP(e)),t(" nestingGraph.cleanup",()=>zf.cleanup(e)),t(" normalizeRanks",()=>yP(e)),t(" assignRankMinMax",()=>MP(e)),t(" removeEdgeLabelProxies",()=>FP(e)),t(" normalize.run",()=>qf.run(e)),t(" parentDummyChains",()=>_P(e)),t(" addBorderSegments",()=>wP(e)),t(" order",()=>EP(e,o)),t(" insertSelfEdges",()=>zP(e)),t(" adjustCoordinateSystem",()=>Hf.adjust(e)),t(" position",()=>kP(e)),t(" positionSelfEdges",()=>HP(e)),t(" removeBorderNodes",()=>GP(e)),t(" normalize.undo",()=>qf.undo(e)),t(" fixupEdgeLabelCoords",()=>KP(e)),t(" undoCoordinateSystem",()=>Hf.undo(e)),t(" translateGraph",()=>LP(e)),t(" assignNodeIntersects",()=>UP(e)),t(" reversePoints",()=>jP(e)),t(" acyclic.undo",()=>Gf.undo(e))}function xP(e,t){e.nodes().forEach(o=>{let r=e.node(o),i=t.node(o);r&&(r.x=i.x,r.y=i.y,r.rank=i.rank,t.children(o).length&&(r.width=i.width,r.height=i.height))}),e.edges().forEach(o=>{let r=e.edge(o),i=t.edge(o);r.points=i.points,Object.hasOwn(i,"x")&&(r.x=i.x,r.y=i.y)}),e.graph().width=t.graph().width,e.graph().height=t.graph().height}let AP=["nodesep","edgesep","ranksep","marginx","marginy"],TP={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},IP=["acyclicer","ranker","rankdir","align"],PP=["width","height","rank"],Yf={width:0,height:0},OP=["minlen","weight","width","height","labeloffset"],$P={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},BP=["labelpos"];function VP(e){let t=new CP({multigraph:!0,compound:!0}),o=wl(e.graph());return t.setGraph(Object.assign({},TP,bl(o,AP),ut.pick(o,IP))),e.nodes().forEach(r=>{let i=wl(e.node(r));const a=bl(i,PP);Object.keys(Yf).forEach(l=>{a[l]===void 0&&(a[l]=Yf[l])}),t.setNode(r,a),t.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=wl(e.edge(r));t.setEdge(r,Object.assign({},$P,bl(i,OP),ut.pick(i,BP)))}),t}function RP(e){let t=e.graph();t.ranksep/=2,e.edges().forEach(o=>{let r=e.edge(o);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(t.rankdir==="TB"||t.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function DP(e){e.edges().forEach(t=>{let o=e.edge(t);if(o.width&&o.height){let r=e.node(t.v),a={rank:(e.node(t.w).rank-r.rank)/2+r.rank,e:t};ut.addDummyNode(e,"edge-proxy",a,"_ep")}})}function MP(e){let t=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,t=Math.max(t,r.maxRank))}),e.graph().maxRank=t}function FP(e){e.nodes().forEach(t=>{let o=e.node(t);o.dummy==="edge-proxy"&&(e.edge(o.e).labelRank=o.rank,e.removeNode(t))})}function LP(e){let t=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;t=Math.min(t,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)}),t-=l,r-=s,e.nodes().forEach(d=>{let f=e.node(d);f.x-=t,f.y-=r}),e.edges().forEach(d=>{let f=e.edge(d);f.points.forEach(u=>{u.x-=t,u.y-=r}),Object.hasOwn(f,"x")&&(f.x-=t),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-t+l,a.height=i-r+s}function UP(e){e.edges().forEach(t=>{let o=e.edge(t),r=e.node(t.v),i=e.node(t.w),a,l;o.points?(a=o.points[0],l=o.points[o.points.length-1]):(o.points=[],a=i,l=r),o.points.unshift(ut.intersectRect(r,a)),o.points.push(ut.intersectRect(i,l))})}function KP(e){e.edges().forEach(t=>{let o=e.edge(t);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 jP(e){e.edges().forEach(t=>{let o=e.edge(t);o.reversed&&o.points.reverse()})}function GP(e){e.nodes().forEach(t=>{if(e.children(t).length){let o=e.node(t),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(t=>{e.node(t).dummy==="border"&&e.removeNode(t)})}function qP(e){e.edges().forEach(t=>{if(t.v===t.w){var o=e.node(t.v);o.selfEdges||(o.selfEdges=[]),o.selfEdges.push({e:t,label:e.edge(t)}),e.removeEdge(t)}})}function zP(e){var t=ut.buildLayerMatrix(e);t.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{ut.addDummyNode(e,"selfedge",{width:s.label.width,height:s.label.height,rank:l.rank,order:a+ ++r,e:s.e,label:s.label},"_se")}),delete l.selfEdges})})}function HP(e){e.nodes().forEach(t=>{var o=e.node(t);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(t),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 bl(e,t){return ut.mapValues(ut.pick(e,t),Number)}function wl(e){var t={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),t[o]=r}),t}let YP=Fe,WP=_t.Graph;var XP={debugOrdering:ZP};function ZP(e){let t=YP.buildLayerMatrix(e),o=new WP({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)),t.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 JP="1.1.5",QP={graphlib:_t,layout:vP,debug:XP,util:{time:Fe.time,notime:Fe.notime},version:JP};const Wf=Zx(QP),hi={padding:80,nodeGap:40,edgeGap:80,rankGap:80},Xf=e=>{const t=e.match(/^(input|output)s@(.*)$/);if(t)return{io:t[1],field:t[2]}};function eO(e,t){const o=Te(t),r=rt(),{findNode:i,fitView:a,onNodeClick:l,onNodeDragStop:s,onEdgeClick:c,onConnect:d,onNodesChange:f,onEdgesChange:u,deleteKeyCode:p}=o;p.value=["Delete","Backspace"];const{state:m,commit:g,moveNode:_,selectNode:h,removeNode:b,getNodeById:w,connectEdge:y,disconnectEdge:v}=r;function k(T,q){const j=w(T.source),A=w(T.target);return!!(j&&A&&j.phase===q&&A.phase===q)}const E=n.computed(()=>m.value.nodes.filter(T=>T.phase===e).map(T=>({id:T.id,type:"flow",position:T.position,data:T,deletable:!Uc(T)}))),R=n.computed(()=>m.value.edges.filter(T=>k(T,e)).map(T=>{const q=w(T.source),j=w(T.target);if(q){if(!j)throw new Error(`Missing target node "${T.target}" for edge "${T.id}" in phase "${e}"`)}else throw new Error(`Missing source node "${T.source}" for edge "${T.id}" in phase "${e}"`);return{id:T.id,source:T.source,target:T.target,sourceHandle:T.sourceField?`outputs@${T.sourceField}`:"output",targetHandle:T.targetField?`inputs@${T.targetField}`:"input",markerEnd:Wr.ArrowClosed,data:T}}));l(({node:T})=>{console.debug("[useFlow] onNodeClick",n.toRaw(T))}),c(({edge:T})=>{console.debug("[useFlow] onEdgeClick",n.toRaw(T))}),d(({source:T,sourceHandle:q,target:j,targetHandle:A})=>{if(console.debug("[useFlow] onConnect",{source:T,sourceHandle:q,target:j,targetHandle:A}),!q||!A)return;const I=Xf(q),C=Xf(A);(I==null?void 0:I.io)==="input"||(C==null?void 0:C.io)==="output"||y({source:T,sourceField:I==null?void 0:I.field,target:j,targetField:C==null?void 0:C.field})}),f(T=>{T.filter(q=>q.type==="select").sort((q,j)=>q.selected===j.selected?0:q.selected?1:-1).forEach(q=>{h(q.selected?q.id:void 0)}),T.forEach(q=>{q.type==="remove"&&b(q.id,!0)})}),s(({node:T})=>{T&&_(T.id,T.position)}),u(T=>{T.forEach(q=>{q.type==="remove"&&v(q.id,!0)})});function O(T){const{boundingRect:q,padding:j=hi.padding,nodeGap:A=hi.nodeGap,edgeGap:I=hi.edgeGap,rankGap:C=hi.rankGap}=T;let D,P;const L=[],F=ee=>{switch(ee.data.name){case"request":{if(e!=="request")throw new Error(`Unexpected request node in ${e} phase`);if(D)throw new Error("Duplicated request node in request phase");return D=ee,!0}case"service_request":{if(e!=="request")throw new Error(`Unexpected service_request node in ${e} phase`);if(P)throw new Error("Duplicated service_request node in request phase");return P=ee,!0}case"service_response":{if(e!=="response")throw new Error(`Unexpected service_response node in ${e} phase`);if(P)throw new Error("Duplicated service_response node in response phase");return P=ee,!0}case"response":{if(e!=="response")throw new Error(`Unexpected response node in ${e} phase`);if(D)throw new Error("Duplicated response node in response phase");return D=ee,!0}default:return L.push(ee),!1}},B=new Wf.graphlib.Graph({multigraph:!0});B.setGraph({rankdir:e==="request"?"LR":"RL",nodesep:A,edgesep:I,ranksep:C});for(const ee of E.value){if(F(ee))continue;const re=i(ee.id);if(!re)throw new Error(`Node ${ee.id} is missing from the graph in ${e} phase`);B.setNode(ee.id,{width:re.dimensions.width,height:re.dimensions.height})}if(!D||!P)throw new Error(`One or more implicit nodes are missing from ${e} phase`);const $=i(D.id),G=i(P.id);if(!$||!G)throw new Error(`One or more implicit nodes are missing from the graph in ${e} phase`);if(L.length===0){const ee=q.height/2;_(D.data.id,{x:j,y:ee-$.dimensions.height/2},!1),_(P.data.id,{x:q.width-j-G.dimensions.width,y:ee-G.dimensions.height/2},!1)}else{const ee=new Set([D.id,P.id]);for(const oe of R.value)!ee.has(oe.source)&&!ee.has(oe.target)&&B.setEdge(oe.source,oe.target,{points:[]});Wf.layout(B);const re={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY},J=oe=>{re.x1=Math.min(re.x1,oe.x),re.y1=Math.min(re.y1,oe.y),re.x2=Math.max(re.x2,oe.x+oe.width),re.y2=Math.max(re.y2,oe.y+oe.height)},ne=oe=>({x:oe.x-oe.width/2,y:oe.y-oe.height/2,width:oe.width,height:oe.height});for(const oe of L){const ue=B.node(oe.id),de=ne(ue);J(de),_(oe.data.id,{x:de.x,y:de.y},!1)}const z=i(D.id),Z=i(P.id);if(!z||!Z)throw new Error(`One or more implicit nodes are missing from the graph in ${e} phase`);const ie=re.y1+(re.y2-re.y1)/2;_(D.data.id,{x:re.x1-(z.dimensions.width+A),y:ie-z.dimensions.height/2},!1),_(P.data.id,{x:re.x2+A,y:ie-Z.dimensions.height/2},!1)}g(),n.nextTick(()=>{a()})}return{vueFlowStore:o,editorStore:r,nodes:E,edges:R,autoLayout:O}}const yi=we(n.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ge.Left},size:{default:()=>Number.parseFloat(Zw)},type:{}},setup(e){n.useCssVars(o=>({"753622c4":o.color}));const t=n.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["handle-twig",[o.type,o.position===n.unref(ge).Left?"left":"right"]]),style:n.normalizeStyle(t.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Hn="{key}",bn={"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}},_i=Object.keys(bn).filter(e=>e.includes(Hn)).map(e=>e.replace(Hn,""));function El(e){if(!e||!Mo(e))return;const t=_i.find(o=>e.startsWith(o));if(t)return e.slice(t.length).replace(Hn,"")}function Do(e){if(!e)return null;const t=_i.find(o=>e.startsWith(o));return t||e}function Mo(e){return e?_i.some(t=>e.startsWith(t)):!1}function Zf(e){return e?Mo(e)?Do(e)+Hn:e:null}function kl(e){var o;if(!e)return!1;const t=Zf(e);return t?((o=bn[t])==null?void 0:o.readable)??!1:!1}function Cl(e){var o;if(!e)return!1;const t=Zf(e);return t?((o=bn[t])==null?void 0:o.writable)??!1:!1}const Jf=n.defineComponent({__name:"NodeBadge",props:{type:{},size:{}},setup(e){const t=n.computed(()=>{var i;if(!Bt(e.type))return((i=_r[e.type])==null?void 0:i.icon)??void 0}),o=n.computed(()=>yE(e.type)),r=n.computed(()=>{switch(e.type){case"call":return"warning";case"jq":return"decorative";case"exit":return"danger";case"property":return"success";case"static":return"info";default:return"neutral"}});return(i,a)=>{const l=n.resolveComponent("KBadge");return n.openBlock(),n.createBlock(l,{appearance:r.value,size:i.size},{icon:n.withCtx(()=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(t.value)))]),default:n.withCtx(()=>[n.createTextVNode(" "+n.toDisplayString(o.value),1)]),_:1},8,["appearance","size"])}}}),tO={class:"body"},nO={class:"info-line"},oO={class:"name-and-error"},rO={class:"name"},iO={class:"input-handles"},aO={class:"handle"},lO={class:"handle-label-wrapper"},sO={class:"handle-label-wrapper"},cO={class:"handle-label text"},dO={class:"output-handles"},uO={class:"handle"},fO={class:"handle-label-wrapper"},pO={class:"handle-label-wrapper"},mO={class:"handle-label"},Qf=we(n.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean}},setup(e){const{t}=Re.createI18n("en-us",je),{getInEdgesByNodeId:o,getOutEdgesByNodeId:r,toggleExpanded:i}=rt(),a=n.computed(()=>_a(e.data.type)),l=n.computed(()=>o(e.data.id).every(y=>y.targetField===void 0)),s=n.computed(()=>r(e.data.id).every(y=>y.sourceField===void 0)),c=n.computed(()=>e.data.expanded.input??!1),d=n.computed(()=>e.data.expanded.output??!1),f=n.computed(()=>{var y,v;if(e.data.type==="property"){const k=(y=e.data.config)==null?void 0:y.property;return Cl(k)}return(v=a.value.io)==null?void 0:v.input}),u=n.computed(()=>{var y,v;if(e.data.type==="property"){const k=(y=e.data.config)==null?void 0:y.property;return kl(k)}return(v=a.value.io)==null?void 0:v.output}),p=n.computed(()=>Uc(e.data)),m=n.computed(()=>e.data.phase==="response"),g=n.computed(()=>e.data.phase==="request"?ge.Left:ge.Right),_=n.computed(()=>e.data.phase==="request"?ge.Right:ge.Left),h=n.computed(()=>p.value?t(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),b=n.computed(()=>p.value?qw:zw);function w(y){y==="input"&&!l.value||y==="output"&&!s.value||i(e.data.id,y)}return n.watch(l,y=>{y||i(e.data.id,"input",!0,!1)},{immediate:!0}),n.watch(s,y=>{y||i(e.data.id,"output",!0,!1)},{immediate:!0}),(y,v)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["flow-node",{reversed:m.value,implicit:p.value}])},[n.createElementVNode("div",tO,[n.createElementVNode("div",nO,[n.createElementVNode("div",oO,[y.error?(n.openBlock(),n.createBlock(n.unref(Ee.WarningIcon),{key:0,class:"error-icon",color:n.unref(Hw),size:16},null,8,["color"])):n.createCommentVNode("",!0),n.createElementVNode("div",rO,n.toDisplayString(h.value),1)]),p.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(Jf,{key:0,size:"small",type:y.data.type},null,8,["type"]))]),n.renderSlot(y.$slots,"default",{},void 0,!0)]),n.createElementVNode("div",{class:n.normalizeClass(["handles",{reversed:m.value}])},[n.createElementVNode("div",iO,[f.value?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.createElementVNode("div",aO,[n.createVNode(n.unref(Ht),{id:"input",position:g.value,type:"target"},null,8,["position"]),n.createElementVNode("div",lO,[n.createElementVNode("div",{class:n.normalizeClass(["handle-label",{"has-fields":y.data.fields.input.length>0,collapsible:l.value}])},[v[2]||(v[2]=n.createElementVNode("div",{class:"text"}," inputs ",-1)),y.data.fields.input.length>0?(n.openBlock(),n.createElementBlock("div",{key:0,class:"icon",onClick:v[0]||(v[0]=n.withModifiers(k=>w("input"),["stop"]))},[c.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldMoreIcon),{key:0,size:n.unref(go)},null,8,["size"])),c.value?(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldLessIcon),{key:1,color:l.value?void 0:n.unref(Rc),size:n.unref(go)},null,8,["color","size"])):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],2),c.value?(n.openBlock(),n.createBlock(yi,{key:0,color:b.value,position:g.value,type:"bar"},null,8,["color","position"])):n.createCommentVNode("",!0)])]),c.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(y.data.fields.input,(k,E)=>(n.openBlock(),n.createElementBlock("div",{key:`inputs-${k.id}`,class:"handle indented"},[n.createVNode(n.unref(Ht),{id:`inputs@${k.id}`,position:g.value,type:"target"},null,8,["id","position"]),n.createElementVNode("div",sO,[n.createElementVNode("div",cO,n.toDisplayString(k.name),1),n.createVNode(yi,{color:b.value,position:g.value,type:E<y.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):n.createCommentVNode("",!0)],64)):n.createCommentVNode("",!0)]),n.createElementVNode("div",dO,[u.value?(n.openBlock(),n.createElementBlock(n.Fragment,{key:0},[n.createElementVNode("div",uO,[n.createElementVNode("div",fO,[n.createElementVNode("div",{class:n.normalizeClass(["handle-label text",{"has-fields":y.data.fields.output.length>0,collapsible:s.value}])},[v[3]||(v[3]=n.createElementVNode("div",{class:"text"}," outputs ",-1)),y.data.fields.output.length>0?(n.openBlock(),n.createElementBlock("div",{key:0,class:"icon",onClick:v[1]||(v[1]=n.withModifiers(k=>w("output"),["stop"]))},[d.value?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldMoreIcon),{key:0,size:n.unref(go)},null,8,["size"])),d.value?(n.openBlock(),n.createBlock(n.unref(Ee.UnfoldLessIcon),{key:1,color:s.value?void 0:n.unref(Rc),size:n.unref(go)},null,8,["color","size"])):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],2),d.value?(n.openBlock(),n.createBlock(yi,{key:0,color:b.value,position:_.value,type:"bar"},null,8,["color","position"])):n.createCommentVNode("",!0)]),n.createVNode(n.unref(Ht),{id:"output",position:_.value,type:"source"},null,8,["position"])]),d.value?(n.openBlock(!0),n.createElementBlock(n.Fragment,{key:0},n.renderList(y.data.fields.output,(k,E)=>(n.openBlock(),n.createElementBlock("div",{key:`outputs-${k.id}`,class:"handle indented"},[n.createElementVNode("div",pO,[n.createElementVNode("div",mO,n.toDisplayString(k.name),1),n.createVNode(yi,{color:b.value,position:_.value,type:E<y.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),n.createVNode(n.unref(Ht),{id:`outputs@${k.id}`,position:_.value,type:"source"},null,8,["id","position"])]))),128)):n.createCommentVNode("",!0)],64)):n.createCommentVNode("",!0)])],2)],2))}}),[["__scopeId","data-v-b8317dd1"]]),gO={ref:"flow-wrapper",class:"dk-flow-wrapper"},ep=we(n.defineComponent({__name:"EditorCanvasFlow",props:{phase:{}},setup(e){const t=e,o=n.useTemplateRef("flow-wrapper"),r=n.ref(!1),a=`${n.useId()}-${t.phase}`,{vueFlowStore:l,editorStore:s,nodes:c,edges:d,autoLayout:f}=eO(t.phase,a),{addNode:u,clear:p}=s,{project:m,vueFlowRef:g,addSelectedNodes:_,getNodes:h}=l,{selectNode:b,propertiesPanelOpen:w,newCreatedNodeId:y,invalidConfigNodeIds:v}=rt();async function k(T){b(T),await n.nextTick();const q=h.value.find(j=>j.id===T);_(q?[q]:[])}function E(T){var B,$;const q=(B=T.dataTransfer)==null?void 0:B.getData(ad);if(!q)return;T.preventDefault();const j=JSON.parse(q);if(j.action!=="create-node")return;const{top:A=0,left:I=0}=(($=g.value)==null?void 0:$.getBoundingClientRect())||{},C=m({x:T.clientX-I,y:T.clientY-A}),{type:D,anchor:P}=j.data,L={type:D,phase:t.phase,position:{x:C.x-P.offsetX,y:C.y-P.offsetY}},F=u(L);k(F),F&&(y.value=F,w.value=!0)}function R(){r.value||(r.value=!0,O(),p())}function O(){f({boundingRect:o.value.getBoundingClientRect()})}return(T,q)=>(n.openBlock(),n.createElementBlock("div",gO,[n.createVNode(n.unref(Qu),{id:a,class:"flow",edges:n.unref(d),"fit-view-on-init":"","multi-selection-key-code":null,nodes:n.unref(c),onDragover:q[0]||(q[0]=n.withModifiers(()=>{},["prevent"])),onDrop:q[1]||(q[1]=j=>E(j)),onNodeClick:q[2]||(q[2]=j=>w.value=!0),onNodesInitialized:R},{"node-flow":n.withCtx(j=>[n.createVNode(Qf,{data:j.data,error:n.unref(v).has(j.data.id)},null,8,["data","error"])]),default:n.withCtx(()=>[n.createVNode(n.unref(vx)),n.createVNode(n.unref(Xx),{position:"bottom-left"},{default:n.withCtx(()=>[n.createElementVNode("button",{class:"vue-flow__controls-button vue-flow__controls-interactive custom",onClick:O},[n.createVNode(n.unref(Ee.SparklesIcon),{size:18})])]),_:1})]),_:1},8,["edges","nodes"])],512))}}),[["__scopeId","data-v-e3ec7bb9"]]),hO={class:"dk-editor-main"},yO={class:"header"},_O={class:"actions"},bO={ref:"canvasContainer",class:"body"},wO=we(n.defineComponent({__name:"EditorMain",setup(e){const{t}=Re.createI18n("en-us",je),{modalOpen:o}=rt();function r(){o.value=!1}return(i,a)=>(n.openBlock(),n.createElementBlock("div",hO,[n.createElementVNode("header",yO,[n.createElementVNode("div",_O,[n.createVNode(n.unref(Ie.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.view_docs"))+" ",1),n.createVNode(n.unref(Ee.ExternalLinkIcon))]),_:1}),n.createVNode(n.unref(Ie.KButton),{onClick:r},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.done")),1)]),_:1})])]),n.createElementVNode("div",bO,[n.createVNode(bk,null,{request:n.withCtx(()=>[n.createVNode(ep,{phase:"request"})]),response:n.withCtx(()=>[n.createVNode(ep,{phase:"response"})]),_:1})],512)]))}}),[["__scopeId","data-v-bd7f8196"]]),EO={class:"icon"},kO={class:"content"},CO={class:"title"},vO={class:"description"},NO=we(n.defineComponent({__name:"NodePanelItem",props:{type:{}},setup(e){const{summary:t,icon:o}=_r[e.type];return(r,i)=>(n.openBlock(),n.createElementBlock("div",{class:n.normalizeClass(["dk-node-panel-item",{[`node-type-${r.type}`]:!0}])},[n.createElementVNode("div",EO,[n.createVNode(n.unref(o),{size:16})]),n.createElementVNode("div",kO,[n.createElementVNode("div",CO,n.toDisplayString(r.type),1),n.createElementVNode("div",vO,n.toDisplayString(n.unref(t)),1)])],2))}}),[["__scopeId","data-v-e75cecee"]]),SO={class:"dk-node-panel"},xO={class:"title"},AO={class:"node-list"},TO={"aria-hidden":"true",class:"preview",inert:""},IO=we(n.defineComponent({__name:"NodePanel",setup(e){const{t}=Re.createI18n("en-us",je),{createNode:o}=rt(),r=`dk-drag-preview-${n.useId()}`,i=n.shallowRef(),a=n.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var O,T;const d=s.currentTarget,{left:f,top:u,width:p,height:m}=d.getBoundingClientRect(),g=s.clientX-f,_=s.clientY-u;i.value=o({type:c}),await n.nextTick();const h=document.querySelector(`#${r}`)||d,b=h.cloneNode(!0),{offsetWidth:w,offsetHeight:y}=h;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${y}px`,boxSizing:"border-box"}),document.body.appendChild(b);const v=g/p,k=_/m,E={ratioX:v,ratioY:k,offsetX:w*v,offsetY:y*k},R={action:"create-node",data:{type:c,anchor:E}};(O=s.dataTransfer)==null||O.setData(ad,JSON.stringify(R)),(T=s.dataTransfer)==null||T.setDragImage(b,E.offsetX,E.offsetY),requestAnimationFrame(()=>{b.remove(),i.value=void 0})};return(s,c)=>{const d=n.resolveComponent("KLabel");return n.openBlock(),n.createElementBlock("div",SO,[n.createElementVNode("h3",xO,[n.createVNode(d,{class:"label",info:n.unref(t)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])]),n.createElementVNode("div",AO,[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(Object.keys(n.unref(_r)),f=>(n.openBlock(),n.createBlock(NO,{key:f,draggable:"true",type:f,onDragstart:u=>l(u,f)},null,8,["type","onDragstart"]))),128))]),n.createElementVNode("div",TO,[n.createVNode(n.unref(Qu),{nodes:a.value},{"node-flow":n.withCtx(f=>[n.createVNode(Qf,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-8e8421d3"]]),PO=n.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(t,o)=>(n.openBlock(),n.createBlock(Et,{items:n.unref(ra)([...n.unref(mk)]),name:t.name},null,8,["items","name"]))}}),OO=we(n.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:t}=Ve(),{i18n:o}=Se(),r=n.computed(()=>{const i=t("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(n.openBlock(),n.createBlock(dt,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:n.withCtx(()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(r.value,l=>(n.openBlock(),n.createBlock(Et,{key:l,class:"dk-inputs-field-indent",clearable:"",items:i.items,name:l,placeholder:n.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},null,8,["items","name","placeholder","onChange"]))),128))]),_:1},8,["name"]))}}),[["__scopeId","data-v-a849b44b"]]),$O=["data-testid"],BO={class:"dk-inputs-map-field-entry-body"},VO={class:"dk-inputs-map-field-entry-content"},RO={class:"dk-inputs-map-field-indent"},DO=we(n.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:t}){const o=e,r=t,{entries:i,addEntry:a,removeEntry:l,field:s}=ua(o,r),{i18n:{t:c}}=Se(),d=n.useTemplateRef("root"),f=n.ref(null),u=n.ref({});let p;async function m(k,E="key"){var R;d.value&&(await n.nextTick(),(R=d.value.querySelector(`[data-${E}-input="${k}"]`))==null||R.focus())}function g(){const{id:k}=a(),E=i.value.findIndex(({key:R})=>!R);m(E===-1?i.value.length-1:E),f.value=k}function _(k){l(k.id),k.id===f.value&&(f.value=null),k.key.trim()!==""&&r("remove:field",k.key)}function h(k){p=k.key}function b(k){if(w(k)){k.key=p,delete u.value[k.id];return}if(k.id===f.value){if(k.key.trim()==="")return;r("add:field",k.key,k.value),f.value=null}else r("rename:field",p,k.key);p=k.key}function w(k){delete u.value[k.id];const E=o.fieldNameValidator("input",p,k.key);if(E)return u.value[k.id]=E,E}function y(k){w(k)}function v(k,E){k.id!==f.value&&r("change:inputs",k.key,E)}return(k,E)=>{const R=n.resolveComponent("KAlert"),O=n.resolveComponent("KLabel"),T=n.resolveComponent("KInput"),q=n.resolveComponent("KSelect"),j=n.resolveComponent("KButton");return n.unref(s).error?(n.openBlock(),n.createBlock(R,{key:0,appearance:"danger",message:n.unref(s).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(i),(A,I)=>(n.openBlock(),n.createElementBlock("div",{key:A.id,class:"dk-inputs-map-field-entry dk-inputs-map-field-indent","data-testid":`ff-kv-container-${n.unref(s).path.value}.${I}`},[n.createVNode(O,{for:`ff-kv-entry-key-${n.unref(s).path.value}.${I}`},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),n.createElementVNode("div",BO,[n.createElementVNode("div",VO,[n.createVNode(T,{id:`ff-kv-entry-key-${n.unref(s).path.value}.${I}`,modelValue:A.key,"onUpdate:modelValue":[C=>A.key=C,C=>w(A)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":I,"data-testid":`ff-key-${n.unref(s).path.value}.${I}`,error:!!u.value[A.id],"error-message":u.value[A.id],placeholder:n.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:C=>y(A),onChange:C=>b(A),onFocus:C=>h(A)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),n.createVNode(q,{modelValue:A.value,"onUpdate:modelValue":C=>A.value=C,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${n.unref(s).path.value}.${I}`,items:k.items,placeholder:n.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:C=>v(A,(C==null?void 0:C.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","placeholder","onChange"])]),n.createVNode(j,{appearance:"none","data-testid":`ff-kv-remove-btn-${n.unref(s).path.value}.${I}`,icon:"",onClick:C=>_(A)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,$O))),128)),n.createElementVNode("div",RO,[n.createVNode(j,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(s).path.value}`,disabled:!!f.value,onClick:g},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])])],512))}}}),[["__scopeId","data-v-685121cd"]]),Yn=n.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:t}){const o=t,{getSchema:r}=Ve(),{i18n:i}=Se(),a=n.computed(()=>r("inputs")),l=n.computed(()=>a.value?a.value.type==="record"?OO:DO: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)=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[n.unref(r)("input")?(n.openBlock(),n.createBlock(Et,{key:0,clearable:"","enable-filtering":"",items:p.items,label:"Inputs",name:"input",placeholder:n.unref(i).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},null,8,["items","placeholder"])):n.createCommentVNode("",!0),l.value?(n.openBlock(),n.createBlock(n.unref(l),{key:1,"field-name-validator":p.fieldNameValidator,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},null,8,["field-name-validator","items","key-order"])):n.createCommentVNode("",!0)],64))}}),MO={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"},FO={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 LO(e){const t=Number(e);return!isNaN(t)&&isFinite(t)}function Wn(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function Xn(e){const{i18n:{t}}=Se(),o=()=>e?typeof e=="string"?e:t("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 vl(e,t){const{i18n:{t:o}}=Se();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>t?typeof t=="string"?t:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",t):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>t?typeof t=="string"?t: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 UO(e=0,t=1/0,o){const{i18n:{t:r}}=Se();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>t))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:t}):`Value must be between ${e} and ${t} characters`}}function tp(e){const{i18n:{t}}=Se();return function(r){if(!LO(r))return e?typeof e=="string"?e:t("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",e):"Value must be a number"}}function np(e,t){const{i18n:{t:o}}=Se();return function(i){if(i==null)return;const a=tp(t)(i);if(a)return a;const l=Number(i);switch(e){case"float":{const s=()=>t?typeof t=="string"?t:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",t):"Invalid float format";return Number.isFinite(l)?void 0:s()}case"integer":{const s=()=>t?typeof t=="string"?t:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",t):"Invalid integer format";return Number.isInteger(l)?void 0:s()}default:return}}}function op(e=-1/0,t=1/0,o){const{i18n:{t:r}}=Se();return function(a){if(a==null)return;const l=tp(o)(a);if(l)return l;const s=Number(a);if(s<e||s>t)return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:e,max:t}):`Value must be between ${e} and ${t}`}}function KO(e,t){const{state:o}=rt(),{i18n:{t:r}}=Se();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return t?typeof t=="string"?t:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",t):"Name must be unique."}}function jO(e,t,o){const{i18n:{t:r}}=Se();return function(a){if(!t)return;if(o?t.fields[e].some(s=>s.name===a&&s.id!==o):t.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 GO(){const{i18n:{t:e}}=Se();return function(o){if(ya(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function rp(e){const{i18n:{t}}=Se(),o={fieldName:t("plugins.free-form.datakit.flow_editor.node_properties.name")};return Wn(Xn(o),vl("identifier",o),GO(),KO(e,o))}function qO(e){const{i18n:{t}}=Se(),{getNodeById:o}=rt();return function(i,a,l){const s={fieldName:t(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(Xn(s),vl("identifier",s),jO(i,o(e),l))(a)}}function zO(e){const t=n.ref({}),o=n.computed(()=>Object.values(t.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 t.value[l]=m,m},d=()=>{t.value[l]=void 0},f=u=>(d(),c(u));r[l]={handleChange:f,handleBlur:f,validate:f,isValid:n.computed(()=>t.value[l]===void 0),error:n.computed(()=>t.value[l])}});function i(){t.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 t.value}return{isValid:o,errorMap:t,fields:r,clearErrors:i,validate:a}}function bi(e){const{validationConfig:t,getValidationData:o,skipValidationOnMount:r,toggleNodeValid:i}=e,a=n.computed(()=>typeof t=="function"?t():t),l=n.computed(()=>zO(a.value)),s=n.computed(()=>l.value.fields),c=n.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const g in a.value)m[g]=p[g];return m}function f(u,p){return{onBlur:()=>{const m=o(),g=s.value[u];g&&g.handleBlur(m[u])},onUpdate:()=>{const m=o(),g=s.value[u];g&&g.handleChange(m[u]),p==null||p()},error:n.computed(()=>{const m=s.value[u];return m?!m.isValid.value:!1}),errorMessage:n.computed(()=>{const m=s.value[u];return m?m.error.value??"":""})}}return n.onMounted(()=>{r!=null&&r.value||d()}),n.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;i(!p)}catch{}}),n.watch(()=>c.value,i,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function wn(e,t){const{state:o,renameNode:r,getNodeById:i,addField:a,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:d,connectEdge:f,newCreatedNodeId:u,invalidConfigNodeIds:p}=rt();let m=!1;n.watch(o,async()=>{m=!0,await n.nextTick(),m=!1},{immediate:!0,deep:!0}),console.log("state",o.value),window.store=rt();const g=n.computed(()=>{const L=i(e);if(!L)throw new Error("Node not existed");return L}),_=n.computed(()=>{const F=o.value.edges.filter(B=>B.target===e).reduce((B,$)=>{var ne,z;const G=i($.source),ee=(ne=an(G,"output",$.sourceField))==null?void 0:ne.id,re=(z=an(g.value,"input",$.targetField))==null?void 0:z.name,J=G.id+(ee?`.${ee}`:"");return re?B.inputs={...B.inputs,[re]:J}:B.input=J,B},{});return g.value.fields.input.forEach(B=>{F.inputs||(F.inputs={}),F.inputs[B.name]||(F.inputs[B.name]=null)}),{...g.value.config,...F,name:g.value.name}}),h=L=>{r(e,L??"",!0,`${e}:rename`)},b=(L,F=!0)=>{if(m)return;if(!t)throw new Error("getFormInnerData is not defined");const B=yc(t(),["name","input","inputs"]),$=L?`update:${e}:${L}`:void 0;c(e,B,F,$)},w=(L,F)=>{const B=Dn(g.value,L,F);if(!B)throw new Error(`Field with name "${F}" not found in node "${g.value.name}"`);return B},y=(L,F,B)=>{const $=!!B;a(e,L,F,!$),$&&O(F,B)},v=(L,F,B)=>{if(m)return;const $=w(L,F).id;l(e,$,B)},k=(L,F)=>{const B=w(L,F).id;s(e,B)},E=n.computed(()=>o.value.edges.filter(L=>L.target===e&&!L.targetField)[0]),R=n.computed(()=>o.value.edges.filter(L=>L.target===e&&L.targetField)),O=(L,F)=>{if(m)return;const B=F==null,$=w("input",L).id;if(B){const ne=R.value.find(z=>z.targetField===$);ne&&d(ne.id,!0);return}E.value&&d(E.value.id,!1);const G=R.value.find(ne=>ne.targetField===$);G&&d(G.id,!1);const{nodeId:ee,fieldId:re}=Kc(F),J=w("input",L).id;f({source:ee,sourceField:re,target:e,targetField:J})},T=(L,F=!0)=>{if(m)return;const B=L==null;for(const ee of[...R.value,E.value].filter(Boolean))d(ee.id,F&&B);if(B)return;const{nodeId:$,fieldId:G}=Kc(L);f({source:$,sourceField:G,target:e,targetField:void 0},F)},q=L=>{const F=[...o.value.edges,{source:L,target:e}];return wa(Er(F))},j=n.computed(()=>{var F,B;const L=[];for(const $ of o.value.nodes)if((F=_a($.type).io)!=null&&F.output&&$.fields.output&&$.id!==e&&!($.type==="property"&&!kl((B=$.config)==null?void 0:B.property))&&!q($.id)){L.push({value:$.id,label:$.name});for(const ee of $.fields.output)L.push({value:`${$.id}.${ee.id}`,label:`${$.name}.${ee.name}`})}return L}),A=n.computed(()=>g.value.fields.input.map(L=>L.name)||[]),I=n.computed(()=>u.value===e);function C(L){p.value.delete(e),L||p.value.add(e)}const D=qO(e);function P(L,F,B){const $=i(e);if(!$)throw new Error("Node not found when validating field name");const G=Dn($,L,F);return D(L,B,G==null?void 0:G.id)}return{formData:_,inputOptions:j,inputEdge:E,inputsEdges:R,inputsFieldNames:A,skipValidationOnMount:I,currentNode:g,setName:h,setConfig:b,addField:y,renameFieldByName:v,removeFieldByName:k,setInputs:O,setInput:T,nameValidator:rp(e),fieldNameValidator:P,toggleNodeValid:C}}function En(e){const{getSchema:t}=Ve();return n.computed(()=>{if(Bt(e))switch(e){case"response":return FO;case"service_request":return MO}try{const l=t().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 wi=n.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:t}){const o=e,r=t,{i18n:{t:i}}=Se(),a=n.ref(o.name),l=n.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 n.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=n.resolveComponent("KInput");return n.openBlock(),n.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:n.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),HO=n.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t}}=Se(),o=n.useTemplateRef("form"),r=En("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,skipValidationOnMount:p,toggleNodeValid:m,fieldNameValidator:g}=wn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:_}=bi({validationConfig:{url:Wn(Xn({fieldName:"URL"}),vl("url",{fieldName:"URL"})),timeout:Wn(np("integer",{fieldName:t("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}),op(0,2147483646,{fieldName:t("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),skipValidationOnMount:p,toggleNodeValid:m}),h=_("url",()=>l("url")),b=_("timeout",()=>l("timeout"));return(w,y)=>{const v=n.resolveComponent("KLabel");return n.openBlock(),n.createBlock(mt,{ref:"form",data:n.unref(i),schema:n.unref(r)},{default:n.withCtx(()=>[n.createVNode(wi,{name:n.unref(i).name,validate:n.unref(u),onUpdate:n.unref(a)},null,8,["name","validate","onUpdate"]),n.createVNode(v,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),n.createVNode(Bn,{error:n.unref(h).error.value,"error-message":n.unref(h).errorMessage.value,name:"url",onBlur:n.unref(h).onBlur,"onUpdate:modelValue":n.unref(h).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),n.createVNode(PO,{name:"method","onUpdate:modelValue":y[0]||(y[0]=k=>n.unref(l)())}),n.createVNode(Vn,{error:n.unref(b).error.value,"error-message":n.unref(b).errorMessage.value,label:n.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout",onBlur:n.unref(b).onBlur,"onUpdate:modelValue":n.unref(b).onUpdate},null,8,["error","error-message","label","onBlur","onUpdate:modelValue"]),n.createVNode(Bn,{name:"ssl_server_name","onUpdate:modelValue":y[1]||(y[1]=k=>n.unref(l)("ssl_server_name"))}),n.createVNode(Yn,{"field-name-validator":n.unref(g),"field-names":n.unref(f),items:n.unref(s),"onChange:input":n.unref(d),"onChange:inputs":n.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),YO=n.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const t=n.useTemplateRef("form"),o=En("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=wn(e.nodeId,()=>t.value.getInnerData());return(d,f)=>(n.openBlock(),n.createBlock(mt,{ref:"form",data:n.unref(r),schema:n.unref(o)},{default:n.withCtx(()=>[n.createVNode(Yn,{"field-name-validator":n.unref(c),"field-names":n.unref(s),items:n.unref(i),"onChange:input":n.unref(l),"onChange:inputs":n.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),WO=n.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const t=n.useTemplateRef("form"),o=En("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=wn(e.nodeId,()=>t.value.getInnerData());return(d,f)=>(n.openBlock(),n.createBlock(mt,{ref:"form",data:n.unref(r),schema:n.unref(o)},{default:n.withCtx(()=>[n.createVNode(Yn,{"field-name-validator":n.unref(c),"field-names":n.unref(s),items:n.unref(i),"onChange:input":n.unref(l),"onChange:inputs":n.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),XO=n.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t}}=Se(),o=n.useTemplateRef("form"),r=En("jq"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,addField:f,removeFieldByName:u,renameFieldByName:p,inputsFieldNames:m,nameValidator:g,skipValidationOnMount:_,toggleNodeValid:h,fieldNameValidator:b}=wn(e.nodeId,()=>o.value.getInnerData());function w(O,T){f("input",O,T)}function y(O){u("input",O)}function v(O,T){p("input",O,T)}const k=t("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:E}=bi({validationConfig:{jq:Wn(Xn({fieldName:k}),UO(1,10240,{fieldName:k}))},getValidationData:()=>({jq:i.value.jq}),skipValidationOnMount:_,toggleNodeValid:h}),R=E("jq",()=>l("jq"));return(O,T)=>{const q=n.resolveComponent("KLabel");return n.openBlock(),n.createBlock(mt,{ref:"form",data:n.unref(i),schema:n.unref(r)},{default:n.withCtx(()=>[n.createVNode(wi,{name:n.unref(i).name,validate:n.unref(g),onUpdate:n.unref(a)},null,8,["name","validate","onUpdate"]),n.createVNode(q,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),n.createVNode(Bn,{error:n.unref(R).error.value,help:n.unref(R).errorMessage.value,label:n.unref(k),multiline:"",name:"jq",resizable:"",rows:"2",onBlur:n.unref(R).onBlur,"onUpdate:modelValue":n.unref(R).onUpdate},null,8,["error","help","label","onBlur","onUpdate:modelValue"]),n.createVNode(Yn,{"field-name-validator":n.unref(b),"field-names":n.unref(m),items:n.unref(s),"onAdd:field":w,"onChange:input":n.unref(d),"onChange:inputs":n.unref(c),"onRemove:field":y,"onRename:field":v},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),ZO=we(n.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:t}){const o=e,r=t,i=n.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=ua(o,r,!1),{i18n:d}=Se(),f=n.useTemplateRef("root"),u=n.ref(null);let p;async function m(k,E="key"){var R;f.value&&(await n.nextTick(),(R=f.value.querySelector(`[data-${E}-input="${k}"]`))==null||R.focus())}function g(){const k=l(),E=a.value.findIndex(({key:R})=>!R);m(E===-1?a.value.length-1:E),u.value=k}function _(k){var E;k.id===((E=u.value)==null?void 0:E.id)&&(u.value=null),s(k.id),k.key.trim()!==""&&r("remove:field",k.key)}function h(k){p=k.key}function b(k){var E;if(y(k)){k.key=p,delete i.value[k.id];return}if(k.id===((E=u.value)==null?void 0:E.id)){if(k.key.trim()==="")return;u.value=null,r("add:field",k.key,k.value)}else r("rename:field",p,k.key);p=k.key}function w(k,E){var O;if(E.id===((O=u.value)==null?void 0:O.id))return;const R=k.target.value.trim();r("change:value",E.key,R)}function y(k){delete i.value[k.id];const E=o.fieldNameValidator("output",p,k.key);if(E)return i.value[k.id]=E,E}function v(k){y(k)}return n.watchEffect(()=>{u.value&&!a.value.some(k=>k.id===u.value.id)&&a.value.push(u.value)}),(k,E)=>{const R=n.resolveComponent("KAlert"),O=n.resolveComponent("KLabel"),T=n.resolveComponent("KButton"),q=n.resolveComponent("KInput"),j=n.resolveComponent("KCard");return n.unref(c).error?(n.openBlock(),n.createBlock(R,{key:0,appearance:"danger",message:n.unref(c).error.message},null,8,["message"])):(n.openBlock(),n.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[n.createVNode(O,{class:"dk-node-configuration-label"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(a),(A,I)=>(n.openBlock(),n.createBlock(j,{key:A.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${n.unref(c).path.value}.${I}`},{actions:n.withCtx(()=>[n.createVNode(T,{appearance:"none","data-testid":`ff-kv-remove-btn-${n.unref(c).path.value}.${I}`,icon:"",onClick:C=>_(A)},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:n.withCtx(()=>[n.createVNode(q,{id:`ff-kv-entry-key-${n.unref(c).path.value}.${I}`,modelValue:A.key,"onUpdate:modelValue":[C=>A.key=C,C=>y(A)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":I,"data-testid":`ff-key-${n.unref(c).path.value}.${I}`,error:!!i.value[A.id],"error-message":i.value[A.id],label:n.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:C=>v(A),onChange:C=>b(A),onFocus:C=>h(A)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),n.createVNode(q,{modelValue:A.value,"onUpdate:modelValue":C=>A.value=C,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${n.unref(c).path.value}.${I}`,label:n.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:C=>w(C,A)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),n.createVNode(T,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${n.unref(c).path.value}`,disabled:!!u.value,onClick:g},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-9f3f9fea"]]);function JO(e){const t={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?t[o]=JSON.stringify(r):t[o]=String(r);return t}function Ei(e){const t={};for(const[o,r]of Object.entries(e))if(r!=null){t[o]=r;try{r==="null"?t[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(t[o]=JSON.parse(r))}catch{}}return t}function QO(e,t,o){const r={};for(const i of Object.keys(e))i===t?r[o]=e[t]:r[i]=e[i];return r}const e$=n.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:t,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=rt(),{fieldNameValidator:c}=wn(e.nodeId),d=En("static"),f=rp(e.nodeId),u=n.computed(()=>s(e.nodeId)),p=n.computed(()=>{var y;return((y=u.value)==null?void 0:y.fields.output.map(v=>v.name))||[]});function m(y){if(!u.value)throw new Error("No current node");t(u.value.id,y??"")}const g=n.computed(()=>{var O;if(!u.value)return{};const y=((O=u.value.config)==null?void 0:O.values)??{},v={},k=o(u.value.id).map(T=>T.sourceField).filter(Boolean).map(T=>an(u.value,"output",T)).map(T=>T==null?void 0:T.name).filter(Boolean),E=u.value.fields.output.map(T=>T.name);return new Set([...k,...E]).forEach(T=>{if(T in y){v[T]=y[T];return}v[T]=""}),{name:u.value.name,values:JO(v)}});function _(y,v){if(!u.value)throw new Error("No selected node");if(r(e.nodeId,"output",y,!v),v){const k={values:Ei({...g.value.values,[y]:v})};l(e.nodeId,k)}}function h(y,v){if(!u.value)throw new Error("No selected node");const k=Dn(u.value,"output",y);if(!k)throw new Error("No field found to rename");const E={values:Ei(QO(g.value.values??{},y,v))};l(e.nodeId,E,!1),i(e.nodeId,k.id,v)}function b(y){var E;if(!u.value)throw new Error("No selected node");const v=Dn(u.value,"output",y);if(!v)throw new Error("No field found to delete");a((E=u.value)==null?void 0:E.id,v.id,!0,!1);const k={values:Ei({...g.value.values})};delete k.values[y],l(e.nodeId,k)}function w(y,v){if(!u.value)throw new Error("No selected node");const k={...g.value.values};k[y]=v;const E={values:Ei(k)};l(e.nodeId,E)}return(y,v)=>{const k=n.resolveComponent("NameField");return n.openBlock(),n.createBlock(mt,{ref:"form",data:g.value,schema:n.unref(d)},{default:n.withCtx(()=>{var E;return[n.createVNode(k,{name:((E=u.value)==null?void 0:E.name)??"",validate:n.unref(f),onUpdate:m},null,8,["name","validate"]),n.createVNode(ZO,{"field-name-validator":n.unref(c),"key-order":p.value,name:"values","onAdd:field":_,"onChange:value":w,"onRemove:field":b,"onRename:field":h},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"])}}}),t$={class:"dk-kong-property-item"},n$={class:"property-type"},o$={class:"property-badges"},r$=we(n.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:t}){const{i18n:{t:o}}=Se(),r=e,i=t,{formData:a}=Ve(),l=n.ref(Do(a.property)),s=n.computed(()=>Mo(a.property)),c=n.ref(El(a.property)),d=n.computed(()=>a.property??""),f=n.computed(()=>Object.entries(bn).map(([m])=>{var h;const g=Mo(m)?(h=a.property)==null?void 0:h.startsWith(m.replace(Hn,"")):a.property===m;return{label:g&&c.value?m.replace(Hn,c.value):m,value:m,selected:g}}));function u(m){const g=_i.find(_=>{var h;return(h=a.property)==null?void 0:h.startsWith(_)});g&&(a.property=g+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==Do(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=Do(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return n.watch(()=>a.property,m=>{c.value=El(m),l.value=Do(m)}),(m,g)=>{const _=n.resolveComponent("KBadge"),h=n.resolveComponent("KSelect"),b=n.resolveComponent("KInput");return n.openBlock(),n.createElementBlock(n.Fragment,null,[(n.openBlock(),n.createBlock(h,{key:d.value,"enable-filtering":"",error:!m.validators.property.isValid.value,help:m.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=w=>m.validators.property.handleBlur(()=>n.unref(a).property)),onChange:p},{"item-template":n.withCtx(({item:w})=>[n.createElementVNode("div",t$,[n.createElementVNode("div",null,[n.createElementVNode("div",null,n.toDisplayString(w.label),1),n.createElementVNode("div",n$,n.toDisplayString(n.unref(bn)[w.value].dataType),1)]),n.createElementVNode("div",o$,[n.unref(bn)[w.value].readable?(n.openBlock(),n.createBlock(_,{key:0,appearance:"info"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):n.createCommentVNode("",!0),n.unref(bn)[w.value].writable?(n.openBlock(),n.createBlock(_,{key:1,appearance:"warning"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):n.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(n.openBlock(),n.createBlock(b,{key:0,"model-value":c.value,"onUpdate:modelValue":[g[1]||(g[1]=w=>c.value=w),u],error:!m.validators.key.isValid.value,"error-message":m.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=w=>m.validators.key.handleBlur(()=>n.unref(a).property))},null,8,["model-value","error","error-message"])):n.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),i$=n.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const t=n.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=rt(),a=En("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:g,skipValidationOnMount:_,fieldNameValidator:h}=wn(e.nodeId,()=>t.value.getInnerData()),b=n.computed(()=>Cl(l.value.property));function w(v){var E;const k=(E=o.value)==null?void 0:E.id;if(!k)throw new Error("Expected selectedNode to be defined");kl(v)||i(k,!1),Cl(v)||r(k,!1),c()}const{fields:y}=bi({validationConfig:()=>({property:Xn({fieldName:"Property"}),key:Mo(l.value.property)?Xn({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:El(l.value.property)}),skipValidationOnMount:_,toggleNodeValid:g});return(v,k)=>(n.openBlock(),n.createBlock(mt,{ref:"form",data:n.unref(l),schema:n.unref(a)},{default:n.withCtx(()=>[n.createVNode(wi,{name:n.unref(l).name,validate:n.unref(m),onUpdate:n.unref(s)},null,8,["name","validate","onUpdate"]),n.createVNode(Et,{name:"content_type","onUpdate:modelValue":n.unref(c)},null,8,["onUpdate:modelValue"]),n.createVNode(r$,{validators:n.unref(y),"onUpdate:modelValue":w,"onUpdate:propertyKey":k[0]||(k[0]=E=>n.unref(c)("property-key"))},null,8,["validators"]),b.value?(n.openBlock(),n.createBlock(Yn,{key:0,"field-name-validator":n.unref(h),"field-names":n.unref(p),items:n.unref(d),"onChange:input":n.unref(u),"onChange:inputs":n.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):n.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),a$=n.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const t=n.useTemplateRef("form"),o=En("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,skipValidationOnMount:p,fieldNameValidator:m}=wn(e.nodeId,()=>t.value.getInnerData()),{createFieldHandler:g}=bi({validationConfig:{status:Wn(np("integer",{fieldName:"Status"}),op(200,255,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),skipValidationOnMount:p,toggleNodeValid:u}),_=g("status",()=>a("status"));return(h,b)=>(n.openBlock(),n.createBlock(mt,{ref:"form",data:n.unref(r),schema:n.unref(o)},{default:n.withCtx(()=>[n.createVNode(wi,{name:n.unref(r).name,validate:n.unref(f),onUpdate:n.unref(i)},null,8,["name","validate","onUpdate"]),n.createVNode(Vn,{error:n.unref(_).error.value,"error-message":n.unref(_).errorMessage.value,name:"status",onBlur:n.unref(_).onBlur,"onUpdate:modelValue":n.unref(_).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),n.createVNode(da,{name:"warn_headers_sent","onUpdate:modelValue":b[0]||(b[0]=w=>n.unref(a)())}),n.createVNode(Yn,{"field-name-validator":n.unref(m),"field-names":n.unref(d),items:n.unref(l),"onChange:input":n.unref(c),"onChange:inputs":n.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),l$=["innerHTML"],s$=we(n.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:()=>fk},offsetTop:{default:()=>pk},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:t}=rt(),o=n.computed(()=>e.nodeId&&t(e.nodeId)),r=n.computed(()=>{var i;switch((i=o.value)==null?void 0:i.type){case"call":return HO;case"service_request":return YO;case"response":return WO;case"jq":return XO;case"static":return e$;case"property":return i$;case"exit":return a$;default:return null}});return(i,a)=>(n.openBlock(),n.createBlock(n.unref(Ie.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":i.maxWidth,"offset-top":i.offsetTop,visible:i.visible,onClose:a[0]||(a[0]=l=>i.$emit("close"))},n.createSlots({default:n.withCtx(()=>[o.value?(n.openBlock(),n.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:n.unref(kt)(o.value.type)},null,8,l$)):n.createCommentVNode("",!0),r.value?(n.openBlock(),n.createBlock(n.unref(r),{key:i.nodeId,class:"dk-node-properties-panel-form","node-id":i.nodeId},null,8,["node-id"])):n.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:n.withCtx(()=>[n.createVNode(Jf,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible"]))}}),[["__scopeId","data-v-1bb64727"]]),c$={class:"dk-editor-content"},d$={class:"header"},u$={class:"title"},f$={class:"body"},p$={class:"node-selection-panel"},m$={class:"main"},g$=we(n.defineComponent({__name:"EditorContent",setup(e){const{t}=Re.createI18n("en-us",je),{sidePanelExpanded:o}=Ea(),{propertiesPanelOpen:r,selectedNode:i,newCreatedNodeId:a}=rt();function l(){r.value=!1,a.value=null}return n.watch(i,s=>{s||l(),(!s||s.id!==a.value)&&(a.value=null)}),(s,c)=>{var d;return n.openBlock(),n.createElementBlock("div",c$,[n.createElementVNode("aside",{class:n.normalizeClass(["side-panel",{expanded:n.unref(o)}])},[n.createElementVNode("header",d$,[n.createElementVNode("h2",u$,n.toDisplayString(n.unref(t)("plugins.free-form.datakit.flow_editor.name")),1)]),n.createElementVNode("div",f$,[n.createElementVNode("div",p$,[n.createVNode(IO)])])],2),n.createElementVNode("div",m$,[n.createVNode(wO)]),n.createVNode(s$,{"node-id":(d=n.unref(i))==null?void 0:d.id,visible:n.unref(r),onClose:l},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-0e99b201"]]),h$=we(n.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){n.useCssVars(c=>({d8114238:n.unref(uk),16852710:n.unref(dk)}));const t=n.useTemplateRef("modal"),o=n.useModel(e,"open"),r=n.useTemplateRef("content"),i=Je.useScrollLock(document),{activate:a,deactivate:l}=ck(t,{returnFocusOnDeactivate:!0,initialFocus:()=>{var c;return(c=r.value)==null?void 0:c.$el}});n.watch(o,async c=>{i.value=!!c,await n.nextTick(),c?a():l()},{immediate:!0});function s(){o.value=!1}return(c,d)=>o.value?(n.openBlock(),n.createElementBlock("div",{key:0,ref_key:"modal",ref:t,class:"dk-editor-modal"},[n.createVNode(_k,{class:"nav",onBack:s}),n.createVNode(g$,{ref_key:"content",ref:r,class:"content",tabindex:"0"},null,512)],512)):n.createCommentVNode("",!0)}}),[["__scopeId","data-v-e38cc292"]]),y$={class:"dk-flow-editor"},_$={class:"field"},b$=we(n.defineComponent({__name:"FlowEditor",props:{editing:{type:Boolean},config:{}},emits:["change","error"],setup(e,{emit:t}){var l;const{t:o}=Re.createI18n("en-us",je),r=t;function i(s){r("change",{...e.config,...s})}const{modalOpen:a}=TE(((l=e.config)==null?void 0:l.nodes)??[],[],{onChange:i});return(s,c)=>{const d=n.resolveComponent("KButton");return n.openBlock(),n.createElementBlock("div",y$,[n.createVNode(d,{appearance:"secondary",onClick:c[0]||(c[0]=f=>a.value=!0)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(o)("plugins.free-form.datakit.flow_editor.cta")),1)]),_:1}),n.createVNode(h$,{open:n.unref(a),"onUpdate:open":c[1]||(c[1]=f=>n.isRef(a)?a.value=f:null)},null,8,["open"]),n.createElementVNode("div",_$,[n.createVNode(da,{name:"config.debug"})])])}}}),[["__scopeId","data-v-dad48070"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function ip(e){return typeof e>"u"||e===null}function w$(e){return typeof e=="object"&&e!==null}function E$(e){return Array.isArray(e)?e:ip(e)?[]:[e]}function k$(e,t){var o,r,i,a;if(t)for(a=Object.keys(t),o=0,r=a.length;o<r;o+=1)i=a[o],e[i]=t[i];return e}function C$(e,t){var o="",r;for(r=0;r<t;r+=1)o+=e;return o}function v$(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var N$=ip,S$=w$,x$=E$,A$=C$,T$=v$,I$=k$,qe={isNothing:N$,isObject:S$,toArray:x$,repeat:A$,isNegativeZero:T$,extend:I$};function ap(e,t){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)+")",!t&&e.mark.snippet&&(o+=`
38
+ 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 Ge extends Error{constructor(n,...o){var r;super((r=su[n])==null?void 0:r.call(su,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function ja(e){return"clientX"in e}function U1(e){return"sourceEvent"in e}function xt(e,n){const o=ja(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 qr=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function K1(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 zr(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const j1=()=>!0;function Ga(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function G1(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())Kr(i,Ur(a))>0&&r.push(a);return r}const q1=250;function z1(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=G1(e,o,n+q1);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}=jn(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 cu(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=j1},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:b,y:g}=xt(e),_=l.elementFromPoint(b,g),w=_!=null&&_.classList.contains(`${s}-flow__handle`)?_:h,y={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const N=du(void 0,w),k=w.getAttribute("data-nodeid"),E=w.getAttribute("data-handleid"),$=w.classList.contains("connectable"),I=w.classList.contains("connectableend");if(!k||!N)return y;const P={source:m?k:r,sourceHandle:m?E:i,target:m?r:k,targetHandle:m?i:E};y.connection=P;const K=$&&I&&(o===jt.Strict?m&&N==="source"||!m&&N==="target":k!==r||E!==i);y.isValid=K&&d(P,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(k)}),y.toHandle=n}return y}function du(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function H1(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function Y1(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function W1(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===jt.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,...jn(d,u,u.position,!0)}:u}const qa={[ge.Left]:ge.Right,[ge.Right]:ge.Left,[ge.Top]:ge.Bottom,[ge.Bottom]:ge.Top},X1=["production","prod"];function Hr(e,...n){uu()&&console.warn(`[Vue Flow]: ${e}`,...n)}function uu(){return!X1.includes(process.env.NODE_ENV||"")}function fu(e,n,o,r,i){const a=n.querySelectorAll(`.vue-flow__handle.${e}`);return a!=null&&a.length?Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-o.left)/r,y:(s.top-o.top)/r,...jr(l)}}):null}function za(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 Me(e){return typeof t.unref(e)<"u"}function Z1(e,n,o,r){if(!e||!e.source||!e.target)return o(new Ge(De.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return Gt(e)?i=e:i={...e,id:zd(e)},i=Gd(i,void 0,r),P1(i,n)?!1:i}function J1(e,n,o,r,i){if(!n.source||!n.target)return i(new Ge(De.EDGE_INVALID,e.id)),!1;if(!o)return i(new Ge(De.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?zd(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function pu(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!pn(l)){o(new Ge(De.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=A1(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 Ge(De.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function mu(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 Ha(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}`;mu("source",c,f,e,i,l),mu("target",c,d,e,a,s)}}function gu(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function Ya(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=Gt(d)?d:Z1(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new Ge(De.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new Ge(De.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new Ge(De.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new Ge(De.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Gd(f,m,a),sourceNode:u,targetNode:p})}return c}const hu=Symbol("vueFlow"),yu=Symbol("nodeId"),_u=Symbol("nodeRef"),Q1=Symbol("edgeId"),ev=Symbol("edgeRef"),Yr=Symbol("slots");function bu(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:b,selectNodesOnDrag:g,removeSelectedElements:_,addSelectedNodes:w,updateNodePositions:y,emits:N}=Ie(),{onStart:k,onDrag:E,onStop:$,onClick:I,el:P,disabled:Y,id:K,selectable:A,dragHandle:z}=e,x=t.shallowRef(!1);let R=[],O,W=null,G={x:void 0,y:void 0},F={x:0,y:0},V=null,D=!1,Q=0,ie=!1;const H=ov(),re=({x:ue,y:q})=>{G={x:ue,y:q};let te=!1;if(R=R.map(v=>{const C={x:ue-v.distance.x,y:q-v.distance.y},{computedPosition:S}=Ka(v,o.value?zr(C,r.value):C,N.error,l.value,v.parentNode?m(v.parentNode):void 0);return te=te||v.position.x!==S.x||v.position.y!==S.y,v.position=S,v}),!!te&&(y(R,!0,!0),x.value=!0,V)){const[v,C]=Ua({id:K,dragItems:R,findNode:m});E({event:V,node:v,nodes:C})}},U=()=>{if(!W)return;const[ue,q]=eu(F,W,f.value);if(ue!==0||q!==0){const te={x:(G.x??0)-ue/c.value.zoom,y:(G.y??0)-q/c.value.zoom};p({x:ue,y:q})&&re(te)}Q=requestAnimationFrame(U)},Z=(ue,q)=>{D=!0;const te=m(K);!g.value&&!h.value&&te&&(te.selected||_()),te&&t.toValue(A)&&g.value&&za(te,h.value,w,_,b,!1,q);const v=H(ue.sourceEvent);if(G=v,R=V1(a.value,u.value,v,m,K),R.length){const[C,S]=Ua({id:K,dragItems:R,findNode:m});k({event:ue.sourceEvent,node:C,nodes:S})}},ee=(ue,q)=>{var te;ue.sourceEvent.type==="touchmove"&&ue.sourceEvent.touches.length>1||(s.value===0&&Z(ue,q),G=H(ue.sourceEvent),W=((te=n.value)==null?void 0:te.getBoundingClientRect())||null,F=xt(ue.sourceEvent,W))},ne=(ue,q)=>{const te=H(ue.sourceEvent);if(!ie&&D&&d.value&&(ie=!0,U()),!D){const v=te.xSnapped-(G.x??0),C=te.ySnapped-(G.y??0);Math.sqrt(v*v+C*C)>s.value&&Z(ue,q)}(G.x!==te.xSnapped||G.y!==te.ySnapped)&&R.length&&D&&(V=ue.sourceEvent,F=xt(ue.sourceEvent,W),re(te))},ae=ue=>{let q=!1;if(!D&&!x.value&&!h.value){const te=ue.sourceEvent,v=H(te),C=v.xSnapped-(G.x??0),S=v.ySnapped-(G.y??0),T=Math.sqrt(C*C+S*S);T!==0&&T<=s.value&&(I==null||I(te),q=!0)}if(R.length&&!q){y(R,!1,!1);const[te,v]=Ua({id:K,dragItems:R,findNode:m});$({event:ue.sourceEvent,node:te,nodes:v})}R=[],x.value=!1,ie=!1,D=!1,G={x:void 0,y:void 0},cancelAnimationFrame(Q)};return t.watch([()=>t.toValue(Y),P],([ue,q],te,v)=>{if(q){const C=gt(q);ue||(O=xC().on("start",S=>ee(S,q)).on("drag",S=>ne(S,q)).on("end",S=>ae(S)).filter(S=>{const T=S.target,B=t.toValue(z);return!S.button&&(!i.value||!iu(T,`.${i.value}`,q)&&(!B||iu(T,B,q)))}),C.call(O)),v(()=>{C.on(".drag",null),O&&(O.on("start",null),O.on("drag",null),O.on("end",null))})}}),x}function tv(){return{doubleClick:me(),click:me(),mouseEnter:me(),mouseMove:me(),mouseLeave:me(),contextMenu:me(),updateStart:me(),update:me(),updateEnd:me()}}function nv(e,n){const o=tv();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 ov(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Ie();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=U1(i)?i.sourceEvent:i,{x:c,y:d}=xt(s,l),f=Io({x:c,y:d},e.value),{x:u,y:p}=o.value?zr(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function Wr(){return!0}function wu({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:b,findNode:g,panBy:_,startConnection:w,updateConnection:y,endConnection:N,emits:k,viewport:E,edges:$,nodes:I,isValidConnection:P,nodeLookup:Y}=Ie();let K=null,A=!1,z=null;function x(O){var W;const G=t.toValue(o)==="target",F=ja(O),V=jd(O.target);if(F&&O.button===0||!F){let D=function(X){v=xt(X,ue),re=z1(Io(v,E.value,!1,[1,1]),f.value,Y.value,T),C||(S(),C=!0);const L=cu(X,{handle:re,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:G?"target":"source",isValidConnection:H,doc:V,lib:"vue",flowId:s,nodeLookup:Y.value},$.value,I.value,g);z=L.handleDomNode,K=L.connection,A=Y1(!!re,L.isValid);const se={...M,isValid:A,to:L.toHandle&&A?La({x:L.toHandle.x,y:L.toHandle.y},E.value):v,toHandle:L.toHandle,toPosition:A&&L.toHandle?L.toHandle.position:qa[T.position],toNode:L.toHandle?Y.value.get(L.toHandle.nodeId):null};if(!(A&&re&&(M!=null&&M.toHandle)&&se.toHandle&&M.toHandle.type===se.toHandle.type&&M.toHandle.nodeId===se.toHandle.nodeId&&M.toHandle.id===se.toHandle.id&&M.to.x===se.to.x&&M.to.y===se.to.y)){if(y(re&&A?La({x:re.x,y:re.y},E.value):v,L.toHandle,H1(!!re,A)),M=se,!re&&!A&&!z)return Ga(te);K&&K.source!==K.target&&z&&(Ga(te),te=z,z.classList.add("connecting","vue-flow__handle-connecting"),z.classList.toggle("valid",!!A),z.classList.toggle("vue-flow__handle-valid",!!A))}},Q=function(X){(re||z)&&K&&A&&(a?a(X,K):k.connect(K)),k.connectEnd(X),i&&(l==null||l(X)),Ga(te),cancelAnimationFrame(U),N(X),C=!1,A=!1,K=null,z=null,V.removeEventListener("mousemove",D),V.removeEventListener("mouseup",Q),V.removeEventListener("touchmove",D),V.removeEventListener("touchend",Q)};const ie=g(t.toValue(n));let H=t.toValue(r)||P.value||Wr;!H&&ie&&(H=(G?ie.isValidSourcePos:ie.isValidTargetPos)||Wr);let re,U=0;const{x:Z,y:ee}=xt(O),ne=V==null?void 0:V.elementFromPoint(Z,ee),ae=du(t.toValue(i),ne),ue=(W=c.value)==null?void 0:W.getBoundingClientRect();if(!ue||!ae)return;const q=W1(t.toValue(n),ae,t.toValue(e),Y.value,d.value);if(!q)return;let te,v=xt(O,ue),C=!1;const S=()=>{if(!h.value)return;const[X,L]=eu(v,ue,b.value);_({x:X,y:L}),U=requestAnimationFrame(S)},T={...q,nodeId:t.toValue(n),type:ae,position:q.position},B=Y.value.get(t.toValue(n)),oe={inProgress:!0,isValid:null,from:jn(B,T,ge.Left,!0),fromHandle:T,fromPosition:T.position,fromNode:B,to:v,toHandle:null,toPosition:qa[T.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:ae,position:(ne==null?void 0:ne.getAttribute("data-handlepos"))||ge.Top,...v},{x:Z-ue.left,y:ee-ue.top}),k.connectStart({event:O,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:ae});let M=oe;V.addEventListener("mousemove",D),V.addEventListener("mouseup",Q),V.addEventListener("touchmove",D),V.addEventListener("touchend",Q)}}function R(O){var W,G;if(!u.value)return;const F=t.toValue(o)==="target";if(!p.value){k.clickConnectStart({event:O,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:ge.Top,...xt(O)},void 0,!0);return}let V=t.toValue(r)||P.value||Wr;const D=g(t.toValue(n));if(!V&&D&&(V=(F?D.isValidSourcePos:D.isValidTargetPos)||Wr),D&&(typeof D.connectable>"u"?m.value:D.connectable)===!1)return;const Q=jd(O.target),ie=cu(O,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:ge.Top,...xt(O)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:V,doc:Q,lib:"vue",flowId:s,nodeLookup:Y.value},$.value,I.value,g),H=((W=ie.connection)==null?void 0:W.source)===((G=ie.connection)==null?void 0:G.target);ie.isValid&&ie.connection&&!H&&k.connect(ie.connection),k.clickConnectEnd(O),N(O,!0)}return{handlePointerDown:x,handleClick:R}}function rv(){return t.inject(yu,"")}function Eu(e){const n=e??rv()??"",o=t.inject(_u,t.ref(null)),{findNode:r,edges:i,emits:a}=Ie(),l=r(n);return l||a.error(new Ge(De.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>Xd([l],i.value))}}function iv(){return{doubleClick:me(),click:me(),mouseEnter:me(),mouseMove:me(),mouseLeave:me(),contextMenu:me(),dragStart:me(),drag:me(),dragStop:me()}}function av(e,n){const o=iv();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 ku(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Ie();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,h=c.y*u*p,b=[];for(const g of e.value)if(g.draggable||l&&typeof g.draggable>"u"){const _={x:g.computedPosition.x+m,y:g.computedPosition.y+h},{computedPosition:w}=Ka(g,_,s.error,n.value,g.parentNode?r(g.parentNode):void 0);b.push({id:g.id,position:w,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(b,!0,!1)}}const Wa=.1,lv=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function Ht(){return Hr("Viewport not initialized yet."),Promise.resolve(!1)}const sv={zoomIn:Ht,zoomOut:Ht,zoomTo:Ht,fitView:Ht,setCenter:Ht,fitBounds:Ht,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:Ht,setTransform:Ht,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function cv(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?wo:Tr).scaleBy(Xa(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}=Kd({x:-r,y:-i},e.translateExtent),u=Un.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?wo:Tr).transform(Xa(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"?wo:Tr).scaleTo(Xa(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:Wa,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=Yd(s),{x:d,y:f,zoom:u}=Zd(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Wa,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:Wa})=>{const{x:l,y:s,zoom:c}=Zd(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>Io(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 Io(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 La(s,e.viewport)}return{x:0,y:0}}}:sv)}function Xa(e,n=0,o=lv,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function dv(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let b,g,_=!!(o.nodes.value.length||o.edges.value.length);b=Rn([e.modelValue,()=>{var w,y;return(y=(w=e.modelValue)==null?void 0:w.value)==null?void 0:y.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setElements(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Rn([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,y])=>{var N;(N=e.modelValue)!=null&&N.value&&Array.isArray(e.modelValue.value)&&(b==null||b.pause(),e.modelValue.value=[...w,...y],t.nextTick(()=>{b==null||b.resume()}))},{immediate:_}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let b,g,_=!!o.nodes.value.length;b=Rn([e.nodes,()=>{var w,y;return(y=(w=e.nodes)==null?void 0:w.value)==null?void 0:y.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setNodes(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Rn([o.nodes,()=>o.nodes.value.length],([w])=>{var y;(y=e.nodes)!=null&&y.value&&Array.isArray(e.nodes.value)&&(b==null||b.pause(),e.nodes.value=[...w],t.nextTick(()=>{b==null||b.resume()}))},{immediate:_}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let b,g,_=!!o.edges.value.length;b=Rn([e.edges,()=>{var w,y;return(y=(w=e.edges)==null?void 0:w.value)==null?void 0:y.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setEdges(w),!g&&!_&&w.length?_=!0:g==null||g.resume())}),g=Rn([o.edges,()=>o.edges.value.length],([w])=>{var y;(y=e.edges)!=null&&y.value&&Array.isArray(e.edges.value)&&(b==null||b.pause(),e.edges.value=[...w],t.nextTick(()=>{b==null||b.resume()}))},{immediate:_}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&Me(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&Me(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&Me(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&Me(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{Me(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const b=async g=>{let _=g;typeof n.autoConnect=="function"&&(_=await n.autoConnect(g)),_!==!1&&o.addEdges([_])};t.watch(()=>n.autoConnect,()=>{Me(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(g,_,w)=>{g?o.onConnect(b):o.hooks.value.connect.off(b),w(()=>{o.hooks.value.connect.off(b)})},{immediate:!0})})},m=()=>{const b=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const g of Object.keys(n)){const _=g;if(!b.includes(_)){const w=t.toRef(()=>n[_]),y=o[_];t.isRef(y)&&r.run(()=>{t.watch(w,N=>{Me(N)&&(y.value=N)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function uv(){return{edgesChange:me(),nodesChange:me(),nodeDoubleClick:me(),nodeClick:me(),nodeMouseEnter:me(),nodeMouseMove:me(),nodeMouseLeave:me(),nodeContextMenu:me(),nodeDragStart:me(),nodeDrag:me(),nodeDragStop:me(),nodesInitialized:me(),miniMapNodeClick:me(),miniMapNodeDoubleClick:me(),miniMapNodeMouseEnter:me(),miniMapNodeMouseMove:me(),miniMapNodeMouseLeave:me(),connect:me(),connectStart:me(),connectEnd:me(),clickConnectStart:me(),clickConnectEnd:me(),paneReady:me(),init:me(),move:me(),moveStart:me(),moveEnd:me(),selectionDragStart:me(),selectionDrag:me(),selectionDragStop:me(),selectionContextMenu:me(),selectionStart:me(),selectionEnd:me(),viewportChangeStart:me(),viewportChange:me(),viewportChangeEnd:me(),paneScroll:me(),paneClick:me(),paneContextMenu:me(),paneMouseEnter:me(),paneMouseMove:me(),paneMouseLeave:me(),edgeContextMenu:me(),edgeMouseEnter:me(),edgeMouseMove:me(),edgeMouseLeave:me(),edgeDoubleClick:me(),edgeClick:me(),edgeUpdateStart:me(),edgeUpdate:me(),edgeUpdateEnd:me(),updateNodeInternals:me(),error:me(e=>Hr(e.message))}}function fv(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),_r(()=>{r.off(i)})}})}function Cu(){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:Da.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:So.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:un.Bezier,style:{}},connectionMode:jt.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:qr()?"Meta":"Control",zoomActivationKeyCode:qr()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:uv(),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 pv=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function mv(e,n,o){const r=cv(e),i=v=>{const C=v??[];e.hooks.updateNodeInternals.trigger(C)},a=v=>T1(v,e.nodes,e.edges),l=v=>I1(v,e.nodes,e.edges),s=v=>Xd(v,e.edges),c=({id:v,type:C,nodeId:S})=>{var T;return Array.from(((T=e.connectionLookup.get(`${S}-${C}-${v??null}`))==null?void 0:T.values())??[])},d=v=>{if(v)return n.value.get(v)},f=v=>{if(v)return o.value.get(v)},u=(v,C,S)=>{var T,B;const J=[];for(const oe of v){const M={id:oe.id,type:"position",dragging:S,from:oe.from};if(C&&(M.position=oe.position,oe.parentNode)){const X=d(oe.parentNode);M.position={x:M.position.x-(((T=X==null?void 0:X.computedPosition)==null?void 0:T.x)??0),y:M.position.y-(((B=X==null?void 0:X.computedPosition)==null?void 0:B.y)??0)}}J.push(M)}J!=null&&J.length&&e.hooks.nodesChange.trigger(J)},p=v=>{if(!e.vueFlowRef)return;const C=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!C)return;const S=window.getComputedStyle(C),{m22:T}=new window.DOMMatrixReadOnly(S.transform),B=[];for(const J of v){const oe=J,M=d(oe.id);if(M){const X=jr(oe.nodeElement);if(!!(X.width&&X.height&&(M.dimensions.width!==X.width||M.dimensions.height!==X.height||oe.forceUpdate))){const se=oe.nodeElement.getBoundingClientRect();M.dimensions=X,M.handleBounds.source=fu("source",oe.nodeElement,se,T,M.id),M.handleBounds.target=fu("target",oe.nodeElement,se,T,M.id),B.push({id:M.id,type:"dimensions",dimensions:X})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),B.length&&e.hooks.nodesChange.trigger(B)},m=(v,C)=>{const S=new Set,T=new Set;for(const oe of v)pn(oe)?S.add(oe.id):Gt(oe)&&T.add(oe.id);const B=zt(n.value,S,!0),J=zt(o.value,T);if(e.multiSelectionActive){for(const oe of S)B.push(qt(oe,C));for(const oe of T)J.push(qt(oe,C))}B.length&&e.hooks.nodesChange.trigger(B),J.length&&e.hooks.edgesChange.trigger(J)},h=v=>{if(e.multiSelectionActive){const C=v.map(S=>qt(S.id,!0));e.hooks.nodesChange.trigger(C);return}e.hooks.nodesChange.trigger(zt(n.value,new Set(v.map(C=>C.id)),!0)),e.hooks.edgesChange.trigger(zt(o.value))},b=v=>{if(e.multiSelectionActive){const C=v.map(S=>qt(S.id,!0));e.hooks.edgesChange.trigger(C);return}e.hooks.edgesChange.trigger(zt(o.value,new Set(v.map(C=>C.id)))),e.hooks.nodesChange.trigger(zt(n.value,new Set,!0))},g=v=>{m(v,!0)},_=v=>{const S=(v||e.nodes).map(T=>(T.selected=!1,qt(T.id,!1)));e.hooks.nodesChange.trigger(S)},w=v=>{const S=(v||e.edges).map(T=>(T.selected=!1,qt(T.id,!1)));e.hooks.edgesChange.trigger(S)},y=v=>{if(!v||!v.length)return m([],!1);const C=v.reduce((S,T)=>{const B=qt(T.id,!1);return pn(T)?S.nodes.push(B):S.edges.push(B),S},{nodes:[],edges:[]});C.nodes.length&&e.hooks.nodesChange.trigger(C.nodes),C.edges.length&&e.hooks.edgesChange.trigger(C.edges)},N=v=>{var C;(C=e.d3Zoom)==null||C.scaleExtent([v,e.maxZoom]),e.minZoom=v},k=v=>{var C;(C=e.d3Zoom)==null||C.scaleExtent([e.minZoom,v]),e.maxZoom=v},E=v=>{var C;(C=e.d3Zoom)==null||C.translateExtent(v),e.translateExtent=v},$=v=>{e.nodeExtent=v,i()},I=v=>{var C;(C=e.d3Zoom)==null||C.clickDistance(v)},P=v=>{e.nodesDraggable=v,e.nodesConnectable=v,e.elementsSelectable=v},Y=v=>{const C=v instanceof Function?v(e.nodes):v;!e.initialized&&!C.length||(e.nodes=pu(C,d,e.hooks.error.trigger))},K=v=>{const C=v instanceof Function?v(e.edges):v;if(!e.initialized&&!C.length)return;const S=Ya(C,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);Ha(e.connectionLookup,o.value,S),e.edges=S},A=v=>{const C=v instanceof Function?v([...e.nodes,...e.edges]):v;!e.initialized&&!C.length||(Y(C.filter(pn)),K(C.filter(Gt)))},z=v=>{let C=v instanceof Function?v(e.nodes):v;C=Array.isArray(C)?C:[C];const S=pu(C,d,e.hooks.error.trigger),T=[];for(const B of S)T.push(nu(B));T.length&&e.hooks.nodesChange.trigger(T)},x=v=>{let C=v instanceof Function?v(e.edges):v;C=Array.isArray(C)?C:[C];const S=Ya(C,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),T=[];for(const B of S)T.push(nu(B));T.length&&e.hooks.edgesChange.trigger(T)},R=(v,C=!0,S=!1)=>{const T=v instanceof Function?v(e.nodes):v,B=Array.isArray(T)?T:[T],J=[],oe=[];function M(L){const se=s(L);for(const ce of se)(!Me(ce.deletable)||ce.deletable)&&oe.push(ru(ce.id,ce.source,ce.target,ce.sourceHandle,ce.targetHandle))}function X(L){const se=[];for(const ce of e.nodes)ce.parentNode===L&&se.push(ce);if(se.length){for(const ce of se)J.push(ou(ce.id));C&&M(se);for(const ce of se)X(ce.id)}}for(const L of B){const se=typeof L=="string"?d(L):L;se&&(Me(se.deletable)&&!se.deletable||(J.push(ou(se.id)),C&&M([se]),S&&X(se.id)))}oe.length&&e.hooks.edgesChange.trigger(oe),J.length&&e.hooks.nodesChange.trigger(J)},O=v=>{const C=v instanceof Function?v(e.edges):v,S=Array.isArray(C)?C:[C],T=[];for(const B of S){const J=typeof B=="string"?f(B):B;J&&(Me(J.deletable)&&!J.deletable||T.push(ru(typeof B=="string"?B:B.id,J.source,J.target,J.sourceHandle,J.targetHandle)))}e.hooks.edgesChange.trigger(T)},W=(v,C,S=!0)=>{const T=f(v.id);if(!T)return!1;const B=e.edges.indexOf(T),J=J1(v,C,T,S,e.hooks.error.trigger);if(J){const[oe]=Ya([J],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((M,X)=>X===B?oe:M),Ha(e.connectionLookup,o.value,[oe]),oe}return!1},G=(v,C,S={replace:!1})=>{const T=f(v);if(!T)return;const B=typeof C=="function"?C(T):C;T.data=S.replace?B:{...T.data,...B}},F=v=>tu(v,e.nodes),V=v=>{const C=tu(v,e.edges);return Ha(e.connectionLookup,o.value,C),C},D=(v,C,S={replace:!1})=>{const T=d(v);if(!T)return;const B=typeof C=="function"?C(T):C;S.replace?e.nodes.splice(e.nodes.indexOf(T),1,B):Object.assign(T,B)},Q=(v,C,S={replace:!1})=>{const T=d(v);if(!T)return;const B=typeof C=="function"?C(T):C;T.data=S.replace?B:{...T.data,...B}},ie=(v,C,S=!1)=>{S?e.connectionClickStartHandle=v:e.connectionStartHandle=v,e.connectionEndHandle=null,e.connectionStatus=null,C&&(e.connectionPosition=C)},H=(v,C=null,S=null)=>{e.connectionStartHandle&&(e.connectionPosition=v,e.connectionEndHandle=C,e.connectionStatus=S)},re=(v,C)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,C?e.connectionClickStartHandle=null:e.connectionStartHandle=null},U=v=>{const C=x1(v),S=C?null:Ao(v)?v:d(v.id);return!C&&!S?[null,null,C]:[C?v:Ur(S),S,C]},Z=(v,C=!0,S=e.nodes)=>{const[T,B,J]=U(v);if(!T)return[];const oe=[];for(const M of S||e.nodes){if(!J&&(M.id===B.id||!M.computedPosition))continue;const X=Ur(M),L=Kr(X,T);(C&&L>0||L>=Number(T.width)*Number(T.height))&&oe.push(M)}return oe},ee=(v,C,S=!0)=>{const[T]=U(v);if(!T)return!1;const B=Kr(T,C);return S&&B>0||B>=Number(T.width)*Number(T.height)},ne=v=>{const{viewport:C,dimensions:S,d3Zoom:T,d3Selection:B,translateExtent:J}=e;if(!T||!B||!v.x&&!v.y)return!1;const oe=Un.translate(C.x+v.x,C.y+v.y).scale(C.zoom),M=[[0,0],[S.width,S.height]],X=T.constrain()(oe,M,J),L=e.viewport.x!==X.x||e.viewport.y!==X.y||e.viewport.zoom!==X.k;return T.transform(B,X),L},ae=v=>{const C=v instanceof Function?v(e):v,S=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];Me(C.defaultEdgeOptions)&&(e.defaultEdgeOptions=C.defaultEdgeOptions);const T=C.modelValue||C.nodes||C.edges?[]:void 0;T&&(C.modelValue&&T.push(...C.modelValue),C.nodes&&T.push(...C.nodes),C.edges&&T.push(...C.edges),A(T));const B=()=>{Me(C.maxZoom)&&k(C.maxZoom),Me(C.minZoom)&&N(C.minZoom),Me(C.translateExtent)&&E(C.translateExtent)};for(const J of Object.keys(C)){const oe=J,M=C[oe];![...pv,...S].includes(oe)&&Me(M)&&(e[oe]=M)}ha(()=>e.d3Zoom).not.toBeNull().then(B),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:A,setNodes:Y,setEdges:K,addNodes:z,addEdges:x,removeNodes:R,removeEdges:O,findNode:d,findEdge:f,updateEdge:W,updateEdgeData:G,updateNode:D,updateNodeData:Q,applyEdgeChanges:V,applyNodeChanges:F,addSelectedElements:g,addSelectedNodes:h,addSelectedEdges:b,setMinZoom:N,setMaxZoom:k,setTranslateExtent:E,setNodeExtent:$,setPaneClickDistance:I,removeSelectedElements:y,removeSelectedNodes:_,removeSelectedEdges:w,startConnection:ie,updateConnection:H,endConnection:re,setInteractive:P,setState:ae,getIntersectingNodes:Z,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:ee,panBy:ne,fitView:v=>r.value.fitView(v),zoomIn:v=>r.value.zoomIn(v),zoomOut:v=>r.value.zoomOut(v),zoomTo:(v,C)=>r.value.zoomTo(v,C),setViewport:(v,C)=>r.value.setViewport(v,C),setTransform:(v,C)=>r.value.setTransform(v,C),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(v,C,S)=>r.value.setCenter(v,C,S),fitBounds:(v,C)=>r.value.fitBounds(v,C),project:v=>r.value.project(v),screenToFlowCoordinate:v=>r.value.screenToFlowCoordinate(v),flowToScreenCoordinate:v=>r.value.flowToScreenCoordinate(v),toObject:()=>{const v=[],C=[];for(const S of e.nodes){const{computedPosition:T,handleBounds:B,selected:J,dimensions:oe,isParent:M,resizing:X,dragging:L,events:se,...ce}=S;v.push(ce)}for(const S of e.edges){const{selected:T,sourceNode:B,targetNode:J,events:oe,...M}=S;C.push(M)}return JSON.parse(JSON.stringify({nodes:v,edges:C,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:v=>new Promise(C=>{const{nodes:S,edges:T,position:B,zoom:J,viewport:oe}=v;if(S&&Y(S),T&&K(T),oe!=null&&oe.x&&(oe!=null&&oe.y)||B){const M=(oe==null?void 0:oe.x)||B[0],X=(oe==null?void 0:oe.y)||B[1],L=(oe==null?void 0:oe.zoom)||J||e.viewport.zoom;return ha(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:M,y:X,zoom:L}).then(()=>{C(!0)})})}else C(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const v=Cu();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const C=Un.translate(v.defaultViewport.x??0,v.defaultViewport.y??0).scale(fn(v.defaultViewport.zoom??1,v.minZoom,v.maxZoom)),S=e.viewportRef.getBoundingClientRect(),T=[[0,0],[S.width,S.height]],B=e.d3Zoom.constrain()(C,T,v.translateExtent);e.d3Zoom.transform(e.d3Selection,B)}ae(v)},$destroy:()=>{}}}const gv=["data-id","data-handleid","data-nodeid","data-handlepos"],hv={name:"Handle",compatConfig:{MODE:3}},Yt=t.defineComponent({...hv,props:{id:{default:null},type:{},position:{default:()=>ge.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:d,nodesConnectable:f,noDragClassName:u,noPanClassName:p}=Ie(),{id:m,node:h,nodeEl:b,connectedEdges:g}=Eu(),_=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),y=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),N=t.toRef(()=>{var K,A,z,x,R,O;return((K=l.value)==null?void 0:K.nodeId)===m&&((A=l.value)==null?void 0:A.id)===e.id&&((z=l.value)==null?void 0:z.type)===r.value||((x=c.value)==null?void 0:x.nodeId)===m&&((R=c.value)==null?void 0:R.id)===e.id&&((O=c.value)==null?void 0:O.type)===r.value}),k=t.toRef(()=>{var K,A,z;return((K=s.value)==null?void 0:K.nodeId)===m&&((A=s.value)==null?void 0:A.id)===e.id&&((z=s.value)==null?void 0:z.type)===r.value}),{handlePointerDown:E,handleClick:$}=wu({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),I=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(K=>{const A=K[`${r.value}Handle`];return K[r.value]!==m?!1:A?A===e.id:!0}):typeof e.connectable=="number"?g.value.filter(K=>{const A=K[`${r.value}Handle`];return K[r.value]!==m?!1:A?A===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,g.value):Me(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var K;if(!h.dimensions.width||!h.dimensions.height)return;const A=(K=h.handleBounds[r.value])==null?void 0:K.find(F=>F.id===e.id);if(!d.value||A)return;const z=d.value.querySelector(".vue-flow__transformationpane");if(!b.value||!_.value||!z||!e.id)return;const x=b.value.getBoundingClientRect(),R=_.value.getBoundingClientRect(),O=window.getComputedStyle(z),{m22:W}=new window.DOMMatrixReadOnly(O.transform),G={id:e.id,position:e.position,x:(R.left-x.left)/W,y:(R.top-x.top)/W,type:r.value,nodeId:m,...jr(_.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],G]});function P(K){const A=ja(K);I.value&&w.value&&(A&&K.button===0||!A)&&E(K)}function Y(K){!m||!s.value&&!w.value||I.value&&$(K)}return n({handleClick:$,handlePointerDown:E,onClick:Y,onPointerDown:P}),(K,A)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:_,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":K.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${K.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:I.value,connecting:k.value,connectablestart:w.value,connectableend:y.value,connectionindicator:I.value&&(w.value&&!N.value||y.value&&N.value)}]]),onMousedown:P,onTouchstartPassive:P,onClick:Y},[t.renderSlot(K.$slots,"default",{id:K.id})],42,gv))}}),Xr=function({sourcePosition:e=ge.Bottom,targetPosition:n=ge.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(Yt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(Yt,{type:"source",position:e,connectable:r,isValidConnection:a})]};Xr.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Xr.inheritAttrs=!1,Xr.compatConfig={MODE:3};const yv=Xr,Zr=function({targetPosition:e=ge.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(Yt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Zr.props=["targetPosition","label","isValidTargetPos","connectable","data"],Zr.inheritAttrs=!1,Zr.compatConfig={MODE:3};const _v=Zr,Jr=function({sourcePosition:e=ge.Bottom,label:n,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??n;return[typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a]),t.h(Yt,{type:"source",position:e,connectable:o,isValidConnection:r})]};Jr.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Jr.inheritAttrs=!1,Jr.compatConfig={MODE:3};const bv=Jr,wv=["transform"],Ev=["width","height","x","y","rx","ry"],kv=["y"],Cv={name:"EdgeText",compatConfig:{MODE:3}},Nv=t.defineComponent({...Cv,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,Ev)):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,kv)],8,wv))}}),vv=["id","d","marker-end","marker-start"],Sv=["d","stroke-width"],xv={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Qr=t.defineComponent({...xv,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,vv),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,Sv)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(Nv,{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 Nu({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 vu({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 ei(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function Su({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ge.Left:l=n-ei(n-r,a),s=o;break;case ge.Right:l=n+ei(r-n,a),s=o;break;case ge.Top:l=n,s=o-ei(o-i,a);break;case ge.Bottom:l=n,s=o+ei(i-o,a);break}return[l,s]}function xu(e){const{sourceX:n,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,curvature:s=.25}=e,[c,d]=Su({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=Su({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,h,b]=vu({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,b]}function Au({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case ge.Left:case ge.Right:a=.5*(n+r),l=o;break;case ge.Top:case ge.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function Iu(e){const{sourceX:n,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top}=e,[s,c]=Au({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=Au({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,h]=vu({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 Tu={[ge.Left]:{x:-1,y:0},[ge.Right]:{x:1,y:0},[ge.Top]:{x:0,y:-1},[ge.Bottom]:{x:0,y:1}};function Av({source:e,sourcePosition:n=ge.Bottom,target:o}){return n===ge.Left||n===ge.Right?e.x<o.x?{x:1,y:0}:{x:-1,y:0}:e.y<o.y?{x:0,y:1}:{x:0,y:-1}}function Pu(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function Iv({source:e,sourcePosition:n=ge.Bottom,target:o,targetPosition:r=ge.Top,center:i,offset:a}){const l=Tu[n],s=Tu[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=Av({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,b;const g={x:0,y:0},_={x:0,y:0},[w,y,N,k]=Nu({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??w,b=i.y??y;const $=[{x:h,y:c.y},{x:h,y:d.y}],I=[{x:c.x,y:b},{x:d.x,y:b}];l[u]===p?m=u==="x"?$:I:m=u==="x"?I:$}else{const $=[{x:c.x,y:d.y}],I=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?I:$:m=l.y===p?$:I,n===r){const z=Math.abs(e[u]-o[u]);if(z<=a){const x=Math.min(a-1,a-z);l[u]===p?g[u]=(c[u]>e[u]?-1:1)*x:_[u]=(d[u]>o[u]?-1:1)*x}}if(n!==r){const z=u==="x"?"y":"x",x=l[u]===s[z],R=c[z]>d[z],O=c[z]<d[z];(l[u]===1&&(!x&&R||x&&O)||l[u]!==1&&(!x&&O||x&&R))&&(m=u==="x"?$:I)}const P={x:c.x+g.x,y:c.y+g.y},Y={x:d.x+_.x,y:d.y+_.y},K=Math.max(Math.abs(P.x-m[0].x),Math.abs(Y.x-m[0].x)),A=Math.max(Math.abs(P.y-m[0].y),Math.abs(Y.y-m[0].y));K>=A?(h=(P.x+Y.x)/2,b=m[0].y):(h=m[0].x,b=(P.y+Y.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...m,{x:d.x+_.x,y:d.y+_.y},o],h,b,N,k]}function Tv(e,n,o,r){const i=Math.min(Pu(e,n)/2,Pu(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 Za(e){const{sourceX:n,sourceY:o,sourcePosition:r=ge.Bottom,targetX:i,targetY:a,targetPosition:l=ge.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,h,b]=Iv({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,y)=>{let N;return y>0&&y<u.length-1?N=Tv(u[y-1],w,u[y+1],s):N=`${y===0?"M":"L"}${w.x} ${w.y}`,_+=N,_},""),p,m,h,b]}function Pv(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=Nu({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const Ov=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]=Pv(e);return t.h(Qr,{path:o,labelX:r,labelY:i,...n,...e})}}}),Ou=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]=Za({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(Qr,{path:o,labelX:r,labelY:i,...n,...e})}}}),$v=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(Ou,{...e,...n,borderRadius:0})}}),Bv=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]=xu({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(Qr,{path:o,labelX:r,labelY:i,...n,...e})}}}),Vv=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]=Iu({...e,sourcePosition:e.sourcePosition??ge.Bottom,targetPosition:e.targetPosition??ge.Top});return t.h(Qr,{path:o,labelX:r,labelY:i,...n,...e})}}}),Rv={input:bv,default:yv,output:_v},Dv={default:Bv,straight:Ov,step:$v,smoothstep:Ou,simplebezier:Vv};function Mv(e,n,o){const r=t.computed(()=>b=>n.value.get(b)),i=t.computed(()=>b=>o.value.get(b)),a=t.computed(()=>{const b={...Dv,...e.edgeTypes},g=Object.keys(b);for(const _ of e.edges)_.type&&!g.includes(_.type)&&(b[_.type]=_.type);return b}),l=t.computed(()=>{const b={...Rv,...e.nodeTypes},g=Object.keys(b);for(const _ of e.nodes)_.type&&!g.includes(_.type)&&(b[_.type]=_.type);return b}),s=t.computed(()=>e.onlyRenderVisibleElements?Wd(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const b=[];for(const g of e.edges){const _=n.value.get(g.source),w=n.value.get(g.target);L1({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})&&b.push(g)}return b}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const b=[];for(const g of e.nodes)g.selected&&b.push(g);return b}),u=t.computed(()=>{const b=[];for(const g of e.edges)g.selected&&b.push(g);return b}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const b=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&b.push(g);return b}),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 mn{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){var n;const o=(n=t.getCurrentInstance())==null?void 0:n.appContext.app,r=(o==null?void 0:o.config.globalProperties.$vueFlowStorage)??mn.instance;return mn.instance=r??new mn,o&&(o.config.globalProperties.$vueFlowStorage=mn.instance),mn.instance}set(n,o){return this.flows.set(n,o)}get(n){return this.flows.get(n)}remove(n){return this.flows.delete(n)}create(n,o){const r=Cu(),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=Mv(i,s,c),f=mv(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...RE(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,u),u}getId(){return`vue-flow-${this.currentId++}`}}function Ie(e){const n=mn.getInstance(),o=t.getCurrentScope(),r=typeof e=="object",i=r?e:{id:e},a=i.id,l=a??(o==null?void 0:o.vueFlowId);let s;if(o){const c=t.inject(hu,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),d=n.create(c,i);s=d,(o??t.effectScope(!0)).run(()=>{t.watch(d.applyDefault,(u,p,m)=>{const h=g=>{d.applyNodeChanges(g)},b=g=>{d.applyEdgeChanges(g)};u?(d.onNodesChange(h),d.onEdgesChange(b)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(b)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(b)})},{immediate:!0}),_r(()=>{if(s){const u=n.get(s.id);u?u.$destroy():Hr(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(hu,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new Ge(De.USEVUEFLOW_OPTIONS))}return s}function Lv(e){const{emits:n,dimensions:o}=Ie();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=jr(i);(l.width===0||l.height===0)&&n.error(new Ge(De.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:l.width||500,height:l.height||500}};a(),window.addEventListener("resize",a),i&&(r=new ResizeObserver(()=>a()),r.observe(i)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const Fv={name:"UserSelection",compatConfig:{MODE:3}},Uv=t.defineComponent({...Fv,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))}}),Kv=["tabIndex"],jv={name:"NodesSelection",compatConfig:{MODE:3}},Gv=t.defineComponent({...jv,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Ie(),s=ku(),c=t.ref(null),d=bu({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(()=>Yd(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||Kn[h.key]&&(h.preventDefault(),s({x:Kn[h.key].x,y:Kn[h.key].y},h.shiftKey))}return(h,b)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(d)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(u.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,Kv)],6)):t.createCommentVNode("",!0)}});function qv(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const zv={name:"Pane",compatConfig:{MODE:3}},Hv=t.defineComponent({...zv,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:b,multiSelectionKeyCode:g,multiSelectionActive:_,edgeLookup:w,nodeLookup:y,connectionLookup:N,defaultEdgeOptions:k,connectionStartHandle:E}=Ie(),$=t.ref(null),I=t.ref(new Set),P=t.ref(new Set),Y=t.ref(),K=t.toRef(()=>c.value&&(e.isSelecting||a.value)),A=t.toRef(()=>E.value!==null);let z=!1,x=!1;const R=xo(b,{actInsideInputWithModifier:!1}),O=xo(g);t.watch(R,H=>{H&&(p(u.value),m(f.value),d.value=!1)}),t.watch(O,H=>{_.value=H});function W(H,re){return U=>{U.target===re&&(H==null||H(U))}}function G(H){if(z||A.value){z=!1;return}i.paneClick(H),l(),d.value=!1}function F(H){H.preventDefault(),H.stopPropagation(),i.paneContextMenu(H)}function V(H){i.paneScroll(H)}function D(H){var re,U,Z;if(Y.value=(re=n.value)==null?void 0:re.getBoundingClientRect(),!c.value||!e.isSelecting||H.button!==0||H.target!==$.value||!Y.value)return;(Z=(U=H.target)==null?void 0:U.setPointerCapture)==null||Z.call(U,H.pointerId);const{x:ee,y:ne}=qv(H,Y.value);x=!0,z=!1,l(),s.value={width:0,height:0,startX:ee,startY:ne,x:ee,y:ne},i.selectionStart(H)}function Q(H){var re;if(!Y.value||!s.value)return;z=!0;const{x:U,y:Z}=xt(H,Y.value),{startX:ee=0,startY:ne=0}=s.value,ae={startX:ee,startY:ne,x:U<ee?U:ee,y:Z<ne?Z:ne,width:Math.abs(U-ee),height:Math.abs(Z-ne)},ue=I.value,q=P.value;I.value=new Set(Wd(o.value,ae,r.value,h.value===Da.Partial,!0).map(v=>v.id)),P.value=new Set;const te=((re=k.value)==null?void 0:re.selectable)??!0;for(const v of I.value){const C=N.value.get(v);if(C)for(const{edgeId:S}of C.values()){const T=w.value.get(S);T&&(T.selectable??te)&&P.value.add(S)}}if(!gu(ue,I.value)){const v=zt(y.value,I.value,!0);i.nodesChange(v)}if(!gu(q,P.value)){const v=zt(w.value,P.value);i.edgesChange(v)}s.value=ae,a.value=!0,d.value=!1}function ie(H){var re;H.button!==0||!x||((re=H.target)==null||re.releasePointerCapture(H.pointerId),!a.value&&s.value&&H.target===$.value&&G(H),a.value=!1,s.value=null,d.value=I.value.size>0,i.selectionEnd(H),e.selectionKeyPressed&&(z=!1),x=!1)}return(H,re)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:$,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:H.isSelecting}]),onClick:re[0]||(re[0]=U=>K.value?void 0:W(G,$.value)(U)),onContextmenu:re[1]||(re[1]=U=>W(F,$.value)(U)),onWheelPassive:re[2]||(re[2]=U=>W(V,$.value)(U)),onPointerenter:re[3]||(re[3]=U=>K.value?void 0:t.unref(i).paneMouseEnter(U)),onPointerdown:re[4]||(re[4]=U=>K.value?D(U):t.unref(i).paneMouseMove(U)),onPointermove:re[5]||(re[5]=U=>K.value?Q(U):t.unref(i).paneMouseMove(U)),onPointerup:re[6]||(re[6]=U=>K.value?ie(U):void 0),onPointerleave:re[7]||(re[7]=U=>t.unref(i).paneMouseLeave(U))},[t.renderSlot(H.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(Uv,{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(Gv,{key:1})):t.createCommentVNode("",!0)],34))}}),Yv={name:"Transform",compatConfig:{MODE:3}},Wv=t.defineComponent({...Yv,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Ie(),i=t.computed(()=>o.value?!r.value:!1),a=t.computed(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:t.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[t.renderSlot(l.$slots,"default")],4))}}),Xv={name:"Viewport",compatConfig:{MODE:3}},Zv=t.defineComponent({...Xv,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:b,noWheelClassName:g,noPanClassName:_,emits:w,connectionStartHandle:y,userSelectionActive:N,paneDragging:k,d3Zoom:E,d3Selection:$,d3ZoomHandler:I,viewport:P,viewportRef:Y,paneClickDistance:K}=Ie();Lv(Y);const A=t.shallowRef(!1),z=t.shallowRef(!1);let x=null,R=!1,O=0,W={x:0,y:0,zoom:0};const G=xo(s),F=xo(l),V=xo(a),D=t.toRef(()=>(!F.value||F.value&&l.value===!0)&&(G.value||u.value)),Q=t.toRef(()=>G.value||c.value),ie=t.toRef(()=>F.value||l.value===!0&&D.value!==!0);t.onMounted(()=>{if(!Y.value){Hr("Viewport element is missing");return}const ne=Y.value,ae=ne.getBoundingClientRect(),ue=w1().clickDistance(K.value).scaleExtent([n.value,o.value]).translateExtent(i.value),q=gt(ne).call(ue),te=q.on("wheel.zoom"),v=Un.translate(r.value.x??0,r.value.y??0).scale(fn(r.value.zoom??1,n.value,o.value)),C=[[0,0],[ae.width,ae.height]],S=ue.constrain()(v,C,i.value);ue.transform(q,S),ue.wheelDelta(re),E.value=ue,$.value=q,I.value=te,P.value={x:S.x,y:S.y,zoom:S.k},ue.on("start",T=>{var B;if(!T.sourceEvent)return null;O=T.sourceEvent.button,A.value=!0;const J=Z(T.transform);((B=T.sourceEvent)==null?void 0:B.type)==="mousedown"&&(k.value=!0),W=J,w.viewportChangeStart(J),w.moveStart({event:T,flowTransform:J})}),ue.on("end",T=>{if(!T.sourceEvent)return null;if(A.value=!1,k.value=!1,H(D.value,O??0)&&!R&&w.paneContextMenu(T.sourceEvent),R=!1,U(W,T.transform)){const B=Z(T.transform);W=B,w.viewportChangeEnd(B),w.moveEnd({event:T,flowTransform:B})}}),ue.filter(T=>{var B;const J=V.value||h.value,oe=m.value&&T.ctrlKey,M=T.button;if(M===1&&T.type==="mousedown"&&(ee(T,"vue-flow__node")||ee(T,"vue-flow__edge")))return!0;if(!D.value&&!J&&!Q.value&&!p.value&&!m.value||N.value||!p.value&&T.type==="dblclick"||ee(T,g.value)&&T.type==="wheel"||ee(T,_.value)&&(T.type!=="wheel"||Q.value&&T.type==="wheel"&&!V.value)||!m.value&&T.ctrlKey&&T.type==="wheel"||!J&&!Q.value&&!oe&&T.type==="wheel")return!1;if(!m&&T.type==="touchstart"&&((B=T.touches)==null?void 0:B.length)>1)return T.preventDefault(),!1;if(!D.value&&(T.type==="mousedown"||T.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&M===0||Array.isArray(u.value)&&!u.value.includes(M)&&(T.type==="mousedown"||T.type==="touchstart"))return!1;const X=Array.isArray(u.value)&&u.value.includes(M)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!M||M<=1;return(!T.ctrlKey||G.value||T.type==="wheel")&&X}),t.watch([N,D],()=>{N.value&&!A.value?ue.on("zoom",null):N.value||ue.on("zoom",T=>{P.value={x:T.transform.x,y:T.transform.y,zoom:T.transform.k};const B=Z(T.transform);R=H(D.value,O??0),w.viewportChange(B),w.move({event:T,flowTransform:B})})},{immediate:!0}),t.watch([N,Q,d,V,m,b,g],()=>{Q.value&&!V.value&&!N.value?q.on("wheel.zoom",T=>{if(ee(T,g.value))return!1;const B=V.value||h.value,J=m.value&&T.ctrlKey;if(!(!b.value||Q.value||B||J))return!1;T.preventDefault(),T.stopImmediatePropagation();const M=q.property("__zoom").k||1,X=qr();if(!G.value&&T.ctrlKey&&m.value&&X){const _e=Ct(T),be=re(T),Ce=M*2**be;ue.scaleTo(q,Ce,_e,T);return}const L=T.deltaMode===1?20:1;let se=d.value===So.Vertical?0:T.deltaX*L,ce=d.value===So.Horizontal?0:T.deltaY*L;!X&&T.shiftKey&&d.value!==So.Vertical&&!se&&ce&&(se=ce,ce=0),ue.translateBy(q,-(se/M)*f.value,-(ce/M)*f.value);const le=Z(q.property("__zoom"));x&&clearTimeout(x),z.value?(w.move({event:T,flowTransform:le}),w.viewportChange(le),x=setTimeout(()=>{w.moveEnd({event:T,flowTransform:le}),w.viewportChangeEnd(le),z.value=!1},150)):(z.value=!0,w.moveStart({event:T,flowTransform:le}),w.viewportChangeStart(le))},{passive:!1}):typeof te<"u"&&q.on("wheel.zoom",function(T,B){const J=!b.value&&T.type==="wheel"&&!T.ctrlKey,oe=V.value||h.value,M=m.value&&T.ctrlKey;if(!oe&&!c.value&&!M&&T.type==="wheel"||J||ee(T,g.value))return null;T.preventDefault(),te.call(this,T,B)},{passive:!1})},{immediate:!0})});function H(ne,ae){return ae===2&&Array.isArray(ne)&&ne.includes(2)}function re(ne){const ae=ne.ctrlKey&&qr()?10:1;return-ne.deltaY*(ne.deltaMode===1?.05:ne.deltaMode?1:.002)*ae}function U(ne,ae){return ne.x!==ae.x&&!Number.isNaN(ae.x)||ne.y!==ae.y&&!Number.isNaN(ae.y)||ne.zoom!==ae.k&&!Number.isNaN(ae.k)}function Z(ne){return{x:ne.x,y:ne.y,zoom:ne.k}}function ee(ne,ae){return ne.target.closest(`.${ae}`)}return(ne,ae)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:Y,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(Hv,{"is-selecting":ie.value,"selection-key-pressed":t.unref(F),class:t.normalizeClass({connecting:!!t.unref(y),dragging:t.unref(k),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(Wv,null,{default:t.withCtx(()=>[t.renderSlot(ne.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),Jv=["id"],Qv=["id"],eS=["id"],tS={name:"A11yDescriptions",compatConfig:{MODE:3}},nS=t.defineComponent({...tS,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Ie();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(Ld)}-${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,Jv),t.createElementVNode("div",{id:`${t.unref(Fd)}-${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,Qv),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(S1)}-${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,eS))],64))}});function oS(){const e=Ie();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function rS(e,n,o){return o===ge.Left?e-n:o===ge.Right?e+n:e}function iS(e,n,o){return o===ge.Top?e-n:o===ge.Bottom?e+n:e}const Ja=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=ge.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:rS(n,e,r),cy:iS(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};Ja.props=["radius","centerX","centerY","position","type"],Ja.compatConfig={MODE:3};const $u=Ja,aS=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:b,edgesUpdatable:g,edgesFocusable:_,hooks:w}=Ie(),y=t.computed(()=>f(e.id)),{emit:N,on:k}=nv(y.value,a),E=t.inject(Yr),$=t.getCurrentInstance(),I=t.ref(!1),P=t.ref(!1),Y=t.ref(""),K=t.ref(null),A=t.ref("source"),z=t.ref(null),x=t.toRef(()=>typeof y.value.selectable>"u"?b.value:y.value.selectable),R=t.toRef(()=>typeof y.value.updatable>"u"?g.value:y.value.updatable),O=t.toRef(()=>typeof y.value.focusable>"u"?_.value:y.value.focusable);t.provide(Q1,e.id),t.provide(ev,z);const W=t.computed(()=>y.value.class instanceof Function?y.value.class(y.value):y.value.class),G=t.computed(()=>y.value.style instanceof Function?y.value.style(y.value):y.value.style),F=t.computed(()=>{const C=y.value.type||"default",S=E==null?void 0:E[`edge-${C}`];if(S)return S;let T=y.value.template??c.value[C];if(typeof T=="string"&&$){const B=Object.keys($.appContext.components);B&&B.includes(C)&&(T=t.resolveComponent(C,!1))}return T&&typeof T!="string"?T:(a.error(new Ge(De.EDGE_TYPE_MISSING,T)),!1)}),{handlePointerDown:V}=wu({nodeId:Y,handleId:K,type:A,isValidConnection:p,edgeUpdaterType:A,onEdgeUpdate:ie,onEdgeUpdateEnd:H});return()=>{const C=u(y.value.source),S=u(y.value.target),T="pathOptions"in y.value?y.value.pathOptions:{};if(!C&&!S)return a.error(new Ge(De.EDGE_SOURCE_TARGET_MISSING,y.value.id,y.value.source,y.value.target)),null;if(!C)return a.error(new Ge(De.EDGE_SOURCE_MISSING,y.value.id,y.value.source)),null;if(!S)return a.error(new Ge(De.EDGE_TARGET_MISSING,y.value.id,y.value.target)),null;if(!y.value||y.value.hidden||C.hidden||S.hidden)return null;let B;r.value===jt.Strict?B=C.handleBounds.source:B=[...C.handleBounds.source||[],...C.handleBounds.target||[]];const J=lu(B,y.value.sourceHandle);let oe;r.value===jt.Strict?oe=S.handleBounds.target:oe=[...S.handleBounds.target||[],...S.handleBounds.source||[]];const M=lu(oe,y.value.targetHandle),X=(J==null?void 0:J.position)||ge.Bottom,L=(M==null?void 0:M.position)||ge.Top,{x:se,y:ce}=jn(C,J,X),{x:le,y:_e}=jn(S,M,L);return y.value.sourceX=se,y.value.sourceY=ce,y.value.targetX=le,y.value.targetY=_e,t.h("g",{ref:z,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${F.value===!1?"default":y.value.type||"default"}`,s.value,W.value,{updating:I.value,selected:y.value.selected,animated:y.value.animated,inactive:!x.value&&!w.value.edgeClick.hasListeners()}],tabIndex:O.value?0:void 0,"aria-label":y.value.ariaLabel===null?void 0:y.value.ariaLabel??`Edge from ${y.value.source} to ${y.value.target}`,"aria-describedby":O.value?`${Fd}-${n}`:void 0,"aria-roledescription":"edge",role:O.value?"group":"img",...y.value.domAttributes,onClick:U,onContextmenu:Z,onDblclick:ee,onMouseenter:ne,onMousemove:ae,onMouseleave:ue,onKeyDown:O.value?v:void 0},[P.value?null:t.h(F.value===!1?c.value.default:F.value,{id:e.id,sourceNode:C,targetNode:S,source:y.value.source,target:y.value.target,type:y.value.type,updatable:R.value,selected:y.value.selected,animated:y.value.animated,label:y.value.label,labelStyle:y.value.labelStyle,labelShowBg:y.value.labelShowBg,labelBgStyle:y.value.labelBgStyle,labelBgPadding:y.value.labelBgPadding,labelBgBorderRadius:y.value.labelBgBorderRadius,data:y.value.data,events:{...y.value.events,...k},style:G.value,markerStart:`url('#${To(y.value.markerStart,n)}')`,markerEnd:`url('#${To(y.value.markerEnd,n)}')`,sourcePosition:X,targetPosition:L,sourceX:se,sourceY:ce,targetX:le,targetY:_e,sourceHandleId:y.value.sourceHandle,targetHandleId:y.value.targetHandle,interactionWidth:y.value.interactionWidth,...T}),[R.value==="source"||R.value===!0?[t.h("g",{onMousedown:q,onMouseenter:D,onMouseout:Q},t.h($u,{position:X,centerX:se,centerY:ce,radius:i.value,type:"source","data-type":"source"}))]:null,R.value==="target"||R.value===!0?[t.h("g",{onMousedown:te,onMouseenter:D,onMouseout:Q},t.h($u,{position:L,centerX:le,centerY:_e,radius:i.value,type:"target","data-type":"target"}))]:null]])};function D(){I.value=!0}function Q(){I.value=!1}function ie(C,S){N.update({event:C,edge:y.value,connection:S})}function H(C){N.updateEnd({event:C,edge:y.value}),P.value=!1}function re(C,S){C.button===0&&(P.value=!0,Y.value=S?y.value.target:y.value.source,K.value=(S?y.value.targetHandle:y.value.sourceHandle)??null,A.value=S?"target":"source",N.updateStart({event:C,edge:y.value}),V(C))}function U(C){var S;const T={event:C,edge:y.value};x.value&&(l.value=!1,y.value.selected&&m.value?(d([y.value]),(S=z.value)==null||S.blur()):o([y.value])),N.click(T)}function Z(C){N.contextMenu({event:C,edge:y.value})}function ee(C){N.doubleClick({event:C,edge:y.value})}function ne(C){N.mouseEnter({event:C,edge:y.value})}function ae(C){N.mouseMove({event:C,edge:y.value})}function ue(C){N.mouseLeave({event:C,edge:y.value})}function q(C){re(C,!0)}function te(C){re(C,!1)}function v(C){var S;!h.value&&Ud.includes(C.key)&&x.value&&(C.key==="Escape"?((S=z.value)==null||S.blur(),d([f(e.id)])):o([f(e.id)]))}}}),lS=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:d,viewport:f,findNode:u}=Ie(),p=(e=t.inject(Yr))==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}),b=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),g=t.computed(()=>c.value.markerStart?`url(#${To(c.value.markerStart,n)})`:""),_=t.computed(()=>c.value.markerEnd?`url(#${To(c.value.markerEnd,n)})`:"");return()=>{var w,y,N;if(!m.value||!r.value)return null;const k=r.value.id,E=r.value.type,$=m.value.handleBounds;let I=($==null?void 0:$[E])??[];if(o.value===jt.Loose){const G=($==null?void 0:$[E==="source"?"target":"source"])??[];I=[...I,...G]}if(!I)return null;const P=(k?I.find(G=>G.id===k):I[0])??null,Y=(P==null?void 0:P.position)??ge.Top,{x:K,y:A}=jn(m.value,P,Y);let z=null;h.value&&(o.value===jt.Strict?z=((w=h.value.handleBounds[E==="source"?"target":"source"])==null?void 0:w.find(G=>{var F;return G.id===((F=i.value)==null?void 0:F.id)}))||null:z=((y=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:y.find(G=>{var F;return G.id===((F=i.value)==null?void 0:F.id)}))||null);const x=((N=i.value)==null?void 0:N.position)??(Y?qa[Y]:null);if(!Y||!x)return null;const R=l.value??c.value.type??un.Bezier;let O="";const W={sourceX:K,sourceY:A,sourcePosition:Y,targetX:b.value.x,targetY:b.value.y,targetPosition:x};return R===un.Bezier?[O]=xu(W):R===un.Step?[O]=Za({...W,borderRadius:0}):R===un.SmoothStep?[O]=Za(W):R===un.SimpleBezier?[O]=Iu(W):O=`M${K},${A} ${b.value.x},${b.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:K,sourceY:A,sourcePosition:Y,targetX:b.value.x,targetY:b.value.y,targetPosition:x,sourceNode:m.value,sourceHandle:P,targetNode:h.value,targetHandle:z,markerEnd:_.value,markerStart:g.value,connectionStatus:d.value}):t.h("path",{d:O,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":_.value,"marker-start":g.value})))}}}),sS=["id","markerWidth","markerHeight","markerUnits","orient"],cS={name:"MarkerType",compatConfig:{MODE:3}},dS=t.defineComponent({...cS,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(Fr).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(Fr).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,sS))}}),uS={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},fS={name:"MarkerDefinitions",compatConfig:{MODE:3}},pS=t.defineComponent({...fS,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Ie(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=To(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",uS,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(dS,{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))])]))}}),mS={name:"Edges",compatConfig:{MODE:3}},gS=t.defineComponent({...mS,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Ie();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(pS),(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(F1)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(aS),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(lS))],64))}}),hS=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:b,snapToGrid:g,snapGrid:_,nodeDragThreshold:w,nodesDraggable:y,elementsSelectable:N,nodesConnectable:k,nodesFocusable:E,hooks:$}=Ie(),I=t.ref(null);t.provide(_u,I),t.provide(yu,e.id);const P=t.inject(Yr),Y=t.getCurrentInstance(),K=ku(),{node:A,parentNode:z}=Eu(e.id),{emit:x,on:R}=av(A,l),O=t.toRef(()=>typeof A.draggable>"u"?y.value:A.draggable),W=t.toRef(()=>typeof A.selectable>"u"?N.value:A.selectable),G=t.toRef(()=>typeof A.connectable>"u"?k.value:A.connectable),F=t.toRef(()=>typeof A.focusable>"u"?E.value:A.focusable),V=t.computed(()=>W.value||O.value||$.value.nodeClick.hasListeners()||$.value.nodeDoubleClick.hasListeners()||$.value.nodeMouseEnter.hasListeners()||$.value.nodeMouseMove.hasListeners()||$.value.nodeMouseLeave.hasListeners()),D=t.toRef(()=>!!A.dimensions.width&&!!A.dimensions.height),Q=t.computed(()=>{const S=A.type||"default",T=P==null?void 0:P[`node-${S}`];if(T)return T;let B=A.template||u.value[S];if(typeof B=="string"&&Y){const J=Object.keys(Y.appContext.components);J&&J.includes(S)&&(B=t.resolveComponent(S,!1))}return B&&typeof B!="string"?B:(l.error(new Ge(De.NODE_TYPE_MISSING,B)),!1)}),ie=bu({id:e.id,el:I,disabled:()=>!O.value,selectable:W,dragHandle:()=>A.dragHandle,onStart(S){x.dragStart(S)},onDrag(S){x.drag(S)},onStop(S){x.dragStop(S)},onClick(S){v(S)}}),H=t.computed(()=>A.class instanceof Function?A.class(A):A.class),re=t.computed(()=>{const S=(A.style instanceof Function?A.style(A):A.style)||{},T=A.width instanceof Function?A.width(A):A.width,B=A.height instanceof Function?A.height(A):A.height;return!S.width&&T&&(S.width=typeof T=="string"?T:`${T}px`),!S.height&&B&&(S.height=typeof B=="string"?B:`${B}px`),S}),U=t.toRef(()=>Number(A.zIndex??re.value.zIndex??0));return f(S=>{(S.includes(e.id)||!S.length)&&ee()}),t.onMounted(()=>{t.watch(()=>A.hidden,(S=!1,T,B)=>{!S&&I.value&&(e.resizeObserver.observe(I.value),B(()=>{I.value&&e.resizeObserver.unobserve(I.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>A.type,()=>A.sourcePosition,()=>A.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:I.value,forceUpdate:!0}])})}),t.watch([()=>A.position.x,()=>A.position.y,()=>{var S;return(S=z.value)==null?void 0:S.computedPosition.x},()=>{var S;return(S=z.value)==null?void 0:S.computedPosition.y},()=>{var S;return(S=z.value)==null?void 0:S.computedPosition.z},U,()=>A.selected,()=>A.dimensions.height,()=>A.dimensions.width,()=>{var S;return(S=z.value)==null?void 0:S.dimensions.height},()=>{var S;return(S=z.value)==null?void 0:S.dimensions.width}],([S,T,B,J,oe,M])=>{const X={x:S,y:T,z:M+(m.value&&A.selected?1e3:0)};typeof B<"u"&&typeof J<"u"?A.computedPosition=B1({x:B,y:J,z:oe},X):A.computedPosition=X},{flush:"post",immediate:!0}),t.watch([()=>A.extent,p],([S,T],[B,J])=>{(S!==B||T!==J)&&Z()}),A.extent==="parent"||typeof A.extent=="object"&&"range"in A.extent&&A.extent.range==="parent"?ha(()=>D).toBe(!0).then(Z):Z(),()=>A.hidden?null:t.h("div",{ref:I,"data-id":A.id,class:["vue-flow__node",`vue-flow__node-${Q.value===!1?"default":A.type||"default"}`,{[o.value]:O.value,dragging:ie==null?void 0:ie.value,draggable:O.value,selected:A.selected,selectable:W.value,parent:A.isParent},H.value],style:{visibility:D.value?"visible":"hidden",zIndex:A.computedPosition.z??U.value,transform:`translate(${A.computedPosition.x}px,${A.computedPosition.y}px)`,pointerEvents:V.value?"all":"none",...re.value},tabIndex:F.value?0:void 0,role:F.value?"group":void 0,"aria-describedby":h.value?void 0:`${Ld}-${n}`,"aria-label":A.ariaLabel,"aria-roledescription":"node",...A.domAttributes,onMouseenter:ne,onMousemove:ae,onMouseleave:ue,onContextmenu:q,onClick:v,onDblclick:te,onKeydown:C},[t.h(Q.value===!1?u.value.default:Q.value,{id:A.id,type:A.type,data:A.data,events:{...A.events,...R},selected:A.selected,resizing:A.resizing,dragging:ie.value,connectable:G.value,position:A.computedPosition,dimensions:A.dimensions,isValidTargetPos:A.isValidTargetPos,isValidSourcePos:A.isValidSourcePos,parent:A.parentNode,parentNodeId:A.parentNode,zIndex:A.computedPosition.z??U.value,targetPosition:A.targetPosition,sourcePosition:A.sourcePosition,label:A.label,dragHandle:A.dragHandle,onUpdateNodeInternals:ee})]);function Z(){const S=A.computedPosition,{computedPosition:T,position:B}=Ka(A,g.value?zr(S,_.value):S,l.error,p.value,z.value);(A.computedPosition.x!==T.x||A.computedPosition.y!==T.y)&&(A.computedPosition={...A.computedPosition,...T}),(A.position.x!==B.x||A.position.y!==B.y)&&(A.position=B)}function ee(){I.value&&d([{id:e.id,nodeElement:I.value,forceUpdate:!0}])}function ne(S){ie!=null&&ie.value||x.mouseEnter({event:S,node:A})}function ae(S){ie!=null&&ie.value||x.mouseMove({event:S,node:A})}function ue(S){ie!=null&&ie.value||x.mouseLeave({event:S,node:A})}function q(S){return x.contextMenu({event:S,node:A})}function te(S){return x.doubleClick({event:S,node:A})}function v(S){W.value&&(!r.value||!O.value||w.value>0)&&za(A,a.value,c,s,i,!1,I.value),x.click({event:S,node:A})}function C(S){if(!(Ma(S)||h.value))if(Ud.includes(S.key)&&W.value){const T=S.key==="Escape";za(A,a.value,c,s,i,T,I.value)}else O.value&&A.selected&&Kn[S.key]&&(S.preventDefault(),b.value=`Moved selected node ${S.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~A.position.x}, y: ${~~A.position.y}`,K({x:Kn[S.key].x,y:Kn[S.key].y},S.shiftKey))}}});function yS(e={includeHiddenNodes:!1}){const{nodes:n}=Ie();return t.computed(()=>{if(n.value.length===0)return!1;for(const o of n.value)if((e.includeHiddenNodes||!o.hidden)&&((o==null?void 0:o.handleBounds)===void 0||o.dimensions.width===0||o.dimensions.height===0))return!1;return!0})}const _S={class:"vue-flow__nodes vue-flow__container"},bS={name:"Nodes",compatConfig:{MODE:3}},wS=t.defineComponent({...bS,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Ie(),i=yS(),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",_S,[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(hS),{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 ES(){const{emits:e}=Ie();t.onMounted(()=>{if(uu()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new Ge(De.MISSING_STYLES))}})}const kS=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),CS={name:"VueFlow",compatConfig:{MODE:3}},Bu=t.defineComponent({...CS,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=ya(r,"modelValue",o),l=ya(r,"nodes",o),s=ya(r,"edges",o),c=Ie(r),d=dv({modelValue:a,nodes:l,edges:s},r,c);return fv(o,c.hooks),oS(),ES(),t.provide(Yr,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(Zv,null,{default:t.withCtx(()=>[t.createVNode(gS),kS,t.createVNode(wS),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(nS)],512))}}),NS={name:"Panel",compatConfig:{MODE:3}},vS=t.defineComponent({...NS,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Ie(),r=t.computed(()=>`${n.position}`.split("-"));return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vue-flow__panel",r.value]),style:t.normalizeStyle({pointerEvents:t.unref(o)?"none":"all"})},[t.renderSlot(i.$slots,"default")],6))}});var Lt=(e=>(e.Lines="lines",e.Dots="dots",e))(Lt||{});const Vu=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]}`})},Ru=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};Lt.Lines+"",Lt.Dots+"";const SS={[Lt.Dots]:"#81818a",[Lt.Lines]:"#eee"},xS=["id","x","y","width","height","patternTransform"],AS={key:2,height:"100",width:"100"},IS=["fill"],TS=["x","y","fill"],PS={name:"Background",compatConfig:{MODE:3}},OS=t.defineComponent({...PS,props:{id:{},variant:{default:()=>Lt.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:n,viewport:o}=Ie(),r=t.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],d=[s*l||1,c*l||1],f=e.size*l,[u,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[u*l||1+d[0]/2,p*l||1+d[1]/2];return{scaledGap:d,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||SS[e.variant||Lt.Dots]);return(l,s)=>(t.openBlock(),t.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:t.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[t.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[t.createElementVNode("pattern",{id:i.value,x:t.unref(o).x%r.value.scaledGap[0],y:t.unref(o).y%r.value.scaledGap[1],width:r.value.scaledGap[0],height:r.value.scaledGap[1],patternTransform:`translate(-${r.value.offset[0]},-${r.value.offset[1]})`,patternUnits:"userSpaceOnUse"},[t.renderSlot(l.$slots,"pattern",{},()=>[l.variant===t.unref(Lt).Lines?(t.openBlock(),t.createBlock(t.unref(Vu),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(Lt).Dots?(t.openBlock(),t.createBlock(t.unref(Ru),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",AS,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,IS)])):t.createCommentVNode("",!0)])],8,xS)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,TS),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),$S={name:"ControlButton",compatConfig:{MODE:3}},BS=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},VS={class:"vue-flow__controls-button"};function RS(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",VS,[t.renderSlot(e.$slots,"default")])}const ti=BS($S,[["render",RS]]),DS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},MS=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function LS(e,n){return t.openBlock(),t.createElementBlock("svg",DS,MS)}const FS={render:LS},US={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},KS=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function jS(e,n){return t.openBlock(),t.createElementBlock("svg",US,KS)}const GS={render:jS},qS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},zS=[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 HS(e,n){return t.openBlock(),t.createElementBlock("svg",qS,zS)}const YS={render:HS},WS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},XS=[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 ZS(e,n){return t.openBlock(),t.createElementBlock("svg",WS,XS)}const JS={render:ZS},QS={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},ex=[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 tx(e,n){return t.openBlock(),t.createElementBlock("svg",QS,ex)}const nx={render:tx},ox={name:"Controls",compatConfig:{MODE:3}},rx=t.defineComponent({...ox,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>Dd.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:d,minZoom:f,maxZoom:u}=Ie(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),h=t.toRef(()=>d.value.zoom>=u.value);function b(){l(),n("zoomIn")}function g(){s(),n("zoomOut")}function _(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(y,N)=>(t.openBlock(),t.createBlock(t.unref(vS),{class:"vue-flow__controls",position:y.position},{default:t.withCtx(()=>[t.renderSlot(y.$slots,"top"),y.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(y.$slots,"control-zoom-in",{},()=>[t.createVNode(ti,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:b},{default:t.withCtx(()=>[t.renderSlot(y.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(FS))))])]),_:3},8,["disabled"])]),t.renderSlot(y.$slots,"control-zoom-out",{},()=>[t.createVNode(ti,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(y.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(GS))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),y.showFitView?t.renderSlot(y.$slots,"control-fit-view",{key:1},()=>[t.createVNode(ti,{class:"vue-flow__controls-fitview",onClick:_},{default:t.withCtx(()=>[t.renderSlot(y.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(YS))))])]),_:3})]):t.createCommentVNode("",!0),y.showInteractive?t.renderSlot(y.$slots,"control-interactive",{key:2},()=>[y.showInteractive?(t.openBlock(),t.createBlock(ti,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(y.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(nx))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(y.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(JS))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(y.$slots,"default")]),_:3},8,["position"]))}});function ix(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ax="\0",gn="\0",Du="";let lx=class{constructor(n){Ke(this,"_isDirected",!0);Ke(this,"_isMultigraph",!1);Ke(this,"_isCompound",!1);Ke(this,"_label");Ke(this,"_defaultNodeLabelFn",()=>{});Ke(this,"_defaultEdgeLabelFn",()=>{});Ke(this,"_nodes",{});Ke(this,"_in",{});Ke(this,"_preds",{});Ke(this,"_out",{});Ke(this,"_sucs",{});Ke(this,"_edgeObjs",{});Ke(this,"_edgeLabels",{});Ke(this,"_nodeCount",0);Ke(this,"_edgeCount",0);Ke(this,"_parent");Ke(this,"_children");n&&(this._isDirected=Object.hasOwn(n,"directed")?n.directed:!0,this._isMultigraph=Object.hasOwn(n,"multigraph")?n.multigraph:!1,this._isCompound=Object.hasOwn(n,"compound")?n.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[gn]={})}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]=gn,this._children[n]={},this._children[gn][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=gn;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!==gn)return o}}children(n=gn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===gn)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=Po(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=sx(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Mu(this._preds[o],n),Mu(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?Qa(this._isDirected,arguments[0]):Po(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?Qa(this._isDirected,arguments[0]):Po(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?Qa(this._isDirected,arguments[0]):Po(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],Lu(this._preds[o],n),Lu(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 Mu(e,n){e[n]?e[n]++:e[n]=1}function Lu(e,n){--e[n]||delete e[n]}function Po(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Du+a+Du+(r===void 0?ax:r)}function sx(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 Qa(e,n){return Po(e,n.v,n.w,n.name)}var el=lx,cx="2.2.4",dx={Graph:el,version:cx},ux=el,fx={write:px,read:hx};function px(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:mx(e),edges:gx(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function mx(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 gx(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 hx(e){var n=new ux(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 yx=_x;function _x(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 Fu=class{constructor(){Ke(this,"_arr",[]);Ke(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var r=this._keyIndices;if(n=String(n),!Object.hasOwn(r,n)){var i=this._arr,a=i.length;return r[n]=a,i.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var r=this._keyIndices[n];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(n){var o=this._arr,r=2*n,i=r+1,a=n;r<o.length&&(a=o[r].priority<o[a].priority?r:a,i<o.length&&(a=o[i].priority<o[a].priority?i:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,r=o[n].priority,i;n!==0&&(i=n>>1,!(o[i].priority<r));)this._swap(n,i),n=i}_swap(n,o){var r=this._arr,i=this._keyIndices,a=r[n],l=r[o];r[n]=l,r[o]=a,i[l.key]=n,i[a.key]=o}},bx=Fu,Uu=Ex,wx=()=>1;function Ex(e,n,o,r){return kx(e,String(n),o||wx,r||function(i){return e.outEdges(i)})}function kx(e,n,o,r){var i={},a=new bx,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 Cx=Uu,Nx=vx;function vx(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=Cx(e,i,n,o),r},{})}var Ku=Sx;function Sx(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 xx=Ku,Ax=Ix;function Ix(e){return xx(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var Tx=Ox,Px=()=>1;function Ox(e,n,o){return $x(e,n||Px,o||function(r){return e.outEdges(r)})}function $x(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 ju(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new tl;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 tl;return r}class tl extends Error{constructor(){super(...arguments)}}var Gu=ju;ju.CycleException=tl;var qu=Gu,Bx=Vx;function Vx(e){try{qu(e)}catch(n){if(n instanceof qu.CycleException)return!1;throw n}return!0}var zu=Rx;function Rx(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?Dx:Mx,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 Dx(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]),Hu(n(a[0]),l=>i.push([l,!1])))}}function Mx(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),Hu(n(a),l=>i.push(l)))}}function Hu(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var Lx=zu,Fx=Ux;function Ux(e,n){return Lx(e,n,"post")}var Kx=zu,jx=Gx;function Gx(e,n){return Kx(e,n,"pre")}var qx=el,zx=Fu,Hx=Yx;function Yx(e,n){var o=new qx,r={},i=new zx,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 Wx={components:yx,dijkstra:Uu,dijkstraAll:Nx,findCycles:Ax,floydWarshall:Tx,isAcyclic:Bx,postorder:Fx,preorder:jx,prim:Hx,tarjan:Ku,topsort:Gu},Yu=dx,_t={Graph:Yu.Graph,json:fx,alg:Wx,version:Yu.version};let Xx=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return Wu(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&Wu(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,Zx)),r=r._prev;return"["+n.join(", ")+"]"}};function Wu(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function Zx(e,n){if(e!=="_next"&&e!=="_prev")return n}var Jx=Xx;let Qx=_t.Graph,eA=Jx;var tA=oA;let nA=()=>1;function oA(e,n){if(e.nodeCount()<=1)return[];let o=iA(e,n||nA);return rA(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function rA(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)nl(e,n,o,l);for(;l=i.dequeue();)nl(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(nl(e,n,o,l,!0));break}}}return r}function nl(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,ol(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,ol(n,o,d)}),e.removeNode(r.v),a}function iA(e,n){let o=new Qx,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=aA(i+r+3).map(()=>new eA),l=r+1;return o.nodes().forEach(s=>{ol(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function ol(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 aA(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let Xu=_t.Graph;var Le={addBorderNode:gA,addDummyNode:Zu,applyWithChunking:ni,asNonCompoundGraph:sA,buildLayerMatrix:fA,intersectRect:uA,mapValues:kA,maxRank:Qu,normalizeRanks:pA,notime:bA,partition:yA,pick:EA,predecessorWeights:dA,range:tf,removeEmptyRanks:mA,simplify:lA,successorWeights:cA,time:_A,uniqueId:ef,zipObject:rl};function Zu(e,n,o,r){for(var i=r;e.hasNode(i);)i=ef(r);return o.dummy=n,e.setNode(i,o),i}function lA(e){let n=new Xu().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 sA(e){let n=new Xu({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 cA(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 rl(e.nodes(),n)}function dA(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 rl(e.nodes(),n)}function uA(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 fA(e){let n=tf(Qu(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 pA(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=ni(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function mA(e){let n=e.nodes().map(l=>e.node(l).rank),o=ni(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 gA(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),Zu(e,"border",i,n)}function hA(e,n=Ju){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const Ju=65535;function ni(e,n){if(n.length>Ju){const o=hA(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function Qu(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return ni(Math.max,o)}function yA(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function _A(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function bA(e,n){return n()}let wA=0;function ef(e){var n=++wA;return e+(""+n)}function tf(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 EA(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function kA(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 rl(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let CA=tA,NA=Le.uniqueId;var vA={run:SA,undo:AA};function SA(e){(e.graph().acyclicer==="greedy"?CA(e,o(e)):xA(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,NA("rev"))});function o(r){return i=>r.edge(i).weight}}function xA(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 AA(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 IA=Le;var TA={run:PA,undo:$A};function PA(e){e.graph().dummyChains=[],e.edges().forEach(n=>OA(e,n))}function OA(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=IA.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 $A(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:BA}=Le;var oi={longestPath:VA,slack:RA};function VA(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=BA(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function RA(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var DA=_t.Graph,ri=oi.slack,nf=MA;function MA(e){var n=new DA({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;LA(n,e)<r;)i=FA(n,e),a=n.hasNode(i.v)?ri(e,i):-ri(e,i),UA(n,e,a);return n}function LA(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!ri(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function FA(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=ri(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function UA(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var KA=nf,of=oi.slack,jA=oi.longestPath,GA=_t.alg.preorder,qA=_t.alg.postorder,zA=Le.simplify,HA=hn;hn.initLowLimValues=al,hn.initCutValues=il,hn.calcCutValue=rf,hn.leaveEdge=lf,hn.enterEdge=sf,hn.exchangeEdges=cf;function hn(e){e=zA(e),jA(e);var n=KA(e);al(n),il(n,e);for(var o,r;o=lf(n);)r=sf(n,e,o),cf(n,e,o,r)}function il(e,n){var o=qA(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>YA(e,n,r))}function YA(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=rf(e,n,o)}function rf(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,XA(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function al(e,n){arguments.length<2&&(n=e.nodes()[0]),af(e,{},1,n)}function af(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=af(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function lf(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function sf(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===df(e,e.node(f.v),s)&&c!==df(e,e.node(f.w),s));return d.reduce((f,u)=>of(n,u)<of(n,f)?u:f)}function cf(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),al(e),il(e,n),WA(e,n)}function WA(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=GA(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 XA(e,n,o){return e.hasEdge(n,o)}function df(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var ZA=oi,uf=ZA.longestPath,JA=nf,QA=HA,eI=tI;function tI(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":ff(e);break;case"tight-tree":oI(e);break;case"longest-path":nI(e);break;case"none":break;default:ff(e)}}var nI=uf;function oI(e){uf(e),JA(e)}function ff(e){QA(e)}var rI=iI;function iI(e){let n=lI(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=aI(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 aI(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 lI(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 ii=Le;var sI={run:cI,cleanup:fI};function cI(e){let n=ii.addDummyNode(e,"root",{},"_root"),o=dI(e),r=Object.values(o),i=ii.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=uI(e)+1;e.children().forEach(s=>pf(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function pf(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=ii.addBorderNode(e,"_bt"),d=ii.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{pf(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,b=p.borderTop?r:2*r,g=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:b,minlen:g,nestingEdge:!0}),e.setEdge(h,d,{weight:b,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function dI(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 uI(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function fI(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 pI=Le;var mI=gI;function gI(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)mf(e,"borderLeft","_bl",o,i,a),mf(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function mf(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=pI.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var hI={adjust:yI,undo:_I};function yI(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&gf(e)}function _I(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&bI(e),(n==="lr"||n==="rl")&&(wI(e),gf(e))}function gf(e){e.nodes().forEach(n=>hf(e.node(n))),e.edges().forEach(n=>hf(e.edge(n)))}function hf(e){let n=e.width;e.width=e.height,e.height=n}function bI(e){e.nodes().forEach(n=>ll(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(ll),Object.hasOwn(o,"y")&&ll(o)})}function ll(e){e.y=-e.y}function wI(e){e.nodes().forEach(n=>sl(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(sl),Object.hasOwn(o,"x")&&sl(o)})}function sl(e){let n=e.x;e.x=e.y,e.y=n}let yf=Le;var EI=kI;function kI(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=yf.applyWithChunking(Math.max,r),a=yf.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 CI=Le.zipObject;var NI=vI;function vI(e,n){let o=0;for(let r=1;r<n.length;++r)o+=SI(e,n[r-1],n[r]);return o}function SI(e,n,o){let r=CI(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 xI=AI;function AI(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 II=Le;var TI=PI;function PI(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 OI(r)}function OI(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&$I(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();n.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return n.filter(i=>!i.merged).map(i=>II.pick(i,["vs","i","barycenter","weight"]))}function $I(e,n){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),n.weight&&(o+=n.barycenter*n.weight,r+=n.weight),e.vs=n.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(n.i,e.i),n.merged=!0}let BI=Le;var VI=RI;function RI(e,n){let o=BI.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(DI(!!n)),c=_f(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=_f(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function _f(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 DI(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let MI=xI,LI=TI,FI=VI;var UI=bf;function bf(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=MI(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=bf(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&jI(p,m)}});let f=LI(d,o);KI(f,c);let u=FI(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 KI(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function jI(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 GI=_t.Graph,qI=Le;var zI=HI;function HI(e,n,o){let r=YI(e),i=new GI({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 YI(e){for(var n;e.hasNode(n=qI.uniqueId("_root")););return n}var WI=XI;function XI(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 ZI=EI,JI=NI,QI=UI,eT=zI,tT=WI,nT=_t.Graph,ai=Le;var oT=wf;function wf(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,wf);return}let o=ai.maxRank(e),r=Ef(e,ai.range(1,o+1),"inEdges"),i=Ef(e,ai.range(o-1,-1,-1),"outEdges"),a=ZI(e);if(kf(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){rT(c%2?r:i,c%4>=2),a=ai.buildLayerMatrix(e);let f=JI(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}kf(e,s)}function Ef(e,n,o){return n.map(function(r){return eT(e,r,o)})}function rT(e,n){let o=new nT;e.forEach(function(r){let i=r.graph().root,a=QI(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),tT(r,o,a.vs)})}function kf(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let iT=_t.Graph,Ft=Le;var aT={positionX:yT};function lT(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=cT(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(b=>{let g=e.node(b),_=g.order;(_<l||m<_)&&!(g.dummy&&e.node(h).dummy)&&Cf(o,b,h)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function sT(e,n){let o={};function r(a,l,s,c,d){let f;Ft.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)&&Cf(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 cT(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function Cf(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 dT(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function uT(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]&&!dT(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function fT(e,n,o,r,i){let a={},l=pT(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),b={};for(;h;)b[h]?u(h):(b[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,b)=>Math.min(h,a[b.w]-l.edge(b)),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 pT(e,n,o,r){let i=new iT,a=e.graph(),l=_T(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 mT(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=bT(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 gT(e,n){let o=Object.values(n),r=Ft.applyWithChunking(Math.min,o),i=Ft.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-Ft.applyWithChunking(Math.min,d);l!=="l"&&(f=i-Ft.applyWithChunking(Math.max,d)),f&&(e[s]=Ft.mapValues(c,u=>u+f))})})}function hT(e,n){return Ft.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 yT(e){let n=Ft.buildLayerMatrix(e),o=Object.assign(lT(e,n),sT(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=uT(e,i,o,c),f=fT(e,i,d.root,d.align,s==="r");s==="r"&&(f=Ft.mapValues(f,u=>-u)),r[l+s]=f})});let a=mT(e,r);return gT(r,a),hT(r,e.graph().align)}function _T(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 bT(e,n){return e.node(n).width}let Nf=Le,wT=aT.positionX;var ET=kT;function kT(e){e=Nf.asNonCompoundGraph(e),CT(e),Object.entries(wT(e)).forEach(([n,o])=>e.node(n).x=o)}function CT(e){let n=Nf.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 vf=vA,Sf=TA,NT=eI,vT=Le.normalizeRanks,ST=rI,xT=Le.removeEmptyRanks,xf=sI,AT=mI,Af=hI,IT=oT,TT=ET,ut=Le,PT=_t.Graph;var OT=$T;function $T(e,n){let o=n&&n.debugTiming?ut.time:ut.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>jT(e));o(" runLayout",()=>BT(r,o,n)),o(" updateInputGraph",()=>VT(e,r))})}function BT(e,n,o){n(" makeSpaceForEdgeLabels",()=>GT(e)),n(" removeSelfEdges",()=>QT(e)),n(" acyclic",()=>vf.run(e)),n(" nestingGraph.run",()=>xf.run(e)),n(" rank",()=>NT(ut.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>qT(e)),n(" removeEmptyRanks",()=>xT(e)),n(" nestingGraph.cleanup",()=>xf.cleanup(e)),n(" normalizeRanks",()=>vT(e)),n(" assignRankMinMax",()=>zT(e)),n(" removeEdgeLabelProxies",()=>HT(e)),n(" normalize.run",()=>Sf.run(e)),n(" parentDummyChains",()=>ST(e)),n(" addBorderSegments",()=>AT(e)),n(" order",()=>IT(e,o)),n(" insertSelfEdges",()=>eP(e)),n(" adjustCoordinateSystem",()=>Af.adjust(e)),n(" position",()=>TT(e)),n(" positionSelfEdges",()=>tP(e)),n(" removeBorderNodes",()=>JT(e)),n(" normalize.undo",()=>Sf.undo(e)),n(" fixupEdgeLabelCoords",()=>XT(e)),n(" undoCoordinateSystem",()=>Af.undo(e)),n(" translateGraph",()=>YT(e)),n(" assignNodeIntersects",()=>WT(e)),n(" reversePoints",()=>ZT(e)),n(" acyclic.undo",()=>vf.undo(e))}function VT(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 RT=["nodesep","edgesep","ranksep","marginx","marginy"],DT={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},MT=["acyclicer","ranker","rankdir","align"],LT=["width","height","rank"],If={width:0,height:0},FT=["minlen","weight","width","height","labeloffset"],UT={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},KT=["labelpos"];function jT(e){let n=new PT({multigraph:!0,compound:!0}),o=dl(e.graph());return n.setGraph(Object.assign({},DT,cl(o,RT),ut.pick(o,MT))),e.nodes().forEach(r=>{let i=dl(e.node(r));const a=cl(i,LT);Object.keys(If).forEach(l=>{a[l]===void 0&&(a[l]=If[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=dl(e.edge(r));n.setEdge(r,Object.assign({},UT,cl(i,FT),ut.pick(i,KT)))}),n}function GT(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 qT(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.width&&o.height){let r=e.node(n.v),a={rank:(e.node(n.w).rank-r.rank)/2+r.rank,e:n};ut.addDummyNode(e,"edge-proxy",a,"_ep")}})}function zT(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 HT(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 YT(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 WT(e){e.edges().forEach(n=>{let o=e.edge(n),r=e.node(n.v),i=e.node(n.w),a,l;o.points?(a=o.points[0],l=o.points[o.points.length-1]):(o.points=[],a=i,l=r),o.points.unshift(ut.intersectRect(r,a)),o.points.push(ut.intersectRect(i,l))})}function XT(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 ZT(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function JT(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 QT(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 eP(e){var n=ut.buildLayerMatrix(e);n.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{ut.addDummyNode(e,"selfedge",{width:s.label.width,height:s.label.height,rank:l.rank,order:a+ ++r,e:s.e,label:s.label},"_se")}),delete l.selfEdges})})}function tP(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 cl(e,n){return ut.mapValues(ut.pick(e,n),Number)}function dl(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let nP=Le,oP=_t.Graph;var rP={debugOrdering:iP};function iP(e){let n=nP.buildLayerMatrix(e),o=new oP({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 aP="1.1.5",lP={graphlib:_t,layout:OT,debug:rP,util:{time:Le.time,notime:Le.notime},version:aP};const Tf=ix(lP),li={padding:80,nodeGap:40,edgeGap:80,rankGap:80},Pf=Symbol("confirm-modal");function sP(e){t.provide(Pf,e)}function Of(){const e=t.inject(Pf);if(!e)throw new Error("Confirm modal not provided");return e}function si(e,n,o){const r=n?Kt(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function Oo(e,n){const o=n(e.source),r=n(e.target);return[si(o,e.sourceField,"output"),si(r,e.targetField,"input")]}function ul(e,n,o,r,i){const a=i(e),l=i(o);return[si(a,n,"output"),si(l,r,"input")]}function cP(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(lc,e);return o=>n(o)}const $f=e=>{const n=e.match(/^(input|output)s@(.*)$/);if(n)return{io:n[1],field:n[2]}};function dP(e,n){const o=Ie(n),r=ot(),i=Of(),a=cP(),{i18n:{t:l}}=ve(),{findNode:s,fitView:c,onNodeClick:d,onNodeDragStop:f,onEdgeClick:u,onConnect:p,onNodesChange:m,onEdgesChange:h,deleteKeyCode:b}=o;b.value=["Delete","Backspace"];const{state:g,commit:_,moveNode:w,selectNode:y,removeNode:N,getNodeById:k,connectEdge:E,disconnectEdge:$,getInEdgesByNodeId:I,commit:P,undo:Y}=r;function K(R,O){const W=k(R.source),G=k(R.target);return!!(W&&G&&W.phase===O&&G.phase===O)}const A=t.computed(()=>g.value.nodes.filter(R=>R.phase===e).map(R=>({id:R.id,type:"flow",position:R.position,data:R,deletable:!$c(R)}))),z=t.computed(()=>g.value.edges.filter(R=>K(R,e)).map(R=>{const O=k(R.source),W=k(R.target);if(O){if(!W)throw new Error(`Missing target node "${R.target}" for edge "${R.id}" in phase "${e}"`)}else throw new Error(`Missing source node "${R.source}" for edge "${R.id}" in phase "${e}"`);return{id:R.id,source:R.source,target:R.target,sourceHandle:R.sourceField?`outputs@${R.sourceField}`:"output",targetHandle:R.targetField?`inputs@${R.targetField}`:"input",markerEnd:Fr.ArrowClosed,data:R}}));d(({node:R})=>{console.debug("[useFlow] onNodeClick",t.toRaw(R))}),u(({edge:R})=>{console.debug("[useFlow] onEdgeClick",t.toRaw(R))}),p(async({source:R,sourceHandle:O,target:W,targetHandle:G})=>{if(console.debug("[useFlow] onConnect",{source:R,sourceHandle:O,target:W,targetHandle:G}),!O||!G)return;const F=$f(O),V=$f(G);if((F==null?void 0:F.io)==="input"||(V==null?void 0:V.io)==="output")return;const D=I(W);let Q=!1,ie=!1;const H=[],re=[],U=(V==null?void 0:V.io)==="input"?D.filter(ne=>!ne.targetField):D.filter(ne=>!!ne.targetField);U.length>0&&(Q=!0,U.forEach(ne=>{re.push(Oo(ne,k)),$(ne.id,!1)}));const Z=(V==null?void 0:V.io)==="input"?D.filter(ne=>ne.targetField===V.field):D.filter(ne=>!ne.targetField);if(Z.length>0){if(Z.some(ae=>ae.source===R&&ae.target===W&&ae.targetField===(V==null?void 0:V.field)&&ae.sourceField===(F==null?void 0:F.field)))return;ie=!0,Z.forEach(ae=>{re.push(Oo(ae,k)),$(ae.id,!1)})}const ee=E({source:R,sourceField:F==null?void 0:F.field,target:W,targetField:V==null?void 0:V.field},!1);H.push(ul(R,F==null?void 0:F.field,W,V==null?void 0:V.field,k)),P(),ee?(Q||ie)&&(await i(l(Q?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),H,re)||Y()):(Y(),a({message:l("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"}))}),m(R=>{R.filter(O=>O.type==="select").sort((O,W)=>O.selected===W.selected?0:O.selected?1:-1).forEach(O=>{y(O.selected?O.id:void 0)}),R.forEach(O=>{O.type==="remove"&&N(O.id,!0)})}),f(({node:R})=>{R&&w(R.id,R.position)}),h(R=>{R.forEach(O=>{O.type==="remove"&&$(O.id,!0)})});function x(R){const{boundingRect:O,padding:W=li.padding,nodeGap:G=li.nodeGap,edgeGap:F=li.edgeGap,rankGap:V=li.rankGap}=R;let D,Q;const ie=[],H=ee=>{switch(ee.data.name){case"request":{if(e!=="request")throw new Error(`Unexpected request node in ${e} phase`);if(D)throw new Error("Duplicated request node in request phase");return D=ee,!0}case"service_request":{if(e!=="request")throw new Error(`Unexpected service_request node in ${e} phase`);if(Q)throw new Error("Duplicated service_request node in request phase");return Q=ee,!0}case"service_response":{if(e!=="response")throw new Error(`Unexpected service_response node in ${e} phase`);if(Q)throw new Error("Duplicated service_response node in response phase");return Q=ee,!0}case"response":{if(e!=="response")throw new Error(`Unexpected response node in ${e} phase`);if(D)throw new Error("Duplicated response node in response phase");return D=ee,!0}default:return ie.push(ee),!1}},re=new Tf.graphlib.Graph({multigraph:!0});re.setGraph({rankdir:e==="request"?"LR":"RL",nodesep:G,edgesep:F,ranksep:V});for(const ee of A.value){if(H(ee))continue;const ne=s(ee.id);if(!ne)throw new Error(`Node ${ee.id} is missing from the graph in ${e} phase`);re.setNode(ee.id,{width:ne.dimensions.width,height:ne.dimensions.height})}if(!D||!Q)throw new Error(`One or more implicit nodes are missing from ${e} phase`);const U=s(D.id),Z=s(Q.id);if(!U||!Z)throw new Error(`One or more implicit nodes are missing from the graph in ${e} phase`);if(ie.length===0){const ee=O.height/2;w(D.data.id,{x:W,y:ee-U.dimensions.height/2},!1),w(Q.data.id,{x:O.width-W-Z.dimensions.width,y:ee-Z.dimensions.height/2},!1)}else{const ee=new Set([D.id,Q.id]);for(const C of z.value)!ee.has(C.source)&&!ee.has(C.target)&&re.setEdge(C.source,C.target,{points:[]});Tf.layout(re);const ne={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY},ae=C=>{ne.x1=Math.min(ne.x1,C.x),ne.y1=Math.min(ne.y1,C.y),ne.x2=Math.max(ne.x2,C.x+C.width),ne.y2=Math.max(ne.y2,C.y+C.height)},ue=C=>({x:C.x-C.width/2,y:C.y-C.height/2,width:C.width,height:C.height});for(const C of ie){const S=re.node(C.id),T=ue(S);ae(T),w(C.data.id,{x:T.x,y:T.y},!1)}const q=s(D.id),te=s(Q.id);if(!q||!te)throw new Error(`One or more implicit nodes are missing from the graph in ${e} phase`);const v=ne.y1+(ne.y2-ne.y1)/2;w(D.data.id,{x:ne.x1-(q.dimensions.width+G),y:v-q.dimensions.height/2},!1),w(Q.data.id,{x:ne.x2+G,y:v-te.dimensions.height/2},!1)}_(),t.nextTick(()=>{c()})}return{vueFlowStore:o,editorStore:r,nodes:A,edges:z,autoLayout:x}}const ci=we(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ge.Left},size:{default:()=>Number.parseFloat(Vw)},type:{}},setup(e){t.useCssVars(o=>({"753622c4":o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[o.type,o.position===t.unref(ge).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Gn="{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}},di=Object.keys(yn).filter(e=>e.includes(Gn)).map(e=>e.replace(Gn,""));function fl(e){if(!e||!Bo(e))return;const n=di.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(Gn,"")}function $o(e){if(!e)return null;const n=di.find(o=>e.startsWith(o));return n||e}function Bo(e){return e?di.some(n=>e.startsWith(n)):!1}function Bf(e){return e?Bo(e)?$o(e)+Gn:e:null}function pl(e){var o;if(!e)return!1;const n=Bf(e);return n?((o=yn[n])==null?void 0:o.readable)??!1:!1}function ml(e){var o;if(!e)return!1;const n=Bf(e);return n?((o=yn[n])==null?void 0:o.writable)??!1:!1}const Vf=t.defineComponent({__name:"NodeBadge",props:{type:{},size:{}},setup(e){const n=t.computed(()=>{var i;if(!Bt(e.type))return((i=mr[e.type])==null?void 0:i.icon)??void 0}),o=t.computed(()=>tE(e.type)),r=t.computed(()=>{switch(e.type){case"call":return"warning";case"jq":return"decorative";case"exit":return"danger";case"property":return"success";case"static":return"info";default:return"neutral"}});return(i,a)=>{const l=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(l,{appearance:r.value,size:i.size},{icon:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value)))]),default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:1},8,["appearance","size"])}}}),uP={class:"body"},fP={class:"info-line"},pP={class:"name-and-error"},mP={class:"name"},gP={class:"input-handles"},hP={class:"handle"},yP={class:"handle-label-wrapper"},_P={class:"handle-label-wrapper"},bP={class:"handle-label text"},wP={class:"output-handles"},EP={class:"handle"},kP={class:"handle-label-wrapper"},CP={class:"handle-label-wrapper"},NP={class:"handle-label"},Rf=we(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean}},setup(e){const{t:n}=Re.createI18n("en-us",je),{getInEdgesByNodeId:o,getOutEdgesByNodeId:r,toggleExpanded:i}=ot(),a=t.computed(()=>ua(e.data.type)),l=t.computed(()=>o(e.data.id).every(y=>y.targetField===void 0)),s=t.computed(()=>r(e.data.id).every(y=>y.sourceField===void 0)),c=t.computed(()=>e.data.expanded.input??!1),d=t.computed(()=>e.data.expanded.output??!1),f=t.computed(()=>{var y,N;if(e.data.type==="property"){const k=(y=e.data.config)==null?void 0:y.property;return ml(k)}return(N=a.value.io)==null?void 0:N.input}),u=t.computed(()=>{var y,N;if(e.data.type==="property"){const k=(y=e.data.config)==null?void 0:y.property;return pl(k)}return(N=a.value.io)==null?void 0:N.output}),p=t.computed(()=>$c(e.data)),m=t.computed(()=>e.data.phase==="response"),h=t.computed(()=>e.data.phase==="request"?ge.Left:ge.Right),b=t.computed(()=>e.data.phase==="request"?ge.Right:ge.Left),g=t.computed(()=>p.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),_=t.computed(()=>p.value?Iw:Tw);function w(y){y==="input"&&!l.value||y==="output"&&!s.value||i(e.data.id,y)}return t.watch(l,y=>{y||i(e.data.id,"input",!0,!1)},{immediate:!0}),t.watch(s,y=>{y||i(e.data.id,"output",!0,!1)},{immediate:!0}),(y,N)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flow-node",{reversed:m.value,implicit:p.value}])},[t.createElementVNode("div",uP,[t.createElementVNode("div",fP,[t.createElementVNode("div",pP,[y.error?(t.openBlock(),t.createBlock(t.unref(Ee.WarningIcon),{key:0,class:"error-icon",color:t.unref(xc),size:16},null,8,["color"])):t.createCommentVNode("",!0),t.createElementVNode("div",mP,t.toDisplayString(g.value),1)]),p.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(Vf,{key:0,size:"small",type:y.data.type},null,8,["type"]))]),t.renderSlot(y.$slots,"default",{},void 0,!0)]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:m.value}])},[t.createElementVNode("div",gP,[f.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",hP,[t.createVNode(t.unref(Yt),{id:"input",position:h.value,type:"target"},null,8,["position"]),t.createElementVNode("div",yP,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label",{"has-fields":y.data.fields.input.length>0,collapsible:l.value}])},[N[2]||(N[2]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),y.data.fields.input.length>0?(t.openBlock(),t.createElementBlock("div",{key:0,class:"icon",onClick:N[0]||(N[0]=t.withModifiers(k=>w("input"),["stop"]))},[c.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldMoreIcon),{key:0,size:t.unref(fo)},null,8,["size"])),c.value?(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldLessIcon),{key:1,color:l.value?void 0:t.unref(Ac),size:t.unref(fo)},null,8,["color","size"])):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],2),c.value?(t.openBlock(),t.createBlock(ci,{key:0,color:_.value,position:h.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),c.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(y.data.fields.input,(k,E)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${k.id}`,class:"handle indented"},[t.createVNode(t.unref(Yt),{id:`inputs@${k.id}`,position:h.value,type:"target"},null,8,["id","position"]),t.createElementVNode("div",_P,[t.createElementVNode("div",bP,t.toDisplayString(k.name),1),t.createVNode(ci,{color:_.value,position:h.value,type:E<y.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)]),t.createElementVNode("div",wP,[u.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createElementVNode("div",EP,[t.createElementVNode("div",kP,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label text",{"has-fields":y.data.fields.output.length>0,collapsible:s.value}])},[N[3]||(N[3]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),y.data.fields.output.length>0?(t.openBlock(),t.createElementBlock("div",{key:0,class:"icon",onClick:N[1]||(N[1]=t.withModifiers(k=>w("output"),["stop"]))},[d.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldMoreIcon),{key:0,size:t.unref(fo)},null,8,["size"])),d.value?(t.openBlock(),t.createBlock(t.unref(Ee.UnfoldLessIcon),{key:1,color:s.value?void 0:t.unref(Ac),size:t.unref(fo)},null,8,["color","size"])):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],2),d.value?(t.openBlock(),t.createBlock(ci,{key:0,color:_.value,position:b.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(Yt),{id:"output",position:b.value,type:"source"},null,8,["position"])]),d.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(y.data.fields.output,(k,E)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${k.id}`,class:"handle indented"},[t.createElementVNode("div",CP,[t.createElementVNode("div",NP,t.toDisplayString(k.name),1),t.createVNode(ci,{color:_.value,position:b.value,type:E<y.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(Yt),{id:`outputs@${k.id}`,position:b.value,type:"source"},null,8,["id","position"])]))),128)):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)])],2)],2))}}),[["__scopeId","data-v-b8317dd1"]]),vP={ref:"flow-wrapper",class:"dk-flow-wrapper"},Df=we(t.defineComponent({__name:"EditorCanvasFlow",props:{phase:{}},setup(e){const n=e,o=t.useTemplateRef("flow-wrapper"),r=t.ref(!1),a=`${t.useId()}-${n.phase}`,{vueFlowStore:l,editorStore:s,nodes:c,edges:d,autoLayout:f}=dP(n.phase,a),{addNode:u,clear:p}=s,{project:m,vueFlowRef:h,addSelectedNodes:b,getNodes:g}=l,{selectNode:_,propertiesPanelOpen:w,newCreatedNodeId:y,invalidConfigNodeIds:N}=ot();async function k(P){_(P),await t.nextTick();const Y=g.value.find(K=>K.id===P);b(Y?[Y]:[])}function E(P){var F,V;const Y=(F=P.dataTransfer)==null?void 0:F.getData(Uc);if(!Y)return;P.preventDefault();const K=JSON.parse(Y);if(K.action!=="create-node")return;const{top:A=0,left:z=0}=((V=h.value)==null?void 0:V.getBoundingClientRect())||{},x=m({x:P.clientX-z,y:P.clientY-A}),{type:R,anchor:O}=K.data,W={type:R,phase:n.phase,position:{x:x.x-O.offsetX,y:x.y-O.offsetY}},G=u(W);k(G),G&&(y.value=G,w.value=!0)}function $(){r.value||(r.value=!0,I(),p())}function I(){f({boundingRect:o.value.getBoundingClientRect()})}return(P,Y)=>(t.openBlock(),t.createElementBlock("div",vP,[t.createVNode(t.unref(Bu),{id:a,class:"flow",edges:t.unref(d),"fit-view-on-init":"","multi-selection-key-code":null,nodes:t.unref(c),onDragover:Y[0]||(Y[0]=t.withModifiers(()=>{},["prevent"])),onDrop:Y[1]||(Y[1]=K=>E(K)),onNodeClick:Y[2]||(Y[2]=K=>w.value=!0),onNodesInitialized:$},{"node-flow":t.withCtx(K=>[t.createVNode(Rf,{data:K.data,error:t.unref(N).has(K.data.id)},null,8,["data","error"])]),default:t.withCtx(()=>[t.createVNode(t.unref(OS)),t.createVNode(t.unref(rx),{position:"bottom-left"},{default:t.withCtx(()=>[t.createElementVNode("button",{class:"vue-flow__controls-button vue-flow__controls-interactive custom",onClick:I},[t.createVNode(t.unref(Ee.SparklesIcon),{size:18})])]),_:1})]),_:1},8,["edges","nodes"])],512))}}),[["__scopeId","data-v-e3ec7bb9"]]),SP={class:"dk-editor-main"},xP={class:"header"},AP={class:"actions"},IP={ref:"canvasContainer",class:"body"},TP=we(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Re.createI18n("en-us",je),{modalOpen:o}=ot();function r(){o.value=!1}return(i,a)=>(t.openBlock(),t.createElementBlock("div",SP,[t.createElementVNode("header",xP,[t.createElementVNode("div",AP,[t.createVNode(t.unref(Te.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.view_docs"))+" ",1),t.createVNode(t.unref(Ee.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Te.KButton),{onClick:r},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.done")),1)]),_:1})])]),t.createElementVNode("div",IP,[t.createVNode(xE,null,{request:t.withCtx(()=>[t.createVNode(Df,{phase:"request"})]),response:t.withCtx(()=>[t.createVNode(Df,{phase:"response"})]),_:1})],512)]))}}),[["__scopeId","data-v-bd7f8196"]]),PP={class:"icon"},OP={class:"content"},$P={class:"title"},BP={class:"description"},VP=we(t.defineComponent({__name:"NodePanelItem",props:{type:{}},setup(e){const{summary:n,icon:o}=mr[e.type];return(r,i)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${r.type}`]:!0}])},[t.createElementVNode("div",PP,[t.createVNode(t.unref(o),{size:16})]),t.createElementVNode("div",OP,[t.createElementVNode("div",$P,t.toDisplayString(r.type),1),t.createElementVNode("div",BP,t.toDisplayString(t.unref(n)),1)])],2))}}),[["__scopeId","data-v-e75cecee"]]),RP={class:"dk-node-panel"},DP={class:"title"},MP={class:"node-list"},LP={"aria-hidden":"true",class:"preview",inert:""},FP=we(t.defineComponent({__name:"NodePanel",setup(e){const{t:n}=Re.createI18n("en-us",je),{createNode:o}=ot(),r=`dk-drag-preview-${t.useId()}`,i=t.shallowRef(),a=t.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var I,P;const d=s.currentTarget,{left:f,top:u,width:p,height:m}=d.getBoundingClientRect(),h=s.clientX-f,b=s.clientY-u;i.value=o({type:c}),await t.nextTick();const g=document.querySelector(`#${r}`)||d,_=g.cloneNode(!0),{offsetWidth:w,offsetHeight:y}=g;Object.assign(_.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${y}px`,boxSizing:"border-box"}),document.body.appendChild(_);const N=h/p,k=b/m,E={ratioX:N,ratioY:k,offsetX:w*N,offsetY:y*k},$={action:"create-node",data:{type:c,anchor:E}};(I=s.dataTransfer)==null||I.setData(Uc,JSON.stringify($)),(P=s.dataTransfer)==null||P.setDragImage(_,E.offsetX,E.offsetY),requestAnimationFrame(()=>{_.remove(),i.value=void 0})};return(s,c)=>{const d=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",RP,[t.createElementVNode("h3",DP,[t.createVNode(d,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])]),t.createElementVNode("div",MP,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(mr)),f=>(t.openBlock(),t.createBlock(VP,{key:f,draggable:"true",type:f,onDragstart:u=>l(u,f)},null,8,["type","onDragstart"]))),128))]),t.createElementVNode("div",LP,[t.createVNode(t.unref(Bu),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(Rf,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-8e8421d3"]]),UP=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(Et,{items:t.unref(Zi)([...t.unref(bE)]),name:n.name},null,8,["items","name"]))}}),KP=we(t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Ve(),{i18n:o}=ve(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(dt,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock(Et,{key:l,class:"dk-inputs-field-indent",clearable:"",items:i.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},null,8,["items","name","placeholder","onChange"]))),128))]),_:1},8,["name"]))}}),[["__scopeId","data-v-a849b44b"]]),jP=["data-testid"],GP={class:"dk-inputs-map-field-entry-body"},qP={class:"dk-inputs-map-field-entry-content"},zP={class:"dk-inputs-map-field-indent"},HP=we(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l,field:s}=ra(o,r),{i18n:{t:c}}=ve(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(k,E="key"){var $;d.value&&(await t.nextTick(),($=d.value.querySelector(`[data-${E}-input="${k}"]`))==null||$.focus())}function h(){const{id:k}=a(),E=i.value.findIndex(({key:$})=>!$);m(E===-1?i.value.length-1:E),f.value=k}function b(k){l(k.id),k.id===f.value&&(f.value=null),k.key.trim()!==""&&r("remove:field",k.key)}function g(k){p=k.key}function _(k){if(w(k)){k.key=p,delete u.value[k.id];return}if(k.id===f.value){if(k.key.trim()==="")return;r("add:field",k.key,k.value),f.value=null}else r("rename:field",p,k.key);p=k.key}function w(k){delete u.value[k.id];const E=o.fieldNameValidator("input",p,k.key);if(E)return u.value[k.id]=E,E}function y(k){w(k)}function N(k,E){k.id!==f.value&&r("change:inputs",k.key,E)}return(k,E)=>{const $=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),P=t.resolveComponent("KInput"),Y=t.resolveComponent("KSelect"),K=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock($,{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),(A,z)=>(t.openBlock(),t.createElementBlock("div",{key:A.id,class:"dk-inputs-map-field-entry dk-inputs-map-field-indent","data-testid":`ff-kv-container-${t.unref(s).path.value}.${z}`},[t.createVNode(I,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${z}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),t.createElementVNode("div",GP,[t.createElementVNode("div",qP,[t.createVNode(P,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${z}`,modelValue:A.key,"onUpdate:modelValue":[x=>A.key=x,x=>w(A)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":z,"data-testid":`ff-key-${t.unref(s).path.value}.${z}`,error:!!u.value[A.id],"error-message":u.value[A.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:x=>y(A),onChange:x=>_(A),onFocus:x=>g(A)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(Y,{modelValue:A.value,"onUpdate:modelValue":x=>A.value=x,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${z}`,items:k.items,placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:x=>N(A,(x==null?void 0:x.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","placeholder","onChange"])]),t.createVNode(K,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${z}`,icon:"",onClick:x=>b(A)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,jP))),128)),t.createElementVNode("div",zP,[t.createVNode(K,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])])],512))}}}),[["__scopeId","data-v-685121cd"]]),qn=t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=Ve(),{i18n:i}=ve(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?KP:HP:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function d(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function u(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.unref(r)("input")?(t.openBlock(),t.createBlock(Et,{key:0,clearable:"","enable-filtering":"",items:p.items,label:"Inputs",name:"input",placeholder:t.unref(i).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},null,8,["items","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:1,"field-name-validator":p.fieldNameValidator,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":d,"onRemove:field":f,"onRename:field":u},null,8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),YP={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"},WP={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 XP(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 Hn(e){const{i18n:{t:n}}=ve(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function gl(e,n){const{i18n:{t:o}}=ve();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function ZP(e=0,n=1/0,o){const{i18n:{t:r}}=ve();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function Mf(e){const{i18n:{t:n}}=ve();return function(r){if(!XP(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 Lf(e,n){const{i18n:{t:o}}=ve();return function(i){if(i==null)return;const a=Mf(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 Ff(e=-1/0,n=1/0,o){const{i18n:{t:r}}=ve();return function(a){if(a==null)return;const l=Mf(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 JP(e,n){const{state:o}=ot(),{i18n:{t:r}}=ve();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function QP(e,n,o){const{i18n:{t:r}}=ve();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function eO(){const{i18n:{t:e}}=ve();return function(o){if(da(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Uf(e){const{i18n:{t:n}}=ve(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return zn(Hn(o),gl("identifier",o),eO(),JP(e,o))}function tO(e){const{i18n:{t:n}}=ve(),{getNodeById:o}=ot();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(Hn(s),gl("identifier",s),QP(i,o(e),l))(a)}}function nO(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 ui(e){const{validationConfig:n,getValidationData:o,skipValidationOnMount:r,toggleNodeValid:i}=e,a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>nO(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const h in a.value)m[h]=p[h];return m}function f(u,p){return{onBlur:()=>{const m=o(),h=s.value[u];h&&h.handleBlur(m[u])},onUpdate:()=>{const m=o(),h=s.value[u];h&&h.handleChange(m[u]),p==null||p()},error:t.computed(()=>{const m=s.value[u];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[u];return m?m.error.value??"":""})}}return t.onMounted(()=>{r!=null&&r.value||d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;i(!p)}catch{}}),t.watch(()=>c.value,i,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function _n(e,n){const{state:o,renameNode:r,getNodeById:i,addField:a,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:d,connectEdge:f,newCreatedNodeId:u,invalidConfigNodeIds:p,undo:m,commit:h}=ot(),{i18n:{t:b}}=ve(),g=Of();let _=!1;t.watch(o,async()=>{_=!0,await t.nextTick(),_=!1},{immediate:!0,deep:!0}),console.log("state",o.value),window.store=ot();const w=t.computed(()=>{const D=i(e);if(!D)throw new Error("Node not existed");return D}),y=t.computed(()=>{const Q=o.value.edges.filter(ie=>ie.target===e).reduce((ie,H)=>{var ne,ae;const re=i(H.source),U=(ne=Kt(re,"output",H.sourceField))==null?void 0:ne.id,Z=(ae=Kt(w.value,"input",H.targetField))==null?void 0:ae.name,ee=re.id+(U?`.${U}`:"");return Z?ie.inputs={...ie.inputs,[Z]:ee}:ie.input=ee,ie},{});return w.value.fields.input.forEach(ie=>{Q.inputs||(Q.inputs={}),Q.inputs[ie.name]||(Q.inputs[ie.name]=null)}),{...w.value.config,...Q,name:w.value.name}}),N=D=>{r(e,D??"",!0,`${e}:rename`)},k=(D,Q=!0)=>{if(_)return;if(!n)throw new Error("getFormInnerData is not defined");const ie=nc(n(),["name","input","inputs"]),H=D?`update:${e}:${D}`:void 0;c(e,ie,Q,H)},E=(D,Q)=>{const ie=Vn(w.value,D,Q);if(!ie)throw new Error(`Field with name "${Q}" not found in node "${w.value.name}"`);return ie},$=(D,Q,ie)=>{const H=!!ie;a(e,D,Q,!H),H&&A(Q,ie)},I=(D,Q,ie)=>{if(_)return;const H=E(D,Q).id;l(e,H,ie)},P=(D,Q)=>{const ie=E(D,Q).id;s(e,ie)},Y=t.computed(()=>o.value.edges.filter(D=>D.target===e&&!D.targetField)[0]),K=t.computed(()=>o.value.edges.filter(D=>D.target===e&&D.targetField)),A=async(D,Q)=>{if(_)return;const ie=Q==null,H=E("input",D).id;if(ie){const q=K.value.find(te=>te.targetField===H);q&&d(q.id);return}const{nodeId:re,fieldId:U}=Bc(Q),Z=E("input",D).id,ee=[];Y.value&&(ee.push(Oo(Y.value,i)),d(Y.value.id,!1));const ne=K.value.find(q=>q.targetField===H);ne&&(ee.push(Oo(ne,i)),d(ne.id,!1)),f({source:re,sourceField:U,target:e,targetField:Z},!1);const ae=ul(re,U,e,Z,i);h(),!(ee[0]&&ae&&ee[0][1]===ae[1])&&ee.length>0&&(await g(b("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ae],ee)||m())},z=async D=>{if(_)return;if(D==null){Y.value&&d(Y.value.id);return}const ie=[];for(const Z of K.value)ie.push(Oo(Z,i)),d(Z.id,!1);const{nodeId:H,fieldId:re}=Bc(D);f({source:H,sourceField:re,target:e,targetField:void 0},!1);const U=ul(H,re,e,void 0,i);h(),ie.length>0&&(await g(b("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[U],ie)||m())},x=D=>{const Q=[...o.value.edges,{source:D,target:e}];return pa(yr(Q))},R=t.computed(()=>{var Q,ie;const D=[];for(const H of o.value.nodes)if((Q=ua(H.type).io)!=null&&Q.output&&H.fields.output&&H.id!==e&&!(H.type==="property"&&!pl((ie=H.config)==null?void 0:ie.property))&&!x(H.id)){D.push({value:H.id,label:H.name});for(const U of H.fields.output)D.push({value:`${H.id}.${U.id}`,label:`${H.name}.${U.name}`})}return D}),O=t.computed(()=>w.value.fields.input.map(D=>D.name)||[]),W=t.computed(()=>u.value===e);function G(D){p.value.delete(e),D||p.value.add(e)}const F=tO(e);function V(D,Q,ie){const H=i(e);if(!H)throw new Error("Node not found when validating field name");const re=Vn(H,D,Q);return F(D,ie,re==null?void 0:re.id)}return{formData:y,inputOptions:R,inputEdge:Y,inputsEdges:K,inputsFieldNames:O,skipValidationOnMount:W,currentNode:w,setName:N,setConfig:k,addField:$,renameFieldByName:I,removeFieldByName:P,setInputs:A,setInput:z,nameValidator:Uf(e),fieldNameValidator:V,toggleNodeValid:G}}function bn(e){const{getSchema:n}=Ve();return t.computed(()=>{if(Bt(e))switch(e){case"response":return WP;case"service_request":return YP}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 fi=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=ve(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 0?"":f});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function d(){s=a.value.trim()}return t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,u)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":u[0]||(u[0]=m=>a.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:d},null,8,["model-value","error","error-message","label"])}}}),oO=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=ve(),o=t.useTemplateRef("form"),r=bn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,skipValidationOnMount:p,toggleNodeValid:m,fieldNameValidator:h}=_n(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:b}=ui({validationConfig:{url:zn(Hn({fieldName:"URL"}),gl("url",{fieldName:"URL"})),timeout:zn(Lf("integer",{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}),Ff(0,2147483646,{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),skipValidationOnMount:p,toggleNodeValid:m}),g=b("url",()=>l("url")),_=b("timeout",()=>l("timeout"));return(w,y)=>{const N=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(fi,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(N,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),t.createVNode(On,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,name:"url",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(UP,{name:"method","onUpdate:modelValue":y[0]||(y[0]=k=>t.unref(l)())}),t.createVNode($n,{error:t.unref(_).error.value,"error-message":t.unref(_).errorMessage.value,label:t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout",onBlur:t.unref(_).onBlur,"onUpdate:modelValue":t.unref(_).onUpdate},null,8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(On,{name:"ssl_server_name","onUpdate:modelValue":y[1]||(y[1]=k=>t.unref(l)("ssl_server_name"))}),t.createVNode(qn,{"field-name-validator":t.unref(h),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),rO=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=bn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=_n(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(qn,{"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"]))}}),iO=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=bn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=_n(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(qn,{"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"]))}}),aO=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=ve(),o=t.useTemplateRef("form"),r=bn("jq"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,addField:f,removeFieldByName:u,renameFieldByName:p,inputsFieldNames:m,nameValidator:h,skipValidationOnMount:b,toggleNodeValid:g,fieldNameValidator:_}=_n(e.nodeId,()=>o.value.getInnerData());function w(I,P){f("input",I,P)}function y(I){u("input",I)}function N(I,P){p("input",I,P)}const k=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:E}=ui({validationConfig:{jq:zn(Hn({fieldName:k}),ZP(1,10240,{fieldName:k}))},getValidationData:()=>({jq:i.value.jq}),skipValidationOnMount:b,toggleNodeValid:g}),$=E("jq",()=>l("jq"));return(I,P)=>{const Y=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(fi,{name:t.unref(i).name,validate:t.unref(h),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(Y,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.Configuration")),1)]),_:1}),t.createVNode(On,{error:t.unref($).error.value,help:t.unref($).errorMessage.value,label:t.unref(k),multiline:"",name:"jq",resizable:"",rows:"2",onBlur:t.unref($).onBlur,"onUpdate:modelValue":t.unref($).onUpdate},null,8,["error","help","label","onBlur","onUpdate:modelValue"]),t.createVNode(qn,{"field-name-validator":t.unref(_),"field-names":t.unref(m),items:t.unref(s),"onAdd:field":w,"onChange:input":t.unref(d),"onChange:inputs":t.unref(c),"onRemove:field":y,"onRename:field":N},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),lO=we(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(e,{emit:n}){const o=e,r=n,i=t.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=ra(o,r,!1),{i18n:d}=ve(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(k,E="key"){var $;f.value&&(await t.nextTick(),($=f.value.querySelector(`[data-${E}-input="${k}"]`))==null||$.focus())}function h(){const k=l(),E=a.value.findIndex(({key:$})=>!$);m(E===-1?a.value.length-1:E),u.value=k}function b(k){var E;k.id===((E=u.value)==null?void 0:E.id)&&(u.value=null),s(k.id),k.key.trim()!==""&&r("remove:field",k.key)}function g(k){p=k.key}function _(k){var E;if(y(k)){k.key=p,delete i.value[k.id];return}if(k.id===((E=u.value)==null?void 0:E.id)){if(k.key.trim()==="")return;u.value=null,r("add:field",k.key,k.value)}else r("rename:field",p,k.key);p=k.key}function w(k,E){var I;if(E.id===((I=u.value)==null?void 0:I.id))return;const $=k.target.value.trim();r("change:value",E.key,$)}function y(k){delete i.value[k.id];const E=o.fieldNameValidator("output",p,k.key);if(E)return i.value[k.id]=E,E}function N(k){y(k)}return t.watchEffect(()=>{u.value&&!a.value.some(k=>k.id===u.value.id)&&a.value.push(u.value)}),(k,E)=>{const $=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),P=t.resolveComponent("KButton"),Y=t.resolveComponent("KInput"),K=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock($,{key:0,appearance:"danger",message:t.unref(c).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[t.createVNode(I,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(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),(A,z)=>(t.openBlock(),t.createBlock(K,{key:A.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${z}`},{actions:t.withCtx(()=>[t.createVNode(P,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${z}`,icon:"",onClick:x=>b(A)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(Y,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${z}`,modelValue:A.key,"onUpdate:modelValue":[x=>A.key=x,x=>y(A)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":z,"data-testid":`ff-key-${t.unref(c).path.value}.${z}`,error:!!i.value[A.id],"error-message":i.value[A.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:x=>N(A),onChange:x=>_(A),onFocus:x=>g(A)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(Y,{modelValue:A.value,"onUpdate:modelValue":x=>A.value=x,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${z}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:x=>w(x,A)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(P,{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(Ee.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-9f3f9fea"]]);function sO(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 pi(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 cO(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 dO=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=ot(),{fieldNameValidator:c}=_n(e.nodeId),d=bn("static"),f=Uf(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var y;return((y=u.value)==null?void 0:y.fields.output.map(N=>N.name))||[]});function m(y){if(!u.value)throw new Error("No current node");n(u.value.id,y??"")}const h=t.computed(()=>{var I;if(!u.value)return{};const y=((I=u.value.config)==null?void 0:I.values)??{},N={},k=o(u.value.id).map(P=>P.sourceField).filter(Boolean).map(P=>Kt(u.value,"output",P)).map(P=>P==null?void 0:P.name).filter(Boolean),E=u.value.fields.output.map(P=>P.name);return new Set([...k,...E]).forEach(P=>{if(P in y){N[P]=y[P];return}N[P]=""}),{name:u.value.name,values:sO(N)}});function b(y,N){if(!u.value)throw new Error("No selected node");if(r(e.nodeId,"output",y,!N),N){const k={values:pi({...h.value.values,[y]:N})};l(e.nodeId,k)}}function g(y,N){if(!u.value)throw new Error("No selected node");const k=Vn(u.value,"output",y);if(!k)throw new Error("No field found to rename");const E={values:pi(cO(h.value.values??{},y,N))};l(e.nodeId,E,!1),i(e.nodeId,k.id,N)}function _(y){var E;if(!u.value)throw new Error("No selected node");const N=Vn(u.value,"output",y);if(!N)throw new Error("No field found to delete");a((E=u.value)==null?void 0:E.id,N.id,!0,!1);const k={values:pi({...h.value.values})};delete k.values[y],l(e.nodeId,k)}function w(y,N){if(!u.value)throw new Error("No selected node");const k={...h.value.values};k[y]=N;const E={values:pi(k)};l(e.nodeId,E)}return(y,N)=>{const k=t.resolveComponent("NameField");return t.openBlock(),t.createBlock(mt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>{var E;return[t.createVNode(k,{name:((E=u.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(lO,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":b,"onChange:value":w,"onRemove:field":_,"onRename:field":g},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"])}}}),uO={class:"dk-kong-property-item"},fO={class:"property-type"},pO={class:"property-badges"},mO=we(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=ve(),r=e,i=n,{formData:a}=Ve(),l=t.ref($o(a.property)),s=t.computed(()=>Bo(a.property)),c=t.ref(fl(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(yn).map(([m])=>{var g;const h=Bo(m)?(g=a.property)==null?void 0:g.startsWith(m.replace(Gn,"")):a.property===m;return{label:h&&c.value?m.replace(Gn,c.value):m,value:m,selected:h}}));function u(m){const h=di.find(b=>{var g;return(g=a.property)==null?void 0:g.startsWith(b)});h&&(a.property=h+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==$o(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=$o(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=fl(m),l.value=$o(m)}),(m,h)=>{const b=t.resolveComponent("KBadge"),g=t.resolveComponent("KSelect"),_=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(g,{key:d.value,"enable-filtering":"",error:!m.validators.property.isValid.value,help:m.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:h[0]||(h[0]=w=>m.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",uO,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",fO,t.toDisplayString(t.unref(yn)[w.value].dataType),1)]),t.createElementVNode("div",pO,[t.unref(yn)[w.value].readable?(t.openBlock(),t.createBlock(b,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(yn)[w.value].writable?(t.openBlock(),t.createBlock(b,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(_,{key:0,"model-value":c.value,"onUpdate:modelValue":[h[1]||(h[1]=w=>c.value=w),u],error:!m.validators.key.isValid.value,"error-message":m.validators.key.error.value,label:"key",required:"",onBlur:h[2]||(h[2]=w=>m.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),gO=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=ot(),a=bn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,skipValidationOnMount:b,fieldNameValidator:g}=_n(e.nodeId,()=>n.value.getInnerData()),_=t.computed(()=>ml(l.value.property));function w(N){var E;const k=(E=o.value)==null?void 0:E.id;if(!k)throw new Error("Expected selectedNode to be defined");pl(N)||i(k,!1),ml(N)||r(k,!1),c()}const{fields:y}=ui({validationConfig:()=>({property:Hn({fieldName:"Property"}),key:Bo(l.value.property)?Hn({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:fl(l.value.property)}),skipValidationOnMount:b,toggleNodeValid:h});return(N,k)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(fi,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(Et,{name:"content_type","onUpdate:modelValue":t.unref(c)},null,8,["onUpdate:modelValue"]),t.createVNode(mO,{validators:t.unref(y),"onUpdate:modelValue":w,"onUpdate:propertyKey":k[0]||(k[0]=E=>t.unref(c)("property-key"))},null,8,["validators"]),_.value?(t.openBlock(),t.createBlock(qn,{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"]))}}),hO=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=bn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,skipValidationOnMount:p,fieldNameValidator:m}=_n(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:h}=ui({validationConfig:{status:zn(Lf("integer",{fieldName:"Status"}),Ff(200,255,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),skipValidationOnMount:p,toggleNodeValid:u}),b=h("status",()=>a("status"));return(g,_)=>(t.openBlock(),t.createBlock(mt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(fi,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode($n,{error:t.unref(b).error.value,"error-message":t.unref(b).errorMessage.value,name:"status",onBlur:t.unref(b).onBlur,"onUpdate:modelValue":t.unref(b).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(oa,{name:"warn_headers_sent","onUpdate:modelValue":_[0]||(_[0]=w=>t.unref(a)())}),t.createVNode(qn,{"field-name-validator":t.unref(m),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),yO=["innerHTML"],_O=we(t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:()=>yE},offsetTop:{default:()=>_E},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=ot(),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 oO;case"service_request":return rO;case"response":return iO;case"jq":return aO;case"static":return dO;case"property":return gO;case"exit":return hO;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Te.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":i.maxWidth,"offset-top":i.offsetTop,visible:i.visible,onClose:a[0]||(a[0]=l=>i.$emit("close"))},t.createSlots({default:t.withCtx(()=>[o.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(kt)(o.value.type)},null,8,yO)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:i.nodeId,class:"dk-node-properties-panel-form","node-id":i.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Vf,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible"]))}}),[["__scopeId","data-v-1bb64727"]]),bO={class:"dk-editor-content"},wO={class:"header"},EO={class:"title"},kO={class:"body"},CO={class:"node-selection-panel"},NO={class:"main"},vO=we(t.defineComponent({__name:"EditorContent",setup(e){const{t:n}=Re.createI18n("en-us",je),{sidePanelExpanded:o}=ma(),{propertiesPanelOpen:r,selectedNode:i,newCreatedNodeId:a}=ot();function l(){r.value=!1,a.value=null}return t.watch(i,s=>{s||l(),(!s||s.id!==a.value)&&(a.value=null)}),(s,c)=>{var d;return t.openBlock(),t.createElementBlock("div",bO,[t.createElementVNode("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o)}])},[t.createElementVNode("header",wO,[t.createElementVNode("h2",EO,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",kO,[t.createElementVNode("div",CO,[t.createVNode(FP)])])],2),t.createElementVNode("div",NO,[t.createVNode(TP)]),t.createVNode(_O,{"node-id":(d=t.unref(i))==null?void 0:d.id,visible:t.unref(r),onClose:l},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-0e99b201"]]),SO={key:0,class:"dk-editor-modal"},xO=we(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(l=>({be550f98:t.unref(hE),"2eb355b0":t.unref(gE)}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal");sP(async(...l)=>{o.value=!0;const s=await r.value.open(...l);return o.value=!1,s});const i=at.useScrollLock(document);t.watch(n,l=>{i.value=!!l},{immediate:!0});function a(){n.value=!1}return(l,s)=>n.value?(t.openBlock(),t.createElementBlock("div",SO,[t.createVNode(SE,{class:"nav",onBack:a}),t.createVNode(vO,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(kE,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-2aca1995"]]),AO={class:"dk-flow-editor"},IO={class:"field"},TO=we(t.defineComponent({__name:"FlowEditor",props:{editing:{type:Boolean},config:{}},emits:["change","error"],setup(e,{emit:n}){var l;const{t:o}=Re.createI18n("en-us",je),r=n;function i(s){r("change",{...e.config,...s})}const{modalOpen:a}=pE(((l=e.config)==null?void 0:l.nodes)??[],[],{onChange:i});return(s,c)=>{const d=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",AO,[t.createVNode(d,{appearance:"secondary",onClick:c[0]||(c[0]=f=>a.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta")),1)]),_:1}),t.createVNode(xO,{open:t.unref(a),"onUpdate:open":c[1]||(c[1]=f=>t.isRef(a)?a.value=f:null)},null,8,["open"]),t.createElementVNode("div",IO,[t.createVNode(oa,{name:"config.debug"})])])}}}),[["__scopeId","data-v-dad48070"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function Kf(e){return typeof e>"u"||e===null}function PO(e){return typeof e=="object"&&e!==null}function OO(e){return Array.isArray(e)?e:Kf(e)?[]:[e]}function $O(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 BO(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function VO(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var RO=Kf,DO=PO,MO=OO,LO=BO,FO=VO,UO=$O,qe={isNothing:RO,isObject:DO,toArray:MO,repeat:LO,isNegativeZero:FO,extend:UO};function jf(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+=`
46
39
 
47
- `+e.mark.snippet),r+" "+o):r}function Fo(e,t){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=t,this.message=ap(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Fo.prototype=Object.create(Error.prototype),Fo.prototype.constructor=Fo,Fo.prototype.toString=function(t){return this.name+": "+ap(this,t)};var et=Fo;function Nl(e,t,o,r,i){var a="",l="",s=Math.floor(i/2)-1;return r-t>s&&(a=" ... ",t=r-s+a.length),o-r>s&&(l=" ...",o=r+s-l.length),{str:a+e.slice(t,o).replace(/\t/g,"→")+l,pos:r-t+a.length}}function Sl(e,t){return qe.repeat(" ",t-e.length)+e}function P$(e,t){if(t=Object.create(t||null),!e.buffer)return null;t.maxLength||(t.maxLength=79),typeof t.indent!="number"&&(t.indent=1),typeof t.linesBefore!="number"&&(t.linesBefore=3),typeof t.linesAfter!="number"&&(t.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+t.linesAfter,i.length).toString().length,u=t.maxLength-(t.indent+f+3);for(c=1;c<=t.linesBefore&&!(l-c<0);c++)d=Nl(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=qe.repeat(" ",t.indent)+Sl((e.line-c+1).toString(),f)+" | "+d.str+`
48
- `+s;for(d=Nl(e.buffer,r[l],i[l],e.position,u),s+=qe.repeat(" ",t.indent)+Sl((e.line+1).toString(),f)+" | "+d.str+`
49
- `,s+=qe.repeat("-",t.indent+f+3+d.pos)+`^
50
- `,c=1;c<=t.linesAfter&&!(l+c>=i.length);c++)d=Nl(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=qe.repeat(" ",t.indent)+Sl((e.line+c+1).toString(),f)+" | "+d.str+`
51
- `;return s.replace(/\n$/,"")}var O$=P$,$$=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],B$=["scalar","sequence","mapping"];function V$(e){var t={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){t[String(r)]=o})}),t}function R$(e,t){if(t=t||{},Object.keys(t).forEach(function(o){if($$.indexOf(o)===-1)throw new et('Unknown option "'+o+'" is met in definition of "'+e+'" YAML type.')}),this.options=t,this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(o){return o},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.representName=t.representName||null,this.defaultStyle=t.defaultStyle||null,this.multi=t.multi||!1,this.styleAliases=V$(t.styleAliases||null),B$.indexOf(this.kind)===-1)throw new et('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var He=R$;function lp(e,t){var o=[];return e[t].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 D$(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},t,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(t=0,o=arguments.length;t<o;t+=1)arguments[t].forEach(r);return e}function xl(e){return this.extend(e)}xl.prototype.extend=function(t){var o=[],r=[];if(t instanceof He)r.push(t);else if(Array.isArray(t))r=r.concat(t);else if(t&&(Array.isArray(t.implicit)||Array.isArray(t.explicit)))t.implicit&&(o=o.concat(t.implicit)),t.explicit&&(r=r.concat(t.explicit));else throw new et("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof He))throw new et("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new et("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new et("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(a){if(!(a instanceof He))throw new et("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(xl.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=lp(i,"implicit"),i.compiledExplicit=lp(i,"explicit"),i.compiledTypeMap=D$(i.compiledImplicit,i.compiledExplicit),i};var sp=xl,cp=new He("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),dp=new He("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),up=new He("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),fp=new sp({explicit:[cp,dp,up]});function M$(e){if(e===null)return!0;var t=e.length;return t===1&&e==="~"||t===4&&(e==="null"||e==="Null"||e==="NULL")}function F$(){return null}function L$(e){return e===null}var pp=new He("tag:yaml.org,2002:null",{kind:"scalar",resolve:M$,construct:F$,predicate:L$,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function U$(e){if(e===null)return!1;var t=e.length;return t===4&&(e==="true"||e==="True"||e==="TRUE")||t===5&&(e==="false"||e==="False"||e==="FALSE")}function K$(e){return e==="true"||e==="True"||e==="TRUE"}function j$(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var mp=new He("tag:yaml.org,2002:bool",{kind:"scalar",resolve:U$,construct:K$,predicate:j$,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 G$(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function q$(e){return 48<=e&&e<=55}function z$(e){return 48<=e&&e<=57}function H$(e){if(e===null)return!1;var t=e.length,o=0,r=!1,i;if(!t)return!1;if(i=e[o],(i==="-"||i==="+")&&(i=e[++o]),i==="0"){if(o+1===t)return!0;if(i=e[++o],i==="b"){for(o++;o<t;o++)if(i=e[o],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(o++;o<t;o++)if(i=e[o],i!=="_"){if(!G$(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<t;o++)if(i=e[o],i!=="_"){if(!q$(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<t;o++)if(i=e[o],i!=="_"){if(!z$(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function Y$(e){var t=e,o=1,r;if(t.indexOf("_")!==-1&&(t=t.replace(/_/g,"")),r=t[0],(r==="-"||r==="+")&&(r==="-"&&(o=-1),t=t.slice(1),r=t[0]),t==="0")return 0;if(r==="0"){if(t[1]==="b")return o*parseInt(t.slice(2),2);if(t[1]==="x")return o*parseInt(t.slice(2),16);if(t[1]==="o")return o*parseInt(t.slice(2),8)}return o*parseInt(t,10)}function W$(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!qe.isNegativeZero(e)}var gp=new He("tag:yaml.org,2002:int",{kind:"scalar",resolve:H$,construct:Y$,predicate:W$,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"]}}),X$=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Z$(e){return!(e===null||!X$.test(e)||e[e.length-1]==="_")}function J$(e){var t,o;return t=e.replace(/_/g,"").toLowerCase(),o=t[0]==="-"?-1:1,"+-".indexOf(t[0])>=0&&(t=t.slice(1)),t===".inf"?o===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t===".nan"?NaN:o*parseFloat(t,10)}var Q$=/^[-+]?[0-9]+e/;function eB(e,t){var o;if(isNaN(e))switch(t){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(t){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(t){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(qe.isNegativeZero(e))return"-0.0";return o=e.toString(10),Q$.test(o)?o.replace("e",".e"):o}function tB(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||qe.isNegativeZero(e))}var hp=new He("tag:yaml.org,2002:float",{kind:"scalar",resolve:Z$,construct:J$,predicate:tB,represent:eB,defaultStyle:"lowercase"}),yp=fp.extend({implicit:[pp,mp,gp,hp]}),_p=yp,bp=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),wp=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 nB(e){return e===null?!1:bp.exec(e)!==null||wp.exec(e)!==null}function oB(e){var t,o,r,i,a,l,s,c=0,d=null,f,u,p;if(t=bp.exec(e),t===null&&(t=wp.exec(e)),t===null)throw new Error("Date resolve error");if(o=+t[1],r=+t[2]-1,i=+t[3],!t[4])return new Date(Date.UTC(o,r,i));if(a=+t[4],l=+t[5],s=+t[6],t[7]){for(c=t[7].slice(0,3);c.length<3;)c+="0";c=+c}return t[9]&&(f=+t[10],u=+(t[11]||0),d=(f*60+u)*6e4,t[9]==="-"&&(d=-d)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),d&&p.setTime(p.getTime()-d),p}function rB(e){return e.toISOString()}var Ep=new He("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:nB,construct:oB,instanceOf:Date,represent:rB});function iB(e){return e==="<<"||e===null}var kp=new He("tag:yaml.org,2002:merge",{kind:"scalar",resolve:iB}),Al=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
52
- \r`;function aB(e){if(e===null)return!1;var t,o,r=0,i=e.length,a=Al;for(o=0;o<i;o++)if(t=a.indexOf(e.charAt(o)),!(t>64)){if(t<0)return!1;r+=6}return r%8===0}function lB(e){var t,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=Al,l=0,s=[];for(t=0;t<i;t++)t%4===0&&t&&(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)),l=l<<6|a.indexOf(r.charAt(t));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 sB(e){var t="",o=0,r,i,a=e.length,l=Al;for(r=0;r<a;r++)r%3===0&&r&&(t+=l[o>>18&63],t+=l[o>>12&63],t+=l[o>>6&63],t+=l[o&63]),o=(o<<8)+e[r];return i=a%3,i===0?(t+=l[o>>18&63],t+=l[o>>12&63],t+=l[o>>6&63],t+=l[o&63]):i===2?(t+=l[o>>10&63],t+=l[o>>4&63],t+=l[o<<2&63],t+=l[64]):i===1&&(t+=l[o>>2&63],t+=l[o<<4&63],t+=l[64],t+=l[64]),t}function cB(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Cp=new He("tag:yaml.org,2002:binary",{kind:"scalar",resolve:aB,construct:lB,predicate:cB,represent:sB}),dB=Object.prototype.hasOwnProperty,uB=Object.prototype.toString;function fB(e){if(e===null)return!0;var t=[],o,r,i,a,l,s=e;for(o=0,r=s.length;o<r;o+=1){if(i=s[o],l=!1,uB.call(i)!=="[object Object]")return!1;for(a in i)if(dB.call(i,a))if(!l)l=!0;else return!1;if(!l)return!1;if(t.indexOf(a)===-1)t.push(a);else return!1}return!0}function pB(e){return e!==null?e:[]}var vp=new He("tag:yaml.org,2002:omap",{kind:"sequence",resolve:fB,construct:pB}),mB=Object.prototype.toString;function gB(e){if(e===null)return!0;var t,o,r,i,a,l=e;for(a=new Array(l.length),t=0,o=l.length;t<o;t+=1){if(r=l[t],mB.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[t]=[i[0],r[i[0]]]}return!0}function hB(e){if(e===null)return[];var t,o,r,i,a,l=e;for(a=new Array(l.length),t=0,o=l.length;t<o;t+=1)r=l[t],i=Object.keys(r),a[t]=[i[0],r[i[0]]];return a}var Np=new He("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:gB,construct:hB}),yB=Object.prototype.hasOwnProperty;function _B(e){if(e===null)return!0;var t,o=e;for(t in o)if(yB.call(o,t)&&o[t]!==null)return!1;return!0}function bB(e){return e!==null?e:{}}var Sp=new He("tag:yaml.org,2002:set",{kind:"mapping",resolve:_B,construct:bB}),Tl=_p.extend({implicit:[Ep,kp],explicit:[Cp,vp,Np,Sp]}),Yt=Object.prototype.hasOwnProperty,ki=1,xp=2,Ap=3,Ci=4,Il=1,wB=2,Tp=3,EB=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,kB=/[\x85\u2028\u2029]/,CB=/[,\[\]\{\}]/,Ip=/^(?:!|!!|![a-z\-]+!)$/i,Pp=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Op(e){return Object.prototype.toString.call(e)}function At(e){return e===10||e===13}function kn(e){return e===9||e===32}function nt(e){return e===9||e===32||e===10||e===13}function Zn(e){return e===44||e===91||e===93||e===123||e===125}function vB(e){var t;return 48<=e&&e<=57?e-48:(t=e|32,97<=t&&t<=102?t-97+10:-1)}function NB(e){return e===120?2:e===117?4:e===85?8:0}function SB(e){return 48<=e&&e<=57?e-48:-1}function $p(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
53
- `: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 xB(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}for(var Bp=new Array(256),Vp=new Array(256),Jn=0;Jn<256;Jn++)Bp[Jn]=$p(Jn)?1:0,Vp[Jn]=$p(Jn);function AB(e,t){this.input=e,this.filename=t.filename||null,this.schema=t.schema||Tl,this.onWarning=t.onWarning||null,this.legacy=t.legacy||!1,this.json=t.json||!1,this.listener=t.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 Rp(e,t){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=O$(o),new et(t,o)}function ye(e,t){throw Rp(e,t)}function vi(e,t){e.onWarning&&e.onWarning.call(null,Rp(e,t))}var Dp={YAML:function(t,o,r){var i,a,l;t.version!==null&&ye(t,"duplication of %YAML directive"),r.length!==1&&ye(t,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&ye(t,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&ye(t,"unacceptable YAML version of the document"),t.version=r[0],t.checkLineBreaks=l<2,l!==1&&l!==2&&vi(t,"unsupported YAML version of the document")},TAG:function(t,o,r){var i,a;r.length!==2&&ye(t,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],Ip.test(i)||ye(t,"ill-formed tag handle (first argument) of the TAG directive"),Yt.call(t.tagMap,i)&&ye(t,'there is a previously declared suffix for "'+i+'" tag handle'),Pp.test(a)||ye(t,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{ye(t,"tag prefix is malformed: "+a)}t.tagMap[i]=a}};function Wt(e,t,o,r){var i,a,l,s;if(t<o){if(s=e.input.slice(t,o),r)for(i=0,a=s.length;i<a;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||ye(e,"expected valid JSON character");else EB.test(s)&&ye(e,"the stream contains non-printable characters");e.result+=s}}function Mp(e,t,o,r){var i,a,l,s;for(qe.isObject(o)||ye(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)a=i[l],Yt.call(t,a)||(t[a]=o[a],r[a]=!0)}function Qn(e,t,o,r,i,a,l,s,c){var d,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),d=0,f=i.length;d<f;d+=1)Array.isArray(i[d])&&ye(e,"nested arrays are not supported inside keys"),typeof i=="object"&&Op(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&Op(i)==="[object Object]"&&(i="[object Object]"),i=String(i),t===null&&(t={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(d=0,f=a.length;d<f;d+=1)Mp(e,t,a[d],o);else Mp(e,t,a,o);else!e.json&&!Yt.call(o,i)&&Yt.call(t,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,ye(e,"duplicated mapping key")),i==="__proto__"?Object.defineProperty(t,i,{configurable:!0,enumerable:!0,writable:!0,value:a}):t[i]=a,delete o[i];return t}function Pl(e){var t;t=e.input.charCodeAt(e.position),t===10?e.position++:t===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):ye(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Le(e,t,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;kn(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(t&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(At(i))for(Pl(e),i=e.input.charCodeAt(e.position),r++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return o!==-1&&r!==0&&e.lineIndent<o&&vi(e,"deficient indentation"),r}function Ni(e){var t=e.position,o;return o=e.input.charCodeAt(t),!!((o===45||o===46)&&o===e.input.charCodeAt(t+1)&&o===e.input.charCodeAt(t+2)&&(t+=3,o=e.input.charCodeAt(t),o===0||nt(o)))}function Ol(e,t){t===1?e.result+=" ":t>1&&(e.result+=qe.repeat(`
54
- `,t-1))}function TB(e,t,o){var r,i,a,l,s,c,d,f,u=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),nt(m)||Zn(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=e.input.charCodeAt(e.position+1),nt(i)||o&&Zn(i)))return!1;for(e.kind="scalar",e.result="",a=l=e.position,s=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),nt(i)||o&&Zn(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),nt(r))break}else{if(e.position===e.lineStart&&Ni(e)||o&&Zn(m))break;if(At(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,Le(e,!1,-1),e.lineIndent>=t){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=d,e.lineIndent=f;break}}s&&(Wt(e,a,l,!1),Ol(e,e.line-c),a=l=e.position,s=!1),kn(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return Wt(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function IB(e,t){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(Wt(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 At(o)?(Wt(e,r,i,!0),Ol(e,Le(e,!1,t)),r=i=e.position):e.position===e.lineStart&&Ni(e)?ye(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);ye(e,"unexpected end of the stream within a single quoted scalar")}function PB(e,t){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 Wt(e,o,e.position,!0),e.position++,!0;if(s===92){if(Wt(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),At(s))Le(e,!1,t);else if(s<256&&Bp[s])e.result+=Vp[s],e.position++;else if((l=NB(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=vB(s))>=0?a=(a<<4)+l:ye(e,"expected hexadecimal character");e.result+=xB(a),e.position++}else ye(e,"unknown escape sequence");o=r=e.position}else At(s)?(Wt(e,o,r,!0),Ol(e,Le(e,!1,t)),o=r=e.position):e.position===e.lineStart&&Ni(e)?ye(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}ye(e,"unexpected end of the stream within a double quoted scalar")}function OB(e,t){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,g=Object.create(null),_,h,b,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(Le(e,!0,t),w=e.input.charCodeAt(e.position),w===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?w===44&&ye(e,"expected the node content, but found ','"):ye(e,"missed comma between flow collection entries"),h=_=b=null,u=p=!1,w===63&&(d=e.input.charCodeAt(e.position+1),nt(d)&&(u=p=!0,e.position++,Le(e,!0,t))),r=e.line,i=e.lineStart,a=e.position,eo(e,t,ki,!1,!0),h=e.tag,_=e.result,Le(e,!0,t),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(u=!0,w=e.input.charCodeAt(++e.position),Le(e,!0,t),eo(e,t,ki,!1,!0),b=e.result),m?Qn(e,s,g,h,_,b,r,i,a):u?s.push(Qn(e,null,g,h,_,b,r,i,a)):s.push(_),Le(e,!0,t),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}ye(e,"unexpected end of the stream within a flow collection")}function $B(e,t){var o,r,i=Il,a=!1,l=!1,s=t,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)Il===i?i=u===43?Tp:wB:ye(e,"repeat of a chomping mode identifier");else if((f=SB(u))>=0)f===0?ye(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?ye(e,"repeat of an indentation width identifier"):(s=t+f-1,l=!0);else break;if(kn(u)){do u=e.input.charCodeAt(++e.position);while(kn(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!At(u)&&u!==0)}for(;u!==0;){for(Pl(e),e.lineIndent=0,u=e.input.charCodeAt(e.position);(!l||e.lineIndent<s)&&u===32;)e.lineIndent++,u=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>s&&(s=e.lineIndent),At(u)){c++;continue}if(e.lineIndent<s){i===Tp?e.result+=qe.repeat(`
55
- `,a?1+c:c):i===Il&&a&&(e.result+=`
56
- `);break}for(r?kn(u)?(d=!0,e.result+=qe.repeat(`
40
+ `+e.mark.snippet),r+" "+o):r}function Vo(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=jf(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Vo.prototype=Object.create(Error.prototype),Vo.prototype.constructor=Vo,Vo.prototype.toString=function(n){return this.name+": "+jf(this,n)};var Qe=Vo;function hl(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 yl(e,n){return qe.repeat(" ",n-e.length)+e}function KO(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=hl(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=qe.repeat(" ",n.indent)+yl((e.line-c+1).toString(),f)+" | "+d.str+`
41
+ `+s;for(d=hl(e.buffer,r[l],i[l],e.position,u),s+=qe.repeat(" ",n.indent)+yl((e.line+1).toString(),f)+" | "+d.str+`
42
+ `,s+=qe.repeat("-",n.indent+f+3+d.pos)+`^
43
+ `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=hl(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=qe.repeat(" ",n.indent)+yl((e.line+c+1).toString(),f)+" | "+d.str+`
44
+ `;return s.replace(/\n$/,"")}var jO=KO,GO=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],qO=["scalar","sequence","mapping"];function zO(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function HO(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(GO.indexOf(o)===-1)throw new Qe('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=zO(n.styleAliases||null),qO.indexOf(this.kind)===-1)throw new Qe('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var He=HO;function Gf(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 YO(){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 _l(e){return this.extend(e)}_l.prototype.extend=function(n){var o=[],r=[];if(n instanceof He)r.push(n);else if(Array.isArray(n))r=r.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(o=o.concat(n.implicit)),n.explicit&&(r=r.concat(n.explicit));else throw new Qe("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof He))throw new Qe("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new Qe("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 Qe("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(a){if(!(a instanceof He))throw new Qe("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(_l.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=Gf(i,"implicit"),i.compiledExplicit=Gf(i,"explicit"),i.compiledTypeMap=YO(i.compiledImplicit,i.compiledExplicit),i};var qf=_l,zf=new He("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),Hf=new He("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),Yf=new He("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Wf=new qf({explicit:[zf,Hf,Yf]});function WO(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function XO(){return null}function ZO(e){return e===null}var Xf=new He("tag:yaml.org,2002:null",{kind:"scalar",resolve:WO,construct:XO,predicate:ZO,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function JO(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 QO(e){return e==="true"||e==="True"||e==="TRUE"}function e$(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Zf=new He("tag:yaml.org,2002:bool",{kind:"scalar",resolve:JO,construct:QO,predicate:e$,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 t$(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function n$(e){return 48<=e&&e<=55}function o$(e){return 48<=e&&e<=57}function r$(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(!t$(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!n$(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!o$(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function i$(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 a$(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!qe.isNegativeZero(e)}var Jf=new He("tag:yaml.org,2002:int",{kind:"scalar",resolve:r$,construct:i$,predicate:a$,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"]}}),l$=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function s$(e){return!(e===null||!l$.test(e)||e[e.length-1]==="_")}function c$(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 d$=/^[-+]?[0-9]+e/;function u$(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(qe.isNegativeZero(e))return"-0.0";return o=e.toString(10),d$.test(o)?o.replace("e",".e"):o}function f$(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||qe.isNegativeZero(e))}var Qf=new He("tag:yaml.org,2002:float",{kind:"scalar",resolve:s$,construct:c$,predicate:f$,represent:u$,defaultStyle:"lowercase"}),ep=Wf.extend({implicit:[Xf,Zf,Jf,Qf]}),tp=ep,np=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),op=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 p$(e){return e===null?!1:np.exec(e)!==null||op.exec(e)!==null}function m$(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=np.exec(e),n===null&&(n=op.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 g$(e){return e.toISOString()}var rp=new He("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:p$,construct:m$,instanceOf:Date,represent:g$});function h$(e){return e==="<<"||e===null}var ip=new He("tag:yaml.org,2002:merge",{kind:"scalar",resolve:h$}),bl=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
45
+ \r`;function y$(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=bl;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 _$(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=bl,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 b$(e){var n="",o=0,r,i,a=e.length,l=bl;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 w$(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var ap=new He("tag:yaml.org,2002:binary",{kind:"scalar",resolve:y$,construct:_$,predicate:w$,represent:b$}),E$=Object.prototype.hasOwnProperty,k$=Object.prototype.toString;function C$(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,k$.call(i)!=="[object Object]")return!1;for(a in i)if(E$.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 N$(e){return e!==null?e:[]}var lp=new He("tag:yaml.org,2002:omap",{kind:"sequence",resolve:C$,construct:N$}),v$=Object.prototype.toString;function S$(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],v$.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function x$(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 sp=new He("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:S$,construct:x$}),A$=Object.prototype.hasOwnProperty;function I$(e){if(e===null)return!0;var n,o=e;for(n in o)if(A$.call(o,n)&&o[n]!==null)return!1;return!0}function T$(e){return e!==null?e:{}}var cp=new He("tag:yaml.org,2002:set",{kind:"mapping",resolve:I$,construct:T$}),wl=tp.extend({implicit:[rp,ip],explicit:[ap,lp,sp,cp]}),Wt=Object.prototype.hasOwnProperty,mi=1,dp=2,up=3,gi=4,El=1,P$=2,fp=3,O$=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,$$=/[\x85\u2028\u2029]/,B$=/[,\[\]\{\}]/,pp=/^(?:!|!!|![a-z\-]+!)$/i,mp=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function gp(e){return Object.prototype.toString.call(e)}function At(e){return e===10||e===13}function wn(e){return e===9||e===32}function tt(e){return e===9||e===32||e===10||e===13}function Yn(e){return e===44||e===91||e===93||e===123||e===125}function V$(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function R$(e){return e===120?2:e===117?4:e===85?8:0}function D$(e){return 48<=e&&e<=57?e-48:-1}function hp(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
46
+ `: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 M$(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}for(var yp=new Array(256),_p=new Array(256),Wn=0;Wn<256;Wn++)yp[Wn]=hp(Wn)?1:0,_p[Wn]=hp(Wn);function L$(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||wl,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 bp(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=jO(o),new Qe(n,o)}function ye(e,n){throw bp(e,n)}function hi(e,n){e.onWarning&&e.onWarning.call(null,bp(e,n))}var wp={YAML:function(n,o,r){var i,a,l;n.version!==null&&ye(n,"duplication of %YAML directive"),r.length!==1&&ye(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&ye(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&ye(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&hi(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&ye(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],pp.test(i)||ye(n,"ill-formed tag handle (first argument) of the TAG directive"),Wt.call(n.tagMap,i)&&ye(n,'there is a previously declared suffix for "'+i+'" tag handle'),mp.test(a)||ye(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{ye(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function Xt(e,n,o,r){var i,a,l,s;if(n<o){if(s=e.input.slice(n,o),r)for(i=0,a=s.length;i<a;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||ye(e,"expected valid JSON character");else O$.test(s)&&ye(e,"the stream contains non-printable characters");e.result+=s}}function Ep(e,n,o,r){var i,a,l,s;for(qe.isObject(o)||ye(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)a=i[l],Wt.call(n,a)||(n[a]=o[a],r[a]=!0)}function Xn(e,n,o,r,i,a,l,s,c){var d,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),d=0,f=i.length;d<f;d+=1)Array.isArray(i[d])&&ye(e,"nested arrays are not supported inside keys"),typeof i=="object"&&gp(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&gp(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)Ep(e,n,a[d],o);else Ep(e,n,a,o);else!e.json&&!Wt.call(o,i)&&Wt.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,ye(e,"duplicated mapping key")),i==="__proto__"?Object.defineProperty(n,i,{configurable:!0,enumerable:!0,writable:!0,value:a}):n[i]=a,delete o[i];return n}function kl(e){var n;n=e.input.charCodeAt(e.position),n===10?e.position++:n===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):ye(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Fe(e,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;wn(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(At(i))for(kl(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&&hi(e,"deficient indentation"),r}function yi(e){var n=e.position,o;return o=e.input.charCodeAt(n),!!((o===45||o===46)&&o===e.input.charCodeAt(n+1)&&o===e.input.charCodeAt(n+2)&&(n+=3,o=e.input.charCodeAt(n),o===0||tt(o)))}function Cl(e,n){n===1?e.result+=" ":n>1&&(e.result+=qe.repeat(`
47
+ `,n-1))}function F$(e,n,o){var r,i,a,l,s,c,d,f,u=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),tt(m)||Yn(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=e.input.charCodeAt(e.position+1),tt(i)||o&&Yn(i)))return!1;for(e.kind="scalar",e.result="",a=l=e.position,s=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),tt(i)||o&&Yn(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),tt(r))break}else{if(e.position===e.lineStart&&yi(e)||o&&Yn(m))break;if(At(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,Fe(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&&(Xt(e,a,l,!1),Cl(e,e.line-c),a=l=e.position,s=!1),wn(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return Xt(e,a,l,!1),e.result?!0:(e.kind=u,e.result=p,!1)}function U$(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(Xt(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 At(o)?(Xt(e,r,i,!0),Cl(e,Fe(e,!1,n)),r=i=e.position):e.position===e.lineStart&&yi(e)?ye(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);ye(e,"unexpected end of the stream within a single quoted scalar")}function K$(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 Xt(e,o,e.position,!0),e.position++,!0;if(s===92){if(Xt(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),At(s))Fe(e,!1,n);else if(s<256&&yp[s])e.result+=_p[s],e.position++;else if((l=R$(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=V$(s))>=0?a=(a<<4)+l:ye(e,"expected hexadecimal character");e.result+=M$(a),e.position++}else ye(e,"unknown escape sequence");o=r=e.position}else At(s)?(Xt(e,o,r,!0),Cl(e,Fe(e,!1,n)),o=r=e.position):e.position===e.lineStart&&yi(e)?ye(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}ye(e,"unexpected end of the stream within a double quoted scalar")}function j$(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,h=Object.create(null),b,g,_,w;if(w=e.input.charCodeAt(e.position),w===91)f=93,m=!1,s=[];else if(w===123)f=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),w=e.input.charCodeAt(++e.position);w!==0;){if(Fe(e,!0,n),w=e.input.charCodeAt(e.position),w===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?w===44&&ye(e,"expected the node content, but found ','"):ye(e,"missed comma between flow collection entries"),g=b=_=null,u=p=!1,w===63&&(d=e.input.charCodeAt(e.position+1),tt(d)&&(u=p=!0,e.position++,Fe(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,Zn(e,n,mi,!1,!0),g=e.tag,b=e.result,Fe(e,!0,n),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(u=!0,w=e.input.charCodeAt(++e.position),Fe(e,!0,n),Zn(e,n,mi,!1,!0),_=e.result),m?Xn(e,s,h,g,b,_,r,i,a):u?s.push(Xn(e,null,h,g,b,_,r,i,a)):s.push(b),Fe(e,!0,n),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}ye(e,"unexpected end of the stream within a flow collection")}function G$(e,n){var o,r,i=El,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)El===i?i=u===43?fp:P$:ye(e,"repeat of a chomping mode identifier");else if((f=D$(u))>=0)f===0?ye(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?ye(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(wn(u)){do u=e.input.charCodeAt(++e.position);while(wn(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!At(u)&&u!==0)}for(;u!==0;){for(kl(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),At(u)){c++;continue}if(e.lineIndent<s){i===fp?e.result+=qe.repeat(`
48
+ `,a?1+c:c):i===El&&a&&(e.result+=`
49
+ `);break}for(r?wn(u)?(d=!0,e.result+=qe.repeat(`
57
50
  `,a?1+c:c)):d?(d=!1,e.result+=qe.repeat(`
58
51
  `,c+1)):c===0?a&&(e.result+=" "):e.result+=qe.repeat(`
59
52
  `,c):e.result+=qe.repeat(`
60
- `,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!At(u)&&u!==0;)u=e.input.charCodeAt(++e.position);Wt(e,o,e.position,!1)}return!0}function Fp(e,t){var o,r=e.tag,i=e.anchor,a=[],l,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,ye(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!nt(l))));){if(s=!0,e.position++,Le(e,!0,-1)&&e.lineIndent<=t){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,eo(e,t,Ap,!1,!0),a.push(e.result),Le(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>t)&&c!==0)ye(e,"bad indentation of a sequence entry");else if(e.lineIndent<t)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function BB(e,t,o){var r,i,a,l,s,c,d=e.tag,f=e.anchor,u={},p=Object.create(null),m=null,g=null,_=null,h=!1,b=!1,w;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),w=e.input.charCodeAt(e.position);w!==0;){if(!h&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,ye(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(w===63||w===58)&&nt(r))w===63?(h&&(Qn(e,u,p,m,g,null,l,s,c),m=g=_=null),b=!0,h=!0,i=!0):h?(h=!1,i=!0):ye(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,w=r;else{if(l=e.line,s=e.lineStart,c=e.position,!eo(e,o,xp,!1,!0))break;if(e.line===a){for(w=e.input.charCodeAt(e.position);kn(w);)w=e.input.charCodeAt(++e.position);if(w===58)w=e.input.charCodeAt(++e.position),nt(w)||ye(e,"a whitespace character is expected after the key-value separator within a block mapping"),h&&(Qn(e,u,p,m,g,null,l,s,c),m=g=_=null),b=!0,h=!1,i=!1,m=e.tag,g=e.result;else if(b)ye(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=f,!0}else if(b)ye(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=d,e.anchor=f,!0}if((e.line===a||e.lineIndent>t)&&(h&&(l=e.line,s=e.lineStart,c=e.position),eo(e,t,Ci,!0,i)&&(h?g=e.result:_=e.result),h||(Qn(e,u,p,m,g,_,l,s,c),m=g=_=null),Le(e,!0,-1),w=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>t)&&w!==0)ye(e,"bad indentation of a mapping entry");else if(e.lineIndent<t)break}return h&&Qn(e,u,p,m,g,null,l,s,c),b&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),b}function VB(e){var t,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&ye(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(o=!0,l=e.input.charCodeAt(++e.position)):l===33?(r=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",t=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(t,e.position),l=e.input.charCodeAt(++e.position)):ye(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!nt(l);)l===33&&(r?ye(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(t-1,e.position+1),Ip.test(i)||ye(e,"named tag handle cannot contain such characters"),r=!0,t=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(t,e.position),CB.test(a)&&ye(e,"tag suffix cannot contain flow indicator characters")}a&&!Pp.test(a)&&ye(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{ye(e,"tag name is malformed: "+a)}return o?e.tag=a:Yt.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:ye(e,'undeclared tag handle "'+i+'"'),!0}function RB(e){var t,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&ye(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),t=e.position;o!==0&&!nt(o)&&!Zn(o);)o=e.input.charCodeAt(++e.position);return e.position===t&&ye(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(t,e.position),!0}function DB(e){var t,o,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),t=e.position;r!==0&&!nt(r)&&!Zn(r);)r=e.input.charCodeAt(++e.position);return e.position===t&&ye(e,"name of an alias node must contain at least one character"),o=e.input.slice(t,e.position),Yt.call(e.anchorMap,o)||ye(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Le(e,!0,-1),!0}function eo(e,t,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,g,_,h;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=Ci===o||Ap===o,r&&Le(e,!0,-1)&&(d=!0,e.lineIndent>t?c=1:e.lineIndent===t?c=0:e.lineIndent<t&&(c=-1)),c===1)for(;VB(e)||RB(e);)Le(e,!0,-1)?(d=!0,s=a,e.lineIndent>t?c=1:e.lineIndent===t?c=0:e.lineIndent<t&&(c=-1)):s=!1;if(s&&(s=d||i),(c===1||Ci===o)&&(ki===o||xp===o?_=t:_=t+1,h=e.position-e.lineStart,c===1?s&&(Fp(e,h)||BB(e,h,_))||OB(e,_)?f=!0:(l&&$B(e,_)||IB(e,_)||PB(e,_)?f=!0:DB(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&ye(e,"alias node should not have any properties")):TB(e,_,ki===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&Fp(e,h))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&ye(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),u=0,p=e.implicitTypes.length;u<p;u+=1)if(g=e.implicitTypes[u],g.resolve(e.result)){e.result=g.construct(e.result),e.tag=g.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(Yt.call(e.typeMap[e.kind||"fallback"],e.tag))g=e.typeMap[e.kind||"fallback"][e.tag];else for(g=null,m=e.typeMap.multi[e.kind||"fallback"],u=0,p=m.length;u<p;u+=1)if(e.tag.slice(0,m[u].tag.length)===m[u].tag){g=m[u];break}g||ye(e,"unknown tag !<"+e.tag+">"),e.result!==null&&g.kind!==e.kind&&ye(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+g.kind+'", not "'+e.kind+'"'),g.resolve(e.result,e.tag)?(e.result=g.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):ye(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function MB(e){var t=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&&(Le(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(a=!0,l=e.input.charCodeAt(++e.position),o=e.position;l!==0&&!nt(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&ye(e,"directive name must not be less than one character in length");l!==0;){for(;kn(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!At(l));break}if(At(l))break;for(o=e.position;l!==0&&!nt(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&Pl(e),Yt.call(Dp,r)?Dp[r](e,r,i):vi(e,'unknown document directive "'+r+'"')}if(Le(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,Le(e,!0,-1)):a&&ye(e,"directives end mark is expected"),eo(e,e.lineIndent-1,Ci,!1,!0),Le(e,!0,-1),e.checkLineBreaks&&kB.test(e.input.slice(t,e.position))&&vi(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Ni(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Le(e,!0,-1));return}if(e.position<e.length-1)ye(e,"end of the stream or a document separator is expected");else return}function Lp(e,t){e=String(e),t=t||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
61
- `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new AB(e,t),r=e.indexOf("\0");for(r!==-1&&(o.position=r,ye(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)MB(o);return o.documents}function FB(e,t,o){t!==null&&typeof t=="object"&&typeof o>"u"&&(o=t,t=null);var r=Lp(e,o);if(typeof t!="function")return r;for(var i=0,a=r.length;i<a;i+=1)t(r[i])}function LB(e,t){var o=Lp(e,t);if(o.length!==0){if(o.length===1)return o[0];throw new et("expected a single document in the stream, but found more")}}var UB=FB,KB=LB,Up={loadAll:UB,load:KB},Kp=Object.prototype.toString,jp=Object.prototype.hasOwnProperty,$l=65279,jB=9,Lo=10,GB=13,qB=32,zB=33,HB=34,Bl=35,YB=37,WB=38,XB=39,ZB=42,Gp=44,JB=45,Si=58,QB=61,eV=62,tV=63,nV=64,qp=91,zp=93,oV=96,Hp=123,rV=124,Yp=125,Xe={};Xe[0]="\\0",Xe[7]="\\a",Xe[8]="\\b",Xe[9]="\\t",Xe[10]="\\n",Xe[11]="\\v",Xe[12]="\\f",Xe[13]="\\r",Xe[27]="\\e",Xe[34]='\\"',Xe[92]="\\\\",Xe[133]="\\N",Xe[160]="\\_",Xe[8232]="\\L",Xe[8233]="\\P";var iV=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],aV=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function lV(e,t){var o,r,i,a,l,s,c;if(t===null)return{};for(o={},r=Object.keys(t),i=0,a=r.length;i<a;i+=1)l=r[i],s=String(t[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&jp.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function sV(e){var t,o,r;if(t=e.toString(16).toUpperCase(),e<=255)o="x",r=2;else if(e<=65535)o="u",r=4;else if(e<=4294967295)o="U",r=8;else throw new et("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+qe.repeat("0",r-t.length)+t}var cV=1,Uo=2;function dV(e){this.schema=e.schema||Tl,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=qe.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=lV(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==='"'?Uo:cV,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 Wp(e,t){for(var o=qe.repeat(" ",t),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
53
+ `,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!At(u)&&u!==0;)u=e.input.charCodeAt(++e.position);Xt(e,o,e.position,!1)}return!0}function kp(e,n){var o,r=e.tag,i=e.anchor,a=[],l,s=!1,c;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=a),c=e.input.charCodeAt(e.position);c!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,ye(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!tt(l))));){if(s=!0,e.position++,Fe(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,Zn(e,n,up,!1,!0),a.push(e.result),Fe(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)ye(e,"bad indentation of a sequence entry");else if(e.lineIndent<n)break}return s?(e.tag=r,e.anchor=i,e.kind="sequence",e.result=a,!0):!1}function q$(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,b=null,g=!1,_=!1,w;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=u),w=e.input.charCodeAt(e.position);w!==0;){if(!g&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,ye(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(w===63||w===58)&&tt(r))w===63?(g&&(Xn(e,u,p,m,h,null,l,s,c),m=h=b=null),_=!0,g=!0,i=!0):g?(g=!1,i=!0):ye(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,w=r;else{if(l=e.line,s=e.lineStart,c=e.position,!Zn(e,o,dp,!1,!0))break;if(e.line===a){for(w=e.input.charCodeAt(e.position);wn(w);)w=e.input.charCodeAt(++e.position);if(w===58)w=e.input.charCodeAt(++e.position),tt(w)||ye(e,"a whitespace character is expected after the key-value separator within a block mapping"),g&&(Xn(e,u,p,m,h,null,l,s,c),m=h=b=null),_=!0,g=!1,i=!1,m=e.tag,h=e.result;else if(_)ye(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=f,!0}else if(_)ye(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=d,e.anchor=f,!0}if((e.line===a||e.lineIndent>n)&&(g&&(l=e.line,s=e.lineStart,c=e.position),Zn(e,n,gi,!0,i)&&(g?h=e.result:b=e.result),g||(Xn(e,u,p,m,h,b,l,s,c),m=h=b=null),Fe(e,!0,-1),w=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&w!==0)ye(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return g&&Xn(e,u,p,m,h,null,l,s,c),_&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),_}function z$(e){var n,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&ye(e,"duplication of a tag property"),l=e.input.charCodeAt(++e.position),l===60?(o=!0,l=e.input.charCodeAt(++e.position)):l===33?(r=!0,i="!!",l=e.input.charCodeAt(++e.position)):i="!",n=e.position,o){do l=e.input.charCodeAt(++e.position);while(l!==0&&l!==62);e.position<e.length?(a=e.input.slice(n,e.position),l=e.input.charCodeAt(++e.position)):ye(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!tt(l);)l===33&&(r?ye(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),pp.test(i)||ye(e,"named tag handle cannot contain such characters"),r=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(n,e.position),B$.test(a)&&ye(e,"tag suffix cannot contain flow indicator characters")}a&&!mp.test(a)&&ye(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{ye(e,"tag name is malformed: "+a)}return o?e.tag=a:Wt.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:ye(e,'undeclared tag handle "'+i+'"'),!0}function H$(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&ye(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!tt(o)&&!Yn(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&ye(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function Y$(e){var n,o,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),n=e.position;r!==0&&!tt(r)&&!Yn(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&ye(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),Wt.call(e.anchorMap,o)||ye(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Fe(e,!0,-1),!0}function Zn(e,n,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,h,b,g;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=gi===o||up===o,r&&Fe(e,!0,-1)&&(d=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;z$(e)||H$(e);)Fe(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||gi===o)&&(mi===o||dp===o?b=n:b=n+1,g=e.position-e.lineStart,c===1?s&&(kp(e,g)||q$(e,g,b))||j$(e,b)?f=!0:(l&&G$(e,b)||U$(e,b)||K$(e,b)?f=!0:Y$(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&ye(e,"alias node should not have any properties")):F$(e,b,mi===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&kp(e,g))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&ye(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),u=0,p=e.implicitTypes.length;u<p;u+=1)if(h=e.implicitTypes[u],h.resolve(e.result)){e.result=h.construct(e.result),e.tag=h.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(Wt.call(e.typeMap[e.kind||"fallback"],e.tag))h=e.typeMap[e.kind||"fallback"][e.tag];else for(h=null,m=e.typeMap.multi[e.kind||"fallback"],u=0,p=m.length;u<p;u+=1)if(e.tag.slice(0,m[u].tag.length)===m[u].tag){h=m[u];break}h||ye(e,"unknown tag !<"+e.tag+">"),e.result!==null&&h.kind!==e.kind&&ye(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+h.kind+'", not "'+e.kind+'"'),h.resolve(e.result,e.tag)?(e.result=h.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):ye(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function W$(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&&(Fe(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(a=!0,l=e.input.charCodeAt(++e.position),o=e.position;l!==0&&!tt(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&ye(e,"directive name must not be less than one character in length");l!==0;){for(;wn(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!At(l));break}if(At(l))break;for(o=e.position;l!==0&&!tt(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&kl(e),Wt.call(wp,r)?wp[r](e,r,i):hi(e,'unknown document directive "'+r+'"')}if(Fe(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,Fe(e,!0,-1)):a&&ye(e,"directives end mark is expected"),Zn(e,e.lineIndent-1,gi,!1,!0),Fe(e,!0,-1),e.checkLineBreaks&&$$.test(e.input.slice(n,e.position))&&hi(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&yi(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Fe(e,!0,-1));return}if(e.position<e.length-1)ye(e,"end of the stream or a document separator is expected");else return}function Cp(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
54
+ `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new L$(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,ye(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)W$(o);return o.documents}function X$(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=Cp(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function Z$(e,n){var o=Cp(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new Qe("expected a single document in the stream, but found more")}}var J$=X$,Q$=Z$,Np={loadAll:J$,load:Q$},vp=Object.prototype.toString,Sp=Object.prototype.hasOwnProperty,Nl=65279,eB=9,Ro=10,tB=13,nB=32,oB=33,rB=34,vl=35,iB=37,aB=38,lB=39,sB=42,xp=44,cB=45,_i=58,dB=61,uB=62,fB=63,pB=64,Ap=91,Ip=93,mB=96,Tp=123,gB=124,Pp=125,Xe={};Xe[0]="\\0",Xe[7]="\\a",Xe[8]="\\b",Xe[9]="\\t",Xe[10]="\\n",Xe[11]="\\v",Xe[12]="\\f",Xe[13]="\\r",Xe[27]="\\e",Xe[34]='\\"',Xe[92]="\\\\",Xe[133]="\\N",Xe[160]="\\_",Xe[8232]="\\L",Xe[8233]="\\P";var hB=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],yB=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function _B(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&&Sp.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function bB(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 Qe("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+qe.repeat("0",r-n.length)+n}var wB=1,Do=2;function EB(e){this.schema=e.schema||wl,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=qe.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=_B(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==='"'?Do:wB,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 Op(e,n){for(var o=qe.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
62
55
  `,r),i===-1?(l=e.slice(r),r=s):(l=e.slice(r,i+1),r=i+1),l.length&&l!==`
63
- `&&(a+=o),a+=l;return a}function Vl(e,t){return`
64
- `+qe.repeat(" ",e.indent*t)}function uV(e,t){var o,r,i;for(o=0,r=e.implicitTypes.length;o<r;o+=1)if(i=e.implicitTypes[o],i.resolve(t))return!0;return!1}function xi(e){return e===qB||e===jB}function Ko(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==$l||65536<=e&&e<=1114111}function Xp(e){return Ko(e)&&e!==$l&&e!==GB&&e!==Lo}function Zp(e,t,o){var r=Xp(e),i=r&&!xi(e);return(o?r:r&&e!==Gp&&e!==qp&&e!==zp&&e!==Hp&&e!==Yp)&&e!==Bl&&!(t===Si&&!i)||Xp(t)&&!xi(t)&&e===Bl||t===Si&&i}function fV(e){return Ko(e)&&e!==$l&&!xi(e)&&e!==JB&&e!==tV&&e!==Si&&e!==Gp&&e!==qp&&e!==zp&&e!==Hp&&e!==Yp&&e!==Bl&&e!==WB&&e!==ZB&&e!==zB&&e!==rV&&e!==QB&&e!==eV&&e!==XB&&e!==HB&&e!==YB&&e!==nV&&e!==oV}function pV(e){return!xi(e)&&e!==Si}function jo(e,t){var o=e.charCodeAt(t),r;return o>=55296&&o<=56319&&t+1<e.length&&(r=e.charCodeAt(t+1),r>=56320&&r<=57343)?(o-55296)*1024+r-56320+65536:o}function Jp(e){var t=/^\n* /;return t.test(e)}var Qp=1,Rl=2,em=3,tm=4,to=5;function mV(e,t,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,g=-1,_=fV(jo(e,0))&&pV(jo(e,e.length-1));if(t||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=jo(e,c),!Ko(d))return to;_=_&&Zp(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=jo(e,c),d===Lo)u=!0,m&&(p=p||c-g-1>r&&e[g+1]!==" ",g=c);else if(!Ko(d))return to;_=_&&Zp(d,f,s),f=d}p=p||m&&c-g-1>r&&e[g+1]!==" "}return!u&&!p?_&&!l&&!i(e)?Qp:a===Uo?to:Rl:o>9&&Jp(e)?to:l?a===Uo?to:Rl:p?tm:em}function gV(e,t,o,r,i){e.dump=function(){if(t.length===0)return e.quotingType===Uo?'""':"''";if(!e.noCompatMode&&(iV.indexOf(t)!==-1||aV.test(t)))return e.quotingType===Uo?'"'+t+'"':"'"+t+"'";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 uV(e,d)}switch(mV(t,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case Qp:return t;case Rl:return"'"+t.replace(/'/g,"''")+"'";case em:return"|"+nm(t,e.indent)+om(Wp(t,a));case tm:return">"+nm(t,e.indent)+om(Wp(hV(t,l),a));case to:return'"'+yV(t)+'"';default:throw new et("impossible error: invalid scalar style")}}()}function nm(e,t){var o=Jp(e)?String(t):"",r=e[e.length-1]===`
56
+ `&&(a+=o),a+=l;return a}function Sl(e,n){return`
57
+ `+qe.repeat(" ",e.indent*n)}function kB(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 bi(e){return e===nB||e===eB}function Mo(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==Nl||65536<=e&&e<=1114111}function $p(e){return Mo(e)&&e!==Nl&&e!==tB&&e!==Ro}function Bp(e,n,o){var r=$p(e),i=r&&!bi(e);return(o?r:r&&e!==xp&&e!==Ap&&e!==Ip&&e!==Tp&&e!==Pp)&&e!==vl&&!(n===_i&&!i)||$p(n)&&!bi(n)&&e===vl||n===_i&&i}function CB(e){return Mo(e)&&e!==Nl&&!bi(e)&&e!==cB&&e!==fB&&e!==_i&&e!==xp&&e!==Ap&&e!==Ip&&e!==Tp&&e!==Pp&&e!==vl&&e!==aB&&e!==sB&&e!==oB&&e!==gB&&e!==dB&&e!==uB&&e!==lB&&e!==rB&&e!==iB&&e!==pB&&e!==mB}function NB(e){return!bi(e)&&e!==_i}function Lo(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 Vp(e){var n=/^\n* /;return n.test(e)}var Rp=1,xl=2,Dp=3,Mp=4,Jn=5;function vB(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,h=-1,b=CB(Lo(e,0))&&NB(Lo(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Lo(e,c),!Mo(d))return Jn;b=b&&Bp(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Lo(e,c),d===Ro)u=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!Mo(d))return Jn;b=b&&Bp(d,f,s),f=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!u&&!p?b&&!l&&!i(e)?Rp:a===Do?Jn:xl:o>9&&Vp(e)?Jn:l?a===Do?Jn:xl:p?Mp:Dp}function SB(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Do?'""':"''";if(!e.noCompatMode&&(hB.indexOf(n)!==-1||yB.test(n)))return e.quotingType===Do?'"'+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 kB(e,d)}switch(vB(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case Rp:return n;case xl:return"'"+n.replace(/'/g,"''")+"'";case Dp:return"|"+Lp(n,e.indent)+Fp(Op(n,a));case Mp:return">"+Lp(n,e.indent)+Fp(Op(xB(n,l),a));case Jn:return'"'+AB(n)+'"';default:throw new Qe("impossible error: invalid scalar style")}}()}function Lp(e,n){var o=Vp(e)?String(n):"",r=e[e.length-1]===`
65
58
  `,i=r&&(e[e.length-2]===`
66
59
  `||e===`
67
60
  `),a=i?"+":r?"":"-";return o+a+`
68
- `}function om(e){return e[e.length-1]===`
69
- `?e.slice(0,-1):e}function hV(e,t){for(var o=/(\n+)([^\n]*)/g,r=function(){var d=e.indexOf(`
70
- `);return d=d!==-1?d:e.length,o.lastIndex=d,rm(e.slice(0,d),t)}(),i=e[0]===`
61
+ `}function Fp(e){return e[e.length-1]===`
62
+ `?e.slice(0,-1):e}function xB(e,n){for(var o=/(\n+)([^\n]*)/g,r=function(){var d=e.indexOf(`
63
+ `);return d=d!==-1?d:e.length,o.lastIndex=d,Up(e.slice(0,d),n)}(),i=e[0]===`
71
64
  `||e[0]===" ",a,l;l=o.exec(e);){var s=l[1],c=l[2];a=c[0]===" ",r+=s+(!i&&!a&&c!==""?`
72
- `:"")+rm(c,t),i=a}return r}function rm(e,t){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>t&&(a=l>i?l:s,c+=`
65
+ `:"")+Up(c,n),i=a}return r}function Up(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+=`
73
66
  `+e.slice(i,a),i=a+1),l=s;return c+=`
74
- `,e.length-i>t&&l>i?c+=e.slice(i,l)+`
75
- `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function yV(e){for(var t="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=jo(e,i),r=Xe[o],!r&&Ko(o)?(t+=e[i],o>=65536&&(t+=e[i+1])):t+=r||sV(o);return t}function _V(e,t,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)),(Ut(e,t,s,!1,!1)||typeof s>"u"&&Ut(e,t,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function im(e,t,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)),(Ut(e,t+1,c,!0,!0,!1,!0)||typeof c>"u"&&Ut(e,t+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=Vl(e,t)),e.dump&&Lo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function bV(e,t,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)),Ut(e,t,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Ut(e,t,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function wV(e,t,o,r){var i="",a=e.tag,l=Object.keys(o),s,c,d,f,u,p;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new et("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=Vl(e,t)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),Ut(e,t+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Lo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=Vl(e,t)),Ut(e,t+1,f,!0,u)&&(e.dump&&Lo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function am(e,t,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 t=="object"&&t instanceof s.instanceOf)&&(!s.predicate||s.predicate(t))){if(o?s.multi&&s.representName?e.tag=s.representName(t):e.tag=s.tag:e.tag="?",s.represent){if(c=e.styleMap[s.tag]||s.defaultStyle,Kp.call(s.represent)==="[object Function]")r=s.represent(t,c);else if(jp.call(s.represent,c))r=s.represent[c](t,c);else throw new et("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function Ut(e,t,o,r,i,a,l){e.tag=null,e.dump=o,am(e,o,!1)||am(e,o,!0);var s=Kp.call(e.dump),c=r,d;r&&(r=e.flowLevel<0||e.flowLevel>t);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&&t>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?(wV(e,t,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(bV(e,t,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&t>0?im(e,t-1,e.dump,i):im(e,t,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(_V(e,t,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&gV(e,e.dump,t,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new et("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(d=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?d="!"+d:d.slice(0,18)==="tag:yaml.org,2002:"?d="!!"+d.slice(18):d="!<"+d+">",e.dump=d+" "+e.dump)}return!0}function EV(e,t){var o=[],r=[],i,a;for(Dl(e,o,r),i=0,a=r.length;i<a;i+=1)t.duplicates.push(o[r[i]]);t.usedDuplicates=new Array(a)}function Dl(e,t,o){var r,i,a;if(e!==null&&typeof e=="object")if(i=t.indexOf(e),i!==-1)o.indexOf(i)===-1&&o.push(i);else if(t.push(e),Array.isArray(e))for(i=0,a=e.length;i<a;i+=1)Dl(e[i],t,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)Dl(e[r[i]],t,o)}function kV(e,t){t=t||{};var o=new dV(t);o.noRefs||EV(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),Ut(o,0,r,!0,!0)?o.dump+`
76
- `:""}var CV=kV,vV={dump:CV};function Ml(e,t){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+t+" instead, which is now safe by default.")}}var NV=He,SV=sp,xV=fp,Fl=yp,AV=_p,TV=Tl,IV=Up.load,PV=Up.loadAll,OV=vV.dump,$V=et,BV={binary:Cp,float:hp,map:up,null:pp,pairs:Np,set:Sp,timestamp:Ep,bool:mp,int:gp,merge:kp,omap:vp,seq:dp,str:cp},VV=Ml("safeLoad","load"),RV=Ml("safeLoadAll","loadAll"),DV=Ml("safeDump","dump"),lm={Type:NV,Schema:SV,FAILSAFE_SCHEMA:xV,JSON_SCHEMA:Fl,CORE_SCHEMA:AV,DEFAULT_SCHEMA:TV,load:IV,loadAll:PV,dump:OV,YAMLException:$V,types:BV,safeLoad:VV,safeLoadAll:RV,safeDump:DV};const sm=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
67
+ `,e.length-i>n&&l>i?c+=e.slice(i,l)+`
68
+ `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function AB(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=Lo(e,i),r=Xe[o],!r&&Mo(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||bB(o);return n}function IB(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)),(Ut(e,n,s,!1,!1)||typeof s>"u"&&Ut(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function Kp(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)),(Ut(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&Ut(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=Sl(e,n)),e.dump&&Ro===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function TB(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)),Ut(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Ut(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function PB(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 Qe("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=Sl(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),Ut(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Ro===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=Sl(e,n)),Ut(e,n+1,f,!0,u)&&(e.dump&&Ro===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function jp(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,vp.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(Sp.call(s.represent,c))r=s.represent[c](n,c);else throw new Qe("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function Ut(e,n,o,r,i,a,l){e.tag=null,e.dump=o,jp(e,o,!1)||jp(e,o,!0);var s=vp.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?(PB(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(TB(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?Kp(e,n-1,e.dump,i):Kp(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(IB(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&SB(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new Qe("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 OB(e,n){var o=[],r=[],i,a;for(Al(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function Al(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)Al(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)Al(e[r[i]],n,o)}function $B(e,n){n=n||{};var o=new EB(n);o.noRefs||OB(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),Ut(o,0,r,!0,!0)?o.dump+`
69
+ `:""}var BB=$B,VB={dump:BB};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 RB=He,DB=qf,MB=Wf,Tl=ep,LB=tp,FB=wl,UB=Np.load,KB=Np.loadAll,jB=VB.dump,GB=Qe,qB={binary:ap,float:Qf,map:Yf,null:Xf,pairs:sp,set:cp,timestamp:rp,bool:Zf,int:Jf,merge:ip,omap:lp,seq:Hf,str:zf},zB=Il("safeLoad","load"),HB=Il("safeLoadAll","loadAll"),YB=Il("safeDump","dump"),Gp={Type:RB,Schema:DB,FAILSAFE_SCHEMA:MB,JSON_SCHEMA:Tl,CORE_SCHEMA:LB,DEFAULT_SCHEMA:FB,load:UB,loadAll:KB,dump:jB,YAMLException:GB,types:qB,safeLoad:zB,safeLoadAll:HB,safeDump:YB};const qp=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
77
70
  - name: STATIC_INPUTS
78
71
  type: static
79
72
  values:
@@ -147,5 +140,5 @@ Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will
147
140
  type: exit
148
141
  input: API
149
142
  status: 200
150
- `},Symbol.toStringTag,{value:"Module"})),MV={class:"dk-code-editor"},FV={class:"examples-content"},LV={ref:"editor-root",class:"editor"},Ll="YAML Syntax",UV="datakit.insert-example",KV=we(n.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean},config:{}},emits:["change","error"],setup(e,{expose:t,emit:o}){const{t:r}=Re.createI18n("en-us",je),i=o,a=n.useTemplateRef("editor-root"),l=n.shallowRef(null);function s(c){const d=l.value,f=d==null?void 0:d.getModel();if(!d||!f)return;const u=sm[c];if(d.getValue()!==u){const p=f.getFullModelRange();d.pushUndoStop(),d.executeEdits(UV,[{range:p,text:u}]),d.pushUndoStop()}d.focus()}return n.onMounted(()=>{const c=Qo.editor.create(a.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});l.value=c,e.config&&Object.keys(e.config).length>0&&c.setValue(lm.dump(n.toRaw(e.config),{schema:Fl,noArrayIndent:!0})),c.onDidChangeModelContent(()=>{const d=c.getModel(),f=c.getValue()||"";try{const u=lm.load(f,{schema:Fl,json:!0});Qo.editor.setModelMarkers(d,Ll,[]),i("change",u)}catch(u){const{message:p,mark:m}=u,{line:g,column:_}=m||{line:0,column:0},h=p.split(`
151
- `)[0],b=[{startLineNumber:g+1,startColumn:_+1,endLineNumber:g+1,endColumn:_+2,message:h,severity:Qo.MarkerSeverity.Error,source:Ll}];Qo.editor.setModelMarkers(d,Ll,b),i("error",h)}})}),n.onBeforeUnmount(()=>{var c;(c=l.value)==null||c.dispose()}),t({setExampleCode:s}),(c,d)=>(n.openBlock(),n.createElementBlock("div",MV,[n.createVNode(n.unref(Ie.KAlert),{class:"examples"},{icon:n.withCtx(()=>[n.createVNode(n.unref(Ee.SparklesIcon))]),default:n.withCtx(()=>[n.createElementVNode("div",FV,[n.createTextVNode(n.toDisplayString(n.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(n.openBlock(),n.createElementBlock(n.Fragment,null,n.renderList(sm,(f,u)=>n.createVNode(n.unref(Ie.KButton),{key:u,appearance:"secondary",size:"small",onClick:p=>s(u)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(r)(`plugins.free-form.datakit.examples.${u}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),n.createElementVNode("div",LV,null,512)]))}}),[["__scopeId","data-v-d63d9bf4"]]),jV=["innerHTML"],GV=n.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t}=Re.createI18n("en-us",je),o=e,r=n.inject(rs.DATAKIT_ENABLE_FLOW_EDITOR,!1),{editorMode:i}=Ea(),a=n.computed(()=>r?i.value:"code"),l={flow:Ee.DesignIcon,code:Ee.CodeblockIcon},s=[{label:t("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:t("plugins.free-form.datakit.code_editor.mode"),value:"code"}],c=n.computed(()=>{switch(i.value){case"code":return t("plugins.free-form.datakit.description_code");case"flow":return t("plugins.free-form.datakit.description_flow");default:return""}}),d=n.ref({...o.model.config});function f(m){for(const g in m.config)g!=="nodes"&&(d.value[g]=m.config[g])}function u(m){var g;o.onFormChange({config:m}),(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!0}),d.value=m}function p(m){var g;(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!1,error:m})}return(m,g)=>(n.openBlock(),n.createBlock(hE,n.mergeProps(o,{class:"dk-form"}),n.createSlots({default:n.withCtx(_=>[n.createVNode(mt,n.mergeProps(_,{data:{config:d.value},tag:"div",onChange:f}),{default:n.withCtx(()=>[a.value==="flow"?(n.openBlock(),n.createBlock(b$,{key:0,config:d.value,editing:o.isEditing,onChange:u},null,8,["config","editing"])):a.value==="code"?(n.openBlock(),n.createBlock(KV,{key:1,class:"code-editor",config:d.value,editing:o.isEditing,onChange:u,onError:p},null,8,["config","editing"])):n.createCommentVNode("",!0)]),_:2},1040,["data"])]),"plugin-config-description":n.withCtx(()=>[n.createElementVNode("span",{innerHTML:c.value},null,8,jV)]),_:2},[n.unref(r)?{name:"plugin-config-extra",fn:n.withCtx(()=>[n.createVNode(n.unref(Ie.KSegmentedControl),{modelValue:n.unref(i),"onUpdate:modelValue":g[0]||(g[0]=_=>n.isRef(i)?i.value=_:null),options:s},{"option-label":n.withCtx(({option:_})=>[(n.openBlock(),n.createBlock(n.resolveDynamicComponent(l[_.value]))),n.createTextVNode(" "+n.toDisplayString(_.label),1)]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1040))}}),cm=e=>{if(!(!e||typeof e!="object"))for(const[t,o]of Object.entries(e))typeof o=="string"&&(e[t]=o.split(/\s*,\s*/).filter(Boolean))},dm=e=>{if(!(!e||typeof e!="object"))for(const[t,o]of Object.entries(e))Array.isArray(o)&&(e[t]=o.join(", "))},qV=we(n.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:t}){const o=t,{i18n:{t:r}}=Oe.useI18n(),l={prepareFormData:c=>{var f,u;const d=Tn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{dm(p.headers),dm(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=Tn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{cm(p.headers),cm(p.query)}),o("change",d)};return(c,d)=>(n.openBlock(),n.createBlock(mt,{class:"ai-mcp-config-form",config:l,data:c.data,schema:c.schema,tag:"div",onChange:s},{default:n.withCtx(()=>[n.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{tools:n.withCtx(({name:f})=>[n.createVNode(yr,{appearance:"tabs","item-label":(u,p)=>n.unref(r)("plugins.free-form.ai-mcp.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),n.createVNode(fa)]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-7cb4b052"]]),um=Object.freeze(Object.defineProperty({__proto__:null,AIMcpForm:n.defineComponent({__name:"AIMcpForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const t=e,o=n.useSlots();return n.provide(ve.AUTOFILL_SLOT,o==null?void 0:o[ve.AUTOFILL_SLOT_NAME]),(r,i)=>(n.openBlock(),n.createBlock(pa,n.normalizeProps(n.guardReactiveProps(t)),{default:n.withCtx(a=>[n.createVNode(qV,n.normalizeProps(n.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:GV,RequestCalloutForm:_w,ServiceProtectionForm:uE},Symbol.toStringTag,{value:"Module"})),zV={class:"kong-ui-entities-plugin-form"},HV={key:1,class:"entity-form"},YV={class:"plugin-config-empty-state"},WV=we(n.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:t}){var J,ne;const o=Object.keys(ve.sharedForms),r=Object.keys(um);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=t,a=e,{axiosInstance:l}=ce.useAxios((J=a.config)==null?void 0:J.axiosRequestConfig),{parseSchema:s}=Oe.useSchemas({entityId:((ne=a.entityMap.focusedEntity)==null?void 0:ne.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}=Oe.usePluginHelpers(),m=Oe.useExperimentalFreeForms(),{objectsAreEqual:g}=ce.useHelpers(),{i18n:{t:_}}=Se(),h=(z,Z)=>{let ie=`${a.config.apiBaseUrl}${Be.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?ie=ie.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(ie=ie.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),ie=ie.replace(/{entity}/gi,z),ie=ie.replace(/{id}/gi,Z),ie},b=z=>{let Z=`${a.config.apiBaseUrl}${Be.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?Z=Z.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(Z=Z.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),Z=Z.replace(/{entity}/gi,z),Z},w=(z,Z)=>{const ie=h(z,Z);return l.get(ie)},y=(z,Z)=>{const ie=b(z);return a.config.app==="konnect"?l.get(ie).then(oe=>{const{data:{data:ue}}=oe;if(delete Z.size,delete Z.offset,ue.length&&Object.keys(Z).length===1){const de=Object.keys(Z)[0],Y=ue.filter(te=>te[de]?!!te[de].toLowerCase().includes(Z[de].toLowerCase()):!1);oe.data.data=Y}return oe}):l.get(ie,{params:Z})};n.provide(ve.FORMS_API_KEY,{getOne:w,getAll:y}),n.provide(ve.FORMS_CONFIG,a.config);const v=n.ref(""),k=n.ref(""),E=n.ref(null),R=n.ref({}),O=n.reactive({}),T=n.reactive({}),q=n.computed(()=>{var z;return(z=E.value)==null?void 0:z.options}),j=n.ref(!1),A=n.ref(),I=(z,Z)=>{j.value=z??"",A.value=Z},C=z=>{var Z;(Z=A.value)==null||Z.call(A,z),j.value=!1},D=()=>{var Y,te;const z={...a.schema},Z=T,ie=O,oe=Object.keys(Z),ue={};if(!u(R.value))for(let N=0;N<((te=(Y=R.value)==null?void 0:Y.fields)==null?void 0:te.length);N++)z[R.value.fields[N].model]=R.value.fields[N];ve.customFields.forEach(N=>{z[N]&&(z[N].fields.forEach(S=>{S.fields&&S.fields.forEach(x=>{z[x.model]=x}),S.model&&(z[S.model]=S)}),delete z[N])}),oe.forEach(N=>{var K;if(!z[N]){N==="partials"&&(ue[N]=Z[N]);return}const S=z[N];let x=Z[N];const V=ie[N],M=Array.isArray(x)?"array":typeof x,X=S?S.valueType:null,Q=S?S.valueArrayType:null,U=S?S.transform:null;if(x==null&&V==null&&!S.submitWhenNull)return;if(S){if(X&&M!==X)switch(X){case"array":M==="string"&&x.length&&(x=x.split(",").map(le=>{if(le=le.trim(),Q==="string")return String(le);if(Q==="number")return Number(le);if(Q==="boolean"){if(typeof le=="string")return le.toLowerCase()==="true"||le==="1";if(typeof le=="number")return le===1}return le})),(!x||!x.length)&&(x=S.submitWhenNull?null:[]);break;case"number":x=Number(x);break;case"boolean":M==="string"&&(x=x.toLowerCase()==="true"||x==="1"),M==="number"&&(x=x===1);break;case"string":x=x==null?"":String(x);break}else X==="array"&&(!x||!x.length?x=S.submitWhenNull?null:[]:((K=S.inputAttributes)==null?void 0:K.type)==="number"&&(x=x.map(le=>Number(le))));if(S.type==="array"&&S.nestedFields){const le=se=>{Object.keys(se).forEach(ae=>{se[ae]&&typeof se[ae]=="object"&&!Array.isArray(se[ae])&&se[ae]!==null?le(se[ae]):(se[ae]===void 0||se[ae]===null||typeof se[ae]=="number"&&isNaN(se[ae])||typeof se[ae]=="string"&&se[ae].trim().length===0)&&delete se[ae]})};x&&typeof x=="object"&&le(x)}S.type==="object-advanced"&&S.fields&&x!==null&&(Object.entries(x).length===0?x=null:Object.keys(x).forEach(le=>{Array.isArray(x[le])||(x[le]=x[le].split(","))}))}let W=c(N);if(S.fieldNameHasDashes){const[le,...se]=W.split(".").reverse();W=[le.replace(/_/g,"-"),...se].reverse().join(".")}if(X==="object-expand"){let le;[W,le]=W.split(".");let se={};ue[W]&&(se=ue[W]),se[le]=x,x=se}V!==void 0&&x===""&&x!==V?ue[W]=X==="object"?{}:null:S.type==="checklist"&&x===""?ue[W]=[]:x!==""&&(ue[W]=x),ue[W]=U?U(x):ue[W],p(W,ue)});const de=d(ue);return k.value&&Object.assign(de,$.value),de},P=(z,Z={})=>{f(T,Z,z,a.editing),i("model-updated",{model:T,originalModel:O,data:D()})},L=(z,Z)=>{var ue;const ie={[Z]:z};typeof((ue=a.schema[Z])==null?void 0:ue.modelTransformer)=="function"&&(ie[Z]=a.schema[Z].modelTransformer(z));const oe=Object.assign({},T,ie);Object.assign(T,oe),i("model-updated",{model:T,originalModel:O,data:D()})},F=z=>{i("validity-change",z)},B=(z,Z)=>{Object.keys(z).forEach(ie=>{var te,N;let oe=Z?`${Z}-${ie}`:ie,ue=a.schema[oe];if(!ue){const S=Z?`${Z}-${ie.replace(/-/g,"_")}`:ie.replace(/-/g,"_");(te=a.schema[S])!=null&&te.fieldNameHasDashes&&(oe=S,ue=a.schema[oe]),Z&&((N=a.schema[Z])==null?void 0:N.keyFromObject)===ie&&(oe=Z,ue=a.schema[oe])}const de=z[ie],Y=typeof de;if(ue&&ue.type==="object-advanced"&&!de){T[oe]={},O[oe]={};return}if(Array.isArray(de)){T[oe]=JSON.parse(JSON.stringify(de)),O[oe]=JSON.parse(JSON.stringify(de));return}if(Y==="object"&&de&&!de.length)return B(de,oe);if(Y==="object"&&de&&de.length&&ue.type==="input"){T[oe]=de.join(", "),O[oe]=de.join(", ");return}T[oe]=de,O[oe]=de}),i("model-updated",{model:T,originalModel:O,data:D()})},$=n.shallowRef(a.record),G=z=>{$.value=z,i("model-updated",{model:{...T,...z},originalModel:O,data:D()})},ee=n.ref(!0),re=()=>{var z;if(a.record&&a.schema&&(B({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)&&B({consumer_id:a.record.consumer_id||a.record.consumer}),B(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)&&B({service_id:a.record.service_id||a.record.service,route_id:a.record.route_id||a.record.route,consumer_id:a.record.consumer_id||a.record.consumer,consumer_group_id:a.record.consumer_group_id||a.record.consumer_group}),a.record.partials&&P("redis",{partials:a.record.partials}),k.value?G(a.record):B(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const Z={};for(const ie in a.entityMap){const oe=a.entityMap[ie].id,ue=a.entityMap[ie].idField,de=ue==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(ue).replace("_","-"));Object.prototype.hasOwnProperty.call(T,de)&&(Z[de]=oe)}B(Z)}if((z=a.entityMap.consumer)!=null&&z.id&&a.schema&&a.credential){const Z={};Object.prototype.hasOwnProperty.call(T,"consumer")&&(Z.consumer=a.entityMap.consumer.id),B(Z)}ee.value=!1};return n.watch(ee,z=>{i("loading",z)}),n.watch(()=>a.schema,(z,Z)=>{var oe,ue;if(g(z||{},Z||{}))return;const ie=s(z);Object.assign(T,ie.model),R.value={fields:(ue=(oe=R.value)==null?void 0:oe.fields)==null?void 0:ue.map(de=>({...de,disabled:de.disabled||!1}))},Object.assign(O,JSON.parse(JSON.stringify(ie.model))),k.value=os(ie.model.name,m),v.value=ve.getSharedFormName(ie.model.name),re()},{immediate:!0,deep:!0}),n.onBeforeMount(()=>{var z,Z;E.value=s(a.schema),Object.assign(T,((z=E.value)==null?void 0:z.model)||{}),R.value=((Z=E.value)==null?void 0:Z.schema)||{},re()}),(z,Z)=>{var oe;const ie=n.resolveComponent("KSkeleton");return n.openBlock(),n.createElementBlock(n.Fragment,null,[n.createElementVNode("div",zV,[ee.value?(n.openBlock(),n.createBlock(ie,{key:0,type:"form"})):T.id&&e.editing||!e.editing?(n.openBlock(),n.createElementBlock("div",HV,[k.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(um[k.value]),{key:0,"form-model":T,"form-options":q.value,"form-schema":R.value,"is-editing":e.editing,model:e.record,"on-form-change":G,"on-model-updated":L,"on-validity-change":F,schema:e.rawSchema,onGlobalAction:Z[0]||(Z[0]=(ue,de)=>z.$emit("globalAction",ue,de))},n.createSlots({_:2},[e.enableVaultSecretPicker?{name:n.unref(ve.AUTOFILL_SLOT_NAME),fn:n.withCtx(ue=>[ue.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Jo.VaultSecretPickerProvider),n.mergeProps({key:0},ue,{onOpen:I}),null,16)):n.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):v.value?(n.openBlock(),n.createBlock(n.resolveDynamicComponent(n.unref(ve.sharedForms)[v.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":T,"form-options":q.value,"form-schema":R.value,"is-editing":e.editing,"on-model-updated":L,"on-partial-toggled":P,"show-new-partial-modal":ue=>z.$emit("showNewPartialModal",ue)},n.createSlots({_:2},[e.enableVaultSecretPicker?{name:n.unref(ve.AUTOFILL_SLOT_NAME),fn:n.withCtx(ue=>[ue.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Jo.VaultSecretPickerProvider),n.mergeProps({key:0},ue,{onOpen:I}),null,16)):n.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(n.openBlock(),n.createBlock(n.unref(ve.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:T,options:q.value,schema:R.value,onModelUpdated:L,onPartialToggled:P,onRefreshModel:D,onShowNewPartialModal:Z[1]||(Z[1]=ue=>z.$emit("showNewPartialModal",ue))},n.createSlots({"plugin-config-empty-state":n.withCtx(()=>[n.createElementVNode("div",YV,n.toDisplayString(n.unref(_)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(oe=n.unref(Tt)[T.name])!=null&&oe.fieldRules&&(a.config.isNewOtelSchema||T.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:n.withCtx(()=>[n.createVNode(ag,{rules:n.unref(Tt)[T.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:n.unref(ve.AUTOFILL_SLOT_NAME),fn:n.withCtx(ue=>[ue.schema.referenceable?(n.openBlock(),n.createBlock(n.unref(Jo.VaultSecretPickerProvider),n.mergeProps({key:0},ue,{onOpen:I}),null,16)):n.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):n.createCommentVNode("",!0)]),n.createVNode(n.unref(Jo.VaultSecretPicker),{config:a.config,setup:j.value,onCancel:Z[2]||(Z[2]=()=>j.value=!1),onProceed:C},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-780e65cb"]]),XV={key:1},ZV=n.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(t,o)=>e.teleportTarget?(n.openBlock(),n.createBlock(n.Teleport,{key:0,to:e.teleportTarget},[n.renderSlot(t.$slots,"default")],8,["to"])):(n.openBlock(),n.createElementBlock("div",XV,[n.renderSlot(t.$slots,"default")]))}}),JV={class:"kong-ui-entities-plugin-form-container"},QV={key:0},eR={class:"plugin-form-actions"},tR=we(n.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:t}){var Q;const o=t,r=e,i=no.useRouter(),{i18n:{t:a}}=Oe.useI18n(),{customSchemas:l,typedefs:s}=Oe.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Oe.usePluginHelpers(),{getMessageFromError:d}=ce.useErrors(),{capitalize:f}=ce.useStringHelpers(),{objectsAreEqual:u}=ce.useHelpers(),{axiosInstance:p}=ce.useAxios((Q=r.config)==null?void 0:Q.axiosRequestConfig),m=n.ref(!1),g=n.computed(()=>!!r.pluginId),_=n.computed(()=>r.pluginId?ce.EntityBaseFormType.Edit:ce.EntityBaseFormType.Create),h=n.ref(void 0),b=n.ref(void 0),w=n.computed(()=>!!(r.credential&&r.config.entityId)),y=n.ref(void 0),v=n.ref({}),k=n.ref(),E=n.ref();n.provide(Dc,{redisType:k,redisPath:E,isEditing:g.value});const R=n.ref(!1),O=n.reactive({enabled:!0,protocols:[],tags:[]}),T=n.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),q=n.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&q.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const j=n.ref(""),A=n.computed(()=>{if(w.value){let U=Be.form[r.config.app].credential[_.value];return U=U.replace(/{resourceEndpoint}/gi,P.value),U}return r.config.entityType&&r.config.entityId?Be.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):Be.form[r.config.app].edit.all}),I=()=>{m.value=!m.value},C=n.computed(()=>{var ae,_e,be,Ce,xe,pe,fe,ot;const U=r.config.entityType==="consumers"&&r.config.entityId||((_e=(ae=y.value)==null?void 0:ae.consumer)==null?void 0:_e.id),W=r.config.entityType==="consumer_groups"&&r.config.entityId||((Ce=(be=y.value)==null?void 0:be.consumer_group)==null?void 0:Ce.id),K=r.config.entityType==="services"&&r.config.entityId||((pe=(xe=y.value)==null?void 0:xe.service)==null?void 0:pe.id),le=r.config.entityType==="routes"&&r.config.entityId||((ot=(fe=y.value)==null?void 0:fe.route)==null?void 0:ot.id);if(!(U||W||K||le))return{global:{entity:H.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const se={};return K&&(se.service={entity:H.PluginScope.SERVICE,entityEndpoint:"services",id:K,idField:Xt.SERVICE}),le&&(se.route={entity:H.PluginScope.ROUTE,entityEndpoint:"routes",id:le,idField:Xt.ROUTE}),U&&(se.consumer={entity:H.PluginScope.CONSUMER,entityEndpoint:"consumers",id:U,idField:Xt.CONSUMER}),W&&(se.consumer_group={entity:H.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:W,idField:Xt.CONSUMER_GROUP}),r.config.entityType&&(se.focusedEntity={entity:H.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:Xt[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),se}),D=n.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||_.value===ce.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}),P=n.computed(()=>{var K;const U=r.developer?"developers":"consumers",W=((K=Sn[r.pluginType])==null?void 0:K.endpoint)||"/plugins";return`${U}/${r.config.entityId}${r.developer?"/credentials":""}${W}`}),L=U=>{const W=Array.from(new Set(U.map(K=>typeof K)));return W.length>1?"string":W[0]},F=(U,W,K,le)=>{var be,Ce;let se=W&&W.fields||[];const ae=l[r.pluginType],_e=(Ce=(be=Sn[r.pluginType])==null?void 0:be.schema)==null?void 0:Ce.fields;return Array.isArray(se)&&(se=se.reduce((xe,pe)=>{const fe=Object.keys(pe)[0];return fe.match(/-/g)?xe[fe.replace(/-/g,"_")]={...pe[fe],fieldNameHasDashes:!0}:xe[fe]=pe[fe],xe},{})),Object.keys(se).sort().forEach(xe=>{var Go,qo,zo,Ho,Yo,Wo,Xo;const pe=se[xe];pe.type==="set"&&(pe.type="array");const fe=U?`${U}-${xe}`:`${xe}`;if((Go=ae==null?void 0:ae.fieldsToDelete)!=null&&Go.includes(fe)){bc(K,fe);return}if(Object.prototype.hasOwnProperty.call(pe,"overwrite")||pe.hidden)return;if(pe.type==="table")return F(fe,pe.schema,K);if(pe.fields)return le&&pe.type==="record"?(K[fe]={type:"object",model:xe,schema:{fields:Object.values(F(fe,pe,{},!0))}},K):F(fe,pe,K);if(K[fe]={id:fe,model:xe},K[fe].type=pe.type==="boolean"?"checkbox":"input",K[fe].required=pe.required,K[fe].referenceable=pe.referenceable,fe.startsWith("config-"))if(!le&&pe.type==="array"&&(j.value=fe),le&&j.value&&fe.startsWith(j.value)){const ke=fe.slice(j.value.length+1);K[fe].label=ke.split("-").map(c).join(".")}else K[fe].label=c(fe);if((U==="config"||U.startsWith("config-"))&&(qo=se[xe])!=null&&qo.description&&(K[fe].help=Zo.marked.parse(se[xe].description,{mangle:!1,headerIds:!1})),pe.type==="map"){if(K[fe].type="object-advanced",K[fe].values=pe.values,pe.values.type==="array"){const{type:ke}=pe.values.elements||{};K[fe].schema={fields:[{schema:{fields:[{...Pe,model:fe,valueArrayType:ke==="integer"?"number":ke||"string",inputAttributes:{...Pe.inputAttributes,type:ke==="integer"?"number":"text",inputMode:ke==="integer"?"numeric":"text"}}]}}]}}else pe.values.fields&&(K[fe].schema={fields:[{type:"object",model:"object",schema:{fields:pe.values.fields.map(ke=>{const Ye=Object.keys(ke)[0];return{model:Ye,type:"input",label:f(Ye),placeholder:Ye,inputType:ke[Ye].type}})}}]});return K}if(pe.enum&&pe.type==="array"&&(K[fe].type="checklist",K[fe].values=pe.enum,K[fe].multi=!0,K[fe].multiSelect=!0),pe.one_of&&pe.type!=="array"&&(K[fe].type="select",K[fe].values=pe.one_of,K[fe].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),pe.elements&&pe.type==="array"){const ke=pe.elements;if(K[fe].referenceable=ke.referenceable,K[fe].elements=ke,["string","integer","number"].includes(ke.type)&&!ke.one_of){const{id:Ye,help:Ue,label:Ne,hint:Ze,values:at,referenceable:Cn,model:vn}=K[fe],{inputAttributes:Ai,...WR}=JSON.parse(JSON.stringify(Pe));Ai.type=ke.type==="string"?"text":"number",K[fe]={id:Ye,help:Ue,label:Ne,hint:Ze,values:at,referenceable:Cn,model:vn,inputAttributes:Ai,...WR}}}if(pe.hint&&(K[fe].hint=pe.hint),ae&&!ae.overwriteDefault&&Object.keys(ae).forEach(ke=>{if(ke===fe){const{help:Ye,label:Ue,hint:Ne,values:Ze,referenceable:at,elements:Cn}=K[fe],{help:vn,...Ai}=ae[ke];K[fe]={help:Ye,label:Ue,hint:Ne,values:Ze,referenceable:at,elements:Cn,...Ai},typeof vn=="string"&&(K[fe].help=Zo.marked.parse(vn,{mangle:!1,headerIds:!1}))}}),pe.type==="array"&&((zo=pe.elements)==null?void 0:zo.type)==="record"&&Array.isArray(pe.elements.fields)){let ke={};for(const Ue of pe.elements.fields)ke={...ke,...Ue};const Ye=(Wo=(Yo=(Ho=K[fe])==null?void 0:Ho.items)==null?void 0:Yo.schema)==null?void 0:Wo.fields;if(Array.isArray(Ye))for(const Ue of K[fe].items.schema.fields){const Ne=(Xo=ke[Ue.model])==null?void 0:Xo.description;Ue.help===void 0&&typeof Ne=="string"&&(Ue.help=Zo.marked.parse(Ne,{mangle:!1,headerIds:!1}))}if(Ye||(K[fe].type="array",K[fe].newElementButtonLabelClasses="kong-form-new-element-button-label",K[fe].fieldClasses="array-card-container-wrapper",K[fe].itemContainerComponent="FieldArrayCardContainer",K[fe].items={type:"object",schema:{fields:Object.values(F(fe,pe.elements,{},!0))}},K[fe].items.schema.fields.forEach(Ue=>{var Ne,Ze;for(const at of pe.elements.fields){const Cn=Object.keys(at)[0],vn=((Ze=(Ne=Ue.id)==null?void 0:Ne.split)==null?void 0:Ze.call(Ne,"-"))??[];if(vn[vn.length-1]===Cn){Ue.model=Cn,Ue.label=c(Cn);break}}}),pe.elements.type==="record"&&(K[fe].nestedFields=!0)),!K[fe].nestedFields)K[fe].items.default=()=>pe.elements.fields.reduce((Ue,Ne)=>{const Ze=Object.keys(Ne)[0];return Ue[Ze]=Ne[Ze].default,Ue},{});else{const Ue=(Ne,Ze)=>{if(Ne.type==="object"){Ne.model&&(Ze[Ne.model]={});for(const at of Ne.schema.fields)Ue(at,Ne.model?Ze[Ne.model]:Ze)}else Ne.model&&(Ze[Ne.model]=Ne.default)};K[fe].items.default=()=>{const Ne={};return Ue(K[fe].items,Ne),Ne}}}if(w.value&&_e){for(let ke=0;ke<_e.length;ke++)if(_e[ke][fe]){K[fe]={...K[fe],..._e[ke][fe]};break}}if(pe.required&&pe.type!=="boolean"&&(K[fe].required=!0,K[fe].selectOptions={hideNoneSelectedText:!0}),pe.required&&pe.type==="boolean"&&(K[fe].default=pe.default??!1),pe.default!=null&&typeof pe.default!="object"&&pe.default!=="function"&&(K[fe].default=pe.default),K[fe].type==="input"){["string","number"].includes(typeof K[fe].default)&&r.config.app==="konnect"&&(K[fe].placeholder=`Default: ${K[fe].default===""?"<empty string>":K[fe].default}`);const{type:ke}=pe.elements||{};ke&&(K[fe].valueArrayType=ke==="integer"?"number":ke),K[fe].inputType=pe.type==="array"||pe.type==="string"?pe.encrypted?"password":"text":pe.type}let ot="string";pe.enum?ot=L(pe.enum):pe.type==="boolean"?ot="boolean":pe.type==="number"||pe.type==="integer"?(ot="number",K[fe].inputType="number"):pe.type==="array"?(ot="array",K[fe].default=pe.default,pe.len_min>0&&(K[fe].submitWhenNull=!0)):pe.type==="foreign"?ot="object":pe.default&&Array.isArray(pe.default)?(ot="array",K[fe].valueArrayType=L(pe.default)):pe.default&&(ot=typeof pe.default),K[fe].valueType=ot,pe.fieldNameHasDashes&&(K[fe].fieldNameHasDashes=!0)}),K},B=()=>{var xe,pe,fe,ot,Go,qo,zo,Ho,Yo,Wo,Xo,ke;const U=((xe=Tt[r.pluginType])==null?void 0:xe.scope.includes(H.PluginScope.SERVICE))??!0,W=((pe=Tt[r.pluginType])==null?void 0:pe.scope.includes(H.PluginScope.ROUTE))??!0,K=((fe=Tt[r.pluginType])==null?void 0:fe.scope.includes(H.PluginScope.CONSUMER))??!0,le=r.config.disableConsumerGroupScope?!1:((ot=Tt[r.pluginType])==null?void 0:ot.scope.includes(H.PluginScope.CONSUMER_GROUP))??!0,se=r.config.entityType==="consumers"&&!!r.config.entityId||!!((qo=(Go=y.value)==null?void 0:Go.consumer)!=null&&qo.id),ae=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((Ho=(zo=y.value)==null?void 0:zo.consumer_group)!=null&&Ho.id),_e=r.config.entityType==="services"&&!!r.config.entityId||!!((Wo=(Yo=y.value)==null?void 0:Yo.service)!=null&&Wo.id),be=r.config.entityType==="routes"&&!!r.config.entityId||!!((ke=(Xo=y.value)==null?void 0:Xo.route)!=null&&ke.id),Ce=[];if(U&&Ce.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.gateway_service.placeholder"),type:"AutoSuggest",entity:"services",inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:_e&&r.disableScopeSelection}),W&&Ce.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.route.placeholder"),type:"AutoSuggest",entity:"routes",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:be&&r.disableScopeSelection}),K&&Ce.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.consumer.placeholder"),type:"AutoSuggest",entity:"consumers",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:se&&r.disableScopeSelection}),le&&Ce.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.consumer_group.placeholder"),type:"AutoSuggest",entity:"consumer_groups",entityDataKey:"consumer_group",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:ae&&r.disableScopeSelection}),Ce.length){const Ye=[...U?["service"]:[],...W?["route"]:[],...K?["consumer"]:[],...le?["consumer_group"]:[]],Ne=Ye.splice(Ye.length-2,2).map(at=>a(at==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${at}.plural`)).join(`${Ye.length>0?",":""} and/or `),Ze=["Specific",[...Ye.length>0?[Ye.map(at=>a(at==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${at}.plural`)).join(", ")]:[],Ne].join(", ")].join(" ");D.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Ze,fields:[]}),D.selectionGroup.fields[1].fields=Ce}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(D,l[r.pluginType].formSchema)},$=n.computed(()=>!u(T.fields,O,!0)),G=n.computed(()=>!M.value&&!R.value&&(_.value===ce.EntityBaseFormType.Create||$.value)),ee=n.ref(!1),re=n.ref(),J=U=>{r.credential&&U.password&&(U.password=""),T.fields.id=(U==null?void 0:U.id)||void 0,re.value=U==null?void 0:U.ordering,Object.assign(O,T.fields),y.value=U,ee.value=!0},ne=n.ref({}),z=U=>{var W;T.fields=U.model,T.fields.id=((W=y.value)==null?void 0:W.id)||void 0,Object.assign(O,U.originalModel),ne.value=U.data,r.isWizardStep&&o("model-updated",{model:T.fields,data:U.data,resourceEndpoint:P.value})},Z=n.ref(new Map),ie=n.computed(()=>[T.clientErrorMessage,T.serverErrorMessage].filter(Boolean).join("; ")),oe=U=>{U.valid?Z.value.delete(U.model):Z.value.set(U.model,U.error),T.clientErrorMessage=[...Z.value.entries()].map(([W,K])=>`${W}: ${typeof K=="string"?K:d(K)}`).join("; "),T.clientErrorMessage&&(T.serverErrorMessage="")};n.watch([C,ee],(U,W)=>{const K=U[0]!==W[0],le=U[1],se=W[1];if(!w.value&&_.value===ce.EntityBaseFormType.Edit&&(K||le&&le!==se)){const ae=F("config",v.value,D);te.value&&(ae._isCustomPlugin=!0),k.value&&(ae._supported_redis_partial_type=k.value),b.value=ae}},{deep:!0});const ue=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},de=n.computed(()=>{let U=`${r.config.apiBaseUrl}${Be.form[r.config.app].validate}`;return r.config.app==="konnect"?U=U.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(U=U.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),U=U.replace(/{id}/gi,r.pluginId),U}),Y=n.computed(()=>{const U=r.config.entityType&&r.config.entityId&&!r.developer,W=w.value?Be.form[r.config.app].credential[_.value]:Be.form[r.config.app][_.value][U?"forEntity":"all"];let K=`${r.config.apiBaseUrl}${W}`;return r.config.app==="konnect"?K=K.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),K=K.replace(/{resourceEndpoint}/gi,P.value),K=K.replace(/{id}/gi,r.pluginId),K=K.replace(/{entityType}/gi,r.config.entityType||""),K=K.replace(/{entityId}/gi,r.config.entityId||""),K}),te=n.computed(()=>!Object.keys(Tt).includes(r.pluginType)),N=n.computed(()=>{const U=ne.value;if(w.value){for(const W in H.PluginScope){const K=H.PluginScope[W];U[K]&&!U[K].id&&(U[K]={id:r.config.entityId})}delete U.created_at}return ne.value.partials&&E.value&&bc(U,E.value),U}),S=async()=>{if(!T.clientErrorMessage&&!r.isWizardStep)try{T.isReadonly=!0;let U;const W=JSON.parse(JSON.stringify(N.value)),K=l[r.pluginType];typeof(K==null?void 0:K.shamefullyTransformPayload)=="function"&&K.shamefullyTransformPayload({originalModel:O,model:T.fields,payload:W,schema:b.value}),!w.value&&!te.value&&await p.post(de.value,W),_.value==="create"?U=await p.post(Y.value,W):_.value==="edit"&&(U=r.config.app==="konnect"||k.value&&W.partials?await p.put(Y.value,Object.assign({ordering:re.value},W)):await p.patch(Y.value,W)),Object.assign(O,T.fields),o("update",U==null?void 0:U.data)}catch(U){T.serverErrorMessage=d(U),o("error",U)}finally{T.isReadonly=!1}},x=n.computed(()=>{var le;const U=w.value?(le=Sn[r.pluginType])==null?void 0:le.schemaEndpoint:r.pluginType,W=w.value?Be.form[r.config.app].credentialSchema:Be.form[r.config.app].pluginSchema;let K=`${r.config.apiBaseUrl}${W}`;return r.config.app==="konnect"?K=K.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(K=K.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),K=K.replace(/{plugin}/gi,U),K}),V=n.ref(""),M=n.ref(!1),X=n.ref("");return n.onBeforeMount(async()=>{var U,W,K,le;M.value=!0;try{if(w.value&&r.config.app==="konnect"){const se=(U=Sn[r.pluginType])==null?void 0:U.schemaEndpoint,ae=Am[se];V.value=se,b.value=F("",ae,{}),M.value=!1}else{const se=r.schema??(await p.get(x.value)).data;if(h.value=se,se)if(w.value)b.value=F("",se,{}),M.value=!1;else{const ae=se.fields.find(be=>be.config);v.value=ae?ae.config:se,se.supported_partials&&(k.value=Object.keys(se.supported_partials).find(be=>[er.REDIS_CE,er.REDIS_EE].includes(be)),E.value=(W=se.supported_partials[k.value])==null?void 0:W[0]),B();const _e=(K=se.fields.find(be=>be.protocols))==null?void 0:K.protocols;if(_e){const{default:be=[],elements:Ce={}}=_e;D.protocols.default=be,D.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:be.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(le=Ce.one_of)!=null&&le.length&&(D.protocols.values=Ce.one_of.map(xe=>({label:xe,value:xe})))}if(ee.value||_.value===ce.EntityBaseFormType.Create){const be=F("config",v.value,D);k.value&&(be._supported_redis_partial_type=k.value),te.value&&(be._isCustomPlugin=!0),b.value=be}}}}catch(se){console.error(se),X.value=d(se),o("error:fetch-schema",se)}finally{M.value=!1}}),(U,W)=>{const K=n.resolveComponent("KSkeleton"),le=n.resolveComponent("KEmptyState"),se=n.resolveComponent("KButton"),ae=n.resolveComponent("KTabs"),_e=n.resolveComponent("KSlideout");return n.openBlock(),n.createElementBlock("div",JV,[M.value?(n.openBlock(),n.createBlock(K,{key:0,type:"form"})):X.value?(n.openBlock(),n.createBlock(le,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(n.unref(a)("errors.load_schema")),1)]),_:1})):(n.openBlock(),n.createBlock(n.unref(ce.EntityBaseForm),{key:2,"can-submit":G.value,config:e.config,"edit-id":e.pluginId,"entity-type":n.unref(ce.SupportedEntityType).Plugin,"error-message":ie.value,"fetch-url":A.value,"form-fields":N.value,"is-readonly":T.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ue,"onFetch:error":W[4]||(W[4]=be=>U.$emit("error",be)),"onFetch:success":J,onLoading:W[5]||(W[5]=be=>U.$emit("loading",be))},{"form-actions":n.withCtx(()=>[e.isWizardStep?(n.openBlock(),n.createElementBlock("div",QV)):(n.openBlock(),n.createBlock(ZV,{key:1,"teleport-target":e.actionsTeleportTarget},{default:n.withCtx(()=>[n.createElementVNode("div",eR,[e.hideViewConfigAction?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(se,{key:0,appearance:"tertiary","data-testid":`plugin-${g.value?"edit":"create"}-form-view-configuration`,onClick:W[3]||(W[3]=be=>I())},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),n.createVNode(se,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${g.value?"edit":"create"}-form-cancel`,disabled:T.isReadonly,onClick:ue},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),n.createVNode(se,{appearance:"primary","data-testid":`plugin-${g.value?"edit":"create"}-form-submit`,disabled:!G.value||T.isReadonly,type:"submit",onClick:S},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:n.withCtx(()=>[n.createElementVNode("form",{hidden:"",onSubmit:S},null,32),n.createVNode(WV,{config:e.config,credential:w.value,editing:_.value===n.unref(ce.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,"entity-map":C.value,"raw-schema":h.value,record:y.value,schema:b.value,onGlobalAction:W[0]||(W[0]=(be,Ce)=>U.$emit("globalAction",be,Ce)),onLoading:W[1]||(W[1]=be=>R.value=be),onModelUpdated:z,onShowNewPartialModal:W[2]||(W[2]=be=>U.$emit("showNewPartialModal",be)),onValidityChange:oe},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),n.createVNode(_e,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:n.unref(a)("view_configuration.title"),visible:m.value,onClose:I},{default:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(n.unref(a)("view_configuration.message")),1),n.createVNode(ae,{"data-testid":"form-view-configuration-slideout-tabs",tabs:q.value},{json:n.withCtx(()=>[n.createVNode(n.unref(ce.JsonCodeBlock),{config:e.config,"entity-record":N.value,"fetcher-url":Y.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:n.withCtx(()=>[n.createVNode(n.unref(ce.YamlCodeBlock),{"entity-record":N.value},null,8,["entity-record"])]),terraform:n.withCtx(()=>[n.createVNode(n.unref(ce.TerraformCodeBlock),{"credential-type":V.value,"entity-record":N.value,"entity-type":n.unref(ce.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-420ab237"]]),nR={class:"kong-ui-entities-plugins-list"},oR={class:"button-row"},rR={class:"empty-state-icon-gateway"},iR={class:"name-cell-wrapper"},aR={class:"info-wrapper"},lR={key:0,class:"info-name"},sR={key:1,class:"info-name"},cR={key:2,class:"info-type"},dR={key:1},uR=we(n.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:t}){var x,V;const o=Oe.usePluginMetaData(),r=t,i=e,{i18n:{t:a}}=Oe.useI18n(),l=no.useRouter(),{axiosInstance:s}=ce.useAxios((x=i.config)==null?void 0:x.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=ce.useTableState(()=>y.value),f=n.computed(()=>c.value&&i.config.app==="konnect"),u=n.computed(()=>!!i.config.entityId),p=n.computed(()=>{var M;return((M=i.config)==null?void 0:M.entityType)==="consumers"}),m=n.computed(()=>{var M;return((M=i.config)==null?void 0:M.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||ce.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),_=n.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),h={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(V=i.config)!=null&&V.entityId||(h.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),h.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(h.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),h.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const b=h,w=n.computed(()=>{var X,Q,U,W;let M=i.config.entityType?`${i.config.apiBaseUrl}${Be.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Be.list[i.config.app].all}`;return i.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,((X=i.config)==null?void 0:X.controlPlaneId)||""):i.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,(Q=i.config)!=null&&Q.workspace?`/${i.config.workspace}`:"")),M.replace(/{entityType}/gi,((U=i.config)==null?void 0:U.entityType)||"").replace(/{entityId}/gi,((W=i.config)==null?void 0:W.entityId)||"")}),y=n.ref(""),v=n.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:h.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...h.enabled,label:a("search.filter.field.enabled")},name:h.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:k,fetcherState:E,fetcherCacheKey:R}=ce.useFetcher(n.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),O=()=>{y.value=""},T=()=>{R.value++},q=n.ref(null),j=M=>{var Q,U,W,K;const X=[];return((Q=M.route)!=null&&Q.id||M.route_id)&&X.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((U=M.service)!=null&&U.id||M.service_id)&&X.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((W=M.consumer)!=null&&W.id||M.consumer_id)&&X.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((K=M.consumer_group)!=null&&K.id||M.consumer_group_id)&&X.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),X.length?X:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},A=async(M,X)=>{var Q;return M===null?!1:await((Q=i.canRetrieveScopedEntity)==null?void 0:Q.call(i,M,X.id))},I=(M,X)=>{var U,W,K,le,se;let Q=null;switch(M){case"route":Q=(U=X.route)==null?void 0:U.id;break;case"service":Q=(W=X.service)==null?void 0:W.id;break;case"consumer":Q=(K=X.consumer)==null?void 0:K.id;break;case"consumer_group":Q=(le=X.consumer_group)==null?void 0:le.id;break}Q&&((se=i.config)!=null&&se.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(M,Q))},C=n.ref(!1),D=n.ref(null),P=n.computed(()=>{const M={action:"disable",id:"",name:""};if(D.value){const{enabled:X,id:Q,name:U}=D.value;M.action=X?"disable":"enable",M.id=Q,M.name=o.getDisplayName(U)||Q}return M}),L=M=>{C.value=!0,D.value=M},F=()=>{C.value=!1,D.value=null},B=async()=>{var U,W,K,le,se,ae,_e,be;if(!await((U=i.canEdit)==null?void 0:U.call(i,D.value))||!D.value)return;let X=`${i.config.apiBaseUrl}${(se=Be.item[i.config.app])==null?void 0:se[(W=i.config)!=null&&W.entityType?"forEntity":"all"].replace(/{entityType}/gi,((K=i.config)==null?void 0:K.entityType)||"").replace(/{entityId}/gi,((le=i.config)==null?void 0:le.entityId)||"")}`.replace(/{id}/gi,D.value.id||"");i.config.app==="konnect"?X=X.replace(/{controlPlaneId}/gi,((ae=i.config)==null?void 0:ae.controlPlaneId)||""):i.config.app==="kongManager"&&(X=X.replace(/\/{workspace}/gi,(_e=i.config)!=null&&_e.workspace?`/${i.config.workspace}`:""));const Q=!D.value.enabled;try{const{data:Ce}=((be=i.config)==null?void 0:be.app)==="konnect"?await s.put(X,{...D.value,enabled:Q},{timeout:12e4}):await s.patch(X,{...D.value,enabled:Q},{timeout:12e4});r("toggle-enabled",Q,Ce),D.value.enabled=Q}catch(Ce){r("error",Ce)}},$=async(M,X)=>{const Q=M.id;if(!await X(Q)){r("copy:error",{entity:M,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:M,field:"id",message:a("copy.success",{val:Q})})},G=async(M,X)=>{const Q=JSON.stringify(M);if(!await X(Q)){r("copy:error",{entity:M,message:a("errors.copy")});return}r("copy:success",{entity:M,message:a("copy.success_brief")})},ee=async M=>{var Q;await((Q=i.canRetrieve)==null?void 0:Q.call(i,M))&&l.push(i.config.getViewRoute(M))},re=M=>({label:a("actions.view"),to:i.config.getViewRoute(M)}),J=M=>({label:a("actions.edit"),to:i.config.getEditRoute(M)}),ne=M=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(M)}),z=n.ref(void 0),Z=n.ref(!1),ie=n.ref(!1),oe=n.ref(""),ue=ce.useDeleteUrlBuilder(i.config,w.value),de=M=>{z.value=M,Z.value=!0},Y=()=>{Z.value=!1},te=async()=>{var M,X,Q;if((M=z.value)!=null&&M.id){ie.value=!0;try{await s.delete(ue(z.value.id)),ie.value=!1,Z.value=!1,R.value++,r("delete:success",z.value)}catch(U){oe.value=((Q=(X=U.response)==null?void 0:X.data)==null?void 0:Q.message)||U.message||a("errors.delete"),r("error",U)}finally{ie.value=!1}}},N=()=>{l.push(i.config.createRoute)};n.watch(E,M=>{var X,Q,U;if(M.status===ce.FetcherStatus.Error){q.value={title:a("errors.general")},(U=(Q=(X=M.error)==null?void 0:X.response)==null?void 0:Q.data)!=null&&U.message&&(q.value.message=M.error.response.data.message),r("error",M.error);return}q.value=null});const S=n.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")});return n.onBeforeMount(async()=>{await i.canCreate()&&(S.value.title=a("plugins.list.empty_state.title"),S.value.ctaText=a("actions.create"))}),(M,X)=>{const Q=n.resolveComponent("KButton"),U=n.resolveComponent("KBadge"),W=n.resolveComponent("KTruncate"),K=n.resolveComponent("KInputSwitch"),le=n.resolveComponent("KDropdownItem"),se=n.resolveComponent("KClipboardProvider");return n.openBlock(),n.createElementBlock("div",nR,[n.createVNode(n.unref(ce.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":S.value,"enable-entity-actions":"","error-message":q.value,fetcher:n.unref(k),"fetcher-cache-key":n.unref(R),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:y.value,"table-headers":n.unref(b),title:e.title,"title-tag":e.titleTag,onClearSearchInput:O,"onClick:row":X[4]||(X[4]=ae=>ee(ae)),onSort:T,onState:n.unref(d)},n.createSlots({"toolbar-filter":n.withCtx(()=>[n.createVNode(n.unref(ce.EntityFilter),{modelValue:y.value,"onUpdate:modelValue":X[0]||(X[0]=ae=>y.value=ae),config:v.value},null,8,["modelValue","config"])]),"toolbar-button":n.withCtx(()=>[(n.openBlock(),n.createBlock(n.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[n.createElementVNode("div",oR,[!u.value&&f.value?(n.openBlock(),n.createBlock(Q,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:X[1]||(X[1]=ae=>M.$emit("click:learn-more"))},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.BookIcon),{decorative:""})]),_:1})):n.createCommentVNode("",!0),n.createVNode(n.unref(ce.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:n.withCtx(()=>[n.createVNode(Q,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.AddIcon)),n.createTextVNode(" "+n.toDisplayString(n.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:n.withCtx(({row:ae})=>[n.createElementVNode("div",iR,[n.createVNode(n.unref(ro.PluginIcon),{class:"plugin-icon",name:ae.name,size:24},null,8,["name"]),n.createElementVNode("div",aR,[ae.instance_name?(n.openBlock(),n.createElementBlock("span",lR,n.toDisplayString(ae.instance_name),1)):(n.openBlock(),n.createElementBlock("span",sR,n.toDisplayString(n.unref(o).getDisplayName(ae.name)),1)),ae.instance_name?(n.openBlock(),n.createElementBlock("span",cR,n.toDisplayString(n.unref(o).getDisplayName(ae.name)),1)):n.createCommentVNode("",!0)])])]),appliedTo:n.withCtx(({row:ae})=>[j(ae).length>0?(n.openBlock(),n.createBlock(W,{key:0},{default:n.withCtx(()=>[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(j(ae),_e=>(n.openBlock(),n.createBlock(n.unref(ce.PermissionsWrapper),{key:_e.badgeText,"auth-function":()=>A(_e.type,ae),"force-show":""},{default:n.withCtx(({isAllowed:be})=>[n.createVNode(U,{class:n.normalizeClass(be||"disabled"),onClick:n.withModifiers(Ce=>be&&_e.type&&I(_e.type,ae),["stop"])},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(_e.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(n.openBlock(),n.createElementBlock("span",dR,"-"))]),enabled:n.withCtx(({row:ae})=>[n.createVNode(n.unref(ce.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(ae)&&await e.canToggle(ae)),"force-show":""},{default:n.withCtx(({isAllowed:_e})=>{var be,Ce;return[n.createElementVNode("div",{onClick:X[3]||(X[3]=n.withModifiers(()=>{},["stop"]))},[n.createVNode(K,{disabled:!_e,"disabled-tooltip-text":!_e&&((Ce=(be=e.config).getToggleDisabledTooltip)==null?void 0:Ce.call(be,ae))||void 0,"model-value":ae.enabled,onClick:n.withModifiers(xe=>_e&&L(ae),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:n.withCtx(({rowValue:ae})=>[n.createVNode(U,{appearance:n.unref(mc)(ae)?"info":"warning"},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(mc)(ae)?n.unref(a)("plugins.list.table_headers.ordering_badge.static"):n.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:n.withCtx(({rowValue:ae})=>[n.createVNode(n.unref(ce.TableTags),{tags:ae},null,8,["tags"])]),actions:n.withCtx(({row:ae})=>[n.createVNode(se,null,{default:n.withCtx(({copyToClipboard:_e})=>[n.createVNode(le,{"data-testid":"action-entity-copy-id",onClick:be=>$(ae,_e)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),n.createVNode(se,null,{default:n.withCtx(({copyToClipboard:_e})=>[n.createVNode(le,{"data-testid":"action-entity-copy-json",onClick:be=>G(ae,_e)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),n.createVNode(n.unref(ce.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(ae)},{default:n.withCtx(()=>[n.createVNode(le,{"data-testid":"action-entity-view","has-divider":"",item:re(ae)},null,8,["item"])]),_:2},1032,["auth-function"]),n.createVNode(n.unref(ce.PermissionsWrapper),{"auth-function":()=>e.canEdit(ae)},{default:n.withCtx(()=>[n.createVNode(le,{"data-testid":"action-entity-edit",item:J(ae)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&n.unref(g)?(n.openBlock(),n.createBlock(n.unref(ce.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(ae)},{default:n.withCtx(()=>[ne(ae)?(n.openBlock(),n.createBlock(le,{key:0,"data-testid":"action-entity-config-dyn-order",item:ne(ae)},null,8,["item"])):n.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):n.createCommentVNode("",!0),n.createVNode(n.unref(ce.PermissionsWrapper),{"auth-function":()=>e.canDelete(ae)},{default:n.withCtx(()=>[n.createVNode(le,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_e=>de(ae)},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!y.value&&e.config.app==="konnect"?{name:"empty-state",fn:n.withCtx(()=>{var ae;return[n.createVNode(n.unref(ce.EntityEmptyState),{"action-button-text":n.unref(a)("plugins.list.empty_state_v2.create_cta"),appearance:"secondary","can-create":()=>e.canCreate(),"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state",description:n.unref(a)("plugins.list.empty_state_v2.description"),"learn-more":e.config.app==="konnect",title:n.unref(a)("plugins.list.empty_state_v2.title"),"onClick:create":N,"onClick:learnMore":X[2]||(X[2]=_e=>M.$emit("click:learn-more"))},n.createSlots({image:n.withCtx(()=>[n.createElementVNode("div",rR,[n.createVNode(n.unref(Ee.PlugIcon),{color:n.unref(Yw),size:n.unref(Xw)},null,8,["color","size"])])]),_:2},[(ae=e.config)!=null&&ae.isControlPlaneGroup?{name:"message",fn:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["action-button-text","can-create","data-testid","description","learn-more","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),n.createVNode(n.unref(ce.EntityToggleModal),{action:P.value.action,"entity-id":P.value.id,"entity-name":P.value.name,"entity-type":n.unref(a)("glossary.plugin"),"on-confirm":B,visible:C.value,onCancel:F,onProceed:F},null,8,["action","entity-id","entity-name","entity-type","visible"]),n.createVNode(n.unref(ce.EntityDeleteModal),{"action-pending":ie.value,description:n.unref(a)("delete.description"),"entity-name":z.value&&(z.value.instance_name||z.value.name||z.value.id),"entity-type":n.unref(ce.EntityTypes).Plugin,error:oe.value,title:n.unref(a)("delete.title"),visible:Z.value,onCancel:Y,onProceed:te},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-3f031caf"]]),fR={class:"plugin-select-card-wrapper"},pR=["data-testid"],mR={class:"plugin-card-header"},gR={class:"plugin-card-title"},hR={key:0,class:"plugin-card-actions"},yR=["data-testid","title"],_R={key:0,class:"plugin-card-text"},bR={key:0},wR=["title"],Ul=we(n.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:t}){const o=t,r=e,i=no.useRouter(),{i18n:{t:a}}=Oe.useI18n(),l=n.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=n.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=n.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=n.computed(()=>r.plugin.id==="custom-plugin-create"),m=n.computed(()=>r.config.app==="konnect"&&r.plugin.group===H.PluginGroup.CUSTOM_PLUGINS),g=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},_=(b,w)=>{const y=r.config;r.config.app==="konnect"&&typeof y.getCustomEditRoute=="function"&&y.getCustomEditRoute&&i.push(y.getCustomEditRoute(b,w))},h=()=>{if(!s.value&&r.config.app==="konnect"){const b=r.config;p.value&&b.createCustomRoute?i.push(b.createCustomRoute):m.value&&d()}};return(b,w)=>{const y=n.resolveComponent("KButton"),v=n.resolveComponent("KDropdownItem"),k=n.resolveComponent("KDropdownMenu"),E=n.resolveComponent("KTooltip");return n.openBlock(),n.createElementBlock("div",fR,[n.createVNode(E,{text:e.plugin.disabledMessage},{default:n.withCtx(()=>[n.createElementVNode("a",{class:n.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:w[1]||(w[1]=R=>s.value||m.value?void 0:f())},[n.createElementVNode("div",mR,[n.createElementVNode("div",gR,[n.createElementVNode("span",{class:n.normalizeClass({"non-custom-title":!m.value})},n.toDisplayString(e.plugin.name),3)]),c.value?(n.openBlock(),n.createElementBlock("div",hR,[n.createVNode(k,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:n.withCtx(()=>[n.createVNode(y,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:n.withCtx(()=>[n.createVNode(n.unref(Ee.MoreIcon),{size:n.unref(Ww)},null,8,["size"])]),_:1})]),items:n.withCtx(()=>[e.canDeleteCustomPlugin?(n.openBlock(),n.createBlock(v,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=n.withModifiers(R=>_(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.edit")),1)]),_:1})):n.createCommentVNode("",!0),e.canDeleteCustomPlugin?(n.openBlock(),n.createBlock(v,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:n.withModifiers(g,["stop"])},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.delete")),1)]),_:1})):n.createCommentVNode("",!0)]),_:1})])):n.createCommentVNode("",!0)]),n.createElementVNode("div",{class:n.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:n.unref(a)("plugins.select.unavailable_tooltip"),onClick:h},[n.createVNode(n.unref(ro.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||m.value&&!p.value?(n.openBlock(),n.createElementBlock("div",_R,[m.value&&!p.value?(n.openBlock(),n.createElementBlock("p",bR,n.toDisplayString(n.unref(a)("plugins.select.custom_badge_text")),1)):n.createCommentVNode("",!0),e.plugin.description?(n.openBlock(),n.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},n.toDisplayString(e.plugin.description),9,wR)):n.createCommentVNode("",!0)])):n.createCommentVNode("",!0)],10,yR),n.createElementVNode("div",{class:"plugin-card-footer",onClick:h},n.toDisplayString(p.value?n.unref(a)("actions.create_custom"):e.plugin.exists?n.unref(a)("actions.enabled"):n.unref(a)("actions.enable")),1)],10,pR)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),ER=we(n.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:t}){var g;const o=e,r=t,{i18nT:i,i18n:{t:a}}=Oe.useI18n(),{getMessageFromError:l}=ce.useErrors(),{axiosInstance:s}=ce.useAxios((g=o.config)==null?void 0:g.axiosRequestConfig),c=n.computed(()=>{var _;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((_=o.plugin)==null?void 0:_.name)||a("delete.custom_plugin")})}),d=n.ref(!1),f=n.ref(""),u=n.ref(!1),p=n.computed(()=>{if(o.config.app==="konnect"){const _=o.plugin.customPluginType==="streaming"?Be.select[o.config.app].streamingCustomPluginItem:Be.select[o.config.app].schemaCustomPluginItem;let h=`${o.config.apiBaseUrl}${_}`;return h=h.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),h=h.replace(/{pluginId}/gi,o.plugin.id),h}return null}),m=async()=>{var _,h,b,w;if(d.value=!0,f.value="",!(!((_=o.plugin)!=null&&_.name)||((h=o.config)==null?void 0:h.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(y){const{response:v}=y;(v==null?void 0:v.status)===400&&((w=(b=v.data)==null?void 0:b.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(y)}finally{d.value=!1}};return(_,h)=>{const b=n.resolveComponent("KButton"),w=n.resolveComponent("KModal");return!u.value&&e.plugin?(n.openBlock(),n.createBlock(n.unref(ce.EntityDeleteModal),{key:0,"action-pending":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:n.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":n.unref(ce.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:h[0]||(h[0]=y=>_.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(n.openBlock(),n.createBlock(w,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:h[2]||(h[2]=y=>_.$emit("closed"))},{default:n.withCtx(()=>[n.createElementVNode("div",null,[n.createVNode(n.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:n.withCtx(()=>[n.createElementVNode("strong",null,n.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":n.withCtx(()=>[n.createElementVNode("div",null,[n.createVNode(b,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:h[1]||(h[1]=y=>_.$emit("closed"))},{default:n.withCtx(()=>[n.createTextVNode(n.toDisplayString(n.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):n.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),kR={class:"custom-plugins-grid"},CR={class:"empty-state-title"},vR={class:"empty-state-description"},Kl=310,NR=we(n.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:t}){const o=e,r=t,{i18n:{t:i}}=Oe.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Oe.usePluginHelpers(),s=n.ref(!0),c=k=>{r("plugin-clicked",k)},d=n.computed(()=>{if(o.config.app==="kongManager")return[];const k=JSON.parse(JSON.stringify(o.pluginList))[H.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:H.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(k):k}),f=n.ref(!1),u=n.ref(null),p=k=>{f.value=!0,u.value={id:k.id,name:k.name,customPluginType:k.customPluginType}},m=k=>{var E;k&&(r("revalidate"),r("delete:success",((E=u.value)==null?void 0:E.name)||"")),f.value=!1,u.value=null},g=n.ref(Kl),_=n.ref(null),h=n.ref(null),b=n.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),w=n.ref(!1),y=()=>{g.value=Math.max(a(h.value),Kl),v()},v=()=>{var k,E;(k=h.value)!=null&&k.length&&(w.value=l(_.value,(E=h.value)==null?void 0:E.length))};return n.onMounted(async()=>{await n.nextTick(),g.value=Math.max(a(h.value),Kl),v(),window==null||window.addEventListener("resize",y)}),n.onUnmounted(()=>{window==null||window.removeEventListener("resize",y)}),(k,E)=>{const R=n.resolveComponent("KEmptyState"),O=n.resolveComponent("KCollapse");return n.openBlock(),n.createElementBlock("div",kR,[d.value.length?(n.openBlock(),n.createBlock(O,{key:1,modelValue:s.value,"onUpdate:modelValue":E[0]||(E[0]=T=>s.value=T),class:"custom-plugins-collapse","data-testid":`${n.unref(H.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:n.unref(H.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?n.unref(i)("plugins.select.view_more"):n.unref(i)("plugins.select.view_less")},n.createSlots({"visible-content":n.withCtx(()=>[n.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:_,class:"plugin-card-container",style:n.normalizeStyle(b.value)},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(d.value,(T,q)=>(n.openBlock(),n.createBlock(Ul,{key:`plugin-card-${q}`,ref_for:!0,ref_key:"pluginCardRef",ref:h,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:T,onCustomPluginDelete:j=>p(T),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:n.withCtx(()=>[E[2]||(E[2]=n.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(n.openBlock(),n.createBlock(R,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:n.withCtx(()=>[n.createElementVNode("span",CR,n.toDisplayString(n.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:n.withCtx(()=>[n.createElementVNode("span",vR,n.toDisplayString(n.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(n.openBlock(),n.createBlock(ER,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:E[1]||(E[1]=T=>m(!0))},null,8,["config","plugin"])):n.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),jl=310,fm=we(n.defineComponent({__name:"PluginSelectGroup",props:n.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:n.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:t}){const o=n.useModel(e,"modelValue"),r=e,i=t,{i18n:{t:a}}=Oe.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Oe.usePluginHelpers(),c=n.ref(jl),d=n.ref(null),f=n.ref(null),u=n.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=n.ref(!1),m=()=>{c.value=Math.max(l(f.value),jl),g()},g=()=>{var _,h;(_=f.value)!=null&&_.length&&(p.value=s(d.value,(h=f.value)==null?void 0:h.length))};return n.onMounted(async()=>{await n.nextTick(),c.value=Math.max(l(f.value),jl),g(),window==null||window.addEventListener("resize",m)}),n.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(_,h)=>{const b=n.resolveComponent("KCollapse");return n.openBlock(),n.createBlock(b,{modelValue:o.value,"onUpdate:modelValue":h[0]||(h[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?n.unref(a)("plugins.select.view_more"):n.unref(a)("plugins.select.view_less")},n.createSlots({"visible-content":n.withCtx(()=>[n.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:n.normalizeStyle(u.value)},[(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(r.plugins,w=>(n.openBlock(),n.createBlock(Ul,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:y=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:n.withCtx(()=>[h[1]||(h[1]=n.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),SR={class:"plugin-select-grid"},xR={class:"empty-state-title"},AR={class:"empty-state-description"},Gl=n.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:t}){const o=e,r=t,{i18n:{t:i}}=Oe.useI18n(),a=n.ref(!1),l=n.ref(Yl),s=d=>{r("plugin-clicked",d)},c=n.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[H.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=n.resolveComponent("KEmptyState");return n.openBlock(),n.createElementBlock("div",SR,[Object.keys(c.value).length?n.createCommentVNode("",!0):(n.openBlock(),n.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:n.withCtx(()=>[n.createElementVNode("span",xR,n.toDisplayString(n.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:n.withCtx(()=>[n.createElementVNode("span",AR,n.toDisplayString(n.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(n.openBlock(),n.createBlock(fm,{key:1,modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=p=>a.value=p),config:e.config,name:o.highlightedPluginsTitle||n.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"])):n.createCommentVNode("",!0),(n.openBlock(!0),n.createElementBlock(n.Fragment,null,n.renderList(n.unref(Hl),p=>(n.openBlock(),n.createElementBlock(n.Fragment,null,[c.value[p]?(n.openBlock(),n.createElementBlock("div",{key:p},[n.createVNode(fm,{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"])])):n.createCommentVNode("",!0)],64))),256))])}}}),TR={class:"kong-ui-entities-plugin-select-form"},IR={class:"plugins-filter-input-container"},PR={key:0},OR={key:3,"aria-live":"polite",class:"plugins-results-container"},$R={"data-testid":"kong-tab"},BR={class:"tab-description"},VR={"data-testid":"custom-tab"},RR={class:"tab-description"},DR=we(n.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:t}){var B;const o=e,r=t,i=no.useRoute(),a=no.useRouter(),{i18n:{t:l}}=Oe.useI18n(),{pluginMetaData:s}=Oe.usePluginMetaData(),{getMessageFromError:c}=ce.useErrors(),{sortAlpha:d,objectsAreEqual:f}=ce.useHelpers(),u=n.ref(""),p=n.ref(!0),m=n.ref(!1),g=n.ref(""),_=n.ref([]),h=n.ref([]),b=n.ref({}),w=n.ref([]),{axiosInstance:y}=ce.useAxios((B=o.config)==null?void 0:B.axiosRequestConfig),v=n.computed(()=>b.value?Object.entries(b.value).filter(([$])=>$!==H.PluginGroup.CUSTOM_PLUGINS).reduce(($,[,G])=>{for(const ee of G)$[ee.id]=ee;return $},{}):{}),k=n.computed(()=>{var ee;if(!b.value)return{};const $=u.value.toLowerCase(),G=JSON.parse(JSON.stringify(b.value));for(const re in b.value){const J=((ee=b.value[re])==null?void 0:ee.filter(ne=>ne.name.toLowerCase().includes($)||ne.id.toLowerCase().includes($)||ne.group.toLowerCase().includes($)))||[];J.length?G[re]=J:delete G[re]}return G}),E=n.computed(()=>o.highlightedPluginIds.reduce(($,G)=>{const ee=v.value[G];return ee&&$.push(ee),$},[])),R=n.computed(()=>Object.keys(k.value).length>0),O=n.computed(()=>Object.keys(b.value).length>0&&!R.value),T=n.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)}]:[]),q=n.computed(()=>{var G;let $=T.value.length&&((i==null?void 0:i.hash)||((G=T.value[0])==null?void 0:G.hash))||"";return $==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&($="#kong"),$}),j=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),..._.value])].filter($=>!o.ignoredPlugins.includes($)).filter($=>o.config.entityType&&(o.config.entityType==="services"&&s[$]&&!s[$].scope.includes(H.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[$]&&!s[$].scope.includes(H.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[$]&&!s[$].scope.includes(H.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[$]&&!s[$].scope.includes(H.PluginScope.CONSUMER))?!1:$).reduce(($,G)=>{var z;const ee=s[G]&&s[G].name||G,re={...s[G],id:G,name:ee,available:_.value.includes(G),disabledMessage:"",group:((z=s[G])==null?void 0:z.group)||H.PluginGroup.CUSTOM_PLUGINS};re.group===H.PluginGroup.CUSTOM_PLUGINS&&(re.customPluginType=h.value.find(Z=>Z.name===G)?"streaming":"schema"),o.disabledPlugins&&(re.disabledMessage=o.disabledPlugins[G]);const J=re.group||l("plugins.select.misc_plugins");let ne=$[J];return ne||(ne=[]),ne.push(re),ne.sort(d("name")),$[J]=ne,$},{}),A=n.computed(()=>{var G;let $=`${o.config.apiBaseUrl}${Be.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&($=((G=o.config.gatewayInfo)==null?void 0:G.edition)==="community"?`${o.config.apiBaseUrl}${Be.select[o.config.app].availablePluginsForOss}`:$.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),$}),I=n.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let $=`${o.config.apiBaseUrl}${Be.select[o.config.app].streamingCustomPlugins}`;return $=$.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),$}return null}),C=n.computed(()=>{if(o.config.entityType&&o.config.entityId){let $=`${o.config.apiBaseUrl}${Be.list[o.config.app].forEntity}`;return o.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),$.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),D=$=>{a.replace({hash:$,query:i.query})};n.watch(()=>o.disabledPlugins,($,G)=>{!f($,G)&&!p.value&&(b.value=j())}),n.watch(()=>o.ignoredPlugins,($,G)=>{!f($,G)&&!p.value&&(b.value=j())}),n.watch(p,$=>{r("loading",$)});const P=n.ref(!1),L=n.ref(!1),F=n.ref(!1);return n.onBeforeMount(async()=>{P.value=await o.canCreateCustomPlugin(),L.value=await o.canEditCustomPlugin(),F.value=await o.canDeleteCustomPlugin()}),n.onMounted(async()=>{try{const{data:$}=await y.get(A.value);if(o.config.app==="konnect"){const{names:G}=$;if(_.value=G||[],I.value){const{data:ee}=await y.get(I.value);h.value=ee.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:G}}=$;_.value=G?Object.keys(G):[]}}catch($){m.value=!0,g.value=c($)}if(C.value)try{const{data:{data:$}}=await y.get(C.value);if($!=null&&$.length){const G=$.reduce((ee,re)=>(re.name&&ee.push(re.name),ee),[]);w.value=w.value.concat(G)}}catch{}m.value||(b.value=j()),p.value=!1}),($,G)=>{const ee=n.resolveComponent("KInput"),re=n.resolveComponent("KSkeletonBox"),J=n.resolveComponent("KSkeleton"),ne=n.resolveComponent("KEmptyState"),z=n.resolveComponent("KTooltip"),Z=n.resolveComponent("KTabs");return n.openBlock(),n.createElementBlock("div",TR,[n.createElementVNode("div",IR,[n.createVNode(ee,{modelValue:u.value,"onUpdate:modelValue":G[0]||(G[0]=ie=>u.value=ie),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:n.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(n.openBlock(),n.createElementBlock("section",PR,[n.createVNode(re,{class:"plugins-skeleton-title",width:"10"}),n.createVNode(J,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(n.openBlock(),n.createBlock(ne,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(g.value),1)]),_:1})):O.value&&u.value?(n.openBlock(),n.createBlock(ne,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:n.withCtx(()=>[n.createElementVNode("h5",null,n.toDisplayString(n.unref(l)("search.no_results",{filter:u.value})),1)]),_:1})):(n.openBlock(),n.createElementBlock("section",OR,[T.value.length&&e.customPluginSupport!=="none"?(n.openBlock(),n.createBlock(Z,{key:0,modelValue:q.value,"onUpdate:modelValue":G[5]||(G[5]=ie=>q.value=ie),"data-testid":"plugins-tabs",tabs:T.value,onChange:D},n.createSlots({kong:n.withCtx(()=>[n.createElementVNode("div",$R,[n.createElementVNode("p",BR,n.toDisplayString(n.unref(l)("plugins.select.tabs.kong.description")),1),n.createVNode(Gl,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":E.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":k.value,onPluginClicked:G[1]||(G[1]=ie=>$.$emit("plugin-clicked",ie))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:n.withCtx(()=>[n.createElementVNode("div",VR,[n.createElementVNode("p",RR,n.toDisplayString(n.unref(l)("plugins.select.tabs.custom.description")),1),n.createVNode(NR,{"can-create-custom-plugin":P.value,"can-delete-custom-plugin":F.value,"can-edit-custom-plugin":L.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":k.value,"onDelete:success":G[2]||(G[2]=ie=>$.$emit("delete-custom:success",ie)),onPluginClicked:G[3]||(G[3]=ie=>$.$emit("plugin-clicked",ie)),onRevalidate:G[4]||(G[4]=()=>b.value=j())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:n.withCtx(()=>[n.createVNode(z,{"max-width":"300",text:n.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:n.withCtx(()=>[n.createElementVNode("div",null,n.toDisplayString(n.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(n.openBlock(),n.createBlock(Gl,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":E.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":k.value,onPluginClicked:G[6]||(G[6]=ie=>$.$emit("plugin-clicked",ie))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-c18b2b5c"]]),MR={class:"kong-ui-entity-plugin-config-card"},FR={class:"name-cell-wrapper"},LR={class:"info-name"},UR={key:0},KR={key:0},jR={key:0},GR={key:0},qR={key:0},ql="config",zR=we(n.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:t}){var w;const o=t,r=e,{i18n:{t:i}}=Oe.useI18n(),a=Oe.usePluginMetaData(),{setFieldType:l}=Oe.usePluginHelpers(),{getPropValue:s}=ce.useHelpers(),c=n.computed(()=>{var y;return(y=Be.item[r.config.app])==null?void 0:y[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"")}),d=n.computed(()=>{var k,E;const y={},v=((k=_.value)==null?void 0:k.fields)||[];for(let R=0;R<v.length;R++){const O=_.value.fields[R],T=(E=Object.keys(O))==null?void 0:E[0];l(y,T,O[T])}return{...y,instance_name:{section:ce.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ce.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ce.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ce.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ce.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ce.ConfigurationSchemaType.BadgeTag,section:ce.ConfigurationSchemaSection.Basic,order:7}}}),f=n.computed(()=>{var v,k,E;if(!((v=_.value)!=null&&v.fields))return[];const y=(k=_.value.fields)==null?void 0:k.find(R=>{var T;return((T=Object.keys(R))==null?void 0:T[0])===ql});return((E=y==null?void 0:y[ql])==null?void 0:E.fields)||[]}),u=n.computed(()=>{var v,k;const y={};if(!f.value)return y;for(let E=0;E<((v=f.value)==null?void 0:v.length);E++){const R=f.value[E],O=(k=Object.keys(R))==null?void 0:k[0],T=R[O];T.required&&(y[O]={order:1}),l(y,O,T)}return y}),{getMessageFromError:p}=ce.useErrors(),{axiosInstance:m}=ce.useAxios((w=r.config)==null?void 0:w.axiosRequestConfig),g=n.computed(()=>{var v,k;let y=`${r.config.apiBaseUrl}${Be.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?y=y.replace(/{controlPlaneId}/gi,((v=r.config)==null?void 0:v.controlPlaneId)||""):r.config.app==="kongManager"&&(y=y.replace(/\/{workspace}/gi,(k=r.config)!=null&&k.workspace?`/${r.config.workspace}`:"")),y=y.replace(/{plugin}/gi,r.config.pluginType),y}),_=n.ref({});ce.useSchemaProvider(_);const h=n.ref(!1),b=n.ref("");return n.onBeforeMount(async()=>{h.value=!0;try{const{data:y}=await m.get(g.value);_.value=y}catch(y){b.value=p(y),o("error:fetch-schema",y)}finally{h.value=!1}}),(y,v)=>{const k=n.resolveComponent("KSkeleton"),E=n.resolveComponent("KEmptyState"),R=n.resolveComponent("KCopy");return n.openBlock(),n.createElementBlock("div",MR,[h.value?(n.openBlock(),n.createBlock(k,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):b.value?(n.openBlock(),n.createBlock(E,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:n.withCtx(()=>[n.createElementVNode("h3",null,n.toDisplayString(b.value),1)]),_:1})):(n.openBlock(),n.createBlock(n.unref(ce.EntityBaseConfigCard),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":n.unref(ce.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":ql,"plugin-config-schema":u.value,"onFetch:error":v[0]||(v[0]=O=>y.$emit("fetch:error",O)),"onFetch:success":v[1]||(v[1]=O=>y.$emit("fetch:success",O)),onLoading:v[2]||(v[2]=O=>y.$emit("loading",O))},{name:n.withCtx(O=>[n.createElementVNode("div",FR,[n.createVNode(n.unref(ro.PluginIcon),{class:"plugin-icon",name:n.unref(s)("rowValue",O),size:24},null,8,["name"]),n.createElementVNode("span",LR,n.toDisplayString(n.unref(a).getDisplayName(n.unref(s)("rowValue",O))),1)])]),consumer:n.withCtx(O=>[n.unref(s)("rowValue",O)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ce.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",O).id,value:n.unref(s)("rowValue",O).id,type:n.unref(ce.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",O).id,"consumer")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(R,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",O).label}),"data-testid":"consumer-copy-uuid",text:n.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",UR,"–"))]),route:n.withCtx(O=>[n.unref(s)("rowValue",O)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ce.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",O).id,value:n.unref(s)("rowValue",O).id,type:n.unref(ce.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",O).id,"route")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(R,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",O).label}),"data-testid":"route-copy-uuid",text:n.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",KR,"–"))]),service:n.withCtx(O=>[n.unref(s)("rowValue",O)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ce.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",O).id,value:n.unref(s)("rowValue",O).id,type:n.unref(ce.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",O).id,"service")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(R,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",O).label}),"data-testid":"service-copy-uuid",text:n.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",jR,"–"))]),consumer_group:n.withCtx(O=>[n.unref(s)("rowValue",O)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ce.InternalLinkItem),{key:1,item:{key:n.unref(s)("rowValue",O).id,value:n.unref(s)("rowValue",O).id,type:n.unref(ce.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",n.unref(s)("rowValue",O).id,"consumer_group")},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(R,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",O).label}),"data-testid":"consumer-group-copy-uuid",text:n.unref(s)("rowValue",O).id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",GR,"–"))]),partials:n.withCtx(O=>{var T,q,j,A,I,C,D,P,L;return[n.unref(s)("rowValue",O)?e.showIdAsLink?(n.openBlock(),n.createBlock(n.unref(ce.InternalLinkItem),{key:1,item:{key:(q=(T=n.unref(s)("rowValue",O))==null?void 0:T[0])==null?void 0:q.id,value:((A=(j=n.unref(s)("rowValue",O))==null?void 0:j[0])==null?void 0:A.id)+((C=(I=n.unref(s)("rowValue",O))==null?void 0:I[0])!=null&&C.name?"/"+((P=(D=n.unref(s)("rowValue",O))==null?void 0:D[0])==null?void 0:P.name):""),type:n.unref(ce.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var F,B;return y.$emit("navigation-click",(B=(F=n.unref(s)("rowValue",O))==null?void 0:F[0])==null?void 0:B.id,"partial")}},null,8,["item","onNavigationClick"])):(n.openBlock(),n.createBlock(R,{key:2,"copy-tooltip":n.unref(i)("copy.tooltip",{label:n.unref(s)("row",O).label}),"data-testid":"partial-copy-uuid",text:(L=n.unref(s)("rowValue",O))==null?void 0:L[0].id},null,8,["copy-tooltip","text"])):(n.openBlock(),n.createElementBlock("span",qR,"–"))]}),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-53806ec8"]]),{usePluginMetaData:HR,useProvideExperimentalFreeForms:YR}=Oe;Object.defineProperty(he,"PluginGroup",{enumerable:!0,get:()=>H.PluginGroup}),Object.defineProperty(he,"PluginScope",{enumerable:!0,get:()=>H.PluginScope}),Object.defineProperty(he,"PluginIcon",{enumerable:!0,get:()=>ro.PluginIcon}),Object.defineProperty(he,"getPluginIconURL",{enumerable:!0,get:()=>ro.getPluginIconURL}),he.EXPERIMENTAL_FREE_FORM_PROVIDER=Ti,he.EntityTypeIdField=Xt,he.FEATURE_FLAGS=rs,he.PLUGIN_GROUPS_COLLAPSE_STATUS=Yl,he.PluginConfigCard=zR,he.PluginForm=tR,he.PluginGroupArray=Hl,he.PluginList=uR,he.PluginPartialType=er,he.PluginSelect=DR,he.PluginSelectCard=Ul,he.PluginSelectGrid=Gl,he.pluginEndpoints=Be,he.usePluginMetaData=HR,he.useProvideExperimentalFreeForms=YR,Object.defineProperty(he,Symbol.toStringTag,{value:"Module"})});
143
+ `},Symbol.toStringTag,{value:"Module"})),WB={class:"dk-code-editor"},XB={class:"examples-content"},ZB={ref:"editor-root",class:"editor"},Pl="YAML Syntax",JB="datakit.insert-example",QB=we(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean},config:{}},emits:["change","error"],setup(e,{expose:n,emit:o}){const{t:r}=Re.createI18n("en-us",je),i=o,a=t.useTemplateRef("editor-root"),l=t.shallowRef(null);function s(c){const d=l.value,f=d==null?void 0:d.getModel();if(!d||!f)return;const u=qp[c];if(d.getValue()!==u){const p=f.getFullModelRange();d.pushUndoStop(),d.executeEdits(JB,[{range:p,text:u}]),d.pushUndoStop()}d.focus()}return t.onMounted(()=>{const c=Wo.editor.create(a.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});l.value=c,e.config&&Object.keys(e.config).length>0&&c.setValue(Gp.dump(t.toRaw(e.config),{schema:Tl,noArrayIndent:!0})),c.onDidChangeModelContent(()=>{const d=c.getModel(),f=c.getValue()||"";try{const u=Gp.load(f,{schema:Tl,json:!0});Wo.editor.setModelMarkers(d,Pl,[]),i("change",u)}catch(u){const{message:p,mark:m}=u,{line:h,column:b}=m||{line:0,column:0},g=p.split(`
144
+ `)[0],_=[{startLineNumber:h+1,startColumn:b+1,endLineNumber:h+1,endColumn:b+2,message:g,severity:Wo.MarkerSeverity.Error,source:Pl}];Wo.editor.setModelMarkers(d,Pl,_),i("error",g)}})}),t.onBeforeUnmount(()=>{var c;(c=l.value)==null||c.dispose()}),n({setExampleCode:s}),(c,d)=>(t.openBlock(),t.createElementBlock("div",WB,[t.createVNode(t.unref(Te.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(Ee.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",XB,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(qp,(f,u)=>t.createVNode(t.unref(Te.KButton),{key:u,appearance:"secondary",size:"small",onClick:p=>s(u)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${u}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),t.createElementVNode("div",ZB,null,512)]))}}),[["__scopeId","data-v-d63d9bf4"]]),eV=["innerHTML"],tV=t.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t:n}=Re.createI18n("en-us",je),o=e,r=t.inject(ac.DATAKIT_ENABLE_FLOW_EDITOR,!1),{editorMode:i}=ma(),a=t.computed(()=>r?i.value:"code"),l={flow:Ee.DesignIcon,code:Ee.CodeblockIcon},s=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}],c=t.computed(()=>{switch(i.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}}),d=t.ref({...o.model.config});function f(m){for(const h in m.config)h!=="nodes"&&(d.value[h]=m.config[h])}function u(m){var h;o.onFormChange({config:m}),(h=o.onValidityChange)==null||h.call(o,{model:"config",valid:!0}),d.value=m}function p(m){var h;(h=o.onValidityChange)==null||h.call(o,{model:"config",valid:!1,error:m})}return(m,h)=>(t.openBlock(),t.createBlock(eE,t.mergeProps(o,{class:"dk-form"}),t.createSlots({default:t.withCtx(b=>[t.createVNode(mt,t.mergeProps(b,{data:{config:d.value},tag:"div",onChange:f}),{default:t.withCtx(()=>[a.value==="flow"?(t.openBlock(),t.createBlock(TO,{key:0,config:d.value,editing:o.isEditing,onChange:u},null,8,["config","editing"])):a.value==="code"?(t.openBlock(),t.createBlock(QB,{key:1,class:"code-editor",config:d.value,editing:o.isEditing,onChange:u,onError:p},null,8,["config","editing"])):t.createCommentVNode("",!0)]),_:2},1040,["data"])]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:c.value},null,8,eV)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Te.KSegmentedControl),{modelValue:t.unref(i),"onUpdate:modelValue":h[0]||(h[0]=b=>t.isRef(i)?i.value=b:null),options:s},{"option-label":t.withCtx(({option:b})=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(l[b.value]))),t.createTextVNode(" "+t.toDisplayString(b.label),1)]),_:1},8,["modelValue"])]),key:"0"}:void 0]),1040))}}),zp=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))},Hp=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},nV=we(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=$e.useI18n(),l={prepareFormData:c=>{var f,u;const d=xn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Hp(p.headers),Hp(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=xn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{zp(p.headers),zp(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(mt,{class:"ai-mcp-config-form",config:l,data:c.data,schema:c.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(dt,{"as-child":"",name:"config","reset-label-path":"reset"},{tools:t.withCtx(({name:f})=>[t.createVNode(pr,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(ia)]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-7cb4b052"]]),Yp=Object.freeze(Object.defineProperty({__proto__:null,AIMcpForm:t.defineComponent({__name:"AIMcpForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Ne.AUTOFILL_SLOT,o==null?void 0:o[Ne.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(aa,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(nV,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:tV,RequestCalloutForm:nw,ServiceProtectionForm:Ww},Symbol.toStringTag,{value:"Module"})),oV={class:"kong-ui-entities-plugin-form"},rV={key:1,class:"entity-form"},iV={class:"plugin-config-empty-state"},aV=we(t.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var H,re;const o=Object.keys(Ne.sharedForms),r=Object.keys(Yp);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}=de.useAxios((H=a.config)==null?void 0:H.axiosRequestConfig),{parseSchema:s}=$e.useSchemas({entityId:((re=a.entityMap.focusedEntity)==null?void 0:re.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:d,dismissField:f,isObjectEmpty:u,unsetNullForeignKey:p}=$e.usePluginHelpers(),m=$e.useExperimentalFreeForms(),{objectsAreEqual:h}=de.useHelpers(),{i18n:{t:b}}=ve(),g=(U,Z)=>{let ee=`${a.config.apiBaseUrl}${Be.form[a.config.app].entityGetOne}`;return a.config.app==="konnect"?ee=ee.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(ee=ee.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),ee=ee.replace(/{entity}/gi,U),ee=ee.replace(/{id}/gi,Z),ee},_=U=>{let Z=`${a.config.apiBaseUrl}${Be.form[a.config.app].entityGetAll}`;return a.config.app==="konnect"?Z=Z.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"&&(Z=Z.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:"")),Z=Z.replace(/{entity}/gi,U),Z},w=(U,Z)=>{const ee=g(U,Z);return l.get(ee)},y=(U,Z)=>{const ee=_(U);return a.config.app==="konnect"?l.get(ee).then(ne=>{const{data:{data:ae}}=ne;if(delete Z.size,delete Z.offset,ae.length&&Object.keys(Z).length===1){const ue=Object.keys(Z)[0],q=ae.filter(te=>te[ue]?!!te[ue].toLowerCase().includes(Z[ue].toLowerCase()):!1);ne.data.data=q}return ne}):l.get(ee,{params:Z})};t.provide(Ne.FORMS_API_KEY,{getOne:w,getAll:y}),t.provide(Ne.FORMS_CONFIG,a.config);const N=t.ref(""),k=t.ref(""),E=t.ref(null),$=t.ref({}),I=t.reactive({}),P=t.reactive({}),Y=t.computed(()=>{var U;return(U=E.value)==null?void 0:U.options}),K=t.ref(!1),A=t.ref(),z=(U,Z)=>{K.value=U??"",A.value=Z},x=U=>{var Z;(Z=A.value)==null||Z.call(A,U),K.value=!1},R=()=>{var q,te;const U={...a.schema},Z=P,ee=I,ne=Object.keys(Z),ae={};if(!u($.value))for(let v=0;v<((te=(q=$.value)==null?void 0:q.fields)==null?void 0:te.length);v++)U[$.value.fields[v].model]=$.value.fields[v];Ne.customFields.forEach(v=>{U[v]&&(U[v].fields.forEach(C=>{C.fields&&C.fields.forEach(S=>{U[S.model]=S}),C.model&&(U[C.model]=C)}),delete U[v])}),ne.forEach(v=>{var L;if(!U[v]){v==="partials"&&(ae[v]=Z[v]);return}const C=U[v];let S=Z[v];const T=ee[v],B=Array.isArray(S)?"array":typeof S,J=C?C.valueType:null,oe=C?C.valueArrayType:null,M=C?C.transform:null;if(S==null&&T==null&&!C.submitWhenNull)return;if(C){if(J&&B!==J)switch(J){case"array":B==="string"&&S.length&&(S=S.split(",").map(se=>{if(se=se.trim(),oe==="string")return String(se);if(oe==="number")return Number(se);if(oe==="boolean"){if(typeof se=="string")return se.toLowerCase()==="true"||se==="1";if(typeof se=="number")return se===1}return se})),(!S||!S.length)&&(S=C.submitWhenNull?null:[]);break;case"number":S=Number(S);break;case"boolean":B==="string"&&(S=S.toLowerCase()==="true"||S==="1"),B==="number"&&(S=S===1);break;case"string":S=S==null?"":String(S);break}else J==="array"&&(!S||!S.length?S=C.submitWhenNull?null:[]:((L=C.inputAttributes)==null?void 0:L.type)==="number"&&(S=S.map(se=>Number(se))));if(C.type==="array"&&C.nestedFields){const se=ce=>{Object.keys(ce).forEach(le=>{ce[le]&&typeof ce[le]=="object"&&!Array.isArray(ce[le])&&ce[le]!==null?se(ce[le]):(ce[le]===void 0||ce[le]===null||typeof ce[le]=="number"&&isNaN(ce[le])||typeof ce[le]=="string"&&ce[le].trim().length===0)&&delete ce[le]})};S&&typeof S=="object"&&se(S)}C.type==="object-advanced"&&C.fields&&S!==null&&(Object.entries(S).length===0?S=null:Object.keys(S).forEach(se=>{Array.isArray(S[se])||(S[se]=S[se].split(","))}))}let X=c(v);if(C.fieldNameHasDashes){const[se,...ce]=X.split(".").reverse();X=[se.replace(/_/g,"-"),...ce].reverse().join(".")}if(J==="object-expand"){let se;[X,se]=X.split(".");let ce={};ae[X]&&(ce=ae[X]),ce[se]=S,S=ce}T!==void 0&&S===""&&S!==T?ae[X]=J==="object"?{}:null:C.type==="checklist"&&S===""?ae[X]=[]:S!==""&&(ae[X]=S),ae[X]=M?M(S):ae[X],p(X,ae)});const ue=d(ae);return k.value&&Object.assign(ue,V.value),ue},O=(U,Z={})=>{f(P,Z,U,a.editing),i("model-updated",{model:P,originalModel:I,data:R()})},W=(U,Z)=>{var ae;const ee={[Z]:U};typeof((ae=a.schema[Z])==null?void 0:ae.modelTransformer)=="function"&&(ee[Z]=a.schema[Z].modelTransformer(U));const ne=Object.assign({},P,ee);Object.assign(P,ne),i("model-updated",{model:P,originalModel:I,data:R()})},G=U=>{i("validity-change",U)},F=(U,Z)=>{Object.keys(U).forEach(ee=>{var te,v;let ne=Z?`${Z}-${ee}`:ee,ae=a.schema[ne];if(!ae){const C=Z?`${Z}-${ee.replace(/-/g,"_")}`:ee.replace(/-/g,"_");(te=a.schema[C])!=null&&te.fieldNameHasDashes&&(ne=C,ae=a.schema[ne]),Z&&((v=a.schema[Z])==null?void 0:v.keyFromObject)===ee&&(ne=Z,ae=a.schema[ne])}const ue=U[ee],q=typeof ue;if(ae&&ae.type==="object-advanced"&&!ue){P[ne]={},I[ne]={};return}if(Array.isArray(ue)){P[ne]=JSON.parse(JSON.stringify(ue)),I[ne]=JSON.parse(JSON.stringify(ue));return}if(q==="object"&&ue&&!ue.length)return F(ue,ne);if(q==="object"&&ue&&ue.length&&ae.type==="input"){P[ne]=ue.join(", "),I[ne]=ue.join(", ");return}P[ne]=ue,I[ne]=ue}),i("model-updated",{model:P,originalModel:I,data:R()})},V=t.shallowRef(a.record),D=U=>{V.value=U,i("model-updated",{model:{...P,...U},originalModel:I,data:R()})},Q=t.ref(!0),ie=()=>{var U;if(a.record&&a.schema&&(F({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)&&F({consumer_id:a.record.consumer_id||a.record.consumer}),F(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)&&F({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&&O("redis",{partials:a.record.partials}),k.value?D(a.record):F(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const Z={};for(const ee in a.entityMap){const ne=a.entityMap[ee].id,ae=a.entityMap[ee].idField,ue=ae==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(ae).replace("_","-"));Object.prototype.hasOwnProperty.call(P,ue)&&(Z[ue]=ne)}F(Z)}if((U=a.entityMap.consumer)!=null&&U.id&&a.schema&&a.credential){const Z={};Object.prototype.hasOwnProperty.call(P,"consumer")&&(Z.consumer=a.entityMap.consumer.id),F(Z)}Q.value=!1};return t.watch(Q,U=>{i("loading",U)}),t.watch(()=>a.schema,(U,Z)=>{var ne,ae;if(h(U||{},Z||{}))return;const ee=s(U);Object.assign(P,ee.model),$.value={fields:(ae=(ne=$.value)==null?void 0:ne.fields)==null?void 0:ae.map(ue=>({...ue,disabled:ue.disabled||!1}))},Object.assign(I,JSON.parse(JSON.stringify(ee.model))),k.value=ic(ee.model.name,m),N.value=Ne.getSharedFormName(ee.model.name),ie()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var U,Z;E.value=s(a.schema),Object.assign(P,((U=E.value)==null?void 0:U.model)||{}),$.value=((Z=E.value)==null?void 0:Z.schema)||{},ie()}),(U,Z)=>{var ne;const ee=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",oV,[Q.value?(t.openBlock(),t.createBlock(ee,{key:0,type:"form"})):P.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",rV,[k.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(Yp[k.value]),{key:0,"form-model":P,"form-options":Y.value,"form-schema":$.value,"is-editing":e.editing,model:e.record,"on-form-change":D,"on-model-updated":W,"on-validity-change":G,schema:e.rawSchema,onGlobalAction:Z[0]||(Z[0]=(ae,ue)=>U.$emit("globalAction",ae,ue))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(ae=>[ae.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Yo.VaultSecretPickerProvider),t.mergeProps({key:0},ae,{onOpen:z}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):N.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Ne.sharedForms)[N.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":P,"form-options":Y.value,"form-schema":$.value,"is-editing":e.editing,"on-model-updated":W,"on-partial-toggled":O,"show-new-partial-modal":ae=>U.$emit("showNewPartialModal",ae)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(ae=>[ae.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Yo.VaultSecretPickerProvider),t.mergeProps({key:0},ae,{onOpen:z}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(t.openBlock(),t.createBlock(t.unref(Ne.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:P,options:Y.value,schema:$.value,onModelUpdated:W,onPartialToggled:O,onRefreshModel:R,onShowNewPartialModal:Z[1]||(Z[1]=ae=>U.$emit("showNewPartialModal",ae))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",iV,t.toDisplayString(t.unref(b)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ne=t.unref(It)[P.name])!=null&&ne.fieldRules&&(a.config.isNewOtelSchema||P.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(s0,{rules:t.unref(It)[P.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Ne.AUTOFILL_SLOT_NAME),fn:t.withCtx(ae=>[ae.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(Yo.VaultSecretPickerProvider),t.mergeProps({key:0},ae,{onOpen:z}),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(Yo.VaultSecretPicker),{config:a.config,setup:K.value,onCancel:Z[2]||(Z[2]=()=>K.value=!1),onProceed:x},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-780e65cb"]]),lV={key:1},sV=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",lV,[t.renderSlot(n.$slots,"default")]))}}),cV={class:"kong-ui-entities-plugin-form-container"},dV={key:0},uV={class:"plugin-form-actions"},fV=we(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var oe;const o=n,r=e,i=Qn.useRouter(),{i18n:{t:a}}=$e.useI18n(),{customSchemas:l,typedefs:s}=$e.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=$e.usePluginHelpers(),{getMessageFromError:d}=de.useErrors(),{capitalize:f}=de.useStringHelpers(),{objectsAreEqual:u}=de.useHelpers(),{axiosInstance:p}=de.useAxios((oe=r.config)==null?void 0:oe.axiosRequestConfig),m=t.ref(!1),h=t.computed(()=>!!r.pluginId),b=t.computed(()=>r.pluginId?de.EntityBaseFormType.Edit:de.EntityBaseFormType.Create),g=t.ref(void 0),_=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),y=t.ref(void 0),N=t.ref({}),k=t.ref(),E=t.ref();t.provide(Ic,{redisType:k,redisPath:E,isEditing:h.value});const $=t.ref(!1),I=t.reactive({enabled:!0,protocols:[],tags:[]}),P=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),Y=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&Y.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const K=t.ref(""),A=t.computed(()=>{if(w.value){let M=Be.form[r.config.app].credential[b.value];return M=M.replace(/{resourceEndpoint}/gi,O.value),M}return r.config.entityType&&r.config.entityId?Be.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):Be.form[r.config.app].edit.all}),z=()=>{m.value=!m.value},x=t.computed(()=>{var le,_e,be,Ce,xe,pe,fe,nt;const M=r.config.entityType==="consumers"&&r.config.entityId||((_e=(le=y.value)==null?void 0:le.consumer)==null?void 0:_e.id),X=r.config.entityType==="consumer_groups"&&r.config.entityId||((Ce=(be=y.value)==null?void 0:be.consumer_group)==null?void 0:Ce.id),L=r.config.entityType==="services"&&r.config.entityId||((pe=(xe=y.value)==null?void 0:xe.service)==null?void 0:pe.id),se=r.config.entityType==="routes"&&r.config.entityId||((nt=(fe=y.value)==null?void 0:fe.route)==null?void 0:nt.id);if(!(M||X||L||se))return{global:{entity:j.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ce={};return L&&(ce.service={entity:j.PluginScope.SERVICE,entityEndpoint:"services",id:L,idField:Zt.SERVICE}),se&&(ce.route={entity:j.PluginScope.ROUTE,entityEndpoint:"routes",id:se,idField:Zt.ROUTE}),M&&(ce.consumer={entity:j.PluginScope.CONSUMER,entityEndpoint:"consumers",id:M,idField:Zt.CONSUMER}),X&&(ce.consumer_group={entity:j.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:X,idField:Zt.CONSUMER_GROUP}),r.config.entityType&&(ce.focusedEntity={entity:j.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:Zt[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),ce}),R=t.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||b.value===de.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}),O=t.computed(()=>{var L;const M=r.developer?"developers":"consumers",X=((L=Nn[r.pluginType])==null?void 0:L.endpoint)||"/plugins";return`${M}/${r.config.entityId}${r.developer?"/credentials":""}${X}`}),W=M=>{const X=Array.from(new Set(M.map(L=>typeof L)));return X.length>1?"string":X[0]},G=(M,X,L,se)=>{var be,Ce;let ce=X&&X.fields||[];const le=l[r.pluginType],_e=(Ce=(be=Nn[r.pluginType])==null?void 0:be.schema)==null?void 0:Ce.fields;return Array.isArray(ce)&&(ce=ce.reduce((xe,pe)=>{const fe=Object.keys(pe)[0];return fe.match(/-/g)?xe[fe.replace(/-/g,"_")]={...pe[fe],fieldNameHasDashes:!0}:xe[fe]=pe[fe],xe},{})),Object.keys(ce).sort().forEach(xe=>{var Fo,Uo,Ko,jo,Go,qo,zo;const pe=ce[xe];pe.type==="set"&&(pe.type="array");const fe=M?`${M}-${xe}`:`${xe}`;if((Fo=le==null?void 0:le.fieldsToDelete)!=null&&Fo.includes(fe)){rc(L,fe);return}if(Object.prototype.hasOwnProperty.call(pe,"overwrite")||pe.hidden)return;if(pe.type==="table")return G(fe,pe.schema,L);if(pe.fields)return se&&pe.type==="record"?(L[fe]={type:"object",model:xe,schema:{fields:Object.values(G(fe,pe,{},!0))}},L):G(fe,pe,L);if(L[fe]={id:fe,model:xe},L[fe].type=pe.type==="boolean"?"checkbox":"input",L[fe].required=pe.required,L[fe].referenceable=pe.referenceable,fe.startsWith("config-"))if(!se&&pe.type==="array"&&(K.value=fe),se&&K.value&&fe.startsWith(K.value)){const ke=fe.slice(K.value.length+1);L[fe].label=ke.split("-").map(c).join(".")}else L[fe].label=c(fe);if((M==="config"||M.startsWith("config-"))&&(Uo=ce[xe])!=null&&Uo.description&&(L[fe].help=Ho.marked.parse(ce[xe].description,{mangle:!1,headerIds:!1})),pe.type==="map"){if(L[fe].type="object-advanced",L[fe].values=pe.values,pe.values.type==="array"){const{type:ke}=pe.values.elements||{};L[fe].schema={fields:[{schema:{fields:[{...Pe,model:fe,valueArrayType:ke==="integer"?"number":ke||"string",inputAttributes:{...Pe.inputAttributes,type:ke==="integer"?"number":"text",inputMode:ke==="integer"?"numeric":"text"}}]}}]}}else pe.values.fields&&(L[fe].schema={fields:[{type:"object",model:"object",schema:{fields:pe.values.fields.map(ke=>{const Ye=Object.keys(ke)[0];return{model:Ye,type:"input",label:f(Ye),placeholder:Ye,inputType:ke[Ye].type}})}}]});return L}if(pe.enum&&pe.type==="array"&&(L[fe].type="checklist",L[fe].values=pe.enum,L[fe].multi=!0,L[fe].multiSelect=!0),pe.one_of&&pe.type!=="array"&&(L[fe].type="select",L[fe].values=pe.one_of,L[fe].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),pe.elements&&pe.type==="array"){const ke=pe.elements;if(L[fe].referenceable=ke.referenceable,L[fe].elements=ke,["string","integer","number"].includes(ke.type)&&!ke.one_of){const{id:Ye,help:Ue,label:Se,hint:Ze,values:it,referenceable:En,model:kn}=L[fe],{inputAttributes:wi,...aR}=JSON.parse(JSON.stringify(Pe));wi.type=ke.type==="string"?"text":"number",L[fe]={id:Ye,help:Ue,label:Se,hint:Ze,values:it,referenceable:En,model:kn,inputAttributes:wi,...aR}}}if(pe.hint&&(L[fe].hint=pe.hint),le&&!le.overwriteDefault&&Object.keys(le).forEach(ke=>{if(ke===fe){const{help:Ye,label:Ue,hint:Se,values:Ze,referenceable:it,elements:En}=L[fe],{help:kn,...wi}=le[ke];L[fe]={help:Ye,label:Ue,hint:Se,values:Ze,referenceable:it,elements:En,...wi},typeof kn=="string"&&(L[fe].help=Ho.marked.parse(kn,{mangle:!1,headerIds:!1}))}}),pe.type==="array"&&((Ko=pe.elements)==null?void 0:Ko.type)==="record"&&Array.isArray(pe.elements.fields)){let ke={};for(const Ue of pe.elements.fields)ke={...ke,...Ue};const Ye=(qo=(Go=(jo=L[fe])==null?void 0:jo.items)==null?void 0:Go.schema)==null?void 0:qo.fields;if(Array.isArray(Ye))for(const Ue of L[fe].items.schema.fields){const Se=(zo=ke[Ue.model])==null?void 0:zo.description;Ue.help===void 0&&typeof Se=="string"&&(Ue.help=Ho.marked.parse(Se,{mangle:!1,headerIds:!1}))}if(Ye||(L[fe].type="array",L[fe].newElementButtonLabelClasses="kong-form-new-element-button-label",L[fe].fieldClasses="array-card-container-wrapper",L[fe].itemContainerComponent="FieldArrayCardContainer",L[fe].items={type:"object",schema:{fields:Object.values(G(fe,pe.elements,{},!0))}},L[fe].items.schema.fields.forEach(Ue=>{var Se,Ze;for(const it of pe.elements.fields){const En=Object.keys(it)[0],kn=((Ze=(Se=Ue.id)==null?void 0:Se.split)==null?void 0:Ze.call(Se,"-"))??[];if(kn[kn.length-1]===En){Ue.model=En,Ue.label=c(En);break}}}),pe.elements.type==="record"&&(L[fe].nestedFields=!0)),!L[fe].nestedFields)L[fe].items.default=()=>pe.elements.fields.reduce((Ue,Se)=>{const Ze=Object.keys(Se)[0];return Ue[Ze]=Se[Ze].default,Ue},{});else{const Ue=(Se,Ze)=>{if(Se.type==="object"){Se.model&&(Ze[Se.model]={});for(const it of Se.schema.fields)Ue(it,Se.model?Ze[Se.model]:Ze)}else Se.model&&(Ze[Se.model]=Se.default)};L[fe].items.default=()=>{const Se={};return Ue(L[fe].items,Se),Se}}}if(w.value&&_e){for(let ke=0;ke<_e.length;ke++)if(_e[ke][fe]){L[fe]={...L[fe],..._e[ke][fe]};break}}if(pe.required&&pe.type!=="boolean"&&(L[fe].required=!0,L[fe].selectOptions={hideNoneSelectedText:!0}),pe.required&&pe.type==="boolean"&&(L[fe].default=pe.default??!1),pe.default!=null&&typeof pe.default!="object"&&pe.default!=="function"&&(L[fe].default=pe.default),L[fe].type==="input"){["string","number"].includes(typeof L[fe].default)&&r.config.app==="konnect"&&(L[fe].placeholder=`Default: ${L[fe].default===""?"<empty string>":L[fe].default}`);const{type:ke}=pe.elements||{};ke&&(L[fe].valueArrayType=ke==="integer"?"number":ke),L[fe].inputType=pe.type==="array"||pe.type==="string"?pe.encrypted?"password":"text":pe.type}let nt="string";pe.enum?nt=W(pe.enum):pe.type==="boolean"?nt="boolean":pe.type==="number"||pe.type==="integer"?(nt="number",L[fe].inputType="number"):pe.type==="array"?(nt="array",L[fe].default=pe.default,pe.len_min>0&&(L[fe].submitWhenNull=!0)):pe.type==="foreign"?nt="object":pe.default&&Array.isArray(pe.default)?(nt="array",L[fe].valueArrayType=W(pe.default)):pe.default&&(nt=typeof pe.default),L[fe].valueType=nt,pe.fieldNameHasDashes&&(L[fe].fieldNameHasDashes=!0)}),L},F=()=>{var xe,pe,fe,nt,Fo,Uo,Ko,jo,Go,qo,zo,ke;const M=((xe=It[r.pluginType])==null?void 0:xe.scope.includes(j.PluginScope.SERVICE))??!0,X=((pe=It[r.pluginType])==null?void 0:pe.scope.includes(j.PluginScope.ROUTE))??!0,L=((fe=It[r.pluginType])==null?void 0:fe.scope.includes(j.PluginScope.CONSUMER))??!0,se=r.config.disableConsumerGroupScope?!1:((nt=It[r.pluginType])==null?void 0:nt.scope.includes(j.PluginScope.CONSUMER_GROUP))??!0,ce=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Uo=(Fo=y.value)==null?void 0:Fo.consumer)!=null&&Uo.id),le=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((jo=(Ko=y.value)==null?void 0:Ko.consumer_group)!=null&&jo.id),_e=r.config.entityType==="services"&&!!r.config.entityId||!!((qo=(Go=y.value)==null?void 0:Go.service)!=null&&qo.id),be=r.config.entityType==="routes"&&!!r.config.entityId||!!((ke=(zo=y.value)==null?void 0:zo.route)!=null&&ke.id),Ce=[];if(M&&Ce.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.gateway_service.placeholder"),type:"AutoSuggest",entity:"services",inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:_e&&r.disableScopeSelection}),X&&Ce.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.route.placeholder"),type:"AutoSuggest",entity:"routes",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:be&&r.disableScopeSelection}),L&&Ce.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.consumer.placeholder"),type:"AutoSuggest",entity:"consumers",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:ce&&r.disableScopeSelection}),se&&Ce.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.consumer_group.placeholder"),type:"AutoSuggest",entity:"consumer_groups",entityDataKey:"consumer_group",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:le&&r.disableScopeSelection}),Ce.length){const Ye=[...M?["service"]:[],...X?["route"]:[],...L?["consumer"]:[],...se?["consumer_group"]:[]],Se=Ye.splice(Ye.length-2,2).map(it=>a(it==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${it}.plural`)).join(`${Ye.length>0?",":""} and/or `),Ze=["Specific",[...Ye.length>0?[Ye.map(it=>a(it==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${it}.plural`)).join(", ")]:[],Se].join(", ")].join(" ");R.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Ze,fields:[]}),R.selectionGroup.fields[1].fields=Ce}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(R,l[r.pluginType].formSchema)},V=t.computed(()=>!u(P.fields,I,!0)),D=t.computed(()=>!B.value&&!$.value&&(b.value===de.EntityBaseFormType.Create||V.value)),Q=t.ref(!1),ie=t.ref(),H=M=>{r.credential&&M.password&&(M.password=""),P.fields.id=(M==null?void 0:M.id)||void 0,ie.value=M==null?void 0:M.ordering,Object.assign(I,P.fields),y.value=M,Q.value=!0},re=t.ref({}),U=M=>{var X;P.fields=M.model,P.fields.id=((X=y.value)==null?void 0:X.id)||void 0,Object.assign(I,M.originalModel),re.value=M.data,r.isWizardStep&&o("model-updated",{model:P.fields,data:M.data,resourceEndpoint:O.value})},Z=t.ref(new Map),ee=t.computed(()=>[P.clientErrorMessage,P.serverErrorMessage].filter(Boolean).join("; ")),ne=M=>{M.valid?Z.value.delete(M.model):Z.value.set(M.model,M.error),P.clientErrorMessage=[...Z.value.entries()].map(([X,L])=>`${X}: ${typeof L=="string"?L:d(L)}`).join("; "),P.clientErrorMessage&&(P.serverErrorMessage="")};t.watch([x,Q],(M,X)=>{const L=M[0]!==X[0],se=M[1],ce=X[1];if(!w.value&&b.value===de.EntityBaseFormType.Edit&&(L||se&&se!==ce)){const le=G("config",N.value,R);te.value&&(le._isCustomPlugin=!0),k.value&&(le._supported_redis_partial_type=k.value),_.value=le}},{deep:!0});const ae=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},ue=t.computed(()=>{let M=`${r.config.apiBaseUrl}${Be.form[r.config.app].validate}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{id}/gi,r.pluginId),M}),q=t.computed(()=>{const M=r.config.entityType&&r.config.entityId&&!r.developer,X=w.value?Be.form[r.config.app].credential[b.value]:Be.form[r.config.app][b.value][M?"forEntity":"all"];let L=`${r.config.apiBaseUrl}${X}`;return r.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),L=L.replace(/{resourceEndpoint}/gi,O.value),L=L.replace(/{id}/gi,r.pluginId),L=L.replace(/{entityType}/gi,r.config.entityType||""),L=L.replace(/{entityId}/gi,r.config.entityId||""),L}),te=t.computed(()=>!Object.keys(It).includes(r.pluginType)),v=t.computed(()=>{const M=re.value;if(w.value){for(const X in j.PluginScope){const L=j.PluginScope[X];M[L]&&!M[L].id&&(M[L]={id:r.config.entityId})}delete M.created_at}return re.value.partials&&E.value&&rc(M,E.value),M}),C=async()=>{if(!P.clientErrorMessage&&!r.isWizardStep)try{P.isReadonly=!0;let M;const X=JSON.parse(JSON.stringify(v.value)),L=l[r.pluginType];typeof(L==null?void 0:L.shamefullyTransformPayload)=="function"&&L.shamefullyTransformPayload({originalModel:I,model:P.fields,payload:X,schema:_.value}),!w.value&&!te.value&&await p.post(ue.value,X),b.value==="create"?M=await p.post(q.value,X):b.value==="edit"&&(M=r.config.app==="konnect"||k.value&&X.partials?await p.put(q.value,Object.assign({ordering:ie.value},X)):await p.patch(q.value,X)),Object.assign(I,P.fields),o("update",M==null?void 0:M.data)}catch(M){P.serverErrorMessage=d(M),o("error",M)}finally{P.isReadonly=!1}},S=t.computed(()=>{var se;const M=w.value?(se=Nn[r.pluginType])==null?void 0:se.schemaEndpoint:r.pluginType,X=w.value?Be.form[r.config.app].credentialSchema:Be.form[r.config.app].pluginSchema;let L=`${r.config.apiBaseUrl}${X}`;return r.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),L=L.replace(/{plugin}/gi,M),L}),T=t.ref(""),B=t.ref(!1),J=t.ref("");return t.onBeforeMount(async()=>{var M,X,L,se;B.value=!0;try{if(w.value&&r.config.app==="konnect"){const ce=(M=Nn[r.pluginType])==null?void 0:M.schemaEndpoint,le=um[ce];T.value=ce,_.value=G("",le,{}),B.value=!1}else{const ce=r.schema??(await p.get(S.value)).data;if(g.value=ce,ce)if(w.value)_.value=G("",ce,{}),B.value=!1;else{const le=ce.fields.find(be=>be.config);N.value=le?le.config:ce,ce.supported_partials&&(k.value=Object.keys(ce.supported_partials).find(be=>[Xo.REDIS_CE,Xo.REDIS_EE].includes(be)),E.value=(X=ce.supported_partials[k.value])==null?void 0:X[0]),F();const _e=(L=ce.fields.find(be=>be.protocols))==null?void 0:L.protocols;if(_e){const{default:be=[],elements:Ce={}}=_e;R.protocols.default=be,R.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:be.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(se=Ce.one_of)!=null&&se.length&&(R.protocols.values=Ce.one_of.map(xe=>({label:xe,value:xe})))}if(Q.value||b.value===de.EntityBaseFormType.Create){const be=G("config",N.value,R);k.value&&(be._supported_redis_partial_type=k.value),te.value&&(be._isCustomPlugin=!0),_.value=be}}}}catch(ce){console.error(ce),J.value=d(ce),o("error:fetch-schema",ce)}finally{B.value=!1}}),(M,X)=>{const L=t.resolveComponent("KSkeleton"),se=t.resolveComponent("KEmptyState"),ce=t.resolveComponent("KButton"),le=t.resolveComponent("KTabs"),_e=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",cV,[B.value?(t.openBlock(),t.createBlock(L,{key:0,type:"form"})):J.value?(t.openBlock(),t.createBlock(se,{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(de.EntityBaseForm),{key:2,"can-submit":D.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(de.SupportedEntityType).Plugin,"error-message":ee.value,"fetch-url":A.value,"form-fields":v.value,"is-readonly":P.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ae,"onFetch:error":X[4]||(X[4]=be=>M.$emit("error",be)),"onFetch:success":H,onLoading:X[5]||(X[5]=be=>M.$emit("loading",be))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",dV)):(t.openBlock(),t.createBlock(sV,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",uV,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ce,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:X[3]||(X[3]=be=>z())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(ce,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:P.isReadonly,onClick:ae},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(ce,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!D.value||P.isReadonly,type:"submit",onClick:C},{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:C},null,32),t.createVNode(aV,{config:e.config,credential:w.value,editing:b.value===t.unref(de.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,"entity-map":x.value,"raw-schema":g.value,record:y.value,schema:_.value,onGlobalAction:X[0]||(X[0]=(be,Ce)=>M.$emit("globalAction",be,Ce)),onLoading:X[1]||(X[1]=be=>$.value=be),onModelUpdated:U,onShowNewPartialModal:X[2]||(X[2]=be=>M.$emit("showNewPartialModal",be)),onValidityChange:ne},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),t.createVNode(_e,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(a)("view_configuration.title"),visible:m.value,onClose:z},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(le,{"data-testid":"form-view-configuration-slideout-tabs",tabs:Y.value},{json:t.withCtx(()=>[t.createVNode(t.unref(de.JsonCodeBlock),{config:e.config,"entity-record":v.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(de.YamlCodeBlock),{"entity-record":v.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(de.TerraformCodeBlock),{"credential-type":T.value,"entity-record":v.value,"entity-type":t.unref(de.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-420ab237"]]),pV={class:"kong-ui-entities-plugins-list"},mV={class:"button-row"},gV={class:"empty-state-icon-gateway"},hV={class:"name-cell-wrapper"},yV={class:"info-wrapper"},_V={key:0,class:"info-name"},bV={key:1,class:"info-name"},wV={key:2,class:"info-type"},EV={key:1},kV=we(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var S,T;const o=$e.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=$e.useI18n(),l=Qn.useRouter(),{axiosInstance:s}=de.useAxios((S=i.config)==null?void 0:S.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=de.useTableState(()=>y.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var B;return((B=i.config)==null?void 0:B.entityType)==="consumers"}),m=t.computed(()=>{var B;return((B=i.config)==null?void 0:B.entityType)==="consumer_groups"}),h=i.config.app==="konnect"||de.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),b=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(T=i.config)!=null&&T.entityId||(g.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),g.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},h&&(g.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),g.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const _=g,w=t.computed(()=>{var J,oe,M,X;let B=i.config.entityType?`${i.config.apiBaseUrl}${Be.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Be.list[i.config.app].all}`;return i.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,((J=i.config)==null?void 0:J.controlPlaneId)||""):i.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,(oe=i.config)!=null&&oe.workspace?`/${i.config.workspace}`:"")),B.replace(/{entityType}/gi,((M=i.config)==null?void 0:M.entityType)||"").replace(/{entityId}/gi,((X=i.config)==null?void 0:X.entityId)||"")}),y=t.ref(""),N=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:g.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...g.enabled,label:a("search.filter.field.enabled")},name:g.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:k,fetcherState:E,fetcherCacheKey:$}=de.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),I=()=>{y.value=""},P=()=>{$.value++},Y=t.ref(null),K=B=>{var oe,M,X,L;const J=[];return((oe=B.route)!=null&&oe.id||B.route_id)&&J.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((M=B.service)!=null&&M.id||B.service_id)&&J.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((X=B.consumer)!=null&&X.id||B.consumer_id)&&J.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((L=B.consumer_group)!=null&&L.id||B.consumer_group_id)&&J.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),J.length?J:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},A=async(B,J)=>{var oe;return B===null?!1:await((oe=i.canRetrieveScopedEntity)==null?void 0:oe.call(i,B,J.id))},z=(B,J)=>{var M,X,L,se,ce;let oe=null;switch(B){case"route":oe=(M=J.route)==null?void 0:M.id;break;case"service":oe=(X=J.service)==null?void 0:X.id;break;case"consumer":oe=(L=J.consumer)==null?void 0:L.id;break;case"consumer_group":oe=(se=J.consumer_group)==null?void 0:se.id;break}oe&&((ce=i.config)!=null&&ce.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(B,oe))},x=t.ref(!1),R=t.ref(null),O=t.computed(()=>{const B={action:"disable",id:"",name:""};if(R.value){const{enabled:J,id:oe,name:M}=R.value;B.action=J?"disable":"enable",B.id=oe,B.name=o.getDisplayName(M)||oe}return B}),W=B=>{x.value=!0,R.value=B},G=()=>{x.value=!1,R.value=null},F=async()=>{var M,X,L,se,ce,le,_e,be;if(!await((M=i.canEdit)==null?void 0:M.call(i,R.value))||!R.value)return;let J=`${i.config.apiBaseUrl}${(ce=Be.item[i.config.app])==null?void 0:ce[(X=i.config)!=null&&X.entityType?"forEntity":"all"].replace(/{entityType}/gi,((L=i.config)==null?void 0:L.entityType)||"").replace(/{entityId}/gi,((se=i.config)==null?void 0:se.entityId)||"")}`.replace(/{id}/gi,R.value.id||"");i.config.app==="konnect"?J=J.replace(/{controlPlaneId}/gi,((le=i.config)==null?void 0:le.controlPlaneId)||""):i.config.app==="kongManager"&&(J=J.replace(/\/{workspace}/gi,(_e=i.config)!=null&&_e.workspace?`/${i.config.workspace}`:""));const oe=!R.value.enabled;try{const{data:Ce}=((be=i.config)==null?void 0:be.app)==="konnect"?await s.put(J,{...R.value,enabled:oe},{timeout:12e4}):await s.patch(J,{...R.value,enabled:oe},{timeout:12e4});r("toggle-enabled",oe,Ce),R.value.enabled=oe}catch(Ce){r("error",Ce)}},V=async(B,J)=>{const oe=B.id;if(!await J(oe)){r("copy:error",{entity:B,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:B,field:"id",message:a("copy.success",{val:oe})})},D=async(B,J)=>{const oe=JSON.stringify(B);if(!await J(oe)){r("copy:error",{entity:B,message:a("errors.copy")});return}r("copy:success",{entity:B,message:a("copy.success_brief")})},Q=async B=>{var oe;await((oe=i.canRetrieve)==null?void 0:oe.call(i,B))&&l.push(i.config.getViewRoute(B))},ie=B=>({label:a("actions.view"),to:i.config.getViewRoute(B)}),H=B=>({label:a("actions.edit"),to:i.config.getEditRoute(B)}),re=B=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(B)}),U=t.ref(void 0),Z=t.ref(!1),ee=t.ref(!1),ne=t.ref(""),ae=de.useDeleteUrlBuilder(i.config,w.value),ue=B=>{U.value=B,Z.value=!0},q=()=>{Z.value=!1},te=async()=>{var B,J,oe;if((B=U.value)!=null&&B.id){ee.value=!0;try{await s.delete(ae(U.value.id)),ee.value=!1,Z.value=!1,$.value++,r("delete:success",U.value)}catch(M){ne.value=((oe=(J=M.response)==null?void 0:J.data)==null?void 0:oe.message)||M.message||a("errors.delete"),r("error",M)}finally{ee.value=!1}}},v=()=>{l.push(i.config.createRoute)};t.watch(E,B=>{var J,oe,M;if(B.status===de.FetcherStatus.Error){Y.value={title:a("errors.general")},(M=(oe=(J=B.error)==null?void 0:J.response)==null?void 0:oe.data)!=null&&M.message&&(Y.value.message=B.error.response.data.message),r("error",B.error);return}Y.value=null});const C=t.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")});return t.onBeforeMount(async()=>{await i.canCreate()&&(C.value.title=a("plugins.list.empty_state.title"),C.value.ctaText=a("actions.create"))}),(B,J)=>{const oe=t.resolveComponent("KButton"),M=t.resolveComponent("KBadge"),X=t.resolveComponent("KTruncate"),L=t.resolveComponent("KInputSwitch"),se=t.resolveComponent("KDropdownItem"),ce=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",pV,[t.createVNode(t.unref(de.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":b.value,"empty-state-options":C.value,"enable-entity-actions":"","error-message":Y.value,fetcher:t.unref(k),"fetcher-cache-key":t.unref($),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:y.value,"table-headers":t.unref(_),title:e.title,"title-tag":e.titleTag,onClearSearchInput:I,"onClick:row":J[4]||(J[4]=le=>Q(le)),onSort:P,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(de.EntityFilter),{modelValue:y.value,"onUpdate:modelValue":J[0]||(J[0]=le=>y.value=le),config:N.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",mV,[!u.value&&f.value?(t.openBlock(),t.createBlock(oe,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:J[1]||(J[1]=le=>B.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(de.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(oe,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.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:le})=>[t.createElementVNode("div",hV,[t.createVNode(t.unref(to.PluginIcon),{class:"plugin-icon",name:le.name,size:24},null,8,["name"]),t.createElementVNode("div",yV,[le.instance_name?(t.openBlock(),t.createElementBlock("span",_V,t.toDisplayString(le.instance_name),1)):(t.openBlock(),t.createElementBlock("span",bV,t.toDisplayString(t.unref(o).getDisplayName(le.name)),1)),le.instance_name?(t.openBlock(),t.createElementBlock("span",wV,t.toDisplayString(t.unref(o).getDisplayName(le.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:le})=>[K(le).length>0?(t.openBlock(),t.createBlock(X,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(K(le),_e=>(t.openBlock(),t.createBlock(t.unref(de.PermissionsWrapper),{key:_e.badgeText,"auth-function":()=>A(_e.type,le),"force-show":""},{default:t.withCtx(({isAllowed:be})=>[t.createVNode(M,{class:t.normalizeClass(be||"disabled"),onClick:t.withModifiers(Ce=>be&&_e.type&&z(_e.type,le),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_e.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",EV,"-"))]),enabled:t.withCtx(({row:le})=>[t.createVNode(t.unref(de.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(le)&&await e.canToggle(le)),"force-show":""},{default:t.withCtx(({isAllowed:_e})=>{var be,Ce;return[t.createElementVNode("div",{onClick:J[3]||(J[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(L,{disabled:!_e,"disabled-tooltip-text":!_e&&((Ce=(be=e.config).getToggleDisabledTooltip)==null?void 0:Ce.call(be,le))||void 0,"model-value":le.enabled,onClick:t.withModifiers(xe=>_e&&W(le),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:le})=>[t.createVNode(M,{appearance:t.unref(ec)(le)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(ec)(le)?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:le})=>[t.createVNode(t.unref(de.TableTags),{tags:le},null,8,["tags"])]),actions:t.withCtx(({row:le})=>[t.createVNode(ce,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(se,{"data-testid":"action-entity-copy-id",onClick:be=>V(le,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(ce,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(se,{"data-testid":"action-entity-copy-json",onClick:be=>D(le,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(de.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(le)},{default:t.withCtx(()=>[t.createVNode(se,{"data-testid":"action-entity-view","has-divider":"",item:ie(le)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(de.PermissionsWrapper),{"auth-function":()=>e.canEdit(le)},{default:t.withCtx(()=>[t.createVNode(se,{"data-testid":"action-entity-edit",item:H(le)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(de.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(le)},{default:t.withCtx(()=>[re(le)?(t.openBlock(),t.createBlock(se,{key:0,"data-testid":"action-entity-config-dyn-order",item:re(le)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(de.PermissionsWrapper),{"auth-function":()=>e.canDelete(le)},{default:t.withCtx(()=>[t.createVNode(se,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_e=>ue(le)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!y.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var le;return[t.createVNode(t.unref(de.EntityEmptyState),{"action-button-text":t.unref(a)("plugins.list.empty_state_v2.create_cta"),appearance:"secondary","can-create":()=>e.canCreate(),"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state",description:t.unref(a)("plugins.list.empty_state_v2.description"),"learn-more":e.config.app==="konnect",title:t.unref(a)("plugins.list.empty_state_v2.title"),"onClick:create":v,"onClick:learnMore":J[2]||(J[2]=_e=>B.$emit("click:learn-more"))},t.createSlots({image:t.withCtx(()=>[t.createElementVNode("div",gV,[t.createVNode(t.unref(Ee.PlugIcon),{color:t.unref(Ow),size:t.unref(Bw)},null,8,["color","size"])])]),_:2},[(le=e.config)!=null&&le.isControlPlaneGroup?{name:"message",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["action-button-text","can-create","data-testid","description","learn-more","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),t.createVNode(t.unref(de.EntityToggleModal),{action:O.value.action,"entity-id":O.value.id,"entity-name":O.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":F,visible:x.value,onCancel:G,onProceed:G},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(de.EntityDeleteModal),{"action-pending":ee.value,description:t.unref(a)("delete.description"),"entity-name":U.value&&(U.value.instance_name||U.value.name||U.value.id),"entity-type":t.unref(de.EntityTypes).Plugin,error:ne.value,title:t.unref(a)("delete.title"),visible:Z.value,onCancel:q,onProceed:te},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-3f031caf"]]),CV={class:"plugin-select-card-wrapper"},NV=["data-testid"],vV={class:"plugin-card-header"},SV={class:"plugin-card-title"},xV={key:0,class:"plugin-card-actions"},AV=["data-testid","title"],IV={key:0,class:"plugin-card-text"},TV={key:0},PV=["title"],Ol=we(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=Qn.useRouter(),{i18n:{t:a}}=$e.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),d=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?d():u()},u=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===j.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},b=(_,w)=>{const y=r.config;r.config.app==="konnect"&&typeof y.getCustomEditRoute=="function"&&y.getCustomEditRoute&&i.push(y.getCustomEditRoute(_,w))},g=()=>{if(!s.value&&r.config.app==="konnect"){const _=r.config;p.value&&_.createCustomRoute?i.push(_.createCustomRoute):m.value&&d()}};return(_,w)=>{const y=t.resolveComponent("KButton"),N=t.resolveComponent("KDropdownItem"),k=t.resolveComponent("KDropdownMenu"),E=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",CV,[t.createVNode(E,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:w[1]||(w[1]=$=>s.value||m.value?void 0:f())},[t.createElementVNode("div",vV,[t.createElementVNode("div",SV,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",xV,[t.createVNode(k,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(y,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ee.MoreIcon),{size:t.unref($w)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(N,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers($=>b(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(N,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(h,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[t.createVNode(t.unref(to.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||m.value&&!p.value?(t.openBlock(),t.createElementBlock("div",IV,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",TV,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,PV)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,AV),t.createElementVNode("div",{class:"plugin-card-footer",onClick:g},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,NV)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),OV=we(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var h;const o=e,r=n,{i18nT:i,i18n:{t:a}}=$e.useI18n(),{getMessageFromError:l}=de.useErrors(),{axiosInstance:s}=de.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var b;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((b=o.plugin)==null?void 0:b.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 b=o.plugin.customPluginType==="streaming"?Be.select[o.config.app].streamingCustomPluginItem:Be.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${b}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var b,g,_,w;if(d.value=!0,f.value="",!(!((b=o.plugin)!=null&&b.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(y){const{response:N}=y;(N==null?void 0:N.status)===400&&((w=(_=N.data)==null?void 0:_.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(y)}finally{d.value=!1}};return(b,g)=>{const _=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(de.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(de.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[0]=y=>b.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(w,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:g[2]||(g[2]=y=>b.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(_,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[1]=y=>b.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),$V={class:"custom-plugins-grid"},BV={class:"empty-state-title"},VV={class:"empty-state-description"},$l=310,RV=we(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=$e.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=$e.usePluginHelpers(),s=t.ref(!0),c=k=>{r("plugin-clicked",k)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const k=JSON.parse(JSON.stringify(o.pluginList))[j.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:j.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(k):k}),f=t.ref(!1),u=t.ref(null),p=k=>{f.value=!0,u.value={id:k.id,name:k.name,customPluginType:k.customPluginType}},m=k=>{var E;k&&(r("revalidate"),r("delete:success",((E=u.value)==null?void 0:E.name)||"")),f.value=!1,u.value=null},h=t.ref($l),b=t.ref(null),g=t.ref(null),_=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),w=t.ref(!1),y=()=>{h.value=Math.max(a(g.value),$l),N()},N=()=>{var k,E;(k=g.value)!=null&&k.length&&(w.value=l(b.value,(E=g.value)==null?void 0:E.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(g.value),$l),N(),window==null||window.addEventListener("resize",y)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",y)}),(k,E)=>{const $=t.resolveComponent("KEmptyState"),I=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",$V,[d.value.length?(t.openBlock(),t.createBlock(I,{key:1,modelValue:s.value,"onUpdate:modelValue":E[0]||(E[0]=P=>s.value=P),class:"custom-plugins-collapse","data-testid":`${t.unref(j.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(j.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:b,class:"plugin-card-container",style:t.normalizeStyle(_.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(P,Y)=>(t.openBlock(),t.createBlock(Ol,{key:`plugin-card-${Y}`,ref_for:!0,ref_key:"pluginCardRef",ref:g,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:P,onCustomPluginDelete:K=>p(P),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[w.value?void 0:{name:"trigger",fn:t.withCtx(()=>[E[2]||(E[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock($,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",BV,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",VV,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock(OV,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:E[1]||(E[1]=P=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),Bl=310,Wp=we(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const o=t.useModel(e,"modelValue"),r=e,i=n,{i18n:{t:a}}=$e.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=$e.usePluginHelpers(),c=t.ref(Bl),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),Bl),h()},h=()=>{var b,g;(b=f.value)!=null&&b.length&&(p.value=s(d.value,(g=f.value)==null?void 0:g.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),Bl),h(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(b,g)=>{const _=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(_,{modelValue:o.value,"onUpdate:modelValue":g[0]||(g[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:d,class:"plugin-card-container",style:t.normalizeStyle(u.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock(Ol,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:y=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[g[1]||(g[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),DV={class:"plugin-select-grid"},MV={class:"empty-state-title"},LV={class:"empty-state-description"},Vl=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=$e.useI18n(),a=t.ref(!1),l=t.ref(Ll),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[j.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",DV,[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",MV,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",LV,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(Wp,{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(Ml),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Wp,{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))])}}}),FV={class:"kong-ui-entities-plugin-select-form"},UV={class:"plugins-filter-input-container"},KV={key:0},jV={key:3,"aria-live":"polite",class:"plugins-results-container"},GV={"data-testid":"kong-tab"},qV={class:"tab-description"},zV={"data-testid":"custom-tab"},HV={class:"tab-description"},YV=we(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var F;const o=e,r=n,i=Qn.useRoute(),a=Qn.useRouter(),{i18n:{t:l}}=$e.useI18n(),{pluginMetaData:s}=$e.usePluginMetaData(),{getMessageFromError:c}=de.useErrors(),{sortAlpha:d,objectsAreEqual:f}=de.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),b=t.ref([]),g=t.ref([]),_=t.ref({}),w=t.ref([]),{axiosInstance:y}=de.useAxios((F=o.config)==null?void 0:F.axiosRequestConfig),N=t.computed(()=>_.value?Object.entries(_.value).filter(([V])=>V!==j.PluginGroup.CUSTOM_PLUGINS).reduce((V,[,D])=>{for(const Q of D)V[Q.id]=Q;return V},{}):{}),k=t.computed(()=>{var Q;if(!_.value)return{};const V=u.value.toLowerCase(),D=JSON.parse(JSON.stringify(_.value));for(const ie in _.value){const H=((Q=_.value[ie])==null?void 0:Q.filter(re=>re.name.toLowerCase().includes(V)||re.id.toLowerCase().includes(V)||re.group.toLowerCase().includes(V)))||[];H.length?D[ie]=H:delete D[ie]}return D}),E=t.computed(()=>o.highlightedPluginIds.reduce((V,D)=>{const Q=N.value[D];return Q&&V.push(Q),V},[])),$=t.computed(()=>Object.keys(k.value).length>0),I=t.computed(()=>Object.keys(_.value).length>0&&!$.value),P=t.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),Y=t.computed(()=>{var D;let V=P.value.length&&((i==null?void 0:i.hash)||((D=P.value[0])==null?void 0:D.hash))||"";return V==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(V="#kong"),V}),K=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...b.value])].filter(V=>!o.ignoredPlugins.includes(V)).filter(V=>o.config.entityType&&(o.config.entityType==="services"&&s[V]&&!s[V].scope.includes(j.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[V]&&!s[V].scope.includes(j.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[V]&&!s[V].scope.includes(j.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[V]&&!s[V].scope.includes(j.PluginScope.CONSUMER))?!1:V).reduce((V,D)=>{var U;const Q=s[D]&&s[D].name||D,ie={...s[D],id:D,name:Q,available:b.value.includes(D),disabledMessage:"",group:((U=s[D])==null?void 0:U.group)||j.PluginGroup.CUSTOM_PLUGINS};ie.group===j.PluginGroup.CUSTOM_PLUGINS&&(ie.customPluginType=g.value.find(Z=>Z.name===D)?"streaming":"schema"),o.disabledPlugins&&(ie.disabledMessage=o.disabledPlugins[D]);const H=ie.group||l("plugins.select.misc_plugins");let re=V[H];return re||(re=[]),re.push(ie),re.sort(d("name")),V[H]=re,V},{}),A=t.computed(()=>{var D;let V=`${o.config.apiBaseUrl}${Be.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?V=V.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(V=((D=o.config.gatewayInfo)==null?void 0:D.edition)==="community"?`${o.config.apiBaseUrl}${Be.select[o.config.app].availablePluginsForOss}`:V.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),V}),z=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let V=`${o.config.apiBaseUrl}${Be.select[o.config.app].streamingCustomPlugins}`;return V=V.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),V}return null}),x=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let V=`${o.config.apiBaseUrl}${Be.list[o.config.app].forEntity}`;return o.config.app==="konnect"?V=V.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(V=V.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),V.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),R=V=>{a.replace({hash:V,query:i.query})};t.watch(()=>o.disabledPlugins,(V,D)=>{!f(V,D)&&!p.value&&(_.value=K())}),t.watch(()=>o.ignoredPlugins,(V,D)=>{!f(V,D)&&!p.value&&(_.value=K())}),t.watch(p,V=>{r("loading",V)});const O=t.ref(!1),W=t.ref(!1),G=t.ref(!1);return t.onBeforeMount(async()=>{O.value=await o.canCreateCustomPlugin(),W.value=await o.canEditCustomPlugin(),G.value=await o.canDeleteCustomPlugin()}),t.onMounted(async()=>{try{const{data:V}=await y.get(A.value);if(o.config.app==="konnect"){const{names:D}=V;if(b.value=D||[],z.value){const{data:Q}=await y.get(z.value);g.value=Q.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:D}}=V;b.value=D?Object.keys(D):[]}}catch(V){m.value=!0,h.value=c(V)}if(x.value)try{const{data:{data:V}}=await y.get(x.value);if(V!=null&&V.length){const D=V.reduce((Q,ie)=>(ie.name&&Q.push(ie.name),Q),[]);w.value=w.value.concat(D)}}catch{}m.value||(_.value=K()),p.value=!1}),(V,D)=>{const Q=t.resolveComponent("KInput"),ie=t.resolveComponent("KSkeletonBox"),H=t.resolveComponent("KSkeleton"),re=t.resolveComponent("KEmptyState"),U=t.resolveComponent("KTooltip"),Z=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",FV,[t.createElementVNode("div",UV,[t.createVNode(Q,{modelValue:u.value,"onUpdate:modelValue":D[0]||(D[0]=ee=>u.value=ee),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",KV,[t.createVNode(ie,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(H,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(re,{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})):I.value&&u.value?(t.openBlock(),t.createBlock(re,{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",jV,[P.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(Z,{key:0,modelValue:Y.value,"onUpdate:modelValue":D[5]||(D[5]=ee=>Y.value=ee),"data-testid":"plugins-tabs",tabs:P.value,onChange:R},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",GV,[t.createElementVNode("p",qV,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(Vl,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":E.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":k.value,onPluginClicked:D[1]||(D[1]=ee=>V.$emit("plugin-clicked",ee))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",zV,[t.createElementVNode("p",HV,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(RV,{"can-create-custom-plugin":O.value,"can-delete-custom-plugin":G.value,"can-edit-custom-plugin":W.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":k.value,"onDelete:success":D[2]||(D[2]=ee=>V.$emit("delete-custom:success",ee)),onPluginClicked:D[3]||(D[3]=ee=>V.$emit("plugin-clicked",ee)),onRevalidate:D[4]||(D[4]=()=>_.value=K())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(U,{"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(Vl,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":E.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":k.value,onPluginClicked:D[6]||(D[6]=ee=>V.$emit("plugin-clicked",ee))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-c18b2b5c"]]),WV={class:"kong-ui-entity-plugin-config-card"},XV={class:"name-cell-wrapper"},ZV={class:"info-name"},JV={key:0},QV={key:0},eR={key:0},tR={key:0},nR={key:0},Rl="config",oR=we(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var w;const o=n,r=e,{i18n:{t:i}}=$e.useI18n(),a=$e.usePluginMetaData(),{setFieldType:l}=$e.usePluginHelpers(),{getPropValue:s}=de.useHelpers(),c=t.computed(()=>{var y;return(y=Be.item[r.config.app])==null?void 0:y[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"")}),d=t.computed(()=>{var k,E;const y={},N=((k=b.value)==null?void 0:k.fields)||[];for(let $=0;$<N.length;$++){const I=b.value.fields[$],P=(E=Object.keys(I))==null?void 0:E[0];l(y,P,I[P])}return{...y,instance_name:{section:de.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:de.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:de.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:de.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:de.ConfigurationSchemaSection.Basic,order:6},protocols:{type:de.ConfigurationSchemaType.BadgeTag,section:de.ConfigurationSchemaSection.Basic,order:7}}}),f=t.computed(()=>{var N,k,E;if(!((N=b.value)!=null&&N.fields))return[];const y=(k=b.value.fields)==null?void 0:k.find($=>{var P;return((P=Object.keys($))==null?void 0:P[0])===Rl});return((E=y==null?void 0:y[Rl])==null?void 0:E.fields)||[]}),u=t.computed(()=>{var N,k;const y={};if(!f.value)return y;for(let E=0;E<((N=f.value)==null?void 0:N.length);E++){const $=f.value[E],I=(k=Object.keys($))==null?void 0:k[0],P=$[I];P.required&&(y[I]={order:1}),l(y,I,P)}return y}),{getMessageFromError:p}=de.useErrors(),{axiosInstance:m}=de.useAxios((w=r.config)==null?void 0:w.axiosRequestConfig),h=t.computed(()=>{var N,k;let y=`${r.config.apiBaseUrl}${Be.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?y=y.replace(/{controlPlaneId}/gi,((N=r.config)==null?void 0:N.controlPlaneId)||""):r.config.app==="kongManager"&&(y=y.replace(/\/{workspace}/gi,(k=r.config)!=null&&k.workspace?`/${r.config.workspace}`:"")),y=y.replace(/{plugin}/gi,r.config.pluginType),y}),b=t.ref({});de.useSchemaProvider(b);const g=t.ref(!1),_=t.ref("");return t.onBeforeMount(async()=>{g.value=!0;try{const{data:y}=await m.get(h.value);b.value=y}catch(y){_.value=p(y),o("error:fetch-schema",y)}finally{g.value=!1}}),(y,N)=>{const k=t.resolveComponent("KSkeleton"),E=t.resolveComponent("KEmptyState"),$=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",WV,[g.value?(t.openBlock(),t.createBlock(k,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):_.value?(t.openBlock(),t.createBlock(E,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(_.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(de.EntityBaseConfigCard),{key:2,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(de.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":e.hideTitle,"plugin-config-key":Rl,"plugin-config-schema":u.value,"onFetch:error":N[0]||(N[0]=I=>y.$emit("fetch:error",I)),"onFetch:success":N[1]||(N[1]=I=>y.$emit("fetch:success",I)),onLoading:N[2]||(N[2]=I=>y.$emit("loading",I))},{name:t.withCtx(I=>[t.createElementVNode("div",XV,[t.createVNode(t.unref(to.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",I),size:24},null,8,["name"]),t.createElementVNode("span",ZV,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",I))),1)])]),consumer:t.withCtx(I=>[t.unref(s)("rowValue",I)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(de.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",I).id,value:t.unref(s)("rowValue",I).id,type:t.unref(de.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(s)("rowValue",I).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",I).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",JV,"–"))]),route:t.withCtx(I=>[t.unref(s)("rowValue",I)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(de.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",I).id,value:t.unref(s)("rowValue",I).id,type:t.unref(de.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(s)("rowValue",I).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",I).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",QV,"–"))]),service:t.withCtx(I=>[t.unref(s)("rowValue",I)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(de.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",I).id,value:t.unref(s)("rowValue",I).id,type:t.unref(de.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(s)("rowValue",I).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",I).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",eR,"–"))]),consumer_group:t.withCtx(I=>[t.unref(s)("rowValue",I)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(de.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",I).id,value:t.unref(s)("rowValue",I).id,type:t.unref(de.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>y.$emit("navigation-click",t.unref(s)("rowValue",I).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",I).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",tR,"–"))]),partials:t.withCtx(I=>{var P,Y,K,A,z,x,R,O,W;return[t.unref(s)("rowValue",I)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(de.InternalLinkItem),{key:1,item:{key:(Y=(P=t.unref(s)("rowValue",I))==null?void 0:P[0])==null?void 0:Y.id,value:((A=(K=t.unref(s)("rowValue",I))==null?void 0:K[0])==null?void 0:A.id)+((x=(z=t.unref(s)("rowValue",I))==null?void 0:z[0])!=null&&x.name?"/"+((O=(R=t.unref(s)("rowValue",I))==null?void 0:R[0])==null?void 0:O.name):""),type:t.unref(de.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var G,F;return y.$emit("navigation-click",(F=(G=t.unref(s)("rowValue",I))==null?void 0:G[0])==null?void 0:F.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock($,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",I).label}),"data-testid":"partial-copy-uuid",text:(W=t.unref(s)("rowValue",I))==null?void 0:W[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",nR,"–"))]}),_:1},8,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-53806ec8"]]),{usePluginMetaData:rR,useProvideExperimentalFreeForms:iR}=$e;Object.defineProperty(he,"PluginGroup",{enumerable:!0,get:()=>j.PluginGroup}),Object.defineProperty(he,"PluginScope",{enumerable:!0,get:()=>j.PluginScope}),Object.defineProperty(he,"PluginIcon",{enumerable:!0,get:()=>to.PluginIcon}),Object.defineProperty(he,"getPluginIconURL",{enumerable:!0,get:()=>to.getPluginIconURL}),he.EXPERIMENTAL_FREE_FORM_PROVIDER=Xi,he.EntityTypeIdField=Zt,he.FEATURE_FLAGS=ac,he.PLUGIN_GROUPS_COLLAPSE_STATUS=Ll,he.PluginConfigCard=oR,he.PluginForm=fV,he.PluginGroupArray=Ml,he.PluginList=kV,he.PluginPartialType=Xo,he.PluginSelect=YV,he.PluginSelectCard=Ol,he.PluginSelectGrid=Vl,he.TOASTER_PROVIDER=lc,he.pluginEndpoints=Be,he.usePluginMetaData=rR,he.useProvideExperimentalFreeForms=iR,Object.defineProperty(he,Symbol.toStringTag,{value:"Module"})});