Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce mermaid size by 31% #3825

Merged
merged 16 commits into from Nov 23, 2022
Merged

Reduce mermaid size by 31% #3825

merged 16 commits into from Nov 23, 2022

Conversation

sidharthv96
Copy link
Member

@sidharthv96 sidharthv96 commented Nov 20, 2022

📑 Summary

Some optimizations to reduce our output size

Bundle Initial (KiB) Final (KiB) Change % Change
mermaid.js 2281.14 1563.71 -718.14 -31.48
mermaid.core.mjs 1080.73 1025.56 -54.76 -5.07

📏 Design Decisions

Detailed blogpost: https://www.sidharth.dev/posts/mermaid/shrinking-mermaid/
Is built on top of #3809
Special thanks to @aloisklink :)

📋 Tasks

Make sure you

  • 📖 have read the contribution guidelines
  • 💻 have added unit/e2e tests (if appropriate)
  • 🔖 targeted develop branch

@sidharthv96 sidharthv96 self-assigned this Nov 20, 2022
Copy link
Member

@aloisklink aloisklink left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks amazing! This is a huge difference. I love the blog post too!

One issue, but it's my fault! I've updated my branch and I edited my commits, so the commits you were basing your branch on no longer exists.

Can you try running the following to rebase your changes away from my outdated commits and onto my new commits:

git rebase --rebase-merges \
  --onto fd76e0e27095997c2ac21902c0629cd6600e30d9 \
  d708ed8950b00fcfd707360165d0c183909584d2 \
  sidv/optimizeSize

You may need to first git pull/fetch my PR #3809 changes.
There did seem to be some merge conflicts, but I think they are relatively minor (mostly because I added extensions to some files).

Where fd76e0e is my new HEAD commit of PR #3809 and d708ed8 was the old HEAD commit still in your branch.

Edit: It might be worth making this a draft until #3823 and #3809 are merged, since this PR depends/contains commits from both of them.

.vite/build.ts Show resolved Hide resolved
@sidharthv96 sidharthv96 marked this pull request as draft November 21, 2022 02:37
* sidv/viz:
  Fix Lodash import
  fix: Viz build
  feat: Add package visualization
  Ignore stats.html
  feat: Add bundle visualization
  style(docs): use `github-dark` hightlight theme
  refactor(docs): use default vitepress highlighter
  fix: Move redirection to router
  chore: Add docs to redirect.ts
  feat: Redirect old documentation links.
  comments in states are skipped now
  Remove extra arrow and adjust cross position
sidharthv96 and others added 3 commits November 21, 2022 08:18
Co-authored-by: Alois Klink <alois@aloisklink.com>
* develop:
  chore(deps): update pnpm to v7.17.0
  docs: Remove warning in readme
  chore(deps): update lycheeverse/lychee-action action to v1.5.4
  chore: Add size shield in readme
  Fix example for Git diagrams
  Fix TS errors
  Add interface for DiagramDb and other minor changes
  Disallow leading whitespace before delimiter
  Add title support using YAML frontmatter
@sidharthv96 sidharthv96 marked this pull request as ready for review November 21, 2022 12:39
@weedySeaDragon
Copy link
Contributor

Separate PR: Can we add an automated step in the lint pnpm script to check for imports that might increase the size again? That could stop people like me from using an import statement that would bloat the size again. ;-)

Maybe use a regexp to specifically check for the lodash import for now?

@sidharthv96
Copy link
Member Author

@weedySeaDragon, I was thinking of a bot/action that checks the change in the following for every PR.

  • Bundle Size
  • Code Coverage
  • ESLint Warnings

Anything else?

Also, are there any tools which can be readily used for this?

