@eventcatalog/core 4.11.2 → 4.12.0-beta.1
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 +17 -11
- package/dist/analytics/log-build.js +4 -4
- package/dist/astro-config-path.cjs +51 -0
- package/dist/astro-config-path.d.cts +6 -0
- package/dist/astro-config-path.d.ts +6 -0
- package/dist/astro-config-path.js +6 -0
- package/dist/catalog-runtime.cjs +136 -0
- package/dist/catalog-runtime.d.cts +12 -0
- package/dist/catalog-runtime.d.ts +12 -0
- package/dist/catalog-runtime.js +8 -0
- package/dist/{chunk-B7HCX5HM.js → chunk-3SJDIENM.js} +1 -1
- package/dist/{chunk-AFPH6ERZ.js → chunk-5QRWGO2E.js} +1 -1
- package/dist/{chunk-6U72KINX.js → chunk-DJCOJ77J.js} +1 -0
- package/dist/{chunk-LHR4G2UO.js → chunk-EEZXGNF6.js} +1 -1
- package/dist/{chunk-XMRPNDXB.js → chunk-ISBBAOCD.js} +1 -1
- package/dist/{chunk-Z6OKCHWL.js → chunk-IUPFEQMU.js} +2 -2
- package/dist/{chunk-6QENHZZP.js → chunk-JE6RX7SJ.js} +11 -5
- package/dist/{chunk-LAWEGSJH.js → chunk-LU4GFIHH.js} +1 -1
- package/dist/{chunk-2YJRF4ZX.js → chunk-RYPZGCRN.js} +1 -1
- package/dist/chunk-SAN4U2WU.js +96 -0
- package/dist/{chunk-EGH3ALRY.js → chunk-TVLJNFDW.js} +4 -4
- package/dist/chunk-U63GDPPY.js +14 -0
- package/dist/chunk-VIJJ7JKH.js +17 -0
- package/dist/constants.cjs +1 -1
- package/dist/constants.js +1 -1
- package/dist/eventcatalog-config-file-utils.cjs +13 -7
- package/dist/eventcatalog-config-file-utils.d.cts +86 -2
- package/dist/eventcatalog-config-file-utils.d.ts +86 -2
- package/dist/eventcatalog-config-file-utils.js +1 -1
- package/dist/eventcatalog.cjs +227 -561
- package/dist/eventcatalog.js +62 -71
- package/dist/features.cjs +10 -6
- package/dist/features.js +2 -2
- package/dist/federation/federate.cjs +110 -106
- package/dist/federation/federate.js +4 -4
- package/dist/generate.cjs +11 -7
- package/dist/generate.js +4 -4
- package/dist/resolve-catalog-dependencies.cjs +12 -8
- package/dist/resolve-catalog-dependencies.js +2 -2
- package/dist/runtime-dependencies/@ai-sdk__react.mjs +3 -0
- package/dist/runtime-dependencies/@astrojs__markdown-remark.mjs +3 -0
- package/dist/runtime-dependencies/@astrojs__mdx.mjs +3 -0
- package/dist/runtime-dependencies/@astrojs__node.mjs +3 -0
- package/dist/runtime-dependencies/@astrojs__react.mjs +3 -0
- package/dist/runtime-dependencies/@astrojs__rss.mjs +3 -0
- package/dist/runtime-dependencies/@asyncapi__avro-schema-parser.mjs +3 -0
- package/dist/runtime-dependencies/@asyncapi__parser.mjs +3 -0
- package/dist/runtime-dependencies/@asyncapi__react-component.mjs +3 -0
- package/dist/runtime-dependencies/@asyncapi__react-component__styles__default.min.css.mjs +3 -0
- package/dist/runtime-dependencies/@auth__core.mjs +3 -0
- package/dist/runtime-dependencies/@auth__core__providers__auth0.mjs +3 -0
- package/dist/runtime-dependencies/@auth__core__providers__github.mjs +3 -0
- package/dist/runtime-dependencies/@auth__core__providers__google.mjs +3 -0
- package/dist/runtime-dependencies/@auth__core__providers__microsoft-entra-id.mjs +3 -0
- package/dist/runtime-dependencies/@auth__core__providers__okta.mjs +3 -0
- package/dist/runtime-dependencies/@auth__core__types.mjs +3 -0
- package/dist/runtime-dependencies/@eventcatalog__license.mjs +3 -0
- package/dist/runtime-dependencies/@eventcatalog__linter.mjs +3 -0
- package/dist/runtime-dependencies/@eventcatalog__sdk.mjs +3 -0
- package/dist/runtime-dependencies/@eventcatalog__visualiser.mjs +3 -0
- package/dist/runtime-dependencies/@eventcatalog__visualiser__styles-core.css.mjs +3 -0
- package/dist/runtime-dependencies/@fontsource__inter.mjs +3 -0
- package/dist/runtime-dependencies/@fontsource__inter__400.css.mjs +3 -0
- package/dist/runtime-dependencies/@fontsource__inter__700.css.mjs +3 -0
- package/dist/runtime-dependencies/@headlessui__react.mjs +3 -0
- package/dist/runtime-dependencies/@heroicons__react.mjs +3 -0
- package/dist/runtime-dependencies/@heroicons__react__16__solid__EnvelopeIcon.mjs +3 -0
- package/dist/runtime-dependencies/@heroicons__react__20__solid.mjs +3 -0
- package/dist/runtime-dependencies/@heroicons__react__24__outline.mjs +3 -0
- package/dist/runtime-dependencies/@heroicons__react__24__outline__MagnifyingGlassIcon.mjs +3 -0
- package/dist/runtime-dependencies/@heroicons__react__24__outline__RectangleGroupIcon.mjs +3 -0
- package/dist/runtime-dependencies/@heroicons__react__24__outline__ServerIcon.mjs +3 -0
- package/dist/runtime-dependencies/@heroicons__react__24__solid.mjs +3 -0
- package/dist/runtime-dependencies/@iconify-json__logos.mjs +3 -0
- package/dist/runtime-dependencies/@mermaid-js__layout-elk.mjs +3 -0
- package/dist/runtime-dependencies/@mermaid-js__layout-elk__dist__mermaid-layout-elk.core.mjs.mjs +3 -0
- package/dist/runtime-dependencies/@modelcontextprotocol__sdk.mjs +3 -0
- package/dist/runtime-dependencies/@modelcontextprotocol__sdk__server__mcp.js.mjs +3 -0
- package/dist/runtime-dependencies/@modelcontextprotocol__sdk__server__webStandardStreamableHttp.js.mjs +3 -0
- package/dist/runtime-dependencies/@nanostores__react.mjs +3 -0
- package/dist/runtime-dependencies/@parcel__watcher.mjs +3 -0
- package/dist/runtime-dependencies/@radix-ui__react-context-menu.mjs +3 -0
- package/dist/runtime-dependencies/@radix-ui__react-dialog.mjs +3 -0
- package/dist/runtime-dependencies/@radix-ui__react-dropdown-menu.mjs +3 -0
- package/dist/runtime-dependencies/@radix-ui__react-popover.mjs +3 -0
- package/dist/runtime-dependencies/@radix-ui__react-tooltip.mjs +3 -0
- package/dist/runtime-dependencies/@scalar__api-reference-react.mjs +3 -0
- package/dist/runtime-dependencies/@scalar__api-reference-react__style.css.mjs +3 -0
- package/dist/runtime-dependencies/@tailwindcss__typography.mjs +3 -0
- package/dist/runtime-dependencies/@tailwindcss__vite.mjs +3 -0
- package/dist/runtime-dependencies/@tanstack__react-table.mjs +3 -0
- package/dist/runtime-dependencies/@xyflow__react.mjs +3 -0
- package/dist/runtime-dependencies/@xyflow__react__dist__style.css.mjs +3 -0
- package/dist/runtime-dependencies/ai.mjs +3 -0
- package/dist/runtime-dependencies/astro-expressive-code.mjs +3 -0
- package/dist/runtime-dependencies/astro-expressive-code__components.mjs +3 -0
- package/dist/runtime-dependencies/astro-seo.mjs +3 -0
- package/dist/runtime-dependencies/astro.mjs +3 -0
- package/dist/runtime-dependencies/astro__assets__services__sharp.mjs +3 -0
- package/dist/runtime-dependencies/astro__config.mjs +3 -0
- package/dist/runtime-dependencies/astro__jsx-runtime.mjs +3 -0
- package/dist/runtime-dependencies/astro__loaders.mjs +3 -0
- package/dist/runtime-dependencies/astro__logger__node.mjs +3 -0
- package/dist/runtime-dependencies/astro__types.mjs +3 -0
- package/dist/runtime-dependencies/astro__zod.mjs +3 -0
- package/dist/runtime-dependencies/auth-astro.mjs +3 -0
- package/dist/runtime-dependencies/auth-astro__client.mjs +3 -0
- package/dist/runtime-dependencies/auth-astro__server.mjs +3 -0
- package/dist/runtime-dependencies/boxen.mjs +3 -0
- package/dist/runtime-dependencies/commander.mjs +3 -0
- package/dist/runtime-dependencies/cross-env.mjs +3 -0
- package/dist/runtime-dependencies/d3-drag.mjs +3 -0
- package/dist/runtime-dependencies/d3-force.mjs +3 -0
- package/dist/runtime-dependencies/d3-selection.mjs +3 -0
- package/dist/runtime-dependencies/d3-zoom.mjs +3 -0
- package/dist/runtime-dependencies/dagre.mjs +3 -0
- package/dist/runtime-dependencies/diff.mjs +3 -0
- package/dist/runtime-dependencies/diff2html.mjs +3 -0
- package/dist/runtime-dependencies/diff2html__bundles__css__diff2html.min.css.mjs +3 -0
- package/dist/runtime-dependencies/dotenv.mjs +3 -0
- package/dist/runtime-dependencies/elkjs.mjs +3 -0
- package/dist/runtime-dependencies/elkjs__lib__elk.bundled.js.mjs +3 -0
- package/dist/runtime-dependencies/glob.mjs +3 -0
- package/dist/runtime-dependencies/gray-matter.mjs +3 -0
- package/dist/runtime-dependencies/hono.mjs +3 -0
- package/dist/runtime-dependencies/html-to-image.mjs +3 -0
- package/dist/runtime-dependencies/js-yaml.mjs +3 -0
- package/dist/runtime-dependencies/jsonpath-plus.mjs +3 -0
- package/dist/runtime-dependencies/jsonwebtoken.mjs +3 -0
- package/dist/runtime-dependencies/lodash.debounce.mjs +3 -0
- package/dist/runtime-dependencies/lodash.merge.mjs +3 -0
- package/dist/runtime-dependencies/lucide-react.mjs +3 -0
- package/dist/runtime-dependencies/manifest.json +136 -0
- package/dist/runtime-dependencies/marked.mjs +3 -0
- package/dist/runtime-dependencies/mdast-util-find-and-replace.mjs +3 -0
- package/dist/runtime-dependencies/mermaid.mjs +3 -0
- package/dist/runtime-dependencies/minisearch.mjs +3 -0
- package/dist/runtime-dependencies/nanostores.mjs +3 -0
- package/dist/runtime-dependencies/pagefind.mjs +3 -0
- package/dist/runtime-dependencies/pako.mjs +3 -0
- package/dist/runtime-dependencies/parse5.mjs +3 -0
- package/dist/runtime-dependencies/picocolors.mjs +3 -0
- package/dist/runtime-dependencies/picomatch.mjs +3 -0
- package/dist/runtime-dependencies/react-dom.mjs +3 -0
- package/dist/runtime-dependencies/react-dom__client.mjs +3 -0
- package/dist/runtime-dependencies/react-dom__server.mjs +3 -0
- package/dist/runtime-dependencies/react-markdown.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__cjs__styles__prism.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__cjs__styles__prism__index.js.mjs +3 -0
- package/dist/runtime-dependencies/react.mjs +3 -0
- package/dist/runtime-dependencies/react__jsx-dev-runtime.mjs +3 -0
- package/dist/runtime-dependencies/react__jsx-runtime.mjs +3 -0
- package/dist/runtime-dependencies/recast.mjs +3 -0
- package/dist/runtime-dependencies/recast__parsers__babel.js.mjs +3 -0
- package/dist/runtime-dependencies/rehype-autolink-headings.mjs +3 -0
- package/dist/runtime-dependencies/rehype-expressive-code.mjs +3 -0
- package/dist/runtime-dependencies/rehype-expressive-code__hast.mjs +3 -0
- package/dist/runtime-dependencies/rehype-slug.mjs +3 -0
- package/dist/runtime-dependencies/remark-comment.mjs +3 -0
- package/dist/runtime-dependencies/remark-directive.mjs +3 -0
- package/dist/runtime-dependencies/remark-gfm.mjs +3 -0
- package/dist/runtime-dependencies/rimraf.mjs +3 -0
- package/dist/runtime-dependencies/semver.mjs +3 -0
- package/dist/runtime-dependencies/shelljs.mjs +3 -0
- package/dist/runtime-dependencies/sonner.mjs +3 -0
- package/dist/runtime-dependencies/sql.js.mjs +3 -0
- package/dist/runtime-dependencies/tailwindcss.mjs +3 -0
- package/dist/runtime-dependencies/typescript.mjs +3 -0
- package/dist/runtime-dependencies/unist-util-visit.mjs +3 -0
- package/dist/runtime-dependencies/update-notifier.mjs +3 -0
- package/dist/runtime-dependencies/uuid.mjs +3 -0
- package/dist/runtime-dependencies/zod.mjs +3 -0
- package/dist/runtime-dependencies/zod__v4.mjs +3 -0
- package/dist/search-indexer.cjs +1 -0
- package/dist/search-indexer.js +1 -1
- package/dist/utils/cli-logger.cjs +1 -1
- package/dist/utils/cli-logger.js +2 -2
- package/dist/watcher.cjs +5 -204
- package/dist/watcher.js +1 -2
- package/eventcatalog/astro.config.mjs +57 -31
- package/eventcatalog/integrations/catalog-assets.mjs +204 -0
- package/eventcatalog/integrations/config-loader.mjs +85 -0
- package/eventcatalog/integrations/ecstudio-watcher.mjs +11 -9
- package/eventcatalog/integrations/eventcatalog-runtime.mjs +252 -0
- package/eventcatalog/integrations/expressive-code-config.mjs +6 -0
- package/eventcatalog/integrations/runtime-dependencies.mjs +49 -0
- package/eventcatalog/integrations/runtime-dependency-manifest.mjs +15 -0
- package/eventcatalog/integrations/runtime-paths.mjs +16 -0
- package/eventcatalog/src/content.config.ts +33 -46
- package/eventcatalog/src/enterprise/custom-pages/routes.ts +3 -2
- package/eventcatalog/src/enterprise/feature.ts +2 -1
- package/eventcatalog/src/enterprise/fields/field-indexer.ts +5 -2
- package/eventcatalog/src/enterprise/fields/pages/api/fields.ts +4 -3
- package/eventcatalog/src/enterprise/integrations/eventcatalog-features.ts +32 -32
- package/eventcatalog/src/enterprise/mcp/mcp-auth.ts +1 -1
- package/eventcatalog/src/env.d.ts +7 -1
- package/eventcatalog/src/layouts/VerticalSideBarLayout.astro +15 -3
- package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/index.astro +1 -1
- package/eventcatalog/src/pages/diagrams/[id]/[version]/index.astro +2 -2
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/index.astro +2 -2
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/index.astro +2 -2
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/graphql/[filename].astro +1 -1
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/index.astro +2 -2
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/index.astro +1 -1
- package/eventcatalog/src/pages/docs/[type]/[id]/language/[dictionaryId]/index.astro +1 -1
- package/eventcatalog/src/pages/docs/[type]/[id]/language/index.astro +1 -1
- package/eventcatalog/src/pages/docs/teams/[id]/index.astro +2 -2
- package/eventcatalog/src/pages/docs/users/[id]/index.astro +2 -2
- package/eventcatalog/src/pages/index.astro +2 -3
- package/eventcatalog/src/styles/tailwind.css +3 -0
- package/eventcatalog/src/utils/eventcatalog-config/source.ts +9 -0
- package/eventcatalog/src/utils/feature.ts +2 -1
- package/eventcatalog/tsconfig.json +1 -4
- package/package.json +17 -4
- package/dist/catalog-to-astro-content-directory.cjs +0 -382
- package/dist/catalog-to-astro-content-directory.d.cts +0 -3
- package/dist/catalog-to-astro-content-directory.d.ts +0 -3
- package/dist/catalog-to-astro-content-directory.js +0 -9
- package/dist/chunk-BWN544LB.js +0 -73
- package/dist/chunk-DHH5U5PF.js +0 -53
- package/dist/chunk-KLOHNCNF.js +0 -101
- package/dist/chunk-T4RVWPIQ.js +0 -85
- package/dist/chunk-T5IUG523.js +0 -54
- package/dist/chunk-W5JQON7Z.js +0 -117
- package/dist/copy-core.cjs +0 -88
- package/dist/copy-core.d.cts +0 -4
- package/dist/copy-core.d.ts +0 -4
- package/dist/copy-core.js +0 -8
- package/dist/core-node-modules.cjs +0 -108
- package/dist/core-node-modules.d.cts +0 -7
- package/dist/core-node-modules.d.ts +0 -7
- package/dist/core-node-modules.js +0 -8
- package/dist/custom-components.cjs +0 -89
- package/dist/custom-components.d.cts +0 -4
- package/dist/custom-components.d.ts +0 -4
- package/dist/custom-components.js +0 -8
- package/dist/map-catalog-to-astro.cjs +0 -151
- package/dist/map-catalog-to-astro.d.cts +0 -28
- package/dist/map-catalog-to-astro.d.ts +0 -28
- package/dist/map-catalog-to-astro.js +0 -6
|
@@ -6,10 +6,11 @@
|
|
|
6
6
|
import type { APIRoute } from 'astro';
|
|
7
7
|
import { Hono } from 'hono';
|
|
8
8
|
import { getFieldsDatabase } from '@enterprise/fields/fields-db';
|
|
9
|
-
import
|
|
9
|
+
import { getRuntimePaths } from '../../../../../integrations/runtime-paths.mjs';
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
|
|
11
|
+
// The CLI builds the index at this same path. Shipping it with dist-only SSR
|
|
12
|
+
// deployments is a separate artifact-lifecycle issue, not solved by a fallback.
|
|
13
|
+
const { fieldsDatabasePath: dbPath } = getRuntimePaths(process.env.PROJECT_DIR || process.cwd(), process.env.CATALOG_DIR);
|
|
13
14
|
|
|
14
15
|
const app = new Hono().basePath('/api/schemas/fields');
|
|
15
16
|
|
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
import type { AstroIntegration } from 'astro';
|
|
7
7
|
import fs from 'node:fs';
|
|
8
8
|
import path from 'path';
|
|
9
|
-
import
|
|
9
|
+
import { fileURLToPath } from 'node:url';
|
|
10
|
+
import { getRuntimePaths } from '../../../integrations/runtime-paths.mjs';
|
|
11
|
+
// This integration runs during Astro config evaluation, before @config exists.
|
|
12
|
+
import config from '../../utils/eventcatalog-config/source';
|
|
10
13
|
import {
|
|
11
14
|
isEventCatalogChatEnabled,
|
|
12
15
|
isAuthEnabled,
|
|
@@ -20,22 +23,17 @@ import {
|
|
|
20
23
|
isCustomPagesEnabled,
|
|
21
24
|
isSSR,
|
|
22
25
|
} from '../../utils/feature';
|
|
23
|
-
import {
|
|
24
|
-
CUSTOM_PAGES_MANIFEST_FILENAME,
|
|
25
|
-
getCustomPageRoutes,
|
|
26
|
-
isApiRoute,
|
|
27
|
-
listCustomPageFiles,
|
|
28
|
-
resolveCustomPagesPrefix,
|
|
29
|
-
} from '../custom-pages/routes';
|
|
26
|
+
import { getCustomPageRoutes, isApiRoute, listCustomPageFiles, resolveCustomPagesPrefix } from '../custom-pages/routes';
|
|
30
27
|
|
|
31
|
-
const catalogDirectory = process.env.
|
|
32
|
-
const
|
|
28
|
+
const { runtimeDirectory: catalogDirectory } = getRuntimePaths(process.env.PROJECT_DIR || process.cwd(), process.env.CATALOG_DIR);
|
|
29
|
+
const packageDirectory = fileURLToPath(new URL('../../../', import.meta.url));
|
|
30
|
+
const customPagesDirectory = path.join(process.env.PROJECT_DIR || process.cwd(), 'pages');
|
|
33
31
|
|
|
34
32
|
// Routes are injected at astro:config:setup, so adding or removing a custom page
|
|
35
33
|
// file needs a full Astro restart before its route exists. This manifest is
|
|
36
34
|
// registered via addWatchFile — rewriting it with a changed file list triggers
|
|
37
35
|
// that restart (a Vite-level server.restart() does NOT re-run route injection).
|
|
38
|
-
const customPagesManifest = path.join(
|
|
36
|
+
const customPagesManifest = path.join(catalogDirectory, 'custom-pages.json');
|
|
39
37
|
|
|
40
38
|
const writeCustomPagesManifest = () => {
|
|
41
39
|
const content = JSON.stringify(listCustomPageFiles(customPagesDirectory));
|
|
@@ -45,7 +43,7 @@ const writeCustomPagesManifest = () => {
|
|
|
45
43
|
return;
|
|
46
44
|
}
|
|
47
45
|
|
|
48
|
-
fs.mkdirSync(
|
|
46
|
+
fs.mkdirSync(catalogDirectory, { recursive: true });
|
|
49
47
|
fs.writeFileSync(customPagesManifest, content);
|
|
50
48
|
} catch (error: any) {
|
|
51
49
|
console.warn(`[EventCatalog] Could not update the custom pages manifest: ${error.message}`);
|
|
@@ -85,25 +83,25 @@ const configureAuthentication = (params: {
|
|
|
85
83
|
}) => {
|
|
86
84
|
params.injectRoute({
|
|
87
85
|
pattern: '/api/[...auth]',
|
|
88
|
-
entrypoint: path.join(
|
|
86
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/auth/[...auth].ts'),
|
|
89
87
|
});
|
|
90
88
|
params.injectRoute({
|
|
91
89
|
pattern: '/auth/login',
|
|
92
|
-
entrypoint: path.join(
|
|
90
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/auth/login.astro'),
|
|
93
91
|
});
|
|
94
92
|
params.injectRoute({
|
|
95
93
|
pattern: '/auth/error',
|
|
96
|
-
entrypoint: path.join(
|
|
94
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/auth/error.astro'),
|
|
97
95
|
});
|
|
98
96
|
|
|
99
97
|
params.injectRoute({
|
|
100
98
|
pattern: '/unauthorized',
|
|
101
|
-
entrypoint: path.join(
|
|
99
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/auth/unauthorized.astro'),
|
|
102
100
|
});
|
|
103
101
|
|
|
104
102
|
// Add the authentication middleware
|
|
105
103
|
params.addMiddleware({
|
|
106
|
-
entrypoint: path.join(
|
|
104
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/auth/middleware/middleware.ts'),
|
|
107
105
|
order: 'pre',
|
|
108
106
|
});
|
|
109
107
|
};
|
|
@@ -117,7 +115,7 @@ export default function eventCatalogIntegration(): AstroIntegration {
|
|
|
117
115
|
if (isEventCatalogChatEnabled()) {
|
|
118
116
|
params.injectRoute({
|
|
119
117
|
pattern: '/api/chat',
|
|
120
|
-
entrypoint: path.join(
|
|
118
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/ai/chat-api.ts'),
|
|
121
119
|
});
|
|
122
120
|
}
|
|
123
121
|
|
|
@@ -125,18 +123,18 @@ export default function eventCatalogIntegration(): AstroIntegration {
|
|
|
125
123
|
if (isEventCatalogMCPEnabled()) {
|
|
126
124
|
params.injectRoute({
|
|
127
125
|
pattern: '/docs/mcp/[...path]',
|
|
128
|
-
entrypoint: path.join(
|
|
126
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/mcp/mcp-server.ts'),
|
|
129
127
|
});
|
|
130
128
|
}
|
|
131
129
|
|
|
132
130
|
if (isEventCatalogMCPAuthEnabled()) {
|
|
133
131
|
params.injectRoute({
|
|
134
132
|
pattern: '/.well-known/oauth-protected-resource',
|
|
135
|
-
entrypoint: path.join(
|
|
133
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/mcp/oauth-protected-resource.ts'),
|
|
136
134
|
});
|
|
137
135
|
params.injectRoute({
|
|
138
136
|
pattern: '/.well-known/oauth-protected-resource/[...path]',
|
|
139
|
-
entrypoint: path.join(
|
|
137
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/mcp/oauth-protected-resource.ts'),
|
|
140
138
|
});
|
|
141
139
|
}
|
|
142
140
|
|
|
@@ -149,24 +147,24 @@ export default function eventCatalogIntegration(): AstroIntegration {
|
|
|
149
147
|
if (isCustomDocsEnabled()) {
|
|
150
148
|
params.injectRoute({
|
|
151
149
|
pattern: '/docs/custom',
|
|
152
|
-
entrypoint: path.join(
|
|
150
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/custom-documentation/pages/docs/custom/root-index.astro'),
|
|
153
151
|
});
|
|
154
152
|
params.injectRoute({
|
|
155
153
|
pattern: '/docs/custom/[...path]',
|
|
156
154
|
entrypoint: path.join(
|
|
157
|
-
|
|
155
|
+
packageDirectory,
|
|
158
156
|
'src/enterprise/custom-documentation/pages/docs/custom/[...path]/index.astro'
|
|
159
157
|
),
|
|
160
158
|
});
|
|
161
159
|
params.injectRoute({
|
|
162
160
|
pattern: '/docs/custom/[...path].mdx',
|
|
163
|
-
entrypoint: path.join(
|
|
161
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/custom-documentation/pages/docs/custom/[...path].mdx.ts'),
|
|
164
162
|
});
|
|
165
163
|
} else {
|
|
166
164
|
// Show feature page for non-paying users
|
|
167
165
|
params.injectRoute({
|
|
168
166
|
pattern: '/docs/custom',
|
|
169
|
-
entrypoint: path.join(
|
|
167
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/custom-documentation/pages/docs/custom/feature.astro'),
|
|
170
168
|
});
|
|
171
169
|
}
|
|
172
170
|
|
|
@@ -174,12 +172,12 @@ export default function eventCatalogIntegration(): AstroIntegration {
|
|
|
174
172
|
if (isEventCatalogScaleEnabled()) {
|
|
175
173
|
params.injectRoute({
|
|
176
174
|
pattern: '/api/schemas/[collection]/[id]/[version]',
|
|
177
|
-
entrypoint: path.join(
|
|
175
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/api/schemas/[collection]/[id]/[version]/index.ts'),
|
|
178
176
|
});
|
|
179
177
|
params.injectRoute({
|
|
180
178
|
pattern: '/api/schemas/services/[id]/[version]/[specification]',
|
|
181
179
|
entrypoint: path.join(
|
|
182
|
-
|
|
180
|
+
packageDirectory,
|
|
183
181
|
'src/enterprise/api/schemas/services/[id]/[version]/[specification]/index.ts'
|
|
184
182
|
),
|
|
185
183
|
});
|
|
@@ -189,7 +187,7 @@ export default function eventCatalogIntegration(): AstroIntegration {
|
|
|
189
187
|
if (isFullCatalogAPIEnabled()) {
|
|
190
188
|
params.injectRoute({
|
|
191
189
|
pattern: '/api/catalog',
|
|
192
|
-
entrypoint: path.join(
|
|
190
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/api/catalog.ts'),
|
|
193
191
|
});
|
|
194
192
|
}
|
|
195
193
|
|
|
@@ -197,11 +195,11 @@ export default function eventCatalogIntegration(): AstroIntegration {
|
|
|
197
195
|
if (isSSR()) {
|
|
198
196
|
params.injectRoute({
|
|
199
197
|
pattern: '/schemas/fields',
|
|
200
|
-
entrypoint: path.join(
|
|
198
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/fields/pages/fields.astro'),
|
|
201
199
|
});
|
|
202
200
|
params.injectRoute({
|
|
203
201
|
pattern: '/api/schemas/fields',
|
|
204
|
-
entrypoint: path.join(
|
|
202
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/fields/pages/api/fields.ts'),
|
|
205
203
|
});
|
|
206
204
|
}
|
|
207
205
|
|
|
@@ -226,11 +224,11 @@ export default function eventCatalogIntegration(): AstroIntegration {
|
|
|
226
224
|
if (isDevMode()) {
|
|
227
225
|
params.injectRoute({
|
|
228
226
|
pattern: '/api/dev/visualizer-layout/save',
|
|
229
|
-
entrypoint: path.join(
|
|
227
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/visualizer-layout/save.ts'),
|
|
230
228
|
});
|
|
231
229
|
params.injectRoute({
|
|
232
230
|
pattern: '/api/dev/visualizer-layout/reset',
|
|
233
|
-
entrypoint: path.join(
|
|
231
|
+
entrypoint: path.join(packageDirectory, 'src/enterprise/visualizer-layout/reset.ts'),
|
|
234
232
|
});
|
|
235
233
|
}
|
|
236
234
|
},
|
|
@@ -247,6 +245,8 @@ export default function eventCatalogIntegration(): AstroIntegration {
|
|
|
247
245
|
|
|
248
246
|
server.watcher.on('add', onCustomPageChange);
|
|
249
247
|
server.watcher.on('unlink', onCustomPageChange);
|
|
248
|
+
server.watcher.add(customPagesDirectory);
|
|
249
|
+
server.watcher.add(customPagesManifest);
|
|
250
250
|
},
|
|
251
251
|
},
|
|
252
252
|
};
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
|
|
6
6
|
import jwt, { type Algorithm, type JwtPayload } from 'jsonwebtoken';
|
|
7
7
|
import { createPublicKey, type JsonWebKey, type KeyObject } from 'node:crypto';
|
|
8
|
-
import config from '
|
|
8
|
+
import config from '@config';
|
|
9
9
|
import type { Config } from '../../../../src/eventcatalog.config';
|
|
10
10
|
|
|
11
11
|
type ConfiguredMcpAuth = NonNullable<NonNullable<Config['mcp']>['auth']>;
|
|
@@ -1,10 +1,16 @@
|
|
|
1
|
-
/// <reference path="../.astro/types.d.ts" />
|
|
2
1
|
/// <reference types="astro/client" />
|
|
3
2
|
|
|
4
3
|
declare const __EC_TRAILING_SLASH__: boolean;
|
|
5
4
|
declare const __EC_BASE__: string;
|
|
6
5
|
declare const __EC_SEARCH_TYPE__: 'resource' | 'indexed';
|
|
7
6
|
|
|
7
|
+
declare module '@catalog/styles';
|
|
8
|
+
|
|
9
|
+
declare module 'virtual:eventcatalog/homepage' {
|
|
10
|
+
const homepage: any;
|
|
11
|
+
export default homepage;
|
|
12
|
+
}
|
|
13
|
+
|
|
8
14
|
declare module 'virtual:likec4-projects' {
|
|
9
15
|
export const projectRegistry: Record<string, () => Promise<{ LikeC4View: import('react').ComponentType<any> }>>;
|
|
10
16
|
export const discoveredProjects: string[];
|
|
@@ -86,7 +86,7 @@ let dataProducts: any[] = [];
|
|
|
86
86
|
// Try and load any custom styles if they exist
|
|
87
87
|
if (isCustomStylesEnabled()) {
|
|
88
88
|
try {
|
|
89
|
-
await import('
|
|
89
|
+
await import('@catalog/styles');
|
|
90
90
|
} catch (error) {}
|
|
91
91
|
}
|
|
92
92
|
|
|
@@ -497,13 +497,25 @@ const verticalNavAutoCollapsePaths = [buildUrl('/discover', true), buildUrl('/do
|
|
|
497
497
|
}
|
|
498
498
|
|
|
499
499
|
.app-content-wrapper {
|
|
500
|
-
--ec-app-content-padding-left: 5rem;
|
|
501
|
-
--ec-app-content-padding-right: 5rem;
|
|
500
|
+
--ec-app-content-padding-left: 1.5rem;
|
|
501
|
+
--ec-app-content-padding-right: 1.5rem;
|
|
502
502
|
margin-left: auto;
|
|
503
503
|
margin-right: auto;
|
|
504
504
|
padding-left: var(--ec-app-content-padding-left);
|
|
505
505
|
padding-right: var(--ec-app-content-padding-right);
|
|
506
506
|
}
|
|
507
|
+
@media (min-width: 768px) {
|
|
508
|
+
.app-content-wrapper {
|
|
509
|
+
--ec-app-content-padding-left: 2.5rem;
|
|
510
|
+
--ec-app-content-padding-right: 2.5rem;
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
@media (min-width: 1280px) {
|
|
514
|
+
.app-content-wrapper {
|
|
515
|
+
--ec-app-content-padding-left: 3.5rem;
|
|
516
|
+
--ec-app-content-padding-right: 2rem;
|
|
517
|
+
}
|
|
518
|
+
}
|
|
507
519
|
.app-content-wrapper--reduced-padding {
|
|
508
520
|
--ec-app-content-padding-left: 2rem;
|
|
509
521
|
--ec-app-content-padding-right: 2rem;
|
|
@@ -24,7 +24,7 @@ const specifications = type === 'services' ? getSpecificationsForService(props)
|
|
|
24
24
|
<VerticalSideBarLayout title={pageTitle}>
|
|
25
25
|
<main class="flex docs-layout min-h-full bg-[rgb(var(--ec-page-bg))]">
|
|
26
26
|
<div class="flex docs-layout w-full">
|
|
27
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
27
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
28
28
|
{type === 'domains' && <DomainGrid domain={domain} client:load />}
|
|
29
29
|
{type === 'systems' && <SystemGrid system={props} client:load />}
|
|
30
30
|
{
|
|
@@ -32,7 +32,7 @@ const chatQuery = `Tell me about the "${props.data.name}" diagram (version ${pro
|
|
|
32
32
|
class="flex docs-layout w-full"
|
|
33
33
|
style="padding-left: var(--ec-app-content-padding-left, 5rem); padding-right: var(--ec-app-content-padding-right, 5rem);"
|
|
34
34
|
>
|
|
35
|
-
<main class="diagram-content w-full lg:mr-2 pr-
|
|
35
|
+
<main class="diagram-content w-full lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
36
36
|
<div class="border-b border-[rgb(var(--ec-page-border))] md:pb-2">
|
|
37
37
|
<div class="flex items-start gap-4">
|
|
38
38
|
<div class="min-w-0">
|
|
@@ -73,7 +73,7 @@ const chatQuery = `Tell me about the "${props.data.name}" diagram (version ${pro
|
|
|
73
73
|
headings.length > 0 && (
|
|
74
74
|
<aside
|
|
75
75
|
id="eventcatalog-docs-sidebar"
|
|
76
|
-
class="hidden xl:block sticky top-[4rem] self-start w-[280px] max-h-[calc(100vh-4rem)] overflow-y-auto py-2 flex-shrink-0 pr-
|
|
76
|
+
class="hidden xl:block sticky top-[4rem] self-start w-[280px] max-h-[calc(100vh-4rem)] overflow-y-auto py-2 flex-shrink-0 pr-4 bg-[rgb(var(--ec-page-bg))]"
|
|
77
77
|
>
|
|
78
78
|
<div class="mt-8 space-y-8">
|
|
79
79
|
<div>
|
package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/index.astro
CHANGED
|
@@ -52,7 +52,7 @@ const pagefindAttributes =
|
|
|
52
52
|
<VerticalSideBarLayout title={pageTitle} description={props.data.summary}>
|
|
53
53
|
<main class="flex docs-layout min-h-full bg-[rgb(var(--ec-page-bg))]" {...pagefindAttributes}>
|
|
54
54
|
<div class="flex docs-layout w-full">
|
|
55
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
55
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
56
56
|
{/* Header mirrors the latest-doc page ([docId]/index.astro) and the resource page. */}
|
|
57
57
|
<div class="border-b border-[rgb(var(--ec-page-border))] md:pb-3 pt-4">
|
|
58
58
|
<div class="flex flex-col gap-4">
|
|
@@ -108,7 +108,7 @@ const pagefindAttributes =
|
|
|
108
108
|
</div>
|
|
109
109
|
</div>
|
|
110
110
|
<aside
|
|
111
|
-
class="hidden xl:block sticky top-[4rem] self-start w-[280px] max-h-[calc(100vh-4rem)] overflow-y-auto py-2 flex-shrink-0 pr-
|
|
111
|
+
class="hidden xl:block sticky top-[4rem] self-start w-[280px] max-h-[calc(100vh-4rem)] overflow-y-auto py-2 flex-shrink-0 pr-4 bg-[rgb(var(--ec-page-bg))]"
|
|
112
112
|
>
|
|
113
113
|
<div class="mt-8 space-y-8">
|
|
114
114
|
<h3 class="text-xs text-[rgb(var(--ec-page-text))] font-semibold capitalize flex items-center gap-2 mb-4">
|
|
@@ -53,7 +53,7 @@ const pagefindAttributes =
|
|
|
53
53
|
<VerticalSideBarLayout title={pageTitle} description={props.data.summary}>
|
|
54
54
|
<main class="flex docs-layout min-h-full bg-[rgb(var(--ec-page-bg))]" {...pagefindAttributes}>
|
|
55
55
|
<div class="flex docs-layout w-full">
|
|
56
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
56
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
57
57
|
{/* Header mirrors the resource page (docs/[type]/[id]/[version]/index.astro) so docs feel like part of the resource. */}
|
|
58
58
|
<div class="border-b border-[rgb(var(--ec-page-border))] md:pb-3 pt-4">
|
|
59
59
|
<div class="flex flex-col gap-4">
|
|
@@ -107,7 +107,7 @@ const pagefindAttributes =
|
|
|
107
107
|
</div>
|
|
108
108
|
</div>
|
|
109
109
|
<aside
|
|
110
|
-
class="hidden xl:block sticky top-[4rem] self-start w-[280px] max-h-[calc(100vh-4rem)] overflow-y-auto py-2 flex-shrink-0 pr-
|
|
110
|
+
class="hidden xl:block sticky top-[4rem] self-start w-[280px] max-h-[calc(100vh-4rem)] overflow-y-auto py-2 flex-shrink-0 pr-4 bg-[rgb(var(--ec-page-bg))]"
|
|
111
111
|
>
|
|
112
112
|
<div class="mt-8 space-y-8">
|
|
113
113
|
<h3 class="text-xs text-[rgb(var(--ec-page-text))] font-semibold capitalize flex items-center gap-2 mb-4">
|
|
@@ -66,7 +66,7 @@ const pagefindAttributes =
|
|
|
66
66
|
<VerticalSideBarLayout title={pageTitle} description={`GraphQL schema for ${data.name}`}>
|
|
67
67
|
<main class="flex docs-layout min-h-full bg-[rgb(var(--ec-page-bg))]" {...pagefindAttributes}>
|
|
68
68
|
<div class="flex docs-layout w-full">
|
|
69
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
69
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
70
70
|
<div class="border-b border-[rgb(var(--ec-page-border))] md:pb-2">
|
|
71
71
|
<div>
|
|
72
72
|
<div class="flex justify-between items-start">
|
|
@@ -424,7 +424,7 @@ if (!isAdrPage && !hasCurrentFlowEmbed && !hasCurrentPageNodeGraph) {
|
|
|
424
424
|
<VerticalSideBarLayout title={pageTitle} description={props.data.summary}>
|
|
425
425
|
<main class="flex docs-layout min-h-full bg-[rgb(var(--ec-page-bg))]" {...pagefindAttributes}>
|
|
426
426
|
<div class="flex docs-layout w-full">
|
|
427
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
427
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
428
428
|
<div class="border-b border-[rgb(var(--ec-page-border))] md:pb-3 pt-4">
|
|
429
429
|
<div>
|
|
430
430
|
<div>
|
|
@@ -715,7 +715,7 @@ if (!isAdrPage && !hasCurrentFlowEmbed && !hasCurrentPageNodeGraph) {
|
|
|
715
715
|
</div>
|
|
716
716
|
<aside
|
|
717
717
|
id="eventcatalog-docs-sidebar"
|
|
718
|
-
class="hidden xl:block sticky top-[4rem] self-start w-[280px] max-h-[calc(100vh-4rem)] overflow-y-auto py-2 flex-shrink-0 pr-
|
|
718
|
+
class="hidden xl:block sticky top-[4rem] self-start w-[280px] max-h-[calc(100vh-4rem)] overflow-y-auto py-2 flex-shrink-0 pr-4 bg-[rgb(var(--ec-page-bg))]"
|
|
719
719
|
>
|
|
720
720
|
<div class="mt-8 space-y-8">
|
|
721
721
|
{
|
|
@@ -47,7 +47,7 @@ const resources: SystemResourceItem[] = resourceGroups.flatMap(({ collection, it
|
|
|
47
47
|
<VerticalSideBarLayout title={`${data.name} | Resources`}>
|
|
48
48
|
<main class="flex docs-layout min-h-full bg-[rgb(var(--ec-page-bg))]">
|
|
49
49
|
<div class="flex docs-layout w-full">
|
|
50
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
50
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
51
51
|
{/* Header mirrors the resource page (docs/[type]/[id]/[version]/index.astro). */}
|
|
52
52
|
<div class="border-b border-[rgb(var(--ec-page-border))] md:pb-3 pt-4">
|
|
53
53
|
<div class="flex flex-col gap-4">
|
|
@@ -55,7 +55,7 @@ const badges = [
|
|
|
55
55
|
data-pagefind-meta={`title:${pageTitle}`}
|
|
56
56
|
>
|
|
57
57
|
<div class="flex docs-layout w-full">
|
|
58
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
58
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 min-h-[50em]">
|
|
59
59
|
{/* Header mirrors the resource page (docs/[type]/[id]/[version]/index.astro). */}
|
|
60
60
|
<div class="border-b border-[rgb(var(--ec-page-border))] md:pb-3 pt-4">
|
|
61
61
|
<div class="flex flex-col gap-4">
|
|
@@ -33,7 +33,7 @@ const ownerTypeLabel = props.collection === 'domains' ? 'Domain' : 'System';
|
|
|
33
33
|
data-pagefind-meta={`title:${pageTitle}`}
|
|
34
34
|
>
|
|
35
35
|
<div class="flex docs-layout w-full">
|
|
36
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
36
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 min-h-[50em]">
|
|
37
37
|
{/* Header mirrors the resource page (docs/[type]/[id]/[version]/index.astro). */}
|
|
38
38
|
<div class="border-b border-[rgb(var(--ec-page-border))] md:pb-3 pt-4">
|
|
39
39
|
<div class="flex flex-col gap-4">
|
|
@@ -103,7 +103,7 @@ const sourceTitle = sourceLabel ? `Synced from ${sourceLabel}` : undefined;
|
|
|
103
103
|
data-pagefind-meta={`title:${pageTitle}`}
|
|
104
104
|
>
|
|
105
105
|
<div class="flex docs-layout w-full">
|
|
106
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
106
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
107
107
|
<div class="border-b border-[rgb(var(--ec-page-border))] pb-6">
|
|
108
108
|
<div class="flex justify-start">
|
|
109
109
|
<div class="flex flex-col justify-between space-y-3">
|
|
@@ -219,7 +219,7 @@ const sourceTitle = sourceLabel ? `Synced from ${sourceLabel}` : undefined;
|
|
|
219
219
|
</div>
|
|
220
220
|
</div>
|
|
221
221
|
<aside
|
|
222
|
-
class="hidden xl:block sticky top-[5.5rem] self-start w-[280px] max-h-[calc(100vh-5.5rem)] overflow-y-auto py-2 flex-shrink-0 pr-
|
|
222
|
+
class="hidden xl:block sticky top-[5.5rem] self-start w-[280px] max-h-[calc(100vh-5.5rem)] overflow-y-auto py-2 flex-shrink-0 pr-4 bg-[rgb(var(--ec-page-bg))]"
|
|
223
223
|
data-pagefind-ignore
|
|
224
224
|
>
|
|
225
225
|
<div class="py-2">
|
|
@@ -100,7 +100,7 @@ const sourceTitle = sourceLabel ? `Synced from ${sourceLabel}` : undefined;
|
|
|
100
100
|
data-pagefind-meta={`title:${pageTitle}`}
|
|
101
101
|
>
|
|
102
102
|
<div class="flex docs-layout w-full">
|
|
103
|
-
<div class="w-full min-w-0 lg:mr-2 pr-
|
|
103
|
+
<div class="w-full min-w-0 lg:mr-2 xl:pr-12 py-8 bg-[rgb(var(--ec-page-bg))]">
|
|
104
104
|
<div class="border-b border-[rgb(var(--ec-page-border))] pb-6">
|
|
105
105
|
<div class="flex justify-start gap-6">
|
|
106
106
|
{
|
|
@@ -225,7 +225,7 @@ const sourceTitle = sourceLabel ? `Synced from ${sourceLabel}` : undefined;
|
|
|
225
225
|
</div>
|
|
226
226
|
</div>
|
|
227
227
|
<aside
|
|
228
|
-
class="hidden xl:block sticky top-[5.5rem] self-start w-[280px] max-h-[calc(100vh-5.5rem)] overflow-y-auto py-2 flex-shrink-0 pr-
|
|
228
|
+
class="hidden xl:block sticky top-[5.5rem] self-start w-[280px] max-h-[calc(100vh-5.5rem)] overflow-y-auto py-2 flex-shrink-0 pr-4 bg-[rgb(var(--ec-page-bg))]"
|
|
229
229
|
data-pagefind-ignore
|
|
230
230
|
>
|
|
231
231
|
<div class="py-2">
|
|
@@ -5,6 +5,7 @@ import { resourceToCollectionMap } from '@utils/collections/util';
|
|
|
5
5
|
import { buildUrl } from '@utils/url-builder';
|
|
6
6
|
import { isCustomLandingPageEnabled, isVisualiserEnabled, isArchitectureGraphEnabled } from '@utils/feature';
|
|
7
7
|
import DefaultAstroLandingPage from './_index.astro';
|
|
8
|
+
import CustomHomepage from 'virtual:eventcatalog/homepage';
|
|
8
9
|
import config from '@config';
|
|
9
10
|
|
|
10
11
|
let nodeGraphs: any[] = [];
|
|
@@ -23,9 +24,7 @@ const props = Astro.props;
|
|
|
23
24
|
const pathToUserDefinedLandingPage = path.join(process.env.PROJECT_DIR || '', 'pages/homepage.astro');
|
|
24
25
|
|
|
25
26
|
if (existsSync(pathToUserDefinedLandingPage) && isCustomLandingPageEnabled()) {
|
|
26
|
-
|
|
27
|
-
// @ts-ignore
|
|
28
|
-
CustomContent = Object.values(customPages)[0]?.default || null;
|
|
27
|
+
CustomContent = CustomHomepage;
|
|
29
28
|
|
|
30
29
|
const [{ default: pageComponents }, { default: mdxComponents }] = await Promise.all([
|
|
31
30
|
import('@components/MDX/page-components'),
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { getEventCatalogConfigFile } from '../../../integrations/config-loader.mjs';
|
|
2
|
+
import type { Config } from '../../../../src/eventcatalog.config';
|
|
3
|
+
|
|
4
|
+
// Astro evaluates its config before Vite aliases exist. During application
|
|
5
|
+
// compilation the runtime integration replaces this module with a static
|
|
6
|
+
// re-export so production output includes the user's configuration.
|
|
7
|
+
const config: Config = await getEventCatalogConfigFile(process.env.PROJECT_DIR || process.cwd());
|
|
8
|
+
|
|
9
|
+
export default config;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
// Feature checks also run during Astro config evaluation, before @config exists.
|
|
2
|
+
import config from './eventcatalog-config/source';
|
|
2
3
|
|
|
3
4
|
// Open-source feature flags
|
|
4
5
|
export const isEventCatalogChatVisible = () => config?.chat?.enabled ?? true;
|
|
@@ -4,20 +4,17 @@
|
|
|
4
4
|
"strict": true,
|
|
5
5
|
"baseUrl": ".",
|
|
6
6
|
"paths": {
|
|
7
|
-
"@config": ["
|
|
7
|
+
"@config": ["src/utils/eventcatalog-config/source.ts"],
|
|
8
8
|
"@eventcatalog": ["src/utils/eventcatalog-config/catalog.ts"],
|
|
9
9
|
"@icons/*": ["src/icons/*"],
|
|
10
10
|
"@components/*": ["src/components/*"],
|
|
11
|
-
"@catalog/components/*": ["src/custom-defined-components/*"],
|
|
12
11
|
"@catalog/layouts/*": ["src/toolkit/layouts/*"],
|
|
13
12
|
"@catalog/utils": ["src/toolkit/utils/index.ts"],
|
|
14
13
|
"@catalog/utils/*": ["src/toolkit/utils/*"],
|
|
15
|
-
"@catalog/snippets/*": ["src/snippets/*"],
|
|
16
14
|
"@types": ["src/types/index.ts"],
|
|
17
15
|
"@utils/*": ["src/utils/*"],
|
|
18
16
|
"@layouts/*": ["src/layouts/*"],
|
|
19
17
|
"@enterprise/*": ["src/enterprise/*"],
|
|
20
|
-
"@ai/*": ["src/generated-ai/*"],
|
|
21
18
|
"auth:config": ["./auth.config.ts"],
|
|
22
19
|
"@stores/*": ["src/stores/*"]
|
|
23
20
|
},
|
package/package.json
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
},
|
|
8
8
|
"license": "SEE LICENSE IN LICENSE",
|
|
9
9
|
"type": "module",
|
|
10
|
-
"version": "4.
|
|
10
|
+
"version": "4.12.0-beta.1",
|
|
11
11
|
"publishConfig": {
|
|
12
12
|
"access": "public"
|
|
13
13
|
},
|
|
@@ -28,6 +28,19 @@
|
|
|
28
28
|
"!eventcatalog/node_modules/",
|
|
29
29
|
"!eventcatalog/**/__tests__/",
|
|
30
30
|
"!eventcatalog/**/*.{spec,test}.{js,jsx,cjs,mjs,ts,tsx,cts,mts}",
|
|
31
|
+
"!eventcatalog/.env*",
|
|
32
|
+
"!eventcatalog/.eventcatalog/",
|
|
33
|
+
"!eventcatalog/.eventcatalog-core/",
|
|
34
|
+
"!eventcatalog/eventcatalog.config.js",
|
|
35
|
+
"!eventcatalog/eventcatalog.styles.css",
|
|
36
|
+
"!eventcatalog/public/generated/",
|
|
37
|
+
"!eventcatalog/public/pagefind/",
|
|
38
|
+
"!eventcatalog/src/content/",
|
|
39
|
+
"!eventcatalog/src/catalog-files/",
|
|
40
|
+
"!eventcatalog/src/custom-defined-components/",
|
|
41
|
+
"!eventcatalog/src/custom-pages/",
|
|
42
|
+
"!eventcatalog/src/snippets/",
|
|
43
|
+
"!eventcatalog/src/generated-ai/",
|
|
31
44
|
"bin/",
|
|
32
45
|
"dist/"
|
|
33
46
|
],
|
|
@@ -121,8 +134,8 @@
|
|
|
121
134
|
"uuid": "^11.1.1",
|
|
122
135
|
"zod": "^4.3.6",
|
|
123
136
|
"@eventcatalog/linter": "1.1.20",
|
|
124
|
-
"@eventcatalog/
|
|
125
|
-
"@eventcatalog/
|
|
137
|
+
"@eventcatalog/visualiser": "^4.1.4",
|
|
138
|
+
"@eventcatalog/sdk": "2.29.1"
|
|
126
139
|
},
|
|
127
140
|
"devDependencies": {
|
|
128
141
|
"@astrojs/check": "^0.9.10",
|
|
@@ -155,7 +168,7 @@
|
|
|
155
168
|
},
|
|
156
169
|
"scripts": {
|
|
157
170
|
"dev": "astro dev",
|
|
158
|
-
"build:bin": "tsup && node scripts/copy-docs-to-dist.mjs",
|
|
171
|
+
"build:bin": "tsup && node scripts/build-runtime-dependencies.mjs && node scripts/copy-docs-to-dist.mjs",
|
|
159
172
|
"test": "cross-env DISABLE_EVENTCATALOG_CACHE=true vitest",
|
|
160
173
|
"test:ci": "node scripts/ci/test.js",
|
|
161
174
|
"start": "astro dev",
|