@eventcatalog/core 4.2.3 → 4.2.5
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-WOASLQ3F.js → chunk-7JCTB2SM.js} +1 -1
- package/dist/{chunk-DGDCWOWP.js → chunk-EU4BANDV.js} +1 -1
- package/dist/{chunk-I4TTHHXI.js → chunk-FXSZNWHH.js} +1 -1
- package/dist/{chunk-M2YEUPPP.js → chunk-JB6RZSTL.js} +1 -1
- package/dist/{chunk-QQC5UX3E.js → chunk-R5HOP2PF.js} +1 -1
- package/dist/constants.cjs +1 -1
- package/dist/constants.js +1 -1
- package/dist/docs/development/00-why-eventcatalog.md +8 -8
- package/dist/docs/development/01-fundamentals.md +15 -12
- package/dist/docs/development/bring-your-own-documentation/diagrams/07-reference.md +4 -0
- package/dist/docs/development/components/components/07-custom-properties.md +85 -0
- package/dist/docs/development/components/components/{07-design.md → 08-design.md} +1 -1
- package/dist/docs/development/components/components/{08-entitymap.md → 09-entitymap.md} +2 -2
- package/dist/docs/development/components/components/{09-flow.md → 10-flow.md} +1 -1
- package/dist/docs/development/components/components/{10-link.md → 11-link.md} +1 -1
- package/dist/docs/development/components/components/{11-mermaid-file-loader.md → 12-mermaid-file-loader.md} +1 -1
- package/dist/docs/development/components/components/{12-message-table.md → 13-message-table.md} +1 -1
- package/dist/docs/development/components/components/{13-nodegraph.md → 14-nodegraph.md} +1 -2
- package/dist/docs/development/components/components/{14-openapi.md → 15-openapi.md} +1 -1
- package/dist/docs/development/components/components/{15-prompt.md → 16-prompt.md} +1 -1
- package/dist/docs/development/components/components/{16-remote-schema.md → 17-remote-schema.md} +1 -1
- package/dist/docs/development/components/components/{17-resource-group-table.md → 18-resource-group-table.md} +1 -1
- package/dist/docs/development/components/components/{18-resource-link.md → 19-resource-link.md} +1 -1
- package/dist/docs/development/components/components/{19-schema.md → 20-schema.md} +1 -1
- package/dist/docs/development/components/components/{20-schema-viewer.md → 21-schema-viewer.md} +1 -1
- package/dist/docs/development/components/components/{21-steps.md → 22-steps.md} +1 -1
- package/dist/docs/development/components/components/{22-tabs.md → 23-tabs.md} +1 -1
- package/dist/docs/development/components/components/{23-tiles.md → 24-tiles.md} +1 -1
- package/dist/docs/development/components/components/{24-visibility.md → 25-visibility.md} +1 -1
- package/dist/docs/development/customization/02-themes.md +1 -1
- package/dist/docs/development/customization/06-customize-tables.md +1 -1
- package/dist/docs/development/customization/07-resource-icons.md +1 -1
- package/dist/docs/development/customization/08-custom-properties.md +176 -0
- package/dist/docs/development/customization/customize-visualizer/_category_.json +1 -1
- package/dist/docs/development/deployment/build-ssr-mode.md +9 -1
- package/dist/docs/development/guides/domains/09-reference.md +4 -0
- package/dist/docs/development/guides/resources/adrs/06-reference.md +4 -0
- package/dist/docs/development/guides/resources/agents/11-reference.md +4 -0
- package/dist/docs/development/guides/resources/data/04-reference.md +4 -0
- package/dist/docs/development/guides/resources/data-products/07-reference.md +4 -0
- package/dist/docs/development/guides/resources/entities/06-reference.md +4 -0
- package/dist/docs/development/guides/resources/flows/06-reference.md +4 -0
- package/dist/docs/development/guides/resources/messages/04-connect-messages/02-shared-messages-across-boundaries.md +1 -0
- package/dist/docs/development/guides/resources/messages/04-connect-messages/04-map-commands-to-events.md +95 -0
- package/dist/docs/development/guides/resources/messages/04-message-channels/05-reference.md +4 -0
- package/dist/docs/development/guides/resources/messages/10-reference.md +4 -0
- package/dist/docs/development/guides/resources/services/08-reference.md +12 -0
- package/dist/docs/development/guides/systems/06-reference.md +4 -0
- 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/NavigationProgress.astro +64 -0
- package/eventcatalog/src/components/navigation-progress.spec.ts +68 -0
- package/eventcatalog/src/components/navigation-progress.ts +98 -0
- package/eventcatalog/src/layouts/BaseLayout.astro +2 -0
- package/package.json +11 -11
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
const SHOW_DELAY_MS = 200;
|
|
2
|
+
const MINIMUM_VISIBLE_MS = 250;
|
|
3
|
+
|
|
4
|
+
type NavigationPreparationEvent = Event & {
|
|
5
|
+
sourceElement?: EventTarget | null;
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
export const initializeNavigationProgress = () => {
|
|
9
|
+
let showTimer: ReturnType<typeof setTimeout> | undefined;
|
|
10
|
+
let hideTimer: ReturnType<typeof setTimeout> | undefined;
|
|
11
|
+
let visibleAt = 0;
|
|
12
|
+
let pendingSource: HTMLElement | null = null;
|
|
13
|
+
|
|
14
|
+
const getProgress = () => document.getElementById('navigation-progress');
|
|
15
|
+
const getStatus = () => document.getElementById('navigation-progress-status');
|
|
16
|
+
|
|
17
|
+
const clearPendingSource = () => {
|
|
18
|
+
pendingSource?.removeAttribute('aria-busy');
|
|
19
|
+
pendingSource?.removeAttribute('data-navigation-pending');
|
|
20
|
+
pendingSource = null;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
const showProgress = () => {
|
|
24
|
+
const progress = getProgress();
|
|
25
|
+
if (!progress) return;
|
|
26
|
+
|
|
27
|
+
visibleAt = performance.now();
|
|
28
|
+
progress.dataset.visible = 'true';
|
|
29
|
+
progress.setAttribute('aria-hidden', 'false');
|
|
30
|
+
document.getElementById('content')?.setAttribute('aria-busy', 'true');
|
|
31
|
+
|
|
32
|
+
const status = getStatus();
|
|
33
|
+
if (status) status.textContent = 'Loading page';
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
const hideProgress = () => {
|
|
37
|
+
const progress = getProgress();
|
|
38
|
+
if (progress) {
|
|
39
|
+
progress.dataset.visible = 'false';
|
|
40
|
+
progress.setAttribute('aria-hidden', 'true');
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
document.getElementById('content')?.removeAttribute('aria-busy');
|
|
44
|
+
const status = getStatus();
|
|
45
|
+
if (status) status.textContent = '';
|
|
46
|
+
|
|
47
|
+
clearPendingSource();
|
|
48
|
+
visibleAt = 0;
|
|
49
|
+
hideTimer = undefined;
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
const startProgress = (event: NavigationPreparationEvent) => {
|
|
53
|
+
if (showTimer) clearTimeout(showTimer);
|
|
54
|
+
if (hideTimer) clearTimeout(hideTimer);
|
|
55
|
+
|
|
56
|
+
clearPendingSource();
|
|
57
|
+
|
|
58
|
+
if (event.sourceElement instanceof HTMLElement) {
|
|
59
|
+
pendingSource = event.sourceElement;
|
|
60
|
+
pendingSource.setAttribute('aria-busy', 'true');
|
|
61
|
+
pendingSource.dataset.navigationPending = 'true';
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
showTimer = setTimeout(showProgress, SHOW_DELAY_MS);
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
const finishProgress = () => {
|
|
68
|
+
if (showTimer) {
|
|
69
|
+
clearTimeout(showTimer);
|
|
70
|
+
showTimer = undefined;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
if (!visibleAt) {
|
|
74
|
+
hideProgress();
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
const remainingVisibleTime = Math.max(0, MINIMUM_VISIBLE_MS - (performance.now() - visibleAt));
|
|
79
|
+
hideTimer = setTimeout(hideProgress, remainingVisibleTime);
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
const resetProgress = () => {
|
|
83
|
+
if (!showTimer && !hideTimer && !visibleAt) hideProgress();
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
document.addEventListener('astro:before-preparation', startProgress);
|
|
87
|
+
document.addEventListener('astro:after-preparation', finishProgress);
|
|
88
|
+
document.addEventListener('astro:page-load', resetProgress);
|
|
89
|
+
|
|
90
|
+
return () => {
|
|
91
|
+
if (showTimer) clearTimeout(showTimer);
|
|
92
|
+
if (hideTimer) clearTimeout(hideTimer);
|
|
93
|
+
hideProgress();
|
|
94
|
+
document.removeEventListener('astro:before-preparation', startProgress);
|
|
95
|
+
document.removeEventListener('astro:after-preparation', finishProgress);
|
|
96
|
+
document.removeEventListener('astro:page-load', resetProgress);
|
|
97
|
+
};
|
|
98
|
+
};
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import SEO from '../components/Seo.astro';
|
|
3
3
|
import AnalyticsHead from '../enterprise/analytics/components/AnalyticsHead.astro';
|
|
4
4
|
import AnalyticsTracker from '../enterprise/analytics/components/AnalyticsTracker.astro';
|
|
5
|
+
import NavigationProgress from '../components/NavigationProgress.astro';
|
|
5
6
|
import config from '@config';
|
|
6
7
|
|
|
7
8
|
interface Props {
|
|
@@ -46,6 +47,7 @@ const catalogTheme = config.theme || 'default';
|
|
|
46
47
|
<slot name="head" />
|
|
47
48
|
</head>
|
|
48
49
|
<body>
|
|
50
|
+
<NavigationProgress />
|
|
49
51
|
<slot />
|
|
50
52
|
<AnalyticsTracker />
|
|
51
53
|
</body>
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
},
|
|
8
8
|
"license": "SEE LICENSE IN LICENSE",
|
|
9
9
|
"type": "module",
|
|
10
|
-
"version": "4.2.
|
|
10
|
+
"version": "4.2.5",
|
|
11
11
|
"publishConfig": {
|
|
12
12
|
"access": "public"
|
|
13
13
|
},
|
|
@@ -32,11 +32,11 @@
|
|
|
32
32
|
],
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@ai-sdk/react": "^3.0.17",
|
|
35
|
-
"@astrojs/markdown-remark": "^7.2.
|
|
36
|
-
"@astrojs/mdx": "^7.0.
|
|
37
|
-
"@astrojs/node": "^11.0.
|
|
38
|
-
"@astrojs/react": "^6.0.
|
|
39
|
-
"@astrojs/rss": "^4.0.
|
|
35
|
+
"@astrojs/markdown-remark": "^7.2.1",
|
|
36
|
+
"@astrojs/mdx": "^7.0.3",
|
|
37
|
+
"@astrojs/node": "^11.0.2",
|
|
38
|
+
"@astrojs/react": "^6.0.1",
|
|
39
|
+
"@astrojs/rss": "^4.0.19",
|
|
40
40
|
"@asyncapi/avro-schema-parser": "3.0.24",
|
|
41
41
|
"@asyncapi/parser": "^3.6.0",
|
|
42
42
|
"@asyncapi/react-component": "3.1.0",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"@tanstack/react-table": "^8.17.3",
|
|
62
62
|
"@xyflow/react": "^12.3.6",
|
|
63
63
|
"ai": "^6.0.17",
|
|
64
|
-
"astro": "^7.
|
|
64
|
+
"astro": "^7.1.1",
|
|
65
65
|
"astro-compress": "^2.4.0",
|
|
66
66
|
"astro-expressive-code": "^0.44.0",
|
|
67
67
|
"astro-seo": "^0.8.4",
|
|
@@ -76,9 +76,9 @@
|
|
|
76
76
|
"elkjs": "^0.10.0",
|
|
77
77
|
"glob": "^13.0.6",
|
|
78
78
|
"gray-matter": "^4.0.3",
|
|
79
|
-
"hono": "4.12.
|
|
79
|
+
"hono": "4.12.27",
|
|
80
80
|
"html-to-image": "^1.11.11",
|
|
81
|
-
"js-yaml": "^4.
|
|
81
|
+
"js-yaml": "^4.3.0",
|
|
82
82
|
"jsonpath-plus": "^10.4.0",
|
|
83
83
|
"jsonwebtoken": "^9.0.2",
|
|
84
84
|
"lodash.debounce": "^4.0.8",
|
|
@@ -116,9 +116,9 @@
|
|
|
116
116
|
"update-notifier": "^7.3.1",
|
|
117
117
|
"uuid": "^10.0.0",
|
|
118
118
|
"zod": "^4.3.6",
|
|
119
|
-
"@eventcatalog/sdk": "2.26.1",
|
|
120
119
|
"@eventcatalog/visualiser": "^4.1.0",
|
|
121
|
-
"@eventcatalog/linter": "1.1.6"
|
|
120
|
+
"@eventcatalog/linter": "1.1.6",
|
|
121
|
+
"@eventcatalog/sdk": "2.26.1"
|
|
122
122
|
},
|
|
123
123
|
"devDependencies": {
|
|
124
124
|
"@astrojs/check": "^0.9.9",
|