* develop: (21 commits)
  chore: docs:build
  chore: docs:build
  tiny fix and change: "The/y cannot" -> "Cannot..."
  remove 'horz' from  cSpell.json
  update demos/state.html to includ examples; formatting
  add 'horz' to cSpell (in pieDetector.ts commented out barChart work)
  refine - what is not done yet
  remove 'horz' from  cSpell.json
  Revert "Added pie"
  chore: Fix cSpell in pieRenderer
  update demos/state.html to includ examples; formatting
  add 'horz' to cSpell (in pieDetector.ts commented out barChart work)
  refine - what is not done yet
  remove console stmt
  #3831 Re-enabling themes for er diagrams
  #3835 Adding path to list of elements to be styled
  #3882 fix for issues with mindmaps  with only a single node
  Integrations added - Visual Studio Code [Polyglot Interactive Notebooks]
  Fix typos
  #3778 Adding a hexgon shape
  ...
@weedySeaDragon
Copy link
Contributor

Bundle Size
Code Coverage
ESLint Warnings

There are definitely tools that will check those things automatically (you probably are well aware of them already).

Re: checking specifically for specific statements (e.g. import { whatever } from "lodash"; or some other import statement), the one I'm most aware of is [danger](https://danger.systems/js/) -- which lets you set up whatever custom checks you want. Goal is to automate what is done in a code review as much as possible. (Have used it for ruby projects.)

@sidharthv96
Copy link
Member Author

There are definitely tools that will check those things automatically (you probably are well aware of them already).

Tools to check, yup. But I was thinking of tools that report diff as a comment on each PR. Perhaps a github bot.


I've added the lodash eslint rule to catch lodash issues.

@weedySeaDragon
Copy link
Contributor

@sidharthv96 There are definitiely tools to that comapre PRs as they come in. I'll look and post what I find in the Discussions.

