@eventcatalog/core 3.34.0 → 3.35.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.
Files changed (431) hide show
  1. package/dist/analytics/analytics.cjs +1 -1
  2. package/dist/analytics/analytics.js +2 -2
  3. package/dist/analytics/log-build.cjs +1 -1
  4. package/dist/analytics/log-build.js +3 -3
  5. package/dist/{chunk-K5AM6PPU.js → chunk-4SNN54V4.js} +1 -1
  6. package/dist/{chunk-623CFR4T.js → chunk-B7C4DHFE.js} +1 -1
  7. package/dist/{chunk-BJWMR3ZH.js → chunk-JEQZWJWP.js} +1 -1
  8. package/dist/{chunk-PP7EDIPX.js → chunk-R4DR3YAH.js} +1 -1
  9. package/dist/{chunk-IO6EMN5C.js → chunk-VJ357XOI.js} +1 -1
  10. package/dist/constants.cjs +1 -1
  11. package/dist/constants.js +1 -1
  12. package/dist/docs/api/01-overview.md +74 -0
  13. package/dist/docs/api/02-config.md +937 -0
  14. package/dist/docs/api/03-domain-api.md +394 -0
  15. package/dist/docs/api/04-service-api.md +368 -0
  16. package/dist/docs/api/05-command-api.md +319 -0
  17. package/dist/docs/api/06-event-api.md +318 -0
  18. package/dist/docs/api/06-query-api.md +316 -0
  19. package/dist/docs/api/08-channel-api.md +317 -0
  20. package/dist/docs/api/08-code-blocks.md +53 -0
  21. package/dist/docs/api/09-flow-api.md +362 -0
  22. package/dist/docs/api/10-entity-api.md +285 -0
  23. package/dist/docs/api/11-data-api.md +268 -0
  24. package/dist/docs/api/12-data-product-api.md +416 -0
  25. package/dist/docs/api/_category_.json +12 -0
  26. package/dist/docs/cli/channels.md +180 -0
  27. package/dist/docs/cli/commands.md +183 -0
  28. package/dist/docs/cli/custom-docs.md +78 -0
  29. package/dist/docs/cli/data-products.md +177 -0
  30. package/dist/docs/cli/data-stores.md +166 -0
  31. package/dist/docs/cli/diagrams.md +147 -0
  32. package/dist/docs/cli/domains.md +280 -0
  33. package/dist/docs/cli/entities.md +138 -0
  34. package/dist/docs/cli/events.md +186 -0
  35. package/dist/docs/cli/export.md +27 -0
  36. package/dist/docs/cli/governance.md +24 -0
  37. package/dist/docs/cli/import.md +26 -0
  38. package/dist/docs/cli/index.md +121 -0
  39. package/dist/docs/cli/messages.md +69 -0
  40. package/dist/docs/cli/queries.md +183 -0
  41. package/dist/docs/cli/services.md +266 -0
  42. package/dist/docs/cli/snapshots.md +44 -0
  43. package/dist/docs/cli/teams.md +75 -0
  44. package/dist/docs/cli/users.md +75 -0
  45. package/dist/docs/cli/utilities.md +43 -0
  46. package/dist/docs/contributing/01-overview.md +186 -0
  47. package/dist/docs/contributing/_category_.json +12 -0
  48. package/dist/docs/development/00-why-eventcatalog.md +87 -0
  49. package/dist/docs/development/01-fundamentals.md +34 -0
  50. package/dist/docs/development/01-getting-started/_category_.json +12 -0
  51. package/dist/docs/development/01-getting-started/configuration-overview.md +124 -0
  52. package/dist/docs/development/01-getting-started/develop-and-build.md +71 -0
  53. package/dist/docs/development/01-getting-started/installation.md +103 -0
  54. package/dist/docs/development/01-getting-started/project-structure.md +269 -0
  55. package/dist/docs/development/_category_.json +12 -0
  56. package/dist/docs/development/_getting-started.mdx +15 -0
  57. package/dist/docs/development/agent-resources/_category_.json +6 -0
  58. package/dist/docs/development/agent-resources/eventcatalog-skills.md +17 -0
  59. package/dist/docs/development/agent-resources/llms-full.md +17 -0
  60. package/dist/docs/development/agent-resources/llms.md +17 -0
  61. package/dist/docs/development/ask-your-architecture/01-intro.md +89 -0
  62. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/01-what-is-eventcatalog-assistant.md +23 -0
  63. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/02-configuration.md +72 -0
  64. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/03-bring-your-own-tools.md +385 -0
  65. package/dist/docs/development/ask-your-architecture/02-eventcatalog-assistant/_category_.json +11 -0
  66. package/dist/docs/development/ask-your-architecture/03-mcp-server/_category_.json +12 -0
  67. package/dist/docs/development/ask-your-architecture/03-mcp-server/getting-started.md +216 -0
  68. package/dist/docs/development/ask-your-architecture/03-mcp-server/introduction.md +47 -0
  69. package/dist/docs/development/ask-your-architecture/04-skills/01-introduction.md +40 -0
  70. package/dist/docs/development/ask-your-architecture/04-skills/02-installation.md +60 -0
  71. package/dist/docs/development/ask-your-architecture/04-skills/_category_.json +11 -0
  72. package/dist/docs/development/ask-your-architecture/05-slack-integration/01-introduction.md +63 -0
  73. package/dist/docs/development/ask-your-architecture/05-slack-integration/02-slack-app-setup.md +154 -0
  74. package/dist/docs/development/ask-your-architecture/05-slack-integration/03-installation.md +169 -0
  75. package/dist/docs/development/ask-your-architecture/05-slack-integration/04-deployment.md +236 -0
  76. package/dist/docs/development/ask-your-architecture/05-slack-integration/05-usage.md +140 -0
  77. package/dist/docs/development/ask-your-architecture/05-slack-integration/06-troubleshooting.md +268 -0
  78. package/dist/docs/development/ask-your-architecture/05-slack-integration/_category_.json +12 -0
  79. package/dist/docs/development/ask-your-architecture/_category_.json +12 -0
  80. package/dist/docs/development/authentication/01-introduction.md +78 -0
  81. package/dist/docs/development/authentication/02-enabling-authentication.md +152 -0
  82. package/dist/docs/development/authentication/07-rbac-middleware.md +269 -0
  83. package/dist/docs/development/authentication/_category_.json +11 -0
  84. package/dist/docs/development/authentication/providers/03-setting-up-github.md +83 -0
  85. package/dist/docs/development/authentication/providers/03a-setting-up-google.md +92 -0
  86. package/dist/docs/development/authentication/providers/04-setting-up-azure-ad.md +100 -0
  87. package/dist/docs/development/authentication/providers/05-setting-up-okta.md +105 -0
  88. package/dist/docs/development/authentication/providers/06-setting-up-auth0.md +106 -0
  89. package/dist/docs/development/authentication/providers/_category_.json +11 -0
  90. package/dist/docs/development/bring-your-own-documentation/01-introduction.md +48 -0
  91. package/dist/docs/development/bring-your-own-documentation/_category_.json +12 -0
  92. package/dist/docs/development/bring-your-own-documentation/custom-pages/01-introduction.md +60 -0
  93. package/dist/docs/development/bring-your-own-documentation/custom-pages/02-adding-custom-docs.md +207 -0
  94. package/dist/docs/development/bring-your-own-documentation/custom-pages/03-components.md +46 -0
  95. package/dist/docs/development/bring-your-own-documentation/custom-pages/04-owners.md +45 -0
  96. package/dist/docs/development/bring-your-own-documentation/custom-pages/_category_.json +11 -0
  97. package/dist/docs/development/bring-your-own-documentation/resource-docs/01-introduction.md +34 -0
  98. package/dist/docs/development/bring-your-own-documentation/resource-docs/02-adding-resource-docs.md +143 -0
  99. package/dist/docs/development/bring-your-own-documentation/resource-docs/03-categories.md +68 -0
  100. package/dist/docs/development/bring-your-own-documentation/resource-docs/04-versioning.md +45 -0
  101. package/dist/docs/development/bring-your-own-documentation/resource-docs/_category_.json +11 -0
  102. package/dist/docs/development/components/04-snippets.md +134 -0
  103. package/dist/docs/development/components/05-using-components.md +67 -0
  104. package/dist/docs/development/components/07-resource-references.md +136 -0
  105. package/dist/docs/development/components/_category_.json +12 -0
  106. package/dist/docs/development/components/components/01-accordian.md +41 -0
  107. package/dist/docs/development/components/components/02-accordian-group.md +57 -0
  108. package/dist/docs/development/components/components/03-admonitions.md +43 -0
  109. package/dist/docs/development/components/components/04-attachments.md +56 -0
  110. package/dist/docs/development/components/components/05-channel-information.md +29 -0
  111. package/dist/docs/development/components/components/06-design.md +66 -0
  112. package/dist/docs/development/components/components/07-entitymap.md +71 -0
  113. package/dist/docs/development/components/components/08-flow.md +46 -0
  114. package/dist/docs/development/components/components/09-link.md +32 -0
  115. package/dist/docs/development/components/components/10-mermaid-file-loader.md +63 -0
  116. package/dist/docs/development/components/components/11-message-table.md +43 -0
  117. package/dist/docs/development/components/components/12-nodegraph.md +167 -0
  118. package/dist/docs/development/components/components/13-openapi.md +55 -0
  119. package/dist/docs/development/components/components/14-prompt.md +69 -0
  120. package/dist/docs/development/components/components/15-remote-schema.md +174 -0
  121. package/dist/docs/development/components/components/16-resource-group-table.md +86 -0
  122. package/dist/docs/development/components/components/17-resource-link.md +57 -0
  123. package/dist/docs/development/components/components/18-schema.md +44 -0
  124. package/dist/docs/development/components/components/19-schema-viewer.md +69 -0
  125. package/dist/docs/development/components/components/20-steps.md +83 -0
  126. package/dist/docs/development/components/components/21-tabs.md +55 -0
  127. package/dist/docs/development/components/components/22-tiles.md +53 -0
  128. package/dist/docs/development/components/components/23-visibility.md +61 -0
  129. package/dist/docs/development/components/components/_category_.json +12 -0
  130. package/dist/docs/development/components/diagram-syntax/01-mermaid.md +218 -0
  131. package/dist/docs/development/components/diagram-syntax/02-plantuml.md +140 -0
  132. package/dist/docs/development/components/diagram-syntax/03-structurizr.md +24 -0
  133. package/dist/docs/development/components/diagram-syntax/04-icepanel.md +75 -0
  134. package/dist/docs/development/components/diagram-syntax/_category_.json +12 -0
  135. package/dist/docs/development/components/external-diagram-embeds/01-miro.md +64 -0
  136. package/dist/docs/development/components/external-diagram-embeds/02-lucid.md +47 -0
  137. package/dist/docs/development/components/external-diagram-embeds/03-drawio.md +46 -0
  138. package/dist/docs/development/components/external-diagram-embeds/04-figjam.md +44 -0
  139. package/dist/docs/development/components/external-diagram-embeds/05-icepanel.md +68 -0
  140. package/dist/docs/development/components/external-diagram-embeds/_category_.json +12 -0
  141. package/dist/docs/development/customization/01-customize-landing-page.md +155 -0
  142. package/dist/docs/development/customization/02-themes.md +429 -0
  143. package/dist/docs/development/customization/06-customize-tables.md +194 -0
  144. package/dist/docs/development/customization/_category_.json +12 -0
  145. package/dist/docs/development/customization/custom-components/00-what-is-mdx.md +73 -0
  146. package/dist/docs/development/customization/custom-components/01-introduction.md +28 -0
  147. package/dist/docs/development/customization/custom-components/02-adding-components.md +145 -0
  148. package/dist/docs/development/customization/custom-components/03-component-styling.md +27 -0
  149. package/dist/docs/development/customization/custom-components/04-javascript-components.md +32 -0
  150. package/dist/docs/development/customization/custom-components/_category_.json +11 -0
  151. package/dist/docs/development/customization/customize-sidebars/00-application-sidebar.md +45 -0
  152. package/dist/docs/development/customization/customize-sidebars/01-documentation-sidebar.md +187 -0
  153. package/dist/docs/development/customization/customize-sidebars/_category_.json +11 -0
  154. package/dist/docs/development/customization/customize-visualizer/00-visualizer-nodes.md +50 -0
  155. package/dist/docs/development/customization/customize-visualizer/_category_.json +11 -0
  156. package/dist/docs/development/deployment/_category_.json +12 -0
  157. package/dist/docs/development/deployment/build-and-deploy.md +71 -0
  158. package/dist/docs/development/deployment/build-ssr-mode.md +50 -0
  159. package/dist/docs/development/deployment/deployment-workflows.md +43 -0
  160. package/dist/docs/development/deployment/hosting-options.md +112 -0
  161. package/dist/docs/development/deployment/licenses.md +50 -0
  162. package/dist/docs/development/design/_category_.json +12 -0
  163. package/dist/docs/development/design/embed-designs-into-eventcatalog.md +29 -0
  164. package/dist/docs/development/design/further-reading.md +19 -0
  165. package/dist/docs/development/design/import-resources.md +27 -0
  166. package/dist/docs/development/design/intro.md +22 -0
  167. package/dist/docs/development/developer-tools/_category_.json +12 -0
  168. package/dist/docs/development/developer-tools/eventcatalog-linter.md +597 -0
  169. package/dist/docs/development/developer-tools/github-action.md +147 -0
  170. package/dist/docs/development/developer-tools/llms.txt.md +55 -0
  171. package/dist/docs/development/developer-tools/schemas.txt.md +42 -0
  172. package/dist/docs/development/governance/_category_.json +6 -0
  173. package/dist/docs/development/governance/architecture-change-detection/01-introduction.md +62 -0
  174. package/dist/docs/development/governance/architecture-change-detection/02-configuration.md +134 -0
  175. package/dist/docs/development/governance/architecture-change-detection/03-recipes.md +309 -0
  176. package/dist/docs/development/governance/architecture-change-detection/04-webhooks.md +187 -0
  177. package/dist/docs/development/governance/architecture-change-detection/05-ci-cd.md +121 -0
  178. package/dist/docs/development/governance/architecture-change-detection/06-pipeline-gates.md +162 -0
  179. package/dist/docs/development/governance/architecture-change-detection/_category_.json +6 -0
  180. package/dist/docs/development/guides/12-customize-your-sidebar.md +12 -0
  181. package/dist/docs/development/guides/99-adding-analytics.md +138 -0
  182. package/dist/docs/development/guides/_category_.json +11 -0
  183. package/dist/docs/development/guides/changelogs/01-introduction.md +33 -0
  184. package/dist/docs/development/guides/changelogs/02-adding-changelogs.md +94 -0
  185. package/dist/docs/development/guides/changelogs/03-automated-changelogs.md +44 -0
  186. package/dist/docs/development/guides/changelogs/_category_.json +11 -0
  187. package/dist/docs/development/guides/channels/01-introduction.md +111 -0
  188. package/dist/docs/development/guides/channels/02-adding-channels.md +198 -0
  189. package/dist/docs/development/guides/channels/04-adding-messages-to-services.md +292 -0
  190. package/dist/docs/development/guides/channels/09-configuration +39 -0
  191. package/dist/docs/development/guides/channels/_category_.json +11 -0
  192. package/dist/docs/development/guides/channels/ownership-and-components/01-owners.md +44 -0
  193. package/dist/docs/development/guides/channels/ownership-and-components/02-components.md +16 -0
  194. package/dist/docs/development/guides/channels/ownership-and-components/_category_.json +11 -0
  195. package/dist/docs/development/guides/channels/versioning-and-lifecycle/01-versioning.md +31 -0
  196. package/dist/docs/development/guides/channels/versioning-and-lifecycle/02-changelog.md +56 -0
  197. package/dist/docs/development/guides/channels/versioning-and-lifecycle/_category_.json +11 -0
  198. package/dist/docs/development/guides/data/01-introduction.md +34 -0
  199. package/dist/docs/development/guides/data/02-adding-data.md +86 -0
  200. package/dist/docs/development/guides/data/03a-adding-schemas-to-data-stores.md +73 -0
  201. package/dist/docs/development/guides/data/_category_.json +11 -0
  202. package/dist/docs/development/guides/data/ownership-and-components/01-owners.md +45 -0
  203. package/dist/docs/development/guides/data/ownership-and-components/02-components.md +17 -0
  204. package/dist/docs/development/guides/data/ownership-and-components/_category_.json +11 -0
  205. package/dist/docs/development/guides/data/versioning-and-lifecycle/01-versioning.md +32 -0
  206. package/dist/docs/development/guides/data/versioning-and-lifecycle/02-changelog.md +57 -0
  207. package/dist/docs/development/guides/data/versioning-and-lifecycle/03-deprecating.md +71 -0
  208. package/dist/docs/development/guides/data/versioning-and-lifecycle/_category_.json +11 -0
  209. package/dist/docs/development/guides/data-products/01-introduction.md +116 -0
  210. package/dist/docs/development/guides/data-products/02-adding-data-products.md +157 -0
  211. package/dist/docs/development/guides/data-products/03-inputs-and-outputs.md +128 -0
  212. package/dist/docs/development/guides/data-products/04-contracts.md +102 -0
  213. package/dist/docs/development/guides/data-products/05-versioning.md +240 -0
  214. package/dist/docs/development/guides/data-products/06-adding-to-domains.md +52 -0
  215. package/dist/docs/development/guides/data-products/_category_.json +11 -0
  216. package/dist/docs/development/guides/diagrams/01-introduction.md +78 -0
  217. package/dist/docs/development/guides/diagrams/02-creating-diagrams.md +195 -0
  218. package/dist/docs/development/guides/diagrams/03-referencing-diagrams.md +195 -0
  219. package/dist/docs/development/guides/diagrams/04-versioning-diagrams.md +204 -0
  220. package/dist/docs/development/guides/diagrams/05-comparing-diagrams.md +145 -0
  221. package/dist/docs/development/guides/diagrams/06-diagrams-with-llms.md +165 -0
  222. package/dist/docs/development/guides/diagrams/_category_.json +10 -0
  223. package/dist/docs/development/guides/domains/01-introduction.md +22 -0
  224. package/dist/docs/development/guides/domains/02-creating-domains/02-adding-domains.md +108 -0
  225. package/dist/docs/development/guides/domains/02-creating-domains/02a-subdomains.md +84 -0
  226. package/dist/docs/development/guides/domains/02-creating-domains/03-adding-services-to-domains.md +90 -0
  227. package/dist/docs/development/guides/domains/02-creating-domains/04-adding-messages-to-domains.md +107 -0
  228. package/dist/docs/development/guides/domains/02-creating-domains/05-adding-data-products-to-domains.md +105 -0
  229. package/dist/docs/development/guides/domains/02-creating-domains/_category_.json +11 -0
  230. package/dist/docs/development/guides/domains/03-ownership-and-language/01-owners.md +36 -0
  231. package/dist/docs/development/guides/domains/03-ownership-and-language/02-adding-ubiquitous-language.md +75 -0
  232. package/dist/docs/development/guides/domains/03-ownership-and-language/_category_.json +10 -0
  233. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/01-versioning.md +40 -0
  234. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/02-changelog.md +53 -0
  235. package/dist/docs/development/guides/domains/04-versioning-and-changelogs/_category_.json +10 -0
  236. package/dist/docs/development/guides/domains/05-entities/01-introduction.md +24 -0
  237. package/dist/docs/development/guides/domains/05-entities/02-adding-entities.md +157 -0
  238. package/dist/docs/development/guides/domains/05-entities/03-adding-entities-to-domains.md +30 -0
  239. package/dist/docs/development/guides/domains/05-entities/04-domain-entity-map.md +134 -0
  240. package/dist/docs/development/guides/domains/05-entities/_category_.json +11 -0
  241. package/dist/docs/development/guides/domains/08-domain-integration-map.md +41 -0
  242. package/dist/docs/development/guides/domains/_category_.json +11 -0
  243. package/dist/docs/development/guides/flows/01-introduction.md +36 -0
  244. package/dist/docs/development/guides/flows/02-adding-flows.md +198 -0
  245. package/dist/docs/development/guides/flows/03-flow-nodes.md +273 -0
  246. package/dist/docs/development/guides/flows/04-adding-flows-to-services.md +42 -0
  247. package/dist/docs/development/guides/flows/05-adding-flows-to-domains.md +43 -0
  248. package/dist/docs/development/guides/flows/06-versioning.md +27 -0
  249. package/dist/docs/development/guides/flows/07-create-flow-with-ai.md +171 -0
  250. package/dist/docs/development/guides/flows/_category_.json +11 -0
  251. package/dist/docs/development/guides/messages/01-overview.md +57 -0
  252. package/dist/docs/development/guides/messages/_category_.json +11 -0
  253. package/dist/docs/development/guides/messages/commands/01-introduction.md +26 -0
  254. package/dist/docs/development/guides/messages/commands/02-adding-commands.md +131 -0
  255. package/dist/docs/development/guides/messages/commands/_category_.json +11 -0
  256. package/dist/docs/development/guides/messages/common/01-map-to-producers-and-consumers.md +37 -0
  257. package/dist/docs/development/guides/messages/common/02-adding-schemas.md +58 -0
  258. package/dist/docs/development/guides/messages/common/02-deprecating.md +71 -0
  259. package/dist/docs/development/guides/messages/common/02-draft-messages.md +63 -0
  260. package/dist/docs/development/guides/messages/common/02-examples.md +99 -0
  261. package/dist/docs/development/guides/messages/common/03-owners.md +40 -0
  262. package/dist/docs/development/guides/messages/common/04-versioning.md +27 -0
  263. package/dist/docs/development/guides/messages/common/05-changelog.md +73 -0
  264. package/dist/docs/development/guides/messages/common/07-components.md +12 -0
  265. package/dist/docs/development/guides/messages/common/08-shared-messages-across-boundaries.md +70 -0
  266. package/dist/docs/development/guides/messages/common/09-grouping-messages.md +98 -0
  267. package/dist/docs/development/guides/messages/common/_category_.json +11 -0
  268. package/dist/docs/development/guides/messages/events/01-introduction.md +25 -0
  269. package/dist/docs/development/guides/messages/events/02-adding-events.md +130 -0
  270. package/dist/docs/development/guides/messages/events/_category_.json +11 -0
  271. package/dist/docs/development/guides/messages/queries/01-introduction.md +25 -0
  272. package/dist/docs/development/guides/messages/queries/02-adding-queries.md +130 -0
  273. package/dist/docs/development/guides/messages/queries/_category_.json +11 -0
  274. package/dist/docs/development/guides/owners/_category_.json +11 -0
  275. package/dist/docs/development/guides/owners/teams/01-introduction.md +21 -0
  276. package/dist/docs/development/guides/owners/teams/02-adding-teams.md +73 -0
  277. package/dist/docs/development/guides/owners/teams/_category_.json +11 -0
  278. package/dist/docs/development/guides/owners/users/01-introduction.md +20 -0
  279. package/dist/docs/development/guides/owners/users/02-adding-users.md +70 -0
  280. package/dist/docs/development/guides/owners/users/_category_.json +11 -0
  281. package/dist/docs/development/guides/schemas/01-introduction.md +64 -0
  282. package/dist/docs/development/guides/schemas/02-schema-explorer.md +74 -0
  283. package/dist/docs/development/guides/schemas/03-schema-api.md +59 -0
  284. package/dist/docs/development/guides/schemas/04-schema-mcp.md +22 -0
  285. package/dist/docs/development/guides/schemas/05-field-usage.md +120 -0
  286. package/dist/docs/development/guides/schemas/06-fields-explorer.md +120 -0
  287. package/dist/docs/development/guides/schemas/_category_.json +11 -0
  288. package/dist/docs/development/guides/services/01-introduction.md +33 -0
  289. package/dist/docs/development/guides/services/02-adding-services.md +113 -0
  290. package/dist/docs/development/guides/services/03-creating-external-systems.md +71 -0
  291. package/dist/docs/development/guides/services/_category_.json +11 -0
  292. package/dist/docs/development/guides/services/adding-to-services/01-messages.md +229 -0
  293. package/dist/docs/development/guides/services/adding-to-services/02-datastores.md +77 -0
  294. package/dist/docs/development/guides/services/adding-to-services/03-entities.md +47 -0
  295. package/dist/docs/development/guides/services/adding-to-services/04-openapi.md +97 -0
  296. package/dist/docs/development/guides/services/adding-to-services/05-asyncapi.md +97 -0
  297. package/dist/docs/development/guides/services/adding-to-services/06-graphql.md +96 -0
  298. package/dist/docs/development/guides/services/adding-to-services/_category_.json +10 -0
  299. package/dist/docs/development/guides/services/ownership-and-components/01-owners.md +41 -0
  300. package/dist/docs/development/guides/services/ownership-and-components/02-components.md +13 -0
  301. package/dist/docs/development/guides/services/ownership-and-components/_category_.json +11 -0
  302. package/dist/docs/development/guides/services/versioning-and-lifecycle/01-versioning.md +27 -0
  303. package/dist/docs/development/guides/services/versioning-and-lifecycle/02-changelog.md +52 -0
  304. package/dist/docs/development/guides/services/versioning-and-lifecycle/03-deprecating.md +70 -0
  305. package/dist/docs/development/guides/services/versioning-and-lifecycle/_category_.json +11 -0
  306. package/dist/docs/development/upgrading/_category_.json +12 -0
  307. package/dist/docs/development/upgrading/upgrading.md +142 -0
  308. package/dist/docs/development/upgrading/v2.md +69 -0
  309. package/dist/docs/development/upgrading/v3.md +277 -0
  310. package/dist/docs/miro/_category_.json +12 -0
  311. package/dist/docs/miro/contributing/01-getting-involved.md +53 -0
  312. package/dist/docs/miro/contributing/_category_.json +11 -0
  313. package/dist/docs/miro/getting-started/01-overview.md +63 -0
  314. package/dist/docs/miro/getting-started/02-installation.md +37 -0
  315. package/dist/docs/miro/getting-started/03-connecting-to-eventcatalog.md +59 -0
  316. package/dist/docs/miro/getting-started/_category_.json +11 -0
  317. package/dist/docs/miro/guides/01-adding-resources-to-board.md +90 -0
  318. package/dist/docs/miro/guides/02-creating-new-resources.md +61 -0
  319. package/dist/docs/miro/guides/03-editing-resources.md +50 -0
  320. package/dist/docs/miro/guides/04-connected-resources.md +54 -0
  321. package/dist/docs/miro/guides/05-services-and-dependencies.md +54 -0
  322. package/dist/docs/miro/guides/06-navigating-the-board.md +44 -0
  323. package/dist/docs/miro/guides/07-exporting-to-eventcatalog.md +75 -0
  324. package/dist/docs/miro/guides/_category_.json +11 -0
  325. package/dist/docs/miro/specifications/01-asyncapi.md +86 -0
  326. package/dist/docs/miro/specifications/02-openapi.md +86 -0
  327. package/dist/docs/miro/specifications/03-schema-registries.md +88 -0
  328. package/dist/docs/miro/specifications/_category_.json +11 -0
  329. package/dist/docs/miro/using-ai/01-overview.md +105 -0
  330. package/dist/docs/miro/using-ai/_category_.json +11 -0
  331. package/dist/docs/plugins/01-intro.md +49 -0
  332. package/dist/docs/plugins/02-generators.md +76 -0
  333. package/dist/docs/plugins/03-all-plugins.md +26 -0
  334. package/dist/docs/plugins/_category_.json +12 -0
  335. package/dist/docs/plugins/amazon-apigateway/00-intro.md +75 -0
  336. package/dist/docs/plugins/amazon-apigateway/01-installation.md +198 -0
  337. package/dist/docs/plugins/amazon-apigateway/02-plugin-configuration.md +136 -0
  338. package/dist/docs/plugins/amazon-apigateway/03-features.md +71 -0
  339. package/dist/docs/plugins/amazon-apigateway/04-examples.md +15 -0
  340. package/dist/docs/plugins/amazon-apigateway/_category_.json +11 -0
  341. package/dist/docs/plugins/apicurio/00-intro.md +102 -0
  342. package/dist/docs/plugins/apicurio/01-installation.md +165 -0
  343. package/dist/docs/plugins/apicurio/02-plugin-configuration.md +682 -0
  344. package/dist/docs/plugins/apicurio/03-features.md +221 -0
  345. package/dist/docs/plugins/apicurio/04-examples.md +20 -0
  346. package/dist/docs/plugins/apicurio/_category_.json +12 -0
  347. package/dist/docs/plugins/asyncapi/00-intro.md +81 -0
  348. package/dist/docs/plugins/asyncapi/01-installation.md +155 -0
  349. package/dist/docs/plugins/asyncapi/02-plugin-configuration.md +312 -0
  350. package/dist/docs/plugins/asyncapi/03-features.md +698 -0
  351. package/dist/docs/plugins/asyncapi/03a-workflows.md +153 -0
  352. package/dist/docs/plugins/asyncapi/04-examples.md +23 -0
  353. package/dist/docs/plugins/asyncapi/04-using-reference-objects.md +45 -0
  354. package/dist/docs/plugins/asyncapi/_category_.json +12 -0
  355. package/dist/docs/plugins/aws-glue-registry/00-intro.md +104 -0
  356. package/dist/docs/plugins/aws-glue-registry/00a-installation.md +305 -0
  357. package/dist/docs/plugins/aws-glue-registry/01-features.md +287 -0
  358. package/dist/docs/plugins/aws-glue-registry/02-examples.md +368 -0
  359. package/dist/docs/plugins/aws-glue-registry/03-api.md +282 -0
  360. package/dist/docs/plugins/aws-glue-registry/_category_.json +11 -0
  361. package/dist/docs/plugins/azure-schema-registry/00-intro.md +92 -0
  362. package/dist/docs/plugins/azure-schema-registry/01-installation.md +409 -0
  363. package/dist/docs/plugins/azure-schema-registry/02-plugin-configuration.md +375 -0
  364. package/dist/docs/plugins/azure-schema-registry/03-features.md +347 -0
  365. package/dist/docs/plugins/azure-schema-registry/04-examples.md +378 -0
  366. package/dist/docs/plugins/azure-schema-registry/_category_.json +12 -0
  367. package/dist/docs/plugins/backstage/00-intro.md +67 -0
  368. package/dist/docs/plugins/backstage/01-installation.md +250 -0
  369. package/dist/docs/plugins/backstage/02-api.md +51 -0
  370. package/dist/docs/plugins/backstage/03-examples.md +12 -0
  371. package/dist/docs/plugins/backstage/_category_.json +11 -0
  372. package/dist/docs/plugins/confluent-schema-registry/00-intro.md +90 -0
  373. package/dist/docs/plugins/confluent-schema-registry/01-installation.md +223 -0
  374. package/dist/docs/plugins/confluent-schema-registry/02-plugin-configuration.md +473 -0
  375. package/dist/docs/plugins/confluent-schema-registry/03-features.md +43 -0
  376. package/dist/docs/plugins/confluent-schema-registry/04-examples.md +19 -0
  377. package/dist/docs/plugins/confluent-schema-registry/_category_.json +12 -0
  378. package/dist/docs/plugins/eventbridge/00-intro.md +55 -0
  379. package/dist/docs/plugins/eventbridge/00a-installation.md +317 -0
  380. package/dist/docs/plugins/eventbridge/01-features.md +225 -0
  381. package/dist/docs/plugins/eventbridge/02-examples.md +17 -0
  382. package/dist/docs/plugins/eventbridge/03-api.md +441 -0
  383. package/dist/docs/plugins/eventbridge/03a-workflows.md +133 -0
  384. package/dist/docs/plugins/eventbridge/_category_.json +11 -0
  385. package/dist/docs/plugins/eventcatalog-federation/00-introduction.md +69 -0
  386. package/dist/docs/plugins/eventcatalog-federation/01-installation.md +182 -0
  387. package/dist/docs/plugins/eventcatalog-federation/02-plugin-configuration.md +208 -0
  388. package/dist/docs/plugins/eventcatalog-federation/03-examples.md +15 -0
  389. package/dist/docs/plugins/eventcatalog-federation/04-configuration.md +193 -0
  390. package/dist/docs/plugins/eventcatalog-federation/05-setup-team-catalog.md +97 -0
  391. package/dist/docs/plugins/eventcatalog-federation/_category_.json +11 -0
  392. package/dist/docs/plugins/github/00-intro.md +93 -0
  393. package/dist/docs/plugins/github/01-installation.md +293 -0
  394. package/dist/docs/plugins/github/02-plugin-configuration.md +253 -0
  395. package/dist/docs/plugins/github/03-features.md +42 -0
  396. package/dist/docs/plugins/github/04-examples.md +17 -0
  397. package/dist/docs/plugins/github/_category_.json +12 -0
  398. package/dist/docs/plugins/graphql/00-intro.md +74 -0
  399. package/dist/docs/plugins/graphql/01-installation.md +144 -0
  400. package/dist/docs/plugins/graphql/02-plugin-configuration.md +127 -0
  401. package/dist/docs/plugins/graphql/03-features.md +197 -0
  402. package/dist/docs/plugins/graphql/04-examples.md +15 -0
  403. package/dist/docs/plugins/graphql/_category_.json +12 -0
  404. package/dist/docs/plugins/hookdeck/01-intro.md +152 -0
  405. package/dist/docs/plugins/hookdeck/02-api.md +133 -0
  406. package/dist/docs/plugins/hookdeck/03-cli.md +45 -0
  407. package/dist/docs/plugins/hookdeck/_category_.json +11 -0
  408. package/dist/docs/plugins/openapi/00-intro.md +78 -0
  409. package/dist/docs/plugins/openapi/01-installation.md +148 -0
  410. package/dist/docs/plugins/openapi/02-plugin-configuration.md +332 -0
  411. package/dist/docs/plugins/openapi/03-features.md +790 -0
  412. package/dist/docs/plugins/openapi/03a-workflows.md +153 -0
  413. package/dist/docs/plugins/openapi/04-examples.md +23 -0
  414. package/dist/docs/plugins/openapi/_category_.json +12 -0
  415. package/dist/eventcatalog.cjs +1 -1
  416. package/dist/eventcatalog.js +5 -5
  417. package/dist/generate.cjs +1 -1
  418. package/dist/generate.js +3 -3
  419. package/dist/utils/cli-logger.cjs +1 -1
  420. package/dist/utils/cli-logger.js +2 -2
  421. package/eventcatalog/src/components/Search/SearchModal.tsx +23 -34
  422. package/eventcatalog/src/components/Search/search-utils.spec.ts +36 -0
  423. package/eventcatalog/src/components/Search/search-utils.ts +34 -0
  424. package/eventcatalog/src/components/SideNav/NestedSideBar/SearchBar.tsx +7 -1
  425. package/eventcatalog/src/components/SideNav/NestedSideBar/index.tsx +2 -0
  426. package/eventcatalog/src/stores/sidebar-store/builders/flow.ts +77 -0
  427. package/eventcatalog/src/stores/sidebar-store/builders/message.ts +10 -1
  428. package/eventcatalog/src/stores/sidebar-store/builders/service.ts +10 -3
  429. package/eventcatalog/src/stores/sidebar-store/state.ts +126 -2
  430. package/eventcatalog/src/utils/collections/flows.ts +3 -2
  431. package/package.json +4 -4
