* develop: (70 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
...
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.
Add script `packages/mermaid/scripts/create-types-from-json-schema.mts`
to automatically generate the TypeScript definition for `MermaidConfig`
from the `MermaidConfig` JSON Schema at
`packages/mermaid/src/schemas/config.schema.yaml`.
To do this, we are using this library
[`json-schema-to-typescript`][1], which is also used by Webpack to
generate their types from their JSON Schema.
In order to make sure that this isn't a breaking change, the script
makes all fields **optional**, as that is what the original typescript
file has.
Additionally, I've put in some custom logic into the script, so that
the exact same order is used for the TypeScript file, to make the
`git diff` easier to review. In the future, we can remove this custom
logic, once we no longer need to worry about `git merge` conflicts.
[1]: https://github.com/bcherny/json-schema-to-typescript