Skip to main content

Function: writeDiagram()

writeDiagram(directory): (diagram, options) => Promise<void>

Defined in: diagrams.ts:115

Write a diagram to EventCatalog.

You can optionally override the path of the diagram.

Parameters​

ParameterType
directorystring

Returns​

Function

Parameters​

ParameterType
diagramDiagram
options{ format: "md" | "mdx"; override: boolean; path: string; versionExistingContent: boolean; }
options.format?"md" | "mdx"
options.override?boolean
options.path?string
options.versionExistingContent?boolean

Returns​

Promise<void>

Example​

import utils from '@eventcatalog/utils';

const { writeDiagram } = utils('/path/to/eventcatalog');

// Write a diagram to the catalog
// Diagram would be written to diagrams/ArchitectureDiagram
await writeDiagram({
id: 'ArchitectureDiagram',
name: 'Architecture Diagram',
version: '0.0.1',
summary: 'Architecture diagram',
markdown: '# Architecture Diagram',
});

// Write a diagram to the catalog but override the path
// Diagram would be written to diagrams/System/ArchitectureDiagram
await writeDiagram({
id: 'ArchitectureDiagram',
name: 'Architecture Diagram',
version: '0.0.1',
summary: 'Architecture diagram',
markdown: '# Architecture Diagram',
}, { path: "/System/ArchitectureDiagram"});

// Write a diagram to the catalog and override the existing content (if there is any)
await writeDiagram({
id: 'ArchitectureDiagram',
name: 'Architecture Diagram',
version: '0.0.1',
summary: 'Architecture diagram',
markdown: '# Architecture Diagram',
}, { override: true });

// Write a diagram to the catalog and version the previous version
// only works if the new version is greater than the previous version
await writeDiagram({
id: 'ArchitectureDiagram',
name: 'Architecture Diagram',
version: '0.0.1',
summary: 'Architecture diagram',
markdown: '# Architecture Diagram',
}, { versionExistingContent: true });