Commit Graph

6377 Commits

Author SHA1 Message Date
pbrolin47 96d7666d8e
Merge pull request #3837 from mermaid-js/3831_er_theme
#3831 Re-enabling themes for er diagrams
2022-11-21 14:43:41 +01:00
pbrolin47 0e3a558b02
Merge pull request #3836 from mermaid-js/3835_handling_classes_to_paths
Fix for #3835, makes it possible to style path elements
2022-11-21 14:40:10 +01:00
Knut Sveidqvist f9222a3bf4 #3831 Re-enabling themes for er diagrams 2022-11-21 14:30:06 +01:00
Knut Sveidqvist 78b7941f2d #3835 Adding path to list of elements to be styled 2022-11-21 14:06:09 +01:00
pbrolin47 0d27b1aa65
Merge pull request #3834 from mermaid-js/3778_adding_more_mindmap_shapes
#3778 Adding a hexgon shape
2022-11-21 13:50:53 +01:00
pbrolin47 32db43069d
Merge pull request #3833 from mermaid-js/3832_mindmaps_single_node
#3882 fix for issues with mindmaps  with only a single node
2022-11-21 13:39:16 +01:00
Knut Sveidqvist ffb95b4fa9
Merge pull request #3823 from mermaid-js/sidv/viz
Add package visualizations
2022-11-21 13:32:19 +01:00
Knut Sveidqvist 29a02d1ab5
Merge pull request #3809 from aloisklink/use-dagre-d3-es
Replace `dagre`/`dagre-d3` with `dagre-d3-es`
2022-11-21 13:31:35 +01:00
Knut Sveidqvist 564414ecac #3882 fix for issues with mindmaps with only a single node 2022-11-21 13:23:25 +01:00
Knut Sveidqvist 050574f60f
Merge pull request #3706 from MasonM/feature/1433_title_support
feat: Title support via front matter for ER, state, class, git, and graph diagrams
2022-11-21 11:44:26 +01:00
renovate[bot] b9f0c7c807 chore(deps): update pnpm to v7.17.0 2022-11-21 10:05:15 +00:00
Sidharth Vinod ed6ad77fd9
docs: Remove warning in readme 2022-11-21 11:52:57 +05:30
renovate[bot] a8c5f6d517 chore(deps): update lycheeverse/lychee-action action to v1.5.4 2022-11-21 04:51:51 +00:00
Sidharth Vinod de99cdfb4c
chore: Add size shield in readme
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-11-21 08:22:10 +05:30
Sidharth Vinod 8a2d3a400c
Fix Lodash import 2022-11-20 19:12:52 +05:30
Sidharth Vinod 29342ea726
fix: Viz build 2022-11-20 17:16:09 +05:30
Sidharth Vinod 4ad99a25d0
feat: Add package visualization 2022-11-20 14:16:22 +05:30
Sidharth Vinod fc859528e4
Ignore stats.html 2022-11-20 12:13:03 +05:30
Sidharth Vinod 49a931f712
feat: Add bundle visualization 2022-11-20 12:13:00 +05:30
Mason Malone bdf8b01185 Fix example for Git diagrams 2022-11-19 13:20:12 -08:00
Mason Malone 1b201bf462 Fix TS errors 2022-11-19 13:01:21 -08:00
Mason Malone 3316aa5f4f Add interface for DiagramDb and other minor changes 2022-11-19 12:52:49 -08:00
Mason Malone a11ab3d5ea Disallow leading whitespace before delimiter 2022-11-19 12:52:49 -08:00
Mason Malone 70f024735b Add title support using YAML frontmatter 2022-11-18 20:42:54 -08:00
Alois Klink fd76e0e270 chore: replace dagre/dagre-d3 with dagre-d3-es
Replace the dagre and dagre-d3 libraries with dagre-d3-es.

Both dagre and dagre-d3 are deprecated and unmaintained,
and haven't been updated for more than 3 years.

Since dagre-d3 still requires an old version of d3, this causes
a bunch of security warnings,
e.g. https://github.com/advisories/GHSA-36jr-mh4h-2g58

