@eventcatalog/core 5.0.0-beta.8 → 5.0.0

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.
Files changed (467) hide show
  1. package/LICENSE +234 -134
  2. package/README.md +5 -5
  3. package/dist/analytics/analytics.cjs +18 -3
  4. package/dist/analytics/analytics.d.cts +1 -1
  5. package/dist/analytics/analytics.d.ts +1 -1
  6. package/dist/analytics/analytics.js +3 -2
  7. package/dist/analytics/log-build.cjs +157 -76
  8. package/dist/analytics/log-build.d.cts +2 -2
  9. package/dist/analytics/log-build.d.ts +2 -2
  10. package/dist/analytics/log-build.js +7 -5
  11. package/dist/analytics/studio-usage.cjs +90 -0
  12. package/dist/analytics/studio-usage.d.cts +5 -0
  13. package/dist/analytics/studio-usage.d.ts +5 -0
  14. package/dist/analytics/studio-usage.js +10 -0
  15. package/dist/analytics/telemetry.cjs +42 -0
  16. package/dist/analytics/telemetry.d.cts +20 -0
  17. package/dist/analytics/telemetry.d.ts +20 -0
  18. package/dist/analytics/telemetry.js +8 -0
  19. package/dist/catalog-runtime.cjs +1 -1
  20. package/dist/{chunk-RFIXKATC.js → chunk-4G7FSRPN.js} +35 -42
  21. package/dist/{chunk-AWOO63ME.js → chunk-AD7CL772.js} +11 -4
  22. package/dist/chunk-CA6WCQ2T.js +54 -0
  23. package/dist/chunk-CPW6G62V.js +17 -0
  24. package/dist/{chunk-PU25TOOJ.js → chunk-JZN4RSMF.js} +1 -1
  25. package/dist/{chunk-4W55ZOOS.js → chunk-NEAVAFSJ.js} +66 -35
  26. package/dist/{chunk-C6T2AAFR.js → chunk-NIVST4WY.js} +9 -3
  27. package/dist/{chunk-ENAG6UH7.js → chunk-NKNOXQ62.js} +1 -6
  28. package/dist/{chunk-AYNZXUB5.js → chunk-OX6TSVHY.js} +5 -5
  29. package/dist/{chunk-36RYTYT5.js → chunk-PD7KTSYN.js} +1 -1
  30. package/dist/{chunk-RDIZJ7UT.js → chunk-RE7UTPWH.js} +1 -1
  31. package/dist/chunk-S5GWAUG5.js +29 -0
  32. package/dist/{chunk-T4G3VVZ4.js → chunk-YQGRMDRB.js} +4 -2
  33. package/dist/constants.cjs +1 -1
  34. package/dist/constants.js +1 -1
  35. package/dist/docs/api/02-config.md +57 -7
  36. package/dist/docs/development/00-why-eventcatalog.md +11 -11
  37. package/dist/docs/development/01-fundamentals.md +20 -13
  38. package/dist/docs/development/01-getting-started/configuration-overview.md +2 -2
  39. package/dist/docs/development/01-getting-started/installation.md +9 -1
  40. package/dist/docs/development/_getting-started.mdx +1 -1
  41. package/dist/docs/development/ask-your-architecture/01-intro.md +5 -5
  42. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +0 -4
  43. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +15 -3
  44. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/03-bring-your-own-tools.md +0 -3
  45. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/_category_.json +1 -1
  46. package/dist/docs/development/ask-your-architecture/02-llms.txt.md +1 -1
  47. package/dist/docs/development/ask-your-architecture/{05-skills/01-introduction.md → 03-install-skills.md} +57 -7
  48. package/dist/docs/development/ask-your-architecture/03-mcp-server/_category_.json +1 -1
  49. package/dist/docs/development/ask-your-architecture/03-mcp-server/getting-started.md +86 -33
  50. package/dist/docs/development/ask-your-architecture/03-mcp-server/introduction.md +14 -4
  51. package/dist/docs/development/ask-your-architecture/03-schemas.txt.md +1 -1
  52. package/dist/docs/development/ask-your-architecture/04-agents/_category_.json +1 -1
  53. package/dist/docs/development/authentication/01-introduction.md +2 -23
  54. package/dist/docs/development/authentication/02-enabling-authentication.md +0 -20
  55. package/dist/docs/development/authentication/07-rbac-middleware.md +0 -2
  56. package/dist/docs/development/authentication/providers/03-setting-up-github.md +0 -2
  57. package/dist/docs/development/authentication/providers/03a-setting-up-google.md +0 -2
  58. package/dist/docs/development/authentication/providers/04-setting-up-azure-ad.md +0 -2
  59. package/dist/docs/development/authentication/providers/05-setting-up-okta.md +0 -3
  60. package/dist/docs/development/authentication/providers/06-setting-up-auth0.md +0 -2
  61. package/dist/docs/development/bring-your-own-documentation/01-introduction.md +0 -4
  62. package/dist/docs/development/bring-your-own-documentation/custom-pages/01-introduction.md +0 -3
  63. package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +0 -17
  64. package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +0 -4
  65. package/dist/docs/development/bring-your-own-documentation/custom-pages/04-owners.md +0 -2
  66. package/dist/docs/development/bring-your-own-documentation/resource-docs/01-introduction.md +1 -3
  67. package/dist/docs/development/bring-your-own-documentation/resource-docs/02-adding-resource-docs.md +1 -4
  68. package/dist/docs/development/bring-your-own-documentation/resource-docs/03-categories.md +0 -2
  69. package/dist/docs/development/bring-your-own-documentation/resource-docs/04-versioning.md +1 -3
  70. package/dist/docs/development/components/components/11-flow.md +17 -0
  71. package/dist/docs/development/components/components/15-nodegraph.md +43 -10
  72. package/dist/docs/development/components/components/18-remote-schema.md +1 -4
  73. package/dist/docs/development/components/custom-components/07-reference.md +14 -0
  74. package/dist/docs/development/customization/02-themes.md +0 -5
  75. package/dist/docs/development/customization/03-search.md +1 -1
  76. package/dist/docs/development/customization/05-custom-pages-and-api-routes/01-introduction.md +0 -2
  77. package/dist/docs/development/customization/05-custom-pages-and-api-routes/04-reference.md +7 -1
  78. package/dist/docs/development/customization/05-resource-sidebar.md +1 -1
  79. package/dist/docs/development/customization/09-embed-eventcatalog.md +20 -25
  80. package/dist/docs/development/deployment/hosting-options.md +7 -2
  81. package/dist/docs/development/developer-tools/eventcatalog-linter/how-to/05-fix-common-problems.md +16 -0
  82. package/dist/docs/development/developer-tools/eventcatalog-linter/reference/03-rules.md +31 -1
  83. package/dist/docs/development/developer-tools/eventcatalog-linter/reference/05-supported-resources.md +1 -1
  84. package/dist/docs/development/governance/architecture-change-detection/01-introduction.md +0 -10
  85. package/dist/docs/development/governance/architecture-change-detection/06-pipeline-gates.md +0 -4
  86. package/dist/docs/development/guides/97-architecture-graph.md +1 -1
  87. package/dist/docs/development/guides/99-adding-analytics.md +0 -7
  88. package/dist/docs/development/guides/domains/03-model-subdomains.md +2 -2
  89. package/dist/docs/development/guides/domains/04-add-resources-to-domains/01-add-systems-to-domains.md +3 -1
  90. package/dist/docs/development/guides/domains/04-add-resources-to-domains/02-add-services-to-domains.md +5 -1
  91. package/dist/docs/development/guides/domains/04-add-resources-to-domains/03-add-messages-to-domains.md +2 -2
  92. package/dist/docs/development/guides/domains/04-add-resources-to-domains/05-add-entities-to-domains.md +1 -1
  93. package/dist/docs/development/guides/domains/04-add-resources-to-domains/06-domain-resources-page.md +40 -0
  94. package/dist/docs/development/guides/domains/06-visualize-domains/01-domain-diagram.md +89 -0
  95. package/dist/docs/development/guides/domains/06-visualize-domains/_category_.json +1 -2
  96. package/dist/docs/development/guides/domains/09-reference.md +4 -4
  97. package/dist/docs/development/guides/owners/automated-teams-and-users/create-your-own-connector.md +0 -2
  98. package/dist/docs/development/guides/owners/automated-teams-and-users/sync-from-github.md +0 -3
  99. package/dist/docs/development/guides/owners/automated-teams-and-users/sync-from-microsoft-entra.md +0 -2
  100. package/dist/docs/development/guides/resources/adrs/03-linking-resources.md +8 -0
  101. package/dist/docs/development/guides/resources/adrs/06-reference.md +4 -4
  102. package/dist/docs/development/guides/resources/agents/11-reference.md +1 -1
  103. package/dist/docs/development/guides/resources/data/04-reference.md +1 -1
  104. package/dist/docs/development/guides/resources/data-products/07-reference.md +1 -1
  105. package/dist/docs/development/guides/resources/entities/05-entity-maps.md +1 -1
  106. package/dist/docs/development/guides/resources/entities/06-reference.md +2 -2
  107. package/dist/docs/development/guides/resources/flows/01-introduction.md +11 -1
  108. package/dist/docs/development/guides/resources/flows/03-model-flow-steps.md +65 -6
  109. package/dist/docs/development/guides/resources/flows/05-explore-flows.md +112 -0
  110. package/dist/docs/development/guides/resources/flows/06-reference.md +25 -4
  111. package/dist/docs/development/guides/resources/messages/01-what-are-messages.md +19 -0
  112. package/dist/docs/development/guides/resources/messages/04-message-channels/01-introduction.md +16 -0
  113. package/dist/docs/development/guides/resources/messages/04-message-channels/05-reference.md +2 -1
  114. package/dist/docs/development/guides/resources/messages/10-reference.md +6 -3
  115. package/dist/docs/development/guides/resources/schemas/04-explore-schemas/01-schema-explorer.md +2 -2
  116. package/dist/docs/development/guides/resources/schemas/04-explore-schemas/02-fields-explorer.md +0 -9
  117. package/dist/docs/development/guides/resources/schemas/05-schema-api.md +0 -3
  118. package/dist/docs/development/guides/resources/schemas/06-schema-mcp.md +11 -3
  119. package/dist/docs/development/guides/resources/services/04-add-resources-to-services/03-add-entities-to-services.md +1 -1
  120. package/dist/docs/development/guides/resources/services/05-resources-page.md +50 -0
  121. package/dist/docs/development/guides/resources/services/08-reference.md +2 -1
  122. package/dist/docs/development/guides/systems/01-introduction.md +1 -1
  123. package/dist/docs/development/guides/systems/02-create-system.md +2 -2
  124. package/dist/docs/development/guides/systems/03-add-resources-to-systems.md +35 -9
  125. package/dist/docs/development/guides/systems/04-model-relationships-and-actors.md +5 -3
  126. package/dist/docs/development/guides/systems/05-system-context-maps.md +39 -22
  127. package/dist/docs/development/guides/systems/06-reference.md +4 -4
  128. package/dist/docs/development/license/01-license-file.md +151 -0
  129. package/dist/docs/development/license/_category_.json +12 -0
  130. package/dist/docs/development/license-keys/_category_.json +3 -3
  131. package/dist/docs/development/license-keys/integrations.md +7 -37
  132. package/dist/docs/development/license-keys/license-validation.md +4 -0
  133. package/dist/docs/development/license-keys/overview.md +5 -1
  134. package/dist/docs/development/license-keys/plans.md +4 -2
  135. package/dist/docs/development/studio/01-introduction.md +60 -0
  136. package/dist/docs/development/studio/02-create-a-canvas.md +103 -0
  137. package/dist/docs/development/studio/03-set-up-persistent-storage.md +59 -0
  138. package/dist/docs/development/studio/04-collaborate-on-a-canvas.md +78 -0
  139. package/dist/docs/development/studio/05-connect-your-agent.md +102 -0
  140. package/dist/docs/development/studio/06-run-studio-in-production.md +54 -0
  141. package/dist/docs/development/studio/07-reference.md +294 -0
  142. package/dist/docs/development/studio/_category_.json +12 -0
  143. package/dist/docs/development/upgrading/v5.md +345 -0
  144. package/dist/docs/federation/00-overview.md +2 -8
  145. package/dist/docs/federation/01-first-federation.md +6 -18
  146. package/dist/docs/federation/explanation/how-it-works.md +0 -4
  147. package/dist/docs/federation/explanation/lockfile-and-cache.md +0 -4
  148. package/dist/docs/federation/explanation/mvp-status-and-feedback.md +0 -4
  149. package/dist/docs/federation/explanation/ownership-and-references.md +0 -4
  150. package/dist/docs/federation/how-to/configure-github-sources.md +6 -5
  151. package/dist/docs/federation/how-to/configure-validation-rules.md +0 -4
  152. package/dist/docs/federation/how-to/run-in-ci.md +2 -9
  153. package/dist/docs/federation/how-to/share-assets-and-components.md +0 -4
  154. package/dist/docs/federation/how-to/use-local-sources.md +0 -4
  155. package/dist/docs/federation/legacy-federation/00-introduction.md +4 -22
  156. package/dist/docs/federation/legacy-federation/01-installation.md +7 -58
  157. package/dist/docs/federation/legacy-federation/02-plugin-configuration.md +3 -21
  158. package/dist/docs/federation/legacy-federation/03-examples.md +3 -5
  159. package/dist/docs/federation/legacy-federation/04-configuration.md +3 -8
  160. package/dist/docs/federation/legacy-federation/05-setup-team-catalog.md +3 -6
  161. package/dist/docs/federation/reference/cli.md +2 -8
  162. package/dist/docs/federation/reference/configuration.md +0 -4
  163. package/dist/docs/federation/reference/diagnostic-rules.md +0 -5
  164. package/dist/docs/federation/reference/generated-output.md +0 -4
  165. package/dist/docs/federation/reference/supported-content.md +0 -4
  166. package/dist/docs/federation/reference/troubleshooting.md +0 -14
  167. package/dist/docs/plugins/02-generators.md +1 -1
  168. package/dist/docs/plugins/amazon-apigateway/00-intro.md +3 -28
  169. package/dist/docs/plugins/amazon-apigateway/01-installation.md +4 -56
  170. package/dist/docs/plugins/amazon-apigateway/02-plugin-configuration.md +1 -6
  171. package/dist/docs/plugins/apicurio/00-intro.md +2 -31
  172. package/dist/docs/plugins/apicurio/01-installation.md +2 -26
  173. package/dist/docs/plugins/apicurio/02-plugin-configuration.md +5 -13
  174. package/dist/docs/plugins/apicurio/03-features.md +1 -3
  175. package/dist/docs/plugins/asyncapi/00-intro.md +2 -28
  176. package/dist/docs/plugins/asyncapi/01-installation.md +3 -54
  177. package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +2 -1
  178. package/dist/docs/plugins/aws-glue-registry/00-intro.md +4 -32
  179. package/dist/docs/plugins/aws-glue-registry/00a-installation.md +3 -53
  180. package/dist/docs/plugins/azure-schema-registry/00-intro.md +4 -32
  181. package/dist/docs/plugins/azure-schema-registry/01-installation.md +6 -33
  182. package/dist/docs/plugins/azure-schema-registry/02-plugin-configuration.md +1 -14
  183. package/dist/docs/plugins/azure-schema-registry/04-examples.md +0 -2
  184. package/dist/docs/plugins/backstage/00-overview.md +1 -7
  185. package/dist/docs/plugins/backstage/01-get-started.md +6 -15
  186. package/dist/docs/plugins/backstage/06-configuration.md +2 -8
  187. package/dist/docs/plugins/confluent-schema-registry/00-intro.md +2 -29
  188. package/dist/docs/plugins/confluent-schema-registry/01-installation.md +2 -26
  189. package/dist/docs/plugins/eventbridge/00-intro.md +0 -4
  190. package/dist/docs/plugins/eventbridge/00a-installation.md +1 -87
  191. package/dist/docs/plugins/eventbridge/03-api.md +2 -20
  192. package/dist/docs/plugins/github/00-intro.md +0 -31
  193. package/dist/docs/plugins/github/01-installation.md +2 -34
  194. package/dist/docs/plugins/graphql/00-intro.md +0 -30
  195. package/dist/docs/plugins/graphql/01-installation.md +1 -53
  196. package/dist/docs/plugins/graphql/02-plugin-configuration.md +0 -1
  197. package/dist/docs/plugins/hookdeck/01-intro.md +1 -1
  198. package/dist/docs/plugins/openapi/00-intro.md +0 -30
  199. package/dist/docs/plugins/openapi/01-installation.md +1 -57
  200. package/dist/docs/plugins/openapi/02-plugin-configuration.md +0 -5
  201. package/dist/docs/plugins/openapi/03-features.md +0 -4
  202. package/dist/eventcatalog-config-file-utils.cjs +34 -41
  203. package/dist/eventcatalog-config-file-utils.d.cts +56 -58
  204. package/dist/eventcatalog-config-file-utils.d.ts +56 -58
  205. package/dist/eventcatalog-config-file-utils.js +1 -1
  206. package/dist/eventcatalog.cjs +408 -281
  207. package/dist/eventcatalog.config.d.cts +26 -15
  208. package/dist/eventcatalog.config.d.ts +26 -15
  209. package/dist/eventcatalog.js +46 -27
  210. package/dist/features.cjs +36 -49
  211. package/dist/features.d.cts +1 -3
  212. package/dist/features.d.ts +1 -3
  213. package/dist/features.js +4 -6
  214. package/dist/federation/federate.cjs +37 -44
  215. package/dist/federation/federate.js +5 -5
  216. package/dist/federation/source-provider.js +2 -2
  217. package/dist/generate.cjs +37 -42
  218. package/dist/generate.js +4 -4
  219. package/dist/resolve-catalog-dependencies.cjs +34 -41
  220. package/dist/resolve-catalog-dependencies.js +2 -2
  221. package/dist/runtime-dependencies/@eventcatalog__visualiser__studio-fonts.css.mjs +3 -0
  222. package/dist/runtime-dependencies/@eventcatalog__visualiser__studio.css.mjs +3 -0
  223. package/dist/runtime-dependencies/@eventcatalog__visualiser__studio.mjs +3 -0
  224. package/dist/runtime-dependencies/htmlparser2.mjs +3 -0
  225. package/dist/runtime-dependencies/manifest.json +5 -1
  226. package/dist/runtime-dependencies/react-syntax-highlighter__dist__cjs__create-element.js.mjs +3 -0
  227. package/dist/utils/child-process-signals.cjs +53 -0
  228. package/dist/utils/child-process-signals.d.cts +19 -0
  229. package/dist/utils/child-process-signals.d.ts +19 -0
  230. package/dist/utils/child-process-signals.js +6 -0
  231. package/dist/utils/cli-logger.cjs +1 -1
  232. package/dist/utils/cli-logger.js +2 -2
  233. package/dist/utils/license-status.cjs +11 -4
  234. package/dist/utils/license-status.d.cts +3 -2
  235. package/dist/utils/license-status.d.ts +3 -2
  236. package/dist/utils/license-status.js +1 -1
  237. package/eventcatalog/astro.config.mjs +21 -1
  238. package/eventcatalog/integrations/config-loader.mjs +56 -58
  239. package/eventcatalog/integrations/skip-startup-reload.mjs +31 -0
  240. package/eventcatalog/integrations/stable-dependency-order.mjs +29 -0
  241. package/eventcatalog/integrations/storage.mjs +20 -0
  242. package/eventcatalog/integrations/studio-server.mjs +4 -1
  243. package/eventcatalog/src/components/CatalogGraph/CatalogForceGraph.tsx +39 -0
  244. package/eventcatalog/src/components/ChatPanel/ChatPanel.tsx +2 -0
  245. package/eventcatalog/src/components/Homepage/CatalogDashboard.astro +342 -0
  246. package/eventcatalog/src/components/MDX/NodeGraph/AstroNodeGraph.tsx +60 -4
  247. package/eventcatalog/src/components/MDX/NodeGraph/NodeGraph.astro +5 -1
  248. package/eventcatalog/src/components/NavigationProgress.astro +7 -0
  249. package/eventcatalog/src/components/SchemaExplorer/ApiContentViewer.tsx +2 -0
  250. package/eventcatalog/src/components/SchemaExplorer/ExamplesViewer.tsx +2 -0
  251. package/eventcatalog/src/components/SchemaExplorer/SchemaCodeModal.tsx +2 -0
  252. package/eventcatalog/src/components/SchemaExplorer/SchemaContentViewer.tsx +2 -0
  253. package/eventcatalog/src/components/Search/SearchDataLoader.astro +16 -28
  254. package/eventcatalog/src/components/Search/SearchModal.tsx +2 -10
  255. package/eventcatalog/src/components/Search/search-utils.ts +26 -0
  256. package/eventcatalog/src/components/Seo.astro +5 -1
  257. package/eventcatalog/src/components/Settings/AssistantSettingsForm.tsx +53 -48
  258. package/eventcatalog/src/components/Settings/GeneralSettingsForm.tsx +183 -178
  259. package/eventcatalog/src/components/Settings/LicenseSettings.tsx +140 -31
  260. package/eventcatalog/src/components/Settings/LlmAccessSettingsForm.tsx +40 -35
  261. package/eventcatalog/src/components/Settings/LogoUpload.tsx +1 -1
  262. package/eventcatalog/src/components/Settings/McpSettingsForm.tsx +9 -8
  263. package/eventcatalog/src/components/Settings/Row.tsx +7 -4
  264. package/eventcatalog/src/components/Settings/SettingsShared.tsx +3 -3
  265. package/eventcatalog/src/components/SideNav/NestedSideBar/index.tsx +37 -76
  266. package/eventcatalog/src/components/SideNav/NestedSideBar/storage.ts +2 -0
  267. package/eventcatalog/src/components/SideNav/NestedSideBar/utils.ts +122 -1
  268. package/eventcatalog/src/components/SideNav/SideNav.astro +9 -1
  269. package/eventcatalog/src/components/TrialBadge.astro +20 -9
  270. package/eventcatalog/src/content.config.ts +19 -2
  271. package/eventcatalog/src/features/auth/error.astro +4 -2
  272. package/eventcatalog/src/features/auth/login.astro +2 -1
  273. package/eventcatalog/src/features/auth/middleware/middleware-auth.ts +21 -1
  274. package/eventcatalog/src/features/auth/unauthorized.astro +1 -1
  275. package/eventcatalog/src/features/fields/pages/fields.astro +1 -1
  276. package/eventcatalog/src/features/integrations/eventcatalog-features.ts +13 -7
  277. package/eventcatalog/src/features/mcp/apps/architecture-diagram/node-chat.tsx +6 -45
  278. package/eventcatalog/src/features/mcp/apps/canvas/shared.ts +3 -3
  279. package/eventcatalog/src/features/mcp/apps/canvas/styles.css +3 -1
  280. package/eventcatalog/src/features/mcp/apps/canvas/view.tsx +7 -5
  281. package/eventcatalog/src/features/mcp/apps/generated/canvas.html +123 -98
  282. package/eventcatalog/src/features/mcp/apps/generated/viewer.html +118 -101
  283. package/eventcatalog/src/features/mcp/mcp-server.ts +20 -4
  284. package/eventcatalog/src/features/server/start.ts +25 -0
  285. package/eventcatalog/src/features/storage/database.ts +88 -0
  286. package/eventcatalog/src/features/storage/migrations.ts +85 -0
  287. package/eventcatalog/src/features/storage/sql/database.sql +5 -0
  288. package/eventcatalog/src/features/storage/sql/migrations/0001-studio-canvases.sql +12 -0
  289. package/eventcatalog/src/features/storage/sql/migrations.sql +15 -0
  290. package/eventcatalog/src/features/storage/sql.ts +28 -0
  291. package/eventcatalog/src/features/studio/agent-choreography.ts +13 -10
  292. package/eventcatalog/src/features/studio/agents.ts +28 -0
  293. package/eventcatalog/src/features/studio/api/canvases-api.ts +219 -0
  294. package/eventcatalog/src/features/studio/api/canvases.ts +25 -0
  295. package/eventcatalog/src/features/studio/api/client.ts +40 -0
  296. package/eventcatalog/src/features/studio/canvas-actions.ts +160 -34
  297. package/eventcatalog/src/features/studio/canvas-preview.ts +1 -2
  298. package/eventcatalog/src/features/studio/catalog.ts +16 -14
  299. package/eventcatalog/src/features/studio/components/CanvasHeader.tsx +274 -105
  300. package/eventcatalog/src/features/studio/components/CanvasStatusMenu.tsx +15 -14
  301. package/eventcatalog/src/features/studio/components/ConnectAgentDialog.tsx +272 -119
  302. package/eventcatalog/src/features/studio/components/ConnectionsChooser.tsx +1 -2
  303. package/eventcatalog/src/features/studio/components/DeleteCanvasDialog.tsx +65 -0
  304. package/eventcatalog/src/features/studio/components/Dialog.tsx +60 -0
  305. package/eventcatalog/src/features/studio/components/JoinForm.tsx +101 -26
  306. package/eventcatalog/src/features/studio/components/LeftPanel.tsx +122 -230
  307. package/eventcatalog/src/features/studio/components/NodeDetails.tsx +183 -0
  308. package/eventcatalog/src/features/studio/components/OpenInStudioDialog.tsx +79 -0
  309. package/eventcatalog/src/features/studio/components/Presence.tsx +52 -45
  310. package/eventcatalog/src/features/studio/components/ShareDialog.tsx +277 -141
  311. package/eventcatalog/src/features/studio/components/ShortcutsDialog.tsx +41 -0
  312. package/eventcatalog/src/features/studio/components/StudioDesigner.tsx +1314 -385
  313. package/eventcatalog/src/features/studio/components/StudioNotice.astro +24 -0
  314. package/eventcatalog/src/features/studio/document-name.ts +7 -0
  315. package/eventcatalog/src/features/studio/from-visualiser.ts +138 -0
  316. package/eventcatalog/src/features/studio/hooks/presence-sender.ts +19 -2
  317. package/eventcatalog/src/features/studio/hooks/use-canvas-webmcp.ts +9 -3
  318. package/eventcatalog/src/features/studio/hooks/use-comments.ts +2 -2
  319. package/eventcatalog/src/features/studio/hooks/use-follow-camera.ts +8 -3
  320. package/eventcatalog/src/features/studio/hooks/use-studio-flow.ts +244 -32
  321. package/eventcatalog/src/features/studio/identity.ts +25 -1
  322. package/eventcatalog/src/features/studio/limits.ts +2 -0
  323. package/eventcatalog/src/features/studio/pages/[id].astro +42 -16
  324. package/eventcatalog/src/features/studio/pages/index.astro +596 -373
  325. package/eventcatalog/src/features/studio/pages/webmcp-relay.ts +12 -15
  326. package/eventcatalog/src/features/studio/server/canvas-mcp.ts +8 -23
  327. package/eventcatalog/src/features/studio/server/runtime.ts +150 -46
  328. package/eventcatalog/src/features/studio/server/sql/storage.sql +18 -0
  329. package/eventcatalog/src/features/studio/server/storage.ts +53 -73
  330. package/eventcatalog/src/features/studio/webmcp-relay/LICENSE +21 -0
  331. package/eventcatalog/src/features/studio/webmcp-relay/README.md +5 -0
  332. package/eventcatalog/src/features/studio/webmcp-relay/embed.js +2 -0
  333. package/eventcatalog/src/features/studio/webmcp-relay/widget.html +10 -0
  334. package/eventcatalog/src/features/studio/webmcp-relay/widget.js +1 -0
  335. package/eventcatalog/src/features/tools/catalog-tools.ts +3 -1
  336. package/eventcatalog/src/layouts/BaseLayout.astro +4 -4
  337. package/eventcatalog/src/layouts/SettingsLayout.astro +2 -2
  338. package/eventcatalog/src/layouts/VerticalSideBarLayout.astro +3 -2
  339. package/eventcatalog/src/pages/_index.astro +5 -342
  340. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/_index.data.spec.ts +2 -3
  341. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/_index.data.ts +0 -7
  342. package/eventcatalog/src/pages/architecture/[type]/[id]/[version]/index.astro +3 -1
  343. package/eventcatalog/src/pages/diagrams/[id]/[version]/_index.data.ts +0 -7
  344. package/eventcatalog/src/pages/diagrams/[id]/[version]/embed.astro +1 -0
  345. package/eventcatalog/src/pages/diagrams/[id]/[version]/index.astro +1 -0
  346. package/eventcatalog/src/pages/directory/[type]/_index.data.ts +5 -7
  347. package/eventcatalog/src/pages/directory/[type]/index.astro +3 -1
  348. package/eventcatalog/src/pages/discover/[type]/_index.data.ts +5 -7
  349. package/eventcatalog/src/pages/discover/[type]/index.astro +3 -1
  350. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/_index.data.ts +0 -7
  351. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/[docVersion]/index.astro +1 -0
  352. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/_index.data.ts +0 -7
  353. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/[docType]/[docId]/index.astro +1 -0
  354. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/_index.data.ts +0 -7
  355. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/asyncapi/[filename].astro +3 -1
  356. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/asyncapi/_[filename].data.ts +0 -7
  357. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/_index.data.ts +0 -7
  358. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/changelog/index.astro +1 -0
  359. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/examples/[...filename].astro +1 -0
  360. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/examples/_[...filename].data.ts +0 -4
  361. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/field-lineage/_index.data.ts +0 -7
  362. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/field-lineage/index.astro +1 -0
  363. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/graphql/[filename].astro +3 -1
  364. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/graphql/_[filename].data.ts +0 -7
  365. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/index.astro +1 -0
  366. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/_index.data.spec.ts +2 -3
  367. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/_index.data.ts +0 -7
  368. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/resources/index.astro +1 -0
  369. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/spec/[filename].astro +1 -0
  370. package/eventcatalog/src/pages/docs/[type]/[id]/[version]/spec/_[filename].data.ts +0 -7
  371. package/eventcatalog/src/pages/docs/[type]/[id]/_index.data.ts +0 -7
  372. package/eventcatalog/src/pages/docs/[type]/[id]/index.astro +2 -1
  373. package/eventcatalog/src/pages/docs/[type]/[id]/language/[dictionaryId]/_index.data.ts +0 -7
  374. package/eventcatalog/src/pages/docs/[type]/[id]/language/[dictionaryId]/index.astro +1 -0
  375. package/eventcatalog/src/pages/docs/[type]/[id]/language/_index.data.ts +0 -7
  376. package/eventcatalog/src/pages/docs/[type]/[id]/language/index.astro +1 -0
  377. package/eventcatalog/src/pages/docs/custom/[...path]/_index.data.ts +0 -7
  378. package/eventcatalog/src/pages/docs/custom/[...path]/index.astro +1 -0
  379. package/eventcatalog/src/pages/docs/services/[id]/[docType]/[docId]/index.astro +1 -1
  380. package/eventcatalog/src/pages/docs/services/[id]/[version]/resources/index.astro +1 -0
  381. package/eventcatalog/src/pages/docs/services/[id]/asyncapi/[filename].astro +1 -1
  382. package/eventcatalog/src/pages/docs/services/[id]/changelog/index.astro +1 -1
  383. package/eventcatalog/src/pages/docs/services/[id]/graphql/[filename].astro +1 -1
  384. package/eventcatalog/src/pages/docs/services/[id]/spec/[filename].astro +1 -1
  385. package/eventcatalog/src/pages/docs/teams/[id]/_index.data.ts +0 -7
  386. package/eventcatalog/src/pages/docs/teams/[id]/index.astro +1 -0
  387. package/eventcatalog/src/pages/docs/users/[id]/_index.data.ts +0 -7
  388. package/eventcatalog/src/pages/docs/users/[id]/index.astro +1 -0
  389. package/eventcatalog/src/pages/index.astro +4 -2
  390. package/eventcatalog/src/pages/schemas/[type]/[id]/[version]/_index.data.ts +0 -7
  391. package/eventcatalog/src/pages/schemas/[type]/[id]/[version]/index.astro +9 -1
  392. package/eventcatalog/src/pages/schemas/explorer/_index.data.ts +0 -7
  393. package/eventcatalog/src/pages/schemas/explorer/index.astro +4 -2
  394. package/eventcatalog/src/pages/settings/license.astro +9 -1
  395. package/eventcatalog/src/pages/triggers/[type]/[id]/[version]/_index.data.ts +0 -7
  396. package/eventcatalog/src/pages/triggers/[type]/[id]/[version]/index.astro +1 -0
  397. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/_index.data.ts +0 -7
  398. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/data/_index.data.ts +0 -7
  399. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/data/index.astro +1 -0
  400. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/entity-map/_index.data.ts +0 -7
  401. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/entity-map/index.astro +1 -0
  402. package/eventcatalog/src/pages/visualiser/[type]/[id]/[version]/index.astro +1 -0
  403. package/eventcatalog/src/pages/visualiser/[type]/[id]/_index.data.ts +38 -0
  404. package/eventcatalog/src/pages/visualiser/[type]/[id]/index.astro +18 -41
  405. package/eventcatalog/src/pages/visualiser/designs/[id]/_index.data.ts +0 -7
  406. package/eventcatalog/src/pages/visualiser/designs/[id]/index.astro +2 -1
  407. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/entity-map/_index.data.ts +0 -7
  408. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/entity-map/index.astro +1 -0
  409. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/index.astro +1 -0
  410. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/systems-context/_index.data.ts +0 -7
  411. package/eventcatalog/src/pages/visualiser/domains/[id]/[version]/systems-context/index.astro +1 -0
  412. package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/context/_index.data.ts +0 -7
  413. package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/context/index.astro +1 -0
  414. package/eventcatalog/src/pages/visualiser/systems/[id]/[version]/index.astro +1 -0
  415. package/eventcatalog/src/types/react-syntax-highlighter.d.ts +10 -0
  416. package/eventcatalog/src/utils/collections/flows.ts +20 -7
  417. package/eventcatalog/src/utils/collections/resource-owners.ts +8 -2
  418. package/eventcatalog/src/utils/collections/resources.ts +2 -0
  419. package/eventcatalog/src/utils/collections/util.ts +8 -4
  420. package/eventcatalog/src/utils/git.ts +11 -0
  421. package/eventcatalog/src/utils/homepage-dashboard.ts +143 -0
  422. package/eventcatalog/src/utils/license.ts +1 -1
  423. package/eventcatalog/src/utils/link-validation.ts +25 -19
  424. package/eventcatalog/src/utils/node-graphs/domain-entity-map.ts +3 -1
  425. package/eventcatalog/src/utils/node-graphs/domain-levels-node-graph.ts +3 -3
  426. package/eventcatalog/src/utils/node-graphs/field-node-graph.ts +4 -2
  427. package/eventcatalog/src/utils/node-graphs/layout-node-graph.ts +20 -1
  428. package/eventcatalog/src/utils/node-graphs/node-resource.ts +67 -0
  429. package/eventcatalog/src/utils/node-graphs/systems-node-graph.ts +1 -1
  430. package/eventcatalog/src/utils/page-loaders/hybrid-page.ts +4 -15
  431. package/eventcatalog/src/utils/page-title.ts +15 -0
  432. package/eventcatalog/src/utils/syntax-highlighter-renderer.ts +64 -0
  433. package/eventcatalog/src/utils/trial.ts +13 -0
  434. package/package.json +11 -11
  435. package/dist/docs/development/ask-your-architecture/05-skills/02-installation.md +0 -60
  436. package/dist/docs/development/ask-your-architecture/05-skills/_category_.json +0 -11
  437. package/dist/docs/development/ask-your-architecture/06-slack-integration/01-introduction.md +0 -63
  438. package/dist/docs/development/ask-your-architecture/06-slack-integration/02-slack-app-setup.md +0 -154
  439. package/dist/docs/development/ask-your-architecture/06-slack-integration/03-installation.md +0 -169
  440. package/dist/docs/development/ask-your-architecture/06-slack-integration/04-deployment.md +0 -236
  441. package/dist/docs/development/ask-your-architecture/06-slack-integration/05-usage.md +0 -140
  442. package/dist/docs/development/ask-your-architecture/06-slack-integration/06-troubleshooting.md +0 -268
  443. package/dist/docs/development/ask-your-architecture/06-slack-integration/_category_.json +0 -13
  444. package/dist/docs/development/guides/domains/06-visualize-domains/01-domain-integration-map.md +0 -40
  445. package/dist/runtime-dependencies/@mcp-b__webmcp-local-relay.mjs +0 -3
  446. package/eventcatalog/src/features/studio/canvas-doc.ts +0 -409
  447. package/eventcatalog/src/features/studio/clipboard.ts +0 -97
  448. package/eventcatalog/src/features/studio/components/CanvasControls.tsx +0 -154
  449. package/eventcatalog/src/features/studio/components/Comments.tsx +0 -770
  450. package/eventcatalog/src/features/studio/components/ContainerChooser.tsx +0 -145
  451. package/eventcatalog/src/features/studio/components/DragGhost.tsx +0 -115
  452. package/eventcatalog/src/features/studio/components/Picture.tsx +0 -21
  453. package/eventcatalog/src/features/studio/components/PropertiesPanel.tsx +0 -212
  454. package/eventcatalog/src/features/studio/components/canvas-nodes.tsx +0 -255
  455. package/eventcatalog/src/features/studio/components/icons.ts +0 -53
  456. package/eventcatalog/src/features/studio/components/status.ts +0 -51
  457. package/eventcatalog/src/features/studio/edges.ts +0 -56
  458. package/eventcatalog/src/features/studio/flow-state.ts +0 -92
  459. package/eventcatalog/src/features/studio/grouping.ts +0 -226
  460. package/eventcatalog/src/features/studio/layout.ts +0 -42
  461. package/eventcatalog/src/features/studio/levels.ts +0 -282
  462. package/eventcatalog/src/features/studio/node-types.ts +0 -205
  463. package/eventcatalog/src/features/studio/pages/new.astro +0 -24
  464. package/eventcatalog/src/features/studio/pages/wake.ts +0 -15
  465. package/eventcatalog/src/features/studio/placement.ts +0 -197
  466. package/eventcatalog/src/features/studio/studio.css +0 -273
  467. package/dist/{chunk-A2RZR3U4.js → chunk-6K7XZAYI.js} +3 -3