@knsv knsv merged commit 79c63e9 into develop Nov 23, 2022
fuxingloh pushed a commit to fuxingloh/contented that referenced this pull request Dec 19, 2022
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [mermaid](https://togithub.com/mermaid-js/mermaid) | [`9.2.2` ->
`9.3.0`](https://renovatebot.com/diffs/npm/mermaid/9.2.2/9.3.0) |
[![age](https://badges.renovateapi.com/packages/npm/mermaid/9.3.0/age-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://badges.renovateapi.com/packages/npm/mermaid/9.3.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://badges.renovateapi.com/packages/npm/mermaid/9.3.0/compatibility-slim/9.2.2)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://badges.renovateapi.com/packages/npm/mermaid/9.3.0/confidence-slim/9.2.2)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>mermaid-js/mermaid</summary>

###
[`v9.3.0`](https://togithub.com/mermaid-js/mermaid/releases/tag/v9.3.0)

[Compare
Source](https://togithub.com/mermaid-js/mermaid/compare/v9.2.2...v9.3.0)

### Significant Changes

-   25% Smaller
-   New docs
-   Replaces the deprecated and vulnerable `dagre-d3` with `dagre-es`

### Release Notes

- [#&#8203;3778](https://togithub.com/mermaid-js/mermaid/issues/3778)
Adding a hexgon shape
([#&#8203;3834](https://togithub.com/mermaid-js/mermaid/issues/3834))
[@&#8203;knsv](https://togithub.com/knsv)
- [#&#8203;3831](https://togithub.com/mermaid-js/mermaid/issues/3831)
Re-enabling themes for er diagrams
([#&#8203;3837](https://togithub.com/mermaid-js/mermaid/issues/3837))
[@&#8203;knsv](https://togithub.com/knsv)
- [#&#8203;3882](https://togithub.com/mermaid-js/mermaid/issues/3882)
fix for issues with mindmaps with only a single node
([#&#8203;3833](https://togithub.com/mermaid-js/mermaid/issues/3833))
[@&#8203;knsv](https://togithub.com/knsv)
- (chore) remove console stmt in pieDetector
([#&#8203;3840](https://togithub.com/mermaid-js/mermaid/issues/3840))
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon)
- (feat) state classDef documentation
([#&#8203;3841](https://togithub.com/mermaid-js/mermaid/issues/3841))
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon)
- 3882 edge labels
([#&#8203;3883](https://togithub.com/mermaid-js/mermaid/issues/3883))
[@&#8203;knsv](https://togithub.com/knsv)
- Add GHA that will check links + Fix broken links
([#&#8203;3765](https://togithub.com/mermaid-js/mermaid/issues/3765))
[@&#8203;spier](https://togithub.com/spier)
- Add official vim plugin to list in integrations
([#&#8203;3847](https://togithub.com/mermaid-js/mermaid/issues/3847))
[@&#8203;craigmac](https://togithub.com/craigmac)
- Add package visualizations
([#&#8203;3823](https://togithub.com/mermaid-js/mermaid/issues/3823))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- Add support for [@&#8203;include](https://togithub.com/include) in
docs
([#&#8203;3863](https://togithub.com/mermaid-js/mermaid/issues/3863))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- CI: disable pinning dependencies
([#&#8203;3735](https://togithub.com/mermaid-js/mermaid/issues/3735))
[@&#8203;aloisklink](https://togithub.com/aloisklink)
- Defects/issue 3878
([#&#8203;3880](https://togithub.com/mermaid-js/mermaid/issues/3880))
[@&#8203;MrCoder](https://togithub.com/MrCoder)
- Feat: Add aria-describedby, aria-roledescription
([#&#8203;3808](https://togithub.com/mermaid-js/mermaid/issues/3808))
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon)
- Fix
[#&#8203;3799](https://togithub.com/mermaid-js/mermaid/issues/3799):
Remove `type` from package.json
([#&#8203;3802](https://togithub.com/mermaid-js/mermaid/issues/3802))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- Fix for
[#&#8203;3835](https://togithub.com/mermaid-js/mermaid/issues/3835),
makes it possible to style path elements
([#&#8203;3836](https://togithub.com/mermaid-js/mermaid/issues/3836))
[@&#8203;knsv](https://togithub.com/knsv)
- Fix typos
([#&#8203;3820](https://togithub.com/mermaid-js/mermaid/issues/3820))
[@&#8203;endolith](https://togithub.com/endolith)
- Housekeeping with eslint-unicorn
([#&#8203;3845](https://togithub.com/mermaid-js/mermaid/issues/3845))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- Integrations added - Visual Studio Code \[Polyglot Interactive
Notebooks]
([#&#8203;3821](https://togithub.com/mermaid-js/mermaid/issues/3821))
[@&#8203;dfinke](https://togithub.com/dfinke)
- Mindmap integration docs
([#&#8203;3810](https://togithub.com/mermaid-js/mermaid/issues/3810))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- Reduce mermaid size by 31%
([#&#8203;3825](https://togithub.com/mermaid-js/mermaid/issues/3825))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- Remove extra arrow and adjust cross position
([#&#8203;3641](https://togithub.com/mermaid-js/mermaid/issues/3641))
[@&#8203;ishuen](https://togithub.com/ishuen)
- Replace `dagre`/`dagre-d3` with `dagre-d3-es`
([#&#8203;3809](https://togithub.com/mermaid-js/mermaid/issues/3809))
[@&#8203;aloisklink](https://togithub.com/aloisklink)
- Revert "Added pie"
([#&#8203;3842](https://togithub.com/mermaid-js/mermaid/issues/3842))
[@&#8203;pbrolin47](https://togithub.com/pbrolin47)
- Switch CDN to unpkg.com
([#&#8203;3777](https://togithub.com/mermaid-js/mermaid/issues/3777))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- Switch back to jsdelivr
([#&#8203;3873](https://togithub.com/mermaid-js/mermaid/issues/3873))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- Use `github-dark` to highlight fence blocks in vitepress docs
([#&#8203;3807](https://togithub.com/mermaid-js/mermaid/issues/3807))
[@&#8203;aloisklink](https://togithub.com/aloisklink)
- Use current mermaid version in docs.
([#&#8203;3846](https://togithub.com/mermaid-js/mermaid/issues/3846))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- Use stylis to prepend idSelector
([#&#8203;3829](https://togithub.com/mermaid-js/mermaid/issues/3829))
[@&#8203;DanInProgress](https://togithub.com/DanInProgress)
- bug: State diagram fix classes type
([#&#8203;3798](https://togithub.com/mermaid-js/mermaid/issues/3798))
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon)
- bug: change shiki getHighlighter import
([#&#8203;3804](https://togithub.com/mermaid-js/mermaid/issues/3804))
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon)
- chore(deps): remove dependency on `graphlib`
([#&#8203;3861](https://togithub.com/mermaid-js/mermaid/issues/3861))
[@&#8203;aloisklink](https://togithub.com/aloisklink)
- chore(deps): update all non-major dependencies (minor)
([#&#8203;3905](https://togithub.com/mermaid-js/mermaid/issues/3905))
[@&#8203;renovate](https://togithub.com/renovate)
- chore(deps): update all non-major dependencies (minor)
([#&#8203;3791](https://togithub.com/mermaid-js/mermaid/issues/3791))
[@&#8203;renovate](https://togithub.com/renovate)
- chore(deps): update lycheeverse/lychee-action action to v1.5.4
([#&#8203;3827](https://togithub.com/mermaid-js/mermaid/issues/3827))
[@&#8203;renovate](https://togithub.com/renovate)
- chore(deps): update pnpm to v7.17.0
([#&#8203;3828](https://togithub.com/mermaid-js/mermaid/issues/3828))
[@&#8203;renovate](https://togithub.com/renovate)
- chore(deps): update pnpm to v7.17.1
([#&#8203;3862](https://togithub.com/mermaid-js/mermaid/issues/3862))
[@&#8203;renovate](https://togithub.com/renovate)
- chore(docs): Auto build docs
([#&#8203;3547](https://togithub.com/mermaid-js/mermaid/issues/3547))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- chore: Housekeeping
([#&#8203;3783](https://togithub.com/mermaid-js/mermaid/issues/3783))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- chore: Merge master to develop
([#&#8203;3780](https://togithub.com/mermaid-js/mermaid/issues/3780))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- chore: clean up code in mermaidAPI render() and write specs/tests
([#&#8203;3684](https://togithub.com/mermaid-js/mermaid/issues/3684))
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon)
- chore: delete functions not used in diagrams/c4 code (dead code)
([#&#8203;3871](https://togithub.com/mermaid-js/mermaid/issues/3871))
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon)
- comments in states are skipped now
([#&#8203;3762](https://togithub.com/mermaid-js/mermaid/issues/3762))
[@&#8203;avijit1258](https://togithub.com/avijit1258)
- doc: remove links from atom.io; add note Atom has been archived
([#&#8203;3899](https://togithub.com/mermaid-js/mermaid/issues/3899))
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon)
- docs: refactor Theming doc
([#&#8203;3889](https://togithub.com/mermaid-js/mermaid/issues/3889))
[@&#8203;huynhicode](https://togithub.com/huynhicode)
- feat: Redirect old documentation links.
([#&#8203;3797](https://togithub.com/mermaid-js/mermaid/issues/3797))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)
- feat: Title support via front matter for ER, state, class, git, and
graph diagrams
([#&#8203;3706](https://togithub.com/mermaid-js/mermaid/issues/3706))
[@&#8203;MasonM](https://togithub.com/MasonM)
- fix(deps): update all non-major dependencies (patch)
([#&#8203;3790](https://togithub.com/mermaid-js/mermaid/issues/3790))
[@&#8203;renovate](https://togithub.com/renovate)
- fix(deps): update dependency rollup to v3
([#&#8203;3674](https://togithub.com/mermaid-js/mermaid/issues/3674))
[@&#8203;renovate](https://togithub.com/renovate)
- fix: LintStaged
([#&#8203;3844](https://togithub.com/mermaid-js/mermaid/issues/3844))
[@&#8203;sidharthv96](https://togithub.com/sidharthv96)

🎉 **Thanks to all contributors helping with this release!** 🎉

#### What's Changed

- chore(deps): update actions/checkout action to v3 by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3645
- chore(deps): update actions/setup-node action to v3 by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3646
- Remove inconsistent and deprecated semicolons by
[@&#8203;revolter](https://togithub.com/revolter) in
[mermaid-js/mermaid#3657
- Fix windows paths for `docs:build` by
[@&#8203;arpansaha13](https://togithub.com/arpansaha13) in
[mermaid-js/mermaid#3605
- feat: make `parseError` function more type-safe by
[@&#8203;Some-Dood](https://togithub.com/Some-Dood) in
[mermaid-js/mermaid#3643
- chore(deps): update all non-major dependencies (minor) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3632
- chore(deps): update all non-major dependencies (patch) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3671
- chore(deps): pin dependencies by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3685
- Added Open Graph meta tags by
[@&#8203;danangtomo](https://togithub.com/danangtomo) in
[mermaid-js/mermaid#3679
- add eslint-plugin-no-only-tests plugin by
[@&#8203;DKurilo](https://togithub.com/DKurilo) in
[mermaid-js/mermaid#3690
- Added and configured cspell plugin to eslint by
[@&#8203;devcer](https://togithub.com/devcer) in
[mermaid-js/mermaid#3604
- fix: gantt demo diagrams
([#&#8203;3655](https://togithub.com/mermaid-js/mermaid/issues/3655)) by
[@&#8203;isinek](https://togithub.com/isinek) in
[mermaid-js/mermaid#3688
- Chore/3697 eslint curly by
[@&#8203;jeroenekkelkamp](https://togithub.com/jeroenekkelkamp) in
[mermaid-js/mermaid#3698
- Update sequenceDiagram.md by
[@&#8203;imgss](https://togithub.com/imgss) in
[mermaid-js/mermaid#3707
- Use `eslint-plugin-tsdoc` for TypeScript files instead of
`eslint-plugin-jsdoc` by
[@&#8203;aloisklink](https://togithub.com/aloisklink) in
[mermaid-js/mermaid#3708
- chore(deps): pin dependencies by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3713
- chore(deps): update all non-major dependencies (patch) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3714
- Order pie chart slices clockwise by order of entries by
[@&#8203;jasmaa](https://togithub.com/jasmaa) in
[mermaid-js/mermaid#3609
- fix: border attribute does not work in a certain writing style by
[@&#8203;maiermic](https://togithub.com/maiermic) in
[mermaid-js/mermaid#3636
- add the way to add notes to class diagram by
[@&#8203;DKurilo](https://togithub.com/DKurilo) in
[mermaid-js/mermaid#3647
- add statement aliases for ER diagram by
[@&#8203;DKurilo](https://togithub.com/DKurilo) in
[mermaid-js/mermaid#3649
- fix: Fix useMaxWidth option for git graph by
[@&#8203;uttk](https://togithub.com/uttk) in
[mermaid-js/mermaid#3652
- [#&#8203;3659](https://togithub.com/mermaid-js/mermaid/issues/3659)
Adding height when not using maxWidth by
[@&#8203;knsv](https://togithub.com/knsv) in
[mermaid-js/mermaid#3668
- Change fill attribute to style by
[@&#8203;CalebUsadi](https://togithub.com/CalebUsadi) in
[mermaid-js/mermaid#3719
- feat: \[State diagram] Add classDefs and classes to states by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3644
- Fill inheritance arrow with background color by
[@&#8203;vallsv](https://togithub.com/vallsv) in
[mermaid-js/mermaid#3543
- Ensure example code and rendered output are synced by
[@&#8203;marcjansen](https://togithub.com/marcjansen) in
[mermaid-js/mermaid#3721
- fix(git): Support quoted branch names by
[@&#8203;gibson042](https://togithub.com/gibson042) in
[mermaid-js/mermaid#3726
- docs: Add link to docs source by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3612
- chore(deps): update all non-major dependencies (patch) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3736
- chore(deps): update all non-major dependencies (minor) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3737
- feat(gantt): Add option 'tickInterval' for custom tick interval by
[@&#8203;DarkNami](https://togithub.com/DarkNami) in
[mermaid-js/mermaid#3729
- Fix/convert attr to style in er graph by
[@&#8203;CalebUsadi](https://togithub.com/CalebUsadi) in
[mermaid-js/mermaid#3722
- update user story link for
[#&#8203;3740](https://togithub.com/mermaid-js/mermaid/issues/3740) by
[@&#8203;6footGeek](https://togithub.com/6footGeek) in
[mermaid-js/mermaid#3741
- Improved New Documentation by
[@&#8203;emersonbottero](https://togithub.com/emersonbottero) in
[mermaid-js/mermaid#3678
- chore: fix cSpell word entry misspelling "mermiad" -> "mermaid" by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3751
- Fix link to CSS classes by
[@&#8203;hugovk](https://togithub.com/hugovk) in
[mermaid-js/mermaid#3752
- docs: Update references to default config in directives page by
[@&#8203;raptor0929](https://togithub.com/raptor0929) in
[mermaid-js/mermaid#3738
- Fix link relative links to documentation files by
[@&#8203;spier](https://togithub.com/spier) in
[mermaid-js/mermaid#3760
- chore(deps): update all non-major dependencies (patch) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3769
- chore(deps): update all non-major dependencies (minor) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3770
- Fix CSpell by [@&#8203;sidharthv96](https://togithub.com/sidharthv96)
in
[mermaid-js/mermaid#3753
- Live edits for Docs by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3755
- Switch CDN to unpkg.com by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3777
- chore: Housekeeping by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3783
- Pnpm issue reproduction by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3784
- fix(deps): update all non-major dependencies (patch) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3790
- chore: clean up code in mermaidAPI render() and write specs/tests by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3684
- chore(deps): update all non-major dependencies (minor) by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3791
- fix(deps): update dependency rollup to v3 by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3674
- Add GHA that will check links + Fix broken links by
[@&#8203;spier](https://togithub.com/spier) in
[mermaid-js/mermaid#3765
- chore: Merge master to develop by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3780
- bug: change shiki getHighlighter import by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3804
- Fix
[#&#8203;3799](https://togithub.com/mermaid-js/mermaid/issues/3799):
Remove `type` from package.json by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3802
- CI: disable pinning dependencies by
[@&#8203;aloisklink](https://togithub.com/aloisklink) in
[mermaid-js/mermaid#3735
- bug: State diagram fix classes type by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3798
- Remove extra arrow and adjust cross position by
[@&#8203;ishuen](https://togithub.com/ishuen) in
[mermaid-js/mermaid#3641
- comments in states are skipped now by
[@&#8203;avijit1258](https://togithub.com/avijit1258) in
[mermaid-js/mermaid#3762
- feat: Redirect old documentation links. by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3797
- Mindmap integration docs by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3810
- Use `github-dark` to highlight fence blocks in vitepress docs by
[@&#8203;aloisklink](https://togithub.com/aloisklink) in
[mermaid-js/mermaid#3807
- chore(deps): update lycheeverse/lychee-action action to v1.5.4 by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3827
- chore(deps): update pnpm to v7.17.0 by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3828
- feat: Title support via front matter for ER, state, class, git, and
graph diagrams by [@&#8203;MasonM](https://togithub.com/MasonM) in
[mermaid-js/mermaid#3706
- Replace `dagre`/`dagre-d3` with `dagre-d3-es` by
[@&#8203;aloisklink](https://togithub.com/aloisklink) in
[mermaid-js/mermaid#3809
- Add package visualizations by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3823
- [#&#8203;3882](https://togithub.com/mermaid-js/mermaid/issues/3882)
fix for issues with mindmaps with only a single node by
[@&#8203;knsv](https://togithub.com/knsv) in
[mermaid-js/mermaid#3833
- [#&#8203;3778](https://togithub.com/mermaid-js/mermaid/issues/3778)
Adding a hexgon shape by [@&#8203;knsv](https://togithub.com/knsv) in
[mermaid-js/mermaid#3834
- Fix for
[#&#8203;3835](https://togithub.com/mermaid-js/mermaid/issues/3835),
makes it possible to style path elements by
[@&#8203;knsv](https://togithub.com/knsv) in
[mermaid-js/mermaid#3836
- [#&#8203;3831](https://togithub.com/mermaid-js/mermaid/issues/3831)
Re-enabling themes for er diagrams by
[@&#8203;knsv](https://togithub.com/knsv) in
[mermaid-js/mermaid#3837
- (chore) remove console stmt in pieDetector by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3840
- Revert "Added pie" by
[@&#8203;pbrolin47](https://togithub.com/pbrolin47) in
[mermaid-js/mermaid#3842
- Fix typos by [@&#8203;endolith](https://togithub.com/endolith) in
[mermaid-js/mermaid#3820
- (feat) state classDef documentation by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3841
- Integrations added - Visual Studio Code \[Polyglot Interactive
Notebooks] by [@&#8203;dfinke](https://togithub.com/dfinke) in
[mermaid-js/mermaid#3821
- Reduce mermaid size by 31% by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3825
- fix: LintStaged by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3844
- Add official vim plugin to list in integrations by
[@&#8203;craigmac](https://togithub.com/craigmac) in
[mermaid-js/mermaid#3847
- chore(deps): remove dependency on `graphlib` by
[@&#8203;aloisklink](https://togithub.com/aloisklink) in
[mermaid-js/mermaid#3861
- chore(deps): update pnpm to v7.17.1 by
[@&#8203;renovate](https://togithub.com/renovate) in
[mermaid-js/mermaid#3862
- Make gitgraph snapshots consistent in E2E tests by
[@&#8203;aloisklink](https://togithub.com/aloisklink) in
[mermaid-js/mermaid#3860
- Use stylis to prepend idSelector by
[@&#8203;DanInProgress](https://togithub.com/DanInProgress) in
[mermaid-js/mermaid#3829
- Use current mermaid version in docs. by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3846
- Add support for [@&#8203;include](https://togithub.com/include) in
docs by [@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3863
- Housekeeping with eslint-unicorn by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3845
- chore: delete functions not used in diagrams/c4 code (dead code) by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3871
- Switch back to jsdelivr by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3873
- 3882 edge labels by [@&#8203;knsv](https://togithub.com/knsv) in
[mermaid-js/mermaid#3883
- Small fix for issue
[#&#8203;3881](https://togithub.com/mermaid-js/mermaid/issues/3881) by
[@&#8203;knsv](https://togithub.com/knsv) in
[mermaid-js/mermaid#3884
- Defects/issue 3878 by [@&#8203;MrCoder](https://togithub.com/MrCoder)
in
[mermaid-js/mermaid#3880
- chore(docs): Auto build docs by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3547
- docs: refactor Theming doc by
[@&#8203;huynhicode](https://togithub.com/huynhicode) in
[mermaid-js/mermaid#3889
- Feat: Add aria-describedby, aria-roledescription by
[@&#8203;weedySeaDragon](https://togithub.com/weedySeaDragon) in
[mermaid-js/mermaid#3808
- Release/9.3.0 by
[@&#8203;sidharthv96](https://togithub.com/sidharthv96) in
[mermaid-js/mermaid#3911

#### New Contributors

- [@&#8203;revolter](https://togithub.com/revolter) made their first
contribution in
[mermaid-js/mermaid#3657
- [@&#8203;Some-Dood](https://togithub.com/Some-Dood) made their first
contribution in
[mermaid-js/mermaid#3643
- [@&#8203;danangtomo](https://togithub.com/danangtomo) made their first
contribution in
[mermaid-js/mermaid#3679
- [@&#8203;DKurilo](https://togithub.com/DKurilo) made their first
contribution in
[mermaid-js/mermaid#3690
- [@&#8203;devcer](https://togithub.com/devcer) made their first
contribution in
[mermaid-js/mermaid#3604
- [@&#8203;isinek](https://togithub.com/isinek) made their first
contribution in
[mermaid-js/mermaid#3688
- [@&#8203;jeroenekkelkamp](https://togithub.com/jeroenekkelkamp) made
their first contribution in
[mermaid-js/mermaid#3698
- [@&#8203;imgss](https://togithub.com/imgss) made their first
contribution in
[mermaid-js/mermaid#3707
- [@&#8203;jasmaa](https://togithub.com/jasmaa) made their first
contribution in
[mermaid-js/mermaid#3609
- [@&#8203;uttk](https://togithub.com/uttk) made their first
contribution in
[mermaid-js/mermaid#3652
- [@&#8203;CalebUsadi](https://togithub.com/CalebUsadi) made their first
contribution in
[mermaid-js/mermaid#3719
- [@&#8203;marcjansen](https://togithub.com/marcjansen) made their first
contribution in
[mermaid-js/mermaid#3721
- [@&#8203;DarkNami](https://togithub.com/DarkNami) made their first
contribution in
[mermaid-js/mermaid#3729
- [@&#8203;6footGeek](https://togithub.com/6footGeek) made their first
contribution in
[mermaid-js/mermaid#3741
- [@&#8203;hugovk](https://togithub.com/hugovk) made their first
contribution in
[mermaid-js/mermaid#3752
- [@&#8203;raptor0929](https://togithub.com/raptor0929) made their first
contribution in
[mermaid-js/mermaid#3738
- [@&#8203;spier](https://togithub.com/spier) made their first
contribution in
[mermaid-js/mermaid#3760
- [@&#8203;ishuen](https://togithub.com/ishuen) made their first
contribution in
[mermaid-js/mermaid#3641
- [@&#8203;avijit1258](https://togithub.com/avijit1258) made their first
contribution in
[mermaid-js/mermaid#3762
- [@&#8203;MasonM](https://togithub.com/MasonM) made their first
contribution in
[mermaid-js/mermaid#3706
- [@&#8203;endolith](https://togithub.com/endolith) made their first
contribution in
[mermaid-js/mermaid#3820
- [@&#8203;dfinke](https://togithub.com/dfinke) made their first
contribution in
[mermaid-js/mermaid#3821
- [@&#8203;craigmac](https://togithub.com/craigmac) made their first
contribution in
[mermaid-js/mermaid#3847
- [@&#8203;DanInProgress](https://togithub.com/DanInProgress) made their
first contribution in
[mermaid-js/mermaid#3829
- [@&#8203;MrCoder](https://togithub.com/MrCoder) made their first
contribution in
[mermaid-js/mermaid#3880
- [@&#8203;huynhicode](https://togithub.com/huynhicode) made their first
contribution in
[mermaid-js/mermaid#3889

**Full Changelog**:
mermaid-js/mermaid@v9.2.2...v9.3.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://app.renovatebot.com/dashboard#github/BirthdayResearch/contented).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC41NC4yIiwidXBkYXRlZEluVmVyIjoiMzQuNjIuMSJ9-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
tom-blake added a commit to centrapay/centrapay-docs that referenced this pull request Feb 3, 2023
We noticed that the size of ProseCode component javascript was >1MB. This is due
to the mermaid package being so large. Upgrading this library comes with a 31%
size reduction out of the box - mermaid-js/mermaid#3825

Test plan:
- Check the mermaid diagrams are rendering as expected
- Check there are no visual regressions around the mermaid diagrams
- Test on Chrome, Edge, Firefox and Safari
@Yokozuna59 Yokozuna59 deleted the sidv/optimizeSize branch August 11, 2023 19:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants