@kong-ui-public/entities-plugins 9.104.2 → 9.105.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 (52) hide show
  1. package/dist/entities-plugins.es.js +11145 -10269
  2. package/dist/entities-plugins.umd.js +35 -35
  3. package/dist/style.css +1 -1
  4. package/dist/types/components/free-form/Datakit/constants.d.ts +6 -0
  5. package/dist/types/components/free-form/Datakit/constants.d.ts.map +1 -1
  6. package/dist/types/components/free-form/Datakit/flow-editor/FlowCanvas.vue.d.ts.map +1 -1
  7. package/dist/types/components/free-form/Datakit/flow-editor/FlowEditor.vue.d.ts +18 -0
  8. package/dist/types/components/free-form/Datakit/flow-editor/FlowEditor.vue.d.ts.map +1 -1
  9. package/dist/types/components/free-form/Datakit/flow-editor/composables/useBranchLayout.d.ts +21 -0
  10. package/dist/types/components/free-form/Datakit/flow-editor/composables/useBranchLayout.d.ts.map +1 -0
  11. package/dist/types/components/free-form/Datakit/flow-editor/composables/useBranchNodeForm.d.ts +41 -0
  12. package/dist/types/components/free-form/Datakit/flow-editor/composables/useBranchNodeForm.d.ts.map +1 -0
  13. package/dist/types/components/free-form/Datakit/flow-editor/composables/useNodeForm.d.ts.map +1 -1
  14. package/dist/types/components/free-form/Datakit/flow-editor/node/FlowNode.vue.d.ts.map +1 -1
  15. package/dist/types/components/free-form/Datakit/flow-editor/node/GroupNode.vue.d.ts +7 -0
  16. package/dist/types/components/free-form/Datakit/flow-editor/node/GroupNode.vue.d.ts.map +1 -0
  17. package/dist/types/components/free-form/Datakit/flow-editor/node/NodeBadge.vue.d.ts +1 -1
  18. package/dist/types/components/free-form/Datakit/flow-editor/node/NodeBadge.vue.d.ts.map +1 -1
  19. package/dist/types/components/free-form/Datakit/flow-editor/node/NodePanelItem.vue.d.ts.map +1 -1
  20. package/dist/types/components/free-form/Datakit/flow-editor/node/NodePropertiesPanel.vue.d.ts.map +1 -1
  21. package/dist/types/components/free-form/Datakit/flow-editor/node/ValueIndicator.vue.d.ts.map +1 -1
  22. package/dist/types/components/free-form/Datakit/flow-editor/node/node-visual.d.ts +3 -0
  23. package/dist/types/components/free-form/Datakit/flow-editor/node/node-visual.d.ts.map +1 -0
  24. package/dist/types/components/free-form/Datakit/flow-editor/node/node.d.ts +1 -0
  25. package/dist/types/components/free-form/Datakit/flow-editor/node/node.d.ts.map +1 -1
  26. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/InputsField.vue.d.ts.map +1 -1
  27. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormBranch.vue.d.ts +7 -0
  28. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormBranch.vue.d.ts.map +1 -0
  29. package/dist/types/components/free-form/Datakit/flow-editor/node-forms/NodeFormCall.vue.d.ts.map +1 -1
  30. package/dist/types/components/free-form/Datakit/flow-editor/store/branch-group-manager.d.ts +53 -0
  31. package/dist/types/components/free-form/Datakit/flow-editor/store/branch-group-manager.d.ts.map +1 -0
  32. package/dist/types/components/free-form/Datakit/flow-editor/store/flow.d.ts +168 -14
  33. package/dist/types/components/free-form/Datakit/flow-editor/store/flow.d.ts.map +1 -1
  34. package/dist/types/components/free-form/Datakit/flow-editor/store/graph.d.ts +11 -0
  35. package/dist/types/components/free-form/Datakit/flow-editor/store/graph.d.ts.map +1 -0
  36. package/dist/types/components/free-form/Datakit/flow-editor/store/helpers.d.ts +29 -2
  37. package/dist/types/components/free-form/Datakit/flow-editor/store/helpers.d.ts.map +1 -1
  38. package/dist/types/components/free-form/Datakit/flow-editor/store/history.d.ts +1 -0
  39. package/dist/types/components/free-form/Datakit/flow-editor/store/history.d.ts.map +1 -1
  40. package/dist/types/components/free-form/Datakit/flow-editor/store/init.d.ts.map +1 -1
  41. package/dist/types/components/free-form/Datakit/flow-editor/store/store.d.ts +105 -3
  42. package/dist/types/components/free-form/Datakit/flow-editor/store/store.d.ts.map +1 -1
  43. package/dist/types/components/free-form/Datakit/flow-editor/store/validation.d.ts +2 -9
  44. package/dist/types/components/free-form/Datakit/flow-editor/store/validation.d.ts.map +1 -1
  45. package/dist/types/components/free-form/Datakit/schema/compat.d.ts +24 -0
  46. package/dist/types/components/free-form/Datakit/schema/compat.d.ts.map +1 -1
  47. package/dist/types/components/free-form/Datakit/schema/strict.d.ts +72 -0
  48. package/dist/types/components/free-form/Datakit/schema/strict.d.ts.map +1 -1
  49. package/dist/types/components/free-form/Datakit/types.d.ts +49 -5
  50. package/dist/types/components/free-form/Datakit/types.d.ts.map +1 -1
  51. package/dist/types/components/free-form/shared/EnhancedInput.vue.d.ts.map +1 -1
  52. package/package.json +9 -9
@@ -1,47 +1,47 @@
1
- (function(ke,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("@vueuse/core"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@vueuse/core","zod","@kong-ui-public/entities-plugins-icon"],t):(ke=typeof globalThis<"u"?globalThis:ke||self,t(ke["kong-ui-public-entities-plugins"]={},ke.Vue,ke["kong-ui-public-entities-shared"],ke.marked,ke.VueRouter,ke["kong-ui-public-i18n"],ke.entitiesPluginsMetadata,ke.forms,ke.entitiesVaults,null,ke.KongIcons,ke.Kongponents,ke.entitiesRedisConfigurations,null,ke.monaco,ke.core$1,ke.zod,ke.entitiesPluginsIcon))})(this,function(ke,t,fe,mr,so,je,Y,Pe,co,gM,Ce,xe,uo,hM,Vm,Ke,J,fo){"use strict";var pM=Object.defineProperty;var mM=(ke,t,fe)=>t in ke?pM(ke,t,{enumerable:!0,configurable:!0,writable:!0,value:fe}):ke[t]=fe;var Ye=(ke,t,fe)=>mM(ke,typeof t!="symbol"?t+"":t,fe);function Rm(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 gr=Rm(Vm),We={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here.",learn_more:"Learn more"}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service."},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Select a route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Select a consumer group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View advanced parameters",hide:"Hide advanced parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"All of these parameters are required: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Set the plugin's behavior by defining its configuration settings."}}},"free-form":{"ai-mcp-proxy":{tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request callout",by_lua_placeholder:"Enter Lua script here..."},redis_partial:{redis_partial_modal_title:"New shared configuration",partial_created_success_message:"Successfully created a new Redis configuration."},datakit:{description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Configure this plugin by using the flow editor.",description_example:"Start with a use case:",examples:{authenticate:"Authenticate Kong to a third-party service",combine:"Combine multiple API responses",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow editor",name:"Datakit flow editor",cta:"Go to flow editor",disabled_tooltip:"The flow editor is unavailable. To switch, fix configuration errors or remove unsupported nodes.",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add Vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",delete:"Delete",view_docs:"View docs",done:"Done"},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The jq node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return a response directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set gateway configuration data",description:"Get and set gateway host and request properties."},static:{name:"static",summary:"Define static values to use for call nodes",description:"Emits static values to be used as inputs for other nodes. The static node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Coming soon...",description:"Coming soon..."},cache:{name:"cache",summary:"Coming soon...",description:"Coming soon..."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},timeout:{label:"Timeout(s)"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},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 connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs."},proceed:"Yes, update"},phase_mask_help:"You can't add call nodes in the response phase."},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2",foreign_placeholder:"Enter a UUID of {entity}"}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",open_source:"open source",enterprise:"enterprise",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."},type_label:{host_port:"Host/Port",sentinel:"Sentinel",cluster:"Cluster"}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}},sp:{window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window&#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(xe,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/entities-shared"),require("marked"),require("vue-router"),require("@kong-ui-public/i18n"),require("@kong-ui-public/entities-plugins-metadata"),require("@kong-ui-public/forms"),require("@kong-ui-public/entities-vaults"),require("@kong-ui-public/entities-vaults/dist/style.css"),require("@kong/icons"),require("@kong/kongponents"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("@vueuse/core"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@kong/icons","@kong/kongponents","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@vueuse/core","zod","@kong-ui-public/entities-plugins-icon"],t):(xe=typeof globalThis<"u"?globalThis:xe||self,t(xe["kong-ui-public-entities-plugins"]={},xe.Vue,xe["kong-ui-public-entities-shared"],xe.marked,xe.VueRouter,xe["kong-ui-public-i18n"],xe.entitiesPluginsMetadata,xe.forms,xe.entitiesVaults,null,xe.KongIcons,xe.Kongponents,xe.entitiesRedisConfigurations,null,xe.monaco,xe.core$1,xe.zod,xe.entitiesPluginsIcon))})(this,function(xe,t,ge,gr,wo,Ze,H,Me,ko,n2,Se,Oe,Co,o2,Wm,Xe,Q,Eo){"use strict";var e2=Object.defineProperty;var t2=(xe,t,ge)=>t in xe?e2(xe,t,{enumerable:!0,configurable:!0,writable:!0,value:ge}):xe[t]=ge;var ot=(xe,t,ge)=>t2(xe,typeof t!="symbol"?t+"":t,ge);function Xm(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(n,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return n.default=e,Object.freeze(n)}const hr=Xm(Wm),rt={actions:{cancel:"Cancel",view_configuration:"View Configuration",create:"New plugin",create_custom:"Create",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",confirm_delete:"Yes, delete",view:"View Details",configure_dynamic_ordering:"Configure Dynamic Ordering",go_to_plugins:"Go to Plugins",save:"Save",add_entity:"Add {entity}",remove_entity:"Remove {entity}"},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON"},delete:{title:"Delete a Plugin",custom_title:"Delete {name}",custom_plugin:"Custom Plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to Delete Custom Plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied To",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer Group"},id:"ID",name:"Name",instance_name:"Instance Name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a New Plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here.",learn_more:"Learn more"}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service."},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer Group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other Plugins",view_more:"View more",view_less:"View less",tabs:{kong:{title:"Kong Plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No Plugins",empty_description:"No plugins are available."},custom:{title:"Custom Plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom Plugins are not available with this Gateway. Create a Hybrid or Dedicated Cloud Gateway to leverage Custom Plugins.",empty_title:"No Custom Plugins",empty_description:"No custom plugins have been added to this Control Plane.",create:{name:"Custom Plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted Plugins"}},form:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is Enabled",off_text:"This plugin is Disabled"},instance_name:{label:"Instance Name",help:"A custom name for this plugin instance to help identifying from the list view."},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Enter list of tags"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The Gateway Service to which this plugin configuration will apply",placeholder:"Select a Gateway Service",plural:"Gateway Services"},route:{label:"Select a route",help:"The Route that this Plugin configuration will target",placeholder:"Select a Route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The Consumer that this plugin configuration will target",placeholder:"Select a Consumer",plural:"Consumers"},consumer_group:{label:"Select a consumer group",help:"The Consumer Group that this plugin configuration will target",placeholder:"Select a Consumer Group",plural:"Consumer Groups"}},grouping:{plugin_configuration:{title:"Plugin Configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"View advanced parameters",hide:"Hide advanced parameters"}},field_rules:{at_least_one_of:"At least one of these parameters is required: {parameters}",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"All of these parameters are required: {parameters}",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Set the plugin's behavior by defining its configuration settings."}}},"free-form":{"ai-mcp-proxy":{tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request callout",by_lua_placeholder:"Enter Lua script here..."},redis_partial:{redis_partial_modal_title:"New shared configuration",partial_created_success_message:"Successfully created a new Redis configuration."},datakit:{description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Configure this plugin by using the flow editor.",description_example:"Start with a use case:",examples:{authenticate:"Authenticate Kong to a third-party service",combine:"Combine multiple API responses",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow editor",name:"Datakit flow editor",cta:"Go to flow editor",disabled_tooltip:"The flow editor is unavailable. To switch, fix configuration errors or remove unsupported nodes.",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add Vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",delete:"Delete",view_docs:"View docs",done:"Done"},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The jq node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return a response directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set gateway configuration data",description:"Get and set gateway host and request properties."},static:{name:"static",summary:"Define static values to use for call nodes",description:"Emits static values to be used as inputs for other nodes. The static node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Conditional execution",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Coming soon...",description:"Coming soon..."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},timeout:{label:"Timeout(s)"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {min} and {max} characters",reserved_node_name:'"{nodeName}" is a reserved node name'}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},phase_mask_help:"You can't add call nodes in the response phase."},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2",foreign_placeholder:"Enter a UUID of {entity}"}},redis:{title:"Redis Configuration",shared_configuration:{label:"Use shared configuration",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins.",title:"Shared Redis Configuration",error:"Fetching shared Redis configurations failed.",tooltip:"Only compatible {type} redis configurations will be listed here.",configuration_selector_label:"Select stored Redis configuration",configuration_selector_placeholder:"Pick Redis configuration",create_new_configuration:"New {type} shared configuration",open_source:"open source",enterprise:"enterprise",empty_state:"No shared configurations",badge:"Recommended",selector:{title:"Select a Redis configuration",placeholder:"Filter Configurations",description:"Select an existing shared Redis configuration or create a new one. Any updates to this configuration will automatically apply to all associated plugins."},type_label:{host_port:"Host/Port",sentinel:"Sentinel",cluster:"Cluster"}},dedicated_configuration:{label:"Use dedicated configuration",description:"Create a Redis configuration exclusively for this plugin, with settings that won’t impact other plugins.",title:"Connection Settings"},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last Updated at",type_label:"Redis Type"}},custom_plugin:{alert:"Note: For custom plugins, we cannot determine the correct Redis configuration type. Please ensure you select the appropriate option manually.",tooltip:"To apply a shared redis configuration, the redis fields must defined as Kong plugins in plugin schema."}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current Control Plane",cp_group_label:"Control Plane",realm_group_label:"Realms (Can only select one)"}},sp:{window_type:{label:"Rate Limit Window Type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window&#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 Te(){const e=je.createI18n("en-us",We);return{i18n:e,i18nT:je.i18nTComponent(e)}}function is(){const{capitalize:e}=fe.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(u,p,m)=>{var h,_,g;if(!(!u||!p||!m))switch(m.type){case"boolean":u[p]={type:fe.ConfigurationSchemaType.BadgeStatus,...u[p]};break;case"string":m.encrypted?u[p]={type:fe.ConfigurationSchemaType.Redacted,...u[p]}:u[p]={type:fe.ConfigurationSchemaType.Text,...u[p]};break;case"set":((h=m.elements)==null?void 0:h.type)==="string"&&(u[p]={type:fe.ConfigurationSchemaType.BadgeTag,...u[p]});break;case"array":n.includes(p)?u[p]={type:fe.ConfigurationSchemaType.BadgeMethod,...u[p]}:((_=m.elements)==null?void 0:_.type)==="string"?m.encrypted?u[p]={type:fe.ConfigurationSchemaType.RedactedArray,...u[p]}:u[p]={type:fe.ConfigurationSchemaType.BadgeTag,...u[p]}:((g=m.elements)==null?void 0:g.type)==="record"&&(u[p]={type:fe.ConfigurationSchemaType.Json,...u[p]});break;case"record":u[p]={type:fe.ConfigurationSchemaType.Json,...u[p]};break;default:u[p]={type:fe.ConfigurationSchemaType.Text,...u[p]};break}},convertToDotNotation:u=>u.replace(/-/g,"."),unFlattenObject:u=>{const p={};for(const m in u){const h=m.split(".");h.reduce((_,g,y)=>_[g]||(_[g]=isNaN(h[y+1])?h.length-1===y?u[m]:{}:[]),p)}return p},dismissField:(u,p,m="redis",h=!1)=>{const _=new RegExp("(?<=-redis-).*");if(typeof u!="object"||u===null)return u;m==="redis"?Object.keys(u).forEach(g=>{g.match(_)&&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 _=(h=(m=window==null?void 0:window.getComputedStyle(u))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:h.split(" ").length;return p>_}return!0}}}var hr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(hr||{});const as=[Y.PluginGroup.AUTHENTICATION,Y.PluginGroup.AI,Y.PluginGroup.SECURITY,Y.PluginGroup.TRAFFIC_CONTROL,Y.PluginGroup.SERVERLESS,Y.PluginGroup.ANALYTICS_AND_MONITORING,Y.PluginGroup.TRANSFORMATIONS,Y.PluginGroup.LOGGING,Y.PluginGroup.DEPLOYMENT,Y.PluginGroup.WEBSOCKET,Y.PluginGroup.CUSTOM_PLUGINS],ls={[Y.PluginGroup.AUTHENTICATION]:!1,[Y.PluginGroup.AI]:!1,[Y.PluginGroup.SECURITY]:!1,[Y.PluginGroup.TRAFFIC_CONTROL]:!1,[Y.PluginGroup.SERVERLESS]:!1,[Y.PluginGroup.ANALYTICS_AND_MONITORING]:!1,[Y.PluginGroup.TRANSFORMATIONS]:!1,[Y.PluginGroup.LOGGING]:!1,[Y.PluginGroup.DEPLOYMENT]:!1,[Y.PluginGroup.CUSTOM_PLUGINS]:!1};var an=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(an||{});const ln=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},sn={label:"Tags",name:"tags",type:"input",inputType:"text",valueType:"array",valueArrayType:"string",placeholder:"Enter list of tags",help:"An optional set of strings for grouping and filtering, separated by commas.",hint:"e.g. tag1, tag2, tag3"},On={getColumnFields:ln,tags:sn,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(e){const n=e.inputAttributes||{};return delete e.inputAttributes,{type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",newElementButtonLabelClasses:"kong-form-new-element-button-label",inputAttributes:{class:"form-control",style:{minWidth:"200px"},...n},removeElementButtonLabel:"remove",styleClasses:"kong-form-field-wrapper",inputType:"text",valueType:"array",valueArrayType:"string",...e}}}},ss={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:sn}]},Dm={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"}}]},cs={fields:[{username:{}},{password:{inputType:"password"}},{tags:sn}]},Mm={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"}}]},Fm={class:"field-wrapper"},Lm=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}=Pe.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=Ve.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(Pe.FORMS_CONFIG),{axiosInstance:u}=fe.useAxios(f==null?void 0:f.axiosRequestConfig),p=()=>{if((f==null?void 0:f.app)==="konnect"){const w=/\b(us|eu|au|me|in)\b/.exec((f==null?void 0:f.apiBaseUrl)||"");if(w)return{region:w[1]}}return{}},m=t.ref(!0),h=t.ref([d]),_=async()=>{if((f==null?void 0:f.app)==="konnect")try{m.value=!0;let w=`${f==null?void 0:f.apiBaseUrl}/v1/realms`;const b=[];do{const v=await u.get(w);v&&v.data&&v.data.data&&b.push(...v.data.data.map(S=>({value:S.id,label:S.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);h.value=[d,...b]}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")),y=w=>{const b=w.includes("current-cp")?[{scope:"cp",id:null}]:[],v=l.value.filter(({scope:F})=>F!=="cp").map(({id:F})=>F),S=w.filter(F=>F!=="current-cp"),O=(v.length!==S.length||v.some(F=>!S.includes(F))?S.filter(F=>!v.includes(F)):S).map(F=>({...p(),scope:"realm",id:F}));l.value=[...b,...O]};return t.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),t.onMounted(()=>{_()}),n({clearValidationErrors:a}),(w,b)=>{const v=t.resolveComponent("KMultiselect");return t.openBlock(),t.createElementBlock("div",Fm,[t.createVNode(v,{items:h.value,loading:m.value,"model-value":g.value,"onUpdate:modelValue":y},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},Um=we(Lm,[["__scopeId","data-v-29b128ff"]]),ds={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
4
- client. If missing, it will be generated for you.`}},{tags:sn},{ttl:{help:"Time-to-live value for data"}}]},Km=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(Um):null}}},jm={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"}}]},us={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
3
+ will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function De(){const e=Ze.createI18n("en-us",rt);return{i18n:e,i18nT:Ze.i18nTComponent(e)}}function ys(){const{capitalize:e}=ge.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(d,p,m)=>{var y,b,g;if(!(!d||!p||!m))switch(m.type){case"boolean":d[p]={type:ge.ConfigurationSchemaType.BadgeStatus,...d[p]};break;case"string":m.encrypted?d[p]={type:ge.ConfigurationSchemaType.Redacted,...d[p]}:d[p]={type:ge.ConfigurationSchemaType.Text,...d[p]};break;case"set":((y=m.elements)==null?void 0:y.type)==="string"&&(d[p]={type:ge.ConfigurationSchemaType.BadgeTag,...d[p]});break;case"array":n.includes(p)?d[p]={type:ge.ConfigurationSchemaType.BadgeMethod,...d[p]}:((b=m.elements)==null?void 0:b.type)==="string"?m.encrypted?d[p]={type:ge.ConfigurationSchemaType.RedactedArray,...d[p]}:d[p]={type:ge.ConfigurationSchemaType.BadgeTag,...d[p]}:((g=m.elements)==null?void 0:g.type)==="record"&&(d[p]={type:ge.ConfigurationSchemaType.Json,...d[p]});break;case"record":d[p]={type:ge.ConfigurationSchemaType.Json,...d[p]};break;default:d[p]={type:ge.ConfigurationSchemaType.Text,...d[p]};break}},convertToDotNotation:d=>d.replace(/-/g,"."),unFlattenObject:d=>{const p={};for(const m in d){const y=m.split(".");y.reduce((b,g,h)=>b[g]||(b[g]=isNaN(y[h+1])?y.length-1===h?d[m]:{}:[]),p)}return p},dismissField:(d,p,m="redis",y=!1)=>{const b=new RegExp("(?<=-redis-).*");if(typeof d!="object"||d===null)return d;m==="redis"?Object.keys(d).forEach(g=>{g.match(b)&&delete d[g]}):y?d[m]=null:delete d[m],Object.assign(d,p)},isObjectEmpty:d=>Object.keys(d).length===0,unsetNullForeignKey:(d,p)=>{["service.id","route.id","consumer.id","consumer_group.id"].indexOf(d)>-1&&p[d]===null&&(delete p[d],p[d.replace(".id","")]=null)},formatPluginFieldLabel:d=>e(d.replace(/_/g," ")),getTallestPluginCardHeight:d=>{let p=0;if(d.length)for(let m=0;m<d.length;m++){const y=d[m].$el;p=y.offsetHeight>p?y.offsetHeight:p}return p},getToggleVisibility:(d,p)=>{var m,y;if(d&&p){const b=(y=(m=window==null?void 0:window.getComputedStyle(d))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:y.split(" ").length;return p>b}return!0}}}var yr=(e=>(e.REDIS_CE="redis-ce",e.REDIS_EE="redis-ee",e))(yr||{});const _s=[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],bs={[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 hn=(e=>(e.SERVICE="service_id",e.ROUTE="route_id",e.CONSUMER="consumer_id",e.CONSUMER_GROUP="consumer_group_id",e))(hn||{});const yn=e=>{const n=Object.fromEntries(e.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},_n={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"},Fn={getColumnFields:yn,tags:_n,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}}}},ws={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:_n}]},Zm={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"}}]},ks={fields:[{username:{}},{password:{inputType:"password"}},{tags:_n}]},Jm={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"}}]},Qm={class:"field-wrapper"},eg=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}=Me.composables.useAbstractFields({model:t.toRef(()=>r.model),schema:r.schema,formOptions:r.formOptions,emitModelUpdated:w=>{i("modelUpdated",w.value,w.model)}}),{i18n:s}=Ke.useI18n(),{t:c}=s,u={value:"current-cp",label:c("custom_field.key_auth_identity_realms.cp_label"),group:c("custom_field.key_auth_identity_realms.cp_group_label")},f=t.inject(Me.FORMS_CONFIG),{axiosInstance:d}=ge.useAxios(f==null?void 0:f.axiosRequestConfig),p=()=>{if((f==null?void 0:f.app)==="konnect"){const w=/\b(us|eu|au|me|in)\b/.exec((f==null?void 0:f.apiBaseUrl)||"");if(w)return{region:w[1]}}return{}},m=t.ref(!0),y=t.ref([u]),b=async()=>{if((f==null?void 0:f.app)==="konnect")try{m.value=!0;let w=`${f==null?void 0:f.apiBaseUrl}/v1/realms`;const _=[];do{const k=await d.get(w);k&&k.data&&k.data.data&&_.push(...k.data.data.map(E=>({value:E.id,label:E.name,group:c("custom_field.key_auth_identity_realms.realm_group_label")}))),w=k.data.meta.next?`${f==null?void 0:f.apiBaseUrl}${k.data.meta.next}`:null}while(w);y.value=[u,..._]}catch(w){console.error("Failed to fetch Konnect realms",w)}finally{m.value=!1}},g=t.computed(()=>l.value.map(w=>w.id||"current-cp")),h=w=>{const _=w.includes("current-cp")?[{scope:"cp",id:null}]:[],k=l.value.filter(({scope:D})=>D!=="cp").map(({id:D})=>D),E=w.filter(D=>D!=="current-cp"),I=(k.length!==E.length||k.some(D=>!E.includes(D))?E.filter(D=>!k.includes(D)):E).map(D=>({...p(),scope:"realm",id:D}));l.value=[..._,...I]};return t.watch(l,()=>{l.value||(l.value=[{scope:"cp",id:null}])}),t.onMounted(()=>{b()}),n({clearValidationErrors:a}),(w,_)=>{const k=t.resolveComponent("KMultiselect");return t.openBlock(),t.createElementBlock("div",Qm,[t.createVNode(k,{items:y.value,loading:m.value,"model-value":g.value,"onUpdate:modelValue":h},null,8,["items","loading","model-value"])])}}}),ve=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},tg=ve(eg,[["__scopeId","data-v-29b128ff"]]),Cs={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:_n},{ttl:{help:"Time-to-live value for data"}}]},ng=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(tg):null}}},og={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{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"}}]},Es={fields:[{username:{hint:"The username to use in the HMAC Signature verification."}},{secret:{inputType:"text",submitWhenNull:!1,hint:`The secret to use in the HMAC Signature verification. Note that
5
5
  if this parameter isn’t provided, Kong will generate a value for you and
6
- send it as part of the response body.`}},{tags:sn}]},qm={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",encrypted:!0,hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Gm={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:_n}]},rg={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{username:{required:!0,type:"string",unique:!0,hint:"The username to use in the HMAC Signature verification."}},{secret:{auto:!0,type:"string",encrypted:!0,hint:"The secret to use in the HMAC Signature verification. Note that if this parameter isn’t provided, Kong will generate a value for you and send it as part of the response body."}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},ig={fields:[{key:{submitWhenNull:!1,hint:`A unique string identifying the credential. If left out, it will
7
7
  be auto-generated.`}},{algorithm:{order:1,hint:"The algorithm used to verify the token’s signature."}},{rsa_public_key:{order:2,type:"textArea",label:"RSA public-key",hint:`If algorithm is RSA or ECDSA, the public key (in PEM format) to
8
8
  use to verify the token’s signature.`,rows:10,visible:e=>e&&e.algorithm&&/^((RS|PS|ES)(256|384|512)|EdDSA)$/.test(e.algorithm)}},{secret:{inputType:"text",hint:`If algorithm is HMAC, the secret used to sign JWTs for
9
- this credential. If left out, will be auto-generated.`}},{tags:sn}]},zm={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",encrypted:!0,unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string",encrypted:!0}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},fs={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:_n}]},ag={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"A unique string identifying the credential. If left out, it will be auto-generated.",required:!1,type:"string",encrypted:!0,unique:!0}},{secret:{auto:!0,hint:"If algorithm is HS256 or ES256, the secret used to sign JWTs for this credential. If left out, will be auto-generated.",type:"string",encrypted:!0}},{rsa_public_key:{type:"string"}},{algorithm:{default:"HS256",type:"string",one_of:["HS256","HS384","HS512","RS256","RS384","RS512","ES256","ES384","ES512","PS256","PS384","PS512","EdDSA"]}},{tags:{elements:{type:"string",required:!0},type:"set"}}]},Ns={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:On.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:On.tags}]},Hm={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"]}}]},ps={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
13
- client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:sn},{ttl:{help:"Time-to-live value for data"}}]},Ym=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)}}:{},Wm={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"}}]},St={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",nameKey:"plugins.meta.ldap-auth-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",nameKey:"plugins.meta.rate-limiting-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",nameKey:"plugins.meta.tls-metadata-headers.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",nameKey:"plugins.meta.tls-handshake-modifier.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...Y.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["solace-log"]},"ai-llm-as-judge":{descriptionKey:"plugins.meta.ai-llm-as-judge.description",nameKey:"plugins.meta.ai-llm-as-judge.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-llm-as-judge"]},"ai-mcp-proxy":{descriptionKey:"plugins.meta.ai-mcp-proxy.description",nameKey:"plugins.meta.ai-mcp-proxy.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-proxy"]},"ai-gcp-model-armor":{descriptionKey:"plugins.meta.ai-gcp-model-armor.description",nameKey:"plugins.meta.ai-gcp-model-armor.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-gcp-model-armor"]},"ai-mcp-oauth2":{descriptionKey:"plugins.meta.ai-mcp-oauth2.description",nameKey:"plugins.meta.ai-mcp-oauth2.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-oauth2"]},"ai-semantic-response-guard":{descriptionKey:"plugins.meta.ai-semantic-response-guard.description",nameKey:"plugins.meta.ai-semantic-response-guard.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]}},$n={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:ss,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:ln(ss),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:cs,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:ln(cs)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:ds,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:ln(ds)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:ps,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:ln(ps)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:fs,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:ln(fs)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:us,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:ln(us)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Gm,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},Xm={acls:Dm,basicauth_credentials:Mm,keyauth_credentials:jm,keyauth_enc_credentials:Wm,oauth2_credentials:Hm,hmacauth_credentials:qm,jwt_secrets:zm},Zm=()=>{const{i18n:{t:e}}=Te(),n={},o={};for(const[i,a]of Object.entries(St))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries($n))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:$n,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},po={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Jm={"config-prompts-prepend":{...po,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":{...po,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"}]}}}},Qm={"config-templates":{...po,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"}]}}}},eg={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)}},tg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},ng={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:On.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"}},Ae={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"},yr={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},og={"config-metrics":{...yr,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"}]}}}},rg={"config-functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},ig={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},ag={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},lg={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},sg={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},cg={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},ms=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:On.fields.arrayItems({newElementButtonLabel:"Add"})}),cg),_r={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},dg={"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":{}},ug=["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]:On.fields.arrayItems({newElementButtonLabel:"Add"})}),dg),gs={"config-add-json":{...Ae,label:"Config.Add.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Ae,label:"Config.Append.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Ae,label:"Config.Remove.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Ae,label:"Config.Rename.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Ae,label:"Config.Replace.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},fg={...gs,"config-allow-json":{...Ae,label:"Config.Allow.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Ae,label:"Config.Transform.Functions",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Ae,label:"Config.Transform.Json",inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},pg={"config-rules":{...po,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"}]}}}},mg={"config-session_redis_cluster_nodes":{...po,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"}]}}}},gg={"config-flow-functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},hg={"config-message-functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}}},yg={"config-metrics":{...yr,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"]}]}}}},_g={"config-metrics":{...yr,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"]}]}}}},bg={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},wg={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var hs=typeof global=="object"&&global&&global.Object===Object&&global,kg=typeof self=="object"&&self&&self.Object===Object&&self,vt=hs||kg||Function("return this")(),pt=vt.Symbol,ys=Object.prototype,Cg=ys.hasOwnProperty,Eg=ys.toString,mo=pt?pt.toStringTag:void 0;function Ng(e){var n=Cg.call(e,mo),o=e[mo];try{e[mo]=void 0;var r=!0}catch{}var i=Eg.call(e);return r&&(n?e[mo]=o:delete e[mo]),i}var Sg=Object.prototype,vg=Sg.toString;function xg(e){return vg.call(e)}var Ag="[object Null]",Ig="[object Undefined]",_s=pt?pt.toStringTag:void 0;function cn(e){return e==null?e===void 0?Ig:Ag:_s&&_s in Object(e)?Ng(e):xg(e)}function Rt(e){return e!=null&&typeof e=="object"}var Pg="[object Symbol]";function Ui(e){return typeof e=="symbol"||Rt(e)&&cn(e)==Pg}function bs(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 yt=Array.isArray,ws=pt?pt.prototype:void 0,ks=ws?ws.toString:void 0;function Cs(e){if(typeof e=="string")return e;if(yt(e))return bs(e,Cs)+"";if(Ui(e))return ks?ks.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function dn(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function Tg(e){return e}var Og="[object AsyncFunction]",$g="[object Function]",Bg="[object GeneratorFunction]",Vg="[object Proxy]";function br(e){if(!dn(e))return!1;var n=cn(e);return n==$g||n==Bg||n==Og||n==Vg}var Ki=vt["__core-js_shared__"],Es=function(){var e=/[^.]+$/.exec(Ki&&Ki.keys&&Ki.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Rg(e){return!!Es&&Es in e}var Dg=Function.prototype,Mg=Dg.toString;function un(e){if(e!=null){try{return Mg.call(e)}catch{}try{return e+""}catch{}}return""}var Fg=/[\\^$.*+?()[\]{}|]/g,Lg=/^\[object .+?Constructor\]$/,Ug=Function.prototype,Kg=Object.prototype,jg=Ug.toString,qg=Kg.hasOwnProperty,Gg=RegExp("^"+jg.call(qg).replace(Fg,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function zg(e){if(!dn(e)||Rg(e))return!1;var n=br(e)?Gg:Lg;return n.test(un(e))}function Hg(e,n){return e==null?void 0:e[n]}function fn(e,n){var o=Hg(e,n);return zg(o)?o:void 0}var ji=fn(vt,"WeakMap"),Ns=Object.create,Yg=function(){function e(){}return function(n){if(!dn(n))return{};if(Ns)return Ns(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function Wg(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 Xg(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var Zg=800,Jg=16,Qg=Date.now;function eh(e){var n=0,o=0;return function(){var r=Qg(),i=Jg-(r-o);if(o=r,i>0){if(++n>=Zg)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function th(e){return function(){return e}}var wr=function(){try{var e=fn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),nh=wr?function(e,n){return wr(e,"toString",{configurable:!0,enumerable:!1,value:th(n),writable:!0})}:Tg,oh=eh(nh);function rh(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var ih=9007199254740991,ah=/^(?:0|[1-9]\d*)$/;function qi(e,n){var o=typeof e;return n=n??ih,!!n&&(o=="number"||o!="symbol"&&ah.test(e))&&e>-1&&e%1==0&&e<n}function Ss(e,n,o){n=="__proto__"&&wr?wr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function Gi(e,n){return e===n||e!==e&&n!==n}var lh=Object.prototype,sh=lh.hasOwnProperty;function zi(e,n,o){var r=e[n];(!(sh.call(e,n)&&Gi(r,o))||o===void 0&&!(n in e))&&Ss(e,n,o)}function go(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?Ss(o,s,c):zi(o,s,c)}return o}var vs=Math.max;function ch(e,n,o){return n=vs(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=vs(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),Wg(e,this,s)}}var dh=9007199254740991;function Hi(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=dh}function Yi(e){return e!=null&&Hi(e.length)&&!br(e)}var uh=Object.prototype;function kr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||uh;return e===o}function fh(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var ph="[object Arguments]";function xs(e){return Rt(e)&&cn(e)==ph}var As=Object.prototype,mh=As.hasOwnProperty,gh=As.propertyIsEnumerable,Cr=xs(function(){return arguments}())?xs:function(e){return Rt(e)&&mh.call(e,"callee")&&!gh.call(e,"callee")};function hh(){return!1}var Is=typeof ke=="object"&&ke&&!ke.nodeType&&ke,Ps=Is&&typeof module=="object"&&module&&!module.nodeType&&module,yh=Ps&&Ps.exports===Is,Ts=yh?vt.Buffer:void 0,_h=Ts?Ts.isBuffer:void 0,ho=_h||hh,bh="[object Arguments]",wh="[object Array]",kh="[object Boolean]",Ch="[object Date]",Eh="[object Error]",Nh="[object Function]",Sh="[object Map]",vh="[object Number]",xh="[object Object]",Ah="[object RegExp]",Ih="[object Set]",Ph="[object String]",Th="[object WeakMap]",Oh="[object ArrayBuffer]",$h="[object DataView]",Bh="[object Float32Array]",Vh="[object Float64Array]",Rh="[object Int8Array]",Dh="[object Int16Array]",Mh="[object Int32Array]",Fh="[object Uint8Array]",Lh="[object Uint8ClampedArray]",Uh="[object Uint16Array]",Kh="[object Uint32Array]",Me={};Me[Bh]=Me[Vh]=Me[Rh]=Me[Dh]=Me[Mh]=Me[Fh]=Me[Lh]=Me[Uh]=Me[Kh]=!0,Me[bh]=Me[wh]=Me[Oh]=Me[kh]=Me[$h]=Me[Ch]=Me[Eh]=Me[Nh]=Me[Sh]=Me[vh]=Me[xh]=Me[Ah]=Me[Ih]=Me[Ph]=Me[Th]=!1;function jh(e){return Rt(e)&&Hi(e.length)&&!!Me[cn(e)]}function Wi(e){return function(n){return e(n)}}var Os=typeof ke=="object"&&ke&&!ke.nodeType&&ke,yo=Os&&typeof module=="object"&&module&&!module.nodeType&&module,qh=yo&&yo.exports===Os,Xi=qh&&hs.process,Bn=function(){try{var e=yo&&yo.require&&yo.require("util").types;return e||Xi&&Xi.binding&&Xi.binding("util")}catch{}}(),$s=Bn&&Bn.isTypedArray,Zi=$s?Wi($s):jh,Gh=Object.prototype,zh=Gh.hasOwnProperty;function Bs(e,n){var o=yt(e),r=!o&&Cr(e),i=!o&&!r&&ho(e),a=!o&&!r&&!i&&Zi(e),l=o||r||i||a,s=l?fh(e.length,String):[],c=s.length;for(var d in e)(n||zh.call(e,d))&&!(l&&(d=="length"||i&&(d=="offset"||d=="parent")||a&&(d=="buffer"||d=="byteLength"||d=="byteOffset")||qi(d,c)))&&s.push(d);return s}function Vs(e,n){return function(o){return e(n(o))}}var Hh=Vs(Object.keys,Object),Yh=Object.prototype,Wh=Yh.hasOwnProperty;function Rs(e){if(!kr(e))return Hh(e);var n=[];for(var o in Object(e))Wh.call(e,o)&&o!="constructor"&&n.push(o);return n}function Ji(e){return Yi(e)?Bs(e):Rs(e)}function Xh(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var Zh=Object.prototype,Jh=Zh.hasOwnProperty;function Qh(e){if(!dn(e))return Xh(e);var n=kr(e),o=[];for(var r in e)r=="constructor"&&(n||!Jh.call(e,r))||o.push(r);return o}function Qi(e){return Yi(e)?Bs(e,!0):Qh(e)}var ey=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ty=/^\w*$/;function ny(e,n){if(yt(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||Ui(e)?!0:ty.test(e)||!ey.test(e)||n!=null&&e in Object(n)}var _o=fn(Object,"create");function oy(){this.__data__=_o?_o(null):{},this.size=0}function ry(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var iy="__lodash_hash_undefined__",ay=Object.prototype,ly=ay.hasOwnProperty;function sy(e){var n=this.__data__;if(_o){var o=n[e];return o===iy?void 0:o}return ly.call(n,e)?n[e]:void 0}var cy=Object.prototype,dy=cy.hasOwnProperty;function uy(e){var n=this.__data__;return _o?n[e]!==void 0:dy.call(n,e)}var fy="__lodash_hash_undefined__";function py(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=_o&&n===void 0?fy:n,this}function pn(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}pn.prototype.clear=oy,pn.prototype.delete=ry,pn.prototype.get=sy,pn.prototype.has=uy,pn.prototype.set=py;function my(){this.__data__=[],this.size=0}function Er(e,n){for(var o=e.length;o--;)if(Gi(e[o][0],n))return o;return-1}var gy=Array.prototype,hy=gy.splice;function yy(e){var n=this.__data__,o=Er(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():hy.call(n,o,1),--this.size,!0}function _y(e){var n=this.__data__,o=Er(n,e);return o<0?void 0:n[o][1]}function by(e){return Er(this.__data__,e)>-1}function wy(e,n){var o=this.__data__,r=Er(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Dt(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])}}Dt.prototype.clear=my,Dt.prototype.delete=yy,Dt.prototype.get=_y,Dt.prototype.has=by,Dt.prototype.set=wy;var bo=fn(vt,"Map");function ky(){this.size=0,this.__data__={hash:new pn,map:new(bo||Dt),string:new pn}}function Cy(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Nr(e,n){var o=e.__data__;return Cy(n)?o[typeof n=="string"?"string":"hash"]:o.map}function Ey(e){var n=Nr(this,e).delete(e);return this.size-=n?1:0,n}function Ny(e){return Nr(this,e).get(e)}function Sy(e){return Nr(this,e).has(e)}function vy(e,n){var o=Nr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Mt(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])}}Mt.prototype.clear=ky,Mt.prototype.delete=Ey,Mt.prototype.get=Ny,Mt.prototype.has=Sy,Mt.prototype.set=vy;var xy="Expected a function";function ea(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(xy);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(ea.Cache||Mt),o}ea.Cache=Mt;var Ay=500;function Iy(e){var n=ea(e,function(r){return o.size===Ay&&o.clear(),r}),o=n.cache;return n}var Py=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Ty=/\\(\\)?/g,Oy=Iy(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Py,function(o,r,i,a){n.push(i?a.replace(Ty,"$1"):r||o)}),n});function ta(e){return e==null?"":Cs(e)}function Vn(e,n){return yt(e)?e:ny(e,n)?[e]:Oy(ta(e))}function Sr(e){if(typeof e=="string"||Ui(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function na(e,n){n=Vn(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[Sr(n[o++])];return o&&o==r?e:void 0}function Ds(e,n,o){var r=e==null?void 0:na(e,n);return r===void 0?o:r}function oa(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var Ms=pt?pt.isConcatSpreadable:void 0;function $y(e){return yt(e)||Cr(e)||!!(Ms&&e&&e[Ms])}function By(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=$y),i||(i=[]);++a<l;){var s=e[a];o(s)?oa(i,s):i[i.length]=s}return i}function Vy(e){var n=e==null?0:e.length;return n?By(e):[]}function Fs(e){return oh(ch(e,void 0,Vy),e+"")}var ra=Vs(Object.getPrototypeOf,Object),Ry="[object Object]",Dy=Function.prototype,My=Object.prototype,Ls=Dy.toString,Fy=My.hasOwnProperty,Ly=Ls.call(Object);function Uy(e){if(!Rt(e)||cn(e)!=Ry)return!1;var n=ra(e);if(n===null)return!0;var o=Fy.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&Ls.call(o)==Ly}function Us(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 Ky(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:Us(e,n,o)}var jy="\\ud800-\\udfff",qy="\\u0300-\\u036f",Gy="\\ufe20-\\ufe2f",zy="\\u20d0-\\u20ff",Hy=qy+Gy+zy,Yy="\\ufe0e\\ufe0f",Wy="\\u200d",Xy=RegExp("["+Wy+jy+Hy+Yy+"]");function Ks(e){return Xy.test(e)}function Zy(e){return e.split("")}var js="\\ud800-\\udfff",Jy="\\u0300-\\u036f",Qy="\\ufe20-\\ufe2f",e_="\\u20d0-\\u20ff",t_=Jy+Qy+e_,n_="\\ufe0e\\ufe0f",o_="["+js+"]",ia="["+t_+"]",aa="\\ud83c[\\udffb-\\udfff]",r_="(?:"+ia+"|"+aa+")",qs="[^"+js+"]",Gs="(?:\\ud83c[\\udde6-\\uddff]){2}",zs="[\\ud800-\\udbff][\\udc00-\\udfff]",i_="\\u200d",Hs=r_+"?",Ys="["+n_+"]?",a_="(?:"+i_+"(?:"+[qs,Gs,zs].join("|")+")"+Ys+Hs+")*",l_=Ys+Hs+a_,s_="(?:"+[qs+ia+"?",ia,Gs,zs,o_].join("|")+")",c_=RegExp(aa+"(?="+aa+")|"+s_+l_,"g");function d_(e){return e.match(c_)||[]}function u_(e){return Ks(e)?d_(e):Zy(e)}function f_(e){return function(n){n=ta(n);var o=Ks(n)?u_(n):void 0,r=o?o[0]:n.charAt(0),i=o?Ky(o,1).join(""):n.slice(1);return r[e]()+i}}var p_=f_("toUpperCase");function m_(){this.__data__=new Dt,this.size=0}function g_(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function h_(e){return this.__data__.get(e)}function y_(e){return this.__data__.has(e)}var __=200;function b_(e,n){var o=this.__data__;if(o instanceof Dt){var r=o.__data__;if(!bo||r.length<__-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Mt(r)}return o.set(e,n),this.size=o.size,this}function Ft(e){var n=this.__data__=new Dt(e);this.size=n.size}Ft.prototype.clear=m_,Ft.prototype.delete=g_,Ft.prototype.get=h_,Ft.prototype.has=y_,Ft.prototype.set=b_;function w_(e,n){return e&&go(n,Ji(n),e)}function k_(e,n){return e&&go(n,Qi(n),e)}var Ws=typeof ke=="object"&&ke&&!ke.nodeType&&ke,Xs=Ws&&typeof module=="object"&&module&&!module.nodeType&&module,C_=Xs&&Xs.exports===Ws,Zs=C_?vt.Buffer:void 0,Js=Zs?Zs.allocUnsafe:void 0;function E_(e,n){if(n)return e.slice();var o=e.length,r=Js?Js(o):new e.constructor(o);return e.copy(r),r}function N_(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 Qs(){return[]}var S_=Object.prototype,v_=S_.propertyIsEnumerable,ec=Object.getOwnPropertySymbols,la=ec?function(e){return e==null?[]:(e=Object(e),N_(ec(e),function(n){return v_.call(e,n)}))}:Qs;function x_(e,n){return go(e,la(e),n)}var A_=Object.getOwnPropertySymbols,tc=A_?function(e){for(var n=[];e;)oa(n,la(e)),e=ra(e);return n}:Qs;function I_(e,n){return go(e,tc(e),n)}function nc(e,n,o){var r=n(e);return yt(e)?r:oa(r,o(e))}function sa(e){return nc(e,Ji,la)}function oc(e){return nc(e,Qi,tc)}var ca=fn(vt,"DataView"),da=fn(vt,"Promise"),ua=fn(vt,"Set"),rc="[object Map]",P_="[object Object]",ic="[object Promise]",ac="[object Set]",lc="[object WeakMap]",sc="[object DataView]",T_=un(ca),O_=un(bo),$_=un(da),B_=un(ua),V_=un(ji),mt=cn;(ca&&mt(new ca(new ArrayBuffer(1)))!=sc||bo&&mt(new bo)!=rc||da&&mt(da.resolve())!=ic||ua&&mt(new ua)!=ac||ji&&mt(new ji)!=lc)&&(mt=function(e){var n=cn(e),o=n==P_?e.constructor:void 0,r=o?un(o):"";if(r)switch(r){case T_:return sc;case O_:return rc;case $_:return ic;case B_:return ac;case V_:return lc}return n});var R_=Object.prototype,D_=R_.hasOwnProperty;function M_(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&D_.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var vr=vt.Uint8Array;function fa(e){var n=new e.constructor(e.byteLength);return new vr(n).set(new vr(e)),n}function F_(e,n){var o=n?fa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var L_=/\w*$/;function U_(e){var n=new e.constructor(e.source,L_.exec(e));return n.lastIndex=e.lastIndex,n}var cc=pt?pt.prototype:void 0,dc=cc?cc.valueOf:void 0;function K_(e){return dc?Object(dc.call(e)):{}}function j_(e,n){var o=n?fa(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var q_="[object Boolean]",G_="[object Date]",z_="[object Map]",H_="[object Number]",Y_="[object RegExp]",W_="[object Set]",X_="[object String]",Z_="[object Symbol]",J_="[object ArrayBuffer]",Q_="[object DataView]",eb="[object Float32Array]",tb="[object Float64Array]",nb="[object Int8Array]",ob="[object Int16Array]",rb="[object Int32Array]",ib="[object Uint8Array]",ab="[object Uint8ClampedArray]",lb="[object Uint16Array]",sb="[object Uint32Array]";function cb(e,n,o){var r=e.constructor;switch(n){case J_:return fa(e);case q_:case G_:return new r(+e);case Q_:return F_(e,o);case eb:case tb:case nb:case ob:case rb:case ib:case ab:case lb:case sb:return j_(e,o);case z_:return new r;case H_:case X_:return new r(e);case Y_:return U_(e);case W_:return new r;case Z_:return K_(e)}}function db(e){return typeof e.constructor=="function"&&!kr(e)?Yg(ra(e)):{}}var ub="[object Map]";function fb(e){return Rt(e)&&mt(e)==ub}var uc=Bn&&Bn.isMap,pb=uc?Wi(uc):fb,mb="[object Set]";function gb(e){return Rt(e)&&mt(e)==mb}var fc=Bn&&Bn.isSet,hb=fc?Wi(fc):gb,yb=1,_b=2,bb=4,pc="[object Arguments]",wb="[object Array]",kb="[object Boolean]",Cb="[object Date]",Eb="[object Error]",mc="[object Function]",Nb="[object GeneratorFunction]",Sb="[object Map]",vb="[object Number]",gc="[object Object]",xb="[object RegExp]",Ab="[object Set]",Ib="[object String]",Pb="[object Symbol]",Tb="[object WeakMap]",Ob="[object ArrayBuffer]",$b="[object DataView]",Bb="[object Float32Array]",Vb="[object Float64Array]",Rb="[object Int8Array]",Db="[object Int16Array]",Mb="[object Int32Array]",Fb="[object Uint8Array]",Lb="[object Uint8ClampedArray]",Ub="[object Uint16Array]",Kb="[object Uint32Array]",De={};De[pc]=De[wb]=De[Ob]=De[$b]=De[kb]=De[Cb]=De[Bb]=De[Vb]=De[Rb]=De[Db]=De[Mb]=De[Sb]=De[vb]=De[gc]=De[xb]=De[Ab]=De[Ib]=De[Pb]=De[Fb]=De[Lb]=De[Ub]=De[Kb]=!0,De[Eb]=De[mc]=De[Tb]=!1;function wo(e,n,o,r,i,a){var l,s=n&yb,c=n&_b,d=n&bb;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!dn(e))return e;var f=yt(e);if(f){if(l=M_(e),!s)return Xg(e,l)}else{var u=mt(e),p=u==mc||u==Nb;if(ho(e))return E_(e,s);if(u==gc||u==pc||p&&!i){if(l=c||p?{}:db(e),!s)return c?I_(e,k_(l,e)):x_(e,w_(l,e))}else{if(!De[u])return i?e:{};l=cb(e,u,s)}}a||(a=new Ft);var m=a.get(e);if(m)return m;a.set(e,l),hb(e)?e.forEach(function(g){l.add(wo(g,n,o,g,e,a))}):pb(e)&&e.forEach(function(g,y){l.set(y,wo(g,n,o,y,e,a))});var h=d?c?oc:sa:c?Qi:Ji,_=f?void 0:h(e);return rh(_||e,function(g,y){_&&(y=g,g=e[y]),zi(l,y,wo(g,n,o,y,e,a))}),l}var jb=1,qb=4;function Rn(e){return wo(e,jb|qb)}var Gb="__lodash_hash_undefined__";function zb(e){return this.__data__.set(e,Gb),this}function Hb(e){return this.__data__.has(e)}function xr(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Mt;++n<o;)this.add(e[n])}xr.prototype.add=xr.prototype.push=zb,xr.prototype.has=Hb;function Yb(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 Wb(e,n){return e.has(n)}var Xb=1,Zb=2;function hc(e,n,o,r,i,a){var l=o&Xb,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&Zb?new xr:void 0;for(a.set(e,n),a.set(n,e);++u<s;){var h=e[u],_=n[u];if(r)var g=l?r(_,h,u,n,e,a):r(h,_,u,e,n,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!Yb(n,function(y,w){if(!Wb(m,w)&&(h===y||i(h,y,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(h===_||i(h,_,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function Jb(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function Qb(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var e0=1,t0=2,n0="[object Boolean]",o0="[object Date]",r0="[object Error]",i0="[object Map]",a0="[object Number]",l0="[object RegExp]",s0="[object Set]",c0="[object String]",d0="[object Symbol]",u0="[object ArrayBuffer]",f0="[object DataView]",yc=pt?pt.prototype:void 0,pa=yc?yc.valueOf:void 0;function p0(e,n,o,r,i,a,l){switch(o){case f0:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case u0:return!(e.byteLength!=n.byteLength||!a(new vr(e),new vr(n)));case n0:case o0:case a0:return Gi(+e,+n);case r0:return e.name==n.name&&e.message==n.message;case l0:case c0:return e==n+"";case i0:var s=Jb;case s0:var c=r&e0;if(s||(s=Qb),e.size!=n.size&&!c)return!1;var d=l.get(e);if(d)return d==n;r|=t0,l.set(e,n);var f=hc(s(e),s(n),r,i,a,l);return l.delete(e),f;case d0:if(pa)return pa.call(e)==pa.call(n)}return!1}var m0=1,g0=Object.prototype,h0=g0.hasOwnProperty;function y0(e,n,o,r,i,a){var l=o&m0,s=sa(e),c=s.length,d=sa(n),f=d.length;if(c!=f&&!l)return!1;for(var u=c;u--;){var p=s[u];if(!(l?p in n:h0.call(n,p)))return!1}var m=a.get(e),h=a.get(n);if(m&&h)return m==n&&h==e;var _=!0;a.set(e,n),a.set(n,e);for(var g=l;++u<c;){p=s[u];var y=e[p],w=n[p];if(r)var b=l?r(w,y,p,n,e,a):r(y,w,p,e,n,a);if(!(b===void 0?y===w||i(y,w,o,r,a):b)){_=!1;break}g||(g=p=="constructor")}if(_&&!g){var v=e.constructor,S=n.constructor;v!=S&&"constructor"in e&&"constructor"in n&&!(typeof v=="function"&&v instanceof v&&typeof S=="function"&&S instanceof S)&&(_=!1)}return a.delete(e),a.delete(n),_}var _0=1,_c="[object Arguments]",bc="[object Array]",Ar="[object Object]",b0=Object.prototype,wc=b0.hasOwnProperty;function w0(e,n,o,r,i,a){var l=yt(e),s=yt(n),c=l?bc:mt(e),d=s?bc:mt(n);c=c==_c?Ar:c,d=d==_c?Ar:d;var f=c==Ar,u=d==Ar,p=c==d;if(p&&ho(e)){if(!ho(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Ft),l||Zi(e)?hc(e,n,o,r,i,a):p0(e,n,c,o,r,i,a);if(!(o&_0)){var m=f&&wc.call(e,"__wrapped__"),h=u&&wc.call(n,"__wrapped__");if(m||h){var _=m?e.value():e,g=h?n.value():n;return a||(a=new Ft),i(_,g,o,r,a)}}return p?(a||(a=new Ft),y0(e,n,o,r,i,a)):!1}function kc(e,n,o,r,i){return e===n?!0:e==null||n==null||!Rt(e)&&!Rt(n)?e!==e&&n!==n:w0(e,n,o,r,kc,i)}function k0(e,n){return e!=null&&n in Object(e)}function C0(e,n,o){n=Vn(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=Sr(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&&Hi(i)&&qi(l,i)&&(yt(e)||Cr(e)))}function E0(e,n){return e!=null&&C0(e,n,k0)}function N0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function S0(e,n){return n.length<2?e:na(e,Us(n,0,-1))}var v0="[object Map]",x0="[object Set]",A0=Object.prototype,I0=A0.hasOwnProperty;function Cc(e){if(e==null)return!0;if(Yi(e)&&(yt(e)||typeof e=="string"||typeof e.splice=="function"||ho(e)||Zi(e)||Cr(e)))return!e.length;var n=mt(e);if(n==v0||n==x0)return!e.size;if(kr(e))return!Rs(e).length;for(var o in e)if(I0.call(e,o))return!1;return!0}function ko(e,n){return kc(e,n)}function Ec(e,n){return n=Vn(n,e),e=S0(e,n),e==null||delete e[Sr(N0(n))]}function P0(e){return Uy(e)?void 0:e}var T0=1,O0=2,$0=4,Co=Fs(function(e,n){var o={};if(e==null)return o;var r=!1;n=bs(n,function(a){return a=Vn(a,e),r||(r=a.length>1),a}),go(e,oc(e),o),r&&(o=wo(o,T0|O0|$0,P0));for(var i=n.length;i--;)Ec(o,n[i]);return o});function Nc(e,n,o,r){if(!dn(e))return e;n=Vn(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=Sr(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=dn(f)?f:qi(n[i+1])?[]:{})}zi(s,c,d),s=s[c]}return e}function B0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=na(e,l);o(s,l)&&Nc(a,Vn(l,e),s)}return a}function V0(e,n){return B0(e,n,function(o,r){return E0(e,r)})}var ma=Fs(function(e,n){return e==null?{}:V0(e,n)});function R0(e,n,o){return e==null?e:Nc(e,n,o)}var D0=0;function Ir(e){var n=++D0;return ta(e)+n}function Sc(e,n){return e==null?!0:Ec(e,n)}const M0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],mn=e=>{var n,o,r,i,a,l;((o=(n=e.confluent)==null?void 0:n.authentication)==null?void 0:o.mode)==="none"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client,delete e.confluent.authentication.basic),((i=(r=e.confluent)==null?void 0:r.authentication)==null?void 0:i.mode)==="basic"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client),((l=(a=e.confluent)==null?void 0:a.authentication)==null?void 0:l.mode)==="oauth2"&&delete e.confluent.authentication.basic,M0.some(s=>ko(e.confluent,s))&&(e.confluent=null)},F0={"config-message_by_lua_functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;mn((n=e.config)==null?void 0:n.schema_registry)}},L0={"config-message_by_lua_functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;mn((n=e.config)==null?void 0:n.schema_registry)}},U0={"config-message_by_lua_functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;mn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{mn(i==null?void 0:i.schema_registry)})}},K0={"config-message_by_lua_functions":{...Ae,inputAttributes:{...Ae.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;mn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{mn(i==null?void 0:i.schema_registry)})}},j0={shamefullyTransformPayload:({payload:e})=>{var n;mn((n=e.config)==null?void 0:n.schema_registry)}},q0={"config-static_tags":{...yr,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"}]}}}},G0={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function ga(e,n){const o=G0[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const ha=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),Eo={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},vc=Symbol("TOASTER_PROVIDER");function xc(){return t.inject(ha,[])}function z0(e){t.provide(ha,e)}const H0=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},Ac=(e,n)=>(e.order??0)-(n.order??0),Ic=(e,n)=>H0(e,n)||Ac(e,n)||e.model.localeCompare(n.model),Ve={useI18n:Te,usePluginMetaData:Zm,usePluginHelpers:is,useSchemas:e=>{const{capitalize:n}=fe.useStringHelpers(),{convertToDotNotation:o}=is(),{i18n:{t:r}}=Te(),i=xc(),a={"application-registration":{overwriteDefault:!0,formSchema:{...ng}},datadog:{...og},"exit-transformer":{...rg},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...yg},"statsd-advanced":{..._g},"route-by-header":{...pg},"ai-prompt-decorator":{...Jm},"ai-prompt-template":{...Qm},"ai-proxy-advanced":{...eg},"ai-llm-as-judge":{...tg},"vault-auth":{...wg},"oas-validation":{...sg},mocking:{...lg},"rate-limiting":{..._r},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":_r["config-consumer_groups"]}:{..._r},"graphql-rate-limiting-advanced":{...ig},"injection-protection":{...ag},"response-ratelimiting":{..._r},"pre-function":{...ms},"post-function":{...ms},"request-transformer-advanced":{...ug},"response-transformer":{...gs},"response-transformer-advanced":{...fg},zipkin:{...q0},"upstream-oauth":{...bg},saml:{...mg},"kafka-upstream":{...F0},"solace-consume":{...gg},"solace-upstream":{...hg},"key-auth":Km(e),"key-auth-enc":Ym(e),confluent:{...L0},"confluent-consume":{...U0},"kafka-consume":{...K0},"kafka-log":{...j0}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(N,I,O,F)=>{let H={};(I||N)&&(H=I||(N.fields?N.fields:N));const q=l().concat(N.blacklist?N.blacklist:[]),E=Object.keys(H).filter(D=>!q.includes(D)),te=E.indexOf("comparator");te>-1&&E.splice(te,1);let P={fields:[]};const G={};E.forEach(D=>{d(H[D],D,H,G,P,O)});const R=G.name,K=St[R],V=[],M=D=>{const L=["cluster-cache"];for(const j of L)if(D.model.includes(j))return!1;return new RegExp("(?<=-redis-).*").test(D.model)};if(P._supported_redis_partial_type=N._supported_redis_partial_type,P._redis_partial_path=N._redis_partial_path,Pe.getSharedFormName(R)||ga(R,i)||K!=null&&K.useLegacyForm||e!=null&&e.credential||F==="freeform"){if(K!=null&&K.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&N._supported_redis_partial_type){for(const D of P.fields)if(M(D)){V.push(D);continue}P.fields=P.fields.filter(D=>!M(D)),V.length&&P.fields.push({id:"_redis",fields:V,model:"__redis_partial",pluginType:N._isCustomPlugin?"custom":"bundled",redisType:N._supported_redis_partial_type,redisPath:N._redis_partial_path})}P.fields.sort((D,L)=>(D.order=D.order||0,L.order=L.order||0,D.order-L.order))}else{const D=[],L=[],j=[],Z=[],W={};if(K!=null&&K.fieldRules){const de=[...K.fieldRules.atLeastOneOf??[],...K.fieldRules.onlyOneOf??[],...K.fieldRules.mutuallyRequired??[]];if(K.fieldRules.onlyOneOfMutuallyRequired)for(const ye of K.fieldRules.onlyOneOfMutuallyRequired)de.push(...ye);for(const ye of de)for(const Q of ye)W[Q.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const de of P.fields){if(e!=null&&e.enableRedisPartial&&N._supported_redis_partial_type&&M(de)){Z.push(de);continue}if(de.pinned){D.push(de);continue}if(de.required||W[de.model]!==void 0){W[de.model]===!1&&(W[de.model]=!0),L.push(de);continue}j.push(de)}Z.length&&j.push({id:"_redis",fields:Z,model:"__redis_partial",pluginType:N._isCustomPlugin?"custom":"bundled",redisType:N._supported_redis_partial_type,redisPath:N._redis_partial_path,order:-1});const ne=Object.entries(W).filter(([,de])=>!de).map(([de])=>de.replace(/-/g,".").replace(/_/g,"-"));ne.length>0&&console.warn(`Unknown checked fields for plugin ${R}: ${ne.join(", ")}`);const ie=[];D.length>0&&ie.push({fields:D.sort(Ac)}),(L.length>0||j.length>0)&&ie.push({fields:L.sort(Ic),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:j.sort(Ic),triggerLabel:{expand:r("plugins.form.grouping.advanced_parameters.view"),collapse:r("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),P={groups:ie}}return{schema:P,model:G,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=N=>Array.isArray(N.default)||N.default!=null&&typeof N.default!="object"&&N.default!=="function",d=(N,I,O,F,H,q)=>{const E=c(N);return F[I]=E?N.default:null,N.id=I,N.model=I,N.fields&&N.type==="record"?u(N,I,O,F,H,q):(O[I]=N,v(N,F),q&&q[I]&&f(O[I],q[I]),H.fields.push(N)),O},f=(N,I)=>(I&&(Object.assign(N,I),I.label&&(N.label=I.label)),N),u=(N,I,O,F,H,q)=>{N.fields.forEach(E=>{Object.keys(E).forEach(te=>{const P=E[te];O=d(P,I+"-"+te,O,F,H,q)})})},p=(N,I)=>{N.type="input",N.inputType="hidden",N.styleClasses="kong-form-hidden-field-wrapper";const O=e==null?void 0:e.entityId;I[N.model]=O?{id:O}:null},m=N=>{N.type="input",N.inputType="number",N.between&&N.between.length===2&&(N.min=N.between[0],N.max=N.between[1])},h=N=>{Object.prototype.hasOwnProperty.call(N,"one_of")?(N.type="select",N.values=N.one_of,N.selectOptions={hideNoneSelectedText:!0}):(N.type="input",N.inputType="text")},_=N=>{N.type="checkbox",N.default=!0,N.required=!1},g=N=>{if(N.type="object-advanced",N.values.type==="array"){const{type:I}=N.values.elements||{};N.schema={fields:[{schema:{fields:[{...Ae,model:N.model,valueArrayType:I==="integer"?"number":I||"string",inputAttributes:{...Ae.inputAttributes,type:I==="integer"?"number":"text",inputMode:I==="integer"?"numeric":"text"}}]}}]}}else N.values.fields&&(N.schema={fields:[{type:"object",model:"object",schema:{fields:N.values.fields.map(I=>{const O=Object.keys(I)[0];return{model:O,type:"input",label:n(O),placeholder:O,inputType:I[O].type}})}}]})},y=N=>N.fields.reduce((I,O)=>(O.fields&&O.fields.forEach(F=>{I[F.model]=F}),O.model&&(I[O.model]=O),I),{}),w=(N,I)=>{if(!Pe.customFields.includes(N.model))return;const O=y(N);Pe.customFields.forEach(F=>{Object.keys(O).forEach(H=>{const q=c(O[H]);I[H]=q?O[H].default:null}),delete I[F]})},b=(N,I)=>N.inputType==="hidden"?"":o(n(N.label||I.replace(/_/g," "))),v=(N,I)=>{switch(w(N,I),N.type){case"foreign":p(N,I);break;case"number":m(N),N.attributes={step:"any"};break;case"integer":m(N);break;case"string":h(N);break;case"boolean":_(N);break;case"map":g(N);break}N.inputType==="foreign"&&p(N,I),N.label=b(N,N.model)};function S(N,I){if(I==null||I.type&&I.type!=="record"||typeof N!="object"||N==null)return N;const O={};for(const F of I.fields){const H=Object.keys(F)[0],q=F[H];q.type==="record"?O[H]=S(N[H],q):q.type==="array"&&Array.isArray(N[H])&&q.elements.type==="record"?O[H]=N[H].map(E=>S(E,q.elements)):O[H]=N[H]}return O}return{buildFormSchema:d,parseSchema:s,customSchemas:a,typedefs:On,pruneRecord:S}},useExperimentalFreeForms:xc,useProvideExperimentalFreeForms:z0},Je="/v2/control-planes/{controlPlaneId}/core-entities",et="/{workspace}",Le={list:{konnect:{all:`${Je}/plugins`,forEntity:`${Je}/{entityType}/{entityId}/plugins`},kongManager:{all:`${et}/plugins`,forEntity:`${et}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${Je}/v1/available-plugins`,streamingCustomPlugins:`${Je}/custom-plugins`,schemaCustomPluginItem:`${Je}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${Je}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${et}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${Je}/plugins`,forEntity:`${Je}/{entityType}/{entityId}/plugins`},edit:{all:`${Je}/plugins/{id}`,forEntity:`${Je}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${Je}/{resourceEndpoint}`,edit:`${Je}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${Je}/v1/schemas/json/plugin/validate`,entityGetOne:`${Je}/{entity}/{id}`,entityGetAll:`${Je}/{entity}`,entityPeek:`${Je}/{entity}?size={amount}`},kongManager:{create:{all:`${et}/plugins`,forEntity:`${et}/{entityType}/{entityId}/plugins`},edit:{all:`${et}/plugins/{id}`,forEntity:`${et}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${et}/schemas/plugins/{plugin}`,credential:{create:`${et}/{resourceEndpoint}`,edit:`${et}/{resourceEndpoint}/{id}`},credentialSchema:`${et}/schemas/{plugin}`,validate:`${et}/schemas/plugins/validate`,entityGetOne:`${et}/{entity}/{id}`,entityGetAll:`${et}/{entity}`}},item:{konnect:{all:`${Je}/plugins/{id}`,forEntity:`${Je}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${et}/plugins/{id}`,forEntity:`${et}/{entityType}/{entityId}/plugins/{id}`}}},Y0={key:0},W0=we(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Ve.usePluginHelpers(),{i18n:{t:r}}=Ve.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",Y0,[(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:Dn}=je.createI18n("en-us",We);function ya(e){return e.map(n=>({value:n,label:`${n}`}))}const _a="*",Pc="$",Tc=".";function _t(...e){return e.join(Tc)}function ba(...e){return _t(Pc,...e)}function Oc(e){return e.startsWith(_t(Pc,""))}function Mn(e){return e.split(Tc).filter(n=>n!=="")}function No(e){const n=Mn(e);return n[n.length-1]}const X0=e=>{var n,o;return e.type==="redis-ce"?Dn("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.length?Dn("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?Dn("redis.shared_configuration.type_label.cluster"):Dn("redis.shared_configuration.type_label.host_port")},Z0={"redis-ce":Dn("redis.shared_configuration.open_source"),"redis-ee":Dn("redis.shared_configuration.enterprise")},J0=e=>Z0[e]??"";function Q0(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 ew(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const $c=Symbol("free-form-data"),Bc=Symbol("free-form-schema"),Vc=Symbol("free-form-field-path"),wa=Symbol("free-form-field-renderer-slots"),Pr=Symbol("free-form-field-renderer-matchers-map"),Rc=Symbol("free-form-config"),Dc=Symbol("free-form-field-reset-label-path-setting"),Fn="free-form-field-renderers-slot",tw={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function nw(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,ka(r,n)):e.type==="array"&&e.elements&&Object.assign(o,Ca(e,n)),o}function ka(e,n=""){const o={};if(Array.isArray(e.fields))for(const r of e.fields){const i=Object.keys(r)[0],a=r[i],l=n?_t(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=ka(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=Ca(a,l);Object.assign(o,s)}}return o}function Ca(e,n=""){const o={};if(e.elements){const r=e.elements,i=_t(n,_a);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=ka(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=Ca(r,i);Object.assign(o,a)}}return o}function Ea(e){const n=Mn(e).map(o=>/^\d+$/.test(o)?_a:o);return _t(...n)}function ow(e){const n=t.toValue(e),o=t.computed(()=>n?nw(n):{});function r(f){var u;return f==null?n:(u=o.value)==null?void 0:u[Ea(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],_=u?`${u}.${h}`:h,g=i(_,!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?mr.marked.parse(u.description,{async:!1}):void 0;return{...tw,"data-testid":`ff-label-${f}`,info:p}}function c(f){var p;const u=r(f);return ya((u==null?void 0:u.one_of)||((p=u.elements)==null?void 0:p.one_of)||[])}function d(f){const u=r(f),p=u==null?void 0:u.default;let m=null;if((u==null?void 0:u.type)==="foreign"&&(p!=null&&p.id))m=p.id;else{if(p==null||typeof p=="object"||p==="")return null;if(Array.isArray(p)){if(p.length===0)return null;m=p.join(", ")}else m=p.toString()}return`Default: ${m}`}return{getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:d}}function Fe(){const e=t.inject($c),n=t.inject(Bc),o=t.inject(Rc,{});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 Mc=e=>{const n=t.inject(Vc,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!Oc(r)&&n.value&&(i=_t(n.value,r)),Oc(r)&&(i=i.slice(ba("").length)),i});return t.provide(Vc,o),o},rw=e=>{const{getSchema:n}=Fe(),{default:o,...r}=t.useSlots(),i=t.inject(wa),a=t.inject(Pr),l=t.computed(()=>{const c=t.toValue(i),d=Object.keys(r).filter(f=>f!==Fn&&f!=="item").reduce((f,u)=>{const p=Ea(_t(t.toValue(e),u));return{...f,[p]:r[u]}},{});return c?{...c,...d}:d});t.provide(wa,l);const s=t.toValue(e);return t.computed(()=>{if(o)return;const c=l.value[Ea(t.toValue(e))];if(c)return c;for(const[d,f]of a)if(d({path:s,schema:n(s)}))return f})},iw={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function aw(e){return iw[e.toLocaleLowerCase()]??e}function lw(e,n){const o=t.inject(Dc,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?_t(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?_t(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(Dc,l),a}function sw(e){return Mn(e).map(o=>o.split("_").map(aw).join(" ")).map(p_).join(" › ")}function cw(e,n){const o=t.toValue(e),r=No(o),{formConfig:i}=Fe(),a=lw(r,n),{getSchema:l}=Fe(),s=Fc(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"?"":sw(c);return i.transformLabel?i.transformLabel(u,o):u})}function bt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Fe(),a=t.toValue(e),l=t.toValue(n),s=cw(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 dw(e){var r;const n=Mn(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?_t(o.parent.path,i):i,o={parent:o}}return o}function Fc(e){return t.computed(()=>dw(t.toValue(e)))}function Lc(e){const{formData:n}=Fe(),o=Mc(e);return{value:t.computed({get:()=>Ds(n,Mn(o.value)),set:i=>R0(n,Mn(o.value),i)})}}function ct(e){const{getSchema:n}=Fe(),o=Mc(e),r=rw(o),{value:i}=Lc(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:Fc(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function So(e){const{getSchema:n}=Fe(),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 Uc(e,n){const o=new WeakMap,r=new Map;function i(){return Ir(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((d,f)=>{c.add(f)}),Array.from(r.keys()).forEach(d=>{c.has(d)||r.delete(d)})},{immediate:!0,deep:!0}),{getKey:a}}const uw="__request_callout_";function Kc(){return Ir(uw)}const gn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=t.useAttrs(),i=n,a=t.computed(()=>o.multiline?xe.KTextArea:xe.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,u=>{s.value=u});const{formConfig:c}=Fe(),d=u=>{s.value=u,c.updateOnChange||i("update:modelValue",u)},f=()=>{c.updateOnChange&&i("update:modelValue",s.value)};return(u,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(u.$attrs,{"character-limit":l.value,"model-value":u.modelValue,resizable:u.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":d}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,h)=>({name:h,fn:t.withCtx(_=>[t.renderSlot(u.$slots,h,t.normalizeProps(t.guardReactiveProps(_)))])}))]),1040,["character-limit","model-value","resizable"]))}}),fw=["innerHTML"],Ln=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}=Te(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=ct(t.toRef(()=>e.name)),c=bt(s.path,t.toRef({...i,...o})),d=l==null?void 0:l.value;function f(y){d!==void 0&&y===""&&y!==d?(l.value=null,a("update:modelValue",null)):(l.value=y.trim(),a("update:modelValue",y.trim()))}const u=t.computed(()=>{var y;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((y=s.schema)==null?void 0:y.value).encrypted}),p=t.inject(Pe.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var y;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((y=s.schema.value)!=null&&y.referenceable)}),h=t.computed(()=>({referenceable:m.value})),_=So(s.ancestors),g=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:No(e.name)==="name");return(y,w)=>{var v;const b=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(b,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},y.$attrs)),[t.createVNode(gn,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(_),"data-testid":`ff-${s.path.value}`,error:y.error,"error-message":y.errorMessage,help:y.multiline&&y.error?y.errorMessage:y.help,"model-value":t.unref(l)??"",multiline:y.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(v=t.unref(c).labelAttributes)!=null&&v.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,fw)],!0)]),key:"0"}:void 0,y.multiline&&y.error?void 0:{name:"help",fn:t.withCtx(()=>[t.renderSlot(y.$slots,"help",{},void 0,!0)]),key:"1"}]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(p)&&m.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(p)),{key:0,schema:h.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(b,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-8b9ee4c2"]]),pw=["innerHTML"],Na=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=bt(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(xe.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,pw)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),jc=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"]]),mw=["data-testid"],gw=["data-testid"],hw=["data-testid"],yw=["innerHTML"],_w={class:"ff-object-field-actions"},bw=["data-testid"],it=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}=Fe(),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,y;if((g=r.ancestors)!=null&&g.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((y=i(w.path))==null?void 0:y.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:d.value?"reset":"inherit"),u=bt(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(y=>!e.omit.includes(Object.keys(y)[0]))),e.fieldsOrder?g.sort((y,w)=>{const b=Object.keys(y)[0],v=Object.keys(w)[0],S=e.fieldsOrder.indexOf(b),N=e.fieldsOrder.indexOf(v);return S===-1&&N===-1?0:S===-1?1:N===-1?-1:S-N}):g});function _(){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,y)=>{var b;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(g.$slots[t.unref(Fn)]))),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,v=>(t.openBlock(),t.createBlock(ot,{key:Object.keys(v)[0],name:Object.keys(v)[0]},null,8,["name"]))),128))],!0)],16,mw)):(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(xe.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(u),required:!1},{"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(b=t.unref(u).labelAttributes)!=null&&b.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,yw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",_w,[g.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(xe.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:y[0]||(y[0]=v=>s.value=!c.value)},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(Ce.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(xe.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(Ce.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(Ce.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,hw),t.createVNode(jc,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,v=>(t.openBlock(),t.createBlock(ot,{key:Object.keys(v)[0],name:Object.keys(v)[0]},null,8,["name"]))),128))],!0)],8,bw)):t.createCommentVNode("",!0)]),_:3})],16,gw))],64)}}}),[["__scopeId","data-v-6f044592"]]),ww=["innerHTML"],Un=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=bt(i.path,o),l=t.computed(()=>{var _;const p=(_=i.schema)==null?void 0:_.value;if(typeof p.gt=="number")return{min:p.gt};const[m,h]=p.between??[];return{min:o.min??m,max:o.max??h}}),s=n,c=r.value,d=t.computed(()=>(r==null?void 0:r.value)!=null&&Number.isFinite(r.value)?`${r.value}`:"");function f(p){c!==void 0&&p===""&&Number(p)!==c?(r.value=null,s("update:modelValue",null)):(r.value=p===""?null:Number(p),s("update:modelValue",p===""?null:Number(p)))}const u=So(i.ancestors);return(p,m)=>{var _;const h=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(gn,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(u),"data-testid":`ff-${i.path.value}`,"model-value":d.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(_=t.unref(a).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,ww)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),kw=["innerHTML"],xt=we(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},items:{},placeholder:{},multiple:{type:Boolean,default:()=>{}},modelValue:{},label:{},help:{},error:{type:Boolean},searchPlaceholder:{},kpopAttributes:{},dropdownMaxHeight:{},width:{},selectedRowCount:{},collapsedContext:{type:Boolean},filterFunction:{type:Function},autosuggest:{type:Boolean},enableItemCreation:{type:Boolean},loading:{type:Boolean},dropdownFooterText:{},dropdownFooterTextPosition:{},itemCreationValidator:{type:Function},enableFiltering:{type:Boolean},clearable:{type:Boolean},reuseItemTemplate:{type:Boolean}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=Fe(),{value:a,...l}=ct(t.toRef(()=>e.name)),s=bt(l.path,r),c=t.computed(()=>e.items?e.items:l.path?i(l.path.value):[]),d=t.computed(()=>{var u;return e.multiple!==void 0?e.multiple:((u=l.schema.value)==null?void 0:u.type)==="set"}),f=t.computed(()=>d.value?xe.KMultiselect:xe.KSelect);return(u,p)=>{var h;const m=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(m,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(f),t.mergeProps({key:1},{...r,...t.unref(s)},{modelValue:t.unref(a),"onUpdate:modelValue":[p[0]||(p[0]=_=>t.isRef(a)?a.value=_:null),p[1]||(p[1]=_=>o("update",_))],class:"ff-enum-field",clearable:!t.unref(s).required,"data-testid":`ff-${l.path.value}`,items:c.value,"kpop-attributes":{"data-testid":`${l.path.value}-items`}}),t.createSlots({_:2},[(h=t.unref(s).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(u.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,kw)],!0)]),key:"0"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-bfca8687"]]);function Tr(e,n,o=!0){const{value:r,...i}=ct(t.toRef(e,"name")),a=bt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(d(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Ir("ff-kv-field-")}function c(g,y,w){const b=w.indexOf(g),v=w.indexOf(y);return b===-1&&v===-1?0:b===-1?1:v===-1?-1:b-v}function d(g,y){const w=Object.entries(g).map(([b,v])=>({id:s(),key:b,value:v}));return y&&w.sort((b,v)=>c(b.key,v.key,y)),w}function f(){const g={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(g),g}function u(g){const y=l.value.findIndex(w=>w.id===g);y!==-1&&l.value.splice(y,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 y=g.length?Object.fromEntries(g.map(({key:w,value:b})=>[w,b]).filter(([w])=>w)):null;r.value=y,h=y,n("change",y)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,g=>{ko(g,h)||_(g)},{deep:!0});function _(g){if(!g){l.value=[];return}const y=new Map;l.value.forEach(S=>{S.key&&y.set(S.key,S)});const w=[],b=Object.keys(g);(e.keyOrder?[...b].sort((S,N)=>c(S,N,e.keyOrder)):b).forEach(S=>{const N=g[S];if(y.has(S)){const I=y.get(S);I.value=N,w.push(I)}else w.push({id:s(),key:S,value:N})}),l.value=w}return{entries:l,addEntry:f,removeEntry:u,reset:p,setValue:m,labelAttrs:a,field:i}}const Cw=["data-testid"],Ew=["data-testid"],Nw=["innerHTML"],Sw=["data-testid"],vw=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}=Te(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:d,setValue:f,labelAttrs:u,field:p}=Tr(r,a),m=t.useTemplateRef("root");async function h(S,N="key"){var I;m.value&&(await t.nextTick(),(I=m.value.querySelector(`[data-${N}-input="${S}"]`))==null||I.focus())}function _(){s();const S=l.value.findIndex(({key:N})=>!N);h(S===-1?l.value.length-1:S)}function g(S){S===l.value.length-1&&s(),h(S+1)}const y=t.inject(Pe.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var S,N;return e.showVaultSecretPicker??!!((N=(S=p.schema.value)==null?void 0:S.values)!=null&&N.referenceable)}),b=t.computed(()=>({referenceable:w.value}));function v(S,N){l.value[S].value=N}return n({reset:d,setValue:f}),(S,N)=>{var H;const I=t.resolveComponent("KAlert"),O=t.resolveComponent("KLabel"),F=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(I,{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(O,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},[(H=t.unref(u).labelAttributes)!=null&&H.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(S.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,Nw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(F,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:_},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.AddIcon))]),_:1},8,["data-testid"])],8,Ew),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(q,E)=>(t.openBlock(),t.createElementBlock("div",{key:q.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${E}`},[t.createVNode(gn,{modelValue:q.key,"onUpdate:modelValue":te=>q.key=te,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":E,"data-testid":`ff-key-${t.unref(p).path.value}.${E}`,placeholder:S.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(te=>h(E,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(gn,{modelValue:q.value,"onUpdate:modelValue":te=>q.value=te,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${E}`,"data-value-input":E,placeholder:S.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(te=>g(E),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(y)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(y)),{key:0,schema:b.value,update:te=>v(E,te),value:q.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(y)?(t.openBlock(),t.createBlock(I,{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(F,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${E}`,icon:"",onClick:te=>t.unref(c)(q.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,Sw))),128))],8,Cw))}}}),[["__scopeId","data-v-92e0893d"]]),xw=["data-testid"],Aw=["innerHTML"],Sa=we(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=ct(t.toRef(()=>e.name)),s=bt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var _,g;return((g=(_=l.schema)==null?void 0:_.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),d=t.ref("");function f(_){return _.map(g=>g.trim()).filter(Boolean).join(", ")}function u(_){return _.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(_){d.value=_;const g=u(_),y=!g.length&&c.value?null:g;a.value=y,i("update:modelValue",y)}const m=So(l.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:No(e.name)==="name");return t.watch(a,_=>{const g=_?f(_):"";f(u(d.value))!==g&&(d.value=g)},{immediate:!0}),(_,g)=>{var w;const y=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(y,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[t.createVNode(gn,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":d.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(w=t.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Aw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,xw))}}}),[["__scopeId","data-v-a27f4ff1"]]),Iw=["data-testid"],Pw=["innerHTML"],Tw=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=bt(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=So(l.ancestors),u=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:No(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);ko(m,p)||(c.value=JSON.stringify(p,null,2))}catch{c.value=JSON.stringify(p,null,2)}return}c.value=p||""},{immediate:!0}),(p,m)=>{var _;const h=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${l.path.value}`},[t.createVNode(gn,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":u.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":d}),t.createSlots({_:2},[(_=t.unref(s).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Pw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Iw))}}}),[["__scopeId","data-v-5749f722"]]),Ow=["innerHTML"],$w=we(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{name:{},labelAttributes:{},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:{t:r}}=Te(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,...s}=ct(t.toRef(()=>e.name));if(s.error)throw new Error(s.error.message);const c=bt(s.path,t.toRef({...i,...o})),d=l.value?l.value.id:null,f=t.computed(()=>{var _;return c.value.placeholder?c.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((_=s.schema.value)==null?void 0:_.reference)??"entity"})}),u=t.ref(d??"");function p(_){d!==void 0&&_===""&&_!==d?(l.value=null,a("update:modelValue",null)):(l.value={id:_.trim()},a("update:modelValue",l.value))}const m=So(s.ancestors),h=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:No(e.name)==="name");return(_,g)=>{var y;return t.openBlock(),t.createBlock(gn,t.mergeProps(t.unref(c),{class:"ff-foreign-field","data-1p-ignore":h.value,"data-autofocus":t.unref(m),"data-testid":`ff-${s.path.value}`,error:_.error,"error-message":_.errorMessage,help:_.help,"model-value":u.value,placeholder:f.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(y=t.unref(c).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(_.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,Ow)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])}}}),[["__scopeId","data-v-b54c028e"]]),ot=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?xt:Ln;case"boolean":return"one_of"in o.schema.value?xt:Na;case"number":case"integer":return"one_of"in o.schema.value?xt:Un;case"array":return Or;case"set":return ew(o.schema)?Sa:xt;case"record":return it;case"map":return vw;case"json":return Tw;case"foreign":return $w;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(Fn)]))),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:ba(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:ba(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)}}}),Bw=["data-testid"],Vw=["data-testid"],Rw=["innerHTML"],Dw=["data-testid"],Mw={class:"ff-array-field-item-content"},Fw=["data-index","data-testid"],Or=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(I=>({"3e1c9ee2":S.value}));const o=e,r=n,{i18n:{t:i}}=Te(),{getDefault:a,getSchema:l}=Fe(),{value:s,...c}=ct(t.toRef(o,"name")),d=bt(c.path,t.toRef({...o,...t.useAttrs()})),f=t.computed(()=>{if(!c.path)throw new Error("Field path is required for sub-schema retrieval");const I=l(c.path.value);if(!I)throw new Error(`Schema not found for path: ${c.path.value}`);return I.elements}),u=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=Uc("ff-array-field",u),m=t.computed(()=>o.appearance==="card"?xe.KCard:"div");function h(I,O){return typeof o.itemLabel=="function"?o.itemLabel(I,O):o.itemLabel||d.value.label||`Item #${O}`}const _=t.computed(()=>u.value.map((I,O)=>({hash:`#${p(I,O)}`,title:""}))),g=t.ref((N=_.value[0])==null?void 0:N.hash),y=async()=>{var O;const I=a(_t(c.path.value,_a));Array.isArray(s.value)||(s.value=[]),s.value.push(I),r("add"),o.appearance==="tabs"&&(await t.nextTick(),g.value=(O=_.value[_.value.length-1])==null?void 0:O.hash),await t.nextTick(),v(u.value.length+1)},w=async I=>{var O;Array.isArray(s.value)&&s.value.splice(I,1),r("remove",I),o.appearance==="tabs"&&(g.value=(O=_.value[Math.max(0,I-1)])==null?void 0:O.hash)},b=t.useTemplateRef("root");function v(I){var F;if(!b.value)return;const O=Math.max(0,Math.min(I,u.value.length-1));(F=b.value.querySelector(`[data-index="${O}"] [data-autofocus]`))==null||F.focus()}const S=t.computed(()=>{const{appearance:I,stickyTabs:O}=o;return I!=="tabs"||O==null||O===!1?null:typeof O=="number"?`${o.stickyTabs}px`:typeof O=="string"?O:"0"});return(I,O)=>{var te;const F=t.resolveComponent("KAlert"),H=t.resolveComponent("KLabel"),q=t.resolveComponent("KButton"),E=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(F,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:b,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${I.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":I.stickyTabs}]),"data-testid":`ff-array-${c.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${c.path.value}`},[t.createVNode(H,t.mergeProps({class:"ff-array-field-label"},t.unref(d),{"data-testid":`ff-label-${c.path.value}`,"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(te=t.unref(d).labelAttributes)!=null&&te.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(I.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Rw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(q,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${c.path.value}`,icon:"",onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,Vw),u.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[I.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${c.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(P,G)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(P,G),class:"ff-array-field-item","data-index":G,"data-testid":`ff-array-item-${c.path.value}.${G}`},{default:t.withCtx(()=>[t.createElementVNode("div",Mw,[I.$slots.item?t.renderSlot(I.$slots,"item",{key:0,fieldName:String(G),index:G},void 0,!0):t.createCommentVNode("",!0),f.value.type==="array"&&f.value.elements.type==="string"?(t.openBlock(),t.createBlock(Sa,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(G)},null,8,["help","name"])):(t.openBlock(),t.createBlock(ot,{key:2,name:String(G)},null,8,["name"]))]),t.createVNode(q,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${G}`,icon:"",onClick:R=>w(G)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,Dw)):(t.openBlock(),t.createBlock(t.unref(xe.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(E,{modelValue:g.value,"onUpdate:modelValue":O[0]||(O[0]=P=>g.value=P),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:_.value},t.createSlots({_:2},[t.renderList(u.value,(P,G)=>({name:t.unref(p)(P,G),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":G,"data-testid":`ff-array-item-${c.path.value}.${G}`},[I.$slots.item?t.renderSlot(I.$slots,"item",{key:0,fieldName:String(G),index:G},void 0,!0):(t.openBlock(),t.createBlock(ot,{key:1,name:String(G)},null,8,["name"]))],8,Fw)])})),t.renderList(u.value,(P,G)=>({name:`${t.unref(p)(P,G)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(h(P,G))+" ",1),t.createVNode(q,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${G}`,icon:"",onClick:t.withModifiers(R=>w(G),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,Bw))}}}),[["__scopeId","data-v-3edd064c"]]),vo=Symbol(),Lw=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Fe(),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(({[vo]: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(it,{name:l.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(xt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(it,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(d=>[t.createVNode(xt,t.mergeProps(d,{items:t.unref(ya)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),Uw=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Fe();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[vo]=Kc())}return(r,i)=>(t.openBlock(),t.createBlock(Or,{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(Lw,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),qc=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),r=t.inject(Pr);if(!r)throw new Error(Pr.toString()+"not provided");return o&&r.set(n.match,o),(i,a)=>null}}),dt=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=ow(e.schema);t.provide(Bc,a);const l=m=>{var h;return br((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,_)=>{const g=Object.keys(h)[0],y=Object.keys(_)[0],w=e.fieldsOrder.indexOf(g),b=e.fieldsOrder.indexOf(y);return w===-1&&b===-1?0:w===-1?1:b===-1?-1:w-b}):m});let c=!1;const d=t.reactive({});t.provide($c,d),t.provide(wa,Co(i,"default",Fn));const f=new Map;t.provide(Pr,f),t.provide(Rc,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 _;let h;!m||!l(t.toValue(m))?h=a.getDefault():h=Rn(t.toValue(m)),br((_=e.config)==null?void 0:_.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(Fn)]))),t.renderSlot(m.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,_=>(t.openBlock(),t.createBlock(ot,{key:Object.keys(_)[0],name:Object.keys(_)[0],onGlobalAction:h[0]||(h[0]=(g,y)=>r("globalAction",g,y))},null,8,["name"]))),128))])]),_:3}))}}),Kw={class:"ff-advanced-fields"},$r=we(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=je.createI18n("en-us",We),{getSchema:o}=Fe(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(xe.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"data-testid":"view-advanced","trigger-label":r.value?t.unref(n)("plugins.form.grouping.advanced_parameters.view"):t.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:t.withCtx(()=>[t.createElementVNode("div",Kw,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(ot,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(ot,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Sa,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:t.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):t.createCommentVNode("",!0),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-54f66af5"]]),jw=we(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}}=Te();function a(d,f=!1){return d.reduce((u,{[vo]:p,name:m})=>(f?u[m]=p:u[p]=m,u),{})}function l(d){var m;const f=Rn(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[vo]=Kc()});const p=a(u,!0);return u.forEach(h=>{h.depends_on=h.depends_on.map(_=>p[_])}),f}function s(d){return!!(d!=null&&d.config)}function c(d){var p;if(!d)return;const f=Rn(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{[vo]:h,depends_on:_,...g}=m;return{depends_on:_.map(y=>u[y]).filter(y=>y!=null),...g}}),o("change",f)}return(d,f)=>(t.openBlock(),t.createBlock(dt,{class:"rc-config-form",config:r,data:d.data,schema:d.schema,tag:"div",onChange:c},{[t.unref(Fn)]:t.withCtx(()=>[t.createVNode(qc,{match:({path:u})=>u.endsWith("by_lua")},{default:t.withCtx(u=>[t.createVNode(Ln,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(qc,{match:({path:u})=>["cluster_nodes","sentinel_nodes"].some(p=>u.endsWith(p))},{default:t.withCtx(u=>[t.createVNode(Or,t.mergeProps(u,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(it,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(Uw),t.createVNode(it,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(it,{appearance:"card",name:"cache"},{redis:t.withCtx(u=>[t.createVNode(it,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($r)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),qw={class:"ff-form-pinned-fields"},Gw={class:"ff-form-config-form"},va=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}=je.createI18n("en-us",We),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(u=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===u)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=t.computed(()=>{const f=o.schema;f.fields=f.fields.filter(p=>l.includes(Object.keys(p)[0])),f.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const u=f.fields.find(p=>Object.keys(p)[0]==="protocols");return u&&(u.protocols.help=u.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:u.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),u.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1),d=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return ma(o.model,f)});return(f,u)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",qw,[t.createVNode(t.unref(Pe.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:t.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(xe.KCollapse),{modelValue:c.value,"onUpdate:modelValue":u[1]||(u[1]=p=>c.value=p),class:"ff-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Gw,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:d.value,schema:s.value,onChange:u[0]||(u[0]=(...p)=>f.onFormChange&&f.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),zw=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(Pe.AUTOFILL_SLOT,o==null?void 0:o[Pe.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(va,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(jw,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),Hw={key:1},Yw=["innerHTML"],Ww={class:"horizontal-container"},Xw=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}=Fe(),a=ct(t.toRef(()=>e.name)),l=bt(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",Hw,[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,Yw)]),key:"0"}:void 0]),1040),t.createElementVNode("div",Ww,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,h=>(t.openBlock(),t.createBlock(t.unref(xe.KRadio),{key:h.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=_=>t.unref(a).value.value=_),c],"card-orientation":"horizontal",label:h.label,"selected-value":h.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),Zw={class:"sp-form-request-limits-subtitle"},Jw={class:"sp-form-request-limits-content"},Qw={class:"sp-form-window-type"},ek={class:"sp-form-request-limits-items"},tk={class:"sp-form-request-limits-row"},nk=["id"],ok={class:"sp-form-request-limits-actions"},rk={key:0,class:"sp-form-request-limits-examples"},ik={class:"sp-form-request-limits-examples-badges"},xa="config.window_type",ak=we(t.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t:n}=je.createI18n("en-us",We),{formData:o,getSelectItems:r,getSchema:i}=Fe(),a=t.computed(()=>{var w,b;const y=(b=(w=o.config)==null?void 0:w.limit)==null?void 0:b.map((v,S)=>{var N,I;return{limit:v,windowSize:(I=(N=o.config)==null?void 0:N.window_size)==null?void 0:I[S]}});return!Array.isArray(y)||y.length===0?[{limit:null,windowSize:null}]:y}),{getKey:l}=Uc("request-limits",a),s=y=>{var w,b;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(b=o.config.window_size)!=null&&b.length||(o.config.window_size=[null]),o.config.limit.splice(y+1,0,null),o.config.window_size.splice(y+1,0,null))},c=y=>{o.config&&(o.config.limit.splice(y,1),o.config.window_size.splice(y,1))},d=(g=i(xa))==null?void 0:g.default,f=t.computed(()=>Ds(o,xa)),u=t.computed(()=>r(xa).sort((y,w)=>y.value===d?-1:w.value===d?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},h=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),_=(y,w)=>{if(w===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=w}),o.config.limit=[y.config.limit],o.config.window_size=[y.config.window_size]};return(y,w)=>{const b=t.resolveComponent("KLabel"),v=t.resolveComponent("KButton"),S=t.resolveComponent("KBadge"),N=t.resolveComponent("KTooltip"),I=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(I,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(b,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",Zw,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",Jw,[t.createElementVNode("div",Qw,[t.createVNode(Xw,{items:u.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=O=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",ek,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(O,F)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(O,F)},[t.createVNode(b,{for:`sp-form-request-limits-item-${F}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:F+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",tk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${F}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Un,{name:`$.config.limit.${F}`,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(Un,{name:`$.config.window_size.${F}`,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,nk),t.createElementVNode("div",ok,[t.createVNode(v,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(F)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(v,{appearance:"tertiary",onClick:()=>s(F)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),h.value.length>0?(t.openBlock(),t.createElementBlock("div",rk,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",ik,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,(O,F)=>(t.openBlock(),t.createBlock(N,{key:`use-case-${F}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(O.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(O.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(O.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(S,{appearance:p.value===`${f.value}-${F}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>_(O,`${f.value}-${F}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(O.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),lk={id:"sp-form-error-legend",class:"sp-form-error-inputs"},sk=we(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=je.createI18n("en-us",We);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",lk,[t.createVNode(Un,{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(Ln,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),ck={class:"partial-config-card"},dk={class:"config-card-row-label"},uk={class:"label-text"},fk=["data-testid"],pk=["data-testid"],mk={key:1},gk=["data-testid"],hk=["data-testid"],yk=we(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=je.createI18n("en-us",We),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}=fe.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([u,p])=>{var m,h,_,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:((_=r[u])==null?void 0:_.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=Q0(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",ck,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:h,label:_,value:g,type:y})=>(t.openBlock(),t.createElementBlock("div",{key:h,class:"partial-config-card-row"},[t.createElementVNode("div",dk,[t.createElementVNode("div",uk,t.toDisplayString(_),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${h}-property-value`},[a(g)?(t.openBlock(),t.createElementBlock("div",mk,[y==="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,gk)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${h}-plain-text`},t.toDisplayString(g),9,hk))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${h}-no-value`}," – ",8,pk))],8,fk)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),_k=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}=je.createI18n("en-us",We),i=t.inject(Pe.FORMS_CONFIG),a=n,{getMessageFromError:l}=fe.useErrors(),s=t.computed(()=>{switch(o.partialType){case uo.PartialType.REDIS_CE:return uo.PartialType.REDIS_EE;case uo.PartialType.REDIS_EE:return uo.PartialType.REDIS_CE;default:return}}),c=t.ref(!1),d=t.ref(),f=m=>{a("partialUpdateFailed",{message:l(m),appearance:"danger"})},u=()=>{a("partialUpdated",{message:r("plugins.free-form.redis_partial.partial_created_success_message"),appearance:"success"}),p()},p=()=>{d.value=void 0,a("modalClose"),t.nextTick(()=>{c.value=!1})};return t.watch(()=>o.visible,m=>{m&&(c.value=!0,t.nextTick(()=>{d.value="#km-modal-footer"}))}),(m,h)=>{const _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{class:"plugin-redis-partial-form","data-testid":"redis-partial-form-modal","full-screen":"",title:t.unref(r)("plugins.free-form.redis_partial.redis_partial_modal_title"),visible:c.value,onCancel:p},{footer:t.withCtx(()=>h[0]||(h[0]=[t.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:t.withCtx(()=>[t.createVNode(t.unref(uo.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"]]),bk="#52596e",wk="#e0e4ea",kk="#007d60",Ck="#6c7489",Ek="#0044f4",Nk="#5f9aff",Gc="#000933",zc="#d60027",Hc="#afb7c5",Yc="#6c7489",xo="12px",Sk="16px",Aa="20px",Wc="8px",Xc=Symbol("redis-partial-info"),Zc={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"}},Jc=["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"],vk={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},xk={key:0,class:"shared-redis-config"},Ak={class:"shared-redis-config-title"},Ik={class:"redis-config-select","data-testid":"redis-config-select"},Pk={class:"selected-redis-config"},Tk=["data-testid"],Ok={class:"select-item-name","data-testid":"selected-redis-config"},$k={class:"empty-redis-config","data-testid":"empty-redis-config"},Bk={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},Vk="1000",Rk=we(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var K;const o=n,{t:r}=je.createI18n("en-us",We),i=e,a=t.inject(Xc),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var V;return i.redisPath?i.redisPath:(V=a==null?void 0:a.redisPath)!=null&&V.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((K=a==null?void 0:a.redisType)==null?void 0:K.value)||"all",d=t.computed(()=>{var V;return!!((V=a==null?void 0:a.redisType)!=null&&V.value)}),f=t.ref(!1),u=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=fe.useErrors(),h=t.ref(i.defaultRedisConfigItem),_=t.ref({}),g=t.ref(),{value:y}=Lc("$.partials"),{value:w}=ct(s),b=t.inject(Pe.FORMS_CONFIG),{debouncedQueryChange:v,loading:S,error:N,loadItems:I,results:O}=fe.useDebouncedFilter(b,Zc[b.app].getAll,Vk,{fetchedItemsKey:"data",searchKeys:["id","name"]}),F=t.computed(()=>N.value?m(N.value):""),H=V=>{let M=`${b.apiBaseUrl}${Zc[b.app].getOne}`;return b.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,(b==null?void 0:b.controlPlaneId)||""):b.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,b!=null&&b.workspace?`/${b.workspace}`:"")),M=M.replace(/{id}/gi,String(V)),M},q=t.computed(()=>{const V=(O.value||[]).map(M=>({label:M.id,name:M.name,value:M.id,type:M.type,tag:X0(M)})).filter(M=>M.type==="redis-ce"||M.type==="redis-ee");return c!=="all"?V.filter(M=>M.type===c):V}),{axiosInstance:E}=fe.useAxios(b==null?void 0:b.axiosRequestConfig),te=()=>{p.value?(g.value&&(y.value=g.value,h.value=g.value[0].id,w.value=void 0),w!=null&&w.value&&(_.value=w.value)):(Object.keys(_.value).length&&(w.value=_.value),y!=null&&y.value&&(g.value=y.value),y.value=l?null:void 0)},P=V=>{I(),o("globalAction","notify",V)},G=V=>{o("globalAction","notify",V)},R=async V=>{if(V){h.value=V,y.value=[{id:V}],g.value=[{id:V}],w.value=void 0;try{const M=await E.get(H(V));if(M.data.config){const D=Object.assign(M.data,M.data.config);delete D.config,u.value=D}}catch(M){console.error(M)}}};return t.watch(()=>p.value,()=>{te()}),t.onBeforeMount(()=>{var V;if(I(),i.defaultRedisConfigItem||y!=null&&y.value){const M=i.defaultRedisConfigItem||((V=y==null?void 0:y.value)==null?void 0:V[0].id);R(M),p.value=!0}else w!=null&&w.value&&(_.value=w.value)}),(V,M)=>{const D=t.resolveComponent("KBadge"),L=t.resolveComponent("KRadio"),j=t.resolveComponent("KSelect"),Z=t.resolveComponent("KCard");return d.value?(t.openBlock(),t.createBlock(Z,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",vk,[t.createVNode(L,{modelValue:p.value,"onUpdate:modelValue":M[0]||(M[0]=W=>p.value=W),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(r)("redis.shared_configuration.description"),label:t.unref(r)("redis.shared_configuration.label"),"selected-value":!0},{default:t.withCtx(()=>[t.createVNode(D,{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(L,{modelValue:p.value,"onUpdate:modelValue":M[1]||(M[1]=W=>p.value=W),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(r)("redis.dedicated_configuration.description"),label:t.unref(r)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),p.value?(t.openBlock(),t.createElementBlock("div",xk,[t.createElementVNode("div",Ak,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",Ik,[t.createVNode(j,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:q.value,loading:t.unref(S),"model-value":h.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:M[3]||(M[3]=W=>R(W==null?void 0:W.value)),onQueryChange:t.unref(v)},{"selected-item-template":t.withCtx(({item:W})=>[t.createElementVNode("div",Pk,t.toDisplayString(W.name),1)]),"item-template":t.withCtx(({item:W})=>[t.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${W.name}`},[t.createElementVNode("span",Ok,t.toDisplayString(W.name),1),t.createVNode(D,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(W.tag),1)]),_:2},1024)],8,Tk)]),empty:t.withCtx(()=>[t.createElementVNode("div",$k,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:M[2]||(M[2]=()=>f.value=!0)},[t.createVNode(t.unref(Ce.AddIcon),{size:t.unref(xo)},null,8,["size"]),t.createElementVNode("span",null,t.toDisplayString(t.unref(r)("redis.shared_configuration.create_new_configuration",{type:t.unref(J0)(t.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),u.value?(t.openBlock(),t.createBlock(yk,{key:0,"config-fields":u.value},null,8,["config-fields"])):t.createCommentVNode("",!0),F.value?(t.openBlock(),t.createElementBlock("p",Bk,t.toDisplayString(F.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(it,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(Jc),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(_k,{"partial-type":t.unref(c),visible:f.value,onModalClose:M[4]||(M[4]=W=>f.value=!1),onPartialUpdateFailed:G,onPartialUpdated:P},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(it,t.mergeProps({key:1},i,{"fields-order":t.unref(Jc),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-12b9ad82"]]),Dk=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=Fe();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(jc,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(Rk,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),Mk=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(dt,{config:r,data:a.data,schema:a.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(it,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(ak),t.createVNode(sk)]),_:1}),t.createVNode($r,null,{default:t.withCtx(()=>[t.createVNode(ot,{name:"config.dictionary_name"}),t.createVNode(ot,{name:"config.lock_dictionary_name"}),t.createVNode(ot,{name:"config.strategy"}),t.createVNode(Dk,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(ot,{name:"config.namespace"}),t.createVNode(ot,{name:"config.hide_client_headers"}),t.createVNode(ot,{name:"config.disable_penalty"}),t.createVNode(ot,{name:"config.retry_after_jitter_max"}),t.createVNode(ot,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),Fk=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(Pe.AUTOFILL_SLOT,o==null?void 0:o[Pe.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(va,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(Mk,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),Lk={class:"ff-standard-layout"},Uk={class:"enabled"},Kk={class:"scope"},jk={key:0,class:"scope-detail"},Qc=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}=je.createI18n("en-us",We),o=e,r=t.useSlots(),i=t.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(y=>y.model==="enabled")}}),a=t.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(y=>y.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:g,description:y})=>({label:g,description:y}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var y;const g=["instance_name","protocols","tags"];return{fields:(y=o.formSchema)==null?void 0:y.fields.filter(w=>g.includes(w.model))}}),d=["config"],f=t.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(y=>d.includes(Object.keys(y)[0])),g}),u=t.computed(()=>{const g=["config","partials","__ui_data"];return ma(o.model,g)}),p=ma(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]),m=t.ref(Object.values(p).some(g=>!!g)),h=t.ref(!0);function _(g,y){p[y]=g,o.onModelUpdated(g,y)}return t.watch(m,g=>{g?Object.keys(p).forEach(y=>{o.onModelUpdated(p[y],y)}):Object.keys(p).forEach(y=>{o.onModelUpdated("",y)})}),(g,y)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",Lk,[t.createVNode(t.unref(fe.EntityFormBlock),{description:g.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:g.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",Uk,[t.createVNode(t.unref(Pe.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",Kk,[t.createVNode(t.unref(xe.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":y[0]||(y[0]=b=>m.value=b),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(xe.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":y[1]||(y[1]=b=>m.value=b),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),m.value?(t.openBlock(),t.createElementBlock("div",jk,[t.createVNode(t.unref(Pe.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:_},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:h.value,"onUpdate:modelValue":y[2]||(y[2]=b=>h.value=b),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(Pe.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(fe.EntityFormBlock),{description:g.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:g.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(g.$slots,"default",{data:u.value,schema:f.value,onChange:y[3]||(y[3]=(...b)=>g.onFormChange&&g.onFormChange(...b))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-8d0a8a0c"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function ed(e){return typeof e>"u"||e===null}function qk(e){return typeof e=="object"&&e!==null}function Gk(e){return Array.isArray(e)?e:ed(e)?[]:[e]}function zk(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 Hk(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function Yk(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var Wk=ed,Xk=qk,Zk=Gk,Jk=Hk,Qk=Yk,eC=zk,Xe={isNothing:Wk,isObject:Xk,toArray:Zk,repeat:Jk,isNegativeZero:Qk,extend:eC};function td(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
11
+ it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:Fn.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:Fn.tags}]},lg={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"]}}]},Ss={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:_n},{ttl:{help:"Time-to-live value for data"}}]},sg=e=>(e==null?void 0:e.app)==="kongManager"?{shamefullyTransformPayload:({payload:n})=>{(e!=null&&e.credential&&typeof n.ttl!="number"||Number.isNaN(n.ttl))&&(n.ttl=0)}}:{},cg={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live value for data",type:"number"}}]},Vt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["basic-auth"]},"hmac-auth":{descriptionKey:"plugins.meta.hmac-auth.description",nameKey:"plugins.meta.hmac-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["hmac-auth"]},"jwt-signer":{descriptionKey:"plugins.meta.jwt-signer.description",nameKey:"plugins.meta.jwt-signer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwt-signer"]},jwt:{descriptionKey:"plugins.meta.jwt.description",nameKey:"plugins.meta.jwt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.jwt},"key-auth":{descriptionKey:"plugins.meta.key-auth.description",nameKey:"plugins.meta.key-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth"]},"key-auth-enc":{descriptionKey:"plugins.meta.key-auth-enc.description",nameKey:"plugins.meta.key-auth-enc.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["key-auth-enc"]},"ldap-auth-advanced":{descriptionKey:"plugins.meta.ldap-auth-advanced.description",nameKey:"plugins.meta.ldap-auth-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth-advanced"]},"ldap-auth":{descriptionKey:"plugins.meta.ldap-auth.description",nameKey:"plugins.meta.ldap-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["ldap-auth"]},"oauth2-introspection":{descriptionKey:"plugins.meta.oauth2-introspection.description",nameKey:"plugins.meta.oauth2-introspection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oauth2-introspection"]},oauth2:{descriptionKey:"plugins.meta.oauth2.description",nameKey:"plugins.meta.oauth2.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.oauth2},"openid-connect":{descriptionKey:"plugins.meta.openid-connect.description",nameKey:"plugins.meta.openid-connect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["openid-connect"]},"mtls-auth":{descriptionKey:"plugins.meta.mtls-auth.description",nameKey:"plugins.meta.mtls-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["mtls-auth"]},"vault-auth":{descriptionKey:"plugins.meta.vault-auth.description",nameKey:"plugins.meta.vault-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["vault-auth"]},"bot-detection":{descriptionKey:"plugins.meta.bot-detection.description",nameKey:"plugins.meta.bot-detection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["bot-detection"]},cors:{descriptionKey:"plugins.meta.cors.description",nameKey:"plugins.meta.cors.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.cors},"ip-restriction":{descriptionKey:"plugins.meta.ip-restriction.description",nameKey:"plugins.meta.ip-restriction.name",fieldRules:{atLeastOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["ip-restriction"]},opa:{descriptionKey:"plugins.meta.opa.description",nameKey:"plugins.meta.opa.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.opa},"kubernetes-sidecar-injector":{descriptionKey:"plugins.meta.kubernetes-sidecar-injector.description",nameKey:"plugins.meta.kubernetes-sidecar-injector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kubernetes-sidecar-injector"]},"request-validator":{descriptionKey:"plugins.meta.request-validator.description",nameKey:"plugins.meta.request-validator.name",fieldRules:{atLeastOneOf:[["config.body_schema","config.parameter_schema"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-validator"]},acl:{descriptionKey:"plugins.meta.acl.description",nameKey:"plugins.meta.acl.name",fieldRules:{onlyOneOf:[["config.allow","config.deny"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.acl},canary:{descriptionKey:"plugins.meta.canary.description",nameKey:"plugins.meta.canary.name",fieldRules:{atLeastOneOf:[["config.upstream_uri","config.upstream_host","config.upstream_port"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.canary},"forward-proxy":{descriptionKey:"plugins.meta.forward-proxy.description",nameKey:"plugins.meta.forward-proxy.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["forward-proxy"]},"proxy-cache":{descriptionKey:"plugins.meta.proxy-cache.description",nameKey:"plugins.meta.proxy-cache.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache"]},"proxy-cache-advanced":{descriptionKey:"plugins.meta.proxy-cache-advanced.description",nameKey:"plugins.meta.proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["proxy-cache-advanced"]},"graphql-proxy-cache-advanced":{descriptionKey:"plugins.meta.graphql-proxy-cache-advanced.description",nameKey:"plugins.meta.graphql-proxy-cache-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-proxy-cache-advanced"]},"rate-limiting-advanced":{descriptionKey:"plugins.meta.rate-limiting-advanced.description",nameKey:"plugins.meta.rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting-advanced"]},"rate-limiting":{descriptionKey:"plugins.meta.rate-limiting.description",nameKey:"plugins.meta.rate-limiting.name",fieldRules:{atLeastOneOf:[["config.second","config.minute","config.hour","config.day","config.month","config.year"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["rate-limiting"]},"graphql-rate-limiting-advanced":{descriptionKey:"plugins.meta.graphql-rate-limiting-advanced.description",nameKey:"plugins.meta.graphql-rate-limiting-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["graphql-rate-limiting-advanced"]},mocking:{descriptionKey:"plugins.meta.mocking.description",nameKey:"plugins.meta.mocking.name",fieldRules:{atLeastOneOf:[["config.api_specification_filename","config.api_specification"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.mocking},"request-size-limiting":{descriptionKey:"plugins.meta.request-size-limiting.description",nameKey:"plugins.meta.request-size-limiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-size-limiting"]},"request-termination":{descriptionKey:"plugins.meta.request-termination.description",nameKey:"plugins.meta.request-termination.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-termination"]},"response-ratelimiting":{descriptionKey:"plugins.meta.response-ratelimiting.description",nameKey:"plugins.meta.response-ratelimiting.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-ratelimiting"]},"route-by-header":{descriptionKey:"plugins.meta.route-by-header.description",nameKey:"plugins.meta.route-by-header.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-by-header"]},"ai-proxy":{descriptionKey:"plugins.meta.ai-proxy.description",nameKey:"plugins.meta.ai-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy"]},"ai-prompt-decorator":{descriptionKey:"plugins.meta.ai-prompt-decorator.description",nameKey:"plugins.meta.ai-prompt-decorator.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-decorator"]},"ai-prompt-template":{descriptionKey:"plugins.meta.ai-prompt-template.description",nameKey:"plugins.meta.ai-prompt-template.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-template"]},"ai-prompt-guard":{descriptionKey:"plugins.meta.ai-prompt-guard.description",nameKey:"plugins.meta.ai-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-guard"]},"ai-request-transformer":{descriptionKey:"plugins.meta.ai-request-transformer.description",nameKey:"plugins.meta.ai-request-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-request-transformer"]},"ai-response-transformer":{descriptionKey:"plugins.meta.ai-response-transformer.description",nameKey:"plugins.meta.ai-response-transformer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-response-transformer"]},"ai-rate-limiting-advanced":{descriptionKey:"plugins.meta.ai-rate-limiting-advanced.description",nameKey:"plugins.meta.ai-rate-limiting-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rate-limiting-advanced"]},"ai-azure-content-safety":{descriptionKey:"plugins.meta.ai-azure-content-safety.description",nameKey:"plugins.meta.ai-azure-content-safety.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-azure-content-safety"]},"aws-lambda":{descriptionKey:"plugins.meta.aws-lambda.description",nameKey:"plugins.meta.aws-lambda.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["aws-lambda"]},"azure-functions":{descriptionKey:"plugins.meta.azure-functions.description",nameKey:"plugins.meta.azure-functions.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["azure-functions"]},openwhisk:{descriptionKey:"plugins.meta.openwhisk.description",nameKey:"plugins.meta.openwhisk.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.openwhisk},"pre-function":{descriptionKey:"plugins.meta.pre-function.description",nameKey:"plugins.meta.pre-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["pre-function"]},"post-function":{descriptionKey:"plugins.meta.post-function.description",nameKey:"plugins.meta.post-function.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["post-function"]},datadog:{descriptionKey:"plugins.meta.datadog.description",nameKey:"plugins.meta.datadog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.datadog},prometheus:{descriptionKey:"plugins.meta.prometheus.description",nameKey:"plugins.meta.prometheus.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.prometheus},zipkin:{descriptionKey:"plugins.meta.zipkin.description",nameKey:"plugins.meta.zipkin.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.zipkin},collector:{descriptionKey:"plugins.meta.collector.description",nameKey:"plugins.meta.collector.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.collector},"response-transformer-advanced":{descriptionKey:"plugins.meta.response-transformer-advanced.description",nameKey:"plugins.meta.response-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer-advanced"]},"correlation-id":{descriptionKey:"plugins.meta.correlation-id.description",nameKey:"plugins.meta.correlation-id.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["correlation-id"]},"request-transformer-advanced":{descriptionKey:"plugins.meta.request-transformer-advanced.description",nameKey:"plugins.meta.request-transformer-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer-advanced"]},"request-transformer":{descriptionKey:"plugins.meta.request-transformer.description",nameKey:"plugins.meta.request-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-transformer"]},"response-transformer":{descriptionKey:"plugins.meta.response-transformer.description",nameKey:"plugins.meta.response-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["response-transformer"]},"route-transformer-advanced":{descriptionKey:"plugins.meta.route-transformer-advanced.description",nameKey:"plugins.meta.route-transformer-advanced.name",fieldRules:{atLeastOneOf:[["config.path","config.port","config.host"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["route-transformer-advanced"]},"kafka-upstream":{descriptionKey:"plugins.meta.kafka-upstream.description",nameKey:"plugins.meta.kafka-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-upstream"]},degraphql:{descriptionKey:"plugins.meta.degraphql.description",nameKey:"plugins.meta.degraphql.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.degraphql},"exit-transformer":{descriptionKey:"plugins.meta.exit-transformer.description",nameKey:"plugins.meta.exit-transformer.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["exit-transformer"]},jq:{descriptionKey:"plugins.meta.jq.description",nameKey:"plugins.meta.jq.name",fieldRules:{atLeastOneOf:[["config.request_jq_program","config.response_jq_program"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.jq},"file-log":{descriptionKey:"plugins.meta.file-log.description",nameKey:"plugins.meta.file-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["file-log"]},"http-log":{descriptionKey:"plugins.meta.http-log.description",nameKey:"plugins.meta.http-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["http-log"]},loggly:{descriptionKey:"plugins.meta.loggly.description",nameKey:"plugins.meta.loggly.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.loggly},"statsd-advanced":{descriptionKey:"plugins.meta.statsd-advanced.description",nameKey:"plugins.meta.statsd-advanced.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["statsd-advanced"]},statsd:{descriptionKey:"plugins.meta.statsd.description",nameKey:"plugins.meta.statsd.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.statsd},syslog:{descriptionKey:"plugins.meta.syslog.description",nameKey:"plugins.meta.syslog.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.syslog},"tcp-log":{descriptionKey:"plugins.meta.tcp-log.description",nameKey:"plugins.meta.tcp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tcp-log"]},"udp-log":{descriptionKey:"plugins.meta.udp-log.description",nameKey:"plugins.meta.udp-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["udp-log"]},"kafka-log":{descriptionKey:"plugins.meta.kafka-log.description",nameKey:"plugins.meta.kafka-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-log"]},session:{descriptionKey:"plugins.meta.session.description",nameKey:"plugins.meta.session.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.session},"upstream-tls":{descriptionKey:"plugins.meta.upstream-tls.description",nameKey:"plugins.meta.upstream-tls.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-tls"]},"application-registration":{descriptionKey:"plugins.meta.application-registration.description",nameKey:"plugins.meta.application-registration.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["application-registration"]},"konnect-application-auth":{descriptionKey:"plugins.meta.konnect-application-auth.description",nameKey:"plugins.meta.konnect-application-auth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["konnect-application-auth"]},acme:{descriptionKey:"plugins.meta.acme.description",nameKey:"plugins.meta.acme.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.acme},"grpc-gateway":{descriptionKey:"plugins.meta.grpc-gateway.description",nameKey:"plugins.meta.grpc-gateway.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-gateway"]},"grpc-web":{descriptionKey:"plugins.meta.grpc-web.description",nameKey:"plugins.meta.grpc-web.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["grpc-web"]},"upstream-timeout":{descriptionKey:"plugins.meta.upstream-timeout.description",nameKey:"plugins.meta.upstream-timeout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-timeout"]},opentelemetry:{descriptionKey:"plugins.meta.opentelemetry.description",nameKey:"plugins.meta.opentelemetry.name",fieldRules:{atLeastOneOf:[["config.traces_endpoint","config.logs_endpoint"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP.opentelemetry},"websocket-validator":{descriptionKey:"plugins.meta.websocket-validator.description",nameKey:"plugins.meta.websocket-validator.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-validator"]},"websocket-size-limit":{descriptionKey:"plugins.meta.websocket-size-limit.description",nameKey:"plugins.meta.websocket-size-limit.name",fieldRules:{atLeastOneOf:[["config.client_max_payload","config.upstream_max_payload"]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["websocket-size-limit"]},"tls-metadata-headers":{descriptionKey:"plugins.meta.tls-metadata-headers.description",nameKey:"plugins.meta.tls-metadata-headers.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-metadata-headers"]},"tls-handshake-modifier":{descriptionKey:"plugins.meta.tls-handshake-modifier.description",nameKey:"plugins.meta.tls-handshake-modifier.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["tls-handshake-modifier"]},"oas-validation":{descriptionKey:"plugins.meta.oas-validation.description",nameKey:"plugins.meta.oas-validation.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["oas-validation"]},"jwe-decrypt":{descriptionKey:"plugins.meta.jwe-decrypt.description",nameKey:"plugins.meta.jwe-decrypt.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["jwe-decrypt"]},"xml-threat-protection":{descriptionKey:"plugins.meta.xml-threat-protection.description",nameKey:"plugins.meta.xml-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["xml-threat-protection"]},saml:{descriptionKey:"plugins.meta.saml.description",nameKey:"plugins.meta.saml.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.saml},"app-dynamics":{descriptionKey:"plugins.meta.app-dynamics.description",nameKey:"plugins.meta.app-dynamics.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["app-dynamics"]},"json-threat-protection":{descriptionKey:"plugins.meta.json-threat-protection.description",nameKey:"plugins.meta.json-threat-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["json-threat-protection"]},"standard-webhooks":{descriptionKey:"plugins.meta.standard-webhooks.description",nameKey:"plugins.meta.standard-webhooks.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["standard-webhooks"]},"ai-proxy-advanced":{descriptionKey:"plugins.meta.ai-proxy-advanced.description",nameKey:"plugins.meta.ai-proxy-advanced.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-proxy-advanced"]},"ai-semantic-cache":{descriptionKey:"plugins.meta.ai-semantic-cache.description",nameKey:"plugins.meta.ai-semantic-cache.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-cache"]},"ai-semantic-prompt-guard":{descriptionKey:"plugins.meta.ai-semantic-prompt-guard.description",nameKey:"plugins.meta.ai-semantic-prompt-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-prompt-guard"]},"header-cert-auth":{descriptionKey:"plugins.meta.header-cert-auth.description",nameKey:"plugins.meta.header-cert-auth.name",fieldRules:{onlyOneOfMutuallyRequired:[[["config.http_proxy_host","config.http_proxy_port"],["config.https_proxy_host","config.https_proxy_port"]]]},...H.PLUGIN_GROUP_AND_SCOPE_MAP["header-cert-auth"]},"upstream-oauth":{descriptionKey:"plugins.meta.upstream-oauth.description",nameKey:"plugins.meta.upstream-oauth.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["upstream-oauth"]},confluent:{descriptionKey:"plugins.meta.confluent.description",nameKey:"plugins.meta.confluent.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.confluent},"service-protection":{descriptionKey:"plugins.meta.service-protection.description",nameKey:"plugins.meta.service-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["service-protection"]},"injection-protection":{descriptionKey:"plugins.meta.injection-protection.description",nameKey:"plugins.meta.injection-protection.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["injection-protection"]},redirect:{descriptionKey:"plugins.meta.redirect.description",nameKey:"plugins.meta.redirect.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.redirect},"kafka-consume":{descriptionKey:"plugins.meta.kafka-consume.description",nameKey:"plugins.meta.kafka-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["kafka-consume"]},"confluent-consume":{descriptionKey:"plugins.meta.confluent-consume.description",nameKey:"plugins.meta.confluent-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["confluent-consume"]},"request-callout":{descriptionKey:"plugins.meta.request-callout.description",nameKey:"plugins.meta.request-callout.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["request-callout"]},"ai-sanitizer":{descriptionKey:"plugins.meta.ai-sanitizer.description",nameKey:"plugins.meta.ai-sanitizer.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-sanitizer"]},"ai-rag-injector":{descriptionKey:"plugins.meta.ai-rag-injector.description",nameKey:"plugins.meta.ai-rag-injector.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-rag-injector"]},datakit:{descriptionKey:"plugins.meta.datakit.description",nameKey:"plugins.meta.datakit.name",useUIData:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP.datakit},"ai-prompt-compressor":{descriptionKey:"plugins.meta.ai-prompt-compressor.description",nameKey:"plugins.meta.ai-prompt-compressor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-prompt-compressor"]},"solace-upstream":{descriptionKey:"plugins.meta.solace-upstream.description",nameKey:"plugins.meta.solace-upstream.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-upstream"]},"ai-aws-guardrails":{descriptionKey:"plugins.meta.ai-aws-guardrails.description",nameKey:"plugins.meta.ai-aws-guardrails.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-aws-guardrails"]},ace:{descriptionKey:"plugins.meta.ace.description",nameKey:"plugins.meta.ace.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP.ace},"solace-consume":{descriptionKey:"plugins.meta.solace-consume.description",nameKey:"plugins.meta.solace-consume.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-consume"]},"solace-log":{descriptionKey:"plugins.meta.solace-log.description",nameKey:"plugins.meta.solace-log.name",...H.PLUGIN_GROUP_AND_SCOPE_MAP["solace-log"]},"ai-llm-as-judge":{descriptionKey:"plugins.meta.ai-llm-as-judge.description",nameKey:"plugins.meta.ai-llm-as-judge.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-llm-as-judge"]},"ai-mcp-proxy":{descriptionKey:"plugins.meta.ai-mcp-proxy.description",nameKey:"plugins.meta.ai-mcp-proxy.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-proxy"]},"ai-gcp-model-armor":{descriptionKey:"plugins.meta.ai-gcp-model-armor.description",nameKey:"plugins.meta.ai-gcp-model-armor.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-gcp-model-armor"]},"ai-mcp-oauth2":{descriptionKey:"plugins.meta.ai-mcp-oauth2.description",nameKey:"plugins.meta.ai-mcp-oauth2.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-mcp-oauth2"]},"ai-semantic-response-guard":{descriptionKey:"plugins.meta.ai-semantic-response-guard.description",nameKey:"plugins.meta.ai-semantic-response-guard.name",useLegacyForm:!0,...H.PLUGIN_GROUP_AND_SCOPE_MAP["ai-semantic-response-guard"]}},Un={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:ws,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:yn(ws),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:ks,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:yn(ks)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:Cs,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:yn(Cs)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:Ss,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:yn(Ss)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:Ns,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:yn(Ns)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:Es,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:yn(Es)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:ig,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},dg={acls:Zm,basicauth_credentials:Jm,keyauth_credentials:og,keyauth_enc_credentials:cg,oauth2_credentials:lg,hmacauth_credentials:rg,jwt_secrets:ag},ug=()=>{const{i18n:{t:e}}=De(),n={},o={};for(const[i,a]of Object.entries(Vt))n[i]={...a,name:e(a.nameKey),description:e(a.descriptionKey)};for(const[i,a]of Object.entries(Un))o[i]={...a,name:e(a.nameKey),title:e(a.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:Un,getDisplayName:i=>{var a;return((a=n[i])==null?void 0:a.name)||i}}},No={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},fg={"config-prompts-prepend":{...No,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}},"config-prompts-append":{...No,newElementButtonLabel:"+ Add Message",items:{type:"object",schema:{fields:[{label:"Role",model:"role",help:"LLM message role",type:"select",required:!0,values:["system","assistant","user"]},{label:"Content",model:"content",type:"input",required:!0,help:"LLM message content",inputType:"text"}]}}}},pg={"config-templates":{...No,newElementButtonLabel:"+ Add Template",items:{type:"object",schema:{fields:[{label:"Template Name",model:"name",help:"Template Name, for reference in user requests",type:"input",required:!0,inputType:"text"},{label:"Template String",model:"template",help:"Template string content, containing {{placeholders}} for variable substitution",type:"textArea",required:!0,inputType:"text"}]}}}},mg={shamefullyTransformPayload:({originalModel:e,model:n,payload:o,schema:r})=>{const i=l=>{var s;return(s=r[l])!=null&&s.required&&n[l]?!0:e[l]===n[l]?!1:e[l]===null?n[l]!==""&&!Number.isNaN(n[l]):!0},a=l=>Object.keys(e).some(s=>s.startsWith(l)&&i(s));a("config-embeddings")||(o.config.embeddings=null),a("config-vectordb")||(o.config.vectordb=null)}},gg={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},hg={enabled:{type:"switch",model:"enabled",label:"Enabled",textOn:"This plugin is Enabled",textOff:"This plugin is Disabled",inputType:"hidden",styleClasses:"field-switch top-border bottom-border hide-label",default:!0},name:{default:"application-registration",type:"input",inputType:"hidden",styleClasses:"kong-form-hidden-field-wrapper"},"service-id":{type:"AutoSuggest",label:"Gateway Service",styleClasses:"bottom-border",description:"Specific Gateway Service in this workspace",model:"service-id",entity:"services",placeholder:"Select a Gateway Service",inputValues:{fields:["name","id"]},help:"The Gateway Service that this plugin configuration will target"},tags:Fn.tags,protocols:{id:"protocols",default:[],type:"multiselect",label:"Protocols",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}],help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type.",placeholder:"Select valid protocols for the plugin",styleClasses:"plugin-protocols-select"}},Ve={type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label"},_r={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},yg={"config-metrics":{..._r,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"tags",label:"Tags",type:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",inputAttributes:{class:"form-control",style:{minWidth:"200px"}},inputType:"text"}]}}}},_g={"config-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},bg={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},wg={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},kg={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Cg={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Eg={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},vs=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((e,n)=>({...e,[n]:Fn.fields.arrayItems({newElementButtonLabel:"Add"})}),Eg),br={"config-strategy":{label:"Config.Strategy",type:"select",default:"redis",values:["local","redis"]},"config-consumer_groups":{label:"Config.Consumer Groups",type:"input",placeholder:"Enter list of consumer groups",hint:"e.g. group1, group2"}},Ng={"config-remove-headers":{},"config-remove.querystring":{},"config-remove-body":{},"config-replace-headers":{},"config-replace-querystring":{},"config-replace-body":{},"config-rename-headers":{},"config-rename-querystring":{},"config-rename-body":{},"config-add-headers":{},"config-add-querystring":{},"config-add-body":{},"config-append-headers":{},"config-append-querystring":{},"config-append-body":{},"config-allow-body":{}},Sg=["config-remove-headers","config-remove.querystring","config-remove-body","config-replace-headers","config-replace-querystring","config-replace-body","config-rename-headers","config-rename-querystring","config-rename-body","config-add-headers","config-add-querystring","config-add-body","config-append-headers","config-append-querystring","config-append-body","config-allow-body"].reduce((e,n)=>({...e,[n]:Fn.fields.arrayItems({newElementButtonLabel:"Add"})}),Ng),xs={"config-add-json":{...Ve,label:"Config.Add.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Ve,label:"Config.Append.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Ve,label:"Config.Remove.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Ve,label:"Config.Rename.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Ve,label:"Config.Replace.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},vg={...xs,"config-allow-json":{...Ve,label:"Config.Allow.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Ve,label:"Config.Transform.Functions",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Ve,label:"Config.Transform.Json",inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},xg={"config-rules":{...No,newElementButtonLabel:"+ Add Rule",items:{type:"object",schema:{fields:[{label:"Upstream Name",model:"upstream_name",type:"input",help:"Target hostname where traffic will be routed in case of condition match",placeholder:"Hostname",inputType:"text"},{label:"Condition",model:"condition",type:"keyValuePairs",help:"List of headers name and value pairs",newElementButtonLabelClasses:"kong-form-new-element-button-label",newElementButtonLabel:"+ Add Condition",keyInputPlaceholder:"Header name",valueInputPlaceholder:"Header value"}]}}}},Ag={"config-session_redis_cluster_nodes":{...No,newElementButtonLabel:"+ Add Cluster Node",items:{type:"object",schema:{fields:[{label:"IP",model:"ip",type:"input",inputType:"text"},{label:"Port",model:"port",type:"input",inputType:"number"}]}}}},Ig={"config-flow-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Pg={"config-message-functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}}},Tg={"config-metrics":{..._r,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},Og={"config-metrics":{..._r,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"Name",type:"select",values:["request_count","request_size","response_size","latency","status_count","unique_users","request_per_user","upstream_latency","kong_latency","status_count_per_user","status_count_per_user_per_route","status_count_per_workspace","shdict_usage","cache_datastore_hits_total","cache_datastore_misses_total"]},{model:"stat_type",label:"Stat Type",type:"select",values:["gauge","timer","counter","histogram","meter","set"]},{model:"sample_rate",label:"Sample Rate",type:"input",inputType:"number",id:"sample_rate"},{model:"consumer_identifier",label:"Consumer Identifier",type:"select",values:["consumer_id","custom_id","username"]},{model:"service_identifier",label:"Service Identifier",type:"select",values:["service_id","service_name","service_host","service_name_or_host"]},{model:"workspace_identifier",label:"Workspace Identifier",type:"select",values:["workspace_id","workspace_name"]}]}}}},$g={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},Bg={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:e=>({id:e}),keyFromObject:"id"}};var As=typeof global=="object"&&global&&global.Object===Object&&global,Vg=typeof self=="object"&&self&&self.Object===Object&&self,Rt=As||Vg||Function("return this")(),Ct=Rt.Symbol,Is=Object.prototype,Rg=Is.hasOwnProperty,Dg=Is.toString,So=Ct?Ct.toStringTag:void 0;function Mg(e){var n=Rg.call(e,So),o=e[So];try{e[So]=void 0;var r=!0}catch{}var i=Dg.call(e);return r&&(n?e[So]=o:delete e[So]),i}var Lg=Object.prototype,Fg=Lg.toString;function Ug(e){return Fg.call(e)}var Kg="[object Null]",jg="[object Undefined]",Ps=Ct?Ct.toStringTag:void 0;function bn(e){return e==null?e===void 0?jg:Kg:Ps&&Ps in Object(e)?Mg(e):Ug(e)}function zt(e){return e!=null&&typeof e=="object"}var Gg="[object Symbol]";function zi(e){return typeof e=="symbol"||zt(e)&&bn(e)==Gg}function Ts(e,n){for(var o=-1,r=e==null?0:e.length,i=Array(r);++o<r;)i[o]=n(e[o],o,e);return i}var At=Array.isArray,Os=Ct?Ct.prototype:void 0,$s=Os?Os.toString:void 0;function Bs(e){if(typeof e=="string")return e;if(At(e))return Ts(e,Bs)+"";if(zi(e))return $s?$s.call(e):"";var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function wn(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}function qg(e){return e}var zg="[object AsyncFunction]",Hg="[object Function]",Yg="[object GeneratorFunction]",Wg="[object Proxy]";function wr(e){if(!wn(e))return!1;var n=bn(e);return n==Hg||n==Yg||n==zg||n==Wg}var Hi=Rt["__core-js_shared__"],Vs=function(){var e=/[^.]+$/.exec(Hi&&Hi.keys&&Hi.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function Xg(e){return!!Vs&&Vs in e}var Zg=Function.prototype,Jg=Zg.toString;function kn(e){if(e!=null){try{return Jg.call(e)}catch{}try{return e+""}catch{}}return""}var Qg=/[\\^$.*+?()[\]{}|]/g,eh=/^\[object .+?Constructor\]$/,th=Function.prototype,nh=Object.prototype,oh=th.toString,rh=nh.hasOwnProperty,ih=RegExp("^"+oh.call(rh).replace(Qg,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function ah(e){if(!wn(e)||Xg(e))return!1;var n=wr(e)?ih:eh;return n.test(kn(e))}function lh(e,n){return e==null?void 0:e[n]}function Cn(e,n){var o=lh(e,n);return ah(o)?o:void 0}var Yi=Cn(Rt,"WeakMap"),Rs=Object.create,sh=function(){function e(){}return function(n){if(!wn(n))return{};if(Rs)return Rs(n);e.prototype=n;var o=new e;return e.prototype=void 0,o}}();function ch(e,n,o){switch(o.length){case 0:return e.call(n);case 1:return e.call(n,o[0]);case 2:return e.call(n,o[0],o[1]);case 3:return e.call(n,o[0],o[1],o[2])}return e.apply(n,o)}function dh(e,n){var o=-1,r=e.length;for(n||(n=Array(r));++o<r;)n[o]=e[o];return n}var uh=800,fh=16,ph=Date.now;function mh(e){var n=0,o=0;return function(){var r=ph(),i=fh-(r-o);if(o=r,i>0){if(++n>=uh)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}function gh(e){return function(){return e}}var kr=function(){try{var e=Cn(Object,"defineProperty");return e({},"",{}),e}catch{}}(),hh=kr?function(e,n){return kr(e,"toString",{configurable:!0,enumerable:!1,value:gh(n),writable:!0})}:qg,yh=mh(hh);function _h(e,n){for(var o=-1,r=e==null?0:e.length;++o<r&&n(e[o],o,e)!==!1;);return e}var bh=9007199254740991,wh=/^(?:0|[1-9]\d*)$/;function Wi(e,n){var o=typeof e;return n=n??bh,!!n&&(o=="number"||o!="symbol"&&wh.test(e))&&e>-1&&e%1==0&&e<n}function Ds(e,n,o){n=="__proto__"&&kr?kr(e,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):e[n]=o}function Xi(e,n){return e===n||e!==e&&n!==n}var kh=Object.prototype,Ch=kh.hasOwnProperty;function Zi(e,n,o){var r=e[n];(!(Ch.call(e,n)&&Xi(r,o))||o===void 0&&!(n in e))&&Ds(e,n,o)}function vo(e,n,o,r){var i=!o;o||(o={});for(var a=-1,l=n.length;++a<l;){var s=n[a],c=void 0;c===void 0&&(c=e[s]),i?Ds(o,s,c):Zi(o,s,c)}return o}var Ms=Math.max;function Eh(e,n,o){return n=Ms(n===void 0?e.length-1:n,0),function(){for(var r=arguments,i=-1,a=Ms(r.length-n,0),l=Array(a);++i<a;)l[i]=r[n+i];i=-1;for(var s=Array(n+1);++i<n;)s[i]=r[i];return s[n]=o(l),ch(e,this,s)}}var Nh=9007199254740991;function Ji(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Nh}function Qi(e){return e!=null&&Ji(e.length)&&!wr(e)}var Sh=Object.prototype;function Cr(e){var n=e&&e.constructor,o=typeof n=="function"&&n.prototype||Sh;return e===o}function vh(e,n){for(var o=-1,r=Array(e);++o<e;)r[o]=n(o);return r}var xh="[object Arguments]";function Ls(e){return zt(e)&&bn(e)==xh}var Fs=Object.prototype,Ah=Fs.hasOwnProperty,Ih=Fs.propertyIsEnumerable,Er=Ls(function(){return arguments}())?Ls:function(e){return zt(e)&&Ah.call(e,"callee")&&!Ih.call(e,"callee")};function Ph(){return!1}var Us=typeof xe=="object"&&xe&&!xe.nodeType&&xe,Ks=Us&&typeof module=="object"&&module&&!module.nodeType&&module,Th=Ks&&Ks.exports===Us,js=Th?Rt.Buffer:void 0,Oh=js?js.isBuffer:void 0,xo=Oh||Ph,$h="[object Arguments]",Bh="[object Array]",Vh="[object Boolean]",Rh="[object Date]",Dh="[object Error]",Mh="[object Function]",Lh="[object Map]",Fh="[object Number]",Uh="[object Object]",Kh="[object RegExp]",jh="[object Set]",Gh="[object String]",qh="[object WeakMap]",zh="[object ArrayBuffer]",Hh="[object DataView]",Yh="[object Float32Array]",Wh="[object Float64Array]",Xh="[object Int8Array]",Zh="[object Int16Array]",Jh="[object Int32Array]",Qh="[object Uint8Array]",ey="[object Uint8ClampedArray]",ty="[object Uint16Array]",ny="[object Uint32Array]",ze={};ze[Yh]=ze[Wh]=ze[Xh]=ze[Zh]=ze[Jh]=ze[Qh]=ze[ey]=ze[ty]=ze[ny]=!0,ze[$h]=ze[Bh]=ze[zh]=ze[Vh]=ze[Hh]=ze[Rh]=ze[Dh]=ze[Mh]=ze[Lh]=ze[Fh]=ze[Uh]=ze[Kh]=ze[jh]=ze[Gh]=ze[qh]=!1;function oy(e){return zt(e)&&Ji(e.length)&&!!ze[bn(e)]}function ea(e){return function(n){return e(n)}}var Gs=typeof xe=="object"&&xe&&!xe.nodeType&&xe,Ao=Gs&&typeof module=="object"&&module&&!module.nodeType&&module,ry=Ao&&Ao.exports===Gs,ta=ry&&As.process,Kn=function(){try{var e=Ao&&Ao.require&&Ao.require("util").types;return e||ta&&ta.binding&&ta.binding("util")}catch{}}(),qs=Kn&&Kn.isTypedArray,na=qs?ea(qs):oy,iy=Object.prototype,ay=iy.hasOwnProperty;function zs(e,n){var o=At(e),r=!o&&Er(e),i=!o&&!r&&xo(e),a=!o&&!r&&!i&&na(e),l=o||r||i||a,s=l?vh(e.length,String):[],c=s.length;for(var u in e)(n||ay.call(e,u))&&!(l&&(u=="length"||i&&(u=="offset"||u=="parent")||a&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Wi(u,c)))&&s.push(u);return s}function Hs(e,n){return function(o){return e(n(o))}}var ly=Hs(Object.keys,Object),sy=Object.prototype,cy=sy.hasOwnProperty;function Ys(e){if(!Cr(e))return ly(e);var n=[];for(var o in Object(e))cy.call(e,o)&&o!="constructor"&&n.push(o);return n}function oa(e){return Qi(e)?zs(e):Ys(e)}function dy(e){var n=[];if(e!=null)for(var o in Object(e))n.push(o);return n}var uy=Object.prototype,fy=uy.hasOwnProperty;function py(e){if(!wn(e))return dy(e);var n=Cr(e),o=[];for(var r in e)r=="constructor"&&(n||!fy.call(e,r))||o.push(r);return o}function ra(e){return Qi(e)?zs(e,!0):py(e)}var my=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,gy=/^\w*$/;function hy(e,n){if(At(e))return!1;var o=typeof e;return o=="number"||o=="symbol"||o=="boolean"||e==null||zi(e)?!0:gy.test(e)||!my.test(e)||n!=null&&e in Object(n)}var Io=Cn(Object,"create");function yy(){this.__data__=Io?Io(null):{},this.size=0}function _y(e){var n=this.has(e)&&delete this.__data__[e];return this.size-=n?1:0,n}var by="__lodash_hash_undefined__",wy=Object.prototype,ky=wy.hasOwnProperty;function Cy(e){var n=this.__data__;if(Io){var o=n[e];return o===by?void 0:o}return ky.call(n,e)?n[e]:void 0}var Ey=Object.prototype,Ny=Ey.hasOwnProperty;function Sy(e){var n=this.__data__;return Io?n[e]!==void 0:Ny.call(n,e)}var vy="__lodash_hash_undefined__";function xy(e,n){var o=this.__data__;return this.size+=this.has(e)?0:1,o[e]=Io&&n===void 0?vy:n,this}function En(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}En.prototype.clear=yy,En.prototype.delete=_y,En.prototype.get=Cy,En.prototype.has=Sy,En.prototype.set=xy;function Ay(){this.__data__=[],this.size=0}function Nr(e,n){for(var o=e.length;o--;)if(Xi(e[o][0],n))return o;return-1}var Iy=Array.prototype,Py=Iy.splice;function Ty(e){var n=this.__data__,o=Nr(n,e);if(o<0)return!1;var r=n.length-1;return o==r?n.pop():Py.call(n,o,1),--this.size,!0}function Oy(e){var n=this.__data__,o=Nr(n,e);return o<0?void 0:n[o][1]}function $y(e){return Nr(this.__data__,e)>-1}function By(e,n){var o=this.__data__,r=Nr(o,e);return r<0?(++this.size,o.push([e,n])):o[r][1]=n,this}function Ht(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Ht.prototype.clear=Ay,Ht.prototype.delete=Ty,Ht.prototype.get=Oy,Ht.prototype.has=$y,Ht.prototype.set=By;var Po=Cn(Rt,"Map");function Vy(){this.size=0,this.__data__={hash:new En,map:new(Po||Ht),string:new En}}function Ry(e){var n=typeof e;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?e!=="__proto__":e===null}function Sr(e,n){var o=e.__data__;return Ry(n)?o[typeof n=="string"?"string":"hash"]:o.map}function Dy(e){var n=Sr(this,e).delete(e);return this.size-=n?1:0,n}function My(e){return Sr(this,e).get(e)}function Ly(e){return Sr(this,e).has(e)}function Fy(e,n){var o=Sr(this,e),r=o.size;return o.set(e,n),this.size+=o.size==r?0:1,this}function Yt(e){var n=-1,o=e==null?0:e.length;for(this.clear();++n<o;){var r=e[n];this.set(r[0],r[1])}}Yt.prototype.clear=Vy,Yt.prototype.delete=Dy,Yt.prototype.get=My,Yt.prototype.has=Ly,Yt.prototype.set=Fy;var Uy="Expected a function";function ia(e,n){if(typeof e!="function"||n!=null&&typeof n!="function")throw new TypeError(Uy);var o=function(){var r=arguments,i=n?n.apply(this,r):r[0],a=o.cache;if(a.has(i))return a.get(i);var l=e.apply(this,r);return o.cache=a.set(i,l)||a,l};return o.cache=new(ia.Cache||Yt),o}ia.Cache=Yt;var Ky=500;function jy(e){var n=ia(e,function(r){return o.size===Ky&&o.clear(),r}),o=n.cache;return n}var Gy=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,qy=/\\(\\)?/g,zy=jy(function(e){var n=[];return e.charCodeAt(0)===46&&n.push(""),e.replace(Gy,function(o,r,i,a){n.push(i?a.replace(qy,"$1"):r||o)}),n});function aa(e){return e==null?"":Bs(e)}function jn(e,n){return At(e)?e:hy(e,n)?[e]:zy(aa(e))}function vr(e){if(typeof e=="string"||zi(e))return e;var n=e+"";return n=="0"&&1/e==-1/0?"-0":n}function la(e,n){n=jn(n,e);for(var o=0,r=n.length;e!=null&&o<r;)e=e[vr(n[o++])];return o&&o==r?e:void 0}function Ws(e,n,o){var r=e==null?void 0:la(e,n);return r===void 0?o:r}function sa(e,n){for(var o=-1,r=n.length,i=e.length;++o<r;)e[i+o]=n[o];return e}var Xs=Ct?Ct.isConcatSpreadable:void 0;function Hy(e){return At(e)||Er(e)||!!(Xs&&e&&e[Xs])}function Yy(e,n,o,r,i){var a=-1,l=e.length;for(o||(o=Hy),i||(i=[]);++a<l;){var s=e[a];o(s)?sa(i,s):i[i.length]=s}return i}function Wy(e){var n=e==null?0:e.length;return n?Yy(e):[]}function Zs(e){return yh(Eh(e,void 0,Wy),e+"")}var ca=Hs(Object.getPrototypeOf,Object),Xy="[object Object]",Zy=Function.prototype,Jy=Object.prototype,Js=Zy.toString,Qy=Jy.hasOwnProperty,e_=Js.call(Object);function t_(e){if(!zt(e)||bn(e)!=Xy)return!1;var n=ca(e);if(n===null)return!0;var o=Qy.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&Js.call(o)==e_}function Qs(e,n,o){var r=-1,i=e.length;n<0&&(n=-n>i?0:i+n),o=o>i?i:o,o<0&&(o+=i),i=n>o?0:o-n>>>0,n>>>=0;for(var a=Array(i);++r<i;)a[r]=e[r+n];return a}function n_(e,n,o){var r=e.length;return o=o===void 0?r:o,!n&&o>=r?e:Qs(e,n,o)}var o_="\\ud800-\\udfff",r_="\\u0300-\\u036f",i_="\\ufe20-\\ufe2f",a_="\\u20d0-\\u20ff",l_=r_+i_+a_,s_="\\ufe0e\\ufe0f",c_="\\u200d",d_=RegExp("["+c_+o_+l_+s_+"]");function ec(e){return d_.test(e)}function u_(e){return e.split("")}var tc="\\ud800-\\udfff",f_="\\u0300-\\u036f",p_="\\ufe20-\\ufe2f",m_="\\u20d0-\\u20ff",g_=f_+p_+m_,h_="\\ufe0e\\ufe0f",y_="["+tc+"]",da="["+g_+"]",ua="\\ud83c[\\udffb-\\udfff]",__="(?:"+da+"|"+ua+")",nc="[^"+tc+"]",oc="(?:\\ud83c[\\udde6-\\uddff]){2}",rc="[\\ud800-\\udbff][\\udc00-\\udfff]",b_="\\u200d",ic=__+"?",ac="["+h_+"]?",w_="(?:"+b_+"(?:"+[nc,oc,rc].join("|")+")"+ac+ic+")*",k_=ac+ic+w_,C_="(?:"+[nc+da+"?",da,oc,rc,y_].join("|")+")",E_=RegExp(ua+"(?="+ua+")|"+C_+k_,"g");function N_(e){return e.match(E_)||[]}function S_(e){return ec(e)?N_(e):u_(e)}function v_(e){return function(n){n=aa(n);var o=ec(n)?S_(n):void 0,r=o?o[0]:n.charAt(0),i=o?n_(o,1).join(""):n.slice(1);return r[e]()+i}}var x_=v_("toUpperCase");function A_(){this.__data__=new Ht,this.size=0}function I_(e){var n=this.__data__,o=n.delete(e);return this.size=n.size,o}function P_(e){return this.__data__.get(e)}function T_(e){return this.__data__.has(e)}var O_=200;function $_(e,n){var o=this.__data__;if(o instanceof Ht){var r=o.__data__;if(!Po||r.length<O_-1)return r.push([e,n]),this.size=++o.size,this;o=this.__data__=new Yt(r)}return o.set(e,n),this.size=o.size,this}function Wt(e){var n=this.__data__=new Ht(e);this.size=n.size}Wt.prototype.clear=A_,Wt.prototype.delete=I_,Wt.prototype.get=P_,Wt.prototype.has=T_,Wt.prototype.set=$_;function B_(e,n){return e&&vo(n,oa(n),e)}function V_(e,n){return e&&vo(n,ra(n),e)}var lc=typeof xe=="object"&&xe&&!xe.nodeType&&xe,sc=lc&&typeof module=="object"&&module&&!module.nodeType&&module,R_=sc&&sc.exports===lc,cc=R_?Rt.Buffer:void 0,dc=cc?cc.allocUnsafe:void 0;function D_(e,n){if(n)return e.slice();var o=e.length,r=dc?dc(o):new e.constructor(o);return e.copy(r),r}function M_(e,n){for(var o=-1,r=e==null?0:e.length,i=0,a=[];++o<r;){var l=e[o];n(l,o,e)&&(a[i++]=l)}return a}function uc(){return[]}var L_=Object.prototype,F_=L_.propertyIsEnumerable,fc=Object.getOwnPropertySymbols,fa=fc?function(e){return e==null?[]:(e=Object(e),M_(fc(e),function(n){return F_.call(e,n)}))}:uc;function U_(e,n){return vo(e,fa(e),n)}var K_=Object.getOwnPropertySymbols,pc=K_?function(e){for(var n=[];e;)sa(n,fa(e)),e=ca(e);return n}:uc;function j_(e,n){return vo(e,pc(e),n)}function mc(e,n,o){var r=n(e);return At(e)?r:sa(r,o(e))}function pa(e){return mc(e,oa,fa)}function gc(e){return mc(e,ra,pc)}var ma=Cn(Rt,"DataView"),ga=Cn(Rt,"Promise"),ha=Cn(Rt,"Set"),hc="[object Map]",G_="[object Object]",yc="[object Promise]",_c="[object Set]",bc="[object WeakMap]",wc="[object DataView]",q_=kn(ma),z_=kn(Po),H_=kn(ga),Y_=kn(ha),W_=kn(Yi),Et=bn;(ma&&Et(new ma(new ArrayBuffer(1)))!=wc||Po&&Et(new Po)!=hc||ga&&Et(ga.resolve())!=yc||ha&&Et(new ha)!=_c||Yi&&Et(new Yi)!=bc)&&(Et=function(e){var n=bn(e),o=n==G_?e.constructor:void 0,r=o?kn(o):"";if(r)switch(r){case q_:return wc;case z_:return hc;case H_:return yc;case Y_:return _c;case W_:return bc}return n});var X_=Object.prototype,Z_=X_.hasOwnProperty;function J_(e){var n=e.length,o=new e.constructor(n);return n&&typeof e[0]=="string"&&Z_.call(e,"index")&&(o.index=e.index,o.input=e.input),o}var xr=Rt.Uint8Array;function ya(e){var n=new e.constructor(e.byteLength);return new xr(n).set(new xr(e)),n}function Q_(e,n){var o=n?ya(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.byteLength)}var eb=/\w*$/;function tb(e){var n=new e.constructor(e.source,eb.exec(e));return n.lastIndex=e.lastIndex,n}var kc=Ct?Ct.prototype:void 0,Cc=kc?kc.valueOf:void 0;function nb(e){return Cc?Object(Cc.call(e)):{}}function ob(e,n){var o=n?ya(e.buffer):e.buffer;return new e.constructor(o,e.byteOffset,e.length)}var rb="[object Boolean]",ib="[object Date]",ab="[object Map]",lb="[object Number]",sb="[object RegExp]",cb="[object Set]",db="[object String]",ub="[object Symbol]",fb="[object ArrayBuffer]",pb="[object DataView]",mb="[object Float32Array]",gb="[object Float64Array]",hb="[object Int8Array]",yb="[object Int16Array]",_b="[object Int32Array]",bb="[object Uint8Array]",wb="[object Uint8ClampedArray]",kb="[object Uint16Array]",Cb="[object Uint32Array]";function Eb(e,n,o){var r=e.constructor;switch(n){case fb:return ya(e);case rb:case ib:return new r(+e);case pb:return Q_(e,o);case mb:case gb:case hb:case yb:case _b:case bb:case wb:case kb:case Cb:return ob(e,o);case ab:return new r;case lb:case db:return new r(e);case sb:return tb(e);case cb:return new r;case ub:return nb(e)}}function Nb(e){return typeof e.constructor=="function"&&!Cr(e)?sh(ca(e)):{}}var Sb="[object Map]";function vb(e){return zt(e)&&Et(e)==Sb}var Ec=Kn&&Kn.isMap,xb=Ec?ea(Ec):vb,Ab="[object Set]";function Ib(e){return zt(e)&&Et(e)==Ab}var Nc=Kn&&Kn.isSet,Pb=Nc?ea(Nc):Ib,Tb=1,Ob=2,$b=4,Sc="[object Arguments]",Bb="[object Array]",Vb="[object Boolean]",Rb="[object Date]",Db="[object Error]",vc="[object Function]",Mb="[object GeneratorFunction]",Lb="[object Map]",Fb="[object Number]",xc="[object Object]",Ub="[object RegExp]",Kb="[object Set]",jb="[object String]",Gb="[object Symbol]",qb="[object WeakMap]",zb="[object ArrayBuffer]",Hb="[object DataView]",Yb="[object Float32Array]",Wb="[object Float64Array]",Xb="[object Int8Array]",Zb="[object Int16Array]",Jb="[object Int32Array]",Qb="[object Uint8Array]",e0="[object Uint8ClampedArray]",t0="[object Uint16Array]",n0="[object Uint32Array]",qe={};qe[Sc]=qe[Bb]=qe[zb]=qe[Hb]=qe[Vb]=qe[Rb]=qe[Yb]=qe[Wb]=qe[Xb]=qe[Zb]=qe[Jb]=qe[Lb]=qe[Fb]=qe[xc]=qe[Ub]=qe[Kb]=qe[jb]=qe[Gb]=qe[Qb]=qe[e0]=qe[t0]=qe[n0]=!0,qe[Db]=qe[vc]=qe[qb]=!1;function To(e,n,o,r,i,a){var l,s=n&Tb,c=n&Ob,u=n&$b;if(o&&(l=i?o(e,r,i,a):o(e)),l!==void 0)return l;if(!wn(e))return e;var f=At(e);if(f){if(l=J_(e),!s)return dh(e,l)}else{var d=Et(e),p=d==vc||d==Mb;if(xo(e))return D_(e,s);if(d==xc||d==Sc||p&&!i){if(l=c||p?{}:Nb(e),!s)return c?j_(e,V_(l,e)):U_(e,B_(l,e))}else{if(!qe[d])return i?e:{};l=Eb(e,d,s)}}a||(a=new Wt);var m=a.get(e);if(m)return m;a.set(e,l),Pb(e)?e.forEach(function(g){l.add(To(g,n,o,g,e,a))}):xb(e)&&e.forEach(function(g,h){l.set(h,To(g,n,o,h,e,a))});var y=u?c?gc:pa:c?ra:oa,b=f?void 0:y(e);return _h(b||e,function(g,h){b&&(h=g,g=e[h]),Zi(l,h,To(g,n,o,h,e,a))}),l}var o0=1,r0=4;function Gn(e){return To(e,o0|r0)}var i0="__lodash_hash_undefined__";function a0(e){return this.__data__.set(e,i0),this}function l0(e){return this.__data__.has(e)}function Ar(e){var n=-1,o=e==null?0:e.length;for(this.__data__=new Yt;++n<o;)this.add(e[n])}Ar.prototype.add=Ar.prototype.push=a0,Ar.prototype.has=l0;function s0(e,n){for(var o=-1,r=e==null?0:e.length;++o<r;)if(n(e[o],o,e))return!0;return!1}function c0(e,n){return e.has(n)}var d0=1,u0=2;function Ac(e,n,o,r,i,a){var l=o&d0,s=e.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var u=a.get(e),f=a.get(n);if(u&&f)return u==n&&f==e;var d=-1,p=!0,m=o&u0?new Ar:void 0;for(a.set(e,n),a.set(n,e);++d<s;){var y=e[d],b=n[d];if(r)var g=l?r(b,y,d,n,e,a):r(y,b,d,e,n,a);if(g!==void 0){if(g)continue;p=!1;break}if(m){if(!s0(n,function(h,w){if(!c0(m,w)&&(y===h||i(y,h,o,r,a)))return m.push(w)})){p=!1;break}}else if(!(y===b||i(y,b,o,r,a))){p=!1;break}}return a.delete(e),a.delete(n),p}function f0(e){var n=-1,o=Array(e.size);return e.forEach(function(r,i){o[++n]=[i,r]}),o}function p0(e){var n=-1,o=Array(e.size);return e.forEach(function(r){o[++n]=r}),o}var m0=1,g0=2,h0="[object Boolean]",y0="[object Date]",_0="[object Error]",b0="[object Map]",w0="[object Number]",k0="[object RegExp]",C0="[object Set]",E0="[object String]",N0="[object Symbol]",S0="[object ArrayBuffer]",v0="[object DataView]",Ic=Ct?Ct.prototype:void 0,_a=Ic?Ic.valueOf:void 0;function x0(e,n,o,r,i,a,l){switch(o){case v0:if(e.byteLength!=n.byteLength||e.byteOffset!=n.byteOffset)return!1;e=e.buffer,n=n.buffer;case S0:return!(e.byteLength!=n.byteLength||!a(new xr(e),new xr(n)));case h0:case y0:case w0:return Xi(+e,+n);case _0:return e.name==n.name&&e.message==n.message;case k0:case E0:return e==n+"";case b0:var s=f0;case C0:var c=r&m0;if(s||(s=p0),e.size!=n.size&&!c)return!1;var u=l.get(e);if(u)return u==n;r|=g0,l.set(e,n);var f=Ac(s(e),s(n),r,i,a,l);return l.delete(e),f;case N0:if(_a)return _a.call(e)==_a.call(n)}return!1}var A0=1,I0=Object.prototype,P0=I0.hasOwnProperty;function T0(e,n,o,r,i,a){var l=o&A0,s=pa(e),c=s.length,u=pa(n),f=u.length;if(c!=f&&!l)return!1;for(var d=c;d--;){var p=s[d];if(!(l?p in n:P0.call(n,p)))return!1}var m=a.get(e),y=a.get(n);if(m&&y)return m==n&&y==e;var b=!0;a.set(e,n),a.set(n,e);for(var g=l;++d<c;){p=s[d];var h=e[p],w=n[p];if(r)var _=l?r(w,h,p,n,e,a):r(h,w,p,e,n,a);if(!(_===void 0?h===w||i(h,w,o,r,a):_)){b=!1;break}g||(g=p=="constructor")}if(b&&!g){var k=e.constructor,E=n.constructor;k!=E&&"constructor"in e&&"constructor"in n&&!(typeof k=="function"&&k instanceof k&&typeof E=="function"&&E instanceof E)&&(b=!1)}return a.delete(e),a.delete(n),b}var O0=1,Pc="[object Arguments]",Tc="[object Array]",Ir="[object Object]",$0=Object.prototype,Oc=$0.hasOwnProperty;function B0(e,n,o,r,i,a){var l=At(e),s=At(n),c=l?Tc:Et(e),u=s?Tc:Et(n);c=c==Pc?Ir:c,u=u==Pc?Ir:u;var f=c==Ir,d=u==Ir,p=c==u;if(p&&xo(e)){if(!xo(n))return!1;l=!0,f=!1}if(p&&!f)return a||(a=new Wt),l||na(e)?Ac(e,n,o,r,i,a):x0(e,n,c,o,r,i,a);if(!(o&O0)){var m=f&&Oc.call(e,"__wrapped__"),y=d&&Oc.call(n,"__wrapped__");if(m||y){var b=m?e.value():e,g=y?n.value():n;return a||(a=new Wt),i(b,g,o,r,a)}}return p?(a||(a=new Wt),T0(e,n,o,r,i,a)):!1}function $c(e,n,o,r,i){return e===n?!0:e==null||n==null||!zt(e)&&!zt(n)?e!==e&&n!==n:B0(e,n,o,r,$c,i)}function V0(e,n){return e!=null&&n in Object(e)}function R0(e,n,o){n=jn(n,e);for(var r=-1,i=n.length,a=!1;++r<i;){var l=vr(n[r]);if(!(a=e!=null&&o(e,l)))break;e=e[l]}return a||++r!=i?a:(i=e==null?0:e.length,!!i&&Ji(i)&&Wi(l,i)&&(At(e)||Er(e)))}function D0(e,n){return e!=null&&R0(e,n,V0)}function M0(e){var n=e==null?0:e.length;return n?e[n-1]:void 0}function L0(e,n){return n.length<2?e:la(e,Qs(n,0,-1))}var F0="[object Map]",U0="[object Set]",K0=Object.prototype,j0=K0.hasOwnProperty;function Bc(e){if(e==null)return!0;if(Qi(e)&&(At(e)||typeof e=="string"||typeof e.splice=="function"||xo(e)||na(e)||Er(e)))return!e.length;var n=Et(e);if(n==F0||n==U0)return!e.size;if(Cr(e))return!Ys(e).length;for(var o in e)if(j0.call(e,o))return!1;return!0}function Oo(e,n){return $c(e,n)}function Vc(e,n){return n=jn(n,e),e=L0(e,n),e==null||delete e[vr(M0(n))]}function G0(e){return t_(e)?void 0:e}var q0=1,z0=2,H0=4,$o=Zs(function(e,n){var o={};if(e==null)return o;var r=!1;n=Ts(n,function(a){return a=jn(a,e),r||(r=a.length>1),a}),vo(e,gc(e),o),r&&(o=To(o,q0|z0|H0,G0));for(var i=n.length;i--;)Vc(o,n[i]);return o});function Rc(e,n,o,r){if(!wn(e))return e;n=jn(n,e);for(var i=-1,a=n.length,l=a-1,s=e;s!=null&&++i<a;){var c=vr(n[i]),u=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return e;if(i!=l){var f=s[c];u=void 0,u===void 0&&(u=wn(f)?f:Wi(n[i+1])?[]:{})}Zi(s,c,u),s=s[c]}return e}function Y0(e,n,o){for(var r=-1,i=n.length,a={};++r<i;){var l=n[r],s=la(e,l);o(s,l)&&Rc(a,jn(l,e),s)}return a}function W0(e,n){return Y0(e,n,function(o,r){return D0(e,r)})}var ba=Zs(function(e,n){return e==null?{}:W0(e,n)});function X0(e,n,o){return e==null?e:Rc(e,n,o)}var Z0=0;function Pr(e){var n=++Z0;return aa(e)+n}function Dc(e,n){return e==null?!0:Vc(e,n)}const J0=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],Nn=e=>{var n,o,r,i,a,l;((o=(n=e.confluent)==null?void 0:n.authentication)==null?void 0:o.mode)==="none"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client,delete e.confluent.authentication.basic),((i=(r=e.confluent)==null?void 0:r.authentication)==null?void 0:i.mode)==="basic"&&(delete e.confluent.authentication.oauth2,delete e.confluent.authentication.oauth2_client),((l=(a=e.confluent)==null?void 0:a.authentication)==null?void 0:l.mode)==="oauth2"&&delete e.confluent.authentication.basic,J0.some(s=>Oo(e.confluent,s))&&(e.confluent=null)},Q0={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Nn((n=e.config)==null?void 0:n.schema_registry)}},ew={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n;Nn((n=e.config)==null?void 0:n.schema_registry)}},tw={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Nn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Nn(i==null?void 0:i.schema_registry)})}},nw={"config-message_by_lua_functions":{...Ve,inputAttributes:{...Ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:e})=>{var n,o,r;Nn((n=e.config)==null?void 0:n.schema_registry),(r=(o=e.config)==null?void 0:o.topics)==null||r.forEach(i=>{Nn(i==null?void 0:i.schema_registry)})}},ow={shamefullyTransformPayload:({payload:e})=>{var n;Nn((n=e.config)==null?void 0:n.schema_registry)}},rw={"config-static_tags":{..._r,items:{type:"object",default:()=>({}),schema:{fields:[{model:"name",label:"name",type:"input",inputType:"string",id:"schema_name"},{model:"value",label:"value",type:"input",inputType:"string",id:"schema_value"}]}}}},iw={"request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm"};function wa(e,n){const o=iw[e];if(typeof o=="string")return o;if(n.includes(e))return o.component}const ka=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),Bo={DATAKIT_ENABLE_FLOW_EDITOR:Symbol("DATAKIT_ENABLE_FLOW_EDITOR"),DATAKIT_M2:Symbol("DATAKIT_M2")},Mc=Symbol("TOASTER_PROVIDER");function Lc(){return t.inject(ka,[])}function aw(e){t.provide(ka,e)}const lw=(e,n)=>{const o=e.model.startsWith("config-"),r=n.model.startsWith("config-");return o&&!r?1:!o&&r?-1:0},Fc=(e,n)=>(e.order??0)-(n.order??0),Uc=(e,n)=>lw(e,n)||Fc(e,n)||e.model.localeCompare(n.model),Ke={useI18n:De,usePluginMetaData:ug,usePluginHelpers:ys,useSchemas:e=>{const{capitalize:n}=ge.useStringHelpers(),{convertToDotNotation:o}=ys(),{i18n:{t:r}}=De(),i=Lc(),a={"application-registration":{overwriteDefault:!0,formSchema:{...hg}},datadog:{...yg},"exit-transformer":{..._g},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...Tg},"statsd-advanced":{...Og},"route-by-header":{...xg},"ai-prompt-decorator":{...fg},"ai-prompt-template":{...pg},"ai-proxy-advanced":{...mg},"ai-llm-as-judge":{...gg},"vault-auth":{...Bg},"oas-validation":{...Cg},mocking:{...kg},"rate-limiting":{...br},"rate-limiting-advanced":(e==null?void 0:e.app)==="kongManager"?{"config-consumer_groups":br["config-consumer_groups"]}:{...br},"graphql-rate-limiting-advanced":{...bg},"injection-protection":{...wg},"response-ratelimiting":{...br},"pre-function":{...vs},"post-function":{...vs},"request-transformer-advanced":{...Sg},"response-transformer":{...xs},"response-transformer-advanced":{...vg},zipkin:{...rw},"upstream-oauth":{...$g},saml:{...Ag},"kafka-upstream":{...Q0},"solace-consume":{...Ig},"solace-upstream":{...Pg},"key-auth":ng(e),"key-auth-enc":sg(e),confluent:{...ew},"confluent-consume":{...tw},"kafka-consume":{...nw},"kafka-log":{...ow}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(C,N,I,D)=>{let G={};(N||C)&&(G=N||(C.fields?C.fields:C));const K=l().concat(C.blacklist?C.blacklist:[]),S=Object.keys(G).filter(v=>!K.includes(v)),ne=S.indexOf("comparator");ne>-1&&S.splice(ne,1);let x={fields:[]};const q={};S.forEach(v=>{u(G[v],v,G,q,x,I)});const U=q.name,te=Vt[U],V=[],T=v=>{const P=["cluster-cache"];for(const A of P)if(v.model.includes(A))return!1;return new RegExp("(?<=-redis-).*").test(v.model)};if(x._supported_redis_partial_type=C._supported_redis_partial_type,x._redis_partial_path=C._redis_partial_path,Me.getSharedFormName(U)||wa(U,i)||te!=null&&te.useLegacyForm||e!=null&&e.credential||D==="freeform"){if(te!=null&&te.useLegacyForm&&(e!=null&&e.enableRedisPartial)&&C._supported_redis_partial_type){for(const v of x.fields)if(T(v)){V.push(v);continue}x.fields=x.fields.filter(v=>!T(v)),V.length&&x.fields.push({id:"_redis",fields:V,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path})}x.fields.sort((v,P)=>(v.order=v.order||0,P.order=P.order||0,v.order-P.order))}else{const v=[],P=[],A=[],Y=[],W={};if(te!=null&&te.fieldRules){const de=[...te.fieldRules.atLeastOneOf??[],...te.fieldRules.onlyOneOf??[],...te.fieldRules.mutuallyRequired??[]];if(te.fieldRules.onlyOneOfMutuallyRequired)for(const he of te.fieldRules.onlyOneOfMutuallyRequired)de.push(...he);for(const he of de)for(const X of he)W[X.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const de of x.fields){if(e!=null&&e.enableRedisPartial&&C._supported_redis_partial_type&&T(de)){Y.push(de);continue}if(de.pinned){v.push(de);continue}if(de.required||W[de.model]!==void 0){W[de.model]===!1&&(W[de.model]=!0),P.push(de);continue}A.push(de)}Y.length&&A.push({id:"_redis",fields:Y,model:"__redis_partial",pluginType:C._isCustomPlugin?"custom":"bundled",redisType:C._supported_redis_partial_type,redisPath:C._redis_partial_path,order:-1});const ie=Object.entries(W).filter(([,de])=>!de).map(([de])=>de.replace(/-/g,".").replace(/_/g,"-"));ie.length>0&&console.warn(`Unknown checked fields for plugin ${U}: ${ie.join(", ")}`);const oe=[];v.length>0&&oe.push({fields:v.sort(Fc)}),(P.length>0||A.length>0)&&oe.push({fields:P.sort(Uc),collapsible:{title:r("plugins.form.grouping.plugin_configuration.title"),description:r("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:A.sort(Uc),triggerLabel:{expand:r("plugins.form.grouping.advanced_parameters.view"),collapse:r("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),x={groups:oe}}return{schema:x,model:q,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=C=>Array.isArray(C.default)||C.default!=null&&typeof C.default!="object"&&C.default!=="function",u=(C,N,I,D,G,K)=>{const S=c(C);return D[N]=S?C.default:null,C.id=N,C.model=N,C.fields&&C.type==="record"?d(C,N,I,D,G,K):(I[N]=C,k(C,D),K&&K[N]&&f(I[N],K[N]),G.fields.push(C)),I},f=(C,N)=>(N&&(Object.assign(C,N),N.label&&(C.label=N.label)),C),d=(C,N,I,D,G,K)=>{C.fields.forEach(S=>{Object.keys(S).forEach(ne=>{const x=S[ne];I=u(x,N+"-"+ne,I,D,G,K)})})},p=(C,N)=>{C.type="input",C.inputType="hidden",C.styleClasses="kong-form-hidden-field-wrapper";const I=e==null?void 0:e.entityId;N[C.model]=I?{id:I}:null},m=C=>{C.type="input",C.inputType="number",C.between&&C.between.length===2&&(C.min=C.between[0],C.max=C.between[1])},y=C=>{Object.prototype.hasOwnProperty.call(C,"one_of")?(C.type="select",C.values=C.one_of,C.selectOptions={hideNoneSelectedText:!0}):(C.type="input",C.inputType="text")},b=C=>{C.type="checkbox",C.default=!0,C.required=!1},g=C=>{if(C.type="object-advanced",C.values.type==="array"){const{type:N}=C.values.elements||{};C.schema={fields:[{schema:{fields:[{...Ve,model:C.model,valueArrayType:N==="integer"?"number":N||"string",inputAttributes:{...Ve.inputAttributes,type:N==="integer"?"number":"text",inputMode:N==="integer"?"numeric":"text"}}]}}]}}else C.values.fields&&(C.schema={fields:[{type:"object",model:"object",schema:{fields:C.values.fields.map(N=>{const I=Object.keys(N)[0];return{model:I,type:"input",label:n(I),placeholder:I,inputType:N[I].type}})}}]})},h=C=>C.fields.reduce((N,I)=>(I.fields&&I.fields.forEach(D=>{N[D.model]=D}),I.model&&(N[I.model]=I),N),{}),w=(C,N)=>{if(!Me.customFields.includes(C.model))return;const I=h(C);Me.customFields.forEach(D=>{Object.keys(I).forEach(G=>{const K=c(I[G]);N[G]=K?I[G].default:null}),delete N[D]})},_=(C,N)=>C.inputType==="hidden"?"":o(n(C.label||N.replace(/_/g," "))),k=(C,N)=>{switch(w(C,N),C.type){case"foreign":p(C,N);break;case"number":m(C),C.attributes={step:"any"};break;case"integer":m(C);break;case"string":y(C);break;case"boolean":b(C);break;case"map":g(C);break}C.inputType==="foreign"&&p(C,N),C.label=_(C,C.model)};function E(C,N){if(N==null||N.type&&N.type!=="record"||typeof C!="object"||C==null)return C;const I={};for(const D of N.fields){const G=Object.keys(D)[0],K=D[G];K.type==="record"?I[G]=E(C[G],K):K.type==="array"&&Array.isArray(C[G])&&K.elements.type==="record"?I[G]=C[G].map(S=>E(S,K.elements)):I[G]=C[G]}return I}return{buildFormSchema:u,parseSchema:s,customSchemas:a,typedefs:Fn,pruneRecord:E}},useExperimentalFreeForms:Lc,useProvideExperimentalFreeForms:aw},lt="/v2/control-planes/{controlPlaneId}/core-entities",ut="/{workspace}",We={list:{konnect:{all:`${lt}/plugins`,forEntity:`${lt}/{entityType}/{entityId}/plugins`},kongManager:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${lt}/v1/available-plugins`,streamingCustomPlugins:`${lt}/custom-plugins`,schemaCustomPluginItem:`${lt}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${lt}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${ut}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${lt}/plugins`,forEntity:`${lt}/{entityType}/{entityId}/plugins`},edit:{all:`${lt}/plugins/{id}`,forEntity:`${lt}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${lt}/{resourceEndpoint}`,edit:`${lt}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",validate:`${lt}/v1/schemas/json/plugin/validate`,entityGetOne:`${lt}/{entity}/{id}`,entityGetAll:`${lt}/{entity}`,entityPeek:`${lt}/{entity}?size={amount}`},kongManager:{create:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},edit:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${ut}/schemas/plugins/{plugin}`,credential:{create:`${ut}/{resourceEndpoint}`,edit:`${ut}/{resourceEndpoint}/{id}`},credentialSchema:`${ut}/schemas/{plugin}`,validate:`${ut}/schemas/plugins/validate`,entityGetOne:`${ut}/{entity}/{id}`,entityGetAll:`${ut}/{entity}`}},item:{konnect:{all:`${lt}/plugins/{id}`,forEntity:`${lt}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`}}},sw={key:0},cw=ve(t.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(e){const n=e,{formatPluginFieldLabel:o}=Ke.usePluginHelpers(),{i18n:{t:r}}=Ke.useI18n(),i=s=>s.map(c=>c.replace(/^[cC]onfig\./,"").split(".").map(u=>o(u)).join(".")).join(", "),a=(s,c)=>r(s,{parameters:i(c)}),l=t.computed(()=>{const s=[];if(n.rules.atLeastOneOf)for(const c of n.rules.atLeastOneOf)s.push(a("plugins.form.field_rules.at_least_one_of",c));if(n.rules.onlyOneOf)for(const c of n.rules.onlyOneOf)s.push(a("plugins.form.field_rules.only_one_of",c));if(n.rules.mutuallyRequired)for(const c of n.rules.mutuallyRequired)s.push(a("plugins.form.field_rules.mutually_required",c));return s});return(s,c)=>{const u=t.resolveComponent("KAlert");return t.openBlock(),t.createBlock(u,{class:"plugin-field-rule-alerts"},{default:t.withCtx(()=>[t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(l.value,(f,d)=>(t.openBlock(),t.createElementBlock("li",{key:`simple-alert-${d}`},t.toDisplayString(f),1))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(t.openBlock(),t.createElementBlock("li",sw,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(n.rules.onlyOneOfMutuallyRequired,(f,d)=>(t.openBlock(),t.createElementBlock("div",{key:`only-one-mutually-alert-${d}`},[t.createElementVNode("div",null,t.toDisplayString(t.unref(r)("plugins.form.field_rules.only_one_of_mutually_required")),1),t.createElementVNode("ul",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f,(p,m)=>(t.openBlock(),t.createElementBlock("li",{key:`only-one-mutually-alert-${d}-combination-${m}`},t.toDisplayString(i(p)),1))),128))])]))),128))])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-d8eb79cf"]]),{t:qn}=Ze.createI18n("en-us",rt);function Ca(e){return e.map(n=>({value:n,label:`${n}`}))}const Ea="*",Kc="$",jc=".";function It(...e){return e.join(jc)}function Na(...e){return It(Kc,...e)}function Gc(e){return e.startsWith(It(Kc,""))}function zn(e){return e.split(jc).filter(n=>n!=="")}function Vo(e){const n=zn(e);return n[n.length-1]}const dw=e=>{var n,o;return e.type==="redis-ce"?qn("redis.shared_configuration.type_label.host_port"):(n=e.config.sentinel_nodes)!=null&&n.length?qn("redis.shared_configuration.type_label.sentinel"):(o=e.config.cluster_nodes)!=null&&o.length?qn("redis.shared_configuration.type_label.cluster"):qn("redis.shared_configuration.type_label.host_port")},uw={"redis-ce":qn("redis.shared_configuration.open_source"),"redis-ee":qn("redis.shared_configuration.enterprise")},fw=e=>uw[e]??"";function pw(e,n){const o=new RegExp("(?<=config-redis-).*"),r=/Config\.Redis.*/;return n.filter(a=>{const l=a.model.match(o);return l&&!Object.keys(e).includes(l[0])}).map(a=>{const l=a.label.match(r);return{label:l?l[0]:a.label,key:a.model,value:"N/A",type:"text"}})}function mw(e){const n=t.toValue(e);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}const qc=Symbol("free-form-data"),zc=Symbol("free-form-schema"),Hc=Symbol("free-form-field-path"),Sa=Symbol("free-form-field-renderer-slots"),Tr=Symbol("free-form-field-renderer-matchers-map"),Yc=Symbol("free-form-config"),Wc=Symbol("free-form-field-reset-label-path-setting"),Hn="free-form-field-renderers-slot",gw={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function hw(e,n=""){const o={},r=e;return Array.isArray(r.fields)?Object.assign(o,va(r,n)):e.type==="array"&&e.elements&&Object.assign(o,xa(e,n)),o}function va(e,n=""){const o={};if(Array.isArray(e.fields))for(const r of e.fields){const i=Object.keys(r)[0],a=r[i],l=n?It(n,i):i;if(o[l]=a,a.type==="record"&&Array.isArray(a.fields)){const s=va(a,l);Object.assign(o,s)}else if(a.type==="array"&&a.elements){const s=xa(a,l);Object.assign(o,s)}}return o}function xa(e,n=""){const o={};if(e.elements){const r=e.elements,i=It(n,Ea);if(o[i]=r,r.type==="record"&&Array.isArray(r.fields)){const a=va(r,i);Object.assign(o,a)}else if(r.type==="array"&&r.elements){const a=xa(r,i);Object.assign(o,a)}}return o}function Aa(e){const n=zn(e).map(o=>/^\d+$/.test(o)?Ea:o);return It(...n)}function yw(e){const n=t.toValue(e),o=t.computed(()=>n?hw(n):{});function r(f){var d;return f==null?n:(d=o.value)==null?void 0:d[Aa(f)]}function i(f,d=!1){const p=r(f);return p?p.default!==void 0?p.default:d||p.required?p.type==="record"?a(p,f):p.type==="array"?[]:null:null:null}function a(f,d){const p={};if(Array.isArray(f.fields))for(const m of f.fields){const y=Object.keys(m)[0],b=d?`${d}.${y}`:y,g=i(b,!1);g!==void 0&&(p[y]=g)}return p}function l(f){return f?i(f,!0):a(r(),"")}function s(f){const d=r(f),p=d!=null&&d.description?gr.marked.parse(d.description,{async:!1}):void 0;return{...gw,"data-testid":`ff-label-${f}`,info:p}}function c(f){var p;const d=r(f);return Ca((d==null?void 0:d.one_of)||((p=d.elements)==null?void 0:p.one_of)||[])}function u(f){const d=r(f),p=d==null?void 0:d.default;let m=null;if((d==null?void 0:d.type)==="foreign"&&(p!=null&&p.id))m=p.id;else{if(p==null||typeof p=="object"||p==="")return null;if(Array.isArray(p)){if(p.length===0)return null;m=p.join(", ")}else m=p.toString()}return`Default: ${m}`}return{getSchema:r,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:u}}function Ye(){const e=t.inject(qc),n=t.inject(zc),o=t.inject(Yc,{});if(!e)throw new Error("useFormShared() called without form data provider.");if(!n)throw new Error("useFormShared() called without schema provider.");return{formData:e,formConfig:o,...n}}const Xc=e=>{const n=t.inject(Hc,t.computed(()=>"")),o=t.computed(()=>{const r=t.toValue(e);let i=r;return!Gc(r)&&n.value&&(i=It(n.value,r)),Gc(r)&&(i=i.slice(Na("").length)),i});return t.provide(Hc,o),o},_w=e=>{const{getSchema:n}=Ye(),{default:o,...r}=t.useSlots(),i=t.inject(Sa),a=t.inject(Tr),l=t.computed(()=>{const c=t.toValue(i),u=Object.keys(r).filter(f=>f!==Hn&&f!=="item").reduce((f,d)=>{const p=Aa(It(t.toValue(e),d));return{...f,[p]:r[d]}},{});return c?{...c,...u}:u});t.provide(Sa,l);const s=t.toValue(e);return t.computed(()=>{if(o)return;const c=l.value[Aa(t.toValue(e))];if(c)return c;for(const[u,f]of a)if(u({path:s,schema:n(s)}))return f})},bw={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP"};function ww(e){return bw[e.toLocaleLowerCase()]??e}function kw(e,n){const o=t.inject(Wc,{parentPath:null,isolate:!1}),{parentPath:r,isolate:i}=t.toValue(o),a=t.ref(r?It(r,e):e),l=t.ref({parentPath:a.value,isolate:i});return t.watch([t.toRef(n),t.toRef(o)],([s,c])=>{var p;const{parentPath:u,isolate:f}=c,d=u?It(u,e):e;if(s){const m={isolate:()=>{a.value=e,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{a.value=e,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{a.value=d,l.value.isolate=!1,l.value.parentPath=d}};(p=m[s])==null||p.call(m)}else f&&(a.value=e,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),t.provide(Wc,l),a}function Cw(e){return zn(e).map(o=>o.split("_").map(ww).join(" ")).map(x_).join(" › ")}function Ew(e,n){const o=t.toValue(e),r=Vo(o),{formConfig:i}=Ye(),a=kw(r,n),{getSchema:l}=Ye(),s=Zc(e);return t.computed(()=>{var p;const c=a.value??r,u=(p=s.value.parent)!=null&&p.path?l(s.value.parent.path):null,d=(u==null?void 0:u.type)==="array"?"":Cw(c);return i.transformLabel?i.transformLabel(d,o):d})}function Pt(e,n){const{getLabelAttributes:o,getPlaceholder:r,getSchema:i}=Ye(),a=t.toValue(e),l=t.toValue(n),s=Ew(e,t.toRef(()=>t.toValue(n).resetLabelPath));return t.computed(()=>{var c;return{...l,placeholder:l.placeholder??r(a)??void 0,labelAttributes:l.labelAttributes??o(a),label:l.label??s.value,required:l.required??((c=i(a))==null?void 0:c.required)}})}function Nw(e){var r;const n=zn(e);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(r=o.parent)!=null&&r.path?It(o.parent.path,i):i,o={parent:o}}return o}function Zc(e){return t.computed(()=>Nw(t.toValue(e)))}function Jc(e){const{formData:n}=Ye(),o=Xc(e);return{value:t.computed({get:()=>Ws(n,zn(o.value)),set:i=>X0(n,zn(o.value),i)})}}function wt(e){const{getSchema:n}=Ye(),o=Xc(e),r=_w(o),{value:i}=Jc(e),a=t.computed(()=>n(o.value));return a.value?{schema:a,path:o,renderer:r,value:i,ancestors:Zc(o),error:null}:{error:new Error(`path '${o.value}' is not found in schema.`)}}function Ro(e){const{getSchema:n}=Ye(),o=t.useAttrs();return t.computed(()=>{var i;if(o["data-autofocus"]!==void 0)return!0;if(!e)return!1;const r=t.toValue(e).parent;return r!=null&&r.path?((i=n(r.path))==null?void 0:i.type)==="array":!1})}function Qc(e,n){const o=new WeakMap,r=new Map;function i(){return Pr(`${e}-`)}function a(l,s){if(l==null||typeof l!="object")return`${e}-${s}`;if(o.has(l))return o.get(l);const c=r.has(s)?r.get(s):i();return r.set(s,c),o.set(l,c),c}return t.watch(n,l=>{const s=t.toValue(l),c=new Set;s.forEach((u,f)=>{c.add(f)}),Array.from(r.keys()).forEach(u=>{c.has(u)||r.delete(u)})},{immediate:!0,deep:!0}),{getKey:a}}const Sw="__request_callout_";function ed(){return Pr(Sw)}const Sn=t.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=e,r=t.useAttrs(),i=n,a=t.computed(()=>o.multiline?Oe.KTextArea:Oe.KInput),l=t.computed(()=>r.characterLimit??(o.multiline?!1:void 0)),s=t.ref(o.modelValue);t.watch(()=>o.modelValue,d=>{s.value=d});const{formConfig:c}=Ye(),u=d=>{d!==s.value&&(s.value=d,c.updateOnChange||i("update:modelValue",d))},f=()=>{c.updateOnChange&&i("update:modelValue",s.value)};return(d,p)=>(t.openBlock(),t.createBlock(t.unref(a),t.mergeProps(d.$attrs,{"character-limit":l.value,"model-value":d.modelValue,resizable:d.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":u}),t.createSlots({_:2},[t.renderList(t.useSlots(),(m,y)=>({name:y,fn:t.withCtx(b=>[t.renderSlot(d.$slots,y,t.normalizeProps(t.guardReactiveProps(b)))])}))]),1040,["character-limit","model-value","resizable"]))}}),vw=["innerHTML"],Yn=ve(t.defineComponent({inheritAttrs:!1,__name:"StringField",props:{name:{},labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:r}=De(),i=t.createPropsRestProxy(e,["showVaultSecretPicker","showPasswordMaskToggle","name"]),a=n,{value:l,...s}=wt(t.toRef(()=>e.name)),c=Pt(s.path,t.toRef({...i,...o})),u=l==null?void 0:l.value;function f(h){u!==void 0&&h===""&&h!==u?(l.value=null,a("update:modelValue",null)):(l.value=h.trim(),a("update:modelValue",h.trim()))}const d=t.computed(()=>{var h;return e.showPasswordMaskToggle!==void 0?e.showPasswordMaskToggle:i.type==="password"?!0:!!((h=s.schema)==null?void 0:h.value).encrypted}),p=t.inject(Me.AUTOFILL_SLOT,void 0),m=t.computed(()=>{var h;return e.showVaultSecretPicker!==void 0?e.showVaultSecretPicker:!!((h=s.schema.value)!=null&&h.referenceable)}),y=t.computed(()=>({referenceable:m.value})),b=Ro(s.ancestors),g=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Vo(e.name)==="name");return(h,w)=>{var k;const _=t.resolveComponent("KAlert");return s.error?(t.openBlock(),t.createBlock(_,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",t.normalizeProps(t.mergeProps({key:1},h.$attrs)),[t.createVNode(Sn,t.mergeProps({...t.unref(c),showPasswordMaskToggle:d.value,type:d.value?"password":"text"},{class:"ff-string-field","data-1p-ignore":g.value,"data-autofocus":t.unref(b),"data-testid":`ff-${s.path.value}`,error:h.error,"error-message":h.errorMessage,help:h.multiline&&h.error?h.errorMessage:h.help,"model-value":t.unref(l)??"",multiline:h.multiline,"onUpdate:modelValue":f}),t.createSlots({_:2},[(k=t.unref(c).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,vw)],!0)]),key:"0"}:void 0,h.multiline&&h.error?void 0:{name:"help",fn:t.withCtx(()=>[t.renderSlot(h.$slots,"help",{},void 0,!0)]),key:"1"}]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline"]),t.unref(p)&&m.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(p)),{key:0,schema:y.value,update:f,value:t.unref(l)??""},null,8,["schema","value"])):t.createCommentVNode("",!0),m.value&&!t.unref(p)?(t.openBlock(),t.createBlock(_,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${s.path.value}`,message:t.unref(r).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)],16))}}}),[["__scopeId","data-v-8b9ee4c2"]]),xw=["innerHTML"],Ia=ve(t.defineComponent({__name:"BooleanField",props:{name:{},labelAttributes:{},modelValue:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=wt(t.toRef(()=>e.name)),a=n,l=c=>{r.value=c,a("update:modelValue",c)},s=Pt(i.path,o);return(c,u)=>{var d;const f=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(f,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(Oe.KCheckbox),t.mergeProps({key:1},t.unref(s),{class:"ff-boolean-field","data-testid":`ff-${i.path.value}`,"model-value":t.unref(r)??!1,"onUpdate:modelValue":l}),t.createSlots({_:2},[(d=t.unref(s).labelAttributes)!=null&&d.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(c.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,xw)],!0)]),key:"0"}:void 0]),1040,["data-testid","model-value"]))}}}),[["__scopeId","data-v-8a828fad"]]),td=ve(t.defineComponent({__name:"SlideTransition",setup(e){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),r=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(y=>[y,m.getPropertyValue(y)]))}function a(p){["overflow","transition",...n].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const y=i(m);Object.assign(m.style,r),requestAnimationFrame(()=>{Object.assign(m.style,{...y,transition:""})})}function c(p){a(p)}function u(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,r)}function d(p){a(p)}return(p,m)=>(t.openBlock(),t.createBlock(t.Transition,{"enter-active-class":"ff-slide-active","leave-active-class":"ff-slide-active",onAfterEnter:c,onAfterLeave:d,onBeforeEnter:l,onBeforeLeave:u,onEnter:s,onLeave:f},{default:t.withCtx(()=>[t.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]),Aw=["data-testid"],Iw=["data-testid"],Pw=["data-testid"],Tw=["innerHTML"],Ow={class:"ff-object-field-actions"},$w=["data-testid"],gt=ve(t.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:t.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultExpanded:{type:Boolean,default:!0},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{},fieldsOrder:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(e){const n=t.createPropsRestProxy(e,["defaultExpanded","defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:o,...r}=wt(t.toRef(n,"name")),{getSchema:i,getDefault:a}=Ye(),l=t.useModel(e,"added"),s=t.useModel(e,"expanded"),c=t.computed(()=>p.value&&(e.collapsible?s.value??e.defaultExpanded:!1)),u=t.computed(()=>{var g,h;if((g=r.ancestors)!=null&&g.value){const w=r.ancestors.value.parent;if(w!=null&&w.path)return((h=i(w.path))==null?void 0:h.type)==="array"}return!1}),f=t.computed(()=>e.resetLabelPath!==void 0?e.resetLabelPath:u.value?"reset":"inherit"),d=Pt(r.path,t.toRef(()=>({required:e.required,...n,resetLabelPath:f.value}))),p=t.computed(()=>d.value.required?!0:l.value??e.defaultAdded),m=t.computed(()=>e.asChild!==void 0?e.asChild:u.value),y=t.computed(()=>{let g=r.schema.value.fields;return e.omit&&(g=g.filter(h=>!e.omit.includes(Object.keys(h)[0]))),e.fieldsOrder?g.sort((h,w)=>{const _=Object.keys(h)[0],k=Object.keys(w)[0],E=e.fieldsOrder.indexOf(_),C=e.fieldsOrder.indexOf(k);return E===-1&&C===-1?0:E===-1?1:C===-1?-1:E-C}):g});function b(){l.value=!l.value,l.value?o.value=a(r.path.value):o.value=null}return t.watch(p,g=>{e.collapsible&&(s.value=g)}),t.onBeforeMount(()=>{l.value=!!(o!=null&&o.value)}),(g,h)=>{var _;const w=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(g.$slots[t.unref(Hn)]))),r.error?(t.openBlock(),t.createBlock(w,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):m.value?(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},g.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,k=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(k)[0],name:Object.keys(k)[0]},null,8,["name"]))),128))],!0)],16,Aw)):(t.openBlock(),t.createElementBlock("div",t.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!c.value}],"data-testid":`ff-object-${r.path.value}`},g.$attrs),[t.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[t.createVNode(t.unref(Oe.KLabel),t.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...t.unref(d),required:!1},{"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(_=t.unref(d).labelAttributes)!=null&&_.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Tw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createElementVNode("div",Ow,[g.collapsible&&p.value?(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:0,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${c.value?"collapse":"expand"}`),"data-testid":`ff-object-toggle-btn-${r.path.value}`,icon:"",onClick:h[0]||(h[0]=k=>s.value=!c.value)},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(Se.ChevronDownIcon),{key:0,class:"ff-object-field-button-icon"})):t.createCommentVNode("",!0)]),_:1},8,["class","data-testid"])):t.createCommentVNode("",!0),t.unref(d).required?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:1,appearance:"tertiary",class:t.normalizeClass(`ff-object-field-button-${p.value?"remove":"add"}`),"data-testid":`ff-object-${p.value?"remove":"add"}-btn-${r.path.value}`,icon:"",onClick:b},{default:t.withCtx(()=>[p.value?(t.openBlock(),t.createBlock(t.unref(Se.TrashIcon),{key:0})):(t.openBlock(),t.createBlock(t.unref(Se.AddIcon),{key:1}))]),_:1},8,["class","data-testid"]))])],8,Pw),t.createVNode(td,null,{default:t.withCtx(()=>[c.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[t.renderSlot(g.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,k=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(k)[0],name:Object.keys(k)[0]},null,8,["name"]))),128))],!0)],8,$w)):t.createCommentVNode("",!0)]),_:3})],16,Iw))],64)}}}),[["__scopeId","data-v-6f044592"]]),Bw=["innerHTML"],Wn=ve(t.defineComponent({__name:"NumberField",props:{name:{},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.createPropsRestProxy(e,["name"]),{value:r,...i}=wt(t.toRef(()=>e.name)),a=Pt(i.path,o),l=t.computed(()=>{var b;const p=(b=i.schema)==null?void 0:b.value;if(typeof p.gt=="number")return{min:p.gt};const[m,y]=p.between??[];return{min:o.min??m,max:o.max??y}}),s=n,c=r.value,u=t.computed(()=>(r==null?void 0:r.value)!=null&&Number.isFinite(r.value)?`${r.value}`:"");function f(p){c!==void 0&&p===""&&Number(p)!==c?(r.value=null,s("update:modelValue",null)):(r.value=p===""?null:Number(p),s("update:modelValue",p===""?null:Number(p)))}const d=Ro(i.ancestors);return(p,m)=>{var b;const y=t.resolveComponent("KAlert");return i.error?(t.openBlock(),t.createBlock(y,{key:0,appearance:"danger",message:i.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(Sn,t.mergeProps({key:1,class:"ff-number-field"},{...t.unref(a),min:l.value.min,max:l.value.max},{"data-autofocus":t.unref(d),"data-testid":`ff-${i.path.value}`,"model-value":u.value,type:"number","onUpdate:modelValue":f}),t.createSlots({_:2},[(b=t.unref(a).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(a).labelAttributes.info},null,8,Bw)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"]))}}}),[["__scopeId","data-v-00c065d4"]]),Vw=["innerHTML"],Nt=ve(t.defineComponent({__name:"EnumField",props:{name:{},labelAttributes:{},items:{},placeholder:{},multiple:{type:Boolean,default:()=>{}},modelValue:{},label:{},help:{},error:{type:Boolean},searchPlaceholder:{},kpopAttributes:{},dropdownMaxHeight:{},width:{},selectedRowCount:{},collapsedContext:{type:Boolean},filterFunction:{type:Function},autosuggest:{type:Boolean},enableItemCreation:{type:Boolean},loading:{type:Boolean},dropdownFooterText:{},dropdownFooterTextPosition:{},itemCreationValidator:{type:Function},enableFiltering:{type:Boolean},clearable:{type:Boolean},reuseItemTemplate:{type:Boolean}},emits:["update"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items","multiple"]),{getSelectItems:i}=Ye(),{value:a,...l}=wt(t.toRef(()=>e.name)),s=Pt(l.path,r),c=t.computed(()=>e.items?e.items:l.path?i(l.path.value):[]),u=t.computed(()=>{var d;return e.multiple!==void 0?e.multiple:((d=l.schema.value)==null?void 0:d.type)==="set"}),f=t.computed(()=>u.value?Oe.KMultiselect:Oe.KSelect);return(d,p)=>{var y;const m=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(m,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createBlock(t.unref(f),t.mergeProps({key:1},{...r,...t.unref(s)},{modelValue:t.unref(a),"onUpdate:modelValue":[p[0]||(p[0]=b=>t.isRef(a)?a.value=b:null),p[1]||(p[1]=b=>o("update",b))],class:"ff-enum-field",clearable:!t.unref(s).required,"data-testid":`ff-${l.path.value}`,items:c.value,"kpop-attributes":{"data-testid":`${l.path.value}-items`}}),t.createSlots({_:2},[(y=t.unref(s).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(d.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Vw)],!0)]),key:"0"}:void 0]),1040,["modelValue","clearable","data-testid","items","kpop-attributes"]))}}}),[["__scopeId","data-v-bfca8687"]]);function Or(e,n,o=!0){const{value:r,...i}=wt(t.toRef(e,"name")),a=Pt(i.path,t.toRef({...e,...t.useAttrs()})),l=t.ref(u(e.initialValue??t.toValue(r)??{},e.keyOrder));function s(){return Pr("ff-kv-field-")}function c(g,h,w){const _=w.indexOf(g),k=w.indexOf(h);return _===-1&&k===-1?0:_===-1?1:k===-1?-1:_-k}function u(g,h){const w=Object.entries(g).map(([_,k])=>({id:s(),key:_,value:k}));return h&&w.sort((_,k)=>c(_.key,k.key,h)),w}function f(){const g={id:s(),key:e.defaultKey||"",value:e.defaultValue||""};return l.value.push(g),g}function d(g){const h=l.value.findIndex(w=>w.id===g);h!==-1&&l.value.splice(h,1)}function p(){l.value=u(e.initialValue||{},e.keyOrder)}function m(g){l.value=u(g,e.keyOrder)}let y=null;t.watch(l,g=>{if(!o)return;const h=g.length?Object.fromEntries(g.map(({key:w,value:_})=>[w,_]).filter(([w])=>w)):null;r.value=h,y=h,n("change",h)},{deep:!0,immediate:!0}),t.watch(()=>r==null?void 0:r.value,g=>{Oo(g,y)||b(g)},{deep:!0});function b(g){if(!g){l.value=[];return}const h=new Map;l.value.forEach(E=>{E.key&&h.set(E.key,E)});const w=[],_=Object.keys(g);(e.keyOrder?[..._].sort((E,C)=>c(E,C,e.keyOrder)):_).forEach(E=>{const C=g[E];if(h.has(E)){const N=h.get(E);N.value=C,w.push(N)}else w.push({id:s(),key:E,value:C})}),l.value=w}return{entries:l,addEntry:f,removeEntry:d,reset:p,setValue:m,labelAttrs:a,field:i}}const Rw=["data-testid"],Dw=["data-testid"],Mw=["innerHTML"],Lw=["data-testid"],Fw=ve(t.defineComponent({__name:"KeyValueField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{}},emits:["change"],setup(e,{expose:n,emit:o}){const r=t.createPropsRestProxy(e,["showVaultSecretPicker"]),{i18n:i}=De(),a=o,{entries:l,addEntry:s,removeEntry:c,reset:u,setValue:f,labelAttrs:d,field:p}=Or(r,a),m=t.useTemplateRef("root");async function y(E,C="key"){var N;m.value&&(await t.nextTick(),(N=m.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function b(){s();const E=l.value.findIndex(({key:C})=>!C);y(E===-1?l.value.length-1:E)}function g(E){E===l.value.length-1&&s(),y(E+1)}const h=t.inject(Me.AUTOFILL_SLOT,void 0),w=t.computed(()=>{var E,C;return e.showVaultSecretPicker??!!((C=(E=p.schema.value)==null?void 0:E.values)!=null&&C.referenceable)}),_=t.computed(()=>({referenceable:w.value}));function k(E,C){l.value[E].value=C}return n({reset:u,setValue:f}),(E,C)=>{var G;const N=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),D=t.resolveComponent("KButton");return t.unref(p).error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:t.unref(p).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:m,class:"ff-kv-field","data-testid":`ff-kv-${t.unref(p).path.value}`},[t.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${t.unref(p).path.value}`},[t.createVNode(I,t.mergeProps({class:"ff-kv-field-label"},t.unref(d),{"data-testid":`ff-label-${t.unref(p).path.value}`,"tooltip-attributes":t.unref(d).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).label)+" ",1)]),_:2},[(G=t.unref(d).labelAttributes)!=null&&G.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(E.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(d).labelAttributes.info},null,8,Mw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(D,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(p).path.value}`,icon:"",onClick:b},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon))]),_:1},8,["data-testid"])],8,Dw),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(l),(K,S)=>(t.openBlock(),t.createElementBlock("div",{key:K.id,class:"ff-kv-field-entry","data-testid":`ff-kv-container-${t.unref(p).path.value}.${S}`},[t.createVNode(Sn,{modelValue:K.key,"onUpdate:modelValue":ne=>K.key=ne,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":S,"data-testid":`ff-key-${t.unref(p).path.value}.${S}`,placeholder:E.keyPlaceholder||"Key",onKeydown:t.withKeys(t.withModifiers(ne=>y(S,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),t.createVNode(Sn,{modelValue:K.value,"onUpdate:modelValue":ne=>K.value=ne,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(p).path.value}.${S}`,"data-value-input":S,placeholder:E.valuePlaceholder||"Value",onKeydown:t.withKeys(t.withModifiers(ne=>g(S),["prevent"]),["enter"])},{after:t.withCtx(()=>[t.unref(h)&&w.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(h)),{key:0,schema:_.value,update:ne=>k(S,ne),value:K.value},null,8,["schema","update","value"])):t.createCommentVNode("",!0),w.value&&!t.unref(h)?(t.openBlock(),t.createBlock(N,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${t.unref(p).path.value}`,message:t.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):t.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","placeholder","onKeydown"]),t.createVNode(D,{appearance:"tertiary","data-testid":`ff-kv-remove-btn-${t.unref(p).path.value}.${S}`,icon:"",onClick:ne=>t.unref(c)(K.id)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.TrashIcon))]),_:2},1032,["data-testid","onClick"])],8,Lw))),128))],8,Rw))}}}),[["__scopeId","data-v-92e0893d"]]),Uw=["data-testid"],Kw=["innerHTML"],Pa=ve(t.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{name:{},labelAttributes:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=wt(t.toRef(()=>e.name)),s=Pt(l.path,t.toRef({...r,...o})),c=t.computed(()=>{var b,g;return((g=(b=l.schema)==null?void 0:b.value)==null?void 0:g.len_min)&&l.schema.value.len_min>0}),u=t.ref("");function f(b){return b.map(g=>g.trim()).filter(Boolean).join(", ")}function d(b){return b.trim().split(",").map(g=>g.trim()).filter(Boolean)}function p(b){u.value=b;const g=d(b),h=!g.length&&c.value?null:g;a.value=h,i("update:modelValue",h)}const m=Ro(l.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Vo(e.name)==="name");return t.watch(a,b=>{const g=b?f(b):"";f(d(u.value))!==g&&(u.value=g)},{immediate:!0}),(b,g)=>{var w;const h=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(h,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-tag-${l.path.value}`},[t.createVNode(Sn,t.mergeProps(t.unref(s),{class:"ff-tag-field","data-1p-ignore":y.value,"data-autofocus":t.unref(m),"data-testid":`ff-${l.path.value}`,"model-value":u.value??"","onUpdate:modelValue":p}),t.createSlots({_:2},[(w=t.unref(s).labelAttributes)!=null&&w.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Kw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,Uw))}}}),[["__scopeId","data-v-a27f4ff1"]]),jw=["data-testid"],Gw=["innerHTML"],qw=ve(t.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{name:{},labelAttributes:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),r=t.createPropsRestProxy(e,["name"]),i=n,{value:a,...l}=wt(t.toRef(()=>e.name)),s=Pt(l.path,t.toRef({...r,...o})),c=t.ref("");function u(p){c.value=p;let m=p||null;try{const y=JSON.parse(p);y&&typeof y=="object"&&(m=y)}catch{}a.value=m,i("update:modelValue",m)}const f=Ro(l.ancestors),d=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Vo(e.name)==="name");return t.watch(a,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(c.value);Oo(m,p)||(c.value=JSON.stringify(p,null,2))}catch{c.value=JSON.stringify(p,null,2)}return}c.value=p||""},{immediate:!0}),(p,m)=>{var b;const y=t.resolveComponent("KAlert");return l.error?(t.openBlock(),t.createBlock(y,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`ff-json-${l.path.value}`},[t.createVNode(Sn,t.mergeProps(t.unref(s),{class:"ff-json-field","data-1p-ignore":d.value,"data-autofocus":t.unref(f),"data-testid":`ff-${l.path.value}`,"model-value":c.value??"",multiline:"","onUpdate:modelValue":u}),t.createSlots({_:2},[(b=t.unref(s).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(p.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(s).labelAttributes.info},null,8,Gw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,jw))}}}),[["__scopeId","data-v-5749f722"]]),zw=["innerHTML"],Hw=ve(t.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{name:{},labelAttributes:{},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean}},emits:["update:modelValue"],setup(e,{emit:n}){const o=t.useAttrs(),{i18n:{t:r}}=De(),i=t.createPropsRestProxy(e,["showPasswordMaskToggle","name"]),a=n,{value:l,...s}=wt(t.toRef(()=>e.name));if(s.error)throw new Error(s.error.message);const c=Pt(s.path,t.toRef({...i,...o})),u=l.value?l.value.id:null,f=t.computed(()=>{var b;return c.value.placeholder?c.value.placeholder:r("plugins.free-form.foreign_placeholder",{entity:((b=s.schema.value)==null?void 0:b.reference)??"entity"})}),d=t.ref(u??"");function p(b){u!==void 0&&b===""&&b!==u?(l.value=null,a("update:modelValue",null)):(l.value={id:b.trim()},a("update:modelValue",l.value))}const m=Ro(s.ancestors),y=t.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Vo(e.name)==="name");return(b,g)=>{var h;return t.openBlock(),t.createBlock(Sn,t.mergeProps(t.unref(c),{class:"ff-foreign-field","data-1p-ignore":y.value,"data-autofocus":t.unref(m),"data-testid":`ff-${s.path.value}`,error:b.error,"error-message":b.errorMessage,help:b.help,"model-value":d.value,placeholder:f.value,"onUpdate:modelValue":p}),t.createSlots({_:2},[(h=t.unref(c).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:t.withCtx(()=>[t.renderSlot(b.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(c).labelAttributes.info},null,8,zw)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])}}}),[["__scopeId","data-v-b54c028e"]]),pt=t.defineComponent({name:"AutoField",__name:"Field",props:{name:{}},emits:["globalAction"],setup(e){const n=e,o=wt(t.toRef(n,"name")),r=t.computed(()=>{var i,a;switch((a=(i=o.schema)==null?void 0:i.value)==null?void 0:a.type){case"string":return"one_of"in o.schema.value?Nt:Yn;case"boolean":return"one_of"in o.schema.value?Nt:Ia;case"number":case"integer":return"one_of"in o.schema.value?Nt:Wn;case"array":return $r;case"set":return mw(o.schema)?Pa:Nt;case"record":return gt;case"map":return Fw;case"json":return qw;case"foreign":return Hw;default:return}});return(i,a)=>{const l=t.resolveComponent("KAlert");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(i.$slots[t.unref(Hn)]))),t.unref(o).error?(t.openBlock(),t.createBlock(l,{key:0,appearance:"danger",message:t.unref(o).error.message},null,8,["message"])):t.unref(o).renderer.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(o).renderer.value),{key:1,name:Na(t.unref(o).path.value),onGlobalAction:a[0]||(a[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["name"])):(t.openBlock(),t.createElementBlock(t.Fragment,{key:2},[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,name:Na(t.unref(o).path.value)},null,8,["name"])):(t.openBlock(),t.createBlock(l,{key:1,appearance:"warning",message:`${t.unref(o).path.value} ${t.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),t.renderSlot(i.$slots,"default")],64))],64)}}}),Yw=["data-testid"],Ww=["data-testid"],Xw=["innerHTML"],Zw=["data-testid"],Jw={class:"ff-array-field-item-content"},Qw=["data-index","data-testid"],$r=ve(t.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]}},emits:["add","remove"],setup(e,{emit:n}){var C;t.useCssVars(N=>({"3e1c9ee2":E.value}));const o=e,r=n,{i18n:{t:i}}=De(),{getDefault:a,getSchema:l}=Ye(),{value:s,...c}=wt(t.toRef(o,"name")),u=Pt(c.path,t.toRef({...o,...t.useAttrs()})),f=t.computed(()=>{if(!c.path)throw new Error("Field path is required for sub-schema retrieval");const N=l(c.path.value);if(!N)throw new Error(`Schema not found for path: ${c.path.value}`);return N.elements}),d=t.computed(()=>o.items??t.toValue(s)??[]),{getKey:p}=Qc("ff-array-field",d),m=t.computed(()=>o.appearance==="card"?Oe.KCard:"div");function y(N,I){return typeof o.itemLabel=="function"?o.itemLabel(N,I):o.itemLabel||u.value.label||`Item #${I}`}const b=t.computed(()=>d.value.map((N,I)=>({hash:`#${p(N,I)}`,title:""}))),g=t.ref((C=b.value[0])==null?void 0:C.hash),h=async()=>{var I;const N=a(It(c.path.value,Ea));Array.isArray(s.value)||(s.value=[]),s.value.push(N),r("add"),o.appearance==="tabs"&&(await t.nextTick(),g.value=(I=b.value[b.value.length-1])==null?void 0:I.hash),await t.nextTick(),k(d.value.length+1)},w=async N=>{var I;Array.isArray(s.value)&&s.value.splice(N,1),r("remove",N),o.appearance==="tabs"&&(g.value=(I=b.value[Math.max(0,N-1)])==null?void 0:I.hash)},_=t.useTemplateRef("root");function k(N){var D;if(!_.value)return;const I=Math.max(0,Math.min(N,d.value.length-1));(D=_.value.querySelector(`[data-index="${I}"] [data-autofocus]`))==null||D.focus()}const E=t.computed(()=>{const{appearance:N,stickyTabs:I}=o;return N!=="tabs"||I==null||I===!1?null:typeof I=="number"?`${o.stickyTabs}px`:typeof I=="string"?I:"0"});return(N,I)=>{var ne;const D=t.resolveComponent("KAlert"),G=t.resolveComponent("KLabel"),K=t.resolveComponent("KButton"),S=t.resolveComponent("KTabs");return c.error?(t.openBlock(),t.createBlock(D,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:_,class:t.normalizeClass(["ff-array-field",{[`ff-array-field-${N.appearance??"default"}`]:!0,"ff-array-field-sticky-tabs":N.stickyTabs}]),"data-testid":`ff-array-${c.path.value}`},[t.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${c.path.value}`},[t.createVNode(G,t.mergeProps({class:"ff-array-field-label"},t.unref(u),{"data-testid":`ff-label-${c.path.value}`,"tooltip-attributes":t.unref(u).labelAttributes.tooltipAttributes}),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).label)+" ",1)]),_:2},[(ne=t.unref(u).labelAttributes)!=null&&ne.info?{name:"tooltip",fn:t.withCtx(()=>[t.renderSlot(N.$slots,"tooltip",{},()=>[t.createElementVNode("div",{innerHTML:t.unref(u).labelAttributes.info},null,8,Xw)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.add_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),"data-testid":`ff-add-item-btn-${c.path.value}`,icon:"",onClick:h},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon))]),_:1},8,["aria-label","data-testid"])],8,Ww),d.value.length?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[N.appearance!=="tabs"?(t.openBlock(),t.createElementBlock("div",{key:0,class:"ff-array-field-container","data-testid":`ff-array-basic-container-${c.path.value}`},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(x,q)=>(t.openBlock(),t.createBlock(t.unref(m),{key:t.unref(p)(x,q),class:"ff-array-field-item","data-index":q,"data-testid":`ff-array-item-${c.path.value}.${q}`},{default:t.withCtx(()=>[t.createElementVNode("div",Jw,[N.$slots.item?t.renderSlot(N.$slots,"item",{key:0,fieldName:String(q),index:q},void 0,!0):t.createCommentVNode("",!0),f.value.type==="array"&&f.value.elements.type==="string"?(t.openBlock(),t.createBlock(Pa,{key:1,help:t.unref(i)("plugins.free-form.tag_helper"),name:String(q)},null,8,["help","name"])):(t.openBlock(),t.createBlock(pt,{key:2,name:String(q)},null,8,["name"]))]),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${q}`,icon:"",onClick:U=>w(q)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])]),_:2},1032,["data-index","data-testid"]))),128))],8,Zw)):(t.openBlock(),t.createBlock(t.unref(Oe.KCard),{key:1,"data-testid":`ff-array-tab-container-${c.path.value}`},{default:t.withCtx(()=>[t.createVNode(S,{modelValue:g.value,"onUpdate:modelValue":I[0]||(I[0]=x=>g.value=x),"data-testid":`ff-array-tabs-${c.path.value}`,tabs:b.value},t.createSlots({_:2},[t.renderList(d.value,(x,q)=>({name:t.unref(p)(x,q),fn:t.withCtx(()=>[t.createElementVNode("div",{class:"ff-array-field-item","data-index":q,"data-testid":`ff-array-item-${c.path.value}.${q}`},[N.$slots.item?t.renderSlot(N.$slots,"item",{key:0,fieldName:String(q),index:q},void 0,!0):(t.openBlock(),t.createBlock(pt,{key:1,name:String(q)},null,8,["name"]))],8,Qw)])})),t.renderList(d.value,(x,q)=>({name:`${t.unref(p)(x,q)}-anchor`,fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(y(x,q))+" ",1),t.createVNode(K,{appearance:"tertiary","aria-label":t.unref(i)("actions.remove_entity",{entity:t.unref(i)("plugins.free-form.request-callout.entity_name")}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${c.path.value}.${q}`,icon:"",onClick:t.withModifiers(U=>w(q),["stop"])},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.TrashIcon))]),_:2},1032,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"]))],64)):t.createCommentVNode("",!0)],10,Yw))}}}),[["__scopeId","data-v-3edd064c"]]),Do=Symbol(),ek=t.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(e){const n=e,{formData:o}=Ye(),r=t.computed(()=>{const{callouts:l}=o.config;return l==null?[]:l.filter(({name:s})=>{var c;return s&&s!==((c=l[n.index])==null?void 0:c.name)})}),i=t.computed(()=>r.value.map(({[Do]:l,name:s})=>({value:l,label:s}))),a=t.computed(()=>o.config.callouts[n.index]);return t.watch(i,()=>{a.value.depends_on=a.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(t.openBlock(),t.createBlock(gt,{name:l.fieldName},{depends_on:t.withCtx(c=>[t.createVNode(Nt,t.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:t.withCtx(c=>[t.createVNode(gt,t.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:t.withCtx(u=>[t.createVNode(Nt,t.mergeProps(u,{items:t.unref(Ca)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:2},1040)]),_:1},8,["name"]))}}),tk=t.defineComponent({__name:"CalloutsForm",setup(e){const{formData:n}=Ye();function o(){const r=n.config.callouts[n.config.callouts.length-1];r&&(r[Do]=ed())}return(r,i)=>(t.openBlock(),t.createBlock($r,{appearance:"tabs","item-label":a=>a.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:t.withCtx(({index:a,fieldName:l})=>[t.createVNode(ek,{"field-name":l,index:a},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),nd=t.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(e){const n=e,{default:o}=t.useSlots(),r=t.inject(Tr);if(!r)throw new Error(Tr.toString()+"not provided");return o&&r.set(n.match,o),(i,a)=>null}}),ht=t.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{}},emits:["change","globalAction"],setup(e,{expose:n,emit:o}){const r=o,i=t.useSlots(),a=yw(e.schema);t.provide(zc,a);const l=m=>{var y;return wr((y=e.config)==null?void 0:y.hasValue)?e.config.hasValue(m):!!m},s=t.computed(()=>{let m=a.getSchema().fields;return e.fieldsOrder?m.sort((y,b)=>{const g=Object.keys(y)[0],h=Object.keys(b)[0],w=e.fieldsOrder.indexOf(g),_=e.fieldsOrder.indexOf(h);return w===-1&&_===-1?0:w===-1?1:_===-1?-1:w-_}):m});let c=!1;const u=t.reactive({});t.provide(qc,u),t.provide(Sa,$o(i,"default",Hn));const f=new Map;t.provide(Tr,f),t.provide(Yc,e.config??{}),t.watch(u,m=>{c&&r("change",t.toValue(m))},{deep:!0,immediate:!0});function d(m){Object.keys(u).forEach(y=>{delete u[y]}),Object.assign(u,m)}function p(m){var b;let y;!m||!l(t.toValue(m))?y=a.getDefault():y=Gn(t.toValue(m)),wr((b=e.config)==null?void 0:b.prepareFormData)?d(e.config.prepareFormData(y)):d(y),c=!0}return t.onBeforeMount(()=>{p(e.data)}),t.watch(()=>e.data,m=>{p(m)},{deep:!0}),n({getInnerData:()=>t.toRaw(u)}),(m,y)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m.tag),null,{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(i)[t.unref(Hn)]))),t.renderSlot(m.$slots,"default",{},()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,b=>(t.openBlock(),t.createBlock(pt,{key:Object.keys(b)[0],name:Object.keys(b)[0],onGlobalAction:y[0]||(y[0]=(g,h)=>r("globalAction",g,h))},null,8,["name"]))),128))])]),_:3}))}}),nk={class:"ff-advanced-fields"},Br=ve(t.defineComponent({__name:"AdvancedFields",setup(e){const{t:n}=Ze.createI18n("en-us",rt),{getSchema:o}=Ye(),r=t.ref(!0);return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Oe.KCollapse),{modelValue:r.value,"onUpdate:modelValue":a[0]||(a[0]=l=>r.value=l),"data-testid":"view-advanced","trigger-label":r.value?t.unref(n)("plugins.form.grouping.advanced_parameters.view"):t.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:t.withCtx(()=>[t.createElementVNode("div",nk,[t.unref(o)("instance_name")?(t.openBlock(),t.createBlock(pt,{key:0,name:"instance_name"})):t.createCommentVNode("",!0),t.unref(o)("protocols")?(t.openBlock(),t.createBlock(pt,{key:1,name:"protocols"})):t.createCommentVNode("",!0),t.unref(o)("tags")?(t.openBlock(),t.createBlock(Pa,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:t.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):t.createCommentVNode("",!0),t.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-54f66af5"]]),ok=ve(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,r={prepareFormData:l,hasValue:s},{i18n:{t:i}}=De();function a(u,f=!1){return u.reduce((d,{[Do]:p,name:m})=>(f?d[m]=p:d[p]=m,d),{})}function l(u){var m;const f=Gn(u);if(!((m=f.config)!=null&&m.callouts))return f;const{callouts:d}=f.config;d.forEach(y=>{y.request.body.custom=y.request.body.custom??{},y[Do]=ed()});const p=a(d,!0);return d.forEach(y=>{y.depends_on=y.depends_on.map(b=>p[b])}),f}function s(u){return!!(u!=null&&u.config)}function c(u){var p;if(!u)return;const f=Gn(u);if(!((p=f.config)!=null&&p.callouts))throw new Error("data is not correct");const d=a(f.config.callouts);f.config.callouts=f.config.callouts.map(m=>{const{[Do]:y,depends_on:b,...g}=m;return{depends_on:b.map(h=>d[h]).filter(h=>h!=null),...g}}),o("change",f)}return(u,f)=>(t.openBlock(),t.createBlock(ht,{class:"rc-config-form",config:r,data:u.data,schema:u.schema,tag:"div",onChange:c},{[t.unref(Hn)]:t.withCtx(()=>[t.createVNode(nd,{match:({path:d})=>d.endsWith("by_lua")},{default:t.withCtx(d=>[t.createVNode(Yn,t.mergeProps(d,{autosize:"",class:"rc-code",multiline:"",placeholder:t.unref(i)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),t.createVNode(nd,{match:({path:d})=>["cluster_nodes","sentinel_nodes"].some(p=>d.endsWith(p))},{default:t.withCtx(d=>[t.createVNode($r,t.mergeProps(d,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(tk),t.createVNode(gt,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),t.createVNode(gt,{appearance:"card",name:"cache"},{redis:t.withCtx(d=>[t.createVNode(gt,t.mergeProps(d,{"fields-order":["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"]}),null,16)]),_:2},1024)]),_:1}),t.createVNode(Br)]),_:2},1032,["data","schema"]))}}),[["__scopeId","data-v-19d40902"]]),rk={class:"ff-form-pinned-fields"},ik={class:"ff-form-config-form"},Ta=ve(t.defineComponent({__name:"PluginFormWrapper",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=e;t.useSlots();function r(f){return t.computed(()=>({fields:t.toValue(f).map(d=>{var p;return(p=o.formSchema)==null?void 0:p.fields.find(m=>m.model===d)}).filter(Boolean)}))}const a=r(["enabled","selectionGroup"]),l=["config","protocols"],s=t.computed(()=>{const f=o.schema;f.fields=f.fields.filter(p=>l.includes(Object.keys(p)[0])),f.fields.unshift({instance_name:{type:"string",description:n("plugins.form.fields.instance_name.help")}},{tags:{type:"set",default:[],description:n("plugins.form.fields.tags.help"),elements:{type:"string"}}});const d=f.fields.find(p=>Object.keys(p)[0]==="protocols");return d&&(d.protocols.help=d.protocols.default?n("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:d.protocols.default.join(", ")}):n("plugins.form.fields.protocols.placeholder"),d.protocols.description=n("plugins.form.fields.protocols.help")),f}),c=t.ref(!1),u=t.computed(()=>{const f=["config","instance_name","partials","protocols","tags","__ui_data"];return ba(o.model,f)});return(f,d)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",rk,[t.createVNode(t.unref(Me.VueFormGenerator),{model:f.formModel,options:f.formOptions,schema:t.unref(a),onModelUpdated:f.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createVNode(t.unref(Oe.KCollapse),{modelValue:c.value,"onUpdate:modelValue":d[1]||(d[1]=p=>c.value=p),class:"ff-form-config-fields"},{title:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.title")),1)]),"visible-content":t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.form.grouping.plugin_configuration.description")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",ik,[t.renderSlot(f.$slots,"default",{class:"ff-form",data:u.value,schema:s.value,onChange:d[0]||(d[0]=(...p)=>f.onFormChange&&f.onFormChange(...p))},void 0,!0)])]),_:3},8,["modelValue"])],64))}}),[["__scopeId","data-v-88b54620"]]),ak=t.defineComponent({__name:"RequestCalloutForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Me.AUTOFILL_SLOT,o==null?void 0:o[Me.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ta,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(ok,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),lk={key:1},sk=["innerHTML"],ck={class:"horizontal-container"},dk=ve(t.defineComponent({__name:"RadioField",props:{name:{},labelAttributes:{},multiple:{type:Boolean},items:{},label:{}},emits:["update:modelValue"],setup(e,{emit:n}){const o=n,r=t.createPropsRestProxy(e,["name","items"]),{getSelectItems:i}=Ye(),a=wt(t.toRef(()=>e.name)),l=Pt(a.path,r),s=t.computed(()=>e.items?e.items:a.path?i(a.path.value):[]),c=u=>{a.value&&(a.value.value=u),o("update:modelValue",u)};return(u,f)=>{var m;const d=t.resolveComponent("KAlert"),p=t.resolveComponent("KLabel");return t.unref(a).error?(t.openBlock(),t.createBlock(d,{key:0,appearance:"danger",message:t.unref(a).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",lk,[t.createVNode(p,t.normalizeProps(t.guardReactiveProps(t.unref(l).labelAttributes)),t.createSlots({default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(l).label)+" ",1)]),_:2},[(m=t.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:t.withCtx(()=>[t.createElementVNode("div",{innerHTML:t.unref(l).labelAttributes.info},null,8,sk)]),key:"0"}:void 0]),1040),t.createElementVNode("div",ck,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value,y=>(t.openBlock(),t.createBlock(t.unref(Oe.KRadio),{key:y.value,"model-value":t.unref(a).value.value,"onUpdate:modelValue":[f[0]||(f[0]=b=>t.unref(a).value.value=b),c],"card-orientation":"horizontal",label:y.label,"selected-value":y.value},null,8,["model-value","label","selected-value"]))),128))])]))}}}),[["__scopeId","data-v-b5a23a0b"]]),uk={class:"sp-form-request-limits-subtitle"},fk={class:"sp-form-request-limits-content"},pk={class:"sp-form-window-type"},mk={class:"sp-form-request-limits-items"},gk={class:"sp-form-request-limits-row"},hk=["id"],yk={class:"sp-form-request-limits-actions"},_k={key:0,class:"sp-form-request-limits-examples"},bk={class:"sp-form-request-limits-examples-badges"},Oa="config.window_type",wk=ve(t.defineComponent({__name:"RequestLimitsForm",setup(e){var g;const{t:n}=Ze.createI18n("en-us",rt),{formData:o,getSelectItems:r,getSchema:i}=Ye(),a=t.computed(()=>{var w,_;const h=(_=(w=o.config)==null?void 0:w.limit)==null?void 0:_.map((k,E)=>{var C,N;return{limit:k,windowSize:(N=(C=o.config)==null?void 0:C.window_size)==null?void 0:N[E]}});return!Array.isArray(h)||h.length===0?[{limit:null,windowSize:null}]:h}),{getKey:l}=Qc("request-limits",a),s=h=>{var w,_;p.value=void 0,o.config&&((w=o.config.limit)!=null&&w.length||(o.config.limit=[null]),(_=o.config.window_size)!=null&&_.length||(o.config.window_size=[null]),o.config.limit.splice(h+1,0,null),o.config.window_size.splice(h+1,0,null))},c=h=>{o.config&&(o.config.limit.splice(h,1),o.config.window_size.splice(h,1))},u=(g=i(Oa))==null?void 0:g.default,f=t.computed(()=>Ws(o,Oa)),d=t.computed(()=>r(Oa).sort((h,w)=>h.value===u?-1:w.value===u?1:0)),p=t.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},y=t.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),b=(h,w)=>{if(w===p.value){t.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}t.nextTick(()=>{p.value=w}),o.config.limit=[h.config.limit],o.config.window_size=[h.config.window_size]};return(h,w)=>{const _=t.resolveComponent("KLabel"),k=t.resolveComponent("KButton"),E=t.resolveComponent("KBadge"),C=t.resolveComponent("KTooltip"),N=t.resolveComponent("KCard");return t.openBlock(),t.createBlock(N,{class:"sp-form-request-limits"},{title:t.withCtx(()=>[t.createVNode(_,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.title")),1)]),_:1}),t.createElementVNode("div",uk,t.toDisplayString(t.unref(n)("sp.request_limits.subtitle")),1)]),default:t.withCtx(()=>[t.createElementVNode("div",fk,[t.createElementVNode("div",pk,[t.createVNode(dk,{items:d.value,label:t.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":w[0]||(w[0]=I=>p.value=void 0)},null,8,["items","label"])]),t.createElementVNode("div",mk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,(I,D)=>(t.openBlock(),t.createElementBlock("div",{key:t.unref(l)(I,D)},[t.createVNode(_,{for:`sp-form-request-limits-item-${D}-legend`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.request_limits.label_index",{index:D+1})),1)]),_:2},1032,["for"]),t.createElementVNode("div",gk,[t.createElementVNode("legend",{id:`sp-form-request-limits-item-${D}-legend`,class:"sp-form-request-limits-inputs"},[t.createVNode(Wn,{name:`$.config.limit.${D}`,placeholder:t.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.interval_determiner")),1),t.createVNode(Wn,{name:`$.config.window_size.${D}`,placeholder:t.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.seconds")),1)],8,hk),t.createElementVNode("div",yk,[t.createVNode(k,{appearance:"tertiary",disabled:a.value.length<=1,onClick:()=>c(D)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.RemoveIcon))]),_:2},1032,["disabled","onClick"]),t.createVNode(k,{appearance:"tertiary",onClick:()=>s(D)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon))]),_:2},1032,["onClick"])])])]))),128))]),y.value.length>0?(t.openBlock(),t.createElementBlock("div",_k,[t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.start_with_a_use_case")),1),t.createElementVNode("div",bk,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(y.value,(I,D)=>(t.openBlock(),t.createBlock(C,{key:`use-case-${D}`,"max-width":"300"},{content:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(I.description),1),w[1]||(w[1]=t.createElementVNode("br",null,null,-1)),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.label"))+": "+t.toDisplayString(I.config.limit),1),t.createElementVNode("div",null,t.toDisplayString(t.unref(n)("sp.request_limits.time_interval"))+": "+t.toDisplayString(I.config.window_size),1)]),default:t.withCtx(()=>[t.createVNode(E,{appearance:p.value===`${f.value}-${D}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>b(I,`${f.value}-${D}`)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(I.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):t.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),kk={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Ck=ve(t.defineComponent({__name:"ErrorMessageForm",setup(e){const{t:n}=Ze.createI18n("en-us",rt);return(o,r)=>{const i=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",null,[t.createVNode(i,{for:"sp-form-error-legend",info:t.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),t.createElementVNode("legend",kk,[t.createVNode(Wn,{class:"input-error-code",label:"",name:"error_code",placeholder:t.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),r[0]||(r[0]=t.createElementVNode("div",null,":",-1)),t.createVNode(Yn,{class:"input-error-message",label:"",name:"error_message",placeholder:t.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Ek={class:"partial-config-card"},Nk={class:"config-card-row-label"},Sk={class:"label-text"},vk=["data-testid"],xk=["data-testid"],Ak={key:1},Ik=["data-testid"],Pk=["data-testid"],Tk=ve(t.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(e){const{t:n,formatUnixTimeStamp:o}=Ze.createI18n("en-us",rt),r={id:{order:1},name:{order:1},type:{label:n("redis.config_card.common_fields.type_label"),hidden:!0,type:"hidden"},created_at:{label:n("redis.config_card.common_fields.created_at_label"),formatter:o,order:2},updated_at:{label:n("redis.config_card.common_fields.updated_at_label"),formatter:o,order:3}},i=e,a=d=>d!=null,l=(d,p)=>a(p)&&["password","sentinel_password"].includes(d)?"password":"text",{convertKeyToTitle:s}=ge.useStringHelpers(),c=t.computed(()=>Object.entries(i.configFields).map(([d,p])=>{var m,y,b,g;return{key:d,label:((m=r[d])==null?void 0:m.label)??s(d),value:(y=r[d])!=null&&y.formatter?r[d].formatter(p):p,type:((b=r[d])==null?void 0:b.type)??l(d,p),order:((g=r[d])==null?void 0:g.order)??100}}).sort((d,p)=>d.order-p.order).filter(d=>d.type!=="hidden")),u=pw(i.configFields,i.pluginRedisFields||[]),f=t.computed(()=>c.value.concat(u));return(d,p)=>{const m=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",Ek,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(f.value,({key:y,label:b,value:g,type:h})=>(t.openBlock(),t.createElementBlock("div",{key:y,class:"partial-config-card-row"},[t.createElementVNode("div",Nk,[t.createElementVNode("div",Sk,t.toDisplayString(b),1)]),t.createElementVNode("div",{class:"config-card-row-value","data-testid":`${y}-property-value`},[a(g)?(t.openBlock(),t.createElementBlock("div",Ak,[h==="password"?(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${y}-copy-password`},[t.createVNode(m,{format:"redacted",text:String(g)},null,8,["text"])],8,Ik)):(t.openBlock(),t.createElementBlock("div",{key:1,"data-testid":`${y}-plain-text`},t.toDisplayString(g),9,Pk))])):(t.openBlock(),t.createElementBlock("div",{key:0,"data-testid":`${y}-no-value`}," – ",8,xk))],8,vk)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]),Ok=ve(t.defineComponent({__name:"NewRedisPartialModal",props:{visible:{type:Boolean,default:!1},partialType:{type:String,default:""}},emits:["partialUpdated","partialUpdateFailed","modalClose"],setup(e,{emit:n}){const o=e,{t:r}=Ze.createI18n("en-us",rt),i=t.inject(Me.FORMS_CONFIG),a=n,{getMessageFromError:l}=ge.useErrors(),s=t.computed(()=>{switch(o.partialType){case Co.PartialType.REDIS_CE:return Co.PartialType.REDIS_EE;case Co.PartialType.REDIS_EE:return Co.PartialType.REDIS_CE;default:return}}),c=t.ref(!1),u=t.ref(),f=m=>{a("partialUpdateFailed",{message:l(m),appearance:"danger"})},d=()=>{a("partialUpdated",{message:r("plugins.free-form.redis_partial.partial_created_success_message"),appearance:"success"}),p()},p=()=>{u.value=void 0,a("modalClose"),t.nextTick(()=>{c.value=!1})};return t.watch(()=>o.visible,m=>{m&&(c.value=!0,t.nextTick(()=>{u.value="#km-modal-footer"}))}),(m,y)=>{const b=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(b,{class:"plugin-redis-partial-form","data-testid":"redis-partial-form-modal","full-screen":"",title:t.unref(r)("plugins.free-form.redis_partial.redis_partial_modal_title"),visible:c.value,onCancel:p},{footer:t.withCtx(()=>y[0]||(y[0]=[t.createElementVNode("div",{id:"km-modal-footer"},null,-1)])),default:t.withCtx(()=>[t.createVNode(t.unref(Co.RedisConfigurationForm),{"action-teleport-target":u.value,config:t.unref(i),"disabled-partial-type":s.value,"slidout-top-offset":0,onCancel:p,onError:f,onUpdate:d},null,8,["action-teleport-target","config","disabled-partial-type"])]),_:1},8,["title","visible"])}}}),[["__scopeId","data-v-ac12474e"]]),$k="#ecfcff",Bk="#f1f0ff",Vk="#52596e",Rk="#e0e4ea",Dk="#007d60",Mk="#fffce0",Lk="#6c7489",Fk="#0044f4",Uk="#5f9aff",od="#000933",$a="#d60027",Kk="#ffe5e5",jk="#00abd2",Gk="#d60067",qk="#6f28ff",rd="#afb7c5",id="#6c7489",zk="#0044f4",Hk="#eefaff",Yk="#007d60",Wk="#ecfffb",Xk="#995c00",Mo="12px",Zk="16px",Ba="20px",ad="8px",Jk="32px",ld=Symbol("redis-partial-info"),sd={konnect:{getOne:"/v2/control-planes/{controlPlaneId}/core-entities/partials/{id}",getAll:"/v2/control-planes/{controlPlaneId}/core-entities/partials"},kongManager:{getOne:"/{workspace}/partials/{id}",getAll:"/{workspace}/partials"}},cd=["host","port","connection_is_proxied","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","read_timeout","send_timeout","connect_timeout"],Qk={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},eC={key:0,class:"shared-redis-config"},tC={class:"shared-redis-config-title"},nC={class:"redis-config-select","data-testid":"redis-config-select"},oC={class:"selected-redis-config"},rC=["data-testid"],iC={class:"select-item-name","data-testid":"selected-redis-config"},aC={class:"empty-redis-config","data-testid":"empty-redis-config"},lC={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},sC="1000",cC=ve(t.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},emits:["showNewPartialModal","globalAction"],setup(e,{emit:n}){var te;const o=n,{t:r}=Ze.createI18n("en-us",rt),i=e,a=t.inject(ld),l=(a==null?void 0:a.isEditing)||!1,s=t.computed(()=>{var V;return i.redisPath?i.redisPath:(V=a==null?void 0:a.redisPath)!=null&&V.value?"$."+a.redisPath.value:"$.config.redis"}),c=i.redisType||((te=a==null?void 0:a.redisType)==null?void 0:te.value)||"all",u=t.computed(()=>{var V;return!!((V=a==null?void 0:a.redisType)!=null&&V.value)}),f=t.ref(!1),d=t.ref(null),p=t.ref(!l),{getMessageFromError:m}=ge.useErrors(),y=t.ref(i.defaultRedisConfigItem),b=t.ref({}),g=t.ref(),{value:h}=Jc("$.partials"),{value:w}=wt(s),_=t.inject(Me.FORMS_CONFIG),{debouncedQueryChange:k,loading:E,error:C,loadItems:N,results:I}=ge.useDebouncedFilter(_,sd[_.app].getAll,sC,{fetchedItemsKey:"data",searchKeys:["id","name"]}),D=t.computed(()=>C.value?m(C.value):""),G=V=>{let T=`${_.apiBaseUrl}${sd[_.app].getOne}`;return _.app==="konnect"?T=T.replace(/{controlPlaneId}/gi,(_==null?void 0:_.controlPlaneId)||""):_.app==="kongManager"&&(T=T.replace(/\/{workspace}/gi,_!=null&&_.workspace?`/${_.workspace}`:"")),T=T.replace(/{id}/gi,String(V)),T},K=t.computed(()=>{const V=(I.value||[]).map(T=>({label:T.id,name:T.name,value:T.id,type:T.type,tag:dw(T)})).filter(T=>T.type==="redis-ce"||T.type==="redis-ee");return c!=="all"?V.filter(T=>T.type===c):V}),{axiosInstance:S}=ge.useAxios(_==null?void 0:_.axiosRequestConfig),ne=()=>{p.value?(g.value&&(h.value=g.value,y.value=g.value[0].id,w.value=void 0),w!=null&&w.value&&(b.value=w.value)):(Object.keys(b.value).length&&(w.value=b.value),h!=null&&h.value&&(g.value=h.value),h.value=l?null:void 0)},x=V=>{N(),o("globalAction","notify",V)},q=V=>{o("globalAction","notify",V)},U=async V=>{if(V){y.value=V,h.value=[{id:V}],g.value=[{id:V}],w.value=void 0;try{const T=await S.get(G(V));if(T.data.config){const v=Object.assign(T.data,T.data.config);delete v.config,d.value=v}}catch(T){console.error(T)}}};return t.watch(()=>p.value,()=>{ne()}),t.onBeforeMount(()=>{var V;if(N(),i.defaultRedisConfigItem||h!=null&&h.value){const T=i.defaultRedisConfigItem||((V=h==null?void 0:h.value)==null?void 0:V[0].id);U(T),p.value=!0}else w!=null&&w.value&&(b.value=w.value)}),(V,T)=>{const v=t.resolveComponent("KBadge"),P=t.resolveComponent("KRadio"),A=t.resolveComponent("KSelect"),Y=t.resolveComponent("KCard");return u.value?(t.openBlock(),t.createBlock(Y,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:t.unref(r)("redis.title")},{default:t.withCtx(()=>[t.createElementVNode("div",Qk,[t.createVNode(P,{modelValue:p.value,"onUpdate:modelValue":T[0]||(T[0]=W=>p.value=W),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:t.unref(r)("redis.shared_configuration.description"),label:t.unref(r)("redis.shared_configuration.label"),"selected-value":!0},{default:t.withCtx(()=>[t.createVNode(v,{appearance:"success"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)("redis.shared_configuration.badge")),1)]),_:1})]),_:1},8,["modelValue","description","label"]),t.createVNode(P,{modelValue:p.value,"onUpdate:modelValue":T[1]||(T[1]=W=>p.value=W),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:t.unref(r)("redis.dedicated_configuration.description"),label:t.unref(r)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),p.value?(t.openBlock(),t.createElementBlock("div",eC,[t.createElementVNode("div",tC,t.toDisplayString(t.unref(r)("redis.shared_configuration.title")),1),t.createElementVNode("div",nC,[t.createVNode(A,{class:"redis-config-select-trigger","data-testid":"redis-config-select-trigger","enable-filtering":"","filter-function":()=>!0,items:K.value,loading:t.unref(E),"model-value":y.value,placeholder:t.unref(r)("redis.shared_configuration.selector.placeholder"),onChange:T[3]||(T[3]=W=>U(W==null?void 0:W.value)),onQueryChange:t.unref(k)},{"selected-item-template":t.withCtx(({item:W})=>[t.createElementVNode("div",oC,t.toDisplayString(W.name),1)]),"item-template":t.withCtx(({item:W})=>[t.createElementVNode("div",{class:"plugin-form-redis-configuration-dropdown-item","data-testid":`redis-configuration-dropdown-item-${W.name}`},[t.createElementVNode("span",iC,t.toDisplayString(W.name),1),t.createVNode(v,{appearance:"info",class:"select-item-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(W.tag),1)]),_:2},1024)],8,rC)]),empty:t.withCtx(()=>[t.createElementVNode("div",aC,t.toDisplayString(t.unref(r)("redis.shared_configuration.empty_state")),1)]),"dropdown-footer-text":t.withCtx(()=>[t.createElementVNode("div",{class:"new-redis-config-area","data-testid":"new-redis-config-area",onClick:T[2]||(T[2]=()=>f.value=!0)},[t.createVNode(t.unref(Se.AddIcon),{size:t.unref(Mo)},null,8,["size"]),t.createElementVNode("span",null,t.toDisplayString(t.unref(r)("redis.shared_configuration.create_new_configuration",{type:t.unref(fw)(t.unref(c))})),1)])]),_:1},8,["items","loading","model-value","placeholder","onQueryChange"])]),d.value?(t.openBlock(),t.createBlock(Tk,{key:0,"config-fields":d.value},null,8,["config-fields"])):t.createCommentVNode("",!0),D.value?(t.openBlock(),t.createElementBlock("p",lC,t.toDisplayString(D.value||t.unref(r)("redis.shared_configuration.error")),1)):t.createCommentVNode("",!0)])):(t.openBlock(),t.createBlock(gt,t.mergeProps({key:1},i,{"as-child":"","fields-order":t.unref(cd),name:s.value,"reset-label-path":"reset"}),null,16,["fields-order","name"])),t.createVNode(Ok,{"partial-type":t.unref(c),visible:f.value,onModalClose:T[4]||(T[4]=W=>f.value=!1),onPartialUpdateFailed:q,onPartialUpdated:x},null,8,["partial-type","visible"])]),_:1},8,["title"])):(t.openBlock(),t.createBlock(gt,t.mergeProps({key:1},i,{"fields-order":t.unref(cd),"hide-required-asterisk":"",name:s.value}),null,16,["fields-order","name"]))}}}),[["__scopeId","data-v-12b9ad82"]]),dC=t.defineComponent({__name:"RedisField",emits:["globalAction"],setup(e){const{formData:n}=Ye();return t.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=void 0)}),(o,r)=>(t.openBlock(),t.createBlock(td,null,{default:t.withCtx(()=>{var i;return[((i=t.unref(n).config)==null?void 0:i.strategy)==="redis"?(t.openBlock(),t.createBlock(cC,{key:0,onGlobalAction:r[0]||(r[0]=(...a)=>o.$emit("globalAction",...a))})):t.createCommentVNode("",!0)]}),_:1}))}}),uC=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change","globalAction"],setup(e,{emit:n}){const o=n,r={hasValue:a=>!!(a!=null&&a.config)};function i(a){var l;((l=a.config)==null?void 0:l.namespace)===null&&delete a.config.namespace,o("change",a)}return(a,l)=>(t.openBlock(),t.createBlock(ht,{config:r,data:a.data,schema:a.schema,tag:"div",onChange:i},{default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config","reset-label-path":"reset"},{default:t.withCtx(()=>[t.createVNode(wk),t.createVNode(Ck)]),_:1}),t.createVNode(Br,null,{default:t.withCtx(()=>[t.createVNode(pt,{name:"config.dictionary_name"}),t.createVNode(pt,{name:"config.lock_dictionary_name"}),t.createVNode(pt,{name:"config.strategy"}),t.createVNode(dC,{onGlobalAction:l[0]||(l[0]=(...s)=>a.$emit("globalAction",...s))}),t.createVNode(pt,{name:"config.namespace"}),t.createVNode(pt,{name:"config.hide_client_headers"}),t.createVNode(pt,{name:"config.disable_penalty"}),t.createVNode(pt,{name:"config.retry_after_jitter_max"}),t.createVNode(pt,{name:"config.sync_rate"})]),_:1})]),_:1},8,["data","schema"]))}}),fC=t.defineComponent({__name:"ServiceProtectionForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},emits:["globalAction"],setup(e){const n=e,o=t.useSlots();return t.provide(Me.AUTOFILL_SLOT,o==null?void 0:o[Me.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ta,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(uC,t.mergeProps(a,{onGlobalAction:i[0]||(i[0]=(...l)=>r.$emit("globalAction",...l))}),null,16)]),_:1},16))}}),pC={class:"ff-standard-layout"},mC={class:"enabled"},gC={class:"scope"},hC={key:0,class:"scope-detail"},dd=ve(t.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=e,r=t.useSlots(),i=t.computed(()=>{var g;return{fields:(g=o.formSchema)==null?void 0:g.fields.filter(h=>h.model==="enabled")}}),a=t.computed(()=>{var g;return(g=o.formSchema)==null?void 0:g.fields.find(h=>h.model==="selectionGroup")}),l=t.computed(()=>(a.value.fields||[]).map(({label:g,description:h})=>({label:g,description:h}))),s=t.computed(()=>a.value.fields[1]),c=t.computed(()=>{var h;const g=["instance_name","protocols","tags"];return{fields:(h=o.formSchema)==null?void 0:h.fields.filter(w=>g.includes(w.model))}}),u=["config"],f=t.computed(()=>{const g=o.schema;return g.fields=g.fields.filter(h=>u.includes(Object.keys(h)[0])),g}),d=t.computed(()=>{const g=["config","partials","__ui_data"];return ba(o.model,g)}),p=ba(o.formModel,["service-id","route-id","consumer-id","consumer_group-id"]),m=t.ref(Object.values(p).some(g=>!!g)),y=t.ref(!0);function b(g,h){p[h]=g,o.onModelUpdated(g,h)}return t.watch(m,g=>{g?Object.keys(p).forEach(h=>{o.onModelUpdated(p[h],h)}):Object.keys(p).forEach(h=>{o.onModelUpdated("",h)})}),(g,h)=>{const w=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",pC,[t.createVNode(t.unref(ge.EntityFormBlock),{description:g.generalInfoDescription??t.unref(n)("plugins.form.sections.general_info.description"),step:1,title:g.generalInfoTitle??t.unref(n)("plugins.form.sections.general_info.title")},t.createSlots({default:t.withCtx(()=>[t.createElementVNode("div",mC,[t.createVNode(t.unref(Me.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:i.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),t.createElementVNode("div",gC,[t.createVNode(t.unref(Oe.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":h[0]||(h[0]=_=>m.value=_),card:"","card-orientation":"horizontal"},l.value[0],{"selected-value":!1}),null,16,["modelValue"]),t.createVNode(t.unref(Oe.KRadio),t.mergeProps({modelValue:m.value,"onUpdate:modelValue":h[1]||(h[1]=_=>m.value=_),card:"","card-orientation":"horizontal"},l.value[1],{"selected-value":!0}),null,16,["modelValue"])]),m.value?(t.openBlock(),t.createElementBlock("div",hC,[t.createVNode(t.unref(Me.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:s.value,onModelUpdated:b},null,8,["model","options","schema"])])):t.createCommentVNode("",!0),t.createVNode(w,{modelValue:y.value,"onUpdate:modelValue":h[2]||(h[2]=_=>y.value=_),"trigger-label":"Show more"},{default:t.withCtx(()=>[t.createVNode(t.unref(Me.VueFormGenerator),{model:g.formModel,options:g.formOptions,schema:c.value,onModelUpdated:g.onModelUpdated},null,8,["model","options","schema","onModelUpdated"])]),_:1},8,["modelValue"])]),_:2},[r["general-info-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,r["general-info-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,r["general-info-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),t.createVNode(t.unref(ge.EntityFormBlock),{description:g.pluginConfigDescription??t.unref(n)("plugins.form.sections.plugin_config.description"),step:2,title:g.pluginConfigTitle??t.unref(n)("plugins.form.sections.plugin_config.title")},t.createSlots({default:t.withCtx(()=>[t.renderSlot(g.$slots,"default",{data:d.value,schema:f.value,onChange:h[3]||(h[3]=(..._)=>g.onFormChange&&g.onFormChange(..._))},void 0,!0)]),_:2},[r["plugin-config-title"]?{name:"title",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,r["plugin-config-description"]?{name:"description",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,r["plugin-config-extra"]?{name:"extra",fn:t.withCtx(()=>[t.renderSlot(g.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"])])}}}),[["__scopeId","data-v-8d0a8a0c"]]);/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function ud(e){return typeof e>"u"||e===null}function yC(e){return typeof e=="object"&&e!==null}function _C(e){return Array.isArray(e)?e:ud(e)?[]:[e]}function bC(e,n){var o,r,i,a;if(n)for(a=Object.keys(n),o=0,r=a.length;o<r;o+=1)i=a[o],e[i]=n[i];return e}function wC(e,n){var o="",r;for(r=0;r<n;r+=1)o+=e;return o}function kC(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var CC=ud,EC=yC,NC=_C,SC=wC,vC=kC,xC=bC,it={isNothing:CC,isObject:EC,toArray:NC,repeat:SC,isNegativeZero:vC,extend:xC};function fd(e,n){var o="",r=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(o+='in "'+e.mark.name+'" '),o+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!n&&e.mark.snippet&&(o+=`
14
14
 
15
- `+e.mark.snippet),r+" "+o):r}function Ao(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=td(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Ao.prototype=Object.create(Error.prototype),Ao.prototype.constructor=Ao,Ao.prototype.toString=function(n){return this.name+": "+td(this,n)};var rt=Ao;function Ia(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 Pa(e,n){return Xe.repeat(" ",n-e.length)+e}function tC(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=Ia(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),u),s=Xe.repeat(" ",n.indent)+Pa((e.line-c+1).toString(),f)+" | "+d.str+`
16
- `+s;for(d=Ia(e.buffer,r[l],i[l],e.position,u),s+=Xe.repeat(" ",n.indent)+Pa((e.line+1).toString(),f)+" | "+d.str+`
17
- `,s+=Xe.repeat("-",n.indent+f+3+d.pos)+`^
18
- `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)d=Ia(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),u),s+=Xe.repeat(" ",n.indent)+Pa((e.line+c+1).toString(),f)+" | "+d.str+`
19
- `;return s.replace(/\n$/,"")}var nC=tC,oC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],rC=["scalar","sequence","mapping"];function iC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function aC(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(oC.indexOf(o)===-1)throw new rt('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=iC(n.styleAliases||null),rC.indexOf(this.kind)===-1)throw new rt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var Qe=aC;function nd(e,n){var o=[];return e[n].forEach(function(r){var i=o.length;o.forEach(function(a,l){a.tag===r.tag&&a.kind===r.kind&&a.multi===r.multi&&(i=l)}),o[i]=r}),o}function lC(){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 Ta(e){return this.extend(e)}Ta.prototype.extend=function(n){var o=[],r=[];if(n instanceof Qe)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 rt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof Qe))throw new rt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new rt("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 rt("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 Qe))throw new rt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Ta.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=nd(i,"implicit"),i.compiledExplicit=nd(i,"explicit"),i.compiledTypeMap=lC(i.compiledImplicit,i.compiledExplicit),i};var od=Ta,rd=new Qe("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),id=new Qe("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),ad=new Qe("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),ld=new od({explicit:[rd,id,ad]});function sC(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function cC(){return null}function dC(e){return e===null}var sd=new Qe("tag:yaml.org,2002:null",{kind:"scalar",resolve:sC,construct:cC,predicate:dC,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function uC(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 fC(e){return e==="true"||e==="True"||e==="TRUE"}function pC(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var cd=new Qe("tag:yaml.org,2002:bool",{kind:"scalar",resolve:uC,construct:fC,predicate:pC,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 mC(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function gC(e){return 48<=e&&e<=55}function hC(e){return 48<=e&&e<=57}function yC(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(!mC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!gC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!hC(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function _C(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 bC(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!Xe.isNegativeZero(e)}var dd=new Qe("tag:yaml.org,2002:int",{kind:"scalar",resolve:yC,construct:_C,predicate:bC,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"]}}),wC=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function kC(e){return!(e===null||!wC.test(e)||e[e.length-1]==="_")}function CC(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 EC=/^[-+]?[0-9]+e/;function NC(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(Xe.isNegativeZero(e))return"-0.0";return o=e.toString(10),EC.test(o)?o.replace("e",".e"):o}function SC(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||Xe.isNegativeZero(e))}var ud=new Qe("tag:yaml.org,2002:float",{kind:"scalar",resolve:kC,construct:CC,predicate:SC,represent:NC,defaultStyle:"lowercase"}),fd=ld.extend({implicit:[sd,cd,dd,ud]}),pd=fd,md=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),gd=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 vC(e){return e===null?!1:md.exec(e)!==null||gd.exec(e)!==null}function xC(e){var n,o,r,i,a,l,s,c=0,d=null,f,u,p;if(n=md.exec(e),n===null&&(n=gd.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 AC(e){return e.toISOString()}var hd=new Qe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:vC,construct:xC,instanceOf:Date,represent:AC});function IC(e){return e==="<<"||e===null}var yd=new Qe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:IC}),Oa=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
20
- \r`;function PC(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=Oa;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 TC(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=Oa,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 OC(e){var n="",o=0,r,i,a=e.length,l=Oa;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 $C(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var _d=new Qe("tag:yaml.org,2002:binary",{kind:"scalar",resolve:PC,construct:TC,predicate:$C,represent:OC}),BC=Object.prototype.hasOwnProperty,VC=Object.prototype.toString;function RC(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,VC.call(i)!=="[object Object]")return!1;for(a in i)if(BC.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 DC(e){return e!==null?e:[]}var bd=new Qe("tag:yaml.org,2002:omap",{kind:"sequence",resolve:RC,construct:DC}),MC=Object.prototype.toString;function FC(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],MC.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function LC(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 wd=new Qe("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:FC,construct:LC}),UC=Object.prototype.hasOwnProperty;function KC(e){if(e===null)return!0;var n,o=e;for(n in o)if(UC.call(o,n)&&o[n]!==null)return!1;return!0}function jC(e){return e!==null?e:{}}var kd=new Qe("tag:yaml.org,2002:set",{kind:"mapping",resolve:KC,construct:jC}),$a=pd.extend({implicit:[hd,yd],explicit:[_d,bd,wd,kd]}),Wt=Object.prototype.hasOwnProperty,Br=1,Cd=2,Ed=3,Vr=4,Ba=1,qC=2,Nd=3,GC=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,zC=/[\x85\u2028\u2029]/,HC=/[,\[\]\{\}]/,Sd=/^(?:!|!!|![a-z\-]+!)$/i,vd=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function xd(e){return Object.prototype.toString.call(e)}function At(e){return e===10||e===13}function hn(e){return e===9||e===32}function at(e){return e===9||e===32||e===10||e===13}function Kn(e){return e===44||e===91||e===93||e===123||e===125}function YC(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function WC(e){return e===120?2:e===117?4:e===85?8:0}function XC(e){return 48<=e&&e<=57?e-48:-1}function Ad(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
21
- `:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"…":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function ZC(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}for(var Id=new Array(256),Pd=new Array(256),jn=0;jn<256;jn++)Id[jn]=Ad(jn)?1:0,Pd[jn]=Ad(jn);function JC(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||$a,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 Td(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=nC(o),new rt(n,o)}function Ee(e,n){throw Td(e,n)}function Rr(e,n){e.onWarning&&e.onWarning.call(null,Td(e,n))}var Od={YAML:function(n,o,r){var i,a,l;n.version!==null&&Ee(n,"duplication of %YAML directive"),r.length!==1&&Ee(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Ee(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Ee(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&Rr(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Ee(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],Sd.test(i)||Ee(n,"ill-formed tag handle (first argument) of the TAG directive"),Wt.call(n.tagMap,i)&&Ee(n,'there is a previously declared suffix for "'+i+'" tag handle'),vd.test(a)||Ee(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Ee(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||Ee(e,"expected valid JSON character");else GC.test(s)&&Ee(e,"the stream contains non-printable characters");e.result+=s}}function $d(e,n,o,r){var i,a,l,s;for(Xe.isObject(o)||Ee(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 qn(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])&&Ee(e,"nested arrays are not supported inside keys"),typeof i=="object"&&xd(i[d])==="[object Object]"&&(i[d]="[object Object]");if(typeof i=="object"&&xd(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)$d(e,n,a[d],o);else $d(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,Ee(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 Va(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++):Ee(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function qe(e,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;hn(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(Va(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&&Rr(e,"deficient indentation"),r}function Dr(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||at(o)))}function Ra(e,n){n===1?e.result+=" ":n>1&&(e.result+=Xe.repeat(`
22
- `,n-1))}function QC(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),at(m)||Kn(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),at(i)||o&&Kn(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),at(i)||o&&Kn(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),at(r))break}else{if(e.position===e.lineStart&&Dr(e)||o&&Kn(m))break;if(At(m))if(c=e.line,d=e.lineStart,f=e.lineIndent,qe(e,!1,-1),e.lineIndent>=n){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=d,e.lineIndent=f;break}}s&&(Xt(e,a,l,!1),Ra(e,e.line-c),a=l=e.position,s=!1),hn(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 eE(e,n){var o,r,i;if(o=e.input.charCodeAt(e.position),o!==39)return!1;for(e.kind="scalar",e.result="",e.position++,r=i=e.position;(o=e.input.charCodeAt(e.position))!==0;)if(o===39)if(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),Ra(e,qe(e,!1,n)),r=i=e.position):e.position===e.lineStart&&Dr(e)?Ee(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Ee(e,"unexpected end of the stream within a single quoted scalar")}function tE(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))qe(e,!1,n);else if(s<256&&Id[s])e.result+=Pd[s],e.position++;else if((l=WC(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=YC(s))>=0?a=(a<<4)+l:Ee(e,"expected hexadecimal character");e.result+=ZC(a),e.position++}else Ee(e,"unknown escape sequence");o=r=e.position}else At(s)?(Xt(e,o,r,!0),Ra(e,qe(e,!1,n)),o=r=e.position):e.position===e.lineStart&&Dr(e)?Ee(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Ee(e,"unexpected end of the stream within a double quoted scalar")}function nE(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,d,f,u,p,m,h=Object.create(null),_,g,y,w;if(w=e.input.charCodeAt(e.position),w===91)f=93,m=!1,s=[];else if(w===123)f=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),w=e.input.charCodeAt(++e.position);w!==0;){if(qe(e,!0,n),w=e.input.charCodeAt(e.position),w===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?w===44&&Ee(e,"expected the node content, but found ','"):Ee(e,"missed comma between flow collection entries"),g=_=y=null,u=p=!1,w===63&&(d=e.input.charCodeAt(e.position+1),at(d)&&(u=p=!0,e.position++,qe(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,Gn(e,n,Br,!1,!0),g=e.tag,_=e.result,qe(e,!0,n),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(u=!0,w=e.input.charCodeAt(++e.position),qe(e,!0,n),Gn(e,n,Br,!1,!0),y=e.result),m?qn(e,s,h,g,_,y,r,i,a):u?s.push(qn(e,null,h,g,_,y,r,i,a)):s.push(_),qe(e,!0,n),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}Ee(e,"unexpected end of the stream within a flow collection")}function oE(e,n){var o,r,i=Ba,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)Ba===i?i=u===43?Nd:qC:Ee(e,"repeat of a chomping mode identifier");else if((f=XC(u))>=0)f===0?Ee(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Ee(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(hn(u)){do u=e.input.charCodeAt(++e.position);while(hn(u));if(u===35)do u=e.input.charCodeAt(++e.position);while(!At(u)&&u!==0)}for(;u!==0;){for(Va(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===Nd?e.result+=Xe.repeat(`
23
- `,a?1+c:c):i===Ba&&a&&(e.result+=`
24
- `);break}for(r?hn(u)?(d=!0,e.result+=Xe.repeat(`
25
- `,a?1+c:c)):d?(d=!1,e.result+=Xe.repeat(`
26
- `,c+1)):c===0?a&&(e.result+=" "):e.result+=Xe.repeat(`
27
- `,c):e.result+=Xe.repeat(`
28
- `,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 Bd(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,Ee(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!at(l))));){if(s=!0,e.position++,qe(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,Gn(e,n,Ed,!1,!0),a.push(e.result),qe(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)Ee(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 rE(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,_=null,g=!1,y=!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,Ee(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(w===63||w===58)&&at(r))w===63?(g&&(qn(e,u,p,m,h,null,l,s,c),m=h=_=null),y=!0,g=!0,i=!0):g?(g=!1,i=!0):Ee(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,!Gn(e,o,Cd,!1,!0))break;if(e.line===a){for(w=e.input.charCodeAt(e.position);hn(w);)w=e.input.charCodeAt(++e.position);if(w===58)w=e.input.charCodeAt(++e.position),at(w)||Ee(e,"a whitespace character is expected after the key-value separator within a block mapping"),g&&(qn(e,u,p,m,h,null,l,s,c),m=h=_=null),y=!0,g=!1,i=!1,m=e.tag,h=e.result;else if(y)Ee(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=d,e.anchor=f,!0}else if(y)Ee(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),Gn(e,n,Vr,!0,i)&&(g?h=e.result:_=e.result),g||(qn(e,u,p,m,h,_,l,s,c),m=h=_=null),qe(e,!0,-1),w=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&w!==0)Ee(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return g&&qn(e,u,p,m,h,null,l,s,c),y&&(e.tag=d,e.anchor=f,e.kind="mapping",e.result=u),y}function iE(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&&Ee(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)):Ee(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!at(l);)l===33&&(r?Ee(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),Sd.test(i)||Ee(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),HC.test(a)&&Ee(e,"tag suffix cannot contain flow indicator characters")}a&&!vd.test(a)&&Ee(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Ee(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:Ee(e,'undeclared tag handle "'+i+'"'),!0}function aE(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&Ee(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!at(o)&&!Kn(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&Ee(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function lE(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&&!at(r)&&!Kn(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&Ee(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),Wt.call(e.anchorMap,o)||Ee(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],qe(e,!0,-1),!0}function Gn(e,n,o,r,i){var a,l,s,c=1,d=!1,f=!1,u,p,m,h,_,g;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=Vr===o||Ed===o,r&&qe(e,!0,-1)&&(d=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;iE(e)||aE(e);)qe(e,!0,-1)?(d=!0,s=a,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)):s=!1;if(s&&(s=d||i),(c===1||Vr===o)&&(Br===o||Cd===o?_=n:_=n+1,g=e.position-e.lineStart,c===1?s&&(Bd(e,g)||rE(e,g,_))||nE(e,_)?f=!0:(l&&oE(e,_)||eE(e,_)||tE(e,_)?f=!0:lE(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&Ee(e,"alias node should not have any properties")):QC(e,_,Br===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&Bd(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"&&Ee(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||Ee(e,"unknown tag !<"+e.tag+">"),e.result!==null&&h.kind!==e.kind&&Ee(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)):Ee(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 sE(e){var n=e.position,o,r,i,a=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(qe(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(a=!0,l=e.input.charCodeAt(++e.position),o=e.position;l!==0&&!at(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&Ee(e,"directive name must not be less than one character in length");l!==0;){for(;hn(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&&!at(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&Va(e),Wt.call(Od,r)?Od[r](e,r,i):Rr(e,'unknown document directive "'+r+'"')}if(qe(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,qe(e,!0,-1)):a&&Ee(e,"directives end mark is expected"),Gn(e,e.lineIndent-1,Vr,!1,!0),qe(e,!0,-1),e.checkLineBreaks&&zC.test(e.input.slice(n,e.position))&&Rr(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Dr(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,qe(e,!0,-1));return}if(e.position<e.length-1)Ee(e,"end of the stream or a document separator is expected");else return}function Vd(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
29
- `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new JC(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Ee(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;)sE(o);return o.documents}function cE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=Vd(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function dE(e,n){var o=Vd(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new rt("expected a single document in the stream, but found more")}}var uE=cE,fE=dE,Rd={loadAll:uE,load:fE},Dd=Object.prototype.toString,Md=Object.prototype.hasOwnProperty,Da=65279,pE=9,Io=10,mE=13,gE=32,hE=33,yE=34,Ma=35,_E=37,bE=38,wE=39,kE=42,Fd=44,CE=45,Mr=58,EE=61,NE=62,SE=63,vE=64,Ld=91,Ud=93,xE=96,Kd=123,AE=124,jd=125,tt={};tt[0]="\\0",tt[7]="\\a",tt[8]="\\b",tt[9]="\\t",tt[10]="\\n",tt[11]="\\v",tt[12]="\\f",tt[13]="\\r",tt[27]="\\e",tt[34]='\\"',tt[92]="\\\\",tt[133]="\\N",tt[160]="\\_",tt[8232]="\\L",tt[8233]="\\P";var IE=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],PE=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function TE(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&&Md.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function OE(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 rt("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+Xe.repeat("0",r-n.length)+n}var $E=1,Po=2;function BE(e){this.schema=e.schema||$a,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=Xe.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=TE(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==='"'?Po:$E,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 qd(e,n){for(var o=Xe.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
15
+ `+e.mark.snippet),r+" "+o):r}function Lo(e,n){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=n,this.message=fd(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}Lo.prototype=Object.create(Error.prototype),Lo.prototype.constructor=Lo,Lo.prototype.toString=function(n){return this.name+": "+fd(this,n)};var mt=Lo;function Va(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 Ra(e,n){return it.repeat(" ",n-e.length)+e}function AC(e,n){if(n=Object.create(n||null),!e.buffer)return null;n.maxLength||(n.maxLength=79),typeof n.indent!="number"&&(n.indent=1),typeof n.linesBefore!="number"&&(n.linesBefore=3),typeof n.linesAfter!="number"&&(n.linesAfter=2);for(var o=/\r?\n|\r|\0/g,r=[0],i=[],a,l=-1;a=o.exec(e.buffer);)i.push(a.index),r.push(a.index+a[0].length),e.position<=a.index&&l<0&&(l=r.length-2);l<0&&(l=r.length-1);var s="",c,u,f=Math.min(e.line+n.linesAfter,i.length).toString().length,d=n.maxLength-(n.indent+f+3);for(c=1;c<=n.linesBefore&&!(l-c<0);c++)u=Va(e.buffer,r[l-c],i[l-c],e.position-(r[l]-r[l-c]),d),s=it.repeat(" ",n.indent)+Ra((e.line-c+1).toString(),f)+" | "+u.str+`
16
+ `+s;for(u=Va(e.buffer,r[l],i[l],e.position,d),s+=it.repeat(" ",n.indent)+Ra((e.line+1).toString(),f)+" | "+u.str+`
17
+ `,s+=it.repeat("-",n.indent+f+3+u.pos)+`^
18
+ `,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)u=Va(e.buffer,r[l+c],i[l+c],e.position-(r[l]-r[l+c]),d),s+=it.repeat(" ",n.indent)+Ra((e.line+c+1).toString(),f)+" | "+u.str+`
19
+ `;return s.replace(/\n$/,"")}var IC=AC,PC=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],TC=["scalar","sequence","mapping"];function OC(e){var n={};return e!==null&&Object.keys(e).forEach(function(o){e[o].forEach(function(r){n[String(r)]=o})}),n}function $C(e,n){if(n=n||{},Object.keys(n).forEach(function(o){if(PC.indexOf(o)===-1)throw new mt('Unknown option "'+o+'" is met in definition of "'+e+'" YAML type.')}),this.options=n,this.tag=e,this.kind=n.kind||null,this.resolve=n.resolve||function(){return!0},this.construct=n.construct||function(o){return o},this.instanceOf=n.instanceOf||null,this.predicate=n.predicate||null,this.represent=n.represent||null,this.representName=n.representName||null,this.defaultStyle=n.defaultStyle||null,this.multi=n.multi||!1,this.styleAliases=OC(n.styleAliases||null),TC.indexOf(this.kind)===-1)throw new mt('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var ct=$C;function pd(e,n){var o=[];return e[n].forEach(function(r){var i=o.length;o.forEach(function(a,l){a.tag===r.tag&&a.kind===r.kind&&a.multi===r.multi&&(i=l)}),o[i]=r}),o}function BC(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},n,o;function r(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(n=0,o=arguments.length;n<o;n+=1)arguments[n].forEach(r);return e}function Da(e){return this.extend(e)}Da.prototype.extend=function(n){var o=[],r=[];if(n instanceof ct)r.push(n);else if(Array.isArray(n))r=r.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(o=o.concat(n.implicit)),n.explicit&&(r=r.concat(n.explicit));else throw new mt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(a){if(!(a instanceof ct))throw new mt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(a.loadKind&&a.loadKind!=="scalar")throw new mt("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(a.multi)throw new mt("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),r.forEach(function(a){if(!(a instanceof ct))throw new mt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(Da.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(r),i.compiledImplicit=pd(i,"implicit"),i.compiledExplicit=pd(i,"explicit"),i.compiledTypeMap=BC(i.compiledImplicit,i.compiledExplicit),i};var md=Da,gd=new ct("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),hd=new ct("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),yd=new ct("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),_d=new md({explicit:[gd,hd,yd]});function VC(e){if(e===null)return!0;var n=e.length;return n===1&&e==="~"||n===4&&(e==="null"||e==="Null"||e==="NULL")}function RC(){return null}function DC(e){return e===null}var bd=new ct("tag:yaml.org,2002:null",{kind:"scalar",resolve:VC,construct:RC,predicate:DC,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function MC(e){if(e===null)return!1;var n=e.length;return n===4&&(e==="true"||e==="True"||e==="TRUE")||n===5&&(e==="false"||e==="False"||e==="FALSE")}function LC(e){return e==="true"||e==="True"||e==="TRUE"}function FC(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var wd=new ct("tag:yaml.org,2002:bool",{kind:"scalar",resolve:MC,construct:LC,predicate:FC,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function UC(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function KC(e){return 48<=e&&e<=55}function jC(e){return 48<=e&&e<=57}function GC(e){if(e===null)return!1;var n=e.length,o=0,r=!1,i;if(!n)return!1;if(i=e[o],(i==="-"||i==="+")&&(i=e[++o]),i==="0"){if(o+1===n)return!0;if(i=e[++o],i==="b"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(i!=="0"&&i!=="1")return!1;r=!0}return r&&i!=="_"}if(i==="x"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!UC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=e[o],i!=="_"){if(!KC(e.charCodeAt(o)))return!1;r=!0}return r&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=e[o],i!=="_"){if(!jC(e.charCodeAt(o)))return!1;r=!0}return!(!r||i==="_")}function qC(e){var n=e,o=1,r;if(n.indexOf("_")!==-1&&(n=n.replace(/_/g,"")),r=n[0],(r==="-"||r==="+")&&(r==="-"&&(o=-1),n=n.slice(1),r=n[0]),n==="0")return 0;if(r==="0"){if(n[1]==="b")return o*parseInt(n.slice(2),2);if(n[1]==="x")return o*parseInt(n.slice(2),16);if(n[1]==="o")return o*parseInt(n.slice(2),8)}return o*parseInt(n,10)}function zC(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!it.isNegativeZero(e)}var kd=new ct("tag:yaml.org,2002:int",{kind:"scalar",resolve:GC,construct:qC,predicate:zC,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),HC=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function YC(e){return!(e===null||!HC.test(e)||e[e.length-1]==="_")}function WC(e){var n,o;return n=e.replace(/_/g,"").toLowerCase(),o=n[0]==="-"?-1:1,"+-".indexOf(n[0])>=0&&(n=n.slice(1)),n===".inf"?o===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:n===".nan"?NaN:o*parseFloat(n,10)}var XC=/^[-+]?[0-9]+e/;function ZC(e,n){var o;if(isNaN(e))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(n){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(it.isNegativeZero(e))return"-0.0";return o=e.toString(10),XC.test(o)?o.replace("e",".e"):o}function JC(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||it.isNegativeZero(e))}var Cd=new ct("tag:yaml.org,2002:float",{kind:"scalar",resolve:YC,construct:WC,predicate:JC,represent:ZC,defaultStyle:"lowercase"}),Ed=_d.extend({implicit:[bd,wd,kd,Cd]}),Nd=Ed,Sd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),vd=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function QC(e){return e===null?!1:Sd.exec(e)!==null||vd.exec(e)!==null}function eE(e){var n,o,r,i,a,l,s,c=0,u=null,f,d,p;if(n=Sd.exec(e),n===null&&(n=vd.exec(e)),n===null)throw new Error("Date resolve error");if(o=+n[1],r=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(o,r,i));if(a=+n[4],l=+n[5],s=+n[6],n[7]){for(c=n[7].slice(0,3);c.length<3;)c+="0";c=+c}return n[9]&&(f=+n[10],d=+(n[11]||0),u=(f*60+d)*6e4,n[9]==="-"&&(u=-u)),p=new Date(Date.UTC(o,r,i,a,l,s,c)),u&&p.setTime(p.getTime()-u),p}function tE(e){return e.toISOString()}var xd=new ct("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:QC,construct:eE,instanceOf:Date,represent:tE});function nE(e){return e==="<<"||e===null}var Ad=new ct("tag:yaml.org,2002:merge",{kind:"scalar",resolve:nE}),Ma=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
20
+ \r`;function oE(e){if(e===null)return!1;var n,o,r=0,i=e.length,a=Ma;for(o=0;o<i;o++)if(n=a.indexOf(e.charAt(o)),!(n>64)){if(n<0)return!1;r+=6}return r%8===0}function rE(e){var n,o,r=e.replace(/[\r\n=]/g,""),i=r.length,a=Ma,l=0,s=[];for(n=0;n<i;n++)n%4===0&&n&&(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)),l=l<<6|a.indexOf(r.charAt(n));return o=i%4*6,o===0?(s.push(l>>16&255),s.push(l>>8&255),s.push(l&255)):o===18?(s.push(l>>10&255),s.push(l>>2&255)):o===12&&s.push(l>>4&255),new Uint8Array(s)}function iE(e){var n="",o=0,r,i,a=e.length,l=Ma;for(r=0;r<a;r++)r%3===0&&r&&(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]),o=(o<<8)+e[r];return i=a%3,i===0?(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]):i===2?(n+=l[o>>10&63],n+=l[o>>4&63],n+=l[o<<2&63],n+=l[64]):i===1&&(n+=l[o>>2&63],n+=l[o<<4&63],n+=l[64],n+=l[64]),n}function aE(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var Id=new ct("tag:yaml.org,2002:binary",{kind:"scalar",resolve:oE,construct:rE,predicate:aE,represent:iE}),lE=Object.prototype.hasOwnProperty,sE=Object.prototype.toString;function cE(e){if(e===null)return!0;var n=[],o,r,i,a,l,s=e;for(o=0,r=s.length;o<r;o+=1){if(i=s[o],l=!1,sE.call(i)!=="[object Object]")return!1;for(a in i)if(lE.call(i,a))if(!l)l=!0;else return!1;if(!l)return!1;if(n.indexOf(a)===-1)n.push(a);else return!1}return!0}function dE(e){return e!==null?e:[]}var Pd=new ct("tag:yaml.org,2002:omap",{kind:"sequence",resolve:cE,construct:dE}),uE=Object.prototype.toString;function fE(e){if(e===null)return!0;var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1){if(r=l[n],uE.call(r)!=="[object Object]"||(i=Object.keys(r),i.length!==1))return!1;a[n]=[i[0],r[i[0]]]}return!0}function pE(e){if(e===null)return[];var n,o,r,i,a,l=e;for(a=new Array(l.length),n=0,o=l.length;n<o;n+=1)r=l[n],i=Object.keys(r),a[n]=[i[0],r[i[0]]];return a}var Td=new ct("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:fE,construct:pE}),mE=Object.prototype.hasOwnProperty;function gE(e){if(e===null)return!0;var n,o=e;for(n in o)if(mE.call(o,n)&&o[n]!==null)return!1;return!0}function hE(e){return e!==null?e:{}}var Od=new ct("tag:yaml.org,2002:set",{kind:"mapping",resolve:gE,construct:hE}),La=Nd.extend({implicit:[xd,Ad],explicit:[Id,Pd,Td,Od]}),on=Object.prototype.hasOwnProperty,Vr=1,$d=2,Bd=3,Rr=4,Fa=1,yE=2,Vd=3,_E=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,bE=/[\x85\u2028\u2029]/,wE=/[,\[\]\{\}]/,Rd=/^(?:!|!!|![a-z\-]+!)$/i,Dd=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Md(e){return Object.prototype.toString.call(e)}function Dt(e){return e===10||e===13}function vn(e){return e===9||e===32}function yt(e){return e===9||e===32||e===10||e===13}function Xn(e){return e===44||e===91||e===93||e===123||e===125}function kE(e){var n;return 48<=e&&e<=57?e-48:(n=e|32,97<=n&&n<=102?n-97+10:-1)}function CE(e){return e===120?2:e===117?4:e===85?8:0}function EE(e){return 48<=e&&e<=57?e-48:-1}function Ld(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
21
+ `:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"…":e===95?" ":e===76?"\u2028":e===80?"\u2029":""}function NE(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}for(var Fd=new Array(256),Ud=new Array(256),Zn=0;Zn<256;Zn++)Fd[Zn]=Ld(Zn)?1:0,Ud[Zn]=Ld(Zn);function SE(e,n){this.input=e,this.filename=n.filename||null,this.schema=n.schema||La,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 Kd(e,n){var o={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return o.snippet=IC(o),new mt(n,o)}function Ie(e,n){throw Kd(e,n)}function Dr(e,n){e.onWarning&&e.onWarning.call(null,Kd(e,n))}var jd={YAML:function(n,o,r){var i,a,l;n.version!==null&&Ie(n,"duplication of %YAML directive"),r.length!==1&&Ie(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(r[0]),i===null&&Ie(n,"ill-formed argument of the YAML directive"),a=parseInt(i[1],10),l=parseInt(i[2],10),a!==1&&Ie(n,"unacceptable YAML version of the document"),n.version=r[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&Dr(n,"unsupported YAML version of the document")},TAG:function(n,o,r){var i,a;r.length!==2&&Ie(n,"TAG directive accepts exactly two arguments"),i=r[0],a=r[1],Rd.test(i)||Ie(n,"ill-formed tag handle (first argument) of the TAG directive"),on.call(n.tagMap,i)&&Ie(n,'there is a previously declared suffix for "'+i+'" tag handle'),Dd.test(a)||Ie(n,"ill-formed tag prefix (second argument) of the TAG directive");try{a=decodeURIComponent(a)}catch{Ie(n,"tag prefix is malformed: "+a)}n.tagMap[i]=a}};function rn(e,n,o,r){var i,a,l,s;if(n<o){if(s=e.input.slice(n,o),r)for(i=0,a=s.length;i<a;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||Ie(e,"expected valid JSON character");else _E.test(s)&&Ie(e,"the stream contains non-printable characters");e.result+=s}}function Gd(e,n,o,r){var i,a,l,s;for(it.isObject(o)||Ie(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)a=i[l],on.call(n,a)||(n[a]=o[a],r[a]=!0)}function Jn(e,n,o,r,i,a,l,s,c){var u,f;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),u=0,f=i.length;u<f;u+=1)Array.isArray(i[u])&&Ie(e,"nested arrays are not supported inside keys"),typeof i=="object"&&Md(i[u])==="[object Object]"&&(i[u]="[object Object]");if(typeof i=="object"&&Md(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),r==="tag:yaml.org,2002:merge")if(Array.isArray(a))for(u=0,f=a.length;u<f;u+=1)Gd(e,n,a[u],o);else Gd(e,n,a,o);else!e.json&&!on.call(o,i)&&on.call(n,i)&&(e.line=l||e.line,e.lineStart=s||e.lineStart,e.position=c||e.position,Ie(e,"duplicated mapping key")),i==="__proto__"?Object.defineProperty(n,i,{configurable:!0,enumerable:!0,writable:!0,value:a}):n[i]=a,delete o[i];return n}function Ua(e){var n;n=e.input.charCodeAt(e.position),n===10?e.position++:n===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):Ie(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function Je(e,n,o){for(var r=0,i=e.input.charCodeAt(e.position);i!==0;){for(;vn(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(Dt(i))for(Ua(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&&Dr(e,"deficient indentation"),r}function Mr(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||yt(o)))}function Ka(e,n){n===1?e.result+=" ":n>1&&(e.result+=it.repeat(`
22
+ `,n-1))}function vE(e,n,o){var r,i,a,l,s,c,u,f,d=e.kind,p=e.result,m;if(m=e.input.charCodeAt(e.position),yt(m)||Xn(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),yt(i)||o&&Xn(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),yt(i)||o&&Xn(i))break}else if(m===35){if(r=e.input.charCodeAt(e.position-1),yt(r))break}else{if(e.position===e.lineStart&&Mr(e)||o&&Xn(m))break;if(Dt(m))if(c=e.line,u=e.lineStart,f=e.lineIndent,Je(e,!1,-1),e.lineIndent>=n){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=l,e.line=c,e.lineStart=u,e.lineIndent=f;break}}s&&(rn(e,a,l,!1),Ka(e,e.line-c),a=l=e.position,s=!1),vn(m)||(l=e.position+1),m=e.input.charCodeAt(++e.position)}return rn(e,a,l,!1),e.result?!0:(e.kind=d,e.result=p,!1)}function xE(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(rn(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 Dt(o)?(rn(e,r,i,!0),Ka(e,Je(e,!1,n)),r=i=e.position):e.position===e.lineStart&&Mr(e)?Ie(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);Ie(e,"unexpected end of the stream within a single quoted scalar")}function AE(e,n){var o,r,i,a,l,s;if(s=e.input.charCodeAt(e.position),s!==34)return!1;for(e.kind="scalar",e.result="",e.position++,o=r=e.position;(s=e.input.charCodeAt(e.position))!==0;){if(s===34)return rn(e,o,e.position,!0),e.position++,!0;if(s===92){if(rn(e,o,e.position,!0),s=e.input.charCodeAt(++e.position),Dt(s))Je(e,!1,n);else if(s<256&&Fd[s])e.result+=Ud[s],e.position++;else if((l=CE(s))>0){for(i=l,a=0;i>0;i--)s=e.input.charCodeAt(++e.position),(l=kE(s))>=0?a=(a<<4)+l:Ie(e,"expected hexadecimal character");e.result+=NE(a),e.position++}else Ie(e,"unknown escape sequence");o=r=e.position}else Dt(s)?(rn(e,o,r,!0),Ka(e,Je(e,!1,n)),o=r=e.position):e.position===e.lineStart&&Mr(e)?Ie(e,"unexpected end of the document within a double quoted scalar"):(e.position++,r=e.position)}Ie(e,"unexpected end of the stream within a double quoted scalar")}function IE(e,n){var o=!0,r,i,a,l=e.tag,s,c=e.anchor,u,f,d,p,m,y=Object.create(null),b,g,h,w;if(w=e.input.charCodeAt(e.position),w===91)f=93,m=!1,s=[];else if(w===123)f=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),w=e.input.charCodeAt(++e.position);w!==0;){if(Je(e,!0,n),w=e.input.charCodeAt(e.position),w===f)return e.position++,e.tag=l,e.anchor=c,e.kind=m?"mapping":"sequence",e.result=s,!0;o?w===44&&Ie(e,"expected the node content, but found ','"):Ie(e,"missed comma between flow collection entries"),g=b=h=null,d=p=!1,w===63&&(u=e.input.charCodeAt(e.position+1),yt(u)&&(d=p=!0,e.position++,Je(e,!0,n))),r=e.line,i=e.lineStart,a=e.position,Qn(e,n,Vr,!1,!0),g=e.tag,b=e.result,Je(e,!0,n),w=e.input.charCodeAt(e.position),(p||e.line===r)&&w===58&&(d=!0,w=e.input.charCodeAt(++e.position),Je(e,!0,n),Qn(e,n,Vr,!1,!0),h=e.result),m?Jn(e,s,y,g,b,h,r,i,a):d?s.push(Jn(e,null,y,g,b,h,r,i,a)):s.push(b),Je(e,!0,n),w=e.input.charCodeAt(e.position),w===44?(o=!0,w=e.input.charCodeAt(++e.position)):o=!1}Ie(e,"unexpected end of the stream within a flow collection")}function PE(e,n){var o,r,i=Fa,a=!1,l=!1,s=n,c=0,u=!1,f,d;if(d=e.input.charCodeAt(e.position),d===124)r=!1;else if(d===62)r=!0;else return!1;for(e.kind="scalar",e.result="";d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)Fa===i?i=d===43?Vd:yE:Ie(e,"repeat of a chomping mode identifier");else if((f=EE(d))>=0)f===0?Ie(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Ie(e,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(vn(d)){do d=e.input.charCodeAt(++e.position);while(vn(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!Dt(d)&&d!==0)}for(;d!==0;){for(Ua(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!l||e.lineIndent<s)&&d===32;)e.lineIndent++,d=e.input.charCodeAt(++e.position);if(!l&&e.lineIndent>s&&(s=e.lineIndent),Dt(d)){c++;continue}if(e.lineIndent<s){i===Vd?e.result+=it.repeat(`
23
+ `,a?1+c:c):i===Fa&&a&&(e.result+=`
24
+ `);break}for(r?vn(d)?(u=!0,e.result+=it.repeat(`
25
+ `,a?1+c:c)):u?(u=!1,e.result+=it.repeat(`
26
+ `,c+1)):c===0?a&&(e.result+=" "):e.result+=it.repeat(`
27
+ `,c):e.result+=it.repeat(`
28
+ `,a?1+c:c),a=!0,l=!0,c=0,o=e.position;!Dt(d)&&d!==0;)d=e.input.charCodeAt(++e.position);rn(e,o,e.position,!1)}return!0}function qd(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,Ie(e,"tab characters must not be used in indentation")),!(c!==45||(l=e.input.charCodeAt(e.position+1),!yt(l))));){if(s=!0,e.position++,Je(e,!0,-1)&&e.lineIndent<=n){a.push(null),c=e.input.charCodeAt(e.position);continue}if(o=e.line,Qn(e,n,Bd,!1,!0),a.push(e.result),Je(e,!0,-1),c=e.input.charCodeAt(e.position),(e.line===o||e.lineIndent>n)&&c!==0)Ie(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 TE(e,n,o){var r,i,a,l,s,c,u=e.tag,f=e.anchor,d={},p=Object.create(null),m=null,y=null,b=null,g=!1,h=!1,w;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=d),w=e.input.charCodeAt(e.position);w!==0;){if(!g&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,Ie(e,"tab characters must not be used in indentation")),r=e.input.charCodeAt(e.position+1),a=e.line,(w===63||w===58)&&yt(r))w===63?(g&&(Jn(e,d,p,m,y,null,l,s,c),m=y=b=null),h=!0,g=!0,i=!0):g?(g=!1,i=!0):Ie(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,!Qn(e,o,$d,!1,!0))break;if(e.line===a){for(w=e.input.charCodeAt(e.position);vn(w);)w=e.input.charCodeAt(++e.position);if(w===58)w=e.input.charCodeAt(++e.position),yt(w)||Ie(e,"a whitespace character is expected after the key-value separator within a block mapping"),g&&(Jn(e,d,p,m,y,null,l,s,c),m=y=b=null),h=!0,g=!1,i=!1,m=e.tag,y=e.result;else if(h)Ie(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=u,e.anchor=f,!0}else if(h)Ie(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=u,e.anchor=f,!0}if((e.line===a||e.lineIndent>n)&&(g&&(l=e.line,s=e.lineStart,c=e.position),Qn(e,n,Rr,!0,i)&&(g?y=e.result:b=e.result),g||(Jn(e,d,p,m,y,b,l,s,c),m=y=b=null),Je(e,!0,-1),w=e.input.charCodeAt(e.position)),(e.line===a||e.lineIndent>n)&&w!==0)Ie(e,"bad indentation of a mapping entry");else if(e.lineIndent<n)break}return g&&Jn(e,d,p,m,y,null,l,s,c),h&&(e.tag=u,e.anchor=f,e.kind="mapping",e.result=d),h}function OE(e){var n,o=!1,r=!1,i,a,l;if(l=e.input.charCodeAt(e.position),l!==33)return!1;if(e.tag!==null&&Ie(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)):Ie(e,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!yt(l);)l===33&&(r?Ie(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(n-1,e.position+1),Rd.test(i)||Ie(e,"named tag handle cannot contain such characters"),r=!0,n=e.position+1)),l=e.input.charCodeAt(++e.position);a=e.input.slice(n,e.position),wE.test(a)&&Ie(e,"tag suffix cannot contain flow indicator characters")}a&&!Dd.test(a)&&Ie(e,"tag name cannot contain such characters: "+a);try{a=decodeURIComponent(a)}catch{Ie(e,"tag name is malformed: "+a)}return o?e.tag=a:on.call(e.tagMap,i)?e.tag=e.tagMap[i]+a:i==="!"?e.tag="!"+a:i==="!!"?e.tag="tag:yaml.org,2002:"+a:Ie(e,'undeclared tag handle "'+i+'"'),!0}function $E(e){var n,o;if(o=e.input.charCodeAt(e.position),o!==38)return!1;for(e.anchor!==null&&Ie(e,"duplication of an anchor property"),o=e.input.charCodeAt(++e.position),n=e.position;o!==0&&!yt(o)&&!Xn(o);)o=e.input.charCodeAt(++e.position);return e.position===n&&Ie(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(n,e.position),!0}function BE(e){var n,o,r;if(r=e.input.charCodeAt(e.position),r!==42)return!1;for(r=e.input.charCodeAt(++e.position),n=e.position;r!==0&&!yt(r)&&!Xn(r);)r=e.input.charCodeAt(++e.position);return e.position===n&&Ie(e,"name of an alias node must contain at least one character"),o=e.input.slice(n,e.position),on.call(e.anchorMap,o)||Ie(e,'unidentified alias "'+o+'"'),e.result=e.anchorMap[o],Je(e,!0,-1),!0}function Qn(e,n,o,r,i){var a,l,s,c=1,u=!1,f=!1,d,p,m,y,b,g;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,a=l=s=Rr===o||Bd===o,r&&Je(e,!0,-1)&&(u=!0,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)),c===1)for(;OE(e)||$E(e);)Je(e,!0,-1)?(u=!0,s=a,e.lineIndent>n?c=1:e.lineIndent===n?c=0:e.lineIndent<n&&(c=-1)):s=!1;if(s&&(s=u||i),(c===1||Rr===o)&&(Vr===o||$d===o?b=n:b=n+1,g=e.position-e.lineStart,c===1?s&&(qd(e,g)||TE(e,g,b))||IE(e,b)?f=!0:(l&&PE(e,b)||xE(e,b)||AE(e,b)?f=!0:BE(e)?(f=!0,(e.tag!==null||e.anchor!==null)&&Ie(e,"alias node should not have any properties")):vE(e,b,Vr===o)&&(f=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):c===0&&(f=s&&qd(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"&&Ie(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),d=0,p=e.implicitTypes.length;d<p;d+=1)if(y=e.implicitTypes[d],y.resolve(e.result)){e.result=y.construct(e.result),e.tag=y.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(on.call(e.typeMap[e.kind||"fallback"],e.tag))y=e.typeMap[e.kind||"fallback"][e.tag];else for(y=null,m=e.typeMap.multi[e.kind||"fallback"],d=0,p=m.length;d<p;d+=1)if(e.tag.slice(0,m[d].tag.length)===m[d].tag){y=m[d];break}y||Ie(e,"unknown tag !<"+e.tag+">"),e.result!==null&&y.kind!==e.kind&&Ie(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+y.kind+'", not "'+e.kind+'"'),y.resolve(e.result,e.tag)?(e.result=y.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):Ie(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||f}function VE(e){var n=e.position,o,r,i,a=!1,l;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(l=e.input.charCodeAt(e.position))!==0&&(Je(e,!0,-1),l=e.input.charCodeAt(e.position),!(e.lineIndent>0||l!==37));){for(a=!0,l=e.input.charCodeAt(++e.position),o=e.position;l!==0&&!yt(l);)l=e.input.charCodeAt(++e.position);for(r=e.input.slice(o,e.position),i=[],r.length<1&&Ie(e,"directive name must not be less than one character in length");l!==0;){for(;vn(l);)l=e.input.charCodeAt(++e.position);if(l===35){do l=e.input.charCodeAt(++e.position);while(l!==0&&!Dt(l));break}if(Dt(l))break;for(o=e.position;l!==0&&!yt(l);)l=e.input.charCodeAt(++e.position);i.push(e.input.slice(o,e.position))}l!==0&&Ua(e),on.call(jd,r)?jd[r](e,r,i):Dr(e,'unknown document directive "'+r+'"')}if(Je(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,Je(e,!0,-1)):a&&Ie(e,"directives end mark is expected"),Qn(e,e.lineIndent-1,Rr,!1,!0),Je(e,!0,-1),e.checkLineBreaks&&bE.test(e.input.slice(n,e.position))&&Dr(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&Mr(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,Je(e,!0,-1));return}if(e.position<e.length-1)Ie(e,"end of the stream or a document separator is expected");else return}function zd(e,n){e=String(e),n=n||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
29
+ `),e.charCodeAt(0)===65279&&(e=e.slice(1)));var o=new SE(e,n),r=e.indexOf("\0");for(r!==-1&&(o.position=r,Ie(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)VE(o);return o.documents}function RE(e,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var r=zd(e,o);if(typeof n!="function")return r;for(var i=0,a=r.length;i<a;i+=1)n(r[i])}function DE(e,n){var o=zd(e,n);if(o.length!==0){if(o.length===1)return o[0];throw new mt("expected a single document in the stream, but found more")}}var ME=RE,LE=DE,Hd={loadAll:ME,load:LE},Yd=Object.prototype.toString,Wd=Object.prototype.hasOwnProperty,ja=65279,FE=9,Fo=10,UE=13,KE=32,jE=33,GE=34,Ga=35,qE=37,zE=38,HE=39,YE=42,Xd=44,WE=45,Lr=58,XE=61,ZE=62,JE=63,QE=64,Zd=91,Jd=93,eN=96,Qd=123,tN=124,eu=125,ft={};ft[0]="\\0",ft[7]="\\a",ft[8]="\\b",ft[9]="\\t",ft[10]="\\n",ft[11]="\\v",ft[12]="\\f",ft[13]="\\r",ft[27]="\\e",ft[34]='\\"',ft[92]="\\\\",ft[133]="\\N",ft[160]="\\_",ft[8232]="\\L",ft[8233]="\\P";var nN=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],oN=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function rN(e,n){var o,r,i,a,l,s,c;if(n===null)return{};for(o={},r=Object.keys(n),i=0,a=r.length;i<a;i+=1)l=r[i],s=String(n[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=e.compiledTypeMap.fallback[l],c&&Wd.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function iN(e){var n,o,r;if(n=e.toString(16).toUpperCase(),e<=255)o="x",r=2;else if(e<=65535)o="u",r=4;else if(e<=4294967295)o="U",r=8;else throw new mt("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+it.repeat("0",r-n.length)+n}var aN=1,Uo=2;function lN(e){this.schema=e.schema||La,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=it.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=rN(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?Uo:aN,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function tu(e,n){for(var o=it.repeat(" ",n),r=0,i=-1,a="",l,s=e.length;r<s;)i=e.indexOf(`
30
30
  `,r),i===-1?(l=e.slice(r),r=s):(l=e.slice(r,i+1),r=i+1),l.length&&l!==`
31
- `&&(a+=o),a+=l;return a}function Fa(e,n){return`
32
- `+Xe.repeat(" ",e.indent*n)}function VE(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 Fr(e){return e===gE||e===pE}function To(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==Da||65536<=e&&e<=1114111}function Gd(e){return To(e)&&e!==Da&&e!==mE&&e!==Io}function zd(e,n,o){var r=Gd(e),i=r&&!Fr(e);return(o?r:r&&e!==Fd&&e!==Ld&&e!==Ud&&e!==Kd&&e!==jd)&&e!==Ma&&!(n===Mr&&!i)||Gd(n)&&!Fr(n)&&e===Ma||n===Mr&&i}function RE(e){return To(e)&&e!==Da&&!Fr(e)&&e!==CE&&e!==SE&&e!==Mr&&e!==Fd&&e!==Ld&&e!==Ud&&e!==Kd&&e!==jd&&e!==Ma&&e!==bE&&e!==kE&&e!==hE&&e!==AE&&e!==EE&&e!==NE&&e!==wE&&e!==yE&&e!==_E&&e!==vE&&e!==xE}function DE(e){return!Fr(e)&&e!==Mr}function Oo(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 Hd(e){var n=/^\n* /;return n.test(e)}var Yd=1,La=2,Wd=3,Xd=4,zn=5;function ME(e,n,o,r,i,a,l,s){var c,d=0,f=null,u=!1,p=!1,m=r!==-1,h=-1,_=RE(Oo(e,0))&&DE(Oo(e,e.length-1));if(n||l)for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Oo(e,c),!To(d))return zn;_=_&&zd(d,f,s),f=d}else{for(c=0;c<e.length;d>=65536?c+=2:c++){if(d=Oo(e,c),d===Io)u=!0,m&&(p=p||c-h-1>r&&e[h+1]!==" ",h=c);else if(!To(d))return zn;_=_&&zd(d,f,s),f=d}p=p||m&&c-h-1>r&&e[h+1]!==" "}return!u&&!p?_&&!l&&!i(e)?Yd:a===Po?zn:La:o>9&&Hd(e)?zn:l?a===Po?zn:La:p?Xd:Wd}function FE(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Po?'""':"''";if(!e.noCompatMode&&(IE.indexOf(n)!==-1||PE.test(n)))return e.quotingType===Po?'"'+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 VE(e,d)}switch(ME(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case Yd:return n;case La:return"'"+n.replace(/'/g,"''")+"'";case Wd:return"|"+Zd(n,e.indent)+Jd(qd(n,a));case Xd:return">"+Zd(n,e.indent)+Jd(qd(LE(n,l),a));case zn:return'"'+UE(n)+'"';default:throw new rt("impossible error: invalid scalar style")}}()}function Zd(e,n){var o=Hd(e)?String(n):"",r=e[e.length-1]===`
31
+ `&&(a+=o),a+=l;return a}function qa(e,n){return`
32
+ `+it.repeat(" ",e.indent*n)}function sN(e,n){var o,r,i;for(o=0,r=e.implicitTypes.length;o<r;o+=1)if(i=e.implicitTypes[o],i.resolve(n))return!0;return!1}function Fr(e){return e===KE||e===FE}function Ko(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==ja||65536<=e&&e<=1114111}function nu(e){return Ko(e)&&e!==ja&&e!==UE&&e!==Fo}function ou(e,n,o){var r=nu(e),i=r&&!Fr(e);return(o?r:r&&e!==Xd&&e!==Zd&&e!==Jd&&e!==Qd&&e!==eu)&&e!==Ga&&!(n===Lr&&!i)||nu(n)&&!Fr(n)&&e===Ga||n===Lr&&i}function cN(e){return Ko(e)&&e!==ja&&!Fr(e)&&e!==WE&&e!==JE&&e!==Lr&&e!==Xd&&e!==Zd&&e!==Jd&&e!==Qd&&e!==eu&&e!==Ga&&e!==zE&&e!==YE&&e!==jE&&e!==tN&&e!==XE&&e!==ZE&&e!==HE&&e!==GE&&e!==qE&&e!==QE&&e!==eN}function dN(e){return!Fr(e)&&e!==Lr}function jo(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 ru(e){var n=/^\n* /;return n.test(e)}var iu=1,za=2,au=3,lu=4,eo=5;function uN(e,n,o,r,i,a,l,s){var c,u=0,f=null,d=!1,p=!1,m=r!==-1,y=-1,b=cN(jo(e,0))&&dN(jo(e,e.length-1));if(n||l)for(c=0;c<e.length;u>=65536?c+=2:c++){if(u=jo(e,c),!Ko(u))return eo;b=b&&ou(u,f,s),f=u}else{for(c=0;c<e.length;u>=65536?c+=2:c++){if(u=jo(e,c),u===Fo)d=!0,m&&(p=p||c-y-1>r&&e[y+1]!==" ",y=c);else if(!Ko(u))return eo;b=b&&ou(u,f,s),f=u}p=p||m&&c-y-1>r&&e[y+1]!==" "}return!d&&!p?b&&!l&&!i(e)?iu:a===Uo?eo:za:o>9&&ru(e)?eo:l?a===Uo?eo:za:p?lu:au}function fN(e,n,o,r,i){e.dump=function(){if(n.length===0)return e.quotingType===Uo?'""':"''";if(!e.noCompatMode&&(nN.indexOf(n)!==-1||oN.test(n)))return e.quotingType===Uo?'"'+n+'"':"'"+n+"'";var a=e.indent*Math.max(1,o),l=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-a),s=r||e.flowLevel>-1&&o>=e.flowLevel;function c(u){return sN(e,u)}switch(uN(n,s,e.indent,l,c,e.quotingType,e.forceQuotes&&!r,i)){case iu:return n;case za:return"'"+n.replace(/'/g,"''")+"'";case au:return"|"+su(n,e.indent)+cu(tu(n,a));case lu:return">"+su(n,e.indent)+cu(tu(pN(n,l),a));case eo:return'"'+mN(n)+'"';default:throw new mt("impossible error: invalid scalar style")}}()}function su(e,n){var o=ru(e)?String(n):"",r=e[e.length-1]===`
33
33
  `,i=r&&(e[e.length-2]===`
34
34
  `||e===`
35
35
  `),a=i?"+":r?"":"-";return o+a+`
36
- `}function Jd(e){return e[e.length-1]===`
37
- `?e.slice(0,-1):e}function LE(e,n){for(var o=/(\n+)([^\n]*)/g,r=function(){var d=e.indexOf(`
38
- `);return d=d!==-1?d:e.length,o.lastIndex=d,Qd(e.slice(0,d),n)}(),i=e[0]===`
36
+ `}function cu(e){return e[e.length-1]===`
37
+ `?e.slice(0,-1):e}function pN(e,n){for(var o=/(\n+)([^\n]*)/g,r=function(){var u=e.indexOf(`
38
+ `);return u=u!==-1?u:e.length,o.lastIndex=u,du(e.slice(0,u),n)}(),i=e[0]===`
39
39
  `||e[0]===" ",a,l;l=o.exec(e);){var s=l[1],c=l[2];a=c[0]===" ",r+=s+(!i&&!a&&c!==""?`
40
- `:"")+Qd(c,n),i=a}return r}function Qd(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+=`
40
+ `:"")+du(c,n),i=a}return r}function du(e,n){if(e===""||e[0]===" ")return e;for(var o=/ [^ ]/g,r,i=0,a,l=0,s=0,c="";r=o.exec(e);)s=r.index,s-i>n&&(a=l>i?l:s,c+=`
41
41
  `+e.slice(i,a),i=a+1),l=s;return c+=`
42
42
  `,e.length-i>n&&l>i?c+=e.slice(i,l)+`
43
- `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function UE(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=Oo(e,i),r=tt[o],!r&&To(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||OE(o);return n}function KE(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)),(Lt(e,n,s,!1,!1)||typeof s>"u"&&Lt(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function eu(e,n,o,r){var i="",a=e.tag,l,s,c;for(l=0,s=o.length;l<s;l+=1)c=o[l],e.replacer&&(c=e.replacer.call(o,String(l),c)),(Lt(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&Lt(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=Fa(e,n)),e.dump&&Io===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function jE(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)),Lt(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Lt(e,n,d,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function qE(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 rt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=Fa(e,n)),d=l[s],f=o[d],e.replacer&&(f=e.replacer.call(o,d,f)),Lt(e,n+1,d,!0,!0,!0)&&(u=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,u&&(e.dump&&Io===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,u&&(p+=Fa(e,n)),Lt(e,n+1,f,!0,u)&&(e.dump&&Io===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function tu(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,Dd.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(Md.call(s.represent,c))r=s.represent[c](n,c);else throw new rt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function Lt(e,n,o,r,i,a,l){e.tag=null,e.dump=o,tu(e,o,!1)||tu(e,o,!0);var s=Dd.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?(qE(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(jE(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?eu(e,n-1,e.dump,i):eu(e,n,e.dump,i),p&&(e.dump="&ref_"+u+e.dump)):(KE(e,n,e.dump),p&&(e.dump="&ref_"+u+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&FE(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new rt("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 GE(e,n){var o=[],r=[],i,a;for(Ua(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function Ua(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)Ua(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)Ua(e[r[i]],n,o)}function zE(e,n){n=n||{};var o=new BE(n);o.noRefs||GE(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),Lt(o,0,r,!0,!0)?o.dump+`
44
- `:""}var HE=zE,YE={dump:HE};function Ka(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 WE=Qe,XE=od,ZE=ld,Lr=fd,JE=pd,QE=$a,eN=Rd.load,tN=Rd.loadAll,nN=YE.dump,oN=rt,rN={binary:_d,float:ud,map:ad,null:sd,pairs:wd,set:kd,timestamp:hd,bool:cd,int:dd,merge:yd,omap:bd,seq:id,str:rd},iN=Ka("safeLoad","load"),aN=Ka("safeLoadAll","loadAll"),lN=Ka("safeDump","dump"),ja={Type:WE,Schema:XE,FAILSAFE_SCHEMA:ZE,JSON_SCHEMA:Lr,CORE_SCHEMA:JE,DEFAULT_SCHEMA:QE,load:eN,loadAll:tN,dump:nN,YAMLException:oN,types:rN,safeLoad:iN,safeLoadAll:aN,safeDump:lN};const qa=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
43
+ `+e.slice(l+1):c+=e.slice(i),c.slice(1)}function mN(e){for(var n="",o=0,r,i=0;i<e.length;o>=65536?i+=2:i++)o=jo(e,i),r=ft[o],!r&&Ko(o)?(n+=e[i],o>=65536&&(n+=e[i+1])):n+=r||iN(o);return n}function gN(e,n,o){var r="",i=e.tag,a,l,s;for(a=0,l=o.length;a<l;a+=1)s=o[a],e.replacer&&(s=e.replacer.call(o,String(a),s)),(Xt(e,n,s,!1,!1)||typeof s>"u"&&Xt(e,n,null,!1,!1))&&(r!==""&&(r+=","+(e.condenseFlow?"":" ")),r+=e.dump);e.tag=i,e.dump="["+r+"]"}function uu(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)),(Xt(e,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&Xt(e,n+1,null,!0,!0,!1,!0))&&((!r||i!=="")&&(i+=qa(e,n)),e.dump&&Fo===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=a,e.dump=i||"[]"}function hN(e,n,o){var r="",i=e.tag,a=Object.keys(o),l,s,c,u,f;for(l=0,s=a.length;l<s;l+=1)f="",r!==""&&(f+=", "),e.condenseFlow&&(f+='"'),c=a[l],u=o[c],e.replacer&&(u=e.replacer.call(o,c,u)),Xt(e,n,c,!1,!1)&&(e.dump.length>1024&&(f+="? "),f+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),Xt(e,n,u,!1,!1)&&(f+=e.dump,r+=f));e.tag=i,e.dump="{"+r+"}"}function yN(e,n,o,r){var i="",a=e.tag,l=Object.keys(o),s,c,u,f,d,p;if(e.sortKeys===!0)l.sort();else if(typeof e.sortKeys=="function")l.sort(e.sortKeys);else if(e.sortKeys)throw new mt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!r||i!=="")&&(p+=qa(e,n)),u=l[s],f=o[u],e.replacer&&(f=e.replacer.call(o,u,f)),Xt(e,n+1,u,!0,!0,!0)&&(d=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,d&&(e.dump&&Fo===e.dump.charCodeAt(0)?p+="?":p+="? "),p+=e.dump,d&&(p+=qa(e,n)),Xt(e,n+1,f,!0,d)&&(e.dump&&Fo===e.dump.charCodeAt(0)?p+=":":p+=": ",p+=e.dump,i+=p));e.tag=a,e.dump=i||"{}"}function fu(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,Yd.call(s.represent)==="[object Function]")r=s.represent(n,c);else if(Wd.call(s.represent,c))r=s.represent[c](n,c);else throw new mt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');e.dump=r}return!0}return!1}function Xt(e,n,o,r,i,a,l){e.tag=null,e.dump=o,fu(e,o,!1)||fu(e,o,!0);var s=Yd.call(e.dump),c=r,u;r&&(r=e.flowLevel<0||e.flowLevel>n);var f=s==="[object Object]"||s==="[object Array]",d,p;if(f&&(d=e.duplicates.indexOf(o),p=d!==-1),(e.tag!==null&&e.tag!=="?"||p||e.indent!==2&&n>0)&&(i=!1),p&&e.usedDuplicates[d])e.dump="*ref_"+d;else{if(f&&p&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),s==="[object Object]")r&&Object.keys(e.dump).length!==0?(yN(e,n,e.dump,i),p&&(e.dump="&ref_"+d+e.dump)):(hN(e,n,e.dump),p&&(e.dump="&ref_"+d+" "+e.dump));else if(s==="[object Array]")r&&e.dump.length!==0?(e.noArrayIndent&&!l&&n>0?uu(e,n-1,e.dump,i):uu(e,n,e.dump,i),p&&(e.dump="&ref_"+d+e.dump)):(gN(e,n,e.dump),p&&(e.dump="&ref_"+d+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&fN(e,e.dump,n,a,c);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new mt("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(u=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?u="!"+u:u.slice(0,18)==="tag:yaml.org,2002:"?u="!!"+u.slice(18):u="!<"+u+">",e.dump=u+" "+e.dump)}return!0}function _N(e,n){var o=[],r=[],i,a;for(Ha(e,o,r),i=0,a=r.length;i<a;i+=1)n.duplicates.push(o[r[i]]);n.usedDuplicates=new Array(a)}function Ha(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)Ha(e[i],n,o);else for(r=Object.keys(e),i=0,a=r.length;i<a;i+=1)Ha(e[r[i]],n,o)}function bN(e,n){n=n||{};var o=new lN(n);o.noRefs||_N(e,o);var r=e;return o.replacer&&(r=o.replacer.call({"":r},"",r)),Xt(o,0,r,!0,!0)?o.dump+`
44
+ `:""}var wN=bN,kN={dump:wN};function Ya(e,n){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var CN=ct,EN=md,NN=_d,Ur=Ed,SN=Nd,vN=La,xN=Hd.load,AN=Hd.loadAll,IN=kN.dump,PN=mt,TN={binary:Id,float:Cd,map:yd,null:bd,pairs:Td,set:Od,timestamp:xd,bool:wd,int:kd,merge:Ad,omap:Pd,seq:hd,str:gd},ON=Ya("safeLoad","load"),$N=Ya("safeLoadAll","loadAll"),BN=Ya("safeDump","dump"),Wa={Type:CN,Schema:EN,FAILSAFE_SCHEMA:NN,JSON_SCHEMA:Ur,CORE_SCHEMA:SN,DEFAULT_SCHEMA:vN,load:xN,loadAll:AN,dump:IN,YAMLException:PN,types:TN,safeLoad:ON,safeLoadAll:$N,safeDump:BN};const Xa=Object.freeze(Object.defineProperty({__proto__:null,authenticate:`nodes:
45
45
  - name: STATIC_INPUTS
46
46
  type: static
47
47
  values:
@@ -115,13 +115,13 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
115
115
  type: exit
116
116
  input: API
117
117
  status: 200
118
- `},Symbol.toStringTag,{value:"Module"})),sN={class:"dk-code-editor"},cN={class:"examples-content"},dN={ref:"editor-root",class:"editor"},Ga="YAML Syntax",uN="datakit.insert-example",fN=we(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const{t:r}=je.createI18n("en-us",We),{formData:i}=Fe(),a=o,l=t.useTemplateRef("editor-root"),s=t.shallowRef(null);function c(f){const u=s.value,p=u==null?void 0:u.getModel();if(!u||!p)return;const m=qa[f];u.getValue()!==m&&(u.pushUndoStop(),u.executeEdits(uN,[{range:p.getFullModelRange(),text:m}]),u.pushUndoStop()),d()}function d(){const f=s.value,u=f==null?void 0:f.getModel();!f||!u||(f.setPosition(u.getFullModelRange().getEndPosition()),f.focus())}return t.onMounted(()=>{const f=gr.editor.create(l.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});if(s.value=f,i.config&&Object.keys(i.config).length>0){const u={...i.config};u.nodes&&u.nodes.length===0&&delete u.nodes;const p=Object.keys(u).length===0?"":ja.dump(t.toRaw(u),{schema:Lr,noArrayIndent:!0});f.setValue(p),d()}f.onDidChangeModelContent(()=>{const u=f.getModel(),p=f.getValue()||"";try{const m=ja.load(p,{schema:Lr,json:!0});gr.editor.setModelMarkers(u,Ga,[]),i.config=m,a("change",m)}catch(m){const{message:h,mark:_}=m,{line:g,column:y}=_||{line:0,column:0},w=h.split(`
119
- `)[0],b=[{startLineNumber:g+1,startColumn:y+1,endLineNumber:g+1,endColumn:y+2,message:w,severity:gr.MarkerSeverity.Error,source:Ga}];gr.editor.setModelMarkers(u,Ga,b),a("error",w)}})}),t.onBeforeUnmount(()=>{var f;(f=s.value)==null||f.dispose()}),n({setExampleCode:c}),(f,u)=>(t.openBlock(),t.createElementBlock("div",sN,[t.createVNode(t.unref(xe.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(Ce.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",cN,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(qa,(p,m)=>t.createVNode(t.unref(xe.KButton),{key:m,appearance:"secondary",size:"small",onClick:h=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${m}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),t.createElementVNode("div",dN,null,512)]))}}),[["__scopeId","data-v-5f51e876"]]),nu=44,pN=220,ou=366,mN=1e3,gN=nu+parseFloat(Wc),ru=["request","service_request","service_response","response","vault"],Hn=ru,iu=["call","jq","exit","property","static","branch","cache"],au=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],$o="application/x-datakit+json",Ur={delete:["Delete"],undo:["Mod","Z"],redo:{mac:["Mod","Shift","Z"],windows:["Mod","Y"],linux:["Mod","Shift","Z"]},copy:["Mod","C"],paste:["Mod","V"],duplicate:["Mod","D"]},{t:za}=je.createI18n("en-us",We);function gt(e){return za(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function yn(e){return za(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function hN(e){return za(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const Bo={call:{type:"call",summary:yn("call"),description:gt("call"),icon:Ce.NetworkIcon,io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}}},jq:{type:"jq",summary:yn("jq"),description:gt("jq"),icon:Ce.CodeblockIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},exit:{type:"exit",summary:yn("exit"),description:gt("exit"),icon:Ce.GatewayIcon,io:{input:{fields:[{name:"headers"},{name:"body"}]}}},property:{type:"property",summary:yn("property"),description:gt("property"),icon:Ce.StackIcon,io:{input:{fields:[],configurable:!0},output:{fields:[]}}},static:{type:"static",summary:yn("static"),description:gt("static"),icon:Ce.VitalsIcon,io:{output:{fields:[],configurable:!0}}},branch:{type:"branch",summary:yn("branch"),description:gt("branch"),icon:Ce.ArrowSplitIcon},cache:{type:"cache",summary:yn("cache"),description:gt("cache"),icon:Ce.CachedIcon}},Vo={request:{type:"request",icon:Ce.CloudIcon,description:gt("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_request:{type:"service_request",description:gt("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}}},service_response:{type:"service_response",icon:Ce.CloudIcon,description:gt("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}}},response:{type:"response",description:gt("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}}},vault:{type:"vault",icon:Ce.KeyIcon,io:{output:{fields:[],configurable:!0}},hidden:!0}},lu=Object.keys(Vo),Ha=e=>lu.includes(e),wt=e=>lu.includes(e),yN=e=>iu.includes(e),su=e=>wt(e.type);function _n(e){return Rn(e)}function Yn(e){return`${e}:${Ir()}`}function Kr(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function cu(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function Ro(e){return wt(e)?Vo[e]:Bo[e]}function du(e){var i,a,l,s,c,d;const n=Ro(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 uu(e){return(e??[]).map(n=>({id:Yn("field"),name:n}))}function Zt(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function Jt(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function Ya(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function fu(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function _N(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=Vo[e];return{name:e,phase:n,position:{x:0,y:0},fields:du(o.type),expanded:{},hidden:o.hidden}}function pu(e,n){const r=(yN(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function bN(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:d,redoStack:f}=Ke.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let u;function p(b){var v;(v=n==null?void 0:n.onHistoryChange)==null||v.call(n,b,e.value)}function m(b){if(!b){u=void 0,o(),p("commit");return}if(b!=="*"&&u!==b){u=b,o(),p("commit");return}o(),d.value.shift(),p("commit")}function h(){r(),u=void 0,p("undo")}function _(){i(),u=void 0,p("redo")}function g(){s(),u=void 0,p("clear")}function y(){c(),u=void 0,p("reset")}function w(){r(),f.value.shift(),u=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:h,redo:_,clear:g,reset:y,revert:w}}function wN(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function kN(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function CN(e){const n=Object.entries(e);if(n.length===0)return;const o={};for(const[r,i]of n)o[r]=i;return o}function mu(e,n){var p,m,h,_;const o=((p=e.config)==null?void 0:p.nodes)??[],r=((m=e.__ui_data)==null?void 0:m.nodes)??[],i=new Map(r.map(g=>[g.name,g])),a=[],l=[],s=new Map,c=[],d=new Map,f=g=>{const y=new Set,w=[...g];for(;w.length>0;){const b=w.shift();if(!y.has(b)&&(y.add(b),Ha(b)||(s.get(b).phase="request"),!!d.has(b)))for(const v of d.get(b))y.has(v)||w.push(v)}};let u=!1;for(const g of o){const y=i.get(g.name);!y&&!u&&(u=!0);const w=hu({type:g.type,configNode:g,uiNode:y,pluginData:e});a.push(w),s.set(w.name,w)}for(const g of Hn)if(!s.has(g)){let y=i.get(g);y||(u||(u=!0),y=_N(g));const w=hu({type:g,uiNode:y,pluginData:e});a.push(w),s.set(w.name,w)}for(const g of o)SN(g,c);for(const g of c){const y=s.get(g.source),w=s.get(g.target);if(!y||!w){y||console.warn(`[initEditorState] skip: source "${g.source}" not found`),w||console.warn(`[initEditorState] skip: target "${g.target}" not found`);continue}d.has(g.source)||d.set(g.source,new Set),d.get(g.source).add(g.target),d.has(g.target)||d.set(g.target,new Set),d.get(g.target).add(g.source),l.push({id:Yn("edge"),source:y.id,sourceField:(h=Zt(y,"output",g.sourceField))==null?void 0:h.id,target:w.id,targetField:(_=Zt(w,"input",g.targetField))==null?void 0:_.id})}return f(["request","service_request"]),{nodes:a,edges:l,pendingLayout:u?n?"keepHistory":"clearHistory":!1,pendingFitView:!0}}function gu(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=du(n),c=Ro(n);return{id:Yn("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:uu((a==null?void 0:a.input)??s.input),output:uu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?_n(l):{}}}function EN(e){return wt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function hu({type:e,configNode:n,uiNode:o,pluginData:r}){return gu({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??EN(e),position:o==null?void 0:o.position,fields:vN({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:xN({type:e,configNode:n,pluginData:r})})}function NN(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return _n(s)}function SN(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=Kr(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}=Kr(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=Kr(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}=Kr(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function vN({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,d,f;const i=Ro(e),a=i==null?void 0:i.io;if(!a)return;const l={};if((s=a.input)!=null&&s.configurable&&(n?l.input=((c=n.fields)==null?void 0:c.input)??[]:o!=null&&o.inputs&&(l.input=Object.keys(o.inputs))),(d=a.output)!=null&&d.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const u=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>u.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>u.add(p)),u.size&&(l.output=Array.from(u))}e==="vault"&&(l.output=kN(r))}return Object.keys(l).length?l:void 0}function xN({type:e,configNode:n,pluginData:o}){return e==="vault"?wN(o):n?NN(n):void 0}function AN(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=fu(d,c.sourceField)&&!Ya(d,c.sourceField),p=Ya(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};Ya(u,d.sourceField)||f.push("source handle is not an output field"),fu(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 _=jr(o.value,d);return Wa(_)&&f.push("connection introduces a cycle"),f.length?{ok:!1,errors:f}:{ok:!0}}function a(){const c=[];for(const d of Hn)[...n.value.values()].some(f=>f.name===d)||c.push(`missing implicit node "${d}"`);for(const d of o.value){const f=n.value.get(d.source);n.value.get(d.target).name==="request"&&c.push(`edge "${d.id}" targets "request"`),f.name==="response"&&c.push(`edge "${d.id}" sources from "response"`)}return Wa(jr(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:jr}}function Wa(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 jr(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[yu,IN]=Ke.createInjectionState(function(n,o={}){const r=t.ref(mu(n)),i=t.ref(),a=t.ref(!1),l=t.ref(!1),s=bN(r,{capacity:200,clone:_n,onHistoryChange:C=>{var x;C!=="clear"&&((x=o.onChange)==null||x.call(o,le(),ue(),ce()))}}),c=t.ref(!1),d=t.ref(new Set);function f(){r.value.pendingLayout=!1,s.commit("*")}function u(C=!0){r.value.pendingFitView!==C&&(r.value.pendingFitView=C,s.commit("*"))}const p=t.computed(()=>new Map(r.value.nodes.map(C=>[C.id,C]))),m=t.computed(()=>new Map(r.value.nodes.map(C=>[C.name,C]))),h=t.computed(()=>{const C=new Map,x=new Map;for(const k of r.value.edges)C.set(k.id,k),x.has(k.source)||x.set(k.source,new Set),x.get(k.source).add(k.id),x.has(k.target)||x.set(k.target,new Set),x.get(k.target).add(k.id);return{edgeMapById:C,edgeIdMapByNodeId:x}}),_=t.computed(()=>h.value.edgeMapById),g=t.computed(()=>h.value.edgeIdMapByNodeId),y=t.computed(()=>new Set(r.value.nodes.map(C=>C.name))),{canonicalizeConnection:w,validateConnection:b,validateGraph:v,isValidConnection:S,isValidVueFlowConnection:N}=AN(r);function I(C){return p.value.get(C)}function O(C){return m.value.get(C)}function F(C){return _.value.get(C)}function H(C){if(!g.value.has(C))return[];const x=[];return g.value.get(C).forEach(k=>{const $=F(k);$&&x.push($)}),x}function q(C){return H(C).filter(x=>x.target===C)}function E(C){return H(C).filter(x=>x.source===C)}const te=t.computed(()=>i.value?I(i.value):void 0);function P(C){i.value=C}function G(C){if(wt(C.type))throw new Error("[createNode] implicit nodes are fixed.");return gu({type:C.type,name:C.name||(wt(C.type)?void 0:pu(C.type,y.value)),phase:C.phase,position:C.position,fields:C.fields,config:C.config})}function R(C,x=!0){const k=G(C);if(k)return r.value.nodes.push(k),x&&s.commit(),c.value=!0,k.id}function K(C,x,k=!0){const $=I(C);if(!$||wt($.type))return;const A={..._n($),id:Yn("node"),name:pu($.name,y.value),position:x??{x:$.position.x+20,y:$.position.y+20}};return r.value.nodes.push(A),k&&s.commit(),c.value=!0,A.id}function V(C,x=!0){r.value.edges=r.value.edges.filter($=>$.source!==C&&$.target!==C),r.value.nodes=r.value.nodes.filter($=>$.id!==C),i.value===C&&(i.value=void 0);const k=v();k.ok||console.warn("[removeNode] topology invalid:",k.errors.join("; ")),x&&s.commit()}function M(C,x,k=!0,$){const A=I(C);if(A){if(Ha(A.name)){console.warn("[renameNode] implicit node name is reserved.");return}A.name=x,k&&s.commit($)}}function D(C,x,k=!0){const $=I(C);$&&($.position={...x},k&&s.commit())}function L(C,x,k,$=!0,A){const z=I(C);if(!z)return;const X=k??!z.expanded[x];X!==!!z.expanded[x]&&(z.expanded[x]=X,$&&s.commit(A??`toggle:${C}:${x}`))}function j(C,x,k=!0,$){const A=I(C);A&&(A.config=_n(x),k&&s.commit($))}function Z(C,x,k,$=!0){const A=I(C);if(!A)return;const z=A.fields[x];if(z.some(X=>X.name===k)){console.warn(`[addField] field "${k}" already exists on ${x}.`);return}z.push({id:Yn("field"),name:k}),x==="input"?A.fields.input=z:A.fields.output=z,$&&s.commit()}function W(C,x,k,$=!0){const A=I(C);if(!A)return;const z=A.fields.input,X=A.fields.output,B=z.find(ee=>ee.id===x)??X.find(ee=>ee.id===x);B&&(B.name=k,$&&s.commit())}function ne(C,x,k=!0,$=!0){const A=I(C);if(!A)return;const z=A.fields.input,X=A.fields.output,B=z.findIndex(me=>me.id===x);B>=0&&z.splice(B,1);const ee=X.findIndex(me=>me.id===x);ee>=0&&X.splice(ee,1),A.fields.input=z,A.fields.output=X,k&&(r.value.edges=r.value.edges.filter(me=>me.sourceField!==x&&me.targetField!==x));const U=v();U.ok||console.warn("[removeField] topology invalid:",U.errors.join("; ")),$&&s.commit()}function ie(C,x=!0){const k=w(C),$=b(k);if(!$.ok){console.warn("[connectEdge] invalid connection:",$.errors.join("; "));return}const A={id:Yn("edge"),...k};r.value.edges.push(A);const z=v();if(!z.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",z.errors.join("; "));return}return x&&s.commit(),A.id}function de(C,x,k=!0){ye(C,!1),ie(x,!1),k&&s.commit()}function ye(C,x=!0){const k=r.value.edges.findIndex(z=>z.id===C);if(k<0)return;const $=r.value.edges[k];r.value.edges.splice(k,1);const A=v();if(!A.ok){r.value.edges.splice(k,0,$),console.warn("[disconnectEdge] topology invalid:",A.errors.join("; "));return}x&&s.commit()}function Q(C,x=!0){const k=q(C);for(const $ of k)ye($.id,!1);x&&s.commit()}function oe(C,x=!0){const k=E(C);for(const $ of k)ye($.id,!1);x&&s.commit()}function le(){var x,k,$,A,z;const C=[];for(const X of r.value.nodes){if(wt(X.type))continue;let B;const ee={};let U;const me={};for(const pe of r.value.edges.filter(Se=>Se.target===X.id)){const Se=I(pe.source);if(!Se)continue;const Ne=(x=Jt(Se,"output",pe.sourceField))==null?void 0:x.name,se=Ne?`${Se.name}.${Ne}`:Se.name,re=(k=Jt(X,"input",pe.targetField))==null?void 0:k.name;re?ee[re]=se:B===void 0&&(B=se)}for(const pe of r.value.edges.filter(Se=>Se.source===X.id)){const Se=I(pe.target);if(!Se)continue;const Ne=Se.type;if(!wt(Ne)||!(($=Vo[Ne].io)!=null&&$.input))continue;const se=(A=Jt(Se,"input",pe.targetField))==null?void 0:A.name,re=se?`${Se.name}.${se}`:Se.name,Be=(z=Jt(X,"output",pe.sourceField))==null?void 0:z.name;Be?me[Be]=re:U===void 0&&(U=re)}const ge={..._n(X.config),name:X.name,type:X.type};Object.keys(ee).length>0?ge.inputs=ee:B!==void 0&&(ge.input=B),Object.keys(me).length>0?ge.outputs=me:U!==void 0&&(ge.output=U),C.push(ge)}return C}function ue(){return r.value.nodes.map(C=>_n({name:C.name,phase:C.phase,position:{...C.position},expanded:{...C.expanded},fields:{input:C.fields.input.map(x=>x.name),output:C.fields.output.map(x=>x.name)}}))}function ce(){const C=O("vault");if(!C)return;const x=CN(C.config);if(!(!x||Object.keys(x).length===0))return{vault:x}}function T(C,x){x&&s.commit(),r.value=mu(C,x),x||s.clear()}return{state:r,selection:i,modalOpen:a,skipValidation:c,invalidConfigNodeIds:d,propertiesPanelOpen:l,nodeMapById:p,nodeMapByName:m,edgeMapById:_,edgeIdMapByNodeId:g,getNodeById:I,getNodeByName:O,getEdgeById:F,getEdgesByNodeId:H,getInEdgesByNodeId:q,getOutEdgesByNodeId:E,selectedNode:te,selectNode:P,createNode:G,addNode:R,duplicateNode:K,removeNode:V,renameNode:M,moveNode:D,toggleExpanded:L,replaceConfig:j,addField:Z,renameField:W,removeField:ne,connectEdge:ie,replaceConnection:de,disconnectEdge:ye,disconnectInEdges:Q,disconnectOutEdges:oe,toConfigNodes:le,toUINodes:ue,load:T,commit:s.commit,undo:s.undo,redo:s.redo,canUndo:s.canUndo,canRedo:s.canRedo,clear:s.clear,reset:s.reset,revert:s.revert,isValidConnection:S,isValidVueFlowConnection:N,validateGraph:()=>v(),clearPendingLayout:f,setPendingFitView:u}});function nt(){const e=IN();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const Xa=Ke.createGlobalState(()=>{const e=Ke.useLocalStorage("datakit-editor-mode","flow"),n=Ke.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}});function qr(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function Ut(e){return typeof e=="function"?e():t.unref(e)}const PN=typeof window<"u"&&typeof document<"u",TN=e=>typeof e<"u",ON=Object.prototype.toString,$N=e=>ON.call(e)==="[object Object]",BN=()=>{};function VN(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 _u=e=>e();function RN(e=_u){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 bu(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function DN(e,n,o={}){const{eventFilter:r=_u,...i}=o;return t.watch(e,VN(r,n),i)}function Wn(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=RN(r);return{stop:DN(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function MN(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=Ut(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 Za(e,n=!1){function o(u,{flush:p="sync",deep:m=!1,timeout:h,throwOnTimeout:_}={}){let g=null;const w=[new Promise(b=>{g=t.watch(e,v=>{u(v)!==n&&(g==null||g(),b(v))},{flush:p,deep:m,immediate:!0})})];return h!=null&&w.push(bu(h,_).then(()=>Ut(e)).finally(()=>g==null?void 0:g())),Promise.race(w)}function r(u,p){if(!t.isRef(u))return o(v=>v===u,p);const{flush:m="sync",deep:h=!1,timeout:_,throwOnTimeout:g}=p??{};let y=null;const b=[new Promise(v=>{y=t.watch([e,u],([S,N])=>{n!==(S===N)&&(y==null||y(),v(S))},{flush:m,deep:h,immediate:!0})})];return _!=null&&b.push(bu(_,g).then(()=>Ut(e)).finally(()=>(y==null||y(),Ut(e)))),Promise.race(b)}function i(u){return o(p=>!!p,u)}function a(u){return r(null,u)}function l(u){return r(void 0,u)}function s(u){return o(Number.isNaN,u)}function c(u,p){return o(m=>{const h=Array.from(m);return h.includes(u)||h.includes(Ut(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(Ut(e))?{toMatch:o,toContains:c,changed:d,changedTimes:f,get not(){return Za(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:d,changedTimes:f,get not(){return Za(e,!n)}}}function Ja(e){return Za(e)}function FN(e){var n;const o=Ut(e);return(n=o==null?void 0:o.$el)!=null?n:o}const wu=PN?window:void 0;function ku(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=wu):[n,o,r,i]=e,!n)return BN;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(()=>[FN(n),Ut(i)],([f,u])=>{if(l(),!f)return;const p=$N(u)?{...u}:u;a.push(...o.flatMap(m=>r.map(h=>s(f,m,h,p))))},{immediate:!0,flush:"post"}),d=()=>{c(),l()};return qr(d),d}function LN(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Cu(...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=wu,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=LN(n);return ku(i,a,f=>{f.repeat&&Ut(s)||c(f)&&o(f)},l)}function UN(e){return JSON.parse(JSON.stringify(e))}function Qa(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:d,deep:f=!1,defaultValue:u,shouldEmit:p}=r,m=t.getCurrentInstance(),h=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let _=d;n||(n="modelValue"),_=_||`update:${n.toString()}`;const g=b=>s?typeof s=="function"?s(b):UN(b):b,y=()=>TN(e[n])?g(e[n]):u,w=b=>{p?p(b)&&h(_,b):h(_,b)};if(c){const b=y(),v=t.ref(b);let S=!1;return t.watch(()=>e[n],N=>{S||(S=!0,v.value=g(N),t.nextTick(()=>S=!1))}),t.watch(v,N=>{!S&&(N!==e[n]||f)&&w(N)},{deep:f}),v}else return t.computed({get(){return y()},set(b){w(b)}})}var KN={value:()=>{}};function Gr(){for(var e=0,n=arguments.length,o={},r;e<n;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new zr(o)}function zr(e){this._=e}function jN(e,n){return e.trim().split(/^|\s+/).map(function(o){var r="",i=o.indexOf(".");if(i>=0&&(r=o.slice(i+1),o=o.slice(0,i)),o&&!n.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}zr.prototype=Gr.prototype={constructor:zr,on:function(e,n){var o=this._,r=jN(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=qN(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]=Eu(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Eu(o[i],e.name,null);return this},copy:function(){var e={},n=this._;for(var o in n)e[o]=n[o].slice();return new zr(e)},call:function(e,n){if((i=arguments.length-2)>0)for(var o=new Array(i),r=0,i,a;r<i;++r)o[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(n,o)},apply:function(e,n,o){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(n,o)}};function qN(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Eu(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=KN,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var el="http://www.w3.org/1999/xhtml";const Nu={svg:"http://www.w3.org/2000/svg",xhtml:el,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Hr(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Nu.hasOwnProperty(n)?{space:Nu[n],local:e}:e}function GN(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===el&&n.documentElement.namespaceURI===el?n.createElement(e):n.createElementNS(o,e)}}function zN(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Su(e){var n=Hr(e);return(n.local?zN:GN)(n)}function HN(){}function tl(e){return e==null?HN:function(){return this.querySelector(e)}}function YN(e){typeof e!="function"&&(e=tl(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 ut(r,this._parents)}function WN(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function XN(){return[]}function vu(e){return e==null?XN:function(){return this.querySelectorAll(e)}}function ZN(e){return function(){return WN(e.apply(this,arguments))}}function JN(e){typeof e=="function"?e=ZN(e):e=vu(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 ut(r,i)}function xu(e){return function(){return this.matches(e)}}function Au(e){return function(n){return n.matches(e)}}var QN=Array.prototype.find;function e1(e){return function(){return QN.call(this.children,e)}}function t1(){return this.firstElementChild}function n1(e){return this.select(e==null?t1:e1(typeof e=="function"?e:Au(e)))}var o1=Array.prototype.filter;function r1(){return Array.from(this.children)}function i1(e){return function(){return o1.call(this.children,e)}}function a1(e){return this.selectAll(e==null?r1:i1(typeof e=="function"?e:Au(e)))}function l1(e){typeof e!="function"&&(e=xu(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 ut(r,this._parents)}function Iu(e){return new Array(e.length)}function s1(){return new ut(this._enter||this._groups.map(Iu),this._parents)}function Yr(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}Yr.prototype={constructor:Yr,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 c1(e){return function(){return e}}function d1(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 Yr(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function u1(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 Yr(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&d.get(p[s])===c&&(i[s]=c)}function f1(e){return e.__data__}function p1(e,n){if(!arguments.length)return Array.from(this,f1);var o=n?u1:d1,r=this._parents,i=this._groups;typeof e!="function"&&(e=c1(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=m1(e.call(f,f&&f.__data__,d,r)),h=m.length,_=s[d]=new Array(h),g=l[d]=new Array(h),y=c[d]=new Array(p);o(f,u,_,g,y,m,n);for(var w=0,b=0,v,S;w<h;++w)if(v=_[w]){for(w>=b&&(b=w+1);!(S=g[b])&&++b<h;);v._next=S||null}}return l=new ut(l,r),l._enter=s,l._exit=c,l}function m1(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function g1(){return new ut(this._exit||this._groups.map(Iu),this._parents)}function h1(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 y1(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 ut(s,this._parents)}function _1(){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 b1(e){e||(e=w1);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 ut(i,this._parents).order()}function w1(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function k1(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function C1(){return Array.from(this)}function E1(){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 N1(){let e=0;for(const n of this)++e;return e}function S1(){return!this.node()}function v1(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 x1(e){return function(){this.removeAttribute(e)}}function A1(e){return function(){this.removeAttributeNS(e.space,e.local)}}function I1(e,n){return function(){this.setAttribute(e,n)}}function P1(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function T1(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function O1(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 $1(e,n){var o=Hr(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?A1:x1:typeof n=="function"?o.local?O1:T1:o.local?P1:I1)(o,n))}function Pu(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function B1(e){return function(){this.style.removeProperty(e)}}function V1(e,n,o){return function(){this.style.setProperty(e,n,o)}}function R1(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function D1(e,n,o){return arguments.length>1?this.each((n==null?B1:typeof n=="function"?R1:V1)(e,n,o??"")):Xn(this.node(),e)}function Xn(e,n){return e.style.getPropertyValue(n)||Pu(e).getComputedStyle(e,null).getPropertyValue(n)}function M1(e){return function(){delete this[e]}}function F1(e,n){return function(){this[e]=n}}function L1(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function U1(e,n){return arguments.length>1?this.each((n==null?M1:typeof n=="function"?L1:F1)(e,n)):this.node()[e]}function Tu(e){return e.trim().split(/^|\s+/)}function nl(e){return e.classList||new Ou(e)}function Ou(e){this._node=e,this._names=Tu(e.getAttribute("class")||"")}Ou.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 $u(e,n){for(var o=nl(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function Bu(e,n){for(var o=nl(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function K1(e){return function(){$u(this,e)}}function j1(e){return function(){Bu(this,e)}}function q1(e,n){return function(){(n.apply(this,arguments)?$u:Bu)(this,e)}}function G1(e,n){var o=Tu(e+"");if(arguments.length<2){for(var r=nl(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?q1:n?K1:j1)(o,n))}function z1(){this.textContent=""}function H1(e){return function(){this.textContent=e}}function Y1(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function W1(e){return arguments.length?this.each(e==null?z1:(typeof e=="function"?Y1:H1)(e)):this.node().textContent}function X1(){this.innerHTML=""}function Z1(e){return function(){this.innerHTML=e}}function J1(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function Q1(e){return arguments.length?this.each(e==null?X1:(typeof e=="function"?J1:Z1)(e)):this.node().innerHTML}function eS(){this.nextSibling&&this.parentNode.appendChild(this)}function tS(){return this.each(eS)}function nS(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function oS(){return this.each(nS)}function rS(e){var n=typeof e=="function"?e:Su(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function iS(){return null}function aS(e,n){var o=typeof e=="function"?e:Su(e),r=n==null?iS:typeof n=="function"?n:tl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function lS(){var e=this.parentNode;e&&e.removeChild(this)}function sS(){return this.each(lS)}function cS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function dS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function uS(e){return this.select(e?dS:cS)}function fS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function pS(e){return function(n){e.call(this,n,this.__data__)}}function mS(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 gS(e){return function(){var n=this.__on;if(n){for(var o=0,r=-1,i=n.length,a;o<i;++o)a=n[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):n[++r]=a;++r?n.length=r:delete this.__on}}}function hS(e,n,o){return function(){var r=this.__on,i,a=pS(n);if(r){for(var l=0,s=r.length;l<s;++l)if((i=r[l]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=o),i.value=n;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:n,listener:a,options:o},r?r.push(i):this.__on=[i]}}function yS(e,n,o){var r=mS(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,d=s.length,f;c<d;++c)for(i=0,f=s[c];i<a;++i)if((l=r[i]).type===f.type&&l.name===f.name)return f.value}return}for(s=n?hS:gS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function Vu(e,n,o){var r=Pu(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 _S(e,n){return function(){return Vu(this,e,n)}}function bS(e,n){return function(){return Vu(this,e,n.apply(this,arguments))}}function wS(e,n){return this.each((typeof n=="function"?bS:_S)(e,n))}function*kS(){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 Ru=[null];function ut(e,n){this._groups=e,this._parents=n}function Do(){return new ut([[document.documentElement]],Ru)}function CS(){return this}ut.prototype=Do.prototype={constructor:ut,select:YN,selectAll:JN,selectChild:n1,selectChildren:a1,filter:l1,data:p1,enter:s1,exit:g1,join:h1,merge:y1,selection:CS,order:_1,sort:b1,call:k1,nodes:C1,node:E1,size:N1,empty:S1,each:v1,attr:$1,style:D1,property:U1,classed:G1,text:W1,html:Q1,raise:tS,lower:oS,append:rS,insert:aS,remove:sS,clone:uS,datum:fS,on:yS,dispatch:wS,[Symbol.iterator]:kS};function kt(e){return typeof e=="string"?new ut([[document.querySelector(e)]],[document.documentElement]):new ut([[e]],Ru)}function ES(e){let n;for(;n=e.sourceEvent;)e=n;return e}function It(e,n){if(e=ES(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 NS={passive:!1},Mo={capture:!0,passive:!1};function ol(e){e.stopImmediatePropagation()}function Zn(e){e.preventDefault(),e.stopImmediatePropagation()}function Du(e){var n=e.document.documentElement,o=kt(e).on("dragstart.drag",Zn,Mo);"onselectstart"in n?o.on("selectstart.drag",Zn,Mo):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function Mu(e,n){var o=e.document.documentElement,r=kt(e).on("dragstart.drag",null);n&&(r.on("click.drag",Zn,Mo),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 Wr=e=>()=>e;function rl(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}})}rl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function SS(e){return!e.ctrlKey&&!e.button}function vS(){return this.parentNode}function xS(e,n){return n??{x:e.x,y:e.y}}function AS(){return navigator.maxTouchPoints||"ontouchstart"in this}function IS(){var e=SS,n=vS,o=xS,r=AS,i={},a=Gr("start","drag","end"),l=0,s,c,d,f,u=0;function p(v){v.on("mousedown.drag",m).filter(r).on("touchstart.drag",g).on("touchmove.drag",y,NS).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(v,S){if(!(f||!e.call(this,v,S))){var N=b(this,n.call(this,v,S),v,S,"mouse");N&&(kt(v.view).on("mousemove.drag",h,Mo).on("mouseup.drag",_,Mo),Du(v.view),ol(v),d=!1,s=v.clientX,c=v.clientY,N("start",v))}}function h(v){if(Zn(v),!d){var S=v.clientX-s,N=v.clientY-c;d=S*S+N*N>u}i.mouse("drag",v)}function _(v){kt(v.view).on("mousemove.drag mouseup.drag",null),Mu(v.view,d),Zn(v),i.mouse("end",v)}function g(v,S){if(e.call(this,v,S)){var N=v.changedTouches,I=n.call(this,v,S),O=N.length,F,H;for(F=0;F<O;++F)(H=b(this,I,v,S,N[F].identifier,N[F]))&&(ol(v),H("start",v,N[F]))}}function y(v){var S=v.changedTouches,N=S.length,I,O;for(I=0;I<N;++I)(O=i[S[I].identifier])&&(Zn(v),O("drag",v,S[I]))}function w(v){var S=v.changedTouches,N=S.length,I,O;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),I=0;I<N;++I)(O=i[S[I].identifier])&&(ol(v),O("end",v,S[I]))}function b(v,S,N,I,O,F){var H=a.copy(),q=It(F||N,S),E,te,P;if((P=o.call(v,new rl("beforestart",{sourceEvent:N,target:p,identifier:O,active:l,x:q[0],y:q[1],dx:0,dy:0,dispatch:H}),I))!=null)return E=P.x-q[0]||0,te=P.y-q[1]||0,function G(R,K,V){var M=q,D;switch(R){case"start":i[O]=G,D=l++;break;case"end":delete i[O],--l;case"drag":q=It(V||K,S),D=l;break}H.call(R,v,new rl(R,{sourceEvent:K,subject:P,target:p,identifier:O,active:D,x:q[0]+E,y:q[1]+te,dx:q[0]-M[0],dy:q[1]-M[1],dispatch:H}),I)}}return p.filter=function(v){return arguments.length?(e=typeof v=="function"?v:Wr(!!v),p):e},p.container=function(v){return arguments.length?(n=typeof v=="function"?v:Wr(v),p):n},p.subject=function(v){return arguments.length?(o=typeof v=="function"?v:Wr(v),p):o},p.touchable=function(v){return arguments.length?(r=typeof v=="function"?v:Wr(!!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 il(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function Fu(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function Fo(){}var Lo=.7,Xr=1/Lo,Jn="\\s*([+-]?\\d+)\\s*",Uo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Pt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",PS=/^#([0-9a-f]{3,8})$/,TS=new RegExp(`^rgb\\(${Jn},${Jn},${Jn}\\)$`),OS=new RegExp(`^rgb\\(${Pt},${Pt},${Pt}\\)$`),$S=new RegExp(`^rgba\\(${Jn},${Jn},${Jn},${Uo}\\)$`),BS=new RegExp(`^rgba\\(${Pt},${Pt},${Pt},${Uo}\\)$`),VS=new RegExp(`^hsl\\(${Uo},${Pt},${Pt}\\)$`),RS=new RegExp(`^hsla\\(${Uo},${Pt},${Pt},${Uo}\\)$`),Lu={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};il(Fo,bn,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Uu,formatHex:Uu,formatHex8:DS,formatHsl:MS,formatRgb:Ku,toString:Ku});function Uu(){return this.rgb().formatHex()}function DS(){return this.rgb().formatHex8()}function MS(){return Hu(this).formatHsl()}function Ku(){return this.rgb().formatRgb()}function bn(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=PS.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?ju(n):o===3?new lt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?Zr(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?Zr(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=TS.exec(e))?new lt(n[1],n[2],n[3],1):(n=OS.exec(e))?new lt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=$S.exec(e))?Zr(n[1],n[2],n[3],n[4]):(n=BS.exec(e))?Zr(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=VS.exec(e))?zu(n[1],n[2]/100,n[3]/100,1):(n=RS.exec(e))?zu(n[1],n[2]/100,n[3]/100,n[4]):Lu.hasOwnProperty(e)?ju(Lu[e]):e==="transparent"?new lt(NaN,NaN,NaN,0):null}function ju(e){return new lt(e>>16&255,e>>8&255,e&255,1)}function Zr(e,n,o,r){return r<=0&&(e=n=o=NaN),new lt(e,n,o,r)}function FS(e){return e instanceof Fo||(e=bn(e)),e?(e=e.rgb(),new lt(e.r,e.g,e.b,e.opacity)):new lt}function al(e,n,o,r){return arguments.length===1?FS(e):new lt(e,n,o,r??1)}function lt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}il(lt,al,Fu(Fo,{brighter(e){return e=e==null?Xr:Math.pow(Xr,e),new lt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Lo:Math.pow(Lo,e),new lt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new lt(wn(this.r),wn(this.g),wn(this.b),Jr(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:qu,formatHex:qu,formatHex8:LS,formatRgb:Gu,toString:Gu}));function qu(){return`#${kn(this.r)}${kn(this.g)}${kn(this.b)}`}function LS(){return`#${kn(this.r)}${kn(this.g)}${kn(this.b)}${kn((isNaN(this.opacity)?1:this.opacity)*255)}`}function Gu(){const e=Jr(this.opacity);return`${e===1?"rgb(":"rgba("}${wn(this.r)}, ${wn(this.g)}, ${wn(this.b)}${e===1?")":`, ${e})`}`}function Jr(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function wn(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function kn(e){return e=wn(e),(e<16?"0":"")+e.toString(16)}function zu(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Ct(e,n,o,r)}function Hu(e){if(e instanceof Ct)return new Ct(e.h,e.s,e.l,e.opacity);if(e instanceof Fo||(e=bn(e)),!e)return new Ct;if(e instanceof Ct)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 Ct(l,s,c,e.opacity)}function US(e,n,o,r){return arguments.length===1?Hu(e):new Ct(e,n,o,r??1)}function Ct(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}il(Ct,US,Fu(Fo,{brighter(e){return e=e==null?Xr:Math.pow(Xr,e),new Ct(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Lo:Math.pow(Lo,e),new Ct(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 lt(ll(e>=240?e-240:e+120,i,r),ll(e,i,r),ll(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Ct(Yu(this.h),Qr(this.s),Qr(this.l),Jr(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=Jr(this.opacity);return`${e===1?"hsl(":"hsla("}${Yu(this.h)}, ${Qr(this.s)*100}%, ${Qr(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Yu(e){return e=(e||0)%360,e<0?e+360:e}function Qr(e){return Math.max(0,Math.min(1,e||0))}function ll(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 sl=e=>()=>e;function KS(e,n){return function(o){return e+o*n}}function jS(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 qS(e){return(e=+e)==1?Wu:function(n,o){return o-n?jS(n,o,e):sl(isNaN(n)?o:n)}}function Wu(e,n){var o=n-e;return o?KS(e,o):sl(isNaN(e)?n:e)}const ei=function e(n){var o=qS(n);function r(i,a){var l=o((i=al(i)).r,(a=al(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),d=Wu(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 GS(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 zS(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function HS(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]=Ko(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 YS(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Tt(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function WS(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]=Ko(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var cl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,dl=new RegExp(cl.source,"g");function XS(e){return function(){return e}}function ZS(e){return function(n){return e(n)+""}}function Xu(e,n){var o=cl.lastIndex=dl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=cl.exec(e))&&(i=dl.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:Tt(r,i)})),o=dl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?ZS(c[0].x):XS(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 Ko(e,n){var o=typeof n,r;return n==null||o==="boolean"?sl(n):(o==="number"?Tt:o==="string"?(r=bn(n))?(n=r,ei):Xu:n instanceof bn?ei:n instanceof Date?YS:zS(n)?GS:Array.isArray(n)?HS:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?WS:Tt)(e,n)}var Zu=180/Math.PI,ul={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Ju(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)*Zu,skewX:Math.atan(c)*Zu,scaleX:l,scaleY:s}}var ti;function JS(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?ul:Ju(n.a,n.b,n.c,n.d,n.e,n.f)}function QS(e){return e==null||(ti||(ti=document.createElementNS("http://www.w3.org/2000/svg","g")),ti.setAttribute("transform",e),!(e=ti.transform.baseVal.consolidate()))?ul:(e=e.matrix,Ju(e.a,e.b,e.c,e.d,e.e,e.f))}function Qu(e,n,o,r){function i(d){return d.length?d.pop()+" ":""}function a(d,f,u,p,m,h){if(d!==u||f!==p){var _=m.push("translate(",null,n,null,o);h.push({i:_-4,x:Tt(d,u)},{i:_-2,x:Tt(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:Tt(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:Tt(d,f)}):f&&u.push(i(u)+"skewX("+f+r)}function c(d,f,u,p,m,h){if(d!==u||f!==p){var _=m.push(i(m)+"scale(",null,",",null,")");h.push({i:_-4,x:Tt(d,u)},{i:_-2,x:Tt(f,p)})}else(u!==1||p!==1)&&m.push(i(m)+"scale("+u+","+p+")")}return function(d,f){var u=[],p=[];return d=e(d),f=e(f),a(d.translateX,d.translateY,f.translateX,f.translateY,u,p),l(d.rotate,f.rotate,u,p),s(d.skewX,f.skewX,u,p),c(d.scaleX,d.scaleY,f.scaleX,f.scaleY,u,p),d=f=null,function(m){for(var h=-1,_=p.length,g;++h<_;)u[(g=p[h]).i]=g.x(m);return u.join("")}}}var ev=Qu(JS,"px, ","px)","deg)"),tv=Qu(QS,", ",")",")"),nv=1e-12;function ef(e){return((e=Math.exp(e))+1/e)/2}function ov(e){return((e=Math.exp(e))-1/e)/2}function rv(e){return((e=Math.exp(2*e))-1)/(e+1)}const ni=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],d=a[2],f=l[0],u=l[1],p=l[2],m=f-s,h=u-c,_=m*m+h*h,g,y;if(_<nv)y=Math.log(p/d)/n,g=function(I){return[s+I*m,c+I*h,d*Math.exp(n*I*y)]};else{var w=Math.sqrt(_),b=(p*p-d*d+r*_)/(2*d*o*w),v=(p*p-d*d-r*_)/(2*p*o*w),S=Math.log(Math.sqrt(b*b+1)-b),N=Math.log(Math.sqrt(v*v+1)-v);y=(N-S)/n,g=function(I){var O=I*y,F=ef(S),H=d/(o*w)*(F*rv(n*O+S)-ov(S));return[s+H*m,c+H*h,d*F/ef(n*O+S)]}}return g.duration=y*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 Qn=0,jo=0,qo=0,tf=1e3,oi,Go,ri=0,Cn=0,ii=0,zo=typeof performance=="object"&&performance.now?performance:Date,nf=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function fl(){return Cn||(nf(iv),Cn=zo.now()+ii)}function iv(){Cn=0}function ai(){this._call=this._time=this._next=null}ai.prototype=of.prototype={constructor:ai,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?fl():+o)+(n==null?0:+n),!this._next&&Go!==this&&(Go?Go._next=this:oi=this,Go=this),this._call=e,this._time=o,pl()},stop:function(){this._call&&(this._call=null,this._time=1/0,pl())}};function of(e,n,o){var r=new ai;return r.restart(e,n,o),r}function av(){fl(),++Qn;for(var e=oi,n;e;)(n=Cn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Qn}function rf(){Cn=(ri=zo.now())+ii,Qn=jo=0;try{av()}finally{Qn=0,sv(),Cn=0}}function lv(){var e=zo.now(),n=e-ri;n>tf&&(ii-=n,ri=e)}function sv(){for(var e,n=oi,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:oi=o);Go=e,pl(r)}function pl(e){if(!Qn){jo&&(jo=clearTimeout(jo));var n=e-Cn;n>24?(e<1/0&&(jo=setTimeout(rf,e-zo.now()-ii)),qo&&(qo=clearInterval(qo))):(qo||(ri=zo.now(),qo=setInterval(lv,tf)),Qn=1,nf(rf))}}function af(e,n,o){var r=new ai;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var cv=Gr("start","end","cancel","interrupt"),dv=[],lf=0,sf=1,ml=2,li=3,cf=4,gl=5,si=6;function ci(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;uv(e,o,{name:n,index:r,group:i,on:cv,tween:dv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:lf})}function hl(e,n){var o=Et(e,n);if(o.state>lf)throw new Error("too late; already scheduled");return o}function Ot(e,n){var o=Et(e,n);if(o.state>li)throw new Error("too late; already running");return o}function Et(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function uv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=of(a,0,o.time);function a(d){o.state=sf,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!==sf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===li)return af(l);m.state===cf?(m.state=si,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=si,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(af(function(){o.state===li&&(o.state=cf,o.timer.restart(s,o.delay,o.time),s(d))}),o.state=ml,o.on.call("start",e,e.__data__,o.index,o.group),o.state===ml){for(o.state=li,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=gl,1),u=-1,p=i.length;++u<p;)i[u].call(e,f);o.state===gl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=si,o.timer.stop(),delete r[n];for(var d in r)return;delete e.__transition}}function di(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>ml&&r.state<gl,r.state=si,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function fv(e){return this.each(function(){di(this,e)})}function pv(e,n){var o,r;return function(){var i=Ot(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 mv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=Ot(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 gv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=Et(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?pv:mv)(o,e,n))}function yl(e,n,o){var r=e._id;return e.each(function(){var i=Ot(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return Et(i,r).value[n]}}function df(e,n){var o;return(typeof n=="number"?Tt:n instanceof bn?ei:(o=bn(n))?(n=o,ei):Xu)(e,n)}function hv(e){return function(){this.removeAttribute(e)}}function yv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function _v(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 bv(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 wv(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 kv(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 Cv(e,n){var o=Hr(e),r=o==="transform"?tv:df;return this.attrTween(e,typeof n=="function"?(o.local?kv:wv)(o,r,yl(this,"attr."+e,n)):n==null?(o.local?yv:hv)(o):(o.local?bv:_v)(o,r,n))}function Ev(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function Nv(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function Sv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&Nv(e,a)),o}return i._value=n,i}function vv(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&Ev(e,a)),o}return i._value=n,i}function xv(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=Hr(e);return this.tween(o,(r.local?Sv:vv)(r,n))}function Av(e,n){return function(){hl(this,e).delay=+n.apply(this,arguments)}}function Iv(e,n){return n=+n,function(){hl(this,e).delay=n}}function Pv(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Av:Iv)(n,e)):Et(this.node(),n).delay}function Tv(e,n){return function(){Ot(this,e).duration=+n.apply(this,arguments)}}function Ov(e,n){return n=+n,function(){Ot(this,e).duration=n}}function $v(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?Tv:Ov)(n,e)):Et(this.node(),n).duration}function Bv(e,n){if(typeof n!="function")throw new Error;return function(){Ot(this,e).ease=n}}function Vv(e){var n=this._id;return arguments.length?this.each(Bv(n,e)):Et(this.node(),n).ease}function Rv(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;Ot(this,e).ease=o}}function Dv(e){if(typeof e!="function")throw new Error;return this.each(Rv(this._id,e))}function Mv(e){typeof e!="function"&&(e=xu(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 Kt(r,this._parents,this._name,this._id)}function Fv(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 Kt(l,this._parents,this._name,this._id)}function Lv(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 Uv(e,n,o){var r,i,a=Lv(n)?hl:Ot;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Kv(e,n){var o=this._id;return arguments.length<2?Et(this.node(),o).on.on(e):this.each(Uv(o,e,n))}function jv(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function qv(){return this.on("end.remove",jv(this._id))}function Gv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=tl(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,ci(d[p],n,o,p,d,Et(f,o)));return new Kt(a,this._parents,n,o)}function zv(e){var n=this._name,o=this._id;typeof e!="function"&&(e=vu(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=Et(f,o),_=0,g=p.length;_<g;++_)(m=p[_])&&ci(m,n,o,_,p,h);a.push(p),l.push(f)}return new Kt(a,l,n,o)}var Hv=Do.prototype.constructor;function Yv(){return new Hv(this._groups,this._parents)}function Wv(e,n){var o,r,i;return function(){var a=Xn(this,e),l=(this.style.removeProperty(e),Xn(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function uf(e){return function(){this.style.removeProperty(e)}}function Xv(e,n,o){var r,i=o+"",a;return function(){var l=Xn(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function Zv(e,n,o){var r,i,a;return function(){var l=Xn(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),Xn(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function Jv(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=Ot(this,e),d=c.on,f=c.value[a]==null?s||(s=uf(n)):void 0;(d!==o||i!==f)&&(r=(o=d).copy()).on(l,i=f),c.on=r}}function Qv(e,n,o){var r=(e+="")=="transform"?ev:df;return n==null?this.styleTween(e,Wv(e,r)).on("end.style."+e,uf(e)):typeof n=="function"?this.styleTween(e,Zv(e,r,yl(this,"style."+e,n))).each(Jv(this._id,e)):this.styleTween(e,Xv(e,r,n),o).on("end.style."+e,null)}function ex(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function tx(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&ex(e,l,o)),r}return a._value=n,a}function nx(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,tx(e,n,o??""))}function ox(e){return function(){this.textContent=e}}function rx(e){return function(){var n=e(this);this.textContent=n??""}}function ix(e){return this.tween("text",typeof e=="function"?rx(yl(this,"text",e)):ox(e==null?"":e+""))}function ax(e){return function(n){this.textContent=e.call(this,n)}}function lx(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&ax(i)),n}return r._value=e,r}function sx(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,lx(e))}function cx(){for(var e=this._name,n=this._id,o=ff(),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=Et(c,n);ci(c,e,o,d,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Kt(r,this._parents,e,o)}function dx(){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=Ot(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 ux=0;function Kt(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function ff(){return++ux}var jt=Do.prototype;Kt.prototype={constructor:Kt,select:Gv,selectAll:zv,selectChild:jt.selectChild,selectChildren:jt.selectChildren,filter:Mv,merge:Fv,selection:Yv,transition:cx,call:jt.call,nodes:jt.nodes,node:jt.node,size:jt.size,empty:jt.empty,each:jt.each,on:Kv,attr:Cv,attrTween:xv,style:Qv,styleTween:nx,text:ix,textTween:sx,remove:qv,tween:gv,delay:Pv,duration:$v,ease:Vv,easeVarying:Dv,end:dx,[Symbol.iterator]:jt[Symbol.iterator]};function fx(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var px={time:null,delay:0,duration:250,ease:fx};function mx(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 gx(e){var n,o;e instanceof Kt?(n=e._id,e=e._name):(n=ff(),(o=px).time=fl(),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])&&ci(c,e,n,d,l,o||mx(c,n));return new Kt(r,this._parents,e,n)}Do.prototype.interrupt=fv,Do.prototype.transition=gx;const ui=e=>()=>e;function hx(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 qt(e,n,o){this.k=e,this.x=n,this.y=o}qt.prototype={constructor:qt,scale:function(e){return e===1?this:new qt(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new qt(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 eo=new qt(1,0,0);qt.prototype;function _l(e){e.stopImmediatePropagation()}function Ho(e){e.preventDefault(),e.stopImmediatePropagation()}function yx(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function _x(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function pf(){return this.__zoom||eo}function bx(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function wx(){return navigator.maxTouchPoints||"ontouchstart"in this}function kx(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 Cx(){var e=yx,n=_x,o=kx,r=bx,i=wx,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=ni,d=Gr("start","zoom","end"),f,u,p,m=500,h=150,_=0,g=10;function y(P){P.property("__zoom",pf).on("wheel.zoom",O,{passive:!1}).on("mousedown.zoom",F).on("dblclick.zoom",H).filter(i).on("touchstart.zoom",q).on("touchmove.zoom",E).on("touchend.zoom touchcancel.zoom",te).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}y.transform=function(P,G,R,K){var V=P.selection?P.selection():P;V.property("__zoom",pf),P!==V?S(P,G,R,K):V.interrupt().each(function(){N(this,arguments).event(K).start().zoom(null,typeof G=="function"?G.apply(this,arguments):G).end()})},y.scaleBy=function(P,G,R,K){y.scaleTo(P,function(){var V=this.__zoom.k,M=typeof G=="function"?G.apply(this,arguments):G;return V*M},R,K)},y.scaleTo=function(P,G,R,K){y.transform(P,function(){var V=n.apply(this,arguments),M=this.__zoom,D=R==null?v(V):typeof R=="function"?R.apply(this,arguments):R,L=M.invert(D),j=typeof G=="function"?G.apply(this,arguments):G;return o(b(w(M,j),D,L),V,l)},R,K)},y.translateBy=function(P,G,R,K){y.transform(P,function(){return o(this.__zoom.translate(typeof G=="function"?G.apply(this,arguments):G,typeof R=="function"?R.apply(this,arguments):R),n.apply(this,arguments),l)},null,K)},y.translateTo=function(P,G,R,K,V){y.transform(P,function(){var M=n.apply(this,arguments),D=this.__zoom,L=K==null?v(M):typeof K=="function"?K.apply(this,arguments):K;return o(eo.translate(L[0],L[1]).scale(D.k).translate(typeof G=="function"?-G.apply(this,arguments):-G,typeof R=="function"?-R.apply(this,arguments):-R),M,l)},K,V)};function w(P,G){return G=Math.max(a[0],Math.min(a[1],G)),G===P.k?P:new qt(G,P.x,P.y)}function b(P,G,R){var K=G[0]-R[0]*P.k,V=G[1]-R[1]*P.k;return K===P.x&&V===P.y?P:new qt(P.k,K,V)}function v(P){return[(+P[0][0]+ +P[1][0])/2,(+P[0][1]+ +P[1][1])/2]}function S(P,G,R,K){P.on("start.zoom",function(){N(this,arguments).event(K).start()}).on("interrupt.zoom end.zoom",function(){N(this,arguments).event(K).end()}).tween("zoom",function(){var V=this,M=arguments,D=N(V,M).event(K),L=n.apply(V,M),j=R==null?v(L):typeof R=="function"?R.apply(V,M):R,Z=Math.max(L[1][0]-L[0][0],L[1][1]-L[0][1]),W=V.__zoom,ne=typeof G=="function"?G.apply(V,M):G,ie=c(W.invert(j).concat(Z/W.k),ne.invert(j).concat(Z/ne.k));return function(de){if(de===1)de=ne;else{var ye=ie(de),Q=Z/ye[2];de=new qt(Q,j[0]-ye[0]*Q,j[1]-ye[1]*Q)}D.zoom(null,de)}})}function N(P,G,R){return!R&&P.__zooming||new I(P,G)}function I(P,G){this.that=P,this.args=G,this.active=0,this.sourceEvent=null,this.extent=n.apply(P,G),this.taps=0}I.prototype={event:function(P){return P&&(this.sourceEvent=P),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(P,G){return this.mouse&&P!=="mouse"&&(this.mouse[1]=G.invert(this.mouse[0])),this.touch0&&P!=="touch"&&(this.touch0[1]=G.invert(this.touch0[0])),this.touch1&&P!=="touch"&&(this.touch1[1]=G.invert(this.touch1[0])),this.that.__zoom=G,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(P){var G=kt(this.that).datum();d.call(P,this.that,new hx(P,{sourceEvent:this.sourceEvent,target:y,transform:this.that.__zoom,dispatch:d}),G)}};function O(P,...G){if(!e.apply(this,arguments))return;var R=N(this,G).event(P),K=this.__zoom,V=Math.max(a[0],Math.min(a[1],K.k*Math.pow(2,r.apply(this,arguments)))),M=It(P);if(R.wheel)(R.mouse[0][0]!==M[0]||R.mouse[0][1]!==M[1])&&(R.mouse[1]=K.invert(R.mouse[0]=M)),clearTimeout(R.wheel);else{if(K.k===V)return;R.mouse=[M,K.invert(M)],di(this),R.start()}Ho(P),R.wheel=setTimeout(D,h),R.zoom("mouse",o(b(w(K,V),R.mouse[0],R.mouse[1]),R.extent,l));function D(){R.wheel=null,R.end()}}function F(P,...G){if(p||!e.apply(this,arguments))return;var R=P.currentTarget,K=N(this,G,!0).event(P),V=kt(P.view).on("mousemove.zoom",j,!0).on("mouseup.zoom",Z,!0),M=It(P,R),D=P.clientX,L=P.clientY;Du(P.view),_l(P),K.mouse=[M,this.__zoom.invert(M)],di(this),K.start();function j(W){if(Ho(W),!K.moved){var ne=W.clientX-D,ie=W.clientY-L;K.moved=ne*ne+ie*ie>_}K.event(W).zoom("mouse",o(b(K.that.__zoom,K.mouse[0]=It(W,R),K.mouse[1]),K.extent,l))}function Z(W){V.on("mousemove.zoom mouseup.zoom",null),Mu(W.view,K.moved),Ho(W),K.event(W).end()}}function H(P,...G){if(e.apply(this,arguments)){var R=this.__zoom,K=It(P.changedTouches?P.changedTouches[0]:P,this),V=R.invert(K),M=R.k*(P.shiftKey?.5:2),D=o(b(w(R,M),K,V),n.apply(this,G),l);Ho(P),s>0?kt(this).transition().duration(s).call(S,D,K,P):kt(this).call(y.transform,D,K,P)}}function q(P,...G){if(e.apply(this,arguments)){var R=P.touches,K=R.length,V=N(this,G,P.changedTouches.length===K).event(P),M,D,L,j;for(_l(P),D=0;D<K;++D)L=R[D],j=It(L,this),j=[j,this.__zoom.invert(j),L.identifier],V.touch0?!V.touch1&&V.touch0[2]!==j[2]&&(V.touch1=j,V.taps=0):(V.touch0=j,M=!0,V.taps=1+!!f);f&&(f=clearTimeout(f)),M&&(V.taps<2&&(u=j[0],f=setTimeout(function(){f=null},m)),di(this),V.start())}}function E(P,...G){if(this.__zooming){var R=N(this,G).event(P),K=P.changedTouches,V=K.length,M,D,L,j;for(Ho(P),M=0;M<V;++M)D=K[M],L=It(D,this),R.touch0&&R.touch0[2]===D.identifier?R.touch0[0]=L:R.touch1&&R.touch1[2]===D.identifier&&(R.touch1[0]=L);if(D=R.that.__zoom,R.touch1){var Z=R.touch0[0],W=R.touch0[1],ne=R.touch1[0],ie=R.touch1[1],de=(de=ne[0]-Z[0])*de+(de=ne[1]-Z[1])*de,ye=(ye=ie[0]-W[0])*ye+(ye=ie[1]-W[1])*ye;D=w(D,Math.sqrt(de/ye)),L=[(Z[0]+ne[0])/2,(Z[1]+ne[1])/2],j=[(W[0]+ie[0])/2,(W[1]+ie[1])/2]}else if(R.touch0)L=R.touch0[0],j=R.touch0[1];else return;R.zoom("touch",o(b(D,L,j),R.extent,l))}}function te(P,...G){if(this.__zooming){var R=N(this,G).event(P),K=P.changedTouches,V=K.length,M,D;for(_l(P),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),M=0;M<V;++M)D=K[M],R.touch0&&R.touch0[2]===D.identifier?delete R.touch0:R.touch1&&R.touch1[2]===D.identifier&&delete R.touch1;if(R.touch1&&!R.touch0&&(R.touch0=R.touch1,delete R.touch1),R.touch0)R.touch0[1]=this.__zoom.invert(R.touch0[0]);else if(R.end(),R.taps===2&&(D=It(D,this),Math.hypot(u[0]-D[0],u[1]-D[1])<g)){var L=kt(this).on("dblclick.zoom");L&&L.apply(this,arguments)}}}return y.wheelDelta=function(P){return arguments.length?(r=typeof P=="function"?P:ui(+P),y):r},y.filter=function(P){return arguments.length?(e=typeof P=="function"?P:ui(!!P),y):e},y.touchable=function(P){return arguments.length?(i=typeof P=="function"?P:ui(!!P),y):i},y.extent=function(P){return arguments.length?(n=typeof P=="function"?P:ui([[+P[0][0],+P[0][1]],[+P[1][0],+P[1][1]]]),y):n},y.scaleExtent=function(P){return arguments.length?(a[0]=+P[0],a[1]=+P[1],y):[a[0],a[1]]},y.translateExtent=function(P){return arguments.length?(l[0][0]=+P[0][0],l[1][0]=+P[1][0],l[0][1]=+P[0][1],l[1][1]=+P[1][1],y):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},y.constrain=function(P){return arguments.length?(o=P,y):o},y.duration=function(P){return arguments.length?(s=+P,y):s},y.interpolate=function(P){return arguments.length?(c=P,y):c},y.on=function(){var P=d.on.apply(d,arguments);return P===d?y:P},y.clickDistance=function(P){return arguments.length?(_=(P=+P)*P,y):Math.sqrt(_)},y.tapDistance=function(P){return arguments.length?(g=+P,y):g},y}var be=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(be||{}),bl=(e=>(e.Partial="partial",e.Full="full",e))(bl||{}),En=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(En||{}),Qt=(e=>(e.Strict="strict",e.Loose="loose",e))(Qt||{}),fi=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(fi||{}),Yo=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(Yo||{}),mf=(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))(mf||{});const Ex=["INPUT","SELECT","TEXTAREA"],Nx=typeof document<"u"?document:null;function wl(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 Ex.includes(r==null?void 0:r.nodeName)||i||!!a}function Sx(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function gf(e,n,o,r){const i=n.replace("+",`
118
+ `},Symbol.toStringTag,{value:"Module"})),VN={class:"dk-code-editor"},RN={class:"examples-content"},DN={ref:"editor-root",class:"editor"},Za="YAML Syntax",MN="datakit.insert-example",LN=ve(t.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(e,{expose:n,emit:o}){const{t:r}=Ze.createI18n("en-us",rt),{formData:i}=Ye(),a=o,l=t.useTemplateRef("editor-root"),s=t.shallowRef(null);function c(f){const d=s.value,p=d==null?void 0:d.getModel();if(!d||!p)return;const m=Xa[f];d.getValue()!==m&&(d.pushUndoStop(),d.executeEdits(MN,[{range:p.getFullModelRange(),text:m}]),d.pushUndoStop()),u()}function u(){const f=s.value,d=f==null?void 0:f.getModel();!f||!d||(f.setPosition(d.getFullModelRange().getEndPosition()),f.focus())}return t.onMounted(()=>{const f=hr.editor.create(l.value,{language:"yaml",automaticLayout:!0,minimap:{enabled:!1},scrollBeyondLastLine:!1,tabSize:2,scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep"});if(s.value=f,i.config&&Object.keys(i.config).length>0){const d={...i.config};d.nodes&&d.nodes.length===0&&delete d.nodes;const p=Object.keys(d).length===0?"":Wa.dump(t.toRaw(d),{schema:Ur,noArrayIndent:!0});f.setValue(p),u()}f.onDidChangeModelContent(()=>{const d=f.getModel(),p=f.getValue()||"";try{const m=Wa.load(p,{schema:Ur,json:!0});hr.editor.setModelMarkers(d,Za,[]),i.config=m,a("change",m)}catch(m){const{message:y,mark:b}=m,{line:g,column:h}=b||{line:0,column:0},w=y.split(`
119
+ `)[0],_=[{startLineNumber:g+1,startColumn:h+1,endLineNumber:g+1,endColumn:h+2,message:w,severity:hr.MarkerSeverity.Error,source:Za}];hr.editor.setModelMarkers(d,Za,_),a("error",w)}})}),t.onBeforeUnmount(()=>{var f;(f=s.value)==null||f.dispose()}),n({setExampleCode:c}),(f,d)=>(t.openBlock(),t.createElementBlock("div",VN,[t.createVNode(t.unref(Oe.KAlert),{class:"examples"},{icon:t.withCtx(()=>[t.createVNode(t.unref(Se.SparklesIcon))]),default:t.withCtx(()=>[t.createElementVNode("div",RN,[t.createTextVNode(t.toDisplayString(t.unref(r)("plugins.free-form.datakit.description_example"))+" ",1),(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(Xa,(p,m)=>t.createVNode(t.unref(Oe.KButton),{key:m,appearance:"secondary",size:"small",onClick:y=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(r)(`plugins.free-form.datakit.examples.${m}`)),1)]),_:2},1032,["onClick"])),64))])]),_:1}),t.createElementVNode("div",DN,null,512)]))}}),[["__scopeId","data-v-5f51e876"]]),pu=44,FN=220,mu=366,UN=1e3,KN=pu+parseFloat(ad),gu=["request","service_request","service_response","response","vault"],to=gu,hu=["call","jq","exit","property","static","branch","cache"],yu=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Go="application/x-datakit+json",Kr={delete:["Delete"],undo:["Mod","Z"],redo:{mac:["Mod","Shift","Z"],windows:["Mod","Y"],linux:["Mod","Shift","Z"]},copy:["Mod","C"],paste:["Mod","V"],duplicate:["Mod","D"]},jr=1,jN=0,GN=1,qN=2,zN=3,Gr=parseInt(Jk,10),_t={call:{icon:Se.NetworkIcon,colors:{foreground:Xk,background:Mk}},jq:{icon:Se.CodeblockIcon,colors:{foreground:qk,background:Bk}},exit:{icon:Se.GatewayIcon,colors:{foreground:$a,background:Kk}},property:{icon:Se.StackIcon,colors:{foreground:Yk,background:Wk}},static:{icon:Se.VitalsIcon,colors:{foreground:zk,background:Hk}},branch:{icon:Se.ArrowSplitIcon,colors:{foreground:jk,background:$k}},cache:{icon:Se.StackIcon,colors:{foreground:Gk,background:"#fff0f7"}},vault:{icon:Se.KeyIcon},request:{icon:Se.CloudIcon},service_request:{icon:Se.CloudIcon},service_response:{icon:Se.CloudIcon},response:{icon:Se.CloudIcon}},{t:Ja}=Ze.createI18n("en-us",rt);function St(e){return Ja(`plugins.free-form.datakit.flow_editor.node_types.${e}.description`)}function xn(e){return Ja(`plugins.free-form.datakit.flow_editor.node_types.${e}.summary`)}function HN(e){return Ja(`plugins.free-form.datakit.flow_editor.node_types.${e}.name`)}const Qa={call:{type:"call",summary:xn("call"),description:St("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},..._t.call},jq:{type:"jq",summary:xn("jq"),description:St("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},..._t.jq},exit:{type:"exit",summary:xn("exit"),description:St("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},..._t.exit},property:{type:"property",summary:xn("property"),description:St("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},..._t.property},static:{type:"static",summary:xn("static"),description:St("static"),io:{output:{fields:[],configurable:!0}},..._t.static},branch:{type:"branch",summary:xn("branch"),description:St("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},..._t.branch},cache:{type:"cache",summary:xn("cache"),description:St("cache"),..._t.cache}},qr={request:{type:"request",description:St("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},..._t.request},service_request:{type:"service_request",description:St("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},..._t.service_request},service_response:{type:"service_response",description:St("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},..._t.service_response},response:{type:"response",description:St("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},..._t.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},..._t.vault,hidden:!0}},el=Object.keys(qr),tl=e=>el.includes(e),YN=e=>[...el,...hu].includes(e),vt=e=>el.includes(e),_u=e=>vt(e.type),bu=e=>!!(e!=null&&e.startsWith("node:"));function an(e){return Gn(e)}function nl(e,n){if(e.length!==n.length)return!1;if(e.length===0)return!0;const o=new Set(n);return e.every(r=>o.has(r))}function no(e){return`${e}:${Pr()}`}function zr(e){const[n,o]=e.split(".");return{nodeName:n,fieldName:o}}function wu(e){const[n,o]=e.split(".");return{nodeId:n,fieldId:o}}function oo(e){return vt(e)?qr[e]:Qa[e]}function ku(e){var i,a,l,s;const n=oo(e),o=((a=(i=n.io)==null?void 0:i.input)==null?void 0:a.fields.map(({name:c})=>c))??[],r=((s=(l=n.io)==null?void 0:l.output)==null?void 0:s.fields.map(({name:c})=>c))??[];return{input:o,output:r}}function qo(e){var o,r,i;return((i=(r=(o=oo(e).io)==null?void 0:o.next)==null?void 0:r.branches)==null?void 0:i.map(({name:a})=>a))??[]}function Cu(e){return(e??[]).map(n=>({id:no("field"),name:n}))}function ln(e,n,o){if(o)return e.fields[n].find(r=>r.name===o)}function sn(e,n,o){if(o)return e.fields[n].find(r=>r.id===o)}function ol(e,n){return n?e.fields.output.some(o=>o.id===n):!0}function Eu(e,n){return n?e.fields.input.some(o=>o.id===n):!0}function WN(e){const n=["request","service_request","vault"].includes(e)?"request":"response",o=qr[e];return{name:e,phase:n,position:{x:0,y:0},fields:ku(o.type),expanded:{},hidden:o.hidden}}function Nu(e,n){const r=(typeof e=="string"&&YN(e)?e.toUpperCase():e).replace(/_\d+$/,"");for(let i=1;;i++){const a=`${r}_${i}`;if(!n.has(a))return a}}function rl(e,n){return`${e}:${n}`}function Hr(e,n){return`${e}:${n}`}function Su(e,n,o,r,i){return{id:rl(e,n),ownerId:e,branch:n,phase:o,memberIds:[...r],position:i!=null&&i.position?{...i.position}:void 0,dimensions:i!=null&&i.dimensions?{...i.dimensions}:void 0}}function XN(e){return e.map(({source:n,target:o})=>({source:n,target:o}))}function ZN(e){const n=[];for(const o of e)for(const r of o.memberIds)n.push({source:o.ownerId,target:r});return n}function vu(e,n){return[...XN(e),...ZN(n)]}function Yr(e,n){const o=new Map;for(const{source:r,target:i}of e)o.has(r)||o.set(r,[]),o.get(r).push(i),o.has(i)||o.set(i,[]);return n&&(o.has(n.source)||o.set(n.source,[]),o.get(n.source).push(n.target),o.has(n.target)||o.set(n.target,[])),o}function il(e){const n=new Set,o=new Set;function r(i){if(o.has(i))return!0;if(n.has(i))return!1;n.add(i),o.add(i);for(const a of e.get(i)??[])if(r(a))return!0;return o.delete(i),!1}for(const i of e.keys())if(r(i))return!0;return!1}function al(e,n){const o=e.config;if(!o)return[];const r=o[n];return Array.isArray(r)?r.filter(i=>typeof i=="string"&&bu(i)):[]}function JN({state:e,groupMapById:n,getNodeById:o,history:r}){const i=t.computed(()=>{const _=new Map;for(const k of e.value.groups)for(const E of k.memberIds)_.set(E,{ownerId:k.ownerId,branch:k.branch});return _}),a=t.computed(()=>vu(e.value.edges,e.value.groups)),l=t.computed(()=>Yr(a.value));function s(_,k){return _?qo(_.type).includes(k):!1}function c(_,k){if(k===_.id)return!1;const E=o(k);return!(!E||vt(E.type)||E.phase!==_.phase)}function u(_,k){const E=[],C=new Set;for(const N of k)C.has(N)||(C.add(N),c(_,N)&&E.push(N));return E}function f(_,k,E){const C=o(_);return s(C,k)?u(C,E):[]}function d(_,k,E){const C=rl(_.id,k),N=n.value.get(C);E.length>0?N?(N.phase!==_.phase&&(N.phase=_.phase),nl(N.memberIds,E)||(N.memberIds=[...E])):e.value.groups.push(Su(_.id,k,_.phase,E)):N&&(e.value.groups=e.value.groups.filter(I=>I.id!==C))}function p(_,k,E,C={}){const N=o(_);if(!s(N,k))return!1;const I=u(N,E),D=al(N,k);if(nl(D,I))return!1;const G=N.config??(N.config={});return I.length>0?G[k]=[...I]:(delete G[k],Object.keys(G).length===0&&delete N.config),d(N,k,I),(C.commit??!0)&&r.commit(C.tag??`branch:set:${k}`),!0}function m(_){e.value.groups=e.value.groups.filter(k=>k.ownerId!==_)}function y(_,k){const E=n.value.get(rl(_,k));if(E)return[...E.memberIds];const C=o(_);return C?al(C,k):[]}function b(_){return i.value.get(_)}function g(_,k){if(_===k)return!0;const E=new Set,C=[k];for(;C.length>0;){const N=C.pop();if(E.has(N))continue;if(E.add(N),N===_)return!0;const I=l.value.get(N);if(I)for(const D of I)E.has(D)||C.push(D)}return!1}function h(_,k,E,C={}){const N=o(_);if(!N||!s(N,k)||!c(N,E)||g(_,E))return!1;const I=al(N,k);if(I.includes(E))return!1;w(E);const D=[...I,E];return p(_,k,D,{commit:!1})?((C.commit??!0)&&r.commit(C.tag??`branch:add:${k}`),!0):!1}function w(_){const k=b(_);if(!k)return;const C=y(k.ownerId,k.branch).filter(N=>N!==_);p(k.ownerId,k.branch,C,{commit:!1})}return{setMembers:p,prepareMembers:f,addMember:h,dropTarget:w,clear:m,getMembers:y,findMembership:b,wouldCreateCycle:g}}function QN(e,n){const{commit:o,undo:r,redo:i,canUndo:a,canRedo:l,clear:s,reset:c,undoStack:u,redoStack:f}=Xe.useManualRefHistory(e,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let d;function p(_){var k;(k=n==null?void 0:n.onHistoryChange)==null||k.call(n,_,e.value)}function m(_){if(!_){d=void 0,o(),p("commit");return}if(_!=="*"&&d!==_){d=_,o(),p("commit");return}o(),u.value.shift(),p("commit")}function y(){r(),d=void 0,p("undo")}function b(){i(),d=void 0,p("redo")}function g(){s(),d=void 0,p("clear")}function h(){c(),d=void 0,p("reset")}function w(){r(),f.value.shift(),d=void 0,p("revert")}return{canUndo:a,canRedo:l,commit:m,undo:y,redo:b,clear:g,reset:h,revert:w}}function e1(e){var n,o;return((o=(n=e.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function t1(e){const{resources:n}=e.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function n1(e){const n=Object.entries(e);if(n.length===0)return;const o={};for(const[r,i]of n)o[r]=i;return o}function xu(e,n){var b,g,h,w,_;const o=((b=e.config)==null?void 0:b.nodes)??[],r=((g=e.__ui_data)==null?void 0:g.nodes)??[],i=((h=e.__ui_data)==null?void 0:h.groups)??[],a=new Map(r.map(k=>[k.name,k])),l=new Map(i.map(k=>[k.name,k])),s=[],c=[],u=new Map,f=[],d=[],p=new Map,m=k=>{const E=new Set,C=[...k];for(;C.length>0;){const N=C.shift();if(!E.has(N)&&(E.add(N),tl(N)||(u.get(N).phase="request"),!!p.has(N)))for(const I of p.get(N))E.has(I)||C.push(I)}};let y=!1;for(const k of o){const E=a.get(k.name);!E&&!y&&(y=!0);const C=Iu({type:k.type,configNode:k,uiNode:E,pluginData:e});s.push(C),u.set(C.name,C)}for(const k of s){const E=qo(k.type);if(!E.length)continue;const C=k.config;if(C)for(const N of E){const I=C[N];if(!Array.isArray(I)){l.has(Hr(k.name,N))&&(y=!0);continue}const D=[];for(const G of I){if(typeof G!="string")continue;const K=u.get(G);K&&!vt(K.type)&&D.push(K.id)}if(D.length){C[N]=D;const G=Hr(k.name,N),K=l.get(G),S=K?{position:an(K.position)}:void 0,ne=Su(k.id,N,k.phase,D,S);f.push(ne),!K&&!y&&(y=!0)}else delete C[N],l.has(Hr(k.name,N))&&(y=!0)}}for(const k of to)if(!u.has(k)){let E=a.get(k);E||(y||(y=!0),E=WN(k));const C=Iu({type:k,uiNode:E,pluginData:e});s.push(C),u.set(C.name,C)}for(const k of o)i1(k,d);for(const k of d){const E=u.get(k.source),C=u.get(k.target);if(!E||!C){E||console.warn(`[initEditorState] skip: source "${k.source}" not found`),C||console.warn(`[initEditorState] skip: target "${k.target}" not found`);continue}p.has(k.source)||p.set(k.source,new Set),p.get(k.source).add(k.target),p.has(k.target)||p.set(k.target,new Set),p.get(k.target).add(k.source),c.push({id:no("edge"),source:E.id,sourceField:(w=ln(E,"output",k.sourceField))==null?void 0:w.id,target:C.id,targetField:(_=ln(C,"input",k.targetField))==null?void 0:_.id})}return m(["request","service_request"]),{nodes:s,edges:c,groups:f,pendingLayout:y?n?"keepHistory":"clearHistory":!1,pendingFitView:!0}}function Au(e){const{type:n,name:o,phase:r,position:i,fields:a,config:l}=e,s=ku(n),c=oo(n);return{id:no("node"),type:n,name:o??n,phase:r??"request",position:i??{x:0,y:0},expanded:{},fields:{input:Cu((a==null?void 0:a.input)??s.input),output:Cu((a==null?void 0:a.output)??s.output)},hidden:e.hidden||c.hidden,config:l?an(l):{}}}function o1(e){return vt(e)?e==="request"||e==="service_request"?"request":"response":"request"}function Iu({type:e,configNode:n,uiNode:o,pluginData:r}){return Au({type:e,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??o1(e),position:o==null?void 0:o.position,fields:a1({type:e,uiNode:o,configNode:n,pluginData:r}),hidden:o==null?void 0:o.hidden,config:l1({type:e,configNode:n,pluginData:r})})}function r1(e){const{type:n,name:o,input:r,inputs:i,output:a,outputs:l,...s}=e;return an(s)}function i1(e,n){const o=e.name;if(e.input){const{nodeName:r,fieldName:i}=zr(e.input);r&&n.push({source:r,sourceField:i,target:o})}if(e.inputs)for(const[r,i]of Object.entries(e.inputs)){if(!i)continue;const{nodeName:a,fieldName:l}=zr(i);a&&n.push({source:a,sourceField:l,target:o,targetField:r})}if(e.output){const{nodeName:r,fieldName:i}=zr(e.output);r&&n.push({source:o,target:r,targetField:i})}if(e.outputs)for(const[r,i]of Object.entries(e.outputs)){if(!i)continue;const{nodeName:a,fieldName:l}=zr(i);a&&n.push({source:o,sourceField:r,target:a,targetField:l})}}function a1({type:e,uiNode:n,configNode:o,pluginData:r}){var s,c,u,f;const i=oo(e),a=i==null?void 0:i.io;if(!a)return;const l={};if((s=a.input)!=null&&s.configurable&&(n?l.input=((c=n.fields)==null?void 0:c.input)??[]:o!=null&&o.inputs&&(l.input=Object.keys(o.inputs))),(u=a.output)!=null&&u.configurable){if(n)l.output=((f=n.fields)==null?void 0:f.output)??[];else{const d=new Set;o!=null&&o.outputs&&Object.keys(o.outputs).forEach(p=>d.add(p)),(o==null?void 0:o.type)==="static"&&o.values&&Object.keys(o.values).forEach(p=>d.add(p)),d.size&&(l.output=Array.from(d))}e==="vault"&&(l.output=t1(r))}return Object.keys(l).length?l:void 0}function l1({type:e,configNode:n,pluginData:o}){return e==="vault"?e1(o):n?r1(n):void 0}function s1(e){const n=t.computed(()=>{const d=new Map;return e.value.nodes.forEach(p=>d.set(p.id,p)),d}),o=t.computed(()=>e.value.edges),r=t.computed(()=>e.value.groups),i=t.computed(()=>vu(o.value,r.value));function a(d){return Yr(i.value,d?{source:d.source,target:d.target}:void 0)}function l(d){const p=n.value.get(d.source),m=n.value.get(d.target);if(!p||!m)return d;const y=Eu(p,d.sourceField)&&!ol(p,d.sourceField),b=ol(m,d.targetField);return y&&b?{source:d.target,sourceField:d.targetField,target:d.source,targetField:d.sourceField}:d}function s(d){const p=l(d),m=[],y=n.value.get(p.source),b=n.value.get(p.target);if(y||m.push("source node not found"),b||m.push("target node not found"),!y||!b)return{ok:!1,errors:m};ol(y,p.sourceField)||m.push("source handle is not an output field"),Eu(b,p.targetField)||m.push("target handle is not an input field"),b.name==="request"&&m.push('cannot target "request"'),y.name==="response"&&m.push('cannot source from "response"');const g=o.value.some(_=>_.target===p.target&&!_.targetField),h=o.value.some(_=>_.target===p.target&&!!_.targetField);(g&&p.targetField||h&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(_=>_.target===p.target&&_.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(_=>_.target===p.target&&!_.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const w=a({source:p.source,target:p.target});return il(w)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const d=[];for(const p of to)[...n.value.values()].some(m=>m.name===p)||d.push(`missing implicit node "${p}"`);for(const p of o.value){const m=n.value.get(p.source);n.value.get(p.target).name==="request"&&d.push(`edge "${p.id}" targets "request"`),m.name==="response"&&d.push(`edge "${p.id}" sources from "response"`)}return il(a())&&d.push("graph contains cycle"),d.length?{ok:!1,errors:d}:{ok:!0}}function u(d){return s(d).ok}function f(d){return!d.source||!d.target?!1:u({source:d.source,sourceField:d.sourceHandle,target:d.target,targetField:d.targetHandle})}return{canonicalizeConnection:l,validateConnection:s,validateGraph:c,isValidConnection:u,isValidVueFlowConnection:f,buildAdjacency:Yr}}const[Pu,c1]=Xe.createInjectionState(function(n,o={}){const r=t.ref(xu(n)),i=t.ref(),a=t.ref(!1),l=t.ref(!1),s=QN(r,{capacity:200,clone:an,onHistoryChange:L=>{var $;L!=="clear"&&(($=o.onChange)==null||$.call(o,B(),j(),R()))}}),c=t.ref(!1),u=t.ref(new Set);function f(){r.value.pendingLayout=!1,s.commit("*")}function d(L=!0){r.value.pendingFitView!==L&&(r.value.pendingFitView=L,s.commit("*"))}const p=t.computed(()=>new Map(r.value.nodes.map(L=>[L.id,L]))),m=t.computed(()=>new Map(r.value.nodes.map(L=>[L.name,L]))),y=t.computed(()=>{const L=new Map,$=new Map;for(const z of r.value.edges)L.set(z.id,z),$.has(z.source)||$.set(z.source,new Set),$.get(z.source).add(z.id),$.has(z.target)||$.set(z.target,new Set),$.get(z.target).add(z.id);return{edgeMapById:L,edgeIdMapByNodeId:$}}),b=t.computed(()=>y.value.edgeMapById),g=t.computed(()=>y.value.edgeIdMapByNodeId),h=t.computed(()=>new Map(r.value.groups.map(L=>[L.id,L]))),w=t.computed(()=>new Set(r.value.nodes.map(L=>L.name))),_=JN({state:r,groupMapById:h,getNodeById:D,history:s}),{canonicalizeConnection:k,validateConnection:E,validateGraph:C,isValidConnection:N,isValidVueFlowConnection:I}=s1(r);function D(L){return p.value.get(L)}function G(L){return m.value.get(L)}function K(L){return b.value.get(L)}function S(L){if(!g.value.has(L))return[];const $=[];return g.value.get(L).forEach(z=>{const M=K(z);M&&$.push(M)}),$}function ne(L){return S(L).filter($=>$.target===L)}function x(L){return S(L).filter($=>$.source===L)}const q=t.computed(()=>i.value?D(i.value):void 0);function U(L){i.value=L}function te(L){if(vt(L.type))throw new Error("[createNode] implicit nodes are fixed.");return Au({type:L.type,name:L.name||(vt(L.type)?void 0:Nu(L.type,w.value)),phase:L.phase,position:L.position,fields:L.fields,config:L.config})}function V(L,$=!0){const z=te(L);if(z)return r.value.nodes.push(z),$&&s.commit(),c.value=!0,z.id}function T(L,$,z=!0){const M=D(L);if(!M||vt(M.type))return;const le={...an(M),id:no("node"),name:Nu(M.name,w.value),position:$??{x:M.position.x+20,y:M.position.y+20}},pe=qo(le.type);if(pe.length&&le.config){for(const ye of pe)delete le.config[ye];Object.keys(le.config).length===0&&delete le.config}return r.value.nodes.push(le),z&&s.commit(),c.value=!0,le.id}function v(L,$=!0){if(!D(L))return;r.value.edges=r.value.edges.filter(le=>le.source!==L&&le.target!==L),_.clear(L),r.value.nodes=r.value.nodes.filter(le=>le.id!==L),i.value===L&&(i.value=void 0),_.dropTarget(L);const M=C();M.ok||console.warn("[removeNode] topology invalid:",M.errors.join("; ")),$&&s.commit()}function P(L,$,z=!0,M){const le=D(L);if(!le)return;if(tl(le.name)){console.warn("[renameNode] implicit node name is reserved.");return}le.name!==$&&(le.name=$,z&&s.commit(M))}function A(L,$,z=!0){const M=D(L);M&&(M.position={...$},z&&s.commit())}function Y(L,$,z=!0){const M=h.value.get(L);if(!M)return;const le=M.position;le&&le.x===$.x&&le.y===$.y||(M.position={...$},z&&s.commit())}function W(L,$,z=!0){const M=h.value.get(L);if(!M)return!1;const le={...$.position},pe={...$.dimensions},ye=M.position&&M.position.x===le.x&&M.position.y===le.y,me=M.dimensions&&M.dimensions.width===pe.width&&M.dimensions.height===pe.height;return ye&&me?!1:(M.position=le,M.dimensions=pe,z&&s.commit(),!0)}function ie(L,$,z,M=!0,le){const pe=D(L);if(!pe)return;const ye=z??!pe.expanded[$];ye!==!!pe.expanded[$]&&(pe.expanded[$]=ye,M&&s.commit(le??`toggle:${L}:${$}`))}function oe(L,$,z=!0,M){const le=D(L);le&&(le.config=an($),z&&s.commit(M))}function de(L,$,z,M=!0){const le=D(L);if(!le)return;const pe=le.fields[$];if(pe.some(ye=>ye.name===z)){console.warn(`[addField] field "${z}" already exists on ${$}.`);return}pe.push({id:no("field"),name:z}),$==="input"?le.fields.input=pe:le.fields.output=pe,M&&s.commit()}function he(L,$,z,M=!0){const le=D(L);if(!le)return;const pe=le.fields.input,ye=le.fields.output,me=pe.find(_e=>_e.id===$)??ye.find(_e=>_e.id===$);me&&(me.name=z,M&&s.commit())}function X(L,$,z=!0,M=!0){const le=D(L);if(!le)return;const pe=le.fields.input,ye=le.fields.output,me=pe.findIndex(re=>re.id===$);me>=0&&pe.splice(me,1);const _e=ye.findIndex(re=>re.id===$);_e>=0&&ye.splice(_e,1),le.fields.input=pe,le.fields.output=ye,z&&(r.value.edges=r.value.edges.filter(re=>re.sourceField!==$&&re.targetField!==$));const Be=C();Be.ok||console.warn("[removeField] topology invalid:",Be.errors.join("; ")),M&&s.commit()}function ce(L,$=!0){const z=k(L),M=E(z);if(!M.ok){console.warn("[connectEdge] invalid connection:",M.errors.join("; "));return}const le={id:no("edge"),...z};r.value.edges.push(le);const pe=C();if(!pe.ok){r.value.edges.pop(),console.warn("[connectEdge] topology invalid:",pe.errors.join("; "));return}return $&&s.commit(),le.id}function se(L,$,z=!0){ue(L,!1),ce($,!1),z&&s.commit()}function ue(L,$=!0){const z=r.value.edges.findIndex(pe=>pe.id===L);if(z<0)return;const M=r.value.edges[z];r.value.edges.splice(z,1);const le=C();if(!le.ok){r.value.edges.splice(z,0,M),console.warn("[disconnectEdge] topology invalid:",le.errors.join("; "));return}$&&s.commit()}function fe(L,$=!0){const z=ne(L);for(const M of z)ue(M.id,!1);$&&s.commit()}function O(L,$=!0){const z=x(L);for(const M of z)ue(M.id,!1);$&&s.commit()}function B(){var $,z,M,le,pe;const L=[];for(const ye of r.value.nodes){if(vt(ye.type))continue;let me;const _e={};let Be;const re={};for(const Ne of r.value.edges.filter(Ae=>Ae.target===ye.id)){const Ae=D(Ne.source);if(!Ae)continue;const Re=($=sn(Ae,"output",Ne.sourceField))==null?void 0:$.name,je=Re?`${Ae.name}.${Re}`:Ae.name,He=(z=sn(ye,"input",Ne.targetField))==null?void 0:z.name;He?_e[He]=je:me===void 0&&(me=je)}for(const Ne of r.value.edges.filter(Ae=>Ae.source===ye.id)){const Ae=D(Ne.target);if(!Ae)continue;const Re=Ae.type;if(!vt(Re)||!((M=qr[Re].io)!=null&&M.input))continue;const je=(le=sn(Ae,"input",Ne.targetField))==null?void 0:le.name,He=je?`${Ae.name}.${je}`:Ae.name,Ge=(pe=sn(ye,"output",Ne.sourceField))==null?void 0:pe.name;Ge?re[Ge]=He:Be===void 0&&(Be=He)}const ee={...an(ye.config),name:ye.name,type:ye.type},Z=qo(ye.type);if(Z.length)for(const Ne of Z){const Ae=ee[Ne];if(!Array.isArray(Ae))continue;const Re=[];for(const je of Ae){const He=D(je);He&&Re.push(He.name)}Re.length?ee[Ne]=Array.from(new Set(Re)):delete ee[Ne]}Object.keys(_e).length>0?ee.inputs=_e:me!==void 0&&(ee.input=me),Object.keys(re).length>0?ee.outputs=re:Be!==void 0&&(ee.output=Be),L.push(ee)}return L}function F(){return r.value.nodes.map(L=>an({name:L.name,phase:L.phase,position:{...L.position},expanded:{...L.expanded},fields:{input:L.fields.input.map($=>$.name),output:L.fields.output.map($=>$.name)}}))}function R(){const L=G("vault");if(!L)return;const $=n1(L.config);if(!(!$||Object.keys($).length===0))return{vault:$}}function J(){const L=[];for(const $ of r.value.groups){const z=D($.ownerId);if(!z)continue;const M=$.position;M&&L.push({name:Hr(z.name,$.branch),position:{...M}})}return L}function j(){return{nodes:F(),groups:J()}}function ae(L,$){$&&s.commit(),r.value=xu(L,$),$||s.clear()}return{state:r,selection:i,modalOpen:a,skipValidation:c,invalidConfigNodeIds:u,propertiesPanelOpen:l,nodeMapById:p,nodeMapByName:m,edgeMapById:b,edgeIdMapByNodeId:g,groupMapById:h,getNodeById:D,getNodeByName:G,getEdgeById:K,getEdgesByNodeId:S,getInEdgesByNodeId:ne,getOutEdgesByNodeId:x,selectedNode:q,selectNode:U,createNode:te,addNode:V,duplicateNode:T,removeNode:v,renameNode:P,moveNode:A,moveGroup:Y,setGroupLayout:W,toggleExpanded:ie,replaceConfig:oe,branchGroups:_,addField:de,renameField:he,removeField:X,connectEdge:ce,replaceConnection:se,disconnectEdge:ue,disconnectInEdges:fe,disconnectOutEdges:O,toConfigNodes:B,toUINodes:F,toUIGroups:J,toUIData:j,load:ae,commit:s.commit,undo:s.undo,redo:s.redo,canUndo:s.canUndo,canRedo:s.canRedo,clear:s.clear,reset:s.reset,revert:s.revert,isValidConnection:N,isValidVueFlowConnection:I,validateGraph:()=>C(),clearPendingLayout:f,setPendingFitView:d}});function st(){const e=c1();if(!e)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return e}const ll=Xe.createGlobalState(()=>{const e=Xe.useLocalStorage("datakit-editor-mode","flow"),n=Xe.useLocalStorage("datakit-editor-sidebar-expanded",!0);return{editorMode:e,sidePanelExpanded:n}});function Wr(e){return t.getCurrentScope()?(t.onScopeDispose(e),!0):!1}function Zt(e){return typeof e=="function"?e():t.unref(e)}const d1=typeof window<"u"&&typeof document<"u",u1=e=>typeof e<"u",f1=Object.prototype.toString,p1=e=>f1.call(e)==="[object Object]",m1=()=>{};function g1(e,n){function o(...r){return new Promise((i,a)=>{Promise.resolve(e(()=>n.apply(this,r),{fn:n,thisArg:this,args:r})).then(i).catch(a)})}return o}const Tu=e=>e();function h1(e=Tu){const n=t.ref(!0);function o(){n.value=!1}function r(){n.value=!0}const i=(...a)=>{n.value&&e(...a)};return{isActive:t.readonly(n),pause:o,resume:r,eventFilter:i}}function Ou(e,n=!1,o="Timeout"){return new Promise((r,i)=>{setTimeout(n?()=>i(o):r,e)})}function y1(e,n,o={}){const{eventFilter:r=Tu,...i}=o;return t.watch(e,g1(r,n),i)}function ro(e,n,o={}){const{eventFilter:r,...i}=o,{eventFilter:a,pause:l,resume:s,isActive:c}=h1(r);return{stop:y1(e,n,{...i,eventFilter:a}),pause:l,resume:s,isActive:c}}function _1(e,n={}){if(!t.isRef(e))return t.toRefs(e);const o=Array.isArray(e.value)?Array.from({length:e.value.length}):{};for(const r in e.value)o[r]=t.customRef(()=>({get(){return e.value[r]},set(i){var a;if((a=Zt(n.replaceRef))!=null?a:!0)if(Array.isArray(e.value)){const s=[...e.value];s[r]=i,e.value=s}else{const s={...e.value,[r]:i};Object.setPrototypeOf(s,Object.getPrototypeOf(e.value)),e.value=s}else e.value[r]=i}}));return o}function sl(e,n=!1){function o(d,{flush:p="sync",deep:m=!1,timeout:y,throwOnTimeout:b}={}){let g=null;const w=[new Promise(_=>{g=t.watch(e,k=>{d(k)!==n&&(g==null||g(),_(k))},{flush:p,deep:m,immediate:!0})})];return y!=null&&w.push(Ou(y,b).then(()=>Zt(e)).finally(()=>g==null?void 0:g())),Promise.race(w)}function r(d,p){if(!t.isRef(d))return o(k=>k===d,p);const{flush:m="sync",deep:y=!1,timeout:b,throwOnTimeout:g}=p??{};let h=null;const _=[new Promise(k=>{h=t.watch([e,d],([E,C])=>{n!==(E===C)&&(h==null||h(),k(E))},{flush:m,deep:y,immediate:!0})})];return b!=null&&_.push(Ou(b,g).then(()=>Zt(e)).finally(()=>(h==null||h(),Zt(e)))),Promise.race(_)}function i(d){return o(p=>!!p,d)}function a(d){return r(null,d)}function l(d){return r(void 0,d)}function s(d){return o(Number.isNaN,d)}function c(d,p){return o(m=>{const y=Array.from(m);return y.includes(d)||y.includes(Zt(d))},p)}function u(d){return f(1,d)}function f(d=1,p){let m=-1;return o(()=>(m+=1,m>=d),p)}return Array.isArray(Zt(e))?{toMatch:o,toContains:c,changed:u,changedTimes:f,get not(){return sl(e,!n)}}:{toMatch:o,toBe:r,toBeTruthy:i,toBeNull:a,toBeNaN:s,toBeUndefined:l,changed:u,changedTimes:f,get not(){return sl(e,!n)}}}function cl(e){return sl(e)}function b1(e){var n;const o=Zt(e);return(n=o==null?void 0:o.$el)!=null?n:o}const $u=d1?window:void 0;function Bu(...e){let n,o,r,i;if(typeof e[0]=="string"||Array.isArray(e[0])?([o,r,i]=e,n=$u):[n,o,r,i]=e,!n)return m1;Array.isArray(o)||(o=[o]),Array.isArray(r)||(r=[r]);const a=[],l=()=>{a.forEach(f=>f()),a.length=0},s=(f,d,p,m)=>(f.addEventListener(d,p,m),()=>f.removeEventListener(d,p,m)),c=t.watch(()=>[b1(n),Zt(i)],([f,d])=>{if(l(),!f)return;const p=p1(d)?{...d}:d;a.push(...o.flatMap(m=>r.map(y=>s(f,m,y,p))))},{immediate:!0,flush:"post"}),u=()=>{c(),l()};return Wr(u),u}function w1(e){return typeof e=="function"?e:typeof e=="string"?n=>n.key===e:Array.isArray(e)?n=>e.includes(n.key):()=>!0}function Vu(...e){let n,o,r={};e.length===3?(n=e[0],o=e[1],r=e[2]):e.length===2?typeof e[1]=="object"?(n=!0,o=e[0],r=e[1]):(n=e[0],o=e[1]):(n=!0,o=e[0]);const{target:i=$u,eventName:a="keydown",passive:l=!1,dedupe:s=!1}=r,c=w1(n);return Bu(i,a,f=>{f.repeat&&Zt(s)||c(f)&&o(f)},l)}function k1(e){return JSON.parse(JSON.stringify(e))}function dl(e,n,o,r={}){var i,a,l;const{clone:s=!1,passive:c=!1,eventName:u,deep:f=!1,defaultValue:d,shouldEmit:p}=r,m=t.getCurrentInstance(),y=o||(m==null?void 0:m.emit)||((i=m==null?void 0:m.$emit)==null?void 0:i.bind(m))||((l=(a=m==null?void 0:m.proxy)==null?void 0:a.$emit)==null?void 0:l.bind(m==null?void 0:m.proxy));let b=u;n||(n="modelValue"),b=b||`update:${n.toString()}`;const g=_=>s?typeof s=="function"?s(_):k1(_):_,h=()=>u1(e[n])?g(e[n]):d,w=_=>{p?p(_)&&y(b,_):y(b,_)};if(c){const _=h(),k=t.ref(_);let E=!1;return t.watch(()=>e[n],C=>{E||(E=!0,k.value=g(C),t.nextTick(()=>E=!1))}),t.watch(k,C=>{!E&&(C!==e[n]||f)&&w(C)},{deep:f}),k}else return t.computed({get(){return h()},set(_){w(_)}})}var C1={value:()=>{}};function Xr(){for(var e=0,n=arguments.length,o={},r;e<n;++e){if(!(r=arguments[e]+"")||r in o||/[\s.]/.test(r))throw new Error("illegal type: "+r);o[r]=[]}return new Zr(o)}function Zr(e){this._=e}function E1(e,n){return e.trim().split(/^|\s+/).map(function(o){var r="",i=o.indexOf(".");if(i>=0&&(r=o.slice(i+1),o=o.slice(0,i)),o&&!n.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:r}})}Zr.prototype=Xr.prototype={constructor:Zr,on:function(e,n){var o=this._,r=E1(e+"",o),i,a=-1,l=r.length;if(arguments.length<2){for(;++a<l;)if((i=(e=r[a]).type)&&(i=N1(o[i],e.name)))return i;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++a<l;)if(i=(e=r[a]).type)o[i]=Ru(o[i],e.name,n);else if(n==null)for(i in o)o[i]=Ru(o[i],e.name,null);return this},copy:function(){var e={},n=this._;for(var o in n)e[o]=n[o].slice();return new Zr(e)},call:function(e,n){if((i=arguments.length-2)>0)for(var o=new Array(i),r=0,i,a;r<i;++r)o[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(n,o)},apply:function(e,n,o){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(n,o)}};function N1(e,n){for(var o=0,r=e.length,i;o<r;++o)if((i=e[o]).name===n)return i.value}function Ru(e,n,o){for(var r=0,i=e.length;r<i;++r)if(e[r].name===n){e[r]=C1,e=e.slice(0,r).concat(e.slice(r+1));break}return o!=null&&e.push({name:n,value:o}),e}var ul="http://www.w3.org/1999/xhtml";const Du={svg:"http://www.w3.org/2000/svg",xhtml:ul,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Jr(e){var n=e+="",o=n.indexOf(":");return o>=0&&(n=e.slice(0,o))!=="xmlns"&&(e=e.slice(o+1)),Du.hasOwnProperty(n)?{space:Du[n],local:e}:e}function S1(e){return function(){var n=this.ownerDocument,o=this.namespaceURI;return o===ul&&n.documentElement.namespaceURI===ul?n.createElement(e):n.createElementNS(o,e)}}function v1(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Mu(e){var n=Jr(e);return(n.local?v1:S1)(n)}function x1(){}function fl(e){return e==null?x1:function(){return this.querySelector(e)}}function A1(e){typeof e!="function"&&(e=fl(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=new Array(l),c,u,f=0;f<l;++f)(c=a[f])&&(u=e.call(c,c.__data__,f,a))&&("__data__"in c&&(u.__data__=c.__data__),s[f]=u);return new kt(r,this._parents)}function I1(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function P1(){return[]}function Lu(e){return e==null?P1:function(){return this.querySelectorAll(e)}}function T1(e){return function(){return I1(e.apply(this,arguments))}}function O1(e){typeof e=="function"?e=T1(e):e=Lu(e);for(var n=this._groups,o=n.length,r=[],i=[],a=0;a<o;++a)for(var l=n[a],s=l.length,c,u=0;u<s;++u)(c=l[u])&&(r.push(e.call(c,c.__data__,u,l)),i.push(c));return new kt(r,i)}function Fu(e){return function(){return this.matches(e)}}function Uu(e){return function(n){return n.matches(e)}}var $1=Array.prototype.find;function B1(e){return function(){return $1.call(this.children,e)}}function V1(){return this.firstElementChild}function R1(e){return this.select(e==null?V1:B1(typeof e=="function"?e:Uu(e)))}var D1=Array.prototype.filter;function M1(){return Array.from(this.children)}function L1(e){return function(){return D1.call(this.children,e)}}function F1(e){return this.selectAll(e==null?M1:L1(typeof e=="function"?e:Uu(e)))}function U1(e){typeof e!="function"&&(e=Fu(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,u=0;u<l;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&s.push(c);return new kt(r,this._parents)}function Ku(e){return new Array(e.length)}function K1(){return new kt(this._enter||this._groups.map(Ku),this._parents)}function Qr(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}Qr.prototype={constructor:Qr,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function j1(e){return function(){return e}}function G1(e,n,o,r,i,a){for(var l=0,s,c=n.length,u=a.length;l<u;++l)(s=n[l])?(s.__data__=a[l],r[l]=s):o[l]=new Qr(e,a[l]);for(;l<c;++l)(s=n[l])&&(i[l]=s)}function q1(e,n,o,r,i,a,l){var s,c,u=new Map,f=n.length,d=a.length,p=new Array(f),m;for(s=0;s<f;++s)(c=n[s])&&(p[s]=m=l.call(c,c.__data__,s,n)+"",u.has(m)?i[s]=c:u.set(m,c));for(s=0;s<d;++s)m=l.call(e,a[s],s,a)+"",(c=u.get(m))?(r[s]=c,c.__data__=a[s],u.delete(m)):o[s]=new Qr(e,a[s]);for(s=0;s<f;++s)(c=n[s])&&u.get(p[s])===c&&(i[s]=c)}function z1(e){return e.__data__}function H1(e,n){if(!arguments.length)return Array.from(this,z1);var o=n?q1:G1,r=this._parents,i=this._groups;typeof e!="function"&&(e=j1(e));for(var a=i.length,l=new Array(a),s=new Array(a),c=new Array(a),u=0;u<a;++u){var f=r[u],d=i[u],p=d.length,m=Y1(e.call(f,f&&f.__data__,u,r)),y=m.length,b=s[u]=new Array(y),g=l[u]=new Array(y),h=c[u]=new Array(p);o(f,d,b,g,h,m,n);for(var w=0,_=0,k,E;w<y;++w)if(k=b[w]){for(w>=_&&(_=w+1);!(E=g[_])&&++_<y;);k._next=E||null}}return l=new kt(l,r),l._enter=s,l._exit=c,l}function Y1(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function W1(){return new kt(this._exit||this._groups.map(Ku),this._parents)}function X1(e,n,o){var r=this.enter(),i=this,a=this.exit();return typeof e=="function"?(r=e(r),r&&(r=r.selection())):r=r.append(e+""),n!=null&&(i=n(i),i&&(i=i.selection())),o==null?a.remove():o(a),r&&i?r.merge(i).order():i}function Z1(e){for(var n=e.selection?e.selection():e,o=this._groups,r=n._groups,i=o.length,a=r.length,l=Math.min(i,a),s=new Array(i),c=0;c<l;++c)for(var u=o[c],f=r[c],d=u.length,p=s[c]=new Array(d),m,y=0;y<d;++y)(m=u[y]||f[y])&&(p[y]=m);for(;c<i;++c)s[c]=o[c];return new kt(s,this._parents)}function J1(){for(var e=this._groups,n=-1,o=e.length;++n<o;)for(var r=e[n],i=r.length-1,a=r[i],l;--i>=0;)(l=r[i])&&(a&&l.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(l,a),a=l);return this}function Q1(e){e||(e=eS);function n(d,p){return d&&p?e(d.__data__,p.__data__):!d-!p}for(var o=this._groups,r=o.length,i=new Array(r),a=0;a<r;++a){for(var l=o[a],s=l.length,c=i[a]=new Array(s),u,f=0;f<s;++f)(u=l[f])&&(c[f]=u);c.sort(n)}return new kt(i,this._parents).order()}function eS(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function tS(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function nS(){return Array.from(this)}function oS(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length;i<a;++i){var l=r[i];if(l)return l}return null}function rS(){let e=0;for(const n of this)++e;return e}function iS(){return!this.node()}function aS(e){for(var n=this._groups,o=0,r=n.length;o<r;++o)for(var i=n[o],a=0,l=i.length,s;a<l;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function lS(e){return function(){this.removeAttribute(e)}}function sS(e){return function(){this.removeAttributeNS(e.space,e.local)}}function cS(e,n){return function(){this.setAttribute(e,n)}}function dS(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function uS(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttribute(e):this.setAttribute(e,o)}}function fS(e,n){return function(){var o=n.apply(this,arguments);o==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,o)}}function pS(e,n){var o=Jr(e);if(arguments.length<2){var r=this.node();return o.local?r.getAttributeNS(o.space,o.local):r.getAttribute(o)}return this.each((n==null?o.local?sS:lS:typeof n=="function"?o.local?fS:uS:o.local?dS:cS)(o,n))}function ju(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function mS(e){return function(){this.style.removeProperty(e)}}function gS(e,n,o){return function(){this.style.setProperty(e,n,o)}}function hS(e,n,o){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,o)}}function yS(e,n,o){return arguments.length>1?this.each((n==null?mS:typeof n=="function"?hS:gS)(e,n,o??"")):io(this.node(),e)}function io(e,n){return e.style.getPropertyValue(n)||ju(e).getComputedStyle(e,null).getPropertyValue(n)}function _S(e){return function(){delete this[e]}}function bS(e,n){return function(){this[e]=n}}function wS(e,n){return function(){var o=n.apply(this,arguments);o==null?delete this[e]:this[e]=o}}function kS(e,n){return arguments.length>1?this.each((n==null?_S:typeof n=="function"?wS:bS)(e,n)):this.node()[e]}function Gu(e){return e.trim().split(/^|\s+/)}function pl(e){return e.classList||new qu(e)}function qu(e){this._node=e,this._names=Gu(e.getAttribute("class")||"")}qu.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function zu(e,n){for(var o=pl(e),r=-1,i=n.length;++r<i;)o.add(n[r])}function Hu(e,n){for(var o=pl(e),r=-1,i=n.length;++r<i;)o.remove(n[r])}function CS(e){return function(){zu(this,e)}}function ES(e){return function(){Hu(this,e)}}function NS(e,n){return function(){(n.apply(this,arguments)?zu:Hu)(this,e)}}function SS(e,n){var o=Gu(e+"");if(arguments.length<2){for(var r=pl(this.node()),i=-1,a=o.length;++i<a;)if(!r.contains(o[i]))return!1;return!0}return this.each((typeof n=="function"?NS:n?CS:ES)(o,n))}function vS(){this.textContent=""}function xS(e){return function(){this.textContent=e}}function AS(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function IS(e){return arguments.length?this.each(e==null?vS:(typeof e=="function"?AS:xS)(e)):this.node().textContent}function PS(){this.innerHTML=""}function TS(e){return function(){this.innerHTML=e}}function OS(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function $S(e){return arguments.length?this.each(e==null?PS:(typeof e=="function"?OS:TS)(e)):this.node().innerHTML}function BS(){this.nextSibling&&this.parentNode.appendChild(this)}function VS(){return this.each(BS)}function RS(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function DS(){return this.each(RS)}function MS(e){var n=typeof e=="function"?e:Mu(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function LS(){return null}function FS(e,n){var o=typeof e=="function"?e:Mu(e),r=n==null?LS:typeof n=="function"?n:fl(n);return this.select(function(){return this.insertBefore(o.apply(this,arguments),r.apply(this,arguments)||null)})}function US(){var e=this.parentNode;e&&e.removeChild(this)}function KS(){return this.each(US)}function jS(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function GS(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function qS(e){return this.select(e?GS:jS)}function zS(e){return arguments.length?this.property("__data__",e):this.node().__data__}function HS(e){return function(n){e.call(this,n,this.__data__)}}function YS(e){return e.trim().split(/^|\s+/).map(function(n){var o="",r=n.indexOf(".");return r>=0&&(o=n.slice(r+1),n=n.slice(0,r)),{type:n,name:o}})}function WS(e){return function(){var n=this.__on;if(n){for(var o=0,r=-1,i=n.length,a;o<i;++o)a=n[o],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):n[++r]=a;++r?n.length=r:delete this.__on}}}function XS(e,n,o){return function(){var r=this.__on,i,a=HS(n);if(r){for(var l=0,s=r.length;l<s;++l)if((i=r[l]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=o),i.value=n;return}}this.addEventListener(e.type,a,o),i={type:e.type,name:e.name,value:n,listener:a,options:o},r?r.push(i):this.__on=[i]}}function ZS(e,n,o){var r=YS(e+""),i,a=r.length,l;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,u=s.length,f;c<u;++c)for(i=0,f=s[c];i<a;++i)if((l=r[i]).type===f.type&&l.name===f.name)return f.value}return}for(s=n?XS:WS,i=0;i<a;++i)this.each(s(r[i],n,o));return this}function Yu(e,n,o){var r=ju(e),i=r.CustomEvent;typeof i=="function"?i=new i(n,o):(i=r.document.createEvent("Event"),o?(i.initEvent(n,o.bubbles,o.cancelable),i.detail=o.detail):i.initEvent(n,!1,!1)),e.dispatchEvent(i)}function JS(e,n){return function(){return Yu(this,e,n)}}function QS(e,n){return function(){return Yu(this,e,n.apply(this,arguments))}}function ev(e,n){return this.each((typeof n=="function"?QS:JS)(e,n))}function*tv(){for(var e=this._groups,n=0,o=e.length;n<o;++n)for(var r=e[n],i=0,a=r.length,l;i<a;++i)(l=r[i])&&(yield l)}var Wu=[null];function kt(e,n){this._groups=e,this._parents=n}function zo(){return new kt([[document.documentElement]],Wu)}function nv(){return this}kt.prototype=zo.prototype={constructor:kt,select:A1,selectAll:O1,selectChild:R1,selectChildren:F1,filter:U1,data:H1,enter:K1,exit:W1,join:X1,merge:Z1,selection:nv,order:J1,sort:Q1,call:tS,nodes:nS,node:oS,size:rS,empty:iS,each:aS,attr:pS,style:yS,property:kS,classed:SS,text:IS,html:$S,raise:VS,lower:DS,append:MS,insert:FS,remove:KS,clone:qS,datum:zS,on:ZS,dispatch:ev,[Symbol.iterator]:tv};function Tt(e){return typeof e=="string"?new kt([[document.querySelector(e)]],[document.documentElement]):new kt([[e]],Wu)}function ov(e){let n;for(;n=e.sourceEvent;)e=n;return e}function Mt(e,n){if(e=ov(e),n===void 0&&(n=e.currentTarget),n){var o=n.ownerSVGElement||n;if(o.createSVGPoint){var r=o.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[e.clientX-i.left-n.clientLeft,e.clientY-i.top-n.clientTop]}}return[e.pageX,e.pageY]}const rv={passive:!1},Ho={capture:!0,passive:!1};function ml(e){e.stopImmediatePropagation()}function ao(e){e.preventDefault(),e.stopImmediatePropagation()}function Xu(e){var n=e.document.documentElement,o=Tt(e).on("dragstart.drag",ao,Ho);"onselectstart"in n?o.on("selectstart.drag",ao,Ho):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function Zu(e,n){var o=e.document.documentElement,r=Tt(e).on("dragstart.drag",null);n&&(r.on("click.drag",ao,Ho),setTimeout(function(){r.on("click.drag",null)},0)),"onselectstart"in o?r.on("selectstart.drag",null):(o.style.MozUserSelect=o.__noselect,delete o.__noselect)}const ei=e=>()=>e;function gl(e,{sourceEvent:n,subject:o,target:r,identifier:i,active:a,x:l,y:s,dx:c,dy:u,dispatch:f}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:o,enumerable:!0,configurable:!0},target:{value:r,enumerable:!0,configurable:!0},identifier:{value:i,enumerable:!0,configurable:!0},active:{value:a,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:s,enumerable:!0,configurable:!0},dx:{value:c,enumerable:!0,configurable:!0},dy:{value:u,enumerable:!0,configurable:!0},_:{value:f}})}gl.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function iv(e){return!e.ctrlKey&&!e.button}function av(){return this.parentNode}function lv(e,n){return n??{x:e.x,y:e.y}}function sv(){return navigator.maxTouchPoints||"ontouchstart"in this}function cv(){var e=iv,n=av,o=lv,r=sv,i={},a=Xr("start","drag","end"),l=0,s,c,u,f,d=0;function p(k){k.on("mousedown.drag",m).filter(r).on("touchstart.drag",g).on("touchmove.drag",h,rv).on("touchend.drag touchcancel.drag",w).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function m(k,E){if(!(f||!e.call(this,k,E))){var C=_(this,n.call(this,k,E),k,E,"mouse");C&&(Tt(k.view).on("mousemove.drag",y,Ho).on("mouseup.drag",b,Ho),Xu(k.view),ml(k),u=!1,s=k.clientX,c=k.clientY,C("start",k))}}function y(k){if(ao(k),!u){var E=k.clientX-s,C=k.clientY-c;u=E*E+C*C>d}i.mouse("drag",k)}function b(k){Tt(k.view).on("mousemove.drag mouseup.drag",null),Zu(k.view,u),ao(k),i.mouse("end",k)}function g(k,E){if(e.call(this,k,E)){var C=k.changedTouches,N=n.call(this,k,E),I=C.length,D,G;for(D=0;D<I;++D)(G=_(this,N,k,E,C[D].identifier,C[D]))&&(ml(k),G("start",k,C[D]))}}function h(k){var E=k.changedTouches,C=E.length,N,I;for(N=0;N<C;++N)(I=i[E[N].identifier])&&(ao(k),I("drag",k,E[N]))}function w(k){var E=k.changedTouches,C=E.length,N,I;for(f&&clearTimeout(f),f=setTimeout(function(){f=null},500),N=0;N<C;++N)(I=i[E[N].identifier])&&(ml(k),I("end",k,E[N]))}function _(k,E,C,N,I,D){var G=a.copy(),K=Mt(D||C,E),S,ne,x;if((x=o.call(k,new gl("beforestart",{sourceEvent:C,target:p,identifier:I,active:l,x:K[0],y:K[1],dx:0,dy:0,dispatch:G}),N))!=null)return S=x.x-K[0]||0,ne=x.y-K[1]||0,function q(U,te,V){var T=K,v;switch(U){case"start":i[I]=q,v=l++;break;case"end":delete i[I],--l;case"drag":K=Mt(V||te,E),v=l;break}G.call(U,k,new gl(U,{sourceEvent:te,subject:x,target:p,identifier:I,active:v,x:K[0]+S,y:K[1]+ne,dx:K[0]-T[0],dy:K[1]-T[1],dispatch:G}),N)}}return p.filter=function(k){return arguments.length?(e=typeof k=="function"?k:ei(!!k),p):e},p.container=function(k){return arguments.length?(n=typeof k=="function"?k:ei(k),p):n},p.subject=function(k){return arguments.length?(o=typeof k=="function"?k:ei(k),p):o},p.touchable=function(k){return arguments.length?(r=typeof k=="function"?k:ei(!!k),p):r},p.on=function(){var k=a.on.apply(a,arguments);return k===a?p:k},p.clickDistance=function(k){return arguments.length?(d=(k=+k)*k,p):Math.sqrt(d)},p}function hl(e,n,o){e.prototype=n.prototype=o,o.constructor=e}function Ju(e,n){var o=Object.create(e.prototype);for(var r in n)o[r]=n[r];return o}function Yo(){}var Wo=.7,ti=1/Wo,lo="\\s*([+-]?\\d+)\\s*",Xo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Lt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",dv=/^#([0-9a-f]{3,8})$/,uv=new RegExp(`^rgb\\(${lo},${lo},${lo}\\)$`),fv=new RegExp(`^rgb\\(${Lt},${Lt},${Lt}\\)$`),pv=new RegExp(`^rgba\\(${lo},${lo},${lo},${Xo}\\)$`),mv=new RegExp(`^rgba\\(${Lt},${Lt},${Lt},${Xo}\\)$`),gv=new RegExp(`^hsl\\(${Xo},${Lt},${Lt}\\)$`),hv=new RegExp(`^hsla\\(${Xo},${Lt},${Lt},${Xo}\\)$`),Qu={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};hl(Yo,An,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:ef,formatHex:ef,formatHex8:yv,formatHsl:_v,formatRgb:tf,toString:tf});function ef(){return this.rgb().formatHex()}function yv(){return this.rgb().formatHex8()}function _v(){return lf(this).formatHsl()}function tf(){return this.rgb().formatRgb()}function An(e){var n,o;return e=(e+"").trim().toLowerCase(),(n=dv.exec(e))?(o=n[1].length,n=parseInt(n[1],16),o===6?nf(n):o===3?new bt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):o===8?ni(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):o===4?ni(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=uv.exec(e))?new bt(n[1],n[2],n[3],1):(n=fv.exec(e))?new bt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=pv.exec(e))?ni(n[1],n[2],n[3],n[4]):(n=mv.exec(e))?ni(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=gv.exec(e))?af(n[1],n[2]/100,n[3]/100,1):(n=hv.exec(e))?af(n[1],n[2]/100,n[3]/100,n[4]):Qu.hasOwnProperty(e)?nf(Qu[e]):e==="transparent"?new bt(NaN,NaN,NaN,0):null}function nf(e){return new bt(e>>16&255,e>>8&255,e&255,1)}function ni(e,n,o,r){return r<=0&&(e=n=o=NaN),new bt(e,n,o,r)}function bv(e){return e instanceof Yo||(e=An(e)),e?(e=e.rgb(),new bt(e.r,e.g,e.b,e.opacity)):new bt}function yl(e,n,o,r){return arguments.length===1?bv(e):new bt(e,n,o,r??1)}function bt(e,n,o,r){this.r=+e,this.g=+n,this.b=+o,this.opacity=+r}hl(bt,yl,Ju(Yo,{brighter(e){return e=e==null?ti:Math.pow(ti,e),new bt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Wo:Math.pow(Wo,e),new bt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new bt(In(this.r),In(this.g),In(this.b),oi(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:of,formatHex:of,formatHex8:wv,formatRgb:rf,toString:rf}));function of(){return`#${Pn(this.r)}${Pn(this.g)}${Pn(this.b)}`}function wv(){return`#${Pn(this.r)}${Pn(this.g)}${Pn(this.b)}${Pn((isNaN(this.opacity)?1:this.opacity)*255)}`}function rf(){const e=oi(this.opacity);return`${e===1?"rgb(":"rgba("}${In(this.r)}, ${In(this.g)}, ${In(this.b)}${e===1?")":`, ${e})`}`}function oi(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function In(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function Pn(e){return e=In(e),(e<16?"0":"")+e.toString(16)}function af(e,n,o,r){return r<=0?e=n=o=NaN:o<=0||o>=1?e=n=NaN:n<=0&&(e=NaN),new Ot(e,n,o,r)}function lf(e){if(e instanceof Ot)return new Ot(e.h,e.s,e.l,e.opacity);if(e instanceof Yo||(e=An(e)),!e)return new Ot;if(e instanceof Ot)return e;e=e.rgb();var n=e.r/255,o=e.g/255,r=e.b/255,i=Math.min(n,o,r),a=Math.max(n,o,r),l=NaN,s=a-i,c=(a+i)/2;return s?(n===a?l=(o-r)/s+(o<r)*6:o===a?l=(r-n)/s+2:l=(n-o)/s+4,s/=c<.5?a+i:2-a-i,l*=60):s=c>0&&c<1?0:l,new Ot(l,s,c,e.opacity)}function kv(e,n,o,r){return arguments.length===1?lf(e):new Ot(e,n,o,r??1)}function Ot(e,n,o,r){this.h=+e,this.s=+n,this.l=+o,this.opacity=+r}hl(Ot,kv,Ju(Yo,{brighter(e){return e=e==null?ti:Math.pow(ti,e),new Ot(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Wo:Math.pow(Wo,e),new Ot(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,o=this.l,r=o+(o<.5?o:1-o)*n,i=2*o-r;return new bt(_l(e>=240?e-240:e+120,i,r),_l(e,i,r),_l(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new Ot(sf(this.h),ri(this.s),ri(this.l),oi(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=oi(this.opacity);return`${e===1?"hsl(":"hsla("}${sf(this.h)}, ${ri(this.s)*100}%, ${ri(this.l)*100}%${e===1?")":`, ${e})`}`}}));function sf(e){return e=(e||0)%360,e<0?e+360:e}function ri(e){return Math.max(0,Math.min(1,e||0))}function _l(e,n,o){return(e<60?n+(o-n)*e/60:e<180?o:e<240?n+(o-n)*(240-e)/60:n)*255}const bl=e=>()=>e;function Cv(e,n){return function(o){return e+o*n}}function Ev(e,n,o){return e=Math.pow(e,o),n=Math.pow(n,o)-e,o=1/o,function(r){return Math.pow(e+r*n,o)}}function Nv(e){return(e=+e)==1?cf:function(n,o){return o-n?Ev(n,o,e):bl(isNaN(n)?o:n)}}function cf(e,n){var o=n-e;return o?Cv(e,o):bl(isNaN(e)?n:e)}const ii=function e(n){var o=Nv(n);function r(i,a){var l=o((i=yl(i)).r,(a=yl(a)).r),s=o(i.g,a.g),c=o(i.b,a.b),u=cf(i.opacity,a.opacity);return function(f){return i.r=l(f),i.g=s(f),i.b=c(f),i.opacity=u(f),i+""}}return r.gamma=e,r}(1);function Sv(e,n){n||(n=[]);var o=e?Math.min(n.length,e.length):0,r=n.slice(),i;return function(a){for(i=0;i<o;++i)r[i]=e[i]*(1-a)+n[i]*a;return r}}function vv(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function xv(e,n){var o=n?n.length:0,r=e?Math.min(o,e.length):0,i=new Array(r),a=new Array(o),l;for(l=0;l<r;++l)i[l]=Zo(e[l],n[l]);for(;l<o;++l)a[l]=n[l];return function(s){for(l=0;l<r;++l)a[l]=i[l](s);return a}}function Av(e,n){var o=new Date;return e=+e,n=+n,function(r){return o.setTime(e*(1-r)+n*r),o}}function Ft(e,n){return e=+e,n=+n,function(o){return e*(1-o)+n*o}}function Iv(e,n){var o={},r={},i;(e===null||typeof e!="object")&&(e={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in e?o[i]=Zo(e[i],n[i]):r[i]=n[i];return function(a){for(i in o)r[i]=o[i](a);return r}}var wl=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,kl=new RegExp(wl.source,"g");function Pv(e){return function(){return e}}function Tv(e){return function(n){return e(n)+""}}function df(e,n){var o=wl.lastIndex=kl.lastIndex=0,r,i,a,l=-1,s=[],c=[];for(e=e+"",n=n+"";(r=wl.exec(e))&&(i=kl.exec(n));)(a=i.index)>o&&(a=n.slice(o,a),s[l]?s[l]+=a:s[++l]=a),(r=r[0])===(i=i[0])?s[l]?s[l]+=i:s[++l]=i:(s[++l]=null,c.push({i:l,x:Ft(r,i)})),o=kl.lastIndex;return o<n.length&&(a=n.slice(o),s[l]?s[l]+=a:s[++l]=a),s.length<2?c[0]?Tv(c[0].x):Pv(n):(n=c.length,function(u){for(var f=0,d;f<n;++f)s[(d=c[f]).i]=d.x(u);return s.join("")})}function Zo(e,n){var o=typeof n,r;return n==null||o==="boolean"?bl(n):(o==="number"?Ft:o==="string"?(r=An(n))?(n=r,ii):df:n instanceof An?ii:n instanceof Date?Av:vv(n)?Sv:Array.isArray(n)?xv:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?Iv:Ft)(e,n)}var uf=180/Math.PI,Cl={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ff(e,n,o,r,i,a){var l,s,c;return(l=Math.sqrt(e*e+n*n))&&(e/=l,n/=l),(c=e*o+n*r)&&(o-=e*c,r-=n*c),(s=Math.sqrt(o*o+r*r))&&(o/=s,r/=s,c/=s),e*r<n*o&&(e=-e,n=-n,c=-c,l=-l),{translateX:i,translateY:a,rotate:Math.atan2(n,e)*uf,skewX:Math.atan(c)*uf,scaleX:l,scaleY:s}}var ai;function Ov(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Cl:ff(n.a,n.b,n.c,n.d,n.e,n.f)}function $v(e){return e==null||(ai||(ai=document.createElementNS("http://www.w3.org/2000/svg","g")),ai.setAttribute("transform",e),!(e=ai.transform.baseVal.consolidate()))?Cl:(e=e.matrix,ff(e.a,e.b,e.c,e.d,e.e,e.f))}function pf(e,n,o,r){function i(u){return u.length?u.pop()+" ":""}function a(u,f,d,p,m,y){if(u!==d||f!==p){var b=m.push("translate(",null,n,null,o);y.push({i:b-4,x:Ft(u,d)},{i:b-2,x:Ft(f,p)})}else(d||p)&&m.push("translate("+d+n+p+o)}function l(u,f,d,p){u!==f?(u-f>180?f+=360:f-u>180&&(u+=360),p.push({i:d.push(i(d)+"rotate(",null,r)-2,x:Ft(u,f)})):f&&d.push(i(d)+"rotate("+f+r)}function s(u,f,d,p){u!==f?p.push({i:d.push(i(d)+"skewX(",null,r)-2,x:Ft(u,f)}):f&&d.push(i(d)+"skewX("+f+r)}function c(u,f,d,p,m,y){if(u!==d||f!==p){var b=m.push(i(m)+"scale(",null,",",null,")");y.push({i:b-4,x:Ft(u,d)},{i:b-2,x:Ft(f,p)})}else(d!==1||p!==1)&&m.push(i(m)+"scale("+d+","+p+")")}return function(u,f){var d=[],p=[];return u=e(u),f=e(f),a(u.translateX,u.translateY,f.translateX,f.translateY,d,p),l(u.rotate,f.rotate,d,p),s(u.skewX,f.skewX,d,p),c(u.scaleX,u.scaleY,f.scaleX,f.scaleY,d,p),u=f=null,function(m){for(var y=-1,b=p.length,g;++y<b;)d[(g=p[y]).i]=g.x(m);return d.join("")}}}var Bv=pf(Ov,"px, ","px)","deg)"),Vv=pf($v,", ",")",")"),Rv=1e-12;function mf(e){return((e=Math.exp(e))+1/e)/2}function Dv(e){return((e=Math.exp(e))-1/e)/2}function Mv(e){return((e=Math.exp(2*e))-1)/(e+1)}const li=function e(n,o,r){function i(a,l){var s=a[0],c=a[1],u=a[2],f=l[0],d=l[1],p=l[2],m=f-s,y=d-c,b=m*m+y*y,g,h;if(b<Rv)h=Math.log(p/u)/n,g=function(N){return[s+N*m,c+N*y,u*Math.exp(n*N*h)]};else{var w=Math.sqrt(b),_=(p*p-u*u+r*b)/(2*u*o*w),k=(p*p-u*u-r*b)/(2*p*o*w),E=Math.log(Math.sqrt(_*_+1)-_),C=Math.log(Math.sqrt(k*k+1)-k);h=(C-E)/n,g=function(N){var I=N*h,D=mf(E),G=u/(o*w)*(D*Mv(n*I+E)-Dv(E));return[s+G*m,c+G*y,u*D/mf(n*I+E)]}}return g.duration=h*1e3*n/Math.SQRT2,g}return i.rho=function(a){var l=Math.max(.001,+a),s=l*l,c=s*s;return e(l,s,c)},i}(Math.SQRT2,2,4);var so=0,Jo=0,Qo=0,gf=1e3,si,er,ci=0,Tn=0,di=0,tr=typeof performance=="object"&&performance.now?performance:Date,hf=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function El(){return Tn||(hf(Lv),Tn=tr.now()+di)}function Lv(){Tn=0}function ui(){this._call=this._time=this._next=null}ui.prototype=yf.prototype={constructor:ui,restart:function(e,n,o){if(typeof e!="function")throw new TypeError("callback is not a function");o=(o==null?El():+o)+(n==null?0:+n),!this._next&&er!==this&&(er?er._next=this:si=this,er=this),this._call=e,this._time=o,Nl()},stop:function(){this._call&&(this._call=null,this._time=1/0,Nl())}};function yf(e,n,o){var r=new ui;return r.restart(e,n,o),r}function Fv(){El(),++so;for(var e=si,n;e;)(n=Tn-e._time)>=0&&e._call.call(void 0,n),e=e._next;--so}function _f(){Tn=(ci=tr.now())+di,so=Jo=0;try{Fv()}finally{so=0,Kv(),Tn=0}}function Uv(){var e=tr.now(),n=e-ci;n>gf&&(di-=n,ci=e)}function Kv(){for(var e,n=si,o,r=1/0;n;)n._call?(r>n._time&&(r=n._time),e=n,n=n._next):(o=n._next,n._next=null,n=e?e._next=o:si=o);er=e,Nl(r)}function Nl(e){if(!so){Jo&&(Jo=clearTimeout(Jo));var n=e-Tn;n>24?(e<1/0&&(Jo=setTimeout(_f,e-tr.now()-di)),Qo&&(Qo=clearInterval(Qo))):(Qo||(ci=tr.now(),Qo=setInterval(Uv,gf)),so=1,hf(_f))}}function bf(e,n,o){var r=new ui;return n=n==null?0:+n,r.restart(i=>{r.stop(),e(i+n)},n,o),r}var jv=Xr("start","end","cancel","interrupt"),Gv=[],wf=0,kf=1,Sl=2,fi=3,Cf=4,vl=5,pi=6;function mi(e,n,o,r,i,a){var l=e.__transition;if(!l)e.__transition={};else if(o in l)return;qv(e,o,{name:n,index:r,group:i,on:jv,tween:Gv,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:wf})}function xl(e,n){var o=$t(e,n);if(o.state>wf)throw new Error("too late; already scheduled");return o}function Ut(e,n){var o=$t(e,n);if(o.state>fi)throw new Error("too late; already running");return o}function $t(e,n){var o=e.__transition;if(!o||!(o=o[n]))throw new Error("transition not found");return o}function qv(e,n,o){var r=e.__transition,i;r[n]=o,o.timer=yf(a,0,o.time);function a(u){o.state=kf,o.timer.restart(l,o.delay,o.time),o.delay<=u&&l(u-o.delay)}function l(u){var f,d,p,m;if(o.state!==kf)return c();for(f in r)if(m=r[f],m.name===o.name){if(m.state===fi)return bf(l);m.state===Cf?(m.state=pi,m.timer.stop(),m.on.call("interrupt",e,e.__data__,m.index,m.group),delete r[f]):+f<n&&(m.state=pi,m.timer.stop(),m.on.call("cancel",e,e.__data__,m.index,m.group),delete r[f])}if(bf(function(){o.state===fi&&(o.state=Cf,o.timer.restart(s,o.delay,o.time),s(u))}),o.state=Sl,o.on.call("start",e,e.__data__,o.index,o.group),o.state===Sl){for(o.state=fi,i=new Array(p=o.tween.length),f=0,d=-1;f<p;++f)(m=o.tween[f].value.call(e,e.__data__,o.index,o.group))&&(i[++d]=m);i.length=d+1}}function s(u){for(var f=u<o.duration?o.ease.call(null,u/o.duration):(o.timer.restart(c),o.state=vl,1),d=-1,p=i.length;++d<p;)i[d].call(e,f);o.state===vl&&(o.on.call("end",e,e.__data__,o.index,o.group),c())}function c(){o.state=pi,o.timer.stop(),delete r[n];for(var u in r)return;delete e.__transition}}function gi(e,n){var o=e.__transition,r,i,a=!0,l;if(o){n=n==null?null:n+"";for(l in o){if((r=o[l]).name!==n){a=!1;continue}i=r.state>Sl&&r.state<vl,r.state=pi,r.timer.stop(),r.on.call(i?"interrupt":"cancel",e,e.__data__,r.index,r.group),delete o[l]}a&&delete e.__transition}}function zv(e){return this.each(function(){gi(this,e)})}function Hv(e,n){var o,r;return function(){var i=Ut(this,e),a=i.tween;if(a!==o){r=o=a;for(var l=0,s=r.length;l<s;++l)if(r[l].name===n){r=r.slice(),r.splice(l,1);break}}i.tween=r}}function Yv(e,n,o){var r,i;if(typeof o!="function")throw new Error;return function(){var a=Ut(this,e),l=a.tween;if(l!==r){i=(r=l).slice();for(var s={name:n,value:o},c=0,u=i.length;c<u;++c)if(i[c].name===n){i[c]=s;break}c===u&&i.push(s)}a.tween=i}}function Wv(e,n){var o=this._id;if(e+="",arguments.length<2){for(var r=$t(this.node(),o).tween,i=0,a=r.length,l;i<a;++i)if((l=r[i]).name===e)return l.value;return null}return this.each((n==null?Hv:Yv)(o,e,n))}function Al(e,n,o){var r=e._id;return e.each(function(){var i=Ut(this,r);(i.value||(i.value={}))[n]=o.apply(this,arguments)}),function(i){return $t(i,r).value[n]}}function Ef(e,n){var o;return(typeof n=="number"?Ft:n instanceof An?ii:(o=An(n))?(n=o,ii):df)(e,n)}function Xv(e){return function(){this.removeAttribute(e)}}function Zv(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Jv(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttribute(e);return l===i?null:l===r?a:a=n(r=l,o)}}function Qv(e,n,o){var r,i=o+"",a;return function(){var l=this.getAttributeNS(e.space,e.local);return l===i?null:l===r?a:a=n(r=l,o)}}function ex(e,n,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttribute(e):(l=this.getAttribute(e),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s)))}}function tx(e,n,o){var r,i,a;return function(){var l,s=o(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),c=s+"",l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s)))}}function nx(e,n){var o=Jr(e),r=o==="transform"?Vv:Ef;return this.attrTween(e,typeof n=="function"?(o.local?tx:ex)(o,r,Al(this,"attr."+e,n)):n==null?(o.local?Zv:Xv)(o):(o.local?Qv:Jv)(o,r,n))}function ox(e,n){return function(o){this.setAttribute(e,n.call(this,o))}}function rx(e,n){return function(o){this.setAttributeNS(e.space,e.local,n.call(this,o))}}function ix(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&rx(e,a)),o}return i._value=n,i}function ax(e,n){var o,r;function i(){var a=n.apply(this,arguments);return a!==r&&(o=(r=a)&&ox(e,a)),o}return i._value=n,i}function lx(e,n){var o="attr."+e;if(arguments.length<2)return(o=this.tween(o))&&o._value;if(n==null)return this.tween(o,null);if(typeof n!="function")throw new Error;var r=Jr(e);return this.tween(o,(r.local?ix:ax)(r,n))}function sx(e,n){return function(){xl(this,e).delay=+n.apply(this,arguments)}}function cx(e,n){return n=+n,function(){xl(this,e).delay=n}}function dx(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?sx:cx)(n,e)):$t(this.node(),n).delay}function ux(e,n){return function(){Ut(this,e).duration=+n.apply(this,arguments)}}function fx(e,n){return n=+n,function(){Ut(this,e).duration=n}}function px(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?ux:fx)(n,e)):$t(this.node(),n).duration}function mx(e,n){if(typeof n!="function")throw new Error;return function(){Ut(this,e).ease=n}}function gx(e){var n=this._id;return arguments.length?this.each(mx(n,e)):$t(this.node(),n).ease}function hx(e,n){return function(){var o=n.apply(this,arguments);if(typeof o!="function")throw new Error;Ut(this,e).ease=o}}function yx(e){if(typeof e!="function")throw new Error;return this.each(hx(this._id,e))}function _x(e){typeof e!="function"&&(e=Fu(e));for(var n=this._groups,o=n.length,r=new Array(o),i=0;i<o;++i)for(var a=n[i],l=a.length,s=r[i]=[],c,u=0;u<l;++u)(c=a[u])&&e.call(c,c.__data__,u,a)&&s.push(c);return new Jt(r,this._parents,this._name,this._id)}function bx(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,o=e._groups,r=n.length,i=o.length,a=Math.min(r,i),l=new Array(r),s=0;s<a;++s)for(var c=n[s],u=o[s],f=c.length,d=l[s]=new Array(f),p,m=0;m<f;++m)(p=c[m]||u[m])&&(d[m]=p);for(;s<r;++s)l[s]=n[s];return new Jt(l,this._parents,this._name,this._id)}function wx(e){return(e+"").trim().split(/^|\s+/).every(function(n){var o=n.indexOf(".");return o>=0&&(n=n.slice(0,o)),!n||n==="start"})}function kx(e,n,o){var r,i,a=wx(n)?xl:Ut;return function(){var l=a(this,e),s=l.on;s!==r&&(i=(r=s).copy()).on(n,o),l.on=i}}function Cx(e,n){var o=this._id;return arguments.length<2?$t(this.node(),o).on.on(e):this.each(kx(o,e,n))}function Ex(e){return function(){var n=this.parentNode;for(var o in this.__transition)if(+o!==e)return;n&&n.removeChild(this)}}function Nx(){return this.on("end.remove",Ex(this._id))}function Sx(e){var n=this._name,o=this._id;typeof e!="function"&&(e=fl(e));for(var r=this._groups,i=r.length,a=new Array(i),l=0;l<i;++l)for(var s=r[l],c=s.length,u=a[l]=new Array(c),f,d,p=0;p<c;++p)(f=s[p])&&(d=e.call(f,f.__data__,p,s))&&("__data__"in f&&(d.__data__=f.__data__),u[p]=d,mi(u[p],n,o,p,u,$t(f,o)));return new Jt(a,this._parents,n,o)}function vx(e){var n=this._name,o=this._id;typeof e!="function"&&(e=Lu(e));for(var r=this._groups,i=r.length,a=[],l=[],s=0;s<i;++s)for(var c=r[s],u=c.length,f,d=0;d<u;++d)if(f=c[d]){for(var p=e.call(f,f.__data__,d,c),m,y=$t(f,o),b=0,g=p.length;b<g;++b)(m=p[b])&&mi(m,n,o,b,p,y);a.push(p),l.push(f)}return new Jt(a,l,n,o)}var xx=zo.prototype.constructor;function Ax(){return new xx(this._groups,this._parents)}function Ix(e,n){var o,r,i;return function(){var a=io(this,e),l=(this.style.removeProperty(e),io(this,e));return a===l?null:a===o&&l===r?i:i=n(o=a,r=l)}}function Nf(e){return function(){this.style.removeProperty(e)}}function Px(e,n,o){var r,i=o+"",a;return function(){var l=io(this,e);return l===i?null:l===r?a:a=n(r=l,o)}}function Tx(e,n,o){var r,i,a;return function(){var l=io(this,e),s=o(this),c=s+"";return s==null&&(c=s=(this.style.removeProperty(e),io(this,e))),l===c?null:l===r&&c===i?a:(i=c,a=n(r=l,s))}}function Ox(e,n){var o,r,i,a="style."+n,l="end."+a,s;return function(){var c=Ut(this,e),u=c.on,f=c.value[a]==null?s||(s=Nf(n)):void 0;(u!==o||i!==f)&&(r=(o=u).copy()).on(l,i=f),c.on=r}}function $x(e,n,o){var r=(e+="")=="transform"?Bv:Ef;return n==null?this.styleTween(e,Ix(e,r)).on("end.style."+e,Nf(e)):typeof n=="function"?this.styleTween(e,Tx(e,r,Al(this,"style."+e,n))).each(Ox(this._id,e)):this.styleTween(e,Px(e,r,n),o).on("end.style."+e,null)}function Bx(e,n,o){return function(r){this.style.setProperty(e,n.call(this,r),o)}}function Vx(e,n,o){var r,i;function a(){var l=n.apply(this,arguments);return l!==i&&(r=(i=l)&&Bx(e,l,o)),r}return a._value=n,a}function Rx(e,n,o){var r="style."+(e+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;return this.tween(r,Vx(e,n,o??""))}function Dx(e){return function(){this.textContent=e}}function Mx(e){return function(){var n=e(this);this.textContent=n??""}}function Lx(e){return this.tween("text",typeof e=="function"?Mx(Al(this,"text",e)):Dx(e==null?"":e+""))}function Fx(e){return function(n){this.textContent=e.call(this,n)}}function Ux(e){var n,o;function r(){var i=e.apply(this,arguments);return i!==o&&(n=(o=i)&&Fx(i)),n}return r._value=e,r}function Kx(e){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,Ux(e))}function jx(){for(var e=this._name,n=this._id,o=Sf(),r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,u=0;u<s;++u)if(c=l[u]){var f=$t(c,n);mi(c,e,o,u,l,{time:f.time+f.delay+f.duration,delay:0,duration:f.duration,ease:f.ease})}return new Jt(r,this._parents,e,o)}function Gx(){var e,n,o=this,r=o._id,i=o.size();return new Promise(function(a,l){var s={value:l},c={value:function(){--i===0&&a()}};o.each(function(){var u=Ut(this,r),f=u.on;f!==e&&(n=(e=f).copy(),n._.cancel.push(s),n._.interrupt.push(s),n._.end.push(c)),u.on=n}),i===0&&a()})}var qx=0;function Jt(e,n,o,r){this._groups=e,this._parents=n,this._name=o,this._id=r}function Sf(){return++qx}var Qt=zo.prototype;Jt.prototype={constructor:Jt,select:Sx,selectAll:vx,selectChild:Qt.selectChild,selectChildren:Qt.selectChildren,filter:_x,merge:bx,selection:Ax,transition:jx,call:Qt.call,nodes:Qt.nodes,node:Qt.node,size:Qt.size,empty:Qt.empty,each:Qt.each,on:Cx,attr:nx,attrTween:lx,style:$x,styleTween:Rx,text:Lx,textTween:Kx,remove:Nx,tween:Wv,delay:dx,duration:px,ease:gx,easeVarying:yx,end:Gx,[Symbol.iterator]:Qt[Symbol.iterator]};function zx(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var Hx={time:null,delay:0,duration:250,ease:zx};function Yx(e,n){for(var o;!(o=e.__transition)||!(o=o[n]);)if(!(e=e.parentNode))throw new Error(`transition ${n} not found`);return o}function Wx(e){var n,o;e instanceof Jt?(n=e._id,e=e._name):(n=Sf(),(o=Hx).time=El(),e=e==null?null:e+"");for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var l=r[a],s=l.length,c,u=0;u<s;++u)(c=l[u])&&mi(c,e,n,u,l,o||Yx(c,n));return new Jt(r,this._parents,e,n)}zo.prototype.interrupt=zv,zo.prototype.transition=Wx;const hi=e=>()=>e;function Xx(e,{sourceEvent:n,target:o,transform:r,dispatch:i}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:o,enumerable:!0,configurable:!0},transform:{value:r,enumerable:!0,configurable:!0},_:{value:i}})}function en(e,n,o){this.k=e,this.x=n,this.y=o}en.prototype={constructor:en,scale:function(e){return e===1?this:new en(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new en(this.k,this.x+this.k*e,this.y+this.k*n)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var co=new en(1,0,0);en.prototype;function Il(e){e.stopImmediatePropagation()}function nr(e){e.preventDefault(),e.stopImmediatePropagation()}function Zx(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function Jx(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function vf(){return this.__zoom||co}function Qx(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function eA(){return navigator.maxTouchPoints||"ontouchstart"in this}function tA(e,n,o){var r=e.invertX(n[0][0])-o[0][0],i=e.invertX(n[1][0])-o[1][0],a=e.invertY(n[0][1])-o[0][1],l=e.invertY(n[1][1])-o[1][1];return e.translate(i>r?(r+i)/2:Math.min(0,r)||Math.max(0,i),l>a?(a+l)/2:Math.min(0,a)||Math.max(0,l))}function nA(){var e=Zx,n=Jx,o=tA,r=Qx,i=eA,a=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],s=250,c=li,u=Xr("start","zoom","end"),f,d,p,m=500,y=150,b=0,g=10;function h(x){x.property("__zoom",vf).on("wheel.zoom",I,{passive:!1}).on("mousedown.zoom",D).on("dblclick.zoom",G).filter(i).on("touchstart.zoom",K).on("touchmove.zoom",S).on("touchend.zoom touchcancel.zoom",ne).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}h.transform=function(x,q,U,te){var V=x.selection?x.selection():x;V.property("__zoom",vf),x!==V?E(x,q,U,te):V.interrupt().each(function(){C(this,arguments).event(te).start().zoom(null,typeof q=="function"?q.apply(this,arguments):q).end()})},h.scaleBy=function(x,q,U,te){h.scaleTo(x,function(){var V=this.__zoom.k,T=typeof q=="function"?q.apply(this,arguments):q;return V*T},U,te)},h.scaleTo=function(x,q,U,te){h.transform(x,function(){var V=n.apply(this,arguments),T=this.__zoom,v=U==null?k(V):typeof U=="function"?U.apply(this,arguments):U,P=T.invert(v),A=typeof q=="function"?q.apply(this,arguments):q;return o(_(w(T,A),v,P),V,l)},U,te)},h.translateBy=function(x,q,U,te){h.transform(x,function(){return o(this.__zoom.translate(typeof q=="function"?q.apply(this,arguments):q,typeof U=="function"?U.apply(this,arguments):U),n.apply(this,arguments),l)},null,te)},h.translateTo=function(x,q,U,te,V){h.transform(x,function(){var T=n.apply(this,arguments),v=this.__zoom,P=te==null?k(T):typeof te=="function"?te.apply(this,arguments):te;return o(co.translate(P[0],P[1]).scale(v.k).translate(typeof q=="function"?-q.apply(this,arguments):-q,typeof U=="function"?-U.apply(this,arguments):-U),T,l)},te,V)};function w(x,q){return q=Math.max(a[0],Math.min(a[1],q)),q===x.k?x:new en(q,x.x,x.y)}function _(x,q,U){var te=q[0]-U[0]*x.k,V=q[1]-U[1]*x.k;return te===x.x&&V===x.y?x:new en(x.k,te,V)}function k(x){return[(+x[0][0]+ +x[1][0])/2,(+x[0][1]+ +x[1][1])/2]}function E(x,q,U,te){x.on("start.zoom",function(){C(this,arguments).event(te).start()}).on("interrupt.zoom end.zoom",function(){C(this,arguments).event(te).end()}).tween("zoom",function(){var V=this,T=arguments,v=C(V,T).event(te),P=n.apply(V,T),A=U==null?k(P):typeof U=="function"?U.apply(V,T):U,Y=Math.max(P[1][0]-P[0][0],P[1][1]-P[0][1]),W=V.__zoom,ie=typeof q=="function"?q.apply(V,T):q,oe=c(W.invert(A).concat(Y/W.k),ie.invert(A).concat(Y/ie.k));return function(de){if(de===1)de=ie;else{var he=oe(de),X=Y/he[2];de=new en(X,A[0]-he[0]*X,A[1]-he[1]*X)}v.zoom(null,de)}})}function C(x,q,U){return!U&&x.__zooming||new N(x,q)}function N(x,q){this.that=x,this.args=q,this.active=0,this.sourceEvent=null,this.extent=n.apply(x,q),this.taps=0}N.prototype={event:function(x){return x&&(this.sourceEvent=x),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(x,q){return this.mouse&&x!=="mouse"&&(this.mouse[1]=q.invert(this.mouse[0])),this.touch0&&x!=="touch"&&(this.touch0[1]=q.invert(this.touch0[0])),this.touch1&&x!=="touch"&&(this.touch1[1]=q.invert(this.touch1[0])),this.that.__zoom=q,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(x){var q=Tt(this.that).datum();u.call(x,this.that,new Xx(x,{sourceEvent:this.sourceEvent,target:h,transform:this.that.__zoom,dispatch:u}),q)}};function I(x,...q){if(!e.apply(this,arguments))return;var U=C(this,q).event(x),te=this.__zoom,V=Math.max(a[0],Math.min(a[1],te.k*Math.pow(2,r.apply(this,arguments)))),T=Mt(x);if(U.wheel)(U.mouse[0][0]!==T[0]||U.mouse[0][1]!==T[1])&&(U.mouse[1]=te.invert(U.mouse[0]=T)),clearTimeout(U.wheel);else{if(te.k===V)return;U.mouse=[T,te.invert(T)],gi(this),U.start()}nr(x),U.wheel=setTimeout(v,y),U.zoom("mouse",o(_(w(te,V),U.mouse[0],U.mouse[1]),U.extent,l));function v(){U.wheel=null,U.end()}}function D(x,...q){if(p||!e.apply(this,arguments))return;var U=x.currentTarget,te=C(this,q,!0).event(x),V=Tt(x.view).on("mousemove.zoom",A,!0).on("mouseup.zoom",Y,!0),T=Mt(x,U),v=x.clientX,P=x.clientY;Xu(x.view),Il(x),te.mouse=[T,this.__zoom.invert(T)],gi(this),te.start();function A(W){if(nr(W),!te.moved){var ie=W.clientX-v,oe=W.clientY-P;te.moved=ie*ie+oe*oe>b}te.event(W).zoom("mouse",o(_(te.that.__zoom,te.mouse[0]=Mt(W,U),te.mouse[1]),te.extent,l))}function Y(W){V.on("mousemove.zoom mouseup.zoom",null),Zu(W.view,te.moved),nr(W),te.event(W).end()}}function G(x,...q){if(e.apply(this,arguments)){var U=this.__zoom,te=Mt(x.changedTouches?x.changedTouches[0]:x,this),V=U.invert(te),T=U.k*(x.shiftKey?.5:2),v=o(_(w(U,T),te,V),n.apply(this,q),l);nr(x),s>0?Tt(this).transition().duration(s).call(E,v,te,x):Tt(this).call(h.transform,v,te,x)}}function K(x,...q){if(e.apply(this,arguments)){var U=x.touches,te=U.length,V=C(this,q,x.changedTouches.length===te).event(x),T,v,P,A;for(Il(x),v=0;v<te;++v)P=U[v],A=Mt(P,this),A=[A,this.__zoom.invert(A),P.identifier],V.touch0?!V.touch1&&V.touch0[2]!==A[2]&&(V.touch1=A,V.taps=0):(V.touch0=A,T=!0,V.taps=1+!!f);f&&(f=clearTimeout(f)),T&&(V.taps<2&&(d=A[0],f=setTimeout(function(){f=null},m)),gi(this),V.start())}}function S(x,...q){if(this.__zooming){var U=C(this,q).event(x),te=x.changedTouches,V=te.length,T,v,P,A;for(nr(x),T=0;T<V;++T)v=te[T],P=Mt(v,this),U.touch0&&U.touch0[2]===v.identifier?U.touch0[0]=P:U.touch1&&U.touch1[2]===v.identifier&&(U.touch1[0]=P);if(v=U.that.__zoom,U.touch1){var Y=U.touch0[0],W=U.touch0[1],ie=U.touch1[0],oe=U.touch1[1],de=(de=ie[0]-Y[0])*de+(de=ie[1]-Y[1])*de,he=(he=oe[0]-W[0])*he+(he=oe[1]-W[1])*he;v=w(v,Math.sqrt(de/he)),P=[(Y[0]+ie[0])/2,(Y[1]+ie[1])/2],A=[(W[0]+oe[0])/2,(W[1]+oe[1])/2]}else if(U.touch0)P=U.touch0[0],A=U.touch0[1];else return;U.zoom("touch",o(_(v,P,A),U.extent,l))}}function ne(x,...q){if(this.__zooming){var U=C(this,q).event(x),te=x.changedTouches,V=te.length,T,v;for(Il(x),p&&clearTimeout(p),p=setTimeout(function(){p=null},m),T=0;T<V;++T)v=te[T],U.touch0&&U.touch0[2]===v.identifier?delete U.touch0:U.touch1&&U.touch1[2]===v.identifier&&delete U.touch1;if(U.touch1&&!U.touch0&&(U.touch0=U.touch1,delete U.touch1),U.touch0)U.touch0[1]=this.__zoom.invert(U.touch0[0]);else if(U.end(),U.taps===2&&(v=Mt(v,this),Math.hypot(d[0]-v[0],d[1]-v[1])<g)){var P=Tt(this).on("dblclick.zoom");P&&P.apply(this,arguments)}}}return h.wheelDelta=function(x){return arguments.length?(r=typeof x=="function"?x:hi(+x),h):r},h.filter=function(x){return arguments.length?(e=typeof x=="function"?x:hi(!!x),h):e},h.touchable=function(x){return arguments.length?(i=typeof x=="function"?x:hi(!!x),h):i},h.extent=function(x){return arguments.length?(n=typeof x=="function"?x:hi([[+x[0][0],+x[0][1]],[+x[1][0],+x[1][1]]]),h):n},h.scaleExtent=function(x){return arguments.length?(a[0]=+x[0],a[1]=+x[1],h):[a[0],a[1]]},h.translateExtent=function(x){return arguments.length?(l[0][0]=+x[0][0],l[1][0]=+x[1][0],l[0][1]=+x[0][1],l[1][1]=+x[1][1],h):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},h.constrain=function(x){return arguments.length?(o=x,h):o},h.duration=function(x){return arguments.length?(s=+x,h):s},h.interpolate=function(x){return arguments.length?(c=x,h):c},h.on=function(){var x=u.on.apply(u,arguments);return x===u?h:x},h.clickDistance=function(x){return arguments.length?(b=(x=+x)*x,h):Math.sqrt(b)},h.tapDistance=function(x){return arguments.length?(g=+x,h):g},h}var ke=(e=>(e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom",e))(ke||{}),Pl=(e=>(e.Partial="partial",e.Full="full",e))(Pl||{}),On=(e=>(e.Bezier="default",e.SimpleBezier="simple-bezier",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e))(On||{}),cn=(e=>(e.Strict="strict",e.Loose="loose",e))(cn||{}),or=(e=>(e.Arrow="arrow",e.ArrowClosed="arrowclosed",e))(or||{}),rr=(e=>(e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal",e))(rr||{}),xf=(e=>(e.TopLeft="top-left",e.TopCenter="top-center",e.TopRight="top-right",e.BottomLeft="bottom-left",e.BottomCenter="bottom-center",e.BottomRight="bottom-right",e))(xf||{});const oA=["INPUT","SELECT","TEXTAREA"],rA=typeof document<"u"?document:null;function Tl(e){var n,o;const r=((o=(n=e.composedPath)==null?void 0:n.call(e))==null?void 0:o[0])||e.target,i=typeof(r==null?void 0:r.hasAttribute)=="function"?r.hasAttribute("contenteditable"):!1,a=typeof(r==null?void 0:r.closest)=="function"?r.closest(".nokey"):null;return oA.includes(r==null?void 0:r.nodeName)||i||!!a}function iA(e){return e.ctrlKey||e.metaKey||e.shiftKey||e.altKey}function Af(e,n,o,r){const i=n.replace("+",`
120
120
  `).replace(`
121
121
 
122
122
  `,`
123
123
  +`).split(`
124
- `).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===n.toLowerCase();r||o.add(e.toLowerCase());const a=i.every((l,s)=>o.has(l)&&Array.from(o.values())[s]===i[s]);return r&&o.delete(e.toLowerCase()),a}function vx(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=xx(o.code,e);return Array.isArray(e)?e.some(i=>gf(o[r],i,n,o.type==="keyup")):gf(o[r],e,n,o.type==="keyup")}}function xx(e,n){return n.includes(e)?"code":"key"}function Wo(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??Nx),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}),ku(["blur","contextmenu"],s),Cu((...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=Sx(d),(!i||i&&!p)&&wl(d))return;const _=((u=(f=d.composedPath)==null?void 0:f.call(d))==null?void 0:u[0])||d.target,g=(_==null?void 0:_.nodeName)==="BUTTON"||(_==null?void 0:_.nodeName)==="A";!m&&(i||!g)&&d.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Cu((...d)=>l(...d),d=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&wl(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"?vx(d,a):d}return r}const hf="vue-flow__node-desc",yf="vue-flow__edge-desc",Ax="vue-flow__aria-live",_f=["Enter"," ","Escape"],to={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function pi(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function mi(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 gi(e){return{width:e.offsetWidth,height:e.offsetHeight}}function Nn(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function bf(e,n){return{x:Nn(e.x,n[0][0],n[1][0]),y:Nn(e.y,n[0][1],n[1][1])}}function wf(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function en(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function Sn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!en(e)}function Xo(e){return Sn(e)&&"computedPosition"in e}function hi(e){return!Number.isNaN(e)&&Number.isFinite(e)}function Ix(e){return hi(e.width)&&hi(e.height)&&hi(e.x)&&hi(e.y)}function Px(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:ze(e.data)?e.data:{},events:t.markRaw(ze(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function kf(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:ze(e.data)?e.data:{},events:t.markRaw(ze(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 Cf(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 Tx(...e){if(e.length===3){const[a,l,s]=e;return Cf(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>en(a)&&a.source===r).map(a=>o.find(l=>Sn(l)&&l.id===a.target))}function Ox(...e){if(e.length===3){const[a,l,s]=e;return Cf(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>en(a)&&a.target===r).map(a=>o.find(l=>Sn(l)&&l.id===a.source))}function Ef({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function $x(e,n){return n.some(o=>en(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 kl({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function Zo({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?_i(s,l):s}function Bx(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 Nf({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function Vx({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Sf(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=Bx(n,Nf({...r.computedPosition,...r.dimensions}))}return Vx(n)}function vf(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...Zo(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=mi(a,pi(s)),h=u===null||p===null,_=r&&m>0,g=(u??0)*(p??0);(h||_||m>=g||s.dragging)&&l.push(s)}return l}function xf(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 Af(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=Nn(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 Rx(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function If(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:If(o,n):!1}function Jo(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function Pf(e,n,o){return e<n?Nn(Math.abs(e-n),1,n)/n:e>o?-Nn(Math.abs(e-o),1,n)/n:0}function Tf(e,n,o=15,r=40){const i=Pf(e.x,r,n.width-r)*o,a=Pf(e.y,r,n.height-r)*o;return[i,a]}function Cl(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 Of(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(Xo(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&&Xo(c)&&Cl(l,c)}break;case"dimensions":if(Xo(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&&Xo(c)&&(!!c.dimensions.width&&!!c.dimensions.height?Cl(l,c):t.nextTick(()=>{Cl(l,c)}))}break}return n}function tn(e,n){return{id:e,type:"select",selected:n}}function $f(e){return{item:e,type:"add"}}function Bf(e){return{id:e,type:"remove"}}function Vf(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function nn(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(tn(a.id,l)))}return r}function _e(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 qr(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function Rf(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 Dx(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!If(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 El({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 Df(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 Mx(e,n,o){const[r,i,a,l]=typeof e!="string"?Df(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 Fx(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=Mx(i,e,r);a&&(i=a)}else n(new Ze(Ge.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]=Df(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 Lx({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function Nl(e,n,o,r,i){const a=Lx(e.dimensions,Fx(e,o,r,i)),l=bf(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 no(e,n,o=be.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??qx(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case be.Top:return{x:i+l/2,y:a};case be.Right:return{x:i+l,y:a+s/2};case be.Bottom:return{x:i+l/2,y:a+s};case be.Left:return{x:i,y:a+s/2}}}function Mf(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function Ux({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=Nf({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 Kx(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 Ge=(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))(Ge||{});const Ff={MISSING_STYLES:()=>"It seems that you haven't loaded the necessary styles. Please import '@vue-flow/core/dist/style.css' to ensure that the graph is rendered correctly",MISSING_VIEWPORT_DIMENSIONS:()=>"The Vue Flow parent container needs a width and a height to render the graph",NODE_INVALID:e=>`Node is invalid
124
+ `).map(l=>l.trim().toLowerCase());if(i.length===1)return e.toLowerCase()===n.toLowerCase();r||o.add(e.toLowerCase());const a=i.every((l,s)=>o.has(l)&&Array.from(o.values())[s]===i[s]);return r&&o.delete(e.toLowerCase()),a}function aA(e,n){return o=>{if(!o.code&&!o.key)return!1;const r=lA(o.code,e);return Array.isArray(e)?e.some(i=>Af(o[r],i,n,o.type==="keyup")):Af(o[r],e,n,o.type==="keyup")}}function lA(e,n){return n.includes(e)?"code":"key"}function ir(e,n){const o=t.computed(()=>t.toValue(n==null?void 0:n.target)??rA),r=t.shallowRef(t.toValue(e)===!0);let i=!1;const a=new Set;let l=c(t.toValue(e));t.watch(()=>t.toValue(e),(u,f)=>{typeof f=="boolean"&&typeof u!="boolean"&&s(),l=c(u)},{immediate:!0}),Bu(["blur","contextmenu"],s),Vu((...u)=>l(...u),u=>{var f,d;const p=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0,m=t.toValue(n==null?void 0:n.preventDefault)??!1;if(i=iA(u),(!i||i&&!p)&&Tl(u))return;const b=((d=(f=u.composedPath)==null?void 0:f.call(u))==null?void 0:d[0])||u.target,g=(b==null?void 0:b.nodeName)==="BUTTON"||(b==null?void 0:b.nodeName)==="A";!m&&(i||!g)&&u.preventDefault(),r.value=!0},{eventName:"keydown",target:o}),Vu((...u)=>l(...u),u=>{const f=t.toValue(n==null?void 0:n.actInsideInputWithModifier)??!0;if(r.value){if((!i||i&&!f)&&Tl(u))return;i=!1,r.value=!1}},{eventName:"keyup",target:o});function s(){i=!1,a.clear(),r.value=t.toValue(e)===!0}function c(u){return u===null?(s(),()=>!1):typeof u=="boolean"?(s(),r.value=u,()=>!1):Array.isArray(u)||typeof u=="string"?aA(u,a):u}return r}const If="vue-flow__node-desc",Pf="vue-flow__edge-desc",sA="vue-flow__aria-live",Tf=["Enter"," ","Escape"],uo={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};function yi(e){return{...e.computedPosition||{x:0,y:0},width:e.dimensions.width||0,height:e.dimensions.height||0}}function _i(e,n){const o=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),r=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(o*r)}function bi(e){return{width:e.offsetWidth,height:e.offsetHeight}}function $n(e,n=0,o=1){return Math.min(Math.max(e,n),o)}function Of(e,n){return{x:$n(e.x,n[0][0],n[1][0]),y:$n(e.y,n[0][1],n[1][1])}}function $f(e){const n=e.getRootNode();return"elementFromPoint"in n?n:window.document}function dn(e){return e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e}function Bn(e){return e&&typeof e=="object"&&"id"in e&&"position"in e&&!dn(e)}function ar(e){return Bn(e)&&"computedPosition"in e}function wi(e){return!Number.isNaN(e)&&Number.isFinite(e)}function cA(e){return wi(e.width)&&wi(e.height)&&wi(e.x)&&wi(e.y)}function dA(e,n,o){const r={id:e.id.toString(),type:e.type??"default",dimensions:t.markRaw({width:0,height:0}),computedPosition:t.markRaw({z:0,...e.position}),handleBounds:{source:[],target:[]},draggable:void 0,selectable:void 0,connectable:void 0,focusable:void 0,selected:!1,dragging:!1,resizing:!1,initialized:!1,isParent:!1,position:{x:0,y:0},data:et(e.data)?e.data:{},events:t.markRaw(et(e.events)?e.events:{})};return Object.assign(n??r,e,{id:e.id.toString(),parentNode:o})}function Bf(e,n,o){var r,i;const a={id:e.id.toString(),type:e.type??(n==null?void 0:n.type)??"default",source:e.source.toString(),target:e.target.toString(),sourceHandle:(r=e.sourceHandle)==null?void 0:r.toString(),targetHandle:(i=e.targetHandle)==null?void 0:i.toString(),updatable:e.updatable??(o==null?void 0:o.updatable),selectable:e.selectable??(o==null?void 0:o.selectable),focusable:e.focusable??(o==null?void 0:o.focusable),data:et(e.data)?e.data:{},events:t.markRaw(et(e.events)?e.events:{}),label:e.label??"",interactionWidth:e.interactionWidth??(o==null?void 0:o.interactionWidth),...o??{}};return Object.assign(n??a,e,{id:e.id.toString()})}function Vf(e,n,o,r){const i=typeof e=="string"?e:e.id,a=new Set,l=r==="source"?"target":"source";for(const s of o)s[l]===i&&a.add(s[r]);return n.filter(s=>a.has(s.id))}function uA(...e){if(e.length===3){const[a,l,s]=e;return Vf(a,l,s,"target")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>dn(a)&&a.source===r).map(a=>o.find(l=>Bn(l)&&l.id===a.target))}function fA(...e){if(e.length===3){const[a,l,s]=e;return Vf(a,l,s,"source")}const[n,o]=e,r=typeof n=="string"?n:n.id;return o.filter(a=>dn(a)&&a.target===r).map(a=>o.find(l=>Bn(l)&&l.id===a.source))}function Rf({source:e,sourceHandle:n,target:o,targetHandle:r}){return`vueflow__edge-${e}${n??""}-${o}${r??""}`}function pA(e,n){return n.some(o=>dn(o)&&o.source===e.source&&o.target===e.target&&(o.sourceHandle===e.sourceHandle||!o.sourceHandle&&!e.sourceHandle)&&(o.targetHandle===e.targetHandle||!o.targetHandle&&!e.targetHandle))}function Ol({x:e,y:n},{x:o,y:r,zoom:i}){return{x:e*i+o,y:n*i+r}}function lr({x:e,y:n},{x:o,y:r,zoom:i},a=!1,l=[1,1]){const s={x:(e-o)/i,y:(n-r)/i};return a?Ci(s,l):s}function mA(e,n){return{x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x2,n.x2),y2:Math.max(e.y2,n.y2)}}function Df({x:e,y:n,width:o,height:r}){return{x:e,y:n,x2:e+o,y2:n+r}}function gA({x:e,y:n,x2:o,y2:r}){return{x:e,y:n,width:o-e,height:r-n}}function Mf(e){let n={x:Number.POSITIVE_INFINITY,y:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};for(let o=0;o<e.length;o++){const r=e[o];n=mA(n,Df({...r.computedPosition,...r.dimensions}))}return gA(n)}function Lf(e,n,o={x:0,y:0,zoom:1},r=!1,i=!1){const a={...lr(n,o),width:n.width/o.zoom,height:n.height/o.zoom},l=[];for(const s of e){const{dimensions:c,selectable:u=!0,hidden:f=!1}=s,d=c.width??s.width??null,p=c.height??s.height??null;if(i&&!u||f)continue;const m=_i(a,yi(s)),y=d===null||p===null,b=r&&m>0,g=(d??0)*(p??0);(y||b||m>=g||s.dragging)&&l.push(s)}return l}function Ff(e,n){const o=new Set;if(typeof e=="string")o.add(e);else if(e.length>=1)for(const r of e)o.add(r.id);return n.filter(r=>o.has(r.source)||o.has(r.target))}function Uf(e,n,o,r,i,a=.1,l={x:0,y:0}){const s=n/(e.width*(1+a)),c=o/(e.height*(1+a)),u=Math.min(s,c),f=$n(u,r,i),d=e.x+e.width/2,p=e.y+e.height/2,m=n/2-d*f+(l.x??0),y=o/2-p*f+(l.y??0);return{x:m,y,zoom:f}}function hA(e,n){return{x:n.x+e.x,y:n.y+e.y,z:(e.z>n.z?e.z:n.z)+1}}function Kf(e,n){if(!e.parentNode)return!1;const o=n(e.parentNode);return o?o.selected?!0:Kf(o,n):!1}function sr(e,n){return typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(r=>`${r}=${e[r]}`).join("&")}`}function jf(e,n,o){return e<n?$n(Math.abs(e-n),1,n)/n:e>o?-$n(Math.abs(e-o),1,n)/n:0}function Gf(e,n,o=15,r=40){const i=jf(e.x,r,n.width-r)*o,a=jf(e.y,r,n.height-r)*o;return[i,a]}function $l(e,n){if(n){const o=e.position.x+e.dimensions.width-n.dimensions.width,r=e.position.y+e.dimensions.height-n.dimensions.height;if(o>0||r>0||e.position.x<0||e.position.y<0){let i={};if(typeof n.style=="function"?i={...n.style(n)}:n.style&&(i={...n.style}),i.width=i.width??`${n.dimensions.width}px`,i.height=i.height??`${n.dimensions.height}px`,o>0)if(typeof i.width=="string"){const a=Number(i.width.replace("px",""));i.width=`${a+o}px`}else i.width+=o;if(r>0)if(typeof i.height=="string"){const a=Number(i.height.replace("px",""));i.height=`${a+r}px`}else i.height+=r;if(e.position.x<0){const a=Math.abs(e.position.x);if(n.position.x=n.position.x-a,typeof i.width=="string"){const l=Number(i.width.replace("px",""));i.width=`${l+a}px`}else i.width+=a;e.position.x=0}if(e.position.y<0){const a=Math.abs(e.position.y);if(n.position.y=n.position.y-a,typeof i.height=="string"){const l=Number(i.height.replace("px",""));i.height=`${l+a}px`}else i.height+=a;e.position.y=0}n.dimensions.width=Number(i.width.toString().replace("px","")),n.dimensions.height=Number(i.height.toString().replace("px","")),typeof n.style=="function"?n.style=a=>{const l=n.style;return{...l(a),...i}}:n.style={...n.style,...i}}}}function qf(e,n){var o,r;const i=e.filter(l=>l.type==="add"||l.type==="remove");for(const l of i)if(l.type==="add")n.findIndex(c=>c.id===l.item.id)===-1&&n.push(l.item);else if(l.type==="remove"){const s=n.findIndex(c=>c.id===l.id);s!==-1&&n.splice(s,1)}const a=n.map(l=>l.id);for(const l of n)for(const s of e)if(s.id===l.id)switch(s.type){case"select":l.selected=s.selected;break;case"position":if(ar(l)&&(typeof s.position<"u"&&(l.position=s.position),typeof s.dragging<"u"&&(l.dragging=s.dragging),l.expandParent&&l.parentNode)){const c=n[a.indexOf(l.parentNode)];c&&ar(c)&&$l(l,c)}break;case"dimensions":if(ar(l)&&(typeof s.dimensions<"u"&&(l.dimensions=s.dimensions),typeof s.updateStyle<"u"&&s.updateStyle&&(l.style={...l.style||{},width:`${(o=s.dimensions)==null?void 0:o.width}px`,height:`${(r=s.dimensions)==null?void 0:r.height}px`}),typeof s.resizing<"u"&&(l.resizing=s.resizing),l.expandParent&&l.parentNode)){const c=n[a.indexOf(l.parentNode)];c&&ar(c)&&(!!c.dimensions.width&&!!c.dimensions.height?$l(l,c):t.nextTick(()=>{$l(l,c)}))}break}return n}function un(e,n){return{id:e,type:"select",selected:n}}function zf(e){return{item:e,type:"add"}}function Hf(e){return{id:e,type:"remove"}}function Yf(e,n,o,r,i){return{id:e,source:n,target:o,sourceHandle:r||null,targetHandle:i||null,type:"remove"}}function fn(e,n=new Set,o=!1){const r=[];for(const[i,a]of e){const l=n.has(i);!(a.selected===void 0&&!l)&&a.selected!==l&&(o&&(a.selected=l),r.push(un(a.id,l)))}return r}function we(e){const n=new Set;let o=!1;const r=()=>n.size>0;e&&(o=!0,n.add(e));const i=s=>{n.delete(s)};return{on:s=>{e&&o&&n.delete(e),n.add(s);const c=()=>{i(s),e&&o&&n.add(e)};return Wr(c),{off:c}},off:i,trigger:s=>Promise.all(Array.from(n).map(c=>c(s))),hasListeners:r,fns:n}}function Wf(e,n,o){let r=e;do{if(r&&r.matches(n))return!0;if(r===o)return!1;r=r.parentElement}while(r);return!1}function yA(e,n,o,r,i){var a,l;const s=[];for(const c of e)(c.selected||c.id===i)&&(!c.parentNode||!Kf(c,r))&&(c.draggable||n&&typeof c.draggable>"u")&&s.push(t.markRaw({id:c.id,position:c.position||{x:0,y:0},distance:{x:o.x-((a=c.computedPosition)==null?void 0:a.x)||0,y:o.y-((l=c.computedPosition)==null?void 0:l.y)||0},from:c.computedPosition,extent:c.extent,parentNode:c.parentNode,dimensions:c.dimensions,expandParent:c.expandParent}));return s}function Bl({id:e,dragItems:n,findNode:o}){const r=[];for(const i of n){const a=o(i.id);a&&r.push(a)}return[e?r.find(i=>i.id===e):r[0],r]}function Xf(e){if(Array.isArray(e))switch(e.length){case 1:return[e[0],e[0],e[0],e[0]];case 2:return[e[0],e[1],e[0],e[1]];case 3:return[e[0],e[1],e[2],e[1]];case 4:return e;default:return[0,0,0,0]}return[e,e,e,e]}function _A(e,n,o){const[r,i,a,l]=typeof e!="string"?Xf(e.padding):[0,0,0,0];return o&&typeof o.computedPosition.x<"u"&&typeof o.computedPosition.y<"u"&&typeof o.dimensions.width<"u"&&typeof o.dimensions.height<"u"?[[o.computedPosition.x+l,o.computedPosition.y+r],[o.computedPosition.x+o.dimensions.width-i,o.computedPosition.y+o.dimensions.height-a]]:!1}function bA(e,n,o,r){let i=e.extent||o;if((i==="parent"||!Array.isArray(i)&&(i==null?void 0:i.range)==="parent")&&!e.expandParent)if(e.parentNode&&r&&e.dimensions.width&&e.dimensions.height){const a=_A(i,e,r);a&&(i=a)}else n(new at(Qe.NODE_EXTENT_INVALID,e.id)),i=o;else if(Array.isArray(i)){const a=(r==null?void 0:r.computedPosition.x)||0,l=(r==null?void 0:r.computedPosition.y)||0;i=[[i[0][0]+a,i[0][1]+l],[i[1][0]+a,i[1][1]+l]]}else if(i!=="parent"&&(i!=null&&i.range)&&Array.isArray(i.range)){const[a,l,s,c]=Xf(i.padding),u=(r==null?void 0:r.computedPosition.x)||0,f=(r==null?void 0:r.computedPosition.y)||0;i=[[i.range[0][0]+u+c,i.range[0][1]+f+a],[i.range[1][0]+u-l,i.range[1][1]+f-s]]}return i==="parent"?[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]]:i}function wA({width:e,height:n},o){return[o[0],[o[1][0]-(e||0),o[1][1]-(n||0)]]}function Vl(e,n,o,r,i){const a=wA(e.dimensions,bA(e,o,r,i)),l=Of(n,a);return{position:{x:l.x-((i==null?void 0:i.computedPosition.x)||0),y:l.y-((i==null?void 0:i.computedPosition.y)||0)},computedPosition:l}}function fo(e,n,o=ke.Left,r=!1){const i=((n==null?void 0:n.x)??0)+e.computedPosition.x,a=((n==null?void 0:n.y)??0)+e.computedPosition.y,{width:l,height:s}=n??NA(e);if(r)return{x:i+l/2,y:a+s/2};switch((n==null?void 0:n.position)??o){case ke.Top:return{x:i+l/2,y:a};case ke.Right:return{x:i+l,y:a+s/2};case ke.Bottom:return{x:i+l/2,y:a+s};case ke.Left:return{x:i,y:a+s/2}}}function Zf(e,n){return e&&(n?e.find(o=>o.id===n):e[0])||null}function kA({sourcePos:e,targetPos:n,sourceWidth:o,sourceHeight:r,targetWidth:i,targetHeight:a,width:l,height:s,viewport:c}){const u={x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x+o,n.x+i),y2:Math.max(e.y+r,n.y+a)};u.x===u.x2&&(u.x2+=1),u.y===u.y2&&(u.y2+=1);const f=Df({x:(0-c.x)/c.zoom,y:(0-c.y)/c.zoom,width:l/c.zoom,height:s/c.zoom}),d=Math.max(0,Math.min(f.x2,u.x2)-Math.max(f.x,u.x)),p=Math.max(0,Math.min(f.y2,u.y2)-Math.max(f.y,u.y));return Math.ceil(d*p)>0}function CA(e,n,o=!1){const r=typeof e.zIndex=="number";let i=r?e.zIndex:0;const a=n(e.source),l=n(e.target);return!a||!l?0:(o&&(i=r?e.zIndex:Math.max(a.computedPosition.z||0,l.computedPosition.z||0)),i)}var Qe=(e=>(e.MISSING_STYLES="MISSING_STYLES",e.MISSING_VIEWPORT_DIMENSIONS="MISSING_VIEWPORT_DIMENSIONS",e.NODE_INVALID="NODE_INVALID",e.NODE_NOT_FOUND="NODE_NOT_FOUND",e.NODE_MISSING_PARENT="NODE_MISSING_PARENT",e.NODE_TYPE_MISSING="NODE_TYPE_MISSING",e.NODE_EXTENT_INVALID="NODE_EXTENT_INVALID",e.EDGE_INVALID="EDGE_INVALID",e.EDGE_NOT_FOUND="EDGE_NOT_FOUND",e.EDGE_SOURCE_MISSING="EDGE_SOURCE_MISSING",e.EDGE_TARGET_MISSING="EDGE_TARGET_MISSING",e.EDGE_TYPE_MISSING="EDGE_TYPE_MISSING",e.EDGE_SOURCE_TARGET_SAME="EDGE_SOURCE_TARGET_SAME",e.EDGE_SOURCE_TARGET_MISSING="EDGE_SOURCE_TARGET_MISSING",e.EDGE_ORPHANED="EDGE_ORPHANED",e.USEVUEFLOW_OPTIONS="USEVUEFLOW_OPTIONS",e))(Qe||{});const Jf={MISSING_STYLES:()=>"It seems that you haven't loaded the necessary styles. Please import '@vue-flow/core/dist/style.css' to ensure that the graph is rendered correctly",MISSING_VIEWPORT_DIMENSIONS:()=>"The Vue Flow parent container needs a width and a height to render the graph",NODE_INVALID:e=>`Node is invalid
125
125
  Node: ${e}`,NODE_NOT_FOUND:e=>`Node not found
126
126
  Node: ${e}`,NODE_MISSING_PARENT:(e,n)=>`Node is missing a parent
127
127
  Node: ${e}
@@ -141,4 +141,4 @@ Edge: ${e}
141
141
  Source: ${n}
142
142
  Target: ${o}`,EDGE_ORPHANED:e=>`Edge was orphaned (suddenly missing source or target) and has been removed
143
143
  Edge: ${e}`,EDGE_NOT_FOUND:e=>`Edge not found
144
- Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will be removed in the next major version. Please use the id parameter instead"};class Ze extends Error{constructor(n,...o){var r;super((r=Ff[n])==null?void 0:r.call(Ff,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function Sl(e){return"clientX"in e}function jx(e){return"sourceEvent"in e}function $t(e,n){const o=Sl(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 yi=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function qx(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 _i(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const Gx=()=>!0;function vl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function zx(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())mi(i,pi(a))>0&&r.push(a);return r}const Hx=250;function Yx(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=zx(e,o,n+Hx);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}=no(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 Lf(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:d=Gx},f,u,p){const m=a==="target",h=n?l.querySelector(`.${s}-flow__handle[data-id="${c}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:_,y:g}=$t(e),y=l.elementFromPoint(_,g),w=y!=null&&y.classList.contains(`${s}-flow__handle`)?y:h,b={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const v=Uf(void 0,w),S=w.getAttribute("data-nodeid"),N=w.getAttribute("data-handleid"),I=w.classList.contains("connectable"),O=w.classList.contains("connectableend");if(!S||!v)return b;const F={source:m?S:r,sourceHandle:m?N:i,target:m?r:S,targetHandle:m?i:N};b.connection=F;const q=I&&O&&(o===Qt.Strict?m&&v==="source"||!m&&v==="target":S!==r||N!==i);b.isValid=q&&d(F,{nodes:u,edges:f,sourceNode:p(r),targetNode:p(S)}),b.toHandle=n}return b}function Uf(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function Wx(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function Xx(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function Zx(e,n,o,r,i,a=!1){var l,s,c;const d=r.get(e);if(!d)return null;const f=i===Qt.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,...no(d,u,u.position,!0)}:u}const xl={[be.Left]:be.Right,[be.Right]:be.Left,[be.Top]:be.Bottom,[be.Bottom]:be.Top},Jx=["production","prod"];function bi(e,...n){Kf()&&console.warn(`[Vue Flow]: ${e}`,...n)}function Kf(){return!Jx.includes(process.env.NODE_ENV||"")}function jf(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,...gi(l)}}):null}function Al(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 ze(e){return typeof t.unref(e)<"u"}function Qx(e,n,o,r){if(!e||!e.source||!e.target)return o(new Ze(Ge.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return en(e)?i=e:i={...e,id:Ef(e)},i=kf(i,void 0,r),$x(i,n)?!1:i}function eA(e,n,o,r,i){if(!n.source||!n.target)return i(new Ze(Ge.EDGE_INVALID,e.id)),!1;if(!o)return i(new Ze(Ge.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Ef(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function qf(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!Sn(l)){o(new Ze(Ge.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=Px(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 Ze(Ge.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 Gf(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 Il(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}`;Gf("source",c,f,e,i,l),Gf("target",c,d,e,a,s)}}function zf(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function Pl(e,n,o,r,i,a,l,s){const c=[];for(const d of e){const f=en(d)?d:Qx(d,s,i,a);if(!f)continue;const u=o(f.source),p=o(f.target);if(!u||!p){i(new Ze(Ge.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!u){i(new Ze(Ge.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new Ze(Ge.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:u,targetNode:p})){i(new Ze(Ge.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...kf(f,m,a),sourceNode:u,targetNode:p})}return c}const Hf=Symbol("vueFlow"),Yf=Symbol("nodeId"),Wf=Symbol("nodeRef"),tA=Symbol("edgeId"),nA=Symbol("edgeRef"),wi=Symbol("slots");function Xf(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:d,autoPanSpeed:f,nodesDraggable:u,panBy:p,findNode:m,multiSelectionActive:h,nodesSelectionActive:_,selectNodesOnDrag:g,removeSelectedElements:y,addSelectedNodes:w,updateNodePositions:b,emits:v}=$e(),{onStart:S,onDrag:N,onStop:I,onClick:O,el:F,disabled:H,id:q,selectable:E,dragHandle:te}=e,P=t.shallowRef(!1);let G=[],R,K=null,V={x:void 0,y:void 0},M={x:0,y:0},D=null,L=!1,j=0,Z=!1;const W=iA(),ne=({x:le,y:ue})=>{V={x:le,y:ue};let ce=!1;if(G=G.map(T=>{const C={x:le-T.distance.x,y:ue-T.distance.y},{computedPosition:x}=Nl(T,o.value?_i(C,r.value):C,v.error,l.value,T.parentNode?m(T.parentNode):void 0);return ce=ce||T.position.x!==x.x||T.position.y!==x.y,T.position=x,T}),!!ce&&(b(G,!0,!0),P.value=!0,D)){const[T,C]=El({id:q,dragItems:G,findNode:m});N({event:D,node:T,nodes:C})}},ie=()=>{if(!K)return;const[le,ue]=Tf(M,K,f.value);if(le!==0||ue!==0){const ce={x:(V.x??0)-le/c.value.zoom,y:(V.y??0)-ue/c.value.zoom};p({x:le,y:ue})&&ne(ce)}j=requestAnimationFrame(ie)},de=(le,ue)=>{L=!0;const ce=m(q);!g.value&&!h.value&&ce&&(ce.selected||y()),ce&&t.toValue(E)&&g.value&&Al(ce,h.value,w,y,_,!1,ue);const T=W(le.sourceEvent);if(V=T,G=Dx(a.value,u.value,T,m,q),G.length){const[C,x]=El({id:q,dragItems:G,findNode:m});S({event:le.sourceEvent,node:C,nodes:x})}},ye=(le,ue)=>{var ce;le.sourceEvent.type==="touchmove"&&le.sourceEvent.touches.length>1||(s.value===0&&de(le,ue),V=W(le.sourceEvent),K=((ce=n.value)==null?void 0:ce.getBoundingClientRect())||null,M=$t(le.sourceEvent,K))},Q=(le,ue)=>{const ce=W(le.sourceEvent);if(!Z&&L&&d.value&&(Z=!0,ie()),!L){const T=ce.xSnapped-(V.x??0),C=ce.ySnapped-(V.y??0);Math.sqrt(T*T+C*C)>s.value&&de(le,ue)}(V.x!==ce.xSnapped||V.y!==ce.ySnapped)&&G.length&&L&&(D=le.sourceEvent,M=$t(le.sourceEvent,K),ne(ce))},oe=le=>{let ue=!1;if(!L&&!P.value&&!h.value){const ce=le.sourceEvent,T=W(ce),C=T.xSnapped-(V.x??0),x=T.ySnapped-(V.y??0),k=Math.sqrt(C*C+x*x);k!==0&&k<=s.value&&(O==null||O(ce),ue=!0)}if(G.length&&!ue){b(G,!1,!1);const[ce,T]=El({id:q,dragItems:G,findNode:m});I({event:le.sourceEvent,node:ce,nodes:T})}G=[],P.value=!1,Z=!1,L=!1,V={x:void 0,y:void 0},cancelAnimationFrame(j)};return t.watch([()=>t.toValue(H),F],([le,ue],ce,T)=>{if(ue){const C=kt(ue);le||(R=IS().on("start",x=>ye(x,ue)).on("drag",x=>Q(x,ue)).on("end",x=>oe(x)).filter(x=>{const k=x.target,$=t.toValue(te);return!x.button&&(!i.value||!Rf(k,`.${i.value}`,ue)&&(!$||Rf(k,$,ue)))}),C.call(R)),T(()=>{C.on(".drag",null),R&&(R.on("start",null),R.on("drag",null),R.on("end",null))})}}),P}function oA(){return{doubleClick:_e(),click:_e(),mouseEnter:_e(),mouseMove:_e(),mouseLeave:_e(),contextMenu:_e(),updateStart:_e(),update:_e(),updateEnd:_e()}}function rA(e,n){const o=oA();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 iA(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=$e();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=jx(i)?i.sourceEvent:i,{x:c,y:d}=$t(s,l),f=Zo({x:c,y:d},e.value),{x:u,y:p}=o.value?_i(f,n.value):f;return{xSnapped:u,ySnapped:p,...f}}}function ki(){return!0}function Zf({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:d,connectionRadius:f,connectOnClick:u,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:h,autoPanSpeed:_,findNode:g,panBy:y,startConnection:w,updateConnection:b,endConnection:v,emits:S,viewport:N,edges:I,nodes:O,isValidConnection:F,nodeLookup:H}=$e();let q=null,E=!1,te=null;function P(R){var K;const V=t.toValue(o)==="target",M=Sl(R),D=wf(R.target);if(M&&R.button===0||!M){let L=function(B){T=$t(B,le),ne=Yx(Zo(T,N.value,!1,[1,1]),f.value,H.value,k),C||(x(),C=!0);const ee=Lf(B,{handle:ne,connectionMode:d.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:V?"target":"source",isValidConnection:W,doc:D,lib:"vue",flowId:s,nodeLookup:H.value},I.value,O.value,g);te=ee.handleDomNode,q=ee.connection,E=Xx(!!ne,ee.isValid);const U={...X,isValid:E,to:ee.toHandle&&E?kl({x:ee.toHandle.x,y:ee.toHandle.y},N.value):T,toHandle:ee.toHandle,toPosition:E&&ee.toHandle?ee.toHandle.position:xl[k.position],toNode:ee.toHandle?H.value.get(ee.toHandle.nodeId):null};if(!(E&&ne&&(X!=null&&X.toHandle)&&U.toHandle&&X.toHandle.type===U.toHandle.type&&X.toHandle.nodeId===U.toHandle.nodeId&&X.toHandle.id===U.toHandle.id&&X.to.x===U.to.x&&X.to.y===U.to.y)){if(b(ne&&E?kl({x:ne.x,y:ne.y},N.value):T,ee.toHandle,Wx(!!ne,E)),X=U,!ne&&!E&&!te)return vl(ce);q&&q.source!==q.target&&te&&(vl(ce),ce=te,te.classList.add("connecting","vue-flow__handle-connecting"),te.classList.toggle("valid",!!E),te.classList.toggle("vue-flow__handle-valid",!!E))}},j=function(B){(ne||te)&&q&&E&&(a?a(B,q):S.connect(q)),S.connectEnd(B),i&&(l==null||l(B)),vl(ce),cancelAnimationFrame(ie),v(B),C=!1,E=!1,q=null,te=null,D.removeEventListener("mousemove",L),D.removeEventListener("mouseup",j),D.removeEventListener("touchmove",L),D.removeEventListener("touchend",j)};const Z=g(t.toValue(n));let W=t.toValue(r)||F.value||ki;!W&&Z&&(W=(V?Z.isValidSourcePos:Z.isValidTargetPos)||ki);let ne,ie=0;const{x:de,y:ye}=$t(R),Q=D==null?void 0:D.elementFromPoint(de,ye),oe=Uf(t.toValue(i),Q),le=(K=c.value)==null?void 0:K.getBoundingClientRect();if(!le||!oe)return;const ue=Zx(t.toValue(n),oe,t.toValue(e),H.value,d.value);if(!ue)return;let ce,T=$t(R,le),C=!1;const x=()=>{if(!h.value)return;const[B,ee]=Tf(T,le,_.value);y({x:B,y:ee}),ie=requestAnimationFrame(x)},k={...ue,nodeId:t.toValue(n),type:oe,position:ue.position},$=H.value.get(t.toValue(n)),z={inProgress:!0,isValid:null,from:no($,k,be.Left,!0),fromHandle:k,fromPosition:k.position,fromNode:$,to:T,toHandle:null,toPosition:xl[k.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:oe,position:(Q==null?void 0:Q.getAttribute("data-handlepos"))||be.Top,...T},{x:de-le.left,y:ye-le.top}),S.connectStart({event:R,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:oe});let X=z;D.addEventListener("mousemove",L),D.addEventListener("mouseup",j),D.addEventListener("touchmove",L),D.addEventListener("touchend",j)}}function G(R){var K,V;if(!u.value)return;const M=t.toValue(o)==="target";if(!p.value){S.clickConnectStart({event:R,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:be.Top,...$t(R)},void 0,!0);return}let D=t.toValue(r)||F.value||ki;const L=g(t.toValue(n));if(!D&&L&&(D=(M?L.isValidSourcePos:L.isValidTargetPos)||ki),L&&(typeof L.connectable>"u"?m.value:L.connectable)===!1)return;const j=wf(R.target),Z=Lf(R,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:be.Top,...$t(R)},connectionMode:d.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:D,doc:j,lib:"vue",flowId:s,nodeLookup:H.value},I.value,O.value,g),W=((K=Z.connection)==null?void 0:K.source)===((V=Z.connection)==null?void 0:V.target);Z.isValid&&Z.connection&&!W&&S.connect(Z.connection),S.clickConnectEnd(R),v(R,!0)}return{handlePointerDown:P,handleClick:G}}function aA(){return t.inject(Yf,"")}function Jf(e){const n=e??aA()??"",o=t.inject(Wf,t.ref(null)),{findNode:r,edges:i,emits:a}=$e(),l=r(n);return l||a.error(new Ze(Ge.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>xf([l],i.value))}}function lA(){return{doubleClick:_e(),click:_e(),mouseEnter:_e(),mouseMove:_e(),mouseLeave:_e(),contextMenu:_e(),dragStart:_e(),drag:_e(),dragStop:_e()}}function sA(e,n){const o=lA();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 Qf(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=$e();return(c,d=!1)=>{const f=a.value?i.value[0]:5,u=a.value?i.value[1]:5,p=d?4:1,m=c.x*f*p,h=c.y*u*p,_=[];for(const g of e.value)if(g.draggable||l&&typeof g.draggable>"u"){const y={x:g.computedPosition.x+m,y:g.computedPosition.y+h},{computedPosition:w}=Nl(g,y,s.error,n.value,g.parentNode?r(g.parentNode):void 0);_.push({id:g.id,position:w,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(_,!0,!1)}}const Tl=.1,cA=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function on(){return bi("Viewport not initialized yet."),Promise.resolve(!1)}const dA={zoomIn:on,zoomOut:on,zoomTo:on,fitView:on,setCenter:on,fitBounds:on,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:on,setTransform:on,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function uA(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?Ko:ni).scaleBy(Ol(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}=bf({x:-r,y:-i},e.translateExtent),u=eo.translate(-d,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?Ko:ni).transform(Ol(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"?Ko:ni).scaleTo(Ol(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:Tl,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=Sf(s),{x:d,y:f,zoom:u}=Af(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Tl,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:Tl})=>{const{x:l,y:s,zoom:c}=Af(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>Zo(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 Zo(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 kl(s,e.viewport)}return{x:0,y:0}}}:dA)}function Ol(e,n=0,o=cA,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function fA(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let _,g,y=!!(o.nodes.value.length||o.edges.value.length);_=Wn([e.modelValue,()=>{var w,b;return(b=(w=e.modelValue)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setElements(w),!g&&!y&&w.length?y=!0:g==null||g.resume())}),g=Wn([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,b])=>{var v;(v=e.modelValue)!=null&&v.value&&Array.isArray(e.modelValue.value)&&(_==null||_.pause(),e.modelValue.value=[...w,...b],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let _,g,y=!!o.nodes.value.length;_=Wn([e.nodes,()=>{var w,b;return(b=(w=e.nodes)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setNodes(w),!g&&!y&&w.length?y=!0:g==null||g.resume())}),g=Wn([o.nodes,()=>o.nodes.value.length],([w])=>{var b;(b=e.nodes)!=null&&b.value&&Array.isArray(e.nodes.value)&&(_==null||_.pause(),e.nodes.value=[...w],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let _,g,y=!!o.edges.value.length;_=Wn([e.edges,()=>{var w,b;return(b=(w=e.edges)==null?void 0:w.value)==null?void 0:b.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setEdges(w),!g&&!y&&w.length?y=!0:g==null||g.resume())}),g=Wn([o.edges,()=>o.edges.value.length],([w])=>{var b;(b=e.edges)!=null&&b.value&&Array.isArray(e.edges.value)&&(_==null||_.pause(),e.edges.value=[...w],t.nextTick(()=>{_==null||_.resume()}))},{immediate:y}),t.onScopeDispose(()=>{_==null||_.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&ze(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&ze(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&ze(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&ze(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{ze(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const _=async g=>{let y=g;typeof n.autoConnect=="function"&&(y=await n.autoConnect(g)),y!==!1&&o.addEdges([y])};t.watch(()=>n.autoConnect,()=>{ze(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(g,y,w)=>{g?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 g of Object.keys(n)){const y=g;if(!_.includes(y)){const w=t.toRef(()=>n[y]),b=o[y];t.isRef(b)&&r.run(()=>{t.watch(w,v=>{ze(v)&&(b.value=v)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),d(),f(),u(),p(),m()})()}),()=>r.stop()}function pA(){return{edgesChange:_e(),nodesChange:_e(),nodeDoubleClick:_e(),nodeClick:_e(),nodeMouseEnter:_e(),nodeMouseMove:_e(),nodeMouseLeave:_e(),nodeContextMenu:_e(),nodeDragStart:_e(),nodeDrag:_e(),nodeDragStop:_e(),nodesInitialized:_e(),miniMapNodeClick:_e(),miniMapNodeDoubleClick:_e(),miniMapNodeMouseEnter:_e(),miniMapNodeMouseMove:_e(),miniMapNodeMouseLeave:_e(),connect:_e(),connectStart:_e(),connectEnd:_e(),clickConnectStart:_e(),clickConnectEnd:_e(),paneReady:_e(),init:_e(),move:_e(),moveStart:_e(),moveEnd:_e(),selectionDragStart:_e(),selectionDrag:_e(),selectionDragStop:_e(),selectionContextMenu:_e(),selectionStart:_e(),selectionEnd:_e(),viewportChangeStart:_e(),viewportChange:_e(),viewportChangeEnd:_e(),paneScroll:_e(),paneClick:_e(),paneContextMenu:_e(),paneMouseEnter:_e(),paneMouseMove:_e(),paneMouseLeave:_e(),edgeContextMenu:_e(),edgeMouseEnter:_e(),edgeMouseMove:_e(),edgeMouseLeave:_e(),edgeDoubleClick:_e(),edgeClick:_e(),edgeUpdateStart:_e(),edgeUpdate:_e(),edgeUpdateEnd:_e(),updateNodeInternals:_e(),error:_e(e=>bi(e.message))}}function mA(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),qr(()=>{r.off(i)})}})}function ep(){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:bl.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:Yo.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:En.Bezier,style:{}},connectionMode:Qt.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:yi()?"Meta":"Control",zoomActivationKeyCode:yi()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:pA(),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 gA=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function hA(e,n,o){const r=uA(e),i=T=>{const C=T??[];e.hooks.updateNodeInternals.trigger(C)},a=T=>Ox(T,e.nodes,e.edges),l=T=>Tx(T,e.nodes,e.edges),s=T=>xf(T,e.edges),c=({id:T,type:C,nodeId:x})=>{var k;return Array.from(((k=e.connectionLookup.get(`${x}-${C}-${T??null}`))==null?void 0:k.values())??[])},d=T=>{if(T)return n.value.get(T)},f=T=>{if(T)return o.value.get(T)},u=(T,C,x)=>{var k,$;const A=[];for(const z of T){const X={id:z.id,type:"position",dragging:x,from:z.from};if(C&&(X.position=z.position,z.parentNode)){const B=d(z.parentNode);X.position={x:X.position.x-(((k=B==null?void 0:B.computedPosition)==null?void 0:k.x)??0),y:X.position.y-((($=B==null?void 0:B.computedPosition)==null?void 0:$.y)??0)}}A.push(X)}A!=null&&A.length&&e.hooks.nodesChange.trigger(A)},p=T=>{if(!e.vueFlowRef)return;const C=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!C)return;const x=window.getComputedStyle(C),{m22:k}=new window.DOMMatrixReadOnly(x.transform),$=[];for(const A of T){const z=A,X=d(z.id);if(X){const B=gi(z.nodeElement);if(!!(B.width&&B.height&&(X.dimensions.width!==B.width||X.dimensions.height!==B.height||z.forceUpdate))){const U=z.nodeElement.getBoundingClientRect();X.dimensions=B,X.handleBounds.source=jf("source",z.nodeElement,U,k,X.id),X.handleBounds.target=jf("target",z.nodeElement,U,k,X.id),$.push({id:X.id,type:"dimensions",dimensions:B})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),$.length&&e.hooks.nodesChange.trigger($)},m=(T,C)=>{const x=new Set,k=new Set;for(const z of T)Sn(z)?x.add(z.id):en(z)&&k.add(z.id);const $=nn(n.value,x,!0),A=nn(o.value,k);if(e.multiSelectionActive){for(const z of x)$.push(tn(z,C));for(const z of k)A.push(tn(z,C))}$.length&&e.hooks.nodesChange.trigger($),A.length&&e.hooks.edgesChange.trigger(A)},h=T=>{if(e.multiSelectionActive){const C=T.map(x=>tn(x.id,!0));e.hooks.nodesChange.trigger(C);return}e.hooks.nodesChange.trigger(nn(n.value,new Set(T.map(C=>C.id)),!0)),e.hooks.edgesChange.trigger(nn(o.value))},_=T=>{if(e.multiSelectionActive){const C=T.map(x=>tn(x.id,!0));e.hooks.edgesChange.trigger(C);return}e.hooks.edgesChange.trigger(nn(o.value,new Set(T.map(C=>C.id)))),e.hooks.nodesChange.trigger(nn(n.value,new Set,!0))},g=T=>{m(T,!0)},y=T=>{const x=(T||e.nodes).map(k=>(k.selected=!1,tn(k.id,!1)));e.hooks.nodesChange.trigger(x)},w=T=>{const x=(T||e.edges).map(k=>(k.selected=!1,tn(k.id,!1)));e.hooks.edgesChange.trigger(x)},b=T=>{if(!T||!T.length)return m([],!1);const C=T.reduce((x,k)=>{const $=tn(k.id,!1);return Sn(k)?x.nodes.push($):x.edges.push($),x},{nodes:[],edges:[]});C.nodes.length&&e.hooks.nodesChange.trigger(C.nodes),C.edges.length&&e.hooks.edgesChange.trigger(C.edges)},v=T=>{var C;(C=e.d3Zoom)==null||C.scaleExtent([T,e.maxZoom]),e.minZoom=T},S=T=>{var C;(C=e.d3Zoom)==null||C.scaleExtent([e.minZoom,T]),e.maxZoom=T},N=T=>{var C;(C=e.d3Zoom)==null||C.translateExtent(T),e.translateExtent=T},I=T=>{e.nodeExtent=T,i()},O=T=>{var C;(C=e.d3Zoom)==null||C.clickDistance(T)},F=T=>{e.nodesDraggable=T,e.nodesConnectable=T,e.elementsSelectable=T},H=T=>{const C=T instanceof Function?T(e.nodes):T;!e.initialized&&!C.length||(e.nodes=qf(C,d,e.hooks.error.trigger))},q=T=>{const C=T instanceof Function?T(e.edges):T;if(!e.initialized&&!C.length)return;const x=Pl(C,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);Il(e.connectionLookup,o.value,x),e.edges=x},E=T=>{const C=T instanceof Function?T([...e.nodes,...e.edges]):T;!e.initialized&&!C.length||(H(C.filter(Sn)),q(C.filter(en)))},te=T=>{let C=T instanceof Function?T(e.nodes):T;C=Array.isArray(C)?C:[C];const x=qf(C,d,e.hooks.error.trigger),k=[];for(const $ of x)k.push($f($));k.length&&e.hooks.nodesChange.trigger(k)},P=T=>{let C=T instanceof Function?T(e.edges):T;C=Array.isArray(C)?C:[C];const x=Pl(C,e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),k=[];for(const $ of x)k.push($f($));k.length&&e.hooks.edgesChange.trigger(k)},G=(T,C=!0,x=!1)=>{const k=T instanceof Function?T(e.nodes):T,$=Array.isArray(k)?k:[k],A=[],z=[];function X(ee){const U=s(ee);for(const me of U)(!ze(me.deletable)||me.deletable)&&z.push(Vf(me.id,me.source,me.target,me.sourceHandle,me.targetHandle))}function B(ee){const U=[];for(const me of e.nodes)me.parentNode===ee&&U.push(me);if(U.length){for(const me of U)A.push(Bf(me.id));C&&X(U);for(const me of U)B(me.id)}}for(const ee of $){const U=typeof ee=="string"?d(ee):ee;U&&(ze(U.deletable)&&!U.deletable||(A.push(Bf(U.id)),C&&X([U]),x&&B(U.id)))}z.length&&e.hooks.edgesChange.trigger(z),A.length&&e.hooks.nodesChange.trigger(A)},R=T=>{const C=T instanceof Function?T(e.edges):T,x=Array.isArray(C)?C:[C],k=[];for(const $ of x){const A=typeof $=="string"?f($):$;A&&(ze(A.deletable)&&!A.deletable||k.push(Vf(typeof $=="string"?$:$.id,A.source,A.target,A.sourceHandle,A.targetHandle)))}e.hooks.edgesChange.trigger(k)},K=(T,C,x=!0)=>{const k=f(T.id);if(!k)return!1;const $=e.edges.indexOf(k),A=eA(T,C,k,x,e.hooks.error.trigger);if(A){const[z]=Pl([A],e.isValidConnection,d,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((X,B)=>B===$?z:X),Il(e.connectionLookup,o.value,[z]),z}return!1},V=(T,C,x={replace:!1})=>{const k=f(T);if(!k)return;const $=typeof C=="function"?C(k):C;k.data=x.replace?$:{...k.data,...$}},M=T=>Of(T,e.nodes),D=T=>{const C=Of(T,e.edges);return Il(e.connectionLookup,o.value,C),C},L=(T,C,x={replace:!1})=>{const k=d(T);if(!k)return;const $=typeof C=="function"?C(k):C;x.replace?e.nodes.splice(e.nodes.indexOf(k),1,$):Object.assign(k,$)},j=(T,C,x={replace:!1})=>{const k=d(T);if(!k)return;const $=typeof C=="function"?C(k):C;k.data=x.replace?$:{...k.data,...$}},Z=(T,C,x=!1)=>{x?e.connectionClickStartHandle=T:e.connectionStartHandle=T,e.connectionEndHandle=null,e.connectionStatus=null,C&&(e.connectionPosition=C)},W=(T,C=null,x=null)=>{e.connectionStartHandle&&(e.connectionPosition=T,e.connectionEndHandle=C,e.connectionStatus=x)},ne=(T,C)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,C?e.connectionClickStartHandle=null:e.connectionStartHandle=null},ie=T=>{const C=Ix(T),x=C?null:Xo(T)?T:d(T.id);return!C&&!x?[null,null,C]:[C?T:pi(x),x,C]},de=(T,C=!0,x=e.nodes)=>{const[k,$,A]=ie(T);if(!k)return[];const z=[];for(const X of x||e.nodes){if(!A&&(X.id===$.id||!X.computedPosition))continue;const B=pi(X),ee=mi(B,k);(C&&ee>0||ee>=Number(k.width)*Number(k.height))&&z.push(X)}return z},ye=(T,C,x=!0)=>{const[k]=ie(T);if(!k)return!1;const $=mi(k,C);return x&&$>0||$>=Number(k.width)*Number(k.height)},Q=T=>{const{viewport:C,dimensions:x,d3Zoom:k,d3Selection:$,translateExtent:A}=e;if(!k||!$||!T.x&&!T.y)return!1;const z=eo.translate(C.x+T.x,C.y+T.y).scale(C.zoom),X=[[0,0],[x.width,x.height]],B=k.constrain()(z,X,A),ee=e.viewport.x!==B.x||e.viewport.y!==B.y||e.viewport.zoom!==B.k;return k.transform($,B),ee},oe=T=>{const C=T instanceof Function?T(e):T,x=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];ze(C.defaultEdgeOptions)&&(e.defaultEdgeOptions=C.defaultEdgeOptions);const k=C.modelValue||C.nodes||C.edges?[]:void 0;k&&(C.modelValue&&k.push(...C.modelValue),C.nodes&&k.push(...C.nodes),C.edges&&k.push(...C.edges),E(k));const $=()=>{ze(C.maxZoom)&&S(C.maxZoom),ze(C.minZoom)&&v(C.minZoom),ze(C.translateExtent)&&N(C.translateExtent)};for(const A of Object.keys(C)){const z=A,X=C[z];![...gA,...x].includes(z)&&ze(X)&&(e[z]=X)}Ja(()=>e.d3Zoom).not.toBeNull().then($),e.initialized||(e.initialized=!0)};return{updateNodePositions:u,updateNodeDimensions:p,setElements:E,setNodes:H,setEdges:q,addNodes:te,addEdges:P,removeNodes:G,removeEdges:R,findNode:d,findEdge:f,updateEdge:K,updateEdgeData:V,updateNode:L,updateNodeData:j,applyEdgeChanges:D,applyNodeChanges:M,addSelectedElements:g,addSelectedNodes:h,addSelectedEdges:_,setMinZoom:v,setMaxZoom:S,setTranslateExtent:N,setNodeExtent:I,setPaneClickDistance:O,removeSelectedElements:b,removeSelectedNodes:y,removeSelectedEdges:w,startConnection:Z,updateConnection:W,endConnection:ne,setInteractive:F,setState:oe,getIntersectingNodes:de,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:ye,panBy:Q,fitView:T=>r.value.fitView(T),zoomIn:T=>r.value.zoomIn(T),zoomOut:T=>r.value.zoomOut(T),zoomTo:(T,C)=>r.value.zoomTo(T,C),setViewport:(T,C)=>r.value.setViewport(T,C),setTransform:(T,C)=>r.value.setTransform(T,C),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(T,C,x)=>r.value.setCenter(T,C,x),fitBounds:(T,C)=>r.value.fitBounds(T,C),project:T=>r.value.project(T),screenToFlowCoordinate:T=>r.value.screenToFlowCoordinate(T),flowToScreenCoordinate:T=>r.value.flowToScreenCoordinate(T),toObject:()=>{const T=[],C=[];for(const x of e.nodes){const{computedPosition:k,handleBounds:$,selected:A,dimensions:z,isParent:X,resizing:B,dragging:ee,events:U,...me}=x;T.push(me)}for(const x of e.edges){const{selected:k,sourceNode:$,targetNode:A,events:z,...X}=x;C.push(X)}return JSON.parse(JSON.stringify({nodes:T,edges:C,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:T=>new Promise(C=>{const{nodes:x,edges:k,position:$,zoom:A,viewport:z}=T;if(x&&H(x),k&&q(k),z!=null&&z.x&&(z!=null&&z.y)||$){const X=(z==null?void 0:z.x)||$[0],B=(z==null?void 0:z.y)||$[1],ee=(z==null?void 0:z.zoom)||A||e.viewport.zoom;return Ja(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:X,y:B,zoom:ee}).then(()=>{C(!0)})})}else C(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const T=ep();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const C=eo.translate(T.defaultViewport.x??0,T.defaultViewport.y??0).scale(Nn(T.defaultViewport.zoom??1,T.minZoom,T.maxZoom)),x=e.viewportRef.getBoundingClientRect(),k=[[0,0],[x.width,x.height]],$=e.d3Zoom.constrain()(C,k,T.translateExtent);e.d3Zoom.transform(e.d3Selection,$)}oe(T)},$destroy:()=>{}}}const yA=["data-id","data-handleid","data-nodeid","data-handlepos"],_A={name:"Handle",compatConfig:{MODE:3}},rn=t.defineComponent({..._A,props:{id:{default:null},type:{},position:{default:()=>be.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}=$e(),{id:m,node:h,nodeEl:_,connectedEdges:g}=Jf(),y=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),b=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),v=t.toRef(()=>{var q,E,te,P,G,R;return((q=l.value)==null?void 0:q.nodeId)===m&&((E=l.value)==null?void 0:E.id)===e.id&&((te=l.value)==null?void 0:te.type)===r.value||((P=c.value)==null?void 0:P.nodeId)===m&&((G=c.value)==null?void 0:G.id)===e.id&&((R=c.value)==null?void 0:R.type)===r.value}),S=t.toRef(()=>{var q,E,te;return((q=s.value)==null?void 0:q.nodeId)===m&&((E=s.value)==null?void 0:E.id)===e.id&&((te=s.value)==null?void 0:te.type)===r.value}),{handlePointerDown:N,handleClick:I}=Zf({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),O=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(q=>{const E=q[`${r.value}Handle`];return q[r.value]!==m?!1:E?E===e.id:!0}):typeof e.connectable=="number"?g.value.filter(q=>{const E=q[`${r.value}Handle`];return q[r.value]!==m?!1:E?E===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(h,g.value):ze(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var q;if(!h.dimensions.width||!h.dimensions.height)return;const E=(q=h.handleBounds[r.value])==null?void 0:q.find(M=>M.id===e.id);if(!d.value||E)return;const te=d.value.querySelector(".vue-flow__transformationpane");if(!_.value||!y.value||!te||!e.id)return;const P=_.value.getBoundingClientRect(),G=y.value.getBoundingClientRect(),R=window.getComputedStyle(te),{m22:K}=new window.DOMMatrixReadOnly(R.transform),V={id:e.id,position:e.position,x:(G.left-P.left)/K,y:(G.top-P.top)/K,type:r.value,nodeId:m,...gi(y.value)};h.handleBounds[r.value]=[...h.handleBounds[r.value]??[],V]});function F(q){const E=Sl(q);O.value&&w.value&&(E&&q.button===0||!E)&&N(q)}function H(q){!m||!s.value&&!w.value||O.value&&I(q)}return n({handleClick:I,handlePointerDown:N,onClick:H,onPointerDown:F}),(q,E)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:y,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":q.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${q.position}`,`vue-flow__handle-${e.id}`,t.unref(u),t.unref(p),r.value,{connectable:O.value,connecting:S.value,connectablestart:w.value,connectableend:b.value,connectionindicator:O.value&&(w.value&&!v.value||b.value&&v.value)}]]),onMousedown:F,onTouchstartPassive:F,onClick:H},[t.renderSlot(q.$slots,"default",{id:q.id})],42,yA))}}),Ci=function({sourcePosition:e=be.Bottom,targetPosition:n=be.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(rn,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(rn,{type:"source",position:e,connectable:r,isValidConnection:a})]};Ci.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],Ci.inheritAttrs=!1,Ci.compatConfig={MODE:3};const bA=Ci,Ei=function({targetPosition:e=be.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(rn,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};Ei.props=["targetPosition","label","isValidTargetPos","connectable","data"],Ei.inheritAttrs=!1,Ei.compatConfig={MODE:3};const wA=Ei,Ni=function({sourcePosition:e=be.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(rn,{type:"source",position:e,connectable:o,isValidConnection:r})]};Ni.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Ni.inheritAttrs=!1,Ni.compatConfig={MODE:3};const kA=Ni,CA=["transform"],EA=["width","height","x","y","rx","ry"],NA=["y"],SA={name:"EdgeText",compatConfig:{MODE:3}},vA=t.defineComponent({...SA,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,EA)):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,NA)],8,CA))}}),xA=["id","d","marker-end","marker-start"],AA=["d","stroke-width"],IA={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Si=t.defineComponent({...IA,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,xA),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,AA)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(vA,{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 tp({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 np({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 vi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function op({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case be.Left:l=n-vi(n-r,a),s=o;break;case be.Right:l=n+vi(r-n,a),s=o;break;case be.Top:l=n,s=o-vi(o-i,a);break;case be.Bottom:l=n,s=o+vi(i-o,a);break}return[l,s]}function rp(e){const{sourceX:n,sourceY:o,sourcePosition:r=be.Bottom,targetX:i,targetY:a,targetPosition:l=be.Top,curvature:s=.25}=e,[c,d]=op({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,u]=op({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,h,_]=np({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:d,targetControlX:f,targetControlY:u});return[`M${n},${o} C${c},${d} ${f},${u} ${i},${a}`,p,m,h,_]}function ip({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case be.Left:case be.Right:a=.5*(n+r),l=o;break;case be.Top:case be.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function ap(e){const{sourceX:n,sourceY:o,sourcePosition:r=be.Bottom,targetX:i,targetY:a,targetPosition:l=be.Top}=e,[s,c]=ip({pos:r,x1:n,y1:o,x2:i,y2:a}),[d,f]=ip({pos:l,x1:i,y1:a,x2:n,y2:o}),[u,p,m,h]=np({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 lp={[be.Left]:{x:-1,y:0},[be.Right]:{x:1,y:0},[be.Top]:{x:0,y:-1},[be.Bottom]:{x:0,y:1}};function PA({source:e,sourcePosition:n=be.Bottom,target:o}){return n===be.Left||n===be.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 sp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function TA({source:e,sourcePosition:n=be.Bottom,target:o,targetPosition:r=be.Top,center:i,offset:a}){const l=lp[n],s=lp[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=PA({source:c,sourcePosition:n,target:d}),u=f.x!==0?"x":"y",p=f[u];let m,h,_;const g={x:0,y:0},y={x:0,y:0},[w,b,v,S]=tp({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[u]*s[u]===-1){h=i.x??w,_=i.y??b;const I=[{x:h,y:c.y},{x:h,y:d.y}],O=[{x:c.x,y:_},{x:d.x,y:_}];l[u]===p?m=u==="x"?I:O:m=u==="x"?O:I}else{const I=[{x:c.x,y:d.y}],O=[{x:d.x,y:c.y}];if(u==="x"?m=l.x===p?O:I:m=l.y===p?I:O,n===r){const te=Math.abs(e[u]-o[u]);if(te<=a){const P=Math.min(a-1,a-te);l[u]===p?g[u]=(c[u]>e[u]?-1:1)*P:y[u]=(d[u]>o[u]?-1:1)*P}}if(n!==r){const te=u==="x"?"y":"x",P=l[u]===s[te],G=c[te]>d[te],R=c[te]<d[te];(l[u]===1&&(!P&&G||P&&R)||l[u]!==1&&(!P&&R||P&&G))&&(m=u==="x"?I:O)}const F={x:c.x+g.x,y:c.y+g.y},H={x:d.x+y.x,y:d.y+y.y},q=Math.max(Math.abs(F.x-m[0].x),Math.abs(H.x-m[0].x)),E=Math.max(Math.abs(F.y-m[0].y),Math.abs(H.y-m[0].y));q>=E?(h=(F.x+H.x)/2,_=m[0].y):(h=m[0].x,_=(F.y+H.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...m,{x:d.x+y.x,y:d.y+y.y},o],h,_,v,S]}function OA(e,n,o,r){const i=Math.min(sp(e,n)/2,sp(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 $l(e){const{sourceX:n,sourceY:o,sourcePosition:r=be.Bottom,targetX:i,targetY:a,targetPosition:l=be.Top,borderRadius:s=5,centerX:c,centerY:d,offset:f=20}=e,[u,p,m,h,_]=TA({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:d},offset:f});return[u.reduce((y,w,b)=>{let v;return b>0&&b<u.length-1?v=OA(u[b-1],w,u[b+1],s):v=`${b===0?"M":"L"}${w.x} ${w.y}`,y+=v,y},""),p,m,h,_]}function $A(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=tp({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const BA=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]=$A(e);return t.h(Si,{path:o,labelX:r,labelY:i,...n,...e})}}}),cp=t.defineComponent({name:"SmoothStepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","borderRadius","markerEnd","markerStart","interactionWidth","offset"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=$l({...e,sourcePosition:e.sourcePosition??be.Bottom,targetPosition:e.targetPosition??be.Top});return t.h(Si,{path:o,labelX:r,labelY:i,...n,...e})}}}),VA=t.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:n}){return()=>t.h(cp,{...e,...n,borderRadius:0})}}),RA=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]=rp({...e,sourcePosition:e.sourcePosition??be.Bottom,targetPosition:e.targetPosition??be.Top});return t.h(Si,{path:o,labelX:r,labelY:i,...n,...e})}}}),DA=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]=ap({...e,sourcePosition:e.sourcePosition??be.Bottom,targetPosition:e.targetPosition??be.Top});return t.h(Si,{path:o,labelX:r,labelY:i,...n,...e})}}}),MA={input:kA,default:bA,output:wA},FA={default:RA,straight:BA,step:VA,smoothstep:cp,simplebezier:DA};function LA(e,n,o){const r=t.computed(()=>_=>n.value.get(_)),i=t.computed(()=>_=>o.value.get(_)),a=t.computed(()=>{const _={...FA,...e.edgeTypes},g=Object.keys(_);for(const y of e.edges)y.type&&!g.includes(y.type)&&(_[y.type]=y.type);return _}),l=t.computed(()=>{const _={...MA,...e.nodeTypes},g=Object.keys(_);for(const y of e.nodes)y.type&&!g.includes(y.type)&&(_[y.type]=y.type);return _}),s=t.computed(()=>e.onlyRenderVisibleElements?vf(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const _=[];for(const g of e.edges){const y=n.value.get(g.source),w=n.value.get(g.target);Ux({sourcePos:y.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:y.dimensions.width,sourceHeight:y.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&_.push(g)}return _}return e.edges}),d=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const _=[];for(const g of e.nodes)g.selected&&_.push(g);return _}),u=t.computed(()=>{const _=[];for(const g of e.edges)g.selected&&_.push(g);return _}),p=t.computed(()=>[...f.value,...u.value]),m=t.computed(()=>{const _=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&_.push(g);return _}),h=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:d,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:u,getNodesInitialized:m,areNodesInitialized:h}}class vn{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){var n;const o=(n=t.getCurrentInstance())==null?void 0:n.appContext.app,r=(o==null?void 0:o.config.globalProperties.$vueFlowStorage)??vn.instance;return vn.instance=r??new vn,o&&(o.config.globalProperties.$vueFlowStorage=vn.instance),vn.instance}set(n,o){return this.flows.set(n,o)}get(n){return this.flows.get(n)}remove(n){return this.flows.delete(n)}create(n,o){const r=ep(),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=LA(i,s,c),f=hA(i,s,c);f.setState({...i,...o});const u={...a,...d,...f,...MN(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 $e(e){const n=vn.getInstance(),o=t.getCurrentScope(),r=typeof e=="object",i=r?e:{id:e},a=i.id,l=a??(o==null?void 0:o.vueFlowId);let s;if(o){const c=t.inject(Hf,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)},_=g=>{d.applyEdgeChanges(g)};u?(d.onNodesChange(h),d.onEdgesChange(_)):(d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(_)),m(()=>{d.hooks.value.nodesChange.off(h),d.hooks.value.edgesChange.off(_)})},{immediate:!0}),qr(()=>{if(s){const u=n.get(s.id);u?u.$destroy():bi(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(Hf,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new Ze(Ge.USEVUEFLOW_OPTIONS))}return s}function UA(e){const{emits:n,dimensions:o}=$e();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=gi(i);(l.width===0||l.height===0)&&n.error(new Ze(Ge.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 KA={name:"UserSelection",compatConfig:{MODE:3}},jA=t.defineComponent({...KA,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))}}),qA=["tabIndex"],GA={name:"NodesSelection",compatConfig:{MODE:3}},zA=t.defineComponent({...GA,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=$e(),s=Qf(),c=t.ref(null),d=Xf({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(()=>Sf(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||to[h.key]&&(h.preventDefault(),s({x:to[h.key].x,y:to[h.key].y},h.shiftKey))}return(h,_)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(d)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(u.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,qA)],6)):t.createCommentVNode("",!0)}});function HA(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const YA={name:"Pane",compatConfig:{MODE:3}},WA=t.defineComponent({...YA,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:d,getSelectedEdges:f,getSelectedNodes:u,removeNodes:p,removeEdges:m,selectionMode:h,deleteKeyCode:_,multiSelectionKeyCode:g,multiSelectionActive:y,edgeLookup:w,nodeLookup:b,connectionLookup:v,defaultEdgeOptions:S,connectionStartHandle:N}=$e(),I=t.ref(null),O=t.ref(new Set),F=t.ref(new Set),H=t.ref(),q=t.toRef(()=>c.value&&(e.isSelecting||a.value)),E=t.toRef(()=>N.value!==null);let te=!1,P=!1;const G=Wo(_,{actInsideInputWithModifier:!1}),R=Wo(g);t.watch(G,W=>{W&&(p(u.value),m(f.value),d.value=!1)}),t.watch(R,W=>{y.value=W});function K(W,ne){return ie=>{ie.target===ne&&(W==null||W(ie))}}function V(W){if(te||E.value){te=!1;return}i.paneClick(W),l(),d.value=!1}function M(W){W.preventDefault(),W.stopPropagation(),i.paneContextMenu(W)}function D(W){i.paneScroll(W)}function L(W){var ne,ie,de;if(H.value=(ne=n.value)==null?void 0:ne.getBoundingClientRect(),!c.value||!e.isSelecting||W.button!==0||W.target!==I.value||!H.value)return;(de=(ie=W.target)==null?void 0:ie.setPointerCapture)==null||de.call(ie,W.pointerId);const{x:ye,y:Q}=HA(W,H.value);P=!0,te=!1,l(),s.value={width:0,height:0,startX:ye,startY:Q,x:ye,y:Q},i.selectionStart(W)}function j(W){var ne;if(!H.value||!s.value)return;te=!0;const{x:ie,y:de}=$t(W,H.value),{startX:ye=0,startY:Q=0}=s.value,oe={startX:ye,startY:Q,x:ie<ye?ie:ye,y:de<Q?de:Q,width:Math.abs(ie-ye),height:Math.abs(de-Q)},le=O.value,ue=F.value;O.value=new Set(vf(o.value,oe,r.value,h.value===bl.Partial,!0).map(T=>T.id)),F.value=new Set;const ce=((ne=S.value)==null?void 0:ne.selectable)??!0;for(const T of O.value){const C=v.value.get(T);if(C)for(const{edgeId:x}of C.values()){const k=w.value.get(x);k&&(k.selectable??ce)&&F.value.add(x)}}if(!zf(le,O.value)){const T=nn(b.value,O.value,!0);i.nodesChange(T)}if(!zf(ue,F.value)){const T=nn(w.value,F.value);i.edgesChange(T)}s.value=oe,a.value=!0,d.value=!1}function Z(W){var ne;W.button!==0||!P||((ne=W.target)==null||ne.releasePointerCapture(W.pointerId),!a.value&&s.value&&W.target===I.value&&V(W),a.value=!1,s.value=null,d.value=O.value.size>0,i.selectionEnd(W),e.selectionKeyPressed&&(te=!1),P=!1)}return(W,ne)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:I,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:W.isSelecting}]),onClick:ne[0]||(ne[0]=ie=>q.value?void 0:K(V,I.value)(ie)),onContextmenu:ne[1]||(ne[1]=ie=>K(M,I.value)(ie)),onWheelPassive:ne[2]||(ne[2]=ie=>K(D,I.value)(ie)),onPointerenter:ne[3]||(ne[3]=ie=>q.value?void 0:t.unref(i).paneMouseEnter(ie)),onPointerdown:ne[4]||(ne[4]=ie=>q.value?L(ie):t.unref(i).paneMouseMove(ie)),onPointermove:ne[5]||(ne[5]=ie=>q.value?j(ie):t.unref(i).paneMouseMove(ie)),onPointerup:ne[6]||(ne[6]=ie=>q.value?Z(ie):void 0),onPointerleave:ne[7]||(ne[7]=ie=>t.unref(i).paneMouseLeave(ie))},[t.renderSlot(W.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(jA,{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(zA,{key:1})):t.createCommentVNode("",!0)],34))}}),XA={name:"Transform",compatConfig:{MODE:3}},ZA=t.defineComponent({...XA,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=$e(),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))}}),JA={name:"Viewport",compatConfig:{MODE:3}},QA=t.defineComponent({...JA,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:d,panOnScrollSpeed:f,panOnDrag:u,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:h,preventScrolling:_,noWheelClassName:g,noPanClassName:y,emits:w,connectionStartHandle:b,userSelectionActive:v,paneDragging:S,d3Zoom:N,d3Selection:I,d3ZoomHandler:O,viewport:F,viewportRef:H,paneClickDistance:q}=$e();UA(H);const E=t.shallowRef(!1),te=t.shallowRef(!1);let P=null,G=!1,R=0,K={x:0,y:0,zoom:0};const V=Wo(s),M=Wo(l),D=Wo(a),L=t.toRef(()=>(!M.value||M.value&&l.value===!0)&&(V.value||u.value)),j=t.toRef(()=>V.value||c.value),Z=t.toRef(()=>M.value||l.value===!0&&L.value!==!0);t.onMounted(()=>{if(!H.value){bi("Viewport element is missing");return}const Q=H.value,oe=Q.getBoundingClientRect(),le=Cx().clickDistance(q.value).scaleExtent([n.value,o.value]).translateExtent(i.value),ue=kt(Q).call(le),ce=ue.on("wheel.zoom"),T=eo.translate(r.value.x??0,r.value.y??0).scale(Nn(r.value.zoom??1,n.value,o.value)),C=[[0,0],[oe.width,oe.height]],x=le.constrain()(T,C,i.value);le.transform(ue,x),le.wheelDelta(ne),N.value=le,I.value=ue,O.value=ce,F.value={x:x.x,y:x.y,zoom:x.k},le.on("start",k=>{var $;if(!k.sourceEvent)return null;R=k.sourceEvent.button,E.value=!0;const A=de(k.transform);(($=k.sourceEvent)==null?void 0:$.type)==="mousedown"&&(S.value=!0),K=A,w.viewportChangeStart(A),w.moveStart({event:k,flowTransform:A})}),le.on("end",k=>{if(!k.sourceEvent)return null;if(E.value=!1,S.value=!1,W(L.value,R??0)&&!G&&w.paneContextMenu(k.sourceEvent),G=!1,ie(K,k.transform)){const $=de(k.transform);K=$,w.viewportChangeEnd($),w.moveEnd({event:k,flowTransform:$})}}),le.filter(k=>{var $;const A=D.value||h.value,z=m.value&&k.ctrlKey,X=k.button;if(X===1&&k.type==="mousedown"&&(ye(k,"vue-flow__node")||ye(k,"vue-flow__edge")))return!0;if(!L.value&&!A&&!j.value&&!p.value&&!m.value||v.value||!p.value&&k.type==="dblclick"||ye(k,g.value)&&k.type==="wheel"||ye(k,y.value)&&(k.type!=="wheel"||j.value&&k.type==="wheel"&&!D.value)||!m.value&&k.ctrlKey&&k.type==="wheel"||!A&&!j.value&&!z&&k.type==="wheel")return!1;if(!m&&k.type==="touchstart"&&(($=k.touches)==null?void 0:$.length)>1)return k.preventDefault(),!1;if(!L.value&&(k.type==="mousedown"||k.type==="touchstart")||l.value===!0&&Array.isArray(u.value)&&u.value.includes(0)&&X===0||Array.isArray(u.value)&&!u.value.includes(X)&&(k.type==="mousedown"||k.type==="touchstart"))return!1;const B=Array.isArray(u.value)&&u.value.includes(X)||l.value===!0&&Array.isArray(u.value)&&!u.value.includes(0)||!X||X<=1;return(!k.ctrlKey||V.value||k.type==="wheel")&&B}),t.watch([v,L],()=>{v.value&&!E.value?le.on("zoom",null):v.value||le.on("zoom",k=>{F.value={x:k.transform.x,y:k.transform.y,zoom:k.transform.k};const $=de(k.transform);G=W(L.value,R??0),w.viewportChange($),w.move({event:k,flowTransform:$})})},{immediate:!0}),t.watch([v,j,d,D,m,_,g],()=>{j.value&&!D.value&&!v.value?ue.on("wheel.zoom",k=>{if(ye(k,g.value))return!1;const $=D.value||h.value,A=m.value&&k.ctrlKey;if(!(!_.value||j.value||$||A))return!1;k.preventDefault(),k.stopImmediatePropagation();const X=ue.property("__zoom").k||1,B=yi();if(!V.value&&k.ctrlKey&&m.value&&B){const he=It(k),ae=ne(k),pe=X*2**ae;le.scaleTo(ue,pe,he,k);return}const ee=k.deltaMode===1?20:1;let U=d.value===Yo.Vertical?0:k.deltaX*ee,me=d.value===Yo.Horizontal?0:k.deltaY*ee;!B&&k.shiftKey&&d.value!==Yo.Vertical&&!U&&me&&(U=me,me=0),le.translateBy(ue,-(U/X)*f.value,-(me/X)*f.value);const ge=de(ue.property("__zoom"));P&&clearTimeout(P),te.value?(w.move({event:k,flowTransform:ge}),w.viewportChange(ge),P=setTimeout(()=>{w.moveEnd({event:k,flowTransform:ge}),w.viewportChangeEnd(ge),te.value=!1},150)):(te.value=!0,w.moveStart({event:k,flowTransform:ge}),w.viewportChangeStart(ge))},{passive:!1}):typeof ce<"u"&&ue.on("wheel.zoom",function(k,$){const A=!_.value&&k.type==="wheel"&&!k.ctrlKey,z=D.value||h.value,X=m.value&&k.ctrlKey;if(!z&&!c.value&&!X&&k.type==="wheel"||A||ye(k,g.value))return null;k.preventDefault(),ce.call(this,k,$)},{passive:!1})},{immediate:!0})});function W(Q,oe){return oe===2&&Array.isArray(Q)&&Q.includes(2)}function ne(Q){const oe=Q.ctrlKey&&yi()?10:1;return-Q.deltaY*(Q.deltaMode===1?.05:Q.deltaMode?1:.002)*oe}function ie(Q,oe){return Q.x!==oe.x&&!Number.isNaN(oe.x)||Q.y!==oe.y&&!Number.isNaN(oe.y)||Q.zoom!==oe.k&&!Number.isNaN(oe.k)}function de(Q){return{x:Q.x,y:Q.y,zoom:Q.k}}function ye(Q,oe){return Q.target.closest(`.${oe}`)}return(Q,oe)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:H,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(WA,{"is-selecting":Z.value,"selection-key-pressed":t.unref(M),class:t.normalizeClass({connecting:!!t.unref(b),dragging:t.unref(S),draggable:t.unref(u)===!0||Array.isArray(t.unref(u))&&t.unref(u).includes(0)})},{default:t.withCtx(()=>[t.createVNode(ZA,null,{default:t.withCtx(()=>[t.renderSlot(Q.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),eI=["id"],tI=["id"],nI=["id"],oI={name:"A11yDescriptions",compatConfig:{MODE:3}},rI=t.defineComponent({...oI,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=$e();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(hf)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select a node. "+t.toDisplayString(t.unref(o)?"":"You can then use the arrow keys to move the node around.")+" You can then use the arrow keys to move the node around, press delete to remove it and press escape to cancel. ",9,eI),t.createElementVNode("div",{id:`${t.unref(yf)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select an edge. You can then press delete to remove it or press escape to cancel. ",8,tI),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(Ax)}-${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,nI))],64))}});function iI(){const e=$e();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function aI(e,n,o){return o===be.Left?e-n:o===be.Right?e+n:e}function lI(e,n,o){return o===be.Top?e-n:o===be.Bottom?e+n:e}const Bl=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=be.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:aI(n,e,r),cy:lI(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};Bl.props=["radius","centerX","centerY","position","type"],Bl.compatConfig={MODE:3};const dp=Bl,sI=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:d,findEdge:f,findNode:u,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:h,elementsSelectable:_,edgesUpdatable:g,edgesFocusable:y,hooks:w}=$e(),b=t.computed(()=>f(e.id)),{emit:v,on:S}=rA(b.value,a),N=t.inject(wi),I=t.getCurrentInstance(),O=t.ref(!1),F=t.ref(!1),H=t.ref(""),q=t.ref(null),E=t.ref("source"),te=t.ref(null),P=t.toRef(()=>typeof b.value.selectable>"u"?_.value:b.value.selectable),G=t.toRef(()=>typeof b.value.updatable>"u"?g.value:b.value.updatable),R=t.toRef(()=>typeof b.value.focusable>"u"?y.value:b.value.focusable);t.provide(tA,e.id),t.provide(nA,te);const K=t.computed(()=>b.value.class instanceof Function?b.value.class(b.value):b.value.class),V=t.computed(()=>b.value.style instanceof Function?b.value.style(b.value):b.value.style),M=t.computed(()=>{const C=b.value.type||"default",x=N==null?void 0:N[`edge-${C}`];if(x)return x;let k=b.value.template??c.value[C];if(typeof k=="string"&&I){const $=Object.keys(I.appContext.components);$&&$.includes(C)&&(k=t.resolveComponent(C,!1))}return k&&typeof k!="string"?k:(a.error(new Ze(Ge.EDGE_TYPE_MISSING,k)),!1)}),{handlePointerDown:D}=Zf({nodeId:H,handleId:q,type:E,isValidConnection:p,edgeUpdaterType:E,onEdgeUpdate:Z,onEdgeUpdateEnd:W});return()=>{const C=u(b.value.source),x=u(b.value.target),k="pathOptions"in b.value?b.value.pathOptions:{};if(!C&&!x)return a.error(new Ze(Ge.EDGE_SOURCE_TARGET_MISSING,b.value.id,b.value.source,b.value.target)),null;if(!C)return a.error(new Ze(Ge.EDGE_SOURCE_MISSING,b.value.id,b.value.source)),null;if(!x)return a.error(new Ze(Ge.EDGE_TARGET_MISSING,b.value.id,b.value.target)),null;if(!b.value||b.value.hidden||C.hidden||x.hidden)return null;let $;r.value===Qt.Strict?$=C.handleBounds.source:$=[...C.handleBounds.source||[],...C.handleBounds.target||[]];const A=Mf($,b.value.sourceHandle);let z;r.value===Qt.Strict?z=x.handleBounds.target:z=[...x.handleBounds.target||[],...x.handleBounds.source||[]];const X=Mf(z,b.value.targetHandle),B=(A==null?void 0:A.position)||be.Bottom,ee=(X==null?void 0:X.position)||be.Top,{x:U,y:me}=no(C,A,B),{x:ge,y:he}=no(x,X,ee);return b.value.sourceX=U,b.value.sourceY=me,b.value.targetX=ge,b.value.targetY=he,t.h("g",{ref:te,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${M.value===!1?"default":b.value.type||"default"}`,s.value,K.value,{updating:O.value,selected:b.value.selected,animated:b.value.animated,inactive:!P.value&&!w.value.edgeClick.hasListeners()}],tabIndex:R.value?0:void 0,"aria-label":b.value.ariaLabel===null?void 0:b.value.ariaLabel??`Edge from ${b.value.source} to ${b.value.target}`,"aria-describedby":R.value?`${yf}-${n}`:void 0,"aria-roledescription":"edge",role:R.value?"group":"img",...b.value.domAttributes,onClick:ie,onContextmenu:de,onDblclick:ye,onMouseenter:Q,onMousemove:oe,onMouseleave:le,onKeyDown:R.value?T:void 0},[F.value?null:t.h(M.value===!1?c.value.default:M.value,{id:e.id,sourceNode:C,targetNode:x,source:b.value.source,target:b.value.target,type:b.value.type,updatable:G.value,selected:b.value.selected,animated:b.value.animated,label:b.value.label,labelStyle:b.value.labelStyle,labelShowBg:b.value.labelShowBg,labelBgStyle:b.value.labelBgStyle,labelBgPadding:b.value.labelBgPadding,labelBgBorderRadius:b.value.labelBgBorderRadius,data:b.value.data,events:{...b.value.events,...S},style:V.value,markerStart:`url('#${Jo(b.value.markerStart,n)}')`,markerEnd:`url('#${Jo(b.value.markerEnd,n)}')`,sourcePosition:B,targetPosition:ee,sourceX:U,sourceY:me,targetX:ge,targetY:he,sourceHandleId:b.value.sourceHandle,targetHandleId:b.value.targetHandle,interactionWidth:b.value.interactionWidth,...k}),[G.value==="source"||G.value===!0?[t.h("g",{onMousedown:ue,onMouseenter:L,onMouseout:j},t.h(dp,{position:B,centerX:U,centerY:me,radius:i.value,type:"source","data-type":"source"}))]:null,G.value==="target"||G.value===!0?[t.h("g",{onMousedown:ce,onMouseenter:L,onMouseout:j},t.h(dp,{position:ee,centerX:ge,centerY:he,radius:i.value,type:"target","data-type":"target"}))]:null]])};function L(){O.value=!0}function j(){O.value=!1}function Z(C,x){v.update({event:C,edge:b.value,connection:x})}function W(C){v.updateEnd({event:C,edge:b.value}),F.value=!1}function ne(C,x){C.button===0&&(F.value=!0,H.value=x?b.value.target:b.value.source,q.value=(x?b.value.targetHandle:b.value.sourceHandle)??null,E.value=x?"target":"source",v.updateStart({event:C,edge:b.value}),D(C))}function ie(C){var x;const k={event:C,edge:b.value};P.value&&(l.value=!1,b.value.selected&&m.value?(d([b.value]),(x=te.value)==null||x.blur()):o([b.value])),v.click(k)}function de(C){v.contextMenu({event:C,edge:b.value})}function ye(C){v.doubleClick({event:C,edge:b.value})}function Q(C){v.mouseEnter({event:C,edge:b.value})}function oe(C){v.mouseMove({event:C,edge:b.value})}function le(C){v.mouseLeave({event:C,edge:b.value})}function ue(C){ne(C,!0)}function ce(C){ne(C,!1)}function T(C){var x;!h.value&&_f.includes(C.key)&&P.value&&(C.key==="Escape"?((x=te.value)==null||x.blur(),d([f(e.id)])):o([f(e.id)]))}}}),cI=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}=$e(),p=(e=t.inject(wi))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return u((w=r.value)==null?void 0:w.nodeId)}),h=t.computed(()=>{var w;return u((w=i.value)==null?void 0:w.nodeId)??null}),_=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),g=t.computed(()=>c.value.markerStart?`url(#${Jo(c.value.markerStart,n)})`:""),y=t.computed(()=>c.value.markerEnd?`url(#${Jo(c.value.markerEnd,n)})`:"");return()=>{var w,b,v;if(!m.value||!r.value)return null;const S=r.value.id,N=r.value.type,I=m.value.handleBounds;let O=(I==null?void 0:I[N])??[];if(o.value===Qt.Loose){const V=(I==null?void 0:I[N==="source"?"target":"source"])??[];O=[...O,...V]}if(!O)return null;const F=(S?O.find(V=>V.id===S):O[0])??null,H=(F==null?void 0:F.position)??be.Top,{x:q,y:E}=no(m.value,F,H);let te=null;h.value&&(o.value===Qt.Strict?te=((w=h.value.handleBounds[N==="source"?"target":"source"])==null?void 0:w.find(V=>{var M;return V.id===((M=i.value)==null?void 0:M.id)}))||null:te=((b=[...h.value.handleBounds.source??[],...h.value.handleBounds.target??[]])==null?void 0:b.find(V=>{var M;return V.id===((M=i.value)==null?void 0:M.id)}))||null);const P=((v=i.value)==null?void 0:v.position)??(H?xl[H]:null);if(!H||!P)return null;const G=l.value??c.value.type??En.Bezier;let R="";const K={sourceX:q,sourceY:E,sourcePosition:H,targetX:_.value.x,targetY:_.value.y,targetPosition:P};return G===En.Bezier?[R]=rp(K):G===En.Step?[R]=$l({...K,borderRadius:0}):G===En.SmoothStep?[R]=$l(K):G===En.SimpleBezier?[R]=ap(K):R=`M${q},${E} ${_.value.x},${_.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:q,sourceY:E,sourcePosition:H,targetX:_.value.x,targetY:_.value.y,targetPosition:P,sourceNode:m.value,sourceHandle:F,targetNode:h.value,targetHandle:te,markerEnd:y.value,markerStart:g.value,connectionStatus:d.value}):t.h("path",{d:R,class:[c.value.class,d,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":y.value,"marker-start":g.value})))}}}),dI=["id","markerWidth","markerHeight","markerUnits","orient"],uI={name:"MarkerType",compatConfig:{MODE:3}},fI=t.defineComponent({...uI,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(fi).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(fi).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,dI))}}),pI={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},mI={name:"MarkerDefinitions",compatConfig:{MODE:3}},gI=t.defineComponent({...mI,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=$e(),a=t.computed(()=>{const l=new Set,s=[],c=d=>{if(d){const f=Jo(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",pI,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(fI,{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))])]))}}),hI={name:"Edges",compatConfig:{MODE:3}},yI=t.defineComponent({...hI,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=$e();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(gI),(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(Kx)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(sI),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(cI))],64))}}),_I=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:d,onUpdateNodeInternals:f,getNodeTypes:u,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:h,ariaLiveMessage:_,snapToGrid:g,snapGrid:y,nodeDragThreshold:w,nodesDraggable:b,elementsSelectable:v,nodesConnectable:S,nodesFocusable:N,hooks:I}=$e(),O=t.ref(null);t.provide(Wf,O),t.provide(Yf,e.id);const F=t.inject(wi),H=t.getCurrentInstance(),q=Qf(),{node:E,parentNode:te}=Jf(e.id),{emit:P,on:G}=sA(E,l),R=t.toRef(()=>typeof E.draggable>"u"?b.value:E.draggable),K=t.toRef(()=>typeof E.selectable>"u"?v.value:E.selectable),V=t.toRef(()=>typeof E.connectable>"u"?S.value:E.connectable),M=t.toRef(()=>typeof E.focusable>"u"?N.value:E.focusable),D=t.computed(()=>K.value||R.value||I.value.nodeClick.hasListeners()||I.value.nodeDoubleClick.hasListeners()||I.value.nodeMouseEnter.hasListeners()||I.value.nodeMouseMove.hasListeners()||I.value.nodeMouseLeave.hasListeners()),L=t.toRef(()=>!!E.dimensions.width&&!!E.dimensions.height),j=t.computed(()=>{const x=E.type||"default",k=F==null?void 0:F[`node-${x}`];if(k)return k;let $=E.template||u.value[x];if(typeof $=="string"&&H){const A=Object.keys(H.appContext.components);A&&A.includes(x)&&($=t.resolveComponent(x,!1))}return $&&typeof $!="string"?$:(l.error(new Ze(Ge.NODE_TYPE_MISSING,$)),!1)}),Z=Xf({id:e.id,el:O,disabled:()=>!R.value,selectable:K,dragHandle:()=>E.dragHandle,onStart(x){P.dragStart(x)},onDrag(x){P.drag(x)},onStop(x){P.dragStop(x)},onClick(x){T(x)}}),W=t.computed(()=>E.class instanceof Function?E.class(E):E.class),ne=t.computed(()=>{const x=(E.style instanceof Function?E.style(E):E.style)||{},k=E.width instanceof Function?E.width(E):E.width,$=E.height instanceof Function?E.height(E):E.height;return!x.width&&k&&(x.width=typeof k=="string"?k:`${k}px`),!x.height&&$&&(x.height=typeof $=="string"?$:`${$}px`),x}),ie=t.toRef(()=>Number(E.zIndex??ne.value.zIndex??0));return f(x=>{(x.includes(e.id)||!x.length)&&ye()}),t.onMounted(()=>{t.watch(()=>E.hidden,(x=!1,k,$)=>{!x&&O.value&&(e.resizeObserver.observe(O.value),$(()=>{O.value&&e.resizeObserver.unobserve(O.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>E.type,()=>E.sourcePosition,()=>E.targetPosition],()=>{t.nextTick(()=>{d([{id:e.id,nodeElement:O.value,forceUpdate:!0}])})}),t.watch([()=>E.position.x,()=>E.position.y,()=>{var x;return(x=te.value)==null?void 0:x.computedPosition.x},()=>{var x;return(x=te.value)==null?void 0:x.computedPosition.y},()=>{var x;return(x=te.value)==null?void 0:x.computedPosition.z},ie,()=>E.selected,()=>E.dimensions.height,()=>E.dimensions.width,()=>{var x;return(x=te.value)==null?void 0:x.dimensions.height},()=>{var x;return(x=te.value)==null?void 0:x.dimensions.width}],([x,k,$,A,z,X])=>{const B={x,y:k,z:X+(m.value&&E.selected?1e3:0)};typeof $<"u"&&typeof A<"u"?E.computedPosition=Rx({x:$,y:A,z},B):E.computedPosition=B},{flush:"post",immediate:!0}),t.watch([()=>E.extent,p],([x,k],[$,A])=>{(x!==$||k!==A)&&de()}),E.extent==="parent"||typeof E.extent=="object"&&"range"in E.extent&&E.extent.range==="parent"?Ja(()=>L).toBe(!0).then(de):de(),()=>E.hidden?null:t.h("div",{ref:O,"data-id":E.id,class:["vue-flow__node",`vue-flow__node-${j.value===!1?"default":E.type||"default"}`,{[o.value]:R.value,dragging:Z==null?void 0:Z.value,draggable:R.value,selected:E.selected,selectable:K.value,parent:E.isParent},W.value],style:{visibility:L.value?"visible":"hidden",zIndex:E.computedPosition.z??ie.value,transform:`translate(${E.computedPosition.x}px,${E.computedPosition.y}px)`,pointerEvents:D.value?"all":"none",...ne.value},tabIndex:M.value?0:void 0,role:M.value?"group":void 0,"aria-describedby":h.value?void 0:`${hf}-${n}`,"aria-label":E.ariaLabel,"aria-roledescription":"node",...E.domAttributes,onMouseenter:Q,onMousemove:oe,onMouseleave:le,onContextmenu:ue,onClick:T,onDblclick:ce,onKeydown:C},[t.h(j.value===!1?u.value.default:j.value,{id:E.id,type:E.type,data:E.data,events:{...E.events,...G},selected:E.selected,resizing:E.resizing,dragging:Z.value,connectable:V.value,position:E.computedPosition,dimensions:E.dimensions,isValidTargetPos:E.isValidTargetPos,isValidSourcePos:E.isValidSourcePos,parent:E.parentNode,parentNodeId:E.parentNode,zIndex:E.computedPosition.z??ie.value,targetPosition:E.targetPosition,sourcePosition:E.sourcePosition,label:E.label,dragHandle:E.dragHandle,onUpdateNodeInternals:ye})]);function de(){const x=E.computedPosition,{computedPosition:k,position:$}=Nl(E,g.value?_i(x,y.value):x,l.error,p.value,te.value);(E.computedPosition.x!==k.x||E.computedPosition.y!==k.y)&&(E.computedPosition={...E.computedPosition,...k}),(E.position.x!==$.x||E.position.y!==$.y)&&(E.position=$)}function ye(){O.value&&d([{id:e.id,nodeElement:O.value,forceUpdate:!0}])}function Q(x){Z!=null&&Z.value||P.mouseEnter({event:x,node:E})}function oe(x){Z!=null&&Z.value||P.mouseMove({event:x,node:E})}function le(x){Z!=null&&Z.value||P.mouseLeave({event:x,node:E})}function ue(x){return P.contextMenu({event:x,node:E})}function ce(x){return P.doubleClick({event:x,node:E})}function T(x){K.value&&(!r.value||!R.value||w.value>0)&&Al(E,a.value,c,s,i,!1,O.value),P.click({event:x,node:E})}function C(x){if(!(wl(x)||h.value))if(_f.includes(x.key)&&K.value){const k=x.key==="Escape";Al(E,a.value,c,s,i,k,O.value)}else R.value&&E.selected&&to[x.key]&&(x.preventDefault(),_.value=`Moved selected node ${x.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~E.position.x}, y: ${~~E.position.y}`,q({x:to[x.key].x,y:to[x.key].y},x.shiftKey))}}});function bI(e={includeHiddenNodes:!1}){const{nodes:n}=$e();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 wI={class:"vue-flow__nodes vue-flow__container"},kI={name:"Nodes",compatConfig:{MODE:3}},CI=t.defineComponent({...kI,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=$e(),i=bI(),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",wI,[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(_I),{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 EI(){const{emits:e}=$e();t.onMounted(()=>{if(Kf()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new Ze(Ge.MISSING_STYLES))}})}const NI=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),SI={name:"VueFlow",compatConfig:{MODE:3}},up=t.defineComponent({...SI,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=Qa(r,"modelValue",o),l=Qa(r,"nodes",o),s=Qa(r,"edges",o),c=$e(r),d=fA({modelValue:a,nodes:l,edges:s},r,c);return mA(o,c.hooks),iI(),EI(),t.provide(wi,i),t.onUnmounted(()=>{d()}),n(c),(f,u)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode(QA,null,{default:t.withCtx(()=>[t.createVNode(yI),NI,t.createVNode(CI),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(rI)],512))}}),vI={name:"Panel",compatConfig:{MODE:3}},xI=t.defineComponent({...vI,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=$e(),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 Gt=(e=>(e.Lines="lines",e.Dots="dots",e))(Gt||{});const fp=function({dimensions:e,size:n,color:o}){return t.h("path",{stroke:o,"stroke-width":n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},pp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};Gt.Lines+"",Gt.Dots+"";const AI={[Gt.Dots]:"#81818a",[Gt.Lines]:"#eee"},II=["id","x","y","width","height","patternTransform"],PI={key:2,height:"100",width:"100"},TI=["fill"],OI=["x","y","fill"],$I={name:"Background",compatConfig:{MODE:3}},BI=t.defineComponent({...$I,props:{id:{},variant:{default:()=>Gt.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}=$e(),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||AI[e.variant||Gt.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(Gt).Lines?(t.openBlock(),t.createBlock(t.unref(fp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(Gt).Dots?(t.openBlock(),t.createBlock(t.unref(pp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",PI,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,TI)])):t.createCommentVNode("",!0)])],8,II)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,OI),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),VI={name:"ControlButton",compatConfig:{MODE:3}},RI=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},DI={class:"vue-flow__controls-button"};function MI(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",DI,[t.renderSlot(e.$slots,"default")])}const Qo=RI(VI,[["render",MI]]),FI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},LI=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function UI(e,n){return t.openBlock(),t.createElementBlock("svg",FI,LI)}const KI={render:UI},jI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},qI=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function GI(e,n){return t.openBlock(),t.createElementBlock("svg",jI,qI)}const zI={render:GI},HI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},YI=[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 WI(e,n){return t.openBlock(),t.createElementBlock("svg",HI,YI)}const XI={render:WI},ZI={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},JI=[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 QI(e,n){return t.openBlock(),t.createElementBlock("svg",ZI,JI)}const eP={render:QI},tP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},nP=[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 oP(e,n){return t.openBlock(),t.createElementBlock("svg",tP,nP)}const rP={render:oP},iP={name:"Controls",compatConfig:{MODE:3}},aP=t.defineComponent({...iP,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>mf.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}=$e(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>d.value.zoom<=f.value),h=t.toRef(()=>d.value.zoom>=u.value);function _(){l(),n("zoomIn")}function g(){s(),n("zoomOut")}function y(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(b,v)=>(t.openBlock(),t.createBlock(t.unref(xI),{class:"vue-flow__controls",position:b.position},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"top"),b.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(b.$slots,"control-zoom-in",{},()=>[t.createVNode(Qo,{class:"vue-flow__controls-zoomin",disabled:h.value,onClick:_},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(KI))))])]),_:3},8,["disabled"])]),t.renderSlot(b.$slots,"control-zoom-out",{},()=>[t.createVNode(Qo,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(zI))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),b.showFitView?t.renderSlot(b.$slots,"control-fit-view",{key:1},()=>[t.createVNode(Qo,{class:"vue-flow__controls-fitview",onClick:y},{default:t.withCtx(()=>[t.renderSlot(b.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(XI))))])]),_:3})]):t.createCommentVNode("",!0),b.showInteractive?t.renderSlot(b.$slots,"control-interactive",{key:2},()=>[b.showInteractive?(t.openBlock(),t.createBlock(Qo,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(b.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(rP))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(b.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(eP))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(b.$slots,"default")]),_:3},8,["position"]))}}),lP=["undo","redo","duplicate","cut","copy","paste"],mp=()=>{};function sP(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function cP(e){if(!(e.metaKey||e.ctrlKey))return;switch(e.key.toLowerCase()){case"z":return e.shiftKey?"redo":"undo";case"y":return"redo";case"d":return"duplicate";case"x":return"cut";case"c":return"copy";case"v":return"paste"}}const dP=Ke.createSharedComposable(()=>{const e=new Set;Ke.useEventListener("keydown",o=>{if(sP(o.target))return;const r=cP(o);if(r)for(const i of e){if(!t.toValue(i.enabled))continue;const a=i[r];if(a){if(o.defaultPrevented){t.warn(`[useHotkeys] event for "${r}" was already defaultPrevented. Hotkey ignored.`);return}o.preventDefault(),a();return}}},{passive:!1});function n(o){if(!lP.some(i=>typeof o[i]=="function"))return mp;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function gp(e={}){if(typeof window>"u")return mp;const n=dP().subscribe(e);return t.onScopeDispose(n),n}const er={padding:80,gaps:{nodes:40,edges:80,ranks:40}},uP=1600,fP=1.2,pP=0,mP=200,hp=Symbol("confirm-modal"),oo="{key}",xn={"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}},xi=Object.keys(xn).filter(e=>e.includes(oo)).map(e=>e.replace(oo,""));function Vl(e){if(!e||!nr(e))return;const n=xi.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(oo,"")}function tr(e){if(!e)return null;const n=xi.find(o=>e.startsWith(o));return n||e}function nr(e){return e?xi.some(n=>e.startsWith(n)):!1}function yp(e){return e?nr(e)?tr(e)+oo:e:null}function Rl(e){var o;if(!e)return!1;const n=yp(e);return n?((o=xn[n])==null?void 0:o.readable)??!1:!1}function Dl(e){var o;if(!e)return!1;const n=yp(e);return n?((o=xn[n])==null?void 0:o.writable)??!1:!1}function gP(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var hP="\0",An="\0",_p="";let yP=class{constructor(n){Ye(this,"_isDirected",!0);Ye(this,"_isMultigraph",!1);Ye(this,"_isCompound",!1);Ye(this,"_label");Ye(this,"_defaultNodeLabelFn",()=>{});Ye(this,"_defaultEdgeLabelFn",()=>{});Ye(this,"_nodes",{});Ye(this,"_in",{});Ye(this,"_preds",{});Ye(this,"_out",{});Ye(this,"_sucs",{});Ye(this,"_edgeObjs",{});Ye(this,"_edgeLabels",{});Ye(this,"_nodeCount",0);Ye(this,"_edgeCount",0);Ye(this,"_parent");Ye(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[An]={})}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]=An,this._children[n]={},this._children[An][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=An;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!==An)return o}}children(n=An){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===An)return this.nodes();if(this.hasNode(n))return[]}}predecessors(n){var o=this._preds[n];if(o)return Object.keys(o)}successors(n){var o=this._sucs[n];if(o)return Object.keys(o)}neighbors(n){var o=this.predecessors(n);if(o){const i=new Set(o);for(var r of this.successors(n))i.add(r);return Array.from(i.values())}}isLeaf(n){var o;return this.isDirected()?o=this.successors(n):o=this.neighbors(n),o.length===0}filterNodes(n){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});o.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([l,s]){n(l)&&o.setNode(l,s)}),Object.values(this._edgeObjs).forEach(function(l){o.hasNode(l.v)&&o.hasNode(l.w)&&o.setEdge(l,r.edge(l))});var i={};function a(l){var s=r.parent(l);return s===void 0||o.hasNode(s)?(i[l]=s,s):s in i?i[s]:a(s)}return this._isCompound&&o.nodes().forEach(l=>o.setParent(l,a(l))),o}setDefaultEdgeLabel(n){return this._defaultEdgeLabelFn=n,typeof n!="function"&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,o){var r=this,i=arguments;return n.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var n,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(n=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(n=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),n=""+n,o=""+o,r!==void 0&&(r=""+r);var s=or(this._isDirected,n,o,r);if(Object.hasOwn(this._edgeLabels,s))return a&&(this._edgeLabels[s]=i),this;if(r!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(n),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(n,o,r);var c=_P(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,bp(this._preds[o],n),bp(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?Ml(this._isDirected,arguments[0]):or(this._isDirected,n,o,r);return this._edgeLabels[i]}edgeAsObj(){const n=this.edge(...arguments);return typeof n!="object"?{label:n}:n}hasEdge(n,o,r){var i=arguments.length===1?Ml(this._isDirected,arguments[0]):or(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?Ml(this._isDirected,arguments[0]):or(this._isDirected,n,o,r),a=this._edgeObjs[i];return a&&(n=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],wp(this._preds[o],n),wp(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 bp(e,n){e[n]?e[n]++:e[n]=1}function wp(e,n){--e[n]||delete e[n]}function or(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+_p+a+_p+(r===void 0?hP:r)}function _P(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 Ml(e,n){return or(e,n.v,n.w,n.name)}var Fl=yP,bP="2.2.4",wP={Graph:Fl,version:bP},kP=Fl,CP={write:EP,read:vP};function EP(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:NP(e),edges:SP(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function NP(e){return e.nodes().map(function(n){var o=e.node(n),r=e.parent(n),i={v:n};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function SP(e){return e.edges().map(function(n){var o=e.edge(n),r={v:n.v,w:n.w};return n.name!==void 0&&(r.name=n.name),o!==void 0&&(r.value=o),r})}function vP(e){var n=new kP(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 xP=AP;function AP(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 kp=class{constructor(){Ye(this,"_arr",[]);Ye(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}},IP=kp,Cp=TP,PP=()=>1;function TP(e,n,o,r){return OP(e,String(n),o||PP,r||function(i){return e.outEdges(i)})}function OP(e,n,o,r){var i={},a=new IP,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 $P=Cp,BP=VP;function VP(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=$P(e,i,n,o),r},{})}var Ep=RP;function RP(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 DP=Ep,MP=FP;function FP(e){return DP(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var LP=KP,UP=()=>1;function KP(e,n,o){return jP(e,n||UP,o||function(r){return e.outEdges(r)})}function jP(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 Np(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new Ll;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 Ll;return r}class Ll extends Error{constructor(){super(...arguments)}}var Sp=Np;Np.CycleException=Ll;var vp=Sp,qP=GP;function GP(e){try{vp(e)}catch(n){if(n instanceof vp.CycleException)return!1;throw n}return!0}var xp=zP;function zP(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?HP:YP,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 HP(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]),Ap(n(a[0]),l=>i.push([l,!1])))}}function YP(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),Ap(n(a),l=>i.push(l)))}}function Ap(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var WP=xp,XP=ZP;function ZP(e,n){return WP(e,n,"post")}var JP=xp,QP=eT;function eT(e,n){return JP(e,n,"pre")}var tT=Fl,nT=kp,oT=rT;function rT(e,n){var o=new tT,r={},i=new nT,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 iT={components:xP,dijkstra:Cp,dijkstraAll:BP,findCycles:MP,floydWarshall:LP,isAcyclic:qP,postorder:XP,preorder:QP,prim:oT,tarjan:Ep,topsort:Sp},Ip=wP,Nt={Graph:Ip.Graph,json:CP,alg:iT,version:Ip.version};let aT=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return Pp(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&Pp(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,lT)),r=r._prev;return"["+n.join(", ")+"]"}};function Pp(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function lT(e,n){if(e!=="_next"&&e!=="_prev")return n}var sT=aT;let cT=Nt.Graph,dT=sT;var uT=pT;let fT=()=>1;function pT(e,n){if(e.nodeCount()<=1)return[];let o=gT(e,n||fT);return mT(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function mT(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)Ul(e,n,o,l);for(;l=i.dequeue();)Ul(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(Ul(e,n,o,l,!0));break}}}return r}function Ul(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,Kl(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,d=e.node(c);d.in-=s,Kl(n,o,d)}),e.removeNode(r.v),a}function gT(e,n){let o=new cT,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=hT(i+r+3).map(()=>new dT),l=r+1;return o.nodes().forEach(s=>{Kl(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function Kl(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 hT(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let Tp=Nt.Graph;var He={addBorderNode:ST,addDummyNode:Op,applyWithChunking:Ai,asNonCompoundGraph:_T,buildLayerMatrix:CT,intersectRect:kT,mapValues:OT,maxRank:Bp,normalizeRanks:ET,notime:IT,partition:xT,pick:TT,predecessorWeights:wT,range:Rp,removeEmptyRanks:NT,simplify:yT,successorWeights:bT,time:AT,uniqueId:Vp,zipObject:jl};function Op(e,n,o,r){for(var i=r;e.hasNode(i);)i=Vp(r);return o.dummy=n,e.setNode(i,o),i}function yT(e){let n=new Tp().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 _T(e){let n=new Tp({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 bT(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 jl(e.nodes(),n)}function wT(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 jl(e.nodes(),n)}function kT(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 CT(e){let n=Rp(Bp(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 ET(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=Ai(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function NT(e){let n=e.nodes().map(l=>e.node(l).rank),o=Ai(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 ST(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),Op(e,"border",i,n)}function vT(e,n=$p){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const $p=65535;function Ai(e,n){if(n.length>$p){const o=vT(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function Bp(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return Ai(Math.max,o)}function xT(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function AT(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function IT(e,n){return n()}let PT=0;function Vp(e){var n=++PT;return e+(""+n)}function Rp(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 TT(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function OT(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 jl(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let $T=uT,BT=He.uniqueId;var VT={run:RT,undo:MT};function RT(e){(e.graph().acyclicer==="greedy"?$T(e,o(e)):DT(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,BT("rev"))});function o(r){return i=>r.edge(i).weight}}function DT(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 MT(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 FT=He;var LT={run:UT,undo:jT};function UT(e){e.graph().dummyChains=[],e.edges().forEach(n=>KT(e,n))}function KT(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=FT.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 jT(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:qT}=He;var Ii={longestPath:GT,slack:zT};function GT(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=qT(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function zT(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var HT=Nt.Graph,Pi=Ii.slack,Dp=YT;function YT(e){var n=new HT({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;WT(n,e)<r;)i=XT(n,e),a=n.hasNode(i.v)?Pi(e,i):-Pi(e,i),ZT(n,e,a);return n}function WT(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!Pi(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function XT(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=Pi(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function ZT(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var JT=Dp,Mp=Ii.slack,QT=Ii.longestPath,eO=Nt.alg.preorder,tO=Nt.alg.postorder,nO=He.simplify,oO=In;In.initLowLimValues=Gl,In.initCutValues=ql,In.calcCutValue=Fp,In.leaveEdge=Up,In.enterEdge=Kp,In.exchangeEdges=jp;function In(e){e=nO(e),QT(e);var n=JT(e);Gl(n),ql(n,e);for(var o,r;o=Up(n);)r=Kp(n,e,o),jp(n,e,o,r)}function ql(e,n){var o=tO(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>rO(e,n,r))}function rO(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=Fp(e,n,o)}function Fp(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,aO(e,o,f)){var m=e.edge(o,f).cutvalue;s+=u?-m:m}}}),s}function Gl(e,n){arguments.length<2&&(n=e.nodes()[0]),Lp(e,{},1,n)}function Lp(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=Lp(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function Up(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function Kp(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===qp(e,e.node(f.v),s)&&c!==qp(e,e.node(f.w),s));return d.reduce((f,u)=>Mp(n,u)<Mp(n,f)?u:f)}function jp(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),Gl(e),ql(e,n),iO(e,n)}function iO(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=eO(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 aO(e,n,o){return e.hasEdge(n,o)}function qp(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var lO=Ii,Gp=lO.longestPath,sO=Dp,cO=oO,dO=uO;function uO(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":zp(e);break;case"tight-tree":pO(e);break;case"longest-path":fO(e);break;case"none":break;default:zp(e)}}var fO=Gp;function pO(e){Gp(e),sO(e)}function zp(e){cO(e)}var mO=gO;function gO(e){let n=yO(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=hO(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 hO(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 yO(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 Ti=He;var _O={run:bO,cleanup:CO};function bO(e){let n=Ti.addDummyNode(e,"root",{},"_root"),o=wO(e),r=Object.values(o),i=Ti.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=kO(e)+1;e.children().forEach(s=>Hp(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function Hp(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=Ti.addBorderNode(e,"_bt"),d=Ti.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(d,l),f.borderBottom=d,s.forEach(u=>{Hp(e,n,o,r,i,a,u);let p=e.node(u),m=p.borderTop?p.borderTop:u,h=p.borderBottom?p.borderBottom:u,_=p.borderTop?r:2*r,g=m!==h?1:i-a[l]+1;e.setEdge(c,m,{weight:_,minlen:g,nestingEdge:!0}),e.setEdge(h,d,{weight:_,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function wO(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 kO(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function CO(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 EO=He;var NO=SO;function SO(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)Yp(e,"borderLeft","_bl",o,i,a),Yp(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function Yp(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=EO.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var vO={adjust:xO,undo:AO};function xO(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&Wp(e)}function AO(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&IO(e),(n==="lr"||n==="rl")&&(PO(e),Wp(e))}function Wp(e){e.nodes().forEach(n=>Xp(e.node(n))),e.edges().forEach(n=>Xp(e.edge(n)))}function Xp(e){let n=e.width;e.width=e.height,e.height=n}function IO(e){e.nodes().forEach(n=>zl(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(zl),Object.hasOwn(o,"y")&&zl(o)})}function zl(e){e.y=-e.y}function PO(e){e.nodes().forEach(n=>Hl(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(Hl),Object.hasOwn(o,"x")&&Hl(o)})}function Hl(e){let n=e.x;e.x=e.y,e.y=n}let Zp=He;var TO=OO;function OO(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=Zp.applyWithChunking(Math.max,r),a=Zp.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 $O=He.zipObject;var BO=VO;function VO(e,n){let o=0;for(let r=1;r<n.length;++r)o+=RO(e,n[r-1],n[r]);return o}function RO(e,n,o){let r=$O(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 DO=MO;function MO(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 FO=He;var LO=UO;function UO(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 KO(r)}function KO(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&jO(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=>FO.pick(i,["vs","i","barycenter","weight"]))}function jO(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 qO=He;var GO=zO;function zO(e,n){let o=qO.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(HO(!!n)),c=Jp(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=Jp(a,i,c)});let d={vs:a.flat(!0)};return s&&(d.barycenter=l/s,d.weight=s),d}function Jp(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 HO(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let YO=DO,WO=LO,XO=GO;var ZO=Qp;function Qp(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=YO(e,i);d.forEach(p=>{if(e.children(p.v).length){let m=Qp(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&QO(p,m)}});let f=WO(d,o);JO(f,c);let u=XO(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 JO(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function QO(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 e$=Nt.Graph,t$=He;var n$=o$;function o$(e,n,o){let r=r$(e),i=new e$({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 r$(e){for(var n;e.hasNode(n=t$.uniqueId("_root")););return n}var i$=a$;function a$(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 l$=TO,s$=BO,c$=ZO,d$=n$,u$=i$,f$=Nt.Graph,Oi=He;var p$=em;function em(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,em);return}let o=Oi.maxRank(e),r=tm(e,Oi.range(1,o+1),"inEdges"),i=tm(e,Oi.range(o-1,-1,-1),"outEdges"),a=l$(e);if(nm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,d=0;d<4;++c,++d){m$(c%2?r:i,c%4>=2),a=Oi.buildLayerMatrix(e);let f=s$(e,a);f<l&&(d=0,s=Object.assign({},a),l=f)}nm(e,s)}function tm(e,n,o){return n.map(function(r){return d$(e,r,o)})}function m$(e,n){let o=new f$;e.forEach(function(r){let i=r.graph().root,a=c$(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),u$(r,o,a.vs)})}function nm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let g$=Nt.Graph,zt=He;var h$={positionX:x$};function y$(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=b$(e,f),m=p?e.node(p).order:c;(p||f===d)&&(a.slice(s,u+1).forEach(h=>{e.predecessors(h).forEach(_=>{let g=e.node(_),y=g.order;(y<l||m<y)&&!(g.dummy&&e.node(h).dummy)&&om(o,_,h)})}),s=u+1,l=m)}),a}return n.length&&n.reduce(r),o}function _$(e,n){let o={};function r(a,l,s,c,d){let f;zt.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)&&om(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 b$(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function om(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 w$(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function k$(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]&&!w$(o,d,h)&&(a[h]=d,a[d]=i[d]=i[h],c=l[h])}}})}),{root:i,align:a}}function C$(e,n,o,r,i){let a={},l=E$(e,n,o,i),s=i?"borderLeft":"borderRight";function c(u,p){let m=l.nodes(),h=m.pop(),_={};for(;h;)_[h]?u(h):(_[h]=!0,m.push(h),m=m.concat(p(h))),h=m.pop()}function d(u){a[u]=l.inEdges(u).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(u){let p=l.outEdges(u).reduce((h,_)=>Math.min(h,a[_.w]-l.edge(_)),Number.POSITIVE_INFINITY),m=e.node(u);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[u]=Math.max(a[u],p))}return c(d,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(u=>a[u]=a[o[u]]),a}function E$(e,n,o,r){let i=new g$,a=e.graph(),l=A$(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 N$(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=I$(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 S$(e,n){let o=Object.values(n),r=zt.applyWithChunking(Math.min,o),i=zt.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-zt.applyWithChunking(Math.min,d);l!=="l"&&(f=i-zt.applyWithChunking(Math.max,d)),f&&(e[s]=zt.mapValues(c,u=>u+f))})})}function v$(e,n){return zt.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 x$(e){let n=zt.buildLayerMatrix(e),o=Object.assign(y$(e,n),_$(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=k$(e,i,o,c),f=C$(e,i,d.root,d.align,s==="r");s==="r"&&(f=zt.mapValues(f,u=>-u)),r[l+s]=f})});let a=N$(e,r);return S$(r,a),v$(r,e.graph().align)}function A$(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 I$(e,n){return e.node(n).width}let rm=He,P$=h$.positionX;var T$=O$;function O$(e){e=rm.asNonCompoundGraph(e),$$(e),Object.entries(P$(e)).forEach(([n,o])=>e.node(n).x=o)}function $$(e){let n=rm.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 im=VT,am=LT,B$=dO,V$=He.normalizeRanks,R$=mO,D$=He.removeEmptyRanks,lm=_O,M$=NO,sm=vO,F$=p$,L$=T$,ht=He,U$=Nt.Graph;var K$=j$;function j$(e,n){let o=n&&n.debugTiming?ht.time:ht.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>Q$(e));o(" runLayout",()=>q$(r,o,n)),o(" updateInputGraph",()=>G$(e,r))})}function q$(e,n,o){n(" makeSpaceForEdgeLabels",()=>eB(e)),n(" removeSelfEdges",()=>cB(e)),n(" acyclic",()=>im.run(e)),n(" nestingGraph.run",()=>lm.run(e)),n(" rank",()=>B$(ht.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>tB(e)),n(" removeEmptyRanks",()=>D$(e)),n(" nestingGraph.cleanup",()=>lm.cleanup(e)),n(" normalizeRanks",()=>V$(e)),n(" assignRankMinMax",()=>nB(e)),n(" removeEdgeLabelProxies",()=>oB(e)),n(" normalize.run",()=>am.run(e)),n(" parentDummyChains",()=>R$(e)),n(" addBorderSegments",()=>M$(e)),n(" order",()=>F$(e,o)),n(" insertSelfEdges",()=>dB(e)),n(" adjustCoordinateSystem",()=>sm.adjust(e)),n(" position",()=>L$(e)),n(" positionSelfEdges",()=>uB(e)),n(" removeBorderNodes",()=>sB(e)),n(" normalize.undo",()=>am.undo(e)),n(" fixupEdgeLabelCoords",()=>aB(e)),n(" undoCoordinateSystem",()=>sm.undo(e)),n(" translateGraph",()=>rB(e)),n(" assignNodeIntersects",()=>iB(e)),n(" reversePoints",()=>lB(e)),n(" acyclic.undo",()=>im.undo(e))}function G$(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 z$=["nodesep","edgesep","ranksep","marginx","marginy"],H$={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},Y$=["acyclicer","ranker","rankdir","align"],W$=["width","height","rank"],cm={width:0,height:0},X$=["minlen","weight","width","height","labeloffset"],Z$={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},J$=["labelpos"];function Q$(e){let n=new U$({multigraph:!0,compound:!0}),o=Wl(e.graph());return n.setGraph(Object.assign({},H$,Yl(o,z$),ht.pick(o,Y$))),e.nodes().forEach(r=>{let i=Wl(e.node(r));const a=Yl(i,W$);Object.keys(cm).forEach(l=>{a[l]===void 0&&(a[l]=cm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=Wl(e.edge(r));n.setEdge(r,Object.assign({},Z$,Yl(i,X$),ht.pick(i,J$)))}),n}function eB(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 tB(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};ht.addDummyNode(e,"edge-proxy",a,"_ep")}})}function nB(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 oB(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 rB(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 iB(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(ht.intersectRect(r,a)),o.points.push(ht.intersectRect(i,l))})}function aB(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 lB(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function sB(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 cB(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 dB(e){var n=ht.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=>{ht.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 uB(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 Yl(e,n){return ht.mapValues(ht.pick(e,n),Number)}function Wl(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let fB=He,pB=Nt.Graph;var mB={debugOrdering:gB};function gB(e){let n=fB.buildLayerMatrix(e),o=new pB({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 hB="1.1.5",yB={graphlib:Nt,layout:K$,debug:mB,util:{time:He.time,notime:He.notime},version:hB};const dm=gP(yB);function _B(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(vc,e);return o=>n(o)}function $i(e,n,o){const r=n?Jt(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function rr(e,n){const o=n(e.source),r=n(e.target);return[$i(o,e.sourceField,"output"),$i(r,e.targetField,"input")]}function Xl(e,n,o,r,i){const a=i(e),l=i(o);return[$i(a,n,"output"),$i(l,r,"input")]}function bB(e){t.provide(hp,e)}function um(){return t.inject(hp,void 0)}function wB(){const e=um();if(!e)throw new Error("Confirm modal not provided");return e}function fm(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}function kB(){const e={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};return[r=>{e.x1=Math.min(e.x1,r.x),e.y1=Math.min(e.y1,r.y),e.x2=Math.max(e.x2,r.x+r.width),e.y2=Math.max(e.y2,r.y+r.height)},()=>{const r={...e};return r.x1>r.x2&&(r.x1=r.x2=0),r.y1>r.y2&&(r.y1=r.y2=0),r}]}const CB={default:Ck,hover:Nk,selected:Ek};let pm,Zl;function Bi(e){const n=e.id===pm?"selected":e.id===Zl?"hover":"default",o=CB[n],{markerEnd:r}=e,i=typeof r=="object"?{...r,color:o}:{type:r,color:o};return{...e,style:{...e.style,stroke:o,strokeWidth:n==="selected"?1.5:void 0},markerEnd:i,zIndex:n==="default"?void 0:1}}const[EB,NB]=Ke.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=er.padding,gaps:s=er.gaps}=r,{nodes:c=er.gaps.nodes,edges:d=er.gaps.edges,ranks:f=er.gaps.ranks}=s,u=$e(o),p=nt(),m=um(),h=_B(),{i18n:{t:_}}=Te(),{findNode:g,fitView:y,deleteKeyCode:w,onNodeDragStop:b,onConnect:v,onNodesChange:S,onEdgesChange:N,onEdgeUpdate:I,onEdgeMouseEnter:O,onEdgeMouseLeave:F,getNodes:H,setNodes:q,setEdges:E,addSelectedNodes:te}=u;w.value=["Delete","Backspace"];const{state:P,commit:G,moveNode:R,selectNode:K,removeNode:V,getNodeById:M,connectEdge:D,disconnectEdge:L,getInEdgesByNodeId:j,commit:Z,reset:W}=p;function ne(k,$){const A=M(k.source),z=M(k.target);return!!(A&&z&&A.phase===$&&z.phase===$)}const ie=t.computed(()=>P.value.nodes.filter(k=>k.phase===n&&!k.hidden).map(k=>({id:k.id,type:"flow",position:k.position,data:k,deletable:!su(k)}))),de=t.computed(()=>P.value.edges.filter(k=>ne(k,n)).filter(k=>{const $=M(k.source),A=M(k.target);return!($!=null&&$.hidden)&&!(A!=null&&A.hidden)}).map(k=>{const $=M(k.source),A=M(k.target);if($){if(!A)throw new Error(`Missing target node "${k.target}" for edge "${k.id}" in phase "${n}"`)}else throw new Error(`Missing source node "${k.source}" for edge "${k.id}" in phase "${n}"`);return Bi({id:k.id,source:k.source,target:k.target,sourceHandle:k.sourceField?`outputs@${k.sourceField}`:"output",targetHandle:k.targetField?`inputs@${k.targetField}`:"input",markerEnd:fi.ArrowClosed,data:k,updatable:!i})}));t.watch([ie,de],([k,$])=>{q(k),E($)},{immediate:!0});const ye=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function Q({source:k,sourceHandle:$,target:A,targetHandle:z}){if(!$||!z)return;const X=fm($),B=fm(z);if((X==null?void 0:X.io)==="input"||(B==null?void 0:B.io)==="output"||$==="output"&&z==="output")return;const ee=j(A);let U=!1,me=!1;const ge=[],he=[],ae=(B==null?void 0:B.io)==="input"?ee.filter(Ne=>!Ne.targetField):ee.filter(Ne=>!!Ne.targetField);ae.length>0&&(U=!0,ae.forEach(Ne=>{he.push(rr(Ne,M)),L(Ne.id,!1)}));const pe=(B==null?void 0:B.io)==="input"?ee.filter(Ne=>Ne.targetField===B.field):ee.filter(Ne=>!Ne.targetField);if(pe.length>0){if(pe.some(se=>se.source===k&&se.target===A&&se.targetField===(B==null?void 0:B.field)&&se.sourceField===(X==null?void 0:X.field)))return;me=!0,pe.forEach(se=>{he.push(rr(se,M)),L(se.id,!1)})}if(!D({source:k,sourceField:X==null?void 0:X.field,target:A,targetField:B==null?void 0:B.field},!1)){W(),h({message:_("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(ge.push(Xl(k,X==null?void 0:X.field,A,B==null?void 0:B.field,M)),U||me){if(!m)throw W(),new Error("Expected confirm modal to be provided here when reachable");if(!await m(_(U?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),ge,he)){W();return}}Z()}v(Q);let oe=!1;const le=()=>{oe&&(oe=!1,Z())};S(k=>{k.filter(A=>A.type==="select").sort((A,z)=>A.selected===z.selected?0:A.selected?1:-1).forEach(A=>{K(A.selected?A.id:void 0)});let $=!1;k.forEach(A=>{A.type==="remove"&&($=!0,V(A.id,!1))}),$&&!oe&&(oe=!0,queueMicrotask(le))}),b(({node:k})=>{k&&R(k.id,k.position)}),N(k=>{k.filter(z=>z.type==="select").sort((z,X)=>z.selected===X.selected?0:z.selected?1:-1).forEach(z=>{pm=z.selected?z.id:void 0,E(X=>X.map(B=>B.id!==z.id||!B.markerEnd?B:Bi({...B,zIndex:z.selected?1:void 0})))});let A=!1;k.forEach(z=>{z.type==="remove"&&(A=!0,L(z.id,!1))}),A&&!oe&&(oe=!0,queueMicrotask(le))}),O(({edge:k})=>{Zl=k.id,E($=>$.map(A=>A.id!==k.id?A:Bi(A)))}),F(({edge:k})=>{Zl=void 0,E($=>$.map(A=>A.id!==k.id?A:Bi(A)))}),I(({edge:k,connection:$})=>{L(k.id,!1),Q($)});function ue(k=!0){let $,A;const z=[],X=re=>{switch(re.data.name){case"request":{if(n!=="request")throw new Error(`Unexpected request node in ${n} phase`);if($)throw new Error("Duplicated request node in request phase");return $=re,!0}case"service_request":{if(n!=="request")throw new Error(`Unexpected service_request node in ${n} phase`);if(A)throw new Error("Duplicated service_request node in request phase");return A=re,!0}case"service_response":{if(n!=="response")throw new Error(`Unexpected service_response node in ${n} phase`);if(A)throw new Error("Duplicated service_response node in response phase");return A=re,!0}case"response":{if(n!=="response")throw new Error(`Unexpected response node in ${n} phase`);if($)throw new Error("Duplicated response node in response phase");return $=re,!0}default:return z.push(re),!1}};let B;for(const re of ie.value)if(!X(re)&&z.length>0){B||(B=new dm.graphlib.Graph({multigraph:!0}),B.setGraph({rankdir:n==="request"?"LR":"RL",nodesep:c,edgesep:d,ranksep:f}));const Be=g(re.id);if(!Be)throw new Error(`Node ${re.id} is missing from the graph in ${n} phase`);B.setNode(re.id,{width:Be.dimensions.width,height:Be.dimensions.height})}if(!$||!A)throw new Error(`One or more implicit nodes are missing from ${n} phase`);const ee=g($.id),U=g(A.id);if(!ee||!U)throw new Error(`One or more implicit nodes are missing from the graph in ${n} phase`);if(z.length>0){if(!B)throw new Error("dagreGraph should be defined here if reachable");const re=new Set([$.id,A.id]);for(const Be of de.value)!re.has(Be.source)&&!re.has(Be.target)&&B.setEdge(Be.source,Be.target,{points:[]});dm.layout(B)}const[me,ge]=kB(),he=re=>({x:re.x-re.width/2,y:re.y-re.height/2,width:re.width,height:re.height});if(z.length>0){if(!B)throw new Error("dagreGraph should be defined here if reachable");for(const re of z){const Be=B.node(re.id),Ht=he(Be);me(Ht),R(re.data.id,{x:Ht.x,y:Ht.y},!1)}}const ae=ge(),pe=ae.x2-ae.x1,Se=ae.y2-ae.y1,Ne=Math.max(0,Math.min(t.toValue(a==null?void 0:a.width)??Number.POSITIVE_INFINITY,uP)-pe-2*c-ee.dimensions.width-U.dimensions.width-2*l),se=ae.y1+Se/2;R($.data.id,{x:ae.x1-c-Ne/2-ee.dimensions.width,y:se-ee.dimensions.height/2},!1),R(A.data.id,{x:ae.x2+c+Ne/2,y:se-U.dimensions.height/2},!1),k&&G(`autolayout-${o}`)}function ce(k){y({...ye.value,...k})}async function T(k){return K(k),new Promise($=>setTimeout(()=>{const A=g(k);te(A?[A]:[]),$()},0))}function C(k){const $=H.value,A=$.find(({id:ae})=>ae===k);if(!A)throw new Error(`Node ${k} not found`);const{position:{x:z,y:X},dimensions:{width:B,height:ee}}=A,U=X,me=X+ee,ge=$.filter(({id:ae})=>ae!==k).filter(({position:{y:ae},dimensions:{height:pe}})=>ae<me&&ae+pe>U).map(({position:{x:ae},dimensions:{width:pe}})=>({left:ae,right:ae+pe})).sort((ae,pe)=>ae.left-pe.left);let he=z+B+c;for(const{left:ae,right:pe}of ge)if(!(pe<=he)){if(he+B<=ae)return{x:he,y:U};he=Math.max(he,pe)+c}return{x:he,y:U}}function x(k){if(!k)return;const $=g(k);if(!$)throw new Error(`Node ${k} not found`);const{position:{x:A},dimensions:{width:z}}=$,X=A+z,{viewport:B,dimensions:ee,setViewport:U}=u,{x:me,y:ge,zoom:he}=B.value,{width:ae}=ee.value,pe=A*he+me,Se=X*he+me,Ne=ae-ou-c;if(Se<=Ne)return;let se=Ne-Se;pe+se<0&&(se=-pe),se!==0&&U({x:me+se,y:ge,zoom:he},{duration:mP})}return{vueFlowStore:u,editorStore:p,readonly:i,nodes:ie,edges:de,selectNode:T,autoLayout:ue,placeToRight:C,scrollRightToReveal:x,fitViewParams:ye,fitView:ce}}),Vi=we(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>be.Left},size:{default:()=>Number.parseFloat(Wc)},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(be).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),mm=we(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){const n=t.computed(()=>{var i;if(!wt(e.type))return((i=Bo[e.type])==null?void 0:i.icon)??void 0}),o=t.computed(()=>hN(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,class:t.normalizeClass({"icon-only":i.iconOnly}),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","class","size"])}}}),[["__scopeId","data-v-aae106a9"]]);let ro=null;function SB(){var n;if(ro)return ro;if(typeof navigator>"u")return ro="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?ro="mac":/Linux/i.test(e)&&!/Android/i.test(e)?ro="linux":ro="windows"}const vB={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},xB={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Win",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Spacebar",Delete:"Delete"},AB={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Super",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Space",Delete:"Delete"};function IB(e,n={}){const o=n.platform??SB(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?vB:o==="linux"?AB:xB;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const PB={key:0,class:"label"},TB={class:"keys"},Ri=we(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=IB(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:o.reverse}])},[o.label?(t.openBlock(),t.createElementBlock("span",PB,t.toDisplayString(o.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",TB,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),OB={class:"indicator-box"},$B={key:1,class:"additional-count"},Di=we(t.defineComponent({__name:"ValueIndicator",props:{edgeId:{},sourceNode:{},sourceFieldName:{},targetNodes:{},targetFieldNames:{},mode:{},reversed:{type:Boolean,default:!1}},setup(e){const n=t.createPropsRestProxy(e,["reversed"]),o=t.computed(()=>n.mode==="input"&&n.sourceNode?n.sourceFieldName?`${n.sourceNode.name}.${n.sourceFieldName}`:n.sourceNode.name:n.mode==="output"&&n.targetNodes?n.targetNodes.map((s,c)=>{var f;const d=(f=n.targetFieldNames)==null?void 0:f[c];return d?`${s.name}.${d}`:s.name}).join(", "):""),r=t.computed(()=>{var s,c;let l;if(n.mode==="input"&&n.sourceNode?l=n.sourceNode:n.mode==="output"&&n.targetNodes&&n.targetNodes.length>0&&(l=n.targetNodes[0]),!!l)return wt(l.type)?((c=Vo[l.type])==null?void 0:c.icon)??void 0:((s=Bo[l.type])==null?void 0:s.icon)??void 0}),i=t.computed(()=>n.mode==="output"&&n.targetNodes&&n.targetNodes.length>1?n.targetNodes.length-1:0),a=t.computed(()=>n.mode==="input"?e.reversed:!e.reversed);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["value-indicator",{reversed:a.value}])},[t.createVNode(t.unref(xe.KTooltip),{placement:"top",text:o.value},{default:t.withCtx(()=>[t.createElementVNode("div",OB,[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,color:t.unref(Yc),size:16},null,8,["color"])):t.createCommentVNode("",!0),i.value>0?(t.openBlock(),t.createElementBlock("span",$B," +"+t.toDisplayString(i.value),1)):t.createCommentVNode("",!0)])]),_:1},8,["text"])],2))}}),[["__scopeId","data-v-93cc1060"]]),BB={class:"body"},VB={class:"name"},RB={class:"handle"},DB={class:"handle-label-wrapper"},MB={class:"handle-label-wrapper"},FB={class:"handle-label text"},LB={class:"handle"},UB={class:"handle-label-wrapper"},KB={class:"handle-label-wrapper"},jB={class:"handle-label text"},gm=we(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=je.createI18n("en-us",We),o=NB(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:d}=nt(),f=t.computed(()=>Ro(e.data.type)),u=t.computed(()=>e.data.fields.input.length>0),p=t.computed(()=>e.data.fields.output.length>0),m=t.computed(()=>u.value&&r(e.data.id).every(K=>K.targetField===void 0)),h=t.computed(()=>p.value&&i(e.data.id).every(K=>K.sourceField===void 0)),_=t.computed(()=>e.data.expanded.input??!1),g=t.computed(()=>e.data.expanded.output??!1),y=t.computed(()=>{var K,V;if(e.data.type==="property"){const M=(K=e.data.config)==null?void 0:K.property;return Dl(M)}return(V=f.value.io)==null?void 0:V.input}),w=t.computed(()=>{var K,V;if(e.data.type==="property"){const M=(K=e.data.config)==null?void 0:K.property;return Rl(M)}return(V=f.value.io)==null?void 0:V.output}),b=t.computed(()=>su(e.data)),v=t.computed(()=>e.data.phase==="response"),S=t.computed(()=>e.data.phase==="request"?be.Left:be.Right),N=t.computed(()=>e.data.phase==="request"?be.Right:be.Left),I=t.computed(()=>b.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),O=t.computed(()=>b.value?bk:wk),F=t.computed(()=>{const K=new Map,V=r(e.data.id);for(const M of V){const D=a(M.source);if(!D)continue;const L=D.type==="vault",j=D.phase!==e.data.phase;if(!L&&!j)continue;let Z;if(M.sourceField){const W=D.fields.output.find(ne=>ne.id===M.sourceField);Z=W==null?void 0:W.name}if(M.targetField){const W=e.data.fields.input.find(ne=>ne.id===M.targetField);if(!W)continue;K.set(M.targetField,{fieldId:M.targetField,edgeId:M.id,field:W,sourceNode:D,sourceFieldName:Z})}else K.set("input",{fieldId:"input",edgeId:M.id,field:null,sourceNode:D,sourceFieldName:Z})}return K}),H=t.computed(()=>{const K=new Map,V=i(e.data.id);for(const M of V){const D=a(M.target);if(!D||!(D.phase!==e.data.phase))continue;let j;if(M.targetField){const ne=D.fields.input.find(ie=>ie.id===M.targetField);j=ne==null?void 0:ne.name}const Z=M.sourceField||"output";if(!K.has(Z)){const ne=M.sourceField&&e.data.fields.output.find(ie=>ie.id===M.sourceField)||null;K.set(Z,{fieldId:Z,edgeIds:[],field:ne,targetNodes:[],targetFieldNames:[]})}const W=K.get(Z);W.edgeIds.push(M.id),W.targetNodes.push(D),W.targetFieldNames.push(j)}return K});function q(K){return F.value.get(K)}function E(K){return H.value.get(K)}function te(K){!o||o.readonly||K==="input"&&!m.value||K==="output"&&!h.value||l(e.data.id,K)}async function P(){if(!o||o.readonly)return;const K=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(K),o.scrollRightToReveal(K),d.value=!0}t.watch(m,K=>{K||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(h,K=>{K||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(K,V)=>{ko(K,V)||l(e.data.id,"input",K.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(K,V)=>{ko(K,V)||l(e.data.id,"output",K.length>0,!0,"*")},{deep:!0});const G=t.useTemplateRef("menu");function R(){var K;(K=G.value)==null||K.closeDropdown()}return(K,V)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["flow-node",{reversed:v.value,implicit:b.value,readonly:K.readonly}]),onMousedown:R},[t.createElementVNode("div",BB,[b.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(xe.KTooltip),{key:0,class:"badge",placement:"top",text:K.data.type},{default:t.withCtx(()=>[t.createVNode(mm,{"icon-only":"",size:"small",type:K.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",VB,t.toDisplayString(I.value),1),K.error?(t.openBlock(),t.createBlock(t.unref(Ce.WarningIcon),{key:1,class:"error-icon",color:t.unref(zc),size:16},null,8,["color"])):t.createCommentVNode("",!0),b.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(xe.KDropdown),{key:2,ref:"menu",class:"menu",disabled:K.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:V[1]||(V[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(xe.KDropdownItem),{onClick:P},{default:t.withCtx(()=>[t.createVNode(Ri,{keys:t.unref(Ur).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),t.createVNode(t.unref(xe.KDropdownItem),{danger:"",onClick:V[0]||(V[0]=M=>t.unref(c)(K.data.id))},{default:t.withCtx(()=>[t.createVNode(Ri,{keys:t.unref(Ur).delete,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.delete")},null,8,["keys","label"])]),_:1})]),default:t.withCtx(()=>[t.createVNode(t.unref(xe.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.MoreIcon),{color:t.unref(Gc)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:v.value}])},[y.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":u.value}])},[t.createElementVNode("div",RB,[t.createVNode(t.unref(rn),{id:"input",position:S.value,type:"target"},null,8,["position"]),q("input")?(t.openBlock(),t.createBlock(Di,{key:0,"edge-id":q("input").edgeId,mode:"input",reversed:v.value,"source-field-name":q("input").sourceFieldName,"source-node":q("input").sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",DB,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:m.value}]),onClick:V[2]||(V[2]=t.withModifiers(M=>te("input"),["stop"]))},[V[4]||(V[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),u.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[_.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ce.UnfoldMoreIcon),{key:0,size:t.unref(xo)},null,8,["size"])),_.value?(t.openBlock(),t.createBlock(t.unref(Ce.UnfoldLessIcon),{key:1,color:m.value?void 0:t.unref(Hc),size:t.unref(xo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),u.value&&_.value?(t.openBlock(),t.createBlock(Vi,{key:0,color:O.value,position:S.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),u.value&&_.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(K.data.fields.input,(M,D)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${M.id}`,class:"handle indented"},[t.createVNode(t.unref(rn),{id:`inputs@${M.id}`,position:S.value,type:"target"},null,8,["id","position"]),q(M.id)?(t.openBlock(),t.createBlock(Di,{key:0,"edge-id":q(M.id).edgeId,mode:"input",reversed:v.value,"source-field-name":q(M.id).sourceFieldName,"source-node":q(M.id).sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",MB,[t.createElementVNode("div",FB,t.toDisplayString(M.name),1),t.createVNode(Vi,{color:O.value,position:S.value,type:D<K.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),w.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":p.value}])},[t.createElementVNode("div",LB,[t.createElementVNode("div",UB,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:h.value}]),onClick:V[3]||(V[3]=t.withModifiers(M=>te("output"),["stop"]))},[V[5]||(V[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[g.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Ce.UnfoldMoreIcon),{key:0,size:t.unref(xo)},null,8,["size"])),g.value?(t.openBlock(),t.createBlock(t.unref(Ce.UnfoldLessIcon),{key:1,color:h.value?void 0:t.unref(Hc),size:t.unref(xo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&g.value?(t.openBlock(),t.createBlock(Vi,{key:0,color:O.value,position:N.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(rn),{id:"output",position:N.value,type:"source"},null,8,["position"]),E("output")?(t.openBlock(),t.createBlock(Di,{key:0,mode:"output",reversed:v.value,"target-field-names":E("output").targetFieldNames,"target-nodes":E("output").targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]),p.value&&g.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(K.data.fields.output,(M,D)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${M.id}`,class:"handle indented"},[t.createElementVNode("div",KB,[t.createElementVNode("div",jB,t.toDisplayString(M.name),1),t.createVNode(Vi,{color:O.value,position:N.value,type:D<K.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(rn),{id:`outputs@${M.id}`,position:N.value,type:"source"},null,8,["id","position"]),E(M.id)?(t.openBlock(),t.createBlock(Di,{key:0,mode:"output",reversed:v.value,"target-field-names":E(M.id).targetFieldNames,"target-nodes":E(M.id).targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0)],2)],34))}}),[["__scopeId","data-v-76f57a4d"]]),qB={key:0,class:"dk-flow-mask"},hm=we(t.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=Ke.useElementBounding(i),{i18n:{t:l}}=Te(),{vueFlowStore:s,editorStore:c,autoLayout:d,fitViewParams:f,fitView:u,selectNode:p,placeToRight:m,scrollRightToReveal:h}=EB({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:_,propertiesPanelOpen:g,invalidConfigNodeIds:y,selectedNode:w,duplicateNode:b}=c,{project:v,vueFlowRef:S,zoomIn:N,zoomOut:I,viewport:O,maxZoom:F,minZoom:H}=s,q=t.ref(!1);function E(){e.mode==="edit"&&(g.value=!0)}function te(V){e.mode!=="edit"||q.value||V.preventDefault()}function P(V){var ye,Q;if(e.mode!=="edit"||q.value)return;const M=(ye=V.dataTransfer)==null?void 0:ye.getData($o);if(!M)return;V.preventDefault();const D=JSON.parse(M);if(D.action!=="create-node")return;const{top:L=0,left:j=0}=((Q=S.value)==null?void 0:Q.getBoundingClientRect())||{},Z=v({x:V.clientX-j,y:V.clientY-L}),{type:W,anchor:ne}=D.data,ie={type:W,phase:e.phase,position:{x:Z.x-ne.offsetX,y:Z.y-ne.offsetY}},de=_(ie);de&&(p(de),g.value=!0)}function G(){d(),t.nextTick(()=>u())}const R=t.computed(()=>{if(e.mode==="preview")return[];const V=[{name:"zoom_in",icon:Ce.AddIcon,action:N,disabled:O.value.zoom>=F.value},{name:"zoom_out",icon:Ce.RemoveIcon,action:I,disabled:O.value.zoom<=H.value},{name:"fit_view",icon:Ce.FullscreenIcon,action:u}];return e.mode==="edit"&&V.push({name:"auto_layout",icon:Ce.AutoLayoutIcon,action:G}),V});if(e.phase==="response"&&e.mode==="edit"){Ke.useEventListener("dragstart",M=>{var j;const D=(j=M.dataTransfer)==null?void 0:j.types.find(Z=>Z.startsWith(`${$o}/`));if(!D)return;D.replace(`${$o}/`,"")==="call"&&(q.value=!0)});const{start:V}=Ke.useTimeoutFn(()=>{q.value=!1},80);Ke.useEventListener("dragover",()=>{V()}),Ke.useEventListener("dragend",()=>{q.value=!1})}async function K(){const V=w.value;if(e.mode!=="edit"||!V||V.phase!==e.phase)return;const M=b(V.id,m(V.id));M&&(await p(M),g.value=!0,h(M))}return gp({enabled:t.computed(()=>!!w.value&&e.mode==="edit"&&w.value.phase===e.phase),duplicate:K}),n({autoLayout:d,fitView:u}),(V,M)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(up),{id:V.flowId,class:t.normalizeClass(["flow",{readonly:V.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":V.mode==="edit","max-zoom":t.unref(fP),"min-zoom":t.unref(pP),"multi-selection-key-code":null,"nodes-connectable":V.mode==="edit","nodes-draggable":V.mode==="edit","pan-on-drag":V.mode==="preview"?!1:void 0,"pan-on-scroll":V.mode!=="edit"?!1:void 0,"zoom-on-double-click":V.mode!=="edit"?!1:void 0,"zoom-on-pinch":V.mode!=="edit"?!1:void 0,"zoom-on-scroll":V.mode!=="edit"?!1:void 0,onDragover:te,onDrop:P,onNodeClick:E,onNodesChange:M[0]||(M[0]=D=>r("nodes-change")),onNodesInitialized:M[1]||(M[1]=D=>r("initialized"))},{"node-flow":t.withCtx(D=>[t.createVNode(gm,{data:D.data,error:t.unref(y).has(D.data.id),readonly:V.mode!=="edit"},null,8,["data","error","readonly"])]),default:t.withCtx(()=>[t.createVNode(t.unref(BI)),t.createVNode(t.unref(aP),{"fit-view-params":t.unref(f),position:"bottom-left","show-fit-view":!1,"show-interactive":!1,"show-zoom":!1},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(R.value,D=>(t.openBlock(),t.createBlock(t.unref(xe.KTooltip),{key:D.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${D.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(Qo),{disabled:D.disabled,onClick:t.withModifiers(D.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(D.icon),{size:18}))]),_:2},1032,["disabled","onClick"])]),_:2},1032,["text"]))),128))]),_:1},8,["fit-view-params"])]),_:1},8,["id","class","elements-selectable","max-zoom","min-zoom","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"]),q.value?(t.openBlock(),t.createElementBlock("div",qB,t.toDisplayString(t.unref(l)("plugins.free-form.datakit.flow_editor.phase_mask_help")),1)):t.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-2820a293"]]),Jl=we(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const n=t.ref(!1),o=t.ref(!1),{state:r,clearPendingLayout:i,setPendingFitView:a,commit:l,clear:s}=nt(),c=t.useId(),d=`${c}-request`,f=`${c}-response`,u=$e(d),p=$e(f);function m(j,Z){const{onPaneClick:W,onNodesChange:ne,onEdgesChange:ie,getSelectedNodes:de,getSelectedEdges:ye}=j,{removeSelectedElements:Q}=Z;function oe(le){if(!le){Q();return}le.some(ue=>ue.type==="select")&&de.value.length+ye.value.length>0&&Q()}ne(oe),ie(oe),W(()=>oe())}m(u,p),m(p,u);const h=t.useTemplateRef("flowPanels"),_=t.useTemplateRef("requestLabel"),g=t.useTemplateRef("requestCanvasContainer"),y=t.useTemplateRef("requestFlow"),w=t.useTemplateRef("resizeHandle"),b=t.useTemplateRef("responseLabel"),v=t.useTemplateRef("responseCanvasContainer"),S=t.useTemplateRef("responseFlow"),N=Ke.useElementBounding(h),I=Ke.useElementBounding(_),O=Ke.useElementBounding(g),F=Ke.useElementBounding(w),H=Ke.useElementBounding(b),q=Ke.useElementBounding(v),E=t.computed(()=>Math.max(30,N.height.value*.03)),te=t.computed(()=>O.height.value<E.value),P=t.computed(()=>q.height.value<E.value),G=t.ref("50%"),R=t.ref("50%"),K=()=>{e.resizable&&(te.value?(G.value="50%",R.value="50%"):(G.value="0",R.value="100%"))},V=()=>{e.resizable&&(P.value?(G.value="50%",R.value="50%"):(G.value="100%",R.value="0"))},M=t.computed(()=>N.height.value-I.height.value-F.height.value-H.height.value),{isDragging:D}=Ke.useDraggable(w,{onMove(j){if(!e.resizable)return;const Z=Math.max(0,j.y-O.top.value),W=Math.min(1,Math.max(0,Z/M.value));G.value=`${W*100}%`,R.value=`${(1-W)*100}%`},onEnd(){e.resizable&&(O.height.value<E.value?(G.value="0",R.value="100%"):q.height.value<E.value&&(G.value="100%",R.value="0"))}});function L(){t.nextTick(()=>{var j,Z;(j=y.value)==null||j.fitView(),(Z=S.value)==null||Z.fitView()})}return t.watch([n,o,()=>r.value.pendingLayout,()=>r.value.pendingFitView],([j,Z,W,ne])=>{e.inactive||!j||!Z||!W&&!ne||(W&&i(),ne&&a(!1),setTimeout(()=>{var ie,de;W&&((ie=y.value)==null||ie.autoLayout(!1),(de=S.value)==null||de.autoLayout(!1),l("*"),W==="clearHistory"&&s()),ne&&L()},0))}),(j,Z)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:h,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:_,class:t.normalizeClass(["label request",{resizable:j.resizable}]),onClick:K},[j.resizable?(t.openBlock(),t.createBlock(t.unref(Ce.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:te.value}])},null,8,["class"])):t.createCommentVNode("",!0),Z[4]||(Z[4]=t.createElementVNode("div",{class:"label-content"}," Request ",-1))],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:g,class:t.normalizeClass(["canvas",{dragging:t.unref(D)}]),style:t.normalizeStyle({flexBasis:G.value})},[t.createVNode(hm,{ref_key:"requestFlow",ref:y,"flow-id":d,mode:j.mode,phase:"request",onInitialized:Z[0]||(Z[0]=W=>n.value=!0),onNodesChange:Z[1]||(Z[1]=W=>n.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:t.normalizeClass(["resize-handle",{resizable:j.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:b,class:t.normalizeClass(["label response",{dragging:t.unref(D),resizable:j.resizable}]),onClick:V},[j.resizable?(t.openBlock(),t.createBlock(t.unref(Ce.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:P.value}])},null,8,["class"])):t.createCommentVNode("",!0),Z[5]||(Z[5]=t.createElementVNode("div",{class:"label-content"}," Response ",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:v,class:t.normalizeClass(["canvas response",{dragging:t.unref(D)}]),style:t.normalizeStyle({flexBasis:R.value})},[t.createVNode(hm,{ref_key:"responseFlow",ref:S,"flow-id":f,mode:j.mode,phase:"response",onInitialized:Z[2]||(Z[2]=W=>o.value=!0),onNodesChange:Z[3]||(Z[3]=W=>o.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-57dcdcfa"]]),GB={class:"dk-confirm-modal-body"},zB={class:"dk-confirm-modal-connections"},HB=we(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=Te(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let d=null;function f(){a.value=!1,i("cancel"),d==null||d(!1)}function u(){a.value=!1,i("confirm"),d==null||d(!0)}async function p(m,h,_){return l.value=m,s.value=h??[],c.value=_??[],a.value=!0,await new Promise(g=>{d=g})}return n({open:p}),(m,h)=>{const _=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(_,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title: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",GB,[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",zB,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([g,y])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${y}`},[t.createVNode(t.unref(Ce.AddIcon),{color:t.unref(kk)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),h[0]||(h[0]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(y),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([g,y])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${y}`},[t.createVNode(t.unref(Ce.RemoveIcon),{color:t.unref(zc)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),h[1]||(h[1]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(y),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-9874f282"]]),YB={class:"dk-editor-nav"},WB={class:"top"},XB={class:"bottom"},ZB=we(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=je.createI18n("en-us",We),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Ce.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=Xa(),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",YB,[t.createElementVNode("div",WB,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:u,to:p,icon:m,onClick:h})=>t.createVNode(t.unref(xe.KTooltip),{key:u,"kpop-attributes":{offset:"10px"},label:u,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(xe.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(Aa)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",XB,[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(xe.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(xe.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(Ce.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(Aa)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(Ce.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(Aa)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),JB={class:"dk-editor-main"},QB={class:"header"},eV={class:"actions"},tV={class:"settings"},nV={ref:"canvasContainer",class:"body"},oV=we(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=je.createI18n("en-us",We),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=nt();function c(u){const p=ja.load(u,{schema:Lr,json:!0});if(typeof p!="object"||p===null)return;const m=p,h={config:{...m,nodes:m.nodes??[]}};s(h,!0)}function d(){o.value=!1}gp({enabled:o,undo:r,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(u,p)=>(t.openBlock(),t.createElementBlock("div",JB,[t.createElementVNode("header",QB,[t.createElementVNode("div",eV,[t.createVNode(t.unref(xe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Ri,{keys:t.unref(Ur).undo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(xe.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(xe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Ri,{keys:t.unref(Ur).redo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(xe.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",tV,[t.createVNode(Na,{label:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:f},name:"config.debug"},null,8,["label","label-attributes"])]),p[1]||(p[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(xe.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples")},{items:t.withCtx(()=>[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(qa,(m,h)=>t.createVNode(t.unref(xe.KDropdownItem),{key:h,onClick:_=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${h}`)),1)]),_:2},1032,["onClick"])),64))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(xe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.view_docs"))+" ",1),t.createVNode(t.unref(Ce.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(xe.KButton),{onClick:d},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",nV,[t.createVNode(Jl,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-32006420"]]),rV=["draggable"],iV={class:"icon"},aV={class:"content"},lV={class:"title"},sV={class:"description"},cV=we(t.defineComponent({__name:"NodePanelItem",props:{type:{}},emits:["dragstart"],setup(e,{emit:n}){const o=n,r=e.type==="cache"||e.type==="branch",{summary:i,icon:a}=Bo[e.type];function l(s){o("dragstart",s,e.type)}return(s,c)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${s.type}`]:!0,unsupported:t.unref(r)}]),draggable:!t.unref(r),onDragstart:l},[t.createElementVNode("div",iV,[t.createVNode(t.unref(a),{size:16})]),t.createElementVNode("div",aV,[t.createElementVNode("div",lV,t.toDisplayString(s.type),1),t.createElementVNode("div",sV,t.toDisplayString(t.unref(i)),1)])],42,rV))}}),[["__scopeId","data-v-d3ce7350"]]),dV={class:"dk-node-panel"},uV={key:0,class:"title"},fV={class:"node-list"},pV={"aria-hidden":"true",class:"preview",inert:""},ym=we(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=je.createI18n("en-us",We),{createNode:o}=nt(),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 O,F,H;const d=s.currentTarget,{left:f,top:u,width:p,height:m}=d.getBoundingClientRect(),h=s.clientX-f,_=s.clientY-u;i.value=o({type:c}),await t.nextTick();const g=document.querySelector(`#${r}`)||d,y=g.cloneNode(!0);y.classList.add("dk-drag-snapshot");const{offsetWidth:w,offsetHeight:b}=g;Object.assign(y.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${b}px`}),document.body.appendChild(y);const v=h/p,S=_/m,N={ratioX:v,ratioY:S,offsetX:w*v,offsetY:b*S},I={action:"create-node",data:{type:c,anchor:N}};(O=s.dataTransfer)==null||O.setData($o,JSON.stringify(I)),(F=s.dataTransfer)==null||F.setData(`${$o}/${c}`,c),(H=s.dataTransfer)==null||H.setDragImage(y,N.offsetX,N.offsetY),requestAnimationFrame(()=>{y.remove(),i.value=void 0})};return(s,c)=>{const d=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",dV,[s.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",uV,[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",fV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(Bo)),f=>(t.openBlock(),t.createBlock(cV,{key:f,type:f,onDragstart:l},null,8,["type"]))),128))]),t.createElementVNode("div",pV,[t.createVNode(t.unref(up),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(gm,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-51ccb23d"]]);function mV(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=nt(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var h;return((h=l.value.get("vault"))==null?void 0:h.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(h,_)=>{e(s.id,"output",h,!1);const g={...s.config,[h]:_};r(s.id,g)},removeVault:h=>{const _=Zt(s,"output",h);if(!_)return;const g=s.fields.output.length===1;o(s.id,_.id,!0,!1);const y=Co(s.config,h);r(s.id,y,!g),g&&a(s.id)},updateVault:(h,_,g=!0)=>{const y={...s.config,[h]:_};r(s.id,y,g)},renameVault:(h,_,g=!0)=>{var v;const y=Zt(s,"output",h);if(!y)return;i(s.id,y.id,_,!1);const w=((v=s.config)==null?void 0:v[h])??"",b={...Co(s.config,h),[_]:w};r(s.id,b,g)}}}const gV=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ve.useI18n(),i=t.inject(Pe.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),d=()=>{const m=a.value.trim(),h=e.validateName(m,e.isEditing);return l.value=h||"",h===void 0},f=()=>{l.value="",d()},u=m=>{d()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,h)=>{const _=t.resolveComponent("KInput"),g=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(co.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:m.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:u},{"form-prefix":t.withCtx(()=>[t.createVNode(_,{"model-value":a.value,"onUpdate:modelValue":[h[0]||(h[0]=y=>a.value=y),f],"data-testid":"vault-secret-picker-secret-name-input",error:!!l.value,"error-message":l.value,label:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.placeholder"),required:""},null,8,["model-value","error","error-message","label","label-attributes","placeholder"])]),_:1},8,["additional-disabled","config","proceed-button-text","setup","title"])):(t.openBlock(),t.createBlock(g,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),hV={class:"dk-vault-panel"},yV={class:"title"},_V={class:"vault-list"},bV={key:0,class:"vault-list-item"},wV={class:"vault-list-item-key"},kV={class:"vault-list-item-key-text"},CV=we(t.defineComponent({__name:"VaultField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=Tr(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:d}}=Ve.useI18n(),f=t.computed(()=>new Set(i.value.map(y=>y.key))),u=()=>{const y=a();c.value=y,s.value=y},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=y=>{if(!s.value)throw new Error("no selected entry");const w=s.value.key,b=w!==y.secretName,v=s.value.value!==y.secretRef,S=b||v;s.value.value=y.secretRef,s.value.key=y.secretName,c.value?r("add",y.secretName,y.secretRef):S&&r("update",y.secretName,y.secretRef,b?w:void 0),c.value=null,p()},h=y=>{s.value=y},_=y=>{l(y.id),r("remove",y.key)},g=(y,w)=>{var b;if(!y)return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(y)&&!(w&&y===((b=s.value)==null?void 0:b.key)))return d("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(y,w)=>{var N,I;const b=t.resolveComponent("KButton"),v=t.resolveComponent("KDropdownItem"),S=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",hV,[t.createElementVNode("h3",yV,t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(b,{appearance:"tertiary",class:"add-button",size:"small",onClick:u},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",_V,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),O=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:O.id},[O.key?(t.openBlock(),t.createElementBlock("div",bV,[t.createElementVNode("div",wV,[t.createVNode(t.unref(Ce.KeyIcon),{color:t.unref(Yc),size:16},null,8,["color"]),t.createElementVNode("div",kV,t.toDisplayString(O.key),1)]),t.createVNode(S,null,{items:t.withCtx(()=>[t.createVNode(v,{onClick:F=>h(O)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:2},1032,["onClick"]),t.createVNode(v,{danger:"",onClick:F=>_(O)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:2},1032,["onClick"])]),default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.MoreIcon),{color:t.unref(Gc)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(gV,{"is-editing":!!s.value&&!c.value,"secret-name":(N=s.value)==null?void 0:N.key,"secret-ref":(I=s.value)==null?void 0:I.value,"validate-name":g,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-4df4e490"]]),EV={class:"dk-resources-panel"},NV=we(t.defineComponent({__name:"ResourcesPanel",setup(e){const n={type:"record",fields:[{vault:{type:"map",keys:{type:"string"},values:{type:"string"}}}]},{addVault:o,removeVault:r,updateVault:i,renameVault:a,formData:l}=mV();function s(c,d,f){f&&f!==c&&a(f,c,!1),i(c,d)}return(c,d)=>(t.openBlock(),t.createElementBlock("div",EV,[t.createVNode(dt,{data:t.unref(l),schema:n},{default:t.withCtx(()=>[t.createVNode(CV,{name:"vault",onAdd:t.unref(o),onRemove:t.unref(r),onUpdate:s},null,8,["onAdd","onRemove"])]),_:1},8,["data"])]))}}),[["__scopeId","data-v-20ce9c3d"]]),SV={class:"header"},vV={class:"title"},xV={class:"body"},AV={class:"panel"},IV=we(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=je.createI18n("en-us",We),{sidePanelExpanded:o}=Xa(),{propertiesPanelOpen:r,selectedNode:i}=nt(),a=t.inject(Eo.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,d=>{d||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(d,f)=>{const u=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",SV,[t.createElementVNode("h2",vV,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",xV,[t.createElementVNode("div",AV,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(u,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=p=>l.value=p),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),l.value==="nodes"?(t.openBlock(),t.createBlock(ym,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(NV,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(ym,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),PV=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(xt,{items:t.unref(ya)([...t.unref(au)]),name:n.name},null,8,["items","name"]))}}),TV=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Fe(),{i18n:o}=Te(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(it,{"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(xt,{key:l,clearable:"","enable-filtering":"",items:i.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},null,8,["items","name","placeholder","onChange"]))),128))]),_:1},8,["name"]))}}),OV=["data-testid"],$V={class:"dk-inputs-map-field-entry-body"},BV={class:"dk-inputs-map-field-entry-content"},VV=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}=Tr(o,r),{i18n:{t:c}}=Te(),d=t.useTemplateRef("root"),f=t.ref(null),u=t.ref({});let p;async function m(S,N="key"){var I;d.value&&(await t.nextTick(),(I=d.value.querySelector(`[data-${N}-input="${S}"]`))==null||I.focus())}function h(){const{id:S}=a(),N=i.value.findIndex(({key:I})=>!I);m(N===-1?i.value.length-1:N),f.value=S}function _(S){l(S.id),S.id===f.value&&(f.value=null),S.key.trim()!==""&&r("remove:field",S.key)}function g(S){p=S.key}function y(S){if(w(S)){S.key=p,delete u.value[S.id];return}if(S.id===f.value){if(S.key.trim()==="")return;r("add:field",S.key,S.value),f.value=null}else r("rename:field",p,S.key);p=S.key}function w(S){delete u.value[S.id];const N=o.fieldNameValidator("input",p,S.key);if(N)return u.value[S.id]=N,N}function b(S){w(S)}function v(S,N){S.id!==f.value&&r("change:inputs",S.key,N)}return t.watch(()=>i.value,S=>{f.value&&(S.find(({id:N})=>N===f.value)||(f.value=null))}),(S,N)=>{const I=t.resolveComponent("KAlert"),O=t.resolveComponent("KLabel"),F=t.resolveComponent("KInput"),H=t.resolveComponent("KSelect"),q=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(I,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:d,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(E,te)=>(t.openBlock(),t.createElementBlock("div",{key:E.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${te}`},[t.createVNode(O,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${te}`},{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",$V,[t.createElementVNode("div",BV,[t.createVNode(F,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${te}`,modelValue:E.key,"onUpdate:modelValue":[P=>E.key=P,P=>w(E)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":te,"data-testid":`ff-key-${t.unref(s).path.value}.${te}`,error:!!u.value[E.id],"error-message":u.value[E.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:P=>b(E),onChange:P=>y(E),onFocus:P=>g(E)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(H,{modelValue:E.value,"onUpdate:modelValue":P=>E.value=P,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${te}`,"enable-filtering":"",items:S.items,label:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:P=>v(E,(P==null?void 0:P.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(q,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${te}`,icon:"",onClick:P=>_(E)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,OV))),128)),t.createVNode(q,{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(Ce.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-b2f89c26"]]),RV={class:"dk-inputs-field-or"},io=we(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}=Fe(),{i18n:{t:i}}=Te(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?TV:VV:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function d(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function u(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(xe.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(r)("input")?(t.openBlock(),t.createBlock(xt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:p.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},null,8,["items","label","placeholder"])):t.createCommentVNode("",!0),t.createElementVNode("div",RV,[t.createElementVNode("span",null,t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)]),t.createVNode(t.unref(xe.KLabel),{class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1}),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))}}),[["__scopeId","data-v-27c48bc3"]]),DV={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"},MV={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 FV(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function ao(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function lo(e){const{i18n:{t:n}}=Te(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function _m(e,n){const{i18n:{t:o}}=Te();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 LV(e=0,n=1/0,o){const{i18n:{t:r}}=Te();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function bm(e){const{i18n:{t:n}}=Te();return function(r){if(!FV(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 wm(e,n){const{i18n:{t:o}}=Te();return function(i){if(i==null)return;const a=bm(n)(i);if(a)return a;const l=Number(i);switch(e){case"float":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",n):"Invalid float format";return Number.isFinite(l)?void 0:s()}case"integer":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",n):"Invalid integer format";return Number.isInteger(l)?void 0:s()}default:return}}}function km(e=-1/0,n=1/0,o){const{i18n:{t:r}}=Te();return function(a){if(a==null)return;const l=bm(o)(a);if(l)return l;const s=Number(a);if(s<e||s>n)return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:e,max:n}):`Value must be between ${e} and ${n}`}}function UV(e,n){const{state:o}=nt(),{i18n:{t:r}}=Te();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 KV(e,n,o){const{i18n:{t:r}}=Te();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 jV(){const{i18n:{t:e}}=Te();return function(o){if(Ha(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Cm(e){const{i18n:{t:n}}=Te(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return ao(lo(o),_m("identifier",o),jV(),UV(e,o))}function qV(e){const{i18n:{t:n}}=Te(),{getNodeById:o}=nt();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 ao(lo(s),KV(i,o(e),l))(a)}}function GV(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 Mi(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=nt(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>GV(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function d(){const u=o(),p=l.value.validate(u),m={};for(const h in a.value)m[h]=p[h];return m}function f(u,p){return{onBlur:()=>{const m=o(),h=s.value[u];h&&h.handleBlur(m[u])},onUpdate:()=>{const m=o(),h=s.value[u];h&&h.handleChange(m[u]),p==null||p()},error:t.computed(()=>{const m=s.value[u];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[u];return m?m.error.value??"":""})}}return t.onMounted(()=>{i.value?i.value=!1:d()}),t.onBeforeUnmount(async()=>{try{const u=d(),p=Object.values(u).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:d,createFieldHandler:f}}function Pn(e,n){const o=t.inject(Eo.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:d,disconnectEdge:f,connectEdge:u,invalidConfigNodeIds:p,commit:m,revert:h}=nt(),{i18n:{t:_}}=Te(),g=wB();let y=!1;t.watch(r,async()=>{y=!0,await t.nextTick(),y=!1},{immediate:!0,deep:!0});const w=t.computed(()=>{const D=a(e);if(!D)throw new Error("Node not existed");return D}),b=t.computed(()=>{const L=r.value.edges.filter(j=>j.target===e).reduce((j,Z)=>{var ye,Q;const W=a(Z.source),ne=(ye=Jt(W,"output",Z.sourceField))==null?void 0:ye.id,ie=(Q=Jt(w.value,"input",Z.targetField))==null?void 0:Q.name,de=W.id+(ne?`.${ne}`:"");return ie?j.inputs={...j.inputs,[ie]:de}:j.input=de,j},{});return w.value.fields.input.forEach(j=>{L.inputs||(L.inputs={}),L.inputs[j.name]||(L.inputs[j.name]=null)}),{...w.value.config,...L,name:w.value.name}}),v=D=>{i(e,D??"",!0,`${e}:rename`)},S=(D,L=!0)=>{if(y)return;if(!n)throw new Error("getFormInnerData is not defined");const j=Co(n(),["name","input","inputs"]),Z=D?`update:${e}:${D}`:void 0;d(e,j,L,Z)},N=(D,L)=>{const j=Zt(w.value,D,L);if(!j)throw new Error(`Field with name "${L}" not found in node "${w.value.name}"`);return j},I=(D,L,j)=>{const Z=!!j;l(e,D,L,!Z),Z&&E(L,j)},O=(D,L,j)=>{if(y)return;const Z=N(D,L).id;s(e,Z,j)},F=(D,L)=>{const j=N(D,L).id;c(e,j)},H=t.computed(()=>r.value.edges.filter(D=>D.target===e&&!D.targetField)[0]),q=t.computed(()=>r.value.edges.filter(D=>D.target===e&&D.targetField)),E=async(D,L)=>{if(y)return;const j=L==null,Z=N("input",D).id;if(j){const ue=q.value.find(ce=>ce.targetField===Z);ue&&f(ue.id);return}const{nodeId:W,fieldId:ne}=cu(L),ie=N("input",D).id,de=[];H.value&&(de.push(rr(H.value,a)),f(H.value.id,!1));const ye=q.value.find(ue=>ue.targetField===Z);ye&&(de.push(rr(ye,a)),f(ye.id,!1)),u({source:W,sourceField:ne,target:e,targetField:ie},!1);const Q=Xl(W,ne,e,ie,a),oe=de[0]&&Q?de[0][1]===Q[1]:!1;if(m(),oe||de.length===0)return;await g(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[Q],de)||h()},te=async D=>{if(y)return;if(D==null){H.value&&f(H.value.id);return}const j=[];for(const de of q.value)j.push(rr(de,a)),f(de.id,!1);H.value&&f(H.value.id,!1);const{nodeId:Z,fieldId:W}=cu(D);u({source:Z,sourceField:W,target:e,targetField:void 0},!1);const ne=Xl(Z,W,e,void 0,a);if(m(),j.length===0)return;await g(_("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[ne],j)||h()},P=D=>{const L=[...r.value.edges,{source:D,target:e}];return Wa(jr(L))},G=t.computed(()=>{var L,j;const D=[];for(const Z of r.value.nodes)if(!(!o&&Z.type==="vault"||!((L=Ro(Z.type).io)!=null&&L.output))&&Z.fields.output&&Z.id!==e&&!(Z.type==="property"&&!Rl((j=Z.config)==null?void 0:j.property))&&!P(Z.id)&&!(w.value.phase==="request"&&Z.phase==="response")&&!(Z.type==="vault"&&Z.fields.output.length===0)){D.push({value:Z.id,label:Z.name});for(const ne of Z.fields.output)D.push({value:`${Z.id}.${ne.id}`,label:`${Z.name}.${ne.name}`})}return D}),R=t.computed(()=>w.value.fields.input.map(D=>D.name)||[]);function K(D){p.value.delete(e),D||p.value.add(e)}const V=qV(e);function M(D,L,j){const Z=a(e);if(!Z)throw new Error("Node not found when validating field name");const W=Zt(Z,D,L);return V(D,j,W==null?void 0:W.id)}return{formData:b,inputOptions:G,inputEdge:H,inputsEdges:q,inputsFieldNames:R,currentNode:w,setName:v,setConfig:S,addField:I,renameFieldByName:O,removeFieldByName:F,setInputs:E,setInput:te,nameValidator:Cm(e),fieldNameValidator:M,toggleNodeValid:K}}function Tn(e){const{getSchema:n}=Fe();return t.computed(()=>{if(wt(e))switch(e){case"response":return MV;case"service_request":return DV}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 ir=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Te(),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"])}}}),zV=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=Te(),o=t.useTemplateRef("form"),r=Tn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:d,inputsFieldNames:f,nameValidator:u,toggleNodeValid:p,fieldNameValidator:m}=Pn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:h}=Mi({validationConfig:{url:ao(lo({fieldName:"URL"}),_m("url",{fieldName:"URL"})),timeout:ao(wm("integer",{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}),km(0,2147483646,{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),_=h("url",()=>l("url")),g=h("timeout",()=>l("timeout"));return(y,w)=>{const b=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(dt,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(ir,{name:t.unref(i).name,validate:t.unref(u),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(b,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Ln,{error:t.unref(_).error.value,"error-message":t.unref(_).errorMessage.value,name:"url",onBlur:t.unref(_).onBlur,"onUpdate:modelValue":t.unref(_).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(PV,{name:"method",onUpdate:w[0]||(w[0]=v=>t.unref(l)())}),t.createVNode(Un,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,label:t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(Ln,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=v=>t.unref(l)("ssl_server_name"))}),t.createVNode(io,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(d),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),HV=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Tn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=Pn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(dt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(io,{"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"]))}}),YV=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Tn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=Pn(e.nodeId,()=>n.value.getInnerData());return(d,f)=>(t.openBlock(),t.createBlock(dt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(io,{"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"]))}}),Em={jqlang:"https://jqlang.org/manual/"},WV=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=Te(),r=t.useTemplateRef("form"),i=Tn("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:d,setInput:f,addField:u,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:h,nameValidator:_,toggleNodeValid:g,fieldNameValidator:y}=Pn(e.nodeId,()=>r.value.getInnerData());function w(O,F){u("input",O,F)}function b(O){p("input",O)}function v(O,F){m("input",O,F)}const S=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:N}=Mi({validationConfig:{jq:ao(lo({fieldName:S}),LV(1,10240,{fieldName:S}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:g}),I=N("jq",()=>s("jq"));return(O,F)=>{const H=t.resolveComponent("KLabel"),q=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(dt,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(ir,{name:t.unref(a).name,validate:t.unref(_),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(H,{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(Ln,{autosize:"",error:t.unref(I).error.value,"error-message":t.unref(I).errorMessage.value,label:t.unref(S),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(I).onBlur,"onUpdate:modelValue":t.unref(I).onUpdate},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(q,{"hide-icon":"",href:t.unref(Em).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Em).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(io,{"field-name-validator":t.unref(y),"field-names":t.unref(h),items:t.unref(c),"onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(d),"onRemove:field":b,"onRename:field":v},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),XV=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}=Tr(o,r,!1),{i18n:d}=Te(),f=t.useTemplateRef("root"),u=t.ref(null);let p;async function m(S,N="key"){var I;f.value&&(await t.nextTick(),(I=f.value.querySelector(`[data-${N}-input="${S}"]`))==null||I.focus())}function h(){const S=l(),N=a.value.findIndex(({key:I})=>!I);m(N===-1?a.value.length-1:N),u.value=S}function _(S){var N;S.id===((N=u.value)==null?void 0:N.id)&&(u.value=null),s(S.id),S.key.trim()!==""&&r("remove:field",S.key)}function g(S){p=S.key}function y(S){var N;if(b(S)){S.key=p,delete i.value[S.id];return}if(S.id===((N=u.value)==null?void 0:N.id)){if(S.key.trim()==="")return;u.value=null,r("add:field",S.key,S.value)}else r("rename:field",p,S.key);p=S.key}function w(S,N){var O;if(N.id===((O=u.value)==null?void 0:O.id))return;const I=S.target.value.trim();r("change:value",N.key,I)}function b(S){delete i.value[S.id];const N=o.fieldNameValidator("output",p,S.key);if(N)return i.value[S.id]=N,N}function v(S){b(S)}return t.watchEffect(()=>{u.value&&!a.value.some(S=>S.id===u.value.id)&&a.value.push(u.value)}),(S,N)=>{const I=t.resolveComponent("KAlert"),O=t.resolveComponent("KLabel"),F=t.resolveComponent("KButton"),H=t.resolveComponent("KInput"),q=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(I,{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(O,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(E,te)=>(t.openBlock(),t.createBlock(q,{key:E.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${te}`},{actions:t.withCtx(()=>[t.createVNode(F,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${te}`,icon:"",onClick:P=>_(E)},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(H,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${te}`,modelValue:E.key,"onUpdate:modelValue":[P=>E.key=P,P=>b(E)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":te,"data-testid":`ff-key-${t.unref(c).path.value}.${te}`,error:!!i.value[E.id],"error-message":i.value[E.id],label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:P=>v(E),onChange:P=>y(E),onFocus:P=>g(E)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(H,{modelValue:E.value,"onUpdate:modelValue":P=>E.value=P,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${te}`,label:t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:P=>w(P,E)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(F,{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(Ce.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(d).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-5e17f8cb"]]);function ZV(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 Fi(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 JV(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 QV=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=nt(),{fieldNameValidator:c}=Pn(e.nodeId),d=Tn("static"),f=Cm(e.nodeId),u=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var b;return((b=u.value)==null?void 0:b.fields.output.map(v=>v.name))||[]});function m(b){if(!u.value)throw new Error("No current node");n(u.value.id,b??"")}const h=t.computed(()=>{var F;if(!u.value)return{};const b=((F=u.value.config)==null?void 0:F.values)??{},v={},S=o(u.value.id).map(H=>H.sourceField).filter(Boolean).map(H=>Jt(u.value,"output",H)).map(H=>H==null?void 0:H.name).filter(Boolean),N=u.value.fields.output.map(H=>H.name),I=Object.keys(b);return new Set([...I,...S,...N]).forEach(H=>{if(H in b){v[H]=b[H];return}v[H]=""}),{name:u.value.name,values:ZV(v)}});function _(b,v){if(!u.value)throw new Error("No selected node");const S=v!==void 0;if(r(e.nodeId,"output",b,!S),S){const N={values:Fi({...h.value.values,[b]:v})};l(e.nodeId,N)}}function g(b,v){if(!u.value)throw new Error("No selected node");const S=Zt(u.value,"output",b);if(!S)throw new Error("No field found to rename");const N={values:Fi(JV(h.value.values??{},b,v))};l(e.nodeId,N,!1),i(e.nodeId,S.id,v)}function y(b){var N;if(!u.value)throw new Error("No selected node");const v=Zt(u.value,"output",b);if(!v)throw new Error("No field found to delete");a((N=u.value)==null?void 0:N.id,v.id,!0,!1);const S={values:Fi({...h.value.values})};delete S.values[b],l(e.nodeId,S)}function w(b,v){if(!u.value)throw new Error("No selected node");const S={...h.value.values};S[b]=v;const N={values:Fi(S)};l(e.nodeId,N)}return(b,v)=>(t.openBlock(),t.createBlock(dt,{ref:"form",data:h.value,schema:t.unref(d)},{default:t.withCtx(()=>{var S;return[t.createVNode(ir,{name:((S=u.value)==null?void 0:S.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode(XV,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":_,"onChange:value":w,"onRemove:field":y,"onRename:field":g},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),eR={class:"dk-kong-property-item"},tR={class:"property-type"},nR={class:"property-badges"},oR=we(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=Te(),r=e,i=n,{formData:a}=Fe(),l=t.ref(tr(a.property)),s=t.computed(()=>nr(a.property)),c=t.ref(Vl(a.property)),d=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(xn).map(([m])=>{var g;const h=nr(m)?(g=a.property)==null?void 0:g.startsWith(m.replace(oo,"")):a.property===m;return{label:h&&c.value?m.replace(oo,c.value):m,value:m,selected:h}}));function u(m){const h=xi.find(_=>{var g;return(g=a.property)==null?void 0:g.startsWith(_)});h&&(a.property=h+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==tr(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=tr(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=Vl(m),l.value=tr(m)}),(m,h)=>{const _=t.resolveComponent("KBadge"),g=t.resolveComponent("KSelect"),y=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",eR,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",tR,t.toDisplayString(t.unref(xn)[w.value].dataType),1)]),t.createElementVNode("div",nR,[t.unref(xn)[w.value].readable?(t.openBlock(),t.createBlock(_,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(xn)[w.value].writable?(t.openBlock(),t.createBlock(_,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(y,{key:0,"model-value":c.value,"onUpdate:modelValue":[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"]]),rR=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=nt(),a=Tn("property"),{formData:l,setName:s,setConfig:c,inputOptions:d,setInputs:f,setInput:u,inputsFieldNames:p,nameValidator:m,toggleNodeValid:h,fieldNameValidator:_}=Pn(e.nodeId,()=>n.value.getInnerData()),g=t.computed(()=>Dl(l.value.property));function y(b){var S;const v=(S=o.value)==null?void 0:S.id;if(!v)throw new Error("Expected selectedNode to be defined");Rl(b)||i(v,!1),Dl(b)||r(v,!1),c()}const{fields:w}=Mi({validationConfig:()=>({property:lo({fieldName:"Property"}),key:nr(l.value.property)?lo({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:Vl(l.value.property)}),toggleNodeValid:h});return(b,v)=>(t.openBlock(),t.createBlock(dt,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(ir,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(xt,{name:"content_type",onUpdate:v[0]||(v[0]=S=>t.unref(c)())}),t.createVNode(oR,{validators:t.unref(w),"onUpdate:modelValue":y,"onUpdate:propertyKey":v[1]||(v[1]=S=>t.unref(c)("property-key"))},null,8,["validators"]),g.value?(t.openBlock(),t.createBlock(io,{key:0,"field-name-validator":t.unref(_),"field-names":t.unref(p),items:t.unref(d),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),iR=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=Tn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:d,nameValidator:f,toggleNodeValid:u,fieldNameValidator:p}=Pn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:m}=Mi({validationConfig:{status:ao(wm("integer",{fieldName:"Status"}),km(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:u}),h=m("status",()=>a("status"));return(_,g)=>(t.openBlock(),t.createBlock(dt,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(ir,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Un,{error:t.unref(h).error.value,"error-message":t.unref(h).errorMessage.value,name:"status",onBlur:t.unref(h).onBlur,"onUpdate:modelValue":t.unref(h).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Na,{name:"warn_headers_sent","onUpdate:modelValue":g[0]||(g[0]=y=>t.unref(a)())}),t.createVNode(io,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),aR=["innerHTML"],lR=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${ou}px`},offsetTop:{default:`${gN}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=nt(),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 zV;case"service_request":return HV;case"response":return YV;case"jq":return WV;case"static":return QV;case"property":return rR;case"exit":return iR;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(xe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":i.maxWidth,"offset-top":i.offsetTop,visible:i.visible,"z-index":t.unref(mN),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(gt)(o.value.type)},null,8,aR)):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(mm,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),sR=we(lR,[["__scopeId","data-v-b8520278"]]),cR={class:"dk-editor-content"},dR={class:"main"},uR=we(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=nt();function r(){n.value=!1}t.watch(o,a=>{a||r()});const i=t.ref(!1);return t.onMounted(()=>{i.value=!0}),(a,l)=>{var s;return t.openBlock(),t.createElementBlock("div",cR,[t.createVNode(t.unref(IV)),t.createElementVNode("div",dR,[t.createVNode(oV)]),t.createVNode(sR,{"node-id":(s=t.unref(o))==null?void 0:s.id,visible:t.unref(n),onClose:r},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-8f04afa6"]]),fR={key:0,class:"dk-editor-modal"},pR=we(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({"5fe3dd96":`${t.unref(pN)}px`,"480b2f5d":`${t.unref(nu)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=nt();bB(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=Ke.useScrollLock(document);t.watch(n,s=>{a.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(t.openBlock(),t.createElementBlock("div",fR,[t.createVNode(ZB,{class:"nav",onBack:l}),t.createVNode(uR,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(HB,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-917708bb"]]),mR={class:"dk-flow-editor"},gR={class:"flow-panels-container"},hR={class:"overlay"},yR=we(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=je.createI18n("en-us",We),{formData:r}=Fe(),i=n;function a(c,d,f){const u={...r.config,nodes:c};f!==void 0&&(u.resources=f);const p={...r.__ui_data,nodes:d};r.config=u,r.__ui_data=p,i("change",u,p)}const{modalOpen:l,setPendingFitView:s}=yu(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),(c,d)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",mR,[t.createElementVNode("div",gR,[t.createVNode(Jl,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",hR,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:d[0]||(d[0]=u=>l.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(Ce.ExpandIcon))]),_:1})])]),t.createVNode(pR,{open:t.unref(l),"onUpdate:open":d[1]||(d[1]=u=>t.isRef(l)?l.value=u:null)},null,8,["open"])])}}}),[["__scopeId","data-v-ef02243f"]]);function _R(e,n){const o=[],r=(i,a)=>{typeof a=="string"&&o.push({nodeName:e.name,path:["nodes",n,...i],value:a})};if("input"in e&&e.input!=null&&r(["input"],e.input),"inputs"in e&&e.inputs&&typeof e.inputs=="object")for(const[i,a]of Object.entries(e.inputs))a!=null&&r(["inputs",i],a);if("output"in e&&e.output!=null&&r(["output"],e.output),"outputs"in e&&e.outputs&&typeof e.outputs=="object")for(const[i,a]of Object.entries(e.outputs))a!=null&&r(["outputs",i],a);return o}function bR(e){const n=e.path[2];return n==="output"||n==="outputs"}function wR(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function Nm(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,d)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",d,"name"]}),i.add(c)}),e.nodes.forEach((c,d)=>{const f="input"in c&&c.input!=null,u="inputs"in c&&wR(c.inputs);f&&u&&o.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["nodes",d,"inputs"]})});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,d)=>{for(const f of _R(c,d)){const u=f.value.split(".",1)[0];if(a.has(u)||o.addIssue({code:"custom",message:`Unknown node "${u}" in connection "${f.value}"`,path:f.path}),bR(f)){const p=`${f.nodeName}->${u}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${u}" and "${u}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${u}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${u}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${u}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const kR=J.z.enum(ru),CR=J.z.enum(Hn),Sm=e=>Hn.includes(e),Ql=J.z.enum(iu),vm=Ql.options;J.z.union([Ql,kR]);const ER=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,xm=J.z.string().min(1).max(255).regex(ER,"Invalid node name (snake_case / kebab-case only)").refine(e=>!Sm(e),"Name clashes with reserved implicit node").brand(),Am=J.z.union([CR,xm]),NR=J.z.string().min(1).brand(),Bt=J.z.string().refine(e=>{if(Am.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return Am.safeParse(o).success&&NR.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),Im=J.z.enum(au),ar=J.z.object({type:J.z.string(),name:xm,input:Bt,inputs:J.z.record(J.z.string(),Bt).nullish(),output:Bt,outputs:J.z.record(J.z.string(),Bt).nullish()}).loose(),SR=J.z.object({type:J.z.string(),name:J.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),vm.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${vm.join(", ")}`})}),vR=ar.extend({type:J.z.literal("call"),method:Im.nullish(),ssl_server_name:J.z.string().min(1).nullish(),timeout:J.z.number().int().min(0).max(2147483646).nullish(),url:J.z.url(),inputs:J.z.object({body:Bt,headers:Bt,query:Bt}).partial().nullish(),outputs:J.z.object({body:Bt,headers:Bt,status:Bt}).partial().nullish()}).strict(),xR=ar.extend({type:J.z.literal("exit"),status:J.z.number().int().min(200).max(599).nullish(),warn_headers_sent:J.z.boolean().nullish(),output:J.z.never().optional(),outputs:J.z.never().optional()}).strict(),AR=ar.extend({type:J.z.literal("jq"),jq:J.z.string().min(1).max(10240),outputs:J.z.never().optional()}).strict(),IR=ar.extend({type:J.z.literal("property"),content_type:J.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:J.z.string().min(1),inputs:J.z.never().optional(),outputs:J.z.never().optional()}).strict(),PR=ar.extend({type:J.z.literal("static"),values:J.z.record(J.z.string(),J.z.unknown()),input:J.z.never().optional(),inputs:J.z.never().optional()}).strict(),TR=SR.pipe(J.z.discriminatedUnion("type",[vR,xR,AR,IR,PR])),OR=J.z.record(J.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),J.z.string().min(1).max(4095)),$R=J.z.object({dictionary_name:J.z.string().default("kong_db_cache")}),BR=J.z.object({host:J.z.string().default("127.0.0.1"),port:J.z.number().int().min(0).max(65535).default(6379)}),VR=J.z.object({ip:J.z.string().default("127.0.0.1"),port:J.z.number().int().min(0).max(65535).default(6379)}),RR=J.z.object({host:J.z.string().optional().default("127.0.0.1"),port:J.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:J.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:J.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:J.z.number().int().min(0).max(2147483646).default(2e3),username:J.z.string().optional(),password:J.z.string().optional(),sentinel_username:J.z.string().optional(),sentinel_password:J.z.string().optional(),database:J.z.number().int().optional().default(0),keepalive_pool_size:J.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:J.z.number().int().min(0).max(2147483646).optional(),sentinel_master:J.z.string().optional(),sentinel_role:J.z.enum(["master","slave","any"]).optional(),sentinel_nodes:J.z.array(BR).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:J.z.array(VR).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:J.z.boolean().default(!1).optional(),ssl_verify:J.z.boolean().default(!1).optional(),server_name:J.z.string().optional(),cluster_max_redirections:J.z.number().int().default(5).optional(),connection_is_proxied:J.z.boolean().default(!1).optional(),timeout:J.z.number().int().optional(),sentinel_addresses:J.z.array(J.z.string()).min(1).optional(),cluster_addresses:J.z.array(J.z.string()).min(1).optional()}).superRefine((e,n)=>{var c;const o=e.host!==void 0&&e.host!==null,r=e.port!==void 0&&e.port!==null;(o&&!r||!o&&r)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,l=!!((c=e.sentinel_nodes)!=null&&c.length),s=[i,a,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!o&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),DR=J.z.object({strategy:J.z.enum(["memory","redis"]).optional(),memory:$R,redis:RR}),MR=J.z.object({vault:OR.nullish(),cache:DR.nullish()});J.z.array(J.z.object({id:J.z.string()})),J.z.object({nodes:J.z.array(TR).min(1,"At least one node is required"),debug:J.z.boolean().nullish(),resources:MR.nullish()}).strict().superRefine((e,n)=>{Nm(e,Hn,n)});const Pm=Ql.options,FR=J.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!Sm(e),"Node name conflicts with reserved implicit node"),Vt=J.z.string().refine(e=>{if(!e||/\s/.test(e))return!1;const n=e.indexOf(".");if(n===-1)return!0;const o=e.slice(0,n),r=e.slice(n+1);return o.length>0&&r.length>0},"Invalid connection"),lr=J.z.object({type:J.z.string(),name:FR,input:Vt.nullish(),inputs:J.z.record(J.z.string(),Vt.nullish()).nullish(),output:Vt.nullish(),outputs:J.z.record(J.z.string(),Vt.nullish()).nullish()}).loose(),LR=J.z.object({type:J.z.string(),name:J.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),Pm.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${Pm.join(", ")}`})}),UR=lr.extend({type:J.z.literal("call"),method:Im.nullish(),ssl_server_name:J.z.string().nullish(),timeout:J.z.union([J.z.number(),J.z.string()]).nullish(),url:J.z.string().nullish(),inputs:J.z.object({body:Vt.nullish(),headers:Vt.nullish(),query:Vt.nullish()}).partial().nullish(),outputs:J.z.object({body:Vt.nullish(),headers:Vt.nullish(),status:Vt.nullish()}).partial().nullish()}).strict(),KR=lr.extend({type:J.z.literal("exit"),status:J.z.union([J.z.number(),J.z.string()]).nullish(),warn_headers_sent:J.z.boolean().nullish(),output:J.z.never().optional(),outputs:J.z.never().optional()}).strict(),jR=lr.extend({type:J.z.literal("jq"),jq:J.z.string().nullish(),outputs:J.z.never().optional()}).strict(),qR=lr.extend({type:J.z.literal("property"),content_type:J.z.string().nullish(),property:J.z.string().nullish(),inputs:J.z.never().optional(),outputs:J.z.never().optional()}).strict(),GR=lr.extend({type:J.z.literal("static"),values:J.z.record(J.z.string(),J.z.unknown()).nullish(),input:J.z.never().optional(),inputs:J.z.never().optional()}).strict(),zR=LR.pipe(J.z.discriminatedUnion("type",[UR,KR,jR,qR,GR])),HR=J.z.record(J.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),J.z.string().min(1).max(4095)),YR=J.z.object({dictionary_name:J.z.string().default("kong_db_cache")}),WR=J.z.object(),XR=J.z.object({strategy:J.z.enum(["memory","redis"]).optional(),memory:YR.optional(),redis:WR.optional()}),ZR=J.z.object({vault:HR.nullish(),cache:XR.nullish()}),JR=J.z.object({nodes:J.z.array(zR).nullish(),debug:J.z.boolean().nullish(),resources:ZR.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||Nm(e,Hn,n)}).nullish(),QR={class:"option-label"},eD=["innerHTML"],tD=we(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}=je.createI18n("en-us",We),o=e,r=t.inject(Eo.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(Eo.DATAKIT_M2,!1),{editorMode:a}=Xa(),l=t.computed(()=>r&&c.value?a.value:"code"),s={flow:Ce.DesignIcon,code:Ce.CodeblockIcon},c=t.ref(!0),d=t.computed(()=>{const _=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return _[0].disabled=!c.value,_}),f=t.computed(()=>{switch(l.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}});t.watch(l,()=>{var _;(_=o.onValidityChange)==null||_.call(o,{model:"config",valid:!0})});function u(){var _;(_=o.onValidityChange)==null||_.call(o,{model:"config",valid:!0})}function p(){u()}function m(_){var w;u();const{success:g}=JR.safeParse(_);let y=g;if(!i&&y){const b=_;(w=b==null?void 0:b.resources)!=null&&w.vault&&(y=!1)}c.value=y}function h(_){var g;c.value=!1,(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!1,error:_})}return(_,g)=>{const y=t.resolveComponent("KTooltip");return t.openBlock(),t.createBlock(Qc,t.mergeProps(o,{class:"dk-form"}),t.createSlots({default:t.withCtx(w=>[t.createVNode(dt,t.mergeProps(w,{tag:"div"}),{default:t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(yR,{key:0,"is-editing":o.isEditing,onChange:p},null,8,["is-editing"])):l.value==="code"?(t.openBlock(),t.createBlock(fN,{key:1,class:"code-editor",editing:o.isEditing,onChange:m,onError:h},null,8,["editing"])):t.createCommentVNode("",!0)]),_:2},1040)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:f.value},null,8,eD)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(xe.KSegmentedControl),{"model-value":l.value,options:d.value,"onUpdate:modelValue":g[0]||(g[0]=w=>a.value=w)},{"option-label":t.withCtx(({option:w})=>[t.createVNode(y,{disabled:c.value||w.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",QR,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(s[w.value]))),t.createTextVNode(" "+t.toDisplayString(w.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])]),key:"0"}:void 0]),1040)}}}),[["__scopeId","data-v-6b230b53"]]),Tm=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))},Om=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},nD=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ve.useI18n(),l={prepareFormData:c=>{var f,u;const d=Rn(c);return(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Om(p.headers),Om(p.query)}),d},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,u;const d=Rn(c);(u=(f=d.config)==null?void 0:f.tools)!=null&&u.length&&d.config.tools.forEach(p=>{Tm(p.headers),Tm(p.query)}),o("change",d)};return(c,d)=>(t.openBlock(),t.createBlock(dt,{config:l,data:c.data,schema:c.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(it,{"as-child":"",name:"config","reset-label-path":"reset"},{tools:t.withCtx(({name:f})=>[t.createVNode(Or,{appearance:"tabs","item-label":(u,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode($r)]),_:1},8,["data","schema"]))}}),oD=t.defineComponent({__name:"AIMcpProxyForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Pe.AUTOFILL_SLOT,o==null?void 0:o[Pe.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(va,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(nD,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),rD=we(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change"],setup(e,{emit:n}){const o=n,r=t.computed(()=>{const l=e.schema.fields.find(d=>Object.keys(d)[0]==="config").config.fields,s=[],c=[];for(const d of l){const f=Object.keys(d)[0];d[f].required?s.push(f):c.push(f)}return{required:s,nonRequired:c}}),i={hasValue:l=>!!(l!=null&&l.config)};function a(l){o("change",l)}return(l,s)=>(t.openBlock(),t.createBlock(dt,{config:i,data:l.data,schema:l.schema,tag:"div",onChange:a},{default:t.withCtx(()=>[t.createVNode(it,{"as-child":"",name:"config",omit:r.value.nonRequired,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode($r,{class:"ff-advanced-fields"},{default:t.withCtx(()=>[t.createVNode(it,{"as-child":"",name:"config",omit:r.value.required,"reset-label-path":"reset"},null,8,["omit"])]),_:1})]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-3e5ed51d"]]),$m=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:oD,CommonForm:t.defineComponent({__name:"CommonForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Pe.AUTOFILL_SLOT,o==null?void 0:o[Pe.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Qc,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(rD,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:tD,RequestCalloutForm:zw,ServiceProtectionForm:Fk},Symbol.toStringTag,{value:"Module"})),iD={class:"kong-ui-entities-plugin-form"},aD={key:1,class:"entity-form"},lD={class:"plugin-config-empty-state"},sD=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},engine:{type:String,required:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var de,ye;const o=Object.keys(Pe.sharedForms),r=Object.keys($m);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}=fe.useAxios((de=a.config)==null?void 0:de.axiosRequestConfig),{parseSchema:s}=Ve.useSchemas({entityId:((ye=a.entityMap.focusedEntity)==null?void 0:ye.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:d,dismissField:f,isObjectEmpty:u,unsetNullForeignKey:p}=Ve.usePluginHelpers(),m=Ve.useExperimentalFreeForms(),{objectsAreEqual:h}=fe.useHelpers(),{i18n:{t:_}}=Te(),g=Q=>a.config.app==="konnect"?Q.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?Q.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):Q,y=(Q,oe)=>{let le=`${a.config.apiBaseUrl}${Le.form[a.config.app].entityGetOne}`;return le=g(le),le=le.replace(/{entity}/gi,Q),le=le.replace(/{id}/gi,oe),le},w=Q=>{let oe=`${a.config.apiBaseUrl}${Le.form[a.config.app].entityGetAll}`;return oe=g(oe),oe=oe.replace(/{entity}/gi,Q),oe},b=(Q,oe)=>{const le=y(Q,oe);return l.get(le)},v=(Q,oe)=>{const le=w(Q);return a.config.app==="konnect"?l.get(le).then(ue=>{const{data:{data:ce}}=ue;if(delete oe.size,delete oe.offset,ce.length&&Object.keys(oe).length===1){const T=Object.keys(oe)[0],C=ce.filter(x=>x[T]?!!x[T].toLowerCase().includes(oe[T].toLowerCase()):!1);ue.data.data=C}return ue}):l.get(le,{params:oe})},S=(Q,oe,le)=>{const ue=w(Q);if(a.config.app==="konnect"){const{size:ce,offset:T,...C}=oe;if(Q==="consumer_groups")return l.get(ue,{params:{size:1e3},signal:le}).then(k=>{const{data:{data:$}}=k;if($.length&&Object.keys(C).length===1){const A=Object.keys(C)[0],z=$.filter(X=>X[A]?!!X[A].toLowerCase().includes(C[A].toLowerCase()):!1);k.data.data=z}return k});const x={size:ce,offset:T};for(const k of Object.keys(C))x.filter={[k]:{contains:C[k]}};return l.get(ue,{params:x,signal:le})}return l.get(ue,{params:oe,signal:le})},N=(Q,oe=50)=>{const le=w(Q);return l.get(le,{params:{size:oe}})};t.provide(Pe.FORMS_API_KEY,{getOne:b,getAll:v,getAllV2:S,peek:N}),t.provide(Pe.FORMS_CONFIG,a.config);const I=t.ref(""),O=t.ref(""),F=t.ref(null),H=t.ref({}),q=t.reactive({}),E=t.reactive({}),te=t.computed(()=>{var Q;return(Q=F.value)==null?void 0:Q.options}),P=t.ref(!1),G=t.ref(),R=(Q,oe)=>{P.value=Q??"",G.value=oe},K=Q=>{var oe;(oe=G.value)==null||oe.call(G,Q),P.value=!1},V=()=>{var C,x;const Q={...a.schema},oe=E,le=q,ue=Object.keys(oe),ce={};if(!u(H.value))for(let k=0;k<((x=(C=H.value)==null?void 0:C.fields)==null?void 0:x.length);k++)Q[H.value.fields[k].model]=H.value.fields[k];Pe.customFields.forEach(k=>{Q[k]&&(Q[k].fields.forEach($=>{$.fields&&$.fields.forEach(A=>{Q[A.model]=A}),$.model&&(Q[$.model]=$)}),delete Q[k])}),ue.forEach(k=>{var ge;if(!Q[k]){k==="partials"&&(ce[k]=oe[k]);return}const $=Q[k];let A=oe[k];const z=le[k],X=Array.isArray(A)?"array":typeof A,B=$?$.valueType:null,ee=$?$.valueArrayType:null,U=$?$.transform:null;if(A==null&&z==null&&!$.submitWhenNull)return;if($){if(B&&X!==B)switch(B){case"array":X==="string"&&A.length&&(A=A.split(",").map(he=>{if(he=he.trim(),ee==="string")return String(he);if(ee==="number")return Number(he);if(ee==="boolean"){if(typeof he=="string")return he.toLowerCase()==="true"||he==="1";if(typeof he=="number")return he===1}return he})),(!A||!A.length)&&(A=$.submitWhenNull?null:[]);break;case"number":A=Number(A);break;case"boolean":X==="string"&&(A=A.toLowerCase()==="true"||A==="1"),X==="number"&&(A=A===1);break;case"string":A=A==null?"":String(A);break}else B==="array"&&(!A||!A.length?A=$.submitWhenNull?null:[]:((ge=$.inputAttributes)==null?void 0:ge.type)==="number"&&(A=A.map(he=>Number(he))));if($.type==="array"&&$.nestedFields){const he=ae=>{Object.keys(ae).forEach(pe=>{ae[pe]&&typeof ae[pe]=="object"&&!Array.isArray(ae[pe])&&ae[pe]!==null?he(ae[pe]):(ae[pe]===void 0||ae[pe]===null||typeof ae[pe]=="number"&&isNaN(ae[pe])||typeof ae[pe]=="string"&&ae[pe].trim().length===0)&&delete ae[pe]})};A&&typeof A=="object"&&he(A)}$.type==="object-advanced"&&$.fields&&A!==null&&(Object.entries(A).length===0?A=null:Object.keys(A).forEach(he=>{Array.isArray(A[he])||(A[he]=A[he].split(","))}))}let me=c(k);if($.fieldNameHasDashes){const[he,...ae]=me.split(".").reverse();me=[he.replace(/_/g,"-"),...ae].reverse().join(".")}if(B==="object-expand"){let he;[me,he]=me.split(".");let ae={};ce[me]&&(ae=ce[me]),ae[he]=A,A=ae}z!==void 0&&A===""&&A!==z?ce[me]=B==="object"?{}:null:$.type==="checklist"&&A===""?ce[me]=[]:A!==""&&(ce[me]=A),ce[me]=U?U(A):ce[me],p(me,ce)});const T=d(ce);return O.value&&Object.assign(T,Z.value),T},M=(Q,oe={})=>{f(E,oe,Q,a.editing),i("model-updated",{model:E,originalModel:q,data:V()})},D=(Q,oe)=>{var ce;const le={[oe]:Q};typeof((ce=a.schema[oe])==null?void 0:ce.modelTransformer)=="function"&&(le[oe]=a.schema[oe].modelTransformer(Q));const ue=Object.assign({},E,le);Object.assign(E,ue),i("model-updated",{model:E,originalModel:q,data:V()})},L=Q=>{i("validity-change",Q)},j=(Q,oe)=>{Object.keys(Q).forEach(le=>{var x,k;let ue=oe?`${oe}-${le}`:le,ce=a.schema[ue];if(!ce){const $=oe?`${oe}-${le.replace(/-/g,"_")}`:le.replace(/-/g,"_");(x=a.schema[$])!=null&&x.fieldNameHasDashes&&(ue=$,ce=a.schema[ue]),oe&&((k=a.schema[oe])==null?void 0:k.keyFromObject)===le&&(ue=oe,ce=a.schema[ue])}const T=Q[le],C=typeof T;if(ce&&ce.type==="object-advanced"&&!T){E[ue]={},q[ue]={};return}if(Array.isArray(T)){E[ue]=JSON.parse(JSON.stringify(T)),q[ue]=JSON.parse(JSON.stringify(T));return}if(C==="object"&&T&&!T.length)return j(T,ue);if(C==="object"&&T&&T.length&&ce.type==="input"){E[ue]=T.join(", "),q[ue]=T.join(", ");return}E[ue]=T,q[ue]=T}),i("model-updated",{model:E,originalModel:q,data:V()})},Z=t.shallowRef(a.record),W=Q=>{Z.value=Q,i("model-updated",{model:{...E,...Q},originalModel:q,data:V()})},ne=t.ref(!0),ie=()=>{var Q;if(a.record&&a.schema&&(j({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)&&j({consumer_id:a.record.consumer_id||a.record.consumer}),j(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)&&j({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&&M("redis",{partials:a.record.partials}),O.value?W(a.record):j(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const oe={};for(const le in a.entityMap){const ue=a.entityMap[le].id,ce=a.entityMap[le].idField,T=ce==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(ce).replace("_","-"));Object.prototype.hasOwnProperty.call(E,T)&&(oe[T]=ue)}j(oe)}if((Q=a.entityMap.consumer)!=null&&Q.id&&a.schema&&a.credential){const oe={};Object.prototype.hasOwnProperty.call(E,"consumer")&&(oe.consumer=a.entityMap.consumer.id),j(oe)}ne.value=!1};return t.watch(ne,Q=>{i("loading",Q)}),t.watch(()=>a.schema,(Q,oe)=>{var ue,ce;if(h(Q||{},oe||{}))return;const le=s(Q,void 0,void 0,a.engine);Object.assign(E,le.model),H.value={fields:(ce=(ue=H.value)==null?void 0:ue.fields)==null?void 0:ce.map(T=>({...T,disabled:T.disabled||!1}))},Object.assign(q,JSON.parse(JSON.stringify(le.model))),O.value=a.engine?a.engine==="vfg"?void 0:ga(le.model.name,m)||"CommonForm":ga(le.model.name,m),I.value=Pe.getSharedFormName(le.model.name),ie()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var Q,oe;F.value=s(a.schema,void 0,void 0,a.engine),Object.assign(E,((Q=F.value)==null?void 0:Q.model)||{}),H.value=((oe=F.value)==null?void 0:oe.schema)||{},ie()}),(Q,oe)=>{var ue;const le=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",iD,[ne.value?(t.openBlock(),t.createBlock(le,{key:0,type:"form"})):E.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",aD,[O.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent($m[O.value]),{key:0,"form-model":E,"form-options":te.value,"form-schema":H.value,"is-editing":e.editing,model:e.record,"on-form-change":W,"on-model-updated":D,"on-validity-change":L,schema:e.rawSchema,onGlobalAction:oe[0]||(oe[0]=(ce,T)=>Q.$emit("globalAction",ce,T))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Pe.AUTOFILL_SLOT_NAME),fn:t.withCtx(ce=>[ce.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(co.VaultSecretPickerProvider),t.mergeProps({key:0},ce,{onOpen:R}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):I.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Pe.sharedForms)[I.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":E,"form-options":te.value,"form-schema":H.value,"is-editing":e.editing,"on-model-updated":D,"on-partial-toggled":M,"show-new-partial-modal":ce=>Q.$emit("showNewPartialModal",ce)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Pe.AUTOFILL_SLOT_NAME),fn:t.withCtx(ce=>[ce.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(co.VaultSecretPickerProvider),t.mergeProps({key:0},ce,{onOpen:R}),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(Pe.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:E,options:te.value,schema:H.value,onModelUpdated:D,onPartialToggled:M,onRefreshModel:V,onShowNewPartialModal:oe[1]||(oe[1]=ce=>Q.$emit("showNewPartialModal",ce))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",lD,t.toDisplayString(t.unref(_)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ue=t.unref(St)[E.name])!=null&&ue.fieldRules&&(a.config.isNewOtelSchema||E.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(W0,{rules:t.unref(St)[E.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Pe.AUTOFILL_SLOT_NAME),fn:t.withCtx(ce=>[ce.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(co.VaultSecretPickerProvider),t.mergeProps({key:0},ce,{onOpen:R}),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(co.VaultSecretPicker),{config:a.config,setup:P.value,onCancel:oe[2]||(oe[2]=()=>P.value=!1),onProceed:K},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-3a5319dd"]]),cD={key:1},dD=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",cD,[t.renderSlot(n.$slots,"default")]))}}),uD={class:"kong-ui-entities-plugin-form-container"},fD={key:0},pD={class:"plugin-form-actions"},mD=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},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var X;const o=n,r=e,i=so.useRouter(),{i18n:{t:a}}=Ve.useI18n(),{customSchemas:l,typedefs:s}=Ve.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ve.usePluginHelpers(),{getMessageFromError:d}=fe.useErrors(),{capitalize:f}=fe.useStringHelpers(),{objectsAreEqual:u}=fe.useHelpers(),{axiosInstance:p}=fe.useAxios((X=r.config)==null?void 0:X.axiosRequestConfig),m=t.ref(!1),h=t.computed(()=>!!r.pluginId),_=t.computed(()=>r.pluginId?fe.EntityBaseFormType.Edit:fe.EntityBaseFormType.Create),g=t.ref(void 0),y=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),b=t.ref(void 0),v=t.ref({}),S=t.ref(),N=t.ref();t.provide(Xc,{redisType:S,redisPath:N,isEditing:h.value});const I=t.ref(!1),O=t.reactive({enabled:!0,protocols:[],tags:[]}),F=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),H=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&H.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const q=t.ref(""),E=t.computed(()=>{var ee;if(w.value){let U=Le.form[r.config.app].credential[_.value];return U=U.replace(/{resourceEndpoint}/gi,R.value),U}let B;return r.config.entityType&&r.config.entityId?B=Le.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):B=Le.form[r.config.app].edit.all,r.config.app==="konnect"&&((ee=St[r.pluginType])!=null&&ee.useUIData)?`${B}?__ui_data=true`:B}),te=()=>{m.value=!m.value},P=t.computed(()=>{var he,ae,pe,Se,Ne,se,re,Be;const B=r.config.entityType==="consumers"&&r.config.entityId||((ae=(he=b.value)==null?void 0:he.consumer)==null?void 0:ae.id),ee=r.config.entityType==="consumer_groups"&&r.config.entityId||((Se=(pe=b.value)==null?void 0:pe.consumer_group)==null?void 0:Se.id),U=r.config.entityType==="services"&&r.config.entityId||((se=(Ne=b.value)==null?void 0:Ne.service)==null?void 0:se.id),me=r.config.entityType==="routes"&&r.config.entityId||((Be=(re=b.value)==null?void 0:re.route)==null?void 0:Be.id);if(!(B||ee||U||me))return{global:{entity:Y.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const ge={};return U&&(ge.service={entity:Y.PluginScope.SERVICE,entityEndpoint:"services",id:U,idField:an.SERVICE}),me&&(ge.route={entity:Y.PluginScope.ROUTE,entityEndpoint:"routes",id:me,idField:an.ROUTE}),B&&(ge.consumer={entity:Y.PluginScope.CONSUMER,entityEndpoint:"consumers",id:B,idField:an.CONSUMER}),ee&&(ge.consumer_group={entity:Y.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:ee,idField:an.CONSUMER_GROUP}),r.config.entityType&&(ge.focusedEntity={entity:Y.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:an[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),ge}),G=t.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||_.value===fe.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:a("plugins.form.scoping.global.label"),description:a("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:a("plugins.form.fields.protocols.help"),label:a("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:a("plugins.form.fields.instance_name.label"),inputType:"text",help:a("plugins.form.fields.instance_name.help")},tags:s.tags}),R=t.computed(()=>{var U;const B=r.developer?"developers":"consumers",ee=((U=$n[r.pluginType])==null?void 0:U.endpoint)||"/plugins";return`${B}/${r.config.entityId}${r.developer?"/credentials":""}${ee}`}),K=B=>{const ee=Array.from(new Set(B.map(U=>typeof U)));return ee.length>1?"string":ee[0]},V=(B,ee,U,me)=>{var pe,Se;let ge=ee&&ee.fields||[];const he=l[r.pluginType],ae=(Se=(pe=$n[r.pluginType])==null?void 0:pe.schema)==null?void 0:Se.fields;return Array.isArray(ge)&&(ge=ge.reduce((Ne,se)=>{const re=Object.keys(se)[0];return re.match(/-/g)?Ne[re.replace(/-/g,"_")]={...se[re],fieldNameHasDashes:!0}:Ne[re]=se[re],Ne},{})),Object.keys(ge).sort().forEach(Ne=>{var Ht,sr,cr,dr,ur,fr,pr;const se=ge[Ne];se.type==="set"&&(se.type="array");const re=B?`${B}-${Ne}`:`${Ne}`;if((Ht=he==null?void 0:he.fieldsToDelete)!=null&&Ht.includes(re)){Sc(U,re);return}if(Object.prototype.hasOwnProperty.call(se,"overwrite")||se.hidden)return;if(se.type==="table")return V(re,se.schema,U);if(se.fields)return me&&se.type==="record"?(U[re]={type:"object",model:Ne,schema:{fields:Object.values(V(re,se,{},!0))}},U):V(re,se,U);if(U[re]={id:re,model:Ne},U[re].type=se.type==="boolean"?"checkbox":"input",U[re].required=se.required,U[re].referenceable=se.referenceable,re.startsWith("config-"))if(!me&&se.type==="array"&&(q.value=re),me&&q.value&&re.startsWith(q.value)){const Ie=re.slice(q.value.length+1);U[re].label=Ie.split("-").map(c).join(".")}else U[re].label=c(re);if((B==="config"||B.startsWith("config-"))&&(sr=ge[Ne])!=null&&sr.description&&(U[re].help=mr.marked.parse(ge[Ne].description,{mangle:!1,headerIds:!1})),se.type==="map"){if(U[re].type="object-advanced",U[re].values=se.values,se.values.type==="array"){const{type:Ie}=se.values.elements||{};U[re].schema={fields:[{schema:{fields:[{...Ae,model:re,valueArrayType:Ie==="integer"?"number":Ie||"string",inputAttributes:{...Ae.inputAttributes,type:Ie==="integer"?"number":"text",inputMode:Ie==="integer"?"numeric":"text"}}]}}]}}else se.values.fields&&(U[re].schema={fields:[{type:"object",model:"object",schema:{fields:se.values.fields.map(Ie=>{const st=Object.keys(Ie)[0];return{model:st,type:"input",label:f(st),placeholder:st,inputType:Ie[st].type}})}}]});return U}if(se.enum&&se.type==="array"&&(U[re].type="checklist",U[re].values=se.enum,U[re].multi=!0,U[re].multiSelect=!0),se.one_of&&se.type!=="array"&&(U[re].type="select",U[re].values=se.one_of,U[re].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),se.elements&&se.type==="array"){const Ie=se.elements;if(U[re].referenceable=Ie.referenceable,U[re].elements=Ie,["string","integer","number"].includes(Ie.type)&&!Ie.one_of){const{id:st,help:Ue,label:ve,hint:Oe,values:Re,referenceable:Yt,model:ft}=U[re],{inputAttributes:Li,...fM}=JSON.parse(JSON.stringify(Ae));Li.type=Ie.type==="string"?"text":"number",U[re]={id:st,help:Ue,label:ve,hint:Oe,values:Re,referenceable:Yt,model:ft,inputAttributes:Li,...fM}}}if(se.hint&&(U[re].hint=se.hint),he&&!he.overwriteDefault&&Object.keys(he).forEach(Ie=>{if(Ie===re){const{help:st,label:Ue,hint:ve,values:Oe,referenceable:Re,elements:Yt}=U[re],{help:ft,...Li}=he[Ie];U[re]={help:st,label:Ue,hint:ve,values:Oe,referenceable:Re,elements:Yt,...Li},typeof ft=="string"&&(U[re].help=mr.marked.parse(ft,{mangle:!1,headerIds:!1}))}}),se.type==="array"&&((cr=se.elements)==null?void 0:cr.type)==="record"&&Array.isArray(se.elements.fields)){let Ie={};for(const Ue of se.elements.fields)Ie={...Ie,...Ue};const st=(fr=(ur=(dr=U[re])==null?void 0:dr.items)==null?void 0:ur.schema)==null?void 0:fr.fields;if(Array.isArray(st))for(const Ue of U[re].items.schema.fields){const ve=(pr=Ie[Ue.model])==null?void 0:pr.description;Ue.help===void 0&&typeof ve=="string"&&(Ue.help=mr.marked.parse(ve,{mangle:!1,headerIds:!1}))}if(st||(U[re].type="array",U[re].newElementButtonLabelClasses="kong-form-new-element-button-label",U[re].fieldClasses="array-card-container-wrapper",U[re].itemContainerComponent="FieldArrayCardContainer",U[re].items={type:"object",schema:{fields:Object.values(V(re,se.elements,{},!0))}},U[re].items.schema.fields.forEach(Ue=>{var ve,Oe;for(const Re of se.elements.fields){const Yt=Object.keys(Re)[0],ft=((Oe=(ve=Ue.id)==null?void 0:ve.split)==null?void 0:Oe.call(ve,"-"))??[];if(ft[ft.length-1]===Yt){Ue.model=Yt,Ue.label=c(Yt);break}}}),se.elements.type==="record"&&(U[re].nestedFields=!0)),!U[re].nestedFields)U[re].items.default=()=>se.elements.fields.reduce((Ue,ve)=>{const Oe=Object.keys(ve)[0];return Ue[Oe]=ve[Oe].default,Ue},{});else{const Ue=(ve,Oe)=>{if(ve.type==="object"){ve.model&&(Oe[ve.model]={});for(const Re of ve.schema.fields)Ue(Re,ve.model?Oe[ve.model]:Oe)}else ve.model&&(Oe[ve.model]=ve.default)};U[re].items.default=()=>{const ve={};return Ue(U[re].items,ve),ve}}}if(w.value&&ae){for(let Ie=0;Ie<ae.length;Ie++)if(ae[Ie][re]){U[re]={...U[re],...ae[Ie][re]};break}}if(se.required&&se.type!=="boolean"&&(U[re].required=!0,U[re].selectOptions={hideNoneSelectedText:!0}),se.required&&se.type==="boolean"&&(U[re].default=se.default??!1),se.default!=null&&typeof se.default!="object"&&se.default!=="function"&&(U[re].default=se.default),U[re].type==="input"){["string","number"].includes(typeof U[re].default)&&r.config.app==="konnect"&&(U[re].placeholder=`Default: ${U[re].default===""?"<empty string>":U[re].default}`);const{type:Ie}=se.elements||{};Ie&&(U[re].valueArrayType=Ie==="integer"?"number":Ie),U[re].inputType=se.type==="array"||se.type==="string"?se.encrypted?"password":"text":se.type}let Be="string";se.enum?Be=K(se.enum):se.type==="boolean"?Be="boolean":se.type==="number"||se.type==="integer"?(Be="number",U[re].inputType="number"):se.type==="array"?(Be="array",U[re].default=se.default,se.len_min>0&&(U[re].submitWhenNull=!0)):se.type==="foreign"?Be="object":se.default&&Array.isArray(se.default)?(Be="array",U[re].valueArrayType=K(se.default)):se.default&&(Be=typeof se.default),U[re].valueType=Be,se.fieldNameHasDashes&&(U[re].fieldNameHasDashes=!0)}),U},M=()=>{var re,Be,Ht,sr,cr,dr,ur,fr,pr,Ie,st,Ue;const B=((re=St[r.pluginType])==null?void 0:re.scope.includes(Y.PluginScope.SERVICE))??!0,ee=((Be=St[r.pluginType])==null?void 0:Be.scope.includes(Y.PluginScope.ROUTE))??!0,U=((Ht=St[r.pluginType])==null?void 0:Ht.scope.includes(Y.PluginScope.CONSUMER))??!0,me=r.config.disableConsumerGroupScope?!1:((sr=St[r.pluginType])==null?void 0:sr.scope.includes(Y.PluginScope.CONSUMER_GROUP))??!0,ge=r.config.entityType==="consumers"&&!!r.config.entityId||!!((dr=(cr=b.value)==null?void 0:cr.consumer)!=null&&dr.id),he=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((fr=(ur=b.value)==null?void 0:ur.consumer_group)!=null&&fr.id),ae=r.config.entityType==="services"&&!!r.config.entityId||!!((Ie=(pr=b.value)==null?void 0:pr.service)!=null&&Ie.id),pe=r.config.entityType==="routes"&&!!r.config.entityId||!!((Ue=(st=b.value)==null?void 0:st.route)!=null&&Ue.id),Se=[],Ne=(ve,Oe,Re)=>ve?a("plugins.form.disable_source_scope_change",{scope:Re}):Oe?a("plugins.form.disable_data_retrieving",{scope:Re}):"",se=ve=>{var Oe,Re;return((Re=(Oe=r.scopedEntitiesPermissions)==null?void 0:Oe[ve])==null?void 0:Re.canRetrieve)===!1};if(B){const ve=se("service"),Oe="services",Re=ae&&r.disableScopeSelection;Se.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Oe,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:Re||ve,disabledTooltip:Ne(Re,ve,Oe)})}if(ee){const ve=se("route"),Oe="routes",Re=pe&&r.disableScopeSelection;Se.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:Re||ve,disabledTooltip:Ne(Re,ve,Oe)})}if(U){const ve=se("consumer"),Oe="consumers",Re=ge&&r.disableScopeSelection;Se.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:Re||ve,disabledTooltip:Ne(Re,ve,Oe)})}if(me){const ve=se("consumer_group"),Oe="consumer_groups",Re=he&&r.disableScopeSelection;Se.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Oe,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:Re||ve,disabledTooltip:Ne(Re,ve,Oe)})}if(Se.length){const ve=[...B?["service"]:[],...ee?["route"]:[],...U?["consumer"]:[],...me?["consumer_group"]:[]],Re=ve.splice(ve.length-2,2).map(ft=>a(ft==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${ft}.plural`)).join(`${ve.length>0?",":""} and/or `),Yt=["Specific",[...ve.length>0?[ve.map(ft=>a(ft==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${ft}.plural`)).join(", ")]:[],Re].join(", ")].join(" ");G.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:Yt,fields:[]}),G.selectionGroup.fields[1].fields=Se}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(G,l[r.pluginType].formSchema)},D=t.computed(()=>!u(F.fields,O,!0)),L=t.computed(()=>!A.value&&!I.value&&(_.value===fe.EntityBaseFormType.Create||D.value)),j=t.ref(!1),Z=t.ref(),W=B=>{r.credential&&B.password&&(B.password=""),F.fields.id=(B==null?void 0:B.id)||void 0,Z.value=B==null?void 0:B.ordering,Object.assign(O,F.fields),b.value=B,j.value=!0},ne=t.ref({}),ie=B=>{var ee;F.fields=B.model,F.fields.id=((ee=b.value)==null?void 0:ee.id)||void 0,Object.assign(O,B.originalModel),ne.value=B.data,r.isWizardStep&&o("model-updated",{model:F.fields,data:B.data,resourceEndpoint:R.value})},de=t.ref(new Map),ye=t.computed(()=>[F.clientErrorMessage,F.serverErrorMessage].filter(Boolean).join("; ")),Q=B=>{B.valid?de.value.delete(B.model):de.value.set(B.model,B.error),F.clientErrorMessage=[...de.value.entries()].map(([ee,U])=>`${ee}: ${typeof U=="string"?U:d(U)}`).join("; "),F.clientErrorMessage&&(F.serverErrorMessage="")};t.watch([P,j],(B,ee)=>{const U=B[0]!==ee[0],me=B[1],ge=ee[1];if(!w.value&&_.value===fe.EntityBaseFormType.Edit&&(U||me&&me!==ge)){const he=V("config",v.value,G);ce.value&&(he._isCustomPlugin=!0),S.value&&(he._supported_redis_partial_type=S.value),y.value=he}},{deep:!0});const oe=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},le=t.computed(()=>{let B=`${r.config.apiBaseUrl}${Le.form[r.config.app].validate}`;return r.config.app==="konnect"?B=B.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(B=B.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),B=B.replace(/{id}/gi,r.pluginId),B}),ue=t.computed(()=>{const B=r.config.entityType&&r.config.entityId&&!r.developer,ee=w.value?Le.form[r.config.app].credential[_.value]:Le.form[r.config.app][_.value][B?"forEntity":"all"];let U=`${r.config.apiBaseUrl}${ee}`;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(/{resourceEndpoint}/gi,R.value),U=U.replace(/{id}/gi,r.pluginId),U=U.replace(/{entityType}/gi,r.config.entityType||""),U=U.replace(/{entityId}/gi,r.config.entityId||""),U}),ce=t.computed(()=>!Object.keys(St).includes(r.pluginType)),T=t.computed(()=>{const B=ne.value;if(w.value){for(const ee in Y.PluginScope){const U=Y.PluginScope[ee];B[U]&&!B[U].id&&(B[U]={id:r.config.entityId})}delete B.created_at}return ne.value.partials&&N.value&&Sc(B,N.value),B}),C=t.computed(()=>{const{__ui_data:B,...ee}={...T.value};return ee}),x=async()=>{if(!F.clientErrorMessage&&!r.isWizardStep)try{F.isReadonly=!0;let B;const ee=JSON.parse(JSON.stringify(T.value)),U=l[r.pluginType];typeof(U==null?void 0:U.shamefullyTransformPayload)=="function"&&U.shamefullyTransformPayload({originalModel:O,model:F.fields,payload:ee,schema:y.value}),!w.value&&!ce.value&&await p.post(le.value,ee),_.value==="create"?B=await p.post(ue.value,ee):_.value==="edit"&&(B=r.config.app==="konnect"||S.value&&ee.partials?await p.put(ue.value,Object.assign({ordering:Z.value},ee)):await p.patch(ue.value,ee)),Object.assign(O,F.fields),o("update",B==null?void 0:B.data)}catch(B){F.serverErrorMessage=d(B),o("error",B)}finally{F.isReadonly=!1}},k=t.computed(()=>{var me;const B=w.value?(me=$n[r.pluginType])==null?void 0:me.schemaEndpoint:r.pluginType,ee=w.value?Le.form[r.config.app].credentialSchema:Le.form[r.config.app].pluginSchema;let U=`${r.config.apiBaseUrl}${ee}`;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(/{plugin}/gi,B),U}),$=t.ref(""),A=t.ref(!1),z=t.ref("");return t.onBeforeMount(async()=>{var B,ee,U,me;A.value=!0;try{if(w.value&&r.config.app==="konnect"){const ge=(B=$n[r.pluginType])==null?void 0:B.schemaEndpoint,he=Xm[ge];$.value=ge,y.value=V("",he,{}),A.value=!1}else{const ge=r.schema??(await p.get(k.value)).data;if(g.value=ge,ge)if(w.value)y.value=V("",ge,{}),A.value=!1;else{const he=ge.fields.find(pe=>pe.config);v.value=he?he.config:ge,ge.supported_partials&&(S.value=Object.keys(ge.supported_partials).find(pe=>[hr.REDIS_CE,hr.REDIS_EE].includes(pe)),N.value=(ee=ge.supported_partials[S.value])==null?void 0:ee[0]),M();const ae=(U=ge.fields.find(pe=>pe.protocols))==null?void 0:U.protocols;if(ae){const{default:pe=[],elements:Se={}}=ae;G.protocols.default=pe,G.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:pe.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(me=Se.one_of)!=null&&me.length&&(G.protocols.values=Se.one_of.map(Ne=>({label:Ne,value:Ne})))}if(j.value||_.value===fe.EntityBaseFormType.Create){const pe=V("config",v.value,G);S.value&&(pe._supported_redis_partial_type=S.value),ce.value&&(pe._isCustomPlugin=!0),y.value=pe}}}}catch(ge){console.error(ge),z.value=d(ge),o("error:fetch-schema",ge)}finally{A.value=!1}}),(B,ee)=>{const U=t.resolveComponent("KSkeleton"),me=t.resolveComponent("KEmptyState"),ge=t.resolveComponent("KButton"),he=t.resolveComponent("KTabs"),ae=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",uD,[A.value?(t.openBlock(),t.createBlock(U,{key:0,type:"form"})):z.value?(t.openBlock(),t.createBlock(me,{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(fe.EntityBaseForm),{key:2,"can-submit":L.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(fe.SupportedEntityType).Plugin,"error-message":ye.value,"fetch-url":E.value,"form-fields":T.value,"is-readonly":F.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:oe,"onFetch:error":ee[4]||(ee[4]=pe=>B.$emit("error",pe)),"onFetch:success":W,onLoading:ee[5]||(ee[5]=pe=>B.$emit("loading",pe))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",fD)):(t.openBlock(),t.createBlock(dD,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",pD,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(ge,{key:0,appearance:"tertiary","data-testid":`plugin-${h.value?"edit":"create"}-form-view-configuration`,onClick:ee[3]||(ee[3]=pe=>te())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(ge,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${h.value?"edit":"create"}-form-cancel`,disabled:F.isReadonly,onClick:oe},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(ge,{appearance:"primary","data-testid":`plugin-${h.value?"edit":"create"}-form-submit`,disabled:!L.value||F.isReadonly,type:"submit",onClick:x},{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:x},null,32),t.createVNode(sD,{config:e.config,credential:w.value,editing:_.value===t.unref(fe.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":P.value,"raw-schema":g.value,record:b.value,schema:y.value,onGlobalAction:ee[0]||(ee[0]=(pe,Se)=>B.$emit("globalAction",pe,Se)),onLoading:ee[1]||(ee[1]=pe=>I.value=pe),onModelUpdated:ie,onShowNewPartialModal:ee[2]||(ee[2]=pe=>B.$emit("showNewPartialModal",pe)),onValidityChange:Q},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","engine","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),t.createVNode(ae,{"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:te},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(he,{"data-testid":"form-view-configuration-slideout-tabs",tabs:H.value},{json:t.withCtx(()=>[t.createVNode(t.unref(fe.JsonCodeBlock),{config:e.config,"entity-record":C.value,"fetcher-url":ue.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(fe.YamlCodeBlock),{"entity-record":C.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(fe.TerraformCodeBlock),{"credential-type":$.value,"entity-record":C.value,"entity-type":t.unref(fe.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-4e00808e"]]),gD={class:"kong-ui-entities-plugins-list"},hD={class:"button-row"},yD={class:"name-cell-wrapper"},_D={class:"info-wrapper"},bD={key:0,class:"info-name"},wD={key:1,class:"info-name"},kD={key:2,class:"info-type"},CD={key:1},ED=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 k,$;const o=Ve.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Ve.useI18n(),l=so.useRouter(),{axiosInstance:s}=fe.useAxios((k=i.config)==null?void 0:k.axiosRequestConfig),{hasRecords:c,handleStateChange:d}=fe.useTableState(()=>b.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),u=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var A;return((A=i.config)==null?void 0:A.entityType)==="consumers"}),m=t.computed(()=>{var A;return((A=i.config)==null?void 0:A.entityType)==="consumer_groups"}),h=i.config.app==="konnect"||fe.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),_=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};($=i.config)!=null&&$.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 y=g,w=t.computed(()=>{var z,X,B,ee;let A=i.config.entityType?`${i.config.apiBaseUrl}${Le.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Le.list[i.config.app].all}`;return i.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,((z=i.config)==null?void 0:z.controlPlaneId)||""):i.config.app==="kongManager"&&(A=A.replace(/\/{workspace}/gi,(X=i.config)!=null&&X.workspace?`/${i.config.workspace}`:"")),A.replace(/{entityType}/gi,((B=i.config)==null?void 0:B.entityType)||"").replace(/{entityId}/gi,((ee=i.config)==null?void 0:ee.entityId)||"")}),b=t.ref(""),v=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:S,fetcherState:N,fetcherCacheKey:I}=fe.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),O=()=>{b.value=""},F=()=>{I.value++},H=t.ref(null),q=A=>{var X,B,ee,U;const z=[];return((X=A.route)!=null&&X.id||A.route_id)&&z.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),((B=A.service)!=null&&B.id||A.service_id)&&z.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((ee=A.consumer)!=null&&ee.id||A.consumer_id)&&z.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((U=A.consumer_group)!=null&&U.id||A.consumer_group_id)&&z.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),z.length?z:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},E=async(A,z)=>{var X;return A===null?!1:await((X=i.canRetrieveScopedEntity)==null?void 0:X.call(i,A,z.id))},te=(A,z)=>{var B,ee,U,me,ge;let X=null;switch(A){case"route":X=(B=z.route)==null?void 0:B.id;break;case"service":X=(ee=z.service)==null?void 0:ee.id;break;case"consumer":X=(U=z.consumer)==null?void 0:U.id;break;case"consumer_group":X=(me=z.consumer_group)==null?void 0:me.id;break}X&&((ge=i.config)!=null&&ge.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(A,X))},P=t.ref(!1),G=t.ref(null),R=t.computed(()=>{const A={action:"disable",id:"",name:""};if(G.value){const{enabled:z,id:X,name:B}=G.value;A.action=z?"disable":"enable",A.id=X,A.name=o.getDisplayName(B)||X}return A}),K=A=>{P.value=!0,G.value=A},V=()=>{P.value=!1,G.value=null},M=async()=>{var B,ee,U,me,ge,he,ae,pe;if(!await((B=i.canEdit)==null?void 0:B.call(i,G.value))||!G.value)return;let z=`${i.config.apiBaseUrl}${(ge=Le.item[i.config.app])==null?void 0:ge[(ee=i.config)!=null&&ee.entityType?"forEntity":"all"].replace(/{entityType}/gi,((U=i.config)==null?void 0:U.entityType)||"").replace(/{entityId}/gi,((me=i.config)==null?void 0:me.entityId)||"")}`.replace(/{id}/gi,G.value.id||"");i.config.app==="konnect"?z=z.replace(/{controlPlaneId}/gi,((he=i.config)==null?void 0:he.controlPlaneId)||""):i.config.app==="kongManager"&&(z=z.replace(/\/{workspace}/gi,(ae=i.config)!=null&&ae.workspace?`/${i.config.workspace}`:""));const X=!G.value.enabled;try{const{data:Se}=((pe=i.config)==null?void 0:pe.app)==="konnect"?await s.put(z,{...G.value,enabled:X},{timeout:12e4}):await s.patch(z,{...G.value,enabled:X},{timeout:12e4});r("toggle-enabled",X,Se),G.value.enabled=X}catch(Se){r("error",Se)}},D=async(A,z)=>{const X=A.id;if(!await z(X)){r("copy:error",{entity:A,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:A,field:"id",message:a("copy.success",{val:X})})},L=async(A,z)=>{const X=JSON.stringify(A);if(!await z(X)){r("copy:error",{entity:A,message:a("errors.copy")});return}r("copy:success",{entity:A,message:a("copy.success_brief")})},j=async A=>{var X;await((X=i.canRetrieve)==null?void 0:X.call(i,A))&&l.push(i.config.getViewRoute(A))},Z=A=>({label:a("actions.view"),to:i.config.getViewRoute(A)}),W=A=>({label:a("actions.edit"),to:i.config.getEditRoute(A)}),ne=A=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(A)}),ie=t.ref(void 0),de=t.ref(!1),ye=t.ref(!1),Q=t.ref(""),oe=fe.useDeleteUrlBuilder(i.config,w.value),le=A=>{ie.value=A,de.value=!0},ue=()=>{de.value=!1},ce=async()=>{var A,z,X;if((A=ie.value)!=null&&A.id){ye.value=!0;try{await s.delete(oe(ie.value.id)),ye.value=!1,de.value=!1,I.value++,r("delete:success",ie.value)}catch(B){Q.value=((X=(z=B.response)==null?void 0:z.data)==null?void 0:X.message)||B.message||a("errors.delete"),r("error",B)}finally{ye.value=!1}}},T=()=>{l.push(i.config.createRoute)};t.watch(N,A=>{var z,X,B;if(A.status===fe.FetcherStatus.Error){H.value={title:a("errors.general")},(B=(X=(z=A.error)==null?void 0:z.response)==null?void 0:X.data)!=null&&B.message&&(H.value.message=A.error.response.data.message),r("error",A.error);return}H.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")}),x=t.ref(!1);return t.onBeforeMount(async()=>{x.value=await i.canCreate(),x.value&&(C.value.title=a("plugins.list.empty_state.title"),C.value.ctaText=a("actions.create"))}),(A,z)=>{const X=t.resolveComponent("KButton"),B=t.resolveComponent("KEmptyState"),ee=t.resolveComponent("KBadge"),U=t.resolveComponent("KTruncate"),me=t.resolveComponent("KInputSwitch"),ge=t.resolveComponent("KDropdownItem"),he=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",gD,[t.createVNode(t.unref(fe.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":_.value,"empty-state-options":C.value,"enable-entity-actions":"","error-message":H.value,fetcher:t.unref(S),"fetcher-cache-key":t.unref(I),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:b.value,"table-headers":t.unref(y),title:e.title,"title-tag":e.titleTag,onClearSearchInput:O,"onClick:row":z[4]||(z[4]=ae=>j(ae)),onSort:F,onState:t.unref(d)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(fe.EntityFilter),{modelValue:b.value,"onUpdate:modelValue":z[0]||(z[0]=ae=>b.value=ae),config:v.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",hD,[!u.value&&f.value?(t.openBlock(),t.createBlock(X,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:z[1]||(z[1]=ae=>A.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(fe.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(X,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.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:ae})=>[t.createElementVNode("div",yD,[t.createVNode(t.unref(fo.PluginIcon),{class:"plugin-icon",name:ae.name,size:24},null,8,["name"]),t.createElementVNode("div",_D,[ae.instance_name?(t.openBlock(),t.createElementBlock("span",bD,t.toDisplayString(ae.instance_name),1)):(t.openBlock(),t.createElementBlock("span",wD,t.toDisplayString(t.unref(o).getDisplayName(ae.name)),1)),ae.instance_name?(t.openBlock(),t.createElementBlock("span",kD,t.toDisplayString(t.unref(o).getDisplayName(ae.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:ae})=>[q(ae).length>0?(t.openBlock(),t.createBlock(U,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(q(ae),pe=>(t.openBlock(),t.createBlock(t.unref(fe.PermissionsWrapper),{key:pe.badgeText,"auth-function":()=>E(pe.type,ae),"force-show":""},{default:t.withCtx(({isAllowed:Se})=>[t.createVNode(ee,{class:t.normalizeClass(Se||"disabled"),onClick:t.withModifiers(Ne=>Se&&pe.type&&te(pe.type,ae),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(pe.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",CD,"-"))]),enabled:t.withCtx(({row:ae})=>[t.createVNode(t.unref(fe.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(ae)&&await e.canToggle(ae)),"force-show":""},{default:t.withCtx(({isAllowed:pe})=>{var Se,Ne;return[t.createElementVNode("div",{onClick:z[3]||(z[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(me,{disabled:!pe,"disabled-tooltip-text":!pe&&((Ne=(Se=e.config).getToggleDisabledTooltip)==null?void 0:Ne.call(Se,ae))||void 0,"model-value":ae.enabled,onClick:t.withModifiers(se=>pe&&K(ae),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:ae})=>[t.createVNode(ee,{appearance:t.unref(Cc)(ae)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Cc)(ae)?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:ae})=>[t.createVNode(t.unref(fe.TableTags),{tags:ae},null,8,["tags"])]),actions:t.withCtx(({row:ae})=>[t.createVNode(he,null,{default:t.withCtx(({copyToClipboard:pe})=>[t.createVNode(ge,{"data-testid":"action-entity-copy-id",onClick:Se=>D(ae,pe)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(he,null,{default:t.withCtx(({copyToClipboard:pe})=>[t.createVNode(ge,{"data-testid":"action-entity-copy-json",onClick:Se=>L(ae,pe)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(fe.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(ae)},{default:t.withCtx(()=>[t.createVNode(ge,{"data-testid":"action-entity-view","has-divider":"",item:Z(ae)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(fe.PermissionsWrapper),{"auth-function":()=>e.canEdit(ae)},{default:t.withCtx(()=>[t.createVNode(ge,{"data-testid":"action-entity-edit",item:W(ae)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(h)?(t.openBlock(),t.createBlock(t.unref(fe.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(ae)},{default:t.withCtx(()=>[ne(ae)?(t.openBlock(),t.createBlock(ge,{key:0,"data-testid":"action-entity-config-dyn-order",item:ne(ae)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(fe.PermissionsWrapper),{"auth-function":()=>e.canDelete(ae)},{default:t.withCtx(()=>[t.createVNode(ge,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:pe=>le(ae)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!b.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var ae;return[t.createVNode(B,{"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:t.unref(a)("plugins.list.empty_state_v2.description"),title:t.unref(a)("plugins.list.empty_state_v2.title")},t.createSlots({icon:t.withCtx(()=>[t.createVNode(t.unref(Ce.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[x.value?(t.openBlock(),t.createBlock(X,{key:0,"data-testid":"entity-create-button",onClick:T},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(X,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:z[2]||(z[2]=pe=>A.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(ae=e.config)!=null&&ae.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),t.createVNode(t.unref(fe.EntityToggleModal),{action:R.value.action,"entity-id":R.value.id,"entity-name":R.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":M,visible:P.value,onCancel:V,onProceed:V},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(fe.EntityDeleteModal),{"action-pending":ye.value,description:t.unref(a)("delete.description"),"entity-name":ie.value&&(ie.value.instance_name||ie.value.name||ie.value.id),"entity-type":t.unref(fe.EntityTypes).Plugin,error:Q.value,title:t.unref(a)("delete.title"),visible:de.value,onCancel:ue,onProceed:ce},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-582a936c"]]),ND={class:"plugin-select-card-wrapper"},SD=["data-testid"],vD={class:"plugin-card-header"},xD={class:"plugin-card-title"},AD={key:0,class:"plugin-card-actions"},ID=["data-testid","title"],PD={key:0,class:"plugin-card-text"},TD={key:0},OD=["title"],es=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=so.useRouter(),{i18n:{t:a}}=Ve.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===Y.PluginGroup.CUSTOM_PLUGINS),h=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},_=(y,w)=>{const b=r.config;r.config.app==="konnect"&&typeof b.getCustomEditRoute=="function"&&b.getCustomEditRoute&&i.push(b.getCustomEditRoute(y,w))},g=()=>{if(!s.value&&r.config.app==="konnect"){const y=r.config;p.value&&y.createCustomRoute?i.push(y.createCustomRoute):m.value&&d()}};return(y,w)=>{const b=t.resolveComponent("KButton"),v=t.resolveComponent("KDropdownItem"),S=t.resolveComponent("KDropdownMenu"),N=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",ND,[t.createVNode(N,{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]=I=>s.value||m.value?void 0:f())},[t.createElementVNode("div",vD,[t.createElementVNode("div",xD,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",AD,[t.createVNode(S,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(b,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Ce.MoreIcon),{size:t.unref(Sk)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(v,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(I=>_(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(v,{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(fo.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",PD,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",TD,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,OD)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,ID),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,SD)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),$D=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}}=Ve.useI18n(),{getMessageFromError:l}=fe.useErrors(),{axiosInstance:s}=fe.useAxios((h=o.config)==null?void 0:h.axiosRequestConfig),c=t.computed(()=>{var _;return u.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((_=o.plugin)==null?void 0:_.name)||a("delete.custom_plugin")})}),d=t.ref(!1),f=t.ref(""),u=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const _=o.plugin.customPluginType==="streaming"?Le.select[o.config.app].streamingCustomPluginItem:Le.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${_}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var _,g,y,w;if(d.value=!0,f.value="",!(!((_=o.plugin)!=null&&_.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(b){const{response:v}=b;(v==null?void 0:v.status)===400&&((w=(y=v.data)==null?void 0:y.message)!=null&&w.includes("plugin schema is currently in use"))?u.value=!0:f.value=l(b)}finally{d.value=!1}};return(_,g)=>{const y=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!u.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(fe.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(fe.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[0]=b=>_.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(w,{key:1,"action-button-disabled":d.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:g[2]||(g[2]=b=>_.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(y,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[1]=b=>_.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),BD={class:"custom-plugins-grid"},VD={class:"empty-state-title"},RD={class:"empty-state-description"},ts=310,DD=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}}=Ve.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ve.usePluginHelpers(),s=t.ref(!0),c=S=>{r("plugin-clicked",S)},d=t.computed(()=>{if(o.config.app==="kongManager")return[];const S=JSON.parse(JSON.stringify(o.pluginList))[Y.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:Y.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(S):S}),f=t.ref(!1),u=t.ref(null),p=S=>{f.value=!0,u.value={id:S.id,name:S.name,customPluginType:S.customPluginType}},m=S=>{var N;S&&(r("revalidate"),r("delete:success",((N=u.value)==null?void 0:N.name)||"")),f.value=!1,u.value=null},h=t.ref(ts),_=t.ref(null),g=t.ref(null),y=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${h.value}px`}:{}),w=t.ref(!1),b=()=>{h.value=Math.max(a(g.value),ts),v()},v=()=>{var S,N;(S=g.value)!=null&&S.length&&(w.value=l(_.value,(N=g.value)==null?void 0:N.length))};return t.onMounted(async()=>{await t.nextTick(),h.value=Math.max(a(g.value),ts),v(),window==null||window.addEventListener("resize",b)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",b)}),(S,N)=>{const I=t.resolveComponent("KEmptyState"),O=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",BD,[d.value.length?(t.openBlock(),t.createBlock(O,{key:1,modelValue:s.value,"onUpdate:modelValue":N[0]||(N[0]=F=>s.value=F),class:"custom-plugins-collapse","data-testid":`${t.unref(Y.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(Y.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:_,class:"plugin-card-container",style:t.normalizeStyle(y.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(d.value,(F,H)=>(t.openBlock(),t.createBlock(es,{key:`plugin-card-${H}`,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:F,onCustomPluginDelete:q=>p(F),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(()=>[N[2]||(N[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(I,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",VD,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",RD,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&u.value?(t.openBlock(),t.createBlock($D,{key:2,config:e.config,plugin:u.value,onClosed:m,onProceed:N[1]||(N[1]=F=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),ns=310,Bm=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}}=Ve.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ve.usePluginHelpers(),c=t.ref(ns),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),ns),h()},h=()=>{var _,g;(_=f.value)!=null&&_.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),ns),h(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(_,g)=>{const y=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(y,{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(es,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:b=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[g[1]||(g[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),MD={class:"plugin-select-grid"},FD={class:"empty-state-title"},LD={class:"empty-state-description"},os=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ve.useI18n(),a=t.ref(!1),l=t.ref(ls),s=d=>{r("plugin-clicked",d)},c=t.computed(()=>{const d=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete d[Y.PluginGroup.CUSTOM_PLUGINS],d});return(d,f)=>{const u=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",MD,[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",FD,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",LD,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(Bm,{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(as),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Bm,{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))])}}}),UD={class:"kong-ui-entities-plugin-select-form"},KD={class:"plugins-filter-input-container"},jD={key:0},qD={key:3,"aria-live":"polite",class:"plugins-results-container"},GD={"data-testid":"kong-tab"},zD={class:"tab-description"},HD={"data-testid":"custom-tab"},YD={class:"tab-description"},WD=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 D;const o=e,r=n,i=so.useRoute(),a=so.useRouter(),{i18n:{t:l}}=Ve.useI18n(),{pluginMetaData:s}=Ve.usePluginMetaData(),{getMessageFromError:c}=fe.useErrors(),{sortAlpha:d,objectsAreEqual:f}=fe.useHelpers(),u=t.ref(""),p=t.ref(!0),m=t.ref(!1),h=t.ref(""),_=t.ref([]),g=t.ref([]),y=t.ref({}),w=t.ref([]),{axiosInstance:b}=fe.useAxios((D=o.config)==null?void 0:D.axiosRequestConfig),v=t.computed(()=>y.value?Object.entries(y.value).filter(([L])=>L!==Y.PluginGroup.CUSTOM_PLUGINS).reduce((L,[,j])=>{for(const Z of j)L[Z.id]=Z;return L},{}):{}),S=t.computed(()=>{var Z;if(!y.value)return{};const L=u.value.toLowerCase(),j=JSON.parse(JSON.stringify(y.value));for(const W in y.value){const ne=((Z=y.value[W])==null?void 0:Z.filter(ie=>ie.name.toLowerCase().includes(L)||ie.id.toLowerCase().includes(L)||ie.group.toLowerCase().includes(L)))||[];ne.length?j[W]=ne:delete j[W]}return j}),N=t.computed(()=>o.highlightedPluginIds.reduce((L,j)=>{const Z=v.value[j];return Z&&L.push(Z),L},[])),I=t.computed(()=>Object.keys(S.value).length>0),O=t.computed(()=>Object.keys(y.value).length>0&&!I.value),F=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)}]:[]),H=t.computed(()=>{var j;let L=F.value.length&&((i==null?void 0:i.hash)||((j=F.value[0])==null?void 0:j.hash))||"";return L==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(L="#kong"),L}),q=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),..._.value])].filter(L=>!o.ignoredPlugins.includes(L)).filter(L=>o.config.entityType&&(o.config.entityType==="services"&&s[L]&&!s[L].scope.includes(Y.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[L]&&!s[L].scope.includes(Y.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[L]&&!s[L].scope.includes(Y.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[L]&&!s[L].scope.includes(Y.PluginScope.CONSUMER))?!1:L).reduce((L,j)=>{var de;const Z=s[j]&&s[j].name||j,W={...s[j],id:j,name:Z,available:_.value.includes(j),disabledMessage:"",group:((de=s[j])==null?void 0:de.group)||Y.PluginGroup.CUSTOM_PLUGINS};W.group===Y.PluginGroup.CUSTOM_PLUGINS&&(W.customPluginType=g.value.find(ye=>ye.name===j)?"streaming":"schema"),o.disabledPlugins&&(W.disabledMessage=o.disabledPlugins[j]);const ne=W.group||l("plugins.select.misc_plugins");let ie=L[ne];return ie||(ie=[]),ie.push(W),ie.sort(d("name")),L[ne]=ie,L},{}),E=t.computed(()=>{var j;let L=`${o.config.apiBaseUrl}${Le.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(L=((j=o.config.gatewayInfo)==null?void 0:j.edition)==="community"?`${o.config.apiBaseUrl}${Le.select[o.config.app].availablePluginsForOss}`:L.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),L}),te=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let L=`${o.config.apiBaseUrl}${Le.select[o.config.app].streamingCustomPlugins}`;return L=L.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),L}return null}),P=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let L=`${o.config.apiBaseUrl}${Le.list[o.config.app].forEntity}`;return o.config.app==="konnect"?L=L.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(L=L.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),L.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),G=L=>{a.replace({hash:L,query:i.query})};t.watch(()=>o.disabledPlugins,(L,j)=>{!f(L,j)&&!p.value&&(y.value=q())}),t.watch(()=>o.ignoredPlugins,(L,j)=>{!f(L,j)&&!p.value&&(y.value=q())}),t.watch(p,L=>{r("loading",L)});const R=t.ref(!1),K=t.ref(!1),V=t.ref(!1);t.onBeforeMount(async()=>{R.value=await o.canCreateCustomPlugin(),K.value=await o.canEditCustomPlugin(),V.value=await o.canDeleteCustomPlugin()});const M=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var L,j;(j=(L=M.value)==null?void 0:L.input)==null||j.focus();try{const{data:Z}=await b.get(E.value);if(o.config.app==="konnect"){const{names:W}=Z;if(_.value=W||[],te.value){const{data:ne}=await b.get(te.value);g.value=ne.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:W}}=Z;_.value=W?Object.keys(W):[]}}catch(Z){m.value=!0,h.value=c(Z)}if(P.value)try{const{data:{data:Z}}=await b.get(P.value);if(Z!=null&&Z.length){const W=Z.reduce((ne,ie)=>(ie.name&&ne.push(ie.name),ne),[]);w.value=w.value.concat(W)}}catch{}m.value||(y.value=q()),p.value=!1}),(L,j)=>{const Z=t.resolveComponent("KInput"),W=t.resolveComponent("KSkeletonBox"),ne=t.resolveComponent("KSkeleton"),ie=t.resolveComponent("KEmptyState"),de=t.resolveComponent("KTooltip"),ye=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",UD,[t.createElementVNode("div",KD,[t.createVNode(Z,{ref:"filter-input",modelValue:u.value,"onUpdate:modelValue":j[0]||(j[0]=Q=>u.value=Q),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",jD,[t.createVNode(W,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(ne,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(ie,{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})):O.value&&u.value?(t.openBlock(),t.createBlock(ie,{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",qD,[F.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(ye,{key:0,modelValue:H.value,"onUpdate:modelValue":j[5]||(j[5]=Q=>H.value=Q),"data-testid":"plugins-tabs",tabs:F.value,onChange:G},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",GD,[t.createElementVNode("p",zD,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(os,{config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":N.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":S.value,onPluginClicked:j[1]||(j[1]=Q=>L.$emit("plugin-clicked",Q))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",HD,[t.renderSlot(L.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",YD,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(DD,{"can-create-custom-plugin":R.value,"can-delete-custom-plugin":V.value,"can-edit-custom-plugin":K.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":S.value,"onDelete:success":j[2]||(j[2]=Q=>L.$emit("delete-custom:success",Q)),onPluginClicked:j[3]||(j[3]=Q=>L.$emit("plugin-clicked",Q)),onRevalidate:j[4]||(j[4]=()=>y.value=q())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(de,{"max-width":"300",text:t.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(os,{key:1,config:e.config,"hide-highlighted-plugins":u.value.length>0,"highlighted-plugins":N.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":S.value,onPluginClicked:j[6]||(j[6]=Q=>L.$emit("plugin-clicked",Q))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-7b1adaaa"]]),XD={class:"datakit-config-card-canvas"},ZD={class:"config-card-details-label","data-testid":"datakit-configuration-label"},JD={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},QD={class:"canvas-wrapper"},eM=we(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return yu(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",XD,[t.createElementVNode("div",ZD,[t.createVNode(r,null,{default:t.withCtx(()=>o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])),_:1,__:[0]})]),t.createElementVNode("div",JD,[t.createElementVNode("div",QD,[t.createVNode(Jl,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),tM={class:"kong-ui-entity-plugin-config-card"},nM={class:"name-cell-wrapper"},oM={class:"info-name"},rM={key:0},iM={key:0},aM={key:0},lM={key:0},sM={key:0},rs="config",cM=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 N;const o=n,r=e,{i18n:{t:i}}=Ve.useI18n(),a=Ve.usePluginMetaData(),{setFieldType:l}=Ve.usePluginHelpers(),{getPropValue:s}=fe.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),d=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var O;let I=(O=Le.item[r.config.app])==null?void 0:O[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const F=r.expandPartial?"&":"?";I=I.concat(`${F}__ui_data=true`)}return I}),u=t.computed(()=>{var F,H;const I={},O=((F=b.value)==null?void 0:F.fields)||[];for(let q=0;q<O.length;q++){const E=b.value.fields[q],te=(H=Object.keys(E))==null?void 0:H[0];l(I,te,E[te])}return{...I,instance_name:{section:fe.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:fe.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:fe.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:fe.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:fe.ConfigurationSchemaSection.Basic,order:6},protocols:{type:fe.ConfigurationSchemaType.BadgeTag,section:fe.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var O,F,H;if(!((O=b.value)!=null&&O.fields))return[];const I=(F=b.value.fields)==null?void 0:F.find(q=>{var te;return((te=Object.keys(q))==null?void 0:te[0])===rs});return((H=I==null?void 0:I[rs])==null?void 0:H.fields)||[]}),m=t.computed(()=>{var O,F;const I={};if(!p.value)return I;for(let H=0;H<((O=p.value)==null?void 0:O.length);H++){const q=p.value[H],E=(F=Object.keys(q))==null?void 0:F[0],te=q[E];te.required&&(I[E]={order:1}),l(I,E,te)}return I}),h=I=>{var F;const O=(F=a.pluginMetaData[r.config.pluginType])==null?void 0:F.scope;return O?Object.fromEntries(Object.entries(I).filter(([H,q])=>q?!0:!(H==="service"&&!O.includes(Y.PluginScope.SERVICE)||H==="route"&&!O.includes(Y.PluginScope.ROUTE)||H==="consumer"&&!O.includes(Y.PluginScope.CONSUMER)||H==="consumer_group"&&!O.includes(Y.PluginScope.CONSUMER_GROUP)))):I},_=I=>Co(I,"__ui_data"),{getMessageFromError:g}=fe.useErrors(),{axiosInstance:y}=fe.useAxios((N=r.config)==null?void 0:N.axiosRequestConfig),w=t.computed(()=>{var O,F;let I=`${r.config.apiBaseUrl}${Le.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?I=I.replace(/{controlPlaneId}/gi,((O=r.config)==null?void 0:O.controlPlaneId)||""):r.config.app==="kongManager"&&(I=I.replace(/\/{workspace}/gi,(F=r.config)!=null&&F.workspace?`/${r.config.workspace}`:"")),I=I.replace(/{plugin}/gi,r.config.pluginType),I}),b=t.ref({});fe.useSchemaProvider(b);const v=t.ref(!1),S=t.ref("");return t.onBeforeMount(async()=>{v.value=!0;try{const{data:I}=await y.get(w.value);b.value=I}catch(I){S.value=g(I),o("error:fetch-schema",I)}finally{v.value=!1}}),(I,O)=>{const F=t.resolveComponent("KSkeleton"),H=t.resolveComponent("KEmptyState"),q=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",tM,[v.value?(t.openBlock(),t.createBlock(F,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):S.value?(t.openBlock(),t.createBlock(H,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(S.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(fe.EntityBaseConfigCard),{key:2,"code-block-record-formatter":_,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":u.value,"entity-type":t.unref(fe.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":rs,"plugin-config-schema":m.value,"record-resolver":h,"onFetch:error":O[0]||(O[0]=E=>I.$emit("fetch:error",E)),"onFetch:success":O[1]||(O[1]=E=>I.$emit("fetch:success",E)),onLoading:O[2]||(O[2]=E=>I.$emit("loading",E))},t.createSlots({name:t.withCtx(E=>[t.createElementVNode("div",nM,[t.createVNode(t.unref(fo.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",E),size:24},null,8,["name"]),t.createElementVNode("span",oM,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",E))),1)])]),consumer:t.withCtx(E=>[t.unref(s)("rowValue",E)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(fe.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",E).id,value:t.unref(s)("rowValue",E).id,type:t.unref(fe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(s)("rowValue",E).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(q,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",E).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",E).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",rM,"–"))]),route:t.withCtx(E=>[t.unref(s)("rowValue",E)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(fe.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",E).id,value:t.unref(s)("rowValue",E).id,type:t.unref(fe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(s)("rowValue",E).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(q,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",E).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",E).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",iM,"–"))]),service:t.withCtx(E=>[t.unref(s)("rowValue",E)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(fe.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",E).id,value:t.unref(s)("rowValue",E).id,type:t.unref(fe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(s)("rowValue",E).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(q,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",E).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",E).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",aM,"–"))]),consumer_group:t.withCtx(E=>[t.unref(s)("rowValue",E)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(fe.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",E).id,value:t.unref(s)("rowValue",E).id,type:t.unref(fe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>I.$emit("navigation-click",t.unref(s)("rowValue",E).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(q,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",E).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",E).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",lM,"–"))]),partials:t.withCtx(E=>{var te,P,G,R,K,V,M,D,L;return[t.unref(s)("rowValue",E)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(fe.InternalLinkItem),{key:1,item:{key:(P=(te=t.unref(s)("rowValue",E))==null?void 0:te[0])==null?void 0:P.id,value:((R=(G=t.unref(s)("rowValue",E))==null?void 0:G[0])==null?void 0:R.id)+((V=(K=t.unref(s)("rowValue",E))==null?void 0:K[0])!=null&&V.name?"/"+((D=(M=t.unref(s)("rowValue",E))==null?void 0:M[0])==null?void 0:D.name):""),type:t.unref(fe.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var j,Z;return I.$emit("navigation-click",(Z=(j=t.unref(s)("rowValue",E))==null?void 0:j[0])==null?void 0:Z.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(q,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",E).label}),"data-testid":"partial-copy-uuid",text:(L=t.unref(s)("rowValue",E))==null?void 0:L[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",sM,"–"))]}),_:2},[d.value?{name:"config-card-item-nodes",fn:t.withCtx(E=>[t.createVNode(eM,{"plugin-data":E.record},null,8,["plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-a5302acb"]]),{usePluginMetaData:dM,useProvideExperimentalFreeForms:uM}=Ve;Object.defineProperty(ke,"PluginGroup",{enumerable:!0,get:()=>Y.PluginGroup}),Object.defineProperty(ke,"PluginScope",{enumerable:!0,get:()=>Y.PluginScope}),Object.defineProperty(ke,"PluginIcon",{enumerable:!0,get:()=>fo.PluginIcon}),Object.defineProperty(ke,"getPluginIconURL",{enumerable:!0,get:()=>fo.getPluginIconURL}),ke.EXPERIMENTAL_FREE_FORM_PROVIDER=ha,ke.EntityTypeIdField=an,ke.FEATURE_FLAGS=Eo,ke.PLUGIN_GROUPS_COLLAPSE_STATUS=ls,ke.PluginConfigCard=cM,ke.PluginForm=mD,ke.PluginGroupArray=as,ke.PluginList=ED,ke.PluginPartialType=hr,ke.PluginSelect=WD,ke.PluginSelectCard=es,ke.PluginSelectGrid=os,ke.TOASTER_PROVIDER=vc,ke.pluginEndpoints=Le,ke.usePluginMetaData=dM,ke.useProvideExperimentalFreeForms=uM,Object.defineProperty(ke,Symbol.toStringTag,{value:"Module"})});
144
+ Edge: ${e}`,USEVUEFLOW_OPTIONS:()=>"The options parameter is deprecated and will be removed in the next major version. Please use the id parameter instead"};class at extends Error{constructor(n,...o){var r;super((r=Jf[n])==null?void 0:r.call(Jf,...o)),this.name="VueFlowError",this.code=n,this.args=o}}function Rl(e){return"clientX"in e}function EA(e){return"sourceEvent"in e}function Kt(e,n){const o=Rl(e);let r,i;return o?(r=e.clientX,i=e.clientY):"touches"in e&&e.touches.length>0?(r=e.touches[0].clientX,i=e.touches[0].clientY):"changedTouches"in e&&e.changedTouches.length>0?(r=e.changedTouches[0].clientX,i=e.changedTouches[0].clientY):(r=0,i=0),{x:r-((n==null?void 0:n.left)??0),y:i-((n==null?void 0:n.top)??0)}}const ki=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function NA(e){var n,o;return{width:((n=e.dimensions)==null?void 0:n.width)??e.width??0,height:((o=e.dimensions)==null?void 0:o.height)??e.height??0}}function Ci(e,n=[1,1]){return{x:n[0]*Math.round(e.x/n[0]),y:n[1]*Math.round(e.y/n[1])}}const SA=()=>!0;function Dl(e){e==null||e.classList.remove("valid","connecting","vue-flow__handle-valid","vue-flow__handle-connecting")}function vA(e,n,o){const r=[],i={x:e.x-o,y:e.y-o,width:o*2,height:o*2};for(const a of n.values())_i(i,yi(a))>0&&r.push(a);return r}const xA=250;function AA(e,n,o,r){var i,a;let l=[],s=Number.POSITIVE_INFINITY;const c=vA(e,o,n+xA);for(const u of c){const f=[...((i=u.handleBounds)==null?void 0:i.source)??[],...((a=u.handleBounds)==null?void 0:a.target)??[]];for(const d of f){if(r.nodeId===d.nodeId&&r.type===d.type&&r.id===d.id)continue;const{x:p,y:m}=fo(u,d,d.position,!0),y=Math.sqrt((p-e.x)**2+(m-e.y)**2);y>n||(y<s?(l=[{...d,x:p,y:m}],s=y):y===s&&l.push({...d,x:p,y:m}))}}if(!l.length)return null;if(l.length>1){const u=r.type==="source"?"target":"source";return l.find(f=>f.type===u)??l[0]}return l[0]}function Qf(e,{handle:n,connectionMode:o,fromNodeId:r,fromHandleId:i,fromType:a,doc:l,lib:s,flowId:c,isValidConnection:u=SA},f,d,p){const m=a==="target",y=n?l.querySelector(`.${s}-flow__handle[data-id="${c}-${n==null?void 0:n.nodeId}-${n==null?void 0:n.id}-${n==null?void 0:n.type}"]`):null,{x:b,y:g}=Kt(e),h=l.elementFromPoint(b,g),w=h!=null&&h.classList.contains(`${s}-flow__handle`)?h:y,_={handleDomNode:w,isValid:!1,connection:null,toHandle:null};if(w){const k=ep(void 0,w),E=w.getAttribute("data-nodeid"),C=w.getAttribute("data-handleid"),N=w.classList.contains("connectable"),I=w.classList.contains("connectableend");if(!E||!k)return _;const D={source:m?E:r,sourceHandle:m?C:i,target:m?r:E,targetHandle:m?i:C};_.connection=D;const K=N&&I&&(o===cn.Strict?m&&k==="source"||!m&&k==="target":E!==r||C!==i);_.isValid=K&&u(D,{nodes:d,edges:f,sourceNode:p(r),targetNode:p(E)}),_.toHandle=n}return _}function ep(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function IA(e,n){let o=null;return n?o="valid":e&&!n&&(o="invalid"),o}function PA(e,n){let o=null;return n?o=!0:e&&!n&&(o=!1),o}function TA(e,n,o,r,i,a=!1){var l,s,c;const u=r.get(e);if(!u)return null;const f=i===cn.Strict?(l=u.handleBounds)==null?void 0:l[n]:[...((s=u.handleBounds)==null?void 0:s.source)??[],...((c=u.handleBounds)==null?void 0:c.target)??[]],d=(o?f==null?void 0:f.find(p=>p.id===o):f==null?void 0:f[0])??null;return d&&a?{...d,...fo(u,d,d.position,!0)}:d}const Ml={[ke.Left]:ke.Right,[ke.Right]:ke.Left,[ke.Top]:ke.Bottom,[ke.Bottom]:ke.Top},OA=["production","prod"];function Ei(e,...n){tp()&&console.warn(`[Vue Flow]: ${e}`,...n)}function tp(){return!OA.includes(process.env.NODE_ENV||"")}function np(e,n,o,r,i){const a=n.querySelectorAll(`.vue-flow__handle.${e}`);return a!=null&&a.length?Array.from(a).map(l=>{const s=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:i,position:l.getAttribute("data-handlepos"),x:(s.left-o.left)/r,y:(s.top-o.top)/r,...bi(l)}}):null}function Ll(e,n,o,r,i,a=!1,l){i.value=!1,e.selected?(a||e.selected&&n)&&(r([e]),t.nextTick(()=>{l.blur()})):o([e])}function et(e){return typeof t.unref(e)<"u"}function $A(e,n,o,r){if(!e||!e.source||!e.target)return o(new at(Qe.EDGE_INVALID,(e==null?void 0:e.id)??"[ID UNKNOWN]")),!1;let i;return dn(e)?i=e:i={...e,id:Rf(e)},i=Bf(i,void 0,r),pA(i,n)?!1:i}function BA(e,n,o,r,i){if(!n.source||!n.target)return i(new at(Qe.EDGE_INVALID,e.id)),!1;if(!o)return i(new at(Qe.EDGE_NOT_FOUND,e.id)),!1;const{id:a,...l}=e;return{...l,id:r?Rf(n):a,source:n.source,target:n.target,sourceHandle:n.sourceHandle,targetHandle:n.targetHandle}}function op(e,n,o){const r={},i=[];for(let a=0;a<e.length;++a){const l=e[a];if(!Bn(l)){o(new at(Qe.NODE_INVALID,l==null?void 0:l.id)||`[ID UNKNOWN|INDEX ${a}]`);continue}const s=dA(l,n(l.id),l.parentNode);l.parentNode&&(r[l.parentNode]=!0),i[a]=s}for(const a of i){const l=n(a.parentNode)||i.find(s=>s.id===a.parentNode);a.parentNode&&!l&&o(new at(Qe.NODE_MISSING_PARENT,a.id,a.parentNode)),(a.parentNode||r[a.id])&&(r[a.id]&&(a.isParent=!0),l&&(l.isParent=!0))}return i}function rp(e,n,o,r,i,a){let l=i;const s=r.get(l)||new Map;r.set(l,s.set(o,n)),l=`${i}-${e}`;const c=r.get(l)||new Map;if(r.set(l,c.set(o,n)),a){l=`${i}-${e}-${a}`;const u=r.get(l)||new Map;r.set(l,u.set(o,n))}}function Fl(e,n,o){e.clear();for(const r of o){const{source:i,target:a,sourceHandle:l=null,targetHandle:s=null}=r,c={edgeId:r.id,source:i,target:a,sourceHandle:l,targetHandle:s},u=`${i}-${l}--${a}-${s}`,f=`${a}-${s}--${i}-${l}`;rp("source",c,f,e,i,l),rp("target",c,u,e,a,s)}}function ip(e,n){if(e.size!==n.size)return!1;for(const o of e)if(!n.has(o))return!1;return!0}function Ul(e,n,o,r,i,a,l,s){const c=[];for(const u of e){const f=dn(u)?u:$A(u,s,i,a);if(!f)continue;const d=o(f.source),p=o(f.target);if(!d||!p){i(new at(Qe.EDGE_SOURCE_TARGET_MISSING,f.id,f.source,f.target));continue}if(!d){i(new at(Qe.EDGE_SOURCE_MISSING,f.id,f.source));continue}if(!p){i(new at(Qe.EDGE_TARGET_MISSING,f.id,f.target));continue}if(n&&!n(f,{edges:s,nodes:l,sourceNode:d,targetNode:p})){i(new at(Qe.EDGE_INVALID,f.id));continue}const m=r(f.id);c.push({...Bf(f,m,a),sourceNode:d,targetNode:p})}return c}const ap=Symbol("vueFlow"),lp=Symbol("nodeId"),sp=Symbol("nodeRef"),VA=Symbol("edgeId"),RA=Symbol("edgeRef"),Ni=Symbol("slots");function cp(e){const{vueFlowRef:n,snapToGrid:o,snapGrid:r,noDragClassName:i,nodes:a,nodeExtent:l,nodeDragThreshold:s,viewport:c,autoPanOnNodeDrag:u,autoPanSpeed:f,nodesDraggable:d,panBy:p,findNode:m,multiSelectionActive:y,nodesSelectionActive:b,selectNodesOnDrag:g,removeSelectedElements:h,addSelectedNodes:w,updateNodePositions:_,emits:k}=Fe(),{onStart:E,onDrag:C,onStop:N,onClick:I,el:D,disabled:G,id:K,selectable:S,dragHandle:ne}=e,x=t.shallowRef(!1);let q=[],U,te=null,V={x:void 0,y:void 0},T={x:0,y:0},v=null,P=!1,A=0,Y=!1;const W=LA(),ie=({x:se,y:ue})=>{V={x:se,y:ue};let fe=!1;if(q=q.map(O=>{const B={x:se-O.distance.x,y:ue-O.distance.y},{computedPosition:F}=Vl(O,o.value?Ci(B,r.value):B,k.error,l.value,O.parentNode?m(O.parentNode):void 0);return fe=fe||O.position.x!==F.x||O.position.y!==F.y,O.position=F,O}),!!fe&&(_(q,!0,!0),x.value=!0,v)){const[O,B]=Bl({id:K,dragItems:q,findNode:m});C({event:v,node:O,nodes:B})}},oe=()=>{if(!te)return;const[se,ue]=Gf(T,te,f.value);if(se!==0||ue!==0){const fe={x:(V.x??0)-se/c.value.zoom,y:(V.y??0)-ue/c.value.zoom};p({x:se,y:ue})&&ie(fe)}A=requestAnimationFrame(oe)},de=(se,ue)=>{P=!0;const fe=m(K);!g.value&&!y.value&&fe&&(fe.selected||h()),fe&&t.toValue(S)&&g.value&&Ll(fe,y.value,w,h,b,!1,ue);const O=W(se.sourceEvent);if(V=O,q=yA(a.value,d.value,O,m,K),q.length){const[B,F]=Bl({id:K,dragItems:q,findNode:m});E({event:se.sourceEvent,node:B,nodes:F})}},he=(se,ue)=>{var fe;se.sourceEvent.type==="touchmove"&&se.sourceEvent.touches.length>1||(s.value===0&&de(se,ue),V=W(se.sourceEvent),te=((fe=n.value)==null?void 0:fe.getBoundingClientRect())||null,T=Kt(se.sourceEvent,te))},X=(se,ue)=>{const fe=W(se.sourceEvent);if(!Y&&P&&u.value&&(Y=!0,oe()),!P){const O=fe.xSnapped-(V.x??0),B=fe.ySnapped-(V.y??0);Math.sqrt(O*O+B*B)>s.value&&de(se,ue)}(V.x!==fe.xSnapped||V.y!==fe.ySnapped)&&q.length&&P&&(v=se.sourceEvent,T=Kt(se.sourceEvent,te),ie(fe))},ce=se=>{let ue=!1;if(!P&&!x.value&&!y.value){const fe=se.sourceEvent,O=W(fe),B=O.xSnapped-(V.x??0),F=O.ySnapped-(V.y??0),R=Math.sqrt(B*B+F*F);R!==0&&R<=s.value&&(I==null||I(fe),ue=!0)}if(q.length&&!ue){_(q,!1,!1);const[fe,O]=Bl({id:K,dragItems:q,findNode:m});N({event:se.sourceEvent,node:fe,nodes:O})}q=[],x.value=!1,Y=!1,P=!1,V={x:void 0,y:void 0},cancelAnimationFrame(A)};return t.watch([()=>t.toValue(G),D],([se,ue],fe,O)=>{if(ue){const B=Tt(ue);se||(U=cv().on("start",F=>he(F,ue)).on("drag",F=>X(F,ue)).on("end",F=>ce(F)).filter(F=>{const R=F.target,J=t.toValue(ne);return!F.button&&(!i.value||!Wf(R,`.${i.value}`,ue)&&(!J||Wf(R,J,ue)))}),B.call(U)),O(()=>{B.on(".drag",null),U&&(U.on("start",null),U.on("drag",null),U.on("end",null))})}}),x}function DA(){return{doubleClick:we(),click:we(),mouseEnter:we(),mouseMove:we(),mouseLeave:we(),contextMenu:we(),updateStart:we(),update:we(),updateEnd:we()}}function MA(e,n){const o=DA();return o.doubleClick.on(r=>{var i,a;n.edgeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.edgeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.edgeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.edgeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.edgeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.edgeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.updateStart.on(r=>{var i,a;n.edgeUpdateStart(r),(a=(i=e.events)==null?void 0:i.updateStart)==null||a.call(i,r)}),o.update.on(r=>{var i,a;n.edgeUpdate(r),(a=(i=e.events)==null?void 0:i.update)==null||a.call(i,r)}),o.updateEnd.on(r=>{var i,a;n.edgeUpdateEnd(r),(a=(i=e.events)==null?void 0:i.updateEnd)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function LA(){const{viewport:e,snapGrid:n,snapToGrid:o,vueFlowRef:r}=Fe();return i=>{var a;const l=((a=r.value)==null?void 0:a.getBoundingClientRect())??{left:0,top:0},s=EA(i)?i.sourceEvent:i,{x:c,y:u}=Kt(s,l),f=lr({x:c,y:u},e.value),{x:d,y:p}=o.value?Ci(f,n.value):f;return{xSnapped:d,ySnapped:p,...f}}}function Si(){return!0}function dp({handleId:e,nodeId:n,type:o,isValidConnection:r,edgeUpdaterType:i,onEdgeUpdate:a,onEdgeUpdateEnd:l}){const{id:s,vueFlowRef:c,connectionMode:u,connectionRadius:f,connectOnClick:d,connectionClickStartHandle:p,nodesConnectable:m,autoPanOnConnect:y,autoPanSpeed:b,findNode:g,panBy:h,startConnection:w,updateConnection:_,endConnection:k,emits:E,viewport:C,edges:N,nodes:I,isValidConnection:D,nodeLookup:G}=Fe();let K=null,S=!1,ne=null;function x(U){var te;const V=t.toValue(o)==="target",T=Rl(U),v=$f(U.target);if(T&&U.button===0||!T){let P=function($){O=Kt($,se),ie=AA(lr(O,C.value,!1,[1,1]),f.value,G.value,R),B||(F(),B=!0);const z=Qf($,{handle:ie,connectionMode:u.value,fromNodeId:t.toValue(n),fromHandleId:t.toValue(e),fromType:V?"target":"source",isValidConnection:W,doc:v,lib:"vue",flowId:s,nodeLookup:G.value},N.value,I.value,g);ne=z.handleDomNode,K=z.connection,S=PA(!!ie,z.isValid);const M={...L,isValid:S,to:z.toHandle&&S?Ol({x:z.toHandle.x,y:z.toHandle.y},C.value):O,toHandle:z.toHandle,toPosition:S&&z.toHandle?z.toHandle.position:Ml[R.position],toNode:z.toHandle?G.value.get(z.toHandle.nodeId):null};if(!(S&&ie&&(L!=null&&L.toHandle)&&M.toHandle&&L.toHandle.type===M.toHandle.type&&L.toHandle.nodeId===M.toHandle.nodeId&&L.toHandle.id===M.toHandle.id&&L.to.x===M.to.x&&L.to.y===M.to.y)){if(_(ie&&S?Ol({x:ie.x,y:ie.y},C.value):O,z.toHandle,IA(!!ie,S)),L=M,!ie&&!S&&!ne)return Dl(fe);K&&K.source!==K.target&&ne&&(Dl(fe),fe=ne,ne.classList.add("connecting","vue-flow__handle-connecting"),ne.classList.toggle("valid",!!S),ne.classList.toggle("vue-flow__handle-valid",!!S))}},A=function($){(ie||ne)&&K&&S&&(a?a($,K):E.connect(K)),E.connectEnd($),i&&(l==null||l($)),Dl(fe),cancelAnimationFrame(oe),k($),B=!1,S=!1,K=null,ne=null,v.removeEventListener("mousemove",P),v.removeEventListener("mouseup",A),v.removeEventListener("touchmove",P),v.removeEventListener("touchend",A)};const Y=g(t.toValue(n));let W=t.toValue(r)||D.value||Si;!W&&Y&&(W=(V?Y.isValidSourcePos:Y.isValidTargetPos)||Si);let ie,oe=0;const{x:de,y:he}=Kt(U),X=v==null?void 0:v.elementFromPoint(de,he),ce=ep(t.toValue(i),X),se=(te=c.value)==null?void 0:te.getBoundingClientRect();if(!se||!ce)return;const ue=TA(t.toValue(n),ce,t.toValue(e),G.value,u.value);if(!ue)return;let fe,O=Kt(U,se),B=!1;const F=()=>{if(!y.value)return;const[$,z]=Gf(O,se,b.value);h({x:$,y:z}),oe=requestAnimationFrame(F)},R={...ue,nodeId:t.toValue(n),type:ce,position:ue.position},J=G.value.get(t.toValue(n)),ae={inProgress:!0,isValid:null,from:fo(J,R,ke.Left,!0),fromHandle:R,fromPosition:R.position,fromNode:J,to:O,toHandle:null,toPosition:Ml[R.position],toNode:null};w({nodeId:t.toValue(n),id:t.toValue(e),type:ce,position:(X==null?void 0:X.getAttribute("data-handlepos"))||ke.Top,...O},{x:de-se.left,y:he-se.top}),E.connectStart({event:U,nodeId:t.toValue(n),handleId:t.toValue(e),handleType:ce});let L=ae;v.addEventListener("mousemove",P),v.addEventListener("mouseup",A),v.addEventListener("touchmove",P),v.addEventListener("touchend",A)}}function q(U){var te,V;if(!d.value)return;const T=t.toValue(o)==="target";if(!p.value){E.clickConnectStart({event:U,nodeId:t.toValue(n),handleId:t.toValue(e)}),w({nodeId:t.toValue(n),type:t.toValue(o),id:t.toValue(e),position:ke.Top,...Kt(U)},void 0,!0);return}let v=t.toValue(r)||D.value||Si;const P=g(t.toValue(n));if(!v&&P&&(v=(T?P.isValidSourcePos:P.isValidTargetPos)||Si),P&&(typeof P.connectable>"u"?m.value:P.connectable)===!1)return;const A=$f(U.target),Y=Qf(U,{handle:{nodeId:t.toValue(n),id:t.toValue(e),type:t.toValue(o),position:ke.Top,...Kt(U)},connectionMode:u.value,fromNodeId:p.value.nodeId,fromHandleId:p.value.id??null,fromType:p.value.type,isValidConnection:v,doc:A,lib:"vue",flowId:s,nodeLookup:G.value},N.value,I.value,g),W=((te=Y.connection)==null?void 0:te.source)===((V=Y.connection)==null?void 0:V.target);Y.isValid&&Y.connection&&!W&&E.connect(Y.connection),E.clickConnectEnd(U),k(U,!0)}return{handlePointerDown:x,handleClick:q}}function FA(){return t.inject(lp,"")}function up(e){const n=e??FA()??"",o=t.inject(sp,t.ref(null)),{findNode:r,edges:i,emits:a}=Fe(),l=r(n);return l||a.error(new at(Qe.NODE_NOT_FOUND,n)),{id:n,nodeEl:o,node:l,parentNode:t.computed(()=>r(l.parentNode)),connectedEdges:t.computed(()=>Ff([l],i.value))}}function UA(){return{doubleClick:we(),click:we(),mouseEnter:we(),mouseMove:we(),mouseLeave:we(),contextMenu:we(),dragStart:we(),drag:we(),dragStop:we()}}function KA(e,n){const o=UA();return o.doubleClick.on(r=>{var i,a;n.nodeDoubleClick(r),(a=(i=e.events)==null?void 0:i.doubleClick)==null||a.call(i,r)}),o.click.on(r=>{var i,a;n.nodeClick(r),(a=(i=e.events)==null?void 0:i.click)==null||a.call(i,r)}),o.mouseEnter.on(r=>{var i,a;n.nodeMouseEnter(r),(a=(i=e.events)==null?void 0:i.mouseEnter)==null||a.call(i,r)}),o.mouseMove.on(r=>{var i,a;n.nodeMouseMove(r),(a=(i=e.events)==null?void 0:i.mouseMove)==null||a.call(i,r)}),o.mouseLeave.on(r=>{var i,a;n.nodeMouseLeave(r),(a=(i=e.events)==null?void 0:i.mouseLeave)==null||a.call(i,r)}),o.contextMenu.on(r=>{var i,a;n.nodeContextMenu(r),(a=(i=e.events)==null?void 0:i.contextMenu)==null||a.call(i,r)}),o.dragStart.on(r=>{var i,a;n.nodeDragStart(r),(a=(i=e.events)==null?void 0:i.dragStart)==null||a.call(i,r)}),o.drag.on(r=>{var i,a;n.nodeDrag(r),(a=(i=e.events)==null?void 0:i.drag)==null||a.call(i,r)}),o.dragStop.on(r=>{var i,a;n.nodeDragStop(r),(a=(i=e.events)==null?void 0:i.dragStop)==null||a.call(i,r)}),Object.entries(o).reduce((r,[i,a])=>(r.emit[i]=a.trigger,r.on[i]=a.on,r),{emit:{},on:{}})}function fp(){const{getSelectedNodes:e,nodeExtent:n,updateNodePositions:o,findNode:r,snapGrid:i,snapToGrid:a,nodesDraggable:l,emits:s}=Fe();return(c,u=!1)=>{const f=a.value?i.value[0]:5,d=a.value?i.value[1]:5,p=u?4:1,m=c.x*f*p,y=c.y*d*p,b=[];for(const g of e.value)if(g.draggable||l&&typeof g.draggable>"u"){const h={x:g.computedPosition.x+m,y:g.computedPosition.y+y},{computedPosition:w}=Vl(g,h,s.error,n.value,g.parentNode?r(g.parentNode):void 0);b.push({id:g.id,position:w,from:g.position,distance:{x:c.x,y:c.y},dimensions:g.dimensions})}o(b,!0,!1)}}const Kl=.1,jA=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2;function pn(){return Ei("Viewport not initialized yet."),Promise.resolve(!1)}const GA={zoomIn:pn,zoomOut:pn,zoomTo:pn,fitView:pn,setCenter:pn,fitBounds:pn,project:e=>e,screenToFlowCoordinate:e=>e,flowToScreenCoordinate:e=>e,setViewport:pn,setTransform:pn,getViewport:()=>({x:0,y:0,zoom:1}),getTransform:()=>({x:0,y:0,zoom:1}),viewportInitialized:!1};function qA(e){function n(r,i){return new Promise(a=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((i==null?void 0:i.interpolate)==="linear"?Zo:li).scaleBy(jl(e.d3Selection,i==null?void 0:i.duration,i==null?void 0:i.ease,()=>{a(!0)}),r):a(!1)})}function o(r,i,a,l){return new Promise(s=>{var c;const{x:u,y:f}=Of({x:-r,y:-i},e.translateExtent),d=co.translate(-u,-f).scale(a);e.d3Selection&&e.d3Zoom?(c=e.d3Zoom)==null||c.interpolate((l==null?void 0:l.interpolate)==="linear"?Zo:li).transform(jl(e.d3Selection,l==null?void 0:l.duration,l==null?void 0:l.ease,()=>{s(!0)}),d):s(!1)})}return t.computed(()=>e.d3Zoom&&e.d3Selection&&e.dimensions.width&&e.dimensions.height?{viewportInitialized:!0,zoomIn:i=>n(1.2,i),zoomOut:i=>n(1/1.2,i),zoomTo:(i,a)=>new Promise(l=>{e.d3Selection&&e.d3Zoom?e.d3Zoom.interpolate((a==null?void 0:a.interpolate)==="linear"?Zo:li).scaleTo(jl(e.d3Selection,a==null?void 0:a.duration,a==null?void 0:a.ease,()=>{l(!0)}),i):l(!1)}),setViewport:(i,a)=>o(i.x,i.y,i.zoom,a),setTransform:(i,a)=>o(i.x,i.y,i.zoom,a),getViewport:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),getTransform:()=>({x:e.viewport.x,y:e.viewport.y,zoom:e.viewport.zoom}),fitView:(i={padding:Kl,includeHiddenNodes:!1,duration:0})=>{var a,l;const s=[];for(const p of e.nodes)p.dimensions.width&&p.dimensions.height&&((i==null?void 0:i.includeHiddenNodes)||!p.hidden)&&(!((a=i.nodes)!=null&&a.length)||(l=i.nodes)!=null&&l.length&&i.nodes.includes(p.id))&&s.push(p);if(!s.length)return Promise.resolve(!1);const c=Mf(s),{x:u,y:f,zoom:d}=Uf(c,e.dimensions.width,e.dimensions.height,i.minZoom??e.minZoom,i.maxZoom??e.maxZoom,i.padding??Kl,i.offset);return o(u,f,d,i)},setCenter:(i,a,l)=>{const s=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:e.maxZoom,c=e.dimensions.width/2-i*s,u=e.dimensions.height/2-a*s;return o(c,u,s,l)},fitBounds:(i,a={padding:Kl})=>{const{x:l,y:s,zoom:c}=Uf(i,e.dimensions.width,e.dimensions.height,e.minZoom,e.maxZoom,a.padding);return o(l,s,c,a)},project:i=>lr(i,e.viewport,e.snapToGrid,e.snapGrid),screenToFlowCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x-a,y:i.y-l};return lr(s,e.viewport,e.snapToGrid,e.snapGrid)}return{x:0,y:0}},flowToScreenCoordinate:i=>{if(e.vueFlowRef){const{x:a,y:l}=e.vueFlowRef.getBoundingClientRect(),s={x:i.x+a,y:i.y+l};return Ol(s,e.viewport)}return{x:0,y:0}}}:GA)}function jl(e,n=0,o=jA,r=()=>{}){const i=typeof n=="number"&&n>0;return i||r(),i?e.transition().duration(n).ease(o).on("end",r):e}function zA(e,n,o){const r=t.effectScope(!0);return r.run(()=>{const i=()=>{r.run(()=>{let b,g,h=!!(o.nodes.value.length||o.edges.value.length);b=ro([e.modelValue,()=>{var w,_;return(_=(w=e.modelValue)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setElements(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=ro([o.nodes,o.edges,()=>o.edges.value.length,()=>o.nodes.value.length],([w,_])=>{var k;(k=e.modelValue)!=null&&k.value&&Array.isArray(e.modelValue.value)&&(b==null||b.pause(),e.modelValue.value=[...w,..._],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},a=()=>{r.run(()=>{let b,g,h=!!o.nodes.value.length;b=ro([e.nodes,()=>{var w,_;return(_=(w=e.nodes)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setNodes(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=ro([o.nodes,()=>o.nodes.value.length],([w])=>{var _;(_=e.nodes)!=null&&_.value&&Array.isArray(e.nodes.value)&&(b==null||b.pause(),e.nodes.value=[...w],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},l=()=>{r.run(()=>{let b,g,h=!!o.edges.value.length;b=ro([e.edges,()=>{var w,_;return(_=(w=e.edges)==null?void 0:w.value)==null?void 0:_.length}],([w])=>{w&&Array.isArray(w)&&(g==null||g.pause(),o.setEdges(w),!g&&!h&&w.length?h=!0:g==null||g.resume())}),g=ro([o.edges,()=>o.edges.value.length],([w])=>{var _;(_=e.edges)!=null&&_.value&&Array.isArray(e.edges.value)&&(b==null||b.pause(),e.edges.value=[...w],t.nextTick(()=>{b==null||b.resume()}))},{immediate:h}),t.onScopeDispose(()=>{b==null||b.stop(),g==null||g.stop()})})},s=()=>{r.run(()=>{t.watch(()=>n.maxZoom,()=>{n.maxZoom&&et(n.maxZoom)&&o.setMaxZoom(n.maxZoom)},{immediate:!0})})},c=()=>{r.run(()=>{t.watch(()=>n.minZoom,()=>{n.minZoom&&et(n.minZoom)&&o.setMinZoom(n.minZoom)},{immediate:!0})})},u=()=>{r.run(()=>{t.watch(()=>n.translateExtent,()=>{n.translateExtent&&et(n.translateExtent)&&o.setTranslateExtent(n.translateExtent)},{immediate:!0})})},f=()=>{r.run(()=>{t.watch(()=>n.nodeExtent,()=>{n.nodeExtent&&et(n.nodeExtent)&&o.setNodeExtent(n.nodeExtent)},{immediate:!0})})},d=()=>{r.run(()=>{t.watch(()=>n.applyDefault,()=>{et(n.applyDefault)&&(o.applyDefault.value=n.applyDefault)},{immediate:!0})})},p=()=>{r.run(()=>{const b=async g=>{let h=g;typeof n.autoConnect=="function"&&(h=await n.autoConnect(g)),h!==!1&&o.addEdges([h])};t.watch(()=>n.autoConnect,()=>{et(n.autoConnect)&&(o.autoConnect.value=n.autoConnect)},{immediate:!0}),t.watch(o.autoConnect,(g,h,w)=>{g?o.onConnect(b):o.hooks.value.connect.off(b),w(()=>{o.hooks.value.connect.off(b)})},{immediate:!0})})},m=()=>{const b=["id","modelValue","translateExtent","nodeExtent","edges","nodes","maxZoom","minZoom","applyDefault","autoConnect"];for(const g of Object.keys(n)){const h=g;if(!b.includes(h)){const w=t.toRef(()=>n[h]),_=o[h];t.isRef(_)&&r.run(()=>{t.watch(w,k=>{et(k)&&(_.value=k)},{immediate:!0})})}}};(()=>{i(),a(),l(),c(),s(),u(),f(),d(),p(),m()})()}),()=>r.stop()}function HA(){return{edgesChange:we(),nodesChange:we(),nodeDoubleClick:we(),nodeClick:we(),nodeMouseEnter:we(),nodeMouseMove:we(),nodeMouseLeave:we(),nodeContextMenu:we(),nodeDragStart:we(),nodeDrag:we(),nodeDragStop:we(),nodesInitialized:we(),miniMapNodeClick:we(),miniMapNodeDoubleClick:we(),miniMapNodeMouseEnter:we(),miniMapNodeMouseMove:we(),miniMapNodeMouseLeave:we(),connect:we(),connectStart:we(),connectEnd:we(),clickConnectStart:we(),clickConnectEnd:we(),paneReady:we(),init:we(),move:we(),moveStart:we(),moveEnd:we(),selectionDragStart:we(),selectionDrag:we(),selectionDragStop:we(),selectionContextMenu:we(),selectionStart:we(),selectionEnd:we(),viewportChangeStart:we(),viewportChange:we(),viewportChangeEnd:we(),paneScroll:we(),paneClick:we(),paneContextMenu:we(),paneMouseEnter:we(),paneMouseMove:we(),paneMouseLeave:we(),edgeContextMenu:we(),edgeMouseEnter:we(),edgeMouseMove:we(),edgeMouseLeave:we(),edgeDoubleClick:we(),edgeClick:we(),edgeUpdateStart:we(),edgeUpdate:we(),edgeUpdateEnd:we(),updateNodeInternals:we(),error:we(e=>Ei(e.message))}}function YA(e,n){t.onBeforeMount(()=>{for(const[o,r]of Object.entries(n.value)){const i=a=>{e(o,a)};r.fns.add(i),Wr(()=>{r.off(i)})}})}function pp(){return{vueFlowRef:null,viewportRef:null,nodes:[],edges:[],connectionLookup:new Map,nodeTypes:{},edgeTypes:{},initialized:!1,dimensions:{width:0,height:0},viewport:{x:0,y:0,zoom:1},d3Zoom:null,d3Selection:null,d3ZoomHandler:null,minZoom:.5,maxZoom:2,translateExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],nodeExtent:[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],selectionMode:Pl.Full,paneDragging:!1,preventScrolling:!0,zoomOnScroll:!0,zoomOnPinch:!0,zoomOnDoubleClick:!0,panOnScroll:!1,panOnScrollSpeed:.5,panOnScrollMode:rr.Free,paneClickDistance:0,panOnDrag:!0,edgeUpdaterRadius:10,onlyRenderVisibleElements:!1,defaultViewport:{x:0,y:0,zoom:1},nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,defaultMarkerColor:"#b1b1b7",connectionLineStyle:{},connectionLineType:null,connectionLineOptions:{type:On.Bezier,style:{}},connectionMode:cn.Loose,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectionPosition:{x:Number.NaN,y:Number.NaN},connectionRadius:20,connectOnClick:!0,connectionStatus:null,isValidConnection:null,snapGrid:[15,15],snapToGrid:!1,edgesUpdatable:!1,edgesFocusable:!0,nodesFocusable:!0,nodesConnectable:!0,nodesDraggable:!0,nodeDragThreshold:1,elementsSelectable:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,selectionKeyCode:"Shift",multiSelectionKeyCode:ki()?"Meta":"Control",zoomActivationKeyCode:ki()?"Meta":"Control",deleteKeyCode:"Backspace",panActivationKeyCode:"Space",hooks:HA(),applyDefault:!0,autoConnect:!1,fitViewOnInit:!1,fitViewOnInitDone:!1,noDragClassName:"nodrag",noWheelClassName:"nowheel",noPanClassName:"nopan",defaultEdgeOptions:void 0,elevateEdgesOnSelect:!1,elevateNodesOnSelect:!0,autoPanOnNodeDrag:!0,autoPanOnConnect:!0,autoPanSpeed:15,disableKeyboardA11y:!1,ariaLiveMessage:""}}const WA=["id","vueFlowRef","viewportRef","initialized","modelValue","nodes","edges","maxZoom","minZoom","translateExtent","hooks","defaultEdgeOptions"];function XA(e,n,o){const r=qA(e),i=O=>{const B=O??[];e.hooks.updateNodeInternals.trigger(B)},a=O=>fA(O,e.nodes,e.edges),l=O=>uA(O,e.nodes,e.edges),s=O=>Ff(O,e.edges),c=({id:O,type:B,nodeId:F})=>{var R;return Array.from(((R=e.connectionLookup.get(`${F}-${B}-${O??null}`))==null?void 0:R.values())??[])},u=O=>{if(O)return n.value.get(O)},f=O=>{if(O)return o.value.get(O)},d=(O,B,F)=>{var R,J;const j=[];for(const ae of O){const L={id:ae.id,type:"position",dragging:F,from:ae.from};if(B&&(L.position=ae.position,ae.parentNode)){const $=u(ae.parentNode);L.position={x:L.position.x-(((R=$==null?void 0:$.computedPosition)==null?void 0:R.x)??0),y:L.position.y-(((J=$==null?void 0:$.computedPosition)==null?void 0:J.y)??0)}}j.push(L)}j!=null&&j.length&&e.hooks.nodesChange.trigger(j)},p=O=>{if(!e.vueFlowRef)return;const B=e.vueFlowRef.querySelector(".vue-flow__transformationpane");if(!B)return;const F=window.getComputedStyle(B),{m22:R}=new window.DOMMatrixReadOnly(F.transform),J=[];for(const j of O){const ae=j,L=u(ae.id);if(L){const $=bi(ae.nodeElement);if(!!($.width&&$.height&&(L.dimensions.width!==$.width||L.dimensions.height!==$.height||ae.forceUpdate))){const M=ae.nodeElement.getBoundingClientRect();L.dimensions=$,L.handleBounds.source=np("source",ae.nodeElement,M,R,L.id),L.handleBounds.target=np("target",ae.nodeElement,M,R,L.id),J.push({id:L.id,type:"dimensions",dimensions:$})}}}!e.fitViewOnInitDone&&e.fitViewOnInit&&r.value.fitView().then(()=>{e.fitViewOnInitDone=!0}),J.length&&e.hooks.nodesChange.trigger(J)},m=(O,B)=>{const F=new Set,R=new Set;for(const ae of O)Bn(ae)?F.add(ae.id):dn(ae)&&R.add(ae.id);const J=fn(n.value,F,!0),j=fn(o.value,R);if(e.multiSelectionActive){for(const ae of F)J.push(un(ae,B));for(const ae of R)j.push(un(ae,B))}J.length&&e.hooks.nodesChange.trigger(J),j.length&&e.hooks.edgesChange.trigger(j)},y=O=>{if(e.multiSelectionActive){const B=O.map(F=>un(F.id,!0));e.hooks.nodesChange.trigger(B);return}e.hooks.nodesChange.trigger(fn(n.value,new Set(O.map(B=>B.id)),!0)),e.hooks.edgesChange.trigger(fn(o.value))},b=O=>{if(e.multiSelectionActive){const B=O.map(F=>un(F.id,!0));e.hooks.edgesChange.trigger(B);return}e.hooks.edgesChange.trigger(fn(o.value,new Set(O.map(B=>B.id)))),e.hooks.nodesChange.trigger(fn(n.value,new Set,!0))},g=O=>{m(O,!0)},h=O=>{const F=(O||e.nodes).map(R=>(R.selected=!1,un(R.id,!1)));e.hooks.nodesChange.trigger(F)},w=O=>{const F=(O||e.edges).map(R=>(R.selected=!1,un(R.id,!1)));e.hooks.edgesChange.trigger(F)},_=O=>{if(!O||!O.length)return m([],!1);const B=O.reduce((F,R)=>{const J=un(R.id,!1);return Bn(R)?F.nodes.push(J):F.edges.push(J),F},{nodes:[],edges:[]});B.nodes.length&&e.hooks.nodesChange.trigger(B.nodes),B.edges.length&&e.hooks.edgesChange.trigger(B.edges)},k=O=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([O,e.maxZoom]),e.minZoom=O},E=O=>{var B;(B=e.d3Zoom)==null||B.scaleExtent([e.minZoom,O]),e.maxZoom=O},C=O=>{var B;(B=e.d3Zoom)==null||B.translateExtent(O),e.translateExtent=O},N=O=>{e.nodeExtent=O,i()},I=O=>{var B;(B=e.d3Zoom)==null||B.clickDistance(O)},D=O=>{e.nodesDraggable=O,e.nodesConnectable=O,e.elementsSelectable=O},G=O=>{const B=O instanceof Function?O(e.nodes):O;!e.initialized&&!B.length||(e.nodes=op(B,u,e.hooks.error.trigger))},K=O=>{const B=O instanceof Function?O(e.edges):O;if(!e.initialized&&!B.length)return;const F=Ul(B,e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);Fl(e.connectionLookup,o.value,F),e.edges=F},S=O=>{const B=O instanceof Function?O([...e.nodes,...e.edges]):O;!e.initialized&&!B.length||(G(B.filter(Bn)),K(B.filter(dn)))},ne=O=>{let B=O instanceof Function?O(e.nodes):O;B=Array.isArray(B)?B:[B];const F=op(B,u,e.hooks.error.trigger),R=[];for(const J of F)R.push(zf(J));R.length&&e.hooks.nodesChange.trigger(R)},x=O=>{let B=O instanceof Function?O(e.edges):O;B=Array.isArray(B)?B:[B];const F=Ul(B,e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges),R=[];for(const J of F)R.push(zf(J));R.length&&e.hooks.edgesChange.trigger(R)},q=(O,B=!0,F=!1)=>{const R=O instanceof Function?O(e.nodes):O,J=Array.isArray(R)?R:[R],j=[],ae=[];function L(z){const M=s(z);for(const le of M)(!et(le.deletable)||le.deletable)&&ae.push(Yf(le.id,le.source,le.target,le.sourceHandle,le.targetHandle))}function $(z){const M=[];for(const le of e.nodes)le.parentNode===z&&M.push(le);if(M.length){for(const le of M)j.push(Hf(le.id));B&&L(M);for(const le of M)$(le.id)}}for(const z of J){const M=typeof z=="string"?u(z):z;M&&(et(M.deletable)&&!M.deletable||(j.push(Hf(M.id)),B&&L([M]),F&&$(M.id)))}ae.length&&e.hooks.edgesChange.trigger(ae),j.length&&e.hooks.nodesChange.trigger(j)},U=O=>{const B=O instanceof Function?O(e.edges):O,F=Array.isArray(B)?B:[B],R=[];for(const J of F){const j=typeof J=="string"?f(J):J;j&&(et(j.deletable)&&!j.deletable||R.push(Yf(typeof J=="string"?J:J.id,j.source,j.target,j.sourceHandle,j.targetHandle)))}e.hooks.edgesChange.trigger(R)},te=(O,B,F=!0)=>{const R=f(O.id);if(!R)return!1;const J=e.edges.indexOf(R),j=BA(O,B,R,F,e.hooks.error.trigger);if(j){const[ae]=Ul([j],e.isValidConnection,u,f,e.hooks.error.trigger,e.defaultEdgeOptions,e.nodes,e.edges);return e.edges=e.edges.map((L,$)=>$===J?ae:L),Fl(e.connectionLookup,o.value,[ae]),ae}return!1},V=(O,B,F={replace:!1})=>{const R=f(O);if(!R)return;const J=typeof B=="function"?B(R):B;R.data=F.replace?J:{...R.data,...J}},T=O=>qf(O,e.nodes),v=O=>{const B=qf(O,e.edges);return Fl(e.connectionLookup,o.value,B),B},P=(O,B,F={replace:!1})=>{const R=u(O);if(!R)return;const J=typeof B=="function"?B(R):B;F.replace?e.nodes.splice(e.nodes.indexOf(R),1,J):Object.assign(R,J)},A=(O,B,F={replace:!1})=>{const R=u(O);if(!R)return;const J=typeof B=="function"?B(R):B;R.data=F.replace?J:{...R.data,...J}},Y=(O,B,F=!1)=>{F?e.connectionClickStartHandle=O:e.connectionStartHandle=O,e.connectionEndHandle=null,e.connectionStatus=null,B&&(e.connectionPosition=B)},W=(O,B=null,F=null)=>{e.connectionStartHandle&&(e.connectionPosition=O,e.connectionEndHandle=B,e.connectionStatus=F)},ie=(O,B)=>{e.connectionPosition={x:Number.NaN,y:Number.NaN},e.connectionEndHandle=null,e.connectionStatus=null,B?e.connectionClickStartHandle=null:e.connectionStartHandle=null},oe=O=>{const B=cA(O),F=B?null:ar(O)?O:u(O.id);return!B&&!F?[null,null,B]:[B?O:yi(F),F,B]},de=(O,B=!0,F=e.nodes)=>{const[R,J,j]=oe(O);if(!R)return[];const ae=[];for(const L of F||e.nodes){if(!j&&(L.id===J.id||!L.computedPosition))continue;const $=yi(L),z=_i($,R);(B&&z>0||z>=Number(R.width)*Number(R.height))&&ae.push(L)}return ae},he=(O,B,F=!0)=>{const[R]=oe(O);if(!R)return!1;const J=_i(R,B);return F&&J>0||J>=Number(R.width)*Number(R.height)},X=O=>{const{viewport:B,dimensions:F,d3Zoom:R,d3Selection:J,translateExtent:j}=e;if(!R||!J||!O.x&&!O.y)return!1;const ae=co.translate(B.x+O.x,B.y+O.y).scale(B.zoom),L=[[0,0],[F.width,F.height]],$=R.constrain()(ae,L,j),z=e.viewport.x!==$.x||e.viewport.y!==$.y||e.viewport.zoom!==$.k;return R.transform(J,$),z},ce=O=>{const B=O instanceof Function?O(e):O,F=["d3Zoom","d3Selection","d3ZoomHandler","viewportRef","vueFlowRef","dimensions","hooks"];et(B.defaultEdgeOptions)&&(e.defaultEdgeOptions=B.defaultEdgeOptions);const R=B.modelValue||B.nodes||B.edges?[]:void 0;R&&(B.modelValue&&R.push(...B.modelValue),B.nodes&&R.push(...B.nodes),B.edges&&R.push(...B.edges),S(R));const J=()=>{et(B.maxZoom)&&E(B.maxZoom),et(B.minZoom)&&k(B.minZoom),et(B.translateExtent)&&C(B.translateExtent)};for(const j of Object.keys(B)){const ae=j,L=B[ae];![...WA,...F].includes(ae)&&et(L)&&(e[ae]=L)}cl(()=>e.d3Zoom).not.toBeNull().then(J),e.initialized||(e.initialized=!0)};return{updateNodePositions:d,updateNodeDimensions:p,setElements:S,setNodes:G,setEdges:K,addNodes:ne,addEdges:x,removeNodes:q,removeEdges:U,findNode:u,findEdge:f,updateEdge:te,updateEdgeData:V,updateNode:P,updateNodeData:A,applyEdgeChanges:v,applyNodeChanges:T,addSelectedElements:g,addSelectedNodes:y,addSelectedEdges:b,setMinZoom:k,setMaxZoom:E,setTranslateExtent:C,setNodeExtent:N,setPaneClickDistance:I,removeSelectedElements:_,removeSelectedNodes:h,removeSelectedEdges:w,startConnection:Y,updateConnection:W,endConnection:ie,setInteractive:D,setState:ce,getIntersectingNodes:de,getIncomers:a,getOutgoers:l,getConnectedEdges:s,getHandleConnections:c,isNodeIntersecting:he,panBy:X,fitView:O=>r.value.fitView(O),zoomIn:O=>r.value.zoomIn(O),zoomOut:O=>r.value.zoomOut(O),zoomTo:(O,B)=>r.value.zoomTo(O,B),setViewport:(O,B)=>r.value.setViewport(O,B),setTransform:(O,B)=>r.value.setTransform(O,B),getViewport:()=>r.value.getViewport(),getTransform:()=>r.value.getTransform(),setCenter:(O,B,F)=>r.value.setCenter(O,B,F),fitBounds:(O,B)=>r.value.fitBounds(O,B),project:O=>r.value.project(O),screenToFlowCoordinate:O=>r.value.screenToFlowCoordinate(O),flowToScreenCoordinate:O=>r.value.flowToScreenCoordinate(O),toObject:()=>{const O=[],B=[];for(const F of e.nodes){const{computedPosition:R,handleBounds:J,selected:j,dimensions:ae,isParent:L,resizing:$,dragging:z,events:M,...le}=F;O.push(le)}for(const F of e.edges){const{selected:R,sourceNode:J,targetNode:j,events:ae,...L}=F;B.push(L)}return JSON.parse(JSON.stringify({nodes:O,edges:B,position:[e.viewport.x,e.viewport.y],zoom:e.viewport.zoom,viewport:e.viewport}))},fromObject:O=>new Promise(B=>{const{nodes:F,edges:R,position:J,zoom:j,viewport:ae}=O;if(F&&G(F),R&&K(R),ae!=null&&ae.x&&(ae!=null&&ae.y)||J){const L=(ae==null?void 0:ae.x)||J[0],$=(ae==null?void 0:ae.y)||J[1],z=(ae==null?void 0:ae.zoom)||j||e.viewport.zoom;return cl(()=>r.value.viewportInitialized).toBe(!0).then(()=>{r.value.setViewport({x:L,y:$,zoom:z}).then(()=>{B(!0)})})}else B(!0)}),updateNodeInternals:i,viewportHelper:r,$reset:()=>{const O=pp();if(e.edges=[],e.nodes=[],e.d3Zoom&&e.d3Selection){const B=co.translate(O.defaultViewport.x??0,O.defaultViewport.y??0).scale($n(O.defaultViewport.zoom??1,O.minZoom,O.maxZoom)),F=e.viewportRef.getBoundingClientRect(),R=[[0,0],[F.width,F.height]],J=e.d3Zoom.constrain()(B,R,O.translateExtent);e.d3Zoom.transform(e.d3Selection,J)}ce(O)},$destroy:()=>{}}}const ZA=["data-id","data-handleid","data-nodeid","data-handlepos"],JA={name:"Handle",compatConfig:{MODE:3}},jt=t.defineComponent({...JA,props:{id:{default:null},type:{},position:{default:()=>ke.Top},isValidConnection:{type:Function},connectable:{type:[Boolean,Number,String,Function],default:void 0},connectableStart:{type:Boolean,default:!0},connectableEnd:{type:Boolean,default:!0}},setup(e,{expose:n}){const o=t.createPropsRestProxy(e,["position","connectable","connectableStart","connectableEnd","id"]),r=t.toRef(()=>o.type??"source"),i=t.toRef(()=>o.isValidConnection??null),{id:a,connectionStartHandle:l,connectionClickStartHandle:s,connectionEndHandle:c,vueFlowRef:u,nodesConnectable:f,noDragClassName:d,noPanClassName:p}=Fe(),{id:m,node:y,nodeEl:b,connectedEdges:g}=up(),h=t.ref(),w=t.toRef(()=>typeof e.connectableStart<"u"?e.connectableStart:!0),_=t.toRef(()=>typeof e.connectableEnd<"u"?e.connectableEnd:!0),k=t.toRef(()=>{var K,S,ne,x,q,U;return((K=l.value)==null?void 0:K.nodeId)===m&&((S=l.value)==null?void 0:S.id)===e.id&&((ne=l.value)==null?void 0:ne.type)===r.value||((x=c.value)==null?void 0:x.nodeId)===m&&((q=c.value)==null?void 0:q.id)===e.id&&((U=c.value)==null?void 0:U.type)===r.value}),E=t.toRef(()=>{var K,S,ne;return((K=s.value)==null?void 0:K.nodeId)===m&&((S=s.value)==null?void 0:S.id)===e.id&&((ne=s.value)==null?void 0:ne.type)===r.value}),{handlePointerDown:C,handleClick:N}=dp({nodeId:m,handleId:e.id,isValidConnection:i,type:r}),I=t.computed(()=>typeof e.connectable=="string"&&e.connectable==="single"?!g.value.some(K=>{const S=K[`${r.value}Handle`];return K[r.value]!==m?!1:S?S===e.id:!0}):typeof e.connectable=="number"?g.value.filter(K=>{const S=K[`${r.value}Handle`];return K[r.value]!==m?!1:S?S===e.id:!0}).length<e.connectable:typeof e.connectable=="function"?e.connectable(y,g.value):et(e.connectable)?e.connectable:f.value);t.onMounted(()=>{var K;if(!y.dimensions.width||!y.dimensions.height)return;const S=(K=y.handleBounds[r.value])==null?void 0:K.find(T=>T.id===e.id);if(!u.value||S)return;const ne=u.value.querySelector(".vue-flow__transformationpane");if(!b.value||!h.value||!ne||!e.id)return;const x=b.value.getBoundingClientRect(),q=h.value.getBoundingClientRect(),U=window.getComputedStyle(ne),{m22:te}=new window.DOMMatrixReadOnly(U.transform),V={id:e.id,position:e.position,x:(q.left-x.left)/te,y:(q.top-x.top)/te,type:r.value,nodeId:m,...bi(h.value)};y.handleBounds[r.value]=[...y.handleBounds[r.value]??[],V]});function D(K){const S=Rl(K);I.value&&w.value&&(S&&K.button===0||!S)&&C(K)}function G(K){!m||!s.value&&!w.value||I.value&&N(K)}return n({handleClick:N,handlePointerDown:C,onClick:G,onPointerDown:D}),(K,S)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"handle",ref:h,"data-id":`${t.unref(a)}-${t.unref(m)}-${e.id}-${r.value}`,"data-handleid":e.id,"data-nodeid":t.unref(m),"data-handlepos":K.position,class:t.normalizeClass(["vue-flow__handle",[`vue-flow__handle-${K.position}`,`vue-flow__handle-${e.id}`,t.unref(d),t.unref(p),r.value,{connectable:I.value,connecting:E.value,connectablestart:w.value,connectableend:_.value,connectionindicator:I.value&&(w.value&&!k.value||_.value&&k.value)}]]),onMousedown:D,onTouchstartPassive:D,onClick:G},[t.renderSlot(K.$slots,"default",{id:K.id})],42,ZA))}}),vi=function({sourcePosition:e=ke.Bottom,targetPosition:n=ke.Top,label:o,connectable:r=!0,isValidTargetPos:i,isValidSourcePos:a,data:l}){const s=l.label??o;return[t.h(jt,{type:"target",position:n,connectable:r,isValidConnection:i}),typeof s!="string"&&s?t.h(s):t.h(t.Fragment,[s]),t.h(jt,{type:"source",position:e,connectable:r,isValidConnection:a})]};vi.props=["sourcePosition","targetPosition","label","isValidTargetPos","isValidSourcePos","connectable","data"],vi.inheritAttrs=!1,vi.compatConfig={MODE:3};const QA=vi,xi=function({targetPosition:e=ke.Top,label:n,connectable:o=!0,isValidTargetPos:r,data:i}){const a=i.label??n;return[t.h(jt,{type:"target",position:e,connectable:o,isValidConnection:r}),typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a])]};xi.props=["targetPosition","label","isValidTargetPos","connectable","data"],xi.inheritAttrs=!1,xi.compatConfig={MODE:3};const eI=xi,Ai=function({sourcePosition:e=ke.Bottom,label:n,connectable:o=!0,isValidSourcePos:r,data:i}){const a=i.label??n;return[typeof a!="string"&&a?t.h(a):t.h(t.Fragment,[a]),t.h(jt,{type:"source",position:e,connectable:o,isValidConnection:r})]};Ai.props=["sourcePosition","label","isValidSourcePos","connectable","data"],Ai.inheritAttrs=!1,Ai.compatConfig={MODE:3};const tI=Ai,nI=["transform"],oI=["width","height","x","y","rx","ry"],rI=["y"],iI={name:"EdgeText",compatConfig:{MODE:3}},aI=t.defineComponent({...iI,props:{x:{},y:{},label:{},labelStyle:{default:()=>({})},labelShowBg:{type:Boolean,default:!0},labelBgStyle:{default:()=>({})},labelBgPadding:{default:()=>[2,4]},labelBgBorderRadius:{default:2}},setup(e){const n=t.ref({x:0,y:0,width:0,height:0}),o=t.ref(null),r=t.computed(()=>`translate(${e.x-n.value.width/2} ${e.y-n.value.height/2})`);t.onMounted(i),t.watch([()=>e.x,()=>e.y,o,()=>e.label],i);function i(){if(!o.value)return;const a=o.value.getBBox();(a.width!==n.value.width||a.height!==n.value.height)&&(n.value=a)}return(a,l)=>(t.openBlock(),t.createElementBlock("g",{transform:r.value,class:"vue-flow__edge-textwrapper"},[a.labelShowBg?(t.openBlock(),t.createElementBlock("rect",{key:0,class:"vue-flow__edge-textbg",width:`${n.value.width+2*a.labelBgPadding[0]}px`,height:`${n.value.height+2*a.labelBgPadding[1]}px`,x:-a.labelBgPadding[0],y:-a.labelBgPadding[1],style:t.normalizeStyle(a.labelBgStyle),rx:a.labelBgBorderRadius,ry:a.labelBgBorderRadius},null,12,oI)):t.createCommentVNode("",!0),t.createElementVNode("text",t.mergeProps(a.$attrs,{ref_key:"el",ref:o,class:"vue-flow__edge-text",y:n.value.height/2,dy:"0.3em",style:a.labelStyle}),[t.renderSlot(a.$slots,"default",{},()=>[typeof a.label!="string"?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(a.label),{key:0})):(t.openBlock(),t.createElementBlock(t.Fragment,{key:1},[t.createTextVNode(t.toDisplayString(a.label),1)],64))])],16,rI)],8,nI))}}),lI=["id","d","marker-end","marker-start"],sI=["d","stroke-width"],cI={name:"BaseEdge",inheritAttrs:!1,compatConfig:{MODE:3}},Ii=t.defineComponent({...cI,props:{id:{},labelX:{},labelY:{},path:{},label:{},markerStart:{},markerEnd:{},interactionWidth:{default:20},labelStyle:{},labelShowBg:{type:Boolean},labelBgStyle:{},labelBgPadding:{},labelBgBorderRadius:{}},setup(e,{expose:n}){const o=t.ref(null),r=t.ref(null),i=t.ref(null),a=t.useAttrs();return n({pathEl:o,interactionEl:r,labelEl:i}),(l,s)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("path",t.mergeProps(t.unref(a),{id:l.id,ref_key:"pathEl",ref:o,d:l.path,class:"vue-flow__edge-path","marker-end":l.markerEnd,"marker-start":l.markerStart}),null,16,lI),l.interactionWidth?(t.openBlock(),t.createElementBlock("path",{key:0,ref_key:"interactionEl",ref:r,fill:"none",d:l.path,"stroke-width":l.interactionWidth,"stroke-opacity":0,class:"vue-flow__edge-interaction"},null,8,sI)):t.createCommentVNode("",!0),l.label&&l.labelX&&l.labelY?(t.openBlock(),t.createBlock(aI,{key:1,ref_key:"labelEl",ref:i,x:l.labelX,y:l.labelY,label:l.label,"label-show-bg":l.labelShowBg,"label-bg-style":l.labelBgStyle,"label-bg-padding":l.labelBgPadding,"label-bg-border-radius":l.labelBgBorderRadius,"label-style":l.labelStyle},null,8,["x","y","label","label-show-bg","label-bg-style","label-bg-padding","label-bg-border-radius","label-style"])):t.createCommentVNode("",!0)],64))}});function mp({sourceX:e,sourceY:n,targetX:o,targetY:r}){const i=Math.abs(o-e)/2,a=o<e?o+i:o-i,l=Math.abs(r-n)/2,s=r<n?r+l:r-l;return[a,s,i,l]}function gp({sourceX:e,sourceY:n,targetX:o,targetY:r,sourceControlX:i,sourceControlY:a,targetControlX:l,targetControlY:s}){const c=e*.125+i*.375+l*.375+o*.125,u=n*.125+a*.375+s*.375+r*.125,f=Math.abs(c-e),d=Math.abs(u-n);return[c,u,f,d]}function Pi(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function hp({pos:e,x1:n,y1:o,x2:r,y2:i,c:a}){let l,s;switch(e){case ke.Left:l=n-Pi(n-r,a),s=o;break;case ke.Right:l=n+Pi(r-n,a),s=o;break;case ke.Top:l=n,s=o-Pi(o-i,a);break;case ke.Bottom:l=n,s=o+Pi(i-o,a);break}return[l,s]}function yp(e){const{sourceX:n,sourceY:o,sourcePosition:r=ke.Bottom,targetX:i,targetY:a,targetPosition:l=ke.Top,curvature:s=.25}=e,[c,u]=hp({pos:r,x1:n,y1:o,x2:i,y2:a,c:s}),[f,d]=hp({pos:l,x1:i,y1:a,x2:n,y2:o,c:s}),[p,m,y,b]=gp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:c,sourceControlY:u,targetControlX:f,targetControlY:d});return[`M${n},${o} C${c},${u} ${f},${d} ${i},${a}`,p,m,y,b]}function _p({pos:e,x1:n,y1:o,x2:r,y2:i}){let a,l;switch(e){case ke.Left:case ke.Right:a=.5*(n+r),l=o;break;case ke.Top:case ke.Bottom:a=n,l=.5*(o+i);break}return[a,l]}function bp(e){const{sourceX:n,sourceY:o,sourcePosition:r=ke.Bottom,targetX:i,targetY:a,targetPosition:l=ke.Top}=e,[s,c]=_p({pos:r,x1:n,y1:o,x2:i,y2:a}),[u,f]=_p({pos:l,x1:i,y1:a,x2:n,y2:o}),[d,p,m,y]=gp({sourceX:n,sourceY:o,targetX:i,targetY:a,sourceControlX:s,sourceControlY:c,targetControlX:u,targetControlY:f});return[`M${n},${o} C${s},${c} ${u},${f} ${i},${a}`,d,p,m,y]}const wp={[ke.Left]:{x:-1,y:0},[ke.Right]:{x:1,y:0},[ke.Top]:{x:0,y:-1},[ke.Bottom]:{x:0,y:1}};function dI({source:e,sourcePosition:n=ke.Bottom,target:o}){return n===ke.Left||n===ke.Right?e.x<o.x?{x:1,y:0}:{x:-1,y:0}:e.y<o.y?{x:0,y:1}:{x:0,y:-1}}function kp(e,n){return Math.sqrt((n.x-e.x)**2+(n.y-e.y)**2)}function uI({source:e,sourcePosition:n=ke.Bottom,target:o,targetPosition:r=ke.Top,center:i,offset:a}){const l=wp[n],s=wp[r],c={x:e.x+l.x*a,y:e.y+l.y*a},u={x:o.x+s.x*a,y:o.y+s.y*a},f=dI({source:c,sourcePosition:n,target:u}),d=f.x!==0?"x":"y",p=f[d];let m,y,b;const g={x:0,y:0},h={x:0,y:0},[w,_,k,E]=mp({sourceX:e.x,sourceY:e.y,targetX:o.x,targetY:o.y});if(l[d]*s[d]===-1){y=i.x??w,b=i.y??_;const N=[{x:y,y:c.y},{x:y,y:u.y}],I=[{x:c.x,y:b},{x:u.x,y:b}];l[d]===p?m=d==="x"?N:I:m=d==="x"?I:N}else{const N=[{x:c.x,y:u.y}],I=[{x:u.x,y:c.y}];if(d==="x"?m=l.x===p?I:N:m=l.y===p?N:I,n===r){const ne=Math.abs(e[d]-o[d]);if(ne<=a){const x=Math.min(a-1,a-ne);l[d]===p?g[d]=(c[d]>e[d]?-1:1)*x:h[d]=(u[d]>o[d]?-1:1)*x}}if(n!==r){const ne=d==="x"?"y":"x",x=l[d]===s[ne],q=c[ne]>u[ne],U=c[ne]<u[ne];(l[d]===1&&(!x&&q||x&&U)||l[d]!==1&&(!x&&U||x&&q))&&(m=d==="x"?N:I)}const D={x:c.x+g.x,y:c.y+g.y},G={x:u.x+h.x,y:u.y+h.y},K=Math.max(Math.abs(D.x-m[0].x),Math.abs(G.x-m[0].x)),S=Math.max(Math.abs(D.y-m[0].y),Math.abs(G.y-m[0].y));K>=S?(y=(D.x+G.x)/2,b=m[0].y):(y=m[0].x,b=(D.y+G.y)/2)}return[[e,{x:c.x+g.x,y:c.y+g.y},...m,{x:u.x+h.x,y:u.y+h.y},o],y,b,k,E]}function fI(e,n,o,r){const i=Math.min(kp(e,n)/2,kp(n,o)/2,r),{x:a,y:l}=n;if(e.x===a&&a===o.x||e.y===l&&l===o.y)return`L${a} ${l}`;if(e.y===l){const u=e.x<o.x?-1:1,f=e.y<o.y?1:-1;return`L ${a+i*u},${l}Q ${a},${l} ${a},${l+i*f}`}const s=e.x<o.x?1:-1,c=e.y<o.y?-1:1;return`L ${a},${l+i*c}Q ${a},${l} ${a+i*s},${l}`}function Gl(e){const{sourceX:n,sourceY:o,sourcePosition:r=ke.Bottom,targetX:i,targetY:a,targetPosition:l=ke.Top,borderRadius:s=5,centerX:c,centerY:u,offset:f=20}=e,[d,p,m,y,b]=uI({source:{x:n,y:o},sourcePosition:r,target:{x:i,y:a},targetPosition:l,center:{x:c,y:u},offset:f});return[d.reduce((h,w,_)=>{let k;return _>0&&_<d.length-1?k=fI(d[_-1],w,d[_+1],s):k=`${_===0?"M":"L"}${w.x} ${w.y}`,h+=k,h},""),p,m,y,b]}function pI(e){const{sourceX:n,sourceY:o,targetX:r,targetY:i}=e,[a,l,s,c]=mp({sourceX:n,sourceY:o,targetX:r,targetY:i});return[`M ${n},${o}L ${r},${i}`,a,l,s,c]}const mI=t.defineComponent({name:"StraightEdge",props:["label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=pI(e);return t.h(Ii,{path:o,labelX:r,labelY:i,...n,...e})}}}),Cp=t.defineComponent({name:"SmoothStepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","borderRadius","markerEnd","markerStart","interactionWidth","offset"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=Gl({...e,sourcePosition:e.sourcePosition??ke.Bottom,targetPosition:e.targetPosition??ke.Top});return t.h(Ii,{path:o,labelX:r,labelY:i,...n,...e})}}}),gI=t.defineComponent({name:"StepEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],setup(e,{attrs:n}){return()=>t.h(Cp,{...e,...n,borderRadius:0})}}),hI=t.defineComponent({name:"BezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","curvature","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=yp({...e,sourcePosition:e.sourcePosition??ke.Bottom,targetPosition:e.targetPosition??ke.Top});return t.h(Ii,{path:o,labelX:r,labelY:i,...n,...e})}}}),yI=t.defineComponent({name:"SimpleBezierEdge",props:["sourcePosition","targetPosition","label","labelStyle","labelShowBg","labelBgStyle","labelBgPadding","labelBgBorderRadius","sourceY","sourceX","targetX","targetY","markerEnd","markerStart","interactionWidth"],compatConfig:{MODE:3},setup(e,{attrs:n}){return()=>{const[o,r,i]=bp({...e,sourcePosition:e.sourcePosition??ke.Bottom,targetPosition:e.targetPosition??ke.Top});return t.h(Ii,{path:o,labelX:r,labelY:i,...n,...e})}}}),_I={input:tI,default:QA,output:eI},bI={default:hI,straight:mI,step:gI,smoothstep:Cp,simplebezier:yI};function wI(e,n,o){const r=t.computed(()=>b=>n.value.get(b)),i=t.computed(()=>b=>o.value.get(b)),a=t.computed(()=>{const b={...bI,...e.edgeTypes},g=Object.keys(b);for(const h of e.edges)h.type&&!g.includes(h.type)&&(b[h.type]=h.type);return b}),l=t.computed(()=>{const b={..._I,...e.nodeTypes},g=Object.keys(b);for(const h of e.nodes)h.type&&!g.includes(h.type)&&(b[h.type]=h.type);return b}),s=t.computed(()=>e.onlyRenderVisibleElements?Lf(e.nodes,{x:0,y:0,width:e.dimensions.width,height:e.dimensions.height},e.viewport,!0):e.nodes),c=t.computed(()=>{if(e.onlyRenderVisibleElements){const b=[];for(const g of e.edges){const h=n.value.get(g.source),w=n.value.get(g.target);kA({sourcePos:h.computedPosition||{x:0,y:0},targetPos:w.computedPosition||{x:0,y:0},sourceWidth:h.dimensions.width,sourceHeight:h.dimensions.height,targetWidth:w.dimensions.width,targetHeight:w.dimensions.height,width:e.dimensions.width,height:e.dimensions.height,viewport:e.viewport})&&b.push(g)}return b}return e.edges}),u=t.computed(()=>[...s.value,...c.value]),f=t.computed(()=>{const b=[];for(const g of e.nodes)g.selected&&b.push(g);return b}),d=t.computed(()=>{const b=[];for(const g of e.edges)g.selected&&b.push(g);return b}),p=t.computed(()=>[...f.value,...d.value]),m=t.computed(()=>{const b=[];for(const g of e.nodes)g.dimensions.width&&g.dimensions.height&&g.handleBounds!==void 0&&b.push(g);return b}),y=t.computed(()=>s.value.length>0&&m.value.length===s.value.length);return{getNode:r,getEdge:i,getElements:u,getEdgeTypes:a,getNodeTypes:l,getEdges:c,getNodes:s,getSelectedElements:p,getSelectedNodes:f,getSelectedEdges:d,getNodesInitialized:m,areNodesInitialized:y}}class Vn{constructor(){this.currentId=0,this.flows=new Map}static getInstance(){var n;const o=(n=t.getCurrentInstance())==null?void 0:n.appContext.app,r=(o==null?void 0:o.config.globalProperties.$vueFlowStorage)??Vn.instance;return Vn.instance=r??new Vn,o&&(o.config.globalProperties.$vueFlowStorage=Vn.instance),Vn.instance}set(n,o){return this.flows.set(n,o)}get(n){return this.flows.get(n)}remove(n){return this.flows.delete(n)}create(n,o){const r=pp(),i=t.reactive(r),a={};for(const[p,m]of Object.entries(i.hooks)){const y=`on${p.charAt(0).toUpperCase()+p.slice(1)}`;a[y]=m.on}const l={};for(const[p,m]of Object.entries(i.hooks))l[p]=m.trigger;const s=t.computed(()=>{const p=new Map;for(const m of i.nodes)p.set(m.id,m);return p}),c=t.computed(()=>{const p=new Map;for(const m of i.edges)p.set(m.id,m);return p}),u=wI(i,s,c),f=XA(i,s,c);f.setState({...i,...o});const d={...a,...u,...f,..._1(i),nodeLookup:s,edgeLookup:c,emits:l,id:n,vueFlowVersion:"1.45.0",$destroy:()=>{this.remove(n)}};return this.set(n,d),d}getId(){return`vue-flow-${this.currentId++}`}}function Fe(e){const n=Vn.getInstance(),o=t.getCurrentScope(),r=typeof e=="object",i=r?e:{id:e},a=i.id,l=a??(o==null?void 0:o.vueFlowId);let s;if(o){const c=t.inject(ap,null);typeof c<"u"&&c!==null&&(!l||c.id===l)&&(s=c)}if(s||l&&(s=n.get(l)),!s||l&&s.id!==l){const c=a??n.getId(),u=n.create(c,i);s=u,(o??t.effectScope(!0)).run(()=>{t.watch(u.applyDefault,(d,p,m)=>{const y=g=>{u.applyNodeChanges(g)},b=g=>{u.applyEdgeChanges(g)};d?(u.onNodesChange(y),u.onEdgesChange(b)):(u.hooks.value.nodesChange.off(y),u.hooks.value.edgesChange.off(b)),m(()=>{u.hooks.value.nodesChange.off(y),u.hooks.value.edgesChange.off(b)})},{immediate:!0}),Wr(()=>{if(s){const d=n.get(s.id);d?d.$destroy():Ei(`No store instance found for id ${s.id} in storage.`)}})})}else r&&s.setState(i);if(o&&(t.provide(ap,s),o.vueFlowId=s.id),r){const c=t.getCurrentInstance();(c==null?void 0:c.type.name)!=="VueFlow"&&s.emits.error(new at(Qe.USEVUEFLOW_OPTIONS))}return s}function kI(e){const{emits:n,dimensions:o}=Fe();let r;t.onMounted(()=>{const i=e.value,a=()=>{if(!i)return;const l=bi(i);(l.width===0||l.height===0)&&n.error(new at(Qe.MISSING_VIEWPORT_DIMENSIONS)),o.value={width:l.width||500,height:l.height||500}};a(),window.addEventListener("resize",a),i&&(r=new ResizeObserver(()=>a()),r.observe(i)),t.onBeforeUnmount(()=>{window.removeEventListener("resize",a),r&&i&&r.unobserve(i)})})}const CI={name:"UserSelection",compatConfig:{MODE:3}},EI=t.defineComponent({...CI,props:{userSelectionRect:{}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__selection vue-flow__container",style:t.normalizeStyle({width:`${n.userSelectionRect.width}px`,height:`${n.userSelectionRect.height}px`,transform:`translate(${n.userSelectionRect.x}px, ${n.userSelectionRect.y}px)`})},null,4))}}),NI=["tabIndex"],SI={name:"NodesSelection",compatConfig:{MODE:3}},vI=t.defineComponent({...SI,setup(e){const{emits:n,viewport:o,getSelectedNodes:r,noPanClassName:i,disableKeyboardA11y:a,userSelectionActive:l}=Fe(),s=fp(),c=t.ref(null),u=cp({el:c,onStart(y){n.selectionDragStart(y)},onDrag(y){n.selectionDrag(y)},onStop(y){n.selectionDragStop(y)}});t.onMounted(()=>{var y;a.value||(y=c.value)==null||y.focus({preventScroll:!0})});const f=t.computed(()=>Mf(r.value)),d=t.computed(()=>({width:`${f.value.width}px`,height:`${f.value.height}px`,top:`${f.value.y}px`,left:`${f.value.x}px`}));function p(y){n.selectionContextMenu({event:y,nodes:r.value})}function m(y){a||uo[y.key]&&(y.preventDefault(),s({x:uo[y.key].x,y:uo[y.key].y},y.shiftKey))}return(y,b)=>!t.unref(l)&&f.value.width&&f.value.height?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["vue-flow__nodesselection vue-flow__container",t.unref(i)]),style:t.normalizeStyle({transform:`translate(${t.unref(o).x}px,${t.unref(o).y}px) scale(${t.unref(o).zoom})`})},[t.createElementVNode("div",{ref_key:"el",ref:c,class:t.normalizeClass([{dragging:t.unref(u)},"vue-flow__nodesselection-rect"]),style:t.normalizeStyle(d.value),tabIndex:t.unref(a)?void 0:-1,onContextmenu:p,onKeydown:m},null,46,NI)],6)):t.createCommentVNode("",!0)}});function xI(e,n){return{x:e.clientX-n.left,y:e.clientY-n.top}}const AI={name:"Pane",compatConfig:{MODE:3}},II=t.defineComponent({...AI,props:{isSelecting:{type:Boolean},selectionKeyPressed:{type:Boolean}},setup(e){const{vueFlowRef:n,nodes:o,viewport:r,emits:i,userSelectionActive:a,removeSelectedElements:l,userSelectionRect:s,elementsSelectable:c,nodesSelectionActive:u,getSelectedEdges:f,getSelectedNodes:d,removeNodes:p,removeEdges:m,selectionMode:y,deleteKeyCode:b,multiSelectionKeyCode:g,multiSelectionActive:h,edgeLookup:w,nodeLookup:_,connectionLookup:k,defaultEdgeOptions:E,connectionStartHandle:C}=Fe(),N=t.ref(null),I=t.ref(new Set),D=t.ref(new Set),G=t.ref(),K=t.toRef(()=>c.value&&(e.isSelecting||a.value)),S=t.toRef(()=>C.value!==null);let ne=!1,x=!1;const q=ir(b,{actInsideInputWithModifier:!1}),U=ir(g);t.watch(q,W=>{W&&(p(d.value),m(f.value),u.value=!1)}),t.watch(U,W=>{h.value=W});function te(W,ie){return oe=>{oe.target===ie&&(W==null||W(oe))}}function V(W){if(ne||S.value){ne=!1;return}i.paneClick(W),l(),u.value=!1}function T(W){W.preventDefault(),W.stopPropagation(),i.paneContextMenu(W)}function v(W){i.paneScroll(W)}function P(W){var ie,oe,de;if(G.value=(ie=n.value)==null?void 0:ie.getBoundingClientRect(),!c.value||!e.isSelecting||W.button!==0||W.target!==N.value||!G.value)return;(de=(oe=W.target)==null?void 0:oe.setPointerCapture)==null||de.call(oe,W.pointerId);const{x:he,y:X}=xI(W,G.value);x=!0,ne=!1,l(),s.value={width:0,height:0,startX:he,startY:X,x:he,y:X},i.selectionStart(W)}function A(W){var ie;if(!G.value||!s.value)return;ne=!0;const{x:oe,y:de}=Kt(W,G.value),{startX:he=0,startY:X=0}=s.value,ce={startX:he,startY:X,x:oe<he?oe:he,y:de<X?de:X,width:Math.abs(oe-he),height:Math.abs(de-X)},se=I.value,ue=D.value;I.value=new Set(Lf(o.value,ce,r.value,y.value===Pl.Partial,!0).map(O=>O.id)),D.value=new Set;const fe=((ie=E.value)==null?void 0:ie.selectable)??!0;for(const O of I.value){const B=k.value.get(O);if(B)for(const{edgeId:F}of B.values()){const R=w.value.get(F);R&&(R.selectable??fe)&&D.value.add(F)}}if(!ip(se,I.value)){const O=fn(_.value,I.value,!0);i.nodesChange(O)}if(!ip(ue,D.value)){const O=fn(w.value,D.value);i.edgesChange(O)}s.value=ce,a.value=!0,u.value=!1}function Y(W){var ie;W.button!==0||!x||((ie=W.target)==null||ie.releasePointerCapture(W.pointerId),!a.value&&s.value&&W.target===N.value&&V(W),a.value=!1,s.value=null,u.value=I.value.size>0,i.selectionEnd(W),e.selectionKeyPressed&&(ne=!1),x=!1)}return(W,ie)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"container",ref:N,class:t.normalizeClass(["vue-flow__pane vue-flow__container",{selection:W.isSelecting}]),onClick:ie[0]||(ie[0]=oe=>K.value?void 0:te(V,N.value)(oe)),onContextmenu:ie[1]||(ie[1]=oe=>te(T,N.value)(oe)),onWheelPassive:ie[2]||(ie[2]=oe=>te(v,N.value)(oe)),onPointerenter:ie[3]||(ie[3]=oe=>K.value?void 0:t.unref(i).paneMouseEnter(oe)),onPointerdown:ie[4]||(ie[4]=oe=>K.value?P(oe):t.unref(i).paneMouseMove(oe)),onPointermove:ie[5]||(ie[5]=oe=>K.value?A(oe):t.unref(i).paneMouseMove(oe)),onPointerup:ie[6]||(ie[6]=oe=>K.value?Y(oe):void 0),onPointerleave:ie[7]||(ie[7]=oe=>t.unref(i).paneMouseLeave(oe))},[t.renderSlot(W.$slots,"default"),t.unref(a)&&t.unref(s)?(t.openBlock(),t.createBlock(EI,{key:0,"user-selection-rect":t.unref(s)},null,8,["user-selection-rect"])):t.createCommentVNode("",!0),t.unref(u)&&t.unref(d).length?(t.openBlock(),t.createBlock(vI,{key:1})):t.createCommentVNode("",!0)],34))}}),PI={name:"Transform",compatConfig:{MODE:3}},TI=t.defineComponent({...PI,setup(e){const{viewport:n,fitViewOnInit:o,fitViewOnInitDone:r}=Fe(),i=t.computed(()=>o.value?!r.value:!1),a=t.computed(()=>`translate(${n.value.x}px,${n.value.y}px) scale(${n.value.zoom})`);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:"vue-flow__transformationpane vue-flow__container",style:t.normalizeStyle({transform:a.value,opacity:i.value?0:void 0})},[t.renderSlot(l.$slots,"default")],4))}}),OI={name:"Viewport",compatConfig:{MODE:3}},$I=t.defineComponent({...OI,setup(e){const{minZoom:n,maxZoom:o,defaultViewport:r,translateExtent:i,zoomActivationKeyCode:a,selectionKeyCode:l,panActivationKeyCode:s,panOnScroll:c,panOnScrollMode:u,panOnScrollSpeed:f,panOnDrag:d,zoomOnDoubleClick:p,zoomOnPinch:m,zoomOnScroll:y,preventScrolling:b,noWheelClassName:g,noPanClassName:h,emits:w,connectionStartHandle:_,userSelectionActive:k,paneDragging:E,d3Zoom:C,d3Selection:N,d3ZoomHandler:I,viewport:D,viewportRef:G,paneClickDistance:K}=Fe();kI(G);const S=t.shallowRef(!1),ne=t.shallowRef(!1);let x=null,q=!1,U=0,te={x:0,y:0,zoom:0};const V=ir(s),T=ir(l),v=ir(a),P=t.toRef(()=>(!T.value||T.value&&l.value===!0)&&(V.value||d.value)),A=t.toRef(()=>V.value||c.value),Y=t.toRef(()=>T.value||l.value===!0&&P.value!==!0);t.onMounted(()=>{if(!G.value){Ei("Viewport element is missing");return}const X=G.value,ce=X.getBoundingClientRect(),se=nA().clickDistance(K.value).scaleExtent([n.value,o.value]).translateExtent(i.value),ue=Tt(X).call(se),fe=ue.on("wheel.zoom"),O=co.translate(r.value.x??0,r.value.y??0).scale($n(r.value.zoom??1,n.value,o.value)),B=[[0,0],[ce.width,ce.height]],F=se.constrain()(O,B,i.value);se.transform(ue,F),se.wheelDelta(ie),C.value=se,N.value=ue,I.value=fe,D.value={x:F.x,y:F.y,zoom:F.k},se.on("start",R=>{var J;if(!R.sourceEvent)return null;U=R.sourceEvent.button,S.value=!0;const j=de(R.transform);((J=R.sourceEvent)==null?void 0:J.type)==="mousedown"&&(E.value=!0),te=j,w.viewportChangeStart(j),w.moveStart({event:R,flowTransform:j})}),se.on("end",R=>{if(!R.sourceEvent)return null;if(S.value=!1,E.value=!1,W(P.value,U??0)&&!q&&w.paneContextMenu(R.sourceEvent),q=!1,oe(te,R.transform)){const J=de(R.transform);te=J,w.viewportChangeEnd(J),w.moveEnd({event:R,flowTransform:J})}}),se.filter(R=>{var J;const j=v.value||y.value,ae=m.value&&R.ctrlKey,L=R.button;if(L===1&&R.type==="mousedown"&&(he(R,"vue-flow__node")||he(R,"vue-flow__edge")))return!0;if(!P.value&&!j&&!A.value&&!p.value&&!m.value||k.value||!p.value&&R.type==="dblclick"||he(R,g.value)&&R.type==="wheel"||he(R,h.value)&&(R.type!=="wheel"||A.value&&R.type==="wheel"&&!v.value)||!m.value&&R.ctrlKey&&R.type==="wheel"||!j&&!A.value&&!ae&&R.type==="wheel")return!1;if(!m&&R.type==="touchstart"&&((J=R.touches)==null?void 0:J.length)>1)return R.preventDefault(),!1;if(!P.value&&(R.type==="mousedown"||R.type==="touchstart")||l.value===!0&&Array.isArray(d.value)&&d.value.includes(0)&&L===0||Array.isArray(d.value)&&!d.value.includes(L)&&(R.type==="mousedown"||R.type==="touchstart"))return!1;const $=Array.isArray(d.value)&&d.value.includes(L)||l.value===!0&&Array.isArray(d.value)&&!d.value.includes(0)||!L||L<=1;return(!R.ctrlKey||V.value||R.type==="wheel")&&$}),t.watch([k,P],()=>{k.value&&!S.value?se.on("zoom",null):k.value||se.on("zoom",R=>{D.value={x:R.transform.x,y:R.transform.y,zoom:R.transform.k};const J=de(R.transform);q=W(P.value,U??0),w.viewportChange(J),w.move({event:R,flowTransform:J})})},{immediate:!0}),t.watch([k,A,u,v,m,b,g],()=>{A.value&&!v.value&&!k.value?ue.on("wheel.zoom",R=>{if(he(R,g.value))return!1;const J=v.value||y.value,j=m.value&&R.ctrlKey;if(!(!b.value||A.value||J||j))return!1;R.preventDefault(),R.stopImmediatePropagation();const L=ue.property("__zoom").k||1,$=ki();if(!V.value&&R.ctrlKey&&m.value&&$){const ye=Mt(R),me=ie(R),_e=L*2**me;se.scaleTo(ue,_e,ye,R);return}const z=R.deltaMode===1?20:1;let M=u.value===rr.Vertical?0:R.deltaX*z,le=u.value===rr.Horizontal?0:R.deltaY*z;!$&&R.shiftKey&&u.value!==rr.Vertical&&!M&&le&&(M=le,le=0),se.translateBy(ue,-(M/L)*f.value,-(le/L)*f.value);const pe=de(ue.property("__zoom"));x&&clearTimeout(x),ne.value?(w.move({event:R,flowTransform:pe}),w.viewportChange(pe),x=setTimeout(()=>{w.moveEnd({event:R,flowTransform:pe}),w.viewportChangeEnd(pe),ne.value=!1},150)):(ne.value=!0,w.moveStart({event:R,flowTransform:pe}),w.viewportChangeStart(pe))},{passive:!1}):typeof fe<"u"&&ue.on("wheel.zoom",function(R,J){const j=!b.value&&R.type==="wheel"&&!R.ctrlKey,ae=v.value||y.value,L=m.value&&R.ctrlKey;if(!ae&&!c.value&&!L&&R.type==="wheel"||j||he(R,g.value))return null;R.preventDefault(),fe.call(this,R,J)},{passive:!1})},{immediate:!0})});function W(X,ce){return ce===2&&Array.isArray(X)&&X.includes(2)}function ie(X){const ce=X.ctrlKey&&ki()?10:1;return-X.deltaY*(X.deltaMode===1?.05:X.deltaMode?1:.002)*ce}function oe(X,ce){return X.x!==ce.x&&!Number.isNaN(ce.x)||X.y!==ce.y&&!Number.isNaN(ce.y)||X.zoom!==ce.k&&!Number.isNaN(ce.k)}function de(X){return{x:X.x,y:X.y,zoom:X.k}}function he(X,ce){return X.target.closest(`.${ce}`)}return(X,ce)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"viewportRef",ref:G,class:"vue-flow__viewport vue-flow__container"},[t.createVNode(II,{"is-selecting":Y.value,"selection-key-pressed":t.unref(T),class:t.normalizeClass({connecting:!!t.unref(_),dragging:t.unref(E),draggable:t.unref(d)===!0||Array.isArray(t.unref(d))&&t.unref(d).includes(0)})},{default:t.withCtx(()=>[t.createVNode(TI,null,{default:t.withCtx(()=>[t.renderSlot(X.$slots,"default")]),_:3})]),_:3},8,["is-selecting","selection-key-pressed","class"])],512))}}),BI=["id"],VI=["id"],RI=["id"],DI={name:"A11yDescriptions",compatConfig:{MODE:3}},MI=t.defineComponent({...DI,setup(e){const{id:n,disableKeyboardA11y:o,ariaLiveMessage:r}=Fe();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",{id:`${t.unref(If)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select a node. "+t.toDisplayString(t.unref(o)?"":"You can then use the arrow keys to move the node around.")+" You can then use the arrow keys to move the node around, press delete to remove it and press escape to cancel. ",9,BI),t.createElementVNode("div",{id:`${t.unref(Pf)}-${t.unref(n)}`,style:{display:"none"}}," Press enter or space to select an edge. You can then press delete to remove it or press escape to cancel. ",8,VI),t.unref(o)?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("div",{key:0,id:`${t.unref(sA)}-${t.unref(n)}`,"aria-live":"assertive","aria-atomic":"true",style:{position:"absolute",width:"1px",height:"1px",margin:"-1px",border:"0",padding:"0",overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(100%)"}},t.toDisplayString(t.unref(r)),9,RI))],64))}});function LI(){const e=Fe();t.watch(()=>e.viewportHelper.value.viewportInitialized,n=>{n&&setTimeout(()=>{e.emits.init(e),e.emits.paneReady(e)},1)})}function FI(e,n,o){return o===ke.Left?e-n:o===ke.Right?e+n:e}function UI(e,n,o){return o===ke.Top?e-n:o===ke.Bottom?e+n:e}const ql=function({radius:e=10,centerX:n=0,centerY:o=0,position:r=ke.Top,type:i}){return t.h("circle",{class:`vue-flow__edgeupdater vue-flow__edgeupdater-${i}`,cx:FI(n,e,r),cy:UI(o,e,r),r:e,stroke:"transparent",fill:"transparent"})};ql.props=["radius","centerX","centerY","position","type"],ql.compatConfig={MODE:3};const Ep=ql,KI=t.defineComponent({name:"Edge",compatConfig:{MODE:3},props:["id"],setup(e){const{id:n,addSelectedEdges:o,connectionMode:r,edgeUpdaterRadius:i,emits:a,nodesSelectionActive:l,noPanClassName:s,getEdgeTypes:c,removeSelectedEdges:u,findEdge:f,findNode:d,isValidConnection:p,multiSelectionActive:m,disableKeyboardA11y:y,elementsSelectable:b,edgesUpdatable:g,edgesFocusable:h,hooks:w}=Fe(),_=t.computed(()=>f(e.id)),{emit:k,on:E}=MA(_.value,a),C=t.inject(Ni),N=t.getCurrentInstance(),I=t.ref(!1),D=t.ref(!1),G=t.ref(""),K=t.ref(null),S=t.ref("source"),ne=t.ref(null),x=t.toRef(()=>typeof _.value.selectable>"u"?b.value:_.value.selectable),q=t.toRef(()=>typeof _.value.updatable>"u"?g.value:_.value.updatable),U=t.toRef(()=>typeof _.value.focusable>"u"?h.value:_.value.focusable);t.provide(VA,e.id),t.provide(RA,ne);const te=t.computed(()=>_.value.class instanceof Function?_.value.class(_.value):_.value.class),V=t.computed(()=>_.value.style instanceof Function?_.value.style(_.value):_.value.style),T=t.computed(()=>{const B=_.value.type||"default",F=C==null?void 0:C[`edge-${B}`];if(F)return F;let R=_.value.template??c.value[B];if(typeof R=="string"&&N){const J=Object.keys(N.appContext.components);J&&J.includes(B)&&(R=t.resolveComponent(B,!1))}return R&&typeof R!="string"?R:(a.error(new at(Qe.EDGE_TYPE_MISSING,R)),!1)}),{handlePointerDown:v}=dp({nodeId:G,handleId:K,type:S,isValidConnection:p,edgeUpdaterType:S,onEdgeUpdate:Y,onEdgeUpdateEnd:W});return()=>{const B=d(_.value.source),F=d(_.value.target),R="pathOptions"in _.value?_.value.pathOptions:{};if(!B&&!F)return a.error(new at(Qe.EDGE_SOURCE_TARGET_MISSING,_.value.id,_.value.source,_.value.target)),null;if(!B)return a.error(new at(Qe.EDGE_SOURCE_MISSING,_.value.id,_.value.source)),null;if(!F)return a.error(new at(Qe.EDGE_TARGET_MISSING,_.value.id,_.value.target)),null;if(!_.value||_.value.hidden||B.hidden||F.hidden)return null;let J;r.value===cn.Strict?J=B.handleBounds.source:J=[...B.handleBounds.source||[],...B.handleBounds.target||[]];const j=Zf(J,_.value.sourceHandle);let ae;r.value===cn.Strict?ae=F.handleBounds.target:ae=[...F.handleBounds.target||[],...F.handleBounds.source||[]];const L=Zf(ae,_.value.targetHandle),$=(j==null?void 0:j.position)||ke.Bottom,z=(L==null?void 0:L.position)||ke.Top,{x:M,y:le}=fo(B,j,$),{x:pe,y:ye}=fo(F,L,z);return _.value.sourceX=M,_.value.sourceY=le,_.value.targetX=pe,_.value.targetY=ye,t.h("g",{ref:ne,key:e.id,"data-id":e.id,class:["vue-flow__edge",`vue-flow__edge-${T.value===!1?"default":_.value.type||"default"}`,s.value,te.value,{updating:I.value,selected:_.value.selected,animated:_.value.animated,inactive:!x.value&&!w.value.edgeClick.hasListeners()}],tabIndex:U.value?0:void 0,"aria-label":_.value.ariaLabel===null?void 0:_.value.ariaLabel??`Edge from ${_.value.source} to ${_.value.target}`,"aria-describedby":U.value?`${Pf}-${n}`:void 0,"aria-roledescription":"edge",role:U.value?"group":"img",..._.value.domAttributes,onClick:oe,onContextmenu:de,onDblclick:he,onMouseenter:X,onMousemove:ce,onMouseleave:se,onKeyDown:U.value?O:void 0},[D.value?null:t.h(T.value===!1?c.value.default:T.value,{id:e.id,sourceNode:B,targetNode:F,source:_.value.source,target:_.value.target,type:_.value.type,updatable:q.value,selected:_.value.selected,animated:_.value.animated,label:_.value.label,labelStyle:_.value.labelStyle,labelShowBg:_.value.labelShowBg,labelBgStyle:_.value.labelBgStyle,labelBgPadding:_.value.labelBgPadding,labelBgBorderRadius:_.value.labelBgBorderRadius,data:_.value.data,events:{..._.value.events,...E},style:V.value,markerStart:`url('#${sr(_.value.markerStart,n)}')`,markerEnd:`url('#${sr(_.value.markerEnd,n)}')`,sourcePosition:$,targetPosition:z,sourceX:M,sourceY:le,targetX:pe,targetY:ye,sourceHandleId:_.value.sourceHandle,targetHandleId:_.value.targetHandle,interactionWidth:_.value.interactionWidth,...R}),[q.value==="source"||q.value===!0?[t.h("g",{onMousedown:ue,onMouseenter:P,onMouseout:A},t.h(Ep,{position:$,centerX:M,centerY:le,radius:i.value,type:"source","data-type":"source"}))]:null,q.value==="target"||q.value===!0?[t.h("g",{onMousedown:fe,onMouseenter:P,onMouseout:A},t.h(Ep,{position:z,centerX:pe,centerY:ye,radius:i.value,type:"target","data-type":"target"}))]:null]])};function P(){I.value=!0}function A(){I.value=!1}function Y(B,F){k.update({event:B,edge:_.value,connection:F})}function W(B){k.updateEnd({event:B,edge:_.value}),D.value=!1}function ie(B,F){B.button===0&&(D.value=!0,G.value=F?_.value.target:_.value.source,K.value=(F?_.value.targetHandle:_.value.sourceHandle)??null,S.value=F?"target":"source",k.updateStart({event:B,edge:_.value}),v(B))}function oe(B){var F;const R={event:B,edge:_.value};x.value&&(l.value=!1,_.value.selected&&m.value?(u([_.value]),(F=ne.value)==null||F.blur()):o([_.value])),k.click(R)}function de(B){k.contextMenu({event:B,edge:_.value})}function he(B){k.doubleClick({event:B,edge:_.value})}function X(B){k.mouseEnter({event:B,edge:_.value})}function ce(B){k.mouseMove({event:B,edge:_.value})}function se(B){k.mouseLeave({event:B,edge:_.value})}function ue(B){ie(B,!0)}function fe(B){ie(B,!1)}function O(B){var F;!y.value&&Tf.includes(B.key)&&x.value&&(B.key==="Escape"?((F=ne.value)==null||F.blur(),u([f(e.id)])):o([f(e.id)]))}}}),jI=t.defineComponent({name:"ConnectionLine",compatConfig:{MODE:3},setup(){var e;const{id:n,connectionMode:o,connectionStartHandle:r,connectionEndHandle:i,connectionPosition:a,connectionLineType:l,connectionLineStyle:s,connectionLineOptions:c,connectionStatus:u,viewport:f,findNode:d}=Fe(),p=(e=t.inject(Ni))==null?void 0:e["connection-line"],m=t.computed(()=>{var w;return d((w=r.value)==null?void 0:w.nodeId)}),y=t.computed(()=>{var w;return d((w=i.value)==null?void 0:w.nodeId)??null}),b=t.computed(()=>({x:(a.value.x-f.value.x)/f.value.zoom,y:(a.value.y-f.value.y)/f.value.zoom})),g=t.computed(()=>c.value.markerStart?`url(#${sr(c.value.markerStart,n)})`:""),h=t.computed(()=>c.value.markerEnd?`url(#${sr(c.value.markerEnd,n)})`:"");return()=>{var w,_,k;if(!m.value||!r.value)return null;const E=r.value.id,C=r.value.type,N=m.value.handleBounds;let I=(N==null?void 0:N[C])??[];if(o.value===cn.Loose){const V=(N==null?void 0:N[C==="source"?"target":"source"])??[];I=[...I,...V]}if(!I)return null;const D=(E?I.find(V=>V.id===E):I[0])??null,G=(D==null?void 0:D.position)??ke.Top,{x:K,y:S}=fo(m.value,D,G);let ne=null;y.value&&(o.value===cn.Strict?ne=((w=y.value.handleBounds[C==="source"?"target":"source"])==null?void 0:w.find(V=>{var T;return V.id===((T=i.value)==null?void 0:T.id)}))||null:ne=((_=[...y.value.handleBounds.source??[],...y.value.handleBounds.target??[]])==null?void 0:_.find(V=>{var T;return V.id===((T=i.value)==null?void 0:T.id)}))||null);const x=((k=i.value)==null?void 0:k.position)??(G?Ml[G]:null);if(!G||!x)return null;const q=l.value??c.value.type??On.Bezier;let U="";const te={sourceX:K,sourceY:S,sourcePosition:G,targetX:b.value.x,targetY:b.value.y,targetPosition:x};return q===On.Bezier?[U]=yp(te):q===On.Step?[U]=Gl({...te,borderRadius:0}):q===On.SmoothStep?[U]=Gl(te):q===On.SimpleBezier?[U]=bp(te):U=`M${K},${S} ${b.value.x},${b.value.y}`,t.h("svg",{class:"vue-flow__edges vue-flow__connectionline vue-flow__container"},t.h("g",{class:"vue-flow__connection"},p?t.h(p,{sourceX:K,sourceY:S,sourcePosition:G,targetX:b.value.x,targetY:b.value.y,targetPosition:x,sourceNode:m.value,sourceHandle:D,targetNode:y.value,targetHandle:ne,markerEnd:h.value,markerStart:g.value,connectionStatus:u.value}):t.h("path",{d:U,class:[c.value.class,u,"vue-flow__connection-path"],style:{...s.value,...c.value.style},"marker-end":h.value,"marker-start":g.value})))}}}),GI=["id","markerWidth","markerHeight","markerUnits","orient"],qI={name:"MarkerType",compatConfig:{MODE:3}},zI=t.defineComponent({...qI,props:{id:{},type:{},color:{default:"none"},width:{default:12.5},height:{default:12.5},markerUnits:{default:"strokeWidth"},orient:{default:"auto-start-reverse"},strokeWidth:{default:1}},setup(e){return(n,o)=>(t.openBlock(),t.createElementBlock("marker",{id:n.id,class:"vue-flow__arrowhead",viewBox:"-10 -10 20 20",refX:"0",refY:"0",markerWidth:`${n.width}`,markerHeight:`${n.height}`,markerUnits:n.markerUnits,orient:n.orient},[n.type===t.unref(or).ArrowClosed?(t.openBlock(),t.createElementBlock("polyline",{key:0,style:t.normalizeStyle({stroke:n.color,fill:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",points:"-5,-4 0,0 -5,4 -5,-4"},null,4)):t.createCommentVNode("",!0),n.type===t.unref(or).Arrow?(t.openBlock(),t.createElementBlock("polyline",{key:1,style:t.normalizeStyle({stroke:n.color,strokeWidth:n.strokeWidth}),"stroke-linecap":"round","stroke-linejoin":"round",fill:"none",points:"-5,-4 0,0 -5,4"},null,4)):t.createCommentVNode("",!0)],8,GI))}}),HI={class:"vue-flow__marker vue-flow__container","aria-hidden":"true"},YI={name:"MarkerDefinitions",compatConfig:{MODE:3}},WI=t.defineComponent({...YI,setup(e){const{id:n,edges:o,connectionLineOptions:r,defaultMarkerColor:i}=Fe(),a=t.computed(()=>{const l=new Set,s=[],c=u=>{if(u){const f=sr(u,n);l.has(f)||(typeof u=="object"?s.push({...u,id:f,color:u.color||i.value}):s.push({id:f,color:i.value,type:u}),l.add(f))}};for(const u of[r.value.markerEnd,r.value.markerStart])c(u);for(const u of o.value)for(const f of[u.markerStart,u.markerEnd])c(f);return s.sort((u,f)=>u.id.localeCompare(f.id))});return(l,s)=>(t.openBlock(),t.createElementBlock("svg",HI,[t.createElementVNode("defs",null,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(a.value,c=>(t.openBlock(),t.createBlock(zI,{id:c.id,key:c.id,type:c.type,color:c.color,width:c.width,height:c.height,markerUnits:c.markerUnits,"stroke-width":c.strokeWidth,orient:c.orient},null,8,["id","type","color","width","height","markerUnits","stroke-width","orient"]))),128))])]))}}),XI={name:"Edges",compatConfig:{MODE:3}},ZI=t.defineComponent({...XI,setup(e){const{findNode:n,getEdges:o,elevateEdgesOnSelect:r}=Fe();return(i,a)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(WI),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(o),l=>(t.openBlock(),t.createElementBlock("svg",{key:l.id,class:"vue-flow__edges vue-flow__container",style:t.normalizeStyle({zIndex:t.unref(CA)(l,t.unref(n),t.unref(r))})},[t.createVNode(t.unref(KI),{id:l.id},null,8,["id"])],4))),128)),t.createVNode(t.unref(jI))],64))}}),JI=t.defineComponent({name:"Node",compatConfig:{MODE:3},props:["id","resizeObserver"],setup(e){const{id:n,noPanClassName:o,selectNodesOnDrag:r,nodesSelectionActive:i,multiSelectionActive:a,emits:l,removeSelectedNodes:s,addSelectedNodes:c,updateNodeDimensions:u,onUpdateNodeInternals:f,getNodeTypes:d,nodeExtent:p,elevateNodesOnSelect:m,disableKeyboardA11y:y,ariaLiveMessage:b,snapToGrid:g,snapGrid:h,nodeDragThreshold:w,nodesDraggable:_,elementsSelectable:k,nodesConnectable:E,nodesFocusable:C,hooks:N}=Fe(),I=t.ref(null);t.provide(sp,I),t.provide(lp,e.id);const D=t.inject(Ni),G=t.getCurrentInstance(),K=fp(),{node:S,parentNode:ne}=up(e.id),{emit:x,on:q}=KA(S,l),U=t.toRef(()=>typeof S.draggable>"u"?_.value:S.draggable),te=t.toRef(()=>typeof S.selectable>"u"?k.value:S.selectable),V=t.toRef(()=>typeof S.connectable>"u"?E.value:S.connectable),T=t.toRef(()=>typeof S.focusable>"u"?C.value:S.focusable),v=t.computed(()=>te.value||U.value||N.value.nodeClick.hasListeners()||N.value.nodeDoubleClick.hasListeners()||N.value.nodeMouseEnter.hasListeners()||N.value.nodeMouseMove.hasListeners()||N.value.nodeMouseLeave.hasListeners()),P=t.toRef(()=>!!S.dimensions.width&&!!S.dimensions.height),A=t.computed(()=>{const F=S.type||"default",R=D==null?void 0:D[`node-${F}`];if(R)return R;let J=S.template||d.value[F];if(typeof J=="string"&&G){const j=Object.keys(G.appContext.components);j&&j.includes(F)&&(J=t.resolveComponent(F,!1))}return J&&typeof J!="string"?J:(l.error(new at(Qe.NODE_TYPE_MISSING,J)),!1)}),Y=cp({id:e.id,el:I,disabled:()=>!U.value,selectable:te,dragHandle:()=>S.dragHandle,onStart(F){x.dragStart(F)},onDrag(F){x.drag(F)},onStop(F){x.dragStop(F)},onClick(F){O(F)}}),W=t.computed(()=>S.class instanceof Function?S.class(S):S.class),ie=t.computed(()=>{const F=(S.style instanceof Function?S.style(S):S.style)||{},R=S.width instanceof Function?S.width(S):S.width,J=S.height instanceof Function?S.height(S):S.height;return!F.width&&R&&(F.width=typeof R=="string"?R:`${R}px`),!F.height&&J&&(F.height=typeof J=="string"?J:`${J}px`),F}),oe=t.toRef(()=>Number(S.zIndex??ie.value.zIndex??0));return f(F=>{(F.includes(e.id)||!F.length)&&he()}),t.onMounted(()=>{t.watch(()=>S.hidden,(F=!1,R,J)=>{!F&&I.value&&(e.resizeObserver.observe(I.value),J(()=>{I.value&&e.resizeObserver.unobserve(I.value)}))},{immediate:!0,flush:"post"})}),t.watch([()=>S.type,()=>S.sourcePosition,()=>S.targetPosition],()=>{t.nextTick(()=>{u([{id:e.id,nodeElement:I.value,forceUpdate:!0}])})}),t.watch([()=>S.position.x,()=>S.position.y,()=>{var F;return(F=ne.value)==null?void 0:F.computedPosition.x},()=>{var F;return(F=ne.value)==null?void 0:F.computedPosition.y},()=>{var F;return(F=ne.value)==null?void 0:F.computedPosition.z},oe,()=>S.selected,()=>S.dimensions.height,()=>S.dimensions.width,()=>{var F;return(F=ne.value)==null?void 0:F.dimensions.height},()=>{var F;return(F=ne.value)==null?void 0:F.dimensions.width}],([F,R,J,j,ae,L])=>{const $={x:F,y:R,z:L+(m.value&&S.selected?1e3:0)};typeof J<"u"&&typeof j<"u"?S.computedPosition=hA({x:J,y:j,z:ae},$):S.computedPosition=$},{flush:"post",immediate:!0}),t.watch([()=>S.extent,p],([F,R],[J,j])=>{(F!==J||R!==j)&&de()}),S.extent==="parent"||typeof S.extent=="object"&&"range"in S.extent&&S.extent.range==="parent"?cl(()=>P).toBe(!0).then(de):de(),()=>S.hidden?null:t.h("div",{ref:I,"data-id":S.id,class:["vue-flow__node",`vue-flow__node-${A.value===!1?"default":S.type||"default"}`,{[o.value]:U.value,dragging:Y==null?void 0:Y.value,draggable:U.value,selected:S.selected,selectable:te.value,parent:S.isParent},W.value],style:{visibility:P.value?"visible":"hidden",zIndex:S.computedPosition.z??oe.value,transform:`translate(${S.computedPosition.x}px,${S.computedPosition.y}px)`,pointerEvents:v.value?"all":"none",...ie.value},tabIndex:T.value?0:void 0,role:T.value?"group":void 0,"aria-describedby":y.value?void 0:`${If}-${n}`,"aria-label":S.ariaLabel,"aria-roledescription":"node",...S.domAttributes,onMouseenter:X,onMousemove:ce,onMouseleave:se,onContextmenu:ue,onClick:O,onDblclick:fe,onKeydown:B},[t.h(A.value===!1?d.value.default:A.value,{id:S.id,type:S.type,data:S.data,events:{...S.events,...q},selected:S.selected,resizing:S.resizing,dragging:Y.value,connectable:V.value,position:S.computedPosition,dimensions:S.dimensions,isValidTargetPos:S.isValidTargetPos,isValidSourcePos:S.isValidSourcePos,parent:S.parentNode,parentNodeId:S.parentNode,zIndex:S.computedPosition.z??oe.value,targetPosition:S.targetPosition,sourcePosition:S.sourcePosition,label:S.label,dragHandle:S.dragHandle,onUpdateNodeInternals:he})]);function de(){const F=S.computedPosition,{computedPosition:R,position:J}=Vl(S,g.value?Ci(F,h.value):F,l.error,p.value,ne.value);(S.computedPosition.x!==R.x||S.computedPosition.y!==R.y)&&(S.computedPosition={...S.computedPosition,...R}),(S.position.x!==J.x||S.position.y!==J.y)&&(S.position=J)}function he(){I.value&&u([{id:e.id,nodeElement:I.value,forceUpdate:!0}])}function X(F){Y!=null&&Y.value||x.mouseEnter({event:F,node:S})}function ce(F){Y!=null&&Y.value||x.mouseMove({event:F,node:S})}function se(F){Y!=null&&Y.value||x.mouseLeave({event:F,node:S})}function ue(F){return x.contextMenu({event:F,node:S})}function fe(F){return x.doubleClick({event:F,node:S})}function O(F){te.value&&(!r.value||!U.value||w.value>0)&&Ll(S,a.value,c,s,i,!1,I.value),x.click({event:F,node:S})}function B(F){if(!(Tl(F)||y.value))if(Tf.includes(F.key)&&te.value){const R=F.key==="Escape";Ll(S,a.value,c,s,i,R,I.value)}else U.value&&S.selected&&uo[F.key]&&(F.preventDefault(),b.value=`Moved selected node ${F.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~S.position.x}, y: ${~~S.position.y}`,K({x:uo[F.key].x,y:uo[F.key].y},F.shiftKey))}}});function QI(e={includeHiddenNodes:!1}){const{nodes:n}=Fe();return t.computed(()=>{if(n.value.length===0)return!1;for(const o of n.value)if((e.includeHiddenNodes||!o.hidden)&&((o==null?void 0:o.handleBounds)===void 0||o.dimensions.width===0||o.dimensions.height===0))return!1;return!0})}const eP={class:"vue-flow__nodes vue-flow__container"},tP={name:"Nodes",compatConfig:{MODE:3}},nP=t.defineComponent({...tP,setup(e){const{getNodes:n,updateNodeDimensions:o,emits:r}=Fe(),i=QI(),a=t.ref();return t.watch(i,l=>{l&&t.nextTick(()=>{r.nodesInitialized(n.value)})},{immediate:!0}),t.onMounted(()=>{a.value=new ResizeObserver(l=>{const s=l.map(c=>({id:c.target.getAttribute("data-id"),nodeElement:c.target,forceUpdate:!0}));t.nextTick(()=>o(s))})}),t.onBeforeUnmount(()=>{var l;return(l=a.value)==null?void 0:l.disconnect()}),(l,s)=>(t.openBlock(),t.createElementBlock("div",eP,[a.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(t.unref(n),(c,u,f,d)=>{const p=[c.id];if(d&&d.key===c.id&&t.isMemoSame(d,p))return d;const m=(t.openBlock(),t.createBlock(t.unref(JI),{id:c.id,key:c.id,"resize-observer":a.value},null,8,["id","resize-observer"]));return m.memo=p,m},s,0),128)):t.createCommentVNode("",!0)]))}});function oP(){const{emits:e}=Fe();t.onMounted(()=>{if(tp()){const n=document.querySelector(".vue-flow__pane");n&&window.getComputedStyle(n).zIndex!=="1"&&e.error(new at(Qe.MISSING_STYLES))}})}const rP=t.createElementVNode("div",{class:"vue-flow__edge-labels"},null,-1),iP={name:"VueFlow",compatConfig:{MODE:3}},Np=t.defineComponent({...iP,props:{id:{},modelValue:{},nodes:{},edges:{},edgeTypes:{},nodeTypes:{},connectionMode:{},connectionLineType:{},connectionLineStyle:{default:void 0},connectionLineOptions:{default:void 0},connectionRadius:{},isValidConnection:{type:[Function,null],default:void 0},deleteKeyCode:{default:void 0},selectionKeyCode:{type:[Boolean,null],default:void 0},multiSelectionKeyCode:{default:void 0},zoomActivationKeyCode:{default:void 0},panActivationKeyCode:{default:void 0},snapToGrid:{type:Boolean,default:void 0},snapGrid:{},onlyRenderVisibleElements:{type:Boolean,default:void 0},edgesUpdatable:{type:[Boolean,String],default:void 0},nodesDraggable:{type:Boolean,default:void 0},nodesConnectable:{type:Boolean,default:void 0},nodeDragThreshold:{},elementsSelectable:{type:Boolean,default:void 0},selectNodesOnDrag:{type:Boolean,default:void 0},panOnDrag:{type:[Boolean,Array],default:void 0},minZoom:{},maxZoom:{},defaultViewport:{},translateExtent:{},nodeExtent:{},defaultMarkerColor:{},zoomOnScroll:{type:Boolean,default:void 0},zoomOnPinch:{type:Boolean,default:void 0},panOnScroll:{type:Boolean,default:void 0},panOnScrollSpeed:{},panOnScrollMode:{},paneClickDistance:{},zoomOnDoubleClick:{type:Boolean,default:void 0},preventScrolling:{type:Boolean,default:void 0},selectionMode:{},edgeUpdaterRadius:{},fitViewOnInit:{type:Boolean,default:void 0},connectOnClick:{type:Boolean,default:void 0},applyDefault:{type:Boolean,default:void 0},autoConnect:{type:[Boolean,Function],default:void 0},noDragClassName:{},noWheelClassName:{},noPanClassName:{},defaultEdgeOptions:{},elevateEdgesOnSelect:{type:Boolean,default:void 0},elevateNodesOnSelect:{type:Boolean,default:void 0},disableKeyboardA11y:{type:Boolean,default:void 0},edgesFocusable:{type:Boolean,default:void 0},nodesFocusable:{type:Boolean,default:void 0},autoPanOnConnect:{type:Boolean,default:void 0},autoPanOnNodeDrag:{type:Boolean,default:void 0},autoPanSpeed:{}},emits:["nodesChange","edgesChange","nodesInitialized","paneReady","init","updateNodeInternals","error","connect","connectStart","connectEnd","clickConnectStart","clickConnectEnd","moveStart","move","moveEnd","selectionDragStart","selectionDrag","selectionDragStop","selectionContextMenu","selectionStart","selectionEnd","viewportChangeStart","viewportChange","viewportChangeEnd","paneScroll","paneClick","paneContextMenu","paneMouseEnter","paneMouseMove","paneMouseLeave","edgeUpdate","edgeContextMenu","edgeMouseEnter","edgeMouseMove","edgeMouseLeave","edgeDoubleClick","edgeClick","edgeUpdateStart","edgeUpdateEnd","nodeContextMenu","nodeMouseEnter","nodeMouseMove","nodeMouseLeave","nodeDoubleClick","nodeClick","nodeDragStart","nodeDrag","nodeDragStop","miniMapNodeClick","miniMapNodeDoubleClick","miniMapNodeMouseEnter","miniMapNodeMouseMove","miniMapNodeMouseLeave","update:modelValue","update:nodes","update:edges"],setup(e,{expose:n,emit:o}){const r=e,i=t.useSlots(),a=dl(r,"modelValue",o),l=dl(r,"nodes",o),s=dl(r,"edges",o),c=Fe(r),u=zA({modelValue:a,nodes:l,edges:s},r,c);return YA(o,c.hooks),LI(),oP(),t.provide(Ni,i),t.onUnmounted(()=>{u()}),n(c),(f,d)=>(t.openBlock(),t.createElementBlock("div",{ref:t.unref(c).vueFlowRef,class:"vue-flow"},[t.createVNode($I,null,{default:t.withCtx(()=>[t.createVNode(ZI),rP,t.createVNode(nP),t.renderSlot(f.$slots,"zoom-pane")]),_:3}),t.renderSlot(f.$slots,"default"),t.createVNode(MI)],512))}}),aP={name:"Panel",compatConfig:{MODE:3}},lP=t.defineComponent({...aP,props:{position:{}},setup(e){const n=e,{userSelectionActive:o}=Fe(),r=t.computed(()=>`${n.position}`.split("-"));return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["vue-flow__panel",r.value]),style:t.normalizeStyle({pointerEvents:t.unref(o)?"none":"all"})},[t.renderSlot(i.$slots,"default")],6))}});var tn=(e=>(e.Lines="lines",e.Dots="dots",e))(tn||{});const Sp=function({dimensions:e,size:n,color:o}){return t.h("path",{stroke:o,"stroke-width":n,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`})},vp=function({radius:e,color:n}){return t.h("circle",{cx:e,cy:e,r:e,fill:n})};tn.Lines+"",tn.Dots+"";const sP={[tn.Dots]:"#81818a",[tn.Lines]:"#eee"},cP=["id","x","y","width","height","patternTransform"],dP={key:2,height:"100",width:"100"},uP=["fill"],fP=["x","y","fill"],pP={name:"Background",compatConfig:{MODE:3}},mP=t.defineComponent({...pP,props:{id:{},variant:{default:()=>tn.Dots},gap:{default:20},size:{default:1},lineWidth:{default:1},patternColor:{},color:{},bgColor:{},height:{default:100},width:{default:100},x:{default:0},y:{default:0},offset:{default:0}},setup(e){const{id:n,viewport:o}=Fe(),r=t.computed(()=>{const l=o.value.zoom,[s,c]=Array.isArray(e.gap)?e.gap:[e.gap,e.gap],u=[s*l||1,c*l||1],f=e.size*l,[d,p]=Array.isArray(e.offset)?e.offset:[e.offset,e.offset],m=[d*l||1+u[0]/2,p*l||1+u[1]/2];return{scaledGap:u,offset:m,size:f}}),i=t.toRef(()=>`pattern-${n}${e.id?`-${e.id}`:""}`),a=t.toRef(()=>e.color||e.patternColor||sP[e.variant||tn.Dots]);return(l,s)=>(t.openBlock(),t.createElementBlock("svg",{class:"vue-flow__background vue-flow__container",style:t.normalizeStyle({height:`${l.height>100?100:l.height}%`,width:`${l.width>100?100:l.width}%`})},[t.renderSlot(l.$slots,"pattern-container",{id:i.value},()=>[t.createElementVNode("pattern",{id:i.value,x:t.unref(o).x%r.value.scaledGap[0],y:t.unref(o).y%r.value.scaledGap[1],width:r.value.scaledGap[0],height:r.value.scaledGap[1],patternTransform:`translate(-${r.value.offset[0]},-${r.value.offset[1]})`,patternUnits:"userSpaceOnUse"},[t.renderSlot(l.$slots,"pattern",{},()=>[l.variant===t.unref(tn).Lines?(t.openBlock(),t.createBlock(t.unref(Sp),{key:0,size:l.lineWidth,color:a.value,dimensions:r.value.scaledGap},null,8,["size","color","dimensions"])):l.variant===t.unref(tn).Dots?(t.openBlock(),t.createBlock(t.unref(vp),{key:1,color:a.value,radius:r.value.size/2},null,8,["color","radius"])):t.createCommentVNode("",!0),l.bgColor?(t.openBlock(),t.createElementBlock("svg",dP,[t.createElementVNode("rect",{width:"100%",height:"100%",fill:l.bgColor},null,8,uP)])):t.createCommentVNode("",!0)])],8,cP)]),t.createElementVNode("rect",{x:l.x,y:l.y,width:"100%",height:"100%",fill:`url(#${i.value})`},null,8,fP),t.renderSlot(l.$slots,"default",{id:i.value})],4))}}),gP={name:"ControlButton",compatConfig:{MODE:3}},hP=(e,n)=>{const o=e.__vccOpts||e;for(const[r,i]of n)o[r]=i;return o},yP={class:"vue-flow__controls-button"};function _P(e,n,o,r,i,a){return t.openBlock(),t.createElementBlock("button",yP,[t.renderSlot(e.$slots,"default")])}const cr=hP(gP,[["render",_P]]),bP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},wP=[t.createElementVNode("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"},null,-1)];function kP(e,n){return t.openBlock(),t.createElementBlock("svg",bP,wP)}const CP={render:kP},EP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},NP=[t.createElementVNode("path",{d:"M0 0h32v4.2H0z"},null,-1)];function SP(e,n){return t.openBlock(),t.createElementBlock("svg",EP,NP)}const vP={render:SP},xP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},AP=[t.createElementVNode("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0 0 27.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94a.919.919 0 0 1-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"},null,-1)];function IP(e,n){return t.openBlock(),t.createElementBlock("svg",xP,AP)}const PP={render:IP},TP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},OP=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"},null,-1)];function $P(e,n){return t.openBlock(),t.createElementBlock("svg",TP,OP)}const BP={render:$P},VP={xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},RP=[t.createElementVNode("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 0 0 0 13.714v15.238A3.056 3.056 0 0 0 3.048 32h18.285a3.056 3.056 0 0 0 3.048-3.048V13.714a3.056 3.056 0 0 0-3.048-3.047zM12.19 24.533a3.056 3.056 0 0 1-3.047-3.047 3.056 3.056 0 0 1 3.047-3.048 3.056 3.056 0 0 1 3.048 3.048 3.056 3.056 0 0 1-3.048 3.047z"},null,-1)];function DP(e,n){return t.openBlock(),t.createElementBlock("svg",VP,RP)}const MP={render:DP},LP={name:"Controls",compatConfig:{MODE:3}},FP=t.defineComponent({...LP,props:{showZoom:{type:Boolean,default:!0},showFitView:{type:Boolean,default:!0},showInteractive:{type:Boolean,default:!0},fitViewParams:{},position:{default:()=>xf.BottomLeft}},emits:["zoomIn","zoomOut","fitView","interactionChange"],setup(e,{emit:n}){const{nodesDraggable:o,nodesConnectable:r,elementsSelectable:i,setInteractive:a,zoomIn:l,zoomOut:s,fitView:c,viewport:u,minZoom:f,maxZoom:d}=Fe(),p=t.toRef(()=>o.value||r.value||i.value),m=t.toRef(()=>u.value.zoom<=f.value),y=t.toRef(()=>u.value.zoom>=d.value);function b(){l(),n("zoomIn")}function g(){s(),n("zoomOut")}function h(){c(e.fitViewParams),n("fitView")}function w(){a(!p.value),n("interactionChange",!p.value)}return(_,k)=>(t.openBlock(),t.createBlock(t.unref(lP),{class:"vue-flow__controls",position:_.position},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"top"),_.showZoom?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.renderSlot(_.$slots,"control-zoom-in",{},()=>[t.createVNode(cr,{class:"vue-flow__controls-zoomin",disabled:y.value,onClick:b},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-zoom-in",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(CP))))])]),_:3},8,["disabled"])]),t.renderSlot(_.$slots,"control-zoom-out",{},()=>[t.createVNode(cr,{class:"vue-flow__controls-zoomout",disabled:m.value,onClick:g},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-zoom-out",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(vP))))])]),_:3},8,["disabled"])])],64)):t.createCommentVNode("",!0),_.showFitView?t.renderSlot(_.$slots,"control-fit-view",{key:1},()=>[t.createVNode(cr,{class:"vue-flow__controls-fitview",onClick:h},{default:t.withCtx(()=>[t.renderSlot(_.$slots,"icon-fit-view",{},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(PP))))])]),_:3})]):t.createCommentVNode("",!0),_.showInteractive?t.renderSlot(_.$slots,"control-interactive",{key:2},()=>[_.showInteractive?(t.openBlock(),t.createBlock(cr,{key:0,class:"vue-flow__controls-interactive",onClick:w},{default:t.withCtx(()=>[p.value?t.renderSlot(_.$slots,"icon-unlock",{key:0},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(MP))))]):t.createCommentVNode("",!0),p.value?t.createCommentVNode("",!0):t.renderSlot(_.$slots,"icon-lock",{key:1},()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(BP))))])]),_:3})):t.createCommentVNode("",!0)]):t.createCommentVNode("",!0),t.renderSlot(_.$slots,"default")]),_:3},8,["position"]))}}),UP=["undo","redo","duplicate","cut","copy","paste"],xp=()=>{};function KP(e){const n=e;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function jP(e){if(!(e.metaKey||e.ctrlKey))return;switch(e.key.toLowerCase()){case"z":return e.shiftKey?"redo":"undo";case"y":return"redo";case"d":return"duplicate";case"x":return"cut";case"c":return"copy";case"v":return"paste"}}const GP=Xe.createSharedComposable(()=>{const e=new Set;Xe.useEventListener("keydown",o=>{if(KP(o.target))return;const r=jP(o);if(r)for(const i of e){if(!t.toValue(i.enabled))continue;const a=i[r];if(a){if(o.defaultPrevented){t.warn(`[useHotkeys] event for "${r}" was already defaultPrevented. Hotkey ignored.`);return}o.preventDefault(),a();return}}},{passive:!1});function n(o){if(!UP.some(i=>typeof o[i]=="function"))return xp;const r={enabled:o.enabled??!0,...o};return e.add(r),()=>e.delete(r)}return{subscribe:n}});function Ap(e={}){if(typeof window>"u")return xp;const n=GP().subscribe(e);return t.onScopeDispose(n),n}const dr={padding:80,gaps:{nodes:40,edges:80,ranks:40}},qP=1600,zP=1.2,HP=0,YP=200,Ip=Symbol("confirm-modal"),po="{key}",Rn={"kong.client.consumer":{dataType:"object",writable:!1,readable:!0},"kong.client.consumer_groups":{dataType:"array",writable:!1,readable:!0},"kong.client.credential":{dataType:"object",writable:!1,readable:!0},"kong.client.get_identity_realm_source":{dataType:"object",writable:!1,readable:!0},"kong.client.forwarded_ip":{dataType:"string",writable:!1,readable:!0},"kong.client.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.client.ip":{dataType:"string",writable:!1,readable:!0},"kong.client.port":{dataType:"number",writable:!1,readable:!0},"kong.client.protocol":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_host":{dataType:"string",writable:!1,readable:!0},"kong.request.forwarded_port":{dataType:"number",writable:!1,readable:!0},"kong.request.forwarded_scheme":{dataType:"string",writable:!1,readable:!0},"kong.request.port":{dataType:"number",writable:!1,readable:!0},"kong.response.source":{dataType:"string",writable:!1,readable:!0},"kong.router.route":{dataType:"object",writable:!1,readable:!0},"kong.route_id":{dataType:"string",writable:!1,readable:!0},"kong.route_name":{dataType:"string",writable:!1,readable:!0},"kong.router.service":{dataType:"object",writable:!1,readable:!0},"kong.service_name":{dataType:"string",writable:!1,readable:!0},"kong.service_id":{dataType:"string",writable:!1,readable:!0},"kong.service.response.status":{dataType:"number",writable:!1,readable:!0},"kong.version":{dataType:"string",writable:!1,readable:!0},"kong.node.id":{dataType:"string",writable:!1,readable:!0},"kong.configuration.{key}":{dataType:"any",writable:!1,readable:!0},"kong.service.target":{dataType:"string ({host}:{port})",writable:!0,readable:!1},"kong.service.request_scheme":{dataType:"string ({scheme})",writable:!0,readable:!1},"kong.ctx.plugin.{key}":{dataType:"any",writable:!0,readable:!0},"kong.ctx.shared.{key}":{dataType:"any",writable:!0,readable:!0}},Ti=Object.keys(Rn).filter(e=>e.includes(po)).map(e=>e.replace(po,""));function zl(e){if(!e||!fr(e))return;const n=Ti.find(o=>e.startsWith(o));if(n)return e.slice(n.length).replace(po,"")}function ur(e){if(!e)return null;const n=Ti.find(o=>e.startsWith(o));return n||e}function fr(e){return e?Ti.some(n=>e.startsWith(n)):!1}function Pp(e){return e?fr(e)?ur(e)+po:e:null}function Hl(e){var o;if(!e)return!1;const n=Pp(e);return n?((o=Rn[n])==null?void 0:o.readable)??!1:!1}function Yl(e){var o;if(!e)return!1;const n=Pp(e);return n?((o=Rn[n])==null?void 0:o.writable)??!1:!1}function WP(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var XP="\0",Dn="\0",Tp="";let ZP=class{constructor(n){ot(this,"_isDirected",!0);ot(this,"_isMultigraph",!1);ot(this,"_isCompound",!1);ot(this,"_label");ot(this,"_defaultNodeLabelFn",()=>{});ot(this,"_defaultEdgeLabelFn",()=>{});ot(this,"_nodes",{});ot(this,"_in",{});ot(this,"_preds",{});ot(this,"_out",{});ot(this,"_sucs",{});ot(this,"_edgeObjs",{});ot(this,"_edgeLabels",{});ot(this,"_nodeCount",0);ot(this,"_edgeCount",0);ot(this,"_parent");ot(this,"_children");n&&(this._isDirected=Object.hasOwn(n,"directed")?n.directed:!0,this._isMultigraph=Object.hasOwn(n,"multigraph")?n.multigraph:!1,this._isCompound=Object.hasOwn(n,"compound")?n.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[Dn]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph(n){return this._label=n,this}graph(){return this._label}setDefaultNodeLabel(n){return this._defaultNodeLabelFn=n,typeof n!="function"&&(this._defaultNodeLabelFn=()=>n),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var n=this;return this.nodes().filter(o=>Object.keys(n._in[o]).length===0)}sinks(){var n=this;return this.nodes().filter(o=>Object.keys(n._out[o]).length===0)}setNodes(n,o){var r=arguments,i=this;return n.forEach(function(a){r.length>1?i.setNode(a,o):i.setNode(a)}),this}setNode(n,o){return Object.hasOwn(this._nodes,n)?(arguments.length>1&&(this._nodes[n]=o),this):(this._nodes[n]=arguments.length>1?o:this._defaultNodeLabelFn(n),this._isCompound&&(this._parent[n]=Dn,this._children[n]={},this._children[Dn][n]=!0),this._in[n]={},this._preds[n]={},this._out[n]={},this._sucs[n]={},++this._nodeCount,this)}node(n){return this._nodes[n]}hasNode(n){return Object.hasOwn(this._nodes,n)}removeNode(n){var o=this;if(Object.hasOwn(this._nodes,n)){var r=i=>o.removeEdge(o._edgeObjs[i]);delete this._nodes[n],this._isCompound&&(this._removeFromParentsChildList(n),delete this._parent[n],this.children(n).forEach(function(i){o.setParent(i)}),delete this._children[n]),Object.keys(this._in[n]).forEach(r),delete this._in[n],delete this._preds[n],Object.keys(this._out[n]).forEach(r),delete this._out[n],delete this._sucs[n],--this._nodeCount}return this}setParent(n,o){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(o===void 0)o=Dn;else{o+="";for(var r=o;r!==void 0;r=this.parent(r))if(r===n)throw new Error("Setting "+o+" as parent of "+n+" would create a cycle");this.setNode(o)}return this.setNode(n),this._removeFromParentsChildList(n),this._parent[n]=o,this._children[o][n]=!0,this}_removeFromParentsChildList(n){delete this._children[this._parent[n]][n]}parent(n){if(this._isCompound){var o=this._parent[n];if(o!==Dn)return o}}children(n=Dn){if(this._isCompound){var o=this._children[n];if(o)return Object.keys(o)}else{if(n===Dn)return this.nodes();if(this.hasNode(n))return[]}}predecessors(n){var o=this._preds[n];if(o)return Object.keys(o)}successors(n){var o=this._sucs[n];if(o)return Object.keys(o)}neighbors(n){var o=this.predecessors(n);if(o){const i=new Set(o);for(var r of this.successors(n))i.add(r);return Array.from(i.values())}}isLeaf(n){var o;return this.isDirected()?o=this.successors(n):o=this.neighbors(n),o.length===0}filterNodes(n){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});o.setGraph(this.graph());var r=this;Object.entries(this._nodes).forEach(function([l,s]){n(l)&&o.setNode(l,s)}),Object.values(this._edgeObjs).forEach(function(l){o.hasNode(l.v)&&o.hasNode(l.w)&&o.setEdge(l,r.edge(l))});var i={};function a(l){var s=r.parent(l);return s===void 0||o.hasNode(s)?(i[l]=s,s):s in i?i[s]:a(s)}return this._isCompound&&o.nodes().forEach(l=>o.setParent(l,a(l))),o}setDefaultEdgeLabel(n){return this._defaultEdgeLabelFn=n,typeof n!="function"&&(this._defaultEdgeLabelFn=()=>n),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath(n,o){var r=this,i=arguments;return n.reduce(function(a,l){return i.length>1?r.setEdge(a,l,o):r.setEdge(a,l),l}),this}setEdge(){var n,o,r,i,a=!1,l=arguments[0];typeof l=="object"&&l!==null&&"v"in l?(n=l.v,o=l.w,r=l.name,arguments.length===2&&(i=arguments[1],a=!0)):(n=l,o=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],a=!0)),n=""+n,o=""+o,r!==void 0&&(r=""+r);var s=pr(this._isDirected,n,o,r);if(Object.hasOwn(this._edgeLabels,s))return a&&(this._edgeLabels[s]=i),this;if(r!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(n),this.setNode(o),this._edgeLabels[s]=a?i:this._defaultEdgeLabelFn(n,o,r);var c=JP(this._isDirected,n,o,r);return n=c.v,o=c.w,Object.freeze(c),this._edgeObjs[s]=c,Op(this._preds[o],n),Op(this._sucs[n],o),this._in[o][s]=c,this._out[n][s]=c,this._edgeCount++,this}edge(n,o,r){var i=arguments.length===1?Wl(this._isDirected,arguments[0]):pr(this._isDirected,n,o,r);return this._edgeLabels[i]}edgeAsObj(){const n=this.edge(...arguments);return typeof n!="object"?{label:n}:n}hasEdge(n,o,r){var i=arguments.length===1?Wl(this._isDirected,arguments[0]):pr(this._isDirected,n,o,r);return Object.hasOwn(this._edgeLabels,i)}removeEdge(n,o,r){var i=arguments.length===1?Wl(this._isDirected,arguments[0]):pr(this._isDirected,n,o,r),a=this._edgeObjs[i];return a&&(n=a.v,o=a.w,delete this._edgeLabels[i],delete this._edgeObjs[i],$p(this._preds[o],n),$p(this._sucs[n],o),delete this._in[o][i],delete this._out[n][i],this._edgeCount--),this}inEdges(n,o){var r=this._in[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.v===o):i}}outEdges(n,o){var r=this._out[n];if(r){var i=Object.values(r);return o?i.filter(a=>a.w===o):i}}nodeEdges(n,o){var r=this.inEdges(n,o);if(r)return r.concat(this.outEdges(n,o))}};function Op(e,n){e[n]?e[n]++:e[n]=1}function $p(e,n){--e[n]||delete e[n]}function pr(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}return i+Tp+a+Tp+(r===void 0?XP:r)}function JP(e,n,o,r){var i=""+n,a=""+o;if(!e&&i>a){var l=i;i=a,a=l}var s={v:i,w:a};return r&&(s.name=r),s}function Wl(e,n){return pr(e,n.v,n.w,n.name)}var Xl=ZP,QP="2.2.4",eT={Graph:Xl,version:QP},tT=Xl,nT={write:oT,read:aT};function oT(e){var n={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:rT(e),edges:iT(e)};return e.graph()!==void 0&&(n.value=structuredClone(e.graph())),n}function rT(e){return e.nodes().map(function(n){var o=e.node(n),r=e.parent(n),i={v:n};return o!==void 0&&(i.value=o),r!==void 0&&(i.parent=r),i})}function iT(e){return e.edges().map(function(n){var o=e.edge(n),r={v:n.v,w:n.w};return n.name!==void 0&&(r.name=n.name),o!==void 0&&(r.value=o),r})}function aT(e){var n=new tT(e.options).setGraph(e.value);return e.nodes.forEach(function(o){n.setNode(o.v,o.value),o.parent&&n.setParent(o.v,o.parent)}),e.edges.forEach(function(o){n.setEdge({v:o.v,w:o.w,name:o.name},o.value)}),n}var lT=sT;function sT(e){var n={},o=[],r;function i(a){Object.hasOwn(n,a)||(n[a]=!0,r.push(a),e.successors(a).forEach(i),e.predecessors(a).forEach(i))}return e.nodes().forEach(function(a){r=[],i(a),r.length&&o.push(r)}),o}var Bp=class{constructor(){ot(this,"_arr",[]);ot(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(n){return n.key})}has(n){return Object.hasOwn(this._keyIndices,n)}priority(n){var o=this._keyIndices[n];if(o!==void 0)return this._arr[o].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(n,o){var r=this._keyIndices;if(n=String(n),!Object.hasOwn(r,n)){var i=this._arr,a=i.length;return r[n]=a,i.push({key:n,priority:o}),this._decrease(a),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var n=this._arr.pop();return delete this._keyIndices[n.key],this._heapify(0),n.key}decrease(n,o){var r=this._keyIndices[n];if(o>this._arr[r].priority)throw new Error("New priority is greater than current priority. Key: "+n+" Old: "+this._arr[r].priority+" New: "+o);this._arr[r].priority=o,this._decrease(r)}_heapify(n){var o=this._arr,r=2*n,i=r+1,a=n;r<o.length&&(a=o[r].priority<o[a].priority?r:a,i<o.length&&(a=o[i].priority<o[a].priority?i:a),a!==n&&(this._swap(n,a),this._heapify(a)))}_decrease(n){for(var o=this._arr,r=o[n].priority,i;n!==0&&(i=n>>1,!(o[i].priority<r));)this._swap(n,i),n=i}_swap(n,o){var r=this._arr,i=this._keyIndices,a=r[n],l=r[o];r[n]=l,r[o]=a,i[l.key]=n,i[a.key]=o}},cT=Bp,Vp=uT,dT=()=>1;function uT(e,n,o,r){return fT(e,String(n),o||dT,r||function(i){return e.outEdges(i)})}function fT(e,n,o,r){var i={},a=new cT,l,s,c=function(u){var f=u.v!==l?u.v:u.w,d=i[f],p=o(u),m=s.distance+p;if(p<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+u+" Weight: "+p);m<d.distance&&(d.distance=m,d.predecessor=l,a.decrease(f,m))};for(e.nodes().forEach(function(u){var f=u===n?0:Number.POSITIVE_INFINITY;i[u]={distance:f},a.add(u,f)});a.size()>0&&(l=a.removeMin(),s=i[l],s.distance!==Number.POSITIVE_INFINITY);)r(l).forEach(c);return i}var pT=Vp,mT=gT;function gT(e,n,o){return e.nodes().reduce(function(r,i){return r[i]=pT(e,i,n,o),r},{})}var Rp=hT;function hT(e){var n=0,o=[],r={},i=[];function a(l){var s=r[l]={onStack:!0,lowlink:n,index:n++};if(o.push(l),e.successors(l).forEach(function(f){Object.hasOwn(r,f)?r[f].onStack&&(s.lowlink=Math.min(s.lowlink,r[f].index)):(a(f),s.lowlink=Math.min(s.lowlink,r[f].lowlink))}),s.lowlink===s.index){var c=[],u;do u=o.pop(),r[u].onStack=!1,c.push(u);while(l!==u);i.push(c)}}return e.nodes().forEach(function(l){Object.hasOwn(r,l)||a(l)}),i}var yT=Rp,_T=bT;function bT(e){return yT(e).filter(function(n){return n.length>1||n.length===1&&e.hasEdge(n[0],n[0])})}var wT=CT,kT=()=>1;function CT(e,n,o){return ET(e,n||kT,o||function(r){return e.outEdges(r)})}function ET(e,n,o){var r={},i=e.nodes();return i.forEach(function(a){r[a]={},r[a][a]={distance:0},i.forEach(function(l){a!==l&&(r[a][l]={distance:Number.POSITIVE_INFINITY})}),o(a).forEach(function(l){var s=l.v===a?l.w:l.v,c=n(l);r[a][s]={distance:c,predecessor:a}})}),i.forEach(function(a){var l=r[a];i.forEach(function(s){var c=r[s];i.forEach(function(u){var f=c[a],d=l[u],p=c[u],m=f.distance+d.distance;m<p.distance&&(p.distance=m,p.predecessor=d.predecessor)})})}),r}function Dp(e){var n={},o={},r=[];function i(a){if(Object.hasOwn(o,a))throw new Zl;Object.hasOwn(n,a)||(o[a]=!0,n[a]=!0,e.predecessors(a).forEach(i),delete o[a],r.push(a))}if(e.sinks().forEach(i),Object.keys(n).length!==e.nodeCount())throw new Zl;return r}class Zl extends Error{constructor(){super(...arguments)}}var Mp=Dp;Dp.CycleException=Zl;var Lp=Mp,NT=ST;function ST(e){try{Lp(e)}catch(n){if(n instanceof Lp.CycleException)return!1;throw n}return!0}var Fp=vT;function vT(e,n,o){Array.isArray(n)||(n=[n]);var r=e.isDirected()?s=>e.successors(s):s=>e.neighbors(s),i=o==="post"?xT:AT,a=[],l={};return n.forEach(s=>{if(!e.hasNode(s))throw new Error("Graph does not have node: "+s);i(s,r,l,a)}),a}function xT(e,n,o,r){for(var i=[[e,!1]];i.length>0;){var a=i.pop();a[1]?r.push(a[0]):Object.hasOwn(o,a[0])||(o[a[0]]=!0,i.push([a[0],!0]),Up(n(a[0]),l=>i.push([l,!1])))}}function AT(e,n,o,r){for(var i=[e];i.length>0;){var a=i.pop();Object.hasOwn(o,a)||(o[a]=!0,r.push(a),Up(n(a),l=>i.push(l)))}}function Up(e,n){for(var o=e.length;o--;)n(e[o],o,e);return e}var IT=Fp,PT=TT;function TT(e,n){return IT(e,n,"post")}var OT=Fp,$T=BT;function BT(e,n){return OT(e,n,"pre")}var VT=Xl,RT=Bp,DT=MT;function MT(e,n){var o=new VT,r={},i=new RT,a;function l(c){var u=c.v===a?c.w:c.v,f=i.priority(u);if(f!==void 0){var d=n(c);d<f&&(r[u]=a,i.decrease(u,d))}}if(e.nodeCount()===0)return o;e.nodes().forEach(function(c){i.add(c,Number.POSITIVE_INFINITY),o.setNode(c)}),i.decrease(e.nodes()[0],0);for(var s=!1;i.size()>0;){if(a=i.removeMin(),Object.hasOwn(r,a))o.setEdge(a,r[a]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(a).forEach(l)}return o}var LT={components:lT,dijkstra:Vp,dijkstraAll:mT,findCycles:_T,floydWarshall:wT,isAcyclic:NT,postorder:PT,preorder:$T,prim:DT,tarjan:Rp,topsort:Mp},Kp=eT,Bt={Graph:Kp.Graph,json:nT,alg:LT,version:Kp.version};let FT=class{constructor(){let n={};n._next=n._prev=n,this._sentinel=n}dequeue(){let n=this._sentinel,o=n._prev;if(o!==n)return jp(o),o}enqueue(n){let o=this._sentinel;n._prev&&n._next&&jp(n),n._next=o._next,o._next._prev=n,o._next=n,n._prev=o}toString(){let n=[],o=this._sentinel,r=o._prev;for(;r!==o;)n.push(JSON.stringify(r,UT)),r=r._prev;return"["+n.join(", ")+"]"}};function jp(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function UT(e,n){if(e!=="_next"&&e!=="_prev")return n}var KT=FT;let jT=Bt.Graph,GT=KT;var qT=HT;let zT=()=>1;function HT(e,n){if(e.nodeCount()<=1)return[];let o=WT(e,n||zT);return YT(o.graph,o.buckets,o.zeroIdx).flatMap(i=>e.outEdges(i.v,i.w))}function YT(e,n,o){let r=[],i=n[n.length-1],a=n[0],l;for(;e.nodeCount();){for(;l=a.dequeue();)Jl(e,n,o,l);for(;l=i.dequeue();)Jl(e,n,o,l);if(e.nodeCount()){for(let s=n.length-2;s>0;--s)if(l=n[s].dequeue(),l){r=r.concat(Jl(e,n,o,l,!0));break}}}return r}function Jl(e,n,o,r,i){let a=i?[]:void 0;return e.inEdges(r.v).forEach(l=>{let s=e.edge(l),c=e.node(l.v);i&&a.push({v:l.v,w:l.w}),c.out-=s,Ql(n,o,c)}),e.outEdges(r.v).forEach(l=>{let s=e.edge(l),c=l.w,u=e.node(c);u.in-=s,Ql(n,o,u)}),e.removeNode(r.v),a}function WT(e,n){let o=new jT,r=0,i=0;e.nodes().forEach(s=>{o.setNode(s,{v:s,in:0,out:0})}),e.edges().forEach(s=>{let c=o.edge(s.v,s.w)||0,u=n(s),f=c+u;o.setEdge(s.v,s.w,f),i=Math.max(i,o.node(s.v).out+=u),r=Math.max(r,o.node(s.w).in+=u)});let a=XT(i+r+3).map(()=>new GT),l=r+1;return o.nodes().forEach(s=>{Ql(a,l,o.node(s))}),{graph:o,buckets:a,zeroIdx:l}}function Ql(e,n,o){o.out?o.in?e[o.out-o.in+n].enqueue(o):e[e.length-1].enqueue(o):e[0].enqueue(o)}function XT(e){const n=[];for(let o=0;o<e;o++)n.push(o);return n}let Gp=Bt.Graph;var tt={addBorderNode:iO,addDummyNode:qp,applyWithChunking:Oi,asNonCompoundGraph:JT,buildLayerMatrix:nO,intersectRect:tO,mapValues:fO,maxRank:Hp,normalizeRanks:oO,notime:cO,partition:lO,pick:uO,predecessorWeights:eO,range:Wp,removeEmptyRanks:rO,simplify:ZT,successorWeights:QT,time:sO,uniqueId:Yp,zipObject:es};function qp(e,n,o,r){for(var i=r;e.hasNode(i);)i=Yp(r);return o.dummy=n,e.setNode(i,o),i}function ZT(e){let n=new Gp().setGraph(e.graph());return e.nodes().forEach(o=>n.setNode(o,e.node(o))),e.edges().forEach(o=>{let r=n.edge(o.v,o.w)||{weight:0,minlen:1},i=e.edge(o);n.setEdge(o.v,o.w,{weight:r.weight+i.weight,minlen:Math.max(r.minlen,i.minlen)})}),n}function JT(e){let n=new Gp({multigraph:e.isMultigraph()}).setGraph(e.graph());return e.nodes().forEach(o=>{e.children(o).length||n.setNode(o,e.node(o))}),e.edges().forEach(o=>{n.setEdge(o,e.edge(o))}),n}function QT(e){let n=e.nodes().map(o=>{let r={};return e.outEdges(o).forEach(i=>{r[i.w]=(r[i.w]||0)+e.edge(i).weight}),r});return es(e.nodes(),n)}function eO(e){let n=e.nodes().map(o=>{let r={};return e.inEdges(o).forEach(i=>{r[i.v]=(r[i.v]||0)+e.edge(i).weight}),r});return es(e.nodes(),n)}function tO(e,n){let o=e.x,r=e.y,i=n.x-o,a=n.y-r,l=e.width/2,s=e.height/2;if(!i&&!a)throw new Error("Not possible to find intersection inside of the rectangle");let c,u;return Math.abs(a)*l>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,u=s):(i<0&&(l=-l),c=l,u=l*a/i),{x:o+c,y:r+u}}function nO(e){let n=Wp(Hp(e)+1).map(()=>[]);return e.nodes().forEach(o=>{let r=e.node(o),i=r.rank;i!==void 0&&(n[i][r.order]=o)}),n}function oO(e){let n=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MAX_VALUE:i}),o=Oi(Math.min,n);e.nodes().forEach(r=>{let i=e.node(r);Object.hasOwn(i,"rank")&&(i.rank-=o)})}function rO(e){let n=e.nodes().map(l=>e.node(l).rank),o=Oi(Math.min,n),r=[];e.nodes().forEach(l=>{let s=e.node(l).rank-o;r[s]||(r[s]=[]),r[s].push(l)});let i=0,a=e.graph().nodeRankFactor;Array.from(r).forEach((l,s)=>{l===void 0&&s%a!==0?--i:l!==void 0&&i&&l.forEach(c=>e.node(c).rank+=i)})}function iO(e,n,o,r){let i={width:0,height:0};return arguments.length>=4&&(i.rank=o,i.order=r),qp(e,"border",i,n)}function aO(e,n=zp){const o=[];for(let r=0;r<e.length;r+=n){const i=e.slice(r,r+n);o.push(i)}return o}const zp=65535;function Oi(e,n){if(n.length>zp){const o=aO(n);return e.apply(null,o.map(r=>e.apply(null,r)))}else return e.apply(null,n)}function Hp(e){const o=e.nodes().map(r=>{let i=e.node(r).rank;return i===void 0?Number.MIN_VALUE:i});return Oi(Math.max,o)}function lO(e,n){let o={lhs:[],rhs:[]};return e.forEach(r=>{n(r)?o.lhs.push(r):o.rhs.push(r)}),o}function sO(e,n){let o=Date.now();try{return n()}finally{console.log(e+" time: "+(Date.now()-o)+"ms")}}function cO(e,n){return n()}let dO=0;function Yp(e){var n=++dO;return e+(""+n)}function Wp(e,n,o=1){n==null&&(n=e,e=0);let r=a=>a<n;o<0&&(r=a=>n<a);const i=[];for(let a=e;r(a);a+=o)i.push(a);return i}function uO(e,n){const o={};for(const r of n)e[r]!==void 0&&(o[r]=e[r]);return o}function fO(e,n){let o=n;return typeof n=="string"&&(o=r=>r[n]),Object.entries(e).reduce((r,[i,a])=>(r[i]=o(a,i),r),{})}function es(e,n){return e.reduce((o,r,i)=>(o[r]=n[i],o),{})}let pO=qT,mO=tt.uniqueId;var gO={run:hO,undo:_O};function hO(e){(e.graph().acyclicer==="greedy"?pO(e,o(e)):yO(e)).forEach(r=>{let i=e.edge(r);e.removeEdge(r),i.forwardName=r.name,i.reversed=!0,e.setEdge(r.w,r.v,i,mO("rev"))});function o(r){return i=>r.edge(i).weight}}function yO(e){let n=[],o={},r={};function i(a){Object.hasOwn(r,a)||(r[a]=!0,o[a]=!0,e.outEdges(a).forEach(l=>{Object.hasOwn(o,l.w)?n.push(l):i(l.w)}),delete o[a])}return e.nodes().forEach(i),n}function _O(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.reversed){e.removeEdge(n);let r=o.forwardName;delete o.reversed,delete o.forwardName,e.setEdge(n.w,n.v,o,r)}})}let bO=tt;var wO={run:kO,undo:EO};function kO(e){e.graph().dummyChains=[],e.edges().forEach(n=>CO(e,n))}function CO(e,n){let o=n.v,r=e.node(o).rank,i=n.w,a=e.node(i).rank,l=n.name,s=e.edge(n),c=s.labelRank;if(a===r+1)return;e.removeEdge(n);let u,f,d;for(d=0,++r;r<a;++d,++r)s.points=[],f={width:0,height:0,edgeLabel:s,edgeObj:n,rank:r},u=bO.addDummyNode(e,"edge",f,"_d"),r===c&&(f.width=s.width,f.height=s.height,f.dummy="edge-label",f.labelpos=s.labelpos),e.setEdge(o,u,{weight:s.weight},l),d===0&&e.graph().dummyChains.push(u),o=u;e.setEdge(o,i,{weight:s.weight},l)}function EO(e){e.graph().dummyChains.forEach(n=>{let o=e.node(n),r=o.edgeLabel,i;for(e.setEdge(o.edgeObj,r);o.dummy;)i=e.successors(n)[0],e.removeNode(n),r.points.push({x:o.x,y:o.y}),o.dummy==="edge-label"&&(r.x=o.x,r.y=o.y,r.width=o.width,r.height=o.height),n=i,o=e.node(n)})}const{applyWithChunking:NO}=tt;var $i={longestPath:SO,slack:vO};function SO(e){var n={};function o(r){var i=e.node(r);if(Object.hasOwn(n,r))return i.rank;n[r]=!0;let a=e.outEdges(r).map(s=>s==null?Number.POSITIVE_INFINITY:o(s.w)-e.edge(s).minlen);var l=NO(Math.min,a);return l===Number.POSITIVE_INFINITY&&(l=0),i.rank=l}e.sources().forEach(o)}function vO(e,n){return e.node(n.w).rank-e.node(n.v).rank-e.edge(n).minlen}var xO=Bt.Graph,Bi=$i.slack,Xp=AO;function AO(e){var n=new xO({directed:!1}),o=e.nodes()[0],r=e.nodeCount();n.setNode(o,{});for(var i,a;IO(n,e)<r;)i=PO(n,e),a=n.hasNode(i.v)?Bi(e,i):-Bi(e,i),TO(n,e,a);return n}function IO(e,n){function o(r){n.nodeEdges(r).forEach(i=>{var a=i.v,l=r===a?i.w:a;!e.hasNode(l)&&!Bi(n,i)&&(e.setNode(l,{}),e.setEdge(r,l,{}),o(l))})}return e.nodes().forEach(o),e.nodeCount()}function PO(e,n){return n.edges().reduce((r,i)=>{let a=Number.POSITIVE_INFINITY;return e.hasNode(i.v)!==e.hasNode(i.w)&&(a=Bi(n,i)),a<r[0]?[a,i]:r},[Number.POSITIVE_INFINITY,null])[1]}function TO(e,n,o){e.nodes().forEach(r=>n.node(r).rank+=o)}var OO=Xp,Zp=$i.slack,$O=$i.longestPath,BO=Bt.alg.preorder,VO=Bt.alg.postorder,RO=tt.simplify,DO=Mn;Mn.initLowLimValues=ns,Mn.initCutValues=ts,Mn.calcCutValue=Jp,Mn.leaveEdge=em,Mn.enterEdge=tm,Mn.exchangeEdges=nm;function Mn(e){e=RO(e),$O(e);var n=OO(e);ns(n),ts(n,e);for(var o,r;o=em(n);)r=tm(n,e,o),nm(n,e,o,r)}function ts(e,n){var o=VO(e,e.nodes());o=o.slice(0,o.length-1),o.forEach(r=>MO(e,n,r))}function MO(e,n,o){var r=e.node(o),i=r.parent;e.edge(o,i).cutvalue=Jp(e,n,o)}function Jp(e,n,o){var r=e.node(o),i=r.parent,a=!0,l=n.edge(o,i),s=0;return l||(a=!1,l=n.edge(i,o)),s=l.weight,n.nodeEdges(o).forEach(c=>{var u=c.v===o,f=u?c.w:c.v;if(f!==i){var d=u===a,p=n.edge(c).weight;if(s+=d?p:-p,FO(e,o,f)){var m=e.edge(o,f).cutvalue;s+=d?-m:m}}}),s}function ns(e,n){arguments.length<2&&(n=e.nodes()[0]),Qp(e,{},1,n)}function Qp(e,n,o,r,i){var a=o,l=e.node(r);return n[r]=!0,e.neighbors(r).forEach(s=>{Object.hasOwn(n,s)||(o=Qp(e,n,o,s,r))}),l.low=a,l.lim=o++,i?l.parent=i:delete l.parent,o}function em(e){return e.edges().find(n=>e.edge(n).cutvalue<0)}function tm(e,n,o){var r=o.v,i=o.w;n.hasEdge(r,i)||(r=o.w,i=o.v);var a=e.node(r),l=e.node(i),s=a,c=!1;a.lim>l.lim&&(s=l,c=!0);var u=n.edges().filter(f=>c===om(e,e.node(f.v),s)&&c!==om(e,e.node(f.w),s));return u.reduce((f,d)=>Zp(n,d)<Zp(n,f)?d:f)}function nm(e,n,o,r){var i=o.v,a=o.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),ns(e),ts(e,n),LO(e,n)}function LO(e,n){var o=e.nodes().find(i=>!n.node(i).parent),r=BO(e,o);r=r.slice(1),r.forEach(i=>{var a=e.node(i).parent,l=n.edge(i,a),s=!1;l||(l=n.edge(a,i),s=!0),n.node(i).rank=n.node(a).rank+(s?l.minlen:-l.minlen)})}function FO(e,n,o){return e.hasEdge(n,o)}function om(e,n,o){return o.low<=n.lim&&n.lim<=o.lim}var UO=$i,rm=UO.longestPath,KO=Xp,jO=DO,GO=qO;function qO(e){var n=e.graph().ranker;if(n instanceof Function)return n(e);switch(e.graph().ranker){case"network-simplex":im(e);break;case"tight-tree":HO(e);break;case"longest-path":zO(e);break;case"none":break;default:im(e)}}var zO=rm;function HO(e){rm(e),KO(e)}function im(e){jO(e)}var YO=WO;function WO(e){let n=ZO(e);e.graph().dummyChains.forEach(o=>{let r=e.node(o),i=r.edgeObj,a=XO(e,n,i.v,i.w),l=a.path,s=a.lca,c=0,u=l[c],f=!0;for(;o!==i.w;){if(r=e.node(o),f){for(;(u=l[c])!==s&&e.node(u).maxRank<r.rank;)c++;u===s&&(f=!1)}if(!f){for(;c<l.length-1&&e.node(u=l[c+1]).minRank<=r.rank;)c++;u=l[c]}e.setParent(o,u),o=e.successors(o)[0]}})}function XO(e,n,o,r){let i=[],a=[],l=Math.min(n[o].low,n[r].low),s=Math.max(n[o].lim,n[r].lim),c,u;c=o;do c=e.parent(c),i.push(c);while(c&&(n[c].low>l||s>n[c].lim));for(u=c,c=r;(c=e.parent(c))!==u;)a.push(c);return{path:i.concat(a.reverse()),lca:u}}function ZO(e){let n={},o=0;function r(i){let a=o;e.children(i).forEach(r),n[i]={low:a,lim:o++}}return e.children().forEach(r),n}let Vi=tt;var JO={run:QO,cleanup:n$};function QO(e){let n=Vi.addDummyNode(e,"root",{},"_root"),o=e$(e),r=Object.values(o),i=Vi.applyWithChunking(Math.max,r)-1,a=2*i+1;e.graph().nestingRoot=n,e.edges().forEach(s=>e.edge(s).minlen*=a);let l=t$(e)+1;e.children().forEach(s=>am(e,n,a,l,i,o,s)),e.graph().nodeRankFactor=a}function am(e,n,o,r,i,a,l){let s=e.children(l);if(!s.length){l!==n&&e.setEdge(n,l,{weight:0,minlen:o});return}let c=Vi.addBorderNode(e,"_bt"),u=Vi.addBorderNode(e,"_bb"),f=e.node(l);e.setParent(c,l),f.borderTop=c,e.setParent(u,l),f.borderBottom=u,s.forEach(d=>{am(e,n,o,r,i,a,d);let p=e.node(d),m=p.borderTop?p.borderTop:d,y=p.borderBottom?p.borderBottom:d,b=p.borderTop?r:2*r,g=m!==y?1:i-a[l]+1;e.setEdge(c,m,{weight:b,minlen:g,nestingEdge:!0}),e.setEdge(y,u,{weight:b,minlen:g,nestingEdge:!0})}),e.parent(l)||e.setEdge(n,c,{weight:0,minlen:i+a[l]})}function e$(e){var n={};function o(r,i){var a=e.children(r);a&&a.length&&a.forEach(l=>o(l,i+1)),n[r]=i}return e.children().forEach(r=>o(r,1)),n}function t$(e){return e.edges().reduce((n,o)=>n+e.edge(o).weight,0)}function n$(e){var n=e.graph();e.removeNode(n.nestingRoot),delete n.nestingRoot,e.edges().forEach(o=>{var r=e.edge(o);r.nestingEdge&&e.removeEdge(o)})}let o$=tt;var r$=i$;function i$(e){function n(o){let r=e.children(o),i=e.node(o);if(r.length&&r.forEach(n),Object.hasOwn(i,"minRank")){i.borderLeft=[],i.borderRight=[];for(let a=i.minRank,l=i.maxRank+1;a<l;++a)lm(e,"borderLeft","_bl",o,i,a),lm(e,"borderRight","_br",o,i,a)}}e.children().forEach(n)}function lm(e,n,o,r,i,a){let l={width:0,height:0,rank:a,borderType:n},s=i[n][a-1],c=o$.addDummyNode(e,"border",l,o);i[n][a]=c,e.setParent(c,r),s&&e.setEdge(s,c,{weight:1})}var a$={adjust:l$,undo:s$};function l$(e){let n=e.graph().rankdir.toLowerCase();(n==="lr"||n==="rl")&&sm(e)}function s$(e){let n=e.graph().rankdir.toLowerCase();(n==="bt"||n==="rl")&&c$(e),(n==="lr"||n==="rl")&&(d$(e),sm(e))}function sm(e){e.nodes().forEach(n=>cm(e.node(n))),e.edges().forEach(n=>cm(e.edge(n)))}function cm(e){let n=e.width;e.width=e.height,e.height=n}function c$(e){e.nodes().forEach(n=>os(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(os),Object.hasOwn(o,"y")&&os(o)})}function os(e){e.y=-e.y}function d$(e){e.nodes().forEach(n=>rs(e.node(n))),e.edges().forEach(n=>{let o=e.edge(n);o.points.forEach(rs),Object.hasOwn(o,"x")&&rs(o)})}function rs(e){let n=e.x;e.x=e.y,e.y=n}let dm=tt;var u$=f$;function f$(e){let n={},o=e.nodes().filter(c=>!e.children(c).length),r=o.map(c=>e.node(c).rank),i=dm.applyWithChunking(Math.max,r),a=dm.range(i+1).map(()=>[]);function l(c){if(n[c])return;n[c]=!0;let u=e.node(c);a[u.rank].push(c),e.successors(c).forEach(l)}return o.sort((c,u)=>e.node(c).rank-e.node(u).rank).forEach(l),a}let p$=tt.zipObject;var m$=g$;function g$(e,n){let o=0;for(let r=1;r<n.length;++r)o+=h$(e,n[r-1],n[r]);return o}function h$(e,n,o){let r=p$(o,o.map((u,f)=>f)),i=n.flatMap(u=>e.outEdges(u).map(f=>({pos:r[f.w],weight:e.edge(f).weight})).sort((f,d)=>f.pos-d.pos)),a=1;for(;a<o.length;)a<<=1;let l=2*a-1;a-=1;let s=new Array(l).fill(0),c=0;return i.forEach(u=>{let f=u.pos+a;s[f]+=u.weight;let d=0;for(;f>0;)f%2&&(d+=s[f+1]),f=f-1>>1,s[f]+=u.weight;c+=u.weight*d}),c}var y$=_$;function _$(e,n=[]){return n.map(o=>{let r=e.inEdges(o);if(r.length){let i=r.reduce((a,l)=>{let s=e.edge(l),c=e.node(l.v);return{sum:a.sum+s.weight*c.order,weight:a.weight+s.weight}},{sum:0,weight:0});return{v:o,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:o}})}let b$=tt;var w$=k$;function k$(e,n){let o={};e.forEach((i,a)=>{let l=o[i.v]={indegree:0,in:[],out:[],vs:[i.v],i:a};i.barycenter!==void 0&&(l.barycenter=i.barycenter,l.weight=i.weight)}),n.edges().forEach(i=>{let a=o[i.v],l=o[i.w];a!==void 0&&l!==void 0&&(l.indegree++,a.out.push(o[i.w]))});let r=Object.values(o).filter(i=>!i.indegree);return C$(r)}function C$(e){let n=[];function o(i){return a=>{a.merged||(a.barycenter===void 0||i.barycenter===void 0||a.barycenter>=i.barycenter)&&E$(i,a)}}function r(i){return a=>{a.in.push(i),--a.indegree===0&&e.push(a)}}for(;e.length;){let i=e.pop();n.push(i),i.in.reverse().forEach(o(i)),i.out.forEach(r(i))}return n.filter(i=>!i.merged).map(i=>b$.pick(i,["vs","i","barycenter","weight"]))}function E$(e,n){let o=0,r=0;e.weight&&(o+=e.barycenter*e.weight,r+=e.weight),n.weight&&(o+=n.barycenter*n.weight,r+=n.weight),e.vs=n.vs.concat(e.vs),e.barycenter=o/r,e.weight=r,e.i=Math.min(n.i,e.i),n.merged=!0}let N$=tt;var S$=v$;function v$(e,n){let o=N$.partition(e,f=>Object.hasOwn(f,"barycenter")),r=o.lhs,i=o.rhs.sort((f,d)=>d.i-f.i),a=[],l=0,s=0,c=0;r.sort(x$(!!n)),c=um(a,i,c),r.forEach(f=>{c+=f.vs.length,a.push(f.vs),l+=f.barycenter*f.weight,s+=f.weight,c=um(a,i,c)});let u={vs:a.flat(!0)};return s&&(u.barycenter=l/s,u.weight=s),u}function um(e,n,o){let r;for(;n.length&&(r=n[n.length-1]).i<=o;)n.pop(),e.push(r.vs),o++;return o}function x$(e){return(n,o)=>n.barycenter<o.barycenter?-1:n.barycenter>o.barycenter?1:e?o.i-n.i:n.i-o.i}let A$=y$,I$=w$,P$=S$;var T$=fm;function fm(e,n,o,r){let i=e.children(n),a=e.node(n),l=a?a.borderLeft:void 0,s=a?a.borderRight:void 0,c={};l&&(i=i.filter(p=>p!==l&&p!==s));let u=A$(e,i);u.forEach(p=>{if(e.children(p.v).length){let m=fm(e,p.v,o,r);c[p.v]=m,Object.hasOwn(m,"barycenter")&&$$(p,m)}});let f=I$(u,o);O$(f,c);let d=P$(f,r);if(l&&(d.vs=[l,d.vs,s].flat(!0),e.predecessors(l).length)){let p=e.node(e.predecessors(l)[0]),m=e.node(e.predecessors(s)[0]);Object.hasOwn(d,"barycenter")||(d.barycenter=0,d.weight=0),d.barycenter=(d.barycenter*d.weight+p.order+m.order)/(d.weight+2),d.weight+=2}return d}function O$(e,n){e.forEach(o=>{o.vs=o.vs.flatMap(r=>n[r]?n[r].vs:r)})}function $$(e,n){e.barycenter!==void 0?(e.barycenter=(e.barycenter*e.weight+n.barycenter*n.weight)/(e.weight+n.weight),e.weight+=n.weight):(e.barycenter=n.barycenter,e.weight=n.weight)}let B$=Bt.Graph,V$=tt;var R$=D$;function D$(e,n,o){let r=M$(e),i=new B$({compound:!0}).setGraph({root:r}).setDefaultNodeLabel(a=>e.node(a));return e.nodes().forEach(a=>{let l=e.node(a),s=e.parent(a);(l.rank===n||l.minRank<=n&&n<=l.maxRank)&&(i.setNode(a),i.setParent(a,s||r),e[o](a).forEach(c=>{let u=c.v===a?c.w:c.v,f=i.edge(u,a),d=f!==void 0?f.weight:0;i.setEdge(u,a,{weight:e.edge(c).weight+d})}),Object.hasOwn(l,"minRank")&&i.setNode(a,{borderLeft:l.borderLeft[n],borderRight:l.borderRight[n]}))}),i}function M$(e){for(var n;e.hasNode(n=V$.uniqueId("_root")););return n}var L$=F$;function F$(e,n,o){let r={},i;o.forEach(a=>{let l=e.parent(a),s,c;for(;l;){if(s=e.parent(l),s?(c=r[s],r[s]=l):(c=i,i=l),c&&c!==l){n.setEdge(c,l);return}l=s}})}let U$=u$,K$=m$,j$=T$,G$=R$,q$=L$,z$=Bt.Graph,Ri=tt;var H$=pm;function pm(e,n){if(n&&typeof n.customOrder=="function"){n.customOrder(e,pm);return}let o=Ri.maxRank(e),r=mm(e,Ri.range(1,o+1),"inEdges"),i=mm(e,Ri.range(o-1,-1,-1),"outEdges"),a=U$(e);if(gm(e,a),n&&n.disableOptimalOrderHeuristic)return;let l=Number.POSITIVE_INFINITY,s;for(let c=0,u=0;u<4;++c,++u){Y$(c%2?r:i,c%4>=2),a=Ri.buildLayerMatrix(e);let f=K$(e,a);f<l&&(u=0,s=Object.assign({},a),l=f)}gm(e,s)}function mm(e,n,o){return n.map(function(r){return G$(e,r,o)})}function Y$(e,n){let o=new z$;e.forEach(function(r){let i=r.graph().root,a=j$(r,i,o,n);a.vs.forEach((l,s)=>r.node(l).order=s),q$(r,o,a.vs)})}function gm(e,n){Object.values(n).forEach(o=>o.forEach((r,i)=>e.node(r).order=i))}let W$=Bt.Graph,nn=tt;var X$={positionX:lB};function Z$(e,n){let o={};function r(i,a){let l=0,s=0,c=i.length,u=a[a.length-1];return a.forEach((f,d)=>{let p=Q$(e,f),m=p?e.node(p).order:c;(p||f===u)&&(a.slice(s,d+1).forEach(y=>{e.predecessors(y).forEach(b=>{let g=e.node(b),h=g.order;(h<l||m<h)&&!(g.dummy&&e.node(y).dummy)&&hm(o,b,y)})}),s=d+1,l=m)}),a}return n.length&&n.reduce(r),o}function J$(e,n){let o={};function r(a,l,s,c,u){let f;nn.range(l,s).forEach(d=>{f=a[d],e.node(f).dummy&&e.predecessors(f).forEach(p=>{let m=e.node(p);m.dummy&&(m.order<c||m.order>u)&&hm(o,p,f)})})}function i(a,l){let s=-1,c,u=0;return l.forEach((f,d)=>{if(e.node(f).dummy==="border"){let p=e.predecessors(f);p.length&&(c=e.node(p[0]).order,r(l,u,d,s,c),u=d,s=c)}r(l,u,l.length,c,a.length)}),l}return n.length&&n.reduce(i),o}function Q$(e,n){if(e.node(n).dummy)return e.predecessors(n).find(o=>e.node(o).dummy)}function hm(e,n,o){if(n>o){let i=n;n=o,o=i}let r=e[n];r||(e[n]=r={}),r[o]=!0}function eB(e,n,o){if(n>o){let r=n;n=o,o=r}return!!e[n]&&Object.hasOwn(e[n],o)}function tB(e,n,o,r){let i={},a={},l={};return n.forEach(s=>{s.forEach((c,u)=>{i[c]=c,a[c]=c,l[c]=u})}),n.forEach(s=>{let c=-1;s.forEach(u=>{let f=r(u);if(f.length){f=f.sort((p,m)=>l[p]-l[m]);let d=(f.length-1)/2;for(let p=Math.floor(d),m=Math.ceil(d);p<=m;++p){let y=f[p];a[u]===u&&c<l[y]&&!eB(o,u,y)&&(a[y]=u,a[u]=i[u]=i[y],c=l[y])}}})}),{root:i,align:a}}function nB(e,n,o,r,i){let a={},l=oB(e,n,o,i),s=i?"borderLeft":"borderRight";function c(d,p){let m=l.nodes(),y=m.pop(),b={};for(;y;)b[y]?d(y):(b[y]=!0,m.push(y),m=m.concat(p(y))),y=m.pop()}function u(d){a[d]=l.inEdges(d).reduce((p,m)=>Math.max(p,a[m.v]+l.edge(m)),0)}function f(d){let p=l.outEdges(d).reduce((y,b)=>Math.min(y,a[b.w]-l.edge(b)),Number.POSITIVE_INFINITY),m=e.node(d);p!==Number.POSITIVE_INFINITY&&m.borderType!==s&&(a[d]=Math.max(a[d],p))}return c(u,l.predecessors.bind(l)),c(f,l.successors.bind(l)),Object.keys(r).forEach(d=>a[d]=a[o[d]]),a}function oB(e,n,o,r){let i=new W$,a=e.graph(),l=sB(a.nodesep,a.edgesep,r);return n.forEach(s=>{let c;s.forEach(u=>{let f=o[u];if(i.setNode(f),c){var d=o[c],p=i.edge(d,f);i.setEdge(d,f,Math.max(l(e,u,c),p||0))}c=u})}),i}function rB(e,n){return Object.values(n).reduce((o,r)=>{let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;Object.entries(r).forEach(([s,c])=>{let u=cB(e,s)/2;i=Math.max(c+u,i),a=Math.min(c-u,a)});const l=i-a;return l<o[0]&&(o=[l,r]),o},[Number.POSITIVE_INFINITY,null])[1]}function iB(e,n){let o=Object.values(n),r=nn.applyWithChunking(Math.min,o),i=nn.applyWithChunking(Math.max,o);["u","d"].forEach(a=>{["l","r"].forEach(l=>{let s=a+l,c=e[s];if(c===n)return;let u=Object.values(c),f=r-nn.applyWithChunking(Math.min,u);l!=="l"&&(f=i-nn.applyWithChunking(Math.max,u)),f&&(e[s]=nn.mapValues(c,d=>d+f))})})}function aB(e,n){return nn.mapValues(e.ul,(o,r)=>{if(n)return e[n.toLowerCase()][r];{let i=Object.values(e).map(a=>a[r]).sort((a,l)=>a-l);return(i[1]+i[2])/2}})}function lB(e){let n=nn.buildLayerMatrix(e),o=Object.assign(Z$(e,n),J$(e,n)),r={},i;["u","d"].forEach(l=>{i=l==="u"?n:Object.values(n).reverse(),["l","r"].forEach(s=>{s==="r"&&(i=i.map(d=>Object.values(d).reverse()));let c=(l==="u"?e.predecessors:e.successors).bind(e),u=tB(e,i,o,c),f=nB(e,i,u.root,u.align,s==="r");s==="r"&&(f=nn.mapValues(f,d=>-d)),r[l+s]=f})});let a=rB(e,r);return iB(r,a),aB(r,e.graph().align)}function sB(e,n,o){return(r,i,a)=>{let l=r.node(i),s=r.node(a),c=0,u;if(c+=l.width/2,Object.hasOwn(l,"labelpos"))switch(l.labelpos.toLowerCase()){case"l":u=-l.width/2;break;case"r":u=l.width/2;break}if(u&&(c+=o?u:-u),u=0,c+=(l.dummy?n:e)/2,c+=(s.dummy?n:e)/2,c+=s.width/2,Object.hasOwn(s,"labelpos"))switch(s.labelpos.toLowerCase()){case"l":u=s.width/2;break;case"r":u=-s.width/2;break}return u&&(c+=o?u:-u),u=0,c}}function cB(e,n){return e.node(n).width}let ym=tt,dB=X$.positionX;var uB=fB;function fB(e){e=ym.asNonCompoundGraph(e),pB(e),Object.entries(dB(e)).forEach(([n,o])=>e.node(n).x=o)}function pB(e){let n=ym.buildLayerMatrix(e),o=e.graph().ranksep,r=0;n.forEach(i=>{const a=i.reduce((l,s)=>{const c=e.node(s).height;return l>c?l:c},0);i.forEach(l=>e.node(l).y=r+a/2),r+=a+o})}let _m=gO,bm=wO,mB=GO,gB=tt.normalizeRanks,hB=YO,yB=tt.removeEmptyRanks,wm=JO,_B=r$,km=a$,bB=H$,wB=uB,xt=tt,kB=Bt.Graph;var CB=EB;function EB(e,n){let o=n&&n.debugTiming?xt.time:xt.notime;o("layout",()=>{let r=o(" buildLayoutGraph",()=>$B(e));o(" runLayout",()=>NB(r,o,n)),o(" updateInputGraph",()=>SB(e,r))})}function NB(e,n,o){n(" makeSpaceForEdgeLabels",()=>BB(e)),n(" removeSelfEdges",()=>jB(e)),n(" acyclic",()=>_m.run(e)),n(" nestingGraph.run",()=>wm.run(e)),n(" rank",()=>mB(xt.asNonCompoundGraph(e))),n(" injectEdgeLabelProxies",()=>VB(e)),n(" removeEmptyRanks",()=>yB(e)),n(" nestingGraph.cleanup",()=>wm.cleanup(e)),n(" normalizeRanks",()=>gB(e)),n(" assignRankMinMax",()=>RB(e)),n(" removeEdgeLabelProxies",()=>DB(e)),n(" normalize.run",()=>bm.run(e)),n(" parentDummyChains",()=>hB(e)),n(" addBorderSegments",()=>_B(e)),n(" order",()=>bB(e,o)),n(" insertSelfEdges",()=>GB(e)),n(" adjustCoordinateSystem",()=>km.adjust(e)),n(" position",()=>wB(e)),n(" positionSelfEdges",()=>qB(e)),n(" removeBorderNodes",()=>KB(e)),n(" normalize.undo",()=>bm.undo(e)),n(" fixupEdgeLabelCoords",()=>FB(e)),n(" undoCoordinateSystem",()=>km.undo(e)),n(" translateGraph",()=>MB(e)),n(" assignNodeIntersects",()=>LB(e)),n(" reversePoints",()=>UB(e)),n(" acyclic.undo",()=>_m.undo(e))}function SB(e,n){e.nodes().forEach(o=>{let r=e.node(o),i=n.node(o);r&&(r.x=i.x,r.y=i.y,r.rank=i.rank,n.children(o).length&&(r.width=i.width,r.height=i.height))}),e.edges().forEach(o=>{let r=e.edge(o),i=n.edge(o);r.points=i.points,Object.hasOwn(i,"x")&&(r.x=i.x,r.y=i.y)}),e.graph().width=n.graph().width,e.graph().height=n.graph().height}let vB=["nodesep","edgesep","ranksep","marginx","marginy"],xB={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},AB=["acyclicer","ranker","rankdir","align"],IB=["width","height","rank"],Cm={width:0,height:0},PB=["minlen","weight","width","height","labeloffset"],TB={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},OB=["labelpos"];function $B(e){let n=new kB({multigraph:!0,compound:!0}),o=as(e.graph());return n.setGraph(Object.assign({},xB,is(o,vB),xt.pick(o,AB))),e.nodes().forEach(r=>{let i=as(e.node(r));const a=is(i,IB);Object.keys(Cm).forEach(l=>{a[l]===void 0&&(a[l]=Cm[l])}),n.setNode(r,a),n.setParent(r,e.parent(r))}),e.edges().forEach(r=>{let i=as(e.edge(r));n.setEdge(r,Object.assign({},TB,is(i,PB),xt.pick(i,OB)))}),n}function BB(e){let n=e.graph();n.ranksep/=2,e.edges().forEach(o=>{let r=e.edge(o);r.minlen*=2,r.labelpos.toLowerCase()!=="c"&&(n.rankdir==="TB"||n.rankdir==="BT"?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function VB(e){e.edges().forEach(n=>{let o=e.edge(n);if(o.width&&o.height){let r=e.node(n.v),a={rank:(e.node(n.w).rank-r.rank)/2+r.rank,e:n};xt.addDummyNode(e,"edge-proxy",a,"_ep")}})}function RB(e){let n=0;e.nodes().forEach(o=>{let r=e.node(o);r.borderTop&&(r.minRank=e.node(r.borderTop).rank,r.maxRank=e.node(r.borderBottom).rank,n=Math.max(n,r.maxRank))}),e.graph().maxRank=n}function DB(e){e.nodes().forEach(n=>{let o=e.node(n);o.dummy==="edge-proxy"&&(e.edge(o.e).labelRank=o.rank,e.removeNode(n))})}function MB(e){let n=Number.POSITIVE_INFINITY,o=0,r=Number.POSITIVE_INFINITY,i=0,a=e.graph(),l=a.marginx||0,s=a.marginy||0;function c(u){let f=u.x,d=u.y,p=u.width,m=u.height;n=Math.min(n,f-p/2),o=Math.max(o,f+p/2),r=Math.min(r,d-m/2),i=Math.max(i,d+m/2)}e.nodes().forEach(u=>c(e.node(u))),e.edges().forEach(u=>{let f=e.edge(u);Object.hasOwn(f,"x")&&c(f)}),n-=l,r-=s,e.nodes().forEach(u=>{let f=e.node(u);f.x-=n,f.y-=r}),e.edges().forEach(u=>{let f=e.edge(u);f.points.forEach(d=>{d.x-=n,d.y-=r}),Object.hasOwn(f,"x")&&(f.x-=n),Object.hasOwn(f,"y")&&(f.y-=r)}),a.width=o-n+l,a.height=i-r+s}function LB(e){e.edges().forEach(n=>{let o=e.edge(n),r=e.node(n.v),i=e.node(n.w),a,l;o.points?(a=o.points[0],l=o.points[o.points.length-1]):(o.points=[],a=i,l=r),o.points.unshift(xt.intersectRect(r,a)),o.points.push(xt.intersectRect(i,l))})}function FB(e){e.edges().forEach(n=>{let o=e.edge(n);if(Object.hasOwn(o,"x"))switch((o.labelpos==="l"||o.labelpos==="r")&&(o.width-=o.labeloffset),o.labelpos){case"l":o.x-=o.width/2+o.labeloffset;break;case"r":o.x+=o.width/2+o.labeloffset;break}})}function UB(e){e.edges().forEach(n=>{let o=e.edge(n);o.reversed&&o.points.reverse()})}function KB(e){e.nodes().forEach(n=>{if(e.children(n).length){let o=e.node(n),r=e.node(o.borderTop),i=e.node(o.borderBottom),a=e.node(o.borderLeft[o.borderLeft.length-1]),l=e.node(o.borderRight[o.borderRight.length-1]);o.width=Math.abs(l.x-a.x),o.height=Math.abs(i.y-r.y),o.x=a.x+o.width/2,o.y=r.y+o.height/2}}),e.nodes().forEach(n=>{e.node(n).dummy==="border"&&e.removeNode(n)})}function jB(e){e.edges().forEach(n=>{if(n.v===n.w){var o=e.node(n.v);o.selfEdges||(o.selfEdges=[]),o.selfEdges.push({e:n,label:e.edge(n)}),e.removeEdge(n)}})}function GB(e){var n=xt.buildLayerMatrix(e);n.forEach(o=>{var r=0;o.forEach((i,a)=>{var l=e.node(i);l.order=a+r,(l.selfEdges||[]).forEach(s=>{xt.addDummyNode(e,"selfedge",{width:s.label.width,height:s.label.height,rank:l.rank,order:a+ ++r,e:s.e,label:s.label},"_se")}),delete l.selfEdges})})}function qB(e){e.nodes().forEach(n=>{var o=e.node(n);if(o.dummy==="selfedge"){var r=e.node(o.e.v),i=r.x+r.width/2,a=r.y,l=o.x-i,s=r.height/2;e.setEdge(o.e,o.label),e.removeNode(n),o.label.points=[{x:i+2*l/3,y:a-s},{x:i+5*l/6,y:a-s},{x:i+l,y:a},{x:i+5*l/6,y:a+s},{x:i+2*l/3,y:a+s}],o.label.x=o.x,o.label.y=o.y}})}function is(e,n){return xt.mapValues(xt.pick(e,n),Number)}function as(e){var n={};return e&&Object.entries(e).forEach(([o,r])=>{typeof o=="string"&&(o=o.toLowerCase()),n[o]=r}),n}let zB=tt,HB=Bt.Graph;var YB={debugOrdering:WB};function WB(e){let n=zB.buildLayerMatrix(e),o=new HB({compound:!0,multigraph:!0}).setGraph({});return e.nodes().forEach(r=>{o.setNode(r,{label:r}),o.setParent(r,"layer"+e.node(r).rank)}),e.edges().forEach(r=>o.setEdge(r.v,r.w,{},r.name)),n.forEach((r,i)=>{let a="layer"+i;o.setNode(a,{rank:"same"}),r.reduce((l,s)=>(o.setEdge(l,s,{style:"invis"}),s))}),o}var XB="1.1.5",ZB={graphlib:Bt,layout:CB,debug:YB,util:{time:tt.time,notime:tt.notime},version:XB};const Em=WP(ZB);function JB({phase:e,readonly:n,flowId:o}){const{findNode:r}=Fe(o),i=st(),{state:a,getNodeById:l,moveNode:s,moveGroup:c,setGroupLayout:u,commit:f}=i,d=t.ref(),p=t.computed(()=>new Map(a.value.groups.map(V=>[V.id,V]))),m=t.computed(()=>new Set(a.value.groups.map(V=>V.id))),y=V=>!!V&&m.value.has(V),b=V=>!!V&&V.startsWith("branch:");function g(V){const T=[];for(const v of V.memberIds){const P=l(v);P&&T.push(P)}return T}const h=t.computed(()=>{const V=new Map;for(const T of a.value.groups){if(T.phase!==e||!T.position)continue;const v=g(T).filter(P=>P.phase===e&&!P.hidden);if(v.length)for(const P of v)V.set(P.id,T)}return V}),w=t.computed(()=>{const V=new Map;for(const T of a.value.groups)V.has(T.ownerId)||V.set(T.ownerId,[]),V.get(T.ownerId).push(T);return V});function _(V){let T=0;const v=new Set;let P=h.value.get(V);for(;P&&!v.has(P.id);)T+=1,v.add(P.id),P=h.value.get(P.ownerId);return T}function k(V){return _(V.ownerId)}const E=t.computed(()=>{const V=[];for(const T of a.value.groups){const v=l(T.ownerId);if(!v||v.phase!==e)continue;const P=T.position,A=T.dimensions;if(!P||!A)continue;const Y=g(T).filter(ie=>ie.phase===e&&!ie.hidden),W=k(T);V.push({id:T.id,type:"group",position:P,width:A.width,height:A.height,data:{...T,memberIds:Y.map(ie=>ie.id)},draggable:!n,selectable:!1,zIndex:W*jr+jN})}return V}),C=t.computed(()=>{let V=0;for(const T of a.value.groups){if(T.phase!==e)continue;const v=k(T);v>V&&(V=v)}return V}),N=t.computed(()=>{const V=[];for(const T of a.value.groups){if(T.phase!==e||!T.position||!T.dimensions)continue;const v=l(T.ownerId);if(!v||v.phase!==e||v.hidden||!g(T).filter(W=>W.phase===e&&!W.hidden).length)continue;const A=Math.max(_(v.id),k(T))+C.value+1,Y={id:`branch:${T.id}`,source:v.id,target:T.id,sourceHandle:`branch@${T.branch}`,targetHandle:"input",markerEnd:or.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:v.id,branch:T.branch,groupId:T.id},zIndex:A*jr+qN};V.push(Y)}return V}),I=new Map,D=new Set;let G;function K(V){if(V.phase!==e)return;const T=g(V).filter(oe=>oe.phase===e&&!oe.hidden);if(!T.length)return;let v=Number.POSITIVE_INFINITY,P=Number.POSITIVE_INFINITY,A=Number.NEGATIVE_INFINITY,Y=Number.NEGATIVE_INFINITY;for(const oe of T){const de=r(oe.id),he=de==null?void 0:de.dimensions,X=(he==null?void 0:he.width)??0,ce=(he==null?void 0:he.height)??0;if(X<=0||ce<=0)return;const se=de==null?void 0:de.computedPosition,ue=(se==null?void 0:se.x)??oe.position.x,fe=(se==null?void 0:se.y)??oe.position.y;v=Math.min(v,ue),P=Math.min(P,fe),A=Math.max(A,ue+X),Y=Math.max(Y,fe+ce);const O=w.value.get(oe.id)??[];for(const B of O){if(B.phase!==e)continue;const F=I.get(B.id),R=(F==null?void 0:F.position)??B.position,J=(F==null?void 0:F.dimensions)??B.dimensions;!R||!J||(v=Math.min(v,R.x),P=Math.min(P,R.y),A=Math.max(A,R.x+J.width),Y=Math.max(Y,R.y+J.height))}}if(!Number.isFinite(v)||!Number.isFinite(P)||!Number.isFinite(A)||!Number.isFinite(Y))return;const W=A-v+Gr*2,ie=Y-P+Gr*2;return{position:{x:Math.round(v-Gr),y:Math.round(P-Gr)},dimensions:{width:Math.round(W),height:Math.round(ie)}}}function S(){if(I.size===0){G=void 0;return}const V=[];let T=!1;I.forEach((v,P)=>{const A=u(P,v,!1);V.push({id:P,changed:A}),A&&!T&&(T=!0)}),I.clear(),G=void 0;for(const{id:v,changed:P}of V){if(!P)continue;const A=p.value.get(v);if(!A)continue;const Y=h.value.get(A.ownerId);Y&&D.add(Y.id)}if(D.size>0){const v=Array.from(D);D.clear();for(const P of v)x(P)}T&&f("*")}function ne(){I.size!==0&&(G||(G=t.nextTick().then(S)))}function x(V){const T=p.value.get(V);if(!T)return;const v=K(T);v&&(I.set(V,v),ne())}function q(V,T,v,P){const A=p.value.get(V);if(!A)return;if(!A.position){c(V,T,!1),x(V);return}if(v===0&&P===0){c(V,T,!1);return}c(V,T,!1);const Y=[V],W=new Set([V]),ie=new Set;for(;Y.length;){const oe=Y.shift(),de=p.value.get(oe);if(!de)continue;const he=g(de).filter(X=>X.phase===e&&!X.hidden);for(const X of he){ie.has(X.id)||(s(X.id,{x:X.position.x+v,y:X.position.y+P},!1),ie.add(X.id));const ce=w.value.get(X.id)??[];for(const se of ce){if(W.has(se.id))continue;const ue=p.value.get(se.id);ue!=null&&ue.position&&c(se.id,{x:ue.position.x+v,y:ue.position.y+P},!1),W.add(se.id),Y.push(se.id)}}}}function U(V,T){const v=d.value;if(!v)return!1;if(v===V||T.some(P=>v===P))return!0;for(const P of T){const A=w.value.get(P);if(A!=null&&A.some(Y=>Y.id===v))return!0}return!1}const te=new Map;return t.watch(()=>a.value.groups.filter(T=>T.phase===e).map(T=>{const v=T.memberIds.map(P=>{var ie,oe;const A=r(P),Y=Math.round(((ie=A==null?void 0:A.dimensions)==null?void 0:ie.width)??0),W=Math.round(((oe=A==null?void 0:A.dimensions)==null?void 0:oe.height)??0);return`${P}:${Y}x${W}`});return{id:T.id,memberIds:T.memberIds,signature:v.join(",")}}),V=>{for(const T of V){if(U(T.id,T.memberIds))continue;te.get(T.id)!==T.signature&&(te.set(T.id,T.signature),x(T.id))}},{deep:!0,flush:"post"}),{groupMapById:p,memberGroupMap:h,groupNodes:E,branchEdges:N,isGroupId:y,isBranchEdgeId:b,updateGroupLayout:x,translateGroupTree:q,setDraggingNode:V=>{d.value=V},getNodeDepth:_,maxGroupDepth:C}}function Nm(){const e=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=t.inject(Mc,e);return o=>n(o)}function Di(e,n,o){const r=n?sn(e,o,n):void 0;return`${e.name}${r?`.${r.name}`:""}`}function mr(e,n){const o=n(e.source),r=n(e.target);return[Di(o,e.sourceField,"output"),Di(r,e.targetField,"input")]}function ls(e,n,o,r,i){const a=i(e),l=i(o);return[Di(a,n,"output"),Di(l,r,"input")]}function QB(e){t.provide(Ip,e)}function Sm(){return t.inject(Ip,void 0)}function vm(){const e=Sm();if(!e)throw new Error("Confirm modal not provided");return e}function xm(e){const n=e.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}function eV(){const e={x1:Number.POSITIVE_INFINITY,y1:Number.POSITIVE_INFINITY,x2:Number.NEGATIVE_INFINITY,y2:Number.NEGATIVE_INFINITY};return[r=>{e.x1=Math.min(e.x1,r.x),e.y1=Math.min(e.y1,r.y),e.x2=Math.max(e.x2,r.x+r.width),e.y2=Math.max(e.y2,r.y+r.height)},()=>{const r={...e};return r.x1>r.x2&&(r.x1=r.x2=0),r.y1>r.y2&&(r.y1=r.y2=0),r}]}const tV={default:Lk,hover:Uk,selected:Fk};let Am,ss;function Mi(e){const n=e.id===Am?"selected":e.id===ss?"hover":"default",o=tV[n],{markerEnd:r}=e,i=typeof r=="object"?{...r,color:o}:{type:r,color:o},a=e.zIndex??0,l=n==="selected"?a+2:n==="hover"?a+1:a;return{...e,style:{...e.style,stroke:o,strokeWidth:n==="selected"?1.5:void 0},markerEnd:i,zIndex:l}}const[nV,oV]=Xe.createInjectionState(function(e){const{phase:n,flowId:o,layoutOptions:r,readonly:i}=e,{viewport:a,padding:l=dr.padding,gaps:s=dr.gaps}=r,{nodes:c=dr.gaps.nodes,edges:u=dr.gaps.edges,ranks:f=dr.gaps.ranks}=s,d=Fe(o),p=st(),m=Sm(),y=Nm(),{i18n:{t:b}}=De(),{findNode:g,fitView:h,deleteKeyCode:w,onNodeDrag:_,onNodeDragStop:k,onConnect:E,onNodesChange:C,onEdgesChange:N,onEdgeUpdate:I,onEdgeMouseEnter:D,onEdgeMouseLeave:G,getNodes:K,setNodes:S,setEdges:ne,addSelectedNodes:x}=d;w.value=["Delete","Backspace"];const{state:q,commit:U,moveNode:te,selectNode:V,removeNode:T,getNodeById:v,connectEdge:P,disconnectEdge:A,getInEdgesByNodeId:Y,commit:W,reset:ie}=p;function oe(re,ee){const Z=v(re.source),be=v(re.target);return!!(Z&&be&&Z.phase===ee&&be.phase===ee)}const de=JB({phase:n,readonly:i,flowId:o}),{groupMapById:he,memberGroupMap:X,groupNodes:ce,branchEdges:se,isGroupId:ue,isBranchEdgeId:fe,updateGroupLayout:O,translateGroupTree:B,setDraggingNode:F,getNodeDepth:R,maxGroupDepth:J}=de,j=t.computed(()=>q.value.nodes.filter(re=>re.phase===n&&!re.hidden).map(re=>{const ee=X.value.get(re.id),Z=ee==null?void 0:ee.position,be=ee==null?void 0:ee.dimensions,$e=ee&&Z&&be?{x:re.position.x-Z.x,y:re.position.y-Z.y}:re.position,Ne=R(re.id),Ae=!!(ee&&Z&&be),Re=(Ae?Ne:0)+J.value+1;return{id:re.id,type:"flow",position:$e,data:re,deletable:!_u(re),parentNode:Ae?ee.id:void 0,zIndex:Re*jr+zN}})),ae=t.computed(()=>q.value.edges.filter(re=>oe(re,n)).filter(re=>{const ee=v(re.source),Z=v(re.target);return!(ee!=null&&ee.hidden)&&!(Z!=null&&Z.hidden)}).map(re=>{const ee=v(re.source),Z=v(re.target);if(ee){if(!Z)throw new Error(`Missing target node "${re.target}" for edge "${re.id}" in phase "${n}"`)}else throw new Error(`Missing source node "${re.source}" for edge "${re.id}" in phase "${n}"`);const be=Math.max(R(re.source),R(re.target))+J.value+1;return Mi({id:re.id,source:re.source,target:re.target,sourceHandle:re.sourceField?`outputs@${re.sourceField}`:"output",targetHandle:re.targetField?`inputs@${re.targetField}`:"input",markerEnd:or.ArrowClosed,data:re,updatable:!i,zIndex:be*jr+GN})})),L=t.computed(()=>[...se.value,...ae.value]);t.watch([j,ce,L],([re,ee,Z])=>{S([...ee,...re]),ne(Z)},{immediate:!0});const $=t.computed(()=>({padding:l/Math.max(t.toValue(a==null?void 0:a.width)??0,t.toValue(a==null?void 0:a.height)??0)}));async function z({source:re,sourceHandle:ee,target:Z,targetHandle:be}){if(!ee||!be)return;const $e=xm(ee),Ne=xm(be);if(($e==null?void 0:$e.io)==="input"||(Ne==null?void 0:Ne.io)==="output"||ee==="output"&&be==="output")return;const Ae=Y(Z);let Re=!1,je=!1;const He=[],Ge=[],Ee=(Ne==null?void 0:Ne.io)==="input"?Ae.filter(Ce=>!Ce.targetField):Ae.filter(Ce=>!!Ce.targetField);Ee.length>0&&(Re=!0,Ee.forEach(Ce=>{Ge.push(mr(Ce,v)),A(Ce.id,!1)}));const Le=(Ne==null?void 0:Ne.io)==="input"?Ae.filter(Ce=>Ce.targetField===Ne.field):Ae.filter(Ce=>!Ce.targetField);if(Le.length>0){if(Le.some(Te=>Te.source===re&&Te.target===Z&&Te.targetField===(Ne==null?void 0:Ne.field)&&Te.sourceField===($e==null?void 0:$e.field)))return;je=!0,Le.forEach(Te=>{Ge.push(mr(Te,v)),A(Te.id,!1)})}if(!P({source:re,sourceField:$e==null?void 0:$e.field,target:Z,targetField:Ne==null?void 0:Ne.field},!1)){ie(),y({message:b("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(He.push(ls(re,$e==null?void 0:$e.field,Z,Ne==null?void 0:Ne.field,v)),Re||je){if(!m)throw ie(),new Error("Expected confirm modal to be provided here when reachable");if(!await m(b(Re?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),He,Ge)){ie();return}}W()}E(z);let M=!1;const le=()=>{M&&(M=!1,W())};C(re=>{re.filter(be=>be.type==="select").filter(be=>!ue(be.id)).sort((be,$e)=>be.selected===$e.selected?0:be.selected?1:-1).forEach(be=>{V(be.selected?be.id:void 0)});let Z=!1;re.forEach(be=>{if(be.type==="remove"){if(ue(be.id))return;Z=!0,T(be.id,!1)}}),Z&&!M&&(M=!0,queueMicrotask(le))}),_(({node:re})=>{var Ne;if(!re)return;if(ue(re.id)){const Ae=re.id;F(Ae);const Re=he.value.get(Ae);if(!Re)return;const je=Re.position??{...re.position},He=re.position.x-je.x,Ge=re.position.y-je.y;B(Ae,re.position,He,Ge);const Ee=X.value.get(Re.ownerId);Ee&&O(Ee.id);return}const ee=re.id;F(ee);const Z=re.parentNode;let be={...re.position};if(Z&&ue(Z)){const Ae=he.value.get(Z);Ae!=null&&Ae.position&&(be={x:Ae.position.x+re.position.x,y:Ae.position.y+re.position.y})}te(ee,be,!1);const $e=Z&&ue(Z)?Z:(Ne=X.value.get(ee))==null?void 0:Ne.id;$e&&O($e)}),k(({node:re})=>{var Ne;if(!re)return;if(ue(re.id)){const Ae=re.id;F(void 0),U(`drag-group:${Ae}`);return}const ee=re.id;F(void 0);const Z=re.parentNode;let be={...re.position};if(Z&&ue(Z)){const Ae=he.value.get(Z);Ae!=null&&Ae.position&&(be={x:Ae.position.x+re.position.x,y:Ae.position.y+re.position.y})}te(ee,be,!1);const $e=Z&&ue(Z)?Z:(Ne=X.value.get(ee))==null?void 0:Ne.id;$e&&O($e),U(`drag-node:${ee}`)}),N(re=>{re.filter(be=>be.type==="select").sort((be,$e)=>be.selected===$e.selected?0:be.selected?1:-1).forEach(be=>{fe(be.id)||(Am=be.selected?be.id:void 0,ne($e=>$e.map(Ne=>Ne.id!==be.id||!Ne.markerEnd?Ne:Mi({...Ne,zIndex:be.selected?1:void 0}))))});let Z=!1;re.forEach(be=>{if(be.type==="remove"){if(fe(be.id))return;Z=!0,A(be.id,!1)}}),Z&&!M&&(M=!0,queueMicrotask(le))}),D(({edge:re})=>{fe(re.id)||(ss=re.id,ne(ee=>ee.map(Z=>Z.id!==re.id?Z:Mi(Z))))}),G(({edge:re})=>{fe(re.id)||(ss=void 0,ne(ee=>ee.map(Z=>Z.id!==re.id?Z:Mi(Z))))}),I(({edge:re,connection:ee})=>{fe(re.id)||(A(re.id,!1),z(ee))});function pe(re=!0){let ee,Z;const be=[],$e=Pe=>{switch(Pe.data.name){case"request":{if(n!=="request")throw new Error(`Unexpected request node in ${n} phase`);if(ee)throw new Error("Duplicated request node in request phase");return ee=Pe,!0}case"service_request":{if(n!=="request")throw new Error(`Unexpected service_request node in ${n} phase`);if(Z)throw new Error("Duplicated service_request node in request phase");return Z=Pe,!0}case"service_response":{if(n!=="response")throw new Error(`Unexpected service_response node in ${n} phase`);if(Z)throw new Error("Duplicated service_response node in response phase");return Z=Pe,!0}case"response":{if(n!=="response")throw new Error(`Unexpected response node in ${n} phase`);if(ee)throw new Error("Duplicated response node in response phase");return ee=Pe,!0}default:return be.push(Pe),!1}};let Ne;for(const Pe of j.value)if(!$e(Pe)&&be.length>0){Ne||(Ne=new Em.graphlib.Graph({multigraph:!0}),Ne.setGraph({rankdir:n==="request"?"LR":"RL",nodesep:c,edgesep:u,ranksep:f}));const nt=g(Pe.id);if(!nt)throw new Error(`Node ${Pe.id} is missing from the graph in ${n} phase`);Ne.setNode(Pe.id,{width:nt.dimensions.width,height:nt.dimensions.height})}if(!ee||!Z)throw new Error(`One or more implicit nodes are missing from ${n} phase`);const Ae=g(ee.id),Re=g(Z.id);if(!Ae||!Re)throw new Error(`One or more implicit nodes are missing from the graph in ${n} phase`);if(be.length>0){if(!Ne)throw new Error("dagreGraph should be defined here if reachable");const Pe=new Set([ee.id,Z.id]);for(const nt of L.value)!Pe.has(nt.source)&&!Pe.has(nt.target)&&Ne.setEdge(nt.source,nt.target,{points:[]});Em.layout(Ne)}const[je,He]=eV(),Ge=Pe=>({x:Pe.x-Pe.width/2,y:Pe.y-Pe.height/2,width:Pe.width,height:Pe.height});if(be.length>0){if(!Ne)throw new Error("dagreGraph should be defined here if reachable");for(const Pe of be){const nt=Ne.node(Pe.id),dt=Ge(nt);je(dt),te(Pe.data.id,{x:dt.x,y:dt.y},!1)}}const Ee=He(),Le=Ee.x2-Ee.x1,Ue=Ee.y2-Ee.y1,Ce=Math.max(0,Math.min(t.toValue(a==null?void 0:a.width)??Number.POSITIVE_INFINITY,qP)-Le-2*c-Ae.dimensions.width-Re.dimensions.width-2*l),Te=Ee.y1+Ue/2;te(ee.data.id,{x:Ee.x1-c-Ce/2-Ae.dimensions.width,y:Te-Ae.dimensions.height/2},!1),te(Z.data.id,{x:Ee.x2+c+Ce/2,y:Te-Re.dimensions.height/2},!1),re&&U(`autolayout-${o}`)}function ye(re){h({...$.value,...re})}async function me(re){return V(re),new Promise(ee=>setTimeout(()=>{const Z=g(re);x(Z?[Z]:[]),ee()},0))}function _e(re){const ee=K.value.filter(({type:Ee})=>Ee!=="group"),Z=ee.find(({id:Ee})=>Ee===re);if(!Z)throw new Error(`Node ${re} not found`);const{position:{x:be,y:$e},dimensions:{width:Ne,height:Ae}}=Z,Re=$e,je=$e+Ae,He=ee.filter(({id:Ee})=>Ee!==re).filter(({position:{y:Ee},dimensions:{height:Le}})=>Ee<je&&Ee+Le>Re).map(({position:{x:Ee},dimensions:{width:Le}})=>({left:Ee,right:Ee+Le})).sort((Ee,Le)=>Ee.left-Le.left);let Ge=be+Ne+c;for(const{left:Ee,right:Le}of He)if(!(Le<=Ge)){if(Ge+Ne<=Ee)return{x:Ge,y:Re};Ge=Math.max(Ge,Le)+c}return{x:Ge,y:Re}}function Be(re){if(!re)return;const ee=g(re);if(!ee)throw new Error(`Node ${re} not found`);const{position:{x:Z},dimensions:{width:be}}=ee,$e=Z+be,{viewport:Ne,dimensions:Ae,setViewport:Re}=d,{x:je,y:He,zoom:Ge}=Ne.value,{width:Ee}=Ae.value,Le=Z*Ge+je,Ue=$e*Ge+je,Ce=Ee-mu-c;if(Ue<=Ce)return;let Te=Ce-Ue;Le+Te<0&&(Te=-Le),Te!==0&&Re({x:je+Te,y:He,zoom:Ge},{duration:YP})}return{vueFlowStore:d,editorStore:p,readonly:i,nodes:j,edges:L,selectNode:me,autoLayout:pe,placeToRight:_e,scrollRightToReveal:Be,fitViewParams:$,fitView:ye}}),Li=ve(t.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ke.Left},size:{default:()=>Number.parseFloat(ad)},type:{}},setup(e){t.useCssVars(o=>({"753622c4":o.color}));const n=t.computed(()=>({width:`${e.size}px`,minWidth:`${e.size}px`}));return(o,r)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["handle-twig",[o.type,o.position===t.unref(ke).Left?"left":"right"]]),style:t.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Im=ve(t.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(e){t.useCssVars(r=>{var i,a;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,"6ae9eff4":(a=n.value.colors)==null?void 0:a.foreground}});const n=t.computed(()=>_t[e.type]),o=t.computed(()=>HN(e.type));return(r,i)=>{var l;const a=t.resolveComponent("KBadge");return t.openBlock(),t.createBlock(a,{appearance:"neutral",class:t.normalizeClass(["dk-node-badge",{"icon-only":r.iconOnly,"has-colors":!!n.value.colors}]),size:r.size},t.createSlots({default:t.withCtx(()=>[t.createTextVNode(" "+t.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]);let mo=null;function rV(){var n;if(mo)return mo;if(typeof navigator>"u")return mo="windows";const e=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(e)?mo="mac":/Linux/i.test(e)&&!/Android/i.test(e)?mo="linux":mo="windows"}const iV={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},aV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Win",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Spacebar",Delete:"Delete"},lV={Shift:"Shift",Alt:"Alt",Ctrl:"Ctrl",Meta:"Super",Mod:"Ctrl",Enter:"Enter",ArrowUp:"Up",ArrowDown:"Down",ArrowLeft:"Left",ArrowRight:"Right",Tab:"Tab",Esc:"Esc",Space:"Space",Delete:"Delete"};function sV(e,n={}){const o=n.platform??rV(),r=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?iV:o==="linux"?lV:aV;return(Array.isArray(e)?e:e[o]).map(l=>l in i?i[l]:l).join(r)}const cV={key:0,class:"label"},dV={class:"keys"},Fi=ve(t.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(e){const n=sV(e.keys);return(o,r)=>(t.openBlock(),t.createElementBlock("span",{class:t.normalizeClass(["dk-hotkey-label",{reverse:o.reverse}])},[o.label?(t.openBlock(),t.createElementBlock("span",cV,t.toDisplayString(o.label),1)):t.createCommentVNode("",!0),t.createElementVNode("kbd",dV,t.toDisplayString(t.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),uV={class:"indicator-box"},fV={key:1,class:"additional-count"},Ui=ve(t.defineComponent({__name:"ValueIndicator",props:{edgeId:{},sourceNode:{},sourceFieldName:{},targetNodes:{},targetFieldNames:{},mode:{},reversed:{type:Boolean,default:!1}},setup(e){const n=t.createPropsRestProxy(e,["reversed"]),o=t.computed(()=>n.mode==="input"&&n.sourceNode?n.sourceFieldName?`${n.sourceNode.name}.${n.sourceFieldName}`:n.sourceNode.name:n.mode==="output"&&n.targetNodes?n.targetNodes.map((s,c)=>{var f;const u=(f=n.targetFieldNames)==null?void 0:f[c];return u?`${s.name}.${u}`:s.name}).join(", "):""),r=t.computed(()=>{var s;let l;if(n.mode==="input"&&n.sourceNode?l=n.sourceNode:n.mode==="output"&&n.targetNodes&&n.targetNodes.length>0&&(l=n.targetNodes[0]),!!l)return(s=_t[l.type])==null?void 0:s.icon}),i=t.computed(()=>n.mode==="output"&&n.targetNodes&&n.targetNodes.length>1?n.targetNodes.length-1:0),a=t.computed(()=>n.mode==="input"?e.reversed:!e.reversed);return(l,s)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["value-indicator",{reversed:a.value}])},[t.createVNode(t.unref(Oe.KTooltip),{placement:"top",text:o.value},{default:t.withCtx(()=>[t.createElementVNode("div",uV,[r.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(r.value),{key:0,color:t.unref(id),size:16},null,8,["color"])):t.createCommentVNode("",!0),i.value>0?(t.openBlock(),t.createElementBlock("span",fV," +"+t.toDisplayString(i.value),1)):t.createCommentVNode("",!0)])]),_:1},8,["text"])],2))}}),[["__scopeId","data-v-d8506ba3"]]),pV={class:"body"},mV={class:"name"},gV={class:"handle"},hV={class:"handle-label-wrapper"},yV={class:"handle-label-wrapper"},_V={class:"handle-label text"},bV={class:"handle"},wV={class:"handle-label-wrapper"},kV={class:"handle-label-wrapper"},CV={class:"handle-label text"},EV={key:2,class:"branch-handles"},NV={class:"handle-label-wrapper"},SV={class:"handle-label text"},Pm=ve(t.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=oV(),{getInEdgesByNodeId:r,getOutEdgesByNodeId:i,getNodeById:a,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:u}=st(),f=t.computed(()=>oo(e.data.type)),d=t.computed(()=>e.data.fields.input.length>0),p=t.computed(()=>e.data.fields.output.length>0),m=t.computed(()=>d.value&&r(e.data.id).every(v=>v.targetField===void 0)),y=t.computed(()=>p.value&&i(e.data.id).every(v=>v.sourceField===void 0)),b=t.computed(()=>e.data.expanded.input??!1),g=t.computed(()=>e.data.expanded.output??!1),h=t.computed(()=>{var v,P,A;return((A=(P=(v=f.value.io)==null?void 0:v.next)==null?void 0:P.branches)==null?void 0:A.map(({name:Y})=>Y))??[]}),w=t.computed(()=>h.value.length>0),_=t.computed(()=>{var v,P;if(e.data.type==="property"){const A=(v=e.data.config)==null?void 0:v.property;return Yl(A)}return(P=f.value.io)==null?void 0:P.input}),k=t.computed(()=>{var v,P;if(e.data.type==="property"){const A=(v=e.data.config)==null?void 0:v.property;return Hl(A)}return(P=f.value.io)==null?void 0:P.output}),E=t.computed(()=>_u(e.data)),C=t.computed(()=>e.data.phase==="response"),N=t.computed(()=>e.data.phase==="request"?ke.Left:ke.Right),I=t.computed(()=>e.data.phase==="request"?ke.Right:ke.Left),D=t.computed(()=>e.data.phase==="request"?ke.Right:ke.Left),G=t.computed(()=>E.value?n(`plugins.free-form.datakit.flow_editor.node_types.${e.data.type}.name`):e.data.name),K=t.computed(()=>E.value?Vk:Rk),S=t.computed(()=>{const v=new Map,P=r(e.data.id);for(const A of P){const Y=a(A.source);if(!Y)continue;const W=Y.type==="vault",ie=Y.phase!==e.data.phase;if(!W&&!ie)continue;let oe;if(A.sourceField){const de=Y.fields.output.find(he=>he.id===A.sourceField);oe=de==null?void 0:de.name}if(A.targetField){const de=e.data.fields.input.find(he=>he.id===A.targetField);if(!de)continue;v.set(A.targetField,{fieldId:A.targetField,edgeId:A.id,field:de,sourceNode:Y,sourceFieldName:oe})}else v.set("input",{fieldId:"input",edgeId:A.id,field:null,sourceNode:Y,sourceFieldName:oe})}return v}),ne=t.computed(()=>{const v=new Map,P=i(e.data.id);for(const A of P){const Y=a(A.target);if(!Y||!(Y.phase!==e.data.phase))continue;let ie;if(A.targetField){const he=Y.fields.input.find(X=>X.id===A.targetField);ie=he==null?void 0:he.name}const oe=A.sourceField||"output";if(!v.has(oe)){const he=A.sourceField&&e.data.fields.output.find(X=>X.id===A.sourceField)||null;v.set(oe,{fieldId:oe,edgeIds:[],field:he,targetNodes:[],targetFieldNames:[]})}const de=v.get(oe);de.edgeIds.push(A.id),de.targetNodes.push(Y),de.targetFieldNames.push(ie)}return v});function x(v){return S.value.get(v)}function q(v){return ne.value.get(v)}function U(v){!o||o.readonly||v==="input"&&!m.value||v==="output"&&!y.value||l(e.data.id,v)}async function te(){if(!o||o.readonly)return;const v=s(e.data.id,o.placeToRight(e.data.id));await o.selectNode(v),o.scrollRightToReveal(v),u.value=!0}t.watch(m,v=>{v||l(e.data.id,"input",!0,!0,"*")},{immediate:!0}),t.watch(y,v=>{v||l(e.data.id,"output",!0,!0,"*")},{immediate:!0}),t.watch(()=>e.data.fields.input,(v,P)=>{Oo(v,P)||l(e.data.id,"input",v.length>0,!0,"*")},{deep:!0}),t.watch(()=>e.data.fields.output,(v,P)=>{Oo(v,P)||l(e.data.id,"output",v.length>0,!0,"*")},{deep:!0});const V=t.useTemplateRef("menu");function T(){var v;(v=V.value)==null||v.closeDropdown()}return(v,P)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-flow-node",{reversed:C.value,implicit:E.value,readonly:v.readonly}]),onMousedown:T},[t.createElementVNode("div",pV,[E.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:0,class:"badge",placement:"top",text:v.data.type},{default:t.withCtx(()=>[t.createVNode(Im,{"icon-only":"",size:"small",type:v.data.type},null,8,["type"])]),_:1},8,["text"])),t.createElementVNode("div",mV,t.toDisplayString(G.value),1),v.error?(t.openBlock(),t.createBlock(t.unref(Se.WarningIcon),{key:1,class:"error-icon",color:t.unref($a),size:16},null,8,["color"])):t.createCommentVNode("",!0),E.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Oe.KDropdown),{key:2,ref:"menu",class:"menu",disabled:v.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:P[1]||(P[1]=t.withModifiers(()=>{},["stop"]))},{items:t.withCtx(()=>[t.createVNode(t.unref(Oe.KDropdownItem),{onClick:te},{default:t.withCtx(()=>[t.createVNode(Fi,{keys:t.unref(Kr).duplicate,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),t.createVNode(t.unref(Oe.KDropdownItem),{danger:"",onClick:P[0]||(P[0]=A=>t.unref(c)(v.data.id))},{default:t.withCtx(()=>[t.createVNode(Fi,{keys:t.unref(Kr).delete,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.delete")},null,8,["keys","label"])]),_:1})]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.MoreIcon),{color:t.unref(od)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),t.createElementVNode("div",{class:t.normalizeClass(["handles",{reversed:C.value}])},[_.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:t.normalizeClass(["input-handles",{"has-fields":d.value}])},[t.createElementVNode("div",gV,[t.createVNode(t.unref(jt),{id:"input",position:N.value,type:"target"},null,8,["position"]),x("input")?(t.openBlock(),t.createBlock(Ui,{key:0,"edge-id":x("input").edgeId,mode:"input",reversed:C.value,"source-field-name":x("input").sourceFieldName,"source-node":x("input").sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",hV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:m.value}]),onClick:P[2]||(P[2]=t.withModifiers(A=>U("input"),["stop"]))},[P[4]||(P[4]=t.createElementVNode("div",{class:"text"}," inputs ",-1)),d.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[b.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Se.UnfoldMoreIcon),{key:0,size:t.unref(Mo)},null,8,["size"])),b.value?(t.openBlock(),t.createBlock(t.unref(Se.UnfoldLessIcon),{key:1,color:m.value?void 0:t.unref(rd),size:t.unref(Mo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),d.value&&b.value?(t.openBlock(),t.createBlock(Li,{key:0,color:K.value,position:N.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)])]),d.value&&b.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(v.data.fields.input,(A,Y)=>(t.openBlock(),t.createElementBlock("div",{key:`inputs-${A.id}`,class:"handle indented"},[t.createVNode(t.unref(jt),{id:`inputs@${A.id}`,position:N.value,type:"target"},null,8,["id","position"]),x(A.id)?(t.openBlock(),t.createBlock(Ui,{key:0,"edge-id":x(A.id).edgeId,mode:"input",reversed:C.value,"source-field-name":x(A.id).sourceFieldName,"source-node":x(A.id).sourceNode},null,8,["edge-id","reversed","source-field-name","source-node"])):t.createCommentVNode("",!0),t.createElementVNode("div",yV,[t.createElementVNode("div",_V,t.toDisplayString(A.name),1),t.createVNode(Li,{color:K.value,position:N.value,type:Y<v.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),k.value?(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["output-handles",{"has-fields":p.value}])},[t.createElementVNode("div",bV,[t.createElementVNode("div",wV,[t.createElementVNode("div",{class:t.normalizeClass(["handle-label trigger",{collapsible:y.value}]),onClick:P[3]||(P[3]=t.withModifiers(A=>U("output"),["stop"]))},[P[5]||(P[5]=t.createElementVNode("div",{class:"text"}," outputs ",-1)),p.value?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[g.value?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.unref(Se.UnfoldMoreIcon),{key:0,size:t.unref(Mo)},null,8,["size"])),g.value?(t.openBlock(),t.createBlock(t.unref(Se.UnfoldLessIcon),{key:1,color:y.value?void 0:t.unref(rd),size:t.unref(Mo)},null,8,["color","size"])):t.createCommentVNode("",!0)],64)):t.createCommentVNode("",!0)],2),p.value&&g.value?(t.openBlock(),t.createBlock(Li,{key:0,color:K.value,position:I.value,type:"bar"},null,8,["color","position"])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(jt),{id:"output",position:I.value,type:"source"},null,8,["position"]),q("output")?(t.openBlock(),t.createBlock(Ui,{key:0,mode:"output",reversed:C.value,"target-field-names":q("output").targetFieldNames,"target-nodes":q("output").targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]),p.value&&g.value?(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:0},t.renderList(v.data.fields.output,(A,Y)=>(t.openBlock(),t.createElementBlock("div",{key:`outputs-${A.id}`,class:"handle indented"},[t.createElementVNode("div",kV,[t.createElementVNode("div",CV,t.toDisplayString(A.name),1),t.createVNode(Li,{color:K.value,position:I.value,type:Y<v.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),t.createVNode(t.unref(jt),{id:`outputs@${A.id}`,position:I.value,type:"source"},null,8,["id","position"]),q(A.id)?(t.openBlock(),t.createBlock(Ui,{key:0,mode:"output",reversed:C.value,"target-field-names":q(A.id).targetFieldNames,"target-nodes":q(A.id).targetNodes},null,8,["reversed","target-field-names","target-nodes"])):t.createCommentVNode("",!0)]))),128)):t.createCommentVNode("",!0)],2)):t.createCommentVNode("",!0),w.value?(t.openBlock(),t.createElementBlock("div",EV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(h.value,A=>(t.openBlock(),t.createElementBlock("div",{key:`branch-${A}`,class:"handle"},[t.createElementVNode("div",NV,[t.createElementVNode("div",SV,t.toDisplayString(A),1)]),t.createVNode(t.unref(jt),{id:`branch@${A}`,connectable:!1,position:D.value,type:"source"},null,8,["id","position"])]))),128))])):t.createCommentVNode("",!0)],2)],34))}}),[["__scopeId","data-v-2bf41241"]]),vV=ve(t.defineComponent({__name:"GroupNode",props:{data:{}},setup(e){const n=e,o=t.computed(()=>n.data.phase==="response"),r=t.computed(()=>o.value?ke.Right:ke.Left);return(i,a)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-branch-group-node",{reversed:o.value}])},[t.createVNode(t.unref(jt),{id:"input",connectable:!1,position:r.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-35113c02"]]),xV={key:0,class:"dk-flow-mask"},Tm=ve(t.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(e,{expose:n,emit:o}){const r=o,i=t.useTemplateRef("flowCanvas"),a=Xe.useElementBounding(i),{i18n:{t:l}}=De(),{vueFlowStore:s,editorStore:c,autoLayout:u,fitViewParams:f,fitView:d,selectNode:p,placeToRight:m,scrollRightToReveal:y}=nV({phase:e.phase,flowId:e.flowId,layoutOptions:{viewport:{width:a.width,height:a.height}},readonly:e.mode!=="edit"}),{addNode:b,propertiesPanelOpen:g,invalidConfigNodeIds:h,selectedNode:w,duplicateNode:_}=c,{project:k,vueFlowRef:E,zoomIn:C,zoomOut:N,viewport:I,maxZoom:D,minZoom:G}=s,K=t.ref(!1);function S(V){var T;if(e.mode==="edit"){if(((T=V==null?void 0:V.node)==null?void 0:T.type)==="group"){p(void 0);return}g.value=!0}}function ne(V){e.mode!=="edit"||K.value||V.preventDefault()}function x(V){var he,X;if(e.mode!=="edit"||K.value)return;const T=(he=V.dataTransfer)==null?void 0:he.getData(Go);if(!T)return;V.preventDefault();const v=JSON.parse(T);if(v.action!=="create-node")return;const{top:P=0,left:A=0}=((X=E.value)==null?void 0:X.getBoundingClientRect())||{},Y=k({x:V.clientX-A,y:V.clientY-P}),{type:W,anchor:ie}=v.data,oe={type:W,phase:e.phase,position:{x:Y.x-ie.offsetX,y:Y.y-ie.offsetY}},de=b(oe);de&&(p(de),g.value=!0)}function q(){u(),t.nextTick(()=>d())}const U=t.computed(()=>{if(e.mode==="preview")return[];const V=[{name:"zoom_in",icon:Se.AddIcon,action:C,disabled:I.value.zoom>=D.value},{name:"zoom_out",icon:Se.RemoveIcon,action:N,disabled:I.value.zoom<=G.value},{name:"fit_view",icon:Se.FullscreenIcon,action:d}];return e.mode==="edit"&&V.push({name:"auto_layout",icon:Se.AutoLayoutIcon,action:q}),V});if(e.phase==="response"&&e.mode==="edit"){Xe.useEventListener("dragstart",T=>{var A;const v=(A=T.dataTransfer)==null?void 0:A.types.find(Y=>Y.startsWith(`${Go}/`));if(!v)return;v.replace(`${Go}/`,"")==="call"&&(K.value=!0)});const{start:V}=Xe.useTimeoutFn(()=>{K.value=!1},80);Xe.useEventListener("dragover",()=>{V()}),Xe.useEventListener("dragend",()=>{K.value=!1})}async function te(){const V=w.value;if(e.mode!=="edit"||!V||V.phase!==e.phase)return;const T=_(V.id,m(V.id));T&&(await p(T),g.value=!0,y(T))}return Ap({enabled:t.computed(()=>!!w.value&&e.mode==="edit"&&w.value.phase===e.phase),duplicate:te}),n({autoLayout:u,fitView:d}),(V,T)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[t.createVNode(t.unref(Np),{id:V.flowId,class:t.normalizeClass(["flow",{readonly:V.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":V.mode==="edit","max-zoom":t.unref(zP),"min-zoom":t.unref(HP),"multi-selection-key-code":null,"nodes-connectable":V.mode==="edit","nodes-draggable":V.mode==="edit","pan-on-drag":V.mode==="preview"?!1:void 0,"pan-on-scroll":V.mode!=="edit"?!1:void 0,"zoom-on-double-click":V.mode!=="edit"?!1:void 0,"zoom-on-pinch":V.mode!=="edit"?!1:void 0,"zoom-on-scroll":V.mode!=="edit"?!1:void 0,onDragover:ne,onDrop:x,onNodeClick:S,onNodesChange:T[0]||(T[0]=v=>r("nodes-change")),onNodesInitialized:T[1]||(T[1]=v=>r("initialized"))},{"node-flow":t.withCtx(({data:v})=>[t.createVNode(Pm,{data:v,error:t.unref(h).has(v.id),readonly:V.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":t.withCtx(({data:v})=>[t.createVNode(vV,{data:v},null,8,["data"])]),default:t.withCtx(()=>[t.createVNode(t.unref(mP)),t.createVNode(t.unref(FP),{"fit-view-params":t.unref(f),position:"bottom-left","show-fit-view":!1,"show-interactive":!1,"show-zoom":!1},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(U.value,v=>(t.openBlock(),t.createBlock(t.unref(Oe.KTooltip),{key:v.name,placement:"right",text:t.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${v.name}`)},{default:t.withCtx(()=>[t.createVNode(t.unref(cr),{disabled:v.disabled,onClick:t.withModifiers(v.action,["stop"])},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(v.icon),{size:18}))]),_:2},1032,["disabled","onClick"])]),_:2},1032,["text"]))),128))]),_:1},8,["fit-view-params"])]),_:1},8,["id","class","elements-selectable","max-zoom","min-zoom","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"]),K.value?(t.openBlock(),t.createElementBlock("div",xV,t.toDisplayString(t.unref(l)("plugins.free-form.datakit.flow_editor.phase_mask_help")),1)):t.createCommentVNode("",!0)],512))}}),[["__scopeId","data-v-c5f80aea"]]),cs=ve(t.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(e){const n=t.ref(!1),o=t.ref(!1),{state:r,clearPendingLayout:i,setPendingFitView:a,commit:l,clear:s}=st(),c=t.useId(),u=`${c}-request`,f=`${c}-response`,d=Fe(u),p=Fe(f);function m(A,Y){const{onPaneClick:W,onNodesChange:ie,onEdgesChange:oe,getSelectedNodes:de,getSelectedEdges:he}=A,{removeSelectedElements:X}=Y;function ce(se){if(!se){X();return}se.some(ue=>ue.type==="select")&&de.value.length+he.value.length>0&&X()}ie(ce),oe(ce),W(()=>ce())}m(d,p),m(p,d);const y=t.useTemplateRef("flowPanels"),b=t.useTemplateRef("requestLabel"),g=t.useTemplateRef("requestCanvasContainer"),h=t.useTemplateRef("requestFlow"),w=t.useTemplateRef("resizeHandle"),_=t.useTemplateRef("responseLabel"),k=t.useTemplateRef("responseCanvasContainer"),E=t.useTemplateRef("responseFlow"),C=Xe.useElementBounding(y),N=Xe.useElementBounding(b),I=Xe.useElementBounding(g),D=Xe.useElementBounding(w),G=Xe.useElementBounding(_),K=Xe.useElementBounding(k),S=t.computed(()=>Math.max(30,C.height.value*.03)),ne=t.computed(()=>I.height.value<S.value),x=t.computed(()=>K.height.value<S.value),q=t.ref("50%"),U=t.ref("50%"),te=()=>{e.resizable&&(ne.value?(q.value="50%",U.value="50%"):(q.value="0",U.value="100%"))},V=()=>{e.resizable&&(x.value?(q.value="50%",U.value="50%"):(q.value="100%",U.value="0"))},T=t.computed(()=>C.height.value-N.height.value-D.height.value-G.height.value),{isDragging:v}=Xe.useDraggable(w,{onMove(A){if(!e.resizable)return;const Y=Math.max(0,A.y-I.top.value),W=Math.min(1,Math.max(0,Y/T.value));q.value=`${W*100}%`,U.value=`${(1-W)*100}%`},onEnd(){e.resizable&&(I.height.value<S.value?(q.value="0",U.value="100%"):K.height.value<S.value&&(q.value="100%",U.value="0"))}});function P(){t.nextTick(()=>{var A,Y;(A=h.value)==null||A.fitView(),(Y=E.value)==null||Y.fitView()})}return t.watch([n,o,()=>r.value.pendingLayout,()=>r.value.pendingFitView],([A,Y,W,ie])=>{e.inactive||!A||!Y||!W&&!ie||(W&&i(),ie&&a(!1),setTimeout(()=>{var oe,de;W&&((oe=h.value)==null||oe.autoLayout(!1),(de=E.value)==null||de.autoLayout(!1),l("*"),W==="clearHistory"&&s()),ie&&P()},0))}),(A,Y)=>(t.openBlock(),t.createElementBlock("div",{ref_key:"flowPanels",ref:y,class:"flow-panels"},[t.createElementVNode("div",{ref_key:"requestLabel",ref:b,class:t.normalizeClass(["label request",{resizable:A.resizable}]),onClick:te},[A.resizable?(t.openBlock(),t.createBlock(t.unref(Se.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:ne.value}])},null,8,["class"])):t.createCommentVNode("",!0),Y[4]||(Y[4]=t.createElementVNode("div",{class:"label-content"}," Request ",-1))],2),t.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:g,class:t.normalizeClass(["canvas",{dragging:t.unref(v)}]),style:t.normalizeStyle({flexBasis:q.value})},[t.createVNode(Tm,{ref_key:"requestFlow",ref:h,"flow-id":u,mode:A.mode,phase:"request",onInitialized:Y[0]||(Y[0]=W=>n.value=!0),onNodesChange:Y[1]||(Y[1]=W=>n.value=!1)},null,8,["mode"])],6),t.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:t.normalizeClass(["resize-handle",{resizable:A.resizable}])},null,2),t.createElementVNode("div",{ref_key:"responseLabel",ref:_,class:t.normalizeClass(["label response",{dragging:t.unref(v),resizable:A.resizable}]),onClick:V},[A.resizable?(t.openBlock(),t.createBlock(t.unref(Se.ChevronDownIcon),{key:0,class:t.normalizeClass(["icon",{collapsed:x.value}])},null,8,["class"])):t.createCommentVNode("",!0),Y[5]||(Y[5]=t.createElementVNode("div",{class:"label-content"}," Response ",-1))],2),t.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:k,class:t.normalizeClass(["canvas response",{dragging:t.unref(v)}]),style:t.normalizeStyle({flexBasis:U.value})},[t.createVNode(Tm,{ref_key:"responseFlow",ref:E,"flow-id":f,mode:A.mode,phase:"response",onInitialized:Y[2]||(Y[2]=W=>o.value=!0),onNodesChange:Y[3]||(Y[3]=W=>o.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-57dcdcfa"]]),AV={class:"dk-confirm-modal-body"},IV={class:"dk-confirm-modal-connections"},PV=ve(t.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(e,{expose:n,emit:o}){const{i18n:{t:r}}=De(),i=o,a=t.ref(!1),l=t.ref(e.message),s=t.ref(e.addedConnections??[]),c=t.ref(e.removedConnections??[]);let u=null;function f(){a.value=!1,i("cancel"),u==null||u(!1)}function d(){a.value=!1,i("confirm"),u==null||u(!0)}async function p(m,y,b){return l.value=m,s.value=y??[],c.value=b??[],a.value=!0,await new Promise(g=>{u=g})}return n({open:p}),(m,y)=>{const b=t.resolveComponent("KModal");return t.openBlock(),t.createBlock(b,{"action-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:m.title??t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:a.value,"z-index":9999,onCancel:f,onProceed:d},{default:t.withCtx(()=>[t.createElementVNode("div",AV,[t.createElementVNode("p",null,t.toDisplayString(l.value),1),t.createElementVNode("p",null,t.toDisplayString(t.unref(r)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),t.createElementVNode("div",IV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(s.value??[],([g,h])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${h}`},[t.createVNode(t.unref(Se.AddIcon),{color:t.unref(Dk)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),y[0]||(y[0]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(h),1)]))),128)),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(c.value??[],([g,h])=>(t.openBlock(),t.createElementBlock("div",{key:`${g}-${h}`},[t.createVNode(t.unref(Se.RemoveIcon),{color:t.unref($a)},null,8,["color"]),t.createElementVNode("span",null,t.toDisplayString(g),1),y[1]||(y[1]=t.createTextVNode(" → ",-1)),t.createElementVNode("span",null,t.toDisplayString(h),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-9874f282"]]),TV={class:"dk-editor-nav"},OV={class:"top"},$V={class:"bottom"},BV=ve(t.defineComponent({__name:"EditorNav",emits:["back"],setup(e,{emit:n}){const{t:o}=Ze.createI18n("en-us",rt),r=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:Se.ArrowLeftIcon,onClick:()=>r("back")}],{sidePanelExpanded:a}=ll(),l=t.computed(()=>a.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=t.ref(!1);function c(){a.value=!a.value}return(u,f)=>(t.openBlock(),t.createElementBlock("nav",TV,[t.createElementVNode("div",OV,[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(i,({label:d,to:p,icon:m,onClick:y})=>t.createVNode(t.unref(Oe.KTooltip),{key:d,"kpop-attributes":{offset:"10px"},label:d,placement:"right"},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.unref(Oe.KButton),{key:d,appearance:"none",class:"nav-item",icon:"",to:p,onClick:y},{default:t.withCtx(()=>[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(m),{decorative:"",size:t.unref(Ba)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),t.createElementVNode("div",$V,[t.createElementVNode("div",{class:t.normalizeClass(["side-panel-toggle",{expanded:t.unref(a)}]),onTransitionend:f[0]||(f[0]=t.withModifiers(d=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=t.withModifiers(d=>s.value=!0,["self"]))},[t.createVNode(t.unref(Oe.KTooltip),{label:s.value?void 0:l.value,placement:t.unref(a)?"left":"right"},{default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:t.withCtx(()=>[t.unref(a)?(t.openBlock(),t.createBlock(t.unref(Se.ChevronDoubleLeftIcon),{key:0,decorative:"",size:t.unref(Ba)},null,8,["size"])):(t.openBlock(),t.createBlock(t.unref(Se.ChevronDoubleRightIcon),{key:1,decorative:"",size:t.unref(Ba)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),VV={class:"dk-editor-main"},RV={class:"header"},DV={class:"actions"},MV={class:"settings"},LV={ref:"canvasContainer",class:"body"},FV=ve(t.defineComponent({__name:"EditorMain",setup(e){const{t:n}=Ze.createI18n("en-us",rt),{modalOpen:o,undo:r,redo:i,canUndo:a,canRedo:l,load:s}=st();function c(d){const p=Wa.load(d,{schema:Ur,json:!0});if(typeof p!="object"||p===null)return;const m=p,y={config:{...m,nodes:m.nodes??[]}};s(y,!0)}function u(){o.value=!1}Ap({enabled:o,undo:r,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(d,p)=>(t.openBlock(),t.createElementBlock("div",VV,[t.createElementVNode("header",RV,[t.createElementVNode("div",DV,[t.createVNode(t.unref(Oe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Fi,{keys:t.unref(Kr).undo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",disabled:!t.unref(a),icon:"",onClick:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),t.createVNode(t.unref(Oe.KTooltip),{"z-index":1e4},{content:t.withCtx(()=>[t.createVNode(Fi,{keys:t.unref(Kr).redo,label:t.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:t.withCtx(()=>[t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",disabled:!t.unref(l),icon:"",onClick:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createElementVNode("div",MV,[t.createVNode(Ia,{label:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:t.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:f},name:"config.debug"},null,8,["label","label-attributes"])]),p[1]||(p[1]=t.createElementVNode("div",{class:"divider"},null,-1)),t.createVNode(t.unref(Oe.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":t.unref(n)("plugins.free-form.datakit.flow_editor.examples")},{items:t.withCtx(()=>[(t.openBlock(),t.createElementBlock(t.Fragment,null,t.renderList(Xa,(m,y)=>t.createVNode(t.unref(Oe.KDropdownItem),{key:y,onClick:b=>c(m)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)(`plugins.free-form.datakit.examples.${y}`)),1)]),_:2},1032,["onClick"])),64))]),_:1},8,["trigger-text"]),t.createVNode(t.unref(Oe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.view_docs"))+" ",1),t.createVNode(t.unref(Se.ExternalLinkIcon))]),_:1}),t.createVNode(t.unref(Oe.KButton),{onClick:u},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),t.createElementVNode("div",LV,[t.createVNode(cs,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-32006420"]]),UV=["draggable"],KV={class:"icon"},jV={class:"content"},GV={class:"title"},qV={class:"description"},zV=ve(t.defineComponent({__name:"NodePanelItem",props:{type:{}},emits:["dragstart"],setup(e,{emit:n}){t.useCssVars(u=>({"209a0a7f":t.unref(l),"336bc2d8":t.unref(s)}));const o=n,r=e.type==="cache",{summary:i,icon:a,colors:{background:l,foreground:s}={}}=Qa[e.type];function c(u){o("dragstart",u,e.type)}return(u,f)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["dk-node-panel-item",{[`node-type-${u.type}`]:!0,unsupported:r}]),draggable:!r,onDragstart:c},[t.createElementVNode("div",KV,[t.createVNode(t.unref(a),{size:16})]),t.createElementVNode("div",jV,[t.createElementVNode("div",GV,t.toDisplayString(u.type),1),t.createElementVNode("div",qV,t.toDisplayString(t.unref(i)),1)])],42,UV))}}),[["__scopeId","data-v-3173f9b0"]]),HV={class:"dk-node-panel"},YV={key:0,class:"title"},WV={class:"node-list"},XV={"aria-hidden":"true",class:"preview",inert:""},Om=ve(t.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),{createNode:o}=st(),r=`dk-drag-preview-${t.useId()}`,i=t.shallowRef(),a=t.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var I,D,G;const u=s.currentTarget,{left:f,top:d,width:p,height:m}=u.getBoundingClientRect(),y=s.clientX-f,b=s.clientY-d;i.value=o({type:c}),await t.nextTick();const g=document.querySelector(`#${r}`)||u,h=g.cloneNode(!0);h.classList.add("dk-drag-snapshot");const{offsetWidth:w,offsetHeight:_}=g;Object.assign(h.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${w}px`,height:`${_}px`}),document.body.appendChild(h);const k=y/p,E=b/m,C={ratioX:k,ratioY:E,offsetX:w*k,offsetY:_*E},N={action:"create-node",data:{type:c,anchor:C}};(I=s.dataTransfer)==null||I.setData(Go,JSON.stringify(N)),(D=s.dataTransfer)==null||D.setData(`${Go}/${c}`,c),(G=s.dataTransfer)==null||G.setDragImage(h,C.offsetX,C.offsetY),requestAnimationFrame(()=>{h.remove(),i.value=void 0})};return(s,c)=>{const u=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",HV,[s.hideTitle?t.createCommentVNode("",!0):(t.openBlock(),t.createElementBlock("h3",YV,[t.createVNode(u,{class:"label",info:t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),t.createElementVNode("div",WV,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(Object.keys(t.unref(Qa)),f=>(t.openBlock(),t.createBlock(zV,{key:f,type:f,onDragstart:l},null,8,["type"]))),128))]),t.createElementVNode("div",XV,[t.createVNode(t.unref(Np),{nodes:a.value},{"node-flow":t.withCtx(f=>[t.createVNode(Pm,{id:r,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-51ccb23d"]]);function ZV(){const{addField:e,getNodeByName:n,removeField:o,replaceConfig:r,renameField:i,disconnectOutEdges:a,nodeMapByName:l}=st(),s=n("vault");if(!s)throw new Error("no vault node");const c=t.computed(()=>{var y;return((y=l.value.get("vault"))==null?void 0:y.config)||{}});return{formData:t.computed(()=>({vault:{...c.value}})),addVault:(y,b)=>{e(s.id,"output",y,!1);const g={...s.config,[y]:b};r(s.id,g)},removeVault:y=>{const b=ln(s,"output",y);if(!b)return;const g=s.fields.output.length===1;o(s.id,b.id,!0,!1);const h=$o(s.config,y);r(s.id,h,!g),g&&a(s.id)},updateVault:(y,b,g=!0)=>{const h={...s.config,[y]:b};r(s.id,h,g)},renameVault:(y,b,g=!0)=>{var k;const h=ln(s,"output",y);if(!h)return;i(s.id,h.id,b,!1);const w=((k=s.config)==null?void 0:k[y])??"",_={...$o(s.config,y),[b]:w};r(s.id,_,g)}}}const JV=t.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ke.useI18n(),i=t.inject(Me.FORMS_CONFIG),a=t.ref(e.secretName||""),l=t.ref(""),s=t.computed(()=>a.value.trim()?e.validateName(a.value.trim(),e.isEditing)===void 0:!1),c=t.computed(()=>!s.value),u=()=>{const m=a.value.trim(),y=e.validateName(m,e.isEditing);return l.value=y||"",y===void 0},f=()=>{l.value="",u()},d=m=>{u()&&o("proceed",{secretRef:m,secretName:a.value.trim()})},p=()=>{a.value="",l.value="",o("cancel")};return t.watch(()=>e.secretName,m=>{a.value=m||"",l.value=""}),(m,y)=>{const b=t.resolveComponent("KInput"),g=t.resolveComponent("KEmptyState");return t.unref(i)?(t.openBlock(),t.createBlock(t.unref(ko.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:t.unref(i),"proceed-button-text":t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:m.secretRef,title:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:d},{"form-prefix":t.withCtx(()=>[t.createVNode(b,{"model-value":a.value,"onUpdate:modelValue":[y[0]||(y[0]=h=>a.value=h),f],"data-testid":"vault-secret-picker-secret-name-input",error:!!l.value,"error-message":l.value,label:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:t.unref(r)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.placeholder"),required:""},null,8,["model-value","error","error-message","label","label-attributes","placeholder"])]),_:1},8,["additional-disabled","config","proceed-button-text","setup","title"])):(t.openBlock(),t.createBlock(g,{key:1,"icon-variant":"error",message:t.unref(r)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),QV={class:"dk-vault-panel"},eR={class:"title"},tR={class:"vault-list"},nR={key:0,class:"vault-list-item"},oR={class:"vault-list-item-key"},rR={class:"vault-list-item-key-text"},iR=ve(t.defineComponent({__name:"VaultField",props:{name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["update","add","remove","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l}=Or(o,r),s=t.ref(null),c=t.ref(null),{i18n:{t:u}}=Ke.useI18n(),f=t.computed(()=>new Set(i.value.map(h=>h.key))),d=()=>{const h=a();c.value=h,s.value=h},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=h=>{if(!s.value)throw new Error("no selected entry");const w=s.value.key,_=w!==h.secretName,k=s.value.value!==h.secretRef,E=_||k;s.value.value=h.secretRef,s.value.key=h.secretName,c.value?r("add",h.secretName,h.secretRef):E&&r("update",h.secretName,h.secretRef,_?w:void 0),c.value=null,p()},y=h=>{s.value=h},b=h=>{l(h.id),r("remove",h.key)},g=(h,w)=>{var _;if(!h)return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(h)&&!(w&&h===((_=s.value)==null?void 0:_.key)))return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(h,w)=>{var C,N;const _=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdown");return t.openBlock(),t.createElementBlock("div",QV,[t.createElementVNode("h3",eR,t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),t.createVNode(_,{appearance:"tertiary",class:"add-button",size:"small",onClick:d},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),t.createElementVNode("div",tR,[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),I=>(t.openBlock(),t.createElementBlock(t.Fragment,{key:I.id},[I.key?(t.openBlock(),t.createElementBlock("div",nR,[t.createElementVNode("div",oR,[t.createVNode(t.unref(Se.KeyIcon),{color:t.unref(id),size:16},null,8,["color"]),t.createElementVNode("div",rR,t.toDisplayString(I.key),1)]),t.createVNode(E,null,{items:t.withCtx(()=>[t.createVNode(k,{onClick:D=>y(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:2},1032,["onClick"]),t.createVNode(k,{danger:"",onClick:D=>b(I)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:2},1032,["onClick"])]),default:t.withCtx(()=>[t.createVNode(_,{appearance:"tertiary",icon:""},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.MoreIcon),{color:t.unref(od)},null,8,["color"])]),_:1})]),_:2},1024)])):t.createCommentVNode("",!0)],64))),128))]),t.createVNode(JV,{"is-editing":!!s.value&&!c.value,"secret-name":(C=s.value)==null?void 0:C.key,"secret-ref":(N=s.value)==null?void 0:N.value,"validate-name":g,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-4df4e490"]]),aR={class:"dk-resources-panel"},lR=ve(t.defineComponent({__name:"ResourcesPanel",setup(e){const n={type:"record",fields:[{vault:{type:"map",keys:{type:"string"},values:{type:"string"}}}]},{addVault:o,removeVault:r,updateVault:i,renameVault:a,formData:l}=ZV();function s(c,u,f){f&&f!==c&&a(f,c,!1),i(c,u)}return(c,u)=>(t.openBlock(),t.createElementBlock("div",aR,[t.createVNode(ht,{data:t.unref(l),schema:n},{default:t.withCtx(()=>[t.createVNode(iR,{name:"vault",onAdd:t.unref(o),onRemove:t.unref(r),onUpdate:s},null,8,["onAdd","onRemove"])]),_:1},8,["data"])]))}}),[["__scopeId","data-v-20ce9c3d"]]),sR={class:"header"},cR={class:"title"},dR={class:"body"},uR={class:"panel"},fR=ve(t.defineComponent({__name:"SidePanel",setup(e){const{t:n}=Ze.createI18n("en-us",rt),{sidePanelExpanded:o}=ll(),{propertiesPanelOpen:r,selectedNode:i}=st(),a=t.inject(Bo.DATAKIT_M2,!1),l=t.ref("nodes");function s(){r.value=!1}t.watch(i,u=>{u||s()});const c=t.ref(!1);return t.onMounted(()=>{c.value=!0}),(u,f)=>{const d=t.resolveComponent("KSegmentedControl");return t.openBlock(),t.createElementBlock("aside",{class:t.normalizeClass(["side-panel",{expanded:t.unref(o),inited:c.value}])},[t.createElementVNode("header",sR,[t.createElementVNode("h2",cR,t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),t.createElementVNode("div",dR,[t.createElementVNode("div",uR,[t.unref(a)?(t.openBlock(),t.createElementBlock(t.Fragment,{key:0},[t.createVNode(d,{modelValue:l.value,"onUpdate:modelValue":f[0]||(f[0]=p=>l.value=p),options:[{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:t.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),l.value==="nodes"?(t.openBlock(),t.createBlock(Om,{key:0,"hide-title":""})):t.createCommentVNode("",!0),l.value==="resources"?(t.openBlock(),t.createBlock(lR,{key:1})):t.createCommentVNode("",!0)],64)):(t.openBlock(),t.createBlock(Om,{key:1}))])])],2)}}}),[["__scopeId","data-v-ae943268"]]),pR=t.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(e){return(n,o)=>(t.openBlock(),t.createBlock(Nt,{items:t.unref(Ca)([...t.unref(yu)]),name:n.name},null,8,["items","name"]))}}),mR=t.defineComponent({__name:"InputsRecordField",props:{name:{},items:{}},emits:["change:inputs"],setup(e){const{getSchema:n}=Ye(),{i18n:o}=De(),r=t.computed(()=>{const i=n("inputs");return i?i.fields.map(a=>Object.keys(a)[0]):[]});return(i,a)=>(t.openBlock(),t.createBlock(gt,{"as-child":"",name:i.name,"reset-label-path":"isolate"},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.value,l=>(t.openBlock(),t.createBlock(Nt,{key:l,clearable:"","enable-filtering":"",items:i.items,name:l,placeholder:t.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},null,8,["items","name","placeholder","onChange"]))),128))]),_:1},8,["name"]))}}),gR=["data-testid"],hR={class:"dk-inputs-map-field-entry-body"},yR={class:"dk-inputs-map-field-entry-content"},_R=ve(t.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(e,{emit:n}){const o=e,r=n,{entries:i,addEntry:a,removeEntry:l,field:s}=Or(o,r),{i18n:{t:c}}=De(),u=t.useTemplateRef("root"),f=t.ref(null),d=t.ref({});let p;async function m(E,C="key"){var N;u.value&&(await t.nextTick(),(N=u.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function y(){const{id:E}=a(),C=i.value.findIndex(({key:N})=>!N);m(C===-1?i.value.length-1:C),f.value=E}function b(E){l(E.id),E.id===f.value&&(f.value=null),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function h(E){if(w(E)){E.key=p,delete d.value[E.id];return}if(E.id===f.value){if(E.key.trim()==="")return;r("add:field",E.key,E.value),f.value=null}else r("rename:field",p,E.key);p=E.key}function w(E){delete d.value[E.id];const C=o.fieldNameValidator("input",p,E.key);if(C)return d.value[E.id]=C,C}function _(E){w(E)}function k(E,C){E.id!==f.value&&r("change:inputs",E.key,C)}return t.watch(()=>i.value,E=>{f.value&&(E.find(({id:C})=>C===f.value)||(f.value=null))}),(E,C)=>{const N=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),D=t.resolveComponent("KInput"),G=t.resolveComponent("KSelect"),K=t.resolveComponent("KButton");return t.unref(s).error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:t.unref(s).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:u,class:"dk-inputs-map-field"},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(i),(S,ne)=>(t.openBlock(),t.createElementBlock("div",{key:S.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${t.unref(s).path.value}.${ne}`},[t.createVNode(I,{for:`ff-kv-entry-key-${t.unref(s).path.value}.${ne}`},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:2},1032,["for"]),t.createElementVNode("div",hR,[t.createElementVNode("div",yR,[t.createVNode(D,{id:`ff-kv-entry-key-${t.unref(s).path.value}.${ne}`,modelValue:S.key,"onUpdate:modelValue":[x=>S.key=x,x=>w(S)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":ne,"data-testid":`ff-key-${t.unref(s).path.value}.${ne}`,error:!!d.value[S.id],"error-message":d.value[S.id],placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:x=>_(S),onChange:x=>h(S),onFocus:x=>g(S)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),t.createVNode(G,{modelValue:S.value,"onUpdate:modelValue":x=>S.value=x,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${t.unref(s).path.value}.${ne}`,"enable-filtering":"",items:E.items,label:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),placeholder:t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:x=>k(S,(x==null?void 0:x.value)??null)},null,8,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),t.createVNode(K,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${t.unref(s).path.value}.${ne}`,icon:"",onClick:x=>b(S)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.CloseIcon))]),_:2},1032,["data-testid","onClick"])])],8,gR))),128)),t.createVNode(K,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(s).path.value}`,disabled:!!f.value,onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-b2f89c26"]]),bR={key:1,class:"dk-inputs-field-or"},Ln=ve(t.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(e,{emit:n}){const o=n,{getSchema:r}=Ye(),{i18n:{t:i}}=De(),a=t.computed(()=>r("inputs")),l=t.computed(()=>a.value?a.value.type==="record"?mR:_R:null);function s(p){o("change:input",p?p.value:null)}function c(p,m){o("add:field",p,m)}function u(p,m){o("change:inputs",p,m)}function f(p){o("remove:field",p)}function d(p,m){o("rename:field",p,m)}return(p,m)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createVNode(t.unref(Oe.KLabel),{class:"dk-inputs-field-h1",info:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),t.unref(r)("input")?(t.openBlock(),t.createBlock(Nt,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:p.items,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},null,8,["items","label","placeholder"])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createElementBlock("div",bR,[t.createElementVNode("span",null,t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(Oe.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):t.createCommentVNode("",!0),l.value?(t.openBlock(),t.createBlock(t.unref(l),{key:3,"field-name-validator":p.fieldNameValidator,items:p.items,"key-order":p.fieldNames,name:"inputs","onAdd:field":c,"onChange:inputs":u,"onRemove:field":f,"onRename:field":d},null,8,["field-name-validator","items","key-order"])):t.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-08ddb036"]]),wR={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{query:{description:"HTTP request query",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"},kR={fields:[{input:{description:"filter input(s)",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{inputs:{description:"call node inputs",fields:[{body:{description:"HTTP request body",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}},{headers:{description:"HTTP request headers",len_max:255,len_min:1,match_any:{err:"must be one of NODE_NAME or NODE_NAME.FIELD",patterns:["^[A-Za-z_][A-Za-z0-9_-]*$","^[A-Za-z_][A-Za-z0-9_-]*%..+$"]},required:!1,type:"string"}}],required:!1,type:"record"}}],type:"record"};function CR(e){const n=Number(e);return!isNaN(n)&&isFinite(n)}function go(...e){return function(o){for(const r of e){const i=r(o);if(i)return i}}}function ho(e){const{i18n:{t:n}}=De(),o=()=>e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",e):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function $m(e,n){const{i18n:{t:o}}=De();return function(i){if(i!=null)switch(e){case"identifier":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_identifier_format",n):"Invalid identifier format";return/^[A-Za-z_][A-Za-z0-9_-]*$/.test(i)?void 0:a()}case"url":{const a=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.invalid_url_format"):"Invalid URL format";try{new URL(i);return}catch{return a()}}default:return}}}function ER(e=0,n=1/0,o){const{i18n:{t:r}}=De();return function(a){if(a!=null&&typeof a=="string"&&(a.length<e||a.length>n))return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:e,maxLength:n}):`Value must be between ${e} and ${n} characters`}}function Bm(e){const{i18n:{t:n}}=De();return function(r){if(!CR(r))return e?typeof e=="string"?e:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",e):"Value must be a number"}}function Vm(e,n){const{i18n:{t:o}}=De();return function(i){if(i==null)return;const a=Bm(n)(i);if(a)return a;const l=Number(i);switch(e){case"float":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_float",n):"Invalid float format";return Number.isFinite(l)?void 0:s()}case"integer":{const s=()=>n?typeof n=="string"?n:o("plugins.free-form.datakit.flow_editor.node_properties.errors.not_integer",n):"Invalid integer format";return Number.isInteger(l)?void 0:s()}default:return}}}function Rm(e=-1/0,n=1/0,o){const{i18n:{t:r}}=De();return function(a){if(a==null)return;const l=Bm(o)(a);if(l)return l;const s=Number(a);if(s<e||s>n)return o?typeof o=="string"?o:r("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:e,max:n}):`Value must be between ${e} and ${n}`}}function NR(e,n){const{state:o}=st(),{i18n:{t:r}}=De();return function(a){if(o.value.nodes.some(l=>l.name===a&&l.id!==e))return n?typeof n=="string"?n:r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function SR(e,n,o){const{i18n:{t:r}}=De();return function(a){if(!n)return;if(o?n.fields[e].some(s=>s.name===a&&s.id!==o):n.fields[e].some(s=>s.name===a)){const s=r(e==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name");return r("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function vR(){const{i18n:{t:e}}=De();return function(o){if(tl(o))return e("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function Dm(e){const{i18n:{t:n}}=De(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return go(ho(o),$m("identifier",o),vR(),NR(e,o))}function xR(e){const{i18n:{t:n}}=De(),{getNodeById:o}=st();return function(i,a,l){const s={fieldName:n(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return go(ho(s),SR(i,o(e),l))(a)}}function AR(e){const n=t.ref({}),o=t.computed(()=>Object.values(n.value).every(l=>!l)),r={};Object.keys(e).forEach(l=>{const s=e[l],c=d=>{const p=typeof d=="function"?d():d,m=s(p);return n.value[l]=m,m},u=()=>{n.value[l]=void 0},f=d=>(u(),c(d));r[l]={handleChange:f,handleBlur:f,validate:f,isValid:t.computed(()=>n.value[l]===void 0),error:t.computed(()=>n.value[l])}});function i(){n.value={}}function a(l){var s;for(const c of Object.keys(e)){const u=l[c],f=typeof u=="function"?u():u;(s=r[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:r,clearErrors:i,validate:a}}function Ki(e){const{validationConfig:n,getValidationData:o,toggleNodeValid:r}=e,{skipValidation:i}=st(),a=t.computed(()=>typeof n=="function"?n():n),l=t.computed(()=>AR(a.value)),s=t.computed(()=>l.value.fields),c=t.computed(()=>l.value.isValid.value);function u(){const d=o(),p=l.value.validate(d),m={};for(const y in a.value)m[y]=p[y];return m}function f(d,p){return{onBlur:()=>{const m=o(),y=s.value[d];y&&y.handleBlur(m[d])},onUpdate:()=>{const m=o(),y=s.value[d];y&&y.handleChange(m[d]),p==null||p()},error:t.computed(()=>{const m=s.value[d];return m?!m.isValid.value:!1}),errorMessage:t.computed(()=>{const m=s.value[d];return m?m.error.value??"":""})}}return t.onMounted(()=>{i.value?i.value=!1:u()}),t.onBeforeUnmount(async()=>{try{const d=u(),p=Object.values(d).filter(Boolean).length>0;r(!p)}catch{}}),t.watch(()=>c.value,r,{immediate:!0}),{fields:s.value,isValid:c,validateAll:u,createFieldHandler:f}}function mn(e,n){const o=t.inject(Bo.DATAKIT_M2,!1),{state:r,renameNode:i,getNodeById:a,addField:l,renameField:s,removeField:c,replaceConfig:u,disconnectEdge:f,connectEdge:d,invalidConfigNodeIds:p,commit:m,revert:y}=st(),{i18n:{t:b}}=De(),g=vm(),h=t.computed(()=>{const T=a(e);if(!T)throw new Error("Node not existed");return T}),w=t.computed(()=>{const v=r.value.edges.filter(P=>P.target===e).reduce((P,A)=>{var de,he;const Y=a(A.source),W=(de=sn(Y,"output",A.sourceField))==null?void 0:de.id,ie=(he=sn(h.value,"input",A.targetField))==null?void 0:he.name,oe=Y.id+(W?`.${W}`:"");return ie?P.inputs={...P.inputs,[ie]:oe}:P.input=oe,P},{});return h.value.fields.input.forEach(P=>{v.inputs||(v.inputs={}),v.inputs[P.name]||(v.inputs[P.name]=null)}),{...h.value.config,...v,name:h.value.name}}),_=T=>{i(e,T??"",!0,`${e}:rename`)},k=(T,v=!0)=>{if(!n)throw new Error("getFormInnerData is not defined");const P=$o(n(),["name","input","inputs"]),A=T?`update:${e}:${T}`:void 0;u(e,P,v,A)},E=(T,v)=>{const P=ln(h.value,T,v);if(!P)throw new Error(`Field with name "${v}" not found in node "${h.value.name}"`);return P},C=(T,v,P)=>{const A=!!P;l(e,T,v,!A),A&&K(v,P)},N=(T,v,P)=>{const A=E(T,v).id;s(e,A,P)},I=(T,v)=>{const P=E(T,v).id;c(e,P)},D=t.computed(()=>r.value.edges.filter(T=>T.target===e&&!T.targetField)[0]),G=t.computed(()=>r.value.edges.filter(T=>T.target===e&&T.targetField)),K=async(T,v)=>{const P=v==null,A=E("input",T).id;if(P){const se=G.value.find(ue=>ue.targetField===A);se&&f(se.id);return}const{nodeId:Y,fieldId:W}=wu(v),ie=E("input",T).id,oe=[];D.value&&(oe.push(mr(D.value,a)),f(D.value.id,!1));const de=G.value.find(se=>se.targetField===A);de&&(oe.push(mr(de,a)),f(de.id,!1)),d({source:Y,sourceField:W,target:e,targetField:ie},!1);const he=ls(Y,W,e,ie,a),X=oe[0]&&he?oe[0][1]===he[1]:!1;if(m(),X||oe.length===0)return;await g(b("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[he],oe)||y()},S=async T=>{if(T==null){D.value&&f(D.value.id);return}const P=[];for(const oe of G.value)P.push(mr(oe,a)),f(oe.id,!1);D.value&&f(D.value.id,!1);const{nodeId:A,fieldId:Y}=wu(T);d({source:A,sourceField:Y,target:e,targetField:void 0},!1);const W=ls(A,Y,e,void 0,a);if(m(),P.length===0)return;await g(b("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[W],P)||y()},ne=T=>{const v=[...r.value.edges,{source:T,target:e}];return il(Yr(v))},x=t.computed(()=>{var v,P;const T=[];for(const A of r.value.nodes)if(!(!o&&A.type==="vault"||!((v=oo(A.type).io)!=null&&v.output))&&A.fields.output&&A.id!==e&&!(A.type==="property"&&!Hl((P=A.config)==null?void 0:P.property))&&!ne(A.id)&&!(h.value.phase==="request"&&A.phase==="response")&&!(A.type==="vault"&&A.fields.output.length===0)){T.push({value:A.id,label:A.name});for(const W of A.fields.output)T.push({value:`${A.id}.${W.id}`,label:`${A.name}.${W.name}`})}return T}),q=t.computed(()=>h.value.fields.input.map(T=>T.name)||[]);function U(T){p.value.delete(e),T||p.value.add(e)}const te=xR(e);function V(T,v,P){const A=a(e);if(!A)throw new Error("Node not found when validating field name");const Y=ln(A,T,v);return te(T,P,Y==null?void 0:Y.id)}return{formData:w,inputOptions:x,inputEdge:D,inputsEdges:G,inputsFieldNames:q,currentNode:h,setName:_,setConfig:k,addField:C,renameFieldByName:N,removeFieldByName:I,setInputs:K,setInput:S,nameValidator:Dm(e),fieldNameValidator:V,toggleNodeValid:U}}function gn(e){const{getSchema:n}=Ye();return t.computed(()=>{if(vt(e))switch(e){case"response":return kR;case"service_request":return wR}try{const l=n().fields[0].config.fields[0].nodes.elements.subschema_definitions[e];if(!l)throw new Error(`Subschema "${e}" not found in the schema.`);return l}catch(o){throw new Error(`Failed to get subschema "${e}": ${o.message}`)}})}const yo=t.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=De(),a=t.ref(o.name),l=t.computed(()=>{const f=o.validate(a.value.trim());return f===void 0?"":f});let s=a.value.trim();function c(){if(l.value){a.value=s;return}r("update",a.value.trim())}function u(){s=a.value.trim()}return t.watch(()=>o.name,f=>{f!==a.value&&(a.value=f)}),(f,d)=>{const p=t.resolveComponent("KInput");return t.openBlock(),t.createBlock(p,{"model-value":a.value,"onUpdate:modelValue":d[0]||(d[0]=m=>a.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:t.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:u},null,8,["model-value","error","error-message","label"])}}}),IR=t.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=De(),o=t.useTemplateRef("form"),r=gn("call"),{formData:i,setName:a,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=mn(e.nodeId,()=>o.value.getInnerData()),{createFieldHandler:y}=Ki({validationConfig:{url:go(ho({fieldName:"URL"}),$m("url",{fieldName:"URL"})),timeout:go(Vm("integer",{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}),Rm(0,2147483646,{fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.timeout.label")}))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),b=y("url",()=>l("url")),g=y("timeout",()=>l("timeout"));return(h,w)=>{const _=t.resolveComponent("KLabel");return t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(i),schema:t.unref(r)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(i).name,validate:t.unref(d),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(_,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Yn,{error:t.unref(b).error.value,"error-message":t.unref(b).errorMessage.value,name:"url",onBlur:t.unref(b).onBlur,"onUpdate:modelValue":t.unref(b).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(pR,{name:"method",onUpdate:w[0]||(w[0]=k=>t.unref(l)())}),t.createVNode(Wn,{error:t.unref(g).error.value,"error-message":t.unref(g).errorMessage.value,label:t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.timeout.label"),name:"timeout",onBlur:t.unref(g).onBlur,"onUpdate:modelValue":t.unref(g).onUpdate},null,8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(Yn,{name:"ssl_server_name","onUpdate:modelValue":w[1]||(w[1]=k=>t.unref(l)("ssl_server_name"))}),t.createVNode(Ln,{"field-name-validator":t.unref(m),"field-names":t.unref(f),items:t.unref(s),"onChange:input":t.unref(u),"onChange:inputs":t.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),PR=t.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("service_request"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=mn(e.nodeId,()=>n.value.getInnerData());return(u,f)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Ln,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),TR=t.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("response"),{formData:r,inputOptions:i,setInputs:a,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=mn(e.nodeId,()=>n.value.getInnerData());return(u,f)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(Ln,{"field-name-validator":t.unref(c),"field-names":t.unref(s),items:t.unref(i),"onChange:input":t.unref(l),"onChange:inputs":t.unref(a)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Mm={jqlang:"https://jqlang.org/manual/"},OR=t.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(e){const{i18n:{t:n},i18nT:o}=De(),r=t.useTemplateRef("form"),i=gn("jq"),{formData:a,setName:l,setConfig:s,inputOptions:c,setInputs:u,setInput:f,addField:d,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:y,nameValidator:b,toggleNodeValid:g,fieldNameValidator:h}=mn(e.nodeId,()=>r.value.getInnerData());function w(I,D){d("input",I,D)}function _(I){p("input",I)}function k(I,D){m("input",I,D)}const E=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:C}=Ki({validationConfig:{jq:go(ho({fieldName:E}),ER(1,10240,{fieldName:E}))},getValidationData:()=>({jq:a.value.jq}),toggleNodeValid:g}),N=C("jq",()=>s("jq"));return(I,D)=>{const G=t.resolveComponent("KLabel"),K=t.resolveComponent("KExternalLink");return t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(a),schema:t.unref(i)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(a).name,validate:t.unref(b),onUpdate:t.unref(l)},null,8,["name","validate","onUpdate"]),t.createVNode(G,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Yn,{autosize:"",error:t.unref(N).error.value,"error-message":t.unref(N).errorMessage.value,label:t.unref(E),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:t.unref(N).onBlur,"onUpdate:modelValue":t.unref(N).onUpdate},{help:t.withCtx(()=>[t.createVNode(t.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:t.withCtx(()=>[t.createVNode(K,{"hide-icon":"",href:t.unref(Mm).jqlang},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Mm).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),t.createVNode(Ln,{"field-name-validator":t.unref(h),"field-names":t.unref(y),items:t.unref(c),"onAdd:field":w,"onChange:input":t.unref(f),"onChange:inputs":t.unref(u),"onRemove:field":_,"onRename:field":k},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),$R=ve(t.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},name:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(e,{emit:n}){const o=e,r=n,i=t.ref({}),{entries:a,addEntry:l,removeEntry:s,field:c}=Or(o,r,!1),{i18n:u}=De(),f=t.useTemplateRef("root"),d=t.ref(null);let p;async function m(E,C="key"){var N;f.value&&(await t.nextTick(),(N=f.value.querySelector(`[data-${C}-input="${E}"]`))==null||N.focus())}function y(){const E=l(),C=a.value.findIndex(({key:N})=>!N);m(C===-1?a.value.length-1:C),d.value=E}function b(E){var C;E.id===((C=d.value)==null?void 0:C.id)&&(d.value=null),s(E.id),E.key.trim()!==""&&r("remove:field",E.key)}function g(E){p=E.key}function h(E){var C;if(_(E)){E.key=p,delete i.value[E.id];return}if(E.id===((C=d.value)==null?void 0:C.id)){if(E.key.trim()==="")return;d.value=null,r("add:field",E.key,E.value)}else r("rename:field",p,E.key);p=E.key}function w(E,C){var I;if(C.id===((I=d.value)==null?void 0:I.id))return;const N=E.target.value.trim();r("change:value",C.key,N)}function _(E){delete i.value[E.id];const C=o.fieldNameValidator("output",p,E.key);if(C)return i.value[E.id]=C,C}function k(E){_(E)}return t.watchEffect(()=>{d.value&&!a.value.some(E=>E.id===d.value.id)&&a.value.push(d.value)}),(E,C)=>{const N=t.resolveComponent("KAlert"),I=t.resolveComponent("KLabel"),D=t.resolveComponent("KButton"),G=t.resolveComponent("KInput"),K=t.resolveComponent("KCard");return t.unref(c).error?(t.openBlock(),t.createBlock(N,{key:0,appearance:"danger",message:t.unref(c).error.message},null,8,["message"])):(t.openBlock(),t.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[t.createVNode(I,{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(a),(S,ne)=>(t.openBlock(),t.createBlock(K,{key:S.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${t.unref(c).path.value}.${ne}`},{actions:t.withCtx(()=>[t.createVNode(D,{appearance:"none","data-testid":`ff-kv-remove-btn-${t.unref(c).path.value}.${ne}`,icon:"",onClick:x=>b(S)},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.CloseIcon))]),_:2},1032,["data-testid","onClick"])]),default:t.withCtx(()=>[t.createVNode(G,{id:`ff-kv-entry-key-${t.unref(c).path.value}.${ne}`,modelValue:S.key,"onUpdate:modelValue":[x=>S.key=x,x=>_(S)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":ne,"data-testid":`ff-key-${t.unref(c).path.value}.${ne}`,error:!!i.value[S.id],"error-message":i.value[S.id],label:t.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:x=>k(S),onChange:x=>h(S),onFocus:x=>g(S)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),t.createVNode(G,{modelValue:S.value,"onUpdate:modelValue":x=>S.value=x,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${t.unref(c).path.value}.${ne}`,label:t.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:x=>w(x,S)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),t.createVNode(D,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${t.unref(c).path.value}`,disabled:!!d.value,onClick:y},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-5e17f8cb"]]);function BR(e){const n={};for(const[o,r]of Object.entries(e))typeof r=="object"&&r!==null?n[o]=JSON.stringify(r):n[o]=String(r);return n}function ji(e){const n={};for(const[o,r]of Object.entries(e))if(r!=null){n[o]=r;try{r==="null"?n[o]=null:(r==="true"||r==="false"||/^-?\d+(\.\d+)?$/.test(r)||r.startsWith("{")&&r.endsWith("}")||r.startsWith("[")&&r.endsWith("]"))&&(n[o]=JSON.parse(r))}catch{}}return n}function VR(e,n,o){const r={};for(const i of Object.keys(e))i===n?r[o]=e[n]:r[i]=e[i];return r}const RR=t.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(e){const{renameNode:n,getOutEdgesByNodeId:o,addField:r,renameField:i,removeField:a,replaceConfig:l,getNodeById:s}=st(),{fieldNameValidator:c}=mn(e.nodeId),u=gn("static"),f=Dm(e.nodeId),d=t.computed(()=>s(e.nodeId)),p=t.computed(()=>{var _;return((_=d.value)==null?void 0:_.fields.output.map(k=>k.name))||[]});function m(_){if(!d.value)throw new Error("No current node");n(d.value.id,_??"")}const y=t.computed(()=>{var D;if(!d.value)return{};const _=((D=d.value.config)==null?void 0:D.values)??{},k={},E=o(d.value.id).map(G=>G.sourceField).filter(Boolean).map(G=>sn(d.value,"output",G)).map(G=>G==null?void 0:G.name).filter(Boolean),C=d.value.fields.output.map(G=>G.name),N=Object.keys(_);return new Set([...N,...E,...C]).forEach(G=>{if(G in _){k[G]=_[G];return}k[G]=""}),{name:d.value.name,values:BR(k)}});function b(_,k){if(!d.value)throw new Error("No selected node");const E=k!==void 0;if(r(e.nodeId,"output",_,!E),E){const C={values:ji({...y.value.values,[_]:k})};l(e.nodeId,C)}}function g(_,k){if(!d.value)throw new Error("No selected node");const E=ln(d.value,"output",_);if(!E)throw new Error("No field found to rename");const C={values:ji(VR(y.value.values??{},_,k))};l(e.nodeId,C,!1),i(e.nodeId,E.id,k)}function h(_){var C;if(!d.value)throw new Error("No selected node");const k=ln(d.value,"output",_);if(!k)throw new Error("No field found to delete");a((C=d.value)==null?void 0:C.id,k.id,!0,!1);const E={values:ji({...y.value.values})};delete E.values[_],l(e.nodeId,E)}function w(_,k){if(!d.value)throw new Error("No selected node");const E={...y.value.values};E[_]=k;const C={values:ji(E)};l(e.nodeId,C)}return(_,k)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:y.value,schema:t.unref(u)},{default:t.withCtx(()=>{var E;return[t.createVNode(yo,{name:((E=d.value)==null?void 0:E.name)??"",validate:t.unref(f),onUpdate:m},null,8,["name","validate"]),t.createVNode($R,{"field-name-validator":t.unref(c),"key-order":p.value,name:"values","onAdd:field":b,"onChange:value":w,"onRemove:field":h,"onRename:field":g},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),DR={class:"dk-kong-property-item"},MR={class:"property-type"},LR={class:"property-badges"},FR=ve(t.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(e,{emit:n}){const{i18n:{t:o}}=De(),r=e,i=n,{formData:a}=Ye(),l=t.ref(ur(a.property)),s=t.computed(()=>fr(a.property)),c=t.ref(zl(a.property)),u=t.computed(()=>a.property??""),f=t.computed(()=>Object.entries(Rn).map(([m])=>{var g;const y=fr(m)?(g=a.property)==null?void 0:g.startsWith(m.replace(po,"")):a.property===m;return{label:y&&c.value?m.replace(po,c.value):m,value:m,selected:y}}));function d(m){const y=Ti.find(b=>{var g;return(g=a.property)==null?void 0:g.startsWith(b)});y&&(a.property=y+m,r.validators.key.handleChange(a.property),i("update:property-key",a.property))}function p(m){l.value!==ur(m==null?void 0:m.value)&&(a.property=(m==null?void 0:m.value)||null,l.value=ur(a.property),r.validators.property.handleBlur(()=>a.property),i("update:model-value",a.property))}return t.watch(()=>a.property,m=>{c.value=zl(m),l.value=ur(m)}),(m,y)=>{const b=t.resolveComponent("KBadge"),g=t.resolveComponent("KSelect"),h=t.resolveComponent("KInput");return t.openBlock(),t.createElementBlock(t.Fragment,null,[(t.openBlock(),t.createBlock(g,{key:u.value,"enable-filtering":"",error:!m.validators.property.isValid.value,help:m.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:y[0]||(y[0]=w=>m.validators.property.handleBlur(()=>t.unref(a).property)),onChange:p},{"item-template":t.withCtx(({item:w})=>[t.createElementVNode("div",DR,[t.createElementVNode("div",null,[t.createElementVNode("div",null,t.toDisplayString(w.label),1),t.createElementVNode("div",MR,t.toDisplayString(t.unref(Rn)[w.value].dataType),1)]),t.createElementVNode("div",LR,[t.unref(Rn)[w.value].readable?(t.openBlock(),t.createBlock(b,{key:0,appearance:"info"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):t.createCommentVNode("",!0),t.unref(Rn)[w.value].writable?(t.openBlock(),t.createBlock(b,{key:1,appearance:"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):t.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(t.openBlock(),t.createBlock(h,{key:0,"model-value":c.value,"onUpdate:modelValue":[y[1]||(y[1]=w=>c.value=w),d],error:!m.validators.key.isValid.value,"error-message":m.validators.key.error.value,label:"key",required:"",onBlur:y[2]||(y[2]=w=>m.validators.key.handleBlur(()=>t.unref(a).property))},null,8,["model-value","error","error-message"])):t.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),UR=t.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:r,disconnectOutEdges:i}=st(),a=gn("property"),{formData:l,setName:s,setConfig:c,inputOptions:u,setInputs:f,setInput:d,inputsFieldNames:p,nameValidator:m,toggleNodeValid:y,fieldNameValidator:b}=mn(e.nodeId,()=>n.value.getInnerData()),g=t.computed(()=>Yl(l.value.property));function h(_){var E;const k=(E=o.value)==null?void 0:E.id;if(!k)throw new Error("Expected selectedNode to be defined");Hl(_)||i(k,!1),Yl(_)||r(k,!1),c()}const{fields:w}=Ki({validationConfig:()=>({property:ho({fieldName:"Property"}),key:fr(l.value.property)?ho({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:zl(l.value.property)}),toggleNodeValid:y});return(_,k)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(l),schema:t.unref(a)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(l).name,validate:t.unref(m),onUpdate:t.unref(s)},null,8,["name","validate","onUpdate"]),t.createVNode(Nt,{name:"content_type",onUpdate:k[0]||(k[0]=E=>t.unref(c)())}),t.createVNode(FR,{validators:t.unref(w),"onUpdate:modelValue":h,"onUpdate:propertyKey":k[1]||(k[1]=E=>t.unref(c)("property-key"))},null,8,["validators"]),g.value?(t.openBlock(),t.createBlock(Ln,{key:0,"field-name-validator":t.unref(b),"field-names":t.unref(p),items:t.unref(u),"onChange:input":t.unref(d),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):t.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),KR=t.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(e){const n=t.useTemplateRef("form"),o=gn("exit"),{formData:r,setName:i,setConfig:a,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:u,nameValidator:f,toggleNodeValid:d,fieldNameValidator:p}=mn(e.nodeId,()=>n.value.getInnerData()),{createFieldHandler:m}=Ki({validationConfig:{status:go(Vm("integer",{fieldName:"Status"}),Rm(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:r.value.status}),toggleNodeValid:d}),y=m("status",()=>a("status"));return(b,g)=>(t.openBlock(),t.createBlock(ht,{ref:"form",data:t.unref(r),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(r).name,validate:t.unref(f),onUpdate:t.unref(i)},null,8,["name","validate","onUpdate"]),t.createVNode(Wn,{error:t.unref(y).error.value,"error-message":t.unref(y).errorMessage.value,name:"status",onBlur:t.unref(y).onBlur,"onUpdate:modelValue":t.unref(y).onUpdate},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),t.createVNode(Ia,{name:"warn_headers_sent","onUpdate:modelValue":g[0]||(g[0]=h=>t.unref(a)())}),t.createVNode(Ln,{"field-name-validator":t.unref(p),"field-names":t.unref(u),items:t.unref(l),"onChange:input":t.unref(c),"onChange:inputs":t.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function jR(e){const n=mn(e),{state:o,getNodeById:r,branchGroups:i,commit:a}=st(),{i18n:{t:l}}=De(),s=vm(),c=Nm(),u=t.computed(()=>{var _;const h={...n.formData.value},w=qo(((_=n.currentNode.value)==null?void 0:_.type)||"branch");for(const k of w)(!(k in h)||h[k]==null)&&(h[k]=[]);return h});function f(h,w,_){const k=r(h),E=r(_),C=k?`${k.name}.${w}`:`${h}.${w}`,N=E?E.name:_;return[C,N]}function d(h){return(h==null?[]:Array.isArray(h)?h:[h]).filter(w=>bu(w))}function p(h,w){return i.wouldCreateCycle(h,w)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(h,w,_){const k=[],E=[],C=[];for(const N of _){const I=i.findMembership(N);if(!I||I.ownerId===h&&I.branch===w)continue;const D=i.getMembers(I.ownerId,I.branch).filter(G=>G!==N);C.push({ownerId:I.ownerId,branch:I.branch,members:D}),k.push(f(h,w,N)),E.push(f(I.ownerId,I.branch,N))}return{conflictUpdates:C,addedAssignments:k,removedAssignments:E}}function y(h,w,_,k){let E=!1;for(const C of k)E=i.setMembers(C.ownerId,C.branch,C.members,{commit:!1})||E;return E=i.setMembers(h,w,_,{commit:!1})||E,E}async function b(h,w){const _=n.currentNode.value,k=d(w),E=i.prepareMembers(_.id,h,k),C=i.getMembers(_.id,h);if(nl(C,E))return!0;const N=E.filter(S=>!C.includes(S));for(const S of N)if(p(_.id,S))return!1;const{conflictUpdates:I,addedAssignments:D,removedAssignments:G}=m(_.id,h,N);return I.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),D,G)?!1:(y(_.id,h,E,I)&&a(),!0)}const g=t.computed(()=>{const h=n.currentNode.value;return!h||!i?[]:o.value.nodes.filter(w=>w.id!==e&&!vt(w.type)&&w.phase===h.phase&&!i.wouldCreateCycle(h.id,w.id)).map(w=>({value:w.id,label:w.name}))});return{...n,formData:u,branchOptions:g,updateBranchMembers:b}}const GR=t.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(e){const{i18n:{t:n}}=De(),o=gn("branch"),r=t.ref(0),{formData:i,setName:a,inputOptions:l,branchOptions:s,nameValidator:c,setInput:u,setInputs:f,inputsFieldNames:d,fieldNameValidator:p,updateBranchMembers:m}=jR(e.nodeId);async function y(b,g){await m(b,g)||(r.value+=1)}return(b,g)=>(t.openBlock(),t.createBlock(ht,{key:r.value,data:t.unref(i),schema:t.unref(o)},{default:t.withCtx(()=>[t.createVNode(yo,{name:t.unref(i).name,validate:t.unref(c),onUpdate:t.unref(a)},null,8,["name","validate","onUpdate"]),t.createVNode(t.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),t.createVNode(Nt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"then",onUpdate:g[0]||(g[0]=h=>y("then",h))},null,8,["items"]),t.createVNode(Nt,{"enable-filtering":"",items:t.unref(s),multiple:"",name:"else",onUpdate:g[1]||(g[1]=h=>y("else",h))},null,8,["items"]),t.createVNode(Ln,{"field-name-validator":t.unref(p),"field-names":t.unref(d),items:t.unref(l),"onChange:input":t.unref(u),"onChange:inputs":t.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),qR=["innerHTML"],zR=t.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${mu}px`},offsetTop:{default:`${KN}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(e){const{getNodeById:n}=st(),o=t.computed(()=>e.nodeId&&n(e.nodeId)),r=t.computed(()=>{var i;switch((i=o.value)==null?void 0:i.type){case"call":return IR;case"service_request":return PR;case"response":return TR;case"jq":return OR;case"static":return RR;case"property":return UR;case"exit":return KR;case"branch":return GR;default:return null}});return(i,a)=>(t.openBlock(),t.createBlock(t.unref(Oe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":i.maxWidth,"offset-top":i.offsetTop,visible:i.visible,"z-index":t.unref(UN),onClose:a[0]||(a[0]=l=>i.$emit("close"))},t.createSlots({default:t.withCtx(()=>[o.value?(t.openBlock(),t.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:t.unref(St)(o.value.type)},null,8,qR)):t.createCommentVNode("",!0),r.value?(t.openBlock(),t.createBlock(t.unref(r),{key:i.nodeId,class:"dk-node-properties-panel-form","node-id":i.nodeId},null,8,["node-id"])):t.createCommentVNode("",!0)]),_:2},[o.value?{name:"title",fn:t.withCtx(()=>[t.createVNode(Im,{type:o.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),HR=ve(zR,[["__scopeId","data-v-558814e2"]]),YR={class:"dk-editor-content"},WR={class:"main"},XR=ve(t.defineComponent({__name:"EditorContent",setup(e){const{propertiesPanelOpen:n,selectedNode:o}=st();function r(){n.value=!1}t.watch(o,a=>{a||r()});const i=t.ref(!1);return t.onMounted(()=>{i.value=!0}),(a,l)=>{var s;return t.openBlock(),t.createElementBlock("div",YR,[t.createVNode(t.unref(fR)),t.createElementVNode("div",WR,[t.createVNode(FV)]),t.createVNode(HR,{"node-id":(s=t.unref(o))==null?void 0:s.id,visible:t.unref(n),onClose:r},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-8f04afa6"]]),ZR={key:0,class:"dk-editor-modal"},JR=ve(t.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(e){t.useCssVars(s=>({"5fe3dd96":`${t.unref(FN)}px`,"480b2f5d":`${t.unref(pu)}px`}));const n=t.useModel(e,"open"),o=t.ref(!1),r=t.useTemplateRef("confirm-modal"),{clear:i}=st();QB(async(...s)=>{o.value=!0;const c=await r.value.open(...s);return o.value=!1,c});const a=Xe.useScrollLock(document);t.watch(n,s=>{a.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(t.openBlock(),t.createElementBlock("div",ZR,[t.createVNode(BV,{class:"nav",onBack:l}),t.createVNode(XR,{ref:"content",class:"content",tabindex:"0"},null,512),t.createVNode(PV,{ref:"confirm-modal"},null,512)])):t.createCommentVNode("",!0)}}),[["__scopeId","data-v-917708bb"]]),QR={class:"dk-flow-editor"},eD={class:"flow-panels-container"},tD={class:"overlay"},nD=ve(t.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(e,{emit:n}){const{t:o}=Ze.createI18n("en-us",rt),{formData:r}=Ye(),i=n;function a(c,u,f){const d={...r.config,nodes:c};f!==void 0&&(d.resources=f);const p={...r.__ui_data,...u};r.config=d,r.__ui_data=p,i("change",d,p)}const{modalOpen:l,setPendingFitView:s}=Pu(r,{onChange:a,isEditing:e.isEditing});return t.watch(l,()=>{s(!0)},{flush:"post"}),(c,u)=>{const f=t.resolveComponent("KButton");return t.openBlock(),t.createElementBlock("div",QR,[t.createElementVNode("div",eD,[t.createVNode(cs,{inactive:t.unref(l),mode:"preview"},null,8,["inactive"]),t.createElementVNode("div",tD,[t.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:u[0]||(u[0]=d=>l.value=!0)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),t.createVNode(t.unref(Se.ExpandIcon))]),_:1})])]),t.createVNode(JR,{open:t.unref(l),"onUpdate:open":u[1]||(u[1]=d=>t.isRef(l)?l.value=d:null)},null,8,["open"])])}}}),[["__scopeId","data-v-d50e16c9"]]);function oD(e,n){const o=[],r=(i,a)=>{typeof a=="string"&&o.push({nodeName:e.name,path:["nodes",n,...i],value:a})};if("input"in e&&e.input!=null&&r(["input"],e.input),"inputs"in e&&e.inputs&&typeof e.inputs=="object")for(const[i,a]of Object.entries(e.inputs))a!=null&&r(["inputs",i],a);if("output"in e&&e.output!=null&&r(["output"],e.output),"outputs"in e&&e.outputs&&typeof e.outputs=="object")for(const[i,a]of Object.entries(e.outputs))a!=null&&r(["outputs",i],a);return o}function rD(e){const n=e.path[2];return n==="output"||n==="outputs"}function iD(e){if(!e)return!1;for(const n of Object.values(e))if(n!=null)return!0;return!1}function Lm(e,n,o){if(!e.nodes)return;const r=e.nodes.map(c=>c.name),i=new Set;r.forEach((c,u)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",u,"name"]}),i.add(c)}),e.nodes.forEach((c,u)=>{const f="input"in c&&c.input!=null,d="inputs"in c&&iD(c.inputs);f&&d&&o.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["nodes",u,"inputs"]})});const a=new Set([...n,...r]),l=new Map,s=new Map;e.nodes.forEach((c,u)=>{for(const f of oD(c,u)){const d=f.value.split(".",1)[0];if(a.has(d)||o.addIssue({code:"custom",message:`Unknown node "${d}" in connection "${f.value}"`,path:f.path}),rD(f)){const p=`${f.nodeName}->${d}`;s.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${f.nodeName}" outputs to "${d}" and "${d}" inputs from "${f.nodeName}". Specify it on one side only.`,path:f.path}):l.set(p,l.get(p)??f.path)}else{const p=`${d}->${f.nodeName}`;l.has(p)?o.addIssue({code:"custom",message:`Connection specified on both sides: "${d}" outputs to "${f.nodeName}" and "${f.nodeName}" inputs from "${d}". Specify it on one side only.`,path:f.path}):s.set(p,s.get(p)??f.path)}}})}const aD=Q.z.enum(gu),lD=Q.z.enum(to),Fm=e=>to.includes(e),ds=Q.z.enum(hu),Um=ds.options;Q.z.union([ds,aD]);const sD=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,Km=Q.z.string().min(1).max(255).regex(sD,"Invalid node name (snake_case / kebab-case only)").refine(e=>!Fm(e),"Name clashes with reserved implicit node").brand(),Gi=Q.z.union([lD,Km]),cD=Q.z.string().min(1).brand(),dD=["then","else"];Q.z.enum(dD);const Gt=Q.z.string().refine(e=>{if(Gi.safeParse(e).success)return!0;const n=e.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,r]=n;return Gi.safeParse(o).success&&cD.safeParse(r).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),jm=Q.z.enum(yu),_o=Q.z.object({type:Q.z.string(),name:Km,input:Gt,inputs:Q.z.record(Q.z.string(),Gt).nullish(),output:Gt,outputs:Q.z.record(Q.z.string(),Gt).nullish()}).loose(),uD=Q.z.object({type:Q.z.string(),name:Q.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),Um.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${Um.join(", ")}`})}),fD=_o.extend({type:Q.z.literal("call"),method:jm.nullish(),ssl_server_name:Q.z.string().min(1).nullish(),timeout:Q.z.number().int().min(0).max(2147483646).nullish(),url:Q.z.url(),inputs:Q.z.object({body:Gt,headers:Gt,query:Gt}).partial().nullish(),outputs:Q.z.object({body:Gt,headers:Gt,status:Gt}).partial().nullish()}).strict(),pD=_o.extend({type:Q.z.literal("exit"),status:Q.z.number().int().min(200).max(599).nullish(),warn_headers_sent:Q.z.boolean().nullish(),output:Q.z.never().optional(),outputs:Q.z.never().optional()}).strict(),mD=_o.extend({type:Q.z.literal("jq"),jq:Q.z.string().min(1).max(10240),outputs:Q.z.never().optional()}).strict(),gD=_o.extend({type:Q.z.literal("property"),content_type:Q.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:Q.z.string().min(1),inputs:Q.z.never().optional(),outputs:Q.z.never().optional()}).strict(),hD=_o.extend({type:Q.z.literal("static"),values:Q.z.record(Q.z.string(),Q.z.unknown()),input:Q.z.never().optional(),inputs:Q.z.never().optional()}).strict(),yD=_o.extend({type:Q.z.literal("branch"),then:Q.z.array(Gi).nullish(),else:Q.z.array(Gi).nullish()}).strict(),_D=uD.pipe(Q.z.discriminatedUnion("type",[fD,pD,mD,gD,hD,yD])),bD=Q.z.record(Q.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),Q.z.string().min(1).max(4095)),wD=Q.z.object({dictionary_name:Q.z.string().default("kong_db_cache")}),kD=Q.z.object({host:Q.z.string().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).default(6379)}),CD=Q.z.object({ip:Q.z.string().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).default(6379)}),ED=Q.z.object({host:Q.z.string().optional().default("127.0.0.1"),port:Q.z.number().int().min(0).max(65535).optional().default(6379),connect_timeout:Q.z.number().int().min(0).max(2147483646).default(2e3),send_timeout:Q.z.number().int().min(0).max(2147483646).default(2e3),read_timeout:Q.z.number().int().min(0).max(2147483646).default(2e3),username:Q.z.string().optional(),password:Q.z.string().optional(),sentinel_username:Q.z.string().optional(),sentinel_password:Q.z.string().optional(),database:Q.z.number().int().optional().default(0),keepalive_pool_size:Q.z.number().int().min(1).max(2147483646).default(256),keepalive_backlog:Q.z.number().int().min(0).max(2147483646).optional(),sentinel_master:Q.z.string().optional(),sentinel_role:Q.z.enum(["master","slave","any"]).optional(),sentinel_nodes:Q.z.array(kD).min(1,{message:"sentinel_nodes must contain at least 1 item"}).optional(),cluster_nodes:Q.z.array(CD).min(1,{message:"cluster_nodes must contain at least 1 item"}).optional(),ssl:Q.z.boolean().default(!1).optional(),ssl_verify:Q.z.boolean().default(!1).optional(),server_name:Q.z.string().optional(),cluster_max_redirections:Q.z.number().int().default(5).optional(),connection_is_proxied:Q.z.boolean().default(!1).optional(),timeout:Q.z.number().int().optional(),sentinel_addresses:Q.z.array(Q.z.string()).min(1).optional(),cluster_addresses:Q.z.array(Q.z.string()).min(1).optional()}).superRefine((e,n)=>{var c;const o=e.host!==void 0&&e.host!==null,r=e.port!==void 0&&e.port!==null;(o&&!r||!o&&r)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!e.sentinel_master,a=!!e.sentinel_role,l=!!((c=e.sentinel_nodes)!=null&&c.length),s=[i,a,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),e.connection_is_proxied===!0&&!o&&n.addIssue({code:"custom",message:"host is required when connection_is_proxied is true (host/port should point to the proxy)",path:["host"]})}),ND=Q.z.object({strategy:Q.z.enum(["memory","redis"]).optional(),memory:wD,redis:ED}),SD=Q.z.object({vault:bD.nullish(),cache:ND.nullish()});Q.z.array(Q.z.object({id:Q.z.string()})),Q.z.object({nodes:Q.z.array(_D).min(1,"At least one node is required"),debug:Q.z.boolean().nullish(),resources:SD.nullish()}).strict().superRefine((e,n)=>{Lm(e,to,n)});const Gm=ds.options,us=Q.z.string().min(1).refine(e=>!e.includes("."),"Invalid node name").refine(e=>!Fm(e),"Node name conflicts with reserved implicit node"),qt=Q.z.string().refine(e=>{if(!e||/\s/.test(e))return!1;const n=e.indexOf(".");if(n===-1)return!0;const o=e.slice(0,n),r=e.slice(n+1);return o.length>0&&r.length>0},"Invalid connection"),bo=Q.z.object({type:Q.z.string(),name:us,input:qt.nullish(),inputs:Q.z.record(Q.z.string(),qt.nullish()).nullish(),output:qt.nullish(),outputs:Q.z.record(Q.z.string(),qt.nullish()).nullish()}).loose(),vD=Q.z.object({type:Q.z.string(),name:Q.z.string()}).loose().superRefine((e,n)=>{const o=e.type,r=e.name;(typeof r!="string"||r.length===0||r.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),Gm.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${Gm.join(", ")}`})}),xD=bo.extend({type:Q.z.literal("call"),method:jm.nullish(),ssl_server_name:Q.z.string().nullish(),timeout:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),url:Q.z.string().nullish(),inputs:Q.z.object({body:qt.nullish(),headers:qt.nullish(),query:qt.nullish()}).partial().nullish(),outputs:Q.z.object({body:qt.nullish(),headers:qt.nullish(),status:qt.nullish()}).partial().nullish()}).strict(),AD=bo.extend({type:Q.z.literal("exit"),status:Q.z.union([Q.z.number(),Q.z.string()]).nullish(),warn_headers_sent:Q.z.boolean().nullish(),output:Q.z.never().optional(),outputs:Q.z.never().optional()}).strict(),ID=bo.extend({type:Q.z.literal("jq"),jq:Q.z.string().nullish(),outputs:Q.z.never().optional()}).strict(),PD=bo.extend({type:Q.z.literal("property"),content_type:Q.z.string().nullish(),property:Q.z.string().nullish(),inputs:Q.z.never().optional(),outputs:Q.z.never().optional()}).strict(),TD=bo.extend({type:Q.z.literal("static"),values:Q.z.record(Q.z.string(),Q.z.unknown()).nullish(),input:Q.z.never().optional(),inputs:Q.z.never().optional()}).strict(),OD=bo.extend({type:Q.z.literal("branch"),then:Q.z.array(us).nullish(),else:Q.z.array(us).nullish()}).strict(),$D=vD.pipe(Q.z.discriminatedUnion("type",[xD,AD,ID,PD,TD,OD])),BD=Q.z.record(Q.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),Q.z.string().min(1).max(4095)),VD=Q.z.object({dictionary_name:Q.z.string().default("kong_db_cache")}),RD=Q.z.object(),DD=Q.z.object({strategy:Q.z.enum(["memory","redis"]).optional(),memory:VD.optional(),redis:RD.optional()}),MD=Q.z.object({vault:BD.nullish(),cache:DD.nullish()}),LD=Q.z.object({nodes:Q.z.array($D).nullish(),debug:Q.z.boolean().nullish(),resources:MD.nullish()}).strict().superRefine((e,n)=>{!e||!Array.isArray(e.nodes)||Lm(e,to,n)}).nullish(),FD={class:"option-label"},UD=["innerHTML"],KD=ve(t.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const{t:n}=Ze.createI18n("en-us",rt),o=e,r=t.inject(Bo.DATAKIT_ENABLE_FLOW_EDITOR,!1),i=t.inject(Bo.DATAKIT_M2,!1),{editorMode:a}=ll(),l=t.computed(()=>r&&c.value?a.value:"code"),s={flow:Se.DesignIcon,code:Se.CodeblockIcon},c=t.ref(!0),u=t.computed(()=>{const b=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return b[0].disabled=!c.value,b}),f=t.computed(()=>{switch(l.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}});t.watch(l,()=>{var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})});function d(){var b;(b=o.onValidityChange)==null||b.call(o,{model:"config",valid:!0})}function p(){d()}function m(b){var w;d();const{success:g}=LD.safeParse(b);let h=g;if(!i&&h){const _=b;(w=_==null?void 0:_.resources)!=null&&w.vault&&(h=!1)}c.value=h}function y(b){var g;c.value=!1,(g=o.onValidityChange)==null||g.call(o,{model:"config",valid:!1,error:b})}return(b,g)=>{const h=t.resolveComponent("KTooltip");return t.openBlock(),t.createBlock(dd,t.mergeProps(o,{class:"dk-form"}),t.createSlots({default:t.withCtx(w=>[t.createVNode(ht,t.mergeProps(w,{tag:"div"}),{default:t.withCtx(()=>[l.value==="flow"?(t.openBlock(),t.createBlock(nD,{key:0,"is-editing":o.isEditing,onChange:p},null,8,["is-editing"])):l.value==="code"?(t.openBlock(),t.createBlock(LN,{key:1,class:"code-editor",editing:o.isEditing,onChange:m,onError:y},null,8,["editing"])):t.createCommentVNode("",!0)]),_:2},1040)]),"plugin-config-description":t.withCtx(()=>[t.createElementVNode("span",{innerHTML:f.value},null,8,UD)]),_:2},[t.unref(r)?{name:"plugin-config-extra",fn:t.withCtx(()=>[t.createVNode(t.unref(Oe.KSegmentedControl),{"model-value":l.value,options:u.value,"onUpdate:modelValue":g[0]||(g[0]=w=>a.value=w)},{"option-label":t.withCtx(({option:w})=>[t.createVNode(h,{disabled:c.value||w.value!=="flow",text:t.unref(n)("plugins.free-form.datakit.flow_editor.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",FD,[(t.openBlock(),t.createBlock(t.resolveDynamicComponent(s[w.value]))),t.createTextVNode(" "+t.toDisplayString(w.label),1)])]),_:2},1032,["disabled","text"])]),_:1},8,["model-value","options"])]),key:"0"}:void 0]),1040)}}}),[["__scopeId","data-v-6b230b53"]]),qm=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))typeof o=="string"&&(e[n]=o.split(/\s*,\s*/).filter(Boolean))},zm=e=>{if(!(!e||typeof e!="object"))for(const[n,o]of Object.entries(e))Array.isArray(o)&&(e[n]=o.join(", "))},jD=t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{},onChange:{type:Function}},emits:["change"],setup(e,{emit:n}){const o=n,{i18n:{t:r}}=Ke.useI18n(),l={prepareFormData:c=>{var f,d;const u=Gn(c);return(d=(f=u.config)==null?void 0:f.tools)!=null&&d.length&&u.config.tools.forEach(p=>{zm(p.headers),zm(p.query)}),u},hasValue:c=>!!(c!=null&&c.config)},s=c=>{var f,d;const u=Gn(c);(d=(f=u.config)==null?void 0:f.tools)!=null&&d.length&&u.config.tools.forEach(p=>{qm(p.headers),qm(p.query)}),o("change",u)};return(c,u)=>(t.openBlock(),t.createBlock(ht,{config:l,data:c.data,schema:c.schema,tag:"div",onChange:s},{default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config","reset-label-path":"reset"},{tools:t.withCtx(({name:f})=>[t.createVNode($r,{appearance:"tabs","item-label":(d,p)=>t.unref(r)("plugins.free-form.ai-mcp-proxy.tool_item_label",{index:p+1}),name:f,"sticky-tabs":""},null,8,["item-label","name"])]),_:1}),t.createVNode(Br)]),_:1},8,["data","schema"]))}}),GD=t.defineComponent({__name:"AIMcpProxyForm",props:{schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Me.AUTOFILL_SLOT,o==null?void 0:o[Me.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(Ta,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(jD,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),qD=ve(t.defineComponent({__name:"ConfigForm",props:{schema:{},data:{}},emits:["change"],setup(e,{emit:n}){const o=n,r=t.computed(()=>{const l=e.schema.fields.find(u=>Object.keys(u)[0]==="config").config.fields,s=[],c=[];for(const u of l){const f=Object.keys(u)[0];u[f].required?s.push(f):c.push(f)}return{required:s,nonRequired:c}}),i={hasValue:l=>!!(l!=null&&l.config)};function a(l){o("change",l)}return(l,s)=>(t.openBlock(),t.createBlock(ht,{config:i,data:l.data,schema:l.schema,tag:"div",onChange:a},{default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config",omit:r.value.nonRequired,"reset-label-path":"reset"},null,8,["omit"]),t.createVNode(Br,{class:"ff-advanced-fields"},{default:t.withCtx(()=>[t.createVNode(gt,{"as-child":"",name:"config",omit:r.value.required,"reset-label-path":"reset"},null,8,["omit"])]),_:1})]),_:1},8,["data","schema"]))}}),[["__scopeId","data-v-3e5ed51d"]]),Hm=Object.freeze(Object.defineProperty({__proto__:null,AIMcpProxyForm:GD,CommonForm:t.defineComponent({__name:"CommonForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},formOptions:{},isEditing:{type:Boolean},onModelUpdated:{type:Function},onFormChange:{type:Function},onValidityChange:{type:Function}},setup(e){const n=e,o=t.useSlots();return t.provide(Me.AUTOFILL_SLOT,o==null?void 0:o[Me.AUTOFILL_SLOT_NAME]),(r,i)=>(t.openBlock(),t.createBlock(dd,t.normalizeProps(t.guardReactiveProps(n)),{default:t.withCtx(a=>[t.createVNode(qD,t.normalizeProps(t.guardReactiveProps(a)),null,16)]),_:1},16))}}),DatakitForm:KD,RequestCalloutForm:ak,ServiceProtectionForm:fC},Symbol.toStringTag,{value:"Module"})),zD={class:"kong-ui-entities-plugin-form"},HD={key:1,class:"entity-form"},YD={class:"plugin-config-empty-state"},WD=ve(t.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(e,{emit:n}){var de,he;const o=Object.keys(Me.sharedForms),r=Object.keys(Hm);if(new Set([...o,...r]).size!==o.length+r.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,a=e,{axiosInstance:l}=ge.useAxios((de=a.config)==null?void 0:de.axiosRequestConfig),{parseSchema:s}=Ke.useSchemas({entityId:((he=a.entityMap.focusedEntity)==null?void 0:he.id)||void 0,credential:a.credential,enableRedisPartial:a.enableRedisPartial,experimentalRenders:a.config.app==="konnect"?a.config.experimentalRenders:void 0}),{convertToDotNotation:c,unFlattenObject:u,dismissField:f,isObjectEmpty:d,unsetNullForeignKey:p}=Ke.usePluginHelpers(),m=Ke.useExperimentalFreeForms(),{objectsAreEqual:y}=ge.useHelpers(),{i18n:{t:b}}=De(),g=X=>a.config.app==="konnect"?X.replace(/{controlPlaneId}/gi,a.config.controlPlaneId||""):a.config.app==="kongManager"?X.replace(/\/{workspace}/gi,a.config.workspace?`/${a.config.workspace}`:""):X,h=(X,ce)=>{let se=`${a.config.apiBaseUrl}${We.form[a.config.app].entityGetOne}`;return se=g(se),se=se.replace(/{entity}/gi,X),se=se.replace(/{id}/gi,ce),se},w=X=>{let ce=`${a.config.apiBaseUrl}${We.form[a.config.app].entityGetAll}`;return ce=g(ce),ce=ce.replace(/{entity}/gi,X),ce},_=(X,ce)=>{const se=h(X,ce);return l.get(se)},k=(X,ce)=>{const se=w(X);return a.config.app==="konnect"?l.get(se).then(ue=>{const{data:{data:fe}}=ue;if(delete ce.size,delete ce.offset,fe.length&&Object.keys(ce).length===1){const O=Object.keys(ce)[0],B=fe.filter(F=>F[O]?!!F[O].toLowerCase().includes(ce[O].toLowerCase()):!1);ue.data.data=B}return ue}):l.get(se,{params:ce})},E=(X,ce,se)=>{const ue=w(X);if(a.config.app==="konnect"){const{size:fe,offset:O,...B}=ce;if(X==="consumer_groups")return l.get(ue,{params:{size:1e3},signal:se}).then(R=>{const{data:{data:J}}=R;if(J.length&&Object.keys(B).length===1){const j=Object.keys(B)[0],ae=J.filter(L=>L[j]?!!L[j].toLowerCase().includes(B[j].toLowerCase()):!1);R.data.data=ae}return R});const F={size:fe,offset:O};for(const R of Object.keys(B))F.filter={[R]:{contains:B[R]}};return l.get(ue,{params:F,signal:se})}return l.get(ue,{params:ce,signal:se})},C=(X,ce=50)=>{const se=w(X);return l.get(se,{params:{size:ce}})};t.provide(Me.FORMS_API_KEY,{getOne:_,getAll:k,getAllV2:E,peek:C}),t.provide(Me.FORMS_CONFIG,a.config);const N=t.ref(""),I=t.ref(""),D=t.ref(null),G=t.ref({}),K=t.reactive({}),S=t.reactive({}),ne=t.computed(()=>{var X;return(X=D.value)==null?void 0:X.options}),x=t.ref(!1),q=t.ref(),U=(X,ce)=>{x.value=X??"",q.value=ce},te=X=>{var ce;(ce=q.value)==null||ce.call(q,X),x.value=!1},V=()=>{var B,F;const X={...a.schema},ce=S,se=K,ue=Object.keys(ce),fe={};if(!d(G.value))for(let R=0;R<((F=(B=G.value)==null?void 0:B.fields)==null?void 0:F.length);R++)X[G.value.fields[R].model]=G.value.fields[R];Me.customFields.forEach(R=>{X[R]&&(X[R].fields.forEach(J=>{J.fields&&J.fields.forEach(j=>{X[j.model]=j}),J.model&&(X[J.model]=J)}),delete X[R])}),ue.forEach(R=>{var pe;if(!X[R]){R==="partials"&&(fe[R]=ce[R]);return}const J=X[R];let j=ce[R];const ae=se[R],L=Array.isArray(j)?"array":typeof j,$=J?J.valueType:null,z=J?J.valueArrayType:null,M=J?J.transform:null;if(j==null&&ae==null&&!J.submitWhenNull)return;if(J){if($&&L!==$)switch($){case"array":L==="string"&&j.length&&(j=j.split(",").map(ye=>{if(ye=ye.trim(),z==="string")return String(ye);if(z==="number")return Number(ye);if(z==="boolean"){if(typeof ye=="string")return ye.toLowerCase()==="true"||ye==="1";if(typeof ye=="number")return ye===1}return ye})),(!j||!j.length)&&(j=J.submitWhenNull?null:[]);break;case"number":j=Number(j);break;case"boolean":L==="string"&&(j=j.toLowerCase()==="true"||j==="1"),L==="number"&&(j=j===1);break;case"string":j=j==null?"":String(j);break}else $==="array"&&(!j||!j.length?j=J.submitWhenNull?null:[]:((pe=J.inputAttributes)==null?void 0:pe.type)==="number"&&(j=j.map(ye=>Number(ye))));if(J.type==="array"&&J.nestedFields){const ye=me=>{Object.keys(me).forEach(_e=>{me[_e]&&typeof me[_e]=="object"&&!Array.isArray(me[_e])&&me[_e]!==null?ye(me[_e]):(me[_e]===void 0||me[_e]===null||typeof me[_e]=="number"&&isNaN(me[_e])||typeof me[_e]=="string"&&me[_e].trim().length===0)&&delete me[_e]})};j&&typeof j=="object"&&ye(j)}J.type==="object-advanced"&&J.fields&&j!==null&&(Object.entries(j).length===0?j=null:Object.keys(j).forEach(ye=>{Array.isArray(j[ye])||(j[ye]=j[ye].split(","))}))}let le=c(R);if(J.fieldNameHasDashes){const[ye,...me]=le.split(".").reverse();le=[ye.replace(/_/g,"-"),...me].reverse().join(".")}if($==="object-expand"){let ye;[le,ye]=le.split(".");let me={};fe[le]&&(me=fe[le]),me[ye]=j,j=me}ae!==void 0&&j===""&&j!==ae?fe[le]=$==="object"?{}:null:J.type==="checklist"&&j===""?fe[le]=[]:j!==""&&(fe[le]=j),fe[le]=M?M(j):fe[le],p(le,fe)});const O=u(fe);return I.value&&Object.assign(O,Y.value),O},T=(X,ce={})=>{f(S,ce,X,a.editing),i("model-updated",{model:S,originalModel:K,data:V()})},v=(X,ce)=>{var fe;const se={[ce]:X};typeof((fe=a.schema[ce])==null?void 0:fe.modelTransformer)=="function"&&(se[ce]=a.schema[ce].modelTransformer(X));const ue=Object.assign({},S,se);Object.assign(S,ue),i("model-updated",{model:S,originalModel:K,data:V()})},P=X=>{i("validity-change",X)},A=(X,ce)=>{Object.keys(X).forEach(se=>{var F,R;let ue=ce?`${ce}-${se}`:se,fe=a.schema[ue];if(!fe){const J=ce?`${ce}-${se.replace(/-/g,"_")}`:se.replace(/-/g,"_");(F=a.schema[J])!=null&&F.fieldNameHasDashes&&(ue=J,fe=a.schema[ue]),ce&&((R=a.schema[ce])==null?void 0:R.keyFromObject)===se&&(ue=ce,fe=a.schema[ue])}const O=X[se],B=typeof O;if(fe&&fe.type==="object-advanced"&&!O){S[ue]={},K[ue]={};return}if(Array.isArray(O)){S[ue]=JSON.parse(JSON.stringify(O)),K[ue]=JSON.parse(JSON.stringify(O));return}if(B==="object"&&O&&!O.length)return A(O,ue);if(B==="object"&&O&&O.length&&fe.type==="input"){S[ue]=O.join(", "),K[ue]=O.join(", ");return}S[ue]=O,K[ue]=O}),i("model-updated",{model:S,originalModel:K,data:V()})},Y=t.shallowRef(a.record),W=X=>{Y.value=X,i("model-updated",{model:{...S,...X},originalModel:K,data:V()})},ie=t.ref(!0),oe=()=>{var X;if(a.record&&a.schema&&(A({enabled:a.record.enabled??!0,...a.record.instance_name&&{instance_name:a.record.instance_name||""},...a.record.protocols&&{protocols:a.record.protocols},...a.record.tags&&{tags:a.record.tags}}),a.credential?((a.record.consumer_id||a.record.consumer)&&A({consumer_id:a.record.consumer_id||a.record.consumer}),A(a.record)):a.record.config&&((a.record.consumer_id||a.record.consumer||a.record.service_id||a.record.service||a.record.route_id||a.record.route||a.record.consumer_group_id||a.record.consumer_group)&&A({service_id:a.record.service_id||a.record.service,route_id:a.record.route_id||a.record.route,consumer_id:a.record.consumer_id||a.record.consumer,consumer_group_id:a.record.consumer_group_id||a.record.consumer_group}),a.record.partials&&T("redis",{partials:a.record.partials}),I.value?W(a.record):A(a.record.config,"config"))),Object.keys(a.entityMap).length&&!a.entityMap.global&&a.schema){const ce={};for(const se in a.entityMap){const ue=a.entityMap[se].id,fe=a.entityMap[se].idField,O=fe==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(fe).replace("_","-"));Object.prototype.hasOwnProperty.call(S,O)&&(ce[O]=ue)}A(ce)}if((X=a.entityMap.consumer)!=null&&X.id&&a.schema&&a.credential){const ce={};Object.prototype.hasOwnProperty.call(S,"consumer")&&(ce.consumer=a.entityMap.consumer.id),A(ce)}ie.value=!1};return t.watch(ie,X=>{i("loading",X)}),t.watch(()=>a.schema,(X,ce)=>{var ue,fe;if(y(X||{},ce||{}))return;const se=s(X,void 0,void 0,a.engine);Object.assign(S,se.model),G.value={fields:(fe=(ue=G.value)==null?void 0:ue.fields)==null?void 0:fe.map(O=>({...O,disabled:O.disabled||!1}))},Object.assign(K,JSON.parse(JSON.stringify(se.model))),I.value=a.engine?a.engine==="vfg"?void 0:wa(se.model.name,m)||"CommonForm":wa(se.model.name,m),N.value=Me.getSharedFormName(se.model.name),oe()},{immediate:!0,deep:!0}),t.onBeforeMount(()=>{var X,ce;D.value=s(a.schema,void 0,void 0,a.engine),Object.assign(S,((X=D.value)==null?void 0:X.model)||{}),G.value=((ce=D.value)==null?void 0:ce.schema)||{},oe()}),(X,ce)=>{var ue;const se=t.resolveComponent("KSkeleton");return t.openBlock(),t.createElementBlock(t.Fragment,null,[t.createElementVNode("div",zD,[ie.value?(t.openBlock(),t.createBlock(se,{key:0,type:"form"})):S.id&&e.editing||!e.editing?(t.openBlock(),t.createElementBlock("div",HD,[I.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(Hm[I.value]),{key:0,"form-model":S,"form-options":ne.value,"form-schema":G.value,"is-editing":e.editing,model:e.record,"on-form-change":W,"on-model-updated":v,"on-validity-change":P,schema:e.rawSchema,onGlobalAction:ce[0]||(ce[0]=(fe,O)=>X.$emit("globalAction",fe,O))},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Me.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(ko.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:U}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-options","form-schema","is-editing","model","schema"])):N.value?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(Me.sharedForms)[N.value]),{key:1,"enable-redis-partial":e.enableRedisPartial,"form-model":S,"form-options":ne.value,"form-schema":G.value,"is-editing":e.editing,"on-model-updated":v,"on-partial-toggled":T,"show-new-partial-modal":fe=>X.$emit("showNewPartialModal",fe)},t.createSlots({_:2},[e.enableVaultSecretPicker?{name:t.unref(Me.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(ko.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:U}),null,16)):t.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(t.openBlock(),t.createBlock(t.unref(Me.VueFormGenerator),{key:2,"enable-redis-partial":e.enableRedisPartial,"is-editing":e.editing,model:S,options:ne.value,schema:G.value,onModelUpdated:v,onPartialToggled:T,onRefreshModel:V,onShowNewPartialModal:ce[1]||(ce[1]=fe=>X.$emit("showNewPartialModal",fe))},t.createSlots({"plugin-config-empty-state":t.withCtx(()=>[t.createElementVNode("div",YD,t.toDisplayString(t.unref(b)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(ue=t.unref(Vt)[S.name])!=null&&ue.fieldRules&&(a.config.isNewOtelSchema||S.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:t.withCtx(()=>[t.createVNode(cw,{rules:t.unref(Vt)[S.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,e.enableVaultSecretPicker?{name:t.unref(Me.AUTOFILL_SLOT_NAME),fn:t.withCtx(fe=>[fe.schema.referenceable?(t.openBlock(),t.createBlock(t.unref(ko.VaultSecretPickerProvider),t.mergeProps({key:0},fe,{onOpen:U}),null,16)):t.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):t.createCommentVNode("",!0)]),t.createVNode(t.unref(ko.VaultSecretPicker),{config:a.config,setup:x.value,onCancel:ce[2]||(ce[2]=()=>x.value=!1),onProceed:te},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-3a5319dd"]]),XD={key:1},ZD=t.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(e){return(n,o)=>e.teleportTarget?(t.openBlock(),t.createBlock(t.Teleport,{key:0,to:e.teleportTarget},[t.renderSlot(n.$slots,"default")],8,["to"])):(t.openBlock(),t.createElementBlock("div",XD,[t.renderSlot(n.$slots,"default")]))}}),JD={class:"kong-ui-entities-plugin-form-container"},QD={key:0},eM={class:"plugin-form-actions"},tM=ve(t.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(e,{emit:n}){var L;const o=n,r=e,i=wo.useRouter(),{i18n:{t:a}}=Ke.useI18n(),{customSchemas:l,typedefs:s}=Ke.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:c}=Ke.usePluginHelpers(),{getMessageFromError:u}=ge.useErrors(),{capitalize:f}=ge.useStringHelpers(),{objectsAreEqual:d}=ge.useHelpers(),{axiosInstance:p}=ge.useAxios((L=r.config)==null?void 0:L.axiosRequestConfig),m=t.ref(!1),y=t.computed(()=>!!r.pluginId),b=t.computed(()=>r.pluginId?ge.EntityBaseFormType.Edit:ge.EntityBaseFormType.Create),g=t.ref(void 0),h=t.ref(void 0),w=t.computed(()=>!!(r.credential&&r.config.entityId)),_=t.ref(void 0),k=t.ref({}),E=t.ref(),C=t.ref();t.provide(ld,{redisType:E,redisPath:C,isEditing:y.value});const N=t.ref(!1),I=t.reactive({enabled:!0,protocols:[],tags:[]}),D=t.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),G=t.ref([{title:a("view_configuration.json"),hash:"#json"},{title:a("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&G.value.splice(1,0,{title:a("view_configuration.terraform"),hash:"#terraform"});const K=t.ref(""),S=t.computed(()=>{var z;if(w.value){let M=We.form[r.config.app].credential[b.value];return M=M.replace(/{resourceEndpoint}/gi,U.value),M}let $;return r.config.entityType&&r.config.entityId?$=We.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):$=We.form[r.config.app].edit.all,r.config.app==="konnect"&&((z=Vt[r.pluginType])!=null&&z.useUIData)?`${$}?__ui_data=true`:$}),ne=()=>{m.value=!m.value},x=t.computed(()=>{var ye,me,_e,Be,re,ee,Z,be;const $=r.config.entityType==="consumers"&&r.config.entityId||((me=(ye=_.value)==null?void 0:ye.consumer)==null?void 0:me.id),z=r.config.entityType==="consumer_groups"&&r.config.entityId||((Be=(_e=_.value)==null?void 0:_e.consumer_group)==null?void 0:Be.id),M=r.config.entityType==="services"&&r.config.entityId||((ee=(re=_.value)==null?void 0:re.service)==null?void 0:ee.id),le=r.config.entityType==="routes"&&r.config.entityId||((be=(Z=_.value)==null?void 0:Z.route)==null?void 0:be.id);if(!($||z||M||le))return{global:{entity:H.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const pe={};return M&&(pe.service={entity:H.PluginScope.SERVICE,entityEndpoint:"services",id:M,idField:hn.SERVICE}),le&&(pe.route={entity:H.PluginScope.ROUTE,entityEndpoint:"routes",id:le,idField:hn.ROUTE}),$&&(pe.consumer={entity:H.PluginScope.CONSUMER,entityEndpoint:"consumers",id:$,idField:hn.CONSUMER}),z&&(pe.consumer_group={entity:H.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:z,idField:hn.CONSUMER_GROUP}),r.config.entityType&&(pe.focusedEntity={entity:H.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:hn[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),pe}),q=t.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:a("plugins.form.fields.enabled.label"),textOn:a("plugins.form.fields.enabled.on_text"),textOff:a("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||b.value===ge.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:a("plugins.form.scoping.global.label"),description:a("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:a("plugins.form.fields.protocols.help"),label:a("plugins.form.fields.protocols.label"),required:!0,styleClasses:"plugin-protocols-select",type:"multiselect",values:[{label:"grpc",value:"grpc"},{label:"grpcs",value:"grpcs"},{label:"http",value:"http"},{label:"https",value:"https"},{label:"tcp",value:"tcp"},{label:"tls",value:"tls"},{label:"tls_passthrough",value:"tls_passthrough"},{label:"udp",value:"udp"},{label:"ws",value:"ws"},{label:"wss",value:"wss"}]},instance_name:{default:"",type:"input",label:a("plugins.form.fields.instance_name.label"),inputType:"text",help:a("plugins.form.fields.instance_name.help")},tags:s.tags}),U=t.computed(()=>{var M;const $=r.developer?"developers":"consumers",z=((M=Un[r.pluginType])==null?void 0:M.endpoint)||"/plugins";return`${$}/${r.config.entityId}${r.developer?"/credentials":""}${z}`}),te=$=>{const z=Array.from(new Set($.map(M=>typeof M)));return z.length>1?"string":z[0]},V=($,z,M,le)=>{var _e,Be;let pe=z&&z.fields||[];const ye=l[r.pluginType],me=(Be=(_e=Un[r.pluginType])==null?void 0:_e.schema)==null?void 0:Be.fields;return Array.isArray(pe)&&(pe=pe.reduce((re,ee)=>{const Z=Object.keys(ee)[0];return Z.match(/-/g)?re[Z.replace(/-/g,"_")]={...ee[Z],fieldNameHasDashes:!0}:re[Z]=ee[Z],re},{})),Object.keys(pe).sort().forEach(re=>{var $e,Ne,Ae,Re,je,He,Ge;const ee=pe[re];ee.type==="set"&&(ee.type="array");const Z=$?`${$}-${re}`:`${re}`;if(($e=ye==null?void 0:ye.fieldsToDelete)!=null&&$e.includes(Z)){Dc(M,Z);return}if(Object.prototype.hasOwnProperty.call(ee,"overwrite")||ee.hidden)return;if(ee.type==="table")return V(Z,ee.schema,M);if(ee.fields)return le&&ee.type==="record"?(M[Z]={type:"object",model:re,schema:{fields:Object.values(V(Z,ee,{},!0))}},M):V(Z,ee,M);if(M[Z]={id:Z,model:re},M[Z].type=ee.type==="boolean"?"checkbox":"input",M[Z].required=ee.required,M[Z].referenceable=ee.referenceable,Z.startsWith("config-"))if(!le&&ee.type==="array"&&(K.value=Z),le&&K.value&&Z.startsWith(K.value)){const Ee=Z.slice(K.value.length+1);M[Z].label=Ee.split("-").map(c).join(".")}else M[Z].label=c(Z);if(($==="config"||$.startsWith("config-"))&&(Ne=pe[re])!=null&&Ne.description&&(M[Z].help=gr.marked.parse(pe[re].description,{mangle:!1,headerIds:!1})),ee.type==="map"){if(M[Z].type="object-advanced",M[Z].values=ee.values,ee.values.type==="array"){const{type:Ee}=ee.values.elements||{};M[Z].schema={fields:[{schema:{fields:[{...Ve,model:Z,valueArrayType:Ee==="integer"?"number":Ee||"string",inputAttributes:{...Ve.inputAttributes,type:Ee==="integer"?"number":"text",inputMode:Ee==="integer"?"numeric":"text"}}]}}]}}else ee.values.fields&&(M[Z].schema={fields:[{type:"object",model:"object",schema:{fields:ee.values.fields.map(Ee=>{const Le=Object.keys(Ee)[0];return{model:Le,type:"input",label:f(Le),placeholder:Le,inputType:Ee[Le].type}})}}]});return M}if(ee.enum&&ee.type==="array"&&(M[Z].type="checklist",M[Z].values=ee.enum,M[Z].multi=!0,M[Z].multiSelect=!0),ee.one_of&&ee.type!=="array"&&(M[Z].type="select",M[Z].values=ee.one_of,M[Z].selectOptions={noneSelectedText:a("plugins.form.no_selection")}),ee.elements&&ee.type==="array"){const Ee=ee.elements;if(M[Z].referenceable=Ee.referenceable,M[Z].elements=Ee,["string","integer","number"].includes(Ee.type)&&!Ee.one_of){const{id:Le,help:Ue,label:Ce,hint:Te,values:Pe,referenceable:nt,model:dt}=M[Z],{inputAttributes:qi,...QM}=JSON.parse(JSON.stringify(Ve));qi.type=Ee.type==="string"?"text":"number",M[Z]={id:Le,help:Ue,label:Ce,hint:Te,values:Pe,referenceable:nt,model:dt,inputAttributes:qi,...QM}}}if(ee.hint&&(M[Z].hint=ee.hint),ye&&!ye.overwriteDefault&&Object.keys(ye).forEach(Ee=>{if(Ee===Z){const{help:Le,label:Ue,hint:Ce,values:Te,referenceable:Pe,elements:nt}=M[Z],{help:dt,...qi}=ye[Ee];M[Z]={help:Le,label:Ue,hint:Ce,values:Te,referenceable:Pe,elements:nt,...qi},typeof dt=="string"&&(M[Z].help=gr.marked.parse(dt,{mangle:!1,headerIds:!1}))}}),ee.type==="array"&&((Ae=ee.elements)==null?void 0:Ae.type)==="record"&&Array.isArray(ee.elements.fields)){let Ee={};for(const Ue of ee.elements.fields)Ee={...Ee,...Ue};const Le=(He=(je=(Re=M[Z])==null?void 0:Re.items)==null?void 0:je.schema)==null?void 0:He.fields;if(Array.isArray(Le))for(const Ue of M[Z].items.schema.fields){const Ce=(Ge=Ee[Ue.model])==null?void 0:Ge.description;Ue.help===void 0&&typeof Ce=="string"&&(Ue.help=gr.marked.parse(Ce,{mangle:!1,headerIds:!1}))}if(Le||(M[Z].type="array",M[Z].newElementButtonLabelClasses="kong-form-new-element-button-label",M[Z].fieldClasses="array-card-container-wrapper",M[Z].itemContainerComponent="FieldArrayCardContainer",M[Z].items={type:"object",schema:{fields:Object.values(V(Z,ee.elements,{},!0))}},M[Z].items.schema.fields.forEach(Ue=>{var Ce,Te;for(const Pe of ee.elements.fields){const nt=Object.keys(Pe)[0],dt=((Te=(Ce=Ue.id)==null?void 0:Ce.split)==null?void 0:Te.call(Ce,"-"))??[];if(dt[dt.length-1]===nt){Ue.model=nt,Ue.label=c(nt);break}}}),ee.elements.type==="record"&&(M[Z].nestedFields=!0)),!M[Z].nestedFields)M[Z].items.default=()=>ee.elements.fields.reduce((Ue,Ce)=>{const Te=Object.keys(Ce)[0];return Ue[Te]=Ce[Te].default,Ue},{});else{const Ue=(Ce,Te)=>{if(Ce.type==="object"){Ce.model&&(Te[Ce.model]={});for(const Pe of Ce.schema.fields)Ue(Pe,Ce.model?Te[Ce.model]:Te)}else Ce.model&&(Te[Ce.model]=Ce.default)};M[Z].items.default=()=>{const Ce={};return Ue(M[Z].items,Ce),Ce}}}if(w.value&&me){for(let Ee=0;Ee<me.length;Ee++)if(me[Ee][Z]){M[Z]={...M[Z],...me[Ee][Z]};break}}if(ee.required&&ee.type!=="boolean"&&(M[Z].required=!0,M[Z].selectOptions={hideNoneSelectedText:!0}),ee.required&&ee.type==="boolean"&&(M[Z].default=ee.default??!1),ee.default!=null&&typeof ee.default!="object"&&ee.default!=="function"&&(M[Z].default=ee.default),M[Z].type==="input"){["string","number"].includes(typeof M[Z].default)&&r.config.app==="konnect"&&(M[Z].placeholder=`Default: ${M[Z].default===""?"<empty string>":M[Z].default}`);const{type:Ee}=ee.elements||{};Ee&&(M[Z].valueArrayType=Ee==="integer"?"number":Ee),M[Z].inputType=ee.type==="array"||ee.type==="string"?ee.encrypted?"password":"text":ee.type}let be="string";ee.enum?be=te(ee.enum):ee.type==="boolean"?be="boolean":ee.type==="number"||ee.type==="integer"?(be="number",M[Z].inputType="number"):ee.type==="array"?(be="array",M[Z].default=ee.default,ee.len_min>0&&(M[Z].submitWhenNull=!0)):ee.type==="foreign"?be="object":ee.default&&Array.isArray(ee.default)?(be="array",M[Z].valueArrayType=te(ee.default)):ee.default&&(be=typeof ee.default),M[Z].valueType=be,ee.fieldNameHasDashes&&(M[Z].fieldNameHasDashes=!0)}),M},T=()=>{var Z,be,$e,Ne,Ae,Re,je,He,Ge,Ee,Le,Ue;const $=((Z=Vt[r.pluginType])==null?void 0:Z.scope.includes(H.PluginScope.SERVICE))??!0,z=((be=Vt[r.pluginType])==null?void 0:be.scope.includes(H.PluginScope.ROUTE))??!0,M=(($e=Vt[r.pluginType])==null?void 0:$e.scope.includes(H.PluginScope.CONSUMER))??!0,le=r.config.disableConsumerGroupScope?!1:((Ne=Vt[r.pluginType])==null?void 0:Ne.scope.includes(H.PluginScope.CONSUMER_GROUP))??!0,pe=r.config.entityType==="consumers"&&!!r.config.entityId||!!((Re=(Ae=_.value)==null?void 0:Ae.consumer)!=null&&Re.id),ye=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((He=(je=_.value)==null?void 0:je.consumer_group)!=null&&He.id),me=r.config.entityType==="services"&&!!r.config.entityId||!!((Ee=(Ge=_.value)==null?void 0:Ge.service)!=null&&Ee.id),_e=r.config.entityType==="routes"&&!!r.config.entityId||!!((Ue=(Le=_.value)==null?void 0:Le.route)!=null&&Ue.id),Be=[],re=(Ce,Te,Pe)=>Ce?a("plugins.form.disable_source_scope_change",{scope:Pe}):Te?a("plugins.form.disable_data_retrieving",{scope:Pe}):"",ee=Ce=>{var Te,Pe;return((Pe=(Te=r.scopedEntitiesPermissions)==null?void 0:Te[Ce])==null?void 0:Pe.canRetrieve)===!1};if($){const Ce=ee("service"),Te="services",Pe=me&&r.disableScopeSelection;Be.push({id:"service-id",model:"service-id",label:a("plugins.form.scoping.gateway_service.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Te,inputValues:{fields:["name","id"]},help:a("plugins.form.scoping.gateway_service.help"),disabled:Pe||Ce,disabledTooltip:re(Pe,Ce,Te)})}if(z){const Ce=ee("route"),Te="routes",Pe=_e&&r.disableScopeSelection;Be.push({id:"route-id",model:"route-id",label:a("plugins.form.scoping.route.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Te,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:a("plugins.form.scoping.route.help"),disabled:Pe||Ce,disabledTooltip:re(Pe,Ce,Te)})}if(M){const Ce=ee("consumer"),Te="consumers",Pe=pe&&r.disableScopeSelection;Be.push({model:"consumer-id",label:a("plugins.form.scoping.consumer.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Te,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:a("plugins.form.scoping.consumer.help"),disabled:Pe||Ce,disabledTooltip:re(Pe,Ce,Te)})}if(le){const Ce=ee("consumer_group"),Te="consumer_groups",Pe=ye&&r.disableScopeSelection;Be.push({model:"consumer_group-id",label:a("plugins.form.scoping.consumer_group.label"),placeholder:a("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Te,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:a("plugins.form.scoping.consumer_group.help"),disabled:Pe||Ce,disabledTooltip:re(Pe,Ce,Te)})}if(Be.length){const Ce=[...$?["service"]:[],...z?["route"]:[],...M?["consumer"]:[],...le?["consumer_group"]:[]],Pe=Ce.splice(Ce.length-2,2).map(dt=>a(dt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${dt}.plural`)).join(`${Ce.length>0?",":""} and/or `),nt=["Specific",[...Ce.length>0?[Ce.map(dt=>a(dt==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${dt}.plural`)).join(", ")]:[],Pe].join(", ")].join(" ");q.selectionGroup.fields.push({label:a("plugins.form.scoping.label"),description:nt,fields:[]}),q.selectionGroup.fields[1].fields=Be}l[r.pluginType]&&l[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(l[r.pluginType],"formSchema")&&Object.assign(q,l[r.pluginType].formSchema)},v=t.computed(()=>!d(D.fields,I,!0)),P=t.computed(()=>!j.value&&!N.value&&(b.value===ge.EntityBaseFormType.Create||v.value)),A=t.ref(!1),Y=t.ref(),W=$=>{r.credential&&$.password&&($.password=""),D.fields.id=($==null?void 0:$.id)||void 0,Y.value=$==null?void 0:$.ordering,Object.assign(I,D.fields),_.value=$,A.value=!0},ie=t.ref({}),oe=$=>{var z;D.fields=$.model,D.fields.id=((z=_.value)==null?void 0:z.id)||void 0,Object.assign(I,$.originalModel),ie.value=$.data,r.isWizardStep&&o("model-updated",{model:D.fields,data:$.data,resourceEndpoint:U.value})},de=t.ref(new Map),he=t.computed(()=>[D.clientErrorMessage,D.serverErrorMessage].filter(Boolean).join("; ")),X=$=>{$.valid?de.value.delete($.model):de.value.set($.model,$.error),D.clientErrorMessage=[...de.value.entries()].map(([z,M])=>`${z}: ${typeof M=="string"?M:u(M)}`).join("; "),D.clientErrorMessage&&(D.serverErrorMessage="")};t.watch([x,A],($,z)=>{const M=$[0]!==z[0],le=$[1],pe=z[1];if(!w.value&&b.value===ge.EntityBaseFormType.Edit&&(M||le&&le!==pe)){const ye=V("config",k.value,q);fe.value&&(ye._isCustomPlugin=!0),E.value&&(ye._supported_redis_partial_type=E.value),h.value=ye}},{deep:!0});const ce=()=>{r.config.cancelRoute?i.push(r.config.cancelRoute):o("cancel")},se=t.computed(()=>{let $=`${r.config.apiBaseUrl}${We.form[r.config.app].validate}`;return r.config.app==="konnect"?$=$.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&($=$.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),$=$.replace(/{id}/gi,r.pluginId),$}),ue=t.computed(()=>{const $=r.config.entityType&&r.config.entityId&&!r.developer,z=w.value?We.form[r.config.app].credential[b.value]:We.form[r.config.app][b.value][$?"forEntity":"all"];let M=`${r.config.apiBaseUrl}${z}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{resourceEndpoint}/gi,U.value),M=M.replace(/{id}/gi,r.pluginId),M=M.replace(/{entityType}/gi,r.config.entityType||""),M=M.replace(/{entityId}/gi,r.config.entityId||""),M}),fe=t.computed(()=>!Object.keys(Vt).includes(r.pluginType)),O=t.computed(()=>{const $=ie.value;if(w.value){for(const z in H.PluginScope){const M=H.PluginScope[z];$[M]&&!$[M].id&&($[M]={id:r.config.entityId})}delete $.created_at}return ie.value.partials&&C.value&&Dc($,C.value),$}),B=t.computed(()=>{const{__ui_data:$,...z}={...O.value};return z}),F=async()=>{if(!D.clientErrorMessage&&!r.isWizardStep)try{D.isReadonly=!0;let $;const z=JSON.parse(JSON.stringify(O.value)),M=l[r.pluginType];typeof(M==null?void 0:M.shamefullyTransformPayload)=="function"&&M.shamefullyTransformPayload({originalModel:I,model:D.fields,payload:z,schema:h.value}),!w.value&&!fe.value&&await p.post(se.value,z),b.value==="create"?$=await p.post(ue.value,z):b.value==="edit"&&($=r.config.app==="konnect"||E.value&&z.partials?await p.put(ue.value,Object.assign({ordering:Y.value},z)):await p.patch(ue.value,z)),Object.assign(I,D.fields),o("update",$==null?void 0:$.data)}catch($){D.serverErrorMessage=u($),o("error",$)}finally{D.isReadonly=!1}},R=t.computed(()=>{var le;const $=w.value?(le=Un[r.pluginType])==null?void 0:le.schemaEndpoint:r.pluginType,z=w.value?We.form[r.config.app].credentialSchema:We.form[r.config.app].pluginSchema;let M=`${r.config.apiBaseUrl}${z}`;return r.config.app==="konnect"?M=M.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(M=M.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),M=M.replace(/{plugin}/gi,$),M}),J=t.ref(""),j=t.ref(!1),ae=t.ref("");return t.onBeforeMount(async()=>{var $,z,M,le;j.value=!0;try{if(w.value&&r.config.app==="konnect"){const pe=($=Un[r.pluginType])==null?void 0:$.schemaEndpoint,ye=dg[pe];J.value=pe,h.value=V("",ye,{}),j.value=!1}else{const pe=r.schema??(await p.get(R.value)).data;if(g.value=pe,pe)if(w.value)h.value=V("",pe,{}),j.value=!1;else{const ye=pe.fields.find(_e=>_e.config);k.value=ye?ye.config:pe,pe.supported_partials&&(E.value=Object.keys(pe.supported_partials).find(_e=>[yr.REDIS_CE,yr.REDIS_EE].includes(_e)),C.value=(z=pe.supported_partials[E.value])==null?void 0:z[0]),T();const me=(M=pe.fields.find(_e=>_e.protocols))==null?void 0:M.protocols;if(me){const{default:_e=[],elements:Be={}}=me;q.protocols.default=_e,q.protocols.placeholder=r.config.app==="konnect"?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:_e.join(", ")}):a("plugins.form.fields.protocols.placeholder"),(le=Be.one_of)!=null&&le.length&&(q.protocols.values=Be.one_of.map(re=>({label:re,value:re})))}if(A.value||b.value===ge.EntityBaseFormType.Create){const _e=V("config",k.value,q);E.value&&(_e._supported_redis_partial_type=E.value),fe.value&&(_e._isCustomPlugin=!0),h.value=_e}}}}catch(pe){console.error(pe),ae.value=u(pe),o("error:fetch-schema",pe)}finally{j.value=!1}}),($,z)=>{const M=t.resolveComponent("KSkeleton"),le=t.resolveComponent("KEmptyState"),pe=t.resolveComponent("KButton"),ye=t.resolveComponent("KTabs"),me=t.resolveComponent("KSlideout");return t.openBlock(),t.createElementBlock("div",JD,[j.value?(t.openBlock(),t.createBlock(M,{key:0,type:"form"})):ae.value?(t.openBlock(),t.createBlock(le,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(t.unref(a)("errors.load_schema")),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ge.EntityBaseForm),{key:2,"can-submit":P.value,config:e.config,"edit-id":e.pluginId,"entity-type":t.unref(ge.SupportedEntityType).Plugin,"error-message":he.value,"fetch-url":S.value,"form-fields":O.value,"is-readonly":D.isReadonly,"no-validate":"","wrapper-component":e.noCardWrapper?"div":void 0,onCancel:ce,"onFetch:error":z[4]||(z[4]=_e=>$.$emit("error",_e)),"onFetch:success":W,onLoading:z[5]||(z[5]=_e=>$.$emit("loading",_e))},{"form-actions":t.withCtx(()=>[e.isWizardStep?(t.openBlock(),t.createElementBlock("div",QD)):(t.openBlock(),t.createBlock(ZD,{key:1,"teleport-target":e.actionsTeleportTarget},{default:t.withCtx(()=>[t.createElementVNode("div",eM,[e.hideViewConfigAction?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(pe,{key:0,appearance:"tertiary","data-testid":`plugin-${y.value?"edit":"create"}-form-view-configuration`,onClick:z[3]||(z[3]=_e=>ne())},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),t.createVNode(pe,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${y.value?"edit":"create"}-form-cancel`,disabled:D.isReadonly,onClick:ce},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),t.createVNode(pe,{appearance:"primary","data-testid":`plugin-${y.value?"edit":"create"}-form-submit`,disabled:!P.value||D.isReadonly,type:"submit",onClick:F},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:t.withCtx(()=>[t.createElementVNode("form",{hidden:"",onSubmit:F},null,32),t.createVNode(WD,{config:e.config,credential:w.value,editing:b.value===t.unref(ge.EntityBaseFormType).Edit,"enable-redis-partial":e.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:e.engine,"entity-map":x.value,"raw-schema":g.value,record:_.value,schema:h.value,onGlobalAction:z[0]||(z[0]=(_e,Be)=>$.$emit("globalAction",_e,Be)),onLoading:z[1]||(z[1]=_e=>N.value=_e),onModelUpdated:oe,onShowNewPartialModal:z[2]||(z[2]=_e=>$.$emit("showNewPartialModal",_e)),onValidityChange:X},null,8,["config","credential","editing","enable-redis-partial","enable-vault-secret-picker","engine","entity-map","raw-schema","record","schema"])]),_:1},8,["can-submit","config","edit-id","entity-type","error-message","fetch-url","form-fields","is-readonly","wrapper-component"])),t.createVNode(me,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:t.unref(a)("view_configuration.title"),visible:m.value,onClose:ne},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(a)("view_configuration.message")),1),t.createVNode(ye,{"data-testid":"form-view-configuration-slideout-tabs",tabs:G.value},{json:t.withCtx(()=>[t.createVNode(t.unref(ge.JsonCodeBlock),{config:e.config,"entity-record":B.value,"fetcher-url":ue.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:t.withCtx(()=>[t.createVNode(t.unref(ge.YamlCodeBlock),{"entity-record":B.value},null,8,["entity-record"])]),terraform:t.withCtx(()=>[t.createVNode(t.unref(ge.TerraformCodeBlock),{"credential-type":J.value,"entity-record":B.value,"entity-type":t.unref(ge.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])])}}}),[["__scopeId","data-v-4e00808e"]]),nM={class:"kong-ui-entities-plugins-list"},oM={class:"button-row"},rM={class:"name-cell-wrapper"},iM={class:"info-wrapper"},aM={key:0,class:"info-name"},lM={key:1,class:"info-name"},sM={key:2,class:"info-type"},cM={key:1},dM=ve(t.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.createRoute||!e.getViewRoute||!e.getEditRoute||!e.getConfigureDynamicOrderingRoute||e.app==="kongManager"&&!e.isExactMatch&&!e.filterSchema)},cacheIdentifier:{type:String,default:""},canCreate:{type:Function,required:!1,default:async()=>!0},canDelete:{type:Function,required:!1,default:async()=>!0},canEdit:{type:Function,required:!1,default:async()=>!0},canToggle:{type:Function,required:!1,default:async()=>!0},canRetrieve:{type:Function,required:!1,default:async()=>!0},canRetrieveScopedEntity:{type:Function,required:!1,default:async()=>!0},canConfigureDynamicOrdering:{type:Function,required:!1,default:async()=>!0},title:{type:String,default:""},titleTag:{type:String,default:"h2"},useActionOutside:{type:Boolean,default:!1}},emits:["error","click:learn-more","copy:success","copy:error","delete:success","toggle-enabled"],setup(e,{emit:n}){var R,J;const o=Ke.usePluginMetaData(),r=n,i=e,{i18n:{t:a}}=Ke.useI18n(),l=wo.useRouter(),{axiosInstance:s}=ge.useAxios((R=i.config)==null?void 0:R.axiosRequestConfig),{hasRecords:c,handleStateChange:u}=ge.useTableState(()=>_.value),f=t.computed(()=>c.value&&i.config.app==="konnect"),d=t.computed(()=>!!i.config.entityId),p=t.computed(()=>{var j;return((j=i.config)==null?void 0:j.entityType)==="consumers"}),m=t.computed(()=>{var j;return((j=i.config)==null?void 0:j.entityType)==="consumer_groups"}),y=i.config.app==="konnect"||ge.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),b=t.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),g={name:{label:a("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(J=i.config)!=null&&J.entityId||(g.appliedTo={label:a("plugins.list.table_headers.applied_to"),sortable:!1}),g.enabled={label:a("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},y&&(g.ordering={label:a("plugins.list.table_headers.ordering"),sortable:!0}),g.tags={label:a("plugins.list.table_headers.tags"),sortable:!1};const h=g,w=t.computed(()=>{var ae,L,$,z;let j=i.config.entityType?`${i.config.apiBaseUrl}${We.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${We.list[i.config.app].all}`;return i.config.app==="konnect"?j=j.replace(/{controlPlaneId}/gi,((ae=i.config)==null?void 0:ae.controlPlaneId)||""):i.config.app==="kongManager"&&(j=j.replace(/\/{workspace}/gi,(L=i.config)!=null&&L.workspace?`/${i.config.workspace}`:"")),j.replace(/{entityType}/gi,(($=i.config)==null?void 0:$.entityType)||"").replace(/{entityId}/gi,((z=i.config)==null?void 0:z.entityId)||"")}),_=t.ref(""),k=t.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:g.name,id:{label:a("plugins.list.table_headers.id"),sortable:!0}},placeholder:a(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...g.enabled,label:a("search.filter.field.enabled")},name:g.name,instance_name:{label:a("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:E,fetcherState:C,fetcherCacheKey:N}=ge.useFetcher(t.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),w),I=()=>{_.value=""},D=()=>{N.value++},G=t.ref(null),K=j=>{var L,$,z,M;const ae=[];return((L=j.route)!=null&&L.id||j.route_id)&&ae.push({type:"route",badgeText:a("plugins.list.table_headers.applied_to_badges.route")}),(($=j.service)!=null&&$.id||j.service_id)&&ae.push({type:"service",badgeText:a("plugins.list.table_headers.applied_to_badges.service")}),((z=j.consumer)!=null&&z.id||j.consumer_id)&&ae.push({type:"consumer",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer")}),((M=j.consumer_group)!=null&&M.id||j.consumer_group_id)&&ae.push({type:"consumer_group",badgeText:a("plugins.list.table_headers.applied_to_badges.consumer_group")}),ae.length?ae:[{type:null,badgeText:a("plugins.list.table_headers.applied_to_badges.global")}]},S=async(j,ae)=>{var L;return j===null?!1:await((L=i.canRetrieveScopedEntity)==null?void 0:L.call(i,j,ae.id))},ne=(j,ae)=>{var $,z,M,le,pe;let L=null;switch(j){case"route":L=($=ae.route)==null?void 0:$.id;break;case"service":L=(z=ae.service)==null?void 0:z.id;break;case"consumer":L=(M=ae.consumer)==null?void 0:M.id;break;case"consumer_group":L=(le=ae.consumer_group)==null?void 0:le.id;break}L&&((pe=i.config)!=null&&pe.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(j,L))},x=t.ref(!1),q=t.ref(null),U=t.computed(()=>{const j={action:"disable",id:"",name:""};if(q.value){const{enabled:ae,id:L,name:$}=q.value;j.action=ae?"disable":"enable",j.id=L,j.name=o.getDisplayName($)||L}return j}),te=j=>{x.value=!0,q.value=j},V=()=>{x.value=!1,q.value=null},T=async()=>{var $,z,M,le,pe,ye,me,_e;if(!await(($=i.canEdit)==null?void 0:$.call(i,q.value))||!q.value)return;let ae=`${i.config.apiBaseUrl}${(pe=We.item[i.config.app])==null?void 0:pe[(z=i.config)!=null&&z.entityType?"forEntity":"all"].replace(/{entityType}/gi,((M=i.config)==null?void 0:M.entityType)||"").replace(/{entityId}/gi,((le=i.config)==null?void 0:le.entityId)||"")}`.replace(/{id}/gi,q.value.id||"");i.config.app==="konnect"?ae=ae.replace(/{controlPlaneId}/gi,((ye=i.config)==null?void 0:ye.controlPlaneId)||""):i.config.app==="kongManager"&&(ae=ae.replace(/\/{workspace}/gi,(me=i.config)!=null&&me.workspace?`/${i.config.workspace}`:""));const L=!q.value.enabled;try{const{data:Be}=((_e=i.config)==null?void 0:_e.app)==="konnect"?await s.put(ae,{...q.value,enabled:L},{timeout:12e4}):await s.patch(ae,{...q.value,enabled:L},{timeout:12e4});r("toggle-enabled",L,Be),q.value.enabled=L}catch(Be){r("error",Be)}},v=async(j,ae)=>{const L=j.id;if(!await ae(L)){r("copy:error",{entity:j,field:"id",message:a("errors.copy")});return}r("copy:success",{entity:j,field:"id",message:a("copy.success",{val:L})})},P=async(j,ae)=>{const L=JSON.stringify(j);if(!await ae(L)){r("copy:error",{entity:j,message:a("errors.copy")});return}r("copy:success",{entity:j,message:a("copy.success_brief")})},A=async j=>{var L;await((L=i.canRetrieve)==null?void 0:L.call(i,j))&&l.push(i.config.getViewRoute(j))},Y=j=>({label:a("actions.view"),to:i.config.getViewRoute(j)}),W=j=>({label:a("actions.edit"),to:i.config.getEditRoute(j)}),ie=j=>({label:a("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(j)}),oe=t.ref(void 0),de=t.ref(!1),he=t.ref(!1),X=t.ref(""),ce=ge.useDeleteUrlBuilder(i.config,w.value),se=j=>{oe.value=j,de.value=!0},ue=()=>{de.value=!1},fe=async()=>{var j,ae,L;if((j=oe.value)!=null&&j.id){he.value=!0;try{await s.delete(ce(oe.value.id)),he.value=!1,de.value=!1,N.value++,r("delete:success",oe.value)}catch($){X.value=((L=(ae=$.response)==null?void 0:ae.data)==null?void 0:L.message)||$.message||a("errors.delete"),r("error",$)}finally{he.value=!1}}},O=()=>{l.push(i.config.createRoute)};t.watch(C,j=>{var ae,L,$;if(j.status===ge.FetcherStatus.Error){G.value={title:a("errors.general")},($=(L=(ae=j.error)==null?void 0:ae.response)==null?void 0:L.data)!=null&&$.message&&(G.value.message=j.error.response.data.message),r("error",j.error);return}G.value=null});const B=t.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${a("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:a("plugins.title")}),F=t.ref(!1);return t.onBeforeMount(async()=>{F.value=await i.canCreate(),F.value&&(B.value.title=a("plugins.list.empty_state.title"),B.value.ctaText=a("actions.create"))}),(j,ae)=>{const L=t.resolveComponent("KButton"),$=t.resolveComponent("KEmptyState"),z=t.resolveComponent("KBadge"),M=t.resolveComponent("KTruncate"),le=t.resolveComponent("KInputSwitch"),pe=t.resolveComponent("KDropdownItem"),ye=t.resolveComponent("KClipboardProvider");return t.openBlock(),t.createElementBlock("div",nM,[t.createVNode(t.unref(ge.EntityBaseTable),{"cache-identifier":e.cacheIdentifier,"disable-sorting":b.value,"empty-state-options":B.value,"enable-entity-actions":"","error-message":G.value,fetcher:t.unref(E),"fetcher-cache-key":t.unref(N),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:_.value,"table-headers":t.unref(h),title:e.title,"title-tag":e.titleTag,onClearSearchInput:I,"onClick:row":ae[4]||(ae[4]=me=>A(me)),onSort:D,onState:t.unref(u)},t.createSlots({"toolbar-filter":t.withCtx(()=>[t.createVNode(t.unref(ge.EntityFilter),{modelValue:_.value,"onUpdate:modelValue":ae[0]||(ae[0]=me=>_.value=me),config:k.value},null,8,["modelValue","config"])]),"toolbar-button":t.withCtx(()=>[(t.openBlock(),t.createBlock(t.Teleport,{disabled:!e.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[t.createElementVNode("div",oM,[!d.value&&f.value?(t.openBlock(),t.createBlock(L,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ae[1]||(ae[1]=me=>j.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.BookIcon),{decorative:""})]),_:1})):t.createCommentVNode("",!0),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canCreate()},{default:t.withCtx(()=>[t.createVNode(L,{appearance:"primary","data-testid":"toolbar-add-plugin",size:e.useActionOutside?"medium":"large",to:e.config.createRoute},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon)),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:t.withCtx(({row:me})=>[t.createElementVNode("div",rM,[t.createVNode(t.unref(Eo.PluginIcon),{class:"plugin-icon",name:me.name,size:24},null,8,["name"]),t.createElementVNode("div",iM,[me.instance_name?(t.openBlock(),t.createElementBlock("span",aM,t.toDisplayString(me.instance_name),1)):(t.openBlock(),t.createElementBlock("span",lM,t.toDisplayString(t.unref(o).getDisplayName(me.name)),1)),me.instance_name?(t.openBlock(),t.createElementBlock("span",sM,t.toDisplayString(t.unref(o).getDisplayName(me.name)),1)):t.createCommentVNode("",!0)])])]),appliedTo:t.withCtx(({row:me})=>[K(me).length>0?(t.openBlock(),t.createBlock(M,{key:0},{default:t.withCtx(()=>[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(K(me),_e=>(t.openBlock(),t.createBlock(t.unref(ge.PermissionsWrapper),{key:_e.badgeText,"auth-function":()=>S(_e.type,me),"force-show":""},{default:t.withCtx(({isAllowed:Be})=>[t.createVNode(z,{class:t.normalizeClass(Be||"disabled"),onClick:t.withModifiers(re=>Be&&_e.type&&ne(_e.type,me),["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(_e.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(t.openBlock(),t.createElementBlock("span",cM,"-"))]),enabled:t.withCtx(({row:me})=>[t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":async()=>!!(await e.canEdit(me)&&await e.canToggle(me)),"force-show":""},{default:t.withCtx(({isAllowed:_e})=>{var Be,re;return[t.createElementVNode("div",{onClick:ae[3]||(ae[3]=t.withModifiers(()=>{},["stop"]))},[t.createVNode(le,{disabled:!_e,"disabled-tooltip-text":!_e&&((re=(Be=e.config).getToggleDisabledTooltip)==null?void 0:re.call(Be,me))||void 0,"model-value":me.enabled,onClick:t.withModifiers(ee=>_e&&te(me),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:t.withCtx(({rowValue:me})=>[t.createVNode(z,{appearance:t.unref(Bc)(me)?"info":"warning"},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(Bc)(me)?t.unref(a)("plugins.list.table_headers.ordering_badge.static"):t.unref(a)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:t.withCtx(({rowValue:me})=>[t.createVNode(t.unref(ge.TableTags),{tags:me},null,8,["tags"])]),actions:t.withCtx(({row:me})=>[t.createVNode(ye,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(pe,{"data-testid":"action-entity-copy-id",onClick:Be=>v(me,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_id")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(ye,null,{default:t.withCtx(({copyToClipboard:_e})=>[t.createVNode(pe,{"data-testid":"action-entity-copy-json",onClick:Be=>P(me,_e)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.copy_json")),1)]),_:2},1032,["onClick"])]),_:2},1024),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canRetrieve(me)},{default:t.withCtx(()=>[t.createVNode(pe,{"data-testid":"action-entity-view","has-divider":"",item:Y(me)},null,8,["item"])]),_:2},1032,["auth-function"]),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canEdit(me)},{default:t.withCtx(()=>[t.createVNode(pe,{"data-testid":"action-entity-edit",item:W(me)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&t.unref(y)?(t.openBlock(),t.createBlock(t.unref(ge.PermissionsWrapper),{key:0,"auth-function":()=>e.canConfigureDynamicOrdering(me)},{default:t.withCtx(()=>[ie(me)?(t.openBlock(),t.createBlock(pe,{key:0,"data-testid":"action-entity-config-dyn-order",item:ie(me)},null,8,["item"])):t.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):t.createCommentVNode("",!0),t.createVNode(t.unref(ge.PermissionsWrapper),{"auth-function":()=>e.canDelete(me)},{default:t.withCtx(()=>[t.createVNode(pe,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:_e=>se(me)},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:2},1032,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!_.value&&e.config.app==="konnect"?{name:"empty-state",fn:t.withCtx(()=>{var me;return[t.createVNode($,{"data-testid":e.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:t.unref(a)("plugins.list.empty_state_v2.description"),title:t.unref(a)("plugins.list.empty_state_v2.title")},t.createSlots({icon:t.withCtx(()=>[t.createVNode(t.unref(Se.PlugIcon),{decorative:""})]),action:t.withCtx(()=>[F.value?(t.openBlock(),t.createBlock(L,{key:0,"data-testid":"entity-create-button",onClick:O},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.AddIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):t.createCommentVNode("",!0),t.createVNode(L,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ae[2]||(ae[2]=_e=>j.$emit("click:learn-more"))},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.BookIcon),{decorative:""}),t.createTextVNode(" "+t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(me=e.config)!=null&&me.isControlPlaneGroup?{name:"default",fn:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("plugins.list.empty_state_v2.group")),1)]),key:"0"}:void 0]),1032,["data-testid","message","title"])]}),key:"0"}:void 0]),1032,["cache-identifier","disable-sorting","empty-state-options","error-message","fetcher","fetcher-cache-key","query","table-headers","title","title-tag","onState"]),t.createVNode(t.unref(ge.EntityToggleModal),{action:U.value.action,"entity-id":U.value.id,"entity-name":U.value.name,"entity-type":t.unref(a)("glossary.plugin"),"on-confirm":T,visible:x.value,onCancel:V,onProceed:V},null,8,["action","entity-id","entity-name","entity-type","visible"]),t.createVNode(t.unref(ge.EntityDeleteModal),{"action-pending":he.value,description:t.unref(a)("delete.description"),"entity-name":oe.value&&(oe.value.instance_name||oe.value.name||oe.value.id),"entity-type":t.unref(ge.EntityTypes).Plugin,error:X.value,title:t.unref(a)("delete.title"),visible:de.value,onCancel:ue,onProceed:fe},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-582a936c"]]),uM={class:"plugin-select-card-wrapper"},fM=["data-testid"],pM={class:"plugin-card-header"},mM={class:"plugin-card-title"},gM={key:0,class:"plugin-card-actions"},hM=["data-testid","title"],yM={key:0,class:"plugin-card-text"},_M={key:0},bM=["title"],fs=ve(t.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},plugin:{type:Object,required:!0},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","custom-plugin-delete"],setup(e,{emit:n}){const o=n,r=e,i=wo.useRouter(),{i18n:{t:a}}=Ke.useI18n(),l=t.computed(()=>r.config.app==="konnect"?r.config.controlPlaneId:""),s=t.computed(()=>!!(!r.plugin.available||r.plugin.disabledMessage)),c=t.computed(()=>!!(m.value&&!p.value&&r.navigateOnClick&&l.value&&(r.canDeleteCustomPlugin||r.canEditCustomPlugin))),u=()=>{i.push(r.config.getCreateRoute(r.plugin.id))},f=()=>{r.navigateOnClick?u():d()},d=()=>{o("plugin-clicked",r.plugin)},p=t.computed(()=>r.plugin.id==="custom-plugin-create"),m=t.computed(()=>r.config.app==="konnect"&&r.plugin.group===H.PluginGroup.CUSTOM_PLUGINS),y=()=>{r.config.app==="konnect"&&o("custom-plugin-delete")},b=(h,w)=>{const _=r.config;r.config.app==="konnect"&&typeof _.getCustomEditRoute=="function"&&_.getCustomEditRoute&&i.push(_.getCustomEditRoute(h,w))},g=()=>{if(!s.value&&r.config.app==="konnect"){const h=r.config;p.value&&h.createCustomRoute?i.push(h.createCustomRoute):m.value&&u()}};return(h,w)=>{const _=t.resolveComponent("KButton"),k=t.resolveComponent("KDropdownItem"),E=t.resolveComponent("KDropdownMenu"),C=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",uM,[t.createVNode(C,{text:e.plugin.disabledMessage},{default:t.withCtx(()=>[t.createElementVNode("a",{class:t.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${e.plugin.id}-card`,role:"button",onClick:w[1]||(w[1]=N=>s.value||m.value?void 0:f())},[t.createElementVNode("div",pM,[t.createElementVNode("div",mM,[t.createElementVNode("span",{class:t.normalizeClass({"non-custom-title":!m.value})},t.toDisplayString(e.plugin.name),3)]),c.value?(t.openBlock(),t.createElementBlock("div",gM,[t.createVNode(E,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:t.withCtx(()=>[t.createVNode(_,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:t.withCtx(()=>[t.createVNode(t.unref(Se.MoreIcon),{size:t.unref(Zk)},null,8,["size"])]),_:1})]),items:t.withCtx(()=>[e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(k,{key:0,"data-testid":"edit-plugin-schema",onClick:w[0]||(w[0]=t.withModifiers(N=>b(e.plugin.name,e.plugin.customPluginType),["stop"]))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.edit")),1)]),_:1})):t.createCommentVNode("",!0),e.canDeleteCustomPlugin?(t.openBlock(),t.createBlock(k,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:t.withModifiers(y,["stop"])},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.delete")),1)]),_:1})):t.createCommentVNode("",!0)]),_:1})])):t.createCommentVNode("",!0)]),t.createElementVNode("div",{class:t.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":e.plugin.name,title:e.plugin.available?e.plugin.name:t.unref(a)("plugins.select.unavailable_tooltip"),onClick:g},[t.createVNode(t.unref(Eo.PluginIcon),{alt:e.plugin.name,class:"plugin-card-icon",name:e.plugin.id,size:55},null,8,["alt","name"]),e.plugin.description||m.value&&!p.value?(t.openBlock(),t.createElementBlock("div",yM,[m.value&&!p.value?(t.openBlock(),t.createElementBlock("p",_M,t.toDisplayString(t.unref(a)("plugins.select.custom_badge_text")),1)):t.createCommentVNode("",!0),e.plugin.description?(t.openBlock(),t.createElementBlock("p",{key:1,class:"plugin-card-text",title:e.plugin.description},t.toDisplayString(e.plugin.description),9,bM)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],10,hM),t.createElementVNode("div",{class:"plugin-card-footer",onClick:g},t.toDisplayString(p.value?t.unref(a)("actions.create_custom"):e.plugin.exists?t.unref(a)("actions.enabled"):t.unref(a)("actions.enable")),1)],10,fM)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),wM=ve(t.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(e,{emit:n}){var y;const o=e,r=n,{i18nT:i,i18n:{t:a}}=Ke.useI18n(),{getMessageFromError:l}=ge.useErrors(),{axiosInstance:s}=ge.useAxios((y=o.config)==null?void 0:y.axiosRequestConfig),c=t.computed(()=>{var b;return d.value?a("delete.plugin_schema_in_use_title"):a("delete.title",{name:((b=o.plugin)==null?void 0:b.name)||a("delete.custom_plugin")})}),u=t.ref(!1),f=t.ref(""),d=t.ref(!1),p=t.computed(()=>{if(o.config.app==="konnect"){const b=o.plugin.customPluginType==="streaming"?We.select[o.config.app].streamingCustomPluginItem:We.select[o.config.app].schemaCustomPluginItem;let g=`${o.config.apiBaseUrl}${b}`;return g=g.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),g=g.replace(/{pluginId}/gi,o.plugin.id),g}return null}),m=async()=>{var b,g,h,w;if(u.value=!0,f.value="",!(!((b=o.plugin)!=null&&b.name)||((g=o.config)==null?void 0:g.app)!=="konnect"))try{p.value&&await s.delete(p.value),r("proceed")}catch(_){const{response:k}=_;(k==null?void 0:k.status)===400&&((w=(h=k.data)==null?void 0:h.message)!=null&&w.includes("plugin schema is currently in use"))?d.value=!0:f.value=l(_)}finally{u.value=!1}};return(b,g)=>{const h=t.resolveComponent("KButton"),w=t.resolveComponent("KModal");return!d.value&&e.plugin?(t.openBlock(),t.createBlock(t.unref(ge.EntityDeleteModal),{key:0,"action-pending":u.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:t.unref(a)("delete.description_custom"),"entity-name":e.plugin.name,"entity-type":t.unref(ge.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:g[0]||(g[0]=_=>b.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):e.plugin?(t.openBlock(),t.createBlock(w,{key:1,"action-button-disabled":u.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",title:c.value,visible:"",onCancel:g[2]||(g[2]=_=>b.$emit("closed"))},{default:t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(t.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:t.withCtx(()=>[t.createElementVNode("strong",null,t.toDisplayString(e.plugin.name),1)]),_:1})])]),"footer-actions":t.withCtx(()=>[t.createElementVNode("div",null,[t.createVNode(h,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:g[1]||(g[1]=_=>b.$emit("closed"))},{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(t.unref(a)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):t.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),kM={class:"custom-plugins-grid"},CM={class:"empty-state-title"},EM={class:"empty-state-description"},ps=310,NM=ve(t.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},canCreateCustomPlugin:{type:Boolean,default:!1},canDeleteCustomPlugin:{type:Boolean,default:!1},canEditCustomPlugin:{type:Boolean,default:!1},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0}},emits:["plugin-clicked","revalidate","delete:success"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ke.useI18n(),{getTallestPluginCardHeight:a,getToggleVisibility:l}=Ke.usePluginHelpers(),s=t.ref(!0),c=E=>{r("plugin-clicked",E)},u=t.computed(()=>{if(o.config.app==="kongManager")return[];const E=JSON.parse(JSON.stringify(o.pluginList))[H.PluginGroup.CUSTOM_PLUGINS]||[];return o.canCreateCustomPlugin&&o.navigateOnClick&&o.config.createCustomRoute?[{id:"custom-plugin-create",name:i("plugins.select.tabs.custom.create.name"),available:!0,group:H.PluginGroup.CUSTOM_PLUGINS,description:i("plugins.select.tabs.custom.create.description")}].concat(E):E}),f=t.ref(!1),d=t.ref(null),p=E=>{f.value=!0,d.value={id:E.id,name:E.name,customPluginType:E.customPluginType}},m=E=>{var C;E&&(r("revalidate"),r("delete:success",((C=d.value)==null?void 0:C.name)||"")),f.value=!1,d.value=null},y=t.ref(ps),b=t.ref(null),g=t.ref(null),h=t.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${y.value}px`}:{}),w=t.ref(!1),_=()=>{y.value=Math.max(a(g.value),ps),k()},k=()=>{var E,C;(E=g.value)!=null&&E.length&&(w.value=l(b.value,(C=g.value)==null?void 0:C.length))};return t.onMounted(async()=>{await t.nextTick(),y.value=Math.max(a(g.value),ps),k(),window==null||window.addEventListener("resize",_)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",_)}),(E,C)=>{const N=t.resolveComponent("KEmptyState"),I=t.resolveComponent("KCollapse");return t.openBlock(),t.createElementBlock("div",kM,[u.value.length?(t.openBlock(),t.createBlock(I,{key:1,modelValue:s.value,"onUpdate:modelValue":C[0]||(C[0]=D=>s.value=D),class:"custom-plugins-collapse","data-testid":`${t.unref(H.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:t.unref(H.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?t.unref(i)("plugins.select.view_more"):t.unref(i)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:b,class:"plugin-card-container",style:t.normalizeStyle(h.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(u.value,(D,G)=>(t.openBlock(),t.createBlock(fs,{key:`plugin-card-${G}`,ref_for:!0,ref_key:"pluginCardRef",ref:g,"can-delete-custom-plugin":e.canDeleteCustomPlugin,"can-edit-custom-plugin":e.canEditCustomPlugin,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:D,onCustomPluginDelete:K=>p(D),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[w.value?void 0:{name:"trigger",fn:t.withCtx(()=>[C[2]||(C[2]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(t.openBlock(),t.createBlock(N,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",CM,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",EM,t.toDisplayString(t.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&d.value?(t.openBlock(),t.createBlock(wM,{key:2,config:e.config,plugin:d.value,onClosed:m,onProceed:C[1]||(C[1]=D=>m(!0))},null,8,["config","plugin"])):t.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),ms=310,Ym=ve(t.defineComponent({__name:"PluginSelectGroup",props:t.mergeModels({config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:t.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(e,{emit:n}){const o=t.useModel(e,"modelValue"),r=e,i=n,{i18n:{t:a}}=Ke.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=Ke.usePluginHelpers(),c=t.ref(ms),u=t.ref(null),f=t.ref(null),d=t.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=t.ref(!1),m=()=>{c.value=Math.max(l(f.value),ms),y()},y=()=>{var b,g;(b=f.value)!=null&&b.length&&(p.value=s(u.value,(g=f.value)==null?void 0:g.length))};return t.onMounted(async()=>{await t.nextTick(),c.value=Math.max(l(f.value),ms),y(),window==null||window.addEventListener("resize",m)}),t.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(b,g)=>{const h=t.resolveComponent("KCollapse");return t.openBlock(),t.createBlock(h,{modelValue:o.value,"onUpdate:modelValue":g[0]||(g[0]=w=>o.value=w),class:"plugins-collapse","data-testid":`${r.name}-collapse`,title:r.name,"trigger-label":o.value?t.unref(a)("plugins.select.view_more"):t.unref(a)("plugins.select.view_less")},t.createSlots({"visible-content":t.withCtx(()=>[t.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:u,class:"plugin-card-container",style:t.normalizeStyle(d.value)},[(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(r.plugins,w=>(t.openBlock(),t.createBlock(fs,{key:`plugin-card-${w.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:e.config,"navigate-on-click":e.navigateOnClick,plugin:w,onPluginClicked:_=>i("plugin-clicked",w)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:t.withCtx(()=>[g[1]||(g[1]=t.createTextVNode("   ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),SM={class:"plugin-select-grid"},vM={class:"empty-state-title"},xM={class:"empty-state-description"},gs=t.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},pluginList:{type:Object,default:()=>({})},navigateOnClick:{type:Boolean,default:!0},highlightedPlugins:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""},hideHighlightedPlugins:{type:Boolean,default:!1}},emits:["plugin-clicked"],setup(e,{emit:n}){const o=e,r=n,{i18n:{t:i}}=Ke.useI18n(),a=t.ref(!1),l=t.ref(bs),s=u=>{r("plugin-clicked",u)},c=t.computed(()=>{const u=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete u[H.PluginGroup.CUSTOM_PLUGINS],u});return(u,f)=>{const d=t.resolveComponent("KEmptyState");return t.openBlock(),t.createElementBlock("div",SM,[Object.keys(c.value).length?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:t.withCtx(()=>[t.createElementVNode("span",vM,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:t.withCtx(()=>[t.createElementVNode("span",xM,t.toDisplayString(t.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(t.openBlock(),t.createBlock(Ym,{key:1,modelValue:a.value,"onUpdate:modelValue":f[0]||(f[0]=p=>a.value=p),config:e.config,name:o.highlightedPluginsTitle||t.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":e.navigateOnClick,plugins:o.highlightedPlugins,onPluginClicked:f[1]||(f[1]=p=>s(p))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):t.createCommentVNode("",!0),(t.openBlock(!0),t.createElementBlock(t.Fragment,null,t.renderList(t.unref(_s),p=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[c.value[p]?(t.openBlock(),t.createElementBlock("div",{key:p},[t.createVNode(Ym,{modelValue:l.value[p],"onUpdate:modelValue":m=>l.value[p]=m,config:e.config,name:p,"navigate-on-click":e.navigateOnClick,plugins:c.value[p]||[],onPluginClicked:f[2]||(f[2]=m=>s(m))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):t.createCommentVNode("",!0)],64))),256))])}}}),AM={class:"kong-ui-entities-plugin-select-form"},IM={class:"plugins-filter-input-container"},PM={key:0},TM={key:3,"aria-live":"polite",class:"plugins-results-container"},OM={"data-testid":"kong-tab"},$M={class:"tab-description"},BM={"data-testid":"custom-tab"},VM={class:"tab-description"},RM=ve(t.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||!e.getCreateRoute)},customPluginSupport:{type:String,default:"none"},canCreateCustomPlugin:{type:Function,required:!1,default:async()=>!0},canDeleteCustomPlugin:{type:Function,required:!1,default:async()=>!0},canEditCustomPlugin:{type:Function,required:!1,default:async()=>!0},navigateOnClick:{type:Boolean,default:!0},availableOnServer:{type:Boolean,default:!0},ignoredPlugins:{type:Array,default:()=>[]},disabledPlugins:{type:Object,default:()=>({})},highlightedPluginIds:{type:Array,default:()=>[]},highlightedPluginsTitle:{type:String,default:""}},emits:["loading","plugin-clicked","delete-custom:success"],setup(e,{emit:n}){var v;const o=e,r=n,i=wo.useRoute(),a=wo.useRouter(),{i18n:{t:l}}=Ke.useI18n(),{pluginMetaData:s}=Ke.usePluginMetaData(),{getMessageFromError:c}=ge.useErrors(),{sortAlpha:u,objectsAreEqual:f}=ge.useHelpers(),d=t.ref(""),p=t.ref(!0),m=t.ref(!1),y=t.ref(""),b=t.ref([]),g=t.ref([]),h=t.ref({}),w=t.ref([]),{axiosInstance:_}=ge.useAxios((v=o.config)==null?void 0:v.axiosRequestConfig),k=t.computed(()=>h.value?Object.entries(h.value).filter(([P])=>P!==H.PluginGroup.CUSTOM_PLUGINS).reduce((P,[,A])=>{for(const Y of A)P[Y.id]=Y;return P},{}):{}),E=t.computed(()=>{var Y;if(!h.value)return{};const P=d.value.toLowerCase(),A=JSON.parse(JSON.stringify(h.value));for(const W in h.value){const ie=((Y=h.value[W])==null?void 0:Y.filter(oe=>oe.name.toLowerCase().includes(P)||oe.id.toLowerCase().includes(P)||oe.group.toLowerCase().includes(P)))||[];ie.length?A[W]=ie:delete A[W]}return A}),C=t.computed(()=>o.highlightedPluginIds.reduce((P,A)=>{const Y=k.value[A];return Y&&P.push(Y),P},[])),N=t.computed(()=>Object.keys(E.value).length>0),I=t.computed(()=>Object.keys(h.value).length>0&&!N.value),D=t.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),G=t.computed(()=>{var A;let P=D.value.length&&((i==null?void 0:i.hash)||((A=D.value[0])==null?void 0:A.hash))||"";return P==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(P="#kong"),P}),K=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...b.value])].filter(P=>!o.ignoredPlugins.includes(P)).filter(P=>o.config.entityType&&(o.config.entityType==="services"&&s[P]&&!s[P].scope.includes(H.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[P]&&!s[P].scope.includes(H.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[P]&&!s[P].scope.includes(H.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[P]&&!s[P].scope.includes(H.PluginScope.CONSUMER))?!1:P).reduce((P,A)=>{var de;const Y=s[A]&&s[A].name||A,W={...s[A],id:A,name:Y,available:b.value.includes(A),disabledMessage:"",group:((de=s[A])==null?void 0:de.group)||H.PluginGroup.CUSTOM_PLUGINS};W.group===H.PluginGroup.CUSTOM_PLUGINS&&(W.customPluginType=g.value.find(he=>he.name===A)?"streaming":"schema"),o.disabledPlugins&&(W.disabledMessage=o.disabledPlugins[A]);const ie=W.group||l("plugins.select.misc_plugins");let oe=P[ie];return oe||(oe=[]),oe.push(W),oe.sort(u("name")),P[ie]=oe,P},{}),S=t.computed(()=>{var A;let P=`${o.config.apiBaseUrl}${We.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(P=((A=o.config.gatewayInfo)==null?void 0:A.edition)==="community"?`${o.config.apiBaseUrl}${We.select[o.config.app].availablePluginsForOss}`:P.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),P}),ne=t.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let P=`${o.config.apiBaseUrl}${We.select[o.config.app].streamingCustomPlugins}`;return P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),P}return null}),x=t.computed(()=>{if(o.config.entityType&&o.config.entityId){let P=`${o.config.apiBaseUrl}${We.list[o.config.app].forEntity}`;return o.config.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(P=P.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),P.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),q=P=>{a.replace({hash:P,query:i.query})};t.watch(()=>o.disabledPlugins,(P,A)=>{!f(P,A)&&!p.value&&(h.value=K())}),t.watch(()=>o.ignoredPlugins,(P,A)=>{!f(P,A)&&!p.value&&(h.value=K())}),t.watch(p,P=>{r("loading",P)});const U=t.ref(!1),te=t.ref(!1),V=t.ref(!1);t.onBeforeMount(async()=>{U.value=await o.canCreateCustomPlugin(),te.value=await o.canEditCustomPlugin(),V.value=await o.canDeleteCustomPlugin()});const T=t.useTemplateRef("filter-input");return t.onMounted(async()=>{var P,A;(A=(P=T.value)==null?void 0:P.input)==null||A.focus();try{const{data:Y}=await _.get(S.value);if(o.config.app==="konnect"){const{names:W}=Y;if(b.value=W||[],ne.value){const{data:ie}=await _.get(ne.value);g.value=ie.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:W}}=Y;b.value=W?Object.keys(W):[]}}catch(Y){m.value=!0,y.value=c(Y)}if(x.value)try{const{data:{data:Y}}=await _.get(x.value);if(Y!=null&&Y.length){const W=Y.reduce((ie,oe)=>(oe.name&&ie.push(oe.name),ie),[]);w.value=w.value.concat(W)}}catch{}m.value||(h.value=K()),p.value=!1}),(P,A)=>{const Y=t.resolveComponent("KInput"),W=t.resolveComponent("KSkeletonBox"),ie=t.resolveComponent("KSkeleton"),oe=t.resolveComponent("KEmptyState"),de=t.resolveComponent("KTooltip"),he=t.resolveComponent("KTabs");return t.openBlock(),t.createElementBlock("div",AM,[t.createElementVNode("div",IM,[t.createVNode(Y,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":A[0]||(A[0]=X=>d.value=X),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:t.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(t.openBlock(),t.createElementBlock("section",PM,[t.createVNode(W,{class:"plugins-skeleton-title",width:"10"}),t.createVNode(ie,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(t.openBlock(),t.createBlock(oe,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(y.value),1)]),_:1})):I.value&&d.value?(t.openBlock(),t.createBlock(oe,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:t.withCtx(()=>[t.createElementVNode("h5",null,t.toDisplayString(t.unref(l)("search.no_results",{filter:d.value})),1)]),_:1})):(t.openBlock(),t.createElementBlock("section",TM,[D.value.length&&e.customPluginSupport!=="none"?(t.openBlock(),t.createBlock(he,{key:0,modelValue:G.value,"onUpdate:modelValue":A[5]||(A[5]=X=>G.value=X),"data-testid":"plugins-tabs",tabs:D.value,onChange:q},t.createSlots({kong:t.withCtx(()=>[t.createElementVNode("div",OM,[t.createElementVNode("p",$M,t.toDisplayString(t.unref(l)("plugins.select.tabs.kong.description")),1),t.createVNode(gs,{config:e.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:A[1]||(A[1]=X=>P.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:t.withCtx(()=>[t.createElementVNode("div",BM,[t.renderSlot(P.$slots,"before-custom-tab-content",{},void 0,!0),t.createElementVNode("p",VM,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.description")),1),t.createVNode(NM,{"can-create-custom-plugin":U.value,"can-delete-custom-plugin":V.value,"can-edit-custom-plugin":te.value,config:e.config,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,"onDelete:success":A[2]||(A[2]=X=>P.$emit("delete-custom:success",X)),onPluginClicked:A[3]||(A[3]=X=>P.$emit("plugin-clicked",X)),onRevalidate:A[4]||(A[4]=()=>h.value=K())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[e.customPluginSupport==="disabled"?{name:"custom-anchor",fn:t.withCtx(()=>[t.createVNode(de,{"max-width":"300",text:t.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:t.withCtx(()=>[t.createElementVNode("div",null,t.toDisplayString(t.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(t.openBlock(),t.createBlock(gs,{key:1,config:e.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":C.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":e.navigateOnClick,"plugin-list":E.value,onPluginClicked:A[6]||(A[6]=X=>P.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-7b1adaaa"]]),DM={class:"datakit-config-card-canvas"},MM={class:"config-card-details-label","data-testid":"datakit-configuration-label"},LM={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},FM={class:"canvas-wrapper"},UM=ve(t.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{}},setup(e){return Pu(e.pluginData),(n,o)=>{const r=t.resolveComponent("KLabel");return t.openBlock(),t.createElementBlock("div",DM,[t.createElementVNode("div",MM,[t.createVNode(r,null,{default:t.withCtx(()=>o[0]||(o[0]=[t.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])),_:1,__:[0]})]),t.createElementVNode("div",LM,[t.createElementVNode("div",FM,[t.createVNode(cs,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])}}}),[["__scopeId","data-v-591ec060"]]),KM={class:"kong-ui-entity-plugin-config-card"},jM={class:"name-cell-wrapper"},GM={class:"info-name"},qM={key:0},zM={key:0},HM={key:0},YM={key:0},WM={key:0},hs="config",XM=ve(t.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:e=>!(!e||!["konnect","kongManager"].includes(e==null?void 0:e.app)||e.app==="konnect"&&!e.controlPlaneId||e.app==="kongManager"&&typeof e.workspace!="string"||!e.entityId||!e.pluginType)},configCardDoc:{type:String,default:"",required:!1},showIdAsLink:{type:Boolean,default:!1},hideTitle:{type:Boolean,default:!1},scopedEntityType:{type:String,required:!1,default:""},scopedEntityId:{type:String,required:!1,default:""},expandPartial:{type:Boolean,default:!0}},emits:["loading","fetch:error","error:fetch-schema","fetch:success","navigation-click"],setup(e,{emit:n}){var C;const o=n,r=e,{i18n:{t:i}}=Ke.useI18n(),a=Ke.usePluginMetaData(),{setFieldType:l}=Ke.usePluginHelpers(),{getPropValue:s}=ge.useHelpers(),c=t.computed(()=>r.config.app==="konnect"),u=t.computed(()=>c.value&&r.config.pluginType==="datakit"),f=t.computed(()=>{var I;let N=(I=We.item[r.config.app])==null?void 0:I[r.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,r.scopedEntityType).replace(/{entityId}/gi,r.scopedEntityId).concat(r.expandPartial?"?expand_partials=true":"");if(c.value){const D=r.expandPartial?"&":"?";N=N.concat(`${D}__ui_data=true`)}return N}),d=t.computed(()=>{var D,G;const N={},I=((D=_.value)==null?void 0:D.fields)||[];for(let K=0;K<I.length;K++){const S=_.value.fields[K],ne=(G=Object.keys(S))==null?void 0:G[0];l(N,ne,S[ne])}return{...N,instance_name:{section:ge.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:ge.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:ge.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:ge.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:ge.ConfigurationSchemaSection.Basic,order:6},protocols:{type:ge.ConfigurationSchemaType.BadgeTag,section:ge.ConfigurationSchemaSection.Basic,order:7}}}),p=t.computed(()=>{var I,D,G;if(!((I=_.value)!=null&&I.fields))return[];const N=(D=_.value.fields)==null?void 0:D.find(K=>{var ne;return((ne=Object.keys(K))==null?void 0:ne[0])===hs});return((G=N==null?void 0:N[hs])==null?void 0:G.fields)||[]}),m=t.computed(()=>{var I,D;const N={};if(!p.value)return N;for(let G=0;G<((I=p.value)==null?void 0:I.length);G++){const K=p.value[G],S=(D=Object.keys(K))==null?void 0:D[0],ne=K[S];ne.required&&(N[S]={order:1}),l(N,S,ne)}return N}),y=N=>{var D;const I=(D=a.pluginMetaData[r.config.pluginType])==null?void 0:D.scope;return I?Object.fromEntries(Object.entries(N).filter(([G,K])=>K?!0:!(G==="service"&&!I.includes(H.PluginScope.SERVICE)||G==="route"&&!I.includes(H.PluginScope.ROUTE)||G==="consumer"&&!I.includes(H.PluginScope.CONSUMER)||G==="consumer_group"&&!I.includes(H.PluginScope.CONSUMER_GROUP)))):N},b=N=>$o(N,"__ui_data"),{getMessageFromError:g}=ge.useErrors(),{axiosInstance:h}=ge.useAxios((C=r.config)==null?void 0:C.axiosRequestConfig),w=t.computed(()=>{var I,D;let N=`${r.config.apiBaseUrl}${We.form[r.config.app].pluginSchema}`;return r.config.app==="konnect"?N=N.replace(/{controlPlaneId}/gi,((I=r.config)==null?void 0:I.controlPlaneId)||""):r.config.app==="kongManager"&&(N=N.replace(/\/{workspace}/gi,(D=r.config)!=null&&D.workspace?`/${r.config.workspace}`:"")),N=N.replace(/{plugin}/gi,r.config.pluginType),N}),_=t.ref({});ge.useSchemaProvider(_);const k=t.ref(!1),E=t.ref("");return t.onBeforeMount(async()=>{k.value=!0;try{const{data:N}=await h.get(w.value);_.value=N}catch(N){E.value=g(N),o("error:fetch-schema",N)}finally{k.value=!1}}),(N,I)=>{const D=t.resolveComponent("KSkeleton"),G=t.resolveComponent("KEmptyState"),K=t.resolveComponent("KCopy");return t.openBlock(),t.createElementBlock("div",KM,[k.value?(t.openBlock(),t.createBlock(D,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):E.value?(t.openBlock(),t.createBlock(G,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:t.withCtx(()=>[t.createElementVNode("h3",null,t.toDisplayString(E.value),1)]),_:1})):(t.openBlock(),t.createBlock(t.unref(ge.EntityBaseConfigCard),{key:2,"code-block-record-formatter":b,config:e.config,"config-card-doc":e.configCardDoc,"config-schema":d.value,"entity-type":t.unref(ge.SupportedEntityType).Plugin,"fetch-url":f.value,"hide-title":e.hideTitle,"plugin-config-key":hs,"plugin-config-schema":m.value,"record-resolver":y,"onFetch:error":I[0]||(I[0]=S=>N.$emit("fetch:error",S)),"onFetch:success":I[1]||(I[1]=S=>N.$emit("fetch:success",S)),onLoading:I[2]||(I[2]=S=>N.$emit("loading",S))},t.createSlots({name:t.withCtx(S=>[t.createElementVNode("div",jM,[t.createVNode(t.unref(Eo.PluginIcon),{class:"plugin-icon",name:t.unref(s)("rowValue",S),size:24},null,8,["name"]),t.createElementVNode("span",GM,t.toDisplayString(t.unref(a).getDisplayName(t.unref(s)("rowValue",S))),1)])]),consumer:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"consumer")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"consumer-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",qM,"–"))]),route:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"route")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"route-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",zM,"–"))]),service:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"service")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"service-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",HM,"–"))]),consumer_group:t.withCtx(S=>[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:t.unref(s)("rowValue",S).id,value:t.unref(s)("rowValue",S).id,type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>N.$emit("navigation-click",t.unref(s)("rowValue",S).id,"consumer_group")},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"consumer-group-copy-uuid",text:t.unref(s)("rowValue",S).id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",YM,"–"))]),partials:t.withCtx(S=>{var ne,x,q,U,te,V,T,v,P;return[t.unref(s)("rowValue",S)?e.showIdAsLink?(t.openBlock(),t.createBlock(t.unref(ge.InternalLinkItem),{key:1,item:{key:(x=(ne=t.unref(s)("rowValue",S))==null?void 0:ne[0])==null?void 0:x.id,value:((U=(q=t.unref(s)("rowValue",S))==null?void 0:q[0])==null?void 0:U.id)+((V=(te=t.unref(s)("rowValue",S))==null?void 0:te[0])!=null&&V.name?"/"+((v=(T=t.unref(s)("rowValue",S))==null?void 0:T[0])==null?void 0:v.name):""),type:t.unref(ge.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var A,Y;return N.$emit("navigation-click",(Y=(A=t.unref(s)("rowValue",S))==null?void 0:A[0])==null?void 0:Y.id,"partial")}},null,8,["item","onNavigationClick"])):(t.openBlock(),t.createBlock(K,{key:2,"copy-tooltip":t.unref(i)("copy.tooltip",{label:t.unref(s)("row",S).label}),"data-testid":"partial-copy-uuid",text:(P=t.unref(s)("rowValue",S))==null?void 0:P[0].id},null,8,["copy-tooltip","text"])):(t.openBlock(),t.createElementBlock("span",WM,"–"))]}),_:2},[u.value?{name:"config-card-item-nodes",fn:t.withCtx(S=>[t.createVNode(UM,{"plugin-data":S.record},null,8,["plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-a5302acb"]]),{usePluginMetaData:ZM,useProvideExperimentalFreeForms:JM}=Ke;Object.defineProperty(xe,"PluginGroup",{enumerable:!0,get:()=>H.PluginGroup}),Object.defineProperty(xe,"PluginScope",{enumerable:!0,get:()=>H.PluginScope}),Object.defineProperty(xe,"PluginIcon",{enumerable:!0,get:()=>Eo.PluginIcon}),Object.defineProperty(xe,"getPluginIconURL",{enumerable:!0,get:()=>Eo.getPluginIconURL}),xe.EXPERIMENTAL_FREE_FORM_PROVIDER=ka,xe.EntityTypeIdField=hn,xe.FEATURE_FLAGS=Bo,xe.PLUGIN_GROUPS_COLLAPSE_STATUS=bs,xe.PluginConfigCard=XM,xe.PluginForm=tM,xe.PluginGroupArray=_s,xe.PluginList=dM,xe.PluginPartialType=yr,xe.PluginSelect=RM,xe.PluginSelectCard=fs,xe.PluginSelectGrid=gs,xe.TOASTER_PROVIDER=Mc,xe.pluginEndpoints=We,xe.usePluginMetaData=ZM,xe.useProvideExperimentalFreeForms=JM,Object.defineProperty(xe,Symbol.toStringTag,{value:"Module"})});