Compare commits

...

941 Commits

Author SHA1 Message Date
Sidharth Vinod
4dd4997c4d chore: Bump version 2024-10-02 15:01:48 +05:30
Jiahao Guo
fc61512a0a [10] ci: upgrade to pnpm/action-setup@v4 to avoid CI failures
see: https://github.com/pnpm/action-setup/issues/135

(cherry picked from commit fde668a3a6)
2024-10-02 14:52:25 +09:00
Alois Klink
402abdf883 [10] fix: ban version v3.1.7 of DOMPurify
[DOMPurify v3.1.7][1] forbids the use of `<foreignElement>` for HTML
inside of an `<svg>` element, which breaks many mermaid diagrams.

It is likely that v3.1.8 will add a new option that will allow us to
re-enable this behaviour, but v3.1.7 definitely does not work.

(cherry picked from commit de2c05cd54)

[1]: https://github.com/cure53/DOMPurify/releases/tag/3.1.7

See: https://github.com/cure53/DOMPurify/issues/1002
Fix: https://github.com/mermaid-js/mermaid/issues/5904
2024-10-02 14:30:19 +09:00
Knut Sveidqvist
8d815f878c Lint fix 2024-05-14 13:00:45 +02:00
Knut Sveidqvist
dab26df9c4 Fix for proper handling of block-diagram labels 2024-05-14 12:55:39 +02:00
Knut Sveidqvist
c7fe9a6465 Fix for proper handling of block-diagram labels 2024-05-14 12:53:41 +02:00
Steph
4f26f3ae2e docs: Add blog post - Documentation Software (#5519)
Add blog post documentation software
2024-05-14 16:39:16 +09:00
Justin Greywolf
a536484408 Merge pull request #5495 from mermaid-js/update-mermaid-chart-page
DOCS: update Mermaid Chart page
2024-05-01 08:09:07 -07:00
Steph
76801ff564 update content 2024-04-29 14:12:55 -07:00
Sidharth Vinod
f2d3ac1e7b Merge pull request #5492 from mermaid-js/add-blog-post
DOCS: Add AI in Software Diagramming blog post
2024-04-27 11:12:15 +05:30
Steph
edad740e15 add ai blog post 2024-04-26 13:17:36 -07:00
Sidharth Vinod
a2e3b4ca06 Merge pull request #5456 from dudeofawesome/patch-1
📝🐛 fix schema link
2024-04-12 23:57:44 +05:30
Louis Orleans
909ad02a18 📝🐛 fix schema link
The original domain (`mermaid-js.github.io`) only redirects to the new domain (`mermaid.js.org`) from the root `/`. I've updated the link to point to the new domain directly.
2024-04-12 23:56:14 +05:30
Sidharth Vinod
4a930d2b5b Merge pull request #5455 from mermaid-js/update-latest-news
DOCS: update latest news
2024-04-12 09:25:08 +05:30
steph
4a19103891 update latest news section 2024-04-11 10:53:34 -07:00
Alois Klink
2d91aa0b06 Merge pull request #5425 from mermaid-js/add-blog-post
DOCS: add Turing machine blog post
2024-03-29 17:47:30 +00:00
Steph
aca0bebaf4 add Turing machine blog post 2024-03-28 12:50:10 -07:00
Alois Klink
46d20c9968 Merge pull request #5400 from mermaid-js/add-press-release
DOCS: Add Press Release
2024-03-22 00:12:59 +00:00
steph
de1b2c31a1 update link 2024-03-21 12:45:13 -07:00
steph
1f9cbe218f update announcement and blog pages 2024-03-21 12:37:05 -07:00
Sidharth Vinod
6502036be9 Merge pull request #5394 from mermaid-js/update-announcement-bar-link
DOCS: update Announcement bar link
2024-03-19 08:49:25 +05:30
Sidharth Vinod
f86da19362 Remove --force flag 2024-03-19 08:45:19 +05:30
Sidharth Vinod
b04e150dc1 Tweak editor.bash 2024-03-19 08:38:45 +05:30
Steph
1c0c374c29 update link 2024-03-18 14:32:26 -07:00
Sidharth Vinod
33287a63ad Support Firefox 2024-03-11 19:11:15 +05:30
Sidharth Vinod
3134a87e72 Merge pull request #5368 from mermaid-js/add-blog-posts
DOCS: add latest blog posts
2024-03-11 18:57:11 +05:30
Sidharth Vinod
447263ecc2 Merge pull request #5376 from mermaid-js/sidv/editableExamples
feat: Make the examples interactive in the documentation site
2024-03-11 17:59:58 +05:30
Sidharth Vinod
08a7f662ea Address review comments
Support ctrl+enter
Support mermaid-nocode
Use `contenteditable="plaintext-only"`

Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-03-11 17:03:26 +05:30
Sidharth Vinod
6422175ef2 Change run symbol 2024-03-11 14:56:37 +05:30
Sidharth Vinod
32ca0b97fc feat: Make the examples interactive in the documentation site.
Ctrl/Cmd + Enter and a run button is added.

The feature was first implemented in https://github.com/mermaid-js/mermaid/pull/5330.

This is a simplified version without introducing additional dependencies.

Co-authored-by: Anton <m@antonz.org>
2024-03-11 14:56:37 +05:30
Sidharth Vinod
244b161032 Add langium 2024-03-11 14:56:18 +05:30
Sidharth Vinod
cd3d560e8d Merge pull request #5372 from mermaid-js/sidv/updateNewDiagramDoc
Update new diagram doc to reflect focus on Langium
2024-03-08 23:12:51 +05:30
Sidharth Vinod
c0497d3413 Update new diagram doc to reflect focus on Langium
Mark JISON as deprecated.
2024-03-08 23:11:28 +05:30
Sidharth Vinod
e6d80c60fb Merge pull request #5370 from JackuB/docs/update-slack-integration
docs(integrations): update link to Mermaid app for Slack
2024-03-08 15:06:08 +05:30
Jakub Mikulas
8f457815e9 docs(integrations): update link to Mermaid app for Slack
Signed-off-by: Jakub Mikulas <jakub@mikul.as>
2024-03-08 10:13:52 +01:00
Steph
3926594c6a add latest blog posts 2024-03-07 13:02:16 -08:00
Sidharth Vinod
dbeb0a4720 @mermaid-js/mermaid-zenuml v0.2.0 2024-03-05 22:56:09 +05:30
Sidharth Vinod
da33867ad7 Draft release 2024-03-05 22:52:07 +05:30
Sidharth Vinod
539010c65c Merge pull request #5337 from mermaid-js/release/10.9.0
Release/10.9.0
2024-03-05 22:48:12 +05:30
Sidharth Vinod
cbe44a6cff v10.9.0 2024-03-05 22:47:16 +05:30
Sidharth Vinod
b077fedd4c Merge branch 'develop' into release/10.9.0
* develop:
  Update docs
  Lychee ignore chrome webstore
  Update link
  chore(deps): update all patch dependencies
  build(docs): vendor CSS dependencies
  chore(deps): update all minor dependencies
  Ran lint:fix
  Fix chrome webstore url causing 404
  Resolves E2E testing issues and issue #5343
2024-03-05 22:25:06 +05:30
Sidharth Vinod
5aa884f594 Merge pull request #5354 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2024-03-05 16:32:29 +00:00
Sidharth Vinod
5b3f320e5d Merge branch 'develop' into renovate/patch-all-patch 2024-03-05 21:30:12 +05:30
Sidharth Vinod
803e068630 Merge branch 'master' into develop
* master:
  Update link
2024-03-05 21:06:21 +05:30
renovate[bot]
3147bb34ee Update docs 2024-03-05 15:35:56 +00:00
Sidharth Vinod
8daa28dd8b Lychee ignore chrome webstore 2024-03-05 21:05:47 +05:30
Sidharth Vinod
231534a0db Update link 2024-03-05 21:03:21 +05:30
renovate[bot]
2c6d1cb1ce chore(deps): update all patch dependencies 2024-03-05 15:32:30 +00:00
Alois Klink
972ecba597 Merge pull request #5350 from maxstanley/vendor
Vendor docs CSS dependencies
2024-03-05 14:47:10 +00:00
Alois Klink
fe905cedd3 Merge branch 'develop' into pull/5350 2024-03-05 14:13:01 +00:00
Max Stanley
d8b878414b build(docs): vendor CSS dependencies 2024-03-05 14:03:53 +00:00
Sidharth Vinod
b3245742b3 Merge pull request #5355 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2024-03-05 07:58:26 +00:00
Sidharth Vinod
82fd371e38 Merge pull request #5352 from Abrifq/patch-5
Fix chrome webstore url causing 404
2024-03-05 13:28:01 +05:30
renovate[bot]
6c1228f039 chore(deps): update all minor dependencies 2024-03-04 01:06:44 +00:00
Arda Aydın
2537bf5310 Ran lint:fix
Wait, it complained about a table in markdown?
Why??
2024-03-02 18:41:14 +00:00
Arda Aydın
f4dffc8cdf Fix chrome webstore url causing 404
now it's "Too many redirects" like all of it's brethren 🙂
2024-03-02 21:17:28 +03:00
Sidharth Vinod
2ac4e08e75 Merge pull request #5344 from rowanfr/5343_E2E_Testing_Commit_ID
Resolves E2E testing issues and issue #5343
2024-02-29 20:52:51 +05:30
rowanfr
1b0b1227b6 Resolves E2E testing issues and issue #5343 2024-02-29 06:45:20 -06:00
Sidharth Vinod
38fcc2847b Add release version in docs 2024-02-29 08:41:15 +05:30
Sidharth Vinod
2caeb9db47 zenUML 0.2.0-rc.2 2024-02-29 08:38:47 +05:30
Sidharth Vinod
f9c359e70c v10.9.0-rc.2 2024-02-29 08:38:03 +05:30
Sidharth Vinod
24528c1426 Merge branch 'develop' into release/10.9.0
* develop:
  Fix spelling
  Update all minor dependencies
  Fix color and arrow for merge commit
  minor stylistic changes
  revert changes on existing e2e tests; add new e2e test for nez until keyword
  modify invalid e2e test for gantt chart
  fix minor mistake in parsing test
  adapt e2e tests to include new 'until' keyword in gantt chart
  add parsing unit test for after/until keywords
  address review comment on implementation; apply similar changes on existing impl of keyword 'after'
  fix bad expected values in gantt units tests
  implement until keyword in gantt charts
2024-02-29 08:37:42 +05:30
Sidharth Vinod
1857eb1dae Merge pull request #5152 from macherel/git-graph-merge-commit
Fix color and arrow for merge commit (gitGraph)
2024-02-29 08:29:23 +05:30
Sidharth Vinod
970a98acad Merge pull request #5224 from fzag/feature/3173_implement_until_keyword_in_gantt
Implement "until" keyword in gantt charts
2024-02-29 02:48:18 +00:00
Sidharth Vinod
619f097f1a Merge branch 'develop' into git-graph-merge-commit 2024-02-29 07:57:09 +05:30
Sidharth Vinod
5fe9f9ed57 Merge branch 'develop' into feature/3173_implement_until_keyword_in_gantt 2024-02-29 07:55:16 +05:30
Sidharth Vinod
df026c795d Bump @mermaid-js/mermaid-zenuml version to 0.2.0 2024-02-28 23:04:19 +05:30
Sidharth Vinod
077b1a5d8a Merge branch 'develop' into release/10.9.0
* develop:
  Fix community integrations
  Fix docs
  docs: Fix config
  Amend docs to document gitgraph parallel commits
  Added link to Blazorade Mermaid to the community integrations page.
2024-02-27 15:46:22 +05:30
Sidharth Vinod
e59f290546 Fix community integrations 2024-02-27 15:44:59 +05:30
Sidharth Vinod
9377d054a0 Merge branch 'pr/MikaBerglund/5333' into develop
* pr/MikaBerglund/5333:
  Fix docs
2024-02-27 15:43:55 +05:30
Sidharth Vinod
10bb9202a7 Merge pull request #5333 from Blazorade/docs/blazorade
Added link to Blazorade Mermaid to the community integrations page.
2024-02-27 15:43:21 +05:30
Sidharth Vinod
2c59ceb005 Fix docs 2024-02-27 15:41:58 +05:30
Sidharth Vinod
adf0ae5474 Merge branch 'develop' into pr/MikaBerglund/5333
* develop:
  Fix lint
  Use Yarn Add COREPACK_ENABLE_STRICT
  Updated chrome extension url's to new store
  add name only when present in rectData
  make name optional
  feat: add name field to the actors
  Changes to intro.md 1. Removed the Slack link 2. Updated the Discord invite link
  Changes to intro.md 1. Removed the Slack invite and left only the Discord invite
  Changes to intro.md 1. Added a link to the Discord server
  Updated contributions file
  #3358 Layoutfix for growing parent when children spans new rows due to updated columns widths
  Update docs
  Mermaid version 10.8.0
2024-02-27 15:41:29 +05:30
Sidharth Vinod
a9e67e4266 Fix spelling 2024-02-27 15:33:28 +05:30
Sidharth Vinod
0215e0173f Merge branch 'develop' into feature/3173_implement_until_keyword_in_gantt 2024-02-27 15:31:32 +05:30
Sidharth Vinod
31a287b7b0 Merge pull request #5301 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2024-02-27 10:00:50 +00:00
Sidharth Vinod
af93b72ec5 Merge pull request #5336 from NicolasCwy/chore/5324-add-docs-gitgraph-parallel-commits
Add gitgraph parallel commits to docs
2024-02-27 15:30:32 +05:30
Sidharth Vinod
370cd98d23 docs: Fix config 2024-02-27 15:29:41 +05:30
Sidharth Vinod
31686802b3 Bump version 2024-02-27 13:21:49 +05:30
Sidharth Vinod
b96eaed6f4 Fix store link 2024-02-27 12:54:56 +05:30
renovate[bot]
c842401aaa Update all minor dependencies 2024-02-27 07:22:07 +00:00
Sidharth Vinod
d163ca7e1b Merge pull request #5297 from Abrifq/patch-5
[Docs] Updated chrome extension url's to new store
2024-02-27 12:49:56 +05:30
Nicolas Chang
cbb715a44d Amend docs to document gitgraph parallel commits 2024-02-27 15:06:38 +08:00
Sidharth Vinod
af3d728a72 Merge branch 'develop' into feature/3173_implement_until_keyword_in_gantt 2024-02-27 12:35:38 +05:30
Sidharth Vinod
3093afe63e Merge pull request #5284 from ad1992/aakansha/actor-name
feat: add name field to the actors
2024-02-27 06:23:45 +00:00
Sidharth Vinod
a5a2ea1c92 Fix lint 2024-02-27 11:53:22 +05:30
Sidharth Vinod
197d808e33 Merge branch 'develop' into patch-5 2024-02-27 11:44:57 +05:30
Sidharth Vinod
9f8c87a1d8 Merge branch 'master' into develop
* master:
  Changes to intro.md 1. Removed the Slack link 2. Updated the Discord invite link
  Changes to intro.md 1. Removed the Slack invite and left only the Discord invite
  Changes to intro.md 1. Added a link to the Discord server
  Updated contributions file
  Update docs
  Mermaid version 10.8.0
2024-02-27 11:43:00 +05:30
Sidharth Vinod
69266bbfe6 Merge pull request #5332 from mermaid-js/sidv/installFix
Fix netlify deploy
2024-02-27 11:38:02 +05:30
Sidharth Vinod
4707fb27fa Use Yarn
Add COREPACK_ENABLE_STRICT
2024-02-27 11:33:24 +05:30
Mika Berglund
00bd208f18 Added link to Blazorade Mermaid to the community integrations page. 2024-02-27 00:15:56 +02:00
Sidharth Vinod
61c92f9df4 Bump node version 2024-02-26 21:32:55 +05:30
Sidharth Vinod
ed612827d8 Merge pull request #5298 from BaumiCoder/fixTableOfContent
Fix link to Contributors section in README
2024-02-26 21:23:33 +05:30
Sidharth Vinod
d4ff5f5c27 Merge pull request #5315 from FutzMonitor/updateTimelineMD
Updates Timeline Documentation
2024-02-26 21:22:13 +05:30
Sidharth Vinod
a4ba282dc0 Merge pull request #5304 from BaumiCoder/docs/replaceVersionPlaceholder
Replace version number placeholder
2024-02-26 21:13:48 +05:30
Sidharth Vinod
39d870d069 Merge branch 'develop' into updateTimelineMD 2024-02-26 21:13:21 +05:30
Sidharth Vinod
4e12157180 Merge pull request #5316 from BaumiCoder/LinkToWebhelp
Link to webhelp
2024-02-26 20:57:32 +05:30
Sidharth Vinod
e371d72e18 Add lcov to cspell 2024-02-26 20:57:09 +05:30
Sidharth Vinod
628cf79048 Merge pull request #5327 from bstordrup/Issue5325_UnableToStartMermaidContainer
Correcting path to docker-entrypoint.sh
2024-02-26 20:53:11 +05:30
Sidharth Vinod
ccfec58aeb Merge pull request #5322 from NicolasCwy/chore/5321-change-recommended-vitest-extension
Update recommended Vitest extension
2024-02-26 20:52:34 +05:30
Benny Tordrup
a57ac092f0 Correcting path to docker-entrypoint.sh 2024-02-26 14:31:59 +01:00
Nicolas Chang
6f3a2605c1 Update recommended Vitest extension 2024-02-26 10:05:49 +08:00
Michael Baumgartner
e79a08ee0f Replace mermaid-js.github.io links
Replace each link to mermaid-js.github.io with corresponding link
at the webhelp (/ website), using the redirects to get these links.
(The redirects are to the http:// sites. I replace it with the https://
links of course.)
2024-02-25 19:24:30 +01:00
Michael Baumgartner
77706216c9 Replace links to docs with links to webhelp
The docs are availabe as webhelp, which is a nicer viewer than
the plain markdown at GitHub. So a little search & replace:
- "(./docs" --> "https://mermaid.js.org"
  vim command ":%s/(.\/docs/(https:\/\/mermaid.js.org/g"
- ".md)" --> ".html)"
  vim command ":%s/.md)/.html)/g"
2024-02-25 18:58:48 +01:00
Michael Baumgartner
d9448e4a91 Link to contributing page on webhelp
The constributing page is not a plain markdown any more.
It is part of the generated webhelp, so link to this. Some of the links
were still to the symbolic link at the root of the repository.
2024-02-25 18:48:51 +01:00
futzmonitor
15b3647514 Changes to timeline.md
1. Added colons to all 'NOTES' for consistency.
2024-02-25 11:38:11 -05:00
futzmonitor
6d58c7504d Changes to timeline.md
1. Updates the Wikipedia citation to include a link.
2. Removed periods from documentation sections to be consistent (some had periods, some didn't)
3. Added a space to a coding example for spacing consistency.
2024-02-25 11:33:01 -05:00
Michael Baumgartner
81491f2e34 Merge branch 'develop' into docs/replaceVersionPlaceholder 2024-02-20 19:33:28 +01:00
Michael Baumgartner
77f76f52b5 Replace version number placeholder
The header of the section contains the version number for the feature,
so the warning box should contain the same version
2024-02-20 19:23:30 +01:00
Sidharth Vinod
70c8a3dde8 Merge pull request #5287 from BoDonkey/docs/add-apostrophecms-integration
Add new extension to integrations
2024-02-19 03:55:37 +00:00
Michael Baumgartner
762113d045 Fix link to Contributors section in README
The dashes are also part of the link to this section in the GitHub
webview and without the link does not work on GitHub.
Although, the additional dashes could not fix the link for other editors
(e.g. VSCodium with "Markdwn All in One" or an JetBrains IDE).
2024-02-17 19:25:17 +01:00
Abrifq
53599817a9 Updated chrome extension url's to new store 2024-02-17 20:13:38 +03:00
Bruno Macherel
4336b91dbd Fix color and arrow for merge commit 2024-02-16 17:12:39 +01:00
Robert Means
eaffe334c4 Fix CMS order 2024-02-16 05:28:29 -05:00
Sidharth Vinod
6be91bc3a8 Merge pull request #5286 from Jason3S/cspell
chore: Update CSpell configuration
2024-02-16 04:31:27 +00:00
Robert Means
551ccfc8ce Add new extension to integrations 2024-02-15 14:20:32 -05:00
Jason Dent
e54d0902c1 Use both British and American English spellings. 2024-02-15 17:04:09 +01:00
Jason Dent
36f056fd92 Update packages/mermaid/src/diagrams/sankey/parser/sankey.jison
Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-02-15 16:58:06 +01:00
Jason Dent
c3060548cf Update comment to link to replacement function. 2024-02-15 09:22:50 +01:00
Jason Dent
f3282e4dad chore: sort cspell dictionaries on commit 2024-02-14 23:32:15 +01:00
Jason Dent
4a7489a7b6 chore: Update cspell and fix issues
- covert `cSpell.json` to `cspell.config.yaml`
- break up the word list into multiple dictionary files
- fix spelling issues
- Enable spell checking code for non-test files
2024-02-14 23:17:44 +01:00
Aakansha Doshi
23dd7b2b10 add name only when present in rectData 2024-02-14 12:41:54 +05:30
Aakansha Doshi
bee88ac70e make name optional 2024-02-14 12:36:42 +05:30
Aakansha Doshi
1a8361d5c9 Merge branch 'develop' into aakansha/actor-name 2024-02-14 12:31:27 +05:30
Aakansha Doshi
e21643229e feat: add name field to the actors 2024-02-14 12:12:49 +05:30
Knut Sveidqvist
fe1cff3f55 Merge pull request #2885 from NicolasNewman/feature/2776_katex_math
Integrated Katex typesetting into flowcharts
2024-02-13 09:22:40 +00:00
Sidharth Vinod
4a4e96cfbd Merge branch 'develop' into feature/2776_katex_math 2024-02-13 10:56:46 +05:30
Sidharth Vinod
447c5a4b35 Merge branch 'develop' of github.com:mermaid-js/mermaid into develop
* 'develop' of github.com:mermaid-js/mermaid:
  chore(deps): update all patch dependencies
  chore(deps): update all minor dependencies
2024-02-12 16:45:00 +05:30
Sidharth Vinod
18589ddda4 Ignore BundlePhobia 2024-02-12 16:44:41 +05:30
Sidharth Vinod
267e142ac9 Merge pull request #5280 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2024-02-12 07:08:19 +00:00
renovate[bot]
9ee2d70c8c chore(deps): update all patch dependencies 2024-02-12 06:00:22 +00:00
Sidharth Vinod
a90a8ceea5 Merge pull request #5281 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2024-02-12 05:42:38 +00:00
renovate[bot]
ddd971eae4 chore(deps): update all minor dependencies 2024-02-12 01:15:54 +00:00
Sidharth Vinod
1406de5a6c Merge pull request #5268 from FutzMonitor/updateContribute
Update contribute
2024-02-09 13:44:26 +05:30
futzmonitor
ec7591bfa8 Changes to intro.md
1. Removed the Slack link
2. Updated the Discord invite link
2024-02-09 13:41:55 +05:30
futzmonitor
c45f39e819 Changes to intro.md
1. Removed the Slack invite and left only the Discord invite
2024-02-09 13:41:55 +05:30
futzmonitor
6682988403 Changes to intro.md
1. Added a link to the Discord server
2024-02-09 13:41:54 +05:30
Sidharth Vinod
9c6ad54681 Merge pull request #5263 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2024-02-06 14:32:40 +00:00
Nikolay Rozhkov
c7f5e01721 Merge pull request #5262 from thedustin/macos-docker-onboarding-issues
Fix macOS onboarding issues
2024-02-06 14:18:01 +00:00
renovate[bot]
19f150922b chore(deps): update all patch dependencies 2024-02-06 08:36:17 +00:00
Sidharth Vinod
be036ad414 Merge pull request #5269 from elgalu/fix-cutomers-typo
fix typo cutomers => customers
2024-02-06 08:19:23 +00:00
Leo Gallucci
9261715003 fix typo cutomers => customers
Signed-off-by: Leo Gallucci <leo.gallucci@zalando.de>
2024-02-05 18:09:25 +01:00
Sidharth Vinod
dee99d2c4a Merge pull request #5264 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2024-02-05 08:57:49 +00:00
renovate[bot]
5f0b514c92 chore(deps): update all minor dependencies 2024-02-05 00:13:27 +00:00
Dustin Breuer
337f07b865 Fix macOS onboarding issues 2024-02-04 18:30:51 +01:00
Don
b043d79cc4 Bump @zenuml/core and update render options in mermaid-zenuml (#5257)
* Update dependencies and render options in mermaid-zenuml

* update snpashots

* Revert "update snpashots"

This reverts commit e52022782b5565e3b95752bdf147cd8b2e0f03cd.
2024-02-04 18:20:02 +05:30
Sidharth Vinod
3b5cb020ea Merge pull request #5218 from mermaid-js/dependabot/npm_and_yarn/vite-4.5.2
build(deps-dev): bump vite from 4.4.12 to 4.5.2
2024-02-03 05:58:52 +00:00
Knut Sveidqvist
1c61ccabad Merge branch 'release/10.8.0' 2024-02-02 11:33:33 +01:00
Knut Sveidqvist
3fe7e2dfe8 Updated contributions file 2024-02-02 11:30:29 +01:00
Knut Sveidqvist
51e7444b94 #3358 Layoutfix for growing parent when children spans new rows due to updated columns widths 2024-02-02 11:10:42 +01:00
knsv
2fa9219353 Update docs 2024-02-02 07:56:48 +00:00
Knut Sveidqvist
f5555245f9 Mermaid version 10.8.0 2024-02-02 08:53:29 +01:00
Knut Sveidqvist
5c9857c4eb Merge pull request #5247 from mermaid-js/sidv/mindmapToTs
Convert Mindmap to TS
2024-02-01 13:23:13 +00:00
Christian
494ba45c5e Fixed Typo in ErrorRenderer.ts (#5256)
* Changes to flow.jison
1. Added support for the plus symbol.

* Changes to errorRenderer.ts
1. Fixed a typo where 'renering' instead 'rendering'

* Revert "Changes to flow.jison"

This reverts commit 28b9dc897f.
2024-02-01 17:32:52 +05:30
Ashish Jain
b38def6866 Merge pull request #5221 from mermaid-js/3358-blocks-diagram
Adding new diagram type - Block Diagram
2024-02-01 11:22:18 +00:00
Knut Sveidqvist
a7afc11079 #3358 Removing redundant file 2024-02-01 10:49:59 +01:00
Knut Sveidqvist
d3c5b02008 Merge branch '3358-blocks-diagram' of github.com:mermaid-js/mermaid into 3358-blocks-diagram 2024-02-01 10:41:11 +01:00
Knut Sveidqvist
16149abcc0 #3358 Fix after review 2024-02-01 10:40:39 +01:00
Ashish Jain
13d0b61757 Merge branch 'develop' into 3358-blocks-diagram 2024-01-31 15:08:09 +01:00
Sidharth Vinod
ebc59d8227 Merge branch 'develop' into feature/2776_katex_math 2024-01-31 15:21:13 +05:30
Sidharth Vinod
45f4d3d443 Merge branch 'develop' into sidv/mindmapToTs 2024-01-31 15:20:16 +05:30
Sidharth Vinod
33d45f639c Merge pull request #5254 from mermaid-js/chore/InterfaceNaming
chore: Add interface naming Convention
2024-01-31 09:49:59 +00:00
Sidharth Vinod
7503694453 Merge pull request #5241 from Ronid1/feature/4653-add_actor-top_class_to_sequence_diagram
Feature/4653 add actor-top class to sequence diagram
2024-01-31 09:15:18 +00:00
Sidharth Vinod
e9680e086e Fix selector 2024-01-31 14:27:46 +05:30
Knut Sveidqvist
cd7003e9c1 Merge branch '3358-blocks-diagram' of github.com:mermaid-js/mermaid into 3358-blocks-diagram 2024-01-31 09:55:13 +01:00
Sidharth Vinod
941d9d13d5 Merge branch 'develop' into feature/4653-add_actor-top_class_to_sequence_diagram 2024-01-31 14:22:26 +05:30
Knut Sveidqvist
4786cfb6aa #3358 Renaming of IOperation to ActionFun 2024-01-31 09:50:11 +01:00
Sidharth Vinod
7aa4466b69 chore: Add interface naming 2024-01-31 14:19:01 +05:30
Sidharth Vinod
2bfd5a9e2a Merge branch 'develop' into 3358-blocks-diagram
* develop:
  Update container
  Update container
  Remove pnpm cache
  Use `.node-version` file in workflows
  Remove node version from matrix
  Update to Node v20
  Update to Node v20
2024-01-31 14:11:53 +05:30
Sidharth Vinod
56da881ed4 Merge branch 'develop' into sidv/mindmapToTs
* develop:
  Update container
  Update container
  Remove pnpm cache
  Use `.node-version` file in workflows
  fix: Redirect of old URLs
  Remove node version from matrix
  Update to Node v20
  Update to Node v20
  fix lint
  add latest blog post
  update discord invite link
  remove holiday promo text
2024-01-31 14:10:51 +05:30
dependabot[bot]
a3364e72ff build(deps-dev): bump vite from 4.4.12 to 4.5.2
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.4.12 to 4.5.2.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v4.5.2/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v4.5.2/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-31 08:40:08 +00:00
Sidharth Vinod
aa50db8bf5 Merge pull request #5248 from mermaid-js/sidv/node20
Use node v20
2024-01-31 08:10:41 +00:00
Sidharth Vinod
e8db7a71e2 Update container 2024-01-31 11:35:07 +05:30
Sidharth Vinod
f00e7676b9 Update container 2024-01-31 11:32:55 +05:30
Sidharth Vinod
63ef228ed0 Remove pnpm cache 2024-01-31 09:42:33 +05:30
Knut Sveidqvist
6fce617284 3358 Adding types for blockArrowHelper 2024-01-30 17:48:46 +01:00
Sidharth Vinod
2a64834ecc Merge branch 'develop' into sidv/node20
* develop:
  fix: Redirect of old URLs
  fix lint
  add latest blog post
  update discord invite link
  remove holiday promo text
2024-01-30 22:10:23 +05:30
Knut Sveidqvist
7bcdea9bd1 #3358n Updated lockfile 2024-01-30 16:55:01 +01:00
Knut Sveidqvist
8fdf512b4c Merge branch 'develop' into 3358-blocks-diagram 2024-01-30 16:53:46 +01:00
knsv
dbcb80087c Update docs 2024-01-30 15:29:43 +00:00
Knut Sveidqvist
b99b1bfd0c #3358 Another set of review changes 2024-01-30 16:26:10 +01:00
Sidharth Vinod
fcffa6ca4e Merge branch 'develop' into feature/4653-add_actor-top_class_to_sequence_diagram 2024-01-30 20:51:52 +05:30
Sidharth Vinod
6fd69090ed Merge branch 'master' into develop
* master:
  fix: Redirect of old URLs
  fix lint
  add latest blog post
  update discord invite link
  remove holiday promo text
2024-01-30 20:50:30 +05:30
Sidharth Vinod
051ef598f6 Use .node-version file in workflows
Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-01-30 20:44:39 +05:30
Knut Sveidqvist
907006ff3d #3358 Some fixes 2024-01-30 16:07:19 +01:00
Knut Sveidqvist
df9b801b0e #3358 Some fixes 2024-01-30 16:05:16 +01:00
Sidharth Vinod
726d633dd3 Use config from defaultConfig
Co-authored-by: Reda Al Sulais <u.yokozuna@gmail.com>
2024-01-30 20:00:54 +05:30
Knut Sveidqvist
4a04ce6bf8 Update cypress/integration/rendering/block.spec.ts
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2024-01-30 14:49:14 +01:00
Knut Sveidqvist
010fc703eb Update packages/mermaid/src/diagrams/block/blockTypes.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-01-30 14:46:14 +01:00
Knut Sveidqvist
8f8ce2f142 Merge branch '3358-blocks-diagram' of github.com:mermaid-js/mermaid into 3358-blocks-diagram 2024-01-30 14:37:53 +01:00
Knut Sveidqvist
452cb83ad7 #3358 Review changes 2024-01-30 14:37:35 +01:00
Knut Sveidqvist
2f8f9dd341 Update packages/mermaid/src/diagrams/block/blockDB.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-01-30 14:36:38 +01:00
Knut Sveidqvist
4a14d997d1 Update packages/mermaid/src/diagrams/block/blockRenderer.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-01-30 14:18:58 +01:00
Knut Sveidqvist
10237976f3 Merge branch 'develop' into 3358-blocks-diagram 2024-01-30 13:21:47 +01:00
Sidharth Vinod
92e7c7b894 Merge pull request #5250 from mermaid-js/fix/DocsRedirect
fix: Redirect of old URLs
2024-01-30 14:59:48 +05:30
Sidharth Vinod
80c20a72b2 Remove MermaidConfigWithDefaults 2024-01-30 14:25:44 +05:30
Sidharth Vinod
2d92ffb085 fix: Redirect of old URLs 2024-01-30 13:41:47 +05:30
Knut Sveidqvist
4823cf5df4 Update packages/mermaid/src/diagrams/block/blockDB.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-01-30 08:52:59 +01:00
Knut Sveidqvist
dae8a13e8a Update packages/mermaid/src/defaultConfig.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-01-30 08:51:47 +01:00
Sidharth Vinod
0b087b71dc Merge branch 'develop' into feature/2776_katex_math 2024-01-30 12:57:04 +05:30
Sidharth Vinod
ea8d7ec5cc Merge branch 'develop' into feature/3173_implement_until_keyword_in_gantt 2024-01-30 12:56:36 +05:30
Sidharth Vinod
78f1631c8f Organize imports 2024-01-30 10:04:42 +05:30
Sidharth Vinod
ff6988e875 chore: Address review comments
Co-authored-by: Reda Al Sulais <u.yokozuna@gmail.com>
2024-01-30 09:51:40 +05:30
Ronid1
cddca04885 add actor-bottom to docs 2024-01-29 12:39:39 -08:00
Ronid1
f737c9f6f9 add actor-bottom class 2024-01-29 11:42:23 -08:00
Ronid1
7e86d03dc9 Merge branch 'develop' of https://github.com/mermaid-js/mermaid into feature/4653-add_actor-top_class_to_sequence_diagram 2024-01-29 11:28:01 -08:00
Knut Sveidqvist
bfa8111e14 #3358 Third set of changes after review 2024-01-29 17:32:27 +01:00
Knut Sveidqvist
5aab2ba1dd Merge branch '3358-blocks-diagram' of github.com:mermaid-js/mermaid into 3358-blocks-diagram 2024-01-29 16:25:02 +01:00
Knut Sveidqvist
37d7c7e2dd #3358 Second set of changes after review 2024-01-29 16:22:48 +01:00
Knut Sveidqvist
1965f69a10 Update packages/mermaid/src/schemas/config.schema.yaml
Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-01-29 15:29:26 +01:00
Sidharth Vinod
95dcd30324 Merge branch 'develop' into sidv/mindmapToTs 2024-01-29 16:53:21 +05:30
Sidharth Vinod
65bb82962f Merge branch 'develop' into sidv/node20
* develop:
  Remove node version from matrix
2024-01-29 16:47:45 +05:30
Sidharth Vinod
c84c7f52f9 Remove node version from matrix 2024-01-29 16:46:48 +05:30
Sidharth Vinod
cd04c430af Merge branch 'sidv/node20' of github.com:mermaid-js/mermaid into sidv/node20
* 'sidv/node20' of github.com:mermaid-js/mermaid:
  chore: Update docs
  Update demos/pie.html
  Update pie.html demo
  Fix typos in timeline syntax samples
2024-01-29 16:44:52 +05:30
Sidharth Vinod
dd553cb28f Remove node version from matrix 2024-01-29 16:44:44 +05:30
Sidharth Vinod
25d0de13a5 Merge branch 'develop' into sidv/node20 2024-01-29 16:38:27 +05:30
Sidharth Vinod
52bb31b98a Update to Node v20 2024-01-29 13:56:03 +05:30
Sidharth Vinod
a4a94fd6e2 Update to Node v20 2024-01-29 13:55:51 +05:30
Sidharth Vinod
cd8e354234 Merge pull request #5139 from sblom/patch-2
Fix typos in timeline syntax samples
2024-01-29 08:20:53 +00:00
Sidharth Vinod
d797365802 Merge pull request #5141 from JenningsWilliam/feature_update_pie_labeling
Accurate pie chart labeling for text alignment
2024-01-29 08:19:21 +00:00
Sidharth Vinod
73293efcf3 Merge branch 'develop' into patch-2 2024-01-29 13:29:04 +05:30
Sidharth Vinod
91ae282808 Merge branch 'develop' into feature_update_pie_labeling 2024-01-29 13:28:18 +05:30
Sidharth Vinod
4c551b2aca Lint 2024-01-29 12:35:39 +05:30
Sidharth Vinod
d21461fba0 Lint 2024-01-29 12:27:17 +05:30
Sidharth Vinod
b51d8ff7ba Convert svgDraw.ts 2024-01-29 12:16:21 +05:30
Sidharth Vinod
75ec719257 Rename svgDraw.js 2024-01-29 11:31:22 +05:30
Sidharth Vinod
13e052ff81 Fix styles.ts 2024-01-29 11:26:10 +05:30
Sidharth Vinod
bde6a9ff4f Rename styles.js 2024-01-29 11:21:42 +05:30
Sidharth Vinod
23d843b6d3 refactor: Remove db import from svgDraw 2024-01-29 11:21:12 +05:30
Sidharth Vinod
cffac848ea chore: Fix mindmapDb exports 2024-01-29 10:52:58 +05:30
Sidharth Vinod
9651d0c2da refactor: Fix types and imports 2024-01-29 10:45:47 +05:30
Sidharth Vinod
e1a23f10df chore: Fix config type 2024-01-28 21:43:03 +05:30
Sidharth Vinod
d346a77e3c Convert MindmapRenderer.ts 2024-01-28 16:04:42 +05:30
Sidharth Vinod
f069de5487 Convert MindmapDB.ts 2024-01-28 16:04:42 +05:30
Sidharth Vinod
ba0bddf417 Add MermaidConfigWithDefaults 2024-01-28 16:04:42 +05:30
Sidharth Vinod
f30c26485e Cleanup svgDraw.js 2024-01-28 16:04:41 +05:30
Sidharth Vinod
b71f4c7e54 Add MindmapDB type 2024-01-28 16:04:41 +05:30
Sidharth Vinod
e046da10c2 Convert mindmap.spec.js 2024-01-28 16:04:40 +05:30
Sidharth Vinod
12dc3d8373 Rename files to TS 2024-01-28 16:04:40 +05:30
Sidharth Vinod
bc332e3124 Fix boundMessage type 2024-01-27 22:37:24 +05:30
Franck Zagala
8d2605d537 minor stylistic changes 2024-01-27 16:33:57 +00:00
Franck Zagala
069a132fe1 revert changes on existing e2e tests; add new e2e test for nez until keyword 2024-01-27 16:05:35 +00:00
Sidharth Vinod
c5272d5279 Merge pull request #5236 from mermaid-js/fix/DompurifyHooks
fix: Dompurify Hooks
2024-01-27 15:11:54 +00:00
Franck Zagala
c1b5d527df modify invalid e2e test for gantt chart 2024-01-27 13:24:12 +00:00
Franck Zagala
cc4dfeab1a fix minor mistake in parsing test 2024-01-27 12:32:15 +00:00
Franck Zagala
280525b4b1 merge develop; resolve minor conflicts in docs/syntax/gantt.md 2024-01-27 12:27:34 +00:00
Franck Zagala
9fadf621a8 adapt e2e tests to include new 'until' keyword in gantt chart 2024-01-27 12:05:23 +00:00
Franck Zagala
fd3f1caff6 add parsing unit test for after/until keywords 2024-01-27 11:27:28 +00:00
Sidharth Vinod
3b0c5c3e60 fix: Message width 2024-01-27 15:34:53 +05:30
Sidharth Vinod
52d276b010 chore: Update katex 2024-01-27 12:54:15 +05:30
Sidharth Vinod
d1178c490b Merge branch 'develop' into pr/NicolasNewman/2885
* develop: (47 commits)
  Changes to gantt.html 1. Added a Gantt diagram that demonstrates to users that hashtages and semicolons can be added to titles, sections, and task data. Changes to gantt.spec.js 1. Added unit tests to ensure that semicolons and hashtags didn't break the functionality of the gantt diagram when used in titles, sections or task data. Changes to /parser/gantt.spec.js 1. Added rendering tests to ensure that semicolons and hashtags in titles, sections, and task data didn't break the rendering of Gantt diagrams.
  Lint
  Remove echo
  RefTest
  Echo event
  Update cypress
  Fix applitools
  docs: fix lint
  docs: move community to Discord
  Swap condition blocks to avoid using negation
  Reposition const declaration to ideal place
  Change repetitive values into consts
  docs: fix swimm link
  add sequenceDiagram link e2e test
  Fix Update Browserslist
  Use pnpm/action-setup@v2
  Fix lint
  Delete docs/syntax/gantt.html
  Add more detailed docs for Gantt tasks
  Update docs
  ...
2024-01-27 12:49:35 +05:30
Ronid1
9ee5667580 Merge branch 'develop' of https://github.com/mermaid-js/mermaid into feature/4653-add_actor-top_class_to_sequence_diagram 2024-01-26 14:08:13 -08:00
Ronid1
36c196e80b add test 2024-01-26 14:07:12 -08:00
Sidharth Vinod
7ca990d762 Merge branch 'develop' into fix/DompurifyHooks 2024-01-27 00:25:15 +05:30
Sidharth Vinod
91907fe0eb Merge pull request #5095 from FutzMonitor/issue1981
Changes to Gantt Parsers to allow hashes and semicolons to titles, sections, and task data.
2024-01-26 17:21:58 +00:00
Sidharth Vinod
6bf5571f96 chore: Update docs 2024-01-26 22:50:17 +05:30
Sidharth Vinod
8619a53a9c Update demos/pie.html 2024-01-26 22:48:12 +05:30
Sidharth Vinod
9bedfa2033 Merge pull request #5160 from vitorsss/fix/4212_actor_menus_sequence_diagram_popup
[Fix] Sequence diagram actor menu popup
2024-01-26 17:16:27 +00:00
FutzMonitor
59264a33d7 Changes to gantt.html
1. Added a Gantt diagram that demonstrates to users that hashtages and semicolons can be added to titles, sections, and task data.
Changes to gantt.spec.js
1. Added unit tests to ensure that semicolons and hashtags didn't break the functionality of the gantt diagram when used in titles, sections or task data.
Changes to /parser/gantt.spec.js
1. Added rendering tests to ensure that semicolons and hashtags in titles, sections, and task data didn't break the rendering of Gantt diagrams.
2024-01-26 11:48:48 -05:00
Ronid1
70d9f50fc9 add const for class name 2024-01-25 17:59:46 -08:00
Ronid1
b253cd65d4 update docs 2024-01-25 17:19:00 -08:00
Ronid1
f2f8d89a28 add actor-top class to rectangle actor and man actor 2024-01-25 17:16:09 -08:00
FutzMonitor
0b0f988180 Merge branch 'develop' into issue1981 2024-01-25 17:03:16 -05:00
Sidharth Vinod
1c200ee5bc perf: prevent adding multiple DOMPurify hooks
Currently, everytime `removeScript()` is called, the same DOMPurify
hooks are getting added again and again.

Co-authored-by: Alois Klink <alois@aloisklink.com>
2024-01-25 23:28:42 +05:30
Franck Zagala
099f580e52 address review comment on implementation; apply similar changes on existing impl of keyword 'after' 2024-01-24 09:30:21 +00:00
Sidharth Vinod
98c578da02 Merge pull request #5232 from mermaid-js/mermaid-chart-updates
Docs: Mermaid chart updates
2024-01-24 12:43:54 +05:30
steph
cbf7e6a880 fix lint 2024-01-23 22:17:55 -08:00
steph
8982e2f78c add latest blog post 2024-01-23 22:02:24 -08:00
steph
62ae072918 update discord invite link 2024-01-23 21:59:54 -08:00
steph
04f92e5b1c remove holiday promo text 2024-01-23 21:58:37 -08:00
Sidharth Vinod
6939cf52e6 Merge pull request #5228 from mermaid-js/updateCypress
UpdateCypress
2024-01-24 00:31:20 +05:30
Sidharth Vinod
ec79ac200c Lint 2024-01-23 23:53:48 +05:30
Sidharth Vinod
de03a017db Remove echo 2024-01-23 23:51:48 +05:30
Sidharth Vinod
42ad1f4fe4 RefTest 2024-01-23 23:49:52 +05:30
Sidharth Vinod
a01be16d27 Echo event 2024-01-23 23:38:21 +05:30
Sidharth Vinod
5c6c8d1135 Update cypress 2024-01-23 20:36:29 +05:30
Sidharth Vinod
493f238319 Fix applitools 2024-01-23 20:32:58 +05:30
Sidharth Vinod
17066aab97 Merge branch 'master' of github.com:mermaid-js/mermaid into develop
* 'master' of github.com:mermaid-js/mermaid:
  docs: fix lint
  docs: move community to Discord
  Delete docs/syntax/gantt.html
  Add more detailed docs for Gantt tasks
  Update docs
  Update packages/mermaid/src/docs/syntax/flowchart.md
  Update flowchart.md #5195
2024-01-23 19:55:53 +05:30
Sidharth Vinod
21c9397ec1 Merge pull request #5225 from Olegt0rr/discord
Update Slack community links to Discord
2024-01-23 19:54:53 +05:30
Oleg A
427bcaa3f6 docs: fix lint 2024-01-23 19:53:42 +05:30
Oleg A
8fad1f55e2 docs: move community to Discord 2024-01-23 19:53:41 +05:30
Sidharth Vinod
05e17c0bf0 Merge pull request #5161 from mathbraga/feature/5114_add_parallel_commit_config
Feature/5114 add parallel commit config
2024-01-23 04:40:24 +00:00
Sidharth Vinod
1612d3fabd Merge pull request #5127 from mathbraga/bug/5059_fix_external_connection_after_updating_edges
Bug/5059 fix external connection after updating edges
2024-01-23 02:35:01 +00:00
Matheus Braga
679f77dea5 Merge branch 'develop' into bug/5059_fix_external_connection_after_updating_edges 2024-01-22 20:22:50 -03:00
Matheus Braga
1bad612c51 Merge branch 'develop' into feature/5114_add_parallel_commit_config 2024-01-22 20:19:52 -03:00
Matheus B
81825f22f5 Swap condition blocks to avoid using negation 2024-01-22 20:09:20 -03:00
Matheus B
e668698b5c Reposition const declaration to ideal place 2024-01-22 19:56:25 -03:00
Franck Zagala
b44ec7dadd fix bad expected values in gantt units tests 2024-01-22 21:46:52 +00:00
Franck Zagala
cafe932cbc implement until keyword in gantt charts 2024-01-22 20:11:27 +00:00
Knut Sveidqvist
1629a91a25 Updated lockfile 2024-01-22 14:52:02 +01:00
Knut Sveidqvist
c85b24862d Merge branch 'develop' into 3358-blocks-diagram 2024-01-22 14:19:30 +01:00
Knut Sveidqvist
fe89b9510d #3358 Adjusting docs and a bug fix for nested blocks 2024-01-22 14:14:54 +01:00
Sidharth Vinod
7b624667fa Merge pull request #5219 from Yokozuna59/yokozuna/fix-broken-link
docs: fix swimm link
2024-01-22 08:03:56 +00:00
Matheus Braga
e7c52bbf59 Merge branch 'develop' into bug/5059_fix_external_connection_after_updating_edges 2024-01-21 13:20:24 -03:00
Matheus B
3e87412e97 Merge branch 'feature/5114_add_parallel_commit_config' of https://github.com/mathbraga/mermaid into feature/5114_add_parallel_commit_config 2024-01-20 21:13:44 -03:00
Matheus B
2401f334ec Merge branch 'develop' of https://github.com/mathbraga/mermaid into feature/5114_add_parallel_commit_config 2024-01-20 21:07:53 -03:00
Matheus B
4f60a27472 Change repetitive values into consts 2024-01-20 20:57:58 -03:00
Reda Al Sulais
2bbdd15031 docs: fix swimm link 2024-01-20 13:30:49 +03:00
Vitor Soares Silva
c226358f65 Merge branch 'develop' into fix/4212_actor_menus_sequence_diagram_popup 2024-01-19 16:24:54 -03:00
Vitor Soares Silva
8fd268d59b add sequenceDiagram link e2e test 2024-01-19 16:10:23 -03:00
Sidharth Vinod
b91624cb63 Merge pull request #5066 from Ronid1/docs/4974_reorder_integration_links
Docs/4974 reorder integration links
2024-01-19 18:10:58 +00:00
Sidharth Vinod
54f2452406 Merge branch 'develop' of github.com:mermaid-js/mermaid into develop
* 'develop' of github.com:mermaid-js/mermaid:
  Use pnpm/action-setup@v2
  Fix pnpm-lock by resetting it, sorry!
  chore: update browsers list
  Update update-browserlist.yml
  Update update-browserlist.yml to install pnpm
  Update update-browserlist.yml to fix deprecation and action fails
2024-01-19 23:47:14 +05:30
Sidharth Vinod
84a18a1858 Fix Update Browserslist 2024-01-19 23:47:07 +05:30
Sidharth Vinod
5b2a10e592 Merge pull request #5151 from Abrifq/patch-4
Update update-browserlist.yml to fix deprecation and action fails
2024-01-19 23:42:20 +05:30
Sidharth Vinod
8820c7baf1 Merge branch 'develop' into patch-4 2024-01-19 23:39:27 +05:30
Sidharth Vinod
1e70b3817e Use pnpm/action-setup@v2 2024-01-19 23:38:27 +05:30
Sidharth Vinod
1f37b6c91b Fix lint 2024-01-19 23:28:43 +05:30
Sidharth Vinod
c080522102 Merge branch 'develop' into issue1981 2024-01-19 23:18:53 +05:30
Sidharth Vinod
d95fdfee94 Merge branch 'develop' into pr/Ronid1/5066
* develop: (122 commits)
  Cleanup e2e.yml
  Ignore push events on merge queue
  Remove ::
  Remove ::
  Remove ::
  Debug
  Debug
  Remove spec selector
  Handle edge cases in E2E
  Always run combineArtifacts
  Fix error message
  Fix cache save
  Update cache key
  Notify users
  Flatten uploaded images
  Flatten uploaded images
  Use pixelmatch for image comparison
  Run all tests
  Fix lint
  Update lockfile
  ...
2024-01-19 23:15:52 +05:30
Vitor Soares Silva
d74025bd80 Merge branch 'develop' into fix/4212_actor_menus_sequence_diagram_popup 2024-01-19 13:40:30 -03:00
Sidharth Vinod
413de284ed Merge branch 'develop' into pr/NicolasNewman/2885
* develop: (130 commits)
  Cleanup e2e.yml
  Ignore push events on merge queue
  Remove ::
  Remove ::
  Remove ::
  Debug
  Debug
  Remove spec selector
  Handle edge cases in E2E
  Always run combineArtifacts
  Fix error message
  Fix cache save
  Update cache key
  Notify users
  Flatten uploaded images
  Flatten uploaded images
  Use pixelmatch for image comparison
  Run all tests
  Fix lint
  Update lockfile
  ...
2024-01-19 19:59:33 +05:30
Sidharth Vinod
d0224b23b0 Cleanup e2e.yml 2024-01-19 19:47:42 +05:30
Sidharth Vinod
6334516639 Merge branch 'combineImages' into develop
* combineImages:
  Ignore push events on merge queue
2024-01-19 19:47:12 +05:30
Sidharth Vinod
aadf32ab3e Ignore push events on merge queue 2024-01-19 19:45:55 +05:30
Sidharth Vinod
6424f823b2 Merge pull request #5213 from mermaid-js/combineImages
Optimise caching of test results
2024-01-19 14:09:03 +00:00
Sidharth Vinod
8bfb269b37 Remove :: 2024-01-19 19:33:59 +05:30
Sidharth Vinod
3935f6b389 Remove :: 2024-01-19 19:31:25 +05:30
Sidharth Vinod
f5dd24bce4 Remove :: 2024-01-19 19:29:45 +05:30
Knut Sveidqvist
d96425d19e #3358 Reviving arrow heads after merging develop 2024-01-19 14:57:45 +01:00
Sidharth Vinod
279e31bc55 Debug 2024-01-19 19:23:13 +05:30
Sidharth Vinod
f1fc874da8 Debug 2024-01-19 19:20:39 +05:30
Sidharth Vinod
a871a68f3c Remove spec selector 2024-01-19 19:05:06 +05:30
Sidharth Vinod
a964af67ec Handle edge cases in E2E 2024-01-19 19:04:25 +05:30
Sidharth Vinod
6f205f89b2 Always run combineArtifacts 2024-01-19 16:58:19 +05:30
Sidharth Vinod
35b3192c2b Fix error message 2024-01-19 16:58:19 +05:30
Sidharth Vinod
be4721b24d Fix cache save 2024-01-19 16:58:19 +05:30
Sidharth Vinod
a9a8a208a6 Update cache key 2024-01-19 16:58:19 +05:30
Sidharth Vinod
f58a86d747 Notify users 2024-01-19 16:58:19 +05:30
Sidharth Vinod
4ce5d07125 Flatten uploaded images 2024-01-19 16:58:18 +05:30
Sidharth Vinod
658af081ee Flatten uploaded images 2024-01-19 14:42:51 +05:30
Sidharth Vinod
fdfa917cdb Merge branch 'develop' into feature/5114_add_parallel_commit_config 2024-01-19 14:12:08 +05:30
Sidharth Vinod
46552faa2e Merge branch 'develop' into fix/4212_actor_menus_sequence_diagram_popup 2024-01-19 14:10:30 +05:30
Sidharth Vinod
1285e59080 Merge branch 'develop' into bug/5059_fix_external_connection_after_updating_edges 2024-01-19 13:18:45 +05:30
Sidharth Vinod
cb0ee5aa41 Use pixelmatch for image comparison 2024-01-19 13:17:14 +05:30
Sidharth Vinod
95ebb4aaec Merge branch 'develop' into bug/5059_fix_external_connection_after_updating_edges 2024-01-19 12:46:17 +05:30
Sidharth Vinod
97f9919250 Merge pull request #5210 from sidharthv96/sidv/e2e
E2E test
2024-01-19 12:24:41 +05:30
Sidharth Vinod
d6e738ac4c Run all tests 2024-01-19 12:21:51 +05:30
Sidharth Vinod
91a63933ec Merge branch 'develop' into sidv/e2e
* develop:
  Fix lint
2024-01-19 12:17:45 +05:30
Sidharth Vinod
448756ab54 Fix lint 2024-01-19 12:17:20 +05:30
Sidharth Vinod
7805e05495 Update lockfile 2024-01-19 12:15:01 +05:30
Sidharth Vinod
98782d3a1f Merge branch 'develop' into sidv/e2e 2024-01-19 12:11:45 +05:30
Sidharth Vinod
76dacf8e90 E2E test 2024-01-19 12:10:39 +05:30
Sidharth Vinod
681d3c3ed8 Merge pull request #5208 from sidharthv96/sidv/e2e
E2E Image comparison
2024-01-19 12:10:14 +05:30
Sidharth Vinod
d2c82c1802 Use cache to store snapshots 2024-01-19 12:06:53 +05:30
Sidharth Vinod
3852117581 Merge pull request #5194 from sorenisanerd/gantt-docs
Add more detailed docs for Gantt tasks
2024-01-19 09:35:33 +05:30
Sidharth Vinod
bf55d940b6 Delete docs/syntax/gantt.html 2024-01-19 09:34:21 +05:30
Soren L. Hansen
e0ee9b1bc0 Add more detailed docs for Gantt tasks 2024-01-19 09:34:20 +05:30
Sidharth Vinod
51aea90e9a Merge pull request #5196 from arukiidou/patch-1
Update flowchart.md - how to use font-awesome #5195
2024-01-19 09:24:32 +05:30
Sidharth Vinod
7918f96f94 Update docs 2024-01-19 09:22:38 +05:30
arukiidou
be8faae68c Update packages/mermaid/src/docs/syntax/flowchart.md
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2024-01-19 09:22:38 +05:30
arukiidou
04ebf0ddc9 Update flowchart.md #5195 2024-01-19 09:22:38 +05:30
Matheus Braga
223c8c92cb Merge branch 'develop' into bug/5059_fix_external_connection_after_updating_edges 2024-01-18 20:59:24 -03:00
Knut Sveidqvist
b4dece88e9 Merge branch '3358-blocks-diagram' of github.com:mermaid-js/mermaid into 3358-blocks-diagram 2024-01-18 18:03:58 +01:00
Knut Sveidqvist
d075766760 #3358 Doc updates after viewing the page 2024-01-18 18:03:37 +01:00
Sidharth Vinod
8754b9dd5d Merge pull request #5150 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2024-01-18 17:03:11 +00:00
renovate[bot]
fb7cd9ca40 chore(deps): update all patch dependencies 2024-01-18 16:17:34 +00:00
knsv
5553cbbb22 Update docs 2024-01-18 16:10:57 +00:00
Sidharth Vinod
858d512766 Merge pull request #5200 from mermaid-js/dependabot/npm_and_yarn/follow-redirects-1.15.5
build(deps-dev): bump follow-redirects from 1.15.2 to 1.15.5
2024-01-18 16:10:27 +00:00
Sidharth Vinod
781065dee4 Merge pull request #5205 from mathbraga/revert-5197-revert-5041-feature/4935_subgraph-title-margin-config-option
Revert "Revert 5041 feature/4935 subgraph title margin config option"
2024-01-18 16:10:05 +00:00
Knut Sveidqvist
bf64509216 Merge branch 'develop' into 3358-blocks-diagram 2024-01-18 17:07:34 +01:00
Sidharth Vinod
2525966853 Merge pull request #5132 from nirname/docs/2910_update-contributing-guidelines
Contribution documentation improvements
2024-01-18 15:59:47 +00:00
Knut Sveidqvist
173ba2ecf5 Final console.log removed 2024-01-18 15:48:40 +01:00
Knut Sveidqvist
8e147206d8 #3358 Removed logging som type fixes 2024-01-18 15:44:16 +01:00
Knut Sveidqvist
1230da7fc7 #3358 Some cleanup 2024-01-18 15:31:14 +01:00
Knut Sveidqvist
a0d328d734 #3358 Removed logging, fixed som tests 2024-01-18 14:28:14 +01:00
Knut Sveidqvist
bbc7fe6163 #3358 Fix for width of composite blocks 2024-01-18 10:22:09 +01:00
Alois Klink
8788b49351 Merge pull request #5192 from murdoa/bug/5191_fix_gantt_chart_padding_docs
Updated gantt chart docs to show all config options
2024-01-17 18:55:03 +00:00
Matheus Braga
7a8a1315c0 Merge branch 'develop' into feature/5114_add_parallel_commit_config 2024-01-16 21:14:17 -03:00
Matheus B
9213afbacd Add tests for gitgraphs with unconnected branches 2024-01-16 20:55:42 -03:00
Matheus B
c77a6e156c Include logic for gitgraph with unconnected branches 2024-01-16 20:54:26 -03:00
Matheus B
02246f64d2 Include undefined on findClosestParent return types and update the function 2024-01-16 20:01:03 -03:00
Matheus B
bf1edd99f9 Remove unnecessary argument on findClosestParent call 2024-01-16 19:37:52 -03:00
Matheus B
6f09bc7dc7 Use already defined const instead of method call 2024-01-16 19:34:16 -03:00
Matheus B
96ac2369b6 Change string concatenation to template literal 2024-01-16 15:36:31 -03:00
Matheus Braga
8c7edebe93 Revert "Revert 5041 feature/4935 subgraph title margin config option" 2024-01-16 13:21:31 -03:00
Nikolay Rozhkov
36fdff8378 Merge branch 'develop' into docs/2910_update-contributing-guidelines 2024-01-15 13:17:47 +03:00
dependabot[bot]
0e7e597384 build(deps-dev): bump follow-redirects from 1.15.2 to 1.15.5
Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.5.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.2...v1.15.5)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-01-15 09:18:38 +00:00
Sidharth Vinod
dc857f804e Draft release on master 2024-01-15 14:47:03 +05:30
Sidharth Vinod
0bd2340a33 Merge pull request #5188 from mermaid-js/release/10.7.0
Release/10.7.0
2024-01-15 14:34:14 +05:30
Sidharth Vinod
d972ddd932 docs: Add release version 2024-01-15 14:27:48 +05:30
Sidharth Vinod
54307bb0f4 Merge branch 'develop' of github.com:mermaid-js/mermaid into release/10.7.0
* 'develop' of github.com:mermaid-js/mermaid:
  Revert "fix: render the participants in same order as they are created"
  Revert "Feature/4935 subgraph title margin config option"
  Update integrations-community.md (Add Codemia to the list of productivity tools using Mermaid.)
2024-01-15 13:55:04 +05:30
Sidharth Vinod
b3fa9167a0 Merge branches 'master' and 'release/10.7.0' of github.com:mermaid-js/mermaid into release/10.7.0
* 'master' of github.com:mermaid-js/mermaid:
  add inadvertent tracking removal
  update announcement bar

* 'release/10.7.0' of github.com:mermaid-js/mermaid:
2024-01-15 13:39:25 +05:30
Sidharth Vinod
7508d9adc5 Merge pull request #5198 from mermaid-js/revert-5017-bug/4946-fix-svg-order-sequence-participant
Revert "fix: render the participants in same order as they are created"
2024-01-15 07:56:39 +00:00
Sidharth Vinod
d91b3ce857 Merge pull request #5197 from mermaid-js/revert-5041-feature/4935_subgraph-title-margin-config-option
Revert 5041 feature/4935 subgraph title margin config option
2024-01-15 07:52:49 +00:00
Sidharth Vinod
11542b3b5d Revert "fix: render the participants in same order as they are created" 2024-01-15 13:22:00 +05:30
Sidharth Vinod
b46da49f85 Revert "Feature/4935 subgraph title margin config option" 2024-01-15 13:08:58 +05:30
Sidharth Vinod
0e105afbf9 Fix typo 2024-01-15 12:55:28 +05:30
Nikolay Rozhkov
bafb991a35 Run dev docs without npx 2024-01-14 01:07:37 +03:00
Nikolay Rozhkov
385bf328c2 Remove npx completely from run script 2024-01-14 01:05:47 +03:00
nirname
3290c38260 Update docs 2024-01-13 20:41:27 +00:00
Nikolay Rozhkov
621d6cbda1 Fix linters 2024-01-13 23:38:11 +03:00
Nikolay Rozhkov
f6b321d769 Removed volta requirement, leave pnpm only 2024-01-13 15:19:36 +03:00
Abrifq
3fb6acbf8f Fix pnpm-lock by resetting it, sorry! 2024-01-12 23:50:35 +03:00
Abrifq
cbeee51108 Merge branch 'develop' into patch-4 2024-01-12 23:42:18 +03:00
Alois Klink
5e61867c89 Merge pull request #5193 from mermaid-js/v3-announcement-bar
DOCS: update announcement bar
2024-01-12 16:20:32 +00:00
Steph
d6d465d207 add inadvertent tracking removal 2024-01-12 07:54:19 -08:00
steph
c96cc21692 update announcement bar 2024-01-11 22:42:09 -08:00
Nikolay Rozhkov
a3092fc174 Fixed dead link 2024-01-12 02:00:30 +03:00
Nikolay Rozhkov
26f6aec442 build 2024-01-12 01:57:13 +03:00
Nikolay Rozhkov
21ecc28b40 Merge branch 'develop' into docs/2910_update-contributing-guidelines 2024-01-12 01:41:00 +03:00
nirname
374e788e81 Update docs 2024-01-11 22:35:39 +00:00
Nikolay Rozhkov
7219d604a9 Updated contributing docs after review, minor fixes 2024-01-12 01:32:07 +03:00
murdoa
e52fcd0bdd Updated gantt chart docs to show all config options 2024-01-11 22:24:50 +00:00
Steph
1c43e8e15c Merge pull request #5189 from markqian/develop
Update integrations-community.md (Add Codemia to the list of productivity tools using Mermaid)
2024-01-11 18:10:58 +00:00
Mark Qian
e7d239b579 Update integrations-community.md (Add Codemia to the list of productivity tools using Mermaid.) 2024-01-11 12:09:53 -05:00
Sidharth Vinod
904a200620 Merge branch 'develop' into release/10.7.0
* develop:
  update verbiage
  update verbiage
2024-01-11 14:32:16 +05:30
Sidharth Vinod
3e5b395792 v10.7.0 2024-01-11 14:31:57 +05:30
Sidharth Vinod
6ac8523f78 Merge pull request #5169 from mermaid-js/open-arrows
DOCS: update Flowchart page
2024-01-11 05:41:16 +00:00
Sidharth Vinod
6d1a38d2ff 10.6.2-rc.3 2024-01-11 10:27:26 +05:30
Sidharth Vinod
85e7010689 Merge branch 'develop' into release/10.6.2
* develop:
  docs: Remove broken integration
2024-01-11 10:25:42 +05:30
Sidharth Vinod
505689de39 docs: Remove broken integration 2024-01-11 10:25:17 +05:30
Sidharth Vinod
26bab802c7 Merge branch 'develop' into release/10.6.2
* develop: (24 commits)
  chore: Minor cleanup of imperativeState
  add jetbrains blog post
  additional updates
  update latest news pages
  fix addl broken link
  fix link
  build: use `tsx` instead of `ts-node-esm`
  verbiage updates
  fix: replace functional approaches with oop
  feat: Track outbound links in plausible
  update getting started page
  add blog post
  chore: Update promo link
  docs: Holiday promo v2
  Update packages/mermaid/src/docs/.vitepress/components/TopBar.vue
  update announcements page
  update announcement bar verbiage
  chore: fix autogen docs
  chore(sequence): Update packages/mermaid/src/docs/syntax/sequenceDiagram.md
  chore(sequence): update doc for actors/participant creation/deletion fix
  ...
2024-01-11 10:23:24 +05:30
Sidharth Vinod
1d4bb50b32 Merge branch 'develop' of github.com:mermaid-js/mermaid into develop
* 'develop' of github.com:mermaid-js/mermaid:
  chore: Minor cleanup of imperativeState
  fix: replace functional approaches with oop
  chore: fix autogen docs
  chore(sequence): Update packages/mermaid/src/docs/syntax/sequenceDiagram.md
  chore(sequence): update doc for actors/participant creation/deletion fix
  chore: remove unused e2e tests file
  chore: add e2e test that shows db cleanup problem
  chore: add e2e test that shows db cleanup problem
  fix: add imperativeState and replace sequenceDb global variables with it
2024-01-11 10:23:04 +05:30
Sidharth Vinod
2516b20efc Merge branch 'master' into develop
* master:
  add jetbrains blog post
  additional updates
  update latest news pages
  fix addl broken link
  fix link
  build: use `tsx` instead of `ts-node-esm`
  verbiage updates
  feat: Track outbound links in plausible
  update getting started page
  add blog post
  chore: Update promo link
  docs: Holiday promo v2
  Update packages/mermaid/src/docs/.vitepress/components/TopBar.vue
  update announcements page
  update announcement bar verbiage
2024-01-11 10:22:25 +05:30
Sidharth Vinod
977a3f2246 Merge branch 'develop' into release/10.6.2
* develop: (22 commits)
  chore(deps): update all minor dependencies
  adds corresponding change in docs/ecosystem
  Adds Unison programming language to community integrations list
  Fixed parser/tests
  Update docs
  Update classDiagram.md
  Update classDiagram.md
  Update docs
  Update packages/mermaid/src/diagrams/class/classDb.ts
  Update packages/mermaid/src/docs/syntax/classDiagram.md
  Update packages/mermaid/src/diagrams/class/classDb.ts
  chore(deps): update all minor dependencies
  Update generics docs
  Update docs
  Address potential undefined
  refactor: Move maxEdges out of flowchart config.
  refactor: Move maxEdges out of flowchart config.
  chore: Add maxEdges to secure list
  Update packages/mermaid/src/diagrams/class/classDb.ts
  Update docs
  ...
2024-01-11 10:19:00 +05:30
Sidharth Vinod
54446f1ec5 Merge pull request #4941 from rflban/fix/1294_exhaustive-clear-sequenceDb-variables
fix/1294_exhaustive-clear-sequenceDb-variables
2024-01-11 04:48:36 +00:00
Sidharth Vinod
1b20fe9723 Merge branch 'develop' into pr/rflban/4941
* develop: (200 commits)
  chore(deps): update all minor dependencies
  adds corresponding change in docs/ecosystem
  Adds Unison programming language to community integrations list
  Fixed parser/tests
  Update docs
  Update classDiagram.md
  Update classDiagram.md
  Update docs
  Update packages/mermaid/src/diagrams/class/classDb.ts
  Update packages/mermaid/src/docs/syntax/classDiagram.md
  Update packages/mermaid/src/diagrams/class/classDb.ts
  chore(deps): update all minor dependencies
  Update generics docs
  Update docs
  Address potential undefined
  refactor: Move maxEdges out of flowchart config.
  refactor: Move maxEdges out of flowchart config.
  chore: Add maxEdges to secure list
  Update docs
  Update NiceGuy.io links in integrations-community.md
  ...
2024-01-11 09:44:40 +05:30
Sidharth Vinod
0ac339494f chore: Minor cleanup of imperativeState 2024-01-11 09:42:56 +05:30
Sidharth Vinod
34e0942fa2 Merge pull request #5172 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2024-01-10 17:10:14 +00:00
Sidharth Vinod
2b3dee6e45 Merge pull request #5180 from rlmark/develop
Adds Unison programming language to community integrations list
2024-01-10 17:09:24 +00:00
renovate[bot]
8383b1b9bc chore(deps): update all minor dependencies 2024-01-10 15:44:22 +00:00
Rebecca Mark
303e5be16c adds corresponding change in docs/ecosystem 2024-01-09 12:31:35 -08:00
Knut Sveidqvist
1d1875718d #3358 Sieblinmg height alignment 2024-01-08 15:48:59 +01:00
Knut Sveidqvist
7043892e87 #3358 Fix for layout where a siebling has wider siize 2024-01-08 14:03:42 +01:00
Knut Sveidqvist
809c450164 #3358 Support for adding tests and fixed issues for some shapes 2024-01-08 11:49:34 +01:00
Knut Sveidqvist
818cb2fd76 #3358 Adding support for style statements 2024-01-05 20:56:57 +01:00
Nikolay Rozhkov
e628f64a93 Empty 2024-01-05 21:22:56 +03:00
nirname
be7c6377ca Update docs 2024-01-05 18:08:31 +00:00
Nikolay Rozhkov
5f9b965be3 Linters 2024-01-05 21:05:10 +03:00
Nikolay Rozhkov
6d5f33856c Fixed redirects 2024-01-05 19:33:15 +03:00
Nikolay Rozhkov
e0bd684248 Removed duplicated docs, keep community folder name 2024-01-05 18:02:13 +03:00
Nikolay Rozhkov
17312a0232 Cleanup 2024-01-05 17:37:34 +03:00
nirname
a05aba4cc9 Update docs 2024-01-05 14:19:54 +00:00
Nikolay Rozhkov
3c27f46c57 Fixed dead links 2024-01-05 17:16:07 +03:00
Knut Sveidqvist
275e01acba #3358 Adding support for classDef and class statements 2024-01-05 15:13:15 +01:00
nirname
9ccb340d63 Update docs 2024-01-05 13:56:36 +00:00
Nikolay Rozhkov
9aaf63139a Removed unused files 2024-01-05 16:53:31 +03:00
Nikolay Rozhkov
67dde70bec Fixes 2024-01-05 16:36:12 +03:00
Rebecca Mark
54db85bfea Adds Unison programming language to community integrations list 2024-01-04 13:27:02 -08:00
Knut Sveidqvist
72135c294e #3358 Edge labels 2024-01-04 16:28:13 +01:00
Knut Sveidqvist
d0eca268ad #3358 Multiple arrows 2024-01-04 16:05:19 +01:00
Knut Sveidqvist
2ed4469029 #3358 Adding arrows to rendering 2024-01-04 14:15:30 +01:00
Nikolay Rozhkov
98cf63ebb2 Merge branch 'develop' into docs/2910_update-contributing-guidelines 2024-01-04 04:14:18 +03:00
nirname
a32e72b660 Update docs 2024-01-04 01:12:59 +00:00
Nikolay Rozhkov
e7824f05cb Fixes for tutorials link 2024-01-04 04:07:56 +03:00
nirname
e2fd5ecd02 Update docs 2024-01-04 01:00:15 +00:00
Nikolay Rozhkov
a7d0d414b2 Small reorganizing 2024-01-04 03:56:45 +03:00
nirname
8edf96fe1c Update docs 2024-01-04 00:41:07 +00:00
Nikolay Rozhkov
807a5bfab4 Batch of small improvements for the documentation 2024-01-04 03:37:47 +03:00
Steph
5cec92ceb3 update verbiage 2023-12-28 11:53:04 -08:00
Steph
44dcac7501 update verbiage 2023-12-28 11:34:46 -08:00
Matheus B
c50a82a60e Build config types 2023-12-22 21:52:19 -03:00
Matheus Braga
f5ef0b600e Merge branch 'develop' into bug/5059_fix_external_connection_after_updating_edges 2023-12-22 21:49:21 -03:00
Matheus B
41f3f9fb32 Fix linter issues 2023-12-22 21:48:19 -03:00
Matheus B
46583cf4eb Merge branch 'develop' into feature/5114_add_parallel_commit_config 2023-12-22 21:32:20 -03:00
Matheus B
eb3e924c44 Add tests for gitGraph with parallel commits 2023-12-22 21:11:50 -03:00
Matheus B
222c46e7f0 Implement support for parallel commits config 2023-12-22 21:08:15 -03:00
Matheus B
00ac6ccb37 Add parallelCommits config option for gitGraphs 2023-12-22 20:42:24 -03:00
Vitor Soares Silva
e6bd1ae9dc fix sequence diagram popup 2023-12-22 11:30:24 -03:00
Steph
5073cfaea2 Merge pull request #5158 from mermaid-js/latest-blog
Docs: add latest blog post - JetBrains extension
2023-12-21 08:08:48 -08:00
Steph
749db745d0 add jetbrains blog post 2023-12-20 16:47:43 -08:00
nirname
d54d13ef28 Update docs 2023-12-21 00:44:22 +00:00
Nikolay Rozhkov
dfa0ad5b7a Refined contribution guide again 2023-12-21 03:41:21 +03:00
Justin Greywolf
60280361b0 Merge pull request #5111 from mermaid-js/2408-support-style-for-class
Added functionality to support style keyword
2023-12-20 15:10:14 +00:00
Ronid1
8e6f5bbdb1 Merge branch 'docs/4974_reorder_integration_links' of https://github.com/Ronid1/mermaid into docs/4974_reorder_integration_links 2023-12-19 18:30:20 -08:00
Ronid1
8002d9e2eb Merge branch 'develop' of https://github.com/mermaid-js/mermaid into docs/4974_reorder_integration_links 2023-12-19 18:17:58 -08:00
Steph
f02114eaab Merge pull request #5112 from mermaid-js/update-getting-started
Docs: update Getting Started page
2023-12-19 12:56:03 -08:00
Steph
2469419070 additional updates 2023-12-19 12:16:01 -08:00
nirname
97ee5a8488 Update docs 2023-12-19 01:36:43 +00:00
Nikolay Rozhkov
d2b9240a22 Simplify things 2023-12-19 04:33:38 +03:00
nirname
37829696d8 Update docs 2023-12-19 00:59:26 +00:00
Nikolay Rozhkov
2705c0de03 Different fixes 2023-12-19 03:56:16 +03:00
nirname
5b58883db8 Update docs 2023-12-18 23:58:33 +00:00
Nikolay Rozhkov
3bc39409e5 Formatting 2023-12-19 02:55:20 +03:00
Nikolay Rozhkov
2f3f76fa24 Contribution guidelines rework 2023-12-19 02:48:22 +03:00
Nikolay Rozhkov
7b6764da20 Merge branch 'develop' into docs/2910_update-contributing-guidelines 2023-12-19 00:55:46 +03:00
Nikolay Rozhkov
f66f4f438f Use deep outline for the whole documentation website 2023-12-19 00:54:33 +03:00
Matheus Braga
ddd6e9ac73 Merge branch 'develop' into bug/5059_fix_external_connection_after_updating_edges 2023-12-18 17:12:44 -03:00
Abrifq
31578ae72d chore: update browsers list 2023-12-18 18:28:37 +00:00
Arda Aydın
5d70b8922d Update update-browserlist.yml 2023-12-18 21:27:19 +03:00
Arda Aydın
26956bf128 Update update-browserlist.yml to install pnpm
this feels like a disgusting fix, not gonna lie
2023-12-18 21:22:52 +03:00
Arda Aydın
11aa7a7052 Update update-browserlist.yml to fix deprecation and action fails 2023-12-18 20:59:02 +03:00
Justin Greywolf
2b4940d67d Merge branch '2408-support-style-for-class' of https://github.com/mermaid-js/mermaid into 2408-support-style-for-class 2023-12-18 06:27:30 -08:00
Justin Greywolf
c5220bd92d Fixed parser/tests 2023-12-18 06:27:10 -08:00
Nikolay Rozhkov
0506ba872a Fixed linters 2023-12-17 13:35:49 +03:00
Steph
4a6f8a62c5 Merge pull request #5147 from mermaid-js/update-latest-news
Docs: Update latest news
2023-12-14 12:12:41 -08:00
Steph
35224e5fe2 update latest news pages 2023-12-14 10:14:46 -08:00
jgreywolf
7ec5bdcca4 Update docs 2023-12-14 14:52:40 +00:00
Justin Greywolf
1babceb63c Update classDiagram.md 2023-12-14 06:48:13 -08:00
Justin Greywolf
237518ba3b Update classDiagram.md 2023-12-14 06:47:37 -08:00
William Jennings
7e6fd1ebe2 Update pie.html demo 2023-12-12 13:53:25 -08:00
Scott Blomquist
5e1f0c620a Fix typos in timeline syntax samples 2023-12-12 12:48:07 -08:00
Steph
d8e26dcb17 Merge pull request #5124 from mermaid-js/verbiage-updates
Docs: Ecosystem section pages - verbiage updates
2023-12-11 13:08:46 -08:00
Steph
aaea8cf45e fix addl broken link 2023-12-11 13:02:02 -08:00
Steph
97e07f8473 fix link 2023-12-11 12:31:22 -08:00
Alois Klink
3a816e7298 Merge branch 'chore/use-tsx-instead-of-ts-node-esm' into verbiage-updates 2023-12-11 16:55:24 +00:00
Alois Klink
41a9ac953a build: use tsx instead of ts-node-esm
`ts-node-esm` v10.9.1 is not compatible with Node.JS v18.19.0.

(cherry picked from commit 4a7e4a3bcb)
2023-12-11 16:55:06 +00:00
Justin Greywolf
a71bdbd2bb Merge branch 'develop' into 2408-support-style-for-class 2023-12-11 04:56:11 -08:00
jgreywolf
70b4a374cd Update docs 2023-12-11 12:48:49 +00:00
Justin Greywolf
668bf327d5 Update packages/mermaid/src/diagrams/class/classDb.ts
Co-authored-by: Alois Klink <alois@mermaidchart.com>
2023-12-11 04:45:48 -08:00
Justin Greywolf
3dce04e0a9 Update packages/mermaid/src/docs/syntax/classDiagram.md
Co-authored-by: Alois Klink <alois@mermaidchart.com>
2023-12-11 04:45:16 -08:00
Justin Greywolf
24957f44df Update packages/mermaid/src/diagrams/class/classDb.ts
Co-authored-by: Alois Klink <alois@mermaidchart.com>
2023-12-11 04:44:53 -08:00
Sidharth Vinod
6e64556326 Merge pull request #5130 from mermaid-js/update-generics-documentation
Update generics docs
2023-12-11 04:55:43 +00:00
Sidharth Vinod
b7fa22d80c Merge pull request #5131 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2023-12-11 04:54:48 +00:00
Nikolay Rozhkov
01908b1278 Development Into planning 2023-12-11 05:22:58 +03:00
Nikolay Rozhkov
57f0a3aa8e Contribution documentation improvements 2023-12-11 05:08:42 +03:00
renovate[bot]
f1a10d11c3 chore(deps): update all minor dependencies 2023-12-11 01:09:36 +00:00
Justin Greywolf
5a26edf6c0 Update generics docs 2023-12-10 17:01:36 -08:00
jgreywolf
b92b344844 Update docs 2023-12-10 21:28:26 +00:00
Justin Greywolf
b51ca4fb15 Address potential undefined 2023-12-10 13:25:16 -08:00
Justin Greywolf
3bb005b973 Merge branch 'develop' into 2408-support-style-for-class 2023-12-10 13:18:58 -08:00
Sidharth Vinod
d91934b219 comment out skipped test 2023-12-10 22:38:50 +05:30
Sidharth Vinod
9f061c5eba Merge pull request #5086 from mermaid-js/sidv/5042_maxEdges
feat #5042: Add `flowchart.maxEdges` config.
2023-12-10 16:39:57 +00:00
Matheus B
c8f0b39075 Add e2e test for edge case 2023-12-08 13:39:53 -03:00
Matheus Braga
7e1cc27c76 Merge branch 'mermaid-js:develop' into bug/5059_fix_external_connection_after_updating_edges 2023-12-08 13:15:09 -03:00
Matheus B
8bff32adab Modify algorithm to re-check for external connections after defining anchor nodes 2023-12-08 13:08:13 -03:00
Steph
f363af482e verbiage updates 2023-12-07 10:14:33 -08:00
Faris Nabiev
b60fc1b056 fix: replace functional approaches with oop 2023-12-07 11:32:49 +03:00
Sidharth Vinod
7c3bd9abd2 Merge branch 'develop' into release/10.6.2
* develop:
  Update docs
  Update NiceGuy.io links in integrations-community.md
  build(deps-dev): bump vite from 4.4.9 to 4.4.12
  Changes to .prettierignore 1. Added 'demos/dev/**' to be ignored by Prettier. 2. Added '!/demos/dev/example.html' so that Prettier ensures no one changes the example.html in a way that doesn't obey the Prettier code formatting rules.
  build: use `tsx` instead of `ts-node-esm`
  fix: #5100 Add viewbox to sankey
  fix: Check if parentCommit is provided
  Condition of Parent Id Without Merge Commit Added
  Error Hash Removed
  Linting Issue Fixed
  Updated gitgraph.md
  Linting Issue Fixed
  Documentation Modified New Ex Added
  e2e test case added
  Merge Conflict Resolved
  Suggested Changes FOR PR DONE
  documentation added, Tests Fixed
  All Unit Tests Passing
  Unit Test Cases Added
  Parser and Logic For Parent Commit Added
2023-12-07 11:02:52 +05:30
Sidharth Vinod
d3257cef80 Merge branch 'develop' into sidv/5042_maxEdges 2023-12-07 11:01:19 +05:30
Sidharth Vinod
69f31097e7 refactor: Move maxEdges out of flowchart config. 2023-12-07 10:55:12 +05:30
Sidharth Vinod
9b34adf2c9 refactor: Move maxEdges out of flowchart config. 2023-12-07 10:49:20 +05:30
Sidharth Vinod
3b7cabee4b chore: Add maxEdges to secure list 2023-12-07 10:39:10 +05:30
Sidharth Vinod
4f9988a799 Merge pull request #5120 from Abrifq/patch-3
Update NiceGuy.io links in integrations-community.md
2023-12-07 10:22:30 +05:30
Sidharth Vinod
22f83f1614 fix: Sequence actor rendering 2023-12-07 09:57:02 +05:30
Abrifq
f476c25c6d Update docs 2023-12-06 23:33:21 +00:00
Arda Aydın
1d08155fb1 Update NiceGuy.io links in integrations-community.md 2023-12-07 02:30:21 +03:00
Sidharth Vinod
a9818b40b6 chore: Remove special case error handling 2023-12-07 01:27:54 +05:30
Sidharth Vinod
85774b7e46 chore: Fix configAPI 2023-12-07 01:04:12 +05:30
Sidharth Vinod
886eda92a9 chore: await drawActors 2023-12-07 00:40:45 +05:30
Sidharth Vinod
1d86cf01ad refactor: Cleanup error renderer 2023-12-07 00:37:25 +05:30
Sidharth Vinod
70b948fd17 refactor: Optimize renderKatex 2023-12-07 00:36:21 +05:30
Sidharth Vinod
0d98e6ca53 refactor: Revert type change for renderer 2023-12-07 00:17:53 +05:30
Sidharth Vinod
8d90815862 Merge branch 'develop' into pr/NicolasNewman/2885
* develop: (192 commits)
  build(deps-dev): bump vite from 4.4.9 to 4.4.12
  Changes to .prettierignore 1. Added 'demos/dev/**' to be ignored by Prettier. 2. Added '!/demos/dev/example.html' so that Prettier ensures no one changes the example.html in a way that doesn't obey the Prettier code formatting rules.
  build: use `tsx` instead of `ts-node-esm`
  chore: Downgrade node to 18.18.2
  fix: #5100 Add viewbox to sankey
  chore(deps): update all minor dependencies
  chore: Rename test
  test: Add unit test for generic classname and namespace
  fix: Check if parentCommit is provided
  Split type from generic class name
  Condition of Parent Id Without Merge Commit Added
  Referenced the PmWiki's Cookbook recipe enabling MermaidJs schematics in wiki pages
  test(e2e): fix pie chart E2E tests for PR #4288
  Add dummy commit to trigger GH checks
  chore: Revert unnecessary export
  refactor: Remove unnecessary calculations
  chore: Fix computeWidth function
  chore: Cleanup setupGraphViewbox
  Update docs
  update mermaidAPI to cleanup the text before passing to getDiagramFromText
  ...
2023-12-07 00:01:01 +05:30
Alois Klink
c7b38b824b Merge pull request #5116 from mermaid-js/sidv/bannerClick
feat: Track outbound links in docs site.
2023-12-06 08:29:30 +00:00
Sidharth Vinod
770fc412ca feat: Track outbound links in plausible
Unlike mermaid.live, there is no user provided links in mermaid.js.org.
So we can track the outbound link clicks without leaking any user data.
2023-12-06 11:47:15 +05:30
Sidharth Vinod
cc4af0cafa Merge pull request #5115 from mermaid-js/dependabot/npm_and_yarn/vite-4.4.12
build(deps-dev): bump vite from 4.4.9 to 4.4.12
2023-12-06 06:08:46 +00:00
futzmonitor
03b5c00f03 Merge branch 'develop' into issue1981 2023-12-05 21:56:08 -05:00
dependabot[bot]
faf282b45b build(deps-dev): bump vite from 4.4.9 to 4.4.12
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.4.9 to 4.4.12.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v4.4.12/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v4.4.12/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-05 23:52:12 +00:00
Justin Greywolf
02b2d71eb3 Update packages/mermaid/src/diagrams/class/classDb.ts
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-12-05 07:57:39 -08:00
Justin Greywolf
e25515a960 Merge branch 'develop' into 2408-support-style-for-class 2023-12-05 07:11:08 -08:00
Justin Greywolf
ca386ab597 Update docs 2023-12-05 07:10:45 -08:00
Nikolay Rozhkov
fe07e9da46 Merge pull request #5102 from mermaid-js/5100_SankeyViewbox
fix: #5100 Add viewbox to sankey
2023-12-05 10:14:55 +00:00
Sidharth Vinod
a9610d3ba0 Merge pull request #5109 from FutzMonitor/issue5108
Changes to .prettierignore
2023-12-05 04:05:23 +00:00
Steph
276b5c748a update getting started page 2023-12-04 13:47:20 -08:00
Justin Greywolf
1ecae7dc93 Merge branch 'develop' into 2408-support-style-for-class 2023-12-04 13:29:00 -08:00
Justin Greywolf
239fad94ee Grammar/rendering for setting style on class node 2023-12-04 13:28:31 -08:00
futzmonitor
11affc32ee Changes to .prettierignore
1. Added 'demos/dev/**' to be ignored by Prettier.
2. Added '!/demos/dev/example.html' so that Prettier ensures no one changes the example.html in a way that doesn't obey the Prettier code formatting rules.
2023-12-04 15:47:58 -05:00
futzmonitor
aa3a19b63c Merge branch 'develop' into issue1981 2023-12-04 15:25:09 -05:00
Alois Klink
542fc19862 Merge pull request #5107 from mermaid-js/add-blog
Docs: update Latest News section
2023-12-04 19:18:11 +00:00
Steph
78c44bf793 add blog post 2023-12-04 11:07:55 -08:00
Sidharth Vinod
5d56835c31 Merge pull request #5104 from aloisklink/chore/use-tsx-instead-of-ts-node-esm
build: use `tsx` instead of `ts-node-esm`
2023-12-04 14:48:43 +00:00
Alois Klink
4a7e4a3bcb build: use tsx instead of ts-node-esm
`ts-node-esm` v10.9.1 is not compatible with Node.JS v18.19.0.
2023-12-04 11:25:58 +00:00
Alois Klink
6a31ae6b4f Merge pull request #4944 from RounakJoshi09/bug/#4497_unable-to-cherrypick-merge-commit
Bug/#4497 Unable to Cherry Pick Merge Commit Solved
2023-12-04 09:15:03 +00:00
Sidharth Vinod
a24f96ed60 Merge branch 'develop' into release/10.6.2
* develop:
  chore: Downgrade node to 18.18.2
2023-12-04 12:47:22 +05:30
Sidharth Vinod
798f9f8b78 chore: Downgrade node to 18.18.2 2023-12-04 12:46:56 +05:30
Sidharth Vinod
80fa3e9597 update docs 2023-12-04 12:28:05 +05:30
Sidharth Vinod
60ea9a2972 v10.6.2-rc.2 2023-12-04 12:20:40 +05:30
Sidharth Vinod
1165fb163d Merge branch 'develop' into release/10.6.2
* develop: (47 commits)
  chore(deps): update all minor dependencies
  chore: Rename test
  test: Add unit test for generic classname and namespace
  Split type from generic class name
  Referenced the PmWiki's Cookbook recipe enabling MermaidJs schematics in wiki pages
  test(e2e): fix pie chart E2E tests for PR #4288
  Add dummy commit to trigger GH checks
  chore: Revert unnecessary export
  refactor: Remove unnecessary calculations
  chore: Fix computeWidth function
  chore: Cleanup setupGraphViewbox
  Update docs
  update mermaidAPI to cleanup the text before passing to getDiagramFromText
  Add test for subgraphs with title margins and edge labels
  Modify margin logic to avoid creating unnecessary space in subgraph
  review fixes
  add test
  remove unused variable
  fix: clean comments in text in getDiagramFromText API so flowchart works well
  chore(deps): update all minor dependencies
  ...
2023-12-04 12:20:17 +05:30
Sidharth Vinod
87a0ab3438 Merge pull request #5099 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2023-12-04 06:32:54 +00:00
Sidharth Vinod
160c7d399a fix: #5100 Add viewbox to sankey 2023-12-04 11:36:07 +05:30
renovate[bot]
e87243c135 chore(deps): update all minor dependencies 2023-12-04 06:04:52 +00:00
Sidharth Vinod
886405b65f Merge pull request #5098 from mermaid-js/4578-generic-class-in-namespace
Fix issue with generic class not rendering
2023-12-04 05:59:48 +00:00
Sidharth Vinod
761fa27eea chore: Rename test 2023-12-04 11:22:09 +05:30
Sidharth Vinod
93a920cdfe test: Add unit test for generic classname and namespace 2023-12-04 11:21:27 +05:30
Sidharth Vinod
d22ee8d1d5 fix: Check if parentCommit is provided 2023-12-04 11:13:52 +05:30
Sidharth Vinod
f806de3a1d Merge branch 'develop' into sidv/5042_maxEdges 2023-12-04 09:57:26 +05:30
Justin Greywolf
8de1bde8f4 Split type from generic class name 2023-12-03 18:01:00 -08:00
RounakJoshi09
31a1de1566 Condition of Parent Id Without Merge Commit Added 2023-12-04 00:28:01 +05:30
RounakJoshi09
c6bf9083c8 Merge branch 'develop' into bug/#4497_unable-to-cherrypick-merge-commit 2023-12-04 00:19:28 +05:30
futzmonitor
8e95cdb883 Changes to gantt.jison
1. Consistent spacing on line 30
2023-12-02 12:56:58 -05:00
futzmonitor
68ff352f2d Changes to gantt.jison
1. Removed typo
2023-12-02 10:26:46 -05:00
futzmonitor
f02dfe60af Changes to gnatt.jison
1. Removed the hash and semicolon symbols from the title regex to allow for their use.
2. Removed the hash and semicolon symbols from the section regex to allow for their use.
3. Removed the hash and semicolon symbols for the taskTxt regex to allow for their use. I did not remove the colon because the parser fails to recognize when the actual taskData begins if that distinctions isn't kept.
4. Removed the regex \#[^\n]* which skipped comments to fix some bugs with hash symbols in the taskTxt. I tested this changed by putting it back and using the comment  to see if it was recognized as a comment, but I would receive a syntax error and the diagram would not be rendered. So, I think we can safely remove that line, BUT it would be best practice if someone else tested this change to ensure that this will not break anyone's Gantt diagrams.
2023-12-02 10:23:44 -05:00
Sidharth Vinod
9be9601927 chore: Update promo link 2023-12-01 12:04:30 +05:30
Sidharth Vinod
f81e4d4361 Merge pull request #5085 from d-faure/PmWiki-integration
Referenced the PmWiki's Cookbook recipe enabling MermaidJs schematics…
2023-11-29 03:57:11 +00:00
Sidharth Vinod
fdf9988af1 feat #5042: Add flowchart.maxEdges config. 2023-11-28 19:07:10 +05:30
d-faure
ae7003aa39 Merge remote-tracking branch 'origin/develop' into PmWiki-integration 2023-11-28 14:01:30 +01:00
d-faure
f35fb3955d Referenced the PmWiki's Cookbook recipe enabling MermaidJs schematics in wiki pages 2023-11-28 13:50:31 +01:00
Sidharth Vinod
4499926453 Merge pull request #5076 from ad1992/aakansha/bug/5075-fix-getDiagramFromText-api
fix: clean comments in text in getDiagramFromText API so flowchart works well
2023-11-28 12:02:57 +00:00
Sidharth Vinod
252a8a73b1 Merge pull request #5041 from mathbraga/feature/4935_subgraph-title-margin-config-option
Feature/4935 subgraph title margin config option
2023-11-28 12:02:03 +00:00
Sidharth Vinod
1564358421 Merge pull request #4288 from iwestlin/fix/pie-chart-viewbox
fix: Adjust piechart viewbox for mobile devices with small width
2023-11-28 12:01:28 +00:00
Alois Klink
72d2d04dcc Merge pull request #5006 from lchenay/patch-1
fix case that generate broken link on docs
2023-11-28 11:55:57 +00:00
Alois Klink
005c998438 test(e2e): fix pie chart E2E tests for PR #4288 2023-11-28 11:37:12 +00:00
Sidharth Vinod
e0bf7faf78 Merge pull request #5080 from mermaid-js/holiday-promo
Holiday 2023 promo
2023-11-28 13:43:03 +05:30
Sidharth Vinod
a1563c9f7d docs: Holiday promo v2 2023-11-28 13:39:46 +05:30
Aakansha Doshi
4ed7b2be02 Add dummy commit to trigger GH checks 2023-11-28 12:05:52 +05:30
Sidharth Vinod
af9566df75 Update packages/mermaid/src/docs/.vitepress/components/TopBar.vue 2023-11-28 11:42:04 +05:30
Sidharth Vinod
89b392327a chore: Revert unnecessary export 2023-11-28 11:34:58 +05:30
Sidharth Vinod
9c2dae92f8 refactor: Remove unnecessary calculations 2023-11-28 11:30:41 +05:30
Sidharth Vinod
403ac4b76b chore: Fix computeWidth function 2023-11-28 10:39:34 +05:30
Sidharth Vinod
0620c6daf2 chore: Cleanup setupGraphViewbox 2023-11-28 10:34:58 +05:30
Sidharth Vinod
1f4e335f8d Merge branch 'develop' into pr/iwestlin/4288
* develop: (596 commits)
  chore(deps): update all minor dependencies
  chore(deps): update all patch dependencies
  fix: flowchart image without text
  fix Types
  chore: Update pnpm-lock
  chore: Add tests for calculateDeltaAndAngle
  fix: #5064 Handle case when line has only one point
  reset the testTimeout to 5 seconds and change it directly in the test
  update testTimeout from 5 seconds to 10 seconds
  Update all patch dependencies
  fix broken link
  add latest blog post
  Update all minor dependencies
  Update all patch dependencies
  Fix docs
  Update packages/mermaid/src/docs/community/questions-and-suggestions.md
  Update packages/mermaid/src/diagrams/class/classRenderer-v2.ts
  update edge ids
  draw top actors with lines  first followed by messages
  Bump GitHub workflow actions to latest versions
  ...
2023-11-28 10:34:18 +05:30
ad1992
18bc2af570 Update docs 2023-11-28 03:38:09 +00:00
Aakansha Doshi
fe4485c55f update mermaidAPI to cleanup the text before passing to getDiagramFromText 2023-11-28 09:05:00 +05:30
Matheus Braga
5718be50ee Merge branch 'develop' into feature/4935_subgraph-title-margin-config-option 2023-11-27 22:17:32 -03:00
Matheus B
8e794e3af9 Merge branch 'feature/4935_subgraph-title-margin-config-option' of https://github.com/mathbraga/mermaid into feature/4935_subgraph-title-margin-config-option 2023-11-27 22:13:00 -03:00
Matheus B
7979b2830f Add test for subgraphs with title margins and edge labels 2023-11-27 22:12:41 -03:00
Matheus B
a807a58a29 Modify margin logic to avoid creating unnecessary space in subgraph 2023-11-27 22:10:05 -03:00
Steph
8d53fa17da update announcements page 2023-11-27 11:44:47 -08:00
Steph
c0b80df1cb update announcement bar verbiage 2023-11-27 11:36:56 -08:00
Aakansha Doshi
d3d4948b3a Merge branch 'develop' into aakansha/bug/5075-fix-getDiagramFromText-api 2023-11-27 19:51:33 +09:00
Aakansha Doshi
4dbfa2f0d3 review fixes 2023-11-27 16:11:25 +05:30
Alois Klink
25e9bb354e Merge pull request #4837 from mermaid-js/refactor/unifyEdgeMarkers
refactor: Unify the edgeMarker adding logic
2023-11-27 10:07:42 +00:00
Sidharth Vinod
7ca76b02e1 Merge pull request #5063 from bonyuta0204/bug/4736_zero_size_image_flowchart
fix: flowchart image without text
2023-11-27 08:28:48 +00:00
Aakansha Doshi
282da45d0e Merge branch 'develop' into aakansha/bug/5075-fix-getDiagramFromText-api 2023-11-27 17:04:39 +09:00
Aakansha Doshi
7e119381e8 add test 2023-11-27 13:33:01 +05:30
Aakansha Doshi
4a4d715270 remove unused variable 2023-11-27 13:25:13 +05:30
Aakansha Doshi
1d5378a4f2 fix: clean comments in text in getDiagramFromText API so flowchart works well 2023-11-27 13:19:31 +05:30
Sidharth Vinod
62b991b6f7 Merge pull request #5071 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2023-11-27 06:38:25 +00:00
renovate[bot]
952f2fb92c chore(deps): update all minor dependencies 2023-11-27 06:26:12 +00:00
Sidharth Vinod
84065838e0 Merge pull request #5070 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2023-11-27 06:20:12 +00:00
renovate[bot]
2cc4f23856 chore(deps): update all patch dependencies 2023-11-27 01:36:48 +00:00
Matheus B
ce875c9a33 Move getConfig() call out of recursiveRender to its parent caller 2023-11-26 18:18:31 -03:00
Matheus Braga
904be162a8 Merge branch 'develop' into feature/4935_subgraph-title-margin-config-option 2023-11-25 14:40:56 -03:00
Matheus B
3489fc49b9 Replace multiple calls of getConfig() for a single at top of the scope 2023-11-25 13:51:49 -03:00
Sidharth Vinod
65ee65b3ec Merge pull request #4915 from Patronud/develop
prevent-inherited-lineheights-on-edgeterminal-4083
2023-11-25 10:33:46 +05:30
Yuta Nakamura
1ff7218558 fix: flowchart image without text 2023-11-24 21:35:50 +09:00
Sidharth Vinod
5b705cf94f v10.6.2-rc.1 2023-11-24 14:11:49 +05:30
Sidharth Vinod
53b4f584db Merge branch 'develop' into docs/4974_reorder_integration_links 2023-11-24 11:33:41 +05:30
Sidharth Vinod
61747b67a3 Merge pull request #5065 from mermaid-js/5064_EdgeOffsetEdgeCase
fix: #5064 Handle case when line has only one point
2023-11-24 05:49:52 +00:00
Sidharth Vinod
b5ba09500f Merge branch 'develop' into refactor/unifyEdgeMarkers 2023-11-24 11:14:00 +05:30
Sidharth Vinod
7b0f6c1c74 fix Types 2023-11-24 10:44:18 +05:30
Sidharth Vinod
26df81816e chore: Update pnpm-lock 2023-11-24 10:41:26 +05:30
Ronid1
201016ccc5 update build docs 2023-11-23 20:57:43 -08:00
Sidharth Vinod
c0fcf4f3b1 Merge branch 'develop' into 5064_EdgeOffsetEdgeCase
* develop:
  fix broken link
  add latest blog post
  fix linting
  fix: set proper shiki theme for light and dark modes
  fix: change shiki theme to github-light
  add latest blog post
  add latest blog post
2023-11-24 10:26:32 +05:30
Sidharth Vinod
55ce05fc75 chore: Add tests for calculateDeltaAndAngle 2023-11-24 10:25:50 +05:30
Ronid1
aaf9fd5f03 update and verify links 2023-11-23 20:44:35 -08:00
Ronid1
783becebf6 alphabetically order sub categories 2023-11-23 20:38:44 -08:00
Ronid1
3e098ab73b sort links alphabetically 2023-11-23 20:38:44 -08:00
Sidharth Vinod
8f733c6b01 Merge branch 'master' into develop
* master:
  fix broken link
  add latest blog post
  fix linting
  fix: set proper shiki theme for light and dark modes
  fix: change shiki theme to github-light
  add latest blog post
  add latest blog post
2023-11-24 09:46:21 +05:30
Sidharth Vinod
78e118c876 fix: #5064 Handle case when line has only one point 2023-11-24 09:42:21 +05:30
Alois Klink
f604017f93 Merge pull request #5055 from omer-priel/bug/5053_tests-failed-because-test-timeout
update testTimeout from 5 seconds to 10 seconds
2023-11-23 16:30:55 +00:00
Omer Priel
9ae00ebcdb reset the testTimeout to 5 seconds and change it directly in the test 2023-11-23 14:55:09 +02:00
Omer Priel
fd208ddcaf update testTimeout from 5 seconds to 10 seconds 2023-11-21 13:53:05 +02:00
Matheus Braga
997a3771f1 Merge branch 'develop' into feature/4935_subgraph-title-margin-config-option 2023-11-20 21:28:09 -03:00
Matheus B
d79671e04a Resolve lint issue 2023-11-20 21:16:10 -03:00
Matheus B
a935380713 Merge branch 'feature/4935_subgraph-title-margin-config-option' of https://github.com/mathbraga/mermaid into feature/4935_subgraph-title-margin-config-option 2023-11-20 21:07:24 -03:00
Matheus B
d61bfde167 Replace string concat with string templates 2023-11-20 21:06:38 -03:00
Matheus B
fc3018e977 Move subgraph title margin tests to independent file 2023-11-20 20:55:43 -03:00
Matheus B
63c2d36232 Rename file and update imports 2023-11-20 20:49:00 -03:00
Matheus B
c0a43f5d5a Change getSubGraphTitleMargins to accept config object as parameter 2023-11-20 20:40:30 -03:00
Matheus B
ad6c76116d Modify getSubGraphTitleMargins to use null coalescing operator 2023-11-20 19:13:34 -03:00
Knut Sveidqvist
df858dc7b6 #3358 Adding arrows to syntax 2023-11-20 14:00:25 +01:00
Sidharth Vinod
4a4e614b64 Merge pull request #5046 from mermaid-js/renovate/patch-all-patch
Update all patch dependencies (patch)
2023-11-20 10:51:47 +00:00
renovate[bot]
3ba0fee406 Update all patch dependencies 2023-11-20 09:56:45 +00:00
Sidharth Vinod
36247bc5af Merge pull request #5047 from mermaid-js/renovate/all-minor
Update all minor dependencies (minor)
2023-11-20 09:50:18 +00:00
Knut Sveidqvist
0643c71523 Merge pull request #5048 from mermaid-js/update-blog
Docs: update Latest News section
2023-11-20 08:30:53 +01:00
Steph
cbc97dacdf fix broken link 2023-11-19 20:39:18 -08:00
Steph
8405454a1a add latest blog post 2023-11-19 20:32:20 -08:00
renovate[bot]
a1c0761ef9 Update all minor dependencies 2023-11-20 01:43:47 +00:00
Matheus Braga
42ac630304 Merge branch 'develop' into feature/4935_subgraph-title-margin-config-option 2023-11-17 21:41:27 -03:00
Matheus B
7e77433ef7 Add tests for subgraph title margin 2023-11-17 20:49:54 -03:00
Matheus B
453c16d08e Remove unnecessary code 2023-11-17 20:20:13 -03:00
RounakJoshi09
c19fa122af Merge branch 'develop' into bug/#4497_unable-to-cherrypick-merge-commit 2023-11-17 11:28:20 +05:30
RounakJoshi09
aadf5339a4 Error Hash Removed 2023-11-17 09:51:03 +05:30
Sidharth Vinod
a47a9e400b Merge branch 'develop' into refactor/unifyEdgeMarkers 2023-11-16 11:00:33 +05:30
Nikolay Rozhkov
d7f59c1091 Merge pull request #4927 from guypursey/bug/4912_gitgraph-merge-routing-colouring
Bug/4912 GitGraph routing and colouring for merges and cherry-picks
2023-11-15 21:02:54 +00:00
Nikolay Rozhkov
3df7cf2266 Merge branch 'develop' into bug/4912_gitgraph-merge-routing-colouring 2023-11-15 23:44:08 +03:00
Sidharth Vinod
e8ee5f548f Merge pull request #4868 from mermaid-js/other/remove-pr-labeler-action
Use `release-drafter/release-drafter` GitHub Action to label our PRs
2023-11-15 08:00:51 +05:30
Sidharth Vinod
862d20ce9d Merge branch 'develop' into other/remove-pr-labeler-action
* develop: (164 commits)
  Update all patch dependencies
  Fix docs
  Update packages/mermaid/src/docs/community/questions-and-suggestions.md
  Update packages/mermaid/src/diagrams/class/classRenderer-v2.ts
  update edge ids
  draw top actors with lines  first followed by messages
  Bump GitHub workflow actions to latest versions
  Update docs
  Documentation: clarify sentence
  Fix lint
  Fix typo
  fix typo
  Add new Atlassian integrations
  chore(deps): update all patch dependencies
  Update demos/sequence.html
  chore: release v10.6.1
  fix
  fix
  fix: render the participants in same order as they are created
  fix(flow): fix invalid ellipseText regex
  ...
2023-11-15 07:58:48 +05:30
Nikolay Rozhkov
52603d7acd Merge branch 'develop' into bug/4912_gitgraph-merge-routing-colouring 2023-11-14 16:26:19 +03:00
Alois Klink
c56025ec3b Merge pull request #5013 from SteffenLm/bug/5009_static_class_attribute_not_rendered
Fix - static class attributes are not rendered underlined
2023-11-14 09:44:35 +00:00
Sidharth Vinod
0c0f7a739e Merge pull request #4934 from RounakJoshi09/bug/#3251_linkStyle-can't-specify-ids
bug/#3251_linkStyle-can't-specify-ids Fixed
2023-11-14 05:38:20 +00:00
Sidharth Vinod
33e94d3f35 Merge pull request #4961 from claesgill/upd_readme_toc
Updated README with expandable table of content.
2023-11-14 05:36:06 +00:00
Sidharth Vinod
5fdbf5d891 Merge pull request #5017 from ad1992/bug/4946-fix-svg-order-sequence-participant
fix: render the participants in same order as they are created
2023-11-14 05:29:35 +00:00
Sidharth Vinod
6d0d8ac8e6 Merge pull request #5033 from mermaid-js/renovate/patch-all-patch
Update all patch dependencies (patch)
2023-11-14 05:29:17 +00:00
Nikolay Rozhkov
fb031ee11a Merge branch 'develop' into bug/4912_gitgraph-merge-routing-colouring 2023-11-13 23:14:42 +03:00
renovate[bot]
adff22c1e2 Update all patch dependencies 2023-11-13 17:15:43 +00:00
Matheus B
56c3809b57 Add logic to add subgraph title margin on layout 2023-11-12 17:32:58 -03:00
Matheus B
8b0a5be6d9 Include subgraph margin into label positioning 2023-11-11 18:18:51 -03:00
Matheus B
52ed38719f Fix nesting of getSubGraphTitleMargins test. 2023-11-10 21:35:58 -03:00
Matheus B
0bcd5d28e8 Create helper function for subgraph title margin fetching. 2023-11-10 21:30:09 -03:00
Matheus B
b134766647 Add subgraph title margin config options to schema. 2023-11-10 21:22:31 -03:00
Sidharth Vinod
aa5d586bd6 Fix docs 2023-11-09 23:51:12 +05:30
Sidharth Vinod
b12b8a9278 Merge pull request #4952 from ajdamico/patch-1
add links to make it easier
2023-11-09 23:46:24 +05:30
Sidharth Vinod
3c13386e5d Update packages/mermaid/src/docs/community/questions-and-suggestions.md 2023-11-09 23:44:35 +05:30
Sidharth Vinod
a177141962 Merge pull request #5028 from mermaid-js/3952-lexical-ids
3952 lexical ids
2023-11-09 18:04:38 +00:00
Sidharth Vinod
92f1644550 Merge pull request #5025 from deining/clarify-docu
Documentation: clarify sentence
2023-11-09 23:35:06 +05:30
Justin Greywolf
07dcb64b22 Merge branch 'develop' into 3952-lexical-ids 2023-11-09 08:05:25 -08:00
Justin Greywolf
0f2b941e2d Update packages/mermaid/src/diagrams/class/classRenderer-v2.ts
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-11-09 08:05:09 -08:00
Sidharth Vinod
c89557d85c Merge pull request #5026 from deining/bump-gitHub-workflows
Bump GitHub workflow actions to latest versions
2023-11-09 15:36:54 +00:00
Justin Greywolf
e8ad72a980 Merge branch 'develop' into 3952-lexical-ids 2023-11-09 07:03:40 -08:00
Justin Greywolf
a8fe640546 update edge ids 2023-11-09 06:57:51 -08:00
Aakansha Doshi
01bbcc597a draw top actors with lines first followed by messages 2023-11-09 17:52:00 +05:30
Andreas Deininger
6fb5641afc Bump GitHub workflow actions to latest versions 2023-11-09 12:56:57 +01:00
deining
fe32bcbf7c Update docs 2023-11-09 11:55:19 +00:00
Andreas Deininger
f47e920a97 Documentation: clarify sentence 2023-11-09 12:50:01 +01:00
Sidharth Vinod
1571b25d29 Merge pull request #4958 from csholmq/fix/tooltip
fix(tooltip): remove redundant scroll offset
2023-11-09 09:01:19 +00:00
Sidharth Vinod
4a92fc5c92 Fix lint 2023-11-09 14:20:06 +05:30
Sidharth Vinod
8d6317b49a Merge branch 'develop' into pr/csholmq/4958
* develop: (21 commits)
  Fix typo
  fix typo
  Add new Atlassian integrations
  chore(deps): update all patch dependencies
  chore: release v10.6.1
  fix(flow): fix invalid ellipseText regex
  review fixes
  Update XYChart's nav link in the docs template
  Update index.md
  add comment for ts ignore
  move decodeEntities to utils
  review fixes
  chore(deps): update all minor dependencies
  chore: Point to correct changelog
  add spec
  fix: getMessageAPI so it considers entity codes
  Update classDiagram.md
  Chore: Typo fixed in multiple files
  feat(gantt): update styles
  docs(integrations): add Mermaid for Slack
  ...
2023-11-09 14:19:28 +05:30
Sidharth Vinod
ee49c4b660 Merge pull request #4933 from REVERB283/bug/4716_fix_target_blank_getting_sanitized
fix: target blank removed from anchor tag
2023-11-09 08:46:33 +00:00
Sidharth Vinod
72038a68a9 Fix typo 2023-11-09 14:06:58 +05:30
Sidharth Vinod
051260e9a8 Merge branch 'develop' of https://github.com/mermaid-js/mermaid into develop
* 'develop' of https://github.com/mermaid-js/mermaid:
  docs: fixed typo
2023-11-09 14:04:33 +05:30
Sidharth Vinod
3cf0a2b290 Merge pull request #4893 from 0xflotus/patch-1
docs: fixed typo
2023-11-09 14:04:17 +05:30
Sidharth Vinod
adfb60e045 fix typo 2023-11-09 14:03:38 +05:30
Sidharth Vinod
ac595eb96c Merge pull request #4947 from SusheelThapa/patch
Chore: Typo fixed in multiple files
2023-11-09 14:03:05 +05:30
Sidharth Vinod
79bae62ce0 Merge pull request #4973 from SahilNagpure07/patch-1
docs: Update classDiagram.md
2023-11-09 13:57:36 +05:30
Sidharth Vinod
3038ce5864 Merge pull request #5021 from nashtechlabs/docs/patch-1
Add new Atlassian integrations
2023-11-09 13:56:19 +05:30
Sidharth Vinod
c8a826dfce Merge pull request #5012 from StefonSimmons/patch-1
Update index.md
2023-11-09 13:51:27 +05:30
Sidharth Vinod
4286372a9c Merge pull request #4924 from raiman264/bug/4905_fix_code_block_unreadable_text
bug: #4905 change shiki theme to github-light
2023-11-09 13:50:45 +05:30
Sidharth Vinod
0075538431 fix linting 2023-11-09 13:49:42 +05:30
Braulio Ruiz
8db9700807 fix: set proper shiki theme for light and dark modes 2023-11-09 13:36:44 +05:30
Braulio Ruiz
1fa8de2771 fix: change shiki theme to github-light 2023-11-09 13:36:44 +05:30
Sidharth Vinod
09d9c31d53 chore: Reset mock in edgeMarker test 2023-11-09 11:36:45 +05:30
nashtechlabs
fadae38bec Merge branch 'develop' into docs/patch-1 2023-11-09 05:34:57 +07:00
Sidharth Vinod
e46626d3ed Merge branch 'develop' into refactor/unifyEdgeMarkers
* develop: (155 commits)
  chore(deps): update all patch dependencies
  chore: release v10.6.1
  fix(flow): fix invalid ellipseText regex
  review fixes
  Update XYChart's nav link in the docs template
  add comment for ts ignore
  move decodeEntities to utils
  review fixes
  chore(deps): update all minor dependencies
  chore: Point to correct changelog
  add spec
  fix: getMessageAPI so it considers entity codes
  chore(deps): update all patch dependencies
  Update integrations-community.md
  docs: upate the list of tools with native support of mermaid
  Fix typo in build-docs.yml
  Updated mermaid version
  Limiting the number of edges that are allowed in the flowchart
  Update README.md
  Update README.md
  ...
2023-11-09 02:39:54 +05:30
Sidharth Vinod
8f572021af chore: Add test for invalid marker 2023-11-09 02:38:48 +05:30
Sidharth Vinod
4952b13ad0 fix: Ignore unknown arrow type values
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-11-09 02:37:38 +05:30
Sidharth Vinod
d1fba9c567 Merge pull request #4824 from JackuB/patch-1
Docs: add Mermaid for Slack integration
2023-11-08 20:58:40 +00:00
Sidharth Vinod
c2e26baf4d Merge pull request #4930 from Mister-Hope/patch-2
feat(gantt): update styles
2023-11-08 20:42:53 +00:00
nashtechlabs
f6b1e049f1 Merge branch 'develop' into docs/patch-1 2023-11-08 15:56:22 +07:00
Alois Klink
f487dcd57b Merge commit 'b61ea4b8aa2f5d38ad6af828ed0620a589ec5786'
This fixes the link to xyChart in the docs on the `master` branch.
2023-11-08 08:42:05 +00:00
Alois Klink
71478f5a64 Merge pull request #5014 from Abrifq/patch-2
Update XYChart's nav link in the docs template
2023-11-08 08:22:30 +00:00
dev1
c9ace33cf1 Add new Atlassian integrations 2023-11-08 14:39:06 +07:00
Alois Klink
4ecf7806cd Merge pull request #4959 from mermaid-js/update-latest-news
Docs: update latest news
2023-11-07 16:10:07 +00:00
Steph
c117447bb3 add latest blog post 2023-11-07 00:54:32 -08:00
Steph
1f7aec7405 Merge branch 'master' into update-latest-news 2023-11-07 00:50:51 -08:00
Sidharth Vinod
30646d80f1 Merge pull request #5015 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2023-11-07 07:23:10 +00:00
renovate[bot]
6e74e91b5d chore(deps): update all patch dependencies 2023-11-07 05:11:34 +00:00
Sidharth Vinod
eb4bd314b6 Merge pull request #5002 from ad1992/bug/4983-fix-getMessageAPI
fix: getMessageAPI so it considers entity codes
2023-11-07 05:04:53 +00:00
Alois Klink
7a3ce3e337 Merge pull request #5018 from mermaid-js/master
Sync `master` branch to `develop`
2023-11-06 14:48:55 +00:00
Alois Klink
d1045ed644 Merge remote-tracking branch 'origin/release/10.6.1' 2023-11-06 14:29:58 +00:00
Aakansha Doshi
396ea3cec2 Update demos/sequence.html 2023-11-06 19:55:53 +05:30
Aakansha Doshi
51d076a83b Merge branch 'develop' into bug/4946-fix-svg-order-sequence-participant 2023-11-06 19:54:32 +05:30
Alois Klink
65daab2aaf chore: release v10.6.1
Fixes
=====

- Flowchart: Fix a freeze when using a `(` character in an ellipse node
2023-11-06 13:57:01 +00:00
Aakansha Doshi
dff8b783b8 fix 2023-11-06 19:02:10 +05:30
Aakansha Doshi
78c1a3d980 fix 2023-11-06 18:57:47 +05:30
Aakansha Doshi
23cbf50413 fix: render the participants in same order as they are created 2023-11-06 18:47:38 +05:30
Knut Sveidqvist
7c7f3dd8be Merge pull request #5016 from aloisklink/fix/4964-fix-invalid-ellipseText-regex
fix(flow): fix invalid ellipseText regex
2023-11-06 11:16:44 +00:00
Alois Klink
172d90e731 fix(flow): fix invalid ellipseText regex
This invalid regex was causing Mermaid to freeze.
2023-11-06 10:08:12 +00:00
Aakansha Doshi
dff13439f6 review fixes 2023-11-06 12:17:43 +05:30
Arda Aydın
b61ea4b8aa Update XYChart's nav link in the docs template
The site gives 404 with xychart but navigates correctly with xyChart
2023-11-05 22:35:36 +03:00
SteffenLm
b5fd8fb7c1 fix text-decoration for abstract attibutes 2023-11-03 20:55:42 +01:00
StefonSimmons
4ba3e2cff3 Update index.md
fix typo
2023-11-03 15:51:33 -04:00
Aakansha Doshi
a818f3e3ae add comment for ts ignore 2023-11-03 13:31:21 +05:30
Aakansha Doshi
58bad981be move decodeEntities to utils 2023-11-03 13:25:26 +05:30
Aakansha Doshi
6a5b7c40bd Merge branch 'develop' into bug/4983-fix-getMessageAPI 2023-11-03 13:18:38 +05:30
Aakansha Doshi
6e6e92a1d1 review fixes 2023-11-03 13:16:30 +05:30
Steph
99244ffae5 Merge branch 'master' into update-latest-news 2023-11-02 05:05:04 -07:00
Laurent
379722d0fb Fix case that generate broken link on docs 2023-11-02 12:51:52 +01:00
Sidharth Vinod
f5bd1e0809 Merge pull request #4997 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2023-11-02 11:05:01 +00:00
renovate[bot]
0d4faef758 chore(deps): update all minor dependencies 2023-11-01 19:42:28 +00:00
Sidharth Vinod
0c5cf72235 chore: Point to correct changelog 2023-11-01 20:18:49 +05:30
Guy Pursey
57a9d7356c GitGraph: made reroute fn more readable
Pre-commit lint hook had made the use of ternaries harder to read
than I'd originally intended so I introduced an additional
variable which explains what is being checked and keeps ternaries
from becoming obscured.
2023-10-31 17:24:13 +00:00
Guy Pursey
a9c5d903c5 GitGraph: simplified branch check in arrow rerouting fn
Wanted to avoid repetition given that the originally nested
ternaries had the same structure
2023-10-31 17:24:13 +00:00
Guy Pursey
d80e1a2662 GitGraph: added commit IDs to e2e test to remove false positives
Should stop randomised commit IDs from showing arbitrary
differences between test runs.
2023-10-31 17:24:13 +00:00
Guy Pursey
bf52e76a39 GitGraph: Moved branch curve check to within reroute check fn
Based on review by @nirname. I had originally been trying
to minimise number of new arguments being passed to
rerouting check but as the branch curve check is not used
elsewhere and is part of the same rerouting check it makes
sense for them to be together.

Position information now passed to rerouting fn instead.
2023-10-31 17:24:13 +00:00
Guy Pursey
31a8e040fa GitGraph: corrected minor typo in comment. 2023-10-31 17:24:13 +00:00
Guy Pursey
f7d83e2cda GitGraph: added 2x e2e tests for branches not used immediately
My focus earlier on had been on relationship to `main` branch
so this is to ensure that we have some tests that cover
relationship between a pair of branches that doesn't
include `main`.
2023-10-31 17:24:13 +00:00
Guy Pursey
0555368e1c GitGraph: added branch checking to rerouting
Hypothesised that working out which branch needed checking for
overlapping commits might be missing, so added that as a
nested ternary and passed result as new argument to rerouting
check.

If commits are found on the branch which will be getting the
curve (whichever branch is lower or more to the right of main
than the other, for now), then the arrow will be rerouted.

I may refactor in a follow-up commit and I think there's scope
to simplify the logic but this is a test for now.
2023-10-31 17:24:13 +00:00
Guy Pursey
adfe1728ae GitGraph: Added e2e tests for deferred branch use.
In these tests, a new branch is created but then a commit is made
on the main branch before the new branch gets a commit. This
important to see what happens with rerouting of arrows.

Suggested by @nirname in PR review of #4927.
2023-10-31 17:24:13 +00:00
Guy Pursey
2acad550da GitGraph: e2e tests, added commit IDs to test graphs
Followed practice of other tests so that commit IDs are
stabilised (i.e., not randomly generated) and therefore
don't show repeatedly in Cypress diff output screenshots
2023-10-31 17:24:13 +00:00
Guy Pursey
b0b276898a GitGraph: fixed an e2e branch for vertical branch
Fix for error spotted by @mathbraga
2023-10-31 17:24:13 +00:00
Guy Pursey
25a678caec GitGraph: added e2e tests for multiple branches from one commit 2023-10-31 17:24:13 +00:00
Guy Pursey
3e18e76d31 GitGraph: removed check of branch with main from arrow reroute fn
Checking if branch was same as main turned out to be redundant
for now, since there don't seem to be any cases where routing
curves into main.

This fixes issue found in review by @nirname and avoids a
situation where branching from the same commit results in
unnecessary rerouting.
2023-10-31 17:24:13 +00:00
Guy Pursey
3ba33c8b75 GitGraph: added more to demos 2023-10-31 17:24:13 +00:00
Guy Pursey
7c87df7cf6 GitGraph: rename overlap check to shouldRerouteArrow
The function also now does an additional check to see
if source branch in overlap check is on main.

As we're no longer purely checking for an overlap and
the only use of this function is to reroute the arrows
to avoid running over commits, this more literal name
should be clearer.
2023-10-31 17:24:13 +00:00
Guy Pursey
dba7197fc6 GitGraph: simplified overlapping check fn 2023-10-31 17:24:13 +00:00
Guy Pursey
902a9dd42b GitGraph: added and updated demos to align with some of e2e testing 2023-10-31 17:24:13 +00:00
Guy Pursey
461a293d71 GitGraph: refactored overlapping fn for efficiency/performance
On previous rewrite, I had created new functions within the
overlapping functions but these were being recreated on each
iteration of Object.some(). I moved them outside this for
clarity and so they're not recreated each iteration.
2023-10-31 17:24:13 +00:00
Guy Pursey
9f8457d249 GitGraph: Rewrote overlap fn to make main branch exception to rule. 2023-10-31 17:24:13 +00:00
Guy Pursey
8c43d2273f GitGraph: added destination branch check into overlapping fn. 2023-10-31 17:24:13 +00:00
Guy Pursey
69ec4a0359 GitGraph: Added cherry-pick and merge demos for to GitGraph. 2023-10-31 17:24:13 +00:00
Guy Pursey
9469f759a9 GitGraph: Moved overlapping commit arrow colour inside conditional 2023-10-31 17:24:13 +00:00
Guy Pursey
60bb7b5b6c GitGraph: updated demo page to include top-to-bottom examples. 2023-10-31 17:24:13 +00:00
Guy Pursey
4787bb07df GitGraph: corrected object method in hasOverlappingCommits 2023-10-31 17:24:13 +00:00
Guy Pursey
33050e1812 GitGraph: Update variable names in drawArrow fn 2023-10-31 17:24:13 +00:00
Guy Pursey
6dc8e58b47 GitGraph: Refactor hasOverlappingCommits function
Changed argument names from commit1 and commit2 to
commitA and commitB respectively to prevent confusion
with seq number values.

Replaced Array filter method with array some method
so that as soon as one overlap is found, function is
finished.

Used Object.entries instead of Object.keys to reduce
number of variables needed and make function easier
to read.
2023-10-31 17:24:13 +00:00
Guy Pursey
839645f161 GitGraph: Add more example diagrams to test with. 2023-10-31 17:24:13 +00:00
Guy Pursey
d9daf19055 GitGraph: Correct commit variable in overlap check.
Originally, the function was checking if any commits were on the
same branch as `commit2`, the destination commit.

However, in order to avoid a conflict, we should only need to
check whether any commits are on the same branch as `commit 1`.

Updated and moved commenting as well.
2023-10-31 17:24:13 +00:00
Guy Pursey
f42cec282a GitGraph: Add check for direction of merge arrow to determine colour. 2023-10-31 17:24:13 +00:00
Aakansha Doshi
fff25e7e2c add spec 2023-10-31 19:39:43 +05:30
Aakansha Doshi
2a8323f951 Merge branch 'develop' into bug/4983-fix-getMessageAPI 2023-10-31 18:35:25 +05:30
Aakansha Doshi
390e22cc0b fix: getMessageAPI so it considers entity codes 2023-10-31 18:28:45 +05:30
Sebastian Holmqvist
a3ee21d7fc fix(tooltip): change position of tooltip to not cover node
Position the tooltip centered, just below the node being hovered.

Update packages/mermaid/src/diagrams/flowchart/flowDb.js

Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-10-31 12:51:47 +01:00
Sebastian Holmqvist
8f2a5064cb fix(tooltip): remove redundant scroll offset
window.scrollY is already account for which means document.body.scrollTop incorrectly offsets the tooltip vertically.
The same is not true for horizontal position.
2023-10-31 08:38:19 +01:00
Sidharth Vinod
77667b94d3 Merge pull request #4975 from mermaid-js/add-docusaurus
Docs: add Docusaurus to "Integrations - Community" page
2023-10-31 06:42:09 +00:00
Sidharth Vinod
b85a48f7f7 Merge pull request #4976 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2023-10-31 06:40:19 +00:00
Sidharth Vinod
34f1db399f Merge pull request #4979 from karthxk07/develop
Update README.md
2023-10-31 06:40:05 +00:00
renovate[bot]
e8a04faa36 chore(deps): update all patch dependencies 2023-10-31 06:13:41 +00:00
Sidharth Vinod
d714ecb4d7 Merge pull request #4994 from alex-titarenko/docs/add-noteshub-tool
docs: Add NotesHub to integrations-community page
2023-10-31 06:06:59 +00:00
Sidharth Vinod
54ca3e789f Merge pull request #4991 from sadikkuzu/patch-1
Fix typo in build-docs.yml
2023-10-31 06:03:26 +00:00
Faris
61fb9e50d3 Merge branch 'develop' into fix/1294_exhaustive-clear-sequenceDb-variables 2023-10-30 13:39:09 +03:00
Alex Titarenko
cb06962c85 Update integrations-community.md 2023-10-27 20:27:16 -07:00
Alex Titarenko
e98aa55577 docs: upate the list of tools with native support of mermaid 2023-10-27 18:58:30 -07:00
SADIK KUZU
672a0edc59 Fix typo in build-docs.yml 2023-10-27 12:22:14 +03:00
Knut Sveidqvist
03c59adaed Parsing of block arrows with directions, creating a dedicated new node for this. 2023-10-26 22:02:16 +02:00
Knut Sveidqvist
7198fe55a9 Parsing of block arrows with directions, creating a dedicated new node for this. 2023-10-26 22:01:44 +02:00
Harshit Anand | Frontend Developer | ReactJS
3394541b41 Merge branch 'develop' into bug/4716_fix_target_blank_getting_sanitized 2023-10-26 14:57:15 +05:30
Harshit Anand
54ab3fc3b2 fix: added an e2e test case for classdiagram with anchor tag 2023-10-26 14:55:04 +05:30
Sahil Nagpure
36a727d44e Merge branch 'develop' into patch-1 2023-10-26 11:44:46 +05:30
Harshit Anand
06d2ba8398 fix: added two unit tests to check for the secured anchor tag 2023-10-25 21:17:53 +05:30
Knut Sveidqvist
5f117fc2b2 Merge branch 'master' into develop 2023-10-25 13:36:10 +02:00
Karthik
ff4d68fd55 Update README.md 2023-10-25 14:11:38 +05:30
Sahil Nagpure
9637b0c187 Merge branch 'develop' into patch-1 2023-10-25 12:24:03 +05:30
RounakJoshi09
5834818ebe Linting Issue Fixed 2023-10-23 21:57:38 +05:30
RounakJoshi09
7f1e0ab422 Updated gitgraph.md 2023-10-23 21:14:38 +05:30
RounakJoshi09
b461efab5d Merge branch 'bug/#4497_unable-to-cherrypick-merge-commit' of https://github.com/RounakJoshi09/mermaid into bug/#4497_unable-to-cherrypick-merge-commit 2023-10-23 21:09:43 +05:30
RounakJoshi09
ca96c0f45f Linting Issue Fixed 2023-10-23 21:06:51 +05:30
RounakJoshi09
122e5929bc Merge branch 'develop' into bug/#4497_unable-to-cherrypick-merge-commit 2023-10-23 20:40:02 +05:30
RounakJoshi09
b0cfdcc22f Documentation Modified New Ex Added 2023-10-23 20:34:54 +05:30
Harshit Anand
7960f94eba fix: shifted dompurify.addhook functions inside removescript 2023-10-23 16:09:51 +05:30
Harshit Anand
3f486ac0e1 Merge branch 'bug/4716_fix_target_blank_getting_sanitized' of https://github.com/REVERB283/mermaid into bug/4716_fix_target_blank_getting_sanitized 2023-10-23 12:25:53 +05:30
Harshit Anand
b36cdaceca Merge branch 'develop' of https://github.com/mermaid-js/mermaid into bug/4716_fix_target_blank_getting_sanitized 2023-10-23 12:24:22 +05:30
Harshit Anand
3b8c48dd26 fix: added type Element to the node used in callback in the dompurify.addhook 2023-10-23 12:23:08 +05:30
Harshit Anand
af73818c90 Merge branch 'bug/4716_fix_target_blank_getting_sanitized' of https://github.com/REVERB283/mermaid into bug/4716_fix_target_blank_getting_sanitized 2023-10-23 12:08:09 +05:30
Harshit Anand | Frontend Developer | ReactJS
77e700832f Merge branch 'develop' into bug/4716_fix_target_blank_getting_sanitized 2023-10-23 12:04:53 +05:30
Harshit Anand
111e067df5 fix: added type Element to the node used in callback in the addhook function 2023-10-23 12:03:57 +05:30
Karthik
880d0ebb50 Update README.md 2023-10-23 11:38:52 +05:30
huynhicode
b268bd21e1 Update docs 2023-10-22 21:23:47 +00:00
steph
bc247b1d46 add docusaurus to community integrations 2023-10-22 14:18:41 -07:00
RounakJoshi09
58e9e5658b e2e test case added 2023-10-22 21:12:04 +05:30
RounakJoshi09
f92ad6307e Merge branch 'develop' into bug/#4497_unable-to-cherrypick-merge-commit 2023-10-22 19:34:05 +05:30
Sahil Nagpure
f31cddee0c Update classDiagram.md
Fixed typo.
2023-10-22 12:27:55 +05:30
Nikolay Rozhkov
b232975064 Merge branch 'develop' into bug/4716_fix_target_blank_getting_sanitized 2023-10-21 01:46:21 +03:00
Knut Sveidqvist
f3f25c7874 #3358 Adding support for space blocks and different shapes 2023-10-20 12:30:25 +02:00
Knut Sveidqvist
5619f8771b #3358 Adding support for space blocks and different shapes 2023-10-20 12:13:49 +02:00
Claes Gill
3389ecdfea Updated README with expandable table of content. 2023-10-19 22:48:49 +02:00
Steph
87675e687e add latest blog post 2023-10-19 11:36:46 -07:00
RounakJoshi09
827808dca3 Merge Conflict Resolved 2023-10-19 10:33:32 +05:30
RounakJoshi09
d65191f6c1 Merge branch 'develop' into bug/#4497_unable-to-cherrypick-merge-commit 2023-10-19 10:26:25 +05:30
RounakJoshi09
6eee8973ba Merge branch 'bug/#4497_unable-to-cherrypick-merge-commit' of https://github.com/RounakJoshi09/mermaid into bug/#4497_unable-to-cherrypick-merge-commit 2023-10-18 21:08:14 +05:30
RounakJoshi09
d8500f9e08 Suggested Changes FOR PR DONE 2023-10-18 20:59:55 +05:30
Susheel Thapa
99a79e15f3 Merge branch 'develop' into patch 2023-10-17 20:47:29 +05:45
Anthony Damico
31ec3d1496 Update questions-and-suggestions.md 2023-10-17 10:30:29 -04:00
Faris Nabiev
3b5f5c7843 chore: fix autogen docs 2023-10-16 19:47:58 +03:00
Faris
3128ba73a0 chore(sequence): Update packages/mermaid/src/docs/syntax/sequenceDiagram.md
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-10-16 19:36:44 +03:00
Susheel Thapa
d97e31a38c Chore: Typo fixed in multiple files 2023-10-16 16:54:36 +05:45
Knut Sveidqvist
74a9e86e74 #3358 Putting the elements back in 2023-10-15 22:55:29 +02:00
Knut Sveidqvist
a641fd51e8 #3358 Adding support for column statements 2023-10-15 22:21:25 +02:00
RounakJoshi09
0a0bd0ac97 Merge branch 'develop' into bug/#4497_unable-to-cherrypick-merge-commit 2023-10-14 07:58:09 +05:30
RounakJoshi09
4051b42b5a documentation added, Tests Fixed 2023-10-14 07:26:23 +05:30
RounakJoshi09
6e5cd2b3c2 All Unit Tests Passing 2023-10-14 05:49:51 +05:30
Harshit Anand | Frontend Developer
f12b19216b Merge branch 'develop' into bug/4716_fix_target_blank_getting_sanitized 2023-10-14 00:51:42 +05:30
Harshit Anand
345e82abee fix: removed static target=_blank instaed value will fetched from the target attribute 2023-10-14 00:50:09 +05:30
RounakJoshi09
3118c7c532 Unit Test Cases Added 2023-10-13 23:49:01 +05:30
Faris Nabiev
fc0ade2985 chore(sequence): update doc for actors/participant creation/deletion fix 2023-10-13 12:07:36 +03:00
Faris Nabiev
6eae46b927 chore: remove unused e2e tests file 2023-10-13 00:48:05 +03:00
Faris Nabiev
985eda2dee chore: add e2e test that shows db cleanup problem 2023-10-13 00:43:48 +03:00
Faris Nabiev
45552451fe Merge branch 'fix/1294_add-e2e-test' into fix/1294_exhaustive-clear-sequenceDb-variables 2023-10-13 00:03:28 +03:00
Faris Nabiev
18ea27ac58 chore: add e2e test that shows db cleanup problem 2023-10-13 00:02:46 +03:00
Faris Nabiev
b4f444869e fix: add imperativeState and replace sequenceDb global variables with it 2023-10-12 16:39:31 +03:00
RounakJoshi09
13d85b6ee5 Parser and Logic For Parent Commit Added 2023-10-12 02:35:43 +05:30
NicolasNewman
e6906563a4 refactor(katex): resolved linting errors 2023-10-11 11:10:56 -05:00
NicolasNewman
2dce7f0268 Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-10-11 11:02:11 -05:00
NicolasNewman
6fa8a51a21 Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-10-11 10:46:45 -05:00
RounakJoshi09
995449cbf6 Error Message Changed 2023-10-11 20:40:14 +05:30
RounakJoshi09
ce3d9fcdde Added test suggested on PR 2023-10-10 11:09:30 +05:30
Harshit Anand
c279a9f9ed fix: clean link unit test resolved 2023-10-10 01:05:55 +05:30
RounakJoshi09
cdb4639aa4 bug/#3251_linkStyle-can't-specify-ids Fixed 2023-10-10 00:16:05 +05:30
Harshit Anand
2a9eb7f123 fix: target blank removed from anchor tag 2023-10-09 21:13:53 +05:30
Mr.Hope
1fec55d5f7 feat(gantt): update styles 2023-10-09 11:25:09 +08:00
Jakub Mikulas
4559ba625c docs(integrations): add Mermaid for Slack 2023-10-08 21:16:36 +02:00
Martin Pedersen
41c7b08c99 prevent-inherited-lineheights-on-edgeterminal-4083 2023-10-05 16:52:15 +02:00
Knut Sveidqvist
da79b371fe #3358 Recursive positioning paddings 2023-10-04 10:44:29 +02:00
Knut Sveidqvist
c8d155c455 #3358 Recursive positioning 2023-10-03 20:12:33 +02:00
Knut Sveidqvist
f00871a6b4 #3358 Recursive positioning 2023-10-03 14:19:08 +02:00
Knut Sveidqvist
b4e32542e8 #3358 Recursive positioning 2023-10-03 12:56:47 +02:00
0xflotus
0239e49d92 docs: fixed typo 2023-10-02 11:16:51 +02:00
Alois Klink
99beeba261 ci(pr-labeler): add required template option
This value is unused, but it's required, so we have to add it.

Fixes: a1673d3aca
2023-09-25 18:20:54 +01:00
Alois Klink
a1673d3aca ci(pr-labeler): replace TimonVS/pr-labeler-action
Replace the `TimonVS/pr-labeler-action` with
`release-drafter/release-drafter` as it has an [`autolabeler`][1]
option that can autolabel PRs for us.

This should fix labeling PRs from forks,
see https://github.com/TimonVS/pr-labeler-action/issues/25.

I've kept the `.github/pr-labeler.yml` configuration file, so that
links to it from the https://mermaid.js.org website continue to work.

I've also kept everything in the same
`.github/workflows/pr-labeler.yml` GitHub Actions workflow to make the
`git diff` easier to review, and to keep the GitHub Actions permissions
the same.

[1]: ff929b5ceb/README.md (autolabeler)
2023-09-24 19:18:56 +01:00
Alois Klink
672a289909 style(pr-labeler): format .github/pr-labeler.yml
Change the formatting of .github/pr-labeler.yml to make `git diff`'s
easier to understand in a future commit.
2023-09-24 19:18:01 +01:00
Alois Klink
dc22189eef docs(ci/pr-labeler): warn about security issues
Using `pull_request_target` is pretty dangerous, since it heavily
increases the risk of malicious PRs getting access to the mermaid-js
repo.

What we're doing currently is safe, but we should add a warning
message just to ensure that we're very careful when we make changes.

See: https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target
See: https://securitylab.github.com/research/github-actions-preventing-pwn-requests/
2023-09-24 19:17:03 +01:00
Alois Klink
5f740312fe ci(release-draft): handle new release-drafter name
https://github.com/toolmantim/release-drafter has been renamed to
https://github.com/release-drafter/release-drafter.
2023-09-24 19:16:57 +01:00
Alois Klink
123d53c265 ci(release-drafter): remove unused branch config
`branch` is not a valid configuration option for release-drafter,
see
https://github.com/release-drafter/release-drafter#configuration-options

There's is a similar [`references` option][1], but it does nothing when
using GitHub Actions (it's only there for GitHub apps).

There's also `commitish`, but it defaults to the target/branch the
GitHub Action job runs on, so we don't need to set that.

[1]: https://github.com/release-drafter/release-drafter#references
2023-09-24 19:16:51 +01:00
Alois Klink
b928e60d8b ci(pr-labeler): limit GITHUB_TOKEN permissions
Limit the `GITHUB_TOKEN` permissions for `TimonVS/pr-labeler-action`
to the minimum required permissions.
2023-09-24 19:16:38 +01:00
Alois Klink
9688269027 ci(release-draft): limit GITHUB_TOKEN permissions
Limit the `GITHUB_TOKEN` permissions for `toolmantim/release-drafter`
to the minimum required permissions.
2023-09-24 19:16:33 +01:00
Sidharth Vinod
faa1fda7ba refactor: Unify the edgeMarker adding logic 2023-09-14 15:25:52 +05:30
Sidharth Vinod
29e5e66481 refactor: Unify the edgeMarker adding logic 2023-09-14 15:20:21 +05:30
Knut Sveidqvist
836d3a87be WIP 2023-09-14 10:11:43 +02:00
Knut Sveidqvist
ccdb803501 Rendering, interim 2023-09-05 15:15:08 +02:00
Knut Sveidqvist
1e864a508d Rendering, tmp commit before refactoring 2023-09-05 11:13:27 +02:00
Knut Sveidqvist
5f1cfc7519 Support for compound blocks with id, title and type 2023-09-01 16:22:23 +02:00
Knut Sveidqvist
e52de6c279 Some cleanup 2023-09-01 15:40:49 +02:00
Knut Sveidqvist
8a55b212a2 Saving data from compound blocks 2023-09-01 15:33:38 +02:00
Knut Sveidqvist
aa7f5a8387 before refactoring 2023-09-01 14:06:13 +02:00
Knut Sveidqvist
5fc99f1982 #3358 Adding db calls from node statements 2023-08-28 12:51:49 +02:00
Knut Sveidqvist
b9531d56c4 Adding support for compound blocks 2023-08-08 15:56:02 +02:00
Sidharth Vinod
a61d94d3aa Merge branch 'develop' into fix/pie-chart-viewbox 2023-07-25 19:22:19 +05:30
Knut Sveidqvist
13114ebaa1 Merge branch 'develop' into 3358-blocks-diagram 2023-07-25 11:47:22 +02:00
Nikolay Rozhkov
e251baa61c Started layout and rendering 2023-07-11 02:51:10 +03:00
Nikolay Rozhkov
d165e8a642 Started block diag db development 2023-07-10 23:33:11 +03:00
Knut Sveidqvist
c10f76580f Adding some more tests 2023-07-09 12:28:14 +02:00
NicolasNewman
c2f60568cf chore(katex): lint-fix 2023-07-08 11:49:41 +09:00
Nicolas Newman
6518e1300f Update sequence.html 2023-07-08 11:39:37 +09:00
NicolasNewman
22a7234b54 chore(katex): generated types 2023-07-08 11:10:59 +09:00
NicolasNewman
67cbdb41f7 fix(katex): resolved legacyMathML config issues from previous merge 2023-07-08 11:04:35 +09:00
NicolasNewman
2cce8eebc3 Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-07-08 10:58:51 +09:00
NicolasNewman
3d5616cb35 docs(katex): version set to MERMAID_RELEASE_VERSION 2023-07-08 10:49:34 +09:00
NicolasNewman
f15e8c9edb Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-07-08 10:45:36 +09:00
NicolasNewman
a23f0da2a4 docs(katex): specified minimum version 2023-07-08 08:53:29 +09:00
Nikolay Rozhkov
975f36c7db Fixed block diagram parser import 2023-07-07 14:14:30 +03:00
Nikolay Rozhkov
fee2b244a1 Small cleanup 2023-07-07 14:12:18 +03:00
Nikolay Rozhkov
791e67641e Rename BlockDiagram to Block 2023-07-07 13:58:30 +03:00
Issue哥
e33c4acf7d Merge branch 'fix/pie-chart-viewbox' of github.com:iwestlin/mermaid into fix/pie-chart-viewbox 2023-07-07 15:43:35 +08:00
Issue哥
a2d1fb5e54 use computeWidthOfText 2023-07-07 15:42:40 +08:00
Sidharth Vinod
bb16e50233 Merge branch 'develop' into fix/pie-chart-viewbox 2023-07-07 10:16:47 +05:30
Knut Sveidqvist
86e1bb38ee #3358 First commit with basic grammar and 1st test 2023-07-05 12:01:37 +02:00
Issue哥
f211ed686c fix: apply suggested changes for PR #4288 2023-06-27 21:56:38 +08:00
Issue哥
77999f0b37 fix: adjust piechart viewbox for mobile devices with small width 2023-06-27 01:32:12 +08:00
NicolasNewman
40e75fe9b4 docs(katex): added documentation 2023-06-24 16:57:22 +09:00
NicolasNewman
f979ced49d refactor(katex): revision changes 2023-06-24 16:56:42 +09:00
NicolasNewman
fe8474f6c0 fix(katex): updated specs 2023-06-23 17:27:37 +09:00
NicolasNewman
8b42302f9b Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-06-23 16:57:30 +09:00
NicolasNewman
bee2b696aa Merge branch 'feature/2776_katex_math' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-06-23 16:54:32 +09:00
NicolasNewman
5c69e5fdb0 feat(katex): optimized importing of katex 2023-06-23 16:53:01 +09:00
NicolasNewman
9ee45767de Update docs 2023-05-31 08:43:09 +00:00
NicolasNewman
b193013c84 fix(katex): resolved removed class from demo during merging 2023-05-31 17:39:34 +09:00
NicolasNewman
a3930eb629 fix(katex): resolved broken lockfile 2023-05-31 17:37:53 +09:00
NicolasNewman
619ae2fb6d Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-05-31 17:31:32 +09:00
NicolasNewman
0605b85d99 Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-05-31 17:27:42 +09:00
NicolasNewman
077cc653d0 chore(katex): included uncommited files 2023-05-31 16:42:54 +09:00
NicolasNewman
cf54ddc62b chore(katex): lint:fix 2023-05-06 17:46:19 +09:00
NicolasNewman
e7a1d8390c Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-05-06 17:32:15 +09:00
NicolasNewman
4202488da0 feat(katex): added KaTeX support to sequence diagrams 2023-05-06 17:19:31 +09:00
NicolasNewman
f8a4488050 feat(katex): added common functions for aiding in KaTeX rendering 2023-05-06 11:33:23 +09:00
NicolasNewman
e0e038d223 Merge branch 'develop' of https://github.com/NicolasNewman/mermaid to feature/2776_katex_math 2023-04-14 11:02:24 +09:00
NicolasNewman
f4cb6a1927 chore(katex): fixed issues from merge 2023-04-14 10:58:14 +09:00
NicolasNewman
f3b939e03a Merge branch 'develop' of https://github.com/NicolasNewman/mermaid into feature/2776_katex_math 2023-04-13 09:36:48 +09:00
Nicolas Newman
12e1af44fc Merge branch 'mermaid-js:develop' into feature/2776_katex_math 2023-03-03 20:14:17 -06:00
NicolasNewman
7dd21d85ba fix(katex): disabled 4th katex cypress test due to recent changes to error handling in develop 2023-02-23 15:16:23 -06:00
NicolasNewman
fdd900060a chore(katex): lint:fix 2023-02-23 15:15:00 -06:00
NicolasNewman
ebef1c4f6b chore: merged with develop 2023-02-23 14:08:58 -06:00
NicolasNewman
bbc6eb6ee7 chore(katex): lint:fix 2023-02-13 16:02:49 -06:00
NicolasNewman
fb5d80a7a1 fix(katex): removed extra body tag from merge 2023-02-13 15:29:32 -06:00
NicolasNewman
2740edfc2b chore(katex): added katex to cSpell.json 2023-02-13 14:06:09 -06:00
NicolasNewman
4da9c71be9 fix(katex): fixed rendering of KaTeX errors 2023-02-13 14:04:16 -06:00
NicolasNewman
21479b2b28 fix(katex): fixed rendering of KaTeX errors 2023-02-13 14:03:23 -06:00
NicolasNewman
483722fb3d fix(katex): fixed rendering of KaTeX errors 2023-02-13 12:52:22 -06:00
Nicolas Newman
58bc6c7f02 Merge branch 'mermaid-js:develop' into feature/2776_katex_math 2023-02-13 11:34:05 -06:00
NicolasNewman
b243609e87 chore(katex): merged with branch develop 2023-02-13 11:32:31 -06:00
Nicolas Newman
f346056058 chore(katex): removed unused debugging code 2022-04-02 08:13:59 -09:00
Nicolas Newman
f67254cdc7 Merge branch 'develop' of https://github.com/mermaid-js/mermaid into feature/2776_katex_math 2022-04-02 08:09:11 -09:00
Nicolas Newman
cc2c828e78 feat(katex): added cypress testing 2022-04-02 08:00:56 -09:00
Nicolas Newman
825f50299a feat(katex): improved handling of KaTeX errors 2022-03-31 13:01:10 -04:00
Nicolas Newman
1db4230d35 feat(katex): fixed node sizing issues, caused by KaTeX fonts not being loaded 2022-03-29 17:37:35 -04:00
Nicolas Newman
4736e59393 fix(katex): enforce html output for consistency 2022-03-29 17:25:51 -04:00
Nicolas Newman
275f2002b5 chore: added katex demo 2022-02-28 16:23:35 -05:00
Nicolas Newman
c2e8cb75bd chore: added katex rendering to flowcharts v1 & 2 2022-02-28 16:20:17 -05:00
Nicolas Newman
b746747650 chore: added css-loader, sass, sass-loader, style-loader 2022-02-28 16:19:17 -05:00
Nicolas Newman
1e53c121ae chore: added katex as a dependency 2022-02-26 12:51:05 -05:00
287 changed files with 16709 additions and 7724 deletions

137
.cspell/code-terms.txt Normal file
View File

@@ -0,0 +1,137 @@
# This file contains coding related terms
ALPHANUM
antiscript
APPLYCLASS
ARROWHEADSTYLE
ARROWTYPE
autonumber
axisl-line
Bigdecimal
birel
BIREL
bqstring
BQUOTE
bramp
BRKT
callbackargs
callbackname
classdef
classdefid
classentity
classname
COLONSEP
COMPOSIT_STATE
concat
controlx
controly
CSSCLASS
CYLINDEREND
CYLINDERSTART
datakey
DEND
descr
distp
distq
divs
docref
DOMID
doublecircle
DOUBLECIRCLEEND
DOUBLECIRCLESTART
DQUOTE
DSTART
edgesep
EMPTYSTR
enddate
ERDIAGRAM
flatmap
forwardable
frontmatter
funs
gantt
GENERICTYPE
getBoundarys
grammr
graphtype
interp
introdcued
INVTRAPEND
INVTRAPSTART
JDBC
jison
Kaufmann
keyify
LABELPOS
LABELTYPE
lcov
LEFTOF
Lexa
linebreak
LINETYPE
LINKSTYLE
LLABEL
loglevel
LOGMSG
lookaheads
mdast
minlen
Mstartx
MULT
NODIR
NSTR
Qcontrolx
reinit
rels
reqs
rewritelinks
rgba
RIGHTOF
sankey
sequencenumber
shrc
signaltype
someclass
SPACELINE
SPACELIST
STADIUMEND
STADIUMSTART
startdate
startx
starty
STMNT
stopx
stopy
strikethrough
stringifying
struct
STYLECLASS
STYLEOPTS
subcomponent
subcomponents
SUBROUTINEEND
SUBROUTINESTART
Subschemas
substr
TAGEND
TAGSTART
techn
TESTSTR
TEXTDATA
TEXTLENGTH
titlevalue
topbar
TRAPEND
TRAPSTART
ts-nocheck
tsdoc
typeof
typestr
unshift
verifymethod
VERIFYMTHD
WARN_DOCSDIR_DOESNT_MATCH
xhost
yaxis
yfunc
yytext
zenuml

8
.cspell/contributors.txt Normal file
View File

@@ -0,0 +1,8 @@
# Contributors to mermaidjs, one per line
Ashish Jain
cpettitt
Dong Cai
Nikolay Rozhkov
Peng Xiao
subhash-halder
Vinod Sidharth

View File

@@ -0,0 +1,52 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json
$schema: https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json
dictionaryDefinitions:
- name: code-terms
path: ./code-terms.txt
description: A list of coding related terms.
addWords: true
- name: mermaid-terms
path: ./mermaid-terms.txt
description: A list of terms related to the mermaid project.
addWords: true
- name: misc-terms
path: ./misc-terms.txt
description: A list of miscellaneous terms.
- name: 3rd-party-terms
path: ./libraries.txt
description: A list of 3rd party terms from dependencies.
addWords: true
- name: contributors
path: ./contributors.txt
description: A list of contributors to the mermaid project.
type: 'W'
addWords: true
# cspell:disable
- name: suggestions
words:
- none
suggestWords:
- seperator:separator
- vertice:vertex
# cspell:enable
patterns:
- name: character-set-cyrillic
pattern: '/\p{Script_Extensions=Cyrillic}+/gu'
- name: svg-block
pattern: '<svg[\S\s]+?</svg>'
- name: json-property
pattern: '/"[\w/@-]+":/g'
dictionaries:
- mermaid-terms
- suggestions
- contributors
ignorePaths:
- '*.txt' # do not spell check local dictionaries
# cspell:dictionary misc-terms

71
.cspell/libraries.txt Normal file
View File

@@ -0,0 +1,71 @@
# Add third party library terms below
acyclicer
Antlr
Appli
applitools
Asciidoctor
Astah
automerge
bilkent
bisheng
Blazor
codedoc
Codemia
codepaths
csstree
cytoscape
cytoscape-cose-bilkent
dagre
dagre-d3
Deepdwn
Docsify
Docsy
DokuWiki
dompurify
elkjs
fontawesome
Foswiki
Gitea
graphlib
Grav
iconify
Inkdrop
jiti
jsdocs
jsfiddle
jsonschema
katex
khroma
langium
mathml
matplotlib
mdbook
Mermerd
mkdocs
Nextra
nodenext
npmjs
pageview
pathe
phpbb
pixelmatch
Podlite
presetAttributify
pyplot
redmine
rehype
rscratch
sparkline
sphinxcontrib
ssim
stylis
Swimm
tsbuildinfo
Tuleap
Typora
unocss
unplugin
unstub
vite
vitest
Zune

39
.cspell/mermaid-terms.txt Normal file
View File

@@ -0,0 +1,39 @@
Adamiecki
arrowend
bmatrix
braintree
catmull
compositTitleSize
doublecircle
elems
gantt
gitgraph
gzipped
knsv
Knut
marginx
marginy
Markdownish
mermaidjs
mindmap
mindmaps
multigraph
nodesep
NOTEGROUP
Pinterest
rankdir
ranksep
rect
rects
sandboxed
siebling
statediagram
substate
Sveidqvist
unfixable
Viewbox
viewports
visio
vitepress
xlink
xychart

1
.cspell/misc-terms.txt Normal file
View File

@@ -0,0 +1 @@
newbranch

View File

@@ -63,13 +63,24 @@ module.exports = {
minimumDescriptionLength: 10,
},
],
'@typescript-eslint/naming-convention': [
'error',
{
selector: 'typeLike',
format: ['PascalCase'],
custom: {
regex: '^I[A-Z]',
match: false,
},
},
],
'json/*': ['error', 'allowComments'],
'@cspell/spellchecker': [
'error',
{
checkIdentifiers: false,
checkStrings: false,
checkStringTemplates: false,
checkIdentifiers: true,
checkStrings: true,
checkStringTemplates: true,
},
],
'no-empty': [
@@ -148,6 +159,19 @@ module.exports = {
'@typescript-eslint/no-unused-vars': 'off',
},
},
{
files: ['*.spec.{ts,js}', 'tests/**', 'cypress/**/*.js'],
rules: {
'@cspell/spellchecker': [
'error',
{
checkIdentifiers: false,
checkStrings: false,
checkStringTemplates: false,
},
],
},
},
{
files: ['*.html', '*.md', '**/*.md/*'],
rules: {

View File

@@ -3,9 +3,9 @@ contact_links:
- name: GitHub Discussions
url: https://github.com/mermaid-js/mermaid/discussions
about: Ask the Community questions or share your own graphs in our discussions.
- name: Slack
url: https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE
about: Join our Community on Slack for Help and a casual chat.
- name: Discord
url: https://discord.gg/AgrbSrBer3
about: Join our Community on Discord for Help and a casual chat.
- name: Documentation
url: https://mermaid.js.org
about: Read our documentation for all that Mermaid.js can offer.

10
.github/lychee.toml vendored
View File

@@ -34,8 +34,14 @@ exclude = [
# Don't check files that are generated during the build via `pnpm docs:code`
'packages/mermaid/src/docs/config/setup/*',
# Ignore slack invite
"https://join.slack.com/"
# Ignore Discord invite
"https://discord.gg",
# BundlePhobia has frequent downtime
"https://bundlephobia.com",
# Chrome webstore migration issue. Temporary
"https://chromewebstore.google.com"
]
# Exclude all private IPs from checking.

View File

@@ -1,4 +1,22 @@
'Type: Bug / Error': ['bug/*', fix/*]
'Type: Enhancement': ['feature/*', 'feat/*']
'Type: Other': ['other/*', 'chore/*', 'test/*', 'refactor/*']
'Area: Documentation': ['docs/*']
# yaml-language-server: $schema=https://raw.githubusercontent.com/release-drafter/release-drafter/master/schema.json
autolabeler:
- label: 'Type: Bug / Error'
branch:
- '/bug\/.+/'
- '/fix\/.+/'
- label: 'Type: Enhancement'
branch:
- '/feature\/.+/'
- '/feat\/.+/'
- label: 'Type: Other'
branch:
- '/other\/.+/'
- '/chore\/.+/'
- '/test\/.+/'
- '/refactor\/.+/'
- label: 'Area: Documentation'
branch:
- '/docs\/.+/'
template: |
This field is unused, as we only use this config file for labeling PRs.

View File

@@ -12,7 +12,7 @@ Describe the way your implementation works or what design decisions you made if
Make sure you
- [ ] :book: have read the [contribution guidelines](https://github.com/mermaid-js/mermaid/blob/develop/CONTRIBUTING.md)
- [ ] :book: have read the [contribution guidelines](https://mermaid.js.org/community/contributing.html)
- [ ] :computer: have added necessary unit/e2e tests.
- [ ] :notebook: have added documentation. Make sure [`MERMAID_RELEASE_VERSION`](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/docs/community/development.md#3-update-documentation) is used for all new features.
- [ ] :notebook: have added documentation. Make sure [`MERMAID_RELEASE_VERSION`](https://mermaid.js.org/community/contributing.html#update-documentation) is used for all new features.
- [ ] :bookmark: targeted `develop` branch

View File

@@ -25,8 +25,6 @@ categories:
change-template: '- $TITLE (#$NUMBER) @$AUTHOR'
sort-by: title
sort-direction: ascending
branches:
- develop
exclude-labels:
- 'Skip changelog'
no-changes-template: 'This release contains minor changes and bugfixes.'

View File

@@ -16,20 +16,20 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: 18
node-version-file: '.node-version'
- name: Install Packages
run: pnpm install --frozen-lockfile
- name: Verify release verion
- name: Verify release version
if: ${{ github.event_name == 'push' && (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/heads/release')) }}
run: pnpm --filter mermaid run docs:verify-version

View File

@@ -15,20 +15,17 @@ permissions:
jobs:
build-mermaid:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
# uses version from "packageManager" field in package.json
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
- name: Setup Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ matrix.node-version }}
node-version-file: '.node-version'
- name: Install Packages
run: |

View File

@@ -18,7 +18,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Check for difference in README.md and docs/README.md
run: |

View File

@@ -15,7 +15,7 @@ jobs:
name: check tests
if: github.repository_owner == 'mermaid-js'
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: testomatio/check-tests@stable

View File

@@ -29,7 +29,7 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v3
uses: actions/checkout@v4
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL

View File

@@ -1,6 +1,6 @@
# Dependency Review Action
#
# This Action will scan dependency manifest files that change as part of a Pull Reqest, surfacing known-vulnerable versions of the packages declared or updated in the PR. Once installed, if the workflow run is marked as required, PRs introducing known-vulnerable packages will be blocked from merging.
# This Action will scan dependency manifest files that change as part of a Pull Request, surfacing known-vulnerable versions of the packages declared or updated in the PR. Once installed, if the workflow run is marked as required, PRs introducing known-vulnerable packages will be blocked from merging.
#
# Source repository: https://github.com/actions/dependency-review-action
# Public documentation: https://docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review#dependency-review-enforcement
@@ -15,6 +15,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: 'Checkout Repository'
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: 'Dependency Review'
uses: actions/dependency-review-action@v3

View File

@@ -21,24 +21,24 @@ env:
jobs:
e2e-applitools:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
container:
image: cypress/browsers:node-20.11.0-chrome-121.0.6167.85-1-ff-120.0-edge-121.0.2277.83-1
options: --user 1001
steps:
- if: ${{ ! env.USE_APPLI }}
name: Warn if not using Applitools
run: |
echo "::error,title=Not using Applitols::APPLITOOLS_API_KEY is empty, disabling Applitools for this run."
echo "::error,title=Not using Applitools::APPLITOOLS_API_KEY is empty, disabling Applitools for this run."
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
# uses version from "packageManager" field in package.json
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
node-version-file: '.node-version'
- if: ${{ env.USE_APPLI }}
name: Notify applitools of new batch

View File

@@ -1,31 +1,90 @@
# We use github cache to save snapshots between runs.
# For PRs and MergeQueues, the target commit is used, and for push events, github.event.previous is used.
# If a snapshot for a given Hash is not found, we checkout that commit, run the tests and cache the snapshots.
# These are then downloaded before running the E2E, providing the reference snapshots.
# If there are any errors, the diff image is uploaded to artifacts, and the user is notified.
name: E2E
on:
push:
branches-ignore:
- 'gh-readonly-queue/**'
pull_request:
merge_group:
permissions:
contents: read
env:
# For PRs and MergeQueues, the target commit is used, and for push events, github.event.previous is used.
targetHash: ${{ github.event.pull_request.base.sha || github.event.merge_group.base_sha || (github.event.before == '0000000000000000000000000000000000000000' && 'develop' || github.event.before) }}
jobs:
cache:
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-20.11.0-chrome-121.0.6167.85-1-ff-120.0-edge-121.0.2277.83-1
options: --user 1001
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: '.node-version'
- name: Cache snapshots
id: cache-snapshot
uses: actions/cache@v4
with:
save-always: true
path: ./cypress/snapshots
key: ${{ runner.os }}-snapshots-${{ env.targetHash }}
# If a snapshot for a given Hash is not found, we checkout that commit, run the tests and cache the snapshots.
- name: Switch to base branch
if: ${{ steps.cache-snapshot.outputs.cache-hit != 'true' }}
uses: actions/checkout@v4
with:
ref: ${{ env.targetHash }}
- name: Cypress run
uses: cypress-io/github-action@v4
id: cypress-snapshot-gen
if: ${{ steps.cache-snapshot.outputs.cache-hit != 'true' }}
with:
start: pnpm run dev
wait-on: 'http://localhost:9000'
browser: chrome
e2e:
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-20.11.0-chrome-121.0.6167.85-1-ff-120.0-edge-121.0.2277.83-1
options: --user 1001
needs: cache
strategy:
fail-fast: false
matrix:
node-version: [18.x]
containers: [1, 2, 3, 4]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
# uses version from "packageManager" field in package.json
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
node-version-file: '.node-version'
# These cached snapshots are downloaded, providing the reference snapshots.
- name: Cache snapshots
id: cache-snapshot
uses: actions/cache/restore@v3
with:
path: ./cypress/snapshots
key: ${{ runner.os }}-snapshots-${{ env.targetHash }}
# Install NPM dependencies, cache them correctly
# and run all Cypress tests
@@ -38,6 +97,7 @@ jobs:
with:
start: pnpm run dev:coverage
wait-on: 'http://localhost:9000'
browser: chrome
# Disable recording if we don't have an API key
# e.g. if this action was run from a fork
record: ${{ secrets.CYPRESS_RECORD_KEY != '' }}
@@ -46,6 +106,7 @@ jobs:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
VITEST_COVERAGE: true
CYPRESS_COMMIT: ${{ github.sha }}
- name: Upload Coverage to Codecov
uses: codecov/codecov-action@v3
# Run step only pushes to develop and pull_requests
@@ -57,9 +118,55 @@ jobs:
fail_ci_if_error: false
verbose: true
token: 6845cc80-77ee-4e17-85a1-026cd95e0766
# We upload the artifacts into numbered archives to prevent overwriting
- name: Upload Artifacts
uses: actions/upload-artifact@v3
if: ${{ failure() && steps.cypress.conclusion == 'failure' }}
uses: actions/upload-artifact@v4
if: ${{ always() }}
with:
name: snapshots-${{ matrix.containers }}
retention-days: 1
path: ./cypress/snapshots
combineArtifacts:
needs: e2e
runs-on: ubuntu-latest
if: ${{ always() }}
steps:
# Download all snapshot artifacts and merge them into a single folder
- name: Download All Artifacts
uses: actions/download-artifact@v4
with:
path: snapshots
pattern: snapshots-*
merge-multiple: true
# For successful push events, we save the snapshots cache
- name: Save snapshots cache
id: cache-upload
if: ${{ github.event_name == 'push' && needs.e2e.result != 'failure' }}
uses: actions/cache/save@v3
with:
path: ./snapshots
key: ${{ runner.os }}-snapshots-${{ github.event.after }}
- name: Flatten images to a folder
if: ${{ needs.e2e.result == 'failure' }}
run: |
mkdir errors
cd snapshots
find . -mindepth 2 -type d -name "*__diff_output__*" -exec sh -c 'mv "$0"/*.png ../errors/' {} \;
- name: Upload Error snapshots
if: ${{ needs.e2e.result == 'failure' }}
uses: actions/upload-artifact@v4
id: upload-artifacts
with:
name: error-snapshots
path: cypress/snapshots/**/__diff_output__/*
retention-days: 10
path: errors/
- name: Notify Users
if: ${{ needs.e2e.result == 'failure' }}
run: |
echo "::error title=Visual tests failed::You can view images that failed by downloading the error-snapshots artifact: ${{ steps.upload-artifacts.outputs.artifact-url }}"

View File

@@ -26,7 +26,7 @@ jobs:
# lychee only uses the GITHUB_TOKEN to avoid rate-limiting
contents: read
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Restore lychee cache
uses: actions/cache@v3
@@ -36,7 +36,7 @@ jobs:
restore-keys: cache-lychee-
- name: Link Checker
uses: lycheeverse/lychee-action@v1.8.0
uses: lycheeverse/lychee-action@v1.9.3
with:
args: >-
--config .github/lychee.toml

View File

@@ -16,20 +16,17 @@ permissions:
jobs:
lint:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
# uses version from "packageManager" field in package.json
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
- name: Setup Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ matrix.node-version }}
node-version-file: '.node-version'
- name: Install Packages
run: |

View File

@@ -1,23 +0,0 @@
name: Validate PR Labeler Configuration
on:
push:
paths:
- .github/workflows/pr-labeler-config-validator.yml
- .github/workflows/pr-labeler.yml
- .github/pr-labeler.yml
pull_request:
paths:
- .github/workflows/pr-labeler-config-validator.yml
- .github/workflows/pr-labeler.yml
- .github/pr-labeler.yml
jobs:
pr-labeler:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Validate Configuration
uses: Yash-Singh1/pr-labeler-config-validator@releases/v0.0.3
with:
configuration-path: .github/pr-labeler.yml

View File

@@ -1,13 +1,31 @@
name: Apply labels to PR
on:
pull_request_target:
types: [opened]
# required for pr-labeler to support PRs from forks
# ===================== ⛔ ☢️ 🚫 ⚠️ Warning ⚠️ 🚫 ☢️ ⛔ =======================
# Be very careful what you put in this GitHub Action workflow file to avoid
# malicious PRs from getting access to the Mermaid-js repo.
#
# Please read the following first before reviewing/merging:
# - https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target
# - https://securitylab.github.com/research/github-actions-preventing-pwn-requests/
types: [opened, reopened, synchronize]
permissions:
contents: read
jobs:
pr-labeler:
runs-on: ubuntu-latest
permissions:
contents: read # read permission is required to read config file
pull-requests: write # write permission is required to label PRs
steps:
- name: Label PR
uses: TimonVS/pr-labeler-action@v4
uses: release-drafter/release-drafter@v5
with:
config-name: pr-labeler.yml
disable-autolabeler: false
disable-releaser: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -23,15 +23,15 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: 18
node-version-file: '.node-version'
- name: Install Packages
run: pnpm install --frozen-lockfile

View File

@@ -3,13 +3,21 @@ name: Draft Release
on:
push:
branches:
- develop
- master
permissions:
contents: read
jobs:
draft-release:
runs-on: ubuntu-latest
permissions:
contents: write # write permission is required to create a GitHub release
pull-requests: read # required to read PR titles/labels
steps:
- name: Draft Release
uses: toolmantim/release-drafter@v5
uses: release-drafter/release-drafter@v5
with:
disable-autolabeler: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

View File

@@ -9,17 +9,17 @@ jobs:
publish-preview:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: 18.x
node-version-file: '.node-version'
- name: Install Packages
run: |

View File

@@ -8,17 +8,17 @@ jobs:
publish:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: fregante/setup-git-user@v2
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
# uses version from "packageManager" field in package.json
- name: Setup Node.js v18
uses: actions/setup-node@v3
- name: Setup Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: 18.x
node-version-file: '.node-version'
- name: Install Packages
run: |

View File

@@ -8,20 +8,17 @@ permissions:
jobs:
unit-test:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18.x]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
# uses version from "packageManager" field in package.json
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
- name: Setup Node.js
uses: actions/setup-node@v4
with:
cache: pnpm
node-version: ${{ matrix.node-version }}
node-version-file: '.node-version'
- name: Install Packages
run: |

View File

@@ -8,11 +8,18 @@ jobs:
update-browser-list:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- run: npx browserslist@latest --update-db
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- run: npx update-browserslist-db@latest
- name: Commit changes
uses: EndBug/add-and-commit@v9
with:
author_name: ${{ github.actor }}
author_email: ${{ github.actor }}@users.noreply.github.com
message: 'chore: update browsers list'
push: false
- name: Create Pull Request
uses: peter-evans/create-pull-request@v5
with:
branch: update-browserslist
title: Update Browserslist

1
.gitignore vendored
View File

@@ -46,3 +46,4 @@ stats/
demos/dev/**
!/demos/dev/example.html
tsx-0/**

View File

@@ -6,6 +6,6 @@ export default {
// https://prettier.io/docs/en/cli.html#--cache
'prettier --write',
],
'cSpell.json': ['ts-node-esm scripts/fixCSpell.ts'],
'.cspell/*.txt': ['tsx scripts/fixCSpell.ts'],
'**/*.jison': ['pnpm -w run lint:jison'],
};

1
.node-version Normal file
View File

@@ -0,0 +1 @@
v20.11.1

2
.npmrc
View File

@@ -1,2 +1,4 @@
registry=https://registry.npmjs.org
auto-install-peers=true
strict-peer-dependencies=false
package-import-method=clone-or-copy

View File

@@ -1,6 +1,7 @@
dist
cypress/platform/xss3.html
.cache
.pnpm-store
coverage
# Autogenerated by PNPM
pnpm-lock.yaml
@@ -10,3 +11,6 @@ stats
.nyc_output
# Autogenerated by `pnpm run --filter mermaid types:build-config`
packages/mermaid/src/config.type.ts
# Ignore the files creates in /demos/dev except for example.html
demos/dev/**
!/demos/dev/example.html

View File

@@ -117,6 +117,9 @@ export const getBuildConfig = ({ minify, core, watch, entryName }: BuildOptions)
output,
},
},
define: {
'import.meta.vitest': 'undefined',
},
resolve: {
extensions: [],
},

View File

@@ -25,6 +25,7 @@ const MERMAID_CONFIG_DIAGRAM_KEYS = [
'gitGraph',
'c4',
'sankey',
'block',
] as const;
/**

View File

@@ -2,7 +2,7 @@
"recommendations": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"zixuanchen.vitest-explorer",
"vitest.explorer",
"luniclynx.bison"
]
}

3
.vscode/launch.json vendored
View File

@@ -18,7 +18,8 @@
"type": "node",
"request": "launch",
"args": ["scripts/docs.cli.mts"],
"runtimeArgs": ["--loader", "ts-node/esm"],
// we'll need to change this to --import in Node.JS v20.6.0 and up
"runtimeArgs": ["--loader", "tsx/esm"],
"cwd": "${workspaceRoot}/packages/mermaid",
"skipFiles": ["<node_internals>/**", "**/node_modules/**"],
"smartStep": true,

View File

@@ -1,78 +0,0 @@
# Contributing
Please read in detail about how to contribute documentation and code on the [Mermaid documentation site.](https://mermaid-js.github.io/mermaid/#/development)
---
# Mermaid contribution cheat-sheet
## Requirements
- [volta](https://volta.sh/) to manage node versions.
- [Node.js](https://nodejs.org/en/). `volta install node`
- [pnpm](https://pnpm.io/) package manager. `volta install pnpm`
## Development Installation
If you don't have direct access to push to mermaid repositories, make a fork first. Then clone. Or clone directly from mermaid-js:
```bash
git clone git@github.com:mermaid-js/mermaid.git
cd mermaid
```
Install required packages:
```bash
# npx is required for first install as volta support for pnpm is not added yet.
npx pnpm install
pnpm test # run unit tests
pnpm dev # starts a dev server
```
Open <http://localhost:9000> in your browser after starting the dev server.
You can also duplicate the `example.html` file in `demos/dev`, rename it and add your own mermaid code to it.
That will be served at <http://localhost:9000/dev/your-file-name.html>.
### Docker
If you are using docker and docker-compose, you have self-documented `run` bash script, which is a convenient alias for docker-compose commands:
```bash
./run install # npx pnpm install
./run test # pnpm test
```
## Testing
```bash
# Run unit test
pnpm test
# Run unit test in watch mode
pnpm test:watch
# Run E2E test
pnpm e2e
# Debug E2E tests
pnpm dev
pnpm cypress:open # in another terminal
```
## Branch name format:
```text
[feature | bug | chore | docs]/[issue number]_[short description using dashes ('-') or underscores ('_') instead of spaces]
```
eg: `feature/2945_state-diagram-new-arrow-florbs`, `bug/1123_fix_random_ugly_red_text`
## Documentation
Documentation is necessary for all non bugfix/refactoring changes.
Only make changes to files that are in [`/packages/mermaid/src/docs`](packages/mermaid/src/docs)
**_DO NOT CHANGE FILES IN `/docs` MANUALLY_**
The `/docs` folder will be rebuilt and committed as part of a pre-commit hook.
[Join our slack community if you want closer contact!](https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE)

1
CONTRIBUTING.md Symbolic link
View File

@@ -0,0 +1 @@
./packages/mermaid/src/docs/community/contributing.md

2
Dockerfile Normal file
View File

@@ -0,0 +1,2 @@
FROM node:20.11.1-alpine3.19 AS base
RUN wget -qO- https://get.pnpm.io/install.sh | ENV="$HOME/.shrc" SHELL="$(which sh)" sh -

View File

@@ -15,7 +15,7 @@ Generate diagrams from markdown-like text.
<a href="https://mermaid.live/"><b>Live Editor!</b></a>
</p>
<p align="center">
<a href="https://mermaid.js.org">📖 Documentation</a> | <a href="https://mermaid.js.org/intro/">🚀 Getting Started</a> | <a href="https://www.jsdelivr.com/package/npm/mermaid">🌐 CDN</a> | <a href="https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE" title="Slack invite">🙌 Join Us</a>
<a href="https://mermaid.js.org">📖 Documentation</a> | <a href="https://mermaid.js.org/intro/">🚀 Getting Started</a> | <a href="https://www.jsdelivr.com/package/npm/mermaid">🌐 CDN</a> | <a href="https://discord.gg/AgrbSrBer3" title="Discord invite">🙌 Join Us</a>
</p>
<p align="center">
<a href="./README.zh-CN.md">简体中文</a>
@@ -33,7 +33,7 @@ Try Live Editor previews of future releases: <a href="https://develop.git.mermai
[![Coverage Status](https://codecov.io/github/mermaid-js/mermaid/branch/develop/graph/badge.svg)](https://app.codecov.io/github/mermaid-js/mermaid/tree/develop)
[![CDN Status](https://img.shields.io/jsdelivr/npm/hm/mermaid)](https://www.jsdelivr.com/package/npm/mermaid)
[![NPM Downloads](https://img.shields.io/npm/dm/mermaid)](https://www.npmjs.com/package/mermaid)
[![Join our Slack!](https://img.shields.io/static/v1?message=join%20chat&color=9cf&logo=slack&label=slack)](https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE)
[![Join our Discord!](https://img.shields.io/static/v1?message=join%20chat&color=9cf&logo=discord&label=discord)](https://discord.gg/AgrbSrBer3)
[![Twitter Follow](https://img.shields.io/badge/Social-mermaidjs__-blue?style=social&logo=X)](https://twitter.com/mermaidjs_)
<img src="./img/header.png" alt="" />
@@ -42,7 +42,23 @@ Try Live Editor previews of future releases: <a href="https://develop.git.mermai
**Thanks to all involved, people committing pull requests, people answering questions! 🙏**
<a href="https://mermaid-js.github.io/mermaid/landing/"><img src="https://github.com/mermaid-js/mermaid/blob/master/docs/intro/img/book-banner-post-release.jpg" alt="Explore Mermaid.js in depth, with real-world examples, tips & tricks from the creator... The first official book on Mermaid is available for purchase. Check it out!"></a>
<a href="https://mermaid.js.org/landing/"><img src="https://github.com/mermaid-js/mermaid/blob/master/docs/intro/img/book-banner-post-release.jpg" alt="Explore Mermaid.js in depth, with real-world examples, tips & tricks from the creator... The first official book on Mermaid is available for purchase. Check it out!"></a>
## Table of content
<details>
<summary>Expand contents</summary>
- [About](#about)
- [Examples](#examples)
- [Release](#release)
- [Related projects](#related-projects)
- [Contributors](#contributors---)
- [Security and safe diagrams](#security-and-safe-diagrams)
- [Reporting vulnerabilities](#reporting-vulnerabilities)
- [Appreciation](#appreciation)
</details>
## About
@@ -58,12 +74,12 @@ Mermaid addresses this problem by enabling users to create easily modifiable dia
<br/>
Mermaid allows even non-programmers to easily create detailed diagrams through the [Mermaid Live Editor](https://mermaid.live/).<br/>
[Tutorials](./docs/config/Tutorials.md) has video tutorials.
Use Mermaid with your favorite applications, check out the list of [Integrations and Usages of Mermaid](./docs/ecosystem/integrations-community.md).
For video tutorials, visit our [Tutorials](https://mermaid.js.org/ecosystem/tutorials.html) page.
Use Mermaid with your favorite applications, check out the list of [Integrations and Usages of Mermaid](https://mermaid.js.org/ecosystem/integrations-community.html).
You can also use Mermaid within [GitHub](https://github.blog/2022-02-14-include-diagrams-markdown-files-mermaid/) as well many of your other favorite applications—check out the list of [Integrations and Usages of Mermaid](./docs/ecosystem/integrations-community.md).
You can also use Mermaid within [GitHub](https://github.blog/2022-02-14-include-diagrams-markdown-files-mermaid/) as well many of your other favorite applications—check out the list of [Integrations and Usages of Mermaid](https://mermaid.js.org/ecosystem/integrations-community.html).
For a more detailed introduction to Mermaid and some of its more basic uses, look to the [Beginner's Guide](./docs/intro/getting-started.md), [Usage](./docs/config/usage.md) and [Tutorials](./docs/config/Tutorials.md).
For a more detailed introduction to Mermaid and some of its more basic uses, look to the [Beginner's Guide](https://mermaid.js.org/intro/getting-started.html), [Usage](https://mermaid.js.org/config/usage.html) and [Tutorials](https://mermaid.js.org/ecosystem/tutorials.html).
In our release process we rely heavily on visual regression tests using [applitools](https://applitools.com/). Applitools is a great service which has been easy to use and integrate with our tests.
@@ -75,11 +91,11 @@ In our release process we rely heavily on visual regression tests using [applito
## Examples
**The following are some examples of the diagrams, charts and graphs that can be made using Mermaid. Click here to jump into the [text syntax](https://mermaid-js.github.io/mermaid/#/n00b-syntaxReference).**
**The following are some examples of the diagrams, charts and graphs that can be made using Mermaid. Click here to jump into the [text syntax](https://mermaid.js.org/intro/syntax-reference.html).**
<!-- <Flowchart> -->
### Flowchart [<a href="https://mermaid-js.github.io/mermaid/#/flowchart">docs</a> - <a href="https://mermaid.live/edit#pako:eNpNkMtqwzAQRX9FzKqFJK7t1km8KDQP6KJQSLOLvZhIY1tgS0GWmgbb_165IaFaiXvOFTPqgGtBkEJR6zOv0Fj2scsU8-ft8I5G5Gw6fe339GN7tnrYaafE45WvRsLW3Ya4bKVWwzVe_xU-FfVsc9hR62rLwvw_2591z7Y3FuUwgYZMg1L4ObrRzMBW1FAGqb8KKtCLGWRq8Ko7CbS0FdJqA2mBdUsTQGf110VxSK1xdJM2EkuDzd2qNQrypQ7s5TQuXcrW-ie5VoUsx9yZ2seVtac2DYIRz0ppK3eccd0ErRTjD1XfyyRIomSBUUzJPMaXOBb8GC4XRfQcFmL-FEYIwzD8AggvcHE">live editor</a>]
### Flowchart [<a href="https://mermaid.js.org/syntax/flowchart.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNpNkMtqwzAQRX9FzKqFJK7t1km8KDQP6KJQSLOLvZhIY1tgS0GWmgbb_165IaFaiXvOFTPqgGtBkEJR6zOv0Fj2scsU8-ft8I5G5Gw6fe339GN7tnrYaafE45WvRsLW3Ya4bKVWwzVe_xU-FfVsc9hR62rLwvw_2591z7Y3FuUwgYZMg1L4ObrRzMBW1FAGqb8KKtCLGWRq8Ko7CbS0FdJqA2mBdUsTQGf110VxSK1xdJM2EkuDzd2qNQrypQ7s5TQuXcrW-ie5VoUsx9yZ2seVtac2DYIRz0ppK3eccd0ErRTjD1XfyyRIomSBUUzJPMaXOBb8GC4XRfQcFmL-FEYIwzD8AggvcHE">live editor</a>]
```
flowchart LR
@@ -99,12 +115,12 @@ C -->|One| D[Result 1]
C -->|Two| E[Result 2]
```
### Sequence diagram [<a href="https://mermaid-js.github.io/mermaid/#/sequenceDiagram">docs</a> - <a href="https://mermaid.live/edit#pako:eNo9kMluwjAQhl_F-AykQMuSA1WrbuLQQ3v1ZbAnsVXHkzrjVhHi3etQwKfRv4w-z0FqMihL2eF3wqDxyUEdoVHhwTuNk-12RzaU4g29JzHMY2HpV0BE0VO6V8ETtdkGz1Zb1F8qiPyG5LX84mrLAmpwoWNh-5a0pWCiAxUwGBXeiVHEU4oq8V_6AHYUwAu2lLLTjVQ4bc1rT2yleI0IfJG320faZ9ABbk-Jz3hZnFxBduR9L2oiM5Jj2WBswJn8-cMArSRbbFDJMo8GK0ielVThmKOpNcD4bBxTlGUFvsOxhMT02QctS44JL6HzAS-iJzCYOwfJfTscunYd542aQuXqQU_RZ9kyt11ZFIM9rR3btJ9qaorOGQuR7c9mWSznyzXMF7hcLeBusTB6P9usq_ntrDKrm9kc5PF4_AMJE56Z">live editor</a>]
### Sequence diagram [<a href="https://mermaid.js.org/syntax/sequenceDiagram.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNo9kMluwjAQhl_F-AykQMuSA1WrbuLQQ3v1ZbAnsVXHkzrjVhHi3etQwKfRv4w-z0FqMihL2eF3wqDxyUEdoVHhwTuNk-12RzaU4g29JzHMY2HpV0BE0VO6V8ETtdkGz1Zb1F8qiPyG5LX84mrLAmpwoWNh-5a0pWCiAxUwGBXeiVHEU4oq8V_6AHYUwAu2lLLTjVQ4bc1rT2yleI0IfJG320faZ9ABbk-Jz3hZnFxBduR9L2oiM5Jj2WBswJn8-cMArSRbbFDJMo8GK0ielVThmKOpNcD4bBxTlGUFvsOxhMT02QctS44JL6HzAS-iJzCYOwfJfTscunYd542aQuXqQU_RZ9kyt11ZFIM9rR3btJ9qaorOGQuR7c9mWSznyzXMF7hcLeBusTB6P9usq_ntrDKrm9kc5PF4_AMJE56Z">live editor</a>]
```
sequenceDiagram
Alice->>John: Hello John, how are you?
loop Healthcheck
loop HealthCheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts!
@@ -116,7 +132,7 @@ Bob-->>John: Jolly good!
```mermaid
sequenceDiagram
Alice->>John: Hello John, how are you?
loop Healthcheck
loop HealthCheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts!
@@ -125,7 +141,7 @@ John->>Bob: How about you?
Bob-->>John: Jolly good!
```
### Gantt chart [<a href="https://mermaid-js.github.io/mermaid/#/gantt">docs</a> - <a href="https://mermaid.live/edit#pako:eNp90cGOgyAQBuBXIZxtFbG29bbZ3fsmvXKZylhJEAyOTZrGd1_sto3xsHMBhu-HBO689hp5xS_giJQbsCbjHTv9jcp9-q63SKhZpb3DhMXSOIiE5ZkoNpnYZGXynh6U-4jBK7JnVfBYJo9QvgjtEya1cj8QwFq0TMz4lZqxTBg0hOF5m1jifI2Lf7Bc490CyxUu1rhc4GLGPOEdhg6Mjq92V44xxanFDhWv4lRjA6MlxZWbIh17DYTf2pAPvGrADphwGMmfbq7mFYURX-jLwCVA91bWg8YYunO69Y8vMgPFI2vvGnOZ-2Owsd0S9UOVpvP29mKoHc_b2nfpYHQLgdrrsUzLvDxALrHcS9hJqeuzOB6avBCN3mciBz5N0y_wxZ0J">live editor</a>]
### Gantt chart [<a href="https://mermaid.js.org/syntax/gantt.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNp90cGOgyAQBuBXIZxtFbG29bbZ3fsmvXKZylhJEAyOTZrGd1_sto3xsHMBhu-HBO689hp5xS_giJQbsCbjHTv9jcp9-q63SKhZpb3DhMXSOIiE5ZkoNpnYZGXynh6U-4jBK7JnVfBYJo9QvgjtEya1cj8QwFq0TMz4lZqxTBg0hOF5m1jifI2Lf7Bc490CyxUu1rhc4GLGPOEdhg6Mjq92V44xxanFDhWv4lRjA6MlxZWbIh17DYTf2pAPvGrADphwGMmfbq7mFYURX-jLwCVA91bWg8YYunO69Y8vMgPFI2vvGnOZ-2Owsd0S9UOVpvP29mKoHc_b2nfpYHQLgdrrsUzLvDxALrHcS9hJqeuzOB6avBCN3mciBz5N0y_wxZ0J">live editor</a>]
```
gantt
@@ -149,7 +165,7 @@ gantt
Parallel 4 : des6, after des4, 1d
```
### Class diagram [<a href="https://mermaid-js.github.io/mermaid/#/classDiagram">docs</a> - <a href="https://mermaid.live/edit#pako:eNpdkTFPwzAQhf-K5QlQ2zQJJG1UBaGWDYmBgYEwXO1LYuTEwXYqlZL_jt02asXm--690zvfgTLFkWaUSTBmI6DS0BTt2lfzkKx-p1PytEO9f1FtdaQkI2ulZNGuVqK1qEtgmOfk7BitSzKdOhg59XuNGgk0RDxed-_IOr6uf8cZ6UhTZ8bvHqS5ub1mr9svZPbjk6DEBlu7AQuXyBkx4gcvDk9cUMJq0XT_YaW0kNK5j-ufAoRzcihaQvLcoN4Jv50vvVxw_xrnD3RCG9QNCO4-8OgpqK1dpoJm7smxhF7agp6kfcfB4jMXVmmalW4tnFDorXrbt4xmVvc4is53GKFUwNF5DtTuO3-sShjrJjLVlqLyvNfS4drazmRB4NuzSti6386YagIjeA3a1rtlEiRRsoAoxiSN4SGOOduGy0UZ3YclT-dhBHQYhj8dc6_I">live editor</a>]
### Class diagram [<a href="https://mermaid.js.org/syntax/classDiagram.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNpdkTFPwzAQhf-K5QlQ2zQJJG1UBaGWDYmBgYEwXO1LYuTEwXYqlZL_jt02asXm--690zvfgTLFkWaUSTBmI6DS0BTt2lfzkKx-p1PytEO9f1FtdaQkI2ulZNGuVqK1qEtgmOfk7BitSzKdOhg59XuNGgk0RDxed-_IOr6uf8cZ6UhTZ8bvHqS5ub1mr9svZPbjk6DEBlu7AQuXyBkx4gcvDk9cUMJq0XT_YaW0kNK5j-ufAoRzcihaQvLcoN4Jv50vvVxw_xrnD3RCG9QNCO4-8OgpqK1dpoJm7smxhF7agp6kfcfB4jMXVmmalW4tnFDorXrbt4xmVvc4is53GKFUwNF5DtTuO3-sShjrJjLVlqLyvNfS4drazmRB4NuzSti6386YagIjeA3a1rtlEiRRsoAoxiSN4SGOOduGy0UZ3YclT-dhBHQYhj8dc6_I">live editor</a>]
```
classDiagram
@@ -191,7 +207,7 @@ class Class10 {
```
### State diagram [<a href="https://mermaid-js.github.io/mermaid/#/stateDiagram">docs</a> - <a href="https://mermaid.live/edit#pako:eNpdkEFvgzAMhf8K8nEqpYSNthx22Xbcqcexg0sCiZQQlDhIFeK_L8A6TfXp6fOz9ewJGssFVOAJSbwr7ByadGR1n8T6evpO0vQ1uZDSekOrXGFsPqJPO6q-2-imH8f_0TeHXm50lfelsAMjnEHFY6xpMdRAUhhRQxUlFy0GTTXU_RytYeAx-AdXZB1ULWovdoCB7OXWN1CRC-Ju-r3uz6UtchGHJqDbsPygU57iysb2reoWHpyOWBINvsqypb3vFMlw3TfWZF5xiY7keC6zkpUnZIUojwW-FAVvrvn51LLnvOXHQ84Q5nn-AVtLcwk">live editor</a>]
### State diagram [<a href="https://mermaid.js.org/syntax/stateDiagram.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNpdkEFvgzAMhf8K8nEqpYSNthx22Xbcqcexg0sCiZQQlDhIFeK_L8A6TfXp6fOz9ewJGssFVOAJSbwr7ByadGR1n8T6evpO0vQ1uZDSekOrXGFsPqJPO6q-2-imH8f_0TeHXm50lfelsAMjnEHFY6xpMdRAUhhRQxUlFy0GTTXU_RytYeAx-AdXZB1ULWovdoCB7OXWN1CRC-Ju-r3uz6UtchGHJqDbsPygU57iysb2reoWHpyOWBINvsqypb3vFMlw3TfWZF5xiY7keC6zkpUnZIUojwW-FAVvrvn51LLnvOXHQ84Q5nn-AVtLcwk">live editor</a>]
```
stateDiagram-v2
@@ -213,7 +229,7 @@ Moving --> Crash
Crash --> [*]
```
### Pie chart [<a href="https://mermaid-js.github.io/mermaid/#/pie">docs</a> - <a href="https://mermaid.live/edit#pako:eNo9jsFugzAMhl8F-VzBgEEh13Uv0F1zcYkTIpEEBadShXj3BU3dzf_n77e8wxQUgYDVkvQSbsFsEgpRtEN_5i_kvzx05XiC-xvUHVzAUXRoVe7v0heFBJ7JkQSRR0Ua08ISpD-ymlaFTN_KcoggNC4bXQATh5-Xn0BwTPSWbhZNRPdvLQEV5dIO_FrPZ43dOJ-cgtfWnDzFJeOZed1EVZ3r0lie06Ocgqs2q2aMPD_HvuqbfsCmpf7aYte2anrU46Cbz1qr60fdIBzH8QvW9lkl">live editor</a>]
### Pie chart [<a href="https://mermaid.js.org/syntax/pie.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNo9jsFugzAMhl8F-VzBgEEh13Uv0F1zcYkTIpEEBadShXj3BU3dzf_n77e8wxQUgYDVkvQSbsFsEgpRtEN_5i_kvzx05XiC-xvUHVzAUXRoVe7v0heFBJ7JkQSRR0Ua08ISpD-ymlaFTN_KcoggNC4bXQATh5-Xn0BwTPSWbhZNRPdvLQEV5dIO_FrPZ43dOJ-cgtfWnDzFJeOZed1EVZ3r0lie06Ocgqs2q2aMPD_HvuqbfsCmpf7aYte2anrU46Cbz1qr60fdIBzH8QvW9lkl">live editor</a>]
```
pie
@@ -231,7 +247,7 @@ pie
### Git graph [experimental - <a href="https://mermaid.live/edit#pako:eNqNkMFugzAMhl8F-VyVAR1tOW_aA-zKxSSGRCMJCk6lCvHuNZPKZdM0n-zf3_8r8QIqaIIGMqnB8kfEybQ--y4VnLP8-9RF9Mpkmm40hmlnDKmvkPiH_kfS7nFo_VN0FAf6XwocQGgxa_nGsm1bYEOOWmik1dRjGrmF1q-Cpkkj07u2HCI0PY4zHQATh8-7V9BwTPSE3iwOEd1OjQE1iWkBvk_bzQY7s0Sq4Hs7bHqKo8iGeZqbPN_WR7mpSd1RHpvPVhuMbG7XOq_L-oJlRfW5wteq0qorrpe-PBW9Pr8UJcK6rg-BLYPQ">live editor</a>]
### Bar chart (using gantt chart) [<a href="https://mermaid-js.github.io/mermaid/#/gantt">docs</a> - <a href="https://mermaid.live/edit#pako:eNptkU1vhCAQhv8KIenNugiI4rkf6bmXpvEyFVxJFDYyNt1u9r8X63Z7WQ9m5pknLzieaBeMpQ3dg0dsPUkPOhwteXZIXmJcbCT3xMAxkuh8Z8kIEclyMIB209fqKcwTICFvG4IvFy_oLrZ-g9F26ILfQgvNFN94VaRXQ1iWqpumZBcu1J8p1E1TXDx59eQNr5LyEqjJn6hv5QnGNlxevZJmdLLpy5xJSzut45biYCfb0iaVxvawjNjS1p-TCguG16PvaIPzYjO67e3BwX6GiTY9jPFKH43DMF_hGMDY1J4oHg-_f8hFTJFd8L3br3yZx4QHxENsdrt1nO8dDstH3oVpF50ZYMbhU6ud4qoGLqyqBJRCmO6j0HXPZdGbihUc6Pmc0QP49xD-b5X69ZQv2gjO81IwzWqhC1lKrjJ6pA3nVS7SMiVjrKirWlYp5fs3osgrWeo00lorLWvOzz8JVbXm">live editor</a>]
### Bar chart (using gantt chart) [<a href="https://mermaid.js.org/syntax/gantt.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNptkU1vhCAQhv8KIenNugiI4rkf6bmXpvEyFVxJFDYyNt1u9r8X63Z7WQ9m5pknLzieaBeMpQ3dg0dsPUkPOhwteXZIXmJcbCT3xMAxkuh8Z8kIEclyMIB209fqKcwTICFvG4IvFy_oLrZ-g9F26ILfQgvNFN94VaRXQ1iWqpumZBcu1J8p1E1TXDx59eQNr5LyEqjJn6hv5QnGNlxevZJmdLLpy5xJSzut45biYCfb0iaVxvawjNjS1p-TCguG16PvaIPzYjO67e3BwX6GiTY9jPFKH43DMF_hGMDY1J4oHg-_f8hFTJFd8L3br3yZx4QHxENsdrt1nO8dDstH3oVpF50ZYMbhU6ud4qoGLqyqBJRCmO6j0HXPZdGbihUc6Pmc0QP49xD-b5X69ZQv2gjO81IwzWqhC1lKrjJ6pA3nVS7SMiVjrKirWlYp5fs3osgrWeo00lorLWvOzz8JVbXm">live editor</a>]
```
gantt
@@ -269,7 +285,7 @@ gantt
5 : 0, 5
```
### User Journey diagram [<a href="https://mermaid-js.github.io/mermaid/#/user-journey">docs</a> - <a href="https://mermaid.live/edit#pako:eNplkMFuwjAQRH9l5TMiTVIC-FqqnjhxzWWJN4khsSN7XRSh_HsdKBVt97R6Mzsj-yoqq0hIAXCywRkaSwNxWHNHsB_hYt1ZmwYUfiueKtbWwIcFtjf5zgH2eCZgQgkrCXt64GgMg2fUzkvIn5Xd_V5COtMFvCH_62ht_5yk7MU8sn61HDTfxD8VYiF6cj1qFd94nWkpuKWYKWRcFdUYOi5FaaZoDYNCpnel2Toha-w8LQQGtofRVEKyC_Qw7TQ2DvsfV2dRUTy6Ch6H-UMb7TlGVtbUupl5cF3ELfPgZZLM8rLR3IbjsrJ94rVq0XH7uS2SIis2mOVUrHNc5bmqjul2U2evaa3WL2mGYpqmL2BGiho">live editor</a>]
### User Journey diagram [<a href="https://mermaid.js.org/syntax/userJourney.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNplkMFuwjAQRH9l5TMiTVIC-FqqnjhxzWWJN4khsSN7XRSh_HsdKBVt97R6Mzsj-yoqq0hIAXCywRkaSwNxWHNHsB_hYt1ZmwYUfiueKtbWwIcFtjf5zgH2eCZgQgkrCXt64GgMg2fUzkvIn5Xd_V5COtMFvCH_62ht_5yk7MU8sn61HDTfxD8VYiF6cj1qFd94nWkpuKWYKWRcFdUYOi5FaaZoDYNCpnel2Toha-w8LQQGtofRVEKyC_Qw7TQ2DvsfV2dRUTy6Ch6H-UMb7TlGVtbUupl5cF3ELfPgZZLM8rLR3IbjsrJ94rVq0XH7uS2SIis2mOVUrHNc5bmqjul2U2evaa3WL2mGYpqmL2BGiho">live editor</a>]
```
journey
@@ -295,7 +311,7 @@ gantt
Sit down: 3: Me
```
### C4 diagram [<a href="https://mermaid-js.github.io/mermaid/#/c4c">docs</a>]
### C4 diagram [<a href="https://mermaid.js.org/syntax/c4.html">docs</a>]
```
C4Context
@@ -389,7 +405,7 @@ The above command generates files into the `dist` folder and publishes them to <
Mermaid is a growing community and is always accepting new contributors. There's a lot of different ways to help out and we're always looking for extra hands! Look at [this issue](https://github.com/mermaid-js/mermaid/issues/866) if you want to know where to start helping out.
Detailed information about how to contribute can be found in the [contribution guide](CONTRIBUTING.md)
Detailed information about how to contribute can be found in the [contribution guide](https://mermaid.js.org/community/contributing.html)
## Security and safe diagrams

View File

@@ -15,7 +15,7 @@ Mermaid
<a href="https://mermaid.live/"><b>实时编辑器!</b></a>
</p>
<p align="center">
<a href="https://mermaid.js.org">📖 文档</a> | <a href="https://mermaid.js.org/intro/">🚀 入门</a> | <a href="https://www.jsdelivr.com/package/npm/mermaid">🌐 CDN</a> | <a href="https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE" title="Slack invite">🙌 加入我们</a>
<a href="https://mermaid.js.org">📖 文档</a> | <a href="https://mermaid.js.org/intro/">🚀 入门</a> | <a href="https://www.jsdelivr.com/package/npm/mermaid">🌐 CDN</a> | <a href="https://discord.gg/AgrbSrBer3" title="Discord invite">🙌 加入我们</a>
</p>
<p align="center">
<a href="./README.md">English</a>
@@ -34,7 +34,7 @@ Mermaid
[![Coverage Status](https://codecov.io/github/mermaid-js/mermaid/branch/develop/graph/badge.svg)](https://app.codecov.io/github/mermaid-js/mermaid/tree/develop)
[![CDN Status](https://img.shields.io/jsdelivr/npm/hm/mermaid)](https://www.jsdelivr.com/package/npm/mermaid)
[![NPM Downloads](https://img.shields.io/npm/dm/mermaid)](https://www.npmjs.com/package/mermaid)
[![Join our Slack!](https://img.shields.io/static/v1?message=join%20chat&color=9cf&logo=slack&label=slack)](https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE)
[![Join our Discord!](https://img.shields.io/static/v1?message=join%20chat&color=9cf&logo=discord&label=discord)](https://discord.gg/AgrbSrBer3)
[![Twitter Follow](https://img.shields.io/badge/Social-mermaidjs__-blue?style=social&logo=X)](https://twitter.com/mermaidjs_)
<img src="./img/header.png" alt="" />
@@ -43,7 +43,7 @@ Mermaid
**感谢所有参与进来提交 PR解答疑问的人们! 🙏**
<a href="https://mermaid-js.github.io/mermaid/landing/"><img src="https://github.com/mermaid-js/mermaid/blob/master/docs/intro/img/book-banner-post-release.jpg" alt="Explore Mermaid.js in depth, with real-world examples, tips & tricks from the creator... The first official book on Mermaid is available for purchase. Check it out!"></a>
<a href="https://mermaid.js.org/landing/"><img src="https://github.com/mermaid-js/mermaid/blob/master/docs/intro/img/book-banner-post-release.jpg" alt="Explore Mermaid.js in depth, with real-world examples, tips & tricks from the creator... The first official book on Mermaid is available for purchase. Check it out!"></a>
## 关于 Mermaid
@@ -57,20 +57,20 @@ Mermaid 是一个基于 Javascript 的图表绘制工具,通过解析类 Markd
Mermaid 通过允许用户创建便于修改的图表来解决这一难题,它也可以作为生产脚本(或其他代码)的一部分。<br/>
<br/>
Mermaid 甚至能让非程序员也能通过 [Mermaid Live Editor](https://mermaid.live/) 轻松创建详细的图表。<br/>
你可以访问 [教程](./docs/config/Tutorials.md) 来查看 Live Editor 的视频教程,也可以查看 [Mermaid 的集成和使用](./docs/ecosystem/integrations-community.md) 这个清单来检查你的文档工具是否已经集成了 Mermaid 支持。
你可以访问 [教程](https://mermaid.js.org/ecosystem/tutorials.html) 来查看 Live Editor 的视频教程,也可以查看 [Mermaid 的集成和使用](https://mermaid.js.org/ecosystem/integrations-community.html) 这个清单来检查你的文档工具是否已经集成了 Mermaid 支持。
如果想要查看关于 Mermaid 更详细的介绍及基础使用方式,可以查看 [入门指引](./docs/intro/getting-started.md), [用法](./docs/config/usage.md) 和 [教程](./docs/config/Tutorials.md).
如果想要查看关于 Mermaid 更详细的介绍及基础使用方式,可以查看 [入门指引](https://mermaid.js.org/intro/getting-started.html), [用法](https://mermaid.js.org/config/usage.html) 和 [教程](https://mermaid.js.org/ecosystem/tutorials.html).
<!-- </Main description> -->
## 示例
**下面是一些可以使用 Mermaid 创建的图表示例。点击 [语法](https://mermaid-js.github.io/mermaid/#/n00b-syntaxReference) 查看详情。**
**下面是一些可以使用 Mermaid 创建的图表示例。点击 [语法](https://mermaid.js.org/intro/syntax-reference.html) 查看详情。**
<table>
<!-- <Flowchart> -->
### 流程图 [<a href="https://mermaid-js.github.io/mermaid/#/flowchart">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiZ3JhcGggVERcbiAgICBBW0hhcmRdIC0tPnxUZXh0fCBCKFJvdW5kKVxuICAgIEIgLS0-IEN7RGVjaXNpb259XG4gICAgQyAtLT58T25lfCBEW1Jlc3VsdCAxXVxuICAgIEMgLS0-fFR3b3wgRVtSZXN1bHQgMl0iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
### 流程图 [<a href="https://mermaid.js.org/syntax/flowchart.html">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiZ3JhcGggVERcbiAgICBBW0hhcmRdIC0tPnxUZXh0fCBCKFJvdW5kKVxuICAgIEIgLS0-IEN7RGVjaXNpb259XG4gICAgQyAtLT58T25lfCBEW1Jlc3VsdCAxXVxuICAgIEMgLS0-fFR3b3wgRVtSZXN1bHQgMl0iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
```
flowchart LR
@@ -88,12 +88,12 @@ C -->|One| D[Result 1]
C -->|Two| E[Result 2]
```
### 时序图 [<a href="https://mermaid-js.github.io/mermaid/#/sequenceDiagram">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG5BbGljZS0-PkpvaG46IEhlbGxvIEpvaG4sIGhvdyBhcmUgeW91P1xubG9vcCBIZWFsdGhjaGVja1xuICAgIEpvaG4tPj5Kb2huOiBGaWdodCBhZ2FpbnN0IGh5cG9jaG9uZHJpYVxuZW5kXG5Ob3RlIHJpZ2h0IG9mIEpvaG46IFJhdGlvbmFsIHRob3VnaHRzIVxuSm9obi0tPj5BbGljZTogR3JlYXQhXG5Kb2huLT4-Qm9iOiBIb3cgYWJvdXQgeW91P1xuQm9iLS0-PkpvaG46IEpvbGx5IGdvb2QhIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
### 时序图 [<a href="https://mermaid.js.org/syntax/sequenceDiagram.html">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG5BbGljZS0-PkpvaG46IEhlbGxvIEpvaG4sIGhvdyBhcmUgeW91P1xubG9vcCBIZWFsdGhjaGVja1xuICAgIEpvaG4tPj5Kb2huOiBGaWdodCBhZ2FpbnN0IGh5cG9jaG9uZHJpYVxuZW5kXG5Ob3RlIHJpZ2h0IG9mIEpvaG46IFJhdGlvbmFsIHRob3VnaHRzIVxuSm9obi0tPj5BbGljZTogR3JlYXQhXG5Kb2huLT4-Qm9iOiBIb3cgYWJvdXQgeW91P1xuQm9iLS0-PkpvaG46IEpvbGx5IGdvb2QhIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
```
sequenceDiagram
Alice->>John: Hello John, how are you?
loop Healthcheck
loop HealthCheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts!
@@ -105,7 +105,7 @@ Bob-->>John: Jolly good!
```mermaid
sequenceDiagram
Alice->>John: Hello John, how are you?
loop Healthcheck
loop HealthCheck
John->>John: Fight against hypochondria
end
Note right of John: Rational thoughts!
@@ -114,7 +114,7 @@ John->>Bob: How about you?
Bob-->>John: Jolly good!
```
### 甘特图 [<a href="https://mermaid-js.github.io/mermaid/#/gantt">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiZ2FudHRcbnNlY3Rpb24gU2VjdGlvblxuQ29tcGxldGVkIDpkb25lLCAgICBkZXMxLCAyMDE0LTAxLTA2LDIwMTQtMDEtMDhcbkFjdGl2ZSAgICAgICAgOmFjdGl2ZSwgIGRlczIsIDIwMTQtMDEtMDcsIDNkXG5QYXJhbGxlbCAxICAgOiAgICAgICAgIGRlczMsIGFmdGVyIGRlczEsIDFkXG5QYXJhbGxlbCAyICAgOiAgICAgICAgIGRlczQsIGFmdGVyIGRlczEsIDFkXG5QYXJhbGxlbCAzICAgOiAgICAgICAgIGRlczUsIGFmdGVyIGRlczMsIDFkXG5QYXJhbGxlbCA0ICAgOiAgICAgICAgIGRlczYsIGFmdGVyIGRlczQsIDFkIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
### 甘特图 [<a href="https://mermaid.js.org/syntax/gantt.html">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiZ2FudHRcbnNlY3Rpb24gU2VjdGlvblxuQ29tcGxldGVkIDpkb25lLCAgICBkZXMxLCAyMDE0LTAxLTA2LDIwMTQtMDEtMDhcbkFjdGl2ZSAgICAgICAgOmFjdGl2ZSwgIGRlczIsIDIwMTQtMDEtMDcsIDNkXG5QYXJhbGxlbCAxICAgOiAgICAgICAgIGRlczMsIGFmdGVyIGRlczEsIDFkXG5QYXJhbGxlbCAyICAgOiAgICAgICAgIGRlczQsIGFmdGVyIGRlczEsIDFkXG5QYXJhbGxlbCAzICAgOiAgICAgICAgIGRlczUsIGFmdGVyIGRlczMsIDFkXG5QYXJhbGxlbCA0ICAgOiAgICAgICAgIGRlczYsIGFmdGVyIGRlczQsIDFkIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
```
gantt
@@ -138,7 +138,7 @@ gantt
Parallel 4 : des6, after des4, 1d
```
### 类图 [<a href="https://mermaid-js.github.io/mermaid/#/classDiagram">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiY2xhc3NEaWFncmFtXG5DbGFzczAxIDx8LS0gQXZlcnlMb25nQ2xhc3MgOiBDb29sXG48PGludGVyZmFjZT4-IENsYXNzMDFcbkNsYXNzMDkgLS0-IEMyIDogV2hlcmUgYW0gaT9cbkNsYXNzMDkgLS0qIEMzXG5DbGFzczA5IC0tfD4gQ2xhc3MwN1xuQ2xhc3MwNyA6IGVxdWFscygpXG5DbGFzczA3IDogT2JqZWN0W10gZWxlbWVudERhdGFcbkNsYXNzMDEgOiBzaXplKClcbkNsYXNzMDEgOiBpbnQgY2hpbXBcbkNsYXNzMDEgOiBpbnQgZ29yaWxsYVxuY2xhc3MgQ2xhc3MxMCB7XG4gID4-c2VydmljZT4-XG4gIGludCBpZFxuICBzaXplKClcbn0iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
### 类图 [<a href="https://mermaid.js.org/syntax/classDiagram.html">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiY2xhc3NEaWFncmFtXG5DbGFzczAxIDx8LS0gQXZlcnlMb25nQ2xhc3MgOiBDb29sXG48PGludGVyZmFjZT4-IENsYXNzMDFcbkNsYXNzMDkgLS0-IEMyIDogV2hlcmUgYW0gaT9cbkNsYXNzMDkgLS0qIEMzXG5DbGFzczA5IC0tfD4gQ2xhc3MwN1xuQ2xhc3MwNyA6IGVxdWFscygpXG5DbGFzczA3IDogT2JqZWN0W10gZWxlbWVudERhdGFcbkNsYXNzMDEgOiBzaXplKClcbkNsYXNzMDEgOiBpbnQgY2hpbXBcbkNsYXNzMDEgOiBpbnQgZ29yaWxsYVxuY2xhc3MgQ2xhc3MxMCB7XG4gID4-c2VydmljZT4-XG4gIGludCBpZFxuICBzaXplKClcbn0iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
```
classDiagram
@@ -178,7 +178,7 @@ class Class10 {
}
```
### 状态图 [[<a href="https://mermaid-js.github.io/mermaid/#/stateDiagram">docs</a> - <a href="https://mermaid.live/edit#pako:eNpdkLsOwjAMRX-l8ojahTEDCzB26kgYrMYtkfJAqVMJVf13QiIKqqfr44d8vUDvFYGAiZHponEMaJv5KF2V4na4V01zqjrWxhSUZYapuEetn7UbCy16P_5HzwGnR6FZfpdCDZaCRa3SWcunQQI_yJIEkaSiAaNhCdKtqRUj--7lehAcItUQn-pnBMSAZtroVWn2YYOU07b4z29Y37gJVYk">live editor</a>]
### 状态图 [<a href="https://mermaid.js.org/syntax/stateDiagram.html">docs</a> - <a href="https://mermaid.live/edit#pako:eNpdkLsOwjAMRX-l8ojahTEDCzB26kgYrMYtkfJAqVMJVf13QiIKqqfr44d8vUDvFYGAiZHponEMaJv5KF2V4na4V01zqjrWxhSUZYapuEetn7UbCy16P_5HzwGnR6FZfpdCDZaCRa3SWcunQQI_yJIEkaSiAaNhCdKtqRUj--7lehAcItUQn-pnBMSAZtroVWn2YYOU07b4z29Y37gJVYk">live editor</a>]
```
stateDiagram-v2
@@ -200,7 +200,7 @@ Moving --> Crash
Crash --> [*]
```
### 饼图 [<a href="https://mermaid-js.github.io/mermaid/#/pie">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoicGllXG5cIkRvZ3NcIiA6IDQyLjk2XG5cIkNhdHNcIiA6IDUwLjA1XG5cIlJhdHNcIiA6IDEwLjAxIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
### 饼图 [<a href="https://mermaid.js.org/syntax/pie.html">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoicGllXG5cIkRvZ3NcIiA6IDQyLjk2XG5cIkNhdHNcIiA6IDUwLjA1XG5cIlJhdHNcIiA6IDEwLjAxIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
```
pie
@@ -218,7 +218,7 @@ pie
### Git 图 [实验特性 - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiZ2l0R3JhcGg6XG5vcHRpb25zXG57XG4gICAgXCJub2RlU3BhY2luZ1wiOiAxNTAsXG4gICAgXCJub2RlUmFkaXVzXCI6IDEwXG59XG5lbmRcbmNvbW1pdFxuYnJhbmNoIG5ld2JyYW5jaFxuY2hlY2tvdXQgbmV3YnJhbmNoXG5jb21taXRcbmNvbW1pdFxuY2hlY2tvdXQgbWFzdGVyXG5jb21taXRcbmNvbW1pdFxubWVyZ2UgbmV3YnJhbmNoXG4iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
### 用户体验旅程图 [<a href="https://mermaid-js.github.io/mermaid/#/user-journey">文档</a> - <a href="https://mermaid.live/edit#pako:eNpljzEPgkAMhf9K05nFGJdbJXFiYmVpuKIncDVHL4QQ_ruHaILaqXnf63vpjLVYRoMAd4nB81R5SKNOO4ZiglFC6_wVLL3JwLU68XARUHnhTQcoqGVQJgMnAwV_5GSMj0HJhcHAcU_y7d7AYVUzOJP-ddyk3ydZGf0n66uldPqCPxWYYc-hJ2fTj_OqVqg3Tplo0mq5odhphZVfkpWiSjn5Go2GyBnGhyXl3NE1UI-moW7g5QkSoF5m">live editor</a>]
### 用户体验旅程图 [<a href="https://mermaid.js.org/syntax/userJourney.html">文档</a> - <a href="https://mermaid.live/edit#pako:eNpljzEPgkAMhf9K05nFGJdbJXFiYmVpuKIncDVHL4QQ_ruHaILaqXnf63vpjLVYRoMAd4nB81R5SKNOO4ZiglFC6_wVLL3JwLU68XARUHnhTQcoqGVQJgMnAwV_5GSMj0HJhcHAcU_y7d7AYVUzOJP-ddyk3ydZGf0n66uldPqCPxWYYc-hJ2fTj_OqVqg3Tplo0mq5odhphZVfkpWiSjn5Go2GyBnGhyXl3NE1UI-moW7g5QkSoF5m">live editor</a>]
```
journey
@@ -244,7 +244,7 @@ pie
Sit down: 3: Me
```
### C4 图 [<a href="https://mermaid-js.github.io/mermaid/#/c4c">文档</a>]
### C4 图 [<a href="https://mermaid.js.org/syntax/c4.html">文档</a>]
```
C4Context
@@ -338,7 +338,7 @@ npm publish
Mermaid 是一个不断发展中的社区,并且还在接收新的贡献者。有很多不同的方式可以参与进来,而且我们还在寻找额外的帮助。如果你想知道如何开始贡献,请查看 [这个 issue](https://github.com/mermaid-js/mermaid/issues/866)。
关于如何贡献的详细信息可以在 [贡献指南](CONTRIBUTING.md) 中找到。
关于如何贡献的详细信息可以在 [贡献指南](https://mermaid.js.org/community/contributing.html) 中找到。
## 安全

View File

@@ -1,19 +0,0 @@
// eslint-disable-next-line @typescript-eslint/no-var-requires
const { defineConfig } = require('cypress');
module.exports = defineConfig({
testConcurrency: 1,
browser: [
// Add browsers with different viewports
// { width: 800, height: 600, name: 'chrome' },
// { width: 700, height: 500, name: 'firefox' },
// { width: 1600, height: 1200, name: 'ie11' },
// { width: 1024, height: 768, name: 'edgechromium' },
// { width: 800, height: 600, name: 'safari' },
// // Add mobile emulation devices in Portrait mode
// { deviceName: 'iPhone X', screenOrientation: 'portrait' },
// { deviceName: 'Pixel 2', screenOrientation: 'portrait' },
],
// set batch name to the configuration
// batchName: `Mermaid ${process.env.APPLI_BRANCH ?? "'no APPLI_BRANCH set'"}`,
});

View File

@@ -1,206 +0,0 @@
{
"version": "0.2",
"language": "en",
"words": [
"acyclicer",
"adamiecki",
"alois",
"aloisklink",
"antiscript",
"antlr",
"appli",
"applitools",
"asciidoctor",
"ashish",
"ashishjain",
"astah",
"bbox",
"bilkent",
"bisheng",
"blrs",
"braintree",
"brkt",
"brolin",
"brotli",
"catmull",
"città",
"classdef",
"codedoc",
"colour",
"commitlint",
"cpettitt",
"customizability",
"cuzon",
"cytoscape",
"dagre",
"deepdwn",
"descr",
"docsify",
"docsy",
"doku",
"dompurify",
"dont",
"doublecircle",
"edgechromium",
"elems",
"elkjs",
"elle",
"faber",
"flatmap",
"foswiki",
"frontmatter",
"ftplugin",
"gantt",
"gitea",
"gitgraph",
"globby",
"graphlib",
"graphviz",
"grav",
"greywolf",
"gzipped",
"huynh",
"huynhicode",
"inkdrop",
"jaoude",
"jgreywolf",
"jison",
"jiti",
"kaufmann",
"khroma",
"klemm",
"klink",
"knsv",
"knut",
"knutsveidqvist",
"laganeckas",
"linetype",
"lintstagedrc",
"logmsg",
"lucida",
"markdownish",
"matthieu",
"matthieumorel",
"mdast",
"mdbook",
"mermaidjs",
"mermerd",
"mindaugas",
"mindmap",
"mindmaps",
"mitigations",
"mkdocs",
"mmorel",
"mult",
"neurodiverse",
"nextra",
"nikolay",
"nirname",
"npmjs",
"orlandoni",
"pathe",
"pbrolin",
"phpbb",
"plantuml",
"playfair",
"pnpm",
"podlite",
"quence",
"radious",
"ranksep",
"rect",
"rects",
"reda",
"redmine",
"regexes",
"rehype",
"roledescription",
"rozhkov",
"sandboxed",
"sankey",
"setupgraphviewbox",
"shiki",
"sidharth",
"sidharthv",
"sphinxcontrib",
"startx",
"starty",
"statediagram",
"steph",
"stopx",
"stopy",
"stylis",
"subhash-halder",
"substate",
"sulais",
"sveidqvist",
"swimm",
"techn",
"teststr",
"textlength",
"treemap",
"ts-nocheck",
"tsdoc",
"tuleap",
"tylerlong",
"typora",
"ugge",
"unist",
"unocss",
"upvoting",
"valign",
"verdana",
"viewports",
"vinod",
"visio",
"vitepress",
"vueuse",
"xlink",
"xychart",
"yash",
"yokozuna",
"zenuml",
"zune"
],
"patterns": [
{ "name": "Markdown links", "pattern": "\\((.*)\\)", "description": "" },
{
"name": "Markdown code blocks",
"pattern": "/^(\\s*`{3,}).*[\\s\\S]*?^\\1/gmx",
"description": "Taken from the cSpell example at https://cspell.org/configuration/patterns/#verbose-regular-expressions"
},
{
"name": "Inline code blocks",
"pattern": "\\`([^\\`\\r\\n]+?)\\`",
"description": "https://stackoverflow.com/questions/41274241/how-to-capture-inline-markdown-code-but-not-a-markdown-code-fence-with-regex"
},
{ "name": "Link contents", "pattern": "\\<a(.*)\\>", "description": "" },
{ "name": "Snippet references", "pattern": "-- snippet:(.*)", "description": "" },
{
"name": "Snippet references 2",
"pattern": "\\<\\[sample:(.*)",
"description": "another kind of snippet reference"
},
{ "name": "Multi-line code blocks", "pattern": "/^\\s*```[\\s\\S]*?^\\s*```/gm" },
{
"name": "HTML Tags",
"pattern": "<[^>]*>",
"description": "Reference: https://stackoverflow.com/questions/11229831/regular-expression-to-remove-html-tags-from-a-string"
}
],
"ignoreRegExpList": [
"Markdown links",
"Markdown code blocks",
"Inline code blocks",
"Link contents",
"Snippet references",
"Snippet references 2",
"Multi-line code blocks",
"HTML Tags"
],
"ignorePaths": [
"packages/mermaid/src/docs/CHANGELOG.md",
"packages/mermaid/src/docs/.vitepress/redirect.ts",
"packages/mermaid/src/docs/.vitepress/contributor-names.json"
]
}

45
cspell.config.yaml Normal file
View File

@@ -0,0 +1,45 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json
$schema: https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json
version: '0.2'
language: en-US,en-GB
import:
- ./.cspell/cspell.config.yaml
ignoreRegExpList:
- character-set-cyrillic
- svg-block
ignorePaths:
- '*lock.{yaml,json}'
- dist
- CHANGELOG.md
- packages/mermaid/src/docs/.vitepress/redirect.ts
- packages/mermaid/src/docs/.vitepress/contributor-names.json
- backup
- '**/*.spec.{js,ts}' # checked by eslint
- 'tests/webpack/src/index.js' # checked by eslint
- 'cypress/**/*.js' # checked by eslint
- '*.csv'
- '*.patch'
- 'docs/**/*.html'
- 'cypress/platform/**'
dictionaries:
- misc-terms
overrides:
- filename:
- '**/*.{jison,ts,mts,cjs,mjs,js,json,yaml,yml,md,html}'
- 'run'
- Dockerfile
ignoreRegExpList:
- js-unicode-escape
dictionaries:
- code-terms
- 3rd-party-terms
- fonts
- html
- lorem-ipsum
- filename: '**/package.json'
ignoreRegExpList:
- json-property
# cspell:dictionaries code-terms

View File

@@ -1,24 +0,0 @@
/* eslint-disable @typescript-eslint/no-var-requires */
const { defineConfig } = require('cypress');
const { addMatchImageSnapshotPlugin } = require('cypress-image-snapshot/plugin');
const coverage = require('@cypress/code-coverage/task');
module.exports = defineConfig({
projectId: 'n2sma2',
e2e: {
specPattern: 'cypress/integration/**/*.{js,jsx,ts,tsx}',
setupNodeEvents(on, config) {
coverage(on, config);
addMatchImageSnapshotPlugin(on, config);
// copy any needed variables from process.env to config.env
config.env.useAppli = process.env.USE_APPLI ? true : false;
// do not forget to return the changed config object!
return config;
},
},
video: false,
});
require('@applitools/eyes-cypress')(module);

30
cypress.config.ts Normal file
View File

@@ -0,0 +1,30 @@
import { defineConfig } from 'cypress';
import { addMatchImageSnapshotPlugin } from 'cypress-image-snapshot/plugin';
import coverage from '@cypress/code-coverage/task';
import eyesPlugin from '@applitools/eyes-cypress';
export default eyesPlugin(
defineConfig({
projectId: 'n2sma2',
viewportWidth: 1440,
viewportHeight: 1024,
e2e: {
specPattern: 'cypress/integration/**/*.{js,ts}',
setupNodeEvents(on, config) {
coverage(on, config);
on('before:browser:launch', (browser, launchOptions) => {
if (browser.name === 'chrome' && browser.isHeadless) {
launchOptions.args.push('--window-size=1440,1024', '--force-device-scale-factor=1');
}
return launchOptions;
});
addMatchImageSnapshotPlugin(on, config);
// copy any needed variables from process.env to config.env
config.env.useAppli = process.env.USE_APPLI ? true : false;
// do not forget to return the changed config object!
return config;
},
},
video: false,
})
);

View File

@@ -10,7 +10,7 @@ interface CypressConfig {
type CypressMermaidConfig = MermaidConfig & CypressConfig;
interface CodeObject {
code: string;
code: string | string[];
mermaid: CypressMermaidConfig;
}
@@ -25,7 +25,7 @@ const batchId: string =
: Cypress.env('CYPRESS_COMMIT') || Date.now().toString());
export const mermaidUrl = (
graphStr: string,
graphStr: string | string[],
options: CypressMermaidConfig,
api: boolean
): string => {
@@ -82,7 +82,7 @@ export const urlSnapshotTest = (
};
export const renderGraph = (
graphStr: string,
graphStr: string | string[],
options: CypressMermaidConfig = {},
api = false
): void => {

View File

@@ -117,7 +117,6 @@ describe('Configuration', () => {
});
it('should not taint the initial configuration when using multiple directives', () => {
const url = 'http://localhost:9000/regression/issue-1874.html';
cy.viewport(1440, 1024);
cy.visit(url);
cy.get('svg');

View File

@@ -1,14 +1,12 @@
describe('Rerendering', () => {
it('should be able to render after an error has occurred', () => {
const url = 'http://localhost:9000/render-after-error.html';
cy.viewport(1440, 1024);
cy.visit(url);
cy.get('#graphDiv').should('exist');
});
it('should be able to render and rerender a graph via API', () => {
const url = 'http://localhost:9000/rerender.html';
cy.viewport(1440, 1024);
cy.visit(url);
cy.get('#graph [id^=flowchart-A]').should('have.text', 'XMas');

View File

@@ -137,4 +137,9 @@ describe('XSS', () => {
cy.wait(1000);
cy.get('#the-malware').should('not.exist');
});
it('should sanitize backticks block diagram labels properly', () => {
cy.visit('http://localhost:9000/xss25.html');
cy.wait(1000);
cy.get('#the-malware').should('not.exist');
});
});

View File

@@ -0,0 +1,386 @@
import { imgSnapshotTest } from '../../helpers/util';
/* eslint-disable no-useless-escape */
describe('Block diagram', () => {
it('BL1: should calculate the block widths', () => {
imgSnapshotTest(
`block-beta
columns 2
block
id2["I am a wide one"]
id1
end
id["Next row"]
`
);
});
it('BL2: should handle colums statement in sub-blocks', () => {
imgSnapshotTest(
`block-beta
id1["Hello"]
block
columns 3
id2["to"]
id3["the"]
id4["World"]
id5["World"]
end
`,
{}
);
});
it('BL3: should align block widths and handle colums statement in sub-blocks', () => {
imgSnapshotTest(
`block-beta
block
columns 1
id1
id2
id2.1
end
id3
id4
`,
{}
);
});
it('BL4: should align block widths and handle colums statements in deeper sub-blocks then 1 level', () => {
imgSnapshotTest(
`block-beta
columns 1
block
columns 1
block
columns 3
id1
id2
id2.1(("XYZ"))
end
id48
end
id3
`,
{}
);
});
it('BL5: should align block widths and handle colums statements in deeper sub-blocks then 1 level (alt)', () => {
imgSnapshotTest(
`block-beta
columns 1
block
id1
id2
block
columns 1
id3("Wider then")
id5(("id5"))
end
end
id4
`,
{}
);
});
it('BL6: should handle block arrows and spece statements', () => {
imgSnapshotTest(
`block-beta
columns 3
space:3
ida idb idc
id1 id2
blockArrowId<["Label"]>(right)
blockArrowId2<["Label"]>(left)
blockArrowId3<["Label"]>(up)
blockArrowId4<["Label"]>(down)
blockArrowId5<["Label"]>(x)
blockArrowId6<["Label"]>(y)
blockArrowId6<["Label"]>(x, down)
`,
{}
);
});
it('BL7: should handle different types of edges', () => {
imgSnapshotTest(
`block-beta
columns 3
A space:5
A --o B
A --> C
A --x D
`,
{}
);
});
it('BL8: should handle sub-blocks without columns statements', () => {
imgSnapshotTest(
`block-beta
columns 2
C A B
block
D
E
end
`,
{}
);
});
it('BL9: should handle edges from blocks in sub blocks to other blocks', () => {
imgSnapshotTest(
`block-beta
columns 3
B space
block
D
end
D --> B
`,
{}
);
});
it('BL10: should handle edges from composite blocks', () => {
imgSnapshotTest(
`block-beta
columns 3
B space
block BL
D
end
BL --> B
`,
{}
);
});
it('BL11: should handle edges to composite blocks', () => {
imgSnapshotTest(
`block-beta
columns 3
B space
block BL
D
end
B --> BL
`,
{}
);
});
it('BL12: edges should handle labels', () => {
imgSnapshotTest(
`block-beta
A
space
A -- "apa" --> E
`,
{}
);
});
it('BL13: should handle block arrows in different directions', () => {
imgSnapshotTest(
`block-beta
columns 3
space blockArrowId1<["down"]>(down) space
blockArrowId2<["right"]>(right) blockArrowId3<["Sync"]>(x, y) blockArrowId4<["left"]>(left)
space blockArrowId5<["up"]>(up) space
blockArrowId6<["x"]>(x) space blockArrowId7<["y"]>(y)
`,
{}
);
});
it('BL14: should style statements and class statements', () => {
imgSnapshotTest(
`block-beta
A
B
classDef blue fill:#66f,stroke:#333,stroke-width:2px;
class A blue
style B fill:#f9F,stroke:#333,stroke-width:4px
`,
{}
);
});
it('BL15: width alignment - D and E should share available space', () => {
imgSnapshotTest(
`block-beta
block
D
E
end
db("This is the text in the box")
`,
{}
);
});
it('BL16: width alignment - C should be as wide as the composite block', () => {
imgSnapshotTest(
`block-beta
block
A("This is the text")
B
end
C
`,
{}
);
});
it('BL16: width alignment - blocks shold be equal in width', () => {
imgSnapshotTest(
`block-beta
A("This is the text")
B
C
`,
{}
);
});
it('BL17: block types 1 - square, rounded and circle', () => {
imgSnapshotTest(
`block-beta
A["square"]
B("rounded")
C(("circle"))
`,
{}
);
});
it('BL18: block types 2 - odd, diamond and hexagon', () => {
imgSnapshotTest(
`block-beta
A>"rect_left_inv_arrow"]
B{"diamond"}
C{{"hexagon"}}
`,
{}
);
});
it('BL19: block types 3 - stadium', () => {
imgSnapshotTest(
`block-beta
A(["stadium"])
`,
{}
);
});
it('BL20: block types 4 - lean right, lean left, trapezoid and inv trapezoid', () => {
imgSnapshotTest(
`block-beta
A[/"lean right"/]
B[\"lean left"\]
C[/"trapezoid"\]
D[\"trapezoid alt"/]
`,
{}
);
});
it('BL21: block types 1 - square, rounded and circle', () => {
imgSnapshotTest(
`block-beta
A["square"]
B("rounded")
C(("circle"))
`,
{}
);
});
it('BL22: sizing - it should be possible to make a block wider', () => {
imgSnapshotTest(
`block-beta
A("rounded"):2
B:2
C
`,
{}
);
});
it('BL23: sizing - it should be possible to make a composite block wider', () => {
imgSnapshotTest(
`block-beta
block:2
A
end
B
`,
{}
);
});
it('BL24: block in the middle with space on each side', () => {
imgSnapshotTest(
`block-beta
columns 3
space
middle["In the middle"]
space
`,
{}
);
});
it('BL25: space and an edge', () => {
imgSnapshotTest(
`block-beta
columns 5
A space B
A --x B
`,
{}
);
});
it('BL26: block sizes for regular blocks', () => {
imgSnapshotTest(
`block-beta
columns 3
a["A wide one"] b:2 c:2 d
`,
{}
);
});
it('BL27: composite block with a set width - f should use the available space', () => {
imgSnapshotTest(
`block-beta
columns 3
a:3
block:e:3
f
end
g
`,
{}
);
});
it('BL23: composite block with a set width - f and g should split the available space', () => {
imgSnapshotTest(
`block-beta
columns 3
a:3
block:e:3
f
g
end
h
i
j
`,
{}
);
});
});

View File

@@ -571,4 +571,14 @@ class C13["With Città foreign language"]
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
});
it('should render a simple class diagram with style definition', () => {
imgSnapshotTest(
`
classDiagram-v2
class Class10
style Class10 fill:#f9f,stroke:#333,stroke-width:4px
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
});
});

View File

@@ -501,4 +501,16 @@ describe('Class diagram', () => {
B : -methods()
`);
});
it('should handle notes with anchor tag having target attribute', () => {
renderGraph(
`classDiagram
class test { }
note for test "<a href='https://mermaid.js.org/' target="_blank"><code>note about mermaid</code></a>"`
);
cy.get('svg').then((svg) => {
cy.get('a').should('have.attr', 'target', '_blank').should('have.attr', 'rel', 'noopener');
});
});
});

View File

@@ -1,12 +0,0 @@
import { imgSnapshotTest } from '../../helpers/util.ts';
describe('Flowchart', () => {
it('34: testing the label width in percy', () => {
imgSnapshotTest(
`graph TD
A[Christmas]
`,
{ theme: 'forest', fontFamily: '"Noto Sans SC", sans-serif' }
);
});
});

View File

@@ -729,6 +729,37 @@ A ~~~ B
{}
);
});
it('5064: Should render when subgraph child has links to outside node and subgraph', () => {
imgSnapshotTest(
`flowchart TB
Out --> In
subgraph Sub
In
end
Sub --> In`
);
});
it('5059: Should render when subgraph contains only subgraphs, has link to outside and itself is part of a link', () => {
imgSnapshotTest(
`flowchart
subgraph Main
subgraph Child1
Node1
Node2
end
subgraph Child2
Node3
Node4
end
end
Main --> Out1
Child2 --> Out2`
);
});
describe('Markdown strings flowchart (#4220)', () => {
describe('html labels', () => {
it('With styling and classes', () => {
@@ -874,4 +905,93 @@ end
});
});
});
describe('Subgraph title margins', () => {
it('Should render subgraphs with title margins set (LR)', () => {
imgSnapshotTest(
`flowchart LR
subgraph TOP
direction TB
subgraph B1
direction RL
i1 -->f1
end
subgraph B2
direction BT
i2 -->f2
end
end
A --> TOP --> B
B1 --> B2
`,
{ flowchart: { subGraphTitleMargin: { top: 10, bottom: 5 } } }
);
});
it('Should render subgraphs with title margins set (TD)', () => {
imgSnapshotTest(
`flowchart TD
subgraph TOP
direction LR
subgraph B1
direction RL
i1 -->f1
end
subgraph B2
direction BT
i2 -->f2
end
end
A --> TOP --> B
B1 --> B2
`,
{ flowchart: { subGraphTitleMargin: { top: 8, bottom: 16 } } }
);
});
it('Should render subgraphs with title margins set (LR) and htmlLabels set to false', () => {
imgSnapshotTest(
`flowchart LR
subgraph TOP
direction TB
subgraph B1
direction RL
i1 -->f1
end
subgraph B2
direction BT
i2 -->f2
end
end
A --> TOP --> B
B1 --> B2
`,
{
htmlLabels: false,
flowchart: { htmlLabels: false, subGraphTitleMargin: { top: 10, bottom: 5 } },
}
);
});
it('Should render subgraphs with title margins and edge labels', () => {
imgSnapshotTest(
`flowchart LR
subgraph TOP
direction TB
subgraph B1
direction RL
i1 --lb1-->f1
end
subgraph B2
direction BT
i2 --lb2-->f2
end
end
A --lb3--> TOP --lb4--> B
B1 --lb5--> B2
`,
{ flowchart: { subGraphTitleMargin: { top: 10, bottom: 5 } } }
);
});
});
});

View File

@@ -92,6 +92,31 @@ describe('Gantt diagram', () => {
{}
);
});
it('should handle multiple dependencies syntax with after and until', () => {
imgSnapshotTest(
`
gantt
dateFormat YYYY-MM-DD
axisFormat %d/%m
title Adding GANTT diagram to mermaid
excludes weekdays 2014-01-10
todayMarker off
section team's critical event
deadline A :milestone, crit, deadlineA, 2024-02-01, 0
deadline B :milestone, crit, deadlineB, 2024-02-15, 0
boss on leave :bossaway, 2024-01-28, 2024-02-11
section new intern
onboarding :onboarding, 2024-01-02, 1w
literature review :litreview, 2024-01-02, 10d
project A :projectA, after onboarding litreview, until deadlineA bossaway
chilling :chilling, after projectA, until deadlineA
project B :projectB, after deadlineA, until deadlineB
`,
{}
);
});
it('should FAIL redering a gantt chart for issue #1060 with invalid date', () => {
imgSnapshotTest(
`
@@ -245,7 +270,10 @@ describe('Gantt diagram', () => {
const style = svg.attr('style');
expect(style).to.match(/^max-width: [\d.]+px;$/);
const maxWidthValue = parseFloat(style.match(/[\d.]+/g).join(''));
expect(maxWidthValue).to.be.within(984 * 0.95, 984 * 1.05);
expect(maxWidthValue).to.be.within(
Cypress.config().viewportWidth * 0.95,
Cypress.config().viewportWidth * 1.05
);
});
});
@@ -285,11 +313,11 @@ describe('Gantt diagram', () => {
{ gantt: { useMaxWidth: false } }
);
cy.get('svg').should((svg) => {
// const height = parseFloat(svg.attr('height'));
const width = parseFloat(svg.attr('width'));
// use within because the absolute value can be slightly different depending on the environment ±5%
// expect(height).to.be.within(484 * 0.95, 484 * 1.05);
expect(width).to.be.within(984 * 0.95, 984 * 1.05);
expect(width).to.be.within(
Cypress.config().viewportWidth * 0.95,
Cypress.config().viewportWidth * 1.05
);
expect(svg).to.not.have.attr('style');
});
});
@@ -580,4 +608,106 @@ describe('Gantt diagram', () => {
{}
);
});
it("should render when there's a semicolon in the title", () => {
imgSnapshotTest(
`
gantt
title ;Gantt With a Semicolon in the Title
dateFormat YYYY-MM-DD
section Section
A task :a1, 2014-01-01, 30d
Another task :after a1 , 20d
section Another
Task in sec :2014-01-12 , 12d
another task : 24d
`,
{}
);
});
it("should render when there's a semicolon in a section is true", () => {
imgSnapshotTest(
`
gantt
title Gantt Digram
dateFormat YYYY-MM-DD
section ;Section With a Semicolon
A task :a1, 2014-01-01, 30d
Another task :after a1 , 20d
section Another
Task in sec :2014-01-12 , 12d
another task : 24d
`,
{}
);
});
it("should render when there's a semicolon in the task data", () => {
imgSnapshotTest(
`
gantt
title Gantt Digram
dateFormat YYYY-MM-DD
section Section
;A task with a semiclon :a1, 2014-01-01, 30d
Another task :after a1 , 20d
section Another
Task in sec :2014-01-12 , 12d
another task : 24d
`,
{}
);
});
it("should render when there's a hashtag in the title", () => {
imgSnapshotTest(
`
gantt
title #Gantt With a Hashtag in the Title
dateFormat YYYY-MM-DD
section Section
A task :a1, 2014-01-01, 30d
Another task :after a1 , 20d
section Another
Task in sec :2014-01-12 , 12d
another task : 24d
`,
{}
);
});
it("should render when there's a hashtag in a section is true", () => {
imgSnapshotTest(
`
gantt
title Gantt Digram
dateFormat YYYY-MM-DD
section #Section With a Hashtag
A task :a1, 2014-01-01, 30d
Another task :after a1 , 20d
section Another
Task in sec :2014-01-12 , 12d
another task : 24d
`,
{}
);
});
it("should render when there's a hashtag in the task data", () => {
imgSnapshotTest(
`
gantt
title Gantt Digram
dateFormat YYYY-MM-DD
section Section
#A task with a hashtag :a1, 2014-01-01, 30d
Another task :after a1 , 20d
section Another
Task in sec :2014-01-12 , 12d
another task : 24d
`,
{}
);
});
});

View File

@@ -701,4 +701,316 @@ gitGraph TB:
{}
);
});
it('34: should render a simple gitgraph with two branches from same commit', () => {
imgSnapshotTest(
`gitGraph
commit id:"1-abcdefg"
commit id:"2-abcdefg"
branch feature-001
commit id:"3-abcdefg"
commit id:"4-abcdefg"
checkout main
branch feature-002
commit id:"5-abcdefg"
checkout feature-001
merge feature-002
`,
{}
);
});
it('35: should render a simple gitgraph with two branches from same commit | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id:"1-abcdefg"
commit id:"2-abcdefg"
branch feature-001
commit id:"3-abcdefg"
commit id:"4-abcdefg"
checkout main
branch feature-002
commit id:"5-abcdefg"
checkout feature-001
merge feature-002
`,
{}
);
});
it('36: should render GitGraph with branch that is not used immediately', () => {
imgSnapshotTest(
`gitGraph LR:
commit id:"1-abcdefg"
branch x
checkout main
commit id:"2-abcdefg"
checkout x
commit id:"3-abcdefg"
checkout main
merge x
`,
{}
);
});
it('37: should render GitGraph with branch that is not used immediately | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id:"1-abcdefg"
branch x
checkout main
commit id:"2-abcdefg"
checkout x
commit id:"3-abcdefg"
checkout main
merge x
`,
{}
);
});
it('38: should render GitGraph with branch and sub-branch neither of which used immediately', () => {
imgSnapshotTest(
`gitGraph LR:
commit id:"1-abcdefg"
branch x
checkout main
commit id:"2-abcdefg"
checkout x
commit id:"3-abcdefg"
checkout main
merge x
checkout x
branch y
checkout x
commit id:"4-abcdefg"
checkout y
commit id:"5-abcdefg"
checkout x
merge y
`,
{}
);
});
it('39: should render GitGraph with branch and sub-branch neither of which used immediately | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id:"1-abcdefg"
branch x
checkout main
commit id:"2-abcdefg"
checkout x
commit id:"3-abcdefg"
checkout main
merge x
checkout x
branch y
checkout x
commit id:"4-abcdefg"
checkout y
commit id:"5-abcdefg"
checkout x
merge y
`,
{}
);
});
it('40: should render a simple gitgraph with cherry pick merge commit', () => {
imgSnapshotTest(
`gitGraph
commit id: "ZERO"
branch feature
branch release
checkout feature
commit id: "A"
commit id: "B"
checkout main
merge feature id: "M"
checkout release
cherry-pick id: "M" parent:"B"`
);
});
it('41: should render default GitGraph with parallelCommits set to false', () => {
imgSnapshotTest(
`gitGraph
commit id:"1-abcdefg"
commit id:"2-abcdefg"
branch develop
commit id:"3-abcdefg"
commit id:"4-abcdefg"
checkout main
branch feature
commit id:"5-abcdefg"
commit id:"6-abcdefg"
checkout main
commit id:"7-abcdefg"
commit id:"8-abcdefg"
`,
{ gitGraph: { parallelCommits: false } }
);
});
it('42: should render GitGraph with parallel commits', () => {
imgSnapshotTest(
`gitGraph
commit id:"1-abcdefg"
commit id:"2-abcdefg"
branch develop
commit id:"3-abcdefg"
commit id:"4-abcdefg"
checkout main
branch feature
commit id:"5-abcdefg"
commit id:"6-abcdefg"
checkout main
commit id:"7-abcdefg"
commit id:"8-abcdefg"
`,
{ gitGraph: { parallelCommits: true } }
);
});
it('43: should render GitGraph with parallel commits | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id:"1-abcdefg"
commit id:"2-abcdefg"
branch develop
commit id:"3-abcdefg"
commit id:"4-abcdefg"
checkout main
branch feature
commit id:"5-abcdefg"
commit id:"6-abcdefg"
checkout main
commit id:"7-abcdefg"
commit id:"8-abcdefg"
`,
{ gitGraph: { parallelCommits: true } }
);
});
it('44: should render GitGraph with unconnected branches and no parallel commits', () => {
imgSnapshotTest(
`gitGraph
branch dev
branch v2
branch feat
commit id:"1-abcdefg"
commit id:"2-abcdefg"
checkout main
commit id:"3-abcdefg"
checkout dev
commit id:"4-abcdefg"
checkout v2
commit id:"5-abcdefg"
checkout main
commit id:"6-abcdefg"
`,
{ gitGraph: { parallelCommits: false } }
);
});
it('45: should render GitGraph with unconnected branches and parallel commits', () => {
imgSnapshotTest(
`gitGraph
branch dev
branch v2
branch feat
commit id:"1-abcdefg"
commit id:"2-abcdefg"
checkout main
commit id:"3-abcdefg"
checkout dev
commit id:"4-abcdefg"
checkout v2
commit id:"5-abcdefg"
checkout main
commit id:"6-abcdefg"
`,
{ gitGraph: { parallelCommits: true } }
);
});
it('46: should render GitGraph with unconnected branches and parallel commits | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
branch dev
branch v2
branch feat
commit id:"1-abcdefg"
commit id:"2-abcdefg"
checkout main
commit id:"3-abcdefg"
checkout dev
commit id:"4-abcdefg"
checkout v2
commit id:"5-abcdefg"
checkout main
commit id:"6-abcdefg"
`,
{ gitGraph: { parallelCommits: true } }
);
});
it('46: should render GitGraph with merge back and merge forward', () => {
imgSnapshotTest(
`gitGraph LR:
commit id:"1-abcdefg"
branch branch-A
branch branch-B
commit id:"2-abcdefg"
checkout branch-A
merge branch-B
checkout branch-B
merge branch-A
`,
{ gitGraph: { parallelCommits: true } }
);
});
it('47: should render GitGraph with merge back and merge forward | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id:"1-abcdefg"
branch branch-A
branch branch-B
commit id:"2-abcdefg"
checkout branch-A
merge branch-B
checkout branch-B
merge branch-A
`,
{ gitGraph: { parallelCommits: true } }
);
});
it('48: should render GitGraph with merge on a new branch | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph LR:
commit id:"1-abcdefg"
branch branch-B order: 2
commit id:"2-abcdefg"
branch branch-A
merge main
checkout branch-B
merge branch-A
`,
{ gitGraph: { parallelCommits: true } }
);
});
it('49: should render GitGraph with merge on a new branch | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id:"1-abcdefg"
branch branch-B order: 2
commit id:"2-abcdefg"
branch branch-A
merge main
checkout branch-B
merge branch-A
`,
{ gitGraph: { parallelCommits: true } }
);
});
});

View File

@@ -0,0 +1,36 @@
import { imgSnapshotTest } from '../../helpers/util';
describe('Katex', () => {
it('1: should render a complex Katex flowchart no htmlLabels', () => {
imgSnapshotTest(
`graph LR
A["$$f(\\relax{x}) = \\int_{-\\infty}^\\infty \\hat{f}(\\xi)\\,e^{2 \\pi i \\xi x}\\,d\\xi$$"] -->|"$$\\Bigg(\\bigg(\\Big(\\big((\\frac{-b\\pm\\sqrt{b^2-4ac}}{2a})\\big)\\Big)\\bigg)\\Bigg)$$"| B("$$1+\\frac{e^{-2\\pi}} {1+\\frac{e^{-4\\pi}} {1+\\frac{e^{-6\\pi}} {1+\\frac{e^{-8\\pi}} {1+\\cdots}}}}$$")
A -->|"$$\\overbrace{a+b+c}^{\\text{note}}$$"| C("$$\\phase{-78^\\circ}$$")
B --> D("$$x = \\begin{cases} a &\\text{if } b \\\\ c &\\text{if } d \\end{cases}$$")
C --> E("$$x(t)=c_1\\begin{bmatrix}-\\cos{t}+\\sin{t}\\\\ 2\\cos{t} \\end{bmatrix}e^{2t}$$")`,
{ fontFamily: 'courier' }
);
});
it('2: should render a Katex flowchart containing the Greek alphabet', () => {
imgSnapshotTest(
`graph LR
A["$$\\alpha\\beta\\gamma\\delta\\epsilon\\zeta\\eta\\theta\\iota\\kappa\\lambda\\mu\\nu\\xi\\omicron\\pi\\rho\\sigma\\tau\\upsilon\\phi\\chi\\psi\\omega$$"] --> B["$$\\Alpha\\Beta\\Gamma\\Delta\\Epsilon\\Zeta\\Eta\\Theta\\Iota\\Kappa\\Lambda\\Mu\\Nu\\Xi\\Omicron\\Pi\\Rho\\Sigma\\Tau\\Upsilon\\Phi\\Chi\\Psi\\Omega$$"]`,
{ fontFamily: 'courier' }
);
});
it('3: should render a Katex flowchart containing set theory symbols', () => {
imgSnapshotTest(
`graph LR
A["$$\\forall\\complement\\therefore\\emptyset\\exists\\subset\\because\\empty\\exist\\supset\\mapsto\\varnothing\\nexists\\mid\\to\\implies\\in\\land\\gets\\impliedby\\isin\\lor\\leftrightarrow\\iff\\notin\\ni\\notni\\lnot$$"] --> B["$$\\nabla\\Im\\Reals\\jmath\\partial\\image\\wp\\aleph\\Game\\weierp\\alef\\Finv\\N\\Z\\alefsym\\cnums\\natnums\\beth\\Complex\\R\\gimel\\ell\\Re\\daleth\\hbar\\real\\eth\\hslash\\reals$$"]`,
{ fontFamily: 'courier' }
);
});
// TODO: changes made to develop between Feb 13 - Feb 23 cause this test to no longer function
// it.skip('4: should render an error box originating from Katex', () => {
// imgSnapshotTest(
// `graph LR
// A["$$\\shouldBeError$$"]`,
// { fontFamily: 'courier' }
// );
// });
});

View File

@@ -44,7 +44,7 @@ describe('pie chart', () => {
const style = svg.attr('style');
expect(style).to.match(/^max-width: [\d.]+px;$/);
const maxWidthValue = parseFloat(style.match(/[\d.]+/g).join(''));
expect(maxWidthValue).to.eq(984);
expect(maxWidthValue).to.be.within(590, 600); // depends on installed fonts: 596.2 on my PC, 597.5 on CI
});
});
@@ -59,7 +59,7 @@ describe('pie chart', () => {
);
cy.get('svg').should((svg) => {
const width = parseFloat(svg.attr('width'));
expect(width).to.eq(984);
expect(width).to.be.within(590, 600); // depends on installed fonts: 596.2 on my PC, 597.5 on CI
expect(svg).to.not.have.attr('style');
});
});

View File

@@ -375,6 +375,26 @@ context('Sequence diagram', () => {
{}
);
});
it('should have actor-top and actor-bottom classes on top and bottom actor box and symbol', () => {
imgSnapshotTest(
`
sequenceDiagram
actor Bob
Alice->>Bob: Hi Bob
Bob->>Alice: Hi Alice
`,
{}
);
cy.get('.actor').should('have.class', 'actor-top');
cy.get('.actor-man').should('have.class', 'actor-top');
cy.get('.actor.actor-top').should('not.have.class', 'actor-bottom');
cy.get('.actor-man.actor-top').should('not.have.class', 'actor-bottom');
cy.get('.actor').should('have.class', 'actor-bottom');
cy.get('.actor-man').should('have.class', 'actor-bottom');
cy.get('.actor.actor-bottom').should('not.have.class', 'actor-top');
cy.get('.actor-man.actor-bottom').should('not.have.class', 'actor-top');
});
it('should render long notes left of actor', () => {
imgSnapshotTest(
`
@@ -792,6 +812,34 @@ context('Sequence diagram', () => {
});
});
context('links', () => {
it('should support actor links', () => {
renderGraph(
`
sequenceDiagram
link Alice: Dashboard @ https://dashboard.contoso.com/alice
link Alice: Wiki @ https://wiki.contoso.com/alice
link John: Dashboard @ https://dashboard.contoso.com/john
link John: Wiki @ https://wiki.contoso.com/john
Alice->>John: Hello John<br/>
John-->>Alice: Great<br/><br/>day!
`,
{ securityLevel: 'loose' }
);
cy.get('#actor0_popup').should((popupMenu) => {
const style = popupMenu.attr('style');
expect(style).to.undefined;
});
cy.get('#root-0').click();
cy.get('#actor0_popup').should((popupMenu) => {
const style = popupMenu.attr('style');
expect(style).to.match(/^display: block;$/);
});
cy.get('#root-0').click();
cy.get('#actor0_popup').should((popupMenu) => {
const style = popupMenu.attr('style');
expect(style).to.match(/^display: none;$/);
});
});
it('should support actor links and properties EXPERIMENTAL: USE WITH CAUTION', () => {
//Be aware that the syntax for "properties" is likely to be changed.
imgSnapshotTest(
@@ -930,4 +978,36 @@ context('Sequence diagram', () => {
});
});
});
context('render after error', () => {
it('should render diagram after fixing destroy participant error', () => {
cy.on('uncaught:exception', (err) => {
return false;
});
renderGraph([
`sequenceDiagram
Alice->>Bob: Hello Bob, how are you ?
Bob->>Alice: Fine, thank you. And you?
create participant Carl
Alice->>Carl: Hi Carl!
create actor D as Donald
Carl->>D: Hi!
destroy Carl
Alice-xCarl: We are too many
destroy Bo
Bob->>Alice: I agree`,
`sequenceDiagram
Alice->>Bob: Hello Bob, how are you ?
Bob->>Alice: Fine, thank you. And you?
create participant Carl
Alice->>Carl: Hi Carl!
create actor D as Donald
Carl->>D: Hi!
destroy Carl
Alice-xCarl: We are too many
destroy Bob
Bob->>Alice: I agree`,
]);
});
});
});

View File

@@ -17,24 +17,30 @@
<style>
body {
/* background: rgb(221, 208, 208); */
/* background:#333; */
background: #333;
font-family: 'Arial';
/* font-size: 18px !important; */
}
h1 {
color: grey;
}
.mermaid {
border: 1px solid #ddd;
margin: 10px;
}
.mermaid2 {
display: none;
}
.mermaid svg {
/* font-size: 18px !important; */
background-color: #efefef;
background-image: radial-gradient(#fff 51%, transparent 91%),
radial-gradient(#fff 51%, transparent 91%);
/* background-color: #efefef; */
background-color: #333;
background-image: radial-gradient(#333 51%, transparent 91%),
radial-gradient(#333 51%, transparent 91%);
background-size: 20px 20px;
background-position: 0 0, 10px 10px;
background-repeat: repeat;
border: 2px solid rgb(131, 142, 205);
}
.malware {
position: fixed;
@@ -58,46 +64,192 @@
</head>
<body>
<pre id="diagram" class="mermaid">
flowchart TB
C & D & E & F & G & H & I & J & K & L & M & N & O & P & Q & R & S & T & U & V & W & X & Y & Z & A1 & A2 & A3 & A4 & A5 & A6 & A7 & A8
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
C & D & E & F & G & H & I & J & K & L & M & N & O & P & Q & R & S & T & U & V & W & X & Y & Z & A1 & A2 & A3 & A4 & A5 & A6 & A7 & A8
block-beta
blockArrowId<["Label"]>(right)
blockArrowId2<["Label"]>(left)
blockArrowId3<["Label"]>(up)
blockArrowId4<["Label"]>(down)
blockArrowId5<["Label"]>(x)
blockArrowId6<["Label"]>(y)
blockArrowId6<["Label"]>(x, down)
</pre>
<pre id="diagram" class="mermaid">
block-beta
block:e:4
columns 2
f
g
end
</pre>
<pre id="diagram" class="mermaid">
block-beta
block:e:4
columns 2
f
g
h
end
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 4
a b c d
block:e:4
columns 2
f
g
h
end
i:4
</pre>
<pre id="diagram" class="mermaid2">
flowchart TB
A & A & A & A & A & A & A & A ---> C & D & E & F & G & H & I & J & K & L & M & N & O & P & Q & R & S & T & U & V & W & X & Y & Z
flowchart LR
X-- "y" -->z
</pre>
<pre id="diagram" class="mermaid2">
flowchart TB
A1 & A2 & A3 & A4 & A5 & A6 & A7 & A8 --> C & D & E & F & G & H & I & J & K & L & M & N & O & P & Q & R & S & T & U & V & W & X & Y & Z
block-beta
columns 5
A space B
A --x B
</pre>
<pre id="diagram" class="mermaid2">
block-beta
columns 3
a["A wide one"] b:2 c:2 d
</pre>
<pre id="diagram" class="mermaid2">
block-beta
block:e
f
end
</pre>
<pre id="diagram" class="mermaid2">
block-beta
columns 3
a:3
block:e:3
f
end
g
</pre>
<pre id="diagram" class="mermaid2">
block-beta
columns 3
a:3
block:e:3
f
g
end
h
i
j
</pre>
<pre id="diagram" class="mermaid2">
block-beta
columns 3
a b:2
block:e:3
f
end
g h i
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 3
a b c
e:3
f g h
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 1
db(("DB"))
blockArrowId6<["&nbsp;&nbsp;&nbsp;"]>(down)
block:ID
A
B["A wide one in the middle"]
C
end
space
D
ID --> D
C --> D
style B fill:#f9F,stroke:#333,stroke-width:4px
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 5
A1:3
A2:1
A3
B1 B2 B3:3
</pre>
<pre id="diagram" class="mermaid2">
block-beta
block
D
E
end
db("This is the text in the box")
</pre>
<pre id="diagram" class="mermaid2">
block-beta
block
D
end
A["A: I am a wide one"]
</pre>
<pre id="diagram" class="mermaid2">
block-beta
A["square"]
B("rounded")
C(("circle"))
</pre>
<pre id="diagram" class="mermaid2">
block-beta
A>"rect_left_inv_arrow"]
B{"diamond"}
C{{"hexagon"}}
</pre>
<pre id="diagram" class="mermaid2">
block-beta
A(["stadium"])
</pre>
<pre id="diagram" class="mermaid2">
block-beta
%% A[["subroutine"]]
%% B[("cylinder")]
C>"surprise"]
</pre>
<pre id="diagram" class="mermaid2">
block-beta
A[/"lean right"/]
B[\"lean left"\]
C[/"trapezoid"\]
D[\"trapezoid"/]
</pre>
<pre id="diagram" class="mermaid2">
flowchart
Node1:::class1 --> Node2:::class2
Node1:::class1 --> Node3:::class2
Node3 --> Node4((I am a circle)):::larger
B
style B fill:#f9F,stroke:#333,stroke-width:4px
</pre>
classDef class1 fill:lightblue
classDef class2 fill:pink
classDef larger font-size:30px,fill:yellow
</pre
>
<pre id="diagram" class="mermaid2">
stateDiagram-v2
[*] --> Still
Still --> [*]
Still --> Moving
Moving --> Still
Moving --> Crash
Crash --> [*] </pre
>
flowchart LR
a1 -- apa --> b1
</pre>
<pre id="diagram" class="mermaid2">
flowchart RL
subgraph "`one`"
a1 -- l1 --> a2
a1 -- l2 --> a2
end
subgraph "`one`"
id
end
</pre>
<pre id="diagram" class="mermaid2">
flowchart RL
@@ -442,14 +594,8 @@ mindmap
// useMaxWidth: false,
// });
mermaid.initialize({
flowchart: { titleTopMargin: 10 },
fontFamily: 'courier',
sequence: {
actorFontFamily: 'courier',
noteFontFamily: 'courier',
messageFontFamily: 'courier',
},
fontSize: 16,
theme: 'dark',
startOnLoad: true,
logLevel: 0,
});
function callback() {

108
cypress/platform/xss25.html Normal file
View File

@@ -0,0 +1,108 @@
<html>
<head>
<link href="https://fonts.googleapis.com/css?family=Montserrat&display=swap" rel="stylesheet" />
<link href="https://unpkg.com/tailwindcss@^1.0/dist/tailwind.min.css" rel="stylesheet" />
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"
/>
<link
href="https://fonts.googleapis.com/css?family=Noto+Sans+SC&display=swap"
rel="stylesheet"
/>
<style>
body {
/* background: rgb(221, 208, 208); */
/* background:#333; */
font-family: 'Arial';
/* font-size: 18px !important; */
}
h1 {
color: grey;
}
.mermaid2 {
display: none;
}
.mermaid svg {
/* font-size: 18px !important; */
}
.malware {
position: fixed;
bottom: 0;
left: 0;
right: 0;
height: 150px;
background: red;
color: black;
display: flex;
display: flex;
justify-content: center;
align-items: center;
font-family: monospace;
font-size: 72px;
}
</style>
<script>
function xssAttack() {
const div = document.createElement('div');
div.id = 'the-malware';
div.className = 'malware';
div.innerHTML = 'XSS Succeeded';
document.getElementsByTagName('body')[0].appendChild(div);
throw new Error('XSS Succeeded');
}
</script>
</head>
<body>
<div>Security check</div>
<div class="flex">
<div id="diagram" class="mermaid"></div>
<div id="res" class=""></div>
</div>
<script type="module">
import mermaid from './mermaid.esm.mjs';
mermaid.parseError = function (err, hash) {
// console.error('Mermaid error: ', err);
};
mermaid.initialize({
theme: 'forest',
arrowMarkerAbsolute: true,
// themeCSS: '.edgePath .path {stroke: red;} .arrowheadPath {fill: red;}',
logLevel: 0,
state: {
defaultRenderer: 'dagre-wrapper',
},
flowchart: {
// defaultRenderer: 'dagre-wrapper',
nodeSpacing: 10,
curve: 'cardinal',
htmlLabels: true,
},
htmlLabels: false,
// gantt: { axisFormat: '%m/%d/%Y' },
sequence: { actorFontFamily: 'courier', actorMargin: 50, showSequenceNumbers: false },
// sequenceDiagram: { actorMargin: 300 } // deprecated
// fontFamily: '"times", sans-serif',
// fontFamily: 'courier',
fontSize: 18,
curve: 'basis',
securityLevel: 'strict',
startOnLoad: false,
secure: ['secure', 'securityLevel', 'startOnLoad', 'maxTextSize'],
// themeVariables: {relationLabelColor: 'red'}
});
function callback() {
alert('It worked');
}
let diagram = 'block-beta\n';
diagram += '`A-- "X<img src=x on';
diagram += 'error=xssAttack()>" -->B';
console.log(diagram);
// document.querySelector('#diagram').innerHTML = diagram;
const { svg } = await mermaid.render('diagram', diagram);
document.querySelector('#res').innerHTML = svg;
</script>
</body>
</html>

View File

@@ -24,8 +24,18 @@
// -- This is will overwrite an existing command --
// Cypress.Commands.overwrite("visit", (originalFn, url, options) => { ... })
// import '@percy/cypress';
import { addMatchImageSnapshotCommand } from 'cypress-image-snapshot/command';
// The SSIM comparison method can be used if the pixelmatch is throwing lots of false positives.
// SSIM actually does not catch minute changes in the image, so it is not as accurate as pixelmatch.
// addMatchImageSnapshotCommand({
// comparisonMethod: 'ssim',
// failureThreshold: 0.01,
// failureThresholdType: 'percent',
// customDiffConfig: {
// ssim: 'fast',
// },
// blur: 1,
// });
addMatchImageSnapshotCommand();

139
demos/block.html Normal file
View File

@@ -0,0 +1,139 @@
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/html">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Mermaid Block diagram demo page</title>
<link rel="icon" type="image/png" href="data:image/png;base64,iVBORw0KGgo=" />
</head>
<body>
<h1>Block diagram demos</h1>
<pre id="diagram" class="mermaid">
block-beta
columns 1
db(("DB"))
blockArrowId6<["&nbsp;&nbsp;&nbsp;"]>(down)
block:ID
A
B["A wide one in the middle"]
C
end
space
D
ID --> D
C --> D
style B fill:#f9F,stroke:#333,stroke-width:4px
</pre>
<pre id="diagram" class="mermaid">
block-beta
A1["square"]
B1("rounded")
C1(("circle"))
A2>"rect_left_inv_arrow"]
B2{"diamond"}
C2{{"hexagon"}}
</pre>
<pre id="diagram" class="mermaid">
block-beta
A1(["stadium"])
A2[["subroutine"]]
B1[("cylinder")]
C1>"surprise"]
A3[/"lean right"/]
B2[\"lean left"\]
C2[/"trapezoid"\]
D2[\"trapezoid"/]
</pre>
<pre id="diagram" class="mermaid">
block-beta
block:e:4
columns 2
f
g
end
</pre>
<pre id="diagram" class="mermaid">
block-beta
block:e:4
columns 2
f
g
h
end
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 3
a:3
block:e:3
f
g
end
h
i
j
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 4
a b c d
block:e:4
columns 2
f
g
h
end
i:4
</pre>
<pre id="diagram" class="mermaid">
flowchart LR
X-- "a label" -->z
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 5
A space B
A --x B
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 3
a["A wide one"] b:2 c:2 d
</pre>
<pre id="diagram" class="mermaid">
block-beta
columns 3
a b c
e:3
f g h
</pre>
<pre id="diagram" class="mermaid">
block-beta
A1:3
A2:1
A3
</pre>
<script type="module">
import mermaid from './mermaid.esm.mjs';
mermaid.initialize({
theme: 'default',
logLevel: 3,
securityLevel: 'loose',
block: {
padding: 10,
},
});
</script>
</body>
</html>

View File

@@ -1102,6 +1102,57 @@
</pre>
<hr />
<h2>Sample 20</h2>
<h3>graph</h3>
<pre class="mermaid">
graph LR
A["$$f(\relax{x}) = \int_{-\infty}^\infty \hat{f}(\xi)\,e^{2 \pi i \xi x}\,d\xi$$"] -->|"$$\Bigg(\bigg(\Big(\big((\frac{-b\pm\sqrt{b^2-4ac}}{2a})\big)\Big)\bigg)\Bigg)$$"| B("$$1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots}}}}$$")
A -->|"$$\overbrace{a+b+c}^{\text{note}}$$"| C("$$\phase{-78^\circ}$$")
B --> D("$$x = \begin{cases} a &\text{if } b \\ c &\text{if } d \end{cases}$$")
C --> E("$$x(t)=c_1\begin{bmatrix}-\cos{t}+\sin{t}\\ 2\cos{t} \end{bmatrix}e^{2t}$$")
</pre>
<hr />
<h3>flowchart</h3>
<pre class="mermaid">
flowchart LR
A["$$f(\relax{x}) = \int_{-\infty}^\infty \hat{f}(\xi)\,e^{2 \pi i \xi x}\,d\xi$$"] -->|"$$\Bigg(\bigg(\Big(\big((\frac{-b\pm\sqrt{b^2-4ac}}{2a})\big)\Big)\bigg)\Bigg)$$"| B("$$1+\frac{e^{-2\pi}} {1+\frac{e^{-4\pi}} {1+\frac{e^{-6\pi}} {1+\frac{e^{-8\pi}} {1+\cdots}}}}$$")
A -->|"$$\overbrace{a+b+c}^{\text{note}}$$"| C("$$\phase{-78^\circ}$$")
B --> D("$$x = \begin{cases} a &\text{if } b \\ c &\text{if } d \end{cases}$$")
C --> E("$$x(t)=c_1\begin{bmatrix}-\cos{t}+\sin{t}\\ 2\cos{t} \end{bmatrix}e^{2t}$$")
</pre>
<hr />
<h2>Sample 21</h2>
<h3>graph</h3>
<pre class="mermaid">
graph LR
A["$$\alpha\beta\gamma\delta\epsilon\zeta\eta\theta\iota\kappa\lambda\mu\nu\xi\omicron\pi\rho\sigma\tau\upsilon\phi\chi\psi\omega$$"] --> B["$$\Alpha\Beta\Gamma\Delta\Epsilon\Zeta\Eta\Theta\Iota\Kappa\Lambda\Mu\Nu\Xi\Omicron\Pi\Rho\Sigma\Tau\Upsilon\Phi\Chi\Psi\Omega$$"]
</pre>
<hr />
<h3>flowchart</h3>
<pre class="mermaid">
graph LR
A["$$\alpha\beta\gamma\delta\epsilon\zeta\eta\theta\iota\kappa\lambda\mu\nu\xi\omicron\pi\rho\sigma\tau\upsilon\phi\chi\psi\omega$$"] --> B["$$\Alpha\Beta\Gamma\Delta\Epsilon\Zeta\Eta\Theta\Iota\Kappa\Lambda\Mu\Nu\Xi\Omicron\Pi\Rho\Sigma\Tau\Upsilon\Phi\Chi\Psi\Omega$$"]
</pre>
<hr />
<h2>Sample 22</h2>
<h3>graph</h3>
<pre class="mermaid">
graph LR
A["$$\forall\complement\therefore\emptyset\exists\subset\because\empty\exist\supset\mapsto\varnothing\nexists\mid\to\implies\in\land\gets\impliedby\isin\lor\leftrightarrow\iff\notin\ni\notni\lnot$$"] --> B["$$\nabla\Im\Reals\jmath\partial\image\wp\aleph\Game\weierp\alef\Finv\N\Z\alefsym\cnums\natnums\beth\Complex\R\gimel\ell\Re\daleth\hbar\real\eth\hslash\reals$$"]
</pre>
<hr />
<h3>flowchart</h3>
<pre class="mermaid">
graph LR
A["$$\forall\complement\therefore\emptyset\exists\subset\because\empty\exist\supset\mapsto\varnothing\nexists\mid\to\implies\in\land\gets\impliedby\isin\lor\leftrightarrow\iff\notin\ni\notni\lnot$$"] --> B["$$\nabla\Im\Reals\jmath\partial\image\wp\aleph\Game\weierp\alef\Finv\N\Z\alefsym\cnums\natnums\beth\Complex\R\gimel\ell\Re\daleth\hbar\real\eth\hslash\reals$$"]
</pre>
<hr />
<hr />
<pre class="mermaid">
@@ -1524,11 +1575,11 @@
F{Flow 2} == Choice 2.1 ==> H[Feedback node]
H[Feedback node] ==> B[Step 1]
F{Flow 2} == Choice 2.2 ==> G((Finish))
linkStyle 0,1,4,6,7,8,9 stroke:gold, stroke-width:4px
classDef active_node fill:#0CF,stroke:#09F,stroke-width:6px
classDef unactive_node fill:#e0e0e0,stroke:#bdbdbd,stroke-width:3px
classDef unactive_node fill:#e0e0e0,stroke:#bdbdbd,stroke-width:3px
classDef bugged_node fill:#F88,stroke:#F22,stroke-width:3px
classDef start_node,finish_node fill:#3B1,stroke:#391,stroke-width:8px

View File

@@ -30,6 +30,21 @@
</pre>
<hr />
<pre class="mermaid">
gantt
title #; Gantt Diagrams Allow Semicolons and Hashtags #;!
accTitle: A simple sample gantt diagram
accDescr: 2 sections with 2 tasks each, from 2014
dateFormat YYYY-MM-DD
section #;Section
#;A task :a1, 2014-01-01, 30d
#;Another task :after a1 , 20d
section #;Another
Task in sec :2014-01-12 , 12d
another task : 24d
</pre>
<hr />
<pre class="mermaid">
gantt
title Airworks roadmap

View File

@@ -14,30 +14,364 @@
</head>
<body>
<h1>Git diagram demo</h1>
<h1>Git graph demo</h1>
<h2>Simple "branch and merge" graph</h2>
<pre class="mermaid">
---
title: Simple Git diagram
title: Simple "branch and merge" (left-to-right)
---
gitGraph:
options
{
"nodeSpacing": 50,
"nodeRadius": 5
}
end
branch master
gitGraph LR:
commit
branch newbranch
checkout newbranch
commit
checkout main
merge newbranch
</pre>
<pre class="mermaid">
---
title: Simple "branch and merge" (top-to-bottom)
---
gitGraph TB:
commit
checkout master
branch newbranch
checkout newbranch
commit
checkout main
merge newbranch
</pre>
<h2>Continuous development graph</h2>
<pre class="mermaid">
---
title: Continuous development (left-to-right)
---
gitGraph LR:
commit
branch develop
checkout develop
commit
checkout main
merge develop
checkout develop
commit
checkout main
merge develop
</pre>
<pre class="mermaid">
---
title: Continuous development (top-to-bottom)
---
gitGraph TB:
commit
branch develop
checkout develop
commit
checkout main
merge develop
checkout develop
commit
checkout main
merge develop
</pre>
<h2>Merge feature to advanced main graph</h2>
<pre class="mermaid">
---
title: Merge feature to advanced main (left-to-right)
---
gitGraph LR:
commit
branch newbranch
checkout newbranch
commit
checkout main
commit
merge newbranch
</pre>
<pre class="mermaid">
---
title: Merge feature to advanced main (top-to-bottom)
---
gitGraph TB:
commit
branch newbranch
checkout newbranch
commit
checkout main
commit
merge newbranch
</pre>
<h2>Two-way merges</h2>
<pre class="mermaid">
---
title: Two-way merges (left-to-right)
---
gitGraph LR:
commit
branch develop
checkout develop
commit
checkout main
merge develop
commit
checkout develop
merge main
commit
checkout main
merge develop
</pre>
<pre class="mermaid">
---
title: Two-way merges (top-to-bottom)
---
gitGraph TB:
commit
branch develop
checkout develop
commit
checkout main
merge develop
commit
checkout develop
merge main
commit
checkout main
merge develop
</pre>
<h2>Cherry-pick from branch graph</h2>
<pre class="mermaid">
---
title: Cherry-pick from branch (left-to-right)
---
gitGraph LR:
commit
branch newbranch
checkout newbranch
commit id: "Pick me"
checkout main
commit
checkout newbranch
commit
checkout main
cherry-pick id: "Pick me"
</pre>
<pre class="mermaid">
---
title: Cherry-pick from branch (top-to-bottom)
---
gitGraph TB:
commit
branch newbranch
checkout newbranch
commit id: "Pick me"
checkout main
commit
checkout newbranch
commit
checkout main
cherry-pick id: "Pick me"
</pre>
<h2>Cherry-pick from main graph</h2>
<pre class="mermaid">
---
title: Cherry-pick from main (left-to-right)
---
gitGraph LR:
commit
branch develop
commit
checkout main
commit id:"A"
checkout develop
commit
cherry-pick id: "A"
</pre>
<pre class="mermaid">
---
title: Cherry-pick from main (top-to-bottom)
---
gitGraph TB:
commit
branch develop
commit
checkout main
commit id:"A"
checkout develop
commit
cherry-pick id: "A"
</pre>
<h2>Cherry-pick then merge graph</h2>
<pre class="mermaid">
---
title: Cherry-pick then merge (left-to-right)
---
gitGraph LR:
commit
branch newbranch
checkout newbranch
commit id: "Pick me"
checkout main
commit
checkout newbranch
commit
checkout main
cherry-pick id: "Pick me"
merge newbranch
</pre>
<pre class="mermaid">
---
title: Cherry-pick then merge (top-to-bottom)
---
gitGraph TB:
commit
branch newbranch
checkout newbranch
commit id: "Pick me"
checkout main
commit
checkout newbranch
commit
checkout main
cherry-pick id: "Pick me"
merge newbranch
</pre>
<h2>Merge from main onto undeveloped branch graph</h2>
<pre class="mermaid">
---
title: Merge from main onto undeveloped branch (left-to-right)
---
gitGraph LR:
commit
branch develop
commit
checkout main
commit
checkout develop
merge main
</pre>
<pre class="mermaid">
---
title: Merge from main onto undeveloped branch (top-to-bottom)
---
gitGraph TB:
commit
branch develop
commit
checkout main
commit
checkout develop
merge main
</pre>
<h2>Merge from main onto developed branch graph</h2>
<pre class="mermaid">
---
title: Merge from main onto developed branch (left-to-right)
---
gitGraph LR:
commit
branch develop
commit
checkout main
commit
checkout develop
commit
merge main
</pre>
<pre class="mermaid">
---
title: Merge from main onto developed branch (top-to-bottom)
---
gitGraph TB:
commit
branch develop
commit
checkout main
commit
checkout develop
commit
merge main
</pre>
<h2>Two branches from same commit graph</h2>
<pre class="mermaid">
---
title: Two branches from same commit (left-to-right)
---
gitGraph LR:
commit
commit
branch feature-001
commit
commit
checkout main
branch feature-002
commit
checkout feature-001
merge feature-002
</pre>
<pre class="mermaid">
---
title: Two branches from same commit (top-to-bottom)
---
gitGraph TB:
commit
commit
branch feature-001
commit
commit
checkout main
branch feature-002
commit
checkout feature-001
merge feature-002
</pre>
<h2>Three branches and a cherry-pick from each graph</h2>
<pre class="mermaid">
---
title: Three branches and a cherry-pick from each (left-to-right)
---
gitGraph LR:
commit id: "ZERO"
branch develop
commit id:"A"
checkout main
commit id:"ONE"
checkout develop
commit id:"B"
branch featureA
commit id:"FIX"
commit id: "FIX-2"
checkout main
commit id:"TWO"
cherry-pick id:"A"
commit id:"THREE"
cherry-pick id:"FIX"
checkout develop
commit id:"C"
merge featureA
</pre>
<pre class="mermaid">
---
title: Three branches and a cherry-pick from each (top-to-bottom)
---
gitGraph TB:
commit id: "ZERO"
branch develop
commit id:"A"
checkout main
commit id:"ONE"
checkout develop
commit id:"B"
branch featureA
commit id:"FIX"
commit id: "FIX-2"
checkout main
commit id:"TWO"
cherry-pick id:"A"
commit id:"THREE"
cherry-pick id:"FIX"
checkout develop
commit id:"C"
merge featureA
</pre>
<script type="module">
import mermaid from './mermaid.esm.mjs';
const ALLOWED_TAGS = [

View File

@@ -81,6 +81,9 @@
<li>
<h2><a href="./sankey.html">Sankey</a></h2>
</li>
<li>
<h2><a href="./block.html">Layered Blocks</a></h2>
</li>
</ul>
</body>
</html>

View File

@@ -15,7 +15,7 @@
<body>
<h1>Pie chart demos</h1>
<pre class="mermaid">
pie title Pets adopted by volunteers
pie title Default text position: Animal adoption
accTitle: simple pie char demo
accDescr: pie chart with 3 sections: dogs, cats, rats. Most are dogs.
"Dogs": 386
@@ -27,7 +27,7 @@
<pre class="mermaid">
%%{init: {"pie": {"textPosition": 0.9}, "themeVariables": {"pieOuterStrokeWidth": "5px"}}}%%
pie
title Key elements in Product X
title Offset labels close to border: Product X
accTitle: Key elements in Product X
accDescr: This is a pie chart showing the key elements in Product X.
"Calcium": 42.96
@@ -36,6 +36,19 @@
"Iron": 5
</pre>
<pre class="mermaid">
%%{init: {"pie": {"textPosition": 0.45}, "themeVariables": {"pieOuterStrokeWidth": "5px"}}}%%
pie
title Centralized labels: Languages
accTitle: Key elements in Product X
accDescr: This is a pie chart showing the key elements in Product X.
"JavaScript": 30
"Python": 25
"Java": 20
"C#": 15
"Others": 10
</pre>
<script type="module">
import mermaid from './mermaid.esm.mjs';
mermaid.initialize({

View File

@@ -33,6 +33,7 @@
---
config:
sankey:
useMaxWidth: true
showValues: false
width: 1200
height: 600

View File

@@ -16,50 +16,74 @@
<body>
<h1>Sequence diagram demos</h1>
<pre class="mermaid">
sequenceDiagram
accTitle: test the accTitle
accDescr: Test a description
sequenceDiagram
accTitle: test the accTitle
accDescr: Test a description
participant Alice
participant Bob
participant John as John<br />Second Line
link Alice: Dashboard @ https://dashboard.contoso.com/alice
link Alice: Wiki @ https://wiki.contoso.com/alice
link John: Dashboard @ https://dashboard.contoso.com/john
link John: Wiki @ https://wiki.contoso.com/john
autonumber 10 10
rect rgb(200, 220, 100)
rect rgb(200, 255, 200)
Alice ->> Bob: Hello Bob, how are you?
Bob-->>John: How about you John?
end
Alice ->> Bob: Hello Bob, how are you?
Bob-->>John: How about you John?
end
Bob--x Alice: I am good thanks!
Bob-x John: I am good thanks!
Note right of John: John thinks a long<br />long time, so long<br />that the text does<br />not fit on a row.
Bob--x Alice: I am good thanks!
Bob-x John: I am good thanks!
Note right of John: John thinks a long<br />long time, so long<br />that the text does<br />not fit on a row.
Bob-->Alice: Checking with John...
Note over John:wrap: John looks like he's still thinking, so Bob prods him a bit.
Bob-x John: Hey John - we're still waiting to know<br />how you're doing
Note over John:nowrap: John's trying hard not to break his train of thought.
Bob-x John:wrap: John! Are you still debating about how you're doing? How long does it take??
Note over John: After a few more moments, John<br />finally snaps out of it.
end
Bob-->Alice: Checking with John...
Note over John:wrap: John looks like he's still thinking, so Bob prods him a bit.
Bob-x John: Hey John - we're still waiting to know<br />how you're doing
Note over John:nowrap: John's trying hard not to break his train of thought.
Bob-x John:wrap: John! Are you still debating about how you're doing? How long does it take??
Note over John: After a few more moments, John<br />finally snaps out of it.
end
autonumber off
alt either this
Alice->>+John: Yes
John-->>-Alice: OK
else or this
autonumber
Alice->>John: No
else or this will happen
Alice->John: Maybe
end
autonumber 200
par this happens in parallel
Alice -->> Bob: Parallel message 1
and
Alice -->> John: Parallel message 2
end
</pre>
autonumber off
alt either this
Alice->>+John: Yes
John-->>-Alice: OK
else or this
autonumber
Alice->>John: No
else or this will happen
Alice->John: Maybe
end
autonumber 200
par this happens in parallel
Alice -->> Bob: Parallel message 1
and
Alice -->> John: Parallel message 2
end
</pre>
<hr />
<pre class="mermaid">
---
title: With forced menus
config:
sequence:
forceMenus: true
---
sequenceDiagram
participant Alice
participant John
link Alice: Dashboard @ https://dashboard.contoso.com/alice
link Alice: Wiki @ https://wiki.contoso.com/alice
link John: Dashboard @ https://dashboard.contoso.com/john
link John: Wiki @ https://wiki.contoso.com/john
Alice->>John: Hello John, how are you?
John-->>Alice: Great!
Alice-)John: See you later!
</pre
>
<hr />
<pre class="mermaid">
sequenceDiagram
@@ -129,18 +153,18 @@
<hr />
<pre class="mermaid">
sequenceDiagram
box lightgreen Alice & John
participant A
participant J
end
box Another Group very very long description not wrapped
participant B
end
A->>J: Hello John, how are you?
J->>A: Great!
A->>B: Hello Bob, how are you ?
</pre
sequenceDiagram
box lightgreen Alice & John
participant A
participant J
end
box Another Group very very long description not wrapped
participant B
end
A->>J: Hello John, how are you?
J->>A: Great!
A->>B: Hello Bob, how are you ?
</pre
>
<hr />
@@ -163,7 +187,57 @@
Note left of Bob: Alice/Bob Note
end
</pre>
<pre class="mermaid">
sequenceDiagram
actor Alice
actor John
Alice-xJohn: Hello John, how are you?
John--xAlice: Great!
</pre>
<hr />
<pre class="mermaid">
sequenceDiagram
participant 1 as $$\frac{\lim_{x\rightarrow0}{\frac{1}{x}}}{\frac{-b\pm\sqrt{b^2-4ac}}{2a}}$$
participant 2 as $$\beta$$
participant 3 as $$\delta$$
participant 4 as $$\frac{\frac{\lim_{x\rightarrow0}{\frac{1}{x}}}{\frac{-b\pm\sqrt{b^2-4ac}}{2a}}}{\frac{\text{d}}{\text{d}x}{x^2}}$$
1->>2: $$\sqrt{2}$$
note right of 2: $$\frac{1+\frac{1+\frac{1+\frac{1}{2}}{2}}{2}}{2}+\frac{-b\pm\sqrt{b^2-4ac}}{2a}$$
2->>3: $$\frac{\lim_{x\rightarrow0}{\frac{1}{x}}}{\frac{-b\pm\sqrt{b^2-4ac}}{2a}}$$
note right of 3: $$\frac{-b\pm\sqrt{b^2-4ac}}{2a}$$
3->>4: $$\lim_{x\rightarrow0}{\frac{1}{x}}$$;
note right of 4: multiline
4->>1: multiline<br />using #lt;br /#gt;
note right of 1: multiline<br />$$\frac{1}{2}$$<br />3rd line
</pre>
<hr />
<pre class="mermaid">
sequenceDiagram
autonumber
participant 1 as $$\alpha$$lex
participant 2 as $$\beta$$ob
participant 3 as $$\theta$$iffany
1->>2: Hello John, does&nbsp; $$\frac{1}{2}+1=2$$?
loop $$\frac{1}{2}+1=2$$
2->>2: $$\frac{1}{2}+1=\frac{3}{2}$$
end
Note right of 2: $$x = \begin{cases} 1 &\text{if } \frac{1}{2}+1=2 \\ 0 &\text{if } \frac{1}{2}+1\ne2 \end{cases}$$
2-->>1: $$\frac{1}{2}+1\ne2\implies 1$$
2->>3: $$\frac{\text{d}}{\text{d}x}{3x^2+2x+1}$$
3-->>2: $$6x+2$$
</pre>
<hr />
<pre class="mermaid">
sequenceDiagram
actor Alice
actor John
Alice-xJohn: Hello John, how are you?
John--xAlice: Great!
</pre>
<script type="module">
import mermaid from './mermaid.esm.mjs';
mermaid.initialize({

View File

@@ -137,7 +137,7 @@ config:
plotReservedSpacePercent: 60
---
xychart-beta
title "Sales Revene"
title "Sales Revenue"
x-axis Months [jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec]
y-axis "Revenue (in $)" 4000 --> 11000
bar [5000, 6000, 7500, 8200, 9500, 10500, 11000, 10200, 9200, 8500, 7000, 6000]
@@ -163,7 +163,7 @@ config:
plotColorPalette: "#008000, #faba63"
---
xychart-beta
title "Sales Revene"
title "Sales Revenue"
x-axis Months [jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec]
y-axis "Revenue (in $)" 4000 --> 11000
bar [5000, 6000, 7500, 8200, 9500, 10500, 11000, 10200, 9200, 8500, 7000, 6000]

View File

@@ -1,13 +1,16 @@
version: '3.9'
services:
mermaid:
image: node:18.18.2-alpine3.18
build:
context: .
dockerfile: Dockerfile
stdin_open: true
tty: true
working_dir: /mermaid
mem_limit: '4G'
mem_limit: '8G'
entrypoint: docker-entrypoint.sh
environment:
- NODE_OPTIONS=--max_old_space_size=4096
- NODE_OPTIONS=--max_old_space_size=8192
volumes:
- ./:/mermaid
- root_cache:/root/.cache

3
docker-entrypoint.sh Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/sh
source /root/.shrc
exec "$@"

View File

@@ -1,176 +0,0 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/code.md](../../packages/mermaid/src/docs/community/code.md).
# Contributing Code
The basic steps for contributing code are:
```mermaid-example
graph LR
git[1. Checkout a git branch] --> codeTest[2. Write tests and code] --> doc[3. Update documentation] --> submit[4. Submit a PR] --> review[5. Review and merge]
```
```mermaid
graph LR
git[1. Checkout a git branch] --> codeTest[2. Write tests and code] --> doc[3. Update documentation] --> submit[4. Submit a PR] --> review[5. Review and merge]
```
1. **Create** and checkout a git branch and work on your code in the branch
2. Write and update **tests** (unit and perhaps even integration (e2e) tests) (If you do TDD/BDD, the order might be different.)
3. **Let users know** that things have changed or been added in the documents! This is often overlooked, but _critical_
4. **Submit** your code as a _pull request_.
5. Maintainers will **review** your code. If there are no changes necessary, the PR will be merged. Otherwise, make the requested changes and repeat.
## 1. Checkout a git branch
Mermaid uses a [Git Flow](https://guides.github.com/introduction/flow/)inspired approach to branching.
Development is done in the `develop` branch.
Once development is done we create a `release/vX.X.X` branch from `develop` for testing.
Once the release happens we add a tag to the `release` branch and merge it with `master`. The live product and on-line documentation are what is in the `master` branch.
**All new work should be based on the `develop` branch.**
**When you are ready to do work, always, ALWAYS:**
1. Make sure you have the most up-to-date version of the `develop` branch. (fetch or pull to update it)
2. Check out the `develop` branch
3. Create a new branch for your work. Please name the branch following our naming convention below.
We use the following naming convention for branches:
```txt
[feature | bug | chore | docs]/[issue number]_[short description using dashes ('-') or underscores ('_') instead of spaces]
```
You can always check current [configuration of labelling and branch prefixes](https://github.com/mermaid-js/mermaid/blob/develop/.github/pr-labeler.yml)
- The first part is the **type** of change: a feature, bug, chore, or documentation change ('docs')
- followed by a _slash_ (which helps to group like types together in many git tools)
- followed by the **issue number**
- followed by an _underscore_ ('\_')
- followed by a short text description (but use dashes ('-') or underscores ('\_') instead of spaces)
If your work is specific to a single diagram type, it is a good idea to put the diagram type at the start of the description. This will help us keep release notes organized: it will help us keep changes for a diagram type together.
**Ex: A new feature described in issue 2945 that adds a new arrow type called 'florbs' to state diagrams**
`feature/2945_state-diagram-new-arrow-florbs`
**Ex: A bug described in issue 1123 that causes random ugly red text in multiple diagram types**
`bug/1123_fix_random_ugly_red_text`
## 2. Write Tests
Tests ensure that each function, module, or part of code does what it says it will do. This is critically
important when other changes are made to ensure that existing code is not broken (no regression).
Just as important, the tests act as _specifications:_ they specify what the code does (or should do).
Whenever someone is new to a section of code, they should be able to read the tests to get a thorough understanding of what it does and why.
If you are fixing a bug, you should add tests to ensure that your code has actually fixed the bug, to specify/describe what the code is doing, and to ensure the bug doesn't happen again.
(If there had been a test for the situation, the bug never would have happened in the first place.)
You may need to change existing tests if they were inaccurate.
If you are adding a feature, you will definitely need to add tests. Depending on the size of your feature, you may need to add integration tests.
### Unit Tests
Unit tests are tests that test a single function or module. They are the easiest to write and the fastest to run.
Unit tests are mandatory all code except the renderers. (The renderers are tested with integration tests.)
We use [Vitest](https://vitest.dev) to run unit tests.
You can use the following command to run the unit tests:
```sh
pnpm test
```
When writing new tests, it's easier to have the tests automatically run as you make changes. You can do this by running the following command:
```sh
pnpm test:watch
```
### Integration/End-to-End (e2e) tests
These test the rendering and visual appearance of the diagrams.
This ensures that the rendering of that feature in the e2e will be reviewed in the release process going forward. Less chance that it breaks!
To start working with the e2e tests:
1. Run `pnpm dev` to start the dev server
2. Start **Cypress** by running `pnpm cypress:open`.
The rendering tests are very straightforward to create. There is a function `imgSnapshotTest`, which takes a diagram in text form and the mermaid options, and it renders that diagram in Cypress.
When running in CI it will take a snapshot of the rendered diagram and compare it with the snapshot from last build and flag it for review if it differs.
This is what a rendering test looks like:
```js
it('should render forks and joins', () => {
imgSnapshotTest(
`
stateDiagram
state fork_state &lt;&lt;fork&gt;&gt;
[*] --> fork_state
fork_state --> State2
fork_state --> State3
state join_state &lt;&lt;join&gt;&gt;
State2 --> join_state
State3 --> join_state
join_state --> State4
State4 --> [*]
`,
{ logLevel: 0 }
);
cy.get('svg');
});
```
**_\[TODO - running the tests against what is expected in development. ]_**
**_\[TODO - how to generate new screenshots]_**
....
## 3. Update Documentation
If the users have no way to know that things have changed, then you haven't really _fixed_ anything for the users; you've just added to making Mermaid feel broken.
Likewise, if users don't know that there is a new feature that you've implemented, it will forever remain unknown and unused.
The documentation has to be updated to users know that things have changed and added!
If you are adding a new feature, add `(v<MERMAID_RELEASE_VERSION>+)` in the title or description. It will be replaced automatically with the current version number when the release happens.
eg: `# Feature Name (v<MERMAID_RELEASE_VERSION>+)`
We know it can sometimes be hard to code _and_ write user documentation.
Our documentation is managed in `packages/mermaid/src/docs`. Details on how to edit is in the [Contributing Documentation](#contributing-documentation) section.
Create another issue specifically for the documentation.\
You will need to help with the PR, but definitely ask for help if you feel stuck.
When it feels hard to write stuff out, explaining it to someone and having that person ask you clarifying questions can often be 80% of the work!
When in doubt, write up and submit what you can. It can be clarified and refined later. (With documentation, something is better than nothing!)
## 4. Submit your pull request
**\[TODO - PR titles should start with (fix | feat | ....)]**
We make all changes via Pull Requests (PRs). As we have many Pull Requests from developers new to Mermaid, we have put in place a process wherein _knsv, Knut Sveidqvist_ is in charge of the final release process and the active maintainers are in charge of reviewing and merging most PRs.
- PRs will be reviewed by active maintainers, who will provide feedback and request changes as needed.
- The maintainers will request a review from knsv, if necessary.
- Once the PR is approved, the maintainers will merge the PR into the `develop` branch.
- When a release is ready, the `release/x.x.x` branch will be created, extensively tested and knsv will be in charge of the release process.
**Reminder: Pull Requests should be submitted to the develop branch.**

View File

@@ -0,0 +1,523 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/contributing.md](../../packages/mermaid/src/docs/community/contributing.md).
# Mermaid Contributing Guide
You decided to take part in the development? Welcome!
We are trying to make our guidelines for you as explicit and detailed as possible.
## Initial Setup
Initial setup consists of 3 main steps:
```mermaid
flowchart LR
source --> requirements --> setup
source[Get the Source Code]
requirements[Install the Requirements]
setup[Install Packages]
```
### Get the Source Code
In GitHub, you first [**fork a mermaid repository**](https://github.com/mermaid-js/mermaid/fork) when you are going to make changes and submit pull requests.
Then you **clone** a copy to your local development machine (e.g. where you code) to make a copy with all the files to work with.
> **💡 Tip** > [Here is a GitHub document that gives an overview of the process](https://docs.github.com/en/get-started/quickstart/fork-a-repo).
```bash
git clone git@github.com/your-fork/mermaid
```
Once you have cloned the repository onto your development machine, change into the `mermaid` project folder (the top level directory of the mermaid project repository)
```bash
cd mermaid
```
### Install Requirements
We support **development within Docker** environment along with **host setup**. You may choose it up to your preferences.
**Host**
These are the tools we use for working with the code and documentation:
- [Node.js](https://nodejs.org/en/).
- [pnpm](https://pnpm.io/) package manager.
The following commands must be sufficient enough to start with:
```bash
curl -fsSL https://get.pnpm.io/install.sh | sh -
pnpm env use --global 18
```
You may also need to reload `.shrc` or `.bashrc` afterwards.
**Docker**
[Install Docker](https://docs.docker.com/engine/install/). And that is pretty much all you need.
Optionally, to run GUI (Cypress) within Docker you will also need an X11 server installed.
You might already have it installed, so check this by running:
```bash
echo $DISPLAY
```
If the `$DISPLAY` variable is not empty, then an X11 server is running. Otherwise you may need to install one.
### Install Packages
**Host**
Install packages:
```bash
pnpm install
```
**Docker**
For development using Docker there is a self-documented `run` bash script, which provides convenient aliases for `docker compose` commands.
Make sure that `./run` script is executable:
```bash
chmod +x run
```
> **💡 Tip**
> To get detailed help simply type `./run` or `./run help`.
>
> It also has short _Development quick start guide_ embedded.
Then install packages:
```bash
./run pnpm install
```
### Verify Everything Works
This step is optional, but it helps to make sure that everything in development branch was OK before you started making any changes.
You can run the `test` script to verify that pnpm is working _and_ that the repository has been cloned correctly:
**Host**
```bash
pnpm test
```
**Docker**
```bash
./run pnpm test
```
The `test` script and others are in the top-level `package.json` file.
All tests should run successfully without any errors or failures.
> **Note**
> You might see _lint_ or _formatting_ warnings. Those are ok during this step.
## Workflow
Contributing process is very simple and straightforward:
```mermaid
flowchart LR
branch --> changes --> submit
branch[Checkout a New Branch]
changes[Make Changes]
submit[Submit a PR]
```
Mermaid uses a [Git Flow](https://guides.github.com/introduction/flow/)inspired approach to branching.
Development is done in the `develop` branch.
```mermaid
---
config:
gitGraph:
mainBranchName: develop
---
gitGraph LR:
commit
commit
branch "docs/2910_update-guidelines" order: 1
commit
commit
commit
checkout develop
merge "docs/2910_update-guidelines"
commit
```
To prepare a new version for release the maintainers create a `release/vX.X.X` branch from `develop` for testing. Once the release happens we add a tag to the `release` branch and merge it with `master`. The live product and on-line documentation are what is in the `master` branch.
## Checkout a New Branch
> **💡 Tip**
> All new work should be based on the `develop` branch.
Make sure you have the most up-to-date version of the `develop` branch.
Check out the `develop` branch, then `fetch` or `pull` to update it:
```bash
git checkout develop
git fetch # or `git pull`
```
Create a new branch for your work:
```bash
git checkout -b docs/2910_update-contributing-guidelines
```
We use the following naming convention for branches:
```txt
[feature | bug | chore | docs]/[issue number]_[short-description]
```
You can always check current [configuration of labelling and branch prefixes](https://github.com/mermaid-js/mermaid/blob/develop/.github/pr-labeler.yml)
- The first part is the **type** of change: a `feature`, `bug`, `chore`, `docs`
- followed by a **slash** (`/`),which helps to group like types together in many git tools
- followed by the **issue number**, e.g. `2910`
- followed by an **underscore** (`_`)
- followed by a **short description** with dashes (`-`) or underscores (`_`) instead of spaces
```mermaid
flowchart LR
feature --> slash
bug --> slash
chore --> slash
docs --> slash
slash --> 2945 --> underscore
slash --> 1123 --> underscore
underscore --> short_description_1
underscore --> short_description_2
underscore["_"]
slash["/"]
short_description_1["state-diagram-new-arrow-florbs"]
short_description_2["fix_random_ugly_red_text"]
```
If your work is specific to a single diagram type, it is a good idea to put the diagram type at the start of the description. This will help us keep release notes organized by a diagram type.
> **Note**
> A new feature described in issue 2945 that adds a new arrow type called 'florbs' to state diagrams
>
> `feature/2945_state-diagram-new-arrow-florbs`
> **💡 Tip**
> A bug described in issue 1123 that causes random ugly red text in multiple diagram types
>
> `bug/1123_fix_random_ugly_red_text`
## Contributing Code
Code is the heart of every software project. We strive to make it better. Who if not us?
### Where is the Code Located?
The core of Mermaid is located under `packages/mermaid/src`.
### Running Mermaid Locally
**Host**
```bash
pnpm run dev
```
**Docker**
```bash
./run dev
```
After starting the dev server open <http://localhost:9000> in your browser.
Now you are ready to make your changes!
### Make Changes
Have a look at <http://localhost:9000>. There is a list of demos that can be used to see and test your changes.
If you need a specific diagram, you can duplicate the `example.html` file in `/demos/dev` and add your own mermaid code to your copy.
That will be served at <http://localhost:9000/dev/your-file-name.html>.
After making code changes, the dev server will rebuild the mermaid library and automatically reload the page.
Edit files in `packages/mermaid/src` as required.
### Write Tests
Tests ensure that each function, module, or part of code does what it says it will do. This is critically important when other changes are made to ensure that existing code is not broken (no regression).
Just as important, the tests act as _specifications:_ they specify what the code does (or should do).
Whenever someone is new to a section of code, they should be able to read the tests to get a thorough understanding of what it does and why.
If you are fixing a bug, you should add tests to ensure that your code has actually fixed the bug, to specify/describe what the code is doing, and to ensure the bug doesn't happen again.
(If there had been a test for the situation, the bug never would have happened in the first place.)
You may need to change existing tests if they were inaccurate.
If you are adding a feature, you will definitely need to add tests. Depending on the size of your feature, you may need to add integration tests.
#### Unit Tests
Unit tests are tests that test a single function or module. They are the easiest to write and the fastest to run.
Unit tests are mandatory for all code except the renderers. (The renderers are tested with integration tests.)
We use [Vitest](https://vitest.dev) to run unit tests.
**Host**
You can use the following command to run the unit tests:
```sh
pnpm test
```
When writing new tests, it's easier to have the tests automatically run as you make changes. You can do this by running the following command:
```sh
pnpm test:watch
```
**Docker**
When using Docker prepend your command with `./run`:
```sh
./run pnpm test
```
#### Integration / End-to-End (E2E) Tests
These test the rendering and visual appearance of the diagrams.
This ensures that the rendering of that feature in the E2E will be reviewed in the release process going forward. Less chance that it breaks!
To start working with the E2E tests:
**Host**
- Run `pnpm dev` to start the dev server
- Start **Cypress** by running `pnpm cypress:open`
**Docker**
- Enable local connections for x11 server `xhost +local:`
- Run `./run pnpm dev` to start the dev server
- Start **Cypress** by running `./run pnpm cypress:open --project .`
The rendering tests are very straightforward to create. There is a function `imgSnapshotTest`, which takes a diagram in text form and the mermaid options, and it renders that diagram in Cypress.
When running in CI it will take a snapshot of the rendered diagram and compare it with the snapshot from last build and flag it for review if it differs.
This is what a rendering test looks like:
```js
it('should render forks and joins', () => {
imgSnapshotTest(
`
stateDiagram
state fork_state &lt;&lt;fork&gt;&gt;
[*] --> fork_state
fork_state --> State2
fork_state --> State3
state join_state &lt;&lt;join&gt;&gt;
State2 --> join_state
State3 --> join_state
join_state --> State4
State4 --> [*]
`,
{ logLevel: 0 }
);
});
```
<!-- **_[TODO - running the tests against what is expected in development. ]_** -->
<!-- **_[TODO - how to generate new screenshots]_** -->
### Update Documentation
> **💡 Tip**
> Our documentation is managed in `packages/mermaid/src/docs`. Details on how to edit is in the [documentation section](#contributing-documentation)
If the users have no way to know that things have changed, then you haven't really _fixed_ anything for the users; you've just added to making Mermaid feel broken.
Likewise, if users don't know that there is a new feature that you've implemented, it will forever remain unknown and unused.
The documentation has to be updated for users to know that things have been changed and added!
If you are adding a new feature, add `(v10.8.0+)` in the title or description. It will be replaced automatically with the current version number when the release happens.
eg: `# Feature Name (v10.8.0+)`
We know it can sometimes be hard to code _and_ write user documentation.
Create another issue specifically for the documentation.
You will need to help with the PR, but definitely ask for help if you feel stuck.
When it feels hard to write stuff out, explaining it to someone and having that person ask you clarifying questions can often be 80% of the work!
When in doubt, write up and submit what you can. It can be clarified and refined later. (With documentation, something is better than nothing!)
## Contributing Documentation
If it is not in the documentation, it's like it never happened. Wouldn't that be sad? With all the effort that was put into the feature?
### Where is the Documentation Located?
> **Warning**
> DO NOT CHANGE FILES IN `/docs`
>
> The `docs` folder will be automatically generated when committing to `packages/mermaid/src/docs` and **should not** be edited manually.
Documentation is located in the [`packages/mermaid/src/docs`](https://github.com/mermaid-js/mermaid/tree/develop/packages/mermaid/src/docs) folder. Just pick the right section and start typing.
The contents of [mermaid.js.org](https://mermaid.js.org/) are based on the docs from the `master` branch. Updates committed to the `master` branch are reflected in the [Mermaid Docs](https://mermaid.js.org/) once published.
```mermaid-example
flowchart LR
classDef default fill:#fff,color:black,stroke:black
source["Edit /packages/mermaid/src/docs"] -- automatic processing--> published["View /docs which will be published on Official Website"]
```
```mermaid
flowchart LR
classDef default fill:#fff,color:black,stroke:black
source["Edit /packages/mermaid/src/docs"] -- automatic processing--> published["View /docs which will be published on Official Website"]
```
### Running the Documentation Website Locally
**[The mermaid documentation site](https://mermaid.js.org/) is powered by [Vitepress](https://vitepress.vuejs.org/).**
Start development server for the documentation site
**Host**
```bash
pnpm --filter mermaid run docs:dev
```
or
```bash
cd packages/mermaid
pnpm docs:dev
```
**Docker**
```bash
./run docs:dev
```
Open <http://localhost:3333/> in your browser.
### Formatting
The documentation is written in Markdown. To get acquainted with its syntax [see the GitHub Markdown help page](https://help.github.com/en/github/writing-on-github/basic-writing-and-formatting-syntax).
You can use `note`, `tip`, `warning` and `danger` in triple backticks to add a note, tip, warning or danger box.
> **‼️ Danger**
> Do not use vitepress specific markdown syntax `::: warning` as it will not be processed correctly.
Here are a few examples:
````markdown
```note
This is a note
```
```tip
This is a tip
```
```warning
This is a warning
```
```danger
This is a danger alert
```
````
> **Note**
> This is a note
> **💡 Tip**
> This is a tip
> **Warning**
> This is a warning
> **‼️ Danger**
> This is a danger alert
### Navigation
If you want to propose changes to how the documentation is _organized_, such as adding a new section or re-arranging or renaming a section, you must update the **sidebar navigation**, which is defined in [the vitepress config](../.vitepress/config.ts). The same goes to **topbar**.
### Build Docs
The content of `/docs` folder is built with Github Actions.
> **Warning**
> So as to allow automatic compilation of documentation pages you have to enable Github Actions on your fork first
## Submit your pull request
> **Note**
> Do not forget to push your changes
>
> ```bash
> git push -u origin docs/2910_update-guidelines
> ```
We make all changes via Pull Requests (PRs). Open a new one.
Right now we are not following any strict rules about naming PRs. Give it a representative title and short description. There is also a [pull request template](https://github.com/mermaid-js/mermaid/blob/develop/.github/pull_request_template.md) which will help you with it.
In case in its description contains a [magic comment](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue) your PR will be automatically attached to the issue:
```markdown
Resolves #<your issue ID here>
```
## Congratulations
You have successfully submitted your improvements! What is next?
- PRs will be reviewed by active maintainers, who will provide feedback and request changes as needed.
- The maintainers will request a review from _knsv_, if necessary.
- Once the PR is approved, the maintainers will merge the PR into the `develop` branch.
- When a release is ready, the `release/x.x.x` branch will be created, extensively tested and knsv will be in charge of the release process.
Thanks for you help!
<!--- cspell:ignore florbs --->

View File

@@ -1,96 +0,0 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/development.md](../../packages/mermaid/src/docs/community/development.md).
# Contributing to Mermaid
> The following documentation describes how to work with Mermaid in your host environment.
> There's also a [Docker installation guide](../community/docker-development.md)
> if you prefer to work in a Docker environment.
So you want to help? That's great!
![Image of happy people jumping with excitement](https://media.giphy.com/media/BlVnrxJgTGsUw/giphy.gif)
Here are a few things to get you started on the right path.
## Get the Source Code
In GitHub, you first **fork** a repository when you are going to make changes and submit pull requests.
Then you **clone** a copy to your local development machine (e.g. where you code) to make a copy with all the files to work with.
[Fork mermaid](https://github.com/mermaid-js/mermaid/fork) to start contributing to the main project and its documentation, or [search for other repositories](https://github.com/orgs/mermaid-js/repositories).
[Here is a GitHub document that gives an overview of the process.](https://docs.github.com/en/get-started/quickstart/fork-a-repo)
## Technical Requirements
> The following documentation describes how to work with Mermaid in your host environment.
> There's also a [Docker installation guide](../community/docker-development.md)
> if you prefer to work in a Docker environment.
These are the tools we use for working with the code and documentation:
- [volta](https://volta.sh/) to manage node versions.
- [Node.js](https://nodejs.org/en/). `volta install node`
- [pnpm](https://pnpm.io/) package manager. `volta install pnpm`
- [npx](https://docs.npmjs.com/cli/v8/commands/npx) the packaged executor in npm. This is needed [to install pnpm.](#install-packages)
Follow the setup steps below to install them and start the development.
## Setup and Launch
### Switch to project
Once you have cloned the repository onto your development machine, change into the `mermaid` project folder (the top level directory of the mermaid project repository)
```bash
cd mermaid
```
### Install packages
Run `npx pnpm install`. You will need `npx` for this because volta doesn't support it yet.
```bash
npx pnpm install # npx is required for first install
```
### Launch
```bash
npx pnpm run dev
```
Now you are ready to make your changes! Edit whichever files in `src` as required.
Open <http://localhost:9000> in your browser, after starting the dev server.
There is a list of demos that can be used to see and test your changes.
If you need a specific diagram, you can duplicate the `example.html` file in `/demos/dev` and add your own mermaid code to your copy.
That will be served at <http://localhost:9000/dev/your-file-name.html>.
After making code changes, the dev server will rebuild the mermaid library. You will need to reload the browser page yourself to see the changes. (PRs for auto reload are welcome!)
## Verify Everything is Working
You can run the `test` script to verify that pnpm is working _and_ that the repository has been cloned correctly:
```bash
pnpm test
```
The `test` script and others are in the top-level `package.json` file.
All tests should run successfully without any errors or failures. (You might see _lint_ or _formatting_ warnings; those are ok during this step.)
## Last Words
Don't get daunted if it is hard in the beginning. We have a great community with only encouraging words. So, if you get stuck, ask for help and hints in the Slack forum. If you want to show off something good, show it off there.
[Join our Slack community if you want closer contact!](https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE)
![Image of superhero wishing you good luck](https://media.giphy.com/media/l49JHz7kJvl6MCj3G/giphy.gif)

View File

@@ -1,109 +0,0 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/docker-development.md](../../packages/mermaid/src/docs/community/docker-development.md).
# Contributing to Mermaid via Docker
> The following documentation describes how to work with Mermaid in a Docker environment.
> There's also a [host installation guide](../community/development.md)
> if you prefer to work without a Docker environment.
So you want to help? That's great!
![Image of happy people jumping with excitement](https://media.giphy.com/media/BlVnrxJgTGsUw/giphy.gif)
Here are a few things to get you started on the right path.
## Get the Source Code
In GitHub, you first **fork** a repository when you are going to make changes and submit pull requests.
Then you **clone** a copy to your local development machine (e.g. where you code) to make a copy with all the files to work with.
[Fork mermaid](https://github.com/mermaid-js/mermaid/fork) to start contributing to the main project and its documentation, or [search for other repositories](https://github.com/orgs/mermaid-js/repositories).
[Here is a GitHub document that gives an overview of the process.](https://docs.github.com/en/get-started/quickstart/fork-a-repo)
## Technical Requirements
> The following documentation describes how to work with Mermaid in a Docker environment.
> There's also a [host installation guide](../community/development.md)
> if you prefer to work without a Docker environment.
[Install Docker](https://docs.docker.com/engine/install/). And that is pretty much all you need.
Optionally, to run GUI (Cypress) within Docker you will also need an X11 server installed.
You might already have it installed, so check this by running:
```bash
echo $DISPLAY
```
If the `$DISPLAY` variable is not empty, then an X11 server is running. Otherwise you may need to install one.
## Setup and Launch
### Switch to project
Once you have cloned the repository onto your development machine, change into the `mermaid` project folder (the top level directory of the mermaid project repository)
```bash
cd mermaid
```
### Make `./run` executable
For development using Docker there is a self-documented `run` bash script, which provides convenient aliases for `docker compose` commands.
Ensure `./run` script is executable:
```bash
chmod +x run
```
> **💡 Tip**
> To get detailed help simply type `./run` or `./run help`.
>
> It also has short _Development quick start guide_ embedded.
### Install packages
```bash
./run pnpm install # Install packages
```
### Launch
```bash
./run dev
```
Now you are ready to make your changes! Edit whichever files in `src` as required.
Open <http://localhost:9000> in your browser, after starting the dev server.
There is a list of demos that can be used to see and test your changes.
If you need a specific diagram, you can duplicate the `example.html` file in `/demos/dev` and add your own mermaid code to your copy.
That will be served at <http://localhost:9000/dev/your-file-name.html>.
After making code changes, the dev server will rebuild the mermaid library. You will need to reload the browser page yourself to see the changes. (PRs for auto reload are welcome!)
## Verify Everything is Working
```bash
./run pnpm test
```
The `test` script and others are in the top-level `package.json` file.
All tests should run successfully without any errors or failures. (You might see _lint_ or _formatting_ warnings; those are ok during this step.)
## Last Words
Don't get daunted if it is hard in the beginning. We have a great community with only encouraging words. So, if you get stuck, ask for help and hints in the Slack forum. If you want to show off something good, show it off there.
[Join our Slack community if you want closer contact!](https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE)
![Image of superhero wishing you good luck](https://media.giphy.com/media/l49JHz7kJvl6MCj3G/giphy.gif)

View File

@@ -1,105 +0,0 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/documentation.md](../../packages/mermaid/src/docs/community/documentation.md).
# Contributing Documentation
**_\[TODO: This section is still a WIP. It still needs MAJOR revision.]_**
If it is not in the documentation, it's like it never happened. Wouldn't that be sad? With all the effort that was put into the feature?
The docs are located in the `packages/mermaid/src/docs` folder and are written in Markdown. Just pick the right section and start typing.
The contents of [mermaid.js.org](https://mermaid.js.org/) are based on the docs from the `master` branch.
Updates committed to the `master` branch are reflected in the [Mermaid Docs](https://mermaid.js.org/) once published.
## How to Contribute to Documentation
We are a little less strict here, it is OK to commit directly in the `develop` branch if you are a collaborator.
The documentation is located in the `packages/mermaid/src/docs` directory and organized according to relevant subfolder.
The `docs` folder will be automatically generated when committing to `packages/mermaid/src/docs` and **should not** be edited manually.
```mermaid-example
flowchart LR
classDef default fill:#fff,color:black,stroke:black
source["files in /packages/mermaid/src/docs\n(changes should be done here)"] -- automatic processing\nto generate the final documentation--> published["files in /docs\ndisplayed on the official documentation site"]
```
```mermaid
flowchart LR
classDef default fill:#fff,color:black,stroke:black
source["files in /packages/mermaid/src/docs\n(changes should be done here)"] -- automatic processing\nto generate the final documentation--> published["files in /docs\ndisplayed on the official documentation site"]
```
You can use `note`, `tip`, `warning` and `danger` in triple backticks to add a note, tip, warning or danger box.
Do not use vitepress specific markdown syntax `::: warning` as it will not be processed correctly.
````markdown
```note
Note content
```
```tip
Tip content
```
```warning
Warning content
```
```danger
Danger content
```
````
> **Note**
> If the change is _only_ to the documentation, you can get your changes published to the site quicker by making a PR to the `master` branch. In that case, your branch should be based on master, not develop.
We encourage contributions to the documentation at [packages/mermaid/src/docs in the _develop_ branch](https://github.com/mermaid-js/mermaid/tree/develop/packages/mermaid/src/docs).
**_DO NOT CHANGE FILES IN `/docs`_**
## The official documentation site
**[The mermaid documentation site](https://mermaid.js.org/) is powered by [Vitepress](https://vitepress.vuejs.org/).**
To run the documentation site locally:
1. Run `pnpm --filter mermaid run docs:dev` to start the dev server. (Or `pnpm docs:dev` inside the `packages/mermaid` directory.)
2. Open <http://localhost:3333/> in your browser.
Markdown is used to format the text, for more information about Markdown [see the GitHub Markdown help page](https://help.github.com/en/github/writing-on-github/basic-writing-and-formatting-syntax).
To edit Docs on your computer:
_\[TODO: need to keep this in sync with [check out a git branch in Contributing Code above](#1-checkout-a-git-branch) ]_
1. Create a fork of the develop branch to work on.
2. Find the Markdown file (.md) to edit in the `packages/mermaid/src/docs` directory.
3. Make changes or add new documentation.
4. Commit changes to your branch and push it to GitHub (which should create a new branch).
5. Create a Pull Request from the branch of your fork.
To edit Docs on GitHub:
1. Login to [GitHub.com](https://www.github.com).
2. Navigate to [packages/mermaid/src/docs](https://github.com/mermaid-js/mermaid/tree/develop/packages/mermaid/src/docs) in the mermaid-js repository.
3. To edit a file, click the pencil icon at the top-right of the file contents panel.
4. Describe what you changed in the **Propose file change** section, located at the bottom of the page.
5. Submit your changes by clicking the button **Propose file change** at the bottom (by automatic creation of a fork and a new branch).
6. Visit the Actions tab in Github, `https://github.com/<Your Username>/mermaid/actions` and enable the actions for your fork. This will ensure that the documentation is built and updated in your fork.
7. Create a Pull Request of your newly forked branch by clicking the green **Create Pull Request** button.
## Documentation organization: Sidebar navigation
If you want to propose changes to how the documentation is _organized_, such as adding a new section or re-arranging or renaming a section, you must update the **sidebar navigation.**
The sidebar navigation is defined in [the vitepress configuration file config.ts](../.vitepress/config.ts).

60
docs/community/intro.md Normal file
View File

@@ -0,0 +1,60 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/intro.md](../../packages/mermaid/src/docs/community/intro.md).
# Getting Started
So you want to help? That's great!
![Image of happy people jumping with excitement](https://media.giphy.com/media/BlVnrxJgTGsUw/giphy.gif)
Here are a few things to get you started on the right path.
## How can I help?
```mermaid
mindmap
root)Contributing(
Development
Solving issues
Adding new diagrams
Handling pull requests
Updating tooling
Testing
Verification of fixed issues
Regression testing in connection with releases
Testing pull requests
Management
Coordinating the work
Classification and monitoring of incoming issues
```
## Join the Development
> **💡 Tip** > **Check out our** [**detailed contribution guide**](./contributing.md).
Where to start:
- You could start getting some knowledge of the code base by working on [these "good first issues"](https://github.com/mermaid-js/mermaid/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen+label%3A%22Good+first+issue%21%22+).
- You could jump right in and help us fix any of [these bugs](https://github.com/mermaid-js/mermaid/issues?q=is%3Aissue+is%3Aopen+label%3A%22Type%3A+Bug+%2F+Error%22++label%3A%22Contributor+needed%22+)!
- You could help write and [improve the documentation](https://github.com/mermaid-js/mermaid/issues?q=is%3Aissue+is%3Aopen+label%3A%22Area%3A+Documentation%22).
- You could work on a new feature! [These](https://github.com/mermaid-js/mermaid/issues?q=is%3Aissue+is%3Aopen+label%3A%22Area%3A+Development%22+label%3A%22Type%3A+Enhancement%22+label%3A%22Status%3A+Approved%22+) are some ideas!
- You could confirm the bugs in [these issues](https://github.com/mermaid-js/mermaid/issues?q=is%3Aissue+is%3Aopen+label%3A%22Status%3A+Triage%22++label%3A%22Type%3A+Bug+%2F+Error%22).
[You can join our Discord server if you want closer contact!](https://discord.gg/AgrbSrBer3)
## A Question Or a Suggestion?
> **💡 Tip** > **Have a look at** [**how to open an issue**](./questions-and-suggestions.md).
If you have faced a vulnerability [report it to us](./security.md).
## Last Words
Don't get daunted if it is hard in the beginning. We have a great community with only encouraging words. So, if you get stuck, ask for help and hints in the Slack forum. If you want to show off something good, show it off there.
[You can join our Discord server if you want closer contact!](https://discord.gg/AgrbSrBer3)
![Image of superhero wishing you good luck](https://media.giphy.com/media/l49JHz7kJvl6MCj3G/giphy.gif)

View File

@@ -2,9 +2,14 @@
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/newDiagram.md](../../packages/mermaid/src/docs/community/newDiagram.md).
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/new-diagram-jison.md](../../packages/mermaid/src/docs/community/new-diagram-jison.md).
# Adding a New Diagram/Chart 📊
# Adding a New Diagram/Chart (Deprecated) 📊
> **Warning**
> JISON grammars are deprecated in mermaid. Please use Langium instead. See [New Diagram](./new-diagram.md) for more information.
>
> **New diagrams with JISON grammars will not be accepted.**
### Step 1: Grammar & Parsing

View File

@@ -0,0 +1,111 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/community/new-diagram.md](../../packages/mermaid/src/docs/community/new-diagram.md).
# Adding a New Diagram/Chart 📊
### Examples
Please refer to the following PRs on how to use Langium to add a new diagram grammar.
- <https://github.com/mermaid-js/mermaid/pull/4839>
- <https://github.com/mermaid-js/mermaid/pull/4751>
> **Warning**
> The below steps are a work in progress and will be updated soon.
### Step 1: Grammar & Parsing
### Step 2: Rendering
Write a renderer that given the data found during parsing renders the diagram. To look at an example look at sequenceRenderer.js rather than the flowchart renderer as this is a more generic example.
Place the renderer in the diagram folder.
### Step 3: Detection of the new diagram type
The second thing to do is to add the capability to detect the new diagram to type to the detectType in `diagram-api/detectType.ts`. The detection should return a key for the new diagram type.
[This key will be used to as the aria roledescription](#aria-roledescription), so it should be a word that clearly describes the diagram type.
For example, if your new diagram uses a UML deployment diagram, a good key would be "UMLDeploymentDiagram" because assistive technologies such as a screen reader
would voice that as "U-M-L Deployment diagram." Another good key would be "deploymentDiagram" because that would be voiced as "Deployment Diagram." A bad key would be "deployment" because that would not sufficiently describe the diagram.
Note that the diagram type key does not have to be the same as the diagram keyword chosen for the [grammar](#grammar), but it is helpful if they are the same.
### Common parts of a diagram
There are a few features that are common between the different types of diagrams. We try to standardize the diagrams that work as similar as possible for the end user. The commonalities are:
- Directives, a way of modifying the diagram configuration from within the diagram code.
- Accessibility, a way for an author to provide additional information like titles and descriptions to people accessing a text with diagrams using a screen reader.
- Themes, there is a common way to modify the styling of diagrams in Mermaid.
- Comments should follow mermaid standards
Here are some pointers on how to handle these different areas.
## Accessibility
Mermaid automatically adds the following accessibility information for the diagram SVG HTML element:
- aria-roledescription
- accessible title
- accessible description
### aria-roledescription
The aria-roledescription is automatically set to [the diagram type](#step-3--detection-of-the-new-diagram-type) and inserted into the SVG element.
See [the definition of aria-roledescription](https://www.w3.org/TR/wai-aria-1.1/#aria-roledescription) in [the Accessible Rich Internet Applications W3 standard.](https://www.w3.org/WAI/standards-guidelines/aria/)
### accessible title and description
The syntax for accessible titles and descriptions is described in [the Accessibility documentation section.](../config/accessibility.md)
The functions for setting title and description are provided by a common module. This is the import in flowDb.js:
import {
setAccTitle,
getAccTitle,
getAccDescription,
setAccDescription,
clear as commonClear,
} from '../../commonDb';
The accessibility title and description are inserted into the SVG element in the `render` function in mermaidAPI.
## Theming
Mermaid supports themes and has an integrated theming engine. You can read more about how the themes can be used [in the docs](../config/theming.md).
When adding themes to a diagram it comes down to a few important locations in the code.
The entry point for the styling engine is in **src/styles.js**. The getStyles function will be called by Mermaid when the styles are being applied to the diagram.
This function will in turn call a function _your diagram should provide_ returning the css for the new diagram. The diagram specific, also which is commonly also called getStyles and located in the folder for your diagram under src/diagrams and should be named styles.js. The getStyles function will be called with the theme options as an argument like in the following example:
```js
const getStyles = (options) =>
`
.line {
stroke-width: 1;
stroke: ${options.lineColor};
stroke-dasharray: 2;
}
// ...
`;
```
Note that you need to provide your function to the main getStyles by adding it into the themes object in **src/styles.js** like in the xyzDiagram in the provided example:
```js
const themes = {
flowchart,
'flowchart-v2': flowchart,
sequence,
xyzDiagram,
//...
};
```
The actual options and values for the colors are defined in **src/theme/theme-\[xyz].js**. If you provide the options your diagram needs in the existing theme files then the theming will work smoothly without hiccups.

View File

@@ -6,21 +6,20 @@
# Questions or Suggestions?
**_\[TODO: This section is still a WIP. It still needs MAJOR revision.]_**
## Search for Existing Issue
## First search to see if someone has already asked (and hopefully been answered) or suggested the same thing.
First search to see if someone has already asked (and hopefully been answered) or suggested the same thing.
- Search in Discussions
- Search in open Issues
- Search in closed Issues
- [Search in Discussions](https://github.com/orgs/mermaid-js/discussions)
- [Search in Issues (Open & Closed)](https://github.com/mermaid-js/mermaid/issues?q=is%3Aissue)
If you find an open issue or discussion thread that is similar to your question but isn't answered, you can let us know that you are also interested in it.
Use the GitHub reactions to add a thumbs-up to the issue or discussion thread.
Use the GitHub reactions to add a thumbs-up to the issue or discussion thread, or append to the issue if needed.
This helps the team know the relative interest in something and helps them set priorities and assignments.
Feel free to add to the discussion on the issue or topic.
## Add a new Issue
If you can't find anything that already addresses your question or suggestion, _open a new issue:_
You have not found anything that already addresses your request, or maybe you have come up with the new idea? Feel free to open a new issue or discussion.
Log in to [GitHub.com](https://www.github.com), open or append to an issue [using the GitHub issue tracker of the mermaid-js repository](https://github.com/mermaid-js/mermaid/issues?q=is%3Aissue+is%3Aopen+label%3A%22Area%3A+Documentation%22).
Log in to [GitHub.com](https://www.github.com), and use [GitHub issue tracker of the mermaid-js repository](https://github.com/mermaid-js/mermaid/issues). Press \[<https://github.com/mermaid-js/mermaid/issues/new/choose>] issue, select the appropriate template and describe your problem.

View File

@@ -16,7 +16,7 @@ We aim to reply within three working days, probably much sooner.
You should expect a close collaboration as we work to resolve the issue you have reported. Please reach out to <security@mermaid.live> again if you do not receive prompt attention and regular updates.
You may also reach out to the team via our public Slack chat channels; however, please make sure to e-mail <security@mermaid.live> when reporting an issue, and avoid revealing information about vulnerabilities in public as that could that could put users at risk.
You may also reach out to the team via our public Discord chat channels; however, please make sure to e-mail <security@mermaid.live> when reporting an issue, and avoid revealing information about vulnerabilities in public as that could that could put users at risk.
## Best practices

View File

@@ -19,7 +19,7 @@ Mermaid will automatically insert the [aria-roledescription](#aria-roledescripti
The [aria-roledescription](https://www.w3.org/TR/wai-aria-1.1/#aria-roledescription) for the SVG HTML element is set to the diagram type key. (Note this may be slightly different than the keyword used for the diagram in the diagram text.)
For example: The diagram type key for a state diagram is "stateDiagram". Here (a part of) the HTML of the SVG tag that shows the automatically inserted aria-roledscription set to "stateDiagram". _(Note that some of the SVG attributes and the SVG contents are omitted for clarity.):_
For example: The diagram type key for a state diagram is "stateDiagram". Here (a part of) the HTML of the SVG tag that shows the automatically inserted aria-roledescription set to "stateDiagram". _(Note that some of the SVG attributes and the SVG contents are omitted for clarity.):_
```html
<svg

View File

@@ -1,30 +0,0 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/config/advanced.md](../../packages/mermaid/src/docs/config/advanced.md).
# Advanced mermaid (Coming soon..)
## splitting mermaid code from html
A more condensed html code can be achieved by embedding the mermaid code in its own .js file, which is referenced like so:
```html
...
</div>
</body>
</html>
```
The actual mermaid file could for example look like this:
```javascript
mermaid content ...
```
## mermaid configuration options
```markdown
(coming soon)
```

View File

@@ -10,8 +10,8 @@ When mermaid starts, configuration is extracted to determine a configuration to
- The default configuration
- Overrides at the site level are set by the initialize call, and will be applied to all diagrams in the site/app. The term for this is the **siteConfig**.
- Frontmatter (v10.5.0+) - diagram authors can update select configuration parameters in the frontmatter of the diagram. These are applied to the render config.
- Directives (Deprecated by Frontmatter) - diagram authors can update select configuration parameters directly in the diagram code via directives. These are applied to the render config.
- Frontmatter (v10.5.0+) - diagram authors can update selected configuration parameters in the frontmatter of the diagram. These are applied to the render config.
- Directives (Deprecated by Frontmatter) - diagram authors can update selected configuration parameters directly in the diagram code via directives. These are applied to the render config.
**The render config** is configuration that is used when rendering by applying these configurations.

86
docs/config/math.md Normal file
View File

@@ -0,0 +1,86 @@
> **Warning**
>
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
>
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/config/math.md](../../packages/mermaid/src/docs/config/math.md).
# Math Configuration (v10.9.0+)
Mermaid supports rendering mathematical expressions through the [KaTeX](https://katex.org/) typesetter.
## Usage
To render math within a diagram, surround the mathematical expression with the `$$` delimiter.
Note that at the moment, the only supported diagrams are below:
### Flowcharts
```mermaid-example
graph LR
A["$$x^2$$"] -->|"$$\sqrt{x+3}$$"| B("$$\frac{1}{2}$$")
A -->|"$$\overbrace{a+b+c}^{\text{note}}$$"| C("$$\pi r^2$$")
B --> D("$$x = \begin{cases} a &\text{if } b \\ c &\text{if } d \end{cases}$$")
C --> E("$$x(t)=c_1\begin{bmatrix}-\cos{t}+\sin{t}\\ 2\cos{t} \end{bmatrix}e^{2t}$$")
```
```mermaid
graph LR
A["$$x^2$$"] -->|"$$\sqrt{x+3}$$"| B("$$\frac{1}{2}$$")
A -->|"$$\overbrace{a+b+c}^{\text{note}}$$"| C("$$\pi r^2$$")
B --> D("$$x = \begin{cases} a &\text{if } b \\ c &\text{if } d \end{cases}$$")
C --> E("$$x(t)=c_1\begin{bmatrix}-\cos{t}+\sin{t}\\ 2\cos{t} \end{bmatrix}e^{2t}$$")
```
### Sequence
```mermaid-example
sequenceDiagram
autonumber
participant 1 as $$\alpha$$
participant 2 as $$\beta$$
1->>2: Solve: $$\sqrt{2+2}$$
2-->>1: Answer: $$2$$
Note right of 2: $$\sqrt{2+2}=\sqrt{4}=2$$
```
```mermaid
sequenceDiagram
autonumber
participant 1 as $$\alpha$$
participant 2 as $$\beta$$
1->>2: Solve: $$\sqrt{2+2}$$
2-->>1: Answer: $$2$$
Note right of 2: $$\sqrt{2+2}=\sqrt{4}=2$$
```
## Legacy Support
By default, MathML is used for rendering mathematical expressions. If you have users on [unsupported browsers](https://caniuse.com/?search=mathml), `legacyMathML` can be set in the config to fall back to CSS rendering. Note that **you must provide KaTeX's stylesheets on your own** as they do not come bundled with Mermaid.
Example with legacy mode enabled (the latest version of KaTeX's stylesheet can be found on their [docs](https://katex.org/docs/browser.html)):
```html
<!DOCTYPE html>
<!-- KaTeX requires the use of the HTML5 doctype. Without it, KaTeX may not render properly -->
<html lang="en">
<head>
<!-- Please ensure the stylesheet's version matches with the KaTeX version in your package-lock -->
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/katex@{version_number}/dist/katex.min.css"
integrity="sha384-{hash}"
crossorigin="anonymous"
/>
</head>
<body>
<script type="module">
import mermaid from './mermaid.esm.mjs';
mermaid.initialize({
legacyMathML: true,
});
</script>
</body>
</html>
```

View File

@@ -16,4 +16,4 @@
#### Defined in
[mermaidAPI.ts:59](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L59)
[mermaidAPI.ts:60](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L60)

View File

@@ -14,10 +14,6 @@
`Optional` **bindFunctions**: (`element`: `Element`) => `void`
#### Type declaration
▸ (`element`): `void`
Bind function to be called after the svg has been inserted into the DOM.
This is necessary for adding event listeners to the elements in the svg.
@@ -27,6 +23,10 @@ div.innerHTML = svg;
bindFunctions?.(div); // To call bindFunctions only if it's present.
```
#### Type declaration
▸ (`element`): `void`
##### Parameters
| Name | Type |
@@ -39,7 +39,7 @@ bindFunctions?.(div); // To call bindFunctions only if it's present.
#### Defined in
[mermaidAPI.ts:79](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L79)
[mermaidAPI.ts:80](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L80)
---
@@ -51,4 +51,4 @@ The svg code for the rendered graph.
#### Defined in
[mermaidAPI.ts:69](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L69)
[mermaidAPI.ts:70](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L70)

View File

@@ -25,7 +25,7 @@ Renames and re-exports [mermaidAPI](mermaidAPI.md#mermaidapi)
#### Defined in
[mermaidAPI.ts:63](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L63)
[mermaidAPI.ts:64](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L64)
## Variables
@@ -96,7 +96,7 @@ mermaid.initialize(config);
#### Defined in
[mermaidAPI.ts:641](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L641)
[mermaidAPI.ts:607](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L607)
## Functions
@@ -127,7 +127,7 @@ Return the last node appended
#### Defined in
[mermaidAPI.ts:299](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L299)
[mermaidAPI.ts:263](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L263)
---
@@ -153,7 +153,7 @@ the cleaned up svgCode
#### Defined in
[mermaidAPI.ts:245](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L245)
[mermaidAPI.ts:209](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L209)
---
@@ -178,7 +178,7 @@ the string with all the user styles
#### Defined in
[mermaidAPI.ts:175](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L175)
[mermaidAPI.ts:139](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L139)
---
@@ -201,7 +201,7 @@ the string with all the user styles
#### Defined in
[mermaidAPI.ts:222](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L222)
[mermaidAPI.ts:186](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L186)
---
@@ -228,47 +228,7 @@ with an enclosing block that has each of the cssClasses followed by !important;
#### Defined in
[mermaidAPI.ts:160](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L160)
---
### decodeEntities
**decodeEntities**(`text`): `string`
#### Parameters
| Name | Type | Description |
| :----- | :------- | :----------------- |
| `text` | `string` | text to be decoded |
#### Returns
`string`
#### Defined in
[mermaidAPI.ts:146](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L146)
---
### encodeEntities
**encodeEntities**(`text`): `string`
#### Parameters
| Name | Type | Description |
| :----- | :------- | :----------------- |
| `text` | `string` | text to be encoded |
#### Returns
`string`
#### Defined in
[mermaidAPI.ts:117](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L117)
[mermaidAPI.ts:124](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L124)
---
@@ -294,7 +254,7 @@ Put the svgCode into an iFrame. Return the iFrame code
#### Defined in
[mermaidAPI.ts:276](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L276)
[mermaidAPI.ts:240](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L240)
---
@@ -319,4 +279,4 @@ Remove any existing elements from the given document
#### Defined in
[mermaidAPI.ts:349](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L349)
[mermaidAPI.ts:313](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/mermaidAPI.ts#L313)

View File

@@ -65,7 +65,7 @@ Example of `init` directive setting the `theme` to `forest`:
a --> b
```
> **Reminder**: the only theme that can be customed is the `base` theme. The following section covers how to use `themeVariables` for customizations.
> **Reminder**: the only theme that can be customized is the `base` theme. The following section covers how to use `themeVariables` for customizations.
## Customizing Themes with `themeVariables`

View File

@@ -20,7 +20,7 @@ Please note that you can switch versions through the dropdown box at the top rig
For the majority of users, Using the [Live Editor](https://mermaid.live/) would be sufficient, however you may also opt to deploy mermaid as a dependency or using the [Mermaid API](./setup/README.md).
We have compiled some Video [Tutorials](./Tutorials.md) on how to use the Mermaid Live Editor.
We have compiled some Video [Tutorials](../ecosystem/tutorials.md) on how to use the Mermaid Live Editor.
### Installing and Hosting Mermaid on a Webpage
@@ -436,3 +436,8 @@ mermaid_config.startOnLoad = true;
> **Warning**
> This way of setting the configuration is deprecated. Instead the preferred way is to use the initialize method. This functionality is only kept for backwards compatibility.
<!---
cspell:locale en,en-gb
cspell:ignore pumbaa
--->

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

@@ -6,53 +6,69 @@
# Integrations
## Official integration: [Mermaid Chart](./mermaid-chart.md)
## Official integration
We're excited about the growth of the Mermaid community, and the number of plugins and integrations that have been created with Mermaid.
### Mermaid Chart
Mermaid Chart is built by the team behind Mermaid JS.
For more details, visit the [Mermaid Chart page](./mermaid-chart.md), or visit the [Mermaid Chart website](https://www.mermaidchart.com) .
## Community integrations
Below are a list of community plugins and integrations created with Mermaid.
We're excited about the growth of the Mermaid community, and the number of plugins and integrations that have been created by the community.
See the list below of community plugins and integrations created with Mermaid.
> **Note**
> A ✅ indicates Native support for Mermaid on the respective platform.
To add an integration to this list, see the [Integrations - create page](./integrations-create.md).
### Productivity tools
✅ = Native support
- [Atlassian Products](https://www.atlassian.com)
- [Mermaid for Confluence](https://marketplace.atlassian.com/apps/1224722/mermaid-for-confluence?hosting=cloud&tab=overview)
- [Mermaid Integration for Confluence](https://marketplace.atlassian.com/apps/1222792/mermaid-integration-for-confluence?hosting=cloud&tab=overview)
- [Mermaid Charts & Diagrams for Confluence](https://marketplace.atlassian.com/apps/1222572/)
- [Mermaid Diagrams for Confluence](https://marketplace.atlassian.com/apps/1226945/mermaid-diagrams-for-confluence?hosting=cloud&tab=overview)
- [Mermaid Live Editor for Confluence Cloud](https://marketplace.atlassian.com/apps/1231571/mermaid-live-editor-for-confluence?hosting=cloud&tab=overview)
- [Mermaid Macro for Confluence](https://marketplace.atlassian.com/apps/1231150/mermaid-macro-for-confluence?hosting=cloud&tab=overview)
- [Mermaid Plugin for Confluence](https://marketplace.atlassian.com/apps/1214124/mermaid-plugin-for-confluence?hosting=server&tab=overview)
- [EliteSoft Mermaid Charts and Diagrams](https://marketplace.atlassian.com/apps/1227286/elitesoft-mermaid-charts-and-diagrams?hosting=cloud&tab=overview)
- [Auto convert diagrams in Jira](https://github.com/coddingtonbear/jirafs-mermaid)
- [Mermaid Charts & Diagrams for Jira](https://marketplace.atlassian.com/apps/1224537/)
- [Mermaid for Jira Cloud - Draw UML diagrams easily](https://marketplace.atlassian.com/apps/1223053/mermaid-for-jira-cloud-draw-uml-diagrams-easily?hosting=cloud&tab=overview)
- [CloudScript.io Mermaid Addon](https://marketplace.atlassian.com/apps/1219878/cloudscript-io-mermaid-addon?hosting=cloud&tab=overview)
- [Azure Devops](https://learn.microsoft.com/en-us/azure/devops/project/wiki/markdown-guidance?view=azure-devops#add-mermaid-diagrams-to-a-wiki-page) ✅
- [Deepdwn](https://billiam.itch.io/deepdwn) ✅
- [GitBook](https://gitbook.com)
- [Mermaid Plugin](https://github.com/JozoVilcek/gitbook-plugin-mermaid)
- [Mermaid plugin for GitBook](https://github.com/wwformat/gitbook-plugin-mermaid-pdf)
- [Markdown with Mermaid CLI](https://github.com/miao1007/gitbook-plugin-mermaid-cli)
- [Gitea](https://gitea.io) ✅
- [GitHub](https://github.com) ✅
- [Using code blocks](https://github.blog/2022-02-14-include-diagrams-markdown-files-mermaid/) ✅
- [GitHub action: Compile mermaid to image](https://github.com/neenjaw/compile-mermaid-markdown-action)
- [svg-generator](https://github.com/SimonKenyonShepard/mermaidjs-github-svg-generator)
- [GitHub Writer](https://github.com/ckeditor/github-writer)
- [SVG diagram generator](https://github.com/SimonKenyonShepard/mermaidjs-github-svg-generator)
- [GitLab](https://docs.gitlab.com/ee/user/markdown.html#diagrams-and-flowcharts) ✅
- [Gitea](https://gitea.io) ✅
- [Azure Devops](https://docs.microsoft.com/en-us/azure/devops/project/wiki/wiki-markdown-guidance?view=azure-devops#add-mermaid-diagrams-to-a-wiki-page) ✅
- [Mermaid Plugin for JetBrains IDEs](https://plugins.jetbrains.com/plugin/20146-mermaid)
- [Joplin](https://joplinapp.org) ✅
- [LiveBook](https://livebook.dev) ✅
- [Tuleap](https://docs.tuleap.org/user-guide/writing-in-tuleap.html#graphs) ✅
- [Mermaid Flow Visual Editor](https://www.mermaidflow.app) ✅
- [Deepdwn](https://billiam.itch.io/deepdwn) ✅
- [Joplin](https://joplinapp.org) ✅
- [Mermerd](https://github.com/KarnerTh/mermerd)
- [Slab](https://slab.com) ✅
- [Swimm](https://swimm.io) ✅
- [Swimm](https://docs.swimm.io/features/diagrams-and-charts/#mermaid--swimm--up-to-date-diagrams-) ✅
- [NotesHub](https://noteshub.app) ✅
- [Notion](https://notion.so) ✅
- [Observable](https://observablehq.com/@observablehq/mermaid) ✅
- [Obsidian](https://help.obsidian.md/Editing+and+formatting/Advanced+formatting+syntax#Diagram) ✅
- [GitBook](https://gitbook.com)
- [Mermaid Plugin](https://github.com/JozoVilcek/gitbook-plugin-mermaid)
- [Markdown with Mermaid CLI](https://github.com/miao1007/gitbook-plugin-mermaid-cli)
- [Mermaid plugin for GitBook](https://github.com/wwformat/gitbook-plugin-mermaid-pdf)
- [LiveBook](https://livebook.dev) ✅
- [Atlassian Products](https://www.atlassian.com)
- [Mermaid Charts & Diagrams for Confluence](https://marketplace.atlassian.com/apps/1222572/)
- [Mermaid Charts & Diagrams for Jira](https://marketplace.atlassian.com/apps/1224537/)
- [Mermaid Live Editor for Confluence Cloud](https://marketplace.atlassian.com/apps/1231571/mermaid-live-editor-for-confluence?hosting=cloud&tab=overview)
- [Mermaid Plugin for Confluence](https://marketplace.atlassian.com/apps/1214124/mermaid-plugin-for-confluence?hosting=server&tab=overview)
- [CloudScript.io Addon](https://marketplace.atlassian.com/apps/1219878/cloudscript-io-mermaid-addon?hosting=cloud&tab=overview)
- [Auto convert diagrams in Jira](https://github.com/coddingtonbear/jirafs-mermaid)
- [Redmine](https://redmine.org)
- [Mermaid Macro](https://www.redmine.org/plugins/redmine_mermaid_macro)
- [Markdown for mermaid plugin](https://github.com/jamieh-mongolian/markdown-for-mermaid-plugin)
- [redmine-mermaid](https://github.com/styz/redmine_mermaid)
- [markdown-for-mermaid-plugin](https://github.com/jamieh-mongolian/markdown-for-mermaid-plugin)
- [Mermaid Plugin for JetBrains IDEs](https://plugins.jetbrains.com/plugin/20146-mermaid)
- [mermerd](https://github.com/KarnerTh/mermerd)
- Visual Studio Code [Polyglot Interactive Notebooks](https://github.com/dotnet/interactive#net-interactive)
### CRM/ERP
@@ -65,164 +81,175 @@ Customer Relationship Management/Enterprise Resource Planning
Blogging frameworks and platforms
- [WordPress](https://wordpress.org)
- [WordPress Markdown Editor](https://wordpress.org/plugins/wp-githuber-md)
- [WP-ReliableMD](https://wordpress.org/plugins/wp-reliablemd/)
- [Hexo](https://hexo.io)
- [hexo-filter-mermaid-diagrams](https://github.com/webappdevelp/hexo-filter-mermaid-diagrams)
- [hexo-tag-mermaid](https://github.com/JameChou/hexo-tag-mermaid)
- [hexo-mermaid-diagrams](https://github.com/mslxl/hexo-mermaid-diagrams)
- [Nextra](https://nextra.site/)
- [Mermaid](https://nextra.site/docs/guide/mermaid)
- [WordPress](https://wordpress.org)
- [WordPress Markdown Editor](https://wordpress.org/plugins/wp-githuber-md)
- [WP-ReliableMD](https://wordpress.org/plugins/wp-reliablemd/)
### CMS/ECM
Content Management Systems/Enterprise Content Management
- [ApostropheCMS](https://apostrophecms.com/)
- [Extension for Mermaid.js](https://github.com/BoDonkey/mermaid-extension)
- [Grav CMS](https://getgrav.org/)
- [Mermaid Diagrams Plugin](https://github.com/DanielFlaum/grav-plugin-mermaid-diagrams)
- [GitLab Markdown Adapter](https://github.com/Goutte/grav-plugin-gitlab-markdown-adapter)
- [VitePress](https://vitepress.vuejs.org/)
- [Plugin for Mermaid.js](https://emersonbottero.github.io/vitepress-plugin-mermaid/)
- [VuePress](https://vuepress.vuejs.org/)
- [Plugin for Mermaid.js](https://github.com/eFrane/vuepress-plugin-mermaidjs)
- [Grav CMS](https://getgrav.org/)
- [Mermaid Diagrams](https://github.com/DanielFlaum/grav-plugin-mermaid-diagrams)
- [GitLab Markdown Adapter](https://github.com/Goutte/grav-plugin-gitlab-markdown-adapter)
### Communication
Communication tools and platforms
- [Discourse](https://discourse.org)
- [Mermaid Plugin](https://github.com/pnewell/discourse-mermaid), [And](https://github.com/unfoldingWord-dev/discourse-mermaid)
- [Mermaid Plugin](https://github.com/pnewell/discourse-mermaid)
- [Mattermost](https://mattermost.com/)
- [Mermaid Plugin](https://github.com/SpikeTings/Mermaid)
- [NodeBB](https://nodebb.org)
- [Mermaid Parser Plugin](https://www.npmjs.com/package/nodebb-plugin-mermaid)
- [phpBB](https://phpbb.com)
- [phpbb-ext-mermaid](https://github.com/AlfredoRamos/phpbb-ext-mermaid)
- [NodeBB](https://nodebb.org)
- [Mermaid Plugin](https://www.npmjs.com/package/nodebb-plugin-mermaid)
- [Slack](https://slack.com)
- [Mermaid Preview](https://mermaid-preview.com)
### Wikis
- [MediaWiki](https://www.mediawiki.org)
- [Mermaid Extension](https://www.mediawiki.org/wiki/Extension:Mermaid)
- [Flex Diagrams Extension](https://www.mediawiki.org/wiki/Extension:Flex_Diagrams)
- [Semantic Media Wiki](https://semantic-mediawiki.org)
- [Mermaid Plugin](https://github.com/SemanticMediaWiki/Mermaid)
- [DokuWiki](https://dokuwiki.org)
- [ComboStrap](https://combostrap.com/mermaid)
- [Mermaid Plugin](https://www.dokuwiki.org/plugin:mermaid)
- [Foswiki](https://foswiki.org)
- [Mermaid Plugin](https://foswiki.org/Extensions/MermaidPlugin)
- [DokuWiki](https://dokuwiki.org)
- [Mermaid Plugin](https://www.dokuwiki.org/plugin:mermaid)
- [ComboStrap](https://combostrap.com/mermaid)
- [MediaWiki](https://www.mediawiki.org)
- [Flex Diagrams Extension](https://www.mediawiki.org/wiki/Extension:Flex_Diagrams)
- [Mermaid Extension](https://www.mediawiki.org/wiki/Extension:Mermaid)
- [PmWiki](https://www.pmwiki.org)
- [MermaidJs Cookbook recipe](https://www.pmwiki.org/wiki/Cookbook/MermaidJs)
- [Semantic Media Wiki](https://semantic-mediawiki.org)
- [Mermaid Plugin](https://github.com/SemanticMediaWiki/Mermaid)
- [TiddlyWiki](https://tiddlywiki.com/)
- [mermaid-tw5: full js library](https://github.com/efurlanm/mermaid-tw5)
- [tw5-mermaid: wrapper for Mermaid Live](https://github.com/jasonmhoule/tw5-mermaid)
- [mermaid-tw5: wrapper for Mermaid Live](https://github.com/efurlanm/mermaid-tw5)
- [tw5-mermaid: plugin for managing Mermaid.js tiddlers](https://github.com/jasonmhoule/tw5-mermaid)
### Editor Plugins
- [VS Code](https://code.visualstudio.com/)
- [Markdown Preview Mermaid Support](https://marketplace.visualstudio.com/items?itemName=bierner.markdown-mermaid)
- [Mermaid Preview](https://marketplace.visualstudio.com/items?itemName=vstirbu.vscode-mermaid-preview)
- [Markdown Preview Enhanced](https://marketplace.visualstudio.com/items?itemName=shd101wyy.markdown-preview-enhanced)
- [Mermaid Markdown Syntax Highlighting](https://marketplace.visualstudio.com/items?itemName=bpruitt-goddard.mermaid-markdown-syntax-highlighting)
- [Mermaid Editor](https://marketplace.visualstudio.com/items?itemName=tomoyukim.vscode-mermaid-editor)
- [Mermaid Export](https://marketplace.visualstudio.com/items?itemName=Gruntfuggly.mermaid-export)
- [Markdown PDF](https://marketplace.visualstudio.com/items?itemName=yzane.markdown-pdf)
- [Preview](https://marketplace.visualstudio.com/items?itemName=searKing.preview-vscode)
- [Preview Sequence Diagrams](https://marketplace.visualstudio.com/items?itemName=arichika.previewseqdiag-vscode)
- [Markdown-It](https://github.com/markdown-it/markdown-it)
- [Textual UML Parser](https://github.com/manastalukdar/markdown-it-textual-uml)
- [Mermaid Plugin](https://github.com/tylingsoft/markdown-it-mermaid)
- [md-it-mermaid](https://github.com/iamcco/md-it-mermaid)
- [markdown-it-mermaid-fence-new](https://github.com/Revomatico/markdown-it-mermaid-fence-new)
- [markdown-it-mermaid-less](https://github.com/searKing/markdown-it-mermaid-less)
- Atom _(Atom has been [archived.](https://github.blog/2022-06-08-sunsetting-atom/))_
- [Markdown Preview Enhanced](https://github.com/shd101wyy/markdown-preview-enhanced)
- [Atom Mermaid](https://github.com/y-takey/atom-mermaid)
- [Language Mermaid Syntax Highlighter](https://github.com/ytisf/language-mermaid)
- [Sublime Text 3](https://sublimetext.com)
- [Mermaid Package](https://packagecontrol.io/packages/Mermaid)
- [Astah](https://astah.net)
- [Export to Mermaid](https://github.com/Avens666/Astah_Jude_UML_export_to_Markdown-mermaid-Plantuml-)
- [Light Table](http://lighttable.com/)
- [Mermaid Plugin](https://github.com/cldwalker/Mermaid)
- [Draw.io](https://draw.io) - [Plugin](https://github.com/nopeslide/drawio_mermaid_plugin)
- [Inkdrop](https://www.inkdrop.app) - [Plugin](https://github.com/inkdropapp/inkdrop-mermaid)
- [Vim](https://www.vim.org)
- [Official Vim Syntax and ftplugin](https://github.com/craigmac/vim-mermaid)
- [Vim Diagram Syntax](https://github.com/zhaozg/vim-diagram)
- [Brackets](https://brackets.io/)
- [Mermaid Preview](https://github.com/AlanHohn/mermaid-preview)
- [CKEditor](https://github.com/ckeditor/ckeditor5)
- [CKEditor 5 Mermaid plugin](https://github.com/ckeditor/ckeditor5-mermaid)
- [Draw.io](https://draw.io)
- [Mermaid Plugin](https://github.com/nopeslide/drawio_mermaid_plugin)
- [GNU Emacs](https://www.gnu.org/software/emacs/)
- [Major mode for .mmd files](https://github.com/abrochard/mermaid-mode)
- [Org-Mode integration](https://github.com/arnm/ob-mermaid)
- [Brackets](https://brackets.io/)
- [Mermaid Preview](https://github.com/AlanHohn/mermaid-preview)
- [Iodide](https://github.com/iodide-project/iodide)
- [iodide-mermaid-plugin](https://github.com/iodide-project/iodide-mermaid-plugin)
- [Google docs](https://docs.google.com/)
- [Mermaid plugin for google docs](https://workspace.google.com/marketplace/app/mermaid/636321283856)
- [Podlite](https://github.com/zag/podlite-desktop)
- [Named block =Diagram](https://github.com/zag/podlite/tree/main/packages/podlite-diagrams)
- [GNU Nano](https://www.nano-editor.org/)
- [Nano Mermaid](https://github.com/Yash-Singh1/nano-mermaid)
- [CKEditor](https://github.com/ckeditor/ckeditor5)
- [CKEditor 5 Mermaid plugin](https://github.com/ckeditor/ckeditor5-mermaid)
- [Google docs](https://docs.google.com/)
- [Mermaid plugin for google docs](https://workspace.google.com/marketplace/app/mermaid/636321283856)
- [Inkdrop](https://www.inkdrop.app)
- [Mermaid Plugin](https://github.com/inkdropapp/inkdrop-mermaid)
- [Light Table](http://lighttable.com/)
- [Mermaid Plugin](https://github.com/cldwalker/Mermaid)
- [Markdown-It](https://github.com/markdown-it/markdown-it)
- [Textual UML Parser](https://github.com/manastalukdar/markdown-it-textual-uml)
- [Mermaid Plugin](https://github.com/tylingsoft/markdown-it-mermaid)
- [md-it-mermaid](https://github.com/iamcco/md-it-mermaid)
- [markdown-it-mermaid-less](https://github.com/searKing/markdown-it-mermaid-less)
- [Podlite](https://github.com/zag/podlite-desktop)
- [=Diagram block](https://github.com/zag/podlite/tree/main/packages/podlite-diagrams)
- [Standard Notes](https://standardnotes.com/)
- [sn-mermaid](https://github.com/nienow/sn-mermaid)
- [Mermaid Extension](https://github.com/nienow/sn-mermaid)
- [Sublime Text 3](https://sublimetext.com)
- [Mermaid Package](https://packagecontrol.io/packages/Mermaid)
- [VS Code](https://code.visualstudio.com/)
- [Mermaid Editor](https://marketplace.visualstudio.com/items?itemName=tomoyukim.vscode-mermaid-editor)
- [Mermaid Export](https://marketplace.visualstudio.com/items?itemName=Gruntfuggly.mermaid-export)
- [Markdown PDF](https://marketplace.visualstudio.com/items?itemName=yzane.markdown-pdf)
- [Markdown Preview Mermaid Support](https://marketplace.visualstudio.com/items?itemName=bierner.markdown-mermaid)
- [Markdown Preview Enhanced](https://marketplace.visualstudio.com/items?itemName=shd101wyy.markdown-preview-enhanced)
- [Mermaid Preview](https://marketplace.visualstudio.com/items?itemName=vstirbu.vscode-mermaid-preview)
- [Preview](https://marketplace.visualstudio.com/items?itemName=searKing.preview-vscode)
- [Preview Sequence Diagrams](https://marketplace.visualstudio.com/items?itemName=arichika.previewseqdiag-vscode)
- [Mermaid Markdown Syntax Highlighting](https://marketplace.visualstudio.com/items?itemName=bpruitt-goddard.mermaid-markdown-syntax-highlighting)
- [Vim](https://www.vim.org)
- [Vim Diagram Syntax](https://github.com/zhaozg/vim-diagram)
- [Official Vim Syntax and ft plugin](https://github.com/craigmac/vim-mermaid)
### Document Generation
- [Swimm - Up-to-date diagrams with Swimm, the knowledge management tool for code](https://docs.swimm.io/Features/diagrams-and-charts)
- [Sphinx](https://www.sphinx-doc.org/en/master/)
- [sphinxcontrib-mermaid](https://github.com/mgaitan/sphinxcontrib-mermaid)
- [remark](https://remark.js.org/)
- [remark-mermaidjs](https://github.com/remcohaszing/remark-mermaidjs)
- [rehype](https://github.com/rehypejs/rehype)
- [rehype-mermaid](https://github.com/remcohaszing/rehype-mermaid)
- [Codedoc](https://codedoc.cc/)
- [codedoc-mermaid-plugin](https://www.npmjs.com/package/codedoc-mermaid-plugin)
- [Docsy Hugo Theme](https://www.docsy.dev/docs/adding-content/lookandfeel/#diagrams-with-mermaid)
- [Docusaurus](https://docusaurus.io/docs/markdown-features/diagrams) ✅
- [Gatsby](https://www.gatsbyjs.com/)
- [gatsby-remark-mermaid](https://github.com/remcohaszing/gatsby-remark-mermaid)
- [JSDoc](https://jsdoc.app/)
- [jsdoc-mermaid](https://github.com/Jellyvision/jsdoc-mermaid)
- [mdBook](https://rust-lang.github.io/mdBook/index.html)
- [mdbook-mermaid](https://github.com/badboy/mdbook-mermaid)
- [MkDocs](https://www.mkdocs.org)
- [mkdocs-mermaid2-plugin](https://github.com/fralau/mkdocs-mermaid2-plugin)
- [mkdocs-material](https://github.com/squidfunk/mkdocs-material), check the [docs](https://squidfunk.github.io/mkdocs-material/reference/diagrams/)
- [Quarto](https://quarto.org/)
- [rehype](https://github.com/rehypejs/rehype)
- [rehype-mermaid](https://github.com/remcohaszing/rehype-mermaid)
- [remark](https://remark.js.org/)
- [remark-mermaidjs](https://github.com/remcohaszing/remark-mermaidjs)
- [Sphinx](https://www.sphinx-doc.org/en/master/)
- [sphinxcontrib-mermaid](https://github.com/mgaitan/sphinxcontrib-mermaid)
- [Type Doc](https://typedoc.org/)
- [typedoc-plugin-mermaid](https://www.npmjs.com/package/typedoc-plugin-mermaid)
- [Docsy Hugo Theme](https://www.docsy.dev/docs/adding-content/lookandfeel/#diagrams-with-mermaid) (native support in theme)
- [Codedoc](https://codedoc.cc/)
- [codedoc-mermaid-plugin](https://www.npmjs.com/package/codedoc-mermaid-plugin)
- [mdbook](https://rust-lang.github.io/mdBook/index.html)
- [mdbook-mermaid](https://github.com/badboy/mdbook-mermaid)
- [Quarto](https://quarto.org/)
- [Typora](https://typora.io/) ([native support](https://support.typora.io/Draw-Diagrams-With-Markdown/#mermaid))
- [Typora](https://support.typora.io/Draw-Diagrams-With-Markdown/#mermaid) ✅
- [Unison programming language](https://www.unison-lang.org/docs/usage-topics/documentation/)
### Browser Extensions
| Name | Chrome Web Store | Firefox Add-ons | Opera | Edge | Source/Repository |
| ------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| GitHub + Mermaid | - | [🦊🔗](https://addons.mozilla.org/firefox/addon/github-mermaid/) | - | - | [🐙🔗](https://github.com/BackMarket/github-mermaid-extension) |
| Asciidoctor Live Preview | [🎡🔗](https://chrome.google.com/webstore/detail/asciidoctorjs-live-previe/iaalpfgpbocpdfblpnhhgllgbdbchmia) | - | - | [🌀🔗](https://microsoftedge.microsoft.com/addons/detail/asciidoctorjs-live-previ/pefkelkanablhjdekgdahplkccnbdggd?hl=en-US) | - |
| Diagram Tab | - | - | - | - | [🐙🔗](https://github.com/khafast/diagramtab) |
| Markdown Diagrams | [🎡🔗](https://chrome.google.com/webstore/detail/markdown-diagrams/pmoglnmodacnbbofbgcagndelmgaclel/) | [🦊🔗](https://addons.mozilla.org/en-US/firefox/addon/markdown-diagrams/) | [🔴🔗](https://addons.opera.com/en/extensions/details/markdown-diagrams/) | [🌀🔗](https://microsoftedge.microsoft.com/addons/detail/markdown-diagrams/hceenoomhhdkjjijnmlclkpenkapfihe) | [🐙🔗](https://github.com/marcozaccari/markdown-diagrams-browser-extension/tree/master/doc/examples) |
| Markdown Viewer | - | [🦊🔗](https://addons.mozilla.org/en-US/firefox/addon/markdown-viewer-chrome/) | - | - | [🐙🔗](https://github.com/simov/markdown-viewer) |
| Extensions for Mermaid | - | [🦊🔗](https://addons.mozilla.org/en-US/firefox/addon/markdown-viewer-chrome/) | [🔴🔗](https://addons.opera.com/en/extensions/details/extensions-for-mermaid/) | - | [🐙🔗](https://github.com/Stefan-S/mermaid-extension) |
| Chrome Diagrammer | [🎡🔗](https://chrome.google.com/webstore/detail/chrome-diagrammer/bkpbgjmkomfoakfklcjeoegkklgjnnpk) | - | - | - | - |
| Mermaid Diagrams | [🎡🔗](https://chrome.google.com/webstore/detail/mermaid-diagrams/phfcghedmopjadpojhmmaffjmfiakfil) | - | - | - | - |
| Monkeys | [🎡🔗](https://chrome.google.com/webstore/detail/monkeys-mermaid-for-githu/cplfdpoajbclbgphaphphcldamfkjlgi) | - | - | - | - |
| Mermaid Previewer | [🎡🔗](https://chrome.google.com/webstore/detail/mermaid-previewer/oidjnlhbegipkcklbdfnbkikplpghfdl) | - | - | - | - |
| Name | Chrome Web Store | Firefox Add-ons | Opera | Edge | Source/Repository |
| ------------------------ | ----------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| GitHub + Mermaid | - | [🦊🔗](https://addons.mozilla.org/firefox/addon/github-mermaid/) | - | - | [🐙🔗](https://github.com/BackMarket/github-mermaid-extension) |
| Asciidoctor Live Preview | [🎡🔗](https://chromewebstore.google.com/detail/asciidoctorjs-live-previe/iaalpfgpbocpdfblpnhhgllgbdbchmia) | - | - | [🌀🔗](https://microsoftedge.microsoft.com/addons/detail/asciidoctorjs-live-previ/pefkelkanablhjdekgdahplkccnbdggd?hl=en-US) | - |
| Diagram Tab | - | - | - | - | [🐙🔗](https://github.com/khafast/diagramtab) |
| Markdown Diagrams | [🎡🔗](https://chromewebstore.google.com/detail/markdown-diagrams/pmoglnmodacnbbofbgcagndelmgaclel) | [🦊🔗](https://addons.mozilla.org/en-US/firefox/addon/markdown-diagrams/) | [🔴🔗](https://addons.opera.com/en/extensions/details/markdown-diagrams/) | [🌀🔗](https://microsoftedge.microsoft.com/addons/detail/markdown-diagrams/hceenoomhhdkjjijnmlclkpenkapfihe) | [🐙🔗](https://github.com/marcozaccari/markdown-diagrams-browser-extension/tree/master/doc/examples) |
| Markdown Viewer | - | [🦊🔗](https://addons.mozilla.org/en-US/firefox/addon/markdown-viewer-chrome/) | - | - | [🐙🔗](https://github.com/simov/markdown-viewer) |
| Extensions for Mermaid | - | - | [🔴🔗](https://addons.opera.com/en/extensions/details/extensions-for-mermaid/) | - | [🐙🔗](https://github.com/Stefan-S/mermaid-extension) |
| Chrome Diagrammer | [🎡🔗](https://chromewebstore.google.com/detail/chrome-diagrammer/bkpbgjmkomfoakfklcjeoegkklgjnnpk) | - | - | - | - |
| Mermaid Diagrams | [🎡🔗](https://chromewebstore.google.com/detail/mermaid-diagrams/phfcghedmopjadpojhmmaffjmfiakfil) | - | - | - | - |
| Monkeys | [🎡🔗](https://chromewebstore.google.com/detail/monkeys-mermaid-for-githu/cplfdpoajbclbgphaphphcldamfkjlgi) | - | - | - | - |
| Mermaid Previewer | [🎡🔗](https://chromewebstore.google.com/detail/mermaid-previewer/oidjnlhbegipkcklbdfnbkikplpghfdl) | - | - | - | - |
### Other
- [Bisheng](https://www.npmjs.com/package/bisheng)
- [bisheng-plugin-mermaid](https://github.com/yct21/bisheng-plugin-mermaid)
- [Blazorade Mermaid: Render Mermaid diagrams in Blazor applications](https://github.com/Blazorade/Blazorade-Mermaid/wiki)
- [Codemia: A tool to practice system design problems](https://codemia.io) ✅
- [ExDoc](https://github.com/elixir-lang/ex_doc)
- [Rendering Mermaid graphs](https://github.com/elixir-lang/ex_doc#rendering-mermaid-graphs)
- [Jekyll](https://jekyllrb.com/)
- [jekyll-mermaid](https://rubygems.org/gems/jekyll-mermaid)
- [jekyll-mermaid-diagrams](https://github.com/fuzhibo/jekyll-mermaid-diagrams)
- [mermaid-isomorphic](https://github.com/remcohaszing/mermaid-isomorphic)
- [mermaid-server: Generate diagrams using a HTTP request](https://github.com/TomWright/mermaid-server)
- [NiceGUI: Let any browser be the frontend of your Python code](https://nicegui.io) ✅
- [ui.mermaid(...)](https://nicegui.io/documentation/mermaid)
- [Reveal.js](https://github.com/hakimel/reveal.js)
- [reveal.js-mermaid-plugin](https://github.com/ludwick/reveal.js-mermaid-plugin)
- [Bisheng](https://www.npmjs.com/package/bisheng)
- [bisheng-plugin-mermaid](https://github.com/yct21/bisheng-plugin-mermaid)
- [Reveal CK](https://github.com/jedcn/reveal-ck)
- [reveal-ck-mermaid-plugin](https://github.com/tmtm/reveal-ck-mermaid-plugin)
- [mermaid-isomorphic](https://github.com/remcohaszing/mermaid-isomorphic)
- [mermaid-server: Generate diagrams using a HTTP request](https://github.com/TomWright/mermaid-server)
- [ExDoc](https://github.com/elixir-lang/ex_doc)
- [Rendering Mermaid graphs](https://github.com/elixir-lang/ex_doc#rendering-mermaid-graphs)
- [NiceGUI: Let any browser be the frontend of your Python code](https://nicegui.io)
- [ui.mermaid(...)](https://nicegui.io/reference#mermaid_diagrams)
- [ui.markdown(..., extras=\['mermaid'\])](https://nicegui.io/reference#markdown_element)
<!--- cspell:ignore Blazorade --->

View File

@@ -22,9 +22,9 @@ Currently pending [IANA](https://www.iana.org/) recognition.
## Showcase
### Mermaid Slack workspace
### Mermaid Discord workspace
We would love to see what you create with Mermaid. Please share your creations with us in our [Slack](https://join.slack.com/t/mermaid-talk/shared_invite/zt-22p2r8p9y-qiyP1H38GjFQ6S6jbBkOxQ) workspace [#community-showcase](https://mermaid-talk.slack.com/archives/C05NK37LT40) channel.
We would love to see what you create with Mermaid. Please share your creations with us in our [Discord](https://discord.gg/AgrbSrBer3) server [#showcase](https://discord.com/channels/1079455296289788015/1079502635054399649) channel.
### Add to Mermaid Ecosystem

View File

@@ -6,6 +6,10 @@
# Mermaid Chart
The Future of Diagramming & Visual Collaboration
Try the Ultimate AI, Mermaid, and Visual Diagramming Suite by creating an account at [Mermaid Chart](https://www.mermaidchart.com/app/sign-up).
<br />
<a href="https://www.producthunt.com/posts/mermaid-chart?utm_source=badge-featured&utm_medium=badge&utm_souce=badge-mermaid&#0045;chart" target="_blank"><img src="https://api.producthunt.com/widgets/embed-image/v1/featured.svg?post_id=416671&theme=light" alt="Mermaid&#0032;Chart - A&#0032;smarter&#0032;way&#0032;to&#0032;create&#0032;diagrams | Product Hunt" style="width: 250px; height: 54px;" width="250" height="54" /></a>
@@ -18,15 +22,26 @@
- **Editor** - A web based editor for creating and editing Mermaid diagrams.
- **Presentation** - A presentation mode for viewing Mermaid diagrams in a slideshow format.
- **Visual Editor** - The Visual Editor enables users of all skill levels to create diagrams easily and efficiently, with both GUI and code-based editing options.
- **Collaboration** - A web based collaboration feature for multi-user editing on Mermaid diagrams in real-time (Pro plan).
- **AI Chat** - Use our embedded AI Chat to generate diagrams from natural language descriptions.
- **Plugins** - A plugin system for extending the functionality of Mermaid. Currently includes [VS Code](https://marketplace.visualstudio.com/items?itemName=MermaidChart.vscode-mermaid-chart) and [ChatGPT](https://www.mermaidchart.com/plugins/chatgpt).
- **Plugins** - A plugin system for extending the functionality of Mermaid.
- **AI** - An AI chatbot that can generate Mermaid diagrams from text (Pro plan).
Official Mermaid Chart plugins:
- **More** - To learn more, visit our [Product](https://www.mermaidchart.com/product) page.
- [Mermaid Chart GPT](https://chat.openai.com/g/g-1IRFKwq4G-mermaid-chart)
- [Visual Studio Code](https://marketplace.visualstudio.com/items?itemName=MermaidChart.vscode-mermaid-chart)
- [JetBrains IDE](https://plugins.jetbrains.com/plugin/23043-mermaid-chart)
- [Microsoft PowerPoint and Word](https://appsource.microsoft.com/en-us/product/office/WA200006214?tab=Overview)
Visit our [Plugins](https://www.mermaidchart.com/plugins) page for more information.
- **Collaboration** - A web based collaboration feature for multi-user editing on Mermaid diagrams in real-time (Pro and Enterprise plans).
- **Comments** - Enhance collaboration by adding comments to diagrams.
- **Presentations** - A presentation mode for viewing Mermaid diagrams in a slideshow format.
## Plans
@@ -36,11 +51,9 @@
- **Enterprise** - A paid plan for enterprise use that includes all Pro features, and more.
## Access
To learn more, visit our [Pricing](https://mermaidchart.com/pricing) page.
Sign up for a free account at [Mermaid Chart](https://www.mermaidchart.com/app/sign-up).
Mermaid Chart is currently offering a 30-day free trial of our newly-launched Pro tier. To learn more, visit our [Pricing](https://mermaidchart.com/pricing) page.
Mermaid Chart is currently offering a 14-day free trial on our Pro and Enterprise tiers. Sign up for a free account at [Mermaid Chart](https://www.mermaidchart.com/app/sign-up).
## Mermaid JS contributions

Some files were not shown because too many files have changed in this diff Show More