From 930bc510dfbd24305c87b42f4d55cf8f7564039b Mon Sep 17 00:00:00 2001 From: Joost van den Brandt <3438285+JoostvdB94@users.noreply.github.com> Date: Thu, 13 Jul 2023 08:00:22 +0000 Subject: [PATCH 1/2] Switched publish/subscribe to fix [eventcatalog-plugin-generator-asyncapi] Switches producers and consumers #405 --- packages/eventcatalog-plugin-generator-asyncapi/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/eventcatalog-plugin-generator-asyncapi/src/index.ts b/packages/eventcatalog-plugin-generator-asyncapi/src/index.ts index 2bbf6487..2479d544 100644 --- a/packages/eventcatalog-plugin-generator-asyncapi/src/index.ts +++ b/packages/eventcatalog-plugin-generator-asyncapi/src/index.ts @@ -47,8 +47,8 @@ const getAllEventsFromAsyncDoc = (doc: AsyncAPIDocument, options: AsyncAPIPlugin name: messageName, summary: message.summary(), version: doc.info().version(), - producers: operation === 'subscribe' ? [service] : [], - consumers: operation === 'publish' ? [service] : [], + producers: operation === 'publish' ? [service] : [], + consumers: operation === 'subscribe' ? [service] : [], externalLinks: externalAsyncAPIUrl ? [externalLink] : [], schema: schema ? JSON.stringify(schema, null, 4) : '', badges: [], From a666aef8df28ba9b393be7d397b26914c9ced409 Mon Sep 17 00:00:00 2001 From: Joost van den Brandt <3438285+JoostvdB94@users.noreply.github.com> Date: Thu, 13 Jul 2023 09:35:20 +0000 Subject: [PATCH 2/2] Add option to switch viewpoint --- .../src/index.ts | 38 +++++++++++++------ .../src/types.ts | 1 + 2 files changed, 28 insertions(+), 11 deletions(-) diff --git a/packages/eventcatalog-plugin-generator-asyncapi/src/index.ts b/packages/eventcatalog-plugin-generator-asyncapi/src/index.ts index 2479d544..1ba5c335 100644 --- a/packages/eventcatalog-plugin-generator-asyncapi/src/index.ts +++ b/packages/eventcatalog-plugin-generator-asyncapi/src/index.ts @@ -13,7 +13,7 @@ registerSchemaParser(asyncAPIAvroParser); const getServiceFromAsyncDoc = (doc: AsyncAPIDocument): Service => ({ name: doc.info().title(), - summary: doc.info().description() || '', + summary: doc.info().description() || '' }); const getAllEventsFromAsyncDoc = (doc: AsyncAPIDocument, options: AsyncAPIPluginOptions): Event[] => { @@ -43,16 +43,32 @@ const getAllEventsFromAsyncDoc = (doc: AsyncAPIDocument, options: AsyncAPIPlugin url: `${externalAsyncAPIUrl}#message-${messageName}`, }; - return { - name: messageName, - summary: message.summary(), - version: doc.info().version(), - producers: operation === 'publish' ? [service] : [], - consumers: operation === 'subscribe' ? [service] : [], - externalLinks: externalAsyncAPIUrl ? [externalLink] : [], - schema: schema ? JSON.stringify(schema, null, 4) : '', - badges: [], - }; + + if(options.viewPoint == "Provider") + { + return { + name: messageName, + summary: message.summary(), + version: doc.info().version(), + producers: operation === 'publish' ? [service] : [], + consumers: operation === 'subscribe' ? [service] : [], + externalLinks: externalAsyncAPIUrl ? [externalLink] : [], + schema: schema ? JSON.stringify(schema, null, 4) : '', + badges: [], + }; + } + else { + return { + name: messageName, + summary: message.summary(), + version: doc.info().version(), + producers: operation === 'subscribe' ? [service] : [], + consumers: operation === 'publish' ? [service] : [], + externalLinks: externalAsyncAPIUrl ? [externalLink] : [], + schema: schema ? JSON.stringify(schema, null, 4) : '', + badges: [], + }; + } }); return data.concat(eventsFromMessages); diff --git a/packages/eventcatalog-plugin-generator-asyncapi/src/types.ts b/packages/eventcatalog-plugin-generator-asyncapi/src/types.ts index 4926cdda..7e510eab 100644 --- a/packages/eventcatalog-plugin-generator-asyncapi/src/types.ts +++ b/packages/eventcatalog-plugin-generator-asyncapi/src/types.ts @@ -6,4 +6,5 @@ export type AsyncAPIPluginOptions = { renderNodeGraph?: boolean; domainName?: string; domainSummary?: string; + viewPoint: "Provider"|"Client" };