package/LICENSE CHANGED
@@ -3,145 +3,245 @@ License text copyright (c) 2024 MariaDB plc, All Rights Reserved.
3
3
 
4
4
  Parameters
5
5
 
6
- Licensor: EventCatalog Ltd (company number 15764703)
7
- Licensed Work: The @eventcatalog/core package, version 5.0, including
8
- its pre-releases, or later. The Licensed
9
- Work is (c) 2026 EventCatalog Ltd.
10
- Additional Use Grant: You may make Production use of the Licensed Work,
11
- provided that You are an Eligible User and Your use
12
- does not include a Hosted Offering.
13
-
14
- 1. Eligible Users
15
-
16
- An "Eligible User" is any of the following:
17
-
18
- (a) an individual using the Licensed Work on their own
19
- behalf, and not on behalf of or for the benefit of
20
- an Organisation;
21
-
22
- (b) an Organisation whose Annual Revenue is less than
23
- USD 10,000,000 (ten million US dollars);
24
-
25
- (c) any person or Organisation using the Licensed Work
6
+ Licensor: EventCatalog Ltd, a company registered in England and
7
+ Wales (company number 15764703).
8
+ Licensed Work: EventCatalog version 5.0 or later, including pre-releases,
9
+ as published by the Licensor in this repository and as the
10
+ npm package @eventcatalog/core, other than any file,
11
+ directory or package that states it is licensed under a
12
+ different license. The following are licensed under the
13
+ MIT License and are not part of the Licensed Work:
14
+ packages/sdk, packages/cli, packages/connectors,
15
+ packages/diff, packages/linter, packages/visualiser,
16
+ packages/breaking-changes, packages/create-eventcatalog
17
+ and the examples directory. The Licensed Work is (c) 2026
18
+ EventCatalog Ltd.
19
+ Additional Use Grant: You may make Production use of the Licensed Work if You
20
+ qualify for Free Use and Your use is not a Hosted
21
+ Offering. Sections 1 to 7 below form part of this grant.
22
+ Capitalised terms are defined in section 6.
23
+
24
+ 1. Free Use
25
+
26
+ You qualify for "Free Use" if You are:
27
+
28
+ (a) an individual using the Licensed Work for Your own
29
+ personal purposes, and not for or on behalf of any
30
+ Organisation (including Your employer or Your own
31
+ business);
32
+
33
+ (b) an Organisation whose Annual Revenue is less than USD
34
+ 10,000,000 (ten million US dollars) and whose Total
35
+ Funding is less than USD 10,000,000;
36
+
37
+ (c) a person or Organisation using the Licensed Work
26
38
  solely to document a Public Open Source Project;
