diff --git a/package-lock.json b/package-lock.json index a4f55320a..16c03139b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,8 +10,8 @@ "license": "Apache-2.0", "dependencies": { "@asyncapi/generator-react-sdk": "^1.0.0", - "@asyncapi/parser": "^3.0.0-next-major-spec.14", - "@asyncapi/react-component": "^1.0.1", + "@asyncapi/parser": "^3.0.2", + "@asyncapi/react-component": "^1.2.12", "highlight.js": "10.7.3", "puppeteer": "^14.1.0", "react-dom": "^17.0.2", @@ -117,103 +117,15 @@ } }, "node_modules/@asyncapi/avro-schema-parser": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@asyncapi/avro-schema-parser/-/avro-schema-parser-3.0.5.tgz", - "integrity": "sha512-e3pLBc6kEANuNFKHLbQhFxuLmviG5KoqiL1DEiA6OxBZtwgRAOd4sewnQg64VUCs5KSDrddbeF892OACurxUoA==", - "dev": true, + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/@asyncapi/avro-schema-parser/-/avro-schema-parser-3.0.9.tgz", + "integrity": "sha512-t6B6W8QXiM0fWhj8sNnGoFkFjrNqWjLGeKiKpQFKVEghVLz5vLmARs7kMWWKGbjxQSas3e4ChcmMi1B2IplrBQ==", "dependencies": { - "@asyncapi/parser": "^2.1.2", + "@asyncapi/parser": "^3.0.2", "@types/json-schema": "^7.0.11", "avsc": "^5.7.6" } }, - "node_modules/@asyncapi/avro-schema-parser/node_modules/@asyncapi/parser": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@asyncapi/parser/-/parser-2.1.2.tgz", - "integrity": "sha512-2pHKnr2P8EujcrvZo4x4zNwsEIAg5vb1ZEhl2+OH0YBg8EYH/Xx73XZ+bbwLaYIg1gvFjm29jNB9UL3CMeDU5w==", - "dev": true, - "dependencies": { - "@asyncapi/specs": "^5.1.0", - "@openapi-contrib/openapi-schema-to-json-schema": "~3.2.0", - "@stoplight/json": "^3.20.2", - "@stoplight/json-ref-readers": "^1.2.2", - "@stoplight/json-ref-resolver": "^3.1.5", - "@stoplight/spectral-core": "^1.16.1", - "@stoplight/spectral-functions": "^1.7.2", - "@stoplight/spectral-parsers": "^1.0.2", - "@stoplight/spectral-ref-resolver": "^1.0.3", - "@stoplight/types": "^13.12.0", - "@types/json-schema": "^7.0.11", - "@types/urijs": "^1.19.19", - "ajv": "^8.11.0", - "ajv-errors": "^3.0.0", - "ajv-formats": "^2.1.1", - "avsc": "^5.7.5", - "js-yaml": "^4.1.0", - "jsonpath-plus": "^7.2.0", - "node-fetch": "2.6.7" - } - }, - "node_modules/@asyncapi/avro-schema-parser/node_modules/@asyncapi/specs": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@asyncapi/specs/-/specs-5.1.0.tgz", - "integrity": "sha512-yffhETqehkim43luMnPKOwzY0D0YtU4bKpORIXIaid6p5Y5kDLrMGJaEPkNieQp03HMjhjFrnUPtT8kvqe0+aQ==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.11" - } - }, - "node_modules/@asyncapi/avro-schema-parser/node_modules/jsonpath-plus": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.2.0.tgz", - "integrity": "sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==", - "dev": true, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@asyncapi/avro-schema-parser/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/@asyncapi/avro-schema-parser/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/@asyncapi/avro-schema-parser/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/@asyncapi/avro-schema-parser/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/@asyncapi/bundler": { "version": "0.3.11", "resolved": "https://registry.npmjs.org/@asyncapi/bundler/-/bundler-0.3.11.tgz", @@ -859,105 +771,17 @@ } }, "node_modules/@asyncapi/openapi-schema-parser": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/@asyncapi/openapi-schema-parser/-/openapi-schema-parser-3.0.6.tgz", - "integrity": "sha512-hm6B0hjsfg2cFzksIWhpnxImCXUxj+7al9WnNceWNQPrEZVUKt+lKyEDJseJy8XIT+KeJazy/uwa5WI1yuDanA==", - "dev": true, + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@asyncapi/openapi-schema-parser/-/openapi-schema-parser-3.0.10.tgz", + "integrity": "sha512-kaLeYLicn65iLCKnjrmOYEybjFgxrKBOc2ZjwloCMRahyWX3hQHPU9IqL54JxEQ2R9AGznROPhrKz4iczRfKZw==", "dependencies": { - "@asyncapi/parser": "^2.1.2", + "@asyncapi/parser": "^3.0.2", "@openapi-contrib/openapi-schema-to-json-schema": "~3.2.0", "ajv": "^8.11.0", "ajv-errors": "^3.0.0", "ajv-formats": "^2.1.1" } }, - "node_modules/@asyncapi/openapi-schema-parser/node_modules/@asyncapi/parser": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/@asyncapi/parser/-/parser-2.1.2.tgz", - "integrity": "sha512-2pHKnr2P8EujcrvZo4x4zNwsEIAg5vb1ZEhl2+OH0YBg8EYH/Xx73XZ+bbwLaYIg1gvFjm29jNB9UL3CMeDU5w==", - "dev": true, - "dependencies": { - "@asyncapi/specs": "^5.1.0", - "@openapi-contrib/openapi-schema-to-json-schema": "~3.2.0", - "@stoplight/json": "^3.20.2", - "@stoplight/json-ref-readers": "^1.2.2", - "@stoplight/json-ref-resolver": "^3.1.5", - "@stoplight/spectral-core": "^1.16.1", - "@stoplight/spectral-functions": "^1.7.2", - "@stoplight/spectral-parsers": "^1.0.2", - "@stoplight/spectral-ref-resolver": "^1.0.3", - "@stoplight/types": "^13.12.0", - "@types/json-schema": "^7.0.11", - "@types/urijs": "^1.19.19", - "ajv": "^8.11.0", - "ajv-errors": "^3.0.0", - "ajv-formats": "^2.1.1", - "avsc": "^5.7.5", - "js-yaml": "^4.1.0", - "jsonpath-plus": "^7.2.0", - "node-fetch": "2.6.7" - } - }, - "node_modules/@asyncapi/openapi-schema-parser/node_modules/@asyncapi/specs": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@asyncapi/specs/-/specs-5.1.0.tgz", - "integrity": "sha512-yffhETqehkim43luMnPKOwzY0D0YtU4bKpORIXIaid6p5Y5kDLrMGJaEPkNieQp03HMjhjFrnUPtT8kvqe0+aQ==", - "dev": true, - "dependencies": { - "@types/json-schema": "^7.0.11" - } - }, - "node_modules/@asyncapi/openapi-schema-parser/node_modules/jsonpath-plus": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.2.0.tgz", - "integrity": "sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==", - "dev": true, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@asyncapi/openapi-schema-parser/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dev": true, - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/@asyncapi/openapi-schema-parser/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - "dev": true - }, - "node_modules/@asyncapi/openapi-schema-parser/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - "dev": true - }, - "node_modules/@asyncapi/openapi-schema-parser/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - "dev": true, - "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" - } - }, "node_modules/@asyncapi/optimizer": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/@asyncapi/optimizer/-/optimizer-0.2.3.tgz", @@ -1060,16 +884,20 @@ } }, "node_modules/@asyncapi/parser": { - "version": "3.0.0-next-major-spec.14", - "resolved": "https://registry.npmjs.org/@asyncapi/parser/-/parser-3.0.0-next-major-spec.14.tgz", - "integrity": "sha512-eDpLXstvWbZ2lS/0VLksBgqcaOzINvzTEt5sFahcRkzMBVZFZNn7WJ6VvCLV7q4zJytnG/35/N7HmcT+mO9v/Q==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@asyncapi/parser/-/parser-3.0.2.tgz", + "integrity": "sha512-AtDFndWwnaqGoXZQY2DRtORT2Ls4BI7MSR+Rg7TRwxf5jxIz/WVvQwc5HElkHuDEkIZslYu+ukFzNq3awdj0aw==", "dependencies": { - "@asyncapi/specs": "^6.0.0-next-major-spec.9", + "@asyncapi/specs": "^6.2.0", "@openapi-contrib/openapi-schema-to-json-schema": "~3.2.0", + "@stoplight/json": "^3.20.2", + "@stoplight/json-ref-readers": "^1.2.2", "@stoplight/json-ref-resolver": "^3.1.5", "@stoplight/spectral-core": "^1.16.1", "@stoplight/spectral-functions": "^1.7.2", "@stoplight/spectral-parsers": "^1.0.2", + "@stoplight/spectral-ref-resolver": "^1.0.3", + "@stoplight/types": "^13.12.0", "@types/json-schema": "^7.0.11", "@types/urijs": "^1.19.19", "ajv": "^8.11.0", @@ -1078,9 +906,7 @@ "avsc": "^5.7.5", "js-yaml": "^4.1.0", "jsonpath-plus": "^7.2.0", - "node-fetch": "2.6.7", - "ramldt2jsonschema": "^1.2.3", - "webapi-parser": "^0.5.0" + "node-fetch": "2.6.7" } }, "node_modules/@asyncapi/parser/node_modules/jsonpath-plus": { @@ -1133,6 +959,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/@asyncapi/protobuf-schema-parser/-/protobuf-schema-parser-3.0.0.tgz", "integrity": "sha512-kjoLrll611K+xYC/iBUlSnZsCHbrhL999ItVHZhObUOjUB991XgonqbSAaihiiDXTYgceOLhJKAN5llkV/LOOA==", + "dev": true, "dependencies": { "@asyncapi/parser": "^2.1.0", "@types/protocol-buffers-schema": "^3.4.1", @@ -1143,6 +970,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/@asyncapi/parser/-/parser-2.1.1.tgz", "integrity": "sha512-FnJ5Du9iMu9MEb5mF90gF7z1ZkdnazisBsm3GHVFr7VaiF8luAoB+bklGYFwoMb+9QWKWr1099orY5VyXULAcQ==", + "dev": true, "dependencies": { "@asyncapi/specs": "^5.1.0", "@openapi-contrib/openapi-schema-to-json-schema": "~3.2.0", @@ -1171,6 +999,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/@asyncapi/specs/-/specs-5.1.0.tgz", "integrity": "sha512-yffhETqehkim43luMnPKOwzY0D0YtU4bKpORIXIaid6p5Y5kDLrMGJaEPkNieQp03HMjhjFrnUPtT8kvqe0+aQ==", + "dev": true, "dependencies": { "@types/json-schema": "^7.0.11" } @@ -1179,6 +1008,7 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.2.0.tgz", "integrity": "sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==", + "dev": true, "engines": { "node": ">=12.0.0" } @@ -1187,6 +1017,7 @@ "version": "2.6.7", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dev": true, "dependencies": { "whatwg-url": "^5.0.0" }, @@ -1205,17 +1036,20 @@ "node_modules/@asyncapi/protobuf-schema-parser/node_modules/tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "dev": true }, "node_modules/@asyncapi/protobuf-schema-parser/node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "dev": true }, "node_modules/@asyncapi/protobuf-schema-parser/node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dev": true, "dependencies": { "tr46": "~0.0.3", "webidl-conversions": "^3.0.0" @@ -1321,14 +1155,14 @@ } }, "node_modules/@asyncapi/react-component": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@asyncapi/react-component/-/react-component-1.2.0.tgz", - "integrity": "sha512-t/1PfruCWgZ099EPngJjELXHfXEbaAzLZc+jiAT5NTy7SuAeLkb9zBn/pDnOsNMTqsqA7HEmI6APsqRrXfplSw==", - "dependencies": { - "@asyncapi/avro-schema-parser": "3.0.3", - "@asyncapi/openapi-schema-parser": "3.0.4", - "@asyncapi/parser": "^3.0.0-next-major-spec.10", - "@asyncapi/protobuf-schema-parser": "3.0.0", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/@asyncapi/react-component/-/react-component-1.2.12.tgz", + "integrity": "sha512-3UImY8CRIqiZDCjs3Ps8SgmaQfbVsFHPi7bUjPd1LnmYRxXKXKIL3MHxyFlQFR/vA8g6XKNiv0soNLIGREDqsA==", + "dependencies": { + "@asyncapi/avro-schema-parser": "^3.0.9", + "@asyncapi/openapi-schema-parser": "^3.0.10", + "@asyncapi/parser": "^3.0.2", + "@asyncapi/protobuf-schema-parser": "^3.0.6", "highlight.js": "^10.7.2", "isomorphic-dompurify": "^0.13.0", "marked": "^4.0.14", @@ -1340,150 +1174,20 @@ "react-dom": ">=16.8.0" } }, - "node_modules/@asyncapi/react-component/node_modules/@asyncapi/avro-schema-parser": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@asyncapi/avro-schema-parser/-/avro-schema-parser-3.0.3.tgz", - "integrity": "sha512-XprbDYPFJ0nc963hPCjbEmM3iu6ypKg/70EFVl0MZJCLbLw/+gBbPy95uV3Qaofm5UQgSI+aTobGhc8rMre4VA==", - "dependencies": { - "@asyncapi/parser": "^2.1.0", - "@types/json-schema": "^7.0.11", - "avsc": "^5.7.6" - } - }, - "node_modules/@asyncapi/react-component/node_modules/@asyncapi/avro-schema-parser/node_modules/@asyncapi/parser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@asyncapi/parser/-/parser-2.1.1.tgz", - "integrity": "sha512-FnJ5Du9iMu9MEb5mF90gF7z1ZkdnazisBsm3GHVFr7VaiF8luAoB+bklGYFwoMb+9QWKWr1099orY5VyXULAcQ==", - "dependencies": { - "@asyncapi/specs": "^5.1.0", - "@openapi-contrib/openapi-schema-to-json-schema": "~3.2.0", - "@stoplight/json": "^3.20.2", - "@stoplight/json-ref-readers": "^1.2.2", - "@stoplight/json-ref-resolver": "^3.1.5", - "@stoplight/spectral-core": "^1.16.1", - "@stoplight/spectral-functions": "^1.7.2", - "@stoplight/spectral-parsers": "^1.0.2", - "@stoplight/spectral-ref-resolver": "^1.0.3", - "@stoplight/types": "^13.12.0", - "@types/json-schema": "^7.0.11", - "@types/urijs": "^1.19.19", - "ajv": "^8.11.0", - "ajv-errors": "^3.0.0", - "ajv-formats": "^2.1.1", - "avsc": "^5.7.5", - "js-yaml": "^4.1.0", - "jsonpath-plus": "^7.2.0", - "node-fetch": "2.6.7", - "ramldt2jsonschema": "^1.2.3", - "webapi-parser": "^0.5.0" - } - }, - "node_modules/@asyncapi/react-component/node_modules/@asyncapi/avro-schema-parser/node_modules/@asyncapi/specs": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@asyncapi/specs/-/specs-5.1.0.tgz", - "integrity": "sha512-yffhETqehkim43luMnPKOwzY0D0YtU4bKpORIXIaid6p5Y5kDLrMGJaEPkNieQp03HMjhjFrnUPtT8kvqe0+aQ==", - "dependencies": { - "@types/json-schema": "^7.0.11" - } - }, - "node_modules/@asyncapi/react-component/node_modules/@asyncapi/openapi-schema-parser": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@asyncapi/openapi-schema-parser/-/openapi-schema-parser-3.0.4.tgz", - "integrity": "sha512-nfZbL3dTpIQ3K+/V05FBpgOPi7dDWZkqZG8e7pKwtNhwZ0YLBFWTw6RpocztlBlcieFggxZqLm4BT5I1cQbK+Q==", - "dependencies": { - "@asyncapi/parser": "^2.1.0", - "@openapi-contrib/openapi-schema-to-json-schema": "~3.2.0", - "ajv": "^8.11.0", - "ajv-errors": "^3.0.0", - "ajv-formats": "^2.1.1" - } - }, - "node_modules/@asyncapi/react-component/node_modules/@asyncapi/openapi-schema-parser/node_modules/@asyncapi/parser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@asyncapi/parser/-/parser-2.1.1.tgz", - "integrity": "sha512-FnJ5Du9iMu9MEb5mF90gF7z1ZkdnazisBsm3GHVFr7VaiF8luAoB+bklGYFwoMb+9QWKWr1099orY5VyXULAcQ==", - "dependencies": { - "@asyncapi/specs": "^5.1.0", - "@openapi-contrib/openapi-schema-to-json-schema": "~3.2.0", - "@stoplight/json": "^3.20.2", - "@stoplight/json-ref-readers": "^1.2.2", - "@stoplight/json-ref-resolver": "^3.1.5", - "@stoplight/spectral-core": "^1.16.1", - "@stoplight/spectral-functions": "^1.7.2", - "@stoplight/spectral-parsers": "^1.0.2", - "@stoplight/spectral-ref-resolver": "^1.0.3", - "@stoplight/types": "^13.12.0", - "@types/json-schema": "^7.0.11", - "@types/urijs": "^1.19.19", - "ajv": "^8.11.0", - "ajv-errors": "^3.0.0", - "ajv-formats": "^2.1.1", - "avsc": "^5.7.5", - "js-yaml": "^4.1.0", - "jsonpath-plus": "^7.2.0", - "node-fetch": "2.6.7", - "ramldt2jsonschema": "^1.2.3", - "webapi-parser": "^0.5.0" - } - }, - "node_modules/@asyncapi/react-component/node_modules/@asyncapi/openapi-schema-parser/node_modules/@asyncapi/specs": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@asyncapi/specs/-/specs-5.1.0.tgz", - "integrity": "sha512-yffhETqehkim43luMnPKOwzY0D0YtU4bKpORIXIaid6p5Y5kDLrMGJaEPkNieQp03HMjhjFrnUPtT8kvqe0+aQ==", - "dependencies": { - "@types/json-schema": "^7.0.11" - } - }, - "node_modules/@asyncapi/react-component/node_modules/jsonpath-plus": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/jsonpath-plus/-/jsonpath-plus-7.2.0.tgz", - "integrity": "sha512-zBfiUPM5nD0YZSBT/o/fbCUlCcepMIdP0CJZxM1+KgA4f2T206f6VAg9e7mX35+KlMaIc5qXW34f3BnwJ3w+RA==", - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/@asyncapi/react-component/node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", - "dependencies": { - "whatwg-url": "^5.0.0" - }, - "engines": { - "node": "4.x || >=6.0.0" - }, - "peerDependencies": { - "encoding": "^0.1.0" - }, - "peerDependenciesMeta": { - "encoding": { - "optional": true - } - } - }, - "node_modules/@asyncapi/react-component/node_modules/tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "node_modules/@asyncapi/react-component/node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/@asyncapi/react-component/node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "node_modules/@asyncapi/react-component/node_modules/@asyncapi/protobuf-schema-parser": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/@asyncapi/protobuf-schema-parser/-/protobuf-schema-parser-3.0.6.tgz", + "integrity": "sha512-XdjGyj4Sp7Hu2xy1gXaEm5ed5TcB9iQy9j2im3Hcqg8pwk1DTQqWF8zvfcDAKPGn22rBRSfzyrmecLOZtbuOPQ==", "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "@asyncapi/parser": "^3.0.2", + "@types/protocol-buffers-schema": "^3.4.1", + "protocol-buffers-schema": "^3.6.0" } }, "node_modules/@asyncapi/specs": { - "version": "6.0.0-next-major-spec.13", - "resolved": "https://registry.npmjs.org/@asyncapi/specs/-/specs-6.0.0-next-major-spec.13.tgz", - "integrity": "sha512-mnGllHVaUscCHaDnYfLGo84KK81NcTmevVFQP94RusKM2SvtYkbBuC0nwQ6ie/PAEHQy+kn2PjrJlfwwm7VgEQ==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/@asyncapi/specs/-/specs-6.2.0.tgz", + "integrity": "sha512-5uf/Rg6pavZHx7rVIkP0TP/icIahJCuHgmY1rdtkrWxHZMXbASDDV3DlTUaonbsUeemwchoqljmrTd1O1xqvxg==", "dependencies": { "@types/json-schema": "^7.0.11" } @@ -8496,6 +8200,7 @@ "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "dev": true, "engines": { "iojs": ">= 1.0.0", "node": ">= 0.12.0" @@ -9977,7 +9682,8 @@ "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true }, "node_modules/fast-levenshtein": { "version": "3.0.0", @@ -13389,6 +13095,7 @@ "version": "0.2.0", "resolved": "https://registry.npmjs.org/json-schema-migrate/-/json-schema-migrate-0.2.0.tgz", "integrity": "sha512-dq4/oHWmtw/+0ytnXsDqVn+VsVweTEmzm5jLgguPn9BjSzn6/q58ZiZx3BHiQyJs612f0T5Z+MrUEUUY5DHsRg==", + "dev": true, "dependencies": { "ajv": "^5.0.0" } @@ -13397,6 +13104,7 @@ "version": "5.5.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", "integrity": "sha512-Ajr4IcMXq/2QmMkEmSvxqfLN5zGmJ92gHXAeOXq1OekoH2rfDNsgdDoL2f7QaRCy7G/E6TpxBVdRuNraMztGHw==", + "dev": true, "dependencies": { "co": "^4.6.0", "fast-deep-equal": "^1.0.0", @@ -13407,12 +13115,14 @@ "node_modules/json-schema-migrate/node_modules/fast-deep-equal": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==" + "integrity": "sha512-fueX787WZKCV0Is4/T2cyAdM4+x1S3MXXOAhavE1ys/W42SHAPacLTQhucja22QBYrfGw50M2sRiXPtTGv9Ymw==", + "dev": true }, "node_modules/json-schema-migrate/node_modules/json-schema-traverse": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==" + "integrity": "sha512-4JD/Ivzg7PoW8NzdrBSr3UFwC9mHgvI7Z6z3QGBsSHgKaRTUDmyZAAKJo2UbG1kUVfS9WS8bi36N49U1xw43DA==", + "dev": true }, "node_modules/json-schema-traverse": { "version": "1.0.0", @@ -16445,6 +16155,7 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/ramldt2jsonschema/-/ramldt2jsonschema-1.2.3.tgz", "integrity": "sha512-+wLDAV2NNv9NkfEUOYStaDu/6RYgYXeC1zLtXE+dMU/jDfjpN4iJnBGycDwFTFaIQGosOQhxph7fEX6Mpwxdug==", + "dev": true, "dependencies": { "commander": "^5.0.0", "js-yaml": "^3.14.0", @@ -16460,6 +16171,7 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, "dependencies": { "sprintf-js": "~1.0.2" } @@ -16468,6 +16180,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "dev": true, "engines": { "node": ">= 6" } @@ -16476,6 +16189,7 @@ "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -18665,7 +18379,8 @@ "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true }, "node_modules/sshpk": { "version": "1.18.0", @@ -20473,6 +20188,7 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/webapi-parser/-/webapi-parser-0.5.0.tgz", "integrity": "sha512-fPt6XuMqLSvBz8exwX4QE1UT+pROLHa00EMDCdO0ybICduwQ1V4f7AWX4pNOpCp+x+0FjczEsOxtQU0d8L3QKw==", + "dev": true, "dependencies": { "ajv": "6.5.2" } @@ -20481,6 +20197,7 @@ "version": "6.5.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", + "dev": true, "dependencies": { "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", @@ -20491,12 +20208,14 @@ "node_modules/webapi-parser/node_modules/fast-deep-equal": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==" + "integrity": "sha512-bCK/2Z4zLidyB4ReuIsvALH6w31YfAQDmXMqMx6FyfHqvBxtjC0eRumeSu4Bs3XtXwpyIywtSTrVT99BxY1f9w==", + "dev": true }, "node_modules/webapi-parser/node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true }, "node_modules/webidl-conversions": { "version": "6.1.0", diff --git a/package.json b/package.json index dd78d2428..6aa141682 100644 --- a/package.json +++ b/package.json @@ -38,8 +38,8 @@ }, "dependencies": { "@asyncapi/generator-react-sdk": "^1.0.0", - "@asyncapi/react-component": "^1.0.1", - "@asyncapi/parser": "^3.0.0-next-major-spec.14", + "@asyncapi/react-component": "^1.2.12", + "@asyncapi/parser": "^3.0.2", "highlight.js": "10.7.3", "puppeteer": "^14.1.0", "react-dom": "^17.0.2", diff --git a/test/components/__snapshots__/index.test.js.snap b/test/components/__snapshots__/index.test.js.snap index 0b8dae135..4b5c0e268 100644 --- a/test/components/__snapshots__/index.test.js.snap +++ b/test/components/__snapshots__/index.test.js.snap @@ -14,7 +14,7 @@ exports[`Index component should render AsyncAPI v2 document 1`] = ` -
Streetlights API 1.0.0

