From a541aba45ed94ef10c6c20fcd0bd9c863c645d87 Mon Sep 17 00:00:00 2001 From: Mohan Kumar <121867882+ItshMoh@users.noreply.github.com> Date: Tue, 8 Oct 2024 00:04:54 +0530 Subject: [PATCH 1/5] fix: changed the Navigation tab functionality (#1046) Co-authored-by: Cody's Dad <40604284+AceTheCreator@users.noreply.github.com> --- playground/components/Tab.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/playground/components/Tab.tsx b/playground/components/Tab.tsx index 0a46bd414..540640a61 100644 --- a/playground/components/Tab.tsx +++ b/playground/components/Tab.tsx @@ -19,7 +19,7 @@ class Tab extends Component { { event.preventDefault(); - if (parentCallback && tabIndex) { + if (parentCallback && tabIndex != undefined) { parentCallback(tabIndex); } }} From d87fd60bda2b73c108cb48d17fade87b5cdf8eeb Mon Sep 17 00:00:00 2001 From: asyncapi-bot Date: Mon, 7 Oct 2024 20:51:26 +0200 Subject: [PATCH 2/5] chore(release): v2.2.5 (#1076) --- library/package.json | 2 +- package-lock.json | 6 +++--- web-component/package.json | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/library/package.json b/library/package.json index d00cb8e0e..f54e7a9db 100644 --- a/library/package.json +++ b/library/package.json @@ -1,6 +1,6 @@ { "name": "@asyncapi/react-component", - "version": "2.2.4", + "version": "2.2.5", "private": false, "description": "A React component for AsyncAPI specification.", "repository": { diff --git a/package-lock.json b/package-lock.json index c2d3b8b76..408108221 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ }, "library": { "name": "@asyncapi/react-component", - "version": "2.2.4", + "version": "2.2.5", "license": "Apache-2.0", "dependencies": { "@asyncapi/avro-schema-parser": "^3.0.24", @@ -27671,10 +27671,10 @@ }, "web-component": { "name": "@asyncapi/web-component", - "version": "2.2.4", + "version": "2.2.5", "license": "Apache-2.0", "dependencies": { - "@asyncapi/react-component": "^2.2.4", + "@asyncapi/react-component": "^2.2.5", "react": "^18.2.0", "react-dom": "^18.2.0", "web-react-components": "^1.4.2" diff --git a/web-component/package.json b/web-component/package.json index 1e6d4a23b..6d40ded27 100644 --- a/web-component/package.json +++ b/web-component/package.json @@ -1,6 +1,6 @@ { "name": "@asyncapi/web-component", - "version": "2.2.4", + "version": "2.2.5", "private": false, "description": "A web component for AsyncAPI specification. Based on @asyncapi/react-component.", "repository": { @@ -44,7 +44,7 @@ "install:reactcomp": "chmod +x ./bump-react-comp.sh && ./bump-react-comp.sh" }, "dependencies": { - "@asyncapi/react-component": "^2.2.4", + "@asyncapi/react-component": "^2.2.5", "react": "^18.2.0", "react-dom": "^18.2.0", "web-react-components": "^1.4.2" From 7db197c7c2f36bf67f7b2210059ef1bc1d95fc38 Mon Sep 17 00:00:00 2001 From: Mohammed Mehdi <96487647+catosaurusrex2003@users.noreply.github.com> Date: Mon, 14 Oct 2024 18:12:14 +0530 Subject: [PATCH 3/5] feat: fix of make @asyncapi/react component with vs asyncapi preview (#1082) --- library/src/helpers/parser.ts | 90 +++++++++++++++++++++-------------- 1 file changed, 55 insertions(+), 35 deletions(-) diff --git a/library/src/helpers/parser.ts b/library/src/helpers/parser.ts index 0ecb3cc28..83da10b6b 100644 --- a/library/src/helpers/parser.ts +++ b/library/src/helpers/parser.ts @@ -1,4 +1,9 @@ -import { Parser as AsyncapiParser, fromURL } from '@asyncapi/parser'; +import { + Parser as AsyncapiParser, + Diagnostic, + DiagnosticSeverity, + fromURL, +} from '@asyncapi/parser'; import { OpenAPISchemaParser } from '@asyncapi/openapi-schema-parser'; import { ProtoBuffSchemaParser } from '@asyncapi/protobuf-schema-parser'; import { AvroSchemaParser } from '@asyncapi/avro-schema-parser'; @@ -26,41 +31,18 @@ export class Parser { parserOptions?: any, ): Promise { try { - // eslint-disable-next-line @typescript-eslint/no-unsafe-argument - const parseResult = await asyncapiParser.parse(content, parserOptions); - - const error: { - title: string | undefined; - validationErrors: ValidationError[] | undefined; - } = { - title: 'There are errors in your Asyncapi document', - validationErrors: [], - }; + const { document, diagnostics } = await asyncapiParser.parse( + // eslint-disable-next-line @typescript-eslint/no-unsafe-argument + content, + // eslint-disable-next-line @typescript-eslint/no-unsafe-argument + parserOptions, + ); - if (parseResult.document === undefined) { - parseResult.diagnostics.forEach((diagnostic) => { - // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison - if (diagnostic.severity == 0) { - const tempObj: ValidationError = { - title: diagnostic.message, - location: { - jsonPointer: '/' + diagnostic.path.join('/'), - startLine: diagnostic.range.start.line, - startColumn: diagnostic.range.start.character, - // as of @asyncapi/parser 3.3.0 offset of 1 correctly shows the error line - startOffset: 1, - endLine: diagnostic.range.end.line, - endColumn: diagnostic.range.end.character, - endOffset: 0, - }, - }; - error.validationErrors?.push(tempObj); - } - }); - throw error; + if (document === undefined) { + throw this.convertDiagnosticToErrorObject(diagnostics, [0]); } - return { asyncapi: parseResult.document }; + return { asyncapi: document }; } catch (err) { return this.handleError(err as ErrorObject); } @@ -79,13 +61,51 @@ export class Parser { arg.requestOptions as any, ); // eslint-disable-next-line @typescript-eslint/no-unsafe-argument - const { document } = await fromResult.parse(parserOptions); - return { asyncapi: document }; + const { document, diagnostics } = await fromResult.parse(parserOptions); + + if (document == undefined) { + // this means there are errors in the document. + // so we gather all the severity 0 diagnostics and throw them as errors + throw this.convertDiagnosticToErrorObject(diagnostics, [0]); + } + + return { asyncapi: document, error: undefined }; } catch (err) { return this.handleError(err as ErrorObject); } } + static readonly convertDiagnosticToErrorObject = ( + diagnostics: Diagnostic[], + severities: DiagnosticSeverity[], + ): ErrorObject => { + const error: ErrorObject = { + title: 'There are errors in your Asyncapi document', + type: 'VALIDATION_ERRORS_TYPE', + validationErrors: [], + }; + diagnostics.forEach((diagnostic) => { + // eslint-disable-next-line @typescript-eslint/no-unsafe-enum-comparison + if (severities.includes(diagnostic.severity)) { + const tempObj: ValidationError = { + title: diagnostic.message, + location: { + jsonPointer: '/' + diagnostic.path.join('/'), + startLine: diagnostic.range.start.line, + startColumn: diagnostic.range.start.character, + // as of @asyncapi/parser 3.3.0 offset of 1 correctly shows the error line + startOffset: 1, + endLine: diagnostic.range.end.line, + endColumn: diagnostic.range.end.character, + endOffset: 0, + }, + }; + error.validationErrors?.push(tempObj); + } + }); + return error; + }; + private static handleError = (err: ErrorObject): ParserReturn => { if (err.type === VALIDATION_ERRORS_TYPE) { return { From 2c031c92ff460a5e2d6720209152449ab91589a4 Mon Sep 17 00:00:00 2001 From: asyncapi-bot Date: Mon, 14 Oct 2024 15:00:00 +0200 Subject: [PATCH 4/5] chore(release): v2.3.0 (#1085) --- library/package.json | 2 +- package-lock.json | 6 +++--- web-component/package.json | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/library/package.json b/library/package.json index f54e7a9db..eb5cc3b90 100644 --- a/library/package.json +++ b/library/package.json @@ -1,6 +1,6 @@ { "name": "@asyncapi/react-component", - "version": "2.2.5", + "version": "2.3.0", "private": false, "description": "A React component for AsyncAPI specification.", "repository": { diff --git a/package-lock.json b/package-lock.json index 408108221..135fdf53a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -36,7 +36,7 @@ }, "library": { "name": "@asyncapi/react-component", - "version": "2.2.5", + "version": "2.3.0", "license": "Apache-2.0", "dependencies": { "@asyncapi/avro-schema-parser": "^3.0.24", @@ -27671,10 +27671,10 @@ }, "web-component": { "name": "@asyncapi/web-component", - "version": "2.2.5", + "version": "2.3.0", "license": "Apache-2.0", "dependencies": { - "@asyncapi/react-component": "^2.2.5", + "@asyncapi/react-component": "^2.3.0", "react": "^18.2.0", "react-dom": "^18.2.0", "web-react-components": "^1.4.2" diff --git a/web-component/package.json b/web-component/package.json index 6d40ded27..cec992edc 100644 --- a/web-component/package.json +++ b/web-component/package.json @@ -1,6 +1,6 @@ { "name": "@asyncapi/web-component", - "version": "2.2.5", + "version": "2.3.0", "private": false, "description": "A web component for AsyncAPI specification. Based on @asyncapi/react-component.", "repository": { @@ -44,7 +44,7 @@ "install:reactcomp": "chmod +x ./bump-react-comp.sh && ./bump-react-comp.sh" }, "dependencies": { - "@asyncapi/react-component": "^2.2.5", + "@asyncapi/react-component": "^2.3.0", "react": "^18.2.0", "react-dom": "^18.2.0", "web-react-components": "^1.4.2" From 9b7eb7635bd5e7c811ed7943465fd38eebb37eb5 Mon Sep 17 00:00:00 2001 From: Aryan Raj <116114086+Aryan4884@users.noreply.github.com> Date: Mon, 14 Oct 2024 18:48:33 +0530 Subject: [PATCH 5/5] fix: changed dommy to dummy (#1081) Co-authored-by: Cody's Dad <40604284+AceTheCreator@users.noreply.github.com> --- playground/specs/dummy.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/playground/specs/dummy.ts b/playground/specs/dummy.ts index e83f47be9..2ae74ebf5 100644 --- a/playground/specs/dummy.ts +++ b/playground/specs/dummy.ts @@ -58,7 +58,7 @@ servers: - '5672' security: - user-password: [] - dommy-kafka: + dummy-kafka: url: http://localhost:{port} protocol: kafka description: dummy Kafka broker