@eventcatalog/core 4.10.13 → 4.10.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analytics/analytics.cjs +1 -1
- package/dist/analytics/analytics.js +2 -2
- package/dist/analytics/log-build.cjs +1 -1
- package/dist/analytics/log-build.js +3 -3
- package/dist/{chunk-SSSN5FXC.js → chunk-HERAHLM2.js} +1 -1
- package/dist/{chunk-IIECZFXN.js → chunk-LITOQH56.js} +1 -1
- package/dist/{chunk-34RMFKFB.js → chunk-LUW6RDA7.js} +1 -1
- package/dist/{chunk-JHUICVBT.js → chunk-ONDFEA5R.js} +1 -1
- package/dist/{chunk-PADMH2RJ.js → chunk-V2SKOQYF.js} +1 -1
- package/dist/constants.cjs +1 -1
- package/dist/constants.js +1 -1
- package/dist/docs/api/02-config.md +55 -1
- package/dist/docs/development/authentication/providers/03-setting-up-github.md +29 -0
- package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +2 -2
- package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +17 -0
- package/dist/docs/development/components/07-resource-references.md +7 -1
- package/dist/docs/development/components/components/05-architecture-graph.md +65 -0
- package/dist/docs/development/components/components/{05-attachments.md → 06-attachments.md} +1 -1
- package/dist/docs/development/components/components/{06-channel-information.md → 07-channel-information.md} +1 -1
- package/dist/docs/development/components/components/{07-custom-properties.md → 08-custom-properties.md} +1 -1
- package/dist/docs/development/components/components/{08-design.md → 09-design.md} +1 -1
- package/dist/docs/development/components/components/{09-entitymap.md → 10-entitymap.md} +1 -1
- package/dist/docs/development/components/components/{10-flow.md → 11-flow.md} +1 -1
- package/dist/docs/development/components/components/{11-link.md → 12-link.md} +1 -1
- package/dist/docs/development/components/components/{12-mermaid-file-loader.md → 13-mermaid-file-loader.md} +1 -1
- package/dist/docs/development/components/components/{13-message-table.md → 14-message-table.md} +1 -1
- package/dist/docs/development/components/components/{14-nodegraph.md → 15-nodegraph.md} +1 -1
- package/dist/docs/development/components/components/{15-openapi.md → 16-openapi.md} +1 -1
- package/dist/docs/development/components/components/{16-prompt.md → 17-prompt.md} +1 -1
- package/dist/docs/development/components/components/{17-remote-schema.md → 18-remote-schema.md} +1 -1
- package/dist/docs/development/components/components/{18-resource-group-table.md → 19-resource-group-table.md} +1 -1
- package/dist/docs/development/components/components/{19-resource-link.md → 20-resource-link.md} +1 -1
- package/dist/docs/development/components/components/{20-schema.md → 21-schema.md} +1 -1
- package/dist/docs/development/components/components/{21-schema-viewer.md → 22-schema-viewer.md} +1 -1
- package/dist/docs/development/components/components/{22-steps.md → 23-steps.md} +1 -1
- package/dist/docs/development/components/components/{23-tabs.md → 24-tabs.md} +1 -1
- package/dist/docs/development/components/components/{24-tiles.md → 25-tiles.md} +1 -1
- package/dist/docs/development/components/components/{25-visibility.md → 26-visibility.md} +1 -1
- package/dist/docs/development/customization/04-documentation-sidebar.md +3 -3
- package/dist/docs/development/customization/05-resource-sidebar.md +235 -0
- package/dist/docs/development/customization/09-embed-eventcatalog.md +179 -0
- package/dist/docs/development/customization/_category_.json +1 -1
- package/dist/docs/development/deployment/build-and-deploy.md +4 -0
- package/dist/docs/development/deployment/hosting-options.md +1 -1
- package/dist/docs/development/deployment/link-validation.md +105 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/00-overview.md +76 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/01-setup.md +144 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/_category_.json +10 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/01-configure-rules.md +130 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/02-run-in-ci.md +93 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/03-use-custom-frontmatter.md +81 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/04-reference-external-catalogs.md +51 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/05-fix-common-problems.md +120 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/_category_.json +12 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/reference/01-cli.md +109 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/reference/02-configuration.md +120 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/reference/03-rules.md +287 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/reference/04-versions.md +77 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/reference/05-supported-resources.md +75 -0
- package/dist/docs/development/developer-tools/eventcatalog-linter/reference/_category_.json +12 -0
- package/dist/docs/development/guides/97-architecture-graph.md +78 -0
- package/dist/docs/development/guides/domains/02-create-domain.md +1 -1
- package/dist/docs/development/guides/domains/03-ownership-and-language/02-adding-ubiquitous-language.md +29 -0
- package/dist/docs/development/guides/domains/09-reference.md +10 -0
- package/dist/docs/development/guides/resources/messages/04-message-channels/02-adding-channels.md +2 -2
- package/dist/docs/development/guides/resources/messages/04-message-channels/04-adding-messages-to-services.md +8 -0
- package/dist/docs/development/guides/resources/schemas/03-add-specifications-to-services/01-add-openapi-specifications.md +2 -2
- package/dist/docs/development/guides/resources/schemas/03-add-specifications-to-services/02-add-asyncapi-specifications.md +3 -3
- package/dist/docs/development/guides/systems/05-system-context-maps.md +2 -0
- package/dist/docs/development/license-keys/license-validation.md +7 -3
- package/dist/docs/development/license-keys/overview.md +7 -3
- package/dist/docs/development/upgrading/upgrading.md +3 -3
- package/dist/docs/development/upgrading/v2.md +3 -3
- package/dist/docs/federation/00-overview.md +158 -0
- package/dist/docs/federation/01-first-federation.md +199 -0
- package/dist/docs/federation/_category_.json +12 -0
- package/dist/docs/federation/explanation/_category_.json +12 -0
- package/dist/docs/federation/explanation/how-it-works.md +129 -0
- package/dist/docs/federation/explanation/lockfile-and-cache.md +134 -0
- package/dist/docs/federation/explanation/mvp-status-and-feedback.md +86 -0
- package/dist/docs/federation/explanation/ownership-and-references.md +134 -0
- package/dist/docs/federation/how-to/_category_.json +12 -0
- package/dist/docs/federation/how-to/configure-github-sources.md +156 -0
- package/dist/docs/federation/how-to/configure-validation-rules.md +127 -0
- package/dist/docs/federation/how-to/run-in-ci.md +138 -0
- package/dist/docs/federation/how-to/share-assets-and-components.md +125 -0
- package/dist/docs/federation/how-to/use-local-sources.md +138 -0
- package/dist/docs/{plugins/eventcatalog-federation → federation/legacy-federation}/00-introduction.md +11 -2
- package/dist/docs/{plugins/eventcatalog-federation → federation/legacy-federation}/01-installation.md +11 -3
- package/dist/docs/{plugins/eventcatalog-federation → federation/legacy-federation}/02-plugin-configuration.md +11 -2
- package/dist/docs/{plugins/eventcatalog-federation → federation/legacy-federation}/03-examples.md +11 -1
- package/dist/docs/{plugins/eventcatalog-federation → federation/legacy-federation}/04-configuration.md +11 -1
- package/dist/docs/{plugins/eventcatalog-federation → federation/legacy-federation}/05-setup-team-catalog.md +11 -2
- package/dist/docs/federation/legacy-federation/_category_.json +12 -0
- package/dist/docs/federation/reference/_category_.json +12 -0
- package/dist/docs/federation/reference/cli.md +122 -0
- package/dist/docs/federation/reference/configuration.md +192 -0
- package/dist/docs/federation/reference/diagnostic-rules.md +173 -0
- package/dist/docs/federation/reference/generated-output.md +118 -0
- package/dist/docs/federation/reference/supported-content.md +86 -0
- package/dist/docs/federation/reference/troubleshooting.md +208 -0
- package/dist/docs/plugins/01-intro.md +3 -3
- package/dist/docs/plugins/03-all-plugins.md +2 -2
- package/dist/docs/plugins/asyncapi/00-intro.md +4 -4
- package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +4 -4
- package/dist/docs/plugins/backstage/00-overview.md +53 -0
- package/dist/docs/plugins/backstage/01-get-started.md +95 -0
- package/dist/docs/plugins/backstage/02-embed-entity-tabs.md +109 -0
- package/dist/docs/plugins/backstage/03-add-overview-cards.md +79 -0
- package/dist/docs/plugins/backstage/04-control-theme-and-size.md +54 -0
- package/dist/docs/plugins/backstage/05-migrate-to-annotations.md +49 -0
- package/dist/docs/plugins/backstage/06-configuration.md +85 -0
- package/dist/docs/plugins/backstage/07-components.md +129 -0
- package/dist/docs/plugins/backstage/08-how-embeds-work.md +52 -0
- package/dist/docs/plugins/backstage/_category_.json +4 -3
- package/dist/docs/plugins/eventbridge/00-intro.md +5 -5
- package/dist/docs/plugins/eventbridge/03-api.md +3 -3
- package/dist/docs/plugins/graphql/00-intro.md +2 -2
- package/dist/docs/plugins/graphql/02-plugin-configuration.md +2 -2
- package/dist/docs/plugins/hookdeck/01-intro.md +1 -1
- package/dist/docs/plugins/openapi/00-intro.md +1 -1
- package/dist/eventcatalog.cjs +1 -1
- package/dist/eventcatalog.js +5 -5
- package/dist/generate.cjs +1 -1
- package/dist/generate.js +3 -3
- package/dist/utils/cli-logger.cjs +1 -1
- package/dist/utils/cli-logger.js +2 -2
- package/eventcatalog/src/components/SchemaExplorer/AvroSchemaViewer.tsx +21 -19
- package/eventcatalog/src/components/SchemaExplorer/JSONSchemaViewer.tsx +79 -77
- package/eventcatalog/src/components/SchemaExplorer/ProtobufSchemaViewer.test.tsx +91 -0
- package/eventcatalog/src/components/SchemaExplorer/ProtobufSchemaViewer.tsx +115 -33
- package/eventcatalog/src/components/SchemaExplorer/SchemaViewerHover.test.tsx +33 -0
- package/eventcatalog/src/components/SchemaExplorer/protobuf-validation.test.ts +84 -0
- package/eventcatalog/src/components/SchemaExplorer/protobuf-validation.ts +149 -0
- package/eventcatalog/src/utils/protobuf-schema.ts +211 -16
- package/package.json +3 -3
- package/dist/docs/cli/channels.md +0 -180
- package/dist/docs/cli/commands.md +0 -183
- package/dist/docs/cli/custom-docs.md +0 -78
- package/dist/docs/cli/data-products.md +0 -177
- package/dist/docs/cli/data-stores.md +0 -166
- package/dist/docs/cli/diagrams.md +0 -147
- package/dist/docs/cli/domains.md +0 -280
- package/dist/docs/cli/entities.md +0 -138
- package/dist/docs/cli/events.md +0 -186
- package/dist/docs/cli/export.md +0 -27
- package/dist/docs/cli/governance.md +0 -24
- package/dist/docs/cli/messages.md +0 -69
- package/dist/docs/cli/queries.md +0 -183
- package/dist/docs/cli/services.md +0 -266
- package/dist/docs/cli/snapshots.md +0 -44
- package/dist/docs/cli/teams.md +0 -75
- package/dist/docs/cli/users.md +0 -75
- package/dist/docs/cli/utilities.md +0 -43
- package/dist/docs/development/developer-tools/eventcatalog-linter.md +0 -732
- package/dist/docs/plugins/backstage/00-intro.md +0 -67
- package/dist/docs/plugins/backstage/01-installation.md +0 -242
- package/dist/docs/plugins/backstage/02-api.md +0 -51
- package/dist/docs/plugins/backstage/03-examples.md +0 -12
- package/dist/docs/plugins/eventcatalog-federation/_category_.json +0 -11
|
@@ -140,7 +140,7 @@ var verifyRequiredFieldsAreInCatalogConfigFile = async (projectDirectory) => {
|
|
|
140
140
|
var import_os = __toESM(require("os"), 1);
|
|
141
141
|
|
|
142
142
|
// package.json
|
|
143
|
-
var version = "4.10.
|
|
143
|
+
var version = "4.10.14";
|
|
144
144
|
|
|
145
145
|
// src/constants.ts
|
|
146
146
|
var VERSION = version;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
2
|
log_build_default
|
|
3
|
-
} from "../chunk-
|
|
4
|
-
import "../chunk-
|
|
3
|
+
} from "../chunk-LUW6RDA7.js";
|
|
4
|
+
import "../chunk-LITOQH56.js";
|
|
5
5
|
import "../chunk-ZAZHAVKB.js";
|
|
6
|
-
import "../chunk-
|
|
6
|
+
import "../chunk-V2SKOQYF.js";
|
|
7
7
|
import "../chunk-6QENHZZP.js";
|
|
8
8
|
export {
|
|
9
9
|
log_build_default as default
|
package/dist/constants.cjs
CHANGED
package/dist/constants.js
CHANGED
|
@@ -78,7 +78,7 @@ The output type for your EventCatalog, choose from `static` or `server`.
|
|
|
78
78
|
:::info "What is the difference between static and server?"
|
|
79
79
|
|
|
80
80
|
- `static` - The default output type for EventCatalog. This will output a static website that you can host anywhere.
|
|
81
|
-
- `server` - This will output a Node.js server that you can host anywhere. This is required for certain features like the [EventCatalog Chat](/features/ai-assistant) (bring your own keys). The easiest way to host this is with our [Docker image](/docs/development/deployment/hosting-options#hosting-a-server).
|
|
81
|
+
- `server` - This will output a Node.js server that you can host anywhere. This is required for certain features like the [EventCatalog Chat](/features/ai-assistant) (bring your own keys). The easiest way to host this is with our [Docker image](/docs/development/deployment/hosting-options#hosting-as-a-server).
|
|
82
82
|
|
|
83
83
|
:::
|
|
84
84
|
|
|
@@ -123,6 +123,54 @@ module.exports = {
|
|
|
123
123
|
};
|
|
124
124
|
```
|
|
125
125
|
|
|
126
|
+
### `linkValidation` {#linkValidation}
|
|
127
|
+
|
|
128
|
+
- Type: `object` | `false`
|
|
129
|
+
- Default: `{ onBrokenLinks: 'warn', onBrokenAnchors: 'warn' }`
|
|
130
|
+
|
|
131
|
+
Checks internal links and anchors after a static build and reports any that are broken. Validation is skipped in SSR mode. Set to `false` to turn off the check entirely.
|
|
132
|
+
|
|
133
|
+
```js title="eventcatalog.config.js"
|
|
134
|
+
module.exports = {
|
|
135
|
+
linkValidation: {
|
|
136
|
+
onBrokenLinks: 'warn',
|
|
137
|
+
onBrokenAnchors: 'warn',
|
|
138
|
+
ignore: ['/api/**'],
|
|
139
|
+
},
|
|
140
|
+
};
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
#### `linkValidation.onBrokenLinks`
|
|
144
|
+
|
|
145
|
+
- Type: `'warn' | 'error' | 'ignore'`
|
|
146
|
+
- Default: `'warn'`
|
|
147
|
+
|
|
148
|
+
What to do when a link points to a page that does not exist. `error` fails the build, `warn` logs the problem but still builds, `ignore` skips the check.
|
|
149
|
+
|
|
150
|
+
#### `linkValidation.onBrokenAnchors`
|
|
151
|
+
|
|
152
|
+
- Type: `'warn' | 'error' | 'ignore'`
|
|
153
|
+
- Default: `'warn'`
|
|
154
|
+
|
|
155
|
+
What to do when a link points to a valid page but an anchor (`#section`) that does not exist on it.
|
|
156
|
+
|
|
157
|
+
#### `linkValidation.ignore`
|
|
158
|
+
|
|
159
|
+
- Type: `string[]`
|
|
160
|
+
- Default: `[]`
|
|
161
|
+
|
|
162
|
+
Glob patterns for destination URL paths to skip, relative to your catalog's [`base`](#base), starting with `/`. Patterns exclude the base prefix, query string, and anchor. For example, with `base: '/catalog'`, use `/docs/legacy/**` to ignore `/catalog/docs/legacy/example#section`. Use this for links you know are valid but EventCatalog cannot verify, such as pages rendered outside the build.
|
|
163
|
+
|
|
164
|
+
```js title="eventcatalog.config.js"
|
|
165
|
+
module.exports = {
|
|
166
|
+
linkValidation: {
|
|
167
|
+
ignore: ['/api/**', '/docs/legacy/*'],
|
|
168
|
+
},
|
|
169
|
+
};
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
See the [link validation guide](/docs/development/deployment/link-validation) for what gets checked and how to use this in CI.
|
|
173
|
+
|
|
126
174
|
### `port` {#port}
|
|
127
175
|
|
|
128
176
|
- Type: `number`
|
|
@@ -449,6 +497,11 @@ module.exports = {
|
|
|
449
497
|
// The render mode for channels in the visualiser
|
|
450
498
|
// Flat or single
|
|
451
499
|
renderMode: 'flat'
|
|
500
|
+
},
|
|
501
|
+
|
|
502
|
+
// Opt-in, catalog-wide force-directed graph at /visualiser/graph
|
|
503
|
+
architectureGraph: {
|
|
504
|
+
enabled: true
|
|
452
505
|
}
|
|
453
506
|
}
|
|
454
507
|
};
|
|
@@ -459,6 +512,7 @@ module.exports = {
|
|
|
459
512
|
| ------------- | ----------- | ----------- | ----------- |
|
|
460
513
|
| `visualiser.enabled` | `true` or `false` | `true` | **Enabled or disables the visualiser**. Setting this to false will not render any visualiser pages in your catalog and also remove references to the visualiser features in your catalog. _(Added in 2.65.1)_ |
|
|
461
514
|
| `visualiser.channels.renderMode` | `flat` or `single` | `flat` | The render mode for the visualiser. `flat` means the channel node is duplicated for each message. `single` means the channel node is a single node for all messages. Depending on your use case/preferences you may want to use one or the other. |
|
|
515
|
+
| `visualiser.architectureGraph.enabled` | `true` or `false` | `false` | Enables the [architecture graph](/docs/development/guides/architecture-graph) at `/visualiser/graph`. Opt-in while in beta. _(Added in 4.5.0)_ |
|
|
462
516
|
|
|
463
517
|
|
|
464
518
|
|
|
@@ -97,6 +97,35 @@ export default {
|
|
|
97
97
|
|
|
98
98
|
The host must match the **Authorization callback URL** on your GitHub OAuth app (`https://catalog.example.com/api/auth/callback/github`). Not needed on Vercel, Cloudflare Pages, or local dev. See the [Auth.js reference](https://authjs.dev/reference/core#redirectproxyurl) for more.
|
|
99
99
|
|
|
100
|
+
## Issuer validation
|
|
101
|
+
|
|
102
|
+
<AddedIn version="4.10.3" />
|
|
103
|
+
|
|
104
|
+
GitHub OAuth callbacks include an `iss` parameter, and EventCatalog now sets the correct `issuer` on the GitHub provider automatically, using `https://github.com/login/oauth` for github.com or `{enterprise.baseUrl}/login/oauth` when you configure `providers.github.enterprise.baseUrl` for GitHub Enterprise Server. You can still override it by setting `issuer` explicitly in your provider config.
|
|
105
|
+
|
|
106
|
+
```js title="eventcatalog.auth.js"
|
|
107
|
+
export default {
|
|
108
|
+
providers: {
|
|
109
|
+
github: {
|
|
110
|
+
clientId: process.env.AUTH_GITHUB_CLIENT_ID,
|
|
111
|
+
clientSecret: process.env.AUTH_GITHUB_CLIENT_SECRET,
|
|
112
|
+
issuer: 'https://github.com/login/oauth',
|
|
113
|
+
},
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Fix "unexpected iss" errors on older versions
|
|
119
|
+
|
|
120
|
+
If you're running an EventCatalog version before `4.10.3`, sign-in can fail with users redirected to `/auth/error?error=Configuration` and logs showing:
|
|
121
|
+
|
|
122
|
+
```
|
|
123
|
+
[auth][cause] OperationProcessingError: unexpected "iss" (issuer) response parameter value
|
|
124
|
+
[auth][details] { "expected": "https://authjs.dev", "provider": "github" }
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
This happens because GitHub now sends an `iss` parameter on OAuth callbacks, but the GitHub provider had no `issuer` configured, so validation fell back to a placeholder value. Upgrading to `4.10.3` or later fixes this by default. If you can't upgrade yet, set `issuer` explicitly on the GitHub provider as shown above.
|
|
128
|
+
|
|
100
129
|
## Found an issue?
|
|
101
130
|
|
|
102
131
|
Remember to setup the prerequisites for this guide:
|
package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md
CHANGED
|
@@ -22,8 +22,8 @@ High level documentation requires an EventCatalog Scale license key. You can get
|
|
|
22
22
|
|
|
23
23
|
High level documentation is split into two parts:
|
|
24
24
|
|
|
25
|
-
1. [Creating your documentation (markdown files)](#creating-
|
|
26
|
-
2. [Configuring your sidebar (eventcatalog.config.js)](#
|
|
25
|
+
1. [Creating your documentation (markdown files)](#creating-documentation)
|
|
26
|
+
2. [Configuring your sidebar (eventcatalog.config.js)](#sidebar-configuration)
|
|
27
27
|
|
|
28
28
|
### Creating documentation
|
|
29
29
|
|
|
@@ -54,3 +54,20 @@ In custom documentation pages, `id`, `version`, and `type` are all required. A `
|
|
|
54
54
|
| `search` | boolean | No | Show or hide the search bar. Accepts `true`/`false` or `"true"`/`"false"`. Defaults to `true`. |
|
|
55
55
|
| `legend` | boolean | No | Show or hide the legend. Accepts `true`/`false` or `"true"`/`"false"`. Defaults to `true`. |
|
|
56
56
|
| `mode` | string | No | `"simple"` or `"full"`. Defaults to `"simple"`. |
|
|
57
|
+
|
|
58
|
+
### Embed the Architecture Graph (ArchitectureGraph)
|
|
59
|
+
|
|
60
|
+
You can also embed the catalog-wide [architecture graph](/docs/development/guides/architecture-graph) into your custom documentation pages using the `ArchitectureGraph` component.
|
|
61
|
+
|
|
62
|
+
```md
|
|
63
|
+
This is my custom documentation page, here is the whole catalog graph:
|
|
64
|
+
|
|
65
|
+
<ArchitectureGraph />
|
|
66
|
+
|
|
67
|
+
<!-- Or focus the graph on a specific resource -->
|
|
68
|
+
<ArchitectureGraph id="Orders" type="domain" />
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Unlike `NodeGraph`, no props are required — without `id` and `type` the whole catalog is rendered. No `version` is needed; the graph always shows the latest version of each resource.
|
|
72
|
+
|
|
73
|
+
[See the ArchitectureGraph component reference for the full list of props](/docs/development/components/components/architecture-graph).
|
|
@@ -108,6 +108,8 @@ Without a version, the reference uses the latest version. Pin versions when docu
|
|
|
108
108
|
Our legacy [[service|PaymentService@0.9.0]] is being replaced by [[service|PaymentGatewayService]].
|
|
109
109
|
```
|
|
110
110
|
|
|
111
|
+
Users, teams, and custom docs are not versioned, so references like `[[user|dboyne]]` and `[[team|backend-team]]` always link straight to the resource.
|
|
112
|
+
|
|
111
113
|
## Interactive tooltips
|
|
112
114
|
|
|
113
115
|
Hover over any reference to see detailed information without leaving the page.
|
|
@@ -119,6 +121,10 @@ Hover over any reference to see detailed information without leaving the page.
|
|
|
119
121
|
|
|
120
122
|
Tooltips show different information based on resource type.
|
|
121
123
|
|
|
124
|
+
Owner links open the matching user or team profile. If an owner is not defined in your catalog, its ID appears as plain text.
|
|
125
|
+
|
|
126
|
+
In service and agent tooltips, sent and received messages link to their matching event, command, or query documentation, including when a message version is specified.
|
|
127
|
+
|
|
122
128
|
### Combine with other components
|
|
123
129
|
|
|
124
130
|
Mix references with other EventCatalog components.
|
|
@@ -133,4 +139,4 @@ The [[service|OrdersService]] coordinates between inventory and payment:
|
|
|
133
139
|
|
|
134
140
|
### Review references regularly
|
|
135
141
|
|
|
136
|
-
Regularly audit references to ensure they point to current resources and remove outdated links.
|
|
142
|
+
Regularly audit references to ensure they point to current resources and remove outdated links. [Link validation](/docs/development/deployment/link-validation) reports broken internal links and anchors after a static build.
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
---
|
|
2
|
+
sidebar_position: 5
|
|
3
|
+
keywords:
|
|
4
|
+
- components
|
|
5
|
+
- architecture graph
|
|
6
|
+
- force-directed graph
|
|
7
|
+
sidebar_label: ArchitectureGraph
|
|
8
|
+
title: ArchitectureGraph
|
|
9
|
+
description: Component for embedding the catalog-wide architecture graph into your documentation
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
import AddedIn from '@site/src/components/MDX/AddedIn';
|
|
13
|
+
|
|
14
|
+
<AddedIn version="4.10.1" />
|
|
15
|
+
|
|
16
|
+
A component that renders the [architecture graph](/docs/development/guides/architecture-graph) (the force-directed graph of your whole catalog from `/visualiser/graph`) inside your documentation pages, focused on the resource you are documenting.
|
|
17
|
+
|
|
18
|
+
The `<ArchitectureGraph/>` component is supported in domains, services, systems, all messages, and custom documentation pages.
|
|
19
|
+
|
|
20
|
+
Unlike [`<NodeGraph/>`](/docs/development/components/components/nodegraph) (which renders one resource's diagram), `<ArchitectureGraph/>` shows where the resource sits in your whole architecture — its neighbourhood inside the catalog graph, with clustering, focus rings, and search.
|
|
21
|
+
|
|
22
|
+
### Example
|
|
23
|
+
|
|
24
|
+
```md /domains/Orders/index.mdx
|
|
25
|
+
<!-- Without any properties, this renders the architecture graph focused on the current resource -->
|
|
26
|
+
<ArchitectureGraph />
|
|
27
|
+
|
|
28
|
+
<!-- Focus another resource -->
|
|
29
|
+
<ArchitectureGraph id="InventoryService" type="service" />
|
|
30
|
+
|
|
31
|
+
<!-- Show more of the architecture around the resource (1–3 relationship hops) -->
|
|
32
|
+
<ArchitectureGraph depth="3" />
|
|
33
|
+
|
|
34
|
+
<!-- Render a specific lens of the whole catalog -->
|
|
35
|
+
<ArchitectureGraph lens="messages" />
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
#### Output
|
|
39
|
+
|
|
40
|
+

|
|
41
|
+
|
|
42
|
+
Readers can click any node to focus it, double-click to open its documentation, and use the search to jump to any resource — the same interactions as the full-page architecture graph. Scrolling over the graph scrolls the page; hold `ctrl`/`cmd` while scrolling to zoom.
|
|
43
|
+
|
|
44
|
+
#### Props
|
|
45
|
+
|
|
46
|
+
| Name | Type | Default | Description |
|
|
47
|
+
| ----------------------- | --------- | ----------------- | ----------------------------------------------------------------- |
|
|
48
|
+
| `id` (optional) | `string` | Current page's resource | The id of the resource to focus. Use together with `type`. |
|
|
49
|
+
| `type` (optional) | `string` | Current page's type | The type of the resource to focus (e.g. `domain`, `service`, `event`). |
|
|
50
|
+
| `depth` (optional) | `string` | `"2"` | How many relationship hops to render around the focused resource (1–3). |
|
|
51
|
+
| `lens` (optional) | `string` | `"all"` | The lens to render: `all`, `domains`, `systems`, `services`, `teams` or `messages`. |
|
|
52
|
+
| `search` (optional) | `boolean` | `true` | Show or hide the search bar. Accepts `true`/`false` or `"true"`/`"false"`. |
|
|
53
|
+
| `legend` (optional) | `boolean` | `true` | Show or hide the resources legend. Accepts `true`/`false` or `"true"`/`"false"`. |
|
|
54
|
+
| `lensPicker` (optional) | `boolean` | `false` | Show the lens picker so readers can switch between views (domains, systems, services, teams, message flow). Accepts `true`/`false` or `"true"`/`"false"`. |
|
|
55
|
+
| `maxHeight` (optional) | `string` | `30` | Max height (em) of the graph in your document. |
|
|
56
|
+
|
|
57
|
+
The graph always shows the latest version of each resource, so no `version` prop is needed.
|
|
58
|
+
|
|
59
|
+
:::info Custom documentation pages
|
|
60
|
+
On custom documentation pages there is no "current resource", so `<ArchitectureGraph/>` without `id` and `type` renders the whole catalog graph.
|
|
61
|
+
:::
|
|
62
|
+
|
|
63
|
+
:::tip Open full screen
|
|
64
|
+
When the [full-page architecture graph is enabled](/docs/development/guides/architecture-graph#turn-on-the-graph) (`visualiser.architectureGraph.enabled` in your `eventcatalog.config.js`), the embedded graph shows an **Open full screen** link to `/visualiser/graph` that carries the current view state — the focused resource, selected depth, and lens — so the full page opens on exactly what the reader is looking at. The embedded component itself works without that flag.
|
|
65
|
+
:::
|
|
@@ -9,7 +9,7 @@ description: Pick and customize the documentation sidebar.
|
|
|
9
9
|
|
|
10
10
|
import AddedIn from '@site/src/components/MDX/AddedIn';
|
|
11
11
|
|
|
12
|
-
The documentation sidebar is a [context aware sidebar](#what-is-context-aware-sidebar) that is shown on the `/docs/` pages.
|
|
12
|
+
The documentation sidebar is a [context aware sidebar](#what-is-a-context-aware-sidebar) that is shown on the `/docs/` pages.
|
|
13
13
|
|
|
14
14
|
Clicking on any resource in the sidebar will show you related information to that selected resource ([see demo](https://demo.eventcatalog.dev/)).
|
|
15
15
|
|
|
@@ -56,9 +56,9 @@ You can specify the following options in the `navigation.pages` property:
|
|
|
56
56
|
|
|
57
57
|
- [Top level options](#top-level-options)
|
|
58
58
|
- Useful if you want to show the top-level resources in your catalog in the sidebar. For example high level domains and let your users drill down.
|
|
59
|
-
- [List all resources (by type)](#list-all-resources-type)
|
|
59
|
+
- [List all resources (by type)](#list-all-resources-by-type)
|
|
60
60
|
- Useful if you want to show all resources of a specific type in the sidebar. For example all domains, services, messages, etc.
|
|
61
|
-
- [Pick specific resources to show](#
|
|
61
|
+
- [Pick specific resources to show](#chose-which-resources-to-show)
|
|
62
62
|
- Useful if you want to show a specific resource or a group of resources in the sidebar. For example a specific domain, service, message, etc.
|
|
63
63
|
- [Custom groups and links](#custom-groups-and-links)
|
|
64
64
|
- Useful if you want to create custom groups and links to external pages in the sidebar. For example a group of resources, or a link to an external page.
|