@@ -0,0 +1,148 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog OpenAPI
5
+ sidebar_label: Installation
6
+ title: Installation
7
+ description: Installation of the EventCatalog OpenAPI plugin
8
+ ---
9
+
10
+ import AddedIn from '@site/src/components/MDX/AddedIn';
11
+ import PluginLicense from '@site/src/components/MDX/PluginLicense';
12
+ import Beta from '@site/src/components/MDX/Beta';
13
+ import Tabs from '@theme/Tabs';
14
+ import TabItem from '@theme/TabItem';
15
+
16
+ <PluginLicense url="#commercial-use" />
17
+
18
+ The OpenAPI plugin is used to generate a catalog from an OpenAPI specification files.
19
+
20
+ You can map your OpenAPI files to commands, events and queries in your catalog, and assign these to services and domains.
21
+
22
+ ## Installation
23
+
24
+ Run the command below to install the EventCatalog OpenAPI plugin.
25
+
26
+ <Tabs>
27
+ <TabItem value="apple" label="Install on existing catalog" default>
28
+ ```bash
29
+ npm i @eventcatalog/generator-openapi
30
+ ```
31
+ </TabItem>
32
+ <TabItem value="orange" label="Create new catalog with OpenAPI plugin">
33
+ ```bash
34
+ npx @eventcatalog/create-eventcatalog@latest my-catalog --template openapi
35
+ ```
36
+ </TabItem>
37
+ </Tabs>
38
+
39
+ #### Configuration
40
+
41
+ Configure the plugin in your `eventcatalog.config.js` file.
42
+
43
+ Add the plugin to the `generators` array.
44
+
45
+ ```js title="eventcatalog.config.js"
46
+ // ...
47
+ generators: [
48
+ [
49
+ '@eventcatalog/generator-openapi',
50
+ {
51
+ services: [
52
+ { path: path.join(__dirname, 'openapi-files', 'orders-service.yml'), id: 'orders-service' },
53
+ ],
54
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
55
+ },
56
+ ],
57
+ // Add many openapi files to a domain
58
+ [
59
+ '@eventcatalog/generator-openapi',
60
+ {
61
+ services: [
62
+ { path: path.join(__dirname, 'openapi-files', 'payment-service.yml'), id: 'payment-store' },
63
+ { path: path.join(__dirname, 'openapi-files', 'fraud-detection-service.yml'), id: 'fraud-detection-service' },
64
+ ],
65
+ domain: { id: 'payment', name: 'Payment', version: '0.0.1' },
66
+ },
67
+ ],
68
+ ],
69
+ };
70
+
71
+ ```
72
+
73
+ ### Configure license key
74
+
75
+ The EventCatalog OpenAPI plugin requires a license key to work with EventCatalog.
76
+
77
+ You can get a trial license key from [EventCatalog Cloud](https://eventcatalog.cloud).
78
+
79
+ You have a few options for setting the license key:
80
+
81
+ 1. [Setting license key in `.env` file (recommended)](#setting-license-key-in-env-file-recommended)
82
+ 2. [Setting license key in eventcatalog.config.js](#setting-license-key-in-eventcatalogconfigjs)
83
+
84
+ #### 1. Setting license key in `.env` file (recommended)
85
+
86
+ <AddedIn version="2.35.4" />
87
+
88
+ Create a `.env` file in the root of your project and add the following:
89
+
90
+ ```bash title=".env"
91
+ EVENTCATALOG_LICENSE_KEY_OPENAPI=your-license-key
92
+ ```
93
+
94
+ :::tip Using an older version of EventCatalog?
95
+
96
+ If you are using an older version of EventCatalog that does not support the `.env` file, you can just export the license key as an environment variable.
97
+
98
+ ```bash title="Setting license key in environment variables"
99
+ export EVENTCATALOG_LICENSE_KEY_OPENAPI=your-license-key
100
+ ```
101
+
102
+ :::
103
+
104
+
105
+ ### White listing domains
106
+
107
+ If you are behind a firewall you will need to white list the domain `https://api.eventcatalog.cloud` in your firewall. This is because the plugin needs to verify your license key.
108
+
109
+ #### 2. Setting license key in eventcatalog.config.js
110
+
111
+ If you prefer, you can set the license key in the `eventcatalog.config.js` file
112
+ using the `licenseKey` property in the EventCatalog OpenAPI plugin.
113
+
114
+ ```js title="eventcatalog.config.js"
115
+ export default {
116
+ generators: [
117
+ [
118
+ '@eventcatalog/generator-openapi',
119
+ {
120
+ licenseKey: '[INSERT_YOUR_LICENSE_KEY]', // or process.env.EVENTCATALOG_LICENSE_KEY_OPENAPI
121
+ },
122
+ ],
123
+ ],
124
+ };
125
+ ```
126
+
127
+ #### Run the plugin
128
+
129
+ _This command will run the generators in your eventcatalog.config.js file._
130
+
131
+ ```
132
+ npm run generate
133
+ ```
134
+
135
+ #### View your catalog
136
+
137
+ Run your catalog locally to see the changes
138
+
139
+ ```
140
+ npm run dev
141
+ ```
142
+
143
+ ## Any questions or need help?
144
+
145
+ If you get stuck, find an issue or need help, please raise an issue on [GitHub](https://github.com/event-catalog/eventcatalog/issues) or join our [Discord community](https://eventcatalog.dev/discord).
146
+
147
+
148
+
@@ -0,0 +1,332 @@
1
+ ---
2
+ sidebar_position: 1
3
+ keywords:
4
+ - EventCatalog OpenAPI
5
+ sidebar_label: Plugin Configuration
6
+ title: Plugin Configuration
7
+ description: Configuration of the EventCatalog OpenAPI plugin
8
+ ---
9
+
10
+ import AddedIn from '@site/src/components/MDX/AddedIn';
11
+ import Tabs from '@theme/Tabs';
12
+ import TabItem from '@theme/TabItem';
13
+
14
+ # Plugin Configuration
15
+
16
+ ## Overview
17
+
18
+ The EventCatalog OpenAPI plugin is configured in the `eventcatalog.config.js` file inside the `generators` array.
19
+
20
+ ## Required Configuration Options
21
+
22
+ | Option | Type | Required | Description |
23
+ |--------|------|----------|-------------|
24
+ | `services` | `Service[]` | Yes | List of OpenAPI files to add to your catalog |
25
+ | `licenseKey` | string | Yes* | License key for the plugin. Get a 14-day trial at [EventCatalog Cloud](https://eventcatalog.cloud). Can also be set via `EVENTCATALOG_LICENSE_KEY_OPENAPI` environment variable. |
26
+
27
+
28
+ ### Service Configuration
29
+
30
+ Each service in the `services` array requires the following properties:
31
+
32
+ | Property | Type | Required | Description |
33
+ |----------|------|----------|-------------|
34
+ | `id` | string | Yes | EventCatalog ID for the service. |
35
+ | `path` | string or string[] | Yes | Path/s to your OpenAPI file or remote URL to the OpenAPI file. v6.0.0 introduced the ability to map multiple OpenAPI files to a single service. |
36
+ | `name` | string | No | Display name for the service. If not provided, the specification will be used. _Added in v7.4.3_|
37
+ | `summary` | string | No | Short summary of the service. If not provided, the specification will be used. _Added in v7.4.3_|
38
+ | `owners` | string[] | No | Owners of the service. You can assign EventCatalog users or teams to services. |
39
+ | `setMessageOwnersToServiceOwners` | boolean | No | If true, the owners of the service will be set to the owners of the messages in the OpenAPI file (default is true). |
40
+ | `generateMarkdown` | function | - | Function to override the default markdown generation for the service. See [Markdown templates](#markdown-templates) for more information. |
41
+ | `draft` | boolean | No | If true, the service will be drafted in EventCatalog with all it's endpoints / messages. (Added in v7.3.0) |
42
+ | `writesTo` | array[\{id: string, version?: string\}] | No | Array of [data stores](/docs/development/guides/data/introduction) id and version (optional) that the service writes to. (Added in v7.5.0) |
43
+ | `readsFrom` | array[\{id: string, version?: string\}] | No | Array of [data stores](/docs/development/guides/data/introduction) id and version (optional) that the service reads from. (Added in v7.5.0) |
44
+ | `headers` | `Record<string, string>` | No | HTTP headers for authenticated remote URLs (e.g., `{ Authorization: 'Bearer token' }`). Used when fetching OpenAPI files from URLs that require authentication. |
45
+ | `consumers` | `ConsumerService[]` | No | Services that consume messages generated from this OpenAPI spec. Each entry requires an `id`, and supports an optional `version` and `routes` filter. See [consumer services](/docs/plugins/openapi/features#define-consumer-services) for details. |
46
+
47
+ ## Optional Configuration Options
48
+
49
+
50
+
51
+ | Option | Type | Default | Description |
52
+ |--------|------|---------|-------------|
53
+ | `domain` | object | - | Domain to associate all configured services with |
54
+ | `domain.id` | string | - | Domain identifier |
55
+ | `domain.name` | string | - | Domain display name |
56
+ | `domain.version` | string | - | Domain version |
57
+ | `domain.draft` | boolean | No | If true, the domain will be drafted in EventCatalog with all it's services / messages. (Added in v7.3.0) |
58
+ | `domain.generateMarkdown` | function | - | Function to override the default markdown generation for the domain. See [Markdown templates](#markdown-templates) for more information. |
59
+ | `messages.generateMarkdown` | function | - | Function to override the default markdown generation for the message. See [Markdown templates](#markdown-templates) for more information. |
60
+ | `messages.id` | object | - | Configure the id of the messages that are generated (for example, set a prefix to all messages that are generated) _(Added in v7.4.1)_ [(Read more)](/docs/plugins/openapi/features#adding-prefix-to-all-messages) |
61
+ | `messages.id.prefix` | string | - | A prefix value for the message that is generated. For example a message with the operationId `getOrders` with a configured prefix of `hello-` will be `hello-getOrders`. _(Added in v7.4.1)_ [(Read more)](/docs/plugins/openapi/features#adding-prefix-to-all-messages) |
62
+ | `messages.id.separator` | string | `-` | The separator to use between the prefix and the message id. _(Added in v7.4.1)_ [(Read more)](/docs/plugins/openapi/features#adding-prefix-to-all-messages) |
63
+ | `messages.id.prefixWithServiceId` | boolean | - | If true, the service id will be added to the id of the messages that are generated. For example a message with the operationId `getOrders` and the service id `orders-service` will be `orders-service-getOrders`. _(Added in v7.4.1)_ [(Read more)](/docs/plugins/openapi/features#adding-prefix-to-all-messages) |
64
+ | `writeFilesToRoot` | boolean | `false` | Write OpenAPI messages to root instead of service folder. By default all domains, services and messages
65
+ will be grouped in the folder directory structure. |
66
+ | `saveParsedSpecFile` | boolean | `false` | Parse and save expanded OpenAPI spec (helpful for files with $refs) |
67
+ | `sidebarBadgeType` | string | `HTTP_METHOD` | (Added in v5.0.1) Decides what badges are shown in the [documentation sidebar](/docs/development/customization/customize-sidebars/documentation-sidebar). `HTTP_METHOD` shows HTTP methods as badges, `MESSAGE_TYPE` shows `QUERY`, `COMMAND` or `EVENT` as badges. |
68
+ | `httpMethodsToMessages` | object | - | (Added in v5.0.2) Gives you the ability to map HTTP methods (`GET`, `POST`, `PUT`, `DELETE`, `PATCH`, etc.) to message types (`command`, `query`, `event`). By default OpenAPI will map your requests to queries, you can use this property to change this behavior or use the `x-eventcatalog-message-type` extension to set the message type for each request. **If you use the `x-eventcatalog-message-type` extension in your spec file, this will be used.** |
69
+ | `preserveExistingMessages` | boolean | true | (Added in v5.0.5) If true, the existing message markdown is preserved on new generation (default is true). Setting to false will always write the message markdown from the OpenAPI spec file. |
70
+ | `parseExamples` | boolean | true | <AddedIn version="7.9.0" pkg="@eventcatalog/generator-openapi" url="https://github.com/event-catalog/generators/releases/tag/v"/> When enabled, parses examples from OpenAPI operations (request body and response examples) and writes them to each message's `examples` folder as JSON files. Set to `false` to disable. |
71
+
72
+ ## Example Configuration
73
+
74
+ ```js title="eventcatalog.config.js"
75
+ import path from "path";
76
+ import url from "url";
77
+
78
+ const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
79
+
80
+ /** @type {import('@eventcatalog/core/bin/eventcatalog.config').Config} */
81
+ export default {
82
+ cId: "10b46030-5736-4600-8254-421c3ed56e47",
83
+ title: "MetaRetail Inc",
84
+ tagline: "Fake Retail Company for EventCatalog Demo",
85
+ organizationName: "MetaRetail Inc",
86
+ homepageLink: "https://eventcatalog.dev/",
87
+ editUrl: "https://github.com/boyney123/eventcatalog-demo/edit/master",
88
+ // By default set to false, add true to get urls ending in /
89
+ trailingSlash: false,
90
+ // Change to make the base url of the site different, by default https://{website}.com/docs,
91
+ // changing to /company would be https://{website}.com/company/docs,
92
+ base: "/",
93
+ // Customize the logo, add your logo to public/ folder
94
+ logo: {
95
+ alt: "EventCatalog Logo",
96
+ src: "/logo.png",
97
+ text: "MetaRetail Inc",
98
+ },
99
+ docs: {
100
+ sidebar: {
101
+ // Should the sub heading be rendered in the docs sidebar?
102
+ showPageHeadings: true,
103
+ },
104
+ },
105
+ generators: [
106
+ // Add single OpenAPI file to a domain
107
+ [
108
+ '@eventcatalog/generator-openapi',
109
+ {
110
+ services: [
111
+ {
112
+ path: path.join(__dirname, 'openapi-files', 'orders-service.yml'),
113
+ id: 'orders-service'
114
+ }
115
+ ],
116
+ domain: { id: 'orders', name: 'Orders', version: '0.0.1' },
117
+ // Will render POST, GET, PUT, DELETE as badges in the sidebar
118
+ sidebarBadgeType: 'HTTP_METHOD',
119
+ // or set the license key via the environment variable as EVENTCATALOG_LICENSE_KEY_OPENAPI
120
+ licenseKey: 'YOUR_LICENSE_KEY'
121
+ },
122
+ ],
123
+ // Add multiple OpenAPI files to a domain
124
+ [
125
+ '@eventcatalog/generator-openapi',
126
+ {
127
+ services: [
128
+ {
129
+ path: path.join(__dirname, 'openapi-files', 'payment-service.yml'),
130
+ id: 'payment-service'
131
+ },
132
+ {
133
+ path: path.join(__dirname, 'openapi-files', 'fraud-detection-service.yml'),
134
+ id: 'fraud-detection-service'
135
+ }
136
+ ],
137
+ domain: { id: 'payment', name: 'Payment', version: '0.0.1' },
138
+ // Will render QUERY, COMMAND, EVENT as badges in the sidebar
139
+ sidebarBadgeType: 'MESSAGE_TYPE',
140
+ // Here we map the HTTP methods to the message types for EventCatalog (optional)
141
+ // e.g All post requests are mapped to commands, all get requests are mapped to queries
142
+ httpMethodsToMessages: {
143
+ GET: 'query',
144
+ POST: 'command',
145
+ PUT: 'command',
146
+ DELETE: 'command',
147
+ }
148
+ // or set the license key via the environment variable as EVENTCATALOG_LICENSE_KEY_OPENAPI
149
+ licenseKey: 'YOUR_LICENSE_KEY'
150
+ },
151
+ ],
152
+ ],
153
+ };
154
+ ```
155
+
156
+ You can view an example configuration in the [EventCatalog OpenAPI plugin GitHub repository](https://github.com/event-catalog/generators/blob/main/examples/generator-openapi/basic/eventcatalog.config.js).
157
+
158
+ ## Markdown templates
159
+
160
+ <AddedIn version="7.2.1" pkg="@eventcatalog/generator-openapi" url="https://github.com/event-catalog/generators/releases/tag/v"/>
161
+
162
+ The EventCatalog OpenAPI plugin will generate default markdown for each domain, service and message.
163
+
164
+ If you want more control, you can override these using your own **markdown templates**.
165
+
166
+ To use your own markdown templates you need to provide a function that returns the markdown for the domain, service or message.
167
+
168
+ Below you can see examples of how to override the default markdown for the domain, service and message.
169
+
170
+ <Tabs>
171
+ <TabItem value="Domain Markdown Template">
172
+
173
+ #### Domain
174
+
175
+ In this example we will override the default markdown for the domain using our custom function. We will also preserve the default markdown for the domain.
176
+
177
+ ```js title="eventcatalog.config.js"
178
+ // function to generate the markdown for the domain
179
+ // You can include this in your config file or in a separate file and import it
180
+ const generateMarkdownForDomain = ({ domain, markdown }) => {
181
+ return `# ${domain.name}
182
+ This is the default markdown for the domain
183
+
184
+ You can add anything you want here, including components, tables, etc.
185
+
186
+ ## Architecture Diagram
187
+ <NodeGraph />
188
+
189
+ // Add the default markdown for the domain if you want to preserve it
190
+ ${markdown}
191
+ `;
192
+ }
193
+
194
+ // Your configuration
195
+ export default {
196
+ generators: [
197
+ [
198
+ '@eventcatalog/generator-openapi',
199
+ {
200
+ // ...rest of generator config
201
+ domain: {
202
+ id: 'orders',
203
+ name: 'Orders',
204
+ version: '0.0.1',
205
+ generateMarkdown: generateMarkdownForDomain
206
+ }
207
+ }
208
+ ]
209
+ ]
210
+ }
211
+ ```
212
+
213
+ **Function Arguments:**
214
+
215
+ | Argument | Type | Properties | Description |
216
+ |----------|------|----------|-------------|
217
+ | `domain` | object | `id`, `name`, `version` | The domain object you provided in the config |
218
+ | `markdown` | string | - | The default markdown for the domain. Incase you want to preserve the default markdown you can use this argument to add to your own markdown. |
219
+
220
+
221
+ </TabItem>
222
+ <TabItem value="Service Markdown Template">
223
+
224
+ #### Service
225
+
226
+ In this example we will override the default markdown for the service using our custom function. We will also preserve the default markdown for the service.
227
+
228
+ ```js title="eventcatalog.config.js"
229
+ // function to generate the markdown for the service
230
+ // You can include this in your config file or in a separate file and import it
231
+ const generateMarkdownForService = ({ service, markdown, document }) => {
232
+ return `# ${service.name}
233
+ This is the default markdown for the service
234
+
235
+ ## Description
236
+ ${document.info.description ? `${document.info.description}` : ''}
237
+ `;
238
+ }
239
+
240
+ // Your configuration
241
+ export default {
242
+ generators: [
243
+ [
244
+ '@eventcatalog/generator-openapi',
245
+ {
246
+ // ...rest of generator config
247
+ service: {
248
+ id: 'orders-service',
249
+ name: 'Orders Service',
250
+ version: '0.0.1',
251
+ generateMarkdown: generateMarkdownForService
252
+ }
253
+ }
254
+ ]
255
+ ]
256
+ }
257
+ ```
258
+
259
+ **Function Arguments:**
260
+
261
+ | Argument | Type | Properties | Description |
262
+ |----------|------|----------|-------------|
263
+ | `service` | object | `id`, `name`, `version` | The service object you provided in the config |
264
+ | `markdown` | string | - | The default markdown for the service. Incase you want to preserve the default markdown you can use this argument to add to your own markdown. |
265
+ | `document` | object | OpenAPI.Document | The OpenAPI document object. |
266
+
267
+
268
+ </TabItem>
269
+ <TabItem value="Message Markdown Template">
270
+
271
+ #### Message
272
+
273
+ In this example we will override the default markdown for the message using our custom function. We will also preserve the default markdown for the message.
274
+
275
+ ```js title="eventcatalog.config.js"
276
+ // function to generate the markdown for the message
277
+ // You can include this in your config file or in a separate file and import it
278
+ const generateMarkdownForMessage = ({ message, markdown, document }) => {
279
+ return `# ${message.name}
280
+ This is the default markdown for the message
281
+ `;
282
+ }
283
+
284
+ // Your configuration
285
+ export default {
286
+ generators: [
287
+ [
288
+ '@eventcatalog/generator-openapi',
289
+ {
290
+ // ...rest of generator config
291
+ messages: {
292
+ generateMarkdown: generateMarkdownForMessage
293
+ }
294
+ }
295
+ ]
296
+ ]
297
+ }
298
+ ```
299
+
300
+ **Function Arguments:**
301
+
302
+ | Argument | Type | Properties | Description |
303
+ |----------|------|----------|-------------|
304
+ | `operation` | object | OpenAPI.Operation | The operation object from the OpenAPI document. |
305
+ | `markdown` | string | - | The default markdown for the message. Incase you want to preserve the default markdown you can use this argument to add to your own markdown. |
306
+
307
+ </TabItem>
308
+ </Tabs>
309
+
310
+
311
+
312
+
313
+
314
+
315
+ ## Need help?
316
+
317
+ If you have questions or need help, you can join our [Discord community](https://eventcatalog.dev/discord)
318
+ or refer to the [OpenAPI examples on GitHub](https://github.com/event-catalog/generators/tree/main/examples/generator-openapi).
319
+
320
+
321
+
322
+
323
+
324
+
325
+
326
+
327
+
328
+
329
+
330
+
331
+
332
+