diff --git a/library/src/components/Extensions.tsx b/library/src/components/Extensions.tsx index e7ce06630..03005770d 100644 --- a/library/src/components/Extensions.tsx +++ b/library/src/components/Extensions.tsx @@ -1,19 +1,28 @@ import React from 'react'; +import { Schema } from './Schema' +import { SchemaHelpers } from '../helpers'; +import type { AsyncAPIDocumentInterface, BaseModel } from "@asyncapi/parser" +import type { ConfigInterface } from "../config" -import { Schema } from './Schema'; -import { SchemaHelpers } from '../helpers'; +export interface ExtensionComponentProps { + key: string; + value: V; + document: AsyncAPIDocumentInterface + config: ConfigInterface + parent: BaseModel +} interface Props { name?: string; - item: any; + extensions: ExtensionsInterface; } export const Extensions: React.FunctionComponent = ({ - name = 'Extensions', - item, + name = 'Extensions Specific Information', + extensions, }) => { - const extensions = SchemaHelpers.getCustomExtensions(item); + const extensions = SchemaHelpers.getCustomExtensions(extensions); if (!extensions || !Object.keys(extensions).length) { return null; } diff --git a/library/src/config/config.ts b/library/src/config/config.ts index 8967f6b0e..8169eebe9 100644 --- a/library/src/config/config.ts +++ b/library/src/config/config.ts @@ -10,6 +10,7 @@ export interface ConfigInterface { receiveLabel?: string; requestLabel?: string; replyLabel?: string; + extensions: Record> } export interface ShowConfig {