@kong-ui-public/entities-plugins 9.177.0 → 9.177.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(function(xe,e){typeof exports=="object"&&typeof module<"u"?e(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/kongponents"),require("@kong/icons"),require("@vueuse/core"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("@kong-ui-public/monaco-editor"),require("@kong-ui-public/monaco-editor/dist/runtime/style.css"),require("@vue-flow/core"),require("@vue-flow/background"),require("@vue-flow/controls"),require("@vue-flow/controls/dist/style.css"),require("@vue-flow/core/dist/style.css"),require("@vue-flow/core/dist/theme-default.css"),require("shiki"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@kong/kongponents","@kong/icons","@vueuse/core","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@kong-ui-public/monaco-editor","@kong-ui-public/monaco-editor/dist/runtime/style.css","@vue-flow/core","@vue-flow/background","@vue-flow/controls","@vue-flow/controls/dist/style.css","@vue-flow/core/dist/style.css","@vue-flow/core/dist/theme-default.css","shiki","zod","@kong-ui-public/entities-plugins-icon"],e):(xe=typeof globalThis<"u"?globalThis:xe||self,e(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.Kongponents,xe.KongIcons,xe.core$1,xe.entitiesRedisConfigurations,null,xe.monaco,xe.monacoEditor,null,xe.core$2,xe.background,xe.controls,null,null,null,xe.shiki,xe.zod,xe.entitiesPluginsIcon))})(this,(function(xe,e,le,So,hn,it,Y,Le,Qn,jS,Oe,me,Xe,ri,vS,_d,ai,KS,ze,bd,ii,US,qS,GS,kd,M,yn){"use strict";function wd(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const a=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(n,o,a.get?a:{enumerable:!0,get:()=>t[o]})}}return n.default=t,Object.freeze(n)}const Ao=wd(_d),ct={actions:{cancel:"Cancel",view_configuration:"View configuration",create:"New plugin",create_custom:"Create",configure:"Configure",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",disabled:"Disabled",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}",loading_spinner:"Loading..."},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON",deck:"decK"},delete:{title:"Delete a plugin",custom_title:"Delete {name}",custom_plugin:"Custom plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to delete custom plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins",search_plugins:"Search plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},labels:{new:"New"},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied to",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer group"},id:"ID",name:"Name",instance_name:"Instance name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a new plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here.",learn_more:"Learn more"}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service."},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."},"ai-lakera-guard":{name:"AI Lakera Guard",description:"Audit and enforce safety policies on LLM requests and responses using the AI AWS Lakera plugin before they reach upstream LLMs."},"ai-a2a-proxy":{name:"AI A2A Proxy",description:"Securely proxy A2A Agents, with real-time RPC tracing and monitoring."},"ai-custom-guardrail":{name:"AI Custom Guardrail",description:"Integrate with any 3rd-party Guardrail service, with customizable enforcement modes — choose whether violations block, log, or allow traffic to proceed."},"metering-and-billing":{name:"Metering & Billing",description:"Meter API requests and AI token usage for usage-based billing. Supports flexible customer identification, custom pricing dimensions, and fine-grained traffic filtering. Integrates natively with Konnect Metering & Billing."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other plugins",show_all:"Show all",view_more:"View more",view_less:"View less",filter:{title:"Filter plugins",featured:"Featured",type:"Type",clear:"Clear"},list:{table_headers:{name:"Plugin",description:"Description"}},tabs:{kong:{title:"Kong plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No plugins",empty_description:"No plugins are available."},custom:{title:"Custom plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom plugins are not available with this gateway. Create a hybrid or dedicated cloud gateway to leverage custom plugins.",empty_title:"No custom plugins",empty_description:"No custom plugins have been added to this control plane.",create:{name:"Custom plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted plugins"}},form:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is enabled",off_text:"This plugin is disabled"},plugin_status:{label:"Plugin status",text_on:"Enabled",text_off:"Disabled"},instance_name:{label:"Name",placeholder:"Enter a unique name",help:"A custom name for this plugin instance to help with identifying from the list view."},condition:{label:"Execution condition",placeholder:"Enter an expression",tooltip:"An expression used for conditional control over plugin execution. If the expression evaluates to true during the request flow, the plugin is executed; otherwise, it is skipped.",help:{learn:"Learn more",about:"{link} about plugin conditions."}},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{label:"Tags",help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Tag1, Tag2, Tag3"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",disable_global_radio:"The plugin is set to 'scoped' by default. To apply a plugin globally, please navigate to the global plugin list page.",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The gateway service to which this plugin configuration will apply",placeholder:"Select a gateway service",plural:"Gateway services"},route:{label:"Select a route",help:"The route that this plugin configuration will target",placeholder:"Select a route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The consumer that this plugin configuration will target",placeholder:"Select a consumer",plural:"Consumers"},consumer_group:{label:"Select a consumer group",help:"The consumer group that this plugin configuration will target",placeholder:"Select a consumer group",plural:"Consumer groups"}},grouping:{plugin_configuration:{title:"Plugin configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"Show additional settings",hide:"Hide additional settings"}},field_rules:{at_least_one_of:"At least one of the following values is required: {parameters}.",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"These values must be used together: {parameters}.",mutually_exclusive:"Only one of these values can be used: {parameters}.",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{plugin_scope:{title:"Plugin scope",description:"Choose whether this plugin applies to all traffic (global) or is scoped to a specific service, route, or consumer."},general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Set the plugin's behavior by defining its configuration settings."},plugin_general_info:{description:"Add a name or tags to help you identify and manage this plugin later."},code_mode:{title:"Code editor",description:"Configure this plugin by using YAML configuration."}}},"free-form":{editor_mode:{visual:"Visual editor",code:"Code editor"},"ai-mcp-proxy":{default_acl_item_label:"Default ACL #{index}",tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request callout",by_lua_placeholder:"Enter Lua script here..."},datakit:{plugin_config:{title:"Flow editor"},description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Build flows visually with a drag-and-drop editor for Datakit. Visualize node connections, inputs, and outputs as you design.",description_example:"Start with a use case:",detected_config_format:"Detected {format} configuration. Do you want to convert it to Datakit configuration?",detected_config_format_title:"Convert configuration",detected_config_format_confirm:"Convert",examples:{authenticate:"Authenticate Kong to a third-party service",vault:"Authenticate to a third-party service using vault secrets",combine:"Combine multiple API responses",cache:"Conditionally fetch or store cache data",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow editor",name:"Datakit flow editor",cta:"Go to flow editor",disabled_tooltip:"The flow editor is unavailable due to critical configuration errors or features not supported in the flow editor:<br/><code>{reason}</code>",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",canvas_panel:{request:"Request",response:"Response",node_count_plural:"{count} nodes",node_count_singular:"1 node"},panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"},cache:{title:"Cache configuration",add_button:"Add cache configuration",strategy_options:{memory:"Memory",redis:"Redis"},select_redis_configuration:"Select a shared Redis configuration",inline_config:"Inline config",inline_config_preview:"You are using a dedicated Redis configuration, This is a preview of your current setup, please edit it in code editor"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",remove_from_branch:"Remove from branch",delete:"Delete",view_docs:"View docs",done:"Done"},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The <code>jq</code> node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway-specific data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Configure static input values ahead of time",description:"Emits static values to be used as inputs for other nodes. The <code>static</code> node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Execute nodes based on matching input conditions",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Store and fetch cached data",description:"Store data into cache and fetch cached data from cache."},xml_to_json:{name:"xml_to_json",summary:"Transform XML to JSON",description:"Transform XML to JSON."},json_to_xml:{name:"json_to_xml",summary:"Transform JSON to XML",description:"Transform JSON to XML."},jwt_decode:{name:"jwt_decode",summary:"Decode JWT headers and claims",description:"Parse a JWT without verifying its signature."},jwt_sign:{name:"jwt_sign",summary:"Create and sign JWTs",description:"Generate a signed JWT from configured claims and a signing key."},jwt_verify:{name:"jwt_verify",summary:"Verify JWT signature and claims",description:"Verify a JWT signature and validate claims such as exp, nbf, iss, and aud."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},jwt:{static_claims:{label:"Static claims",help:"Enter a JSON object. It will be stored as the node's static claims map.",errors:{invalid_json_object:"Static claims must be a valid JSON object"}}},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {minLength} and {maxLength} characters",reserved_node_name:'"{nodeName}" is a reserved node name',attributes_required:"Provide at least one of attributes_block_name or attributes_name_prefix"}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved."},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2",foreign_placeholder:"Enter a UUID of {entity}"}},redis:{title:"Redis configuration",shared_configuration:{label:"Shared configuration",description:"Select an existing shared Redis configuration or create a new one. Changes to this configuration automatically apply to all associated plugins.",title:"Shared Redis configuration",error:"Fetching shared Redis configurations failed."},dedicated_configuration:{label:"Dedicated configuration",description:"Create a Redis configuration that is used only by this plugin. Changes won’t affect other plugins."},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last updated at",type_label:"Redis type"}}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current control plane",cp_group_label:"Control plane",realm_group_label:"Realms (can only select one)"}},sp:{window_type:{label:"Rate limit window type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error message",code_placeholder:"Code message",message_placeholder:"Error message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
1
|
+
(function(xe,e){typeof exports=="object"&&typeof module<"u"?e(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/kongponents"),require("@kong/icons"),require("@vueuse/core"),require("@kong-ui-public/entities-redis-configurations"),require("@kong-ui-public/entities-redis-configurations/dist/style.css"),require("monaco-editor"),require("@kong-ui-public/monaco-editor"),require("@kong-ui-public/monaco-editor/dist/runtime/style.css"),require("@vue-flow/core"),require("@vue-flow/background"),require("@vue-flow/controls"),require("@vue-flow/controls/dist/style.css"),require("@vue-flow/core/dist/style.css"),require("@vue-flow/core/dist/theme-default.css"),require("shiki"),require("zod"),require("@kong-ui-public/entities-plugins-icon")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/entities-shared","marked","vue-router","@kong-ui-public/i18n","@kong-ui-public/entities-plugins-metadata","@kong-ui-public/forms","@kong-ui-public/entities-vaults","@kong-ui-public/entities-vaults/dist/style.css","@kong/kongponents","@kong/icons","@vueuse/core","@kong-ui-public/entities-redis-configurations","@kong-ui-public/entities-redis-configurations/dist/style.css","monaco-editor","@kong-ui-public/monaco-editor","@kong-ui-public/monaco-editor/dist/runtime/style.css","@vue-flow/core","@vue-flow/background","@vue-flow/controls","@vue-flow/controls/dist/style.css","@vue-flow/core/dist/style.css","@vue-flow/core/dist/theme-default.css","shiki","zod","@kong-ui-public/entities-plugins-icon"],e):(xe=typeof globalThis<"u"?globalThis:xe||self,e(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.Kongponents,xe.KongIcons,xe.core$1,xe.entitiesRedisConfigurations,null,xe.monaco,xe.monacoEditor,null,xe.core$2,xe.background,xe.controls,null,null,null,xe.shiki,xe.zod,xe.entitiesPluginsIcon))})(this,(function(xe,e,le,So,hn,it,Y,Le,Qn,jS,Oe,me,Xe,ri,KS,_d,ai,vS,ze,bd,ii,US,qS,GS,kd,M,yn){"use strict";function wd(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const o in t)if(o!=="default"){const a=Object.getOwnPropertyDescriptor(t,o);Object.defineProperty(n,o,a.get?a:{enumerable:!0,get:()=>t[o]})}}return n.default=t,Object.freeze(n)}const Ao=wd(_d),ct={actions:{cancel:"Cancel",view_configuration:"View configuration",create:"New plugin",create_custom:"Create",configure:"Configure",copy_id:"Copy ID",copy_json:"Copy JSON",edit:"Edit",enable:"Enable",enabled:"Enabled",delete:"Delete",disabled:"Disabled",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}",loading_spinner:"Loading..."},view_configuration:{title:"Configuration",message:"Export configurations for core Kong Gateway objects, like services, routes, and plugins, to either YAML, JSON, or Terraform. This allows for straightforward importing into APIOps tools like decK with YAML, Insomnia and cURL with JSON, or Terraform products with Terraform.",yaml:"YAML",terraform:"Terraform",json:"JSON",deck:"decK"},delete:{title:"Delete a plugin",custom_title:"Delete {name}",custom_plugin:"Custom plugin",description:"This action cannot be reversed.",description_custom:"Please ensure this plugin is not in use. This action cannot be reversed.",plugin_schema_in_use_title:"Unable to delete custom plugin",plugin_schema_in_use_message:"The custom plugin schema {name} is being used in this control plane, please delete any existing instances before you delete this schema.",confirmModalText1:"Are you sure you want to delete",confirmModalText2:"Please ensure this plugin is not in use. This delete action cannot be reversed.",confirm_text:"Type {name} to confirm your action",success_message:"Successfully deleted custom plugin {name}"},copy:{success:"Copied {val} to clipboard",success_brief:"Successfully copied to clipboard",tooltip:"Copy {label}",success_tooltip:"Copied!"},errors:{general:"Plugins could not be retrieved",delete:"The plugin could not be deleted at this time.",copy:"Failed to copy to clipboard",load_results:"Error loading available plugins",load_schema:"Error loading plugin schema"},search:{placeholder:{konnect:"Filter by name",exact:"Filter by exact instance name or ID",kongManager:"Filter by exact instance name or ID",select:"Filter plugins",search_plugins:"Search plugins"},filter:{field:{enabled:"Enabled"}},no_results:'No results found for "{filter}"'},labels:{new:"New"},plugins:{title:"Plugins",list:{toolbar_actions:{new_plugin:"New plugin"},table_headers:{applied_to:"Applied to",applied_to_badges:{consumer:"Consumer",global:"Global",route:"Route",service:"Service",consumer_group:"Consumer group"},id:"ID",name:"Name",instance_name:"Instance name",ordering:"Ordering",ordering_badge:{dynamic:"Dynamic",static:"Static"},enabled:"Enabled",tags:"Tags"},empty_state:{title:"Configure a new plugin",description:"Plugins are used to extend Kong functionality."},empty_state_v2:{title:"Configure your first plugin",description:"Plugins extend gateways functionalities, offering features like authentication, rate limiting, and request transformations to enhance security and performance.",create_cta:"New plugin",group:"Plugins created in gateways within this group will automatically appear here.",learn_more:"Learn more"}},meta:{"basic-auth":{name:"Basic Authentication",credential_name:"Basic Auth Credential",description:"Add Basic Authentication to your Services"},"hmac-auth":{name:"HMAC Authentication",credential_name:"HMAC Credential",description:"Add HMAC Authentication to your Services"},"jwt-signer":{name:"JWT Signer",description:"Verify and (re-)sign one or two tokens in a request"},jwt:{name:"JWT",credential_name:"JWT Credential",description:"Verify and authenticate JSON Web Tokens"},"key-auth":{name:"Key Authentication",credential_name:"Key Auth Credential",description:"Add key authentication to your Services"},"key-auth-enc":{name:"Key Authentication Encrypted",credential_name:"Key Auth Encrypted",description:"Add key authentication to your Services with an encrypted token"},"ldap-auth-advanced":{name:"LDAP Authentication Advanced",description:"Integrate Kong with a LDAP server"},"ldap-auth":{name:"LDAP Authentication",description:"Integrate Kong with a LDAP server"},"oauth2-introspection":{name:"OAuth 2.0 Introspection",description:"Integrate Kong with a third-party OAuth 2.0 Authorization Server"},oauth2:{name:"OAuth 2.0 Authentication",credential_name:"OAuth 2.0 Application",description:"Add OAuth 2.0 authentication to your Services"},"openid-connect":{name:"OpenID Connect",description:"Integrate Kong with a third-party OpenID Connect 1.0 Provider"},"mtls-auth":{name:"Mutual TLS Authentication",description:"Secure routes and services with client certificate and mutual TLS authentication"},"vault-auth":{name:"Vault Authentication",description:"Secure routes and services with an access token and secret token, stored securely via Vault"},"bot-detection":{name:"Bot Detection",description:"Detect and clock bots or custom clients"},cors:{name:"CORS",description:"Allow developers to make requests from the browser"},"ip-restriction":{name:"IP Restriction",description:"Whitelist or blacklist IPs that can make requests"},opa:{name:"OPA",description:"Authorize requests against Open Policy Agent"},"kubernetes-sidecar-injector":{name:"Kubernetes Sidecar Injector",description:"This plugin will inject Kong dataplane nodes and form a service mesh on top of Kubernetes"},"request-validator":{name:"Request Validator",description:"Validate requests before they reach their upstream Service."},acl:{name:"ACL",credential_name:"Access Control Group",description:"Control which consumers can access Services"},canary:{name:"Canary Release",description:"Methodically roll out software changes to a subset of users"},"forward-proxy":{name:"Forward Proxy",description:"Allow Kong to connect to intermediary transparent HTTP proxies"},"proxy-cache":{name:"Proxy Caching",description:"Cache and serve commonly requested responses in Kong"},"proxy-cache-advanced":{name:"Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"graphql-proxy-cache-advanced":{name:"GraphQL Proxy Caching Advanced",description:"Cache and serve commonly requested responses in Kong"},"rate-limiting-advanced":{name:"Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},"rate-limiting":{name:"Rate Limiting",description:"Rate-limit how many HTTP requests a developer can make"},"graphql-rate-limiting-advanced":{name:"GraphQL Rate Limiting Advanced",description:"Rate-limit how many HTTP requests a developer can make"},mocking:{name:"Mocking",description:"Provide mock endpoints to test your APIs in development against your services"},"request-size-limiting":{name:"Request Size Limiting",description:"Block requests with bodies greater than a specific size"},"request-termination":{name:"Request Termination",description:"Terminate all requests with a specific response"},"response-ratelimiting":{name:"Response Rate Limiting",description:"Rate-Limiting based on a custom response header value"},"route-by-header":{name:"Route by Header",description:"Route requests based on request headers"},"ai-proxy":{name:"AI Proxy",description:"Directly call a configured LLM, with mediated security and tuning parameters, and using standardised Kong request and response formats."},"ai-prompt-decorator":{name:"AI Prompt Decorator",description:"Prepend and append chat prompts to AI Proxy plugin LLM requests."},"ai-prompt-template":{name:"AI Prompt Template",description:"Define a set of templates, containing string variable placeholders, that can be consumed by users when used with the AI Proxy plugin."},"ai-prompt-guard":{name:"AI Prompt Guard",description:"Define a set of valid, and a set of invalid, regular expression patterns when calling LLM models with the AI Proxy plugin."},"ai-request-transformer":{name:"AI Request Transformer",description:"Use an LLM to transform API request from a user, before sending to the upstream service."},"ai-response-transformer":{name:"AI Response Transformer",description:"Use an LLM to transform API responses from the upstream service, before returning to the user."},"ai-rate-limiting-advanced":{name:"AI Rate Limiting Advanced",description:"Provides rate limiting for the providers used by any AI plugins."},"ai-azure-content-safety":{name:"AI Azure Content Safety",description:"Allows checking and auditing of AI-Proxy plugin messages, using Azure Cognitive Services, before proxying to upstream large-language model."},"aws-lambda":{name:"AWS Lambda",description:"Invoke and manage AWS Lambda functions from Kong"},"azure-functions":{name:"Azure Functions",description:"Invoke Azure functions"},openwhisk:{name:"OpenWhisk",description:"Invoke and manage OpenWhisk actions from Kong"},"pre-function":{name:"Kong Functions (Pre-Plugins)",description:"Add and manage custom lua functions to run before other plugins"},"post-function":{name:"Kong Functions (Post-Plugins)",description:"Add and manage custom lua functions to run after other plugins"},datadog:{name:"Datadog",description:"Visualize metrics on Datadog"},prometheus:{name:"Prometheus",description:"Export performance metrics to Prometheus"},zipkin:{name:"Zipkin",description:"Propagate zipkin spans and report spans to a zipkin server"},collector:{name:"Collector",description:"Automate spec-driven development & anomaly detection (Early Access)"},"response-transformer-advanced":{name:"Response Transformer Advanced",description:"Transform the response sent by the upstream server on the fly on Kong, before returning the response to the client."},"correlation-id":{name:"Correlation ID",description:"Correlate requests and responses using a unique ID"},"request-transformer-advanced":{name:"Request Transformer Advanced",description:"Use powerful regular expressions, variables and templates to transform API requests"},"request-transformer":{name:"Request Transformer",description:"Modify the request before hitting the upstream server"},"response-transformer":{name:"Response Transformer",description:"Modify the upstream response before returning it to the client"},"route-transformer-advanced":{name:"Route Transformer Advanced",description:"Transforms the routing on the fly in Kong, changing the upstream server/port/path to hit"},"kafka-upstream":{name:"Kafka Upstream",description:"Transform requests into Kafka messages in a topic"},degraphql:{name:"DeGraphQL",description:"Transform a GraphQL upstream into a REST API"},"exit-transformer":{name:"Exit Transformer",description:"Customize Kong exit responses sent downstream"},jq:{name:"jq",description:"Transform JSON objects included in API requests or responses using jq programs"},"file-log":{name:"File Log",description:"Append request and response data to a log file on disk"},"http-log":{name:"HTTP Log",description:"Send request and response logs to an HTTP server"},loggly:{name:"Loggly",description:"Send request and response logs to Loggly"},"statsd-advanced":{name:"StatsD Advanced",description:"Send traffic and Kong performance metrics to StatsD"},statsd:{name:"StatsD",description:"Send request and response logs to StatsD"},syslog:{name:"Syslog",description:"Send request and response logs to Syslog"},"tcp-log":{name:"TCP Log",description:"Send request and response logs to a TCP server"},"udp-log":{name:"UDP Log",description:"Send request and response logs to a UDP server"},"kafka-log":{name:"Kafka Log",description:"Publish request and response logs to a Kafka topic"},session:{name:"Session",description:"Sessions for Kong authentication"},"upstream-tls":{name:"Upstream TLS",description:"Enable TLS on upstream traffic by providing Kong with a list of trusted certificates."},"application-registration":{name:"Portal Application Registration",description:"Allow portal developers to register applications against services"},"konnect-application-auth":{name:"Konnect Application Auth",description:"Allow Konnect portal developers to register applications against services"},acme:{name:"ACME",description:"Let's Encrypt and ACMEv2 integration with Kong"},"grpc-gateway":{name:"gRPC Gateway",description:"Access gRPC services through HTTP REST"},"grpc-web":{name:"gRPC Web",description:"Allow browser clients to call gRPC services"},"upstream-timeout":{name:"Upstream Timeout",description:"Configure read, send and connect timeouts to an upstream"},opentelemetry:{name:"OpenTelemetry",description:"Propagate distributed tracing spans and report low-level spans to a OTLP-compatible server"},"websocket-validator":{name:"WebSocket Validator",description:"Validate individual WebSocket messages against to a user-specified schema before proxying them"},"websocket-size-limit":{name:"WebSocket Size Limit",description:"Allows operators to specify a maximum size for incoming WebSocket messages"},"tls-metadata-headers":{name:"TLS Metadata Headers",description:"Detects client certificates in requests, retrieves the TLS metadata, and proxies this metadata via HTTP headers"},"tls-handshake-modifier":{name:"TLS Handshake Modifier",description:"Requests the client certificate and if it exists, makes it available to other plugins acting on the request"},"oas-validation":{name:"OAS Validation",description:"Validate HTTP requests and responses based on an API Specification."},"jwe-decrypt":{name:"Kong JWE Decrypt",description:"The Kong JWE Decrypt plugin makes it possible to decrypt an inbound token(JWE) in a request."},"xml-threat-protection":{name:"XML Threat Protection",description:"Reduce the risk of XML attacks by checking the structure of XML payloads."},saml:{name:"SAML",description:"Security Assertion Markup Language (SAML) is an open standard for exchanging authentication and authorization data between an identity provider and a service provider."},"app-dynamics":{name:"AppDynamics",description:"This plugin integrates Kong with the AppDynamics APM platform so that proxy requests handled by Kong can be identified and analyzed in AppDynamics."},"json-threat-protection":{name:"JSON Threat Protection",description:"Apply size checks on JSON payload and minimize risk of content-level attacks"},"standard-webhooks":{name:"Standard Webhooks",description:"Validate incoming webhooks adhere to the Standard Webhooks specification, to which Kong is a contributor"},"ai-proxy-advanced":{name:"AI Proxy Advanced",description:"Route across different LLMs and models using advanced load balancing algorithms, including semantic routing."},"ai-semantic-cache":{name:"AI Semantic Cache",description:"Semantically cache AI requests to any LLM to reduce latency, improve end-user experiences and optimize GenAI costs."},"ai-semantic-prompt-guard":{name:"AI Semantic Prompt Guard",description:"Semantically and intelligently create allow and deny lists of topics that can be requested across every LLM."},"header-cert-auth":{name:"Header Certificate Authentication",description:"Authenticate clients with MTLS certificate passed in header by a WAF or load balancer"},"upstream-oauth":{name:"Upstream OAuth",description:"Configure Kong to obtain a OAuth2 token to consume an upstream API"},confluent:{name:"Confluent",description:"Streamlines integration with Confluent Cloud and transforms requests into messages published to a Confluent topic."},"service-protection":{name:"Service Protection",description:"Prevent abuse and protect services with absolute limits on the number of requests reaching the service."},"injection-protection":{name:"Injection Protection",description:"Protect against injection attacks by rejecting requests that match common injections patterns."},redirect:{name:"Redirect",description:"Redirect incoming requests to a new URL"},"kafka-consume":{name:"Kafka Consume",description:"Consume messages from Kafka topics over HTTP protocols."},"confluent-consume":{name:"Confluent Consume",description:"Consume messages from Confluent Kafka topics over HTTP protocols"},"request-callout":{name:"Request Callout",description:"Callout to third party APIs as part of request processing."},"ai-sanitizer":{name:"AI Sanitizer",description:"Sanitize personal or sensitive information from prompts before sending to LLM."},"ai-rag-injector":{name:"AI RAG Injector",description:"Attach contextual knowledge from vector databases with flexible template to LLM prompts."},datakit:{name:"Datakit",description:"Datakit is a workflow engine for working with external APIs."},"ai-prompt-compressor":{name:"AI Prompt Compressor",description:"The AI Prompt Compressor reduces costs associated with LLMs by compressing prompts."},"solace-upstream":{name:"Solace Upstream",description:"Transform requests into Solace messages in a Solace queue or topic."},"ai-aws-guardrails":{name:"AI AWS GuardRails",description:"The AI AWS GuardRails enables enforcement of introspection with the AWS GuardRails service for all requests processed by the AI Proxy plugin."},ace:{name:"Konnect Access Control Enforcement",description:"Enable Developer Self-Service for Konnect Dev Portals."},"solace-consume":{name:"Solace Consume",description:"Consume messages from Solace and make them available through HTTP endpoints."},"solace-log":{name:"Solace Log",description:"Publish request and response logs to a Solace topic."},"ai-llm-as-judge":{name:"AI LLM Judge",description:"Evaluate LLM responses with an external LLM service and use accuracy scores to drive dynamic load balancing for `llm/v1/chat` requests."},"ai-mcp-proxy":{name:"AI MCP Proxy",description:"Convert APIs into MCP tools, proxy MCP servers, expose multiple MCP tools, and observe MCP traffic in real time."},"ai-gcp-model-armor":{name:"AI GCP Model Armor",description:"Audit and validate AI Proxy messages with Google Cloud Model Armor before forwarding them to an upstream LLM."},"ai-mcp-oauth2":{name:"AI MCP OAuth2",description:"Secure MCP server access with OAuth2 authentication."},"ai-semantic-response-guard":{name:"AI Semantic Response Guard",description:"Permit or block prompts based on semantic similarity to known LLM responses, preventing misuse of `llm/v1/chat` or `llm/v1/completions` requests."},"ai-lakera-guard":{name:"AI Lakera Guard",description:"Audit and enforce safety policies on LLM requests and responses using the AI AWS Lakera plugin before they reach upstream LLMs."},"ai-a2a-proxy":{name:"AI A2A Proxy",description:"Securely proxy A2A Agents, with real-time RPC tracing and monitoring."},"ai-custom-guardrail":{name:"AI Custom Guardrail",description:"Integrate with any 3rd-party Guardrail service, with customizable enforcement modes — choose whether violations block, log, or allow traffic to proceed."},"metering-and-billing":{name:"Metering & Billing",description:"Meter API requests and AI token usage for usage-based billing. Supports flexible customer identification, custom pricing dimensions, and fine-grained traffic filtering. Integrates natively with Konnect Metering & Billing."}},fields:{service:"Service ID",route:"Route ID",consumer:"Consumer ID",consumer_group:"Consumer group ID"},select:{custom_badge_text:"This plugin is data plane node specific",unavailable_tooltip:"This plugin is not available",already_exists:"This plugin is already applied to this resource",misc_plugins:"Other plugins",show_all:"Show all",view_more:"View more",view_less:"View less",filter:{title:"Filter plugins",featured:"Featured",type:"Type",clear:"Clear"},list:{table_headers:{name:"Plugin",description:"Description"}},tabs:{kong:{title:"Kong plugins",description:"Kong plugins are bundled by default with Kong Gateway and are available across all control planes.",empty_title:"No plugins",empty_description:"No plugins are available."},custom:{title:"Custom plugins",description:"Custom plugins will be available in this control plane only.",disabled_tooltip:"Custom plugins are not available with this gateway. Create a hybrid or dedicated cloud gateway to leverage custom plugins.",empty_title:"No custom plugins",empty_description:"No custom plugins have been added to this control plane.",create:{name:"Custom plugin",description:"Upload schema file to create custom plugin"}}},highlighted_plugins:{title:"Highlighted plugins"}},form:{disable_data_retrieving:"You do not have permission to select {scope}",disable_source_scope_change:"Changing the {scope} is not allowed when configuring a plugin under it",no_selection:"No selection...",fields:{enabled:{label:"Enabled",on_text:"This plugin is enabled",off_text:"This plugin is disabled"},plugin_status:{label:"Plugin status",text_on:"Enabled",text_off:"Disabled"},instance_name:{label:"Name",placeholder:"Enter a unique name",help:"A custom name for this plugin instance to help with identifying from the list view."},condition:{label:"Execution condition",placeholder:"Enter an expression",tooltip:"An expression used for conditional control over plugin execution. If the expression evaluates to true during the request flow, the plugin is executed; otherwise, it is skipped.",help:{learn:"Learn more",about:"{link} about plugin conditions."}},protocols:{label:"Protocols",placeholder:"Select valid protocols for the plugin",placeholderWithDefaultValues:"Select valid protocols for the plugin. Default protocols: {protocols}",help:"A list of the request protocols that will trigger this plugin. The default value, as well as the possible values allowed on this field, may change depending on the plugin type."},tags:{label:"Tags",help:"An optional set of strings for grouping and filtering, separated by commas.",placeholder:"Tag1, Tag2, Tag3"}},scoping:{label:"Scoped",placeholder:"Search by name or UUID",disable_global_radio:"The plugin is set to 'scoped' by default. To apply a plugin globally, please navigate to the global plugin list page.",global:{label:"Global",help:"All services, routes, and consumers"},gateway_service:{label:"Select a gateway service",help:"The gateway service to which this plugin configuration will apply",placeholder:"Select a gateway service",plural:"Gateway services"},route:{label:"Select a route",help:"The route that this plugin configuration will target",placeholder:"Select a route",plural:"Routes"},consumer:{label:"Select a consumer",help:"The consumer that this plugin configuration will target",placeholder:"Select a consumer",plural:"Consumers"},consumer_group:{label:"Select a consumer group",help:"The consumer group that this plugin configuration will target",placeholder:"Select a consumer group",plural:"Consumer groups"}},grouping:{plugin_configuration:{title:"Plugin configuration",description:"Configuration parameters for this plugin. View advanced parameters for extended configuration.",empty:"This plugin does not have required parameters."},advanced_parameters:{view:"Show additional settings",hide:"Hide additional settings"}},field_rules:{at_least_one_of:"At least one of the following values is required: {parameters}.",only_one_of:"Exactly one of these parameters is required: {parameters}",mutually_required:"These values must be used together: {parameters}.",mutually_exclusive:"Only one of these values can be used: {parameters}.",only_one_of_mutually_required:"Exactly one of the following parameter combinations is required (all parameters within a chosen combination are required):"},sections:{plugin_scope:{title:"Plugin scope",description:"Choose whether this plugin applies to all traffic (global) or is scoped to a specific service, route, or consumer."},general_info:{title:"General information",description:"Add details to help identify and manage your plugin."},plugin_config:{title:"Plugin configuration",description:"Set the plugin's behavior by defining its configuration settings."},plugin_general_info:{description:"Add a name or tags to help you identify and manage this plugin later."},code_mode:{title:"Code editor",description:"Configure this plugin by using YAML configuration."}}},"free-form":{editor_mode:{visual:"Visual editor",code:"Code editor"},"ai-mcp-proxy":{default_acl_item_label:"Default ACL #{index}",tool_item_label:"Tool #{index}"},"request-callout":{entity_name:"Request callout",by_lua_placeholder:"Enter Lua script here..."},datakit:{plugin_config:{title:"Flow editor"},description_code:"Configure this plugin by using YAML configuration. If you are copy/pasting in examples from the documentation - paste from below the <code>config</code> block.",description_flow:"Build flows visually with a drag-and-drop editor for Datakit. Visualize node connections, inputs, and outputs as you design.",description_example:"Start with a use case:",detected_config_format:"Detected {format} configuration. Do you want to convert it to Datakit configuration?",detected_config_format_title:"Convert configuration",detected_config_format_confirm:"Convert",examples:{authenticate:"Authenticate Kong to a third-party service",vault:"Authenticate to a third-party service using vault secrets",combine:"Combine multiple API responses",cache:"Conditionally fetch or store cache data",manipulate:"Manipulate request headers"},flow_editor:{mode:"Flow editor",name:"Datakit flow editor",cta:"Go to flow editor",disabled_tooltip:"The flow editor is unavailable due to critical configuration errors or features not supported in the flow editor:<br/><code>{reason}</code>",expand_panel:"Expand panel",collapse_panel:"Collapse panel",return_to_config:"Return to plugin configuration",canvas_panel:{request:"Request",response:"Response",node_count_plural:"{count} nodes",node_count_singular:"1 node"},panel_segments:{nodes:"Nodes",resources:{title:"Resources",vault:{title:"Vault secrets",add_button:"Add vault resource",name_exists_error:"Vault name already exists",name_required_error:"Vault name is required",edit:"Edit",delete:"Delete"},cache:{title:"Cache configuration",add_button:"Add cache configuration",strategy_options:{memory:"Memory",redis:"Redis"},select_redis_configuration:"Select a shared Redis configuration",inline_config:"Inline config",inline_config_preview:"You are using a dedicated Redis configuration, This is a preview of your current setup, please edit it in code editor"}}},vault_secret_picker:{title:"Add secret to Datakit",proceed_button_text:"Add secret",secret_name:{label:"Secret name",placeholder:"Enter a name",help:"A unique identifier for this secret in your Datakit configuration"}},node_panel:{title:"Node types",description:"Drag a node onto the canvas to add it to your data flow."},examples:"Examples",debug:{label:"Debug",description:'Enables detailed error messages in client responses, making debugging easier. <a href="https://developer.konghq.com/plugins/datakit/#debugging" target="_blank">See the docs</a> for details.'},actions:{zoom_in:"Zoom in",zoom_out:"Zoom out",fit_view:"Zoom to fit",auto_layout:"Auto layout",undo:"Undo",redo:"Redo",duplicate:"Duplicate",remove_from_branch:"Remove from branch",delete:"Delete",view_docs:"View docs",done:"Done"},node_types:{call:{name:"call",summary:"Call a third-party API",description:"Send an HTTP request and retrieve the response."},jq:{name:"jq",summary:"Transform data and cast variables with jq",description:'The <code>jq</code> node executes a jq script for processing JSON. See the official <a href="https://jqlang.org" target="_blank">jq docs</a> for more details.'},exit:{name:"exit",summary:"Return directly to the client",description:"Trigger an early exit that produces a direct response, rather than forwarding a proxied response."},property:{name:"property",summary:"Get and set Kong Gateway-specific data",description:"Get and set Kong Gateway host and request properties."},static:{name:"static",summary:"Configure static input values ahead of time",description:"Emits static values to be used as inputs for other nodes. The <code>static</code> node can help you with hardcoding some known value for an input."},branch:{name:"branch",summary:"Execute nodes based on matching input conditions",description:"Execute different nodes based on matching input conditions, such as a cache hit or miss."},cache:{name:"cache",summary:"Store and fetch cached data",description:"Store data into cache and fetch cached data from cache."},xml_to_json:{name:"xml_to_json",summary:"Transform XML to JSON",description:"Transform XML to JSON."},json_to_xml:{name:"json_to_xml",summary:"Transform JSON to XML",description:"Transform JSON to XML."},jwt_decode:{name:"jwt_decode",summary:"Decode JWT headers and claims",description:"Parse a JWT without verifying its signature."},jwt_sign:{name:"jwt_sign",summary:"Create and sign JWTs",description:"Generate a signed JWT from configured claims and a signing key."},jwt_verify:{name:"jwt_verify",summary:"Verify JWT signature and claims",description:"Verify a JWT signature and validate claims such as exp, nbf, iss, and aud."},request:{name:"request",description:"Reads incoming client request properties. You cannot specify request node input."},response:{name:"response",description:"Updates properties of the outgoing client response."},service_request:{name:"service request",description:"Updates properties of the request sent to the service being proxied to."},service_response:{name:"service response",description:"Reads response properties from the service being proxied to."},vault:{name:"Vault",description:"Vault is a tool for securely accessing secrets."}},node_properties:{name:"Name",configuration:"Configuration",input:{label:"Inputs configuration",placeholder:"Select a source",add_button:"Add an input",or:"or",input:"Input",fields:"Fields",source:"Source",tooltip:"Fields are part of the node input. A source can connect to either the fields or the input, but not both."},input_name:{label:"Input name",placeholder:"Enter an input name"},jq:{label:"jq script",help:"Refer to {link} for full documentation."},output_value:{label:"Output value",value_name:"Value name",value:"Value",add_button:"Add a value"},property:{get:"get",set:"set"},branch:{placeholder:"Select nodes"},jwt:{static_claims:{label:"Static claims",help:"Enter a JSON object. It will be stored as the node's static claims map.",errors:{invalid_json_object:"Static claims must be a valid JSON object"}}},errors:{invalid_identifier_format:"{fieldName} must start with a letter or underscore and contain only letters, numbers, underscores, or hyphens",invalid_url_format:"Not a valid URL format",not_empty:"{fieldName} is required",not_float:"{fieldName} must be a float",not_integer:"{fieldName} must be an integer",not_number:"{fieldName} must be a number",not_unique:"{fieldName} must be unique",number_range:"{fieldName} must be between {min} and {max}",string_len_range:"{fieldName} must be between {minLength} and {maxLength} characters",reserved_node_name:'"{nodeName}" is a reserved node name',attributes_required:"Provide at least one of attributes_block_name or attributes_name_prefix"}},error:{invalid_connection:"Invalid connection",branch_cycle:"Cannot create a circular branch relationship"},confirm:{title:"Connection conflict",message:{confirm:"Are you sure you want to make this change?",switch:"You can connect an output source to either all inputs of a node or to individual inputs.",override:"Each input can connect to only one output, but one output can connect to many inputs.",branch_replace:"This node already belongs to another branch. Move it to the new branch?"},proceed:"Yes, update"},leave_confirm:"Leave current page? Changes you made may not be saved."},code_editor:{mode:"Code editor"}},vault_picker:{component_error:"The vault secret picker is not available"},tag_helper:"Use comma to separate values. eg: value1, value2",foreign_placeholder:"Enter a UUID of {entity}"}},redis:{title:"Redis configuration",shared_configuration:{label:"Shared configuration",description:"Select an existing shared Redis configuration or create a new one. Changes to this configuration automatically apply to all associated plugins.",title:"Shared Redis configuration",error:"Fetching shared Redis configurations failed."},dedicated_configuration:{label:"Dedicated configuration",description:"Create a Redis configuration that is used only by this plugin. Changes won’t affect other plugins."},config_card:{common_fields:{created_at_label:"Created at",updated_at_label:"Last updated at",type_label:"Redis type"}}},glossary:{plugin:"plugin"},custom_field:{key_auth_identity_realms:{cp_label:"Current control plane",cp_group_label:"Control plane",realm_group_label:"Realms (can only select one)"}},sp:{window_type:{label:"Rate limit window type",help:"Sets the time window type to either <code>sliding</code> (default) or <code>fixed</code>.<br><ul><li>Sliding windows apply the rate limiting logic while taking into account previous hit rates (from the window that immediately precedes the current) using a dynamic weight.</li><li>Fixed windows consist of buckets that are statically assigned to a definitive time range, each request is mapped to only one fixed window based on its timestamp and will affect only that window's counters.</li></ul>",options:{fixed:"Fixed",sliding:"Sliding"}},request_limits:{title:"Request limits",subtitle:"Set one or more limits on the number of API requests allowed within a defined timeframe.",label:"Limit",label_index:"Limit {index}",request_number:"Request number",time_interval:"Time interval",interval_determiner:"Every",seconds:"Seconds"},error_message:{label:"Error message",code_placeholder:"Code message",message_placeholder:"Error message",help:"Set a custom error code and message to be returned when the rate limit is exceeded."},start_with_a_use_case:"Start with a use case:",use_cases:{fixed:{hourly_500:{label:"500 requests every hour",description:"A fixed limit of 500 requests per hour resetting sharply on the hour, ensuring no user can exceed this limit."},half_hourly_200:{label:"200 requests every 30 minutes",description:"Users are allowed 200 requests per 30 minutes, resetting exactly on the 30 minute mark with no carryover of unused limits."},daily_500:{label:"500 requests every day",description:"A strict limit of 5000 requests per day resetting promptly at midnight, preventing any burst traffic or inconsistent user experiences."}},sliding:{hourly_100:{label:"100 requests every hour",description:"Maximum of 100 requests every rolling hour, continuously adjusting the count over the course of the hour. No hard limit or known reset."},half_hourly_300:{label:"300 requests every 30 minutes",description:"Each user can make up to 300 requests in any rolling 30 minute period, with older requests dropping off as new requests are made."},hourly_500:{label:"500 requests every hour",description:`Each user is allowed 500 requests per hour.
|
|
2
2
|
If the limit is exceeded and the user receives a 429 error, each additional request within the sliding window (hour)
|
|
3
3
|
will extend the wait time by about 12 minutes, continuously adjusting as new requests are made.`}}}}};function De(){const t=it.createI18n("en-us",ct);return{i18n:t,i18nT:it.i18nTComponent(t)}}function li(){const{capitalize:t}=le.useStringHelpers(),n=["methods","logout_methods"];return{setFieldType:(d,p,m)=>{var g,y,C;if(!(!d||!p||!m))switch(m.type){case"boolean":d[p]={type:le.ConfigurationSchemaType.BadgeStatus,...d[p]};break;case"string":m.encrypted?d[p]={type:le.ConfigurationSchemaType.Redacted,...d[p]}:d[p]={type:le.ConfigurationSchemaType.Text,...d[p]};break;case"set":((g=m.elements)==null?void 0:g.type)==="string"&&(d[p]={type:le.ConfigurationSchemaType.BadgeTag,...d[p]});break;case"array":n.includes(p)?d[p]={type:le.ConfigurationSchemaType.BadgeMethod,...d[p]}:((y=m.elements)==null?void 0:y.type)==="string"?m.encrypted?d[p]={type:le.ConfigurationSchemaType.RedactedArray,...d[p]}:d[p]={type:le.ConfigurationSchemaType.BadgeTag,...d[p]}:((C=m.elements)==null?void 0:C.type)==="record"&&(d[p]={type:le.ConfigurationSchemaType.Json,...d[p]});break;case"record":d[p]={type:le.ConfigurationSchemaType.Json,...d[p]};break;default:d[p]={type:le.ConfigurationSchemaType.Text,...d[p]};break}},convertToDotNotation:d=>d.replace(/-/g,"."),unFlattenObject:d=>{const p={};for(const m in d){const g=m.split(".");g.reduce((y,C,b)=>y[C]||(y[C]=isNaN(g[b+1])?g.length-1===b?d[m]:{}:[]),p)}return p},dismissField:(d,p,m="redis",g=!1)=>{const y=new RegExp("(?<=-redis-).*");if(typeof d!="object"||d===null)return d;m==="redis"?Object.keys(d).forEach(C=>{C.match(y)&&delete d[C]}):g?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=>t(d.replace(/_/g," ")),getTallestPluginCardHeight:d=>{let p=0;if(d.length)for(let m=0;m<d.length;m++){const g=d[m].$el;p=g.offsetHeight>p?g.offsetHeight:p}return p},getToggleVisibility:(d,p)=>{var m,g;if(d&&p){const y=(g=(m=window==null?void 0:window.getComputedStyle(d))==null?void 0:m.getPropertyValue("grid-template-columns"))==null?void 0:g.split(" ").length;return p>y}return!0}}}var Io=(t=>(t.REDIS_CE="redis-ce",t.REDIS_EE="redis-ee",t))(Io||{});const Po=["Featured"],si=[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.MONETIZATION,Y.PluginGroup.CUSTOM_PLUGINS],To=[Y.PluginGroup.AI,Y.PluginGroup.ANALYTICS_AND_MONITORING,Y.PluginGroup.AUTHENTICATION,Y.PluginGroup.LOGGING,Y.PluginGroup.SECURITY,Y.PluginGroup.SERVERLESS,Y.PluginGroup.TRAFFIC_CONTROL,Y.PluginGroup.TRANSFORMATIONS,Y.PluginGroup.CUSTOM_PLUGINS],xr={[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 _n=(t=>(t.SERVICE="service_id",t.ROUTE="route_id",t.CONSUMER="consumer_id",t.CONSUMER_GROUP="consumer_group_id",t))(_n||{});const bn=t=>{const n=Object.fromEntries(t.fields.map(o=>Object.entries(o)[0]));return"id"in n||(n.id={}),n},kn={label:"Tags",name:"tags",type:"input",inputType:"text",valueType:"array",valueArrayType:"string",placeholder:"Enter list of tags",help:"An optional set of strings for grouping and filtering, separated by commas.",hint:"e.g. tag1, tag2, tag3"},Bn={getColumnFields:bn,tags:kn,id:{label:"ID"},enabled:{label:"Enabled",indexed:!0,type:"boolean"},created_at:{label:"Created"},updated_at:{label:"Last updated"},fields:{arrayItems(t){const n=t.inputAttributes||{};return delete t.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",...t}}}},ci={fields:[{group:{hint:"The arbitrary group name to associate to the consumer."}},{tags:kn}]},Cd={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"}}]},di={fields:[{username:{}},{password:{inputType:"password"}},{tags:kn}]},Ed={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"}}]},ui=e.defineComponent({name:"KeyAuthIdentityRealmsBase",__name:"Base",props:{modelValue:{default:[{scope:"cp",id:null,region:null}]},modelModifiers:{}},emits:["update:modelValue"],setup(t){const n=e.useModel(t,"modelValue"),{i18n:o}=je.useI18n(),{t:a}=o,i={value:"current-cp",label:a("custom_field.key_auth_identity_realms.cp_label"),group:a("custom_field.key_auth_identity_realms.cp_group_label")},r=e.inject(Le.FORMS_CONFIG),{axiosInstance:l}=le.useAxios(r==null?void 0:r.axiosRequestConfig),s=()=>{if((r==null?void 0:r.app)==="konnect"){const m=/\b(us|eu|au|me|in)\b/.exec((r==null?void 0:r.apiBaseUrl)||"");if(m)return{region:m[1]}}return{}},c=e.ref(!0),u=e.ref([i]),f=async()=>{if((r==null?void 0:r.app)==="konnect")try{c.value=!0;let m=`${r==null?void 0:r.apiBaseUrl}/v1/realms`;const g=[];do{const y=await l.get(m);y&&y.data&&y.data.data&&g.push(...y.data.data.map(C=>({value:C.id,label:C.name,group:a("custom_field.key_auth_identity_realms.realm_group_label")}))),m=y.data.meta.next?`${r==null?void 0:r.apiBaseUrl}${y.data.meta.next}`:null}while(m);u.value=[i,...g]}catch(m){console.error("Failed to fetch Konnect realms",m)}finally{c.value=!1}},d=e.computed(()=>n.value.map(m=>m.id||"current-cp")),p=m=>{const g=m.includes("current-cp")?[{scope:"cp",id:null,region:null}]:[],y=n.value.filter(({scope:k})=>k!=="cp").map(({id:k})=>k),C=m.filter(k=>k!=="current-cp"),E=(y.length!==C.length||y.some(k=>!C.includes(k))?C.filter(k=>!y.includes(k)):C).map(k=>({...s(),scope:"realm",id:k}));n.value=[...g,...E]};return e.onMounted(()=>{f()}),(m,g)=>{const y=e.resolveComponent("KMultiselect");return e.openBlock(),e.createBlock(y,{items:u.value,loading:c.value,"model-value":d.value,"onUpdate:modelValue":p},null,8,["items","loading","model-value"])}}}),Nd={class:"field-wrapper"},xd=e.defineComponent({__name:"VfgAdapter",props:{disabled:{type:Boolean},formOptions:{},model:{},schema:{},vfg:{},errors:{},hint:{}},emits:["modelUpdated"],setup(t,{expose:n,emit:o}){const a=t,i=o,{clearValidationErrors:r,value:l}=Le.composables.useAbstractFields({model:e.toRef(()=>a.model),schema:a.schema,formOptions:a.formOptions,emitModelUpdated:s=>{i("modelUpdated",s.value,s.model)}});return n({clearValidationErrors:r}),(s,c)=>(e.openBlock(),e.createElementBlock("div",Nd,[e.createVNode(ui,{modelValue:e.unref(l),"onUpdate:modelValue":c[0]||(c[0]=u=>e.isRef(l)?l.value=u:null)},null,8,["modelValue"])]))}}),_e=(t,n)=>{const o=t.__vccOpts||t;for(const[a,i]of n)o[a]=i;return o},Sd=_e(xd,[["__scopeId","data-v-269e85ed"]]),pi={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
4
4
|
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:kn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Ad=t=>{var n;return(t==null?void 0:t.app)==="kongManager"?{fieldsToDelete:["config-identity_realms"],shamefullyTransformPayload:({payload:o})=>{(t!=null&&t.credential&&typeof o.ttl!="number"||Number.isNaN(o.ttl))&&(o.ttl=0)}}:{"config-identity_realms":{component:((n=t==null?void 0:t.experimentalRenders)==null?void 0:n.keyAuthIdentityRealms)??!1?e.markRaw(Sd):null}}},Id={fields:[{id:{uuid:!0,type:"string",auto:!0}},{created_at:{auto:!0,timestamp:!0,type:"integer"}},{consumer:{reference:"consumers",type:"foreign",on_delete:"cascade",required:!0}},{key:{auto:!0,hint:"If left empty, a key will be generated after saving this form.",required:!1,type:"string",encrypted:!0,unique:!0}},{tags:{elements:{type:"string",required:!0},type:"set"}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},fi={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
|
|
@@ -10,26 +10,26 @@ will extend the wait time by about 12 minutes, continuously adjusting as new req
|
|
|
10
10
|
will be generated for you.`,inputType:"text",encrypted:!0}},{client_secret:{submitWhenNull:!1,hint:`You can optionally set your own unique client_secret. If missing,
|
|
11
11
|
it will be generated for you.`,inputType:"password",encrypted:!0}},{redirect_uris:Bn.fields.arrayItems({label:"Redirect URI(s)",hint:`One or more URLs in your app where users will be sent after
|
|
12
12
|
authorization (RFC 6742 Section 3.1.2)`,newElementButtonLabel:"+ Add Redirect URI",inputAttributes:{placeholder:"Enter URI"}})},{tags:Bn.tags}]},Vd={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"]}}]},gi={fields:[{key:{submitWhenNull:!1,hint:`You can optionally set your own unique key to authenticate the
|
|
13
|
-
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:kn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Bd=t=>(t==null?void 0:t.app)==="kongManager"?{shamefullyTransformPayload:({payload:n})=>{(t!=null&&t.credential&&typeof n.ttl!="number"||Number.isNaN(n.ttl))&&(n.ttl=0)}}:{},Rd={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Pt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",freeformRenderRules:{dependencies:{"config.brute_force_protection.redis":["config.brute_force_protection.strategy","redis"]}},...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"]]},freeformRenderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}},...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.access_logs_endpoint","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"],freeformRenderRules:{bundles:[["config.cache.strategy","config.cache.redis"]],dependencies:{"config.cache.redis":["config.cache.strategy","redis"]}}},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"]},"ai-lakera-guard":{descriptionKey:"plugins.meta.ai-lakera-guard.description",nameKey:"plugins.meta.ai-lakera-guard.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-lakera-guard"]},"ai-a2a-proxy":{descriptionKey:"plugins.meta.ai-a2a-proxy.description",nameKey:"plugins.meta.ai-a2a-proxy.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-a2a-proxy"]},"ai-custom-guardrail":{descriptionKey:"plugins.meta.ai-custom-guardrail.description",nameKey:"plugins.meta.ai-custom-guardrail.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-custom-guardrail"]},"metering-and-billing":{descriptionKey:"plugins.meta.metering-and-billing.description",nameKey:"plugins.meta.metering-and-billing.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["metering-and-billing"]}},Rn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:ci,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:bn(ci),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:di,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:bn(di)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:pi,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:bn(pi)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:gi,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:bn(gi)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:mi,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:bn(mi)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:fi,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:bn(fi)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Td,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},$d={acls:Cd,basicauth_credentials:Ed,keyauth_credentials:Id,keyauth_enc_credentials:Rd,oauth2_credentials:Vd,hmacauth_credentials:Pd,jwt_secrets:Od},Fd=()=>{const{i18n:{t}}=De(),n={},o={};for(const[i,r]of Object.entries(Pt))n[i]={...r,name:t(r.nameKey),description:t(r.descriptionKey)};for(const[i,r]of Object.entries(Rn))o[i]={...r,name:t(r.nameKey),title:t(r.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:Rn,getDisplayName:i=>{var r;return((r=n[i])==null?void 0:r.name)||i}}},eo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Ld={"config-prompts-prepend":{...eo,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":{...eo,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"}]}}}},Dd={"config-templates":{...eo,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"}]}}}},Md={shamefullyTransformPayload:({originalModel:t,model:n,payload:o,schema:a})=>{const i=l=>{var s;return(s=a[l])!=null&&s.required&&n[l]?!0:t[l]===n[l]?!1:t[l]===null?n[l]!==""&&!Number.isNaN(n[l]):!0},r=l=>Object.keys(t).some(s=>s.startsWith(l)&&i(s));r("config-embeddings")||(o.config.embeddings=null),r("config-vectordb")||(o.config.vectordb=null)}},hi=t=>t.split(",").map(n=>n.trim()).filter(Boolean),jd={shamefullyTransformPayload:({payload:t})=>{var n;(n=t==null?void 0:t.config)!=null&&n.collection_acl_config&&Object.values(t.config.collection_acl_config).forEach(o=>{typeof(o==null?void 0:o.allow)=="string"&&(o.allow=hi(o.allow)),typeof(o==null?void 0:o.deny)=="string"&&(o.deny=hi(o.deny))})}},vd={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},Kd={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:Bn.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"}},Ke={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"},Oo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Ud={"config-metrics":{...Oo,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"}]}}}},qd={"config-functions":{...Ke,inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}}},Gd={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},zd={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Hd={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Wd={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Yd={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},yi=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((t,n)=>({...t,[n]:Bn.fields.arrayItems({newElementButtonLabel:"Add"})}),Yd),Vo={"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"}},Jd={"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":{}},Xd=["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((t,n)=>({...t,[n]:Bn.fields.arrayItems({newElementButtonLabel:"Add"})}),Jd),_i={"config-add-json":{...Ke,label:"Config.Add.Json",inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},"config-append-json":{...Ke,label:"Config.Append.Json",inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},"config-remove-json":{...Ke,label:"Config.Remove.Json",inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},"config-rename-json":{...Ke,label:"Config.Rename.Json",inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},"config-replace-json":{...Ke,label:"Config.Replace.Json",inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}}},Zd={..._i,"config-allow-json":{...Ke,label:"Config.Allow.Json",inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},"config-replace-body":{label:"Config.Replace.Body",type:"textArea",max:!1},"config-transform-functions":{...Ke,label:"Config.Transform.Functions",inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},"config-transform-json":{...Ke,label:"Config.Transform.Json",inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}}},Qd={"config-rules":{...eo,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"}]}}}},eu={"config-session_redis_cluster_nodes":{...eo,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"}]}}}},tu={"config-flow-functions":{...Ke,inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}}},nu={"config-message-functions":{...Ke,inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}}},ou={"config-metrics":{...Oo,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"]}]}}}},ru={"config-metrics":{...Oo,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"]}]}}}},au={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},iu={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:t=>({id:t}),keyFromObject:"id"}};var bi=typeof global=="object"&&global&&global.Object===Object&&global,lu=typeof self=="object"&&self&&self.Object===Object&&self,Kt=bi||lu||Function("return this")(),Tt=Kt.Symbol,ki=Object.prototype,su=ki.hasOwnProperty,cu=ki.toString,to=Tt?Tt.toStringTag:void 0;function du(t){var n=su.call(t,to),o=t[to];try{t[to]=void 0;var a=!0}catch{}var i=cu.call(t);return a&&(n?t[to]=o:delete t[to]),i}var uu=Object.prototype,pu=uu.toString;function fu(t){return pu.call(t)}var mu="[object Null]",gu="[object Undefined]",wi=Tt?Tt.toStringTag:void 0;function wn(t){return t==null?t===void 0?gu:mu:wi&&wi in Object(t)?du(t):fu(t)}function Ut(t){return t!=null&&typeof t=="object"}var hu="[object Symbol]";function Sr(t){return typeof t=="symbol"||Ut(t)&&wn(t)==hu}function Ar(t,n){for(var o=-1,a=t==null?0:t.length,i=Array(a);++o<a;)i[o]=n(t[o],o,t);return i}var Dt=Array.isArray,Ci=Tt?Tt.prototype:void 0,Ei=Ci?Ci.toString:void 0;function Ni(t){if(typeof t=="string")return t;if(Dt(t))return Ar(t,Ni)+"";if(Sr(t))return Ei?Ei.call(t):"";var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function Cn(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}function xi(t){return t}var yu="[object AsyncFunction]",_u="[object Function]",bu="[object GeneratorFunction]",ku="[object Proxy]";function Bo(t){if(!Cn(t))return!1;var n=wn(t);return n==_u||n==bu||n==yu||n==ku}var Ir=Kt["__core-js_shared__"],Si=(function(){var t=/[^.]+$/.exec(Ir&&Ir.keys&&Ir.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function wu(t){return!!Si&&Si in t}var Cu=Function.prototype,Eu=Cu.toString;function En(t){if(t!=null){try{return Eu.call(t)}catch{}try{return t+""}catch{}}return""}var Nu=/[\\^$.*+?()[\]{}|]/g,xu=/^\[object .+?Constructor\]$/,Su=Function.prototype,Au=Object.prototype,Iu=Su.toString,Pu=Au.hasOwnProperty,Tu=RegExp("^"+Iu.call(Pu).replace(Nu,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ou(t){if(!Cn(t)||wu(t))return!1;var n=Bo(t)?Tu:xu;return n.test(En(t))}function Vu(t,n){return t==null?void 0:t[n]}function Nn(t,n){var o=Vu(t,n);return Ou(o)?o:void 0}var Pr=Nn(Kt,"WeakMap"),Ai=Object.create,Bu=(function(){function t(){}return function(n){if(!Cn(n))return{};if(Ai)return Ai(n);t.prototype=n;var o=new t;return t.prototype=void 0,o}})();function Ru(t,n,o){switch(o.length){case 0:return t.call(n);case 1:return t.call(n,o[0]);case 2:return t.call(n,o[0],o[1]);case 3:return t.call(n,o[0],o[1],o[2])}return t.apply(n,o)}function $u(t,n){var o=-1,a=t.length;for(n||(n=Array(a));++o<a;)n[o]=t[o];return n}var Fu=800,Lu=16,Du=Date.now;function Mu(t){var n=0,o=0;return function(){var a=Du(),i=Lu-(a-o);if(o=a,i>0){if(++n>=Fu)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}function ju(t){return function(){return t}}var Ro=(function(){try{var t=Nn(Object,"defineProperty");return t({},"",{}),t}catch{}})(),vu=Ro?function(t,n){return Ro(t,"toString",{configurable:!0,enumerable:!1,value:ju(n),writable:!0})}:xi,Ii=Mu(vu);function Ku(t,n){for(var o=-1,a=t==null?0:t.length;++o<a&&n(t[o],o,t)!==!1;);return t}function Uu(t,n,o,a){for(var i=t.length,r=o+-1;++r<i;)if(n(t[r],r,t))return r;return-1}function qu(t){return t!==t}function Gu(t,n,o){for(var a=o-1,i=t.length;++a<i;)if(t[a]===n)return a;return-1}function zu(t,n,o){return n===n?Gu(t,n,o):Uu(t,qu,o)}function Hu(t,n){var o=t==null?0:t.length;return!!o&&zu(t,n,0)>-1}var Wu=9007199254740991,Yu=/^(?:0|[1-9]\d*)$/;function Tr(t,n){var o=typeof t;return n=n??Wu,!!n&&(o=="number"||o!="symbol"&&Yu.test(t))&&t>-1&&t%1==0&&t<n}function Pi(t,n,o){n=="__proto__"&&Ro?Ro(t,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):t[n]=o}function Or(t,n){return t===n||t!==t&&n!==n}var Ju=Object.prototype,Xu=Ju.hasOwnProperty;function Vr(t,n,o){var a=t[n];(!(Xu.call(t,n)&&Or(a,o))||o===void 0&&!(n in t))&&Pi(t,n,o)}function no(t,n,o,a){var i=!o;o||(o={});for(var r=-1,l=n.length;++r<l;){var s=n[r],c=void 0;c===void 0&&(c=t[s]),i?Pi(o,s,c):Vr(o,s,c)}return o}var Ti=Math.max;function Oi(t,n,o){return n=Ti(n===void 0?t.length-1:n,0),function(){for(var a=arguments,i=-1,r=Ti(a.length-n,0),l=Array(r);++i<r;)l[i]=a[n+i];i=-1;for(var s=Array(n+1);++i<n;)s[i]=a[i];return s[n]=o(l),Ru(t,this,s)}}function Zu(t,n){return Ii(Oi(t,n,xi),t+"")}var Qu=9007199254740991;function Br(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Qu}function $o(t){return t!=null&&Br(t.length)&&!Bo(t)}var ep=Object.prototype;function Fo(t){var n=t&&t.constructor,o=typeof n=="function"&&n.prototype||ep;return t===o}function tp(t,n){for(var o=-1,a=Array(t);++o<t;)a[o]=n(o);return a}var np="[object Arguments]";function Vi(t){return Ut(t)&&wn(t)==np}var Bi=Object.prototype,op=Bi.hasOwnProperty,rp=Bi.propertyIsEnumerable,Lo=Vi((function(){return arguments})())?Vi:function(t){return Ut(t)&&op.call(t,"callee")&&!rp.call(t,"callee")};function ap(){return!1}var Ri=typeof xe=="object"&&xe&&!xe.nodeType&&xe,$i=Ri&&typeof module=="object"&&module&&!module.nodeType&&module,ip=$i&&$i.exports===Ri,Fi=ip?Kt.Buffer:void 0,lp=Fi?Fi.isBuffer:void 0,oo=lp||ap,sp="[object Arguments]",cp="[object Array]",dp="[object Boolean]",up="[object Date]",pp="[object Error]",fp="[object Function]",mp="[object Map]",gp="[object Number]",hp="[object Object]",yp="[object RegExp]",_p="[object Set]",bp="[object String]",kp="[object WeakMap]",wp="[object ArrayBuffer]",Cp="[object DataView]",Ep="[object Float32Array]",Np="[object Float64Array]",xp="[object Int8Array]",Sp="[object Int16Array]",Ap="[object Int32Array]",Ip="[object Uint8Array]",Pp="[object Uint8ClampedArray]",Tp="[object Uint16Array]",Op="[object Uint32Array]",Ye={};Ye[Ep]=Ye[Np]=Ye[xp]=Ye[Sp]=Ye[Ap]=Ye[Ip]=Ye[Pp]=Ye[Tp]=Ye[Op]=!0,Ye[sp]=Ye[cp]=Ye[wp]=Ye[dp]=Ye[Cp]=Ye[up]=Ye[pp]=Ye[fp]=Ye[mp]=Ye[gp]=Ye[hp]=Ye[yp]=Ye[_p]=Ye[bp]=Ye[kp]=!1;function Vp(t){return Ut(t)&&Br(t.length)&&!!Ye[wn(t)]}function Rr(t){return function(n){return t(n)}}var Li=typeof xe=="object"&&xe&&!xe.nodeType&&xe,ro=Li&&typeof module=="object"&&module&&!module.nodeType&&module,Bp=ro&&ro.exports===Li,$r=Bp&&bi.process,$n=(function(){try{var t=ro&&ro.require&&ro.require("util").types;return t||$r&&$r.binding&&$r.binding("util")}catch{}})(),Di=$n&&$n.isTypedArray,Fr=Di?Rr(Di):Vp,Rp=Object.prototype,$p=Rp.hasOwnProperty;function Mi(t,n){var o=Dt(t),a=!o&&Lo(t),i=!o&&!a&&oo(t),r=!o&&!a&&!i&&Fr(t),l=o||a||i||r,s=l?tp(t.length,String):[],c=s.length;for(var u in t)(n||$p.call(t,u))&&!(l&&(u=="length"||i&&(u=="offset"||u=="parent")||r&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Tr(u,c)))&&s.push(u);return s}function ji(t,n){return function(o){return t(n(o))}}var Fp=ji(Object.keys,Object),Lp=Object.prototype,Dp=Lp.hasOwnProperty;function vi(t){if(!Fo(t))return Fp(t);var n=[];for(var o in Object(t))Dp.call(t,o)&&o!="constructor"&&n.push(o);return n}function Lr(t){return $o(t)?Mi(t):vi(t)}function Mp(t){var n=[];if(t!=null)for(var o in Object(t))n.push(o);return n}var jp=Object.prototype,vp=jp.hasOwnProperty;function Kp(t){if(!Cn(t))return Mp(t);var n=Fo(t),o=[];for(var a in t)a=="constructor"&&(n||!vp.call(t,a))||o.push(a);return o}function Dr(t){return $o(t)?Mi(t,!0):Kp(t)}var Up=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qp=/^\w*$/;function Gp(t,n){if(Dt(t))return!1;var o=typeof t;return o=="number"||o=="symbol"||o=="boolean"||t==null||Sr(t)?!0:qp.test(t)||!Up.test(t)||n!=null&&t in Object(n)}var ao=Nn(Object,"create");function zp(){this.__data__=ao?ao(null):{},this.size=0}function Hp(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var Wp="__lodash_hash_undefined__",Yp=Object.prototype,Jp=Yp.hasOwnProperty;function Xp(t){var n=this.__data__;if(ao){var o=n[t];return o===Wp?void 0:o}return Jp.call(n,t)?n[t]:void 0}var Zp=Object.prototype,Qp=Zp.hasOwnProperty;function ef(t){var n=this.__data__;return ao?n[t]!==void 0:Qp.call(n,t)}var tf="__lodash_hash_undefined__";function nf(t,n){var o=this.__data__;return this.size+=this.has(t)?0:1,o[t]=ao&&n===void 0?tf:n,this}function xn(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var a=t[n];this.set(a[0],a[1])}}xn.prototype.clear=zp,xn.prototype.delete=Hp,xn.prototype.get=Xp,xn.prototype.has=ef,xn.prototype.set=nf;function of(){this.__data__=[],this.size=0}function Do(t,n){for(var o=t.length;o--;)if(Or(t[o][0],n))return o;return-1}var rf=Array.prototype,af=rf.splice;function lf(t){var n=this.__data__,o=Do(n,t);if(o<0)return!1;var a=n.length-1;return o==a?n.pop():af.call(n,o,1),--this.size,!0}function sf(t){var n=this.__data__,o=Do(n,t);return o<0?void 0:n[o][1]}function cf(t){return Do(this.__data__,t)>-1}function df(t,n){var o=this.__data__,a=Do(o,t);return a<0?(++this.size,o.push([t,n])):o[a][1]=n,this}function Jt(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var a=t[n];this.set(a[0],a[1])}}Jt.prototype.clear=of,Jt.prototype.delete=lf,Jt.prototype.get=sf,Jt.prototype.has=cf,Jt.prototype.set=df;var io=Nn(Kt,"Map");function uf(){this.size=0,this.__data__={hash:new xn,map:new(io||Jt),string:new xn}}function pf(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function Mo(t,n){var o=t.__data__;return pf(n)?o[typeof n=="string"?"string":"hash"]:o.map}function ff(t){var n=Mo(this,t).delete(t);return this.size-=n?1:0,n}function mf(t){return Mo(this,t).get(t)}function gf(t){return Mo(this,t).has(t)}function hf(t,n){var o=Mo(this,t),a=o.size;return o.set(t,n),this.size+=o.size==a?0:1,this}function Xt(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var a=t[n];this.set(a[0],a[1])}}Xt.prototype.clear=uf,Xt.prototype.delete=ff,Xt.prototype.get=mf,Xt.prototype.has=gf,Xt.prototype.set=hf;var yf="Expected a function";function Mr(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(yf);var o=function(){var a=arguments,i=n?n.apply(this,a):a[0],r=o.cache;if(r.has(i))return r.get(i);var l=t.apply(this,a);return o.cache=r.set(i,l)||r,l};return o.cache=new(Mr.Cache||Xt),o}Mr.Cache=Xt;var _f=500;function bf(t){var n=Mr(t,function(a){return o.size===_f&&o.clear(),a}),o=n.cache;return n}var kf=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wf=/\\(\\)?/g,Cf=bf(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(kf,function(o,a,i,r){n.push(i?r.replace(wf,"$1"):a||o)}),n});function jo(t){return t==null?"":Ni(t)}function Fn(t,n){return Dt(t)?t:Gp(t,n)?[t]:Cf(jo(t))}function vo(t){if(typeof t=="string"||Sr(t))return t;var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function jr(t,n){n=Fn(n,t);for(var o=0,a=n.length;t!=null&&o<a;)t=t[vo(n[o++])];return o&&o==a?t:void 0}function Ko(t,n,o){var a=t==null?void 0:jr(t,n);return a===void 0?o:a}function vr(t,n){for(var o=-1,a=n.length,i=t.length;++o<a;)t[i+o]=n[o];return t}var Ki=Tt?Tt.isConcatSpreadable:void 0;function Ef(t){return Dt(t)||Lo(t)||!!(Ki&&t&&t[Ki])}function Nf(t,n,o,a,i){var r=-1,l=t.length;for(o||(o=Ef),i||(i=[]);++r<l;){var s=t[r];o(s)?vr(i,s):i[i.length]=s}return i}function xf(t){var n=t==null?0:t.length;return n?Nf(t):[]}function Ui(t){return Ii(Oi(t,void 0,xf),t+"")}var Kr=ji(Object.getPrototypeOf,Object),Sf="[object Object]",Af=Function.prototype,If=Object.prototype,qi=Af.toString,Pf=If.hasOwnProperty,Tf=qi.call(Object);function Of(t){if(!Ut(t)||wn(t)!=Sf)return!1;var n=Kr(t);if(n===null)return!0;var o=Pf.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&qi.call(o)==Tf}function Gi(t,n,o){var a=-1,i=t.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 r=Array(i);++a<i;)r[a]=t[a+n];return r}function Vf(t,n,o){var a=t.length;return o=o===void 0?a:o,!n&&o>=a?t:Gi(t,n,o)}var Bf="\\ud800-\\udfff",Rf="\\u0300-\\u036f",$f="\\ufe20-\\ufe2f",Ff="\\u20d0-\\u20ff",Lf=Rf+$f+Ff,Df="\\ufe0e\\ufe0f",Mf="\\u200d",jf=RegExp("["+Mf+Bf+Lf+Df+"]");function zi(t){return jf.test(t)}function vf(t){return t.split("")}var Hi="\\ud800-\\udfff",Kf="\\u0300-\\u036f",Uf="\\ufe20-\\ufe2f",qf="\\u20d0-\\u20ff",Gf=Kf+Uf+qf,zf="\\ufe0e\\ufe0f",Hf="["+Hi+"]",Ur="["+Gf+"]",qr="\\ud83c[\\udffb-\\udfff]",Wf="(?:"+Ur+"|"+qr+")",Wi="[^"+Hi+"]",Yi="(?:\\ud83c[\\udde6-\\uddff]){2}",Ji="[\\ud800-\\udbff][\\udc00-\\udfff]",Yf="\\u200d",Xi=Wf+"?",Zi="["+zf+"]?",Jf="(?:"+Yf+"(?:"+[Wi,Yi,Ji].join("|")+")"+Zi+Xi+")*",Xf=Zi+Xi+Jf,Zf="(?:"+[Wi+Ur+"?",Ur,Yi,Ji,Hf].join("|")+")",Qf=RegExp(qr+"(?="+qr+")|"+Zf+Xf,"g");function em(t){return t.match(Qf)||[]}function tm(t){return zi(t)?em(t):vf(t)}function nm(t){return function(n){n=jo(n);var o=zi(n)?tm(n):void 0,a=o?o[0]:n.charAt(0),i=o?Vf(o,1).join(""):n.slice(1);return a[t]()+i}}var om=nm("toUpperCase");function rm(t){return function(n){return t==null?void 0:t[n]}}function am(){this.__data__=new Jt,this.size=0}function im(t){var n=this.__data__,o=n.delete(t);return this.size=n.size,o}function lm(t){return this.__data__.get(t)}function sm(t){return this.__data__.has(t)}var cm=200;function dm(t,n){var o=this.__data__;if(o instanceof Jt){var a=o.__data__;if(!io||a.length<cm-1)return a.push([t,n]),this.size=++o.size,this;o=this.__data__=new Xt(a)}return o.set(t,n),this.size=o.size,this}function Zt(t){var n=this.__data__=new Jt(t);this.size=n.size}Zt.prototype.clear=am,Zt.prototype.delete=im,Zt.prototype.get=lm,Zt.prototype.has=sm,Zt.prototype.set=dm;function um(t,n){return t&&no(n,Lr(n),t)}function pm(t,n){return t&&no(n,Dr(n),t)}var Qi=typeof xe=="object"&&xe&&!xe.nodeType&&xe,el=Qi&&typeof module=="object"&&module&&!module.nodeType&&module,fm=el&&el.exports===Qi,tl=fm?Kt.Buffer:void 0,nl=tl?tl.allocUnsafe:void 0;function mm(t,n){if(n)return t.slice();var o=t.length,a=nl?nl(o):new t.constructor(o);return t.copy(a),a}function gm(t,n){for(var o=-1,a=t==null?0:t.length,i=0,r=[];++o<a;){var l=t[o];n(l,o,t)&&(r[i++]=l)}return r}function ol(){return[]}var hm=Object.prototype,ym=hm.propertyIsEnumerable,rl=Object.getOwnPropertySymbols,Gr=rl?function(t){return t==null?[]:(t=Object(t),gm(rl(t),function(n){return ym.call(t,n)}))}:ol;function _m(t,n){return no(t,Gr(t),n)}var bm=Object.getOwnPropertySymbols,al=bm?function(t){for(var n=[];t;)vr(n,Gr(t)),t=Kr(t);return n}:ol;function km(t,n){return no(t,al(t),n)}function il(t,n,o){var a=n(t);return Dt(t)?a:vr(a,o(t))}function zr(t){return il(t,Lr,Gr)}function ll(t){return il(t,Dr,al)}var Hr=Nn(Kt,"DataView"),Wr=Nn(Kt,"Promise"),Yr=Nn(Kt,"Set"),sl="[object Map]",wm="[object Object]",cl="[object Promise]",dl="[object Set]",ul="[object WeakMap]",pl="[object DataView]",Cm=En(Hr),Em=En(io),Nm=En(Wr),xm=En(Yr),Sm=En(Pr),Ot=wn;(Hr&&Ot(new Hr(new ArrayBuffer(1)))!=pl||io&&Ot(new io)!=sl||Wr&&Ot(Wr.resolve())!=cl||Yr&&Ot(new Yr)!=dl||Pr&&Ot(new Pr)!=ul)&&(Ot=function(t){var n=wn(t),o=n==wm?t.constructor:void 0,a=o?En(o):"";if(a)switch(a){case Cm:return pl;case Em:return sl;case Nm:return cl;case xm:return dl;case Sm:return ul}return n});var Am=Object.prototype,Im=Am.hasOwnProperty;function Pm(t){var n=t.length,o=new t.constructor(n);return n&&typeof t[0]=="string"&&Im.call(t,"index")&&(o.index=t.index,o.input=t.input),o}var Uo=Kt.Uint8Array;function Jr(t){var n=new t.constructor(t.byteLength);return new Uo(n).set(new Uo(t)),n}function Tm(t,n){var o=n?Jr(t.buffer):t.buffer;return new t.constructor(o,t.byteOffset,t.byteLength)}var Om=/\w*$/;function Vm(t){var n=new t.constructor(t.source,Om.exec(t));return n.lastIndex=t.lastIndex,n}var fl=Tt?Tt.prototype:void 0,ml=fl?fl.valueOf:void 0;function Bm(t){return ml?Object(ml.call(t)):{}}function Rm(t,n){var o=n?Jr(t.buffer):t.buffer;return new t.constructor(o,t.byteOffset,t.length)}var $m="[object Boolean]",Fm="[object Date]",Lm="[object Map]",Dm="[object Number]",Mm="[object RegExp]",jm="[object Set]",vm="[object String]",Km="[object Symbol]",Um="[object ArrayBuffer]",qm="[object DataView]",Gm="[object Float32Array]",zm="[object Float64Array]",Hm="[object Int8Array]",Wm="[object Int16Array]",Ym="[object Int32Array]",Jm="[object Uint8Array]",Xm="[object Uint8ClampedArray]",Zm="[object Uint16Array]",Qm="[object Uint32Array]";function eg(t,n,o){var a=t.constructor;switch(n){case Um:return Jr(t);case $m:case Fm:return new a(+t);case qm:return Tm(t,o);case Gm:case zm:case Hm:case Wm:case Ym:case Jm:case Xm:case Zm:case Qm:return Rm(t,o);case Lm:return new a;case Dm:case vm:return new a(t);case Mm:return Vm(t);case jm:return new a;case Km:return Bm(t)}}function tg(t){return typeof t.constructor=="function"&&!Fo(t)?Bu(Kr(t)):{}}var ng="[object Map]";function og(t){return Ut(t)&&Ot(t)==ng}var gl=$n&&$n.isMap,rg=gl?Rr(gl):og,ag="[object Set]";function ig(t){return Ut(t)&&Ot(t)==ag}var hl=$n&&$n.isSet,lg=hl?Rr(hl):ig,sg=1,cg=2,dg=4,yl="[object Arguments]",ug="[object Array]",pg="[object Boolean]",fg="[object Date]",mg="[object Error]",_l="[object Function]",gg="[object GeneratorFunction]",hg="[object Map]",yg="[object Number]",bl="[object Object]",_g="[object RegExp]",bg="[object Set]",kg="[object String]",wg="[object Symbol]",Cg="[object WeakMap]",Eg="[object ArrayBuffer]",Ng="[object DataView]",xg="[object Float32Array]",Sg="[object Float64Array]",Ag="[object Int8Array]",Ig="[object Int16Array]",Pg="[object Int32Array]",Tg="[object Uint8Array]",Og="[object Uint8ClampedArray]",Vg="[object Uint16Array]",Bg="[object Uint32Array]",He={};He[yl]=He[ug]=He[Eg]=He[Ng]=He[pg]=He[fg]=He[xg]=He[Sg]=He[Ag]=He[Ig]=He[Pg]=He[hg]=He[yg]=He[bl]=He[_g]=He[bg]=He[kg]=He[wg]=He[Tg]=He[Og]=He[Vg]=He[Bg]=!0,He[mg]=He[_l]=He[Cg]=!1;function lo(t,n,o,a,i,r){var l,s=n&sg,c=n&cg,u=n&dg;if(o&&(l=i?o(t,a,i,r):o(t)),l!==void 0)return l;if(!Cn(t))return t;var f=Dt(t);if(f){if(l=Pm(t),!s)return $u(t,l)}else{var d=Ot(t),p=d==_l||d==gg;if(oo(t))return mm(t,s);if(d==bl||d==yl||p&&!i){if(l=c||p?{}:tg(t),!s)return c?km(t,pm(l,t)):_m(t,um(l,t))}else{if(!He[d])return i?t:{};l=eg(t,d,s)}}r||(r=new Zt);var m=r.get(t);if(m)return m;r.set(t,l),lg(t)?t.forEach(function(C){l.add(lo(C,n,o,C,t,r))}):rg(t)&&t.forEach(function(C,b){l.set(b,lo(C,n,o,b,t,r))});var g=u?c?ll:zr:c?Dr:Lr,y=f?void 0:g(t);return Ku(y||t,function(C,b){y&&(b=C,C=t[b]),Vr(l,b,lo(C,n,o,b,t,r))}),l}var Rg=1,$g=4;function Sn(t){return lo(t,Rg|$g)}var Fg="__lodash_hash_undefined__";function Lg(t){return this.__data__.set(t,Fg),this}function Dg(t){return this.__data__.has(t)}function so(t){var n=-1,o=t==null?0:t.length;for(this.__data__=new Xt;++n<o;)this.add(t[n])}so.prototype.add=so.prototype.push=Lg,so.prototype.has=Dg;function Mg(t,n){for(var o=-1,a=t==null?0:t.length;++o<a;)if(n(t[o],o,t))return!0;return!1}function Xr(t,n){return t.has(n)}var jg=1,vg=2;function kl(t,n,o,a,i,r){var l=o&jg,s=t.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var u=r.get(t),f=r.get(n);if(u&&f)return u==n&&f==t;var d=-1,p=!0,m=o&vg?new so:void 0;for(r.set(t,n),r.set(n,t);++d<s;){var g=t[d],y=n[d];if(a)var C=l?a(y,g,d,n,t,r):a(g,y,d,t,n,r);if(C!==void 0){if(C)continue;p=!1;break}if(m){if(!Mg(n,function(b,h){if(!Xr(m,h)&&(g===b||i(g,b,o,a,r)))return m.push(h)})){p=!1;break}}else if(!(g===y||i(g,y,o,a,r))){p=!1;break}}return r.delete(t),r.delete(n),p}function Kg(t){var n=-1,o=Array(t.size);return t.forEach(function(a,i){o[++n]=[i,a]}),o}function Ug(t){var n=-1,o=Array(t.size);return t.forEach(function(a){o[++n]=a}),o}var qg=1,Gg=2,zg="[object Boolean]",Hg="[object Date]",Wg="[object Error]",Yg="[object Map]",Jg="[object Number]",Xg="[object RegExp]",Zg="[object Set]",Qg="[object String]",eh="[object Symbol]",th="[object ArrayBuffer]",nh="[object DataView]",wl=Tt?Tt.prototype:void 0,Zr=wl?wl.valueOf:void 0;function oh(t,n,o,a,i,r,l){switch(o){case nh:if(t.byteLength!=n.byteLength||t.byteOffset!=n.byteOffset)return!1;t=t.buffer,n=n.buffer;case th:return!(t.byteLength!=n.byteLength||!r(new Uo(t),new Uo(n)));case zg:case Hg:case Jg:return Or(+t,+n);case Wg:return t.name==n.name&&t.message==n.message;case Xg:case Qg:return t==n+"";case Yg:var s=Kg;case Zg:var c=a&qg;if(s||(s=Ug),t.size!=n.size&&!c)return!1;var u=l.get(t);if(u)return u==n;a|=Gg,l.set(t,n);var f=kl(s(t),s(n),a,i,r,l);return l.delete(t),f;case eh:if(Zr)return Zr.call(t)==Zr.call(n)}return!1}var rh=1,ah=Object.prototype,ih=ah.hasOwnProperty;function lh(t,n,o,a,i,r){var l=o&rh,s=zr(t),c=s.length,u=zr(n),f=u.length;if(c!=f&&!l)return!1;for(var d=c;d--;){var p=s[d];if(!(l?p in n:ih.call(n,p)))return!1}var m=r.get(t),g=r.get(n);if(m&&g)return m==n&&g==t;var y=!0;r.set(t,n),r.set(n,t);for(var C=l;++d<c;){p=s[d];var b=t[p],h=n[p];if(a)var E=l?a(h,b,p,n,t,r):a(b,h,p,t,n,r);if(!(E===void 0?b===h||i(b,h,o,a,r):E)){y=!1;break}C||(C=p=="constructor")}if(y&&!C){var k=t.constructor,_=n.constructor;k!=_&&"constructor"in t&&"constructor"in n&&!(typeof k=="function"&&k instanceof k&&typeof _=="function"&&_ instanceof _)&&(y=!1)}return r.delete(t),r.delete(n),y}var sh=1,Cl="[object Arguments]",El="[object Array]",qo="[object Object]",ch=Object.prototype,Nl=ch.hasOwnProperty;function dh(t,n,o,a,i,r){var l=Dt(t),s=Dt(n),c=l?El:Ot(t),u=s?El:Ot(n);c=c==Cl?qo:c,u=u==Cl?qo:u;var f=c==qo,d=u==qo,p=c==u;if(p&&oo(t)){if(!oo(n))return!1;l=!0,f=!1}if(p&&!f)return r||(r=new Zt),l||Fr(t)?kl(t,n,o,a,i,r):oh(t,n,c,o,a,i,r);if(!(o&sh)){var m=f&&Nl.call(t,"__wrapped__"),g=d&&Nl.call(n,"__wrapped__");if(m||g){var y=m?t.value():t,C=g?n.value():n;return r||(r=new Zt),i(y,C,o,a,r)}}return p?(r||(r=new Zt),lh(t,n,o,a,i,r)):!1}function xl(t,n,o,a,i){return t===n?!0:t==null||n==null||!Ut(t)&&!Ut(n)?t!==t&&n!==n:dh(t,n,o,a,xl,i)}function uh(t,n){return t!=null&&n in Object(t)}function Sl(t,n,o){n=Fn(n,t);for(var a=-1,i=n.length,r=!1;++a<i;){var l=vo(n[a]);if(!(r=t!=null&&o(t,l)))break;t=t[l]}return r||++a!=i?r:(i=t==null?0:t.length,!!i&&Br(i)&&Tr(l,i)&&(Dt(t)||Lo(t)))}function ph(t,n){return t!=null&&Sl(t,n,uh)}function fh(t){return Ut(t)&&$o(t)}function mh(t){var n=t==null?0:t.length;return n?t[n-1]:void 0}var gh={"&":"&","<":"<",">":">",'"':""","'":"'"},hh=rm(gh),Al=/[&<>"']/g,yh=RegExp(Al.source);function _h(t){return t=jo(t),t&&yh.test(t)?t.replace(Al,hh):t}var bh=Object.prototype,kh=bh.hasOwnProperty;function wh(t,n){return t!=null&&kh.call(t,n)}function Go(t,n){return t!=null&&Sl(t,n,wh)}var Ch=Math.min;function Eh(t,n,o){for(var a=Hu,i=t[0].length,r=t.length,l=r,s=Array(r),c=1/0,u=[];l--;){var f=t[l];c=Ch(f.length,c),s[l]=i>=120&&f.length>=120?new so(l&&f):void 0}f=t[0];var d=-1,p=s[0];e:for(;++d<i&&u.length<c;){var m=f[d],g=m;if(m=m!==0?m:0,!(p?Xr(p,g):a(u,g))){for(l=r;--l;){var y=s[l];if(!(y?Xr(y,g):a(t[l],g)))continue e}p&&p.push(g),u.push(m)}}return u}function Nh(t){return fh(t)?t:[]}var xh=Zu(function(t){var n=Ar(t,Nh);return n.length&&n[0]===t[0]?Eh(n):[]});function Sh(t,n){return n.length<2?t:jr(t,Gi(n,0,-1))}var Ah="[object Map]",Ih="[object Set]",Ph=Object.prototype,Th=Ph.hasOwnProperty;function Il(t){if(t==null)return!0;if($o(t)&&(Dt(t)||typeof t=="string"||typeof t.splice=="function"||oo(t)||Fr(t)||Lo(t)))return!t.length;var n=Ot(t);if(n==Ah||n==Ih)return!t.size;if(Fo(t))return!vi(t).length;for(var o in t)if(Th.call(t,o))return!1;return!0}function Vt(t,n){return xl(t,n)}var Oh=Object.prototype,Vh=Oh.hasOwnProperty;function Pl(t,n){n=Fn(n,t);var o=-1,a=n.length;if(!a)return!0;for(var i=t==null||typeof t!="object"&&typeof t!="function";++o<a;){var r=n[o];if(typeof r=="string"){if(r==="__proto__"&&!Vh.call(t,"__proto__"))return!1;if(r==="constructor"&&o+1<a&&typeof n[o+1]=="string"&&n[o+1]==="prototype"){if(i&&o===0)continue;return!1}}}var l=Sh(t,n);return l==null||delete l[vo(mh(n))]}function Bh(t){return Of(t)?void 0:t}var Rh=1,$h=2,Fh=4,sn=Ui(function(t,n){var o={};if(t==null)return o;var a=!1;n=Ar(n,function(r){return r=Fn(r,t),a||(a=r.length>1),r}),no(t,ll(t),o),a&&(o=lo(o,Rh|$h|Fh,Bh));for(var i=n.length;i--;)Pl(o,n[i]);return o});function Tl(t,n,o,a){if(!Cn(t))return t;n=Fn(n,t);for(var i=-1,r=n.length,l=r-1,s=t;s!=null&&++i<r;){var c=vo(n[i]),u=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return t;if(i!=l){var f=s[c];u=void 0,u===void 0&&(u=Cn(f)?f:Tr(n[i+1])?[]:{})}Vr(s,c,u),s=s[c]}return t}function Lh(t,n,o){for(var a=-1,i=n.length,r={};++a<i;){var l=n[a],s=jr(t,l);o(s,l)&&Tl(r,Fn(l,t),s)}return r}function Dh(t,n){return Lh(t,n,function(o,a){return ph(t,a)})}var Ol=Ui(function(t,n){return t==null?{}:Dh(t,n)});function Vl(t,n,o){return t==null?t:Tl(t,n,o)}var Mh=0;function zo(t){var n=++Mh;return jo(t)+n}function Bl(t,n){return t==null?!0:Pl(t,n)}const jh=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],An=t=>{var n,o,a,i,r,l;((o=(n=t.confluent)==null?void 0:n.authentication)==null?void 0:o.mode)==="none"&&(delete t.confluent.authentication.oauth2,delete t.confluent.authentication.oauth2_client,delete t.confluent.authentication.basic),((i=(a=t.confluent)==null?void 0:a.authentication)==null?void 0:i.mode)==="basic"&&(delete t.confluent.authentication.oauth2,delete t.confluent.authentication.oauth2_client),((l=(r=t.confluent)==null?void 0:r.authentication)==null?void 0:l.mode)==="oauth2"&&delete t.confluent.authentication.basic,jh.some(s=>Vt(t.confluent,s))&&(t.confluent=null)};function vh(t,n){const o=t.split(""),a=n.split(""),i=o.length,r=a.length,l=Array.from({length:i+1},()=>Array(r+1).fill(0));for(let f=1;f<=i;f++)for(let d=1;d<=r;d++)o[f-1]===a[d-1]?l[f][d]=l[f-1][d-1]+1:l[f][d]=Math.max(l[f-1][d],l[f][d-1]);let s="",c=i,u=r;for(;c>0&&u>0;)o[c-1]===a[u-1]?(s=o[c-1]+s,c--,u--):l[c-1][u]>l[c][u-1]?c--:u--;return s}function Kh(t){const n=Date.now(),o=2688*60*60*1e3;return Math.abs(n-t)<=o}const Uh={"config-message_by_lua_functions":{...Ke,inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:t})=>{var n;An((n=t.config)==null?void 0:n.schema_registry)}},qh={"config-message_by_lua_functions":{...Ke,inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:t})=>{var n;An((n=t.config)==null?void 0:n.schema_registry)}},Gh={"config-message_by_lua_functions":{...Ke,inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:t})=>{var n,o,a;An((n=t.config)==null?void 0:n.schema_registry),(a=(o=t.config)==null?void 0:o.topics)==null||a.forEach(i=>{An(i==null?void 0:i.schema_registry)})}},zh={"config-message_by_lua_functions":{...Ke,inputAttributes:{...Ke.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:t})=>{var n,o,a;An((n=t.config)==null?void 0:n.schema_registry),(a=(o=t.config)==null?void 0:o.topics)==null||a.forEach(i=>{An(i==null?void 0:i.schema_registry)})}},Hh={shamefullyTransformPayload:({payload:t})=>{var n;An((n=t.config)==null?void 0:n.schema_registry)}},Wh={"config-static_tags":{...Oo,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"}]}}}},Yh={"ai-custom-guardrail":"AICustomGuardrailForm","request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm","upstream-oauth":{experimental:!0,component:"UpstreamOauthForm"},"key-auth":{experimental:!0,component:"KeyAuthForm"},"rate-limiting":{experimental:!0,component:"CommonForm"},jwt:{experimental:!0,component:"CommonForm"},"route-transformer-advanced":{experimental:!0,component:"CommonForm"},"request-transformer":{experimental:!0,component:"CommonForm"},"basic-auth":{experimental:!0,component:"CommonForm"},prometheus:{experimental:!0,component:"CommonForm"},"aws-lambda":{experimental:!0,component:"CommonForm"},"exit-transformer":{experimental:!0,component:"ExitTransformerForm"},"file-log":{experimental:!0,component:"LogForm"},"http-log":{experimental:!0,component:"LogForm"},"correlation-id":{experimental:!0,component:"CommonForm"}};function Qr(t,n){const o=Yh[t];if(typeof o=="string")return o;if(n.includes(t))return o.component}function Jh(t,n,o){return o?o==="freeform":!!Qr(t,n)}const ea=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),Ho={KM_2262_CODE_MODE:"KM-2262-code-mode",KM_2306_CONDITION_FIELD_314:"KM-2306-condition-field-314"},Rl=Symbol("TOASTER_PROVIDER"),Ln="__FREEFORM_SCHEMA_MAP__";function ta(){return e.inject(ea,[])}function Xh(t){e.provide(ea,t)}function Zh(){const t=ta();return{shouldUseFreeForm:(n,o)=>Jh(n,t,o),getFreeFormName:n=>Qr(n,t)||"CommonForm"}}function $l(t){var a,i;if(!t)return;if(!t.token_exchange)return t;if((Array.isArray((a=t.token_exchange.request)==null?void 0:a.audience)&&t.token_exchange.request.audience.length===0||t.token_exchange.request&&!t.token_exchange.request.audience)&&(t.token_exchange.request.audience=null),(Array.isArray((i=t.token_exchange.request)==null?void 0:i.scopes)&&t.token_exchange.request.scopes.length===0||t.token_exchange.request&&!t.token_exchange.request.scopes)&&(t.token_exchange.request.scopes=null),[{cache:{enabled:!0},request:{audience:null,scopes:null,empty_audience:!1,empty_scopes:!1},subject_token_issuers:null},{cache:{enabled:!0},request:{audience:null,scopes:null,empty_audience:!1,empty_scopes:!1}}].some(r=>Vt(t.token_exchange,r)))return t.token_exchange=null,t;const o=t.token_exchange.subject_token_issuers;return o&&o.forEach(r=>{Vt(r.conditions,{})&&(r.conditions=null),r.conditions&&Object.values(r.conditions).every(l=>Array.isArray(l)&&l.length===0)&&(r.conditions=null)}),t}const Qh={shamefullyTransformPayload(t){return $l(t.payload.config),t}},ey={shamefullyTransformPayload(t){var n,o,a,i,r;if(!((o=(n=t.payload.config)==null?void 0:n.access_logs)!=null&&o.custom_attributes_by_lua))return t;if(Vt((i=(a=t.payload.config)==null?void 0:a.access_logs)==null?void 0:i.custom_attributes_by_lua,{})){const l=(r=t.payload.config)==null?void 0:r.access_logs;l&&(l.custom_attributes_by_lua=null)}return t}},ty={shamefullyTransformPayload(t){var o,a;const n=(a=(o=t.payload.config)==null?void 0:o.v2_strategies)==null?void 0:a.openid_connect;return Array.isArray(n)&&n.forEach(i=>{$l(i.config)}),t}},ny={shamefullyTransformPayload(t){var o;return!t.payload.config||!((o=t.payload.config)!=null&&o.token_exchange)||[{cache:{enabled:!0,ttl:3600},client_auth:"client_secret_basic",enabled:!1,request:{actor_token_source:"none",actor_token_type:"urn:ietf:params:oauth:token-type:access_token",audience:null,requested_token_type:"urn:ietf:params:oauth:token-type:access_token",scopes:null,subject_token_type:"urn:ietf:params:oauth:token-type:access_token"}}].some(a=>{var i;return Vt((i=t.payload.config)==null?void 0:i.token_exchange,a)})&&(t.payload.config.token_exchange=null),t}},oy=(t,n)=>{const o=t.model.startsWith("config-"),a=n.model.startsWith("config-");return o&&!a?1:!o&&a?-1:0},Fl=(t,n)=>(t.order??0)-(n.order??0),Ll=(t,n)=>oy(t,n)||Fl(t,n)||t.model.localeCompare(n.model),je={useI18n:De,usePluginMetaData:Fd,usePluginHelpers:li,useSchemas:t=>{const{capitalize:n}=le.useStringHelpers(),{convertToDotNotation:o}=li(),{i18n:{t:a}}=De(),i=ta(),r={"application-registration":{overwriteDefault:!0,formSchema:{...Kd}},datadog:{...Ud},"exit-transformer":{...qd},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...ou},"statsd-advanced":{...ru},"route-by-header":{...Qd},"ai-prompt-decorator":{...Ld},"ai-prompt-template":{...Dd},"ai-proxy-advanced":{...Md},"ai-rag-injector":{...jd},"ai-llm-as-judge":{...vd},"vault-auth":{...iu},"oas-validation":{...Wd},mocking:{...Hd},"rate-limiting":{...Vo},"rate-limiting-advanced":(t==null?void 0:t.app)==="kongManager"?{"config-consumer_groups":Vo["config-consumer_groups"]}:{...Vo},"graphql-rate-limiting-advanced":{...Gd},"injection-protection":{...zd},"response-ratelimiting":{...Vo},"pre-function":{...yi},"post-function":{...yi},"request-transformer-advanced":{...Xd},"response-transformer":{..._i},"response-transformer-advanced":{...Zd},zipkin:{...Wh},"upstream-oauth":{...au},saml:{...eu},"kafka-upstream":{...Uh},"solace-consume":{...tu},"solace-upstream":{...nu},"key-auth":Ad(t),"key-auth-enc":Bd(t),confluent:{...qh},"confluent-consume":{...Gh},"kafka-consume":{...zh},"kafka-log":{...Hh},"openid-connect":{...Qh},opentelemetry:{...ey},"konnect-application-auth":{...ty},"ai-mcp-oauth2":{...ny}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(w,x,O,v)=>{let I={};(x||w)&&(I=x||(w.fields?w.fields:w));const S=l().concat(w.blacklist?w.blacklist:[]),P=Object.keys(I).filter(R=>!S.includes(R)),F=P.indexOf("comparator");F>-1&&P.splice(F,1);let T={fields:[]};const D={};P.forEach(R=>{u(I[R],R,I,D,T,O)});const U=D.name,q=Pt[U],L=[],V=R=>{const A=["cluster-cache"];for(const K of A)if(R.model.includes(K))return!1;return new RegExp("(?<=-redis-).*").test(R.model)};if(T._supported_redis_partial_type=w._supported_redis_partial_type,T._redis_partial_path=w._redis_partial_path,Le.getSharedFormName(U)||Qr(U,i)||q!=null&&q.useLegacyForm||t!=null&&t.credential||v==="freeform"){if(q!=null&&q.useLegacyForm&&(t!=null&&t.enableRedisPartial)&&w._supported_redis_partial_type){for(const R of T.fields)if(V(R)){L.push(R);continue}T.fields=T.fields.filter(R=>!V(R)),L.length&&T.fields.push({id:"_redis",fields:L,model:"__redis_partial",pluginType:w._isCustomPlugin?"custom":"bundled",redisType:w._supported_redis_partial_type,redisPath:w._redis_partial_path})}T.fields.sort((R,A)=>(R.order=R.order||0,A.order=A.order||0,R.order-A.order))}else{const R=[],A=[],K=[],z=[],$={};if(q!=null&&q.fieldRules){const j=[...q.fieldRules.atLeastOneOf??[],...q.fieldRules.onlyOneOf??[],...q.fieldRules.mutuallyRequired??[]];if(q.fieldRules.onlyOneOfMutuallyRequired)for(const W of q.fieldRules.onlyOneOfMutuallyRequired)j.push(...W);for(const W of j)for(const X of W)$[X.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const j of T.fields){if(t!=null&&t.enableRedisPartial&&w._supported_redis_partial_type&&V(j)){z.push(j);continue}if(j.pinned){R.push(j);continue}if(j.required||$[j.model]!==void 0){$[j.model]===!1&&($[j.model]=!0),A.push(j);continue}K.push(j)}z.length&&K.push({id:"_redis",fields:z,model:"__redis_partial",pluginType:w._isCustomPlugin?"custom":"bundled",redisType:w._supported_redis_partial_type,redisPath:w._redis_partial_path,order:-1});const N=Object.entries($).filter(([,j])=>!j).map(([j])=>j.replace(/-/g,".").replace(/_/g,"-"));N.length>0&&console.warn(`Unknown checked fields for plugin ${U}: ${N.join(", ")}`);const B=[];R.length>0&&B.push({fields:R.sort(Fl)}),(A.length>0||K.length>0)&&B.push({fields:A.sort(Ll),collapsible:{title:a("plugins.form.grouping.plugin_configuration.title"),description:a("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:K.sort(Ll),triggerLabel:{expand:a("plugins.form.grouping.advanced_parameters.view"),collapse:a("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),T={groups:B}}return{schema:T,model:D,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=w=>Array.isArray(w.default)||w.default!=null&&typeof w.default!="object"&&w.default!=="function",u=(w,x,O,v,I,S)=>{const P=c(w);return v[x]=P?w.default:null,w.id=x,w.model=x,w.fields&&w.type==="record"?d(w,x,O,v,I,S):(O[x]=w,k(w,v),S&&S[x]&&f(O[x],S[x]),I.fields.push(w)),O},f=(w,x)=>(x&&(Object.assign(w,x),x.label&&(w.label=x.label)),w),d=(w,x,O,v,I,S)=>{w.fields.forEach(P=>{Object.keys(P).forEach(F=>{const T=P[F];O=u(T,x+"-"+F,O,v,I,S)})})},p=(w,x)=>{w.type="input",w.inputType="hidden",w.styleClasses="kong-form-hidden-field-wrapper";const O=t==null?void 0:t.entityId;x[w.model]=O?{id:O}:null},m=w=>{w.type="input",w.inputType="number",w.between&&w.between.length===2&&(w.min=w.between[0],w.max=w.between[1])},g=w=>{Object.prototype.hasOwnProperty.call(w,"one_of")?(w.type="select",w.values=w.one_of,w.selectOptions={hideNoneSelectedText:!0}):(w.type="input",w.inputType="text")},y=w=>{w.type="checkbox",w.default=!0,w.required=!1},C=w=>{if(w.type="object-advanced",w.values.type==="array"){const{type:x}=w.values.elements||{};w.schema={fields:[{schema:{fields:[{...Ke,model:w.model,valueArrayType:x==="integer"?"number":x||"string",inputAttributes:{...Ke.inputAttributes,type:x==="integer"?"number":"text",inputMode:x==="integer"?"numeric":"text"}}]}}]}}else w.values.fields&&(w.schema={fields:[{type:"object",model:"object",schema:{fields:w.values.fields.map(x=>{const O=Object.keys(x)[0];return{model:O,type:"input",label:n(O),placeholder:O,inputType:x[O].type}})}}]})},b=w=>w.fields.reduce((x,O)=>(O.fields&&O.fields.forEach(v=>{x[v.model]=v}),O.model&&(x[O.model]=O),x),{}),h=(w,x)=>{if(!Le.customFields.includes(w.model))return;const O=b(w);Le.customFields.forEach(v=>{Object.keys(O).forEach(I=>{const S=c(O[I]);x[I]=S?O[I].default:null}),delete x[v]})},E=(w,x)=>w.inputType==="hidden"?"":o(n(w.label||x.replace(/_/g," "))),k=(w,x)=>{switch(h(w,x),w.type){case"foreign":p(w,x);break;case"number":m(w),w.attributes={step:"any"};break;case"integer":m(w);break;case"string":g(w);break;case"boolean":y(w);break;case"map":C(w);break}w.inputType==="foreign"&&p(w,x),w.label=E(w,w.model)};function _(w,x){if(x==null||x.type&&x.type!=="record"||typeof w!="object"||w==null)return w;const O={};for(const v of x.fields){const I=Object.keys(v)[0],S=v[I];S.type==="record"?O[I]=_(w[I],S):S.type==="array"&&Array.isArray(w[I])&&S.elements.type==="record"?O[I]=w[I].map(P=>_(P,S.elements)):O[I]=w[I]}return O}return{buildFormSchema:u,parseSchema:s,customSchemas:r,typedefs:Bn,pruneRecord:_}},useExperimentalFreeForms:ta,useProvideExperimentalFreeForms:Xh,useFreeFormResolver:Zh},ry=(t,n)=>({type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label",items:{type:"select",values:t,selectOptions:{hideNoneSelectedText:!0},...(n==null?void 0:n[0])!=null?{default:n[0]}:{}}}),ut="/v2/control-planes/{controlPlaneId}/core-entities",_t="/{workspace}",Je={list:{konnect:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},kongManager:{all:`${_t}/plugins`,forEntity:`${_t}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ut}/v1/available-plugins`,streamingCustomPlugins:`${ut}/custom-plugins`,schemaCustomPluginItem:`${ut}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ut}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${_t}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},edit:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ut}/{resourceEndpoint}`,edit:`${ut}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ut}/{entity}/{id}`,entityGetAll:`${ut}/{entity}`,entityPeek:`${ut}/{entity}?size={amount}`},kongManager:{create:{all:`${_t}/plugins`,forEntity:`${_t}/{entityType}/{entityId}/plugins`},edit:{all:`${_t}/plugins/{id}`,forEntity:`${_t}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${_t}/schemas/plugins/{plugin}`,credential:{create:`${_t}/{resourceEndpoint}`,edit:`${_t}/{resourceEndpoint}/{id}`},credentialSchema:`${_t}/schemas/{plugin}`,entityGetOne:`${_t}/{entity}/{id}`,entityGetAll:`${_t}/{entity}`}},item:{konnect:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${_t}/plugins/{id}`,forEntity:`${_t}/{entityType}/{entityId}/plugins/{id}`}}},ay={class:"referable-field-item"},iy=24,Dl=_e(e.defineComponent({__name:"ReferableFieldItem",props:{field:{},isLast:{type:Boolean}},setup(t){const n=t,{formatPluginFieldLabel:o}=je.usePluginHelpers(),a=e.computed(()=>n.field.replace(/\./g,"-")),i=e.computed(()=>n.field.replace(/^[cC]onfig\./,"").split(".").map(l=>o(l)).join(".")),r=()=>{if(!a.value)return;const l=`label[for="${a.value}"]`,s=document.querySelector(l)||document.getElementById(a.value);if(!s)return;const c=Math.max(0,s.getBoundingClientRect().top+window.scrollY-iy),u=()=>{var f;(f=s.click)==null||f.call(s)};window.addEventListener("scrollend",u,{once:!0}),window.scrollTo({top:c,behavior:"smooth"})};return(l,s)=>(e.openBlock(),e.createElementBlock("span",ay,[e.createElementVNode("span",{class:"referable-field-link",role:"button",tabindex:"0",onClick:r},e.toDisplayString(i.value),1),t.isLast?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(", ")],64))]))}}),[["__scopeId","data-v-c9200dc3"]]),ly={key:0},sy=_e(e.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(t){const n=t,{i18n:{t:o},i18nT:a}=je.useI18n(),i=e.computed(()=>{const r=[];if(n.rules.atLeastOneOf)for(const l of n.rules.atLeastOneOf)r.push({key:"plugins.form.field_rules.at_least_one_of",fields:l});if(n.rules.onlyOneOf)for(const l of n.rules.onlyOneOf)r.push({key:"plugins.form.field_rules.only_one_of",fields:l});if(n.rules.mutuallyRequired)for(const l of n.rules.mutuallyRequired)r.push({key:"plugins.form.field_rules.mutually_required",fields:l});return r});return(r,l)=>{const s=e.resolveComponent("KAlert");return e.openBlock(),e.createBlock(s,{class:"plugin-field-rule-alerts"},{default:e.withCtx(()=>[e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,({key:c,fields:u},f)=>(e.openBlock(),e.createElementBlock("li",{key:`simple-alert-${f}`},[e.createVNode(e.unref(a),{keypath:c},{parameters:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u,(d,p)=>(e.openBlock(),e.createBlock(Dl,{key:`alert-field-${d}`,field:d,"is-last":p===u.length-1},null,8,["field","is-last"]))),128))]),_:2},1032,["keypath"])]))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(e.openBlock(),e.createElementBlock("li",ly,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.rules.onlyOneOfMutuallyRequired,(c,u)=>(e.openBlock(),e.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[e.createElementVNode("div",null,e.toDisplayString(e.unref(o)("plugins.form.field_rules.only_one_of_mutually_required")),1),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c,(f,d)=>(e.openBlock(),e.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${d}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f,(p,m)=>(e.openBlock(),e.createBlock(Dl,{key:`only-one-mutually-field-${p}`,field:p,"is-last":m===f.length-1},null,8,["field","is-last"]))),128))]))),128))])]))),128))])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-cf8dbb52"]]),cy="#ecfcff",dy="#f1f0ff",uy="#52596e",na="#e0e4ea",py="#007d60",Ml="#fffce0",fy="#6c7489",my="#0044f4",gy="#5f9aff",co="#000933",oa="#d60027",hy="#ffe5e5",yy="#00abd2",_y="#d60067",jl="#6f28ff",vl="#afb7c5",Dn="#6c7489",Kl="#0044f4",Ul="#eefaff",ql="#007d60",Gl="#ecfffb",zl="#995c00",by="#306fff",Wo="12px",uo="16px",po="20px",ky="2px",Hl="8px",wy="32px",Wl=_e(e.defineComponent({__name:"SlideTransition",setup(t){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),a=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(g=>[g,m.getPropertyValue(g)]))}function r(p){["overflow","transition",...n].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const g=i(m);Object.assign(m.style,a),requestAnimationFrame(()=>{Object.assign(m.style,{...g,transition:""})})}function c(p){r(p)}function u(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,a)}function d(p){r(p)}return(p,m)=>(e.openBlock(),e.createBlock(e.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:e.withCtx(()=>[e.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-481d7a76"]]);function ra(t){return t.map(n=>({value:n,label:`${n}`}))}const aa="*",In="$",Yo=".";function et(...t){return t.join(Yo)}function ia(...t){return et(In,...t)}function Yl(t){return t.startsWith(et(In,""))}function kt(t){return t.split(Yo).filter(n=>n!=="")}function Pn(t){const n=kt(t);return n[n.length-1]}function Cy(t){return t.startsWith(In)&&(t=et(...kt(t).slice(1))),t}function Ey(t,n){const o=new RegExp("(?<=config-redis-).*"),a=/Config\.Redis.*/;return n.filter(r=>{const l=r.model.match(o);return l&&!Object.keys(t).includes(l[0])}).map(r=>{const l=r.label.match(a);return{label:l?l[0]:r.label,key:r.model,value:"N/A",type:"text"}})}function Ny(t){const n=e.toValue(t);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}function Jl(t,n){return[...t].sort((o,a)=>{const i=Object.keys(o)[0],r=Object.keys(a)[0],l=n.indexOf(i),s=n.indexOf(r);return l===-1&&s===-1?0:l===-1?1:s===-1?-1:l-s})}function Xl(t,n){const o=new Map;t.forEach(u=>{const f=Object.keys(u)[0];o.set(f,u)});const a=new Map;n.forEach((u,f)=>{u.forEach((d,p)=>{a.has(d)||a.set(d,[]),a.get(d).push({bundleIndex:f,position:p})})});const i=new Set,r=[],l=new Set,s=u=>{const f=a.get(u);if(!f)return!0;for(const{bundleIndex:d,position:p}of f){const m=n[d];for(let g=0;g<p;g++){const y=m[g];if(o.has(y)&&!i.has(y))return!1}}return!0},c=u=>{if(i.has(u))return;const f=o.get(u);if(!f)return;r.push(f),i.add(u),l.delete(u);const d=a.get(u);if(d)for(const{bundleIndex:m,position:g}of d){const y=n[m];for(let C=g+1;C<y.length;C++){const b=y[C];if(!i.has(b)){const h=o.get(b);h&&(r.push(h),i.add(b),l.delete(b))}}}const p=Array.from(l);for(const m of p)s(m)&&c(m)};for(const u of t){const f=Object.keys(u)[0];i.has(f)||(s(f)?c(f):l.add(f))}return r}function xy(t){var a;const n=kt(t);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(a=o.parent)!=null&&a.path?et(o.parent.path,i):i,o={parent:o}}return o}function Zl(t){return e.computed(()=>xy(e.toValue(t)))}const Ql=Symbol("free-form-field-path"),la=Symbol("free-form-field-renderer-slots"),es=Symbol("free-form-field-reset-label-path-setting"),Mn="free-form-field-renderers-slot",Sy={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function Ay(t,n=""){const o={},a=t;return Array.isArray(a.fields)?Object.assign(o,sa(a,n)):t.type==="array"&&t.elements&&Object.assign(o,ca(t,n)),o}function sa(t,n=""){const o={};if(Array.isArray(t.fields))for(const a of t.fields){const i=Object.keys(a)[0],r=a[i],l=n?et(n,i):i;if(o[l]=r,r.type==="record"&&Array.isArray(r.fields)){const s=sa(r,l);Object.assign(o,s)}else if(r.type==="array"&&r.elements){const s=ca(r,l);Object.assign(o,s)}}return o}function ca(t,n=""){const o={};if(t.elements){const a=t.elements,i=et(n,aa);if(o[i]=a,a.type==="record"&&Array.isArray(a.fields)){const r=sa(a,i);Object.assign(o,r)}else if(a.type==="array"&&a.elements){const r=ca(a,i);Object.assign(o,r)}}return o}function Jo(t){const n=kt(t).map(o=>/^\d+$/.test(o)?aa:o);return et(...n)}function Iy(t){const n=e.toValue(t),o=e.computed(()=>n?Ay(n):{});function a(p){var m;return p==null?n:(m=o.value)==null?void 0:m[Jo(p)]}function i(p,m=!1){const g=a(p);return g?g.default!==void 0?g.default:m||g.required?g.type==="record"?r(g,p):g.type==="array"?[]:g.type==="map"?{}:null:null:null}function r(p,m){const g={};if(Array.isArray(p.fields))for(const y of p.fields){const C=Object.keys(y)[0],b=m?`${m}.${C}`:C,h=i(b,!1);h!==void 0&&(g[C]=h)}return g}function l(p){return p?i(p,!0):r(a(),"")}function s(p){const m=a(p),g=m!=null&&m.description?So.marked.parse(m.description,{async:!1}):void 0;return{...Sy,"data-testid":`ff-label-${p}`,info:g}}function c(p){var g;const m=a(p);return ra((m==null?void 0:m.one_of)||((g=m.elements)==null?void 0:g.one_of)||[])}function u(p){const m=a(p),g=m==null?void 0:m.default;let y=null;if((m==null?void 0:m.type)==="foreign"&&(g!=null&&g.id))y=g.id;else{if(g==null||typeof g=="object"||g==="")return null;if(Array.isArray(g)){if(g.length===0)return null;y=g.join(", ")}else y=g.toString()}return`Default: ${y}`}function f(){return o.value}function d(p){const m=a(p);return(m==null?void 0:m.required)?l(p):null}return{getSchemaMap:f,getSchema:a,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:u,getEmptyOrDefault:d}}function Py(t){const n=e.ref({}),o=e.ref(new Set);function a(g,y){const C=g.map(h=>kt(h).length),b=C[0];if(!C.every(h=>h===b)){const h=g.map((E,k)=>` - '${E}' is at level ${C[k]}`).join(`
|
|
13
|
+
client. If missing, it will be generated for you.`,inputType:"password",encrypted:!0}},{tags:kn},{ttl:{help:"Time-to-live (in seconds) value for data"}}]},Bd=t=>(t==null?void 0:t.app)==="kongManager"?{shamefullyTransformPayload:({payload:n})=>{(t!=null&&t.credential&&typeof n.ttl!="number"||Number.isNaN(n.ttl))&&(n.ttl=0)}}:{},Rd={fields:[{id:{type:"string",auto:!0,uuid:!0,description:"A string representing a UUID (universally unique identifier)."}},{created_at:{type:"integer",auto:!0,timestamp:!0,description:"An integer representing an automatic Unix timestamp in seconds."}},{consumer:{required:!0,on_delete:"cascade",reference:"consumers",type:"foreign"}},{key:{required:!1,unique:!0,auto:!0,encrypted:!0,type:"string"}},{tags:{type:"set",elements:{type:"string",required:!0,description:"A string representing a tag."},description:"A set of strings representing tags."}},{ttl:{between:[0,1e8],description:"Time-to-live (in seconds) value for data",type:"number"}}]},Pt={"basic-auth":{descriptionKey:"plugins.meta.basic-auth.description",nameKey:"plugins.meta.basic-auth.name",freeformRenderRules:{dependencies:{"config.brute_force_protection.redis":["config.brute_force_protection.strategy","redis"]}},...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"]]},freeformRenderRules:{bundles:[["config.policy","config.redis"]],dependencies:{"config.redis":["config.policy","redis"]}},...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.access_logs_endpoint","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"],freeformRenderRules:{bundles:[["config.cache.strategy","config.cache.redis"]],dependencies:{"config.cache.redis":["config.cache.strategy","redis"]}}},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"]},"ai-lakera-guard":{descriptionKey:"plugins.meta.ai-lakera-guard.description",nameKey:"plugins.meta.ai-lakera-guard.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-lakera-guard"]},"ai-a2a-proxy":{descriptionKey:"plugins.meta.ai-a2a-proxy.description",nameKey:"plugins.meta.ai-a2a-proxy.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-a2a-proxy"]},"ai-custom-guardrail":{descriptionKey:"plugins.meta.ai-custom-guardrail.description",nameKey:"plugins.meta.ai-custom-guardrail.name",useLegacyForm:!0,...Y.PLUGIN_GROUP_AND_SCOPE_MAP["ai-custom-guardrail"]},"metering-and-billing":{descriptionKey:"plugins.meta.metering-and-billing.description",nameKey:"plugins.meta.metering-and-billing.name",...Y.PLUGIN_GROUP_AND_SCOPE_MAP["metering-and-billing"]}},Rn={acl:{titleKey:"plugins.meta.acl.name",plugin:"acl",schema:ci,nameKey:"plugins.meta.acl.credential_name",endpoint:"/acls",schemaEndpoint:"acls",fields:bn(ci),applyCredentialButtonText:"Add group to consumer"},"basic-auth":{titleKey:"plugins.meta.basic-auth.name",plugin:"basic-auth",schema:di,nameKey:"plugins.meta.basic-auth.credential_name",endpoint:"/basic-auth",schemaEndpoint:"basicauth_credentials",fields:bn(di)},"key-auth":{titleKey:"plugins.meta.key-auth.name",plugin:"key-auth",schema:pi,nameKey:"plugins.meta.key-auth.credential_name",endpoint:"/key-auth",schemaEndpoint:"keyauth_credentials",fields:bn(pi)},"key-auth-enc":{titleKey:"plugins.meta.key-auth-enc.name",plugin:"key-auth-enc",schema:gi,nameKey:"plugins.meta.key-auth-enc.credential_name",endpoint:"/key-auth-enc",schemaEndpoint:"keyauth_enc_credentials",fields:bn(gi)},oauth2:{titleKey:"plugins.meta.oauth2.name",plugin:"oauth2",schema:mi,nameKey:"plugins.meta.oauth2.credential_name",endpoint:"/oauth2",schemaEndpoint:"oauth2_credentials",fields:bn(mi)},"hmac-auth":{titleKey:"plugins.meta.hmac-auth.name",plugin:"hmac-auth",schema:fi,nameKey:"plugins.meta.hmac-auth.credential_name",endpoint:"/hmac-auth",schemaEndpoint:"hmacauth_credentials",fields:bn(fi)},jwt:{titleKey:"plugins.meta.jwt.name",plugin:"jwt",schema:Td,nameKey:"plugins.meta.jwt.credential_name",endpoint:"/jwt",schemaEndpoint:"jwt_secrets",fields:{id:{},key:{},algorithm:{}}}},$d={acls:Cd,basicauth_credentials:Ed,keyauth_credentials:Id,keyauth_enc_credentials:Rd,oauth2_credentials:Vd,hmacauth_credentials:Pd,jwt_secrets:Od},Fd=()=>{const{i18n:{t}}=De(),n={},o={};for(const[i,r]of Object.entries(Pt))n[i]={...r,name:t(r.nameKey),description:t(r.descriptionKey)};for(const[i,r]of Object.entries(Rn))o[i]={...r,name:t(r.nameKey),title:t(r.titleKey)};return{pluginMetaData:n,credentialMetaData:o,credentialSchemas:Rn,getDisplayName:i=>{var r;return((r=n[i])==null?void 0:r.name)||i}}},eo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldArrayCardContainer",fieldClasses:"array-card-container-wrapper"},Ld={"config-prompts-prepend":{...eo,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":{...eo,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"}]}}}},Dd={"config-templates":{...eo,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"}]}}}},Md={shamefullyTransformPayload:({originalModel:t,model:n,payload:o,schema:a})=>{const i=l=>{var s;return(s=a[l])!=null&&s.required&&n[l]?!0:t[l]===n[l]?!1:t[l]===null?n[l]!==""&&!Number.isNaN(n[l]):!0},r=l=>Object.keys(t).some(s=>s.startsWith(l)&&i(s));r("config-embeddings")||(o.config.embeddings=null),r("config-vectordb")||(o.config.vectordb=null)}},hi=t=>t.split(",").map(n=>n.trim()).filter(Boolean),jd={shamefullyTransformPayload:({payload:t})=>{var n;(n=t==null?void 0:t.config)!=null&&n.collection_acl_config&&Object.values(t.config.collection_acl_config).forEach(o=>{typeof(o==null?void 0:o.allow)=="string"&&(o.allow=hi(o.allow)),typeof(o==null?void 0:o.deny)=="string"&&(o.deny=hi(o.deny))})}},Kd={"config-prompt":{label:"Prompt",placeholder:"Enter your prompt",type:"textArea",rows:4,max:!1}},vd={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:Bn.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"},Oo={type:"array",showRemoveButton:!1,newElementButtonLabelClasses:"kong-form-new-element-button-label",itemContainerComponent:"FieldMetric",fieldClasses:"metrics-wrapper"},Ud={"config-metrics":{...Oo,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"}]}}}},qd={"config-functions":{...ve,inputAttributes:{...ve.inputAttributes,type:"textarea",max:!1}}},Gd={"config-strategy":{label:"Config.Strategy",type:"select",default:"cluster",values:["cluster","redis"]}},zd={"config-injection_types":{type:"multiselect"},"config-locations":{type:"multiselect"}},Hd={"config-api_specification":{label:"Config.API Specification",placeholder:"Enter an API spec",type:"textArea",rows:10,max:!1}},Wd={"config-api_spec":{label:"Config.API Spec",placeholder:"Enter an API spec",type:"textArea",rows:15,max:!1}},Yd={"config-access":{},"config-body_filter":{},"config-header_filter":{},"config-certificate":{},"config-functions":{},"config-log":{},"config-rewrite":{}},yi=["config-access","config-body_filter","config-header_filter","config-certificate","config-functions","config-log","config-rewrite"].reduce((t,n)=>({...t,[n]:Bn.fields.arrayItems({newElementButtonLabel:"Add"})}),Yd),Vo={"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"}},Jd={"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":{}},Xd=["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((t,n)=>({...t,[n]:Bn.fields.arrayItems({newElementButtonLabel:"Add"})}),Jd),_i={"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}}},Zd={..._i,"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}}},Qd={"config-rules":{...eo,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"}]}}}},eu={"config-session_redis_cluster_nodes":{...eo,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"}]}}}},tu={"config-flow-functions":{...ve,inputAttributes:{...ve.inputAttributes,type:"textarea",max:!1}}},nu={"config-message-functions":{...ve,inputAttributes:{...ve.inputAttributes,type:"textarea",max:!1}}},ou={"config-metrics":{...Oo,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"]}]}}}},ru={"config-metrics":{...Oo,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"]}]}}}},au={"config-behavior-idp_error_response_body_template":{type:"textArea",rows:4}},iu={"config-vault":{type:"AutoSuggest",entity:"vaults",placeholder:"Select a Vault",inputValues:{fields:["prefix","name","id"]},modelTransformer:t=>({id:t}),keyFromObject:"id"}};var bi=typeof global=="object"&&global&&global.Object===Object&&global,lu=typeof self=="object"&&self&&self.Object===Object&&self,vt=bi||lu||Function("return this")(),Tt=vt.Symbol,ki=Object.prototype,su=ki.hasOwnProperty,cu=ki.toString,to=Tt?Tt.toStringTag:void 0;function du(t){var n=su.call(t,to),o=t[to];try{t[to]=void 0;var a=!0}catch{}var i=cu.call(t);return a&&(n?t[to]=o:delete t[to]),i}var uu=Object.prototype,pu=uu.toString;function fu(t){return pu.call(t)}var mu="[object Null]",gu="[object Undefined]",wi=Tt?Tt.toStringTag:void 0;function wn(t){return t==null?t===void 0?gu:mu:wi&&wi in Object(t)?du(t):fu(t)}function Ut(t){return t!=null&&typeof t=="object"}var hu="[object Symbol]";function Sr(t){return typeof t=="symbol"||Ut(t)&&wn(t)==hu}function Ar(t,n){for(var o=-1,a=t==null?0:t.length,i=Array(a);++o<a;)i[o]=n(t[o],o,t);return i}var Dt=Array.isArray,Ci=Tt?Tt.prototype:void 0,Ei=Ci?Ci.toString:void 0;function Ni(t){if(typeof t=="string")return t;if(Dt(t))return Ar(t,Ni)+"";if(Sr(t))return Ei?Ei.call(t):"";var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function Cn(t){var n=typeof t;return t!=null&&(n=="object"||n=="function")}function xi(t){return t}var yu="[object AsyncFunction]",_u="[object Function]",bu="[object GeneratorFunction]",ku="[object Proxy]";function Bo(t){if(!Cn(t))return!1;var n=wn(t);return n==_u||n==bu||n==yu||n==ku}var Ir=vt["__core-js_shared__"],Si=(function(){var t=/[^.]+$/.exec(Ir&&Ir.keys&&Ir.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""})();function wu(t){return!!Si&&Si in t}var Cu=Function.prototype,Eu=Cu.toString;function En(t){if(t!=null){try{return Eu.call(t)}catch{}try{return t+""}catch{}}return""}var Nu=/[\\^$.*+?()[\]{}|]/g,xu=/^\[object .+?Constructor\]$/,Su=Function.prototype,Au=Object.prototype,Iu=Su.toString,Pu=Au.hasOwnProperty,Tu=RegExp("^"+Iu.call(Pu).replace(Nu,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Ou(t){if(!Cn(t)||wu(t))return!1;var n=Bo(t)?Tu:xu;return n.test(En(t))}function Vu(t,n){return t==null?void 0:t[n]}function Nn(t,n){var o=Vu(t,n);return Ou(o)?o:void 0}var Pr=Nn(vt,"WeakMap"),Ai=Object.create,Bu=(function(){function t(){}return function(n){if(!Cn(n))return{};if(Ai)return Ai(n);t.prototype=n;var o=new t;return t.prototype=void 0,o}})();function Ru(t,n,o){switch(o.length){case 0:return t.call(n);case 1:return t.call(n,o[0]);case 2:return t.call(n,o[0],o[1]);case 3:return t.call(n,o[0],o[1],o[2])}return t.apply(n,o)}function $u(t,n){var o=-1,a=t.length;for(n||(n=Array(a));++o<a;)n[o]=t[o];return n}var Fu=800,Lu=16,Du=Date.now;function Mu(t){var n=0,o=0;return function(){var a=Du(),i=Lu-(a-o);if(o=a,i>0){if(++n>=Fu)return arguments[0]}else n=0;return t.apply(void 0,arguments)}}function ju(t){return function(){return t}}var Ro=(function(){try{var t=Nn(Object,"defineProperty");return t({},"",{}),t}catch{}})(),Ku=Ro?function(t,n){return Ro(t,"toString",{configurable:!0,enumerable:!1,value:ju(n),writable:!0})}:xi,Ii=Mu(Ku);function vu(t,n){for(var o=-1,a=t==null?0:t.length;++o<a&&n(t[o],o,t)!==!1;);return t}function Uu(t,n,o,a){for(var i=t.length,r=o+-1;++r<i;)if(n(t[r],r,t))return r;return-1}function qu(t){return t!==t}function Gu(t,n,o){for(var a=o-1,i=t.length;++a<i;)if(t[a]===n)return a;return-1}function zu(t,n,o){return n===n?Gu(t,n,o):Uu(t,qu,o)}function Hu(t,n){var o=t==null?0:t.length;return!!o&&zu(t,n,0)>-1}var Wu=9007199254740991,Yu=/^(?:0|[1-9]\d*)$/;function Tr(t,n){var o=typeof t;return n=n??Wu,!!n&&(o=="number"||o!="symbol"&&Yu.test(t))&&t>-1&&t%1==0&&t<n}function Pi(t,n,o){n=="__proto__"&&Ro?Ro(t,n,{configurable:!0,enumerable:!0,value:o,writable:!0}):t[n]=o}function Or(t,n){return t===n||t!==t&&n!==n}var Ju=Object.prototype,Xu=Ju.hasOwnProperty;function Vr(t,n,o){var a=t[n];(!(Xu.call(t,n)&&Or(a,o))||o===void 0&&!(n in t))&&Pi(t,n,o)}function no(t,n,o,a){var i=!o;o||(o={});for(var r=-1,l=n.length;++r<l;){var s=n[r],c=void 0;c===void 0&&(c=t[s]),i?Pi(o,s,c):Vr(o,s,c)}return o}var Ti=Math.max;function Oi(t,n,o){return n=Ti(n===void 0?t.length-1:n,0),function(){for(var a=arguments,i=-1,r=Ti(a.length-n,0),l=Array(r);++i<r;)l[i]=a[n+i];i=-1;for(var s=Array(n+1);++i<n;)s[i]=a[i];return s[n]=o(l),Ru(t,this,s)}}function Zu(t,n){return Ii(Oi(t,n,xi),t+"")}var Qu=9007199254740991;function Br(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=Qu}function $o(t){return t!=null&&Br(t.length)&&!Bo(t)}var ep=Object.prototype;function Fo(t){var n=t&&t.constructor,o=typeof n=="function"&&n.prototype||ep;return t===o}function tp(t,n){for(var o=-1,a=Array(t);++o<t;)a[o]=n(o);return a}var np="[object Arguments]";function Vi(t){return Ut(t)&&wn(t)==np}var Bi=Object.prototype,op=Bi.hasOwnProperty,rp=Bi.propertyIsEnumerable,Lo=Vi((function(){return arguments})())?Vi:function(t){return Ut(t)&&op.call(t,"callee")&&!rp.call(t,"callee")};function ap(){return!1}var Ri=typeof xe=="object"&&xe&&!xe.nodeType&&xe,$i=Ri&&typeof module=="object"&&module&&!module.nodeType&&module,ip=$i&&$i.exports===Ri,Fi=ip?vt.Buffer:void 0,lp=Fi?Fi.isBuffer:void 0,oo=lp||ap,sp="[object Arguments]",cp="[object Array]",dp="[object Boolean]",up="[object Date]",pp="[object Error]",fp="[object Function]",mp="[object Map]",gp="[object Number]",hp="[object Object]",yp="[object RegExp]",_p="[object Set]",bp="[object String]",kp="[object WeakMap]",wp="[object ArrayBuffer]",Cp="[object DataView]",Ep="[object Float32Array]",Np="[object Float64Array]",xp="[object Int8Array]",Sp="[object Int16Array]",Ap="[object Int32Array]",Ip="[object Uint8Array]",Pp="[object Uint8ClampedArray]",Tp="[object Uint16Array]",Op="[object Uint32Array]",Ye={};Ye[Ep]=Ye[Np]=Ye[xp]=Ye[Sp]=Ye[Ap]=Ye[Ip]=Ye[Pp]=Ye[Tp]=Ye[Op]=!0,Ye[sp]=Ye[cp]=Ye[wp]=Ye[dp]=Ye[Cp]=Ye[up]=Ye[pp]=Ye[fp]=Ye[mp]=Ye[gp]=Ye[hp]=Ye[yp]=Ye[_p]=Ye[bp]=Ye[kp]=!1;function Vp(t){return Ut(t)&&Br(t.length)&&!!Ye[wn(t)]}function Rr(t){return function(n){return t(n)}}var Li=typeof xe=="object"&&xe&&!xe.nodeType&&xe,ro=Li&&typeof module=="object"&&module&&!module.nodeType&&module,Bp=ro&&ro.exports===Li,$r=Bp&&bi.process,$n=(function(){try{var t=ro&&ro.require&&ro.require("util").types;return t||$r&&$r.binding&&$r.binding("util")}catch{}})(),Di=$n&&$n.isTypedArray,Fr=Di?Rr(Di):Vp,Rp=Object.prototype,$p=Rp.hasOwnProperty;function Mi(t,n){var o=Dt(t),a=!o&&Lo(t),i=!o&&!a&&oo(t),r=!o&&!a&&!i&&Fr(t),l=o||a||i||r,s=l?tp(t.length,String):[],c=s.length;for(var u in t)(n||$p.call(t,u))&&!(l&&(u=="length"||i&&(u=="offset"||u=="parent")||r&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||Tr(u,c)))&&s.push(u);return s}function ji(t,n){return function(o){return t(n(o))}}var Fp=ji(Object.keys,Object),Lp=Object.prototype,Dp=Lp.hasOwnProperty;function Ki(t){if(!Fo(t))return Fp(t);var n=[];for(var o in Object(t))Dp.call(t,o)&&o!="constructor"&&n.push(o);return n}function Lr(t){return $o(t)?Mi(t):Ki(t)}function Mp(t){var n=[];if(t!=null)for(var o in Object(t))n.push(o);return n}var jp=Object.prototype,Kp=jp.hasOwnProperty;function vp(t){if(!Cn(t))return Mp(t);var n=Fo(t),o=[];for(var a in t)a=="constructor"&&(n||!Kp.call(t,a))||o.push(a);return o}function Dr(t){return $o(t)?Mi(t,!0):vp(t)}var Up=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,qp=/^\w*$/;function Gp(t,n){if(Dt(t))return!1;var o=typeof t;return o=="number"||o=="symbol"||o=="boolean"||t==null||Sr(t)?!0:qp.test(t)||!Up.test(t)||n!=null&&t in Object(n)}var ao=Nn(Object,"create");function zp(){this.__data__=ao?ao(null):{},this.size=0}function Hp(t){var n=this.has(t)&&delete this.__data__[t];return this.size-=n?1:0,n}var Wp="__lodash_hash_undefined__",Yp=Object.prototype,Jp=Yp.hasOwnProperty;function Xp(t){var n=this.__data__;if(ao){var o=n[t];return o===Wp?void 0:o}return Jp.call(n,t)?n[t]:void 0}var Zp=Object.prototype,Qp=Zp.hasOwnProperty;function ef(t){var n=this.__data__;return ao?n[t]!==void 0:Qp.call(n,t)}var tf="__lodash_hash_undefined__";function nf(t,n){var o=this.__data__;return this.size+=this.has(t)?0:1,o[t]=ao&&n===void 0?tf:n,this}function xn(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var a=t[n];this.set(a[0],a[1])}}xn.prototype.clear=zp,xn.prototype.delete=Hp,xn.prototype.get=Xp,xn.prototype.has=ef,xn.prototype.set=nf;function of(){this.__data__=[],this.size=0}function Do(t,n){for(var o=t.length;o--;)if(Or(t[o][0],n))return o;return-1}var rf=Array.prototype,af=rf.splice;function lf(t){var n=this.__data__,o=Do(n,t);if(o<0)return!1;var a=n.length-1;return o==a?n.pop():af.call(n,o,1),--this.size,!0}function sf(t){var n=this.__data__,o=Do(n,t);return o<0?void 0:n[o][1]}function cf(t){return Do(this.__data__,t)>-1}function df(t,n){var o=this.__data__,a=Do(o,t);return a<0?(++this.size,o.push([t,n])):o[a][1]=n,this}function Jt(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var a=t[n];this.set(a[0],a[1])}}Jt.prototype.clear=of,Jt.prototype.delete=lf,Jt.prototype.get=sf,Jt.prototype.has=cf,Jt.prototype.set=df;var io=Nn(vt,"Map");function uf(){this.size=0,this.__data__={hash:new xn,map:new(io||Jt),string:new xn}}function pf(t){var n=typeof t;return n=="string"||n=="number"||n=="symbol"||n=="boolean"?t!=="__proto__":t===null}function Mo(t,n){var o=t.__data__;return pf(n)?o[typeof n=="string"?"string":"hash"]:o.map}function ff(t){var n=Mo(this,t).delete(t);return this.size-=n?1:0,n}function mf(t){return Mo(this,t).get(t)}function gf(t){return Mo(this,t).has(t)}function hf(t,n){var o=Mo(this,t),a=o.size;return o.set(t,n),this.size+=o.size==a?0:1,this}function Xt(t){var n=-1,o=t==null?0:t.length;for(this.clear();++n<o;){var a=t[n];this.set(a[0],a[1])}}Xt.prototype.clear=uf,Xt.prototype.delete=ff,Xt.prototype.get=mf,Xt.prototype.has=gf,Xt.prototype.set=hf;var yf="Expected a function";function Mr(t,n){if(typeof t!="function"||n!=null&&typeof n!="function")throw new TypeError(yf);var o=function(){var a=arguments,i=n?n.apply(this,a):a[0],r=o.cache;if(r.has(i))return r.get(i);var l=t.apply(this,a);return o.cache=r.set(i,l)||r,l};return o.cache=new(Mr.Cache||Xt),o}Mr.Cache=Xt;var _f=500;function bf(t){var n=Mr(t,function(a){return o.size===_f&&o.clear(),a}),o=n.cache;return n}var kf=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wf=/\\(\\)?/g,Cf=bf(function(t){var n=[];return t.charCodeAt(0)===46&&n.push(""),t.replace(kf,function(o,a,i,r){n.push(i?r.replace(wf,"$1"):a||o)}),n});function jo(t){return t==null?"":Ni(t)}function Fn(t,n){return Dt(t)?t:Gp(t,n)?[t]:Cf(jo(t))}function Ko(t){if(typeof t=="string"||Sr(t))return t;var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}function jr(t,n){n=Fn(n,t);for(var o=0,a=n.length;t!=null&&o<a;)t=t[Ko(n[o++])];return o&&o==a?t:void 0}function vo(t,n,o){var a=t==null?void 0:jr(t,n);return a===void 0?o:a}function Kr(t,n){for(var o=-1,a=n.length,i=t.length;++o<a;)t[i+o]=n[o];return t}var vi=Tt?Tt.isConcatSpreadable:void 0;function Ef(t){return Dt(t)||Lo(t)||!!(vi&&t&&t[vi])}function Nf(t,n,o,a,i){var r=-1,l=t.length;for(o||(o=Ef),i||(i=[]);++r<l;){var s=t[r];o(s)?Kr(i,s):i[i.length]=s}return i}function xf(t){var n=t==null?0:t.length;return n?Nf(t):[]}function Ui(t){return Ii(Oi(t,void 0,xf),t+"")}var vr=ji(Object.getPrototypeOf,Object),Sf="[object Object]",Af=Function.prototype,If=Object.prototype,qi=Af.toString,Pf=If.hasOwnProperty,Tf=qi.call(Object);function Of(t){if(!Ut(t)||wn(t)!=Sf)return!1;var n=vr(t);if(n===null)return!0;var o=Pf.call(n,"constructor")&&n.constructor;return typeof o=="function"&&o instanceof o&&qi.call(o)==Tf}function Gi(t,n,o){var a=-1,i=t.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 r=Array(i);++a<i;)r[a]=t[a+n];return r}function Vf(t,n,o){var a=t.length;return o=o===void 0?a:o,!n&&o>=a?t:Gi(t,n,o)}var Bf="\\ud800-\\udfff",Rf="\\u0300-\\u036f",$f="\\ufe20-\\ufe2f",Ff="\\u20d0-\\u20ff",Lf=Rf+$f+Ff,Df="\\ufe0e\\ufe0f",Mf="\\u200d",jf=RegExp("["+Mf+Bf+Lf+Df+"]");function zi(t){return jf.test(t)}function Kf(t){return t.split("")}var Hi="\\ud800-\\udfff",vf="\\u0300-\\u036f",Uf="\\ufe20-\\ufe2f",qf="\\u20d0-\\u20ff",Gf=vf+Uf+qf,zf="\\ufe0e\\ufe0f",Hf="["+Hi+"]",Ur="["+Gf+"]",qr="\\ud83c[\\udffb-\\udfff]",Wf="(?:"+Ur+"|"+qr+")",Wi="[^"+Hi+"]",Yi="(?:\\ud83c[\\udde6-\\uddff]){2}",Ji="[\\ud800-\\udbff][\\udc00-\\udfff]",Yf="\\u200d",Xi=Wf+"?",Zi="["+zf+"]?",Jf="(?:"+Yf+"(?:"+[Wi,Yi,Ji].join("|")+")"+Zi+Xi+")*",Xf=Zi+Xi+Jf,Zf="(?:"+[Wi+Ur+"?",Ur,Yi,Ji,Hf].join("|")+")",Qf=RegExp(qr+"(?="+qr+")|"+Zf+Xf,"g");function em(t){return t.match(Qf)||[]}function tm(t){return zi(t)?em(t):Kf(t)}function nm(t){return function(n){n=jo(n);var o=zi(n)?tm(n):void 0,a=o?o[0]:n.charAt(0),i=o?Vf(o,1).join(""):n.slice(1);return a[t]()+i}}var om=nm("toUpperCase");function rm(t){return function(n){return t==null?void 0:t[n]}}function am(){this.__data__=new Jt,this.size=0}function im(t){var n=this.__data__,o=n.delete(t);return this.size=n.size,o}function lm(t){return this.__data__.get(t)}function sm(t){return this.__data__.has(t)}var cm=200;function dm(t,n){var o=this.__data__;if(o instanceof Jt){var a=o.__data__;if(!io||a.length<cm-1)return a.push([t,n]),this.size=++o.size,this;o=this.__data__=new Xt(a)}return o.set(t,n),this.size=o.size,this}function Zt(t){var n=this.__data__=new Jt(t);this.size=n.size}Zt.prototype.clear=am,Zt.prototype.delete=im,Zt.prototype.get=lm,Zt.prototype.has=sm,Zt.prototype.set=dm;function um(t,n){return t&&no(n,Lr(n),t)}function pm(t,n){return t&&no(n,Dr(n),t)}var Qi=typeof xe=="object"&&xe&&!xe.nodeType&&xe,el=Qi&&typeof module=="object"&&module&&!module.nodeType&&module,fm=el&&el.exports===Qi,tl=fm?vt.Buffer:void 0,nl=tl?tl.allocUnsafe:void 0;function mm(t,n){if(n)return t.slice();var o=t.length,a=nl?nl(o):new t.constructor(o);return t.copy(a),a}function gm(t,n){for(var o=-1,a=t==null?0:t.length,i=0,r=[];++o<a;){var l=t[o];n(l,o,t)&&(r[i++]=l)}return r}function ol(){return[]}var hm=Object.prototype,ym=hm.propertyIsEnumerable,rl=Object.getOwnPropertySymbols,Gr=rl?function(t){return t==null?[]:(t=Object(t),gm(rl(t),function(n){return ym.call(t,n)}))}:ol;function _m(t,n){return no(t,Gr(t),n)}var bm=Object.getOwnPropertySymbols,al=bm?function(t){for(var n=[];t;)Kr(n,Gr(t)),t=vr(t);return n}:ol;function km(t,n){return no(t,al(t),n)}function il(t,n,o){var a=n(t);return Dt(t)?a:Kr(a,o(t))}function zr(t){return il(t,Lr,Gr)}function ll(t){return il(t,Dr,al)}var Hr=Nn(vt,"DataView"),Wr=Nn(vt,"Promise"),Yr=Nn(vt,"Set"),sl="[object Map]",wm="[object Object]",cl="[object Promise]",dl="[object Set]",ul="[object WeakMap]",pl="[object DataView]",Cm=En(Hr),Em=En(io),Nm=En(Wr),xm=En(Yr),Sm=En(Pr),Ot=wn;(Hr&&Ot(new Hr(new ArrayBuffer(1)))!=pl||io&&Ot(new io)!=sl||Wr&&Ot(Wr.resolve())!=cl||Yr&&Ot(new Yr)!=dl||Pr&&Ot(new Pr)!=ul)&&(Ot=function(t){var n=wn(t),o=n==wm?t.constructor:void 0,a=o?En(o):"";if(a)switch(a){case Cm:return pl;case Em:return sl;case Nm:return cl;case xm:return dl;case Sm:return ul}return n});var Am=Object.prototype,Im=Am.hasOwnProperty;function Pm(t){var n=t.length,o=new t.constructor(n);return n&&typeof t[0]=="string"&&Im.call(t,"index")&&(o.index=t.index,o.input=t.input),o}var Uo=vt.Uint8Array;function Jr(t){var n=new t.constructor(t.byteLength);return new Uo(n).set(new Uo(t)),n}function Tm(t,n){var o=n?Jr(t.buffer):t.buffer;return new t.constructor(o,t.byteOffset,t.byteLength)}var Om=/\w*$/;function Vm(t){var n=new t.constructor(t.source,Om.exec(t));return n.lastIndex=t.lastIndex,n}var fl=Tt?Tt.prototype:void 0,ml=fl?fl.valueOf:void 0;function Bm(t){return ml?Object(ml.call(t)):{}}function Rm(t,n){var o=n?Jr(t.buffer):t.buffer;return new t.constructor(o,t.byteOffset,t.length)}var $m="[object Boolean]",Fm="[object Date]",Lm="[object Map]",Dm="[object Number]",Mm="[object RegExp]",jm="[object Set]",Km="[object String]",vm="[object Symbol]",Um="[object ArrayBuffer]",qm="[object DataView]",Gm="[object Float32Array]",zm="[object Float64Array]",Hm="[object Int8Array]",Wm="[object Int16Array]",Ym="[object Int32Array]",Jm="[object Uint8Array]",Xm="[object Uint8ClampedArray]",Zm="[object Uint16Array]",Qm="[object Uint32Array]";function eg(t,n,o){var a=t.constructor;switch(n){case Um:return Jr(t);case $m:case Fm:return new a(+t);case qm:return Tm(t,o);case Gm:case zm:case Hm:case Wm:case Ym:case Jm:case Xm:case Zm:case Qm:return Rm(t,o);case Lm:return new a;case Dm:case Km:return new a(t);case Mm:return Vm(t);case jm:return new a;case vm:return Bm(t)}}function tg(t){return typeof t.constructor=="function"&&!Fo(t)?Bu(vr(t)):{}}var ng="[object Map]";function og(t){return Ut(t)&&Ot(t)==ng}var gl=$n&&$n.isMap,rg=gl?Rr(gl):og,ag="[object Set]";function ig(t){return Ut(t)&&Ot(t)==ag}var hl=$n&&$n.isSet,lg=hl?Rr(hl):ig,sg=1,cg=2,dg=4,yl="[object Arguments]",ug="[object Array]",pg="[object Boolean]",fg="[object Date]",mg="[object Error]",_l="[object Function]",gg="[object GeneratorFunction]",hg="[object Map]",yg="[object Number]",bl="[object Object]",_g="[object RegExp]",bg="[object Set]",kg="[object String]",wg="[object Symbol]",Cg="[object WeakMap]",Eg="[object ArrayBuffer]",Ng="[object DataView]",xg="[object Float32Array]",Sg="[object Float64Array]",Ag="[object Int8Array]",Ig="[object Int16Array]",Pg="[object Int32Array]",Tg="[object Uint8Array]",Og="[object Uint8ClampedArray]",Vg="[object Uint16Array]",Bg="[object Uint32Array]",He={};He[yl]=He[ug]=He[Eg]=He[Ng]=He[pg]=He[fg]=He[xg]=He[Sg]=He[Ag]=He[Ig]=He[Pg]=He[hg]=He[yg]=He[bl]=He[_g]=He[bg]=He[kg]=He[wg]=He[Tg]=He[Og]=He[Vg]=He[Bg]=!0,He[mg]=He[_l]=He[Cg]=!1;function lo(t,n,o,a,i,r){var l,s=n&sg,c=n&cg,u=n&dg;if(o&&(l=i?o(t,a,i,r):o(t)),l!==void 0)return l;if(!Cn(t))return t;var f=Dt(t);if(f){if(l=Pm(t),!s)return $u(t,l)}else{var d=Ot(t),p=d==_l||d==gg;if(oo(t))return mm(t,s);if(d==bl||d==yl||p&&!i){if(l=c||p?{}:tg(t),!s)return c?km(t,pm(l,t)):_m(t,um(l,t))}else{if(!He[d])return i?t:{};l=eg(t,d,s)}}r||(r=new Zt);var m=r.get(t);if(m)return m;r.set(t,l),lg(t)?t.forEach(function(C){l.add(lo(C,n,o,C,t,r))}):rg(t)&&t.forEach(function(C,b){l.set(b,lo(C,n,o,b,t,r))});var g=u?c?ll:zr:c?Dr:Lr,y=f?void 0:g(t);return vu(y||t,function(C,b){y&&(b=C,C=t[b]),Vr(l,b,lo(C,n,o,b,t,r))}),l}var Rg=1,$g=4;function Sn(t){return lo(t,Rg|$g)}var Fg="__lodash_hash_undefined__";function Lg(t){return this.__data__.set(t,Fg),this}function Dg(t){return this.__data__.has(t)}function so(t){var n=-1,o=t==null?0:t.length;for(this.__data__=new Xt;++n<o;)this.add(t[n])}so.prototype.add=so.prototype.push=Lg,so.prototype.has=Dg;function Mg(t,n){for(var o=-1,a=t==null?0:t.length;++o<a;)if(n(t[o],o,t))return!0;return!1}function Xr(t,n){return t.has(n)}var jg=1,Kg=2;function kl(t,n,o,a,i,r){var l=o&jg,s=t.length,c=n.length;if(s!=c&&!(l&&c>s))return!1;var u=r.get(t),f=r.get(n);if(u&&f)return u==n&&f==t;var d=-1,p=!0,m=o&Kg?new so:void 0;for(r.set(t,n),r.set(n,t);++d<s;){var g=t[d],y=n[d];if(a)var C=l?a(y,g,d,n,t,r):a(g,y,d,t,n,r);if(C!==void 0){if(C)continue;p=!1;break}if(m){if(!Mg(n,function(b,h){if(!Xr(m,h)&&(g===b||i(g,b,o,a,r)))return m.push(h)})){p=!1;break}}else if(!(g===y||i(g,y,o,a,r))){p=!1;break}}return r.delete(t),r.delete(n),p}function vg(t){var n=-1,o=Array(t.size);return t.forEach(function(a,i){o[++n]=[i,a]}),o}function Ug(t){var n=-1,o=Array(t.size);return t.forEach(function(a){o[++n]=a}),o}var qg=1,Gg=2,zg="[object Boolean]",Hg="[object Date]",Wg="[object Error]",Yg="[object Map]",Jg="[object Number]",Xg="[object RegExp]",Zg="[object Set]",Qg="[object String]",eh="[object Symbol]",th="[object ArrayBuffer]",nh="[object DataView]",wl=Tt?Tt.prototype:void 0,Zr=wl?wl.valueOf:void 0;function oh(t,n,o,a,i,r,l){switch(o){case nh:if(t.byteLength!=n.byteLength||t.byteOffset!=n.byteOffset)return!1;t=t.buffer,n=n.buffer;case th:return!(t.byteLength!=n.byteLength||!r(new Uo(t),new Uo(n)));case zg:case Hg:case Jg:return Or(+t,+n);case Wg:return t.name==n.name&&t.message==n.message;case Xg:case Qg:return t==n+"";case Yg:var s=vg;case Zg:var c=a&qg;if(s||(s=Ug),t.size!=n.size&&!c)return!1;var u=l.get(t);if(u)return u==n;a|=Gg,l.set(t,n);var f=kl(s(t),s(n),a,i,r,l);return l.delete(t),f;case eh:if(Zr)return Zr.call(t)==Zr.call(n)}return!1}var rh=1,ah=Object.prototype,ih=ah.hasOwnProperty;function lh(t,n,o,a,i,r){var l=o&rh,s=zr(t),c=s.length,u=zr(n),f=u.length;if(c!=f&&!l)return!1;for(var d=c;d--;){var p=s[d];if(!(l?p in n:ih.call(n,p)))return!1}var m=r.get(t),g=r.get(n);if(m&&g)return m==n&&g==t;var y=!0;r.set(t,n),r.set(n,t);for(var C=l;++d<c;){p=s[d];var b=t[p],h=n[p];if(a)var E=l?a(h,b,p,n,t,r):a(b,h,p,t,n,r);if(!(E===void 0?b===h||i(b,h,o,a,r):E)){y=!1;break}C||(C=p=="constructor")}if(y&&!C){var k=t.constructor,_=n.constructor;k!=_&&"constructor"in t&&"constructor"in n&&!(typeof k=="function"&&k instanceof k&&typeof _=="function"&&_ instanceof _)&&(y=!1)}return r.delete(t),r.delete(n),y}var sh=1,Cl="[object Arguments]",El="[object Array]",qo="[object Object]",ch=Object.prototype,Nl=ch.hasOwnProperty;function dh(t,n,o,a,i,r){var l=Dt(t),s=Dt(n),c=l?El:Ot(t),u=s?El:Ot(n);c=c==Cl?qo:c,u=u==Cl?qo:u;var f=c==qo,d=u==qo,p=c==u;if(p&&oo(t)){if(!oo(n))return!1;l=!0,f=!1}if(p&&!f)return r||(r=new Zt),l||Fr(t)?kl(t,n,o,a,i,r):oh(t,n,c,o,a,i,r);if(!(o&sh)){var m=f&&Nl.call(t,"__wrapped__"),g=d&&Nl.call(n,"__wrapped__");if(m||g){var y=m?t.value():t,C=g?n.value():n;return r||(r=new Zt),i(y,C,o,a,r)}}return p?(r||(r=new Zt),lh(t,n,o,a,i,r)):!1}function xl(t,n,o,a,i){return t===n?!0:t==null||n==null||!Ut(t)&&!Ut(n)?t!==t&&n!==n:dh(t,n,o,a,xl,i)}function uh(t,n){return t!=null&&n in Object(t)}function Sl(t,n,o){n=Fn(n,t);for(var a=-1,i=n.length,r=!1;++a<i;){var l=Ko(n[a]);if(!(r=t!=null&&o(t,l)))break;t=t[l]}return r||++a!=i?r:(i=t==null?0:t.length,!!i&&Br(i)&&Tr(l,i)&&(Dt(t)||Lo(t)))}function ph(t,n){return t!=null&&Sl(t,n,uh)}function fh(t){return Ut(t)&&$o(t)}function mh(t){var n=t==null?0:t.length;return n?t[n-1]:void 0}var gh={"&":"&","<":"<",">":">",'"':""","'":"'"},hh=rm(gh),Al=/[&<>"']/g,yh=RegExp(Al.source);function _h(t){return t=jo(t),t&&yh.test(t)?t.replace(Al,hh):t}var bh=Object.prototype,kh=bh.hasOwnProperty;function wh(t,n){return t!=null&&kh.call(t,n)}function Go(t,n){return t!=null&&Sl(t,n,wh)}var Ch=Math.min;function Eh(t,n,o){for(var a=Hu,i=t[0].length,r=t.length,l=r,s=Array(r),c=1/0,u=[];l--;){var f=t[l];c=Ch(f.length,c),s[l]=i>=120&&f.length>=120?new so(l&&f):void 0}f=t[0];var d=-1,p=s[0];e:for(;++d<i&&u.length<c;){var m=f[d],g=m;if(m=m!==0?m:0,!(p?Xr(p,g):a(u,g))){for(l=r;--l;){var y=s[l];if(!(y?Xr(y,g):a(t[l],g)))continue e}p&&p.push(g),u.push(m)}}return u}function Nh(t){return fh(t)?t:[]}var xh=Zu(function(t){var n=Ar(t,Nh);return n.length&&n[0]===t[0]?Eh(n):[]});function Sh(t,n){return n.length<2?t:jr(t,Gi(n,0,-1))}var Ah="[object Map]",Ih="[object Set]",Ph=Object.prototype,Th=Ph.hasOwnProperty;function Il(t){if(t==null)return!0;if($o(t)&&(Dt(t)||typeof t=="string"||typeof t.splice=="function"||oo(t)||Fr(t)||Lo(t)))return!t.length;var n=Ot(t);if(n==Ah||n==Ih)return!t.size;if(Fo(t))return!Ki(t).length;for(var o in t)if(Th.call(t,o))return!1;return!0}function Vt(t,n){return xl(t,n)}var Oh=Object.prototype,Vh=Oh.hasOwnProperty;function Pl(t,n){n=Fn(n,t);var o=-1,a=n.length;if(!a)return!0;for(var i=t==null||typeof t!="object"&&typeof t!="function";++o<a;){var r=n[o];if(typeof r=="string"){if(r==="__proto__"&&!Vh.call(t,"__proto__"))return!1;if(r==="constructor"&&o+1<a&&typeof n[o+1]=="string"&&n[o+1]==="prototype"){if(i&&o===0)continue;return!1}}}var l=Sh(t,n);return l==null||delete l[Ko(mh(n))]}function Bh(t){return Of(t)?void 0:t}var Rh=1,$h=2,Fh=4,sn=Ui(function(t,n){var o={};if(t==null)return o;var a=!1;n=Ar(n,function(r){return r=Fn(r,t),a||(a=r.length>1),r}),no(t,ll(t),o),a&&(o=lo(o,Rh|$h|Fh,Bh));for(var i=n.length;i--;)Pl(o,n[i]);return o});function Tl(t,n,o,a){if(!Cn(t))return t;n=Fn(n,t);for(var i=-1,r=n.length,l=r-1,s=t;s!=null&&++i<r;){var c=Ko(n[i]),u=o;if(c==="__proto__"||c==="constructor"||c==="prototype")return t;if(i!=l){var f=s[c];u=void 0,u===void 0&&(u=Cn(f)?f:Tr(n[i+1])?[]:{})}Vr(s,c,u),s=s[c]}return t}function Lh(t,n,o){for(var a=-1,i=n.length,r={};++a<i;){var l=n[a],s=jr(t,l);o(s,l)&&Tl(r,Fn(l,t),s)}return r}function Dh(t,n){return Lh(t,n,function(o,a){return ph(t,a)})}var Ol=Ui(function(t,n){return t==null?{}:Dh(t,n)});function Vl(t,n,o){return t==null?t:Tl(t,n,o)}var Mh=0;function zo(t){var n=++Mh;return jo(t)+n}function Bl(t,n){return t==null?!0:Pl(t,n)}const jh=[{authentication:{mode:"none"},ssl_verify:!0},{authentication:{basic:{}}},{authentication:{basic:{},oauth2:{token_headers:{},token_post_args:{}},oauth2_client:{}}}],An=t=>{var n,o,a,i,r,l;((o=(n=t.confluent)==null?void 0:n.authentication)==null?void 0:o.mode)==="none"&&(delete t.confluent.authentication.oauth2,delete t.confluent.authentication.oauth2_client,delete t.confluent.authentication.basic),((i=(a=t.confluent)==null?void 0:a.authentication)==null?void 0:i.mode)==="basic"&&(delete t.confluent.authentication.oauth2,delete t.confluent.authentication.oauth2_client),((l=(r=t.confluent)==null?void 0:r.authentication)==null?void 0:l.mode)==="oauth2"&&delete t.confluent.authentication.basic,jh.some(s=>Vt(t.confluent,s))&&(t.confluent=null)};function Kh(t,n){const o=t.split(""),a=n.split(""),i=o.length,r=a.length,l=Array.from({length:i+1},()=>Array(r+1).fill(0));for(let f=1;f<=i;f++)for(let d=1;d<=r;d++)o[f-1]===a[d-1]?l[f][d]=l[f-1][d-1]+1:l[f][d]=Math.max(l[f-1][d],l[f][d-1]);let s="",c=i,u=r;for(;c>0&&u>0;)o[c-1]===a[u-1]?(s=o[c-1]+s,c--,u--):l[c-1][u]>l[c][u-1]?c--:u--;return s}function vh(t){const n=Date.now(),o=2688*60*60*1e3;return Math.abs(n-t)<=o}const Uh={"config-message_by_lua_functions":{...ve,inputAttributes:{...ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:t})=>{var n;An((n=t.config)==null?void 0:n.schema_registry)}},qh={"config-message_by_lua_functions":{...ve,inputAttributes:{...ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:t})=>{var n;An((n=t.config)==null?void 0:n.schema_registry)}},Gh={"config-message_by_lua_functions":{...ve,inputAttributes:{...ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:t})=>{var n,o,a;An((n=t.config)==null?void 0:n.schema_registry),(a=(o=t.config)==null?void 0:o.topics)==null||a.forEach(i=>{An(i==null?void 0:i.schema_registry)})}},zh={"config-message_by_lua_functions":{...ve,inputAttributes:{...ve.inputAttributes,type:"textarea",max:!1}},shamefullyTransformPayload:({payload:t})=>{var n,o,a;An((n=t.config)==null?void 0:n.schema_registry),(a=(o=t.config)==null?void 0:o.topics)==null||a.forEach(i=>{An(i==null?void 0:i.schema_registry)})}},Hh={shamefullyTransformPayload:({payload:t})=>{var n;An((n=t.config)==null?void 0:n.schema_registry)}},Wh={"config-static_tags":{...Oo,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"}]}}}},Yh={"ai-custom-guardrail":"AICustomGuardrailForm","request-callout":"RequestCalloutForm","service-protection":{experimental:!0,component:"ServiceProtectionForm"},datakit:"DatakitForm","ai-mcp-proxy":"AIMcpProxyForm","jwt-signer":"CommonForm","upstream-oauth":{experimental:!0,component:"UpstreamOauthForm"},"key-auth":{experimental:!0,component:"KeyAuthForm"},"rate-limiting":{experimental:!0,component:"CommonForm"},jwt:{experimental:!0,component:"CommonForm"},"route-transformer-advanced":{experimental:!0,component:"CommonForm"},"request-transformer":{experimental:!0,component:"CommonForm"},"basic-auth":{experimental:!0,component:"CommonForm"},prometheus:{experimental:!0,component:"CommonForm"},"aws-lambda":{experimental:!0,component:"CommonForm"},"exit-transformer":{experimental:!0,component:"ExitTransformerForm"},"file-log":{experimental:!0,component:"LogForm"},"http-log":{experimental:!0,component:"LogForm"},"correlation-id":{experimental:!0,component:"CommonForm"}};function Qr(t,n){const o=Yh[t];if(typeof o=="string")return o;if(n.includes(t))return o.component}function Jh(t,n,o){return o?o==="freeform":!!Qr(t,n)}const ea=Symbol("EXPERIMENTAL_FREE_FORM_PROVIDER"),Ho={KM_2262_CODE_MODE:"KM-2262-code-mode",KM_2306_CONDITION_FIELD_314:"KM-2306-condition-field-314"},Rl=Symbol("TOASTER_PROVIDER"),Ln="__FREEFORM_SCHEMA_MAP__";function ta(){return e.inject(ea,[])}function Xh(t){e.provide(ea,t)}function Zh(){const t=ta();return{shouldUseFreeForm:(n,o)=>Jh(n,t,o),getFreeFormName:n=>Qr(n,t)||"CommonForm"}}function $l(t){var a,i;if(!t)return;if(!t.token_exchange)return t;if((Array.isArray((a=t.token_exchange.request)==null?void 0:a.audience)&&t.token_exchange.request.audience.length===0||t.token_exchange.request&&!t.token_exchange.request.audience)&&(t.token_exchange.request.audience=null),(Array.isArray((i=t.token_exchange.request)==null?void 0:i.scopes)&&t.token_exchange.request.scopes.length===0||t.token_exchange.request&&!t.token_exchange.request.scopes)&&(t.token_exchange.request.scopes=null),[{cache:{enabled:!0},request:{audience:null,scopes:null,empty_audience:!1,empty_scopes:!1},subject_token_issuers:null},{cache:{enabled:!0},request:{audience:null,scopes:null,empty_audience:!1,empty_scopes:!1}}].some(r=>Vt(t.token_exchange,r)))return t.token_exchange=null,t;const o=t.token_exchange.subject_token_issuers;return o&&o.forEach(r=>{Vt(r.conditions,{})&&(r.conditions=null),r.conditions&&Object.values(r.conditions).every(l=>Array.isArray(l)&&l.length===0)&&(r.conditions=null)}),t}const Qh={shamefullyTransformPayload(t){return $l(t.payload.config),t}},ey={shamefullyTransformPayload(t){var n,o,a,i,r;if(!((o=(n=t.payload.config)==null?void 0:n.access_logs)!=null&&o.custom_attributes_by_lua))return t;if(Vt((i=(a=t.payload.config)==null?void 0:a.access_logs)==null?void 0:i.custom_attributes_by_lua,{})){const l=(r=t.payload.config)==null?void 0:r.access_logs;l&&(l.custom_attributes_by_lua=null)}return t}},ty={shamefullyTransformPayload(t){var o,a;const n=(a=(o=t.payload.config)==null?void 0:o.v2_strategies)==null?void 0:a.openid_connect;return Array.isArray(n)&&n.forEach(i=>{$l(i.config)}),t}},ny={shamefullyTransformPayload(t){var o;return!t.payload.config||!((o=t.payload.config)!=null&&o.token_exchange)||[{cache:{enabled:!0,ttl:3600},client_auth:"client_secret_basic",enabled:!1,request:{actor_token_source:"none",actor_token_type:"urn:ietf:params:oauth:token-type:access_token",audience:null,requested_token_type:"urn:ietf:params:oauth:token-type:access_token",scopes:null,subject_token_type:"urn:ietf:params:oauth:token-type:access_token"}}].some(a=>{var i;return Vt((i=t.payload.config)==null?void 0:i.token_exchange,a)})&&(t.payload.config.token_exchange=null),t}},oy=(t,n)=>{const o=t.model.startsWith("config-"),a=n.model.startsWith("config-");return o&&!a?1:!o&&a?-1:0},Fl=(t,n)=>(t.order??0)-(n.order??0),Ll=(t,n)=>oy(t,n)||Fl(t,n)||t.model.localeCompare(n.model),je={useI18n:De,usePluginMetaData:Fd,usePluginHelpers:li,useSchemas:t=>{const{capitalize:n}=le.useStringHelpers(),{convertToDotNotation:o}=li(),{i18n:{t:a}}=De(),i=ta(),r={"application-registration":{overwriteDefault:!0,formSchema:{...vd}},datadog:{...Ud},"exit-transformer":{...qd},"upstream-tls":{"config-trusted_certificates":{type:"textArea",valueType:"array",rows:4,help:"A comma separated list of certificate values"}},statsd:{...ou},"statsd-advanced":{...ru},"route-by-header":{...Qd},"ai-prompt-decorator":{...Ld},"ai-prompt-template":{...Dd},"ai-proxy-advanced":{...Md},"ai-rag-injector":{...jd},"ai-llm-as-judge":{...Kd},"vault-auth":{...iu},"oas-validation":{...Wd},mocking:{...Hd},"rate-limiting":{...Vo},"rate-limiting-advanced":(t==null?void 0:t.app)==="kongManager"?{"config-consumer_groups":Vo["config-consumer_groups"]}:{...Vo},"graphql-rate-limiting-advanced":{...Gd},"injection-protection":{...zd},"response-ratelimiting":{...Vo},"pre-function":{...yi},"post-function":{...yi},"request-transformer-advanced":{...Xd},"response-transformer":{..._i},"response-transformer-advanced":{...Zd},zipkin:{...Wh},"upstream-oauth":{...au},saml:{...eu},"kafka-upstream":{...Uh},"solace-consume":{...tu},"solace-upstream":{...nu},"key-auth":Ad(t),"key-auth-enc":Bd(t),confluent:{...qh},"confluent-consume":{...Gh},"kafka-consume":{...zh},"kafka-log":{...Hh},"openid-connect":{...Qh},opentelemetry:{...ey},"konnect-application-auth":{...ty},"ai-mcp-oauth2":{...ny}},l=()=>["created_at","updated_at","id","_isCustomPlugin","_supported_redis_partial_type","_redis_partial_path"],s=(w,x,O,K)=>{let I={};(x||w)&&(I=x||(w.fields?w.fields:w));const S=l().concat(w.blacklist?w.blacklist:[]),P=Object.keys(I).filter(R=>!S.includes(R)),F=P.indexOf("comparator");F>-1&&P.splice(F,1);let T={fields:[]};const D={};P.forEach(R=>{u(I[R],R,I,D,T,O)});const U=D.name,q=Pt[U],L=[],V=R=>{const A=["cluster-cache"];for(const v of A)if(R.model.includes(v))return!1;return new RegExp("(?<=-redis-).*").test(R.model)};if(T._supported_redis_partial_type=w._supported_redis_partial_type,T._redis_partial_path=w._redis_partial_path,Le.getSharedFormName(U)||Qr(U,i)||q!=null&&q.useLegacyForm||t!=null&&t.credential||K==="freeform"){if(q!=null&&q.useLegacyForm&&(t!=null&&t.enableRedisPartial)&&w._supported_redis_partial_type){for(const R of T.fields)if(V(R)){L.push(R);continue}T.fields=T.fields.filter(R=>!V(R)),L.length&&T.fields.push({id:"_redis",fields:L,model:"__redis_partial",pluginType:w._isCustomPlugin?"custom":"bundled",redisType:w._supported_redis_partial_type,redisPath:w._redis_partial_path})}T.fields.sort((R,A)=>(R.order=R.order||0,A.order=A.order||0,R.order-A.order))}else{const R=[],A=[],v=[],z=[],$={};if(q!=null&&q.fieldRules){const j=[...q.fieldRules.atLeastOneOf??[],...q.fieldRules.onlyOneOf??[],...q.fieldRules.mutuallyRequired??[]];if(q.fieldRules.onlyOneOfMutuallyRequired)for(const W of q.fieldRules.onlyOneOfMutuallyRequired)j.push(...W);for(const W of j)for(const X of W)$[X.replace(/-/g,"_").replace(/\./g,"-")]=!1}for(const j of T.fields){if(t!=null&&t.enableRedisPartial&&w._supported_redis_partial_type&&V(j)){z.push(j);continue}if(j.pinned){R.push(j);continue}if(j.required||$[j.model]!==void 0){$[j.model]===!1&&($[j.model]=!0),A.push(j);continue}v.push(j)}z.length&&v.push({id:"_redis",fields:z,model:"__redis_partial",pluginType:w._isCustomPlugin?"custom":"bundled",redisType:w._supported_redis_partial_type,redisPath:w._redis_partial_path,order:-1});const N=Object.entries($).filter(([,j])=>!j).map(([j])=>j.replace(/-/g,".").replace(/_/g,"-"));N.length>0&&console.warn(`Unknown checked fields for plugin ${U}: ${N.join(", ")}`);const B=[];R.length>0&&B.push({fields:R.sort(Fl)}),(A.length>0||v.length>0)&&B.push({fields:A.sort(Ll),collapsible:{title:a("plugins.form.grouping.plugin_configuration.title"),description:a("plugins.form.grouping.plugin_configuration.description"),nestedCollapsible:{fields:v.sort(Ll),triggerLabel:{expand:a("plugins.form.grouping.advanced_parameters.view"),collapse:a("plugins.form.grouping.advanced_parameters.hide")}}},slots:{beforeContent:"plugin-config-before-content",emptyState:"plugin-config-empty-state"}}),T={groups:B}}return{schema:T,model:D,options:{noneSelectedText:"Nothing Selected...",helpAsHtml:!0}}},c=w=>Array.isArray(w.default)||w.default!=null&&typeof w.default!="object"&&w.default!=="function",u=(w,x,O,K,I,S)=>{const P=c(w);return K[x]=P?w.default:null,w.id=x,w.model=x,w.fields&&w.type==="record"?d(w,x,O,K,I,S):(O[x]=w,k(w,K),S&&S[x]&&f(O[x],S[x]),I.fields.push(w)),O},f=(w,x)=>(x&&(Object.assign(w,x),x.label&&(w.label=x.label)),w),d=(w,x,O,K,I,S)=>{w.fields.forEach(P=>{Object.keys(P).forEach(F=>{const T=P[F];O=u(T,x+"-"+F,O,K,I,S)})})},p=(w,x)=>{w.type="input",w.inputType="hidden",w.styleClasses="kong-form-hidden-field-wrapper";const O=t==null?void 0:t.entityId;x[w.model]=O?{id:O}:null},m=w=>{w.type="input",w.inputType="number",w.between&&w.between.length===2&&(w.min=w.between[0],w.max=w.between[1])},g=w=>{Object.prototype.hasOwnProperty.call(w,"one_of")?(w.type="select",w.values=w.one_of,w.selectOptions={hideNoneSelectedText:!0}):(w.type="input",w.inputType="text")},y=w=>{w.type="checkbox",w.default=!0,w.required=!1},C=w=>{if(w.type="object-advanced",w.values.type==="array"){const{type:x}=w.values.elements||{};w.schema={fields:[{schema:{fields:[{...ve,model:w.model,valueArrayType:x==="integer"?"number":x||"string",inputAttributes:{...ve.inputAttributes,type:x==="integer"?"number":"text",inputMode:x==="integer"?"numeric":"text"}}]}}]}}else w.values.fields&&(w.schema={fields:[{type:"object",model:"object",schema:{fields:w.values.fields.map(x=>{const O=Object.keys(x)[0];return{model:O,type:"input",label:n(O),placeholder:O,inputType:x[O].type}})}}]})},b=w=>w.fields.reduce((x,O)=>(O.fields&&O.fields.forEach(K=>{x[K.model]=K}),O.model&&(x[O.model]=O),x),{}),h=(w,x)=>{if(!Le.customFields.includes(w.model))return;const O=b(w);Le.customFields.forEach(K=>{Object.keys(O).forEach(I=>{const S=c(O[I]);x[I]=S?O[I].default:null}),delete x[K]})},E=(w,x)=>w.inputType==="hidden"?"":o(n(w.label||x.replace(/_/g," "))),k=(w,x)=>{switch(h(w,x),w.type){case"foreign":p(w,x);break;case"number":m(w),w.attributes={step:"any"};break;case"integer":m(w);break;case"string":g(w);break;case"boolean":y(w);break;case"map":C(w);break}w.inputType==="foreign"&&p(w,x),w.label=E(w,w.model)};function _(w,x){if(x==null||x.type&&x.type!=="record"||typeof w!="object"||w==null)return w;const O={};for(const K of x.fields){const I=Object.keys(K)[0],S=K[I];S.type==="record"?O[I]=_(w[I],S):S.type==="array"&&Array.isArray(w[I])&&S.elements.type==="record"?O[I]=w[I].map(P=>_(P,S.elements)):O[I]=w[I]}return O}return{buildFormSchema:u,parseSchema:s,customSchemas:r,typedefs:Bn,pruneRecord:_}},useExperimentalFreeForms:ta,useProvideExperimentalFreeForms:Xh,useFreeFormResolver:Zh},ry=(t,n)=>({type:"array",valueType:"string",valueArrayType:"array",itemContainerComponent:"FieldArrayItem",fieldClasses:"kong-form-array-field",fieldItemsClasses:"kong-form-array-field-item",validator:"array",styleClasses:"kong-form-field-wrapper",newElementButtonLabel:"+ Add",newElementButtonLabelClasses:"kong-form-new-element-button-label",items:{type:"select",values:t,selectOptions:{hideNoneSelectedText:!0},...(n==null?void 0:n[0])!=null?{default:n[0]}:{}}}),ut="/v2/control-planes/{controlPlaneId}/core-entities",_t="/{workspace}",Je={list:{konnect:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},kongManager:{all:`${_t}/plugins`,forEntity:`${_t}/{entityType}/{entityId}/plugins`}},select:{konnect:{availablePlugins:`${ut}/v1/available-plugins`,streamingCustomPlugins:`${ut}/custom-plugins`,schemaCustomPluginItem:`${ut}/plugin-schemas/{pluginId}`,streamingCustomPluginItem:`${ut}/custom-plugins/{pluginId}`},kongManager:{availablePlugins:`${_t}/kong`,availablePluginsForOss:"/"}},form:{konnect:{create:{all:`${ut}/plugins`,forEntity:`${ut}/{entityType}/{entityId}/plugins`},edit:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/plugins/{plugin}",credential:{create:`${ut}/{resourceEndpoint}`,edit:`${ut}/{resourceEndpoint}/{id}`},credentialSchema:"/v2/control-planes/{controlPlaneId}/schemas/core-entities/{plugin}",entityGetOne:`${ut}/{entity}/{id}`,entityGetAll:`${ut}/{entity}`,entityPeek:`${ut}/{entity}?size={amount}`},kongManager:{create:{all:`${_t}/plugins`,forEntity:`${_t}/{entityType}/{entityId}/plugins`},edit:{all:`${_t}/plugins/{id}`,forEntity:`${_t}/{entityType}/{entityId}/plugins/{id}`},pluginSchema:`${_t}/schemas/plugins/{plugin}`,credential:{create:`${_t}/{resourceEndpoint}`,edit:`${_t}/{resourceEndpoint}/{id}`},credentialSchema:`${_t}/schemas/{plugin}`,entityGetOne:`${_t}/{entity}/{id}`,entityGetAll:`${_t}/{entity}`}},item:{konnect:{all:`${ut}/plugins/{id}`,forEntity:`${ut}/{entityType}/{entityId}/plugins/{id}`},kongManager:{all:`${_t}/plugins/{id}`,forEntity:`${_t}/{entityType}/{entityId}/plugins/{id}`}}},ay={class:"referable-field-item"},iy=24,Dl=_e(e.defineComponent({__name:"ReferableFieldItem",props:{field:{},isLast:{type:Boolean}},setup(t){const n=t,{formatPluginFieldLabel:o}=je.usePluginHelpers(),a=e.computed(()=>n.field.replace(/\./g,"-")),i=e.computed(()=>n.field.replace(/^[cC]onfig\./,"").split(".").map(l=>o(l)).join(".")),r=()=>{if(!a.value)return;const l=`label[for="${a.value}"]`,s=document.querySelector(l)||document.getElementById(a.value);if(!s)return;const c=Math.max(0,s.getBoundingClientRect().top+window.scrollY-iy),u=()=>{var f;(f=s.click)==null||f.call(s)};window.addEventListener("scrollend",u,{once:!0}),window.scrollTo({top:c,behavior:"smooth"})};return(l,s)=>(e.openBlock(),e.createElementBlock("span",ay,[e.createElementVNode("span",{class:"referable-field-link",role:"button",tabindex:"0",onClick:r},e.toDisplayString(i.value),1),t.isLast?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(", ")],64))]))}}),[["__scopeId","data-v-949a9ea1"]]),ly={key:0},sy=_e(e.defineComponent({__name:"PluginFieldRuleAlerts",props:{rules:{}},setup(t){const n=t,{i18n:{t:o},i18nT:a}=je.useI18n(),i=e.computed(()=>{const r=[];if(n.rules.atLeastOneOf)for(const l of n.rules.atLeastOneOf)r.push({key:"plugins.form.field_rules.at_least_one_of",fields:l});if(n.rules.onlyOneOf)for(const l of n.rules.onlyOneOf)r.push({key:"plugins.form.field_rules.only_one_of",fields:l});if(n.rules.mutuallyRequired)for(const l of n.rules.mutuallyRequired)r.push({key:"plugins.form.field_rules.mutually_required",fields:l});return r});return(r,l)=>{const s=e.resolveComponent("KAlert");return e.openBlock(),e.createBlock(s,{class:"plugin-field-rule-alerts"},{default:e.withCtx(()=>[e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.value,({key:c,fields:u},f)=>(e.openBlock(),e.createElementBlock("li",{key:`simple-alert-${f}`},[e.createVNode(e.unref(a),{keypath:c},{parameters:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u,(d,p)=>(e.openBlock(),e.createBlock(Dl,{key:`alert-field-${d}`,field:d,"is-last":p===u.length-1},null,8,["field","is-last"]))),128))]),_:2},1032,["keypath"])]))),128)),n.rules.onlyOneOfMutuallyRequired&&n.rules.onlyOneOfMutuallyRequired.length>0?(e.openBlock(),e.createElementBlock("li",ly,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.rules.onlyOneOfMutuallyRequired,(c,u)=>(e.openBlock(),e.createElementBlock("div",{key:`only-one-mutually-alert-${u}`},[e.createElementVNode("div",null,e.toDisplayString(e.unref(o)("plugins.form.field_rules.only_one_of_mutually_required")),1),e.createElementVNode("ul",null,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c,(f,d)=>(e.openBlock(),e.createElementBlock("li",{key:`only-one-mutually-alert-${u}-combination-${d}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f,(p,m)=>(e.openBlock(),e.createBlock(Dl,{key:`only-one-mutually-field-${p}`,field:p,"is-last":m===f.length-1},null,8,["field","is-last"]))),128))]))),128))])]))),128))])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-5f9ff453"]]),cy="#ecfcff",dy="#f1f0ff",uy="#52596e",na="#e0e4ea",py="#007d60",Ml="#fffce0",fy="#6c7489",my="#0044f4",gy="#5f9aff",co="#000933",oa="#d60027",hy="#ffe5e5",yy="#00abd2",_y="#d60067",jl="#6f28ff",Kl="#afb7c5",Dn="#6c7489",vl="#0044f4",Ul="#eefaff",ql="#007d60",Gl="#ecfffb",zl="#995c00",by="#306fff",Wo="12px",uo="16px",po="20px",ky="2px",Hl="8px",wy="32px",Wl=_e(e.defineComponent({__name:"SlideTransition",setup(t){const n=["height","padding-top","padding-bottom","margin-top","margin-bottom","border-top-width","border-bottom-width"],o=Object.fromEntries(n.map(p=>[p,""])),a=Object.fromEntries(n.map(p=>[p,"0"]));function i(p){const m=getComputedStyle(p);return Object.fromEntries(n.map(g=>[g,m.getPropertyValue(g)]))}function r(p){["overflow","transition",...n].forEach(m=>p.style.removeProperty(m))}function l(p){Object.assign(p.style,{overflow:"hidden",transition:"none"})}function s(p){const m=p;Object.assign(m.style,o);const g=i(m);Object.assign(m.style,a),requestAnimationFrame(()=>{Object.assign(m.style,{...g,transition:""})})}function c(p){r(p)}function u(p){const m=p;Object.assign(m.style,{...i(m),overflow:"hidden"})}function f(p){Object.assign(p.style,a)}function d(p){r(p)}return(p,m)=>(e.openBlock(),e.createBlock(e.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:e.withCtx(()=>[e.renderSlot(p.$slots,"default",{},void 0,!0)]),_:3}))}}),[["__scopeId","data-v-4969409d"]]);function ra(t){return t.map(n=>({value:n,label:`${n}`}))}const aa="*",In="$",Yo=".";function et(...t){return t.join(Yo)}function ia(...t){return et(In,...t)}function Yl(t){return t.startsWith(et(In,""))}function kt(t){return t.split(Yo).filter(n=>n!=="")}function Pn(t){const n=kt(t);return n[n.length-1]}function Cy(t){return t.startsWith(In)&&(t=et(...kt(t).slice(1))),t}function Ey(t,n){const o=new RegExp("(?<=config-redis-).*"),a=/Config\.Redis.*/;return n.filter(r=>{const l=r.model.match(o);return l&&!Object.keys(t).includes(l[0])}).map(r=>{const l=r.label.match(a);return{label:l?l[0]:r.label,key:r.model,value:"N/A",type:"text"}})}function Ny(t){const n=e.toValue(t);return n?n.type==="set"&&n.elements.type==="string"&&!n.elements.one_of:!1}function Jl(t,n){return[...t].sort((o,a)=>{const i=Object.keys(o)[0],r=Object.keys(a)[0],l=n.indexOf(i),s=n.indexOf(r);return l===-1&&s===-1?0:l===-1?1:s===-1?-1:l-s})}function Xl(t,n){const o=new Map;t.forEach(u=>{const f=Object.keys(u)[0];o.set(f,u)});const a=new Map;n.forEach((u,f)=>{u.forEach((d,p)=>{a.has(d)||a.set(d,[]),a.get(d).push({bundleIndex:f,position:p})})});const i=new Set,r=[],l=new Set,s=u=>{const f=a.get(u);if(!f)return!0;for(const{bundleIndex:d,position:p}of f){const m=n[d];for(let g=0;g<p;g++){const y=m[g];if(o.has(y)&&!i.has(y))return!1}}return!0},c=u=>{if(i.has(u))return;const f=o.get(u);if(!f)return;r.push(f),i.add(u),l.delete(u);const d=a.get(u);if(d)for(const{bundleIndex:m,position:g}of d){const y=n[m];for(let C=g+1;C<y.length;C++){const b=y[C];if(!i.has(b)){const h=o.get(b);h&&(r.push(h),i.add(b),l.delete(b))}}}const p=Array.from(l);for(const m of p)s(m)&&c(m)};for(const u of t){const f=Object.keys(u)[0];i.has(f)||(s(f)?c(f):l.add(f))}return r}function xy(t){var a;const n=kt(t);let o={parent:null};for(n.pop();n.length;){const i=n.shift();o.path=(a=o.parent)!=null&&a.path?et(o.parent.path,i):i,o={parent:o}}return o}function Zl(t){return e.computed(()=>xy(e.toValue(t)))}const Ql=Symbol("free-form-field-path"),la=Symbol("free-form-field-renderer-slots"),es=Symbol("free-form-field-reset-label-path-setting"),Mn="free-form-field-renderers-slot",Sy={tooltipAttributes:{maxWidth:"300px",placement:"top"}};function Ay(t,n=""){const o={},a=t;return Array.isArray(a.fields)?Object.assign(o,sa(a,n)):t.type==="array"&&t.elements&&Object.assign(o,ca(t,n)),o}function sa(t,n=""){const o={};if(Array.isArray(t.fields))for(const a of t.fields){const i=Object.keys(a)[0],r=a[i],l=n?et(n,i):i;if(o[l]=r,r.type==="record"&&Array.isArray(r.fields)){const s=sa(r,l);Object.assign(o,s)}else if(r.type==="array"&&r.elements){const s=ca(r,l);Object.assign(o,s)}}return o}function ca(t,n=""){const o={};if(t.elements){const a=t.elements,i=et(n,aa);if(o[i]=a,a.type==="record"&&Array.isArray(a.fields)){const r=sa(a,i);Object.assign(o,r)}else if(a.type==="array"&&a.elements){const r=ca(a,i);Object.assign(o,r)}}return o}function Jo(t){const n=kt(t).map(o=>/^\d+$/.test(o)?aa:o);return et(...n)}function Iy(t){const n=e.toValue(t),o=e.computed(()=>n?Ay(n):{});function a(p){var m;return p==null?n:(m=o.value)==null?void 0:m[Jo(p)]}function i(p,m=!1){const g=a(p);return g?g.default!==void 0?g.default:m||g.required?g.type==="record"?r(g,p):g.type==="array"?[]:g.type==="map"?{}:null:null:null}function r(p,m){const g={};if(Array.isArray(p.fields))for(const y of p.fields){const C=Object.keys(y)[0],b=m?`${m}.${C}`:C,h=i(b,!1);h!==void 0&&(g[C]=h)}return g}function l(p){return p?i(p,!0):r(a(),"")}function s(p){const m=a(p),g=m!=null&&m.description?So.marked.parse(m.description,{async:!1}):void 0;return{...Sy,"data-testid":`ff-label-${p}`,info:g}}function c(p){var g;const m=a(p);return ra((m==null?void 0:m.one_of)||((g=m.elements)==null?void 0:g.one_of)||[])}function u(p){const m=a(p),g=m==null?void 0:m.default;let y=null;if((m==null?void 0:m.type)==="foreign"&&(g!=null&&g.id))y=g.id;else{if(g==null||typeof g=="object"||g==="")return null;if(Array.isArray(g)){if(g.length===0)return null;y=g.join(", ")}else y=g.toString()}return`Default: ${y}`}function f(){return o.value}function d(p){const m=a(p);return(m==null?void 0:m.required)?l(p):null}return{getSchemaMap:f,getSchema:a,getDefault:l,getSelectItems:c,getLabelAttributes:s,getPlaceholder:u,getEmptyOrDefault:d}}function Py(t){const n=e.ref({}),o=e.ref(new Set);function a(g,y){const C=g.map(h=>kt(h).length),b=C[0];if(!C.every(h=>h===b)){const h=g.map((E,k)=>` - '${E}' is at level ${C[k]}`).join(`
|
|
14
14
|
`);throw new Error(`${y}: Fields must be at the same level. Found mixed levels:
|
|
15
15
|
${h}`)}}function i(g){for(const[y,C]of Object.entries(g)){if(!C.bundles)continue;for(const h of C.bundles)if(new Set(h).size!==h.length){const k=h.filter((_,w)=>h.indexOf(_)!==w);throw new Error(`Self-cycle detected in bundle: field '${k[0]}' appears multiple times in [${h.join(", ")}]`)}const b=new Map;for(const h of C.bundles)for(let E=1;E<h.length;E++){const k=h[E],_=h[E-1];b.has(k)||b.set(k,new Set),b.get(k).add(_)}for(const h of b.keys()){let E=function(w){if(_.includes(w)){const O=[..._,w].join(" -> ");throw new Error(`Circular bundle detected in path '${y}':
|
|
16
16
|
${O}`)}if(k.has(w))return;k.add(w),_.push(w);const x=b.get(w);if(x)for(const O of x)E(O);_.pop()};const k=new Set,_=[];E(h)}}}function r(g){for(const[y,C]of Object.entries(g))if(C.dependencies)for(const b of Object.keys(C.dependencies)){let h=function(_){if(k.includes(_)){const x=[...k,_].join(" -> ");throw new Error(`Circular dependency detected in path '${y}':
|
|
17
|
-
${x}`)}if(E.has(_))return;E.add(_),k.push(_);const w=C.dependencies[_];if(w){const[x]=w;C.dependencies[x]&&h(x)}k.pop()};const E=new Set,k=[];h(b)}}function l(g,y){const C=g.map(h=>y?et(y,h):h),b=kt(C[0]);return b.pop(),et(...b)}function s(g,y){if(!y)return g;const C=`${y}${Yo}`;return g.startsWith(C)?g.slice(C.length):g}function c(g){const y=kt(g);return y.pop(),et(...y)}const u=e.computed(()=>{const g={};for(const[y,C]of Object.entries(n.value)){const b=y===In?"":y;if(C.bundles)for(const h of C.bundles){if(h.length<2)throw new Error(`Bundle must contain at least 2 fields. Found ${h.length} field(s) in bundle: [${h.join(", ")}]`);const E=h.map(w=>b?et(b,w):w);a(E,`Bundle [${h.join(", ")}]`);const k=l(h,b)||In;g[k]||(g[k]={}),g[k].bundles||(g[k].bundles=[]);const _=E.map(w=>s(w,k));g[k].bundles.push(_)}if(C.dependencies)for(const[h,[E,k]]of Object.entries(C.dependencies)){const _=b?et(b,h):h,w=b?et(b,E):E;a([_,w],`Dependency '${h}' -> '${E}'`);const x=c(_)||In;g[x]||(g[x]={}),g[x].dependencies||(g[x].dependencies={});const O=s(_,x),v=s(w,x);g[x].dependencies[O]=[v,k]}}return i(g),r(g),g});function f(g){if(!g)return u.value;const y=Jo(g);return u.value[y]}function d(g){let y=!1;return e.computed(()=>{if(y)return;const C=e.toValue(g);try{return f(C)}catch(b){y=!0,console.error(`Failed to get render rules for path: \`${C}\`,`,b instanceof Error?b.message:"");return}})}function p(g){const{fieldPath:y,rules:C,parentValue:b,omittedFields:h}=g;e.watch([()=>e.toValue(C),()=>e.toValue(y)],([k,_],[,w])=>{k?n.value[_]=k:delete n.value[_],w&&w!==_&&delete n.value[w]},{immediate:!0,deep:!0});const E=d(y);return e.watch([()=>e.toValue(b),()=>{var k;return(k=e.toValue(E))==null?void 0:k.dependencies},()=>e.toValue(y),()=>e.toValue(h)],([k,_,w,x])=>{!_||!k||Object.entries(_).forEach(([O,[v,I]])=>{if(x!=null&&x.includes(O))return;const S=Ko(k,v),P=w?Cy(et(w,O)):O;if(Vt(S,I)){o.value.delete(P),t();return}o.value.add(P),t()})},{deep:!0,immediate:!0}),e.onBeforeUnmount(()=>{const k=e.toValue(y);delete n.value[k]}),E}function m(g){return o.value.has(g)}return{useCurrentRules:p,createComputedRules:d,hiddenPaths:e.readonly(o),isFieldHidden:m}}const[Ty,Oy]=Xe.createInjectionState(function(n){const{schema:o,propsData:a,onChange:i,propsRenderRules:r,propsConfig:l}=n,s=Iy(o),c=new Map,u=e.reactive({}),f=e.toRef(()=>l??{}),d=e.useSlots();e.provide(la,sn(d,"default",Mn));const{useCurrentRules:p,createComputedRules:m,hiddenPaths:g,isFieldHidden:y}=Py(()=>i==null?void 0:i(k())),C=p({fieldPath:In,rules:r,parentValue:u});function b(_){Object.keys(u).forEach(w=>{delete u[w]}),Object.assign(u,_)}function h(_){let w;!_||!E(e.toValue(_))?w=s.getDefault():w=Sn(e.toValue(_)),Bo(f.value.prepareFormData)?b(f.value.prepareFormData(w)):b(w)}function E(_){return Bo(f.value.hasValue)?f.value.hasValue(_):!!_}function k(){const _=e.toValue(u),w=Sn(_);if(g.value.size>0)for(const x of g.value){const O=kt(x),v=O.slice(0,-1);(v.length===0||Ko(w,v)!=null)&&Vl(w,O,s.getEmptyOrDefault(x))}return w}return e.watch(u,()=>{i==null||i(k())},{deep:!0}),e.watch(()=>a==null?void 0:a.value,_=>{h(_)},{deep:!0,immediate:!0}),{formData:u,schema:o,config:f,fieldRendererRegistry:c,setValue:b,useCurrentRenderRules:p,rootRenderRules:C,createComputedRenderRules:m,...s,getValue:k,isFieldHidden:y}});function We(){const t=Oy();if(!t)throw new Error("useFormShared() called without provider.");return t}const ts=t=>{const n=e.inject(Ql,e.computed(()=>"")),o=e.computed(()=>{const a=e.toValue(t);let i=a;return!Yl(a)&&n.value&&(i=et(n.value,a)),Yl(a)&&(i=i.slice(ia("").length)),i});return e.provide(Ql,o),o},Vy=t=>{const{getSchema:n,fieldRendererRegistry:o}=We(),{default:a,...i}=e.useSlots(),r=e.inject(la),l=e.computed(()=>{const c=e.toValue(r),u=Object.keys(i).filter(f=>f!==Mn&&f!=="item").reduce((f,d)=>{const p=Jo(et(e.toValue(t),d));return{...f,[p]:i[d]}},{});return c?{...c,...u}:u});e.provide(la,l);const s=e.toValue(t);return e.computed(()=>{if(a)return;const c=l.value[Jo(e.toValue(t))];if(c)return c;for(const[u,f]of o)if(u({path:s,schema:n(s)}))return f})};function ns(t){const{formData:n}=We(),o=ts(t);return{value:e.computed({get:()=>Ko(n,kt(o.value)),set:i=>Vl(n,kt(o.value),i)})}}function pt(t){const{getSchema:n,isFieldHidden:o,getEmptyOrDefault:a}=We(),i=ts(t),r=Vy(i),{value:l}=ns(t),s=e.computed(()=>n(i.value)),c=e.computed(()=>o(i.value)),u=e.computed(()=>a(i.value));return s.value?{schema:s,path:i,renderer:r,value:l,ancestors:Zl(i),hide:c,emptyOrDefaultValue:u,error:null}:{error:new Error(`path '${i.value}' is not found in schema.`)}}function os(t,n){const o=new WeakMap,a=new Map;function i(){return zo(`${t}-`)}function r(l,s){if(l==null||typeof l!="object")return`${t}-${s}`;if(o.has(l))return o.get(l);const c=a.has(s)?a.get(s):i();return a.set(s,c),o.set(l,c),c}return e.watch(n,l=>{const s=e.toValue(l),c=new Set;s.forEach((u,f)=>{c.add(f)}),Array.from(a.keys()).forEach(u=>{c.has(u)||a.delete(u)})},{immediate:!0,deep:!0}),{getKey:r}}function By(t,n){e.watch(t,o=>{window[Ln]||(window[Ln]={}),window[Ln][n]=e.toRaw(o)},{immediate:!0,deep:!0}),e.onUnmounted(()=>{window[Ln]&&delete window[Ln][n]})}const Ry={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP",https:"HTTPS",api:"API",uri:"URI",jq:"jq",vpn:"VPN",id:"ID",llm:"LLM",tls:"TLS",tcp:"TCP",udp:"UDP",lua:"Lua",jwt:"JWT",aws:"AWS",gcp:"GCP",azure:"Azure",acl:"ACL",cookie:"Cookie",ai:"AI",awsgateway:"AWS Gateway",imds:"IMDS",sts:"STS",arn:"ARN"};function rs(t){return Ry[t.toLocaleLowerCase()]??t}function as(t){return t.split("_").map(rs).join(" ")}function $y(t,n){const o=e.inject(es,{parentPath:null,isolate:!1}),{parentPath:a,isolate:i}=e.toValue(o),r=e.ref(a?et(a,t):t),l=e.ref({parentPath:r.value,isolate:i});return e.watch([e.toRef(n),e.toRef(o)],([s,c])=>{var p;const{parentPath:u,isolate:f}=c,d=u?et(u,t):t;if(s){const m={isolate:()=>{r.value=t,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{r.value=t,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{r.value=d,l.value.isolate=!1,l.value.parentPath=d}};(p=m[s])==null||p.call(m)}else f&&(r.value=t,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),e.provide(es,l),r}function is(t){return kt(t).map(o=>o.split("_").map(rs).join(" ")).map(om).join(" › ")}function Fy(t,n){const o=e.toValue(t),a=Pn(o),{config:i,getSchema:r}=We(),l=$y(a,n),s=Zl(t);return e.computed(()=>{var p;const c=l.value??a,u=(p=s.value.parent)!=null&&p.path?r(s.value.parent.path):null,d=(u==null?void 0:u.type)==="array"?"":is(c);return i.value.transformLabel?i.value.transformLabel(d,o):d})}function wt(t,n){const{getLabelAttributes:o,getPlaceholder:a,getSchema:i}=We(),r=e.toValue(t),l=e.toValue(n),s=Fy(t,e.toRef(()=>e.toValue(n).resetLabelPath));return e.computed(()=>{var c;return{...l,placeholder:l.placeholder??a(r)??void 0,labelAttributes:l.labelAttributes??o(r),label:l.label??s.value,required:l.required??((c=i(r))==null?void 0:c.required)}})}const Tn=e.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:n}){const o=t,a=e.useAttrs(),i=n,r=e.computed(()=>o.multiline?Oe.KTextArea:Oe.KInput),l=e.computed(()=>a.characterLimit??(o.multiline?!1:void 0)),s=e.ref(o.modelValue);e.watch(()=>o.modelValue,d=>{s.value=d});const{config:c}=We(),u=d=>{d!==s.value&&(s.value=d,c.value.updateOnChange||i("update:modelValue",d))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(d,p)=>(e.openBlock(),e.createBlock(e.unref(r),e.mergeProps(d.$attrs,{"character-limit":l.value,"model-value":t.modelValue,resizable:t.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":u}),e.createSlots({_:2},[e.renderList(e.useSlots(),(m,g)=>({name:g,fn:e.withCtx(y=>[e.renderSlot(d.$slots,g,e.normalizeProps(e.guardReactiveProps(y)))])}))]),1040,["character-limit","model-value","resizable"]))}}),Ly=["innerHTML"],Ze=_e(e.defineComponent({inheritAttrs:!1,__name:"StringField",props:{labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},placeholder:{},inputId:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.useAttrs(),{i18n:a}=De(),i=e.createPropsRestProxy(t,["autofocus","showVaultSecretPicker","showPasswordMaskToggle","name"]),r=n,{value:l,hide:s,...c}=pt(e.toRef(()=>t.name)),u=wt(c.path,e.toRef({...i,...o})),f=l==null?void 0:l.value;function d(b){f!==void 0&&b===""&&b!==f?(l.value=null,r("update:modelValue",null)):(l.value=b.trim(),r("update:modelValue",b.trim()))}const p=e.computed(()=>{var b;return t.showPasswordMaskToggle!==void 0?t.showPasswordMaskToggle:i.type==="password"?!0:!!((b=c.schema)==null?void 0:b.value).encrypted}),m=e.inject(Le.AUTOFILL_SLOT,void 0),g=e.computed(()=>{var b;return t.showVaultSecretPicker!==void 0?t.showVaultSecretPicker:!!((b=c.schema.value)!=null&&b.referenceable)}),y=e.computed(()=>({referenceable:g.value})),C=e.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Pn(t.name)==="name");return(b,h)=>{var k;const E=e.resolveComponent("KAlert");return c.error?(e.openBlock(),e.createBlock(E,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",e.normalizeProps(e.mergeProps({key:1},b.$attrs)),[e.createVNode(Tn,e.mergeProps({...e.unref(u),showPasswordMaskToggle:p.value,type:p.value?"password":"text"},{id:t.inputId,class:"ff-string-field","data-1p-ignore":C.value,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${c.path.value}`,error:t.error,"error-message":t.errorMessage,help:t.multiline&&t.error?t.errorMessage:t.help,"model-value":e.unref(l)??"",multiline:t.multiline,placeholder:t.placeholder??e.unref(u).placeholder,"onUpdate:modelValue":d}),e.createSlots({_:2},[(k=e.unref(u).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(b.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(u).labelAttributes.info},null,8,Ly)],!0)]),key:"0"}:void 0,!(t.multiline&&t.error)&&b.$slots.help?{name:"help",fn:e.withCtx(()=>[e.renderSlot(b.$slots,"help",{},void 0,!0)]),key:"1"}:void 0]),1040,["id","data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline","placeholder"]),e.unref(m)&&g.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(m)),{key:0,schema:y.value,update:d,value:e.unref(l)??""},null,8,["schema","value"])):e.createCommentVNode("",!0),g.value&&!e.unref(m)?(e.openBlock(),e.createBlock(E,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${c.path.value}`,message:e.unref(a).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):e.createCommentVNode("",!0)],16)),[[e.vShow,!e.unref(s)]])}}}),[["__scopeId","data-v-a83cf1a6"]]),Dy=["innerHTML"],Qt=_e(e.defineComponent({__name:"BooleanField",props:{labelAttributes:{},modelValue:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.createPropsRestProxy(t,["autofocus","name"]),{value:a,hide:i,emptyOrDefaultValue:r,...l}=pt(e.toRef(()=>t.name)),s=n,c=f=>{a.value=f,s("update:modelValue",f)},u=wt(l.path,o);return(f,d)=>{var m;const p=e.resolveComponent("KAlert");return l.error?(e.openBlock(),e.createBlock(p,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createBlock(e.unref(Oe.KCheckbox),e.mergeProps({key:1},e.unref(u),{class:"ff-boolean-field","data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${l.path.value}`,"model-value":!!(e.unref(a)==null?e.unref(r):e.unref(a)),"onUpdate:modelValue":c}),e.createSlots({_:2},[(m=e.unref(u).labelAttributes)!=null&&m.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(u).labelAttributes.info},null,8,Dy)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"])),[[e.vShow,!e.unref(i)]])}}}),[["__scopeId","data-v-46a62c12"]]),My=["data-testid"],jy=["innerHTML"],Xo=_e(e.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{labelAttributes:{},multiline:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.useAttrs(),a=e.createPropsRestProxy(t,["autofocus","name"]),i=n,{value:r,hide:l,...s}=pt(e.toRef(()=>t.name)),c=wt(s.path,e.toRef({...a,...o})),u=e.computed(()=>{var y,C;return((C=(y=s.schema)==null?void 0:y.value)==null?void 0:C.len_min)&&s.schema.value.len_min>0}),f=e.ref("");function d(y){return y.map(C=>C.trim()).filter(Boolean).join(", ")}function p(y){return y.trim().split(",").map(C=>C.trim()).filter(Boolean)}function m(y){f.value=y;const C=p(y),b=!C.length&&u.value?null:C;r.value=b,i("update:modelValue",b)}const g=e.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Pn(t.name)==="name");return e.watch(r,y=>{const C=y?d(y):"";d(p(f.value))!==C&&(f.value=C)},{immediate:!0}),(y,C)=>{var h;const b=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(b,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,"data-testid":`ff-tag-${s.path.value}`},[e.createVNode(Tn,e.mergeProps(e.unref(c),{class:"ff-tag-field","data-1p-ignore":g.value,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${s.path.value}`,"model-value":f.value??"","onUpdate:modelValue":m}),e.createSlots({_:2},[(h=e.unref(c).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(c).labelAttributes.info},null,8,jy)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,My)),[[e.vShow,!e.unref(l)]])}}}),[["__scopeId","data-v-3aa09162"]]),vy=["data-appearance","data-testid"],Ky=["data-testid"],Uy=["innerHTML"],qy=["data-testid"],Gy={class:"ff-array-field-item-content"},zy=["data-index","data-testid"],da='input:not(:disabled), textarea:not(:disabled), select:not(:disabled), button:not(:disabled), [contenteditable="true"], [tabindex]:not([tabindex="-1"]):not(:disabled)',en=_e(e.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]},autofocus:{type:Boolean}},emits:["add","remove"],setup(t,{emit:n}){var I;e.useCssVars(S=>({v37adc3b6:v.value}));const o=t,a=n,{i18n:{t:i}}=De(),{getDefault:r,getSchema:l}=We(),{value:s,hide:c,...u}=pt(e.toRef(o,"name")),f=wt(u.path,e.toRef({...o,...e.useAttrs()})),d=e.computed(()=>{if(!u.path)throw new Error("Field path is required for sub-schema retrieval");const S=l(u.path.value);if(!S)throw new Error(`Schema not found for path: ${u.path.value}`);return S.elements}),p=e.computed(()=>{if(!u.path)return"";const S=Pn(u.path.value);return as(S)}),m=e.computed(()=>o.items??e.toValue(s)??[]),{getKey:g}=os("ff-array-field",m),y=e.computed(()=>o.appearance?o.appearance:d.value.type==="record"?"card":"default"),C=e.computed(()=>y.value==="card"?Oe.KCard:"div");function b(S,P){return typeof o.itemLabel=="function"?o.itemLabel(S,P):o.itemLabel||f.value.label||`Item #${P}`}const h=e.computed(()=>m.value.map((S,P)=>({hash:`#${g(S,P)}`,title:""}))),E=e.ref((I=h.value[0])==null?void 0:I.hash),k=async()=>{var P;const S=r(et(u.path.value,aa));Array.isArray(s.value)||(s.value=[]),s.value.push(S),a("add"),o.appearance==="tabs"&&(await e.nextTick(),E.value=(P=h.value[h.value.length-1])==null?void 0:P.hash),await e.nextTick(),x(m.value.length+1)},_=async S=>{var P;Array.isArray(s.value)&&s.value.splice(S,1),a("remove",S),o.appearance==="tabs"&&(E.value=(P=h.value[Math.max(0,S-1)])==null?void 0:P.hash)},w=e.useTemplateRef("root");function x(S){if(!w.value)return;const P=Math.max(0,Math.min(S,m.value.length-1)),F=w.value.querySelector(`[data-index="${P}"]`);if(!F)return;const T=O(F);T==null||T.focus()}function O(S){const P=S.querySelector('[data-autofocus="true"]');return P?P.matches(da)?P:P.querySelector(da):S.querySelector(da)}const v=e.computed(()=>{const{appearance:S,stickyTabs:P}=o;return S!=="tabs"||P==null||P===!1?null:typeof P=="number"?`${o.stickyTabs}px`:typeof P=="string"?P:"0"});return(S,P)=>{var L;const F=e.resolveComponent("KAlert"),T=e.resolveComponent("KLabel"),D=e.resolveComponent("KButton"),U=e.resolveComponent("KTooltip"),q=e.resolveComponent("KTabs");return u.error?(e.openBlock(),e.createBlock(F,{key:0,appearance:"danger",message:u.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:w,class:e.normalizeClass(["ff-array-field",{[`ff-array-field-${y.value??"default"}`]:!0,"ff-array-field-sticky-tabs":t.stickyTabs}]),"data-appearance":y.value,"data-testid":`ff-array-${u.path.value}`},[e.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${u.path.value}`},[e.createVNode(T,e.mergeProps({class:"ff-array-field-label"},e.unref(f),{"data-testid":`ff-label-${u.path.value}`,"tooltip-attributes":e.unref(f).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f).label)+" ",1)]),_:2},[(L=e.unref(f).labelAttributes)!=null&&L.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(S.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(f).labelAttributes.info},null,8,Uy)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.appearance==="tabs"?(e.openBlock(),e.createBlock(D,{key:0,appearance:"tertiary","aria-label":e.unref(i)("actions.add_entity",{entity:p.value}),"data-testid":`ff-add-item-btn-${u.path.value}`,icon:"",onClick:k},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon))]),_:1},8,["aria-label","data-testid"])):e.createCommentVNode("",!0)],8,Ky),y.value!=="tabs"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",{class:"ff-array-field-container","data-testid":`ff-array-basic-container-${u.path.value}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(V,R)=>(e.openBlock(),e.createBlock(e.unref(C),{key:e.unref(g)(V,R),class:e.normalizeClass(["ff-array-field-item",{"ff-array-field-item-card":y.value==="card"}]),"data-index":R,"data-testid":`ff-array-item-${u.path.value}.${R}`},{default:e.withCtx(()=>[e.createElementVNode("div",Gy,[S.$slots.item?e.renderSlot(S.$slots,"item",{key:0,autofocus:!0,fieldName:String(R),index:R},void 0,!0):d.value.type==="array"&&d.value.elements.type==="string"?(e.openBlock(),e.createBlock(Xo,{key:1,autofocus:"",help:e.unref(i)("plugins.free-form.tag_helper"),name:String(R)},null,8,["help","name"])):(e.openBlock(),e.createBlock(ft,{key:2,autofocus:"",name:String(R)},null,8,["name"]))]),e.createVNode(U,{class:"ff-array-field-item-remove-tooltip",text:e.unref(i)("actions.remove_entity",{entity:p.value})},{default:e.withCtx(()=>[e.createVNode(D,{appearance:"tertiary","aria-label":e.unref(i)("actions.remove_entity",{entity:p.value}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${u.path.value}.${R}`,icon:"",onClick:e.withModifiers(A=>_(R),["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(me.CloseIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["text"])]),_:2},1032,["class","data-index","data-testid"]))),128))],8,qy),e.createVNode(D,{appearance:"tertiary","aria-label":e.unref(i)("actions.add_entity",{entity:p.value}),class:"ff-array-field-add-item-btn","data-testid":`ff-add-item-btn-${u.path.value}`,onClick:k},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(i)("actions.add_entity",{entity:p.value})),1)]),_:1},8,["aria-label","data-testid"])],64)):m.value.length?(e.openBlock(),e.createBlock(e.unref(Oe.KCard),{key:1,"data-testid":`ff-array-tab-container-${u.path.value}`},{default:e.withCtx(()=>[e.createVNode(q,{modelValue:E.value,"onUpdate:modelValue":P[0]||(P[0]=V=>E.value=V),"data-testid":`ff-array-tabs-${u.path.value}`,tabs:h.value},e.createSlots({_:2},[e.renderList(m.value,(V,R)=>({name:e.unref(g)(V,R),fn:e.withCtx(()=>[e.createElementVNode("div",{class:"ff-array-field-item","data-index":R,"data-testid":`ff-array-item-${u.path.value}.${R}`},[S.$slots.item?e.renderSlot(S.$slots,"item",{key:0,autofocus:!0,fieldName:String(R),index:R},void 0,!0):(e.openBlock(),e.createBlock(ft,{key:1,autofocus:"",name:String(R)},null,8,["name"]))],8,zy)])})),e.renderList(m.value,(V,R)=>({name:`${e.unref(g)(V,R)}-anchor`,fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b(V,R))+" ",1),e.createVNode(D,{appearance:"tertiary","aria-label":e.unref(i)("actions.remove_entity",{entity:p.value}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${u.path.value}.${R}`,icon:"",onClick:e.withModifiers(A=>_(R),["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(me.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"])):e.createCommentVNode("",!0)],10,vy)),[[e.vShow,!e.unref(c)]])}}}),[["__scopeId","data-v-c5f4a365"]]),Hy={key:1,class:"ff-number-field-wrapper"},Wy=["innerHTML"],qt=_e(e.defineComponent({__name:"NumberField",props:{showVaultSecretPicker:{type:Boolean,default:()=>{}},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.createPropsRestProxy(t,["autofocus","showVaultSecretPicker","name"]),{value:a,hide:i,...r}=pt(e.toRef(()=>t.name)),l=wt(r.path,o),{i18n:s}=De(),c=e.computed(()=>{var _;const h=(_=r.schema)==null?void 0:_.value;if(typeof h.gt=="number")return{min:h.type==="integer"?h.gt+1:h.gt};const[E,k]=h.between??[];return{min:o.min??E,max:o.max??k}}),u=n,f=a.value,d=e.computed(()=>{const h=a==null?void 0:a.value;if(h==null||h==="")return"";if(C.value)return`${h}`;const E=typeof h=="number"?h:Number(h);return Number.isFinite(E)?`${E}`:""});function p(h){const E=m(h);f!==void 0&&h===""&&E!==f?(a.value=null,u("update:modelValue",null)):(a.value=E,u("update:modelValue",E))}function m(h){if(h==="")return null;const E=h.trim();if(E==="")return null;const k=Number(E);return Number.isFinite(k)?k:C.value?h:null}const g=e.inject(Le.AUTOFILL_SLOT,void 0),y=e.computed(()=>({referenceable:C.value})),C=e.computed(()=>{var h;return t.showVaultSecretPicker!==void 0?t.showVaultSecretPicker:!!((h=r.schema.value)!=null&&h.referenceable)}),b=e.computed(()=>C.value?"text":"number");return(h,E)=>{var _;const k=e.resolveComponent("KAlert");return r.error?(e.openBlock(),e.createBlock(k,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",Hy,[e.createVNode(Tn,e.mergeProps({class:"ff-number-field"},{...e.unref(l),min:c.value.min,max:c.value.max},{"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${r.path.value}`,"model-value":d.value,type:b.value,"onUpdate:modelValue":p}),e.createSlots({_:2},[(_=e.unref(l).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(h.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,Wy)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value","type"]),e.unref(g)&&C.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(g)),{key:0,schema:y.value,update:p,value:e.unref(a)??""},null,8,["schema","value"])):e.createCommentVNode("",!0),C.value&&!e.unref(g)?(e.openBlock(),e.createBlock(k,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${r.path.value}`,message:e.unref(s).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):e.createCommentVNode("",!0)],512)),[[e.vShow,!e.unref(i)]])}}}),[["__scopeId","data-v-b3a2f296"]]),Yy=["innerHTML"],Ct=_e(e.defineComponent({__name:"EnumField",props:e.mergeModels({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},autofocus:{type:Boolean},name:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["update"],["update:modelValue"]),setup(t,{emit:n}){const o=n,a=e.createPropsRestProxy(t,["name","items","multiple","autofocus"]),{getSelectItems:i}=We(),{value:r,hide:l,...s}=pt(e.toRef(()=>t.name)),c=e.useModel(t,"modelValue",{get:()=>d.value&&(r==null?void 0:r.value)==null?[]:r.value,set:m=>{r.value=m}}),u=wt(s.path,a),f=e.computed(()=>t.items?t.items:s.path?i(s.path.value):[]),d=e.computed(()=>{var m;return t.multiple!==void 0?t.multiple:((m=s.schema.value)==null?void 0:m.type)==="set"}),p=e.computed(()=>d.value?Oe.KMultiselect:Oe.KSelect);return(m,g)=>{var C;const y=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(y,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createBlock(e.unref(p),e.mergeProps({key:1},{...a,...e.unref(u)},{modelValue:c.value,"onUpdate:modelValue":[g[0]||(g[0]=b=>c.value=b),g[1]||(g[1]=b=>o("update",b))],class:"ff-enum-field",clearable:!e.unref(u).required,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${s.path.value}`,items:f.value,"kpop-attributes":{"data-testid":`ff-enum-${s.path.value}-items`}}),e.createSlots({_:2},["tooltip"in m.$slots||(C=e.unref(u).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(m.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(u).labelAttributes.info},null,8,Yy)],!0)]),key:"0"}:void 0,m.$slots["item-label"]?{name:"item-template",fn:e.withCtx(({item:b})=>[e.renderSlot(m.$slots,"item-label",e.normalizeProps(e.guardReactiveProps(b)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-autofocus","data-testid","items","kpop-attributes"])),[[e.vShow,!e.unref(l)]])}}}),[["__scopeId","data-v-6fce68d1"]]);function Zo(t,n,o=!0){const{value:a,emptyOrDefaultValue:i,...r}=pt(e.toRef(t,"name")),l=wt(r.path,e.toRef({...t,...e.useAttrs()})),s=e.ref(f(t.initialValue??e.toValue(a),t.keyOrder));function c(){return zo("ff-kv-field-")}function u(b,h,E){const k=E.indexOf(b),_=E.indexOf(h);return k===-1&&_===-1?0:k===-1?1:_===-1?-1:k-_}function f(b,h){if(!b)return[];const E=Object.entries(b).map(([k,_])=>({id:c(),key:k,value:_}));return h&&E.sort((k,_)=>u(k.key,_.key,h)),E}function d(){const b={id:c(),key:t.defaultKey||"",value:t.defaultValue||""};return s.value.push(b),b}function p(b){const h=s.value.findIndex(E=>E.id===b);h!==-1&&s.value.splice(h,1)}function m(){s.value=f(t.initialValue,t.keyOrder)}function g(b){s.value=f(b,t.keyOrder)}let y=a==null?void 0:a.value;e.watch(s,b=>{if(!o)return;const h=i==null?void 0:i.value,E=b.map(({key:x,value:O})=>[x,O]).filter(([x])=>x),k=E.length?Object.fromEntries(E):h,_=a.value,w=_??h;k===null&&_!==null&&typeof _=="object"&&Object.keys(_).length===0||Vt(k,w)||k!==void 0&&(a.value=k,y=k,n("change",k))},{deep:!0,immediate:!0}),e.watch(()=>a==null?void 0:a.value,b=>{Vt(b,y)||C(b)},{deep:!0});function C(b){if(!b){s.value=[];return}const h=new Map;s.value.forEach(w=>{w.key&&h.set(w.key,w)});const E=[],k=Object.keys(b);(t.keyOrder?[...k].sort((w,x)=>u(w,x,t.keyOrder)):k).forEach(w=>{const x=b[w];if(h.has(w)){const O=h.get(w);O.value=x,E.push(O)}else E.push({id:c(),key:w,value:x})}),s.value=E}return{entries:s,addEntry:d,removeEntry:p,reset:m,setValue:g,labelAttrs:l,field:r}}const Jy=["data-testid"],Xy=["data-testid"],Zy=["innerHTML"],Qy={class:"ff-kv-field-entry-fields"},Qo=_e(e.defineComponent({__name:"KeyValueField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},appearance:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{},autofocus:{type:Boolean},name:{}},emits:["change"],setup(t,{expose:n,emit:o}){const a=e.createPropsRestProxy(t,["showVaultSecretPicker"]),{i18n:i}=De(),r=o,{entries:l,addEntry:s,removeEntry:c,reset:u,setValue:f,labelAttrs:d,field:p}=Zo(a,r),m=e.computed(()=>{if(!p.path)return"";const x=Pn(p.path.value);return as(x)}),g=e.computed(()=>{var x,O;return(O=(x=a.appearance)==null?void 0:x.string)!=null&&O.multiline?Oe.KCard:"div"}),y=e.useTemplateRef("root");async function C(x,O="key"){var v;y.value&&(await e.nextTick(),(v=y.value.querySelector(`[data-${O}-input="${x}"]`))==null||v.focus())}function b(){s();const x=l.value.findIndex(({key:O})=>!O);C(x===-1?l.value.length-1:x)}function h(x,O){var v,I;(I=(v=a.appearance)==null?void 0:v.string)!=null&&I.multiline||(x.preventDefault(),O===l.value.length-1&&s(),C(O+1))}const E=e.inject(Le.AUTOFILL_SLOT,void 0),k=e.computed(()=>{var x,O;return t.showVaultSecretPicker??!!((O=(x=p.schema.value)==null?void 0:x.values)!=null&&O.referenceable)}),_=e.computed(()=>({referenceable:k.value}));function w(x,O){l.value[x].value=O}return n({reset:u,setValue:f}),(x,O)=>{var F;const v=e.resolveComponent("KAlert"),I=e.resolveComponent("KLabel"),S=e.resolveComponent("KButton"),P=e.resolveComponent("KTooltip");return e.unref(p).error?(e.openBlock(),e.createBlock(v,{key:0,appearance:"danger",message:e.unref(p).error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:y,class:"ff-kv-field","data-testid":`ff-kv-${e.unref(p).path.value}`},[e.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${e.unref(p).path.value}`},[e.createVNode(I,e.mergeProps({class:"ff-kv-field-label"},e.unref(d),{"data-testid":`ff-label-${e.unref(p).path.value}`,"tooltip-attributes":e.unref(d).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(d).label)+" ",1)]),_:2},[(F=e.unref(d).labelAttributes)!=null&&F.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(x.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(d).labelAttributes.info},null,8,Zy)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"])],8,Xy),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),(T,D)=>{var U,q;return e.openBlock(),e.createBlock(e.resolveDynamicComponent(g.value),{key:T.id,class:e.normalizeClass(["ff-kv-field-entry",{"ff-kv-field-entry--multiline":(q=(U=a.appearance)==null?void 0:U.string)==null?void 0:q.multiline}]),"data-testid":`ff-kv-container-${e.unref(p).path.value}.${D}`},{default:e.withCtx(()=>{var L,V;return[e.createElementVNode("div",Qy,[e.createVNode(Tn,{modelValue:T.key,"onUpdate:modelValue":R=>T.key=R,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":D,"data-testid":`ff-key-${e.unref(p).path.value}.${D}`,placeholder:t.keyPlaceholder||"Key",onKeydown:e.withKeys(e.withModifiers(R=>C(D,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),e.createVNode(Tn,{modelValue:T.value,"onUpdate:modelValue":R=>T.value=R,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${e.unref(p).path.value}.${D}`,"data-value-input":D,multiline:(V=(L=a.appearance)==null?void 0:L.string)==null?void 0:V.multiline,placeholder:t.valuePlaceholder||"Value",onKeydown:e.withKeys(R=>h(R,D),["enter"])},{after:e.withCtx(()=>[e.unref(E)&&k.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(E)),{key:0,schema:_.value,update:R=>w(D,R),value:T.value},null,8,["schema","update","value"])):e.createCommentVNode("",!0),k.value&&!e.unref(E)?(e.openBlock(),e.createBlock(v,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${e.unref(p).path.value}`,message:e.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):e.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","multiline","placeholder","onKeydown"])]),e.createVNode(P,{class:"ff-kv-field-entry-remove",text:e.unref(i).t("actions.remove_entity",{entity:m.value})},{default:e.withCtx(()=>[e.createVNode(S,{appearance:"tertiary","aria-label":e.unref(i).t("actions.remove_entity",{entity:m.value}),"data-testid":`ff-kv-remove-btn-${e.unref(p).path.value}.${D}`,icon:"",onClick:R=>e.unref(c)(T.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.CloseIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["text"])]}),_:2},1032,["class","data-testid"])}),128)),e.createVNode(S,{appearance:"tertiary","aria-label":e.unref(i).t("actions.add_entity",{entity:m.value}),class:"ff-kv-field-add-entry-btn","data-testid":`ff-kv-add-btn-${e.unref(p).path.value}`,onClick:b},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(i).t("actions.add_entity",{entity:m.value})),1)]),_:1},8,["aria-label","data-testid"])],8,Jy)),[[e.vShow,!e.unref(p).hide.value]])}}}),[["__scopeId","data-v-221ae647"]]),e_=["data-testid"],t_=["innerHTML"],n_=_e(e.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{labelAttributes:{},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.useAttrs(),a=e.createPropsRestProxy(t,["autofocus","name"]),i=n,{value:r,hide:l,...s}=pt(e.toRef(()=>t.name)),c=wt(s.path,e.toRef({...a,...o})),u=e.ref("");function f(p){u.value=p;let m=p||null;try{const g=JSON.parse(p);g&&typeof g=="object"&&(m=g)}catch{}r.value=m,i("update:modelValue",m)}const d=e.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Pn(t.name)==="name");return e.watch(r,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(u.value);Vt(m,p)||(u.value=JSON.stringify(p,null,2))}catch{u.value=JSON.stringify(p,null,2)}return}u.value=p||""},{immediate:!0}),(p,m)=>{var y;const g=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(g,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,"data-testid":`ff-json-${s.path.value}`},[e.createVNode(Tn,e.mergeProps(e.unref(c),{class:"ff-json-field","data-1p-ignore":d.value,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${s.path.value}`,"model-value":u.value??"",multiline:"","onUpdate:modelValue":f}),e.createSlots({_:2},[(y=e.unref(c).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(p.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(c).labelAttributes.info},null,8,t_)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,e_)),[[e.vShow,!e.unref(l)]])}}}),[["__scopeId","data-v-6f302da9"]]),o_=["innerHTML"],r_=_e(e.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{labelAttributes:{},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},showPasswordMaskToggle:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.useAttrs(),{i18n:{t:a}}=De(),i=e.createPropsRestProxy(t,["autofocus","name"]),r=n,{value:l,hide:s,...c}=pt(e.toRef(()=>t.name));if(c.error)throw new Error(c.error.message);const u=wt(c.path,e.toRef({...i,...o})),f=l.value?l.value.id:null,d=e.computed(()=>{var y;return u.value.placeholder?u.value.placeholder:a("plugins.free-form.foreign_placeholder",{entity:((y=c.schema.value)==null?void 0:y.reference)??"entity"})}),p=e.ref(f??"");function m(y){f!==void 0&&y===""&&y!==f?(l.value=null,r("update:modelValue",null)):(l.value={id:y.trim()},r("update:modelValue",l.value))}const g=e.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Pn(t.name)==="name");return(y,C)=>{var b;return e.withDirectives((e.openBlock(),e.createBlock(Tn,e.mergeProps(e.unref(u),{class:"ff-foreign-field","data-1p-ignore":g.value,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${c.path.value}`,error:t.error,"error-message":t.errorMessage,help:t.help,"model-value":p.value,placeholder:d.value,"onUpdate:modelValue":m}),e.createSlots({_:2},[(b=e.unref(u).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(u).labelAttributes.info},null,8,o_)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])),[[e.vShow,!e.unref(s)]])}}}),[["__scopeId","data-v-ada732c8"]]),ft=e.defineComponent({name:"AutoField",__name:"Field",props:{autofocus:{type:Boolean},name:{}},emits:["globalAction"],setup(t){const n=t,o=pt(e.toRef(n,"name")),a=e.computed(()=>{var i,r;switch((r=(i=o.schema)==null?void 0:i.value)==null?void 0:r.type){case"string":return"one_of"in o.schema.value?Ct:Ze;case"boolean":return"one_of"in o.schema.value?Ct:Qt;case"number":case"integer":return"one_of"in o.schema.value?Ct:qt;case"array":return en;case"set":return Ny(o.schema)?Xo:Ct;case"record":return Et;case"map":return Qo;case"json":return n_;case"foreign":return r_;default:return}});return(i,r)=>{const l=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.$slots[e.unref(Mn)]))),e.unref(o).error?(e.openBlock(),e.createBlock(l,{key:0,appearance:"danger",message:e.unref(o).error.message},null,8,["message"])):e.unref(o).renderer.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(o).renderer.value),{key:1,autofocus:n.autofocus,name:ia(e.unref(o).path.value),onGlobalAction:r[0]||(r[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["autofocus","name"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[a.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),{key:0,autofocus:n.autofocus,name:ia(e.unref(o).path.value)},null,8,["autofocus","name"])):(e.openBlock(),e.createBlock(l,{key:1,appearance:"warning",message:`${e.unref(o).path.value} ${e.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),e.renderSlot(i.$slots,"default")],64))],64)}}}),a_={class:"ff-entity-checks-list"},ls=_e(e.defineComponent({__name:"EntityChecksAlert",props:{entityChecks:{},omittedFields:{}},setup(t){const{i18n:{t:n}}=je.useI18n(),o=e.computed(()=>{if(!Array.isArray(t.entityChecks)||t.entityChecks.length===0)return null;const r=[],l=[{key:"at_least_one_of",i18nKey:"plugins.form.field_rules.at_least_one_of"},{key:"mutually_required",i18nKey:"plugins.form.field_rules.mutually_required"},{key:"mutually_exclusive",i18nKey:"plugins.form.field_rules.mutually_exclusive"}];for(const s of t.entityChecks)for(const{key:c,i18nKey:u}of l)if(c in s){const f=s[c];Array.isArray(f)&&f.length>0&&i(f)&&r.push(n(u,{parameters:a(f)}));break}return r.length?r:null});function a(r){return r.map(is).join(", ")}function i(r){return Array.isArray(t.omittedFields)&&t.omittedFields.length>0?r.filter(s=>!t.omittedFields.includes(s)).length>0:!0}return(r,l)=>{const s=e.resolveComponent("KAlert");return o.value?(e.openBlock(),e.createBlock(s,{key:0,"data-testid":"ff-entity-checks-alert"},{default:e.withCtx(()=>[e.createElementVNode("ul",a_,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,c=>(e.openBlock(),e.createElementBlock("li",{key:c,"data-testid":"ff-entity-check-item"},e.toDisplayString(c),1))),128))])]),_:1})):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-551c79ec"]]),i_=["data-testid"],l_=["data-testid"],s_=["data-testid"],c_={class:"ff-object-field-header-toggle"},d_=["aria-controls","aria-expanded","aria-label","data-testid","disabled"],u_=["innerHTML"],p_=["data-testid"],f_={key:0,class:"indent-guide"},Et=_e(e.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:e.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{default:"reset"},fieldsOrder:{},renderRules:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(t){const n=e.useId(),o=e.createPropsRestProxy(t,["defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:a,hide:i,...r}=pt(e.toRef(o,"name")),{getSchema:l,getDefault:s,useCurrentRenderRules:c}=We(),u=c({fieldPath:r.path,rules:e.toRef(o,"renderRules"),omittedFields:e.toRef(()=>t.omit),parentValue:a}),f=e.useModel(t,"added"),d=e.useModel(t,"expanded"),p=e.computed(()=>{var E,k;if((E=r.ancestors)!=null&&E.value){const _=r.ancestors.value.parent;if(_!=null&&_.path)return((k=l(_.path))==null?void 0:k.type)==="array"}return!1}),m=wt(r.path,{required:t.required,...o,resetLabelPath:t.resetLabelPath}),g=e.computed(()=>m.value.required?!0:f.value??t.defaultAdded),y=e.computed(()=>t.asChild!==void 0?t.asChild:p.value),C=e.computed(()=>{var k;let E=r.schema.value.fields;return t.omit&&(E=E.filter(_=>!t.omit.includes(Object.keys(_)[0]))),t.fieldsOrder?Jl(E,t.fieldsOrder):((k=u.value)!=null&&k.bundles&&(E=Xl([...E],u.value.bundles)),E)});function b(){d.value=!d.value}function h(){f.value?a.value=s(r.path.value):a.value=null}return e.watch(g,E=>{t.collapsible&&(d.value=E)}),e.onBeforeMount(()=>{if(r.error||!a)return;const E=a.value!=null;f.value=E,(m.value.required||E)&&(d.value=!0)}),(E,k)=>{var x;const _=e.resolveComponent("KAlert"),w=e.resolveComponent("KInputSwitch");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(E.$slots[e.unref(Mn)]))),r.error?(e.openBlock(),e.createBlock(_,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):y.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},E.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[e.renderSlot(E.$slots,"default",{},()=>{var O;return[e.createVNode(ls,{"entity-checks":(O=r.schema.value)==null?void 0:O.entity_checks,"omitted-fields":t.omit},null,8,["entity-checks","omitted-fields"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,v=>(e.openBlock(),e.createBlock(ft,{key:Object.keys(v)[0],name:Object.keys(v)[0]},null,8,["name"]))),128))]},!0)],16,i_)),[[e.vShow,!e.unref(i)]]):e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!d.value}],"data-testid":`ff-object-${r.path.value}`},E.$attrs),[e.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[e.createElementVNode("div",c_,[e.createElementVNode("button",{"aria-controls":e.unref(n),"aria-expanded":d.value,"aria-label":e.unref(m).label,class:"ff-object-field-toggle-btn","data-testid":`ff-object-toggle-btn-${r.path.value}`,disabled:!f.value,type:"button",onClick:e.withModifiers(b,["prevent","stop"])},[e.createVNode(e.unref(me.ChevronRightIcon),{class:e.normalizeClass(["ff-object-field-toggle-btn-trigger-icon",{"collapse-expanded":d.value}]),"data-testid":`ff-object-toggle-trigger-icon-${r.path.value}`,decorative:"",size:e.unref(uo)},null,8,["class","data-testid","size"])],8,d_),e.createVNode(e.unref(Oe.KLabel),e.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...e.unref(m),required:!1},{"tooltip-attributes":e.unref(m).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(m).label)+" ",1)]),_:2},[(x=e.unref(m).labelAttributes)!=null&&x.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(E.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(m).labelAttributes.info},null,8,u_)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"])]),e.unref(m).required?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(w,{key:0,modelValue:f.value,"onUpdate:modelValue":[k[0]||(k[0]=O=>f.value=O),h],"data-testid":`ff-object-switch-${r.path.value}`},null,8,["modelValue","data-testid"]))],8,s_),e.createVNode(Wl,null,{default:e.withCtx(()=>[d.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[e.renderSlot(E.$slots,"default",{},()=>{var O;return[e.createVNode(ls,{"entity-checks":(O=r.schema.value)==null?void 0:O.entity_checks,"omitted-fields":t.omit},null,8,["entity-checks","omitted-fields"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,v=>(e.openBlock(),e.createBlock(ft,{key:Object.keys(v)[0],name:Object.keys(v)[0]},null,8,["name"]))),128))]},!0)],8,p_)):e.createCommentVNode("",!0)]),_:3}),d.value?(e.openBlock(),e.createElementBlock("div",f_)):e.createCommentVNode("",!0)],16,l_)),[[e.vShow,!e.unref(i)]])],64)}}}),[["__scopeId","data-v-2ed54dc5"]]),m_={class:"ff-advanced-fields"},ss=_e(e.defineComponent({__name:"AdvancedFields",props:{hideGeneralFields:{type:Boolean}},setup(t){const{t:n}=it.createI18n("en-us",ct),{getSchema:o}=We(),a=e.ref(!0);return(i,r)=>(e.openBlock(),e.createBlock(e.unref(Oe.KCollapse),{modelValue:a.value,"onUpdate:modelValue":r[0]||(r[0]=l=>a.value=l),"data-testid":"view-advanced","trigger-label":a.value?e.unref(n)("plugins.form.grouping.advanced_parameters.view"):e.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:e.withCtx(()=>[e.createElementVNode("div",m_,[t.hideGeneralFields?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.unref(o)("instance_name")?(e.openBlock(),e.createBlock(ft,{key:0,name:"instance_name"})):e.createCommentVNode("",!0),e.unref(o)("protocols")?(e.openBlock(),e.createBlock(ft,{key:1,name:"protocols"})):e.createCommentVNode("",!0),e.unref(o)("tags")?(e.openBlock(),e.createBlock(Xo,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:e.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):e.createCommentVNode("",!0),e.unref(o)("condition")?(e.openBlock(),e.createBlock(Ze,{key:3,name:"condition",placeholder:e.unref(n)("plugins.form.fields.condition.placeholder")},null,8,["placeholder"])):e.createCommentVNode("",!0)],64)),e.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-6ee1c652"]]),jn=_e(e.defineComponent({__name:"ConfigForm",setup(t){const{getSchema:n,createComputedRenderRules:o}=We(),a=o("config"),i=e.computed(()=>{var C;const l=[],s=[],c=new Set,f=n().fields.find(b=>Object.keys(b)[0]==="config");if(!f||!("config"in f))return{defaultVisible:l,advanced:s};const d=f.config;d.entity_checks&&d.entity_checks.forEach(b=>{var E,k;let h;"at_least_one_of"in b?h=b.at_least_one_of:"conditional"in b&&((E=n(et("config",b.conditional.if_field)))!=null&&E.required)&&b.conditional.then_match.required?h=[b.conditional.if_field,b.conditional.then_field]:"conditional_at_least_one_of"in b&&((k=n(et("config",b.conditional_at_least_one_of.if_field)))!=null&&k.required)&&(h=[b.conditional_at_least_one_of.if_field,...b.conditional_at_least_one_of.then_at_least_one_of]),h==null||h.forEach(_=>c.add(_))});const p=((C=a.value)==null?void 0:C.bundles)??[],m=new Map;for(const b of p)for(let h=1;h<b.length;h++)m.set(b[h],b[h-1]);const g=b=>{const h=m.get(b);return h?g(h):b},y=new Map;for(const b of d.fields){const h=Object.keys(b)[0];y.set(h,g(h))}for(const b of d.fields){const h=Object.keys(b)[0];if(y.get(h)!==h)continue;let k;b[h].required||c.has(h)?k=l:k=s,k.push(h)}for(const b of d.fields){const h=Object.keys(b)[0],E=y.get(h);E!==h&&(l.includes(E)?l:s).push(h)}return{defaultVisible:l,advanced:s}}),r=e.computed(()=>i.value.defaultVisible.length===0);return(l,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Et,{"as-child":"",class:"ff-default-visible-fields",name:"config",omit:r.value?[]:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ss,{key:0,class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:e.withCtx(()=>[e.createVNode(Et,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1}))],64))}}),[["__scopeId","data-v-85ed2001"]]),mt=e.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{},renderRules:{}},emits:["change","globalAction"],setup(t,{expose:n,emit:o}){const a=o,i=e.useSlots(),{getSchema:r,formData:l,setValue:s,getValue:c,rootRenderRules:u}=Ty({schema:t.schema,propsData:e.computed(()=>t.data),propsConfig:t.config,propsRenderRules:e.toRef(()=>t.renderRules),onChange:d=>a("change",d)}),f=e.computed(()=>{var m;const{fields:d}=r();let p=[...d];return t.fieldsOrder?Jl(p,t.fieldsOrder):((m=u.value)!=null&&m.bundles&&(p=Xl([...p],u.value.bundles)),p)});return n({getValue:c,getRawValue:()=>e.toRaw(l),setValue:s}),(d,p)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tag),null,{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(i)[e.unref(Mn)]))),e.renderSlot(d.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,m=>(e.openBlock(),e.createBlock(ft,{key:Object.keys(m)[0],name:Object.keys(m)[0],onGlobalAction:p[0]||(p[0]=(g,y)=>a("globalAction",g,y))},null,8,["name"]))),128))])]),_:3}))}}),g_=["data-testid"],h_=_e(e.defineComponent({__name:"SwitchField",props:{labelAttributes:{},enabledText:{},disabledText:{},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const{i18n:{t:o}}=je.useI18n(),a=e.createPropsRestProxy(t,["name","enabledText","disabledText"]),{value:i,hide:r,emptyOrDefaultValue:l,...s}=pt(e.toRef(()=>t.name)),c=n,u=d=>{i.value=d,c("update:modelValue",d)},f=wt(s.path,a);return(d,p)=>{const m=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(m,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,class:"ff-switch-field","data-testid":`ff-${s.path.value}`},[e.createVNode(e.unref(Oe.KInputSwitch),e.mergeProps(e.unref(f),{"model-value":!!(e.unref(i)==null?e.unref(l):e.unref(i)),"onUpdate:modelValue":u}),{label:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)?t.enabledText||e.unref(o)("actions.enabled"):t.disabledText||e.unref(o)("actions.disabled")),1)]),_:1},16,["model-value"])],8,g_)),[[e.vShow,!e.unref(r)]])}}}),[["__scopeId","data-v-91cf1d27"]]),y_=["data-testid"],__={key:1,class:"ff-scope-entity-help"},b_=_e(e.defineComponent({__name:"ScopeEntityField",props:{entity:{},fields:{default:()=>["name","id"]},labelField:{default:"name"},label:{},placeholder:{},help:{},disabled:{type:Boolean},autofocus:{type:Boolean},name:{}},setup(t){const n=e.createPropsRestProxy(t,["name","entity","fields","labelField","disabled","placeholder","help"]),{i18n:{t:o}}=je.useI18n(),{value:a,hide:i,...r}=pt(e.toRef(()=>t.name));if(r.error)throw new Error(r.error.message);const l=wt(r.path,n),s=e.inject(Le.FORMS_API_KEY),c=e.computed(()=>t.fields.filter(y=>y!=="id")),u=e.computed(()=>t.fields.includes("id")),f=e.ref(!1),d=e.ref(),p=e.ref(),m=e.computed(()=>{var y,C;return(((y=a==null?void 0:a.value)==null?void 0:y.id)??"")===(((C=p.value)==null?void 0:C.value)??"")});e.onMounted(async()=>{var C;const y=(C=a==null?void 0:a.value)==null?void 0:C.id;if(!(!y||!s)){f.value=!0;try{const b=await s.getOne(t.entity,y,{validateStatus:k=>k>=200&&k<300||k===404});if(b.status===404)throw new Error(`Entity of type ${t.entity} with id ${y} not found`);const h=b.data,E={...h,label:h[t.labelField]??h.id,value:h.id};p.value=E,d.value=E}catch(b){console.error("Failed to load selected entity:",b),a.value=null}finally{f.value=!1}}});function g(y){y?(a.value={id:y.value},d.value=y):(a.value=null,d.value=void 0)}return(y,C)=>{var b;return e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:"ff-scope-entity-field","data-testid":`ff-${r.path.value}`},[e.unref(l).label?(e.openBlock(),e.createBlock(e.unref(Oe.KLabel),e.normalizeProps(e.mergeProps({key:0},e.unref(l).labelAttributes)),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l).label),1)]),_:1},16)):e.createCommentVNode("",!0),e.createVNode(e.unref(Le.FieldScopedEntitySelect),{id:((b=e.unref(a))==null?void 0:b.id)??"","allow-uuid-search":u.value,disabled:f.value,"dom-id":t.name,entity:t.entity,"field-disabled":t.disabled,fields:c.value,"initial-item-selected":m.value,"label-field":t.labelField,placeholder:f.value?e.unref(o)("actions.loading_spinner"):t.placeholder||e.unref(l).placeholder,"selected-item":d.value,"selected-item-loading":f.value,onChange:g},null,8,["id","allow-uuid-search","disabled","dom-id","entity","field-disabled","fields","initial-item-selected","label-field","placeholder","selected-item","selected-item-loading"]),t.help?(e.openBlock(),e.createElementBlock("p",__,e.toDisplayString(t.help),1)):e.createCommentVNode("",!0)],8,y_)),[[e.vShow,!e.unref(i)]])}}}),[["__scopeId","data-v-33b4fa01"]]),Gt=e.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(t){const n=t,{default:o}=e.useSlots(),{fieldRendererRegistry:a}=We();return o&&a.set(n.match,o),(i,r)=>null}}),er=Symbol("redis-partial-info"),k_={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"}},w_={class:"partial-config-card"},C_={class:"config-card-row-label"},E_={class:"label-text"},N_=["data-testid"],x_=["data-testid"],S_={key:1},A_=["data-testid"],I_=["data-testid"],P_=_e(e.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(t){const{t:n,formatUnixTimeStamp:o}=it.createI18n("en-us",ct),a={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=t,r=d=>d!=null,l=(d,p)=>r(p)&&["password","sentinel_password"].includes(d)?"password":"text",{convertKeyToTitle:s}=le.useStringHelpers(),c=e.computed(()=>Object.entries(i.configFields).map(([d,p])=>{var m,g,y,C;return{key:d,label:((m=a[d])==null?void 0:m.label)??s(d),value:(g=a[d])!=null&&g.formatter?a[d].formatter(p):p,type:((y=a[d])==null?void 0:y.type)??l(d,p),order:((C=a[d])==null?void 0:C.order)??100}}).sort((d,p)=>d.order-p.order).filter(d=>d.type!=="hidden")),u=Ey(i.configFields,i.pluginRedisFields||[]),f=e.computed(()=>c.value.concat(u));return(d,p)=>{const m=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",w_,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,({key:g,label:y,value:C,type:b})=>(e.openBlock(),e.createElementBlock("div",{key:g,class:"partial-config-card-row"},[e.createElementVNode("div",C_,[e.createElementVNode("div",E_,e.toDisplayString(y),1)]),e.createElementVNode("div",{class:"config-card-row-value","data-testid":`${g}-property-value`},[r(C)?(e.openBlock(),e.createElementBlock("div",S_,[b==="password"?(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${g}-copy-password`},[e.createVNode(m,{format:"redacted",text:String(C)},null,8,["text"])],8,A_)):(e.openBlock(),e.createElementBlock("div",{key:1,"data-testid":`${g}-plain-text`},e.toDisplayString(C),9,I_))])):(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${g}-no-value`}," – ",8,x_))],8,N_)]))),128))])}}}),[["__scopeId","data-v-e2403663"]]);function ua(){const t=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=e.inject(Rl,t);return o=>n(o)}const T_={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},O_={class:"shared-redis-config"},V_={class:"shared-redis-config-title"},B_={class:"redis-config-select","data-testid":"redis-config-select"},R_={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},cs=_e(e.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},setup(t){var I;const{t:n}=it.createI18n("en-us",ct),o=["host","port","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","timeout","read_timeout","send_timeout","connect_timeout","connection_is_proxied","redis_proxy_type","cloud_authentication"],a={dependencies:{"cloud_authentication.aws_cache_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_region":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_is_serverless":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_access_key_id":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_secret_access_key":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_assume_role_arn":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_role_session_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.gcp_service_account_json":["cloud_authentication.auth_provider","gcp"],"cloud_authentication.azure_client_id":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_client_secret":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_tenant_id":["cloud_authentication.auth_provider","azure"]}},i=t,r=ua(),l=e.inject(er),s=(l==null?void 0:l.isEditing)||!1,c=e.computed(()=>{var S;return i.redisPath?i.redisPath:(S=l==null?void 0:l.redisPath)!=null&&S.value?"$."+l.redisPath.value:"$.config.redis"}),u=i.redisType||((I=l==null?void 0:l.redisType)==null?void 0:I.value),f=e.computed(()=>{var S;return!!((S=l==null?void 0:l.redisType)!=null&&S.value)}),d=e.ref(null),p=e.ref(!s),{getMessageFromError:m}=le.useErrors(),g=e.ref(i.defaultRedisConfigItem),y=e.ref({}),C=e.ref(),{value:b}=ns("$.partials"),{value:h,hide:E}=pt(c),k=e.inject(Le.FORMS_CONFIG),_=e.ref(null),w=S=>{let P=`${k.apiBaseUrl}${k_[k.app].getOne}`;return k.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,(k==null?void 0:k.controlPlaneId)||""):k.app==="kongManager"&&(P=P.replace(/\/{workspace}/gi,k!=null&&k.workspace?`/${k.workspace}`:"")),P=P.replace(/{id}/gi,String(S)),P},{axiosInstance:x}=le.useAxios(k==null?void 0:k.axiosRequestConfig),O=()=>{p.value?(C.value&&(b.value=C.value,g.value=C.value[0].id,h.value=void 0),h!=null&&h.value&&(y.value=h.value)):(Object.keys(y.value).length&&(h.value=y.value),b!=null&&b.value&&(C.value=b.value),b.value=s?null:void 0)},v=async S=>{if(S){g.value=S,b.value=[{id:S}],C.value=[{id:S}],h.value=void 0;try{const P=await x.get(w(S));if(P.data.config){const F=Object.assign(P.data,P.data.config);delete F.config,d.value=F}}catch(P){console.error(P)}}};return e.watch(()=>p.value,()=>{O()}),e.onBeforeMount(()=>{var S;if(i.defaultRedisConfigItem||b!=null&&b.value){const P=i.defaultRedisConfigItem||((S=b==null?void 0:b.value)==null?void 0:S[0].id);v(P),p.value=!0}else h!=null&&h.value&&(y.value=h.value)}),e.watch(()=>E==null?void 0:E.value,S=>{p.value&&(S&&b.value?b.value=s?null:void 0:S||C.value&&(b.value=C.value,v(C.value[0].id)))}),(S,P)=>{const F=e.resolveComponent("KRadio"),T=e.resolveComponent("KCard");return f.value?e.withDirectives((e.openBlock(),e.createBlock(T,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:e.unref(n)("redis.title")},{default:e.withCtx(()=>[e.createElementVNode("div",T_,[e.createVNode(F,{modelValue:p.value,"onUpdate:modelValue":P[0]||(P[0]=D=>p.value=D),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:e.unref(n)("redis.shared_configuration.description"),label:e.unref(n)("redis.shared_configuration.label"),"selected-value":!0},null,8,["modelValue","description","label"]),e.createVNode(F,{modelValue:p.value,"onUpdate:modelValue":P[1]||(P[1]=D=>p.value=D),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:e.unref(n)("redis.dedicated_configuration.description"),label:e.unref(n)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),e.withDirectives(e.createElementVNode("div",O_,[e.createElementVNode("div",V_,e.toDisplayString(e.unref(n)("redis.shared_configuration.title")),1),e.createElementVNode("div",B_,[e.createVNode(e.unref(ri.RedisConfigurationSelector),{"data-testid":"redis-config-select-trigger","model-value":g.value,"redis-type":e.unref(u),onErrorChange:P[2]||(P[2]=D=>_.value=D),onToast:e.unref(r),"onUpdate:modelValue":P[3]||(P[3]=D=>v(D))},null,8,["model-value","redis-type","onToast"])]),d.value?(e.openBlock(),e.createBlock(P_,{key:0,"config-fields":d.value},null,8,["config-fields"])):e.createCommentVNode("",!0),_.value?(e.openBlock(),e.createElementBlock("p",R_,e.toDisplayString(_.value?e.unref(m)(_.value):e.unref(n)("redis.shared_configuration.error")),1)):e.createCommentVNode("",!0)],512),[[e.vShow,p.value]]),p.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Et,e.mergeProps({key:0},i,{"as-child":"","fields-order":o,name:c.value,"render-rules":a,"reset-label-path":"reset"}),null,16,["name"]))]),_:1},8,["title"])),[[e.vShow,!e.unref(E)]]):e.withDirectives((e.openBlock(),e.createBlock(Et,e.mergeProps({key:1},i,{"fields-order":o,"hide-required-asterisk":"",name:c.value,"render-rules":a}),null,16,["name"])),[[e.vShow,!e.unref(E)]])}}}),[["__scopeId","data-v-d9fc3bcf"]]);/*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT */function ds(t){return typeof t>"u"||t===null}function $_(t){return typeof t=="object"&&t!==null}function F_(t){return Array.isArray(t)?t:ds(t)?[]:[t]}function L_(t,n){var o,a,i,r;if(n)for(r=Object.keys(n),o=0,a=r.length;o<a;o+=1)i=r[o],t[i]=n[i];return t}function D_(t,n){var o="",a;for(a=0;a<n;a+=1)o+=t;return o}function M_(t){return t===0&&Number.NEGATIVE_INFINITY===1/t}var j_=ds,v_=$_,K_=F_,U_=D_,q_=M_,G_=L_,lt={isNothing:j_,isObject:v_,toArray:K_,repeat:U_,isNegativeZero:q_,extend:G_};function us(t,n){var o="",a=t.reason||"(unknown reason)";return t.mark?(t.mark.name&&(o+='in "'+t.mark.name+'" '),o+="("+(t.mark.line+1)+":"+(t.mark.column+1)+")",!n&&t.mark.snippet&&(o+=`
|
|
17
|
+
${x}`)}if(E.has(_))return;E.add(_),k.push(_);const w=C.dependencies[_];if(w){const[x]=w;C.dependencies[x]&&h(x)}k.pop()};const E=new Set,k=[];h(b)}}function l(g,y){const C=g.map(h=>y?et(y,h):h),b=kt(C[0]);return b.pop(),et(...b)}function s(g,y){if(!y)return g;const C=`${y}${Yo}`;return g.startsWith(C)?g.slice(C.length):g}function c(g){const y=kt(g);return y.pop(),et(...y)}const u=e.computed(()=>{const g={};for(const[y,C]of Object.entries(n.value)){const b=y===In?"":y;if(C.bundles)for(const h of C.bundles){if(h.length<2)throw new Error(`Bundle must contain at least 2 fields. Found ${h.length} field(s) in bundle: [${h.join(", ")}]`);const E=h.map(w=>b?et(b,w):w);a(E,`Bundle [${h.join(", ")}]`);const k=l(h,b)||In;g[k]||(g[k]={}),g[k].bundles||(g[k].bundles=[]);const _=E.map(w=>s(w,k));g[k].bundles.push(_)}if(C.dependencies)for(const[h,[E,k]]of Object.entries(C.dependencies)){const _=b?et(b,h):h,w=b?et(b,E):E;a([_,w],`Dependency '${h}' -> '${E}'`);const x=c(_)||In;g[x]||(g[x]={}),g[x].dependencies||(g[x].dependencies={});const O=s(_,x),K=s(w,x);g[x].dependencies[O]=[K,k]}}return i(g),r(g),g});function f(g){if(!g)return u.value;const y=Jo(g);return u.value[y]}function d(g){let y=!1;return e.computed(()=>{if(y)return;const C=e.toValue(g);try{return f(C)}catch(b){y=!0,console.error(`Failed to get render rules for path: \`${C}\`,`,b instanceof Error?b.message:"");return}})}function p(g){const{fieldPath:y,rules:C,parentValue:b,omittedFields:h}=g;e.watch([()=>e.toValue(C),()=>e.toValue(y)],([k,_],[,w])=>{k?n.value[_]=k:delete n.value[_],w&&w!==_&&delete n.value[w]},{immediate:!0,deep:!0});const E=d(y);return e.watch([()=>e.toValue(b),()=>{var k;return(k=e.toValue(E))==null?void 0:k.dependencies},()=>e.toValue(y),()=>e.toValue(h)],([k,_,w,x])=>{!_||!k||Object.entries(_).forEach(([O,[K,I]])=>{if(x!=null&&x.includes(O))return;const S=vo(k,K),P=w?Cy(et(w,O)):O;if(Vt(S,I)){o.value.delete(P),t();return}o.value.add(P),t()})},{deep:!0,immediate:!0}),e.onBeforeUnmount(()=>{const k=e.toValue(y);delete n.value[k]}),E}function m(g){return o.value.has(g)}return{useCurrentRules:p,createComputedRules:d,hiddenPaths:e.readonly(o),isFieldHidden:m}}const[Ty,Oy]=Xe.createInjectionState(function(n){const{schema:o,propsData:a,onChange:i,propsRenderRules:r,propsConfig:l}=n,s=Iy(o),c=new Map,u=e.reactive({}),f=e.toRef(()=>l??{}),d=e.useSlots();e.provide(la,sn(d,"default",Mn));const{useCurrentRules:p,createComputedRules:m,hiddenPaths:g,isFieldHidden:y}=Py(()=>i==null?void 0:i(k())),C=p({fieldPath:In,rules:r,parentValue:u});function b(_){Object.keys(u).forEach(w=>{delete u[w]}),Object.assign(u,_)}function h(_){let w;!_||!E(e.toValue(_))?w=s.getDefault():w=Sn(e.toValue(_)),Bo(f.value.prepareFormData)?b(f.value.prepareFormData(w)):b(w)}function E(_){return Bo(f.value.hasValue)?f.value.hasValue(_):!!_}function k(){const _=e.toValue(u),w=Sn(_);if(g.value.size>0)for(const x of g.value){const O=kt(x),K=O.slice(0,-1);(K.length===0||vo(w,K)!=null)&&Vl(w,O,s.getEmptyOrDefault(x))}return w}return e.watch(u,()=>{i==null||i(k())},{deep:!0}),e.watch(()=>a==null?void 0:a.value,_=>{h(_)},{deep:!0,immediate:!0}),{formData:u,schema:o,config:f,fieldRendererRegistry:c,setValue:b,useCurrentRenderRules:p,rootRenderRules:C,createComputedRenderRules:m,...s,getValue:k,isFieldHidden:y}});function We(){const t=Oy();if(!t)throw new Error("useFormShared() called without provider.");return t}const ts=t=>{const n=e.inject(Ql,e.computed(()=>"")),o=e.computed(()=>{const a=e.toValue(t);let i=a;return!Yl(a)&&n.value&&(i=et(n.value,a)),Yl(a)&&(i=i.slice(ia("").length)),i});return e.provide(Ql,o),o},Vy=t=>{const{getSchema:n,fieldRendererRegistry:o}=We(),{default:a,...i}=e.useSlots(),r=e.inject(la),l=e.computed(()=>{const c=e.toValue(r),u=Object.keys(i).filter(f=>f!==Mn&&f!=="item").reduce((f,d)=>{const p=Jo(et(e.toValue(t),d));return{...f,[p]:i[d]}},{});return c?{...c,...u}:u});e.provide(la,l);const s=e.toValue(t);return e.computed(()=>{if(a)return;const c=l.value[Jo(e.toValue(t))];if(c)return c;for(const[u,f]of o)if(u({path:s,schema:n(s)}))return f})};function ns(t){const{formData:n}=We(),o=ts(t);return{value:e.computed({get:()=>vo(n,kt(o.value)),set:i=>Vl(n,kt(o.value),i)})}}function pt(t){const{getSchema:n,isFieldHidden:o,getEmptyOrDefault:a}=We(),i=ts(t),r=Vy(i),{value:l}=ns(t),s=e.computed(()=>n(i.value)),c=e.computed(()=>o(i.value)),u=e.computed(()=>a(i.value));return s.value?{schema:s,path:i,renderer:r,value:l,ancestors:Zl(i),hide:c,emptyOrDefaultValue:u,error:null}:{error:new Error(`path '${i.value}' is not found in schema.`)}}function os(t,n){const o=new WeakMap,a=new Map;function i(){return zo(`${t}-`)}function r(l,s){if(l==null||typeof l!="object")return`${t}-${s}`;if(o.has(l))return o.get(l);const c=a.has(s)?a.get(s):i();return a.set(s,c),o.set(l,c),c}return e.watch(n,l=>{const s=e.toValue(l),c=new Set;s.forEach((u,f)=>{c.add(f)}),Array.from(a.keys()).forEach(u=>{c.has(u)||a.delete(u)})},{immediate:!0,deep:!0}),{getKey:r}}function By(t,n){e.watch(t,o=>{window[Ln]||(window[Ln]={}),window[Ln][n]=e.toRaw(o)},{immediate:!0,deep:!0}),e.onUnmounted(()=>{window[Ln]&&delete window[Ln][n]})}const Ry={ip:"IP",ssl:"SSL",ttl:"TTL",url:"URL",http:"HTTP",https:"HTTPS",api:"API",uri:"URI",jq:"jq",vpn:"VPN",id:"ID",llm:"LLM",tls:"TLS",tcp:"TCP",udp:"UDP",lua:"Lua",jwt:"JWT",aws:"AWS",gcp:"GCP",azure:"Azure",acl:"ACL",cookie:"Cookie",ai:"AI",awsgateway:"AWS Gateway",imds:"IMDS",sts:"STS",arn:"ARN"};function rs(t){return Ry[t.toLocaleLowerCase()]??t}function as(t){return t.split("_").map(rs).join(" ")}function $y(t,n){const o=e.inject(es,{parentPath:null,isolate:!1}),{parentPath:a,isolate:i}=e.toValue(o),r=e.ref(a?et(a,t):t),l=e.ref({parentPath:r.value,isolate:i});return e.watch([e.toRef(n),e.toRef(o)],([s,c])=>{var p;const{parentPath:u,isolate:f}=c,d=u?et(u,t):t;if(s){const m={isolate:()=>{r.value=t,l.value.isolate=!0,l.value.parentPath=null},"isolate-children":()=>{l.value.isolate=!0,l.value.parentPath=null},reset:()=>{r.value=t,l.value.isolate=!1,l.value.parentPath=null},"reset-children":()=>{l.value.isolate=!1,l.value.parentPath=null},inherit:()=>{r.value=d,l.value.isolate=!1,l.value.parentPath=d}};(p=m[s])==null||p.call(m)}else f&&(r.value=t,l.value.isolate=!0,l.value.parentPath=null)},{deep:!0,immediate:!0}),e.provide(es,l),r}function is(t){return kt(t).map(o=>o.split("_").map(rs).join(" ")).map(om).join(" › ")}function Fy(t,n){const o=e.toValue(t),a=Pn(o),{config:i,getSchema:r}=We(),l=$y(a,n),s=Zl(t);return e.computed(()=>{var p;const c=l.value??a,u=(p=s.value.parent)!=null&&p.path?r(s.value.parent.path):null,d=(u==null?void 0:u.type)==="array"?"":is(c);return i.value.transformLabel?i.value.transformLabel(d,o):d})}function wt(t,n){const{getLabelAttributes:o,getPlaceholder:a,getSchema:i}=We(),r=e.toValue(t),l=e.toValue(n),s=Fy(t,e.toRef(()=>e.toValue(n).resetLabelPath));return e.computed(()=>{var c;return{...l,placeholder:l.placeholder??a(r)??void 0,labelAttributes:l.labelAttributes??o(r),label:l.label??s.value,required:l.required??((c=i(r))==null?void 0:c.required)}})}const Tn=e.defineComponent({__name:"EnhancedInput",props:{modelValue:{},multiline:{type:Boolean}},emits:["update:modelValue"],setup(t,{emit:n}){const o=t,a=e.useAttrs(),i=n,r=e.computed(()=>o.multiline?Oe.KTextArea:Oe.KInput),l=e.computed(()=>a.characterLimit??(o.multiline?!1:void 0)),s=e.ref(o.modelValue);e.watch(()=>o.modelValue,d=>{s.value=d});const{config:c}=We(),u=d=>{d!==s.value&&(s.value=d,c.value.updateOnChange||i("update:modelValue",d))},f=()=>{c.value.updateOnChange&&i("update:modelValue",s.value)};return(d,p)=>(e.openBlock(),e.createBlock(e.unref(r),e.mergeProps(d.$attrs,{"character-limit":l.value,"model-value":t.modelValue,resizable:t.multiline?!0:void 0,onChange:f,"onUpdate:modelValue":u}),e.createSlots({_:2},[e.renderList(e.useSlots(),(m,g)=>({name:g,fn:e.withCtx(y=>[e.renderSlot(d.$slots,g,e.normalizeProps(e.guardReactiveProps(y)))])}))]),1040,["character-limit","model-value","resizable"]))}}),Ly=["innerHTML"],Ze=_e(e.defineComponent({inheritAttrs:!1,__name:"StringField",props:{labelAttributes:{},multiline:{type:Boolean},showVaultSecretPicker:{type:Boolean,default:()=>{}},showPasswordMaskToggle:{type:Boolean,default:()=>{}},type:{},placeholder:{},inputId:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.useAttrs(),{i18n:a}=De(),i=e.createPropsRestProxy(t,["autofocus","showVaultSecretPicker","showPasswordMaskToggle","name"]),r=n,{value:l,hide:s,...c}=pt(e.toRef(()=>t.name)),u=wt(c.path,e.toRef({...i,...o})),f=l==null?void 0:l.value;function d(b){f!==void 0&&b===""&&b!==f?(l.value=null,r("update:modelValue",null)):(l.value=b.trim(),r("update:modelValue",b.trim()))}const p=e.computed(()=>{var b;return t.showPasswordMaskToggle!==void 0?t.showPasswordMaskToggle:i.type==="password"?!0:!!((b=c.schema)==null?void 0:b.value).encrypted}),m=e.inject(Le.AUTOFILL_SLOT,void 0),g=e.computed(()=>{var b;return t.showVaultSecretPicker!==void 0?t.showVaultSecretPicker:!!((b=c.schema.value)!=null&&b.referenceable)}),y=e.computed(()=>({referenceable:g.value})),C=e.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Pn(t.name)==="name");return(b,h)=>{var k;const E=e.resolveComponent("KAlert");return c.error?(e.openBlock(),e.createBlock(E,{key:0,appearance:"danger",message:c.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",e.normalizeProps(e.mergeProps({key:1},b.$attrs)),[e.createVNode(Tn,e.mergeProps({...e.unref(u),showPasswordMaskToggle:p.value,type:p.value?"password":"text"},{id:t.inputId,class:"ff-string-field","data-1p-ignore":C.value,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${c.path.value}`,error:t.error,"error-message":t.errorMessage,help:t.multiline&&t.error?t.errorMessage:t.help,"model-value":e.unref(l)??"",multiline:t.multiline,placeholder:t.placeholder??e.unref(u).placeholder,"onUpdate:modelValue":d}),e.createSlots({_:2},[(k=e.unref(u).labelAttributes)!=null&&k.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(b.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(u).labelAttributes.info},null,8,Ly)],!0)]),key:"0"}:void 0,!(t.multiline&&t.error)&&b.$slots.help?{name:"help",fn:e.withCtx(()=>[e.renderSlot(b.$slots,"help",{},void 0,!0)]),key:"1"}:void 0]),1040,["id","data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","multiline","placeholder"]),e.unref(m)&&g.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(m)),{key:0,schema:y.value,update:d,value:e.unref(l)??""},null,8,["schema","value"])):e.createCommentVNode("",!0),g.value&&!e.unref(m)?(e.openBlock(),e.createBlock(E,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${c.path.value}`,message:e.unref(a).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):e.createCommentVNode("",!0)],16)),[[e.vShow,!e.unref(s)]])}}}),[["__scopeId","data-v-a83cf1a6"]]),Dy=["innerHTML"],Qt=_e(e.defineComponent({__name:"BooleanField",props:{labelAttributes:{},modelValue:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.createPropsRestProxy(t,["autofocus","name"]),{value:a,hide:i,emptyOrDefaultValue:r,...l}=pt(e.toRef(()=>t.name)),s=n,c=f=>{a.value=f,s("update:modelValue",f)},u=wt(l.path,o);return(f,d)=>{var m;const p=e.resolveComponent("KAlert");return l.error?(e.openBlock(),e.createBlock(p,{key:0,appearance:"danger",message:l.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createBlock(e.unref(Oe.KCheckbox),e.mergeProps({key:1},e.unref(u),{class:"ff-boolean-field","data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${l.path.value}`,"model-value":!!(e.unref(a)==null?e.unref(r):e.unref(a)),"onUpdate:modelValue":c}),e.createSlots({_:2},[(m=e.unref(u).labelAttributes)!=null&&m.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(f.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(u).labelAttributes.info},null,8,Dy)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value"])),[[e.vShow,!e.unref(i)]])}}}),[["__scopeId","data-v-46a62c12"]]),My=["data-testid"],jy=["innerHTML"],Xo=_e(e.defineComponent({inheritAttrs:!1,__name:"StringArrayField",props:{labelAttributes:{},multiline:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.useAttrs(),a=e.createPropsRestProxy(t,["autofocus","name"]),i=n,{value:r,hide:l,...s}=pt(e.toRef(()=>t.name)),c=wt(s.path,e.toRef({...a,...o})),u=e.computed(()=>{var y,C;return((C=(y=s.schema)==null?void 0:y.value)==null?void 0:C.len_min)&&s.schema.value.len_min>0}),f=e.ref("");function d(y){return y.map(C=>C.trim()).filter(Boolean).join(", ")}function p(y){return y.trim().split(",").map(C=>C.trim()).filter(Boolean)}function m(y){f.value=y;const C=p(y),b=!C.length&&u.value?null:C;r.value=b,i("update:modelValue",b)}const g=e.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Pn(t.name)==="name");return e.watch(r,y=>{const C=y?d(y):"";d(p(f.value))!==C&&(f.value=C)},{immediate:!0}),(y,C)=>{var h;const b=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(b,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,"data-testid":`ff-tag-${s.path.value}`},[e.createVNode(Tn,e.mergeProps(e.unref(c),{class:"ff-tag-field","data-1p-ignore":g.value,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${s.path.value}`,"model-value":f.value??"","onUpdate:modelValue":m}),e.createSlots({_:2},[(h=e.unref(c).labelAttributes)!=null&&h.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(c).labelAttributes.info},null,8,jy)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,My)),[[e.vShow,!e.unref(l)]])}}}),[["__scopeId","data-v-3aa09162"]]),Ky=["data-appearance","data-testid"],vy=["data-testid"],Uy=["innerHTML"],qy=["data-testid"],Gy={class:"ff-array-field-item-content"},zy=["data-index","data-testid"],da='input:not(:disabled), textarea:not(:disabled), select:not(:disabled), button:not(:disabled), [contenteditable="true"], [tabindex]:not([tabindex="-1"]):not(:disabled)',en=_e(e.defineComponent({__name:"ArrayField",props:{name:{},items:{},label:{},labelAttributes:{},itemLabel:{type:[String,Function]},appearance:{},stickyTabs:{type:[Boolean,String,Number]},autofocus:{type:Boolean}},emits:["add","remove"],setup(t,{emit:n}){var I;e.useCssVars(S=>({d4d4e372:K.value}));const o=t,a=n,{i18n:{t:i}}=De(),{getDefault:r,getSchema:l}=We(),{value:s,hide:c,...u}=pt(e.toRef(o,"name")),f=wt(u.path,e.toRef({...o,...e.useAttrs()})),d=e.computed(()=>{if(!u.path)throw new Error("Field path is required for sub-schema retrieval");const S=l(u.path.value);if(!S)throw new Error(`Schema not found for path: ${u.path.value}`);return S.elements}),p=e.computed(()=>{if(!u.path)return"";const S=Pn(u.path.value);return as(S)}),m=e.computed(()=>o.items??e.toValue(s)??[]),{getKey:g}=os("ff-array-field",m),y=e.computed(()=>o.appearance?o.appearance:d.value.type==="record"?"card":"default"),C=e.computed(()=>y.value==="card"?Oe.KCard:"div");function b(S,P){return typeof o.itemLabel=="function"?o.itemLabel(S,P):o.itemLabel||f.value.label||`Item #${P}`}const h=e.computed(()=>m.value.map((S,P)=>({hash:`#${g(S,P)}`,title:""}))),E=e.ref((I=h.value[0])==null?void 0:I.hash),k=async()=>{var P;const S=r(et(u.path.value,aa));Array.isArray(s.value)||(s.value=[]),s.value.push(S),a("add"),o.appearance==="tabs"&&(await e.nextTick(),E.value=(P=h.value[h.value.length-1])==null?void 0:P.hash),await e.nextTick(),x(m.value.length+1)},_=async S=>{var P;Array.isArray(s.value)&&s.value.splice(S,1),a("remove",S),o.appearance==="tabs"&&(E.value=(P=h.value[Math.max(0,S-1)])==null?void 0:P.hash)},w=e.useTemplateRef("root");function x(S){if(!w.value)return;const P=Math.max(0,Math.min(S,m.value.length-1)),F=w.value.querySelector(`[data-index="${P}"]`);if(!F)return;const T=O(F);T==null||T.focus()}function O(S){const P=S.querySelector('[data-autofocus="true"]');return P?P.matches(da)?P:P.querySelector(da):S.querySelector(da)}const K=e.computed(()=>{const{appearance:S,stickyTabs:P}=o;return S!=="tabs"||P==null||P===!1?null:typeof P=="number"?`${o.stickyTabs}px`:typeof P=="string"?P:"0"});return(S,P)=>{var L;const F=e.resolveComponent("KAlert"),T=e.resolveComponent("KLabel"),D=e.resolveComponent("KButton"),U=e.resolveComponent("KTooltip"),q=e.resolveComponent("KTabs");return u.error?(e.openBlock(),e.createBlock(F,{key:0,appearance:"danger",message:u.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:w,class:e.normalizeClass(["ff-array-field",{[`ff-array-field-${y.value??"default"}`]:!0,"ff-array-field-sticky-tabs":t.stickyTabs}]),"data-appearance":y.value,"data-testid":`ff-array-${u.path.value}`},[e.createElementVNode("header",{class:"ff-array-field-header","data-testid":`ff-array-header-${u.path.value}`},[e.createVNode(T,e.mergeProps({class:"ff-array-field-label"},e.unref(f),{"data-testid":`ff-label-${u.path.value}`,"tooltip-attributes":e.unref(f).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(f).label)+" ",1)]),_:2},[(L=e.unref(f).labelAttributes)!=null&&L.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(S.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(f).labelAttributes.info},null,8,Uy)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),t.appearance==="tabs"?(e.openBlock(),e.createBlock(D,{key:0,appearance:"tertiary","aria-label":e.unref(i)("actions.add_entity",{entity:p.value}),"data-testid":`ff-add-item-btn-${u.path.value}`,icon:"",onClick:k},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon))]),_:1},8,["aria-label","data-testid"])):e.createCommentVNode("",!0)],8,vy),y.value!=="tabs"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createElementVNode("div",{class:"ff-array-field-container","data-testid":`ff-array-basic-container-${u.path.value}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,(V,R)=>(e.openBlock(),e.createBlock(e.unref(C),{key:e.unref(g)(V,R),class:e.normalizeClass(["ff-array-field-item",{"ff-array-field-item-card":y.value==="card"}]),"data-index":R,"data-testid":`ff-array-item-${u.path.value}.${R}`},{default:e.withCtx(()=>[e.createElementVNode("div",Gy,[S.$slots.item?e.renderSlot(S.$slots,"item",{key:0,autofocus:!0,fieldName:String(R),index:R},void 0,!0):d.value.type==="array"&&d.value.elements.type==="string"?(e.openBlock(),e.createBlock(Xo,{key:1,autofocus:"",help:e.unref(i)("plugins.free-form.tag_helper"),name:String(R)},null,8,["help","name"])):(e.openBlock(),e.createBlock(ft,{key:2,autofocus:"",name:String(R)},null,8,["name"]))]),e.createVNode(U,{class:"ff-array-field-item-remove-tooltip",text:e.unref(i)("actions.remove_entity",{entity:p.value})},{default:e.withCtx(()=>[e.createVNode(D,{appearance:"tertiary","aria-label":e.unref(i)("actions.remove_entity",{entity:p.value}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${u.path.value}.${R}`,icon:"",onClick:e.withModifiers(A=>_(R),["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(me.CloseIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["text"])]),_:2},1032,["class","data-index","data-testid"]))),128))],8,qy),e.createVNode(D,{appearance:"tertiary","aria-label":e.unref(i)("actions.add_entity",{entity:p.value}),class:"ff-array-field-add-item-btn","data-testid":`ff-add-item-btn-${u.path.value}`,onClick:k},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(i)("actions.add_entity",{entity:p.value})),1)]),_:1},8,["aria-label","data-testid"])],64)):m.value.length?(e.openBlock(),e.createBlock(e.unref(Oe.KCard),{key:1,"data-testid":`ff-array-tab-container-${u.path.value}`},{default:e.withCtx(()=>[e.createVNode(q,{modelValue:E.value,"onUpdate:modelValue":P[0]||(P[0]=V=>E.value=V),"data-testid":`ff-array-tabs-${u.path.value}`,tabs:h.value},e.createSlots({_:2},[e.renderList(m.value,(V,R)=>({name:e.unref(g)(V,R),fn:e.withCtx(()=>[e.createElementVNode("div",{class:"ff-array-field-item","data-index":R,"data-testid":`ff-array-item-${u.path.value}.${R}`},[S.$slots.item?e.renderSlot(S.$slots,"item",{key:0,autofocus:!0,fieldName:String(R),index:R},void 0,!0):(e.openBlock(),e.createBlock(ft,{key:1,autofocus:"",name:String(R)},null,8,["name"]))],8,zy)])})),e.renderList(m.value,(V,R)=>({name:`${e.unref(g)(V,R)}-anchor`,fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(b(V,R))+" ",1),e.createVNode(D,{appearance:"tertiary","aria-label":e.unref(i)("actions.remove_entity",{entity:p.value}),class:"ff-array-field-item-remove","data-testid":`ff-array-remove-item-btn-${u.path.value}.${R}`,icon:"",onClick:e.withModifiers(A=>_(R),["stop"])},{default:e.withCtx(()=>[e.createVNode(e.unref(me.TrashIcon))]),_:1},8,["aria-label","data-testid","onClick"])])}))]),1032,["modelValue","data-testid","tabs"])]),_:3},8,["data-testid"])):e.createCommentVNode("",!0)],10,Ky)),[[e.vShow,!e.unref(c)]])}}}),[["__scopeId","data-v-b3596aa0"]]),Hy={key:1,class:"ff-number-field-wrapper"},Wy=["innerHTML"],qt=_e(e.defineComponent({__name:"NumberField",props:{showVaultSecretPicker:{type:Boolean,default:()=>{}},labelAttributes:{},max:{},min:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},type:{},showPasswordMaskToggle:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.createPropsRestProxy(t,["autofocus","showVaultSecretPicker","name"]),{value:a,hide:i,...r}=pt(e.toRef(()=>t.name)),l=wt(r.path,o),{i18n:s}=De(),c=e.computed(()=>{var _;const h=(_=r.schema)==null?void 0:_.value;if(typeof h.gt=="number")return{min:h.type==="integer"?h.gt+1:h.gt};const[E,k]=h.between??[];return{min:o.min??E,max:o.max??k}}),u=n,f=a.value,d=e.computed(()=>{const h=a==null?void 0:a.value;if(h==null||h==="")return"";if(C.value)return`${h}`;const E=typeof h=="number"?h:Number(h);return Number.isFinite(E)?`${E}`:""});function p(h){const E=m(h);f!==void 0&&h===""&&E!==f?(a.value=null,u("update:modelValue",null)):(a.value=E,u("update:modelValue",E))}function m(h){if(h==="")return null;const E=h.trim();if(E==="")return null;const k=Number(E);return Number.isFinite(k)?k:C.value?h:null}const g=e.inject(Le.AUTOFILL_SLOT,void 0),y=e.computed(()=>({referenceable:C.value})),C=e.computed(()=>{var h;return t.showVaultSecretPicker!==void 0?t.showVaultSecretPicker:!!((h=r.schema.value)!=null&&h.referenceable)}),b=e.computed(()=>C.value?"text":"number");return(h,E)=>{var _;const k=e.resolveComponent("KAlert");return r.error?(e.openBlock(),e.createBlock(k,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",Hy,[e.createVNode(Tn,e.mergeProps({class:"ff-number-field"},{...e.unref(l),min:c.value.min,max:c.value.max},{"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${r.path.value}`,"model-value":d.value,type:b.value,"onUpdate:modelValue":p}),e.createSlots({_:2},[(_=e.unref(l).labelAttributes)!=null&&_.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(h.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,Wy)],!0)]),key:"0"}:void 0]),1040,["data-autofocus","data-testid","model-value","type"]),e.unref(g)&&C.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(g)),{key:0,schema:y.value,update:p,value:e.unref(a)??""},null,8,["schema","value"])):e.createCommentVNode("",!0),C.value&&!e.unref(g)?(e.openBlock(),e.createBlock(k,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${r.path.value}`,message:e.unref(s).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):e.createCommentVNode("",!0)],512)),[[e.vShow,!e.unref(i)]])}}}),[["__scopeId","data-v-b3a2f296"]]),Yy=["innerHTML"],Ct=_e(e.defineComponent({__name:"EnumField",props:e.mergeModels({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},autofocus:{type:Boolean},name:{}},{modelValue:{},modelModifiers:{}}),emits:e.mergeModels(["update"],["update:modelValue"]),setup(t,{emit:n}){const o=n,a=e.createPropsRestProxy(t,["name","items","multiple","autofocus"]),{getSelectItems:i}=We(),{value:r,hide:l,...s}=pt(e.toRef(()=>t.name)),c=e.useModel(t,"modelValue",{get:()=>d.value&&(r==null?void 0:r.value)==null?[]:r.value,set:m=>{r.value=m}}),u=wt(s.path,a),f=e.computed(()=>t.items?t.items:s.path?i(s.path.value):[]),d=e.computed(()=>{var m;return t.multiple!==void 0?t.multiple:((m=s.schema.value)==null?void 0:m.type)==="set"}),p=e.computed(()=>d.value?Oe.KMultiselect:Oe.KSelect);return(m,g)=>{var C;const y=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(y,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createBlock(e.unref(p),e.mergeProps({key:1},{...a,...e.unref(u)},{modelValue:c.value,"onUpdate:modelValue":[g[0]||(g[0]=b=>c.value=b),g[1]||(g[1]=b=>o("update",b))],class:"ff-enum-field",clearable:!e.unref(u).required,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${s.path.value}`,items:f.value,"kpop-attributes":{"data-testid":`ff-enum-${s.path.value}-items`}}),e.createSlots({_:2},["tooltip"in m.$slots||(C=e.unref(u).labelAttributes)!=null&&C.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(m.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(u).labelAttributes.info},null,8,Yy)],!0)]),key:"0"}:void 0,m.$slots["item-label"]?{name:"item-template",fn:e.withCtx(({item:b})=>[e.renderSlot(m.$slots,"item-label",e.normalizeProps(e.guardReactiveProps(b)),void 0,!0)]),key:"1"}:void 0]),1040,["modelValue","clearable","data-autofocus","data-testid","items","kpop-attributes"])),[[e.vShow,!e.unref(l)]])}}}),[["__scopeId","data-v-6fce68d1"]]);function Zo(t,n,o=!0){const{value:a,emptyOrDefaultValue:i,...r}=pt(e.toRef(t,"name")),l=wt(r.path,e.toRef({...t,...e.useAttrs()})),s=e.ref(f(t.initialValue??e.toValue(a),t.keyOrder));function c(){return zo("ff-kv-field-")}function u(b,h,E){const k=E.indexOf(b),_=E.indexOf(h);return k===-1&&_===-1?0:k===-1?1:_===-1?-1:k-_}function f(b,h){if(!b)return[];const E=Object.entries(b).map(([k,_])=>({id:c(),key:k,value:_}));return h&&E.sort((k,_)=>u(k.key,_.key,h)),E}function d(){const b={id:c(),key:t.defaultKey||"",value:t.defaultValue||""};return s.value.push(b),b}function p(b){const h=s.value.findIndex(E=>E.id===b);h!==-1&&s.value.splice(h,1)}function m(){s.value=f(t.initialValue,t.keyOrder)}function g(b){s.value=f(b,t.keyOrder)}let y=a==null?void 0:a.value;e.watch(s,b=>{if(!o)return;const h=i==null?void 0:i.value,E=b.map(({key:x,value:O})=>[x,O]).filter(([x])=>x),k=E.length?Object.fromEntries(E):h,_=a.value,w=_??h;k===null&&_!==null&&typeof _=="object"&&Object.keys(_).length===0||Vt(k,w)||k!==void 0&&(a.value=k,y=k,n("change",k))},{deep:!0,immediate:!0}),e.watch(()=>a==null?void 0:a.value,b=>{Vt(b,y)||C(b)},{deep:!0});function C(b){if(!b){s.value=[];return}const h=new Map;s.value.forEach(w=>{w.key&&h.set(w.key,w)});const E=[],k=Object.keys(b);(t.keyOrder?[...k].sort((w,x)=>u(w,x,t.keyOrder)):k).forEach(w=>{const x=b[w];if(h.has(w)){const O=h.get(w);O.value=x,E.push(O)}else E.push({id:c(),key:w,value:x})}),s.value=E}return{entries:s,addEntry:d,removeEntry:p,reset:m,setValue:g,labelAttrs:l,field:r}}const Jy=["data-testid"],Xy=["data-testid"],Zy=["innerHTML"],Qy={class:"ff-kv-field-entry-fields"},Qo=_e(e.defineComponent({__name:"KeyValueField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},appearance:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean,default:()=>{}},keyOrder:{},autofocus:{type:Boolean},name:{}},emits:["change"],setup(t,{expose:n,emit:o}){const a=e.createPropsRestProxy(t,["showVaultSecretPicker"]),{i18n:i}=De(),r=o,{entries:l,addEntry:s,removeEntry:c,reset:u,setValue:f,labelAttrs:d,field:p}=Zo(a,r),m=e.computed(()=>{if(!p.path)return"";const x=Pn(p.path.value);return as(x)}),g=e.computed(()=>{var x,O;return(O=(x=a.appearance)==null?void 0:x.string)!=null&&O.multiline?Oe.KCard:"div"}),y=e.useTemplateRef("root");async function C(x,O="key"){var K;y.value&&(await e.nextTick(),(K=y.value.querySelector(`[data-${O}-input="${x}"]`))==null||K.focus())}function b(){s();const x=l.value.findIndex(({key:O})=>!O);C(x===-1?l.value.length-1:x)}function h(x,O){var K,I;(I=(K=a.appearance)==null?void 0:K.string)!=null&&I.multiline||(x.preventDefault(),O===l.value.length-1&&s(),C(O+1))}const E=e.inject(Le.AUTOFILL_SLOT,void 0),k=e.computed(()=>{var x,O;return t.showVaultSecretPicker??!!((O=(x=p.schema.value)==null?void 0:x.values)!=null&&O.referenceable)}),_=e.computed(()=>({referenceable:k.value}));function w(x,O){l.value[x].value=O}return n({reset:u,setValue:f}),(x,O)=>{var F;const K=e.resolveComponent("KAlert"),I=e.resolveComponent("KLabel"),S=e.resolveComponent("KButton"),P=e.resolveComponent("KTooltip");return e.unref(p).error?(e.openBlock(),e.createBlock(K,{key:0,appearance:"danger",message:e.unref(p).error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:y,class:"ff-kv-field","data-testid":`ff-kv-${e.unref(p).path.value}`},[e.createElementVNode("header",{class:"ff-kv-field-header","data-testid":`ff-kv-header-${e.unref(p).path.value}`},[e.createVNode(I,e.mergeProps({class:"ff-kv-field-label"},e.unref(d),{"data-testid":`ff-label-${e.unref(p).path.value}`,"tooltip-attributes":e.unref(d).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(d).label)+" ",1)]),_:2},[(F=e.unref(d).labelAttributes)!=null&&F.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(x.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(d).labelAttributes.info},null,8,Zy)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"])],8,Xy),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),(T,D)=>{var U,q;return e.openBlock(),e.createBlock(e.resolveDynamicComponent(g.value),{key:T.id,class:e.normalizeClass(["ff-kv-field-entry",{"ff-kv-field-entry--multiline":(q=(U=a.appearance)==null?void 0:U.string)==null?void 0:q.multiline}]),"data-testid":`ff-kv-container-${e.unref(p).path.value}.${D}`},{default:e.withCtx(()=>{var L,V;return[e.createElementVNode("div",Qy,[e.createVNode(Tn,{modelValue:T.key,"onUpdate:modelValue":R=>T.key=R,modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":D,"data-testid":`ff-key-${e.unref(p).path.value}.${D}`,placeholder:t.keyPlaceholder||"Key",onKeydown:e.withKeys(e.withModifiers(R=>C(D,"value"),["prevent"]),["enter"])},null,8,["modelValue","onUpdate:modelValue","data-key-input","data-testid","placeholder","onKeydown"]),e.createVNode(Tn,{modelValue:T.value,"onUpdate:modelValue":R=>T.value=R,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${e.unref(p).path.value}.${D}`,"data-value-input":D,multiline:(V=(L=a.appearance)==null?void 0:L.string)==null?void 0:V.multiline,placeholder:t.valuePlaceholder||"Value",onKeydown:e.withKeys(R=>h(R,D),["enter"])},{after:e.withCtx(()=>[e.unref(E)&&k.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(E)),{key:0,schema:_.value,update:R=>w(D,R),value:T.value},null,8,["schema","update","value"])):e.createCommentVNode("",!0),k.value&&!e.unref(E)?(e.openBlock(),e.createBlock(K,{key:1,appearance:"warning","data-testid":`ff-vault-secret-picker-warning-${e.unref(p).path.value}`,message:e.unref(i).t("plugins.free-form.vault_picker.component_error")},null,8,["data-testid","message"])):e.createCommentVNode("",!0)]),_:2},1032,["modelValue","onUpdate:modelValue","data-testid","data-value-input","multiline","placeholder","onKeydown"])]),e.createVNode(P,{class:"ff-kv-field-entry-remove",text:e.unref(i).t("actions.remove_entity",{entity:m.value})},{default:e.withCtx(()=>[e.createVNode(S,{appearance:"tertiary","aria-label":e.unref(i).t("actions.remove_entity",{entity:m.value}),"data-testid":`ff-kv-remove-btn-${e.unref(p).path.value}.${D}`,icon:"",onClick:R=>e.unref(c)(T.id)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.CloseIcon))]),_:1},8,["aria-label","data-testid","onClick"])]),_:2},1032,["text"])]}),_:2},1032,["class","data-testid"])}),128)),e.createVNode(S,{appearance:"tertiary","aria-label":e.unref(i).t("actions.add_entity",{entity:m.value}),class:"ff-kv-field-add-entry-btn","data-testid":`ff-kv-add-btn-${e.unref(p).path.value}`,onClick:b},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(i).t("actions.add_entity",{entity:m.value})),1)]),_:1},8,["aria-label","data-testid"])],8,Jy)),[[e.vShow,!e.unref(p).hide.value]])}}}),[["__scopeId","data-v-5cf3b0bd"]]),e_=["data-testid"],t_=["innerHTML"],n_=_e(e.defineComponent({inheritAttrs:!1,__name:"JsonField",props:{labelAttributes:{},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.useAttrs(),a=e.createPropsRestProxy(t,["autofocus","name"]),i=n,{value:r,hide:l,...s}=pt(e.toRef(()=>t.name)),c=wt(s.path,e.toRef({...a,...o})),u=e.ref("");function f(p){u.value=p;let m=p||null;try{const g=JSON.parse(p);g&&typeof g=="object"&&(m=g)}catch{}r.value=m,i("update:modelValue",m)}const d=e.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Pn(t.name)==="name");return e.watch(r,p=>{if(p&&typeof p=="object"){try{const m=JSON.parse(u.value);Vt(m,p)||(u.value=JSON.stringify(p,null,2))}catch{u.value=JSON.stringify(p,null,2)}return}u.value=p||""},{immediate:!0}),(p,m)=>{var y;const g=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(g,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,"data-testid":`ff-json-${s.path.value}`},[e.createVNode(Tn,e.mergeProps(e.unref(c),{class:"ff-json-field","data-1p-ignore":d.value,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${s.path.value}`,"model-value":u.value??"",multiline:"","onUpdate:modelValue":f}),e.createSlots({_:2},[(y=e.unref(c).labelAttributes)!=null&&y.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(p.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(c).labelAttributes.info},null,8,t_)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","model-value"])],8,e_)),[[e.vShow,!e.unref(l)]])}}}),[["__scopeId","data-v-6f302da9"]]),o_=["innerHTML"],r_=_e(e.defineComponent({inheritAttrs:!1,__name:"ForeignField",props:{labelAttributes:{},type:{},modelValue:{},label:{},help:{},error:{type:Boolean},errorMessage:{},characterLimit:{},hasError:{type:Boolean},showPasswordMaskToggle:{type:Boolean},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=e.useAttrs(),{i18n:{t:a}}=De(),i=e.createPropsRestProxy(t,["autofocus","name"]),r=n,{value:l,hide:s,...c}=pt(e.toRef(()=>t.name));if(c.error)throw new Error(c.error.message);const u=wt(c.path,e.toRef({...i,...o})),f=l.value?l.value.id:null,d=e.computed(()=>{var y;return u.value.placeholder?u.value.placeholder:a("plugins.free-form.foreign_placeholder",{entity:((y=c.schema.value)==null?void 0:y.reference)??"entity"})}),p=e.ref(f??"");function m(y){f!==void 0&&y===""&&y!==f?(l.value=null,r("update:modelValue",null)):(l.value={id:y.trim()},r("update:modelValue",l.value))}const g=e.computed(()=>o["data-1p-ignore"]!==void 0?o["data-1p-ignore"]:Pn(t.name)==="name");return(y,C)=>{var b;return e.withDirectives((e.openBlock(),e.createBlock(Tn,e.mergeProps(e.unref(u),{class:"ff-foreign-field","data-1p-ignore":g.value,"data-autofocus":t.autofocus?"true":void 0,"data-testid":`ff-${c.path.value}`,error:t.error,"error-message":t.errorMessage,help:t.help,"model-value":p.value,placeholder:d.value,"onUpdate:modelValue":m}),e.createSlots({_:2},[(b=e.unref(u).labelAttributes)!=null&&b.info?{name:"label-tooltip",fn:e.withCtx(()=>[e.renderSlot(y.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(u).labelAttributes.info},null,8,o_)],!0)]),key:"0"}:void 0]),1040,["data-1p-ignore","data-autofocus","data-testid","error","error-message","help","model-value","placeholder"])),[[e.vShow,!e.unref(s)]])}}}),[["__scopeId","data-v-ada732c8"]]),ft=e.defineComponent({name:"AutoField",__name:"Field",props:{autofocus:{type:Boolean},name:{}},emits:["globalAction"],setup(t){const n=t,o=pt(e.toRef(n,"name")),a=e.computed(()=>{var i,r;switch((r=(i=o.schema)==null?void 0:i.value)==null?void 0:r.type){case"string":return"one_of"in o.schema.value?Ct:Ze;case"boolean":return"one_of"in o.schema.value?Ct:Qt;case"number":case"integer":return"one_of"in o.schema.value?Ct:qt;case"array":return en;case"set":return Ny(o.schema)?Xo:Ct;case"record":return Et;case"map":return Qo;case"json":return n_;case"foreign":return r_;default:return}});return(i,r)=>{const l=e.resolveComponent("KAlert");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(i.$slots[e.unref(Mn)]))),e.unref(o).error?(e.openBlock(),e.createBlock(l,{key:0,appearance:"danger",message:e.unref(o).error.message},null,8,["message"])):e.unref(o).renderer.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(o).renderer.value),{key:1,autofocus:n.autofocus,name:ia(e.unref(o).path.value),onGlobalAction:r[0]||(r[0]=(s,c)=>i.$emit("globalAction",s,c))},null,40,["autofocus","name"])):(e.openBlock(),e.createElementBlock(e.Fragment,{key:2},[a.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),{key:0,autofocus:n.autofocus,name:ia(e.unref(o).path.value)},null,8,["autofocus","name"])):(e.openBlock(),e.createBlock(l,{key:1,appearance:"warning",message:`${e.unref(o).path.value} ${e.unref(o).schema.value.type} (no renderer yet)`},null,8,["message"])),e.renderSlot(i.$slots,"default")],64))],64)}}}),a_={class:"ff-entity-checks-list"},ls=_e(e.defineComponent({__name:"EntityChecksAlert",props:{entityChecks:{},omittedFields:{}},setup(t){const{i18n:{t:n}}=je.useI18n(),o=e.computed(()=>{if(!Array.isArray(t.entityChecks)||t.entityChecks.length===0)return null;const r=[],l=[{key:"at_least_one_of",i18nKey:"plugins.form.field_rules.at_least_one_of"},{key:"mutually_required",i18nKey:"plugins.form.field_rules.mutually_required"},{key:"mutually_exclusive",i18nKey:"plugins.form.field_rules.mutually_exclusive"}];for(const s of t.entityChecks)for(const{key:c,i18nKey:u}of l)if(c in s){const f=s[c];Array.isArray(f)&&f.length>0&&i(f)&&r.push(n(u,{parameters:a(f)}));break}return r.length?r:null});function a(r){return r.map(is).join(", ")}function i(r){return Array.isArray(t.omittedFields)&&t.omittedFields.length>0?r.filter(s=>!t.omittedFields.includes(s)).length>0:!0}return(r,l)=>{const s=e.resolveComponent("KAlert");return o.value?(e.openBlock(),e.createBlock(s,{key:0,"data-testid":"ff-entity-checks-alert"},{default:e.withCtx(()=>[e.createElementVNode("ul",a_,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,c=>(e.openBlock(),e.createElementBlock("li",{key:c,"data-testid":"ff-entity-check-item"},e.toDisplayString(c),1))),128))])]),_:1})):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-62969b2f"]]),i_=["data-testid"],l_=["data-testid"],s_=["data-testid"],c_={class:"ff-object-field-header-toggle"},d_=["aria-controls","aria-expanded","aria-label","data-testid","disabled"],u_=["innerHTML"],p_=["data-testid"],f_={key:0,class:"indent-guide"},Et=_e(e.defineComponent({inheritAttrs:!1,__name:"ObjectField",props:e.mergeModels({name:{},label:{},labelAttributes:{},required:{type:Boolean,default:()=>{}},defaultAdded:{type:Boolean,default:!0},collapsible:{type:Boolean,default:!0},appearance:{},omit:{},asChild:{type:Boolean,default:()=>{}},resetLabelPath:{default:"reset"},fieldsOrder:{},renderRules:{}},{added:{type:Boolean,default:void 0},addedModifiers:{},expanded:{type:Boolean,default:void 0},expandedModifiers:{}}),emits:["update:added","update:expanded"],setup(t){const n=e.useId(),o=e.createPropsRestProxy(t,["defaultAdded","collapsible","omit","required","asChild","resetLabelPath","fieldsOrder"]),{value:a,hide:i,...r}=pt(e.toRef(o,"name")),{getSchema:l,getDefault:s,useCurrentRenderRules:c}=We(),u=c({fieldPath:r.path,rules:e.toRef(o,"renderRules"),omittedFields:e.toRef(()=>t.omit),parentValue:a}),f=e.useModel(t,"added"),d=e.useModel(t,"expanded"),p=e.computed(()=>{var E,k;if((E=r.ancestors)!=null&&E.value){const _=r.ancestors.value.parent;if(_!=null&&_.path)return((k=l(_.path))==null?void 0:k.type)==="array"}return!1}),m=wt(r.path,{required:t.required,...o,resetLabelPath:t.resetLabelPath}),g=e.computed(()=>m.value.required?!0:f.value??t.defaultAdded),y=e.computed(()=>t.asChild!==void 0?t.asChild:p.value),C=e.computed(()=>{var k;let E=r.schema.value.fields;return t.omit&&(E=E.filter(_=>!t.omit.includes(Object.keys(_)[0]))),t.fieldsOrder?Jl(E,t.fieldsOrder):((k=u.value)!=null&&k.bundles&&(E=Xl([...E],u.value.bundles)),E)});function b(){d.value=!d.value}function h(){f.value?a.value=s(r.path.value):a.value=null}return e.watch(g,E=>{t.collapsible&&(d.value=E)}),e.onBeforeMount(()=>{if(r.error||!a)return;const E=a.value!=null;f.value=E,(m.value.required||E)&&(d.value=!0)}),(E,k)=>{var x;const _=e.resolveComponent("KAlert"),w=e.resolveComponent("KInputSwitch");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(E.$slots[e.unref(Mn)]))),r.error?(e.openBlock(),e.createBlock(_,{key:0,appearance:"danger",message:r.error.message},null,8,["message"])):y.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({key:1,class:"ff-object-field ff-object-field-as-child"},E.$attrs,{"data-testid":`ff-object-${r.path.value}`}),[e.renderSlot(E.$slots,"default",{},()=>{var O;return[e.createVNode(ls,{"entity-checks":(O=r.schema.value)==null?void 0:O.entity_checks,"omitted-fields":t.omit},null,8,["entity-checks","omitted-fields"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,K=>(e.openBlock(),e.createBlock(ft,{key:Object.keys(K)[0],name:Object.keys(K)[0]},null,8,["name"]))),128))]},!0)],16,i_)),[[e.vShow,!e.unref(i)]]):e.withDirectives((e.openBlock(),e.createElementBlock("div",e.mergeProps({key:2,class:["ff-object-field",{"ff-object-field-collapsed":!d.value}],"data-testid":`ff-object-${r.path.value}`},E.$attrs),[e.createElementVNode("header",{class:"ff-object-field-header","data-testid":`ff-object-header-${r.path.value}`},[e.createElementVNode("div",c_,[e.createElementVNode("button",{"aria-controls":e.unref(n),"aria-expanded":d.value,"aria-label":e.unref(m).label,class:"ff-object-field-toggle-btn","data-testid":`ff-object-toggle-btn-${r.path.value}`,disabled:!f.value,type:"button",onClick:e.withModifiers(b,["prevent","stop"])},[e.createVNode(e.unref(me.ChevronRightIcon),{class:e.normalizeClass(["ff-object-field-toggle-btn-trigger-icon",{"collapse-expanded":d.value}]),"data-testid":`ff-object-toggle-trigger-icon-${r.path.value}`,decorative:"",size:e.unref(uo)},null,8,["class","data-testid","size"])],8,d_),e.createVNode(e.unref(Oe.KLabel),e.mergeProps({class:"ff-object-field-label","data-testid":`ff-label-${r.path.value}`},{...e.unref(m),required:!1},{"tooltip-attributes":e.unref(m).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(m).label)+" ",1)]),_:2},[(x=e.unref(m).labelAttributes)!=null&&x.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(E.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(m).labelAttributes.info},null,8,u_)],!0)]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"])]),e.unref(m).required?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(w,{key:0,modelValue:f.value,"onUpdate:modelValue":[k[0]||(k[0]=O=>f.value=O),h],"data-testid":`ff-object-switch-${r.path.value}`},null,8,["modelValue","data-testid"]))],8,s_),e.createVNode(Wl,null,{default:e.withCtx(()=>[d.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"ff-object-field-content","data-testid":`ff-object-content-${r.path.value}`},[e.renderSlot(E.$slots,"default",{},()=>{var O;return[e.createVNode(ls,{"entity-checks":(O=r.schema.value)==null?void 0:O.entity_checks,"omitted-fields":t.omit},null,8,["entity-checks","omitted-fields"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(C.value,K=>(e.openBlock(),e.createBlock(ft,{key:Object.keys(K)[0],name:Object.keys(K)[0]},null,8,["name"]))),128))]},!0)],8,p_)):e.createCommentVNode("",!0)]),_:3}),d.value?(e.openBlock(),e.createElementBlock("div",f_)):e.createCommentVNode("",!0)],16,l_)),[[e.vShow,!e.unref(i)]])],64)}}}),[["__scopeId","data-v-133322a4"]]),m_={class:"ff-advanced-fields"},ss=_e(e.defineComponent({__name:"AdvancedFields",props:{hideGeneralFields:{type:Boolean}},setup(t){const{t:n}=it.createI18n("en-us",ct),{getSchema:o}=We(),a=e.ref(!0);return(i,r)=>(e.openBlock(),e.createBlock(e.unref(Oe.KCollapse),{modelValue:a.value,"onUpdate:modelValue":r[0]||(r[0]=l=>a.value=l),"data-testid":"view-advanced","trigger-label":a.value?e.unref(n)("plugins.form.grouping.advanced_parameters.view"):e.unref(n)("plugins.form.grouping.advanced_parameters.hide")},{default:e.withCtx(()=>[e.createElementVNode("div",m_,[t.hideGeneralFields?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.unref(o)("instance_name")?(e.openBlock(),e.createBlock(ft,{key:0,name:"instance_name"})):e.createCommentVNode("",!0),e.unref(o)("protocols")?(e.openBlock(),e.createBlock(ft,{key:1,name:"protocols"})):e.createCommentVNode("",!0),e.unref(o)("tags")?(e.openBlock(),e.createBlock(Xo,{key:2,help:"e.g. tag1, tag2, tag3",name:"tags",placeholder:e.unref(n)("plugins.form.fields.tags.placeholder")},null,8,["placeholder"])):e.createCommentVNode("",!0),e.unref(o)("condition")?(e.openBlock(),e.createBlock(Ze,{key:3,name:"condition",placeholder:e.unref(n)("plugins.form.fields.condition.placeholder")},null,8,["placeholder"])):e.createCommentVNode("",!0)],64)),e.renderSlot(i.$slots,"default",{},void 0,!0)])]),_:3},8,["modelValue","trigger-label"]))}}),[["__scopeId","data-v-baa317ec"]]),jn=_e(e.defineComponent({__name:"ConfigForm",setup(t){const{getSchema:n,createComputedRenderRules:o}=We(),a=o("config"),i=e.computed(()=>{var C;const l=[],s=[],c=new Set,f=n().fields.find(b=>Object.keys(b)[0]==="config");if(!f||!("config"in f))return{defaultVisible:l,advanced:s};const d=f.config;d.entity_checks&&d.entity_checks.forEach(b=>{var E,k;let h;"at_least_one_of"in b?h=b.at_least_one_of:"conditional"in b&&((E=n(et("config",b.conditional.if_field)))!=null&&E.required)&&b.conditional.then_match.required?h=[b.conditional.if_field,b.conditional.then_field]:"conditional_at_least_one_of"in b&&((k=n(et("config",b.conditional_at_least_one_of.if_field)))!=null&&k.required)&&(h=[b.conditional_at_least_one_of.if_field,...b.conditional_at_least_one_of.then_at_least_one_of]),h==null||h.forEach(_=>c.add(_))});const p=((C=a.value)==null?void 0:C.bundles)??[],m=new Map;for(const b of p)for(let h=1;h<b.length;h++)m.set(b[h],b[h-1]);const g=b=>{const h=m.get(b);return h?g(h):b},y=new Map;for(const b of d.fields){const h=Object.keys(b)[0];y.set(h,g(h))}for(const b of d.fields){const h=Object.keys(b)[0];if(y.get(h)!==h)continue;let k;b[h].required||c.has(h)?k=l:k=s,k.push(h)}for(const b of d.fields){const h=Object.keys(b)[0],E=y.get(h);E!==h&&(l.includes(E)?l:s).push(h)}return{defaultVisible:l,advanced:s}}),r=e.computed(()=>i.value.defaultVisible.length===0);return(l,s)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Et,{"as-child":"",class:"ff-default-visible-fields",name:"config",omit:r.value?[]:i.value.advanced,"reset-label-path":"reset"},null,8,["omit"]),r.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(ss,{key:0,class:"ff-advanced-fields-container","data-testid":"ff-advanced-fields-container","hide-general-fields":""},{default:e.withCtx(()=>[e.createVNode(Et,{"as-child":"",name:"config",omit:i.value.defaultVisible,"reset-label-path":"reset"},null,8,["omit"])]),_:1}))],64))}}),[["__scopeId","data-v-81eebb6d"]]),mt=e.defineComponent({name:"SchemaForm",__name:"Form",props:{tag:{default:"form"},schema:{},data:{},config:{},fieldsOrder:{},renderRules:{}},emits:["change","globalAction"],setup(t,{expose:n,emit:o}){const a=o,i=e.useSlots(),{getSchema:r,formData:l,setValue:s,getValue:c,rootRenderRules:u}=Ty({schema:t.schema,propsData:e.computed(()=>t.data),propsConfig:t.config,propsRenderRules:e.toRef(()=>t.renderRules),onChange:d=>a("change",d)}),f=e.computed(()=>{var m;const{fields:d}=r();let p=[...d];return t.fieldsOrder?Jl(p,t.fieldsOrder):((m=u.value)!=null&&m.bundles&&(p=Xl([...p],u.value.bundles)),p)});return n({getValue:c,getRawValue:()=>e.toRaw(l),setValue:s}),(d,p)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(t.tag),null,{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(i)[e.unref(Mn)]))),e.renderSlot(d.$slots,"default",{},()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,m=>(e.openBlock(),e.createBlock(ft,{key:Object.keys(m)[0],name:Object.keys(m)[0],onGlobalAction:p[0]||(p[0]=(g,y)=>a("globalAction",g,y))},null,8,["name"]))),128))])]),_:3}))}}),g_=["data-testid"],h_=_e(e.defineComponent({__name:"SwitchField",props:{labelAttributes:{},enabledText:{},disabledText:{},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const{i18n:{t:o}}=je.useI18n(),a=e.createPropsRestProxy(t,["name","enabledText","disabledText"]),{value:i,hide:r,emptyOrDefaultValue:l,...s}=pt(e.toRef(()=>t.name)),c=n,u=d=>{i.value=d,c("update:modelValue",d)},f=wt(s.path,a);return(d,p)=>{const m=e.resolveComponent("KAlert");return s.error?(e.openBlock(),e.createBlock(m,{key:0,appearance:"danger",message:s.error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",{key:1,class:"ff-switch-field","data-testid":`ff-${s.path.value}`},[e.createVNode(e.unref(Oe.KInputSwitch),e.mergeProps(e.unref(f),{"model-value":!!(e.unref(i)==null?e.unref(l):e.unref(i)),"onUpdate:modelValue":u}),{label:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)?t.enabledText||e.unref(o)("actions.enabled"):t.disabledText||e.unref(o)("actions.disabled")),1)]),_:1},16,["model-value"])],8,g_)),[[e.vShow,!e.unref(r)]])}}}),[["__scopeId","data-v-91cf1d27"]]),y_=["data-testid"],__={key:1,class:"ff-scope-entity-help"},b_=_e(e.defineComponent({__name:"ScopeEntityField",props:{entity:{},fields:{default:()=>["name","id"]},labelField:{default:"name"},label:{},placeholder:{},help:{},disabled:{type:Boolean},autofocus:{type:Boolean},name:{}},setup(t){const n=e.createPropsRestProxy(t,["name","entity","fields","labelField","disabled","placeholder","help"]),{i18n:{t:o}}=je.useI18n(),{value:a,hide:i,...r}=pt(e.toRef(()=>t.name));if(r.error)throw new Error(r.error.message);const l=wt(r.path,n),s=e.inject(Le.FORMS_API_KEY),c=e.computed(()=>t.fields.filter(y=>y!=="id")),u=e.computed(()=>t.fields.includes("id")),f=e.ref(!1),d=e.ref(),p=e.ref(),m=e.computed(()=>{var y,C;return(((y=a==null?void 0:a.value)==null?void 0:y.id)??"")===(((C=p.value)==null?void 0:C.value)??"")});e.onMounted(async()=>{var C;const y=(C=a==null?void 0:a.value)==null?void 0:C.id;if(!(!y||!s)){f.value=!0;try{const b=await s.getOne(t.entity,y,{validateStatus:k=>k>=200&&k<300||k===404});if(b.status===404)throw new Error(`Entity of type ${t.entity} with id ${y} not found`);const h=b.data,E={...h,label:h[t.labelField]??h.id,value:h.id};p.value=E,d.value=E}catch(b){console.error("Failed to load selected entity:",b),a.value=null}finally{f.value=!1}}});function g(y){y?(a.value={id:y.value},d.value=y):(a.value=null,d.value=void 0)}return(y,C)=>{var b;return e.withDirectives((e.openBlock(),e.createElementBlock("div",{class:"ff-scope-entity-field","data-testid":`ff-${r.path.value}`},[e.unref(l).label?(e.openBlock(),e.createBlock(e.unref(Oe.KLabel),e.normalizeProps(e.mergeProps({key:0},e.unref(l).labelAttributes)),{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l).label),1)]),_:1},16)):e.createCommentVNode("",!0),e.createVNode(e.unref(Le.FieldScopedEntitySelect),{id:((b=e.unref(a))==null?void 0:b.id)??"","allow-uuid-search":u.value,disabled:f.value,"dom-id":t.name,entity:t.entity,"field-disabled":t.disabled,fields:c.value,"initial-item-selected":m.value,"label-field":t.labelField,placeholder:f.value?e.unref(o)("actions.loading_spinner"):t.placeholder||e.unref(l).placeholder,"selected-item":d.value,"selected-item-loading":f.value,onChange:g},null,8,["id","allow-uuid-search","disabled","dom-id","entity","field-disabled","fields","initial-item-selected","label-field","placeholder","selected-item","selected-item-loading"]),t.help?(e.openBlock(),e.createElementBlock("p",__,e.toDisplayString(t.help),1)):e.createCommentVNode("",!0)],8,y_)),[[e.vShow,!e.unref(i)]])}}}),[["__scopeId","data-v-ddab4a96"]]),Gt=e.defineComponent({__name:"FieldRenderer",props:{match:{type:Function},priority:{}},setup(t){const n=t,{default:o}=e.useSlots(),{fieldRendererRegistry:a}=We();return o&&a.set(n.match,o),(i,r)=>null}}),er=Symbol("redis-partial-info"),k_={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"}},w_={class:"partial-config-card"},C_={class:"config-card-row-label"},E_={class:"label-text"},N_=["data-testid"],x_=["data-testid"],S_={key:1},A_=["data-testid"],I_=["data-testid"],P_=_e(e.defineComponent({__name:"RedisConfigCard",props:{configFields:{},pluginRedisFields:{}},setup(t){const{t:n,formatUnixTimeStamp:o}=it.createI18n("en-us",ct),a={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=t,r=d=>d!=null,l=(d,p)=>r(p)&&["password","sentinel_password"].includes(d)?"password":"text",{convertKeyToTitle:s}=le.useStringHelpers(),c=e.computed(()=>Object.entries(i.configFields).map(([d,p])=>{var m,g,y,C;return{key:d,label:((m=a[d])==null?void 0:m.label)??s(d),value:(g=a[d])!=null&&g.formatter?a[d].formatter(p):p,type:((y=a[d])==null?void 0:y.type)??l(d,p),order:((C=a[d])==null?void 0:C.order)??100}}).sort((d,p)=>d.order-p.order).filter(d=>d.type!=="hidden")),u=Ey(i.configFields,i.pluginRedisFields||[]),f=e.computed(()=>c.value.concat(u));return(d,p)=>{const m=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",w_,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.value,({key:g,label:y,value:C,type:b})=>(e.openBlock(),e.createElementBlock("div",{key:g,class:"partial-config-card-row"},[e.createElementVNode("div",C_,[e.createElementVNode("div",E_,e.toDisplayString(y),1)]),e.createElementVNode("div",{class:"config-card-row-value","data-testid":`${g}-property-value`},[r(C)?(e.openBlock(),e.createElementBlock("div",S_,[b==="password"?(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${g}-copy-password`},[e.createVNode(m,{format:"redacted",text:String(C)},null,8,["text"])],8,A_)):(e.openBlock(),e.createElementBlock("div",{key:1,"data-testid":`${g}-plain-text`},e.toDisplayString(C),9,I_))])):(e.openBlock(),e.createElementBlock("div",{key:0,"data-testid":`${g}-no-value`}," – ",8,x_))],8,N_)]))),128))])}}}),[["__scopeId","data-v-517ab497"]]);function ua(){const t=(...o)=>{console.warn("TOASTER_PROVIDER is not provided",...o)},n=e.inject(Rl,t);return o=>n(o)}const T_={class:"redis-config-radio-group","data-testid":"redis-config-radio-group"},O_={class:"shared-redis-config"},V_={class:"shared-redis-config-title"},B_={class:"redis-config-select","data-testid":"redis-config-select"},R_={key:1,class:"redis-shared-config-error-message","data-testid":"redis-config-fetch-error"},cs=_e(e.defineComponent({__name:"RedisSelector",props:{defaultRedisConfigItem:{},redisType:{},redisPath:{}},setup(t){var I;const{t:n}=it.createI18n("en-us",ct),o=["host","port","database","username","password","sentinel_master","sentinel_role","sentinel_nodes","sentinel_username","sentinel_password","cluster_nodes","cluster_max_redirections","ssl","ssl_verify","server_name","keepalive_backlog","keepalive_pool_size","timeout","read_timeout","send_timeout","connect_timeout","connection_is_proxied","redis_proxy_type","cloud_authentication"],a={dependencies:{"cloud_authentication.aws_cache_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_region":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_is_serverless":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_access_key_id":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_secret_access_key":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_assume_role_arn":["cloud_authentication.auth_provider","aws"],"cloud_authentication.aws_role_session_name":["cloud_authentication.auth_provider","aws"],"cloud_authentication.gcp_service_account_json":["cloud_authentication.auth_provider","gcp"],"cloud_authentication.azure_client_id":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_client_secret":["cloud_authentication.auth_provider","azure"],"cloud_authentication.azure_tenant_id":["cloud_authentication.auth_provider","azure"]}},i=t,r=ua(),l=e.inject(er),s=(l==null?void 0:l.isEditing)||!1,c=e.computed(()=>{var S;return i.redisPath?i.redisPath:(S=l==null?void 0:l.redisPath)!=null&&S.value?"$."+l.redisPath.value:"$.config.redis"}),u=i.redisType||((I=l==null?void 0:l.redisType)==null?void 0:I.value),f=e.computed(()=>{var S;return!!((S=l==null?void 0:l.redisType)!=null&&S.value)}),d=e.ref(null),p=e.ref(!s),{getMessageFromError:m}=le.useErrors(),g=e.ref(i.defaultRedisConfigItem),y=e.ref({}),C=e.ref(),{value:b}=ns("$.partials"),{value:h,hide:E}=pt(c),k=e.inject(Le.FORMS_CONFIG),_=e.ref(null),w=S=>{let P=`${k.apiBaseUrl}${k_[k.app].getOne}`;return k.app==="konnect"?P=P.replace(/{controlPlaneId}/gi,(k==null?void 0:k.controlPlaneId)||""):k.app==="kongManager"&&(P=P.replace(/\/{workspace}/gi,k!=null&&k.workspace?`/${k.workspace}`:"")),P=P.replace(/{id}/gi,String(S)),P},{axiosInstance:x}=le.useAxios(k==null?void 0:k.axiosRequestConfig),O=()=>{p.value?(C.value&&(b.value=C.value,g.value=C.value[0].id,h.value=void 0),h!=null&&h.value&&(y.value=h.value)):(Object.keys(y.value).length&&(h.value=y.value),b!=null&&b.value&&(C.value=b.value),b.value=s?null:void 0)},K=async S=>{if(S){g.value=S,b.value=[{id:S}],C.value=[{id:S}],h.value=void 0;try{const P=await x.get(w(S));if(P.data.config){const F=Object.assign(P.data,P.data.config);delete F.config,d.value=F}}catch(P){console.error(P)}}};return e.watch(()=>p.value,()=>{O()}),e.onBeforeMount(()=>{var S;if(i.defaultRedisConfigItem||b!=null&&b.value){const P=i.defaultRedisConfigItem||((S=b==null?void 0:b.value)==null?void 0:S[0].id);K(P),p.value=!0}else h!=null&&h.value&&(y.value=h.value)}),e.watch(()=>E==null?void 0:E.value,S=>{p.value&&(S&&b.value?b.value=s?null:void 0:S||C.value&&(b.value=C.value,K(C.value[0].id)))}),(S,P)=>{const F=e.resolveComponent("KRadio"),T=e.resolveComponent("KCard");return f.value?e.withDirectives((e.openBlock(),e.createBlock(T,{key:0,class:"redis-config-card","data-testid":"redis-config-card",title:e.unref(n)("redis.title")},{default:e.withCtx(()=>[e.createElementVNode("div",T_,[e.createVNode(F,{modelValue:p.value,"onUpdate:modelValue":P[0]||(P[0]=D=>p.value=D),card:"","card-orientation":"horizontal","data-testid":"shared-redis-config-radio",description:e.unref(n)("redis.shared_configuration.description"),label:e.unref(n)("redis.shared_configuration.label"),"selected-value":!0},null,8,["modelValue","description","label"]),e.createVNode(F,{modelValue:p.value,"onUpdate:modelValue":P[1]||(P[1]=D=>p.value=D),card:"","card-orientation":"horizontal","data-testid":"dedicated-redis-config-radio",description:e.unref(n)("redis.dedicated_configuration.description"),label:e.unref(n)("redis.dedicated_configuration.label"),"selected-value":!1},null,8,["modelValue","description","label"])]),e.withDirectives(e.createElementVNode("div",O_,[e.createElementVNode("div",V_,e.toDisplayString(e.unref(n)("redis.shared_configuration.title")),1),e.createElementVNode("div",B_,[e.createVNode(e.unref(ri.RedisConfigurationSelector),{"data-testid":"redis-config-select-trigger","model-value":g.value,"redis-type":e.unref(u),onErrorChange:P[2]||(P[2]=D=>_.value=D),onToast:e.unref(r),"onUpdate:modelValue":P[3]||(P[3]=D=>K(D))},null,8,["model-value","redis-type","onToast"])]),d.value?(e.openBlock(),e.createBlock(P_,{key:0,"config-fields":d.value},null,8,["config-fields"])):e.createCommentVNode("",!0),_.value?(e.openBlock(),e.createElementBlock("p",R_,e.toDisplayString(_.value?e.unref(m)(_.value):e.unref(n)("redis.shared_configuration.error")),1)):e.createCommentVNode("",!0)],512),[[e.vShow,p.value]]),p.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Et,e.mergeProps({key:0},i,{"as-child":"","fields-order":o,name:c.value,"render-rules":a,"reset-label-path":"reset"}),null,16,["name"]))]),_:1},8,["title"])),[[e.vShow,!e.unref(E)]]):e.withDirectives((e.openBlock(),e.createBlock(Et,e.mergeProps({key:1},i,{"fields-order":o,"hide-required-asterisk":"",name:c.value,"render-rules":a}),null,16,["name"])),[[e.vShow,!e.unref(E)]])}}}),[["__scopeId","data-v-8eef8281"]]);/*! js-yaml 4.1.1 https://github.com/nodeca/js-yaml @license MIT */function ds(t){return typeof t>"u"||t===null}function $_(t){return typeof t=="object"&&t!==null}function F_(t){return Array.isArray(t)?t:ds(t)?[]:[t]}function L_(t,n){var o,a,i,r;if(n)for(r=Object.keys(n),o=0,a=r.length;o<a;o+=1)i=r[o],t[i]=n[i];return t}function D_(t,n){var o="",a;for(a=0;a<n;a+=1)o+=t;return o}function M_(t){return t===0&&Number.NEGATIVE_INFINITY===1/t}var j_=ds,K_=$_,v_=F_,U_=D_,q_=M_,G_=L_,lt={isNothing:j_,isObject:K_,toArray:v_,repeat:U_,isNegativeZero:q_,extend:G_};function us(t,n){var o="",a=t.reason||"(unknown reason)";return t.mark?(t.mark.name&&(o+='in "'+t.mark.name+'" '),o+="("+(t.mark.line+1)+":"+(t.mark.column+1)+")",!n&&t.mark.snippet&&(o+=`
|
|
18
18
|
|
|
19
19
|
`+t.mark.snippet),a+" "+o):a}function fo(t,n){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=n,this.message=us(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}fo.prototype=Object.create(Error.prototype),fo.prototype.constructor=fo,fo.prototype.toString=function(n){return this.name+": "+us(this,n)};var bt=fo;function pa(t,n,o,a,i){var r="",l="",s=Math.floor(i/2)-1;return a-n>s&&(r=" ... ",n=a-s+r.length),o-a>s&&(l=" ...",o=a+s-l.length),{str:r+t.slice(n,o).replace(/\t/g,"→")+l,pos:a-n+r.length}}function fa(t,n){return lt.repeat(" ",n-t.length)+t}function z_(t,n){if(n=Object.create(n||null),!t.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,a=[0],i=[],r,l=-1;r=o.exec(t.buffer);)i.push(r.index),a.push(r.index+r[0].length),t.position<=r.index&&l<0&&(l=a.length-2);l<0&&(l=a.length-1);var s="",c,u,f=Math.min(t.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=pa(t.buffer,a[l-c],i[l-c],t.position-(a[l]-a[l-c]),d),s=lt.repeat(" ",n.indent)+fa((t.line-c+1).toString(),f)+" | "+u.str+`
|
|
20
20
|
`+s;for(u=pa(t.buffer,a[l],i[l],t.position,d),s+=lt.repeat(" ",n.indent)+fa((t.line+1).toString(),f)+" | "+u.str+`
|
|
21
21
|
`,s+=lt.repeat("-",n.indent+f+3+u.pos)+`^
|
|
22
22
|
`,c=1;c<=n.linesAfter&&!(l+c>=i.length);c++)u=pa(t.buffer,a[l+c],i[l+c],t.position-(a[l]-a[l+c]),d),s+=lt.repeat(" ",n.indent)+fa((t.line+c+1).toString(),f)+" | "+u.str+`
|
|
23
23
|
`;return s.replace(/\n$/,"")}var H_=z_,W_=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Y_=["scalar","sequence","mapping"];function J_(t){var n={};return t!==null&&Object.keys(t).forEach(function(o){t[o].forEach(function(a){n[String(a)]=o})}),n}function X_(t,n){if(n=n||{},Object.keys(n).forEach(function(o){if(W_.indexOf(o)===-1)throw new bt('Unknown option "'+o+'" is met in definition of "'+t+'" YAML type.')}),this.options=n,this.tag=t,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=J_(n.styleAliases||null),Y_.indexOf(this.kind)===-1)throw new bt('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}var gt=X_;function ps(t,n){var o=[];return t[n].forEach(function(a){var i=o.length;o.forEach(function(r,l){r.tag===a.tag&&r.kind===a.kind&&r.multi===a.multi&&(i=l)}),o[i]=a}),o}function Z_(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},n,o;function a(i){i.multi?(t.multi[i.kind].push(i),t.multi.fallback.push(i)):t[i.kind][i.tag]=t.fallback[i.tag]=i}for(n=0,o=arguments.length;n<o;n+=1)arguments[n].forEach(a);return t}function ma(t){return this.extend(t)}ma.prototype.extend=function(n){var o=[],a=[];if(n instanceof gt)a.push(n);else if(Array.isArray(n))a=a.concat(n);else if(n&&(Array.isArray(n.implicit)||Array.isArray(n.explicit)))n.implicit&&(o=o.concat(n.implicit)),n.explicit&&(a=a.concat(n.explicit));else throw new bt("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");o.forEach(function(r){if(!(r instanceof gt))throw new bt("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(r.loadKind&&r.loadKind!=="scalar")throw new bt("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(r.multi)throw new bt("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),a.forEach(function(r){if(!(r instanceof gt))throw new bt("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(ma.prototype);return i.implicit=(this.implicit||[]).concat(o),i.explicit=(this.explicit||[]).concat(a),i.compiledImplicit=ps(i,"implicit"),i.compiledExplicit=ps(i,"explicit"),i.compiledTypeMap=Z_(i.compiledImplicit,i.compiledExplicit),i};var fs=ma,ms=new gt("tag:yaml.org,2002:str",{kind:"scalar",construct:function(t){return t!==null?t:""}}),gs=new gt("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(t){return t!==null?t:[]}}),hs=new gt("tag:yaml.org,2002:map",{kind:"mapping",construct:function(t){return t!==null?t:{}}}),ys=new fs({explicit:[ms,gs,hs]});function Q_(t){if(t===null)return!0;var n=t.length;return n===1&&t==="~"||n===4&&(t==="null"||t==="Null"||t==="NULL")}function eb(){return null}function tb(t){return t===null}var _s=new gt("tag:yaml.org,2002:null",{kind:"scalar",resolve:Q_,construct:eb,predicate:tb,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function nb(t){if(t===null)return!1;var n=t.length;return n===4&&(t==="true"||t==="True"||t==="TRUE")||n===5&&(t==="false"||t==="False"||t==="FALSE")}function ob(t){return t==="true"||t==="True"||t==="TRUE"}function rb(t){return Object.prototype.toString.call(t)==="[object Boolean]"}var bs=new gt("tag:yaml.org,2002:bool",{kind:"scalar",resolve:nb,construct:ob,predicate:rb,represent:{lowercase:function(t){return t?"true":"false"},uppercase:function(t){return t?"TRUE":"FALSE"},camelcase:function(t){return t?"True":"False"}},defaultStyle:"lowercase"});function ab(t){return 48<=t&&t<=57||65<=t&&t<=70||97<=t&&t<=102}function ib(t){return 48<=t&&t<=55}function lb(t){return 48<=t&&t<=57}function sb(t){if(t===null)return!1;var n=t.length,o=0,a=!1,i;if(!n)return!1;if(i=t[o],(i==="-"||i==="+")&&(i=t[++o]),i==="0"){if(o+1===n)return!0;if(i=t[++o],i==="b"){for(o++;o<n;o++)if(i=t[o],i!=="_"){if(i!=="0"&&i!=="1")return!1;a=!0}return a&&i!=="_"}if(i==="x"){for(o++;o<n;o++)if(i=t[o],i!=="_"){if(!ab(t.charCodeAt(o)))return!1;a=!0}return a&&i!=="_"}if(i==="o"){for(o++;o<n;o++)if(i=t[o],i!=="_"){if(!ib(t.charCodeAt(o)))return!1;a=!0}return a&&i!=="_"}}if(i==="_")return!1;for(;o<n;o++)if(i=t[o],i!=="_"){if(!lb(t.charCodeAt(o)))return!1;a=!0}return!(!a||i==="_")}function cb(t){var n=t,o=1,a;if(n.indexOf("_")!==-1&&(n=n.replace(/_/g,"")),a=n[0],(a==="-"||a==="+")&&(a==="-"&&(o=-1),n=n.slice(1),a=n[0]),n==="0")return 0;if(a==="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 db(t){return Object.prototype.toString.call(t)==="[object Number]"&&t%1===0&&!lt.isNegativeZero(t)}var ks=new gt("tag:yaml.org,2002:int",{kind:"scalar",resolve:sb,construct:cb,predicate:db,represent:{binary:function(t){return t>=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),ub=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function pb(t){return!(t===null||!ub.test(t)||t[t.length-1]==="_")}function fb(t){var n,o;return n=t.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 mb=/^[-+]?[0-9]+e/;function gb(t,n){var o;if(isNaN(t))switch(n){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(n){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(n){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(lt.isNegativeZero(t))return"-0.0";return o=t.toString(10),mb.test(o)?o.replace("e",".e"):o}function hb(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||lt.isNegativeZero(t))}var ws=new gt("tag:yaml.org,2002:float",{kind:"scalar",resolve:pb,construct:fb,predicate:hb,represent:gb,defaultStyle:"lowercase"}),Cs=ys.extend({implicit:[_s,bs,ks,ws]}),Es=Cs,Ns=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),xs=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 yb(t){return t===null?!1:Ns.exec(t)!==null||xs.exec(t)!==null}function _b(t){var n,o,a,i,r,l,s,c=0,u=null,f,d,p;if(n=Ns.exec(t),n===null&&(n=xs.exec(t)),n===null)throw new Error("Date resolve error");if(o=+n[1],a=+n[2]-1,i=+n[3],!n[4])return new Date(Date.UTC(o,a,i));if(r=+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,a,i,r,l,s,c)),u&&p.setTime(p.getTime()-u),p}function bb(t){return t.toISOString()}var Ss=new gt("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:yb,construct:_b,instanceOf:Date,represent:bb});function kb(t){return t==="<<"||t===null}var As=new gt("tag:yaml.org,2002:merge",{kind:"scalar",resolve:kb}),ga=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
|
24
|
-
\r`;function wb(t){if(t===null)return!1;var n,o,a=0,i=t.length,r=ga;for(o=0;o<i;o++)if(n=r.indexOf(t.charAt(o)),!(n>64)){if(n<0)return!1;a+=6}return a%8===0}function Cb(t){var n,o,a=t.replace(/[\r\n=]/g,""),i=a.length,r=ga,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|r.indexOf(a.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 Eb(t){var n="",o=0,a,i,r=t.length,l=ga;for(a=0;a<r;a++)a%3===0&&a&&(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]),o=(o<<8)+t[a];return i=r%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 Nb(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var Is=new gt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:wb,construct:Cb,predicate:Nb,represent:Eb}),xb=Object.prototype.hasOwnProperty,Sb=Object.prototype.toString;function Ab(t){if(t===null)return!0;var n=[],o,a,i,r,l,s=t;for(o=0,a=s.length;o<a;o+=1){if(i=s[o],l=!1,Sb.call(i)!=="[object Object]")return!1;for(r in i)if(xb.call(i,r))if(!l)l=!0;else return!1;if(!l)return!1;if(n.indexOf(r)===-1)n.push(r);else return!1}return!0}function Ib(t){return t!==null?t:[]}var Ps=new gt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Ab,construct:Ib}),Pb=Object.prototype.toString;function Tb(t){if(t===null)return!0;var n,o,a,i,r,l=t;for(r=new Array(l.length),n=0,o=l.length;n<o;n+=1){if(a=l[n],Pb.call(a)!=="[object Object]"||(i=Object.keys(a),i.length!==1))return!1;r[n]=[i[0],a[i[0]]]}return!0}function Ob(t){if(t===null)return[];var n,o,a,i,r,l=t;for(r=new Array(l.length),n=0,o=l.length;n<o;n+=1)a=l[n],i=Object.keys(a),r[n]=[i[0],a[i[0]]];return r}var Ts=new gt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Tb,construct:Ob}),Vb=Object.prototype.hasOwnProperty;function Bb(t){if(t===null)return!0;var n,o=t;for(n in o)if(Vb.call(o,n)&&o[n]!==null)return!1;return!0}function Rb(t){return t!==null?t:{}}var Os=new gt("tag:yaml.org,2002:set",{kind:"mapping",resolve:Bb,construct:Rb}),ha=Es.extend({implicit:[Ss,As],explicit:[Is,Ps,Ts,Os]}),cn=Object.prototype.hasOwnProperty,tr=1,Vs=2,Bs=3,nr=4,ya=1,$b=2,Rs=3,Fb=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Lb=/[\x85\u2028\u2029]/,Db=/[,\[\]\{\}]/,$s=/^(?:!|!!|![a-z\-]+!)$/i,Fs=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Ls(t){return Object.prototype.toString.call(t)}function zt(t){return t===10||t===13}function On(t){return t===9||t===32}function Nt(t){return t===9||t===32||t===10||t===13}function
|
|
25
|
-
`:t===118?"\v":t===102?"\f":t===114?"\r":t===101?"\x1B":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"
":t===95?" ":t===76?"\u2028":t===80?"\u2029":""}function
|
|
26
|
-
`,n-1))}function qb(t,n,o){var a,i,r,l,s,c,u,f,d=t.kind,p=t.result,m;if(m=t.input.charCodeAt(t.position),Nt(m)||
|
|
24
|
+
\r`;function wb(t){if(t===null)return!1;var n,o,a=0,i=t.length,r=ga;for(o=0;o<i;o++)if(n=r.indexOf(t.charAt(o)),!(n>64)){if(n<0)return!1;a+=6}return a%8===0}function Cb(t){var n,o,a=t.replace(/[\r\n=]/g,""),i=a.length,r=ga,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|r.indexOf(a.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 Eb(t){var n="",o=0,a,i,r=t.length,l=ga;for(a=0;a<r;a++)a%3===0&&a&&(n+=l[o>>18&63],n+=l[o>>12&63],n+=l[o>>6&63],n+=l[o&63]),o=(o<<8)+t[a];return i=r%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 Nb(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var Is=new gt("tag:yaml.org,2002:binary",{kind:"scalar",resolve:wb,construct:Cb,predicate:Nb,represent:Eb}),xb=Object.prototype.hasOwnProperty,Sb=Object.prototype.toString;function Ab(t){if(t===null)return!0;var n=[],o,a,i,r,l,s=t;for(o=0,a=s.length;o<a;o+=1){if(i=s[o],l=!1,Sb.call(i)!=="[object Object]")return!1;for(r in i)if(xb.call(i,r))if(!l)l=!0;else return!1;if(!l)return!1;if(n.indexOf(r)===-1)n.push(r);else return!1}return!0}function Ib(t){return t!==null?t:[]}var Ps=new gt("tag:yaml.org,2002:omap",{kind:"sequence",resolve:Ab,construct:Ib}),Pb=Object.prototype.toString;function Tb(t){if(t===null)return!0;var n,o,a,i,r,l=t;for(r=new Array(l.length),n=0,o=l.length;n<o;n+=1){if(a=l[n],Pb.call(a)!=="[object Object]"||(i=Object.keys(a),i.length!==1))return!1;r[n]=[i[0],a[i[0]]]}return!0}function Ob(t){if(t===null)return[];var n,o,a,i,r,l=t;for(r=new Array(l.length),n=0,o=l.length;n<o;n+=1)a=l[n],i=Object.keys(a),r[n]=[i[0],a[i[0]]];return r}var Ts=new gt("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:Tb,construct:Ob}),Vb=Object.prototype.hasOwnProperty;function Bb(t){if(t===null)return!0;var n,o=t;for(n in o)if(Vb.call(o,n)&&o[n]!==null)return!1;return!0}function Rb(t){return t!==null?t:{}}var Os=new gt("tag:yaml.org,2002:set",{kind:"mapping",resolve:Bb,construct:Rb}),ha=Es.extend({implicit:[Ss,As],explicit:[Is,Ps,Ts,Os]}),cn=Object.prototype.hasOwnProperty,tr=1,Vs=2,Bs=3,nr=4,ya=1,$b=2,Rs=3,Fb=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Lb=/[\x85\u2028\u2029]/,Db=/[,\[\]\{\}]/,$s=/^(?:!|!!|![a-z\-]+!)$/i,Fs=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Ls(t){return Object.prototype.toString.call(t)}function zt(t){return t===10||t===13}function On(t){return t===9||t===32}function Nt(t){return t===9||t===32||t===10||t===13}function Kn(t){return t===44||t===91||t===93||t===123||t===125}function Mb(t){var n;return 48<=t&&t<=57?t-48:(n=t|32,97<=n&&n<=102?n-97+10:-1)}function jb(t){return t===120?2:t===117?4:t===85?8:0}function Kb(t){return 48<=t&&t<=57?t-48:-1}function Ds(t){return t===48?"\0":t===97?"\x07":t===98?"\b":t===116||t===9?" ":t===110?`
|
|
25
|
+
`:t===118?"\v":t===102?"\f":t===114?"\r":t===101?"\x1B":t===32?" ":t===34?'"':t===47?"/":t===92?"\\":t===78?"
":t===95?" ":t===76?"\u2028":t===80?"\u2029":""}function vb(t){return t<=65535?String.fromCharCode(t):String.fromCharCode((t-65536>>10)+55296,(t-65536&1023)+56320)}function Ms(t,n,o){n==="__proto__"?Object.defineProperty(t,n,{configurable:!0,enumerable:!0,writable:!0,value:o}):t[n]=o}for(var js=new Array(256),Ks=new Array(256),vn=0;vn<256;vn++)js[vn]=Ds(vn)?1:0,Ks[vn]=Ds(vn);function Ub(t,n){this.input=t,this.filename=n.filename||null,this.schema=n.schema||ha,this.onWarning=n.onWarning||null,this.legacy=n.legacy||!1,this.json=n.json||!1,this.listener=n.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function vs(t,n){var o={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return o.snippet=H_(o),new bt(n,o)}function Te(t,n){throw vs(t,n)}function or(t,n){t.onWarning&&t.onWarning.call(null,vs(t,n))}var Us={YAML:function(n,o,a){var i,r,l;n.version!==null&&Te(n,"duplication of %YAML directive"),a.length!==1&&Te(n,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(a[0]),i===null&&Te(n,"ill-formed argument of the YAML directive"),r=parseInt(i[1],10),l=parseInt(i[2],10),r!==1&&Te(n,"unacceptable YAML version of the document"),n.version=a[0],n.checkLineBreaks=l<2,l!==1&&l!==2&&or(n,"unsupported YAML version of the document")},TAG:function(n,o,a){var i,r;a.length!==2&&Te(n,"TAG directive accepts exactly two arguments"),i=a[0],r=a[1],$s.test(i)||Te(n,"ill-formed tag handle (first argument) of the TAG directive"),cn.call(n.tagMap,i)&&Te(n,'there is a previously declared suffix for "'+i+'" tag handle'),Fs.test(r)||Te(n,"ill-formed tag prefix (second argument) of the TAG directive");try{r=decodeURIComponent(r)}catch{Te(n,"tag prefix is malformed: "+r)}n.tagMap[i]=r}};function dn(t,n,o,a){var i,r,l,s;if(n<o){if(s=t.input.slice(n,o),a)for(i=0,r=s.length;i<r;i+=1)l=s.charCodeAt(i),l===9||32<=l&&l<=1114111||Te(t,"expected valid JSON character");else Fb.test(s)&&Te(t,"the stream contains non-printable characters");t.result+=s}}function qs(t,n,o,a){var i,r,l,s;for(lt.isObject(o)||Te(t,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(o),l=0,s=i.length;l<s;l+=1)r=i[l],cn.call(n,r)||(Ms(n,r,o[r]),a[r]=!0)}function Un(t,n,o,a,i,r,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])&&Te(t,"nested arrays are not supported inside keys"),typeof i=="object"&&Ls(i[u])==="[object Object]"&&(i[u]="[object Object]");if(typeof i=="object"&&Ls(i)==="[object Object]"&&(i="[object Object]"),i=String(i),n===null&&(n={}),a==="tag:yaml.org,2002:merge")if(Array.isArray(r))for(u=0,f=r.length;u<f;u+=1)qs(t,n,r[u],o);else qs(t,n,r,o);else!t.json&&!cn.call(o,i)&&cn.call(n,i)&&(t.line=l||t.line,t.lineStart=s||t.lineStart,t.position=c||t.position,Te(t,"duplicated mapping key")),Ms(n,i,r),delete o[i];return n}function _a(t){var n;n=t.input.charCodeAt(t.position),n===10?t.position++:n===13?(t.position++,t.input.charCodeAt(t.position)===10&&t.position++):Te(t,"a line break is expected"),t.line+=1,t.lineStart=t.position,t.firstTabInLine=-1}function ot(t,n,o){for(var a=0,i=t.input.charCodeAt(t.position);i!==0;){for(;On(i);)i===9&&t.firstTabInLine===-1&&(t.firstTabInLine=t.position),i=t.input.charCodeAt(++t.position);if(n&&i===35)do i=t.input.charCodeAt(++t.position);while(i!==10&&i!==13&&i!==0);if(zt(i))for(_a(t),i=t.input.charCodeAt(t.position),a++,t.lineIndent=0;i===32;)t.lineIndent++,i=t.input.charCodeAt(++t.position);else break}return o!==-1&&a!==0&&t.lineIndent<o&&or(t,"deficient indentation"),a}function rr(t){var n=t.position,o;return o=t.input.charCodeAt(n),!!((o===45||o===46)&&o===t.input.charCodeAt(n+1)&&o===t.input.charCodeAt(n+2)&&(n+=3,o=t.input.charCodeAt(n),o===0||Nt(o)))}function ba(t,n){n===1?t.result+=" ":n>1&&(t.result+=lt.repeat(`
|
|
26
|
+
`,n-1))}function qb(t,n,o){var a,i,r,l,s,c,u,f,d=t.kind,p=t.result,m;if(m=t.input.charCodeAt(t.position),Nt(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=t.input.charCodeAt(t.position+1),Nt(i)||o&&Kn(i)))return!1;for(t.kind="scalar",t.result="",r=l=t.position,s=!1;m!==0;){if(m===58){if(i=t.input.charCodeAt(t.position+1),Nt(i)||o&&Kn(i))break}else if(m===35){if(a=t.input.charCodeAt(t.position-1),Nt(a))break}else{if(t.position===t.lineStart&&rr(t)||o&&Kn(m))break;if(zt(m))if(c=t.line,u=t.lineStart,f=t.lineIndent,ot(t,!1,-1),t.lineIndent>=n){s=!0,m=t.input.charCodeAt(t.position);continue}else{t.position=l,t.line=c,t.lineStart=u,t.lineIndent=f;break}}s&&(dn(t,r,l,!1),ba(t,t.line-c),r=l=t.position,s=!1),On(m)||(l=t.position+1),m=t.input.charCodeAt(++t.position)}return dn(t,r,l,!1),t.result?!0:(t.kind=d,t.result=p,!1)}function Gb(t,n){var o,a,i;if(o=t.input.charCodeAt(t.position),o!==39)return!1;for(t.kind="scalar",t.result="",t.position++,a=i=t.position;(o=t.input.charCodeAt(t.position))!==0;)if(o===39)if(dn(t,a,t.position,!0),o=t.input.charCodeAt(++t.position),o===39)a=t.position,t.position++,i=t.position;else return!0;else zt(o)?(dn(t,a,i,!0),ba(t,ot(t,!1,n)),a=i=t.position):t.position===t.lineStart&&rr(t)?Te(t,"unexpected end of the document within a single quoted scalar"):(t.position++,i=t.position);Te(t,"unexpected end of the stream within a single quoted scalar")}function zb(t,n){var o,a,i,r,l,s;if(s=t.input.charCodeAt(t.position),s!==34)return!1;for(t.kind="scalar",t.result="",t.position++,o=a=t.position;(s=t.input.charCodeAt(t.position))!==0;){if(s===34)return dn(t,o,t.position,!0),t.position++,!0;if(s===92){if(dn(t,o,t.position,!0),s=t.input.charCodeAt(++t.position),zt(s))ot(t,!1,n);else if(s<256&&js[s])t.result+=Ks[s],t.position++;else if((l=jb(s))>0){for(i=l,r=0;i>0;i--)s=t.input.charCodeAt(++t.position),(l=Mb(s))>=0?r=(r<<4)+l:Te(t,"expected hexadecimal character");t.result+=vb(r),t.position++}else Te(t,"unknown escape sequence");o=a=t.position}else zt(s)?(dn(t,o,a,!0),ba(t,ot(t,!1,n)),o=a=t.position):t.position===t.lineStart&&rr(t)?Te(t,"unexpected end of the document within a double quoted scalar"):(t.position++,a=t.position)}Te(t,"unexpected end of the stream within a double quoted scalar")}function Hb(t,n){var o=!0,a,i,r,l=t.tag,s,c=t.anchor,u,f,d,p,m,g=Object.create(null),y,C,b,h;if(h=t.input.charCodeAt(t.position),h===91)f=93,m=!1,s=[];else if(h===123)f=125,m=!0,s={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=s),h=t.input.charCodeAt(++t.position);h!==0;){if(ot(t,!0,n),h=t.input.charCodeAt(t.position),h===f)return t.position++,t.tag=l,t.anchor=c,t.kind=m?"mapping":"sequence",t.result=s,!0;o?h===44&&Te(t,"expected the node content, but found ','"):Te(t,"missed comma between flow collection entries"),C=y=b=null,d=p=!1,h===63&&(u=t.input.charCodeAt(t.position+1),Nt(u)&&(d=p=!0,t.position++,ot(t,!0,n))),a=t.line,i=t.lineStart,r=t.position,qn(t,n,tr,!1,!0),C=t.tag,y=t.result,ot(t,!0,n),h=t.input.charCodeAt(t.position),(p||t.line===a)&&h===58&&(d=!0,h=t.input.charCodeAt(++t.position),ot(t,!0,n),qn(t,n,tr,!1,!0),b=t.result),m?Un(t,s,g,C,y,b,a,i,r):d?s.push(Un(t,null,g,C,y,b,a,i,r)):s.push(y),ot(t,!0,n),h=t.input.charCodeAt(t.position),h===44?(o=!0,h=t.input.charCodeAt(++t.position)):o=!1}Te(t,"unexpected end of the stream within a flow collection")}function Wb(t,n){var o,a,i=ya,r=!1,l=!1,s=n,c=0,u=!1,f,d;if(d=t.input.charCodeAt(t.position),d===124)a=!1;else if(d===62)a=!0;else return!1;for(t.kind="scalar",t.result="";d!==0;)if(d=t.input.charCodeAt(++t.position),d===43||d===45)ya===i?i=d===43?Rs:$b:Te(t,"repeat of a chomping mode identifier");else if((f=Kb(d))>=0)f===0?Te(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):l?Te(t,"repeat of an indentation width identifier"):(s=n+f-1,l=!0);else break;if(On(d)){do d=t.input.charCodeAt(++t.position);while(On(d));if(d===35)do d=t.input.charCodeAt(++t.position);while(!zt(d)&&d!==0)}for(;d!==0;){for(_a(t),t.lineIndent=0,d=t.input.charCodeAt(t.position);(!l||t.lineIndent<s)&&d===32;)t.lineIndent++,d=t.input.charCodeAt(++t.position);if(!l&&t.lineIndent>s&&(s=t.lineIndent),zt(d)){c++;continue}if(t.lineIndent<s){i===Rs?t.result+=lt.repeat(`
|
|
27
27
|
`,r?1+c:c):i===ya&&r&&(t.result+=`
|
|
28
28
|
`);break}for(a?On(d)?(u=!0,t.result+=lt.repeat(`
|
|
29
29
|
`,r?1+c:c)):u?(u=!1,t.result+=lt.repeat(`
|
|
30
30
|
`,c+1)):c===0?r&&(t.result+=" "):t.result+=lt.repeat(`
|
|
31
31
|
`,c):t.result+=lt.repeat(`
|
|
32
|
-
`,r?1+c:c),r=!0,l=!0,c=0,o=t.position;!zt(d)&&d!==0;)d=t.input.charCodeAt(++t.position);dn(t,o,t.position,!1)}return!0}function Gs(t,n){var o,a=t.tag,i=t.anchor,r=[],l,s=!1,c;if(t.firstTabInLine!==-1)return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=r),c=t.input.charCodeAt(t.position);c!==0&&(t.firstTabInLine!==-1&&(t.position=t.firstTabInLine,Te(t,"tab characters must not be used in indentation")),!(c!==45||(l=t.input.charCodeAt(t.position+1),!Nt(l))));){if(s=!0,t.position++,ot(t,!0,-1)&&t.lineIndent<=n){r.push(null),c=t.input.charCodeAt(t.position);continue}if(o=t.line,qn(t,n,Bs,!1,!0),r.push(t.result),ot(t,!0,-1),c=t.input.charCodeAt(t.position),(t.line===o||t.lineIndent>n)&&c!==0)Te(t,"bad indentation of a sequence entry");else if(t.lineIndent<n)break}return s?(t.tag=a,t.anchor=i,t.kind="sequence",t.result=r,!0):!1}function Yb(t,n,o){var a,i,r,l,s,c,u=t.tag,f=t.anchor,d={},p=Object.create(null),m=null,g=null,y=null,C=!1,b=!1,h;if(t.firstTabInLine!==-1)return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=d),h=t.input.charCodeAt(t.position);h!==0;){if(!C&&t.firstTabInLine!==-1&&(t.position=t.firstTabInLine,Te(t,"tab characters must not be used in indentation")),a=t.input.charCodeAt(t.position+1),r=t.line,(h===63||h===58)&&Nt(a))h===63?(C&&(Un(t,d,p,m,g,null,l,s,c),m=g=y=null),b=!0,C=!0,i=!0):C?(C=!1,i=!0):Te(t,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),t.position+=1,h=a;else{if(l=t.line,s=t.lineStart,c=t.position,!qn(t,o,Vs,!1,!0))break;if(t.line===r){for(h=t.input.charCodeAt(t.position);On(h);)h=t.input.charCodeAt(++t.position);if(h===58)h=t.input.charCodeAt(++t.position),Nt(h)||Te(t,"a whitespace character is expected after the key-value separator within a block mapping"),C&&(Un(t,d,p,m,g,null,l,s,c),m=g=y=null),b=!0,C=!1,i=!1,m=t.tag,g=t.result;else if(b)Te(t,"can not read an implicit mapping pair; a colon is missed");else return t.tag=u,t.anchor=f,!0}else if(b)Te(t,"can not read a block mapping entry; a multiline key may not be an implicit key");else return t.tag=u,t.anchor=f,!0}if((t.line===r||t.lineIndent>n)&&(C&&(l=t.line,s=t.lineStart,c=t.position),qn(t,n,nr,!0,i)&&(C?g=t.result:y=t.result),C||(Un(t,d,p,m,g,y,l,s,c),m=g=y=null),ot(t,!0,-1),h=t.input.charCodeAt(t.position)),(t.line===r||t.lineIndent>n)&&h!==0)Te(t,"bad indentation of a mapping entry");else if(t.lineIndent<n)break}return C&&Un(t,d,p,m,g,null,l,s,c),b&&(t.tag=u,t.anchor=f,t.kind="mapping",t.result=d),b}function Jb(t){var n,o=!1,a=!1,i,r,l;if(l=t.input.charCodeAt(t.position),l!==33)return!1;if(t.tag!==null&&Te(t,"duplication of a tag property"),l=t.input.charCodeAt(++t.position),l===60?(o=!0,l=t.input.charCodeAt(++t.position)):l===33?(a=!0,i="!!",l=t.input.charCodeAt(++t.position)):i="!",n=t.position,o){do l=t.input.charCodeAt(++t.position);while(l!==0&&l!==62);t.position<t.length?(r=t.input.slice(n,t.position),l=t.input.charCodeAt(++t.position)):Te(t,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!Nt(l);)l===33&&(a?Te(t,"tag suffix cannot contain exclamation marks"):(i=t.input.slice(n-1,t.position+1),$s.test(i)||Te(t,"named tag handle cannot contain such characters"),a=!0,n=t.position+1)),l=t.input.charCodeAt(++t.position);r=t.input.slice(n,t.position),Db.test(r)&&Te(t,"tag suffix cannot contain flow indicator characters")}r&&!Fs.test(r)&&Te(t,"tag name cannot contain such characters: "+r);try{r=decodeURIComponent(r)}catch{Te(t,"tag name is malformed: "+r)}return o?t.tag=r:cn.call(t.tagMap,i)?t.tag=t.tagMap[i]+r:i==="!"?t.tag="!"+r:i==="!!"?t.tag="tag:yaml.org,2002:"+r:Te(t,'undeclared tag handle "'+i+'"'),!0}function Xb(t){var n,o;if(o=t.input.charCodeAt(t.position),o!==38)return!1;for(t.anchor!==null&&Te(t,"duplication of an anchor property"),o=t.input.charCodeAt(++t.position),n=t.position;o!==0&&!Nt(o)&&!
|
|
32
|
+
`,r?1+c:c),r=!0,l=!0,c=0,o=t.position;!zt(d)&&d!==0;)d=t.input.charCodeAt(++t.position);dn(t,o,t.position,!1)}return!0}function Gs(t,n){var o,a=t.tag,i=t.anchor,r=[],l,s=!1,c;if(t.firstTabInLine!==-1)return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=r),c=t.input.charCodeAt(t.position);c!==0&&(t.firstTabInLine!==-1&&(t.position=t.firstTabInLine,Te(t,"tab characters must not be used in indentation")),!(c!==45||(l=t.input.charCodeAt(t.position+1),!Nt(l))));){if(s=!0,t.position++,ot(t,!0,-1)&&t.lineIndent<=n){r.push(null),c=t.input.charCodeAt(t.position);continue}if(o=t.line,qn(t,n,Bs,!1,!0),r.push(t.result),ot(t,!0,-1),c=t.input.charCodeAt(t.position),(t.line===o||t.lineIndent>n)&&c!==0)Te(t,"bad indentation of a sequence entry");else if(t.lineIndent<n)break}return s?(t.tag=a,t.anchor=i,t.kind="sequence",t.result=r,!0):!1}function Yb(t,n,o){var a,i,r,l,s,c,u=t.tag,f=t.anchor,d={},p=Object.create(null),m=null,g=null,y=null,C=!1,b=!1,h;if(t.firstTabInLine!==-1)return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=d),h=t.input.charCodeAt(t.position);h!==0;){if(!C&&t.firstTabInLine!==-1&&(t.position=t.firstTabInLine,Te(t,"tab characters must not be used in indentation")),a=t.input.charCodeAt(t.position+1),r=t.line,(h===63||h===58)&&Nt(a))h===63?(C&&(Un(t,d,p,m,g,null,l,s,c),m=g=y=null),b=!0,C=!0,i=!0):C?(C=!1,i=!0):Te(t,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),t.position+=1,h=a;else{if(l=t.line,s=t.lineStart,c=t.position,!qn(t,o,Vs,!1,!0))break;if(t.line===r){for(h=t.input.charCodeAt(t.position);On(h);)h=t.input.charCodeAt(++t.position);if(h===58)h=t.input.charCodeAt(++t.position),Nt(h)||Te(t,"a whitespace character is expected after the key-value separator within a block mapping"),C&&(Un(t,d,p,m,g,null,l,s,c),m=g=y=null),b=!0,C=!1,i=!1,m=t.tag,g=t.result;else if(b)Te(t,"can not read an implicit mapping pair; a colon is missed");else return t.tag=u,t.anchor=f,!0}else if(b)Te(t,"can not read a block mapping entry; a multiline key may not be an implicit key");else return t.tag=u,t.anchor=f,!0}if((t.line===r||t.lineIndent>n)&&(C&&(l=t.line,s=t.lineStart,c=t.position),qn(t,n,nr,!0,i)&&(C?g=t.result:y=t.result),C||(Un(t,d,p,m,g,y,l,s,c),m=g=y=null),ot(t,!0,-1),h=t.input.charCodeAt(t.position)),(t.line===r||t.lineIndent>n)&&h!==0)Te(t,"bad indentation of a mapping entry");else if(t.lineIndent<n)break}return C&&Un(t,d,p,m,g,null,l,s,c),b&&(t.tag=u,t.anchor=f,t.kind="mapping",t.result=d),b}function Jb(t){var n,o=!1,a=!1,i,r,l;if(l=t.input.charCodeAt(t.position),l!==33)return!1;if(t.tag!==null&&Te(t,"duplication of a tag property"),l=t.input.charCodeAt(++t.position),l===60?(o=!0,l=t.input.charCodeAt(++t.position)):l===33?(a=!0,i="!!",l=t.input.charCodeAt(++t.position)):i="!",n=t.position,o){do l=t.input.charCodeAt(++t.position);while(l!==0&&l!==62);t.position<t.length?(r=t.input.slice(n,t.position),l=t.input.charCodeAt(++t.position)):Te(t,"unexpected end of the stream within a verbatim tag")}else{for(;l!==0&&!Nt(l);)l===33&&(a?Te(t,"tag suffix cannot contain exclamation marks"):(i=t.input.slice(n-1,t.position+1),$s.test(i)||Te(t,"named tag handle cannot contain such characters"),a=!0,n=t.position+1)),l=t.input.charCodeAt(++t.position);r=t.input.slice(n,t.position),Db.test(r)&&Te(t,"tag suffix cannot contain flow indicator characters")}r&&!Fs.test(r)&&Te(t,"tag name cannot contain such characters: "+r);try{r=decodeURIComponent(r)}catch{Te(t,"tag name is malformed: "+r)}return o?t.tag=r:cn.call(t.tagMap,i)?t.tag=t.tagMap[i]+r:i==="!"?t.tag="!"+r:i==="!!"?t.tag="tag:yaml.org,2002:"+r:Te(t,'undeclared tag handle "'+i+'"'),!0}function Xb(t){var n,o;if(o=t.input.charCodeAt(t.position),o!==38)return!1;for(t.anchor!==null&&Te(t,"duplication of an anchor property"),o=t.input.charCodeAt(++t.position),n=t.position;o!==0&&!Nt(o)&&!Kn(o);)o=t.input.charCodeAt(++t.position);return t.position===n&&Te(t,"name of an anchor node must contain at least one character"),t.anchor=t.input.slice(n,t.position),!0}function Zb(t){var n,o,a;if(a=t.input.charCodeAt(t.position),a!==42)return!1;for(a=t.input.charCodeAt(++t.position),n=t.position;a!==0&&!Nt(a)&&!Kn(a);)a=t.input.charCodeAt(++t.position);return t.position===n&&Te(t,"name of an alias node must contain at least one character"),o=t.input.slice(n,t.position),cn.call(t.anchorMap,o)||Te(t,'unidentified alias "'+o+'"'),t.result=t.anchorMap[o],ot(t,!0,-1),!0}function qn(t,n,o,a,i){var r,l,s,c=1,u=!1,f=!1,d,p,m,g,y,C;if(t.listener!==null&&t.listener("open",t),t.tag=null,t.anchor=null,t.kind=null,t.result=null,r=l=s=nr===o||Bs===o,a&&ot(t,!0,-1)&&(u=!0,t.lineIndent>n?c=1:t.lineIndent===n?c=0:t.lineIndent<n&&(c=-1)),c===1)for(;Jb(t)||Xb(t);)ot(t,!0,-1)?(u=!0,s=r,t.lineIndent>n?c=1:t.lineIndent===n?c=0:t.lineIndent<n&&(c=-1)):s=!1;if(s&&(s=u||i),(c===1||nr===o)&&(tr===o||Vs===o?y=n:y=n+1,C=t.position-t.lineStart,c===1?s&&(Gs(t,C)||Yb(t,C,y))||Hb(t,y)?f=!0:(l&&Wb(t,y)||Gb(t,y)||zb(t,y)?f=!0:Zb(t)?(f=!0,(t.tag!==null||t.anchor!==null)&&Te(t,"alias node should not have any properties")):qb(t,y,tr===o)&&(f=!0,t.tag===null&&(t.tag="?")),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):c===0&&(f=s&&Gs(t,C))),t.tag===null)t.anchor!==null&&(t.anchorMap[t.anchor]=t.result);else if(t.tag==="?"){for(t.result!==null&&t.kind!=="scalar"&&Te(t,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+t.kind+'"'),d=0,p=t.implicitTypes.length;d<p;d+=1)if(g=t.implicitTypes[d],g.resolve(t.result)){t.result=g.construct(t.result),t.tag=g.tag,t.anchor!==null&&(t.anchorMap[t.anchor]=t.result);break}}else if(t.tag!=="!"){if(cn.call(t.typeMap[t.kind||"fallback"],t.tag))g=t.typeMap[t.kind||"fallback"][t.tag];else for(g=null,m=t.typeMap.multi[t.kind||"fallback"],d=0,p=m.length;d<p;d+=1)if(t.tag.slice(0,m[d].tag.length)===m[d].tag){g=m[d];break}g||Te(t,"unknown tag !<"+t.tag+">"),t.result!==null&&g.kind!==t.kind&&Te(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+g.kind+'", not "'+t.kind+'"'),g.resolve(t.result,t.tag)?(t.result=g.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):Te(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||f}function Qb(t){var n=t.position,o,a,i,r=!1,l;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(l=t.input.charCodeAt(t.position))!==0&&(ot(t,!0,-1),l=t.input.charCodeAt(t.position),!(t.lineIndent>0||l!==37));){for(r=!0,l=t.input.charCodeAt(++t.position),o=t.position;l!==0&&!Nt(l);)l=t.input.charCodeAt(++t.position);for(a=t.input.slice(o,t.position),i=[],a.length<1&&Te(t,"directive name must not be less than one character in length");l!==0;){for(;On(l);)l=t.input.charCodeAt(++t.position);if(l===35){do l=t.input.charCodeAt(++t.position);while(l!==0&&!zt(l));break}if(zt(l))break;for(o=t.position;l!==0&&!Nt(l);)l=t.input.charCodeAt(++t.position);i.push(t.input.slice(o,t.position))}l!==0&&_a(t),cn.call(Us,a)?Us[a](t,a,i):or(t,'unknown document directive "'+a+'"')}if(ot(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,ot(t,!0,-1)):r&&Te(t,"directives end mark is expected"),qn(t,t.lineIndent-1,nr,!1,!0),ot(t,!0,-1),t.checkLineBreaks&&Lb.test(t.input.slice(n,t.position))&&or(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&rr(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,ot(t,!0,-1));return}if(t.position<t.length-1)Te(t,"end of the stream or a document separator is expected");else return}function zs(t,n){t=String(t),n=n||{},t.length!==0&&(t.charCodeAt(t.length-1)!==10&&t.charCodeAt(t.length-1)!==13&&(t+=`
|
|
33
33
|
`),t.charCodeAt(0)===65279&&(t=t.slice(1)));var o=new Ub(t,n),a=t.indexOf("\0");for(a!==-1&&(o.position=a,Te(o,"null byte is not allowed in input")),o.input+="\0";o.input.charCodeAt(o.position)===32;)o.lineIndent+=1,o.position+=1;for(;o.position<o.length-1;)Qb(o);return o.documents}function ek(t,n,o){n!==null&&typeof n=="object"&&typeof o>"u"&&(o=n,n=null);var a=zs(t,o);if(typeof n!="function")return a;for(var i=0,r=a.length;i<r;i+=1)n(a[i])}function tk(t,n){var o=zs(t,n);if(o.length!==0){if(o.length===1)return o[0];throw new bt("expected a single document in the stream, but found more")}}var nk=ek,ok=tk,Hs={loadAll:nk,load:ok},Ws=Object.prototype.toString,Ys=Object.prototype.hasOwnProperty,ka=65279,rk=9,mo=10,ak=13,ik=32,lk=33,sk=34,wa=35,ck=37,dk=38,uk=39,pk=42,Js=44,fk=45,ar=58,mk=61,gk=62,hk=63,yk=64,Xs=91,Zs=93,_k=96,Qs=123,bk=124,ec=125,yt={};yt[0]="\\0",yt[7]="\\a",yt[8]="\\b",yt[9]="\\t",yt[10]="\\n",yt[11]="\\v",yt[12]="\\f",yt[13]="\\r",yt[27]="\\e",yt[34]='\\"',yt[92]="\\\\",yt[133]="\\N",yt[160]="\\_",yt[8232]="\\L",yt[8233]="\\P";var kk=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],wk=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function Ck(t,n){var o,a,i,r,l,s,c;if(n===null)return{};for(o={},a=Object.keys(n),i=0,r=a.length;i<r;i+=1)l=a[i],s=String(n[l]),l.slice(0,2)==="!!"&&(l="tag:yaml.org,2002:"+l.slice(2)),c=t.compiledTypeMap.fallback[l],c&&Ys.call(c.styleAliases,s)&&(s=c.styleAliases[s]),o[l]=s;return o}function Ek(t){var n,o,a;if(n=t.toString(16).toUpperCase(),t<=255)o="x",a=2;else if(t<=65535)o="u",a=4;else if(t<=4294967295)o="U",a=8;else throw new bt("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+o+lt.repeat("0",a-n.length)+n}var Nk=1,go=2;function xk(t){this.schema=t.schema||ha,this.indent=Math.max(1,t.indent||2),this.noArrayIndent=t.noArrayIndent||!1,this.skipInvalid=t.skipInvalid||!1,this.flowLevel=lt.isNothing(t.flowLevel)?-1:t.flowLevel,this.styleMap=Ck(this.schema,t.styles||null),this.sortKeys=t.sortKeys||!1,this.lineWidth=t.lineWidth||80,this.noRefs=t.noRefs||!1,this.noCompatMode=t.noCompatMode||!1,this.condenseFlow=t.condenseFlow||!1,this.quotingType=t.quotingType==='"'?go:Nk,this.forceQuotes=t.forceQuotes||!1,this.replacer=typeof t.replacer=="function"?t.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function tc(t,n){for(var o=lt.repeat(" ",n),a=0,i=-1,r="",l,s=t.length;a<s;)i=t.indexOf(`
|
|
34
34
|
`,a),i===-1?(l=t.slice(a),a=s):(l=t.slice(a,i+1),a=i+1),l.length&&l!==`
|
|
35
35
|
`&&(r+=o),r+=l;return r}function Ca(t,n){return`
|
|
@@ -45,7 +45,7 @@ ${x}`)}if(E.has(_))return;E.add(_),k.push(_);const w=C.dependencies[_];if(w){con
|
|
|
45
45
|
`+t.slice(i,r),i=r+1),l=s;return c+=`
|
|
46
46
|
`,t.length-i>n&&l>i?c+=t.slice(i,l)+`
|
|
47
47
|
`+t.slice(l+1):c+=t.slice(i),c.slice(1)}function Vk(t){for(var n="",o=0,a,i=0;i<t.length;o>=65536?i+=2:i++)o=yo(t,i),a=yt[o],!a&&ho(o)?(n+=t[i],o>=65536&&(n+=t[i+1])):n+=a||Ek(o);return n}function Bk(t,n,o){var a="",i=t.tag,r,l,s;for(r=0,l=o.length;r<l;r+=1)s=o[r],t.replacer&&(s=t.replacer.call(o,String(r),s)),(tn(t,n,s,!1,!1)||typeof s>"u"&&tn(t,n,null,!1,!1))&&(a!==""&&(a+=","+(t.condenseFlow?"":" ")),a+=t.dump);t.tag=i,t.dump="["+a+"]"}function uc(t,n,o,a){var i="",r=t.tag,l,s,c;for(l=0,s=o.length;l<s;l+=1)c=o[l],t.replacer&&(c=t.replacer.call(o,String(l),c)),(tn(t,n+1,c,!0,!0,!1,!0)||typeof c>"u"&&tn(t,n+1,null,!0,!0,!1,!0))&&((!a||i!=="")&&(i+=Ca(t,n)),t.dump&&mo===t.dump.charCodeAt(0)?i+="-":i+="- ",i+=t.dump);t.tag=r,t.dump=i||"[]"}function Rk(t,n,o){var a="",i=t.tag,r=Object.keys(o),l,s,c,u,f;for(l=0,s=r.length;l<s;l+=1)f="",a!==""&&(f+=", "),t.condenseFlow&&(f+='"'),c=r[l],u=o[c],t.replacer&&(u=t.replacer.call(o,c,u)),tn(t,n,c,!1,!1)&&(t.dump.length>1024&&(f+="? "),f+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),tn(t,n,u,!1,!1)&&(f+=t.dump,a+=f));t.tag=i,t.dump="{"+a+"}"}function $k(t,n,o,a){var i="",r=t.tag,l=Object.keys(o),s,c,u,f,d,p;if(t.sortKeys===!0)l.sort();else if(typeof t.sortKeys=="function")l.sort(t.sortKeys);else if(t.sortKeys)throw new bt("sortKeys must be a boolean or a function");for(s=0,c=l.length;s<c;s+=1)p="",(!a||i!=="")&&(p+=Ca(t,n)),u=l[s],f=o[u],t.replacer&&(f=t.replacer.call(o,u,f)),tn(t,n+1,u,!0,!0,!0)&&(d=t.tag!==null&&t.tag!=="?"||t.dump&&t.dump.length>1024,d&&(t.dump&&mo===t.dump.charCodeAt(0)?p+="?":p+="? "),p+=t.dump,d&&(p+=Ca(t,n)),tn(t,n+1,f,!0,d)&&(t.dump&&mo===t.dump.charCodeAt(0)?p+=":":p+=": ",p+=t.dump,i+=p));t.tag=r,t.dump=i||"{}"}function pc(t,n,o){var a,i,r,l,s,c;for(i=o?t.explicitTypes:t.implicitTypes,r=0,l=i.length;r<l;r+=1)if(s=i[r],(s.instanceOf||s.predicate)&&(!s.instanceOf||typeof n=="object"&&n instanceof s.instanceOf)&&(!s.predicate||s.predicate(n))){if(o?s.multi&&s.representName?t.tag=s.representName(n):t.tag=s.tag:t.tag="?",s.represent){if(c=t.styleMap[s.tag]||s.defaultStyle,Ws.call(s.represent)==="[object Function]")a=s.represent(n,c);else if(Ys.call(s.represent,c))a=s.represent[c](n,c);else throw new bt("!<"+s.tag+'> tag resolver accepts not "'+c+'" style');t.dump=a}return!0}return!1}function tn(t,n,o,a,i,r,l){t.tag=null,t.dump=o,pc(t,o,!1)||pc(t,o,!0);var s=Ws.call(t.dump),c=a,u;a&&(a=t.flowLevel<0||t.flowLevel>n);var f=s==="[object Object]"||s==="[object Array]",d,p;if(f&&(d=t.duplicates.indexOf(o),p=d!==-1),(t.tag!==null&&t.tag!=="?"||p||t.indent!==2&&n>0)&&(i=!1),p&&t.usedDuplicates[d])t.dump="*ref_"+d;else{if(f&&p&&!t.usedDuplicates[d]&&(t.usedDuplicates[d]=!0),s==="[object Object]")a&&Object.keys(t.dump).length!==0?($k(t,n,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(Rk(t,n,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(s==="[object Array]")a&&t.dump.length!==0?(t.noArrayIndent&&!l&&n>0?uc(t,n-1,t.dump,i):uc(t,n,t.dump,i),p&&(t.dump="&ref_"+d+t.dump)):(Bk(t,n,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(s==="[object String]")t.tag!=="?"&&Tk(t,t.dump,n,r,c);else{if(s==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new bt("unacceptable kind of an object to dump "+s)}t.tag!==null&&t.tag!=="?"&&(u=encodeURI(t.tag[0]==="!"?t.tag.slice(1):t.tag).replace(/!/g,"%21"),t.tag[0]==="!"?u="!"+u:u.slice(0,18)==="tag:yaml.org,2002:"?u="!!"+u.slice(18):u="!<"+u+">",t.dump=u+" "+t.dump)}return!0}function Fk(t,n){var o=[],a=[],i,r;for(Na(t,o,a),i=0,r=a.length;i<r;i+=1)n.duplicates.push(o[a[i]]);n.usedDuplicates=new Array(r)}function Na(t,n,o){var a,i,r;if(t!==null&&typeof t=="object")if(i=n.indexOf(t),i!==-1)o.indexOf(i)===-1&&o.push(i);else if(n.push(t),Array.isArray(t))for(i=0,r=t.length;i<r;i+=1)Na(t[i],n,o);else for(a=Object.keys(t),i=0,r=a.length;i<r;i+=1)Na(t[a[i]],n,o)}function Lk(t,n){n=n||{};var o=new xk(n);o.noRefs||Fk(t,o);var a=t;return o.replacer&&(a=o.replacer.call({"":a},"",a)),tn(o,0,a,!0,!0)?o.dump+`
|
|
48
|
-
`:""}var Dk=Lk,Mk={dump:Dk};function xa(t,n){return function(){throw new Error("Function yaml."+t+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var jk=gt,vk=fs,Kk=ys,un=Cs,Uk=Es,qk=ha,Gk=Hs.load,zk=Hs.loadAll,Hk=Mk.dump,Wk=bt,Yk={binary:Is,float:ws,map:hs,null:_s,pairs:Ts,set:Os,timestamp:Ss,bool:bs,int:ks,merge:As,omap:Ps,seq:gs,str:ms},Jk=xa("safeLoad","load"),Xk=xa("safeLoadAll","loadAll"),Zk=xa("safeDump","dump"),Ht={Type:jk,Schema:vk,FAILSAFE_SCHEMA:Kk,JSON_SCHEMA:un,CORE_SCHEMA:Uk,DEFAULT_SCHEMA:qk,load:Gk,loadAll:zk,dump:Hk,YAMLException:Wk,types:Yk,safeLoad:Jk,safeLoadAll:Xk,safeDump:Zk};const Qk={class:"plugin-code-editor","data-testid":"plugin-code-editor"},ew="YAML Syntax",tw=_e(e.defineComponent({__name:"CodeEditor",emits:["change","sourceChange","error"],setup(t,{emit:n}){const{formData:o,setValue:a}=We(),i=n,r=e.shallowRef(null);function l(){return Ht.dump(sn(e.toRaw(o),["__ui_data"]),{schema:un,noArrayIndent:!0})}const s=e.shallowRef(l()),c={scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep",editContext:!1};function u(d){const p=d.getModel();p&&(r.value=d,d.onDidChangeModelContent(()=>{try{const m=Ht.load(d.getValue()||"",{schema:un,json:!0});if(i("sourceChange",d.getValue()),typeof m!="object"||m===null)return;Ao.editor.setModelMarkers(p,ew,[]),a(m),i("change",m)}catch(m){const g=m instanceof Error?m.message:String(m);i("error",g)}}),f())}function f(){const d=r.value,p=d==null?void 0:d.getModel();!d||!p||(d.setPosition(p.getFullModelRange().getEndPosition()),d.focus())}return(d,p)=>(e.openBlock(),e.createElementBlock("div",Qk,[e.createVNode(e.unref(ai.MonacoEditor),{ref:"editor",modelValue:s.value,"onUpdate:modelValue":p[0]||(p[0]=m=>s.value=m),class:"editor",language:"yaml",options:c,theme:"light",onReady:u},null,8,["modelValue"])]))}}),[["__scopeId","data-v-be19e7de"]]),Sa={jqlang:"https://jqlang.org/manual/",condition:"https://developer.konghq.com/gateway/routing/expressions/"},nw={class:"label-content"},ow=_e(e.defineComponent({__name:"ConditionField",setup(t){const n=e.useId(),{i18n:{t:o},i18nT:a}=De();return(i,r)=>{const l=e.resolveComponent("KBadge"),s=e.resolveComponent("KLabel"),c=e.resolveComponent("KExternalLink");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(s,{for:e.unref(n),label:e.unref(o)("plugins.form.fields.condition.label")},{default:e.withCtx(()=>[e.createElementVNode("div",nw,[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.form.fields.condition.label"))+" ",1),e.createVNode(e.unref(Oe.KTooltip),{class:"label-tooltip"},{content:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.form.fields.condition.tooltip")),1)]),default:e.withCtx(()=>[e.createVNode(e.unref(me.InfoIcon),{class:"tooltip-trigger-icon",tabindex:"0"})]),_:1}),e.createVNode(l,{appearance:"decorative",size:"small"},{default:e.withCtx(()=>[...r[0]||(r[0]=[e.createTextVNode(" Beta ",-1)])]),_:1})])]),_:1},8,["for","label"]),e.createVNode(Ze,{"input-id":e.unref(n),label:"",name:"condition",placeholder:e.unref(o)("plugins.form.fields.condition.placeholder")},{help:e.withCtx(()=>[e.createVNode(e.unref(a),{keypath:"plugins.form.fields.condition.help.about"},{link:e.withCtx(()=>[e.createVNode(c,{"hide-icon":"",href:e.unref(Sa).condition},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.form.fields.condition.help.learn")),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["input-id","placeholder"])])}}}),[["__scopeId","data-v-c48152b9"]]),rw={class:"radio-group"},aw={key:0,class:"scope-detail"},Wt=_e(e.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{default:"form"},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=["config","partials","__ui_data","enabled","protocols","instance_name","condition","tags","consumer","consumer_group","route","service"],o=e.useId(),{i18n:{t:a}}=De(),i=e.createPropsRestProxy(t,["editorMode"]),r=e.inject(er),l=e.useSlots(),s=e.computed(()=>i.formConfig??{hasValue:D=>!!D&&Object.keys(D).length>0,prepareFormData:D=>i.isEditing?D:{...D,...F()}}),c=e.computed(()=>{var D;return(D=f.value)!=null&&D.disabled?{class:"disabled-scope",maxWidth:"300",text:a("plugins.form.scoping.disable_global_radio")}:{class:"scope"}}),u=e.computed(()=>{var D,U;return(D=i.formSchema)!=null&&D.groups?i.formSchema.groups.reduce((q,L)=>{var A,K;const V=L.fields,R=(K=(A=L.collapsible)==null?void 0:A.nestedCollapsible)!=null&&K.fields?V.concat(L.collapsible.nestedCollapsible.fields):V;return q.concat(R)},[]):((U=i.formSchema)==null?void 0:U.fields)||[]}),f=e.computed(()=>u.value.find(D=>D.type==="selectionGroup")),d=e.computed(()=>{var D;return(((D=f.value)==null?void 0:D.fields)||[]).map(({label:U,description:q})=>({label:U,description:q}))}),p=e.computed(()=>{var D,U;return(U=(D=f.value)==null?void 0:D.fields)==null?void 0:U[1]}),m=e.computed(()=>{var D;return(((D=p.value)==null?void 0:D.fields)??[]).map(U=>{var q;return{name:U.model.split("-")[0],entity:U.entity,fields:(q=U.inputValues)==null?void 0:q.fields,label:U.label,placeholder:U.placeholder,help:U.help,disabled:U.disabled,disabledTooltip:U.disabledTooltip,labelField:U.labelField}})}),g=["instance_name","protocols","tags","condition"],y=["config"],C=e.computed(()=>{var L;const D={type:"record",fields:i.schema.fields.filter(V=>y.includes(Object.keys(V)[0]))},U=u.value.find(V=>V.model==="enabled");return[...U?[U]:[],...((L=p.value)==null?void 0:L.fields)??[],...u.value.filter(V=>g.includes(V.model))].forEach(V=>{if(V.type==="AutoSuggest")D.fields.push({[V.model.split("-")[0]]:{type:"foreign",reference:V.entity,description:V.help}});else if(V.model==="enabled")D.fields.push({[V.model]:{type:"boolean",default:!0}});else if(V.model==="instance_name"||V.model==="condition")D.fields.push({[V.model]:{type:"string",description:V.help}});else if(V.model==="protocols")D.fields.push({[V.model]:{type:"set",elements:{type:"string",one_of:V.values.map(R=>R.value)},default:[...V.default],required:V.required,description:V.help,help:V.default?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:V.default.join(", ")}):a("plugins.form.fields.protocols.placeholder")}});else if(V.model==="tags")D.fields.push({[V.model]:{type:"set",elements:{type:"string"},description:V.help,default:V.default||[]}});else throw new Error(`Unsupported VFG field type '${V.type}' for model '${V.model}'`)}),D}),b=e.computed(()=>new Set(C.value.fields.map(D=>Object.keys(D)[0]))),h=e.computed(()=>Ol(i.model,n)),E=e.computed(()=>{var D;return((D=p.value)==null?void 0:D.fields.map(U=>U.model))??[]}),k=e.computed(()=>E.value.map(D=>D.split("-")[0])),_=e.ref(i.isEditing?Ol(h.value,k.value):F()),w=e.ref(Object.values(_.value).some(P)),x=e.useTemplateRef("form");let O=!1;function v(){if(!x.value)return;const{getRawValue:D,setValue:U}=x.value,L={...D()};w.value?k.value.forEach(V=>{L[V]=_.value[V]??null}):k.value.forEach(V=>{L[V]=null}),O=!0,U(L),e.nextTick(()=>{O=!1})}function I(D){if(O||S(D),t.editorMode==="code"){const U=k.value.some(q=>P(D[q]));U!==w.value&&(w.value=U)}i.onFormChange(D,n)}function S(D){k.value.forEach(U=>{const q=D[U];Go(q,"id")&&q.id!=null?_.value[U]=q:_.value[U]=null})}function P(D){return Go(D,"id")&&D.id!=null}function F(){const D={};return E.value.forEach(U=>{if(i.formModel[U]){const q=U.split("-")[0];if(!q)return;D[q]={id:i.formModel[U]}}}),D}By(C,o);const T=e.ref(!0);return(D,U)=>{const q=e.resolveComponent("KCollapse");return e.openBlock(),e.createBlock(mt,{ref:"form",class:"ff-standard-layout",config:s.value,data:h.value,"data-instance-id":e.unref(o),"data-plugin-name":t.pluginName,"data-testid":"ff-standard-layout-form","render-rules":t.renderRules,schema:C.value,tag:"div",onChange:I},{[e.unref(Mn)]:e.withCtx(()=>[e.createVNode(Gt,{match:({path:L})=>{var V,R;return L===((R=(V=e.unref(r))==null?void 0:V.redisPath)==null?void 0:R.value)}},{default:e.withCtx(()=>[e.createVNode(cs)]),_:1},8,["match"]),e.renderSlot(D.$slots,"field-renderers",{},void 0,!0)]),default:e.withCtx(()=>[t.editorMode==="form"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(e.unref(le.EntityFormBlock),{"data-testid":"form-section-plugin-scope",description:t.generalInfoDescription??e.unref(a)("plugins.form.sections.plugin_scope.description"),step:1,title:t.generalInfoTitle??e.unref(a)("plugins.form.sections.plugin_scope.title")},e.createSlots({default:e.withCtx(()=>{var L;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((L=f.value)!=null&&L.disabled?e.unref(Oe.KTooltip):"div"),e.normalizeProps(e.guardReactiveProps(c.value)),{default:e.withCtx(()=>{var V,R;return[e.createElementVNode("div",rw,[e.createVNode(e.unref(Oe.KRadio),e.mergeProps({modelValue:w.value,"onUpdate:modelValue":U[0]||(U[0]=A=>w.value=A),card:"","card-orientation":"horizontal"},d.value[0],{disabled:(V=f.value)==null?void 0:V.disabled,"selected-value":!1,"onUpdate:modelValue":v}),null,16,["modelValue","disabled"]),d.value[1]?(e.openBlock(),e.createBlock(e.unref(Oe.KRadio),e.mergeProps({key:0,modelValue:w.value,"onUpdate:modelValue":U[1]||(U[1]=A=>w.value=A),card:"","card-orientation":"horizontal"},d.value[1],{disabled:(R=f.value)==null?void 0:R.disabled,"selected-value":!0,"onUpdate:modelValue":v}),null,16,["modelValue","disabled"])):e.createCommentVNode("",!0)])]}),_:1},16)),p.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",aw,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,V=>(e.openBlock(),e.createBlock(b_,{key:V.name,disabled:V.disabled,"disabled-tooltip":V.disabledTooltip,entity:V.entity,fields:V.fields,help:V.help,label:V.label,"label-field":V.labelField,name:V.name,placeholder:V.placeholder},null,8,["disabled","disabled-tooltip","entity","fields","help","label","label-field","name","placeholder"]))),128))],512)),[[e.vShow,w.value]]):e.createCommentVNode("",!0)]}),_:2},[l["general-info-title"]?{name:"title",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,l["general-info-description"]?{name:"description",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,l["general-info-extra"]?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),e.createVNode(e.unref(le.EntityFormBlock),{"data-testid":"form-section-plugin-config",description:t.pluginConfigDescription??e.unref(a)("plugins.form.sections.plugin_config.description"),step:2,title:t.pluginConfigTitle??e.unref(a)("plugins.form.sections.plugin_config.title")},e.createSlots({default:e.withCtx(()=>[e.renderSlot(D.$slots,"default",{},void 0,!0)]),_:2},[l["plugin-config-title"]?{name:"title",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,l["plugin-config-description"]?{name:"description",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,l["plugin-config-extra"]?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),e.createVNode(e.unref(le.EntityFormBlock),{"data-testid":"form-section-general-info",description:e.unref(a)("plugins.form.sections.plugin_general_info.description"),step:3,title:e.unref(a)("plugins.form.sections.general_info.title")},{default:e.withCtx(()=>[b.value.has("enabled")?(e.openBlock(),e.createBlock(h_,{key:0,"disabled-text":e.unref(a)("plugins.form.fields.plugin_status.text_off"),"enabled-text":e.unref(a)("plugins.form.fields.plugin_status.text_on"),label:e.unref(a)("plugins.form.fields.plugin_status.label"),name:"enabled"},null,8,["disabled-text","enabled-text","label"])):e.createCommentVNode("",!0),b.value.has("instance_name")?(e.openBlock(),e.createBlock(Ze,{key:1,label:e.unref(a)("plugins.form.fields.instance_name.label"),name:"instance_name",placeholder:e.unref(a)("plugins.form.fields.instance_name.placeholder")},null,8,["label","placeholder"])):e.createCommentVNode("",!0),b.value.has("tags")?(e.openBlock(),e.createBlock(Xo,{key:2,help:e.unref(a)("plugins.form.fields.tags.help"),name:"tags",placeholder:e.unref(a)("plugins.form.fields.tags.placeholder")},null,8,["help","placeholder"])):e.createCommentVNode("",!0),b.value.has("protocols")?(e.openBlock(),e.createBlock(ft,{key:3,name:"protocols"})):e.createCommentVNode("",!0),C.value.fields.find(L=>Object.keys(L)[0]==="condition")?(e.openBlock(),e.createBlock(q,{key:4,modelValue:T.value,"onUpdate:modelValue":U[2]||(U[2]=L=>T.value=L),"data-testid":"view-general-info-additional-settings","trigger-label":T.value?e.unref(a)("plugins.form.grouping.advanced_parameters.view"):e.unref(a)("plugins.form.grouping.advanced_parameters.hide")},{default:e.withCtx(()=>[e.createVNode(ow)]),_:1},8,["modelValue","trigger-label"])):e.createCommentVNode("",!0)]),_:1},8,["description","title"])],64)):e.createCommentVNode("",!0),t.editorMode==="code"?(e.openBlock(),e.createBlock(e.unref(le.EntityFormBlock),{key:1,description:e.unref(a)("plugins.form.sections.code_mode.description"),title:e.unref(a)("plugins.form.sections.code_mode.title")},{default:e.withCtx(()=>[e.renderSlot(D.$slots,"code-editor",{},()=>[e.createVNode(tw)],!0)]),_:3},8,["description","title"])):e.createCommentVNode("",!0)]),_:2},1032,["config","data","data-instance-id","data-plugin-name","render-rules","schema"])}}}),[["__scopeId","data-v-c853ac03"]]),iw=e.defineComponent({__name:"AICustomGuardrailForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();return e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(a,i)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:r})=>r==="config.functions"},{default:e.withCtx(r=>[e.createVNode(Qo,e.mergeProps(r,{appearance:{string:{multiline:!0}}}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),lw=e.defineComponent({__name:"ExitTransformerForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();return e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(a,i)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:r})=>r==="config.functions"},{default:e.withCtx(r=>[e.createVNode(en,e.normalizeProps(e.guardReactiveProps(r)),{item:e.withCtx(({fieldName:l})=>[e.createVNode(Ze,{multiline:"",name:l,rows:3},null,8,["name"])]),_:1},16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),sw="__request_callout_";function fc(){return zo(sw)}const _o=Symbol(),cw=e.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(t){const n=t,{formData:o}=We(),a=e.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=e.computed(()=>a.value.map(({[_o]:l,name:s})=>({value:l,label:s}))),r=e.computed(()=>o.config.callouts[n.index]);return e.watch(i,()=>{r.value.depends_on=r.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(e.openBlock(),e.createBlock(Et,{name:t.fieldName},{depends_on:e.withCtx(c=>[e.createVNode(Ct,e.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:e.withCtx(c=>[e.createVNode(Et,e.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:e.withCtx(u=>[e.createVNode(Ct,e.mergeProps(u,{items:e.unref(ra)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),dw=e.defineComponent({__name:"CalloutsForm",setup(t){const{formData:n}=We();function o(){const a=n.config.callouts[n.config.callouts.length-1];a&&(a[_o]=fc())}return(a,i)=>(e.openBlock(),e.createBlock(en,{appearance:"tabs","item-label":r=>r.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:e.withCtx(({index:r,fieldName:l})=>[e.createVNode(cw,{"field-name":l,index:r},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),uw=e.defineComponent({__name:"ConfigForm",setup(t){return(n,o)=>(e.openBlock(),e.createBlock(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(dw),e.createVNode(Et,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),e.createVNode(Et,{appearance:"card",name:"cache"},{redis:e.withCtx(a=>[e.createVNode(Et,e.mergeProps(a,{"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}))}}),pw=_e(e.defineComponent({__name:"RequestCalloutForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);const{i18n:{t:a}}=De();function i(u,f=!1){return u.reduce((d,{[_o]:p,name:m})=>(f?d[m]=p:d[p]=m,d),{})}function r(){const u={},f=["service-id","route-id","consumer-id","consumer_group-id"];for(const d of f)if(n.formModel[d]){const p=d.split("-")[0];p&&(u[p]={id:n.formModel[d]})}return u}function l(u){var d;const f=Sn(u);if((d=f.config)!=null&&d.callouts){const{callouts:p}=f.config;p.forEach(g=>{g.request.body.custom=g.request.body.custom??{},g[_o]=fc()});const m=i(p,!0);p.forEach(g=>{g.depends_on=g.depends_on.map(y=>m[y])})}return n.isEditing?f:{...f,...r()}}const s={hasValue:u=>!!u&&Object.keys(u).length>0,prepareFormData:l};function c(u,f){var m;if(!u)return;const d=Sn(u);if(!((m=d.config)!=null&&m.callouts)){n.onFormChange(d,f);return}const p=i(d.config.callouts);d.config.callouts=d.config.callouts.map(g=>{const{[_o]:y,depends_on:C,...b}=g;return{depends_on:C.map(h=>p[h]).filter(h=>h!=null),...b}}),n.onFormChange(d,f)}return(u,f)=>(e.openBlock(),e.createBlock(Wt,e.mergeProps(n,{"form-config":s,"on-form-change":c}),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:d})=>d.endsWith("by_lua")},{default:e.withCtx(d=>[e.createVNode(Ze,e.mergeProps(d,{autosize:"",class:"rc-code",multiline:"",placeholder:e.unref(a)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),e.createVNode(Gt,{match:({path:d})=>["cluster_nodes","sentinel_nodes"].some(p=>d.endsWith(p))},{default:e.withCtx(d=>[e.createVNode(en,e.mergeProps(d,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(uw)]),_:1},16))}}),[["__scopeId","data-v-957a190f"]]),fw={key:1},mw=["innerHTML"],gw={class:"horizontal-container"},mc=_e(e.defineComponent({__name:"RadioField",props:{labelAttributes:{},multiple:{type:Boolean},items:{},label:{},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=n,a=e.createPropsRestProxy(t,["name","items"]),{getSelectItems:i}=We(),r=pt(e.toRef(()=>t.name)),l=wt(r.path,a),s=e.computed(()=>t.items?t.items:r.path?i(r.path.value):[]),c=u=>{r.value&&(r.value.value=u),o("update:modelValue",u)};return(u,f)=>{var m;const d=e.resolveComponent("KAlert"),p=e.resolveComponent("KLabel");return e.unref(r).error?(e.openBlock(),e.createBlock(d,{key:0,appearance:"danger",message:e.unref(r).error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",fw,[e.createVNode(p,e.normalizeProps(e.guardReactiveProps(e.unref(l).labelAttributes)),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l).label)+" ",1)]),_:2},[(m=e.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,mw)]),key:"0"}:void 0]),1040),e.createElementVNode("div",gw,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,g=>(e.openBlock(),e.createBlock(e.unref(Oe.KRadio),{key:g.value,"model-value":e.unref(r).value.value,"onUpdate:modelValue":[f[0]||(f[0]=y=>e.unref(r).value.value=y),c],"card-orientation":"horizontal",label:g.label,"selected-value":g.value},null,8,["model-value","label","selected-value"]))),128))])],512)),[[e.vShow,!e.unref(r).hide.value]])}}}),[["__scopeId","data-v-910a1c85"]]),hw={class:"sp-form-request-limits-subtitle"},yw={class:"sp-form-request-limits-content"},_w={class:"sp-form-window-type"},bw={class:"sp-form-request-limits-items"},kw={class:"sp-form-request-limits-row"},ww=["id"],Cw={class:"sp-form-request-limits-actions"},Ew={key:0,class:"sp-form-request-limits-examples"},Nw={class:"sp-form-request-limits-examples-badges"},Aa="config.window_type",xw=_e(e.defineComponent({__name:"RequestLimitsForm",setup(t){var C;const{t:n}=it.createI18n("en-us",ct),{formData:o,getSelectItems:a,getSchema:i}=We(),r=e.computed(()=>{var h,E;const b=(E=(h=o.config)==null?void 0:h.limit)==null?void 0:E.map((k,_)=>{var w,x;return{limit:k,windowSize:(x=(w=o.config)==null?void 0:w.window_size)==null?void 0:x[_]}});return!Array.isArray(b)||b.length===0?[{limit:null,windowSize:null}]:b}),{getKey:l}=os("request-limits",r),s=b=>{var h,E;p.value=void 0,o.config&&((h=o.config.limit)!=null&&h.length||(o.config.limit=[null]),(E=o.config.window_size)!=null&&E.length||(o.config.window_size=[null]),o.config.limit.splice(b+1,0,null),o.config.window_size.splice(b+1,0,null))},c=b=>{o.config&&(o.config.limit.splice(b,1),o.config.window_size.splice(b,1))},u=(C=i(Aa))==null?void 0:C.default,f=e.computed(()=>Ko(o,Aa)),d=e.computed(()=>a(Aa).sort((b,h)=>b.value===u?-1:h.value===u?1:0)),p=e.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=e.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),y=(b,h)=>{if(h===p.value){e.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}e.nextTick(()=>{p.value=h}),o.config.limit=[b.config.limit],o.config.window_size=[b.config.window_size]};return(b,h)=>{const E=e.resolveComponent("KLabel"),k=e.resolveComponent("KButton"),_=e.resolveComponent("KBadge"),w=e.resolveComponent("KTooltip"),x=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(x,{class:"sp-form-request-limits"},{title:e.withCtx(()=>[e.createVNode(E,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("sp.request_limits.title")),1)]),_:1}),e.createElementVNode("div",hw,e.toDisplayString(e.unref(n)("sp.request_limits.subtitle")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",yw,[e.createElementVNode("div",_w,[e.createVNode(mc,{items:d.value,label:e.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":h[0]||(h[0]=O=>p.value=void 0)},null,8,["items","label"])]),e.createElementVNode("div",bw,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(O,v)=>(e.openBlock(),e.createElementBlock("div",{key:e.unref(l)(O,v)},[e.createVNode(E,{for:`sp-form-request-limits-item-${v}-legend`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("sp.request_limits.label_index",{index:v+1})),1)]),_:2},1032,["for"]),e.createElementVNode("div",kw,[e.createElementVNode("legend",{id:`sp-form-request-limits-item-${v}-legend`,class:"sp-form-request-limits-inputs"},[e.createVNode(qt,{name:`$.config.limit.${v}`,placeholder:e.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.request_limits.interval_determiner")),1),e.createVNode(qt,{name:`$.config.window_size.${v}`,placeholder:e.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.request_limits.seconds")),1)],8,ww),e.createElementVNode("div",Cw,[e.createVNode(k,{appearance:"tertiary",disabled:r.value.length<=1,onClick:()=>c(v)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.RemoveIcon))]),_:1},8,["disabled","onClick"]),e.createVNode(k,{appearance:"tertiary",onClick:()=>s(v)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(e.openBlock(),e.createElementBlock("div",Ew,[e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.start_with_a_use_case")),1),e.createElementVNode("div",Nw,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(O,v)=>(e.openBlock(),e.createBlock(w,{key:`use-case-${v}`,"max-width":"300"},{content:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(O.description),1),h[1]||(h[1]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.request_limits.label"))+": "+e.toDisplayString(O.config.limit),1),e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.request_limits.time_interval"))+": "+e.toDisplayString(O.config.window_size),1)]),default:e.withCtx(()=>[e.createVNode(_,{appearance:p.value===`${f.value}-${v}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>y(O,`${f.value}-${v}`)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(O.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-12133d31"]]),Sw={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Aw=_e(e.defineComponent({__name:"ErrorMessageForm",setup(t){const{t:n}=it.createI18n("en-us",ct);return(o,a)=>{const i=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{for:"sp-form-error-legend",info:e.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),e.createElementVNode("legend",Sw,[e.createVNode(qt,{class:"input-error-code",label:"",name:"error_code",placeholder:e.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),a[0]||(a[0]=e.createElementVNode("div",null,":",-1)),e.createVNode(Ze,{class:"input-error-message",label:"",name:"error_message",placeholder:e.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-25eb297d"]]),Iw=e.defineComponent({__name:"RedisField",setup(t){const{formData:n}=We(),o=e.inject(er),a=(o==null?void 0:o.isEditing)||!1;return e.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=a?null:void 0)}),(i,r)=>(e.openBlock(),e.createBlock(Wl,null,{default:e.withCtx(()=>{var l;return[((l=e.unref(n).config)==null?void 0:l.strategy)==="redis"?(e.openBlock(),e.createBlock(cs,{key:0})):e.createCommentVNode("",!0)]}),_:1}))}}),Pw=e.defineComponent({__name:"ConfigForm",setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(xw),e.createVNode(Aw)]),_:1}),e.createVNode(ss,{"hide-general-fields":""},{default:e.withCtx(()=>[e.createVNode(ft,{name:"config.dictionary_name"}),e.createVNode(ft,{name:"config.lock_dictionary_name"}),e.createVNode(ft,{name:"config.strategy"}),e.createVNode(Iw),e.createVNode(ft,{name:"config.namespace"}),e.createVNode(ft,{name:"config.hide_client_headers"}),e.createVNode(ft,{name:"config.disable_penalty"}),e.createVNode(ft,{name:"config.retry_after_jitter_max"}),e.createVNode(ft,{name:"config.sync_rate"})]),_:1})],64))}}),Tw=e.defineComponent({__name:"ServiceProtectionForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);function a(i,r){var l;((l=i.config)==null?void 0:l.namespace)===null&&delete i.config.namespace,n.onFormChange(i,r)}return(i,r)=>(e.openBlock(),e.createBlock(Wt,e.mergeProps(n,{"on-form-change":a}),{default:e.withCtx(()=>[e.createVNode(Pw)]),_:1},16))}}),lr={authenticate:`nodes:
|
|
48
|
+
`:""}var Dk=Lk,Mk={dump:Dk};function xa(t,n){return function(){throw new Error("Function yaml."+t+" is removed in js-yaml 4. Use yaml."+n+" instead, which is now safe by default.")}}var jk=gt,Kk=fs,vk=ys,un=Cs,Uk=Es,qk=ha,Gk=Hs.load,zk=Hs.loadAll,Hk=Mk.dump,Wk=bt,Yk={binary:Is,float:ws,map:hs,null:_s,pairs:Ts,set:Os,timestamp:Ss,bool:bs,int:ks,merge:As,omap:Ps,seq:gs,str:ms},Jk=xa("safeLoad","load"),Xk=xa("safeLoadAll","loadAll"),Zk=xa("safeDump","dump"),Ht={Type:jk,Schema:Kk,FAILSAFE_SCHEMA:vk,JSON_SCHEMA:un,CORE_SCHEMA:Uk,DEFAULT_SCHEMA:qk,load:Gk,loadAll:zk,dump:Hk,YAMLException:Wk,types:Yk,safeLoad:Jk,safeLoadAll:Xk,safeDump:Zk};const Qk={class:"plugin-code-editor","data-testid":"plugin-code-editor"},ew="YAML Syntax",tw=_e(e.defineComponent({__name:"CodeEditor",emits:["change","sourceChange","error"],setup(t,{emit:n}){const{formData:o,setValue:a}=We(),i=n,r=e.shallowRef(null);function l(){return Ht.dump(sn(e.toRaw(o),["__ui_data"]),{schema:un,noArrayIndent:!0})}const s=e.shallowRef(l()),c={scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep",editContext:!1};function u(d){const p=d.getModel();p&&(r.value=d,d.onDidChangeModelContent(()=>{try{const m=Ht.load(d.getValue()||"",{schema:un,json:!0});if(i("sourceChange",d.getValue()),typeof m!="object"||m===null)return;Ao.editor.setModelMarkers(p,ew,[]),a(m),i("change",m)}catch(m){const g=m instanceof Error?m.message:String(m);i("error",g)}}),f())}function f(){const d=r.value,p=d==null?void 0:d.getModel();!d||!p||(d.setPosition(p.getFullModelRange().getEndPosition()),d.focus())}return(d,p)=>(e.openBlock(),e.createElementBlock("div",Qk,[e.createVNode(e.unref(ai.MonacoEditor),{ref:"editor",modelValue:s.value,"onUpdate:modelValue":p[0]||(p[0]=m=>s.value=m),class:"editor",language:"yaml",options:c,theme:"light",onReady:u},null,8,["modelValue"])]))}}),[["__scopeId","data-v-be19e7de"]]),Sa={jqlang:"https://jqlang.org/manual/",condition:"https://developer.konghq.com/gateway/routing/expressions/"},nw={class:"label-content"},ow=_e(e.defineComponent({__name:"ConditionField",setup(t){const n=e.useId(),{i18n:{t:o},i18nT:a}=De();return(i,r)=>{const l=e.resolveComponent("KBadge"),s=e.resolveComponent("KLabel"),c=e.resolveComponent("KExternalLink");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(s,{for:e.unref(n),label:e.unref(o)("plugins.form.fields.condition.label")},{default:e.withCtx(()=>[e.createElementVNode("div",nw,[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.form.fields.condition.label"))+" ",1),e.createVNode(e.unref(Oe.KTooltip),{class:"label-tooltip"},{content:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.form.fields.condition.tooltip")),1)]),default:e.withCtx(()=>[e.createVNode(e.unref(me.InfoIcon),{class:"tooltip-trigger-icon",tabindex:"0"})]),_:1}),e.createVNode(l,{appearance:"decorative",size:"small"},{default:e.withCtx(()=>[...r[0]||(r[0]=[e.createTextVNode(" Beta ",-1)])]),_:1})])]),_:1},8,["for","label"]),e.createVNode(Ze,{"input-id":e.unref(n),label:"",name:"condition",placeholder:e.unref(o)("plugins.form.fields.condition.placeholder")},{help:e.withCtx(()=>[e.createVNode(e.unref(a),{keypath:"plugins.form.fields.condition.help.about"},{link:e.withCtx(()=>[e.createVNode(c,{"hide-icon":"",href:e.unref(Sa).condition},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.form.fields.condition.help.learn")),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["input-id","placeholder"])])}}}),[["__scopeId","data-v-ebaf84a5"]]),rw={class:"radio-group"},aw={key:0,class:"scope-detail"},Wt=_e(e.defineComponent({__name:"StandardLayout",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{default:"form"},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=["config","partials","__ui_data","enabled","protocols","instance_name","condition","tags","consumer","consumer_group","route","service"],o=e.useId(),{i18n:{t:a}}=De(),i=e.createPropsRestProxy(t,["editorMode"]),r=e.inject(er),l=e.useSlots(),s=e.computed(()=>i.formConfig??{hasValue:D=>!!D&&Object.keys(D).length>0,prepareFormData:D=>i.isEditing?D:{...D,...F()}}),c=e.computed(()=>{var D;return(D=f.value)!=null&&D.disabled?{class:"disabled-scope",maxWidth:"300",text:a("plugins.form.scoping.disable_global_radio")}:{class:"scope"}}),u=e.computed(()=>{var D,U;return(D=i.formSchema)!=null&&D.groups?i.formSchema.groups.reduce((q,L)=>{var A,v;const V=L.fields,R=(v=(A=L.collapsible)==null?void 0:A.nestedCollapsible)!=null&&v.fields?V.concat(L.collapsible.nestedCollapsible.fields):V;return q.concat(R)},[]):((U=i.formSchema)==null?void 0:U.fields)||[]}),f=e.computed(()=>u.value.find(D=>D.type==="selectionGroup")),d=e.computed(()=>{var D;return(((D=f.value)==null?void 0:D.fields)||[]).map(({label:U,description:q})=>({label:U,description:q}))}),p=e.computed(()=>{var D,U;return(U=(D=f.value)==null?void 0:D.fields)==null?void 0:U[1]}),m=e.computed(()=>{var D;return(((D=p.value)==null?void 0:D.fields)??[]).map(U=>{var q;return{name:U.model.split("-")[0],entity:U.entity,fields:(q=U.inputValues)==null?void 0:q.fields,label:U.label,placeholder:U.placeholder,help:U.help,disabled:U.disabled,disabledTooltip:U.disabledTooltip,labelField:U.labelField}})}),g=["instance_name","protocols","tags","condition"],y=["config"],C=e.computed(()=>{var L;const D={type:"record",fields:i.schema.fields.filter(V=>y.includes(Object.keys(V)[0]))},U=u.value.find(V=>V.model==="enabled");return[...U?[U]:[],...((L=p.value)==null?void 0:L.fields)??[],...u.value.filter(V=>g.includes(V.model))].forEach(V=>{if(V.type==="AutoSuggest")D.fields.push({[V.model.split("-")[0]]:{type:"foreign",reference:V.entity,description:V.help}});else if(V.model==="enabled")D.fields.push({[V.model]:{type:"boolean",default:!0}});else if(V.model==="instance_name"||V.model==="condition")D.fields.push({[V.model]:{type:"string",description:V.help}});else if(V.model==="protocols")D.fields.push({[V.model]:{type:"set",elements:{type:"string",one_of:V.values.map(R=>R.value)},default:[...V.default],required:V.required,description:V.help,help:V.default?a("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:V.default.join(", ")}):a("plugins.form.fields.protocols.placeholder")}});else if(V.model==="tags")D.fields.push({[V.model]:{type:"set",elements:{type:"string"},description:V.help,default:V.default||[]}});else throw new Error(`Unsupported VFG field type '${V.type}' for model '${V.model}'`)}),D}),b=e.computed(()=>new Set(C.value.fields.map(D=>Object.keys(D)[0]))),h=e.computed(()=>Ol(i.model,n)),E=e.computed(()=>{var D;return((D=p.value)==null?void 0:D.fields.map(U=>U.model))??[]}),k=e.computed(()=>E.value.map(D=>D.split("-")[0])),_=e.ref(i.isEditing?Ol(h.value,k.value):F()),w=e.ref(Object.values(_.value).some(P)),x=e.useTemplateRef("form");let O=!1;function K(){if(!x.value)return;const{getRawValue:D,setValue:U}=x.value,L={...D()};w.value?k.value.forEach(V=>{L[V]=_.value[V]??null}):k.value.forEach(V=>{L[V]=null}),O=!0,U(L),e.nextTick(()=>{O=!1})}function I(D){if(O||S(D),t.editorMode==="code"){const U=k.value.some(q=>P(D[q]));U!==w.value&&(w.value=U)}i.onFormChange(D,n)}function S(D){k.value.forEach(U=>{const q=D[U];Go(q,"id")&&q.id!=null?_.value[U]=q:_.value[U]=null})}function P(D){return Go(D,"id")&&D.id!=null}function F(){const D={};return E.value.forEach(U=>{if(i.formModel[U]){const q=U.split("-")[0];if(!q)return;D[q]={id:i.formModel[U]}}}),D}By(C,o);const T=e.ref(!0);return(D,U)=>{const q=e.resolveComponent("KCollapse");return e.openBlock(),e.createBlock(mt,{ref:"form",class:"ff-standard-layout",config:s.value,data:h.value,"data-instance-id":e.unref(o),"data-plugin-name":t.pluginName,"data-testid":"ff-standard-layout-form","render-rules":t.renderRules,schema:C.value,tag:"div",onChange:I},{[e.unref(Mn)]:e.withCtx(()=>[e.createVNode(Gt,{match:({path:L})=>{var V,R;return L===((R=(V=e.unref(r))==null?void 0:V.redisPath)==null?void 0:R.value)}},{default:e.withCtx(()=>[e.createVNode(cs)]),_:1},8,["match"]),e.renderSlot(D.$slots,"field-renderers",{},void 0,!0)]),default:e.withCtx(()=>[t.editorMode==="form"?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createVNode(e.unref(le.EntityFormBlock),{"data-testid":"form-section-plugin-scope",description:t.generalInfoDescription??e.unref(a)("plugins.form.sections.plugin_scope.description"),step:1,title:t.generalInfoTitle??e.unref(a)("plugins.form.sections.plugin_scope.title")},e.createSlots({default:e.withCtx(()=>{var L;return[(e.openBlock(),e.createBlock(e.resolveDynamicComponent((L=f.value)!=null&&L.disabled?e.unref(Oe.KTooltip):"div"),e.normalizeProps(e.guardReactiveProps(c.value)),{default:e.withCtx(()=>{var V,R;return[e.createElementVNode("div",rw,[e.createVNode(e.unref(Oe.KRadio),e.mergeProps({modelValue:w.value,"onUpdate:modelValue":U[0]||(U[0]=A=>w.value=A),card:"","card-orientation":"horizontal"},d.value[0],{disabled:(V=f.value)==null?void 0:V.disabled,"selected-value":!1,"onUpdate:modelValue":K}),null,16,["modelValue","disabled"]),d.value[1]?(e.openBlock(),e.createBlock(e.unref(Oe.KRadio),e.mergeProps({key:0,modelValue:w.value,"onUpdate:modelValue":U[1]||(U[1]=A=>w.value=A),card:"","card-orientation":"horizontal"},d.value[1],{disabled:(R=f.value)==null?void 0:R.disabled,"selected-value":!0,"onUpdate:modelValue":K}),null,16,["modelValue","disabled"])):e.createCommentVNode("",!0)])]}),_:1},16)),p.value?e.withDirectives((e.openBlock(),e.createElementBlock("div",aw,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.value,V=>(e.openBlock(),e.createBlock(b_,{key:V.name,disabled:V.disabled,"disabled-tooltip":V.disabledTooltip,entity:V.entity,fields:V.fields,help:V.help,label:V.label,"label-field":V.labelField,name:V.name,placeholder:V.placeholder},null,8,["disabled","disabled-tooltip","entity","fields","help","label","label-field","name","placeholder"]))),128))],512)),[[e.vShow,w.value]]):e.createCommentVNode("",!0)]}),_:2},[l["general-info-title"]?{name:"title",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"general-info-title",{},void 0,!0)]),key:"0"}:void 0,l["general-info-description"]?{name:"description",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"general-info-description",{},void 0,!0)]),key:"1"}:void 0,l["general-info-extra"]?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"general-info-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),e.createVNode(e.unref(le.EntityFormBlock),{"data-testid":"form-section-plugin-config",description:t.pluginConfigDescription??e.unref(a)("plugins.form.sections.plugin_config.description"),step:2,title:t.pluginConfigTitle??e.unref(a)("plugins.form.sections.plugin_config.title")},e.createSlots({default:e.withCtx(()=>[e.renderSlot(D.$slots,"default",{},void 0,!0)]),_:2},[l["plugin-config-title"]?{name:"title",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"plugin-config-title",{},void 0,!0)]),key:"0"}:void 0,l["plugin-config-description"]?{name:"description",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"plugin-config-description",{},void 0,!0)]),key:"1"}:void 0,l["plugin-config-extra"]?{name:"extra",fn:e.withCtx(()=>[e.renderSlot(D.$slots,"plugin-config-extra",{},void 0,!0)]),key:"2"}:void 0]),1032,["description","title"]),e.createVNode(e.unref(le.EntityFormBlock),{"data-testid":"form-section-general-info",description:e.unref(a)("plugins.form.sections.plugin_general_info.description"),step:3,title:e.unref(a)("plugins.form.sections.general_info.title")},{default:e.withCtx(()=>[b.value.has("enabled")?(e.openBlock(),e.createBlock(h_,{key:0,"disabled-text":e.unref(a)("plugins.form.fields.plugin_status.text_off"),"enabled-text":e.unref(a)("plugins.form.fields.plugin_status.text_on"),label:e.unref(a)("plugins.form.fields.plugin_status.label"),name:"enabled"},null,8,["disabled-text","enabled-text","label"])):e.createCommentVNode("",!0),b.value.has("instance_name")?(e.openBlock(),e.createBlock(Ze,{key:1,label:e.unref(a)("plugins.form.fields.instance_name.label"),name:"instance_name",placeholder:e.unref(a)("plugins.form.fields.instance_name.placeholder")},null,8,["label","placeholder"])):e.createCommentVNode("",!0),b.value.has("tags")?(e.openBlock(),e.createBlock(Xo,{key:2,help:e.unref(a)("plugins.form.fields.tags.help"),name:"tags",placeholder:e.unref(a)("plugins.form.fields.tags.placeholder")},null,8,["help","placeholder"])):e.createCommentVNode("",!0),b.value.has("protocols")?(e.openBlock(),e.createBlock(ft,{key:3,name:"protocols"})):e.createCommentVNode("",!0),C.value.fields.find(L=>Object.keys(L)[0]==="condition")?(e.openBlock(),e.createBlock(q,{key:4,modelValue:T.value,"onUpdate:modelValue":U[2]||(U[2]=L=>T.value=L),"data-testid":"view-general-info-additional-settings","trigger-label":T.value?e.unref(a)("plugins.form.grouping.advanced_parameters.view"):e.unref(a)("plugins.form.grouping.advanced_parameters.hide")},{default:e.withCtx(()=>[e.createVNode(ow)]),_:1},8,["modelValue","trigger-label"])):e.createCommentVNode("",!0)]),_:1},8,["description","title"])],64)):e.createCommentVNode("",!0),t.editorMode==="code"?(e.openBlock(),e.createBlock(e.unref(le.EntityFormBlock),{key:1,description:e.unref(a)("plugins.form.sections.code_mode.description"),title:e.unref(a)("plugins.form.sections.code_mode.title")},{default:e.withCtx(()=>[e.renderSlot(D.$slots,"code-editor",{},()=>[e.createVNode(tw)],!0)]),_:3},8,["description","title"])):e.createCommentVNode("",!0)]),_:2},1032,["config","data","data-instance-id","data-plugin-name","render-rules","schema"])}}}),[["__scopeId","data-v-47d85a38"]]),iw=e.defineComponent({__name:"AICustomGuardrailForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();return e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(a,i)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:r})=>r==="config.functions"},{default:e.withCtx(r=>[e.createVNode(Qo,e.mergeProps(r,{appearance:{string:{multiline:!0}}}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),lw=e.defineComponent({__name:"ExitTransformerForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();return e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(a,i)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:r})=>r==="config.functions"},{default:e.withCtx(r=>[e.createVNode(en,e.normalizeProps(e.guardReactiveProps(r)),{item:e.withCtx(({fieldName:l})=>[e.createVNode(Ze,{multiline:"",name:l,rows:3},null,8,["name"])]),_:1},16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),sw="__request_callout_";function fc(){return zo(sw)}const _o=Symbol(),cw=e.defineComponent({__name:"CalloutForm",props:{index:{},fieldName:{}},setup(t){const n=t,{formData:o}=We(),a=e.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=e.computed(()=>a.value.map(({[_o]:l,name:s})=>({value:l,label:s}))),r=e.computed(()=>o.config.callouts[n.index]);return e.watch(i,()=>{r.value.depends_on=r.value.depends_on.filter(l=>i.value.some(s=>s.value===l))}),(l,s)=>(e.openBlock(),e.createBlock(Et,{name:t.fieldName},{depends_on:e.withCtx(c=>[e.createVNode(Ct,e.mergeProps(c,{items:i.value,multiple:"",required:!1}),null,16,["items"])]),request:e.withCtx(c=>[e.createVNode(Et,e.mergeProps(c,{"fields-order":["url","method","headers","query","body","http_opts","error","by_lua"]}),{method:e.withCtx(u=>[e.createVNode(Ct,e.mergeProps(u,{items:e.unref(ra)(["GET","POST","PUT","DELETE","PATCH","HEAD","OPTIONS","CONNECT","TRACE"])}),null,16,["items"])]),_:1},16)]),_:1},8,["name"]))}}),dw=e.defineComponent({__name:"CalloutsForm",setup(t){const{formData:n}=We();function o(){const a=n.config.callouts[n.config.callouts.length-1];a&&(a[_o]=fc())}return(a,i)=>(e.openBlock(),e.createBlock(en,{appearance:"tabs","item-label":r=>r.name||"New callout",name:"callouts",required:"","sticky-tabs":"",onAdd:o},{item:e.withCtx(({index:r,fieldName:l})=>[e.createVNode(cw,{"field-name":l,index:r},null,8,["field-name","index"])]),_:1},8,["item-label"]))}}),uw=e.defineComponent({__name:"ConfigForm",setup(t){return(n,o)=>(e.openBlock(),e.createBlock(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(dw),e.createVNode(Et,{appearance:"card","fields-order":["headers","query","body","by_lua"],name:"upstream"}),e.createVNode(Et,{appearance:"card",name:"cache"},{redis:e.withCtx(a=>[e.createVNode(Et,e.mergeProps(a,{"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}))}}),pw=_e(e.defineComponent({__name:"RequestCalloutForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);const{i18n:{t:a}}=De();function i(u,f=!1){return u.reduce((d,{[_o]:p,name:m})=>(f?d[m]=p:d[p]=m,d),{})}function r(){const u={},f=["service-id","route-id","consumer-id","consumer_group-id"];for(const d of f)if(n.formModel[d]){const p=d.split("-")[0];p&&(u[p]={id:n.formModel[d]})}return u}function l(u){var d;const f=Sn(u);if((d=f.config)!=null&&d.callouts){const{callouts:p}=f.config;p.forEach(g=>{g.request.body.custom=g.request.body.custom??{},g[_o]=fc()});const m=i(p,!0);p.forEach(g=>{g.depends_on=g.depends_on.map(y=>m[y])})}return n.isEditing?f:{...f,...r()}}const s={hasValue:u=>!!u&&Object.keys(u).length>0,prepareFormData:l};function c(u,f){var m;if(!u)return;const d=Sn(u);if(!((m=d.config)!=null&&m.callouts)){n.onFormChange(d,f);return}const p=i(d.config.callouts);d.config.callouts=d.config.callouts.map(g=>{const{[_o]:y,depends_on:C,...b}=g;return{depends_on:C.map(h=>p[h]).filter(h=>h!=null),...b}}),n.onFormChange(d,f)}return(u,f)=>(e.openBlock(),e.createBlock(Wt,e.mergeProps(n,{"form-config":s,"on-form-change":c}),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:d})=>d.endsWith("by_lua")},{default:e.withCtx(d=>[e.createVNode(Ze,e.mergeProps(d,{autosize:"",class:"rc-code",multiline:"",placeholder:e.unref(a)("plugins.free-form.request-callout.by_lua_placeholder")}),null,16,["placeholder"])]),_:1},8,["match"]),e.createVNode(Gt,{match:({path:d})=>["cluster_nodes","sentinel_nodes"].some(p=>d.endsWith(p))},{default:e.withCtx(d=>[e.createVNode(en,e.mergeProps(d,{appearance:"card"}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(uw)]),_:1},16))}}),[["__scopeId","data-v-252de1af"]]),fw={key:1},mw=["innerHTML"],gw={class:"horizontal-container"},mc=_e(e.defineComponent({__name:"RadioField",props:{labelAttributes:{},multiple:{type:Boolean},items:{},label:{},autofocus:{type:Boolean},name:{}},emits:["update:modelValue"],setup(t,{emit:n}){const o=n,a=e.createPropsRestProxy(t,["name","items"]),{getSelectItems:i}=We(),r=pt(e.toRef(()=>t.name)),l=wt(r.path,a),s=e.computed(()=>t.items?t.items:r.path?i(r.path.value):[]),c=u=>{r.value&&(r.value.value=u),o("update:modelValue",u)};return(u,f)=>{var m;const d=e.resolveComponent("KAlert"),p=e.resolveComponent("KLabel");return e.unref(r).error?(e.openBlock(),e.createBlock(d,{key:0,appearance:"danger",message:e.unref(r).error.message},null,8,["message"])):e.withDirectives((e.openBlock(),e.createElementBlock("div",fw,[e.createVNode(p,e.normalizeProps(e.guardReactiveProps(e.unref(l).labelAttributes)),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l).label)+" ",1)]),_:2},[(m=e.unref(l).labelAttributes)!=null&&m.info?{name:"tooltip",fn:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:e.unref(l).labelAttributes.info},null,8,mw)]),key:"0"}:void 0]),1040),e.createElementVNode("div",gw,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,g=>(e.openBlock(),e.createBlock(e.unref(Oe.KRadio),{key:g.value,"model-value":e.unref(r).value.value,"onUpdate:modelValue":[f[0]||(f[0]=y=>e.unref(r).value.value=y),c],"card-orientation":"horizontal",label:g.label,"selected-value":g.value},null,8,["model-value","label","selected-value"]))),128))])],512)),[[e.vShow,!e.unref(r).hide.value]])}}}),[["__scopeId","data-v-7c0483f3"]]),hw={class:"sp-form-request-limits-subtitle"},yw={class:"sp-form-request-limits-content"},_w={class:"sp-form-window-type"},bw={class:"sp-form-request-limits-items"},kw={class:"sp-form-request-limits-row"},ww=["id"],Cw={class:"sp-form-request-limits-actions"},Ew={key:0,class:"sp-form-request-limits-examples"},Nw={class:"sp-form-request-limits-examples-badges"},Aa="config.window_type",xw=_e(e.defineComponent({__name:"RequestLimitsForm",setup(t){var C;const{t:n}=it.createI18n("en-us",ct),{formData:o,getSelectItems:a,getSchema:i}=We(),r=e.computed(()=>{var h,E;const b=(E=(h=o.config)==null?void 0:h.limit)==null?void 0:E.map((k,_)=>{var w,x;return{limit:k,windowSize:(x=(w=o.config)==null?void 0:w.window_size)==null?void 0:x[_]}});return!Array.isArray(b)||b.length===0?[{limit:null,windowSize:null}]:b}),{getKey:l}=os("request-limits",r),s=b=>{var h,E;p.value=void 0,o.config&&((h=o.config.limit)!=null&&h.length||(o.config.limit=[null]),(E=o.config.window_size)!=null&&E.length||(o.config.window_size=[null]),o.config.limit.splice(b+1,0,null),o.config.window_size.splice(b+1,0,null))},c=b=>{o.config&&(o.config.limit.splice(b,1),o.config.window_size.splice(b,1))},u=(C=i(Aa))==null?void 0:C.default,f=e.computed(()=>vo(o,Aa)),d=e.computed(()=>a(Aa).sort((b,h)=>b.value===u?-1:h.value===u?1:0)),p=e.ref(),m={fixed:[{label:n("sp.use_cases.fixed.hourly_500.label"),description:n("sp.use_cases.fixed.hourly_500.description"),config:{limit:500,window_size:3600}},{label:n("sp.use_cases.fixed.half_hourly_200.label"),description:n("sp.use_cases.fixed.half_hourly_200.description"),config:{limit:200,window_size:1800}},{label:n("sp.use_cases.fixed.daily_500.label"),description:n("sp.use_cases.fixed.daily_500.description"),config:{limit:500,window_size:86400}}],sliding:[{label:n("sp.use_cases.sliding.hourly_100.label"),description:n("sp.use_cases.sliding.hourly_100.description"),config:{limit:100,window_size:3600}},{label:n("sp.use_cases.sliding.half_hourly_300.label"),description:n("sp.use_cases.sliding.half_hourly_300.description"),config:{limit:300,window_size:1800}},{label:n("sp.use_cases.sliding.hourly_500.label"),description:n("sp.use_cases.sliding.hourly_500.description"),config:{limit:500,window_size:3600}}]},g=e.computed(()=>Object.prototype.hasOwnProperty.call(m,f.value)?m[f.value]:[]),y=(b,h)=>{if(h===p.value){e.nextTick(()=>{p.value=void 0}),o.config.limit=[],o.config.window_size=[];return}e.nextTick(()=>{p.value=h}),o.config.limit=[b.config.limit],o.config.window_size=[b.config.window_size]};return(b,h)=>{const E=e.resolveComponent("KLabel"),k=e.resolveComponent("KButton"),_=e.resolveComponent("KBadge"),w=e.resolveComponent("KTooltip"),x=e.resolveComponent("KCard");return e.openBlock(),e.createBlock(x,{class:"sp-form-request-limits"},{title:e.withCtx(()=>[e.createVNode(E,{class:"sp-form-request-limits-title",for:"sp-form-request-limits-legend",required:""},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("sp.request_limits.title")),1)]),_:1}),e.createElementVNode("div",hw,e.toDisplayString(e.unref(n)("sp.request_limits.subtitle")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",yw,[e.createElementVNode("div",_w,[e.createVNode(mc,{items:d.value,label:e.unref(n)("sp.window_type.label"),name:"window_type","onUpdate:modelValue":h[0]||(h[0]=O=>p.value=void 0)},null,8,["items","label"])]),e.createElementVNode("div",bw,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,(O,K)=>(e.openBlock(),e.createElementBlock("div",{key:e.unref(l)(O,K)},[e.createVNode(E,{for:`sp-form-request-limits-item-${K}-legend`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("sp.request_limits.label_index",{index:K+1})),1)]),_:2},1032,["for"]),e.createElementVNode("div",kw,[e.createElementVNode("legend",{id:`sp-form-request-limits-item-${K}-legend`,class:"sp-form-request-limits-inputs"},[e.createVNode(qt,{name:`$.config.limit.${K}`,placeholder:e.unref(n)("sp.request_limits.request_number")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.request_limits.interval_determiner")),1),e.createVNode(qt,{name:`$.config.window_size.${K}`,placeholder:e.unref(n)("sp.request_limits.time_interval")},null,8,["name","placeholder"]),e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.request_limits.seconds")),1)],8,ww),e.createElementVNode("div",Cw,[e.createVNode(k,{appearance:"tertiary",disabled:r.value.length<=1,onClick:()=>c(K)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.RemoveIcon))]),_:1},8,["disabled","onClick"]),e.createVNode(k,{appearance:"tertiary",onClick:()=>s(K)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon))]),_:1},8,["onClick"])])])]))),128))]),g.value.length>0?(e.openBlock(),e.createElementBlock("div",Ew,[e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.start_with_a_use_case")),1),e.createElementVNode("div",Nw,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(g.value,(O,K)=>(e.openBlock(),e.createBlock(w,{key:`use-case-${K}`,"max-width":"300"},{content:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(O.description),1),h[1]||(h[1]=e.createElementVNode("br",null,null,-1)),e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.request_limits.label"))+": "+e.toDisplayString(O.config.limit),1),e.createElementVNode("div",null,e.toDisplayString(e.unref(n)("sp.request_limits.time_interval"))+": "+e.toDisplayString(O.config.window_size),1)]),default:e.withCtx(()=>[e.createVNode(_,{appearance:p.value===`${f.value}-${K}`?"info":"decorative",class:"sp-form-request-limits-examples-badge",onClick:()=>y(O,`${f.value}-${K}`)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(O.label),1)]),_:2},1032,["appearance","onClick"])]),_:2},1024))),128))])])):e.createCommentVNode("",!0)])]),_:1})}}}),[["__scopeId","data-v-f75e20d7"]]),Sw={id:"sp-form-error-legend",class:"sp-form-error-inputs"},Aw=_e(e.defineComponent({__name:"ErrorMessageForm",setup(t){const{t:n}=it.createI18n("en-us",ct);return(o,a)=>{const i=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(i,{for:"sp-form-error-legend",info:e.unref(n)("sp.error_message.help"),required:"","tooltip-attributes":{maxWidth:"300",placement:"top"}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("sp.error_message.label")),1)]),_:1},8,["info"]),e.createElementVNode("legend",Sw,[e.createVNode(qt,{class:"input-error-code",label:"",name:"error_code",placeholder:e.unref(n)("sp.error_message.code_placeholder")},null,8,["placeholder"]),a[0]||(a[0]=e.createElementVNode("div",null,":",-1)),e.createVNode(Ze,{class:"input-error-message",label:"",name:"error_message",placeholder:e.unref(n)("sp.error_message.message_placeholder")},null,8,["placeholder"])])])}}}),[["__scopeId","data-v-ac611c44"]]),Iw=e.defineComponent({__name:"RedisField",setup(t){const{formData:n}=We(),o=e.inject(er),a=(o==null?void 0:o.isEditing)||!1;return e.watchEffect(()=>{n.config&&n.config.strategy!=="redis"&&(n.partials=a?null:void 0)}),(i,r)=>(e.openBlock(),e.createBlock(Wl,null,{default:e.withCtx(()=>{var l;return[((l=e.unref(n).config)==null?void 0:l.strategy)==="redis"?(e.openBlock(),e.createBlock(cs,{key:0})):e.createCommentVNode("",!0)]}),_:1}))}}),Pw=e.defineComponent({__name:"ConfigForm",setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"},{default:e.withCtx(()=>[e.createVNode(xw),e.createVNode(Aw)]),_:1}),e.createVNode(ss,{"hide-general-fields":""},{default:e.withCtx(()=>[e.createVNode(ft,{name:"config.dictionary_name"}),e.createVNode(ft,{name:"config.lock_dictionary_name"}),e.createVNode(ft,{name:"config.strategy"}),e.createVNode(Iw),e.createVNode(ft,{name:"config.namespace"}),e.createVNode(ft,{name:"config.hide_client_headers"}),e.createVNode(ft,{name:"config.disable_penalty"}),e.createVNode(ft,{name:"config.retry_after_jitter_max"}),e.createVNode(ft,{name:"config.sync_rate"})]),_:1})],64))}}),Tw=e.defineComponent({__name:"ServiceProtectionForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);function a(i,r){var l;((l=i.config)==null?void 0:l.namespace)===null&&delete i.config.namespace,n.onFormChange(i,r)}return(i,r)=>(e.openBlock(),e.createBlock(Wt,e.mergeProps(n,{"on-form-change":a}),{default:e.withCtx(()=>[e.createVNode(Pw)]),_:1},16))}}),lr={authenticate:`nodes:
|
|
49
49
|
- name: STATIC_INPUTS
|
|
50
50
|
type: static
|
|
51
51
|
values:
|
|
@@ -205,5 +205,5 @@ nodes:
|
|
|
205
205
|
type: exit
|
|
206
206
|
input: API
|
|
207
207
|
status: 200
|
|
208
|
-
`};function bo(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}const Ow=[{name:"decK",extract(t){try{const n=Ht.load(t);return bo(n)&&Array.isArray(n.plugins)&&n.plugins.find(a=>bo(a)&&a.name==="datakit")||null}catch{return null}}},{name:"KIC",extract(t){let n=t;const o=t.match(/echo\s+(?:"([\s\S]*?)"|'([\s\S]*?)')\s*\|\s*kubectl/);o&&(n=o[1]||o[2]);try{const a=Ht.load(n);if(!bo(a))return null;const i=bo(a.metadata)?a.metadata:{},r=a.plugin||i.name;return(a.kind==="KongPlugin"||a.kind==="KongClusterPlugin")&&r==="datakit"&&a||null}catch{return null}}},{name:"cURL",extract(t){if(!t.trim().startsWith("curl"))return null;const n=t.match(/(?:--data|-d)\s+(?:'((?:[^'\\]|\\[\s\S])*)'|"((?:[^"\\]|\\[\s\S])*)")/);if(!n)return null;let o=n[1]||n[2];n[2]&&(o=o.replace(/\\(["\\])/g,"$1"));try{const a=JSON.parse(o);return bo(a)&&a.name==="datakit"&&a||null}catch{return null}}}],Vw={class:"dk-code-editor"},Bw={class:"examples-content"},Ia="YAML Syntax",Rw=_e(e.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(t,{expose:n,emit:o}){const{t:a}=it.createI18n("en-us",ct),{formData:i,setValue:r}=We(),l=o,{getMessageFromError:s}=le.useErrors(),c=e.shallowRef(null);function u(_){return Ht.dump(e.toRaw(_),{schema:un,noArrayIndent:!0})}function f(){return u(sn(i,["__ui_data"]))}const d=e.shallowRef(f()),p={scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep",editContext:!1};function m(_){const w=_.getModel();w&&(c.value=_,_.onDidChangeModelContent(()=>{try{const x=Ht.load(_.getValue()||"",{schema:un,json:!0});if(typeof x!="object"||x===null)return;Ao.editor.setModelMarkers(w,Ia,[]),r(x),l("change",x)}catch(x){const{message:O,mark:
|
|
209
|
-
`)[0],F=[{startLineNumber:I+1,startColumn:S+1,endLineNumber:I+1,endColumn:S+2,message:P,severity:Ao.MarkerSeverity.Error,source:Ia}];Ao.editor.setModelMarkers(w,Ia,F),l("error",P)}}),_.onDidPaste(x=>{const O=_.getModel();if(!O)return;const v=O.getValueInRange(x.range);for(const I of Ow){const S=I.extract(v);if(S){y.value=S,C.value=I.name,g.value=!0;return}}}),k())}const g=e.shallowRef(!1),y=e.shallowRef(null),C=e.shallowRef("");function b(){g.value=!1,y.value=null,C.value=""}function h(){y.value&&(d.value=u(y.value),b())}function E(_){const w=lr[_];try{const x=Ht.load(d.value,{schema:un,json:!0}),O=Ht.load(w,{schema:un,json:!0});if(typeof x=="object"&&x!==null&&Vt(x.config,O))return;const v=sn({...i,config:{...O}},["__ui_data"]);d.value=u(v)}catch(x){l("error",s(x))}k()}function k(){const _=c.value,w=_==null?void 0:_.getModel();!_||!w||(_.setPosition(w.getFullModelRange().getEndPosition()),_.focus())}return n({setExampleCode:E}),(_,w)=>(e.openBlock(),e.createElementBlock("div",Vw,[e.createVNode(e.unref(Oe.KAlert),{class:"examples"},{icon:e.withCtx(()=>[e.createVNode(e.unref(me.SparklesIcon))]),default:e.withCtx(()=>[e.createElementVNode("div",Bw,[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.description_example"))+" ",1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(lr),(x,O)=>(e.openBlock(),e.createBlock(e.unref(Oe.KButton),{key:O,appearance:"secondary",size:"small",onClick:v=>E(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)(`plugins.free-form.datakit.examples.${O}`)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),e.createVNode(e.unref(ai.MonacoEditor),{ref:"editor",modelValue:d.value,"onUpdate:modelValue":w[0]||(w[0]=x=>d.value=x),appearance:"standalone",class:"editor",language:"yaml",options:p,theme:"light",onReady:m},null,8,["modelValue"]),e.createVNode(e.unref(Oe.KModal),{"action-button-text":e.unref(a)("plugins.free-form.datakit.detected_config_format_confirm"),title:e.unref(a)("plugins.free-form.datakit.detected_config_format_title"),visible:g.value,onCancel:b,onProceed:h},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.detected_config_format",{format:C.value})),1)]),_:1},8,["action-button-text","title","visible"])]))}}),[["__scopeId","data-v-46afee5d"]]),gc=["request","service_request","service_response","response","vault"],zn=gc,hc=["call","jq","exit","property","static","branch","cache","xml_to_json","json_to_xml","jwt_decode","jwt_sign","jwt_verify"],yc=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Pa=["EdDSA","ES256","ES384","ES512","HS256","HS384","HS512","PS256","PS384","PS512","RS256","RS384","RS512"],$w={},Fw={height:"16",viewBox:"0 -960 960 960",width:"16",xmlns:"http://www.w3.org/2000/svg"};function Lw(t,n){return e.openBlock(),e.createElementBlock("svg",Fw,[...n[0]||(n[0]=[e.createElementVNode("path",{d:"M240-160h480v-400H240v400Zm296.5-143.5Q560-327 560-360t-23.5-56.5Q513-440 480-440t-56.5 23.5Q400-393 400-360t23.5 56.5Q447-280 480-280t56.5-23.5ZM240-160v-400 400Zm0 80q-33 0-56.5-23.5T160-160v-400q0-33 23.5-56.5T240-640h280v-80q0-83 58.5-141.5T720-920q83 0 141.5 58.5T920-720h-80q0-50-35-85t-85-35q-50 0-85 35t-35 85v80h120q33 0 56.5 23.5T800-560v400q0 33-23.5 56.5T720-80H240Z",fill:"currentColor"},null,-1)])])}const Dw=_e($w,[["render",Lw]]),Mw={},jw={height:"16",viewBox:"0 -960 960 960",width:"16",xmlns:"http://www.w3.org/2000/svg"};function vw(t,n){return e.openBlock(),e.createElementBlock("svg",jw,[...n[0]||(n[0]=[e.createElementVNode("path",{d:"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q65 0 123 19t107 53l-58 59q-38-24-81-37.5T480-800q-133 0-226.5 93.5T160-480q0 133 93.5 226.5T480-160q133 0 226.5-93.5T800-480q0-18-2-36t-6-35l65-65q11 32 17 66t6 70q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm-56-216L254-466l56-56 114 114 400-401 56 56-456 457Z",fill:"currentColor"},null,-1)])])}const Kw=_e(Mw,[["render",vw]]),rt={call:{icon:me.NetworkIcon,colors:{foreground:zl,background:Ml}},jq:{icon:me.CodeblockIcon,colors:{foreground:jl,background:dy}},exit:{icon:me.GatewayIcon,colors:{foreground:oa,background:hy}},property:{icon:me.StackIcon,colors:{foreground:ql,background:Gl}},static:{icon:me.DeployIcon,colors:{foreground:Kl,background:Ul}},branch:{icon:me.ArrowSplitIcon,colors:{foreground:yy,background:cy}},cache:{icon:me.CachedIcon,colors:{foreground:_y,background:"#fff0f7"}},xml_to_json:{icon:me.DataObjectIcon,colors:{foreground:co,background:na}},json_to_xml:{icon:me.CodeIcon,colors:{foreground:co,background:na}},jwt_decode:{icon:Dw,colors:{foreground:zl,background:Ml}},jwt_sign:{icon:me.EditSquareIcon,colors:{foreground:Kl,background:Ul}},jwt_verify:{icon:Kw,colors:{foreground:ql,background:Gl}},vault:{icon:me.KeyIcon},request:{icon:me.CloudIcon},service_request:{icon:me.CloudIcon},service_response:{icon:me.CloudIcon},response:{icon:me.CloudIcon}},{t:Ta}=it.createI18n("en-us",ct);function ht(t){return Ta(`plugins.free-form.datakit.flow_editor.node_types.${t}.description`)}function Bt(t){return Ta(`plugins.free-form.datakit.flow_editor.node_types.${t}.summary`)}function Uw(t){return Ta(`plugins.free-form.datakit.flow_editor.node_types.${t}.name`)}const Oa={call:{type:"call",summary:Bt("call"),description:ht("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...rt.call},jq:{type:"jq",summary:Bt("jq"),description:ht("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...rt.jq},exit:{type:"exit",summary:Bt("exit"),description:ht("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...rt.exit},property:{type:"property",summary:Bt("property"),description:ht("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...rt.property},static:{type:"static",summary:Bt("static"),description:ht("static"),io:{output:{fields:[],configurable:!0}},...rt.static},branch:{type:"branch",summary:Bt("branch"),description:ht("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...rt.branch},cache:{type:"cache",summary:Bt("cache"),description:ht("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...rt.cache},xml_to_json:{type:"xml_to_json",summary:Bt("xml_to_json"),description:ht("xml_to_json"),io:{input:{fields:[]},output:{fields:[]}},...rt.xml_to_json},json_to_xml:{type:"json_to_xml",summary:Bt("json_to_xml"),description:ht("json_to_xml"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...rt.json_to_xml},jwt_decode:{type:"jwt_decode",summary:Bt("jwt_decode"),description:ht("jwt_decode"),io:{input:{fields:[]},output:{fields:[{name:"header"},{name:"payload"},{name:"signature"}]}},...rt.jwt_decode},jwt_sign:{type:"jwt_sign",summary:Bt("jwt_sign"),description:ht("jwt_sign"),io:{input:{fields:[{name:"claims"},{name:"key"}]},output:{fields:[{name:"claims"},{name:"header"},{name:"token"}]}},...rt.jwt_sign},jwt_verify:{type:"jwt_verify",summary:Bt("jwt_verify"),description:ht("jwt_verify"),io:{input:{fields:[{name:"key"},{name:"token"}]},output:{fields:[{name:"claims"},{name:"header"}]}},...rt.jwt_verify}},sr={request:{type:"request",description:ht("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...rt.request},service_request:{type:"service_request",description:ht("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...rt.service_request},service_response:{type:"service_response",description:ht("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...rt.service_response},response:{type:"response",description:ht("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...rt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...rt.vault,hidden:!0}},Va=Object.keys(sr),Ba=t=>Va.includes(t),qw=t=>[...Va,...hc].includes(t),xt=t=>Va.includes(t),Ra=t=>xt(t.type),$a=t=>!!(t!=null&&t.startsWith("node:")),ko=t=>Object.prototype.hasOwnProperty.call(t,"ownerId");function nn(t){return Sn(t)}function Fa(t,n){if(t.length!==n.length)return!1;if(t.length===0)return!0;const o=new Set(n);return t.every(a=>o.has(a))}function Hn(t){return`${t}:${zo()}`}function cr(t){const[n,o]=t.split(".");return{nodeName:n,fieldName:o}}function _c(t){const[n,o]=t.split(".");return{nodeId:n,fieldId:o}}function Wn(t){return xt(t)?sr[t]:Oa[t]}function bc(t){var i,r,l,s;const n=Wn(t),o=((r=(i=n.io)==null?void 0:i.input)==null?void 0:r.fields.map(({name:c})=>c))??[],a=((s=(l=n.io)==null?void 0:l.output)==null?void 0:s.fields.map(({name:c})=>c))??[];return{input:o,output:a}}function wo(t){var o,a,i;return((i=(a=(o=Wn(t).io)==null?void 0:o.next)==null?void 0:a.branches)==null?void 0:i.map(({name:r})=>r))??[]}function kc(t){return(t??[]).map(n=>({id:Hn("field"),name:n}))}function pn(t,n,o){if(o)return t.fields[n].find(a=>a.name===o)}function fn(t,n,o){if(o)return t.fields[n].find(a=>a.id===o)}function La(t,n){return n?t.fields.output.some(o=>o.id===n):!0}function wc(t,n){return n?t.fields.input.some(o=>o.id===n):!0}function Gw(t){const n=["request","service_request","vault"].includes(t)?"request":"response",o=sr[t];return{name:t,phase:n,position:{x:0,y:0},fields:bc(o.type),expanded:{},hidden:o.hidden}}function Cc(t,n){const a=(typeof t=="string"&&qw(t)?t.toUpperCase():t).replace(/_\d+$/,"");for(let i=1;;i++){const r=`${a}_${i}`;if(!n.has(r))return r}}function Da(t,n){return`${t}:${n}`}function zw(t){const n=t.lastIndexOf(":");if(n===-1)throw new Error(`Invalid group ID format: ${t}`);const o=t.slice(0,n),a=t.slice(n+1);return{nodeId:o,branch:a}}function dr(t,n){return`${t}:${n}`}function Ec(t,n,o,a,i){return{id:Da(t,n),ownerId:t,branch:n,phase:o,memberIds:[...a],position:i!=null&&i.position?{...i.position}:void 0,dimensions:i!=null&&i.dimensions?{...i.dimensions}:void 0}}function Hw(t){return t.map(({source:n,target:o})=>({source:n,target:o}))}function Ww(t){const n=[];for(const o of t)for(const a of o.memberIds)n.push({source:o.ownerId,target:a});return n}function Nc(t,n){return[...Hw(t),...Ww(n)]}function ur(t,n){const o=new Map;for(const{source:a,target:i}of t)o.has(a)||o.set(a,[]),o.get(a).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 Ma(t){const n=new Set,o=new Set;function a(i){if(o.has(i))return!0;if(n.has(i))return!1;n.add(i),o.add(i);for(const r of t.get(i)??[])if(a(r))return!0;return o.delete(i),!1}for(const i of t.keys())if(a(i))return!0;return!1}function ja(t,n){const o=t.config;if(!o)return[];const a=o[n];return Array.isArray(a)?a.filter(i=>typeof i=="string"&&$a(i)):[]}function Yw({state:t,groupMapById:n,getNodeById:o,history:a}){const i=e.computed(()=>{const S=new Map;for(const P of t.value.groups)for(const F of P.memberIds)S.set(F,{ownerId:P.ownerId,branch:P.branch});return S}),r=e.computed(()=>{const S=new Map;for(const P of t.value.groups)for(const F of P.memberIds)S.set(F,P);return S}),l=e.computed(()=>{const S=new Map;for(const P of t.value.groups)S.has(P.ownerId)||S.set(P.ownerId,[]),S.get(P.ownerId).push(P);return S}),s=e.computed(()=>Nc(t.value.edges,t.value.groups)),c=e.computed(()=>ur(s.value));function u(S,P){return S?wo(S.type).includes(P):!1}function f(S,P){if(P===S.id)return!1;const F=o(P);return!(!F||xt(F.type)||F.phase!==S.phase)}function d(S,P){const F=[],T=new Set;for(const D of P)T.has(D)||(T.add(D),f(S,D)&&F.push(D));return F}function p(S,P,F){const T=o(S);return u(T,P)?d(T,F):[]}function m(S,P,F){const T=Da(S.id,P),D=n.value.get(T);F.length>0?D?(D.phase!==S.phase&&(D.phase=S.phase),Fa(D.memberIds,F)||(D.position=void 0,D.dimensions=void 0,D.memberIds=[...F])):t.value.groups.push(Ec(S.id,P,S.phase,F)):D&&(t.value.groups=t.value.groups.filter(U=>U.id!==T))}function g(S,P,F,T={}){const D=o(S);if(!u(D,P))return!1;const U=d(D,F),q=ja(D,P);if(Fa(q,U))return!1;const L=D.config??(D.config={});return U.length>0?L[P]=[...U]:(delete L[P],Object.keys(L).length===0&&delete D.config),m(D,P,U),(T.commit??!0)&&a.commit(T.tag),!0}function y(S,P={}){const F=t.value.groups.filter(T=>T.ownerId!==S);return F.length===t.value.groups.length?!1:(t.value.groups=F,(P.commit??!0)&&a.commit(P.tag),!0)}function C(S,P){const F=n.value.get(Da(S,P));if(F)return[...F.memberIds];const T=o(S);return T?ja(T,P):[]}function b(S){return i.value.get(S)}function h(S){const P=[];let F=r.value.get(S);for(;F;)P.push(F.id),F=r.value.get(F.ownerId);return P}function E(S,P){const F=h(P);if(F.length===0)return!1;const T=new Set(h(S));return T.size===0?!0:F.some(D=>!T.has(D))}function k(S,P){if(S===P)return!0;const F=new Set,T=[P];for(;T.length>0;){const D=T.pop();if(F.has(D))continue;if(F.add(D),D===S)return!0;const U=c.value.get(D);if(U)for(const q of U)F.has(q)||T.push(q)}return!1}function _(S,P,F){const T=o(S);return!(!u(T,P)||!f(T,F)||k(S,F))}function w(S,P,F,T={}){const D=o(S);if(!D||!_(S,P,F))return!1;const U=ja(D,P);if(U.includes(F))return!1;x(F,{commit:!1});const q=[...U,F];return g(S,P,q,{commit:!1})?((T.commit??!0)&&a.commit(T.tag),!0):!1}function x(S,P={}){const F=b(S);if(!F)return!1;const T=C(F.ownerId,F.branch),D=T.filter(U=>U!==S);return D.length===T.length?!1:g(F.ownerId,F.branch,D,P)}function O(S){let P=0;const F=new Set;let T=r.value.get(S);for(;T&&!F.has(T.id);)P+=1,F.add(T.id),T=r.value.get(T.ownerId);return P}function v(S){const P=n.value.get(S);return P?O(P.ownerId):0}function I(S){return S?n.value.has(S):!1}return{memberGroupMap:r,groupsByOwner:l,findMembership:b,getMembers:C,wouldCreateCycle:k,setMembers:g,prepareMembers:p,addMember:w,removeMember:x,clear:y,getNodeDepth:O,getGroupDepth:v,isGroupId:I,isEdgeEnteringGroup:E,canAddMember:_}}function Jw(t,n){const{commit:o,undo:a,redo:i,canUndo:r,canRedo:l,clear:s,reset:c,undoStack:u,redoStack:f}=Xe.useManualRefHistory(t,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let d;function p(E){var k;(k=n==null?void 0:n.onHistoryChange)==null||k.call(n,E,t.value)}function m(E){if(!E){d=void 0,o(),p("commit");return}if(E!=="*"&&d!==E){d=E,o(),p("commit");return}o(),u.value.shift(),p("commit")}function g(){a(),d=void 0,p("undo")}function y(){i(),d=void 0,p("redo")}function C(){s(),d=void 0,p("clear")}function b(){c(),d=void 0,p("reset")}function h(){a(),f.value.shift(),d=void 0,p("revert")}return{canUndo:r,canRedo:l,commit:m,undo:g,redo:y,clear:C,reset:b,revert:h}}function Xw(t){var n,o;return((o=(n=t.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function Zw(t){const{resources:n}=t.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function Qw(t){const n=Object.entries(t);if(n.length===0)return;const o={};for(const[a,i]of n)o[a]=i;return o}function xc(t,n){var C,b,h,E,k,_,w;const o=((C=t.config)==null?void 0:C.nodes)??[],a=((b=t.__ui_data)==null?void 0:b.nodes)??[],i=((h=t.__ui_data)==null?void 0:h.groups)??[],r=new Map(a.map(x=>[x.name,x])),l=new Map(i.map(x=>[x.name,x])),s=[],c=[],u=new Map,f=[],d=[],p=new Map,m=x=>{const O=new Set,v=[...x];for(;v.length>0;){const I=v.shift();if(!O.has(I)&&(O.add(I),Ba(I)||(u.get(I).phase="request"),!!p.has(I)))for(const S of p.get(I))O.has(S)||v.push(S)}};let g=!1;for(const x of o){const O=r.get(x.name);!O&&!g&&(g=!0);const v=Ac({type:x.type,configNode:x,uiNode:O,pluginData:t});s.push(v),u.set(v.name,v)}for(const x of s){const O=wo(x.type);if(!O.length)continue;const v=x.config;if(v)for(const I of O){const S=v[I];if(!Array.isArray(S)){l.has(dr(x.name,I))&&(g=!0);continue}const P=[];for(const F of S){if(typeof F!="string")continue;const T=u.get(F);T&&!xt(T.type)&&P.push(T.id)}if(P.length){v[I]=P;const F=dr(x.name,I),T=l.get(F),D=T?{position:nn(T.position)}:void 0,U=Ec(x.id,I,x.phase,P,D);f.push(U),!T&&!g&&(g=!0)}else delete v[I],l.has(dr(x.name,I))&&(g=!0)}}for(const x of zn)if(!u.has(x)){let O=r.get(x);O||(g||(g=!0),O=Gw(x));const v=Ac({type:x,uiNode:O,pluginData:t});s.push(v),u.set(v.name,v)}for(const x of o)nC(x,d);for(const x of d){const O=u.get(x.source),v=u.get(x.target);if(!O||!v){O||console.warn(`[initEditorState] skip: source "${x.source}" not found`),v||console.warn(`[initEditorState] skip: target "${x.target}" not found`);continue}p.has(x.source)||p.set(x.source,new Set),p.get(x.source).add(x.target),p.has(x.target)||p.set(x.target,new Set),p.get(x.target).add(x.source),c.push({id:Hn("edge"),source:O.id,sourceField:(E=pn(O,"output",x.sourceField))==null?void 0:E.id,target:v.id,targetField:(k=pn(v,"input",x.targetField))==null?void 0:k.id})}m(["request","service_request"]);let y=null;return(w=(_=t.config)==null?void 0:_.resources)!=null&&w.cache&&(y={...t.config.resources.cache},t.partials&&(y.partial_id=t.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:g?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,...y?{cacheConfig:y}:{}}}function Sc(t){const{type:n,name:o,phase:a,position:i,fields:r,config:l}=t,s=bc(n),c=Wn(n);return{id:Hn("node"),type:n,name:o??n,phase:a??"request",position:i??{x:0,y:0},expanded:{},fields:{input:kc((r==null?void 0:r.input)??s.input),output:kc((r==null?void 0:r.output)??s.output)},hidden:t.hidden||c.hidden,config:l?nn(l):{}}}function eC(t){return xt(t)?t==="request"||t==="service_request"?"request":"response":"request"}function Ac({type:t,configNode:n,uiNode:o,pluginData:a}){return Sc({type:t,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??eC(t),position:o==null?void 0:o.position,fields:oC({type:t,uiNode:o,configNode:n,pluginData:a}),hidden:o==null?void 0:o.hidden,config:rC({type:t,configNode:n,pluginData:a})})}function tC(t){const{type:n,name:o,input:a,inputs:i,output:r,outputs:l,...s}=t;return nn(s)}function nC(t,n){const o=t.name;if(t.input){const{nodeName:a,fieldName:i}=cr(t.input);a&&n.push({source:a,sourceField:i,target:o})}if(t.inputs)for(const[a,i]of Object.entries(t.inputs)){if(!i)continue;const{nodeName:r,fieldName:l}=cr(i);r&&n.push({source:r,sourceField:l,target:o,targetField:a})}if(t.output){const{nodeName:a,fieldName:i}=cr(t.output);a&&n.push({source:o,target:a,targetField:i})}if(t.outputs)for(const[a,i]of Object.entries(t.outputs)){if(!i)continue;const{nodeName:r,fieldName:l}=cr(i);r&&n.push({source:o,sourceField:a,target:r,targetField:l})}}function oC({type:t,uiNode:n,configNode:o,pluginData:a}){var s,c,u,f;const i=Wn(t),r=i==null?void 0:i.io;if(!r)return;const l={};if((s=r.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=r.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))}t==="vault"&&(l.output=Zw(a))}return Object.keys(l).length?l:void 0}function rC({type:t,configNode:n,pluginData:o}){return t==="vault"?Xw(o):n?tC(n):void 0}function aC(t){const n=e.computed(()=>{const d=new Map;return t.value.nodes.forEach(p=>d.set(p.id,p)),d}),o=e.computed(()=>t.value.edges),a=e.computed(()=>t.value.groups),i=e.computed(()=>Nc(o.value,a.value));function r(d){return ur(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 g=wc(p,d.sourceField)&&!La(p,d.sourceField),y=La(m,d.targetField);return g&&y?{source:d.target,sourceField:d.targetField,target:d.source,targetField:d.sourceField}:d}function s(d){const p=l(d),m=[],g=n.value.get(p.source),y=n.value.get(p.target);if(g||m.push("source node not found"),y||m.push("target node not found"),!g||!y)return{ok:!1,errors:m};La(g,p.sourceField)||m.push("source handle is not an output field"),wc(y,p.targetField)||m.push("target handle is not an input field"),y.name==="request"&&m.push('cannot target "request"'),g.name==="response"&&m.push('cannot source from "response"');const C=o.value.some(E=>E.target===p.target&&!E.targetField),b=o.value.some(E=>E.target===p.target&&!!E.targetField);(C&&p.targetField||b&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(E=>E.target===p.target&&E.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(E=>E.target===p.target&&!E.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const h=r({source:p.source,target:p.target});return Ma(h)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const d=[];for(const p of zn)[...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 Ma(r())&&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:ur}}const[Ic,iC]=Xe.createInjectionState(function(n,o={}){const a=e.ref(xc(n)),i=e.ref(),r=e.ref(),l=e.ref(!1),s=e.ref(!1),c=Jw(a,{capacity:200,clone:nn,onHistoryChange:H=>{var J,G;H!=="clear"&&((G=o.onChange)==null||G.call(o,Me(),Se(),ye(),(J=a.value.cacheConfig)==null?void 0:J.partial_id))}}),u=e.ref(!1),f=e.ref(new Set);function d(){a.value.pendingLayout=!1,c.commit("*")}function p(H=!0){a.value.pendingFitView!==H&&(a.value.pendingFitView=H,c.commit("*"))}const m=e.computed(()=>{const H={request:0,response:0};return a.value.nodes.forEach(J=>{xt(J.type)||H[J.phase]++}),H}),g=e.computed(()=>new Map(a.value.nodes.map(H=>[H.id,H]))),y=e.computed(()=>new Map(a.value.nodes.map(H=>[H.name,H]))),C=e.computed(()=>{const H=new Map,J=new Map;for(const G of a.value.edges)H.set(G.id,G),J.has(G.source)||J.set(G.source,new Set),J.get(G.source).add(G.id),J.has(G.target)||J.set(G.target,new Set),J.get(G.target).add(G.id);return{edgeMapById:H,edgeIdMapByNodeId:J}}),b=e.computed(()=>C.value.edgeMapById),h=e.computed(()=>C.value.edgeIdMapByNodeId),E=e.computed(()=>new Map(a.value.groups.map(H=>[H.id,H]))),k=e.computed(()=>new Set(a.value.nodes.map(H=>H.name))),_=Yw({state:a,groupMapById:E,getNodeById:S,history:c}),{canonicalizeConnection:w,validateConnection:x,validateGraph:O,isValidConnection:v,isValidVueFlowConnection:I}=aC(a);function S(H){return g.value.get(H)}function P(H){return y.value.get(H)}function F(H){return b.value.get(H)}function T(H){if(!h.value.has(H))return[];const J=[];return h.value.get(H).forEach(G=>{const ce=F(G);ce&&J.push(ce)}),J}function D(H){return T(H).filter((J=>J.target===H))}function U(H){return T(H).filter((J=>J.source===H))}const q=e.computed(()=>i.value?S(i.value):void 0);function L(H){i.value=H}function V(H){r.value=H}function R(H){if(xt(H.type))throw new Error("[createNode] implicit nodes are fixed.");return Sc({type:H.type,name:H.name||(xt(H.type)?void 0:Cc(H.type,k.value)),phase:H.phase,position:H.position,fields:H.fields,config:H.config})}function A(H,J=!0){const G=R(H);if(G)return a.value.nodes.push(G),J&&c.commit(),u.value=!0,G.id}function K(H,J,G=!0){const ce=S(H);if(!ce||xt(ce.type))return;const Z={...nn(ce),id:Hn("node"),name:Cc(ce.name,k.value),position:J??{x:ce.position.x+20,y:ce.position.y+20}},de=wo(Z.type);if(de.length&&Z.config){for(const Ie of de)delete Z.config[Ie];Object.keys(Z.config).length===0&&delete Z.config}return a.value.nodes.push(Z),G&&c.commit(),u.value=!0,Z.id}function z(H,J=!0){if(!S(H))return;a.value.edges=a.value.edges.filter(Z=>Z.source!==H&&Z.target!==H),_.clear(H,{commit:!1}),_.removeMember(H,{commit:!1}),a.value.nodes=a.value.nodes.filter(Z=>Z.id!==H),i.value===H&&(i.value=void 0);const ce=O();ce.ok||console.warn("[removeNode] topology invalid:",ce.errors.join("; ")),J&&c.commit()}function $(H,J,G=!0,ce){const Z=S(H);if(!Z)return;if(Ba(Z.name)){console.warn("[renameNode] implicit node name is reserved.");return}Z.name!==J&&(Z.name=J,G&&c.commit(ce))}function N(H,J,G=!0){const ce=S(H);ce&&(ce.position={...J},G&&c.commit())}function B(H,J,G=!0){const ce=E.value.get(H);if(!ce)return;const Z=ce.position;Z&&Z.x===J.x&&Z.y===J.y||(ce.position={...J},G&&c.commit())}function j(H,J,G=!0){const ce=E.value.get(H);if(!ce)return!1;const Z={...J.position},de={...J.dimensions},Ie=ce.position&&ce.position.x===Z.x&&ce.position.y===Z.y,ge=ce.dimensions&&ce.dimensions.width===de.width&&ce.dimensions.height===de.height;return Ie&&ge?!1:(ce.position=Z,ce.dimensions=de,G&&c.commit(),!0)}function W(H,J,G,ce=!0,Z){const de=S(H);if(!de)return;const Ie=G??!de.expanded[J];Ie!==!!de.expanded[J]&&(de.expanded[J]=Ie,ce&&c.commit(Z??`toggle:${H}:${J}`))}function X(H,J,G=!0,ce){const Z=S(H);Z&&(Z.config=nn(J),G&&c.commit(ce))}function ee(H,J,G,ce=!0){const Z=S(H);if(!Z)return;const de=Z.fields[J];if(de.some(Ie=>Ie.name===G)){console.warn(`[addField] field "${G}" already exists on ${J}.`);return}de.push({id:Hn("field"),name:G}),J==="input"?Z.fields.input=de:Z.fields.output=de,ce&&c.commit()}function oe(H,J,G,ce=!0){const Z=S(H);if(!Z)return;const de=Z.fields.input,Ie=Z.fields.output,ge=de.find(Pe=>Pe.id===J)??Ie.find(Pe=>Pe.id===J);ge&&(ge.name=G,ce&&c.commit())}function Q(H,J,G=!0,ce=!0){const Z=S(H);if(!Z)return;const de=Z.fields.input,Ie=Z.fields.output,ge=de.findIndex(se=>se.id===J);ge>=0&&de.splice(ge,1);const Pe=Ie.findIndex(se=>se.id===J);Pe>=0&&Ie.splice(Pe,1),Z.fields.input=de,Z.fields.output=Ie,G&&(a.value.edges=a.value.edges.filter(se=>se.sourceField!==J&&se.targetField!==J));const $e=O();$e.ok||console.warn("[removeField] topology invalid:",$e.errors.join("; ")),ce&&c.commit()}function te(H,J=!0){const G=w(H),ce=x(G);if(!ce.ok){console.warn("[connectEdge] invalid connection:",ce.errors.join("; "));return}const Z={id:Hn("edge"),...G};a.value.edges.push(Z);const de=O();if(!de.ok){a.value.edges.pop(),console.warn("[connectEdge] topology invalid:",de.errors.join("; "));return}return J&&c.commit(),Z.id}function ie(H,J,G=!0){re(H,!1),te(J,!1),G&&c.commit()}function re(H,J=!0){const G=a.value.edges.findIndex(de=>de.id===H);if(G<0)return;const ce=a.value.edges[G];a.value.edges.splice(G,1);const Z=O();if(!Z.ok){a.value.edges.splice(G,0,ce),console.warn("[disconnectEdge] topology invalid:",Z.errors.join("; "));return}J&&c.commit()}function Ce(H,J=!0){const G=D(H);for(const ce of G)re(ce.id,!1);J&&c.commit()}function pe(H,J=!0){const G=U(H);for(const ce of G)re(ce.id,!1);J&&c.commit()}function Me(){var J,G,ce,Z,de;const H=[];for(const Ie of a.value.nodes){if(xt(Ie.type))continue;let ge;const Pe={};let $e;const se={};for(const dt of a.value.edges.filter(ne=>ne.target===Ie.id)){const ne=S(dt.source);if(!ne)continue;const Ee=(J=fn(ne,"output",dt.sourceField))==null?void 0:J.name,be=Ee?`${ne.name}.${Ee}`:ne.name,ke=(G=fn(Ie,"input",dt.targetField))==null?void 0:G.name;ke?Pe[ke]=be:ge===void 0&&(ge=be)}for(const dt of a.value.edges.filter(ne=>ne.source===Ie.id)){const ne=S(dt.target);if(!ne)continue;const Ee=ne.type;if(!xt(Ee)||!((ce=sr[Ee].io)!=null&&ce.input))continue;const be=(Z=fn(ne,"input",dt.targetField))==null?void 0:Z.name,ke=be?`${ne.name}.${be}`:ne.name,he=(de=fn(Ie,"output",dt.sourceField))==null?void 0:de.name;he?se[he]=ke:$e===void 0&&($e=ke)}const ae={...nn(Ie.config),name:Ie.name,type:Ie.type},st=wo(Ie.type);if(st.length)for(const dt of st){const ne=ae[dt];if(!Array.isArray(ne))continue;const Ee=[];for(const be of ne){const ke=S(be);ke&&Ee.push(ke.name)}Ee.length?ae[dt]=Array.from(new Set(Ee)):delete ae[dt]}Object.keys(Pe).length>0?ae.inputs=Pe:ge!==void 0&&(ae.input=ge),Object.keys(se).length>0?ae.outputs=se:$e!==void 0&&(ae.output=$e),H.push(ae)}return H}function ue(){return a.value.nodes.map(H=>nn({name:H.name,phase:H.phase,position:{...H.position},expanded:{...H.expanded},fields:{input:H.fields.input.map(J=>J.name),output:H.fields.output.map(J=>J.name)}}))}function ye(){const H={},J=P("vault");if(J){const G=Qw(J.config);G&&Object.keys(G).length>0&&(H.vault=G)}if(a.value.cacheConfig){const{strategy:G,redis:ce,memory:Z}=a.value.cacheConfig;H.cache={strategy:G,redis:ce,memory:Z}}if(Object.keys(H).length!==0)return H}function fe(){const H=[];for(const J of a.value.groups){const G=S(J.ownerId);if(!G)continue;const ce=J.position;ce&&H.push({name:dr(G.name,J.branch),position:{...ce}})}return H}function Se(){return{nodes:ue(),groups:fe()}}function we(H,J){J&&c.commit(),a.value=xc(H,J),J||c.clear()}return{state:a,selection:i,portalSelection:r,modalOpen:l,skipValidation:u,invalidConfigNodeIds:f,propertiesPanelOpen:s,configNodeCounts:m,nodeMapById:g,nodeMapByName:y,edgeMapById:b,edgeIdMapByNodeId:h,groupMapById:E,getNodeById:S,getNodeByName:P,getEdgeById:F,getEdgesByNodeId:T,getInEdgesByNodeId:D,getOutEdgesByNodeId:U,selectedNode:q,selectNode:L,selectPortalEdge:V,createNode:R,addNode:A,duplicateNode:K,removeNode:z,renameNode:$,moveNode:N,moveGroup:B,setGroupLayout:j,toggleExpanded:W,replaceConfig:X,branchGroups:_,addField:ee,renameField:oe,removeField:Q,connectEdge:te,replaceConnection:ie,disconnectEdge:re,disconnectInEdges:Ce,disconnectOutEdges:pe,toConfigNodes:Me,toUINodes:ue,toUIGroups:fe,toUIData:Se,load:we,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,revert:c.revert,isValidConnection:v,isValidVueFlowConnection:I,validateGraph:()=>O(),clearPendingLayout:d,setPendingFitView:p}});function tt(){const t=iC();if(!t)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return t}const{t:lC}=it.createI18n("en-us",ct),pr=Xe.createGlobalState(()=>{const t=Xe.useLocalStorage("datakit-editor-mode","flow"),n=Xe.useLocalStorage("datakit-editor-sidebar-expanded",!0),o=Xe.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:t,sidePanelExpanded:n,responsePanelCollapsed:o}});function sC({enabled:t,confirm:n}){hn.onBeforeRouteLeave(()=>e.toValue(t)?n?n():window.confirm(lC("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=a=>{e.toValue(t)&&a.preventDefault()};Xe.useEventListener("beforeunload",o)}const cC=["undo","redo","duplicate","cut","copy","paste"],Pc=()=>{};function dC(t){const n=t;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function uC(t){if(!(t.metaKey||t.ctrlKey))return;switch(t.key.toLowerCase()){case"z":return t.shiftKey?"redo":"undo";case"y":return"redo";case"d":return"duplicate";case"x":return"cut";case"c":return"copy";case"v":return"paste"}}const pC=Xe.createSharedComposable(()=>{const t=new Set;Xe.useEventListener("keydown",o=>{if(dC(o.target))return;const a=uC(o);if(a)for(const i of t){if(!e.toValue(i.enabled))continue;const r=i[a];if(r){if(o.defaultPrevented){e.warn(`[useHotkeys] event for "${a}" was already defaultPrevented. Hotkey ignored.`);return}o.preventDefault(),r();return}}},{passive:!1});function n(o){if(!cC.some(i=>typeof o[i]=="function"))return Pc;const a={enabled:o.enabled??!0,...o};return t.add(a),()=>t.delete(a)}return{subscribe:n}});function Tc(t={}){if(typeof window>"u")return Pc;const n=pC().subscribe(t);return e.onScopeDispose(n),n}const Oc=44,fC=220,Vc=366,mC=1e3,gC=Oc+parseFloat(Hl),fr=1,hC=0,yC=1,_C=2,bC=3,Yn=parseInt(wy,10),Co="application/x-datakit+json",mr={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"]},mn={padding:80,gaps:{nodes:60,edges:80,ranks:60}},kC=1600,wC=1.2,CC=0,EC=200,Bc=Symbol("confirm-modal"),Jn="{key}",Vn={"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}},gr=Object.keys(Vn).filter(t=>t.includes(Jn)).map(t=>t.replace(Jn,""));function va(t){if(!t||!No(t))return;const n=gr.find(o=>t.startsWith(o));if(n)return t.slice(n.length).replace(Jn,"")}function Eo(t){if(!t)return null;const n=gr.find(o=>t.startsWith(o));return n||t}function No(t){return t?gr.some(n=>t.startsWith(n)):!1}function Rc(t){return t?No(t)?Eo(t)+Jn:t:null}function Ka(t){var o;if(!t)return!1;const n=Rc(t);return n?((o=Vn[n])==null?void 0:o.readable)??!1:!1}function Ua(t){var o;if(!t)return!1;const n=Rc(t);return n?((o=Vn[n])==null?void 0:o.writable)??!1:!1}function hr(t,n,o){const a=n?fn(t,o,n):void 0;return`${t.name}${a?`.${a.name}`:""}`}function xo(t,n){const o=n(t.source),a=n(t.target);return[hr(o,t.sourceField,"output"),hr(a,t.targetField,"input")]}function qa(t,n,o,a,i){const r=i(t),l=i(o);return[hr(r,n,"output"),hr(l,a,"input")]}function $c(t){if(t.length===0)throw new Error("getBoundingRect requires at least one rect");let n=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;for(const{x:r,y:l,width:s,height:c}of t){if(![r,l,s,c].every(Number.isFinite))throw new Error("Rect values must be finite numbers");if(s<0||c<0)throw new RangeError("Rect width and height must be non-negative");const u=r+s,f=l+c;if(!Number.isFinite(u)||!Number.isFinite(f))throw new RangeError("Rect boundaries must be finite numbers");r<n&&(n=r),l<o&&(o=l),u>a&&(a=u),f>i&&(i=f)}return{x:n,y:o,width:a-n,height:i-o}}var Ge=(t,n)=>()=>(n||t((n={exports:{}}).exports,n),n.exports),Mt=Ge((t,n)=>{var o=Object.defineProperty,a=(F,T,D)=>T in F?o(F,T,{enumerable:!0,configurable:!0,writable:!0,value:D}):F[T]=D,i=(F,T)=>()=>(T||F((T={exports:{}}).exports,T),T.exports),r=(F,T,D)=>a(F,typeof T!="symbol"?T+"":T,D),l=i((F,T)=>{var D="\0",U="\0",q="",L=class{constructor($){r(this,"_isDirected",!0),r(this,"_isMultigraph",!1),r(this,"_isCompound",!1),r(this,"_label"),r(this,"_defaultNodeLabelFn",()=>{}),r(this,"_defaultEdgeLabelFn",()=>{}),r(this,"_nodes",{}),r(this,"_in",{}),r(this,"_preds",{}),r(this,"_out",{}),r(this,"_sucs",{}),r(this,"_edgeObjs",{}),r(this,"_edgeLabels",{}),r(this,"_nodeCount",0),r(this,"_edgeCount",0),r(this,"_parent"),r(this,"_children"),$&&(this._isDirected=Object.hasOwn($,"directed")?$.directed:!0,this._isMultigraph=Object.hasOwn($,"multigraph")?$.multigraph:!1,this._isCompound=Object.hasOwn($,"compound")?$.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[U]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph($){return this._label=$,this}graph(){return this._label}setDefaultNodeLabel($){return this._defaultNodeLabelFn=$,typeof $!="function"&&(this._defaultNodeLabelFn=()=>$),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var $=this;return this.nodes().filter(N=>Object.keys($._in[N]).length===0)}sinks(){var $=this;return this.nodes().filter(N=>Object.keys($._out[N]).length===0)}setNodes($,N){var B=arguments,j=this;return $.forEach(function(W){B.length>1?j.setNode(W,N):j.setNode(W)}),this}setNode($,N){return Object.hasOwn(this._nodes,$)?(arguments.length>1&&(this._nodes[$]=N),this):(this._nodes[$]=arguments.length>1?N:this._defaultNodeLabelFn($),this._isCompound&&(this._parent[$]=U,this._children[$]={},this._children[U][$]=!0),this._in[$]={},this._preds[$]={},this._out[$]={},this._sucs[$]={},++this._nodeCount,this)}node($){return this._nodes[$]}hasNode($){return Object.hasOwn(this._nodes,$)}removeNode($){var N=this;if(Object.hasOwn(this._nodes,$)){var B=j=>N.removeEdge(N._edgeObjs[j]);delete this._nodes[$],this._isCompound&&(this._removeFromParentsChildList($),delete this._parent[$],this.children($).forEach(function(j){N.setParent(j)}),delete this._children[$]),Object.keys(this._in[$]).forEach(B),delete this._in[$],delete this._preds[$],Object.keys(this._out[$]).forEach(B),delete this._out[$],delete this._sucs[$],--this._nodeCount}return this}setParent($,N){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(N===void 0)N=U;else{N+="";for(var B=N;B!==void 0;B=this.parent(B))if(B===$)throw new Error("Setting "+N+" as parent of "+$+" would create a cycle");this.setNode(N)}return this.setNode($),this._removeFromParentsChildList($),this._parent[$]=N,this._children[N][$]=!0,this}_removeFromParentsChildList($){delete this._children[this._parent[$]][$]}parent($){if(this._isCompound){var N=this._parent[$];if(N!==U)return N}}children($=U){if(this._isCompound){var N=this._children[$];if(N)return Object.keys(N)}else{if($===U)return this.nodes();if(this.hasNode($))return[]}}predecessors($){var N=this._preds[$];if(N)return Object.keys(N)}successors($){var N=this._sucs[$];if(N)return Object.keys(N)}neighbors($){var N=this.predecessors($);if(N){let j=new Set(N);for(var B of this.successors($))j.add(B);return Array.from(j.values())}}isLeaf($){var N;return this.isDirected()?N=this.successors($):N=this.neighbors($),N.length===0}filterNodes($){var N=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});N.setGraph(this.graph());var B=this;Object.entries(this._nodes).forEach(function([X,ee]){$(X)&&N.setNode(X,ee)}),Object.values(this._edgeObjs).forEach(function(X){N.hasNode(X.v)&&N.hasNode(X.w)&&N.setEdge(X,B.edge(X))});var j={};function W(X){var ee=B.parent(X);return ee===void 0||N.hasNode(ee)?(j[X]=ee,ee):ee in j?j[ee]:W(ee)}return this._isCompound&&N.nodes().forEach(X=>N.setParent(X,W(X))),N}setDefaultEdgeLabel($){return this._defaultEdgeLabelFn=$,typeof $!="function"&&(this._defaultEdgeLabelFn=()=>$),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath($,N){var B=this,j=arguments;return $.reduce(function(W,X){return j.length>1?B.setEdge(W,X,N):B.setEdge(W,X),X}),this}setEdge(){var $,N,B,j,W=!1,X=arguments[0];typeof X=="object"&&X!==null&&"v"in X?($=X.v,N=X.w,B=X.name,arguments.length===2&&(j=arguments[1],W=!0)):($=X,N=arguments[1],B=arguments[3],arguments.length>2&&(j=arguments[2],W=!0)),$=""+$,N=""+N,B!==void 0&&(B=""+B);var ee=A(this._isDirected,$,N,B);if(Object.hasOwn(this._edgeLabels,ee))return W&&(this._edgeLabels[ee]=j),this;if(B!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode($),this.setNode(N),this._edgeLabels[ee]=W?j:this._defaultEdgeLabelFn($,N,B);var oe=K(this._isDirected,$,N,B);return $=oe.v,N=oe.w,Object.freeze(oe),this._edgeObjs[ee]=oe,V(this._preds[N],$),V(this._sucs[$],N),this._in[N][ee]=oe,this._out[$][ee]=oe,this._edgeCount++,this}edge($,N,B){var j=arguments.length===1?z(this._isDirected,arguments[0]):A(this._isDirected,$,N,B);return this._edgeLabels[j]}edgeAsObj(){let $=this.edge(...arguments);return typeof $!="object"?{label:$}:$}hasEdge($,N,B){var j=arguments.length===1?z(this._isDirected,arguments[0]):A(this._isDirected,$,N,B);return Object.hasOwn(this._edgeLabels,j)}removeEdge($,N,B){var j=arguments.length===1?z(this._isDirected,arguments[0]):A(this._isDirected,$,N,B),W=this._edgeObjs[j];return W&&($=W.v,N=W.w,delete this._edgeLabels[j],delete this._edgeObjs[j],R(this._preds[N],$),R(this._sucs[$],N),delete this._in[N][j],delete this._out[$][j],this._edgeCount--),this}inEdges($,N){return this.isDirected()?this.filterEdges(this._in[$],$,N):this.nodeEdges($,N)}outEdges($,N){return this.isDirected()?this.filterEdges(this._out[$],$,N):this.nodeEdges($,N)}nodeEdges($,N){if($ in this._nodes)return this.filterEdges({...this._in[$],...this._out[$]},$,N)}filterEdges($,N,B){if($){var j=Object.values($);return B?j.filter(function(W){return W.v===N&&W.w===B||W.v===B&&W.w===N}):j}}};function V($,N){$[N]?$[N]++:$[N]=1}function R($,N){--$[N]||delete $[N]}function A($,N,B,j){var W=""+N,X=""+B;if(!$&&W>X){var ee=W;W=X,X=ee}return W+q+X+q+(j===void 0?D:j)}function K($,N,B,j){var W=""+N,X=""+B;if(!$&&W>X){var ee=W;W=X,X=ee}var oe={v:W,w:X};return j&&(oe.name=j),oe}function z($,N){return A($,N.v,N.w,N.name)}T.exports=L}),s=i((F,T)=>{T.exports="3.0.2"}),c=i((F,T)=>{T.exports={Graph:l(),version:s()}}),u=i((F,T)=>{var D=l();T.exports={write:U,read:V};function U(R){var A={options:{directed:R.isDirected(),multigraph:R.isMultigraph(),compound:R.isCompound()},nodes:q(R),edges:L(R)};return R.graph()!==void 0&&(A.value=structuredClone(R.graph())),A}function q(R){return R.nodes().map(function(A){var K=R.node(A),z=R.parent(A),$={v:A};return K!==void 0&&($.value=K),z!==void 0&&($.parent=z),$})}function L(R){return R.edges().map(function(A){var K=R.edge(A),z={v:A.v,w:A.w};return A.name!==void 0&&(z.name=A.name),K!==void 0&&(z.value=K),z})}function V(R){var A=new D(R.options).setGraph(R.value);return R.nodes.forEach(function(K){A.setNode(K.v,K.value),K.parent&&A.setParent(K.v,K.parent)}),R.edges.forEach(function(K){A.setEdge({v:K.v,w:K.w,name:K.name},K.value)}),A}}),f=i((F,T)=>{T.exports=U;var D=()=>1;function U(L,V,R,A){return q(L,String(V),R||D,A||function(K){return L.outEdges(K)})}function q(L,V,R,A){var K={},z=!0,$=0,N=L.nodes(),B=function(ee){var oe=R(ee);K[ee.v].distance+oe<K[ee.w].distance&&(K[ee.w]={distance:K[ee.v].distance+oe,predecessor:ee.v},z=!0)},j=function(){N.forEach(function(ee){A(ee).forEach(function(oe){var Q=oe.v===ee?oe.v:oe.w,te=Q===oe.v?oe.w:oe.v;B({v:Q,w:te})})})};N.forEach(function(ee){var oe=ee===V?0:Number.POSITIVE_INFINITY;K[ee]={distance:oe}});for(var W=N.length,X=1;X<W&&(z=!1,$++,j(),!!z);X++);if($===W-1&&(z=!1,j(),z))throw new Error("The graph contains a negative weight cycle");return K}}),d=i((F,T)=>{T.exports=D;function D(U){var q={},L=[],V;function R(A){Object.hasOwn(q,A)||(q[A]=!0,V.push(A),U.successors(A).forEach(R),U.predecessors(A).forEach(R))}return U.nodes().forEach(function(A){V=[],R(A),V.length&&L.push(V)}),L}}),p=i((F,T)=>{var D=class{constructor(){r(this,"_arr",[]),r(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(U){return U.key})}has(U){return Object.hasOwn(this._keyIndices,U)}priority(U){var q=this._keyIndices[U];if(q!==void 0)return this._arr[q].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(U,q){var L=this._keyIndices;if(U=String(U),!Object.hasOwn(L,U)){var V=this._arr,R=V.length;return L[U]=R,V.push({key:U,priority:q}),this._decrease(R),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var U=this._arr.pop();return delete this._keyIndices[U.key],this._heapify(0),U.key}decrease(U,q){var L=this._keyIndices[U];if(q>this._arr[L].priority)throw new Error("New priority is greater than current priority. Key: "+U+" Old: "+this._arr[L].priority+" New: "+q);this._arr[L].priority=q,this._decrease(L)}_heapify(U){var q=this._arr,L=2*U,V=L+1,R=U;L<q.length&&(R=q[L].priority<q[R].priority?L:R,V<q.length&&(R=q[V].priority<q[R].priority?V:R),R!==U&&(this._swap(U,R),this._heapify(R)))}_decrease(U){for(var q=this._arr,L=q[U].priority,V;U!==0&&(V=U>>1,!(q[V].priority<L));)this._swap(U,V),U=V}_swap(U,q){var L=this._arr,V=this._keyIndices,R=L[U],A=L[q];L[U]=A,L[q]=R,V[A.key]=U,V[R.key]=q}};T.exports=D}),m=i((F,T)=>{var D=p();T.exports=q;var U=()=>1;function q(V,R,A,K){var z=function($){return V.outEdges($)};return L(V,String(R),A||U,K||z)}function L(V,R,A,K){var z={},$=new D,N,B,j=function(W){var X=W.v!==N?W.v:W.w,ee=z[X],oe=A(W),Q=B.distance+oe;if(oe<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+W+" Weight: "+oe);Q<ee.distance&&(ee.distance=Q,ee.predecessor=N,$.decrease(X,Q))};for(V.nodes().forEach(function(W){var X=W===R?0:Number.POSITIVE_INFINITY;z[W]={distance:X},$.add(W,X)});$.size()>0&&(N=$.removeMin(),B=z[N],B.distance!==Number.POSITIVE_INFINITY);)K(N).forEach(j);return z}}),g=i((F,T)=>{var D=m();T.exports=U;function U(q,L,V){return q.nodes().reduce(function(R,A){return R[A]=D(q,A,L,V),R},{})}}),y=i((F,T)=>{T.exports=D;function D(q,L,V){if(q[L].predecessor!==void 0)throw new Error("Invalid source vertex");if(q[V].predecessor===void 0&&V!==L)throw new Error("Invalid destination vertex");return{weight:q[V].distance,path:U(q,L,V)}}function U(q,L,V){for(var R=[],A=V;A!==L;)R.push(A),A=q[A].predecessor;return R.push(L),R.reverse()}}),C=i((F,T)=>{T.exports=D;function D(U){var q=0,L=[],V={},R=[];function A(K){var z=V[K]={onStack:!0,lowlink:q,index:q++};if(L.push(K),U.successors(K).forEach(function(B){Object.hasOwn(V,B)?V[B].onStack&&(z.lowlink=Math.min(z.lowlink,V[B].index)):(A(B),z.lowlink=Math.min(z.lowlink,V[B].lowlink))}),z.lowlink===z.index){var $=[],N;do N=L.pop(),V[N].onStack=!1,$.push(N);while(K!==N);R.push($)}}return U.nodes().forEach(function(K){Object.hasOwn(V,K)||A(K)}),R}}),b=i((F,T)=>{var D=C();T.exports=U;function U(q){return D(q).filter(function(L){return L.length>1||L.length===1&&q.hasEdge(L[0],L[0])})}}),h=i((F,T)=>{T.exports=U;var D=()=>1;function U(L,V,R){return q(L,V||D,R||function(A){return L.outEdges(A)})}function q(L,V,R){var A={},K=L.nodes();return K.forEach(function(z){A[z]={},A[z][z]={distance:0},K.forEach(function($){z!==$&&(A[z][$]={distance:Number.POSITIVE_INFINITY})}),R(z).forEach(function($){var N=$.v===z?$.w:$.v,B=V($);A[z][N]={distance:B,predecessor:z}})}),K.forEach(function(z){var $=A[z];K.forEach(function(N){var B=A[N];K.forEach(function(j){var W=B[z],X=$[j],ee=B[j],oe=W.distance+X.distance;oe<ee.distance&&(ee.distance=oe,ee.predecessor=X.predecessor)})})}),A}}),E=i((F,T)=>{function D(q){var L={},V={},R=[];function A(K){if(Object.hasOwn(V,K))throw new U;Object.hasOwn(L,K)||(V[K]=!0,L[K]=!0,q.predecessors(K).forEach(A),delete V[K],R.push(K))}if(q.sinks().forEach(A),Object.keys(L).length!==q.nodeCount())throw new U;return R}var U=class extends Error{constructor(){super(...arguments)}};T.exports=D,D.CycleException=U}),k=i((F,T)=>{var D=E();T.exports=U;function U(q){try{D(q)}catch(L){if(L instanceof D.CycleException)return!1;throw L}return!0}}),_=i((F,T)=>{T.exports=D;function D(q,L,V,R,A){Array.isArray(L)||(L=[L]);var K=(q.isDirected()?q.successors:q.neighbors).bind(q),z={};return L.forEach(function($){if(!q.hasNode($))throw new Error("Graph does not have node: "+$);A=U(q,$,V==="post",z,K,R,A)}),A}function U(q,L,V,R,A,K,z){return Object.hasOwn(R,L)||(R[L]=!0,V||(z=K(z,L)),A(L).forEach(function($){z=U(q,$,V,R,A,K,z)}),V&&(z=K(z,L))),z}}),w=i((F,T)=>{var D=_();T.exports=U;function U(q,L,V){return D(q,L,V,function(R,A){return R.push(A),R},[])}}),x=i((F,T)=>{var D=w();T.exports=U;function U(q,L){return D(q,L,"post")}}),O=i((F,T)=>{var D=w();T.exports=U;function U(q,L){return D(q,L,"pre")}}),v=i((F,T)=>{var D=l(),U=p();T.exports=q;function q(L,V){var R=new D,A={},K=new U,z;function $(B){var j=B.v===z?B.w:B.v,W=K.priority(j);if(W!==void 0){var X=V(B);X<W&&(A[j]=z,K.decrease(j,X))}}if(L.nodeCount()===0)return R;L.nodes().forEach(function(B){K.add(B,Number.POSITIVE_INFINITY),R.setNode(B)}),K.decrease(L.nodes()[0],0);for(var N=!1;K.size()>0;){if(z=K.removeMin(),Object.hasOwn(A,z))R.setEdge(z,A[z]);else{if(N)throw new Error("Input graph is not connected: "+L);N=!0}L.nodeEdges(z).forEach($)}return R}}),I=i((F,T)=>{var D=m(),U=f();T.exports=q;function q(V,R,A,K){return L(V,R,A,K||function(z){return V.outEdges(z)})}function L(V,R,A,K){if(A===void 0)return D(V,R,A,K);for(var z=!1,$=V.nodes(),N=0;N<$.length;N++){for(var B=K($[N]),j=0;j<B.length;j++){var W=B[j],X=W.v===$[N]?W.v:W.w,ee=X===W.v?W.w:W.v;A({v:X,w:ee})<0&&(z=!0)}if(z)return U(V,R,A,K)}return D(V,R,A,K)}}),S=i((F,T)=>{T.exports={bellmanFord:f(),components:d(),dijkstra:m(),dijkstraAll:g(),extractPath:y(),findCycles:b(),floydWarshall:h(),isAcyclic:k(),postorder:x(),preorder:O(),prim:v(),shortestPaths:I(),reduce:_(),tarjan:C(),topsort:E()}}),P=c();n.exports={Graph:P.Graph,json:u(),alg:S(),version:P.version}}),NC=Ge((t,n)=>{var o=class{constructor(){let r={};r._next=r._prev=r,this._sentinel=r}dequeue(){let r=this._sentinel,l=r._prev;if(l!==r)return a(l),l}enqueue(r){let l=this._sentinel;r._prev&&r._next&&a(r),r._next=l._next,l._next._prev=r,l._next=r,r._prev=l}toString(){let r=[],l=this._sentinel,s=l._prev;for(;s!==l;)r.push(JSON.stringify(s,i)),s=s._prev;return"["+r.join(", ")+"]"}};function a(r){r._prev._next=r._next,r._next._prev=r._prev,delete r._next,delete r._prev}function i(r,l){if(r!=="_next"&&r!=="_prev")return l}n.exports=o}),xC=Ge((t,n)=>{var o=Mt().Graph,a=NC();n.exports=r;var i=()=>1;function r(d,p){if(d.nodeCount()<=1)return[];let m=c(d,p||i);return l(m.graph,m.buckets,m.zeroIdx).flatMap(g=>d.outEdges(g.v,g.w))}function l(d,p,m){let g=[],y=p[p.length-1],C=p[0],b;for(;d.nodeCount();){for(;b=C.dequeue();)s(d,p,m,b);for(;b=y.dequeue();)s(d,p,m,b);if(d.nodeCount()){for(let h=p.length-2;h>0;--h)if(b=p[h].dequeue(),b){g=g.concat(s(d,p,m,b,!0));break}}}return g}function s(d,p,m,g,y){let C=y?[]:void 0;return d.inEdges(g.v).forEach(b=>{let h=d.edge(b),E=d.node(b.v);y&&C.push({v:b.v,w:b.w}),E.out-=h,u(p,m,E)}),d.outEdges(g.v).forEach(b=>{let h=d.edge(b),E=b.w,k=d.node(E);k.in-=h,u(p,m,k)}),d.removeNode(g.v),C}function c(d,p){let m=new o,g=0,y=0;d.nodes().forEach(h=>{m.setNode(h,{v:h,in:0,out:0})}),d.edges().forEach(h=>{let E=m.edge(h.v,h.w)||0,k=p(h),_=E+k;m.setEdge(h.v,h.w,_),y=Math.max(y,m.node(h.v).out+=k),g=Math.max(g,m.node(h.w).in+=k)});let C=f(y+g+3).map(()=>new a),b=g+1;return m.nodes().forEach(h=>{u(C,b,m.node(h))}),{graph:m,buckets:C,zeroIdx:b}}function u(d,p,m){m.out?m.in?d[m.out-m.in+p].enqueue(m):d[d.length-1].enqueue(m):d[0].enqueue(m)}function f(d){let p=[];for(let m=0;m<d;m++)p.push(m);return p}}),at=Ge((t,n)=>{var o=Mt().Graph;n.exports={addBorderNode:p,addDummyNode:a,applyWithChunking:y,asNonCompoundGraph:r,buildLayerMatrix:u,intersectRect:c,mapValues:O,maxRank:C,normalizeRanks:f,notime:E,partition:b,pick:x,predecessorWeights:s,range:w,removeEmptyRanks:d,simplify:i,successorWeights:l,time:h,uniqueId:_,zipObject:v};function a(I,S,P,F){for(var T=F;I.hasNode(T);)T=_(F);return P.dummy=S,I.setNode(T,P),T}function i(I){let S=new o().setGraph(I.graph());return I.nodes().forEach(P=>S.setNode(P,I.node(P))),I.edges().forEach(P=>{let F=S.edge(P.v,P.w)||{weight:0,minlen:1},T=I.edge(P);S.setEdge(P.v,P.w,{weight:F.weight+T.weight,minlen:Math.max(F.minlen,T.minlen)})}),S}function r(I){let S=new o({multigraph:I.isMultigraph()}).setGraph(I.graph());return I.nodes().forEach(P=>{I.children(P).length||S.setNode(P,I.node(P))}),I.edges().forEach(P=>{S.setEdge(P,I.edge(P))}),S}function l(I){let S=I.nodes().map(P=>{let F={};return I.outEdges(P).forEach(T=>{F[T.w]=(F[T.w]||0)+I.edge(T).weight}),F});return v(I.nodes(),S)}function s(I){let S=I.nodes().map(P=>{let F={};return I.inEdges(P).forEach(T=>{F[T.v]=(F[T.v]||0)+I.edge(T).weight}),F});return v(I.nodes(),S)}function c(I,S){let P=I.x,F=I.y,T=S.x-P,D=S.y-F,U=I.width/2,q=I.height/2;if(!T&&!D)throw new Error("Not possible to find intersection inside of the rectangle");let L,V;return Math.abs(D)*U>Math.abs(T)*q?(D<0&&(q=-q),L=q*T/D,V=q):(T<0&&(U=-U),L=U,V=U*D/T),{x:P+L,y:F+V}}function u(I){let S=w(C(I)+1).map(()=>[]);return I.nodes().forEach(P=>{let F=I.node(P),T=F.rank;T!==void 0&&(S[T][F.order]=P)}),S}function f(I){let S=I.nodes().map(F=>{let T=I.node(F).rank;return T===void 0?Number.MAX_VALUE:T}),P=y(Math.min,S);I.nodes().forEach(F=>{let T=I.node(F);Object.hasOwn(T,"rank")&&(T.rank-=P)})}function d(I){let S=I.nodes().map(U=>I.node(U).rank).filter(U=>U!==void 0),P=y(Math.min,S),F=[];I.nodes().forEach(U=>{let q=I.node(U).rank-P;F[q]||(F[q]=[]),F[q].push(U)});let T=0,D=I.graph().nodeRankFactor;Array.from(F).forEach((U,q)=>{U===void 0&&q%D!==0?--T:U!==void 0&&T&&U.forEach(L=>I.node(L).rank+=T)})}function p(I,S,P,F){let T={width:0,height:0};return arguments.length>=4&&(T.rank=P,T.order=F),a(I,"border",T,S)}function m(I,S=g){let P=[];for(let F=0;F<I.length;F+=S){let T=I.slice(F,F+S);P.push(T)}return P}var g=65535;function y(I,S){if(S.length>g){let P=m(S);return I.apply(null,P.map(F=>I.apply(null,F)))}else return I.apply(null,S)}function C(I){let S=I.nodes().map(P=>{let F=I.node(P).rank;return F===void 0?Number.MIN_VALUE:F});return y(Math.max,S)}function b(I,S){let P={lhs:[],rhs:[]};return I.forEach(F=>{S(F)?P.lhs.push(F):P.rhs.push(F)}),P}function h(I,S){let P=Date.now();try{return S()}finally{console.log(I+" time: "+(Date.now()-P)+"ms")}}function E(I,S){return S()}var k=0;function _(I){var S=++k;return I+(""+S)}function w(I,S,P=1){S==null&&(S=I,I=0);let F=D=>D<S;P<0&&(F=D=>S<D);let T=[];for(let D=I;F(D);D+=P)T.push(D);return T}function x(I,S){let P={};for(let F of S)I[F]!==void 0&&(P[F]=I[F]);return P}function O(I,S){let P=S;return typeof S=="string"&&(P=F=>F[S]),Object.entries(I).reduce((F,[T,D])=>(F[T]=P(D,T),F),{})}function v(I,S){return I.reduce((P,F,T)=>(P[F]=S[T],P),{})}}),SC=Ge((t,n)=>{var o=xC(),a=at().uniqueId;n.exports={run:i,undo:l};function i(s){(s.graph().acyclicer==="greedy"?o(s,c(s)):r(s)).forEach(u=>{let f=s.edge(u);s.removeEdge(u),f.forwardName=u.name,f.reversed=!0,s.setEdge(u.w,u.v,f,a("rev"))});function c(u){return f=>u.edge(f).weight}}function r(s){let c=[],u={},f={};function d(p){Object.hasOwn(f,p)||(f[p]=!0,u[p]=!0,s.outEdges(p).forEach(m=>{Object.hasOwn(u,m.w)?c.push(m):d(m.w)}),delete u[p])}return s.nodes().forEach(d),c}function l(s){s.edges().forEach(c=>{let u=s.edge(c);if(u.reversed){s.removeEdge(c);let f=u.forwardName;delete u.reversed,delete u.forwardName,s.setEdge(c.w,c.v,u,f)}})}}),AC=Ge((t,n)=>{var o=at();n.exports={run:a,undo:r};function a(l){l.graph().dummyChains=[],l.edges().forEach(s=>i(l,s))}function i(l,s){let c=s.v,u=l.node(c).rank,f=s.w,d=l.node(f).rank,p=s.name,m=l.edge(s),g=m.labelRank;if(d===u+1)return;l.removeEdge(s);let y,C,b;for(b=0,++u;u<d;++b,++u)m.points=[],C={width:0,height:0,edgeLabel:m,edgeObj:s,rank:u},y=o.addDummyNode(l,"edge",C,"_d"),u===g&&(C.width=m.width,C.height=m.height,C.dummy="edge-label",C.labelpos=m.labelpos),l.setEdge(c,y,{weight:m.weight},p),b===0&&l.graph().dummyChains.push(y),c=y;l.setEdge(c,f,{weight:m.weight},p)}function r(l){l.graph().dummyChains.forEach(s=>{let c=l.node(s),u=c.edgeLabel,f;for(l.setEdge(c.edgeObj,u);c.dummy;)f=l.successors(s)[0],l.removeNode(s),u.points.push({x:c.x,y:c.y}),c.dummy==="edge-label"&&(u.x=c.x,u.y=c.y,u.width=c.width,u.height=c.height),s=f,c=l.node(s)})}}),yr=Ge((t,n)=>{var{applyWithChunking:o}=at();n.exports={longestPath:a,slack:i};function a(r){var l={};function s(c){var u=r.node(c);if(Object.hasOwn(l,c))return u.rank;l[c]=!0;let f=r.outEdges(c).map(p=>p==null?Number.POSITIVE_INFINITY:s(p.w)-r.edge(p).minlen);var d=o(Math.min,f);return d===Number.POSITIVE_INFINITY&&(d=0),u.rank=d}r.sources().forEach(s)}function i(r,l){return r.node(l.w).rank-r.node(l.v).rank-r.edge(l).minlen}}),Fc=Ge((t,n)=>{var o=Mt().Graph,a=yr().slack;n.exports=i;function i(c){var u=new o({directed:!1}),f=c.nodes()[0],d=c.nodeCount();u.setNode(f,{});for(var p,m;r(u,c)<d;)p=l(u,c),m=u.hasNode(p.v)?a(c,p):-a(c,p),s(u,c,m);return u}function r(c,u){function f(d){u.nodeEdges(d).forEach(p=>{var m=p.v,g=d===m?p.w:m;!c.hasNode(g)&&!a(u,p)&&(c.setNode(g,{}),c.setEdge(d,g,{}),f(g))})}return c.nodes().forEach(f),c.nodeCount()}function l(c,u){return u.edges().reduce((f,d)=>{let p=Number.POSITIVE_INFINITY;return c.hasNode(d.v)!==c.hasNode(d.w)&&(p=a(u,d)),p<f[0]?[p,d]:f},[Number.POSITIVE_INFINITY,null])[1]}function s(c,u,f){c.nodes().forEach(d=>u.node(d).rank+=f)}}),IC=Ge((t,n)=>{var o=Fc(),a=yr().slack,i=yr().longestPath,r=Mt().alg.preorder,l=Mt().alg.postorder,s=at().simplify;n.exports=c,c.initLowLimValues=p,c.initCutValues=u,c.calcCutValue=d,c.leaveEdge=g,c.enterEdge=y,c.exchangeEdges=C;function c(k){k=s(k),i(k);var _=o(k);p(_),u(_,k);for(var w,x;w=g(_);)x=y(_,k,w),C(_,k,w,x)}function u(k,_){var w=l(k,k.nodes());w=w.slice(0,w.length-1),w.forEach(x=>f(k,_,x))}function f(k,_,w){var x=k.node(w),O=x.parent;k.edge(w,O).cutvalue=d(k,_,w)}function d(k,_,w){var x=k.node(w),O=x.parent,v=!0,I=_.edge(w,O),S=0;return I||(v=!1,I=_.edge(O,w)),S=I.weight,_.nodeEdges(w).forEach(P=>{var F=P.v===w,T=F?P.w:P.v;if(T!==O){var D=F===v,U=_.edge(P).weight;if(S+=D?U:-U,h(k,w,T)){var q=k.edge(w,T).cutvalue;S+=D?-q:q}}}),S}function p(k,_){arguments.length<2&&(_=k.nodes()[0]),m(k,{},1,_)}function m(k,_,w,x,O){var v=w,I=k.node(x);return _[x]=!0,k.neighbors(x).forEach(S=>{Object.hasOwn(_,S)||(w=m(k,_,w,S,x))}),I.low=v,I.lim=w++,O?I.parent=O:delete I.parent,w}function g(k){return k.edges().find(_=>k.edge(_).cutvalue<0)}function y(k,_,w){var x=w.v,O=w.w;_.hasEdge(x,O)||(x=w.w,O=w.v);var v=k.node(x),I=k.node(O),S=v,P=!1;v.lim>I.lim&&(S=I,P=!0);var F=_.edges().filter(T=>P===E(k,k.node(T.v),S)&&P!==E(k,k.node(T.w),S));return F.reduce((T,D)=>a(_,D)<a(_,T)?D:T)}function C(k,_,w,x){var O=w.v,v=w.w;k.removeEdge(O,v),k.setEdge(x.v,x.w,{}),p(k),u(k,_),b(k,_)}function b(k,_){var w=k.nodes().find(O=>!_.node(O).parent),x=r(k,w);x=x.slice(1),x.forEach(O=>{var v=k.node(O).parent,I=_.edge(O,v),S=!1;I||(I=_.edge(v,O),S=!0),_.node(O).rank=_.node(v).rank+(S?I.minlen:-I.minlen)})}function h(k,_,w){return k.hasEdge(_,w)}function E(k,_,w){return w.low<=_.lim&&_.lim<=w.lim}}),PC=Ge((t,n)=>{var o=yr(),a=o.longestPath,i=Fc(),r=IC();n.exports=l;function l(f){var d=f.graph().ranker;if(d instanceof Function)return d(f);switch(f.graph().ranker){case"network-simplex":u(f);break;case"tight-tree":c(f);break;case"longest-path":s(f);break;case"none":break;default:u(f)}}var s=a;function c(f){a(f),i(f)}function u(f){r(f)}}),TC=Ge((t,n)=>{n.exports=o;function o(r){let l=i(r);r.graph().dummyChains.forEach(s=>{let c=r.node(s),u=c.edgeObj,f=a(r,l,u.v,u.w),d=f.path,p=f.lca,m=0,g=d[m],y=!0;for(;s!==u.w;){if(c=r.node(s),y){for(;(g=d[m])!==p&&r.node(g).maxRank<c.rank;)m++;g===p&&(y=!1)}if(!y){for(;m<d.length-1&&r.node(g=d[m+1]).minRank<=c.rank;)m++;g=d[m]}r.setParent(s,g),s=r.successors(s)[0]}})}function a(r,l,s,c){let u=[],f=[],d=Math.min(l[s].low,l[c].low),p=Math.max(l[s].lim,l[c].lim),m,g;m=s;do m=r.parent(m),u.push(m);while(m&&(l[m].low>d||p>l[m].lim));for(g=m,m=c;(m=r.parent(m))!==g;)f.push(m);return{path:u.concat(f.reverse()),lca:g}}function i(r){let l={},s=0;function c(u){let f=s;r.children(u).forEach(c),l[u]={low:f,lim:s++}}return r.children().forEach(c),l}}),OC=Ge((t,n)=>{var o=at();n.exports={run:a,cleanup:s};function a(c){let u=o.addDummyNode(c,"root",{},"_root"),f=r(c),d=Object.values(f),p=o.applyWithChunking(Math.max,d)-1,m=2*p+1;c.graph().nestingRoot=u,c.edges().forEach(y=>c.edge(y).minlen*=m);let g=l(c)+1;c.children().forEach(y=>i(c,u,m,g,p,f,y)),c.graph().nodeRankFactor=m}function i(c,u,f,d,p,m,g){let y=c.children(g);if(!y.length){g!==u&&c.setEdge(u,g,{weight:0,minlen:f});return}let C=o.addBorderNode(c,"_bt"),b=o.addBorderNode(c,"_bb"),h=c.node(g);c.setParent(C,g),h.borderTop=C,c.setParent(b,g),h.borderBottom=b,y.forEach(E=>{i(c,u,f,d,p,m,E);let k=c.node(E),_=k.borderTop?k.borderTop:E,w=k.borderBottom?k.borderBottom:E,x=k.borderTop?d:2*d,O=_!==w?1:p-m[g]+1;c.setEdge(C,_,{weight:x,minlen:O,nestingEdge:!0}),c.setEdge(w,b,{weight:x,minlen:O,nestingEdge:!0})}),c.parent(g)||c.setEdge(u,C,{weight:0,minlen:p+m[g]})}function r(c){var u={};function f(d,p){var m=c.children(d);m&&m.length&&m.forEach(g=>f(g,p+1)),u[d]=p}return c.children().forEach(d=>f(d,1)),u}function l(c){return c.edges().reduce((u,f)=>u+c.edge(f).weight,0)}function s(c){var u=c.graph();c.removeNode(u.nestingRoot),delete u.nestingRoot,c.edges().forEach(f=>{var d=c.edge(f);d.nestingEdge&&c.removeEdge(f)})}}),VC=Ge((t,n)=>{var o=at();n.exports=a;function a(r){function l(s){let c=r.children(s),u=r.node(s);if(c.length&&c.forEach(l),Object.hasOwn(u,"minRank")){u.borderLeft=[],u.borderRight=[];for(let f=u.minRank,d=u.maxRank+1;f<d;++f)i(r,"borderLeft","_bl",s,u,f),i(r,"borderRight","_br",s,u,f)}}r.children().forEach(l)}function i(r,l,s,c,u,f){let d={width:0,height:0,rank:f,borderType:l},p=u[l][f-1],m=o.addDummyNode(r,"border",d,s);u[l][f]=m,r.setParent(m,c),p&&r.setEdge(p,m,{weight:1})}}),BC=Ge((t,n)=>{n.exports={adjust:o,undo:a};function o(f){let d=f.graph().rankdir.toLowerCase();(d==="lr"||d==="rl")&&i(f)}function a(f){let d=f.graph().rankdir.toLowerCase();(d==="bt"||d==="rl")&&l(f),(d==="lr"||d==="rl")&&(c(f),i(f))}function i(f){f.nodes().forEach(d=>r(f.node(d))),f.edges().forEach(d=>r(f.edge(d)))}function r(f){let d=f.width;f.width=f.height,f.height=d}function l(f){f.nodes().forEach(d=>s(f.node(d))),f.edges().forEach(d=>{let p=f.edge(d);p.points.forEach(s),Object.hasOwn(p,"y")&&s(p)})}function s(f){f.y=-f.y}function c(f){f.nodes().forEach(d=>u(f.node(d))),f.edges().forEach(d=>{let p=f.edge(d);p.points.forEach(u),Object.hasOwn(p,"x")&&u(p)})}function u(f){let d=f.x;f.x=f.y,f.y=d}}),RC=Ge((t,n)=>{var o=at();n.exports=a;function a(i){let r={},l=i.nodes().filter(d=>!i.children(d).length),s=l.map(d=>i.node(d).rank),c=o.applyWithChunking(Math.max,s),u=o.range(c+1).map(()=>[]);function f(d){if(r[d])return;r[d]=!0;let p=i.node(d);u[p.rank].push(d),i.successors(d).forEach(f)}return l.sort((d,p)=>i.node(d).rank-i.node(p).rank).forEach(f),u}}),$C=Ge((t,n)=>{var o=at().zipObject;n.exports=a;function a(r,l){let s=0;for(let c=1;c<l.length;++c)s+=i(r,l[c-1],l[c]);return s}function i(r,l,s){let c=o(s,s.map((g,y)=>y)),u=l.flatMap(g=>r.outEdges(g).map(y=>({pos:c[y.w],weight:r.edge(y).weight})).sort((y,C)=>y.pos-C.pos)),f=1;for(;f<s.length;)f<<=1;let d=2*f-1;f-=1;let p=new Array(d).fill(0),m=0;return u.forEach(g=>{let y=g.pos+f;p[y]+=g.weight;let C=0;for(;y>0;)y%2&&(C+=p[y+1]),y=y-1>>1,p[y]+=g.weight;m+=g.weight*C}),m}}),FC=Ge((t,n)=>{n.exports=o;function o(a,i=[]){return i.map(r=>{let l=a.inEdges(r);if(l.length){let s=l.reduce((c,u)=>{let f=a.edge(u),d=a.node(u.v);return{sum:c.sum+f.weight*d.order,weight:c.weight+f.weight}},{sum:0,weight:0});return{v:r,barycenter:s.sum/s.weight,weight:s.weight}}else return{v:r}})}}),LC=Ge((t,n)=>{var o=at();n.exports=a;function a(l,s){let c={};l.forEach((f,d)=>{let p=c[f.v]={indegree:0,in:[],out:[],vs:[f.v],i:d};f.barycenter!==void 0&&(p.barycenter=f.barycenter,p.weight=f.weight)}),s.edges().forEach(f=>{let d=c[f.v],p=c[f.w];d!==void 0&&p!==void 0&&(p.indegree++,d.out.push(c[f.w]))});let u=Object.values(c).filter(f=>!f.indegree);return i(u)}function i(l){let s=[];function c(f){return d=>{d.merged||(d.barycenter===void 0||f.barycenter===void 0||d.barycenter>=f.barycenter)&&r(f,d)}}function u(f){return d=>{d.in.push(f),--d.indegree===0&&l.push(d)}}for(;l.length;){let f=l.pop();s.push(f),f.in.reverse().forEach(c(f)),f.out.forEach(u(f))}return s.filter(f=>!f.merged).map(f=>o.pick(f,["vs","i","barycenter","weight"]))}function r(l,s){let c=0,u=0;l.weight&&(c+=l.barycenter*l.weight,u+=l.weight),s.weight&&(c+=s.barycenter*s.weight,u+=s.weight),l.vs=s.vs.concat(l.vs),l.barycenter=c/u,l.weight=u,l.i=Math.min(s.i,l.i),s.merged=!0}}),DC=Ge((t,n)=>{var o=at();n.exports=a;function a(l,s){let c=o.partition(l,C=>Object.hasOwn(C,"barycenter")),u=c.lhs,f=c.rhs.sort((C,b)=>b.i-C.i),d=[],p=0,m=0,g=0;u.sort(r(!!s)),g=i(d,f,g),u.forEach(C=>{g+=C.vs.length,d.push(C.vs),p+=C.barycenter*C.weight,m+=C.weight,g=i(d,f,g)});let y={vs:d.flat(!0)};return m&&(y.barycenter=p/m,y.weight=m),y}function i(l,s,c){let u;for(;s.length&&(u=s[s.length-1]).i<=c;)s.pop(),l.push(u.vs),c++;return c}function r(l){return(s,c)=>s.barycenter<c.barycenter?-1:s.barycenter>c.barycenter?1:l?c.i-s.i:s.i-c.i}}),MC=Ge((t,n)=>{var o=FC(),a=LC(),i=DC();n.exports=r;function r(c,u,f,d){let p=c.children(u),m=c.node(u),g=m?m.borderLeft:void 0,y=m?m.borderRight:void 0,C={};g&&(p=p.filter(k=>k!==g&&k!==y));let b=o(c,p);b.forEach(k=>{if(c.children(k.v).length){let _=r(c,k.v,f,d);C[k.v]=_,Object.hasOwn(_,"barycenter")&&s(k,_)}});let h=a(b,f);l(h,C);let E=i(h,d);if(g&&(E.vs=[g,E.vs,y].flat(!0),c.predecessors(g).length)){let k=c.node(c.predecessors(g)[0]),_=c.node(c.predecessors(y)[0]);Object.hasOwn(E,"barycenter")||(E.barycenter=0,E.weight=0),E.barycenter=(E.barycenter*E.weight+k.order+_.order)/(E.weight+2),E.weight+=2}return E}function l(c,u){c.forEach(f=>{f.vs=f.vs.flatMap(d=>u[d]?u[d].vs:d)})}function s(c,u){c.barycenter!==void 0?(c.barycenter=(c.barycenter*c.weight+u.barycenter*u.weight)/(c.weight+u.weight),c.weight+=u.weight):(c.barycenter=u.barycenter,c.weight=u.weight)}}),jC=Ge((t,n)=>{var o=Mt().Graph,a=at();n.exports=i;function i(l,s,c,u){u||(u=l.nodes());let f=r(l),d=new o({compound:!0}).setGraph({root:f}).setDefaultNodeLabel(p=>l.node(p));return u.forEach(p=>{let m=l.node(p),g=l.parent(p);(m.rank===s||m.minRank<=s&&s<=m.maxRank)&&(d.setNode(p),d.setParent(p,g||f),l[c](p).forEach(y=>{let C=y.v===p?y.w:y.v,b=d.edge(C,p),h=b!==void 0?b.weight:0;d.setEdge(C,p,{weight:l.edge(y).weight+h})}),Object.hasOwn(m,"minRank")&&d.setNode(p,{borderLeft:m.borderLeft[s],borderRight:m.borderRight[s]}))}),d}function r(l){for(var s;l.hasNode(s=a.uniqueId("_root")););return s}}),vC=Ge((t,n)=>{n.exports=o;function o(a,i,r){let l={},s;r.forEach(c=>{let u=a.parent(c),f,d;for(;u;){if(f=a.parent(u),f?(d=l[f],l[f]=u):(d=s,s=u),d&&d!==u){i.setEdge(d,u);return}u=f}})}}),KC=Ge((t,n)=>{var o=RC(),a=$C(),i=MC(),r=jC(),l=vC(),s=Mt().Graph,c=at();n.exports=u;function u(m,g={}){if(typeof g.customOrder=="function"){g.customOrder(m,u);return}let y=c.maxRank(m),C=f(m,c.range(1,y+1),"inEdges"),b=f(m,c.range(y-1,-1,-1),"outEdges"),h=o(m);if(p(m,h),g.disableOptimalOrderHeuristic)return;let E=Number.POSITIVE_INFINITY,k,_=g.constraints||[];for(let w=0,x=0;x<4;++w,++x){d(w%2?C:b,w%4>=2,_),h=c.buildLayerMatrix(m);let O=a(m,h);O<E?(x=0,k=Object.assign({},h),E=O):O===E&&(k=structuredClone(h))}p(m,k)}function f(m,g,y){let C=new Map,b=(h,E)=>{C.has(h)||C.set(h,[]),C.get(h).push(E)};for(let h of m.nodes()){let E=m.node(h);if(typeof E.rank=="number"&&b(E.rank,h),typeof E.minRank=="number"&&typeof E.maxRank=="number")for(let k=E.minRank;k<=E.maxRank;k++)k!==E.rank&&b(k,h)}return g.map(function(h){return r(m,h,y,C.get(h)||[])})}function d(m,g,y){let C=new s;m.forEach(function(b){y.forEach(k=>C.setEdge(k.left,k.right));let h=b.graph().root,E=i(b,h,C,g);E.vs.forEach((k,_)=>b.node(k).order=_),l(b,C,E.vs)})}function p(m,g){Object.values(g).forEach(y=>y.forEach((C,b)=>m.node(C).order=b))}}),UC=Ge((t,n)=>{var o=Mt().Graph,a=at();n.exports={positionX:y,findType1Conflicts:i,findType2Conflicts:r,addConflict:s,hasConflict:c,verticalAlignment:u,horizontalCompaction:f,alignCoordinates:m,findSmallestWidthAlignment:p,balance:g};function i(h,E){let k={};function _(w,x){let O=0,v=0,I=w.length,S=x[x.length-1];return x.forEach((P,F)=>{let T=l(h,P),D=T?h.node(T).order:I;(T||P===S)&&(x.slice(v,F+1).forEach(U=>{h.predecessors(U).forEach(q=>{let L=h.node(q),V=L.order;(V<O||D<V)&&!(L.dummy&&h.node(U).dummy)&&s(k,q,U)})}),v=F+1,O=D)}),x}return E.length&&E.reduce(_),k}function r(h,E){let k={};function _(x,O,v,I,S){let P;a.range(O,v).forEach(F=>{P=x[F],h.node(P).dummy&&h.predecessors(P).forEach(T=>{let D=h.node(T);D.dummy&&(D.order<I||D.order>S)&&s(k,T,P)})})}function w(x,O){let v=-1,I,S=0;return O.forEach((P,F)=>{if(h.node(P).dummy==="border"){let T=h.predecessors(P);T.length&&(I=h.node(T[0]).order,_(O,S,F,v,I),S=F,v=I)}_(O,S,O.length,I,x.length)}),O}return E.length&&E.reduce(w),k}function l(h,E){if(h.node(E).dummy)return h.predecessors(E).find(k=>h.node(k).dummy)}function s(h,E,k){if(E>k){let w=E;E=k,k=w}let _=h[E];_||(h[E]=_={}),_[k]=!0}function c(h,E,k){if(E>k){let _=E;E=k,k=_}return!!h[E]&&Object.hasOwn(h[E],k)}function u(h,E,k,_){let w={},x={},O={};return E.forEach(v=>{v.forEach((I,S)=>{w[I]=I,x[I]=I,O[I]=S})}),E.forEach(v=>{let I=-1;v.forEach(S=>{let P=_(S);if(P.length){P=P.sort((T,D)=>O[T]-O[D]);let F=(P.length-1)/2;for(let T=Math.floor(F),D=Math.ceil(F);T<=D;++T){let U=P[T];x[S]===S&&I<O[U]&&!c(k,S,U)&&(x[U]=S,x[S]=w[S]=w[U],I=O[U])}}})}),{root:w,align:x}}function f(h,E,k,_,w){let x={},O=d(h,E,k,w),v=w?"borderLeft":"borderRight";function I(F,T){let D=O.nodes().slice(),U={},q=D.pop();for(;q;){if(U[q])F(q);else{U[q]=!0,D.push(q);for(let L of T(q))D.push(L)}q=D.pop()}}function S(F){x[F]=O.inEdges(F).reduce((T,D)=>Math.max(T,x[D.v]+O.edge(D)),0)}function P(F){let T=O.outEdges(F).reduce((U,q)=>Math.min(U,x[q.w]-O.edge(q)),Number.POSITIVE_INFINITY),D=h.node(F);T!==Number.POSITIVE_INFINITY&&D.borderType!==v&&(x[F]=Math.max(x[F],T))}return I(S,O.predecessors.bind(O)),I(P,O.successors.bind(O)),Object.keys(_).forEach(F=>x[F]=x[k[F]]),x}function d(h,E,k,_){let w=new o,x=h.graph(),O=C(x.nodesep,x.edgesep,_);return E.forEach(v=>{let I;v.forEach(S=>{let P=k[S];if(w.setNode(P),I){var F=k[I],T=w.edge(F,P);w.setEdge(F,P,Math.max(O(h,S,I),T||0))}I=S})}),w}function p(h,E){return Object.values(E).reduce((k,_)=>{let w=Number.NEGATIVE_INFINITY,x=Number.POSITIVE_INFINITY;Object.entries(_).forEach(([v,I])=>{let S=b(h,v)/2;w=Math.max(I+S,w),x=Math.min(I-S,x)});let O=w-x;return O<k[0]&&(k=[O,_]),k},[Number.POSITIVE_INFINITY,null])[1]}function m(h,E){let k=Object.values(E),_=a.applyWithChunking(Math.min,k),w=a.applyWithChunking(Math.max,k);["u","d"].forEach(x=>{["l","r"].forEach(O=>{let v=x+O,I=h[v];if(I===E)return;let S=Object.values(I),P=_-a.applyWithChunking(Math.min,S);O!=="l"&&(P=w-a.applyWithChunking(Math.max,S)),P&&(h[v]=a.mapValues(I,F=>F+P))})})}function g(h,E){return a.mapValues(h.ul,(k,_)=>{if(E)return h[E.toLowerCase()][_];{let w=Object.values(h).map(x=>x[_]).sort((x,O)=>x-O);return(w[1]+w[2])/2}})}function y(h){let E=a.buildLayerMatrix(h),k=Object.assign(i(h,E),r(h,E)),_={},w;["u","d"].forEach(O=>{w=O==="u"?E:Object.values(E).reverse(),["l","r"].forEach(v=>{v==="r"&&(w=w.map(F=>Object.values(F).reverse()));let I=(O==="u"?h.predecessors:h.successors).bind(h),S=u(h,w,k,I),P=f(h,w,S.root,S.align,v==="r");v==="r"&&(P=a.mapValues(P,F=>-F)),_[O+v]=P})});let x=p(h,_);return m(_,x),g(_,h.graph().align)}function C(h,E,k){return(_,w,x)=>{let O=_.node(w),v=_.node(x),I=0,S;if(I+=O.width/2,Object.hasOwn(O,"labelpos"))switch(O.labelpos.toLowerCase()){case"l":S=-O.width/2;break;case"r":S=O.width/2;break}if(S&&(I+=k?S:-S),S=0,I+=(O.dummy?E:h)/2,I+=(v.dummy?E:h)/2,I+=v.width/2,Object.hasOwn(v,"labelpos"))switch(v.labelpos.toLowerCase()){case"l":S=v.width/2;break;case"r":S=-v.width/2;break}return S&&(I+=k?S:-S),S=0,I}}function b(h,E){return h.node(E).width}}),qC=Ge((t,n)=>{var o=at(),a=UC().positionX;n.exports=i;function i(l){l=o.asNonCompoundGraph(l),r(l),Object.entries(a(l)).forEach(([s,c])=>l.node(s).x=c)}function r(l){let s=o.buildLayerMatrix(l),c=l.graph().ranksep,u=l.graph().rankalign,f=0;s.forEach(d=>{let p=d.reduce((m,g)=>{let y=l.node(g).height;return m>y?m:y},0);d.forEach(m=>{let g=l.node(m);u==="top"?g.y=f+g.height/2:u==="bottom"?g.y=f+p-g.height/2:g.y=f+p/2}),f+=p+c})}}),GC=Ge((t,n)=>{var o=SC(),a=AC(),i=PC(),r=at().normalizeRanks,l=TC(),s=at().removeEmptyRanks,c=OC(),u=VC(),f=BC(),d=KC(),p=qC(),m=at(),g=Mt().Graph;n.exports=y;function y(N,B={}){let j=B.debugTiming?m.time:m.notime;return j("layout",()=>{let W=j(" buildLayoutGraph",()=>I(N));return j(" runLayout",()=>C(W,j,B)),j(" updateInputGraph",()=>b(N,W)),W})}function C(N,B,j){B(" makeSpaceForEdgeLabels",()=>S(N)),B(" removeSelfEdges",()=>R(N)),B(" acyclic",()=>o.run(N)),B(" nestingGraph.run",()=>c.run(N)),B(" rank",()=>i(m.asNonCompoundGraph(N))),B(" injectEdgeLabelProxies",()=>P(N)),B(" removeEmptyRanks",()=>s(N)),B(" nestingGraph.cleanup",()=>c.cleanup(N)),B(" normalizeRanks",()=>r(N)),B(" assignRankMinMax",()=>F(N)),B(" removeEdgeLabelProxies",()=>T(N)),B(" normalize.run",()=>a.run(N)),B(" parentDummyChains",()=>l(N)),B(" addBorderSegments",()=>u(N)),B(" order",()=>d(N,j)),B(" insertSelfEdges",()=>A(N)),B(" adjustCoordinateSystem",()=>f.adjust(N)),B(" position",()=>p(N)),B(" positionSelfEdges",()=>K(N)),B(" removeBorderNodes",()=>V(N)),B(" normalize.undo",()=>a.undo(N)),B(" fixupEdgeLabelCoords",()=>q(N)),B(" undoCoordinateSystem",()=>f.undo(N)),B(" translateGraph",()=>D(N)),B(" assignNodeIntersects",()=>U(N)),B(" reversePoints",()=>L(N)),B(" acyclic.undo",()=>o.undo(N))}function b(N,B){N.nodes().forEach(j=>{let W=N.node(j),X=B.node(j);W&&(W.x=X.x,W.y=X.y,W.order=X.order,W.rank=X.rank,B.children(j).length&&(W.width=X.width,W.height=X.height))}),N.edges().forEach(j=>{let W=N.edge(j),X=B.edge(j);W.points=X.points,Object.hasOwn(X,"x")&&(W.x=X.x,W.y=X.y)}),N.graph().width=B.graph().width,N.graph().height=B.graph().height}var h=["nodesep","edgesep","ranksep","marginx","marginy"],E={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb",rankalign:"center"},k=["acyclicer","ranker","rankdir","align","rankalign"],_=["width","height","rank"],w={width:0,height:0},x=["minlen","weight","width","height","labeloffset"],O={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},v=["labelpos"];function I(N){let B=new g({multigraph:!0,compound:!0}),j=$(N.graph());return B.setGraph(Object.assign({},E,z(j,h),m.pick(j,k))),N.nodes().forEach(W=>{let X=$(N.node(W)),ee=z(X,_);Object.keys(w).forEach(oe=>{ee[oe]===void 0&&(ee[oe]=w[oe])}),B.setNode(W,ee),B.setParent(W,N.parent(W))}),N.edges().forEach(W=>{let X=$(N.edge(W));B.setEdge(W,Object.assign({},O,z(X,x),m.pick(X,v)))}),B}function S(N){let B=N.graph();B.ranksep/=2,N.edges().forEach(j=>{let W=N.edge(j);W.minlen*=2,W.labelpos.toLowerCase()!=="c"&&(B.rankdir==="TB"||B.rankdir==="BT"?W.width+=W.labeloffset:W.height+=W.labeloffset)})}function P(N){N.edges().forEach(B=>{let j=N.edge(B);if(j.width&&j.height){let W=N.node(B.v),X={rank:(N.node(B.w).rank-W.rank)/2+W.rank,e:B};m.addDummyNode(N,"edge-proxy",X,"_ep")}})}function F(N){let B=0;N.nodes().forEach(j=>{let W=N.node(j);W.borderTop&&(W.minRank=N.node(W.borderTop).rank,W.maxRank=N.node(W.borderBottom).rank,B=Math.max(B,W.maxRank))}),N.graph().maxRank=B}function T(N){N.nodes().forEach(B=>{let j=N.node(B);j.dummy==="edge-proxy"&&(N.edge(j.e).labelRank=j.rank,N.removeNode(B))})}function D(N){let B=Number.POSITIVE_INFINITY,j=0,W=Number.POSITIVE_INFINITY,X=0,ee=N.graph(),oe=ee.marginx||0,Q=ee.marginy||0;function te(ie){let re=ie.x,Ce=ie.y,pe=ie.width,Me=ie.height;B=Math.min(B,re-pe/2),j=Math.max(j,re+pe/2),W=Math.min(W,Ce-Me/2),X=Math.max(X,Ce+Me/2)}N.nodes().forEach(ie=>te(N.node(ie))),N.edges().forEach(ie=>{let re=N.edge(ie);Object.hasOwn(re,"x")&&te(re)}),B-=oe,W-=Q,N.nodes().forEach(ie=>{let re=N.node(ie);re.x-=B,re.y-=W}),N.edges().forEach(ie=>{let re=N.edge(ie);re.points.forEach(Ce=>{Ce.x-=B,Ce.y-=W}),Object.hasOwn(re,"x")&&(re.x-=B),Object.hasOwn(re,"y")&&(re.y-=W)}),ee.width=j-B+oe,ee.height=X-W+Q}function U(N){N.edges().forEach(B=>{let j=N.edge(B),W=N.node(B.v),X=N.node(B.w),ee,oe;j.points?(ee=j.points[0],oe=j.points[j.points.length-1]):(j.points=[],ee=X,oe=W),j.points.unshift(m.intersectRect(W,ee)),j.points.push(m.intersectRect(X,oe))})}function q(N){N.edges().forEach(B=>{let j=N.edge(B);if(Object.hasOwn(j,"x"))switch((j.labelpos==="l"||j.labelpos==="r")&&(j.width-=j.labeloffset),j.labelpos){case"l":j.x-=j.width/2+j.labeloffset;break;case"r":j.x+=j.width/2+j.labeloffset;break}})}function L(N){N.edges().forEach(B=>{let j=N.edge(B);j.reversed&&j.points.reverse()})}function V(N){N.nodes().forEach(B=>{if(N.children(B).length){let j=N.node(B),W=N.node(j.borderTop),X=N.node(j.borderBottom),ee=N.node(j.borderLeft[j.borderLeft.length-1]),oe=N.node(j.borderRight[j.borderRight.length-1]);j.width=Math.abs(oe.x-ee.x),j.height=Math.abs(X.y-W.y),j.x=ee.x+j.width/2,j.y=W.y+j.height/2}}),N.nodes().forEach(B=>{N.node(B).dummy==="border"&&N.removeNode(B)})}function R(N){N.edges().forEach(B=>{if(B.v===B.w){var j=N.node(B.v);j.selfEdges||(j.selfEdges=[]),j.selfEdges.push({e:B,label:N.edge(B)}),N.removeEdge(B)}})}function A(N){var B=m.buildLayerMatrix(N);B.forEach(j=>{var W=0;j.forEach((X,ee)=>{var oe=N.node(X);oe.order=ee+W,(oe.selfEdges||[]).forEach(Q=>{m.addDummyNode(N,"selfedge",{width:Q.label.width,height:Q.label.height,rank:oe.rank,order:ee+ ++W,e:Q.e,label:Q.label},"_se")}),delete oe.selfEdges})})}function K(N){N.nodes().forEach(B=>{var j=N.node(B);if(j.dummy==="selfedge"){var W=N.node(j.e.v),X=W.x+W.width/2,ee=W.y,oe=j.x-X,Q=W.height/2;N.setEdge(j.e,j.label),N.removeNode(B),j.label.points=[{x:X+2*oe/3,y:ee-Q},{x:X+5*oe/6,y:ee-Q},{x:X+oe,y:ee},{x:X+5*oe/6,y:ee+Q},{x:X+2*oe/3,y:ee+Q}],j.label.x=j.x,j.label.y=j.y}})}function z(N,B){return m.mapValues(m.pick(N,B),Number)}function $(N){var B={};return N&&Object.entries(N).forEach(([j,W])=>{typeof j=="string"&&(j=j.toLowerCase()),B[j]=W}),B}}),zC=Ge((t,n)=>{var o=at(),a=Mt().Graph;n.exports={debugOrdering:i};function i(r){let l=o.buildLayerMatrix(r),s=new a({compound:!0,multigraph:!0}).setGraph({});return r.nodes().forEach(c=>{s.setNode(c,{label:c}),s.setParent(c,"layer"+r.node(c).rank)}),r.edges().forEach(c=>s.setEdge(c.v,c.w,{},c.name)),l.forEach((c,u)=>{let f="layer"+u;s.setNode(f,{rank:"same"}),c.reduce((d,p)=>(s.setEdge(d,p,{style:"invis"}),p))}),s}}),HC=Ge((t,n)=>{n.exports="2.0.4"}),WC=Ge((t,n)=>{n.exports={graphlib:Mt(),layout:GC(),debug:zC(),util:{time:at().time,notime:at().notime},version:HC()}});const Lc=WC();/*! For license information please see dagre.esm.js.LEGAL.txt */function YC(t){const{branchLayout:n,phase:o,layoutOptions:a,nodes:i,edges:r}=t,{findNode:l}=ze.useVueFlow(),{state:s,branchGroups:c,getNodeById:u,moveNode:f,commit:d}=tt(),{getNodeDepth:p,isGroupId:m,groupsByOwner:g}=c,{isBranchEdgeId:y,updateGroupLayout:C,translateGroupTree:b,waitForLayoutFlush:h}=n,{viewport:E,padding:k=mn.padding,gaps:_=mn.gaps}=a,{nodes:w=mn.gaps.nodes,edges:x=mn.gaps.edges,ranks:O=mn.gaps.ranks}=_;async function v(P=!0){const F=new Map(i.value.map(N=>[N.id,N.data])),T=new Map,D=new Map,U=N=>{if(!N)return;let B=D.get(N);return B||(B=l(N),B&&D.set(N,B),B)},q=new Map,L=N=>{let B=q.get(N);return B!==void 0||(B=p(N),q.set(N,B)),B},V=N=>{if(!ko(N.data))return N.parentNode;const B=U(N.data.ownerId);if(!B)throw new Error(`Cannot find owner node '${N.data.ownerId}' for group node '${N.id}' via findNode`);return B.parentNode};for(const N of r.value){if(y(N.id))continue;const B=N.source,j=N.target;if(m(B)||m(j))continue;const W=U(B),X=U(j);if(W){if(!X)throw new Error(`Cannot find target node '${j}' for edge '${N.id}' via findNode`)}else throw new Error(`Cannot find source node '${B}' for edge '${N.id}' via findNode`);if(V(W)===V(X))continue;let ee=W,oe=X,Q=L(ee.id),te=L(oe.id);for(;Q!==te;)if(Q>te){const ie=V(ee);if(!ie)throw new Error(`Expected node '${ee.id}' to have parent, but it does not`);const re=U(ie);if(!re)throw new Error(`Cannot find parent node '${ie}' for node '${ee.id}' via findNode`);ee=re,Q--}else if(te>Q){const ie=V(oe);if(!ie)throw new Error(`Expected node '${oe.id}' to have parent, but it does not`);const re=U(ie);if(!re)throw new Error(`Cannot find parent node '${ie}' for node '${oe.id}' via findNode`);oe=re,te--}for(;Q>=0;){const ie=V(ee),re=V(oe);if(ie===re){T.has(Q)||T.set(Q,[]),T.get(Q).push({v:ee.id,w:oe.id});break}if(ie){if(!re){const Me=`Expected node '${oe.id}' to have parent, but it does not`;throw console.error(Me,oe),new Error(Me)}}else{const Me=`Expected node '${ee.id}' to have parent, but it does not`;throw console.error(Me,ee),new Error(Me)}const Ce=U(ie),pe=U(re);if(Ce){if(!pe)throw new Error(`Cannot find parent node '${re}' for node '${oe.id}' via findNode`)}else throw new Error(`Cannot find parent node '${ie}' for node '${ee.id}' via findNode`);ee=Ce,oe=pe,Q--,te--}}const R=s.value.groups.toSorted((N,B)=>L(B.ownerId)-L(N.ownerId));for(const N of R)I(N.memberIds.reduce((B,j)=>{const W=u(j);if(!W)return console.warn(`Cannot find node '${j}' of group '${N.id}' by getNodeById`),B;if(W.phase!==o)return B;if(W.type==="branch"){const X=g.value.get(W.id);X&&B.push(...X)}return F.delete(W.id),B.push(W),B},[]),{virtualEdges:T.get(L(N.ownerId)),cachedFindNode:U}),await e.nextTick(),C(N.id,!1),await h();const A=F.values().toArray();for(const N of A){if(ko(N)||N.type!=="branch")continue;const B=g.value.get(N.id);B&&A.push(...B)}const{autoNodes:K,leftNode:z,rightNode:$}=S(A);I(K,{leftNode:z,rightNode:$,virtualEdges:T.get(0),cachedFindNode:U}),P&&d()}function I(P,F){var ee,oe,Q,te,ie;const{leftNode:T,rightNode:D,virtualEdges:U,cachedFindNode:q}=F||{},L=T?(q??l)(T.id):void 0,V=D?(q??l)(D.id):void 0;let R;if(P.length>0){R=new Lc.graphlib.Graph({multigraph:!0}),R.setGraph({rankdir:o==="request"?"LR":"RL",nodesep:w,edgesep:x,ranksep:O});const re=new Set;for(const Ce of P){const pe=(q??l)(Ce.id);if(!pe){console.warn(`Cannot find graph node '${Ce.id}' in ${o} phase`);continue}re.add(Ce.id),ko(Ce)?R.setNode(Ce.id,{...Ce.dimensions??pe.dimensions}):R.setNode(Ce.id,{...pe.dimensions})}for(const Ce of r.value)!re.has(Ce.source)||!re.has(Ce.target)||R.setEdge(Ce.source,Ce.target,{points:[]});U==null||U.forEach(Ce=>R.setEdge(Ce,{points:[]})),Lc.layout(R)}const A=[],K=re=>({x:re.x-re.width/2,y:re.y-re.height/2,width:re.width,height:re.height});if(P.length>0){if(!R)throw new Error("Expected dagreGraph to be initialized");for(const re of P){const Ce=R.node(re.id),pe=K(Ce);A.push(pe),ko(re)?b(re.id,pe,pe.x+Yn,pe.y+Yn):f(re.id,{x:pe.x,y:pe.y},!1)}}const z=A.length>0?$c(A):{x:0,y:0,width:0,height:0},$=z.width,N=z.height,B=z.x,j=z.x+z.width,W=Math.max(0,Math.min(e.toValue(E==null?void 0:E.width)??Number.POSITIVE_INFINITY,kC)-$-2*w-(((ee=L==null?void 0:L.dimensions)==null?void 0:ee.width)??0)-(((oe=V==null?void 0:V.dimensions)==null?void 0:oe.width)??0)-2*k),X=z.y+N/2;T&&f(T.id,{x:B-w-W/2-(((Q=L==null?void 0:L.dimensions)==null?void 0:Q.width)??0),y:X-(((te=L==null?void 0:L.dimensions)==null?void 0:te.height)??0)/2},!1),D&&f(D.id,{x:j+w+W/2,y:X-(((ie=V==null?void 0:V.dimensions)==null?void 0:ie.height)??0)/2},!1)}function S(P){let F,T;const D=[];for(const U of P){if(ko(U)){D.push(U);continue}switch(U.name){case"request":{if(o!=="request")throw new Error(`Unexpected request node in ${o} phase`);if(F)throw new Error("Duplicated request node in request phase");F=U;break}case"service_request":{if(o!=="request")throw new Error(`Unexpected service_request node in ${o} phase`);if(T)throw new Error("Duplicated service_request node in request phase");T=U;break}case"service_response":{if(o!=="response")throw new Error(`Unexpected service_response node in ${o} phase`);if(T)throw new Error("Duplicated service_response node in response phase");T=U;break}case"response":{if(o!=="response")throw new Error(`Unexpected response node in ${o} phase`);if(F)throw new Error("Duplicated response node in response phase");F=U;break}default:{D.push(U);break}}}return{autoNodes:D,leftNode:F,rightNode:T}}return{autoLayout:v}}function JC({phase:t,groupMapById:n,getNodeDepth:o,canAddMember:a,draggingId:i}){const r=e.shallowRef(),l=e.shallowRef();function s(d){r.value=d,l.value=void 0}function c(){r.value&&(r.value=void 0,l.value=void 0)}function u(d){let p;const m=i==null?void 0:i.value;return n.value.forEach(g=>{if(g.phase!==t||m&&$a(m)&&!a(g.ownerId,g.branch,m))return;const y=g.position,C=g.dimensions;if(!y||!C||!(d.x>=y.x&&d.x<=y.x+C.width&&d.y>=y.y&&d.y<=y.y+C.height))return;const h=o(g.ownerId);(!p||h>p.depth)&&(p={depth:h,id:g.id})}),p==null?void 0:p.id}function f(d){if(!r.value){l.value=void 0;return}if(!d){l.value=void 0;return}l.value=u(d)}return{activeGroupId:l,start:s,updateActiveGroup:f,end:c}}function XC({phase:t,readonly:n,flowId:o,draggingId:a}){const{findNode:i}=ze.useVueFlow(o),r=tt(),{state:l,groupMapById:s,getNodeById:c,moveNode:u,moveGroup:f,setGroupLayout:d,commit:p,branchGroups:m}=r,{memberGroupMap:g,groupsByOwner:y,getNodeDepth:C,getGroupDepth:b}=m,h=V=>!!V&&V.startsWith("branch:");function E(V){const R=[];for(const A of V.memberIds){const K=c(A);K&&R.push(K)}return R}const k=e.computed(()=>{const V=new Map;return g.value.forEach((R,A)=>{if(R.phase!==t||!R.position)return;const K=c(A);K&&(K.phase!==t||K.hidden||V.set(A,R))}),V}),_=e.computed(()=>{const V=new Map;return y.value.forEach((R,A)=>{const K=R.filter(z=>z.phase===t);K.length>0&&V.set(A,K)}),V}),w=e.computed(()=>{const V=[];for(const R of l.value.groups){const A=c(R.ownerId);if(!A||A.phase!==t)continue;const K=R.position,z=R.dimensions;if(!K||!z)continue;const $=E(R).filter(B=>B.phase===t&&!B.hidden),N=b(R.id);V.push({id:R.id,type:"group",position:K,width:z.width,height:z.height,data:{...R,memberIds:$.map(B=>B.id)},draggable:!n,selectable:!1,zIndex:N*fr+hC})}return V}),x=e.computed(()=>{let V=0;for(const R of l.value.groups){if(R.phase!==t)continue;const A=b(R.id);A>V&&(V=A)}return V}),O=e.computed(()=>{const V=[];for(const R of l.value.groups){if(R.phase!==t||!R.position||!R.dimensions)continue;const A=c(R.ownerId);if(!A||A.phase!==t||A.hidden||!E(R).filter(N=>N.phase===t&&!N.hidden).length)continue;const z=Math.max(C(A.id),b(R.id))+x.value+1,$={id:`branch:${R.id}`,source:A.id,target:R.id,sourceHandle:`branch@${R.branch}`,targetHandle:"input",markerEnd:ze.MarkerType.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:A.id,branch:R.branch,groupId:R.id},zIndex:z*fr+_C};V.push($)}return V}),v=new Map,I=new Map;let S;function P(V,R=!0){if(V.phase!==t)return;const A=E(V).filter(B=>B.phase===t&&!B.hidden);if(!A.length)return;const K=[];for(const B of A){const j=i(B.id),W=j==null?void 0:j.dimensions,X=(W==null?void 0:W.width)??0,ee=(W==null?void 0:W.height)??0;if(X<=0||ee<=0)return;K.push({...B.position,width:X,height:ee});const oe=y.value.get(B.id)??[];for(const Q of oe){if(Q.phase!==t)continue;const te=v.get(Q.id),ie=(te==null?void 0:te.position)??Q.position,re=(te==null?void 0:te.dimensions)??Q.dimensions;!ie||!re||K.push({x:ie.x,y:ie.y,width:re.width,height:re.height})}}const z=$c(K),$=z.width+Yn*2,N=z.height+Yn*2;return{position:{x:Math.round(z.x-Yn),y:Math.round(z.y-Yn)},dimensions:{width:Math.round($),height:Math.round(N)},commit:R}}function F(){if(v.size===0){S=void 0;return}const V=[];let R=!1;v.forEach((A,K)=>{const z=d(K,A,!1);V.push({id:K,changed:z,commit:A.commit}),A.commit&&z&&!R&&(R=!0)}),v.clear(),S=void 0;for(const{id:A,changed:K,commit:z}of V){if(!K)continue;const $=s.value.get(A);if(!$)continue;const N=k.value.get($.ownerId);N&&I.set(N.id,{commit:z})}if(I.size>0){const A=Array.from(I);I.clear();for(const[K,{commit:z}]of A)D(K,z)}R&&p("*")}function T(){v.size!==0&&(S||(S=e.nextTick().then(F)))}function D(V,R=!0){const A=s.value.get(V);if(!A)return;const K=P(A,R);K&&(v.set(V,K),T())}function U(V,R,A,K){const z=s.value.get(V);if(!z)return;if(!z.position){f(V,R,!1),D(V);return}if(A===0&&K===0){f(V,R,!1);return}f(V,R,!1);const $=[V],N=new Set([V]),B=new Set;for(;$.length;){const j=$.shift(),W=s.value.get(j);if(!W)continue;const X=E(W).filter(ee=>ee.phase===t&&!ee.hidden);for(const ee of X){B.has(ee.id)||(u(ee.id,{x:ee.position.x+A,y:ee.position.y+K},!1),B.add(ee.id));const oe=_.value.get(ee.id)??[];for(const Q of oe){if(N.has(Q.id))continue;const te=s.value.get(Q.id);te!=null&&te.position&&f(Q.id,{x:te.position.x+A,y:te.position.y+K},!1),N.add(Q.id),$.push(Q.id)}}}}function q(V,R){const A=a==null?void 0:a.value;if(!A)return!1;if(A===V||R.some(K=>A===K))return!0;for(const K of R){const z=_.value.get(K)??[];if(z!=null&&z.some($=>$.id===A))return!0}return!1}const L=new Map;return e.watch(()=>l.value.groups.filter(R=>R.phase===t).map(R=>{const A=R.memberIds.map(K=>{var B,j;const z=i(K),$=Math.round(((B=z==null?void 0:z.dimensions)==null?void 0:B.width)??0),N=Math.round(((j=z==null?void 0:z.dimensions)==null?void 0:j.height)??0);return`${K}:${$}x${N}`});return{id:R.id,memberIds:R.memberIds,signature:A.join(",")}}),V=>{const R=new Set(V.map(A=>A.id));for(const A of L.keys())R.has(A)||L.delete(A);for(const A of V)q(A.id,A.memberIds)||L.get(A.id)===A.signature||(L.set(A.id,A.signature),D(A.id))},{deep:!0,flush:"post"}),{groupsByOwner:_,memberGroupMap:k,groupNodes:w,branchEdges:O,isBranchEdgeId:h,updateGroupLayout:D,translateGroupTree:U,getNodeDepth:C,maxGroupDepth:x,waitForLayoutFlush:()=>S??Promise.resolve()}}function ZC(t){e.provide(Bc,t)}function Dc(){return e.inject(Bc,void 0)}function Mc(){const t=Dc();if(!t)throw new Error("Confirm modal not provided");return t}function QC(t){const{readonly:n,flowId:o}=t,a=ze.useVueFlow(o),{onNodesChange:i,onEdgesChange:r,onPaneClick:l,findEdge:s}=a,{disconnectEdge:c,commit:u,portalSelection:f,selectPortalEdge:d}=tt();i(p=>{p.some(m=>m.type==="select"&&"selected"in m&&m.selected)&&d(void 0)}),r(p=>{const m=p.some(y=>y.type==="select"&&"selected"in y&&y.selected),g=f.value?p.some(y=>y.type==="remove"&&y.id===f.value):!1;(m||g)&&d(void 0)}),l(()=>d(void 0)),Xe.useEventListener("keydown",p=>{if(n||p.key!=="Delete"&&p.key!=="Backspace")return;const m=f.value;!m||s(m)||(p.preventDefault(),c(m,!1),d(void 0),u())})}function jc(t){const n=t.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const eE={default:fy,hover:gy,selected:my};let vc,Ga;function _r(t){const n=t.id===vc?"selected":t.id===Ga?"hover":"default",o=eE[n],{markerEnd:a}=t,i=typeof a=="object"?{...a,color:o}:{type:a,color:o},r=t.zIndex??0,l=n==="selected"?r+2:n==="hover"?r+1:r;return{...t,style:{...t.style,stroke:o,strokeWidth:n==="selected"?1.5:void 0},markerEnd:i,zIndex:l}}const[tE,nE]=Xe.createInjectionState(function(t){const{phase:n,flowId:o,layoutOptions:a,readonly:i}=t,{viewport:r,padding:l=mn.padding,gaps:s=mn.gaps}=a,{nodes:c=mn.gaps.nodes}=s,u=ze.useVueFlow(o),f=tt(),d=Dc(),p=ua(),{i18n:{t:m}}=De(),{findNode:g,fitView:y,deleteKeyCode:C,onNodeDrag:b,onNodeDragStop:h,onConnect:E,onNodesChange:k,onEdgesChange:_,onEdgeUpdate:w,onEdgeMouseEnter:x,onEdgeMouseLeave:O,getNodes:v,setNodes:I,setEdges:S,addSelectedNodes:P,screenToFlowCoordinate:F}=u;C.value=["Delete","Backspace"];const{state:T,commit:D,moveNode:U,selectNode:q,removeNode:L,getNodeById:V,connectEdge:R,disconnectEdge:A,getInEdgesByNodeId:K,branchGroups:z,commit:$,reset:N,groupMapById:B}=f,{isGroupId:j,canAddMember:W}=z,X=e.shallowRef(),ee=ne=>{X.value=ne},oe=e.readonly(X);function Q(ne,Ee){const be=V(ne.source),ke=V(ne.target);return!!(be&&ke&&be.phase===Ee&&ke.phase===Ee)}const te=XC({phase:n,readonly:i,flowId:o,draggingId:oe}),{memberGroupMap:ie,groupNodes:re,branchEdges:Ce,isBranchEdgeId:pe,updateGroupLayout:Me,translateGroupTree:ue,getNodeDepth:ye,maxGroupDepth:fe}=te,{activeGroupId:Se,start:we,updateActiveGroup:H,end:J}=JC({phase:n,groupMapById:B,getNodeDepth:ye,canAddMember:W,draggingId:oe}),G=e.computed(()=>T.value.nodes.filter(ne=>ne.phase===n&&!ne.hidden).map(ne=>{const Ee=ie.value.get(ne.id),be=Ee==null?void 0:Ee.position,ke=Ee==null?void 0:Ee.dimensions,he=Ee&&be&&ke?{x:ne.position.x-be.x,y:ne.position.y-be.y}:ne.position,Ae=ye(ne.id),Be=!!(Ee&&be&&ke),Ne=(Be?Ae:0)+fe.value+1;return{id:ne.id,type:"flow",position:he,data:ne,deletable:!Ra(ne),parentNode:Be?Ee.id:void 0,zIndex:Ne*fr+bC}})),ce=e.computed(()=>T.value.edges.filter(ne=>Q(ne,n)).filter(ne=>!z.isEdgeEnteringGroup(ne.source,ne.target)).filter(ne=>{const Ee=V(ne.source),be=V(ne.target);return!(Ee!=null&&Ee.hidden)&&!(be!=null&&be.hidden)}).map(ne=>{const Ee=V(ne.source),be=V(ne.target);if(!Ee||!be){const he=[];throw Ee||he.push(`source node "${ne.source}"`),be||he.push(`target node "${ne.target}"`),new Error(`Missing ${he.join(" and ")} for edge "${ne.id}" in phase "${n}"`)}const ke=Math.max(ye(ne.source),ye(ne.target))+fe.value+1;return _r({id:ne.id,source:ne.source,target:ne.target,sourceHandle:ne.sourceField?`outputs@${ne.sourceField}`:"output",targetHandle:ne.targetField?`inputs@${ne.targetField}`:"input",markerEnd:ze.MarkerType.ArrowClosed,data:ne,updatable:!i,zIndex:ke*fr+yC})})),Z=e.computed(()=>[...Ce.value,...ce.value]),{autoLayout:de}=YC({phase:n,layoutOptions:a,branchLayout:te,nodes:G,edges:Z});QC({readonly:i,flowId:o}),e.watch([G,re,Z],([ne,Ee,be])=>{I([...Ee,...ne]),S(be)},{immediate:!0});const Ie=e.computed(()=>({padding:l/Math.max(e.toValue(r==null?void 0:r.width)??0,e.toValue(r==null?void 0:r.height)??0)}));async function ge({source:ne,sourceHandle:Ee,target:be,targetHandle:ke}){if(!Ee||!ke)return;const he=jc(Ee),Ae=jc(ke);if((he==null?void 0:he.io)==="input"||(Ae==null?void 0:Ae.io)==="output"||Ee==="output"&&ke==="output")return;const Be=K(be);let Ne=!1,Re=!1;const Ve=[],Ue=[],Fe=(Ae==null?void 0:Ae.io)==="input"?Be.filter(nt=>!nt.targetField):Be.filter(nt=>!!nt.targetField);Fe.length>0&&(Ne=!0,Fe.forEach(nt=>{Ue.push(xo(nt,V)),A(nt.id,!1)}));const Qe=(Ae==null?void 0:Ae.io)==="input"?Ae!=null&&Ae.field?Be.filter(nt=>nt.targetField===Ae.field):Be.filter(nt=>!!nt.targetField):Be.filter(nt=>!nt.targetField);if(Qe.length>0){if(Qe.some(Lt=>Lt.source===ne&&Lt.target===be&&Lt.targetField===(Ae==null?void 0:Ae.field)&&Lt.sourceField===(he==null?void 0:he.field)))return;Re=!0,Qe.forEach(Lt=>{Ue.push(xo(Lt,V)),A(Lt.id,!1)})}if(!R({source:ne,sourceField:he==null?void 0:he.field,target:be,targetField:Ae==null?void 0:Ae.field},!1)){N(),p({message:m("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(Ve.push(qa(ne,he==null?void 0:he.field,be,Ae==null?void 0:Ae.field,V)),Ne||Re){if(!d)throw N(),new Error("Expected confirm modal to be provided here when reachable");if(!await d(m(Ne?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),Ve,Ue)){N();return}}$()}E(ge);let Pe=!1;const $e=()=>{Pe&&(Pe=!1,$())};k(ne=>{ne.filter(ke=>ke.type==="select").filter(ke=>!j(ke.id)).sort((ke,he)=>ke.selected===he.selected?0:ke.selected?1:-1).forEach(ke=>{q(ke.selected?ke.id:void 0)});let be=!1;ne.forEach(ke=>{if(ke.type==="remove"){if(j(ke.id))return;be=!0,L(ke.id,!1)}}),be&&!Pe&&(Pe=!0,queueMicrotask($e))}),b(({node:ne,event:Ee})=>{var Be,Ne,Re;if(!ne)return;if(j(ne.id)){const Ve=ne.id;ee(Ve),H(void 0);const Ue=B.value.get(Ve);if(!Ue)return;const Fe=Ue.position??{...ne.position},Qe=ne.position.x-Fe.x,ln=ne.position.y-Fe.y;ue(Ve,ne.position,Qe,ln);const nt=ie.value.get(Ue.ownerId);nt&&Me(nt.id,!1);return}const be=ne.id;we("canvas"),ee(be);const ke=ne.parentNode;let he={...ne.position};if(ke&&j(ke)){const Ve=B.value.get(ke);Ve!=null&&Ve.position&&(he={x:Ve.position.x+ne.position.x,y:Ve.position.y+ne.position.y})}if(U(be,he,!1),!Ra(V(be))){const Ve={x:he.x,y:he.y,width:((Be=ne.dimensions)==null?void 0:Be.width)??0,height:((Ne=ne.dimensions)==null?void 0:Ne.height)??0},Ue=Ee&&"clientX"in Ee?F({x:Ee.clientX,y:Ee.clientY}):void 0,Fe={x:Ve.x+Ve.width/2,y:Ve.y+Ve.height/2};H(Ue??Fe)}const Ae=ke&&j(ke)?ke:(Re=ie.value.get(be))==null?void 0:Re.id;Ae&&Me(Ae,!1)}),h(({node:ne})=>{var Ae;if(!ne)return;if(ee(void 0),j(ne.id)){D();return}const Ee=ne.id,be=ne.parentNode;let ke={...ne.position};if(be&&j(be)){const Be=B.value.get(be);Be!=null&&Be.position&&(ke={x:Be.position.x+ne.position.x,y:Be.position.y+ne.position.y})}U(Ee,ke,!1);const he=be&&j(be)?be:(Ae=ie.value.get(Ee))==null?void 0:Ae.id;he&&Me(he,!1),an(Ee),J(),D()}),_(ne=>{ne.filter(ke=>ke.type==="select").sort((ke,he)=>ke.selected===he.selected?0:ke.selected?1:-1).forEach(ke=>{pe(ke.id)||(vc=ke.selected?ke.id:void 0,S(he=>he.map(Ae=>Ae.id!==ke.id||!Ae.markerEnd?Ae:_r({...Ae,zIndex:ke.selected?1:void 0}))))});let be=!1;ne.forEach(ke=>{if(ke.type==="remove"){if(pe(ke.id))return;be=!0,A(ke.id,!1)}}),be&&!Pe&&(Pe=!0,queueMicrotask($e))}),x(({edge:ne})=>{pe(ne.id)||(Ga=ne.id,S(Ee=>Ee.map(be=>be.id!==ne.id?be:_r(be))))}),O(({edge:ne})=>{pe(ne.id)||(Ga=void 0,S(Ee=>Ee.map(be=>be.id!==ne.id?be:_r(be))))}),w(({edge:ne,connection:Ee})=>{pe(ne.id)||(A(ne.id,!1),ge(Ee))});function se(ne){y({...Ie.value,...ne})}async function ae(ne){return q(ne),new Promise(Ee=>setTimeout(()=>{const be=g(ne);P(be?[be]:[]),Ee()},0))}function st(ne){const Ee=v.value.filter(({type:Fe})=>Fe!=="group"),be=Ee.find(({id:Fe})=>Fe===ne);if(!be)throw new Error(`Node ${ne} not found`);const{x:ke,y:he}=be.data.position,{width:Ae,height:Be}=be.dimensions,Ne=he,Re=he+Be,Ve=Ee.filter(({id:Fe})=>Fe!==ne).filter(({data:{position:{y:Fe}},dimensions:{height:Qe}})=>Fe<Re&&Fe+Qe>Ne).map(({data:{position:{x:Fe}},dimensions:{width:Qe}})=>({left:Fe,right:Fe+Qe})).sort((Fe,Qe)=>Fe.left-Qe.left);let Ue=ke+Ae+c;for(const{left:Fe,right:Qe}of Ve)if(!(Qe<=Ue)){if(Ue+Ae<=Fe)return{x:Ue,y:Ne};Ue=Math.max(Ue,Qe)+c}return{x:Ue,y:Ne}}function gn(ne){if(!ne)return;const Ee=g(ne);if(!Ee)throw new Error(`Node ${ne} not found`);const{position:{x:be},dimensions:{width:ke}}=Ee,he=be+ke,{viewport:Ae,dimensions:Be,setViewport:Ne}=u,{x:Re,y:Ve,zoom:Ue}=Ae.value,{width:Fe}=Be.value,Qe=be*Ue+Re,ln=he*Ue+Re,nt=Fe-Vc-c;if(ln<=nt)return;let Lt=nt-ln;Qe+Lt<0&&(Lt=-Qe),Lt!==0&&Ne({x:Re+Lt,y:Ve,zoom:Ue},{duration:EC})}function an(ne){if(!Se.value)return!1;const{nodeId:Ee,branch:be}=zw(Se.value),ke=z.addMember(Ee,be,ne,{commit:!1});return H(void 0),ke}return{vueFlowStore:u,editorStore:f,readonly:i,nodes:G,edges:Z,selectNode:ae,autoLayout:de,placeToRight:st,scrollRightToReveal:gn,fitViewParams:Ie,fitView:se,groupDrop:{activeGroupId:Se,startPanelDrag:()=>we("panel"),endPanelDrag:J,updateActiveGroup:H,attachNodeToActiveGroup:an}}});let Xn=null;function oE(){var n;if(Xn)return Xn;if(typeof navigator>"u")return Xn="windows";const t=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(t)?Xn="mac":/Linux/i.test(t)&&!/Android/i.test(t)?Xn="linux":Xn="windows"}const rE={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},aE={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"},iE={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 lE(t,n={}){const o=n.platform??oE(),a=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?rE:o==="linux"?iE:aE;return(Array.isArray(t)?t:t[o]).map(l=>l in i?i[l]:l).join(a)}const sE={key:0,class:"label"},cE={class:"keys"},br=_e(e.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(t){const n=lE(t.keys);return(o,a)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["dk-hotkey-label",{reverse:t.reverse}])},[t.label?(e.openBlock(),e.createElementBlock("span",sE,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),e.createElementVNode("kbd",cE,e.toDisplayString(e.unref(n)),1)],2))}}),[["__scopeId","data-v-cc70d56b"]]),dE=["onClick"],uE={key:0,class:"additional-count"},Kc=24,pE=16,kr=_e(e.defineComponent({__name:"NodePortal",props:{expanded:{type:Boolean,default:()=>{}},reversed:{type:Boolean},targets:{}},setup(t){const n=Number.parseFloat(ky)||0,o={target:"body"},{portalSelection:a,selectPortalEdge:i}=tt(),r=e.ref(!1),l=e.computed(()=>{const g=a.value;return g?t.targets.some(y=>y.edgeId===g):!1}),s=e.computed(()=>t.expanded!==void 0?t.expanded||l.value:r.value||l.value),c=()=>Kc*t.targets.length+n*(t.targets.length-1),u=e.computed(()=>({width:s.value?`${c()}px`:"fit-content"})),f=g=>{i(g)},d=g=>a.value===g,p=e.computed(()=>t.targets.map((g,y)=>{var b;const C=(Kc+n)*y;return{edgeId:g.edgeId,key:`${g.node.id}-${g.fieldName??"node"}-${y}`,icon:(b=rt[g.node.type])==null?void 0:b.icon,tooltip:g.fieldName?`${g.node.name}.${g.fieldName}`:g.node.name,highlighted:d(g.edgeId),tooltipEl:null,style:y===0?{width:"fit-content",zIndex:t.targets.length}:{position:"absolute",...t.reversed?{left:`${C}px`,transform:s.value?"translateX(0)":`translateX(-${C}px)`}:{right:0,transform:s.value?`translateX(-${C}px)`:"translateX(0)"},zIndex:t.targets.length-y}}})),m=e.computed(()=>Math.max(t.targets.length-1,0));return(g,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-node-portal",{expanded:s.value,reversed:t.reversed}]),onClick:y[0]||(y[0]=e.withModifiers(()=>{},["stop"])),onDragstart:y[1]||(y[1]=e.withModifiers(()=>{},["stop"])),onMousedown:y[2]||(y[2]=e.withModifiers(()=>{},["stop"])),onMouseenter:y[3]||(y[3]=C=>r.value=!0),onMouseleave:y[4]||(y[4]=C=>r.value=!1)},[e.createElementVNode("div",{class:"target-boxes",style:e.normalizeStyle(u.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(C,b)=>(e.openBlock(),e.createBlock(e.unref(Oe.KTooltip),{key:C.key,class:"target-box-wrapper","kpop-attributes":o,placement:"top",style:e.normalizeStyle(C.style),text:C.tooltip},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["target-box",{highlighted:C.highlighted}]),onClick:e.withModifiers(h=>f(C.edgeId),["stop"])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C.icon),{color:e.unref(Dn),size:pE},null,8,["color"])),b===0&&m.value>0?(e.openBlock(),e.createElementBlock("span",uE," +"+e.toDisplayString(m.value),1)):e.createCommentVNode("",!0)],10,dE)]),_:2},1032,["style","text"]))),128))],4)],34))}}),[["__scopeId","data-v-926821a3"]]),wr=_e(e.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ze.Position.Left},size:{default:()=>Number.parseFloat(Hl)},type:{}},setup(t){e.useCssVars(o=>({v753622c4:o.color}));const n=e.computed(()=>({width:`${t.size}px`,minWidth:`${t.size}px`}));return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["handle-twig",[t.type,t.position===e.unref(ze.Position).Left?"left":"right"]]),style:e.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-eb2bc3f2"]]),Uc=_e(e.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(t){e.useCssVars(a=>{var i,r;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(r=n.value.colors)==null?void 0:r.foreground}});const n=e.computed(()=>rt[t.type]),o=e.computed(()=>Uw(t.type));return(a,i)=>{var l;const r=e.resolveComponent("KBadge");return e.openBlock(),e.createBlock(r,{appearance:"neutral",class:e.normalizeClass(["dk-node-badge",{"icon-only":t.iconOnly,"has-colors":!!n.value.colors}]),size:t.size},e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]),fE={class:"body"},mE={class:"name"},gE={class:"handle"},hE={class:"handle-label-wrapper"},yE={class:"handle-label-wrapper"},_E={class:"handle-label text"},bE={class:"handle"},kE={class:"handle-label-wrapper"},wE={class:"handle-label-wrapper"},CE={class:"handle-label text"},EE={key:2,class:"branch-handles"},NE={class:"handle-label-wrapper"},xE={class:"handle-label text"},qc=_e(e.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(t){const{t:n}=it.createI18n("en-us",ct),o=nE(),{getInEdgesByNodeId:a,getOutEdgesByNodeId:i,getNodeById:r,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:u,branchGroups:f}=tt(),d=e.computed(()=>Wn(t.data.type)),p=e.computed(()=>t.data.fields.input.length>0),m=e.computed(()=>t.data.fields.output.length>0),g=e.computed(()=>p.value&&a(t.data.id).every(A=>A.targetField===void 0)),y=e.computed(()=>m.value&&i(t.data.id).every(A=>A.sourceField===void 0)),C=e.computed(()=>t.data.expanded.input??!1),b=e.computed(()=>t.data.expanded.output??!1),h=e.computed(()=>{var A,K,z;return((z=(K=(A=d.value.io)==null?void 0:A.next)==null?void 0:K.branches)==null?void 0:z.map(({name:$})=>$))??[]}),E=e.computed(()=>h.value.length>0),k=e.computed(()=>f.findMembership(t.data.id)),_=e.computed(()=>{var A,K;if(t.data.type==="property"){const z=(A=t.data.config)==null?void 0:A.property;return Ua(z)}return(K=d.value.io)==null?void 0:K.input}),w=e.computed(()=>{var A,K;if(t.data.type==="property"){const z=(A=t.data.config)==null?void 0:A.property;return Ka(z)}return(K=d.value.io)==null?void 0:K.output}),x=e.computed(()=>Ra(t.data)),O=e.computed(()=>t.data.phase==="response"),v=e.computed(()=>t.data.phase==="request"?ze.Position.Left:ze.Position.Right),I=e.computed(()=>t.data.phase==="request"?ze.Position.Right:ze.Position.Left),S=e.computed(()=>t.data.phase==="request"?ze.Position.Right:ze.Position.Left),P=e.computed(()=>x.value?n(`plugins.free-form.datakit.flow_editor.node_types.${t.data.type}.name`):t.data.name),F=e.computed(()=>x.value?uy:na);function T(A){return A==="input"?O.value:!O.value}function D(A){const K=new Map,z=A==="input"?a(t.data.id):i(t.data.id);for(const $ of z){const N=r(A==="input"?$.source:$.target);if(!N)continue;if(A==="input"){const ee=N.type==="vault",oe=N.phase!==t.data.phase,Q=f.isEdgeEnteringGroup(N.id,t.data.id);if(!(ee||oe||Q))continue}else{const ee=N.phase!==t.data.phase,oe=f.isEdgeEnteringGroup(t.data.id,N.id);if(!(ee||oe))continue}const B=A==="input"?$.targetField||"input":$.sourceField||"output";let j;if(A==="input"&&$.sourceField){const ee=N.fields.output.find(oe=>oe.id===$.sourceField);j=ee==null?void 0:ee.name}else if(A==="output"&&$.targetField){const ee=N.fields.input.find(oe=>oe.id===$.targetField);j=ee==null?void 0:ee.name}const W={edgeId:$.id,node:N,fieldName:j},X=K.get(B);X?X.push(W):K.set(B,[W])}return K}const U=e.computed(()=>D("input")),q=e.computed(()=>D("output"));function L(A){!o||o.readonly||A==="input"&&!g.value||A==="output"&&!y.value||l(t.data.id,A)}async function V(){if(!o||o.readonly)return;const A=s(t.data.id,o.placeToRight(t.data.id));await o.selectNode(A),o.scrollRightToReveal(A),u.value=!0}function R(){f.removeMember(t.data.id)}return e.watch(g,A=>{A||l(t.data.id,"input",!0,!0,"*")},{immediate:!0}),e.watch(y,A=>{A||l(t.data.id,"output",!0,!0,"*")},{immediate:!0}),e.watch(()=>t.data.fields.input,(A,K)=>{Vt(A,K)||l(t.data.id,"input",A.length>0,!0,"*")},{deep:!0}),e.watch(()=>t.data.fields.output,(A,K)=>{Vt(A,K)||l(t.data.id,"output",A.length>0,!0,"*")},{deep:!0}),(A,K)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-flow-node",{reversed:O.value,implicit:x.value,readonly:t.readonly}])},[e.createElementVNode("div",fE,[x.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(Oe.KTooltip),{key:0,class:"badge",placement:"top",text:t.data.type},{default:e.withCtx(()=>[e.createVNode(Uc,{"icon-only":"",size:"small",type:t.data.type},null,8,["type"])]),_:1},8,["text"])),e.createElementVNode("div",mE,e.toDisplayString(P.value),1),t.error?(e.openBlock(),e.createBlock(e.unref(me.WarningIcon),{key:1,class:"error-icon",color:e.unref(oa),size:16},null,8,["color"])):e.createCommentVNode("",!0),x.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(Oe.KDropdown),{key:2,class:"menu",disabled:t.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:K[1]||(K[1]=e.withModifiers(()=>{},["stop"]))},{items:e.withCtx(()=>[e.createVNode(e.unref(Oe.KDropdownItem),{onClick:V},{default:e.withCtx(()=>[e.createVNode(br,{keys:e.unref(mr).duplicate,label:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),k.value?(e.openBlock(),e.createBlock(e.unref(Oe.KDropdownItem),{key:0,onClick:R},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(Oe.KDropdownItem),{danger:"",onClick:K[0]||(K[0]=z=>e.unref(c)(t.data.id))},{default:e.withCtx(()=>[e.createVNode(br,{keys:e.unref(mr).delete,label:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.delete")},null,8,["keys","label"])]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{color:e.unref(co)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),e.createElementVNode("div",{class:e.normalizeClass(["handles",{reversed:O.value}])},[_.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["input-handles",{"has-fields":p.value}])},[e.createElementVNode("div",gE,[e.createVNode(e.unref(ze.Handle),{id:"input",position:v.value,type:"target"},null,8,["position"]),U.value.has("input")?(e.openBlock(),e.createBlock(kr,{key:0,mode:"input",reversed:T("input"),targets:U.value.get("input")},null,8,["reversed","targets"])):e.createCommentVNode("",!0),e.createElementVNode("div",hE,[e.createElementVNode("div",{class:e.normalizeClass(["handle-label trigger",{collapsible:g.value}]),onClick:K[2]||(K[2]=e.withModifiers(z=>L("input"),["stop"]))},[K[4]||(K[4]=e.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[C.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(me.UnfoldMoreIcon),{key:0,size:e.unref(Wo)},null,8,["size"])),C.value?(e.openBlock(),e.createBlock(e.unref(me.UnfoldLessIcon),{key:1,color:g.value?void 0:e.unref(vl),size:e.unref(Wo)},null,8,["color","size"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2),p.value&&C.value?(e.openBlock(),e.createBlock(wr,{key:0,color:F.value,position:v.value,type:"bar"},null,8,["color","position"])):e.createCommentVNode("",!0)])]),p.value&&C.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.data.fields.input,(z,$)=>(e.openBlock(),e.createElementBlock("div",{key:`inputs-${z.id}`,class:"handle indented"},[e.createVNode(e.unref(ze.Handle),{id:`inputs@${z.id}`,position:v.value,type:"target"},null,8,["id","position"]),U.value.has(z.id)?(e.openBlock(),e.createBlock(kr,{key:0,mode:"input",reversed:T("input"),targets:U.value.get(z.id)},null,8,["reversed","targets"])):e.createCommentVNode("",!0),e.createElementVNode("div",yE,[e.createElementVNode("div",_E,e.toDisplayString(z.name),1),e.createVNode(wr,{color:F.value,position:v.value,type:$<t.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),w.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["output-handles",{"has-fields":m.value}])},[e.createElementVNode("div",bE,[e.createElementVNode("div",kE,[e.createElementVNode("div",{class:e.normalizeClass(["handle-label trigger",{collapsible:y.value}]),onClick:K[3]||(K[3]=e.withModifiers(z=>L("output"),["stop"]))},[K[5]||(K[5]=e.createElementVNode("div",{class:"text"}," outputs ",-1)),m.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[b.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(me.UnfoldMoreIcon),{key:0,size:e.unref(Wo)},null,8,["size"])),b.value?(e.openBlock(),e.createBlock(e.unref(me.UnfoldLessIcon),{key:1,color:y.value?void 0:e.unref(vl),size:e.unref(Wo)},null,8,["color","size"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2),m.value&&b.value?(e.openBlock(),e.createBlock(wr,{key:0,color:F.value,position:I.value,type:"bar"},null,8,["color","position"])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(ze.Handle),{id:"output",position:I.value,type:"source"},null,8,["position"]),q.value.has("output")?(e.openBlock(),e.createBlock(kr,{key:0,mode:"output",reversed:T("output"),targets:q.value.get("output")},null,8,["reversed","targets"])):e.createCommentVNode("",!0)]),m.value&&b.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.data.fields.output,(z,$)=>(e.openBlock(),e.createElementBlock("div",{key:`outputs-${z.id}`,class:"handle indented"},[e.createElementVNode("div",wE,[e.createElementVNode("div",CE,e.toDisplayString(z.name),1),e.createVNode(wr,{color:F.value,position:I.value,type:$<t.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),e.createVNode(e.unref(ze.Handle),{id:`outputs@${z.id}`,position:I.value,type:"source"},null,8,["id","position"]),q.value.has(z.id)?(e.openBlock(),e.createBlock(kr,{key:0,mode:"output",reversed:T("output"),targets:q.value.get(z.id)},null,8,["reversed","targets"])):e.createCommentVNode("",!0)]))),128)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),E.value?(e.openBlock(),e.createElementBlock("div",EE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,z=>(e.openBlock(),e.createElementBlock("div",{key:`branch-${z}`,class:"handle"},[e.createElementVNode("div",NE,[e.createElementVNode("div",xE,e.toDisplayString(z),1)]),e.createVNode(e.unref(ze.Handle),{id:`branch@${z}`,connectable:!1,position:S.value,type:"source"},null,8,["id","position"])]))),128))])):e.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-c0706d4a"]]),SE=_e(e.defineComponent({__name:"GroupNode",props:{data:{},active:{type:Boolean}},setup(t){const n=t,o=e.computed(()=>n.data.phase==="response"),a=e.computed(()=>o.value?ze.Position.Right:ze.Position.Left);return(i,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-branch-group-node",{reversed:o.value,"drop-target":t.active}])},[e.createVNode(e.unref(ze.Handle),{id:"input",connectable:!1,position:a.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-61116224"]]),Gc=_e(e.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(t,{expose:n,emit:o}){const a=o,i=e.useTemplateRef("flowCanvas"),r=Xe.useElementBounding(i),{i18n:{t:l}}=De(),{vueFlowStore:s,editorStore:c,autoLayout:u,fitViewParams:f,fitView:d,selectNode:p,placeToRight:m,scrollRightToReveal:g,groupDrop:y}=tE({phase:t.phase,flowId:t.flowId,layoutOptions:{viewport:{width:r.width,height:r.height}},readonly:t.mode!=="edit"}),{addNode:C,propertiesPanelOpen:b,invalidConfigNodeIds:h,selectedNode:E,duplicateNode:k,commit:_,selectPortalEdge:w}=c,{screenToFlowCoordinate:x,zoomIn:O,zoomOut:v,viewport:I,maxZoom:S,minZoom:P}=s,{activeGroupId:F,startPanelDrag:T,endPanelDrag:D,updateActiveGroup:U,attachNodeToActiveGroup:q}=y;function L(N){var j;const B=(j=N.dataTransfer)==null?void 0:j.types.find(W=>W.startsWith(`${Co}/`));if(B)return B.replace(`${Co}/`,"")}function V(N){var B;if(t.mode==="edit"){if(((B=N==null?void 0:N.node)==null?void 0:B.type)==="group"){p(void 0),w(void 0);return}b.value=!0}}function R(N){t.mode==="edit"&&(N.preventDefault(),U(x({x:N.clientX,y:N.clientY})))}function A(N){var te;if(t.mode!=="edit")return;const B=(te=N.dataTransfer)==null?void 0:te.getData(Co);if(!B)return;N.preventDefault();const j=JSON.parse(B);if(j.action!=="create-node")return;const W=x({x:N.clientX,y:N.clientY}),{type:X,anchor:ee}=j.data,oe={type:X,phase:t.phase,position:{x:W.x-ee.offsetX,y:W.y-ee.offsetY}},Q=C(oe,!1);if(!Q){D();return}q(Q),_(),p(Q),b.value=!0,D()}async function K(){await u(),setTimeout(()=>d(),0)}const z=e.computed(()=>{if(t.mode==="preview")return[];const N=[{name:"zoom_in",icon:me.AddIcon,action:O,disabled:I.value.zoom>=S.value},{name:"zoom_out",icon:me.RemoveIcon,action:v,disabled:I.value.zoom<=P.value},{name:"fit_view",icon:me.FullscreenIcon,action:d}];return t.mode==="edit"&&N.push({name:"auto_layout",icon:me.AutoLayoutIcon,action:K}),N});t.mode==="edit"&&(Xe.useEventListener("dragstart",N=>{L(N)&&T()}),Xe.useEventListener("dragend",()=>{D()}));async function $(){const N=E.value;if(t.mode!=="edit"||!N||N.phase!==t.phase)return;const B=k(N.id,m(N.id));B&&(await p(B),b.value=!0,g(B))}return Tc({enabled:e.computed(()=>!!E.value&&t.mode==="edit"&&E.value.phase===t.phase),duplicate:$}),n({autoLayout:u,fitView:d}),(N,B)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[e.createVNode(e.unref(ze.VueFlow),{id:t.flowId,class:e.normalizeClass(["flow",{readonly:t.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":t.mode==="edit","max-zoom":e.unref(wC),"min-zoom":e.unref(CC),"multi-selection-key-code":null,"nodes-connectable":t.mode==="edit","nodes-draggable":t.mode==="edit","pan-on-drag":t.mode==="preview"?!1:void 0,"pan-on-scroll":t.mode!=="edit"?!1:void 0,"zoom-on-double-click":t.mode!=="edit"?!1:void 0,"zoom-on-pinch":t.mode!=="edit"?!1:void 0,"zoom-on-scroll":t.mode!=="edit"?!1:void 0,onDragover:R,onDrop:A,onNodeClick:V,onNodesChange:B[0]||(B[0]=j=>a("nodes-change")),onNodesInitialized:B[1]||(B[1]=j=>a("initialized"))},{"node-flow":e.withCtx(({data:j})=>[e.createVNode(qc,{data:j,error:e.unref(h).has(j.id),readonly:t.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":e.withCtx(({data:j})=>[e.createVNode(SE,{active:e.unref(F)===j.id,data:j},null,8,["active","data"])]),default:e.withCtx(()=>[e.createVNode(e.unref(bd.Background)),e.createVNode(e.unref(ii.Controls),{"fit-view-params":e.unref(f),position:"bottom-left","show-fit-view":!1,"show-interactive":!1,"show-zoom":!1},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,j=>(e.openBlock(),e.createBlock(e.unref(Oe.KTooltip),{key:j.name,placement:"right",text:e.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${j.name}`)},{default:e.withCtx(()=>[e.createVNode(e.unref(ii.ControlButton),{disabled:j.disabled,onClick:e.withModifiers(j.action,["stop"])},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(j.icon),{size:18}))]),_:2},1032,["disabled","onClick"])]),_:2},1032,["text"]))),128))]),_:1},8,["fit-view-params"])]),_:1},8,["id","class","elements-selectable","max-zoom","min-zoom","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"])],512))}}),[["__scopeId","data-v-47761eb0"]]),AE={class:"label-content"},IE={class:"count"},PE={class:"label-content"},TE={class:"count"},zc=.5,za=.03,OE=30,Ha=_e(e.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(t){const{t:n}=it.createI18n("en-us",ct),o=e.ref(!1),a=e.ref(!1),{responsePanelCollapsed:i}=pr(),{state:r,configNodeCounts:l,clearPendingLayout:s,setPendingFitView:c,commit:u,clear:f,portalSelection:d}=tt(),p=e.useId(),m=`${p}-request`,g=`${p}-response`,y=ze.useVueFlow(m),C=ze.useVueFlow(g);function b(oe,Q){const{onPaneClick:te,onNodesChange:ie,onEdgesChange:re,getSelectedNodes:Ce,getSelectedEdges:pe}=oe,{removeSelectedElements:Me}=Q;function ue(ye){if(!ye){Me();return}ye.some(fe=>fe.type==="select")&&Ce.value.length+pe.value.length>0&&Me()}ie(ue),re(ue),te(()=>ue())}b(y,C),b(C,y),e.watch(d,oe=>{oe&&(y.removeSelectedElements(),C.removeSelectedElements())});const h=e.useTemplateRef("flowPanels"),E=e.useTemplateRef("requestLabel"),k=e.useTemplateRef("requestCanvasContainer"),_=e.useTemplateRef("requestFlow"),w=e.useTemplateRef("resizeHandle"),x=e.useTemplateRef("responseLabel"),O=e.useTemplateRef("responseCanvasContainer"),v=e.useTemplateRef("responseFlow"),I=Xe.useElementBounding(h),S=Xe.useElementBounding(E),P=Xe.useElementBounding(k),F=Xe.useElementBounding(w),T=Xe.useElementBounding(x),D=Xe.useElementBounding(O),U=e.computed(()=>Math.max(OE,I.height.value*za)),q=e.computed(()=>I.height.value-S.height.value-F.height.value-T.height.value),L=e.computed(()=>{const oe=q.value;return oe?Math.max(za,U.value/oe):za}),V=e.ref(zc),R=e.computed(()=>`${V.value*100}%`),A=e.computed(()=>`${(1-V.value)*100}%`),K=e.computed(()=>V.value<=L.value),z=e.computed(()=>1-V.value<=L.value);function $(oe,{persist:Q=!0}={}){const te=Math.min(1,Math.max(0,oe));V.value=te,Q&&t.mode==="edit"&&(i.value=z.value)}function N(oe,Q=!0){$(oe?1:zc,{persist:Q})}function B(oe=!0){$(0,{persist:oe})}if(t.mode==="edit"){const oe=l.value.response===0,Q=i.value;N(oe||Q,!1)}else e.watch(()=>l.value.response,oe=>{N(oe===0,!1)},{immediate:!0});const j=()=>{t.resizable&&(K.value?N(!1):B())},W=()=>{t.resizable&&N(!z.value)},{isDragging:X}=Xe.useDraggable(w,{onMove(oe){if(!t.resizable)return;const Q=Math.max(0,oe.y-P.top.value),te=Math.min(1,Math.max(0,Q/q.value));$(te,{persist:!1})},onEnd(){t.resizable&&(P.height.value<U.value?B():D.height.value<U.value?N(!0):$(V.value))}});function ee(){e.nextTick(()=>{var oe,Q;(oe=_.value)==null||oe.fitView(),(Q=v.value)==null||Q.fitView()})}return e.watch([o,a,()=>r.value.pendingLayout,()=>r.value.pendingFitView],([oe,Q,te,ie])=>{t.inactive||!oe||!Q||!te&&!ie||(te&&s(),ie&&c(!1),setTimeout(async()=>{var re,Ce;te&&(await((re=_.value)==null?void 0:re.autoLayout(!1)),await((Ce=v.value)==null?void 0:Ce.autoLayout(!1)),u("*"),te==="clearHistory"&&f()),ie&&setTimeout(()=>ee(),0)},0))}),(oe,Q)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"flowPanels",ref:h,class:"flow-panels"},[e.createElementVNode("div",{ref_key:"requestLabel",ref:E,class:e.normalizeClass(["label request",{resizable:t.resizable}]),onClick:j},[t.resizable?(e.openBlock(),e.createBlock(e.unref(me.ChevronDownIcon),{key:0,class:e.normalizeClass(["icon",{collapsed:K.value}])},null,8,["class"])):e.createCommentVNode("",!0),e.createElementVNode("div",AE,[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),e.createElementVNode("span",IE,[e.unref(l).request===1?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" ("+e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" ("+e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:e.unref(l).request}))+") ",1)],64))])])],2),e.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:k,class:e.normalizeClass(["canvas",{dragging:e.unref(X)}]),style:e.normalizeStyle({flexBasis:R.value})},[e.createVNode(Gc,{ref_key:"requestFlow",ref:_,"flow-id":m,mode:t.mode,phase:"request",onInitialized:Q[0]||(Q[0]=te=>o.value=!0),onNodesChange:Q[1]||(Q[1]=te=>o.value=!1)},null,8,["mode"])],6),e.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:e.normalizeClass(["resize-handle",{resizable:t.resizable}])},null,2),e.createElementVNode("div",{ref_key:"responseLabel",ref:x,class:e.normalizeClass(["label response",{dragging:e.unref(X),resizable:t.resizable}]),onClick:W},[t.resizable?(e.openBlock(),e.createBlock(e.unref(me.ChevronDownIcon),{key:0,class:e.normalizeClass(["icon",{collapsed:z.value}])},null,8,["class"])):e.createCommentVNode("",!0),e.createElementVNode("div",PE,[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),e.createElementVNode("span",TE,[e.unref(l).response===1?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" ("+e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" ("+e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:e.unref(l).response}))+") ",1)],64))])])],2),e.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:O,class:e.normalizeClass(["canvas response",{dragging:e.unref(X)}]),style:e.normalizeStyle({flexBasis:A.value})},[e.createVNode(Gc,{ref_key:"responseFlow",ref:v,"flow-id":g,mode:t.mode,phase:"response",onInitialized:Q[2]||(Q[2]=te=>a.value=!0),onNodesChange:Q[3]||(Q[3]=te=>a.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-3d68b40b"]]),VE={class:"dk-confirm-modal-body"},BE={class:"connections"},RE=_e(e.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(t,{expose:n,emit:o}){const{i18n:{t:a}}=De(),i=o,r=e.ref(!1),l=e.ref(t.message),s=e.ref(t.addedConnections??[]),c=e.ref(t.removedConnections??[]);let u=null;function f(){r.value=!1,i("cancel"),u==null||u(!1)}function d(){r.value=!1,i("confirm"),u==null||u(!0)}async function p(m,g,y){return l.value=m,s.value=g??[],c.value=y??[],r.value=!0,await new Promise(C=>{u=C})}return n({open:p}),(m,g)=>{const y=e.resolveComponent("KModal");return e.openBlock(),e.createBlock(y,{"action-button-text":e.unref(a)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:t.title??e.unref(a)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:r.value,"z-index":9999,onCancel:f,onProceed:d},{default:e.withCtx(()=>[e.createElementVNode("div",VE,[e.createElementVNode("p",null,e.toDisplayString(l.value),1),e.createElementVNode("p",null,e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),e.createElementVNode("div",BE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value??[],([C,b])=>(e.openBlock(),e.createElementBlock("div",{key:`${C}-${b}`,class:"connection"},[e.createVNode(e.unref(me.AddIcon),{color:e.unref(py)},null,8,["color"]),e.createTextVNode(" "+e.toDisplayString(C)+" → "+e.toDisplayString(b),1)]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value??[],([C,b])=>(e.openBlock(),e.createElementBlock("div",{key:`${C}-${b}`,class:"connection"},[e.createVNode(e.unref(me.RemoveIcon),{color:e.unref(oa)},null,8,["color"]),e.createTextVNode(" "+e.toDisplayString(C)+" → "+e.toDisplayString(b),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-ac52e1e6"]]),$E={class:"dk-editor-nav"},FE={class:"top"},LE={class:"bottom"},DE=_e(e.defineComponent({__name:"EditorNav",emits:["back"],setup(t,{emit:n}){const{t:o}=it.createI18n("en-us",ct),a=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:me.ArrowLeftIcon,onClick:()=>a("back")}],{sidePanelExpanded:r}=pr(),l=e.computed(()=>r.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=e.ref(!1);function c(){r.value=!r.value}return(u,f)=>(e.openBlock(),e.createElementBlock("nav",$E,[e.createElementVNode("div",FE,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(i,({label:d,to:p,icon:m,onClick:g})=>e.createVNode(e.unref(Oe.KTooltip),{key:d,"kpop-attributes":{offset:"10px"},label:d,placement:"right"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(Oe.KButton),{key:d,appearance:"none",class:"nav-item",icon:"",to:p,onClick:g},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m),{decorative:"",size:e.unref(po)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),e.createElementVNode("div",LE,[e.createElementVNode("div",{class:e.normalizeClass(["side-panel-toggle",{expanded:e.unref(r)}]),onTransitionend:f[0]||(f[0]=e.withModifiers(d=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=e.withModifiers(d=>s.value=!0,["self"]))},[e.createVNode(e.unref(Oe.KTooltip),{label:s.value?void 0:l.value,placement:e.unref(r)?"left":"right"},{default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:e.withCtx(()=>[e.unref(r)?(e.openBlock(),e.createBlock(e.unref(me.ChevronDoubleLeftIcon),{key:0,decorative:"",size:e.unref(po)},null,8,["size"])):(e.openBlock(),e.createBlock(e.unref(me.ChevronDoubleRightIcon),{key:1,decorative:"",size:e.unref(po)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-2915b6fa"]]),ME={class:"dk-editor-main"},jE={class:"header"},vE={class:"actions"},KE={class:"settings"},UE={ref:"canvasContainer",class:"body"},qE=_e(e.defineComponent({__name:"EditorMain",setup(t){const{t:n}=it.createI18n("en-us",ct),{modalOpen:o,undo:a,redo:i,canUndo:r,canRedo:l,load:s}=tt();function c(d){const p=lr[d],m=Ht.load(p,{schema:un,json:!0});if(typeof m!="object"||m===null)return;const g=m,y={config:{...g,nodes:g.nodes??[]}};s(y,!0)}function u(){o.value=!1}Tc({enabled:o,undo:a,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(d,p)=>(e.openBlock(),e.createElementBlock("div",ME,[e.createElementVNode("header",jE,[e.createElementVNode("div",vE,[e.createVNode(e.unref(Oe.KTooltip),{"z-index":1e4},{content:e.withCtx(()=>[e.createVNode(br,{keys:e.unref(mr).undo,label:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"tertiary",disabled:!e.unref(r),icon:"",onClick:e.unref(a)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),e.createVNode(e.unref(Oe.KTooltip),{"z-index":1e4},{content:e.withCtx(()=>[e.createVNode(br,{keys:e.unref(mr).redo,label:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"tertiary",disabled:!e.unref(l),icon:"",onClick:e.unref(i)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=e.createElementVNode("div",{class:"divider"},null,-1)),e.createElementVNode("div",KE,[e.createVNode(Qt,{label:e.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:e.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:f},name:"config.debug"},null,8,["label","label-attributes"])]),p[1]||(p[1]=e.createElementVNode("div",{class:"divider"},null,-1)),e.createVNode(e.unref(Oe.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":e.unref(n)("plugins.free-form.datakit.flow_editor.examples"),width:240},{items:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(lr),(m,g)=>(e.openBlock(),e.createBlock(e.unref(Oe.KDropdownItem),{key:g,onClick:y=>c(g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)(`plugins.free-form.datakit.examples.${g}`)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),e.createVNode(e.unref(Oe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.actions.view_docs"))+" ",1),e.createVNode(e.unref(me.ExternalLinkIcon))]),_:1}),e.createVNode(e.unref(Oe.KButton),{onClick:u},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),e.createElementVNode("div",UE,[e.createVNode(Ha,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-d23b6f31"]]),GE=["draggable"],zE={class:"icon"},HE={class:"content"},WE={class:"title"},YE={class:"description"},JE=_e(e.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(t,{emit:n}){e.useCssVars(c=>({f628e926:e.unref(r),v4a9b9f82:e.unref(l)}));const o=n,{summary:a,icon:i,colors:{background:r,foreground:l}={}}=Oa[t.type];function s(c){o("dragstart",c,t.type)}return(c,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-node-panel-item",{[`node-type-${t.type}`]:!0,unsupported:t.unsupported}]),draggable:!t.unsupported,onDragstart:s},[e.createElementVNode("div",zE,[e.createVNode(e.unref(i),{size:16})]),e.createElementVNode("div",HE,[e.createElementVNode("div",WE,e.toDisplayString(t.type),1),e.createElementVNode("div",YE,e.toDisplayString(e.unref(a)),1)])],42,GE))}}),[["__scopeId","data-v-38d156c9"]]),XE={class:"dk-node-panel"},ZE={key:0,class:"title"},QE={class:"node-list"},eN={"aria-hidden":"true",class:"preview",inert:""},tN=_e(e.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(t){const{t:n}=it.createI18n("en-us",ct),{createNode:o}=tt(),a=`dk-drag-preview-${e.useId()}`,i=e.shallowRef(),r=e.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var O,v,I;const u=s.currentTarget,{left:f,top:d,width:p,height:m}=u.getBoundingClientRect(),g=s.clientX-f,y=s.clientY-d;i.value=o({type:c}),await e.nextTick();const C=document.querySelector(`#${a}`)||u,b=C.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:h,offsetHeight:E}=C;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${h}px`,height:`${E}px`}),document.body.appendChild(b);const k=g/p,_=y/m,w={ratioX:k,ratioY:_,offsetX:h*k,offsetY:E*_},x={action:"create-node",data:{type:c,anchor:w}};(O=s.dataTransfer)==null||O.setData(Co,JSON.stringify(x)),(v=s.dataTransfer)==null||v.setData(`${Co}/${c}`,c),(I=s.dataTransfer)==null||I.setDragImage(b,w.offsetX,w.offsetY),requestAnimationFrame(()=>{b.remove(),i.value=void 0})};return(s,c)=>{const u=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",XE,[t.hideTitle?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("h3",ZE,[e.createVNode(u,{class:"label",info:e.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),e.createElementVNode("div",QE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(e.unref(Oa)),f=>(e.openBlock(),e.createBlock(JE,{key:f,type:f,onDragstart:l},null,8,["type"]))),128))]),e.createElementVNode("div",eN,[e.createVNode(e.unref(ze.VueFlow),{nodes:r.value},{"node-flow":e.withCtx(f=>[e.createVNode(qc,{id:a,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-eb57924c"]]);function nN(){const{addField:t,getNodeByName:n,removeField:o,replaceConfig:a,renameField:i,disconnectOutEdges:r,nodeMapByName:l}=tt(),s=n("vault");if(!s)throw new Error("no vault node");const c=e.computed(()=>{var g;return((g=l.value.get("vault"))==null?void 0:g.config)||{}});return{formData:e.computed(()=>({vault:{...c.value}})),addVault:(g,y)=>{t(s.id,"output",g,!1);const C={...s.config,[g]:y};a(s.id,C)},removeVault:g=>{const y=pn(s,"output",g);if(!y)return;const C=s.fields.output.length===1;o(s.id,y.id,!0,!1);const b=sn(s.config,g);a(s.id,b,!C),C&&r(s.id)},updateVault:(g,y,C=!0)=>{const b={...s.config,[g]:y};a(s.id,b,C)},renameVault:(g,y,C=!0)=>{var k;const b=pn(s,"output",g);if(!b)return;i(s.id,b.id,y,!1);const h=((k=s.config)==null?void 0:k[g])??"",E={...sn(s.config,g),[y]:h};a(s.id,E,C)}}}const oN=e.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(t,{emit:n}){const o=n,{i18n:{t:a}}=je.useI18n(),i=e.inject(Le.FORMS_CONFIG),r=e.ref(t.secretName||""),l=e.ref(""),s=e.computed(()=>r.value.trim()?t.validateName(r.value.trim(),t.isEditing)===void 0:!1),c=e.computed(()=>!s.value),u=()=>{const m=r.value.trim(),g=t.validateName(m,t.isEditing);return l.value=g||"",g===void 0},f=()=>{l.value="",u()},d=m=>{u()&&o("proceed",{secretRef:m,secretName:r.value.trim()})},p=()=>{r.value="",l.value="",o("cancel")};return e.watch(()=>t.secretName,m=>{r.value=m||"",l.value=""}),(m,g)=>{const y=e.resolveComponent("KInput"),C=e.resolveComponent("KEmptyState");return e.unref(i)?(e.openBlock(),e.createBlock(e.unref(Qn.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:e.unref(i),"proceed-button-text":e.unref(a)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:t.secretRef,title:e.unref(a)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:d},{"form-prefix":e.withCtx(()=>[e.createVNode(y,{"model-value":r.value,"onUpdate:modelValue":[g[0]||(g[0]=b=>r.value=b),f],"data-testid":"vault-secret-picker-secret-name-input",error:!!l.value,"error-message":l.value,label:e.unref(a)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:e.unref(a)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:e.unref(a)("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"])):(e.openBlock(),e.createBlock(C,{key:1,"icon-variant":"error",message:e.unref(a)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),rN={class:"dk-vault-panel"},aN={class:"title"},iN={class:"vault-list"},lN={key:0,class:"vault-list-item"},sN={class:"vault-list-item-key"},cN={class:"vault-list-item-key-text"},dN=_e(e.defineComponent({__name:"VaultField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},appearance:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},autofocus:{type:Boolean},name:{}},emits:["update","add","remove","change"],setup(t,{emit:n}){const o=t,a=n,{entries:i,addEntry:r,removeEntry:l}=Zo(o,a),s=e.ref(null),c=e.ref(null),{i18n:{t:u}}=je.useI18n(),f=e.computed(()=>new Set(i.value.map(b=>b.key))),d=()=>{const b=r();c.value=b,s.value=b},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=b=>{if(!s.value)throw new Error("no selected entry");const h=s.value.key,E=h!==b.secretName,k=s.value.value!==b.secretRef,_=E||k;s.value.value=b.secretRef,s.value.key=b.secretName,c.value?a("add",b.secretName,b.secretRef):_&&a("update",b.secretName,b.secretRef,E?h:void 0),c.value=null,p()},g=b=>{s.value=b},y=b=>{l(b.id),a("remove",b.key)},C=(b,h)=>{var E;if(!b)return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(b)&&!(h&&b===((E=s.value)==null?void 0:E.key)))return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(b,h)=>{var w,x;const E=e.resolveComponent("KButton"),k=e.resolveComponent("KDropdownItem"),_=e.resolveComponent("KDropdown");return e.openBlock(),e.createElementBlock("div",rN,[e.createElementVNode("h3",aN,e.toDisplayString(e.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),e.createVNode(E,{appearance:"tertiary",class:"add-button",size:"small",onClick:d},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),e.createElementVNode("div",iN,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),O=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:O.id},[O.key?(e.openBlock(),e.createElementBlock("div",lN,[e.createElementVNode("div",sN,[e.createVNode(e.unref(me.KeyIcon),{color:e.unref(Dn),size:16},null,8,["color"]),e.createElementVNode("div",cN,e.toDisplayString(O.key),1)]),e.createVNode(_,null,{items:e.withCtx(()=>[e.createVNode(k,{onClick:v=>g(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),e.createVNode(k,{danger:"",onClick:v=>y(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:e.withCtx(()=>[e.createVNode(E,{appearance:"tertiary",icon:""},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{color:e.unref(co)},null,8,["color"])]),_:1})]),_:2},1024)])):e.createCommentVNode("",!0)],64))),128))]),e.createVNode(oN,{"is-editing":!!s.value&&!c.value,"secret-name":(w=s.value)==null?void 0:w.key,"secret-ref":(x=s.value)==null?void 0:x.value,"validate-name":C,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-c9f18d61"]]);function uN(){const{getSchema:t}=We();return e.computed(()=>{const n=t("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=nn(n);return o.fields.forEach(a=>{const i=Object.keys(a)[0];if(i==="cache"){const r=a[i];a[i]={...r,fields:[...r.fields,{partial_id:{type:"string"}}]},r.fields.forEach(l=>{const s=Object.keys(l)[0];if(s==="redis"){const c=l[s];l[s]={...c},delete l[s].required}})}}),o})}const pN={class:"dk-cache-panel"},fN={class:"title"},mN={key:0,class:"cache-item"},gN={class:"cache-item-key"},hN={class:"cache-item-key-text"},yN={class:"dk-resource-cache-form"},_N={key:1},bN={key:2,class:"dk-cache-inline-redis"},kN=_e(e.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(t,{emit:n}){const o=n,{getDefault:a,formData:i}=We(),r=pt("cache");if(r.error)throw new Error("No cache schema");const l=e.ref(!1),{i18n:{t:s}}=je.useI18n(),c=e.computed(()=>!(u.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),u=e.computed(()=>{var h;return(h=r.value.value)==null?void 0:h.strategy}),f=e.computed(()=>{var h;return(h=r.value.value)!=null&&h.redis?Ht.dump(r.value.value.redis,{indent:2,noRefs:!0}):""}),d=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},g=()=>{d(),r.value.value||(r.value.value=a("cache"),r.value.value.strategy="memory")},y=()=>{l.value=!1,o("update",i)},C=()=>{var h,E;u.value==="memory"&&((h=i.cache)!=null&&h.partial_id)&&((E=i.cache)==null||delete E.partial_id)};async function b({codeElement:h,language:E,code:k}){h.innerHTML=await kd.codeToHtml(k,{lang:E,theme:"catppuccin-mocha",structure:"inline"})}return(h,E)=>{const k=e.resolveComponent("KButton"),_=e.resolveComponent("KDropdownItem"),w=e.resolveComponent("KDropdown"),x=e.resolveComponent("KLabel"),O=e.resolveComponent("KCodeBlock"),v=e.resolveComponent("KModal");return e.openBlock(),e.createElementBlock("div",pN,[e.createElementVNode("h3",fN,e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),t.strategy?(e.openBlock(),e.createElementBlock("div",mN,[e.createElementVNode("div",gN,[e.createVNode(e.unref(me.DatabaseIcon),{color:e.unref(Dn),size:e.unref(uo)},null,8,["color","size"]),e.createElementVNode("div",hN,e.toDisplayString(t.strategy),1)]),e.createVNode(w,null,{items:e.withCtx(()=>[e.createVNode(_,{onClick:d},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),e.createVNode(_,{danger:"",onClick:m},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:e.withCtx(()=>[e.createVNode(k,{appearance:"tertiary",icon:""},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{color:e.unref(co)},null,8,["color"])]),_:1})]),_:1})])):(e.openBlock(),e.createBlock(k,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:g},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),e.createVNode(v,{"action-button-disabled":!c.value,"action-button-text":e.unref(s)("actions.save"),"max-width":"640px",title:e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:l.value,onCancel:p,onProceed:y},{default:e.withCtx(()=>{var I,S;return[e.createElementVNode("div",yN,[e.createVNode(mc,{items:[{label:e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":C},null,8,["items"]),u.value==="memory"?(e.openBlock(),e.createBlock(ft,{key:0,name:"memory.dictionary_name"})):e.createCommentVNode("",!0),u.value==="redis"?(e.openBlock(),e.createElementBlock("div",_N,[e.createVNode(x,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),e.createVNode(e.unref(ri.RedisConfigurationSelector),{"model-value":(I=e.unref(i).cache)==null?void 0:I.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":E[0]||(E[0]=P=>e.unref(i).cache.partial_id=P)},null,8,["model-value"])])):e.createCommentVNode("",!0),u.value==="redis"&&!((S=e.unref(i).cache)!=null&&S.partial_id)&&f.value?(e.openBlock(),e.createElementBlock("div",bN,[e.createElementVNode("div",null,e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),e.createVNode(O,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:b},null,8,["code"])])):e.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-103c3712"]]),wN={class:"dk-resources-panel"},CN=_e(e.defineComponent({__name:"ResourcesPanel",setup(t){const n=uN(),o=e.ref(0),{addVault:a,removeVault:i,updateVault:r,renameVault:l,formData:s}=nN();function c(y,C,b){b&&b!==y&&l(b,y,!1),r(y,C)}const{state:u,commit:f}=tt(),d=e.computed(()=>({cache:u.value.cacheConfig}));function p(y){u.value.cacheConfig=y.cache,f()}function m(){u.value.cacheConfig=void 0,f()}function g(){o.value++}return(y,C)=>(e.openBlock(),e.createElementBlock("div",wN,[e.createVNode(mt,{data:e.unref(s),schema:e.unref(n)},{default:e.withCtx(()=>[e.createVNode(dN,{name:"vault",onAdd:e.unref(a),onRemove:e.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),C[0]||(C[0]=e.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(e.openBlock(),e.createBlock(mt,{key:`${o.value}`,data:d.value,schema:e.unref(n)},{default:e.withCtx(()=>{var b;return[e.createVNode(kN,{strategy:(b=d.value.cache)==null?void 0:b.strategy,onCancel:g,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-3a9010b8"]]),EN={class:"header"},NN={class:"title"},xN={class:"body"},SN={class:"panel"},AN=_e(e.defineComponent({__name:"SidePanel",setup(t){const{t:n}=it.createI18n("en-us",ct),{sidePanelExpanded:o}=pr(),{propertiesPanelOpen:a,selectedNode:i}=tt(),r=e.ref("nodes");function l(){a.value=!1}e.watch(i,c=>{c||l()});const s=e.ref(!1);return e.onMounted(()=>{s.value=!0}),(c,u)=>{const f=e.resolveComponent("KSegmentedControl");return e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(["side-panel",{expanded:e.unref(o),inited:s.value}])},[e.createElementVNode("header",EN,[e.createElementVNode("h2",NN,e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),e.createElementVNode("div",xN,[e.createElementVNode("div",SN,[e.createVNode(f,{modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=d=>r.value=d),options:[{label:e.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:e.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),r.value==="nodes"?(e.openBlock(),e.createBlock(tN,{key:0,"hide-title":""})):e.createCommentVNode("",!0),r.value==="resources"?(e.openBlock(),e.createBlock(CN,{key:1})):e.createCommentVNode("",!0)])])],2)}}}),[["__scopeId","data-v-e8c1849d"]]),IN=e.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(t){return(n,o)=>(e.openBlock(),e.createBlock(Ct,{items:e.unref(ra)([...e.unref(yc)]),name:t.name},null,8,["items","name"]))}});function PN(t,n){const o=[],a=(i,r)=>{typeof r=="string"&&o.push({nodeName:t.name,path:["nodes",n,...i],value:r})};if("input"in t&&t.input!=null&&a(["input"],t.input),"inputs"in t&&t.inputs&&typeof t.inputs=="object")for(const[i,r]of Object.entries(t.inputs))r!=null&&a(["inputs",i],r);if("output"in t&&t.output!=null&&a(["output"],t.output),"outputs"in t&&t.outputs&&typeof t.outputs=="object")for(const[i,r]of Object.entries(t.outputs))r!=null&&a(["outputs",i],r);return o}function TN(t){const n=t.path[2];return n==="output"||n==="outputs"}function Hc(t){if(!t)return!1;for(const n of Object.values(t))if(n!=null)return!0;return!1}function Wc(t,n){const o=t.input!==void 0&&t.input!==null,a=Hc(t.inputs);o&&a&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=t.output!==void 0&&t.output!==null,r=Hc(t.outputs);i&&r&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function Yc(t,n,o){if(!t.nodes)return;const a=t.nodes.map(c=>c.name),i=new Set;a.forEach((c,u)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",u,"name"]}),i.add(c)});const r=new Set([...n,...a]),l=new Map,s=new Map;t.nodes.forEach((c,u)=>{for(const f of PN(c,u)){const d=f.value.split(".",1)[0];if(r.has(d)||o.addIssue({code:"custom",message:`Unknown node "${d}" in connection "${f.value}"`,path:f.path}),TN(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 ON=M.z.enum(gc),VN=M.z.enum(zn),Jc=t=>zn.includes(t),Wa=M.z.enum(hc),Xc=Wa.options;M.z.union([Wa,ON]);const BN=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,Cr=M.z.string().min(1).max(255).regex(BN,"Invalid node name (snake_case / kebab-case only)").refine(t=>!Jc(t),"Name clashes with reserved implicit node").brand(),Zc=M.z.union([VN,Cr]),RN=M.z.string().min(1).brand(),$N=["then","else"];M.z.enum($N);const ve=M.z.string().min(1).max(255).refine(t=>{if(Zc.safeParse(t).success)return!0;const n=t.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,a]=n;return Zc.safeParse(o).success&&RN.safeParse(a).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),FN=M.z.object({body:ve,headers:ve,http_proxy:ve,https_proxy:ve,proxy_auth_password:ve,proxy_auth_username:ve,query:ve,url:ve}).partial().strict(),LN=M.z.object({headers:ve,body:ve}).partial().strict(),DN=M.z.object({data:ve,key:ve,ttl:ve}).partial().strict(),MN=M.z.object({claims:ve,key:ve}).partial().strict(),jN=M.z.object({key:ve,token:ve}).partial().strict(),Qc=M.z.enum(yc),ed=M.z.enum(Pa),Rt=M.z.object({type:M.z.string(),name:Cr,input:ve,inputs:M.z.record(M.z.string().min(1).max(255),ve).nullish(),output:ve,outputs:M.z.record(M.z.string().min(1).max(255),ve).nullish()}).loose().superRefine((t,n)=>{Wc(t,n)}),vN=M.z.object({type:M.z.string(),name:M.z.string()}).loose().superRefine((t,n)=>{const o=t.type,a=t.name;(typeof a!="string"||a.length===0||a.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),Xc.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${Xc.join(", ")}`})}),KN=Rt.safeExtend({type:M.z.literal("call"),method:Qc.default("GET").nullish(),ssl_server_name:M.z.string().nullish(),ssl_verify:M.z.boolean().default(!0).nullish(),timeout:M.z.number().int().min(0).max(2147483646).nullish(),url:M.z.url().nullish(),inputs:FN.nullish(),outputs:M.z.object({body:ve,headers:ve,raw_body:ve,status:ve}).partial().nullish()}).strict(),UN=Rt.safeExtend({type:M.z.literal("exit"),status:M.z.number().int().min(200).max(599).default(200).nullish(),warn_headers_sent:M.z.boolean().nullish(),inputs:LN.nullish(),output:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),qN=Rt.safeExtend({type:M.z.literal("jq"),jq:M.z.string().min(1).max(10240),outputs:M.z.never().nullish()}).strict(),GN=Rt.safeExtend({type:M.z.literal("xml_to_json"),recognize_type:M.z.boolean().nullish().default(!0),attributes_block_name:M.z.string().min(1).max(32).nullish(),attributes_name_prefix:M.z.string().min(1).max(32).nullish(),text_block_name:M.z.string().min(1).max(32).nullish().default("#text"),text_as_property:M.z.boolean().nullish().default(!1),xpath:M.z.string().min(1).max(256).nullish(),inputs:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict().superRefine((t,n)=>{!t.attributes_block_name&&!t.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),zN=Rt.safeExtend({type:M.z.literal("json_to_xml"),attributes_block_name:M.z.string().min(1).max(32).nullish(),attributes_name_prefix:M.z.string().min(1).max(32).nullish(),root_element_name:M.z.string().min(1).max(64).nullish(),text_block_name:M.z.string().min(1).max(32).nullish().default("#text"),inputs:M.z.record(M.z.string().min(1).max(255),ve).nullish(),outputs:M.z.never().nullish()}).strict().superRefine((t,n)=>{!t.attributes_block_name&&!t.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),HN=Rt.safeExtend({type:M.z.literal("jwt_decode"),inputs:M.z.never().nullish(),outputs:M.z.object({header:ve,payload:ve,signature:ve}).partial().nullish()}).strict(),WN=Rt.safeExtend({type:M.z.literal("jwt_sign"),algorithm:ed,expires_in:M.z.number().int().default(300).nullish(),inputs:MN.nullish(),kid:M.z.string().nullish(),not_before:M.z.number().int().default(0).nullish(),outputs:M.z.object({claims:ve,header:ve,token:ve}).partial().nullish(),static_claims:M.z.record(M.z.string(),M.z.string()).default({}).nullish(),typ:M.z.string().default("JWT").nullish()}).strict(),YN=Rt.safeExtend({type:M.z.literal("jwt_verify"),allowed_algorithms:M.z.array(ed).default([]).nullish(),audiences:M.z.array(M.z.string()).default([]).nullish(),inputs:jN.nullish(),issuers:M.z.array(M.z.string()).default([]).nullish(),leeway:M.z.number().int().default(0).nullish(),outputs:M.z.object({claims:ve,header:ve}).partial().nullish(),required_claims:M.z.array(M.z.string()).default([]).nullish(),validate_exp:M.z.boolean().default(!0).nullish(),validate_nbf:M.z.boolean().default(!0).nullish()}).strict(),JN=Rt.safeExtend({type:M.z.literal("property"),content_type:M.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:M.z.string().min(1).max(255),inputs:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),XN=Rt.safeExtend({type:M.z.literal("static"),values:M.z.record(M.z.string(),M.z.unknown()),input:M.z.never().nullish(),inputs:M.z.never().nullish()}).strict(),ZN=Rt.safeExtend({type:M.z.literal("cache"),bypass_on_error:M.z.boolean().nullish(),inputs:DN.nullish(),outputs:M.z.object({data:ve,hit:ve,miss:ve,stored:ve}).partial().nullish(),ttl:M.z.number().int().gt(0).nullish()}).strict(),QN=Rt.safeExtend({type:M.z.literal("branch"),then:M.z.array(Cr).min(1).max(64).nullish(),else:M.z.array(Cr).min(1).max(64).nullish()}).strict(),e0=vN.pipe(M.z.discriminatedUnion("type",[KN,UN,qN,GN,zN,HN,WN,YN,JN,XN,ZN,QN])),t0=M.z.record(M.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),M.z.string().min(1).max(4095)),n0=M.z.object({dictionary_name:M.z.string().nullish().default("kong_db_cache")}),o0=M.z.object({host:M.z.string().default("127.0.0.1"),port:M.z.number().int().min(0).max(65535).default(6379)}),r0=M.z.object({ip:M.z.string().default("127.0.0.1"),port:M.z.number().int().min(0).max(65535).default(6379)}),a0=M.z.object({host:M.z.string().nullish().default("127.0.0.1"),port:M.z.number().int().min(0).max(65535).nullish().default(6379),connect_timeout:M.z.number().int().min(0).max(2147483646).nullish().default(2e3),send_timeout:M.z.number().int().min(0).max(2147483646).nullish().default(2e3),read_timeout:M.z.number().int().min(0).max(2147483646).nullish().default(2e3),username:M.z.string().nullish(),password:M.z.string().nullish(),sentinel_username:M.z.string().nullish(),sentinel_password:M.z.string().nullish(),database:M.z.number().int().nullish().default(0),keepalive_pool_size:M.z.number().int().min(1).max(2147483646).nullish().default(256),keepalive_backlog:M.z.number().int().min(0).max(2147483646).nullish(),sentinel_master:M.z.string().nullish(),sentinel_role:M.z.enum(["master","slave","any"]).nullish(),sentinel_nodes:M.z.array(o0).min(1,{message:"sentinel_nodes must contain at least 1 item"}).nullish(),cluster_nodes:M.z.array(r0).min(1,{message:"cluster_nodes must contain at least 1 item"}).nullish(),ssl:M.z.boolean().default(!1).nullish(),ssl_verify:M.z.boolean().default(!0).nullish(),server_name:M.z.string().nullish(),cluster_max_redirections:M.z.number().int().default(5).nullish(),connection_is_proxied:M.z.boolean().default(!1).nullish(),cloud_authentication:M.z.object({auth_provider:M.z.enum(["aws","azure","gcp"]).nullish(),aws_access_key_id:M.z.string().nullish(),aws_assume_role_arn:M.z.string().nullish(),aws_cache_name:M.z.string().nullish(),aws_is_serverless:M.z.boolean().default(!0).nullish(),aws_region:M.z.string().nullish(),aws_role_session_name:M.z.string().nullish(),aws_secret_access_key:M.z.string().nullish(),azure_client_id:M.z.string().nullish(),azure_client_secret:M.z.string().nullish(),azure_tenant_id:M.z.string().nullish(),gcp_service_account_json:M.z.string().nullish()}).nullish(),timeout:M.z.number().int().nullish(),sentinel_addresses:M.z.array(M.z.string()).min(1).nullish(),cluster_addresses:M.z.array(M.z.string()).min(1).nullish()}).superRefine((t,n)=>{var c;const o=t.host!==void 0&&t.host!==null,a=t.port!==void 0&&t.port!==null;(o&&!a||!o&&a)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!t.sentinel_master,r=!!t.sentinel_role,l=!!((c=t.sentinel_nodes)!=null&&c.length),s=[i,r,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),t.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"]})}),i0=M.z.object({strategy:M.z.enum(["memory","redis"]).nullish(),memory:n0,redis:a0}),l0=M.z.object({vault:t0.nullish(),cache:i0.nullish()});M.z.array(M.z.object({id:M.z.string()})),M.z.object({nodes:M.z.array(e0).min(1,"At least one node is required").max(64),debug:M.z.boolean().default(!1).nullish(),resources:l0.nullish()}).strict().superRefine((t,n)=>{Yc(t,zn,n)});const td=Wa.options,Ya=M.z.string().min(1).refine(t=>!t.includes("."),"Invalid node name").refine(t=>!Jc(t),"Node name conflicts with reserved implicit node"),qe=M.z.string().refine(t=>{if(!t||/\s/.test(t))return!1;const n=t.indexOf(".");if(n===-1)return!0;const o=t.slice(0,n),a=t.slice(n+1);return o.length>0&&a.length>0},"Invalid connection"),nd=M.z.object({body:qe.nullish(),headers:qe.nullish(),query:qe.nullish()}).partial().strict(),od=M.z.object({headers:qe.nullish(),body:qe.nullish()}).partial().strict(),rd=M.z.object({data:qe.nullish(),key:qe.nullish(),ttl:qe.nullish()}).partial().strict(),ad=M.z.object({claims:qe.nullish(),key:qe.nullish()}).partial().strict(),id=M.z.object({key:qe.nullish(),token:qe.nullish()}).partial().strict(),s0={call:nd,exit:od,cache:rd,jwt_sign:ad,jwt_verify:id};function c0(t){const n=s0[t];return n?Object.keys(n.shape):null}const $t=M.z.object({type:M.z.string(),name:Ya,input:qe.nullish(),inputs:M.z.record(M.z.string(),qe.nullish()).nullish(),output:qe.nullish(),outputs:M.z.record(M.z.string(),qe.nullish()).nullish()}).loose().superRefine((t,n)=>{Wc(t,n)}),d0=M.z.object({type:M.z.string(),name:M.z.string()}).loose().superRefine((t,n)=>{const o=t.type,a=t.name;(typeof a!="string"||a.length===0||a.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),td.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${td.join(", ")}`})}),u0=$t.safeExtend({type:M.z.literal("call"),method:Qc.nullish(),ssl_server_name:M.z.string().nullish(),ssl_verify:M.z.boolean().nullish(),timeout:M.z.union([M.z.number(),M.z.string()]).nullish(),url:M.z.string().nullish(),inputs:nd.nullish(),outputs:M.z.object({body:qe.nullish(),headers:qe.nullish(),status:qe.nullish()}).partial().nullish()}).strict(),p0=$t.safeExtend({type:M.z.literal("exit"),status:M.z.union([M.z.number(),M.z.string()]).nullish(),warn_headers_sent:M.z.boolean().nullish(),inputs:od.nullish(),output:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),f0=$t.safeExtend({type:M.z.literal("jq"),jq:M.z.string().nullish(),outputs:M.z.never().nullish()}).strict(),m0=$t.safeExtend({type:M.z.literal("xml_to_json"),recognize_type:M.z.boolean().nullish(),attributes_block_name:M.z.string().nullish(),attributes_name_prefix:M.z.string().nullish(),text_block_name:M.z.string().nullish(),text_as_property:M.z.boolean().nullish(),xpath:M.z.string().nullish(),inputs:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),g0=$t.safeExtend({type:M.z.literal("json_to_xml"),attributes_block_name:M.z.string().nullish(),attributes_name_prefix:M.z.string().nullish(),root_element_name:M.z.string().nullish(),text_block_name:M.z.string().nullish(),inputs:M.z.record(M.z.string(),qe.nullish()).nullish(),outputs:M.z.never().nullish()}).strict(),h0=$t.safeExtend({type:M.z.literal("property"),content_type:M.z.string().nullish(),property:M.z.string().nullish(),inputs:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),y0=$t.safeExtend({type:M.z.literal("static"),values:M.z.record(M.z.string(),M.z.unknown()).nullish(),input:M.z.never().nullish(),inputs:M.z.never().nullish()}).strict(),_0=$t.safeExtend({type:M.z.literal("cache"),bypass_on_error:M.z.boolean().nullish(),inputs:rd.nullish(),outputs:M.z.object({data:qe.nullish(),hit:qe.nullish(),miss:qe.nullish(),stored:qe.nullish()}).partial().nullish(),ttl:M.z.union([M.z.number(),M.z.string()]).nullish()}).strict(),b0=$t.safeExtend({type:M.z.literal("jwt_decode"),inputs:M.z.never().nullish(),outputs:M.z.object({header:qe.nullish(),payload:qe.nullish(),signature:qe.nullish()}).partial().nullish()}).strict(),k0=$t.safeExtend({type:M.z.literal("jwt_sign"),algorithm:M.z.enum(Pa).nullish(),expires_in:M.z.union([M.z.number(),M.z.string()]).nullish(),inputs:ad.nullish(),kid:M.z.string().nullish(),not_before:M.z.union([M.z.number(),M.z.string()]).nullish(),outputs:M.z.object({claims:qe.nullish(),header:qe.nullish(),token:qe.nullish()}).partial().nullish(),static_claims:M.z.record(M.z.string(),M.z.string()).nullish(),typ:M.z.string().nullish()}).strict(),w0=$t.safeExtend({type:M.z.literal("jwt_verify"),allowed_algorithms:M.z.array(M.z.enum(Pa)).nullish(),audiences:M.z.array(M.z.string()).nullish(),inputs:id.nullish(),issuers:M.z.array(M.z.string()).nullish(),leeway:M.z.union([M.z.number(),M.z.string()]).nullish(),outputs:M.z.object({claims:qe.nullish(),header:qe.nullish()}).partial().nullish(),required_claims:M.z.array(M.z.string()).nullish(),validate_exp:M.z.boolean().nullish(),validate_nbf:M.z.boolean().nullish()}).strict(),C0=$t.safeExtend({type:M.z.literal("branch"),then:M.z.array(Ya).nullish(),else:M.z.array(Ya).nullish()}).strict(),E0=d0.pipe(M.z.discriminatedUnion("type",[u0,p0,f0,m0,g0,b0,k0,w0,h0,y0,_0,C0])),N0=M.z.record(M.z.string(),M.z.string()),x0=M.z.object({dictionary_name:M.z.string().nullish()}),S0=M.z.object(),A0=M.z.object({strategy:M.z.enum(["memory","redis"]).nullish(),memory:x0.nullish(),redis:S0.nullish()}),I0=M.z.object({vault:N0.nullish(),cache:A0.nullish()}),ld=M.z.object({nodes:M.z.array(E0).nullish(),debug:M.z.boolean().nullish(),resources:I0.nullish()}).strict().superRefine((t,n)=>{!t||!Array.isArray(t.nodes)||Yc(t,zn,n)}).nullish(),sd=e.defineComponent({__name:"InputsRecordField",props:{name:{},items:{},nodeType:{}},emits:["change:inputs"],setup(t){const{getSchema:n}=We(),{i18n:o}=De(),a=e.computed(()=>{const i=n("inputs");if(!i)return[];const r=i.fields.map(s=>Object.keys(s)[0]);if(xt(t.nodeType))return r;const l=c0(t.nodeType);return l===null?r:l.length===0?[]:xh(r,l)});return(i,r)=>(e.openBlock(),e.createBlock(Et,{"as-child":"",name:t.name,"reset-label-path":"isolate"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,l=>(e.openBlock(),e.createBlock(Ct,{key:l,clearable:"","enable-filtering":"",items:t.items,name:l,placeholder:e.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},e.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:e.withCtx(s=>[e.renderSlot(i.$slots,"item-label",e.mergeProps({ref_for:!0},s))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),P0=["data-testid"],T0={class:"dk-inputs-map-field-entry-body"},O0={class:"dk-inputs-map-field-entry-content"},V0=_e(e.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},appearance:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},autofocus:{type:Boolean},name:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(t,{emit:n}){const o=t,a=n,{entries:i,addEntry:r,removeEntry:l,field:s}=Zo(o,a),{i18n:{t:c}}=De(),u=e.useTemplateRef("root"),f=e.ref(null),d=e.ref({});let p;async function m(_,w="key"){var x;u.value&&(await e.nextTick(),(x=u.value.querySelector(`[data-${w}-input="${_}"]`))==null||x.focus())}function g(){const{id:_}=r(),w=i.value.findIndex(({key:x})=>!x);m(w===-1?i.value.length-1:w),f.value=_}function y(_){l(_.id),_.id===f.value&&(f.value=null),_.key.trim()!==""&&a("remove:field",_.key)}function C(_){p=_.key}function b(_){if(h(_)){_.key=p,delete d.value[_.id];return}if(_.id===f.value){if(_.key.trim()==="")return;a("add:field",_.key,_.value),f.value=null}else a("rename:field",p,_.key);p=_.key}function h(_){delete d.value[_.id];const w=o.fieldNameValidator("input",p,_.key);if(w)return d.value[_.id]=w,w}function E(_){h(_)}function k(_,w){_.id!==f.value&&a("change:inputs",_.key,w)}return e.watch(()=>i.value,_=>{f.value&&(_.find(({id:w})=>w===f.value)||(f.value=null))}),(_,w)=>{const x=e.resolveComponent("KAlert"),O=e.resolveComponent("KLabel"),v=e.resolveComponent("KInput"),I=e.resolveComponent("KSelect"),S=e.resolveComponent("KButton");return e.unref(s).error?(e.openBlock(),e.createBlock(x,{key:0,appearance:"danger",message:e.unref(s).error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:u,class:"dk-inputs-map-field"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),(P,F)=>(e.openBlock(),e.createElementBlock("div",{key:P.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${e.unref(s).path.value}.${F}`},[e.createVNode(O,{for:`ff-kv-entry-key-${e.unref(s).path.value}.${F}`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),e.createElementVNode("div",T0,[e.createElementVNode("div",O0,[e.createVNode(v,{id:`ff-kv-entry-key-${e.unref(s).path.value}.${F}`,modelValue:P.key,"onUpdate:modelValue":[T=>P.key=T,T=>h(P)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":F,"data-testid":`ff-key-${e.unref(s).path.value}.${F}`,error:!!d.value[P.id],"error-message":d.value[P.id],placeholder:e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:T=>E(P),onChange:T=>b(P),onFocus:T=>C(P)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),e.createVNode(I,{modelValue:P.value,"onUpdate:modelValue":T=>P.value=T,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${e.unref(s).path.value}.${F}`,"enable-filtering":"",items:t.items,label:e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),placeholder:e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:T=>k(P,(T==null?void 0:T.value)??null)},e.createSlots({_:2},[_.$slots["item-label"]?{name:"item-template",fn:e.withCtx(({item:T})=>[e.renderSlot(_.$slots,"item-label",e.mergeProps({ref_for:!0},T),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),e.createVNode(S,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${e.unref(s).path.value}.${F}`,icon:"",onClick:T=>y(P)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,P0))),128)),e.createVNode(S,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${e.unref(s).path.value}`,disabled:!!f.value,onClick:g},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-dda8b239"]]),B0={class:"dk-source-item"},Er=_e(e.defineComponent({__name:"SourceItem",props:{item:{}},setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("span",B0,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(rt)[t.item.type].icon),{color:e.unref(Dn),size:e.unref(po)},null,8,["color","size"])),e.createTextVNode(" "+e.toDisplayString(t.item.label),1)]))}}),[["__scopeId","data-v-78ea8dff"]]),R0={key:1,class:"dk-inputs-field-or"},It=_e(e.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{},nodeType:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(t,{emit:n}){const o=n,{getSchema:a}=We(),{i18n:{t:i}}=De(),r=e.computed(()=>a("inputs")),l=e.computed(()=>r.value?r.value.type==="record"?sd:V0: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)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Oe.KLabel),{class:"dk-inputs-field-h1",info:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),e.unref(a)("input")?(e.openBlock(),e.createBlock(Ct,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:t.items,label:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":e.withCtx(g=>[e.renderSlot(p.$slots,"item-label",e.normalizeProps(e.guardReactiveProps(g)),()=>[e.createVNode(Er,{item:g},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createElementBlock("div",R0,[e.createElementVNode("span",null,e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createBlock(e.unref(Oe.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createBlock(e.unref(l),e.mergeProps({key:3,items:t.items,"key-order":t.fieldNames,name:"inputs"},l.value===sd?{nodeType:t.nodeType}:{fieldNameValidator:t.fieldNameValidator},{"onAdd:field":c,"onChange:inputs":u,"onRemove:field":f,"onRename:field":d}),{"item-label":e.withCtx(g=>[e.createVNode(Er,{item:g},null,8,["item"])]),_:1},16,["items","key-order"])):e.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-f80a82e6"]]),$0={},F0={class:"dk-node-form-divider"};function L0(t,n){return e.openBlock(),e.createElementBlock("hr",F0)}const jt=_e($0,[["render",L0],["__scopeId","data-v-5ff7f943"]]),D0={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"},M0={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 j0(t){const n=Number(t);return!isNaN(n)&&isFinite(n)}function vt(...t){return function(o){for(const a of t){const i=a(o);if(i)return i}}}function Yt(t){const{i18n:{t:n}}=De(),o=()=>t?typeof t=="string"?t:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",t):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function cd(t,n){const{i18n:{t:o}}=De();return function(i){if(i!=null)switch(t){case"identifier":{const r=()=>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:r()}case"url":{const r=()=>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 r()}}default:return}}}function on(t=0,n=1/0,o){const{i18n:{t:a}}=De();return function(r){if(r!=null&&typeof r=="string"&&(r.length<t||r.length>n))return o?typeof o=="string"?o:a("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:t,maxLength:n}):`Value must be between ${t} and ${n} characters`}}function dd(t){const{i18n:{t:n}}=De();return function(a){if(!j0(a))return t?typeof t=="string"?t:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",t):"Value must be a number"}}function Zn(t,n){const{i18n:{t:o}}=De();return function(i){if(i==null)return;const r=dd(n)(i);if(r)return r;const l=Number(i);switch(t){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 Ja(t=-1/0,n=1/0,o){const{i18n:{t:a}}=De();return function(r){if(r==null)return;const l=dd(o)(r);if(l)return l;const s=Number(r);if(s<t||s>n)return o?typeof o=="string"?o:a("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:t,max:n}):`Value must be between ${t} and ${n}`}}function v0(t,n){const{state:o}=tt(),{i18n:{t:a}}=De();return function(r){if(o.value.nodes.some(l=>l.name===r&&l.id!==t))return n?typeof n=="string"?n:a("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function K0(t,n,o){const{i18n:{t:a}}=De();return function(r){if(!n)return;if(o?n.fields[t].some(s=>s.name===r&&s.id!==o):n.fields[t].some(s=>s.name===r)){const s=a(t==="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 a("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function U0(){const{i18n:{t}}=De();return function(o){if(Ba(o))return t("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function ud(t){const{i18n:{t:n}}=De(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return vt(Yt(o),cd("identifier",o),U0(),v0(t,o))}function q0(t){const{i18n:{t:n}}=De(),{getNodeById:o}=tt();return function(i,r,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 vt(Yt(s),K0(i,o(t),l))(r)}}function G0(t){const n=e.ref({}),o=e.computed(()=>Object.values(n.value).every(l=>!l)),a={};Object.keys(t).forEach(l=>{const s=t[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));a[l]={handleChange:f,handleBlur:f,validate:f,isValid:e.computed(()=>n.value[l]===void 0),error:e.computed(()=>n.value[l])}});function i(){n.value={}}function r(l){var s;for(const c of Object.keys(t)){const u=l[c],f=typeof u=="function"?u():u;(s=a[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:a,clearErrors:i,validate:r}}function rn(t){const{validationConfig:n,getValidationData:o,toggleNodeValid:a}=t,{skipValidation:i}=tt(),r=e.computed(()=>typeof n=="function"?n():n),l=e.computed(()=>G0(r.value)),s=e.computed(()=>l.value.fields),c=e.computed(()=>l.value.isValid.value);function u(){const d=o(),p=l.value.validate(d),m={};for(const g in r.value)m[g]=p[g];return m}function f(d,p){const m=()=>{const y=o(),C=s.value[d];C&&C.handleBlur(y[d])},g=()=>{p==null||p();const y=o(),C=s.value[d];C&&C.handleChange(y[d])};return e.computed(()=>{const y=s.value[d];return{validate:m,update:g,error:y?!y.isValid.value:!1,errorMessage:y?y.error.value??"":""}})}return e.onMounted(()=>{i.value?i.value=!1:u()}),e.onBeforeUnmount(async()=>{try{const d=u(),p=Object.values(d).filter(Boolean).length>0;a(!p)}catch{}}),e.watch(()=>c.value,a,{immediate:!0}),{fields:s.value,isValid:c,validateAll:u,createFieldHandler:f}}function St(t,n){const{state:o,renameNode:a,getNodeById:i,addField:r,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:u,connectEdge:f,invalidConfigNodeIds:d,commit:p,revert:m}=tt(),{i18n:{t:g}}=De(),y=Mc(),C=e.computed(()=>{const L=i(t);if(!L)throw new Error("Node not existed");return L}),b=e.computed(()=>{const V=o.value.edges.filter(R=>R.target===t).reduce((R,A)=>{var B,j;const K=i(A.source),z=(B=fn(K,"output",A.sourceField))==null?void 0:B.id,$=(j=fn(C.value,"input",A.targetField))==null?void 0:j.name,N=K.id+(z?`.${z}`:"");return $?R.inputs={...R.inputs,[$]:N}:R.input=N,R},{});return C.value.fields.input.forEach(R=>{V.inputs||(V.inputs={}),V.inputs[R.name]||(V.inputs[R.name]=null)}),{...C.value.config,...V,name:C.value.name}}),h=L=>{a(t,L??"",!0,`${t}:rename`)},E=(L,V=!0)=>{if(!n)throw new Error("getFormValue is not defined");const R=sn(n(),["name","input","inputs"]),A=L?`update:${t}:${L}`:void 0;c(t,R,V,A)},k=(L,V)=>{const R=pn(C.value,L,V);if(!R)throw new Error(`Field with name "${V}" not found in node "${C.value.name}"`);return R},_=(L,V,R)=>{const A=!!R;r(t,L,V,!A),A&&I(V,R)},w=(L,V,R)=>{const A=k(L,V).id;l(t,A,R)},x=(L,V)=>{const R=k(L,V).id;s(t,R)},O=e.computed(()=>o.value.edges.filter(L=>L.target===t&&!L.targetField)[0]),v=e.computed(()=>o.value.edges.filter(L=>L.target===t&&L.targetField)),I=async(L,V)=>{const R=V==null,A=k("input",L).id;if(R){const ee=v.value.find(oe=>oe.targetField===A);ee&&u(ee.id);return}const{nodeId:K,fieldId:z}=_c(V),$=k("input",L).id,N=[];O.value&&(N.push(xo(O.value,i)),u(O.value.id,!1));const B=v.value.find(ee=>ee.targetField===A);B&&(N.push(xo(B,i)),u(B.id,!1)),f({source:K,sourceField:z,target:t,targetField:$},!1);const j=qa(K,z,t,$,i),W=N[0]&&j?N[0][1]===j[1]:!1;if(p(),W||N.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[j],N)||m()},S=async L=>{if(L==null){O.value&&u(O.value.id);return}const R=[];for(const N of v.value)R.push(xo(N,i)),u(N.id,!1);O.value&&u(O.value.id,!1);const{nodeId:A,fieldId:K}=_c(L);f({source:A,sourceField:K,target:t,targetField:void 0},!1);const z=qa(A,K,t,void 0,i);if(p(),R.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[z],R)||m()},P=L=>{const V=[...o.value.edges,{source:L,target:t}];return Ma(ur(V))},F=e.computed(()=>{var V,R;const L=[];for(const A of o.value.nodes)if((V=Wn(A.type).io)!=null&&V.output&&A.fields.output&&A.id!==t&&!(A.type==="property"&&!Ka((R=A.config)==null?void 0:R.property))&&!P(A.id)&&!(C.value.phase==="request"&&A.phase==="response")&&!(A.type==="vault"&&A.fields.output.length===0)){L.push({value:A.id,label:A.name,type:A.type});for(const z of A.fields.output)L.push({value:`${A.id}.${z.id}`,label:`${A.name}.${z.name}`,type:A.type})}return L}),T=e.computed(()=>C.value.fields.input.map(L=>L.name)||[]);function D(L){d.value.delete(t),L||d.value.add(t)}const U=q0(t);function q(L,V,R){const A=i(t);if(!A)throw new Error("Node not found when validating field name");const K=pn(A,L,V);return U(L,R,K==null?void 0:K.id)}return{formData:b,inputOptions:F,inputEdge:O,inputsEdges:v,inputsFieldNames:T,currentNode:C,setName:h,setConfig:E,addField:_,renameFieldByName:w,removeFieldByName:x,setInputs:I,setInput:S,nameValidator:ud(t),fieldNameValidator:q,toggleNodeValid:D}}function At(t){const{getSchema:n}=We();return e.computed(()=>{if(xt(t))switch(t){case"response":return M0;case"service_request":return D0}try{const a=n().fields.find(u=>Go(u,"config"));if(!a)throw new Error("Config field not found in schema.");const r=a.config.fields.find(u=>Go(u,"nodes"));if(!r)throw new Error("Nodes field not found in config schema.");const c=r.nodes.elements.subschema_definitions[t];if(!c)throw new Error(`Subschema "${t}" not found in the schema.`);return c}catch(o){throw new Error(`Failed to get subschema "${t}": ${o.message}`)}})}const Ft=e.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(t,{emit:n}){const o=t,a=n,{i18n:{t:i}}=De(),r=e.ref(o.name),l=e.computed(()=>{const f=o.validate(r.value.trim());return f===void 0?"":f});let s=r.value.trim();function c(){if(l.value){r.value=s;return}a("update",r.value.trim())}function u(){s=r.value.trim()}return e.watch(()=>o.name,f=>{f!==r.value&&(r.value=f)}),(f,d)=>{const p=e.resolveComponent("KInput");return e.openBlock(),e.createBlock(p,{"model-value":r.value,"onUpdate:modelValue":d[0]||(d[0]=m=>r.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:u},null,8,["model-value","error","error-message","label"])}}}),z0=e.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(t){const{i18n:{t:n}}=De(),o=e.useTemplateRef("form"),a=At("call"),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>o.value.getValue()),{createFieldHandler:g}=rn({validationConfig:{url:vt(Yt({fieldName:"URL"}),cd("url",{fieldName:"URL"})),timeout:vt(Zn("integer"),Ja(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),y=g("url",()=>l("url")),C=g("timeout",()=>l("timeout"));return(b,h)=>{const E=e.resolveComponent("KLabel");return e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(a)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(E,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ze,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"url",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(IN,{name:"method",onUpdate:h[0]||(h[0]=k=>e.unref(l)())}),e.createVNode(qt,{error:e.unref(C).error,"error-message":e.unref(C).errorMessage,name:"timeout",onBlur:e.unref(C).validate,"onUpdate:modelValue":e.unref(C).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Ze,{name:"ssl_server_name","onUpdate:modelValue":h[1]||(h[1]=k=>e.unref(l)("ssl_server_name"))}),e.createVNode(Qt,{name:"ssl_verify","onUpdate:modelValue":h[2]||(h[2]=k=>e.unref(l)("ssl_verify"))}),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"call","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),H0=e.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("service_request"),{formData:a,inputOptions:i,setInputs:r,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=St(t.nodeId,()=>n.value.getValue());return(u,f)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(a),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(It,{"field-name-validator":e.unref(c),"field-names":e.unref(s),items:e.unref(i),"node-type":"service_request","onChange:input":e.unref(l),"onChange:inputs":e.unref(r)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),W0=e.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("response"),{formData:a,inputOptions:i,setInputs:r,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=St(t.nodeId,()=>n.value.getValue());return(u,f)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(a),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(It,{"field-name-validator":e.unref(c),"field-names":e.unref(s),items:e.unref(i),"node-type":"response","onChange:input":e.unref(l),"onChange:inputs":e.unref(r)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),Y0=e.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(t){const{i18n:{t:n},i18nT:o}=De(),a=e.useTemplateRef("form"),i=At("jq"),{formData:r,setName:l,setConfig:s,inputOptions:c,setInputs:u,setInput:f,addField:d,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:g,nameValidator:y,toggleNodeValid:C,fieldNameValidator:b}=St(t.nodeId,()=>a.value.getValue());function h(O,v){d("input",O,v)}function E(O){p("input",O)}function k(O,v){m("input",O,v)}const _=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:w}=rn({validationConfig:{jq:vt(Yt({fieldName:_}),on(1,10240,{fieldName:_}))},getValidationData:()=>({jq:r.value.jq}),toggleNodeValid:C}),x=w("jq",()=>s("jq"));return(O,v)=>{const I=e.resolveComponent("KLabel"),S=e.resolveComponent("KExternalLink");return e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(r),schema:e.unref(i)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(r).name,validate:e.unref(y),onUpdate:e.unref(l)},null,8,["name","validate","onUpdate"]),e.createVNode(I,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ze,{autosize:"",error:e.unref(x).error,"error-message":e.unref(x).errorMessage,label:e.unref(_),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:e.unref(x).validate,"onUpdate:modelValue":e.unref(x).update},{help:e.withCtx(()=>[e.createVNode(e.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:e.withCtx(()=>[e.createVNode(S,{"hide-icon":"",href:e.unref(Sa).jqlang},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(Sa).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(b),"field-names":e.unref(g),items:e.unref(c),"node-type":"jq","onAdd:field":h,"onChange:input":e.unref(f),"onChange:inputs":e.unref(u),"onRemove:field":E,"onRename:field":k},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),J0=_e(e.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},appearance:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},autofocus:{type:Boolean},name:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(t,{emit:n}){const o=t,a=n,i=e.ref({}),{entries:r,addEntry:l,removeEntry:s,field:c}=Zo(o,a,!1),{i18n:u}=De(),f=e.useTemplateRef("root"),d=e.ref(null);let p;async function m(_,w="key"){var x;f.value&&(await e.nextTick(),(x=f.value.querySelector(`[data-${w}-input="${_}"]`))==null||x.focus())}function g(){const _=l(),w=r.value.findIndex(({key:x})=>!x);m(w===-1?r.value.length-1:w),d.value=_}function y(_){var w;_.id===((w=d.value)==null?void 0:w.id)&&(d.value=null),s(_.id),_.key.trim()!==""&&a("remove:field",_.key)}function C(_){p=_.key}function b(_){var w;if(E(_)){_.key=p,delete i.value[_.id];return}if(_.id===((w=d.value)==null?void 0:w.id)){if(_.key.trim()==="")return;d.value=null,a("add:field",_.key,_.value)}else a("rename:field",p,_.key);p=_.key}function h(_,w){var O;if(w.id===((O=d.value)==null?void 0:O.id))return;const x=_.target.value.trim();a("change:value",w.key,x)}function E(_){delete i.value[_.id];const w=o.fieldNameValidator("output",p,_.key);if(w)return i.value[_.id]=w,w}function k(_){E(_)}return e.watchEffect(()=>{d.value&&!r.value.some(_=>_.id===d.value.id)&&r.value.push(d.value)}),(_,w)=>{const x=e.resolveComponent("KAlert"),O=e.resolveComponent("KLabel"),v=e.resolveComponent("KButton"),I=e.resolveComponent("KInput"),S=e.resolveComponent("KCard");return e.unref(c).error?(e.openBlock(),e.createBlock(x,{key:0,appearance:"danger",message:e.unref(c).error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[e.createVNode(O,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),(P,F)=>(e.openBlock(),e.createBlock(S,{key:P.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${e.unref(c).path.value}.${F}`},{actions:e.withCtx(()=>[e.createVNode(v,{appearance:"none","data-testid":`ff-kv-remove-btn-${e.unref(c).path.value}.${F}`,icon:"",onClick:T=>y(P)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:e.withCtx(()=>[e.createVNode(I,{id:`ff-kv-entry-key-${e.unref(c).path.value}.${F}`,modelValue:P.key,"onUpdate:modelValue":[T=>P.key=T,T=>E(P)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":F,"data-testid":`ff-key-${e.unref(c).path.value}.${F}`,error:!!i.value[P.id],"error-message":i.value[P.id],label:e.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:T=>k(P),onChange:T=>b(P),onFocus:T=>C(P)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),e.createVNode(I,{modelValue:P.value,"onUpdate:modelValue":T=>P.value=T,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${e.unref(c).path.value}.${F}`,label:e.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:T=>h(T,P)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),e.createVNode(v,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${e.unref(c).path.value}`,disabled:!!d.value,onClick:g},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.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 X0(t){const n={};for(const[o,a]of Object.entries(t))typeof a=="object"&&a!==null?n[o]=JSON.stringify(a):n[o]=String(a);return n}function Nr(t){const n={};for(const[o,a]of Object.entries(t))if(a!=null){n[o]=a;try{a==="null"?n[o]=null:(a==="true"||a==="false"||/^-?\d+(\.\d+)?$/.test(a)||a.startsWith("{")&&a.endsWith("}")||a.startsWith("[")&&a.endsWith("]"))&&(n[o]=JSON.parse(a))}catch{}}return n}function Z0(t,n,o){const a={};for(const i of Object.keys(t))i===n?a[o]=t[n]:a[i]=t[i];return a}const Q0=e.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(t){const{renameNode:n,getOutEdgesByNodeId:o,addField:a,renameField:i,removeField:r,replaceConfig:l,getNodeById:s}=tt(),{fieldNameValidator:c}=St(t.nodeId),u=At("static"),f=ud(t.nodeId),d=e.computed(()=>s(t.nodeId)),p=e.computed(()=>{var E;return((E=d.value)==null?void 0:E.fields.output.map(k=>k.name))||[]});function m(E){if(!d.value)throw new Error("No current node");n(d.value.id,E??"")}const g=e.computed(()=>{var v;if(!d.value)return{};const E=((v=d.value.config)==null?void 0:v.values)??{},k={},_=o(d.value.id).map(I=>I.sourceField).filter(Boolean).map(I=>fn(d.value,"output",I)).map(I=>I==null?void 0:I.name).filter(Boolean),w=d.value.fields.output.map(I=>I.name),x=Object.keys(E);return new Set([...x,..._,...w]).forEach(I=>{if(I in E){k[I]=E[I];return}k[I]=""}),{name:d.value.name,values:X0(k)}});function y(E,k){if(!d.value)throw new Error("No selected node");const _=k!==void 0;if(a(t.nodeId,"output",E,!_),_){const w={values:Nr({...g.value.values,[E]:k})};l(t.nodeId,w)}}function C(E,k){if(!d.value)throw new Error("No selected node");const _=pn(d.value,"output",E);if(!_)throw new Error("No field found to rename");const w={values:Nr(Z0(g.value.values??{},E,k))};l(t.nodeId,w,!1),i(t.nodeId,_.id,k)}function b(E){var w;if(!d.value)throw new Error("No selected node");const k=pn(d.value,"output",E);if(!k)throw new Error("No field found to delete");r((w=d.value)==null?void 0:w.id,k.id,!0,!1);const _={values:Nr({...g.value.values})};delete _.values[E],l(t.nodeId,_)}function h(E,k){if(!d.value)throw new Error("No selected node");const _={...g.value.values};_[E]=k;const w={values:Nr(_)};l(t.nodeId,w)}return(E,k)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:g.value,schema:e.unref(u)},{default:e.withCtx(()=>{var _;return[e.createVNode(Ft,{name:((_=d.value)==null?void 0:_.name)??"",validate:e.unref(f),onUpdate:m},null,8,["name","validate"]),e.createVNode(J0,{"field-name-validator":e.unref(c),"key-order":p.value,name:"values","onAdd:field":y,"onChange:value":h,"onRemove:field":b,"onRename:field":C},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),ex={class:"dk-kong-property-item"},tx={class:"property-type"},nx={class:"property-badges"},ox=_e(e.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(t,{emit:n}){const{i18n:{t:o}}=De(),a=t,i=n,{formData:r}=We(),l=e.ref(Eo(r.property)),s=e.computed(()=>No(r.property)),c=e.ref(va(r.property)),u=e.computed(()=>r.property??""),f=e.computed(()=>Object.entries(Vn).map(([m])=>{var C;const g=No(m)?(C=r.property)==null?void 0:C.startsWith(m.replace(Jn,"")):r.property===m;return{label:g&&c.value?m.replace(Jn,c.value):m,value:m,selected:g}}));function d(m){const g=gr.find(y=>{var C;return(C=r.property)==null?void 0:C.startsWith(y)});g&&(r.property=g+m,a.validators.key.handleChange(r.property),i("update:property-key",r.property))}function p(m){l.value!==Eo(m==null?void 0:m.value)&&(r.property=(m==null?void 0:m.value)||null,l.value=Eo(r.property),a.validators.property.handleBlur(()=>r.property),i("update:model-value",r.property))}return e.watch(()=>r.property,m=>{c.value=va(m),l.value=Eo(m)}),(m,g)=>{const y=e.resolveComponent("KBadge"),C=e.resolveComponent("KSelect"),b=e.resolveComponent("KInput");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(C,{key:u.value,"enable-filtering":"",error:!t.validators.property.isValid.value,help:t.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=h=>t.validators.property.handleBlur(()=>e.unref(r).property)),onChange:p},{"item-template":e.withCtx(({item:h})=>[e.createElementVNode("div",ex,[e.createElementVNode("div",null,[e.createElementVNode("div",null,e.toDisplayString(h.label),1),e.createElementVNode("div",tx,e.toDisplayString(e.unref(Vn)[h.value].dataType),1)]),e.createElementVNode("div",nx,[e.unref(Vn)[h.value].readable?(e.openBlock(),e.createBlock(y,{key:0,appearance:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):e.createCommentVNode("",!0),e.unref(Vn)[h.value].writable?(e.openBlock(),e.createBlock(y,{key:1,appearance:"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):e.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(e.openBlock(),e.createBlock(b,{key:0,"model-value":c.value,"onUpdate:modelValue":[g[1]||(g[1]=h=>c.value=h),d],error:!t.validators.key.isValid.value,"error-message":t.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=h=>t.validators.key.handleBlur(()=>e.unref(r).property))},null,8,["model-value","error","error-message"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-0ab1be87"]]),rx=e.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:a,disconnectOutEdges:i}=tt(),r=At("property"),{formData:l,setName:s,setConfig:c,inputOptions:u,setInputs:f,setInput:d,inputsFieldNames:p,nameValidator:m,toggleNodeValid:g,fieldNameValidator:y}=St(t.nodeId,()=>n.value.getValue()),C=e.computed(()=>Ua(l.value.property));function b(E){var _;const k=(_=o.value)==null?void 0:_.id;if(!k)throw new Error("Expected selectedNode to be defined");Ka(E)||i(k,!1),Ua(E)||a(k,!1),c()}const{fields:h}=rn({validationConfig:()=>({property:Yt({fieldName:"Property"}),key:No(l.value.property)?Yt({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:va(l.value.property)}),toggleNodeValid:g});return(E,k)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(l),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(l).name,validate:e.unref(m),onUpdate:e.unref(s)},null,8,["name","validate","onUpdate"]),e.createVNode(Ct,{name:"content_type",onUpdate:k[0]||(k[0]=_=>e.unref(c)())}),e.createVNode(ox,{validators:e.unref(h),"onUpdate:modelValue":b,"onUpdate:propertyKey":k[1]||(k[1]=_=>e.unref(c)("property-key"))},null,8,["validators"]),C.value?(e.openBlock(),e.createBlock(jt,{key:0})):e.createCommentVNode("",!0),C.value?(e.openBlock(),e.createBlock(It,{key:1,"field-name-validator":e.unref(y),"field-names":e.unref(p),items:e.unref(u),"node-type":"property","onChange:input":e.unref(d),"onChange:inputs":e.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):e.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),ax=e.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("exit"),{formData:a,setName:i,setConfig:r,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:u,nameValidator:f,toggleNodeValid:d,fieldNameValidator:p}=St(t.nodeId,()=>n.value.getValue()),{createFieldHandler:m}=rn({validationConfig:{status:vt(Zn("integer",{fieldName:"Status"}),Ja(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:a.value.status}),toggleNodeValid:d}),g=m("status",()=>r("status"));return(y,C)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(a),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(a).name,validate:e.unref(f),onUpdate:e.unref(i)},null,8,["name","validate","onUpdate"]),e.createVNode(qt,{error:e.unref(g).error,"error-message":e.unref(g).errorMessage,name:"status",onBlur:e.unref(g).validate,"onUpdate:modelValue":e.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Qt,{name:"warn_headers_sent","onUpdate:modelValue":C[0]||(C[0]=b=>e.unref(r)())}),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(p),"field-names":e.unref(u),items:e.unref(l),"node-type":"exit","onChange:input":e.unref(c),"onChange:inputs":e.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function ix(t){const n=St(t),{state:o,getNodeById:a,branchGroups:i,commit:r}=tt(),{i18n:{t:l}}=De(),s=Mc(),c=ua(),u=e.computed(()=>{var E;const b={...n.formData.value},h=wo(((E=n.currentNode.value)==null?void 0:E.type)||"branch");for(const k of h)(!(k in b)||b[k]==null)&&(b[k]=[]);return b});function f(b,h,E){const k=a(b),_=a(E),w=k?`${k.name}.${h}`:`${b}.${h}`,x=_?_.name:E;return[w,x]}function d(b){return(b==null?[]:Array.isArray(b)?b:[b]).filter(h=>$a(h))}function p(b,h){return i.wouldCreateCycle(b,h)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(b,h,E){const k=[],_=[],w=[];for(const x of E){const O=i.findMembership(x);if(!O||O.ownerId===b&&O.branch===h)continue;const v=i.getMembers(O.ownerId,O.branch).filter(I=>I!==x);w.push({ownerId:O.ownerId,branch:O.branch,members:v}),k.push(f(b,h,x)),_.push(f(O.ownerId,O.branch,x))}return{conflictUpdates:w,addedAssignments:k,removedAssignments:_}}function g(b,h,E,k){let _=!1;for(const w of k)_=i.setMembers(w.ownerId,w.branch,w.members,{commit:!1})||_;return _=i.setMembers(b,h,E,{commit:!1})||_,_}async function y(b,h){const E=n.currentNode.value,k=d(h),_=i.prepareMembers(E.id,b,k),w=i.getMembers(E.id,b);if(Fa(w,_))return!0;const x=_.filter(P=>!w.includes(P));for(const P of x)if(p(E.id,P))return!1;const{conflictUpdates:O,addedAssignments:v,removedAssignments:I}=m(E.id,b,x);return O.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),v,I)?!1:(g(E.id,b,_,O)&&r(),!0)}const C=e.computed(()=>{const b=n.currentNode.value;return!b||!i?[]:o.value.nodes.filter(h=>h.id!==t&&!xt(h.type)&&h.phase===b.phase&&!i.wouldCreateCycle(b.id,h.id)).map(h=>({value:h.id,label:h.name,type:h.type}))});return{...n,formData:u,branchOptions:C,updateBranchMembers:y}}const lx=e.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(t){const{i18n:{t:n}}=De(),o=At("branch"),a=e.ref(0),{formData:i,setName:r,inputOptions:l,branchOptions:s,nameValidator:c,setInput:u,setInputs:f,inputsFieldNames:d,fieldNameValidator:p,updateBranchMembers:m}=ix(t.nodeId);async function g(y,C){await m(y,C)||(a.value+=1)}return(y,C)=>(e.openBlock(),e.createBlock(mt,{key:a.value,data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(c),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ct,{"enable-filtering":"",items:e.unref(s),multiple:"",name:"then",onUpdate:C[0]||(C[0]=b=>g("then",b))},{"item-label":e.withCtx(b=>[e.createVNode(Er,{item:b},null,8,["item"])]),_:1},8,["items"]),e.createVNode(Ct,{"enable-filtering":"",items:e.unref(s),multiple:"",name:"else",onUpdate:C[1]||(C[1]=b=>g("else",b))},{"item-label":e.withCtx(b=>[e.createVNode(Er,{item:b},null,8,["item"])]),_:1},8,["items"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(p),"field-names":e.unref(d),items:e.unref(l),"node-type":"branch","onChange:input":e.unref(u),"onChange:inputs":e.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),sx=e.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("cache"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>n.value.getValue()),{createFieldHandler:g}=rn({validationConfig:()=>({ttl:vt(Zn("integer",{fieldName:"TTL"}),Ja(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),y=g("ttl",()=>l("ttl"));return(C,b)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Qt,{name:"bypass_on_error","onUpdate:modelValue":b[0]||(b[0]=h=>e.unref(l)("bypass_on_error"))}),e.createVNode(qt,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"ttl",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"cache","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),cx=e.defineComponent({__name:"NodeFormXmlToJson",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("xml_to_json"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>n.value.getValue()),g=a("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),y=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:C}=rn({validationConfig:()=>({attributes_block_name:vt(()=>y()?void 0:g,O=>{if(O)return on(1,32,{fieldName:"Attributes block name"})(O)}),attributes_name_prefix:vt(()=>y()?void 0:g,O=>{if(O)return on(1,32,{fieldName:"Attributes name prefix"})(O)}),text_block_name:on(1,32,{fieldName:"Text block name"}),xpath:on(1,256,{fieldName:"XPath"})}),getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,text_block_name:i.value.text_block_name,xpath:i.value.xpath}),toggleNodeValid:p}),b=C("attributes_block_name",()=>l("attributes_block_name")),h=C("attributes_name_prefix",()=>l("attributes_name_prefix")),E=C("text_block_name",()=>l("text_block_name")),k=C("xpath",()=>l("xpath")),_=()=>{b.value.validate(),h.value.validate()},w=()=>{b.value.update(),h.value.validate()},x=()=>{h.value.update(),b.value.validate()};return(O,v)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Qt,{name:"recognize_type","onUpdate:modelValue":v[0]||(v[0]=I=>e.unref(l)("recognize_type"))}),e.createVNode(Ze,{error:e.unref(b).error,"error-message":e.unref(b).errorMessage,name:"attributes_block_name",onBlur:_,"onUpdate:modelValue":w},null,8,["error","error-message"]),e.createVNode(Ze,{error:e.unref(h).error,"error-message":e.unref(h).errorMessage,name:"attributes_name_prefix",onBlur:_,"onUpdate:modelValue":x},null,8,["error","error-message"]),e.createVNode(Ze,{error:e.unref(E).error,"error-message":e.unref(E).errorMessage,name:"text_block_name",onBlur:e.unref(E).validate,"onUpdate:modelValue":e.unref(E).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Qt,{name:"text_as_property","onUpdate:modelValue":v[1]||(v[1]=I=>e.unref(l)("text_as_property"))}),e.createVNode(Ze,{error:e.unref(k).error,"error-message":e.unref(k).errorMessage,name:"xpath",onBlur:e.unref(k).validate,"onUpdate:modelValue":e.unref(k).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"xml_to_json","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),dx=e.defineComponent({__name:"NodeFormJsonToXml",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("json_to_xml"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,addField:f,removeFieldByName:d,renameFieldByName:p,inputsFieldNames:m,nameValidator:g,toggleNodeValid:y,fieldNameValidator:C}=St(t.nodeId,()=>n.value.getValue()),b=a("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),h=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:E}=rn({validationConfig:{attributes_block_name:vt(()=>h()?void 0:b,on(1,32,{fieldName:"Attributes block name"})),attributes_name_prefix:vt(()=>h()?void 0:b,on(1,32,{fieldName:"Attributes name prefix"})),root_element_name:on(1,64,{fieldName:"Root element name"}),text_block_name:on(1,32,{fieldName:"Text block name"})},getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,root_element_name:i.value.root_element_name,text_block_name:i.value.text_block_name}),toggleNodeValid:y}),k=E("attributes_block_name",()=>l("attributes_block_name")),_=E("attributes_name_prefix",()=>l("attributes_name_prefix")),w=E("root_element_name",()=>l("root_element_name")),x=E("text_block_name",()=>l("text_block_name"));function O(){k.value.validate(),_.value.validate()}function v(){k.value.update(),_.value.validate()}function I(){_.value.update(),k.value.validate()}function S(T,D){f("input",T,D)}function P(T){d("input",T)}function F(T,D){p("input",T,D)}return(T,D)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(g),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ze,{error:e.unref(k).error,"error-message":e.unref(k).errorMessage,name:"attributes_block_name",onBlur:O,"onUpdate:modelValue":v},null,8,["error","error-message"]),e.createVNode(Ze,{error:e.unref(_).error,"error-message":e.unref(_).errorMessage,name:"attributes_name_prefix",onBlur:O,"onUpdate:modelValue":I},null,8,["error","error-message"]),e.createVNode(Ze,{error:e.unref(w).error,"error-message":e.unref(w).errorMessage,name:"root_element_name",onBlur:e.unref(w).validate,"onUpdate:modelValue":e.unref(w).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Ze,{error:e.unref(x).error,"error-message":e.unref(x).errorMessage,name:"text_block_name",onBlur:e.unref(x).validate,"onUpdate:modelValue":e.unref(x).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(C),"field-names":e.unref(m),items:e.unref(s),"node-type":"json_to_xml","onAdd:field":S,"onChange:input":e.unref(u),"onChange:inputs":e.unref(c),"onRemove:field":P,"onRename:field":F},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),ux=e.defineComponent({__name:"NodeFormJwtDecode",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("jwt_decode"),{formData:a,setName:i,inputOptions:r,setInputs:l,setInput:s,inputsFieldNames:c,nameValidator:u,fieldNameValidator:f}=St(t.nodeId,()=>n.value.getValue());return(d,p)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(a),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(a).name,validate:e.unref(u),onUpdate:e.unref(i)},null,8,["name","validate","onUpdate"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(f),"field-names":e.unref(c),items:e.unref(r),"node-type":"jwt_decode","onChange:input":e.unref(s),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),px=e.defineComponent({__name:"NodeFormJwtSign",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("jwt_sign"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>{const E={...n.value.getValue()};return(!E.static_claims||Object.keys(E.static_claims).length===0)&&delete E.static_claims,E}),{createFieldHandler:g,validateAll:y}=rn({validationConfig:{algorithm:Yt({fieldName:"Algorithm"}),expires_in:Zn("integer",{fieldName:"Expires in"}),not_before:Zn("integer",{fieldName:"Not before"}),key_input:Yt({fieldName:"Signing key input"})},getValidationData:()=>{var E;return{algorithm:i.value.algorithm,expires_in:i.value.expires_in,not_before:i.value.not_before,key_input:(E=i.value.inputs)==null?void 0:E.key}},toggleNodeValid:p}),C=g("algorithm",()=>l("algorithm")),b=g("expires_in",()=>l("expires_in")),h=g("not_before",()=>l("not_before"));return e.watch(()=>{var E;return(E=i.value.inputs)==null?void 0:E.key},()=>{y()}),(E,k)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ct,{"enable-filtering":"",name:"algorithm",onUpdate:e.unref(C).update},null,8,["onUpdate"]),e.createVNode(qt,{error:e.unref(b).error,"error-message":e.unref(b).errorMessage,name:"expires_in",onBlur:e.unref(b).validate,"onUpdate:modelValue":e.unref(b).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(qt,{error:e.unref(h).error,"error-message":e.unref(h).errorMessage,name:"not_before",onBlur:e.unref(h).validate,"onUpdate:modelValue":e.unref(h).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Ze,{name:"kid","onUpdate:modelValue":k[0]||(k[0]=_=>e.unref(l)("kid"))}),e.createVNode(Ze,{name:"typ","onUpdate:modelValue":k[1]||(k[1]=_=>e.unref(l)("typ"))}),e.createVNode(Qo,{label:e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.jwt.static_claims.label"),name:"static_claims",onChange:k[2]||(k[2]=_=>e.unref(l)("static_claims"))},null,8,["label"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"jwt_sign","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),fx=e.defineComponent({__name:"NodeFormJwtVerify",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("jwt_verify"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>n.value.getValue()),{createFieldHandler:g,validateAll:y}=rn({validationConfig:{leeway:Zn("integer",{fieldName:"Leeway"}),token_input:Yt({fieldName:"JWT token input"}),verification_key_input:Yt({fieldName:"Verification key input"})},getValidationData:()=>{var b,h;return{leeway:i.value.leeway,token_input:i.value.input??((b=i.value.inputs)==null?void 0:b.token),verification_key_input:(h=i.value.inputs)==null?void 0:h.key}},toggleNodeValid:p}),C=g("leeway",()=>l("leeway"));return e.watch(()=>{var b,h;return[i.value.input,(b=i.value.inputs)==null?void 0:b.token,(h=i.value.inputs)==null?void 0:h.key]},()=>{y()}),(b,h)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ct,{"enable-filtering":"",multiple:"",name:"allowed_algorithms",onUpdate:h[0]||(h[0]=E=>e.unref(l)("allowed_algorithms"))}),e.createVNode(en,{name:"issuers",onAdd:h[2]||(h[2]=E=>e.unref(l)("issuers")),onRemove:h[3]||(h[3]=E=>e.unref(l)("issuers"))},{item:e.withCtx(({fieldName:E,autofocus:k})=>[e.createVNode(Ze,{autofocus:k,name:E,"onUpdate:modelValue":h[1]||(h[1]=_=>e.unref(l)("issuers"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(en,{name:"audiences",onAdd:h[5]||(h[5]=E=>e.unref(l)("audiences")),onRemove:h[6]||(h[6]=E=>e.unref(l)("audiences"))},{item:e.withCtx(({fieldName:E,autofocus:k})=>[e.createVNode(Ze,{autofocus:k,name:E,"onUpdate:modelValue":h[4]||(h[4]=_=>e.unref(l)("audiences"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(en,{name:"required_claims",onAdd:h[8]||(h[8]=E=>e.unref(l)("required_claims")),onRemove:h[9]||(h[9]=E=>e.unref(l)("required_claims"))},{item:e.withCtx(({fieldName:E,autofocus:k})=>[e.createVNode(Ze,{autofocus:k,name:E,"onUpdate:modelValue":h[7]||(h[7]=_=>e.unref(l)("required_claims"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(qt,{error:e.unref(C).error,"error-message":e.unref(C).errorMessage,name:"leeway",onBlur:e.unref(C).validate,"onUpdate:modelValue":e.unref(C).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Qt,{name:"validate_exp","onUpdate:modelValue":h[10]||(h[10]=E=>e.unref(l)("validate_exp"))}),e.createVNode(Qt,{name:"validate_nbf","onUpdate:modelValue":h[11]||(h[11]=E=>e.unref(l)("validate_nbf"))}),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"jwt_verify","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),mx=["innerHTML"],gx={key:1,class:"branch-note"},hx={class:"branch-label"},yx={class:"branch-text"},_x=e.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${Vc}px`},offsetTop:{default:`${gC}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(t){const{t:n}=it.createI18n("en-us",ct),{getNodeById:o,branchGroups:a}=tt(),i=e.computed(()=>t.nodeId&&o(t.nodeId)),r=e.computed(()=>{if(t.nodeId)return a.findMembership(t.nodeId)}),l=e.computed(()=>{if(!r.value)return"";const u=o(r.value.ownerId);return u?`${u.name}.${r.value.branch}`:""});function s(){t.nodeId&&a.removeMember(t.nodeId)}const c=e.computed(()=>{var u;switch((u=i.value)==null?void 0:u.type){case"call":return z0;case"service_request":return H0;case"response":return W0;case"jq":return Y0;case"static":return Q0;case"property":return rx;case"exit":return ax;case"branch":return lx;case"cache":return sx;case"xml_to_json":return cx;case"json_to_xml":return dx;case"jwt_decode":return ux;case"jwt_sign":return px;case"jwt_verify":return fx;default:return null}});return(u,f)=>(e.openBlock(),e.createBlock(e.unref(Oe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":t.maxWidth,"offset-top":t.offsetTop,visible:t.visible,"z-index":e.unref(mC),onClose:f[0]||(f[0]=d=>u.$emit("close"))},e.createSlots({default:e.withCtx(()=>[i.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:e.unref(ht)(i.value.type)},null,8,mx)):e.createCommentVNode("",!0),r.value?(e.openBlock(),e.createElementBlock("div",gx,[e.createElementVNode("span",hx,[e.createVNode(e.unref(me.ArrowSplitIcon),{color:e.unref(Dn),size:e.unref(po)},null,8,["color","size"]),e.createElementVNode("span",yx,e.toDisplayString(l.value),1)]),e.createVNode(e.unref(Oe.KTooltip),{placement:"top",text:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"none","aria-label":e.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:s},{default:e.withCtx(()=>[e.createVNode(e.unref(me.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):e.createCommentVNode("",!0),c.value?(e.openBlock(),e.createBlock(e.unref(c),{key:t.nodeId,class:"dk-node-properties-panel-form","node-id":t.nodeId},null,8,["node-id"])):e.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:e.withCtx(()=>[e.createVNode(Uc,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),bx=_e(_x,[["__scopeId","data-v-a9773af9"]]),kx={class:"dk-editor-content"},wx={class:"main"},Cx=_e(e.defineComponent({__name:"EditorContent",setup(t){const{propertiesPanelOpen:n,selectedNode:o}=tt();function a(){n.value=!1}e.watch(o,r=>{r||a()});const i=e.ref(!1);return e.onMounted(()=>{i.value=!0}),(r,l)=>{var s;return e.openBlock(),e.createElementBlock("div",kx,[e.createVNode(e.unref(AN)),e.createElementVNode("div",wx,[e.createVNode(qE)]),e.createVNode(bx,{"node-id":(s=e.unref(o))==null?void 0:s.id,visible:e.unref(n),onClose:a},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-8f04afa6"]]),Ex={key:0,class:"dk-editor-modal"},Nx=_e(e.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(t){e.useCssVars(s=>({v8758bbfe:`${e.unref(fC)}px`,v30e03211:`${e.unref(Oc)}px`}));const n=e.useModel(t,"open"),o=e.ref(!1),a=e.useTemplateRef("confirm-modal"),{clear:i}=tt();ZC(async(...s)=>{o.value=!0;const c=await a.value.open(...s);return o.value=!1,c});const r=Xe.useScrollLock(document);e.watch(n,s=>{r.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(e.openBlock(),e.createElementBlock("div",Ex,[e.createVNode(DE,{class:"nav",onBack:l}),e.createVNode(Cx,{ref:"content",class:"content",tabindex:"0"},null,512),e.createVNode(RE,{ref:"confirm-modal"},null,512)])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-abbb8dba"]]),xx={class:"dk-flow-editor"},Sx={class:"flow-panels-container"},Ax={class:"overlay"},Ix=_e(e.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(t,{emit:n}){const{t:o}=it.createI18n("en-us",ct),{formData:a}=We(),i=n;function r(c,u,f,d){const p={...a.config,nodes:c};f!==void 0&&(p.resources=f);const m={...a.__ui_data,...u};a.config=p,a.__ui_data=m,d!=null?a.partials=[{id:d}]:a.partials&&(a.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=Ic(a,{onChange:r,isEditing:t.isEditing});return e.watch(l,()=>{s(!0)},{flush:"post"}),sC({enabled:l}),(c,u)=>{const f=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",xx,[e.createElementVNode("div",Sx,[e.createVNode(Ha,{inactive:e.unref(l),mode:"preview"},null,8,["inactive"]),e.createElementVNode("div",Ax,[e.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:u[0]||(u[0]=d=>l.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),e.createVNode(e.unref(me.ExpandIcon))]),_:1})])]),e.createVNode(Nx,{open:e.unref(l),"onUpdate:open":u[1]||(u[1]=d=>e.isRef(l)?l.value=d:null)},null,8,["open"])])}}}),[["__scopeId","data-v-82ca6e78"]]),Px=["innerHTML"],Tx={class:"dk-option-label"},Ox=["innerHTML"],Vx=_e(e.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const{t:n}=it.createI18n("en-us",ct),o=t,a=e.inject(Le.FORMS_CONFIG),i=e.ref(!1);e.onMounted(()=>{i.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:r}=pr(),l=e.computed(()=>a.app!=="konnect"||u.value===!1?"code":r.value),s=e.computed(()=>a.app==="kongManager"?"code":l.value==="flow"?"form":"code"),c={flow:me.DesignIcon,code:me.CodeblockIcon},u=e.ref(!0),f=e.ref(""),d=e.computed(()=>{const k=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return k[0].disabled=!u.value,k}),p=e.computed(()=>{switch(l.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}}),m=e.computed(()=>u.value?"":n("plugins.free-form.datakit.flow_editor.disabled_tooltip",{reason:f.value,code:k=>`<code>${_h(k)}</code>`}));e.watch(l,()=>{var k;(k=o.onValidityChange)==null||k.call(o,{model:"config",valid:!0})});function g(){var k;(k=o.onValidityChange)==null||k.call(o,{model:"config",valid:!0})}function y(){g()}function C(k){return k.map(_=>typeof _=="number"?`[${_}]`:k.length&&typeof _=="string"&&_.includes(".")?`["${_}"]`:`.${_}`).join("").replace(/^\./,"")}function b(k){return k.issues.map(_=>`${C(_.path)} - ${_.message}`).join("; ")}function h(k){if(g(),a.app!=="konnect")return;const _=k==null?void 0:k.config,{success:w,error:x}=ld.safeParse(_);f.value=w||!x?"":b(x),u.value=w}function E(k){var _;f.value=k,u.value=!1,(_=o.onValidityChange)==null||_.call(o,{model:"config",valid:!1,error:k})}return(k,_)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(a).app==="konnect"?(e.openBlock(),e.createBlock(e.Teleport,{key:0,disabled:!i.value,to:"#plugin-form-page-actions"},[e.createVNode(e.unref(Oe.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":l.value,options:d.value,"onUpdate:modelValue":_[0]||(_[0]=w=>r.value=w)},{"option-label":e.withCtx(({option:w})=>[e.createVNode(e.unref(Oe.KTooltip),{disabled:u.value||w.value!=="flow"},{content:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:m.value},null,8,Px)]),default:e.withCtx(()=>[e.createElementVNode("div",Tx,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c[w.value]))),e.createTextVNode(" "+e.toDisplayString(w.label),1)])]),_:2},1032,["disabled"])]),_:1},8,["model-value","options"])],8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(Wt,e.mergeProps(o,{class:"dk-form","editor-mode":s.value}),{"code-editor":e.withCtx(()=>[e.createVNode(Rw,{class:"code-editor",editing:o.isEditing,onChange:h,onError:E},null,8,["editing"])]),"plugin-config-title":e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.mode")),1)]),"plugin-config-description":e.withCtx(()=>[e.createElementVNode("span",{innerHTML:p.value},null,8,Ox)]),default:e.withCtx(()=>[l.value==="flow"?(e.openBlock(),e.createBlock(Ix,{key:0,"is-editing":o.isEditing,onChange:y},null,8,["is-editing"])):e.createCommentVNode("",!0)]),_:1},16,["editor-mode"])],64))}}),[["__scopeId","data-v-673cc067"]]),pd=t=>{if(!(!t||typeof t!="object"))for(const[n,o]of Object.entries(t))typeof o=="string"&&(t[n]=o.split(/\s*,\s*/).filter(Boolean))},fd=t=>{if(!(!t||typeof t!="object"))for(const[n,o]of Object.entries(t))Array.isArray(o)&&(t[n]=o.join(", "))},Bx=e.defineComponent({__name:"AIMcpProxyForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);const{i18n:{t:a}}=je.useI18n();function i(){const s={},c=["service-id","route-id","consumer-id","consumer_group-id"];for(const u of c)if(n.formModel[u]){const f=u.split("-")[0];f&&(s[f]={id:n.formModel[u]})}return s}const r={hasValue:s=>!!s&&Object.keys(s).length>0,prepareFormData:s=>{var u,f;const c=Sn(s);return(f=(u=c.config)==null?void 0:u.tools)!=null&&f.length&&c.config.tools.forEach(d=>{fd(d.headers),fd(d.query)}),n.isEditing?c:{...c,...i()}}};function l(s,c){var f,d;const u=Sn(s);(d=(f=u.config)==null?void 0:f.tools)!=null&&d.length&&u.config.tools.forEach(p=>{pd(p.headers),pd(p.query)}),n.onFormChange(u,c)}return(s,c)=>(e.openBlock(),e.createBlock(Wt,e.mergeProps(n,{"form-config":r,"on-form-change":l}),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:u})=>u==="config.default_acl"},{default:e.withCtx(u=>[e.createVNode(en,e.mergeProps(u,{appearance:"tabs","item-label":(f,d)=>e.unref(a)("plugins.free-form.ai-mcp-proxy.default_acl_item_label",{index:d+1}),"sticky-tabs":""}),null,16,["item-label"])]),_:1},8,["match"]),e.createVNode(Gt,{match:({path:u})=>u==="config.tools"},{default:e.withCtx(u=>[e.createVNode(en,e.mergeProps(u,{appearance:"tabs","item-label":(f,d)=>e.unref(a)("plugins.free-form.ai-mcp-proxy.tool_item_label",{index:d+1}),"sticky-tabs":""}),null,16,["item-label"])]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"})]),_:1},16))}}),Rx=e.defineComponent({__name:"UpstreamOauthForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();return e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(a,i)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:r})=>r==="config.behavior.idp_error_response_body_template"},{default:e.withCtx(r=>[e.createVNode(Ze,e.mergeProps(r,{multiline:"",rows:4}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),$x={"data-testid":"ff-identity-realms-field"},Fx=["innerHTML"],Lx=e.defineComponent({__name:"FreeFormAdapter",props:{name:{},label:{},labelAttributes:{},required:{type:Boolean},placeholder:{},resetLabelPath:{}},setup(t){const n=t,{error:o,value:a,path:i}=pt(e.toRef(n,"name"));if(o)throw o;const r=wt(i,n);return(l,s)=>{var u;const c=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",$x,[e.createVNode(c,e.mergeProps({class:"ff-array-field-label"},e.unref(r),{"data-testid":`ff-label-${e.unref(i)}`,"tooltip-attributes":e.unref(r).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r).label)+" ",1)]),_:2},[(u=e.unref(r).labelAttributes)!=null&&u.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(r).labelAttributes.info},null,8,Fx)])]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),e.createVNode(ui,{modelValue:e.unref(a),"onUpdate:modelValue":s[0]||(s[0]=f=>e.isRef(a)?a.value=f:null)},null,8,["modelValue"])])}}}),Dx={key:1,hidden:""},Mx=e.defineComponent({__name:"KeyAuthForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);const a=e.inject(Le.FORMS_CONFIG),i=e.computed(()=>(a==null?void 0:a.app)==="konnect");return(r,l)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:s})=>s==="config.identity_realms"},{default:e.withCtx(s=>[i.value?(e.openBlock(),e.createBlock(Lx,e.normalizeProps(e.mergeProps({key:0},s)),null,16)):(e.openBlock(),e.createElementBlock("span",Dx))]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),md=Object.freeze(Object.defineProperty({__proto__:null,AICustomGuardrailForm:iw,AIMcpProxyForm:Bx,CommonForm:e.defineComponent({__name:"CommonForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);const a=e.inject(Ho.KM_2262_CODE_MODE,!1),{i18n:{t:i}}=je.useI18n(),r=Xe.useLocalStorage("plugin-editor-mode","form"),l=e.ref(a?r.value:"form"),s=[{label:i("plugins.free-form.editor_mode.visual"),value:"form"},{label:i("plugins.free-form.editor_mode.code"),value:"code"}];function c(u){l.value=u,r.value=u}return(u,f)=>{const d=e.resolveComponent("KSegmentedControl");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(a)?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"#plugin-form-page-actions"},[e.createVNode(d,{"data-testid":"plugin-editor-mode-switcher","model-value":l.value,options:s,"onUpdate:modelValue":c},null,8,["model-value"])])):e.createCommentVNode("",!0),e.createVNode(Wt,e.mergeProps(n,{"editor-mode":l.value}),{default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16,["editor-mode"])],64)}}}),DatakitForm:Vx,ExitTransformerForm:lw,KeyAuthForm:Mx,LogForm:e.defineComponent({__name:"LogForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();return e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(a,i)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:r})=>r==="config.custom_fields_by_lua"},{default:e.withCtx(r=>[e.createVNode(Qo,e.mergeProps(r,{appearance:{string:{multiline:!0}}}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),RequestCalloutForm:pw,ServiceProtectionForm:Tw,UpstreamOauthForm:Rx},Symbol.toStringTag,{value:"Module"}));function jx(t){if(t.length===0)return"";if(t.length===1){const i=kt(t[0]);return et(...i.slice(0,-1))}const n=t.map(i=>kt(i)),o=Math.min(...n.map(i=>i.length)),a=[];for(let i=0;i<o-1;i++){const r=n[0][i];if(n.every(l=>l[i]===r))a.push(r);else break}return et(...a)}function Xa(t){return"at_least_one_of"in t?t.at_least_one_of:"mutually_required"in t?t.mutually_required:"mutually_exclusive"in t?t.mutually_exclusive:null}function vx(t,n){if(!n)return t;const o=n+Yo;return t.map(a=>a.startsWith(o)?a.slice(o.length):a)}function Kx(t,n){const o=Xa(t),a=vx(o,n);return"at_least_one_of"in t?{at_least_one_of:a}:"mutually_required"in t?{mutually_required:a}:{mutually_exclusive:a}}function Ux(t){const n=[],o=new Map;for(const a of t){const i=Xa(a);if(!i){n.push(a);continue}const r=jx(i);if(!r){n.push(a);continue}const l=Kx(a,r);o.has(r)||o.set(r,[]),o.get(r).push(l)}return{keep:n,move:o}}function qx(t,n,o){const a=kt(n);let i=t;for(const r of a){const l=i.fields.find(c=>Object.keys(c)[0]===r);if(!l)return;const s=l[r];if(s.type!=="record")return;i=s}i.entity_checks=[...i.entity_checks||[],...o]}function gd(t){var n;if((n=t.entity_checks)!=null&&n.length){const{keep:o,move:a}=Ux(t.entity_checks);t.entity_checks=o.length?o:void 0;for(const[i,r]of a)qx(t,i,r)}for(const o of t.fields){const a=Object.values(o)[0];a.type==="record"&&gd(a)}}function Gx(t){const n=JSON.parse(JSON.stringify(t)),o={fields:n.fields};return gd(o),n.fields=o.fields,n}function zx(t,n){const o=Pt[t];if(!o||!o.fieldRules)return n;const a=Hx(o.fieldRules),i={...n};return i.fields=i.fields.map(r=>{if(Object.keys(r)[0]==="config"){const s=r.config.entity_checks||[],c=d=>{const m=[...Xa(d)??[]].slice().sort();return`${Object.keys(d)[0]}:${m.join(",")}`},u=new Set(s.map(c)),f=a.filter(d=>{const p=c(d);return u.has(p)?!1:(u.add(p),!0)});return{config:{...r.config,entity_checks:[...s,...f]}}}return r}),i}function Hx(t){const n=[],o=a=>a.startsWith("config.")?a.substring(7):a;return t.atLeastOneOf&&t.atLeastOneOf.forEach(a=>{n.push({at_least_one_of:a.map(o)})}),t.onlyOneOf&&t.onlyOneOf.forEach(a=>{n.push({mutually_exclusive:a.map(o)})}),t.mutuallyRequired&&t.mutuallyRequired.forEach(a=>{n.push({mutually_required:a.map(o)})}),t.onlyOneOfMutuallyRequired&&t.onlyOneOfMutuallyRequired.forEach(a=>{if(a.forEach(i=>{n.push({mutually_required:i.map(o)})}),a.length>1)for(let i=0;i<a.length;i++)for(let r=i+1;r<a.length;r++){const l=a[i].map(o),s=a[r].map(o);l.forEach(c=>{s.forEach(u=>{n.push({mutually_exclusive:[c,u]})})})}}),n}const Wx={class:"kong-ui-entities-plugin-form"},Yx={key:1,class:"entity-form"},Jx={class:"plugin-config-empty-state"},Xx=_e(e.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1,default:void 0}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(t,{emit:n}){var ee,oe;const o=Object.keys(Le.sharedForms),a=Object.keys(md);if(new Set([...o,...a]).size!==o.length+a.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,r=t,l=e.inject(Ho.KM_2306_CONDITION_FIELD_314,!1),{axiosInstance:s}=le.useAxios((ee=r.config)==null?void 0:ee.axiosRequestConfig),{parseSchema:c}=je.useSchemas({entityId:((oe=r.entityMap.focusedEntity)==null?void 0:oe.id)||void 0,credential:r.credential,enableRedisPartial:r.enableRedisPartial,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{convertToDotNotation:u,unFlattenObject:f,dismissField:d,isObjectEmpty:p,unsetNullForeignKey:m}=je.usePluginHelpers(),{shouldUseFreeForm:g,getFreeFormName:y}=je.useFreeFormResolver(),{objectsAreEqual:C}=le.useHelpers(),{i18n:{t:b}}=De(),h=Q=>r.config.app==="konnect"?Q.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"?Q.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:""):Q,E=(Q,te)=>{let ie=`${r.config.apiBaseUrl}${Je.form[r.config.app].entityGetOne}`;return ie=h(ie),ie=ie.replace(/{entity}/gi,Q),ie=ie.replace(/{id}/gi,te),ie},k=Q=>{let te=`${r.config.apiBaseUrl}${Je.form[r.config.app].entityGetAll}`;return te=h(te),te=te.replace(/{entity}/gi,Q),te},_=(Q,te,ie)=>{const re=E(Q,te);return s.get(re,ie)},w=(Q,te)=>{const ie=k(Q);return r.config.app==="konnect"?s.get(ie).then(re=>{const{data:{data:Ce}}=re;if(delete te.size,delete te.offset,Ce.length&&Object.keys(te).length===1){const pe=Object.keys(te)[0],Me=Ce.filter(ue=>ue[pe]?!!ue[pe].toLowerCase().includes(te[pe].toLowerCase()):!1);re.data.data=Me}return re}):s.get(ie,{params:te})},x=(Q,te,ie)=>{const re=k(Q);if(r.config.app==="konnect"){const{size:Ce,offset:pe,...Me}=te;if(Q==="consumer_groups")return s.get(re,{params:{size:1e3},signal:ie}).then(ye=>{const{data:{data:fe}}=ye;if(fe.length&&Object.keys(Me).length===1){const Se=Object.keys(Me)[0],we=fe.filter(H=>H[Se]?!!H[Se].toLowerCase().includes(Me[Se].toLowerCase()):!1);ye.data.data=we}return ye});const ue={size:Ce,offset:pe};for(const ye of Object.keys(Me))ue.filter={[ye]:{contains:Me[ye]}};return s.get(re,{params:ue,signal:ie})}return s.get(re,{params:te,signal:ie})},O=(Q,te=50)=>{const ie=k(Q);return s.get(ie,{params:{size:te}})};e.provide(Le.FORMS_API_KEY,{getOne:_,getAll:w,getAllV2:x,peek:O}),e.provide(Le.FORMS_CONFIG,r.config);const v=e.ref(""),I=e.ref(""),S=e.ref(null),P=e.ref({}),F=e.reactive({}),T=e.reactive({}),D=e.computed(()=>{var Q;return(Q=S.value)==null?void 0:Q.options}),U=e.computed(()=>{const Q=zx(T.name,r.rawSchema);return Gx(Q)}),q=e.ref(!1),L=e.ref(),V=(Q,te)=>{q.value=Q??"",L.value=te},R=Q=>{var te;(te=L.value)==null||te.call(L,Q),q.value=!1},A=Q=>{var ue,ye;const te={...r.schema},ie=T,re=F,Ce=Object.keys(ie),pe={};if(!p(P.value))for(let fe=0;fe<((ye=(ue=P.value)==null?void 0:ue.fields)==null?void 0:ye.length);fe++)te[P.value.fields[fe].model]=P.value.fields[fe];Le.customFields.forEach(fe=>{te[fe]&&(te[fe].fields.forEach(Se=>{Se.fields&&Se.fields.forEach(we=>{te[we.model]=we}),Se.model&&(te[Se.model]=Se)}),delete te[fe])}),Ce.forEach(fe=>{var Ie;if(!te[fe]){fe==="partials"&&(pe[fe]=ie[fe]);return}const Se=te[fe];let we=ie[fe];const H=re[fe],J=Array.isArray(we)?"array":typeof we,G=Se?Se.valueType:null,ce=Se?Se.valueArrayType:null,Z=Se?Se.transform:null;if(we==null&&H==null&&!Se.submitWhenNull)return;if(Se){if(G&&J!==G)switch(G){case"array":J==="string"&&we.length&&(we=we.split(",").map(ge=>{if(ge=ge.trim(),ce==="string")return String(ge);if(ce==="number")return Number(ge);if(ce==="boolean"){if(typeof ge=="string")return ge.toLowerCase()==="true"||ge==="1";if(typeof ge=="number")return ge===1}return ge})),(!we||!we.length)&&(we=Se.submitWhenNull?null:[]);break;case"number":Se.referenceable!==!0&&(we=Number(we));break;case"boolean":J==="string"&&(we=we.toLowerCase()==="true"||we==="1"),J==="number"&&(we=we===1);break;case"string":we=we==null?"":String(we);break}else G==="array"&&(!we||!we.length?we=Se.submitWhenNull?null:[]:((Ie=Se.inputAttributes)==null?void 0:Ie.type)==="number"&&(we=we.map(ge=>Number(ge))));if(Se.type==="array"&&Se.nestedFields){const ge=Pe=>{Object.keys(Pe).forEach($e=>{Pe[$e]&&typeof Pe[$e]=="object"&&!Array.isArray(Pe[$e])&&Pe[$e]!==null?ge(Pe[$e]):(Pe[$e]===void 0||Pe[$e]===null||typeof Pe[$e]=="number"&&isNaN(Pe[$e])||typeof Pe[$e]=="string"&&Pe[$e].trim().length===0)&&delete Pe[$e]})};we&&typeof we=="object"&&ge(we)}Se.type==="object-advanced"&&Se.fields&&we!==null&&(Object.entries(we).length===0?we=null:Object.keys(we).forEach(ge=>{Array.isArray(we[ge])||(we[ge]=we[ge].split(","))}))}let de=u(fe);if(Se.fieldNameHasDashes){const[ge,...Pe]=de.split(".").reverse();de=[ge.replace(/_/g,"-"),...Pe].reverse().join(".")}if(G==="object-expand"){let ge;[de,ge]=de.split(".");let Pe={};pe[de]&&(Pe=pe[de]),Pe[ge]=we,we=Pe}H!==void 0&&we===""&&we!==H?pe[de]=G==="object"?{}:null:Se.type==="checklist"&&we===""?pe[de]=[]:we!==""&&(pe[de]=we),pe[de]=Z?Z(we):pe[de],m(de,pe)});const Me=f(pe);if(I.value){if(Q&&Q.length)for(const fe of Q)delete Me[fe];Object.assign(Me,B.value)}return Me},K=(Q,te={})=>{d(T,te,Q,r.editing),i("model-updated",{model:T,originalModel:F,data:A()})},z=(Q,te)=>{var Ce;const ie={[te]:Q};typeof((Ce=r.schema[te])==null?void 0:Ce.modelTransformer)=="function"&&(ie[te]=r.schema[te].modelTransformer(Q));const re=Object.assign({},T,ie);Object.assign(T,re),i("model-updated",{model:T,originalModel:F,data:A()})},$=Q=>{i("validity-change",Q)},N=(Q,te)=>{Object.keys(Q).forEach(ie=>{var ue,ye;let re=te?`${te}-${ie}`:ie,Ce=r.schema[re];if(!Ce){const fe=te?`${te}-${ie.replace(/-/g,"_")}`:ie.replace(/-/g,"_");(ue=r.schema[fe])!=null&&ue.fieldNameHasDashes&&(re=fe,Ce=r.schema[re]),te&&((ye=r.schema[te])==null?void 0:ye.keyFromObject)===ie&&(re=te,Ce=r.schema[re])}const pe=Q[ie],Me=typeof pe;if(Ce&&Ce.type==="object-advanced"&&!pe){T[re]={},F[re]={};return}if(Array.isArray(pe)){T[re]=JSON.parse(JSON.stringify(pe)),F[re]=JSON.parse(JSON.stringify(pe));return}if(Me==="object"&&pe&&!pe.length)return N(pe,re);if(Me==="object"&&pe&&pe.length&&Ce.type==="input"){T[re]=pe.join(", "),F[re]=pe.join(", ");return}T[re]=pe,F[re]=pe}),i("model-updated",{model:T,originalModel:F,data:A()})},B=e.shallowRef(r.record),j=(Q,te)=>{B.value=Q;const ie={...T};for(const re of te||[])delete ie[re];i("model-updated",{model:{...ie,...Q},originalModel:F,data:A(te)})},W=e.ref(!0),X=()=>{var Q;if(r.record&&r.schema&&(N({enabled:r.record.enabled??!0,...r.record.instance_name&&{instance_name:r.record.instance_name||""},...l&&r.record.condition!=null&&{condition:r.record.condition},...r.record.protocols&&{protocols:r.record.protocols},...r.record.tags&&{tags:r.record.tags}}),r.credential?((r.record.consumer_id||r.record.consumer)&&N({consumer_id:r.record.consumer_id||r.record.consumer}),N(r.record)):r.record.config&&((r.record.consumer_id||r.record.consumer||r.record.service_id||r.record.service||r.record.route_id||r.record.route||r.record.consumer_group_id||r.record.consumer_group)&&N({service_id:r.record.service_id||r.record.service,route_id:r.record.route_id||r.record.route,consumer_id:r.record.consumer_id||r.record.consumer,consumer_group_id:r.record.consumer_group_id||r.record.consumer_group}),r.record.partials&&K("redis",{partials:r.record.partials}),I.value?j(r.record):N(r.record.config,"config"))),Object.keys(r.entityMap).length&&!r.entityMap.global&&r.schema){const te={};for(const ie in r.entityMap){const re=r.entityMap[ie].id,Ce=r.entityMap[ie].idField,pe=Ce==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(Ce).replace("_","-"));Object.prototype.hasOwnProperty.call(T,pe)&&(te[pe]=re)}N(te)}if((Q=r.entityMap.consumer)!=null&&Q.id&&r.schema&&r.credential){const te={};Object.prototype.hasOwnProperty.call(T,"consumer")&&(te.consumer=r.entityMap.consumer.id),N(te)}W.value=!1};return e.watch(W,Q=>{i("loading",Q)}),e.watch(()=>r.schema,(Q,te)=>{var re,Ce;if(C(Q||{},te||{}))return;const ie=c(Q,void 0,void 0,r.engine);Object.assign(T,ie.model),P.value={fields:(Ce=(re=P.value)==null?void 0:re.fields)==null?void 0:Ce.map(pe=>({...pe,disabled:pe.disabled||!1}))},Object.assign(F,JSON.parse(JSON.stringify(ie.model))),I.value=g(ie.model.name,r.engine)?y(ie.model.name):void 0,v.value=Le.getSharedFormName(ie.model.name),X()},{immediate:!0,deep:!0}),e.onBeforeMount(()=>{var Q,te;S.value=c(r.schema,void 0,void 0,r.engine),Object.assign(T,((Q=S.value)==null?void 0:Q.model)||{}),P.value=((te=S.value)==null?void 0:te.schema)||{},X()}),(Q,te)=>{var re,Ce;const ie=e.resolveComponent("KSkeleton");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Wx,[W.value?(e.openBlock(),e.createBlock(ie,{key:0,type:"form"})):T.id&&t.editing||!t.editing?(e.openBlock(),e.createElementBlock("div",Yx,[I.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(md[I.value]),{key:0,"form-model":T,"form-schema":P.value,"is-editing":t.editing,model:t.record,"on-form-change":j,"on-validity-change":$,"plugin-name":T.name,"render-rules":(re=e.unref(Pt)[T.name])==null?void 0:re.freeformRenderRules,schema:U.value,onGlobalAction:te[0]||(te[0]=(pe,Me)=>Q.$emit("globalAction",pe,Me))},e.createSlots({_:2},[t.enableVaultSecretPicker?{name:e.unref(Le.AUTOFILL_SLOT_NAME),fn:e.withCtx(pe=>[pe.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Qn.VaultSecretPickerProvider),e.mergeProps({key:0},pe,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-schema","is-editing","model","plugin-name","render-rules","schema"])):v.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Le.sharedForms)[v.value]),{key:1,"enable-redis-partial":t.enableRedisPartial,"form-model":T,"form-options":D.value,"form-schema":P.value,"is-editing":t.editing,"on-model-updated":z,"on-partial-toggled":K,"show-new-partial-modal":pe=>Q.$emit("showNewPartialModal",pe)},e.createSlots({_:2},[t.enableVaultSecretPicker?{name:e.unref(Le.AUTOFILL_SLOT_NAME),fn:e.withCtx(pe=>[pe.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Qn.VaultSecretPickerProvider),e.mergeProps({key:0},pe,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(e.openBlock(),e.createBlock(e.unref(Le.VueFormGenerator),{key:2,"enable-redis-partial":t.enableRedisPartial,"is-editing":t.editing,model:T,options:D.value,schema:P.value,onModelUpdated:z,onPartialToggled:K,onRefreshModel:A,onShowNewPartialModal:te[1]||(te[1]=pe=>Q.$emit("showNewPartialModal",pe))},e.createSlots({"plugin-config-empty-state":e.withCtx(()=>[e.createElementVNode("div",Jx,e.toDisplayString(e.unref(b)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(Ce=e.unref(Pt)[T.name])!=null&&Ce.fieldRules&&(r.config.isNewOtelSchema||T.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:e.withCtx(()=>[e.createVNode(sy,{rules:e.unref(Pt)[T.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,t.enableVaultSecretPicker?{name:e.unref(Le.AUTOFILL_SLOT_NAME),fn:e.withCtx(pe=>[pe.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Qn.VaultSecretPickerProvider),e.mergeProps({key:0},pe,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(Qn.VaultSecretPicker),{config:r.config,setup:q.value,onCancel:te[2]||(te[2]=()=>q.value=!1),onProceed:R},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-f3a2f0bd"]]),Zx={key:1},Qx=e.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(t){return(n,o)=>t.teleportTarget?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:t.teleportTarget},[e.renderSlot(n.$slots,"default")],8,["to"])):(e.openBlock(),e.createElementBlock("div",Zx,[e.renderSlot(n.$slots,"default")]))}}),e1={key:0},t1={class:"plugin-form-actions"},n1=_e(e.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1,default:void 0}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(t,{emit:n}){var we;const o=e.inject(le.FEATURE_FLAGS.KM_1948_PLUGIN_FORM_LAYOUT,e.computed(()=>!1)),a=e.inject(Ho.KM_2306_CONDITION_FIELD_314,!1),i=n,r=t,l=hn.useRouter(),{i18n:{t:s}}=je.useI18n(),{customSchemas:c,typedefs:u}=je.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:f}=je.usePluginHelpers(),{shouldUseFreeForm:d}=je.useFreeFormResolver(),{getMessageFromError:p}=le.useErrors(),{capitalize:m}=le.useStringHelpers(),{objectsAreEqual:g}=le.useHelpers(),{axiosInstance:y}=le.useAxios((we=r.config)==null?void 0:we.axiosRequestConfig),C=e.ref(!1),b=e.computed(()=>!!r.pluginId),h=e.computed(()=>r.pluginId?le.EntityBaseFormType.Edit:le.EntityBaseFormType.Create),E=e.ref(void 0),k=e.ref(void 0),_=e.computed(()=>!!(r.credential&&r.config.entityId)),w=e.ref(void 0),x=e.ref({}),O=e.ref(),v=e.ref();e.provide(er,{redisType:O,redisPath:v,isEditing:b.value});const I=e.ref(!1),S=e.reactive({enabled:!0,protocols:[],tags:[]}),P=e.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),F=e.ref([{title:s("view_configuration.json"),hash:"#json"},{title:s("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&F.value.splice(1,0,{title:s("view_configuration.terraform"),hash:"#terraform"}),(r.config.app==="kongManager"||r.config.enableDeckTab)&&F.value.push({title:s("view_configuration.deck"),hash:"#deck"});const T=e.ref(""),D=e.computed(()=>{var J;if(_.value){let G=Je.form[r.config.app].credential[h.value];return G=G.replace(/{resourceEndpoint}/gi,V.value),G}let H;return r.config.entityType&&r.config.entityId?H=Je.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):H=Je.form[r.config.app].edit.all,r.config.app==="konnect"&&((J=Pt[r.pluginType])!=null&&J.useUIData)?`${H}?__ui_data=true`:H}),U=()=>{C.value=!C.value},q=e.computed(()=>{var de,Ie,ge,Pe,$e,se,ae,st;const H=r.config.entityType==="consumers"&&r.config.entityId||((Ie=(de=w.value)==null?void 0:de.consumer)==null?void 0:Ie.id),J=r.config.entityType==="consumer_groups"&&r.config.entityId||((Pe=(ge=w.value)==null?void 0:ge.consumer_group)==null?void 0:Pe.id),G=r.config.entityType==="services"&&r.config.entityId||((se=($e=w.value)==null?void 0:$e.service)==null?void 0:se.id),ce=r.config.entityType==="routes"&&r.config.entityId||((st=(ae=w.value)==null?void 0:ae.route)==null?void 0:st.id);if(!(H||J||G||ce))return{global:{entity:Y.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const Z={};return G&&(Z.service={entity:Y.PluginScope.SERVICE,entityEndpoint:"services",id:G,idField:_n.SERVICE}),ce&&(Z.route={entity:Y.PluginScope.ROUTE,entityEndpoint:"routes",id:ce,idField:_n.ROUTE}),H&&(Z.consumer={entity:Y.PluginScope.CONSUMER,entityEndpoint:"consumers",id:H,idField:_n.CONSUMER}),J&&(Z.consumer_group={entity:Y.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:J,idField:_n.CONSUMER_GROUP}),r.config.entityType&&(Z.focusedEntity={entity:Y.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:_n[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),Z}),L=e.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:s("plugins.form.fields.enabled.label"),textOn:s("plugins.form.fields.enabled.on_text"),textOff:s("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||h.value===le.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:s("plugins.form.scoping.global.label"),description:s("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:s("plugins.form.fields.protocols.help"),label:s("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:s("plugins.form.fields.instance_name.label"),inputType:"text",help:s("plugins.form.fields.instance_name.help")},tags:u.tags,...a?{condition:{default:"",type:"input",label:s("plugins.form.fields.condition.label"),inputType:"text",help:s("plugins.form.fields.condition.tooltip"),placeholder:s("plugins.form.fields.condition.placeholder")}}:{}}),V=e.computed(()=>{var G;const H=r.developer?"developers":"consumers",J=((G=Rn[r.pluginType])==null?void 0:G.endpoint)||"/plugins";return`${H}/${r.config.entityId}${r.developer?"/credentials":""}${J}`}),R=H=>{const J=Array.from(new Set(H.map(G=>typeof G)));return J.length>1?"string":J[0]},A=(H,J,G,ce)=>{var ge,Pe;let Z=J&&J.fields||[];const de=c[r.pluginType],Ie=(Pe=(ge=Rn[r.pluginType])==null?void 0:ge.schema)==null?void 0:Pe.fields;return Array.isArray(Z)&&(Z=Z.reduce(($e,se)=>{const ae=Object.keys(se)[0];return ae.match(/-/g)?$e[ae.replace(/-/g,"_")]={...se[ae],fieldNameHasDashes:!0}:$e[ae]=se[ae],$e},{})),Object.keys(Z).sort().forEach($e=>{var gn,an,dt,ne,Ee,be,ke;const se=Z[$e];se.type==="set"&&!(d(r.pluginType,r.engine)&&se.elements.one_of)&&(se.type="array");const ae=H?`${H}-${$e}`:`${$e}`;if((gn=de==null?void 0:de.fieldsToDelete)!=null&&gn.includes(ae)){Bl(G,ae);return}if(Object.prototype.hasOwnProperty.call(se,"overwrite")||se.hidden)return;if(se.type==="table")return A(ae,se.schema,G);if(se.fields)return ce&&se.type==="record"?(G[ae]={type:"object",model:$e,schema:{fields:Object.values(A(ae,se,{},!0))}},G):A(ae,se,G);if(G[ae]={id:ae,model:$e},G[ae].type=se.type==="boolean"?"checkbox":"input",G[ae].required=se.required,G[ae].referenceable=se.referenceable,ae.startsWith("config-"))if(!ce&&se.type==="array"&&(T.value=ae),ce&&T.value&&ae.startsWith(T.value)){const he=ae.slice(T.value.length+1);G[ae].label=he.split("-").map(f).join(".")}else G[ae].label=f(ae);if((H==="config"||H.startsWith("config-"))&&(an=Z[$e])!=null&&an.description&&(G[ae].help=So.marked.parse(Z[$e].description,{mangle:!1,headerIds:!1})),se.type==="map"){if(G[ae].type="object-advanced",G[ae].values=se.values,se.values.type==="array"){const{type:he}=se.values.elements||{};G[ae].schema={fields:[{schema:{fields:[{...Ke,model:ae,valueArrayType:he==="integer"?"number":he||"string",inputAttributes:{...Ke.inputAttributes,type:he==="integer"?"number":"text",inputMode:he==="integer"?"numeric":"text"}}]}}]}}else se.values.fields&&(G[ae].schema={fields:[{type:"object",model:"object",schema:{fields:se.values.fields.map(he=>{const Ae=Object.keys(he)[0];return{model:Ae,type:"input",label:m(Ae),placeholder:Ae,inputType:he[Ae].type}})}}]});return G}if(se.enum&&se.type==="array"&&(G[ae].type="checklist",G[ae].values=se.enum,G[ae].multi=!0,G[ae].multiSelect=!0),se.one_of&&se.type!=="array"&&(G[ae].type="select",G[ae].values=se.one_of,G[ae].selectOptions={noneSelectedText:s("plugins.form.no_selection")}),se.elements&&se.type==="array"){const he=se.elements;if(G[ae].referenceable=he.referenceable,G[ae].elements=he,["string","integer","number"].includes(he.type)&&!he.one_of){const{id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe}=G[ae],{inputAttributes:Qe,...ln}=JSON.parse(JSON.stringify(Ke));Qe.type=he.type==="string"?"text":"number",G[ae]={id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe,inputAttributes:Qe,...ln}}else if(["string","integer","number"].includes(he.type)&&he.one_of){if(ce){const{id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe}=G[ae];G[ae]={id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe,...ry(he.one_of,se.default)}}}else if(he.type==="array"){const{id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe,elements:Qe}=G[ae],{inputAttributes:ln,...nt}=JSON.parse(JSON.stringify(Ke));G[ae]={id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe,elements:Qe,inputAttributes:ln,...nt}}}if(se.hint&&(G[ae].hint=se.hint),de&&!de.overwriteDefault&&Object.keys(de).forEach(he=>{if(he===ae){const{help:Ae,label:Be,hint:Ne,values:Re,referenceable:Ve,elements:Ue}=G[ae],{help:Fe,...Qe}=de[he];G[ae]={help:Ae,label:Be,hint:Ne,values:Re,referenceable:Ve,elements:Ue,...Qe},typeof Fe=="string"&&(G[ae].help=So.marked.parse(Fe,{mangle:!1,headerIds:!1}))}}),se.type==="array"&&((dt=se.elements)==null?void 0:dt.type)==="record"&&Array.isArray(se.elements.fields)){let he={};for(const Be of se.elements.fields)he={...he,...Be};const Ae=(be=(Ee=(ne=G[ae])==null?void 0:ne.items)==null?void 0:Ee.schema)==null?void 0:be.fields;if(Array.isArray(Ae))for(const Be of G[ae].items.schema.fields){const Ne=(ke=he[Be.model])==null?void 0:ke.description;Be.help===void 0&&typeof Ne=="string"&&(Be.help=So.marked.parse(Ne,{mangle:!1,headerIds:!1}))}if(Ae||(G[ae].type="array",G[ae].newElementButtonLabelClasses="kong-form-new-element-button-label",G[ae].fieldClasses="array-card-container-wrapper",G[ae].itemContainerComponent="FieldArrayCardContainer",G[ae].items={type:"object",schema:{fields:Object.values(A(ae,se.elements,{},!0))}},G[ae].items.schema.fields.forEach(Be=>{var Ne,Re;for(const Ve of se.elements.fields){const Ue=Object.keys(Ve)[0],Fe=((Re=(Ne=Be.id)==null?void 0:Ne.split)==null?void 0:Re.call(Ne,"-"))??[];if(Fe[Fe.length-1]===Ue){Be.model=Ue,Be.label=f(Ue);break}}}),se.elements.type==="record"&&(G[ae].nestedFields=!0)),!G[ae].nestedFields)G[ae].items.default=()=>se.elements.fields.reduce((Be,Ne)=>{const Re=Object.keys(Ne)[0];return Be[Re]=Ne[Re].default,Be},{});else{const Be=(Ne,Re)=>{if(Ne.type==="object"){Ne.model&&(Re[Ne.model]={});for(const Ve of Ne.schema.fields)Be(Ve,Ne.model?Re[Ne.model]:Re)}else Ne.model&&(Re[Ne.model]=Ne.default)};G[ae].items.default=()=>{const Ne={};return Be(G[ae].items,Ne),Ne}}}if(_.value&&Ie){for(let he=0;he<Ie.length;he++)if(Ie[he][ae]){G[ae]={...G[ae],...Ie[he][ae]};break}}if(se.required&&se.type!=="boolean"&&(G[ae].required=!0,G[ae].selectOptions={hideNoneSelectedText:!0}),se.required&&se.type==="boolean"&&(G[ae].default=se.default??!1),se.default!=null&&typeof se.default!="object"&&se.default!=="function"&&(G[ae].default=se.default),G[ae].type==="input"){["string","number"].includes(typeof G[ae].default)&&r.config.app==="konnect"&&(G[ae].placeholder=`Default: ${G[ae].default===""?"<empty string>":G[ae].default}`);const{type:he}=se.elements||{};he&&(G[ae].valueArrayType=he==="integer"?"number":he),G[ae].inputType=se.type==="array"||se.type==="string"?se.encrypted?"password":"text":se.type}let st="string";se.enum?st=R(se.enum):se.type==="boolean"?st="boolean":se.type==="number"||se.type==="integer"?(st="number",G[ae].inputType="number"):se.type==="array"?(st="array",G[ae].default=se.default,se.len_min>0&&(G[ae].submitWhenNull=!0)):se.type==="foreign"?st="object":se.default&&Array.isArray(se.default)?(st="array",G[ae].valueArrayType=R(se.default)):se.default&&(st=typeof se.default),G[ae].valueType=st,se.fieldNameHasDashes&&(G[ae].fieldNameHasDashes=!0)}),G},K=()=>{var ae,st,gn,an,dt,ne,Ee,be,ke,he,Ae,Be;const H=((ae=Pt[r.pluginType])==null?void 0:ae.scope.includes(Y.PluginScope.SERVICE))??!0,J=((st=Pt[r.pluginType])==null?void 0:st.scope.includes(Y.PluginScope.ROUTE))??!0,G=((gn=Pt[r.pluginType])==null?void 0:gn.scope.includes(Y.PluginScope.CONSUMER))??!0,ce=r.config.disableConsumerGroupScope?!1:((an=Pt[r.pluginType])==null?void 0:an.scope.includes(Y.PluginScope.CONSUMER_GROUP))??!0,Z=r.config.entityType==="consumers"&&!!r.config.entityId||!!((ne=(dt=w.value)==null?void 0:dt.consumer)!=null&&ne.id),de=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((be=(Ee=w.value)==null?void 0:Ee.consumer_group)!=null&&be.id),Ie=r.config.entityType==="services"&&!!r.config.entityId||!!((he=(ke=w.value)==null?void 0:ke.service)!=null&&he.id),ge=r.config.entityType==="routes"&&!!r.config.entityId||!!((Be=(Ae=w.value)==null?void 0:Ae.route)!=null&&Be.id),Pe=[],$e=(Ne,Re,Ve)=>Ne?s("plugins.form.disable_source_scope_change",{scope:Ve}):Re?s("plugins.form.disable_data_retrieving",{scope:Ve}):"",se=Ne=>{var Re,Ve;return((Ve=(Re=r.scopedEntitiesPermissions)==null?void 0:Re[Ne])==null?void 0:Ve.canRetrieve)===!1};if(H){const Ne=se("service"),Re="services",Ve=Ie&&r.disableScopeSelection;Pe.push({id:"service-id",model:"service-id",label:s("plugins.form.scoping.gateway_service.label"),placeholder:s("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Re,inputValues:{fields:["name","id"]},help:s("plugins.form.scoping.gateway_service.help"),disabled:Ve||Ne,disabledTooltip:$e(Ve,Ne,Re)})}if(J){const Ne=se("route"),Re="routes",Ve=ge&&r.disableScopeSelection;Pe.push({id:"route-id",model:"route-id",label:s("plugins.form.scoping.route.label"),placeholder:s("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Re,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:s("plugins.form.scoping.route.help"),disabled:Ve||Ne,disabledTooltip:$e(Ve,Ne,Re)})}if(G){const Ne=se("consumer"),Re="consumers",Ve=Z&&r.disableScopeSelection;Pe.push({model:"consumer-id",label:s("plugins.form.scoping.consumer.label"),placeholder:s("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Re,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:s("plugins.form.scoping.consumer.help"),disabled:Ve||Ne,disabledTooltip:$e(Ve,Ne,Re)})}if(ce){const Ne=se("consumer_group"),Re="consumer_groups",Ve=de&&r.disableScopeSelection;Pe.push({model:"consumer_group-id",label:s("plugins.form.scoping.consumer_group.label"),placeholder:s("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Re,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:s("plugins.form.scoping.consumer_group.help"),disabled:Ve||Ne,disabledTooltip:$e(Ve,Ne,Re)})}if(Pe.length){const Ne=[...H?["service"]:[],...J?["route"]:[],...G?["consumer"]:[],...ce?["consumer_group"]:[]],Ve=Ne.splice(Ne.length-2,2).map(Fe=>s(Fe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Fe}.plural`)).join(`${Ne.length>0?",":""} and/or `),Ue=["Specific",[...Ne.length>0?[Ne.map(Fe=>s(Fe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Fe}.plural`)).join(", ")]:[],Ve].join(", ")].join(" ");L.selectionGroup.fields.push({label:s("plugins.form.scoping.label"),description:Ue,fields:[]}),L.selectionGroup.fields[1].fields=Pe}c[r.pluginType]&&c[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(c[r.pluginType],"formSchema")&&Object.assign(L,c[r.pluginType].formSchema)},z=e.computed(()=>!g(P.fields,S,!0)),$=e.computed(()=>!fe.value&&!I.value&&(h.value===le.EntityBaseFormType.Create||z.value)),N=e.ref(!1),B=e.ref(),j=H=>{r.credential&&H.password&&(H.password=""),P.fields.id=(H==null?void 0:H.id)||void 0,B.value=H==null?void 0:H.ordering,Object.assign(S,P.fields),w.value=H,N.value=!0},W=e.ref({}),X=H=>{var J;P.fields=H.model,P.fields.id=((J=w.value)==null?void 0:J.id)||void 0,Object.assign(S,H.originalModel),W.value=H.data,r.isWizardStep&&i("model-updated",{model:P.fields,data:H.data,resourceEndpoint:V.value})},ee=e.ref(new Map),oe=e.computed(()=>[P.clientErrorMessage,P.serverErrorMessage].filter(Boolean).join("; ")),Q=H=>{H.valid?ee.value.delete(H.model):ee.value.set(H.model,H.error),P.clientErrorMessage=[...ee.value.entries()].map(([J,G])=>`${J}: ${typeof G=="string"?G:p(G)}`).join("; "),P.clientErrorMessage&&(P.serverErrorMessage="")};e.watch([q,N],(H,J)=>{const G=H[0]!==J[0],ce=H[1],Z=J[1];if(!_.value&&h.value===le.EntityBaseFormType.Edit&&(G||ce&&ce!==Z)){const de=A("config",x.value,L);re.value&&(de._isCustomPlugin=!0),O.value&&(de._supported_redis_partial_type=O.value),k.value=de}},{deep:!0});const te=()=>{r.config.cancelRoute?l.push(r.config.cancelRoute):i("cancel")},ie=e.computed(()=>{const H=r.config.entityType&&r.config.entityId&&!r.developer,J=_.value?Je.form[r.config.app].credential[h.value]:Je.form[r.config.app][h.value][H?"forEntity":"all"];let G=`${r.config.apiBaseUrl}${J}`;return r.config.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),G=G.replace(/{resourceEndpoint}/gi,V.value),G=G.replace(/{id}/gi,r.pluginId),G=G.replace(/{entityType}/gi,r.config.entityType||""),G=G.replace(/{entityId}/gi,r.config.entityId||""),G}),re=e.computed(()=>!Object.keys(Pt).includes(r.pluginType)),Ce=e.computed(()=>{const H=W.value;if(_.value){for(const J in Y.PluginScope){const G=Y.PluginScope[J];H[G]&&!H[G].id&&(H[G]={id:r.config.entityId})}delete H.created_at}return W.value.partials&&v.value&&Bl(H,v.value),H}),pe=e.computed(()=>{const{__ui_data:H,...J}={...Ce.value};return J}),Me=async()=>{if(!P.clientErrorMessage&&!r.isWizardStep)try{P.isReadonly=!0;let H;const J=JSON.parse(JSON.stringify(Ce.value)),G=c[r.pluginType];typeof(G==null?void 0:G.shamefullyTransformPayload)=="function"&&G.shamefullyTransformPayload({originalModel:S,model:P.fields,payload:J,schema:k.value}),h.value==="create"?H=await y.post(ie.value,J):h.value==="edit"&&(H=r.config.app==="konnect"||O.value&&J.partials?await y.put(ie.value,Object.assign({ordering:B.value},J)):await y.patch(ie.value,J)),Object.assign(S,P.fields),i("update",H==null?void 0:H.data)}catch(H){P.serverErrorMessage=p(H),i("error",H)}finally{P.isReadonly=!1}},ue=e.computed(()=>{var ce;const H=_.value?(ce=Rn[r.pluginType])==null?void 0:ce.schemaEndpoint:r.pluginType,J=_.value?Je.form[r.config.app].credentialSchema:Je.form[r.config.app].pluginSchema;let G=`${r.config.apiBaseUrl}${J}`;return r.config.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),G=G.replace(/{plugin}/gi,H),G}),ye=e.ref(""),fe=e.ref(!1),Se=e.ref("");return e.onBeforeMount(async()=>{var H,J,G,ce;fe.value=!0;try{if(_.value&&r.config.app==="konnect"){const Z=(H=Rn[r.pluginType])==null?void 0:H.schemaEndpoint,de=$d[Z];ye.value=Z,k.value=A("",de,{}),fe.value=!1}else{const Z=r.schema??(await y.get(ue.value)).data;if(E.value=Z,Z)if(_.value)k.value=A("",Z,{}),fe.value=!1;else{const de=Z.fields.find(ge=>ge.config);x.value=de?de.config:Z,Z.supported_partials&&(O.value=Object.keys(Z.supported_partials).find(ge=>[Io.REDIS_CE,Io.REDIS_EE].includes(ge)),v.value=(J=Z.supported_partials[O.value])==null?void 0:J[0]),K();const Ie=(G=Z.fields.find(ge=>ge.protocols))==null?void 0:G.protocols;if(Ie){const{default:ge=[],elements:Pe={}}=Ie;L.protocols.default=ge,L.protocols.placeholder=r.config.app==="konnect"?s("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:ge.join(", ")}):s("plugins.form.fields.protocols.placeholder"),(ce=Pe.one_of)!=null&&ce.length&&(L.protocols.values=Pe.one_of.map($e=>({label:$e,value:$e})))}if(N.value||h.value===le.EntityBaseFormType.Create){const ge=A("config",x.value,L);O.value&&(ge._supported_redis_partial_type=O.value),re.value&&(ge._isCustomPlugin=!0),k.value=ge}}}}catch(Z){console.error(Z),Se.value=p(Z),i("error:fetch-schema",Z)}finally{fe.value=!1}}),(H,J)=>{const G=e.resolveComponent("KSkeleton"),ce=e.resolveComponent("KEmptyState"),Z=e.resolveComponent("KButton"),de=e.resolveComponent("KTabs"),Ie=e.resolveComponent("KSlideout");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["kong-ui-entities-plugin-form-container",{"new-form-layout":e.unref(o)}])},[fe.value?(e.openBlock(),e.createBlock(G,{key:0,type:"form"})):Se.value?(e.openBlock(),e.createBlock(ce,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(e.unref(s)("errors.load_schema")),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(le.EntityBaseForm),{key:2,"can-submit":$.value,config:t.config,"edit-id":t.pluginId,"entity-type":e.unref(le.SupportedEntityType).Plugin,"error-message":oe.value,"fetch-url":D.value,"form-fields":Ce.value,"is-readonly":P.isReadonly,"no-validate":"","wrapper-component":t.noCardWrapper?"div":void 0,onCancel:te,"onFetch:error":J[4]||(J[4]=ge=>H.$emit("error",ge)),"onFetch:success":j,onLoading:J[5]||(J[5]=ge=>H.$emit("loading",ge))},{"form-actions":e.withCtx(()=>[t.isWizardStep?(e.openBlock(),e.createElementBlock("div",e1)):(e.openBlock(),e.createBlock(Qx,{key:1,"teleport-target":t.actionsTeleportTarget},{default:e.withCtx(()=>[e.createElementVNode("div",t1,[t.hideViewConfigAction?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Z,{key:0,appearance:"tertiary","data-testid":`plugin-${b.value?"edit":"create"}-form-view-configuration`,onClick:J[3]||(J[3]=ge=>U())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),e.createVNode(Z,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${b.value?"edit":"create"}-form-cancel`,disabled:P.isReadonly,onClick:te},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),e.createVNode(Z,{appearance:"primary","data-testid":`plugin-${b.value?"edit":"create"}-form-submit`,disabled:!$.value||P.isReadonly,type:"submit",onClick:Me},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:e.withCtx(()=>[e.createElementVNode("form",{hidden:"",onSubmit:Me},null,32),e.createVNode(Xx,{config:t.config,credential:_.value,editing:h.value===e.unref(le.EntityBaseFormType).Edit,"enable-redis-partial":t.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:t.engine,"entity-map":q.value,"raw-schema":E.value,record:w.value,schema:k.value,onGlobalAction:J[0]||(J[0]=(ge,Pe)=>H.$emit("globalAction",ge,Pe)),onLoading:J[1]||(J[1]=ge=>I.value=ge),onModelUpdated:X,onShowNewPartialModal:J[2]||(J[2]=ge=>H.$emit("showNewPartialModal",ge)),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"])),e.createVNode(Ie,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:e.unref(s)("view_configuration.title"),visible:C.value,onClose:U},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(s)("view_configuration.message")),1),e.createVNode(de,{"data-testid":"form-view-configuration-slideout-tabs",tabs:F.value},{json:e.withCtx(()=>[e.createVNode(e.unref(le.JsonCodeBlock),{config:t.config,"entity-record":pe.value,"fetcher-url":ie.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:e.withCtx(()=>[e.createVNode(e.unref(le.YamlCodeBlock),{"entity-record":pe.value},null,8,["entity-record"])]),terraform:e.withCtx(()=>[e.createVNode(e.unref(le.TerraformCodeBlock),{"credential-type":ye.value,"entity-record":pe.value,"entity-type":e.unref(le.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:e.withCtx(()=>[e.createVNode(e.unref(le.DeckCodeBlock),{app:t.config.app,"control-plane-name":t.config.app==="konnect"?t.config.controlPlaneName:void 0,"entity-record":pe.value,"entity-type":e.unref(le.SupportedEntityType).Plugin,"geo-api-server-url":t.config.app==="konnect"?t.config.geoApiServerUrl:void 0,"kong-admin-api-url":t.config.app==="kongManager"?t.config.apiBaseUrl:void 0,workspace:t.config.app==="kongManager"?t.config.workspace:void 0},null,8,["app","control-plane-name","entity-record","entity-type","geo-api-server-url","kong-admin-api-url","workspace"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])],2)}}}),[["__scopeId","data-v-fb4ca935"]]),o1={class:"kong-ui-entities-plugins-list"},r1={class:"button-row"},a1={class:"name-cell-wrapper"},i1={class:"info-wrapper"},l1={key:0,class:"info-name"},s1={key:1,class:"info-name"},c1={key:2,class:"info-type"},d1={key:1},u1=_e(e.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.createRoute||!t.getViewRoute||!t.getEditRoute||!t.getConfigureDynamicOrderingRoute||t.app==="kongManager"&&!t.isExactMatch&&!t.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(t,{emit:n}){var pe,Me;const o=je.usePluginMetaData(),a=n,i=t,{i18n:{t:r}}=je.useI18n(),l=hn.useRouter(),{axiosInstance:s}=le.useAxios((pe=i.config)==null?void 0:pe.axiosRequestConfig),{hasRecords:c,handleStateChange:u}=le.useTableState(()=>E.value),f=e.computed(()=>c.value&&i.config.app==="konnect"),d=e.computed(()=>!!i.config.entityId),p=e.computed(()=>{var ue;return((ue=i.config)==null?void 0:ue.entityType)==="consumers"}),m=e.computed(()=>{var ue;return((ue=i.config)==null?void 0:ue.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||le.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),y=e.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),C={name:{label:r("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(Me=i.config)!=null&&Me.entityId||(C.appliedTo={label:r("plugins.list.table_headers.applied_to"),sortable:!1}),C.enabled={label:r("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(C.ordering={label:r("plugins.list.table_headers.ordering"),sortable:!0}),C.tags={label:r("plugins.list.table_headers.tags"),sortable:!1};const b=C,h=e.computed(()=>{var ye,fe,Se,we;let ue=i.config.entityType?`${i.config.apiBaseUrl}${Je.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Je.list[i.config.app].all}`;return i.config.app==="konnect"?ue=ue.replace(/{controlPlaneId}/gi,((ye=i.config)==null?void 0:ye.controlPlaneId)||""):i.config.app==="kongManager"&&(ue=ue.replace(/\/{workspace}/gi,(fe=i.config)!=null&&fe.workspace?`/${i.config.workspace}`:"")),ue.replace(/{entityType}/gi,((Se=i.config)==null?void 0:Se.entityType)||"").replace(/{entityId}/gi,((we=i.config)==null?void 0:we.entityId)||"")}),E=e.ref(""),k=e.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:C.name,id:{label:r("plugins.list.table_headers.id"),sortable:!0}},placeholder:r(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...C.enabled,label:r("search.filter.field.enabled")},name:C.name,instance_name:{label:r("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:_,fetcherState:w,fetcherCacheKey:x}=le.useFetcher(e.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),h),O=()=>{E.value=""},v=()=>{x.value++},I=e.ref(null),S=ue=>{var fe,Se,we,H;const ye=[];return((fe=ue.route)!=null&&fe.id||ue.route_id)&&ye.push({type:"route",badgeText:r("plugins.list.table_headers.applied_to_badges.route")}),((Se=ue.service)!=null&&Se.id||ue.service_id)&&ye.push({type:"service",badgeText:r("plugins.list.table_headers.applied_to_badges.service")}),((we=ue.consumer)!=null&&we.id||ue.consumer_id)&&ye.push({type:"consumer",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer")}),((H=ue.consumer_group)!=null&&H.id||ue.consumer_group_id)&&ye.push({type:"consumer_group",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer_group")}),ye.length?ye:[{type:null,badgeText:r("plugins.list.table_headers.applied_to_badges.global")}]},P=async(ue,ye)=>{var fe;return ue===null?!1:await((fe=i.canRetrieveScopedEntity)==null?void 0:fe.call(i,ue,ye.id))},F=(ue,ye)=>{var Se,we,H,J,G;let fe=null;switch(ue){case"route":fe=(Se=ye.route)==null?void 0:Se.id;break;case"service":fe=(we=ye.service)==null?void 0:we.id;break;case"consumer":fe=(H=ye.consumer)==null?void 0:H.id;break;case"consumer_group":fe=(J=ye.consumer_group)==null?void 0:J.id;break}fe&&((G=i.config)!=null&&G.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(ue,fe))},T=e.ref(!1),D=e.ref(null),U=e.computed(()=>{const ue={action:"disable",id:"",name:""};if(D.value){const{enabled:ye,id:fe,name:Se}=D.value;ue.action=ye?"disable":"enable",ue.id=fe,ue.name=o.getDisplayName(Se)||fe}return ue}),q=ue=>{T.value=!0,D.value=ue},L=()=>{T.value=!1,D.value=null},V=async()=>{var Se,we,H,J,G,ce,Z,de;if(!await((Se=i.canEdit)==null?void 0:Se.call(i,D.value))||!D.value)return;let ye=`${i.config.apiBaseUrl}${(G=Je.item[i.config.app])==null?void 0:G[(we=i.config)!=null&&we.entityType?"forEntity":"all"].replace(/{entityType}/gi,((H=i.config)==null?void 0:H.entityType)||"").replace(/{entityId}/gi,((J=i.config)==null?void 0:J.entityId)||"")}`.replace(/{id}/gi,D.value.id||"");i.config.app==="konnect"?ye=ye.replace(/{controlPlaneId}/gi,((ce=i.config)==null?void 0:ce.controlPlaneId)||""):i.config.app==="kongManager"&&(ye=ye.replace(/\/{workspace}/gi,(Z=i.config)!=null&&Z.workspace?`/${i.config.workspace}`:""));const fe=!D.value.enabled;try{const Ie=(de=i.config)==null?void 0:de.app;let ge;E.value&&Ie==="konnect"&&(ge=await s.get(ye));const{data:Pe}=Ie==="konnect"?await s.put(ye,{...(ge==null?void 0:ge.data)||D.value,enabled:fe},{timeout:12e4}):await s.patch(ye,{...D.value,enabled:fe},{timeout:12e4});a("toggle-enabled",fe,Pe),D.value.enabled=fe}catch(Ie){a("error",Ie)}},R=async(ue,ye)=>{const fe=ue.id;if(!await ye(fe)){a("copy:error",{entity:ue,field:"id",message:r("errors.copy")});return}a("copy:success",{entity:ue,field:"id",message:r("copy.success",{val:fe})})},A=async(ue,ye)=>{const fe=JSON.stringify(ue);if(!await ye(fe)){a("copy:error",{entity:ue,message:r("errors.copy")});return}a("copy:success",{entity:ue,message:r("copy.success_brief")})},K=async ue=>{var fe;await((fe=i.canRetrieve)==null?void 0:fe.call(i,ue))&&l.push(i.config.getViewRoute(ue))},z=ue=>({label:r("actions.view"),to:i.config.getViewRoute(ue)}),$=ue=>({label:r("actions.edit"),to:i.config.getEditRoute(ue)}),N=ue=>({label:r("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(ue)}),B=e.ref(void 0),j=e.ref(!1),W=e.ref(!1),X=e.ref(""),ee=le.useDeleteUrlBuilder(i.config,h.value),oe=ue=>{B.value=ue,j.value=!0},Q=()=>{j.value=!1},te=async()=>{var ue,ye,fe;if((ue=B.value)!=null&&ue.id){W.value=!0;try{await s.delete(ee(B.value.id)),W.value=!1,j.value=!1,x.value++,a("delete:success",B.value)}catch(Se){X.value=((fe=(ye=Se.response)==null?void 0:ye.data)==null?void 0:fe.message)||Se.message||r("errors.delete"),a("error",Se)}finally{W.value=!1}}},ie=()=>{l.push(i.config.createRoute)};e.watch(w,ue=>{var ye,fe,Se;if(ue.status===le.FetcherStatus.Error){I.value={title:r("errors.general")},(Se=(fe=(ye=ue.error)==null?void 0:ye.response)==null?void 0:fe.data)!=null&&Se.message&&(I.value.message=ue.error.response.data.message),a("error",ue.error);return}I.value=null});const re=e.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${r("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:r("plugins.title")}),Ce=e.ref(!1);return e.onBeforeMount(async()=>{Ce.value=await i.canCreate(),Ce.value&&(re.value.title=r("plugins.list.empty_state.title"),re.value.ctaText=r("actions.create"))}),(ue,ye)=>{const fe=e.resolveComponent("KButton"),Se=e.resolveComponent("KEmptyState"),we=e.resolveComponent("KBadge"),H=e.resolveComponent("KTruncate"),J=e.resolveComponent("KInputSwitch"),G=e.resolveComponent("KDropdownItem"),ce=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",o1,[e.createVNode(e.unref(le.EntityBaseTable),{"cache-identifier":t.cacheIdentifier,"disable-sorting":y.value,"empty-state-options":re.value,"enable-entity-actions":"","error-message":I.value,fetcher:e.unref(_),"fetcher-cache-key":e.unref(x),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:E.value,"table-headers":e.unref(b),title:t.title,"title-tag":t.titleTag,onClearSearchInput:O,"onClick:row":ye[4]||(ye[4]=Z=>K(Z)),onSort:v,onState:e.unref(u)},e.createSlots({"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(le.EntityFilter),{modelValue:E.value,"onUpdate:modelValue":ye[0]||(ye[0]=Z=>E.value=Z),config:k.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!t.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createElementVNode("div",r1,[!d.value&&f.value?(e.openBlock(),e.createBlock(fe,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ye[1]||(ye[1]=Z=>ue.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(me.BookIcon),{decorative:""})]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(fe,{appearance:"primary","data-testid":"toolbar-add-plugin",size:t.useActionOutside?"medium":"large",to:t.config.createRoute},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:e.withCtx(({row:Z})=>[e.createElementVNode("div",a1,[e.createVNode(e.unref(yn.PluginIcon),{class:"plugin-icon",name:Z.name,size:24},null,8,["name"]),e.createElementVNode("div",i1,[Z.instance_name?(e.openBlock(),e.createElementBlock("span",l1,e.toDisplayString(Z.instance_name),1)):(e.openBlock(),e.createElementBlock("span",s1,e.toDisplayString(e.unref(o).getDisplayName(Z.name)),1)),Z.instance_name?(e.openBlock(),e.createElementBlock("span",c1,e.toDisplayString(e.unref(o).getDisplayName(Z.name)),1)):e.createCommentVNode("",!0)])])]),appliedTo:e.withCtx(({row:Z})=>[S(Z).length>0?(e.openBlock(),e.createBlock(H,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S(Z),de=>(e.openBlock(),e.createBlock(e.unref(le.PermissionsWrapper),{key:de.badgeText,"auth-function":()=>P(de.type,Z),"force-show":""},{default:e.withCtx(({isAllowed:Ie})=>[e.createVNode(we,{class:e.normalizeClass(Ie||"disabled"),onClick:e.withModifiers(ge=>Ie&&de.type&&F(de.type,Z),["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(de.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",d1,"-"))]),enabled:e.withCtx(({row:Z})=>[e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":async()=>!!(await t.canEdit(Z)&&await t.canToggle(Z)),"force-show":""},{default:e.withCtx(({isAllowed:de})=>{var Ie,ge;return[e.createElementVNode("div",{onClick:ye[3]||(ye[3]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(J,{disabled:!de,"disabled-tooltip-text":!de&&((ge=(Ie=t.config).getToggleDisabledTooltip)==null?void 0:ge.call(Ie,Z))||void 0,"model-value":Z.enabled,onClick:e.withModifiers(Pe=>de&&q(Z),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:e.withCtx(({rowValue:Z})=>[e.createVNode(we,{appearance:e.unref(Il)(Z)?"info":"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(Il)(Z)?e.unref(r)("plugins.list.table_headers.ordering_badge.static"):e.unref(r)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:e.withCtx(({rowValue:Z})=>[e.createVNode(e.unref(le.TableTags),{tags:Z},null,8,["tags"])]),actions:e.withCtx(({row:Z})=>[e.createVNode(ce,null,{default:e.withCtx(({copyToClipboard:de})=>[e.createVNode(G,{"data-testid":"action-entity-copy-id",onClick:Ie=>R(Z,de)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),e.createVNode(ce,null,{default:e.withCtx(({copyToClipboard:de})=>[e.createVNode(G,{"data-testid":"action-entity-copy-json",onClick:Ie=>A(Z,de)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":()=>t.canRetrieve(Z)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-view","has-divider":"",item:z(Z)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":()=>t.canEdit(Z)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-edit",item:$(Z)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&e.unref(g)?(e.openBlock(),e.createBlock(e.unref(le.PermissionsWrapper),{key:0,"auth-function":()=>t.canConfigureDynamicOrdering(Z)},{default:e.withCtx(()=>[N(Z)?(e.openBlock(),e.createBlock(G,{key:0,"data-testid":"action-entity-config-dyn-order",item:N(Z)},null,8,["item"])):e.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):e.createCommentVNode("",!0),e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":()=>t.canDelete(Z)},{default:e.withCtx(()=>[e.createVNode(G,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:de=>oe(Z)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!E.value&&t.config.app==="konnect"?{name:"empty-state",fn:e.withCtx(()=>{var Z;return[e.createVNode(Se,{"data-testid":t.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:e.unref(r)("plugins.list.empty_state_v2.description"),title:e.unref(r)("plugins.list.empty_state_v2.title")},e.createSlots({icon:e.withCtx(()=>[e.createVNode(e.unref(me.PlugIcon),{decorative:""})]),action:e.withCtx(()=>[Ce.value?(e.openBlock(),e.createBlock(fe,{key:0,"data-testid":"entity-create-button",onClick:ie},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon),{decorative:""}),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(fe,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ye[2]||(ye[2]=de=>ue.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(me.BookIcon),{decorative:""}),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(Z=t.config)!=null&&Z.isControlPlaneGroup?{name:"default",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("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"]),e.createVNode(e.unref(le.EntityToggleModal),{action:U.value.action,"entity-id":U.value.id,"entity-name":U.value.name,"entity-type":e.unref(r)("glossary.plugin"),"on-confirm":V,visible:T.value,onCancel:L,onProceed:L},null,8,["action","entity-id","entity-name","entity-type","visible"]),e.createVNode(e.unref(le.EntityDeleteModal),{"action-pending":W.value,description:e.unref(r)("delete.description"),"entity-name":B.value&&(B.value.instance_name||B.value.name||B.value.id),"entity-type":e.unref(le.EntityTypes).Plugin,error:X.value,title:e.unref(r)("delete.title"),visible:j.value,onCancel:Q,onProceed:te},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-25799614"]]),p1={class:"plugin-select-card-wrapper"},f1=["data-testid"],m1={class:"plugin-card-header"},g1={class:"plugin-card-title"},h1={key:0,class:"plugin-card-actions"},y1=["data-testid","title"],_1={key:0,class:"plugin-card-text"},b1={key:0},k1=["title"],Za=_e(e.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){const o=n,a=t,i=hn.useRouter(),{i18n:{t:r}}=je.useI18n(),l=e.computed(()=>a.config.app==="konnect"?a.config.controlPlaneId:""),s=e.computed(()=>!!(!a.plugin.available||a.plugin.disabledMessage)),c=e.computed(()=>!!(m.value&&!p.value&&a.navigateOnClick&&l.value&&(a.canDeleteCustomPlugin||a.canEditCustomPlugin))),u=()=>{i.push(a.config.getCreateRoute(a.plugin.id))},f=()=>{a.navigateOnClick?u():d()},d=()=>{o("plugin-clicked",a.plugin)},p=e.computed(()=>a.plugin.id==="custom-plugin-create"),m=e.computed(()=>a.config.app==="konnect"&&a.plugin.group===Y.PluginGroup.CUSTOM_PLUGINS),g=()=>{a.config.app==="konnect"&&o("custom-plugin-delete")},y=(b,h)=>{const E=a.config;a.config.app==="konnect"&&typeof E.getCustomEditRoute=="function"&&E.getCustomEditRoute&&i.push(E.getCustomEditRoute(b,h))},C=()=>{if(!s.value&&a.config.app==="konnect"){const b=a.config;p.value&&b.createCustomRoute?i.push(b.createCustomRoute):m.value&&u()}};return(b,h)=>{const E=e.resolveComponent("KButton"),k=e.resolveComponent("KDropdownItem"),_=e.resolveComponent("KDropdownMenu"),w=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",p1,[e.createVNode(w,{text:t.plugin.disabledMessage},{default:e.withCtx(()=>[e.createElementVNode("a",{class:e.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${t.plugin.id}-card`,role:"button",onClick:h[1]||(h[1]=x=>s.value||m.value?void 0:f())},[e.createElementVNode("div",m1,[e.createElementVNode("div",g1,[e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!m.value})},e.toDisplayString(t.plugin.name),3)]),c.value?(e.openBlock(),e.createElementBlock("div",h1,[e.createVNode(_,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:e.withCtx(()=>[e.createVNode(E,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{size:e.unref(uo)},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[t.canDeleteCustomPlugin?(e.openBlock(),e.createBlock(k,{key:0,"data-testid":"edit-plugin-schema",onClick:h[0]||(h[0]=e.withModifiers(x=>y(t.plugin.name,t.plugin.customPluginType),["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.edit")),1)]),_:1})):e.createCommentVNode("",!0),t.canDeleteCustomPlugin?(e.openBlock(),e.createBlock(k,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:e.withModifiers(g,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:1})):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":t.plugin.name,title:t.plugin.available?t.plugin.name:e.unref(r)("plugins.select.unavailable_tooltip"),onClick:C},[e.createVNode(e.unref(yn.PluginIcon),{alt:t.plugin.name,class:"plugin-card-icon",name:t.plugin.id,size:55},null,8,["alt","name"]),t.plugin.description||m.value&&!p.value?(e.openBlock(),e.createElementBlock("div",_1,[m.value&&!p.value?(e.openBlock(),e.createElementBlock("p",b1,e.toDisplayString(e.unref(r)("plugins.select.custom_badge_text")),1)):e.createCommentVNode("",!0),t.plugin.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:"plugin-card-text",title:t.plugin.description},e.toDisplayString(t.plugin.description),9,k1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],10,y1),e.createElementVNode("div",{class:"plugin-card-footer",onClick:C},e.toDisplayString(p.value?e.unref(r)("actions.create_custom"):t.plugin.exists?e.unref(r)("actions.enabled"):e.unref(r)("actions.enable")),1)],10,f1)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-65d53934"]]),Qa=_e(e.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(t,{emit:n}){var g;const o=t,a=n,{i18nT:i,i18n:{t:r}}=je.useI18n(),{getMessageFromError:l}=le.useErrors(),{axiosInstance:s}=le.useAxios((g=o.config)==null?void 0:g.axiosRequestConfig),c=e.computed(()=>{var y;return d.value?r("delete.plugin_schema_in_use_title"):r("delete.title",{name:((y=o.plugin)==null?void 0:y.name)||r("delete.custom_plugin")})}),u=e.ref(!1),f=e.ref(""),d=e.ref(!1),p=e.computed(()=>{if(o.config.app==="konnect"){const y=o.plugin.customPluginType==="streaming"?Je.select[o.config.app].streamingCustomPluginItem:Je.select[o.config.app].schemaCustomPluginItem;let C=`${o.config.apiBaseUrl}${y}`;return C=C.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),C=C.replace(/{pluginId}/gi,o.plugin.id),C}return null}),m=async()=>{var y,C,b,h;if(u.value=!0,f.value="",!(!((y=o.plugin)!=null&&y.name)||((C=o.config)==null?void 0:C.app)!=="konnect"))try{p.value&&await s.delete(p.value),a("proceed")}catch(E){const{response:k}=E;(k==null?void 0:k.status)===400&&((h=(b=k.data)==null?void 0:b.message)!=null&&h.includes("plugin schema is currently in use"))?d.value=!0:f.value=l(E)}finally{u.value=!1}};return(y,C)=>{const b=e.resolveComponent("KButton"),h=e.resolveComponent("KModal");return!d.value&&t.plugin?(e.openBlock(),e.createBlock(e.unref(le.EntityDeleteModal),{key:0,"action-pending":u.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:e.unref(r)("delete.description_custom"),"entity-name":t.plugin.name,"entity-type":e.unref(le.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:C[0]||(C[0]=E=>y.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):t.plugin?(e.openBlock(),e.createBlock(h,{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:C[2]||(C[2]=E=>y.$emit("closed"))},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(e.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:e.withCtx(()=>[e.createElementVNode("strong",null,e.toDisplayString(t.plugin.name),1)]),_:1})])]),"footer-actions":e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(b,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:C[1]||(C[1]=E=>y.$emit("closed"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-9e0dee7f"]]),w1={class:"custom-plugins-grid"},C1={class:"empty-state-title"},E1={class:"empty-state-description"},ei=310,N1=_e(e.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){const o=t,a=n,{i18n:{t:i}}=je.useI18n(),{getTallestPluginCardHeight:r,getToggleVisibility:l}=je.usePluginHelpers(),s=e.ref(!0),c=_=>{a("plugin-clicked",_)},u=e.computed(()=>{if(o.config.app==="kongManager")return[];const _=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(_):_}),f=e.ref(!1),d=e.ref(null),p=_=>{f.value=!0,d.value={id:_.id,name:_.name,customPluginType:_.customPluginType}},m=_=>{var w;_&&(a("revalidate"),a("delete:success",((w=d.value)==null?void 0:w.name)||"")),f.value=!1,d.value=null},g=e.ref(ei),y=e.ref(null),C=e.ref(null),b=e.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),h=e.ref(!1),E=()=>{g.value=Math.max(r(C.value),ei),k()},k=()=>{var _,w;(_=C.value)!=null&&_.length&&(h.value=l(y.value,(w=C.value)==null?void 0:w.length))};return e.onMounted(async()=>{await e.nextTick(),g.value=Math.max(r(C.value),ei),k(),window==null||window.addEventListener("resize",E)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",E)}),(_,w)=>{const x=e.resolveComponent("KEmptyState"),O=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock("div",w1,[u.value.length?(e.openBlock(),e.createBlock(O,{key:1,modelValue:s.value,"onUpdate:modelValue":w[0]||(w[0]=v=>s.value=v),class:"custom-plugins-collapse","data-testid":`${e.unref(Y.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:e.unref(Y.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?e.unref(i)("plugins.select.view_more"):e.unref(i)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:e.normalizeStyle(b.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(v,I)=>(e.openBlock(),e.createBlock(Za,{key:`plugin-card-${I}`,ref_for:!0,ref_key:"pluginCardRef",ref:C,"can-delete-custom-plugin":t.canDeleteCustomPlugin,"can-edit-custom-plugin":t.canEditCustomPlugin,config:t.config,"navigate-on-click":t.navigateOnClick,plugin:v,onCustomPluginDelete:S=>p(v),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[h.value?void 0:{name:"trigger",fn:e.withCtx(()=>[w[2]||(w[2]=e.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(e.openBlock(),e.createBlock(x,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",C1,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",E1,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&d.value?(e.openBlock(),e.createBlock(Qa,{key:2,config:t.config,plugin:d.value,onClosed:m,onProceed:w[1]||(w[1]=v=>m(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-f4b90f47"]]),ti=310,hd=_e(e.defineComponent({__name:"PluginSelectGroup",props:e.mergeModels({config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:e.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(t,{emit:n}){const o=e.useModel(t,"modelValue"),a=t,i=n,{i18n:{t:r}}=je.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=je.usePluginHelpers(),c=e.ref(ti),u=e.ref(null),f=e.ref(null),d=e.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=e.ref(!1),m=()=>{c.value=Math.max(l(f.value),ti),g()},g=()=>{var y,C;(y=f.value)!=null&&y.length&&(p.value=s(u.value,(C=f.value)==null?void 0:C.length))};return e.onMounted(async()=>{await e.nextTick(),c.value=Math.max(l(f.value),ti),g(),window==null||window.addEventListener("resize",m)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(y,C)=>{const b=e.resolveComponent("KCollapse");return e.openBlock(),e.createBlock(b,{modelValue:o.value,"onUpdate:modelValue":C[0]||(C[0]=h=>o.value=h),class:"plugins-collapse","data-testid":`${a.name}-collapse`,title:a.name,"trigger-label":o.value?e.unref(r)("plugins.select.view_more"):e.unref(r)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:u,class:"plugin-card-container",style:e.normalizeStyle(d.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.plugins,h=>(e.openBlock(),e.createBlock(Za,{key:`plugin-card-${h.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:t.config,"navigate-on-click":t.navigateOnClick,plugin:h,onPluginClicked:E=>i("plugin-clicked",h)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:e.withCtx(()=>[C[1]||(C[1]=e.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-a1074120"]]),x1={class:"plugin-select-grid"},S1={class:"empty-state-title"},A1={class:"empty-state-description"},ni=e.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){const o=t,a=n,{i18n:{t:i}}=je.useI18n(),r=e.ref(!1),l=e.ref(xr),s=u=>{a("plugin-clicked",u)},c=e.computed(()=>{const u=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete u[Y.PluginGroup.CUSTOM_PLUGINS],u});return(u,f)=>{const d=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",x1,[Object.keys(c.value).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",S1,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",A1,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(e.openBlock(),e.createBlock(hd,{key:1,modelValue:r.value,"onUpdate:modelValue":f[0]||(f[0]=p=>r.value=p),config:t.config,name:o.highlightedPluginsTitle||e.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":t.navigateOnClick,plugins:o.highlightedPlugins,onPluginClicked:f[1]||(f[1]=p=>s(p))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(si),p=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[c.value[p]?(e.openBlock(),e.createElementBlock("div",{key:p},[e.createVNode(hd,{modelValue:l.value[p],"onUpdate:modelValue":m=>l.value[p]=m,config:t.config,name:p,"navigate-on-click":t.navigateOnClick,plugins:c.value[p]||[],onPluginClicked:f[2]||(f[2]=m=>s(m))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):e.createCommentVNode("",!0)],64))),256))])}}}),I1={class:"kong-ui-entities-plugin-select-form"},P1={class:"plugins-filter-input-container"},T1={key:0},O1={key:3,"aria-live":"polite",class:"plugins-results-container"},V1={"data-testid":"kong-tab"},B1={class:"tab-description"},R1={"data-testid":"custom-tab"},$1={class:"tab-description"},F1=_e(e.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){var R;const o=t,a=n,i=hn.useRoute(),r=hn.useRouter(),{i18n:{t:l}}=je.useI18n(),{pluginMetaData:s}=je.usePluginMetaData(),{getMessageFromError:c}=le.useErrors(),{sortAlpha:u,objectsAreEqual:f}=le.useHelpers(),d=e.ref(""),p=e.ref(!0),m=e.ref(!1),g=e.ref(""),y=e.ref([]),C=e.ref([]),b=e.ref({}),h=e.ref([]),{axiosInstance:E}=le.useAxios((R=o.config)==null?void 0:R.axiosRequestConfig),k=e.computed(()=>b.value?Object.entries(b.value).filter(([A])=>A!==Y.PluginGroup.CUSTOM_PLUGINS).reduce((A,[,K])=>{for(const z of K??[])A[z.id]=z;return A},{}):{}),_=e.computed(()=>{var z;if(!b.value)return{};const A=d.value.toLowerCase(),K=JSON.parse(JSON.stringify(b.value));for(const $ in b.value){const N=((z=b.value[$])==null?void 0:z.filter(B=>B.name.toLowerCase().includes(A)||B.id.toLowerCase().includes(A)||B.group.toLowerCase().includes(A)))||[];N.length?K[$]=N:delete K[$]}return K}),w=e.computed(()=>o.highlightedPluginIds.reduce((A,K)=>{const z=k.value[K];return z&&A.push(z),A},[])),x=e.computed(()=>Object.keys(_.value).length>0),O=e.computed(()=>Object.keys(b.value).length>0&&!x.value),v=e.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),I=e.computed(()=>{var K;let A=v.value.length&&((i==null?void 0:i.hash)||((K=v.value[0])==null?void 0:K.hash))||"";return A==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(A="#kong"),A}),S=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...y.value])].filter(A=>!o.ignoredPlugins.includes(A)).filter(A=>o.config.entityType&&(o.config.entityType==="services"&&s[A]&&!s[A].scope.includes(Y.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[A]&&!s[A].scope.includes(Y.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[A]&&!s[A].scope.includes(Y.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[A]&&!s[A].scope.includes(Y.PluginScope.CONSUMER))?!1:A).reduce((A,K)=>{var j;const z=s[K]&&s[K].name||K,$={...s[K],id:K,name:z,available:y.value.includes(K),disabledMessage:"",group:((j=s[K])==null?void 0:j.group)||Y.PluginGroup.CUSTOM_PLUGINS};$.group===Y.PluginGroup.CUSTOM_PLUGINS&&($.customPluginType=C.value.find(W=>W.name===K)?"streaming":"schema"),o.disabledPlugins&&($.disabledMessage=o.disabledPlugins[K]);const N=$.group||l("plugins.select.misc_plugins");let B=A[N];return B||(B=[]),B.push($),B.sort(u("name")),A[N]=B,A},{}),P=e.computed(()=>{var K;let A=`${o.config.apiBaseUrl}${Je.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=((K=o.config.gatewayInfo)==null?void 0:K.edition)==="community"?`${o.config.apiBaseUrl}${Je.select[o.config.app].availablePluginsForOss}`:A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A}),F=e.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let A=`${o.config.apiBaseUrl}${Je.select[o.config.app].streamingCustomPlugins}`;return A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),A}return null}),T=e.computed(()=>{if(o.config.entityType&&o.config.entityId){let A=`${o.config.apiBaseUrl}${Je.list[o.config.app].forEntity}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),D=A=>{r.replace({hash:A,query:i.query})};e.watch(()=>o.disabledPlugins,(A,K)=>{!f(A,K)&&!p.value&&(b.value=S())}),e.watch(()=>o.ignoredPlugins,(A,K)=>{!f(A,K)&&!p.value&&(b.value=S())}),e.watch(p,A=>{a("loading",A)});const U=e.ref(!1),q=e.ref(!1),L=e.ref(!1);e.onBeforeMount(async()=>{U.value=await o.canCreateCustomPlugin(),q.value=await o.canEditCustomPlugin(),L.value=await o.canDeleteCustomPlugin()});const V=e.useTemplateRef("filter-input");return e.onMounted(async()=>{var A,K;(K=(A=V.value)==null?void 0:A.input)==null||K.focus();try{const{data:z}=await E.get(P.value);if(o.config.app==="konnect"){const{names:$}=z;if(y.value=$||[],F.value){const{data:N}=await E.get(F.value);C.value=N.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:$}}=z;y.value=$?Object.keys($):[]}}catch(z){m.value=!0,g.value=c(z)}if(T.value)try{const{data:{data:z}}=await E.get(T.value);if(z!=null&&z.length){const $=z.reduce((N,B)=>(B.name&&N.push(B.name),N),[]);h.value=h.value.concat($)}}catch{}m.value||(b.value=S()),p.value=!1}),(A,K)=>{const z=e.resolveComponent("KInput"),$=e.resolveComponent("KSkeletonBox"),N=e.resolveComponent("KSkeleton"),B=e.resolveComponent("KEmptyState"),j=e.resolveComponent("KTooltip"),W=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",I1,[e.createElementVNode("div",P1,[e.createVNode(z,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":K[0]||(K[0]=X=>d.value=X),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:e.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(e.openBlock(),e.createElementBlock("section",T1,[e.createVNode($,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(N,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(e.openBlock(),e.createBlock(B,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(g.value),1)]),_:1})):O.value&&d.value?(e.openBlock(),e.createBlock(B,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(l)("search.no_results",{filter:d.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",O1,[v.value.length&&t.customPluginSupport!=="none"?(e.openBlock(),e.createBlock(W,{key:0,modelValue:I.value,"onUpdate:modelValue":K[5]||(K[5]=X=>I.value=X),"data-testid":"plugins-tabs",tabs:v.value,onChange:D},e.createSlots({kong:e.withCtx(()=>[e.createElementVNode("div",V1,[e.createElementVNode("p",B1,e.toDisplayString(e.unref(l)("plugins.select.tabs.kong.description")),1),e.createVNode(ni,{config:t.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":w.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":t.navigateOnClick,"plugin-list":_.value,onPluginClicked:K[1]||(K[1]=X=>A.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:e.withCtx(()=>[e.createElementVNode("div",R1,[e.renderSlot(A.$slots,"before-custom-tab-content",{},void 0,!0),e.createElementVNode("p",$1,e.toDisplayString(e.unref(l)("plugins.select.tabs.custom.description")),1),e.createVNode(N1,{"can-create-custom-plugin":U.value,"can-delete-custom-plugin":L.value,"can-edit-custom-plugin":q.value,config:t.config,"navigate-on-click":t.navigateOnClick,"plugin-list":_.value,"onDelete:success":K[2]||(K[2]=X=>A.$emit("delete-custom:success",X)),onPluginClicked:K[3]||(K[3]=X=>A.$emit("plugin-clicked",X)),onRevalidate:K[4]||(K[4]=()=>b.value=S())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[t.customPluginSupport==="disabled"?{name:"custom-anchor",fn:e.withCtx(()=>[e.createVNode(j,{"max-width":"300",text:e.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(e.openBlock(),e.createBlock(ni,{key:1,config:t.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":w.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":t.navigateOnClick,"plugin-list":_.value,onPluginClicked:K[6]||(K[6]=X=>A.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-a2b8a174"]]),L1={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},D1={class:"plugin-card-header"},M1={class:"plugin-card-title"},j1={key:0,class:"plugin-card-actions"},v1=["data-testid","title"],K1={key:0},U1={key:0},q1=["title"],G1={class:"plugin-card-footer"},z1=_e(e.defineComponent({__name:"PluginCatalogCard",props:{config:{},plugin:{}},emits:["plugin-clicked","custom-plugin-delete"],setup(t,{emit:n}){const o=n,a=t,i=hn.useRouter(),{i18n:{t:r}}=je.useI18n(),l=e.computed(()=>a.config.app==="konnect"?a.config.controlPlaneId:""),s=e.computed(()=>!!(!a.plugin.available||a.plugin.disabledMessage)),c=e.computed(()=>!!(d.value&&!f.value&&l.value)),u=e.computed(()=>{if(s.value)return{};if(d.value){const g=a.config;if(f.value&&g.createCustomRoute)return g.createCustomRoute}return a.config.getCreateRoute(a.plugin.id)}),f=e.computed(()=>a.plugin.id==="custom-plugin-create"),d=e.computed(()=>a.config.app==="konnect"&&a.plugin.group===Y.PluginGroup.CUSTOM_PLUGINS),p=()=>{a.config.app==="konnect"&&o("custom-plugin-delete")},m=(g,y)=>{const C=a.config;a.config.app==="konnect"&&typeof C.getCustomEditRoute=="function"&&i.push(C.getCustomEditRoute(g,y))};return(g,y)=>{const C=e.resolveComponent("KButton"),b=e.resolveComponent("KDropdownItem"),h=e.resolveComponent("KDropdownMenu"),E=e.resolveComponent("RouterLink"),k=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",L1,[e.createVNode(k,{text:t.plugin.disabledMessage},{default:e.withCtx(()=>[e.createVNode(E,{class:e.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${t.plugin.id}-card`,to:u.value},{default:e.withCtx(()=>[e.createElementVNode("div",D1,[e.createElementVNode("div",M1,[e.createVNode(e.unref(yn.PluginIcon),{alt:t.plugin.name,class:"plugin-card-icon",name:t.plugin.id,size:55},null,8,["alt","name"]),e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!d.value})},e.toDisplayString(t.plugin.name),3)]),c.value?(e.openBlock(),e.createElementBlock("div",j1,[e.createVNode(h,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150",onClick:y[1]||(y[1]=e.withModifiers(()=>{},["stop","prevent"]))},{default:e.withCtx(()=>[e.createVNode(C,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{size:e.unref(uo)},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[e.createVNode(b,{"data-testid":"edit-plugin-schema",onClick:y[0]||(y[0]=e.withModifiers(_=>m(t.plugin.name,t.plugin.customPluginType),["stop","prevent"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.edit")),1)]),_:1}),e.createVNode(b,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:e.withModifiers(p,["stop","prevent"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:1})]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:"plugin-card-body","data-testid":`${t.plugin.id}-card-body`,title:t.plugin.available?t.plugin.name:e.unref(r)("plugins.select.unavailable_tooltip")},[t.plugin.description||d.value&&!f.value?(e.openBlock(),e.createElementBlock("div",K1,[d.value&&!f.value?(e.openBlock(),e.createElementBlock("div",U1,e.toDisplayString(e.unref(r)("plugins.select.custom_badge_text")),1)):e.createCommentVNode("",!0),t.plugin.description?(e.openBlock(),e.createElementBlock("div",{key:1,title:t.plugin.description},e.toDisplayString(t.plugin.description),9,q1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],8,v1),e.createElementVNode("div",G1,[e.createElementVNode("div",null,e.toDisplayString(f.value?e.unref(r)("actions.create_custom"):e.unref(r)("actions.configure")),1),e.renderSlot(g.$slots,"footer-extra",{},void 0,!0)])]),_:3},8,["class","data-testid","to"])]),_:3},8,["text"])])}}}),[["__scopeId","data-v-dd7d4c5b"]]),H1=["data-testid"],W1={class:"group-icon-wrapper"},Y1={class:"group-title-text"},J1=["data-testid"],X1=["data-testid"],yd=_e(e.defineComponent({__name:"PluginCatalogGroup",props:{config:{},name:{},plugins:{},showAllCard:{type:Boolean}},emits:["plugin-clicked","revalidate","delete:success"],setup(t,{emit:n}){const o=t,a=e.computed(()=>{switch(o.name){case"Featured":return me.PopularIcon;case"AI":return me.BotIcon;case"Analytics & Monitoring":return me.AnalyticsIcon;case"Authentication":return me.LockIcon;case"Logging":return me.ServiceDocumentIcon;case"Security":return me.SecurityIcon;case"Serverless":return me.RuntimeServerlessIcon;case"Traffic Control":return me.TrafficIcon;case"Transformations":return me.TransformationIcon;case"Deployment":return me.DeployIcon;case"Custom Plugins":return me.CodeblockIcon;default:return null}}),i=n,{i18n:{t:r}}=je.useI18n(),l=e.ref(!1),s=e.computed(()=>o.showAllCard?o.plugins:!l.value&&o.plugins.length>9?o.plugins.slice(0,8):o.plugins),c=e.computed(()=>!o.showAllCard&&!l.value&&o.plugins.length>9);function u(){l.value=!0}const f=e.ref(!1),d=e.ref(null),p=g=>{f.value=!0,d.value={id:g.id,name:g.name,customPluginType:g.customPluginType}},m=g=>{var y;g&&(i("revalidate"),i("delete:success",((y=d.value)==null?void 0:y.name)||"")),f.value=!1,d.value=null};return(g,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.name?(e.openBlock(),e.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${t.name}-title`},[e.createElementVNode("div",W1,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),{color:e.unref(jl)},null,8,["color"]))]),e.createElementVNode("span",Y1,e.toDisplayString(t.name),1)],8,H1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${t.name}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,C=>(e.openBlock(),e.createBlock(z1,{key:`plugin-card-${C.id}`,config:t.config,plugin:C,onCustomPluginDelete:b=>p(C),onPluginClicked:b=>i("plugin-clicked",C)},e.createSlots({_:2},[C.gatewayVersion&&e.unref(Kh)(e.unref(Y.GATEWAY_VERSION_TIMESTAMP_MAP)[C.gatewayVersion])?{name:"footer-extra",fn:e.withCtx(()=>[e.createElementVNode("span",{class:"plugin-card-new-badge","data-testid":`plugin-card-${C.id}-new-badge`},e.toDisplayString(e.unref(r)("labels.new")),9,X1)]),key:"0"}:void 0]),1032,["config","plugin","onCustomPluginDelete","onPluginClicked"]))),128)),c.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:u},e.toDisplayString(e.unref(r)("plugins.select.show_all")),1)):e.createCommentVNode("",!0)],8,J1),f.value&&d.value?(e.openBlock(),e.createBlock(Qa,{key:1,config:t.config,plugin:d.value,onClosed:m,onProceed:y[0]||(y[0]=C=>m(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-73793795"]]),Z1={class:"plugin-select-grid"},Q1={class:"empty-state-title"},eS={class:"empty-state-description"},tS={key:1},nS=_e(e.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{}},emits:["plugin-clicked","delete:success"],setup(t,{emit:n}){const o=Po.concat(To),a=n,{i18n:{t:i}}=je.useI18n(),r=e.ref(xr),l=s=>{a("plugin-clicked",s)};return(s,c)=>{var f,d;const u=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",Z1,[Object.keys(t.pluginList||[]).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",Q1,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",eS,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),p=>{var m;return e.openBlock(),e.createElementBlock(e.Fragment,null,[(m=t.pluginList)!=null&&m[p]?(e.openBlock(),e.createElementBlock("div",{key:p},[e.createVNode(yd,{modelValue:r.value[p],"onUpdate:modelValue":g=>r.value[p]=g,config:t.config,name:p,plugins:t.pluginList[p]||[],"onDelete:success":c[0]||(c[0]=g=>a("delete:success",g)),onPluginClicked:c[1]||(c[1]=g=>l(g))},null,8,["modelValue","onUpdate:modelValue","config","name","plugins"])])):e.createCommentVNode("",!0)],64)}),256)),(d=(f=t.pluginList)==null?void 0:f["Query Result"])!=null&&d.length?(e.openBlock(),e.createElementBlock("div",tS,[e.createVNode(yd,{modelValue:r.value["Query Result"],"onUpdate:modelValue":c[2]||(c[2]=p=>r.value["Query Result"]=p),config:t.config,plugins:t.pluginList["Query Result"]||[],"show-all-card":"",onPluginClicked:c[3]||(c[3]=p=>l(p))},null,8,["modelValue","config","plugins"])])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-61af385a"]]),oS={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},rS=["title"],aS=["title"],iS={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},lS={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},sS=_e(e.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{}},emits:["revalidate","delete:success"],setup(t,{emit:n}){const o=n,a=t,{i18n:{t:i}}=je.useI18n(),r=e.computed(()=>C.value.some(k=>{var _;return!!((_=k.plugin)!=null&&_.customPluginType)})),l=e.computed(()=>{const k=[{key:"name",label:i("plugins.select.list.table_headers.name"),sortable:!0},{key:"description",label:i("plugins.select.list.table_headers.description")},{key:"action",hideLabel:!0}];return r.value&&k.push({key:"more-actions",hideLabel:!0}),k}),s=e.computed(()=>{if(!a.pluginList)return[];const k=Object.values(a.pluginList).flat();return Array.from(new Map(k.map(w=>[w.id,w])).values()).map(w=>({id:w.id,name:w.name,description:w.description,plugin:w}))}),c=e.ref(0),u=e.ref(10),f=e.ref(1),d=e.ref(s.value),p=e.ref(!1),m=e.ref(null),g=k=>{p.value=!0,m.value={id:k.id,name:k.name,customPluginType:k.customPluginType}},y=k=>{var _;k&&(o("revalidate"),o("delete:success",((_=m.value)==null?void 0:_.name)||"")),p.value=!1,m.value=null},C=e.computed(()=>{const k=d.value.length,_=Math.max(1,Math.ceil(k/u.value)),x=(Math.min(f.value,_)-1)*u.value;return d.value.slice(x,x+u.value)});e.watch(s,()=>{d.value=[...s.value],f.value=1,c.value++});const b=({page:k})=>{f.value=k},h=({pageSize:k})=>{u.value=k},E=k=>{const{sortColumnKey:_,sortColumnOrder:w}=k;_==="name"&&(d.value=[...d.value].sort((x,O)=>{const v=(x[_]||"").toLowerCase(),I=(O[_]||"").toLowerCase();return v<I?w==="asc"?-1:1:v>I?w==="asc"?1:-1:0}))};return(k,_)=>{const w=e.resolveComponent("KButton"),x=e.resolveComponent("KDropdownItem"),O=e.resolveComponent("KDropdown"),v=e.resolveComponent("KTableView"),I=e.resolveComponent("KCard");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(I,{"data-testid":"plugin-catalog-list-view-card"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(v,{key:c.value,class:"plugin-catalog-table","client-sort":"",data:C.value,"data-testid":"plugin-catalog-list-view-table",headers:l.value,"pagination-attributes":{totalCount:s.value.length,currentPage:f.value,initialPageSize:u.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:b,onPageSizeChange:h,onSort:E},{name:e.withCtx(({row:S})=>[e.createElementVNode("span",oS,[e.createVNode(e.unref(yn.PluginIcon),{"data-testid":`plugin-catalog-list-view-${S.plugin.id}-icon`,name:S.plugin.id,size:20},null,8,["data-testid","name"]),e.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:S.name},e.toDisplayString(S.name),9,rS)])]),description:e.withCtx(({row:S})=>[e.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:S.description},e.toDisplayString(S.description),9,aS)]),action:e.withCtx(({row:S})=>[e.createElementVNode("div",iS,[e.createVNode(w,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:a.config.getCreateRoute(S.id)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":e.withCtx(({row:S})=>{var P;return[(P=S.plugin)!=null&&P.customPluginType?(e.openBlock(),e.createElementBlock("div",lS,[e.createVNode(O,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:e.withCtx(()=>{var F,T;return[e.createVNode(x,{"data-testid":"edit-plugin-schema",item:{label:e.unref(i)("actions.edit"),to:(T=(F=t.config).getCustomEditRoute)==null?void 0:T.call(F,S.plugin.name,S.plugin.customPluginType)}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.edit")),1)]),_:1},8,["item"]),e.createVNode(x,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:()=>g(S.plugin)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.delete")),1)]),_:1},8,["onClick"])]}),default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{color:e.unref(Dn),size:e.unref(uo)},null,8,["color","size"])]),_:2},1024)])):e.createCommentVNode("",!0)]}),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),p.value&&m.value?(e.openBlock(),e.createBlock(Qa,{key:0,config:t.config,plugin:m.value,onClosed:y,onProceed:_[0]||(_[0]=S=>y(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-fff2eb7f"]]),cS={class:"plugin-catalog","data-testid":"plugin-catalog"},dS={class:"plugin-filter","data-testid":"plugin-filter"},uS={class:"plugin-filter-title"},pS={class:"featured-title"},fS={class:"plugin-featured-filter"},mS=["data-testid"],gS={class:"group-title"},hS={class:"plugin-type-filter"},yS=["data-testid"],_S={class:"plugins-container"},bS={class:"plugins-filter-input-container"},kS={class:"icon-container"},wS={key:0},CS={key:3,"aria-live":"polite",class:"plugins-results-container"},ES=_e(e.defineComponent({__name:"PluginCatalog",props:{config:{},disabledPlugins:{},highlightedPluginIds:{},customPluginSupport:{},availableOnServer:{type:Boolean,default:!0}},emits:["loading","plugin-clicked","delete-custom:success"],setup(t,{emit:n}){var U;const o=n,{i18n:{t:a}}=je.useI18n(),{pluginMetaData:i}=je.usePluginMetaData(),{getMessageFromError:r}=le.useErrors(),{sortAlpha:l,objectsAreEqual:s}=le.useHelpers(),c=t,{axiosInstance:u}=le.useAxios((U=c.config)==null?void 0:U.axiosRequestConfig),f=e.useTemplateRef("filter-input"),d=e.ref(""),p=e.ref(!1),m=e.ref(!1),g=e.ref(Object.fromEntries(Po.concat(To).map(q=>[q,!1]))),y=e.ref(!0),C=e.ref(!1),b=e.ref(""),h=e.ref([]),E=e.ref([]),k=e.ref({}),_=e.ref([]),w=e.ref(!1),x=e.computed(()=>w.value?me.GridIcon:me.ListIcon),O=e.computed(()=>{var L;let q=`${c.config.apiBaseUrl}${Je.select[c.config.app].availablePlugins}`;return c.config.app==="konnect"?q=q.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(q=((L=c.config.gatewayInfo)==null?void 0:L.edition)==="community"?`${c.config.apiBaseUrl}${Je.select[c.config.app].availablePluginsForOss}`:q.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),q}),v=e.computed(()=>{if(c.config.app==="konnect"&&c.customPluginSupport==="streaming"){let q=`${c.config.apiBaseUrl}${Je.select[c.config.app].streamingCustomPlugins}`;return q=q.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""),q}return null}),I=e.computed(()=>{if(c.config.entityType&&c.config.entityId){let q=`${c.config.apiBaseUrl}${Je.list[c.config.app].forEntity}`;return c.config.app==="konnect"?q=q.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(q=q.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),q.replace(/{entityType}/gi,c.config.entityType||"").replace(/{entityId}/gi,c.config.entityId||"")}return""}),S=e.computed(()=>{var z;if(!k.value)return{};const q=Object.entries(g.value).filter(([$,N])=>N).map(([$])=>$);let L={};q.length===0&&(L=k.value),q.forEach($=>{k.value[$]&&(L[$]=k.value[$])});const V=d.value.toLowerCase();if(!V)return L;const R=JSON.parse(JSON.stringify(L));for(const $ in L){const N=((z=L[$])==null?void 0:z.filter(B=>[B.name.toLowerCase(),B.id.toLowerCase()].some(W=>vh(V,W).length===V.length)))||[];N.length?R[$]=N:delete R[$]}const A=Object.values(R).flat().filter($=>!!$),K=Array.from(A.reduce(($,N)=>($.has(N.id)||$.set(N.id,N),$),new Map).values());return K.length?{"Query Result":K}:{}}),P=e.computed(()=>Object.keys(S.value).length>0),F=e.computed(()=>Object.keys(k.value).length>0&&!P.value),T=()=>{Object.keys(g.value).forEach(q=>{g.value[q]=!1})},D=()=>{const q=[...new Set([...Object.keys({...c.availableOnServer?{}:i}),...h.value])].filter(L=>c.config.entityType&&(c.config.entityType==="services"&&i[L]&&!i[L].scope.includes(Y.PluginScope.SERVICE)||c.config.entityType==="routes"&&i[L]&&!i[L].scope.includes(Y.PluginScope.ROUTE)||c.config.entityType==="consumer_groups"&&i[L]&&!i[L].scope.includes(Y.PluginScope.CONSUMER_GROUP)||c.config.entityType==="consumers"&&i[L]&&!i[L].scope.includes(Y.PluginScope.CONSUMER))?!1:L).reduce((L,V)=>{var $;const R=i[V]&&i[V].name||V,A={...i[V],id:V,name:R,available:h.value.includes(V),disabledMessage:"",group:(($=i[V])==null?void 0:$.group)||Y.PluginGroup.CUSTOM_PLUGINS};A.group===Y.PluginGroup.CUSTOM_PLUGINS&&(A.customPluginType=E.value.find(N=>N.name===V)?"streaming":"schema"),c.disabledPlugins&&(A.disabledMessage=c.disabledPlugins[V]);const K=A.group||a("plugins.select.misc_plugins");let z=L[K];return z||(z=[]),z.push(A),z.sort(l("name")),L[K]=z,L},{});return c.highlightedPluginIds&&c.highlightedPluginIds.length>0&&(q.Featured=c.highlightedPluginIds.flatMap(L=>{var R;const V=i[L];return V?{...V,id:L,name:V.name||L,available:h.value.includes(L),disabledMessage:((R=c.disabledPlugins)==null?void 0:R[L])||"",group:V.group||Y.PluginGroup.CUSTOM_PLUGINS}:[]}).filter(Boolean)),q};return e.watch(()=>c.disabledPlugins,(q,L)=>{!s(q||{},L||{})&&!y.value&&(k.value=D())}),e.watch(y,q=>{o("loading",q)}),e.onMounted(async()=>{var q,L;(L=(q=f.value)==null?void 0:q.input)==null||L.focus();try{const{data:V}=await u.get(O.value);if(c.config.app==="konnect"){const{names:R}=V;if(h.value=R||[],v.value){const{data:A}=await u.get(v.value);E.value=A.data||[]}}else if(c.config.app==="kongManager"){const{plugins:{available_on_server:R}}=V;h.value=R?Object.keys(R):[]}}catch(V){C.value=!0,b.value=r(V)}if(I.value)try{const{data:{data:V}}=await u.get(I.value);if(V!=null&&V.length){const R=V.reduce((A,K)=>(K.name&&A.push(K.name),A),[]);_.value=_.value.concat(R)}}catch{}C.value||(k.value=D()),y.value=!1}),(q,L)=>{const V=e.resolveComponent("KButton"),R=e.resolveComponent("KCheckbox"),A=e.resolveComponent("KBadge"),K=e.resolveComponent("KCollapse"),z=e.resolveComponent("KInput"),$=e.resolveComponent("KSkeletonBox"),N=e.resolveComponent("KSkeleton"),B=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",cS,[e.createElementVNode("div",dS,[e.createElementVNode("div",uS,[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.select.filter.title"))+" ",1),e.createVNode(V,{appearance:"tertiary",class:"clear-selection","data-testid":"clear-filter-selection",disabled:!Object.values(g.value).some(j=>j),onClick:T},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.select.filter.clear")),1)]),_:1},8,["disabled"])]),e.createVNode(K,{modelValue:p.value,"onUpdate:modelValue":L[0]||(L[0]=j=>p.value=j)},{title:e.withCtx(()=>[e.createElementVNode("div",pS,e.toDisplayString(e.unref(a)("plugins.select.filter.featured")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",fS,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(Po),j=>(e.openBlock(),e.createElementBlock("div",{key:j,class:"plugin-filter-item","data-testid":`plugin-filter-item-${j}`},[e.createVNode(R,{modelValue:g.value[j],"onUpdate:modelValue":W=>g.value[j]=W,label:j},null,8,["modelValue","onUpdate:modelValue","label"]),e.createVNode(A,{appearance:"neutral"},{default:e.withCtx(()=>{var W,X;return[e.createTextVNode(e.toDisplayString(((X=(W=k.value)==null?void 0:W[j])==null?void 0:X.length)||0),1)]}),_:2},1024)],8,mS))),128))])]),_:1},8,["modelValue"]),e.createVNode(K,{modelValue:m.value,"onUpdate:modelValue":L[1]||(L[1]=j=>m.value=j)},{title:e.withCtx(()=>[e.createElementVNode("div",gS,e.toDisplayString(e.unref(a)("plugins.select.filter.type")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",hS,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(To),j=>(e.openBlock(),e.createElementBlock("div",{key:j,class:"plugin-filter-item","data-testid":`plugin-filter-item-${j}`},[e.createVNode(R,{modelValue:g.value[j],"onUpdate:modelValue":W=>g.value[j]=W,"data-testid":`plugin-filter-checkbox-${j}`,label:j},null,8,["modelValue","onUpdate:modelValue","data-testid","label"]),e.createVNode(A,{appearance:"neutral","data-testid":`plugin-filter-count-${j}`},{default:e.withCtx(()=>{var W,X;return[e.createTextVNode(e.toDisplayString(((X=(W=k.value)==null?void 0:W[j])==null?void 0:X.length)||0),1)]}),_:2},1032,["data-testid"])],8,yS))),128))])]),_:1},8,["modelValue"])]),e.createElementVNode("div",_S,[e.createElementVNode("div",bS,[e.createVNode(z,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":L[2]||(L[2]=j=>d.value=j),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:e.unref(a)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),e.createElementVNode("div",kS,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x.value),{class:"plugins-filter-icon",color:e.unref(by),onClick:L[3]||(L[3]=j=>w.value=!w.value)},null,8,["color"]))])]),y.value?(e.openBlock(),e.createElementBlock("section",wS,[e.createVNode($,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(N,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):C.value?(e.openBlock(),e.createBlock(B,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(b.value),1)]),_:1})):F.value&&d.value?(e.openBlock(),e.createBlock(B,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(a)("search.no_results",{filter:d.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",CS,[w.value?(e.openBlock(),e.createBlock(sS,{key:0,config:t.config,"plugin-list":S.value,"onDelete:success":L[4]||(L[4]=j=>q.$emit("delete-custom:success",j))},null,8,["config","plugin-list"])):(e.openBlock(),e.createBlock(nS,{key:1,config:t.config,"plugin-list":S.value,"onDelete:success":L[5]||(L[5]=j=>q.$emit("delete-custom:success",j)),onPluginClicked:L[6]||(L[6]=j=>q.$emit("plugin-clicked",j))},null,8,["config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-ba67dc8c"]]),NS={key:1,class:"datakit-config-card-canvas"},xS={class:"config-card-details-label","data-testid":"datakit-configuration-label"},SS={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},AS={class:"canvas-wrapper"},IS=_e(e.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{},item:{}},setup(t){const n=e.computed(()=>{var o;return ld.safeParse((o=t.pluginData)==null?void 0:o.config).success});return Ic(t.pluginData),(o,a)=>{const i=e.resolveComponent("KLabel");return n.value?(e.openBlock(),e.createElementBlock("div",NS,[e.createElementVNode("div",xS,[e.createVNode(i,null,{default:e.withCtx(()=>[...a[0]||(a[0]=[e.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),e.createElementVNode("div",SS,[e.createElementVNode("div",AS,[e.createVNode(Ha,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])):(e.openBlock(),e.createBlock(e.unref(le.ConfigCardItem),{key:0,item:t.item},null,8,["item"]))}}}),[["__scopeId","data-v-0dc992b2"]]),PS={class:"kong-ui-entity-plugin-config-card"},TS={class:"name-cell-wrapper"},OS={class:"info-name"},VS={key:0},BS={key:0},RS={key:0},$S={key:0},FS={key:0},oi="config",LS=_e(e.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.entityId||!t.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(t,{emit:n}){var k;const o=n,a=t,{i18n:{t:i}}=je.useI18n(),r=je.usePluginMetaData(),{setFieldType:l}=je.usePluginHelpers(),{getPropValue:s}=le.useHelpers(),c=e.computed(()=>{var w;let _=(w=Je.item[a.config.app])==null?void 0:w[a.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,a.scopedEntityType).replace(/{entityId}/gi,a.scopedEntityId).concat(a.expandPartial?"?expand_partials=true":"");if(a.config.app==="konnect"){const x=a.expandPartial?"&":"?";_=_.concat(`${x}__ui_data=true`)}return _}),u=e.computed(()=>{var x,O;const _={},w=((x=b.value)==null?void 0:x.fields)||[];for(let v=0;v<w.length;v++){const I=b.value.fields[v],S=(O=Object.keys(I))==null?void 0:O[0];l(_,S,I[S])}return{..._,instance_name:{section:le.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:le.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:le.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:le.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:le.ConfigurationSchemaSection.Basic,order:6},protocols:{type:le.ConfigurationSchemaType.BadgeTag,section:le.ConfigurationSchemaSection.Basic,order:7}}}),f=e.computed(()=>{var w,x,O;if(!((w=b.value)!=null&&w.fields))return[];const _=(x=b.value.fields)==null?void 0:x.find(v=>{var S;return((S=Object.keys(v))==null?void 0:S[0])===oi});return((O=_==null?void 0:_[oi])==null?void 0:O.fields)||[]}),d=e.computed(()=>{var w,x;const _={};if(!f.value)return _;for(let O=0;O<((w=f.value)==null?void 0:w.length);O++){const v=f.value[O],I=(x=Object.keys(v))==null?void 0:x[0],S=v[I];S.required&&(_[I]={order:1}),l(_,I,S)}return _}),p=_=>{var x;const w=(x=r.pluginMetaData[a.config.pluginType])==null?void 0:x.scope;return w?Object.fromEntries(Object.entries(_).filter(([O,v])=>v?!0:!(O==="service"&&!w.includes(Y.PluginScope.SERVICE)||O==="route"&&!w.includes(Y.PluginScope.ROUTE)||O==="consumer"&&!w.includes(Y.PluginScope.CONSUMER)||O==="consumer_group"&&!w.includes(Y.PluginScope.CONSUMER_GROUP)))):_},m=_=>sn(_,"__ui_data"),{getMessageFromError:g}=le.useErrors(),{axiosInstance:y}=le.useAxios((k=a.config)==null?void 0:k.axiosRequestConfig),C=e.computed(()=>{var w,x;let _=`${a.config.apiBaseUrl}${Je.form[a.config.app].pluginSchema}`;return a.config.app==="konnect"?_=_.replace(/{controlPlaneId}/gi,((w=a.config)==null?void 0:w.controlPlaneId)||""):a.config.app==="kongManager"&&(_=_.replace(/\/{workspace}/gi,(x=a.config)!=null&&x.workspace?`/${a.config.workspace}`:"")),_=_.replace(/{plugin}/gi,a.config.pluginType),_}),b=e.ref({});le.useSchemaProvider(b);const h=e.ref(!1),E=e.ref("");return e.onBeforeMount(async()=>{h.value=!0;try{const{data:_}=await y.get(C.value);b.value=_}catch(_){E.value=g(_),o("error:fetch-schema",_)}finally{h.value=!1}}),(_,w)=>{const x=e.resolveComponent("KSkeleton"),O=e.resolveComponent("KEmptyState"),v=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",PS,[h.value?(e.openBlock(),e.createBlock(x,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):E.value?(e.openBlock(),e.createBlock(O,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(E.value),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(le.EntityBaseConfigCard),{key:2,"code-block-record-formatter":m,config:t.config,"config-card-doc":t.configCardDoc,"config-schema":u.value,"entity-type":e.unref(le.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":t.hideTitle,"plugin-config-key":oi,"plugin-config-schema":d.value,"record-resolver":p,"onFetch:error":w[0]||(w[0]=I=>_.$emit("fetch:error",I)),"onFetch:success":w[1]||(w[1]=I=>_.$emit("fetch:success",I)),onLoading:w[2]||(w[2]=I=>_.$emit("loading",I))},e.createSlots({name:e.withCtx(I=>[e.createElementVNode("div",TS,[e.createVNode(e.unref(yn.PluginIcon),{class:"plugin-icon",name:e.unref(s)("rowValue",I),size:24},null,8,["name"]),e.createElementVNode("span",OS,e.toDisplayString(e.unref(r).getDisplayName(e.unref(s)("rowValue",I))),1)])]),consumer:e.withCtx(I=>[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:e.unref(s)("rowValue",I).id,value:e.unref(s)("rowValue",I).id,type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>_.$emit("navigation-click",e.unref(s)("rowValue",I).id,"consumer")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(v,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"consumer-copy-uuid",text:e.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",VS,"–"))]),route:e.withCtx(I=>[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:e.unref(s)("rowValue",I).id,value:e.unref(s)("rowValue",I).id,type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>_.$emit("navigation-click",e.unref(s)("rowValue",I).id,"route")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(v,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"route-copy-uuid",text:e.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",BS,"–"))]),service:e.withCtx(I=>[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:e.unref(s)("rowValue",I).id,value:e.unref(s)("rowValue",I).id,type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>_.$emit("navigation-click",e.unref(s)("rowValue",I).id,"service")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(v,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"service-copy-uuid",text:e.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",RS,"–"))]),consumer_group:e.withCtx(I=>[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:e.unref(s)("rowValue",I).id,value:e.unref(s)("rowValue",I).id,type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>_.$emit("navigation-click",e.unref(s)("rowValue",I).id,"consumer_group")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(v,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"consumer-group-copy-uuid",text:e.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",$S,"–"))]),partials:e.withCtx(I=>{var S,P,F,T,D,U,q,L,V;return[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:(P=(S=e.unref(s)("rowValue",I))==null?void 0:S[0])==null?void 0:P.id,value:((T=(F=e.unref(s)("rowValue",I))==null?void 0:F[0])==null?void 0:T.id)+((U=(D=e.unref(s)("rowValue",I))==null?void 0:D[0])!=null&&U.name?"/"+((L=(q=e.unref(s)("rowValue",I))==null?void 0:q[0])==null?void 0:L.name):""),type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var R,A;return _.$emit("navigation-click",(A=(R=e.unref(s)("rowValue",I))==null?void 0:R[0])==null?void 0:A.id,"partial")}},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(v,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"partial-copy-uuid",text:(V=e.unref(s)("rowValue",I))==null?void 0:V[0].id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",FS,"–"))]}),_:2},[t.config.pluginType==="datakit"&&t.config.app==="konnect"?{name:"config-card-item-nodes",fn:e.withCtx(I=>[e.createVNode(IS,{item:I.row,"plugin-data":I.record},null,8,["item","plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-0c1ac825"]]),{usePluginMetaData:DS,useProvideExperimentalFreeForms:MS}=je;Object.defineProperty(xe,"PluginGroup",{enumerable:!0,get:()=>Y.PluginGroup}),Object.defineProperty(xe,"PluginScope",{enumerable:!0,get:()=>Y.PluginScope}),Object.defineProperty(xe,"PluginIcon",{enumerable:!0,get:()=>yn.PluginIcon}),Object.defineProperty(xe,"getPluginIconURL",{enumerable:!0,get:()=>yn.getPluginIconURL}),xe.EXPERIMENTAL_FREE_FORM_PROVIDER=ea,xe.EntityTypeIdField=_n,xe.FEATURE_FLAGS=Ho,xe.FREE_FORM_SCHEMA_MAP_KEY=Ln,xe.PLUGIN_GROUPS_COLLAPSE_STATUS=xr,xe.PluginCatalog=ES,xe.PluginConfigCard=LS,xe.PluginFeaturedArray=Po,xe.PluginForm=n1,xe.PluginGroupArray=si,xe.PluginGroupArraySortedAlphabetically=To,xe.PluginList=u1,xe.PluginPartialType=Io,xe.PluginSelect=F1,xe.PluginSelectCard=Za,xe.PluginSelectGrid=ni,xe.TOASTER_PROVIDER=Rl,xe.pluginEndpoints=Je,xe.usePluginMetaData=DS,xe.useProvideExperimentalFreeForms=MS,Object.defineProperty(xe,Symbol.toStringTag,{value:"Module"})}));
|
|
208
|
+
`};function bo(t){return typeof t=="object"&&!Array.isArray(t)&&t!==null}const Ow=[{name:"decK",extract(t){try{const n=Ht.load(t);return bo(n)&&Array.isArray(n.plugins)&&n.plugins.find(a=>bo(a)&&a.name==="datakit")||null}catch{return null}}},{name:"KIC",extract(t){let n=t;const o=t.match(/echo\s+(?:"([\s\S]*?)"|'([\s\S]*?)')\s*\|\s*kubectl/);o&&(n=o[1]||o[2]);try{const a=Ht.load(n);if(!bo(a))return null;const i=bo(a.metadata)?a.metadata:{},r=a.plugin||i.name;return(a.kind==="KongPlugin"||a.kind==="KongClusterPlugin")&&r==="datakit"&&a||null}catch{return null}}},{name:"cURL",extract(t){if(!t.trim().startsWith("curl"))return null;const n=t.match(/(?:--data|-d)\s+(?:'((?:[^'\\]|\\[\s\S])*)'|"((?:[^"\\]|\\[\s\S])*)")/);if(!n)return null;let o=n[1]||n[2];n[2]&&(o=o.replace(/\\(["\\])/g,"$1"));try{const a=JSON.parse(o);return bo(a)&&a.name==="datakit"&&a||null}catch{return null}}}],Vw={class:"dk-code-editor"},Bw={class:"examples-content"},Ia="YAML Syntax",Rw=_e(e.defineComponent({__name:"CodeEditor",props:{editing:{type:Boolean}},emits:["change","error"],setup(t,{expose:n,emit:o}){const{t:a}=it.createI18n("en-us",ct),{formData:i,setValue:r}=We(),l=o,{getMessageFromError:s}=le.useErrors(),c=e.shallowRef(null);function u(_){return Ht.dump(e.toRaw(_),{schema:un,noArrayIndent:!0})}function f(){return u(sn(i,["__ui_data"]))}const d=e.shallowRef(f()),p={scrollbar:{alwaysConsumeMouseWheel:!1},autoIndent:"keep",editContext:!1};function m(_){const w=_.getModel();w&&(c.value=_,_.onDidChangeModelContent(()=>{try{const x=Ht.load(_.getValue()||"",{schema:un,json:!0});if(typeof x!="object"||x===null)return;Ao.editor.setModelMarkers(w,Ia,[]),r(x),l("change",x)}catch(x){const{message:O,mark:K}=x,{line:I,column:S}=K||{line:0,column:0},P=O.split(`
|
|
209
|
+
`)[0],F=[{startLineNumber:I+1,startColumn:S+1,endLineNumber:I+1,endColumn:S+2,message:P,severity:Ao.MarkerSeverity.Error,source:Ia}];Ao.editor.setModelMarkers(w,Ia,F),l("error",P)}}),_.onDidPaste(x=>{const O=_.getModel();if(!O)return;const K=O.getValueInRange(x.range);for(const I of Ow){const S=I.extract(K);if(S){y.value=S,C.value=I.name,g.value=!0;return}}}),k())}const g=e.shallowRef(!1),y=e.shallowRef(null),C=e.shallowRef("");function b(){g.value=!1,y.value=null,C.value=""}function h(){y.value&&(d.value=u(y.value),b())}function E(_){const w=lr[_];try{const x=Ht.load(d.value,{schema:un,json:!0}),O=Ht.load(w,{schema:un,json:!0});if(typeof x=="object"&&x!==null&&Vt(x.config,O))return;const K=sn({...i,config:{...O}},["__ui_data"]);d.value=u(K)}catch(x){l("error",s(x))}k()}function k(){const _=c.value,w=_==null?void 0:_.getModel();!_||!w||(_.setPosition(w.getFullModelRange().getEndPosition()),_.focus())}return n({setExampleCode:E}),(_,w)=>(e.openBlock(),e.createElementBlock("div",Vw,[e.createVNode(e.unref(Oe.KAlert),{class:"examples"},{icon:e.withCtx(()=>[e.createVNode(e.unref(me.SparklesIcon))]),default:e.withCtx(()=>[e.createElementVNode("div",Bw,[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.description_example"))+" ",1),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(lr),(x,O)=>(e.openBlock(),e.createBlock(e.unref(Oe.KButton),{key:O,appearance:"secondary",size:"small",onClick:K=>E(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)(`plugins.free-form.datakit.examples.${O}`)),1)]),_:2},1032,["onClick"]))),128))])]),_:1}),e.createVNode(e.unref(ai.MonacoEditor),{ref:"editor",modelValue:d.value,"onUpdate:modelValue":w[0]||(w[0]=x=>d.value=x),appearance:"standalone",class:"editor",language:"yaml",options:p,theme:"light",onReady:m},null,8,["modelValue"]),e.createVNode(e.unref(Oe.KModal),{"action-button-text":e.unref(a)("plugins.free-form.datakit.detected_config_format_confirm"),title:e.unref(a)("plugins.free-form.datakit.detected_config_format_title"),visible:g.value,onCancel:b,onProceed:h},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.detected_config_format",{format:C.value})),1)]),_:1},8,["action-button-text","title","visible"])]))}}),[["__scopeId","data-v-db64d5b4"]]),gc=["request","service_request","service_response","response","vault"],zn=gc,hc=["call","jq","exit","property","static","branch","cache","xml_to_json","json_to_xml","jwt_decode","jwt_sign","jwt_verify"],yc=["GET","HEAD","POST","PUT","PATCH","DELETE","OPTIONS","TRACE","CONNECT"],Pa=["EdDSA","ES256","ES384","ES512","HS256","HS384","HS512","PS256","PS384","PS512","RS256","RS384","RS512"],$w={},Fw={height:"16",viewBox:"0 -960 960 960",width:"16",xmlns:"http://www.w3.org/2000/svg"};function Lw(t,n){return e.openBlock(),e.createElementBlock("svg",Fw,[...n[0]||(n[0]=[e.createElementVNode("path",{d:"M240-160h480v-400H240v400Zm296.5-143.5Q560-327 560-360t-23.5-56.5Q513-440 480-440t-56.5 23.5Q400-393 400-360t23.5 56.5Q447-280 480-280t56.5-23.5ZM240-160v-400 400Zm0 80q-33 0-56.5-23.5T160-160v-400q0-33 23.5-56.5T240-640h280v-80q0-83 58.5-141.5T720-920q83 0 141.5 58.5T920-720h-80q0-50-35-85t-85-35q-50 0-85 35t-35 85v80h120q33 0 56.5 23.5T800-560v400q0 33-23.5 56.5T720-80H240Z",fill:"currentColor"},null,-1)])])}const Dw=_e($w,[["render",Lw]]),Mw={},jw={height:"16",viewBox:"0 -960 960 960",width:"16",xmlns:"http://www.w3.org/2000/svg"};function Kw(t,n){return e.openBlock(),e.createElementBlock("svg",jw,[...n[0]||(n[0]=[e.createElementVNode("path",{d:"M480-80q-83 0-156-31.5T197-197q-54-54-85.5-127T80-480q0-83 31.5-156T197-763q54-54 127-85.5T480-880q65 0 123 19t107 53l-58 59q-38-24-81-37.5T480-800q-133 0-226.5 93.5T160-480q0 133 93.5 226.5T480-160q133 0 226.5-93.5T800-480q0-18-2-36t-6-35l65-65q11 32 17 66t6 70q0 83-31.5 156T763-197q-54 54-127 85.5T480-80Zm-56-216L254-466l56-56 114 114 400-401 56 56-456 457Z",fill:"currentColor"},null,-1)])])}const vw=_e(Mw,[["render",Kw]]),rt={call:{icon:me.NetworkIcon,colors:{foreground:zl,background:Ml}},jq:{icon:me.CodeblockIcon,colors:{foreground:jl,background:dy}},exit:{icon:me.GatewayIcon,colors:{foreground:oa,background:hy}},property:{icon:me.StackIcon,colors:{foreground:ql,background:Gl}},static:{icon:me.DeployIcon,colors:{foreground:vl,background:Ul}},branch:{icon:me.ArrowSplitIcon,colors:{foreground:yy,background:cy}},cache:{icon:me.CachedIcon,colors:{foreground:_y,background:"#fff0f7"}},xml_to_json:{icon:me.DataObjectIcon,colors:{foreground:co,background:na}},json_to_xml:{icon:me.CodeIcon,colors:{foreground:co,background:na}},jwt_decode:{icon:Dw,colors:{foreground:zl,background:Ml}},jwt_sign:{icon:me.EditSquareIcon,colors:{foreground:vl,background:Ul}},jwt_verify:{icon:vw,colors:{foreground:ql,background:Gl}},vault:{icon:me.KeyIcon},request:{icon:me.CloudIcon},service_request:{icon:me.CloudIcon},service_response:{icon:me.CloudIcon},response:{icon:me.CloudIcon}},{t:Ta}=it.createI18n("en-us",ct);function ht(t){return Ta(`plugins.free-form.datakit.flow_editor.node_types.${t}.description`)}function Bt(t){return Ta(`plugins.free-form.datakit.flow_editor.node_types.${t}.summary`)}function Uw(t){return Ta(`plugins.free-form.datakit.flow_editor.node_types.${t}.name`)}const Oa={call:{type:"call",summary:Bt("call"),description:ht("call"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]},output:{fields:[{name:"headers"},{name:"body"},{name:"status"}]}},...rt.call},jq:{type:"jq",summary:Bt("jq"),description:ht("jq"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...rt.jq},exit:{type:"exit",summary:Bt("exit"),description:ht("exit"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...rt.exit},property:{type:"property",summary:Bt("property"),description:ht("property"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...rt.property},static:{type:"static",summary:Bt("static"),description:ht("static"),io:{output:{fields:[],configurable:!0}},...rt.static},branch:{type:"branch",summary:Bt("branch"),description:ht("branch"),io:{input:{fields:[]},next:{branches:[{name:"then"},{name:"else"}]}},...rt.branch},cache:{type:"cache",summary:Bt("cache"),description:ht("cache"),io:{input:{fields:[{name:"data"},{name:"key"},{name:"ttl"}]},output:{fields:[{name:"data"},{name:"hit"},{name:"miss"},{name:"stored"}]}},...rt.cache},xml_to_json:{type:"xml_to_json",summary:Bt("xml_to_json"),description:ht("xml_to_json"),io:{input:{fields:[]},output:{fields:[]}},...rt.xml_to_json},json_to_xml:{type:"json_to_xml",summary:Bt("json_to_xml"),description:ht("json_to_xml"),io:{input:{fields:[],configurable:!0},output:{fields:[]}},...rt.json_to_xml},jwt_decode:{type:"jwt_decode",summary:Bt("jwt_decode"),description:ht("jwt_decode"),io:{input:{fields:[]},output:{fields:[{name:"header"},{name:"payload"},{name:"signature"}]}},...rt.jwt_decode},jwt_sign:{type:"jwt_sign",summary:Bt("jwt_sign"),description:ht("jwt_sign"),io:{input:{fields:[{name:"claims"},{name:"key"}]},output:{fields:[{name:"claims"},{name:"header"},{name:"token"}]}},...rt.jwt_sign},jwt_verify:{type:"jwt_verify",summary:Bt("jwt_verify"),description:ht("jwt_verify"),io:{input:{fields:[{name:"key"},{name:"token"}]},output:{fields:[{name:"claims"},{name:"header"}]}},...rt.jwt_verify}},sr={request:{type:"request",description:ht("request"),io:{output:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...rt.request},service_request:{type:"service_request",description:ht("service_request"),io:{input:{fields:[{name:"headers"},{name:"body"},{name:"query"}]}},...rt.service_request},service_response:{type:"service_response",description:ht("service_response"),io:{output:{fields:[{name:"headers"},{name:"body"}]}},...rt.service_response},response:{type:"response",description:ht("response"),io:{input:{fields:[{name:"headers"},{name:"body"}]}},...rt.response},vault:{type:"vault",io:{output:{fields:[],configurable:!0}},...rt.vault,hidden:!0}},Va=Object.keys(sr),Ba=t=>Va.includes(t),qw=t=>[...Va,...hc].includes(t),xt=t=>Va.includes(t),Ra=t=>xt(t.type),$a=t=>!!(t!=null&&t.startsWith("node:")),ko=t=>Object.prototype.hasOwnProperty.call(t,"ownerId");function nn(t){return Sn(t)}function Fa(t,n){if(t.length!==n.length)return!1;if(t.length===0)return!0;const o=new Set(n);return t.every(a=>o.has(a))}function Hn(t){return`${t}:${zo()}`}function cr(t){const[n,o]=t.split(".");return{nodeName:n,fieldName:o}}function _c(t){const[n,o]=t.split(".");return{nodeId:n,fieldId:o}}function Wn(t){return xt(t)?sr[t]:Oa[t]}function bc(t){var i,r,l,s;const n=Wn(t),o=((r=(i=n.io)==null?void 0:i.input)==null?void 0:r.fields.map(({name:c})=>c))??[],a=((s=(l=n.io)==null?void 0:l.output)==null?void 0:s.fields.map(({name:c})=>c))??[];return{input:o,output:a}}function wo(t){var o,a,i;return((i=(a=(o=Wn(t).io)==null?void 0:o.next)==null?void 0:a.branches)==null?void 0:i.map(({name:r})=>r))??[]}function kc(t){return(t??[]).map(n=>({id:Hn("field"),name:n}))}function pn(t,n,o){if(o)return t.fields[n].find(a=>a.name===o)}function fn(t,n,o){if(o)return t.fields[n].find(a=>a.id===o)}function La(t,n){return n?t.fields.output.some(o=>o.id===n):!0}function wc(t,n){return n?t.fields.input.some(o=>o.id===n):!0}function Gw(t){const n=["request","service_request","vault"].includes(t)?"request":"response",o=sr[t];return{name:t,phase:n,position:{x:0,y:0},fields:bc(o.type),expanded:{},hidden:o.hidden}}function Cc(t,n){const a=(typeof t=="string"&&qw(t)?t.toUpperCase():t).replace(/_\d+$/,"");for(let i=1;;i++){const r=`${a}_${i}`;if(!n.has(r))return r}}function Da(t,n){return`${t}:${n}`}function zw(t){const n=t.lastIndexOf(":");if(n===-1)throw new Error(`Invalid group ID format: ${t}`);const o=t.slice(0,n),a=t.slice(n+1);return{nodeId:o,branch:a}}function dr(t,n){return`${t}:${n}`}function Ec(t,n,o,a,i){return{id:Da(t,n),ownerId:t,branch:n,phase:o,memberIds:[...a],position:i!=null&&i.position?{...i.position}:void 0,dimensions:i!=null&&i.dimensions?{...i.dimensions}:void 0}}function Hw(t){return t.map(({source:n,target:o})=>({source:n,target:o}))}function Ww(t){const n=[];for(const o of t)for(const a of o.memberIds)n.push({source:o.ownerId,target:a});return n}function Nc(t,n){return[...Hw(t),...Ww(n)]}function ur(t,n){const o=new Map;for(const{source:a,target:i}of t)o.has(a)||o.set(a,[]),o.get(a).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 Ma(t){const n=new Set,o=new Set;function a(i){if(o.has(i))return!0;if(n.has(i))return!1;n.add(i),o.add(i);for(const r of t.get(i)??[])if(a(r))return!0;return o.delete(i),!1}for(const i of t.keys())if(a(i))return!0;return!1}function ja(t,n){const o=t.config;if(!o)return[];const a=o[n];return Array.isArray(a)?a.filter(i=>typeof i=="string"&&$a(i)):[]}function Yw({state:t,groupMapById:n,getNodeById:o,history:a}){const i=e.computed(()=>{const S=new Map;for(const P of t.value.groups)for(const F of P.memberIds)S.set(F,{ownerId:P.ownerId,branch:P.branch});return S}),r=e.computed(()=>{const S=new Map;for(const P of t.value.groups)for(const F of P.memberIds)S.set(F,P);return S}),l=e.computed(()=>{const S=new Map;for(const P of t.value.groups)S.has(P.ownerId)||S.set(P.ownerId,[]),S.get(P.ownerId).push(P);return S}),s=e.computed(()=>Nc(t.value.edges,t.value.groups)),c=e.computed(()=>ur(s.value));function u(S,P){return S?wo(S.type).includes(P):!1}function f(S,P){if(P===S.id)return!1;const F=o(P);return!(!F||xt(F.type)||F.phase!==S.phase)}function d(S,P){const F=[],T=new Set;for(const D of P)T.has(D)||(T.add(D),f(S,D)&&F.push(D));return F}function p(S,P,F){const T=o(S);return u(T,P)?d(T,F):[]}function m(S,P,F){const T=Da(S.id,P),D=n.value.get(T);F.length>0?D?(D.phase!==S.phase&&(D.phase=S.phase),Fa(D.memberIds,F)||(D.position=void 0,D.dimensions=void 0,D.memberIds=[...F])):t.value.groups.push(Ec(S.id,P,S.phase,F)):D&&(t.value.groups=t.value.groups.filter(U=>U.id!==T))}function g(S,P,F,T={}){const D=o(S);if(!u(D,P))return!1;const U=d(D,F),q=ja(D,P);if(Fa(q,U))return!1;const L=D.config??(D.config={});return U.length>0?L[P]=[...U]:(delete L[P],Object.keys(L).length===0&&delete D.config),m(D,P,U),(T.commit??!0)&&a.commit(T.tag),!0}function y(S,P={}){const F=t.value.groups.filter(T=>T.ownerId!==S);return F.length===t.value.groups.length?!1:(t.value.groups=F,(P.commit??!0)&&a.commit(P.tag),!0)}function C(S,P){const F=n.value.get(Da(S,P));if(F)return[...F.memberIds];const T=o(S);return T?ja(T,P):[]}function b(S){return i.value.get(S)}function h(S){const P=[];let F=r.value.get(S);for(;F;)P.push(F.id),F=r.value.get(F.ownerId);return P}function E(S,P){const F=h(P);if(F.length===0)return!1;const T=new Set(h(S));return T.size===0?!0:F.some(D=>!T.has(D))}function k(S,P){if(S===P)return!0;const F=new Set,T=[P];for(;T.length>0;){const D=T.pop();if(F.has(D))continue;if(F.add(D),D===S)return!0;const U=c.value.get(D);if(U)for(const q of U)F.has(q)||T.push(q)}return!1}function _(S,P,F){const T=o(S);return!(!u(T,P)||!f(T,F)||k(S,F))}function w(S,P,F,T={}){const D=o(S);if(!D||!_(S,P,F))return!1;const U=ja(D,P);if(U.includes(F))return!1;x(F,{commit:!1});const q=[...U,F];return g(S,P,q,{commit:!1})?((T.commit??!0)&&a.commit(T.tag),!0):!1}function x(S,P={}){const F=b(S);if(!F)return!1;const T=C(F.ownerId,F.branch),D=T.filter(U=>U!==S);return D.length===T.length?!1:g(F.ownerId,F.branch,D,P)}function O(S){let P=0;const F=new Set;let T=r.value.get(S);for(;T&&!F.has(T.id);)P+=1,F.add(T.id),T=r.value.get(T.ownerId);return P}function K(S){const P=n.value.get(S);return P?O(P.ownerId):0}function I(S){return S?n.value.has(S):!1}return{memberGroupMap:r,groupsByOwner:l,findMembership:b,getMembers:C,wouldCreateCycle:k,setMembers:g,prepareMembers:p,addMember:w,removeMember:x,clear:y,getNodeDepth:O,getGroupDepth:K,isGroupId:I,isEdgeEnteringGroup:E,canAddMember:_}}function Jw(t,n){const{commit:o,undo:a,redo:i,canUndo:r,canRedo:l,clear:s,reset:c,undoStack:u,redoStack:f}=Xe.useManualRefHistory(t,{capacity:n==null?void 0:n.capacity,clone:n==null?void 0:n.clone});let d;function p(E){var k;(k=n==null?void 0:n.onHistoryChange)==null||k.call(n,E,t.value)}function m(E){if(!E){d=void 0,o(),p("commit");return}if(E!=="*"&&d!==E){d=E,o(),p("commit");return}o(),u.value.shift(),p("commit")}function g(){a(),d=void 0,p("undo")}function y(){i(),d=void 0,p("redo")}function C(){s(),d=void 0,p("clear")}function b(){c(),d=void 0,p("reset")}function h(){a(),f.value.shift(),d=void 0,p("revert")}return{canUndo:r,canRedo:l,commit:m,undo:g,redo:y,clear:C,reset:b,revert:h}}function Xw(t){var n,o;return((o=(n=t.config)==null?void 0:n.resources)==null?void 0:o.vault)||{}}function Zw(t){const{resources:n}=t.config||{};return n!=null&&n.vault?Object.keys(n.vault):[]}function Qw(t){const n=Object.entries(t);if(n.length===0)return;const o={};for(const[a,i]of n)o[a]=i;return o}function xc(t,n){var C,b,h,E,k,_,w;const o=((C=t.config)==null?void 0:C.nodes)??[],a=((b=t.__ui_data)==null?void 0:b.nodes)??[],i=((h=t.__ui_data)==null?void 0:h.groups)??[],r=new Map(a.map(x=>[x.name,x])),l=new Map(i.map(x=>[x.name,x])),s=[],c=[],u=new Map,f=[],d=[],p=new Map,m=x=>{const O=new Set,K=[...x];for(;K.length>0;){const I=K.shift();if(!O.has(I)&&(O.add(I),Ba(I)||(u.get(I).phase="request"),!!p.has(I)))for(const S of p.get(I))O.has(S)||K.push(S)}};let g=!1;for(const x of o){const O=r.get(x.name);!O&&!g&&(g=!0);const K=Ac({type:x.type,configNode:x,uiNode:O,pluginData:t});s.push(K),u.set(K.name,K)}for(const x of s){const O=wo(x.type);if(!O.length)continue;const K=x.config;if(K)for(const I of O){const S=K[I];if(!Array.isArray(S)){l.has(dr(x.name,I))&&(g=!0);continue}const P=[];for(const F of S){if(typeof F!="string")continue;const T=u.get(F);T&&!xt(T.type)&&P.push(T.id)}if(P.length){K[I]=P;const F=dr(x.name,I),T=l.get(F),D=T?{position:nn(T.position)}:void 0,U=Ec(x.id,I,x.phase,P,D);f.push(U),!T&&!g&&(g=!0)}else delete K[I],l.has(dr(x.name,I))&&(g=!0)}}for(const x of zn)if(!u.has(x)){let O=r.get(x);O||(g||(g=!0),O=Gw(x));const K=Ac({type:x,uiNode:O,pluginData:t});s.push(K),u.set(K.name,K)}for(const x of o)nC(x,d);for(const x of d){const O=u.get(x.source),K=u.get(x.target);if(!O||!K){O||console.warn(`[initEditorState] skip: source "${x.source}" not found`),K||console.warn(`[initEditorState] skip: target "${x.target}" not found`);continue}p.has(x.source)||p.set(x.source,new Set),p.get(x.source).add(x.target),p.has(x.target)||p.set(x.target,new Set),p.get(x.target).add(x.source),c.push({id:Hn("edge"),source:O.id,sourceField:(E=pn(O,"output",x.sourceField))==null?void 0:E.id,target:K.id,targetField:(k=pn(K,"input",x.targetField))==null?void 0:k.id})}m(["request","service_request"]);let y=null;return(w=(_=t.config)==null?void 0:_.resources)!=null&&w.cache&&(y={...t.config.resources.cache},t.partials&&(y.partial_id=t.partials[0].id)),{nodes:s,edges:c,groups:f,pendingLayout:g?n?"keepHistory":"clearHistory":!1,pendingFitView:!0,...y?{cacheConfig:y}:{}}}function Sc(t){const{type:n,name:o,phase:a,position:i,fields:r,config:l}=t,s=bc(n),c=Wn(n);return{id:Hn("node"),type:n,name:o??n,phase:a??"request",position:i??{x:0,y:0},expanded:{},fields:{input:kc((r==null?void 0:r.input)??s.input),output:kc((r==null?void 0:r.output)??s.output)},hidden:t.hidden||c.hidden,config:l?nn(l):{}}}function eC(t){return xt(t)?t==="request"||t==="service_request"?"request":"response":"request"}function Ac({type:t,configNode:n,uiNode:o,pluginData:a}){return Sc({type:t,name:n==null?void 0:n.name,phase:(o==null?void 0:o.phase)??eC(t),position:o==null?void 0:o.position,fields:oC({type:t,uiNode:o,configNode:n,pluginData:a}),hidden:o==null?void 0:o.hidden,config:rC({type:t,configNode:n,pluginData:a})})}function tC(t){const{type:n,name:o,input:a,inputs:i,output:r,outputs:l,...s}=t;return nn(s)}function nC(t,n){const o=t.name;if(t.input){const{nodeName:a,fieldName:i}=cr(t.input);a&&n.push({source:a,sourceField:i,target:o})}if(t.inputs)for(const[a,i]of Object.entries(t.inputs)){if(!i)continue;const{nodeName:r,fieldName:l}=cr(i);r&&n.push({source:r,sourceField:l,target:o,targetField:a})}if(t.output){const{nodeName:a,fieldName:i}=cr(t.output);a&&n.push({source:o,target:a,targetField:i})}if(t.outputs)for(const[a,i]of Object.entries(t.outputs)){if(!i)continue;const{nodeName:r,fieldName:l}=cr(i);r&&n.push({source:o,sourceField:a,target:r,targetField:l})}}function oC({type:t,uiNode:n,configNode:o,pluginData:a}){var s,c,u,f;const i=Wn(t),r=i==null?void 0:i.io;if(!r)return;const l={};if((s=r.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=r.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))}t==="vault"&&(l.output=Zw(a))}return Object.keys(l).length?l:void 0}function rC({type:t,configNode:n,pluginData:o}){return t==="vault"?Xw(o):n?tC(n):void 0}function aC(t){const n=e.computed(()=>{const d=new Map;return t.value.nodes.forEach(p=>d.set(p.id,p)),d}),o=e.computed(()=>t.value.edges),a=e.computed(()=>t.value.groups),i=e.computed(()=>Nc(o.value,a.value));function r(d){return ur(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 g=wc(p,d.sourceField)&&!La(p,d.sourceField),y=La(m,d.targetField);return g&&y?{source:d.target,sourceField:d.targetField,target:d.source,targetField:d.sourceField}:d}function s(d){const p=l(d),m=[],g=n.value.get(p.source),y=n.value.get(p.target);if(g||m.push("source node not found"),y||m.push("target node not found"),!g||!y)return{ok:!1,errors:m};La(g,p.sourceField)||m.push("source handle is not an output field"),wc(y,p.targetField)||m.push("target handle is not an input field"),y.name==="request"&&m.push('cannot target "request"'),g.name==="response"&&m.push('cannot source from "response"');const C=o.value.some(E=>E.target===p.target&&!E.targetField),b=o.value.some(E=>E.target===p.target&&!!E.targetField);(C&&p.targetField||b&&!p.targetField)&&m.push("cannot mix whole-node and field-level inputs on same target"),p.targetField&&o.value.some(E=>E.target===p.target&&E.targetField===p.targetField)&&m.push("target field already connected"),!p.targetField&&o.value.some(E=>E.target===p.target&&!E.targetField)&&m.push("target input already taken"),p.source===p.target&&m.push("self-loop not allowed");const h=r({source:p.source,target:p.target});return Ma(h)&&m.push("connection introduces a cycle"),m.length?{ok:!1,errors:m}:{ok:!0}}function c(){const d=[];for(const p of zn)[...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 Ma(r())&&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:ur}}const[Ic,iC]=Xe.createInjectionState(function(n,o={}){const a=e.ref(xc(n)),i=e.ref(),r=e.ref(),l=e.ref(!1),s=e.ref(!1),c=Jw(a,{capacity:200,clone:nn,onHistoryChange:H=>{var J,G;H!=="clear"&&((G=o.onChange)==null||G.call(o,Me(),Se(),ye(),(J=a.value.cacheConfig)==null?void 0:J.partial_id))}}),u=e.ref(!1),f=e.ref(new Set);function d(){a.value.pendingLayout=!1,c.commit("*")}function p(H=!0){a.value.pendingFitView!==H&&(a.value.pendingFitView=H,c.commit("*"))}const m=e.computed(()=>{const H={request:0,response:0};return a.value.nodes.forEach(J=>{xt(J.type)||H[J.phase]++}),H}),g=e.computed(()=>new Map(a.value.nodes.map(H=>[H.id,H]))),y=e.computed(()=>new Map(a.value.nodes.map(H=>[H.name,H]))),C=e.computed(()=>{const H=new Map,J=new Map;for(const G of a.value.edges)H.set(G.id,G),J.has(G.source)||J.set(G.source,new Set),J.get(G.source).add(G.id),J.has(G.target)||J.set(G.target,new Set),J.get(G.target).add(G.id);return{edgeMapById:H,edgeIdMapByNodeId:J}}),b=e.computed(()=>C.value.edgeMapById),h=e.computed(()=>C.value.edgeIdMapByNodeId),E=e.computed(()=>new Map(a.value.groups.map(H=>[H.id,H]))),k=e.computed(()=>new Set(a.value.nodes.map(H=>H.name))),_=Yw({state:a,groupMapById:E,getNodeById:S,history:c}),{canonicalizeConnection:w,validateConnection:x,validateGraph:O,isValidConnection:K,isValidVueFlowConnection:I}=aC(a);function S(H){return g.value.get(H)}function P(H){return y.value.get(H)}function F(H){return b.value.get(H)}function T(H){if(!h.value.has(H))return[];const J=[];return h.value.get(H).forEach(G=>{const ce=F(G);ce&&J.push(ce)}),J}function D(H){return T(H).filter((J=>J.target===H))}function U(H){return T(H).filter((J=>J.source===H))}const q=e.computed(()=>i.value?S(i.value):void 0);function L(H){i.value=H}function V(H){r.value=H}function R(H){if(xt(H.type))throw new Error("[createNode] implicit nodes are fixed.");return Sc({type:H.type,name:H.name||(xt(H.type)?void 0:Cc(H.type,k.value)),phase:H.phase,position:H.position,fields:H.fields,config:H.config})}function A(H,J=!0){const G=R(H);if(G)return a.value.nodes.push(G),J&&c.commit(),u.value=!0,G.id}function v(H,J,G=!0){const ce=S(H);if(!ce||xt(ce.type))return;const Z={...nn(ce),id:Hn("node"),name:Cc(ce.name,k.value),position:J??{x:ce.position.x+20,y:ce.position.y+20}},de=wo(Z.type);if(de.length&&Z.config){for(const Ie of de)delete Z.config[Ie];Object.keys(Z.config).length===0&&delete Z.config}return a.value.nodes.push(Z),G&&c.commit(),u.value=!0,Z.id}function z(H,J=!0){if(!S(H))return;a.value.edges=a.value.edges.filter(Z=>Z.source!==H&&Z.target!==H),_.clear(H,{commit:!1}),_.removeMember(H,{commit:!1}),a.value.nodes=a.value.nodes.filter(Z=>Z.id!==H),i.value===H&&(i.value=void 0);const ce=O();ce.ok||console.warn("[removeNode] topology invalid:",ce.errors.join("; ")),J&&c.commit()}function $(H,J,G=!0,ce){const Z=S(H);if(!Z)return;if(Ba(Z.name)){console.warn("[renameNode] implicit node name is reserved.");return}Z.name!==J&&(Z.name=J,G&&c.commit(ce))}function N(H,J,G=!0){const ce=S(H);ce&&(ce.position={...J},G&&c.commit())}function B(H,J,G=!0){const ce=E.value.get(H);if(!ce)return;const Z=ce.position;Z&&Z.x===J.x&&Z.y===J.y||(ce.position={...J},G&&c.commit())}function j(H,J,G=!0){const ce=E.value.get(H);if(!ce)return!1;const Z={...J.position},de={...J.dimensions},Ie=ce.position&&ce.position.x===Z.x&&ce.position.y===Z.y,ge=ce.dimensions&&ce.dimensions.width===de.width&&ce.dimensions.height===de.height;return Ie&&ge?!1:(ce.position=Z,ce.dimensions=de,G&&c.commit(),!0)}function W(H,J,G,ce=!0,Z){const de=S(H);if(!de)return;const Ie=G??!de.expanded[J];Ie!==!!de.expanded[J]&&(de.expanded[J]=Ie,ce&&c.commit(Z??`toggle:${H}:${J}`))}function X(H,J,G=!0,ce){const Z=S(H);Z&&(Z.config=nn(J),G&&c.commit(ce))}function ee(H,J,G,ce=!0){const Z=S(H);if(!Z)return;const de=Z.fields[J];if(de.some(Ie=>Ie.name===G)){console.warn(`[addField] field "${G}" already exists on ${J}.`);return}de.push({id:Hn("field"),name:G}),J==="input"?Z.fields.input=de:Z.fields.output=de,ce&&c.commit()}function oe(H,J,G,ce=!0){const Z=S(H);if(!Z)return;const de=Z.fields.input,Ie=Z.fields.output,ge=de.find(Pe=>Pe.id===J)??Ie.find(Pe=>Pe.id===J);ge&&(ge.name=G,ce&&c.commit())}function Q(H,J,G=!0,ce=!0){const Z=S(H);if(!Z)return;const de=Z.fields.input,Ie=Z.fields.output,ge=de.findIndex(se=>se.id===J);ge>=0&&de.splice(ge,1);const Pe=Ie.findIndex(se=>se.id===J);Pe>=0&&Ie.splice(Pe,1),Z.fields.input=de,Z.fields.output=Ie,G&&(a.value.edges=a.value.edges.filter(se=>se.sourceField!==J&&se.targetField!==J));const $e=O();$e.ok||console.warn("[removeField] topology invalid:",$e.errors.join("; ")),ce&&c.commit()}function te(H,J=!0){const G=w(H),ce=x(G);if(!ce.ok){console.warn("[connectEdge] invalid connection:",ce.errors.join("; "));return}const Z={id:Hn("edge"),...G};a.value.edges.push(Z);const de=O();if(!de.ok){a.value.edges.pop(),console.warn("[connectEdge] topology invalid:",de.errors.join("; "));return}return J&&c.commit(),Z.id}function ie(H,J,G=!0){re(H,!1),te(J,!1),G&&c.commit()}function re(H,J=!0){const G=a.value.edges.findIndex(de=>de.id===H);if(G<0)return;const ce=a.value.edges[G];a.value.edges.splice(G,1);const Z=O();if(!Z.ok){a.value.edges.splice(G,0,ce),console.warn("[disconnectEdge] topology invalid:",Z.errors.join("; "));return}J&&c.commit()}function Ce(H,J=!0){const G=D(H);for(const ce of G)re(ce.id,!1);J&&c.commit()}function pe(H,J=!0){const G=U(H);for(const ce of G)re(ce.id,!1);J&&c.commit()}function Me(){var J,G,ce,Z,de;const H=[];for(const Ie of a.value.nodes){if(xt(Ie.type))continue;let ge;const Pe={};let $e;const se={};for(const dt of a.value.edges.filter(ne=>ne.target===Ie.id)){const ne=S(dt.source);if(!ne)continue;const Ee=(J=fn(ne,"output",dt.sourceField))==null?void 0:J.name,be=Ee?`${ne.name}.${Ee}`:ne.name,ke=(G=fn(Ie,"input",dt.targetField))==null?void 0:G.name;ke?Pe[ke]=be:ge===void 0&&(ge=be)}for(const dt of a.value.edges.filter(ne=>ne.source===Ie.id)){const ne=S(dt.target);if(!ne)continue;const Ee=ne.type;if(!xt(Ee)||!((ce=sr[Ee].io)!=null&&ce.input))continue;const be=(Z=fn(ne,"input",dt.targetField))==null?void 0:Z.name,ke=be?`${ne.name}.${be}`:ne.name,he=(de=fn(Ie,"output",dt.sourceField))==null?void 0:de.name;he?se[he]=ke:$e===void 0&&($e=ke)}const ae={...nn(Ie.config),name:Ie.name,type:Ie.type},st=wo(Ie.type);if(st.length)for(const dt of st){const ne=ae[dt];if(!Array.isArray(ne))continue;const Ee=[];for(const be of ne){const ke=S(be);ke&&Ee.push(ke.name)}Ee.length?ae[dt]=Array.from(new Set(Ee)):delete ae[dt]}Object.keys(Pe).length>0?ae.inputs=Pe:ge!==void 0&&(ae.input=ge),Object.keys(se).length>0?ae.outputs=se:$e!==void 0&&(ae.output=$e),H.push(ae)}return H}function ue(){return a.value.nodes.map(H=>nn({name:H.name,phase:H.phase,position:{...H.position},expanded:{...H.expanded},fields:{input:H.fields.input.map(J=>J.name),output:H.fields.output.map(J=>J.name)}}))}function ye(){const H={},J=P("vault");if(J){const G=Qw(J.config);G&&Object.keys(G).length>0&&(H.vault=G)}if(a.value.cacheConfig){const{strategy:G,redis:ce,memory:Z}=a.value.cacheConfig;H.cache={strategy:G,redis:ce,memory:Z}}if(Object.keys(H).length!==0)return H}function fe(){const H=[];for(const J of a.value.groups){const G=S(J.ownerId);if(!G)continue;const ce=J.position;ce&&H.push({name:dr(G.name,J.branch),position:{...ce}})}return H}function Se(){return{nodes:ue(),groups:fe()}}function we(H,J){J&&c.commit(),a.value=xc(H,J),J||c.clear()}return{state:a,selection:i,portalSelection:r,modalOpen:l,skipValidation:u,invalidConfigNodeIds:f,propertiesPanelOpen:s,configNodeCounts:m,nodeMapById:g,nodeMapByName:y,edgeMapById:b,edgeIdMapByNodeId:h,groupMapById:E,getNodeById:S,getNodeByName:P,getEdgeById:F,getEdgesByNodeId:T,getInEdgesByNodeId:D,getOutEdgesByNodeId:U,selectedNode:q,selectNode:L,selectPortalEdge:V,createNode:R,addNode:A,duplicateNode:v,removeNode:z,renameNode:$,moveNode:N,moveGroup:B,setGroupLayout:j,toggleExpanded:W,replaceConfig:X,branchGroups:_,addField:ee,renameField:oe,removeField:Q,connectEdge:te,replaceConnection:ie,disconnectEdge:re,disconnectInEdges:Ce,disconnectOutEdges:pe,toConfigNodes:Me,toUINodes:ue,toUIGroups:fe,toUIData:Se,load:we,commit:c.commit,undo:c.undo,redo:c.redo,canUndo:c.canUndo,canRedo:c.canRedo,clear:c.clear,reset:c.reset,revert:c.revert,isValidConnection:K,isValidVueFlowConnection:I,validateGraph:()=>O(),clearPendingLayout:d,setPendingFitView:p}});function tt(){const t=iC();if(!t)throw new Error("Editor state is not provided. Ensure you are using provideEditorStore in a parent component.");return t}const{t:lC}=it.createI18n("en-us",ct),pr=Xe.createGlobalState(()=>{const t=Xe.useLocalStorage("datakit-editor-mode","flow"),n=Xe.useLocalStorage("datakit-editor-sidebar-expanded",!0),o=Xe.useLocalStorage("datakit-editor-response-panel-collapsed",!1);return{editorMode:t,sidePanelExpanded:n,responsePanelCollapsed:o}});function sC({enabled:t,confirm:n}){hn.onBeforeRouteLeave(()=>e.toValue(t)?n?n():window.confirm(lC("plugins.free-form.datakit.flow_editor.leave_confirm")):!0);const o=a=>{e.toValue(t)&&a.preventDefault()};Xe.useEventListener("beforeunload",o)}const cC=["undo","redo","duplicate","cut","copy","paste"],Pc=()=>{};function dC(t){const n=t;return n?!!n.closest('input, textarea, [contenteditable]:not([contenteditable="false"])'):!1}function uC(t){if(!(t.metaKey||t.ctrlKey))return;switch(t.key.toLowerCase()){case"z":return t.shiftKey?"redo":"undo";case"y":return"redo";case"d":return"duplicate";case"x":return"cut";case"c":return"copy";case"v":return"paste"}}const pC=Xe.createSharedComposable(()=>{const t=new Set;Xe.useEventListener("keydown",o=>{if(dC(o.target))return;const a=uC(o);if(a)for(const i of t){if(!e.toValue(i.enabled))continue;const r=i[a];if(r){if(o.defaultPrevented){e.warn(`[useHotkeys] event for "${a}" was already defaultPrevented. Hotkey ignored.`);return}o.preventDefault(),r();return}}},{passive:!1});function n(o){if(!cC.some(i=>typeof o[i]=="function"))return Pc;const a={enabled:o.enabled??!0,...o};return t.add(a),()=>t.delete(a)}return{subscribe:n}});function Tc(t={}){if(typeof window>"u")return Pc;const n=pC().subscribe(t);return e.onScopeDispose(n),n}const Oc=44,fC=220,Vc=366,mC=1e3,gC=Oc+parseFloat(Hl),fr=1,hC=0,yC=1,_C=2,bC=3,Yn=parseInt(wy,10),Co="application/x-datakit+json",mr={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"]},mn={padding:80,gaps:{nodes:60,edges:80,ranks:60}},kC=1600,wC=1.2,CC=0,EC=200,Bc=Symbol("confirm-modal"),Jn="{key}",Vn={"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}},gr=Object.keys(Vn).filter(t=>t.includes(Jn)).map(t=>t.replace(Jn,""));function Ka(t){if(!t||!No(t))return;const n=gr.find(o=>t.startsWith(o));if(n)return t.slice(n.length).replace(Jn,"")}function Eo(t){if(!t)return null;const n=gr.find(o=>t.startsWith(o));return n||t}function No(t){return t?gr.some(n=>t.startsWith(n)):!1}function Rc(t){return t?No(t)?Eo(t)+Jn:t:null}function va(t){var o;if(!t)return!1;const n=Rc(t);return n?((o=Vn[n])==null?void 0:o.readable)??!1:!1}function Ua(t){var o;if(!t)return!1;const n=Rc(t);return n?((o=Vn[n])==null?void 0:o.writable)??!1:!1}function hr(t,n,o){const a=n?fn(t,o,n):void 0;return`${t.name}${a?`.${a.name}`:""}`}function xo(t,n){const o=n(t.source),a=n(t.target);return[hr(o,t.sourceField,"output"),hr(a,t.targetField,"input")]}function qa(t,n,o,a,i){const r=i(t),l=i(o);return[hr(r,n,"output"),hr(l,a,"input")]}function $c(t){if(t.length===0)throw new Error("getBoundingRect requires at least one rect");let n=Number.POSITIVE_INFINITY,o=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,i=Number.NEGATIVE_INFINITY;for(const{x:r,y:l,width:s,height:c}of t){if(![r,l,s,c].every(Number.isFinite))throw new Error("Rect values must be finite numbers");if(s<0||c<0)throw new RangeError("Rect width and height must be non-negative");const u=r+s,f=l+c;if(!Number.isFinite(u)||!Number.isFinite(f))throw new RangeError("Rect boundaries must be finite numbers");r<n&&(n=r),l<o&&(o=l),u>a&&(a=u),f>i&&(i=f)}return{x:n,y:o,width:a-n,height:i-o}}var Ge=(t,n)=>()=>(n||t((n={exports:{}}).exports,n),n.exports),Mt=Ge((t,n)=>{var o=Object.defineProperty,a=(F,T,D)=>T in F?o(F,T,{enumerable:!0,configurable:!0,writable:!0,value:D}):F[T]=D,i=(F,T)=>()=>(T||F((T={exports:{}}).exports,T),T.exports),r=(F,T,D)=>a(F,typeof T!="symbol"?T+"":T,D),l=i((F,T)=>{var D="\0",U="\0",q="",L=class{constructor($){r(this,"_isDirected",!0),r(this,"_isMultigraph",!1),r(this,"_isCompound",!1),r(this,"_label"),r(this,"_defaultNodeLabelFn",()=>{}),r(this,"_defaultEdgeLabelFn",()=>{}),r(this,"_nodes",{}),r(this,"_in",{}),r(this,"_preds",{}),r(this,"_out",{}),r(this,"_sucs",{}),r(this,"_edgeObjs",{}),r(this,"_edgeLabels",{}),r(this,"_nodeCount",0),r(this,"_edgeCount",0),r(this,"_parent"),r(this,"_children"),$&&(this._isDirected=Object.hasOwn($,"directed")?$.directed:!0,this._isMultigraph=Object.hasOwn($,"multigraph")?$.multigraph:!1,this._isCompound=Object.hasOwn($,"compound")?$.compound:!1),this._isCompound&&(this._parent={},this._children={},this._children[U]={})}isDirected(){return this._isDirected}isMultigraph(){return this._isMultigraph}isCompound(){return this._isCompound}setGraph($){return this._label=$,this}graph(){return this._label}setDefaultNodeLabel($){return this._defaultNodeLabelFn=$,typeof $!="function"&&(this._defaultNodeLabelFn=()=>$),this}nodeCount(){return this._nodeCount}nodes(){return Object.keys(this._nodes)}sources(){var $=this;return this.nodes().filter(N=>Object.keys($._in[N]).length===0)}sinks(){var $=this;return this.nodes().filter(N=>Object.keys($._out[N]).length===0)}setNodes($,N){var B=arguments,j=this;return $.forEach(function(W){B.length>1?j.setNode(W,N):j.setNode(W)}),this}setNode($,N){return Object.hasOwn(this._nodes,$)?(arguments.length>1&&(this._nodes[$]=N),this):(this._nodes[$]=arguments.length>1?N:this._defaultNodeLabelFn($),this._isCompound&&(this._parent[$]=U,this._children[$]={},this._children[U][$]=!0),this._in[$]={},this._preds[$]={},this._out[$]={},this._sucs[$]={},++this._nodeCount,this)}node($){return this._nodes[$]}hasNode($){return Object.hasOwn(this._nodes,$)}removeNode($){var N=this;if(Object.hasOwn(this._nodes,$)){var B=j=>N.removeEdge(N._edgeObjs[j]);delete this._nodes[$],this._isCompound&&(this._removeFromParentsChildList($),delete this._parent[$],this.children($).forEach(function(j){N.setParent(j)}),delete this._children[$]),Object.keys(this._in[$]).forEach(B),delete this._in[$],delete this._preds[$],Object.keys(this._out[$]).forEach(B),delete this._out[$],delete this._sucs[$],--this._nodeCount}return this}setParent($,N){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(N===void 0)N=U;else{N+="";for(var B=N;B!==void 0;B=this.parent(B))if(B===$)throw new Error("Setting "+N+" as parent of "+$+" would create a cycle");this.setNode(N)}return this.setNode($),this._removeFromParentsChildList($),this._parent[$]=N,this._children[N][$]=!0,this}_removeFromParentsChildList($){delete this._children[this._parent[$]][$]}parent($){if(this._isCompound){var N=this._parent[$];if(N!==U)return N}}children($=U){if(this._isCompound){var N=this._children[$];if(N)return Object.keys(N)}else{if($===U)return this.nodes();if(this.hasNode($))return[]}}predecessors($){var N=this._preds[$];if(N)return Object.keys(N)}successors($){var N=this._sucs[$];if(N)return Object.keys(N)}neighbors($){var N=this.predecessors($);if(N){let j=new Set(N);for(var B of this.successors($))j.add(B);return Array.from(j.values())}}isLeaf($){var N;return this.isDirected()?N=this.successors($):N=this.neighbors($),N.length===0}filterNodes($){var N=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});N.setGraph(this.graph());var B=this;Object.entries(this._nodes).forEach(function([X,ee]){$(X)&&N.setNode(X,ee)}),Object.values(this._edgeObjs).forEach(function(X){N.hasNode(X.v)&&N.hasNode(X.w)&&N.setEdge(X,B.edge(X))});var j={};function W(X){var ee=B.parent(X);return ee===void 0||N.hasNode(ee)?(j[X]=ee,ee):ee in j?j[ee]:W(ee)}return this._isCompound&&N.nodes().forEach(X=>N.setParent(X,W(X))),N}setDefaultEdgeLabel($){return this._defaultEdgeLabelFn=$,typeof $!="function"&&(this._defaultEdgeLabelFn=()=>$),this}edgeCount(){return this._edgeCount}edges(){return Object.values(this._edgeObjs)}setPath($,N){var B=this,j=arguments;return $.reduce(function(W,X){return j.length>1?B.setEdge(W,X,N):B.setEdge(W,X),X}),this}setEdge(){var $,N,B,j,W=!1,X=arguments[0];typeof X=="object"&&X!==null&&"v"in X?($=X.v,N=X.w,B=X.name,arguments.length===2&&(j=arguments[1],W=!0)):($=X,N=arguments[1],B=arguments[3],arguments.length>2&&(j=arguments[2],W=!0)),$=""+$,N=""+N,B!==void 0&&(B=""+B);var ee=A(this._isDirected,$,N,B);if(Object.hasOwn(this._edgeLabels,ee))return W&&(this._edgeLabels[ee]=j),this;if(B!==void 0&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode($),this.setNode(N),this._edgeLabels[ee]=W?j:this._defaultEdgeLabelFn($,N,B);var oe=v(this._isDirected,$,N,B);return $=oe.v,N=oe.w,Object.freeze(oe),this._edgeObjs[ee]=oe,V(this._preds[N],$),V(this._sucs[$],N),this._in[N][ee]=oe,this._out[$][ee]=oe,this._edgeCount++,this}edge($,N,B){var j=arguments.length===1?z(this._isDirected,arguments[0]):A(this._isDirected,$,N,B);return this._edgeLabels[j]}edgeAsObj(){let $=this.edge(...arguments);return typeof $!="object"?{label:$}:$}hasEdge($,N,B){var j=arguments.length===1?z(this._isDirected,arguments[0]):A(this._isDirected,$,N,B);return Object.hasOwn(this._edgeLabels,j)}removeEdge($,N,B){var j=arguments.length===1?z(this._isDirected,arguments[0]):A(this._isDirected,$,N,B),W=this._edgeObjs[j];return W&&($=W.v,N=W.w,delete this._edgeLabels[j],delete this._edgeObjs[j],R(this._preds[N],$),R(this._sucs[$],N),delete this._in[N][j],delete this._out[$][j],this._edgeCount--),this}inEdges($,N){return this.isDirected()?this.filterEdges(this._in[$],$,N):this.nodeEdges($,N)}outEdges($,N){return this.isDirected()?this.filterEdges(this._out[$],$,N):this.nodeEdges($,N)}nodeEdges($,N){if($ in this._nodes)return this.filterEdges({...this._in[$],...this._out[$]},$,N)}filterEdges($,N,B){if($){var j=Object.values($);return B?j.filter(function(W){return W.v===N&&W.w===B||W.v===B&&W.w===N}):j}}};function V($,N){$[N]?$[N]++:$[N]=1}function R($,N){--$[N]||delete $[N]}function A($,N,B,j){var W=""+N,X=""+B;if(!$&&W>X){var ee=W;W=X,X=ee}return W+q+X+q+(j===void 0?D:j)}function v($,N,B,j){var W=""+N,X=""+B;if(!$&&W>X){var ee=W;W=X,X=ee}var oe={v:W,w:X};return j&&(oe.name=j),oe}function z($,N){return A($,N.v,N.w,N.name)}T.exports=L}),s=i((F,T)=>{T.exports="3.0.2"}),c=i((F,T)=>{T.exports={Graph:l(),version:s()}}),u=i((F,T)=>{var D=l();T.exports={write:U,read:V};function U(R){var A={options:{directed:R.isDirected(),multigraph:R.isMultigraph(),compound:R.isCompound()},nodes:q(R),edges:L(R)};return R.graph()!==void 0&&(A.value=structuredClone(R.graph())),A}function q(R){return R.nodes().map(function(A){var v=R.node(A),z=R.parent(A),$={v:A};return v!==void 0&&($.value=v),z!==void 0&&($.parent=z),$})}function L(R){return R.edges().map(function(A){var v=R.edge(A),z={v:A.v,w:A.w};return A.name!==void 0&&(z.name=A.name),v!==void 0&&(z.value=v),z})}function V(R){var A=new D(R.options).setGraph(R.value);return R.nodes.forEach(function(v){A.setNode(v.v,v.value),v.parent&&A.setParent(v.v,v.parent)}),R.edges.forEach(function(v){A.setEdge({v:v.v,w:v.w,name:v.name},v.value)}),A}}),f=i((F,T)=>{T.exports=U;var D=()=>1;function U(L,V,R,A){return q(L,String(V),R||D,A||function(v){return L.outEdges(v)})}function q(L,V,R,A){var v={},z=!0,$=0,N=L.nodes(),B=function(ee){var oe=R(ee);v[ee.v].distance+oe<v[ee.w].distance&&(v[ee.w]={distance:v[ee.v].distance+oe,predecessor:ee.v},z=!0)},j=function(){N.forEach(function(ee){A(ee).forEach(function(oe){var Q=oe.v===ee?oe.v:oe.w,te=Q===oe.v?oe.w:oe.v;B({v:Q,w:te})})})};N.forEach(function(ee){var oe=ee===V?0:Number.POSITIVE_INFINITY;v[ee]={distance:oe}});for(var W=N.length,X=1;X<W&&(z=!1,$++,j(),!!z);X++);if($===W-1&&(z=!1,j(),z))throw new Error("The graph contains a negative weight cycle");return v}}),d=i((F,T)=>{T.exports=D;function D(U){var q={},L=[],V;function R(A){Object.hasOwn(q,A)||(q[A]=!0,V.push(A),U.successors(A).forEach(R),U.predecessors(A).forEach(R))}return U.nodes().forEach(function(A){V=[],R(A),V.length&&L.push(V)}),L}}),p=i((F,T)=>{var D=class{constructor(){r(this,"_arr",[]),r(this,"_keyIndices",{})}size(){return this._arr.length}keys(){return this._arr.map(function(U){return U.key})}has(U){return Object.hasOwn(this._keyIndices,U)}priority(U){var q=this._keyIndices[U];if(q!==void 0)return this._arr[q].priority}min(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key}add(U,q){var L=this._keyIndices;if(U=String(U),!Object.hasOwn(L,U)){var V=this._arr,R=V.length;return L[U]=R,V.push({key:U,priority:q}),this._decrease(R),!0}return!1}removeMin(){this._swap(0,this._arr.length-1);var U=this._arr.pop();return delete this._keyIndices[U.key],this._heapify(0),U.key}decrease(U,q){var L=this._keyIndices[U];if(q>this._arr[L].priority)throw new Error("New priority is greater than current priority. Key: "+U+" Old: "+this._arr[L].priority+" New: "+q);this._arr[L].priority=q,this._decrease(L)}_heapify(U){var q=this._arr,L=2*U,V=L+1,R=U;L<q.length&&(R=q[L].priority<q[R].priority?L:R,V<q.length&&(R=q[V].priority<q[R].priority?V:R),R!==U&&(this._swap(U,R),this._heapify(R)))}_decrease(U){for(var q=this._arr,L=q[U].priority,V;U!==0&&(V=U>>1,!(q[V].priority<L));)this._swap(U,V),U=V}_swap(U,q){var L=this._arr,V=this._keyIndices,R=L[U],A=L[q];L[U]=A,L[q]=R,V[A.key]=U,V[R.key]=q}};T.exports=D}),m=i((F,T)=>{var D=p();T.exports=q;var U=()=>1;function q(V,R,A,v){var z=function($){return V.outEdges($)};return L(V,String(R),A||U,v||z)}function L(V,R,A,v){var z={},$=new D,N,B,j=function(W){var X=W.v!==N?W.v:W.w,ee=z[X],oe=A(W),Q=B.distance+oe;if(oe<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+W+" Weight: "+oe);Q<ee.distance&&(ee.distance=Q,ee.predecessor=N,$.decrease(X,Q))};for(V.nodes().forEach(function(W){var X=W===R?0:Number.POSITIVE_INFINITY;z[W]={distance:X},$.add(W,X)});$.size()>0&&(N=$.removeMin(),B=z[N],B.distance!==Number.POSITIVE_INFINITY);)v(N).forEach(j);return z}}),g=i((F,T)=>{var D=m();T.exports=U;function U(q,L,V){return q.nodes().reduce(function(R,A){return R[A]=D(q,A,L,V),R},{})}}),y=i((F,T)=>{T.exports=D;function D(q,L,V){if(q[L].predecessor!==void 0)throw new Error("Invalid source vertex");if(q[V].predecessor===void 0&&V!==L)throw new Error("Invalid destination vertex");return{weight:q[V].distance,path:U(q,L,V)}}function U(q,L,V){for(var R=[],A=V;A!==L;)R.push(A),A=q[A].predecessor;return R.push(L),R.reverse()}}),C=i((F,T)=>{T.exports=D;function D(U){var q=0,L=[],V={},R=[];function A(v){var z=V[v]={onStack:!0,lowlink:q,index:q++};if(L.push(v),U.successors(v).forEach(function(B){Object.hasOwn(V,B)?V[B].onStack&&(z.lowlink=Math.min(z.lowlink,V[B].index)):(A(B),z.lowlink=Math.min(z.lowlink,V[B].lowlink))}),z.lowlink===z.index){var $=[],N;do N=L.pop(),V[N].onStack=!1,$.push(N);while(v!==N);R.push($)}}return U.nodes().forEach(function(v){Object.hasOwn(V,v)||A(v)}),R}}),b=i((F,T)=>{var D=C();T.exports=U;function U(q){return D(q).filter(function(L){return L.length>1||L.length===1&&q.hasEdge(L[0],L[0])})}}),h=i((F,T)=>{T.exports=U;var D=()=>1;function U(L,V,R){return q(L,V||D,R||function(A){return L.outEdges(A)})}function q(L,V,R){var A={},v=L.nodes();return v.forEach(function(z){A[z]={},A[z][z]={distance:0},v.forEach(function($){z!==$&&(A[z][$]={distance:Number.POSITIVE_INFINITY})}),R(z).forEach(function($){var N=$.v===z?$.w:$.v,B=V($);A[z][N]={distance:B,predecessor:z}})}),v.forEach(function(z){var $=A[z];v.forEach(function(N){var B=A[N];v.forEach(function(j){var W=B[z],X=$[j],ee=B[j],oe=W.distance+X.distance;oe<ee.distance&&(ee.distance=oe,ee.predecessor=X.predecessor)})})}),A}}),E=i((F,T)=>{function D(q){var L={},V={},R=[];function A(v){if(Object.hasOwn(V,v))throw new U;Object.hasOwn(L,v)||(V[v]=!0,L[v]=!0,q.predecessors(v).forEach(A),delete V[v],R.push(v))}if(q.sinks().forEach(A),Object.keys(L).length!==q.nodeCount())throw new U;return R}var U=class extends Error{constructor(){super(...arguments)}};T.exports=D,D.CycleException=U}),k=i((F,T)=>{var D=E();T.exports=U;function U(q){try{D(q)}catch(L){if(L instanceof D.CycleException)return!1;throw L}return!0}}),_=i((F,T)=>{T.exports=D;function D(q,L,V,R,A){Array.isArray(L)||(L=[L]);var v=(q.isDirected()?q.successors:q.neighbors).bind(q),z={};return L.forEach(function($){if(!q.hasNode($))throw new Error("Graph does not have node: "+$);A=U(q,$,V==="post",z,v,R,A)}),A}function U(q,L,V,R,A,v,z){return Object.hasOwn(R,L)||(R[L]=!0,V||(z=v(z,L)),A(L).forEach(function($){z=U(q,$,V,R,A,v,z)}),V&&(z=v(z,L))),z}}),w=i((F,T)=>{var D=_();T.exports=U;function U(q,L,V){return D(q,L,V,function(R,A){return R.push(A),R},[])}}),x=i((F,T)=>{var D=w();T.exports=U;function U(q,L){return D(q,L,"post")}}),O=i((F,T)=>{var D=w();T.exports=U;function U(q,L){return D(q,L,"pre")}}),K=i((F,T)=>{var D=l(),U=p();T.exports=q;function q(L,V){var R=new D,A={},v=new U,z;function $(B){var j=B.v===z?B.w:B.v,W=v.priority(j);if(W!==void 0){var X=V(B);X<W&&(A[j]=z,v.decrease(j,X))}}if(L.nodeCount()===0)return R;L.nodes().forEach(function(B){v.add(B,Number.POSITIVE_INFINITY),R.setNode(B)}),v.decrease(L.nodes()[0],0);for(var N=!1;v.size()>0;){if(z=v.removeMin(),Object.hasOwn(A,z))R.setEdge(z,A[z]);else{if(N)throw new Error("Input graph is not connected: "+L);N=!0}L.nodeEdges(z).forEach($)}return R}}),I=i((F,T)=>{var D=m(),U=f();T.exports=q;function q(V,R,A,v){return L(V,R,A,v||function(z){return V.outEdges(z)})}function L(V,R,A,v){if(A===void 0)return D(V,R,A,v);for(var z=!1,$=V.nodes(),N=0;N<$.length;N++){for(var B=v($[N]),j=0;j<B.length;j++){var W=B[j],X=W.v===$[N]?W.v:W.w,ee=X===W.v?W.w:W.v;A({v:X,w:ee})<0&&(z=!0)}if(z)return U(V,R,A,v)}return D(V,R,A,v)}}),S=i((F,T)=>{T.exports={bellmanFord:f(),components:d(),dijkstra:m(),dijkstraAll:g(),extractPath:y(),findCycles:b(),floydWarshall:h(),isAcyclic:k(),postorder:x(),preorder:O(),prim:K(),shortestPaths:I(),reduce:_(),tarjan:C(),topsort:E()}}),P=c();n.exports={Graph:P.Graph,json:u(),alg:S(),version:P.version}}),NC=Ge((t,n)=>{var o=class{constructor(){let r={};r._next=r._prev=r,this._sentinel=r}dequeue(){let r=this._sentinel,l=r._prev;if(l!==r)return a(l),l}enqueue(r){let l=this._sentinel;r._prev&&r._next&&a(r),r._next=l._next,l._next._prev=r,l._next=r,r._prev=l}toString(){let r=[],l=this._sentinel,s=l._prev;for(;s!==l;)r.push(JSON.stringify(s,i)),s=s._prev;return"["+r.join(", ")+"]"}};function a(r){r._prev._next=r._next,r._next._prev=r._prev,delete r._next,delete r._prev}function i(r,l){if(r!=="_next"&&r!=="_prev")return l}n.exports=o}),xC=Ge((t,n)=>{var o=Mt().Graph,a=NC();n.exports=r;var i=()=>1;function r(d,p){if(d.nodeCount()<=1)return[];let m=c(d,p||i);return l(m.graph,m.buckets,m.zeroIdx).flatMap(g=>d.outEdges(g.v,g.w))}function l(d,p,m){let g=[],y=p[p.length-1],C=p[0],b;for(;d.nodeCount();){for(;b=C.dequeue();)s(d,p,m,b);for(;b=y.dequeue();)s(d,p,m,b);if(d.nodeCount()){for(let h=p.length-2;h>0;--h)if(b=p[h].dequeue(),b){g=g.concat(s(d,p,m,b,!0));break}}}return g}function s(d,p,m,g,y){let C=y?[]:void 0;return d.inEdges(g.v).forEach(b=>{let h=d.edge(b),E=d.node(b.v);y&&C.push({v:b.v,w:b.w}),E.out-=h,u(p,m,E)}),d.outEdges(g.v).forEach(b=>{let h=d.edge(b),E=b.w,k=d.node(E);k.in-=h,u(p,m,k)}),d.removeNode(g.v),C}function c(d,p){let m=new o,g=0,y=0;d.nodes().forEach(h=>{m.setNode(h,{v:h,in:0,out:0})}),d.edges().forEach(h=>{let E=m.edge(h.v,h.w)||0,k=p(h),_=E+k;m.setEdge(h.v,h.w,_),y=Math.max(y,m.node(h.v).out+=k),g=Math.max(g,m.node(h.w).in+=k)});let C=f(y+g+3).map(()=>new a),b=g+1;return m.nodes().forEach(h=>{u(C,b,m.node(h))}),{graph:m,buckets:C,zeroIdx:b}}function u(d,p,m){m.out?m.in?d[m.out-m.in+p].enqueue(m):d[d.length-1].enqueue(m):d[0].enqueue(m)}function f(d){let p=[];for(let m=0;m<d;m++)p.push(m);return p}}),at=Ge((t,n)=>{var o=Mt().Graph;n.exports={addBorderNode:p,addDummyNode:a,applyWithChunking:y,asNonCompoundGraph:r,buildLayerMatrix:u,intersectRect:c,mapValues:O,maxRank:C,normalizeRanks:f,notime:E,partition:b,pick:x,predecessorWeights:s,range:w,removeEmptyRanks:d,simplify:i,successorWeights:l,time:h,uniqueId:_,zipObject:K};function a(I,S,P,F){for(var T=F;I.hasNode(T);)T=_(F);return P.dummy=S,I.setNode(T,P),T}function i(I){let S=new o().setGraph(I.graph());return I.nodes().forEach(P=>S.setNode(P,I.node(P))),I.edges().forEach(P=>{let F=S.edge(P.v,P.w)||{weight:0,minlen:1},T=I.edge(P);S.setEdge(P.v,P.w,{weight:F.weight+T.weight,minlen:Math.max(F.minlen,T.minlen)})}),S}function r(I){let S=new o({multigraph:I.isMultigraph()}).setGraph(I.graph());return I.nodes().forEach(P=>{I.children(P).length||S.setNode(P,I.node(P))}),I.edges().forEach(P=>{S.setEdge(P,I.edge(P))}),S}function l(I){let S=I.nodes().map(P=>{let F={};return I.outEdges(P).forEach(T=>{F[T.w]=(F[T.w]||0)+I.edge(T).weight}),F});return K(I.nodes(),S)}function s(I){let S=I.nodes().map(P=>{let F={};return I.inEdges(P).forEach(T=>{F[T.v]=(F[T.v]||0)+I.edge(T).weight}),F});return K(I.nodes(),S)}function c(I,S){let P=I.x,F=I.y,T=S.x-P,D=S.y-F,U=I.width/2,q=I.height/2;if(!T&&!D)throw new Error("Not possible to find intersection inside of the rectangle");let L,V;return Math.abs(D)*U>Math.abs(T)*q?(D<0&&(q=-q),L=q*T/D,V=q):(T<0&&(U=-U),L=U,V=U*D/T),{x:P+L,y:F+V}}function u(I){let S=w(C(I)+1).map(()=>[]);return I.nodes().forEach(P=>{let F=I.node(P),T=F.rank;T!==void 0&&(S[T][F.order]=P)}),S}function f(I){let S=I.nodes().map(F=>{let T=I.node(F).rank;return T===void 0?Number.MAX_VALUE:T}),P=y(Math.min,S);I.nodes().forEach(F=>{let T=I.node(F);Object.hasOwn(T,"rank")&&(T.rank-=P)})}function d(I){let S=I.nodes().map(U=>I.node(U).rank).filter(U=>U!==void 0),P=y(Math.min,S),F=[];I.nodes().forEach(U=>{let q=I.node(U).rank-P;F[q]||(F[q]=[]),F[q].push(U)});let T=0,D=I.graph().nodeRankFactor;Array.from(F).forEach((U,q)=>{U===void 0&&q%D!==0?--T:U!==void 0&&T&&U.forEach(L=>I.node(L).rank+=T)})}function p(I,S,P,F){let T={width:0,height:0};return arguments.length>=4&&(T.rank=P,T.order=F),a(I,"border",T,S)}function m(I,S=g){let P=[];for(let F=0;F<I.length;F+=S){let T=I.slice(F,F+S);P.push(T)}return P}var g=65535;function y(I,S){if(S.length>g){let P=m(S);return I.apply(null,P.map(F=>I.apply(null,F)))}else return I.apply(null,S)}function C(I){let S=I.nodes().map(P=>{let F=I.node(P).rank;return F===void 0?Number.MIN_VALUE:F});return y(Math.max,S)}function b(I,S){let P={lhs:[],rhs:[]};return I.forEach(F=>{S(F)?P.lhs.push(F):P.rhs.push(F)}),P}function h(I,S){let P=Date.now();try{return S()}finally{console.log(I+" time: "+(Date.now()-P)+"ms")}}function E(I,S){return S()}var k=0;function _(I){var S=++k;return I+(""+S)}function w(I,S,P=1){S==null&&(S=I,I=0);let F=D=>D<S;P<0&&(F=D=>S<D);let T=[];for(let D=I;F(D);D+=P)T.push(D);return T}function x(I,S){let P={};for(let F of S)I[F]!==void 0&&(P[F]=I[F]);return P}function O(I,S){let P=S;return typeof S=="string"&&(P=F=>F[S]),Object.entries(I).reduce((F,[T,D])=>(F[T]=P(D,T),F),{})}function K(I,S){return I.reduce((P,F,T)=>(P[F]=S[T],P),{})}}),SC=Ge((t,n)=>{var o=xC(),a=at().uniqueId;n.exports={run:i,undo:l};function i(s){(s.graph().acyclicer==="greedy"?o(s,c(s)):r(s)).forEach(u=>{let f=s.edge(u);s.removeEdge(u),f.forwardName=u.name,f.reversed=!0,s.setEdge(u.w,u.v,f,a("rev"))});function c(u){return f=>u.edge(f).weight}}function r(s){let c=[],u={},f={};function d(p){Object.hasOwn(f,p)||(f[p]=!0,u[p]=!0,s.outEdges(p).forEach(m=>{Object.hasOwn(u,m.w)?c.push(m):d(m.w)}),delete u[p])}return s.nodes().forEach(d),c}function l(s){s.edges().forEach(c=>{let u=s.edge(c);if(u.reversed){s.removeEdge(c);let f=u.forwardName;delete u.reversed,delete u.forwardName,s.setEdge(c.w,c.v,u,f)}})}}),AC=Ge((t,n)=>{var o=at();n.exports={run:a,undo:r};function a(l){l.graph().dummyChains=[],l.edges().forEach(s=>i(l,s))}function i(l,s){let c=s.v,u=l.node(c).rank,f=s.w,d=l.node(f).rank,p=s.name,m=l.edge(s),g=m.labelRank;if(d===u+1)return;l.removeEdge(s);let y,C,b;for(b=0,++u;u<d;++b,++u)m.points=[],C={width:0,height:0,edgeLabel:m,edgeObj:s,rank:u},y=o.addDummyNode(l,"edge",C,"_d"),u===g&&(C.width=m.width,C.height=m.height,C.dummy="edge-label",C.labelpos=m.labelpos),l.setEdge(c,y,{weight:m.weight},p),b===0&&l.graph().dummyChains.push(y),c=y;l.setEdge(c,f,{weight:m.weight},p)}function r(l){l.graph().dummyChains.forEach(s=>{let c=l.node(s),u=c.edgeLabel,f;for(l.setEdge(c.edgeObj,u);c.dummy;)f=l.successors(s)[0],l.removeNode(s),u.points.push({x:c.x,y:c.y}),c.dummy==="edge-label"&&(u.x=c.x,u.y=c.y,u.width=c.width,u.height=c.height),s=f,c=l.node(s)})}}),yr=Ge((t,n)=>{var{applyWithChunking:o}=at();n.exports={longestPath:a,slack:i};function a(r){var l={};function s(c){var u=r.node(c);if(Object.hasOwn(l,c))return u.rank;l[c]=!0;let f=r.outEdges(c).map(p=>p==null?Number.POSITIVE_INFINITY:s(p.w)-r.edge(p).minlen);var d=o(Math.min,f);return d===Number.POSITIVE_INFINITY&&(d=0),u.rank=d}r.sources().forEach(s)}function i(r,l){return r.node(l.w).rank-r.node(l.v).rank-r.edge(l).minlen}}),Fc=Ge((t,n)=>{var o=Mt().Graph,a=yr().slack;n.exports=i;function i(c){var u=new o({directed:!1}),f=c.nodes()[0],d=c.nodeCount();u.setNode(f,{});for(var p,m;r(u,c)<d;)p=l(u,c),m=u.hasNode(p.v)?a(c,p):-a(c,p),s(u,c,m);return u}function r(c,u){function f(d){u.nodeEdges(d).forEach(p=>{var m=p.v,g=d===m?p.w:m;!c.hasNode(g)&&!a(u,p)&&(c.setNode(g,{}),c.setEdge(d,g,{}),f(g))})}return c.nodes().forEach(f),c.nodeCount()}function l(c,u){return u.edges().reduce((f,d)=>{let p=Number.POSITIVE_INFINITY;return c.hasNode(d.v)!==c.hasNode(d.w)&&(p=a(u,d)),p<f[0]?[p,d]:f},[Number.POSITIVE_INFINITY,null])[1]}function s(c,u,f){c.nodes().forEach(d=>u.node(d).rank+=f)}}),IC=Ge((t,n)=>{var o=Fc(),a=yr().slack,i=yr().longestPath,r=Mt().alg.preorder,l=Mt().alg.postorder,s=at().simplify;n.exports=c,c.initLowLimValues=p,c.initCutValues=u,c.calcCutValue=d,c.leaveEdge=g,c.enterEdge=y,c.exchangeEdges=C;function c(k){k=s(k),i(k);var _=o(k);p(_),u(_,k);for(var w,x;w=g(_);)x=y(_,k,w),C(_,k,w,x)}function u(k,_){var w=l(k,k.nodes());w=w.slice(0,w.length-1),w.forEach(x=>f(k,_,x))}function f(k,_,w){var x=k.node(w),O=x.parent;k.edge(w,O).cutvalue=d(k,_,w)}function d(k,_,w){var x=k.node(w),O=x.parent,K=!0,I=_.edge(w,O),S=0;return I||(K=!1,I=_.edge(O,w)),S=I.weight,_.nodeEdges(w).forEach(P=>{var F=P.v===w,T=F?P.w:P.v;if(T!==O){var D=F===K,U=_.edge(P).weight;if(S+=D?U:-U,h(k,w,T)){var q=k.edge(w,T).cutvalue;S+=D?-q:q}}}),S}function p(k,_){arguments.length<2&&(_=k.nodes()[0]),m(k,{},1,_)}function m(k,_,w,x,O){var K=w,I=k.node(x);return _[x]=!0,k.neighbors(x).forEach(S=>{Object.hasOwn(_,S)||(w=m(k,_,w,S,x))}),I.low=K,I.lim=w++,O?I.parent=O:delete I.parent,w}function g(k){return k.edges().find(_=>k.edge(_).cutvalue<0)}function y(k,_,w){var x=w.v,O=w.w;_.hasEdge(x,O)||(x=w.w,O=w.v);var K=k.node(x),I=k.node(O),S=K,P=!1;K.lim>I.lim&&(S=I,P=!0);var F=_.edges().filter(T=>P===E(k,k.node(T.v),S)&&P!==E(k,k.node(T.w),S));return F.reduce((T,D)=>a(_,D)<a(_,T)?D:T)}function C(k,_,w,x){var O=w.v,K=w.w;k.removeEdge(O,K),k.setEdge(x.v,x.w,{}),p(k),u(k,_),b(k,_)}function b(k,_){var w=k.nodes().find(O=>!_.node(O).parent),x=r(k,w);x=x.slice(1),x.forEach(O=>{var K=k.node(O).parent,I=_.edge(O,K),S=!1;I||(I=_.edge(K,O),S=!0),_.node(O).rank=_.node(K).rank+(S?I.minlen:-I.minlen)})}function h(k,_,w){return k.hasEdge(_,w)}function E(k,_,w){return w.low<=_.lim&&_.lim<=w.lim}}),PC=Ge((t,n)=>{var o=yr(),a=o.longestPath,i=Fc(),r=IC();n.exports=l;function l(f){var d=f.graph().ranker;if(d instanceof Function)return d(f);switch(f.graph().ranker){case"network-simplex":u(f);break;case"tight-tree":c(f);break;case"longest-path":s(f);break;case"none":break;default:u(f)}}var s=a;function c(f){a(f),i(f)}function u(f){r(f)}}),TC=Ge((t,n)=>{n.exports=o;function o(r){let l=i(r);r.graph().dummyChains.forEach(s=>{let c=r.node(s),u=c.edgeObj,f=a(r,l,u.v,u.w),d=f.path,p=f.lca,m=0,g=d[m],y=!0;for(;s!==u.w;){if(c=r.node(s),y){for(;(g=d[m])!==p&&r.node(g).maxRank<c.rank;)m++;g===p&&(y=!1)}if(!y){for(;m<d.length-1&&r.node(g=d[m+1]).minRank<=c.rank;)m++;g=d[m]}r.setParent(s,g),s=r.successors(s)[0]}})}function a(r,l,s,c){let u=[],f=[],d=Math.min(l[s].low,l[c].low),p=Math.max(l[s].lim,l[c].lim),m,g;m=s;do m=r.parent(m),u.push(m);while(m&&(l[m].low>d||p>l[m].lim));for(g=m,m=c;(m=r.parent(m))!==g;)f.push(m);return{path:u.concat(f.reverse()),lca:g}}function i(r){let l={},s=0;function c(u){let f=s;r.children(u).forEach(c),l[u]={low:f,lim:s++}}return r.children().forEach(c),l}}),OC=Ge((t,n)=>{var o=at();n.exports={run:a,cleanup:s};function a(c){let u=o.addDummyNode(c,"root",{},"_root"),f=r(c),d=Object.values(f),p=o.applyWithChunking(Math.max,d)-1,m=2*p+1;c.graph().nestingRoot=u,c.edges().forEach(y=>c.edge(y).minlen*=m);let g=l(c)+1;c.children().forEach(y=>i(c,u,m,g,p,f,y)),c.graph().nodeRankFactor=m}function i(c,u,f,d,p,m,g){let y=c.children(g);if(!y.length){g!==u&&c.setEdge(u,g,{weight:0,minlen:f});return}let C=o.addBorderNode(c,"_bt"),b=o.addBorderNode(c,"_bb"),h=c.node(g);c.setParent(C,g),h.borderTop=C,c.setParent(b,g),h.borderBottom=b,y.forEach(E=>{i(c,u,f,d,p,m,E);let k=c.node(E),_=k.borderTop?k.borderTop:E,w=k.borderBottom?k.borderBottom:E,x=k.borderTop?d:2*d,O=_!==w?1:p-m[g]+1;c.setEdge(C,_,{weight:x,minlen:O,nestingEdge:!0}),c.setEdge(w,b,{weight:x,minlen:O,nestingEdge:!0})}),c.parent(g)||c.setEdge(u,C,{weight:0,minlen:p+m[g]})}function r(c){var u={};function f(d,p){var m=c.children(d);m&&m.length&&m.forEach(g=>f(g,p+1)),u[d]=p}return c.children().forEach(d=>f(d,1)),u}function l(c){return c.edges().reduce((u,f)=>u+c.edge(f).weight,0)}function s(c){var u=c.graph();c.removeNode(u.nestingRoot),delete u.nestingRoot,c.edges().forEach(f=>{var d=c.edge(f);d.nestingEdge&&c.removeEdge(f)})}}),VC=Ge((t,n)=>{var o=at();n.exports=a;function a(r){function l(s){let c=r.children(s),u=r.node(s);if(c.length&&c.forEach(l),Object.hasOwn(u,"minRank")){u.borderLeft=[],u.borderRight=[];for(let f=u.minRank,d=u.maxRank+1;f<d;++f)i(r,"borderLeft","_bl",s,u,f),i(r,"borderRight","_br",s,u,f)}}r.children().forEach(l)}function i(r,l,s,c,u,f){let d={width:0,height:0,rank:f,borderType:l},p=u[l][f-1],m=o.addDummyNode(r,"border",d,s);u[l][f]=m,r.setParent(m,c),p&&r.setEdge(p,m,{weight:1})}}),BC=Ge((t,n)=>{n.exports={adjust:o,undo:a};function o(f){let d=f.graph().rankdir.toLowerCase();(d==="lr"||d==="rl")&&i(f)}function a(f){let d=f.graph().rankdir.toLowerCase();(d==="bt"||d==="rl")&&l(f),(d==="lr"||d==="rl")&&(c(f),i(f))}function i(f){f.nodes().forEach(d=>r(f.node(d))),f.edges().forEach(d=>r(f.edge(d)))}function r(f){let d=f.width;f.width=f.height,f.height=d}function l(f){f.nodes().forEach(d=>s(f.node(d))),f.edges().forEach(d=>{let p=f.edge(d);p.points.forEach(s),Object.hasOwn(p,"y")&&s(p)})}function s(f){f.y=-f.y}function c(f){f.nodes().forEach(d=>u(f.node(d))),f.edges().forEach(d=>{let p=f.edge(d);p.points.forEach(u),Object.hasOwn(p,"x")&&u(p)})}function u(f){let d=f.x;f.x=f.y,f.y=d}}),RC=Ge((t,n)=>{var o=at();n.exports=a;function a(i){let r={},l=i.nodes().filter(d=>!i.children(d).length),s=l.map(d=>i.node(d).rank),c=o.applyWithChunking(Math.max,s),u=o.range(c+1).map(()=>[]);function f(d){if(r[d])return;r[d]=!0;let p=i.node(d);u[p.rank].push(d),i.successors(d).forEach(f)}return l.sort((d,p)=>i.node(d).rank-i.node(p).rank).forEach(f),u}}),$C=Ge((t,n)=>{var o=at().zipObject;n.exports=a;function a(r,l){let s=0;for(let c=1;c<l.length;++c)s+=i(r,l[c-1],l[c]);return s}function i(r,l,s){let c=o(s,s.map((g,y)=>y)),u=l.flatMap(g=>r.outEdges(g).map(y=>({pos:c[y.w],weight:r.edge(y).weight})).sort((y,C)=>y.pos-C.pos)),f=1;for(;f<s.length;)f<<=1;let d=2*f-1;f-=1;let p=new Array(d).fill(0),m=0;return u.forEach(g=>{let y=g.pos+f;p[y]+=g.weight;let C=0;for(;y>0;)y%2&&(C+=p[y+1]),y=y-1>>1,p[y]+=g.weight;m+=g.weight*C}),m}}),FC=Ge((t,n)=>{n.exports=o;function o(a,i=[]){return i.map(r=>{let l=a.inEdges(r);if(l.length){let s=l.reduce((c,u)=>{let f=a.edge(u),d=a.node(u.v);return{sum:c.sum+f.weight*d.order,weight:c.weight+f.weight}},{sum:0,weight:0});return{v:r,barycenter:s.sum/s.weight,weight:s.weight}}else return{v:r}})}}),LC=Ge((t,n)=>{var o=at();n.exports=a;function a(l,s){let c={};l.forEach((f,d)=>{let p=c[f.v]={indegree:0,in:[],out:[],vs:[f.v],i:d};f.barycenter!==void 0&&(p.barycenter=f.barycenter,p.weight=f.weight)}),s.edges().forEach(f=>{let d=c[f.v],p=c[f.w];d!==void 0&&p!==void 0&&(p.indegree++,d.out.push(c[f.w]))});let u=Object.values(c).filter(f=>!f.indegree);return i(u)}function i(l){let s=[];function c(f){return d=>{d.merged||(d.barycenter===void 0||f.barycenter===void 0||d.barycenter>=f.barycenter)&&r(f,d)}}function u(f){return d=>{d.in.push(f),--d.indegree===0&&l.push(d)}}for(;l.length;){let f=l.pop();s.push(f),f.in.reverse().forEach(c(f)),f.out.forEach(u(f))}return s.filter(f=>!f.merged).map(f=>o.pick(f,["vs","i","barycenter","weight"]))}function r(l,s){let c=0,u=0;l.weight&&(c+=l.barycenter*l.weight,u+=l.weight),s.weight&&(c+=s.barycenter*s.weight,u+=s.weight),l.vs=s.vs.concat(l.vs),l.barycenter=c/u,l.weight=u,l.i=Math.min(s.i,l.i),s.merged=!0}}),DC=Ge((t,n)=>{var o=at();n.exports=a;function a(l,s){let c=o.partition(l,C=>Object.hasOwn(C,"barycenter")),u=c.lhs,f=c.rhs.sort((C,b)=>b.i-C.i),d=[],p=0,m=0,g=0;u.sort(r(!!s)),g=i(d,f,g),u.forEach(C=>{g+=C.vs.length,d.push(C.vs),p+=C.barycenter*C.weight,m+=C.weight,g=i(d,f,g)});let y={vs:d.flat(!0)};return m&&(y.barycenter=p/m,y.weight=m),y}function i(l,s,c){let u;for(;s.length&&(u=s[s.length-1]).i<=c;)s.pop(),l.push(u.vs),c++;return c}function r(l){return(s,c)=>s.barycenter<c.barycenter?-1:s.barycenter>c.barycenter?1:l?c.i-s.i:s.i-c.i}}),MC=Ge((t,n)=>{var o=FC(),a=LC(),i=DC();n.exports=r;function r(c,u,f,d){let p=c.children(u),m=c.node(u),g=m?m.borderLeft:void 0,y=m?m.borderRight:void 0,C={};g&&(p=p.filter(k=>k!==g&&k!==y));let b=o(c,p);b.forEach(k=>{if(c.children(k.v).length){let _=r(c,k.v,f,d);C[k.v]=_,Object.hasOwn(_,"barycenter")&&s(k,_)}});let h=a(b,f);l(h,C);let E=i(h,d);if(g&&(E.vs=[g,E.vs,y].flat(!0),c.predecessors(g).length)){let k=c.node(c.predecessors(g)[0]),_=c.node(c.predecessors(y)[0]);Object.hasOwn(E,"barycenter")||(E.barycenter=0,E.weight=0),E.barycenter=(E.barycenter*E.weight+k.order+_.order)/(E.weight+2),E.weight+=2}return E}function l(c,u){c.forEach(f=>{f.vs=f.vs.flatMap(d=>u[d]?u[d].vs:d)})}function s(c,u){c.barycenter!==void 0?(c.barycenter=(c.barycenter*c.weight+u.barycenter*u.weight)/(c.weight+u.weight),c.weight+=u.weight):(c.barycenter=u.barycenter,c.weight=u.weight)}}),jC=Ge((t,n)=>{var o=Mt().Graph,a=at();n.exports=i;function i(l,s,c,u){u||(u=l.nodes());let f=r(l),d=new o({compound:!0}).setGraph({root:f}).setDefaultNodeLabel(p=>l.node(p));return u.forEach(p=>{let m=l.node(p),g=l.parent(p);(m.rank===s||m.minRank<=s&&s<=m.maxRank)&&(d.setNode(p),d.setParent(p,g||f),l[c](p).forEach(y=>{let C=y.v===p?y.w:y.v,b=d.edge(C,p),h=b!==void 0?b.weight:0;d.setEdge(C,p,{weight:l.edge(y).weight+h})}),Object.hasOwn(m,"minRank")&&d.setNode(p,{borderLeft:m.borderLeft[s],borderRight:m.borderRight[s]}))}),d}function r(l){for(var s;l.hasNode(s=a.uniqueId("_root")););return s}}),KC=Ge((t,n)=>{n.exports=o;function o(a,i,r){let l={},s;r.forEach(c=>{let u=a.parent(c),f,d;for(;u;){if(f=a.parent(u),f?(d=l[f],l[f]=u):(d=s,s=u),d&&d!==u){i.setEdge(d,u);return}u=f}})}}),vC=Ge((t,n)=>{var o=RC(),a=$C(),i=MC(),r=jC(),l=KC(),s=Mt().Graph,c=at();n.exports=u;function u(m,g={}){if(typeof g.customOrder=="function"){g.customOrder(m,u);return}let y=c.maxRank(m),C=f(m,c.range(1,y+1),"inEdges"),b=f(m,c.range(y-1,-1,-1),"outEdges"),h=o(m);if(p(m,h),g.disableOptimalOrderHeuristic)return;let E=Number.POSITIVE_INFINITY,k,_=g.constraints||[];for(let w=0,x=0;x<4;++w,++x){d(w%2?C:b,w%4>=2,_),h=c.buildLayerMatrix(m);let O=a(m,h);O<E?(x=0,k=Object.assign({},h),E=O):O===E&&(k=structuredClone(h))}p(m,k)}function f(m,g,y){let C=new Map,b=(h,E)=>{C.has(h)||C.set(h,[]),C.get(h).push(E)};for(let h of m.nodes()){let E=m.node(h);if(typeof E.rank=="number"&&b(E.rank,h),typeof E.minRank=="number"&&typeof E.maxRank=="number")for(let k=E.minRank;k<=E.maxRank;k++)k!==E.rank&&b(k,h)}return g.map(function(h){return r(m,h,y,C.get(h)||[])})}function d(m,g,y){let C=new s;m.forEach(function(b){y.forEach(k=>C.setEdge(k.left,k.right));let h=b.graph().root,E=i(b,h,C,g);E.vs.forEach((k,_)=>b.node(k).order=_),l(b,C,E.vs)})}function p(m,g){Object.values(g).forEach(y=>y.forEach((C,b)=>m.node(C).order=b))}}),UC=Ge((t,n)=>{var o=Mt().Graph,a=at();n.exports={positionX:y,findType1Conflicts:i,findType2Conflicts:r,addConflict:s,hasConflict:c,verticalAlignment:u,horizontalCompaction:f,alignCoordinates:m,findSmallestWidthAlignment:p,balance:g};function i(h,E){let k={};function _(w,x){let O=0,K=0,I=w.length,S=x[x.length-1];return x.forEach((P,F)=>{let T=l(h,P),D=T?h.node(T).order:I;(T||P===S)&&(x.slice(K,F+1).forEach(U=>{h.predecessors(U).forEach(q=>{let L=h.node(q),V=L.order;(V<O||D<V)&&!(L.dummy&&h.node(U).dummy)&&s(k,q,U)})}),K=F+1,O=D)}),x}return E.length&&E.reduce(_),k}function r(h,E){let k={};function _(x,O,K,I,S){let P;a.range(O,K).forEach(F=>{P=x[F],h.node(P).dummy&&h.predecessors(P).forEach(T=>{let D=h.node(T);D.dummy&&(D.order<I||D.order>S)&&s(k,T,P)})})}function w(x,O){let K=-1,I,S=0;return O.forEach((P,F)=>{if(h.node(P).dummy==="border"){let T=h.predecessors(P);T.length&&(I=h.node(T[0]).order,_(O,S,F,K,I),S=F,K=I)}_(O,S,O.length,I,x.length)}),O}return E.length&&E.reduce(w),k}function l(h,E){if(h.node(E).dummy)return h.predecessors(E).find(k=>h.node(k).dummy)}function s(h,E,k){if(E>k){let w=E;E=k,k=w}let _=h[E];_||(h[E]=_={}),_[k]=!0}function c(h,E,k){if(E>k){let _=E;E=k,k=_}return!!h[E]&&Object.hasOwn(h[E],k)}function u(h,E,k,_){let w={},x={},O={};return E.forEach(K=>{K.forEach((I,S)=>{w[I]=I,x[I]=I,O[I]=S})}),E.forEach(K=>{let I=-1;K.forEach(S=>{let P=_(S);if(P.length){P=P.sort((T,D)=>O[T]-O[D]);let F=(P.length-1)/2;for(let T=Math.floor(F),D=Math.ceil(F);T<=D;++T){let U=P[T];x[S]===S&&I<O[U]&&!c(k,S,U)&&(x[U]=S,x[S]=w[S]=w[U],I=O[U])}}})}),{root:w,align:x}}function f(h,E,k,_,w){let x={},O=d(h,E,k,w),K=w?"borderLeft":"borderRight";function I(F,T){let D=O.nodes().slice(),U={},q=D.pop();for(;q;){if(U[q])F(q);else{U[q]=!0,D.push(q);for(let L of T(q))D.push(L)}q=D.pop()}}function S(F){x[F]=O.inEdges(F).reduce((T,D)=>Math.max(T,x[D.v]+O.edge(D)),0)}function P(F){let T=O.outEdges(F).reduce((U,q)=>Math.min(U,x[q.w]-O.edge(q)),Number.POSITIVE_INFINITY),D=h.node(F);T!==Number.POSITIVE_INFINITY&&D.borderType!==K&&(x[F]=Math.max(x[F],T))}return I(S,O.predecessors.bind(O)),I(P,O.successors.bind(O)),Object.keys(_).forEach(F=>x[F]=x[k[F]]),x}function d(h,E,k,_){let w=new o,x=h.graph(),O=C(x.nodesep,x.edgesep,_);return E.forEach(K=>{let I;K.forEach(S=>{let P=k[S];if(w.setNode(P),I){var F=k[I],T=w.edge(F,P);w.setEdge(F,P,Math.max(O(h,S,I),T||0))}I=S})}),w}function p(h,E){return Object.values(E).reduce((k,_)=>{let w=Number.NEGATIVE_INFINITY,x=Number.POSITIVE_INFINITY;Object.entries(_).forEach(([K,I])=>{let S=b(h,K)/2;w=Math.max(I+S,w),x=Math.min(I-S,x)});let O=w-x;return O<k[0]&&(k=[O,_]),k},[Number.POSITIVE_INFINITY,null])[1]}function m(h,E){let k=Object.values(E),_=a.applyWithChunking(Math.min,k),w=a.applyWithChunking(Math.max,k);["u","d"].forEach(x=>{["l","r"].forEach(O=>{let K=x+O,I=h[K];if(I===E)return;let S=Object.values(I),P=_-a.applyWithChunking(Math.min,S);O!=="l"&&(P=w-a.applyWithChunking(Math.max,S)),P&&(h[K]=a.mapValues(I,F=>F+P))})})}function g(h,E){return a.mapValues(h.ul,(k,_)=>{if(E)return h[E.toLowerCase()][_];{let w=Object.values(h).map(x=>x[_]).sort((x,O)=>x-O);return(w[1]+w[2])/2}})}function y(h){let E=a.buildLayerMatrix(h),k=Object.assign(i(h,E),r(h,E)),_={},w;["u","d"].forEach(O=>{w=O==="u"?E:Object.values(E).reverse(),["l","r"].forEach(K=>{K==="r"&&(w=w.map(F=>Object.values(F).reverse()));let I=(O==="u"?h.predecessors:h.successors).bind(h),S=u(h,w,k,I),P=f(h,w,S.root,S.align,K==="r");K==="r"&&(P=a.mapValues(P,F=>-F)),_[O+K]=P})});let x=p(h,_);return m(_,x),g(_,h.graph().align)}function C(h,E,k){return(_,w,x)=>{let O=_.node(w),K=_.node(x),I=0,S;if(I+=O.width/2,Object.hasOwn(O,"labelpos"))switch(O.labelpos.toLowerCase()){case"l":S=-O.width/2;break;case"r":S=O.width/2;break}if(S&&(I+=k?S:-S),S=0,I+=(O.dummy?E:h)/2,I+=(K.dummy?E:h)/2,I+=K.width/2,Object.hasOwn(K,"labelpos"))switch(K.labelpos.toLowerCase()){case"l":S=K.width/2;break;case"r":S=-K.width/2;break}return S&&(I+=k?S:-S),S=0,I}}function b(h,E){return h.node(E).width}}),qC=Ge((t,n)=>{var o=at(),a=UC().positionX;n.exports=i;function i(l){l=o.asNonCompoundGraph(l),r(l),Object.entries(a(l)).forEach(([s,c])=>l.node(s).x=c)}function r(l){let s=o.buildLayerMatrix(l),c=l.graph().ranksep,u=l.graph().rankalign,f=0;s.forEach(d=>{let p=d.reduce((m,g)=>{let y=l.node(g).height;return m>y?m:y},0);d.forEach(m=>{let g=l.node(m);u==="top"?g.y=f+g.height/2:u==="bottom"?g.y=f+p-g.height/2:g.y=f+p/2}),f+=p+c})}}),GC=Ge((t,n)=>{var o=SC(),a=AC(),i=PC(),r=at().normalizeRanks,l=TC(),s=at().removeEmptyRanks,c=OC(),u=VC(),f=BC(),d=vC(),p=qC(),m=at(),g=Mt().Graph;n.exports=y;function y(N,B={}){let j=B.debugTiming?m.time:m.notime;return j("layout",()=>{let W=j(" buildLayoutGraph",()=>I(N));return j(" runLayout",()=>C(W,j,B)),j(" updateInputGraph",()=>b(N,W)),W})}function C(N,B,j){B(" makeSpaceForEdgeLabels",()=>S(N)),B(" removeSelfEdges",()=>R(N)),B(" acyclic",()=>o.run(N)),B(" nestingGraph.run",()=>c.run(N)),B(" rank",()=>i(m.asNonCompoundGraph(N))),B(" injectEdgeLabelProxies",()=>P(N)),B(" removeEmptyRanks",()=>s(N)),B(" nestingGraph.cleanup",()=>c.cleanup(N)),B(" normalizeRanks",()=>r(N)),B(" assignRankMinMax",()=>F(N)),B(" removeEdgeLabelProxies",()=>T(N)),B(" normalize.run",()=>a.run(N)),B(" parentDummyChains",()=>l(N)),B(" addBorderSegments",()=>u(N)),B(" order",()=>d(N,j)),B(" insertSelfEdges",()=>A(N)),B(" adjustCoordinateSystem",()=>f.adjust(N)),B(" position",()=>p(N)),B(" positionSelfEdges",()=>v(N)),B(" removeBorderNodes",()=>V(N)),B(" normalize.undo",()=>a.undo(N)),B(" fixupEdgeLabelCoords",()=>q(N)),B(" undoCoordinateSystem",()=>f.undo(N)),B(" translateGraph",()=>D(N)),B(" assignNodeIntersects",()=>U(N)),B(" reversePoints",()=>L(N)),B(" acyclic.undo",()=>o.undo(N))}function b(N,B){N.nodes().forEach(j=>{let W=N.node(j),X=B.node(j);W&&(W.x=X.x,W.y=X.y,W.order=X.order,W.rank=X.rank,B.children(j).length&&(W.width=X.width,W.height=X.height))}),N.edges().forEach(j=>{let W=N.edge(j),X=B.edge(j);W.points=X.points,Object.hasOwn(X,"x")&&(W.x=X.x,W.y=X.y)}),N.graph().width=B.graph().width,N.graph().height=B.graph().height}var h=["nodesep","edgesep","ranksep","marginx","marginy"],E={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb",rankalign:"center"},k=["acyclicer","ranker","rankdir","align","rankalign"],_=["width","height","rank"],w={width:0,height:0},x=["minlen","weight","width","height","labeloffset"],O={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},K=["labelpos"];function I(N){let B=new g({multigraph:!0,compound:!0}),j=$(N.graph());return B.setGraph(Object.assign({},E,z(j,h),m.pick(j,k))),N.nodes().forEach(W=>{let X=$(N.node(W)),ee=z(X,_);Object.keys(w).forEach(oe=>{ee[oe]===void 0&&(ee[oe]=w[oe])}),B.setNode(W,ee),B.setParent(W,N.parent(W))}),N.edges().forEach(W=>{let X=$(N.edge(W));B.setEdge(W,Object.assign({},O,z(X,x),m.pick(X,K)))}),B}function S(N){let B=N.graph();B.ranksep/=2,N.edges().forEach(j=>{let W=N.edge(j);W.minlen*=2,W.labelpos.toLowerCase()!=="c"&&(B.rankdir==="TB"||B.rankdir==="BT"?W.width+=W.labeloffset:W.height+=W.labeloffset)})}function P(N){N.edges().forEach(B=>{let j=N.edge(B);if(j.width&&j.height){let W=N.node(B.v),X={rank:(N.node(B.w).rank-W.rank)/2+W.rank,e:B};m.addDummyNode(N,"edge-proxy",X,"_ep")}})}function F(N){let B=0;N.nodes().forEach(j=>{let W=N.node(j);W.borderTop&&(W.minRank=N.node(W.borderTop).rank,W.maxRank=N.node(W.borderBottom).rank,B=Math.max(B,W.maxRank))}),N.graph().maxRank=B}function T(N){N.nodes().forEach(B=>{let j=N.node(B);j.dummy==="edge-proxy"&&(N.edge(j.e).labelRank=j.rank,N.removeNode(B))})}function D(N){let B=Number.POSITIVE_INFINITY,j=0,W=Number.POSITIVE_INFINITY,X=0,ee=N.graph(),oe=ee.marginx||0,Q=ee.marginy||0;function te(ie){let re=ie.x,Ce=ie.y,pe=ie.width,Me=ie.height;B=Math.min(B,re-pe/2),j=Math.max(j,re+pe/2),W=Math.min(W,Ce-Me/2),X=Math.max(X,Ce+Me/2)}N.nodes().forEach(ie=>te(N.node(ie))),N.edges().forEach(ie=>{let re=N.edge(ie);Object.hasOwn(re,"x")&&te(re)}),B-=oe,W-=Q,N.nodes().forEach(ie=>{let re=N.node(ie);re.x-=B,re.y-=W}),N.edges().forEach(ie=>{let re=N.edge(ie);re.points.forEach(Ce=>{Ce.x-=B,Ce.y-=W}),Object.hasOwn(re,"x")&&(re.x-=B),Object.hasOwn(re,"y")&&(re.y-=W)}),ee.width=j-B+oe,ee.height=X-W+Q}function U(N){N.edges().forEach(B=>{let j=N.edge(B),W=N.node(B.v),X=N.node(B.w),ee,oe;j.points?(ee=j.points[0],oe=j.points[j.points.length-1]):(j.points=[],ee=X,oe=W),j.points.unshift(m.intersectRect(W,ee)),j.points.push(m.intersectRect(X,oe))})}function q(N){N.edges().forEach(B=>{let j=N.edge(B);if(Object.hasOwn(j,"x"))switch((j.labelpos==="l"||j.labelpos==="r")&&(j.width-=j.labeloffset),j.labelpos){case"l":j.x-=j.width/2+j.labeloffset;break;case"r":j.x+=j.width/2+j.labeloffset;break}})}function L(N){N.edges().forEach(B=>{let j=N.edge(B);j.reversed&&j.points.reverse()})}function V(N){N.nodes().forEach(B=>{if(N.children(B).length){let j=N.node(B),W=N.node(j.borderTop),X=N.node(j.borderBottom),ee=N.node(j.borderLeft[j.borderLeft.length-1]),oe=N.node(j.borderRight[j.borderRight.length-1]);j.width=Math.abs(oe.x-ee.x),j.height=Math.abs(X.y-W.y),j.x=ee.x+j.width/2,j.y=W.y+j.height/2}}),N.nodes().forEach(B=>{N.node(B).dummy==="border"&&N.removeNode(B)})}function R(N){N.edges().forEach(B=>{if(B.v===B.w){var j=N.node(B.v);j.selfEdges||(j.selfEdges=[]),j.selfEdges.push({e:B,label:N.edge(B)}),N.removeEdge(B)}})}function A(N){var B=m.buildLayerMatrix(N);B.forEach(j=>{var W=0;j.forEach((X,ee)=>{var oe=N.node(X);oe.order=ee+W,(oe.selfEdges||[]).forEach(Q=>{m.addDummyNode(N,"selfedge",{width:Q.label.width,height:Q.label.height,rank:oe.rank,order:ee+ ++W,e:Q.e,label:Q.label},"_se")}),delete oe.selfEdges})})}function v(N){N.nodes().forEach(B=>{var j=N.node(B);if(j.dummy==="selfedge"){var W=N.node(j.e.v),X=W.x+W.width/2,ee=W.y,oe=j.x-X,Q=W.height/2;N.setEdge(j.e,j.label),N.removeNode(B),j.label.points=[{x:X+2*oe/3,y:ee-Q},{x:X+5*oe/6,y:ee-Q},{x:X+oe,y:ee},{x:X+5*oe/6,y:ee+Q},{x:X+2*oe/3,y:ee+Q}],j.label.x=j.x,j.label.y=j.y}})}function z(N,B){return m.mapValues(m.pick(N,B),Number)}function $(N){var B={};return N&&Object.entries(N).forEach(([j,W])=>{typeof j=="string"&&(j=j.toLowerCase()),B[j]=W}),B}}),zC=Ge((t,n)=>{var o=at(),a=Mt().Graph;n.exports={debugOrdering:i};function i(r){let l=o.buildLayerMatrix(r),s=new a({compound:!0,multigraph:!0}).setGraph({});return r.nodes().forEach(c=>{s.setNode(c,{label:c}),s.setParent(c,"layer"+r.node(c).rank)}),r.edges().forEach(c=>s.setEdge(c.v,c.w,{},c.name)),l.forEach((c,u)=>{let f="layer"+u;s.setNode(f,{rank:"same"}),c.reduce((d,p)=>(s.setEdge(d,p,{style:"invis"}),p))}),s}}),HC=Ge((t,n)=>{n.exports="2.0.4"}),WC=Ge((t,n)=>{n.exports={graphlib:Mt(),layout:GC(),debug:zC(),util:{time:at().time,notime:at().notime},version:HC()}});const Lc=WC();/*! For license information please see dagre.esm.js.LEGAL.txt */function YC(t){const{branchLayout:n,phase:o,layoutOptions:a,nodes:i,edges:r}=t,{findNode:l}=ze.useVueFlow(),{state:s,branchGroups:c,getNodeById:u,moveNode:f,commit:d}=tt(),{getNodeDepth:p,isGroupId:m,groupsByOwner:g}=c,{isBranchEdgeId:y,updateGroupLayout:C,translateGroupTree:b,waitForLayoutFlush:h}=n,{viewport:E,padding:k=mn.padding,gaps:_=mn.gaps}=a,{nodes:w=mn.gaps.nodes,edges:x=mn.gaps.edges,ranks:O=mn.gaps.ranks}=_;async function K(P=!0){const F=new Map(i.value.map(N=>[N.id,N.data])),T=new Map,D=new Map,U=N=>{if(!N)return;let B=D.get(N);return B||(B=l(N),B&&D.set(N,B),B)},q=new Map,L=N=>{let B=q.get(N);return B!==void 0||(B=p(N),q.set(N,B)),B},V=N=>{if(!ko(N.data))return N.parentNode;const B=U(N.data.ownerId);if(!B)throw new Error(`Cannot find owner node '${N.data.ownerId}' for group node '${N.id}' via findNode`);return B.parentNode};for(const N of r.value){if(y(N.id))continue;const B=N.source,j=N.target;if(m(B)||m(j))continue;const W=U(B),X=U(j);if(W){if(!X)throw new Error(`Cannot find target node '${j}' for edge '${N.id}' via findNode`)}else throw new Error(`Cannot find source node '${B}' for edge '${N.id}' via findNode`);if(V(W)===V(X))continue;let ee=W,oe=X,Q=L(ee.id),te=L(oe.id);for(;Q!==te;)if(Q>te){const ie=V(ee);if(!ie)throw new Error(`Expected node '${ee.id}' to have parent, but it does not`);const re=U(ie);if(!re)throw new Error(`Cannot find parent node '${ie}' for node '${ee.id}' via findNode`);ee=re,Q--}else if(te>Q){const ie=V(oe);if(!ie)throw new Error(`Expected node '${oe.id}' to have parent, but it does not`);const re=U(ie);if(!re)throw new Error(`Cannot find parent node '${ie}' for node '${oe.id}' via findNode`);oe=re,te--}for(;Q>=0;){const ie=V(ee),re=V(oe);if(ie===re){T.has(Q)||T.set(Q,[]),T.get(Q).push({v:ee.id,w:oe.id});break}if(ie){if(!re){const Me=`Expected node '${oe.id}' to have parent, but it does not`;throw console.error(Me,oe),new Error(Me)}}else{const Me=`Expected node '${ee.id}' to have parent, but it does not`;throw console.error(Me,ee),new Error(Me)}const Ce=U(ie),pe=U(re);if(Ce){if(!pe)throw new Error(`Cannot find parent node '${re}' for node '${oe.id}' via findNode`)}else throw new Error(`Cannot find parent node '${ie}' for node '${ee.id}' via findNode`);ee=Ce,oe=pe,Q--,te--}}const R=s.value.groups.toSorted((N,B)=>L(B.ownerId)-L(N.ownerId));for(const N of R)I(N.memberIds.reduce((B,j)=>{const W=u(j);if(!W)return console.warn(`Cannot find node '${j}' of group '${N.id}' by getNodeById`),B;if(W.phase!==o)return B;if(W.type==="branch"){const X=g.value.get(W.id);X&&B.push(...X)}return F.delete(W.id),B.push(W),B},[]),{virtualEdges:T.get(L(N.ownerId)),cachedFindNode:U}),await e.nextTick(),C(N.id,!1),await h();const A=F.values().toArray();for(const N of A){if(ko(N)||N.type!=="branch")continue;const B=g.value.get(N.id);B&&A.push(...B)}const{autoNodes:v,leftNode:z,rightNode:$}=S(A);I(v,{leftNode:z,rightNode:$,virtualEdges:T.get(0),cachedFindNode:U}),P&&d()}function I(P,F){var ee,oe,Q,te,ie;const{leftNode:T,rightNode:D,virtualEdges:U,cachedFindNode:q}=F||{},L=T?(q??l)(T.id):void 0,V=D?(q??l)(D.id):void 0;let R;if(P.length>0){R=new Lc.graphlib.Graph({multigraph:!0}),R.setGraph({rankdir:o==="request"?"LR":"RL",nodesep:w,edgesep:x,ranksep:O});const re=new Set;for(const Ce of P){const pe=(q??l)(Ce.id);if(!pe){console.warn(`Cannot find graph node '${Ce.id}' in ${o} phase`);continue}re.add(Ce.id),ko(Ce)?R.setNode(Ce.id,{...Ce.dimensions??pe.dimensions}):R.setNode(Ce.id,{...pe.dimensions})}for(const Ce of r.value)!re.has(Ce.source)||!re.has(Ce.target)||R.setEdge(Ce.source,Ce.target,{points:[]});U==null||U.forEach(Ce=>R.setEdge(Ce,{points:[]})),Lc.layout(R)}const A=[],v=re=>({x:re.x-re.width/2,y:re.y-re.height/2,width:re.width,height:re.height});if(P.length>0){if(!R)throw new Error("Expected dagreGraph to be initialized");for(const re of P){const Ce=R.node(re.id),pe=v(Ce);A.push(pe),ko(re)?b(re.id,pe,pe.x+Yn,pe.y+Yn):f(re.id,{x:pe.x,y:pe.y},!1)}}const z=A.length>0?$c(A):{x:0,y:0,width:0,height:0},$=z.width,N=z.height,B=z.x,j=z.x+z.width,W=Math.max(0,Math.min(e.toValue(E==null?void 0:E.width)??Number.POSITIVE_INFINITY,kC)-$-2*w-(((ee=L==null?void 0:L.dimensions)==null?void 0:ee.width)??0)-(((oe=V==null?void 0:V.dimensions)==null?void 0:oe.width)??0)-2*k),X=z.y+N/2;T&&f(T.id,{x:B-w-W/2-(((Q=L==null?void 0:L.dimensions)==null?void 0:Q.width)??0),y:X-(((te=L==null?void 0:L.dimensions)==null?void 0:te.height)??0)/2},!1),D&&f(D.id,{x:j+w+W/2,y:X-(((ie=V==null?void 0:V.dimensions)==null?void 0:ie.height)??0)/2},!1)}function S(P){let F,T;const D=[];for(const U of P){if(ko(U)){D.push(U);continue}switch(U.name){case"request":{if(o!=="request")throw new Error(`Unexpected request node in ${o} phase`);if(F)throw new Error("Duplicated request node in request phase");F=U;break}case"service_request":{if(o!=="request")throw new Error(`Unexpected service_request node in ${o} phase`);if(T)throw new Error("Duplicated service_request node in request phase");T=U;break}case"service_response":{if(o!=="response")throw new Error(`Unexpected service_response node in ${o} phase`);if(T)throw new Error("Duplicated service_response node in response phase");T=U;break}case"response":{if(o!=="response")throw new Error(`Unexpected response node in ${o} phase`);if(F)throw new Error("Duplicated response node in response phase");F=U;break}default:{D.push(U);break}}}return{autoNodes:D,leftNode:F,rightNode:T}}return{autoLayout:K}}function JC({phase:t,groupMapById:n,getNodeDepth:o,canAddMember:a,draggingId:i}){const r=e.shallowRef(),l=e.shallowRef();function s(d){r.value=d,l.value=void 0}function c(){r.value&&(r.value=void 0,l.value=void 0)}function u(d){let p;const m=i==null?void 0:i.value;return n.value.forEach(g=>{if(g.phase!==t||m&&$a(m)&&!a(g.ownerId,g.branch,m))return;const y=g.position,C=g.dimensions;if(!y||!C||!(d.x>=y.x&&d.x<=y.x+C.width&&d.y>=y.y&&d.y<=y.y+C.height))return;const h=o(g.ownerId);(!p||h>p.depth)&&(p={depth:h,id:g.id})}),p==null?void 0:p.id}function f(d){if(!r.value){l.value=void 0;return}if(!d){l.value=void 0;return}l.value=u(d)}return{activeGroupId:l,start:s,updateActiveGroup:f,end:c}}function XC({phase:t,readonly:n,flowId:o,draggingId:a}){const{findNode:i}=ze.useVueFlow(o),r=tt(),{state:l,groupMapById:s,getNodeById:c,moveNode:u,moveGroup:f,setGroupLayout:d,commit:p,branchGroups:m}=r,{memberGroupMap:g,groupsByOwner:y,getNodeDepth:C,getGroupDepth:b}=m,h=V=>!!V&&V.startsWith("branch:");function E(V){const R=[];for(const A of V.memberIds){const v=c(A);v&&R.push(v)}return R}const k=e.computed(()=>{const V=new Map;return g.value.forEach((R,A)=>{if(R.phase!==t||!R.position)return;const v=c(A);v&&(v.phase!==t||v.hidden||V.set(A,R))}),V}),_=e.computed(()=>{const V=new Map;return y.value.forEach((R,A)=>{const v=R.filter(z=>z.phase===t);v.length>0&&V.set(A,v)}),V}),w=e.computed(()=>{const V=[];for(const R of l.value.groups){const A=c(R.ownerId);if(!A||A.phase!==t)continue;const v=R.position,z=R.dimensions;if(!v||!z)continue;const $=E(R).filter(B=>B.phase===t&&!B.hidden),N=b(R.id);V.push({id:R.id,type:"group",position:v,width:z.width,height:z.height,data:{...R,memberIds:$.map(B=>B.id)},draggable:!n,selectable:!1,zIndex:N*fr+hC})}return V}),x=e.computed(()=>{let V=0;for(const R of l.value.groups){if(R.phase!==t)continue;const A=b(R.id);A>V&&(V=A)}return V}),O=e.computed(()=>{const V=[];for(const R of l.value.groups){if(R.phase!==t||!R.position||!R.dimensions)continue;const A=c(R.ownerId);if(!A||A.phase!==t||A.hidden||!E(R).filter(N=>N.phase===t&&!N.hidden).length)continue;const z=Math.max(C(A.id),b(R.id))+x.value+1,$={id:`branch:${R.id}`,source:A.id,target:R.id,sourceHandle:`branch@${R.branch}`,targetHandle:"input",markerEnd:ze.MarkerType.ArrowClosed,selectable:!1,focusable:!1,updatable:!1,data:{type:"branch",ownerId:A.id,branch:R.branch,groupId:R.id},zIndex:z*fr+_C};V.push($)}return V}),K=new Map,I=new Map;let S;function P(V,R=!0){if(V.phase!==t)return;const A=E(V).filter(B=>B.phase===t&&!B.hidden);if(!A.length)return;const v=[];for(const B of A){const j=i(B.id),W=j==null?void 0:j.dimensions,X=(W==null?void 0:W.width)??0,ee=(W==null?void 0:W.height)??0;if(X<=0||ee<=0)return;v.push({...B.position,width:X,height:ee});const oe=y.value.get(B.id)??[];for(const Q of oe){if(Q.phase!==t)continue;const te=K.get(Q.id),ie=(te==null?void 0:te.position)??Q.position,re=(te==null?void 0:te.dimensions)??Q.dimensions;!ie||!re||v.push({x:ie.x,y:ie.y,width:re.width,height:re.height})}}const z=$c(v),$=z.width+Yn*2,N=z.height+Yn*2;return{position:{x:Math.round(z.x-Yn),y:Math.round(z.y-Yn)},dimensions:{width:Math.round($),height:Math.round(N)},commit:R}}function F(){if(K.size===0){S=void 0;return}const V=[];let R=!1;K.forEach((A,v)=>{const z=d(v,A,!1);V.push({id:v,changed:z,commit:A.commit}),A.commit&&z&&!R&&(R=!0)}),K.clear(),S=void 0;for(const{id:A,changed:v,commit:z}of V){if(!v)continue;const $=s.value.get(A);if(!$)continue;const N=k.value.get($.ownerId);N&&I.set(N.id,{commit:z})}if(I.size>0){const A=Array.from(I);I.clear();for(const[v,{commit:z}]of A)D(v,z)}R&&p("*")}function T(){K.size!==0&&(S||(S=e.nextTick().then(F)))}function D(V,R=!0){const A=s.value.get(V);if(!A)return;const v=P(A,R);v&&(K.set(V,v),T())}function U(V,R,A,v){const z=s.value.get(V);if(!z)return;if(!z.position){f(V,R,!1),D(V);return}if(A===0&&v===0){f(V,R,!1);return}f(V,R,!1);const $=[V],N=new Set([V]),B=new Set;for(;$.length;){const j=$.shift(),W=s.value.get(j);if(!W)continue;const X=E(W).filter(ee=>ee.phase===t&&!ee.hidden);for(const ee of X){B.has(ee.id)||(u(ee.id,{x:ee.position.x+A,y:ee.position.y+v},!1),B.add(ee.id));const oe=_.value.get(ee.id)??[];for(const Q of oe){if(N.has(Q.id))continue;const te=s.value.get(Q.id);te!=null&&te.position&&f(Q.id,{x:te.position.x+A,y:te.position.y+v},!1),N.add(Q.id),$.push(Q.id)}}}}function q(V,R){const A=a==null?void 0:a.value;if(!A)return!1;if(A===V||R.some(v=>A===v))return!0;for(const v of R){const z=_.value.get(v)??[];if(z!=null&&z.some($=>$.id===A))return!0}return!1}const L=new Map;return e.watch(()=>l.value.groups.filter(R=>R.phase===t).map(R=>{const A=R.memberIds.map(v=>{var B,j;const z=i(v),$=Math.round(((B=z==null?void 0:z.dimensions)==null?void 0:B.width)??0),N=Math.round(((j=z==null?void 0:z.dimensions)==null?void 0:j.height)??0);return`${v}:${$}x${N}`});return{id:R.id,memberIds:R.memberIds,signature:A.join(",")}}),V=>{const R=new Set(V.map(A=>A.id));for(const A of L.keys())R.has(A)||L.delete(A);for(const A of V)q(A.id,A.memberIds)||L.get(A.id)===A.signature||(L.set(A.id,A.signature),D(A.id))},{deep:!0,flush:"post"}),{groupsByOwner:_,memberGroupMap:k,groupNodes:w,branchEdges:O,isBranchEdgeId:h,updateGroupLayout:D,translateGroupTree:U,getNodeDepth:C,maxGroupDepth:x,waitForLayoutFlush:()=>S??Promise.resolve()}}function ZC(t){e.provide(Bc,t)}function Dc(){return e.inject(Bc,void 0)}function Mc(){const t=Dc();if(!t)throw new Error("Confirm modal not provided");return t}function QC(t){const{readonly:n,flowId:o}=t,a=ze.useVueFlow(o),{onNodesChange:i,onEdgesChange:r,onPaneClick:l,findEdge:s}=a,{disconnectEdge:c,commit:u,portalSelection:f,selectPortalEdge:d}=tt();i(p=>{p.some(m=>m.type==="select"&&"selected"in m&&m.selected)&&d(void 0)}),r(p=>{const m=p.some(y=>y.type==="select"&&"selected"in y&&y.selected),g=f.value?p.some(y=>y.type==="remove"&&y.id===f.value):!1;(m||g)&&d(void 0)}),l(()=>d(void 0)),Xe.useEventListener("keydown",p=>{if(n||p.key!=="Delete"&&p.key!=="Backspace")return;const m=f.value;!m||s(m)||(p.preventDefault(),c(m,!1),d(void 0),u())})}function jc(t){const n=t.match(/^(input|output)(?:s@(.*))?$/);if(n)return{io:n[1],field:n[2]}}const eE={default:fy,hover:gy,selected:my};let Kc,Ga;function _r(t){const n=t.id===Kc?"selected":t.id===Ga?"hover":"default",o=eE[n],{markerEnd:a}=t,i=typeof a=="object"?{...a,color:o}:{type:a,color:o},r=t.zIndex??0,l=n==="selected"?r+2:n==="hover"?r+1:r;return{...t,style:{...t.style,stroke:o,strokeWidth:n==="selected"?1.5:void 0},markerEnd:i,zIndex:l}}const[tE,nE]=Xe.createInjectionState(function(t){const{phase:n,flowId:o,layoutOptions:a,readonly:i}=t,{viewport:r,padding:l=mn.padding,gaps:s=mn.gaps}=a,{nodes:c=mn.gaps.nodes}=s,u=ze.useVueFlow(o),f=tt(),d=Dc(),p=ua(),{i18n:{t:m}}=De(),{findNode:g,fitView:y,deleteKeyCode:C,onNodeDrag:b,onNodeDragStop:h,onConnect:E,onNodesChange:k,onEdgesChange:_,onEdgeUpdate:w,onEdgeMouseEnter:x,onEdgeMouseLeave:O,getNodes:K,setNodes:I,setEdges:S,addSelectedNodes:P,screenToFlowCoordinate:F}=u;C.value=["Delete","Backspace"];const{state:T,commit:D,moveNode:U,selectNode:q,removeNode:L,getNodeById:V,connectEdge:R,disconnectEdge:A,getInEdgesByNodeId:v,branchGroups:z,commit:$,reset:N,groupMapById:B}=f,{isGroupId:j,canAddMember:W}=z,X=e.shallowRef(),ee=ne=>{X.value=ne},oe=e.readonly(X);function Q(ne,Ee){const be=V(ne.source),ke=V(ne.target);return!!(be&&ke&&be.phase===Ee&&ke.phase===Ee)}const te=XC({phase:n,readonly:i,flowId:o,draggingId:oe}),{memberGroupMap:ie,groupNodes:re,branchEdges:Ce,isBranchEdgeId:pe,updateGroupLayout:Me,translateGroupTree:ue,getNodeDepth:ye,maxGroupDepth:fe}=te,{activeGroupId:Se,start:we,updateActiveGroup:H,end:J}=JC({phase:n,groupMapById:B,getNodeDepth:ye,canAddMember:W,draggingId:oe}),G=e.computed(()=>T.value.nodes.filter(ne=>ne.phase===n&&!ne.hidden).map(ne=>{const Ee=ie.value.get(ne.id),be=Ee==null?void 0:Ee.position,ke=Ee==null?void 0:Ee.dimensions,he=Ee&&be&&ke?{x:ne.position.x-be.x,y:ne.position.y-be.y}:ne.position,Ae=ye(ne.id),Be=!!(Ee&&be&&ke),Ne=(Be?Ae:0)+fe.value+1;return{id:ne.id,type:"flow",position:he,data:ne,deletable:!Ra(ne),parentNode:Be?Ee.id:void 0,zIndex:Ne*fr+bC}})),ce=e.computed(()=>T.value.edges.filter(ne=>Q(ne,n)).filter(ne=>!z.isEdgeEnteringGroup(ne.source,ne.target)).filter(ne=>{const Ee=V(ne.source),be=V(ne.target);return!(Ee!=null&&Ee.hidden)&&!(be!=null&&be.hidden)}).map(ne=>{const Ee=V(ne.source),be=V(ne.target);if(!Ee||!be){const he=[];throw Ee||he.push(`source node "${ne.source}"`),be||he.push(`target node "${ne.target}"`),new Error(`Missing ${he.join(" and ")} for edge "${ne.id}" in phase "${n}"`)}const ke=Math.max(ye(ne.source),ye(ne.target))+fe.value+1;return _r({id:ne.id,source:ne.source,target:ne.target,sourceHandle:ne.sourceField?`outputs@${ne.sourceField}`:"output",targetHandle:ne.targetField?`inputs@${ne.targetField}`:"input",markerEnd:ze.MarkerType.ArrowClosed,data:ne,updatable:!i,zIndex:ke*fr+yC})})),Z=e.computed(()=>[...Ce.value,...ce.value]),{autoLayout:de}=YC({phase:n,layoutOptions:a,branchLayout:te,nodes:G,edges:Z});QC({readonly:i,flowId:o}),e.watch([G,re,Z],([ne,Ee,be])=>{I([...Ee,...ne]),S(be)},{immediate:!0});const Ie=e.computed(()=>({padding:l/Math.max(e.toValue(r==null?void 0:r.width)??0,e.toValue(r==null?void 0:r.height)??0)}));async function ge({source:ne,sourceHandle:Ee,target:be,targetHandle:ke}){if(!Ee||!ke)return;const he=jc(Ee),Ae=jc(ke);if((he==null?void 0:he.io)==="input"||(Ae==null?void 0:Ae.io)==="output"||Ee==="output"&&ke==="output")return;const Be=v(be);let Ne=!1,Re=!1;const Ve=[],Ue=[],Fe=(Ae==null?void 0:Ae.io)==="input"?Be.filter(nt=>!nt.targetField):Be.filter(nt=>!!nt.targetField);Fe.length>0&&(Ne=!0,Fe.forEach(nt=>{Ue.push(xo(nt,V)),A(nt.id,!1)}));const Qe=(Ae==null?void 0:Ae.io)==="input"?Ae!=null&&Ae.field?Be.filter(nt=>nt.targetField===Ae.field):Be.filter(nt=>!!nt.targetField):Be.filter(nt=>!nt.targetField);if(Qe.length>0){if(Qe.some(Lt=>Lt.source===ne&&Lt.target===be&&Lt.targetField===(Ae==null?void 0:Ae.field)&&Lt.sourceField===(he==null?void 0:he.field)))return;Re=!0,Qe.forEach(Lt=>{Ue.push(xo(Lt,V)),A(Lt.id,!1)})}if(!R({source:ne,sourceField:he==null?void 0:he.field,target:be,targetField:Ae==null?void 0:Ae.field},!1)){N(),p({message:m("plugins.free-form.datakit.flow_editor.error.invalid_connection"),appearance:"danger"});return}if(Ve.push(qa(ne,he==null?void 0:he.field,be,Ae==null?void 0:Ae.field,V)),Ne||Re){if(!d)throw N(),new Error("Expected confirm modal to be provided here when reachable");if(!await d(m(Ne?"plugins.free-form.datakit.flow_editor.confirm.message.switch":"plugins.free-form.datakit.flow_editor.confirm.message.override"),Ve,Ue)){N();return}}$()}E(ge);let Pe=!1;const $e=()=>{Pe&&(Pe=!1,$())};k(ne=>{ne.filter(ke=>ke.type==="select").filter(ke=>!j(ke.id)).sort((ke,he)=>ke.selected===he.selected?0:ke.selected?1:-1).forEach(ke=>{q(ke.selected?ke.id:void 0)});let be=!1;ne.forEach(ke=>{if(ke.type==="remove"){if(j(ke.id))return;be=!0,L(ke.id,!1)}}),be&&!Pe&&(Pe=!0,queueMicrotask($e))}),b(({node:ne,event:Ee})=>{var Be,Ne,Re;if(!ne)return;if(j(ne.id)){const Ve=ne.id;ee(Ve),H(void 0);const Ue=B.value.get(Ve);if(!Ue)return;const Fe=Ue.position??{...ne.position},Qe=ne.position.x-Fe.x,ln=ne.position.y-Fe.y;ue(Ve,ne.position,Qe,ln);const nt=ie.value.get(Ue.ownerId);nt&&Me(nt.id,!1);return}const be=ne.id;we("canvas"),ee(be);const ke=ne.parentNode;let he={...ne.position};if(ke&&j(ke)){const Ve=B.value.get(ke);Ve!=null&&Ve.position&&(he={x:Ve.position.x+ne.position.x,y:Ve.position.y+ne.position.y})}if(U(be,he,!1),!Ra(V(be))){const Ve={x:he.x,y:he.y,width:((Be=ne.dimensions)==null?void 0:Be.width)??0,height:((Ne=ne.dimensions)==null?void 0:Ne.height)??0},Ue=Ee&&"clientX"in Ee?F({x:Ee.clientX,y:Ee.clientY}):void 0,Fe={x:Ve.x+Ve.width/2,y:Ve.y+Ve.height/2};H(Ue??Fe)}const Ae=ke&&j(ke)?ke:(Re=ie.value.get(be))==null?void 0:Re.id;Ae&&Me(Ae,!1)}),h(({node:ne})=>{var Ae;if(!ne)return;if(ee(void 0),j(ne.id)){D();return}const Ee=ne.id,be=ne.parentNode;let ke={...ne.position};if(be&&j(be)){const Be=B.value.get(be);Be!=null&&Be.position&&(ke={x:Be.position.x+ne.position.x,y:Be.position.y+ne.position.y})}U(Ee,ke,!1);const he=be&&j(be)?be:(Ae=ie.value.get(Ee))==null?void 0:Ae.id;he&&Me(he,!1),an(Ee),J(),D()}),_(ne=>{ne.filter(ke=>ke.type==="select").sort((ke,he)=>ke.selected===he.selected?0:ke.selected?1:-1).forEach(ke=>{pe(ke.id)||(Kc=ke.selected?ke.id:void 0,S(he=>he.map(Ae=>Ae.id!==ke.id||!Ae.markerEnd?Ae:_r({...Ae,zIndex:ke.selected?1:void 0}))))});let be=!1;ne.forEach(ke=>{if(ke.type==="remove"){if(pe(ke.id))return;be=!0,A(ke.id,!1)}}),be&&!Pe&&(Pe=!0,queueMicrotask($e))}),x(({edge:ne})=>{pe(ne.id)||(Ga=ne.id,S(Ee=>Ee.map(be=>be.id!==ne.id?be:_r(be))))}),O(({edge:ne})=>{pe(ne.id)||(Ga=void 0,S(Ee=>Ee.map(be=>be.id!==ne.id?be:_r(be))))}),w(({edge:ne,connection:Ee})=>{pe(ne.id)||(A(ne.id,!1),ge(Ee))});function se(ne){y({...Ie.value,...ne})}async function ae(ne){return q(ne),new Promise(Ee=>setTimeout(()=>{const be=g(ne);P(be?[be]:[]),Ee()},0))}function st(ne){const Ee=K.value.filter(({type:Fe})=>Fe!=="group"),be=Ee.find(({id:Fe})=>Fe===ne);if(!be)throw new Error(`Node ${ne} not found`);const{x:ke,y:he}=be.data.position,{width:Ae,height:Be}=be.dimensions,Ne=he,Re=he+Be,Ve=Ee.filter(({id:Fe})=>Fe!==ne).filter(({data:{position:{y:Fe}},dimensions:{height:Qe}})=>Fe<Re&&Fe+Qe>Ne).map(({data:{position:{x:Fe}},dimensions:{width:Qe}})=>({left:Fe,right:Fe+Qe})).sort((Fe,Qe)=>Fe.left-Qe.left);let Ue=ke+Ae+c;for(const{left:Fe,right:Qe}of Ve)if(!(Qe<=Ue)){if(Ue+Ae<=Fe)return{x:Ue,y:Ne};Ue=Math.max(Ue,Qe)+c}return{x:Ue,y:Ne}}function gn(ne){if(!ne)return;const Ee=g(ne);if(!Ee)throw new Error(`Node ${ne} not found`);const{position:{x:be},dimensions:{width:ke}}=Ee,he=be+ke,{viewport:Ae,dimensions:Be,setViewport:Ne}=u,{x:Re,y:Ve,zoom:Ue}=Ae.value,{width:Fe}=Be.value,Qe=be*Ue+Re,ln=he*Ue+Re,nt=Fe-Vc-c;if(ln<=nt)return;let Lt=nt-ln;Qe+Lt<0&&(Lt=-Qe),Lt!==0&&Ne({x:Re+Lt,y:Ve,zoom:Ue},{duration:EC})}function an(ne){if(!Se.value)return!1;const{nodeId:Ee,branch:be}=zw(Se.value),ke=z.addMember(Ee,be,ne,{commit:!1});return H(void 0),ke}return{vueFlowStore:u,editorStore:f,readonly:i,nodes:G,edges:Z,selectNode:ae,autoLayout:de,placeToRight:st,scrollRightToReveal:gn,fitViewParams:Ie,fitView:se,groupDrop:{activeGroupId:Se,startPanelDrag:()=>we("panel"),endPanelDrag:J,updateActiveGroup:H,attachNodeToActiveGroup:an}}});let Xn=null;function oE(){var n;if(Xn)return Xn;if(typeof navigator>"u")return Xn="windows";const t=((n=navigator.userAgentData)==null?void 0:n.platform)||navigator.platform||navigator.userAgent;return/Mac|iPhone|iPad|iPod/i.test(t)?Xn="mac":/Linux/i.test(t)&&!/Android/i.test(t)?Xn="linux":Xn="windows"}const rE={Shift:"⇧",Alt:"⌥",Ctrl:"⌃",Meta:"⌘",Mod:"⌘",Enter:"↩",ArrowUp:"↑",ArrowDown:"↓",ArrowLeft:"←",ArrowRight:"→",Tab:"⇥",Esc:"⎋",Space:"Space",Delete:"⌫"},aE={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"},iE={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 lE(t,n={}){const o=n.platform??oE(),a=n.joiner??(o==="mac"?"":" + "),i=o==="mac"?rE:o==="linux"?iE:aE;return(Array.isArray(t)?t:t[o]).map(l=>l in i?i[l]:l).join(a)}const sE={key:0,class:"label"},cE={class:"keys"},br=_e(e.defineComponent({__name:"HotkeyLabel",props:{label:{},keys:{},reverse:{type:Boolean}},setup(t){const n=lE(t.keys);return(o,a)=>(e.openBlock(),e.createElementBlock("span",{class:e.normalizeClass(["dk-hotkey-label",{reverse:t.reverse}])},[t.label?(e.openBlock(),e.createElementBlock("span",sE,e.toDisplayString(t.label),1)):e.createCommentVNode("",!0),e.createElementVNode("kbd",cE,e.toDisplayString(e.unref(n)),1)],2))}}),[["__scopeId","data-v-f3080813"]]),dE=["onClick"],uE={key:0,class:"additional-count"},vc=24,pE=16,kr=_e(e.defineComponent({__name:"NodePortal",props:{expanded:{type:Boolean,default:()=>{}},reversed:{type:Boolean},targets:{}},setup(t){const n=Number.parseFloat(ky)||0,o={target:"body"},{portalSelection:a,selectPortalEdge:i}=tt(),r=e.ref(!1),l=e.computed(()=>{const g=a.value;return g?t.targets.some(y=>y.edgeId===g):!1}),s=e.computed(()=>t.expanded!==void 0?t.expanded||l.value:r.value||l.value),c=()=>vc*t.targets.length+n*(t.targets.length-1),u=e.computed(()=>({width:s.value?`${c()}px`:"fit-content"})),f=g=>{i(g)},d=g=>a.value===g,p=e.computed(()=>t.targets.map((g,y)=>{var b;const C=(vc+n)*y;return{edgeId:g.edgeId,key:`${g.node.id}-${g.fieldName??"node"}-${y}`,icon:(b=rt[g.node.type])==null?void 0:b.icon,tooltip:g.fieldName?`${g.node.name}.${g.fieldName}`:g.node.name,highlighted:d(g.edgeId),tooltipEl:null,style:y===0?{width:"fit-content",zIndex:t.targets.length}:{position:"absolute",...t.reversed?{left:`${C}px`,transform:s.value?"translateX(0)":`translateX(-${C}px)`}:{right:0,transform:s.value?`translateX(-${C}px)`:"translateX(0)"},zIndex:t.targets.length-y}}})),m=e.computed(()=>Math.max(t.targets.length-1,0));return(g,y)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-node-portal",{expanded:s.value,reversed:t.reversed}]),onClick:y[0]||(y[0]=e.withModifiers(()=>{},["stop"])),onDragstart:y[1]||(y[1]=e.withModifiers(()=>{},["stop"])),onMousedown:y[2]||(y[2]=e.withModifiers(()=>{},["stop"])),onMouseenter:y[3]||(y[3]=C=>r.value=!0),onMouseleave:y[4]||(y[4]=C=>r.value=!1)},[e.createElementVNode("div",{class:"target-boxes",style:e.normalizeStyle(u.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(p.value,(C,b)=>(e.openBlock(),e.createBlock(e.unref(Oe.KTooltip),{key:C.key,class:"target-box-wrapper","kpop-attributes":o,placement:"top",style:e.normalizeStyle(C.style),text:C.tooltip},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["target-box",{highlighted:C.highlighted}]),onClick:e.withModifiers(h=>f(C.edgeId),["stop"])},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(C.icon),{color:e.unref(Dn),size:pE},null,8,["color"])),b===0&&m.value>0?(e.openBlock(),e.createElementBlock("span",uE," +"+e.toDisplayString(m.value),1)):e.createCommentVNode("",!0)],10,dE)]),_:2},1032,["style","text"]))),128))],4)],34))}}),[["__scopeId","data-v-f1aa612b"]]),wr=_e(e.defineComponent({__name:"HandleTwig",props:{color:{},position:{default:()=>ze.Position.Left},size:{default:()=>Number.parseFloat(Hl)},type:{}},setup(t){e.useCssVars(o=>({dfebf370:o.color}));const n=e.computed(()=>({width:`${t.size}px`,minWidth:`${t.size}px`}));return(o,a)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["handle-twig",[t.type,t.position===e.unref(ze.Position).Left?"left":"right"]]),style:e.normalizeStyle(n.value)},null,6))}}),[["__scopeId","data-v-6fedc19a"]]),Uc=_e(e.defineComponent({__name:"NodeBadge",props:{type:{},size:{},iconOnly:{type:Boolean}},setup(t){e.useCssVars(a=>{var i,r;return{b58c4842:(i=n.value.colors)==null?void 0:i.background,v6ae9eff4:(r=n.value.colors)==null?void 0:r.foreground}});const n=e.computed(()=>rt[t.type]),o=e.computed(()=>Uw(t.type));return(a,i)=>{var l;const r=e.resolveComponent("KBadge");return e.openBlock(),e.createBlock(r,{appearance:"neutral",class:e.normalizeClass(["dk-node-badge",{"icon-only":t.iconOnly,"has-colors":!!n.value.colors}]),size:t.size},e.createSlots({default:e.withCtx(()=>[e.createTextVNode(" "+e.toDisplayString(o.value),1)]),_:2},[(l=n.value)!=null&&l.icon?{name:"icon",fn:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(n.value.icon)))]),key:"0"}:void 0]),1032,["class","size"])}}}),[["__scopeId","data-v-05435e4f"]]),fE={class:"body"},mE={class:"name"},gE={class:"handle"},hE={class:"handle-label-wrapper"},yE={class:"handle-label-wrapper"},_E={class:"handle-label text"},bE={class:"handle"},kE={class:"handle-label-wrapper"},wE={class:"handle-label-wrapper"},CE={class:"handle-label text"},EE={key:2,class:"branch-handles"},NE={class:"handle-label-wrapper"},xE={class:"handle-label text"},qc=_e(e.defineComponent({__name:"FlowNode",props:{data:{},error:{type:Boolean},readonly:{type:Boolean}},setup(t){const{t:n}=it.createI18n("en-us",ct),o=nE(),{getInEdgesByNodeId:a,getOutEdgesByNodeId:i,getNodeById:r,toggleExpanded:l,duplicateNode:s,removeNode:c,propertiesPanelOpen:u,branchGroups:f}=tt(),d=e.computed(()=>Wn(t.data.type)),p=e.computed(()=>t.data.fields.input.length>0),m=e.computed(()=>t.data.fields.output.length>0),g=e.computed(()=>p.value&&a(t.data.id).every(A=>A.targetField===void 0)),y=e.computed(()=>m.value&&i(t.data.id).every(A=>A.sourceField===void 0)),C=e.computed(()=>t.data.expanded.input??!1),b=e.computed(()=>t.data.expanded.output??!1),h=e.computed(()=>{var A,v,z;return((z=(v=(A=d.value.io)==null?void 0:A.next)==null?void 0:v.branches)==null?void 0:z.map(({name:$})=>$))??[]}),E=e.computed(()=>h.value.length>0),k=e.computed(()=>f.findMembership(t.data.id)),_=e.computed(()=>{var A,v;if(t.data.type==="property"){const z=(A=t.data.config)==null?void 0:A.property;return Ua(z)}return(v=d.value.io)==null?void 0:v.input}),w=e.computed(()=>{var A,v;if(t.data.type==="property"){const z=(A=t.data.config)==null?void 0:A.property;return va(z)}return(v=d.value.io)==null?void 0:v.output}),x=e.computed(()=>Ra(t.data)),O=e.computed(()=>t.data.phase==="response"),K=e.computed(()=>t.data.phase==="request"?ze.Position.Left:ze.Position.Right),I=e.computed(()=>t.data.phase==="request"?ze.Position.Right:ze.Position.Left),S=e.computed(()=>t.data.phase==="request"?ze.Position.Right:ze.Position.Left),P=e.computed(()=>x.value?n(`plugins.free-form.datakit.flow_editor.node_types.${t.data.type}.name`):t.data.name),F=e.computed(()=>x.value?uy:na);function T(A){return A==="input"?O.value:!O.value}function D(A){const v=new Map,z=A==="input"?a(t.data.id):i(t.data.id);for(const $ of z){const N=r(A==="input"?$.source:$.target);if(!N)continue;if(A==="input"){const ee=N.type==="vault",oe=N.phase!==t.data.phase,Q=f.isEdgeEnteringGroup(N.id,t.data.id);if(!(ee||oe||Q))continue}else{const ee=N.phase!==t.data.phase,oe=f.isEdgeEnteringGroup(t.data.id,N.id);if(!(ee||oe))continue}const B=A==="input"?$.targetField||"input":$.sourceField||"output";let j;if(A==="input"&&$.sourceField){const ee=N.fields.output.find(oe=>oe.id===$.sourceField);j=ee==null?void 0:ee.name}else if(A==="output"&&$.targetField){const ee=N.fields.input.find(oe=>oe.id===$.targetField);j=ee==null?void 0:ee.name}const W={edgeId:$.id,node:N,fieldName:j},X=v.get(B);X?X.push(W):v.set(B,[W])}return v}const U=e.computed(()=>D("input")),q=e.computed(()=>D("output"));function L(A){!o||o.readonly||A==="input"&&!g.value||A==="output"&&!y.value||l(t.data.id,A)}async function V(){if(!o||o.readonly)return;const A=s(t.data.id,o.placeToRight(t.data.id));await o.selectNode(A),o.scrollRightToReveal(A),u.value=!0}function R(){f.removeMember(t.data.id)}return e.watch(g,A=>{A||l(t.data.id,"input",!0,!0,"*")},{immediate:!0}),e.watch(y,A=>{A||l(t.data.id,"output",!0,!0,"*")},{immediate:!0}),e.watch(()=>t.data.fields.input,(A,v)=>{Vt(A,v)||l(t.data.id,"input",A.length>0,!0,"*")},{deep:!0}),e.watch(()=>t.data.fields.output,(A,v)=>{Vt(A,v)||l(t.data.id,"output",A.length>0,!0,"*")},{deep:!0}),(A,v)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-flow-node",{reversed:O.value,implicit:x.value,readonly:t.readonly}])},[e.createElementVNode("div",fE,[x.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(Oe.KTooltip),{key:0,class:"badge",placement:"top",text:t.data.type},{default:e.withCtx(()=>[e.createVNode(Uc,{"icon-only":"",size:"small",type:t.data.type},null,8,["type"])]),_:1},8,["text"])),e.createElementVNode("div",mE,e.toDisplayString(P.value),1),t.error?(e.openBlock(),e.createBlock(e.unref(me.WarningIcon),{key:1,class:"error-icon",color:e.unref(oa),size:16},null,8,["color"])):e.createCommentVNode("",!0),x.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(Oe.KDropdown),{key:2,class:"menu",disabled:t.readonly,"kpop-attributes":{offset:"4px",target:"body",popoverClasses:"dk-flow-node-menu"},width:"160",onClick:v[1]||(v[1]=e.withModifiers(()=>{},["stop"]))},{items:e.withCtx(()=>[e.createVNode(e.unref(Oe.KDropdownItem),{onClick:V},{default:e.withCtx(()=>[e.createVNode(br,{keys:e.unref(mr).duplicate,label:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.duplicate")},null,8,["keys","label"])]),_:1}),k.value?(e.openBlock(),e.createBlock(e.unref(Oe.KDropdownItem),{key:0,onClick:R},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(Oe.KDropdownItem),{danger:"",onClick:v[0]||(v[0]=z=>e.unref(c)(t.data.id))},{default:e.withCtx(()=>[e.createVNode(br,{keys:e.unref(mr).delete,label:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.delete")},null,8,["keys","label"])]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"tertiary",class:"menu-trigger",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{color:e.unref(co)},null,8,["color"])]),_:1})]),_:1},8,["disabled"]))]),e.createElementVNode("div",{class:e.normalizeClass(["handles",{reversed:O.value}])},[_.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["input-handles",{"has-fields":p.value}])},[e.createElementVNode("div",gE,[e.createVNode(e.unref(ze.Handle),{id:"input",position:K.value,type:"target"},null,8,["position"]),U.value.has("input")?(e.openBlock(),e.createBlock(kr,{key:0,mode:"input",reversed:T("input"),targets:U.value.get("input")},null,8,["reversed","targets"])):e.createCommentVNode("",!0),e.createElementVNode("div",hE,[e.createElementVNode("div",{class:e.normalizeClass(["handle-label trigger",{collapsible:g.value}]),onClick:v[2]||(v[2]=e.withModifiers(z=>L("input"),["stop"]))},[v[4]||(v[4]=e.createElementVNode("div",{class:"text"}," inputs ",-1)),p.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[C.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(me.UnfoldMoreIcon),{key:0,size:e.unref(Wo)},null,8,["size"])),C.value?(e.openBlock(),e.createBlock(e.unref(me.UnfoldLessIcon),{key:1,color:g.value?void 0:e.unref(Kl),size:e.unref(Wo)},null,8,["color","size"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2),p.value&&C.value?(e.openBlock(),e.createBlock(wr,{key:0,color:F.value,position:K.value,type:"bar"},null,8,["color","position"])):e.createCommentVNode("",!0)])]),p.value&&C.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.data.fields.input,(z,$)=>(e.openBlock(),e.createElementBlock("div",{key:`inputs-${z.id}`,class:"handle indented"},[e.createVNode(e.unref(ze.Handle),{id:`inputs@${z.id}`,position:K.value,type:"target"},null,8,["id","position"]),U.value.has(z.id)?(e.openBlock(),e.createBlock(kr,{key:0,mode:"input",reversed:T("input"),targets:U.value.get(z.id)},null,8,["reversed","targets"])):e.createCommentVNode("",!0),e.createElementVNode("div",yE,[e.createElementVNode("div",_E,e.toDisplayString(z.name),1),e.createVNode(wr,{color:F.value,position:K.value,type:$<t.data.fields.input.length-1?"trident":"corner"},null,8,["color","position","type"])])]))),128)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),w.value?(e.openBlock(),e.createElementBlock("div",{key:1,class:e.normalizeClass(["output-handles",{"has-fields":m.value}])},[e.createElementVNode("div",bE,[e.createElementVNode("div",kE,[e.createElementVNode("div",{class:e.normalizeClass(["handle-label trigger",{collapsible:y.value}]),onClick:v[3]||(v[3]=e.withModifiers(z=>L("output"),["stop"]))},[v[5]||(v[5]=e.createElementVNode("div",{class:"text"}," outputs ",-1)),m.value?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[b.value?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(me.UnfoldMoreIcon),{key:0,size:e.unref(Wo)},null,8,["size"])),b.value?(e.openBlock(),e.createBlock(e.unref(me.UnfoldLessIcon),{key:1,color:y.value?void 0:e.unref(Kl),size:e.unref(Wo)},null,8,["color","size"])):e.createCommentVNode("",!0)],64)):e.createCommentVNode("",!0)],2),m.value&&b.value?(e.openBlock(),e.createBlock(wr,{key:0,color:F.value,position:I.value,type:"bar"},null,8,["color","position"])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(ze.Handle),{id:"output",position:I.value,type:"source"},null,8,["position"]),q.value.has("output")?(e.openBlock(),e.createBlock(kr,{key:0,mode:"output",reversed:T("output"),targets:q.value.get("output")},null,8,["reversed","targets"])):e.createCommentVNode("",!0)]),m.value&&b.value?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:0},e.renderList(t.data.fields.output,(z,$)=>(e.openBlock(),e.createElementBlock("div",{key:`outputs-${z.id}`,class:"handle indented"},[e.createElementVNode("div",wE,[e.createElementVNode("div",CE,e.toDisplayString(z.name),1),e.createVNode(wr,{color:F.value,position:I.value,type:$<t.data.fields.output.length-1?"trident":"corner"},null,8,["color","position","type"])]),e.createVNode(e.unref(ze.Handle),{id:`outputs@${z.id}`,position:I.value,type:"source"},null,8,["id","position"]),q.value.has(z.id)?(e.openBlock(),e.createBlock(kr,{key:0,mode:"output",reversed:T("output"),targets:q.value.get(z.id)},null,8,["reversed","targets"])):e.createCommentVNode("",!0)]))),128)):e.createCommentVNode("",!0)],2)):e.createCommentVNode("",!0),E.value?(e.openBlock(),e.createElementBlock("div",EE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(h.value,z=>(e.openBlock(),e.createElementBlock("div",{key:`branch-${z}`,class:"handle"},[e.createElementVNode("div",NE,[e.createElementVNode("div",xE,e.toDisplayString(z),1)]),e.createVNode(e.unref(ze.Handle),{id:`branch@${z}`,connectable:!1,position:S.value,type:"source"},null,8,["id","position"])]))),128))])):e.createCommentVNode("",!0)],2)],2))}}),[["__scopeId","data-v-8031cca0"]]),SE=_e(e.defineComponent({__name:"GroupNode",props:{data:{},active:{type:Boolean}},setup(t){const n=t,o=e.computed(()=>n.data.phase==="response"),a=e.computed(()=>o.value?ze.Position.Right:ze.Position.Left);return(i,r)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-branch-group-node",{reversed:o.value,"drop-target":t.active}])},[e.createVNode(e.unref(ze.Handle),{id:"input",connectable:!1,position:a.value,type:"target"},null,8,["position"])],2))}}),[["__scopeId","data-v-4f43fd82"]]),Gc=_e(e.defineComponent({__name:"FlowCanvas",props:{flowId:{},phase:{},mode:{}},emits:["initialized","nodes-change"],setup(t,{expose:n,emit:o}){const a=o,i=e.useTemplateRef("flowCanvas"),r=Xe.useElementBounding(i),{i18n:{t:l}}=De(),{vueFlowStore:s,editorStore:c,autoLayout:u,fitViewParams:f,fitView:d,selectNode:p,placeToRight:m,scrollRightToReveal:g,groupDrop:y}=tE({phase:t.phase,flowId:t.flowId,layoutOptions:{viewport:{width:r.width,height:r.height}},readonly:t.mode!=="edit"}),{addNode:C,propertiesPanelOpen:b,invalidConfigNodeIds:h,selectedNode:E,duplicateNode:k,commit:_,selectPortalEdge:w}=c,{screenToFlowCoordinate:x,zoomIn:O,zoomOut:K,viewport:I,maxZoom:S,minZoom:P}=s,{activeGroupId:F,startPanelDrag:T,endPanelDrag:D,updateActiveGroup:U,attachNodeToActiveGroup:q}=y;function L(N){var j;const B=(j=N.dataTransfer)==null?void 0:j.types.find(W=>W.startsWith(`${Co}/`));if(B)return B.replace(`${Co}/`,"")}function V(N){var B;if(t.mode==="edit"){if(((B=N==null?void 0:N.node)==null?void 0:B.type)==="group"){p(void 0),w(void 0);return}b.value=!0}}function R(N){t.mode==="edit"&&(N.preventDefault(),U(x({x:N.clientX,y:N.clientY})))}function A(N){var te;if(t.mode!=="edit")return;const B=(te=N.dataTransfer)==null?void 0:te.getData(Co);if(!B)return;N.preventDefault();const j=JSON.parse(B);if(j.action!=="create-node")return;const W=x({x:N.clientX,y:N.clientY}),{type:X,anchor:ee}=j.data,oe={type:X,phase:t.phase,position:{x:W.x-ee.offsetX,y:W.y-ee.offsetY}},Q=C(oe,!1);if(!Q){D();return}q(Q),_(),p(Q),b.value=!0,D()}async function v(){await u(),setTimeout(()=>d(),0)}const z=e.computed(()=>{if(t.mode==="preview")return[];const N=[{name:"zoom_in",icon:me.AddIcon,action:O,disabled:I.value.zoom>=S.value},{name:"zoom_out",icon:me.RemoveIcon,action:K,disabled:I.value.zoom<=P.value},{name:"fit_view",icon:me.FullscreenIcon,action:d}];return t.mode==="edit"&&N.push({name:"auto_layout",icon:me.AutoLayoutIcon,action:v}),N});t.mode==="edit"&&(Xe.useEventListener("dragstart",N=>{L(N)&&T()}),Xe.useEventListener("dragend",()=>{D()}));async function $(){const N=E.value;if(t.mode!=="edit"||!N||N.phase!==t.phase)return;const B=k(N.id,m(N.id));B&&(await p(B),b.value=!0,g(B))}return Tc({enabled:e.computed(()=>!!E.value&&t.mode==="edit"&&E.value.phase===t.phase),duplicate:$}),n({autoLayout:u,fitView:d}),(N,B)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"flowCanvas",ref:i,class:"dk-flow-canvas"},[e.createVNode(e.unref(ze.VueFlow),{id:t.flowId,class:e.normalizeClass(["flow",{readonly:t.mode!=="edit"}]),"connect-on-click":!1,"elements-selectable":t.mode==="edit","max-zoom":e.unref(wC),"min-zoom":e.unref(CC),"multi-selection-key-code":null,"nodes-connectable":t.mode==="edit","nodes-draggable":t.mode==="edit","pan-on-drag":t.mode==="preview"?!1:void 0,"pan-on-scroll":t.mode!=="edit"?!1:void 0,"zoom-on-double-click":t.mode!=="edit"?!1:void 0,"zoom-on-pinch":t.mode!=="edit"?!1:void 0,"zoom-on-scroll":t.mode!=="edit"?!1:void 0,onDragover:R,onDrop:A,onNodeClick:V,onNodesChange:B[0]||(B[0]=j=>a("nodes-change")),onNodesInitialized:B[1]||(B[1]=j=>a("initialized"))},{"node-flow":e.withCtx(({data:j})=>[e.createVNode(qc,{data:j,error:e.unref(h).has(j.id),readonly:t.mode!=="edit"},null,8,["data","error","readonly"])]),"node-group":e.withCtx(({data:j})=>[e.createVNode(SE,{active:e.unref(F)===j.id,data:j},null,8,["active","data"])]),default:e.withCtx(()=>[e.createVNode(e.unref(bd.Background)),e.createVNode(e.unref(ii.Controls),{"fit-view-params":e.unref(f),position:"bottom-left","show-fit-view":!1,"show-interactive":!1,"show-zoom":!1},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,j=>(e.openBlock(),e.createBlock(e.unref(Oe.KTooltip),{key:j.name,placement:"right",text:e.unref(l)(`plugins.free-form.datakit.flow_editor.actions.${j.name}`)},{default:e.withCtx(()=>[e.createVNode(e.unref(ii.ControlButton),{disabled:j.disabled,onClick:e.withModifiers(j.action,["stop"])},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(j.icon),{size:18}))]),_:2},1032,["disabled","onClick"])]),_:2},1032,["text"]))),128))]),_:1},8,["fit-view-params"])]),_:1},8,["id","class","elements-selectable","max-zoom","min-zoom","nodes-connectable","nodes-draggable","pan-on-drag","pan-on-scroll","zoom-on-double-click","zoom-on-pinch","zoom-on-scroll"])],512))}}),[["__scopeId","data-v-d73f90a3"]]),AE={class:"label-content"},IE={class:"count"},PE={class:"label-content"},TE={class:"count"},zc=.5,za=.03,OE=30,Ha=_e(e.defineComponent({__name:"FlowPanels",props:{inactive:{type:Boolean},mode:{},resizable:{type:Boolean}},setup(t){const{t:n}=it.createI18n("en-us",ct),o=e.ref(!1),a=e.ref(!1),{responsePanelCollapsed:i}=pr(),{state:r,configNodeCounts:l,clearPendingLayout:s,setPendingFitView:c,commit:u,clear:f,portalSelection:d}=tt(),p=e.useId(),m=`${p}-request`,g=`${p}-response`,y=ze.useVueFlow(m),C=ze.useVueFlow(g);function b(oe,Q){const{onPaneClick:te,onNodesChange:ie,onEdgesChange:re,getSelectedNodes:Ce,getSelectedEdges:pe}=oe,{removeSelectedElements:Me}=Q;function ue(ye){if(!ye){Me();return}ye.some(fe=>fe.type==="select")&&Ce.value.length+pe.value.length>0&&Me()}ie(ue),re(ue),te(()=>ue())}b(y,C),b(C,y),e.watch(d,oe=>{oe&&(y.removeSelectedElements(),C.removeSelectedElements())});const h=e.useTemplateRef("flowPanels"),E=e.useTemplateRef("requestLabel"),k=e.useTemplateRef("requestCanvasContainer"),_=e.useTemplateRef("requestFlow"),w=e.useTemplateRef("resizeHandle"),x=e.useTemplateRef("responseLabel"),O=e.useTemplateRef("responseCanvasContainer"),K=e.useTemplateRef("responseFlow"),I=Xe.useElementBounding(h),S=Xe.useElementBounding(E),P=Xe.useElementBounding(k),F=Xe.useElementBounding(w),T=Xe.useElementBounding(x),D=Xe.useElementBounding(O),U=e.computed(()=>Math.max(OE,I.height.value*za)),q=e.computed(()=>I.height.value-S.height.value-F.height.value-T.height.value),L=e.computed(()=>{const oe=q.value;return oe?Math.max(za,U.value/oe):za}),V=e.ref(zc),R=e.computed(()=>`${V.value*100}%`),A=e.computed(()=>`${(1-V.value)*100}%`),v=e.computed(()=>V.value<=L.value),z=e.computed(()=>1-V.value<=L.value);function $(oe,{persist:Q=!0}={}){const te=Math.min(1,Math.max(0,oe));V.value=te,Q&&t.mode==="edit"&&(i.value=z.value)}function N(oe,Q=!0){$(oe?1:zc,{persist:Q})}function B(oe=!0){$(0,{persist:oe})}if(t.mode==="edit"){const oe=l.value.response===0,Q=i.value;N(oe||Q,!1)}else e.watch(()=>l.value.response,oe=>{N(oe===0,!1)},{immediate:!0});const j=()=>{t.resizable&&(v.value?N(!1):B())},W=()=>{t.resizable&&N(!z.value)},{isDragging:X}=Xe.useDraggable(w,{onMove(oe){if(!t.resizable)return;const Q=Math.max(0,oe.y-P.top.value),te=Math.min(1,Math.max(0,Q/q.value));$(te,{persist:!1})},onEnd(){t.resizable&&(P.height.value<U.value?B():D.height.value<U.value?N(!0):$(V.value))}});function ee(){e.nextTick(()=>{var oe,Q;(oe=_.value)==null||oe.fitView(),(Q=K.value)==null||Q.fitView()})}return e.watch([o,a,()=>r.value.pendingLayout,()=>r.value.pendingFitView],([oe,Q,te,ie])=>{t.inactive||!oe||!Q||!te&&!ie||(te&&s(),ie&&c(!1),setTimeout(async()=>{var re,Ce;te&&(await((re=_.value)==null?void 0:re.autoLayout(!1)),await((Ce=K.value)==null?void 0:Ce.autoLayout(!1)),u("*"),te==="clearHistory"&&f()),ie&&setTimeout(()=>ee(),0)},0))}),(oe,Q)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"flowPanels",ref:h,class:"flow-panels"},[e.createElementVNode("div",{ref_key:"requestLabel",ref:E,class:e.normalizeClass(["label request",{resizable:t.resizable}]),onClick:j},[t.resizable?(e.openBlock(),e.createBlock(e.unref(me.ChevronDownIcon),{key:0,class:e.normalizeClass(["icon",{collapsed:v.value}])},null,8,["class"])):e.createCommentVNode("",!0),e.createElementVNode("div",AE,[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.request"))+" ",1),e.createElementVNode("span",IE,[e.unref(l).request===1?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" ("+e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" ("+e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:e.unref(l).request}))+") ",1)],64))])])],2),e.createElementVNode("div",{ref_key:"requestCanvasContainer",ref:k,class:e.normalizeClass(["canvas",{dragging:e.unref(X)}]),style:e.normalizeStyle({flexBasis:R.value})},[e.createVNode(Gc,{ref_key:"requestFlow",ref:_,"flow-id":m,mode:t.mode,phase:"request",onInitialized:Q[0]||(Q[0]=te=>o.value=!0),onNodesChange:Q[1]||(Q[1]=te=>o.value=!1)},null,8,["mode"])],6),e.createElementVNode("div",{ref_key:"resizeHandle",ref:w,class:e.normalizeClass(["resize-handle",{resizable:t.resizable}])},null,2),e.createElementVNode("div",{ref_key:"responseLabel",ref:x,class:e.normalizeClass(["label response",{dragging:e.unref(X),resizable:t.resizable}]),onClick:W},[t.resizable?(e.openBlock(),e.createBlock(e.unref(me.ChevronDownIcon),{key:0,class:e.normalizeClass(["icon",{collapsed:z.value}])},null,8,["class"])):e.createCommentVNode("",!0),e.createElementVNode("div",PE,[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.response"))+" ",1),e.createElementVNode("span",TE,[e.unref(l).response===1?(e.openBlock(),e.createElementBlock(e.Fragment,{key:0},[e.createTextVNode(" ("+e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_singular"))+") ",1)],64)):(e.openBlock(),e.createElementBlock(e.Fragment,{key:1},[e.createTextVNode(" ("+e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.canvas_panel.node_count_plural",{count:e.unref(l).response}))+") ",1)],64))])])],2),e.createElementVNode("div",{ref_key:"responseCanvasContainer",ref:O,class:e.normalizeClass(["canvas response",{dragging:e.unref(X)}]),style:e.normalizeStyle({flexBasis:A.value})},[e.createVNode(Gc,{ref_key:"responseFlow",ref:K,"flow-id":g,mode:t.mode,phase:"response",onInitialized:Q[2]||(Q[2]=te=>a.value=!0),onNodesChange:Q[3]||(Q[3]=te=>a.value=!1)},null,8,["mode"])],6)],512))}}),[["__scopeId","data-v-6fef6606"]]),VE={class:"dk-confirm-modal-body"},BE={class:"connections"},RE=_e(e.defineComponent({__name:"ConflictModal",props:{title:{},message:{},addedConnections:{},removedConnections:{}},emits:["cancel","confirm"],setup(t,{expose:n,emit:o}){const{i18n:{t:a}}=De(),i=o,r=e.ref(!1),l=e.ref(t.message),s=e.ref(t.addedConnections??[]),c=e.ref(t.removedConnections??[]);let u=null;function f(){r.value=!1,i("cancel"),u==null||u(!1)}function d(){r.value=!1,i("confirm"),u==null||u(!0)}async function p(m,g,y){return l.value=m,s.value=g??[],c.value=y??[],r.value=!0,await new Promise(C=>{u=C})}return n({open:p}),(m,g)=>{const y=e.resolveComponent("KModal");return e.openBlock(),e.createBlock(y,{"action-button-text":e.unref(a)("plugins.free-form.datakit.flow_editor.confirm.proceed"),"close-on-backdrop-click":"","max-width":"660px",title:t.title??e.unref(a)("plugins.free-form.datakit.flow_editor.confirm.title"),visible:r.value,"z-index":9999,onCancel:f,onProceed:d},{default:e.withCtx(()=>[e.createElementVNode("div",VE,[e.createElementVNode("p",null,e.toDisplayString(l.value),1),e.createElementVNode("p",null,e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.confirm.message.confirm")),1),e.createElementVNode("div",BE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value??[],([C,b])=>(e.openBlock(),e.createElementBlock("div",{key:`${C}-${b}`,class:"connection"},[e.createVNode(e.unref(me.AddIcon),{color:e.unref(py)},null,8,["color"]),e.createTextVNode(" "+e.toDisplayString(C)+" → "+e.toDisplayString(b),1)]))),128)),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value??[],([C,b])=>(e.openBlock(),e.createElementBlock("div",{key:`${C}-${b}`,class:"connection"},[e.createVNode(e.unref(me.RemoveIcon),{color:e.unref(oa)},null,8,["color"]),e.createTextVNode(" "+e.toDisplayString(C)+" → "+e.toDisplayString(b),1)]))),128))])])]),_:1},8,["action-button-text","title","visible"])}}}),[["__scopeId","data-v-9f97c2d4"]]),$E={class:"dk-editor-nav"},FE={class:"top"},LE={class:"bottom"},DE=_e(e.defineComponent({__name:"EditorNav",emits:["back"],setup(t,{emit:n}){const{t:o}=it.createI18n("en-us",ct),a=n,i=[{label:o("plugins.free-form.datakit.flow_editor.return_to_config"),icon:me.ArrowLeftIcon,onClick:()=>a("back")}],{sidePanelExpanded:r}=pr(),l=e.computed(()=>r.value?o("plugins.free-form.datakit.flow_editor.collapse_panel"):o("plugins.free-form.datakit.flow_editor.expand_panel")),s=e.ref(!1);function c(){r.value=!r.value}return(u,f)=>(e.openBlock(),e.createElementBlock("nav",$E,[e.createElementVNode("div",FE,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(i,({label:d,to:p,icon:m,onClick:g})=>e.createVNode(e.unref(Oe.KTooltip),{key:d,"kpop-attributes":{offset:"10px"},label:d,placement:"right"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(Oe.KButton),{key:d,appearance:"none",class:"nav-item",icon:"",to:p,onClick:g},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(m),{decorative:"",size:e.unref(po)},null,8,["size"]))]),_:2},1032,["to","onClick"]))]),_:2},1032,["label"])),64))]),e.createElementVNode("div",LE,[e.createElementVNode("div",{class:e.normalizeClass(["side-panel-toggle",{expanded:e.unref(r)}]),onTransitionend:f[0]||(f[0]=e.withModifiers(d=>s.value=!1,["self"])),onTransitionstart:f[1]||(f[1]=e.withModifiers(d=>s.value=!0,["self"]))},[e.createVNode(e.unref(Oe.KTooltip),{label:s.value?void 0:l.value,placement:e.unref(r)?"left":"right"},{default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"none",class:"nav-item nav-item-toggle",icon:"",size:"large",onClick:c},{default:e.withCtx(()=>[e.unref(r)?(e.openBlock(),e.createBlock(e.unref(me.ChevronDoubleLeftIcon),{key:0,decorative:"",size:e.unref(po)},null,8,["size"])):(e.openBlock(),e.createBlock(e.unref(me.ChevronDoubleRightIcon),{key:1,decorative:"",size:e.unref(po)},null,8,["size"]))]),_:1})]),_:1},8,["label","placement"])],34)])]))}}),[["__scopeId","data-v-e4bd08f5"]]),ME={class:"dk-editor-main"},jE={class:"header"},KE={class:"actions"},vE={class:"settings"},UE={ref:"canvasContainer",class:"body"},qE=_e(e.defineComponent({__name:"EditorMain",setup(t){const{t:n}=it.createI18n("en-us",ct),{modalOpen:o,undo:a,redo:i,canUndo:r,canRedo:l,load:s}=tt();function c(d){const p=lr[d],m=Ht.load(p,{schema:un,json:!0});if(typeof m!="object"||m===null)return;const g=m,y={config:{...g,nodes:g.nodes??[]}};s(y,!0)}function u(){o.value=!1}Tc({enabled:o,undo:a,redo:i});const f={maxWidth:"300px",zIndex:1e4};return(d,p)=>(e.openBlock(),e.createElementBlock("div",ME,[e.createElementVNode("header",jE,[e.createElementVNode("div",KE,[e.createVNode(e.unref(Oe.KTooltip),{"z-index":1e4},{content:e.withCtx(()=>[e.createVNode(br,{keys:e.unref(mr).undo,label:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.undo"),reverse:""},null,8,["keys","label"])]),default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"tertiary",disabled:!e.unref(r),icon:"",onClick:e.unref(a)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.UndoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),e.createVNode(e.unref(Oe.KTooltip),{"z-index":1e4},{content:e.withCtx(()=>[e.createVNode(br,{keys:e.unref(mr).redo,label:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.redo"),reverse:""},null,8,["keys","label"])]),default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"tertiary",disabled:!e.unref(l),icon:"",onClick:e.unref(i)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.RedoIcon))]),_:1},8,["disabled","onClick"])]),_:1}),p[0]||(p[0]=e.createElementVNode("div",{class:"divider"},null,-1)),e.createElementVNode("div",vE,[e.createVNode(Qt,{label:e.unref(n)("plugins.free-form.datakit.flow_editor.debug.label"),"label-attributes":{info:e.unref(n)("plugins.free-form.datakit.flow_editor.debug.description"),tooltipAttributes:f},name:"config.debug"},null,8,["label","label-attributes"])]),p[1]||(p[1]=e.createElementVNode("div",{class:"divider"},null,-1)),e.createVNode(e.unref(Oe.KDropdown),{appearance:"tertiary","kpop-attributes":{placement:"bottom-end",target:"body"},"show-caret":"","trigger-text":e.unref(n)("plugins.free-form.datakit.flow_editor.examples"),width:240},{items:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(lr),(m,g)=>(e.openBlock(),e.createBlock(e.unref(Oe.KDropdownItem),{key:g,onClick:y=>c(g)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)(`plugins.free-form.datakit.examples.${g}`)),1)]),_:2},1032,["onClick"]))),128))]),_:1},8,["trigger-text"]),e.createVNode(e.unref(Oe.KButton),{appearance:"tertiary",target:"_blank",to:"https://developer.konghq.com/plugins/datakit/"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.actions.view_docs"))+" ",1),e.createVNode(e.unref(me.ExternalLinkIcon))]),_:1}),e.createVNode(e.unref(Oe.KButton),{onClick:u},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.actions.done")),1)]),_:1})])]),e.createElementVNode("div",UE,[e.createVNode(Ha,{mode:"edit",resizable:""})],512)]))}}),[["__scopeId","data-v-815410b7"]]),GE=["draggable"],zE={class:"icon"},HE={class:"content"},WE={class:"title"},YE={class:"description"},JE=_e(e.defineComponent({__name:"NodePanelItem",props:{type:{},unsupported:{type:Boolean}},emits:["dragstart"],setup(t,{emit:n}){e.useCssVars(c=>({a7e1f2a8:e.unref(r),v71bf1ac1:e.unref(l)}));const o=n,{summary:a,icon:i,colors:{background:r,foreground:l}={}}=Oa[t.type];function s(c){o("dragstart",c,t.type)}return(c,u)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["dk-node-panel-item",{[`node-type-${t.type}`]:!0,unsupported:t.unsupported}]),draggable:!t.unsupported,onDragstart:s},[e.createElementVNode("div",zE,[e.createVNode(e.unref(i),{size:16})]),e.createElementVNode("div",HE,[e.createElementVNode("div",WE,e.toDisplayString(t.type),1),e.createElementVNode("div",YE,e.toDisplayString(e.unref(a)),1)])],42,GE))}}),[["__scopeId","data-v-5b6c52c4"]]),XE={class:"dk-node-panel"},ZE={key:0,class:"title"},QE={class:"node-list"},e0={"aria-hidden":"true",class:"preview",inert:""},t0=_e(e.defineComponent({__name:"NodePanel",props:{hideTitle:{type:Boolean}},setup(t){const{t:n}=it.createI18n("en-us",ct),{createNode:o}=tt(),a=`dk-drag-preview-${e.useId()}`,i=e.shallowRef(),r=e.computed(()=>i.value?[{id:"preview",type:"flow",data:i.value,position:{x:0,y:0}}]:[]),l=async(s,c)=>{var O,K,I;const u=s.currentTarget,{left:f,top:d,width:p,height:m}=u.getBoundingClientRect(),g=s.clientX-f,y=s.clientY-d;i.value=o({type:c}),await e.nextTick();const C=document.querySelector(`#${a}`)||u,b=C.cloneNode(!0);b.classList.add("dk-drag-snapshot");const{offsetWidth:h,offsetHeight:E}=C;Object.assign(b.style,{position:"absolute",top:"-9999px",left:"-9999px",width:`${h}px`,height:`${E}px`}),document.body.appendChild(b);const k=g/p,_=y/m,w={ratioX:k,ratioY:_,offsetX:h*k,offsetY:E*_},x={action:"create-node",data:{type:c,anchor:w}};(O=s.dataTransfer)==null||O.setData(Co,JSON.stringify(x)),(K=s.dataTransfer)==null||K.setData(`${Co}/${c}`,c),(I=s.dataTransfer)==null||I.setDragImage(b,w.offsetX,w.offsetY),requestAnimationFrame(()=>{b.remove(),i.value=void 0})};return(s,c)=>{const u=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",XE,[t.hideTitle?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("h3",ZE,[e.createVNode(u,{class:"label",info:e.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.description")},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.node_panel.title")),1)]),_:1},8,["info"])])),e.createElementVNode("div",QE,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(Object.keys(e.unref(Oa)),f=>(e.openBlock(),e.createBlock(JE,{key:f,type:f,onDragstart:l},null,8,["type"]))),128))]),e.createElementVNode("div",e0,[e.createVNode(e.unref(ze.VueFlow),{nodes:r.value},{"node-flow":e.withCtx(f=>[e.createVNode(qc,{id:a,data:f.data},null,8,["data"])]),_:1},8,["nodes"])])])}}}),[["__scopeId","data-v-4a9b940a"]]);function n0(){const{addField:t,getNodeByName:n,removeField:o,replaceConfig:a,renameField:i,disconnectOutEdges:r,nodeMapByName:l}=tt(),s=n("vault");if(!s)throw new Error("no vault node");const c=e.computed(()=>{var g;return((g=l.value.get("vault"))==null?void 0:g.config)||{}});return{formData:e.computed(()=>({vault:{...c.value}})),addVault:(g,y)=>{t(s.id,"output",g,!1);const C={...s.config,[g]:y};a(s.id,C)},removeVault:g=>{const y=pn(s,"output",g);if(!y)return;const C=s.fields.output.length===1;o(s.id,y.id,!0,!1);const b=sn(s.config,g);a(s.id,b,!C),C&&r(s.id)},updateVault:(g,y,C=!0)=>{const b={...s.config,[g]:y};a(s.id,b,C)},renameVault:(g,y,C=!0)=>{var k;const b=pn(s,"output",g);if(!b)return;i(s.id,b.id,y,!1);const h=((k=s.config)==null?void 0:k[g])??"",E={...sn(s.config,g),[y]:h};a(s.id,E,C)}}}const o0=e.defineComponent({__name:"VaultSecretPicker",props:{secretRef:{type:[String,Boolean]},secretName:{},validateName:{type:Function,default:()=>{}},isEditing:{type:Boolean,default:!1}},emits:["proceed","cancel"],setup(t,{emit:n}){const o=n,{i18n:{t:a}}=je.useI18n(),i=e.inject(Le.FORMS_CONFIG),r=e.ref(t.secretName||""),l=e.ref(""),s=e.computed(()=>r.value.trim()?t.validateName(r.value.trim(),t.isEditing)===void 0:!1),c=e.computed(()=>!s.value),u=()=>{const m=r.value.trim(),g=t.validateName(m,t.isEditing);return l.value=g||"",g===void 0},f=()=>{l.value="",u()},d=m=>{u()&&o("proceed",{secretRef:m,secretName:r.value.trim()})},p=()=>{r.value="",l.value="",o("cancel")};return e.watch(()=>t.secretName,m=>{r.value=m||"",l.value=""}),(m,g)=>{const y=e.resolveComponent("KInput"),C=e.resolveComponent("KEmptyState");return e.unref(i)?(e.openBlock(),e.createBlock(e.unref(Qn.VaultSecretPicker),{key:0,"additional-disabled":c.value,config:e.unref(i),"proceed-button-text":e.unref(a)("plugins.free-form.datakit.flow_editor.vault_secret_picker.proceed_button_text"),setup:t.secretRef,title:e.unref(a)("plugins.free-form.datakit.flow_editor.vault_secret_picker.title"),onCancel:p,onProceed:d},{"form-prefix":e.withCtx(()=>[e.createVNode(y,{"model-value":r.value,"onUpdate:modelValue":[g[0]||(g[0]=b=>r.value=b),f],"data-testid":"vault-secret-picker-secret-name-input",error:!!l.value,"error-message":l.value,label:e.unref(a)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.label"),"label-attributes":{info:e.unref(a)("plugins.free-form.datakit.flow_editor.vault_secret_picker.secret_name.help")},placeholder:e.unref(a)("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"])):(e.openBlock(),e.createBlock(C,{key:1,"icon-variant":"error",message:e.unref(a)("plugins.free-form.vault_picker.component_error")},null,8,["message"]))}}}),r0={class:"dk-vault-panel"},a0={class:"title"},i0={class:"vault-list"},l0={key:0,class:"vault-list-item"},s0={class:"vault-list-item-key"},c0={class:"vault-list-item-key-text"},d0=_e(e.defineComponent({__name:"VaultField",props:{initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},appearance:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},autofocus:{type:Boolean},name:{}},emits:["update","add","remove","change"],setup(t,{emit:n}){const o=t,a=n,{entries:i,addEntry:r,removeEntry:l}=Zo(o,a),s=e.ref(null),c=e.ref(null),{i18n:{t:u}}=je.useI18n(),f=e.computed(()=>new Set(i.value.map(b=>b.key))),d=()=>{const b=r();c.value=b,s.value=b},p=()=>{s.value=null,c.value&&(l(c.value.id),c.value=null)},m=b=>{if(!s.value)throw new Error("no selected entry");const h=s.value.key,E=h!==b.secretName,k=s.value.value!==b.secretRef,_=E||k;s.value.value=b.secretRef,s.value.key=b.secretName,c.value?a("add",b.secretName,b.secretRef):_&&a("update",b.secretName,b.secretRef,E?h:void 0),c.value=null,p()},g=b=>{s.value=b},y=b=>{l(b.id),a("remove",b.key)},C=(b,h)=>{var E;if(!b)return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_required_error");if(f.value.has(b)&&!(h&&b===((E=s.value)==null?void 0:E.key)))return u("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.name_exists_error")};return(b,h)=>{var w,x;const E=e.resolveComponent("KButton"),k=e.resolveComponent("KDropdownItem"),_=e.resolveComponent("KDropdown");return e.openBlock(),e.createElementBlock("div",r0,[e.createElementVNode("h3",a0,e.toDisplayString(e.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.title")),1),e.createVNode(E,{appearance:"tertiary",class:"add-button",size:"small",onClick:d},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.add_button")),1)]),_:1}),e.createElementVNode("div",i0,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),O=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:O.id},[O.key?(e.openBlock(),e.createElementBlock("div",l0,[e.createElementVNode("div",s0,[e.createVNode(e.unref(me.KeyIcon),{color:e.unref(Dn),size:16},null,8,["color"]),e.createElementVNode("div",c0,e.toDisplayString(O.key),1)]),e.createVNode(_,null,{items:e.withCtx(()=>[e.createVNode(k,{onClick:K=>g(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1},8,["onClick"]),e.createVNode(k,{danger:"",onClick:K=>y(O)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1},8,["onClick"])]),default:e.withCtx(()=>[e.createVNode(E,{appearance:"tertiary",icon:""},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{color:e.unref(co)},null,8,["color"])]),_:1})]),_:2},1024)])):e.createCommentVNode("",!0)],64))),128))]),e.createVNode(o0,{"is-editing":!!s.value&&!c.value,"secret-name":(w=s.value)==null?void 0:w.key,"secret-ref":(x=s.value)==null?void 0:x.value,"validate-name":C,onCancel:p,onProceed:m},null,8,["is-editing","secret-name","secret-ref"])])}}}),[["__scopeId","data-v-55363d2f"]]);function u0(){const{getSchema:t}=We();return e.computed(()=>{const n=t("config.resources");if(!n)throw new Error("Failed to get resource schema");const o=nn(n);return o.fields.forEach(a=>{const i=Object.keys(a)[0];if(i==="cache"){const r=a[i];a[i]={...r,fields:[...r.fields,{partial_id:{type:"string"}}]},r.fields.forEach(l=>{const s=Object.keys(l)[0];if(s==="redis"){const c=l[s];l[s]={...c},delete l[s].required}})}}),o})}const p0={class:"dk-cache-panel"},f0={class:"title"},m0={key:0,class:"cache-item"},g0={class:"cache-item-key"},h0={class:"cache-item-key-text"},y0={class:"dk-resource-cache-form"},_0={key:1},b0={key:2,class:"dk-cache-inline-redis"},k0=_e(e.defineComponent({__name:"CacheField",props:{strategy:{}},emits:["update","remove","cancel"],setup(t,{emit:n}){const o=n,{getDefault:a,formData:i}=We(),r=pt("cache");if(r.error)throw new Error("No cache schema");const l=e.ref(!1),{i18n:{t:s}}=je.useI18n(),c=e.computed(()=>!(u.value==="redis"&&!i.cache.partial_id&&!i.cache.redis)),u=e.computed(()=>{var h;return(h=r.value.value)==null?void 0:h.strategy}),f=e.computed(()=>{var h;return(h=r.value.value)!=null&&h.redis?Ht.dump(r.value.value.redis,{indent:2,noRefs:!0}):""}),d=()=>{l.value=!0},p=()=>{l.value=!1,o("cancel")},m=()=>{o("remove")},g=()=>{d(),r.value.value||(r.value.value=a("cache"),r.value.value.strategy="memory")},y=()=>{l.value=!1,o("update",i)},C=()=>{var h,E;u.value==="memory"&&((h=i.cache)!=null&&h.partial_id)&&((E=i.cache)==null||delete E.partial_id)};async function b({codeElement:h,language:E,code:k}){h.innerHTML=await kd.codeToHtml(k,{lang:E,theme:"catppuccin-mocha",structure:"inline"})}return(h,E)=>{const k=e.resolveComponent("KButton"),_=e.resolveComponent("KDropdownItem"),w=e.resolveComponent("KDropdown"),x=e.resolveComponent("KLabel"),O=e.resolveComponent("KCodeBlock"),K=e.resolveComponent("KModal");return e.openBlock(),e.createElementBlock("div",p0,[e.createElementVNode("h3",f0,e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title")),1),t.strategy?(e.openBlock(),e.createElementBlock("div",m0,[e.createElementVNode("div",g0,[e.createVNode(e.unref(me.DatabaseIcon),{color:e.unref(Dn),size:e.unref(uo)},null,8,["color","size"]),e.createElementVNode("div",h0,e.toDisplayString(t.strategy),1)]),e.createVNode(w,null,{items:e.withCtx(()=>[e.createVNode(_,{onClick:d},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.edit")),1)]),_:1}),e.createVNode(_,{danger:"",onClick:m},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.vault.delete")),1)]),_:1})]),default:e.withCtx(()=>[e.createVNode(k,{appearance:"tertiary",icon:""},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{color:e.unref(co)},null,8,["color"])]),_:1})]),_:1})])):(e.openBlock(),e.createBlock(k,{key:1,appearance:"tertiary",class:"add-button",size:"small",onClick:g},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.add_button")),1)]),_:1})),e.createVNode(K,{"action-button-disabled":!c.value,"action-button-text":e.unref(s)("actions.save"),"max-width":"640px",title:e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.title"),visible:l.value,onCancel:p,onProceed:y},{default:e.withCtx(()=>{var I,S;return[e.createElementVNode("div",y0,[e.createVNode(mc,{items:[{label:e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.memory"),value:"memory"},{label:e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.strategy_options.redis"),value:"redis"}],name:"strategy","onUpdate:modelValue":C},null,8,["items"]),u.value==="memory"?(e.openBlock(),e.createBlock(ft,{key:0,name:"memory.dictionary_name"})):e.createCommentVNode("",!0),u.value==="redis"?(e.openBlock(),e.createElementBlock("div",_0,[e.createVNode(x,null,{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.select_redis_configuration")),1)]),_:1}),e.createVNode(e.unref(ri.RedisConfigurationSelector),{"model-value":(I=e.unref(i).cache)==null?void 0:I.partial_id,"redis-type":"redis-ee","onUpdate:modelValue":E[0]||(E[0]=P=>e.unref(i).cache.partial_id=P)},null,8,["model-value"])])):e.createCommentVNode("",!0),u.value==="redis"&&!((S=e.unref(i).cache)!=null&&S.partial_id)&&f.value?(e.openBlock(),e.createElementBlock("div",b0,[e.createElementVNode("div",null,e.toDisplayString(e.unref(s)("plugins.free-form.datakit.flow_editor.panel_segments.resources.cache.inline_config_preview")),1),e.createVNode(O,{id:"dk-cache-redis-configuration",code:f.value,language:"yaml",theme:"dark",onCodeBlockRender:b},null,8,["code"])])):e.createCommentVNode("",!0)])]}),_:1},8,["action-button-disabled","action-button-text","title","visible"])])}}}),[["__scopeId","data-v-f4fe77b6"]]),w0={class:"dk-resources-panel"},C0=_e(e.defineComponent({__name:"ResourcesPanel",setup(t){const n=u0(),o=e.ref(0),{addVault:a,removeVault:i,updateVault:r,renameVault:l,formData:s}=n0();function c(y,C,b){b&&b!==y&&l(b,y,!1),r(y,C)}const{state:u,commit:f}=tt(),d=e.computed(()=>({cache:u.value.cacheConfig}));function p(y){u.value.cacheConfig=y.cache,f()}function m(){u.value.cacheConfig=void 0,f()}function g(){o.value++}return(y,C)=>(e.openBlock(),e.createElementBlock("div",w0,[e.createVNode(mt,{data:e.unref(s),schema:e.unref(n)},{default:e.withCtx(()=>[e.createVNode(d0,{name:"vault",onAdd:e.unref(a),onRemove:e.unref(i),onUpdate:c},null,8,["onAdd","onRemove"])]),_:1},8,["data","schema"]),C[0]||(C[0]=e.createElementVNode("hr",{class:"dk-resources-divider"},null,-1)),(e.openBlock(),e.createBlock(mt,{key:`${o.value}`,data:d.value,schema:e.unref(n)},{default:e.withCtx(()=>{var b;return[e.createVNode(k0,{strategy:(b=d.value.cache)==null?void 0:b.strategy,onCancel:g,onRemove:m,onUpdate:p},null,8,["strategy"])]}),_:1},8,["data","schema"]))]))}}),[["__scopeId","data-v-50cdd366"]]),E0={class:"header"},N0={class:"title"},x0={class:"body"},S0={class:"panel"},A0=_e(e.defineComponent({__name:"SidePanel",setup(t){const{t:n}=it.createI18n("en-us",ct),{sidePanelExpanded:o}=pr(),{propertiesPanelOpen:a,selectedNode:i}=tt(),r=e.ref("nodes");function l(){a.value=!1}e.watch(i,c=>{c||l()});const s=e.ref(!1);return e.onMounted(()=>{s.value=!0}),(c,u)=>{const f=e.resolveComponent("KSegmentedControl");return e.openBlock(),e.createElementBlock("aside",{class:e.normalizeClass(["side-panel",{expanded:e.unref(o),inited:s.value}])},[e.createElementVNode("header",E0,[e.createElementVNode("h2",N0,e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.name")),1)]),e.createElementVNode("div",x0,[e.createElementVNode("div",S0,[e.createVNode(f,{modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=d=>r.value=d),options:[{label:e.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.nodes"),value:"nodes"},{label:e.unref(n)("plugins.free-form.datakit.flow_editor.panel_segments.resources.title"),value:"resources"}]},null,8,["modelValue","options"]),r.value==="nodes"?(e.openBlock(),e.createBlock(t0,{key:0,"hide-title":""})):e.createCommentVNode("",!0),r.value==="resources"?(e.openBlock(),e.createBlock(C0,{key:1})):e.createCommentVNode("",!0)])])],2)}}}),[["__scopeId","data-v-88a9930c"]]),I0=e.defineComponent({__name:"HttpMethodField",props:{name:{}},setup(t){return(n,o)=>(e.openBlock(),e.createBlock(Ct,{items:e.unref(ra)([...e.unref(yc)]),name:t.name},null,8,["items","name"]))}});function P0(t,n){const o=[],a=(i,r)=>{typeof r=="string"&&o.push({nodeName:t.name,path:["nodes",n,...i],value:r})};if("input"in t&&t.input!=null&&a(["input"],t.input),"inputs"in t&&t.inputs&&typeof t.inputs=="object")for(const[i,r]of Object.entries(t.inputs))r!=null&&a(["inputs",i],r);if("output"in t&&t.output!=null&&a(["output"],t.output),"outputs"in t&&t.outputs&&typeof t.outputs=="object")for(const[i,r]of Object.entries(t.outputs))r!=null&&a(["outputs",i],r);return o}function T0(t){const n=t.path[2];return n==="output"||n==="outputs"}function Hc(t){if(!t)return!1;for(const n of Object.values(t))if(n!=null)return!0;return!1}function Wc(t,n){const o=t.input!==void 0&&t.input!==null,a=Hc(t.inputs);o&&a&&n.addIssue({code:"custom",message:'A node cannot use both "input" and "inputs". Use one or the other.',path:["inputs"]});const i=t.output!==void 0&&t.output!==null,r=Hc(t.outputs);i&&r&&n.addIssue({code:"custom",message:'A node cannot use both "output" and "outputs". Use one or the other.',path:["outputs"]})}function Yc(t,n,o){if(!t.nodes)return;const a=t.nodes.map(c=>c.name),i=new Set;a.forEach((c,u)=>{i.has(c)&&o.addIssue({code:"custom",message:`Duplicate node name: "${c}"`,path:["nodes",u,"name"]}),i.add(c)});const r=new Set([...n,...a]),l=new Map,s=new Map;t.nodes.forEach((c,u)=>{for(const f of P0(c,u)){const d=f.value.split(".",1)[0];if(r.has(d)||o.addIssue({code:"custom",message:`Unknown node "${d}" in connection "${f.value}"`,path:f.path}),T0(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 O0=M.z.enum(gc),V0=M.z.enum(zn),Jc=t=>zn.includes(t),Wa=M.z.enum(hc),Xc=Wa.options;M.z.union([Wa,O0]);const B0=/^[A-Za-z_][A-Za-z0-9_-]{0,254}$/,Cr=M.z.string().min(1).max(255).regex(B0,"Invalid node name (snake_case / kebab-case only)").refine(t=>!Jc(t),"Name clashes with reserved implicit node").brand(),Zc=M.z.union([V0,Cr]),R0=M.z.string().min(1).brand(),$0=["then","else"];M.z.enum($0);const Ke=M.z.string().min(1).max(255).refine(t=>{if(Zc.safeParse(t).success)return!0;const n=t.match(/^([^.]+)\.([^.]+)$/);if(!n)return!1;const[,o,a]=n;return Zc.safeParse(o).success&&R0.safeParse(a).success},'Invalid connection, expected "NODE" or "NODE.FIELD"').nullish(),F0=M.z.object({body:Ke,headers:Ke,http_proxy:Ke,https_proxy:Ke,proxy_auth_password:Ke,proxy_auth_username:Ke,query:Ke,url:Ke}).partial().strict(),L0=M.z.object({headers:Ke,body:Ke}).partial().strict(),D0=M.z.object({data:Ke,key:Ke,ttl:Ke}).partial().strict(),M0=M.z.object({claims:Ke,key:Ke}).partial().strict(),j0=M.z.object({key:Ke,token:Ke}).partial().strict(),Qc=M.z.enum(yc),ed=M.z.enum(Pa),Rt=M.z.object({type:M.z.string(),name:Cr,input:Ke,inputs:M.z.record(M.z.string().min(1).max(255),Ke).nullish(),output:Ke,outputs:M.z.record(M.z.string().min(1).max(255),Ke).nullish()}).loose().superRefine((t,n)=>{Wc(t,n)}),K0=M.z.object({type:M.z.string(),name:M.z.string()}).loose().superRefine((t,n)=>{const o=t.type,a=t.name;(typeof a!="string"||a.length===0||a.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"invalid node name",fatal:!1}),Xc.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${Xc.join(", ")}`})}),v0=Rt.safeExtend({type:M.z.literal("call"),method:Qc.default("GET").nullish(),ssl_server_name:M.z.string().nullish(),ssl_verify:M.z.boolean().default(!0).nullish(),timeout:M.z.number().int().min(0).max(2147483646).nullish(),url:M.z.url().nullish(),inputs:F0.nullish(),outputs:M.z.object({body:Ke,headers:Ke,raw_body:Ke,status:Ke}).partial().nullish()}).strict(),U0=Rt.safeExtend({type:M.z.literal("exit"),status:M.z.number().int().min(200).max(599).default(200).nullish(),warn_headers_sent:M.z.boolean().nullish(),inputs:L0.nullish(),output:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),q0=Rt.safeExtend({type:M.z.literal("jq"),jq:M.z.string().min(1).max(10240),outputs:M.z.never().nullish()}).strict(),G0=Rt.safeExtend({type:M.z.literal("xml_to_json"),recognize_type:M.z.boolean().nullish().default(!0),attributes_block_name:M.z.string().min(1).max(32).nullish(),attributes_name_prefix:M.z.string().min(1).max(32).nullish(),text_block_name:M.z.string().min(1).max(32).nullish().default("#text"),text_as_property:M.z.boolean().nullish().default(!1),xpath:M.z.string().min(1).max(256).nullish(),inputs:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict().superRefine((t,n)=>{!t.attributes_block_name&&!t.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),z0=Rt.safeExtend({type:M.z.literal("json_to_xml"),attributes_block_name:M.z.string().min(1).max(32).nullish(),attributes_name_prefix:M.z.string().min(1).max(32).nullish(),root_element_name:M.z.string().min(1).max(64).nullish(),text_block_name:M.z.string().min(1).max(32).nullish().default("#text"),inputs:M.z.record(M.z.string().min(1).max(255),Ke).nullish(),outputs:M.z.never().nullish()}).strict().superRefine((t,n)=>{!t.attributes_block_name&&!t.attributes_name_prefix&&(n.addIssue({code:"custom",path:["attributes_block_name"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}),n.addIssue({code:"custom",path:["attributes_name_prefix"],message:"At least one of attributes_block_name or attributes_name_prefix is required"}))}),H0=Rt.safeExtend({type:M.z.literal("jwt_decode"),inputs:M.z.never().nullish(),outputs:M.z.object({header:Ke,payload:Ke,signature:Ke}).partial().nullish()}).strict(),W0=Rt.safeExtend({type:M.z.literal("jwt_sign"),algorithm:ed,expires_in:M.z.number().int().default(300).nullish(),inputs:M0.nullish(),kid:M.z.string().nullish(),not_before:M.z.number().int().default(0).nullish(),outputs:M.z.object({claims:Ke,header:Ke,token:Ke}).partial().nullish(),static_claims:M.z.record(M.z.string(),M.z.string()).default({}).nullish(),typ:M.z.string().default("JWT").nullish()}).strict(),Y0=Rt.safeExtend({type:M.z.literal("jwt_verify"),allowed_algorithms:M.z.array(ed).default([]).nullish(),audiences:M.z.array(M.z.string()).default([]).nullish(),inputs:j0.nullish(),issuers:M.z.array(M.z.string()).default([]).nullish(),leeway:M.z.number().int().default(0).nullish(),outputs:M.z.object({claims:Ke,header:Ke}).partial().nullish(),required_claims:M.z.array(M.z.string()).default([]).nullish(),validate_exp:M.z.boolean().default(!0).nullish(),validate_nbf:M.z.boolean().default(!0).nullish()}).strict(),J0=Rt.safeExtend({type:M.z.literal("property"),content_type:M.z.enum(["application/json","text/plain","application/octet-stream"]).nullish(),property:M.z.string().min(1).max(255),inputs:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),X0=Rt.safeExtend({type:M.z.literal("static"),values:M.z.record(M.z.string(),M.z.unknown()),input:M.z.never().nullish(),inputs:M.z.never().nullish()}).strict(),Z0=Rt.safeExtend({type:M.z.literal("cache"),bypass_on_error:M.z.boolean().nullish(),inputs:D0.nullish(),outputs:M.z.object({data:Ke,hit:Ke,miss:Ke,stored:Ke}).partial().nullish(),ttl:M.z.number().int().gt(0).nullish()}).strict(),Q0=Rt.safeExtend({type:M.z.literal("branch"),then:M.z.array(Cr).min(1).max(64).nullish(),else:M.z.array(Cr).min(1).max(64).nullish()}).strict(),eN=K0.pipe(M.z.discriminatedUnion("type",[v0,U0,q0,G0,z0,H0,W0,Y0,J0,X0,Z0,Q0])),tN=M.z.record(M.z.string().regex(/^[A-Za-z_][A-Za-z0-9_-]*$/).min(1).max(255),M.z.string().min(1).max(4095)),nN=M.z.object({dictionary_name:M.z.string().nullish().default("kong_db_cache")}),oN=M.z.object({host:M.z.string().default("127.0.0.1"),port:M.z.number().int().min(0).max(65535).default(6379)}),rN=M.z.object({ip:M.z.string().default("127.0.0.1"),port:M.z.number().int().min(0).max(65535).default(6379)}),aN=M.z.object({host:M.z.string().nullish().default("127.0.0.1"),port:M.z.number().int().min(0).max(65535).nullish().default(6379),connect_timeout:M.z.number().int().min(0).max(2147483646).nullish().default(2e3),send_timeout:M.z.number().int().min(0).max(2147483646).nullish().default(2e3),read_timeout:M.z.number().int().min(0).max(2147483646).nullish().default(2e3),username:M.z.string().nullish(),password:M.z.string().nullish(),sentinel_username:M.z.string().nullish(),sentinel_password:M.z.string().nullish(),database:M.z.number().int().nullish().default(0),keepalive_pool_size:M.z.number().int().min(1).max(2147483646).nullish().default(256),keepalive_backlog:M.z.number().int().min(0).max(2147483646).nullish(),sentinel_master:M.z.string().nullish(),sentinel_role:M.z.enum(["master","slave","any"]).nullish(),sentinel_nodes:M.z.array(oN).min(1,{message:"sentinel_nodes must contain at least 1 item"}).nullish(),cluster_nodes:M.z.array(rN).min(1,{message:"cluster_nodes must contain at least 1 item"}).nullish(),ssl:M.z.boolean().default(!1).nullish(),ssl_verify:M.z.boolean().default(!0).nullish(),server_name:M.z.string().nullish(),cluster_max_redirections:M.z.number().int().default(5).nullish(),connection_is_proxied:M.z.boolean().default(!1).nullish(),cloud_authentication:M.z.object({auth_provider:M.z.enum(["aws","azure","gcp"]).nullish(),aws_access_key_id:M.z.string().nullish(),aws_assume_role_arn:M.z.string().nullish(),aws_cache_name:M.z.string().nullish(),aws_is_serverless:M.z.boolean().default(!0).nullish(),aws_region:M.z.string().nullish(),aws_role_session_name:M.z.string().nullish(),aws_secret_access_key:M.z.string().nullish(),azure_client_id:M.z.string().nullish(),azure_client_secret:M.z.string().nullish(),azure_tenant_id:M.z.string().nullish(),gcp_service_account_json:M.z.string().nullish()}).nullish(),timeout:M.z.number().int().nullish(),sentinel_addresses:M.z.array(M.z.string()).min(1).nullish(),cluster_addresses:M.z.array(M.z.string()).min(1).nullish()}).superRefine((t,n)=>{var c;const o=t.host!==void 0&&t.host!==null,a=t.port!==void 0&&t.port!==null;(o&&!a||!o&&a)&&n.addIssue({code:"custom",message:"host and port must be specified together",path:o?["port"]:["host"]});const i=!!t.sentinel_master,r=!!t.sentinel_role,l=!!((c=t.sentinel_nodes)!=null&&c.length),s=[i,r,l].filter(Boolean).length;s>0&&s<3&&n.addIssue({code:"custom",message:"sentinel_master, sentinel_role and sentinel_nodes must be provided together"}),t.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"]})}),iN=M.z.object({strategy:M.z.enum(["memory","redis"]).nullish(),memory:nN,redis:aN}),lN=M.z.object({vault:tN.nullish(),cache:iN.nullish()});M.z.array(M.z.object({id:M.z.string()})),M.z.object({nodes:M.z.array(eN).min(1,"At least one node is required").max(64),debug:M.z.boolean().default(!1).nullish(),resources:lN.nullish()}).strict().superRefine((t,n)=>{Yc(t,zn,n)});const td=Wa.options,Ya=M.z.string().min(1).refine(t=>!t.includes("."),"Invalid node name").refine(t=>!Jc(t),"Node name conflicts with reserved implicit node"),qe=M.z.string().refine(t=>{if(!t||/\s/.test(t))return!1;const n=t.indexOf(".");if(n===-1)return!0;const o=t.slice(0,n),a=t.slice(n+1);return o.length>0&&a.length>0},"Invalid connection"),nd=M.z.object({body:qe.nullish(),headers:qe.nullish(),query:qe.nullish()}).partial().strict(),od=M.z.object({headers:qe.nullish(),body:qe.nullish()}).partial().strict(),rd=M.z.object({data:qe.nullish(),key:qe.nullish(),ttl:qe.nullish()}).partial().strict(),ad=M.z.object({claims:qe.nullish(),key:qe.nullish()}).partial().strict(),id=M.z.object({key:qe.nullish(),token:qe.nullish()}).partial().strict(),sN={call:nd,exit:od,cache:rd,jwt_sign:ad,jwt_verify:id};function cN(t){const n=sN[t];return n?Object.keys(n.shape):null}const $t=M.z.object({type:M.z.string(),name:Ya,input:qe.nullish(),inputs:M.z.record(M.z.string(),qe.nullish()).nullish(),output:qe.nullish(),outputs:M.z.record(M.z.string(),qe.nullish()).nullish()}).loose().superRefine((t,n)=>{Wc(t,n)}),dN=M.z.object({type:M.z.string(),name:M.z.string()}).loose().superRefine((t,n)=>{const o=t.type,a=t.name;(typeof a!="string"||a.length===0||a.includes("."))&&n.addIssue({code:"custom",path:["name"],message:"Invalid node name",fatal:!1}),td.includes(o)||n.addIssue({code:"custom",path:["type"],message:`unknown node type "${o}", expected one of: ${td.join(", ")}`})}),uN=$t.safeExtend({type:M.z.literal("call"),method:Qc.nullish(),ssl_server_name:M.z.string().nullish(),ssl_verify:M.z.boolean().nullish(),timeout:M.z.union([M.z.number(),M.z.string()]).nullish(),url:M.z.string().nullish(),inputs:nd.nullish(),outputs:M.z.object({body:qe.nullish(),headers:qe.nullish(),status:qe.nullish()}).partial().nullish()}).strict(),pN=$t.safeExtend({type:M.z.literal("exit"),status:M.z.union([M.z.number(),M.z.string()]).nullish(),warn_headers_sent:M.z.boolean().nullish(),inputs:od.nullish(),output:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),fN=$t.safeExtend({type:M.z.literal("jq"),jq:M.z.string().nullish(),outputs:M.z.never().nullish()}).strict(),mN=$t.safeExtend({type:M.z.literal("xml_to_json"),recognize_type:M.z.boolean().nullish(),attributes_block_name:M.z.string().nullish(),attributes_name_prefix:M.z.string().nullish(),text_block_name:M.z.string().nullish(),text_as_property:M.z.boolean().nullish(),xpath:M.z.string().nullish(),inputs:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),gN=$t.safeExtend({type:M.z.literal("json_to_xml"),attributes_block_name:M.z.string().nullish(),attributes_name_prefix:M.z.string().nullish(),root_element_name:M.z.string().nullish(),text_block_name:M.z.string().nullish(),inputs:M.z.record(M.z.string(),qe.nullish()).nullish(),outputs:M.z.never().nullish()}).strict(),hN=$t.safeExtend({type:M.z.literal("property"),content_type:M.z.string().nullish(),property:M.z.string().nullish(),inputs:M.z.never().nullish(),outputs:M.z.never().nullish()}).strict(),yN=$t.safeExtend({type:M.z.literal("static"),values:M.z.record(M.z.string(),M.z.unknown()).nullish(),input:M.z.never().nullish(),inputs:M.z.never().nullish()}).strict(),_N=$t.safeExtend({type:M.z.literal("cache"),bypass_on_error:M.z.boolean().nullish(),inputs:rd.nullish(),outputs:M.z.object({data:qe.nullish(),hit:qe.nullish(),miss:qe.nullish(),stored:qe.nullish()}).partial().nullish(),ttl:M.z.union([M.z.number(),M.z.string()]).nullish()}).strict(),bN=$t.safeExtend({type:M.z.literal("jwt_decode"),inputs:M.z.never().nullish(),outputs:M.z.object({header:qe.nullish(),payload:qe.nullish(),signature:qe.nullish()}).partial().nullish()}).strict(),kN=$t.safeExtend({type:M.z.literal("jwt_sign"),algorithm:M.z.enum(Pa).nullish(),expires_in:M.z.union([M.z.number(),M.z.string()]).nullish(),inputs:ad.nullish(),kid:M.z.string().nullish(),not_before:M.z.union([M.z.number(),M.z.string()]).nullish(),outputs:M.z.object({claims:qe.nullish(),header:qe.nullish(),token:qe.nullish()}).partial().nullish(),static_claims:M.z.record(M.z.string(),M.z.string()).nullish(),typ:M.z.string().nullish()}).strict(),wN=$t.safeExtend({type:M.z.literal("jwt_verify"),allowed_algorithms:M.z.array(M.z.enum(Pa)).nullish(),audiences:M.z.array(M.z.string()).nullish(),inputs:id.nullish(),issuers:M.z.array(M.z.string()).nullish(),leeway:M.z.union([M.z.number(),M.z.string()]).nullish(),outputs:M.z.object({claims:qe.nullish(),header:qe.nullish()}).partial().nullish(),required_claims:M.z.array(M.z.string()).nullish(),validate_exp:M.z.boolean().nullish(),validate_nbf:M.z.boolean().nullish()}).strict(),CN=$t.safeExtend({type:M.z.literal("branch"),then:M.z.array(Ya).nullish(),else:M.z.array(Ya).nullish()}).strict(),EN=dN.pipe(M.z.discriminatedUnion("type",[uN,pN,fN,mN,gN,bN,kN,wN,hN,yN,_N,CN])),NN=M.z.record(M.z.string(),M.z.string()),xN=M.z.object({dictionary_name:M.z.string().nullish()}),SN=M.z.object(),AN=M.z.object({strategy:M.z.enum(["memory","redis"]).nullish(),memory:xN.nullish(),redis:SN.nullish()}),IN=M.z.object({vault:NN.nullish(),cache:AN.nullish()}),ld=M.z.object({nodes:M.z.array(EN).nullish(),debug:M.z.boolean().nullish(),resources:IN.nullish()}).strict().superRefine((t,n)=>{!t||!Array.isArray(t.nodes)||Yc(t,zn,n)}).nullish(),sd=e.defineComponent({__name:"InputsRecordField",props:{name:{},items:{},nodeType:{}},emits:["change:inputs"],setup(t){const{getSchema:n}=We(),{i18n:o}=De(),a=e.computed(()=>{const i=n("inputs");if(!i)return[];const r=i.fields.map(s=>Object.keys(s)[0]);if(xt(t.nodeType))return r;const l=cN(t.nodeType);return l===null?r:l.length===0?[]:xh(r,l)});return(i,r)=>(e.openBlock(),e.createBlock(Et,{"as-child":"",name:t.name,"reset-label-path":"isolate"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,l=>(e.openBlock(),e.createBlock(Ct,{key:l,clearable:"","enable-filtering":"",items:t.items,name:l,placeholder:e.unref(o).t("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s=>i.$emit("change:inputs",l,s?s.value:null)},e.createSlots({_:2},[i.$slots["item-label"]?{name:"item-label",fn:e.withCtx(s=>[e.renderSlot(i.$slots,"item-label",e.mergeProps({ref_for:!0},s))]),key:"0"}:void 0]),1032,["items","name","placeholder","onChange"]))),128))]),_:3},8,["name"]))}}),PN=["data-testid"],TN={class:"dk-inputs-map-field-entry-body"},ON={class:"dk-inputs-map-field-entry-content"},VN=_e(e.defineComponent({__name:"InputsMapField",props:{items:{},fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},appearance:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},autofocus:{type:Boolean},name:{}},emits:["change:inputs","add:field","remove:field","rename:field","change"],setup(t,{emit:n}){const o=t,a=n,{entries:i,addEntry:r,removeEntry:l,field:s}=Zo(o,a),{i18n:{t:c}}=De(),u=e.useTemplateRef("root"),f=e.ref(null),d=e.ref({});let p;async function m(_,w="key"){var x;u.value&&(await e.nextTick(),(x=u.value.querySelector(`[data-${w}-input="${_}"]`))==null||x.focus())}function g(){const{id:_}=r(),w=i.value.findIndex(({key:x})=>!x);m(w===-1?i.value.length-1:w),f.value=_}function y(_){l(_.id),_.id===f.value&&(f.value=null),_.key.trim()!==""&&a("remove:field",_.key)}function C(_){p=_.key}function b(_){if(h(_)){_.key=p,delete d.value[_.id];return}if(_.id===f.value){if(_.key.trim()==="")return;a("add:field",_.key,_.value),f.value=null}else a("rename:field",p,_.key);p=_.key}function h(_){delete d.value[_.id];const w=o.fieldNameValidator("input",p,_.key);if(w)return d.value[_.id]=w,w}function E(_){h(_)}function k(_,w){_.id!==f.value&&a("change:inputs",_.key,w)}return e.watch(()=>i.value,_=>{f.value&&(_.find(({id:w})=>w===f.value)||(f.value=null))}),(_,w)=>{const x=e.resolveComponent("KAlert"),O=e.resolveComponent("KLabel"),K=e.resolveComponent("KInput"),I=e.resolveComponent("KSelect"),S=e.resolveComponent("KButton");return e.unref(s).error?(e.openBlock(),e.createBlock(x,{key:0,appearance:"danger",message:e.unref(s).error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:u,class:"dk-inputs-map-field"},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(i),(P,F)=>(e.openBlock(),e.createElementBlock("div",{key:P.id,class:"dk-inputs-map-field-entry","data-testid":`ff-kv-container-${e.unref(s).path.value}.${F}`},[e.createVNode(O,{for:`ff-kv-entry-key-${e.unref(s).path.value}.${F}`},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.label")),1)]),_:1},8,["for"]),e.createElementVNode("div",TN,[e.createElementVNode("div",ON,[e.createVNode(K,{id:`ff-kv-entry-key-${e.unref(s).path.value}.${F}`,modelValue:P.key,"onUpdate:modelValue":[T=>P.key=T,T=>h(P)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":F,"data-testid":`ff-key-${e.unref(s).path.value}.${F}`,error:!!d.value[P.id],"error-message":d.value[P.id],placeholder:e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input_name.placeholder"),onBlur:T=>E(P),onChange:T=>b(P),onFocus:T=>C(P)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","placeholder","onBlur","onChange","onFocus"]),e.createVNode(I,{modelValue:P.value,"onUpdate:modelValue":T=>P.value=T,class:"ff-kv-field-entry-value",clearable:"","data-testid":`ff-value-${e.unref(s).path.value}.${F}`,"enable-filtering":"",items:t.items,label:e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.source"),placeholder:e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:T=>k(P,(T==null?void 0:T.value)??null)},e.createSlots({_:2},[_.$slots["item-label"]?{name:"item-template",fn:e.withCtx(({item:T})=>[e.renderSlot(_.$slots,"item-label",e.mergeProps({ref_for:!0},T),void 0,!0)]),key:"0"}:void 0]),1032,["modelValue","onUpdate:modelValue","data-testid","items","label","placeholder","onChange"])]),e.createVNode(S,{appearance:"tertiary",class:"dk-inputs-map-field-remove-btn","data-testid":`ff-kv-remove-btn-${e.unref(s).path.value}.${F}`,icon:"",onClick:T=>y(P)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.CloseIcon))]),_:1},8,["data-testid","onClick"])])],8,PN))),128)),e.createVNode(S,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${e.unref(s).path.value}`,disabled:!!f.value,onClick:g},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(c)("plugins.free-form.datakit.flow_editor.node_properties.input.add_button")),1)]),_:1},8,["data-testid","disabled"])],512))}}}),[["__scopeId","data-v-dee3c136"]]),BN={class:"dk-source-item"},Er=_e(e.defineComponent({__name:"SourceItem",props:{item:{}},setup(t){return(n,o)=>(e.openBlock(),e.createElementBlock("span",BN,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(rt)[t.item.type].icon),{color:e.unref(Dn),size:e.unref(po)},null,8,["color","size"])),e.createTextVNode(" "+e.toDisplayString(t.item.label),1)]))}}),[["__scopeId","data-v-57059157"]]),RN={key:1,class:"dk-inputs-field-or"},It=_e(e.defineComponent({__name:"InputsField",props:{items:{},fieldNames:{},fieldNameValidator:{},nodeType:{}},emits:["change:input","change:inputs","add:field","remove:field","rename:field"],setup(t,{emit:n}){const o=n,{getSchema:a}=We(),{i18n:{t:i}}=De(),r=e.computed(()=>a("inputs")),l=e.computed(()=>r.value?r.value.type==="record"?sd:VN: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)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(e.unref(Oe.KLabel),{class:"dk-inputs-field-h1",info:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.tooltip")},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.label")),1)]),_:1},8,["info"]),e.unref(a)("input")?(e.openBlock(),e.createBlock(Ct,{key:0,class:"dk-inputs-field-h2",clearable:"","enable-filtering":"",items:t.items,label:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.input"),"label-attributes":{info:void 0},name:"input",placeholder:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.placeholder"),onChange:s},{"item-label":e.withCtx(g=>[e.renderSlot(p.$slots,"item-label",e.normalizeProps(e.guardReactiveProps(g)),()=>[e.createVNode(Er,{item:g},null,8,["item"])],!0)]),_:3},8,["items","label","placeholder"])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createElementBlock("div",RN,[e.createElementVNode("span",null,e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.or")),1)])):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createBlock(e.unref(Oe.KLabel),{key:2,class:"dk-inputs-field-h2 dk-margin-0"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.input.fields")),1)]),_:1})):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createBlock(e.unref(l),e.mergeProps({key:3,items:t.items,"key-order":t.fieldNames,name:"inputs"},l.value===sd?{nodeType:t.nodeType}:{fieldNameValidator:t.fieldNameValidator},{"onAdd:field":c,"onChange:inputs":u,"onRemove:field":f,"onRename:field":d}),{"item-label":e.withCtx(g=>[e.createVNode(Er,{item:g},null,8,["item"])]),_:1},16,["items","key-order"])):e.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-7124cd5c"]]),$N={},FN={class:"dk-node-form-divider"};function LN(t,n){return e.openBlock(),e.createElementBlock("hr",FN)}const jt=_e($N,[["render",LN],["__scopeId","data-v-c1502d89"]]),DN={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"},MN={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 jN(t){const n=Number(t);return!isNaN(n)&&isFinite(n)}function Kt(...t){return function(o){for(const a of t){const i=a(o);if(i)return i}}}function Yt(t){const{i18n:{t:n}}=De(),o=()=>t?typeof t=="string"?t:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_empty",t):"Field is required";return function(i){if(i==null||typeof i=="string"&&i.trim()==="")return o()}}function cd(t,n){const{i18n:{t:o}}=De();return function(i){if(i!=null)switch(t){case"identifier":{const r=()=>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:r()}case"url":{const r=()=>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 r()}}default:return}}}function on(t=0,n=1/0,o){const{i18n:{t:a}}=De();return function(r){if(r!=null&&typeof r=="string"&&(r.length<t||r.length>n))return o?typeof o=="string"?o:a("plugins.free-form.datakit.flow_editor.node_properties.errors.string_len_range",{fieldName:o.fieldName,minLength:t,maxLength:n}):`Value must be between ${t} and ${n} characters`}}function dd(t){const{i18n:{t:n}}=De();return function(a){if(!jN(a))return t?typeof t=="string"?t:n("plugins.free-form.datakit.flow_editor.node_properties.errors.not_number",t):"Value must be a number"}}function Zn(t,n){const{i18n:{t:o}}=De();return function(i){if(i==null)return;const r=dd(n)(i);if(r)return r;const l=Number(i);switch(t){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 Ja(t=-1/0,n=1/0,o){const{i18n:{t:a}}=De();return function(r){if(r==null)return;const l=dd(o)(r);if(l)return l;const s=Number(r);if(s<t||s>n)return o?typeof o=="string"?o:a("plugins.free-form.datakit.flow_editor.node_properties.errors.number_range",{fieldName:o.fieldName,min:t,max:n}):`Value must be between ${t} and ${n}`}}function KN(t,n){const{state:o}=tt(),{i18n:{t:a}}=De();return function(r){if(o.value.nodes.some(l=>l.name===r&&l.id!==t))return n?typeof n=="string"?n:a("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",n):"Name must be unique."}}function vN(t,n,o){const{i18n:{t:a}}=De();return function(r){if(!n)return;if(o?n.fields[t].some(s=>s.name===r&&s.id!==o):n.fields[t].some(s=>s.name===r)){const s=a(t==="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 a("plugins.free-form.datakit.flow_editor.node_properties.errors.not_unique",{fieldName:s})}}}function UN(){const{i18n:{t}}=De();return function(o){if(Ba(o))return t("plugins.free-form.datakit.flow_editor.node_properties.errors.reserved_node_name",{nodeName:o})}}function ud(t){const{i18n:{t:n}}=De(),o={fieldName:n("plugins.free-form.datakit.flow_editor.node_properties.name")};return Kt(Yt(o),cd("identifier",o),UN(),KN(t,o))}function qN(t){const{i18n:{t:n}}=De(),{getNodeById:o}=tt();return function(i,r,l){const s={fieldName:n(i==="input"?"plugins.free-form.datakit.flow_editor.node_properties.input_name.label":"plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name")};return Kt(Yt(s),vN(i,o(t),l))(r)}}function GN(t){const n=e.ref({}),o=e.computed(()=>Object.values(n.value).every(l=>!l)),a={};Object.keys(t).forEach(l=>{const s=t[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));a[l]={handleChange:f,handleBlur:f,validate:f,isValid:e.computed(()=>n.value[l]===void 0),error:e.computed(()=>n.value[l])}});function i(){n.value={}}function r(l){var s;for(const c of Object.keys(t)){const u=l[c],f=typeof u=="function"?u():u;(s=a[c])==null||s.validate(f)}return n.value}return{isValid:o,errorMap:n,fields:a,clearErrors:i,validate:r}}function rn(t){const{validationConfig:n,getValidationData:o,toggleNodeValid:a}=t,{skipValidation:i}=tt(),r=e.computed(()=>typeof n=="function"?n():n),l=e.computed(()=>GN(r.value)),s=e.computed(()=>l.value.fields),c=e.computed(()=>l.value.isValid.value);function u(){const d=o(),p=l.value.validate(d),m={};for(const g in r.value)m[g]=p[g];return m}function f(d,p){const m=()=>{const y=o(),C=s.value[d];C&&C.handleBlur(y[d])},g=()=>{p==null||p();const y=o(),C=s.value[d];C&&C.handleChange(y[d])};return e.computed(()=>{const y=s.value[d];return{validate:m,update:g,error:y?!y.isValid.value:!1,errorMessage:y?y.error.value??"":""}})}return e.onMounted(()=>{i.value?i.value=!1:u()}),e.onBeforeUnmount(async()=>{try{const d=u(),p=Object.values(d).filter(Boolean).length>0;a(!p)}catch{}}),e.watch(()=>c.value,a,{immediate:!0}),{fields:s.value,isValid:c,validateAll:u,createFieldHandler:f}}function St(t,n){const{state:o,renameNode:a,getNodeById:i,addField:r,renameField:l,removeField:s,replaceConfig:c,disconnectEdge:u,connectEdge:f,invalidConfigNodeIds:d,commit:p,revert:m}=tt(),{i18n:{t:g}}=De(),y=Mc(),C=e.computed(()=>{const L=i(t);if(!L)throw new Error("Node not existed");return L}),b=e.computed(()=>{const V=o.value.edges.filter(R=>R.target===t).reduce((R,A)=>{var B,j;const v=i(A.source),z=(B=fn(v,"output",A.sourceField))==null?void 0:B.id,$=(j=fn(C.value,"input",A.targetField))==null?void 0:j.name,N=v.id+(z?`.${z}`:"");return $?R.inputs={...R.inputs,[$]:N}:R.input=N,R},{});return C.value.fields.input.forEach(R=>{V.inputs||(V.inputs={}),V.inputs[R.name]||(V.inputs[R.name]=null)}),{...C.value.config,...V,name:C.value.name}}),h=L=>{a(t,L??"",!0,`${t}:rename`)},E=(L,V=!0)=>{if(!n)throw new Error("getFormValue is not defined");const R=sn(n(),["name","input","inputs"]),A=L?`update:${t}:${L}`:void 0;c(t,R,V,A)},k=(L,V)=>{const R=pn(C.value,L,V);if(!R)throw new Error(`Field with name "${V}" not found in node "${C.value.name}"`);return R},_=(L,V,R)=>{const A=!!R;r(t,L,V,!A),A&&I(V,R)},w=(L,V,R)=>{const A=k(L,V).id;l(t,A,R)},x=(L,V)=>{const R=k(L,V).id;s(t,R)},O=e.computed(()=>o.value.edges.filter(L=>L.target===t&&!L.targetField)[0]),K=e.computed(()=>o.value.edges.filter(L=>L.target===t&&L.targetField)),I=async(L,V)=>{const R=V==null,A=k("input",L).id;if(R){const ee=K.value.find(oe=>oe.targetField===A);ee&&u(ee.id);return}const{nodeId:v,fieldId:z}=_c(V),$=k("input",L).id,N=[];O.value&&(N.push(xo(O.value,i)),u(O.value.id,!1));const B=K.value.find(ee=>ee.targetField===A);B&&(N.push(xo(B,i)),u(B.id,!1)),f({source:v,sourceField:z,target:t,targetField:$},!1);const j=qa(v,z,t,$,i),W=N[0]&&j?N[0][1]===j[1]:!1;if(p(),W||N.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[j],N)||m()},S=async L=>{if(L==null){O.value&&u(O.value.id);return}const R=[];for(const N of K.value)R.push(xo(N,i)),u(N.id,!1);O.value&&u(O.value.id,!1);const{nodeId:A,fieldId:v}=_c(L);f({source:A,sourceField:v,target:t,targetField:void 0},!1);const z=qa(A,v,t,void 0,i);if(p(),R.length===0)return;await y(g("plugins.free-form.datakit.flow_editor.confirm.message.switch"),[z],R)||m()},P=L=>{const V=[...o.value.edges,{source:L,target:t}];return Ma(ur(V))},F=e.computed(()=>{var V,R;const L=[];for(const A of o.value.nodes)if((V=Wn(A.type).io)!=null&&V.output&&A.fields.output&&A.id!==t&&!(A.type==="property"&&!va((R=A.config)==null?void 0:R.property))&&!P(A.id)&&!(C.value.phase==="request"&&A.phase==="response")&&!(A.type==="vault"&&A.fields.output.length===0)){L.push({value:A.id,label:A.name,type:A.type});for(const z of A.fields.output)L.push({value:`${A.id}.${z.id}`,label:`${A.name}.${z.name}`,type:A.type})}return L}),T=e.computed(()=>C.value.fields.input.map(L=>L.name)||[]);function D(L){d.value.delete(t),L||d.value.add(t)}const U=qN(t);function q(L,V,R){const A=i(t);if(!A)throw new Error("Node not found when validating field name");const v=pn(A,L,V);return U(L,R,v==null?void 0:v.id)}return{formData:b,inputOptions:F,inputEdge:O,inputsEdges:K,inputsFieldNames:T,currentNode:C,setName:h,setConfig:E,addField:_,renameFieldByName:w,removeFieldByName:x,setInputs:I,setInput:S,nameValidator:ud(t),fieldNameValidator:q,toggleNodeValid:D}}function At(t){const{getSchema:n}=We();return e.computed(()=>{if(xt(t))switch(t){case"response":return MN;case"service_request":return DN}try{const a=n().fields.find(u=>Go(u,"config"));if(!a)throw new Error("Config field not found in schema.");const r=a.config.fields.find(u=>Go(u,"nodes"));if(!r)throw new Error("Nodes field not found in config schema.");const c=r.nodes.elements.subschema_definitions[t];if(!c)throw new Error(`Subschema "${t}" not found in the schema.`);return c}catch(o){throw new Error(`Failed to get subschema "${t}": ${o.message}`)}})}const Ft=e.defineComponent({__name:"NameField",props:{name:{},validate:{type:Function}},emits:["update"],setup(t,{emit:n}){const o=t,a=n,{i18n:{t:i}}=De(),r=e.ref(o.name),l=e.computed(()=>{const f=o.validate(r.value.trim());return f===void 0?"":f});let s=r.value.trim();function c(){if(l.value){r.value=s;return}a("update",r.value.trim())}function u(){s=r.value.trim()}return e.watch(()=>o.name,f=>{f!==r.value&&(r.value=f)}),(f,d)=>{const p=e.resolveComponent("KInput");return e.openBlock(),e.createBlock(p,{"model-value":r.value,"onUpdate:modelValue":d[0]||(d[0]=m=>r.value=m),"data-1p-ignore":"",error:!!l.value,"error-message":l.value,label:e.unref(i)("plugins.free-form.datakit.flow_editor.node_properties.name"),required:"",onChange:c,onFocus:u},null,8,["model-value","error","error-message","label"])}}}),zN=e.defineComponent({__name:"NodeFormCall",props:{nodeId:{}},setup(t){const{i18n:{t:n}}=De(),o=e.useTemplateRef("form"),a=At("call"),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>o.value.getValue()),{createFieldHandler:g}=rn({validationConfig:{url:Kt(Yt({fieldName:"URL"}),cd("url",{fieldName:"URL"})),timeout:Kt(Zn("integer"),Ja(0,2147483646))},getValidationData:()=>({url:i.value.url,timeout:i.value.timeout}),toggleNodeValid:p}),y=g("url",()=>l("url")),C=g("timeout",()=>l("timeout"));return(b,h)=>{const E=e.resolveComponent("KLabel");return e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(a)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(E,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ze,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"url",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(I0,{name:"method",onUpdate:h[0]||(h[0]=k=>e.unref(l)())}),e.createVNode(qt,{error:e.unref(C).error,"error-message":e.unref(C).errorMessage,name:"timeout",onBlur:e.unref(C).validate,"onUpdate:modelValue":e.unref(C).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Ze,{name:"ssl_server_name","onUpdate:modelValue":h[1]||(h[1]=k=>e.unref(l)("ssl_server_name"))}),e.createVNode(Qt,{name:"ssl_verify","onUpdate:modelValue":h[2]||(h[2]=k=>e.unref(l)("ssl_verify"))}),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"call","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),HN=e.defineComponent({__name:"NodeFormServiceRequest",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("service_request"),{formData:a,inputOptions:i,setInputs:r,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=St(t.nodeId,()=>n.value.getValue());return(u,f)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(a),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(It,{"field-name-validator":e.unref(c),"field-names":e.unref(s),items:e.unref(i),"node-type":"service_request","onChange:input":e.unref(l),"onChange:inputs":e.unref(r)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),WN=e.defineComponent({__name:"NodeFormResponse",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("response"),{formData:a,inputOptions:i,setInputs:r,setInput:l,inputsFieldNames:s,fieldNameValidator:c}=St(t.nodeId,()=>n.value.getValue());return(u,f)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(a),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(It,{"field-name-validator":e.unref(c),"field-names":e.unref(s),items:e.unref(i),"node-type":"response","onChange:input":e.unref(l),"onChange:inputs":e.unref(r)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),YN=e.defineComponent({__name:"NodeFormJq",props:{nodeId:{}},setup(t){const{i18n:{t:n},i18nT:o}=De(),a=e.useTemplateRef("form"),i=At("jq"),{formData:r,setName:l,setConfig:s,inputOptions:c,setInputs:u,setInput:f,addField:d,removeFieldByName:p,renameFieldByName:m,inputsFieldNames:g,nameValidator:y,toggleNodeValid:C,fieldNameValidator:b}=St(t.nodeId,()=>a.value.getValue());function h(O,K){d("input",O,K)}function E(O){p("input",O)}function k(O,K){m("input",O,K)}const _=n("plugins.free-form.datakit.flow_editor.node_properties.jq.label"),{createFieldHandler:w}=rn({validationConfig:{jq:Kt(Yt({fieldName:_}),on(1,10240,{fieldName:_}))},getValidationData:()=>({jq:r.value.jq}),toggleNodeValid:C}),x=w("jq",()=>s("jq"));return(O,K)=>{const I=e.resolveComponent("KLabel"),S=e.resolveComponent("KExternalLink");return e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(r),schema:e.unref(i)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(r).name,validate:e.unref(y),onUpdate:e.unref(l)},null,8,["name","validate","onUpdate"]),e.createVNode(I,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ze,{autosize:"",error:e.unref(x).error,"error-message":e.unref(x).errorMessage,label:e.unref(_),"label-attributes":{},multiline:"",name:"jq",resizable:"",onBlur:e.unref(x).validate,"onUpdate:modelValue":e.unref(x).update},{help:e.withCtx(()=>[e.createVNode(e.unref(o),{keypath:"plugins.free-form.datakit.flow_editor.node_properties.jq.help"},{link:e.withCtx(()=>[e.createVNode(S,{"hide-icon":"",href:e.unref(Sa).jqlang},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(Sa).jqlang),1)]),_:1},8,["href"])]),_:1})]),_:1},8,["error","error-message","label","onBlur","onUpdate:modelValue"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(b),"field-names":e.unref(g),items:e.unref(c),"node-type":"jq","onAdd:field":h,"onChange:input":e.unref(f),"onChange:inputs":e.unref(u),"onRemove:field":E,"onRename:field":k},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"])}}}),JN=_e(e.defineComponent({__name:"OutputValueField",props:{fieldNameValidator:{},initialValue:{},label:{},keyPlaceholder:{},valuePlaceholder:{},appearance:{},defaultKey:{},defaultValue:{},labelAttributes:{},showVaultSecretPicker:{type:Boolean},keyOrder:{},autofocus:{type:Boolean},name:{}},emits:["change:value","add:field","rename:field","remove:field","change"],setup(t,{emit:n}){const o=t,a=n,i=e.ref({}),{entries:r,addEntry:l,removeEntry:s,field:c}=Zo(o,a,!1),{i18n:u}=De(),f=e.useTemplateRef("root"),d=e.ref(null);let p;async function m(_,w="key"){var x;f.value&&(await e.nextTick(),(x=f.value.querySelector(`[data-${w}-input="${_}"]`))==null||x.focus())}function g(){const _=l(),w=r.value.findIndex(({key:x})=>!x);m(w===-1?r.value.length-1:w),d.value=_}function y(_){var w;_.id===((w=d.value)==null?void 0:w.id)&&(d.value=null),s(_.id),_.key.trim()!==""&&a("remove:field",_.key)}function C(_){p=_.key}function b(_){var w;if(E(_)){_.key=p,delete i.value[_.id];return}if(_.id===((w=d.value)==null?void 0:w.id)){if(_.key.trim()==="")return;d.value=null,a("add:field",_.key,_.value)}else a("rename:field",p,_.key);p=_.key}function h(_,w){var O;if(w.id===((O=d.value)==null?void 0:O.id))return;const x=_.target.value.trim();a("change:value",w.key,x)}function E(_){delete i.value[_.id];const w=o.fieldNameValidator("output",p,_.key);if(w)return i.value[_.id]=w,w}function k(_){E(_)}return e.watchEffect(()=>{d.value&&!r.value.some(_=>_.id===d.value.id)&&r.value.push(d.value)}),(_,w)=>{const x=e.resolveComponent("KAlert"),O=e.resolveComponent("KLabel"),K=e.resolveComponent("KButton"),I=e.resolveComponent("KInput"),S=e.resolveComponent("KCard");return e.unref(c).error?(e.openBlock(),e.createBlock(x,{key:0,appearance:"danger",message:e.unref(c).error.message},null,8,["message"])):(e.openBlock(),e.createElementBlock("div",{key:1,ref_key:"root",ref:f,class:"dk-output-value-field"},[e.createVNode(O,{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.label")),1)]),_:1}),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),(P,F)=>(e.openBlock(),e.createBlock(S,{key:P.id,class:"dk-output-value-field-entry","data-testid":`ff-kv-container-${e.unref(c).path.value}.${F}`},{actions:e.withCtx(()=>[e.createVNode(K,{appearance:"none","data-testid":`ff-kv-remove-btn-${e.unref(c).path.value}.${F}`,icon:"",onClick:T=>y(P)},{default:e.withCtx(()=>[e.createVNode(e.unref(me.CloseIcon))]),_:1},8,["data-testid","onClick"])]),default:e.withCtx(()=>[e.createVNode(I,{id:`ff-kv-entry-key-${e.unref(c).path.value}.${F}`,modelValue:P.key,"onUpdate:modelValue":[T=>P.key=T,T=>E(P)],modelModifiers:{trim:!0},class:"ff-kv-field-entry-key","data-key-input":F,"data-testid":`ff-key-${e.unref(c).path.value}.${F}`,error:!!i.value[P.id],"error-message":i.value[P.id],label:e.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value_name"),required:"",onBlur:T=>k(P),onChange:T=>b(P),onFocus:T=>C(P)},null,8,["id","modelValue","onUpdate:modelValue","data-key-input","data-testid","error","error-message","label","onBlur","onChange","onFocus"]),e.createVNode(I,{modelValue:P.value,"onUpdate:modelValue":T=>P.value=T,modelModifiers:{trim:!0},class:"ff-kv-field-entry-value","data-testid":`ff-value-${e.unref(c).path.value}.${F}`,label:e.unref(u).t("plugins.free-form.datakit.flow_editor.node_properties.output_value.value"),onChange:T=>h(T,P)},null,8,["modelValue","onUpdate:modelValue","data-testid","label","onChange"])]),_:2},1032,["data-testid"]))),128)),e.createVNode(K,{appearance:"tertiary","data-testid":`ff-kv-add-btn-${e.unref(c).path.value}`,disabled:!!d.value,onClick:g},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.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-e76d9015"]]);function XN(t){const n={};for(const[o,a]of Object.entries(t))typeof a=="object"&&a!==null?n[o]=JSON.stringify(a):n[o]=String(a);return n}function Nr(t){const n={};for(const[o,a]of Object.entries(t))if(a!=null){n[o]=a;try{a==="null"?n[o]=null:(a==="true"||a==="false"||/^-?\d+(\.\d+)?$/.test(a)||a.startsWith("{")&&a.endsWith("}")||a.startsWith("[")&&a.endsWith("]"))&&(n[o]=JSON.parse(a))}catch{}}return n}function ZN(t,n,o){const a={};for(const i of Object.keys(t))i===n?a[o]=t[n]:a[i]=t[i];return a}const QN=e.defineComponent({__name:"NodeFormStatic",props:{nodeId:{}},setup(t){const{renameNode:n,getOutEdgesByNodeId:o,addField:a,renameField:i,removeField:r,replaceConfig:l,getNodeById:s}=tt(),{fieldNameValidator:c}=St(t.nodeId),u=At("static"),f=ud(t.nodeId),d=e.computed(()=>s(t.nodeId)),p=e.computed(()=>{var E;return((E=d.value)==null?void 0:E.fields.output.map(k=>k.name))||[]});function m(E){if(!d.value)throw new Error("No current node");n(d.value.id,E??"")}const g=e.computed(()=>{var K;if(!d.value)return{};const E=((K=d.value.config)==null?void 0:K.values)??{},k={},_=o(d.value.id).map(I=>I.sourceField).filter(Boolean).map(I=>fn(d.value,"output",I)).map(I=>I==null?void 0:I.name).filter(Boolean),w=d.value.fields.output.map(I=>I.name),x=Object.keys(E);return new Set([...x,..._,...w]).forEach(I=>{if(I in E){k[I]=E[I];return}k[I]=""}),{name:d.value.name,values:XN(k)}});function y(E,k){if(!d.value)throw new Error("No selected node");const _=k!==void 0;if(a(t.nodeId,"output",E,!_),_){const w={values:Nr({...g.value.values,[E]:k})};l(t.nodeId,w)}}function C(E,k){if(!d.value)throw new Error("No selected node");const _=pn(d.value,"output",E);if(!_)throw new Error("No field found to rename");const w={values:Nr(ZN(g.value.values??{},E,k))};l(t.nodeId,w,!1),i(t.nodeId,_.id,k)}function b(E){var w;if(!d.value)throw new Error("No selected node");const k=pn(d.value,"output",E);if(!k)throw new Error("No field found to delete");r((w=d.value)==null?void 0:w.id,k.id,!0,!1);const _={values:Nr({...g.value.values})};delete _.values[E],l(t.nodeId,_)}function h(E,k){if(!d.value)throw new Error("No selected node");const _={...g.value.values};_[E]=k;const w={values:Nr(_)};l(t.nodeId,w)}return(E,k)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:g.value,schema:e.unref(u)},{default:e.withCtx(()=>{var _;return[e.createVNode(Ft,{name:((_=d.value)==null?void 0:_.name)??"",validate:e.unref(f),onUpdate:m},null,8,["name","validate"]),e.createVNode(JN,{"field-name-validator":e.unref(c),"key-order":p.value,name:"values","onAdd:field":y,"onChange:value":h,"onRemove:field":b,"onRename:field":C},null,8,["field-name-validator","key-order"])]}),_:1},8,["data","schema"]))}}),ex={class:"dk-kong-property-item"},tx={class:"property-type"},nx={class:"property-badges"},ox=_e(e.defineComponent({__name:"PropertiesField",props:{validators:{}},emits:["update:model-value","update:property-key"],setup(t,{emit:n}){const{i18n:{t:o}}=De(),a=t,i=n,{formData:r}=We(),l=e.ref(Eo(r.property)),s=e.computed(()=>No(r.property)),c=e.ref(Ka(r.property)),u=e.computed(()=>r.property??""),f=e.computed(()=>Object.entries(Vn).map(([m])=>{var C;const g=No(m)?(C=r.property)==null?void 0:C.startsWith(m.replace(Jn,"")):r.property===m;return{label:g&&c.value?m.replace(Jn,c.value):m,value:m,selected:g}}));function d(m){const g=gr.find(y=>{var C;return(C=r.property)==null?void 0:C.startsWith(y)});g&&(r.property=g+m,a.validators.key.handleChange(r.property),i("update:property-key",r.property))}function p(m){l.value!==Eo(m==null?void 0:m.value)&&(r.property=(m==null?void 0:m.value)||null,l.value=Eo(r.property),a.validators.property.handleBlur(()=>r.property),i("update:model-value",r.property))}return e.watch(()=>r.property,m=>{c.value=Ka(m),l.value=Eo(m)}),(m,g)=>{const y=e.resolveComponent("KBadge"),C=e.resolveComponent("KSelect"),b=e.resolveComponent("KInput");return e.openBlock(),e.createElementBlock(e.Fragment,null,[(e.openBlock(),e.createBlock(C,{key:u.value,"enable-filtering":"",error:!t.validators.property.isValid.value,help:t.validators.property.error.value,items:f.value,label:"Property","label-attributes":{maxWidth:"300px",placement:"top",info:"The property name to get/set"},required:"",onBlur:g[0]||(g[0]=h=>t.validators.property.handleBlur(()=>e.unref(r).property)),onChange:p},{"item-template":e.withCtx(({item:h})=>[e.createElementVNode("div",ex,[e.createElementVNode("div",null,[e.createElementVNode("div",null,e.toDisplayString(h.label),1),e.createElementVNode("div",tx,e.toDisplayString(e.unref(Vn)[h.value].dataType),1)]),e.createElementVNode("div",nx,[e.unref(Vn)[h.value].readable?(e.openBlock(),e.createBlock(y,{key:0,appearance:"info"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.get")),1)]),_:1})):e.createCommentVNode("",!0),e.unref(Vn)[h.value].writable?(e.openBlock(),e.createBlock(y,{key:1,appearance:"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.node_properties.property.set")),1)]),_:1})):e.createCommentVNode("",!0)])])]),_:1},8,["error","help","items"])),s.value?(e.openBlock(),e.createBlock(b,{key:0,"model-value":c.value,"onUpdate:modelValue":[g[1]||(g[1]=h=>c.value=h),d],error:!t.validators.key.isValid.value,"error-message":t.validators.key.error.value,label:"key",required:"",onBlur:g[2]||(g[2]=h=>t.validators.key.handleBlur(()=>e.unref(r).property))},null,8,["model-value","error","error-message"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-665f5090"]]),rx=e.defineComponent({__name:"NodeFormProperty",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),{selectedNode:o,disconnectInEdges:a,disconnectOutEdges:i}=tt(),r=At("property"),{formData:l,setName:s,setConfig:c,inputOptions:u,setInputs:f,setInput:d,inputsFieldNames:p,nameValidator:m,toggleNodeValid:g,fieldNameValidator:y}=St(t.nodeId,()=>n.value.getValue()),C=e.computed(()=>Ua(l.value.property));function b(E){var _;const k=(_=o.value)==null?void 0:_.id;if(!k)throw new Error("Expected selectedNode to be defined");va(E)||i(k,!1),Ua(E)||a(k,!1),c()}const{fields:h}=rn({validationConfig:()=>({property:Yt({fieldName:"Property"}),key:No(l.value.property)?Yt({fieldName:"Key"}):()=>{}}),getValidationData:()=>({property:l.value.property,key:Ka(l.value.property)}),toggleNodeValid:g});return(E,k)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(l),schema:e.unref(r)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(l).name,validate:e.unref(m),onUpdate:e.unref(s)},null,8,["name","validate","onUpdate"]),e.createVNode(Ct,{name:"content_type",onUpdate:k[0]||(k[0]=_=>e.unref(c)())}),e.createVNode(ox,{validators:e.unref(h),"onUpdate:modelValue":b,"onUpdate:propertyKey":k[1]||(k[1]=_=>e.unref(c)("property-key"))},null,8,["validators"]),C.value?(e.openBlock(),e.createBlock(jt,{key:0})):e.createCommentVNode("",!0),C.value?(e.openBlock(),e.createBlock(It,{key:1,"field-name-validator":e.unref(y),"field-names":e.unref(p),items:e.unref(u),"node-type":"property","onChange:input":e.unref(d),"onChange:inputs":e.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])):e.createCommentVNode("",!0)]),_:1},8,["data","schema"]))}}),ax=e.defineComponent({__name:"NodeFormExit",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("exit"),{formData:a,setName:i,setConfig:r,inputOptions:l,setInputs:s,setInput:c,inputsFieldNames:u,nameValidator:f,toggleNodeValid:d,fieldNameValidator:p}=St(t.nodeId,()=>n.value.getValue()),{createFieldHandler:m}=rn({validationConfig:{status:Kt(Zn("integer",{fieldName:"Status"}),Ja(200,599,{fieldName:"Status"}))},getValidationData:()=>({status:a.value.status}),toggleNodeValid:d}),g=m("status",()=>r("status"));return(y,C)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(a),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(a).name,validate:e.unref(f),onUpdate:e.unref(i)},null,8,["name","validate","onUpdate"]),e.createVNode(qt,{error:e.unref(g).error,"error-message":e.unref(g).errorMessage,name:"status",onBlur:e.unref(g).validate,"onUpdate:modelValue":e.unref(g).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Qt,{name:"warn_headers_sent","onUpdate:modelValue":C[0]||(C[0]=b=>e.unref(r)())}),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(p),"field-names":e.unref(u),items:e.unref(l),"node-type":"exit","onChange:input":e.unref(c),"onChange:inputs":e.unref(s)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}});function ix(t){const n=St(t),{state:o,getNodeById:a,branchGroups:i,commit:r}=tt(),{i18n:{t:l}}=De(),s=Mc(),c=ua(),u=e.computed(()=>{var E;const b={...n.formData.value},h=wo(((E=n.currentNode.value)==null?void 0:E.type)||"branch");for(const k of h)(!(k in b)||b[k]==null)&&(b[k]=[]);return b});function f(b,h,E){const k=a(b),_=a(E),w=k?`${k.name}.${h}`:`${b}.${h}`,x=_?_.name:E;return[w,x]}function d(b){return(b==null?[]:Array.isArray(b)?b:[b]).filter(h=>$a(h))}function p(b,h){return i.wouldCreateCycle(b,h)?(c({message:l("plugins.free-form.datakit.flow_editor.error.branch_cycle"),appearance:"danger"}),!0):!1}function m(b,h,E){const k=[],_=[],w=[];for(const x of E){const O=i.findMembership(x);if(!O||O.ownerId===b&&O.branch===h)continue;const K=i.getMembers(O.ownerId,O.branch).filter(I=>I!==x);w.push({ownerId:O.ownerId,branch:O.branch,members:K}),k.push(f(b,h,x)),_.push(f(O.ownerId,O.branch,x))}return{conflictUpdates:w,addedAssignments:k,removedAssignments:_}}function g(b,h,E,k){let _=!1;for(const w of k)_=i.setMembers(w.ownerId,w.branch,w.members,{commit:!1})||_;return _=i.setMembers(b,h,E,{commit:!1})||_,_}async function y(b,h){const E=n.currentNode.value,k=d(h),_=i.prepareMembers(E.id,b,k),w=i.getMembers(E.id,b);if(Fa(w,_))return!0;const x=_.filter(P=>!w.includes(P));for(const P of x)if(p(E.id,P))return!1;const{conflictUpdates:O,addedAssignments:K,removedAssignments:I}=m(E.id,b,x);return O.length>0&&!await s(l("plugins.free-form.datakit.flow_editor.confirm.message.branch_replace"),K,I)?!1:(g(E.id,b,_,O)&&r(),!0)}const C=e.computed(()=>{const b=n.currentNode.value;return!b||!i?[]:o.value.nodes.filter(h=>h.id!==t&&!xt(h.type)&&h.phase===b.phase&&!i.wouldCreateCycle(b.id,h.id)).map(h=>({value:h.id,label:h.name,type:h.type}))});return{...n,formData:u,branchOptions:C,updateBranchMembers:y}}const lx=e.defineComponent({__name:"NodeFormBranch",props:{nodeId:{}},setup(t){const{i18n:{t:n}}=De(),o=At("branch"),a=e.ref(0),{formData:i,setName:r,inputOptions:l,branchOptions:s,nameValidator:c,setInput:u,setInputs:f,inputsFieldNames:d,fieldNameValidator:p,updateBranchMembers:m}=ix(t.nodeId);async function g(y,C){await m(y,C)||(a.value+=1)}return(y,C)=>(e.openBlock(),e.createBlock(mt,{key:a.value,data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(c),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ct,{"enable-filtering":"",items:e.unref(s),multiple:"",name:"then",onUpdate:C[0]||(C[0]=b=>g("then",b))},{"item-label":e.withCtx(b=>[e.createVNode(Er,{item:b},null,8,["item"])]),_:1},8,["items"]),e.createVNode(Ct,{"enable-filtering":"",items:e.unref(s),multiple:"",name:"else",onUpdate:C[1]||(C[1]=b=>g("else",b))},{"item-label":e.withCtx(b=>[e.createVNode(Er,{item:b},null,8,["item"])]),_:1},8,["items"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(p),"field-names":e.unref(d),items:e.unref(l),"node-type":"branch","onChange:input":e.unref(u),"onChange:inputs":e.unref(f)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),sx=e.defineComponent({__name:"NodeFormCache",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("cache"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>n.value.getValue()),{createFieldHandler:g}=rn({validationConfig:()=>({ttl:Kt(Zn("integer",{fieldName:"TTL"}),Ja(1,1/0,{fieldName:"TTL"}))}),getValidationData:()=>({ttl:i.value.ttl}),toggleNodeValid:p}),y=g("ttl",()=>l("ttl"));return(C,b)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Qt,{name:"bypass_on_error","onUpdate:modelValue":b[0]||(b[0]=h=>e.unref(l)("bypass_on_error"))}),e.createVNode(qt,{error:e.unref(y).error,"error-message":e.unref(y).errorMessage,name:"ttl",onBlur:e.unref(y).validate,"onUpdate:modelValue":e.unref(y).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"cache","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),cx=e.defineComponent({__name:"NodeFormXmlToJson",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("xml_to_json"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>n.value.getValue()),g=a("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),y=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:C}=rn({validationConfig:()=>({attributes_block_name:Kt(()=>y()?void 0:g,O=>{if(O)return on(1,32,{fieldName:"Attributes block name"})(O)}),attributes_name_prefix:Kt(()=>y()?void 0:g,O=>{if(O)return on(1,32,{fieldName:"Attributes name prefix"})(O)}),text_block_name:on(1,32,{fieldName:"Text block name"}),xpath:on(1,256,{fieldName:"XPath"})}),getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,text_block_name:i.value.text_block_name,xpath:i.value.xpath}),toggleNodeValid:p}),b=C("attributes_block_name",()=>l("attributes_block_name")),h=C("attributes_name_prefix",()=>l("attributes_name_prefix")),E=C("text_block_name",()=>l("text_block_name")),k=C("xpath",()=>l("xpath")),_=()=>{b.value.validate(),h.value.validate()},w=()=>{b.value.update(),h.value.validate()},x=()=>{h.value.update(),b.value.validate()};return(O,K)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Qt,{name:"recognize_type","onUpdate:modelValue":K[0]||(K[0]=I=>e.unref(l)("recognize_type"))}),e.createVNode(Ze,{error:e.unref(b).error,"error-message":e.unref(b).errorMessage,name:"attributes_block_name",onBlur:_,"onUpdate:modelValue":w},null,8,["error","error-message"]),e.createVNode(Ze,{error:e.unref(h).error,"error-message":e.unref(h).errorMessage,name:"attributes_name_prefix",onBlur:_,"onUpdate:modelValue":x},null,8,["error","error-message"]),e.createVNode(Ze,{error:e.unref(E).error,"error-message":e.unref(E).errorMessage,name:"text_block_name",onBlur:e.unref(E).validate,"onUpdate:modelValue":e.unref(E).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Qt,{name:"text_as_property","onUpdate:modelValue":K[1]||(K[1]=I=>e.unref(l)("text_as_property"))}),e.createVNode(Ze,{error:e.unref(k).error,"error-message":e.unref(k).errorMessage,name:"xpath",onBlur:e.unref(k).validate,"onUpdate:modelValue":e.unref(k).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"xml_to_json","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),dx=e.defineComponent({__name:"NodeFormJsonToXml",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("json_to_xml"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,addField:f,removeFieldByName:d,renameFieldByName:p,inputsFieldNames:m,nameValidator:g,toggleNodeValid:y,fieldNameValidator:C}=St(t.nodeId,()=>n.value.getValue()),b=a("plugins.free-form.datakit.flow_editor.node_properties.errors.attributes_required"),h=()=>!!(i.value.attributes_block_name||i.value.attributes_name_prefix),{createFieldHandler:E}=rn({validationConfig:{attributes_block_name:Kt(()=>h()?void 0:b,on(1,32,{fieldName:"Attributes block name"})),attributes_name_prefix:Kt(()=>h()?void 0:b,on(1,32,{fieldName:"Attributes name prefix"})),root_element_name:on(1,64,{fieldName:"Root element name"}),text_block_name:on(1,32,{fieldName:"Text block name"})},getValidationData:()=>({attributes_block_name:i.value.attributes_block_name,attributes_name_prefix:i.value.attributes_name_prefix,root_element_name:i.value.root_element_name,text_block_name:i.value.text_block_name}),toggleNodeValid:y}),k=E("attributes_block_name",()=>l("attributes_block_name")),_=E("attributes_name_prefix",()=>l("attributes_name_prefix")),w=E("root_element_name",()=>l("root_element_name")),x=E("text_block_name",()=>l("text_block_name"));function O(){k.value.validate(),_.value.validate()}function K(){k.value.update(),_.value.validate()}function I(){_.value.update(),k.value.validate()}function S(T,D){f("input",T,D)}function P(T){d("input",T)}function F(T,D){p("input",T,D)}return(T,D)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(g),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ze,{error:e.unref(k).error,"error-message":e.unref(k).errorMessage,name:"attributes_block_name",onBlur:O,"onUpdate:modelValue":K},null,8,["error","error-message"]),e.createVNode(Ze,{error:e.unref(_).error,"error-message":e.unref(_).errorMessage,name:"attributes_name_prefix",onBlur:O,"onUpdate:modelValue":I},null,8,["error","error-message"]),e.createVNode(Ze,{error:e.unref(w).error,"error-message":e.unref(w).errorMessage,name:"root_element_name",onBlur:e.unref(w).validate,"onUpdate:modelValue":e.unref(w).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Ze,{error:e.unref(x).error,"error-message":e.unref(x).errorMessage,name:"text_block_name",onBlur:e.unref(x).validate,"onUpdate:modelValue":e.unref(x).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(C),"field-names":e.unref(m),items:e.unref(s),"node-type":"json_to_xml","onAdd:field":S,"onChange:input":e.unref(u),"onChange:inputs":e.unref(c),"onRemove:field":P,"onRename:field":F},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),ux=e.defineComponent({__name:"NodeFormJwtDecode",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("jwt_decode"),{formData:a,setName:i,inputOptions:r,setInputs:l,setInput:s,inputsFieldNames:c,nameValidator:u,fieldNameValidator:f}=St(t.nodeId,()=>n.value.getValue());return(d,p)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(a),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(a).name,validate:e.unref(u),onUpdate:e.unref(i)},null,8,["name","validate","onUpdate"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(f),"field-names":e.unref(c),items:e.unref(r),"node-type":"jwt_decode","onChange:input":e.unref(s),"onChange:inputs":e.unref(l)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),px=e.defineComponent({__name:"NodeFormJwtSign",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("jwt_sign"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>{const E={...n.value.getValue()};return(!E.static_claims||Object.keys(E.static_claims).length===0)&&delete E.static_claims,E}),{createFieldHandler:g,validateAll:y}=rn({validationConfig:{algorithm:Yt({fieldName:"Algorithm"}),expires_in:Zn("integer",{fieldName:"Expires in"}),not_before:Zn("integer",{fieldName:"Not before"}),key_input:Yt({fieldName:"Signing key input"})},getValidationData:()=>{var E;return{algorithm:i.value.algorithm,expires_in:i.value.expires_in,not_before:i.value.not_before,key_input:(E=i.value.inputs)==null?void 0:E.key}},toggleNodeValid:p}),C=g("algorithm",()=>l("algorithm")),b=g("expires_in",()=>l("expires_in")),h=g("not_before",()=>l("not_before"));return e.watch(()=>{var E;return(E=i.value.inputs)==null?void 0:E.key},()=>{y()}),(E,k)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ct,{"enable-filtering":"",name:"algorithm",onUpdate:e.unref(C).update},null,8,["onUpdate"]),e.createVNode(qt,{error:e.unref(b).error,"error-message":e.unref(b).errorMessage,name:"expires_in",onBlur:e.unref(b).validate,"onUpdate:modelValue":e.unref(b).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(qt,{error:e.unref(h).error,"error-message":e.unref(h).errorMessage,name:"not_before",onBlur:e.unref(h).validate,"onUpdate:modelValue":e.unref(h).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Ze,{name:"kid","onUpdate:modelValue":k[0]||(k[0]=_=>e.unref(l)("kid"))}),e.createVNode(Ze,{name:"typ","onUpdate:modelValue":k[1]||(k[1]=_=>e.unref(l)("typ"))}),e.createVNode(Qo,{label:e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.jwt.static_claims.label"),name:"static_claims",onChange:k[2]||(k[2]=_=>e.unref(l)("static_claims"))},null,8,["label"]),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"jwt_sign","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),fx=e.defineComponent({__name:"NodeFormJwtVerify",props:{nodeId:{}},setup(t){const n=e.useTemplateRef("form"),o=At("jwt_verify"),{i18n:{t:a}}=De(),{formData:i,setName:r,setConfig:l,inputOptions:s,setInputs:c,setInput:u,inputsFieldNames:f,nameValidator:d,toggleNodeValid:p,fieldNameValidator:m}=St(t.nodeId,()=>n.value.getValue()),{createFieldHandler:g,validateAll:y}=rn({validationConfig:{leeway:Zn("integer",{fieldName:"Leeway"}),token_input:Yt({fieldName:"JWT token input"}),verification_key_input:Yt({fieldName:"Verification key input"})},getValidationData:()=>{var b,h;return{leeway:i.value.leeway,token_input:i.value.input??((b=i.value.inputs)==null?void 0:b.token),verification_key_input:(h=i.value.inputs)==null?void 0:h.key}},toggleNodeValid:p}),C=g("leeway",()=>l("leeway"));return e.watch(()=>{var b,h;return[i.value.input,(b=i.value.inputs)==null?void 0:b.token,(h=i.value.inputs)==null?void 0:h.key]},()=>{y()}),(b,h)=>(e.openBlock(),e.createBlock(mt,{ref:"form",data:e.unref(i),schema:e.unref(o)},{default:e.withCtx(()=>[e.createVNode(Ft,{name:e.unref(i).name,validate:e.unref(d),onUpdate:e.unref(r)},null,8,["name","validate","onUpdate"]),e.createVNode(e.unref(Oe.KLabel),{class:"dk-node-configuration-label"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.free-form.datakit.flow_editor.node_properties.configuration")),1)]),_:1}),e.createVNode(Ct,{"enable-filtering":"",multiple:"",name:"allowed_algorithms",onUpdate:h[0]||(h[0]=E=>e.unref(l)("allowed_algorithms"))}),e.createVNode(en,{name:"issuers",onAdd:h[2]||(h[2]=E=>e.unref(l)("issuers")),onRemove:h[3]||(h[3]=E=>e.unref(l)("issuers"))},{item:e.withCtx(({fieldName:E,autofocus:k})=>[e.createVNode(Ze,{autofocus:k,name:E,"onUpdate:modelValue":h[1]||(h[1]=_=>e.unref(l)("issuers"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(en,{name:"audiences",onAdd:h[5]||(h[5]=E=>e.unref(l)("audiences")),onRemove:h[6]||(h[6]=E=>e.unref(l)("audiences"))},{item:e.withCtx(({fieldName:E,autofocus:k})=>[e.createVNode(Ze,{autofocus:k,name:E,"onUpdate:modelValue":h[4]||(h[4]=_=>e.unref(l)("audiences"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(en,{name:"required_claims",onAdd:h[8]||(h[8]=E=>e.unref(l)("required_claims")),onRemove:h[9]||(h[9]=E=>e.unref(l)("required_claims"))},{item:e.withCtx(({fieldName:E,autofocus:k})=>[e.createVNode(Ze,{autofocus:k,name:E,"onUpdate:modelValue":h[7]||(h[7]=_=>e.unref(l)("required_claims"))},null,8,["autofocus","name"])]),_:1}),e.createVNode(qt,{error:e.unref(C).error,"error-message":e.unref(C).errorMessage,name:"leeway",onBlur:e.unref(C).validate,"onUpdate:modelValue":e.unref(C).update},null,8,["error","error-message","onBlur","onUpdate:modelValue"]),e.createVNode(Qt,{name:"validate_exp","onUpdate:modelValue":h[10]||(h[10]=E=>e.unref(l)("validate_exp"))}),e.createVNode(Qt,{name:"validate_nbf","onUpdate:modelValue":h[11]||(h[11]=E=>e.unref(l)("validate_nbf"))}),e.createVNode(jt),e.createVNode(It,{"field-name-validator":e.unref(m),"field-names":e.unref(f),items:e.unref(s),"node-type":"jwt_verify","onChange:input":e.unref(u),"onChange:inputs":e.unref(c)},null,8,["field-name-validator","field-names","items","onChange:input","onChange:inputs"])]),_:1},8,["data","schema"]))}}),mx=["innerHTML"],gx={key:1,class:"branch-note"},hx={class:"branch-label"},yx={class:"branch-text"},_x=e.defineComponent({__name:"NodePropertiesPanel",props:{maxWidth:{default:`${Vc}px`},offsetTop:{default:`${gC}px`},visible:{type:Boolean},nodeId:{}},emits:["close"],setup(t){const{t:n}=it.createI18n("en-us",ct),{getNodeById:o,branchGroups:a}=tt(),i=e.computed(()=>t.nodeId&&o(t.nodeId)),r=e.computed(()=>{if(t.nodeId)return a.findMembership(t.nodeId)}),l=e.computed(()=>{if(!r.value)return"";const u=o(r.value.ownerId);return u?`${u.name}.${r.value.branch}`:""});function s(){t.nodeId&&a.removeMember(t.nodeId)}const c=e.computed(()=>{var u;switch((u=i.value)==null?void 0:u.type){case"call":return zN;case"service_request":return HN;case"response":return WN;case"jq":return YN;case"static":return QN;case"property":return rx;case"exit":return ax;case"branch":return lx;case"cache":return sx;case"xml_to_json":return cx;case"json_to_xml":return dx;case"jwt_decode":return ux;case"jwt_sign":return px;case"jwt_verify":return fx;default:return null}});return(u,f)=>(e.openBlock(),e.createBlock(e.unref(Oe.KSlideout),{class:"dk-node-properties-panel","close-on-blur":!1,"has-overlay":!1,"max-width":t.maxWidth,"offset-top":t.offsetTop,visible:t.visible,"z-index":e.unref(mC),onClose:f[0]||(f[0]=d=>u.$emit("close"))},e.createSlots({default:e.withCtx(()=>[i.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"dk-node-properties-panel-desc",innerHTML:e.unref(ht)(i.value.type)},null,8,mx)):e.createCommentVNode("",!0),r.value?(e.openBlock(),e.createElementBlock("div",gx,[e.createElementVNode("span",hx,[e.createVNode(e.unref(me.ArrowSplitIcon),{color:e.unref(Dn),size:e.unref(po)},null,8,["color","size"]),e.createElementVNode("span",yx,e.toDisplayString(l.value),1)]),e.createVNode(e.unref(Oe.KTooltip),{placement:"top",text:e.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch")},{default:e.withCtx(()=>[e.createVNode(e.unref(Oe.KButton),{appearance:"none","aria-label":e.unref(n)("plugins.free-form.datakit.flow_editor.actions.remove_from_branch"),class:"remove-branch",icon:"",size:"small",onClick:s},{default:e.withCtx(()=>[e.createVNode(e.unref(me.TrashIcon))]),_:1},8,["aria-label"])]),_:1},8,["text"])])):e.createCommentVNode("",!0),c.value?(e.openBlock(),e.createBlock(e.unref(c),{key:t.nodeId,class:"dk-node-properties-panel-form","node-id":t.nodeId},null,8,["node-id"])):e.createCommentVNode("",!0)]),_:2},[i.value?{name:"title",fn:e.withCtx(()=>[e.createVNode(Uc,{type:i.value.type},null,8,["type"])]),key:"0"}:void 0]),1032,["max-width","offset-top","visible","z-index"]))}}),bx=_e(_x,[["__scopeId","data-v-0a5474dd"]]),kx={class:"dk-editor-content"},wx={class:"main"},Cx=_e(e.defineComponent({__name:"EditorContent",setup(t){const{propertiesPanelOpen:n,selectedNode:o}=tt();function a(){n.value=!1}e.watch(o,r=>{r||a()});const i=e.ref(!1);return e.onMounted(()=>{i.value=!0}),(r,l)=>{var s;return e.openBlock(),e.createElementBlock("div",kx,[e.createVNode(e.unref(A0)),e.createElementVNode("div",wx,[e.createVNode(qE)]),e.createVNode(bx,{"node-id":(s=e.unref(o))==null?void 0:s.id,visible:e.unref(n),onClose:a},null,8,["node-id","visible"])])}}}),[["__scopeId","data-v-a844d534"]]),Ex={key:0,class:"dk-editor-modal"},Nx=_e(e.defineComponent({__name:"EditorModal",props:{open:{type:Boolean},openModifiers:{}},emits:["update:open"],setup(t){e.useCssVars(s=>({f3c2056a:`${e.unref(fC)}px`,v2871ab07:`${e.unref(Oc)}px`}));const n=e.useModel(t,"open"),o=e.ref(!1),a=e.useTemplateRef("confirm-modal"),{clear:i}=tt();ZC(async(...s)=>{o.value=!0;const c=await a.value.open(...s);return o.value=!1,c});const r=Xe.useScrollLock(document);e.watch(n,s=>{r.value=!!s,s||i()},{immediate:!0});function l(){n.value=!1}return(s,c)=>n.value?(e.openBlock(),e.createElementBlock("div",Ex,[e.createVNode(DE,{class:"nav",onBack:l}),e.createVNode(Cx,{ref:"content",class:"content",tabindex:"0"},null,512),e.createVNode(RE,{ref:"confirm-modal"},null,512)])):e.createCommentVNode("",!0)}}),[["__scopeId","data-v-88f0348c"]]),xx={class:"dk-flow-editor"},Sx={class:"flow-panels-container"},Ax={class:"overlay"},Ix=_e(e.defineComponent({__name:"FlowEditor",props:{isEditing:{type:Boolean}},emits:["change","error"],setup(t,{emit:n}){const{t:o}=it.createI18n("en-us",ct),{formData:a}=We(),i=n;function r(c,u,f,d){const p={...a.config,nodes:c};f!==void 0&&(p.resources=f);const m={...a.__ui_data,...u};a.config=p,a.__ui_data=m,d!=null?a.partials=[{id:d}]:a.partials&&(a.partials=null),i("change",p,m)}const{modalOpen:l,setPendingFitView:s}=Ic(a,{onChange:r,isEditing:t.isEditing});return e.watch(l,()=>{s(!0)},{flush:"post"}),sC({enabled:l}),(c,u)=>{const f=e.resolveComponent("KButton");return e.openBlock(),e.createElementBlock("div",xx,[e.createElementVNode("div",Sx,[e.createVNode(Ha,{inactive:e.unref(l),mode:"preview"},null,8,["inactive"]),e.createElementVNode("div",Ax,[e.createVNode(f,{appearance:"secondary",class:"button-open-editor",onClick:u[0]||(u[0]=d=>l.value=!0)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(o)("plugins.free-form.datakit.flow_editor.cta"))+" ",1),e.createVNode(e.unref(me.ExpandIcon))]),_:1})])]),e.createVNode(Nx,{open:e.unref(l),"onUpdate:open":u[1]||(u[1]=d=>e.isRef(l)?l.value=d:null)},null,8,["open"])])}}}),[["__scopeId","data-v-ff834f32"]]),Px=["innerHTML"],Tx={class:"dk-option-label"},Ox=["innerHTML"],Vx=_e(e.defineComponent({__name:"DatakitForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const{t:n}=it.createI18n("en-us",ct),o=t,a=e.inject(Le.FORMS_CONFIG),i=e.ref(!1);e.onMounted(()=>{i.value=!!document.querySelector("#plugin-form-page-actions")});const{editorMode:r}=pr(),l=e.computed(()=>a.app!=="konnect"||u.value===!1?"code":r.value),s=e.computed(()=>a.app==="kongManager"?"code":l.value==="flow"?"form":"code"),c={flow:me.DesignIcon,code:me.CodeblockIcon},u=e.ref(!0),f=e.ref(""),d=e.computed(()=>{const k=[{label:n("plugins.free-form.datakit.flow_editor.mode"),value:"flow"},{label:n("plugins.free-form.datakit.code_editor.mode"),value:"code"}];return k[0].disabled=!u.value,k}),p=e.computed(()=>{switch(l.value){case"code":return n("plugins.free-form.datakit.description_code");case"flow":return n("plugins.free-form.datakit.description_flow");default:return""}}),m=e.computed(()=>u.value?"":n("plugins.free-form.datakit.flow_editor.disabled_tooltip",{reason:f.value,code:k=>`<code>${_h(k)}</code>`}));e.watch(l,()=>{var k;(k=o.onValidityChange)==null||k.call(o,{model:"config",valid:!0})});function g(){var k;(k=o.onValidityChange)==null||k.call(o,{model:"config",valid:!0})}function y(){g()}function C(k){return k.map(_=>typeof _=="number"?`[${_}]`:k.length&&typeof _=="string"&&_.includes(".")?`["${_}"]`:`.${_}`).join("").replace(/^\./,"")}function b(k){return k.issues.map(_=>`${C(_.path)} - ${_.message}`).join("; ")}function h(k){if(g(),a.app!=="konnect")return;const _=k==null?void 0:k.config,{success:w,error:x}=ld.safeParse(_);f.value=w||!x?"":b(x),u.value=w}function E(k){var _;f.value=k,u.value=!1,(_=o.onValidityChange)==null||_.call(o,{model:"config",valid:!1,error:k})}return(k,_)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(a).app==="konnect"?(e.openBlock(),e.createBlock(e.Teleport,{key:0,disabled:!i.value,to:"#plugin-form-page-actions"},[e.createVNode(e.unref(Oe.KSegmentedControl),{"data-testid":"datakit-editor-mode-switcher","model-value":l.value,options:d.value,"onUpdate:modelValue":_[0]||(_[0]=w=>r.value=w)},{"option-label":e.withCtx(({option:w})=>[e.createVNode(e.unref(Oe.KTooltip),{disabled:u.value||w.value!=="flow"},{content:e.withCtx(()=>[e.createElementVNode("div",{innerHTML:m.value},null,8,Px)]),default:e.withCtx(()=>[e.createElementVNode("div",Tx,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(c[w.value]))),e.createTextVNode(" "+e.toDisplayString(w.label),1)])]),_:2},1032,["disabled"])]),_:1},8,["model-value","options"])],8,["disabled"])):e.createCommentVNode("",!0),e.createVNode(Wt,e.mergeProps(o,{class:"dk-form","editor-mode":s.value}),{"code-editor":e.withCtx(()=>[e.createVNode(Rw,{class:"code-editor",editing:o.isEditing,onChange:h,onError:E},null,8,["editing"])]),"plugin-config-title":e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(n)("plugins.free-form.datakit.flow_editor.mode")),1)]),"plugin-config-description":e.withCtx(()=>[e.createElementVNode("span",{innerHTML:p.value},null,8,Ox)]),default:e.withCtx(()=>[l.value==="flow"?(e.openBlock(),e.createBlock(Ix,{key:0,"is-editing":o.isEditing,onChange:y},null,8,["is-editing"])):e.createCommentVNode("",!0)]),_:1},16,["editor-mode"])],64))}}),[["__scopeId","data-v-4a3b77e6"]]),pd=t=>{if(!(!t||typeof t!="object"))for(const[n,o]of Object.entries(t))typeof o=="string"&&(t[n]=o.split(/\s*,\s*/).filter(Boolean))},fd=t=>{if(!(!t||typeof t!="object"))for(const[n,o]of Object.entries(t))Array.isArray(o)&&(t[n]=o.join(", "))},Bx=e.defineComponent({__name:"AIMcpProxyForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);const{i18n:{t:a}}=je.useI18n();function i(){const s={},c=["service-id","route-id","consumer-id","consumer_group-id"];for(const u of c)if(n.formModel[u]){const f=u.split("-")[0];f&&(s[f]={id:n.formModel[u]})}return s}const r={hasValue:s=>!!s&&Object.keys(s).length>0,prepareFormData:s=>{var u,f;const c=Sn(s);return(f=(u=c.config)==null?void 0:u.tools)!=null&&f.length&&c.config.tools.forEach(d=>{fd(d.headers),fd(d.query)}),n.isEditing?c:{...c,...i()}}};function l(s,c){var f,d;const u=Sn(s);(d=(f=u.config)==null?void 0:f.tools)!=null&&d.length&&u.config.tools.forEach(p=>{pd(p.headers),pd(p.query)}),n.onFormChange(u,c)}return(s,c)=>(e.openBlock(),e.createBlock(Wt,e.mergeProps(n,{"form-config":r,"on-form-change":l}),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:u})=>u==="config.default_acl"},{default:e.withCtx(u=>[e.createVNode(en,e.mergeProps(u,{appearance:"tabs","item-label":(f,d)=>e.unref(a)("plugins.free-form.ai-mcp-proxy.default_acl_item_label",{index:d+1}),"sticky-tabs":""}),null,16,["item-label"])]),_:1},8,["match"]),e.createVNode(Gt,{match:({path:u})=>u==="config.tools"},{default:e.withCtx(u=>[e.createVNode(en,e.mergeProps(u,{appearance:"tabs","item-label":(f,d)=>e.unref(a)("plugins.free-form.ai-mcp-proxy.tool_item_label",{index:d+1}),"sticky-tabs":""}),null,16,["item-label"])]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(Et,{"as-child":"",name:"config","reset-label-path":"reset"})]),_:1},16))}}),Rx=e.defineComponent({__name:"UpstreamOauthForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();return e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(a,i)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:r})=>r==="config.behavior.idp_error_response_body_template"},{default:e.withCtx(r=>[e.createVNode(Ze,e.mergeProps(r,{multiline:"",rows:4}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),$x={"data-testid":"ff-identity-realms-field"},Fx=["innerHTML"],Lx=e.defineComponent({__name:"FreeFormAdapter",props:{name:{},label:{},labelAttributes:{},required:{type:Boolean},placeholder:{},resetLabelPath:{}},setup(t){const n=t,{error:o,value:a,path:i}=pt(e.toRef(n,"name"));if(o)throw o;const r=wt(i,n);return(l,s)=>{var u;const c=e.resolveComponent("KLabel");return e.openBlock(),e.createElementBlock("div",$x,[e.createVNode(c,e.mergeProps({class:"ff-array-field-label"},e.unref(r),{"data-testid":`ff-label-${e.unref(i)}`,"tooltip-attributes":e.unref(r).labelAttributes.tooltipAttributes}),e.createSlots({default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r).label)+" ",1)]),_:2},[(u=e.unref(r).labelAttributes)!=null&&u.info?{name:"tooltip",fn:e.withCtx(()=>[e.renderSlot(l.$slots,"tooltip",{},()=>[e.createElementVNode("div",{innerHTML:e.unref(r).labelAttributes.info},null,8,Fx)])]),key:"0"}:void 0]),1040,["data-testid","tooltip-attributes"]),e.createVNode(ui,{modelValue:e.unref(a),"onUpdate:modelValue":s[0]||(s[0]=f=>e.isRef(a)?a.value=f:null)},null,8,["modelValue"])])}}}),Dx={key:1,hidden:""},Mx=e.defineComponent({__name:"KeyAuthForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);const a=e.inject(Le.FORMS_CONFIG),i=e.computed(()=>(a==null?void 0:a.app)==="konnect");return(r,l)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:s})=>s==="config.identity_realms"},{default:e.withCtx(s=>[i.value?(e.openBlock(),e.createBlock(Lx,e.normalizeProps(e.mergeProps({key:0},s)),null,16)):(e.openBlock(),e.createElementBlock("span",Dx))]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),md=Object.freeze(Object.defineProperty({__proto__:null,AICustomGuardrailForm:iw,AIMcpProxyForm:Bx,CommonForm:e.defineComponent({__name:"CommonForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]);const a=e.inject(Ho.KM_2262_CODE_MODE,!1),{i18n:{t:i}}=je.useI18n(),r=Xe.useLocalStorage("plugin-editor-mode","form"),l=e.ref(a?r.value:"form"),s=[{label:i("plugins.free-form.editor_mode.visual"),value:"form"},{label:i("plugins.free-form.editor_mode.code"),value:"code"}];function c(u){l.value=u,r.value=u}return(u,f)=>{const d=e.resolveComponent("KSegmentedControl");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.unref(a)?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:"#plugin-form-page-actions"},[e.createVNode(d,{"data-testid":"plugin-editor-mode-switcher","model-value":l.value,options:s,"onUpdate:modelValue":c},null,8,["model-value"])])):e.createCommentVNode("",!0),e.createVNode(Wt,e.mergeProps(n,{"editor-mode":l.value}),{default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16,["editor-mode"])],64)}}}),DatakitForm:Vx,ExitTransformerForm:lw,KeyAuthForm:Mx,LogForm:e.defineComponent({__name:"LogForm",props:{generalInfoTitle:{},generalInfoDescription:{},pluginConfigTitle:{},pluginConfigDescription:{},schema:{},formSchema:{},model:{},formModel:{},isEditing:{type:Boolean},onFormChange:{type:Function},onValidityChange:{type:Function},editorMode:{},formConfig:{},renderRules:{},pluginName:{}},setup(t){const n=t,o=e.useSlots();return e.provide(Le.AUTOFILL_SLOT,o==null?void 0:o[Le.AUTOFILL_SLOT_NAME]),(a,i)=>(e.openBlock(),e.createBlock(Wt,e.normalizeProps(e.guardReactiveProps(n)),{"field-renderers":e.withCtx(()=>[e.createVNode(Gt,{match:({path:r})=>r==="config.custom_fields_by_lua"},{default:e.withCtx(r=>[e.createVNode(Qo,e.mergeProps(r,{appearance:{string:{multiline:!0}}}),null,16)]),_:1},8,["match"])]),default:e.withCtx(()=>[e.createVNode(jn)]),_:1},16))}}),RequestCalloutForm:pw,ServiceProtectionForm:Tw,UpstreamOauthForm:Rx},Symbol.toStringTag,{value:"Module"}));function jx(t){if(t.length===0)return"";if(t.length===1){const i=kt(t[0]);return et(...i.slice(0,-1))}const n=t.map(i=>kt(i)),o=Math.min(...n.map(i=>i.length)),a=[];for(let i=0;i<o-1;i++){const r=n[0][i];if(n.every(l=>l[i]===r))a.push(r);else break}return et(...a)}function Xa(t){return"at_least_one_of"in t?t.at_least_one_of:"mutually_required"in t?t.mutually_required:"mutually_exclusive"in t?t.mutually_exclusive:null}function Kx(t,n){if(!n)return t;const o=n+Yo;return t.map(a=>a.startsWith(o)?a.slice(o.length):a)}function vx(t,n){const o=Xa(t),a=Kx(o,n);return"at_least_one_of"in t?{at_least_one_of:a}:"mutually_required"in t?{mutually_required:a}:{mutually_exclusive:a}}function Ux(t){const n=[],o=new Map;for(const a of t){const i=Xa(a);if(!i){n.push(a);continue}const r=jx(i);if(!r){n.push(a);continue}const l=vx(a,r);o.has(r)||o.set(r,[]),o.get(r).push(l)}return{keep:n,move:o}}function qx(t,n,o){const a=kt(n);let i=t;for(const r of a){const l=i.fields.find(c=>Object.keys(c)[0]===r);if(!l)return;const s=l[r];if(s.type!=="record")return;i=s}i.entity_checks=[...i.entity_checks||[],...o]}function gd(t){var n;if((n=t.entity_checks)!=null&&n.length){const{keep:o,move:a}=Ux(t.entity_checks);t.entity_checks=o.length?o:void 0;for(const[i,r]of a)qx(t,i,r)}for(const o of t.fields){const a=Object.values(o)[0];a.type==="record"&&gd(a)}}function Gx(t){const n=JSON.parse(JSON.stringify(t)),o={fields:n.fields};return gd(o),n.fields=o.fields,n}function zx(t,n){const o=Pt[t];if(!o||!o.fieldRules)return n;const a=Hx(o.fieldRules),i={...n};return i.fields=i.fields.map(r=>{if(Object.keys(r)[0]==="config"){const s=r.config.entity_checks||[],c=d=>{const m=[...Xa(d)??[]].slice().sort();return`${Object.keys(d)[0]}:${m.join(",")}`},u=new Set(s.map(c)),f=a.filter(d=>{const p=c(d);return u.has(p)?!1:(u.add(p),!0)});return{config:{...r.config,entity_checks:[...s,...f]}}}return r}),i}function Hx(t){const n=[],o=a=>a.startsWith("config.")?a.substring(7):a;return t.atLeastOneOf&&t.atLeastOneOf.forEach(a=>{n.push({at_least_one_of:a.map(o)})}),t.onlyOneOf&&t.onlyOneOf.forEach(a=>{n.push({mutually_exclusive:a.map(o)})}),t.mutuallyRequired&&t.mutuallyRequired.forEach(a=>{n.push({mutually_required:a.map(o)})}),t.onlyOneOfMutuallyRequired&&t.onlyOneOfMutuallyRequired.forEach(a=>{if(a.forEach(i=>{n.push({mutually_required:i.map(o)})}),a.length>1)for(let i=0;i<a.length;i++)for(let r=i+1;r<a.length;r++){const l=a[i].map(o),s=a[r].map(o);l.forEach(c=>{s.forEach(u=>{n.push({mutually_exclusive:[c,u]})})})}}),n}const Wx={class:"kong-ui-entities-plugin-form"},Yx={key:1,class:"entity-form"},Jx={class:"plugin-config-empty-state"},Xx=_e(e.defineComponent({__name:"PluginEntityForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},entityMap:{type:Object,default:()=>({})},record:{type:Object,default:()=>({})},schema:{type:Object,default:()=>({})},rawSchema:{type:Object,default:()=>({})},editing:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},enableRedisPartial:{type:Boolean,default:!1},engine:{type:String,required:!1,default:void 0}},emits:["loading","model-updated","showNewPartialModal","globalAction","validity-change"],setup(t,{emit:n}){var ee,oe;const o=Object.keys(Le.sharedForms),a=Object.keys(md);if(new Set([...o,...a]).size!==o.length+a.length)throw new Error("Duplicate form component names found in `sharedForms` and `freeForm`");const i=n,r=t,l=e.inject(Ho.KM_2306_CONDITION_FIELD_314,!1),{axiosInstance:s}=le.useAxios((ee=r.config)==null?void 0:ee.axiosRequestConfig),{parseSchema:c}=je.useSchemas({entityId:((oe=r.entityMap.focusedEntity)==null?void 0:oe.id)||void 0,credential:r.credential,enableRedisPartial:r.enableRedisPartial,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{convertToDotNotation:u,unFlattenObject:f,dismissField:d,isObjectEmpty:p,unsetNullForeignKey:m}=je.usePluginHelpers(),{shouldUseFreeForm:g,getFreeFormName:y}=je.useFreeFormResolver(),{objectsAreEqual:C}=le.useHelpers(),{i18n:{t:b}}=De(),h=Q=>r.config.app==="konnect"?Q.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"?Q.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:""):Q,E=(Q,te)=>{let ie=`${r.config.apiBaseUrl}${Je.form[r.config.app].entityGetOne}`;return ie=h(ie),ie=ie.replace(/{entity}/gi,Q),ie=ie.replace(/{id}/gi,te),ie},k=Q=>{let te=`${r.config.apiBaseUrl}${Je.form[r.config.app].entityGetAll}`;return te=h(te),te=te.replace(/{entity}/gi,Q),te},_=(Q,te,ie)=>{const re=E(Q,te);return s.get(re,ie)},w=(Q,te)=>{const ie=k(Q);return r.config.app==="konnect"?s.get(ie).then(re=>{const{data:{data:Ce}}=re;if(delete te.size,delete te.offset,Ce.length&&Object.keys(te).length===1){const pe=Object.keys(te)[0],Me=Ce.filter(ue=>ue[pe]?!!ue[pe].toLowerCase().includes(te[pe].toLowerCase()):!1);re.data.data=Me}return re}):s.get(ie,{params:te})},x=(Q,te,ie)=>{const re=k(Q);if(r.config.app==="konnect"){const{size:Ce,offset:pe,...Me}=te;if(Q==="consumer_groups")return s.get(re,{params:{size:1e3},signal:ie}).then(ye=>{const{data:{data:fe}}=ye;if(fe.length&&Object.keys(Me).length===1){const Se=Object.keys(Me)[0],we=fe.filter(H=>H[Se]?!!H[Se].toLowerCase().includes(Me[Se].toLowerCase()):!1);ye.data.data=we}return ye});const ue={size:Ce,offset:pe};for(const ye of Object.keys(Me))ue.filter={[ye]:{contains:Me[ye]}};return s.get(re,{params:ue,signal:ie})}return s.get(re,{params:te,signal:ie})},O=(Q,te=50)=>{const ie=k(Q);return s.get(ie,{params:{size:te}})};e.provide(Le.FORMS_API_KEY,{getOne:_,getAll:w,getAllV2:x,peek:O}),e.provide(Le.FORMS_CONFIG,r.config);const K=e.ref(""),I=e.ref(""),S=e.ref(null),P=e.ref({}),F=e.reactive({}),T=e.reactive({}),D=e.computed(()=>{var Q;return(Q=S.value)==null?void 0:Q.options}),U=e.computed(()=>{const Q=zx(T.name,r.rawSchema);return Gx(Q)}),q=e.ref(!1),L=e.ref(),V=(Q,te)=>{q.value=Q??"",L.value=te},R=Q=>{var te;(te=L.value)==null||te.call(L,Q),q.value=!1},A=Q=>{var ue,ye;const te={...r.schema},ie=T,re=F,Ce=Object.keys(ie),pe={};if(!p(P.value))for(let fe=0;fe<((ye=(ue=P.value)==null?void 0:ue.fields)==null?void 0:ye.length);fe++)te[P.value.fields[fe].model]=P.value.fields[fe];Le.customFields.forEach(fe=>{te[fe]&&(te[fe].fields.forEach(Se=>{Se.fields&&Se.fields.forEach(we=>{te[we.model]=we}),Se.model&&(te[Se.model]=Se)}),delete te[fe])}),Ce.forEach(fe=>{var Ie;if(!te[fe]){fe==="partials"&&(pe[fe]=ie[fe]);return}const Se=te[fe];let we=ie[fe];const H=re[fe],J=Array.isArray(we)?"array":typeof we,G=Se?Se.valueType:null,ce=Se?Se.valueArrayType:null,Z=Se?Se.transform:null;if(we==null&&H==null&&!Se.submitWhenNull)return;if(Se){if(G&&J!==G)switch(G){case"array":J==="string"&&we.length&&(we=we.split(",").map(ge=>{if(ge=ge.trim(),ce==="string")return String(ge);if(ce==="number")return Number(ge);if(ce==="boolean"){if(typeof ge=="string")return ge.toLowerCase()==="true"||ge==="1";if(typeof ge=="number")return ge===1}return ge})),(!we||!we.length)&&(we=Se.submitWhenNull?null:[]);break;case"number":Se.referenceable!==!0&&(we=Number(we));break;case"boolean":J==="string"&&(we=we.toLowerCase()==="true"||we==="1"),J==="number"&&(we=we===1);break;case"string":we=we==null?"":String(we);break}else G==="array"&&(!we||!we.length?we=Se.submitWhenNull?null:[]:((Ie=Se.inputAttributes)==null?void 0:Ie.type)==="number"&&(we=we.map(ge=>Number(ge))));if(Se.type==="array"&&Se.nestedFields){const ge=Pe=>{Object.keys(Pe).forEach($e=>{Pe[$e]&&typeof Pe[$e]=="object"&&!Array.isArray(Pe[$e])&&Pe[$e]!==null?ge(Pe[$e]):(Pe[$e]===void 0||Pe[$e]===null||typeof Pe[$e]=="number"&&isNaN(Pe[$e])||typeof Pe[$e]=="string"&&Pe[$e].trim().length===0)&&delete Pe[$e]})};we&&typeof we=="object"&&ge(we)}Se.type==="object-advanced"&&Se.fields&&we!==null&&(Object.entries(we).length===0?we=null:Object.keys(we).forEach(ge=>{Array.isArray(we[ge])||(we[ge]=we[ge].split(","))}))}let de=u(fe);if(Se.fieldNameHasDashes){const[ge,...Pe]=de.split(".").reverse();de=[ge.replace(/_/g,"-"),...Pe].reverse().join(".")}if(G==="object-expand"){let ge;[de,ge]=de.split(".");let Pe={};pe[de]&&(Pe=pe[de]),Pe[ge]=we,we=Pe}H!==void 0&&we===""&&we!==H?pe[de]=G==="object"?{}:null:Se.type==="checklist"&&we===""?pe[de]=[]:we!==""&&(pe[de]=we),pe[de]=Z?Z(we):pe[de],m(de,pe)});const Me=f(pe);if(I.value){if(Q&&Q.length)for(const fe of Q)delete Me[fe];Object.assign(Me,B.value)}return Me},v=(Q,te={})=>{d(T,te,Q,r.editing),i("model-updated",{model:T,originalModel:F,data:A()})},z=(Q,te)=>{var Ce;const ie={[te]:Q};typeof((Ce=r.schema[te])==null?void 0:Ce.modelTransformer)=="function"&&(ie[te]=r.schema[te].modelTransformer(Q));const re=Object.assign({},T,ie);Object.assign(T,re),i("model-updated",{model:T,originalModel:F,data:A()})},$=Q=>{i("validity-change",Q)},N=(Q,te)=>{Object.keys(Q).forEach(ie=>{var ue,ye;let re=te?`${te}-${ie}`:ie,Ce=r.schema[re];if(!Ce){const fe=te?`${te}-${ie.replace(/-/g,"_")}`:ie.replace(/-/g,"_");(ue=r.schema[fe])!=null&&ue.fieldNameHasDashes&&(re=fe,Ce=r.schema[re]),te&&((ye=r.schema[te])==null?void 0:ye.keyFromObject)===ie&&(re=te,Ce=r.schema[re])}const pe=Q[ie],Me=typeof pe;if(Ce&&Ce.type==="object-advanced"&&!pe){T[re]={},F[re]={};return}if(Array.isArray(pe)){T[re]=JSON.parse(JSON.stringify(pe)),F[re]=JSON.parse(JSON.stringify(pe));return}if(Me==="object"&&pe&&!pe.length)return N(pe,re);if(Me==="object"&&pe&&pe.length&&Ce.type==="input"){T[re]=pe.join(", "),F[re]=pe.join(", ");return}T[re]=pe,F[re]=pe}),i("model-updated",{model:T,originalModel:F,data:A()})},B=e.shallowRef(r.record),j=(Q,te)=>{B.value=Q;const ie={...T};for(const re of te||[])delete ie[re];i("model-updated",{model:{...ie,...Q},originalModel:F,data:A(te)})},W=e.ref(!0),X=()=>{var Q;if(r.record&&r.schema&&(N({enabled:r.record.enabled??!0,...r.record.instance_name&&{instance_name:r.record.instance_name||""},...l&&r.record.condition!=null&&{condition:r.record.condition},...r.record.protocols&&{protocols:r.record.protocols},...r.record.tags&&{tags:r.record.tags}}),r.credential?((r.record.consumer_id||r.record.consumer)&&N({consumer_id:r.record.consumer_id||r.record.consumer}),N(r.record)):r.record.config&&((r.record.consumer_id||r.record.consumer||r.record.service_id||r.record.service||r.record.route_id||r.record.route||r.record.consumer_group_id||r.record.consumer_group)&&N({service_id:r.record.service_id||r.record.service,route_id:r.record.route_id||r.record.route,consumer_id:r.record.consumer_id||r.record.consumer,consumer_group_id:r.record.consumer_group_id||r.record.consumer_group}),r.record.partials&&v("redis",{partials:r.record.partials}),I.value?j(r.record):N(r.record.config,"config"))),Object.keys(r.entityMap).length&&!r.entityMap.global&&r.schema){const te={};for(const ie in r.entityMap){const re=r.entityMap[ie].id,Ce=r.entityMap[ie].idField,pe=Ce==="consumer_group_id"?"consumer_group-id":JSON.parse(JSON.stringify(Ce).replace("_","-"));Object.prototype.hasOwnProperty.call(T,pe)&&(te[pe]=re)}N(te)}if((Q=r.entityMap.consumer)!=null&&Q.id&&r.schema&&r.credential){const te={};Object.prototype.hasOwnProperty.call(T,"consumer")&&(te.consumer=r.entityMap.consumer.id),N(te)}W.value=!1};return e.watch(W,Q=>{i("loading",Q)}),e.watch(()=>r.schema,(Q,te)=>{var re,Ce;if(C(Q||{},te||{}))return;const ie=c(Q,void 0,void 0,r.engine);Object.assign(T,ie.model),P.value={fields:(Ce=(re=P.value)==null?void 0:re.fields)==null?void 0:Ce.map(pe=>({...pe,disabled:pe.disabled||!1}))},Object.assign(F,JSON.parse(JSON.stringify(ie.model))),I.value=g(ie.model.name,r.engine)?y(ie.model.name):void 0,K.value=Le.getSharedFormName(ie.model.name),X()},{immediate:!0,deep:!0}),e.onBeforeMount(()=>{var Q,te;S.value=c(r.schema,void 0,void 0,r.engine),Object.assign(T,((Q=S.value)==null?void 0:Q.model)||{}),P.value=((te=S.value)==null?void 0:te.schema)||{},X()}),(Q,te)=>{var re,Ce;const ie=e.resolveComponent("KSkeleton");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Wx,[W.value?(e.openBlock(),e.createBlock(ie,{key:0,type:"form"})):T.id&&t.editing||!t.editing?(e.openBlock(),e.createElementBlock("div",Yx,[I.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(md[I.value]),{key:0,"form-model":T,"form-schema":P.value,"is-editing":t.editing,model:t.record,"on-form-change":j,"on-validity-change":$,"plugin-name":T.name,"render-rules":(re=e.unref(Pt)[T.name])==null?void 0:re.freeformRenderRules,schema:U.value,onGlobalAction:te[0]||(te[0]=(pe,Me)=>Q.$emit("globalAction",pe,Me))},e.createSlots({_:2},[t.enableVaultSecretPicker?{name:e.unref(Le.AUTOFILL_SLOT_NAME),fn:e.withCtx(pe=>[pe.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Qn.VaultSecretPickerProvider),e.mergeProps({key:0},pe,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["form-model","form-schema","is-editing","model","plugin-name","render-rules","schema"])):K.value?(e.openBlock(),e.createBlock(e.resolveDynamicComponent(e.unref(Le.sharedForms)[K.value]),{key:1,"enable-redis-partial":t.enableRedisPartial,"form-model":T,"form-options":D.value,"form-schema":P.value,"is-editing":t.editing,"on-model-updated":z,"on-partial-toggled":v,"show-new-partial-modal":pe=>Q.$emit("showNewPartialModal",pe)},e.createSlots({_:2},[t.enableVaultSecretPicker?{name:e.unref(Le.AUTOFILL_SLOT_NAME),fn:e.withCtx(pe=>[pe.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Qn.VaultSecretPickerProvider),e.mergeProps({key:0},pe,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"0"}:void 0]),1064,["enable-redis-partial","form-model","form-options","form-schema","is-editing","show-new-partial-modal"])):(e.openBlock(),e.createBlock(e.unref(Le.VueFormGenerator),{key:2,"enable-redis-partial":t.enableRedisPartial,"is-editing":t.editing,model:T,options:D.value,schema:P.value,onModelUpdated:z,onPartialToggled:v,onRefreshModel:A,onShowNewPartialModal:te[1]||(te[1]=pe=>Q.$emit("showNewPartialModal",pe))},e.createSlots({"plugin-config-empty-state":e.withCtx(()=>[e.createElementVNode("div",Jx,e.toDisplayString(e.unref(b)("plugins.form.grouping.plugin_configuration.empty")),1)]),_:2},[(Ce=e.unref(Pt)[T.name])!=null&&Ce.fieldRules&&(r.config.isNewOtelSchema||T.name!=="opentelemetry")?{name:"plugin-config-before-content",fn:e.withCtx(()=>[e.createVNode(sy,{rules:e.unref(Pt)[T.name].fieldRules},null,8,["rules"])]),key:"0"}:void 0,t.enableVaultSecretPicker?{name:e.unref(Le.AUTOFILL_SLOT_NAME),fn:e.withCtx(pe=>[pe.schema.referenceable?(e.openBlock(),e.createBlock(e.unref(Qn.VaultSecretPickerProvider),e.mergeProps({key:0},pe,{onOpen:V}),null,16)):e.createCommentVNode("",!0)]),key:"1"}:void 0]),1032,["enable-redis-partial","is-editing","model","options","schema"]))])):e.createCommentVNode("",!0)]),e.createVNode(e.unref(Qn.VaultSecretPicker),{config:r.config,setup:q.value,onCancel:te[2]||(te[2]=()=>q.value=!1),onProceed:R},null,8,["config","setup"])],64)}}}),[["__scopeId","data-v-e9621ebf"]]),Zx={key:1},Qx=e.defineComponent({__name:"PluginFormActionsWrapper",props:{teleportTarget:{type:String,default:""}},setup(t){return(n,o)=>t.teleportTarget?(e.openBlock(),e.createBlock(e.Teleport,{key:0,to:t.teleportTarget},[e.renderSlot(n.$slots,"default")],8,["to"])):(e.openBlock(),e.createElementBlock("div",Zx,[e.renderSlot(n.$slots,"default")]))}}),e1={key:0},t1={class:"plugin-form-actions"},n1=_e(e.defineComponent({__name:"PluginForm",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string")},pluginType:{type:String,required:!0},pluginId:{type:String,default:""},hideScopeSelection:{type:Boolean,default:!1},disableScopeSelection:{type:Boolean,default:!1},credential:{type:Boolean,default:!1},developer:{type:Boolean,default:!1},isWizardStep:{type:Boolean,default:!1},actionsTeleportTarget:{type:String,default:""},noCardWrapper:{type:Boolean,default:!1},hideViewConfigAction:{type:Boolean,default:!1},enableVaultSecretPicker:{type:Boolean,default:!1},schema:{type:Object,default:null},enableRedisPartial:{type:Boolean,default:!1},scopedEntitiesPermissions:{type:Object,default:null},engine:{type:String,required:!1,default:void 0}},emits:["cancel","error:fetch-schema","error","loading","update","model-updated","showNewPartialModal","globalAction"],setup(t,{emit:n}){var we;const o=e.inject(le.FEATURE_FLAGS.KM_1948_PLUGIN_FORM_LAYOUT,e.computed(()=>!1)),a=e.inject(Ho.KM_2306_CONDITION_FIELD_314,!1),i=n,r=t,l=hn.useRouter(),{i18n:{t:s}}=je.useI18n(),{customSchemas:c,typedefs:u}=je.useSchemas({app:r.config.app,credential:r.credential,experimentalRenders:r.config.app==="konnect"?r.config.experimentalRenders:void 0}),{formatPluginFieldLabel:f}=je.usePluginHelpers(),{shouldUseFreeForm:d}=je.useFreeFormResolver(),{getMessageFromError:p}=le.useErrors(),{capitalize:m}=le.useStringHelpers(),{objectsAreEqual:g}=le.useHelpers(),{axiosInstance:y}=le.useAxios((we=r.config)==null?void 0:we.axiosRequestConfig),C=e.ref(!1),b=e.computed(()=>!!r.pluginId),h=e.computed(()=>r.pluginId?le.EntityBaseFormType.Edit:le.EntityBaseFormType.Create),E=e.ref(void 0),k=e.ref(void 0),_=e.computed(()=>!!(r.credential&&r.config.entityId)),w=e.ref(void 0),x=e.ref({}),O=e.ref(),K=e.ref();e.provide(er,{redisType:O,redisPath:K,isEditing:b.value});const I=e.ref(!1),S=e.reactive({enabled:!0,protocols:[],tags:[]}),P=e.reactive({fields:{enabled:!0,protocols:[],tags:[]},isReadonly:!1,clientErrorMessage:"",serverErrorMessage:""}),F=e.ref([{title:s("view_configuration.json"),hash:"#json"},{title:s("view_configuration.yaml"),hash:"#yaml"}]);r.config.app==="konnect"&&F.value.splice(1,0,{title:s("view_configuration.terraform"),hash:"#terraform"}),(r.config.app==="kongManager"||r.config.enableDeckTab)&&F.value.push({title:s("view_configuration.deck"),hash:"#deck"});const T=e.ref(""),D=e.computed(()=>{var J;if(_.value){let G=Je.form[r.config.app].credential[h.value];return G=G.replace(/{resourceEndpoint}/gi,V.value),G}let H;return r.config.entityType&&r.config.entityId?H=Je.form[r.config.app].edit.forEntity.replace(/{entityType}/gi,r.config.entityType).replace(/{entityId}/gi,r.config.entityId):H=Je.form[r.config.app].edit.all,r.config.app==="konnect"&&((J=Pt[r.pluginType])!=null&&J.useUIData)?`${H}?__ui_data=true`:H}),U=()=>{C.value=!C.value},q=e.computed(()=>{var de,Ie,ge,Pe,$e,se,ae,st;const H=r.config.entityType==="consumers"&&r.config.entityId||((Ie=(de=w.value)==null?void 0:de.consumer)==null?void 0:Ie.id),J=r.config.entityType==="consumer_groups"&&r.config.entityId||((Pe=(ge=w.value)==null?void 0:ge.consumer_group)==null?void 0:Pe.id),G=r.config.entityType==="services"&&r.config.entityId||((se=($e=w.value)==null?void 0:$e.service)==null?void 0:se.id),ce=r.config.entityType==="routes"&&r.config.entityId||((st=(ae=w.value)==null?void 0:ae.route)==null?void 0:st.id);if(!(H||J||G||ce))return{global:{entity:Y.PluginScope.GLOBAL,entityEndpoint:"plugins"}};const Z={};return G&&(Z.service={entity:Y.PluginScope.SERVICE,entityEndpoint:"services",id:G,idField:_n.SERVICE}),ce&&(Z.route={entity:Y.PluginScope.ROUTE,entityEndpoint:"routes",id:ce,idField:_n.ROUTE}),H&&(Z.consumer={entity:Y.PluginScope.CONSUMER,entityEndpoint:"consumers",id:H,idField:_n.CONSUMER}),J&&(Z.consumer_group={entity:Y.PluginScope.CONSUMER_GROUP,entityEndpoint:"consumer_groups",id:J,idField:_n.CONSUMER_GROUP}),r.config.entityType&&(Z.focusedEntity={entity:Y.PluginScope[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()],entityEndpoint:r.config.entityType,id:r.config.entityId,idField:_n[r.config.entityType.substring(0,r.config.entityType.length-1).toUpperCase()]}),Z}),L=e.reactive({name:{default:r.pluginType,type:"input",inputType:"hidden",styleClasses:"d-none hidden-field",pinned:!0},enabled:{type:"switch",model:"enabled",label:s("plugins.form.fields.enabled.label"),textOn:s("plugins.form.fields.enabled.on_text"),textOff:s("plugins.form.fields.enabled.off_text"),styleClasses:"field-switch hide-label",default:!0,pinned:!0},selectionGroup:{type:r.hideScopeSelection&&(r.hideScopeSelection||h.value===le.EntityBaseFormType.Create&&r.config.entityId)?"foreign":"selectionGroup",disabled:r.disableScopeSelection,inputType:"hidden",styleClasses:"hide-label",fields:[{label:s("plugins.form.scoping.global.label"),description:s("plugins.form.scoping.global.help")}],pinned:!0},protocols:{id:"protocols",default:[],help:s("plugins.form.fields.protocols.help"),label:s("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:s("plugins.form.fields.instance_name.label"),inputType:"text",help:s("plugins.form.fields.instance_name.help")},tags:u.tags,...a?{condition:{default:"",type:"input",label:s("plugins.form.fields.condition.label"),inputType:"text",help:s("plugins.form.fields.condition.tooltip"),placeholder:s("plugins.form.fields.condition.placeholder")}}:{}}),V=e.computed(()=>{var G;const H=r.developer?"developers":"consumers",J=((G=Rn[r.pluginType])==null?void 0:G.endpoint)||"/plugins";return`${H}/${r.config.entityId}${r.developer?"/credentials":""}${J}`}),R=H=>{const J=Array.from(new Set(H.map(G=>typeof G)));return J.length>1?"string":J[0]},A=(H,J,G,ce)=>{var ge,Pe;let Z=J&&J.fields||[];const de=c[r.pluginType],Ie=(Pe=(ge=Rn[r.pluginType])==null?void 0:ge.schema)==null?void 0:Pe.fields;return Array.isArray(Z)&&(Z=Z.reduce(($e,se)=>{const ae=Object.keys(se)[0];return ae.match(/-/g)?$e[ae.replace(/-/g,"_")]={...se[ae],fieldNameHasDashes:!0}:$e[ae]=se[ae],$e},{})),Object.keys(Z).sort().forEach($e=>{var gn,an,dt,ne,Ee,be,ke;const se=Z[$e];se.type==="set"&&!(d(r.pluginType,r.engine)&&se.elements.one_of)&&(se.type="array");const ae=H?`${H}-${$e}`:`${$e}`;if((gn=de==null?void 0:de.fieldsToDelete)!=null&&gn.includes(ae)){Bl(G,ae);return}if(Object.prototype.hasOwnProperty.call(se,"overwrite")||se.hidden)return;if(se.type==="table")return A(ae,se.schema,G);if(se.fields)return ce&&se.type==="record"?(G[ae]={type:"object",model:$e,schema:{fields:Object.values(A(ae,se,{},!0))}},G):A(ae,se,G);if(G[ae]={id:ae,model:$e},G[ae].type=se.type==="boolean"?"checkbox":"input",G[ae].required=se.required,G[ae].referenceable=se.referenceable,ae.startsWith("config-"))if(!ce&&se.type==="array"&&(T.value=ae),ce&&T.value&&ae.startsWith(T.value)){const he=ae.slice(T.value.length+1);G[ae].label=he.split("-").map(f).join(".")}else G[ae].label=f(ae);if((H==="config"||H.startsWith("config-"))&&(an=Z[$e])!=null&&an.description&&(G[ae].help=So.marked.parse(Z[$e].description,{mangle:!1,headerIds:!1})),se.type==="map"){if(G[ae].type="object-advanced",G[ae].values=se.values,se.values.type==="array"){const{type:he}=se.values.elements||{};G[ae].schema={fields:[{schema:{fields:[{...ve,model:ae,valueArrayType:he==="integer"?"number":he||"string",inputAttributes:{...ve.inputAttributes,type:he==="integer"?"number":"text",inputMode:he==="integer"?"numeric":"text"}}]}}]}}else se.values.fields&&(G[ae].schema={fields:[{type:"object",model:"object",schema:{fields:se.values.fields.map(he=>{const Ae=Object.keys(he)[0];return{model:Ae,type:"input",label:m(Ae),placeholder:Ae,inputType:he[Ae].type}})}}]});return G}if(se.enum&&se.type==="array"&&(G[ae].type="checklist",G[ae].values=se.enum,G[ae].multi=!0,G[ae].multiSelect=!0),se.one_of&&se.type!=="array"&&(G[ae].type="select",G[ae].values=se.one_of,G[ae].selectOptions={noneSelectedText:s("plugins.form.no_selection")}),se.elements&&se.type==="array"){const he=se.elements;if(G[ae].referenceable=he.referenceable,G[ae].elements=he,["string","integer","number"].includes(he.type)&&!he.one_of){const{id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe}=G[ae],{inputAttributes:Qe,...ln}=JSON.parse(JSON.stringify(ve));Qe.type=he.type==="string"?"text":"number",G[ae]={id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe,inputAttributes:Qe,...ln}}else if(["string","integer","number"].includes(he.type)&&he.one_of){if(ce){const{id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe}=G[ae];G[ae]={id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe,...ry(he.one_of,se.default)}}}else if(he.type==="array"){const{id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe,elements:Qe}=G[ae],{inputAttributes:ln,...nt}=JSON.parse(JSON.stringify(ve));G[ae]={id:Ae,help:Be,label:Ne,hint:Re,values:Ve,referenceable:Ue,model:Fe,elements:Qe,inputAttributes:ln,...nt}}}if(se.hint&&(G[ae].hint=se.hint),de&&!de.overwriteDefault&&Object.keys(de).forEach(he=>{if(he===ae){const{help:Ae,label:Be,hint:Ne,values:Re,referenceable:Ve,elements:Ue}=G[ae],{help:Fe,...Qe}=de[he];G[ae]={help:Ae,label:Be,hint:Ne,values:Re,referenceable:Ve,elements:Ue,...Qe},typeof Fe=="string"&&(G[ae].help=So.marked.parse(Fe,{mangle:!1,headerIds:!1}))}}),se.type==="array"&&((dt=se.elements)==null?void 0:dt.type)==="record"&&Array.isArray(se.elements.fields)){let he={};for(const Be of se.elements.fields)he={...he,...Be};const Ae=(be=(Ee=(ne=G[ae])==null?void 0:ne.items)==null?void 0:Ee.schema)==null?void 0:be.fields;if(Array.isArray(Ae))for(const Be of G[ae].items.schema.fields){const Ne=(ke=he[Be.model])==null?void 0:ke.description;Be.help===void 0&&typeof Ne=="string"&&(Be.help=So.marked.parse(Ne,{mangle:!1,headerIds:!1}))}if(Ae||(G[ae].type="array",G[ae].newElementButtonLabelClasses="kong-form-new-element-button-label",G[ae].fieldClasses="array-card-container-wrapper",G[ae].itemContainerComponent="FieldArrayCardContainer",G[ae].items={type:"object",schema:{fields:Object.values(A(ae,se.elements,{},!0))}},G[ae].items.schema.fields.forEach(Be=>{var Ne,Re;for(const Ve of se.elements.fields){const Ue=Object.keys(Ve)[0],Fe=((Re=(Ne=Be.id)==null?void 0:Ne.split)==null?void 0:Re.call(Ne,"-"))??[];if(Fe[Fe.length-1]===Ue){Be.model=Ue,Be.label=f(Ue);break}}}),se.elements.type==="record"&&(G[ae].nestedFields=!0)),!G[ae].nestedFields)G[ae].items.default=()=>se.elements.fields.reduce((Be,Ne)=>{const Re=Object.keys(Ne)[0];return Be[Re]=Ne[Re].default,Be},{});else{const Be=(Ne,Re)=>{if(Ne.type==="object"){Ne.model&&(Re[Ne.model]={});for(const Ve of Ne.schema.fields)Be(Ve,Ne.model?Re[Ne.model]:Re)}else Ne.model&&(Re[Ne.model]=Ne.default)};G[ae].items.default=()=>{const Ne={};return Be(G[ae].items,Ne),Ne}}}if(_.value&&Ie){for(let he=0;he<Ie.length;he++)if(Ie[he][ae]){G[ae]={...G[ae],...Ie[he][ae]};break}}if(se.required&&se.type!=="boolean"&&(G[ae].required=!0,G[ae].selectOptions={hideNoneSelectedText:!0}),se.required&&se.type==="boolean"&&(G[ae].default=se.default??!1),se.default!=null&&typeof se.default!="object"&&se.default!=="function"&&(G[ae].default=se.default),G[ae].type==="input"){["string","number"].includes(typeof G[ae].default)&&r.config.app==="konnect"&&(G[ae].placeholder=`Default: ${G[ae].default===""?"<empty string>":G[ae].default}`);const{type:he}=se.elements||{};he&&(G[ae].valueArrayType=he==="integer"?"number":he),G[ae].inputType=se.type==="array"||se.type==="string"?se.encrypted?"password":"text":se.type}let st="string";se.enum?st=R(se.enum):se.type==="boolean"?st="boolean":se.type==="number"||se.type==="integer"?(st="number",G[ae].inputType="number"):se.type==="array"?(st="array",G[ae].default=se.default,se.len_min>0&&(G[ae].submitWhenNull=!0)):se.type==="foreign"?st="object":se.default&&Array.isArray(se.default)?(st="array",G[ae].valueArrayType=R(se.default)):se.default&&(st=typeof se.default),G[ae].valueType=st,se.fieldNameHasDashes&&(G[ae].fieldNameHasDashes=!0)}),G},v=()=>{var ae,st,gn,an,dt,ne,Ee,be,ke,he,Ae,Be;const H=((ae=Pt[r.pluginType])==null?void 0:ae.scope.includes(Y.PluginScope.SERVICE))??!0,J=((st=Pt[r.pluginType])==null?void 0:st.scope.includes(Y.PluginScope.ROUTE))??!0,G=((gn=Pt[r.pluginType])==null?void 0:gn.scope.includes(Y.PluginScope.CONSUMER))??!0,ce=r.config.disableConsumerGroupScope?!1:((an=Pt[r.pluginType])==null?void 0:an.scope.includes(Y.PluginScope.CONSUMER_GROUP))??!0,Z=r.config.entityType==="consumers"&&!!r.config.entityId||!!((ne=(dt=w.value)==null?void 0:dt.consumer)!=null&&ne.id),de=r.config.entityType==="consumer_groups"&&!!r.config.entityId||!!((be=(Ee=w.value)==null?void 0:Ee.consumer_group)!=null&&be.id),Ie=r.config.entityType==="services"&&!!r.config.entityId||!!((he=(ke=w.value)==null?void 0:ke.service)!=null&&he.id),ge=r.config.entityType==="routes"&&!!r.config.entityId||!!((Be=(Ae=w.value)==null?void 0:Ae.route)!=null&&Be.id),Pe=[],$e=(Ne,Re,Ve)=>Ne?s("plugins.form.disable_source_scope_change",{scope:Ve}):Re?s("plugins.form.disable_data_retrieving",{scope:Ve}):"",se=Ne=>{var Re,Ve;return((Ve=(Re=r.scopedEntitiesPermissions)==null?void 0:Re[Ne])==null?void 0:Ve.canRetrieve)===!1};if(H){const Ne=se("service"),Re="services",Ve=Ie&&r.disableScopeSelection;Pe.push({id:"service-id",model:"service-id",label:s("plugins.form.scoping.gateway_service.label"),placeholder:s("plugins.form.scoping.placeholder"),type:"AutoSuggest",labelField:"name",entity:Re,inputValues:{fields:["name","id"]},help:s("plugins.form.scoping.gateway_service.help"),disabled:Ve||Ne,disabledTooltip:$e(Ve,Ne,Re)})}if(J){const Ne=se("route"),Re="routes",Ve=ge&&r.disableScopeSelection;Pe.push({id:"route-id",model:"route-id",label:s("plugins.form.scoping.route.label"),placeholder:s("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Re,labelField:"name",inputValues:{fields:["name","id"],primaryField:"id"},help:s("plugins.form.scoping.route.help"),disabled:Ve||Ne,disabledTooltip:$e(Ve,Ne,Re)})}if(G){const Ne=se("consumer"),Re="consumers",Ve=Z&&r.disableScopeSelection;Pe.push({model:"consumer-id",label:s("plugins.form.scoping.consumer.label"),placeholder:s("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Re,labelField:"username",inputValues:{fields:["username","custom_id","id"],primaryField:"username"},help:s("plugins.form.scoping.consumer.help"),disabled:Ve||Ne,disabledTooltip:$e(Ve,Ne,Re)})}if(ce){const Ne=se("consumer_group"),Re="consumer_groups",Ve=de&&r.disableScopeSelection;Pe.push({model:"consumer_group-id",label:s("plugins.form.scoping.consumer_group.label"),placeholder:s("plugins.form.scoping.placeholder"),type:"AutoSuggest",entity:Re,entityDataKey:"consumer_group",labelField:"name",inputValues:{fields:["name","id"],primaryField:"name"},help:s("plugins.form.scoping.consumer_group.help"),disabled:Ve||Ne,disabledTooltip:$e(Ve,Ne,Re)})}if(Pe.length){const Ne=[...H?["service"]:[],...J?["route"]:[],...G?["consumer"]:[],...ce?["consumer_group"]:[]],Ve=Ne.splice(Ne.length-2,2).map(Fe=>s(Fe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Fe}.plural`)).join(`${Ne.length>0?",":""} and/or `),Ue=["Specific",[...Ne.length>0?[Ne.map(Fe=>s(Fe==="service"?"plugins.form.scoping.gateway_service.plural":`plugins.form.scoping.${Fe}.plural`)).join(", ")]:[],Ve].join(", ")].join(" ");L.selectionGroup.fields.push({label:s("plugins.form.scoping.label"),description:Ue,fields:[]}),L.selectionGroup.fields[1].fields=Pe}c[r.pluginType]&&c[r.pluginType].overwriteDefault&&Object.hasOwnProperty.call(c[r.pluginType],"formSchema")&&Object.assign(L,c[r.pluginType].formSchema)},z=e.computed(()=>!g(P.fields,S,!0)),$=e.computed(()=>!fe.value&&!I.value&&(h.value===le.EntityBaseFormType.Create||z.value)),N=e.ref(!1),B=e.ref(),j=H=>{r.credential&&H.password&&(H.password=""),P.fields.id=(H==null?void 0:H.id)||void 0,B.value=H==null?void 0:H.ordering,Object.assign(S,P.fields),w.value=H,N.value=!0},W=e.ref({}),X=H=>{var J;P.fields=H.model,P.fields.id=((J=w.value)==null?void 0:J.id)||void 0,Object.assign(S,H.originalModel),W.value=H.data,r.isWizardStep&&i("model-updated",{model:P.fields,data:H.data,resourceEndpoint:V.value})},ee=e.ref(new Map),oe=e.computed(()=>[P.clientErrorMessage,P.serverErrorMessage].filter(Boolean).join("; ")),Q=H=>{H.valid?ee.value.delete(H.model):ee.value.set(H.model,H.error),P.clientErrorMessage=[...ee.value.entries()].map(([J,G])=>`${J}: ${typeof G=="string"?G:p(G)}`).join("; "),P.clientErrorMessage&&(P.serverErrorMessage="")};e.watch([q,N],(H,J)=>{const G=H[0]!==J[0],ce=H[1],Z=J[1];if(!_.value&&h.value===le.EntityBaseFormType.Edit&&(G||ce&&ce!==Z)){const de=A("config",x.value,L);re.value&&(de._isCustomPlugin=!0),O.value&&(de._supported_redis_partial_type=O.value),k.value=de}},{deep:!0});const te=()=>{r.config.cancelRoute?l.push(r.config.cancelRoute):i("cancel")},ie=e.computed(()=>{const H=r.config.entityType&&r.config.entityId&&!r.developer,J=_.value?Je.form[r.config.app].credential[h.value]:Je.form[r.config.app][h.value][H?"forEntity":"all"];let G=`${r.config.apiBaseUrl}${J}`;return r.config.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),G=G.replace(/{resourceEndpoint}/gi,V.value),G=G.replace(/{id}/gi,r.pluginId),G=G.replace(/{entityType}/gi,r.config.entityType||""),G=G.replace(/{entityId}/gi,r.config.entityId||""),G}),re=e.computed(()=>!Object.keys(Pt).includes(r.pluginType)),Ce=e.computed(()=>{const H=W.value;if(_.value){for(const J in Y.PluginScope){const G=Y.PluginScope[J];H[G]&&!H[G].id&&(H[G]={id:r.config.entityId})}delete H.created_at}return W.value.partials&&K.value&&Bl(H,K.value),H}),pe=e.computed(()=>{const{__ui_data:H,...J}={...Ce.value};return J}),Me=async()=>{if(!P.clientErrorMessage&&!r.isWizardStep)try{P.isReadonly=!0;let H;const J=JSON.parse(JSON.stringify(Ce.value)),G=c[r.pluginType];typeof(G==null?void 0:G.shamefullyTransformPayload)=="function"&&G.shamefullyTransformPayload({originalModel:S,model:P.fields,payload:J,schema:k.value}),h.value==="create"?H=await y.post(ie.value,J):h.value==="edit"&&(H=r.config.app==="konnect"||O.value&&J.partials?await y.put(ie.value,Object.assign({ordering:B.value},J)):await y.patch(ie.value,J)),Object.assign(S,P.fields),i("update",H==null?void 0:H.data)}catch(H){P.serverErrorMessage=p(H),i("error",H)}finally{P.isReadonly=!1}},ue=e.computed(()=>{var ce;const H=_.value?(ce=Rn[r.pluginType])==null?void 0:ce.schemaEndpoint:r.pluginType,J=_.value?Je.form[r.config.app].credentialSchema:Je.form[r.config.app].pluginSchema;let G=`${r.config.apiBaseUrl}${J}`;return r.config.app==="konnect"?G=G.replace(/{controlPlaneId}/gi,r.config.controlPlaneId||""):r.config.app==="kongManager"&&(G=G.replace(/\/{workspace}/gi,r.config.workspace?`/${r.config.workspace}`:"")),G=G.replace(/{plugin}/gi,H),G}),ye=e.ref(""),fe=e.ref(!1),Se=e.ref("");return e.onBeforeMount(async()=>{var H,J,G,ce;fe.value=!0;try{if(_.value&&r.config.app==="konnect"){const Z=(H=Rn[r.pluginType])==null?void 0:H.schemaEndpoint,de=$d[Z];ye.value=Z,k.value=A("",de,{}),fe.value=!1}else{const Z=r.schema??(await y.get(ue.value)).data;if(E.value=Z,Z)if(_.value)k.value=A("",Z,{}),fe.value=!1;else{const de=Z.fields.find(ge=>ge.config);x.value=de?de.config:Z,Z.supported_partials&&(O.value=Object.keys(Z.supported_partials).find(ge=>[Io.REDIS_CE,Io.REDIS_EE].includes(ge)),K.value=(J=Z.supported_partials[O.value])==null?void 0:J[0]),v();const Ie=(G=Z.fields.find(ge=>ge.protocols))==null?void 0:G.protocols;if(Ie){const{default:ge=[],elements:Pe={}}=Ie;L.protocols.default=ge,L.protocols.placeholder=r.config.app==="konnect"?s("plugins.form.fields.protocols.placeholderWithDefaultValues",{protocols:ge.join(", ")}):s("plugins.form.fields.protocols.placeholder"),(ce=Pe.one_of)!=null&&ce.length&&(L.protocols.values=Pe.one_of.map($e=>({label:$e,value:$e})))}if(N.value||h.value===le.EntityBaseFormType.Create){const ge=A("config",x.value,L);O.value&&(ge._supported_redis_partial_type=O.value),re.value&&(ge._isCustomPlugin=!0),k.value=ge}}}}catch(Z){console.error(Z),Se.value=p(Z),i("error:fetch-schema",Z)}finally{fe.value=!1}}),(H,J)=>{const G=e.resolveComponent("KSkeleton"),ce=e.resolveComponent("KEmptyState"),Z=e.resolveComponent("KButton"),de=e.resolveComponent("KTabs"),Ie=e.resolveComponent("KSlideout");return e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["kong-ui-entities-plugin-form-container",{"new-form-layout":e.unref(o)}])},[fe.value?(e.openBlock(),e.createBlock(G,{key:0,type:"form"})):Se.value?(e.openBlock(),e.createBlock(ce,{key:1,"action-button-visible":!1,"data-testid":"plugin-form-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(e.unref(s)("errors.load_schema")),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(le.EntityBaseForm),{key:2,"can-submit":$.value,config:t.config,"edit-id":t.pluginId,"entity-type":e.unref(le.SupportedEntityType).Plugin,"error-message":oe.value,"fetch-url":D.value,"form-fields":Ce.value,"is-readonly":P.isReadonly,"no-validate":"","wrapper-component":t.noCardWrapper?"div":void 0,onCancel:te,"onFetch:error":J[4]||(J[4]=ge=>H.$emit("error",ge)),"onFetch:success":j,onLoading:J[5]||(J[5]=ge=>H.$emit("loading",ge))},{"form-actions":e.withCtx(()=>[t.isWizardStep?(e.openBlock(),e.createElementBlock("div",e1)):(e.openBlock(),e.createBlock(Qx,{key:1,"teleport-target":t.actionsTeleportTarget},{default:e.withCtx(()=>[e.createElementVNode("div",t1,[t.hideViewConfigAction?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(Z,{key:0,appearance:"tertiary","data-testid":`plugin-${b.value?"edit":"create"}-form-view-configuration`,onClick:J[3]||(J[3]=ge=>U())},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.view_configuration")),1)]),_:1},8,["data-testid"])),e.createVNode(Z,{appearance:"secondary",class:"form-action-button","data-testid":`plugin-${b.value?"edit":"create"}-form-cancel`,disabled:P.isReadonly,onClick:te},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.cancel")),1)]),_:1},8,["data-testid","disabled"]),e.createVNode(Z,{appearance:"primary","data-testid":`plugin-${b.value?"edit":"create"}-form-submit`,disabled:!$.value||P.isReadonly,type:"submit",onClick:Me},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(s)("actions.save")),1)]),_:1},8,["data-testid","disabled"])])]),_:1},8,["teleport-target"]))]),default:e.withCtx(()=>[e.createElementVNode("form",{hidden:"",onSubmit:Me},null,32),e.createVNode(Xx,{config:t.config,credential:_.value,editing:h.value===e.unref(le.EntityBaseFormType).Edit,"enable-redis-partial":t.enableRedisPartial,"enable-vault-secret-picker":r.enableVaultSecretPicker,engine:t.engine,"entity-map":q.value,"raw-schema":E.value,record:w.value,schema:k.value,onGlobalAction:J[0]||(J[0]=(ge,Pe)=>H.$emit("globalAction",ge,Pe)),onLoading:J[1]||(J[1]=ge=>I.value=ge),onModelUpdated:X,onShowNewPartialModal:J[2]||(J[2]=ge=>H.$emit("showNewPartialModal",ge)),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"])),e.createVNode(Ie,{"close-on-blur":!1,"data-testid":"form-view-configuration-slideout","has-overlay":!1,"offset-top":60,title:e.unref(s)("view_configuration.title"),visible:C.value,onClose:U},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(s)("view_configuration.message")),1),e.createVNode(de,{"data-testid":"form-view-configuration-slideout-tabs",tabs:F.value},{json:e.withCtx(()=>[e.createVNode(e.unref(le.JsonCodeBlock),{config:t.config,"entity-record":pe.value,"fetcher-url":ie.value,"request-method":r.pluginId?"put":"post"},null,8,["config","entity-record","fetcher-url","request-method"])]),yaml:e.withCtx(()=>[e.createVNode(e.unref(le.YamlCodeBlock),{"entity-record":pe.value},null,8,["entity-record"])]),terraform:e.withCtx(()=>[e.createVNode(e.unref(le.TerraformCodeBlock),{"credential-type":ye.value,"entity-record":pe.value,"entity-type":e.unref(le.SupportedEntityType).Plugin},null,8,["credential-type","entity-record","entity-type"])]),deck:e.withCtx(()=>[e.createVNode(e.unref(le.DeckCodeBlock),{app:t.config.app,"control-plane-name":t.config.app==="konnect"?t.config.controlPlaneName:void 0,"entity-record":pe.value,"entity-type":e.unref(le.SupportedEntityType).Plugin,"geo-api-server-url":t.config.app==="konnect"?t.config.geoApiServerUrl:void 0,"kong-admin-api-url":t.config.app==="kongManager"?t.config.apiBaseUrl:void 0,workspace:t.config.app==="kongManager"?t.config.workspace:void 0},null,8,["app","control-plane-name","entity-record","entity-type","geo-api-server-url","kong-admin-api-url","workspace"])]),_:1},8,["tabs"])]),_:1},8,["title","visible"])],2)}}}),[["__scopeId","data-v-acda21d4"]]),o1={class:"kong-ui-entities-plugins-list"},r1={class:"button-row"},a1={class:"name-cell-wrapper"},i1={class:"info-wrapper"},l1={key:0,class:"info-name"},s1={key:1,class:"info-name"},c1={key:2,class:"info-type"},d1={key:1},u1=_e(e.defineComponent({__name:"PluginList",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.createRoute||!t.getViewRoute||!t.getEditRoute||!t.getConfigureDynamicOrderingRoute||t.app==="kongManager"&&!t.isExactMatch&&!t.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(t,{emit:n}){var pe,Me;const o=je.usePluginMetaData(),a=n,i=t,{i18n:{t:r}}=je.useI18n(),l=hn.useRouter(),{axiosInstance:s}=le.useAxios((pe=i.config)==null?void 0:pe.axiosRequestConfig),{hasRecords:c,handleStateChange:u}=le.useTableState(()=>E.value),f=e.computed(()=>c.value&&i.config.app==="konnect"),d=e.computed(()=>!!i.config.entityId),p=e.computed(()=>{var ue;return((ue=i.config)==null?void 0:ue.entityType)==="consumers"}),m=e.computed(()=>{var ue;return((ue=i.config)==null?void 0:ue.entityType)==="consumer_groups"}),g=i.config.app==="konnect"||le.useGatewayFeatureSupported({gatewayInfo:i.config.gatewayInfo,supportedRange:{enterprise:["3.0"]}}),y=e.computed(()=>i.config.app!=="kongManager"||!!i.config.disableSorting),C={name:{label:r("plugins.list.table_headers.name"),searchable:!0,sortable:!0,hidable:!1}};(Me=i.config)!=null&&Me.entityId||(C.appliedTo={label:r("plugins.list.table_headers.applied_to"),sortable:!1}),C.enabled={label:r("plugins.list.table_headers.enabled"),searchable:!0,sortable:!0},g&&(C.ordering={label:r("plugins.list.table_headers.ordering"),sortable:!0}),C.tags={label:r("plugins.list.table_headers.tags"),sortable:!1};const b=C,h=e.computed(()=>{var ye,fe,Se,we;let ue=i.config.entityType?`${i.config.apiBaseUrl}${Je.list[i.config.app].forEntity}`:`${i.config.apiBaseUrl}${Je.list[i.config.app].all}`;return i.config.app==="konnect"?ue=ue.replace(/{controlPlaneId}/gi,((ye=i.config)==null?void 0:ye.controlPlaneId)||""):i.config.app==="kongManager"&&(ue=ue.replace(/\/{workspace}/gi,(fe=i.config)!=null&&fe.workspace?`/${i.config.workspace}`:"")),ue.replace(/{entityType}/gi,((Se=i.config)==null?void 0:Se.entityType)||"").replace(/{entityId}/gi,((we=i.config)==null?void 0:we.entityId)||"")}),E=e.ref(""),k=e.computed(()=>i.config.app==="konnect"||i.config.isExactMatch?{isExactMatch:!0,fields:{name:C.name,id:{label:r("plugins.list.table_headers.id"),sortable:!0}},placeholder:r(`search.placeholder.${i.config.isExactMatch?"exact":i.config.app}`)}:{isExactMatch:!1,fields:{enabled:{...C.enabled,label:r("search.filter.field.enabled")},name:C.name,instance_name:{label:r("plugins.list.table_headers.instance_name"),searchable:!0}},schema:i.config.filterSchema}),{fetcher:_,fetcherState:w,fetcherCacheKey:x}=le.useFetcher(e.computed(()=>({...i.config,cacheIdentifier:i.cacheIdentifier})),h),O=()=>{E.value=""},K=()=>{x.value++},I=e.ref(null),S=ue=>{var fe,Se,we,H;const ye=[];return((fe=ue.route)!=null&&fe.id||ue.route_id)&&ye.push({type:"route",badgeText:r("plugins.list.table_headers.applied_to_badges.route")}),((Se=ue.service)!=null&&Se.id||ue.service_id)&&ye.push({type:"service",badgeText:r("plugins.list.table_headers.applied_to_badges.service")}),((we=ue.consumer)!=null&&we.id||ue.consumer_id)&&ye.push({type:"consumer",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer")}),((H=ue.consumer_group)!=null&&H.id||ue.consumer_group_id)&&ye.push({type:"consumer_group",badgeText:r("plugins.list.table_headers.applied_to_badges.consumer_group")}),ye.length?ye:[{type:null,badgeText:r("plugins.list.table_headers.applied_to_badges.global")}]},P=async(ue,ye)=>{var fe;return ue===null?!1:await((fe=i.canRetrieveScopedEntity)==null?void 0:fe.call(i,ue,ye.id))},F=(ue,ye)=>{var Se,we,H,J,G;let fe=null;switch(ue){case"route":fe=(Se=ye.route)==null?void 0:Se.id;break;case"service":fe=(we=ye.service)==null?void 0:we.id;break;case"consumer":fe=(H=ye.consumer)==null?void 0:H.id;break;case"consumer_group":fe=(J=ye.consumer_group)==null?void 0:J.id;break}fe&&((G=i.config)!=null&&G.getScopedEntityViewRoute)&&l.push(i.config.getScopedEntityViewRoute(ue,fe))},T=e.ref(!1),D=e.ref(null),U=e.computed(()=>{const ue={action:"disable",id:"",name:""};if(D.value){const{enabled:ye,id:fe,name:Se}=D.value;ue.action=ye?"disable":"enable",ue.id=fe,ue.name=o.getDisplayName(Se)||fe}return ue}),q=ue=>{T.value=!0,D.value=ue},L=()=>{T.value=!1,D.value=null},V=async()=>{var Se,we,H,J,G,ce,Z,de;if(!await((Se=i.canEdit)==null?void 0:Se.call(i,D.value))||!D.value)return;let ye=`${i.config.apiBaseUrl}${(G=Je.item[i.config.app])==null?void 0:G[(we=i.config)!=null&&we.entityType?"forEntity":"all"].replace(/{entityType}/gi,((H=i.config)==null?void 0:H.entityType)||"").replace(/{entityId}/gi,((J=i.config)==null?void 0:J.entityId)||"")}`.replace(/{id}/gi,D.value.id||"");i.config.app==="konnect"?ye=ye.replace(/{controlPlaneId}/gi,((ce=i.config)==null?void 0:ce.controlPlaneId)||""):i.config.app==="kongManager"&&(ye=ye.replace(/\/{workspace}/gi,(Z=i.config)!=null&&Z.workspace?`/${i.config.workspace}`:""));const fe=!D.value.enabled;try{const Ie=(de=i.config)==null?void 0:de.app;let ge;E.value&&Ie==="konnect"&&(ge=await s.get(ye));const{data:Pe}=Ie==="konnect"?await s.put(ye,{...(ge==null?void 0:ge.data)||D.value,enabled:fe},{timeout:12e4}):await s.patch(ye,{...D.value,enabled:fe},{timeout:12e4});a("toggle-enabled",fe,Pe),D.value.enabled=fe}catch(Ie){a("error",Ie)}},R=async(ue,ye)=>{const fe=ue.id;if(!await ye(fe)){a("copy:error",{entity:ue,field:"id",message:r("errors.copy")});return}a("copy:success",{entity:ue,field:"id",message:r("copy.success",{val:fe})})},A=async(ue,ye)=>{const fe=JSON.stringify(ue);if(!await ye(fe)){a("copy:error",{entity:ue,message:r("errors.copy")});return}a("copy:success",{entity:ue,message:r("copy.success_brief")})},v=async ue=>{var fe;await((fe=i.canRetrieve)==null?void 0:fe.call(i,ue))&&l.push(i.config.getViewRoute(ue))},z=ue=>({label:r("actions.view"),to:i.config.getViewRoute(ue)}),$=ue=>({label:r("actions.edit"),to:i.config.getEditRoute(ue)}),N=ue=>({label:r("actions.configure_dynamic_ordering"),to:i.config.getConfigureDynamicOrderingRoute(ue)}),B=e.ref(void 0),j=e.ref(!1),W=e.ref(!1),X=e.ref(""),ee=le.useDeleteUrlBuilder(i.config,h.value),oe=ue=>{B.value=ue,j.value=!0},Q=()=>{j.value=!1},te=async()=>{var ue,ye,fe;if((ue=B.value)!=null&&ue.id){W.value=!0;try{await s.delete(ee(B.value.id)),W.value=!1,j.value=!1,x.value++,a("delete:success",B.value)}catch(Se){X.value=((fe=(ye=Se.response)==null?void 0:ye.data)==null?void 0:fe.message)||Se.message||r("errors.delete"),a("error",Se)}finally{W.value=!1}}},ie=()=>{l.push(i.config.createRoute)};e.watch(w,ue=>{var ye,fe,Se;if(ue.status===le.FetcherStatus.Error){I.value={title:r("errors.general")},(Se=(fe=(ye=ue.error)==null?void 0:ye.response)==null?void 0:fe.data)!=null&&Se.message&&(I.value.message=ue.error.response.data.message),a("error",ue.error);return}I.value=null});const re=e.ref({ctaPath:i.config.createRoute,ctaText:void 0,message:`${r("plugins.list.empty_state.description")}${i.config.additionMessageForEmptyState?` ${i.config.additionMessageForEmptyState}`:""}`,title:r("plugins.title")}),Ce=e.ref(!1);return e.onBeforeMount(async()=>{Ce.value=await i.canCreate(),Ce.value&&(re.value.title=r("plugins.list.empty_state.title"),re.value.ctaText=r("actions.create"))}),(ue,ye)=>{const fe=e.resolveComponent("KButton"),Se=e.resolveComponent("KEmptyState"),we=e.resolveComponent("KBadge"),H=e.resolveComponent("KTruncate"),J=e.resolveComponent("KInputSwitch"),G=e.resolveComponent("KDropdownItem"),ce=e.resolveComponent("KClipboardProvider");return e.openBlock(),e.createElementBlock("div",o1,[e.createVNode(e.unref(le.EntityBaseTable),{"cache-identifier":t.cacheIdentifier,"disable-sorting":y.value,"empty-state-options":re.value,"enable-entity-actions":"","error-message":I.value,fetcher:e.unref(_),"fetcher-cache-key":e.unref(x),"pagination-type":"offset","preferences-storage-key":"kong-ui-entities-plugins-list",query:E.value,"table-headers":e.unref(b),title:t.title,"title-tag":t.titleTag,onClearSearchInput:O,"onClick:row":ye[4]||(ye[4]=Z=>v(Z)),onSort:K,onState:e.unref(u)},e.createSlots({"toolbar-filter":e.withCtx(()=>[e.createVNode(e.unref(le.EntityFilter),{modelValue:E.value,"onUpdate:modelValue":ye[0]||(ye[0]=Z=>E.value=Z),config:k.value},null,8,["modelValue","config"])]),"toolbar-button":e.withCtx(()=>[(e.openBlock(),e.createBlock(e.Teleport,{disabled:!t.useActionOutside,to:"#kong-ui-app-page-header-action-button"},[e.createElementVNode("div",r1,[!d.value&&f.value?(e.openBlock(),e.createBlock(fe,{key:0,appearance:"secondary",class:"open-learning-hub","data-testid":"plugins-learn-more-button",icon:"",onClick:ye[1]||(ye[1]=Z=>ue.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(me.BookIcon),{decorative:""})]),_:1})):e.createCommentVNode("",!0),e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":()=>t.canCreate()},{default:e.withCtx(()=>[e.createVNode(fe,{appearance:"primary","data-testid":"toolbar-add-plugin",size:t.useActionOutside?"medium":"large",to:t.config.createRoute},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon)),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("plugins.list.toolbar_actions.new_plugin")),1)]),_:1},8,["size","to"])]),_:1},8,["auth-function"])])],8,["disabled"]))]),name:e.withCtx(({row:Z})=>[e.createElementVNode("div",a1,[e.createVNode(e.unref(yn.PluginIcon),{class:"plugin-icon",name:Z.name,size:24},null,8,["name"]),e.createElementVNode("div",i1,[Z.instance_name?(e.openBlock(),e.createElementBlock("span",l1,e.toDisplayString(Z.instance_name),1)):(e.openBlock(),e.createElementBlock("span",s1,e.toDisplayString(e.unref(o).getDisplayName(Z.name)),1)),Z.instance_name?(e.openBlock(),e.createElementBlock("span",c1,e.toDisplayString(e.unref(o).getDisplayName(Z.name)),1)):e.createCommentVNode("",!0)])])]),appliedTo:e.withCtx(({row:Z})=>[S(Z).length>0?(e.openBlock(),e.createBlock(H,{key:0},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(S(Z),de=>(e.openBlock(),e.createBlock(e.unref(le.PermissionsWrapper),{key:de.badgeText,"auth-function":()=>P(de.type,Z),"force-show":""},{default:e.withCtx(({isAllowed:Ie})=>[e.createVNode(we,{class:e.normalizeClass(Ie||"disabled"),onClick:e.withModifiers(ge=>Ie&&de.type&&F(de.type,Z),["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(de.badgeText),1)]),_:2},1032,["class","onClick"])]),_:2},1032,["auth-function"]))),128))]),_:2},1024)):(e.openBlock(),e.createElementBlock("span",d1,"-"))]),enabled:e.withCtx(({row:Z})=>[e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":async()=>!!(await t.canEdit(Z)&&await t.canToggle(Z)),"force-show":""},{default:e.withCtx(({isAllowed:de})=>{var Ie,ge;return[e.createElementVNode("div",{onClick:ye[3]||(ye[3]=e.withModifiers(()=>{},["stop"]))},[e.createVNode(J,{disabled:!de,"disabled-tooltip-text":!de&&((ge=(Ie=t.config).getToggleDisabledTooltip)==null?void 0:ge.call(Ie,Z))||void 0,"model-value":Z.enabled,onClick:e.withModifiers(Pe=>de&&q(Z),["stop","prevent"])},null,8,["disabled","disabled-tooltip-text","model-value","onClick"])])]}),_:2},1032,["auth-function"])]),ordering:e.withCtx(({rowValue:Z})=>[e.createVNode(we,{appearance:e.unref(Il)(Z)?"info":"warning"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(Il)(Z)?e.unref(r)("plugins.list.table_headers.ordering_badge.static"):e.unref(r)("plugins.list.table_headers.ordering_badge.dynamic")),1)]),_:2},1032,["appearance"])]),tags:e.withCtx(({rowValue:Z})=>[e.createVNode(e.unref(le.TableTags),{tags:Z},null,8,["tags"])]),actions:e.withCtx(({row:Z})=>[e.createVNode(ce,null,{default:e.withCtx(({copyToClipboard:de})=>[e.createVNode(G,{"data-testid":"action-entity-copy-id",onClick:Ie=>R(Z,de)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.copy_id")),1)]),_:1},8,["onClick"])]),_:2},1024),e.createVNode(ce,null,{default:e.withCtx(({copyToClipboard:de})=>[e.createVNode(G,{"data-testid":"action-entity-copy-json",onClick:Ie=>A(Z,de)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.copy_json")),1)]),_:1},8,["onClick"])]),_:2},1024),e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":()=>t.canRetrieve(Z)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-view","has-divider":"",item:z(Z)},null,8,["item"])]),_:2},1032,["auth-function"]),e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":()=>t.canEdit(Z)},{default:e.withCtx(()=>[e.createVNode(G,{"data-testid":"action-entity-edit",item:$(Z)},null,8,["item"])]),_:2},1032,["auth-function"]),!p.value&&!m.value&&e.unref(g)?(e.openBlock(),e.createBlock(e.unref(le.PermissionsWrapper),{key:0,"auth-function":()=>t.canConfigureDynamicOrdering(Z)},{default:e.withCtx(()=>[N(Z)?(e.openBlock(),e.createBlock(G,{key:0,"data-testid":"action-entity-config-dyn-order",item:N(Z)},null,8,["item"])):e.createCommentVNode("",!0)]),_:2},1032,["auth-function"])):e.createCommentVNode("",!0),e.createVNode(e.unref(le.PermissionsWrapper),{"auth-function":()=>t.canDelete(Z)},{default:e.withCtx(()=>[e.createVNode(G,{danger:"","data-testid":"action-entity-delete","has-divider":"",onClick:de=>oe(Z)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:1},8,["onClick"])]),_:2},1032,["auth-function"])]),_:2},[!E.value&&t.config.app==="konnect"?{name:"empty-state",fn:e.withCtx(()=>{var Z;return[e.createVNode(Se,{"data-testid":t.config.entityId?"nested-plugins-entity-empty-state":"plugins-entity-empty-state","icon-background":"",message:e.unref(r)("plugins.list.empty_state_v2.description"),title:e.unref(r)("plugins.list.empty_state_v2.title")},e.createSlots({icon:e.withCtx(()=>[e.createVNode(e.unref(me.PlugIcon),{decorative:""})]),action:e.withCtx(()=>[Ce.value?(e.openBlock(),e.createBlock(fe,{key:0,"data-testid":"entity-create-button",onClick:ie},{default:e.withCtx(()=>[e.createVNode(e.unref(me.AddIcon),{decorative:""}),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("plugins.list.empty_state_v2.create_cta")),1)]),_:1})):e.createCommentVNode("",!0),e.createVNode(fe,{appearance:"secondary","data-testid":"entity-learn-more-button",onClick:ye[2]||(ye[2]=de=>ue.$emit("click:learn-more"))},{default:e.withCtx(()=>[e.createVNode(e.unref(me.BookIcon),{decorative:""}),e.createTextVNode(" "+e.toDisplayString(e.unref(r)("plugins.list.empty_state_v2.learn_more")),1)]),_:1})]),_:2},[(Z=t.config)!=null&&Z.isControlPlaneGroup?{name:"default",fn:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("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"]),e.createVNode(e.unref(le.EntityToggleModal),{action:U.value.action,"entity-id":U.value.id,"entity-name":U.value.name,"entity-type":e.unref(r)("glossary.plugin"),"on-confirm":V,visible:T.value,onCancel:L,onProceed:L},null,8,["action","entity-id","entity-name","entity-type","visible"]),e.createVNode(e.unref(le.EntityDeleteModal),{"action-pending":W.value,description:e.unref(r)("delete.description"),"entity-name":B.value&&(B.value.instance_name||B.value.name||B.value.id),"entity-type":e.unref(le.EntityTypes).Plugin,error:X.value,title:e.unref(r)("delete.title"),visible:j.value,onCancel:Q,onProceed:te},null,8,["action-pending","description","entity-name","entity-type","error","title","visible"])])}}}),[["__scopeId","data-v-5fef62ed"]]),p1={class:"plugin-select-card-wrapper"},f1=["data-testid"],m1={class:"plugin-card-header"},g1={class:"plugin-card-title"},h1={key:0,class:"plugin-card-actions"},y1=["data-testid","title"],_1={key:0,class:"plugin-card-text"},b1={key:0},k1=["title"],Za=_e(e.defineComponent({__name:"PluginSelectCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){const o=n,a=t,i=hn.useRouter(),{i18n:{t:r}}=je.useI18n(),l=e.computed(()=>a.config.app==="konnect"?a.config.controlPlaneId:""),s=e.computed(()=>!!(!a.plugin.available||a.plugin.disabledMessage)),c=e.computed(()=>!!(m.value&&!p.value&&a.navigateOnClick&&l.value&&(a.canDeleteCustomPlugin||a.canEditCustomPlugin))),u=()=>{i.push(a.config.getCreateRoute(a.plugin.id))},f=()=>{a.navigateOnClick?u():d()},d=()=>{o("plugin-clicked",a.plugin)},p=e.computed(()=>a.plugin.id==="custom-plugin-create"),m=e.computed(()=>a.config.app==="konnect"&&a.plugin.group===Y.PluginGroup.CUSTOM_PLUGINS),g=()=>{a.config.app==="konnect"&&o("custom-plugin-delete")},y=(b,h)=>{const E=a.config;a.config.app==="konnect"&&typeof E.getCustomEditRoute=="function"&&E.getCustomEditRoute&&i.push(E.getCustomEditRoute(b,h))},C=()=>{if(!s.value&&a.config.app==="konnect"){const b=a.config;p.value&&b.createCustomRoute?i.push(b.createCustomRoute):m.value&&u()}};return(b,h)=>{const E=e.resolveComponent("KButton"),k=e.resolveComponent("KDropdownItem"),_=e.resolveComponent("KDropdownMenu"),w=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",p1,[e.createVNode(w,{text:t.plugin.disabledMessage},{default:e.withCtx(()=>[e.createElementVNode("a",{class:e.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${t.plugin.id}-card`,role:"button",onClick:h[1]||(h[1]=x=>s.value||m.value?void 0:f())},[e.createElementVNode("div",m1,[e.createElementVNode("div",g1,[e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!m.value})},e.toDisplayString(t.plugin.name),3)]),c.value?(e.openBlock(),e.createElementBlock("div",h1,[e.createVNode(_,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150"},{default:e.withCtx(()=>[e.createVNode(E,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{size:e.unref(uo)},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[t.canDeleteCustomPlugin?(e.openBlock(),e.createBlock(k,{key:0,"data-testid":"edit-plugin-schema",onClick:h[0]||(h[0]=e.withModifiers(x=>y(t.plugin.name,t.plugin.customPluginType),["stop"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.edit")),1)]),_:1})):e.createCommentVNode("",!0),t.canDeleteCustomPlugin?(e.openBlock(),e.createBlock(k,{key:1,danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:e.withModifiers(g,["stop"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:1})):e.createCommentVNode("",!0)]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:e.normalizeClass(["plugin-card-body",{"custom-plugin":m.value}]),"data-testid":t.plugin.name,title:t.plugin.available?t.plugin.name:e.unref(r)("plugins.select.unavailable_tooltip"),onClick:C},[e.createVNode(e.unref(yn.PluginIcon),{alt:t.plugin.name,class:"plugin-card-icon",name:t.plugin.id,size:55},null,8,["alt","name"]),t.plugin.description||m.value&&!p.value?(e.openBlock(),e.createElementBlock("div",_1,[m.value&&!p.value?(e.openBlock(),e.createElementBlock("p",b1,e.toDisplayString(e.unref(r)("plugins.select.custom_badge_text")),1)):e.createCommentVNode("",!0),t.plugin.description?(e.openBlock(),e.createElementBlock("p",{key:1,class:"plugin-card-text",title:t.plugin.description},e.toDisplayString(t.plugin.description),9,k1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],10,y1),e.createElementVNode("div",{class:"plugin-card-footer",onClick:C},e.toDisplayString(p.value?e.unref(r)("actions.create_custom"):t.plugin.exists?e.unref(r)("actions.enabled"):e.unref(r)("actions.enable")),1)],10,f1)]),_:1},8,["text"])])}}}),[["__scopeId","data-v-023c396b"]]),Qa=_e(e.defineComponent({__name:"DeleteCustomPluginSchemaModal",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app))},plugin:{type:Object,required:!0}},emits:["closed","proceed"],setup(t,{emit:n}){var g;const o=t,a=n,{i18nT:i,i18n:{t:r}}=je.useI18n(),{getMessageFromError:l}=le.useErrors(),{axiosInstance:s}=le.useAxios((g=o.config)==null?void 0:g.axiosRequestConfig),c=e.computed(()=>{var y;return d.value?r("delete.plugin_schema_in_use_title"):r("delete.title",{name:((y=o.plugin)==null?void 0:y.name)||r("delete.custom_plugin")})}),u=e.ref(!1),f=e.ref(""),d=e.ref(!1),p=e.computed(()=>{if(o.config.app==="konnect"){const y=o.plugin.customPluginType==="streaming"?Je.select[o.config.app].streamingCustomPluginItem:Je.select[o.config.app].schemaCustomPluginItem;let C=`${o.config.apiBaseUrl}${y}`;return C=C.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),C=C.replace(/{pluginId}/gi,o.plugin.id),C}return null}),m=async()=>{var y,C,b,h;if(u.value=!0,f.value="",!(!((y=o.plugin)!=null&&y.name)||((C=o.config)==null?void 0:C.app)!=="konnect"))try{p.value&&await s.delete(p.value),a("proceed")}catch(E){const{response:k}=E;(k==null?void 0:k.status)===400&&((h=(b=k.data)==null?void 0:b.message)!=null&&h.includes("plugin schema is currently in use"))?d.value=!0:f.value=l(E)}finally{u.value=!1}};return(y,C)=>{const b=e.resolveComponent("KButton"),h=e.resolveComponent("KModal");return!d.value&&t.plugin?(e.openBlock(),e.createBlock(e.unref(le.EntityDeleteModal),{key:0,"action-pending":u.value,class:"delete-custom-plugin-schema-modal","data-testid":"delete-custom-plugin-schema-modal",description:e.unref(r)("delete.description_custom"),"entity-name":t.plugin.name,"entity-type":e.unref(le.EntityTypes).Plugin,error:f.value,"need-confirm":"",title:c.value,visible:"",onCancel:C[0]||(C[0]=E=>y.$emit("closed")),onProceed:m},null,8,["action-pending","description","entity-name","entity-type","error","title"])):t.plugin?(e.openBlock(),e.createBlock(h,{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:C[2]||(C[2]=E=>y.$emit("closed"))},{default:e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(e.unref(i),{keypath:"delete.plugin_schema_in_use_message",tag:"p"},{name:e.withCtx(()=>[e.createElementVNode("strong",null,e.toDisplayString(t.plugin.name),1)]),_:1})])]),"footer-actions":e.withCtx(()=>[e.createElementVNode("div",null,[e.createVNode(b,{appearance:"tertiary",class:"cancel-button","data-testid":"delete-custom-plugin-form-cancel",onClick:C[1]||(C[1]=E=>y.$emit("closed"))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.cancel")),1)]),_:1})])]),_:1},8,["action-button-disabled","title"])):e.createCommentVNode("",!0)}}}),[["__scopeId","data-v-e8ea9d81"]]),w1={class:"custom-plugins-grid"},C1={class:"empty-state-title"},E1={class:"empty-state-description"},ei=310,N1=_e(e.defineComponent({__name:"PluginCustomGrid",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){const o=t,a=n,{i18n:{t:i}}=je.useI18n(),{getTallestPluginCardHeight:r,getToggleVisibility:l}=je.usePluginHelpers(),s=e.ref(!0),c=_=>{a("plugin-clicked",_)},u=e.computed(()=>{if(o.config.app==="kongManager")return[];const _=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(_):_}),f=e.ref(!1),d=e.ref(null),p=_=>{f.value=!0,d.value={id:_.id,name:_.name,customPluginType:_.customPluginType}},m=_=>{var w;_&&(a("revalidate"),a("delete:success",((w=d.value)==null?void 0:w.name)||"")),f.value=!1,d.value=null},g=e.ref(ei),y=e.ref(null),C=e.ref(null),b=e.computed(()=>s.value?{overflowY:"hidden",maxHeight:`${g.value}px`}:{}),h=e.ref(!1),E=()=>{g.value=Math.max(r(C.value),ei),k()},k=()=>{var _,w;(_=C.value)!=null&&_.length&&(h.value=l(y.value,(w=C.value)==null?void 0:w.length))};return e.onMounted(async()=>{await e.nextTick(),g.value=Math.max(r(C.value),ei),k(),window==null||window.addEventListener("resize",E)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",E)}),(_,w)=>{const x=e.resolveComponent("KEmptyState"),O=e.resolveComponent("KCollapse");return e.openBlock(),e.createElementBlock("div",w1,[u.value.length?(e.openBlock(),e.createBlock(O,{key:1,modelValue:s.value,"onUpdate:modelValue":w[0]||(w[0]=K=>s.value=K),class:"custom-plugins-collapse","data-testid":`${e.unref(Y.PluginGroup).CUSTOM_PLUGINS}-collapse`,title:e.unref(Y.PluginGroup).CUSTOM_PLUGINS,"trigger-label":s.value?e.unref(i)("plugins.select.view_more"):e.unref(i)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:y,class:"plugin-card-container",style:e.normalizeStyle(b.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.value,(K,I)=>(e.openBlock(),e.createBlock(Za,{key:`plugin-card-${I}`,ref_for:!0,ref_key:"pluginCardRef",ref:C,"can-delete-custom-plugin":t.canDeleteCustomPlugin,"can-edit-custom-plugin":t.canEditCustomPlugin,config:t.config,"navigate-on-click":t.navigateOnClick,plugin:K,onCustomPluginDelete:S=>p(K),onPluginClicked:c},null,8,["can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin","onCustomPluginDelete"]))),128))],4)]),_:2},[h.value?void 0:{name:"trigger",fn:e.withCtx(()=>[w[2]||(w[2]=e.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])):(e.openBlock(),e.createBlock(x,{key:0,"action-button-visible":!1,class:"custom-plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",C1,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",E1,e.toDisplayString(e.unref(i)("plugins.select.tabs.custom.empty_description")),1)]),_:1})),f.value&&d.value?(e.openBlock(),e.createBlock(Qa,{key:2,config:t.config,plugin:d.value,onClosed:m,onProceed:w[1]||(w[1]=K=>m(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-bfe8998d"]]),ti=310,hd=_e(e.defineComponent({__name:"PluginSelectGroup",props:e.mergeModels({config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.getCreateRoute)},name:{type:String,required:!0},plugins:{type:Array,required:!0},navigateOnClick:{type:Boolean,default:!0}},{modelValue:{type:Boolean,required:!0},modelModifiers:{}}),emits:e.mergeModels(["plugin-clicked"],["update:modelValue"]),setup(t,{emit:n}){const o=e.useModel(t,"modelValue"),a=t,i=n,{i18n:{t:r}}=je.useI18n(),{getTallestPluginCardHeight:l,getToggleVisibility:s}=je.usePluginHelpers(),c=e.ref(ti),u=e.ref(null),f=e.ref(null),d=e.computed(()=>o.value?{overflowY:"hidden",maxHeight:`${c.value}px`}:{}),p=e.ref(!1),m=()=>{c.value=Math.max(l(f.value),ti),g()},g=()=>{var y,C;(y=f.value)!=null&&y.length&&(p.value=s(u.value,(C=f.value)==null?void 0:C.length))};return e.onMounted(async()=>{await e.nextTick(),c.value=Math.max(l(f.value),ti),g(),window==null||window.addEventListener("resize",m)}),e.onUnmounted(()=>{window==null||window.removeEventListener("resize",m)}),(y,C)=>{const b=e.resolveComponent("KCollapse");return e.openBlock(),e.createBlock(b,{modelValue:o.value,"onUpdate:modelValue":C[0]||(C[0]=h=>o.value=h),class:"plugins-collapse","data-testid":`${a.name}-collapse`,title:a.name,"trigger-label":o.value?e.unref(r)("plugins.select.view_more"):e.unref(r)("plugins.select.view_less")},e.createSlots({"visible-content":e.withCtx(()=>[e.createElementVNode("div",{ref_key:"pluginCardContainerRef",ref:u,class:"plugin-card-container",style:e.normalizeStyle(d.value)},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.plugins,h=>(e.openBlock(),e.createBlock(Za,{key:`plugin-card-${h.id}`,ref_for:!0,ref_key:"pluginCardRef",ref:f,config:t.config,"navigate-on-click":t.navigateOnClick,plugin:h,onPluginClicked:E=>i("plugin-clicked",h)},null,8,["config","navigate-on-click","plugin","onPluginClicked"]))),128))],4)]),_:2},[p.value?void 0:{name:"trigger",fn:e.withCtx(()=>[C[1]||(C[1]=e.createTextVNode(" ",-1))]),key:"0"}]),1032,["modelValue","data-testid","title","trigger-label"])}}}),[["__scopeId","data-v-0ea863e8"]]),x1={class:"plugin-select-grid"},S1={class:"empty-state-title"},A1={class:"empty-state-description"},ni=e.defineComponent({__name:"PluginSelectGrid",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){const o=t,a=n,{i18n:{t:i}}=je.useI18n(),r=e.ref(!1),l=e.ref(xr),s=u=>{a("plugin-clicked",u)},c=e.computed(()=>{const u=JSON.parse(JSON.stringify(o.pluginList));return o.config.app==="konnect"&&delete u[Y.PluginGroup.CUSTOM_PLUGINS],u});return(u,f)=>{const d=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",x1,[Object.keys(c.value).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(d,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",S1,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",A1,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),!o.hideHighlightedPlugins&&o.highlightedPlugins.length>0?(e.openBlock(),e.createBlock(hd,{key:1,modelValue:r.value,"onUpdate:modelValue":f[0]||(f[0]=p=>r.value=p),config:t.config,name:o.highlightedPluginsTitle||e.unref(i)("plugins.select.highlighted_plugins.title"),"navigate-on-click":t.navigateOnClick,plugins:o.highlightedPlugins,onPluginClicked:f[1]||(f[1]=p=>s(p))},null,8,["modelValue","config","name","navigate-on-click","plugins"])):e.createCommentVNode("",!0),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(si),p=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[c.value[p]?(e.openBlock(),e.createElementBlock("div",{key:p},[e.createVNode(hd,{modelValue:l.value[p],"onUpdate:modelValue":m=>l.value[p]=m,config:t.config,name:p,"navigate-on-click":t.navigateOnClick,plugins:c.value[p]||[],onPluginClicked:f[2]||(f[2]=m=>s(m))},null,8,["modelValue","onUpdate:modelValue","config","name","navigate-on-click","plugins"])])):e.createCommentVNode("",!0)],64))),256))])}}}),I1={class:"kong-ui-entities-plugin-select-form"},P1={class:"plugins-filter-input-container"},T1={key:0},O1={key:3,"aria-live":"polite",class:"plugins-results-container"},V1={"data-testid":"kong-tab"},B1={class:"tab-description"},R1={"data-testid":"custom-tab"},$1={class:"tab-description"},F1=_e(e.defineComponent({__name:"PluginSelect",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||!t.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(t,{emit:n}){var R;const o=t,a=n,i=hn.useRoute(),r=hn.useRouter(),{i18n:{t:l}}=je.useI18n(),{pluginMetaData:s}=je.usePluginMetaData(),{getMessageFromError:c}=le.useErrors(),{sortAlpha:u,objectsAreEqual:f}=le.useHelpers(),d=e.ref(""),p=e.ref(!0),m=e.ref(!1),g=e.ref(""),y=e.ref([]),C=e.ref([]),b=e.ref({}),h=e.ref([]),{axiosInstance:E}=le.useAxios((R=o.config)==null?void 0:R.axiosRequestConfig),k=e.computed(()=>b.value?Object.entries(b.value).filter(([A])=>A!==Y.PluginGroup.CUSTOM_PLUGINS).reduce((A,[,v])=>{for(const z of v??[])A[z.id]=z;return A},{}):{}),_=e.computed(()=>{var z;if(!b.value)return{};const A=d.value.toLowerCase(),v=JSON.parse(JSON.stringify(b.value));for(const $ in b.value){const N=((z=b.value[$])==null?void 0:z.filter(B=>B.name.toLowerCase().includes(A)||B.id.toLowerCase().includes(A)||B.group.toLowerCase().includes(A)))||[];N.length?v[$]=N:delete v[$]}return v}),w=e.computed(()=>o.highlightedPluginIds.reduce((A,v)=>{const z=k.value[v];return z&&A.push(z),A},[])),x=e.computed(()=>Object.keys(_.value).length>0),O=e.computed(()=>Object.keys(b.value).length>0&&!x.value),K=e.computed(()=>o.config.app==="konnect"?[{hash:"#kong",title:l("plugins.select.tabs.kong.title")},{hash:"#custom",title:l("plugins.select.tabs.custom.title"),disabled:["none","disabled"].includes(o.customPluginSupport)}]:[]),I=e.computed(()=>{var v;let A=K.value.length&&((i==null?void 0:i.hash)||((v=K.value[0])==null?void 0:v.hash))||"";return A==="#custom"&&["none","disabled"].includes(o.customPluginSupport)&&(A="#kong"),A}),S=()=>[...new Set([...Object.keys({...o.availableOnServer?{}:s}),...y.value])].filter(A=>!o.ignoredPlugins.includes(A)).filter(A=>o.config.entityType&&(o.config.entityType==="services"&&s[A]&&!s[A].scope.includes(Y.PluginScope.SERVICE)||o.config.entityType==="routes"&&s[A]&&!s[A].scope.includes(Y.PluginScope.ROUTE)||o.config.entityType==="consumer_groups"&&s[A]&&!s[A].scope.includes(Y.PluginScope.CONSUMER_GROUP)||o.config.entityType==="consumers"&&s[A]&&!s[A].scope.includes(Y.PluginScope.CONSUMER))?!1:A).reduce((A,v)=>{var j;const z=s[v]&&s[v].name||v,$={...s[v],id:v,name:z,available:y.value.includes(v),disabledMessage:"",group:((j=s[v])==null?void 0:j.group)||Y.PluginGroup.CUSTOM_PLUGINS};$.group===Y.PluginGroup.CUSTOM_PLUGINS&&($.customPluginType=C.value.find(W=>W.name===v)?"streaming":"schema"),o.disabledPlugins&&($.disabledMessage=o.disabledPlugins[v]);const N=$.group||l("plugins.select.misc_plugins");let B=A[N];return B||(B=[]),B.push($),B.sort(u("name")),A[N]=B,A},{}),P=e.computed(()=>{var v;let A=`${o.config.apiBaseUrl}${Je.select[o.config.app].availablePlugins}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=((v=o.config.gatewayInfo)==null?void 0:v.edition)==="community"?`${o.config.apiBaseUrl}${Je.select[o.config.app].availablePluginsForOss}`:A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A}),F=e.computed(()=>{if(o.config.app==="konnect"&&o.customPluginSupport==="streaming"){let A=`${o.config.apiBaseUrl}${Je.select[o.config.app].streamingCustomPlugins}`;return A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""),A}return null}),T=e.computed(()=>{if(o.config.entityType&&o.config.entityId){let A=`${o.config.apiBaseUrl}${Je.list[o.config.app].forEntity}`;return o.config.app==="konnect"?A=A.replace(/{controlPlaneId}/gi,o.config.controlPlaneId||""):o.config.app==="kongManager"&&(A=A.replace(/\/{workspace}/gi,o.config.workspace?`/${o.config.workspace}`:"")),A.replace(/{entityType}/gi,o.config.entityType||"").replace(/{entityId}/gi,o.config.entityId||"")}return""}),D=A=>{r.replace({hash:A,query:i.query})};e.watch(()=>o.disabledPlugins,(A,v)=>{!f(A,v)&&!p.value&&(b.value=S())}),e.watch(()=>o.ignoredPlugins,(A,v)=>{!f(A,v)&&!p.value&&(b.value=S())}),e.watch(p,A=>{a("loading",A)});const U=e.ref(!1),q=e.ref(!1),L=e.ref(!1);e.onBeforeMount(async()=>{U.value=await o.canCreateCustomPlugin(),q.value=await o.canEditCustomPlugin(),L.value=await o.canDeleteCustomPlugin()});const V=e.useTemplateRef("filter-input");return e.onMounted(async()=>{var A,v;(v=(A=V.value)==null?void 0:A.input)==null||v.focus();try{const{data:z}=await E.get(P.value);if(o.config.app==="konnect"){const{names:$}=z;if(y.value=$||[],F.value){const{data:N}=await E.get(F.value);C.value=N.data||[]}}else if(o.config.app==="kongManager"){const{plugins:{available_on_server:$}}=z;y.value=$?Object.keys($):[]}}catch(z){m.value=!0,g.value=c(z)}if(T.value)try{const{data:{data:z}}=await E.get(T.value);if(z!=null&&z.length){const $=z.reduce((N,B)=>(B.name&&N.push(B.name),N),[]);h.value=h.value.concat($)}}catch{}m.value||(b.value=S()),p.value=!1}),(A,v)=>{const z=e.resolveComponent("KInput"),$=e.resolveComponent("KSkeletonBox"),N=e.resolveComponent("KSkeleton"),B=e.resolveComponent("KEmptyState"),j=e.resolveComponent("KTooltip"),W=e.resolveComponent("KTabs");return e.openBlock(),e.createElementBlock("div",I1,[e.createElementVNode("div",P1,[e.createVNode(z,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":v[0]||(v[0]=X=>d.value=X),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter",placeholder:e.unref(l)("search.placeholder.select"),type:"search"},null,8,["modelValue","placeholder"])]),p.value?(e.openBlock(),e.createElementBlock("section",T1,[e.createVNode($,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(N,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):m.value?(e.openBlock(),e.createBlock(B,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(g.value),1)]),_:1})):O.value&&d.value?(e.openBlock(),e.createBlock(B,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(l)("search.no_results",{filter:d.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",O1,[K.value.length&&t.customPluginSupport!=="none"?(e.openBlock(),e.createBlock(W,{key:0,modelValue:I.value,"onUpdate:modelValue":v[5]||(v[5]=X=>I.value=X),"data-testid":"plugins-tabs",tabs:K.value,onChange:D},e.createSlots({kong:e.withCtx(()=>[e.createElementVNode("div",V1,[e.createElementVNode("p",B1,e.toDisplayString(e.unref(l)("plugins.select.tabs.kong.description")),1),e.createVNode(ni,{config:t.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":w.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":t.navigateOnClick,"plugin-list":_.value,onPluginClicked:v[1]||(v[1]=X=>A.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"])])]),custom:e.withCtx(()=>[e.createElementVNode("div",R1,[e.renderSlot(A.$slots,"before-custom-tab-content",{},void 0,!0),e.createElementVNode("p",$1,e.toDisplayString(e.unref(l)("plugins.select.tabs.custom.description")),1),e.createVNode(N1,{"can-create-custom-plugin":U.value,"can-delete-custom-plugin":L.value,"can-edit-custom-plugin":q.value,config:t.config,"navigate-on-click":t.navigateOnClick,"plugin-list":_.value,"onDelete:success":v[2]||(v[2]=X=>A.$emit("delete-custom:success",X)),onPluginClicked:v[3]||(v[3]=X=>A.$emit("plugin-clicked",X)),onRevalidate:v[4]||(v[4]=()=>b.value=S())},null,8,["can-create-custom-plugin","can-delete-custom-plugin","can-edit-custom-plugin","config","navigate-on-click","plugin-list"])])]),_:2},[t.customPluginSupport==="disabled"?{name:"custom-anchor",fn:e.withCtx(()=>[e.createVNode(j,{"max-width":"300",text:e.unref(l)("plugins.select.tabs.custom.disabled_tooltip")},{default:e.withCtx(()=>[e.createElementVNode("div",null,e.toDisplayString(e.unref(l)("plugins.select.tabs.custom.title")),1)]),_:1},8,["text"])]),key:"0"}:void 0]),1032,["modelValue","tabs"])):(e.openBlock(),e.createBlock(ni,{key:1,config:t.config,"hide-highlighted-plugins":d.value.length>0,"highlighted-plugins":w.value,"highlighted-plugins-title":o.highlightedPluginsTitle,"navigate-on-click":t.navigateOnClick,"plugin-list":_.value,onPluginClicked:v[6]||(v[6]=X=>A.$emit("plugin-clicked",X))},null,8,["config","hide-highlighted-plugins","highlighted-plugins","highlighted-plugins-title","navigate-on-click","plugin-list"]))]))])}}}),[["__scopeId","data-v-e7475803"]]),L1={class:"plugin-select-card-wrapper","data-testid":"plugin-catalog-card-wrapper"},D1={class:"plugin-card-header"},M1={class:"plugin-card-title"},j1={key:0,class:"plugin-card-actions"},K1=["data-testid","title"],v1={key:0},U1={key:0},q1=["title"],G1={class:"plugin-card-footer"},z1=_e(e.defineComponent({__name:"PluginCatalogCard",props:{config:{},plugin:{}},emits:["plugin-clicked","custom-plugin-delete"],setup(t,{emit:n}){const o=n,a=t,i=hn.useRouter(),{i18n:{t:r}}=je.useI18n(),l=e.computed(()=>a.config.app==="konnect"?a.config.controlPlaneId:""),s=e.computed(()=>!!(!a.plugin.available||a.plugin.disabledMessage)),c=e.computed(()=>!!(d.value&&!f.value&&l.value)),u=e.computed(()=>{if(s.value)return{};if(d.value){const g=a.config;if(f.value&&g.createCustomRoute)return g.createCustomRoute}return a.config.getCreateRoute(a.plugin.id)}),f=e.computed(()=>a.plugin.id==="custom-plugin-create"),d=e.computed(()=>a.config.app==="konnect"&&a.plugin.group===Y.PluginGroup.CUSTOM_PLUGINS),p=()=>{a.config.app==="konnect"&&o("custom-plugin-delete")},m=(g,y)=>{const C=a.config;a.config.app==="konnect"&&typeof C.getCustomEditRoute=="function"&&i.push(C.getCustomEditRoute(g,y))};return(g,y)=>{const C=e.resolveComponent("KButton"),b=e.resolveComponent("KDropdownItem"),h=e.resolveComponent("KDropdownMenu"),E=e.resolveComponent("RouterLink"),k=e.resolveComponent("KTooltip");return e.openBlock(),e.createElementBlock("div",L1,[e.createVNode(k,{text:t.plugin.disabledMessage},{default:e.withCtx(()=>[e.createVNode(E,{class:e.normalizeClass(["plugin-select-card",{disabled:s.value}]),"data-testid":`${t.plugin.id}-card`,to:u.value},{default:e.withCtx(()=>[e.createElementVNode("div",D1,[e.createElementVNode("div",M1,[e.createVNode(e.unref(yn.PluginIcon),{alt:t.plugin.name,class:"plugin-card-icon",name:t.plugin.id,size:55},null,8,["alt","name"]),e.createElementVNode("span",{class:e.normalizeClass({"non-custom-title":!d.value})},e.toDisplayString(t.plugin.name),3)]),c.value?(e.openBlock(),e.createElementBlock("div",j1,[e.createVNode(h,{"data-testid":"custom-plugin-actions","kpop-attributes":{placement:"bottom-end"},width:"150",onClick:y[1]||(y[1]=e.withModifiers(()=>{},["stop","prevent"]))},{default:e.withCtx(()=>[e.createVNode(C,{appearance:"tertiary",class:"actions-trigger","data-testid":"overflow-actions-button",icon:"",size:"small"},{default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{size:e.unref(uo)},null,8,["size"])]),_:1})]),items:e.withCtx(()=>[e.createVNode(b,{"data-testid":"edit-plugin-schema",onClick:y[0]||(y[0]=e.withModifiers(_=>m(t.plugin.name,t.plugin.customPluginType),["stop","prevent"]))},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.edit")),1)]),_:1}),e.createVNode(b,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:e.withModifiers(p,["stop","prevent"])},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("actions.delete")),1)]),_:1})]),_:1})])):e.createCommentVNode("",!0)]),e.createElementVNode("div",{class:"plugin-card-body","data-testid":`${t.plugin.id}-card-body`,title:t.plugin.available?t.plugin.name:e.unref(r)("plugins.select.unavailable_tooltip")},[t.plugin.description||d.value&&!f.value?(e.openBlock(),e.createElementBlock("div",v1,[d.value&&!f.value?(e.openBlock(),e.createElementBlock("div",U1,e.toDisplayString(e.unref(r)("plugins.select.custom_badge_text")),1)):e.createCommentVNode("",!0),t.plugin.description?(e.openBlock(),e.createElementBlock("div",{key:1,title:t.plugin.description},e.toDisplayString(t.plugin.description),9,q1)):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],8,K1),e.createElementVNode("div",G1,[e.createElementVNode("div",null,e.toDisplayString(f.value?e.unref(r)("actions.create_custom"):e.unref(r)("actions.configure")),1),e.renderSlot(g.$slots,"footer-extra",{},void 0,!0)])]),_:3},8,["class","data-testid","to"])]),_:3},8,["text"])])}}}),[["__scopeId","data-v-f04efe4f"]]),H1=["data-testid"],W1={class:"group-icon-wrapper"},Y1={class:"group-title-text"},J1=["data-testid"],X1=["data-testid"],yd=_e(e.defineComponent({__name:"PluginCatalogGroup",props:{config:{},name:{},plugins:{},showAllCard:{type:Boolean}},emits:["plugin-clicked","revalidate","delete:success"],setup(t,{emit:n}){const o=t,a=e.computed(()=>{switch(o.name){case"Featured":return me.PopularIcon;case"AI":return me.BotIcon;case"Analytics & Monitoring":return me.AnalyticsIcon;case"Authentication":return me.LockIcon;case"Logging":return me.ServiceDocumentIcon;case"Security":return me.SecurityIcon;case"Serverless":return me.RuntimeServerlessIcon;case"Traffic Control":return me.TrafficIcon;case"Transformations":return me.TransformationIcon;case"Deployment":return me.DeployIcon;case"Custom Plugins":return me.CodeblockIcon;default:return null}}),i=n,{i18n:{t:r}}=je.useI18n(),l=e.ref(!1),s=e.computed(()=>o.showAllCard?o.plugins:!l.value&&o.plugins.length>9?o.plugins.slice(0,8):o.plugins),c=e.computed(()=>!o.showAllCard&&!l.value&&o.plugins.length>9);function u(){l.value=!0}const f=e.ref(!1),d=e.ref(null),p=g=>{f.value=!0,d.value={id:g.id,name:g.name,customPluginType:g.customPluginType}},m=g=>{var y;g&&(i("revalidate"),i("delete:success",((y=d.value)==null?void 0:y.name)||"")),f.value=!1,d.value=null};return(g,y)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[t.name?(e.openBlock(),e.createElementBlock("div",{key:0,class:"group-title","data-testid":`plugin-group-${t.name}-title`},[e.createElementVNode("div",W1,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(a.value),{color:e.unref(jl)},null,8,["color"]))]),e.createElementVNode("span",Y1,e.toDisplayString(t.name),1)],8,H1)):e.createCommentVNode("",!0),e.createElementVNode("div",{class:"plugin-card-container","data-testid":`plugin-group-${t.name}`},[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,C=>(e.openBlock(),e.createBlock(z1,{key:`plugin-card-${C.id}`,config:t.config,plugin:C,onCustomPluginDelete:b=>p(C),onPluginClicked:b=>i("plugin-clicked",C)},e.createSlots({_:2},[C.gatewayVersion&&e.unref(vh)(e.unref(Y.GATEWAY_VERSION_TIMESTAMP_MAP)[C.gatewayVersion])?{name:"footer-extra",fn:e.withCtx(()=>[e.createElementVNode("span",{class:"plugin-card-new-badge","data-testid":`plugin-card-${C.id}-new-badge`},e.toDisplayString(e.unref(r)("labels.new")),9,X1)]),key:"0"}:void 0]),1032,["config","plugin","onCustomPluginDelete","onPluginClicked"]))),128)),c.value?(e.openBlock(),e.createElementBlock("div",{key:0,class:"show-all-plugin-card",onClick:u},e.toDisplayString(e.unref(r)("plugins.select.show_all")),1)):e.createCommentVNode("",!0)],8,J1),f.value&&d.value?(e.openBlock(),e.createBlock(Qa,{key:1,config:t.config,plugin:d.value,onClosed:m,onProceed:y[0]||(y[0]=C=>m(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64))}}),[["__scopeId","data-v-9be51009"]]),Z1={class:"plugin-select-grid"},Q1={class:"empty-state-title"},eS={class:"empty-state-description"},tS={key:1},nS=_e(e.defineComponent({__name:"PluginCatalogGrid",props:{config:{},pluginList:{}},emits:["plugin-clicked","delete:success"],setup(t,{emit:n}){const o=Po.concat(To),a=n,{i18n:{t:i}}=je.useI18n(),r=e.ref(xr),l=s=>{a("plugin-clicked",s)};return(s,c)=>{var f,d;const u=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",Z1,[Object.keys(t.pluginList||[]).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(u,{key:0,"action-button-visible":!1,class:"plugins-empty-state","data-testid":"plugins-empty-state","icon-variant":"kong"},{title:e.withCtx(()=>[e.createElementVNode("span",Q1,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_title")),1)]),default:e.withCtx(()=>[e.createElementVNode("span",eS,e.toDisplayString(e.unref(i)("plugins.select.tabs.kong.empty_description")),1)]),_:1})),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(o),p=>{var m;return e.openBlock(),e.createElementBlock(e.Fragment,null,[(m=t.pluginList)!=null&&m[p]?(e.openBlock(),e.createElementBlock("div",{key:p},[e.createVNode(yd,{modelValue:r.value[p],"onUpdate:modelValue":g=>r.value[p]=g,config:t.config,name:p,plugins:t.pluginList[p]||[],"onDelete:success":c[0]||(c[0]=g=>a("delete:success",g)),onPluginClicked:c[1]||(c[1]=g=>l(g))},null,8,["modelValue","onUpdate:modelValue","config","name","plugins"])])):e.createCommentVNode("",!0)],64)}),256)),(d=(f=t.pluginList)==null?void 0:f["Query Result"])!=null&&d.length?(e.openBlock(),e.createElementBlock("div",tS,[e.createVNode(yd,{modelValue:r.value["Query Result"],"onUpdate:modelValue":c[2]||(c[2]=p=>r.value["Query Result"]=p),config:t.config,plugins:t.pluginList["Query Result"]||[],"show-all-card":"",onPluginClicked:c[3]||(c[3]=p=>l(p))},null,8,["modelValue","config","plugins"])])):e.createCommentVNode("",!0)])}}}),[["__scopeId","data-v-a44e9276"]]),oS={class:"plugin-name-cell","data-testid":"plugin-catalog-list-view-name"},rS=["title"],aS=["title"],iS={class:"plugin-action-cell","data-testid":"plugin-catalog-list-view-action"},lS={key:0,class:"plugin-more-action-cell","data-testid":"plugin-catalog-list-view-more-actions"},sS=_e(e.defineComponent({__name:"PluginCatalogListView",props:{config:{},pluginList:{}},emits:["revalidate","delete:success"],setup(t,{emit:n}){const o=n,a=t,{i18n:{t:i}}=je.useI18n(),r=e.computed(()=>C.value.some(k=>{var _;return!!((_=k.plugin)!=null&&_.customPluginType)})),l=e.computed(()=>{const k=[{key:"name",label:i("plugins.select.list.table_headers.name"),sortable:!0},{key:"description",label:i("plugins.select.list.table_headers.description")},{key:"action",hideLabel:!0}];return r.value&&k.push({key:"more-actions",hideLabel:!0}),k}),s=e.computed(()=>{if(!a.pluginList)return[];const k=Object.values(a.pluginList).flat();return Array.from(new Map(k.map(w=>[w.id,w])).values()).map(w=>({id:w.id,name:w.name,description:w.description,plugin:w}))}),c=e.ref(0),u=e.ref(10),f=e.ref(1),d=e.ref(s.value),p=e.ref(!1),m=e.ref(null),g=k=>{p.value=!0,m.value={id:k.id,name:k.name,customPluginType:k.customPluginType}},y=k=>{var _;k&&(o("revalidate"),o("delete:success",((_=m.value)==null?void 0:_.name)||"")),p.value=!1,m.value=null},C=e.computed(()=>{const k=d.value.length,_=Math.max(1,Math.ceil(k/u.value)),x=(Math.min(f.value,_)-1)*u.value;return d.value.slice(x,x+u.value)});e.watch(s,()=>{d.value=[...s.value],f.value=1,c.value++});const b=({page:k})=>{f.value=k},h=({pageSize:k})=>{u.value=k},E=k=>{const{sortColumnKey:_,sortColumnOrder:w}=k;_==="name"&&(d.value=[...d.value].sort((x,O)=>{const K=(x[_]||"").toLowerCase(),I=(O[_]||"").toLowerCase();return K<I?w==="asc"?-1:1:K>I?w==="asc"?1:-1:0}))};return(k,_)=>{const w=e.resolveComponent("KButton"),x=e.resolveComponent("KDropdownItem"),O=e.resolveComponent("KDropdown"),K=e.resolveComponent("KTableView"),I=e.resolveComponent("KCard");return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createVNode(I,{"data-testid":"plugin-catalog-list-view-card"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(K,{key:c.value,class:"plugin-catalog-table","client-sort":"",data:C.value,"data-testid":"plugin-catalog-list-view-table",headers:l.value,"pagination-attributes":{totalCount:s.value.length,currentPage:f.value,initialPageSize:u.value,pageSizes:[10,25,50]},"resize-columns":"","row-key":"id",onPageChange:b,onPageSizeChange:h,onSort:E},{name:e.withCtx(({row:S})=>[e.createElementVNode("span",oS,[e.createVNode(e.unref(yn.PluginIcon),{"data-testid":`plugin-catalog-list-view-${S.plugin.id}-icon`,name:S.plugin.id,size:20},null,8,["data-testid","name"]),e.createElementVNode("span",{class:"plugin-name-text","data-testid":"plugin-catalog-list-view-name-text",title:S.name},e.toDisplayString(S.name),9,rS)])]),description:e.withCtx(({row:S})=>[e.createElementVNode("span",{class:"plugin-description-cell","data-testid":"plugin-catalog-list-view-description",title:S.description},e.toDisplayString(S.description),9,aS)]),action:e.withCtx(({row:S})=>[e.createElementVNode("div",iS,[e.createVNode(w,{appearance:"tertiary","data-testid":"plugin-catalog-list-view-configure-btn",size:"small",to:a.config.getCreateRoute(S.id)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.configure")),1)]),_:1},8,["to"])])]),"more-actions":e.withCtx(({row:S})=>{var P;return[(P=S.plugin)!=null&&P.customPluginType?(e.openBlock(),e.createElementBlock("div",lS,[e.createVNode(O,{appearance:"tertiary",class:"actions-trigger","data-testid":"plugin-catalog-list-view-more-actions-button",icon:"",size:"small"},{items:e.withCtx(()=>{var F,T;return[e.createVNode(x,{"data-testid":"edit-plugin-schema",item:{label:e.unref(i)("actions.edit"),to:(T=(F=t.config).getCustomEditRoute)==null?void 0:T.call(F,S.plugin.name,S.plugin.customPluginType)}},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.edit")),1)]),_:1},8,["item"]),e.createVNode(x,{danger:"","data-testid":"delete-plugin-schema","has-divider":"",onClick:()=>g(S.plugin)},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(i)("actions.delete")),1)]),_:1},8,["onClick"])]}),default:e.withCtx(()=>[e.createVNode(e.unref(me.MoreIcon),{color:e.unref(Dn),size:e.unref(uo)},null,8,["color","size"])]),_:2},1024)])):e.createCommentVNode("",!0)]}),_:1},8,["data","headers","pagination-attributes"]))]),_:1}),p.value&&m.value?(e.openBlock(),e.createBlock(Qa,{key:0,config:t.config,plugin:m.value,onClosed:y,onProceed:_[0]||(_[0]=S=>y(!0))},null,8,["config","plugin"])):e.createCommentVNode("",!0)],64)}}}),[["__scopeId","data-v-9d6526b5"]]),cS={class:"plugin-catalog","data-testid":"plugin-catalog"},dS={class:"plugin-filter","data-testid":"plugin-filter"},uS={class:"plugin-filter-title"},pS={class:"featured-title"},fS={class:"plugin-featured-filter"},mS=["data-testid"],gS={class:"group-title"},hS={class:"plugin-type-filter"},yS=["data-testid"],_S={class:"plugins-container"},bS={class:"plugins-filter-input-container"},kS={class:"icon-container"},wS={key:0},CS={key:3,"aria-live":"polite",class:"plugins-results-container"},ES=_e(e.defineComponent({__name:"PluginCatalog",props:{config:{},disabledPlugins:{},highlightedPluginIds:{},customPluginSupport:{},availableOnServer:{type:Boolean,default:!0}},emits:["loading","plugin-clicked","delete-custom:success"],setup(t,{emit:n}){var U;const o=n,{i18n:{t:a}}=je.useI18n(),{pluginMetaData:i}=je.usePluginMetaData(),{getMessageFromError:r}=le.useErrors(),{sortAlpha:l,objectsAreEqual:s}=le.useHelpers(),c=t,{axiosInstance:u}=le.useAxios((U=c.config)==null?void 0:U.axiosRequestConfig),f=e.useTemplateRef("filter-input"),d=e.ref(""),p=e.ref(!1),m=e.ref(!1),g=e.ref(Object.fromEntries(Po.concat(To).map(q=>[q,!1]))),y=e.ref(!0),C=e.ref(!1),b=e.ref(""),h=e.ref([]),E=e.ref([]),k=e.ref({}),_=e.ref([]),w=e.ref(!1),x=e.computed(()=>w.value?me.GridIcon:me.ListIcon),O=e.computed(()=>{var L;let q=`${c.config.apiBaseUrl}${Je.select[c.config.app].availablePlugins}`;return c.config.app==="konnect"?q=q.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(q=((L=c.config.gatewayInfo)==null?void 0:L.edition)==="community"?`${c.config.apiBaseUrl}${Je.select[c.config.app].availablePluginsForOss}`:q.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),q}),K=e.computed(()=>{if(c.config.app==="konnect"&&c.customPluginSupport==="streaming"){let q=`${c.config.apiBaseUrl}${Je.select[c.config.app].streamingCustomPlugins}`;return q=q.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""),q}return null}),I=e.computed(()=>{if(c.config.entityType&&c.config.entityId){let q=`${c.config.apiBaseUrl}${Je.list[c.config.app].forEntity}`;return c.config.app==="konnect"?q=q.replace(/{controlPlaneId}/gi,c.config.controlPlaneId||""):c.config.app==="kongManager"&&(q=q.replace(/\/{workspace}/gi,c.config.workspace?`/${c.config.workspace}`:"")),q.replace(/{entityType}/gi,c.config.entityType||"").replace(/{entityId}/gi,c.config.entityId||"")}return""}),S=e.computed(()=>{var z;if(!k.value)return{};const q=Object.entries(g.value).filter(([$,N])=>N).map(([$])=>$);let L={};q.length===0&&(L=k.value),q.forEach($=>{k.value[$]&&(L[$]=k.value[$])});const V=d.value.toLowerCase();if(!V)return L;const R=JSON.parse(JSON.stringify(L));for(const $ in L){const N=((z=L[$])==null?void 0:z.filter(B=>[B.name.toLowerCase(),B.id.toLowerCase()].some(W=>Kh(V,W).length===V.length)))||[];N.length?R[$]=N:delete R[$]}const A=Object.values(R).flat().filter($=>!!$),v=Array.from(A.reduce(($,N)=>($.has(N.id)||$.set(N.id,N),$),new Map).values());return v.length?{"Query Result":v}:{}}),P=e.computed(()=>Object.keys(S.value).length>0),F=e.computed(()=>Object.keys(k.value).length>0&&!P.value),T=()=>{Object.keys(g.value).forEach(q=>{g.value[q]=!1})},D=()=>{const q=[...new Set([...Object.keys({...c.availableOnServer?{}:i}),...h.value])].filter(L=>c.config.entityType&&(c.config.entityType==="services"&&i[L]&&!i[L].scope.includes(Y.PluginScope.SERVICE)||c.config.entityType==="routes"&&i[L]&&!i[L].scope.includes(Y.PluginScope.ROUTE)||c.config.entityType==="consumer_groups"&&i[L]&&!i[L].scope.includes(Y.PluginScope.CONSUMER_GROUP)||c.config.entityType==="consumers"&&i[L]&&!i[L].scope.includes(Y.PluginScope.CONSUMER))?!1:L).reduce((L,V)=>{var $;const R=i[V]&&i[V].name||V,A={...i[V],id:V,name:R,available:h.value.includes(V),disabledMessage:"",group:(($=i[V])==null?void 0:$.group)||Y.PluginGroup.CUSTOM_PLUGINS};A.group===Y.PluginGroup.CUSTOM_PLUGINS&&(A.customPluginType=E.value.find(N=>N.name===V)?"streaming":"schema"),c.disabledPlugins&&(A.disabledMessage=c.disabledPlugins[V]);const v=A.group||a("plugins.select.misc_plugins");let z=L[v];return z||(z=[]),z.push(A),z.sort(l("name")),L[v]=z,L},{});return c.highlightedPluginIds&&c.highlightedPluginIds.length>0&&(q.Featured=c.highlightedPluginIds.flatMap(L=>{var R;const V=i[L];return V?{...V,id:L,name:V.name||L,available:h.value.includes(L),disabledMessage:((R=c.disabledPlugins)==null?void 0:R[L])||"",group:V.group||Y.PluginGroup.CUSTOM_PLUGINS}:[]}).filter(Boolean)),q};return e.watch(()=>c.disabledPlugins,(q,L)=>{!s(q||{},L||{})&&!y.value&&(k.value=D())}),e.watch(y,q=>{o("loading",q)}),e.onMounted(async()=>{var q,L;(L=(q=f.value)==null?void 0:q.input)==null||L.focus();try{const{data:V}=await u.get(O.value);if(c.config.app==="konnect"){const{names:R}=V;if(h.value=R||[],K.value){const{data:A}=await u.get(K.value);E.value=A.data||[]}}else if(c.config.app==="kongManager"){const{plugins:{available_on_server:R}}=V;h.value=R?Object.keys(R):[]}}catch(V){C.value=!0,b.value=r(V)}if(I.value)try{const{data:{data:V}}=await u.get(I.value);if(V!=null&&V.length){const R=V.reduce((A,v)=>(v.name&&A.push(v.name),A),[]);_.value=_.value.concat(R)}}catch{}C.value||(k.value=D()),y.value=!1}),(q,L)=>{const V=e.resolveComponent("KButton"),R=e.resolveComponent("KCheckbox"),A=e.resolveComponent("KBadge"),v=e.resolveComponent("KCollapse"),z=e.resolveComponent("KInput"),$=e.resolveComponent("KSkeletonBox"),N=e.resolveComponent("KSkeleton"),B=e.resolveComponent("KEmptyState");return e.openBlock(),e.createElementBlock("div",cS,[e.createElementVNode("div",dS,[e.createElementVNode("div",uS,[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.select.filter.title"))+" ",1),e.createVNode(V,{appearance:"tertiary",class:"clear-selection","data-testid":"clear-filter-selection",disabled:!Object.values(g.value).some(j=>j),onClick:T},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(a)("plugins.select.filter.clear")),1)]),_:1},8,["disabled"])]),e.createVNode(v,{modelValue:p.value,"onUpdate:modelValue":L[0]||(L[0]=j=>p.value=j)},{title:e.withCtx(()=>[e.createElementVNode("div",pS,e.toDisplayString(e.unref(a)("plugins.select.filter.featured")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",fS,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(Po),j=>(e.openBlock(),e.createElementBlock("div",{key:j,class:"plugin-filter-item","data-testid":`plugin-filter-item-${j}`},[e.createVNode(R,{modelValue:g.value[j],"onUpdate:modelValue":W=>g.value[j]=W,label:j},null,8,["modelValue","onUpdate:modelValue","label"]),e.createVNode(A,{appearance:"neutral"},{default:e.withCtx(()=>{var W,X;return[e.createTextVNode(e.toDisplayString(((X=(W=k.value)==null?void 0:W[j])==null?void 0:X.length)||0),1)]}),_:2},1024)],8,mS))),128))])]),_:1},8,["modelValue"]),e.createVNode(v,{modelValue:m.value,"onUpdate:modelValue":L[1]||(L[1]=j=>m.value=j)},{title:e.withCtx(()=>[e.createElementVNode("div",gS,e.toDisplayString(e.unref(a)("plugins.select.filter.type")),1)]),default:e.withCtx(()=>[e.createElementVNode("div",hS,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(To),j=>(e.openBlock(),e.createElementBlock("div",{key:j,class:"plugin-filter-item","data-testid":`plugin-filter-item-${j}`},[e.createVNode(R,{modelValue:g.value[j],"onUpdate:modelValue":W=>g.value[j]=W,"data-testid":`plugin-filter-checkbox-${j}`,label:j},null,8,["modelValue","onUpdate:modelValue","data-testid","label"]),e.createVNode(A,{appearance:"neutral","data-testid":`plugin-filter-count-${j}`},{default:e.withCtx(()=>{var W,X;return[e.createTextVNode(e.toDisplayString(((X=(W=k.value)==null?void 0:W[j])==null?void 0:X.length)||0),1)]}),_:2},1032,["data-testid"])],8,yS))),128))])]),_:1},8,["modelValue"])]),e.createElementVNode("div",_S,[e.createElementVNode("div",bS,[e.createVNode(z,{ref:"filter-input",modelValue:d.value,"onUpdate:modelValue":L[2]||(L[2]=j=>d.value=j),modelModifiers:{trim:!0},class:"plugins-filter-input","data-testid":"plugins-filter-input",placeholder:e.unref(a)("search.placeholder.search_plugins"),type:"search"},null,8,["modelValue","placeholder"]),e.createElementVNode("div",kS,[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(x.value),{class:"plugins-filter-icon",color:e.unref(by),onClick:L[3]||(L[3]=j=>w.value=!w.value)},null,8,["color"]))])]),y.value?(e.openBlock(),e.createElementBlock("section",wS,[e.createVNode($,{class:"plugins-skeleton-title",width:"10"}),e.createVNode(N,{"card-count":8,class:"plugins-skeleton-cards",type:"card"})])):C.value?(e.openBlock(),e.createBlock(B,{key:1,"action-button-visible":!1,"data-testid":"plugins-fetch-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(b.value),1)]),_:1})):F.value&&d.value?(e.openBlock(),e.createBlock(B,{key:2,"action-button-visible":!1,"data-testid":"plugins-empty-state","icon-variant":"search"},{default:e.withCtx(()=>[e.createElementVNode("h5",null,e.toDisplayString(e.unref(a)("search.no_results",{filter:d.value})),1)]),_:1})):(e.openBlock(),e.createElementBlock("section",CS,[w.value?(e.openBlock(),e.createBlock(sS,{key:0,config:t.config,"plugin-list":S.value,"onDelete:success":L[4]||(L[4]=j=>q.$emit("delete-custom:success",j))},null,8,["config","plugin-list"])):(e.openBlock(),e.createBlock(nS,{key:1,config:t.config,"plugin-list":S.value,"onDelete:success":L[5]||(L[5]=j=>q.$emit("delete-custom:success",j)),onPluginClicked:L[6]||(L[6]=j=>q.$emit("plugin-clicked",j))},null,8,["config","plugin-list"]))]))])])}}}),[["__scopeId","data-v-3e090969"]]),NS={key:1,class:"datakit-config-card-canvas"},xS={class:"config-card-details-label","data-testid":"datakit-configuration-label"},SS={class:"config-card-details-value datakit-canvas-container","data-testid":"datakit-configuration-canvas"},AS={class:"canvas-wrapper"},IS=_e(e.defineComponent({__name:"DatakitConfigCardCanvas",props:{pluginData:{},item:{}},setup(t){const n=e.computed(()=>{var o;return ld.safeParse((o=t.pluginData)==null?void 0:o.config).success});return Ic(t.pluginData),(o,a)=>{const i=e.resolveComponent("KLabel");return n.value?(e.openBlock(),e.createElementBlock("div",NS,[e.createElementVNode("div",xS,[e.createVNode(i,null,{default:e.withCtx(()=>[...a[0]||(a[0]=[e.createElementVNode("span",{class:"label-content"}," Nodes ",-1)])]),_:1})]),e.createElementVNode("div",SS,[e.createElementVNode("div",AS,[e.createVNode(Ha,{class:"datakit-flow-panels",mode:"view",resizable:""})])])])):(e.openBlock(),e.createBlock(e.unref(le.ConfigCardItem),{key:0,item:t.item},null,8,["item"]))}}}),[["__scopeId","data-v-9efbc5e9"]]),PS={class:"kong-ui-entity-plugin-config-card"},TS={class:"name-cell-wrapper"},OS={class:"info-name"},VS={key:0},BS={key:0},RS={key:0},$S={key:0},FS={key:0},oi="config",LS=_e(e.defineComponent({__name:"PluginConfigCard",props:{config:{type:Object,required:!0,validator:t=>!(!t||!["konnect","kongManager"].includes(t==null?void 0:t.app)||t.app==="konnect"&&!t.controlPlaneId||t.app==="kongManager"&&typeof t.workspace!="string"||!t.entityId||!t.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(t,{emit:n}){var k;const o=n,a=t,{i18n:{t:i}}=je.useI18n(),r=je.usePluginMetaData(),{setFieldType:l}=je.usePluginHelpers(),{getPropValue:s}=le.useHelpers(),c=e.computed(()=>{var w;let _=(w=Je.item[a.config.app])==null?void 0:w[a.scopedEntityType?"forEntity":"all"].replace(/{entityType}/gi,a.scopedEntityType).replace(/{entityId}/gi,a.scopedEntityId).concat(a.expandPartial?"?expand_partials=true":"");if(a.config.app==="konnect"){const x=a.expandPartial?"&":"?";_=_.concat(`${x}__ui_data=true`)}return _}),u=e.computed(()=>{var x,O;const _={},w=((x=b.value)==null?void 0:x.fields)||[];for(let K=0;K<w.length;K++){const I=b.value.fields[K],S=(O=Object.keys(I))==null?void 0:O[0];l(_,S,I[S])}return{..._,instance_name:{section:le.ConfigurationSchemaSection.Basic,order:1.5},consumer:{label:i("plugins.fields.consumer"),section:le.ConfigurationSchemaSection.Basic,order:6},route:{label:i("plugins.fields.route"),section:le.ConfigurationSchemaSection.Basic,order:6},service:{label:i("plugins.fields.service"),section:le.ConfigurationSchemaSection.Basic,order:6},consumer_group:{label:i("plugins.fields.consumer_group"),section:le.ConfigurationSchemaSection.Basic,order:6},protocols:{type:le.ConfigurationSchemaType.BadgeTag,section:le.ConfigurationSchemaSection.Basic,order:7}}}),f=e.computed(()=>{var w,x,O;if(!((w=b.value)!=null&&w.fields))return[];const _=(x=b.value.fields)==null?void 0:x.find(K=>{var S;return((S=Object.keys(K))==null?void 0:S[0])===oi});return((O=_==null?void 0:_[oi])==null?void 0:O.fields)||[]}),d=e.computed(()=>{var w,x;const _={};if(!f.value)return _;for(let O=0;O<((w=f.value)==null?void 0:w.length);O++){const K=f.value[O],I=(x=Object.keys(K))==null?void 0:x[0],S=K[I];S.required&&(_[I]={order:1}),l(_,I,S)}return _}),p=_=>{var x;const w=(x=r.pluginMetaData[a.config.pluginType])==null?void 0:x.scope;return w?Object.fromEntries(Object.entries(_).filter(([O,K])=>K?!0:!(O==="service"&&!w.includes(Y.PluginScope.SERVICE)||O==="route"&&!w.includes(Y.PluginScope.ROUTE)||O==="consumer"&&!w.includes(Y.PluginScope.CONSUMER)||O==="consumer_group"&&!w.includes(Y.PluginScope.CONSUMER_GROUP)))):_},m=_=>sn(_,"__ui_data"),{getMessageFromError:g}=le.useErrors(),{axiosInstance:y}=le.useAxios((k=a.config)==null?void 0:k.axiosRequestConfig),C=e.computed(()=>{var w,x;let _=`${a.config.apiBaseUrl}${Je.form[a.config.app].pluginSchema}`;return a.config.app==="konnect"?_=_.replace(/{controlPlaneId}/gi,((w=a.config)==null?void 0:w.controlPlaneId)||""):a.config.app==="kongManager"&&(_=_.replace(/\/{workspace}/gi,(x=a.config)!=null&&x.workspace?`/${a.config.workspace}`:"")),_=_.replace(/{plugin}/gi,a.config.pluginType),_}),b=e.ref({});le.useSchemaProvider(b);const h=e.ref(!1),E=e.ref("");return e.onBeforeMount(async()=>{h.value=!0;try{const{data:_}=await y.get(C.value);b.value=_}catch(_){E.value=g(_),o("error:fetch-schema",_)}finally{h.value=!1}}),(_,w)=>{const x=e.resolveComponent("KSkeleton"),O=e.resolveComponent("KEmptyState"),K=e.resolveComponent("KCopy");return e.openBlock(),e.createElementBlock("div",PS,[h.value?(e.openBlock(),e.createBlock(x,{key:0,"data-testid":"plugin-config-card-loader","table-columns":2,type:"table"})):E.value?(e.openBlock(),e.createBlock(O,{key:1,"data-testid":"plugin-config-card-schema-error","icon-variant":"error"},{default:e.withCtx(()=>[e.createElementVNode("h3",null,e.toDisplayString(E.value),1)]),_:1})):(e.openBlock(),e.createBlock(e.unref(le.EntityBaseConfigCard),{key:2,"code-block-record-formatter":m,config:t.config,"config-card-doc":t.configCardDoc,"config-schema":u.value,"entity-type":e.unref(le.SupportedEntityType).Plugin,"fetch-url":c.value,"hide-title":t.hideTitle,"plugin-config-key":oi,"plugin-config-schema":d.value,"record-resolver":p,"onFetch:error":w[0]||(w[0]=I=>_.$emit("fetch:error",I)),"onFetch:success":w[1]||(w[1]=I=>_.$emit("fetch:success",I)),onLoading:w[2]||(w[2]=I=>_.$emit("loading",I))},e.createSlots({name:e.withCtx(I=>[e.createElementVNode("div",TS,[e.createVNode(e.unref(yn.PluginIcon),{class:"plugin-icon",name:e.unref(s)("rowValue",I),size:24},null,8,["name"]),e.createElementVNode("span",OS,e.toDisplayString(e.unref(r).getDisplayName(e.unref(s)("rowValue",I))),1)])]),consumer:e.withCtx(I=>[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:e.unref(s)("rowValue",I).id,value:e.unref(s)("rowValue",I).id,type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>_.$emit("navigation-click",e.unref(s)("rowValue",I).id,"consumer")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(K,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"consumer-copy-uuid",text:e.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",VS,"–"))]),route:e.withCtx(I=>[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:e.unref(s)("rowValue",I).id,value:e.unref(s)("rowValue",I).id,type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>_.$emit("navigation-click",e.unref(s)("rowValue",I).id,"route")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(K,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"route-copy-uuid",text:e.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",BS,"–"))]),service:e.withCtx(I=>[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:e.unref(s)("rowValue",I).id,value:e.unref(s)("rowValue",I).id,type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>_.$emit("navigation-click",e.unref(s)("rowValue",I).id,"service")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(K,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"service-copy-uuid",text:e.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",RS,"–"))]),consumer_group:e.withCtx(I=>[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:e.unref(s)("rowValue",I).id,value:e.unref(s)("rowValue",I).id,type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>_.$emit("navigation-click",e.unref(s)("rowValue",I).id,"consumer_group")},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(K,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"consumer-group-copy-uuid",text:e.unref(s)("rowValue",I).id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",$S,"–"))]),partials:e.withCtx(I=>{var S,P,F,T,D,U,q,L,V;return[e.unref(s)("rowValue",I)?t.showIdAsLink?(e.openBlock(),e.createBlock(e.unref(le.InternalLinkItem),{key:1,item:{key:(P=(S=e.unref(s)("rowValue",I))==null?void 0:S[0])==null?void 0:P.id,value:((T=(F=e.unref(s)("rowValue",I))==null?void 0:F[0])==null?void 0:T.id)+((U=(D=e.unref(s)("rowValue",I))==null?void 0:D[0])!=null&&U.name?"/"+((L=(q=e.unref(s)("rowValue",I))==null?void 0:q[0])==null?void 0:L.name):""),type:e.unref(le.ConfigurationSchemaType).LinkInternal},onNavigationClick:()=>{var R,A;return _.$emit("navigation-click",(A=(R=e.unref(s)("rowValue",I))==null?void 0:R[0])==null?void 0:A.id,"partial")}},null,8,["item","onNavigationClick"])):(e.openBlock(),e.createBlock(K,{key:2,"copy-tooltip":e.unref(i)("copy.tooltip",{label:e.unref(s)("row",I).label}),"data-testid":"partial-copy-uuid",text:(V=e.unref(s)("rowValue",I))==null?void 0:V[0].id},null,8,["copy-tooltip","text"])):(e.openBlock(),e.createElementBlock("span",FS,"–"))]}),_:2},[t.config.pluginType==="datakit"&&t.config.app==="konnect"?{name:"config-card-item-nodes",fn:e.withCtx(I=>[e.createVNode(IS,{item:I.row,"plugin-data":I.record},null,8,["item","plugin-data"])]),key:"0"}:void 0]),1032,["config","config-card-doc","config-schema","entity-type","fetch-url","hide-title","plugin-config-schema"]))])}}}),[["__scopeId","data-v-0546ce1a"]]),{usePluginMetaData:DS,useProvideExperimentalFreeForms:MS}=je;Object.defineProperty(xe,"PluginGroup",{enumerable:!0,get:()=>Y.PluginGroup}),Object.defineProperty(xe,"PluginScope",{enumerable:!0,get:()=>Y.PluginScope}),Object.defineProperty(xe,"PluginIcon",{enumerable:!0,get:()=>yn.PluginIcon}),Object.defineProperty(xe,"getPluginIconURL",{enumerable:!0,get:()=>yn.getPluginIconURL}),xe.EXPERIMENTAL_FREE_FORM_PROVIDER=ea,xe.EntityTypeIdField=_n,xe.FEATURE_FLAGS=Ho,xe.FREE_FORM_SCHEMA_MAP_KEY=Ln,xe.PLUGIN_GROUPS_COLLAPSE_STATUS=xr,xe.PluginCatalog=ES,xe.PluginConfigCard=LS,xe.PluginFeaturedArray=Po,xe.PluginForm=n1,xe.PluginGroupArray=si,xe.PluginGroupArraySortedAlphabetically=To,xe.PluginList=u1,xe.PluginPartialType=Io,xe.PluginSelect=F1,xe.PluginSelectCard=Za,xe.PluginSelectGrid=ni,xe.TOASTER_PROVIDER=Rl,xe.pluginEndpoints=Je,xe.usePluginMetaData=DS,xe.useProvideExperimentalFreeForms=MS,Object.defineProperty(xe,Symbol.toStringTag,{value:"Module"})}));
|