The [dagre-d3-es](https://github.com/tbo47/dagre-es) package is a fork
that contains support for `"d3": "^7.6.1"`. Also, it's ESM, so we will
hopefully get smaller bundle sizes too. The only issue is that this
fork isn't very well used (only has 3000 weekly downloads),
compared to `dagre-d3`'s 250,000 weekly downloads.

(although to be fair, a large proportion of dagre-d3's downloads
 probably come from mermaid)

Since it's is a less popular package,
**I've pinned `dagre-d3-es` to `"7.0.2"` instead of `"^7.0.2"`**.
This does mean if there is a bug in `dagre-d3-es`, we will have to
manually bump it ourselves, but it also means we won't accidentally
be sending a buggy version of `dagre-d3-es` out to users in cases
something changes (it might be worth disabling renovate for this
if we're feeling paranoid!)
2022-11-18 18:33:05 +00:00
Alois Klink 537a627b75 test(e2e): test for mindmap before snapshot
Sometimes, the mindmap e2e tests take a snapshot when the mindmap
SVG has been created, but hasn't yet been fully rendered.

This adds a quick check for a mindmap section root, so that the
snapshot is only taken after the mindmap diagram has started
rendering.

I was also running into JSDoc ESLint warnings, so I moved the file
into a TypeScript file to fix those warnings.
2022-11-18 18:31:14 +00:00
Alois Klink 57edcfe87d test(e2e): remove unused mermaid.spec.js file
All tests have been moved to `mindmap.spec.js` in a previous commit.
2022-11-18 18:07:40 +00:00
Alois Klink b9dcdb00a5 test(e2e): move mindmap tests to mindmap.spec.js
Currently, we have mindmap tests in the
cypress/integration/rendering/mermaid.spec.js which is a bit
odd. They should probably all be in the mindmap.spec.js file.
2022-11-18 17:58:17 +00:00
Sidharth Vinod 09ed41b7d2
Merge pull request #3807 from aloisklink/docs/update-code-highlighting-theme
Use `github-dark` to highlight fence blocks in vitepress docs
2022-11-18 23:09:59 +05:30
Alois Klink 6e234f135d docs: create some basic mermaid mindmap demos 2022-11-18 17:32:23 +00:00
pbrolin47 804a23595d
Merge pull request #3797 from mermaid-js/sidv/redirectOldDocs
feat: Redirect old documentation links.
2022-11-18 10:46:34 +01:00
Knut Sveidqvist 8655db371e
Merge pull request #3762 from avijit1258/bug/3728_comments_not_ignored_composite_states
comments in states are skipped now
2022-11-18 10:45:01 +01:00
Knut Sveidqvist 9b8d5c1b3b
Merge pull request #3641 from ishuen/bug/3637_extra_arrow
Remove extra arrow and adjust cross position
2022-11-18 10:38:57 +01:00
Alois Klink c30aa6f9cf
style(docs): use `github-dark` hightlight theme
Use the `github-dark` highlight theme for fence blocks in vitepress,
instead of the default `material-palenight` theme.

This increases the contrast ratio of `#comments` from 2.75:1 to 4.43:1,
which is a lot more visible.

It still doesn't reach WCAG 2.0 level AA contrast standards,
which requires 4.5:1 as a minimum constrast ratio, but 4.43:1 is
pretty close, and we don't need to manually modify the theme's colours.
2022-11-17 19:05:41 +00:00
Alois Klink 6da6edfc01
refactor(docs): use default vitepress highlighter
Use the default vitepress highlighter instead of making our own
highlighter using shiki.

The benefits are:
  - We don't need to directly depend on shiki
  - `mermaid-example` code-blocks will use the same highlighting
    as other languages (e.g. `html`/`js`).
  - We can control the theme from the global `vitepress` config.
  - Darkmode/lightmode themes are supported
  - Escaping is already handled by the default highlight function
2022-11-17 19:05:38 +00:00
Sidharth Vinod 461236030c
Merge pull request #3798 from weedySeaDragon/bug/1952-stateDiagram--classDef-fix-classes-type
bug: State diagram  fix classes type
2022-11-17 22:01:09 +05:30
Sidharth Vinod 8cc291162f
Merge pull request #3735 from aloisklink/ci/disable-pinning-dependencies
CI: disable pinning dependencies
2022-11-17 21:59:06 +05:30
Sidharth Vinod b83ba4d293
fix: Move redirection to router 2022-11-17 11:14:15 +05:30
Alois Klink c2bd6a490f ci(renovate): disable pinning dependencies
We shouldn't pin dependencies unless we have to.

This is for two reasons:

- If a dependency has a security issue, users should be able to
  easily update the dependency, before `mermaid` makes a new release
- If using `mermaid.core.js` in an app, using a dependency range
  means that users can bundle less dependencies.
  E.g. they won't need to bundle `lodash@4.17.y` just becasue mermaid
  needs `lodash@4.17.x`.

For development/CI, our dependencies are pinned by pnpm-lock.yaml
file anyway.
2022-11-16 20:00:17 +00:00
Alois Klink 476917bda9 Revert "chore(deps): pin dependencies"
This reverts commit 17b72d565d.
2022-11-16 20:00:16 +00:00
Sidharth Vinod 653682a4b8 Merge pull request #3804 from weedySeaDragon/bug/3803_vitepress-config-shiki-import-fix
bug: change shiki getHighlighter import
2022-11-16 10:16:04 +05:30
Ashley Engelund (weedySeaDragon @ github) 717aca6824 change shiki getHighlighter import 2022-11-15 13:09:16 -08:00
Ashley Engelund (weedySeaDragon @ github) 2cbf6110a6 create separate spec for stateRenderer-v2 2022-11-15 12:30:10 -08:00
Ashley Engelund (weedySeaDragon @ github) fcec9adbcd diagramStates should not be global; pass it into functions; minor comment fixes 2022-11-15 09:19:27 -08:00
Ashley Engelund (weedySeaDragon @ github) 13f3008f82 diagramClasses no longer needs to be cached; mermaidAPI no longer calls it repeatedly 2022-11-15 09:18:10 -08:00
Ashley Engelund (weedySeaDragon @ github) 6090a1f65a (minor) import expectTypeOf in spec 2022-11-15 09:14:00 -08:00
Ashley Engelund (weedySeaDragon @ github) 1ecd4a551d (minor) fix JSdoc tag 2022-11-15 09:13:27 -08:00
Ashley Engelund (weedySeaDragon @ github) c6db0524bd + spec stateRenderer-v2.js getClasses() to verify it returns a {} 2022-11-15 09:01:34 -08:00
Ashley Engelund (weedySeaDragon @ github) d3f5474f38 (minor) fix JSdoc types in comments 2022-11-15 08:59:01 -08:00
Ashley Engelund (weedySeaDragon @ github) 9996e53e24 (minor) add comments, remove duplicated line 2022-11-15 08:50:20 -08:00