@eventcatalog/core 4.12.3 → 5.0.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/LICENSE +226 -95
- package/NOTICE +30 -0
- package/README.md +3 -2
- package/dist/analytics/analytics.cjs +2 -1
- package/dist/analytics/analytics.js +2 -2
- package/dist/analytics/log-build.cjs +44 -16
- package/dist/analytics/log-build.d.cts +6 -5
- package/dist/analytics/log-build.d.ts +6 -5
- package/dist/analytics/log-build.js +4 -3
- package/dist/{chunk-U4YJSTGV.js → chunk-AYNZXUB5.js} +2 -10
- package/dist/{chunk-5BPN6QEC.js → chunk-K2ACDO7Y.js} +1 -1
- package/dist/{chunk-ZYTCBNB3.js → chunk-KYJZJLBD.js} +2 -1
- package/dist/{chunk-TV3YAWKQ.js → chunk-Q6SD5SNQ.js} +1 -1
- package/dist/{chunk-HPC6KUDQ.js → chunk-S2QGT7ZF.js} +1 -1
- package/dist/chunk-TQLRG35T.js +203 -0
- package/dist/{chunk-M577VUOX.js → chunk-UDS3SYLZ.js} +13 -16
- package/dist/constants.cjs +1 -1
- package/dist/constants.js +1 -1
- package/dist/eventcatalog.cjs +408 -291
- package/dist/eventcatalog.config.d.cts +2 -3
- package/dist/eventcatalog.config.d.ts +2 -3
- package/dist/eventcatalog.js +35 -98
- package/dist/federation/content-cache.d.cts +0 -5
- package/dist/federation/content-cache.d.ts +0 -5
- package/dist/federation/diagnostics.d.cts +0 -5
- package/dist/federation/diagnostics.d.ts +0 -5
- package/dist/federation/federate.cjs +0 -9
- package/dist/federation/federate.d.cts +0 -5
- package/dist/federation/federate.d.ts +0 -5
- package/dist/federation/federate.js +4 -5
- package/dist/federation/filesystem-source-provider.d.cts +0 -5
- package/dist/federation/filesystem-source-provider.d.ts +0 -5
- package/dist/federation/github-source-provider.d.cts +0 -5
- package/dist/federation/github-source-provider.d.ts +0 -5
- package/dist/federation/output-transaction.d.cts +0 -4
- package/dist/federation/output-transaction.d.ts +0 -4
- package/dist/federation/public-assets.d.cts +0 -5
- package/dist/federation/public-assets.d.ts +0 -5
- package/dist/federation/source-provider.d.cts +0 -5
- package/dist/federation/source-provider.d.ts +0 -5
- package/dist/federation/types.d.cts +0 -5
- package/dist/federation/types.d.ts +0 -5
- package/dist/generate.cjs +1 -1
- package/dist/generate.js +3 -3
- package/dist/license-C1y-56bb.d.cts +23 -0
- package/dist/license-C1y-56bb.d.ts +23 -0
- package/dist/runtime-dependencies/@eventcatalog__visualiser__layout.mjs +3 -0
- package/dist/runtime-dependencies/@modelcontextprotocol__ext-apps.mjs +3 -0
- package/dist/runtime-dependencies/@modelcontextprotocol__ext-apps__react.mjs +3 -0
- package/dist/runtime-dependencies/@modelcontextprotocol__ext-apps__server.mjs +3 -0
- package/dist/runtime-dependencies/@modelcontextprotocol__sdk__types.js.mjs +3 -0
- package/dist/runtime-dependencies/manifest.json +12 -1
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__esm__languages__prism__graphql.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__esm__languages__prism__json.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__esm__languages__prism__markup.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__esm__languages__prism__protobuf.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__esm__languages__prism__yaml.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__esm__styles__prism__one-dark.mjs +3 -0
- package/dist/runtime-dependencies/react-syntax-highlighter__dist__esm__styles__prism__one-light.mjs +3 -0
- package/dist/utils/cli-logger.cjs +1 -1
- package/dist/utils/cli-logger.js +2 -2
- package/dist/utils/license-status.cjs +240 -0
- package/dist/utils/license-status.d.cts +28 -0
- package/dist/utils/license-status.d.ts +28 -0
- package/dist/utils/license-status.js +12 -0
- package/eventcatalog/astro.config.mjs +1 -1
- package/eventcatalog/integrations/eventcatalog-runtime.mjs +1 -1
- package/eventcatalog/src/components/ChatPanel/ChatPanel.tsx +29 -19
- package/eventcatalog/src/components/ChatPanel/OfflineReply.tsx +74 -0
- package/eventcatalog/src/components/FieldsExplorer/FieldFilters.tsx +24 -28
- package/eventcatalog/src/components/FieldsExplorer/FieldNodeGraph.tsx +16 -11
- package/eventcatalog/src/components/FieldsExplorer/FieldsExplorer.tsx +4 -218
- package/eventcatalog/src/components/FieldsExplorer/FieldsTable.tsx +27 -36
- package/eventcatalog/src/components/Header.astro +43 -58
- package/eventcatalog/src/components/Lists/PillListFlat.styles.css +17 -17
- package/eventcatalog/src/components/MDX/EntityMap/EntityMap.astro +1 -1
- package/eventcatalog/src/components/MDX/Flow/Flow.astro +4 -0
- package/eventcatalog/src/components/MDX/NodeGraph/AstroNodeGraph.tsx +14 -0
- package/eventcatalog/src/components/MDX/NodeGraph/NodeGraph.astro +49 -18
- package/eventcatalog/src/components/MDX/RemoteFile.astro +2 -24
- package/eventcatalog/src/components/SchemaExplorer/ApiAccessSection.tsx +59 -93
- package/eventcatalog/src/components/SchemaExplorer/ApiContentViewer.tsx +1 -32
- package/eventcatalog/src/components/SchemaExplorer/DiffViewer.tsx +20 -67
- package/eventcatalog/src/components/SchemaExplorer/SchemaContentViewer.tsx +2 -11
- package/eventcatalog/src/components/SchemaExplorer/SchemaDetailsPanel.tsx +11 -60
- package/eventcatalog/src/components/SchemaExplorer/SchemaExplorer.tsx +1 -3
- package/eventcatalog/src/components/SchemaExplorer/SchemaPageViewer.tsx +0 -3
- package/eventcatalog/src/components/SchemaExplorer/VersionHistoryModal.tsx +2 -9
- package/eventcatalog/src/components/SchemaExplorer/parse-schema.ts +46 -0
- package/eventcatalog/src/components/SchemaExplorer/utils.ts +11 -0
- package/eventcatalog/src/components/Settings/AssistantSettingsForm.tsx +2 -9
- package/eventcatalog/src/components/Settings/LicenseSettings.tsx +288 -0
- package/eventcatalog/src/components/Settings/LlmAccessSettingsForm.tsx +3 -19
- package/eventcatalog/src/components/Settings/McpSettingsForm.tsx +85 -30
- package/eventcatalog/src/components/Settings/SettingsShared.tsx +7 -75
- package/eventcatalog/src/components/SideNav/CustomDocsNav.astro +2 -2
- package/eventcatalog/src/components/TrialBadge.astro +82 -0
- package/eventcatalog/src/content.config.ts +9 -96
- package/eventcatalog/src/{enterprise → features}/ai/chat-api.ts +22 -34
- package/eventcatalog/src/{enterprise → features}/analytics/adapters/ga4.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/analytics/adapters/gtm.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/analytics/adapters/posthog.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/analytics/components/AnalyticsHead.astro +2 -4
- package/eventcatalog/src/{enterprise → features}/analytics/components/AnalyticsTracker.astro +2 -4
- package/eventcatalog/src/{enterprise → features}/analytics/tracker.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/api/catalog.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/auth/[...auth].ts +0 -5
- package/eventcatalog/src/{enterprise → features}/auth/middleware/middleware-auth.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/auth/middleware/middleware.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/collections/custom-pages.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/collections/index.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/collections/resource-docs.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/custom-documentation/collection.ts +0 -5
- package/eventcatalog/src/features/custom-documentation/components/CustomDocsNav/CustomDocsNav.astro +9 -0
- package/eventcatalog/src/{enterprise → features}/custom-documentation/components/CustomDocsNav/CustomDocsNavWrapper.tsx +0 -5
- package/eventcatalog/src/{enterprise → features}/custom-documentation/components/CustomDocsNav/components/NestedItem.tsx +1 -6
- package/eventcatalog/src/{enterprise → features}/custom-documentation/components/CustomDocsNav/components/NoResultsFound.tsx +0 -5
- package/eventcatalog/src/{enterprise → features}/custom-documentation/components/CustomDocsNav/index.tsx +1 -6
- package/eventcatalog/src/{enterprise → features}/custom-documentation/components/CustomDocsNav/types.ts +0 -5
- package/eventcatalog/src/{enterprise/custom-documentation/pages/docs/custom/index.astro → features/custom-documentation/components/CustomDocumentationPage.astro} +5 -5
- package/eventcatalog/src/{enterprise → features}/custom-documentation/utils/badge-styles.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/custom-documentation/utils/custom-docs.ts +1 -6
- package/eventcatalog/src/{enterprise → features}/custom-documentation/utils/docs-search.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/custom-pages/routes.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/directory/user-team-directory.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/fields/field-extractor.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/fields/field-indexer.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/fields/fields-db.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/fields/pages/api/fields.ts +1 -6
- package/eventcatalog/src/{enterprise → features}/fields/pages/fields.astro +1 -2
- package/eventcatalog/src/{enterprise → features}/integrations/eventcatalog-features.ts +17 -75
- package/eventcatalog/src/features/mcp/apps/architecture-diagram/links.ts +59 -0
- package/eventcatalog/src/features/mcp/apps/architecture-diagram/node-chat.tsx +299 -0
- package/eventcatalog/src/features/mcp/apps/architecture-diagram/shared.ts +14 -0
- package/eventcatalog/src/features/mcp/apps/architecture-diagram/view.tsx +454 -0
- package/eventcatalog/src/features/mcp/apps/generated/viewer.html +432 -0
- package/eventcatalog/src/features/mcp/apps/mermaid-stub.ts +10 -0
- package/eventcatalog/src/features/mcp/apps/schema-viewer/schema-code.tsx +65 -0
- package/eventcatalog/src/features/mcp/apps/schema-viewer/shared.ts +23 -0
- package/eventcatalog/src/features/mcp/apps/schema-viewer/view.tsx +170 -0
- package/eventcatalog/src/features/mcp/apps/shared/app-view.tsx +98 -0
- package/eventcatalog/src/features/mcp/apps/shared/resource-types.ts +15 -0
- package/eventcatalog/src/features/mcp/apps/viewer/shared.ts +24 -0
- package/eventcatalog/src/features/mcp/apps/viewer/styles.css +25 -0
- package/eventcatalog/src/features/mcp/apps/viewer/view.tsx +59 -0
- package/eventcatalog/src/features/mcp/mcp-app-icons.ts +63 -0
- package/eventcatalog/src/features/mcp/mcp-apps.ts +160 -0
- package/eventcatalog/src/{enterprise → features}/mcp/mcp-auth.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/mcp/mcp-scope.ts +7 -7
- package/eventcatalog/src/{enterprise → features}/mcp/mcp-scoped-tools.ts +47 -40
- package/eventcatalog/src/{enterprise → features}/mcp/mcp-server.ts +347 -34
- package/eventcatalog/src/{enterprise → features}/mcp/oauth-protected-resource.ts +0 -5
- package/eventcatalog/src/features/mcp/schema-viewer.ts +24 -0
- package/eventcatalog/src/{enterprise → features}/tools/catalog-tools.ts +133 -102
- package/eventcatalog/src/features/tools/index.ts +5 -0
- package/eventcatalog/src/{enterprise → features}/visualizer-layout/reset.ts +0 -5
- package/eventcatalog/src/{enterprise → features}/visualizer-layout/save.ts +0 -5
- package/eventcatalog/src/layouts/BaseLayout.astro +2 -2
- package/eventcatalog/src/layouts/Footer.astro +31 -39
- package/eventcatalog/src/layouts/SettingsLayout.astro +6 -6
- package/eventcatalog/src/layouts/VerticalSideBarLayout.astro +7 -37
- package/eventcatalog/src/{enterprise → pages}/api/schemas/[collection]/[id]/[version]/index.ts +0 -22
- package/eventcatalog/src/{enterprise → pages}/api/schemas/services/[id]/[version]/[specification]/index.ts +0 -19
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/_index.data.ts +2 -6
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/index.astro +1 -5
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/_index.data.ts +2 -6
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/index.astro +1 -5
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId].md.ts +2 -6
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId].mdx.ts +2 -6
- package/eventcatalog/src/pages/docs/[type]/[id]/[version]/index.astro +9 -5
- package/eventcatalog/src/pages/docs/custom/[...path]/index.astro +12 -0
- package/eventcatalog/src/{enterprise/custom-documentation/pages/docs/custom/root-index.astro → pages/docs/custom/index.astro} +1 -23
- package/eventcatalog/src/pages/docs/llm/llms-full.txt.ts +4 -9
- package/eventcatalog/src/pages/docs/llm/llms.txt.ts +4 -4
- package/eventcatalog/src/pages/docs/llm/schemas.txt.ts +0 -11
- package/eventcatalog/src/pages/docs/services/[id]/[docType]/[docId]/index.astro +2 -2
- package/eventcatalog/src/pages/index.astro +2 -2
- package/eventcatalog/src/pages/schemas/[type]/[id]/[version]/index.astro +0 -3
- package/eventcatalog/src/pages/schemas/explorer/index.astro +1 -4
- package/eventcatalog/src/pages/settings/assistant.astro +2 -4
- package/eventcatalog/src/pages/settings/license.astro +18 -0
- package/eventcatalog/src/pages/settings/llm-access.astro +1 -4
- package/eventcatalog/src/pages/settings/mcp.astro +33 -4
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/_index.data.ts +1 -2
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/data/index.astro +2 -45
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/entity-map/index.astro +1 -1
- package/eventcatalog/src/pages/visualiser/[type]/[id]/[version].mermaid.ts +7 -109
- package/eventcatalog/src/pages/visualiser/_mermaid-route.ts +78 -0
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/_index.data.ts +44 -0
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/entity-map/index.astro +1 -1
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/index.astro +56 -0
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/systems-context/index.astro +3 -40
- package/eventcatalog/src/pages/visualiser/domains/[id]/[version].mermaid.ts +20 -0
- package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/_index.data.ts +29 -0
- package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/context/index.astro +3 -38
- package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/index.astro +56 -0
- package/eventcatalog/src/pages/visualiser/systems/[id]/[version].mermaid.ts +20 -0
- package/eventcatalog/src/stores/sidebar-store/builders/agent.ts +1 -1
- package/eventcatalog/src/stores/sidebar-store/builders/container.ts +1 -1
- package/eventcatalog/src/stores/sidebar-store/builders/data-product.ts +1 -1
- package/eventcatalog/src/stores/sidebar-store/builders/domain.ts +7 -32
- package/eventcatalog/src/stores/sidebar-store/builders/entity.ts +1 -1
- package/eventcatalog/src/stores/sidebar-store/builders/message.ts +1 -1
- package/eventcatalog/src/stores/sidebar-store/builders/service.ts +2 -8
- package/eventcatalog/src/stores/sidebar-store/builders/system.ts +2 -12
- package/eventcatalog/src/stores/sidebar-store/custom-sidebar.ts +0 -10
- package/eventcatalog/src/stores/sidebar-store/state.ts +4 -6
- package/eventcatalog/src/styles/theme.css +22 -18
- package/eventcatalog/src/styles/themes/forest.css +8 -8
- package/eventcatalog/src/styles/themes/ocean.css +8 -8
- package/eventcatalog/src/styles/themes/sapphire.css +8 -8
- package/eventcatalog/src/styles/themes/sunset.css +8 -8
- package/eventcatalog/src/utils/clipboard.ts +4 -4
- package/eventcatalog/src/utils/collections/flow-step-schema.ts +117 -0
- package/eventcatalog/src/utils/collections/pointer-schema.ts +7 -0
- package/eventcatalog/src/utils/collections/resource-docs.ts +677 -14
- package/eventcatalog/src/utils/collections/schema-loader.ts +0 -5
- package/eventcatalog/src/utils/feature.ts +14 -23
- package/eventcatalog/src/utils/license.ts +114 -0
- package/eventcatalog/src/utils/node-graphs/architecture-diagram-types.ts +32 -0
- package/eventcatalog/src/utils/node-graphs/architecture-diagram.ts +84 -0
- package/eventcatalog/src/utils/node-graphs/channel-node-graph.ts +4 -25
- package/eventcatalog/src/utils/node-graphs/container-node-graph.ts +12 -39
- package/eventcatalog/src/utils/node-graphs/data-products-node-graph.ts +11 -27
- package/eventcatalog/src/utils/node-graphs/domain-levels-node-graph.ts +679 -0
- package/eventcatalog/src/utils/node-graphs/domains-node-graph.ts +3 -20
- package/eventcatalog/src/utils/node-graphs/export-mermaid.ts +51 -4
- package/eventcatalog/src/utils/node-graphs/field-node-graph.ts +8 -23
- package/eventcatalog/src/utils/node-graphs/flow-lanes.ts +119 -0
- package/eventcatalog/src/utils/node-graphs/flows-node-graph.ts +133 -47
- package/eventcatalog/src/utils/node-graphs/layout-node-graph.ts +28 -0
- package/eventcatalog/src/utils/node-graphs/layout-persistence.ts +3 -3
- package/eventcatalog/src/utils/node-graphs/message-node-graph.ts +16 -34
- package/eventcatalog/src/utils/node-graphs/services-node-graph.ts +11 -25
- package/eventcatalog/src/utils/node-graphs/system-context-node-graph.ts +18 -54
- package/eventcatalog/src/utils/node-graphs/system-levels-node-graph.ts +59 -0
- package/eventcatalog/src/utils/node-graphs/systems-node-graph.ts +20 -80
- package/eventcatalog/src/utils/node-graphs/utils/utils.ts +1 -78
- package/eventcatalog/src/utils/trial.ts +36 -0
- package/eventcatalog/tsconfig.json +1 -1
- package/package.json +11 -11
- package/dist/chunk-FV56YFM4.js +0 -7
- package/dist/federation/entitlement.cjs +0 -31
- package/dist/federation/entitlement.d.cts +0 -12
- package/dist/federation/entitlement.d.ts +0 -12
- package/dist/federation/entitlement.js +0 -6
- package/dist/runtime-dependencies/dagre.mjs +0 -3
- package/eventcatalog/src/components/Settings/BillingSettingsForm.tsx +0 -265
- package/eventcatalog/src/enterprise/LICENSE +0 -57
- package/eventcatalog/src/enterprise/README.md +0 -5
- package/eventcatalog/src/enterprise/collections/resource-docs-utils.ts +0 -691
- package/eventcatalog/src/enterprise/custom-documentation/components/CustomDocsNav/CustomDocsNav.astro +0 -9
- package/eventcatalog/src/enterprise/custom-documentation/pages/docs/custom/[...path]/index.astro +0 -18
- package/eventcatalog/src/enterprise/custom-documentation/pages/docs/custom/feature.astro +0 -171
- package/eventcatalog/src/enterprise/feature.ts +0 -75
- package/eventcatalog/src/enterprise/tools/index.ts +0 -10
- package/eventcatalog/src/hooks/eventcatalog-visualizer.ts +0 -126
- package/eventcatalog/src/pages/settings/billing.astro +0 -17
- package/eventcatalog/src/pages/visualiser/domain-integrations/index.astro +0 -26
- package/eventcatalog/src/types/mcp-modules.d.ts +0 -67
- package/eventcatalog/src/utils/node-graphs/domains-canvas.ts +0 -261
- package/eventcatalog/src/utils/node-graphs/export-node-graph.ts +0 -91
- /package/eventcatalog/src/{enterprise → features}/auth/error.astro +0 -0
- /package/eventcatalog/src/{enterprise → features}/auth/login.astro +0 -0
- /package/eventcatalog/src/{enterprise → features}/auth/unauthorized.astro +0 -0
- /package/eventcatalog/src/{enterprise/custom-documentation/pages → pages}/docs/custom/[...path]/_index.data.ts +0 -0
- /package/eventcatalog/src/{enterprise/custom-documentation/pages → pages}/docs/custom/[...path].mdx.ts +0 -0
package/eventcatalog/src/enterprise/custom-documentation/pages/docs/custom/[...path]/index.astro
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import CustomDocumentationPage from '@enterprise/custom-documentation/pages/docs/custom/index.astro';
|
|
3
|
-
import { buildUrl } from '@utils/url-builder';
|
|
4
|
-
import { isCustomDocsEnabled } from '@utils/feature';
|
|
5
|
-
import { Page } from './_index.data';
|
|
6
|
-
|
|
7
|
-
export const prerender = Page.prerender;
|
|
8
|
-
export const getStaticPaths = Page.getStaticPaths;
|
|
9
|
-
|
|
10
|
-
// Get data
|
|
11
|
-
const props = await Page.getData(Astro);
|
|
12
|
-
|
|
13
|
-
if (!isCustomDocsEnabled()) {
|
|
14
|
-
return Astro.redirect(buildUrl('/docs/custom/feature'));
|
|
15
|
-
}
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
<CustomDocumentationPage {...props} />
|
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import VerticalSideBarLayout from '@layouts/VerticalSideBarLayout.astro';
|
|
3
|
-
import { BookOpenIcon, FileText } from 'lucide-react';
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
<VerticalSideBarLayout title="Custom Documentation" showNestedSideBar={false}>
|
|
7
|
-
<div class="min-h-[calc(100vh-60px)] bg-[rgb(var(--ec-page-bg))]">
|
|
8
|
-
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-16">
|
|
9
|
-
{/* Hero Section */}
|
|
10
|
-
<div class="grid grid-cols-1 lg:grid-cols-2 gap-12 items-center mb-16">
|
|
11
|
-
<div>
|
|
12
|
-
<div
|
|
13
|
-
class="inline-flex items-center px-4 py-2 rounded-full bg-[rgb(var(--ec-accent-subtle))] text-[rgb(var(--ec-accent))] font-medium text-sm mb-6"
|
|
14
|
-
>
|
|
15
|
-
<FileText className="w-4 h-4 mr-2" />
|
|
16
|
-
New: Bring your documentation into EventCatalog
|
|
17
|
-
</div>
|
|
18
|
-
<h1 class="text-4xl font-bold text-[rgb(var(--ec-page-text))] tracking-tight mb-4">
|
|
19
|
-
Document Everything. Share Knowledge. Build Better.
|
|
20
|
-
</h1>
|
|
21
|
-
<p class="text-xl text-[rgb(var(--ec-page-text-muted))] mb-8">
|
|
22
|
-
Add your own documentation to EventCatalog — from ADRs and system guides to runbooks and onboarding material. Connect
|
|
23
|
-
your knowledge to your architecture.
|
|
24
|
-
</p>
|
|
25
|
-
<div class="flex flex-col sm:flex-row gap-4 mb-8">
|
|
26
|
-
<a
|
|
27
|
-
href="https://demo.eventcatalog.dev/docs/custom/guides/creating-new-microservices/01-index"
|
|
28
|
-
target="_blank"
|
|
29
|
-
class="inline-flex items-center justify-center px-6 py-3 border border-transparent text-base font-medium rounded-lg text-[rgb(var(--ec-button-text))] bg-[rgb(var(--ec-button-bg))] hover:opacity-90 transition-colors duration-150"
|
|
30
|
-
>
|
|
31
|
-
View the demo
|
|
32
|
-
<svg class="ml-2 w-4 h-4" viewBox="0 0 20 20" fill="currentColor">
|
|
33
|
-
<path
|
|
34
|
-
fill-rule="evenodd"
|
|
35
|
-
d="M10.293 3.293a1 1 0 011.414 0l6 6a1 1 0 010 1.414l-6 6a1 1 0 01-1.414-1.414L14.586 11H3a1 1 0 110-2h11.586l-4.293-4.293a1 1 0 010-1.414z"
|
|
36
|
-
clip-rule="evenodd"></path>
|
|
37
|
-
</svg>
|
|
38
|
-
</a>
|
|
39
|
-
<a
|
|
40
|
-
href="https://www.eventcatalog.cloud"
|
|
41
|
-
target="_blank"
|
|
42
|
-
class="inline-flex items-center justify-center px-6 py-3 border border-[rgb(var(--ec-page-border))] text-base font-medium rounded-lg text-[rgb(var(--ec-page-text))] bg-[rgb(var(--ec-card-bg))] hover:bg-[rgb(var(--ec-content-hover))] transition-colors duration-150"
|
|
43
|
-
>
|
|
44
|
-
Try for free
|
|
45
|
-
</a>
|
|
46
|
-
</div>
|
|
47
|
-
<p class="text-sm text-[rgb(var(--ec-page-text-muted))]">
|
|
48
|
-
Available with EventCatalog Starter or Scale plans
|
|
49
|
-
<a href="https://www.eventcatalog.dev/pricing" class="text-[rgb(var(--ec-accent))] font-medium block"
|
|
50
|
-
>Try free for 14 days, no credit card required</a
|
|
51
|
-
>
|
|
52
|
-
</p>
|
|
53
|
-
</div>
|
|
54
|
-
|
|
55
|
-
<div class="relative">
|
|
56
|
-
<div class="absolute -inset-4">
|
|
57
|
-
<div
|
|
58
|
-
class="w-full h-full max-w-full mx-auto opacity-30 blur-lg filter"
|
|
59
|
-
style="background: linear-gradient(90deg, #60A5FA 0%, #3B82F6 100%);"
|
|
60
|
-
>
|
|
61
|
-
</div>
|
|
62
|
-
</div>
|
|
63
|
-
<div class="relative">
|
|
64
|
-
<img
|
|
65
|
-
src="/images/custom-docs-placeholder.png"
|
|
66
|
-
alt="Custom Documentation Preview"
|
|
67
|
-
class="rounded-xl shadow-xl border border-[rgb(var(--ec-page-border))]"
|
|
68
|
-
/>
|
|
69
|
-
</div>
|
|
70
|
-
</div>
|
|
71
|
-
</div>
|
|
72
|
-
|
|
73
|
-
{/* Features Section */}
|
|
74
|
-
<div class="grid grid-cols-1 md:grid-cols-3 gap-8">
|
|
75
|
-
<div class="bg-[rgb(var(--ec-card-bg))] rounded-xl p-6 shadow-xs border border-[rgb(var(--ec-page-border))]">
|
|
76
|
-
<div class="w-12 h-12 bg-[rgb(var(--ec-accent-subtle))] rounded-lg flex items-center justify-center mb-4">
|
|
77
|
-
<svg class="w-6 h-6 text-[rgb(var(--ec-accent))]" viewBox="0 0 24 24" fill="currentColor">
|
|
78
|
-
<path d="M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zM6 20V4h7v5h5v11H6z"></path>
|
|
79
|
-
</svg>
|
|
80
|
-
</div>
|
|
81
|
-
<h3 class="text-lg font-semibold text-[rgb(var(--ec-page-text))] mb-2">Centralized Knowledge</h3>
|
|
82
|
-
<p class="text-[rgb(var(--ec-page-text-muted))]">
|
|
83
|
-
Keep architecture decisions, system guides, and runbooks in one place — easy to access, easy to trust.
|
|
84
|
-
</p>
|
|
85
|
-
</div>
|
|
86
|
-
|
|
87
|
-
<div class="bg-[rgb(var(--ec-card-bg))] rounded-xl p-6 shadow-xs border border-[rgb(var(--ec-page-border))]">
|
|
88
|
-
<div class="w-12 h-12 bg-[rgb(var(--ec-accent-subtle))] rounded-lg flex items-center justify-center mb-4">
|
|
89
|
-
<svg class="w-6 h-6 text-[rgb(var(--ec-accent))]" viewBox="0 0 24 24" fill="currentColor">
|
|
90
|
-
<path
|
|
91
|
-
d="M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-5 14H7v-2h7v2zm3-4H7v-2h10v2zm0-4H7V7h10v2z"
|
|
92
|
-
></path>
|
|
93
|
-
</svg>
|
|
94
|
-
</div>
|
|
95
|
-
<h3 class="text-lg font-semibold text-[rgb(var(--ec-page-text))] mb-2">Rich Formatting</h3>
|
|
96
|
-
<p class="text-[rgb(var(--ec-page-text-muted))]">
|
|
97
|
-
Use Markdown, diagrams, code blocks, and EventCatalog components to create structured, useful documentation.
|
|
98
|
-
</p>
|
|
99
|
-
</div>
|
|
100
|
-
|
|
101
|
-
<div class="bg-[rgb(var(--ec-card-bg))] rounded-xl p-6 shadow-xs border border-[rgb(var(--ec-page-border))]">
|
|
102
|
-
<div class="w-12 h-12 bg-[rgb(var(--ec-accent-subtle))] rounded-lg flex items-center justify-center mb-4">
|
|
103
|
-
<svg class="w-6 h-6 text-[rgb(var(--ec-accent))]" viewBox="0 0 24 24" fill="currentColor">
|
|
104
|
-
<path d="M18 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zM6 4h5v8l-2.5-1.5L6 12V4z"
|
|
105
|
-
></path>
|
|
106
|
-
</svg>
|
|
107
|
-
</div>
|
|
108
|
-
<h3 class="text-lg font-semibold text-[rgb(var(--ec-page-text))] mb-2">Version Control</h3>
|
|
109
|
-
<p class="text-[rgb(var(--ec-page-text-muted))]">
|
|
110
|
-
Track changes and ensure your documentation grows alongside your system.
|
|
111
|
-
</p>
|
|
112
|
-
</div>
|
|
113
|
-
|
|
114
|
-
<div class="bg-[rgb(var(--ec-card-bg))] rounded-xl p-6 shadow-xs border border-[rgb(var(--ec-page-border))]">
|
|
115
|
-
<div class="w-12 h-12 bg-[rgb(var(--ec-accent-subtle))] rounded-lg flex items-center justify-center mb-4">
|
|
116
|
-
<svg class="w-6 h-6 text-[rgb(var(--ec-accent))]" viewBox="0 0 24 24" fill="currentColor">
|
|
117
|
-
<path
|
|
118
|
-
d="M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z"
|
|
119
|
-
></path>
|
|
120
|
-
</svg>
|
|
121
|
-
</div>
|
|
122
|
-
<h3 class="text-lg font-semibold text-[rgb(var(--ec-page-text))] mb-2">Documentation Ownership</h3>
|
|
123
|
-
<p class="text-[rgb(var(--ec-page-text-muted))]">
|
|
124
|
-
Assign and track document owners, making it easy to find the right person in seconds.
|
|
125
|
-
</p>
|
|
126
|
-
</div>
|
|
127
|
-
|
|
128
|
-
<div class="bg-[rgb(var(--ec-card-bg))] rounded-xl p-6 shadow-xs border border-[rgb(var(--ec-page-border))]">
|
|
129
|
-
<div class="w-12 h-12 bg-[rgb(var(--ec-accent-subtle))] rounded-lg flex items-center justify-center mb-4">
|
|
130
|
-
<svg class="w-6 h-6 text-[rgb(var(--ec-accent))]" viewBox="0 0 24 24" fill="currentColor">
|
|
131
|
-
<path d="M3 9h14V7H3v2zm0 4h14v-2H3v2zm0 4h14v-2H3v2zm16 0h2v-2h-2v2zm0-10v2h2V7h-2zm0 6h2v-2h-2v2z"></path>
|
|
132
|
-
</svg>
|
|
133
|
-
</div>
|
|
134
|
-
<h3 class="text-lg font-semibold text-[rgb(var(--ec-page-text))] mb-2">Customizable Sidebars</h3>
|
|
135
|
-
<p class="text-[rgb(var(--ec-page-text-muted))]">
|
|
136
|
-
Auto-generated and fully customizable navigation sidebars to organize your documentation perfectly.
|
|
137
|
-
</p>
|
|
138
|
-
</div>
|
|
139
|
-
|
|
140
|
-
<div class="bg-[rgb(var(--ec-card-bg))] rounded-xl p-6 shadow-xs border border-[rgb(var(--ec-page-border))]">
|
|
141
|
-
<div class="w-12 h-12 bg-[rgb(var(--ec-accent-subtle))] rounded-lg flex items-center justify-center mb-4">
|
|
142
|
-
<svg class="w-6 h-6 text-[rgb(var(--ec-accent))]" viewBox="0 0 24 24" fill="currentColor">
|
|
143
|
-
<path d="M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2zm0 14H6l-2 2V4h16v12z"></path>
|
|
144
|
-
</svg>
|
|
145
|
-
</div>
|
|
146
|
-
<h3 class="text-lg font-semibold text-[rgb(var(--ec-page-text))] mb-2">EventCatalog Chat</h3>
|
|
147
|
-
<p class="text-[rgb(var(--ec-page-text-muted))]">
|
|
148
|
-
Interact with your documentation using AI-powered chat to find answers quickly and efficiently.
|
|
149
|
-
</p>
|
|
150
|
-
</div>
|
|
151
|
-
</div>
|
|
152
|
-
|
|
153
|
-
{/* Bottom Link */}
|
|
154
|
-
<div class="mt-16 text-center">
|
|
155
|
-
<a
|
|
156
|
-
href="https://www.eventcatalog.dev/docs/development/guides/customize-sidebars/application-sidebar"
|
|
157
|
-
target="_blank"
|
|
158
|
-
class="text-sm text-[rgb(var(--ec-page-text-muted))] hover:text-[rgb(var(--ec-page-text))] transition-colors duration-150"
|
|
159
|
-
>
|
|
160
|
-
Not ready for custom documentation? You can hide this feature in settings
|
|
161
|
-
</a>
|
|
162
|
-
</div>
|
|
163
|
-
</div>
|
|
164
|
-
</div>
|
|
165
|
-
</VerticalSideBarLayout>
|
|
166
|
-
|
|
167
|
-
<style>
|
|
168
|
-
.scroll-smooth {
|
|
169
|
-
scroll-behavior: smooth;
|
|
170
|
-
}
|
|
171
|
-
</style>
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This file is licensed under the EventCatalog Commercial License.
|
|
3
|
-
* See /packages/core/eventcatalog/src/enterprise/LICENSE for the full terms.
|
|
4
|
-
*
|
|
5
|
-
* Modifying, disabling, or circumventing the license key functionality
|
|
6
|
-
* in this file without a valid Commercial Subscription is prohibited.
|
|
7
|
-
*
|
|
8
|
-
* To obtain a license: https://www.eventcatalog.dev/pricing
|
|
9
|
-
* Free 14-day trial: https://eventcatalog.cloud/
|
|
10
|
-
*/
|
|
11
|
-
|
|
12
|
-
import fs from 'fs';
|
|
13
|
-
import { join } from 'path';
|
|
14
|
-
// Feature checks also run during Astro config evaluation, before @config exists.
|
|
15
|
-
import config from '../utils/eventcatalog-config/source';
|
|
16
|
-
|
|
17
|
-
// Inline isSSR to avoid circular dependency with ../utils/feature (which re-exports from this file)
|
|
18
|
-
const isSSR = () => config?.output === 'server';
|
|
19
|
-
|
|
20
|
-
// These functions check for valid, legally obtained access to premium features
|
|
21
|
-
export const isEventCatalogStarterEnabled = () => process.env.EVENTCATALOG_STARTER === 'true';
|
|
22
|
-
export const isEventCatalogScaleEnabled = () => process.env.EVENTCATALOG_SCALE === 'true';
|
|
23
|
-
|
|
24
|
-
export const isPrivateRemoteSchemaEnabled = () => isEventCatalogScaleEnabled() || isEventCatalogStarterEnabled();
|
|
25
|
-
|
|
26
|
-
export const isEmbedEnabled = () => process.env.ENABLE_EMBED === 'true';
|
|
27
|
-
|
|
28
|
-
export const showEventCatalogBranding = () => {
|
|
29
|
-
const override = process.env.EVENTCATALOG_SHOW_BRANDING;
|
|
30
|
-
// if any value we return true
|
|
31
|
-
if (override) {
|
|
32
|
-
return true;
|
|
33
|
-
}
|
|
34
|
-
return !isEventCatalogStarterEnabled() && !isEventCatalogScaleEnabled();
|
|
35
|
-
};
|
|
36
|
-
|
|
37
|
-
export const showCustomBranding = () => {
|
|
38
|
-
return isEventCatalogStarterEnabled() || isEventCatalogScaleEnabled();
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
export const isCustomDocsEnabled = () => isEventCatalogStarterEnabled() || isEventCatalogScaleEnabled();
|
|
42
|
-
export const isResourceDocsEnabled = () => isEventCatalogScaleEnabled();
|
|
43
|
-
|
|
44
|
-
export const isEventCatalogChatEnabled = () => {
|
|
45
|
-
const isFeatureEnabledFromPlan = isEventCatalogStarterEnabled() || isEventCatalogScaleEnabled();
|
|
46
|
-
const directory = process.env.PROJECT_DIR || process.cwd();
|
|
47
|
-
const hasChatConfigurationFile = fs.existsSync(join(directory, 'eventcatalog.chat.js'));
|
|
48
|
-
const isEnabledInConfig = config?.chat?.enabled ?? true;
|
|
49
|
-
return isFeatureEnabledFromPlan && hasChatConfigurationFile && isSSR() && isEnabledInConfig;
|
|
50
|
-
};
|
|
51
|
-
|
|
52
|
-
export const isEventCatalogUpgradeEnabled = () => !isEventCatalogStarterEnabled() && !isEventCatalogScaleEnabled();
|
|
53
|
-
|
|
54
|
-
// Custom landing pages are always enabled now.
|
|
55
|
-
export const isCustomLandingPageEnabled = () => true;
|
|
56
|
-
|
|
57
|
-
// User-defined pages and API routes (pages/*.astro, pages/api/*.ts)
|
|
58
|
-
export const isCustomPagesEnabled = () => isEventCatalogScaleEnabled();
|
|
59
|
-
|
|
60
|
-
export const isAuthEnabled = () => {
|
|
61
|
-
const isAuthEnabledInCatalog = config?.auth?.enabled ?? false;
|
|
62
|
-
const directory = process.env.PROJECT_DIR || process.cwd();
|
|
63
|
-
const hasAuthConfigurationFile = fs.existsSync(join(directory, 'eventcatalog.auth.js'));
|
|
64
|
-
return (isAuthEnabledInCatalog && hasAuthConfigurationFile && isSSR() && isEventCatalogScaleEnabled()) || false;
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
export const isCustomStylesEnabled = () => {
|
|
68
|
-
return isEventCatalogStarterEnabled() || isEventCatalogScaleEnabled();
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
export const isEventCatalogMCPEnabled = () => isEventCatalogScaleEnabled() && isSSR() && (config?.mcp?.enabled ?? true);
|
|
72
|
-
|
|
73
|
-
export const isEventCatalogMCPAuthEnabled = () => isEventCatalogMCPEnabled() && (config?.mcp?.auth?.enabled ?? false);
|
|
74
|
-
|
|
75
|
-
export const isIntegrationsEnabled = () => isEventCatalogScaleEnabled();
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Licensed under the EventCatalog Commercial License.
|
|
3
|
-
* See /packages/core/eventcatalog/src/enterprise/LICENSE
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
/**
|
|
7
|
-
* Enterprise tools for EventCatalog
|
|
8
|
-
* Shared utilities for AI Chat and MCP Server features
|
|
9
|
-
*/
|
|
10
|
-
export * from './catalog-tools';
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
import { useCallback, useMemo, useState, useEffect } from 'react';
|
|
2
|
-
import { type Edge, type Node } from '@xyflow/react';
|
|
3
|
-
import {
|
|
4
|
-
createEdge,
|
|
5
|
-
generatedIdForEdge,
|
|
6
|
-
generateIdForNode,
|
|
7
|
-
getEdgeLabelForMessageAsSource,
|
|
8
|
-
getEdgeLabelForServiceAsTarget,
|
|
9
|
-
getNodesAndEdgesFromDagre,
|
|
10
|
-
} from '@utils/node-graphs/utils/utils';
|
|
11
|
-
import type { CollectionEntry } from 'astro:content';
|
|
12
|
-
import type { CollectionMessageTypes, CollectionTypes } from '@types';
|
|
13
|
-
|
|
14
|
-
interface EventCatalogVisualizerProps {
|
|
15
|
-
nodes: Node[];
|
|
16
|
-
edges: Edge[];
|
|
17
|
-
setNodes: (nodes: Node[]) => void;
|
|
18
|
-
setEdges: (edges: Edge[]) => void;
|
|
19
|
-
skipProcessing?: boolean;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
export const useEventCatalogVisualiser = ({
|
|
23
|
-
nodes,
|
|
24
|
-
edges,
|
|
25
|
-
setNodes,
|
|
26
|
-
setEdges,
|
|
27
|
-
skipProcessing = false,
|
|
28
|
-
}: EventCatalogVisualizerProps) => {
|
|
29
|
-
const [hideChannels, setHideChannels] = useState(false);
|
|
30
|
-
const [initialNodes, setInitialNodes] = useState(nodes);
|
|
31
|
-
const [initialEdges, setInitialEdges] = useState(edges);
|
|
32
|
-
|
|
33
|
-
// Initialize hideChannels from localStorage
|
|
34
|
-
useEffect(() => {
|
|
35
|
-
const storedHideChannels = localStorage.getItem('EventCatalog:hideChannels');
|
|
36
|
-
if (storedHideChannels !== null) {
|
|
37
|
-
setHideChannels(storedHideChannels === 'true');
|
|
38
|
-
}
|
|
39
|
-
}, []);
|
|
40
|
-
|
|
41
|
-
useEffect(() => {
|
|
42
|
-
const hasChannels = nodes.some((node) => node.type === 'channels');
|
|
43
|
-
if (!hideChannels || hasChannels) {
|
|
44
|
-
setInitialNodes(nodes);
|
|
45
|
-
setInitialEdges(edges);
|
|
46
|
-
}
|
|
47
|
-
}, [nodes, edges, hideChannels]);
|
|
48
|
-
|
|
49
|
-
const toggleChannelsVisibility = useCallback(() => {
|
|
50
|
-
setHideChannels((prev) => {
|
|
51
|
-
const newValue = !prev;
|
|
52
|
-
localStorage.setItem('EventCatalog:hideChannels', JSON.stringify(newValue));
|
|
53
|
-
return newValue;
|
|
54
|
-
});
|
|
55
|
-
}, []);
|
|
56
|
-
|
|
57
|
-
const channels = useMemo(() => nodes.filter((node) => node.type === 'channels'), [nodes]);
|
|
58
|
-
const updatedNodes = useMemo(() => nodes.filter((node) => node.type !== 'channels'), [nodes]);
|
|
59
|
-
|
|
60
|
-
const updatedEdges = useMemo(() => {
|
|
61
|
-
const newEdges = edges.reduce<Edge[]>((acc, edge) => {
|
|
62
|
-
const { source, target, data } = edge;
|
|
63
|
-
const targetIsChannel = channels.some((channel) => channel.id === target);
|
|
64
|
-
const sourceIsChannel = channels.some((channel) => channel.id === source);
|
|
65
|
-
|
|
66
|
-
if (!sourceIsChannel && !targetIsChannel) {
|
|
67
|
-
return [...acc, edge];
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
if (sourceIsChannel || targetIsChannel) {
|
|
71
|
-
const rootSourceAndTarget = data?.rootSourceAndTarget as {
|
|
72
|
-
source: { id: string; collection: string };
|
|
73
|
-
target: { id: string; collection: string };
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
if (!rootSourceAndTarget) {
|
|
77
|
-
return [...acc, edge];
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
// is target services?
|
|
81
|
-
const targetIsService = rootSourceAndTarget?.target?.collection === 'services';
|
|
82
|
-
const edgeLabel = targetIsService
|
|
83
|
-
? getEdgeLabelForMessageAsSource(rootSourceAndTarget.source as any)
|
|
84
|
-
: getEdgeLabelForServiceAsTarget(rootSourceAndTarget.target as any);
|
|
85
|
-
|
|
86
|
-
const newEdgeId = `${rootSourceAndTarget.source.id}-${rootSourceAndTarget.target.id}`;
|
|
87
|
-
|
|
88
|
-
return [
|
|
89
|
-
...acc,
|
|
90
|
-
createEdge({
|
|
91
|
-
id: newEdgeId,
|
|
92
|
-
source: rootSourceAndTarget.source.id,
|
|
93
|
-
target: rootSourceAndTarget.target.id,
|
|
94
|
-
label: edgeLabel,
|
|
95
|
-
}),
|
|
96
|
-
];
|
|
97
|
-
}
|
|
98
|
-
return acc;
|
|
99
|
-
}, []);
|
|
100
|
-
|
|
101
|
-
return newEdges.filter((edge, index, self) => index === self.findIndex((t) => t.id === edge.id));
|
|
102
|
-
}, [edges, channels]);
|
|
103
|
-
|
|
104
|
-
// console.log('UPDATED EDGES', JSON.stringify(updatedEdges, null, 2));
|
|
105
|
-
|
|
106
|
-
useEffect(() => {
|
|
107
|
-
// Skip processing if there are no channels to manage
|
|
108
|
-
if (skipProcessing) {
|
|
109
|
-
return;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
if (hideChannels) {
|
|
113
|
-
const { nodes: newNodes, edges: newEdges } = getNodesAndEdgesFromDagre({ nodes: updatedNodes, edges: updatedEdges });
|
|
114
|
-
setNodes(newNodes);
|
|
115
|
-
setEdges(newEdges);
|
|
116
|
-
} else {
|
|
117
|
-
setNodes(initialNodes);
|
|
118
|
-
setEdges(initialEdges);
|
|
119
|
-
}
|
|
120
|
-
}, [hideChannels, skipProcessing]);
|
|
121
|
-
|
|
122
|
-
return {
|
|
123
|
-
hideChannels,
|
|
124
|
-
toggleChannelsVisibility,
|
|
125
|
-
};
|
|
126
|
-
};
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import SettingsLayout from '@layouts/SettingsLayout.astro';
|
|
3
|
-
import { BillingSettingsForm, type PlanId } from '@components/Settings/BillingSettingsForm';
|
|
4
|
-
import { isEventCatalogStarterEnabled, isEventCatalogScaleEnabled } from '@utils/feature';
|
|
5
|
-
|
|
6
|
-
// Detect which plan is active. Enterprise has no env flag of its own — it includes
|
|
7
|
-
// Scale features, so an explicit Enterprise toggle would need a separate flag.
|
|
8
|
-
// For now, treat anything Scale-licensed as Scale; Enterprise users will still see
|
|
9
|
-
// upgrade copy on the Scale card but the Plans grid is the canonical source.
|
|
10
|
-
let currentPlan: PlanId = 'community';
|
|
11
|
-
if (isEventCatalogScaleEnabled()) currentPlan = 'scale';
|
|
12
|
-
else if (isEventCatalogStarterEnabled()) currentPlan = 'starter';
|
|
13
|
-
---
|
|
14
|
-
|
|
15
|
-
<SettingsLayout title="Billing" active="billing">
|
|
16
|
-
<BillingSettingsForm client:load currentPlan={currentPlan} />
|
|
17
|
-
</SettingsLayout>
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
import NodeGraph from '@components/MDX/NodeGraph/NodeGraph.astro';
|
|
3
|
-
import VisualiserLayout from '@layouts/VisualiserLayout.astro';
|
|
4
|
-
import { ClientRouter } from 'astro:transitions';
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
<VisualiserLayout title={`Visualiser | Domain Architecture`} description="High-level view of all domains and their relationships">
|
|
8
|
-
<div class="m-4">
|
|
9
|
-
<div
|
|
10
|
-
class="h-[calc(100vh-130px)] w-full relative border border-[rgb(var(--ec-page-border))] rounded-md"
|
|
11
|
-
id="domains-canvas-portal"
|
|
12
|
-
transition:animate="fade"
|
|
13
|
-
>
|
|
14
|
-
</div>
|
|
15
|
-
<NodeGraph
|
|
16
|
-
id="domains-canvas"
|
|
17
|
-
collection="domains-canvas"
|
|
18
|
-
title="Domain Integration Map"
|
|
19
|
-
mode="full"
|
|
20
|
-
linkTo="visualiser"
|
|
21
|
-
version="1.0.0"
|
|
22
|
-
linksToVisualiser={false}
|
|
23
|
-
/>
|
|
24
|
-
</div>
|
|
25
|
-
<ClientRouter />
|
|
26
|
-
</VisualiserLayout>
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Type declarations for MCP server dependencies
|
|
3
|
-
* These are used by the enterprise MCP server feature
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
declare module 'hono' {
|
|
7
|
-
export interface Context {
|
|
8
|
-
req: {
|
|
9
|
-
raw: Request;
|
|
10
|
-
param: (name: string) => string;
|
|
11
|
-
};
|
|
12
|
-
json: (data: unknown, status?: number) => Response;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
export class Hono {
|
|
16
|
-
constructor();
|
|
17
|
-
basePath(path: string): Hono;
|
|
18
|
-
get(path: string, handler: (c: Context) => Response | Promise<Response>): void;
|
|
19
|
-
post(path: string, handler: (c: Context) => Response | Promise<Response>): void;
|
|
20
|
-
fetch(request: Request): Promise<Response>;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
declare module '@modelcontextprotocol/sdk/server/mcp.js' {
|
|
25
|
-
import { z } from 'zod';
|
|
26
|
-
|
|
27
|
-
export interface ToolConfig {
|
|
28
|
-
description: string;
|
|
29
|
-
inputSchema: z.ZodType<any>;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export interface ToolResult {
|
|
33
|
-
content: Array<{ type: 'text'; text: string }>;
|
|
34
|
-
isError?: boolean;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
export interface ResourceConfig {
|
|
38
|
-
description: string;
|
|
39
|
-
mimeType: string;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export interface ResourceResult {
|
|
43
|
-
contents: Array<{
|
|
44
|
-
uri: string;
|
|
45
|
-
text: string;
|
|
46
|
-
mimeType: string;
|
|
47
|
-
}>;
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
export class McpServer {
|
|
51
|
-
constructor(config: { name: string; version: string });
|
|
52
|
-
registerTool(name: string, config: ToolConfig, handler: (params: any) => Promise<ToolResult>): void;
|
|
53
|
-
registerResource(name: string, uri: string, config: ResourceConfig, handler: (uri: URL) => Promise<ResourceResult>): void;
|
|
54
|
-
connect(transport: any): Promise<void>;
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
declare module '@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js' {
|
|
59
|
-
export interface WebStandardStreamableHTTPServerTransportConfig {
|
|
60
|
-
sessionIdGenerator: undefined;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
export class WebStandardStreamableHTTPServerTransport {
|
|
64
|
-
constructor(config: WebStandardStreamableHTTPServerTransportConfig);
|
|
65
|
-
handleRequest(request: Request): Promise<Response>;
|
|
66
|
-
}
|
|
67
|
-
}
|