27
39
 
28
- (d) an accredited educational institution, using the
40
+ (d) a school, college or university recognised by the
41
+ education authorities of its country, using the
29
42
  Licensed Work solely for teaching or academic
30
- research, and not for its administrative or
31
- commercial operations; or
32
-
33
- (e) any Organisation, during one evaluation period of
34
- up to ninety (90) days starting on the date it
35
- first makes Production use of any version of the
36
- Licensed Work, or any longer period agreed in
37
- writing by the Licensor. Each Organisation,
38
- including all of its Affiliates, has one
39
- evaluation period in total, across all versions of
40
- the Licensed Work. Upgrading to a new version,
41
- reinstalling the Licensed Work, creating another
42
- catalog, or a change in the Organisation's
43
- Affiliates does not start a new evaluation period.
44
-
45
- 2. Crossing the threshold
46
-
47
- An Organisation that is an Eligible User under (b)
48
- remains one until ninety (90) days after the end of
49
- the first financial year for which its Annual Revenue
50
- equals or exceeds USD 10,000,000.
51
-
52
- 3. Service providers
53
-
54
- Where You use the Licensed Work to provide services to
55
- a client (for example, as a consultant, contractor or
56
- agency) and that use is for the client's benefit,
57
- Your use is permitted if the client is an Eligible
58
- User or holds a commercial license from the Licensor
59
- that covers that use.
60
-
61
- 4. Cure period
62
-
63
- If You stop being an Eligible User, or learn that
64
- Your use is not permitted by this Additional Use
65
- Grant, You may continue to use the Licensed Work for
66
- thirty (30) days in order to obtain a commercial
67
- license or stop that use (the "Cure Period"). Such
68
- continued use during the Cure Period is permitted
69
- Production use under this Additional Use Grant, is
70
- not a use in violation of this License, and Your
71
- rights under this License will not terminate during
72
- the Cure Period for that reason.
73
-
74
- 5. Definitions
75
-
76
- "Production use" includes any use of a catalog built
77
- with the Licensed Work that an Organisation's
78
- employees, contractors or automated systems
79
- (including AI agents) rely on to document, discover,
80
- understand or govern its software systems, whether
81
- that catalog is available internally, privately or
82
- publicly, and use of the Licensed Work in continuous
83
- integration or deployment pipelines to build, update
84
- or validate such a catalog. For the avoidance of
85
- doubt, use that is internal to an Organisation can be
86
- Production use.
87
-
88
- "Organisation" means a legal entity together with all
89
- of its Affiliates. "Affiliate" means any entity that
90
- directly or indirectly controls, is controlled by, or
91
- is under common control with that legal entity, where
92
- "control" means ownership of more than fifty percent
93
- (50%) of the voting interests of the entity. For a
94
- government or public-sector body, the Organisation is
95
- that body (for example, a ministry, department,
96
- agency or local authority), and not the wider
97
- government of which it forms part.
98
-
99
- "Annual Revenue" means the total consolidated gross
100
- revenue of the Organisation for its most recently
101
- completed financial year or, if it has not yet
102
- completed a financial year, its reasonably projected
103
- revenue for its first financial year. For a
104
- government or public-sector body, charity or
105
- non-profit organisation, it means the greater of its
106
- total income (including grants and donations) and its
107
- total annual budget for that financial year. Amounts
108
- in other currencies are converted to US dollars at
109
- the average exchange rate for that financial year.
43
+ research, and not for its administrative or commercial
44
+ operations; or
45
+
46
+ (e) an Organisation in its Evaluation Period.
47
+
48
+ 2. Growing past the thresholds
49
+
50
+ An Organisation that qualifies for Free Use under 1(b)
51
+ continues to qualify until ninety (90) days after the
52
+ first of the following to happen:
53
+
54
+ (a) the end of the first financial year in which its
55
+ Annual Revenue reaches USD 10,000,000; or
56
+
57
+ (b) the date on which its Total Funding reaches USD
58
+ 10,000,000; or
59
+
60
+ (c) the date on which a change in its Affiliates (for
61
+ example an acquisition) takes it over either
62
+ threshold.
63
+
64
+ 3. Working for clients
65
+
66
+ If You use the Licensed Work for a client's benefit (for
67
+ example as a consultant, contractor, agency or software
68
+ vendor), including building, customising, hosting or
69
+ distributing the Licensed Work or a catalog built with it
70
+ for that client, Your use for that client is permitted if
71
+ the client qualifies for Free Use or holds a Commercial
72
+ License covering that use. You may rely on a client's
73
+ written statement of its status unless You know it is
74
+ wrong. Your own use of the Licensed Work for Your own
75
+ systems is judged on Your own status.
76
+
77
+ 4. Coming into compliance
78
+
79
+ (a) If You stop qualifying for Free Use (for example
80
+ because Your Evaluation Period ends), or You become
81
+ aware (including by notice from the Licensor) that
82
+ Your Production use is not permitted by this grant,
83
+ You may continue that use for thirty (30) days (the
84
+ "Cure Period") in order to obtain a Commercial License
85
+ or stop that use. Use during the Cure Period is
86
+ permitted Production use, is not a violation of this
87
+ License, and Your rights under this License do not
88
+ terminate during the Cure Period for that reason. One
89
+ Cure Period applies to each such event; stopping and
90
+ later resuming substantially the same use does not
91
+ create a new one.
92
+
93
+ (b) Production use that was not permitted, but that You
94
+ made before You knew or reasonably ought to have known
95
+ that it was not permitted, is treated as permitted
96
+ Production use if You obtain a Commercial License or
97
+ stop that use within the Cure Period.
98
+
99
+ (c) For a Hosted Offering, the Cure Period is available
100
+ only once, starts only on notice from the Licensor,
101
+ and section 4(b) does not apply.
102
+
103
+ 5. Guidance and Commercial Licenses
104
+
105
+ The Licensor publishes guidance on this License at
106
+ https://www.eventcatalog.dev/license-faq. The guidance is
107
+ for information only. It does not form part of this
108
+ License and does not change it. If the guidance and this
109
+ License differ, this License applies.
110
+
111
+ A Commercial License or other written permission from the
112
+ Licensor may permit uses not covered by this grant. A
113
+ Commercial License held by a vendor or distributor does
114
+ not cover its customers' Production use unless it
115
+ expressly says so.
116
+
117
+ 6. Definitions
118
+
119
+ "You" means the individual or Organisation exercising
120
+ rights under this License, and has the same meaning as
121
+ "you" in the Terms below.
122
+
123
+ "Organisation" means any company, partnership, sole
124
+ trader, trust, government or public body, or other entity
125
+ or undertaking, together with all of its Affiliates. A
126
+ government or public body is treated as an Organisation at
127
+ the level of the individual body (for example a ministry,
128
+ department, agency, local authority or health trust), not
129
+ the wider government of which it forms part.
130
+
131
+ "Affiliate" means any entity that controls, is controlled
132
+ by, or is under common control with another, where
133
+ "control" means owning more than fifty percent (50%) of
134
+ the voting interests or otherwise having the power to
135
+ direct its management and policies. Two entities are not
136
+ Affiliates of each other solely because both are owned or
137
+ controlled by (i) a government or public body, or (ii) an
138
+ investment fund or other financial investor that does not
139
+ include them in its own consolidated financial statements.
140
+
141
+ "Annual Revenue" means the total gross revenue (or, for a
142
+ business such as a bank or insurer that does not report
143
+ revenue in that form, the nearest equivalent measure of
144
+ its total income) of the whole Organisation for its most
145
+ recently completed financial year, taken from consolidated
146
+ financial statements where they exist and otherwise by
147
+ adding together the figures for each member. For a
148
+ government or public body, charity or non-profit
149
+ organisation, it means the greater of its total income
150
+ (including grants and donations) and its total annual
151
+ budget for that year. An Organisation that has not
152
+ completed a financial year uses its reasonably projected
153
+ figure for its first year. Amounts in other currencies are
154
+ converted to US dollars at the average exchange rate for
155
+ that year from a recognised published source.
156
+
157
+ "Total Funding" means the total amount of equity
158
+ investment, and of convertible or other investment
159
+ intended to convert into equity (such as convertible notes
160
+ or SAFEs), that the whole Organisation has received from
161
+ investors outside the Organisation since it was formed,
162
+ measured at the amounts invested. It does not include
163
+ revenue, government or charitable grants, or loans and
164
+ other debt.
165
+
166
+ "Production use" means any use of the Licensed Work other
167
+ than (i) trying it out with sample, test or throwaway
168
+ content that no one relies on, or (ii) developing, testing
169
+ or contributing to the Licensed Work itself. It includes
170
+ running a catalog built with the Licensed Work that an
171
+ Organisation's employees, contractors or automated systems
172
+ (including AI agents) use or rely on to document,
173
+ discover, understand or govern its software systems,
174
+ whether that catalog is available internally, privately or
175
+ publicly, and using the Licensed Work in continuous
176
+ integration or deployment pipelines to build, update or
177
+ validate such a catalog. Use is Production use if it meets
178
+ this definition, whatever the catalog, environment or
179
+ project is called (including "evaluation", "pilot", "proof
180
+ of concept" or "internal").
181
+
182
+ "Evaluation Period" means the sixty (60) days starting on
183
+ the date an Organisation first makes Production use of any
184
+ version of the Licensed Work, or any longer period the
185
+ Licensor agrees in writing. Each Organisation, including
186
+ all of its Affiliates, has one Evaluation Period in total
187
+ across all versions of the Licensed Work. Upgrading,
188
+ reinstalling, creating another catalog, or a change in the
189
+ Organisation's Affiliates does not start a new Evaluation
190
+ Period. If two Organisations that have each started an
191
+ Evaluation Period become Affiliates, the earlier period
192
+ applies to the combined Organisation.
110
193
 
111
194
  "Public Open Source Project" means a software project
112
- whose source code is publicly available under a
113
- license approved by the Open Source Initiative, where
114
- the catalog documents only that project.
115
-
116
- "Hosted Offering" means using the Licensed Work to
117
- provide third parties with access to the Licensed
118
- Work, or to its functionality, as a hosted or managed
119
- service, whether or not for a fee. The following are
120
- not Hosted Offerings: publishing a catalog that
121
- documents Your own software systems, including making
122
- it publicly accessible; and hosting a catalog on
123
- behalf of a client, where the catalog documents that
124
- client's software systems and the client is an
125
- Eligible User or holds a commercial license from the
126
- Licensor that covers that use.
127
-
128
- All other Production use requires a commercial
129
- license from the Licensor. Interpretive guidance is
130
- published at https://www.eventcatalog.dev/license-faq.
131
- Guidance for a version of the Licensed Work will not
132
- be changed to further restrict use of that version.
133
- Change Date: For each version of the Licensed Work, four years from
134
- the date that version is first publicly released.
135
-
136
- For the purposes of this License, a "version" of the
137
- Licensed Work is a major or minor release (for
138
- example, 5.0 or 5.1), together with its pre-releases
139
- and patch releases (for example, 5.1.0-beta.1 or
140
- 5.1.3). A version is first publicly released on the
141
- date its first release, including any pre-release, is
142
- published. Unreleased builds, such as individual
143
- commits or nightly builds, are part of the next
144
- version to be released.
195
+ whose source code is publicly available under a license
196
+ approved by the Open Source Initiative, where the catalog
197
+ documents only that project's software and not the systems
198
+ of an Organisation.
199
+
200
+ "Hosted Offering" means using the Licensed Work to give
201
+ third parties access to the Licensed Work, or to a catalog
202
+ built with it, as a hosted, managed or multi-tenant
203
+ service, whether or not for a fee, and whether offered on
204
+ its own or as part of another product. Members of Your
205
+ Organisation are not third parties. The following are not
206
+ Hosted Offerings:
207
+
208
+ (a) publishing a catalog that documents Your own software
209
+ systems, including making it publicly accessible to
210
+ Your customers, partners or the public;
211
+
212
+ (b) hosting a catalog for a specific client under section
213
+ 3 as part of services You provide to that client,
214
+ where the catalog documents that client's software
215
+ systems and You do not offer hosting of the Licensed
216
+ Work as a standardised or self-service product; and
217
+
218
+ (c) hosting, without charge, catalogs that document only
219
+ Public Open Source Projects.
220
+
221
+ "Commercial License" means a written license from the
222
+ Licensor, including one accepted online, permitting
223
+ Production use beyond this grant.
224
+
225
+ 7. Everything else
226
+
227
+ All other Production use requires a Commercial License.
228
+ Nothing in this grant limits the rights granted in the
229
+ Terms below, including the right to copy, modify,
230
+ redistribute and make non-production use of the Licensed
231
+ Work. The content of Your own catalog (the documentation,
232
+ schemas, diagrams and configuration You create) is Yours
233
+ and is not part of the Licensed Work.
234
+ Change Date: Four years after the first public release (including any
235
+ pre-release) in the same release series as the Licensed
236
+ Work.
237
+
238
+ A "release series" is every release that shares the same
239
+ major and minor release number, including its pre-releases
240
+ and patch releases: for example, 5.1 includes
241
+ 5.1.0-beta.1, 5.1.0 and 5.1.3, and they all share one
242
+ Change Date. Unreleased builds, such as individual commits
243
+ or nightly builds, belong to the next release series to be
244
+ released.
145
245
  Change License: MIT
146
246
 
147
247
  For information about commercial licensing of the Licensed Work, please
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  <div align="center">
2
2
 
3
3
  <!-- <h1>📖 EventCatalog</h1> -->
4
- <!-- <h3>The open source tool to help you discover and document your event-driven architectures</h3> -->
4
+ <!-- <h3>The source-available tool to help you discover and document your event-driven architectures</h3> -->
5
5
 
6
6
 
7
7
 
@@ -35,7 +35,7 @@
35
35
  <div align="center">
36
36
 
37
37
  [![main](https://github.com/event-catalog/eventcatalog/actions/workflows/verify-build.yml/badge.svg)](https://github.com/event-catalog/eventcatalog/actions/workflows/verify-build.yml)
38
- [![License](https://img.shields.io/badge/License-MIT%20%2B%20Commercial-blue.svg)](./LICENSE)
38
+ [![License: BSL 1.1](https://img.shields.io/badge/License-BSL%201.1-blue.svg)](https://github.com/event-catalog/eventcatalog/blob/main/LICENSE)
39
39
  [![npm version](https://badge.fury.io/js/@eventcatalog%2Fcore.svg)](https://badge.fury.io/js/@eventcatalog/core)
40
40
 
41
41
  </div>
@@ -205,6 +205,6 @@ This project follows the [all-contributors](https://github.com/all-contributors/
205
205
 
206
206
  # License
207
207
 
208
- `@eventcatalog/core` 5.0.0 (including its pre-releases) and later is licensed under the
209
- [Business Source License 1.1](./LICENSE). Releases up to and including 4.x remain available under the MIT
210
- License (see [NOTICE](./NOTICE)).
208
+ EventCatalog is source-available under the [Business Source License 1.1](https://github.com/event-catalog/eventcatalog/blob/main/LICENSE). It is free for eligible organisations (under USD 10M revenue and under USD 10M funding). Otherwise it is covered by a subscription. See [pricing](https://www.eventcatalog.dev/pricing).
209
+
210
+ `@eventcatalog/core` version 5.0.0 (including its pre-releases) and later is covered by that licence. Releases up to and including 4.x remain available under the MIT License (see [NOTICE](./NOTICE)).
@@ -36,13 +36,27 @@ module.exports = __toCommonJS(analytics_exports);
36
36
  var import_os = __toESM(require("os"), 1);
37
37
 
38
38
  // package.json
39
- var version = "5.0.0-beta.8";
39
+ var version = "5.0.0";
40
40
 
41
41
  // src/constants.ts
42
42
  var VERSION = version;
43
43
 
44
+ // src/analytics/telemetry.ts
45
+ var TELEMETRY_REQUEST_TIMEOUT_MS = 2e3;
46
+ var isOptOutEnvValue = (value) => {
47
+ if (typeof value !== "string") return false;
48
+ const normalized = value.trim().toLowerCase();
49
+ return normalized === "1" || normalized === "true";
50
+ };
51
+ var isTelemetryDisabled = (config, env) => {
52
+ if (isOptOutEnvValue(env.EVENTCATALOG_TELEMETRY_DISABLED)) return true;
53
+ if (isOptOutEnvValue(env.DO_NOT_TRACK)) return true;
54
+ return config?.telemetry === false;
55
+ };
56
+
44
57
  // src/analytics/analytics.js
45
- async function raiseEvent(eventData) {
58
+ async function raiseEvent(eventData, config) {
59
+ if (isTelemetryDisabled(config, process.env)) return;
46
60
  if (typeof eventData?.command !== "string" || typeof eventData?.cId !== "string") return;
47
61
  const url = "https://queue.simpleanalyticscdn.com/events";
48
62
  const userAgent = `@eventcatalog/eventcatalog@${VERSION} (${import_os.default.platform()}; ${import_os.default.arch()}; Node/${process.version})`;
@@ -64,7 +78,8 @@ async function raiseEvent(eventData) {
64
78
  const response = await fetch(url, {
65
79
  method: "POST",
66
80
  headers,
67
- body: JSON.stringify(payload)
81
+ body: JSON.stringify(payload),
82
+ signal: AbortSignal.timeout(TELEMETRY_REQUEST_TIMEOUT_MS)
68
83
  });
69
84
  if (!response.ok) {
70
85
  throw new Error(`Failed to raise analytics event: ${response.status}`);
@@ -1,3 +1,3 @@
1
- declare function raiseEvent(eventData: any): Promise<void>;
1
+ declare function raiseEvent(eventData: any, config: any): Promise<void>;
2
2
 
3
3
  export { raiseEvent };
@@ -1,3 +1,3 @@
1
- declare function raiseEvent(eventData: any): Promise<void>;
1
+ declare function raiseEvent(eventData: any, config: any): Promise<void>;
2
2
 
3
3
  export { raiseEvent };
@@ -1,7 +1,8 @@
1
1
  import {
2
2
  raiseEvent
3
- } from "../chunk-C6T2AAFR.js";
4
- import "../chunk-RDIZJ7UT.js";
3
+ } from "../chunk-NIVST4WY.js";
4
+ import "../chunk-CPW6G62V.js";
5
+ import "../chunk-RE7UTPWH.js";
5
6
  export {
6
7
  raiseEvent
7
8
  };