From 1af89b4683f2c5d953fc7005b56b532d0b5daeb6 Mon Sep 17 00:00:00 2001 From: Pavel Bodiachevskii Date: Fri, 1 Sep 2023 03:04:37 +0400 Subject: [PATCH] feat: AsyncAPI 2.6.0 --- .../idea/_core/AsyncAPISchemaHtmlRenderer.kt | 4 +- .../idea/_core/AsyncAPISchemaRecognizer.kt | 2 +- src/main/resources/schema/asyncapi-2.6.0.json | 3180 +++++++++++++++++ ...min.css => default(1.0.0-next.48).min.css} | 0 src/main/resources/ui/index(1.0.0-next.43).js | 45 - src/main/resources/ui/index(1.0.0-next.48).js | 51 + .../_core/AsyncAPIJsonSchemaProviderTest.kt | 33 + .../_core/AsyncAPISchemaRecognizerTest.kt | 26 + .../plugin/idea/_core/JsonFileXPathTest.kt | 4 + .../plugin/idea/_core/YamlFileXPathTest.kt | 4 + ...cAPISchemaCompletionContributorJsonTest.kt | 11 + ...cAPISchemaCompletionContributorYamlTest.kt | 17 + .../AsyncAPIJsonSchemaInspectionTest.kt | 13 + .../v2_6_0/JsonReferenceVariantsTest.kt | 165 + .../v2_6_0/YamlReferenceVariantsTest.kt | 165 + src/test/resources/asyncapi-2.6.0.json | 65 + src/test/resources/asyncapi-2.6.0.yaml | 41 + .../json/completion/2.6.0/\"c\".json" | 4 + .../testData/json/completion/2.6.0/c.json | 4 + ...-> messages -> UserSignedUp -> \"p\".json" | 66 + ...s -> messages -> UserSignedUp -> \"p.json" | 66 + ...ents -> messages -> UserSignedUp -> p.json | 66 + .../json/completion/2.6.0/info -> \"i\".json" | 6 + .../json/completion/2.6.0/info -> i.json | 6 + .../json/inspection/2.6.0/extra keys.json | 67 + .../inspection/2.6.0/without channels.json | 39 + .../json/reference/completion/2.6.0/$^^.json | 65 + .../json/reference/completion/2.6.0/123.json | 65 + .../json/reference/completion/2.6.0/_.json | 65 + .../json/reference/completion/2.6.0/co.json | 65 + .../json/reference/completion/2.6.0/comp.json | 65 + .../completion/2.6.0/components.json | 65 + .../completion/2.6.0/components_m.json | 65 + .../2.6.0/components_messages_u.json | 65 + .../json/reference/completion/2.6.0/i.json | 65 + .../json/reference/completion/2.6.0/in.json | 65 + .../json/reference/completion/2.6.0/inf.json | 65 + .../reference/completion/2.6.0/qwerty.json | 65 + .../json/reference/completion/2.6.0/ref.json | 3 + .../reference/completion/2.6.0/reference.json | 65 + .../yaml/completion/2.6.0/\"c\".yaml" | 3 + .../testData/yaml/completion/2.6.0/c.yaml | 3 + ...-> messages -> UserSignedUp -> \"p\".yaml" | 42 + ...s -> messages -> UserSignedUp -> \"p.yaml" | 42 + ...ents -> messages -> UserSignedUp -> p.yaml | 42 + .../yaml/completion/2.6.0/info -> \"i\".yaml" | 4 + .../yaml/completion/2.6.0/info -> i.yaml | 4 + .../yaml/reference/completion/2.6.0/$^^.yaml | 41 + .../yaml/reference/completion/2.6.0/123.yaml | 41 + .../yaml/reference/completion/2.6.0/_.yaml | 41 + .../yaml/reference/completion/2.6.0/co.yaml | 41 + .../yaml/reference/completion/2.6.0/comp.yaml | 41 + .../completion/2.6.0/components.yaml | 41 + .../completion/2.6.0/components_m.yaml | 41 + .../2.6.0/components_messages_u.yaml | 41 + .../yaml/reference/completion/2.6.0/i.yaml | 41 + .../yaml/reference/completion/2.6.0/in.yaml | 41 + .../yaml/reference/completion/2.6.0/inf.yaml | 41 + .../reference/completion/2.6.0/qwerty.yaml | 41 + .../yaml/reference/completion/2.6.0/ref.yaml | 2 + .../reference/completion/2.6.0/reference.yaml | 41 + 61 files changed, 5625 insertions(+), 48 deletions(-) create mode 100644 src/main/resources/schema/asyncapi-2.6.0.json rename src/main/resources/ui/{default(1.0.0-next.43).min.css => default(1.0.0-next.48).min.css} (100%) delete mode 100644 src/main/resources/ui/index(1.0.0-next.43).js create mode 100644 src/main/resources/ui/index(1.0.0-next.48).js create mode 100644 src/test/kotlin/com/asyncapi/plugin/idea/completion/v2_6_0/AsyncAPISchemaCompletionContributorJsonTest.kt create mode 100644 src/test/kotlin/com/asyncapi/plugin/idea/completion/v2_6_0/AsyncAPISchemaCompletionContributorYamlTest.kt create mode 100644 src/test/kotlin/com/asyncapi/plugin/idea/inspection/v2_6_0/AsyncAPIJsonSchemaInspectionTest.kt create mode 100644 src/test/kotlin/com/asyncapi/plugin/idea/psi/reference/v2_6_0/JsonReferenceVariantsTest.kt create mode 100644 src/test/kotlin/com/asyncapi/plugin/idea/psi/reference/v2_6_0/YamlReferenceVariantsTest.kt create mode 100644 src/test/resources/asyncapi-2.6.0.json create mode 100644 src/test/resources/asyncapi-2.6.0.yaml create mode 100644 "src/test/testData/json/completion/2.6.0/\"c\".json" create mode 100644 src/test/testData/json/completion/2.6.0/c.json create mode 100644 "src/test/testData/json/completion/2.6.0/components -> messages -> UserSignedUp -> \"p\".json" create mode 100644 "src/test/testData/json/completion/2.6.0/components -> messages -> UserSignedUp -> \"p.json" create mode 100644 src/test/testData/json/completion/2.6.0/components -> messages -> UserSignedUp -> p.json create mode 100644 "src/test/testData/json/completion/2.6.0/info -> \"i\".json" create mode 100644 src/test/testData/json/completion/2.6.0/info -> i.json create mode 100644 src/test/testData/json/inspection/2.6.0/extra keys.json create mode 100644 src/test/testData/json/inspection/2.6.0/without channels.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/$^^.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/123.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/_.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/co.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/comp.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/components.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/components_m.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/components_messages_u.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/i.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/in.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/inf.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/qwerty.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/ref.json create mode 100644 src/test/testData/json/reference/completion/2.6.0/reference.json create mode 100644 "src/test/testData/yaml/completion/2.6.0/\"c\".yaml" create mode 100644 src/test/testData/yaml/completion/2.6.0/c.yaml create mode 100644 "src/test/testData/yaml/completion/2.6.0/components -> messages -> UserSignedUp -> \"p\".yaml" create mode 100644 "src/test/testData/yaml/completion/2.6.0/components -> messages -> UserSignedUp -> \"p.yaml" create mode 100644 src/test/testData/yaml/completion/2.6.0/components -> messages -> UserSignedUp -> p.yaml create mode 100644 "src/test/testData/yaml/completion/2.6.0/info -> \"i\".yaml" create mode 100644 src/test/testData/yaml/completion/2.6.0/info -> i.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/$^^.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/123.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/_.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/co.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/comp.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/components.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/components_m.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/components_messages_u.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/i.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/in.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/inf.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/qwerty.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/ref.yaml create mode 100644 src/test/testData/yaml/reference/completion/2.6.0/reference.yaml diff --git a/src/main/kotlin/com/asyncapi/plugin/idea/_core/AsyncAPISchemaHtmlRenderer.kt b/src/main/kotlin/com/asyncapi/plugin/idea/_core/AsyncAPISchemaHtmlRenderer.kt index 93fbad8..3e34221 100644 --- a/src/main/kotlin/com/asyncapi/plugin/idea/_core/AsyncAPISchemaHtmlRenderer.kt +++ b/src/main/kotlin/com/asyncapi/plugin/idea/_core/AsyncAPISchemaHtmlRenderer.kt @@ -28,8 +28,8 @@ class AsyncAPISchemaHtmlRenderer { private val urlProvider = service() private val schemaTemplateUrl = "/ui/index.html" - private val schemaTemplateCssUrl = "default(1.0.0-next.43).min.css" - private val schemaTemplateJsUrl = "index(1.0.0-next.43).js" + private val schemaTemplateCssUrl = "default(1.0.0-next.48).min.css" + private val schemaTemplateJsUrl = "index(1.0.0-next.48).js" fun render(request: FullHttpRequest, schemaUrl: String?): String { schemaUrl ?: return "schema: not found." diff --git a/src/main/kotlin/com/asyncapi/plugin/idea/_core/AsyncAPISchemaRecognizer.kt b/src/main/kotlin/com/asyncapi/plugin/idea/_core/AsyncAPISchemaRecognizer.kt index 7a525d3..a54bfde 100644 --- a/src/main/kotlin/com/asyncapi/plugin/idea/_core/AsyncAPISchemaRecognizer.kt +++ b/src/main/kotlin/com/asyncapi/plugin/idea/_core/AsyncAPISchemaRecognizer.kt @@ -46,7 +46,7 @@ class AsyncAPISchemaRecognizer { fun isSupported(version: String?): Boolean { return when (version) { - "2.0.0", "2.1.0", "2.2.0", "2.3.0", "2.4.0", "2.5.0" -> true + "2.0.0", "2.1.0", "2.2.0", "2.3.0", "2.4.0", "2.5.0", "2.6.0" -> true else -> false } } diff --git a/src/main/resources/schema/asyncapi-2.6.0.json b/src/main/resources/schema/asyncapi-2.6.0.json new file mode 100644 index 0000000..de200c4 --- /dev/null +++ b/src/main/resources/schema/asyncapi-2.6.0.json @@ -0,0 +1,3180 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "title": "AsyncAPI 2.6.0 schema.", + "type": "object", + "required": [ + "asyncapi", + "info", + "channels" + ], + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "asyncapi": { + "type": "string", + "enum": [ + "2.6.0" + ], + "description": "The AsyncAPI specification version of this document." + }, + "id": { + "type": "string", + "description": "A unique id representing the application.", + "format": "uri" + }, + "info": { + "$ref": "#/definitions/info" + }, + "servers": { + "$ref": "#/definitions/servers" + }, + "defaultContentType": { + "type": "string" + }, + "channels": { + "$ref": "#/definitions/channels" + }, + "components": { + "$ref": "#/definitions/components" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/tag" + }, + "uniqueItems": true + }, + "externalDocs": { + "$ref": "#/definitions/externalDocs" + } + }, + "definitions": { + "specificationExtension": { + "description": "Any property starting with x- is valid.", + "additionalProperties": true, + "additionalItems": true + }, + "info": { + "type": "object", + "description": "The object provides metadata about the API. The metadata can be used by the clients if needed.", + "required": [ + "version", + "title" + ], + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "title": { + "type": "string", + "description": "A unique and precise title of the API." + }, + "version": { + "type": "string", + "description": "A semantic version number of the API." + }, + "description": { + "type": "string", + "description": "A longer description of the API. Should be different from the title. CommonMark is allowed." + }, + "termsOfService": { + "type": "string", + "description": "A URL to the Terms of Service for the API. MUST be in the format of a URL.", + "format": "uri" + }, + "contact": { + "$ref": "#/definitions/contact" + }, + "license": { + "$ref": "#/definitions/license" + } + }, + "examples": [ + { + "title": "AsyncAPI Sample App", + "description": "This is a sample server.", + "termsOfService": "https://asyncapi.org/terms/", + "contact": { + "name": "API Support", + "url": "https://www.example.com/support", + "email": "support@example.com" + }, + "license": { + "name": "Apache 2.0", + "url": "https://www.apache.org/licenses/LICENSE-2.0.html" + } + } + ] + }, + "contact": { + "type": "object", + "description": "Contact information for the exposed API.", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "The identifying name of the contact person/organization." + }, + "url": { + "type": "string", + "description": "The URL pointing to the contact information.", + "format": "uri" + }, + "email": { + "type": "string", + "description": "The email address of the contact person/organization.", + "format": "email" + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "examples": [ + { + "name": "API Support", + "url": "https://www.example.com/support", + "email": "support@example.com" + } + ] + }, + "license": { + "type": "object", + "required": [ + "name" + ], + "description": "License information for the exposed API.", + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "The name of the license type. It's encouraged to use an OSI compatible license." + }, + "url": { + "type": "string", + "description": "The URL pointing to the license.", + "format": "uri" + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "examples": [ + { + "name": "Apache 2.0", + "url": "https://www.apache.org/licenses/LICENSE-2.0.html" + } + ] + }, + "servers": { + "description": "The Servers Object is a map of Server Objects.", + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/server" + } + ] + }, + "examples": [ + { + "development": { + "url": "development.gigantic-server.com", + "description": "Development server", + "protocol": "amqp", + "protocolVersion": "0.9.1", + "tags": [ + { + "name": "env:development", + "description": "This environment is meant for developers to run their own tests" + } + ] + }, + "staging": { + "url": "staging.gigantic-server.com", + "description": "Staging server", + "protocol": "amqp", + "protocolVersion": "0.9.1", + "tags": [ + { + "name": "env:staging", + "description": "This environment is a replica of the production environment" + } + ] + }, + "production": { + "url": "api.gigantic-server.com", + "description": "Production server", + "protocol": "amqp", + "protocolVersion": "0.9.1", + "tags": [ + { + "name": "env:production", + "description": "This environment is the live environment available for final users" + } + ] + } + } + ] + }, + "Reference": { + "type": "object", + "required": [ + "$ref" + ], + "properties": { + "$ref": { + "$ref": "#/definitions/ReferenceObject" + } + } + }, + "ReferenceObject": { + "type": "string", + "description": "A simple object to allow referencing other components in the specification, internally and externally.", + "format": "uri-reference", + "examples": [ + { + "$ref": "#/components/schemas/Pet" + } + ] + }, + "server": { + "type": "object", + "description": "An object representing a message broker, a server or any other kind of computer program capable of sending and/or receiving data", + "required": [ + "url", + "protocol" + ], + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "url": { + "type": "string", + "description": "A URL to the target host. This URL supports Server Variables and MAY be relative, to indicate that the host location is relative to the location where the AsyncAPI document is being served." + }, + "description": { + "type": "string", + "description": "An optional string describing the host designated by the URL. CommonMark syntax MAY be used for rich text representation." + }, + "protocol": { + "type": "string", + "description": "The protocol this URL supports for connection. Supported protocol include, but are not limited to: amqp, amqps, http, https, ibmmq, jms, kafka, kafka-secure, anypointmq, mqtt, secure-mqtt, solace, stomp, stomps, ws, wss, mercure, googlepubsub." + }, + "protocolVersion": { + "type": "string", + "description": "The version of the protocol used for connection. For instance: AMQP 0.9.1, HTTP 2.0, Kafka 1.0.0, etc." + }, + "variables": { + "description": "A map between a variable name and its value. The value is used for substitution in the server's URL template.", + "$ref": "#/definitions/serverVariables" + }, + "security": { + "type": "array", + "description": "A declaration of which security mechanisms can be used with this server. The list of values includes alternative security requirement objects that can be used. ", + "items": { + "$ref": "#/definitions/SecurityRequirement" + } + }, + "bindings": { + "description": "A map where the keys describe the name of the protocol and the values describe protocol-specific definitions for the server.", + "$ref": "#/definitions/bindingsObject" + }, + "tags": { + "type": "array", + "description": "A list of tags for logical grouping and categorization of servers.", + "items": { + "$ref": "#/definitions/tag" + }, + "uniqueItems": true + } + }, + "examples": [ + { + "url": "development.gigantic-server.com", + "description": "Development server", + "protocol": "kafka", + "protocolVersion": "1.0.0" + } + ] + }, + "serverVariables": { + "type": "object", + "description": "A map between a variable name and its value. The value is used for substitution in the server's URL template.", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/serverVariable" + } + ] + } + }, + "serverVariable": { + "type": "object", + "description": "An object representing a Server Variable for server URL template substitution.", + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "enum": { + "type": "array", + "description": "An enumeration of string values to be used if the substitution options are from a limited set.", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "default": { + "type": "string", + "description": "The default value to use for substitution, and to send, if an alternate value is not supplied." + }, + "description": { + "type": "string", + "description": "An optional description for the server variable. " + }, + "examples": { + "type": "array", + "description": "An array of examples of the server variable.", + "items": { + "type": "string" + } + } + } + }, + "SecurityRequirement": { + "type": "object", + "description": "Lists of the required security schemes that can be used to execute an operation", + "additionalProperties": { + "type": "array", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "examples": [ + { + "petstore_auth": [ + "write:pets", + "read:pets" + ] + } + ] + }, + "bindingsObject": { + "type": "object", + "description": "Map describing protocol-specific definitions for a server.", + "additionalProperties": true, + "properties": { + "http": {}, + "ws": {}, + "amqp": {}, + "amqp1": {}, + "mqtt": {}, + "mqtt5": {}, + "kafka": {}, + "anypointmq": {}, + "nats": {}, + "jms": {}, + "sns": {}, + "sqs": {}, + "stomp": {}, + "redis": {}, + "ibmmq": {}, + "solace": {}, + "googlepubsub": {}, + "pulsar": {} + } + }, + "tag": { + "type": "object", + "description": "Allows adding meta data to a single tag.", + "additionalProperties": false, + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the tag." + }, + "description": { + "type": "string", + "description": "A short description for the tag." + }, + "externalDocs": { + "description": "Additional external documentation for this tag.", + "$ref": "#/definitions/externalDocs" + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "examples": [ + { + "name": "user", + "description": "User-related messages" + } + ] + }, + "externalDocs": { + "type": "object", + "additionalProperties": false, + "description": "Allows referencing an external resource for extended documentation.", + "required": [ + "url" + ], + "properties": { + "description": { + "type": "string", + "description": "A short description of the target documentation." + }, + "url": { + "type": "string", + "format": "uri", + "description": "The URL for the target documentation. This MUST be in the form of an absolute URL." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "examples": [ + { + "description": "Find more info here", + "url": "https://example.com" + } + ] + }, + "channels": { + "type": "object", + "description": "Holds the relative paths to the individual channel and their operations. Channel paths are relative to servers.", + "propertyNames": { + "type": "string", + "format": "uri-template", + "minLength": 1 + }, + "additionalProperties": { + "$ref": "#/definitions/channelItem" + }, + "examples": [ + { + "user/signedup": { + "subscribe": { + "message": { + "$ref": "#/components/messages/userSignedUp" + } + } + } + } + ] + }, + "channelItem": { + "type": "object", + "description": "Describes the operations available on a single channel.", + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "$ref": { + "$ref": "#/definitions/ReferenceObject" + }, + "parameters": { + "$ref": "#/definitions/parameters" + }, + "description": { + "type": "string", + "description": "A description of the channel." + }, + "servers": { + "type": "array", + "description": "The names of the servers on which this channel is available. If absent or empty then this channel must be available on all servers.", + "items": { + "type": "string" + }, + "uniqueItems": true + }, + "publish": { + "$ref": "#/definitions/operation" + }, + "subscribe": { + "$ref": "#/definitions/operation" + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "bindings": { + "$ref": "#/definitions/bindingsObject" + } + }, + "examples": [ + { + "description": "This channel is used to exchange messages about users signing up", + "subscribe": { + "summary": "A user signed up.", + "message": { + "description": "A longer description of the message", + "payload": { + "type": "object", + "properties": { + "user": { + "$ref": "#/components/schemas/user" + }, + "signup": { + "$ref": "#/components/schemas/signup" + } + } + } + } + }, + "bindings": { + "amqp": { + "is": "queue", + "queue": { + "exclusive": true + } + } + } + }, + { + "subscribe": { + "message": { + "oneOf": [ + { + "$ref": "#/components/messages/signup" + }, + { + "$ref": "#/components/messages/login" + } + ] + } + } + }, + { + "description": "This application publishes WebUICommand messages to an AMQP queue on RabbitMQ brokers in the Staging and Production environments.", + "servers": [ + "rabbitmqBrokerInProd", + "rabbitmqBrokerInStaging" + ], + "subscribe": { + "message": { + "$ref": "#/components/messages/WebUICommand" + } + }, + "bindings": { + "amqp": { + "is": "queue" + } + } + } + ] + }, + "parameters": { + "type": "object", + "description": "JSON objects describing reusable channel parameters.", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/parameter" + } + ] + }, + "examples": [ + { + "user/{userId}/signup": { + "parameters": { + "userId": { + "description": "Id of the user.", + "schema": { + "type": "string" + } + } + }, + "subscribe": { + "message": { + "$ref": "#/components/messages/userSignedUp" + } + } + } + } + ] + }, + "parameter": { + "description": "Describes a parameter included in a channel name.", + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "description": { + "type": "string", + "description": "A brief description of the parameter. This could contain examples of use. GitHub Flavored Markdown is allowed." + }, + "schema": { + "$ref": "#/definitions/schema" + }, + "location": { + "type": "string", + "description": "A runtime expression that specifies the location of the parameter value", + "pattern": "^\\$message\\.(header|payload)#(\\/(([^\\/~])|(~[01]))*)*" + } + }, + "examples": [ + { + "user/{userId}/signup": { + "parameters": { + "userId": { + "description": "Id of the user.", + "schema": { + "type": "string" + }, + "location": "$message.payload#/user/id" + } + }, + "subscribe": { + "message": { + "$ref": "#/components/messages/userSignedUp" + } + } + } + } + ] + }, + "schema": { + "description": "The Schema Object allows the definition of input and output data types. These types can be objects, but also primitives and arrays.", + "allOf": [ + { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + { + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/definitions/schema" + }, + { + "type": "boolean" + } + ], + "default": {} + }, + "items": { + "anyOf": [ + { + "$ref": "#/definitions/schema" + }, + { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/definitions/schema" + } + } + ], + "default": {} + }, + "allOf": { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/definitions/schema" + } + }, + "oneOf": { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/definitions/schema" + } + }, + "anyOf": { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/definitions/schema" + } + }, + "not": { + "$ref": "#/definitions/schema" + }, + "properties": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/schema" + }, + "default": {} + }, + "patternProperties": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/schema" + }, + "default": {} + }, + "propertyNames": { + "$ref": "#/definitions/schema" + }, + "contains": { + "$ref": "#/definitions/schema" + }, + "discriminator": { + "type": "string", + "description": "Adds support for polymorphism. The discriminator is the schema property name that is used to differentiate between other schema that inherit this schema. " + }, + "externalDocs": { + "description": "Additional external documentation for this schema.", + "$ref": "#/definitions/externalDocs" + }, + "deprecated": { + "type": "boolean", + "default": false, + "description": "Specifies that a schema is deprecated and SHOULD be transitioned out of usage" + } + } + } + ], + "examples": [ + { + "type": "string", + "format": "email" + }, + { + "type": "object", + "required": [ + "name" + ], + "properties": { + "name": { + "type": "string" + }, + "address": { + "$ref": "#/components/schemas/Address" + }, + "age": { + "type": "integer", + "format": "int32", + "minimum": 0 + } + } + } + ] + }, + "json-schema-draft-07-schema": { + "title": "Core schema meta-schema", + "definitions": { + "schemaArray": { + "type": "array", + "minItems": 1, + "items": { + "$ref": "#/definitions/json-schema-draft-07-schema" + } + }, + "nonNegativeInteger": { + "type": "integer", + "minimum": 0 + }, + "nonNegativeIntegerDefault0": { + "allOf": [ + { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/nonNegativeInteger" + }, + { + "default": 0 + } + ] + }, + "simpleTypes": { + "enum": [ + "array", + "boolean", + "integer", + "null", + "number", + "object", + "string" + ] + }, + "stringArray": { + "type": "array", + "items": { + "type": "string" + }, + "uniqueItems": true, + "default": [] + } + }, + "type": [ + "object", + "boolean" + ], + "properties": { + "$id": { + "type": "string", + "format": "uri-reference" + }, + "$schema": { + "type": "string", + "format": "uri" + }, + "$ref": { + "type": "string", + "format": "uri-reference" + }, + "$comment": { + "type": "string" + }, + "title": { + "type": "string" + }, + "description": { + "type": "string" + }, + "default": true, + "readOnly": { + "type": "boolean", + "default": false + }, + "writeOnly": { + "type": "boolean", + "default": false + }, + "examples": { + "type": "array", + "items": true + }, + "multipleOf": { + "type": "number", + "exclusiveMinimum": 0 + }, + "maximum": { + "type": "number" + }, + "exclusiveMaximum": { + "type": "number" + }, + "minimum": { + "type": "number" + }, + "exclusiveMinimum": { + "type": "number" + }, + "maxLength": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/nonNegativeInteger" + }, + "minLength": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/nonNegativeIntegerDefault0" + }, + "pattern": { + "type": "string", + "format": "regex" + }, + "additionalItems": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "items": { + "anyOf": [ + { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/schemaArray" + } + ], + "default": true + }, + "maxItems": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/nonNegativeInteger" + }, + "minItems": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/nonNegativeIntegerDefault0" + }, + "uniqueItems": { + "type": "boolean", + "default": false + }, + "contains": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "maxProperties": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/nonNegativeInteger" + }, + "minProperties": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/nonNegativeIntegerDefault0" + }, + "required": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/stringArray" + }, + "additionalProperties": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "definitions": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "default": {} + }, + "properties": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "default": {} + }, + "patternProperties": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "propertyNames": { + "format": "regex" + }, + "default": {} + }, + "dependencies": { + "type": "object", + "additionalProperties": { + "anyOf": [ + { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/stringArray" + } + ] + } + }, + "propertyNames": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "const": true, + "enum": { + "type": "array", + "items": true, + "minItems": 1, + "uniqueItems": true + }, + "type": { + "anyOf": [ + { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/simpleTypes" + }, + { + "type": "array", + "items": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/simpleTypes" + }, + "minItems": 1, + "uniqueItems": true + } + ] + }, + "format": { + "type": "string" + }, + "contentMediaType": { + "type": "string" + }, + "contentEncoding": { + "type": "string" + }, + "if": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "then": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "else": { + "$ref": "#/definitions/json-schema-draft-07-schema" + }, + "allOf": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/schemaArray" + }, + "anyOf": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/schemaArray" + }, + "oneOf": { + "$ref": "#/definitions/json-schema-draft-07-schema/definitions/schemaArray" + }, + "not": { + "$ref": "#/definitions/json-schema-draft-07-schema" + } + }, + "default": true + }, + "operation": { + "type": "object", + "description": "Describes a publish or a subscribe operation. This provides a place to document how and why messages are sent and received.", + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "traits": { + "type": "array", + "description": "A list of traits to apply to the operation object.", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/operationTrait" + } + ] + } + }, + "summary": { + "type": "string", + "description": "A short summary of what the operation is about." + }, + "description": { + "type": "string", + "description": "A verbose explanation of the operation." + }, + "security": { + "type": "array", + "description": "A declaration of which security mechanisms are associated with this operation.", + "items": { + "$ref": "#/definitions/SecurityRequirement" + } + }, + "tags": { + "type": "array", + "description": "A list of tags for logical grouping and categorization of operations.", + "items": { + "$ref": "#/definitions/tag" + }, + "uniqueItems": true + }, + "externalDocs": { + "$ref": "#/definitions/externalDocs" + }, + "operationId": { + "type": "string" + }, + "bindings": { + "$ref": "#/definitions/bindingsObject" + }, + "message": { + "$ref": "#/definitions/message" + } + }, + "examples": [ + { + "user/signedup": { + "subscribe": { + "message": { + "$ref": "#/components/messages/userSignedUp" + } + } + } + } + ] + }, + "operationTrait": { + "type": "object", + "description": "Describes a trait that MAY be applied to an Operation Object.", + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "summary": { + "type": "string", + "description": "A short summary of what the operation is about." + }, + "description": { + "type": "string", + "description": "A verbose explanation of the operation." + }, + "tags": { + "type": "array", + "description": "A list of tags for logical grouping and categorization of operations.", + "items": { + "$ref": "#/definitions/tag" + }, + "uniqueItems": true + }, + "externalDocs": { + "$ref": "#/definitions/externalDocs" + }, + "operationId": { + "type": "string", + "description": "Unique string used to identify the operation. The id MUST be unique among all operations described in the API." + }, + "security": { + "type": "array", + "description": "A declaration of which security mechanisms are associated with this operation. ", + "items": { + "$ref": "#/definitions/SecurityRequirement" + } + }, + "bindings": { + "$ref": "#/definitions/bindingsObject" + } + }, + "examples": [ + { + "bindings": { + "amqp": { + "ack": false + } + } + } + ] + }, + "message": { + "description": "Describes a message received on a given channel and operation.", + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "oneOf": [ + { + "type": "object", + "required": [ + "oneOf" + ], + "additionalProperties": false, + "properties": { + "oneOf": { + "type": "array", + "items": { + "$ref": "#/definitions/message" + } + } + } + }, + { + "type": "object", + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "schemaFormat": { + "type": "string" + }, + "contentType": { + "type": "string" + }, + "headers": { + "allOf": [ + { + "$ref": "#/definitions/schema" + }, + { + "properties": { + "type": { + "const": "object" + } + } + } + ] + }, + "messageId": { + "type": "string" + }, + "payload": {}, + "correlationId": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/correlationId" + } + ] + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/definitions/tag" + }, + "uniqueItems": true + }, + "summary": { + "type": "string", + "description": "A brief summary of the message." + }, + "name": { + "type": "string", + "description": "Name of the message." + }, + "title": { + "type": "string", + "description": "A human-friendly title for the message." + }, + "description": { + "type": "string", + "description": "A longer description of the message. CommonMark is allowed." + }, + "externalDocs": { + "$ref": "#/definitions/externalDocs" + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "examples": { + "type": "array", + "description": "List of examples.", + "items": { + "type": "object", + "additionalProperties": false, + "anyOf": [ + { + "required": [ + "payload" + ] + }, + { + "required": [ + "headers" + ] + } + ], + "properties": { + "name": { + "type": "string", + "description": "Machine readable name of the message example." + }, + "summary": { + "type": "string", + "description": "A brief summary of the message example." + }, + "headers": { + "type": "object", + "description": "Schema definition of the application headers." + }, + "payload": { + "description": "Definition of the message payload. It can be of any type" + } + } + } + }, + "bindings": { + "$ref": "#/definitions/bindingsObject" + }, + "traits": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/messageTrait" + } + ] + } + } + }, + "allOf": [ + { + "if": { + "not": { + "required": [ + "schemaFormat" + ] + } + }, + "then": { + "properties": { + "payload": { + "$ref": "#/definitions/schema" + } + } + } + }, + { + "if": { + "required": [ + "schemaFormat" + ], + "properties": { + "schemaFormat": { + "enum": [ + "application/vnd.aai.asyncapi;version=2.0.0", + "application/vnd.aai.asyncapi+json;version=2.0.0", + "application/vnd.aai.asyncapi+yaml;version=2.0.0", + "application/vnd.aai.asyncapi;version=2.1.0", + "application/vnd.aai.asyncapi+json;version=2.1.0", + "application/vnd.aai.asyncapi+yaml;version=2.1.0", + "application/vnd.aai.asyncapi;version=2.2.0", + "application/vnd.aai.asyncapi+json;version=2.2.0", + "application/vnd.aai.asyncapi+yaml;version=2.2.0", + "application/vnd.aai.asyncapi;version=2.3.0", + "application/vnd.aai.asyncapi+json;version=2.3.0", + "application/vnd.aai.asyncapi+yaml;version=2.3.0", + "application/vnd.aai.asyncapi;version=2.4.0", + "application/vnd.aai.asyncapi+json;version=2.4.0", + "application/vnd.aai.asyncapi+yaml;version=2.4.0", + "application/vnd.aai.asyncapi;version=2.5.0", + "application/vnd.aai.asyncapi+json;version=2.5.0", + "application/vnd.aai.asyncapi+yaml;version=2.5.0", + "application/vnd.aai.asyncapi;version=2.6.0", + "application/vnd.aai.asyncapi+json;version=2.6.0", + "application/vnd.aai.asyncapi+yaml;version=2.6.0" + ] + } + } + }, + "then": { + "properties": { + "payload": { + "$ref": "#/definitions/schema" + } + } + } + }, + { + "if": { + "required": [ + "schemaFormat" + ], + "properties": { + "schemaFormat": { + "enum": [ + "application/schema+json;version=draft-07", + "application/schema+yaml;version=draft-07" + ] + } + } + }, + "then": { + "properties": { + "payload": { + "$ref": "#/definitions/json-schema-draft-07-schema" + } + } + } + }, + { + "if": { + "required": [ + "schemaFormat" + ], + "properties": { + "schemaFormat": { + "enum": [ + "application/vnd.oai.openapi;version=3.0.0", + "application/vnd.oai.openapi+json;version=3.0.0", + "application/vnd.oai.openapi+yaml;version=3.0.0" + ] + } + } + }, + "then": { + "properties": { + "payload": { + "$ref": "#/definitions/openapiSchema_3_0" + } + } + } + }, + { + "if": { + "required": [ + "schemaFormat" + ], + "properties": { + "schemaFormat": { + "enum": [ + "application/vnd.apache.avro;version=1.9.0", + "application/vnd.apache.avro+json;version=1.9.0", + "application/vnd.apache.avro+yaml;version=1.9.0" + ] + } + } + }, + "then": { + "properties": { + "payload": { + "$ref": "#/definitions/avroSchema_v1" + } + } + } + } + ] + } + ] + } + ], + "examples": [ + { + "messageId": "userSignup", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "contentType": "application/json", + "tags": [ + { + "name": "user" + }, + { + "name": "signup" + }, + { + "name": "register" + } + ], + "headers": { + "type": "object", + "properties": { + "correlationId": { + "description": "Correlation ID set by application", + "type": "string" + }, + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "user": { + "$ref": "#/components/schemas/userCreate" + }, + "signup": { + "$ref": "#/components/schemas/signup" + } + } + }, + "correlationId": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + }, + "traits": [ + { + "$ref": "#/components/messageTraits/commonHeaders" + } + ], + "examples": [ + { + "name": "SimpleSignup", + "summary": "A simple UserSignup example message", + "headers": { + "correlationId": "my-correlation-id", + "applicationInstanceId": "myInstanceId" + }, + "payload": { + "user": { + "someUserKey": "someUserValue" + }, + "signup": { + "someSignupKey": "someSignupValue" + } + } + } + ] + }, + { + "messageId": "userSignup", + "name": "UserSignup", + "title": "User signup", + "summary": "Action to sign a user up.", + "description": "A longer description", + "tags": [ + { + "name": "user" + }, + { + "name": "signup" + }, + { + "name": "register" + } + ], + "schemaFormat": "application/vnd.apache.avro+json;version=1.9.0", + "payload": { + "$ref": "path/to/user-create.avsc#/UserCreate" + } + } + ] + }, + "correlationId": { + "type": "object", + "description": "An object that specifies an identifier at design time that can used for message tracing and correlation.", + "required": [ + "location" + ], + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "description": { + "type": "string", + "description": "A optional description of the correlation ID. GitHub Flavored Markdown is allowed." + }, + "location": { + "type": "string", + "description": "A runtime expression that specifies the location of the correlation ID", + "pattern": "^\\$message\\.(header|payload)#(\\/(([^\\/~])|(~[01]))*)*" + } + }, + "examples": [ + { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + } + ] + }, + "messageTrait": { + "type": "object", + "description": "Describes a trait that MAY be applied to a Message Object.", + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "schemaFormat": { + "type": "string", + "description": "A string containing the name of the schema format/language used to define the message payload." + }, + "contentType": { + "type": "string", + "description": "The content type to use when encoding/decoding a message's payload." + }, + "headers": { + "description": "Schema definition of the application headers.", + "allOf": [ + { + "$ref": "#/definitions/schema" + }, + { + "properties": { + "type": { + "const": "object" + } + } + } + ] + }, + "messageId": { + "type": "string", + "description": "Unique string used to identify the message. The id MUST be unique among all messages described in the API." + }, + "correlationId": { + "description": "Definition of the correlation ID used for message tracing or matching.", + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/correlationId" + } + ] + }, + "tags": { + "type": "array", + "description": "A list of tags for logical grouping and categorization of messages.", + "items": { + "$ref": "#/definitions/tag" + }, + "uniqueItems": true + }, + "summary": { + "type": "string", + "description": "A brief summary of the message." + }, + "name": { + "type": "string", + "description": "Name of the message." + }, + "title": { + "type": "string", + "description": "A human-friendly title for the message." + }, + "description": { + "type": "string", + "description": "A longer description of the message. CommonMark is allowed." + }, + "externalDocs": { + "$ref": "#/definitions/externalDocs" + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "examples": { + "type": "array", + "description": "List of examples.", + "items": { + "type": "object", + "additionalProperties": false, + "anyOf": [ + { + "required": [ + "payload" + ] + }, + { + "required": [ + "headers" + ] + } + ], + "properties": { + "name": { + "type": "string", + "description": "Machine readable name of the message example." + }, + "summary": { + "type": "string", + "description": "A brief summary of the message example." + }, + "headers": { + "type": "object", + "description": "Schema definition of the application headers." + }, + "payload": { + "description": "Definition of the message payload. It can be of any type" + } + } + } + }, + "bindings": { + "$ref": "#/definitions/bindingsObject" + } + }, + "examples": [ + { + "schemaFormat": "application/vnd.apache.avro+json;version=1.9.0", + "contentType": "application/json" + } + ] + }, + "openapiSchema_3_0": { + "type": "object", + "definitions": { + "ExternalDocumentation": { + "type": "object", + "required": [ + "url" + ], + "properties": { + "description": { + "type": "string" + }, + "url": { + "type": "string", + "format": "uri-reference" + } + }, + "patternProperties": { + "^x-": {} + }, + "additionalProperties": false + }, + "Discriminator": { + "type": "object", + "required": [ + "propertyName" + ], + "properties": { + "propertyName": { + "type": "string" + }, + "mapping": { + "type": "object", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Reference": { + "type": "object", + "required": [ + "$ref" + ], + "patternProperties": { + "^\\$ref$": { + "type": "string", + "format": "uri-reference" + } + } + }, + "XML": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "namespace": { + "type": "string", + "format": "uri" + }, + "prefix": { + "type": "string" + }, + "attribute": { + "type": "boolean", + "default": false + }, + "wrapped": { + "type": "boolean", + "default": false + } + }, + "patternProperties": { + "^x-": {} + }, + "additionalProperties": false + } + }, + "properties": { + "title": { + "type": "string" + }, + "multipleOf": { + "type": "number", + "exclusiveMinimum": 0 + }, + "maximum": { + "type": "number" + }, + "exclusiveMaximum": { + "type": "boolean", + "default": false + }, + "minimum": { + "type": "number" + }, + "exclusiveMinimum": { + "type": "boolean", + "default": false + }, + "maxLength": { + "type": "integer", + "minimum": 0 + }, + "minLength": { + "type": "integer", + "minimum": 0, + "default": 0 + }, + "pattern": { + "type": "string", + "format": "regex" + }, + "maxItems": { + "type": "integer", + "minimum": 0 + }, + "minItems": { + "type": "integer", + "minimum": 0, + "default": 0 + }, + "uniqueItems": { + "type": "boolean", + "default": false + }, + "maxProperties": { + "type": "integer", + "minimum": 0 + }, + "minProperties": { + "type": "integer", + "minimum": 0, + "default": 0 + }, + "required": { + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1, + "uniqueItems": true + }, + "enum": { + "type": "array", + "items": true, + "minItems": 1, + "uniqueItems": false + }, + "type": { + "type": "string", + "enum": [ + "array", + "boolean", + "integer", + "number", + "object", + "string" + ] + }, + "not": { + "oneOf": [ + { + "$ref": "#/definitions/openapiSchema_3_0" + }, + { + "$ref": "#/definitions/openapiSchema_3_0/definitions/Reference" + } + ] + }, + "allOf": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/openapiSchema_3_0" + }, + { + "$ref": "#/definitions/openapiSchema_3_0/definitions/Reference" + } + ] + } + }, + "oneOf": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/openapiSchema_3_0" + }, + { + "$ref": "#/definitions/openapiSchema_3_0/definitions/Reference" + } + ] + } + }, + "anyOf": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/openapiSchema_3_0" + }, + { + "$ref": "#/definitions/openapiSchema_3_0/definitions/Reference" + } + ] + } + }, + "items": { + "oneOf": [ + { + "$ref": "#/definitions/openapiSchema_3_0" + }, + { + "$ref": "#/definitions/openapiSchema_3_0/definitions/Reference" + } + ] + }, + "properties": { + "type": "object", + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/openapiSchema_3_0" + }, + { + "$ref": "#/definitions/openapiSchema_3_0/definitions/Reference" + } + ] + } + }, + "additionalProperties": { + "oneOf": [ + { + "$ref": "#/definitions/openapiSchema_3_0" + }, + { + "$ref": "#/definitions/openapiSchema_3_0/definitions/Reference" + }, + { + "type": "boolean" + } + ], + "default": true + }, + "description": { + "type": "string" + }, + "format": { + "type": "string" + }, + "default": true, + "nullable": { + "type": "boolean", + "default": false + }, + "discriminator": { + "$ref": "#/definitions/openapiSchema_3_0/definitions/Discriminator" + }, + "readOnly": { + "type": "boolean", + "default": false + }, + "writeOnly": { + "type": "boolean", + "default": false + }, + "example": true, + "externalDocs": { + "$ref": "#/definitions/openapiSchema_3_0/definitions/ExternalDocumentation" + }, + "deprecated": { + "type": "boolean", + "default": false + }, + "xml": { + "$ref": "#/definitions/openapiSchema_3_0/definitions/XML" + } + }, + "patternProperties": { + "^x-": true + }, + "additionalProperties": false + }, + "avroSchema_v1": { + "definitions": { + "avroSchema": { + "title": "Avro Schema", + "description": "Root Schema", + "oneOf": [ + { + "$ref": "#/definitions/avroSchema_v1/definitions/types" + } + ] + }, + "types": { + "title": "Avro Types", + "description": "Allowed Avro types", + "oneOf": [ + { + "$ref": "#/definitions/avroSchema_v1/definitions/primitiveType" + }, + { + "$ref": "#/definitions/avroSchema_v1/definitions/primitiveTypeWithMetadata" + }, + { + "$ref": "#/definitions/avroSchema_v1/definitions/customTypeReference" + }, + { + "$ref": "#/definitions/avroSchema_v1/definitions/avroRecord" + }, + { + "$ref": "#/definitions/avroSchema_v1/definitions/avroEnum" + }, + { + "$ref": "#/definitions/avroSchema_v1/definitions/avroArray" + }, + { + "$ref": "#/definitions/avroSchema_v1/definitions/avroMap" + }, + { + "$ref": "#/definitions/avroSchema_v1/definitions/avroFixed" + }, + { + "$ref": "#/definitions/avroSchema_v1/definitions/avroUnion" + } + ] + }, + "primitiveType": { + "title": "Primitive Type", + "description": "Basic type primitives.", + "type": "string", + "enum": [ + "null", + "boolean", + "int", + "long", + "float", + "double", + "bytes", + "string" + ] + }, + "primitiveTypeWithMetadata": { + "title": "Primitive Type With Metadata", + "description": "A primitive type with metadata attached.", + "type": "object", + "properties": { + "type": { + "$ref": "#/definitions/avroSchema_v1/definitions/primitiveType" + } + }, + "required": [ + "type" + ] + }, + "customTypeReference": { + "title": "Custom Type", + "description": "Reference to a ComplexType", + "not": { + "$ref": "#/definitions/avroSchema_v1/definitions/primitiveType" + }, + "type": "string", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*(\\.[A-Za-z_][A-Za-z0-9_]*)*$" + }, + "avroUnion": { + "title": "Union", + "description": "A Union of types", + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/avroSchema" + }, + "minItems": 1 + }, + "avroField": { + "title": "Field", + "description": "A field within a Record", + "type": "object", + "properties": { + "name": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + }, + "type": { + "$ref": "#/definitions/avroSchema_v1/definitions/types" + }, + "doc": { + "type": "string" + }, + "default": true, + "order": { + "enum": [ + "ascending", + "descending", + "ignore" + ] + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + } + } + }, + "required": [ + "name", + "type" + ] + }, + "avroRecord": { + "title": "Record", + "description": "A Record", + "type": "object", + "properties": { + "type": { + "type": "string", + "const": "record" + }, + "name": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + }, + "namespace": { + "$ref": "#/definitions/avroSchema_v1/definitions/namespace" + }, + "doc": { + "type": "string" + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + } + }, + "fields": { + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/avroField" + } + } + }, + "required": [ + "type", + "name", + "fields" + ] + }, + "avroEnum": { + "title": "Enum", + "description": "An enumeration", + "type": "object", + "properties": { + "type": { + "type": "string", + "const": "enum" + }, + "name": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + }, + "namespace": { + "$ref": "#/definitions/avroSchema_v1/definitions/namespace" + }, + "doc": { + "type": "string" + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + } + }, + "symbols": { + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + } + } + }, + "required": [ + "type", + "name", + "symbols" + ] + }, + "avroArray": { + "title": "Array", + "description": "An array", + "type": "object", + "properties": { + "type": { + "type": "string", + "const": "array" + }, + "name": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + }, + "namespace": { + "$ref": "#/definitions/avroSchema_v1/definitions/namespace" + }, + "doc": { + "type": "string" + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + } + }, + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/types" + } + }, + "required": [ + "type", + "items" + ] + }, + "avroMap": { + "title": "Map", + "description": "A map of values", + "type": "object", + "properties": { + "type": { + "type": "string", + "const": "map" + }, + "name": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + }, + "namespace": { + "$ref": "#/definitions/avroSchema_v1/definitions/namespace" + }, + "doc": { + "type": "string" + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + } + }, + "values": { + "$ref": "#/definitions/avroSchema_v1/definitions/types" + } + }, + "required": [ + "type", + "values" + ] + }, + "avroFixed": { + "title": "Fixed", + "description": "A fixed sized array of bytes", + "type": "object", + "properties": { + "type": { + "type": "string", + "const": "fixed" + }, + "name": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + }, + "namespace": { + "$ref": "#/definitions/avroSchema_v1/definitions/namespace" + }, + "doc": { + "type": "string" + }, + "aliases": { + "type": "array", + "items": { + "$ref": "#/definitions/avroSchema_v1/definitions/name" + } + }, + "size": { + "type": "number" + } + }, + "required": [ + "type", + "name", + "size" + ] + }, + "name": { + "type": "string", + "pattern": "^[A-Za-z_][A-Za-z0-9_]*$" + }, + "namespace": { + "type": "string", + "pattern": "^([A-Za-z_][A-Za-z0-9_]*(\\.[A-Za-z_][A-Za-z0-9_]*)*)*$" + } + }, + "description": "Json-Schema definition for Avro AVSC files.", + "oneOf": [ + { + "$ref": "#/definitions/avroSchema_v1/definitions/avroSchema" + } + ], + "title": "Avro Schema Definition" + }, + "components": { + "type": "object", + "description": "Holds a set of reusable objects for different aspects of the AsyncAPI specification. All objects defined within the components object will have no effect on the API unless they are explicitly referenced from properties outside the components object.", + "additionalProperties": false, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "properties": { + "schemas": { + "$ref": "#/definitions/schemas" + }, + "servers": { + "$ref": "#/definitions/servers" + }, + "channels": { + "$ref": "#/definitions/channels" + }, + "serverVariables": { + "$ref": "#/definitions/serverVariables" + }, + "messages": { + "$ref": "#/definitions/messages" + }, + "securitySchemes": { + "type": "object", + "patternProperties": { + "^[\\w\\d\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/SecurityScheme" + } + ] + } + } + }, + "parameters": { + "$ref": "#/definitions/parameters" + }, + "correlationIds": { + "type": "object", + "patternProperties": { + "^[\\w\\d\\.\\-_]+$": { + "oneOf": [ + { + "$ref": "#/definitions/Reference" + }, + { + "$ref": "#/definitions/correlationId" + } + ] + } + } + }, + "operationTraits": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/operationTrait" + } + }, + "messageTraits": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/messageTrait" + } + }, + "serverBindings": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/bindingsObject" + } + }, + "channelBindings": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/bindingsObject" + } + }, + "operationBindings": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/bindingsObject" + } + }, + "messageBindings": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/bindingsObject" + } + } + }, + "examples": [ + { + "components": { + "schemas": { + "Category": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + }, + "Tag": { + "type": "object", + "properties": { + "id": { + "type": "integer", + "format": "int64" + }, + "name": { + "type": "string" + } + } + } + }, + "servers": { + "development": { + "url": "{stage}.gigantic-server.com:{port}", + "description": "Development server", + "protocol": "amqp", + "protocolVersion": "0.9.1", + "variables": { + "stage": { + "$ref": "#/components/serverVariables/stage" + }, + "port": { + "$ref": "#/components/serverVariables/port" + } + } + } + }, + "serverVariables": { + "stage": { + "default": "demo", + "description": "This value is assigned by the service provider, in this example `gigantic-server.com`" + }, + "port": { + "enum": [ + "8883", + "8884" + ], + "default": "8883" + } + }, + "channels": { + "user/signedup": { + "subscribe": { + "message": { + "$ref": "#/components/messages/userSignUp" + } + } + } + }, + "messages": { + "userSignUp": { + "summary": "Action to sign a user up.", + "description": "Multiline description of what this action does.\nHere you have another line.\n", + "tags": [ + { + "name": "user" + }, + { + "name": "signup" + } + ], + "headers": { + "type": "object", + "properties": { + "applicationInstanceId": { + "description": "Unique identifier for a given instance of the publishing application", + "type": "string" + } + } + }, + "payload": { + "type": "object", + "properties": { + "user": { + "$ref": "#/components/schemas/userCreate" + }, + "signup": { + "$ref": "#/components/schemas/signup" + } + } + } + } + }, + "parameters": { + "userId": { + "description": "Id of the user.", + "schema": { + "type": "string" + } + } + }, + "correlationIds": { + "default": { + "description": "Default Correlation ID", + "location": "$message.header#/correlationId" + } + }, + "messageTraits": { + "commonHeaders": { + "headers": { + "type": "object", + "properties": { + "my-app-header": { + "type": "integer", + "minimum": 0, + "maximum": 100 + } + } + } + } + } + } + } + ] + }, + "schemas": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/schema" + }, + "description": "JSON objects describing schemas the API uses." + }, + "messages": { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/message" + }, + "description": "JSON objects describing the messages being consumed and produced by the API." + }, + "SecurityScheme": { + "description": "Defines a security scheme that can be used by the operations.", + "oneOf": [ + { + "$ref": "#/definitions/userPassword" + }, + { + "$ref": "#/definitions/apiKey" + }, + { + "$ref": "#/definitions/X509" + }, + { + "$ref": "#/definitions/symmetricEncryption" + }, + { + "$ref": "#/definitions/asymmetricEncryption" + }, + { + "$ref": "#/definitions/HTTPSecurityScheme" + }, + { + "$ref": "#/definitions/oauth2Flows" + }, + { + "$ref": "#/definitions/openIdConnect" + }, + { + "$ref": "#/definitions/SaslSecurityScheme" + } + ], + "examples": [ + { + "type": "userPassword" + } + ] + }, + "userPassword": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of the security scheme. ", + "enum": [ + "userPassword" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "userPassword" + } + ] + }, + "apiKey": { + "type": "object", + "required": [ + "type", + "in" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of the security scheme.", + "enum": [ + "apiKey" + ] + }, + "in": { + "type": "string", + "description": "The location of the API key. ", + "enum": [ + "user", + "password" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "apiKey", + "in": "user" + } + ] + }, + "X509": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "X509" + ], + "description": "The type of the security scheme." + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "X509" + } + ] + }, + "symmetricEncryption": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of the security scheme.", + "enum": [ + "symmetricEncryption" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "symmetricEncryption" + } + ] + }, + "asymmetricEncryption": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of the security scheme.", + "enum": [ + "asymmetricEncryption" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false + }, + "HTTPSecurityScheme": { + "oneOf": [ + { + "$ref": "#/definitions/NonBearerHTTPSecurityScheme" + }, + { + "$ref": "#/definitions/BearerHTTPSecurityScheme" + }, + { + "$ref": "#/definitions/APIKeyHTTPSecurityScheme" + } + ] + }, + "NonBearerHTTPSecurityScheme": { + "not": { + "type": "object", + "properties": { + "scheme": { + "type": "string", + "description": "A short description for security scheme.", + "enum": [ + "bearer" + ] + } + } + }, + "type": "object", + "required": [ + "scheme", + "type" + ], + "properties": { + "scheme": { + "type": "string", + "description": "The name of the HTTP Authorization scheme to be used in the Authorization header as defined in RFC7235." + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + }, + "type": { + "type": "string", + "description": "The type of the security scheme. ", + "enum": [ + "http" + ] + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false + }, + "BearerHTTPSecurityScheme": { + "type": "object", + "required": [ + "type", + "scheme" + ], + "properties": { + "scheme": { + "type": "string", + "description": "The name of the HTTP Authorization scheme to be used in the Authorization header as defined in RFC7235.", + "enum": [ + "bearer" + ] + }, + "bearerFormat": { + "type": "string", + "description": "A hint to the client to identify how the bearer token is formatted." + }, + "type": { + "type": "string", + "description": "The type of the security scheme. ", + "enum": [ + "http" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false + }, + "APIKeyHTTPSecurityScheme": { + "type": "object", + "required": [ + "type", + "name", + "in" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of the security scheme. ", + "enum": [ + "httpApiKey" + ] + }, + "name": { + "type": "string", + "description": "The name of the header, query or cookie parameter to be used." + }, + "in": { + "type": "string", + "description": "The location of the API key. ", + "enum": [ + "header", + "query", + "cookie" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "httpApiKey", + "name": "api_key", + "in": "header" + } + ] + }, + "oauth2Flows": { + "type": "object", + "description": "Allows configuration of the supported OAuth Flows.", + "required": [ + "type", + "flows" + ], + "properties": { + "type": { + "type": "string", + "description": "A short description for security scheme.", + "enum": [ + "oauth2" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + }, + "flows": { + "type": "object", + "properties": { + "implicit": { + "description": "Configuration for the OAuth Implicit flow.", + "allOf": [ + { + "$ref": "#/definitions/oauth2Flow" + }, + { + "required": [ + "authorizationUrl", + "scopes" + ] + }, + { + "not": { + "required": [ + "tokenUrl" + ] + } + } + ] + }, + "password": { + "description": "Configuration for the OAuth Resource Owner Protected Credentials flow.", + "allOf": [ + { + "$ref": "#/definitions/oauth2Flow" + }, + { + "required": [ + "tokenUrl", + "scopes" + ] + }, + { + "not": { + "required": [ + "authorizationUrl" + ] + } + } + ] + }, + "clientCredentials": { + "description": "Configuration for the OAuth Client Credentials flow.", + "allOf": [ + { + "$ref": "#/definitions/oauth2Flow" + }, + { + "required": [ + "tokenUrl", + "scopes" + ] + }, + { + "not": { + "required": [ + "authorizationUrl" + ] + } + } + ] + }, + "authorizationCode": { + "description": "Configuration for the OAuth Authorization Code flow.", + "allOf": [ + { + "$ref": "#/definitions/oauth2Flow" + }, + { + "required": [ + "authorizationUrl", + "tokenUrl", + "scopes" + ] + } + ] + } + }, + "additionalProperties": false + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + } + }, + "oauth2Flow": { + "type": "object", + "description": "Configuration details for a supported OAuth Flow", + "properties": { + "authorizationUrl": { + "type": "string", + "format": "uri", + "description": "The authorization URL to be used for this flow. This MUST be in the form of an absolute URL." + }, + "tokenUrl": { + "type": "string", + "format": "uri", + "description": "The token URL to be used for this flow. This MUST be in the form of an absolute URL." + }, + "refreshUrl": { + "type": "string", + "format": "uri", + "description": "The URL to be used for obtaining refresh tokens. This MUST be in the form of an absolute URL." + }, + "scopes": { + "description": "The available scopes for the OAuth2 security scheme. A map between the scope name and a short description for it.", + "$ref": "#/definitions/oauth2Scopes" + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "oauth2", + "flows": { + "implicit": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + }, + "authorizationCode": { + "authorizationUrl": "https://example.com/api/oauth/dialog", + "tokenUrl": "https://example.com/api/oauth/token", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } + } + } + ] + }, + "oauth2Scopes": { + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "openIdConnect": { + "type": "object", + "required": [ + "type", + "openIdConnectUrl" + ], + "properties": { + "type": { + "type": "string", + "enum": [ + "openIdConnect" + ] + }, + "description": { + "type": "string" + }, + "openIdConnectUrl": { + "type": "string", + "format": "uri" + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false + }, + "SaslSecurityScheme": { + "oneOf": [ + { + "$ref": "#/definitions/SaslPlainSecurityScheme" + }, + { + "$ref": "#/definitions/SaslScramSecurityScheme" + }, + { + "$ref": "#/definitions/SaslGssapiSecurityScheme" + } + ] + }, + "SaslPlainSecurityScheme": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of the security scheme. Valid values", + "enum": [ + "plain" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "scramSha512" + } + ] + }, + "SaslScramSecurityScheme": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of the security scheme.", + "enum": [ + "scramSha256", + "scramSha512" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "scramSha512" + } + ] + }, + "SaslGssapiSecurityScheme": { + "type": "object", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string", + "description": "The type of the security scheme.", + "enum": [ + "gssapi" + ] + }, + "description": { + "type": "string", + "description": "A short description for security scheme." + } + }, + "patternProperties": { + "^x-[\\w\\d\\.\\x2d_]+$": { + "$ref": "#/definitions/specificationExtension" + } + }, + "additionalProperties": false, + "examples": [ + { + "type": "scramSha512" + } + ] + } + }, + "description": "!!Auto generated!! \n Do not manually edit. " +} \ No newline at end of file diff --git a/src/main/resources/ui/default(1.0.0-next.43).min.css b/src/main/resources/ui/default(1.0.0-next.48).min.css similarity index 100% rename from src/main/resources/ui/default(1.0.0-next.43).min.css rename to src/main/resources/ui/default(1.0.0-next.48).min.css diff --git a/src/main/resources/ui/index(1.0.0-next.43).js b/src/main/resources/ui/index(1.0.0-next.43).js deleted file mode 100644 index 2097d0d..0000000 --- a/src/main/resources/ui/index(1.0.0-next.43).js +++ /dev/null @@ -1,45 +0,0 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("AsyncApiStandalone",[],t):"object"==typeof exports?exports.AsyncApiStandalone=t():e.AsyncApiStandalone=t()}("undefined"!=typeof self?self:this,(function(){return function(e){var t={};function n(i){if(t[i])return t[i].exports;var r=t[i]={i:i,l:!1,exports:{}};return e[i].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(i,r,function(t){return e[t]}.bind(null,r));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=276)}([function(e,t,n){"use strict";e.exports=n(70)},function(e,t,n){"use strict";n.d(t,"a",(function(){return i})),n.d(t,"l",(function(){return r})),n.d(t,"j",(function(){return s})),n.d(t,"k",(function(){return o})),n.d(t,"c",(function(){return a})),n.d(t,"f",(function(){return c})),n.d(t,"i",(function(){return u})),n.d(t,"h",(function(){return p})),n.d(t,"e",(function(){return l})),n.d(t,"d",(function(){return f})),n.d(t,"g",(function(){return d})),n.d(t,"b",(function(){return h}));var i="https://www.iana.org/assignments/media-types",r="https://github.com/asyncapi/parser-js/validation-errors",s="Terms of service",o="Support",a="External Docs",c="PUB",u="SUB",p="Servers",l="Operations",f="Messages",d="Schemas",h="Error"},function(e,t){const n=e.exports,i=(e,t,n,i)=>{if("string"!=typeof t||!e)return null;const r=e[String(t)];return void 0===r?null:n?new n(r,i):r};n.createMapOfType=(e,t,n)=>{const i={};return e?(Object.entries(e).forEach(([e,r])=>{i[String(e)]=new t(r,n)}),i):i},n.getMapValueOfType=(e,t,n,r)=>i(e,t,n,r),n.getMapValueByKey=(e,t)=>i(e,t),n.mix=(e,...t)=>{let n=!1;if(t.some((function(t){return e===t||(n=Object.keys(t).some(t=>e.prototype.hasOwnProperty(t)),n)})))throw n?new Error(`invalid mix function: model ${e.name} has at least one method that it is trying to replace by mixin`):new Error(`invalid mix function: cannot use the model ${e.name} as a mixin`);return t.forEach(t=>Object.assign(e.prototype,t)),e}},function(e,t,n){const i=n(24);e.exports=class{constructor(e){if(null==e)throw new i(`Invalid JSON to instantiate the ${this.constructor.name} object.`);this._json=e}json(e){return void 0===e?this._json:this._json?this._json[String(e)]:void 0}}},function(e,t){const n={hasExtensions(){return!!this.extensionKeys().length},extensions(){const e={};return Object.entries(this._json).forEach(([t,n])=>{/^x-[\w\d\.\-\_]+$/.test(t)&&(e[String(t)]=n)}),e},extensionKeys(){return Object.keys(this.extensions())},extKeys(){return this.extensionKeys()},hasExtension(e){return!!e.startsWith("x-")&&!!this._json[String(e)]},extension(e){return e.startsWith("x-")?this._json[String(e)]:null},hasExt(e){return this.hasExtension(e)},ext(e){return this.extension(e)}};e.exports=n},,function(e,t,n){const{getMapValueByKey:i}=n(2),r={hasDescription(){return!!this._json.description},description(){return i(this._json,"description")}};e.exports=r},function(e,t,n){"use strict";function i(e){return void 0!==e.url}var r;n.d(t,"b",(function(){return i})),n.d(t,"a",(function(){return r})),function(e){e.PUBLISH="publish",e.SUBSCRIBE="subscribe"}(r||(r={}))},,,function(e,t,n){const{createMapOfType:i,getMapValueOfType:r,mix:s}=n(2),o=n(3),{xParserCircle:a,xParserCircleProps:c}=n(25),u=n(6),p=n(17),l=n(4);class f extends o{constructor(e,t){super(e),this.options=t||{}}uid(){return this.$id()||this.ext("x-parser-schema-id")}$id(){return this._json.$id}multipleOf(){return this._json.multipleOf}maximum(){return this._json.maximum}exclusiveMaximum(){return this._json.exclusiveMaximum}minimum(){return this._json.minimum}exclusiveMinimum(){return this._json.exclusiveMinimum}maxLength(){return this._json.maxLength}minLength(){return this._json.minLength}pattern(){return this._json.pattern}maxItems(){return this._json.maxItems}minItems(){return this._json.minItems}uniqueItems(){return!!this._json.uniqueItems}maxProperties(){return this._json.maxProperties}minProperties(){return this._json.minProperties}required(){return this._json.required}enum(){return this._json.enum}type(){return this._json.type}allOf(){return this._json.allOf?this._json.allOf.map(e=>new f(e,{parent:this})):null}oneOf(){return this._json.oneOf?this._json.oneOf.map(e=>new f(e,{parent:this})):null}anyOf(){return this._json.anyOf?this._json.anyOf.map(e=>new f(e,{parent:this})):null}not(){return this._json.not?new f(this._json.not,{parent:this}):null}items(){return this._json.items?Array.isArray(this._json.items)?this._json.items.map(e=>new f(e,{parent:this})):new f(this._json.items,{parent:this}):null}properties(){return i(this._json.properties,f,{parent:this})}property(e){return r(this._json.properties,e,f,{parent:this})}additionalProperties(){const e=this._json.additionalProperties;if(null!=e)return"boolean"==typeof e?e:new f(e,{parent:this})}additionalItems(){const e=this._json.additionalItems;if(null!=e)return new f(e,{parent:this})}patternProperties(){return i(this._json.patternProperties,f,{parent:this})}const(){return this._json.const}contains(){return this._json.contains?new f(this._json.contains,{parent:this}):null}dependencies(){if(!this._json.dependencies)return null;const e={};return Object.entries(this._json.dependencies).forEach(([t,n])=>{e[String(t)]=Array.isArray(n)?n:new f(n,{parent:this})}),e}propertyNames(){return this._json.propertyNames?new f(this._json.propertyNames,{parent:this}):null}if(){return this._json.if?new f(this._json.if,{parent:this}):null}then(){return this._json.then?new f(this._json.then,{parent:this}):null}else(){return this._json.else?new f(this._json.else,{parent:this}):null}format(){return this._json.format}contentEncoding(){return this._json.contentEncoding}contentMediaType(){return this._json.contentMediaType}definitions(){return i(this._json.definitions,f,{parent:this})}title(){return this._json.title}default(){return this._json.default}deprecated(){return this._json.deprecated}discriminator(){return this._json.discriminator}readOnly(){return!!this._json.readOnly}writeOnly(){return!!this._json.writeOnly}examples(){return this._json.examples}isBooleanSchema(){return"boolean"==typeof this._json}isCircular(){if(this.ext(a))return!0;let e=this.options.parent;for(;e;){if(e._json===this._json)return!0;e=e.options&&e.options.parent}return!1}circularSchema(){let e=this.options.parent;for(;e;){if(e._json===this._json)return e;e=e.options&&e.options.parent}}hasCircularProps(){return Array.isArray(this.ext(c))?this.ext(c).length>0:Object.entries(this.properties()||{}).map(([e,t])=>{if(t.isCircular())return e}).filter(Boolean).length>0}circularProps(){return Array.isArray(this.ext(c))?this.ext(c):Object.entries(this.properties()||{}).map(([e,t])=>{if(t.isCircular())return e}).filter(Boolean)}}e.exports=s(f,u,p,l)},function(e,t,n){"use strict";(function(e){ - /*! - * The buffer module from node.js, for the browser. - * - * @author Feross Aboukhadijeh - * @license MIT - */ - var i=n(81),r=n(82),s=n(63);function o(){return c.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function a(e,t){if(o()=o())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o().toString(16)+" bytes");return 0|e}function h(e,t){if(c.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return L(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return q(e).length;default:if(i)return L(e).length;t=(""+t).toLowerCase(),i=!0}}function m(e,t,n){var i=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return k(this,t,n);case"utf8":case"utf-8":return A(this,t,n);case"ascii":return P(this,t,n);case"latin1":case"binary":return $(this,t,n);case"base64":return S(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return C(this,t,n);default:if(i)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),i=!0}}function y(e,t,n){var i=e[t];e[t]=e[n],e[n]=i}function g(e,t,n,i,r){if(0===e.length)return-1;if("string"==typeof n?(i=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=r?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(r)return-1;n=e.length-1}else if(n<0){if(!r)return-1;n=0}if("string"==typeof t&&(t=c.from(t,i)),c.isBuffer(t))return 0===t.length?-1:v(e,t,n,i,r);if("number"==typeof t)return t&=255,c.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?r?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):v(e,[t],n,i,r);throw new TypeError("val must be string, number or Buffer")}function v(e,t,n,i,r){var s,o=1,a=e.length,c=t.length;if(void 0!==i&&("ucs2"===(i=String(i).toLowerCase())||"ucs-2"===i||"utf16le"===i||"utf-16le"===i)){if(e.length<2||t.length<2)return-1;o=2,a/=2,c/=2,n/=2}function u(e,t){return 1===o?e[t]:e.readUInt16BE(t*o)}if(r){var p=-1;for(s=n;sa&&(n=a-c),s=n;s>=0;s--){for(var l=!0,f=0;fr&&(i=r):i=r;var s=t.length;if(s%2!=0)throw new TypeError("Invalid hex string");i>s/2&&(i=s/2);for(var o=0;o>8,r=n%256,s.push(r),s.push(i);return s}(t,e.length-n),e,n,i)}function S(e,t,n){return 0===t&&n===e.length?i.fromByteArray(e):i.fromByteArray(e.slice(t,n))}function A(e,t,n){n=Math.min(e.length,n);for(var i=[],r=t;r239?4:u>223?3:u>191?2:1;if(r+l<=n)switch(l){case 1:u<128&&(p=u);break;case 2:128==(192&(s=e[r+1]))&&(c=(31&u)<<6|63&s)>127&&(p=c);break;case 3:s=e[r+1],o=e[r+2],128==(192&s)&&128==(192&o)&&(c=(15&u)<<12|(63&s)<<6|63&o)>2047&&(c<55296||c>57343)&&(p=c);break;case 4:s=e[r+1],o=e[r+2],a=e[r+3],128==(192&s)&&128==(192&o)&&128==(192&a)&&(c=(15&u)<<18|(63&s)<<12|(63&o)<<6|63&a)>65535&&c<1114112&&(p=c)}null===p?(p=65533,l=1):p>65535&&(p-=65536,i.push(p>>>10&1023|55296),p=56320|1023&p),i.push(p),r+=l}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);var n="",i=0;for(;i0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},c.prototype.compare=function(e,t,n,i,r){if(!c.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===i&&(i=0),void 0===r&&(r=this.length),t<0||n>e.length||i<0||r>this.length)throw new RangeError("out of range index");if(i>=r&&t>=n)return 0;if(i>=r)return-1;if(t>=n)return 1;if(this===e)return 0;for(var s=(r>>>=0)-(i>>>=0),o=(n>>>=0)-(t>>>=0),a=Math.min(s,o),u=this.slice(i,r),p=e.slice(t,n),l=0;lr)&&(n=r),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");for(var s=!1;;)switch(i){case"hex":return b(this,e,t,n);case"utf8":case"utf-8":return x(this,e,t,n);case"ascii":return j(this,e,t,n);case"latin1":case"binary":return E(this,e,t,n);case"base64":return w(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return D(this,e,t,n);default:if(s)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),s=!0}},c.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function P(e,t,n){var i="";n=Math.min(e.length,n);for(var r=t;ri)&&(n=i);for(var r="",s=t;sn)throw new RangeError("Trying to access beyond buffer length")}function O(e,t,n,i,r,s){if(!c.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>r||te.length)throw new RangeError("Index out of range")}function I(e,t,n,i){t<0&&(t=65535+t+1);for(var r=0,s=Math.min(e.length-n,2);r>>8*(i?r:1-r)}function F(e,t,n,i){t<0&&(t=4294967295+t+1);for(var r=0,s=Math.min(e.length-n,4);r>>8*(i?r:3-r)&255}function _(e,t,n,i,r,s){if(n+i>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function N(e,t,n,i,s){return s||_(e,0,n,4),r.write(e,t,n,i,23,4),n+4}function R(e,t,n,i,s){return s||_(e,0,n,8),r.write(e,t,n,i,52,8),n+8}c.prototype.slice=function(e,t){var n,i=this.length;if((e=~~e)<0?(e+=i)<0&&(e=0):e>i&&(e=i),(t=void 0===t?i:~~t)<0?(t+=i)<0&&(t=0):t>i&&(t=i),t0&&(r*=256);)i+=this[e+--t]*r;return i},c.prototype.readUInt8=function(e,t){return t||T(e,1,this.length),this[e]},c.prototype.readUInt16LE=function(e,t){return t||T(e,2,this.length),this[e]|this[e+1]<<8},c.prototype.readUInt16BE=function(e,t){return t||T(e,2,this.length),this[e]<<8|this[e+1]},c.prototype.readUInt32LE=function(e,t){return t||T(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},c.prototype.readUInt32BE=function(e,t){return t||T(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},c.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||T(e,t,this.length);for(var i=this[e],r=1,s=0;++s=(r*=128)&&(i-=Math.pow(2,8*t)),i},c.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||T(e,t,this.length);for(var i=t,r=1,s=this[e+--i];i>0&&(r*=256);)s+=this[e+--i]*r;return s>=(r*=128)&&(s-=Math.pow(2,8*t)),s},c.prototype.readInt8=function(e,t){return t||T(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},c.prototype.readInt16LE=function(e,t){t||T(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt16BE=function(e,t){t||T(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},c.prototype.readInt32LE=function(e,t){return t||T(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},c.prototype.readInt32BE=function(e,t){return t||T(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},c.prototype.readFloatLE=function(e,t){return t||T(e,4,this.length),r.read(this,e,!0,23,4)},c.prototype.readFloatBE=function(e,t){return t||T(e,4,this.length),r.read(this,e,!1,23,4)},c.prototype.readDoubleLE=function(e,t){return t||T(e,8,this.length),r.read(this,e,!0,52,8)},c.prototype.readDoubleBE=function(e,t){return t||T(e,8,this.length),r.read(this,e,!1,52,8)},c.prototype.writeUIntLE=function(e,t,n,i){(e=+e,t|=0,n|=0,i)||O(this,e,t,n,Math.pow(2,8*n)-1,0);var r=1,s=0;for(this[t]=255&e;++s=0&&(s*=256);)this[t+r]=e/s&255;return t+n},c.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,1,255,0),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},c.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):I(this,e,t,!0),t+2},c.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,2,65535,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):I(this,e,t,!1),t+2},c.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):F(this,e,t,!0),t+4},c.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,4,4294967295,0),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):F(this,e,t,!1),t+4},c.prototype.writeIntLE=function(e,t,n,i){if(e=+e,t|=0,!i){var r=Math.pow(2,8*n-1);O(this,e,t,n,r-1,-r)}var s=0,o=1,a=0;for(this[t]=255&e;++s>0)-a&255;return t+n},c.prototype.writeIntBE=function(e,t,n,i){if(e=+e,t|=0,!i){var r=Math.pow(2,8*n-1);O(this,e,t,n,r-1,-r)}var s=n-1,o=1,a=0;for(this[t+s]=255&e;--s>=0&&(o*=256);)e<0&&0===a&&0!==this[t+s+1]&&(a=1),this[t+s]=(e/o>>0)-a&255;return t+n},c.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,1,127,-128),c.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},c.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):I(this,e,t,!0),t+2},c.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,2,32767,-32768),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):I(this,e,t,!1),t+2},c.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,4,2147483647,-2147483648),c.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):F(this,e,t,!0),t+4},c.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||O(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),c.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):F(this,e,t,!1),t+4},c.prototype.writeFloatLE=function(e,t,n){return N(this,e,t,!0,n)},c.prototype.writeFloatBE=function(e,t,n){return N(this,e,t,!1,n)},c.prototype.writeDoubleLE=function(e,t,n){return R(this,e,t,!0,n)},c.prototype.writeDoubleBE=function(e,t,n){return R(this,e,t,!1,n)},c.prototype.copy=function(e,t,n,i){if(n||(n=0),i||0===i||(i=this.length),t>=e.length&&(t=e.length),t||(t=0),i>0&&i=this.length)throw new RangeError("sourceStart out of bounds");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),e.length-t=0;--r)e[r+t]=this[r+n];else if(s<1e3||!c.TYPED_ARRAY_SUPPORT)for(r=0;r>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(s=t;s55295&&n<57344){if(!r){if(n>56319){(t-=3)>-1&&s.push(239,191,189);continue}if(o+1===i){(t-=3)>-1&&s.push(239,191,189);continue}r=n;continue}if(n<56320){(t-=3)>-1&&s.push(239,191,189),r=n;continue}n=65536+(r-55296<<10|n-56320)}else r&&(t-=3)>-1&&s.push(239,191,189);if(r=null,n<128){if((t-=1)<0)break;s.push(n)}else if(n<2048){if((t-=2)<0)break;s.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;s.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;s.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return s}function q(e){return i.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(M,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function U(e,t,n,i){for(var r=0;r=t.length||r>=e.length);++r)t[r+n]=e[r];return r}}).call(this,n(13))},function(e,t,n){"use strict";var i=n(52),r=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],s=["scalar","sequence","mapping"];e.exports=function(e,t){var n,o;if(t=t||{},Object.keys(t).forEach((function(t){if(-1===r.indexOf(t))throw new i('Unknown option "'+t+'" is met in definition of "'+e+'" YAML type.')})),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(e){return e},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=(n=t.styleAliases||null,o={},null!==n&&Object.keys(n).forEach((function(e){n[e].forEach((function(t){o[String(t)]=e}))})),o),-1===s.indexOf(this.kind))throw new i('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}},function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(e){"object"==typeof window&&(n=window)}e.exports=n},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=n(54),r=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],s=["scalar","sequence","mapping"];var o=function(e,t){var n,o;if(t=t||{},Object.keys(t).forEach((function(t){if(-1===r.indexOf(t))throw new i('Unknown option "'+t+'" is met in definition of "'+e+'" YAML type.')})),this.tag=e,this.kind=t.kind||null,this.resolve=t.resolve||function(){return!0},this.construct=t.construct||function(e){return e},this.instanceOf=t.instanceOf||null,this.predicate=t.predicate||null,this.represent=t.represent||null,this.defaultStyle=t.defaultStyle||null,this.styleAliases=(n=t.styleAliases||null,o={},null!==n&&Object.keys(n).forEach((function(e){n[e].forEach((function(t){o[String(t)]=e}))})),o),-1===s.indexOf(this.kind))throw new i('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')};t.Type=o},function(e,t){function n(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach((function(t){var i=e[t];"object"!=typeof i||Object.isFrozen(i)||n(i)})),e}var i=n,r=n;i.default=r;class s{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function o(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function a(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t];return t.forEach((function(e){for(const t in e)n[t]=e[t]})),n}const c=e=>!!e.kind;class u{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=o(e)}openNode(e){if(!c(e))return;let t=e.kind;e.sublanguage||(t=`${this.classPrefix}${t}`),this.span(t)}closeNode(e){c(e)&&(this.buffer+="")}value(){return this.buffer}span(e){this.buffer+=``}}class p{constructor(){this.rootNode={children:[]},this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t={kind:e,children:[]};this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(t=>this._walk(e,t)),e.closeNode(t)),e}static _collapse(e){"string"!=typeof e&&e.children&&(e.children.every(e=>"string"==typeof e)?e.children=[e.children.join("")]:e.children.forEach(e=>{p._collapse(e)}))}}class l extends p{constructor(e){super(),this.options=e}addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())}addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root;n.kind=t,n.sublanguage=!0,this.add(n)}toHTML(){return new u(this,this.options).value()}finalize(){return!0}}function f(e){return e?"string"==typeof e?e:e.source:null}const d=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;const h="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",m={begin:"\\\\[\\s\\S]",relevance:0},y={className:"string",begin:"'",end:"'",illegal:"\\n",contains:[m]},g={className:"string",begin:'"',end:'"',illegal:"\\n",contains:[m]},v={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},b=function(e,t,n={}){const i=a({className:"comment",begin:e,end:t,contains:[]},n);return i.contains.push(v),i.contains.push({className:"doctag",begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),i},x=b("//","$"),j=b("/\\*","\\*/"),E=b("#","$"),w={className:"number",begin:"\\b\\d+(\\.\\d+)?",relevance:0},D={className:"number",begin:h,relevance:0},S={className:"number",begin:"\\b(0b[01]+)",relevance:0},A={className:"number",begin:"\\b\\d+(\\.\\d+)?(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},P={begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp",begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[m,{begin:/\[/,end:/\]/,relevance:0,contains:[m]}]}]},$={className:"title",begin:"[a-zA-Z]\\w*",relevance:0},k={className:"title",begin:"[a-zA-Z_]\\w*",relevance:0},C={begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0};var T=Object.freeze({__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:"[a-zA-Z]\\w*",UNDERSCORE_IDENT_RE:"[a-zA-Z_]\\w*",NUMBER_RE:"\\b\\d+(\\.\\d+)?",C_NUMBER_RE:h,BINARY_NUMBER_RE:"\\b(0b[01]+)",RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",SHEBANG:(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=function(...e){return e.map(e=>f(e)).join("")}(t,/.*\b/,e.binary,/\b.*/)),a({className:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)},BACKSLASH_ESCAPE:m,APOS_STRING_MODE:y,QUOTE_STRING_MODE:g,PHRASAL_WORDS_MODE:v,COMMENT:b,C_LINE_COMMENT_MODE:x,C_BLOCK_COMMENT_MODE:j,HASH_COMMENT_MODE:E,NUMBER_MODE:w,C_NUMBER_MODE:D,BINARY_NUMBER_MODE:S,CSS_NUMBER_MODE:A,REGEXP_MODE:P,TITLE_MODE:$,UNDERSCORE_TITLE_MODE:k,METHOD_GUARD:C,END_SAME_AS_BEGIN:function(e){return Object.assign(e,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})}});function O(e,t){"."===e.input[e.index-1]&&t.ignoreMatch()}function I(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=O,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,void 0===e.relevance&&(e.relevance=0))}function F(e,t){Array.isArray(e.illegal)&&(e.illegal=function(...e){return"("+e.map(e=>f(e)).join("|")+")"}(...e.illegal))}function _(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function N(e,t){void 0===e.relevance&&(e.relevance=1)}const R=["of","and","for","in","not","or","if","then","parent","list","value"];function M(e,t){return t?Number(t):function(e){return R.includes(e.toLowerCase())}(e)?0:1}function B(e,{plugins:t}){function n(t,n){return new RegExp(f(t),"m"+(e.case_insensitive?"i":"")+(n?"g":""))}class i{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(e,t){t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]),this.matchAt+=function(e){return new RegExp(e.toString()+"|").exec("").length-1}(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null);const e=this.regexes.map(e=>e[1]);this.matcherRe=n(function(e,t="|"){let n=0;return e.map(e=>{n+=1;const t=n;let i=f(e),r="";for(;i.length>0;){const e=d.exec(i);if(!e){r+=i;break}r+=i.substring(0,e.index),i=i.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?r+="\\"+String(Number(e[1])+t):(r+=e[0],"("===e[0]&&n++)}return r}).map(e=>`(${e})`).join(t)}(e),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e);if(!t)return null;const n=t.findIndex((e,t)=>t>0&&void 0!==e),i=this.matchIndexes[n];return t.splice(0,n),Object.assign(t,i)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){if(this.multiRegexes[e])return this.multiRegexes[e];const t=new i;return this.rules.slice(e).forEach(([e,n])=>t.addRule(e,n)),t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex;let n=t.exec(e);if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)}return n&&(this.regexIndex+=n.position+1,this.regexIndex===this.count&&this.considerAll()),n}}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=a(e.classNameAliases||{}),function t(i,s){const o=i;if(i.isCompiled)return o;[_].forEach(e=>e(i,s)),e.compilerExtensions.forEach(e=>e(i,s)),i.__beforeBegin=null,[I,F,N].forEach(e=>e(i,s)),i.isCompiled=!0;let c=null;if("object"==typeof i.keywords&&(c=i.keywords.$pattern,delete i.keywords.$pattern),i.keywords&&(i.keywords=function e(t,n,i="keyword"){const r={};return"string"==typeof t?s(i,t.split(" ")):Array.isArray(t)?s(i,t):Object.keys(t).forEach((function(i){Object.assign(r,e(t[i],n,i))})),r;function s(e,t){n&&(t=t.map(e=>e.toLowerCase())),t.forEach((function(t){const n=t.split("|");r[n[0]]=[e,M(n[0],n[1])]}))}}(i.keywords,e.case_insensitive)),i.lexemes&&c)throw new Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ");return c=c||i.lexemes||/\w+/,o.keywordPatternRe=n(c,!0),s&&(i.begin||(i.begin=/\B|\b/),o.beginRe=n(i.begin),i.endSameAsBegin&&(i.end=i.begin),i.end||i.endsWithParent||(i.end=/\B|\b/),i.end&&(o.endRe=n(i.end)),o.terminatorEnd=f(i.end)||"",i.endsWithParent&&s.terminatorEnd&&(o.terminatorEnd+=(i.end?"|":"")+s.terminatorEnd)),i.illegal&&(o.illegalRe=n(i.illegal)),i.contains||(i.contains=[]),i.contains=[].concat(...i.contains.map((function(e){return function(e){e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((function(t){return a(e,{variants:null},t)})));if(e.cachedVariants)return e.cachedVariants;if(function e(t){return!!t&&(t.endsWithParent||e(t.starts))}(e))return a(e,{starts:e.starts?a(e.starts):null});if(Object.isFrozen(e))return a(e);return e}("self"===e?i:e)}))),i.contains.forEach((function(e){t(e,o)})),i.starts&&t(i.starts,s),o.matcher=function(e){const t=new r;return e.contains.forEach(e=>t.addRule(e.begin,{rule:e,type:"begin"})),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end"}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t}(o),o}(e)}function L(e){const t={props:["language","code","autodetect"],data:function(){return{detectedLanguage:"",unknownLanguage:!1}},computed:{className(){return this.unknownLanguage?"":"hljs "+this.detectedLanguage},highlighted(){if(!this.autoDetect&&!e.getLanguage(this.language))return console.warn(`The language "${this.language}" you specified could not be found.`),this.unknownLanguage=!0,o(this.code);let t={};return this.autoDetect?(t=e.highlightAuto(this.code),this.detectedLanguage=t.language):(t=e.highlight(this.language,this.code,this.ignoreIllegals),this.detectedLanguage=this.language),t.value},autoDetect(){return!this.language||(e=this.autodetect,Boolean(e||""===e));var e},ignoreIllegals:()=>!0},render(e){return e("pre",{},[e("code",{class:this.className,domProps:{innerHTML:this.highlighted}})])}};return{Component:t,VuePlugin:{install(e){e.component("highlightjs",t)}}}}const q={"after:highlightElement":({el:e,result:t,text:n})=>{const i=z(e);if(!i.length)return;const r=document.createElement("div");r.innerHTML=t.value,t.value=function(e,t,n){let i=0,r="";const s=[];function a(){return e.length&&t.length?e[0].offset!==t[0].offset?e[0].offset"}function u(e){r+=""}function p(e){("start"===e.event?c:u)(e.node)}for(;e.length||t.length;){let t=a();if(r+=o(n.substring(i,t[0].offset)),i=t[0].offset,t===e){s.reverse().forEach(u);do{p(t.splice(0,1)[0]),t=a()}while(t===e&&t.length&&t[0].offset===i);s.reverse().forEach(c)}else"start"===t[0].event?s.push(t[0].node):s.pop(),p(t.splice(0,1)[0])}return r+o(n.substr(i))}(i,z(r),n)}};function U(e){return e.nodeName.toLowerCase()}function z(e){const t=[];return function e(n,i){for(let r=n.firstChild;r;r=r.nextSibling)3===r.nodeType?i+=r.nodeValue.length:1===r.nodeType&&(t.push({event:"start",offset:i,node:r}),i=e(r,i),U(r).match(/br|hr|img|input/)||t.push({event:"stop",offset:i,node:r}));return i}(e,0),t}const H={},V=e=>{console.error(e)},K=(e,...t)=>{console.log("WARN: "+e,...t)},J=(e,t)=>{H[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),H[`${e}/${t}`]=!0)},X=o,W=a,Y=Symbol("nomatch");var G=function(e){const t=Object.create(null),n=Object.create(null),r=[];let o=!0;const a=/(^(<[^>]+>|\t|)+|\n)/gm,c="Could not find the language '{}', did you forget to load/include a language module?",u={disableAutodetect:!0,name:"Plain text",contains:[]};let p={noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:null,__emitter:l};function f(e){return p.noHighlightRe.test(e)}function d(e,t,n,i){let r="",s="";"object"==typeof t?(r=e,n=t.ignoreIllegals,s=t.language,i=void 0):(J("10.7.0","highlight(lang, code, ...args) has been deprecated."),J("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"),s=e,r=t);const o={code:r,language:s};A("before:highlight",o);const a=o.result?o.result:h(o.language,o.code,n,i);return a.code=o.code,A("after:highlight",a),a}function h(e,n,i,a){function u(e,t){const n=x.case_insensitive?t[0].toLowerCase():t[0];return Object.prototype.hasOwnProperty.call(e.keywords,n)&&e.keywords[n]}function l(){null!=D.subLanguage?function(){if(""===P)return;let e=null;if("string"==typeof D.subLanguage){if(!t[D.subLanguage])return void A.addText(P);e=h(D.subLanguage,P,!0,S[D.subLanguage]),S[D.subLanguage]=e.top}else e=m(P,D.subLanguage.length?D.subLanguage:null);D.relevance>0&&($+=e.relevance),A.addSublanguage(e.emitter,e.language)}():function(){if(!D.keywords)return void A.addText(P);let e=0;D.keywordPatternRe.lastIndex=0;let t=D.keywordPatternRe.exec(P),n="";for(;t;){n+=P.substring(e,t.index);const i=u(D,t);if(i){const[e,r]=i;if(A.addText(n),n="",$+=r,e.startsWith("_"))n+=t[0];else{const n=x.classNameAliases[e]||e;A.addKeyword(t[0],n)}}else n+=t[0];e=D.keywordPatternRe.lastIndex,t=D.keywordPatternRe.exec(P)}n+=P.substr(e),A.addText(n)}(),P=""}function f(e){return e.className&&A.openNode(x.classNameAliases[e.className]||e.className),D=Object.create(e,{parent:{value:D}}),D}function d(e){return 0===D.matcher.regexIndex?(P+=e[0],1):(T=!0,0)}function y(e){const t=e[0],n=e.rule,i=new s(n),r=[n.__beforeBegin,n["on:begin"]];for(const n of r)if(n&&(n(e,i),i.isMatchIgnored))return d(t);return n&&n.endSameAsBegin&&(n.endRe=new RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")),n.skip?P+=t:(n.excludeBegin&&(P+=t),l(),n.returnBegin||n.excludeBegin||(P=t)),f(n),n.returnBegin?0:t.length}function g(e){const t=e[0],i=n.substr(e.index),r=function e(t,n,i){let r=function(e,t){const n=e&&e.exec(t);return n&&0===n.index}(t.endRe,i);if(r){if(t["on:end"]){const e=new s(t);t["on:end"](n,e),e.isMatchIgnored&&(r=!1)}if(r){for(;t.endsParent&&t.parent;)t=t.parent;return t}}if(t.endsWithParent)return e(t.parent,n,i)}(D,e,i);if(!r)return Y;const o=D;o.skip?P+=t:(o.returnEnd||o.excludeEnd||(P+=t),l(),o.excludeEnd&&(P=t));do{D.className&&A.closeNode(),D.skip||D.subLanguage||($+=D.relevance),D=D.parent}while(D!==r.parent);return r.starts&&(r.endSameAsBegin&&(r.starts.endRe=r.endRe),f(r.starts)),o.returnEnd?0:t.length}let v={};function b(t,r){const s=r&&r[0];if(P+=t,null==s)return l(),0;if("begin"===v.type&&"end"===r.type&&v.index===r.index&&""===s){if(P+=n.slice(r.index,r.index+1),!o){const t=new Error("0 width match regex");throw t.languageName=e,t.badRule=v.rule,t}return 1}if(v=r,"begin"===r.type)return y(r);if("illegal"===r.type&&!i){const e=new Error('Illegal lexeme "'+s+'" for mode "'+(D.className||"")+'"');throw e.mode=D,e}if("end"===r.type){const e=g(r);if(e!==Y)return e}if("illegal"===r.type&&""===s)return 1;if(C>1e5&&C>3*r.index){throw new Error("potential infinite loop, way more iterations than matches")}return P+=s,s.length}const x=w(e);if(!x)throw V(c.replace("{}",e)),new Error('Unknown language: "'+e+'"');const j=B(x,{plugins:r});let E="",D=a||j;const S={},A=new p.__emitter(p);!function(){const e=[];for(let t=D;t!==x;t=t.parent)t.className&&e.unshift(t.className);e.forEach(e=>A.openNode(e))}();let P="",$=0,k=0,C=0,T=!1;try{for(D.matcher.considerAll();;){C++,T?T=!1:D.matcher.considerAll(),D.matcher.lastIndex=k;const e=D.matcher.exec(n);if(!e)break;const t=b(n.substring(k,e.index),e);k=e.index+t}return b(n.substr(k)),A.closeAllNodes(),A.finalize(),E=A.toHTML(),{relevance:Math.floor($),value:E,language:e,illegal:!1,emitter:A,top:D}}catch(t){if(t.message&&t.message.includes("Illegal"))return{illegal:!0,illegalBy:{msg:t.message,context:n.slice(k-100,k+100),mode:t.mode},sofar:E,relevance:0,value:X(n),emitter:A};if(o)return{illegal:!1,relevance:0,value:X(n),emitter:A,language:e,top:D,errorRaised:t};throw t}}function m(e,n){n=n||p.languages||Object.keys(t);const i=function(e){const t={relevance:0,emitter:new p.__emitter(p),value:X(e),illegal:!1,top:u};return t.emitter.addText(e),t}(e),r=n.filter(w).filter(S).map(t=>h(t,e,!1));r.unshift(i);const s=r.sort((e,t)=>{if(e.relevance!==t.relevance)return t.relevance-e.relevance;if(e.language&&t.language){if(w(e.language).supersetOf===t.language)return 1;if(w(t.language).supersetOf===e.language)return-1}return 0}),[o,a]=s,c=o;return c.second_best=a,c}const y={"before:highlightElement":({el:e})=>{p.useBR&&(e.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n"))},"after:highlightElement":({result:e})=>{p.useBR&&(e.value=e.value.replace(/\n/g,"
"))}},g=/^(<[^>]+>|\t)+/gm,v={"after:highlightElement":({result:e})=>{p.tabReplace&&(e.value=e.value.replace(g,e=>e.replace(/\t/g,p.tabReplace)))}};function b(e){let t=null;const i=function(e){let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"";const n=p.languageDetectRe.exec(t);if(n){const t=w(n[1]);return t||(K(c.replace("{}",n[1])),K("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"}return t.split(/\s+/).find(e=>f(e)||w(e))}(e);if(f(i))return;A("before:highlightElement",{el:e,language:i}),t=e;const r=t.textContent,s=i?d(r,{language:i,ignoreIllegals:!0}):m(r);A("after:highlightElement",{el:e,result:s,text:r}),e.innerHTML=s.value,function(e,t,i){const r=t?n[t]:i;e.classList.add("hljs"),r&&e.classList.add(r)}(e,i,s.language),e.result={language:s.language,re:s.relevance,relavance:s.relevance},s.second_best&&(e.second_best={language:s.second_best.language,re:s.second_best.relevance,relavance:s.second_best.relevance})}const x=()=>{if(x.called)return;x.called=!0,J("10.6.0","initHighlighting() is deprecated. Use highlightAll() instead.");document.querySelectorAll("pre code").forEach(b)};let j=!1;function E(){if("loading"===document.readyState)return void(j=!0);document.querySelectorAll("pre code").forEach(b)}function w(e){return e=(e||"").toLowerCase(),t[e]||t[n[e]]}function D(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach(e=>{n[e.toLowerCase()]=t})}function S(e){const t=w(e);return t&&!t.disableAutodetect}function A(e,t){const n=e;r.forEach((function(e){e[n]&&e[n](t)}))}"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(function(){j&&E()}),!1),Object.assign(e,{highlight:d,highlightAuto:m,highlightAll:E,fixMarkup:function(e){return J("10.2.0","fixMarkup will be removed entirely in v11.0"),J("10.2.0","Please see https://github.com/highlightjs/highlight.js/issues/2534"),t=e,p.tabReplace||p.useBR?t.replace(a,e=>"\n"===e?p.useBR?"
":e:p.tabReplace?e.replace(/\t/g,p.tabReplace):e):t;var t},highlightElement:b,highlightBlock:function(e){return J("10.7.0","highlightBlock will be removed entirely in v12.0"),J("10.7.0","Please use highlightElement now."),b(e)},configure:function(e){e.useBR&&(J("10.3.0","'useBR' will be removed entirely in v11.0"),J("10.3.0","Please see https://github.com/highlightjs/highlight.js/issues/2559")),p=W(p,e)},initHighlighting:x,initHighlightingOnLoad:function(){J("10.6.0","initHighlightingOnLoad() is deprecated. Use highlightAll() instead."),j=!0},registerLanguage:function(n,i){let r=null;try{r=i(e)}catch(e){if(V("Language definition for '{}' could not be registered.".replace("{}",n)),!o)throw e;V(e),r=u}r.name||(r.name=n),t[n]=r,r.rawDefinition=i.bind(null,e),r.aliases&&D(r.aliases,{languageName:n})},unregisterLanguage:function(e){delete t[e];for(const t of Object.keys(n))n[t]===e&&delete n[t]},listLanguages:function(){return Object.keys(t)},getLanguage:w,registerAliases:D,requireLanguage:function(e){J("10.4.0","requireLanguage will be removed entirely in v11."),J("10.4.0","Please see https://github.com/highlightjs/highlight.js/pull/2844");const t=w(e);if(t)return t;throw new Error("The '{}' language is required, but not loaded.".replace("{}",e))},autoDetection:S,inherit:W,addPlugin:function(e){!function(e){e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{e["before:highlightBlock"](Object.assign({block:t.el},t))}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{e["after:highlightBlock"](Object.assign({block:t.el},t))})}(e),r.push(e)},vuePlugin:L(e).VuePlugin}),e.debugMode=function(){o=!1},e.safeMode=function(){o=!0},e.versionString="10.7.3";for(const e in T)"object"==typeof T[e]&&i(T[e]);return Object.assign(e,T),e.addPlugin(y),e.addPlugin(q),e.addPlugin(v),e}({});e.exports=G},function(e,t){var n,i,r=e.exports={};function s(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(e){if(n===setTimeout)return setTimeout(e,0);if((n===s||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:s}catch(e){n=s}try{i="function"==typeof clearTimeout?clearTimeout:o}catch(e){i=o}}();var c,u=[],p=!1,l=-1;function f(){p&&c&&(p=!1,c.length?u=c.concat(u):l=-1,u.length&&d())}function d(){if(!p){var e=a(f);p=!0;for(var t=u.length;t;){for(c=u,u=[];++l1)for(var n=1;n=0?a.stripQuery(e.substr(t).toLowerCase()):""},t.stripQuery=function(e){let t=e.indexOf("?");return t>=0&&(e=e.substr(0,t)),e},t.getHash=function(e){let t=e.indexOf("#");return t>=0?e.substr(t):"#"},t.stripHash=function(e){let t=e.indexOf("#");return t>=0&&(e=e.substr(0,t)),e},t.isHttp=function(e){let t=a.getProtocol(e);return"http"===t||"https"===t||void 0===t&&i.browser},t.isFileSystemPath=function(e){if(i.browser)return!1;let t=a.getProtocol(e);return void 0===t||"file"===t},t.fromFileSystemPath=function(e){r&&(e=e.replace(/\\/g,"/")),e=encodeURI(e);for(let t=0;tdecodeURIComponent(e).replace(c,"/").replace(u,"~"))}}).call(this,n(16))},function(e,t,n){"use strict";const{Ono:i}=n(26),{stripHash:r,toFileSystemPath:s}=n(18),o=t.JSONParserError=class extends Error{constructor(e,t){super(),this.code="EUNKNOWN",this.message=e,this.source=t,this.path=null,i.extend(this)}get footprint(){return`${this.path}+${this.source}+${this.code}+${this.message}`}};c(o);const a=t.JSONParserErrorGroup=class e extends Error{constructor(e){super(),this.files=e,this.message=`${this.errors.length} error${this.errors.length>1?"s":""} occurred while reading '${s(e.$refs._root$Ref.path)}'`,i.extend(this)}static getParserErrors(e){const t=[];for(const n of Object.values(e.$refs._$refs))n.errors&&t.push(...n.errors);return t}get errors(){return e.getParserErrors(this.files)}};c(a);c(t.ParserError=class extends o{constructor(e,t){super(`Error parsing ${t}: ${e}`,t),this.code="EPARSER"}});c(t.UnmatchedParserError=class extends o{constructor(e){super(`Could not find parser for "${e}"`,e),this.code="EUNMATCHEDPARSER"}});c(t.ResolverError=class extends o{constructor(e,t){super(e.message||`Error reading file "${t}"`,t),this.code="ERESOLVER","code"in e&&(this.ioErrorCode=String(e.code))}});c(t.UnmatchedResolverError=class extends o{constructor(e){super(`Could not find resolver for "${e}"`,e),this.code="EUNMATCHEDRESOLVER"}});c(t.MissingPointerError=class extends o{constructor(e,t){super(`Token "${e}" does not exist.`,r(t)),this.code="EMISSINGPOINTER"}});function c(e){Object.defineProperty(e.prototype,"name",{value:e.name,enumerable:!0})}c(t.InvalidPointerError=class extends o{constructor(e,t){super(`Invalid $ref pointer "${e}". Pointers must begin with "#/"`,r(t)),this.code="EINVALIDPOINTER"}}),t.isHandledError=function(e){return e instanceof o||e instanceof a},t.normalizeError=function(e){return null===e.path&&(e.path=[]),e}},function(e,t,n){"use strict";n.d(t,"a",(function(){return m}));const i=/\r?\n/,r=/\bono[ @]/;function s(e,t){let n=a(e.stack),i=t?t.stack:void 0;return n&&i?n+"\n\n"+i:n||i}function o(e,t,n){n?Object.defineProperty(t,"stack",{get:()=>s({stack:e.get.apply(t)},n),enumerable:!1,configurable:!0}):function(e,t){Object.defineProperty(e,"stack",{get:()=>a(t.get.apply(e)),enumerable:!1,configurable:!0})}(t,e)}function a(e){if(e){let t,n=e.split(i);for(let e=0;e0)return n.join("\n")}return e}const c=["function","symbol","undefined"],u=["constructor","prototype","__proto__"],p=Object.getPrototypeOf({});function l(){let e={},t=this;for(let n of f(t))if("string"==typeof n){let i=t[n],r=typeof i;c.includes(r)||(e[n]=i)}return e}function f(e,t=[]){let n=[];for(;e&&e!==p;)n=n.concat(Object.getOwnPropertyNames(e),Object.getOwnPropertySymbols(e)),e=Object.getPrototypeOf(e);let i=new Set(n);for(let e of t.concat(u))i.delete(e);return i}const d=["name","message","stack"];function h(e,t,n){let i=e;return function(e,t){let n=Object.getOwnPropertyDescriptor(e,"stack");!function(e){return Boolean(e&&e.configurable&&"function"==typeof e.get)}(n)?function(e){return Boolean(!e||e.writable||"function"==typeof e.set)}(n)&&(e.stack=s(e,t)):o(n,e,t)}(i,t),t&&"object"==typeof t&&function(e,t){let n=f(t,d),i=e,r=t;for(let e of n)if(void 0===i[e])try{i[e]=r[e]}catch(e){}}(i,t),i.toJSON=l,n&&"object"==typeof n&&Object.assign(i,n),i}const m=y;function y(e,t){function n(...n){let{originalError:i,props:r,message:s}=function(e,t){let n,i,r,s="";return"string"==typeof e[0]?r=e:"string"==typeof e[1]?(e[0]instanceof Error?n=e[0]:i=e[0],r=e.slice(1)):(n=e[0],i=e[1],r=e.slice(2)),r.length>0&&(s=t.format?t.format.apply(void 0,r):r.join(" ")),t.concatMessages&&n&&n.message&&(s+=(s?" \n":"")+n.message),{originalError:n,props:i,message:s}}(n,t);return h(new e(s),i,r)}return t=function(e){return{concatMessages:void 0===(e=e||{}).concatMessages||Boolean(e.concatMessages),format:void 0!==e.format&&("function"==typeof e.format&&e.format)}}(t),n[Symbol.species]=e,n}y.toJSON=function(e){return l.call(e)},y.extend=function(e,t,n){return n||t instanceof Error?h(e,t,n):t?h(e,void 0,t):h(e)}},function(e,t,n){const{getMapValueByKey:i}=n(2),r={hasBindings(){return!(!this._json.bindings||!Object.keys(this._json.bindings).length)},bindings(){return this.hasBindings()?this._json.bindings:{}},bindingProtocols(){return Object.keys(this.bindings())},hasBinding(e){return this.hasBindings()&&!!this._json.bindings[String(e)]},binding(e){return i(this._json.bindings,e)}};e.exports=r},function(e,t,n){const i=n(78),r={hasTags(){return!(!Array.isArray(this._json.tags)||!this._json.tags.length)},tags(){return this.hasTags()?this._json.tags.map(e=>new i(e)):[]},tagNames(){return this.hasTags()?this._json.tags.map(e=>e.name):[]},hasTag(e){return this.hasTags()&&this._json.tags.some(t=>t.name===e)},tag(e){const t=this.hasTags()&&this._json.tags.find(t=>t.name===e);return t?new i(t):null}};e.exports=r},function(e,t,n){const{createMapOfType:i,getMapValueOfType:r,mix:s}=n(2),o=n(3),a=n(74),c=n(38),u=n(40),p=n(85),l=n(17),f=n(22),d=n(4),{xParserSpecParsed:h,xParserSpecStringified:m,xParserCircle:y}=n(25),{assignNameToAnonymousMessages:g,assignNameToComponentMessages:v,assignUidToComponentSchemas:b,assignUidToParameterSchemas:x,assignIdToAnonymousSchemas:j,assignUidToComponentParameterSchemas:E}=n(88),{traverseAsyncApiDocument:w}=n(48);class D extends o{constructor(...e){super(...e),!0!==this.ext(h)&&(v(this),g(this),b(this),E(this),x(this),j(this),this.json()[String(h)]=!0)}version(){return this._json.asyncapi}info(){return new a(this._json.info)}id(){return this._json.id}hasServers(){return!!this._json.servers}servers(){return i(this._json.servers,c)}serverNames(){return this._json.servers?Object.keys(this._json.servers):[]}server(e){return r(this._json.servers,e,c)}hasDefaultContentType(){return!!this._json.defaultContentType}defaultContentType(){return this._json.defaultContentType||null}hasChannels(){return!!this._json.channels}channels(){return i(this._json.channels,u,this)}channelNames(){return this._json.channels?Object.keys(this._json.channels):[]}channel(e){return r(this._json.channels,e,u,this)}hasComponents(){return!!this._json.components}components(){return this._json.components?new p(this._json.components):null}hasMessages(){return!!this.allMessages().size}allMessages(){const e=new Map;return this.hasChannels()&&this.channelNames().forEach(t=>{const n=this.channel(t);n.hasPublish()&&n.publish().messages().forEach(t=>{e.set(t.uid(),t)}),n.hasSubscribe()&&n.subscribe().messages().forEach(t=>{e.set(t.uid(),t)})}),this.hasComponents()&&Object.values(this.components().messages()).forEach(t=>{e.set(t.uid(),t)}),e}allSchemas(){const e=new Map;return w(this,t=>{t.uid()&&e.set(t.uid(),t)}),e}hasCircular(){return!!this._json[String(y)]}traverseSchemas(e,t){w(this,e,t)}static stringify(e,t){const n={...e.json()};return n[String(m)]=!0,JSON.stringify(n,function(){const e=new Map,t=new Map;let n=null;return function(i,r){const s=e.get(this)+(Array.isArray(this)?`[${i}]`:"."+i),o=r===Object(r);o&&e.set(r,s);const a=t.get(r)||"";if(!a&&o){const e=s.replace(/undefined\.\.?/,"");t.set(r,e)}const c="["===a[0]?"$":"$.";let u=a?`$ref:${c}${a}`:r;return null===n?n=r:u===n&&(u="$ref:$"),u}}(),t)}static parse(e){let t=e;if("string"==typeof e?t=JSON.parse(e):"object"==typeof e&&(t={...t}),"object"!=typeof t||!t[String(h)])throw new Error("Cannot parse invalid AsyncAPI document");if(!t[String(m)])return new D(t);delete t[String(m)];return function e(t,n,i,r,s){let o=t,a="$ref:$";if(void 0!==n){o=t[String(n)];const e=n?"."+n:"";a=r.get(t)+(Array.isArray(t)?`[${n}]`:e)}r.set(o,a),s.set(a,o);const c=s.get(o);c&&(t[String(n)]=c);"$ref:$"!==o&&"$ref:$"!==c||(t[String(n)]=i);if(o===Object(o))for(const t in o)e(o,t,i,r,s)}(t,void 0,t,new Map,new Map),new D(t)}}e.exports=s(D,f,l,d)},function(e,t){const n=(e,t)=>(t.type=e.type.startsWith("https://github.com/asyncapi/parser-js/")?e.type:"https://github.com/asyncapi/parser-js/"+e.type,t.title=e.title,e.detail&&(t.detail=e.detail),e.validationErrors&&(t.validationErrors=e.validationErrors),e.parsedJSON&&(t.parsedJSON=e.parsedJSON),e.location&&(t.location=e.location),e.refs&&(t.refs=e.refs),t);class i extends Error{constructor(e){super(),n(e,this),this.message=e.title}toJS(){return n(this,{})}}e.exports=i},function(e,t){e.exports={xParserSpecParsed:"x-parser-spec-parsed",xParserSpecStringified:"x-parser-spec-stringified",xParserMessageName:"x-parser-message-name",xParserSchemaId:"x-parser-schema-id",xParserCircle:"x-parser-circular",xParserCircleProps:"x-parser-circular-props"}},function(e,t,n){"use strict";n.r(t),function(e){var i=n(96);n.d(t,"ono",(function(){return i.a}));var r=n(20);n.d(t,"Ono",(function(){return r.a}));n(107);t.default=i.a,"object"==typeof e.exports&&(e.exports=Object.assign(e.exports.default,e.exports))}.call(this,n(179)(e))},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t,n){"use strict";n.d(t,"b",(function(){return a})),n.d(t,"a",(function(){return c}));var i=n(0),r=n.n(i),s=n(29);function o(e){return"undefined"!=typeof document?document.querySelector(e):null}function a(e){return function(t,n,i){null!==(n=n||o("asyncapi"))&&Object(s.render)(r.a.createElement(e,t),n,i)}}function c(e){return function(t,n,i){null!==(n=n||o("asyncapi"))&&Object(s.hydrate)(r.a.createElement(e,t),n,i)}}},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}}(),e.exports=n(71)},function(e,t,n){const i=n(42),r=n(43),s=n(47),o=n(83);e.exports=class extends i{hasMultipleMessages(){return!!(this._json.message&&this._json.message.oneOf&&this._json.message.oneOf.length>1)||(this._json.message,!1)}traits(){const e=this._json["x-parser-original-traits"]||this._json.traits;return e?e.map(e=>new s(e)):[]}hasTraits(){return!!this._json["x-parser-original-traits"]||!!this._json.traits}messages(){return this._json.message?this._json.message.oneOf?this._json.message.oneOf.map(e=>new r(e)):[new r(this._json.message)]:[]}message(e){return this._json.message?this._json.message.oneOf&&1===this._json.message.oneOf.length?new r(this._json.message.oneOf[0]):this._json.message.oneOf?"number"!=typeof e||e>this._json.message.oneOf.length-1?null:new r(this._json.message.oneOf[+e]):new r(this._json.message):null}security(){return this._json.security?this._json.security.map(e=>new o(e)):null}}},function(e,t,n){"use strict";function i(e,t,n,i){var r=i?" !== ":" === ",s=i?" || ":" && ",o=i?"!":"",a=i?"":"!";switch(e){case"null":return t+r+"null";case"array":return o+"Array.isArray("+t+")";case"object":return"("+o+t+s+"typeof "+t+r+'"object"'+s+a+"Array.isArray("+t+"))";case"integer":return"(typeof "+t+r+'"number"'+s+a+"("+t+" % 1)"+s+t+r+t+(n?s+o+"isFinite("+t+")":"")+")";case"number":return"(typeof "+t+r+'"'+e+'"'+(n?s+o+"isFinite("+t+")":"")+")";default:return"typeof "+t+r+'"'+e+'"'}}e.exports={copy:function(e,t){for(var n in t=t||{},e)t[n]=e[n];return t},checkDataType:i,checkDataTypes:function(e,t,n){switch(e.length){case 1:return i(e[0],t,n,!0);default:var r="",o=s(e);for(var a in o.array&&o.object&&(r=o.null?"(":"(!"+t+" || ",r+="typeof "+t+' !== "object")',delete o.null,delete o.array,delete o.object),o.number&&delete o.integer,o)r+=(r?" && ":"")+i(a,t,n,!0);return r}},coerceToTypes:function(e,t){if(Array.isArray(t)){for(var n=[],i=0;i=t)throw new Error("Cannot access property/index "+i+" levels up, current level is "+t);return n[t-i]}if(i>t)throw new Error("Cannot access data "+i+" levels up, current level is "+t);if(s="data"+(t-i||""),!r)return s}for(var a=s,u=r.split("/"),p=0;p0&&r.a.createElement("li",{className:"mb-3 mt-9"},r.a.createElement("a",{className:"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900",href:"#messages",onClick:function(){return o(!1)}},"Messages"),r.a.createElement("ul",{className:"text-sm mt-2"},Object.entries(f).map((function(e){var t=e[0],n=e[1];return r.a.createElement("li",{key:t},r.a.createElement("a",{className:"flex break-words no-underline text-gray-700 mt-2 hover:text-gray-900",href:"#message-".concat(t),onClick:function(){return o(!1)}},r.a.createElement("div",{className:"break-all inline-block"},n.uid())))})))),y=d&&Object.keys(d).length>0&&r.a.createElement("li",{className:"mb-3 mt-9"},r.a.createElement("a",{className:"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900",href:"#schemas",onClick:function(){return o(!1)}},"Schemas"),r.a.createElement("ul",{className:"text-sm mt-2"},Object.keys(d).map((function(e){return r.a.createElement("li",{key:e},r.a.createElement("a",{className:"flex break-words no-underline text-gray-700 mt-2 hover:text-gray-900",href:"#schema-".concat(e),onClick:function(){return o(!1)}},r.a.createElement("div",{className:"break-all inline-block"},e)))}))));return r.a.createElement(D.Provider,{value:{setShowSidebar:o}},r.a.createElement("div",{className:"burger-menu rounded-full h-16 w-16 bg-white fixed bottom-16 right-8 flex items-center justify-center z-30 cursor-pointer shadow-md bg-teal-500",onClick:function(){return o((function(e){return!e}))},"data-lol":s},r.a.createElement("svg",{viewBox:"0 0 100 70",width:"40",height:"30",className:"fill-current text-gray-200"},r.a.createElement("rect",{width:"100",height:"10"}),r.a.createElement("rect",{y:"30",width:"100",height:"10"}),r.a.createElement("rect",{y:"60",width:"100",height:"10"}))),r.a.createElement("div",{className:"".concat(s?"block fixed w-full":"hidden"," sidebar relative w-64 max-h-screen h-full bg-gray-200 shadow z-20")},r.a.createElement("div",{className:"".concat(s?"w-full":""," block fixed max-h-screen h-full font-sans px-4 pt-8 pb-16 overflow-y-auto bg-gray-200")},r.a.createElement("div",{className:"sidebar--content"},r.a.createElement("div",null,p?r.a.createElement("img",{src:p,alt:"".concat(u.title()," logo, ").concat(u.version()," version")}):r.a.createElement("h1",{className:"text-2xl font-light"},u.title()," ",u.version())),r.a.createElement("ul",{className:"text-sm mt-10 relative"},r.a.createElement("li",{className:"mb-3"},r.a.createElement("a",{className:"text-gray-700 no-underline hover:text-gray-900",href:"#introduction",onClick:function(){return o(!1)}},"Introduction")),c.hasServers()&&r.a.createElement("li",{className:"mb-3"},r.a.createElement("a",{className:"text-gray-700 no-underline hover:text-gray-900",href:"#servers",onClick:function(){return o(!1)}},"Servers")),c.hasChannels()&&r.a.createElement(r.a.Fragment,null,r.a.createElement("li",{className:"mb-3 mt-9"},r.a.createElement("a",{className:"text-xs uppercase text-gray-700 mt-10 mb-4 font-thin hover:text-gray-900",href:"#operations",onClick:function(){return o(!1)}},"Operations"),r.a.createElement(h,null)),m,y))))))},A=function(){var e=j().channels(),t=[];return Object.entries(e).forEach((function(e){var n=e[0],i=e[1];i.hasPublish()&&t.push(r.a.createElement(C,{channelName:n,key:"pub-".concat(n)})),i.hasSubscribe()&&t.push(r.a.createElement(T,{channelName:n,key:"sub-".concat(n)}))})),r.a.createElement("ul",{className:"text-sm mt-2"},t)},P=function(){var e=j(),t=e.channels(),n=e.tags(),i=function(e){var n=[];return Object.entries(t).forEach((function(t){var i=t[0],o=t[1];o.hasPublish()&&s.a.containTags(o.publish(),e)&&n.push(r.a.createElement(C,{channelName:i,key:"pub-".concat(i)})),o.hasSubscribe()&&s.a.containTags(o.subscribe(),e)&&n.push(r.a.createElement(T,{channelName:i,key:"sub-".concat(i)}))})),n},o=[];return Object.entries(t).forEach((function(e){var t=e[0],i=e[1];!i.hasPublish()||i.publish().hasTags()&&s.a.containTags(i.publish(),n)||o.push(r.a.createElement(C,{channelName:t,key:"pub-".concat(t)})),!i.hasSubscribe()||i.subscribe().hasTags()&&s.a.containTags(i.subscribe(),n)||o.push(r.a.createElement(T,{channelName:t,key:"sub-".concat(t)}))})),r.a.createElement("div",null,r.a.createElement("ul",null,n&&n.map((function(e){return i(e).length>0&&r.a.createElement("li",{key:e.name()},r.a.createElement(k,{tagName:e.name()},i(e)))})),o.length>0&&r.a.createElement("li",null,r.a.createElement(k,{tagName:"Untagged"},o))))},$=function(){var e=j(),t=e.channels(),n=s.a.operationsTags(e),i=function(e){var n=[];return Object.entries(t).forEach((function(t){var i=t[0],o=t[1];o.hasPublish()&&s.a.containTags(o.publish(),e)&&n.push(r.a.createElement(C,{channelName:i,key:"pub-".concat(i)})),o.hasSubscribe()&&s.a.containTags(o.subscribe(),e)&&n.push(r.a.createElement(T,{channelName:i,key:"sub-".concat(i)}))})),n},o=[];return Object.entries(t).forEach((function(e){var t=e[0],i=e[1];!i.hasPublish()||i.publish().hasTags()&&s.a.containTags(i.publish(),n)||o.push(r.a.createElement(C,{channelName:t,key:"pub-".concat(t)})),!i.hasSubscribe()||i.subscribe().hasTags()&&s.a.containTags(i.subscribe(),n)||o.push(r.a.createElement(T,{channelName:t,key:"sub-".concat(t)}))})),r.a.createElement("div",null,r.a.createElement("ul",null,n&&n.map((function(e){return i(e).length>0&&r.a.createElement("li",{key:e.name()},r.a.createElement(k,{tagName:e.name()},i(e)))})),o.length>0&&r.a.createElement("li",null,r.a.createElement(k,{tagName:"Untagged"},o))))},k=function(e){var t=e.tagName,n=e.children,s=Object(i.useState)(!1),o=s[0],a=s[1];return r.a.createElement("div",null,r.a.createElement(b,{onClick:function(){return a((function(e){return!e}))},chevronProps:{className:o?"-rotate-180":"-rotate-90"}},r.a.createElement("span",{className:"text-sm inline-block mt-1 font-extralight"},t)),r.a.createElement("ul",{className:"".concat(o?"block":"hidden"," text-sm mt-2 font-light")},n))},C=function(e){var t=e.channelName,n=w(),s=Object(i.useContext)(D).setShowSidebar;return r.a.createElement("li",null,r.a.createElement("a",{className:"flex no-underline text-gray-700 mb-2 hover:text-gray-900",href:"#operation-publish-".concat(t),onClick:function(){return s(!1)}},r.a.createElement("span",{className:"bg-blue-600 font-bold h-6 no-underline text-white uppercase p-1 mr-2 rounded text-xs",title:"Publish"},n.publishLabel||o.f),r.a.createElement("span",{className:"break-all inline-block"},t)))},T=function(e){var t=e.channelName,n=w(),s=Object(i.useContext)(D).setShowSidebar;return r.a.createElement("li",null,r.a.createElement("a",{className:"flex no-underline text-gray-700 mb-2 hover:text-gray-900",href:"#operation-subscribe-".concat(t),onClick:function(){return s(!1)}},r.a.createElement("span",{className:"bg-green-600 font-bold h-6 no-underline text-white uppercase p-1 mr-2 rounded text-xs",title:"Subscribe"},n.subscribeLabel||o.i),r.a.createElement("span",{className:"break-all inline-block"},t)))},O=function(e){var t=e.href,n=e.title,i=e.className,s=e.children;return r.a.createElement("a",{href:t,title:n,className:i,target:"_blank",rel:"nofollow noopener noreferrer"},s)},I=n(56),F=n(57),_=n(15),N=n.n(_),R=n(58),M=n.n(R),B=n(59),L=n.n(B),q=n(60),U=n.n(q);N.a.registerLanguage("json",M.a),N.a.registerLanguage("yaml",L.a),N.a.registerLanguage("bash",U.a);var z={langPrefix:"hljs language-",highlight:function(e,t){if(!N.a.getLanguage(t))return e;try{return N.a.highlight(e,{language:t}).value}catch(t){return e}}};var H=function(e){var t,n=e.children;return n?"string"!=typeof n?r.a.createElement(r.a.Fragment,null,n):r.a.createElement("div",{className:"prose max-w-none text-sm",dangerouslySetInnerHTML:{__html:Object(I.sanitize)((t=n,Object(F.marked)(t,z)))}}):null},V=function(e){var t=e.tag,n="#".concat(t.name()),i=t.description()||"",s=t.externalDocs(),o=r.a.createElement("div",{title:i,className:"border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs rounded px-3 py-1"},r.a.createElement("span",{className:s?"underline":""},n));return s?r.a.createElement(O,{href:s.url(),title:i},o):o},K=function(e){var t=e.tags;return t&&t.length?r.a.createElement("ul",{className:"flex flex-wrap leading-normal"},t.map((function(e){return r.a.createElement("li",{className:"inline-block mt-2 mr-2",key:e.name()},r.a.createElement(V,{tag:e}))}))):null},J=function(){var e=j(),t=e.info();if(!t)return null;var n=e.id(),i=e.externalDocs(),s=t.license(),a=t.termsOfService(),c=e.defaultContentType(),u=t.contact(),p=s||a||c||u||i;return r.a.createElement("div",{className:"panel-item"},r.a.createElement("div",{className:"panel-item--center px-8 text-left",id:"introduction"},r.a.createElement("div",{className:"text-4xl"},t.title()," ",t.version()),p&&r.a.createElement("ul",{className:"flex flex-wrap mt-2 leading-normal"},s&&r.a.createElement("li",{className:"inline-block mt-2 mr-2"},s.url()?r.a.createElement(O,{className:"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:s.url()},r.a.createElement("span",null,s.name())):r.a.createElement("span",{className:"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1"},s.name())),a&&r.a.createElement("li",{className:"inline-block mt-2 mr-2"},r.a.createElement(O,{className:"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:a},r.a.createElement("span",null,o.j))),c&&r.a.createElement("li",{className:"inline-block mt-2 mr-2"},r.a.createElement(O,{className:"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:"".concat(o.a,"/").concat(c)},r.a.createElement("span",null,c))),i&&r.a.createElement("li",{className:"inline-block mt-2 mr-2"},r.a.createElement(O,{className:"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:i.url()},r.a.createElement("span",null,o.c))),u&&r.a.createElement(r.a.Fragment,null,u.url()&&r.a.createElement("li",{className:"inline-block mt-2 mr-2"},r.a.createElement(O,{className:"border border-solid border-purple-300 hover:bg-purple-300 hover:text-purple-600 text-purple-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:u.url()},r.a.createElement("span",null,u.name()||o.k))),u.email()&&r.a.createElement("li",{className:"inline-block mt-2 mr-2"},r.a.createElement(O,{className:"border border-solid border-purple-300 hover:bg-purple-300 hover:text-purple-600 text-purple-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:"mailto:".concat(u.email())},r.a.createElement("span",null,u.email())))),n&&r.a.createElement("li",{className:"inline-block mt-2 mr-2"},r.a.createElement("span",{className:"border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs uppercase rounded px-3 py-1"},"ID: ",n))),t.hasDescription()&&r.a.createElement("div",{className:"mt-4"},r.a.createElement(H,null,t.description())),e.hasTags()&&r.a.createElement("div",{className:"mt-4"},r.a.createElement(K,{tags:e.tags()}))),r.a.createElement("div",{className:"panel-item--right"}))},X=function(){function e(){}return e.securityType=function(e){switch(e){case"apiKey":return"API key";case"oauth2":return"OAuth2";case"openIdConnect":return"Open ID";case"http":return"HTTP";case"userPassword":return"User/Password";case"X509":return"X509:";case"symmetricEncryption":return"Symmetric Encription";case"asymmetricEncryption":return"Asymmetric Encription";case"httpApiKey":return"HTTP API key";case"scramSha256":return"ScramSha256";case"scramSha512":return"ScramSha512";case"gssapi":return"GSSAPI";default:return"API key"}},e.flowName=function(e){switch(e){case"implicit":return"Implicit";case"password":return"Password";case"clientCredentials":return"Client credentials";case"authorizationCode":return"Authorization Code";default:return"Implicit"}},e.getKafkaSecurity=function(e,t){var n,i;if(n="kafka"===e?t?"SASL_PLAINTEXT":"PLAINTEXT":t?"SASL_SSL":"SSL",t)switch(t.type()){case"plain":i="PLAIN";break;case"scramSha256":i="SCRAM-SHA-256";break;case"scramSha512":i="SCRAM-SHA-512";break;case"oauth2":i="OAUTHBEARER";break;case"gssapi":i="GSSAPI";break;case"X509":n="SSL"}return{securityProtocol:n,saslMechanism:i}},e}(),W=function(e){var t,n=e.security,i=void 0===n?[]:n,s=e.protocol,o=void 0===s?"":s,a=e.header,c=void 0===a?"Security":a,u=j(),p=u.hasComponents()&&u.components().securitySchemes();if(i&&i.length&&p&&Object.keys(p).length){var l=i.map((function(e){var t=e.json(),n=Object.keys(t)[0],i=p[String(n)],s=t[String(n)];return i?r.a.createElement(G,{protocol:o,securitySchema:i,requiredScopes:s,key:i.type()}):null})).filter(Boolean);t=r.a.createElement("ul",null,l.map((function(e,t){return r.a.createElement("li",{className:"mt-2",key:t},e)})))}else"kafka"!==o&&"kafka-secure"!==o||(t=r.a.createElement(G,{protocol:o,securitySchema:null}));return t?r.a.createElement("div",{className:"text-sm mt-4"},r.a.createElement("h5",{className:"text-gray-800"},c,":"),t):null};var Y,G=function(e){var t,n=e.securitySchema,i=e.protocol,s=function(e,t){void 0===t&&(t=[]);var n=[];return e&&(e.name()&&n.push(r.a.createElement("span",null,"Name: ",e.name())),e.in()&&n.push(r.a.createElement("span",null,"In: ",e.in())),e.scheme()&&n.push(r.a.createElement("span",null,"Scheme: ",e.scheme())),e.bearerFormat()&&n.push(r.a.createElement("span",null,"Bearer format: ",e.bearerFormat())),e.openIdConnectUrl()&&n.push(r.a.createElement(O,{href:e.openIdConnectUrl(),className:"underline"},"Connect URL")),t.length&&n.push(r.a.createElement("span",null,"Required scopes: ",t.join(", ")))),n}(n,e.requiredScopes);if(["kafka","kafka-secure"].includes(i)){var o=X.getKafkaSecurity(i,n),a=o.securityProtocol,c=o.saslMechanism;t=r.a.createElement("div",{className:"px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded"},a&&r.a.createElement("div",{className:"mt-1"},r.a.createElement("span",{className:"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase"},"security.protocol:"),r.a.createElement("span",{className:"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1"},a)),c&&r.a.createElement("div",{className:"mt-1"},r.a.createElement("span",{className:"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase"},"sasl.mechanism:"),r.a.createElement("span",{className:"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1"},c)))}var u=n&&n.flows(),p=u&&Object.entries(u).map((function(e){var t=e[0],n=e[1],i=n.authorizationUrl(),s=n.tokenUrl(),o=n.refreshUrl(),a=n.scopes();return r.a.createElement("div",{className:"px-4 py-2 ml-2 mb-2 border border-gray-400 bg-gray-100 rounded",key:t},r.a.createElement("div",null,r.a.createElement("span",{className:"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase"},"Flow:"),r.a.createElement("span",{className:"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase"},X.flowName(t))),i&&r.a.createElement("div",{className:"mt-1"},r.a.createElement("span",{className:"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase"},"Auth URL:"),r.a.createElement(O,{href:i,className:"underline"},i)),s&&r.a.createElement("div",{className:"mt-1"},r.a.createElement("span",{className:"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase"},"Token URL:"),r.a.createElement(O,{href:s,className:"underline"},s)),o&&r.a.createElement("div",{className:"mt-1"},r.a.createElement("span",{className:"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase"},"Refresh URL:"),r.a.createElement(O,{href:o,className:"underline"},o)),a&&r.a.createElement("div",{className:"mt-1"},r.a.createElement("span",{className:"text-xs font-bold text-gray-600 mt-1 mr-1 uppercase"},"Scopes:"),r.a.createElement("ul",{className:"inline-block"},a&&Object.entries(a).map((function(e){var t=e[0],n=e[1];return r.a.createElement("li",{className:"inline-block font-bold no-underline bg-indigo-400 text-white text-xs rounded py-0 px-1 ml-1",title:n,key:t},t)})))))}));return r.a.createElement("div",null,n&&s&&r.a.createElement("div",null,r.a.createElement("span",null,X.securityType(n.type()),s.length>0&&r.a.createElement("ul",{className:"inline-block ml-2"},s.map((function(e,t){return r.a.createElement("li",{className:"inline-block font-bold no-underline bg-blue-400 text-white text-xs uppercase rounded px-2 py-0 ml-1",key:t},e)}))))),n&&n.hasDescription()&&r.a.createElement("div",null,r.a.createElement(H,null,n.description())),p&&p.length>0&&r.a.createElement("ul",{className:"my-2"},r.a.createElement("li",null,p)),t&&r.a.createElement("div",null,t))},Q=n(10),Z=n.n(Q);!function(e){e.ANY="any",e.RESTRICTED_ANY="restricted any",e.NEVER="never",e.UNKNOWN="unknown"}(Y||(Y={}));var ee=["string","number","integer","boolean","array","object","null"],te=Object.keys({maxLength:"string",minLength:"string",pattern:"string",contentMediaType:"string",contentEncoding:"string",multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",contains:"array",additionalItems:"array",maxProperties:"object",minProperties:"object",required:"object",properties:"object",patternProperties:"object",propertyNames:"object",dependencies:"object",additionalProperties:"object"}),ne=function(){function e(){}return e.toSchemaType=function(e){var t=this;if(!e||"function"!=typeof e.json)return Y.UNKNOWN;if(e.isBooleanSchema())return!0===e.json()?Y.ANY:Y.NEVER;if(0===Object.keys(e.json()).length)return Y.ANY;var n=e.not();if(n&&this.inferType(n)===Y.ANY)return Y.NEVER;var i=this.inferType(e);if(Array.isArray(i))return i.map((function(n){return t.toType(n,e)})).join(" | ");i=this.toType(i,e);var r=this.toCombinedType(e);return i&&r?"".concat(i," ").concat(r):r||i},e.prettifyValue=function(e,t){void 0===t&&(t=!0);var n=typeof e;return"string"===n?t?'"'.concat(e,'"'):e:"number"===n||"bigint"===n||"boolean"===n?"".concat(e):Array.isArray(e)?"[".concat(e.toString(),"]"):JSON.stringify(e)},e.humanizeConstraints=function(e){var t=[],n=this.humanizeNumberRangeConstraint(e.minimum(),e.exclusiveMinimum(),e.maximum(),e.exclusiveMaximum());void 0!==n&&t.push(n);var i=this.humanizeMultipleOfConstraint(e.multipleOf());void 0!==i&&t.push(i);var r=this.humanizeRangeConstraint("characters",e.minLength(),e.maxLength());void 0!==r&&t.push(r);var s=e.uniqueItems(),o=this.humanizeRangeConstraint(s?"unique items":"items",e.minItems(),e.maxItems());void 0!==o&&t.push(o);var a=this.humanizeRangeConstraint("properties",e.minProperties(),e.maxProperties());return void 0!==a&&t.push(a),t},e.isExpandable=function(e){var t=this.inferType(e);if((t=Array.isArray(t)?t:[t]).includes("object")||t.includes("array"))return!0;if(e.oneOf()||e.anyOf()||e.allOf()||Object.keys(e.properties()).length||e.items()||e.not()||e.if()||e.then()||e.else())return!0;var n=this.getCustomExtensions(e);return!(!n||!Object.keys(n).length)},e.serverVariablesToSchema=function(e){var t;if(e&&Object.keys(e).length){var n=((t={type:"object",properties:Object.entries(e).reduce((function(e,t){var n=t[0],i=t[1];return e[n]=Object.assign({},i.json()||{}),e[n].type="string",e}),{}),required:Object.keys(e)})[this.extRenderType]=!1,t[this.extRenderAdditionalInfo]=!1,t);return new Z.a(n)}},e.parametersToSchema=function(e){var t,n=this;if(e&&Object.keys(e).length){var i=((t={type:"object",properties:Object.entries(e).reduce((function(e,t){var i=t[0],r=t[1],s=r.schema();return e[i]=Object.assign({},s?s.json():{}),e[i].description=r.description()||e[i].description,e[i][n.extParameterLocation]=r.location(),e}),{}),required:Object.keys(e)})[this.extRenderType]=!1,t[this.extRenderAdditionalInfo]=!1,t);return new Z.a(i)}},e.jsonToSchema=function(e){var t=this.jsonFieldToSchema(e);return new Z.a(t)},e.getCustomExtensions=function(e){if(e&&"function"==typeof e.extensions)return Object.entries(e.extensions()||{}).reduce((function(e,t){var n=t[0],i=t[1];return n.startsWith("x-parser-")||n.startsWith("x-schema-private-")||(e[n]=i),e}),{})},e.getDependentRequired=function(e,t){var n=[],i=t.dependencies();if(i){for(var r=0,s=Object.entries(i);r")}return e},e.toItemsType=function(e,t){var n=this,i=e.map((function(e){return n.toSchemaType(e)})).join(", "),r=t.additionalItems();if(void 0===r||r.json()){var s=void 0===r||!0===r.json()?Y.ANY:this.toSchemaType(r);return"tuple<".concat(i||Y.UNKNOWN,", ...optional<").concat(s,">>")}return"tuple<".concat(i||Y.UNKNOWN,">")},e.toCombinedType=function(e){return e.oneOf()?"oneOf":e.anyOf()?"anyOf":e.allOf()?"allOf":void 0},e.inferType=function(e){var t=e.type();if(void 0!==t)return Array.isArray(t)?(t.includes("integer")&&t.includes("number")&&(t=t.filter((function(e){return"integer"!==e}))),1===t.length?t[0]:t):t;var n=e.const();if(void 0!==n)return typeof n;var i=e.enum();if(Array.isArray(i)&&i.length){var r=Array.from(new Set(i.map((function(e){return typeof e}))));return 1===r.length?r[0]:r}var s=Object.keys(e.json()||{})||[];return!0===te.some((function(e){return s.includes(e)}))?Y.RESTRICTED_ANY:this.toCombinedType(e)?"":Y.ANY},e.humanizeNumberRangeConstraint=function(e,t,n,i){var r,s=void 0!==t,o=void 0!==e||s,a=void 0!==i,c=void 0!==n||a;return o&&c?(r=s?"( ":"[ ",r+=s?t:e,r+=" .. ",r+=a?i:n,r+=a?" )":" ]"):o?(r=s?"> ":">= ",r+=s?t:e):c&&(r=a?"< ":"<= ",r+=a?i:n),r},e.humanizeMultipleOfConstraint=function(e){if(void 0!==e){var t=e.toString(10);return/^0\.0*1$/.test(t)?"decimal places <= ".concat(t.split(".")[1].length):"multiple of ".concat(t)}},e.humanizeRangeConstraint=function(e,t,n){var i;return void 0!==t&&void 0!==n?i=t===n?"".concat(t," ").concat(e):"[ ".concat(t," .. ").concat(n," ] ").concat(e):void 0!==n?i="<= ".concat(n," ").concat(e):void 0!==t&&(i=1===t?"non-empty":">= ".concat(t," ").concat(e)),i},e.jsonFieldToSchema=function(e){var t,n,i,r,s=this;return null==e?((t={type:"string",const:""})[this.extRawValue]=!0,t):"object"!=typeof e?((n={type:"string",const:"function"==typeof e.toString?e.toString():e})[this.extRawValue]=!0,n):this.isJSONSchema(e)?e:Array.isArray(e)?((i={type:"array",items:e.map((function(e){return s.jsonFieldToSchema(e)}))})[this.extRenderType]=!1,i[this.extRenderAdditionalInfo]=!1,i):((r={type:"object",properties:Object.entries(e).reduce((function(e,t){var n=t[0],i=t[1];return e[n]=s.jsonFieldToSchema(i),e}),{})})[this.extRenderType]=!1,r[this.extRenderAdditionalInfo]=!1,r)},e.isJSONSchema=function(e){return!(!e||"object"!=typeof e||!(ee.includes(e.type)||Array.isArray(e.type)&&e.type.some((function(e){return!ee.includes(e)}))))},e.extRenderType="x-schema-private-render-type",e.extRenderAdditionalInfo="x-schema-private-render-additional-info",e.extRawValue="x-schema-private-raw-value",e.extParameterLocation="x-schema-private-parameter-location",e}(),ie=function(e){var t=e.name,n=void 0===t?"Extensions":t,i=e.item,s=ne.getCustomExtensions(i);if(!s||!Object.keys(s).length)return null;var o=ne.jsonToSchema(s);return o&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(se,{schemaName:n,schema:o,onlyTitle:!0}))},re=r.a.createContext({reverse:!1,deepExpanded:!1}),se=function(e){var t=e.schemaName,n=e.schema,s=e.required,o=void 0!==s&&s,a=e.isPatternProperty,c=void 0!==a&&a,u=e.isProperty,p=void 0!==u&&u,l=e.isCircular,f=void 0!==l&&l,d=e.dependentRequired,h=e.expanded,m=void 0!==h&&h,y=e.onlyTitle,g=void 0!==y&&y,v=Object(i.useContext)(re),x=v.reverse,j=v.deepExpanded,E=Object(i.useState)(m),w=E[0],D=E[1],S=Object(i.useState)(!1),A=S[0],P=S[1];if(Object(i.useEffect)((function(){P(j)}),[j,P]),Object(i.useEffect)((function(){D(A)}),[A,D]),!n||"string"==typeof t&&((null==t?void 0:t.startsWith("x-parser-"))||(null==t?void 0:t.startsWith("x-schema-private-"))))return null;var $=ne.getDependentSchemas(n),k=ne.humanizeConstraints(n),C=n.externalDocs(),T=!1!==n.ext(ne.extRenderType),I=!0===n.ext(ne.extRawValue),F=n.ext(ne.extParameterLocation),_=ne.isExpandable(n)||$,N=ne.toSchemaType(n);f=f||n.isCircular()||n.ext("x-parser-circular")||!1;var R=n.uid(),M=n.items();M&&!Array.isArray(M)?(f=f||M.isCircular()||M.ext("x-parser-circular")||!1)&&"function"==typeof M.circularSchema&&(N=ne.toSchemaType(M.circularSchema())):f&&"function"==typeof n.circularSchema&&(N=ne.toSchemaType(n.circularSchema()));var B=p?"italic":"",L="string"==typeof t?r.a.createElement("span",{className:"break-words text-sm ".concat(B)},t):t;return r.a.createElement(re.Provider,{value:{reverse:!x,deepExpanded:A}},r.a.createElement("div",null,r.a.createElement("div",{className:"flex py-2"},r.a.createElement("div",{className:"".concat(g?"":"min-w-1/4"," mr-2")},_&&!f?r.a.createElement(r.a.Fragment,null,r.a.createElement(b,{onClick:function(){return D((function(e){return!e}))},expanded:w},L),r.a.createElement("button",{type:"button",onClick:function(){return P((function(e){return!e}))},className:"ml-1 text-sm text-gray-500"},A?"Collapse all":"Expand all")):r.a.createElement("span",{className:"break-words text-sm ".concat(p?"italic":"")},t),c&&r.a.createElement("div",{className:"text-gray-500 text-xs italic"},"(pattern property)"),o&&r.a.createElement("div",{className:"text-red-600 text-xs"},"required"),d&&r.a.createElement(r.a.Fragment,null,r.a.createElement("div",{className:"text-gray-500 text-xs"},"required when defined:"),r.a.createElement("div",{className:"text-red-600 text-xs"},d.join(", "))),n.deprecated()&&r.a.createElement("div",{className:"text-red-600 text-xs"},"deprecated"),n.writeOnly()&&r.a.createElement("div",{className:"text-gray-500 text-xs"},"write-only"),n.readOnly()&&r.a.createElement("div",{className:"text-gray-500 text-xs"},"read-only")),I?r.a.createElement("div",null,r.a.createElement("div",{className:"text-sm"},ne.prettifyValue(n.const(),!1))):r.a.createElement("div",null,r.a.createElement("div",null,T&&r.a.createElement("div",{className:"capitalize text-sm text-teal-500 font-bold inline-block mr-2"},f?"".concat(N," [CIRCULAR]"):N),r.a.createElement("div",{className:"inline-block"},n.format()&&r.a.createElement("span",{className:"bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs"},"format: ",n.format()),void 0!==n.pattern()&&r.a.createElement("span",{className:"bg-yellow-600 font-bold no-underline text-white rounded mr-2 p-1 text-xs"},"must match: ",n.pattern()),void 0!==n.contentMediaType()&&r.a.createElement("span",{className:"bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs"},"media type: ",n.contentMediaType()),void 0!==n.contentEncoding()&&r.a.createElement("span",{className:"bg-yellow-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs"},"encoding: ",n.contentEncoding()),!!k.length&&k.map((function(e){return r.a.createElement("span",{className:"bg-purple-600 font-bold no-underline text-white rounded lowercase mr-2 p-1 text-xs",key:e},e)})),R&&!R.startsWith("e.length?e.repeat(Math.trunc(t/e.length)+1).substring(0,t):e}function ge(...e){const t=e=>e&&"object"==typeof e;return e.reduce((e,n)=>(Object.keys(n).forEach(i=>{const r=e[i],s=n[i];t(r)&&t(s)?e[i]=ge(r,s):e[i]=s}),e),Array.isArray(e[e.length-1])?[]:{})}function ve(e){return{value:"object"===e?{}:"array"===e?[]:void 0}}function be(e,t){t&&e.pop()}const xe={multipleOf:"number",maximum:"number",exclusiveMaximum:"number",minimum:"number",exclusiveMinimum:"number",maxLength:"string",minLength:"string",pattern:"string",items:"array",maxItems:"array",minItems:"array",uniqueItems:"array",additionalItems:"array",maxProperties:"object",minProperties:"object",required:"object",additionalProperties:"object",properties:"object",patternProperties:"object",dependencies:"object"};function je(e){if(void 0!==e.type)return Array.isArray(e.type)?0===e.type.length?null:e.type[0]:e.type;const t=Object.keys(xe);for(var n=0;nt.maxSampleDepth)return be(Se,i),ve(je(e));if(e.$ref){if(!n)throw new Error("Your schema contains $ref. You must provide full specification in the third parameter.");let r=decodeURIComponent(e.$ref);r.startsWith("#")&&(r=r.substring(1));const s=we.a.get(n,r);let o;if(!0!==De[r])De[r]=!0,o=$e(s,t,n,i),De[r]=!1;else{o=ve(je(s))}return be(Se,i),o}if(void 0!==e.example)return be(Se,i),{value:e.example,readOnly:e.readOnly,writeOnly:e.writeOnly,type:e.type};if(void 0!==e.allOf)return be(Se,i),Pe(e)||function(e,t,n,i,r){let s=$e(e,n,i);const o=[];for(let e of t){const{type:t,readOnly:a,writeOnly:c,value:u}=$e({type:s.type,...e},n,i,r);s.type&&t&&t!==s.type&&(console.warn("allOf: schemas with different types can't be merged"),s.type=t),s.type=s.type||t,s.readOnly=s.readOnly||a,s.writeOnly=s.writeOnly||c,null!=u&&o.push(u)}if("object"===s.type)return s.value=ge(s.value||{},...o.filter(e=>"object"==typeof e)),s;{"array"===s.type&&(n.quiet||console.warn('OpenAPI Sampler: found allOf with "array" type. Result may be incorrect'));const e=o[o.length-1];return s.value=null!=e?e:s.value,s}}({...e,allOf:void 0},e.allOf,t,n,i);if(e.oneOf&&e.oneOf.length){e.anyOf&&(t.quiet||console.warn("oneOf and anyOf are not supported on the same level. Skipping anyOf")),be(Se,i);const r=Object.assign({readOnly:e.readOnly,writeOnly:e.writeOnly},e.oneOf[0]);return Pe(e)||$e(r,t,n,i)}if(e.anyOf&&e.anyOf.length)return be(Se,i),Pe(e)||$e(e.anyOf[0],t,n,i);if(e.if&&e.then)return be(Se,i),Pe(e)||$e(ge(e.if,e.then),t,n,i);let r=Ae(e),s=null;if(void 0===r){r=null,s=e.type,Array.isArray(s)&&e.type.length>0&&(s=e.type[0]),s||(s=je(e));let o=Ie[s];o&&(r=o(e,t,n,i))}return be(Se,i),{value:r,readOnly:e.readOnly,writeOnly:e.writeOnly,type:s}}function ke(e){let t=0;if("boolean"==typeof e.exclusiveMinimum||"boolean"==typeof e.exclusiveMaximum){if(e.maximum&&e.minimum)return t=e.exclusiveMinimum?Math.floor(e.minimum)+1:e.minimum,(e.exclusiveMaximum&&t>=e.maximum||!e.exclusiveMaximum&&t>e.maximum)&&(t=(e.maximum+e.minimum)/2),t;if(e.minimum)return e.exclusiveMinimum?Math.floor(e.minimum)+1:e.minimum;if(e.maximum)return e.exclusiveMaximum?e.maximum>0?0:Math.floor(e.maximum)-1:e.maximum>0?0:e.maximum}else{if(e.minimum)return e.minimum;e.exclusiveMinimum?(t=Math.floor(e.exclusiveMinimum)+1,t===e.exclusiveMaximum&&(t=(t+Math.floor(e.exclusiveMaximum)-1)/2)):e.exclusiveMaximum?t=Math.floor(e.exclusiveMaximum)-1:e.maximum&&(t=e.maximum)}return t}function Ce({min:e,max:t,omitTime:n,omitDate:i}){let r=function(e,t,n,i){var r=n?"":e.getUTCFullYear()+"-"+me(e.getUTCMonth()+1)+"-"+me(e.getUTCDate());return t||(r+="T"+me(e.getUTCHours())+":"+me(e.getUTCMinutes())+":"+me(e.getUTCSeconds())+(i?"."+(e.getUTCMilliseconds()/1e3).toFixed(3).slice(2,5):"")+"Z"),r}(new Date("2019-08-24T14:15:22.123Z"),n,i,!1);return r.lengtht&&console.warn(`Using maxLength = ${t} is incorrect with format "date-time"`),r}function Te(e,t){let n=ye("string",e);return t&&n.length>t&&(n=n.substring(0,t)),n}const Oe={email:function(){return"user@example.com"},"idn-email":function(){return"пошта@укр.нет"},password:function(e,t){let n="pa$$word";return e>n.length&&(n+="_",n+=ye("qwerty!@#$%^123456",e-n.length).substring(0,e-n.length)),n},"date-time":function(e,t){return Ce({min:e,max:t,omitTime:!1,omitDate:!1})},date:function(e,t){return Ce({min:e,max:t,omitTime:!0,omitDate:!1})},time:function(e,t){return Ce({min:e,max:t,omitTime:!1,omitDate:!0}).slice(1)},ipv4:function(){return"192.168.0.1"},ipv6:function(){return"2001:0db8:85a3:0000:0000:8a2e:0370:7334"},hostname:function(){return"example.com"},"idn-hostname":function(){return"приклад.укр"},iri:function(){return"http://example.com"},"iri-reference":function(){return"../словник"},uri:function(){return"http://example.com"},"uri-reference":function(){return"../dictionary"},"uri-template":function(){return"http://example.com/{endpoint}"},uuid:function(e,t,n){return a=function(e){var t=0;if(0==e.length)return t;for(var n=0;n>>5)|0;return i=r^((s|=0)<<17|s>>>15),r=s+(o|=0)|0,s=o+e|0,((o=i+e|0)>>>0)/4294967296},"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{var t=16*c()%16|0;return("x"==e?t:3&t|8).toString(16)});var i,r,s,o,a,c},default:Te,"json-pointer":function(){return"/json/pointer"},"relative-json-pointer":function(){return"1/relative/json/pointer"},regex:function(){return"/regex/"}};var Ie={};const Fe={skipReadOnly:!1,maxSampleDepth:15};function _e(e,t,n){let i=Object.assign({},Fe,t);return De={},Se=[],$e(e,i,n).value}function Ne(e,t){Ie[e]=t}Ne("array",(function(e,t={},n,i){const r=i&&i.depth||1;let s=Math.min(null!=e.maxItems?e.maxItems:1/0,e.minItems||1);const o=e.items||e.contains;Array.isArray(o)&&(s=Math.max(s,o.length));let a=[];if(!o)return a;for(let i=0;i(e[t]=!0,e),{});Object.keys(e.properties).forEach(o=>{if(t.skipNonRequired&&!i.hasOwnProperty(o))return;const a=$e(e.properties[o],t,n,{propertyName:o,depth:s+1});t.skipReadOnly&&a.readOnly||t.skipWriteOnly&&a.writeOnly||(r[o]=a.value)})}if(e&&"object"==typeof e.additionalProperties){const i=e.additionalProperties["x-additionalPropertiesName"]||"property";r[String(i)+"1"]=$e(e.additionalProperties,t,n,{depth:s+1}).value,r[String(i)+"2"]=$e(e.additionalProperties,t,n,{depth:s+1}).value}return r})),Ne("string",(function(e,t,n,i){let r=e.format||"default",s=Oe[r]||Te,o=i&&i.propertyName;return s(0|e.minLength,e.maxLength,o)}));var Re,Me=function(){function e(){}return e.generateExample=function(e,t){void 0===t&&(t={});try{return this.sanitizeExample(_e(e,t))||""}catch(e){return""}},e.sanitizeExample=function(e){var t=this;return"object"==typeof e&&e&&!Array.isArray(e)?Object.entries(e).reduce((function(e,n){var i=n[0],r=n[1];return i.startsWith("x-parser-")||i.startsWith("x-schema-private-")||(e[i]=t.sanitizeExample(r)),e}),{}):e},e.getPayloadExamples=function(e){var t=e.examples();if(Array.isArray(t)&&t.some((function(e){return e.payload}))){var n=t.flatMap((function(e){if(e.payload)return{name:e.name,summary:e.summary,example:e.payload}})).filter(Boolean);if(n.length>0)return n}var i=e.payload();if(i&&i.examples())return i.examples().map((function(e){return{example:e}}))},e.getHeadersExamples=function(e){var t=e.examples();if(Array.isArray(t)&&t.some((function(e){return e.headers}))){var n=t.flatMap((function(e){if(e.headers)return{name:e.name,summary:e.summary,example:e.headers}})).filter(Boolean);if(n.length>0)return n}var i=e.headers();if(i&&i.examples())return i.examples().map((function(e){return{example:e}}))},e}(),Be=function(e){var t=e.message;if(!t)return null;var n=t.payload(),i=t.headers();return r.a.createElement("div",{className:"bg-gray-800 px-8 py-4 mt-4 -mx-8 2xl:mx-0 2xl:px-4 2xl:rounded examples"},r.a.createElement("h4",{className:"text-white text-lg"},"Examples"),n&&r.a.createElement(Le,{type:"Payload",schema:n,examples:Me.getPayloadExamples(t)}),i&&r.a.createElement(Le,{type:"Headers",schema:i,examples:Me.getHeadersExamples(t)}))},Le=function(e){var t=e.type,n=void 0===t?"Payload":t,s=e.schema,o=e.examples,a=void 0===o?[]:o,c=Object(i.useState)(!1),u=c[0],p=c[1];return r.a.createElement("div",{className:"mt-4"},r.a.createElement("div",null,r.a.createElement(b,{onClick:function(){return p((function(e){return!e}))},expanded:u,chevronProps:{className:"fill-current text-gray-200"}},r.a.createElement("span",{className:"inline-block w-20 py-0.5 mr-1 text-gray-200 text-sm border text-center rounded focus:outline-none"},n))),r.a.createElement("div",{className:u?"block":"hidden"},a&&a.length>0?r.a.createElement("ul",null,a.map((function(e,t){return r.a.createElement("li",{className:"mt-4",key:t},r.a.createElement("h5",{className:"text-xs font-bold text-gray-500"},e.name?"#".concat(t+1," Example - ").concat(e.name):"#".concat(t+1," Example")),e.summary&&r.a.createElement("p",{className:"text-xs font-bold text-gray-500"},e.summary),r.a.createElement("div",{className:"mt-1"},r.a.createElement(he,{snippet:Me.sanitizeExample(e.example)})))}))):r.a.createElement("div",{className:"mt-4"},r.a.createElement(he,{snippet:Me.generateExample(s.json())}),r.a.createElement("h6",{className:"text-xs font-bold text-gray-600 italic mt-2"},"This example has been generated automatically."))))},qe=function(e){var t=e.message,n=e.messageName,i=e.index,s=e.showExamples,a=void 0!==s&&s,c=w();if(!t)return null;var u="function"==typeof t.id&&t.id(),p=t.title(),l=t.summary(),f=t.payload(),d=t.headers(),h=t.correlationId(),m=t.contentType(),y=t.externalDocs(),g=m||y;return r.a.createElement("div",{className:"panel-item"},r.a.createElement("div",{className:"panel-item--center px-8"},r.a.createElement("div",{className:"shadow rounded bg-gray-200 p-4 border"},r.a.createElement("div",null,void 0!==i&&r.a.createElement("span",{className:"text-gray-700 font-bold mr-2"},"#",i),p&&r.a.createElement("span",{className:"text-gray-700 mr-2"},p),r.a.createElement("span",{className:"border text-orange-600 rounded text-xs py-0 px-2"},t.uid())),l&&r.a.createElement("p",{className:"text-gray-600 text-sm"},l),g&&r.a.createElement("ul",{className:"leading-normal mt-2 mb-4 space-x-2 space-y-2"},m&&r.a.createElement("li",{className:"inline-block"},r.a.createElement(O,{className:"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:"".concat(o.a,"/").concat(m)},r.a.createElement("span",null,m))),y&&r.a.createElement("li",{className:"inline-block"},r.a.createElement(O,{className:"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:y.url()},r.a.createElement("span",null,o.c)))),u&&r.a.createElement("div",{className:"border bg-gray-100 rounded px-4 py-2 mt-2"},r.a.createElement("div",{className:"text-sm text-gray-700"},"Message ID",r.a.createElement("span",{className:"border text-orange-600 rounded text-xs ml-2 py-0 px-2"},u))),h&&r.a.createElement("div",{className:"border bg-gray-100 rounded px-4 py-2 mt-2"},r.a.createElement("div",{className:"text-sm text-gray-700"},"Correlation ID",r.a.createElement("span",{className:"border text-orange-600 rounded text-xs ml-2 py-0 px-2"},h.location())),h.hasDescription()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(H,null,h.description()))),t.hasDescription()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(H,null,t.description())),f&&r.a.createElement("div",{className:"mt-2",id:n?le.getIdentifier("message-".concat(n,"-payload"),c):void 0},r.a.createElement(se,{schemaName:"Payload",schema:f})),d&&r.a.createElement("div",{className:"mt-2",id:n?le.getIdentifier("message-".concat(n,"-headers"),c):void 0},r.a.createElement(se,{schemaName:"Headers",schema:d})),t.hasBindings()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(pe,{name:"Message specific information",bindings:t.bindings()})),r.a.createElement(ie,{item:t}),t.hasTags()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(K,{tags:t.tags()})))),a&&r.a.createElement("div",{className:"panel-item--right px-8"},r.a.createElement(Be,{message:t})))},Ue=n(7),ze=function(){return(ze=Object.assign||function(e){for(var t,n=1,i=arguments.length;n0?r.a.createElement("div",{className:"mt-2 text-sm"},r.a.createElement("p",null,"Available only on servers:"),r.a.createElement("ul",{className:"flex flex-wrap leading-normal"},c.map((function(e){return r.a.createElement("li",{className:"inline-block mt-2 mr-2",key:e},r.a.createElement("a",{href:"#".concat(le.getIdentifier("server-"+e,t)),className:"border border-solid border-blue-300 hover:bg-blue-300 hover:text-blue-600 text-blue-500 font-bold no-underline text-xs rounded px-3 py-1 cursor-pointer"},r.a.createElement("span",{className:"underline"},e)))})))):null,p&&r.a.createElement("div",{className:"mt-2",id:le.getIdentifier("operation-".concat(i,"-").concat(o,"-parameters"),t)},r.a.createElement(se,{schemaName:"Parameters",schema:p,expanded:!0})),u&&r.a.createElement("div",{className:"mt-2",id:le.getIdentifier("operation-".concat(i,"-").concat(o,"-security"),t)},r.a.createElement(W,{security:u,header:"Additional security requirements"})),a.hasBindings()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(pe,{name:"Channel specific information",bindings:a.bindings()})),r.a.createElement(ie,{name:"Channel Extensions",item:a}),s.hasBindings()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(pe,{name:"Operation specific information",bindings:s.bindings()})),r.a.createElement(ie,{name:"Operation Extensions",item:s}),s.hasTags()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(K,{tags:s.tags()}))),r.a.createElement("div",{className:"w-full mt-4",id:le.getIdentifier("operation-".concat(i,"-").concat(o,"-message"),t)},s.hasMultipleMessages()?r.a.createElement("div",{className:"mt-2"},r.a.createElement("p",{className:"px-8"},"Accepts ",r.a.createElement("strong",null,"one of")," the following messages:"),r.a.createElement("ul",null,s.messages().map((function(e,t){return r.a.createElement("li",{className:"mt-4",key:t},r.a.createElement(qe,{message:e,index:t,showExamples:!0}))})))):r.a.createElement("div",{className:"mt-2"},r.a.createElement("p",{className:"px-8"},"Accepts the following message:"),r.a.createElement("div",{className:"mt-2"},r.a.createElement(qe,{message:s.message(0),showExamples:!0})))))},Ve=function(e){var t=e.type,n=void 0===t?Ue.a.PUBLISH:t,i=e.operation,s=e.channelName,a=e.channel,c=w(),u=i.summary(),p=i.externalDocs(),l=i.id();return r.a.createElement(r.a.Fragment,null,r.a.createElement("div",{className:"mb-4"},r.a.createElement("h3",null,r.a.createElement("span",{className:"font-mono border uppercase p-1 rounded mr-2 ".concat(n===Ue.a.PUBLISH?"border-blue-600 text-blue-500":"border-green-600 text-green-600"),title:n},n===Ue.a.PUBLISH?c.publishLabel||o.f:c.subscribeLabel||o.i)," ",r.a.createElement("span",{className:"font-mono text-base"},s))),a.hasDescription()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(H,null,a.description())),u&&r.a.createElement("p",{className:"text-gray-600 text-sm mt-2"},u),i.hasDescription()&&r.a.createElement("div",{className:"mt-2"},r.a.createElement(H,null,i.description())),p&&r.a.createElement("ul",{className:"leading-normal mt-2 mb-4 space-x-2 space-y-2"},p&&r.a.createElement("li",{className:"inline-block"},r.a.createElement(O,{className:"border border-solid border-orange-300 hover:bg-orange-300 hover:text-orange-600 text-orange-500 font-bold no-underline text-xs uppercase rounded px-3 py-1",href:p.url()},r.a.createElement("span",null,o.c)))),l&&r.a.createElement("div",{className:"border bg-gray-100 rounded px-4 py-2 mt-2"},r.a.createElement("div",{className:"text-sm text-gray-700"},"Operation ID",r.a.createElement("span",{className:"border text-orange-600 rounded text-xs ml-2 py-0 px-2"},l))))},Ke=function(){var e=j().channels(),t=w();if(!Object.keys(e).length)return null;var n=[];return Object.entries(e).forEach((function(e){var i=e[0],s=e[1];s.hasPublish()&&n.push(r.a.createElement("li",{className:"mb-12",key:"pub-".concat(i),id:le.getIdentifier("operation-".concat(Ue.a.PUBLISH,"-").concat(i),t)},r.a.createElement(He,{type:Ue.a.PUBLISH,operation:s.publish(),channelName:i,channel:s}))),s.hasSubscribe()&&n.push(r.a.createElement("li",{className:"mb-12",key:"sub-".concat(i),id:le.getIdentifier("operation-".concat(Ue.a.SUBSCRIBE,"-").concat(i),t)},r.a.createElement(He,{type:Ue.a.SUBSCRIBE,operation:s.subscribe(),channelName:i,channel:s})))})),r.a.createElement("section",{id:"".concat(le.getIdentifier("operations",t)),className:"mt-16"},r.a.createElement("h2",{className:"2xl:w-7/12 text-3xl font-light mb-4 px-8"},o.e),r.a.createElement("ul",null,n))},Je=function(){var e=j(),t=w(),n=e.hasComponents()&&e.components().messages();return n&&0!==Object.keys(n).length?r.a.createElement("section",{id:"".concat(le.getIdentifier("messages",t)),className:"mt-16"},r.a.createElement("h2",{className:"2xl:w-7/12 text-3xl font-light mb-4 px-8"},o.d),r.a.createElement("ul",null,Object.entries(n).map((function(e,n){var i=e[0],s=e[1];return r.a.createElement("li",{className:"mb-4",key:i,id:le.getIdentifier("message-".concat(i),t)},r.a.createElement(qe,{messageName:i,message:s,index:n+1,key:i}))})))):null},Xe=function(e){var t=e.schemaName,n=e.schema;return n?r.a.createElement("div",null,r.a.createElement("div",{className:"panel-item--center px-8"},r.a.createElement("div",{className:"shadow rounded px-4 py-2 border bg-gray-200"},r.a.createElement(se,{schemaName:t,schema:n}))),r.a.createElement("div",{className:"w-full mt-4"})):null},We=function(){var e=j(),t=w(),n=e.hasComponents()&&e.components().schemas();return n&&0!==Object.keys(n).length?r.a.createElement("section",{id:"".concat(le.getIdentifier("schemas",t)),className:"mt-16"},r.a.createElement("h2",{className:"2xl:w-7/12 text-3xl font-light mb-4 px-8"},o.g),r.a.createElement("ul",null,Object.entries(n).map((function(e){var n=e[0],i=e[1];return r.a.createElement("li",{className:"mb-4",key:n,id:le.getIdentifier("schema-".concat(n),t)},r.a.createElement(Xe,{schemaName:n,schema:i}))})))):null},Ye=function(e){var t=e.error;if(!t)return null;var n,i=t.title,s=t.validationErrors;return r.a.createElement("div",{className:"panel-item"},r.a.createElement("div",{className:"panel-item--center p-8"},r.a.createElement("section",{className:"shadow rounded bg-gray-200 border-red-500 border-l-8"},r.a.createElement("h2",{className:"p-2"},i?"".concat(o.b,": ").concat(i):o.b),s&&s.length?r.a.createElement("div",{className:"bg-gray-800 text-white text-xs p-2"},r.a.createElement("pre",null,(n=s)?n.map((function(e,t){return e&&e.title&&e.location?r.a.createElement("div",{key:t,className:"flex"},r.a.createElement("span",null,"".concat(e.location.startLine,".")),r.a.createElement("code",{className:"whitespace-pre-wrap break-all ml-2"},e.title)):null})).filter(Boolean):null)):null)),r.a.createElement("div",{className:"panel-item--right"}))},Ge=function(e){var t,n,s,o,a,c,p,l=e.asyncapi,f=e.config,d=e.error,h=void 0===d?null:d,m=Object(i.useState)("container:xl"),y=m[0],g=m[1],v=u({onResize:function(e){var t=e.width;requestAnimationFrame((function(){if(void 0!==t){var e=t<=1280?"container:xl":"container:base";e!==y&&g(e)}}))}}).ref;return r.a.createElement(E.Provider,{value:f},r.a.createElement(x.Provider,{value:l},r.a.createElement("section",{className:"aui-root"},r.a.createElement("div",{className:"".concat(y," relative md:flex bg-white leading-normal"),id:f.schemaID||void 0,ref:v},(null===(t=f.show)||void 0===t?void 0:t.sidebar)&&r.a.createElement(S,{config:f.sidebar}),r.a.createElement("div",{className:"panel--center relative py-8 flex-1"},r.a.createElement("div",{className:"relative z-10"},(null===(n=f.show)||void 0===n?void 0:n.errors)&&h&&r.a.createElement(Ye,{error:h}),(null===(s=f.show)||void 0===s?void 0:s.info)&&r.a.createElement(J,null),(null===(o=f.show)||void 0===o?void 0:o.servers)&&r.a.createElement(de,null),(null===(a=f.show)||void 0===a?void 0:a.operations)&&r.a.createElement(Ke,null),(null===(c=f.show)||void 0===c?void 0:c.messages)&&r.a.createElement(Je,null),(null===(p=f.show)||void 0===p?void 0:p.schemas)&&r.a.createElement(We,null)),r.a.createElement("div",{className:"panel--right absolute top-0 right-0 h-full bg-gray-800"}))))))},Qe=(Re=function(e,t){return(Re=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}Re(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}),Ze=function(){return(Ze=Object.assign||function(e){for(var t,n=1,i=arguments.length;n0&&r[r.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!r||s[1]>r[0]&&s[1]new c(e)):null}},u,p,l,f)},function(e,t,n){const{mix:i}=n(2),r=n(3),s=n(6),o=n(4);e.exports=i(class extends r{allowedValues(){return this._json.enum}allows(e){return void 0===this._json.enum||this._json.enum.includes(e)}hasAllowedValues(){return void 0!==this._json.enum}defaultValue(){return this._json.default}hasDefaultValue(){return void 0!==this._json.default}examples(){return this._json.examples}},s,o)},function(e,t,n){const{createMapOfType:i,getMapValueOfType:r,mix:s}=n(2),o=n(3),a=n(41),c=n(80),u=n(84),p=n(6),l=n(21),f=n(4);e.exports=s(class extends o{parameters(){return i(this._json.parameters,a)}parameter(e){return r(this._json.parameters,e,a)}hasParameters(){return!!this._json.parameters}hasServers(){return!!this._json.servers}servers(){return this._json.servers?this._json.servers:[]}server(e){return this._json.servers?"number"!=typeof e||e>this._json.servers.length-1?null:this._json.servers[+e]:null}publish(){return this._json.publish?new c(this._json.publish):null}subscribe(){return this._json.subscribe?new u(this._json.subscribe):null}hasPublish(){return!!this._json.publish}hasSubscribe(){return!!this._json.subscribe}},p,l,f)},function(e,t,n){const{mix:i}=n(2),r=n(3),s=n(10),o=n(6),a=n(4);e.exports=i(class extends r{location(){return this._json.location}schema(){return this._json.schema?new s(this._json.schema):null}},o,a)},function(e,t,n){const{mix:i}=n(2),r=n(3),s=n(6),o=n(22),a=n(17),c=n(21),u=n(4);e.exports=i(class extends r{id(){return this._json.operationId}summary(){return this._json.summary}},s,o,a,c,u)},function(e,t,n){(function(t){const i=n(44),r=n(45),s=n(10);e.exports=class extends r{uid(){return this.id()||this.name()||this.ext("x-parser-message-name")||t.from(JSON.stringify(this._json)).toString("base64")}payload(){return this._json.payload?new s(this._json.payload):null}traits(){const e=this._json["x-parser-original-traits"]||this._json.traits;return e?e.map(e=>new i(e)):[]}hasTraits(){return!!this._json["x-parser-original-traits"]||!!this._json.traits}originalPayload(){return this._json["x-parser-original-payload"]||this.payload()}originalSchemaFormat(){return this._json["x-parser-original-schema-format"]||this.schemaFormat()}}}).call(this,n(11).Buffer)},function(e,t,n){const i=n(45);e.exports=class extends i{}},function(e,t,n){const{getMapValueOfType:i,mix:r}=n(2),s=n(3),o=n(10),a=n(46),c=n(6),u=n(17),p=n(22),l=n(21),f=n(4);e.exports=r(class extends s{headers(){return this._json.headers?new o(this._json.headers):null}header(e){return this._json.headers?i(this._json.headers.properties,e,o):null}id(){return this._json.messageId}correlationId(){return this._json.correlationId?new a(this._json.correlationId):null}schemaFormat(){return this._json.schemaFormat}contentType(){return this._json.contentType}name(){return this._json.name}title(){return this._json.title}summary(){return this._json.summary}examples(){return this._json.examples}},c,p,u,l,f)},function(e,t,n){const{mix:i}=n(2),r=n(3),s=n(6),o=n(4);e.exports=i(class extends r{location(){return this._json.location}},o,s)},function(e,t,n){const i=n(42);e.exports=class extends i{}},function(e,t){const n=Object.freeze({NEW_SCHEMA:"NEW_SCHEMA",END_SCHEMA:"END_SCHEMA"}),i=Object.freeze({parameters:"parameters",payloads:"payloads",headers:"headers",components:"components",objects:"objects",arrays:"arrays",oneOfs:"oneOfs",allOfs:"allOfs",anyOfs:"anyOfs",nots:"nots",propertyNames:"propertyNames",patternProperties:"patternProperties",contains:"contains",ifs:"ifs",thenes:"thenes",elses:"elses",dependencies:"dependencies",definitions:"definitions"});function r(e,t,s){if(!e)return;const{callback:o,schemaTypesToIterate:a,seenSchemas:c}=s,u=e.json();if(c.has(u))return;c.add(u);let p=e.type()||[];Array.isArray(p)||(p=[p]),!a.includes(i.objects)&&p.includes("object")||!a.includes(i.arrays)&&p.includes("array")||!1!==o(e,t,n.NEW_SCHEMA)&&(a.includes(i.objects)&&p.includes("object")&&function(e,t){Object.entries(e.properties()||{}).forEach(([e,n])=>{r(n,e,t)});const n=e.additionalProperties();"object"==typeof n&&r(n,null,t);const s=t.schemaTypesToIterate;s.includes(i.propertyNames)&&e.propertyNames()&&r(e.propertyNames(),null,t);s.includes(i.patternProperties)&&Object.entries(e.patternProperties()||{}).forEach(([e,n])=>{r(n,e,t)})}(e,s),a.includes(i.arrays)&&p.includes("array")&&function(e,t){const n=e.items();n&&(Array.isArray(n)?n.forEach((e,n)=>{r(e,n,t)}):r(n,null,t));const s=e.additionalItems();"object"==typeof s&&r(s,null,t);t.schemaTypesToIterate.includes(i.contains)&&e.contains()&&r(e.contains(),null,t)}(e,s),a.includes(i.oneOfs)&&(e.oneOf()||[]).forEach((e,t)=>{r(e,t,s)}),a.includes(i.anyOfs)&&(e.anyOf()||[]).forEach((e,t)=>{r(e,t,s)}),a.includes(i.allOfs)&&(e.allOf()||[]).forEach((e,t)=>{r(e,t,s)}),a.includes(i.nots)&&e.not()&&r(e.not(),null,s),a.includes(i.ifs)&&e.if()&&r(e.if(),null,s),a.includes(i.thenes)&&e.then()&&r(e.then(),null,s),a.includes(i.elses)&&e.else()&&r(e.else(),null,s),a.includes(i.dependencies)&&Object.entries(e.dependencies()||{}).forEach(([e,t])=>{t&&!Array.isArray(t)&&r(t,e,s)}),a.includes(i.definitions)&&Object.entries(e.definitions()||{}).forEach(([e,t])=>{r(t,e,s)}),o(e,t,n.END_SCHEMA),c.delete(u))}function s(e,t){if(!e)return;const{schemaTypesToIterate:n}=t;n.includes(i.headers)&&r(e.headers(),null,t),n.includes(i.payloads)&&r(e.payload(),null,t)}e.exports={SchemaIteratorCallbackType:n,SchemaTypesToIterate:i,traverseAsyncApiDocument:function(e,t,n){n||(n=Object.values(i));const o={callback:t,schemaTypesToIterate:n,seenSchemas:new Set};if(e.hasChannels()&&Object.values(e.channels()).forEach(e=>{!function(e,t){if(!e)return;const{schemaTypesToIterate:n}=t;n.includes(i.parameters)&&Object.values(e.parameters()||{}).forEach(e=>{r(e.schema(),null,t)});e.hasPublish()&&e.publish().messages().forEach(e=>{s(e,t)});e.hasSubscribe()&&e.subscribe().messages().forEach(e=>{s(e,t)})}(e,o)}),n.includes(i.components)&&e.hasComponents()){const t=e.components();Object.values(t.messages()||{}).forEach(e=>{s(e,o)}),Object.values(t.schemas()||{}).forEach(e=>{r(e,null,o)}),n.includes(i.parameters)&&Object.values(t.parameters()||{}).forEach(e=>{r(e.schema(),null,o)}),Object.values(t.messageTraits()||{}).forEach(e=>{!function(e,t){if(!e)return;const{schemaTypesToIterate:n}=t;n.includes(i.headers)&&r(e.headers(),null,t)}(e,o)})}}}},function(e,t,n){ - /*! @license DOMPurify 2.3.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.3.6/LICENSE */ - e.exports=function(){"use strict";var e=Object.hasOwnProperty,t=Object.setPrototypeOf,n=Object.isFrozen,i=Object.getPrototypeOf,r=Object.getOwnPropertyDescriptor,s=Object.freeze,o=Object.seal,a=Object.create,c="undefined"!=typeof Reflect&&Reflect,u=c.apply,p=c.construct;u||(u=function(e,t,n){return e.apply(t,n)}),s||(s=function(e){return e}),o||(o=function(e){return e}),p||(p=function(e,t){return new(Function.prototype.bind.apply(e,[null].concat(function(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t1?n-1:0),r=1;r/gm),B=o(/^data-[\-\w.\u00B7-\uFFFF]/),L=o(/^aria-[\-\w]+$/),q=o(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),U=o(/^(?:\w+script|data):/i),z=o(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),H=o(/^html$/i),V="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};function K(e){if(Array.isArray(e)){for(var t=0,n=Array(e.length);t0&&void 0!==arguments[0]?arguments[0]:J(),n=function(t){return e(t)};if(n.version="2.3.6",n.removed=[],!t||!t.document||9!==t.document.nodeType)return n.isSupported=!1,n;var i=t.document,r=t.document,o=t.DocumentFragment,a=t.HTMLTemplateElement,c=t.Node,u=t.Element,p=t.NodeFilter,l=t.NamedNodeMap,E=void 0===l?t.NamedNodeMap||t.MozNamedAttrMap:l,W=t.HTMLFormElement,Y=t.DOMParser,G=t.trustedTypes,Q=u.prototype,Z=S(Q,"cloneNode"),ee=S(Q,"nextSibling"),te=S(Q,"childNodes"),ne=S(Q,"parentNode");if("function"==typeof a){var ie=r.createElement("template");ie.content&&ie.content.ownerDocument&&(r=ie.content.ownerDocument)}var re=X(G,i),se=re?re.createHTML(""):"",oe=r,ae=oe.implementation,ce=oe.createNodeIterator,ue=oe.createDocumentFragment,pe=oe.getElementsByTagName,le=i.importNode,fe={};try{fe=D(r).documentMode?r.documentMode:{}}catch(e){}var de={};n.isSupported="function"==typeof ne&&ae&&void 0!==ae.createHTMLDocument&&9!==fe;var he=R,me=M,ye=B,ge=L,ve=U,be=z,xe=q,je=null,Ee=w({},[].concat(K(A),K(P),K($),K(C),K(O))),we=null,De=w({},[].concat(K(I),K(F),K(_),K(N))),Se=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Ae=null,Pe=null,$e=!0,ke=!0,Ce=!1,Te=!1,Oe=!1,Ie=!1,Fe=!1,_e=!1,Ne=!1,Re=!1,Me=!0,Be=!0,Le=!1,qe={},Ue=null,ze=w({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),He=null,Ve=w({},["audio","video","img","source","image","track"]),Ke=null,Je=w({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Xe="http://www.w3.org/1998/Math/MathML",We="http://www.w3.org/2000/svg",Ye="http://www.w3.org/1999/xhtml",Ge=Ye,Qe=!1,Ze=void 0,et=["application/xhtml+xml","text/html"],tt="text/html",nt=void 0,it=null,rt=r.createElement("form"),st=function(e){return e instanceof RegExp||e instanceof Function},ot=function(e){it&&it===e||(e&&"object"===(void 0===e?"undefined":V(e))||(e={}),e=D(e),je="ALLOWED_TAGS"in e?w({},e.ALLOWED_TAGS):Ee,we="ALLOWED_ATTR"in e?w({},e.ALLOWED_ATTR):De,Ke="ADD_URI_SAFE_ATTR"in e?w(D(Je),e.ADD_URI_SAFE_ATTR):Je,He="ADD_DATA_URI_TAGS"in e?w(D(Ve),e.ADD_DATA_URI_TAGS):Ve,Ue="FORBID_CONTENTS"in e?w({},e.FORBID_CONTENTS):ze,Ae="FORBID_TAGS"in e?w({},e.FORBID_TAGS):{},Pe="FORBID_ATTR"in e?w({},e.FORBID_ATTR):{},qe="USE_PROFILES"in e&&e.USE_PROFILES,$e=!1!==e.ALLOW_ARIA_ATTR,ke=!1!==e.ALLOW_DATA_ATTR,Ce=e.ALLOW_UNKNOWN_PROTOCOLS||!1,Te=e.SAFE_FOR_TEMPLATES||!1,Oe=e.WHOLE_DOCUMENT||!1,_e=e.RETURN_DOM||!1,Ne=e.RETURN_DOM_FRAGMENT||!1,Re=e.RETURN_TRUSTED_TYPE||!1,Fe=e.FORCE_BODY||!1,Me=!1!==e.SANITIZE_DOM,Be=!1!==e.KEEP_CONTENT,Le=e.IN_PLACE||!1,xe=e.ALLOWED_URI_REGEXP||xe,Ge=e.NAMESPACE||Ye,e.CUSTOM_ELEMENT_HANDLING&&st(e.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Se.tagNameCheck=e.CUSTOM_ELEMENT_HANDLING.tagNameCheck),e.CUSTOM_ELEMENT_HANDLING&&st(e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Se.attributeNameCheck=e.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),e.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(Se.allowCustomizedBuiltInElements=e.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Ze=Ze=-1===et.indexOf(e.PARSER_MEDIA_TYPE)?tt:e.PARSER_MEDIA_TYPE,nt="application/xhtml+xml"===Ze?function(e){return e}:m,Te&&(ke=!1),Ne&&(_e=!0),qe&&(je=w({},[].concat(K(O))),we=[],!0===qe.html&&(w(je,A),w(we,I)),!0===qe.svg&&(w(je,P),w(we,F),w(we,N)),!0===qe.svgFilters&&(w(je,$),w(we,F),w(we,N)),!0===qe.mathMl&&(w(je,C),w(we,_),w(we,N))),e.ADD_TAGS&&(je===Ee&&(je=D(je)),w(je,e.ADD_TAGS)),e.ADD_ATTR&&(we===De&&(we=D(we)),w(we,e.ADD_ATTR)),e.ADD_URI_SAFE_ATTR&&w(Ke,e.ADD_URI_SAFE_ATTR),e.FORBID_CONTENTS&&(Ue===ze&&(Ue=D(Ue)),w(Ue,e.FORBID_CONTENTS)),Be&&(je["#text"]=!0),Oe&&w(je,["html","head","body"]),je.table&&(w(je,["tbody"]),delete Ae.tbody),s&&s(e),it=e)},at=w({},["mi","mo","mn","ms","mtext"]),ct=w({},["foreignobject","desc","title","annotation-xml"]),ut=w({},P);w(ut,$),w(ut,k);var pt=w({},C);w(pt,T);var lt=function(e){var t=ne(e);t&&t.tagName||(t={namespaceURI:Ye,tagName:"template"});var n=m(e.tagName),i=m(t.tagName);if(e.namespaceURI===We)return t.namespaceURI===Ye?"svg"===n:t.namespaceURI===Xe?"svg"===n&&("annotation-xml"===i||at[i]):Boolean(ut[n]);if(e.namespaceURI===Xe)return t.namespaceURI===Ye?"math"===n:t.namespaceURI===We?"math"===n&&ct[i]:Boolean(pt[n]);if(e.namespaceURI===Ye){if(t.namespaceURI===We&&!ct[i])return!1;if(t.namespaceURI===Xe&&!at[i])return!1;var r=w({},["title","style","font","a","script"]);return!pt[n]&&(r[n]||!ut[n])}return!1},ft=function(e){h(n.removed,{element:e});try{e.parentNode.removeChild(e)}catch(t){try{e.outerHTML=se}catch(t){e.remove()}}},dt=function(e,t){try{h(n.removed,{attribute:t.getAttributeNode(e),from:t})}catch(e){h(n.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e&&!we[e])if(_e||Ne)try{ft(t)}catch(e){}else try{t.setAttribute(e,"")}catch(e){}},ht=function(e){var t=void 0,n=void 0;if(Fe)e=""+e;else{var i=y(e,/^[\r\n\t ]+/);n=i&&i[0]}"application/xhtml+xml"===Ze&&(e=''+e+"");var s=re?re.createHTML(e):e;if(Ge===Ye)try{t=(new Y).parseFromString(s,Ze)}catch(e){}if(!t||!t.documentElement){t=ae.createDocument(Ge,"template",null);try{t.documentElement.innerHTML=Qe?"":s}catch(e){}}var o=t.body||t.documentElement;return e&&n&&o.insertBefore(r.createTextNode(n),o.childNodes[0]||null),Ge===Ye?pe.call(t,Oe?"html":"body")[0]:Oe?t.documentElement:o},mt=function(e){return ce.call(e.ownerDocument||e,e,p.SHOW_ELEMENT|p.SHOW_COMMENT|p.SHOW_TEXT,null,!1)},yt=function(e){return e instanceof W&&("string"!=typeof e.nodeName||"string"!=typeof e.textContent||"function"!=typeof e.removeChild||!(e.attributes instanceof E)||"function"!=typeof e.removeAttribute||"function"!=typeof e.setAttribute||"string"!=typeof e.namespaceURI||"function"!=typeof e.insertBefore)},gt=function(e){return"object"===(void 0===c?"undefined":V(c))?e instanceof c:e&&"object"===(void 0===e?"undefined":V(e))&&"number"==typeof e.nodeType&&"string"==typeof e.nodeName},vt=function(e,t,i){de[e]&&f(de[e],(function(e){e.call(n,t,i,it)}))},bt=function(e){var t=void 0;if(vt("beforeSanitizeElements",e,null),yt(e))return ft(e),!0;if(y(e.nodeName,/[\u0080-\uFFFF]/))return ft(e),!0;var i=nt(e.nodeName);if(vt("uponSanitizeElement",e,{tagName:i,allowedTags:je}),!gt(e.firstElementChild)&&(!gt(e.content)||!gt(e.content.firstElementChild))&&x(/<[/\w]/g,e.innerHTML)&&x(/<[/\w]/g,e.textContent))return ft(e),!0;if("select"===i&&x(/