The Smartylighting Streetlights API allows you to remotely manage the city lights.

+
Streetlights API 1.0.0

The Smartylighting Streetlights API allows you to remotely manage the city lights.

Check out its awesome features:

Operations

  • RECEIVE smartylighting/streetlights/1/0/event/{streetlightId}/lighting/measured

    The topic on which measured values may be produced and consumed.

    +

    Inform about environmental lighting conditions of a particular streetlight.

    This is the description with bold text.

    +

    On multiple lines.

    +
    Operation IDreceiveLightMeasurement

    Available only on servers:

    object
    streetlightId
    required
    string

    The ID of the streetlight.

    +
    object
    object
    const
    my-app-id

    Accepts the following message:

    Light measured

    Inform about environmental lighting conditions of a particular streetlight.

    object
    integer
    >= 0

    Light intensity measured in lumens.

    +
    object
    x-pi
    false
    sentAt
    string
    format: date-time

    Date and time when the message was sent.

    +

    Additional properties are allowed.

    object
    my-app-header
    integer
    [ 0 .. 100 ]

    Additional properties are allowed.

    Examples

    {
    +  \\"lumens\\": 0,
    +  \\"sentAt\\": \\"2019-08-24T14:15:22Z\\"
    +}
    +
    +
    This example has been generated automatically.
    {
    +  \\"my-app-header\\": 100
    +}
    +
    +
    This example has been generated automatically.
  • SEND smartylighting/streetlights/1/0/action/{streetlightId}/turn/on

    Operation IDturnOn

    Available only on servers:

    object
    streetlightId
    required
    string

    The ID of the streetlight.

    +
    object
    object
    const
    my-app-id

    Accepts the following message:

    Turn on/off

    Command a particular streetlight to turn the lights on or off.

    object
    string

    Whether to turn on or off the light.

    +
      Allowed values:
    • "on"
    • "off"
    object
    x-pi
    false
    sentAt
    string
    format: date-time

    Date and time when the message was sent.

    +

    Additional properties are allowed.

    object
    my-app-header
    integer
    [ 0 .. 100 ]

    Additional properties are allowed.

    Examples

    {
    +  \\"command\\": \\"on\\",
    +  \\"sentAt\\": \\"2019-08-24T14:15:22Z\\"
    +}
    +
    +
    This example has been generated automatically.
    {
    +  \\"my-app-header\\": 100
    +}
    +
    +
    This example has been generated automatically.
  • SEND smartylighting/streetlights/1/0/action/{streetlightId}/turn/off

    Operation IDturnOff

    Available only on servers:

    object
    streetlightId
    required
    string

    The ID of the streetlight.

    +
    object
    object
    const
    my-app-id

    Accepts the following message:

    Turn on/off

    Command a particular streetlight to turn the lights on or off.

    object
    string

    Whether to turn on or off the light.

    +
      Allowed values:
    • "on"
    • "off"
    object
    x-pi
    false
    sentAt
    string
    format: date-time

    Date and time when the message was sent.

    +

    Additional properties are allowed.

    object
    my-app-header
    integer
    [ 0 .. 100 ]

    Additional properties are allowed.

    Examples

    {
    +  \\"command\\": \\"on\\",
    +  \\"sentAt\\": \\"2019-08-24T14:15:22Z\\"
    +}
    +
    +
    This example has been generated automatically.
    {
    +  \\"my-app-header\\": 100
    +}
    +
    +
    This example has been generated automatically.
  • SEND smartylighting/streetlights/1/0/action/{streetlightId}/dim

    Operation IDdimLight

    Available only on servers:

    object
    streetlightId
    required
    string

    The ID of the streetlight.

    +
    object
    object
    const
    my-app-id

    Accepts the following message:

    Dim light

    Command a particular streetlight to dim the lights.

    object
    percentage
    integer
    [ 0 .. 100 ]

    Percentage to which the light should be dimmed to.

    +
    sentAt
    string
    format: date-time

    Date and time when the message was sent.

    +

    Additional properties are allowed.

    object
    my-app-header
    integer
    [ 0 .. 100 ]

    Additional properties are allowed.

    Examples

    {
    +  \\"percentage\\": 100,
    +  \\"sentAt\\": \\"2019-08-24T14:15:22Z\\"
    +}
    +
    +
    This example has been generated automatically.
    {
    +  \\"my-app-header\\": 100
    +}
    +
    +
    This example has been generated automatically.
  • SEND some.channel

    this description shows in markdown

    Operation IDsome.channel.subscribe

    Available only on servers:

    Accepts one of the following messages:

    • #0
      object
      result
      string
        Examples values:
      • "success"

      Additional properties are allowed.

      Examples

      {
         \\"result\\": \\"success\\"
       }
      @@ -626,7 +677,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
               \\"streetlightId\\": {
                 \\"description\\": \\"The ID of the streetlight.\\"
               }
      -      }
      +      },
      +      \\"x-parser-unique-object-id\\": \\"smartylighting/streetlights/1/0/event/{streetlightId}/lighting/measured\\"
           },
           \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/on\\": {
             \\"address\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/on\\",
      @@ -676,7 +728,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
             },
             \\"parameters\\": {
               \\"streetlightId\\": \\"$ref:$.channels.smartylighting/streetlights/1/0/event/{streetlightId}/lighting/measured.parameters.streetlightId\\"
      -      }
      +      },
      +      \\"x-parser-unique-object-id\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/on\\"
           },
           \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/off\\": {
             \\"address\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/off\\",
      @@ -685,7 +738,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
             },
             \\"parameters\\": {
               \\"streetlightId\\": \\"$ref:$.channels.smartylighting/streetlights/1/0/event/{streetlightId}/lighting/measured.parameters.streetlightId\\"
      -      }
      +      },
      +      \\"x-parser-unique-object-id\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/off\\"
           },
           \\"smartylighting/streetlights/1/0/action/{streetlightId}/dim\\": {
             \\"address\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/dim\\",
      @@ -732,7 +786,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
             },
             \\"parameters\\": {
               \\"streetlightId\\": \\"$ref:$.channels.smartylighting/streetlights/1/0/event/{streetlightId}/lighting/measured.parameters.streetlightId\\"
      -      }
      +      },
      +      \\"x-parser-unique-object-id\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/dim\\"
           },
           \\"some.channel\\": {
             \\"address\\": \\"some.channel\\",
      @@ -784,7 +839,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
                   \\"x-parser-schema-id\\": \\"\\"
                 }
               }
      -      }
      +      },
      +      \\"x-parser-unique-object-id\\": \\"some.channel\\"
           }
         },
         \\"operations\\": {
      @@ -801,6 +857,16 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
               \\"address\\": \\"smartylighting/streetlights/1/0/event/{streetlightId}/lighting/measured\\",
               \\"messages\\": {
                 \\"receiveLightMeasurement.message\\": {
      +            \\"headers\\": {
      +              \\"type\\": \\"object\\",
      +              \\"properties\\": {
      +                \\"my-app-header\\": {
      +                  \\"type\\": \\"integer\\",
      +                  \\"minimum\\": 0,
      +                  \\"maximum\\": 100
      +                }
      +              }
      +            },
                   \\"name\\": \\"lightMeasured\\",
                   \\"title\\": \\"Light measured\\",
                   \\"summary\\": \\"Inform about environmental lighting conditions of a particular streetlight.\\",
      @@ -830,7 +896,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
                 \\"streetlightId\\": {
                   \\"description\\": \\"The ID of the streetlight.\\"
                 }
      -        }
      +        },
      +        \\"x-parser-unique-object-id\\": \\"smartylighting/streetlights/1/0/event/{streetlightId}/lighting/measured\\"
             },
             \\"summary\\": \\"Inform about environmental lighting conditions of a particular streetlight.\\",
             \\"description\\": \\"This is the description with **bold** text.\\\\n\\\\nOn multiple lines.\\\\n\\",
      @@ -891,6 +958,16 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
               \\"address\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/on\\",
               \\"messages\\": {
                 \\"turnOn.message\\": {
      +            \\"headers\\": {
      +              \\"type\\": \\"object\\",
      +              \\"properties\\": {
      +                \\"my-app-header\\": {
      +                  \\"type\\": \\"integer\\",
      +                  \\"minimum\\": 0,
      +                  \\"maximum\\": 100
      +                }
      +              }
      +            },
                   \\"name\\": \\"turnOnOff\\",
                   \\"title\\": \\"Turn on/off\\",
                   \\"summary\\": \\"Command a particular streetlight to turn the lights on or off.\\",
      @@ -917,7 +994,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
                 \\"streetlightId\\": {
                   \\"description\\": \\"The ID of the streetlight.\\"
                 }
      -        }
      +        },
      +        \\"x-parser-unique-object-id\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/on\\"
             },
             \\"traits\\": [
               \\"$ref:$.operations.receiveLightMeasurement.traits[0]\\"
      @@ -939,6 +1017,16 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
               \\"address\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/off\\",
               \\"messages\\": {
                 \\"turnOff.message\\": {
      +            \\"headers\\": {
      +              \\"type\\": \\"object\\",
      +              \\"properties\\": {
      +                \\"my-app-header\\": {
      +                  \\"type\\": \\"integer\\",
      +                  \\"minimum\\": 0,
      +                  \\"maximum\\": 100
      +                }
      +              }
      +            },
                   \\"name\\": \\"turnOnOff\\",
                   \\"title\\": \\"Turn on/off\\",
                   \\"summary\\": \\"Command a particular streetlight to turn the lights on or off.\\",
      @@ -965,7 +1053,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
                 \\"streetlightId\\": {
                   \\"description\\": \\"The ID of the streetlight.\\"
                 }
      -        }
      +        },
      +        \\"x-parser-unique-object-id\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/turn/off\\"
             },
             \\"traits\\": [
               \\"$ref:$.operations.receiveLightMeasurement.traits[0]\\"
      @@ -987,6 +1076,16 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
               \\"address\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/dim\\",
               \\"messages\\": {
                 \\"dimLight.message\\": {
      +            \\"headers\\": {
      +              \\"type\\": \\"object\\",
      +              \\"properties\\": {
      +                \\"my-app-header\\": {
      +                  \\"type\\": \\"integer\\",
      +                  \\"minimum\\": 0,
      +                  \\"maximum\\": 100
      +                }
      +              }
      +            },
                   \\"name\\": \\"dimLight\\",
                   \\"title\\": \\"Dim light\\",
                   \\"summary\\": \\"Command a particular streetlight to dim the lights.\\",
      @@ -1013,7 +1112,8 @@ exports[`Index component should render AsyncAPI v3 document 1`] = `
                 \\"streetlightId\\": {
                   \\"description\\": \\"The ID of the streetlight.\\"
                 }
      -        }
      +        },
      +        \\"x-parser-unique-object-id\\": \\"smartylighting/streetlights/1/0/action/{streetlightId}/dim\\"
             },
             \\"traits\\": [
               \\"$ref:$.operations.receiveLightMeasurement.traits[0]\\"