Compare commits

...

2458 Commits

Author SHA1 Message Date
Sidharth Vinod
84a2bf1b58 chore: Fixing eslint 2023-08-22 22:54:09 +05:30
Sidharth Vinod
ef28eb8be1 Merge branch 'next' into sidv/runCodeCov
* next:
  remove duplicate `@types/d3-scale` dev dependency
  chore: Move liveReload code into script.
  Fix minify undefined
  chore: Fix minify
  Fix import
  chore: Fix outfile names
  chore: Add analyzer comment
  chore: Split chunks into folders
  chore: Split chunks into folders
  chore: Add defaultOptions to server
  chore: Split chunks into folders
  chore: IIFE to cSpell
  chore: Minor comments
  chore: Replace Date.now with console.time
  chore: Build at start
  chore: Add build times to live reload
  chore: Add live-reload
  chore: Remove @vitest/coverage-c8
  chore: Add esbuild (Breaking change) mermaid.min.js and mermaid.js will now be IIFE instead of UMD.
2023-08-22 22:49:46 +05:30
Sidharth Vinod
c78573d9aa chore: Bump some deps 2023-08-22 19:01:15 +05:30
Sidharth Vinod
1aeef62db1 chore: Fix variable name, bump cypress action version 2023-08-22 19:00:46 +05:30
Sidharth Vinod
d639d5bdc9 debug: Codecov 2023-08-22 16:53:59 +05:30
Sidharth Vinod
f946c3da06 Merge branch 'develop' into next
* develop:
  chore: Remove circular dependency
  Update docs
  docs: Add frontmatter config demos
  docs: Add frontmatter config docs
  fix: XSS vulnerability
  chore: Minor typo fixes
  chore: Add test with both frontmatter and directive
  Update docs
  feat: Add support for config in frontmatter
  chore: Fix type in assignWithDepth
  refactor: Move `sanitizeDirective` into `addDirective`
  refactor: Rename and cleanup `directiveSanitizer`
2023-08-22 13:58:24 +05:30
Sidharth Vinod
adfed1e432 Merge pull request #4750 from mermaid-js/feature/frontmatterConfig
feat: Support config in frontmatter.
2023-08-22 08:22:59 +00:00
Sidharth Vinod
3944e9ac00 chore: Remove circular dependency 2023-08-22 13:36:32 +05:30
Sidharth Vinod
156fbd1958 Merge branch 'develop' into next
* develop:
  chore: Remove duplicate CI action
  chore: Add circular dependency check in CI
  refactor: Remove circular dependencies
2023-08-22 13:31:59 +05:30
Sidharth Vinod
7e251ee8bc Merge remote-tracking branch 'origin/develop' into feature/frontmatterConfig
* origin/develop:
  chore: Remove duplicate CI action
  chore: Add circular dependency check in CI
  refactor: Remove circular dependencies
2023-08-22 13:30:36 +05:30
Knut Sveidqvist
6e0f41180f Merge pull request #4761 from mermaid-js/sidv/RemoveCircularDeps
Remove Circular Dependencies
2023-08-22 07:37:32 +00:00
Sidharth Vinod
52f05552a1 chore: Remove duplicate CI action 2023-08-22 11:42:12 +05:30
Sidharth Vinod
bb01b3972d chore: Add circular dependency check in CI 2023-08-22 11:38:55 +05:30
Sidharth Vinod
1a50a326cb refactor: Remove circular dependencies 2023-08-22 11:38:25 +05:30
Sidharth Vinod
7dd0d126e2 Merge branch 'develop' into next
* develop:
  deps: Update unocss and webpack to address vulnerability.
  chore(deps): update all patch dependencies
  ci(release-drafter): add more release notes categories
2023-08-22 10:21:13 +05:30
Sidharth Vinod
fd45dbfc14 Merge branch 'develop' into feature/frontmatterConfig 2023-08-21 14:18:12 +00:00
sidharthv96
5c9eafabae Update docs 2023-08-21 09:36:24 +00:00
Sidharth Vinod
2b9dc0ea80 docs: Add frontmatter config demos 2023-08-21 15:02:29 +05:30
Sidharth Vinod
8ac7dc81e0 docs: Add frontmatter config docs 2023-08-21 15:02:05 +05:30
Sidharth Vinod
2967b3c1bb fix: XSS vulnerability 2023-08-21 14:25:25 +05:30
Sidharth Vinod
534fd85339 chore: Minor typo fixes 2023-08-21 12:53:29 +05:30
Sidharth Vinod
7298008374 Merge branch 'feature/frontmatterConfig' of https://github.com/mermaid-js/mermaid into feature/frontmatterConfig
* 'feature/frontmatterConfig' of https://github.com/mermaid-js/mermaid:
  Update docs
2023-08-21 12:30:23 +05:30
Sidharth Vinod
844a175039 chore: Add test with both frontmatter and directive 2023-08-21 12:30:04 +05:30
sidharthv96
fd35a54735 Update docs 2023-08-21 06:43:15 +00:00
Sidharth Vinod
a6e6c3fb18 feat: Add support for config in frontmatter 2023-08-21 12:09:38 +05:30
Sidharth Vinod
31c0a0cbab deps: Update unocss and webpack to address vulnerability. 2023-08-21 10:26:41 +05:30
Sidharth Vinod
767baa4ec6 chore: Fix type in assignWithDepth 2023-08-21 10:18:23 +05:30
Sidharth Vinod
f422a66dde refactor: Move sanitizeDirective into addDirective 2023-08-21 10:17:55 +05:30
Sidharth Vinod
fae976e994 refactor: Rename and cleanup directiveSanitizer 2023-08-21 10:13:48 +05:30
Sidharth Vinod
f4c62436ea Merge pull request #4753 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2023-08-21 03:53:05 +00:00
renovate[bot]
21d0998db8 chore(deps): update all patch dependencies 2023-08-21 03:01:21 +00:00
Sidharth Vinod
0899f7918a Merge pull request #4752 from mermaid-js/chore/add-more-release-notes-categories
ci(release-drafter): add more release notes categories
2023-08-21 02:55:59 +00:00
Alois Klink
7a547abd89 ci(release-drafter): add more release notes categories
Add the following new categories to the release notes:
  - **BREAKING CHANGES**
  - Performance
  - Documentation

I've also made the `feature`, `fix`, and `chore` label point to
their appropriate section.
2023-08-20 23:42:18 +01:00
Sidharth Vinod
8678ceeb3c Merge pull request #4749 from Yokozuna59/remove-duplicate-dev-dependency
remove duplicate `@types/d3-scale` dev dependency
2023-08-20 15:38:50 +00:00
Reda Al Sulais
9cb62f4d2e remove duplicate @types/d3-scale dev dependency 2023-08-20 18:20:06 +03:00
Sidharth Vinod
fd731c5ccd Merge branch 'develop' into next
* develop: (56 commits)
  chore: Add comments on redirectMaps
  remove `chart` from `pie.spec.ts` description
  Update docs
  change `defaultConfig` type to `RequiredDeep` and use it in `pieDb`
  use `DiagramStylesProvider` in `pieStyles.ts`
  remove `setConfig` and `resetConfig` in pie
  add `structuredClone` in pie `getConfig`
  cleanAndMerge pieConfig
  remove cleanClone
  feat: Add cleanAndMerge and tests
  chore: Rename utils.spec.ts
  move db assignment from `beforeEach` to `beforeAll`
  create `structuredCleanClone` helper function
  add more types to pieRenderer
  add `resetConfig` to `clear` in pieDb
  rename `reset` to `resetConfig`
  use `structedClone` in `pieDb`
  remove `PieDiagramConfig` and import generated one
  remove unnecessary lines in pie files
  remove unused `HTML` import in pieRenderer
  ...
2023-08-20 20:28:52 +05:30
Sidharth Vinod
72fa3488b5 Merge pull request #4501 from Yokozuna59/standardized-pie-definitions
standardized pie definitions
2023-08-20 14:56:42 +00:00
Sidharth Vinod
cfffba2817 chore: Add comments on redirectMaps 2023-08-20 00:59:58 +05:30
Reda Al Sulais
222d8eed4e Merge remote-tracking branch 'upstream/develop' into next
Signed-off-by: Reda Al Sulais <u.yokozuna@gmail.com>
2023-08-19 16:20:13 +03:00
Reda Al Sulais
e7ee3eb9ea Merge branch 'develop' into standardized-pie-definitions 2023-08-19 01:07:55 +03:00
Nikolay Rozhkov
b85c011cd1 Merge pull request #4742 from nirname/docs/2910_small-fixes
Fixes to Docs sidebar, main page and badges
2023-08-17 17:59:12 +00:00
Nikolay Rozhkov
aec97d68cc Fixed wrong collapsible option at the left menu, updated vue
Fixed badges

Rely on classes instead of DOM structure

Prettier

Update docs
2023-08-17 16:37:22 +03:00
Sidharth Vinod
718d52a72c chore: Move liveReload code into script. 2023-08-17 14:30:47 +05:30
Sidharth Vinod
fe1a06271a Fix minify undefined 2023-08-17 12:55:25 +05:30
Sidharth Vinod
bd2370555b Merge branch 'develop' into next
* develop:
  chore: Move SVG import to comment.
  build docs
  Remove whitespace on empty line
  Documentation for #2509
2023-08-17 12:18:40 +05:30
Sidharth Vinod
86c9ee4e90 Merge pull request #4733 from mermaid-js/sidv/splitChunks
Split chunks into individual dirs
2023-08-17 06:47:23 +00:00
Sidharth Vinod
7b7e281ec7 Merge pull request #4740 from jason-curtis/issue-2509-subgraph-direction-limitation
Documentation for #2509
2023-08-17 04:57:56 +00:00
Sidharth Vinod
35cc34d422 chore: Move SVG import to comment. 2023-08-17 10:28:50 +05:30
Jason Curtis
edb6ceae43 build docs 2023-08-17 03:48:00 +00:00
Jason Curtis
ef8b75a6da Remove whitespace on empty line 2023-08-17 03:32:42 +00:00
Sidharth Vinod
b26bcf1343 chore: Fix minify 2023-08-17 08:22:00 +05:30
Sidharth Vinod
5d5c6275f9 Merge branch 'develop' into next
* develop:
  Update all minor dependencies
  Update all patch dependencies
  make more `RectData` required and remove optional assignment
  use lineBreakRegex in `svgDrawCommon`
  fix svgDrawCommon import by adding `.js`
  add types to `svgDrawCommon.ts`
  convert `svgDrawCommon` to TS
2023-08-17 08:20:11 +05:30
Reda Al Sulais
02daf5417b Merge branch 'standardized-pie-definitions' of https://github.com/Yokozuna59/mermaid into standardized-pie-definitions 2023-08-17 02:22:12 +03:00
Reda Al Sulais
77d8e15dc4 remove chart from pie.spec.ts description 2023-08-17 02:21:15 +03:00
Yokozuna59
62142089f1 Update docs 2023-08-16 22:47:51 +00:00
Reda Al Sulais
defe40692a change defaultConfig type to RequiredDeep and use it in pieDb 2023-08-17 01:42:41 +03:00
Jason Curtis
337ff3c32b Documentation for #2509 2023-08-16 21:12:32 +00:00
Sidharth Vinod
9c1a47d1fc Merge pull request #4729 from mermaid-js/sidv/esbuildV11
Use ESBuild (replaces UMD with IIFE bundle)
2023-08-16 12:06:07 +00:00
Reda Al Sulais
744cc792f4 Merge branch 'develop' into standardized-pie-definitions 2023-08-15 23:27:03 +03:00
Reda Al Sulais
99978da55b Merge pull request #4724 from Yokozuna59/chore/convert-svgDrawCommon-to-ts
convert `diagrams/common/svgDrawCommon.js` to ts
2023-08-15 16:41:11 +00:00
Reda Al Sulais
50eb3cf1c9 Merge branch 'develop' into chore/convert-svgDrawCommon-to-ts 2023-08-15 19:37:02 +03:00
Reda Al Sulais
c1b9c54fc9 use DiagramStylesProvider in pieStyles.ts 2023-08-15 17:56:18 +03:00
Reda Al Sulais
0d179c501e Merge branch 'develop' into standardized-pie-definitions 2023-08-15 14:01:09 +03:00
Sidharth Vinod
085e8f78b3 Merge pull request #4731 from mermaid-js/renovate/patch-all-patch
Update all patch dependencies (patch)
2023-08-14 11:05:49 +00:00
Sidharth Vinod
f9d4a62609 Merge pull request #4732 from mermaid-js/renovate/all-minor
Update all minor dependencies (minor)
2023-08-14 11:04:27 +00:00
Sidharth Vinod
13852b7f4e Fix import 2023-08-14 09:24:34 +05:30
Sidharth Vinod
4fd7a88a15 chore: Fix outfile names 2023-08-14 08:52:56 +05:30
renovate[bot]
2a8374312f Update all minor dependencies 2023-08-14 03:07:45 +00:00
Sidharth Vinod
5c2a6b5eb1 chore: Add analyzer comment 2023-08-14 08:37:02 +05:30
Sidharth Vinod
9cbebbb8a0 chore: Split chunks into folders 2023-08-14 08:35:49 +05:30
Sidharth Vinod
e26d987c4e chore: Split chunks into folders 2023-08-14 08:34:11 +05:30
Sidharth Vinod
53669efaf8 chore: Add defaultOptions to server 2023-08-14 08:30:51 +05:30
Sidharth Vinod
b68f45ef59 chore: Split chunks into folders 2023-08-14 08:27:14 +05:30
renovate[bot]
b60410161d Update all patch dependencies 2023-08-14 02:02:28 +00:00
Sidharth Vinod
8f44de651b chore: IIFE to cSpell 2023-08-14 00:55:48 +05:30
Sidharth Vinod
2ede244da0 chore: Minor comments
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-08-14 00:55:48 +05:30
Sidharth Vinod
77a181978e chore: Replace Date.now with console.time
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-08-14 00:55:48 +05:30
Sidharth Vinod
170bbce0d3 chore: Build at start 2023-08-14 00:55:41 +05:30
Sidharth Vinod
fc99d9be41 chore: Add build times to live reload 2023-08-14 00:55:41 +05:30
Sidharth Vinod
9fb9bed806 chore: Add live-reload 2023-08-14 00:55:34 +05:30
Sidharth Vinod
01b2f80a95 chore: Remove @vitest/coverage-c8 2023-08-14 00:54:33 +05:30
Sidharth Vinod
da7ff777d1 chore: Add esbuild (Breaking change)
mermaid.min.js and mermaid.js will now be IIFE instead of UMD.
2023-08-14 00:52:45 +05:30
Reda Al Sulais
d219f92a19 Merge branch 'develop' into chore/convert-svgDrawCommon-to-ts 2023-08-13 17:45:37 +03:00
Reda Al Sulais
3f3a7340e3 remove setConfig and resetConfig in pie 2023-08-12 21:18:07 +03:00
Reda Al Sulais
cb5f70c139 add structuredClone in pie getConfig 2023-08-12 21:09:14 +03:00
Reda Al Sulais
99c1758490 make more RectData required and remove optional assignment 2023-08-12 20:25:10 +03:00
Sidharth Vinod
43217e1395 Merge branch 'master' into develop
* master:
  Version update and adjusted error diagram
  Fix for broker error diagram related #4178
  Adding new flowchart tests related to issue #2139
  Fix for interim issue with classes in state diagrams
  #2139 Applying user defined classes properly when calculating shape width
  chore: Ignore localhost
  Update packages/mermaid/src/docs/community/development.md
  Update docs/community/development.md
  docs: Add development example page.
2023-08-12 17:04:25 +05:30
Sidharth Vinod
aa34b99203 Merge remote-tracking branch 'origin/release/10.3.1'
* origin/release/10.3.1: (85 commits)
  Version update and adjusted error diagram
  Fix for broker error diagram related #4178
  Adding new flowchart tests related to issue #2139
  Fix for interim issue with classes in state diagrams
  use default export in `error` diagram
  create `ParserDefinition` type
  standardized `error` diagram'
  #2139 Applying user defined classes properly when calculating shape width
  style: format packages/mermaid/src/config.type.ts
  build(types): use prettier conf on config.types.ts
  Syntax Update CONTRIBUTING.md
  docs: Correct detectType filename
  chore: Minor cleanups
  chore: remove comment
  chore: Remove comments, cleanup
  fix!(deps): fix zenuml style leakage. update @zenuml/core to ^3.0.6 to fix the style leakage.
  Update selectSvgElement.ts
  create `Group` type
  Add specialChars in textNoTagsToken, alphaNumToken
  Return Unicode Text to idStringToken definition
  ...
2023-08-12 17:04:06 +05:30
Reda Al Sulais
541ee1eade Merge remote-tracking branch 'upstream/develop' into chore/convert-svgDrawCommon-to-ts 2023-08-11 23:07:45 +03:00
Reda Al Sulais
f01ad644e3 Merge remote-tracking branch 'upstream/develop' into standardized-pie-definitions
Signed-off-by: Reda Al Sulais <u.yokozuna@gmail.com>
2023-08-11 22:44:05 +03:00
Reda Al Sulais
9538233573 use lineBreakRegex in svgDrawCommon 2023-08-11 21:16:53 +03:00
Reda Al Sulais
5a2ea7c297 fix svgDrawCommon import by adding .js 2023-08-11 21:13:17 +03:00
Reda Al Sulais
22b172d873 add types to svgDrawCommon.ts 2023-08-11 20:56:00 +03:00
Reda Al Sulais
92098e23eb convert svgDrawCommon to TS 2023-08-11 20:54:39 +03:00
Sidharth Vinod
591cb794eb Merge pull request #4717 from Yokozuna59/chore/convert-assignWithDepth-to-ts
convert `assignWithDepth` to TS
2023-08-11 17:32:40 +00:00
Reda Al Sulais
f9d978859e Merge branch 'develop' into standardized-pie-definitions 2023-08-11 19:56:22 +03:00
Reda Al Sulais
6170538c47 Merge branch 'develop' into chore/convert-assignWithDepth-to-ts 2023-08-11 19:54:57 +03:00
Reda Al Sulais
c37c494a1e Update assignWithDepth.ts 2023-08-11 19:54:37 +03:00
Knut Sveidqvist
a0b80f5490 Version update and adjusted error diagram 2023-08-11 14:03:56 +02:00
Knut Sveidqvist
493023118f Fix for broker error diagram related #4178 2023-08-11 13:59:16 +02:00
Knut Sveidqvist
c5e7e6040c Adding new flowchart tests related to issue #2139 2023-08-11 13:58:19 +02:00
Knut Sveidqvist
c938c7a438 Fix for interim issue with classes in state diagrams 2023-08-11 13:57:26 +02:00
Knut Sveidqvist
c7bcf72c69 Merge branch 'develop' into release/10.4.0 2023-08-11 11:46:30 +02:00
Sidharth Vinod
da602add5d Merge pull request #4697 from mermaid-js/sidv/fixTripleParsing
fix: Remove triple parsing of diagrams
2023-08-11 15:14:33 +05:30
Knut Sveidqvist
9049a99c8d Merge pull request #4722 from mermaid-js/2139-handling-styling-properly-when-calculating-width
#2139 Applying user defined classes properly when calculating shape width
2023-08-11 09:58:29 +02:00
Knut Sveidqvist
60957519c8 Merge branch 'develop' into release/10.4.0 2023-08-11 09:43:58 +02:00
Reda Al Sulais
8a8e062342 cleanAndMerge pieConfig 2023-08-11 03:55:04 +03:00
Reda Al Sulais
1721282182 Merge branch 'develop' into standardized-pie-definitions 2023-08-11 01:46:33 +03:00
Reda Al Sulais
d8dd68cad2 redeclare config parameter add default value for each variable 2023-08-11 01:42:26 +03:00
Reda Al Sulais
9b9ad1da7d Merge pull request #4718 from Yokozuna59/chore/standardized-error-definitions
standardized `error` diagram
2023-08-10 22:35:02 +00:00
Reda Al Sulais
0d380bb2c7 Merge branch 'develop' into chore/standardized-error-definitions 2023-08-11 01:24:47 +03:00
Reda Al Sulais
120bdabee1 Merge branch 'develop' into standardized-pie-definitions 2023-08-11 01:04:06 +03:00
Reda Al Sulais
9ab048c7e9 use default export in error diagram 2023-08-11 00:55:31 +03:00
Reda Al Sulais
a5a3ffc768 Merge pull request #2 from mermaid-js/sidv/cleanMerge
Sidv/clean merge
2023-08-11 00:49:38 +03:00
Sidharth Vinod
1078b1c8f6 Merge pull request #4719 from Yokozuna59/chore/create-ParserDefinition-type
create `ParserDefinition` type
2023-08-10 21:35:57 +00:00
Sidharth Vinod
dfeb25127b remove cleanClone 2023-08-11 02:50:24 +05:30
Sidharth Vinod
396bda8d95 feat: Add cleanAndMerge and tests 2023-08-11 02:47:46 +05:30
Sidharth Vinod
cc70d37166 chore: Rename utils.spec.ts 2023-08-11 02:38:57 +05:30
Reda Al Sulais
3f5da06bb0 move db assignment from beforeEach to beforeAll 2023-08-10 22:43:39 +03:00
Reda Al Sulais
be106befff create structuredCleanClone helper function 2023-08-10 23:10:06 +03:00
Reda Al Sulais
980a5ac8b5 create ParserDefinition type 2023-08-10 22:26:04 +03:00
Reda Al Sulais
d5f11fc80a convert assignWithDepth to TS 2023-08-10 22:09:14 +03:00
Reda Al Sulais
46de343785 standardized error diagram'
* remove empty `styles.js`
* use named imports/exports instead of default
* remove unnecessary data in diagram definition
2023-08-10 22:07:39 +03:00
Reda Al Sulais
c4113541e1 Merge remote-tracking branch 'upstream/develop' into standardized-pie-definitions 2023-08-10 21:44:29 +03:00
Reda Al Sulais
fb49f25eef add more types to pieRenderer 2023-08-10 21:36:39 +03:00
Reda Al Sulais
a9681d1b1c add resetConfig to clear in pieDb 2023-08-10 21:19:56 +03:00
Reda Al Sulais
545d361d3f rename reset to resetConfig 2023-08-10 21:01:32 +03:00
Sidharth Vinod
66b579cd89 Merge pull request #4715 from aloisklink/chore/use-our-prettier-config-for-types
Use our prettier config on the `packages/mermaid/src/config.type.ts` file
2023-08-10 14:36:03 +00:00
Knut Sveidqvist
c55a0947be #2139 Applying user defined classes properly when calculating shape width 2023-08-10 13:15:16 +02:00
Alois Klink
0b9f6d1ff9 style: format packages/mermaid/src/config.type.ts
Run `pnpm run --filter mermaid types:build-config` to format
the `packages/mermaid/src/config.type.ts` file with the new prettier
config.
2023-08-09 19:22:30 +01:00
Alois Klink
7742a6c485 build(types): use prettier conf on config.types.ts
Currently, the `packages/mermaid/src/config.type.ts` types file
(auto-generated via `pnpm run --filter mermaid types:build-config`)
uses the default prettier config.

Instead, we should use the prettier config in the Mermaid repo, as it's
slightly different from the default prettier config.
2023-08-09 19:15:09 +01:00
Nikolay Rozhkov
3e598f4e8e Merge pull request #4714 from mermaid-js/sidv/exampleDev
docs: Add development example page.
2023-08-09 17:08:29 +03:00
Sidharth Vinod
eb397fdb04 Merge branch 'sidv/exampleDev' of https://github.com/mermaid-js/mermaid into sidv/exampleDev
* 'sidv/exampleDev' of https://github.com/mermaid-js/mermaid:
  Update packages/mermaid/src/docs/community/development.md
  Update docs/community/development.md
2023-08-09 19:00:01 +05:30
Sidharth Vinod
6c1afb7a8d chore: Ignore localhost 2023-08-09 18:59:55 +05:30
Sidharth Vinod
fee6f459a8 Update packages/mermaid/src/docs/community/development.md 2023-08-09 17:44:49 +05:30
Sidharth Vinod
e128a11f3b Update docs/community/development.md 2023-08-09 17:44:24 +05:30
Reda Al Sulais
38dc17f426 use structedClone in pieDb 2023-08-09 14:12:08 +03:00
Reda Al Sulais
453c67e5ea remove PieDiagramConfig and import generated one 2023-08-09 13:47:08 +03:00
Reda Al Sulais
a69a97fdd9 remove unnecessary lines in pie files 2023-08-09 13:41:01 +03:00
Reda Al Sulais
820cc48c11 Merge remote-tracking branch 'upstream/develop' into standardized-pie-definitions 2023-08-09 13:31:34 +03:00
Sidharth Vinod
06e4a6398c docs: Add development example page. 2023-08-09 14:59:50 +05:30
Sidharth Vinod
85a988c31c Merge pull request #4713 from soomrozaid/soomrozaid-patch-1
Syntax Update CONTRIBUTING.md
2023-08-09 07:58:58 +00:00
Zaid Soomro
776035553a Syntax Update CONTRIBUTING.md 2023-08-09 01:04:04 -06:00
Reda Al Sulais
ca1cdb1d94 remove unused HTML import in pieRenderer 2023-08-08 19:00:27 +03:00
Reda Al Sulais
5485517b27 remove SVG import logs in setupGraphViewbox 2023-08-08 18:55:46 +03:00
Reda Al Sulais
96380600d9 Merge remote-tracking branch 'upstream/develop' into standardized-pie-definitions 2023-08-08 15:02:23 +03:00
Sidharth Vinod
da8112afa5 Merge branch 'develop' into sidv/fixTripleParsing
* develop: (59 commits)
  fix!(deps): fix zenuml style leakage. update @zenuml/core to ^3.0.6 to fix the style leakage.
  Update selectSvgElement.ts
  create `Group` type
  Add specialChars in textNoTagsToken, alphaNumToken
  Return Unicode Text to idStringToken definition
  Add underscore to unit test on special Chars
  Revert to old docs concerning quotations marks in string
  Refactor unit tests and remove repetition
  Correct idStringToken definition to include all individual special tokens
  Add unit tests for node ids with special Chars
  Create lychee.toml
  create `selectSvgElement`
  change `svgElem` to `SVG` in `configureSvgSize`
  add `configureSvgSize` in infoRenderer
  run docs:build
  remove info sandbox test case
  Remove replaceAll method in addLink
  Modify HREF token regex to contain space
  Add unit tests for stange node names
  Remove escaped quotes with backslash feature
  ...
2023-08-08 13:37:02 +05:30
Sidharth Vinod
bae9a7c1b8 docs: Correct detectType filename 2023-08-08 11:13:45 +05:30
Sidharth Vinod
776b219c03 chore: Minor cleanups 2023-08-08 00:31:17 +05:30
Sidharth Vinod
4471001ef2 chore: remove comment
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-08-08 00:24:38 +05:30
Sidharth Vinod
bcb0817ecd Merge pull request #4705 from danshuitaihejie/fix_zenuml_style_leakage
fix!(deps): fix zenuml style leakage.
2023-08-07 18:50:03 +00:00
Sidharth Vinod
646f7662d0 chore: Remove comments, cleanup
Co-authored-by: Alois Klink <alois@aloisklink.com>
Co-authored-by: Nikolay Rozhkov <nironame@gmail.com>
Co-authored-by: Yokozuna59 <u.yokozuna@gmail.com>
2023-08-07 15:12:37 +05:30
Reda Al Sulais
9563b22132 refactor pieRenderer 2023-08-06 21:23:42 +03:00
danshuitaihejie
6df76d93e5 fix!(deps): fix zenuml style leakage.
update @zenuml/core to ^3.0.6 to fix the style leakage.
2023-08-07 00:21:57 +08:00
Reda Al Sulais
e6a18eea91 Merge remote-tracking branch upstream/develop into standardized-pie-definitions 2023-08-06 18:30:51 +03:00
Reda Al Sulais
7da38b9afe Merge pull request #4514 from Yokozuna59/resolve-info-html-assignment
resolve info `HTML` and `Document` assignment
2023-08-06 15:16:00 +00:00
Reda Al Sulais
71205f5bd6 Merge branch 'mermaid-js:develop' into standardized-pie-definitions 2023-08-05 21:33:03 +03:00
Reda Al Sulais
1802f5d0c0 Update selectSvgElement.ts 2023-08-05 20:45:23 +03:00
Reda Al Sulais
ef29388d68 Merge branch 'develop' into resolve-info-html-assignment 2023-08-05 19:03:35 +03:00
Nikolay Rozhkov
e1379ee048 Merge pull request #4657 from ibrahimWassouf/bug/4645_graph_node_containing_keyword
Bug/4645 graph node containing keyword
2023-08-05 15:56:32 +00:00
Reda Al Sulais
4845635f48 create Group type 2023-08-05 16:00:06 +03:00
Ibrahim Wassouf
34bf618ecb Merge branch 'develop' into bug/4645_graph_node_containing_keyword 2023-08-03 20:25:51 -04:00
Ibrahim Wassouf
c9db0ee749 Add specialChars in textNoTagsToken, alphaNumToken
This will ensure that alphaNumToken does not lose any of
the previously used tokens in its definition. The same
tokens were added to textNoTagsToken explicitly, because it used to
have alphaNumToken in its definition before I removed it.

Previously, textNoTagsToken and alphaNumToken had many tokens in
common in their definition. To avoid grammar conflicts, the
alphaNumStatement grammar was created. However, I found this
unintuitive and was an extra step just to avoid repetition in
the definitions.

I opted to have repetition in the definitions of textNoTagsToken
and alphaNumToken and it be explicitly clear right away, rather than
have extra grammar statements like alphaNumStatement which don't look
like they do anything at first glance
2023-08-03 21:05:41 -03:00
Ibrahim Wassouf
850513fa3d Return Unicode Text to idStringToken definition 2023-08-03 20:58:37 -03:00
Ibrahim Wassouf
aaf333676c Add underscore to unit test on special Chars 2023-08-03 20:15:11 -03:00
Ibrahim Wassouf
5a165e4c1d Revert to old docs concerning quotations marks in string 2023-08-03 20:11:50 -03:00
Ibrahim Wassouf
ee6fa94aa2 Refactor unit tests and remove repetition 2023-08-03 20:05:11 -03:00
Reda Al Sulais
23b6d53f80 Merge branch 'standardized-pie-definitions' of https://github.com/Yokozuna59/mermaid into standardized-pie-definitions 2023-08-04 01:33:29 +03:00
Reda Al Sulais
f4671e4e3a Merge branch 'mermaid-js:develop' into standardized-pie-definitions 2023-08-04 01:32:12 +03:00
Ibrahim Wassouf
971215e353 Correct idStringToken definition to include all individual special tokens 2023-08-03 19:15:23 -03:00
Ibrahim Wassouf
199fdce982 Add unit tests for node ids with special Chars 2023-08-03 18:59:39 -03:00
Reda Al Sulais
90c8dd1dab Merge branch 'develop' into resolve-info-html-assignment 2023-08-04 00:42:55 +03:00
Sidharth Vinod
f8ebfeefec Merge pull request #4699 from mermaid-js/lychee-config
Lychee config
2023-08-03 19:13:59 +00:00
Matthieu MOREL
8db2fb8f90 Create lychee.toml
Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2023-08-03 19:04:24 +00:00
Reda Al Sulais
e2fac72166 create selectSvgElement 2023-08-03 21:34:22 +03:00
Reda Al Sulais
c954e0eb1d rename styles.ts into pieStyles.ts 2023-08-03 21:00:22 +03:00
Reda Al Sulais
de37efefd7 add type for PieStyleOptions 2023-08-03 20:58:39 +03:00
Reda Al Sulais
bdfd8974d4 change default useWidth in pie to 984 2023-08-03 20:56:18 +03:00
Sidharth Vinod
95efc1786f fix: unitTests after tripleParsing removal 2023-08-03 23:21:49 +05:30
Reda Al Sulais
0c55e4c2ad Merge branch 'develop' into resolve-info-html-assignment 2023-08-03 20:44:29 +03:00
Sidharth Vinod
10d5b5d1d6 fix: Remove triple parsing of diagrams 2023-08-03 22:54:37 +05:30
Sidharth Vinod
23fea41fb4 Merge branch 'master' into develop
* master:
  fix: #4676 redirect fix
  fix style in contributors section of intro
  add latest blog post
2023-08-03 22:16:17 +05:30
Reda Al Sulais
a4f778f4de change svgElem to SVG in configureSvgSize 2023-08-03 15:55:05 +03:00
Reda Al Sulais
bb6664a2c6 add configureSvgSize in infoRenderer 2023-08-03 15:47:31 +03:00
Sidharth Vinod
939d082a8e Merge pull request #4668 from mermaid-js/latest-news
Docs: add latest blog post
2023-08-02 23:52:50 +05:30
Steph
b26449f338 Merge branch 'master' into latest-news 2023-08-02 11:18:28 -07:00
Reda Al Sulais
b99eb8b624 run docs:build 2023-08-02 16:30:55 +03:00
Reda Al Sulais
ffdfe11f10 Merge branch 'develop' into resolve-info-html-assignment 2023-08-02 16:26:15 +03:00
Reda Al Sulais
7465384e1d remove info sandbox test case 2023-08-02 16:18:21 +03:00
Reda Al Sulais
aecf451ed1 update pnpm-lock.yaml 2023-08-02 15:55:02 +03:00
Reda Al Sulais
7d69ad2d5b Merge remote-tracking branch upstream/develop into standardized-pie-definitions 2023-08-02 15:54:23 +03:00
Reda Al Sulais
74fa9956a3 run pnpm lint:fix 2023-08-02 15:46:18 +03:00
Reda Al Sulais
e33340331a add type-fest to mermaid dev deps 2023-08-02 15:44:44 +03:00
Sidharth Vinod
bdd9394d0b Merge pull request #4693 from mermaid-js/sidv/fix/4676
fix: #4676 redirect fix
2023-08-02 09:40:37 +05:30
Sidharth Vinod
7ebfc272e4 fix: #4676 redirect fix 2023-08-02 09:36:40 +05:30
Sidharth Vinod
b87f1f2098 Merge pull request #4692 from mermaid-js/dependabot/npm_and_yarn/pnpm-8.6.8
build(deps-dev): bump pnpm from 8.3.1 to 8.6.8
2023-08-02 03:08:17 +00:00
Sidharth Vinod
c9c2f6c121 Merge pull request #4677 from djadmin/chore_dompurify_unpin_dependency
chore(deps): unpin the dompurify dependency
2023-08-02 03:06:18 +00:00
Sidharth Vinod
585834c561 Merge pull request #4689 from Incognito/chore/4678_misleading-ts-ignore-comment
chore: ts-ignore comment was misleading, JISON doesn't support types
2023-08-02 03:05:51 +00:00
Ibrahim Wassouf
dc57fcf7e7 Remove replaceAll method in addLink 2023-08-01 16:46:37 -03:00
dependabot[bot]
8b79060829 build(deps-dev): bump pnpm from 8.3.1 to 8.6.8
Bumps [pnpm](https://github.com/pnpm/pnpm) from 8.3.1 to 8.6.8.
- [Release notes](https://github.com/pnpm/pnpm/releases)
- [Commits](https://github.com/pnpm/pnpm/compare/v8.3.1...v8.6.8)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-01 17:07:15 +00:00
Ibrahim Wassouf
daf43f8d34 Merge branch 'develop' into bug/4645_graph_node_containing_keyword 2023-08-01 11:07:25 -04:00
Brian Graham
4cdb43f791 ts-ignore comment was misleading, JISON doesn't support types 2023-08-01 14:30:58 +02:00
Sidharth Vinod
660162686b Merge pull request #4681 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2023-08-01 12:16:41 +00:00
Sidharth Vinod
6e2bf00a43 Merge pull request #4688 from Incognito/docs/4659_new-diagrams-no-directives
Docs: Directives not needed in new diagrams as yaml formatter does this for all new diagrams
2023-08-01 12:16:20 +00:00
Brian Graham
cc01ff9129 Directives not needed in new diagrams as yaml formatter does this for all new diagrams 2023-08-01 14:08:41 +02:00
Ibrahim Wassouf
7dc985712a Merge branch 'develop' into bug/4645_graph_node_containing_keyword 2023-08-01 06:59:12 -04:00
Ibrahim Wassouf
e3c5e6f095 Modify HREF token regex to contain space
This attempts to maintain the current behaviour.
Previously, because HREF contained a space and called
a state, the href token was able to be placed in the
beginning of node ids (because it wouldn't conflict
without the space). We require the space to keep that
behaviour.
2023-08-01 07:54:48 -03:00
Ibrahim Wassouf
ef4f22841f Add unit tests for stange node names 2023-08-01 07:54:32 -03:00
renovate[bot]
c292c897a1 chore(deps): update all patch dependencies 2023-08-01 08:42:21 +00:00
Alois Klink
cc7fd337ac Merge pull request #4687 from mermaid-js/dependabot/npm_and_yarn/vite-4.3.9
build(deps-dev): bump vite from 4.3.3 to 4.3.9
2023-08-01 08:28:15 +00:00
Alois Klink
6b41420ddd Merge pull request #4686 from mermaid-js/dependabot/npm_and_yarn/braintree/sanitize-url-6.0.1
build(deps): bump @braintree/sanitize-url from 6.0.0 to 6.0.1
2023-08-01 08:27:58 +00:00
Alois Klink
351b229c37 Merge pull request #4685 from mermaid-js/dependabot/npm_and_yarn/json5-2.2.3
build(deps-dev): bump json5 from 2.2.1 to 2.2.3
2023-08-01 08:27:48 +00:00
dependabot[bot]
266a5e8133 build(deps-dev): bump vite from 4.3.3 to 4.3.9
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 4.3.3 to 4.3.9.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v4.3.9/packages/vite)

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

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-01 06:38:37 +00:00
dependabot[bot]
55963107d0 build(deps): bump @braintree/sanitize-url from 6.0.0 to 6.0.1
Bumps [@braintree/sanitize-url](https://github.com/braintree/sanitize-url) from 6.0.0 to 6.0.1.
- [Changelog](https://github.com/braintree/sanitize-url/blob/main/CHANGELOG.md)
- [Commits](https://github.com/braintree/sanitize-url/compare/v6.0.0...v6.0.1)

---
updated-dependencies:
- dependency-name: "@braintree/sanitize-url"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-01 06:38:16 +00:00
dependabot[bot]
a7e37d0c8b build(deps-dev): bump json5 from 2.2.1 to 2.2.3
Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-08-01 06:36:36 +00:00
Sidharth Vinod
ead48600be Merge pull request #4682 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2023-08-01 06:28:51 +00:00
Ibrahim Wassouf
834c67ecaa Remove escaped quotes with backslash feature 2023-07-31 22:47:05 -03:00
renovate[bot]
1a99825ab2 chore(deps): update all minor dependencies 2023-07-31 01:25:54 +00:00
Ibrahim Wassouf
b5456813e8 Show escaped quotes in docs using old and new method 2023-07-29 22:44:18 -03:00
Ibrahim Wassouf
ed4feaebf2 Remove required space from TAGEND token regex
Originally, I thought this was necessary to prevent parsing
the token as part of an edge. I forgot that the token will always
be separated from the link/edge by the node id. Added an unit test
for an edge case to be certain.
2023-07-29 22:27:31 -03:00
Ibrahim Wassouf
844f9d96e7 Update and add new imgSnapshotTest 2023-07-29 22:16:28 -03:00
Ibrahim Wassouf
bed05ce061 Disallow any vertex shape start or end token in any text state 2023-07-29 21:23:05 -03:00
Ibrahim Wassouf
f269f8cc5b Refactor unit tests for vertex shape 2023-07-29 21:14:02 -03:00
Ibrahim Wassouf
e25763d645 Modified docs to mention escaping quotes with backslash 2023-07-28 21:19:30 -03:00
Dheeraj Joshi
6c12bbb80f chore(deps): unpin the dompurify dependency 2023-07-28 16:02:17 +05:30
Ibrahim Wassouf
d8897426cd Correct edge strings to have same configuration as vertex strings 2023-07-27 09:29:26 -03:00
Ibrahim Wassouf
9eed2e278b Add imgSnapshotTest for escaped quotes 2023-07-27 09:29:26 -03:00
Ibrahim Wassouf
1df68f9a5f Remove class statement to show application of default class 2023-07-27 09:29:26 -03:00
Sidharth Vinod
1397a873c2 Merge pull request #4670 from keer4n/docs/fix-style-in-contributors-section-of-intro
fix style in contributors section of intro
2023-07-27 17:27:36 +05:30
Ibrahim Wassouf
1dfb400a46 Merge branch 'develop' into bug/4645_graph_node_containing_keyword 2023-07-26 16:59:54 -04:00
Knut Sveidqvist
35299978a4 Merge branch 'master' into develop 2023-07-26 09:49:59 +02:00
Knut Sveidqvist
165e0b6c68 Merge pull request #4669 from mermaid-js/release/10.3.0
Release/10.3.0
2023-07-26 09:49:15 +02:00
Knut Sveidqvist
9c92f779ae Updates after testing and new version for mermaid-zenuml 2023-07-26 09:44:24 +02:00
Kiran
304d8844f0 fix style in contributors section of intro 2023-07-26 00:19:50 -06:00
Sidharth Vinod
aa54127784 Set proper release version 2023-07-26 11:34:10 +05:30
Sidharth Vinod
21b90cbcd2 Add release version 2023-07-26 11:33:20 +05:30
Sidharth Vinod
e1ca108b00 Update version 2023-07-26 11:26:07 +05:30
Sidharth Vinod
29d078c822 Merge branch 'master' into release/10.3.0
* master:
  chore: Rename C4C to C4
  update latest news section
  Corrects name of C4 link
  Bump zenuml package version
2023-07-26 11:23:24 +05:30
Sidharth Vinod
40d30b7045 Merge remote-tracking branch 'origin/release/10.3.2' into develop
* origin/release/10.3.2:
2023-07-26 11:21:11 +05:30
Sidharth Vinod
dbee34aba7 fix: edgeLabel width 2023-07-26 11:14:46 +05:30
Ibrahim Wassouf
9655ba9e63 Merge branch 'develop' into bug/4645_graph_node_containing_keyword 2023-07-25 20:57:14 -03:00
Ibrahim Wassouf
fd461b7860 Reimplement old alphaNumToken 2023-07-25 20:56:08 -03:00
Ibrahim Wassouf
30a9b5574d Correct classDef and class grammar
Previously, you were allowed to define a class called 'default'
but were not allowed to use it because the classStatement grammar
expected an alphanum, which did not include the word DEFAULT
2023-07-25 20:35:08 -03:00
Steph
edf94790f2 add latest blog post 2023-07-25 10:22:17 -07:00
Sidharth Vinod
68909a43f7 Update lockfile 2023-07-25 21:57:48 +05:30
Sidharth Vinod
d178626bac Merge branch 'develop' into release/10.4.0
* develop:
  Add MERMAID_RELEASE_VERSION in sankey
2023-07-25 21:55:24 +05:30
Sidharth Vinod
d69a2f7895 Merge branches 'develop' and 'develop' of https://github.com/mermaid-js/mermaid into develop
* 'develop' of https://github.com/mermaid-js/mermaid: (21 commits)
  Add comments
  Update packages/mermaid/src/rendering-util/types.d.ts
  Remove redundant test. Already checked in lint.
  Update docs
  Fix lint
  Update packages/mermaid/src/rendering-util/splitText.spec.ts
  Add comments
  Add tests without Intl.Segmenter
  Cleanup
  Fix flowchart failure
  Handle proper formatting for markdown strings
  createText to TS
  Use joiner to split unicode
  Add types
  rename handle-markdown-text
  Add logs
  Cleanup
  Use splitLineToFitWidth function
  Update docs
  feat: split unicode properly
  ...

* 'develop' of https://github.com/mermaid-js/mermaid: (21 commits)
  Add comments
  Update packages/mermaid/src/rendering-util/types.d.ts
  Remove redundant test. Already checked in lint.
  Update docs
  Fix lint
  Update packages/mermaid/src/rendering-util/splitText.spec.ts
  Add comments
  Add tests without Intl.Segmenter
  Cleanup
  Fix flowchart failure
  Handle proper formatting for markdown strings
  createText to TS
  Use joiner to split unicode
  Add types
  rename handle-markdown-text
  Add logs
  Cleanup
  Use splitLineToFitWidth function
  Update docs
  feat: split unicode properly
  ...
2023-07-25 21:54:32 +05:30
Knut Sveidqvist
97f457ca4a Merge branch 'develop' into release/10.4.0 2023-07-25 17:30:24 +02:00
Sidharth Vinod
48c8311369 Add MERMAID_RELEASE_VERSION in sankey 2023-07-25 20:49:54 +05:30
Knut Sveidqvist
c99e1c689e Merge pull request #4470 from mermaid-js/sidv/splitUnicode
Split formatted markdown strings with unicode support.
2023-07-25 15:16:01 +00:00
Knut Sveidqvist
15c6dfcbb5 Updates after tests 2023-07-25 16:43:09 +02:00
Sidharth Vinod
651bc980d2 Merge branch 'sidv/splitUnicode' of https://github.com/mermaid-js/mermaid into sidv/splitUnicode
* 'sidv/splitUnicode' of https://github.com/mermaid-js/mermaid:
  Update packages/mermaid/src/rendering-util/types.d.ts
2023-07-25 20:10:17 +05:30
Sidharth Vinod
841ae15fb5 Add comments 2023-07-25 20:10:05 +05:30
Sidharth Vinod
a7d40724b4 Update packages/mermaid/src/rendering-util/types.d.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-07-25 19:13:54 +05:30
Sidharth Vinod
409dedb3ef Remove redundant test.
Already checked in lint.
2023-07-25 19:08:40 +05:30
sidharthv96
4ea1227e29 Update docs 2023-07-25 13:33:37 +00:00
Sidharth Vinod
68305fea9e Fix lint 2023-07-25 18:56:58 +05:30
Sidharth Vinod
ea192ccf4d Merge branch 'develop' into sidv/splitUnicode 2023-07-25 18:55:34 +05:30
Sidharth Vinod
509a580f9d Merge pull request #4396 from gjtorikian/patch-2
Fix a typo
2023-07-25 18:54:56 +05:30
Sidharth Vinod
db9051b03e Merge pull request #4660 from Incognito/patch-1
Docs: Corrects name of C4 link
2023-07-25 18:53:14 +05:30
Sidharth Vinod
91ae9a2901 Merge branch 'master' into pr/Incognito/4660
* master:
  update latest news section
2023-07-25 18:41:26 +05:30
Sidharth Vinod
27d98728a6 chore: Rename C4C to C4 2023-07-25 17:42:12 +05:30
Knut Sveidqvist
cfbd38d5fa Merge branch 'develop' into release/10.4.0 2023-07-25 13:02:43 +02:00
Knut Sveidqvist
c67b4178bd Merge pull request #4667 from mermaid-js/develop
2023-07-25
2023-07-25 11:56:58 +02:00
Sidharth Vinod
9ea4b1388f Merge pull request #4666 from kgilbert78/docs/add-typora-to-integrations-list
added Typora to integrations list
2023-07-25 07:57:14 +00:00
Sidharth Vinod
934735372f Merge pull request #4655 from mermaid-js/update-latest-news
Docs: update Latest News section
2023-07-25 13:26:31 +05:30
Steph
28bb0df6c8 update latest news section 2023-07-24 22:15:22 -07:00
Ibrahim Wassouf
20cd685ae3 Allow escaped quotations in strings 2023-07-24 22:43:55 -03:00
Ibrahim Wassouf
47c100809b Add unit tests for all cases of TEXT and STR combinations 2023-07-24 21:46:28 -03:00
Ibrahim Wassouf
651274bc6f Only allow quotes to wrap entire string 2023-07-24 21:23:21 -03:00
Ibrahim Wassouf
4cfbd0d380 Remove unused definitions 2023-07-24 21:05:17 -03:00
Ibrahim Wassouf
45d92769aa Change rest of grammar statements to use variable name instead of position 2023-07-24 21:04:36 -03:00
kgilbert78
3e3e784fd9 added Typora to integrations list 2023-07-24 13:24:33 -04:00
Sidharth Vinod
1f3902e598 Merge pull request #4662 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2023-07-24 07:01:06 +00:00
Sidharth Vinod
3ef02ee66f Merge pull request #4663 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2023-07-24 07:00:51 +00:00
Ibrahim Wassouf
474e0b9c82 Refactor vertex grammars to use name values instead of position in production 2023-07-23 21:54:42 -03:00
Ibrahim Wassouf
087738df78 Refactor statement grammars to use name values instead of positions in production 2023-07-23 21:39:21 -03:00
Ibrahim Wassouf
fa8e02721a Refactor directive grammar to use name instead of position in production 2023-07-23 21:32:52 -03:00
Ibrahim Wassouf
4b9773a272 Refactor token precedence that concern vertex text states 2023-07-23 21:25:19 -03:00
renovate[bot]
45400240d4 chore(deps): update all minor dependencies 2023-07-24 00:19:12 +00:00
renovate[bot]
e4699ef02a chore(deps): update all patch dependencies 2023-07-24 00:18:49 +00:00
Brian Graham
60cf043c3d Corrects name of C4 link 2023-07-23 08:27:54 +02:00
Ibrahim Wassouf
fd88b424b4 Add unit test for vertex and edge having both strings and text 2023-07-22 15:09:24 -03:00
Ibrahim Wassouf
3ab0e9998d Remove href state and give call higher precedence
Similar to what was done in the class diagram parser,
this will allow string tokens to appear in any state.
This is especially helpful, because it will simplify the
code and any future refactoring
2023-07-22 14:39:45 -03:00
Ibrahim Wassouf
f48a9c8696 Merge branch 'develop' into bug/4645_graph_node_containing_keyword 2023-07-21 21:12:16 -03:00
Ibrahim Wassouf
eea0ea5e07 Add unit tests for node id strings with keywords 2023-07-21 21:10:37 -03:00
Ibrahim Wassouf
20011c6882 Add unit tests for edge text 2023-07-21 20:44:37 -03:00
Ibrahim Wassouf
0cc8f89115 Add edgeText states 2023-07-21 19:40:04 -03:00
Ibrahim Wassouf
8ff06e88ce Correct expected error message in unit test 2023-07-21 18:27:20 -03:00
Ibrahim Wassouf
3fa3ed7b18 Remove grammar and unit test that expects HEX token
This was never really used and had many things wrong with it.
I believe that if a hex was provided in the diagram specification,
the alphanum grammar would break it up into a BRKT and NUM token
and use the first line with the addVertex() function.

Second, the styleLink grammar provides the exact same functionality
with the linkStyle keyword.

Third, updateLink() expects an array of nums, not a hex digit.

Fourth, no documentation is provided on this grammar statement existing.
Fifth, the unit test does not work in version 10.2.4
2023-07-21 18:15:43 -03:00
Ibrahim Wassouf
0a4e5f5f6b Slightly alter unit test node idString 2023-07-21 18:15:27 -03:00
Ibrahim Wassouf
0d7cc748b8 Replace alphanum with idString where appropriate 2023-07-21 17:33:33 -03:00
Nikolay Rozhkov
a3c645c3eb Merge pull request #4639 from mastersibin/feature/4451-vertical-branches-in-gitgraph
feat | Vertical branches in Git Diagram
2023-07-21 16:30:06 +00:00
Sibin Thomas
bb7b3491e5 Merge branch 'develop' into feature/4451-vertical-branches-in-gitgraph 2023-07-21 14:00:01 +05:30
Ibrahim Wassouf
69c91ae5ed Add unit test for edge case with lean_right/left vertices 2023-07-21 00:06:18 -03:00
Ibrahim Wassouf
7adb1bccb3 Replace alphanum with NODE_STRING for most usecases
What this allows is for idStrings that are separated by
dashes or underscores to be considered one whole string
rather than a bunch of tokens mixed together.

This is necessary for examples such as a-node-graph[text].
Now, the last part of the idString 'graph' will be read as
part of the NODE_STRING token rather than attempting to add
a GRAPH token to the idString.
2023-07-20 23:49:43 -03:00
Alois Klink
38f2ff0bca Merge pull request #4652 from mermaid-js/dependabot/npm_and_yarn/word-wrap-1.2.4
build(deps-dev): bump word-wrap from 1.2.3 to 1.2.4
2023-07-20 22:05:59 +00:00
dependabot[bot]
cd0da4e060 build(deps-dev): bump word-wrap from 1.2.3 to 1.2.4
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases)
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4)

---
updated-dependencies:
- dependency-name: word-wrap
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-20 17:44:05 +00:00
Sibin Thomas
df89b92e2c ran docs:build for documentation 2023-07-20 21:45:47 +05:30
Ibrahim Wassouf
5b987dee93 Put parser in stable state 2023-07-20 13:05:18 -03:00
Sibin Thomas
114f918417 Merge branch 'develop' into feature/4451-vertical-branches-in-gitgraph 2023-07-20 21:29:56 +05:30
Sibin Thomas
346a7fe8b2 Merge branch 'feature/4451-vertical-branches-in-gitgraph' of https://github.com/mastersibin/mermaid into feature/4451-vertical-branches-in-gitgraph 2023-07-20 21:28:21 +05:30
Sibin Thomas
8ae35c1382 updated documentation for vertical branches 2023-07-20 21:27:34 +05:30
Sidharth Vinod
687a9a08d7 Merge pull request #4612 from mermaid-js/sidv/docsVersion
Support MERMAID_RELEASE_VERSION in docs.
2023-07-20 15:30:11 +00:00
Sidharth Vinod
478d350188 Update .github/pull_request_template.md
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-07-20 20:48:12 +05:30
Sidharth Vinod
4795204719 Merge branch 'develop' into sidv/docsVersion
* develop:
  build(docs): handle YAML edgecases in markdown
  run pnpm lint:fix
  Update cypress/helpers/util.ts
  change deprecated `btoa` into `Buffer.from`
  allow ts extension imports in cypress ts files
  build(docs): allow using custom `editLink`
  build(docs): add `editLink: ` to MD frontmatter
  build(docs): run remark plugins on MermaidConfig
  Fix import file extension
  Batch by commit
  resolve lint issues for `no-inferrable-types`
  fix wrong config paramater in some cypress spec
  convert cypress/helpers/util.js into ts
  convert file from js into ts
2023-07-20 20:46:53 +05:30
Sibin Thomas
99e88e4d0d Merge branch 'develop' into feature/4451-vertical-branches-in-gitgraph 2023-07-20 16:03:19 +05:30
Sibin Thomas
a171903088 added tests for overlapping commits 2023-07-20 13:15:05 +05:30
Sidharth Vinod
1b2340ba75 Merge pull request #4640 from aloisklink/docs/fix-edit-url
Fix the "Edit this page on GitHub" link in Vitepress documentation for the Mermaid Config pages
2023-07-20 06:59:46 +00:00
Ibrahim Wassouf
3496f275bc Re-implement markdown as its own text type 2023-07-19 22:56:53 -03:00
Ibrahim Wassouf
b46c28425e Add text state and tests 2023-07-19 22:49:39 -03:00
Alois Klink
4d2d790cc8 build(docs): handle YAML edgecases in markdown
Our current method of adding a entry using `+=` is not safe in YAML,
since it's valid to make a YAML object entirely in JSON,
see https://github.com/mermaid-js/mermaid/pull/4640#discussion_r1265133463

We're already using `js-yaml` elsewhere in this file, so we may as well
use it for parsing/stringifying.

Reported-by: Remco Haszing <remcohaszing@gmail.com>
2023-07-19 23:40:46 +01:00
Sidharth Vinod
477bb4308d Merge pull request #4552 from Yokozuna59/convert-cypress-util-to-ts
convert `cypress/helpers/util.js` to ts
2023-07-19 17:49:42 +00:00
Yokozuna59
8cd8714aaf run pnpm lint:fix 2023-07-19 23:45:02 +03:00
Sidharth Vinod
e25faeee4c Update cypress/helpers/util.ts 2023-07-19 22:36:55 +05:30
Sibin Thomas
cba5b5a7e3 ran preetier 2023-07-19 21:55:24 +05:30
Yokozuna59
66e5f8ae18 Merge branch 'develop' into convert-cypress-util-to-ts 2023-07-19 19:09:58 +03:00
Sibin Thomas
52a4f8f077 added tests for vertical branches 2023-07-19 20:22:59 +05:30
Sibin Thomas
d81e4fabd5 positioned tags, tilted commit labels and fixed some bugs 2023-07-19 20:22:29 +05:30
Sibin Thomas
863d1bfd4d removed BT and added TB 2023-07-19 20:21:15 +05:30
Sibin Thomas
9c2afac319 Merge branch 'mermaid-js:develop' into feature/4451-vertical-branches-in-gitgraph 2023-07-19 20:13:53 +05:30
Sidharth Vinod
568d686d2f Merge branch 'develop' into sidv/docsVersion 2023-07-18 22:07:42 +05:30
Sidharth Vinod
3fcb071592 Move docs.cli to scripts 2023-07-18 22:06:43 +05:30
Sidharth Vinod
483385b2f6 Update PR template 2023-07-18 21:59:00 +05:30
Sidharth Vinod
fff3acd064 Verify release-version on push to release or master 2023-07-18 21:55:44 +05:30
Sidharth Vinod
e66135b67e Merge pull request #4496 from moka-care/bug/4439_graph_doesnt_load_when_img_fail_to_load
Fix graph not loading when the img loads too fast or fail to load
2023-07-18 07:57:38 +00:00
Yokozuna59
072638ce9d Merge pull request #4634 from leinelissen/develop
feat: allow specifying on which weekday a tickInterval should start
2023-07-18 07:33:08 +00:00
Yokozuna59
d9314a869a change deprecated btoa into Buffer.from 2023-07-17 15:58:58 +03:00
Yokozuna59
662eb431ab allow ts extension imports in cypress ts files 2023-07-17 15:53:26 +03:00
Yokozuna59
bed8710dbb Merge branch 'mermaid-js:develop' into convert-cypress-util-to-ts 2023-07-17 15:31:11 +03:00
Sidharth Vinod
38c0a94067 Merge pull request #4633 from ibrahimWassouf/bug/4592_fix_newLine_padding_class_diagram
Bug/4592 fix new line padding class diagram
2023-07-17 09:50:47 +00:00
Sidharth Vinod
d3006f6298 chore: Remove numbers from tests 2023-07-17 15:16:05 +05:30
Sidharth Vinod
24f04bb24d Merge branch 'develop' into bug/4592_fix_newLine_padding_class_diagram 2023-07-17 15:11:39 +05:30
Sidharth Vinod
b5bcc3b992 Revert "Refactor integration tests"
This reverts commit 80add648e6.
2023-07-17 15:11:14 +05:30
Sidharth Vinod
48a49b1b4d Merge pull request #4588 from ibrahimWassouf/enhancement/4158_Add_primary_key_beginning_with_asterisk
Allow entity diagram attribute names to start with asterisk
2023-07-17 09:26:46 +00:00
Sidharth Vinod
5e6d42cb5b Merge pull request #4641 from aloisklink/chore/remove-unused-coveralls-devDependency
chore: remove unused `devDependency` on coveralls
2023-07-17 09:20:02 +00:00
Sidharth Vinod
417c69d7e2 Merge pull request #4646 from guilhermgonzaga/docs/fix_checkbox_format
docs: Fix checkbox syntax
2023-07-17 09:07:08 +00:00
Guilherme Gonzaga
855f6ef9bf docs: Fix checkbox syntax 2023-07-16 23:16:37 +00:00
Alois Klink
a0a25ed756 chore: remove unused devDependency on coveralls
This `devDependency` hasn't been used for a long time.
2023-07-16 00:21:43 +01:00
Alois Klink
af9b3f77cb build(docs): allow using custom editLink
In Vitepress, allow using a custom `editLink`, if specified in the YAML
frontmatter.
2023-07-15 23:43:24 +01:00
Alois Klink
57ee181fad build(docs): add editLink: to MD frontmatter
Add a YAML front-matter entry called `editLink` to Markdown files in
Vitepress, e.g.

```markdown
---
editLink: "https://github.com/mermaid-js/mermaid/edit/develop/packages/mermaid/src/schemas/config.schema.yaml"
---

Here is my markdown file!
```

Although Vitepress doesn't officially support adding a URL as a
`editLink:` YAML front-matter, we can add a custom `editLink` function
to our Vitepress config that does allow it.
2023-07-15 23:43:24 +01:00
Yokozuna59
39ccad8e5e Merge branch 'develop' into develop 2023-07-15 15:44:19 +02:00
Lei Nelissen
7e39c13836 chore: narrow down tstype 2023-07-15 15:38:21 +02:00
Lei Nelissen
85515bcf8d chore: leave the newLine out of the jison spec 2023-07-15 15:28:48 +02:00
Sibin Thomas
383bbefa9e Added code for Vertical branches for GitGraph and Added TB option in the parser file. 2023-07-15 18:27:42 +05:30
Ibrahim Wassouf
9b9671b57c Merge branch 'develop' into enhancement/4158_Add_primary_key_beginning_with_asterisk 2023-07-15 08:50:01 -04:00
Ibrahim Wassouf
d6c88ab589 Merge branch 'develop' into bug/4592_fix_newLine_padding_class_diagram 2023-07-15 08:49:38 -04:00
Sidharth Vinod
840609af63 Merge pull request #4577 from kislerdm/bug/4576-c4-support-for-ContainerQueue_Ext
Fixes support of the macro `ContainerQueue_Ext` for C4 diagrams definition.
2023-07-15 07:35:05 +00:00
Lei Nelissen
eff9f7e5db chore: re-generate config 2023-07-15 00:24:02 +02:00
Lei Nelissen
803cd826ed chore: replace switch-case with map 2023-07-15 00:17:10 +02:00
Lei Nelissen
90c68f5069 chore: add tsType for weekday config 2023-07-15 00:17:09 +02:00
Lei Nelissen
103321bf72 chore: return after scanning weekday in jison 2023-07-15 00:17:09 +02:00
Lei Nelissen
d0afc3bffe feat: validate individual values of weekdays 2023-07-14 14:13:18 +02:00
Lei Nelissen
11f2e31ff1 fix: also set weekday value to sunday in clear 2023-07-14 14:13:18 +02:00
Lei Nelissen
d9c15b1e7a chore: move spec test to it.each 2023-07-14 14:13:18 +02:00
Lei Nelissen
4e8eeda30e chore: also apply weekday to topXAxis 2023-07-14 14:13:18 +02:00
Lei Nelissen
cfe31fe89f chore: generate new docs 2023-07-14 14:13:18 +02:00
Lei Nelissen
ebf639377b chore: generate typescript config type 2023-07-14 14:13:18 +02:00
Lei Nelissen
37adc23ae2 chore: also default to sundat in ganttDb 2023-07-14 14:13:18 +02:00
Lei Nelissen
5f7212c769 chore: move default value to config.schema.yaml 2023-07-14 14:13:18 +02:00
Lei Nelissen
cd92c46f31 chore: format example more correctly 2023-07-14 14:13:18 +02:00
Lei Nelissen
df10ab501a chore: add tests for all days 2023-07-14 14:13:18 +02:00
Lei Nelissen
0d7427ed20 chore: add cypress test 2023-07-14 14:13:18 +02:00
Lei Nelissen
e360e90f88 chore: move documentation to source file 2023-07-14 14:13:18 +02:00
Lei Nelissen
03ce2810b5 feat: allow specifying on which weekday a tickInterval should start 2023-07-14 14:13:18 +02:00
Lei Nelissen
5631a218d1 fix: make gantt chart interval weeks start on monday instead of sunday 2023-07-14 14:13:18 +02:00
Alois Klink
7cb009cd38 build(docs): run remark plugins on MermaidConfig
We use the `unified.stringify()` function on our remark plugins to
stringify the Markdown AST for our MermaidConfig documentation.
However, [`.stringify()`][1] only runs the stringify phase in unified,
not the "run" phase. If we want to run our plugins on the Markdown AST,
we need to also use the [`.run()`][2] function.

[1]: https://github.com/unifiedjs/unified#processorstringifytree-file
[2]: https://github.com/unifiedjs/unified#processorruntree-file-done
2023-07-13 23:59:27 +01:00
Ibrahim Wassouf
bb220b8b87 Add test for string label 2023-07-13 16:53:29 -03:00
Ibrahim Wassouf
80add648e6 Refactor integration tests 2023-07-13 16:43:52 -03:00
Ibrahim Wassouf
081d1b1144 Merge branch 'develop' into bug/4592_fix_newLine_padding_class_diagram 2023-07-13 16:38:47 -03:00
Sidharth Vinod
946b5f161e Merge pull request #4623 from mermaid-js/renovate/patch-all-patch
chore(deps): update all patch dependencies (patch)
2023-07-13 19:09:27 +00:00
Ibrahim Wassouf
e9f032cceb Update packages/mermaid/src/dagre-wrapper/nodes.js
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-07-13 15:57:58 -03:00
Ibrahim Wassouf
aeba7a1d0e Update packages/mermaid/src/dagre-wrapper/nodes.js
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-07-13 15:57:28 -03:00
Yokozuna59
14d3d203d7 Merge branch 'develop' into convert-cypress-util-to-ts 2023-07-13 17:29:33 +02:00
Dmitry Kisler
584b51d7c5 Merge branch 'develop' into bug/4576-c4-support-for-ContainerQueue_Ext 2023-07-13 12:07:46 +02:00
Ibrahim Wassouf
12c657f514 Add imgSnapshotTests 2023-07-12 16:46:29 -03:00
Ibrahim Wassouf
d47c9d754a Merge branch 'develop' into enhancement/4158_Add_primary_key_beginning_with_asterisk 2023-07-11 20:04:20 -03:00
Ibrahim Wassouf
d2ab132a18 Change class member height to use own BBox 2023-07-11 19:39:39 -03:00
renovate[bot]
d46ef4cc91 chore(deps): update all patch dependencies 2023-07-11 17:19:31 +00:00
Nikolay Rozhkov
0a493c79ff Merge pull request #4631 from nirname/refactoring/removed-unused-code-in-state-diagrams
Removed unused code in state diagrams
2023-07-11 17:13:03 +00:00
Nikolay Rozhkov
3664ff4463 Removed unused code in state diagrams 2023-07-11 18:12:27 +03:00
Pierrick Wauquier
9e5ccbe13f Merge branch 'develop' into bug/4439_graph_doesnt_load_when_img_fail_to_load 2023-07-11 17:10:19 +02:00
Nikolay Rozhkov
cd1765a012 Merge pull request #4597 from ibrahimWassouf/bug/4590_allow_notes_identical_to_keywords
Bug/4590 allow notes identical to keywords
2023-07-11 11:52:33 +00:00
Ibrahim Wassouf
1bafc7b84f Merge branch 'develop' into enhancement/4158_Add_primary_key_beginning_with_asterisk 2023-07-10 19:35:24 -04:00
Ibrahim Wassouf
7bf1d38bad Merge branch 'develop' into bug/4590_allow_notes_identical_to_keywords 2023-07-10 19:34:51 -04:00
Sidharth Vinod
8e0cb185e9 Merge pull request #4624 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2023-07-10 06:58:59 +00:00
renovate[bot]
47f46c8a46 chore(deps): update all minor dependencies 2023-07-10 01:17:36 +00:00
Ibrahim Wassouf
e127b146e9 Add more test cases 2023-07-08 17:46:28 -03:00
Ibrahim Wassouf
c59fee8de2 Split tests to have one parse statement in each test 2023-07-08 17:20:56 -03:00
Ibrahim Wassouf
00bb2a1f68 Revert back to single quotes for generic grammar 2023-07-08 14:45:06 -03:00
Ibrahim Wassouf
007724a7c7 Merge branch 'develop' into bug/4590_allow_notes_identical_to_keywords 2023-07-08 13:34:28 -04:00
Ibrahim Wassouf
f82407a2f0 Make unit test regex unit test more accurate 2023-07-08 14:33:57 -03:00
Ibrahim Wassouf
4bec3188de Reformat code 2023-07-08 14:12:45 -03:00
Ibrahim Wassouf
fbb6eb849e Give call higher precedence than STR 2023-07-08 14:07:46 -03:00
Ibrahim Wassouf
6a40f4b955 Decouple HREF token from STR and correct grammar 2023-07-08 13:34:51 -03:00
Ibrahim Wassouf
58b2b0993a Give STR token higher precedence 2023-07-08 13:29:48 -03:00
Ibrahim Wassouf
d05d249080 Undo state changes 2023-07-08 13:28:45 -03:00
Ibrahim Wassouf
1e781c0c90 Refactor unit tests 2023-07-08 13:23:46 -03:00
Sidharth Vinod
eca2efa46d Update packages/mermaid/src/rendering-util/splitText.spec.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-07-08 19:01:45 +05:30
Ibrahim Wassouf
23f27d151a Remove redundancy in unit tests 2023-07-07 22:44:34 -03:00
Ibrahim Wassouf
cd118ad5cb Update erDiagram to make entity names in singular form 2023-07-07 19:59:52 -03:00
Ibrahim Wassouf
cf0a9c3016 Merge branch 'develop' into enhancement/4158_Add_primary_key_beginning_with_asterisk 2023-07-07 14:31:45 -04:00
Sidharth Vinod
0cdf801884 Fix import file extension 2023-07-07 17:21:18 +05:30
Sidharth Vinod
07df9eeb60 Rename docs.cli.mts 2023-07-07 15:57:05 +05:30
Sidharth Vinod
962ff73fc3 Batch by commit 2023-07-07 15:56:30 +05:30
Yokozuna59
f0bf6bf574 Merge branch 'develop' into convert-cypress-util-to-ts 2023-07-07 11:17:22 +02:00
Sidharth Vinod
79d38cef4b Run docs:release-version in CI 2023-07-07 11:32:00 +05:30
Sidharth Vinod
88856a721f Support MERMAID_RELEASE_VERSION in docs 2023-07-07 11:28:04 +05:30
Sidharth Vinod
60c2d494a1 Merge pull request #4607 from mermaid-js/fix/prLabeler
Run PR-labeler-config-validator only if config changes
2023-07-07 05:15:14 +00:00
Sidharth Vinod
0f4af09398 Add Area: Documentation to labeler 2023-07-07 10:32:13 +05:30
Sidharth Vinod
052e9db16a Remove filter action 2023-07-07 10:30:59 +05:30
Sidharth Vinod
4648532814 Update .github/workflows/pr-labeler-config-validator.yml
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-07-07 10:29:58 +05:30
Sidharth Vinod
9263f75e5b Update .github/pr-labeler.yml
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-07-07 10:27:56 +05:30
Sidharth Vinod
8348a2f2d8 Merge pull request #4610 from aloisklink/test/remove-old-default-config-test
Remove the test checking whether the JSON Schema default config matched the old default config
2023-07-07 04:41:00 +00:00
Sidharth Vinod
28406fc9c4 Add comments 2023-07-07 10:05:05 +05:30
Sidharth Vinod
d58c41dbc0 Add tests without Intl.Segmenter 2023-07-07 10:02:04 +05:30
Ibrahim Wassouf
5d76c033f0 Merge branch 'develop' into enhancement/4158_Add_primary_key_beginning_with_asterisk 2023-07-06 21:18:38 -04:00
Ibrahim Wassouf
fad11bce95 Correct one unit test and add another 2023-07-06 22:17:33 -03:00
Ibrahim Wassouf
42da53f58a Add imgSnapshotTest 2023-07-06 22:15:18 -03:00
Alois Klink
8167f8c1df Revert "test(config): add temp test for defaultConfig"
This reverts commit 063cb124cd.

This file was originally added to test whether the new implementation
of the default config in
`packages/mermaid/src/schemas/config.schema.yaml` matched the old
existing default config in `packages/mermaid/src/oldDefaultConfig.ts`,
and this test is no longer needed.
2023-07-07 02:05:43 +01:00
Alois Klink
2b53e02153 test: fix 'new default config' test
This test was accidentally removed by a bad merge commit, see
29291c89 (Merge branch 'develop' into pr/aloisklink/4112, 2023-07-06).

This test checks whether the default config defined in the
`config.schema.yaml` file matches the old default config defined in
`oldDefaultConfig.ts`.

Fixes: 29291c8901
2023-07-07 02:01:03 +01:00
Ibrahim Wassouf
4af2fca339 Add documentation for feature 2023-07-06 19:40:54 -03:00
Sidharth Vinod
b14bcda12a Merge branch 'develop' into sidv/splitUnicode 2023-07-06 22:08:51 +05:30
Sidharth Vinod
1682fa1e53 Update PR Labeler config 2023-07-06 22:05:58 +05:30
Sidharth Vinod
355586f297 Run PR-labeler-config-validator only if config changes 2023-07-06 22:03:48 +05:30
Sidharth Vinod
7d996c3d33 Cleanup 2023-07-06 21:48:18 +05:30
Sidharth Vinod
194ef202ac Merge pull request #4603 from mermaid-js/sidv/optimiseDocs
Avoid downloading avtars everytime on docs:dev
2023-07-06 16:10:53 +00:00
Sidharth Vinod
bcffff3b7b Terminate build in CI if download fails 2023-07-06 21:36:10 +05:30
Sidharth Vinod
d4281d365d Add Yokozuna59 & nirname 2023-07-06 21:29:40 +05:30
Sidharth Vinod
5ac70bbc00 Fix flowchart failure 2023-07-06 21:22:28 +05:30
Sidharth Vinod
60a93f7377 Handle proper formatting for markdown strings 2023-07-06 20:34:17 +05:30
Sidharth Vinod
f5484636aa createText to TS 2023-07-06 16:12:09 +05:30
Sidharth Vinod
b0a104e3da Merge branch 'develop' into sidv/splitUnicode
* develop: (293 commits)
  chore: Remove lint warnings in example-diagram
  chore: Reduce codecov pushes
  Turn off codecov project status check
  build(docs): fix links to `config.schema.json`
  ci(lint): check if MermaidConfig types are in sync
  docs: add link to mermaid config docs in sidebar
  test(config): add temp test for defaultConfig
  build(types): create types from config JSON Schema
  build(types): add script to generate Config types
  build(docs): build JSON Schema docs
  build: use vite to get default mermaid config
  feat: add Mermaid Config in JSON Schema format
  docs: add support for ```regexp``` code blocks
  test: test partial QuadrantChartConfig options
  test: fix types in `config.spec.ts`
  style: fix lint issues in src/config.spec.ts
  test: rename src/config.spec.js to config.spec.ts
  fix(quadrant): make quadrant options optional
  fix lint
  update homepage community link
  ...
2023-07-06 16:00:11 +05:30
Sidharth Vinod
48050333a0 Merge branch 'develop' into sidv/optimiseDocs 2023-07-06 15:57:01 +05:30
Sidharth Vinod
c17dc15c57 chore: Rename to teamMembers 2023-07-06 15:54:27 +05:30
Sidharth Vinod
34abbcadae Merge pull request #4604 from mermaid-js/sidv/fixCodecov
chore: Reduce codecov pushes
2023-07-06 10:20:26 +00:00
Sidharth Vinod
2b5da79cdf Merge pull request #4112 from aloisklink/add-jsonschema-schema-for-config
Use JSON Schema to define and document `MermaidConfig`
2023-07-06 10:03:55 +00:00
Sidharth Vinod
2366ca85b3 Merge branch 'develop' into sidv/fixCodecov 2023-07-06 11:59:44 +05:30
Sidharth Vinod
aaec16ed6c chore: Remove lint warnings in example-diagram 2023-07-06 11:58:55 +05:30
Sidharth Vinod
a3d95ceec4 Bump zenuml package version 2023-07-06 11:36:16 +05:30
Sidharth Vinod
4d0c461fa3 chore: Reduce codecov pushes
pushes to non-develop branches will not send coverage reports.
This might reduce the coverage variability issue we're having.
2023-07-06 11:32:37 +05:30
Sidharth Vinod
db30f21ac5 Turn off codecov project status check 2023-07-06 11:16:41 +05:30
Sidharth Vinod
d2e62022f1 Avoid downloading avtars everytime on docs:dev 2023-07-06 11:09:09 +05:30
Sidharth Vinod
29291c8901 Merge branch 'develop' into pr/aloisklink/4112
* develop:
  test: test partial QuadrantChartConfig options
  test: fix types in `config.spec.ts`
  style: fix lint issues in src/config.spec.ts
  test: rename src/config.spec.js to config.spec.ts
  fix lint
  update homepage community link
  docs(flowchart): add documentation on multiple nodes style
  Add docker-specific command, leave commonly used command intact
  Support docs:dev in docker
  Fix lint.
  Update docs
  add ChatGPT plugin blog post
  Fix flowchart tooltip typing
2023-07-06 10:42:13 +05:30
Sidharth Vinod
1a4e5d9c5a Merge pull request #4562 from lishid/patch-3
Fix flowchart tooltip typing bug
2023-07-06 04:19:08 +00:00
Sidharth Vinod
e80e281a66 Merge pull request #4600 from tomperr/docs/4558-multiple-vertices-with-style
docs(flowchart): add documentation on multiple nodes style
2023-07-06 04:10:43 +00:00
Nikolay Rozhkov
04597d29c0 Merge pull request #4599 from nirname/fix/support-docs-dev-in-docker
Support docs:dev in docker
2023-07-06 04:04:18 +00:00
Sidharth Vinod
43df84a4d5 Merge branch 'master' into develop
* master:
  fix lint
  update homepage community link
  Update docs
  add ChatGPT plugin blog post
2023-07-06 09:34:26 +05:30
Sidharth Vinod
a753b1f18b Merge branch 'develop' into fix/support-docs-dev-in-docker 2023-07-06 09:29:51 +05:30
Sidharth Vinod
d80095bbef Merge pull request #4601 from mermaid-js/homepage-community-link
Docs: update link - "Join the Community"
2023-07-06 09:26:10 +05:30
Sidharth Vinod
4d79f42d0e Merge pull request #4602 from aloisklink/fix/make-quadrant-chart-options-optional
Make quadrant chart options TypeScript types optional
2023-07-06 03:54:08 +00:00
Alois Klink
c29088af01 build(docs): fix links to config.schema.json
Fix the link in some Mermaid Config markdown documentation,
which previously pointed to `src/schemas/config.schema.yaml`,
which went nowhere.

Now, these links point to:
  - config.schema.json (i.e. the generated JSON file, not YAML)
  - links are relative to the markdown documentation

We also needed to store the `schema.json` file in the Vitepress
`public/` folder, as Vitepress otherwise doesn't bundle `.json` files
properly, when running `vitepress build src/vitepress`.
2023-07-06 03:53:40 +01:00
Alois Klink
23d6a0dab7 ci(lint): check if MermaidConfig types are in sync
Add a CI check that runs
`pnpm run --filter mermaid types:verify-config` and checks whether
the MermaidConfig TypeScript types are in sync with the MermaidConfig
JSON Schema.
2023-07-06 03:53:40 +01:00
Alois Klink
70a5a13273 docs: add link to mermaid config docs in sidebar 2023-07-06 03:53:40 +01:00
Alois Klink
063cb124cd test(config): add temp test for defaultConfig
Adds a temporary test to ensure that the new defaultConfig,
generated by Vite automatically from the `MermaidConfig` JSON Schema,
has the same values as the old defaultConfig
(taken from
38013de711/packages/mermaid/src/defaultConfig.ts)

The only minor difference seems to be that:
  - `gitGraph` now has a default `useMaxWidth: false` option
    (previously used to be `undefined`),
  - `class` now has a `htmlLabels` value of `false` instead of `undefined`.
2023-07-06 03:53:40 +01:00
Alois Klink
eb5d65fabc build(types): create types from config JSON Schema
Runs `pnpm --filter mermaid run types:build-config` to automatically
generate typescript types for `MermaidConfig` from the
JSON Schema file.
2023-07-06 03:53:40 +01:00
Alois Klink
7c3a73d4a8 build(types): add script to generate Config types
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
2023-07-06 03:53:40 +01:00
Alois Klink
0230722d36 build(docs): build JSON Schema docs
Automatically build documentation for JSON Schema.

This is only built when running with `--vitepress`,
as it currently produces loads of markdown files, which I feel like
we shouldn't be committing.

This currently manually uses some internal `jsonschema2md` functions
so that we can manually control the Markdown output.
2023-07-06 03:53:40 +01:00
Alois Klink
52a1243da5 build: use vite to get default mermaid config
Adds a vitepress JsonSchema plugin that automatically loads
the Mermaid Config JSON Schema from a .schema.yaml file and
gets the default values from it.
2023-07-06 03:53:40 +01:00
Alois Klink
58b43976ff feat: add Mermaid Config in JSON Schema format
Add a JSON Schema file (in YAML) for the MermaidConfig.

This JSON Schema file follows [JSON Schema 2019-09][1], with some slight
modifications to work with:

- [json-schema-to-typescript][2]
  The `tsType` keyword is used to override the generated TypeScript
  type, when it doesn't match the JSON Schema type.

  This is used in two cases:
    - when the current type cannot be represented in JSON Schema
      (e.g. `FontCalculator`, which is a function)
    - when the JSON Schema type is narrower than the TypeScript type.
      Currently, many enums types are listed as `string` in TypeScript,
      but json-schema-to-typescript converts them to `"val1" | "val2"`.
      I've manually set them to `string | "val1" | "val2"` to avoid
      causing a breaking change in the TypeScript types. We should
      remove these in a future major version of TypeScript.
- [@adobe/jsonschema2md][3]
  The `meta:enum` keyword is used to add documentation for specific enum
  values.

[1]: https://json-schema.org/draft/2019-09/release-notes.html
[2]: https://www.npmjs.com/package/json-schema-to-typescript
[3]: https://www.npmjs.com/package/@adobe/jsonschema2md
2023-07-06 03:53:35 +01:00
Alois Klink
4372a54dba docs: add support for ``regexp`` code blocks
Currently, shiki doesn't support code-blocks that use the regexp
language, which means vitepress throws an error on them:

```regexp
^([1-9][0-9]*)(minute|hour|day|week|month)$
```

As a hack until shiki supports them, I've just modified them to get
converted into JavaScript RegEx literal code-blocks, e.g.:

```javascript
/^([1-9][0-9]*)(minute|hour|day|week|month)$/
```
2023-07-06 03:04:08 +01:00
Alois Klink
a862565a24 test: test partial QuadrantChartConfig options 2023-07-06 01:35:11 +01:00
Alois Klink
6ceee7f253 test: fix types in config.spec.ts
The `foo`, `bar`, and `foobar` options don't exist in MermaidConfig.

Instead, I've replaced them with:
  - `foo` -> `fontFamily`
  - `bar` -> `fontSize`
  - `foobar` -> `altfontFamily`
2023-07-06 01:27:24 +01:00
Alois Klink
f731853e01 style: fix lint issues in src/config.spec.ts
It looks like our linter automatically converts `let` to `const` in
TypeScript files, but not in JavaScript files.
2023-07-06 01:20:24 +01:00
Alois Klink
5885f5f82a test: rename src/config.spec.js to config.spec.ts 2023-07-06 01:19:34 +01:00
Alois Klink
38013de711 fix(quadrant): make quadrant options optional
Make the types of the options in QuadrantChartConfig in the
MermaidConfig optional. All of these (except for the values in
`BaseDiagramConfig`) will be automatically set to their
default values, so they're optional from a user perspective.
2023-07-06 01:06:01 +01:00
Steph
9251e520ab fix lint 2023-07-05 13:50:33 -07:00
Steph
5e7e3e21c8 update homepage community link 2023-07-05 13:42:42 -07:00
Tom PERRILLAT-COLLOMB
fcb25aee7c docs(flowchart): add documentation on multiple nodes style 2023-07-05 21:09:44 +02:00
Nikolay Rozhkov
95d62367e9 Add docker-specific command, leave commonly used command intact 2023-07-05 19:39:05 +03:00
Ibrahim Wassouf
1d5f3bb64d Merge branch 'develop' into enhancement/4158_Add_primary_key_beginning_with_asterisk 2023-07-05 11:19:08 -04:00
Ibrahim Wassouf
bd772e1bf4 Merge branch 'develop' into bug/4590_allow_notes_identical_to_keywords 2023-07-05 11:00:00 -04:00
Nikolay Rozhkov
34b2b5ba35 Support docs:dev in docker 2023-07-05 17:25:07 +03:00
Nikolay Rozhkov
c742ac71a4 Merge pull request #4598 from mermaid-js/sidv/fixDocsDev
Fix docs:dev
2023-07-05 14:05:27 +00:00
Sidharth Vinod
62b988a09f Merge pull request #4595 from nirname/fix/sankey-diagram-examples
Sankey: Remove duplicated examples
2023-07-05 06:53:43 +00:00
Sidharth Vinod
382026ed33 Fix docs:dev 2023-07-05 12:20:56 +05:30
Ibrahim Wassouf
34e89098f5 Refactor code smells in unit tests 2023-07-04 21:34:14 -03:00
Ibrahim Wassouf
e3c90ac084 Apply formatting to file 2023-07-04 21:16:14 -03:00
Ibrahim Wassouf
099f85f014 Add unit tests with keywords in notes 2023-07-04 21:07:46 -03:00
Ibrahim Wassouf
49747b314d Modify wildcard state of tokens in lexer 2023-07-04 20:44:22 -03:00
Nikolay Rozhkov
9f5f0a6e66 Reduce sankey width 2023-07-05 01:49:58 +03:00
nirname
6f03e22cc4 Update docs 2023-07-04 22:18:57 +00:00
Nikolay Rozhkov
8449a44607 Sankey: Remove duplicated examples 2023-07-05 01:15:22 +03:00
Lishid
12fe6ff26e Fix lint. 2023-07-03 18:56:00 -07:00
Ibrahim Wassouf
451b6b687e Merge branch 'develop' into enhancement/4158_Add_primary_key_beginning_with_asterisk 2023-07-03 19:54:26 -04:00
Nikolay Rozhkov
f431bae0ba Merge pull request #4587 from nirname/refactoring/remove-double-parsing
Remove double parsing
2023-07-03 22:02:20 +00:00
Ibrahim Wassouf
5a94256e4f Allow entity diagram attribute names to start with asterisk 2023-07-03 15:11:02 -03:00
Nikolay Rozhkov
d5021cab1d Remove double parsing 2023-07-03 18:57:26 +03:00
Sidharth Vinod
288f51216d Add codecov token 2023-07-03 21:01:04 +05:30
Sidharth Vinod
1b190b2892 Merge pull request #4551 from Yokozuna59/refactor-accessibility
refactor accessibility
2023-07-03 15:07:21 +00:00
Sidharth Vinod
8e15e534ea Add codecov token 2023-07-03 19:19:11 +05:30
Sidharth Vinod
6d7cd2b41f Merge pull request #4580 from aloisklink/refactor/replace-enums
Remove all TypeScript enums and forbid them in ESLint
2023-07-03 07:26:39 +00:00
Sidharth Vinod
15b2105ce6 Merge pull request #4581 from mermaid-js/renovate/patch-all-patch
Update all patch dependencies (patch)
2023-07-03 07:10:51 +00:00
renovate[bot]
d6731a07db Update all patch dependencies 2023-07-03 05:18:01 +00:00
Alois Klink
79688a1dc1 build: forbid using TypeScript enums using eslint
[TypeScript enums][1] are an unusual TypeScript feature, because it's
one of the only features that is "not a type-level extension of
JavaScript".

This means TypeScript generates custom code for enums, which can cause a
bunch of issues, especially as this custom code can be built differently
depending on which bundler you use, and because of this, many people
discourage the use of enums:

- [The Dangers of TypeScript Enums][2]
- [Tidy TypeScript: Prefer union types over enums][3]
- [TypeScript: Handbook - Enums # Objects vs Enums][4]

I've added an ESLint rule that forbids TypeScript enums, as in most
cases, it's better to use string literals instead, e.g. like
`type a = "a" | "b" | "c";`.

[1]: https://www.typescriptlang.org/docs/handbook/enums.html#string-enums
[2]: https://dev.to/azure/the-dangers-of-typescript-enums-55pd
[3]: https://fettblog.eu/tidy-typescript-avoid-enums/
[4]: https://www.typescriptlang.org/docs/handbook/enums.html#objects-vs-enums
2023-07-03 00:04:16 +01:00
Alois Klink
fbf79ffcc0 refactor: replace TypeScript enum with JS obj
[`const` assertions where added in TypeScript 3.4][1] and can be used
to create enum-like objects in plain JavaScript, that act like
TypeScript enums, but has none of the downsides of TypeScript enums.

[1]: https://devblogs.microsoft.com/typescript/announcing-typescript-3-4/#const-assertions
2023-07-02 23:56:42 +01:00
Alois Klink
b989ff5362 fix: change sankey config types to be unions
Replace the TypeScript `enum {a = "a", b = "b"}` types with
TypeScript's literal types (e.g. `"a" | "b"`).

This is because TypeScript enums are
[_not_ a type-level addition to JavaScript][1], and even the official
TypeScript docs say to be careful when using.

[1]: https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#enums
2023-07-02 23:44:19 +01:00
Dmitry Kisler
592e9c959b fix(diagrams/c4/parser): fixes support of the macro ContainerQueue_Ext for C4 diagrams. 2023-07-02 17:10:06 +02:00
Yokozuna59
406df57f81 Merge branch 'develop' into refactor-accessibility 2023-07-02 10:24:21 +02:00
Sidharth Vinod
9c011abbd4 Merge pull request #4466 from Valentine14th/feature/1838_actor_creation_destruction
Feature/1838 actor creation destruction
2023-07-02 08:10:24 +00:00
Sidharth Vinod
dfc466514d Merge branch 'develop' into feature/1838_actor_creation_destruction 2023-07-02 13:36:04 +05:30
Sidharth Vinod
29c866b09a Don't fail CI on codecov error 2023-07-02 13:22:00 +05:30
Sidharth Vinod
2a1759aab4 Merge branch 'develop' into refactor-accessibility 2023-07-02 13:04:09 +05:30
Sidharth Vinod
28ce5e780f Merge pull request #4566 from mermaid-js/renovate/patch-all-patch
Update all patch dependencies (patch)
2023-07-02 05:12:41 +00:00
renovate[bot]
b55a9328f4 Update all patch dependencies 2023-07-02 05:07:56 +00:00
Sidharth Vinod
19325777e5 Merge branch 'develop' into feature/1838_actor_creation_destruction 2023-07-02 10:32:59 +05:30
Sidharth Vinod
f0b8e5bc37 Merge pull request #4574 from mermaid-js/sidv/renameWorkflows
Rename workflow jobs
2023-07-02 05:01:53 +00:00
Sidharth Vinod
1995f62b3c Merge branch 'develop' into sidv/renameWorkflows 2023-07-02 10:16:49 +05:30
Sidharth Vinod
78377daf2f Rename workflow jobs 2023-07-02 10:14:35 +05:30
Sidharth Vinod
4a95589b5a Add merge_group to CI triggers 2023-07-02 10:03:31 +05:30
Sidharth Vinod
812e44183b Merge pull request #4502 from nirname/feature/4492_sankey-diagrams
Sankey diagrams
2023-07-02 04:29:43 +00:00
Sidharth Vinod
afb979f32b Merge branch 'develop' into feature/4492_sankey-diagrams 2023-07-02 09:55:45 +05:30
Sidharth Vinod
4d19db8d0c Merge pull request #4573 from ibrahimWassouf/develop
Fix relative link to theme variables list
2023-07-02 09:55:29 +05:30
nirname
c327ea9f21 Update docs 2023-07-01 23:38:02 +00:00
Nikolay Rozhkov
abb7bb23d6 More detailed sankey docs 2023-07-02 02:34:22 +03:00
Nikolay Rozhkov
8ed2ee30ec Sankey alignment tests 2023-07-02 02:15:23 +03:00
Nikolay Rozhkov
084b765e9f Added tests for colors and fully setup cypress in Docker 2023-07-02 01:10:06 +03:00
Ibrahim Wassouf
4570f824f7 Fix relative link to theme variables list 2023-07-01 15:45:48 -03:00
Nikolay Rozhkov
a62719826a Docker+Cypress, better run, removed unused syntax
Added cypress container (from their official image),
may be reconsidered later to choose our own
The only minor problem is node JS version mistmatch
package.json 18.16.0
docker-compose mermaid 18.16.1
docker-compose cypress 18.16.0

Host option in cypress docker container must be removed
in favor of possible configuration option.
http://localhost:9000 are currently hard-coded, that is bad

Updated ./run script with better documentation
and added some styles too it as well

Started sankey.spec.js as an example
2023-07-01 16:17:25 +03:00
Sidharth Vinod
ddbe977fcc Merge pull request #4570 from mermaid-js/update-latest-news-section
Docs: add ChatGPT plugin blog post
2023-07-01 17:29:26 +05:30
Nikolay Rozhkov
cd7fce4e4d Merge branch 'develop' into feature/4492_sankey-diagrams 2023-06-30 22:58:56 +03:00
Sidharth Vinod
ae4d81cdfd move codecov 2023-07-01 00:39:01 +05:30
Sidharth Vinod
b90c8402cb Set default branch in codecov 2023-07-01 00:38:10 +05:30
Sidharth Vinod
181a8498a3 Merge branch 'update-latest-news-section' of https://github.com/mermaid-js/mermaid into update-latest-news-section
* 'update-latest-news-section' of https://github.com/mermaid-js/mermaid:
  Update docs
2023-07-01 00:35:21 +05:30
Sidharth Vinod
738ba3d012 Merge branch 'develop' into update-latest-news-section
* develop:
  Fix docs
2023-07-01 00:34:06 +05:30
Sidharth Vinod
eb37e6886c Merge branch 'develop' into pr/Valentine14th/4466
* develop:
  Fix docs
2023-07-01 00:33:24 +05:30
Sidharth Vinod
64f5d34465 Fix docs 2023-07-01 00:33:08 +05:30
sidharthv96
032830d7e0 Update docs 2023-06-30 19:02:57 +00:00
Sidharth Vinod
04d79b16c3 Fix docs 2023-07-01 00:30:27 +05:30
Sidharth Vinod
1645bf0479 Merge branch 'develop' into pr/Valentine14th/4466
* develop:
  Add threshold
  Updated mermaid version to 10.2.4
  update latest news section
2023-07-01 00:29:43 +05:30
Sidharth Vinod
4217bfc15d Merge branch 'develop' into update-latest-news-section
* develop:
  Add threshold
  Fix Typo
2023-07-01 00:29:06 +05:30
Sidharth Vinod
598addf506 Merge branch 'develop' of https://github.com/mermaid-js/mermaid into develop
* 'develop' of https://github.com/mermaid-js/mermaid:
  Updated mermaid version to 10.2.4
  Fix Typo
  update latest news section
2023-07-01 00:28:43 +05:30
Sidharth Vinod
959a773b64 Add threshold 2023-07-01 00:28:37 +05:30
Steph
efa3ba6397 add ChatGPT plugin blog post 2023-06-30 11:08:42 -07:00
Knut Sveidqvist
02d4be23cf Merge remote-tracking branch 'origin/develop' into develop 2023-06-30 13:25:32 +02:00
Knut Sveidqvist
ec1e34c4f1 Merge branch 'master' into develop 2023-06-30 13:25:21 +02:00
Knut Sveidqvist
04b11d1ba6 Merge branch 'release/10.2.4' 2023-06-30 13:24:43 +02:00
Knut Sveidqvist
453b337e6e Updated mermaid version to 10.2.4 2023-06-30 13:10:22 +02:00
Sidharth Vinod
3fe0c8b13d Merge branch 'develop' into feature/1838_actor_creation_destruction 2023-06-30 16:00:24 +05:30
Sidharth Vinod
824dfbd574 Merge pull request #4567 from ryru/patch-1
Fix Typo
2023-06-30 15:36:59 +05:30
Pascal Knecht
a1dfc3dac9 Fix Typo 2023-06-30 11:59:40 +02:00
Lishid
0cab66c9d8 Fix flowchart tooltip typing
Tooltip is an object that gets reset to an array. It is then looked up for properties without guard, causing array functions like "length" and "constructor" to run into undefined behvaior.
2023-06-29 15:33:35 -04:00
Nikolay Rozhkov
163a4b819b Trigger build in GA 2023-06-29 21:01:21 +03:00
nirname
36df7260cc Update docs 2023-06-29 17:32:39 +00:00
Nikolay Rozhkov
b2f6858ff7 Prettier 2023-06-29 20:23:10 +03:00
Nikolay Rozhkov
06cb0c3be9 Fixed package json 2023-06-29 20:22:06 +03:00
Nikolay Rozhkov
9177350a39 Fixed double quotes, docs, demo and added more examples to run script 2023-06-29 20:16:25 +03:00
Nikolay Rozhkov
e24dce10a2 Added sankey documentation 2023-06-29 19:51:46 +03:00
Nikolay Rozhkov
e7ad294283 Merge branch 'develop' into feature/4492_sankey-diagrams 2023-06-29 16:50:38 +03:00
Nikolay Rozhkov
95a436595e Let it be as it was in dev branch 2023-06-29 16:44:33 +03:00
Nikolay Rozhkov
8e3f8b1a57 Fixes after review 2023-06-29 15:39:50 +03:00
Nikolay Rozhkov
408c32781e Contributors fetching failure must not hinder docs development 2023-06-29 15:24:14 +03:00
Nikolay Rozhkov
a712e61888 Loading avatars in parallel & started sankey documentation 2023-06-29 15:24:14 +03:00
Sidharth Vinod
8066d94c1d Merge pull request #4560 from mermaid-js/sidv/v8Coverage
Use v8 coverage in vitest
2023-06-29 17:44:19 +05:30
Sidharth Vinod
3a03070f5d Merge branch 'develop' into sidv/v8Coverage
* develop:
  Update docs
  Cleanup
  Clean up some spacing in examples
  Correct the Gantt milestones example
  fix(class): keep members in namespace classes
2023-06-29 12:53:56 +05:30
Sidharth Vinod
562910e831 Merge pull request #4532 from tomperr/fix/4519-namespace-lose-members
fix(class): keep members in namespace classes
2023-06-29 11:57:22 +05:30
sidharthv96
85fdbab6b9 Update docs 2023-06-29 05:16:38 +00:00
Sidharth Vinod
3fac8d7be5 Merge pull request #4561 from AlexMooney/patch-1
Fix up Gantt Chart demo
2023-06-29 10:43:02 +05:30
Sidharth Vinod
47db1a3c9f Cleanup 2023-06-29 10:36:21 +05:30
Alex Mooney
491f8c1259 Clean up some spacing in examples 2023-06-28 15:14:28 -07:00
Alex Mooney
83bda9febd Correct the Gantt milestones example 2023-06-28 14:37:08 -07:00
Sidharth Vinod
0d833fb4ce Use v8 coverage 2023-06-28 23:28:23 +05:30
sidharthv96
c11ac644a1 Update docs 2023-06-28 07:39:44 +00:00
Sidharth Vinod
6aae7450aa Merge pull request #4557 from nienow/patch-1
Add Standard Notes extension in integrations page
2023-06-28 13:05:22 +05:30
Sidharth Vinod
c042c4a5ef Merge pull request #4553 from tomperr/fix/4550-chaining-style
fix(flowchart): allow multiple vertices with style
2023-06-28 13:02:55 +05:30
Sidharth Vinod
0a3dcfaa4c Merge pull request #4556 from Yokozuna59/add-cypress-coverage-clean
add cypress coverage clean
2023-06-28 12:45:36 +05:30
Random Bits
777f6d9749 Add Standard Notes extension in integrations page 2023-06-27 21:28:36 -05:00
Yokozuna59
191309a79d run lint:fix 2023-06-28 03:34:28 +03:00
Yokozuna59
346daa2327 prettierignore .nyc_output 2023-06-28 03:12:46 +03:00
Yokozuna59
21e3001f4f add coverage:cypress:clean script 2023-06-28 03:11:01 +03:00
Yokozuna59
38ba45f735 run lint:fix 2023-06-28 01:35:27 +03:00
Yokozuna59
925e76e283 Merge branch 'develop' into resolve-info-html-assignment 2023-06-28 01:29:14 +03:00
Yokozuna59
b11c38ea00 run docs:build to fix linting issue 2023-06-27 21:25:55 +03:00
Yokozuna59
2b0f078c99 resolve lint issues for no-inferrable-types 2023-06-27 21:09:26 +03:00
Tom PERRILLAT-COLLOMB
9e024fd5f5 allow multiple vertices with style 2023-06-27 20:04:47 +02:00
Yokozuna59
48fc60f866 fix wrong config paramater in some cypress spec
- flowchart
- mindmap
2023-06-27 20:59:43 +03:00
Yokozuna59
a2cf41c9c0 convert cypress/helpers/util.js into ts
- add types for parameter and returned value and variables
- change the deperated `unescape` into `decodeURIComponent`
- create `CypressConfig` and `CypressMermaidConfig` and `CodeObject` types
- add default value for some parameter
2023-06-27 20:53:01 +03:00
Yokozuna59
6cbd24f704 convert file from js into ts 2023-06-27 20:50:42 +03:00
Yokozuna59
226960ef46 refactor mermaidAPI accessibilities 2023-06-27 20:07:50 +03:00
Yokozuna59
228bafa909 refactor accessibility
- remove @ts-ignore comments
- rename vitest test and describe title
- remove unnecessary types, e.i, `null` and `number`
- clean `addSVGa11yTitleDescription` and `setA11yDiagramInfo` functions
2023-06-27 20:04:41 +03:00
nirname
19bea10983 Update docs 2023-06-27 14:54:57 +00:00
Nikolay Rozhkov
8b111760b1 Updates after review 2023-06-27 17:50:51 +03:00
nirname
301073a60d Update docs 2023-06-27 13:51:44 +00:00
Sidharth Vinod
d9db2edf5a Merge pull request #4539 from ellenealds/patch-1
Update Tutorials.md
2023-06-27 19:16:31 +05:30
Nikolay Rozhkov
149cc44c39 Empty 2023-06-27 16:46:20 +03:00
Sidharth Vinod
f7c999a6b3 Merge pull request #4548 from mermaid-js/renovate/node-20.x
chore(deps): update node.js to v20
2023-06-27 19:09:15 +05:30
Sidharth Vinod
7fe9c9e139 Docs Build 2023-06-27 19:07:34 +05:30
Nikolay Rozhkov
e1c9aec775 Merge remote-tracking branch 'nirname/develop' into feature/4492_sankey-diagrams 2023-06-27 16:25:18 +03:00
Nikolay Rozhkov
f0231ad9b1 Lint 2023-06-27 16:22:12 +03:00
Nikolay Rozhkov
0bbf0555d3 Fix linters 2023-06-27 16:17:55 +03:00
Nikolay Rozhkov
d4d7ce5a4b Fixed majority of ts errors for sankey 2023-06-27 16:12:44 +03:00
ellenealds
0b663ecbba Update cSpell.json 2023-06-27 13:59:33 +01:00
Nikolay Rozhkov
bbba643288 Rmoved unnecessary imports in tests 2023-06-27 15:30:53 +03:00
Nikolay Rozhkov
830319e3db Removed unnecessary TODO 2023-06-27 15:21:36 +03:00
Nikolay Rozhkov
32c8524317 Put d3-sankey under mermaid package 2023-06-27 15:15:34 +03:00
Nikolay Rozhkov
616c5e6914 Move UID to separate file, refine run sh 2023-06-27 15:05:25 +03:00
renovate[bot]
22a1813e9e chore(deps): update node.js to v20 2023-06-27 12:00:44 +00:00
Sidharth Vinod
f27015fcf8 Merge pull request #4547 from mermaid-js/renovate/major-workbox-monorepo
chore(deps): update dependency workbox-window to v7
2023-06-27 17:23:44 +05:30
Sidharth Vinod
d2ff3a63e8 Merge pull request #4524 from mcbeelen/docs/label-color-timelines
docs: Howto on foreground color on timelines
2023-06-27 17:23:24 +05:30
Nikolay Rozhkov
605e8d4a92 Sankey refactoring 2023-06-27 14:11:06 +03:00
Marco Beelen
e2f21a2d98 Lint fix 2023-06-27 13:03:31 +02:00
Marco Beelen
f606ad2d9d docs: Howto on foreground color on timelines 2023-06-27 11:23:54 +02:00
renovate[bot]
1730a229a5 chore(deps): update dependency workbox-window to v7 2023-06-27 09:21:55 +00:00
Sidharth Vinod
dff0f1e7d4 Merge pull request #4545 from mermaid-js/renovate/eslint-plugin-unicorn-47.x
chore(deps): update dependency eslint-plugin-unicorn to v47
2023-06-27 14:50:48 +05:30
renovate[bot]
b7af9bace4 chore(deps): update dependency eslint-plugin-unicorn to v47 2023-06-27 08:00:16 +00:00
Sidharth Vinod
a167d61d2a Merge pull request #4546 from mermaid-js/renovate/jsdom-22.x
chore(deps): update dependency jsdom to v22
2023-06-27 13:28:56 +05:30
renovate[bot]
f48652322d chore(deps): update dependency jsdom to v22 2023-06-27 07:13:43 +00:00
Sidharth Vinod
b95b2790dc Merge pull request #4544 from mermaid-js/renovate/eslint-plugin-jsdoc-46.x
chore(deps): update dependency eslint-plugin-jsdoc to v46
2023-06-27 12:42:01 +05:30
Sidharth Vinod
fa81bf113b Merge pull request #4543 from mermaid-js/renovate/patch-all-patch
fix(deps): update all patch dependencies (patch)
2023-06-27 12:41:39 +05:30
renovate[bot]
120029913d chore(deps): update dependency eslint-plugin-jsdoc to v46 2023-06-27 06:23:27 +00:00
renovate[bot]
aa67646b5a fix(deps): update all patch dependencies 2023-06-27 06:22:43 +00:00
Sidharth Vinod
a20aa4f0f5 Merge pull request #4541 from Yokozuna59/add-suggested-solutions-field-in-bug-report
add `Suggested Solutions` field in `bug_report.yml`
2023-06-27 11:51:55 +05:30
Sidharth Vinod
b60ec8e5ff Update .github/ISSUE_TEMPLATE/bug_report.yml 2023-06-27 11:51:44 +05:30
Sidharth Vinod
2b463237b0 Merge pull request #4521 from schackartk/docs/4480_add_citation_file
Add citation.cff file
2023-06-27 11:43:59 +05:30
Sidharth Vinod
7bd4e03005 Fix lint issue 2023-06-27 11:38:04 +05:30
Sidharth Vinod
8565a3106d Add release-date 2023-06-27 11:35:06 +05:30
Sidharth Vinod
2bec82707f Merge pull request #4528 from Yokozuna59/bug/4527_fix-optional-style-issue
fix not rendered style when style is optional
2023-06-27 11:30:15 +05:30
Sidharth Vinod
5baeda0b5e Merge pull request #4540 from tomperr/fix/4536-double-circle-style
fix(flowchart): apply style on doublecircle
2023-06-27 11:23:26 +05:30
Yokozuna59
d15590f0a5 add suggested solutions field in bug_report.yml 2023-06-27 02:31:09 +03:00
Yokozuna59
760548335c Merge branch 'develop' into standardized-pie-definitions 2023-06-27 01:45:35 +03:00
Tom PERRILLAT-COLLOMB
5a96bd1b9f fix(flowchart): apply style on doublecircle 2023-06-27 00:22:59 +02:00
Yokozuna59
64a28be5e3 rename getDiagramStyles type into DiagramStylesProvider 2023-06-26 20:34:21 +03:00
Yokozuna59
8b67200717 change options paramter to any instead of unknown 2023-06-26 19:31:53 +03:00
Yokozuna59
3106ddbd1e add getDiagramStyles type and use it in style.ts 2023-06-26 19:28:22 +03:00
Yokozuna59
f020f4a292 remove diagramTheme arrow function return
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-06-26 19:12:04 +03:00
Yokozuna59
0a6fc1b582 Merge branch 'mermaid-js:develop' into resolve-info-html-assignment 2023-06-26 19:06:19 +03:00
Yokozuna59
c439424511 Merge branch 'mermaid-js:develop' into bug/4527_fix-optional-style-issue 2023-06-26 19:06:08 +03:00
Sidharth Vinod
2fe5750be1 Merge pull request #4531 from Yokozuna59/fix-cspell-issue-in-md-files
fix cspell issues in *.md files
2023-06-26 21:32:44 +05:30
Nikolay Rozhkov
b0825ebb35 Import at the top 2023-06-26 18:37:41 +03:00
Yokozuna59
20eb28e1a4 fix cspell issues in *.md files 2023-06-26 18:21:09 +03:00
Yokozuna59
f2c40271b2 change diagramTheme and themes to return string 2023-06-26 18:06:48 +03:00
renovate[bot]
f90a7dc784 fix(deps): update all patch dependencies 2023-06-26 03:12:45 +00:00
Nikolay Rozhkov
a38733346f Removed unnecessary configs and extra code 2023-06-25 21:56:14 +03:00
Nikolay Rozhkov
c5b89d127d Update docs 2023-06-25 01:38:31 +03:00
Nikolay Rozhkov
95ab598ea4 Fix docs 2023-06-25 01:31:53 +03:00
Nikolay Rozhkov
2a22bae1f9 Update docs 2023-06-25 01:18:38 +03:00
Tom PERRILLAT-COLLOMB
61e5dbeaa6 fix(class): keep members in namespace classes 2023-06-25 00:15:35 +02:00
Nikolay Rozhkov
6a893a758b Styles are optional 2023-06-25 01:07:11 +03:00
Nikolay Rozhkov
1d6074dbfa Sankey: Use [] instead of Array 2023-06-25 00:42:12 +03:00
Nikolay Rozhkov
db2a556f62 Cleanup 2023-06-25 00:23:42 +03:00
Nikolay Rozhkov
b23e86aea3 Added options for coloring 2023-06-25 00:22:36 +03:00
Nikolay Rozhkov
1674f12b62 Renamed sankey to sankey-beta 2023-06-24 23:11:54 +03:00
Yokozuna59
07f6358a80 fix not rendered style when style is optional 2023-06-24 22:18:00 +03:00
Nikolay Rozhkov
2f281ba228 Improvements for sankey diagram after review 2023-06-24 22:02:18 +03:00
Nikolay Rozhkov
0a7d429192 Fixes for docker local development 2023-06-24 21:37:19 +03:00
Yokozuna59
30a66533bc use backtick for cleaner variable string and the DOM document for default values 2023-06-23 23:26:45 +03:00
ellenealds
b117265fcb Update Tutorials.md
Added tutorial and application demo for AI generated Mermaid Mind Map
2023-06-23 19:08:13 +01:00
Kenneth Schackart
7f098c069c Add citation.cff file 2023-06-22 16:00:40 -07:00
Nikolay Rozhkov
d766ac6d20 Prettier 2023-06-22 23:50:11 +03:00
Nikolay Rozhkov
73840ead05 Decrease docker mem 2023-06-22 23:38:00 +03:00
Nikolay Rozhkov
7ace602a6c Fixed linters 2023-06-22 23:24:41 +03:00
Nikolay Rozhkov
c75c106490 Put styles back 2023-06-22 23:02:13 +03:00
Nikolay Rozhkov
d9036c7af1 Added gradient for sankey and cleaned code 2023-06-22 21:26:39 +03:00
Nikolay Rozhkov
518da3236f Remove unnecessary parsing stage from render and prepare text before parsing 2023-06-22 18:28:02 +03:00
Nikolay Rozhkov
104aece46e Cleanup sankey diagrams according code review 2023-06-22 17:35:46 +03:00
Nikolay Rozhkov
9a29066426 Ensure that sankey keyword does not intefere with csv 2023-06-22 16:53:44 +03:00
Nikolay Rozhkov
be9cd480aa Sankey syntax has beed reduced 2023-06-22 15:58:09 +03:00
Yokozuna59
41c5152015 Merge branch 'mermaid-js:develop' into standardized-pie-definitions 2023-06-21 15:23:21 +03:00
Yokozuna59
b0ae0708e1 Merge branch 'mermaid-js:develop' into resolve-info-html-assignment 2023-06-21 15:23:11 +03:00
Nikolay Rozhkov
272615e580 Fixed tests and added node alignment 2023-06-21 03:54:55 +03:00
Nikolay Rozhkov
bc33c8210c Merge branch 'develop' into feature/4492_sankey-diagrams 2023-06-21 03:00:27 +03:00
Nikolay Rozhkov
7bc5c1930e Fix specs 2023-06-21 02:58:25 +03:00
Nikolay Rozhkov
24d9f59d69 Fix specs 2023-06-21 02:52:21 +03:00
Nikolay Rozhkov
6c6efb24f4 Fix graph width 2023-06-21 01:58:57 +03:00
Nikolay Rozhkov
362648b74b Trim trailing spaces 2023-06-21 01:37:06 +03:00
Nikolay Rozhkov
a2c055ba5d CSV syntax implementation 2023-06-21 01:29:34 +03:00
Yokozuna59
796a761a7d remove unnecessary types in pieRenderer 2023-06-21 00:32:14 +03:00
Yokozuna59
09c4a26509 rename PieDb interface and more types with null sefety 2023-06-21 00:22:56 +03:00
Yokozuna59
e5907ec5ea add info in sandbox cypress test case 2023-06-20 17:53:33 +03:00
Yokozuna59
daa98a2f54 use body of document instead of document itself in infoRenderer 2023-06-20 17:52:50 +03:00
Yokozuna59
99da3d7cd5 validate that height in putInfoIframe is defined 2023-06-20 17:49:07 +03:00
sidharthv96
3d11781542 Update docs 2023-06-20 07:34:18 +00:00
Sidharth Vinod
ecc5289c5f Merge pull request #4512 from tobie/patch-1
Fix typo in quadrant chart documentation
2023-06-20 13:00:34 +05:30
Nikolay Rozhkov
6077ba5405 Updated syntax and fixed comments from review 2023-06-20 03:06:47 +03:00
Tobie Langel
53eada8028 Fix typo in quadrant chart documentation 2023-06-19 21:33:40 +02:00
Yokozuna59
ce9d0e2e6a use global useMaxWidth until making setConfig updates pie setConfig 2023-06-19 22:07:15 +03:00
Yokozuna59
ae8860eec3 add undefined to getConfig return type until handle other diagrams 2023-06-19 21:56:35 +03:00
Yokozuna59
67d287f85e use local config instead of glolal one in pieRenderer 2023-06-19 21:51:38 +03:00
Yokozuna59
9c2b95fc3c add config functions to DiagramDB interface 2023-06-19 20:13:15 +03:00
Yokozuna59
3a22d4a501 shorten vitest pie.spec.ts by removing one time use variables 2023-06-19 17:57:39 +03:00
Yokozuna59
cecf759b0b add showData unit test case 2023-06-19 17:52:28 +03:00
Yokozuna59
35c6b671de add config unit test cases for pie chart 2023-06-19 17:46:19 +03:00
Yokozuna59
c894c1f5b5 add Required and RequiredDeep to pieDb, add config functions 2023-06-19 17:45:38 +03:00
Yokozuna59
a92571d588 add type-fest to mermaid dev deps 2023-06-19 17:40:01 +03:00
Yokozuna59
34a47706fd update pnpm-lock.yaml 2023-06-19 13:41:36 +03:00
Yokozuna59
906d909d87 Merge branch develop into standardized-pie-definitions 2023-06-19 13:39:41 +03:00
Sidharth Vinod
b041e5168b Merge pull request #4510 from mermaid-js/renovate/patch-all-patch
fix(deps): update all patch dependencies (patch)
2023-06-19 11:02:10 +05:30
renovate[bot]
14582fb13d fix(deps): update all patch dependencies 2023-06-19 04:53:17 +00:00
Nikolay Rozhkov
fd3ffdc22a Prettify 2023-06-19 04:34:41 +03:00
Nikolay Rozhkov
1009bb8fb7 Prettify 2023-06-19 04:29:41 +03:00
Nikolay Rozhkov
6722ac7540 Multiple improvements on syntax
Syntax has been simplified
Removed extra initial states
Removed unused groups
Nodes can be wrapped in double qotes
Updated demo page
2023-06-19 04:02:40 +03:00
Nikolay Rozhkov
726efdad53 Fixed packaged 2023-06-19 01:09:21 +03:00
Nikolay Rozhkov
9dbb9872bc Fix linters 2023-06-19 01:05:33 +03:00
Nikolay Rozhkov
19f858b73b Fixed nodes duplicates 2023-06-19 01:05:33 +03:00
Nikolay Rozhkov
d22131e2fb It can read syntax and draw diagram 2023-06-19 01:05:33 +03:00
Nikolay Rozhkov
f5add81e29 Simple flow is done 2023-06-19 01:05:33 +03:00
Nikolay Rozhkov
c41fc67254 Added nodes and paths 2023-06-19 01:05:33 +03:00
Nikolay Rozhkov
81542142f5 Fix errors 2023-06-19 01:05:33 +03:00
Nikolay Rozhkov
afaf87e414 At last something is working 2023-06-19 01:05:20 +03:00
Nikolay Rozhkov
1782f69c8f Increased mem for lint, fixed spell checking, run lint 2023-06-19 01:05:20 +03:00
Nikolay Rozhkov
40f7105ae4 Started renderer development 2023-06-19 01:05:20 +03:00
Nikolay Rozhkov
5eae790740 Sankey stream is ending on node only 2023-06-19 01:05:20 +03:00
Nikolay Rozhkov
f71769e07b Attributes within strings 2023-06-19 01:05:09 +03:00
Nikolay Rozhkov
b4b535f997 Recognizing attributes 2023-06-19 01:05:09 +03:00
Nikolay Rozhkov
d2226604e4 Recognizing attrubutes 2023-06-19 01:05:09 +03:00
Nikolay Rozhkov
567686e140 Implementing new syntax 2023-06-19 01:05:09 +03:00
Nikolay Rozhkov
ad95c99cc2 Started sankey syntax 2023-06-19 01:04:45 +03:00
Nikolay Rozhkov
c874d74faf Some fixes to docker and demos 2023-06-19 01:02:50 +03:00
Nikolay Rozhkov
fe3dd5a531 Updated dockerfile 2023-06-19 01:02:50 +03:00
Nikolay Rozhkov
8e001b92f2 Cleared sankey renderer 2023-06-19 01:02:50 +03:00
Nikolay Rozhkov
6b40b394c8 Picked state diagram as a sample for sankey 2023-06-19 01:02:50 +03:00
Nikolay Rozhkov
c2417de5f1 Stated sankey backbone 2023-06-19 01:02:50 +03:00
Nikolay Rozhkov
116453d2a7 Desired syntax sankey 2023-06-19 01:02:49 +03:00
Nikolay Rozhkov
7f19e50403 Desired sankey syntax 2023-06-19 01:02:49 +03:00
Nikolay Rozhkov
4018fad416 Ideas about sankey diagram syntax 2023-06-19 01:02:49 +03:00
Yokozuna59
1d0aa763de document pie useWidth and update other pie config attributes 2023-06-18 17:53:28 +03:00
Yokozuna59
f6dc089ddf add D3Sections type with variable renaming 2023-06-18 17:39:15 +03:00
Sidharth Vinod
2cc9a52e9e Merge pull request #3923 from tomperr/feature/3036_group_style_definition
feat(flowchart): add classDef style group definition
2023-06-18 16:04:11 +05:30
Sidharth Vinod
0c2b5d0d79 Revert change to if 2023-06-18 13:13:40 +05:30
Sidharth Vinod
e3e12bbc78 Update _id to id 2023-06-18 13:02:35 +05:30
Sidharth Vinod
bfa76af434 Merge branch 'develop' into pr/tomperr/3923
* develop: (783 commits)
  chore(deps): update all minor dependencies
  chore: Run codecov based on E2E test status
  change REAMDME.md coverage from coveralls into codecov
  Add codecov.yaml
  Upload E2E
  set normal mode for vitest coverage
  Fix path name
  Add codecov to unit tests
  Add codecov to E2E
  chore: Add coverage scripts
  chore: add excludes
  chore: update deps
  Merge coverages
  Add coverage paths
  Rebuild
  chore: update pnpm
  Add coverage for E2E tests
  rename plugin variable into info in infoDetector.ts
  remove cypress/platform/index.html
  update pnpm-lock.yaml
  ...
2023-06-18 12:45:58 +05:30
renovate[bot]
2ee37752c8 chore(deps): update all minor dependencies 2023-06-18 06:35:43 +00:00
Yokozuna59
95e01b4935 move PieDiagramConfig into pieTypes 2023-06-18 01:45:21 +03:00
Sidharth Vinod
a76097a843 Merge pull request #4507 from Yokozuna59/add-codecov-to-root-readme
change REAMDME.md coverage from coveralls into codecov
2023-06-18 02:59:19 +05:30
Sidharth Vinod
2dd2f310af Merge branch 'develop' into pr/Yokozuna59/4507
* develop:
  chore: Run codecov based on E2E test status
2023-06-17 23:23:36 +05:30
Sidharth Vinod
3340240b9f chore: Run codecov based on E2E test status 2023-06-17 23:23:00 +05:30
Yokozuna59
7ee971eb9e change REAMDME.md coverage from coveralls into codecov 2023-06-17 17:29:43 +03:00
Sidharth Vinod
548874eb6a Merge pull request #4504 from mermaid-js/sidv/codecov
Add codecov
2023-06-17 18:25:53 +05:30
Sidharth Vinod
152b295837 Add codecov.yaml 2023-06-17 18:07:49 +05:30
Sidharth Vinod
f8540e9468 Upload E2E 2023-06-17 17:54:13 +05:30
Yokozuna59
9145a9e69e Merge branch 'mermaid-js:develop' into standardized-pie-definitions 2023-06-17 15:21:39 +03:00
Sidharth Vinod
7bebe2b348 Merge pull request #4505 from Yokozuna59/bug/set-normal-mode-for-vitest-coverage
set normal mode for vitest coverage
2023-06-17 17:47:32 +05:30
Yokozuna59
0f45124f84 set normal mode for vitest coverage 2023-06-17 15:14:54 +03:00
Sidharth Vinod
2ad32f9208 Fix path name 2023-06-17 17:44:27 +05:30
Sidharth Vinod
8d244062e2 Add codecov to unit tests 2023-06-17 17:40:06 +05:30
Sidharth Vinod
1e84668270 Add codecov to E2E 2023-06-17 17:34:19 +05:30
Yokozuna59
6941814729 update pnpm-lock.yaml 2023-06-17 15:01:20 +03:00
Yokozuna59
32d3001e2a Merge branch 'develop' into standardized-pie-definitions 2023-06-17 14:54:44 +03:00
Sidharth Vinod
702c3ea80f Merge pull request #4500 from mermaid-js/sidv/mergeCoverage
Merge coverage
2023-06-17 17:22:49 +05:30
Yokozuna59
452e543e77 Merge branch 'develop' into standardized-pie-definitions 2023-06-17 14:43:51 +03:00
Sidharth Vinod
cc7f555160 chore: Add coverage scripts 2023-06-17 17:11:05 +05:30
Sidharth Vinod
8d38ccc44c Merge branch 'develop' into sidv/mergeCoverage
* develop:
2023-06-17 16:52:28 +05:30
Sidharth Vinod
299b423e6b chore: add excludes 2023-06-17 16:52:03 +05:30
Sidharth Vinod
6c96650043 chore: update deps 2023-06-17 16:51:30 +05:30
Sidharth Vinod
f98087ebce Merge pull request #4498 from mermaid-js/sidv/E2ECoverage
Add coverage for E2E tests
2023-06-17 16:48:58 +05:30
Yokozuna59
23a5832fc9 add null safety in pieRenderer 2023-06-17 04:05:07 +03:00
Yokozuna59
8794fa0b38 clean up pieRenderer.ts 2023-06-17 03:28:08 +03:00
Yokozuna59
f2338f5b66 remove vanilla-extract from dev dependencies 2023-06-17 00:42:29 +03:00
Yokozuna59
5aba2fed8b remove cy.get of info diagram 2023-06-17 00:01:54 +03:00
Yokozuna59
bd6795032f return pieRender back to original and update it partially 2023-06-16 23:58:56 +03:00
Yokozuna59
c17b723295 convert pie.spec.js to ts, remove cy.get and useless comment, add showData unit test case 2023-06-16 23:45:13 +03:00
Yokozuna59
231a9630df do deep cloning on section field in pie clear 2023-06-16 23:30:41 +03:00
Yokozuna59
bdb967e0a8 fix renderer import in pieDiagram 2023-06-16 23:09:10 +03:00
Yokozuna59
ea3fbbd58d initial converting pie files 2023-06-16 23:05:06 +03:00
Yokozuna59
afea3e8f37 clean up demos/pie.html 2023-06-16 23:03:42 +03:00
Yokozuna59
4e7dbf76cc add SVG type in configureSvgSize function 2023-06-16 23:03:07 +03:00
Sidharth Vinod
8a0a874d1c Merge coverages 2023-06-17 01:24:15 +05:30
Yokozuna59
a3901f691a add @types/d3-scale and @types/d3-shape` to mermaid dev deps 2023-06-16 22:47:40 +03:00
Sidharth Vinod
7434031003 Add coverage paths 2023-06-16 23:54:02 +05:30
Sidharth Vinod
3011b7a1ea Merge branch 'develop' into sidv/E2ECoverage
* develop:
  Rebuild
  Fix lint
  Changed C4 stereotype braces to «»
2023-06-16 23:23:40 +05:30
Sidharth Vinod
5c63c5ceae Rebuild 2023-06-16 23:12:03 +05:30
Pierrick Wauquier
9efd9e8a45 defer a bit for electron to catch up 2023-06-16 18:01:52 +02:00
Sidharth Vinod
6d4a064df2 Merge pull request #4460 from jonathan-r-young/develop
Changed C4 stereotype braces to «»
2023-06-16 20:38:38 +05:30
Sidharth Vinod
69d9c09f33 chore: update pnpm 2023-06-16 20:32:07 +05:30
Sidharth Vinod
ecc4aa734b Merge branch 'develop' into sidv/E2ECoverage
* develop: (43 commits)
  rename plugin variable into info in infoDetector.ts
  remove cypress/platform/index.html
  update pnpm-lock.yaml
  indent info.html files
  update pnpm-lock.yaml
  remove empty options in cypress info.spec.ts
  format and add theme to cypress info.html
  convert the cypress info.spec.js into ts
  add messing timeline and info demoes links
  change infoDb db export
  remove default export in info files
  resolve db import in info.spec.ts
  remove assigned variables to their variables and export db without default
  use object destructuring for getConfig in infoRenderer
  move default_info_db into infoDbOF
  remove id and diagram assigning in info loader
  assign returned variables to their variables
  remove handled `ts-ignore` in info diagram
  handle optional `.styles`
  add info fields interface
  ...
2023-06-16 20:31:52 +05:30
Sidharth Vinod
547358fc7e Add coverage for E2E tests 2023-06-16 20:25:40 +05:30
Pierrick Wauquier
270586095f fix typo in test description 2023-06-16 16:37:34 +02:00
Pierrick Wauquier
aa1b998fbf always resolve in the end 2023-06-16 16:32:57 +02:00
Pierrick Wauquier
8b6485035e add failing test 2023-06-16 16:32:11 +02:00
Sidharth Vinod
15dbf22a40 Merge pull request #4486 from Yokozuna59/standardized-diagrams-definitions
standardize info diagram definitions
2023-06-16 17:44:31 +05:30
Sidharth Vinod
1a31dc4be8 Merge pull request #4495 from mermaid-js/update-latest-news-section
Update latest news section
2023-06-16 08:24:15 +05:30
steph
9a692b3437 update latest news section 2023-06-15 16:20:22 -07:00
Yokozuna59
95bba56bd8 rename plugin variable into info in infoDetector.ts 2023-06-16 00:07:06 +03:00
Yokozuna59
45f8fb4a84 remove cypress/platform/index.html 2023-06-16 00:05:39 +03:00
Yokozuna59
302f335704 update pnpm-lock.yaml 2023-06-15 23:52:11 +03:00
Yokozuna59
896a8a23ca indent info.html files 2023-06-15 23:51:03 +03:00
Yokozuna59
9928a15a66 update pnpm-lock.yaml 2023-06-15 14:44:26 +03:00
Yokozuna59
2b388ec6ec Merge branch 'develop' into standardized-diagrams-definitions 2023-06-15 11:38:41 +03:00
Knut Sveidqvist
cf706ea917 Merge pull request #4493 from mermaid-js/develop
Release docs
2023-06-15 09:23:24 +02:00
Sidharth Vinod
3662869ce1 Ignore slack link 2023-06-15 12:50:59 +05:30
Sidharth Vinod
415e73b6f4 Fix lycheeignore 2023-06-15 12:48:20 +05:30
Sidharth Vinod
609530b246 Fix lycheeignore 2023-06-15 12:39:34 +05:30
Sidharth Vinod
cae612dfff Merge branch 'master' into develop
* master:
  Use script instead of npm package.
  feat: Add plausible
  update cSpell
  update latest news section
2023-06-15 12:27:47 +05:30
Sidharth Vinod
7cd62bd052 Revert patch changes 2023-06-15 12:25:56 +05:30
Sidharth Vinod
d4a473b88a Revert patch changes 2023-06-15 12:25:10 +05:30
Sidharth Vinod
c73d4939e9 Ignore localhost 2023-06-15 12:23:17 +05:30
Sidharth Vinod
beb3a227d1 Merge pull request #3814 from weedySeaDragon/docs/3682-developer-contributing
chore: revise Contributing documentation
2023-06-15 12:21:29 +05:30
Sidharth Vinod
66116ef8a0 Add docker 2023-06-15 12:08:54 +05:30
Sidharth Vinod
307aa6f623 Merge branch 'develop' into pr/weedySeaDragon/3814
* develop:
  Rerun
  Support for development in Docker
2023-06-15 12:08:30 +05:30
Sidharth Vinod
08c1071382 Ignore localhost links 2023-06-15 12:06:29 +05:30
Sidharth Vinod
186de337b4 Remove duplication from Contributing.md 2023-06-15 12:04:37 +05:30
Sidharth Vinod
8426716886 Merge pull request #4478 from nirname/feature/docker-development-support
Support for development in Docker
2023-06-15 10:34:09 +05:30
Sidharth Vinod
ecec4d9e4c Update development.md 2023-06-15 10:31:16 +05:30
Sidharth Vinod
5b4efbad49 ignore .pnpm-store 2023-06-15 09:50:14 +05:30
Sidharth Vinod
1a6fd69f65 Merge branch 'develop' into pr/weedySeaDragon/3814
* develop: (815 commits)
  Move filetype Recommendations to the top
  Update docs
  Update integrations.md per review
  Disable coveralls
  Update coveralls
  Ignore bundlephobia
  Update docs
  strawman extension and mime type docs
  Update docs
  Rename info to note
  Rename "info" to "note"
  Update all patch dependencies
  Fix Directives Documentation
  Run docs:build
  Update tutorial link
  Run build
  Fix link to Tutorials from n00b-overview page
  Correct timeline spelling
  UPdated version to 10.2.3
  Remove old changelog
  ...
2023-06-15 09:49:26 +05:30
Yokozuna59
b7795ef12d remove empty options in cypress info.spec.ts 2023-06-15 03:18:09 +03:00
Yokozuna59
35e81f3fd4 format and add theme to cypress info.html 2023-06-15 02:56:29 +03:00
Yokozuna59
7e639bec3a convert the cypress info.spec.js into ts 2023-06-15 02:41:07 +03:00
Yokozuna59
9deae27c82 add messing timeline and info demoes links 2023-06-15 02:30:51 +03:00
Yokozuna59
689ffbf5a5 change infoDb db export 2023-06-15 01:01:35 +03:00
Yokozuna59
f630fba392 remove default export in info files 2023-06-14 23:27:27 +03:00
Yokozuna59
bf346ea155 resolve db import in info.spec.ts 2023-06-14 22:23:31 +03:00
Yokozuna59
d6bd59c46e remove assigned variables to their variables and export db without default 2023-06-14 22:09:15 +03:00
Yokozuna59
0cc93d38c6 use object destructuring for getConfig in infoRenderer 2023-06-14 22:04:28 +03:00
Yokozuna59
6ff33149e0 move default_info_db into infoDbOF 2023-06-14 22:01:27 +03:00
Yokozuna59
638c3691a8 remove id and diagram assigning in info loader 2023-06-14 21:14:55 +03:00
Yokozuna59
599fb3a728 assign returned variables to their variables 2023-06-14 20:13:22 +03:00
Yokozuna59
4b7ed7845b remove handled ts-ignore in info diagram 2023-06-14 17:28:37 +03:00
Yokozuna59
0c449bbd27 handle optional .styles 2023-06-14 17:27:04 +03:00
Yokozuna59
8d60ef6d0a add info fields interface 2023-06-14 13:54:09 +03:00
Yokozuna59
6af2438474 add default info db and recreate clear function for info 2023-06-14 13:48:39 +03:00
Sidharth Vinod
56a9625d95 Merge pull request #4485 from bollwyvl/gh-3098-document-extension-and-mime
Document recommended file extension and MIME type docs
2023-06-13 21:20:19 +05:30
Sidharth Vinod
921bbd1a9f Move filetype Recommendations to the top 2023-06-13 21:19:01 +05:30
Yokozuna59
750b1d2223 add HTML type and change svg type generic types 2023-06-13 16:56:31 +03:00
Yokozuna59
ae14f6a947 add parial parts to info graph 2023-06-13 18:50:08 +03:00
Yokozuna59
daee545e78 ignore ts check for renders until handle them 2023-06-13 17:59:41 +03:00
Yokozuna59
ab0eb6c9bf add @types/d3-selection to mermaid dev deps 2023-06-13 17:58:25 +03:00
Yokozuna59
2a5b122d0c standardize ts-ignore for info graph 2023-06-13 15:32:00 +03:00
bollwyvl
3e20a42b3e Update docs 2023-06-13 12:00:46 +00:00
Nicholas Bollweg
e2a32e5040 Update integrations.md per review 2023-06-13 06:57:16 -05:00
Yokozuna59
f0b1529727 rename inf into toggle for better readability in infoDb 2023-06-13 13:27:15 +03:00
Yokozuna59
171d7a04f4 caps DB part in DiagramDb and InfoDb 2023-06-13 12:24:10 +03:00
Sidharth Vinod
445da58b51 Merge branch 'develop' into sidv/splitUnicode
* develop:
  Disable coveralls
2023-06-13 12:50:52 +05:30
Sidharth Vinod
40199e28b8 Disable coveralls 2023-06-13 12:23:41 +05:30
Sidharth Vinod
25a85eef69 Merge branch 'develop' into sidv/splitUnicode
* develop:
  Update coveralls
  Ignore bundlephobia
  Run docs:build
  Correct timeline spelling
2023-06-13 11:50:08 +05:30
Sidharth Vinod
245c4f8c78 Update coveralls 2023-06-13 11:49:43 +05:30
Sidharth Vinod
b36a0177db Use joiner to split unicode 2023-06-13 11:42:39 +05:30
Sidharth Vinod
dd4e14690d Add types 2023-06-13 11:26:25 +05:30
Sidharth Vinod
5903792207 rename handle-markdown-text 2023-06-13 10:34:24 +05:30
Nikolay Rozhkov
616d445074 Rerun 2023-06-13 00:37:31 +03:00
Nikolay Rozhkov
cdea0ea829 Support for development in Docker
Updated lintignore and move dockerfile to .dev

Fix

Updated contributing

Fixing GA

Fix contributing.md

Fixing issues after review

No need to change .eslintignore
2023-06-13 00:20:14 +03:00
Yokozuna59
d0e8074de7 remove empty styles in info diagram 2023-06-12 23:15:24 +03:00
Yokozuna59
e7b9b5a0a9 set styles as optional in DiagramDefinition 2023-06-12 23:10:20 +03:00
Yokozuna59
f35e0cafdf fix TODs type in erDiagram 2023-06-12 23:09:26 +03:00
Sidharth Vinod
af13f3430a Ignore bundlephobia 2023-06-12 23:57:22 +05:30
Yokozuna59
c78ad7dbac create ParseDirectiveDefinition type for parsing directives 2023-06-12 21:11:34 +03:00
Yokozuna59
4320fe7839 return draw function export in info renderer 2023-06-12 20:46:18 +03:00
Yokozuna59
5b4356bd43 remove unnecessary typeof Error in info diagram renderer 2023-06-12 20:34:41 +03:00
Yokozuna59
98d9205e6f update info @ts-ignore comments deception 2023-06-12 19:49:37 +03:00
Yokozuna59
dfdfa63009 add type keyword for import for info diagram files 2023-06-12 19:44:36 +03:00
Yokozuna59
e6a48f8baf standardize info diagram definition
* create types
* remove unnessery db attributes
* convert js files to ts
* remove empty styles.js
2023-06-12 19:41:37 +03:00
Yokozuna59
372b57d540 create DrawDefinition function type 2023-06-12 19:36:54 +03:00
bollwyvl
a7b75d71e4 Update docs 2023-06-12 14:14:19 +00:00
Nicholas Bollweg
64558ffa9c strawman extension and mime type docs 2023-06-12 09:09:29 -05:00
Yokozuna59
9573f336c3 standardize detectors loeader function definition with DiagramLoader type 2023-06-12 15:28:45 +03:00
Yokozuna59
6ced1673b0 standardize detector function definition with DiagramDetector type 2023-06-12 15:21:43 +03:00
Yokozuna59
e688138167 pref: change detectors from .match into .test
there is no need for matching, capturing results, and validating nullablity
just using `.test` would be enough and significantly faster

for more info, see https://stackoverflow.com/10940138/16476610
2023-06-12 14:45:08 +03:00
Yokozuna59
b11c511c5c remove unnecessary @ts-ignore and @ts-nocheck 2023-06-12 13:27:40 +03:00
Yokozuna59
5b3e565b63 update pnpm-lock.yaml file 2023-06-12 13:25:36 +03:00
Sidharth Vinod
8cbe1a9046 Fix lint 2023-06-12 15:23:43 +05:30
Sidharth Vinod
4a200473c9 Merge pull request #4467 from adamazing/patch-1
Correct "Bronze" spelling in timeline docs
2023-06-12 15:04:24 +05:30
Sidharth Vinod
c85e479f88 Merge branch 'develop' into sidv/splitUnicode
* develop:
  Update docs
  Rename info to note
  Rename "info" to "note"
  Update all patch dependencies
  Fix Directives Documentation
  Update tutorial link
  Run build
  Fix link to Tutorials from n00b-overview page
  UPdated version to 10.2.3
  Remove old changelog
  Remove old changelog
  Setting version to 10.2.2
  #4446 Improved regular expression
  #4446 Updating the cleanup criteria
  #4438 Reverted to the changes from #4285
  Fix download
  Fix compile error in docs.
  Fix Contributor link in homepage
  Update docs
  Add hint on "flowchart" and "graph" (and some more styling)
2023-06-12 14:58:58 +05:30
Sidharth Vinod
a379cd02e7 Add logs 2023-06-12 14:57:56 +05:30
Sidharth Vinod
190d79613d Merge pull request #4096 from koppor/patch-1
Add hint on "flowchart" and "graph"
2023-06-12 13:59:43 +05:30
koppor
bdd3ed41fc Update docs 2023-06-12 07:51:59 +00:00
Oliver Kopp
ea138ef29f Rename info to note 2023-06-12 09:48:28 +02:00
Oliver Kopp
26d0e5cb04 Rename "info" to "note" 2023-06-12 09:48:02 +02:00
Oliver Kopp
355b471ca0 Merge branch 'develop' into patch-1 2023-06-12 09:09:29 +02:00
Sidharth Vinod
b651be77f1 Merge pull request #4482 from mermaid-js/renovate/patch-all-patch
Update all patch dependencies (patch)
2023-06-12 12:01:52 +05:30
renovate[bot]
a754f7b699 Update all patch dependencies 2023-06-12 05:43:36 +00:00
Sidharth Vinod
2abb9541b6 Merge pull request #4475 from adamazing/fix-directives-documentation
Fix Directives Documentation
2023-06-12 11:12:13 +05:30
Adam Henley
d32d935c44 Fix Directives Documentation
Signed-off-by: Adam Henley <adamazing@gmail.com>
2023-06-10 23:31:34 +12:00
Adam Henley
c76cb93f6f Run docs:build
Signed-off-by: Adam Henley <adamazing@gmail.com>
2023-06-10 18:27:07 +12:00
Sidharth Vinod
779acb1b72 Merge pull request #4472 from Spiderpig86/patch-1
Fix link to Tutorials from n00b-overview page
2023-06-10 08:42:22 +05:30
Stanley Lim
19fab1f6a7 Update tutorial link 2023-06-09 16:52:49 -07:00
Sidharth Vinod
40f517daee Merge pull request #4473 from mermaid-js/sidv/addPlausible
Add Plausible analytics
2023-06-10 01:38:31 +05:30
Sidharth Vinod
88bda42e74 Use script instead of npm package. 2023-06-10 01:37:39 +05:30
Sidharth Vinod
9b6f2ecf42 feat: Add plausible 2023-06-10 01:20:48 +05:30
Stanley Lim
071f490047 Run build 2023-06-09 11:17:03 -07:00
Stanley Lim
6e657e56a0 Fix link to Tutorials from n00b-overview page 2023-06-09 10:41:54 -07:00
Sidharth Vinod
b3ce56c7fc Cleanup 2023-06-09 17:03:02 +05:30
Sidharth Vinod
3f080e5bc8 Merge branch 'sidv/splitUnicode' of https://github.com/mermaid-js/mermaid into sidv/splitUnicode
* 'sidv/splitUnicode' of https://github.com/mermaid-js/mermaid:
  Update docs
2023-06-09 16:57:27 +05:30
Sidharth Vinod
7b4601762a Use splitLineToFitWidth function 2023-06-09 16:57:13 +05:30
sidharthv96
d4edd98b8a Update docs 2023-06-09 11:24:11 +00:00
Sidharth Vinod
0a437f5800 feat: split unicode properly 2023-06-09 16:48:30 +05:30
Sidharth Vinod
c41df420d7 Add splitText 2023-06-09 11:06:45 +05:30
Sidharth Vinod
dad9e94816 Merge pull request #4468 from mermaid-js/update-latest-news
Update latest news section
2023-06-09 10:57:38 +05:30
steph
4adc94761d update cSpell 2023-06-08 22:00:50 -07:00
steph
a51e6e06f7 update latest news section 2023-06-08 21:55:20 -07:00
Adam Henley
768e0122e2 Correct timeline spelling
Spotted a spelling mistake while browsing the docs. 

s/Broze/Bronze/
2023-06-09 16:40:28 +12:00
Laura Valentine Tscharner
b79f9bdced docs(sequence): actor creation and destruction #1838 2023-06-08 17:44:36 +01:00
Laura Valentine Tscharner
d06bb05c5f feat(sequence): actor creation and destruction #1838 2023-06-08 17:17:31 +01:00
Knut Sveidqvist
ac9a79643c Merge branch 'release/10.2.3' 2023-06-08 16:30:10 +02:00
Knut Sveidqvist
9a080bb975 Merge branch 'release/10.2.3' into develop 2023-06-08 16:29:53 +02:00
Knut Sveidqvist
75f9de3d4a UPdated version to 10.2.3 2023-06-08 16:24:25 +02:00
Knut Sveidqvist
81e86bc87c Merge branch '10.2.2' into develop 2023-06-08 15:07:31 +02:00
Sidharth Vinod
f464212dc0 Merge pull request #4416 from MikeJeffers/bug/4408
Fix #4408: Handle wrapping long words
2023-06-08 11:46:09 +05:30
Sidharth Vinod
0ad084182a Remove old changelog 2023-06-08 11:42:14 +05:30
Sidharth Vinod
e2e9d0f1f3 Remove old changelog 2023-06-08 11:36:47 +05:30
Sidharth Vinod
ac488dd800 Merge branch 'develop' into pr/MikeJeffers/4416
* develop:
  Update docs
2023-06-08 11:13:51 +05:30
sidharthv96
d00d20fc37 Update docs 2023-06-07 18:49:51 +00:00
Sidharth Vinod
88b94dea66 Merge branch 'develop' into pr/MikeJeffers/4416
* develop: (45 commits)
  Add nextra to cSpell
  Update docs: Added Nextra to Blogs category on integrations page
  Render empty lines correctly
  Restore classes on edges for elk
  Update diagram proposal
  Update docs
  Added CKEditor and GitHub Writer to available integrations.
  Fix exceptions for empty lines
  chore(deps): update all patch dependencies
  build(deps): fix broken pnpm-lock.yaml file
  Mermaid version 10.2.0
  Mermaid Version 10.2.0-rc.4
  Label background fix
  Test commit
  Fix for regression error in sequenceDiagrams
  Update all minor dependencies
  Update all patch dependencies
  Update docs
  Add contributors profile url
  ignore ZenUML types
  ...
2023-06-08 00:16:49 +05:30
Sidharth Vinod
9896402be6 Merge branch 'develop' of https://github.com/mermaid-js/mermaid into develop
* 'develop' of https://github.com/mermaid-js/mermaid:
  Update docs: Added Nextra to Blogs category on integrations page
2023-06-08 00:16:16 +05:30
Sidharth Vinod
e9b76bba9b Add nextra to cSpell 2023-06-08 00:16:12 +05:30
Sidharth Vinod
ad09d63f65 only split if string is over length. 2023-06-08 00:07:33 +05:30
Sidharth Vinod
af7531d08a Merge pull request #4463 from try-to-fly/add-nextra-to-blogs-integrations
Update docs: Added Nextra to Blogs category on integrations page
2023-06-07 20:28:40 +05:30
微笑
eef6745272 Update docs: Added Nextra to Blogs category on integrations page 2023-06-07 16:06:52 +08:00
mikejeffers
0cb6df1ef8 refactor text width computing func 2023-06-06 23:11:07 -04:00
Jonathan Young
ab627802a8 Changed C4 stereotype braces to «» 2023-06-05 12:01:37 +01:00
Sidharth Vinod
f20ff4d580 Merge pull request #4436 from slab/zh-mermaid-empty-text
Fix exceptions for empty lines
2023-06-05 11:43:43 +05:30
Zihua Li
2a6603b33a Render empty lines correctly 2023-06-04 16:24:41 +08:00
Sidharth Vinod
6115f6976a Merge pull request #4452 from yoavst/feature/restore-classes-on-edges-for-elk
Restore classes on edges for elk
2023-06-04 12:02:54 +05:30
Yoav Sternberg
da1beb36bf Restore classes on edges for elk 2023-06-02 22:10:39 +03:00
Knut Sveidqvist
d2409dc163 Setting version to 10.2.2 2023-06-02 08:50:59 +02:00
Knut Sveidqvist
1b40f552b2 Merge pull request #4334 from mermaid-js/sidv/zenuml
Add `@mermaid-js/mermaid-zenuml` package for zenuml Integration
2023-06-02 08:41:49 +02:00
Knut Sveidqvist
5b696a72f8 Merge pull request #4448 from mermaid-js/sidv/diagramProposal
Update diagram proposal
2023-06-02 08:40:35 +02:00
Sidharth Vinod
d148a65967 Merge branch 'develop' into sidv/zenuml
* develop: (22 commits)
  Update docs
  Added CKEditor and GitHub Writer to available integrations.
  chore(deps): update all patch dependencies
  build(deps): fix broken pnpm-lock.yaml file
  Mermaid version 10.2.0
  Mermaid Version 10.2.0-rc.4
  Label background fix
  Test commit
  Fix for regression error in sequenceDiagrams
  Fix visibility issue for fields
  fix parsing issue with class diagrams
  fix: Use unicode arrows in quadrant chart axis
  fix: Use unicode arrows in quadrant chart axis
  fix lint command
  Bump version
  Back to JS with jsdoc types
  Add unsupported text
  Reduce changes in test
  Fix deps
  Fix lockfile
  ...
2023-06-02 11:59:12 +05:30
Sidharth Vinod
74ccf6410d Update diagram proposal 2023-06-02 11:50:49 +05:30
Knut Sveidqvist
7cdb15c526 Merge pull request #4447 from mermaid-js/4446-handling-of-arrowMarker-urls
#4446 Updating the cleanup criteria
2023-06-01 17:55:45 +02:00
Knut Sveidqvist
55092f532f #4446 Improved regular expression 2023-06-01 17:39:54 +02:00
Knut Sveidqvist
7b6cb4f974 #4446 Updating the cleanup criteria 2023-06-01 16:30:57 +02:00
Knut Sveidqvist
0cd1c5de97 Merge branch 'release/10.2.1' 2023-06-01 13:12:20 +02:00
Knut Sveidqvist
48e5d743b3 Merge pull request #4445 from mermaid-js/4438-revering-to-non-esm-use-of-dayjs
#4438 Reverted to the changes from #4285
2023-06-01 13:03:14 +02:00
Knut Sveidqvist
98e75959cc #4438 Reverted to the changes from #4285 2023-06-01 12:53:21 +02:00
Sidharth Vinod
0cec854f3b Fix download 2023-05-31 19:33:30 +05:30
Sidharth Vinod
abcae14fa7 Fix compile error in docs. 2023-05-31 19:10:42 +05:30
Sidharth Vinod
641098e602 Fix Contributor link in homepage 2023-05-31 19:06:36 +05:30
sidharthv96
c2c8024718 Update docs 2023-05-31 11:11:04 +00:00
Sidharth Vinod
5338d90077 Merge pull request #4440 from AnnaTomanek/patch-1
Add CKEditor and GitHub Writer to available integrations
2023-05-31 16:36:30 +05:30
Anna Tomanek
180c695f2f Added CKEditor and GitHub Writer to available integrations. 2023-05-31 12:15:40 +02:00
Zihua Li
ce9bdcc53f Fix exceptions for empty lines 2023-05-29 21:00:37 +08:00
renovate[bot]
38d9ebc5da chore(deps): update all patch dependencies 2023-05-29 05:19:50 +00:00
Sidharth Vinod
5fd5de10b5 Merge pull request #4400 from mermaid-js/sidv/quadrantArrows
Quadrant chart unicode arrows
2023-05-26 17:21:26 +05:30
Sidharth Vinod
ca5d78098e Merge pull request #4426 from aloisklink/chore/fix-broken-lockfile
Merge PR #4425 to `master` to fix uploading v10.2.0 docs to `mermaid.js.org` website
2023-05-25 07:13:58 +05:30
Alois Klink
cb2bc2a587 Merge pull request #4425 from aloisklink/chore/fix-broken-lockfile
Fix broken `pnpm-lock.yaml` file to fix CI
2023-05-24 23:03:54 +01:00
Alois Klink
6093383d45 build(deps): fix broken pnpm-lock.yaml file
Looks like a bad merge conflict resolution broke this file,
and for some reason, the `packages/mermaid/src/vitepress` bit got
removed when releasing v10.2.0-rc.4.

Fixes: bd1343648e
Fixes: 9c12c42a26
2023-05-24 22:19:49 +01:00
Knut Sveidqvist
bd1343648e Merge branch 'master' into develop 2023-05-24 19:20:47 +02:00
Knut Sveidqvist
3517314390 Merge branch 'release/10.2.0' 2023-05-24 19:19:41 +02:00
Knut Sveidqvist
8d43b87200 Mermaid version 10.2.0 2023-05-24 19:03:22 +02:00
Knut Sveidqvist
9c12c42a26 Mermaid Version 10.2.0-rc.4 2023-05-24 18:18:54 +02:00
Knut Sveidqvist
5bfe32524d Label background fix 2023-05-24 12:53:28 +02:00
Knut Sveidqvist
bd616e0ef5 Test commit 2023-05-24 12:27:30 +02:00
Knut Sveidqvist
9fb25310e8 Fix for regression error in sequenceDiagrams 2023-05-24 11:27:17 +02:00
Sidharth Vinod
102b9bc8c3 Merge branch 'develop' into sidv/zenuml
* develop:
  Update all minor dependencies
  Update all patch dependencies
2023-05-23 10:36:02 +05:30
Sidharth Vinod
9cec5ae1c4 Merge branch 'sidv/zenuml' of https://github.com/mermaid-js/mermaid into sidv/zenuml
* 'sidv/zenuml' of https://github.com/mermaid-js/mermaid:
  Update docs
  Add contributors profile url
  ignore ZenUML types
  fixed typo and update peerDependencies version
  update pnpm-lock.yaml
  Address mermaid-zenuml PR comments
  Update all minor dependencies
  Update all patch dependencies
  Fix vitepress build
2023-05-23 10:34:08 +05:30
renovate[bot]
ac23787084 Update all minor dependencies 2023-05-22 07:53:27 +00:00
renovate[bot]
ad61f4c6b1 Update all patch dependencies 2023-05-22 06:06:37 +00:00
mikejeffers
496585b543 handle trailing whitespace on lines 2023-05-20 16:04:58 -04:00
mikejeffers
9e6168111f add e2e test 2023-05-20 15:20:28 -04:00
mikejeffers
f535640c1e Fixes #4408: solve infinite loop on words that exceed width constraint with word break 2023-05-20 14:59:04 -04:00
Alois Klink
acc19db5bb Merge branch 'develop' into sidv/zenuml
Conflicts:
	pnpm-lock.yaml
2023-05-17 19:59:58 +01:00
aloisklink
6cce1b20fb Update docs 2023-05-17 18:46:58 +00:00
dontry
a00616863d Add contributors profile url 2023-05-17 19:26:43 +01:00
dontry
49c97dad4c ignore ZenUML types 2023-05-17 19:26:43 +01:00
Alois Klink
e984b34af4 Merge branch 'develop' into sidv/zenuml
* develop: (66 commits)
  Update docs
  Update docs
  Improve the wording of security level values
  Added quadrantChart to the side bar
  Added e2e test cases with some fixes
  Added documentation for the quadrantChart
  Restructured the build function and addressed more review comment
  Fixed some parser issue and added test cases for the parser
  Fixed review comment
  Update docs
  Converted files to typescript and added proper types
  Fix blog linting
  Debug fetch-contributors
  Fix lockfile
  Revert "Replace esno & ts-node with tsx"
  [draft] Added support for quadrant chart
  Fix lockfile
  Fix build
  Update pnpm-lock
  Replace esno & ts-node with tsx
  ...

Merge conflicts:
  - pnpm-lock.yaml
2023-05-17 19:25:29 +01:00
Sidharth Vinod
c255d95ae2 Merge pull request #4405 from ZenUml/dongc/zenuml
Address mermaid-zenuml PR comments
2023-05-17 19:10:25 +01:00
Dong Cai
27e59e5adc fixed typo and update peerDependencies version 2023-05-17 19:10:19 +01:00
Dong Cai
507e24cc72 update pnpm-lock.yaml 2023-05-17 19:10:03 +01:00
Dong Cai
bb400d53b9 Address mermaid-zenuml PR comments 2023-05-17 19:09:48 +01:00
renovate[bot]
b1590c2211 Update all minor dependencies 2023-05-17 13:32:09 +00:00
renovate[bot]
9eeeb97e15 Update all patch dependencies 2023-05-17 09:17:43 +00:00
Sidharth Vinod
0ef115f69a Fix vitepress build 2023-05-17 11:28:17 +05:30
Sidharth Vinod
6a89ef94f7 Cleanup 2023-05-17 11:21:03 +05:30
Sidharth Vinod
97be4983f0 Merge branch 'develop' into sidv/zenuml
* develop: (66 commits)
  Update docs
  Update docs
  Improve the wording of security level values
  Added quadrantChart to the side bar
  Added e2e test cases with some fixes
  Added documentation for the quadrantChart
  Restructured the build function and addressed more review comment
  Fixed some parser issue and added test cases for the parser
  Fixed review comment
  Update docs
  Converted files to typescript and added proper types
  Fix blog linting
  Debug fetch-contributors
  Fix lockfile
  Revert "Replace esno & ts-node with tsx"
  [draft] Added support for quadrant chart
  Fix lockfile
  Fix build
  Update pnpm-lock
  Replace esno & ts-node with tsx
  ...
2023-05-16 23:26:35 +05:30
Sidharth Vinod
c7affbe33b Merge pull request #4405 from ZenUml/dongc/zenuml
Address mermaid-zenuml PR comments
2023-05-16 23:25:29 +05:30
Dong Cai
82eccb70fa fixed typo and update peerDependencies version 2023-05-16 23:41:53 +10:00
Justin Greywolf
78efac2c51 Fix visibility issue for fields 2023-05-16 06:13:37 -07:00
Justin Greywolf
58ec2686da Merge branch 'release/10.2.0' of https://github.com/mermaid-js/mermaid into release/10.2.0 2023-05-16 04:12:27 -07:00
Justin Greywolf
3a5c4a149f fix parsing issue with class diagrams 2023-05-16 04:12:03 -07:00
Dong Cai
c889ef0c30 update pnpm-lock.yaml 2023-05-16 21:08:25 +10:00
Dong Cai
cce5505662 Address mermaid-zenuml PR comments 2023-05-16 20:30:25 +10:00
Garen J. Torikian
dfb15901f4 Make the doc change in the right place
This is due to the sloppy fact that there are two copies of every doc
page in the repo.
2023-05-15 09:26:49 -04:00
Sidharth Vinod
b925849893 fix: Use unicode arrows in quadrant chart axis 2023-05-15 13:36:35 +05:30
Sidharth Vinod
d86d1e7887 fix: Use unicode arrows in quadrant chart axis 2023-05-15 13:32:59 +05:30
Knut Sveidqvist
132ce2fb4b Merge branch 'develop' into release/10.2.0 2023-05-15 09:50:02 +02:00
Knut Sveidqvist
458ac84749 Merge pull request #4383 from amsubhash/feature/4282_add_quadrant_chart
Added support for quadrant chart
2023-05-15 09:49:23 +02:00
Knut Sveidqvist
fa3e800802 Merge remote-tracking branch 'origin/release/10.2.0' into release/10.2.0 2023-05-15 08:52:13 +02:00
Knut Sveidqvist
f616663f2f Merge branch 'develop' into release/10.2.0 2023-05-15 08:51:47 +02:00
knsv
b563ddc19d Update docs 2023-05-15 06:49:56 +00:00
Knut Sveidqvist
c755e45961 Merge pull request #4349 from danielcompton/patch-1
Indent subgraph sections
2023-05-15 08:46:38 +02:00
knsv
de34a06718 Update docs 2023-05-15 06:22:10 +00:00
Knut Sveidqvist
040827d95d Merge pull request #4395 from Gusted/docs-sec
Improve the wording of security level values
2023-05-15 08:18:45 +02:00
Garen Torikian
c9da36dc8b Fix a typo 2023-05-14 14:27:08 -04:00
Gusted
a991c32732 Improve the wording of security level values
- The current wording can be misinterpreted because, for some people
'tags' might not be associated with HTML tags.
- Improve the wording to make it clear that HTML tags are intended.
2023-05-13 20:25:04 +02:00
Subhash Halder
c4aebe6d57 Added quadrantChart to the side bar 2023-05-13 20:28:49 +05:30
Subhash Halder
0f354ff974 Added e2e test cases with some fixes 2023-05-13 19:45:45 +05:30
Subhash Halder
b2a5ddcd85 Added documentation for the quadrantChart 2023-05-13 17:33:31 +05:30
Subhash Halder
816800adcd Restructured the build function and addressed more review comment 2023-05-12 20:16:26 +05:30
Subhash Halder
fe9c109837 Fixed some parser issue and added test cases for the parser 2023-05-12 17:09:14 +05:30
Subhash Halder
1253733962 Fixed review comment 2023-05-11 12:19:59 +05:30
amsubhash
4cbcfa054e Update docs 2023-05-09 14:50:54 +00:00
Subhash Halder
9a7dbab5ed Converted files to typescript and added proper types 2023-05-09 20:17:04 +05:30
Sidharth Vinod
6eef09661d Merge branch 'develop' into release/10.2.0
* develop:
  Fix blog linting
2023-05-09 10:25:27 +05:30
Sidharth Vinod
10a66030b9 Fix blog linting 2023-05-09 10:25:16 +05:30
Sidharth Vinod
93370a8e11 Merge branch 'develop' into release/10.2.0
* develop:
  Updated url
  Updated url
  Updated url
  Updated url
  add blog post to blog page
  add the latest blog post
2023-05-09 10:24:38 +05:30
Sidharth Vinod
4e3c2adffc Merge branch 'master' into develop
* master:
  Updated url
  Updated url
  Updated url
  Updated url
  add blog post to blog page
  add the latest blog post
2023-05-09 10:24:14 +05:30
Sidharth Vinod
fbd35ae95a fix lint command 2023-05-09 10:24:05 +05:30
Sidharth Vinod
75e73a4f03 Bump version 2023-05-09 10:20:33 +05:30
Sidharth Vinod
17c798a1b3 Merge branch 'develop' into release/10.2.0
* develop: (49 commits)
  Debug fetch-contributors
  Fix lockfile
  Revert "Replace esno & ts-node with tsx"
  Fix lockfile
  Fix build
  Update pnpm-lock
  Replace esno & ts-node with tsx
  chore(deps): update all minor dependencies
  chore(deps): update all patch dependencies
  Fix missing `await` in usage document
  Add integrations
  test: fix classDiagramGrammer unit test
  restore path calculation for grammar test
  Allow overlapping notes
  remove spellcheck warnings
  Fix path in test
  fix import issue
  requested update
  Reject ridiculous years in Gantt charts.
  Remove unnecessary dependencies
  ...
2023-05-09 10:13:15 +05:30
Sidharth Vinod
c0b7ba305f Merge pull request #4356 from mermaid-js/sidv/contributors
Show all contributors in homepage
2023-05-09 10:02:08 +05:30
Sidharth Vinod
bd53e9d449 Debug fetch-contributors 2023-05-09 09:56:40 +05:30
Sidharth Vinod
45139470a3 Fix lockfile 2023-05-08 22:08:47 +05:30
Sidharth Vinod
3677d44a58 Revert "Replace esno & ts-node with tsx"
This reverts commit 75337287ea.
2023-05-08 22:08:11 +05:30
Subhash Halder
272ccded93 [draft] Added support for quadrant chart 2023-05-08 19:23:58 +05:30
Sidharth Vinod
b27d018c09 Fix lockfile 2023-05-08 19:04:21 +05:30
Sidharth Vinod
a1fe7222ac Fix build 2023-05-08 18:52:03 +05:30
Sidharth Vinod
1b48c19897 Merge branch 'develop' into sidv/contributors
* develop:
  chore(deps): update all minor dependencies
  requested update
  Update packages/mermaid/src/docs/syntax/flowchart.md
  Update docs
  Docs: Flowchart - minor verbiage update
2023-05-08 18:51:10 +05:30
Sidharth Vinod
2dc780a766 Merge pull request #4315 from mermaid-js/huynhicode-docs-flowchart
Docs: Flowchart - minor verbiage update
2023-05-08 18:49:47 +05:30
Sidharth Vinod
0b73d40ca1 Merge pull request #4380 from mermaid-js/renovate/all-minor
chore(deps): update all minor dependencies (minor)
2023-05-08 18:47:54 +05:30
Sidharth Vinod
500efda8d6 Update pnpm-lock 2023-05-08 18:47:22 +05:30
Sidharth Vinod
8e9d1bfc35 Merge branch 'develop' into sidv/contributors
* develop:
  chore(deps): update all patch dependencies
2023-05-08 18:46:39 +05:30
Sidharth Vinod
75337287ea Replace esno & ts-node with tsx 2023-05-08 18:46:14 +05:30
renovate[bot]
b04155178a chore(deps): update all minor dependencies 2023-05-08 10:09:26 +00:00
renovate[bot]
d7e140a829 chore(deps): update all patch dependencies 2023-05-08 10:08:10 +00:00
Knut Sveidqvist
25a7164df2 Merge branch 'develop' into sidv/contributors 2023-05-08 09:17:49 +02:00
Knut Sveidqvist
29c8f8c867 Merge pull request #4350 from mermaid-js/sidv/removeSimpleMarkdown
remove SimpleMarkdown
2023-05-08 09:16:28 +02:00
Knut Sveidqvist
a226b073a0 Merge pull request #4374 from remcohaszing/add-integrations
Add integrations
2023-05-08 09:13:16 +02:00
Knut Sveidqvist
0c18f26dc0 Merge pull request #4370 from mermaid-js/Overlap-notes-messages
Allow overlapping notes
2023-05-08 09:11:33 +02:00
Knut Sveidqvist
4d0447574a Merge pull request #4366 from mermaid-js/update-latest-news
Latest News section: update content
2023-05-08 09:11:11 +02:00
Knut Sveidqvist
40176f9bef Updated url 2023-05-08 09:10:45 +02:00
Knut Sveidqvist
97a34a0cfc Updated url 2023-05-08 09:10:21 +02:00
Knut Sveidqvist
d1690a03db Updated url 2023-05-08 09:09:32 +02:00
Knut Sveidqvist
d8c67cd2c9 Updated url 2023-05-08 09:08:18 +02:00
Knut Sveidqvist
ccc87be462 Merge branch 'develop' into Overlap-notes-messages 2023-05-08 09:04:19 +02:00
Knut Sveidqvist
f8b029de0e Merge pull request #4376 from rhysd/doc/missing_await
Fix missing `await` in usage document
2023-05-08 09:01:22 +02:00
Knut Sveidqvist
8573db5114 Merge pull request #4378 from aloisklink/fix/fix-broken-unit-tests
test: fix classDiagramGrammer unit test
2023-05-08 09:00:49 +02:00
rhysd
c6c3b07c33 Fix missing await in usage document 2023-05-08 13:44:40 +09:00
Remco Haszing
7df21c01ec Add integrations
This adds the projects `mermaid-isomorphic`, `rehype-mermaidjs`, and
`gatsby-remark-mermaid` to the integrations page.

This also removes `remark-mermaid`. This project is outdated and
unmaintained.
2023-05-07 21:00:17 +02:00
Alois Klink
a1e64c2102 test: fix classDiagramGrammer unit test
The classDiagramGrammer.spec.ts unit test had some bad filepath
manipulation that fails on UNIX platforms.

Instead, we can use the recommended method from the Node.JS
documentation, see https://nodejs.org/api/esm.html#importmetaurl.

Fixes: 221640aa25
2023-05-07 18:05:43 +01:00
Knut Sveidqvist
7f9ebcf2c6 Merge pull request #4361 from tcbuzor/feature-4146-eraggregation
add master detail relationship support
2023-05-07 08:04:07 +02:00
Justin Greywolf
7e240dac22 restore path calculation for grammar test 2023-05-04 09:15:21 -07:00
Justin Greywolf
06fdb95389 Allow overlapping notes 2023-05-03 22:15:59 -07:00
Justin Greywolf
2216bbad25 remove spellcheck warnings 2023-05-03 17:02:44 -07:00
Justin Greywolf
43819f1bd8 Merge branch 'develop' of https://github.com/mermaid-js/mermaid into develop 2023-05-03 17:01:43 -07:00
Justin Greywolf
221640aa25 Fix path in test 2023-05-03 17:01:27 -07:00
Justin Greywolf
5f1a507820 Merge pull request #4206 from ksilverwall/feature/class-namespace
Implement `package` on class diagram
2023-05-03 16:58:08 -07:00
Justin Greywolf
7fd4814abc Merge pull request #4259 from mermaid-js/svgDrawRefactor
Refactor to consolidate shared svgDraw components
2023-05-03 16:57:09 -07:00
Justin Greywolf
61e31b3fe6 fix import issue 2023-05-03 16:29:57 -07:00
Justin Greywolf
e903f06f75 Merge branch 'develop' into svgDrawRefactor 2023-05-03 16:18:17 -07:00
Steph
35051f1946 add blog post to blog page 2023-05-02 23:50:14 -07:00
Steph
a5e0630e21 requested update 2023-05-02 23:41:14 -07:00
Sidharth Vinod
bf37956528 Merge pull request #4367 from toolness/bug/4353_reject_ridiculous_dates
Reject ridiculous years in Gantt charts.
2023-05-03 00:37:05 +05:30
Atul Varma
725b80831e Reject ridiculous years in Gantt charts. 2023-05-02 09:46:59 -04:00
Sidharth Vinod
cb3982de7e Remove unnecessary dependencies
Co-authored-by: Alois Klink <alois.klink@gmail.com>
2023-05-02 14:16:35 +05:30
Steph
b30e9620f4 Update packages/mermaid/src/docs/syntax/flowchart.md
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-05-01 23:04:04 -07:00
Steph
4c9e35e269 add the latest blog post 2023-05-01 22:48:29 -07:00
eopaant
18571052ad added style to reflect true aggregation 2023-05-01 22:34:36 -05:00
Kazuki Tsunemi
0d373f3a6a Modify jsdoc of addClasses 2023-05-01 19:12:39 +09:00
Kazuki Tsunemi
70a52da393 namespace rect is not filled 2023-05-01 19:06:46 +09:00
koppor
5c8b739047 Update docs 2023-04-30 18:19:56 +00:00
eopaant
3549ffc4ac add master detail relationship support 2023-04-30 13:19:35 -05:00
Oliver Kopp
df1095166e Add hint on "flowchart" and "graph" (and some more styling) 2023-04-30 20:16:24 +02:00
Sidharth Vinod
c79be5d829 Merge pull request #4357 from agentraghav/code-improvment
updating es6 rules in flowchart diagram
2023-04-30 22:14:59 +05:30
raghvendra
38efaf93c8 updating es6 rules in flowchart diagram 2023-04-29 16:06:17 +05:30
Sidharth Vinod
dfa65c5fc8 remove nr 2023-04-29 11:30:11 +05:30
Sidharth Vinod
32928224e5 Remove contributor-names from git 2023-04-29 10:55:24 +05:30
Sidharth Vinod
4456c2a267 Fix user-avatar copying 2023-04-29 10:55:06 +05:30
Sidharth Vinod
9e0410e0d3 Simplify contributors 2023-04-29 10:51:03 +05:30
Sidharth Vinod
cdc68d99fe Cleanup 2023-04-29 10:50:30 +05:30
Sidharth Vinod
110cd61c64 Fix lockfile 2023-04-29 10:17:51 +05:30
Sidharth Vinod
baf5e8f6b2 Fix docs, mmd -> mermaid 2023-04-29 10:13:00 +05:30
Sidharth Vinod
99abd4c31b Fix avatar fetching 2023-04-29 10:12:47 +05:30
Sidharth Vinod
9238deaf00 Merge branch 'develop' into sidv/contributors
* develop: (237 commits)
  submit built docs
  update Font Awesome Version
  Clarify FontAwesome support
  Update version
  Fix classParser
  Check for conflict when linting jison
  Update class grammar test
  fix Class diagram grammar
  Skip sourcemap
  Bump version
  Update deps
  Fix unit tests
  Update vite
  Fix applitools cypress
  Update packages/mermaid/package.json
  chore(deps): update dependency typescript to v5
  fix typedoc
  fix(deps): update all minor dependencies
  chore(deps): update pnpm to v8
  chore(deps): update fregante/setup-git-user action to v2
  ...
2023-04-29 09:32:07 +05:30
Sidharth Vinod
a01343bf1b Fix lockfile 2023-04-27 10:37:35 +05:30
Sidharth Vinod
88f9233aa8 Merge branch 'develop' into sidv/zenuml
* develop:
  submit built docs
  update Font Awesome Version
  Clarify FontAwesome support
2023-04-27 10:36:16 +05:30
Sidharth Vinod
33c81d557e Merge pull request #4347 from josh-bouganim-avant/patch-1
Clarify FontAwesome support
2023-04-26 11:07:17 +05:30
Sidharth Vinod
91f1ef9c42 Back to JS with jsdoc types 2023-04-26 11:00:35 +05:30
Sidharth Vinod
eba3a7bdcc Add unsupported text 2023-04-26 10:55:37 +05:30
Sidharth Vinod
5bbce45c56 Reduce changes in test 2023-04-26 10:51:54 +05:30
Sidharth Vinod
395a794758 Fix deps 2023-04-26 10:37:03 +05:30
Sidharth Vinod
1f2af83a0c Fix lockfile 2023-04-26 10:35:24 +05:30
Sidharth Vinod
4d3e5e42e1 Use mdast-util-from-markdown instead of simple-markdown 2023-04-26 10:30:13 +05:30
Sidharth Vinod
9b912c4a59 handleMarkdown JS -> TS 2023-04-26 10:11:19 +05:30
Daniel Compton
c6fbabc70e Indent subgraph sections
The two subgraph paragraphs below "Subgraphs" should be
indented below it.
2023-04-26 09:39:17 +12:00
Josh Bouganim
41969c434f submit built docs 2023-04-25 20:35:45 +00:00
Sidharth Vinod
8cd48bf405 Add docs 2023-04-26 00:31:00 +05:30
Sidharth Vinod
8b18fd93f4 Add test 2023-04-26 00:20:00 +05:30
Sidharth Vinod
ec62c2bf5b Merge branch 'develop' into sidv/zenuml
* develop: (33 commits)
  Update version
  Fix classParser
  Check for conflict when linting jison
  Update class grammar test
  fix Class diagram grammar
  Skip sourcemap
  Bump version
  Update deps
  Fix unit tests
  Update vite
  Fix applitools cypress
  Update packages/mermaid/package.json
  chore(deps): update dependency typescript to v5
  fix typedoc
  fix(deps): update all minor dependencies
  chore(deps): update pnpm to v8
  chore(deps): update fregante/setup-git-user action to v2
  fix(deps): update all minor dependencies
  chore(deps): update dependency start-server-and-test to v2
  chore(deps): update dependency rimraf to v5
  ...
2023-04-26 00:15:52 +05:30
Sidharth Vinod
b9e7ba023f Update ZenUML 2023-04-26 00:12:39 +05:30
Josh Bouganim
284d032d26 update Font Awesome Version 2023-04-25 11:06:43 -07:00
Josh Bouganim
9859491381 Clarify FontAwesome support 2023-04-25 11:01:09 -07:00
Kazuki Tsunemi
95d8e3a5df Merge branch 'develop' into feature/class-namespace 2023-04-25 16:40:42 +09:00
Sidharth Vinod
56ec1ab52c Merge pull request #4338 from mermaid-js/sidv/fixClassGrammar
fix ClassGrammar
2023-04-24 20:43:48 +05:30
Sidharth Vinod
597a162249 Update version 2023-04-24 00:35:50 +05:30
Sidharth Vinod
24f5a15f20 Fix classParser 2023-04-24 00:34:41 +05:30
Sidharth Vinod
d125d22488 Check for conflict when linting jison 2023-04-24 00:15:51 +05:30
Sidharth Vinod
d09151e870 Update class grammar test 2023-04-24 00:15:30 +05:30
Sidharth Vinod
60db22886a fix Class diagram grammar 2023-04-24 00:15:07 +05:30
Sidharth Vinod
23bed7e653 Skip sourcemap 2023-04-23 23:40:24 +05:30
Sidharth Vinod
07dcb8cc44 Bump version 2023-04-23 23:38:34 +05:30
Sidharth Vinod
ba632ff65b Merge pull request #4303 from mermaid-js/MultipleUpdatesToClassDiagram
Multiple updates to class diagram
2023-04-23 23:37:24 +05:30
Sidharth Vinod
d79f946cbc Merge branch 'develop' into MultipleUpdatesToClassDiagram
* develop:
  Update deps
  Fix unit tests
2023-04-23 23:22:32 +05:30
Sidharth Vinod
b0c58a9764 Update deps 2023-04-23 23:15:26 +05:30
Sidharth Vinod
94991520ea Fix unit tests 2023-04-23 23:15:05 +05:30
Sidharth Vinod
05e7a6bd4b Merge branch 'develop' into MultipleUpdatesToClassDiagram
* develop: (30 commits)
  Update vite
  Fix applitools cypress
  Update packages/mermaid/package.json
  chore(deps): update dependency typescript to v5
  fix typedoc
  fix(deps): update all minor dependencies
  chore(deps): update pnpm to v8
  chore(deps): update fregante/setup-git-user action to v2
  fix(deps): update all minor dependencies
  chore(deps): update dependency start-server-and-test to v2
  chore(deps): update dependency rimraf to v5
  chore(deps): update dependency eslint-plugin-unicorn to v46
  chore(deps): update actions/deploy-pages action to v2
  chore(deps): update dependency eslint-plugin-jsdoc to v43
  Split docs into build and deploy
  fix(deps): update dependency dompurify to v3
  chore(deps): update dependency concurrently to v8
  Split renovate groups
  Upgrade vitepress
  chore(deps): update pnpm to v7.30.5
  ...
2023-04-23 22:50:40 +05:30
Sidharth Vinod
9298f631f9 Merge pull request #4296 from Will-Low/patch-2
Updating documentation on notes for classes within class diagrams
2023-04-23 22:48:15 +05:30
Sidharth Vinod
04305bdddc Merge pull request #4281 from mermaid-js/sidv/addUMD
Add UMD build Back
2023-04-23 22:40:01 +05:30
Sidharth Vinod
f018ca34da Merge pull request #4335 from mermaid-js/sidv/fixApplitools
Sidv/fix applitools
2023-04-23 22:35:48 +05:30
Sidharth Vinod
bbe3909627 Update vite 2023-04-23 22:34:19 +05:30
Sidharth Vinod
642397b36c Fix applitools cypress 2023-04-23 15:59:27 +05:30
Sidharth Vinod
562514964e Update packages/mermaid/package.json
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-04-23 15:49:20 +05:30
Sidharth Vinod
125be13df4 Merge branch 'develop' into sidv/addUMD
* develop: (69 commits)
  chore(deps): update dependency typescript to v5
  fix typedoc
  fix(deps): update all minor dependencies
  chore(deps): update pnpm to v8
  chore(deps): update fregante/setup-git-user action to v2
  fix(deps): update all minor dependencies
  chore(deps): update dependency start-server-and-test to v2
  chore(deps): update dependency rimraf to v5
  chore(deps): update dependency eslint-plugin-unicorn to v46
  chore(deps): update actions/deploy-pages action to v2
  chore(deps): update dependency eslint-plugin-jsdoc to v43
  Split docs into build and deploy
  fix(deps): update dependency dompurify to v3
  chore(deps): update dependency concurrently to v8
  Split renovate groups
  Upgrade vitepress
  chore(deps): update pnpm to v7.30.5
  pie diagram mermaid module import fix
  Update docs
  docs(flowchart): wrap br tag by codeblock
  ...
2023-04-23 15:31:17 +05:30
Sidharth Vinod
f3f7460706 Merge pull request #4328 from mermaid-js/renovate/typescript-5.x
chore(deps): update dependency typescript to v5
2023-04-23 13:09:44 +05:30
renovate[bot]
9e58f7bd99 chore(deps): update dependency typescript to v5 2023-04-22 20:51:24 +00:00
Sidharth Vinod
5110967bcd Merge pull request #4321 from mermaid-js/renovate/all-minor
fix(deps): update all minor dependencies (minor)
2023-04-23 02:20:12 +05:30
Sidharth Vinod
5c6773a47c Merge branch 'renovate/all-minor' of https://github.com/mermaid-js/mermaid into renovate/all-minor
* 'renovate/all-minor' of https://github.com/mermaid-js/mermaid:
  fix(deps): update all minor dependencies
  chore(deps): update pnpm to v8
  chore(deps): update fregante/setup-git-user action to v2
2023-04-23 02:04:28 +05:30
Sidharth Vinod
5634c6ca1a fix typedoc 2023-04-23 02:03:28 +05:30
renovate[bot]
1c17f4c770 fix(deps): update all minor dependencies 2023-04-22 20:30:38 +00:00
Sidharth Vinod
f17a325632 Merge pull request #4329 from mermaid-js/renovate/fregante-setup-git-user-2.x
chore(deps): update fregante/setup-git-user action to v2
2023-04-23 01:58:02 +05:30
Sidharth Vinod
9f2d14f676 Merge pull request #4330 from mermaid-js/renovate/pnpm-8.x
chore(deps): update pnpm to v8
2023-04-23 01:57:39 +05:30
renovate[bot]
bed9e8daab chore(deps): update pnpm to v8 2023-04-22 20:04:11 +00:00
renovate[bot]
4a258a0f2c chore(deps): update fregante/setup-git-user action to v2 2023-04-22 20:02:23 +00:00
renovate[bot]
e4bc3e2269 fix(deps): update all minor dependencies 2023-04-22 20:01:25 +00:00
Sidharth Vinod
a470407f02 Merge pull request #4327 from mermaid-js/renovate/start-server-and-test-2.x
chore(deps): update dependency start-server-and-test to v2
2023-04-23 01:30:16 +05:30
renovate[bot]
e6d11b9443 chore(deps): update dependency start-server-and-test to v2 2023-04-22 19:26:13 +00:00
Sidharth Vinod
c624cbb910 Merge pull request #4325 from mermaid-js/renovate/eslint-plugin-unicorn-46.x
chore(deps): update dependency eslint-plugin-unicorn to v46
2023-04-23 00:51:33 +05:30
Sidharth Vinod
b428c06bed Merge pull request #4326 from mermaid-js/renovate/rimraf-5.x
chore(deps): update dependency rimraf to v5
2023-04-23 00:51:08 +05:30
Sidharth Vinod
9cbc3d6fb9 Merge pull request #4322 from mermaid-js/renovate/actions-deploy-pages-2.x
chore(deps): update actions/deploy-pages action to v2
2023-04-23 00:50:58 +05:30
Sidharth Vinod
12ed81855a Add zenuml 2023-04-23 00:34:59 +05:30
renovate[bot]
f597f15f82 chore(deps): update dependency rimraf to v5 2023-04-22 18:53:56 +00:00
renovate[bot]
909c063a67 chore(deps): update dependency eslint-plugin-unicorn to v46 2023-04-22 18:51:50 +00:00
renovate[bot]
f93bac9dd4 chore(deps): update actions/deploy-pages action to v2 2023-04-22 18:49:44 +00:00
renovate[bot]
8cb3318d94 chore(deps): update dependency eslint-plugin-jsdoc to v43 2023-04-22 18:46:44 +00:00
Sidharth Vinod
cb1e8220a4 Merge pull request #4331 from mermaid-js/renovate/dompurify-3.x
fix(deps): update dependency dompurify to v3
2023-04-22 23:59:53 +05:30
Sidharth Vinod
49bb87e14a Split docs into build and deploy 2023-04-22 23:59:33 +05:30
renovate[bot]
ddde451915 fix(deps): update dependency dompurify to v3 2023-04-22 08:28:31 +00:00
Sidharth Vinod
40d2682b14 Merge pull request #4323 from mermaid-js/renovate/concurrently-8.x
chore(deps): update dependency concurrently to v8
2023-04-22 13:53:05 +05:30
renovate[bot]
93eb72248a chore(deps): update dependency concurrently to v8 2023-04-20 04:15:28 +00:00
Sidharth Vinod
6883a92672 Split renovate groups 2023-04-20 09:40:58 +05:30
Sidharth Vinod
2fe0a1360f Upgrade vitepress 2023-04-20 09:35:28 +05:30
Sidharth Vinod
8e0f947d6c Merge pull request #4304 from mermaid-js/renovate/patch-all-minor-patch
chore(deps): update pnpm to v7.30.5
2023-04-19 16:29:40 +05:30
renovate[bot]
411f868f22 chore(deps): update pnpm to v7.30.5 2023-04-19 07:00:59 +00:00
Sidharth Vinod
39f9277a73 Merge pull request #4316 from agentraghav/agentraghav-pie-chart-demos-fix
pie diagram mermaid module import fix
2023-04-19 12:25:59 +05:30
raghvendra
ff3104ad9c pie diagram mermaid module import fix 2023-04-19 11:25:32 +05:30
huynhicode
be69f494b7 Update docs 2023-04-18 19:43:30 +00:00
Steph
fd6d1941b7 Docs: Flowchart - minor verbiage update
Minor verbiage update to Flowchart doc
2023-04-18 12:39:35 -07:00
sidharthv96
8dfad241c3 Update docs 2023-04-18 19:00:47 +00:00
Sidharth Vinod
44f6d11537 Merge pull request #4310 from Bogay/fix/escape-br-tag-in-flowchart-doc
docs(flowchart): wrap br tag by codeblock
2023-04-19 00:27:31 +05:30
Sidharth Vinod
698951c059 Merge pull request #4309 from dix/fix_doc_obsidian_link
fix(doc): Link to Obsidian doc/integration
2023-04-19 00:26:46 +05:30
bogay
b3959299bc docs(flowchart): wrap br tag by codeblock
so that it can render `<br>` text on doc correctly.
2023-04-18 18:51:52 +08:00
dix
1d4fc5051e fix(doc): Link to Obsidian doc/integration 2023-04-18 11:37:39 +02:00
Knut Sveidqvist
6ccdc2bd01 Fix for async handling flowchart-elk 2023-04-17 19:33:51 +02:00
Will-Low
28155b0e0a Removing redundant code block 2023-04-17 10:24:06 -07:00
Will-Low
47edb2c0bb Merge branch 'mermaid-js:develop' into patch-2 2023-04-17 07:30:18 -07:00
Justin Greywolf
642bc1a739 update tests for package visibility 2023-04-17 07:24:27 -07:00
Justin Greywolf
5b0eb702e5 Merge branch 'develop' into MultipleUpdatesToClassDiagram 2023-04-17 06:51:51 -07:00
Justin Greywolf
62870597d6 Fixed failing tests 2023-04-17 06:51:08 -07:00
Sidharth Vinod
01de155e3c Merge pull request #4278 from lishid/patch-2
Fix git graph css bracket leak
2023-04-17 17:29:27 +05:30
Sidharth Vinod
0485999636 Merge pull request #4299 from eitsupi/patch-1
docs(integrations): list quarto
2023-04-17 17:26:53 +05:30
Sidharth Vinod
f638082ab4 Merge pull request #4297 from bish0polis/develop
Update bug_report.yml
2023-04-17 17:26:18 +05:30
Justin Greywolf
59a85a7dfd Multiple Fixes to classes 2023-04-16 19:42:51 -07:00
Kazuki Tsunemi
204baa4586 Merge branch 'develop' into feature/class-namespace 2023-04-17 11:27:10 +09:00
eitsupi
432e8d6535 docs: reflect source changes 2023-04-15 17:01:51 +09:00
eitsupi
8c4fb6c753 docs(integrations): list quarto 2023-04-15 16:49:32 +09:00
Justin Greywolf
ac63788a9c organized and fixed tests 2023-04-14 10:13:21 -07:00
Alois Klink
32538b5b03 Merge branch 'develop' into lishid/patch-2
The E2E tests are failing, but will probably be fixed by commit
9bb0cef8 (fix: wait for image rendering in nodes, 2023-03-30)
on the `develop` branch.
2023-04-14 02:09:22 +01:00
Bishop Clark
8aa51cf3e7 Update bug_report.yml
correct adjective order
2023-04-13 16:59:13 -07:00
Will-Low
e3ca003127 Rebuilding docs 2023-04-13 09:59:11 -07:00
Will-Low
19363965ad Updating documentation on notes for classes
I was confused by the documentation on notes for a specific class. Updated the wording slightly and added an example for clarity.
2023-04-13 09:08:48 -07:00
Sidharth Vinod
32d553a28f Merge pull request #4213 from remcohaszing/fix-node16-module-resolution
Support node16 module resolution
2023-04-13 21:03:27 +05:30
Remco Haszing
e84c5ec4c9 Fix broken tests 2023-04-13 15:13:52 +02:00
Remco Haszing
aa5c1a5f78 Merge branch 'develop' into fix-node16-module-resolution 2023-04-13 14:58:17 +02:00
Sidharth Vinod
d9ebb0d492 Merge pull request #4295 from aloisklink/test/test-styles
Fix and test a bunch of invalid CSS issues
2023-04-13 18:08:11 +05:30
Sidharth Vinod
634d6602b9 Merge pull request #4272 from slab/develop
Add Slab to the list of integrations
2023-04-13 18:05:24 +05:30
Sidharth Vinod
ea6f9c2d59 Merge pull request #4286 from legonigel/4195_arrow_end_size
Fix #4195 start and end arrow have different sizes
2023-04-13 15:05:56 +05:30
Sidharth Vinod
dda2c25d52 Merge pull request #4294 from onayiga/Documentation-edits
Update index.md
2023-04-13 15:04:28 +05:30
Zihua Li
d13b58bec8 Merge branch 'mermaid-js:develop' into develop 2023-04-13 16:00:01 +08:00
Alois Klink
b4164b6ab5 test: test that styles and themes return valid CSS
Test that `src/diagrams/*/styles.ts` module returns a valid
CSS stylesheet that can be parsed via [stylis][1] and then
becomes a valid CSS that [csstree-validator][2] validates.

We test this for every diagram and for every theme, because
many of the invalid CSS bugs are caused by missing theme vars.

There are some CSS errors that I couldn't easily fix, so I've written
the tests to ignore the following CSS errors:
  - 'Unknown property `rx`' (Valid in SVG2 draft and in some browsers)
  - 'Unknown property `ry`' (Valid in SVG2 draft and in some browsers)
  - 'Unknown property `dy`'
    - This doesn't seem to be valid CSS in any SVG version, but maybe
      some browsers support it 🤷 I feel like we should probably change
      this though.

[1]: https://github.com/thysultan/stylis
[2]: https://github.com/csstree/validator
2023-04-13 08:27:32 +01:00
Alois Klink
aee18ca018 fix: fix scaleLabelColor in theme forest/neutral
The `scaleLabelColor` variable in `theme-forest` and `theme-neutral`
was set to `"calculated"`, as it defaults to `this.labelTextColor`
**before** `this.labelTextColor` was set.

Moving the `this.labelTextColor` assignments before `scaleLabelColor`
is calculated fixes this.

Fixes mindmap and timeline invalid CSS in theme forest and neutral.
2023-04-13 07:32:18 +01:00
Alois Klink
cd976871f0 fix: define gitBranchLabel* in theme forest/dark
Define `gitBranchLabel[0-7]` in `theme-dark` and `theme-forest` to fix
invalid CSS for gitgraphs.

The values have been copied from [`theme-default`][1]).

[1]: 727bf30824/packages/mermaid/src/themes/theme-default.js (L296-L303)
2023-04-13 07:32:18 +01:00
Alois Klink
4f9c4548bf fix: define excludeBkgColor for theme-dark
Define `excludeBkgColor` for `theme-dark` to fix invalid CSS
for gantt diagrams.

All the other themes defined this to '#eeeeee', but I thought that
was a bit too bright in a dark theme, so instead I set it to
`darken(this.sectionBkgColor, 10);`.
2023-04-13 07:32:18 +01:00
Alois Klink
720408e143 fix: define border2 for theme-base
`border2` is a theme variable used by the CSS for flowcharts and
user-journey.

I've defined this to default to `tertiaryBorderColor` in theme-base,
as other themes tend to set `border2` to the same value as
`clusterBorder`, which in theme-base is `tertiaryBorderColor`.
2023-04-13 07:32:18 +01:00
Alois Klink
54f827d850 fix: define arrowheadColor for theme-base
Define `arrowheadColor` as `invert(this.background)` in
`theme-base.js`, as it's currently `undefined`, which causes CSS
issues when using `theme-base`.

I've picked `invert(this.background)` so that it matches
the default value of `lineColor`.
2023-04-13 07:32:18 +01:00
Alois Klink
7566b5620e fix: fix requirementBorderSize theme variable
Currently, `requirementBorderSize` defaults to `primaryBorderColor`,
which is a color, not a valid SVG `stroke-width`.

Instead, I've made it default to `1`.
2023-04-13 07:32:18 +01:00
Alois Klink
9cb7a4a3f5 fix: fix invalid CSS fill-opacity value
Fix an invalid value for the CSS `fill-opacity` value.

Percentage values for `fill-opacity` are only supported in the SVG 2.0
draft, so according to [MDN][1]:

> it is not widely supported yet, […] as a consequence, it is best
> practices [sic] to set opacity with a value in the range `[0-1]`.

[1]: https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/fill-opacity
2023-04-13 07:32:18 +01:00
Alois Klink
616d370a51 fix: fix personBorder/Bkg C4 diagram theme vars
The current `personBorder`/`personBkg` theme variables for C4 diagrams
are set to the string `'calculated'`.

However, despite being `'calculated'`, they never seem to change to
anything else, and so become invalid CSS variables.

I've instead changed these to just default to base theme vars,
as that's what they do in [`these-base.js`][1].

[1]: 727bf30824/packages/mermaid/src/themes/theme-base.js (L106-L107)
2023-04-13 07:32:18 +01:00
Alois Klink
83d7d6c48f fix: fix invalid CSS for class diagram
`.divider` had a `stroke` property of `1` that was invalid.

This looks like a typo from PR
https://github.com/mermaid-js/mermaid/pull/1567,
as the `src/theme/class.scss` file's `.divider` section correctly
shows `stroke-width: 1;`.

Fixes: https://github.com/mermaid-js/mermaid/pull/1567
2023-04-13 07:32:18 +01:00
onayiga
1c98621cf4 Update index.md
Minor grammatical and editorial changes; Updated Mermaid API section to make use of active voice for enhanced readability and comprehension.
2023-04-12 23:12:16 -04:00
Justin Greywolf
727bf30824 Merge pull request #4268 from Valentine14th/bug/4023-image-rendering
fix: image rendering in nodes
2023-04-10 10:09:40 -07:00
legonigel
aa3c0023f4 Fix #4195 start and end arrow have different sizes
In #3938, it appears that the marker sizes for pointEnd was
unintentionally changed. This reverts the change in marker size.

It is also possible that the intention was to change the viewBox size
for both start and end, but I doubt this since it makes the arrows
significantly smaller than other markers.
2023-04-09 20:56:00 -07:00
Sidharth Vinod
f08778d0c7 Merge pull request #4285 from emersonbottero/dayjs-esm
fix: really import esm version of dayjs
2023-04-09 11:19:42 +05:30
Emerson Bottero
37eb100bb2 chore: add files to imports 2023-04-08 23:50:10 -03:00
Laura Valentine Tscharner
9bb0cef82b fix: wait for image rendering in nodes 2023-04-08 16:28:58 +01:00
Emerson Bottero
4643bb1c00 fix: really import esm version of dayjs 2023-04-07 23:38:05 -03:00
Knut Sveidqvist
d132d26246 Merge branch 'master' into develop 2023-04-06 08:33:18 +02:00
Sidharth Vinod
24c9506935 fix version 2023-04-05 22:07:46 +05:30
Sidharth Vinod
ca8ce8201c Merge branch 'develop' into sidv/addUMD
* develop: (81 commits)
  revert pnpm changes
  doc update
  auto generated from pnpm run
  auto generated from pnpm run
  linting
  added example of Bar chart
  Update docs
  Adding rendering tests and unit tests
  Syntax for markdown strings is a single backtick.
  updated labels in the chart
  Update docs
  updated example data smaller
  Bar chart
  fix: Remove comment line completely
  fix: trimStart to text
  test: add space before init
  fix uncaughexception in tests
  fix(#4256): Keep error diagram on screen
  fix(#4137): Cleanup comments before parsing
  Update docs
  ...
2023-04-05 22:04:53 +05:30
Sidharth Vinod
777a781052 Merge pull request #4261 from karistom/develop
Bar chart (using gantt chart)
2023-04-05 16:37:06 +05:30
Sidharth Vinod
d1e369e68d revert pnpm changes 2023-04-05 16:32:48 +05:30
chriskim-au1
3b861ab91f doc update 2023-04-05 13:11:22 +10:00
Ch K
721208e981 auto generated from pnpm run 2023-04-05 11:31:44 +10:00
Ch K
ee455c1edb auto generated from pnpm run 2023-04-05 11:26:28 +10:00
Ch K
43137fbdb2 Merge branch 'mermaid-js:develop' into develop 2023-04-05 10:12:12 +10:00
Ch K
7ac84fb9af linting 2023-04-05 09:18:11 +10:00
Ch K
efc4062721 added example of Bar chart 2023-04-05 09:07:01 +10:00
Lishid
5693f63603 Fix git graph css bracket leak 2023-04-04 11:22:19 -04:00
Knut Sveidqvist
8e6d16e601 Update docs 2023-04-04 15:53:53 +02:00
knsv
e96c8306d1 Update docs 2023-04-04 13:46:55 +00:00
Knut Sveidqvist
756fc06c5d 2w is anough, 4 is just too much 2023-04-04 15:43:33 +02:00
Knut Sveidqvist
80df10067d Adding Mermaid Strings to news 2023-04-04 15:39:23 +02:00
Knut Sveidqvist
e7c237dcf3 Merge branch 'release/10.1.0' 2023-04-04 15:19:15 +02:00
Knut Sveidqvist
75adb8ae90 Updated package.json 2023-04-04 14:38:09 +02:00
Knut Sveidqvist
fc1962c795 Version set 10.1.0 and fix for label centering 2023-04-04 14:36:05 +02:00
Knut Sveidqvist
1a56a18f9b Fixing issues with centering of labels for subgraphs and handling of special characters in html strings 2023-04-04 12:49:14 +02:00
Knut Sveidqvist
1841346ff6 Fixing issues in mindmaps and class diagram notes after tests 2023-04-04 10:45:39 +02:00
Knut Sveidqvist
e8799ad515 Merge remote-tracking branch 'origin/release/10.1.0' into release/10.1.0 2023-04-04 08:29:54 +02:00
Knut Sveidqvist
2b9872d656 Some styling fixes for markdown strings 2023-04-04 08:29:15 +02:00
Knut Sveidqvist
9ffd4d2344 Merge pull request #4254 from mermaid-js/add-latest-news-section
Docs: add Latest News section
2023-04-04 08:27:11 +02:00
Steph
815f4cab73 add blog post 2023-04-03 10:48:59 -07:00
Zihua Li
bc573ef0bb Add Slab to the list of integrations 2023-04-03 23:17:29 +08:00
Knut Sveidqvist
5d536b9973 Adding documentation for markdown strings 2023-04-03 14:41:13 +02:00
Knut Sveidqvist
6807c48f9a Merge pull request #4271 from mermaid-js/4220-string-synax-and-features
4220 string synax and features
2023-04-03 12:36:09 +02:00
knsv
c777f9193d Update docs 2023-04-03 10:35:19 +00:00
Knut Sveidqvist
917a54f3cd Merge branch 'develop' into 4220-string-synax-and-features 2023-04-03 12:31:56 +02:00
Knut Sveidqvist
471c842a58 Adding rendering tests and unit tests 2023-04-03 12:12:51 +02:00
Knut Sveidqvist
99f65813a1 Syntax for markdown strings is a single backtick. 2023-04-03 10:43:15 +02:00
Remco Haszing
da7725f38e Merge branch 'develop' into fix-node16-module-resolution 2023-04-01 12:05:19 +02:00
Sidharth Vinod
7e610d13dc Merge pull request #4207 from aloisklink/test/4198-fix-gantt-today-marker-tests
Fix broken Gantt  `todayMarker` tests
2023-03-31 18:23:06 +05:30
Ch K
64baf2d365 updated labels in the chart 2023-03-31 18:01:28 +11:00
knsv
f9c0f1d46f Update docs 2023-03-31 06:46:34 +00:00
Knut Sveidqvist
3823ecafb1 Merge pull request #4238 from JeremyFunk/feature/1618_repeating_tasks
Implement repeating tasks
2023-03-31 08:43:13 +02:00
Knut Sveidqvist
057c9e4b81 Merge branch 'develop' into feature/1618_repeating_tasks 2023-03-31 08:42:10 +02:00
Ch K
e6db9e8fc3 updated example data smaller 2023-03-31 17:36:50 +11:00
Knut Sveidqvist
c4e4efd4b8 Merge pull request #4258 from mermaid-js/sidv/fix/4256
fix(#4256): Keep error diagram on screen
2023-03-31 08:34:53 +02:00
Knut Sveidqvist
da066553bd Merge pull request #4257 from mermaid-js/sidv/fix/4137
fix(#4137): Cleanup comments before parsing
2023-03-31 08:32:55 +02:00
Ch K
a58d014a13 Bar chart 2023-03-31 17:00:53 +11:00
Sidharth Vinod
006da82470 fix: Remove comment line completely 2023-03-31 00:35:56 +05:30
Sidharth Vinod
1945a62990 fix: trimStart to text 2023-03-31 00:25:33 +05:30
Sidharth Vinod
d16894daf4 test: add space before init 2023-03-31 00:18:53 +05:30
Sidharth Vinod
4d933f6b72 Merge pull request #4253 from remcohaszing/export-mermaid-type
Define and export the Mermaid type
2023-03-30 23:56:48 +05:30
Justin Greywolf
e357bbee42 Refactor to consolidate shared svgDraw components 2023-03-30 11:04:19 -07:00
Sidharth Vinod
7739302ee8 fix uncaughexception in tests 2023-03-30 23:28:41 +05:30
Sidharth Vinod
46ab6f46f2 fix(#4256): Keep error diagram on screen 2023-03-30 23:09:46 +05:30
Sidharth Vinod
48d267c6dc fix(#4137): Cleanup comments before parsing 2023-03-30 22:08:50 +05:30
Jeremy Funk
15af3ea585 Update docs 2023-03-29 23:53:12 +02:00
Steph
35366f79ac add announcements page content 2023-03-29 14:48:09 -07:00
Steph
4c0980629c add blog page content 2023-03-29 14:46:19 -07:00
Steph
8bd2c0f272 create announcements and blog pages 2023-03-29 14:27:04 -07:00
Steph
2896865163 add latest news section 2023-03-29 14:23:44 -07:00
Sidharth Vinod
a49cdabd6c Add Slack invite link 2023-03-29 21:50:15 +05:30
Remco Haszing
2dd6329872 Define and export the Mermaid type
This represents the type of the default export. This is useful when it’s
being passed around or declared as a global.
2023-03-29 16:55:58 +02:00
Knut Sveidqvist
507a518a91 Bugfix for port selection when using diamonds in elk layout of flowcharts 2023-03-29 16:17:59 +02:00
Knut Sveidqvist
4caf7d7c7b Adding support for markdown string in flowchart-elk 2023-03-29 16:01:08 +02:00
Knut Sveidqvist
89193d7360 Simple markdown in lock file 2023-03-29 09:35:42 +02:00
Knut Sveidqvist
89eec225ce Merge branch 'develop' into 4220-string-synax-and-features 2023-03-29 09:34:49 +02:00
Knut Sveidqvist
cbc2df1ff6 Merge branch 'develop' into feature/1618_repeating_tasks 2023-03-29 09:23:18 +02:00
Knut Sveidqvist
e4a2c74b1b Merge pull request #4247 from kshitijsaksena/bug/4137_fix_comment_bug
Updated render to remove comments from text
2023-03-28 16:26:54 +02:00
Knut Sveidqvist
63160293c7 Updating support for the new type of strings for flowcharts-v2 2023-03-28 15:28:52 +02:00
Knut Sveidqvist
9c0cb3f320 Merge pull request #4249 from aloisklink/build/remove-use-inline-specifiers-lockfile-format-from-npmrc
Remove inline-specifiers pnpm option from `.npmrc` file to avoid merge conflicts
2023-03-27 16:27:30 +02:00
Knut Sveidqvist
fbeb016398 test commit 2023-03-27 14:43:59 +02:00
Alois Klink
093f1697e1 build: remove inline-specifiers pnpm option
Remove the `use-inline-specifiers-lockfile-format=true` pnpm option
from our `.npmrc` file.

This was added in
[PNPM version v7.7.0](https://github.com/pnpm/pnpm/releases/tag/v7.7.0)
and should make our `pnpm-lock.yaml` file much nicer,
but unfortunately, renovate doesn't seem to support it (unsure why?).

This means that whenever we do a `pnpm install` locally, the lock-file
gets changed, and whenever renovate makes a PR, it changes the
lock-file back. This causes a lot of unnecassary merge conflicts.
2023-03-25 21:16:45 +00:00
Alois Klink
f56e0bd530 Merge pull request #4246 from piradata/patch-1
Fix hexagon node flowchart code example in docs
2023-03-25 21:09:57 +00:00
PIRADATA
022e6670d0 docs: fix hexagon node flowchart code example
Use `mermaid-example` instead of `mmd` so that Mermaid formats
the code properly.
2023-03-25 20:13:04 +00:00
Kshitij
e3760d1709 Fixed regex bug 2023-03-25 20:13:30 +05:30
Kshitij
0475591fb6 Updated render to remove comments from text 2023-03-25 15:46:52 +05:30
Jeremy Funk
ba1c5dc6c7 Change to using display mode yaml 2023-03-25 01:56:50 +01:00
Jeremy Funk
2f8c571a5c Fix unit test 2023-03-24 00:37:25 +01:00
Jeremy Funk
a70b3a881d Add comment 2023-03-24 00:22:52 +01:00
Jeremy Funk
950f560d81 Refactor 2023-03-24 00:20:36 +01:00
Jeremy Funk
fd9680a050 Fix bug 2023-03-24 00:18:52 +01:00
Jeremy Funk
2d815e9626 Add documentation 2023-03-24 00:09:06 +01:00
Jeremy Funk
8c0550b2b7 Code refactoring, add e2e test 2023-03-23 23:45:59 +01:00
Jeremy Funk
f054609e02 Add test, fix typo 2023-03-23 22:58:46 +01:00
Jeremy Funk
45c0c5fee0 Bugfix 2023-03-23 22:54:58 +01:00
Jeremy Funk
a535fe1679 Bugfixes, refactor, add compact 2023-03-23 22:38:04 +01:00
Alois Klink
e4d2118d4b Merge pull request #4231 from mermaid-js/renovate/patch-all-minor-patch
chore(deps): update pnpm to v7.30.1
2023-03-23 20:04:30 +00:00
Alois Klink
1184fce148 Merge pull request #4237 from xuanxu/patch-1
Fix typos in timeline docs
2023-03-23 20:00:39 +00:00
Alois Klink
a79f118323 Merge pull request #4230 from vorburger/patch-1
docs: Remove repeated phrase
2023-03-23 19:58:11 +00:00
Juanjo Bazán
6cba2ea02d docs: fix typos in timeline.md 2023-03-23 19:46:17 +00:00
Michael Vorburger ⛑️
3add711c55 docs: Remove repeated phrase 2023-03-23 19:42:33 +00:00
renovate[bot]
1481a8ccb1 chore(deps): update pnpm to v7.30.1 2023-03-23 19:04:24 +00:00
Jeremy Funk
b3b7108d59 Implement basic repeating tasks 2023-03-22 23:15:54 +01:00
Knut Sveidqvist
fd9ad95346 #4220 Handling paragraphs and html labels with classes in mindmaps. 2023-03-22 18:41:31 +01:00
Knut Sveidqvist
a1c50b8079 #4220 Parsing the text as markdown and rendering accordingly 2023-03-20 14:15:26 +01:00
Remco Haszing
4515c58d42 Merge branch 'develop' into fix-node16-module-resolution 2023-03-20 12:24:29 +01:00
Remco Haszing
0dc6e0a0d9 Update cypress mermaid imports 2023-03-20 12:21:22 +01:00
renovate[bot]
8b37ceffe1 chore(deps): update pnpm to v7.30.0 2023-03-20 04:21:23 +00:00
Remco Haszing
b719fa9b18 Fix Cypress tests 2023-03-17 20:53:13 +01:00
Remco Haszing
f3bebf25ea Merge branch 'develop' into fix-node16-module-resolution 2023-03-17 20:52:50 +01:00
Alois Klink
7647ae317a Merge pull request #4228 from remcohaszing/update-types-lodash-es
Update @types/lodash-es
2023-03-17 18:52:30 +00:00
Remco Haszing
8c69ecd5ac Update @types/lodash-es
This adds support for the TypeScript `"moduleResolution": "node16"`.
2023-03-17 12:26:41 +01:00
Kazuki Tsunemi
b725b69fda Add package of class diagrams to doc 2023-03-17 14:47:32 +09:00
Kazuki Tsunemi
b51b2c7b04 Add namespace sample to README 2023-03-17 14:21:31 +09:00
Knut Sveidqvist
dc98fe6a3b Merge pull request #4226 from mermaid-js/updates-homepage
Updates to the Homepage
2023-03-16 16:28:27 +01:00
Steph
b56c8a2a7a fix favicon resolution 2023-03-16 08:13:10 -07:00
Steph
d18dff65e1 add hover effect to mc icon and update cspell 2023-03-16 08:12:53 -07:00
Steph
2dc71377dc add team member 2023-03-16 08:12:42 -07:00
Steph
89b9868870 update cards 2023-03-16 08:11:29 -07:00
Steph
b232f20169 add mermaid chart logo and link to navbar 2023-03-16 08:11:03 -07:00
sidharthv96
2dd906d809 Update docs 2023-03-15 07:50:54 +00:00
Sidharth Vinod
fb70091046 Merge pull request #4221 from Whoeza/patch-1
typo fix
2023-03-15 13:17:34 +05:30
Kazuki Tsunemi
434961b44a Implement rendering logic 2023-03-15 13:26:51 +09:00
Kazuki Tsunemi
75502d076e Implement database for namespace data 2023-03-15 12:43:21 +09:00
Kazuki Tsunemi
4017bb3c49 Implement namespace parser 2023-03-15 12:18:52 +09:00
Kazuki Tsunemi
c1df62638d class body grammer apply to class stetement only 2023-03-15 12:05:57 +09:00
Chuck
ddd245de71 typo fix 2023-03-14 20:35:39 +01:00
Knut Sveidqvist
853d9b7f98 #4220 Create text utility functions handling new lines and applying them on mindmap 2023-03-14 13:52:20 +01:00
renovate[bot]
f3a9f81bfb fix(deps): update all non-major dependencies 2023-03-13 09:45:30 +00:00
renovate[bot]
4b462d717c chore(deps): update node.js to v18.15.0 2023-03-13 04:42:20 +00:00
Remco Haszing
fc80ba66d2 Fix import extensions 2023-03-11 15:27:16 +01:00
Remco Haszing
fd013286f6 Fix vue import error 2023-03-11 15:07:12 +01:00
Remco Haszing
b7d31adda4 Support node16 module resolution
The `node16` module resolution requires imports to use the `.js` file
extension in type definitions.

`@rollup/plugin-typescript` is needed to make this work with the Vite
setup used by Mermaid.

The module option for Mermaid internally is set to `nodenext`. This is
needed to support `.json` imports. Note that setting `module` to
`node16` or `nodenext` implies a matching `moduleResolution` value.
2023-03-11 14:54:21 +01:00
sidharthv96
273a9e7ad6 Update docs 2023-03-10 19:53:13 +00:00
Sidharth Vinod
f75bd397f8 Merge pull request #4209 from RobertWeinmeister/doc/dokuwiki_plugin
Updated DokuWiki plugin for Mermaid integration
2023-03-11 01:20:06 +05:30
Sidharth Vinod
f70d52510a Merge pull request #4210 from andrew-clarkson/patch-1
v smol fixes while reading thru docs
2023-03-11 01:18:56 +05:30
Sidharth Vinod
f0c24d9ec5 Merge pull request #4211 from andrew-clarkson/patch-2
Remove duplication in "A hexagon node"
2023-03-11 01:18:04 +05:30
Andrew Clarkson
708633f639 Remove duplication in "A hexagon node" 2023-03-10 13:25:14 -05:00
Andrew Clarkson
2e174bb3b6 v smol fixes while reading thru docs 2023-03-10 13:12:21 -05:00
Robert Weinmeister
160fe0f971 Updated DokuWiki plugin for Mermaid integration
The plugin Mermaid for DokuWiki replaces the no longer supported plugin flowcharts.
2023-03-10 10:05:59 +01:00
Alois Klink
58d4ba0d8f test(e2e): fix gantt todayMarker tests
The gantt diagram that were supposed to test whether
`todayMarker off` works wasn't working properly, because
`todayMarker on` wasn't working (i.e. the test never failed).

I've fixed this issue, and added a test that checks whether
`todayMarker on` works.

Fixes: https://github.com/mermaid-js/mermaid/issues/4198
2023-03-09 19:18:22 +00:00
Sidharth Vinod
155e729722 Merge pull request #4197 from mre/update-ignored-links
Clean up list of ignored links
2023-03-09 02:34:04 +05:30
Matthias
a17463307b Clean up list of ignored links
The removed links work again.
2023-03-08 21:30:12 +01:00
Sidharth Vinod
4e4f2fcfc5 Merge branch 'master' into develop
* master:
  Updated import of cytoscape for consistent behavior
  v9.4.3
  fix: dayjs import extension
  9.4.2
  Fix mindmap demo
  9.4.2-rc.2
  chore: Rename diagram-definitions with specific names
  Use cytoscape esm
  Revert "chore: Defer elk loading"
  Revert "Split cytoscape"
  test(gantt): test daylight savings in ganttdb
  refactor(deps): replace `moment` with `dayjs`
  fix(E2E): Add cors package
  fix Server
  Fix lockfile
  Remove Readme
2023-03-08 00:13:54 +05:30
Sidharth Vinod
759ab0c0f9 Merge branch 'release/9.4.3'
* release/9.4.3:
  Updated import of cytoscape for consistent behavior
  v9.4.3
  fix: dayjs import extension
2023-03-08 00:13:27 +05:30
Knut Sveidqvist
1a7b8d3897 Updated import of cytoscape for consistent behavior 2023-03-07 23:30:44 +05:30
Sidharth Vinod
f5e7abb71f v9.4.3 2023-03-07 23:29:22 +05:30
Sidharth Vinod
1412bb4e94 fix: dayjs import extension 2023-03-07 22:40:50 +05:30
Sidharth Vinod
328f3968d1 Merge branch 'release/9.4.2'
* release/9.4.2:
  9.4.2
  Fix mindmap demo
  9.4.2-rc.2
  chore: Rename diagram-definitions with specific names
  Use cytoscape esm
  Revert "chore: Defer elk loading"
  Revert "Split cytoscape"
  test(gantt): test daylight savings in ganttdb
  refactor(deps): replace `moment` with `dayjs`
  fix(E2E): Add cors package
  fix Server
  Fix lockfile
  Remove Readme
2023-03-07 21:33:23 +05:30
Sidharth Vinod
c965e4c456 9.4.2 2023-03-07 21:20:32 +05:30
Sidharth Vinod
86aa7ab91e Fix mindmap demo 2023-03-07 18:09:33 +05:30
Sidharth Vinod
141d38b4e7 Merge pull request #4181 from ischanx/fix-getbbox-cache
fix(squence): getBBox() returns zero
2023-03-07 11:16:42 +05:30
Sidharth Vinod
98af37f09f Merge pull request #4183 from mermaid-js/sidv/fix/1066
fix(#1066): Return true if parse is success.
2023-03-07 11:16:25 +05:30
Sidharth Vinod
a57e392ed4 Merge pull request #4187 from Pr0dt0s/feature/4156_expose_detectType
Expose detectType function
2023-03-07 09:40:50 +05:30
Sidharth Vinod
993a19e15b Merge branch 'develop' into sidv/fix/1066
* develop:
  ci(e2e): skip caching in actions/setup-node
  chore: add default entry to exports
  Fix: add require entry in package.json
2023-03-07 09:39:10 +05:30
Sidharth Vinod
533830172c Add UMD back 2023-03-07 09:38:51 +05:30
Sidharth Vinod
7bea44e752 Merge pull request #4194 from mermaid-js/chore/skip-setup-node-caching-in-e2e-ci
CI(e2e): Skip caching in `actions/setup-node`, as `cypress-io/github-action` already caches for us
2023-03-07 08:34:06 +05:30
Alois Klink
f0a73696f5 ci(e2e): skip caching in actions/setup-node
Skip caching `pnpm` in `actions/setup-node`,
because the `cypress-io/github-action` natively supports caching `pnpm`,
as of [cypress-io/github-action@v4.2.0][1].

[1]: https://github.com/cypress-io/github-action/releases/tag/v4.2.0
2023-03-06 22:57:22 +00:00
Pedro Reyes
878c9f1d9d Add documentation for exposed detectType function 2023-03-06 19:32:34 -03:00
Pedro Reyes
8ebd550e0b Merge branch 'mermaid-js:develop' into feature/4156_expose_detectType 2023-03-06 19:29:59 -03:00
Sidharth Vinod
6b5221e465 Merge pull request #4164 from lceconi/patch-1
Fix: add require entry in package.json
2023-03-06 18:00:37 +05:30
Laura Ceconi
8f0cb695e7 chore: add default entry to exports 2023-03-06 12:15:22 +01:00
Sidharth Vinod
1913aad03f Merge branch 'develop' into sidv/fix/1066
* develop:
  fix(deps): update all non-major dependencies
  chore(deps): update all non-major dependencies
  Update Diagram.ts
  Update Diagram.ts
  feat: added internal label
  feat: improve documentation
  make clearer
  fix: invalid url and generate docs
  Update integrations.md to include Mermaid Flow
  feat: expose the diagram api
  fixup! fixup! Move pie outerStrokeWidth to theme variables, update docs
  fixup! Move pie outerStrokeWidth to theme variables, update docs
  Move pie outerStrokeWidth to theme variables, update docs
  fixup! fixup! feat(pie): adding outer border, text position options
  fixup! feat(pie): adding outer border, text position options
  Update packages/mermaid/src/diagrams/pie/pieRenderer.js
  feat(pie): adding outer border, text position options
2023-03-06 14:04:00 +05:30
Sidharth Vinod
b80da0daa1 Merge pull request #4174 from ted-marozzi/feature/4172_expose_diagram_api
feat: expose the diagram api
2023-03-06 14:00:02 +05:30
Sidharth Vinod
c2035c3709 Merge pull request #4186 from ted-marozzi/docs/make_docs_contributing_clearer
docs: make contributing to docs a bit clearer
2023-03-06 13:55:47 +05:30
Sidharth Vinod
d77be9546d Merge pull request #4190 from mermaid-js/renovate/patch-all-minor-patch
fix(deps): update all non-major dependencies (patch)
2023-03-06 13:54:57 +05:30
renovate[bot]
e9d49e6b98 fix(deps): update all non-major dependencies 2023-03-06 06:25:39 +00:00
renovate[bot]
6c2c28940b chore(deps): update all non-major dependencies 2023-03-06 06:22:18 +00:00
Ted Marozzi
72c94b6e6e Update Diagram.ts 2023-03-06 10:19:06 +11:00
Ted Marozzi
44d806e7f5 Update Diagram.ts 2023-03-06 10:17:43 +11:00
Alois Klink
727c56dbb1 Merge pull request #4184 from ted-marozzi/patch-1
Update integrations.md to include Mermaid Flow Visual Editor
2023-03-05 23:12:50 +00:00
Pedro Reyes
526e8fa1ad Expose detectType function 2023-03-05 15:55:54 -03:00
Ted Marozzi
969088187c feat: added internal label 2023-03-06 05:28:34 +11:00
Ted Marozzi
649e6820cc feat: improve documentation 2023-03-06 05:18:33 +11:00
Ted Marozzi
8027a0c55d make clearer 2023-03-06 04:55:59 +11:00
Ted Marozzi
d65d4fc39f fix: invalid url and generate docs 2023-03-06 04:44:47 +11:00
sidharthv96
f7f6cc73f5 Update docs 2023-03-05 05:52:51 +00:00
Sidharth Vinod
55ebfadb32 Update packages/mermaid/src/mermaidAPI.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-03-05 11:19:40 +05:30
Ted Marozzi
c5a5a22b72 Update integrations.md to include Mermaid Flow
the interative visual mermaid editor!
2023-03-05 14:33:46 +11:00
Sidharth Vinod
ad52d7d823 Merge pull request #4145 from Billiam/feature/move-pie-labels
Pie: Adding outer border, text position options
2023-03-05 00:33:15 +05:30
Sidharth Vinod
b9576b4bbe Merge branch 'develop' into sidv/fix/1066
* develop:
2023-03-05 00:29:52 +05:30
Sidharth Vinod
f57fed0eb4 Merge branch 'master' into develop
* master:
  v10.0.2
  fix: dayjs import extension
  Setting version to 10.0.1
  #4168 Adding the correct offset for the edges
  Updated import of cytoscape for consistent behavior
  Use cytoscape esm
  Revert "chore: Defer elk loading"
  Revert "Split cytoscape"
  fix: Class with members and styles
2023-03-05 00:29:35 +05:30
Sidharth Vinod
4e344df204 Merge branch 'develop' into sidv/fix/1066
* develop:
  Update bug_report.yml
2023-03-05 00:25:20 +05:30
Sidharth Vinod
43762c4d7f fix(#1066): Return true if parse is success. 2023-03-05 00:22:02 +05:30
ischanx
4d1d1c36de fix(squence): getBBox() returns zero 2023-03-04 00:06:03 +08:00
Sidharth Vinod
e603840395 Update bug_report.yml 2023-03-03 11:55:18 +05:30
Knut Sveidqvist
c7bcd74d56 Merge branch 'release/10.0.2' 2023-03-02 13:47:19 +01:00
Knut Sveidqvist
20298d243a v10.0.2 2023-03-02 13:45:56 +01:00
Ted Marozzi
51c6462f1d feat: expose the diagram api 2023-03-02 19:17:14 +11:00
Sidharth Vinod
6f3077c856 fix: dayjs import extension 2023-03-01 23:16:24 +05:30
Knut Sveidqvist
4a9d96aaba Setting version to 10.0.1 2023-03-01 14:04:03 +01:00
Knut Sveidqvist
4275aa613c Merge pull request #4169 from mermaid-js/4168_elk_diamon_subgraph
Elk layout for flowcharts: Incorrect placement of edges when using diamonds in subgraphs
2023-03-01 13:44:08 +01:00
Knut Sveidqvist
a65fb3b979 #4168 Adding the correct offset for the edges 2023-03-01 13:38:26 +01:00
Knut Sveidqvist
c0dba713c5 Updated import of cytoscape for consistent behavior 2023-03-01 09:29:59 +01:00
Billiam
8810b378b3 fixup! fixup! Move pie outerStrokeWidth to theme variables, update docs 2023-02-28 13:48:50 -06:00
Billiam
c3064f396c fixup! Move pie outerStrokeWidth to theme variables, update docs 2023-02-28 13:44:09 -06:00
Billiam
82f5b4ca39 Move pie outerStrokeWidth to theme variables, update docs 2023-02-28 13:27:09 -06:00
Laura Ceconi
73ce499863 Fix: add require entry in package.json 2023-02-28 18:53:03 +01:00
Sidharth Vinod
1ecf15669a 9.4.2-rc.2 2023-02-28 21:51:31 +05:30
Sidharth Vinod
d24ddca03f chore: Rename diagram-definitions with specific names 2023-02-28 21:49:49 +05:30
Sidharth Vinod
a7847038a5 Use cytoscape esm 2023-02-28 21:45:07 +05:30
Sidharth Vinod
b6db75fe3e Revert "chore: Defer elk loading"
This reverts commit 037504785c.
2023-02-28 21:44:55 +05:30
Sidharth Vinod
2a838e645c Revert "Split cytoscape"
This reverts commit f81f9f7c95.
2023-02-28 21:44:48 +05:30
Sidharth Vinod
807e1f303d Use cytoscape esm 2023-02-28 20:40:56 +05:30
Sidharth Vinod
65f5f9dc45 Revert "chore: Defer elk loading"
This reverts commit 037504785c.
2023-02-28 20:39:06 +05:30
Sidharth Vinod
b8b8c4740a Revert "Split cytoscape"
This reverts commit f81f9f7c95.
2023-02-28 20:31:03 +05:30
Alois Klink
61bf7c577c test(gantt): test daylight savings in ganttdb
Add a quick test that ensures `ganttDb` correctly adds `1d` (1 day),
even on days with 25 hours.

This test only runs if the test PC has the TZ='America/Los_Angeles'
set (California has daylight savings).

I've added a test to the GitHub Actions `test.yml` action too for this.
It should only add about 5 seconds to each test, so it isn't too bad.
2023-02-28 19:54:58 +05:30
Alois Klink
704506835f refactor(deps): replace moment with dayjs
Replace Mermaid's dependency on `moment` with `dayjs`.

[Moment is now in maintenance mode][1], and they don't recommend
using it.

[Dayjs][2] has almost exactly the same API as moment, and is still
curently being maintained. Unlike moment, dayjs objects are immutable,
which makes our life much easier, but we need to do
`a = a.add(1, "day")` instead of just `a.add(1, "day")`.

We can't use `dayjs.duration`, because unlike `moment.duration`,
[dayjs durations always degrade to ms][3].
This causes issues with daylight savings, since it assumes that each
day is 24 hours, when some days have 23/25 hours with daylight savings.
(it also assumes that each month is 30 days).

However, `dayjs.add(1, "d");` correctly adds 1 days, even when that
day is only 23 hours long, so we can use that instead.

[1]: https://momentjs.com/docs/#/-project-status/
[2]: https://day.js.org/
[3]: https://day.js.org/docs/en/durations/durations

Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-02-28 19:54:27 +05:30
Sidharth Vinod
f8f7d94d5a fix: Class with members and styles 2023-02-28 19:34:54 +05:30
Knut Sveidqvist
114ab87816 Merge pull request #4160 from mermaid-js/sidv/fix4157
fix #4157: Inject only fontFamily without replacing themeVariables
2023-02-28 13:38:52 +01:00
Sidharth Vinod
4a6056b558 typo 2023-02-28 18:01:46 +05:30
knsv
3a56af9633 Update docs 2023-02-28 12:24:04 +00:00
Knut Sveidqvist
fda0c8d0a9 Merge branch 'develop' into sidv/fix4157 2023-02-28 13:20:37 +01:00
Knut Sveidqvist
b932cd0930 Merge pull request #4128 from kshitijsaksena/bug/3949_erdiagram_attribute_comment
Added grammar to skip comment in attribute block
2023-02-28 13:14:50 +01:00
Knut Sveidqvist
2f06b41f5f Merge pull request #4142 from mermaid-js/sidv/fixRunAsync
Fix(#4140): Async bug in mermaid.run
2023-02-28 13:12:14 +01:00
Sidharth Vinod
1ab3ed1a1a chore: Add vitest imports 2023-02-28 16:58:41 +05:30
Sidharth Vinod
1981f12976 chore: Fix snapshots 2023-02-28 16:58:04 +05:30
Sidharth Vinod
733967f65a fix #4157: Inject only fontFamily without replacing themeVariables 2023-02-28 16:55:25 +05:30
Sidharth Vinod
56d27d555b Merge branch 'sidv/fixRunAsync' of https://github.com/mermaid-js/mermaid into sidv/fixRunAsync
* 'sidv/fixRunAsync' of https://github.com/mermaid-js/mermaid:
  Update packages/mermaid/src/mermaid.ts
2023-02-28 16:49:02 +05:30
Sidharth Vinod
7cee8cb6dc Merge branch 'develop' into sidv/fixRunAsync
* develop: (23 commits)
  Fix test
  refactor(deps): replace `moment` with `dayjs`
  test(gantt): test daylight savings in ganttdb
  Update .lycheeignore
  chore: dagre-d3-es@7.0.9
  chore: Add tsdoc for registerLazyLoadedDiagrams
  feat: Ensure proper detection for flowcharts
  fix: Class label not visible if class is already defined
  Update import
  fix TS errors
  fix TS errors
  feat: Match timeline section width to tasks
  chore: TimelineRenderer in TS
  Fix types
  fix: Detector order
  Lint
  Cleanup nodes.js
  docs: Update classdiagram docs
  classLabel tests
  Formatting
  ...
2023-02-28 16:48:54 +05:30
Knut Sveidqvist
c91fa192aa Update packages/mermaid/src/mermaid.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-02-28 12:14:35 +01:00
Knut Sveidqvist
3f93edaaf3 Merge pull request #4086 from sidharthv96/sidv/classDiagramLabels
feat: Add support for classDiagram labels
2023-02-28 12:03:22 +01:00
Knut Sveidqvist
0bed5d717b Merge pull request #4126 from mermaid-js/sidv/timelineSectionWidth
💄 section width now covers all tasks - Timeline
2023-02-28 11:59:14 +01:00
Knut Sveidqvist
1b56071eb3 Merge pull request #4124 from mermaid-js/sidv/fixDetectorOrder
fix: Detector order
2023-02-28 11:49:08 +01:00
Sidharth Vinod
e050a5aaa1 Fix test 2023-02-28 15:40:59 +05:30
Sidharth Vinod
9b2f503dc7 Merge branch 'develop' into sidv/classDiagramLabels
* develop:
  refactor(deps): replace `moment` with `dayjs`
  test(gantt): test daylight savings in ganttdb
  Update .lycheeignore
  chore: dagre-d3-es@7.0.9
  Update docs
  Doc (typo): remove duplicate "be"
  💄 section width now covers all tasks
2023-02-28 14:20:11 +05:30
Sidharth Vinod
c7bdc6ad92 Merge pull request #4153 from aloisklink/chore/switch-to-dayjs
Replace `moment-mini`/`moment` date library with `dayjs`
2023-02-28 10:33:21 +05:30
Alois Klink
a5db04b01c refactor(deps): replace moment with dayjs
Replace Mermaid's dependency on `moment` with `dayjs`.

[Moment is now in maintenance mode][1], and they don't recommend
using it.

[Dayjs][2] has almost exactly the same API as moment, and is still
curently being maintained. Unlike moment, dayjs objects are immutable,
which makes our life much easier, but we need to do
`a = a.add(1, "day")` instead of just `a.add(1, "day")`.

We can't use `dayjs.duration`, because unlike `moment.duration`,
[dayjs durations always degrade to ms][3].
This causes issues with daylight savings, since it assumes that each
day is 24 hours, when some days have 23/25 hours with daylight savings.
(it also assumes that each month is 30 days).

However, `dayjs.add(1, "d");` correctly adds 1 days, even when that
day is only 23 hours long, so we can use that instead.

[1]: https://momentjs.com/docs/#/-project-status/
[2]: https://day.js.org/
[3]: https://day.js.org/docs/en/durations/durations
2023-02-26 22:31:12 +00:00
Alois Klink
06640aba06 test(gantt): test daylight savings in ganttdb
Add a quick test that ensures `ganttDb` correctly adds `1d` (1 day),
even on days with 25 hours.

This test only runs if the test PC has the TZ='America/Los_Angeles'
set (California has daylight savings).

I've added a test to the GitHub Actions `test.yml` action too for this.
It should only add about 5 seconds to each test, so it isn't too bad.
2023-02-26 06:43:14 +00:00
Billiam
3bed70a0c5 fixup! fixup! feat(pie): adding outer border, text position options 2023-02-25 15:47:38 -06:00
Billiam
b079fb4710 fixup! feat(pie): adding outer border, text position options 2023-02-25 15:43:16 -06:00
Sidharth Vinod
8b5cb75ef7 Update .lycheeignore 2023-02-25 10:02:07 +05:30
Billiam
a2855931d2 Update packages/mermaid/src/diagrams/pie/pieRenderer.js
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-02-24 22:21:51 -06:00
Sidharth Vinod
50db9dcf8e Merge pull request #4147 from mermaid-js/sidv/dagre-d3-es
chore: dagre-d3-es@7.0.9
2023-02-25 09:37:09 +05:30
Sidharth Vinod
fa8a887ae1 chore: dagre-d3-es@7.0.9 2023-02-25 08:56:18 +05:30
Billiam
6e4e529af2 feat(pie): adding outer border, text position options 2023-02-24 18:56:29 -06:00
Sidharth Vinod
275a54a562 core: Fix render tsdoc
Co-authored-by:  Dmitry Stratiychuk  <dmstrati@microsoft.com>
2023-02-24 23:10:01 +05:30
Sidharth Vinod
00a14ee811 WIP: Contributors 2023-02-24 23:03:51 +05:30
Sidharth Vinod
d688f1fe94 fix lockfile 2023-02-24 21:16:09 +05:30
Sidharth Vinod
8c2dbafdb5 Merge branch 'develop' into sidv/contributors
* develop: (309 commits)
  Update docs
  fix Lint
  Update CHANGELOG.md
  Update CHANGELOG.md
  fix: fix exports
  Doc (typo): remove duplicate "be"
  Fix readme link
  Regenerate mermaid docs
  Add deepdwn to cspell
  Add Deepdwn to native integrations list
  docs: Fix changelog
  docs: v10 breaking changes
  Remove `null` from diagrams before render
  fix docs diagram
  Updated version
  Minor cleanup to trigger build.
  Fix spellings
  Wrap option working in test case
  Fix typos
  Minor cleanup
  ...
2023-02-24 21:14:55 +05:30
Sidharth Vinod
1bace23cea Merge branch 'develop' into sidv/fixRunAsync
* develop:
  Update docs
  fix: fix exports
  Doc (typo): remove duplicate "be"
  💄 section width now covers all tasks
2023-02-24 20:54:55 +05:30
Sidharth Vinod
f62c4831ad Merge pull request #4074 from l2fprod/feature/user_journey_expand_section
💄 section width now covers all tasks
2023-02-24 20:00:17 +05:30
Sidharth Vinod
7b4ce7c6ea chore: Add tsdoc for registerLazyLoadedDiagrams
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-02-24 17:32:39 +05:30
Sidharth Vinod
dda0d00fb9 Merge branch 'develop' into sidv/fixDetectorOrder
* develop:
  Update docs
  fix Lint
  Update CHANGELOG.md
  Update CHANGELOG.md
  fix: fix exports
  Doc (typo): remove duplicate "be"
  Fix readme link
  Regenerate mermaid docs
  Add deepdwn to cspell
  Add Deepdwn to native integrations list
2023-02-24 17:27:47 +05:30
Sidharth Vinod
4bf5c9f3d8 feat: Ensure proper detection for flowcharts 2023-02-24 17:27:24 +05:30
sidharthv96
0409c5ac27 Update docs 2023-02-24 08:34:38 +00:00
Sidharth Vinod
19e5ccfdda Merge pull request #4133 from Julez404/patch-1
Doc (typo): remove duplicate "be"
2023-02-24 14:00:20 +05:30
Sidharth Vinod
b13707fa7b fix: Class label not visible if class is already defined 2023-02-24 13:46:56 +05:30
Sidharth Vinod
716a4d2cbc Update import 2023-02-24 13:29:34 +05:30
Sidharth Vinod
3b2d55efec Merge branch 'develop' into sidv/classDiagramLabels
* develop: (85 commits)
  fix Lint
  Update CHANGELOG.md
  Update CHANGELOG.md
  fix: fix exports
  Fix readme link
  Regenerate mermaid docs
  Add deepdwn to cspell
  Add Deepdwn to native integrations list
  docs: Fix changelog
  docs: v10 breaking changes
  Remove `null` from diagrams before render
  fix docs diagram
  Updated version
  Minor cleanup to trigger build.
  Fix spellings
  Wrap option working in test case
  Fix typos
  Minor cleanup
  Removed the deprecated use of mindmap in Demo
  Minor cleanup
  ...
2023-02-24 13:28:28 +05:30
Sidharth Vinod
870550bd7e Merge pull request #4135 from Mister-Hope/develop
fix: fix exports
2023-02-24 12:38:47 +05:30
Sidharth Vinod
89f1ea49ba Merge branch 'develop' into sidv/fixRunAsync
* develop:
  fix Lint
2023-02-24 12:31:48 +05:30
Sidharth Vinod
7372d7d6c5 fix Lint 2023-02-24 12:31:29 +05:30
Sidharth Vinod
0206ff540a fix(#4140): Deprecate mermaidAPI.render 2023-02-24 12:20:31 +05:30
Sidharth Vinod
1e5d9ae1f4 fix(#4140): Remove direct usage of mermaidAPI.render 2023-02-24 12:15:55 +05:30
Sidharth Vinod
378e6b59e6 Merge branch 'master' into develop
* master:
  Update CHANGELOG.md
  Update CHANGELOG.md
2023-02-23 13:19:11 +05:30
Sidharth Vinod
8910ecb463 Update CHANGELOG.md 2023-02-23 13:18:49 +05:30
Sidharth Vinod
ca97210d67 Update CHANGELOG.md 2023-02-23 13:13:36 +05:30
Mr.Hope
f8abc9c6d5 fix: fix exports
"types" import should always be first
2023-02-23 15:20:17 +08:00
Yoshi404
ef20e0b77a Doc (typo): remove duplicate "be" 2023-02-22 22:34:30 +01:00
Sidharth Vinod
f3b313ec1d Merge branch 'master' into develop
* master:
  Fix readme link
2023-02-22 12:34:11 +05:30
Sidharth Vinod
8f830a1698 Fix readme link 2023-02-22 12:33:50 +05:30
Sidharth Vinod
6a6b200a04 Merge pull request #4127 from Billiam/patch-1
Adding app (Deepdwn) to integrations list
2023-02-22 11:41:20 +05:30
Billiam
15231924cd Regenerate mermaid docs 2023-02-21 21:50:02 -06:00
Billiam
7d4692f7b2 Add deepdwn to cspell 2023-02-21 21:24:39 -06:00
Kshitij
285a7448ae Added grammar to skipcomment in attribute block 2023-02-22 08:36:44 +05:30
Billiam
fd6ce89933 Add Deepdwn to native integrations list 2023-02-21 20:56:26 -06:00
Sidharth Vinod
c8e351c2bb fix TS errors 2023-02-22 02:15:15 +05:30
Sidharth Vinod
a59904cf16 fix TS errors 2023-02-22 02:14:16 +05:30
Sidharth Vinod
df36968ec8 feat: Match timeline section width to tasks 2023-02-22 02:10:35 +05:30
Sidharth Vinod
2ab1e15b86 chore: TimelineRenderer in TS 2023-02-22 02:09:14 +05:30
Sidharth Vinod
eca4163363 Fix types 2023-02-21 23:24:11 +05:30
Sidharth Vinod
1ac219282b fix: Detector order 2023-02-21 23:00:03 +05:30
Sidharth Vinod
0df8c149f9 Merge branch 'master' into develop
* master:
  docs: Fix changelog
  docs: v10 breaking changes
  Remove `null` from diagrams before render
  fix docs diagram
2023-02-21 21:40:29 +05:30
Sidharth Vinod
bdf2667389 docs: Fix changelog 2023-02-21 21:40:06 +05:30
Sidharth Vinod
b868777184 docs: v10 breaking changes 2023-02-21 21:35:54 +05:30
Sidharth Vinod
fe2ef5e0c6 Remove null from diagrams before render 2023-02-21 16:33:42 +05:30
Sidharth Vinod
ac21fe2d5c fix docs diagram 2023-02-21 16:25:18 +05:30
Per Brolin
6b251de227 Merge branch 'master' into develop 2023-02-21 10:29:21 +01:00
Per Brolin
bb56492afe Merge remote-tracking branch 'origin/master' 2023-02-21 10:27:50 +01:00
Per Brolin
2a9e846a49 Merge branch 'release/10.0.0' 2023-02-21 10:27:12 +01:00
Per Brolin
3b25cd3238 Updated version 2023-02-21 10:25:02 +01:00
Sidharth Vinod
4bc997cb8f Minor cleanup to trigger build. 2023-02-21 13:29:43 +05:30
Sidharth Vinod
555d4f2cdc Fix spellings 2023-02-21 13:27:37 +05:30
Sidharth Vinod
75633ba125 Merge pull request #4118 from fkohrt/patch-1
Fix typos
2023-02-21 13:24:54 +05:30
Per Brolin
ec5fa31a11 Wrap option working in test case 2023-02-21 07:00:51 +01:00
Florian Kohrt
bfb8a75fca Fix typos 2023-02-20 22:06:38 +01:00
Sidharth Vinod
067b6adc20 fix(E2E): Add cors package 2023-02-20 21:23:06 +05:30
Sidharth Vinod
a8162634cd fix Server 2023-02-20 21:18:54 +05:30
Sidharth Vinod
14c15b221a Minor cleanup
Co-authored-by: Per Brolin <per@mermaidchart.com>
2023-02-20 19:28:31 +05:30
Per Brolin
8743e9e30e Removed the deprecated use of mindmap in Demo 2023-02-20 14:50:04 +01:00
pbrolin47
22b18a4320 Merge pull request #4113 from mermaid-js/3192_invisible_edges
Adding the ability to use invisible edges
2023-02-20 14:40:43 +01:00
pbrolin47
786023ffa6 Merge pull request #4110 from mermaid-js/sidv/splitDiagrams
splitDiagrams
2023-02-20 13:54:27 +01:00
Sidharth Vinod
6ded32880d Fix lockfile 2023-02-20 18:24:24 +05:30
Sidharth Vinod
68cdc759a7 Minor cleanup
Co-authored-by: Per Brolin <per@mermaidchart.com>
2023-02-20 17:53:07 +05:30
knsv
eb04d80df0 Update docs 2023-02-20 10:23:13 +00:00
Knut Sveidqvist
b6cac3a431 #3192 Adding docs and visual test 2023-02-20 11:19:23 +01:00
Knut Sveidqvist
3a71618a49 #3192 Adding the ability to create invisible links in flowcharts(v2) 2023-02-20 11:08:25 +01:00
Per Brolin
dde8330888 Merge remote-tracking branch 'origin/develop' into develop 2023-02-20 09:47:39 +01:00
Sidharth Vinod
38b2cbc3d1 chore: Update RunOptions docs
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-02-20 13:10:54 +05:30
Sidharth Vinod
2272af38b9 Merge branch 'release/10.0.0' into sidv/splitDiagrams
* release/10.0.0:
  Cleanup
2023-02-20 01:32:12 +05:30
Sidharth Vinod
40b5f868de Cleanup 2023-02-20 01:19:07 +05:30
Sidharth Vinod
3e480612c7 Merge branch 'release/10.0.0' into sidv/splitDiagrams
* release/10.0.0:
  Skip elk
2023-02-20 00:36:33 +05:30
Sidharth Vinod
4c7306d808 Skip elk 2023-02-20 00:36:13 +05:30
Sidharth Vinod
f66b524585 Merge branch 'release/10.0.0' into sidv/splitDiagrams
* release/10.0.0:
  Skip all elk tests as it's flaky
2023-02-20 00:31:13 +05:30
Sidharth Vinod
5de5598069 Skip all elk tests as it's flaky 2023-02-20 00:30:27 +05:30
Sidharth Vinod
c9c4320f89 fix unit tests 2023-02-20 00:14:39 +05:30
Sidharth Vinod
543e4de0c8 chore: Remove lazyLoadedDiagrams from config 2023-02-19 23:55:22 +05:30
Sidharth Vinod
8174c7ca16 Cleanup 2023-02-19 22:42:26 +05:30
Sidharth Vinod
014ab85420 Cleanup 2023-02-19 22:41:44 +05:30
sidharthv96
e51817b735 Update docs 2023-02-19 16:46:20 +00:00
Sidharth Vinod
c7d9103ede Merge pull request #4107 from rodja/develop
add links to NiceGUI integration
2023-02-19 22:12:43 +05:30
sidharthv96
92cd5ed133 Update docs 2023-02-19 15:06:09 +00:00
Sidharth Vinod
6fb17bb405 Merge pull request #4105 from Oliboy50/patch-1
docs(flowchart): duplicated hexagon node example
2023-02-19 20:32:43 +05:30
Sidharth Vinod
638362baea Merge branch 'release/10.0.0' into sidv/splitDiagrams
* release/10.0.0: (333 commits)
  10.0.0-rc.3
  Export more types
  no side effects
  10.0.0-rc.2
  skip failing elk test
  Cleanup
  Update docs
  fix(#3406, #3394): Remove init & initThrowsErrors
  chore: Rename lazy loaded diagram definitions
  Skip flowchart-elk failing test
  Fix docs
  fix Server
  Fix lint
  Remove Readme
  Fix E2E Tests
  Fix tests
  feat: Break render and parse types
  chore: Remove all non async render/parse/init
  Remove CJS builds from docs
  chore: Remove cjs from build
  ...
2023-02-19 20:18:26 +05:30
Sidharth Vinod
e22171c5bc 10.0.0-rc.3 2023-02-19 20:07:07 +05:30
Sidharth Vinod
77207e0452 Export more types 2023-02-19 20:04:46 +05:30
Sidharth Vinod
4a721a2d25 no side effects 2023-02-19 18:59:08 +05:30
Sidharth Vinod
db8a14cdaf 10.0.0-rc.2 2023-02-19 18:36:04 +05:30
Sidharth Vinod
1691d48b2e skip failing elk test 2023-02-19 18:26:13 +05:30
Sidharth Vinod
8469e72709 Cleanup 2023-02-19 17:33:46 +05:30
sidharthv96
83f3ceb7f5 Update docs 2023-02-19 10:43:49 +00:00
Sidharth Vinod
4ea7294eeb fix(#3406, #3394): Remove init & initThrowsErrors
New run function added as replacement.
2023-02-19 16:10:08 +05:30
Sidharth Vinod
57fd3e586a chore: Rename lazy loaded diagram definitions 2023-02-19 14:58:55 +05:30
Sidharth Vinod
8363552c3a Skip flowchart-elk failing test 2023-02-19 14:52:08 +05:30
Sidharth Vinod
8c64a90721 Fix docs 2023-02-19 14:21:15 +05:30
Sidharth Vinod
6e3d96e16d fix Server 2023-02-19 14:18:09 +05:30
Sidharth Vinod
1684faf632 Fix lint 2023-02-19 14:15:50 +05:30
Sidharth Vinod
e6b4e2c084 Remove Readme 2023-02-19 14:13:57 +05:30
Sidharth Vinod
03419c691c Remove Readme 2023-02-19 14:13:47 +05:30
Sidharth Vinod
6aa3ea43ae Remove Readme 2023-02-19 14:13:30 +05:30
Sidharth Vinod
735aceb37a Fix E2E Tests 2023-02-19 14:03:11 +05:30
Sidharth Vinod
d2927435ab Fix tests 2023-02-19 13:09:31 +05:30
Sidharth Vinod
eaa84d2d91 feat: Break render and parse types
Both render and parse are async now.
Return type of render contains svg and bindFunctions.
Parse will not throw error if parseOptions.silent is passed.
2023-02-19 13:08:13 +05:30
Rodja Trappe
941b959da3 add links to NiceGUI integration 2023-02-19 05:40:45 +01:00
Oliver THEBAULT
ae36586b58 docs(flowchart): duplicated hexagon node example 2023-02-18 22:29:35 +01:00
Sidharth Vinod
d22e8d92c6 chore: Remove all non async render/parse/init 2023-02-19 01:10:15 +05:30
Sidharth Vinod
45adc5fb6b Remove CJS builds from docs 2023-02-19 00:58:36 +05:30
Sidharth Vinod
c1aad5975c Merge branch 'release/9.4.2' into release/10.0.0
* release/9.4.2:
  RC version
  Revert #4034
  Revert #4034
  fix: Vite, D3, Vitest Types
  fix(api): tree shaking package.json import
2023-02-19 00:55:23 +05:30
Sidharth Vinod
0c18c0309b Enable blank issues 2023-02-19 00:37:41 +05:30
Sidharth Vinod
631ff8fb9e chore: Remove cjs from build 2023-02-19 00:37:11 +05:30
Sidharth Vinod
31629fe93f Merge pull request #4101 from AielloChan/develop
fix(api): tree shaking package.json import
2023-02-19 00:06:23 +05:30
Sidharth Vinod
735faa83e9 Merge branch 'release/9.4.2' into pr/AielloChan/4101
* release/9.4.2:
  RC version
  Revert #4034
  Revert #4034
  fix: Vite, D3, Vitest Types
2023-02-19 00:05:53 +05:30
Sidharth Vinod
2c062d648a Merge branch 'develop' into release/9.4.2
* develop:
  Add highlight tag info in contributing.md
  chore(deps): update dependency cypress to v12
  docs: fix links
  Fix types
  chore(deps): update dependency vite to v4
2023-02-19 00:04:44 +05:30
Sidharth Vinod
ea8128e881 RC version 2023-02-18 23:48:09 +05:30
Sidharth Vinod
bd98f1477f Revert #4034 2023-02-18 23:46:11 +05:30
Sidharth Vinod
0f36bbf3e1 Revert #4034 2023-02-18 23:45:45 +05:30
Sidharth Vinod
3c4a6a19bb fix: Vite, D3, Vitest Types 2023-02-18 22:35:14 +05:30
Aiello
e31924eadc fix(api): tree shaking package.json import
Manually tree shaking import statement of package.json
2023-02-18 23:21:20 +08:00
Sidharth Vinod
bb8bd111f8 Merge branch 'develop' into sidv/classDiagramLabels
* develop: (39 commits)
  Add highlight tag info in contributing.md
  chore(deps): update dependency cypress to v12
  docs: fix links
  Skip precommit hooks on CI
  Fix release-publish
  Fix timeline and mindmap
  Updating integration instructions for timeline and mindmap
  Remove node heap
  Revert "chore: Set node heap size"
  Revert "Remove text hint"
  Split cytoscape
  Linear build
  Remove text hint
  Fix elk import
  Dynamic elk import
  Remove heap option
  elk web-worker
  Test publish docs
  chore: Add file extension for dynamic import
  chore: Defer elk loading
  ...
2023-02-16 18:06:41 +05:30
Sidharth Vinod
fec193ebaf Merge pull request #4068 from mermaid-js/renovate/cypress-12.x
chore(deps): update dependency cypress to v12
2023-02-16 18:05:24 +05:30
Sidharth Vinod
4ed6ec1a4d Add highlight tag info in contributing.md 2023-02-16 18:00:41 +05:30
renovate[bot]
ccaa99937f chore(deps): update dependency cypress to v12 2023-02-16 12:27:04 +00:00
Sidharth Vinod
17238c0326 Merge branch 'master' into develop
* master: (24 commits)
  docs: fix links
  Skip precommit hooks on CI
  Fix release-publish
  Fix timeline and mindmap
  Updating integration instructions for timeline and mindmap
  Remove node heap
  Revert "chore: Set node heap size"
  Revert "Remove text hint"
  Split cytoscape
  Linear build
  Remove text hint
  Fix elk import
  Dynamic elk import
  Remove heap option
  elk web-worker
  Test publish docs
  chore: Add file extension for dynamic import
  chore: Defer elk loading
  Update vitepress
  Fix links to integrations.md
  ...
2023-02-16 17:52:07 +05:30
Sidharth Vinod
ac231949f0 Merge pull request #4071 from mermaid-js/renovate/vite-4.x
chore(deps): update dependency vite to v4
2023-02-16 17:50:08 +05:30
Sidharth Vinod
d543bc0411 docs: fix links 2023-02-16 17:27:51 +05:30
Knut Sveidqvist
23ed533fac Merge pull request #4095 from mermaid-js/release/9.4.1
Release 9.4.1
2023-02-16 12:47:51 +01:00
Sidharth Vinod
86cfb1bb60 Skip precommit hooks on CI 2023-02-16 17:09:02 +05:30
Sidharth Vinod
b10d243995 Fix release-publish 2023-02-16 17:07:03 +05:30
Sidharth Vinod
b22978dfb2 Fix timeline and mindmap 2023-02-16 16:52:15 +05:30
Knut Sveidqvist
276f042983 Merge branch 'release/9.4.1' of github.com:mermaid-js/mermaid into release/9.4.1 2023-02-16 12:05:51 +01:00
Knut Sveidqvist
71e4f1152b Updating integration instructions for timeline and mindmap 2023-02-16 12:05:38 +01:00
Sidharth Vinod
0a923dfe91 Remove node heap 2023-02-16 16:28:09 +05:30
Sidharth Vinod
743c636441 Revert "chore: Set node heap size"
This reverts commit 8df965bd60.
2023-02-16 16:10:20 +05:30
Sidharth Vinod
8c7043ffaf Revert "Remove text hint"
This reverts commit ec6ef35d21.
2023-02-16 15:27:43 +05:30
Sidharth Vinod
f81f9f7c95 Split cytoscape 2023-02-16 15:21:45 +05:30
Sidharth Vinod
ea7aaa5d56 Linear build 2023-02-16 15:09:22 +05:30
Sidharth Vinod
ec6ef35d21 Remove text hint 2023-02-16 15:07:55 +05:30
Sidharth Vinod
c815c84e1c Fix elk import 2023-02-16 15:00:35 +05:30
Sidharth Vinod
b8315cec6c Dynamic elk import 2023-02-16 14:42:47 +05:30
Sidharth Vinod
76fdc00b06 Remove heap option 2023-02-16 14:41:22 +05:30
Sidharth Vinod
83797eef38 elk web-worker 2023-02-16 14:21:33 +05:30
Sidharth Vinod
0db2657b7b Test publish docs 2023-02-16 13:05:53 +05:30
Sidharth Vinod
a1a252cc29 Merge branch 'master' into release/9.4.1
* master:
  Update vitepress
  Fix links to integrations.md
  chore: Set node heap size
2023-02-16 13:01:10 +05:30
Sidharth Vinod
533bd7da3c chore: Add file extension for dynamic import 2023-02-16 12:56:32 +05:30
Sidharth Vinod
037504785c chore: Defer elk loading 2023-02-16 12:47:28 +05:30
Sidharth Vinod
62f7fb082e Update vitepress 2023-02-16 12:47:00 +05:30
Sidharth Vinod
b89b90dbb9 Fix links to integrations.md 2023-02-16 12:35:43 +05:30
Sidharth Vinod
e9cc9f4005 chore: Set node heap size 2023-02-16 12:26:27 +05:30
Sidharth Vinod
8df965bd60 chore: Set node heap size 2023-02-16 12:21:24 +05:30
Sidharth Vinod
2b3019fb94 Set node heap size 2023-02-16 12:16:00 +05:30
Sidharth Vinod
31afd7499b chore: Linear build 2023-02-16 12:05:41 +05:30
Knut Sveidqvist
25da0c6c8e Merge branch 'master' into develop 2023-02-15 16:31:44 +01:00
Per Brolin
aad147c219 Merge branch 'master' into develop 2023-02-15 16:21:17 +01:00
Per Brolin
98bec36f81 Merge branch 'release/9.4.0' 2023-02-15 16:20:22 +01:00
Per Brolin
97614b8af5 Updated to 9.4.0 2023-02-15 15:54:02 +01:00
Knut Sveidqvist
343e48302e Fix for direction issue with elk rendering 2023-02-15 15:12:52 +01:00
Per Brolin
aef989fe03 Corrected sequenceRenderer 2023-02-15 15:11:23 +01:00
Per Brolin
0c38f20281 Clearing sequence diagram before rendering 2023-02-15 14:17:46 +01:00
Knut Sveidqvist
eed427b4ac Adding simple direction logic 2023-02-15 14:10:38 +01:00
Knut Sveidqvist
027296df68 Working version before applying direction logic 2023-02-15 13:54:33 +01:00
Sidharth Vinod
10e6c92766 Lint 2023-02-14 10:56:16 +05:30
Sidharth Vinod
e1710fddd9 Cleanup nodes.js 2023-02-14 10:22:17 +05:30
Sidharth Vinod
bcfefefbd4 docs: Update classdiagram docs 2023-02-14 00:56:40 +05:30
Sidharth Vinod
ef4fbd8bb3 classLabel tests 2023-02-14 00:54:42 +05:30
Sidharth Vinod
17e317385a Formatting 2023-02-14 00:37:17 +05:30
Sidharth Vinod
102900749e Add support for classDiagram labels 2023-02-14 00:36:43 +05:30
Sidharth Vinod
46f2aebabc Cleanup Renderer 2023-02-13 22:48:11 +05:30
Sidharth Vinod
b9c2f62b47 Cleanup classDB 2023-02-13 21:31:43 +05:30
Sidharth Vinod
9d75665460 Fix links to integrations.md 2023-02-13 10:55:24 +05:30
Sidharth Vinod
6fcba87ee8 Merge pull request #4076 from mermaid-js/sidv/readmeLogo
Add logo to readme
2023-02-13 10:49:56 +05:30
Per Brolin
a956be7bbf Release candidate 2023-02-10 11:03:25 +01:00
Per Brolin
e0286be8d2 Corrected typo 2023-02-10 08:58:58 +01:00
Sidharth Vinod
3e9978a58c docs: Add CDN to top links, remove changelog
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-02-10 12:31:14 +05:30
Sidharth Vinod
fd8fb96ec2 chore: Copy readme before publishing 2023-02-10 12:14:58 +05:30
Sidharth Vinod
ad6a43cf81 Add logo to readme 2023-02-09 12:46:05 +05:30
Sidharth Vinod
f6d9868e35 chore: Lint fix 2023-02-09 11:34:20 +05:30
Sidharth Vinod
94d4ee3a2c Merge pull request #4015 from JeffTrain/develop
docs: minor fix on markdown
2023-02-09 11:33:28 +05:30
Sidharth Vinod
004432fae9 Fix types 2023-02-09 11:28:27 +05:30
renovate[bot]
08ac41113f chore(deps): update dependency vite to v4 2023-02-09 05:54:04 +00:00
Sidharth Vinod
e9d2d084fd Merge pull request #4066 from mermaid-js/renovate/actions-dependency-review-action-3.x
chore(deps): update actions/dependency-review-action action to v3
2023-02-09 11:14:27 +05:30
renovate[bot]
34c98717d5 chore(deps): update actions/dependency-review-action action to v3 2023-02-09 05:44:09 +00:00
Sidharth Vinod
f22ce38ada Merge pull request #4065 from mermaid-js/renovate/actions-configure-pages-3.x
chore(deps): update actions/configure-pages action to v3
2023-02-09 11:13:54 +05:30
Sidharth Vinod
8ba33a994c Merge pull request #4072 from mermaid-js/renovate/timonvs-pr-labeler-action-4.x
chore(deps): update timonvs/pr-labeler-action action to v4
2023-02-09 11:13:15 +05:30
Sidharth Vinod
07764348eb Merge pull request #4069 from mermaid-js/renovate/jsdom-21.x
chore(deps): update dependency jsdom to v21
2023-02-09 11:13:03 +05:30
Sidharth Vinod
803c8ca45b Merge pull request #4070 from mermaid-js/renovate/rimraf-4.x
chore(deps): update dependency rimraf to v4
2023-02-09 11:12:51 +05:30
Frederic Lavigne
f791cd2b24 💄 section width now covers all tasks 2023-02-08 22:02:19 -06:00
Sidharth Vinod
b69b3919bb Merge pull request #4073 from aloisklink/chore/cache-eslint-in-lint-fix
build(lint:fix): cache eslint in pnpm run lint:fix
2023-02-09 08:27:16 +05:30
renovate[bot]
886d1c15c4 chore(deps): update timonvs/pr-labeler-action action to v4 2023-02-09 00:51:38 +00:00
renovate[bot]
72e8b7fb38 chore(deps): update dependency rimraf to v4 2023-02-09 00:49:20 +00:00
renovate[bot]
3a89cc7993 chore(deps): update dependency jsdom to v21 2023-02-09 00:47:08 +00:00
renovate[bot]
bb3a48c91a chore(deps): update actions/configure-pages action to v3 2023-02-09 00:42:44 +00:00
renovate[bot]
d45eda1c60 chore(deps): update dependency @types/uuid to v9 2023-02-09 00:41:24 +00:00
Alois Klink
4d12fb0464 build(lint:fix): cache eslint in pnpm run lint:fix
Cache eslint in `pnpm run lint:fix`.

This was added to the `pnpm run lint` script in
b7f9495 (build: add eslint --cache file, 2022-08-27), but we
didn't add it to `pnpm run lint:fix` due to worries about cache
invalidation.

However, we switched to using `--cache-strategy content` in
b3e509b7 (build(lint): cache eslint with strategy content, 2023-02-05),
which should avoid any caching issues.

Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-02-09 00:21:19 +00:00
Sidharth Vinod
08e7bbcc13 Merge pull request #4044 from mermaid-js/renovate/all-minor-patch
chore(deps): update all non-major dependencies (minor)
2023-02-09 01:36:46 +05:30
Sidharth Vinod
f83f09d8b0 Fix vitest type 2023-02-09 01:29:41 +05:30
renovate[bot]
c4eb1608b0 chore(deps): update all non-major dependencies 2023-02-08 19:30:57 +00:00
Knut Sveidqvist
74df4a7a68 Mind map coming in from the cold. A lazy loaded diagram in the same way as timeline. 2023-02-08 17:42:58 +01:00
Knut Sveidqvist
38a84a7fe0 Merge branch 'develop' into release/9.4.0 2023-02-08 14:00:02 +01:00
Knut Sveidqvist
5e864c3b9b Merge branch 'timeline' into release/9.4.0 2023-02-08 13:58:56 +01:00
Knut Sveidqvist
b5a4cc0e17 Merge pull request #4014 from mermaid-js/timeline
Timeline Diagram
2023-02-08 13:57:36 +01:00
Knut Sveidqvist
82f7e1b754 Version updates 2023-02-08 13:50:58 +01:00
Knut Sveidqvist
580903051f Fixing broken test 2023-02-08 13:40:41 +01:00
Knut Sveidqvist
ce037a84ca Fixing build after last batch of changes 2023-02-08 13:16:33 +01:00
Sidharth Vinod
7f254e37e9 Cleanup 2023-02-08 16:01:29 +05:30
Sidharth Vinod
d562a81019 Merge branch 'develop' into timeline
* develop: (45 commits)
  Showcase section to the docs - keepings docs up to date (#4055)
  bugfix: add missing d3 curves to flowchart and docs
  fix(deps): update dependency dagre-d3-es to v7.0.8
  build(pre-commit): cache eslint in pre-commit
  build(lint): cache eslint with strategy content
  Update cypress/integration/rendering/sequencediagram.spec.js
  feat(er): allow leading underscore for attributes name
  ci(lint): show nice error on lint failure
  chore: add moment to dependencies
  Update docs
  Update mindmap.md
  chore: remove moment-mini
  docs(readme-ch): fix twitter link
  build(lint): cache prettier on `pnpm run lint`
  fix: moment-mini default exporter
  docs(readme): update broken twitter badge
  test(er): improve tests on multiple key constraints
  Fixes Typo, remove console.log
  doc(er): add documentation on multiple key constraints
  feat(er): allow multiple constraints on attributes
  ...
2023-02-08 15:57:09 +05:30
Knut Sveidqvist
6a045db83c Fix for e2e issue with mindmap tests, not related to timeline 2023-02-08 11:24:09 +01:00
Sidharth Vinod
563896400b Merge pull request #4057 from aloisklink/chore/cache-eslint-in-pre-commit
Cache `eslint` in pre-commit script (makes `git commit` 5x faster)
2023-02-08 00:14:37 +05:30
Omer Rosenbaum
73ee9e9a92 Showcase section to the docs - keepings docs up to date (#4055)
* Add a Showcase section to the docs with Swimm

* Build docs

* Move FAQ to Config

* Create showcases page

* Build docs

* Prettier

* feat: Redirect old docs URLs

---------

Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-02-07 23:15:48 +05:30
Sidharth Vinod
923ddc8309 Merge pull request #4038 from natasha-jarus/bug/missing-flowchart-curves
bugfix: add missing d3 curves to flowchart and docs
2023-02-07 14:00:53 +05:30
Sidharth Vinod
64096b22dc Merge pull request #3965 from oleveau/feature/AddBoxForSeqDiagrams
Add Box support in Sequence Diagrams
2023-02-07 13:58:32 +05:30
Natasha Jarus
84d563584f bugfix: add missing d3 curves to flowchart and docs 2023-02-06 13:28:40 -08:00
renovate[bot]
ac67794fb2 fix(deps): update dependency dagre-d3-es to v7.0.8 2023-02-06 01:07:08 +00:00
Alois Klink
98b2148352 build(pre-commit): cache eslint in pre-commit
Run eslint with `--cache` to speed up pre-commit scripts.

This was added to the `pnpm run lint` script in
b7f9495a (build: add eslint --cache file, 2022-08-27)
and doesn't seem to be causing any issues.

I haven't enabled `--cache` for `prettier` since as of prettier 2.8.0,
their cache invalidation doesn't yet work with prettier plugins.
2023-02-05 19:33:30 +00:00
Alois Klink
b3e509b7d4 build(lint): cache eslint with strategy content
Cache eslint using `--cache-strategy content` instead of the default
`--cache-strategy metadata`.

By default, `eslint` uses the file metadata (e.g. modification time)
to detect when the cache should be invalidated.

However, this is not efficient with `git`, since git constantly changes
the modification time,
e.g. running `git switch main && git switch original-branch` would not
change the file contents, but would change the file mtimes and force
eslint to re-lint everything.

Using the file contents is slower (~3% for me), but more resilient.

See
https://eslint.org/docs/latest/use/command-line-interface#--cache-strategy
2023-02-05 19:33:30 +00:00
Sidharth Vinod
8d6d90021a Update cypress/integration/rendering/sequencediagram.spec.js 2023-02-05 11:54:56 +05:30
Sidharth Vinod
71e5a53172 Merge pull request #4034 from emersonbottero/develop
fix: moment-mini default exporter
2023-02-05 11:48:56 +05:30
Sidharth Vinod
a75cacd4a4 Merge pull request #4033 from tomperr/feature/4031_er_leading_underscore_attribute_name
feat(er): allow leading underscore for attributes name
2023-01-30 18:56:15 +05:30
Tom PERRILLAT-COLLOMB
c2ec63d4fd feat(er): allow leading underscore for attributes name 2023-01-30 12:34:06 +01:00
Sidharth Vinod
7ecaaaf46f Merge pull request #4035 from aloisklink/chore/cache-prettier
build(lint): cache prettier on `pnpm run lint`
2023-01-30 10:55:50 +05:30
Alois Klink
4900647bf0 ci(lint): show nice error on lint failure
Prints a nice error on GitHub Actions if `pnpm run lint` fails.
2023-01-29 20:27:31 +00:00
Emerson Bottero
df10d64989 chore: add moment to dependencies 2023-01-29 11:24:48 -03:00
sidharthv96
b9bed14cda Update docs 2023-01-28 19:46:10 +00:00
Sidharth Vinod
cd007cabb5 Merge pull request #4042 from GavinPen/patch-1
Update mindmap.md
2023-01-29 01:12:30 +05:30
GavinPen
cb1a20264d Update mindmap.md
Minor Improvement to wording
2023-01-28 17:42:30 +00:00
Emerson Bottero
7179f1bcba chore: remove moment-mini 2023-01-26 20:55:57 -03:00
Alois Klink
b35e4a8c52 Merge pull request #4032 from LeoDog896/patch-1
docs(readme): update broken twitter badge
2023-01-26 17:28:02 +00:00
Tristan F
a89cb9f0d6 docs(readme-ch): fix twitter link 2023-01-26 12:07:44 -05:00
Alois Klink
8b4426aebf build(lint): cache prettier on pnpm run lint
[Prettier 2.7.0](https://prettier.io/blog/2022/06/14/2.7.0.html) added
a `--cache` CLI option to greatly speed up subsequent prettier runs.

By default, the cache is stored in
`./node_modules/.cache/prettier/.prettier-cache` and uses an `md5`
checksum of the contents as the cache-key.

On my PC, running `pnpm run lint` used to take 13.9 seconds, but now
it only takes 6 seconds.

Potential issues
----------------

Although updating Node.JS/Prettier will invalidate the cache,
updating or changing prettier plugins won't invalidate the cache.

Since we do use `prettier-plugin-jsdoc` in Mermaid, this might cause
a minor issue, but CI should catch it.
2023-01-26 16:31:40 +00:00
ashishjain0512
003997372e Update docs 2023-01-26 11:48:25 +00:00
ashishj
61f33567ae Making timeline diagram lazy-loaded internal, removing separate package 2023-01-26 10:29:35 +01:00
Olivier Leveau
9fb6f1998f Merge branch 'develop' into feature/AddBoxForSeqDiagrams 2023-01-26 09:14:18 +01:00
Emerson Bottero
19e3624e89 fix: moment-mini default exporter 2023-01-26 01:23:41 -03:00
Tristan F
be332cfdef docs(readme): update broken twitter badge
(From https://github.com/badges/shields/issues/8837):

The Twitter API has changed in recent days by closing support for 3rd party apps, breaking the Twitter follow count badge.
2023-01-25 15:34:24 -05:00
Sidharth Vinod
c51f6df82c Merge pull request #4030 from tomperr/feature/4009_er_multiple_constraints
feat(er): add multiple key constraints
2023-01-26 00:16:58 +05:30
Tom PERRILLAT-COLLOMB
dc0a46f742 test(er): improve tests on multiple key constraints 2023-01-25 19:40:40 +01:00
Sidharth Vinod
c76728b423 Merge pull request #3902 from weedySeaDragon/bug/3858_state_named_state_container
Bug/3858 [state] trailing whitespace in ids for named state container
2023-01-25 22:51:34 +05:30
Sidharth Vinod
0aa7da261f Merge pull request #3962 from aloisklink/build/add-autogenerated-header-after-yaml-codeblocks
Add support for YAML frontmatter in Markdown docs (used for Vitepress config)
2023-01-25 22:50:20 +05:30
ashishjain0512
5e6aac4377 Update docs 2023-01-25 17:06:30 +00:00
ashishj
52bd5181f9 More Lint Fixes 2023-01-25 18:03:04 +01:00
ashishj
49ce5222c9 Lint Fixes 2023-01-25 17:49:35 +01:00
ashishj
df1e9c4117 Added rendering test cases 2023-01-25 17:46:23 +01:00
ashishj
5c14df0aeb Added jest test cases 2023-01-25 17:45:47 +01:00
ashishj
8af5c4c341 Fix parser grammer conflicts 2023-01-25 17:44:34 +01:00
Olivier Leveau
f7756ccc00 Fixes Typo, remove console.log 2023-01-25 17:02:10 +01:00
Tom PERRILLAT-COLLOMB
3066a4b43a doc(er): add documentation on multiple key constraints 2023-01-25 15:13:58 +01:00
Tom PERRILLAT-COLLOMB
26e9b1790b feat(er): allow multiple constraints on attributes
little changes in grammar to get a list of constraints (PK, FK or UK), so little changes in renderer to handle this list
2023-01-24 21:20:11 +01:00
Sidharth Vinod
c256a6b887 Merge pull request #4024 from mermaid-js/renovate/patch-all-minor-patch
chore(deps): update pnpm to v7.25.1
2023-01-24 17:06:06 +05:30
Knut Sveidqvist
bd1449a0d3 Merge pull request #4004 from mermaid-js/sidv/fixUnhandledPromise
fix(#4003): Remove unhandled promises
2023-01-24 11:58:25 +01:00
renovate[bot]
c9833dcd79 chore(deps): update pnpm to v7.25.1 2023-01-24 10:43:54 +00:00
Sidharth Vinod
6792bb94b7 chore: Use logger 2023-01-24 16:11:04 +05:30
Sidharth Vinod
b36e5d0d3b fix: Remove unnecessary void's.
Co-authored-by: Alois Klink <alois@aloisklink.com>
2023-01-24 16:08:43 +05:30
Sidharth Vinod
ead4037963 chore: Enable 57-elk test 2023-01-24 16:00:59 +05:30
Sidharth Vinod
a28f6bf80c Merge branch 'develop' into sidv/fixUnhandledPromise
* develop:
  chore: Skip 57-elk test
  Update docs
  Update integrations.md
2023-01-24 16:00:35 +05:30
Sidharth Vinod
fb6ba231d0 chore: Skip 57-elk test 2023-01-24 15:59:37 +05:30
sidharthv96
e4491136c3 Update docs 2023-01-24 07:02:14 +00:00
Sidharth Vinod
e7451e7a4e Merge pull request #4011 from Barry1/patch-1
Update integrations.md
2023-01-24 12:29:04 +05:30
Alois Klink
816f2f512e build(docs): hide YAML when building for GitHub
YAML front-matter is currently only used for Vitepress.

Because of that, to avoid confusion, we can remove this YAML
front-matter when converting the Markdown in packages/mermaid/src/docs
to go into the `docs/` folder for GitHub browsing.
2023-01-22 19:23:57 +00:00
Alois Klink
76c3716b2d docs: add vitepress metadata to flowchart docs
Changes the title in Vitepress, as well as using `outline: "deep"`
for a better outline/table-of-contents for the page.

See https://vitepress.vuejs.org/config/theme-configs#outline
for docs on what `outline: "deep"` does.
2023-01-22 19:21:53 +00:00
Alois Klink
2f1a521db6 build(docs): add auto-generated header after YAML
Add the auto-generated header after any YAML front-matter blocks.

YAML front-matter is normally only valid in Markdown when it's at the
beginning of the Markdown file. GitHub/Vitepress may otherwise render
it incorrectly.
2023-01-22 19:21:53 +00:00
Alois Klink
8f4caa4537 refactor(docs): use remark-compatible plugin
Change the `transformBlocks` function, which transforms a markdown str,
and instead making it into a
`transformMarkdownAst` function, which transforms a Markdown AST.

This means we can use the remark/unifiedjs plugin infrastructure, see
https://unifiedjs.com/learn/guide/create-a-plugin/
2023-01-22 19:21:51 +00:00
Alois Klink
b26cdb3e46 build(docs): support YAML frontmatter in markdown
Vitepress uses YAML frontmatter to configure Vitepress specific
settings, see https://vitepress.vuejs.org/config/frontmatter-configs

We just need to use `remark-frontmatter` to add support for it.

GitHub also renders the YAML front-matter nicely in a table
automatically, but maybe we should instead strip it, if it's only
used by Vitepress?
2023-01-22 19:21:18 +00:00
Knut Sveidqvist
de8928b2d9 #4016 Fix for max_sections in mindmap renderer 2023-01-20 12:48:06 +01:00
pbrolin47
e5b33087f3 Merge pull request #4013 from mermaid-js/4012-handling-rows-wiht-only-spaces
Mindmaps: Handling rows with only spaces in them (#4012)
2023-01-20 10:23:06 +01:00
Knut Sveidqvist
bc56a7d4f1 #4012 Neater grammar for the rows before mindmap 2023-01-20 10:21:13 +01:00
Knut Sveidqvist
80903e427c #4012 Allowing multiple lines before the mindmap statement 2023-01-20 10:18:26 +01:00
pbrolin47
7b67f5783e Merge pull request #4018 from mermaid-js/4016-differentiate-colors
Mindmaps: differentiate the colors between the root node and the first section #4017
2023-01-20 09:16:02 +01:00
Per Brolin
e8db9b2bd5 Merge branch 'master' of github.com:mermaid-js/mermaid 2023-01-20 09:01:48 +01:00
Knut Sveidqvist
023f2354cd 2023-01-20 08:31:01 +01:00
cnjeftia
5925d8b731 docs: minor fix on markdown in root folder 2023-01-20 11:45:11 +08:00
cnjeftia
96d5bc7695 docs: minor fix on markdown 2023-01-20 11:29:16 +08:00
ashishj
7ef71cc04d Remove old test cases 2023-01-19 21:05:38 +01:00
Knut Sveidqvist
3cd15cdcf2 #4012 Handling rows with only spaces in them 2023-01-19 20:50:36 +01:00
ashishj
e865368649 Updating version and clean up package.json 2023-01-19 20:42:33 +01:00
ashishj
be818ad57f Pushing fix for broken themeVariable functionality 2023-01-19 20:30:11 +01:00
ashishj
ca22e85e55 Merge branch 'release/9.4.0' into timeline 2023-01-19 19:20:29 +01:00
ashishj
652a42fe1a Add directive parsing functionality to timeline diagram 2023-01-19 19:03:05 +01:00
Bastian Ebeling
3aeef7b846 Update integrations.md
Corrected `Vs Code` to `VS Code` and inserted `Markdown Preview Enhanced`
2023-01-19 07:15:32 +01:00
Olivier Leveau
250f1f9687 Merge branch 'develop' into feature/AddBoxForSeqDiagrams 2023-01-18 11:35:39 +01:00
Sidharth Vinod
5b9839cbd0 fix package.json
add `@types/cytoscape`
2023-01-18 00:53:00 +05:30
Sidharth Vinod
afe3f593e1 fix(#4003): Remove unhandled promises
Add eslint rules to check for unhandled promises
Fix all existing unhandled promise issues
2023-01-18 00:47:49 +05:30
Knut Sveidqvist
e573be4afd Merge branch 'develop' into release/9.4.0 2023-01-17 18:08:04 +01:00
Sidharth Vinod
549483d19b Update funding :) 2023-01-17 22:09:22 +05:30
Sidharth Vinod
8a485c3c88 Merge pull request #3993 from jonabc/bug/sequence-firefox-font-size
Parse style string and number font size values from configuration inputs
2023-01-17 22:07:11 +05:30
Sidharth Vinod
96dedc7b5e flowchart-elk repro 2023-01-17 21:37:32 +05:30
Jon Ruskin
9629c8d8d6 use undefined not null 2023-01-17 08:31:36 -07:00
Knut Sveidqvist
7e8c1b0393 Merge pull request #3984 from mermaid-js/sidv/internalFCV3
feat: Flowchart-elk integration
2023-01-17 14:18:29 +01:00
Knut Sveidqvist
e4bdfee85a Merge pull request #3995 from mermaid-js/sidv/properlyWaitTests
feat: Wait for rendering to finish before taking image snapshots
2023-01-17 14:15:28 +01:00
Sidharth Vinod
c0f9b3c00b Merge branch 'develop' into sidv/internalFCV3
* develop:
  Update docs
  docs(sequenceDiagram): subvert prettification of arrow types
2023-01-17 14:07:12 +05:30
sidharthv96
01a535b8e0 Update docs 2023-01-16 09:52:48 +00:00
Sidharth Vinod
3c12e66f73 Merge pull request #3988 from cakemanny/docs/correct-arrow-type-display
docs(sequenceDiagram): subvert prettification of arrow types
2023-01-16 15:18:59 +05:30
Sidharth Vinod
fba3f8481e Merge branch 'develop' into sidv/internalFCV3
* develop:
  chore(deps): update all non-major dependencies
  fix(deps): update dependency dagre-d3-es to v7.0.6
2023-01-16 13:27:09 +05:30
Sidharth Vinod
f0e3bcc37b Merge pull request #3997 from mermaid-js/renovate/all-minor-patch
chore(deps): update all non-major dependencies (minor)
2023-01-16 13:18:56 +05:30
Sidharth Vinod
ae7c9475ef Merge branch 'sidv/properlyWaitTests' into sidv/internalFCV3
* sidv/properlyWaitTests:
  fix tests
2023-01-16 13:18:31 +05:30
Sidharth Vinod
d320e788c7 fix tests 2023-01-16 13:18:16 +05:30
renovate[bot]
376d1a583c chore(deps): update all non-major dependencies 2023-01-16 05:22:19 +00:00
renovate[bot]
ea3d7bc594 fix(deps): update dependency dagre-d3-es to v7.0.6 2023-01-16 05:18:31 +00:00
Sidharth Vinod
ded83b2ce7 Fix title 2023-01-16 02:17:25 +05:30
Sidharth Vinod
1c8c69f8db Merge branch 'sidv/properlyWaitTests' into sidv/internalFCV3
* sidv/properlyWaitTests:
  feat: Wait for rendering to finish before taking image snapshots
  Update docs
  chore(deps): update all non-major dependencies
  Fix: Too many `primaryBorderColor`
2023-01-16 02:11:59 +05:30
Sidharth Vinod
4d3f151cf0 feat: Wait for rendering to finish before taking image snapshots 2023-01-16 02:07:37 +05:30
Sidharth Vinod
8f8ae64ced upload error snapshots 2023-01-16 01:23:42 +05:30
Jon Ruskin
b93ce24c3d handle string and number font size configurations 2023-01-14 14:05:05 -07:00
Daniel Golding
0a4a3bda16 docs(sequenceDiagram): subvert prettification of arrow types
The rendering of the arrows becomes prettified using some sort of font library on mermaid.js.org .
Quote in backticks to indicate these are code.
2023-01-13 17:05:53 +01:00
sidharthv96
874f4c0641 Update docs 2023-01-13 14:17:17 +00:00
Sidharth Vinod
60175cd84f Merge pull request #3986 from LiHowe/patch-1
Docs: Too many `primaryBorderColor` field
2023-01-13 19:43:45 +05:30
renovate[bot]
ac6d325a00 chore(deps): update all non-major dependencies 2023-01-13 10:02:07 +00:00
Howard He
e44e1210e2 Fix: Too many primaryBorderColor
Only keep one `primaryBorderColor` field in Theme Variables part.
before:
![before](https://s2.loli.net/2023/01/13/I657QWjsAlVokfE.png)
after:
![after](https://s2.loli.net/2023/01/13/ZQ7PSfcdIKBtGsm.png)
2023-01-13 17:13:56 +08:00
Sidharth Vinod
05d1fc44e8 Merge branch 'develop' into sidv/internalFCV3
* develop:
  test(sequenceDiagram): mock more d3 curve* types
  test(docs): fix test failure due to bad merge
  chore(dev-deps): update vitest to `^0.27.1`
2023-01-13 10:23:59 +05:30
Sidharth Vinod
075f55418b Merge pull request #3985 from aloisklink/test/fix-docs-semantic-merge-conflict
Fix failing tests due to semantic merge conflict
2023-01-13 10:20:33 +05:30
Alois Klink
164b9bc2cb test(sequenceDiagram): mock more d3 curve* types
vitest is throwing an error, since these types are used in
packages/mermaid/src/utils.ts, but are not being mocked.

I've added all the curve types I needed to make Vitest happy.
At some point, we may need to improve these mocks, since in d3,
they have the type CurveFactory, not string.
2023-01-13 00:27:48 +00:00
Alois Klink
16540f3005 test(docs): fix test failure due to bad merge
Fixes a semantic merge conflict due to the PRs:
  - https://github.com/mermaid-js/mermaid/pull/3954
    Changed `docs.mts` to use a remark object created by `remark()`
  - https://github.com/mermaid-js/mermaid/pull/3946
    Added test code that mocked the frozen remark object
    (e.g. `remark` not `remark()`).

To fix this issue, we can mock `remark()` so that it always returns
the same remark object, which can then be used the `docs.mts` script,
as well as spied on in the `docs.spec.ts` test file.

Reported-by: Sidharth Vinod <sidharthv96@gmail.com>
2023-01-13 00:17:17 +00:00
Alois Klink
6c862565aa chore(dev-deps): update vitest to ^0.27.1
Updates vitest to `^0.27.1`.

We want to add `importOriginal` feature added in Vitest [v0.26.3][1],
see commit
853eeddba8

[1]: https://github.com/vitest-dev/vitest/releases/tag/v0.26.3
2023-01-12 23:52:16 +00:00
Sidharth Vinod
ee056e1ac3 test: Update width 2023-01-12 19:47:39 +05:30
Sidharth Vinod
0476bdc68f format 2023-01-12 19:04:06 +05:30
Sidharth Vinod
242a508d50 feat: Flowchart-elk integration 2023-01-12 18:26:08 +05:30
sidharthv96
9ca2e0c5fc Update docs 2023-01-12 07:21:20 +00:00
Sidharth Vinod
9acd562b9e Merge pull request #3954 from aloisklink/build/support-GFM-in-markdown-documentation
Support GitHub Flavored Markdown in markdown documentation
2023-01-12 12:47:07 +05:30
Sidharth Vinod
3238ee4c2e Merge pull request #3972 from atmikeguo/develop
Fix nonstandard syntax
2023-01-12 12:44:03 +05:30
oleveau
7b5bebd9c4 Sanitize text of the box 2023-01-11 22:10:41 +01:00
Ashish Jain
b67c023b0a Merge pull request #3938 from mermaid-js/layout-v3-continued
Layout v3 continued
2023-01-11 20:01:24 +01:00
Knut Sveidqvist
e28a766e7d Cleanup, updating the module name and description for flowchart in package.json 2023-01-11 19:56:04 +01:00
Knut Sveidqvist
3f7f04e02f Adjusted as per @ashishjain0512 review comments 2023-01-11 19:40:25 +01:00
ashishj
68609fd8d0 Merge develop in timeline branch 2023-01-11 18:13:26 +01:00
Knut Sveidqvist
ce6f62e24e Merge pull request #3946 from weedySeaDragon/chore/3922_doc-diagram-only
(chore) Docs: add tag to produce only a diagram, not code example
2023-01-11 18:04:41 +01:00
Knut Sveidqvist
094b97de12 Merge branch 'develop' into layout-v3-continued 2023-01-11 18:03:09 +01:00
Knut Sveidqvist
0e3dadc53c Updated as per the suggestions from @weedySeaDragon 2023-01-11 17:58:05 +01:00
Knut Sveidqvist
1fca5131c3 Merge pull request #3947 from nekikara/bug/3865_c4_context_border_color
Bug/3865 C4Context: $borderColor has no effect
2023-01-11 17:56:00 +01:00
Sidharth Vinod
fcb41e4579 Merge pull request #3973 from mermaid-js/chore/disable-checking-twitter-links
ci: disable checking twitter links
2023-01-11 14:23:21 +05:30
renovate[bot]
a56d0bc36b fix(deps): update dependency dompurify to v2.4.3 2023-01-09 02:52:02 +00:00
Alois Klink
e6fd3bfb28 ci: disable checking twitter links
The [lycheeverse/lychee-action][1] GitHub action keeps timing
out when trying to check any of the links from twitter.com

My guess is maybe Twitter has anti-bot measures active
against GitHub's CI servers.

[1]: https://github.com/lycheeverse/lychee-action
2023-01-07 23:49:25 +00:00
Chidozie Nnachor
568a3329e1 docs: update sequenceDiagram.md to include line break (#3960)
Included an example for adding a line break to notes. It seems like an issue irking a lot of (new) users

Co-authored-by: Alois Klink <alois@aloisklink.com>
Co-authored-by: Chidozie Nnachor <Chidozie.Nnachor@keylane.com>
2023-01-07 23:39:36 +00:00
atmikeguo
1968d1bb28 Fix nonstandard syntax 2023-01-07 20:05:57 +08:00
Olivier Leveau
117f0ab6da Fix test / Add Tests 2023-01-06 13:38:03 +01:00
Olivier Leveau
64a935515c Better color detection + fix win32 path handling 2023-01-06 12:47:09 +01:00
Olivier Leveau
e6befbaa3f Merge branch 'develop' into feature/AddBoxForSeqDiagrams 2023-01-06 11:06:00 +01:00
Alois Klink
ae7833bdfa Merge pull request #3964 from guilhermgonzaga/docs/remove-duplicate-erdiagram
docs: Remove duplicate example in ER-diagram documentation
2023-01-05 23:56:58 +00:00
Guilherme Gonzaga
412eec06d4 Update docs 2023-01-05 21:50:37 +00:00
Olivier Leveau
e659601e03 Add Box support in Sequence Diagrams 2023-01-05 15:40:40 +01:00
Guilherme Gonzaga
10cb3e26d5 docs: Remove duplicate in ER-diagram documentation 2023-01-03 14:49:20 -04:00
Alois Klink
75b19eaa0c chore(docs): run pnpm run docs:build with GFM
Rebuild docs with `remark-gfm` GitHub-Flavored-Markdown parser.
2023-01-01 21:28:03 +00:00
Alois Klink
ef51111b86 build(docs): support GFM in markdown docs
Support using GFM in markdown documentation.

GitHub has some custom features in their Markdown documentation.
For example, they support using tables, footnotes, and task lists.
Vitepress supports tables too.

However, remark sometimes throws an error when parsing tables,
so we should use `remark-gfm` to handle them.
2023-01-01 21:28:03 +00:00
Ashley Engelund (weedySeaDragon @ github)
36c0a30c50 Merge remote-tracking branch 'MERMAID/develop' into chore/3922_doc-diagram-only 2022-12-28 12:10:20 -08:00
nekikara
f233ce1fed add double quote 2022-12-27 20:43:33 +01:00
nekikara
d13c1bce47 fix the way to set stroke and stroke-width properties 2022-12-27 19:49:18 +01:00
Sidharth Vinod
967d3bbb60 Disable link checker on develop PRs
Runs link checker every day to keep cache warm.
2022-12-27 10:35:07 +05:30
Sidharth Vinod
06c357916e Merge pull request #3943 from nekikara/bug/3876_fix_typo_in_c4_svg-draw
fix typos accessing techn property in drawC4Shape function
2022-12-27 10:33:09 +05:30
Sidharth Vinod
406d663bff Merge pull request #3945 from huynhicode/website/homepage-updates
Website/homepage updates
2022-12-27 10:31:53 +05:30
Ashley Engelund (weedySeaDragon @ github)
78443861a6 test/spec for some of docs.mts 2022-12-26 13:13:47 -08:00
Ashley Engelund (weedySeaDragon @ github)
34aef1a6f5 refactor: transformBlocks(); + MERMAID_DIAGRAM_ONLY behavior; comments, constants 2022-12-26 13:13:02 -08:00
steph
7d0cec0a49 add margin to left and right side of team cards 2022-12-26 12:48:36 -08:00
steph
d8c3f8fc16 updates to the homepage 2022-12-26 12:04:58 -08:00
nekikara
d8aa44f0c5 fix typos accessing techn property in drawC4Shape function 2022-12-24 20:25:59 +01:00
Sidharth Vinod
2c88c6b526 Merge pull request #3921 from tomperr/fix/3795_class_tilde_visibility
fix(generic): fix generic type detection
2022-12-24 00:33:39 +05:30
Sidharth Vinod
8ed1ad5a8e Merge pull request #3907 from huynhicode/docs/formatting
docs: fix text overflow
2022-12-24 00:30:31 +05:30
Sidharth Vinod
c23cd49322 Merge pull request #3859 from aloisklink/fix/3706_support-indented-yaml-only-in-html
Support parsing indented mermaid/YAML only from HTML
2022-12-24 00:27:44 +05:30
Alois Klink
a58b41a38e Merge branch 'develop' into fix/3706_support-indented-yaml-only-in-html 2022-12-22 19:24:33 +00:00
Alois Klink
03c5bc1129 Merge pull request #3936 from Omerr/patch-2
Add Swimm to the list of integrations
2022-12-22 19:13:19 +00:00
Tom PERRILLAT-COLLOMB
c15326b896 test(flowchart): add test on multiple classes declaration 2022-12-22 13:59:49 +01:00
Tom PERRILLAT-COLLOMB
c0391c8a15 docs(flowchart): add docs on multiple classDef/linkStyle definition 2022-12-22 13:47:53 +01:00
Tom PERRILLAT-COLLOMB
df42f96b5a docs(classDiagram): add nested generic type example in docs 2022-12-22 11:17:44 +01:00
Knut Sveidqvist
c535b10534 Adding info in the docs for enabling elk flowcharts. 2022-12-22 11:00:30 +01:00
Omer Rosenbaum
d75f70f808 Rebuild the docs -> update integrations with swimm 2022-12-22 11:41:54 +02:00
Omer Rosenbaum
1da20d7aa5 Added swimm to cSpell 2022-12-22 11:39:21 +02:00
Knut Sveidqvist
913ba34386 #815 Adding possibility to configure elk as renderer for flowcharts 2022-12-22 10:33:41 +01:00
steph
dbfb29de27 Merge branch 'develop' into docs/formatting 2022-12-21 14:43:56 -08:00
steph
69928e3ede retrigger CI 2022-12-21 14:21:47 -08:00
steph
22b66193dc update outdate format info formatting 2022-12-21 11:24:48 -08:00
Omer Rosenbaum
895c16a793 Add Swimm to the list of integrations 2022-12-21 10:56:09 +02:00
Sidharth Vinod
1495ae623a WIP Adding contributors page from vitest 2022-12-21 10:54:23 +05:30
Sidharth Vinod
b375f79b9c Merge pull request #3935 from tomperr/chore/pr_template_documentation_task
chore(pr): add documentation task in PR template
2022-12-21 10:22:53 +05:30
Steph
b220718b96 Update packages/mermaid/src/docs/syntax/gantt.md
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-12-20 09:37:42 -08:00
Steph
0f337d654f Update packages/mermaid/src/docs/syntax/gantt.md
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-12-20 09:37:26 -08:00
Tom PERRILLAT-COLLOMB
3beb828988 chore(pr): add task in PR template 2022-12-20 18:35:03 +01:00
Sidharth Vinod
cdba2b4ac8 Update CDN links 2022-12-20 10:56:39 +05:30
steph
469bdcef2f add support for vitepress blocks 2022-12-19 21:14:39 -08:00
sidharthv96
72d9e87284 Update docs 2022-12-20 05:14:37 +00:00
Sidharth Vinod
2baa36fd1f Merge pull request #3930 from Frank-Mayer/patch-1
fixed Composition arrow
2022-12-20 10:40:54 +05:30
Sidharth Vinod
4859947eab Merge pull request #3906 from huynhicode/docs/navbar
docs: update navbar
2022-12-20 10:22:07 +05:30
steph
fca58f5942 remove text and add social icons 2022-12-19 17:45:25 -08:00
Steph
f17f81d12c Merge branch 'develop' into docs/navbar 2022-12-19 12:16:06 -08:00
Frank Mayer
86946c9bfd fixed Composition arrow
Composition arrow was displayed as \*-- but should be *--
2022-12-19 15:38:52 +01:00
Sidharth Vinod
95e4443ff2 Merge branch 'master' into develop
* master:
  Revert "Add CNAME"
  fix Redirect
  fix: Remove basepath from docs
2022-12-19 14:26:54 +05:30
Sidharth Vinod
81aee3554e Revert "Add CNAME"
This reverts commit 7670ada9ac.
2022-12-19 14:26:20 +05:30
Sidharth Vinod
fd5780d5a1 fix Redirect 2022-12-19 13:51:05 +05:30
Sidharth Vinod
8e7dd1d148 fix: Remove basepath from docs 2022-12-19 13:29:09 +05:30
Sidharth Vinod
14ea1430d8 Merge branch 'develop' of https://github.com/mermaid-js/mermaid into develop
* 'develop' of https://github.com/mermaid-js/mermaid:
  chore(deps): update pnpm to v7.18.2
  docs: fix typo
  fix dev server watch mode
2022-12-19 13:13:42 +05:30
renovate[bot]
e46e918b23 chore(deps): update pnpm to v7.18.2 2022-12-19 03:46:30 +00:00
Alois Klink
61fdca58a1 Merge pull request #3925 from Foo-x/docs/fix-typo
docs: fix typo
2022-12-18 15:58:01 +00:00
Foo-x
a6ea439ef3 docs: fix typo 2022-12-18 23:44:14 +09:00
Alois Klink
5a8975a4dd Merge pull request #3904 from huynhicode/fix/watch
fix: dev server watch mode
2022-12-17 23:38:48 +00:00
Tom PERRILLAT-COLLOMB
2055f89bf7 feat(flowchart): add classDef group definition
enable to add styles to many classDef in a single statement
2022-12-17 11:34:44 +00:00
Tom PERRILLAT-COLLOMB
56e28a7f40 test(generic): add generic type unit test 2022-12-16 22:35:20 +00:00
Tom PERRILLAT-COLLOMB
5705515483 fix(generic): fix generic type regex
instead of looking for single tildes, we are now looking for pairs, which avoid bugs when there is an odd number of tildes
2022-12-16 22:17:39 +00:00
Sidharth Vinod
612f9327e9 Merge branch 'master' into develop
* master:
  Add CNAME
2022-12-17 00:34:07 +05:30
Sidharth Vinod
24bd36b087 Merge pull request #3920 from aloisklink/docs/fix-book-image-in-README.zh-CN.md
docs(README.zh-CN): fix book image src
2022-12-17 00:18:42 +05:30
Alois Klink
1e3d76a0aa docs(README.zh-CN): fix book image src
Copied from ec026eaf82
2022-12-16 18:31:25 +00:00
Sidharth Vinod
7670ada9ac Add CNAME 2022-12-16 21:59:44 +05:30
Knut Sveidqvist
bb9b0b015e #815 Styling subgraphs with color shades 2022-12-16 16:28:24 +01:00
Ashley Engelund
521a30dcd7 add a space near the start for symmetry and readability
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2022-12-16 06:37:05 -08:00
Knut Sveidqvist
3e64b439ce Merge pull request #3917 from tomperr/feature/3910_er_unique_key
feat(er): add unique key
2022-12-16 13:03:30 +01:00
Knut Sveidqvist
1bf636d697 Merge pull request #3892 from mahomedalid/feature/3771_string_length
Adding support for parenthesis in the er diagram attribute types.
2022-12-16 12:58:30 +01:00
Sidharth Vinod
f019250494 Merge pull request #3916 from aloisklink/fix/use-determenistic-uuids-for-er-diagrams
fix(er): switch to deterministic UUIDs in ER
2022-12-16 12:44:12 +05:30
steph
528facf88d minor syntax update 2022-12-15 13:11:07 -08:00
Alois Klink
7855edae6b perf(er): pre-calculcate er UUID namespace
Pre-calculate the entity-relationship diagram namespace UUID.

This UUID is always constant, so we can pre-calculate it to save a
bit of processing power on the client.

Co-authored-by: "Ashley Engelund (weedySeaDragon @ github)" <ashley.engelund@gmail.com>
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2022-12-15 20:22:39 +00:00
Sidharth Vinod
33f78a5429 Merge branch 'master' into develop
* master:
  Fix book link
  Add book landing page back
2022-12-16 01:28:42 +05:30
Sidharth Vinod
60d0185698 Fix book link 2022-12-16 01:27:15 +05:30
Sidharth Vinod
2743b72a87 Add book landing page back 2022-12-16 01:12:50 +05:30
ashishj
61ef4692b0 Updated documentation and examples 2022-12-15 20:24:13 +01:00
Sidharth Vinod
7b13b489c2 Merge branch 'master' into develop
* master: (23 commits)
  Update vitepress
  fix: Add icon css
  fix Top level await
  v9.3.0
  bump dagre-es 7.0.6
  Bump mermaid version
  Update dagre-es
  Bump mermaid version
  fix: Incorrect removal of existing elements
  fix: add .js to external imports.
  fix: add .js to external imports.
  Bump mermaid version
  fix: add .js to external imports.
  Bump mermaid version
  fix: Throw correct errors when parsing diagrams with errors
  Update url snapshot test for external diagrams
  Update url snapshot test for external diagrams
  Updated package number
  Updated package number
  Updated package number to 9.3.0-rc1
  ...
2022-12-16 00:51:16 +05:30
Sidharth Vinod
d6ddf9568e Fix theming doc 2022-12-16 00:49:35 +05:30
ashishj
6ab7eb55cb Updated styling and added documentation 2022-12-15 20:14:49 +01:00
Sidharth Vinod
ec026eaf82 Fix book link 2022-12-16 00:37:37 +05:30
Tom PERRILLAT-COLLOMB
c7f085a138 doc(er): add documentation on UK constraint 2022-12-15 19:03:00 +00:00
Tom PERRILLAT-COLLOMB
32a8061cc2 feat(er): add UK attribute constraint
Any attribute can now be PK, FK or UK
2022-12-15 18:55:08 +00:00
Sidharth Vinod
d6fad1bbd8 Merge pull request #3890 from BD103/patch-1
Add links to theme listing
2022-12-16 00:24:15 +05:30
BD103
e2b05d3cf6 Update docs 2022-12-15 18:24:23 +00:00
BD103
1495baac2c Merge branch 'develop' into patch-1 2022-12-15 13:20:45 -05:00
Alois Klink
ac5a1b4501 fix(er): switch to deterministic uuids in ER
The entity relation diagram uses uuid v4, which is randomly generated.

uuid v5 uses a SHA-1 hash, which makes the uuid deterministic.

The input strings are unique for each diagram, so this should be
okay.
2022-12-15 18:00:48 +00:00
Sidharth Vinod
ff7ed7f49f Merge branch 'develop' of https://github.com/mermaid-js/mermaid into develop
* 'develop' of https://github.com/mermaid-js/mermaid: (40 commits)
  lint
  fix typescript error
  fix(docs): build the docs
  fix(docs): remove duplicate section
  chore(deps): update all non-major dependencies
  Update docs/misc/integrations.md
  Add links to github atom add-ons
  remove links from atom.io; add note Atom has been archived
  set svg role to 'graphics-document document'
  common function for a11y; add to renderAsync; + renderAsync spec
  fix cspell
  fix cspell
  fix lint
  refactor theming doc
  remove typeof
  use camelCase
  make test title clearer
  update /docs
  add test for multi-line accDescr
  use MockedD3, spies in util insertTitle spec (remove MockD3)
  ...
2022-12-15 21:50:06 +05:30
Sidharth Vinod
333b974f10 Add workflow_dispatch to lint.yml 2022-12-15 21:50:00 +05:30
Sidharth Vinod
01039c574c Merge pull request #3914 from tommoor/patch-1
fix: Typescript error in usage
2022-12-15 21:45:06 +05:30
Sidharth Vinod
4e70f327c4 Merge pull request #3897 from weedySeaDragon/feat/3896_a11y-svg-role-graphics-doc-doc
feat: Set svg role to 'graphics-document document'
2022-12-15 21:42:08 +05:30
ashishj
fefcc43dd4 Merged Develop in timeline branch 2022-12-15 17:10:56 +01:00
ashishj
2141057ab4 add more runnning examples 2022-12-15 17:00:53 +01:00
Sidharth Vinod
54bb2ef00e Merge pull request #3908 from Joxtacy/patch-1
fix(docs): remove duplicate section
2022-12-15 20:39:52 +05:30
BD103
992d1623a7 chore: update docs folder 2022-12-15 09:46:00 -05:00
Tom Moor
78dd03dcdb lint 2022-12-15 09:29:30 -05:00
Tom Moor
9f2d29b68b fix typescript error 2022-12-15 06:09:22 -08:00
Sidharth Vinod
d841ad8f3e Update vitepress 2022-12-15 17:09:24 +05:30
Sidharth Vinod
3fb0b2792e fix: Add icon css 2022-12-15 15:33:51 +05:30
Sidharth Vinod
bbc4e90c89 fix Top level await 2022-12-15 14:57:08 +05:30
Knut Sveidqvist
5735efacbe Merge pull request #3911 from mermaid-js/release/9.3.0
Release/9.3.0
2022-12-15 10:16:12 +01:00
Sidharth Vinod
774512df57 v9.3.0 2022-12-15 14:18:54 +05:30
Sidharth Vinod
152994047e bump dagre-es 7.0.6 2022-12-15 09:12:08 +05:30
Sidharth Vinod
d194e78677 Bump mermaid version 2022-12-14 09:45:34 +05:30
Sidharth Vinod
16b51800d0 Update dagre-es 2022-12-14 09:45:18 +05:30
Sidharth Vinod
2176bef537 Bump mermaid version 2022-12-13 13:44:03 +05:30
Sidharth Vinod
9f9c95b0b3 fix: Incorrect removal of existing elements 2022-12-13 13:42:07 +05:30
Sidharth Vinod
3f0b13a131 fix: add .js to external imports. 2022-12-13 00:38:54 +05:30
Sidharth Vinod
3c44379af9 fix: add .js to external imports. 2022-12-13 00:34:31 +05:30
Sidharth Vinod
1d529d80d1 Bump mermaid version 2022-12-13 00:23:41 +05:30
Sidharth Vinod
89451ca640 fix: add .js to external imports. 2022-12-13 00:22:57 +05:30
Sidharth Vinod
fac3a4d29b Bump mermaid version 2022-12-12 23:52:48 +05:30
Sidharth Vinod
d7610dda8f fix: Throw correct errors when parsing diagrams with errors 2022-12-12 23:51:46 +05:30
Jesper Hasselquist
dfa1d26952 fix(docs): build the docs 2022-12-12 22:32:50 +09:00
Jesper Hasselquist
32fcea3bdd fix(docs): remove duplicate section
Remove duplicate `Return Type` section
2022-12-12 21:39:19 +09:00
renovate[bot]
a975c8c9cd chore(deps): update all non-major dependencies 2022-12-12 04:57:37 +00:00
steph
e4622ba06e fix text overflow 2022-12-11 20:53:14 -08:00
Maho Pacheco
6fb9b3b353 Adding UTs for attributes with variable length in er diagram 2022-12-11 19:45:05 -08:00
Maho Pacheco
07d8684fc7 Adding size to postal code 2022-12-11 19:34:25 -08:00
steph
1b0ea981f9 update navbar 2022-12-11 18:59:01 -08:00
steph
72a3cff13e fix dev server watch mode 2022-12-11 14:04:41 -08:00
Knut Sveidqvist
14f7756fdb #815 Adding labels to edges 2022-12-11 09:24:05 +01:00
Alois Klink
e97bef2ff7 Merge pull request #3899 from weedySeaDragon/docs/remove-atom-links
doc: remove links from atom.io; add note Atom has been archived
2022-12-11 00:12:59 +00:00
Ashley Engelund
e4c9aa198e Update docs/misc/integrations.md
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-12-10 13:47:01 -08:00
Ashley Engelund
76e9e07370 Add links to github atom add-ons
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-12-10 13:46:24 -08:00
Ashley Engelund (weedySeaDragon @ github)
ae7fd777a7 + parsing specs that actually check results 2022-12-09 16:22:56 -08:00
Ashley Engelund (weedySeaDragon @ github)
d666981599 parser: remove extra popState; whitespace formatting; remove 'zxzx' weird string 2022-12-09 16:21:28 -08:00
Ashley Engelund (weedySeaDragon @ github)
f0b8657423 state demo: AS descriptions for states in composites 2022-12-09 16:01:13 -08:00
Ashley Engelund (weedySeaDragon @ github)
ae25a08fe3 (minor) add JSDOC comments 2022-12-09 13:35:44 -08:00
Ashley Engelund (weedySeaDragon @ github)
2b7aa3f99d start of parser spec; test for this bug 2022-12-09 13:35:23 -08:00
Ashley Engelund (weedySeaDragon @ github)
e7b4f7f6ca trim state ids as they are processed by docTranslator 2022-12-09 13:33:51 -08:00
Ashley Engelund (weedySeaDragon @ github)
de795a915e remove links from atom.io; add note Atom has been archived 2022-12-09 04:56:55 -08:00
Ashley Engelund (weedySeaDragon @ github)
e59b830d74 set svg role to 'graphics-document document' 2022-12-08 11:25:04 -08:00
Knut Sveidqvist
0b01c3376d #815 Adding labels to subgraphs 2022-12-08 19:41:17 +01:00
Knut Sveidqvist
6c2647e8cf Update url snapshot test for external diagrams 2022-12-08 16:39:21 +01:00
Knut Sveidqvist
e1a501c66b Update url snapshot test for external diagrams 2022-12-08 16:38:47 +01:00
Per Brolin
4f169dd2b8 Updated package number 2022-12-08 15:16:13 +01:00
Per Brolin
23a44952ac Updated package number 2022-12-08 15:09:49 +01:00
Per Brolin
7656916cef Updated package number to 9.3.0-rc1 2022-12-08 15:03:51 +01:00
Per Brolin
88357ba751 Merge branch 'release/9.3.0' of github.com:mermaid-js/mermaid into release/9.3.0 2022-12-08 14:17:11 +01:00
Per Brolin
98fc866444 Minor change of test code 2022-12-08 14:16:25 +01:00
Knut Sveidqvist
c6fce2431b Fixes for tests 2022-12-08 14:14:31 +01:00
Knut Sveidqvist
9b27396344 Small fix 2022-12-08 13:21:56 +01:00
Knut Sveidqvist
90d9724d1a Merge pull request #3808 from weedySeaDragon/feat/3626-aria-descBy-roledescription-mocks
Feat: Add aria-describedby, aria-roledescription
2022-12-08 10:44:31 +01:00
Ashley Engelund (weedySeaDragon @ github)
1c9a559362 common function for a11y; add to renderAsync; + renderAsync spec 2022-12-07 10:19:30 -08:00
Ashley Engelund (weedySeaDragon @ github)
b1dd0008bc Merge remote-tracking branch 'MERMAID/develop' into feat/3626-aria-descBy-roledescription-mocks 2022-12-07 09:31:20 -08:00
Knut Sveidqvist
ebf76e3d1f #815 Using elk for flowchart layouts 2022-12-07 09:37:27 +01:00
Knut Sveidqvist
033201ff1f Merge pull request #3889 from huynhicode/docs/theming
docs: refactor Theming doc
2022-12-07 08:55:00 +01:00
Sidharth Vinod
af212331ef Merge remote-tracking branch 'origin/develop' into pr/BD103/3890
* origin/develop:
  fix: Fail docs:verify on non push events
2022-12-07 11:58:33 +05:30
Sidharth Vinod
59fdaa3b53 fix: Fail docs:verify on non push events 2022-12-07 11:58:09 +05:30
Sidharth Vinod
f2a85eafac Merge remote-tracking branch 'origin/develop' into pr/BD103/3890
* origin/develop:
  chore: Update cspell
  Update docs
  fix: docs build command
  chore: Rebuild docs if linting fails
  chore: Format Mermaid.vue
  Made mermaidConfig a local variable so that it cannot be shared cross rendering.
  Fixed an issue that diagrams disappear from docs pages when switching themes or reloading pages
  Fixed the issue that theme-switch does not work on docs.
  Get base sha from PR
  Run doc lint only if files changed
  Run doc lint only if files changed
  Run doc lint only if files changed
  split lint docs action
  split lint docs action
  fix: File location
  fix(docs): Test auto commit
  fix(docs): Test auto commit
  fix(docs): Test auto commit
  chore: Update docs path
  chore: Auto build docs if only src/docs is changed
2022-12-07 11:50:45 +05:30
Sidharth Vinod
9b547edbe9 Merge pull request #3547 from mermaid-js/sidv/autoBuildDocs
chore(docs): Auto build docs
2022-12-07 11:49:29 +05:30
Sidharth Vinod
48518a56c7 Merge branch 'sidv/autoBuildDocs' of https://github.com/mermaid-js/mermaid into sidv/autoBuildDocs
* 'sidv/autoBuildDocs' of https://github.com/mermaid-js/mermaid:
  Update docs
2022-12-07 11:48:56 +05:30
Sidharth Vinod
1a767ee492 chore: Update cspell 2022-12-07 11:48:51 +05:30
sidharthv96
b2489523f2 Update docs 2022-12-07 06:13:07 +00:00
Sidharth Vinod
7553827985 fix: docs build command 2022-12-07 11:40:17 +05:30
Sidharth Vinod
792c1a8320 chore: Rebuild docs if linting fails 2022-12-07 11:19:44 +05:30
Sidharth Vinod
963a1f1eb1 Merge remote-tracking branch 'origin/develop' into sidv/autoBuildDocs
* origin/develop: (564 commits)
  chore: Format Mermaid.vue
  Made mermaidConfig a local variable so that it cannot be shared cross rendering.
  Fix for issue #3882 moving the label when the path has been modified
  Small fix for issue #3881
  Fixed an issue that diagrams disappear from docs pages when switching themes or reloading pages
  Fixed the issue that theme-switch does not work on docs.
  chore: Fix mindmap link
  chore: Switch back from unpkg to jsdelivr
  delete functions not used in diagrams/c4 code (dead code)
  Minor change
  feat: Add @include support to docs
  feat: Add @include example to docs
  feat: Add @include support to docs
  cleanup
  fix lines
  fix Async rendering
  Revert "sync"
  chore(deps): update pnpm to v7.17.1
  chore(deps): remove dependency on `graphlib`
  test(e2e): make gitgraph snapshots consistent
  ...
2022-12-07 11:11:45 +05:30
Maho Pacheco
4dadf8a72d Adding support for parentheses 2022-12-06 10:38:21 -08:00
Sidharth Vinod
fdf261bda3 chore: Format Mermaid.vue 2022-12-06 15:53:36 +05:30
Sidharth Vinod
f2ee20fdf5 Merge pull request #3880 from ZenUml/defects/issue-3878
Defects/issue 3878
2022-12-06 15:52:15 +05:30
MrCoder
7a086890fd Made mermaidConfig a local variable so that it cannot be shared cross rendering. 2022-12-06 19:44:14 +11:00
BD103
49ca2e3588 feat: add links to theme listing 2022-12-05 17:41:30 -05:00
Knut Sveidqvist
c5653156d9 Merge pull request #3883 from mermaid-js/3882_edge_labels
3882 edge labels
2022-12-05 08:15:15 +01:00
steph
2cce562bc4 fix cspell 2022-12-04 22:10:33 -08:00
steph
f0aea0e6af fix cspell 2022-12-04 22:04:20 -08:00
steph
24560b7d13 fix lint 2022-12-04 21:51:29 -08:00
steph
d451a0c508 refactor theming doc 2022-12-04 21:20:09 -08:00
Ashley Engelund (weedySeaDragon @ github)
96996d0fba Merge remote-tracking branch 'MERMAID/develop' into feat/3626-aria-descBy-roledescription-mocks 2022-12-03 12:13:12 -08:00
Knut Sveidqvist
4124d186d0 Fix for issue #3882 moving the label when the path has been modified 2022-12-03 13:21:10 +01:00
Knut Sveidqvist
b68fee7e65 Small fix for issue #3881 2022-12-03 11:41:29 +01:00
Knut Sveidqvist
4863d0d29d Adding new flowchart renderer using elk 2022-12-03 09:47:01 +01:00
MrCoder
a1e4ffb3f0 Fixed an issue that diagrams disappear from docs pages when switching themes or reloading pages 2022-12-03 19:30:09 +11:00
MrCoder
c7471f1755 Fixed the issue that theme-switch does not work on docs. 2022-12-03 19:10:05 +11:00
Sidharth Vinod
abc6ee049d Merge pull request #3873 from mermaid-js/sidv/jsdelivr
Switch back to jsdelivr
2022-12-02 13:31:22 +05:30
Knut Sveidqvist
4f1b26fd76 Adding new flowchart renderer using cytoscape 2022-12-02 08:06:16 +01:00
Alois Klink
accba3f408 chore: improve errors for bad YAML frontmatter
Adds a custom error message for any mermaid diagram that starts with
a `---`. Normally, these are expected to be part of a YAML front-matter
block, but indentation issues or a missing closing `---` may cause
these to be not parsed correctly.
2022-12-01 22:43:03 +00:00
Ashley Engelund (weedySeaDragon @ github)
bfe3f309d2 remove typeof 2022-12-01 10:09:43 -08:00
Ashley Engelund (weedySeaDragon @ github)
f036d58ec3 Merge remote-tracking branch 'MERMAID/develop' into feat/3626-aria-descBy-roledescription-mocks
# Conflicts:
#	cypress/integration/rendering/gantt.spec.js
#	cypress/integration/rendering/requirement.spec.js
#	docs/config/setup/modules/mermaidAPI.md
#	packages/mermaid/src/accessibility.js
2022-12-01 10:08:44 -08:00
Sidharth Vinod
bcbf68b7e1 Merge pull request #3871 from weedySeaDragon/chore/c4-remove-unused-code
chore: delete functions not used in diagrams/c4 code (dead code)
2022-12-01 23:07:29 +05:30
Sidharth Vinod
1e30e33ad3 chore: Fix mindmap link 2022-12-01 13:51:50 +05:30
Sidharth Vinod
4b5021c0cc Merge branch 'develop' into sidv/jsdelivr
* develop:
2022-12-01 11:39:52 +05:30
Sidharth Vinod
41033008ec Merge branch 'master' into develop
* master:
  doc: Add mindmap integration docs
  fix: Fetch depth
  fix: Fetch depth
  fix: Fetch depth
  fix: Add commit count to release preview
  fix: Add commit count to release preview
  chore: Add working directory
  fix: release-preview-publish.yml
  Fix #3799: Remove `type` from package.json
2022-12-01 11:39:28 +05:30
Sidharth Vinod
cd0eae2807 chore: Switch back from unpkg to jsdelivr 2022-12-01 11:23:50 +05:30
Sidharth Vinod
8cb6fbfab0 Merge branch 'master' into sidv/jsdelivr
* master:
  doc: Add mindmap integration docs
  fix: Fetch depth
  fix: Fetch depth
  fix: Fetch depth
  fix: Add commit count to release preview
  fix: Add commit count to release preview
  chore: Add working directory
  fix: release-preview-publish.yml
  Fix #3799: Remove `type` from package.json
2022-12-01 11:20:16 +05:30
Alois Klink
f884b745dc Merge branch 'develop' into fix/3706_support-indented-yaml-only-in-html
Conflicts:
 - pnpm-lock.yaml
2022-11-30 21:11:48 +00:00
Ashley Engelund (weedySeaDragon @ github)
6f2b0c43cb delete functions not used in diagrams/c4 code (dead code) 2022-11-30 12:43:27 -08:00
Sidharth Vinod
15cfa5d40d Merge branch 'develop' into sidv/splitDiagrams
* develop: (79 commits)
  Minor change
  feat: Add @include support to docs
  feat: Add @include example to docs
  feat: Add @include support to docs
  cleanup
  fix lines
  fix Async rendering
  Revert "sync"
  chore(deps): update pnpm to v7.17.1
  chore(deps): remove dependency on `graphlib`
  test(e2e): make gitgraph snapshots consistent
  chore: Fix lint
  test: Update vitest
  Add official vim plugin to list in integrations
  chore: Cleanup package.json
  chore: Cleanup package.json
  chore: Cleanup package.json
  fix lock
  Docs
  Fix: array concat
  ...
2022-11-30 19:15:21 +05:30
Knut Sveidqvist
650ee31cd1 Merge pull request #3845 from mermaid-js/sidv/eslintCleanup
Housekeeping with eslint-unicorn
2022-11-30 11:53:16 +01:00
Knut Sveidqvist
931d56947a Minor change 2022-11-30 11:27:13 +01:00
Sidharth Vinod
36cf7e0601 Merge pull request #3863 from mermaid-js/sidv/includeMD
Add support for @include in docs
2022-11-30 00:51:29 +05:30
Knut Sveidqvist
ff1d56e9b5 Merge pull request #3846 from mermaid-js/sidv/mermaidDocs
Use current mermaid version in docs.
2022-11-29 17:13:52 +01:00
Knut Sveidqvist
5e98e99f86 Merge pull request #3829 from DanInProgress/fix/stylis-add-idselector
Use stylis to prepend idSelector
2022-11-29 17:10:27 +01:00
Sidharth Vinod
316f612bde feat: Add @include support to docs 2022-11-29 00:54:01 +05:30
Sidharth Vinod
2a5c2b58de feat: Add @include example to docs 2022-11-29 00:34:57 +05:30
Sidharth Vinod
e8703a59ec feat: Add @include support to docs 2022-11-29 00:34:29 +05:30
Ashley Engelund (weedySeaDragon @ github)
a497909446 fix pnpm dev command example 2022-11-28 08:54:14 -08:00
Ashley Engelund
75fa259472 simplify pnpm cypress command example
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2022-11-28 08:46:10 -08:00
Ashley Engelund (weedySeaDragon @ github)
6807f19ec2 fix links 2022-11-28 07:38:19 -08:00
Sidharth Vinod
3a6dd61f65 cleanup 2022-11-28 16:26:10 +05:30
Sidharth Vinod
bfbb7996e9 fix lines 2022-11-28 16:21:05 +05:30
Sidharth Vinod
1f147b6b63 Merge branch 'develop' into sidv/mermaidDocs
* develop:
  chore(deps): update pnpm to v7.17.1
  chore(deps): remove dependency on `graphlib`
  test(e2e): make gitgraph snapshots consistent
2022-11-28 16:13:27 +05:30
Sidharth Vinod
e302ee383a fix Async rendering 2022-11-28 16:11:24 +05:30
Sidharth Vinod
527a3df083 Revert "sync"
This reverts commit a88a467d45.
2022-11-28 15:44:19 +05:30
Sidharth Vinod
b949da9ae4 Merge pull request #3860 from aloisklink/test/make-git-graph-test-consistent
Make gitgraph snapshots consistent in E2E tests
2022-11-28 15:42:20 +05:30
renovate[bot]
2984e4fc57 chore(deps): update pnpm to v7.17.1 2022-11-28 07:35:36 +00:00
Ashley Engelund (weedySeaDragon @ github)
2bf753a769 use camelCase 2022-11-27 19:17:37 -08:00
Ashley Engelund (weedySeaDragon @ github)
6044e9e9e8 make test title clearer 2022-11-27 19:17:17 -08:00
Ashley Engelund (weedySeaDragon @ github)
e9d4372c41 Merge remote-tracking branch 'MERMAID/develop' into feat/3626-aria-descBy-roledescription-mocks 2022-11-27 19:10:28 -08:00
Sidharth Vinod
3b91846d0c Merge pull request #3861 from aloisklink/chore/remove-dependency-on-graphlib
chore(deps): remove dependency on `graphlib`
2022-11-28 07:41:50 +05:30
Ashley Engelund (weedySeaDragon @ github)
3c49fb2c84 (minor) force link check again (too many network calls before) 2022-11-27 11:39:25 -08:00
Alois Klink
05b25db5eb chore(deps): remove dependency on graphlib
`graphlib` has recently been replaced with the ESM version of
graphlib bundled with
[`dagre-d3-es`](https://www.npmjs.com/package/dagre-d3-es), in commit
f687abb1 (chore: Use `graphlib` from `dagre-d3-es`, 2022-11-20)

This means we can safely remove it from our dependencies list.

Fixes: f687abb165
2022-11-27 19:13:53 +00:00
Ashley Engelund (weedySeaDragon @ github)
b15eacf6f2 remove references to old sidebar.md file 2022-11-27 11:11:13 -08:00
Alois Klink
51119f22df test(e2e): make gitgraph snapshots consistent
Add a commit id to 'should render a simple gitgraph with a title',
as otherwise the gitgraph renderer picks a random commit ID, and so
image snapshots will be different.
2022-11-27 18:54:41 +00:00
Ashley Engelund (weedySeaDragon @ github)
2030885fd3 update /docs 2022-11-27 10:46:43 -08:00
Ashley Engelund (weedySeaDragon @ github)
6e486d3c49 add test for multi-line accDescr 2022-11-27 10:32:25 -08:00
Alois Klink
4cc3b17d36 docs(demos): fix indentation of YAML front-matter
Mermaid diagrams that have YAML front-matter can now be indented in
HTML code, see commit:
5cfa9196 (fix: support parsing indented mmd YAML from HTML, 2022-11-27)

Some diagrams previously had a mix of tabs/spaces for indentation.
In order for `dedent` to work, these diagrams had to be converted to
using a consistent indentation.
2022-11-27 18:29:28 +00:00
Alois Klink
5cfa919672 fix: support parsing indented mmd YAML from HTML
In order to parse the YAML front-matter in a Mermaid diagram, the
YAML seperators **MUST NOT** be indented, e.g.:

````markdown
```mermaid
---
title: This is fine.
---
```

```mermaid
  ---
  title: This is not fine, because the `---` are indented.
  ---
```
````

However, this makes it very difficult to write nice Mermaid diagrams in
HTML code-blocks.

This commit uses [`ts-dedent`](https://www.npmjs.com/package/ts-dedent)
to automatically remove the indentation from Mermaid diagrams when
parsed from HTML. Mermaid diagrams from mermaidAPI.render() are **NOT**
dedented, as that API is called from JavaScript code, and therefore
users can easily `dedent` their own diagrams.
2022-11-27 18:19:13 +00:00
Ashley Engelund (weedySeaDragon @ github)
f1bc2deafd use MockedD3, spies in util insertTitle spec (remove MockD3) 2022-11-27 10:14:11 -08:00
Ashley Engelund (weedySeaDragon @ github)
7508cd796d (minor) fix comment, comment typo 2022-11-27 10:13:32 -08:00
Ashley Engelund (weedySeaDragon @ github)
626a4741c0 Merge remote-tracking branch 'MERMAID/develop' into feat/3626-aria-descBy-roledescription-mocks 2022-11-25 11:30:44 -08:00
Ashley Engelund (weedySeaDragon @ github)
3eb2bb9c0b Merge develop into HEAD; install; lint:fix 2022-11-25 10:40:04 -08:00
Ashley Engelund (weedySeaDragon @ github)
ee0f872b5b Merge develop cSpell.json 2022-11-25 10:37:17 -08:00
Sidharth Vinod
f425a02cf9 Merge branch 'develop' into sidv/mermaidDocs
* develop:
  chore: Fix lint
  test: Update vitest
  Add official vim plugin to list in integrations
  chore: Add lodash-eslint rule
  chore: Add lodash-eslint rule
  feat: Spellcheck docs when building
  fix: Enable extending lintstagedrc.
  fix: lintstagedrc `lint:jison`
  Fix lodash import
  Formatting
  Update .vite/build.ts
  fix Lint
  Add docs back
  fix: Core build externals
  chore: Update dagre-d3-es
  chore: Use `graphlib` from `dagre-d3-es`
  fix: Add types to memoized functions
  chore: Replace lodash with lodash-es
  Cleanup
2022-11-25 16:21:05 +05:30
Sidharth Vinod
3e4dc306d4 Merge pull request #3847 from craigmac/patch-1
Add official vim plugin to list in integrations
2022-11-25 12:01:32 +05:30
Sidharth Vinod
4a4eff55c1 chore: Fix lint 2022-11-25 12:00:31 +05:30
Sidharth Vinod
5e330a6d78 test: Update vitest 2022-11-24 16:33:42 +05:30
C.D. MacEachern
ecf1273c82 Add official vim plugin to list in integrations
364438d1e8 added recognition of Mermaid files to Vim. Link here is to the upstream source from which it comes.
2022-11-23 15:25:06 -05:00
ashishj
14ff8a8570 add runnning example 2022-11-23 19:32:27 +01:00
ashishj
0d5246fbc7 initial commit 2022-11-23 19:28:26 +01:00
Sidharth Vinod
a4fec411bd Merge branch 'develop' into sidv/eslintCleanup
* develop:
  chore: Add lodash-eslint rule
  chore: Add lodash-eslint rule
  feat: Spellcheck docs when building
  fix: Enable extending lintstagedrc.
  fix: lintstagedrc `lint:jison`
2022-11-23 20:52:36 +05:30
Knut Sveidqvist
50aab56177 Merge pull request #3844 from mermaid-js/sidv/fixLintStaged
fix: LintStaged
2022-11-23 13:52:40 +01:00
Knut Sveidqvist
79c63e9ff4 Merge pull request #3825 from mermaid-js/sidv/optimizeSize
Reduce mermaid size by 31%
2022-11-23 13:52:24 +01:00
Sidharth Vinod
7201c014e3 chore: Cleanup package.json 2022-11-23 16:10:36 +05:30
Sidharth Vinod
cc1c98325c chore: Cleanup package.json 2022-11-23 16:08:41 +05:30
Sidharth Vinod
f8b05f7d75 chore: Cleanup package.json 2022-11-23 16:07:58 +05:30
Sidharth Vinod
6faf54cf6f fix lock 2022-11-23 16:04:38 +05:30
Sidharth Vinod
01a24296b6 Docs 2022-11-23 15:57:50 +05:30
Sidharth Vinod
ab81b508ce Merge branch 'develop' into sidv/mermaidDocs
* develop: (79 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
  chore(deps): update pnpm to v7.17.0
  docs: Remove warning in readme
  chore(deps): update lycheeverse/lychee-action action to v1.5.4
  ...
2022-11-23 15:57:06 +05:30
Sidharth Vinod
ed6fb15c38 Fix: array concat 2022-11-23 13:39:15 +05:30
Sidharth Vinod
2cefb0fb8f chore: Add lodash-eslint rule 2022-11-23 03:03:19 +05:30
Sidharth Vinod
1dae3a000d chore: Add lodash-eslint rule 2022-11-23 03:03:14 +05:30
Sidharth Vinod
7f4368415d chore: Add eslint-unicorn & fix 2022-11-23 01:05:08 +05:30
Sidharth Vinod
8116c8b40d chore: Add lodash-eslint rule 2022-11-23 00:26:50 +05:30
Sidharth Vinod
32cf349d12 chore: Add lodash-eslint rule 2022-11-23 00:26:37 +05:30
Sidharth Vinod
9da29da63b Merge branch 'develop' into sidv/optimizeSize
* 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
  ...
2022-11-22 23:49:39 +05:30
Sidharth Vinod
f2ed255137 Merge pull request #3821 from dfinke/develop
Integrations added - Visual Studio Code [Polyglot Interactive Notebooks]
2022-11-22 23:22:19 +05:30
Sidharth Vinod
49348a82e0 chore: docs:build 2022-11-22 23:21:27 +05:30
Sidharth Vinod
d81a922a4f Merge pull request #3841 from weedySeaDragon/feat/1952-state--classDef-documentation
(feat) state  classDef documentation
2022-11-22 23:19:15 +05:30
Sidharth Vinod
1ca49c696a Merge branch 'develop' into feat/1952-state--classDef-documentation
* develop:
  chore: docs:build
  Fix typos
2022-11-22 23:17:33 +05:30
Sidharth Vinod
8e8259934e Merge pull request #3820 from endolith/typos
Fix typos
2022-11-22 23:17:11 +05:30
Sidharth Vinod
66bb19f91a chore: docs:build 2022-11-22 23:17:00 +05:30
Sidharth Vinod
183dee89c2 feat: Spellcheck docs when building
docs.yml is removed as `docs:verify` will cover spellchecks now.
2022-11-22 23:06:12 +05:30
Sidharth Vinod
009a32d20b fix: Enable extending lintstagedrc. 2022-11-22 23:05:27 +05:30
Ashley Engelund (weedySeaDragon @ github)
338d83d4a5 Merge branch 'feat/1952-state--classDef-documentation' of github.com:weedySeaDragon/mermaid into feat/1952-state--classDef-documentation
 Conflicts:
	docs/syntax/stateDiagram.md
	packages/mermaid/src/diagrams/pie/pieDetector.ts
	packages/mermaid/src/docs/syntax/stateDiagram.md
2022-11-22 09:09:40 -08:00
Ashley Engelund (weedySeaDragon @ github)
c3e054c155 tiny fix and change: "The/y cannot" -> "Cannot..." 2022-11-22 08:58:55 -08:00
Ashley Engelund
a09ec69a96 remove 'horz' from cSpell.json
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2022-11-22 08:56:04 -08:00
Ashley Engelund (weedySeaDragon @ github)
7f5b48920c update demos/state.html to includ examples; formatting 2022-11-22 08:56:04 -08:00
Ashley Engelund (weedySeaDragon @ github)
4703523d6b add 'horz' to cSpell (in pieDetector.ts commented out barChart work) 2022-11-22 08:56:04 -08:00
Ashley Engelund (weedySeaDragon @ github)
8066aaeeb0 refine - what is not done yet 2022-11-22 08:55:56 -08:00
Ashley Engelund
828e99d4b9 remove 'horz' from cSpell.json
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2022-11-22 08:49:08 -08:00
Sidharth Vinod
5967289172 fix: lintstagedrc lint:jison 2022-11-22 14:47:49 +05:30
Sidharth Vinod
4143032b66 Merge pull request #3842 from mermaid-js/per/revert-1d9fefe7ac65990e4dd06a7e0e29976a873db844
Revert "Added pie"
2022-11-22 14:39:51 +05:30
Per Brolin
9eb506f6c5 Revert "Added pie"
This reverts commit 1d9fefe7ac.
2022-11-22 10:04:28 +01:00
Sidharth Vinod
231965d36c Merge pull request #3840 from weedySeaDragon/chore/fix-lint-pie-console-stmt
(chore) remove console stmt in pieDetector
2022-11-22 10:53:06 +05:30
Sidharth Vinod
31380368e1 chore: Fix cSpell in pieRenderer 2022-11-22 10:49:45 +05:30
Ashley Engelund (weedySeaDragon @ github)
e2e604a76a update demos/state.html to includ examples; formatting 2022-11-21 17:00:54 -08:00
Ashley Engelund (weedySeaDragon @ github)
98e4b6f338 add 'horz' to cSpell (in pieDetector.ts commented out barChart work) 2022-11-21 17:00:54 -08:00
Ashley Engelund (weedySeaDragon @ github)
e1c2b1ddb5 refine - what is not done yet 2022-11-21 17:00:54 -08:00
Ashley Engelund (weedySeaDragon @ github)
22993e8b6c remove console stmt 2022-11-21 16:35:02 -08:00
Per Brolin
fdbc4ce0ed Merge branch 'develop' of github.com:mermaid-js/mermaid into develop 2022-11-21 14:45:25 +01:00
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
Sidharth Vinod
9b01a07b9d Fix lodash import 2022-11-21 18:13:35 +05:30
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
Sidharth Vinod
89488b60a4 Formatting 2022-11-21 18:06:53 +05:30
Sidharth Vinod
a686255d9e Merge branch 'develop' into sidv/optimizeSize
* 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
2022-11-21 18:06:30 +05:30
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
Dan Fallon
1f64302ae2 Use stylis to prepend idSelector
code previously manually inserted idSelector before the generated CSS.
This could produce incorrect CSS.

Adding & in front of rules will ensure that it behaves properly.
Stylis seems permissive about the lack of nesting selector, but fails
if there is no selector at all. (e.g. "{...props...}")

We should probably do this for each diagram's style.ts files as well
2022-11-20 23:11:05 -06:00
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
b75ce7af45 Update .vite/build.ts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-11-21 08:18:08 +05:30
Sidharth Vinod
de8ce77f37 fix Lint 2022-11-21 08:16:16 +05:30
Sidharth Vinod
bdace6a4d6 Add docs back 2022-11-21 08:16:16 +05:30
Sidharth Vinod
0e34caa1b0 fix: Core build externals 2022-11-21 08:16:15 +05:30
Sidharth Vinod
13ef403921 chore: Update dagre-d3-es 2022-11-21 08:16:15 +05:30
Sidharth Vinod
f687abb165 chore: Use graphlib from dagre-d3-es 2022-11-21 08:16:08 +05:30
Sidharth Vinod
931661ed67 fix: Add types to memoized functions 2022-11-21 08:13:44 +05:30
Sidharth Vinod
7d3a0577d2 chore: Replace lodash with lodash-es 2022-11-21 08:13:44 +05:30
Sidharth Vinod
4411aa9905 Cleanup 2022-11-21 08:13:44 +05:30
Sidharth Vinod
4890999206 Merge branch 'sidv/viz' into sidv/dagre-es-viz
* 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
2022-11-21 08:13:43 +05:30
Ashley Engelund (weedySeaDragon @ github)
a9c337302a export D3Element from mermaidAPI; use in accessibility 2022-11-20 12:27:29 -08:00
Ashley Engelund
2a98791ec9 use optional chaining check for get acc title and get acc description
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-11-20 12:17:21 -08:00
Sidharth Vinod
8a2d3a400c Fix Lodash import 2022-11-20 19:12:52 +05:30
Sidharth Vinod
bf53a03c9d fix: Use lodash instead of lodash-es
lodash with specific imports use lesser space than lodash-es
2022-11-20 18:30:01 +05:30
Sidharth Vinod
29342ea726 fix: Viz build 2022-11-20 17:16:09 +05:30
Sidharth Vinod
3b32f44a60 Merge branch 'sidv/viz' into sidv/splitDiagrams
* sidv/viz:
  feat: Add package visualization
  Ignore stats.html
  feat: Add bundle visualization
2022-11-20 14:25:40 +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
Sidharth Vinod
a8cd5e675d Ignore stats.html 2022-11-20 12:10:05 +05:30
Sidharth Vinod
bc269a966d Merge branch 'sidv/sizeCheck' into sidv/splitDiagrams
* sidv/sizeCheck:
  feat: Add size inspection plugin
2022-11-20 12:09:42 +05:30
Sidharth Vinod
d39606cb47 fix: Mindmap link 2022-11-20 12:04:28 +05:30
Sidharth Vinod
b04517b146 chore: Cleanup 2022-11-20 12:00:34 +05:30
Sidharth Vinod
024ee4213f Merge branch 'develop' into sidv/splitDiagrams
* develop: (233 commits)
  style(docs): use `github-dark` hightlight theme
  refactor(docs): use default vitepress highlighter
  fix: Move redirection to router
  ci(renovate): disable pinning dependencies
  Revert "chore(deps): pin dependencies"
  change shiki getHighlighter import
  create separate spec for stateRenderer-v2
  diagramStates should not be global; pass it into functions; minor comment fixes
  diagramClasses no longer needs to be cached; mermaidAPI no longer calls it repeatedly
  (minor) import expectTypeOf in spec
  (minor) fix JSdoc tag
  + spec stateRenderer-v2.js getClasses() to verify it returns a {}
  (minor) fix JSdoc types in comments
  (minor) add comments, remove duplicated line
  chore: Add master to link checker
  chore: Add docs to redirect.ts
  stateDB classes must be a {} not []
  feat: Redirect old documentation links.
  add stateDiagram-v2 to list of graphs with classDefs
  fix(docs): ClassDiagram table
  ...
2022-11-20 11:58:55 +05:30
Sidharth Vinod
e861fbb517 feat: unbundle styles 2022-11-20 11:09:08 +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
Sidharth Vinod
2e028ce36d chore: Unify registerLazyLoadedDiagrams 2022-11-20 00:38:35 +05:30
Ashley Engelund (weedySeaDragon @ github)
bd5b5cda06 Merge remote-tracking branch 'origin/docs/3682-developer-contributing' into docs/3682-developer-contributing
# Conflicts:
#	packages/mermaid/src/docs/community/development.md
2022-11-19 09:23:24 -08:00
Ashley Engelund (weedySeaDragon @ github)
fee63d83ee update related /docs file 2022-11-19 09:16:19 -08:00
Doug Finke
2a0f6d4cc9 Integrations added - Visual Studio Code [Polyglot Interactive Notebooks] 2022-11-19 11:20:13 -05:00
endolith
e3b9dbdf13 Fix typos 2022-11-19 09:33:01 -05:00
Mason Malone
70f024735b Add title support using YAML frontmatter 2022-11-18 20:42:54 -08:00
Ashley Engelund
0333bc172c spelling: description; .. help us keep release notes organized
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2022-11-18 15:39:29 -08:00
Ashley Engelund
71d2175e19 questions? search in... capitalize Search, + closed issues
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2022-11-18 15:38:52 -08:00
Ashley Engelund (weedySeaDragon @ github)
bd8f620480 updates based on sidharthv96's review 2022-11-18 15:24:10 -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
Ashley Engelund (weedySeaDragon @ github)
3fbc26dfc9 Merge remote-tracking branch 'MERMAID/develop' into docs/3682-developer-contributing 2022-11-18 09:50:21 -08: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
Ashley Engelund (weedySeaDragon @ github)
a867400d56 (minor) fix formatting; add "upvoting" to cSpell.json 2022-11-18 09:37:57 -08:00
Alois Klink
6e234f135d docs: create some basic mermaid mindmap demos 2022-11-18 17:32:23 +00:00
Ashley Engelund (weedySeaDragon @ github)
acebcbffc8 /doc files changed 2022-11-18 09:06:48 -08:00
Ashley Engelund (weedySeaDragon @ github)
449cbdfd02 make TODOs bold, ital so they're obv 2022-11-18 09:03:01 -08:00
Ashley Engelund (weedySeaDragon @ github)
3bdcfd9160 add TODO - PRs should start with... (fix|bug|feat|...) 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
9c0b81cee0 sidebar menu: remove sub-sub sections since sub menus cannot be collapsed 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
6b8f60efcf nav menu: contributing now points to src/doc about contributing 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
950832e56b Minor wording changes to Tech Reqs/Setup 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
535a1fc8cf add mermaid diagram 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
548ae5b023 sidebar: add sub-entries for Development/contribution 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
16d1610d75 clarify section headings; add TODO 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
e02240450a delete vdocs dir; it not longer exists 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
5eee76764d add TBD/comments in 'Contribute to Documentation....' section 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
dabda9d4ef CONTRIBUTING.md is note (with link) to development.md on doc site 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
135893f067 copy working draft to vdocs/community/development.md 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
95120c3f21 added main TOC headings 2022-11-18 08:52:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
47b695c3c5 reorganize, start adding text 2022-11-18 08:52:16 -08:00
Sidharth Vinod
7306b5ac45 feat: Add size inspection plugin 2022-11-18 17:52:55 +05:30
Sidharth Vinod
0854bab124 fix: Remove diagram dependency from mermaidAPI 2022-11-18 16:51:50 +05:30
Sidharth Vinod
fa51121f29 chore(split): Error 2022-11-18 16:30:54 +05:30
Sidharth Vinod
0b4c6f6477 chore(split): Journey 2022-11-18 16:22:38 +05:30
Sidharth Vinod
e5768454f1 chore(split): State Diagram 2022-11-18 16:19:38 +05:30
Sidharth Vinod
89b5eb56f2 chore(split): Orchestration 2022-11-18 16:11:19 +05:30
Sidharth Vinod
616c969a03 chore(split): Flow type 2022-11-18 16:11:03 +05:30
Sidharth Vinod
4fd826ac8c chore(split): Sequence 2022-11-18 16:10:51 +05:30
Sidharth Vinod
6d5a6ad0c8 chore(split): Requirement 2022-11-18 16:10:42 +05:30
Sidharth Vinod
e0cd76e6fd chore(split): Pie 2022-11-18 16:10:25 +05:30
Sidharth Vinod
f03364f328 chore(split): Info 2022-11-18 16:10:15 +05:30
Sidharth Vinod
25bc381361 chore(split): gitGraph 2022-11-18 16:10:06 +05:30
Sidharth Vinod
38e5c3a81e chore(split): Gantt 2022-11-18 16:09:56 +05:30
Sidharth Vinod
43aa831dd2 chore(split): ER 2022-11-18 16:09:45 +05:30
Sidharth Vinod
4492c5ed4e chore(split): classDiagram 2022-11-18 16:09:36 +05:30
Sidharth Vinod
5dec9eb2f5 fix: C4 type 2022-11-18 16:09:10 +05:30
pbrolin47
e2a0c434cc Merge pull request #3810 from mermaid-js/sidv/doc/mindmap
Mindmap integration docs
2022-11-18 11:01:38 +01: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
Sidharth Vinod
02903be558 feat: Split C4 & Flow 2022-11-18 14:28:28 +05:30
Sidharth Vinod
e9f8ba6915 doc: Add mindmap integration docs 2022-11-18 11:28:29 +05:30
Ashley Engelund (weedySeaDragon @ github)
67a015c71d re-re-fixed the contributing doc 2022-11-17 16:58:18 -08:00
Ashley Engelund (weedySeaDragon @ github)
69526402e2 format .md files 2022-11-17 16:51:23 -08:00
Ashley Engelund (weedySeaDragon @ github)
b51759d36e set describeby to accessible description element id 2022-11-17 15:50:52 -08:00
Ashley Engelund (weedySeaDragon @ github)
68b1805c40 (minor) fix typo, whitespace formatting 2022-11-17 15:49:37 -08:00
Ashley Engelund (weedySeaDragon @ github)
9cc862b951 doc: adding diagrams: revise a11y section 2022-11-17 15:48:17 -08:00
Ashley Engelund (weedySeaDragon @ github)
4fb4aa417c doc: revise A11y: fix multi-line ex, +describedby, alpha sort examples 2022-11-17 15:47:22 -08:00
Ashley Engelund (weedySeaDragon @ github)
0adc6a6112 remove a11y from individual diagrams; now happens in mermaidAPI render 2022-11-17 12:28:11 -08:00
Ashley Engelund (weedySeaDragon @ github)
29efc116f3 put a11y into mermaidAPI render; add render spec (mock diagram renderers etc) 2022-11-17 12:27:17 -08:00
Ashley Engelund (weedySeaDragon @ github)
f62c5d9698 add diagram renderer mocks 2022-11-17 12:25:14 -08:00
Ashley Engelund (weedySeaDragon @ github)
1ad537bc4d d3 mock: use MockedD3; remove sequence specific mock code 2022-11-17 12:24:58 -08:00
Ashley Engelund (weedySeaDragon @ github)
1fc02940ae move mocks specific to only seq spec files out of global d3 mock 2022-11-17 12:24:16 -08:00
Ashley Engelund (weedySeaDragon @ github)
8a3c4f64b2 MockedD3: node() return Element; add selectAll() 2022-11-17 12:23:01 -08:00
Ashley Engelund (weedySeaDragon @ github)
4d7496b8dd add error checking (empty diagramType, title, desc) to a11y methods 2022-11-17 12:21:45 -08:00
Ashley Engelund (weedySeaDragon @ github)
03a11e103e (minor) fix typo 2022-11-17 12:19:31 -08:00
Ashley Engelund (weedySeaDragon @ github)
c3313050ce Merge remote-tracking branch 'MERMAID/develop' into feat/3626-aria-roledescription-for-svg 2022-11-17 11:17:18 -08: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
pbrolin47
432d4f41f6 Merge pull request #3802 from mermaid-js/release/9.2.3
Fix #3799: Remove `type` from package.json
2022-11-16 09:29:03 +01:00
Sidharth Vinod
2092330eec fix: Fetch depth 2022-11-16 11:30:58 +05:30
Sidharth Vinod
e05e0f8ae3 fix: Fetch depth 2022-11-16 10:31:49 +05:30
Sidharth Vinod
52ee234c0f fix: Fetch depth 2022-11-16 10:31:07 +05:30
Sidharth Vinod
1d828fe8be fix: Add commit count to release preview 2022-11-16 10:27:42 +05:30
Sidharth Vinod
503114c0eb fix: Add commit count to release preview 2022-11-16 10:22:37 +05:30
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
Sidharth Vinod
1ad63d5b0b chore: Add working directory 2022-11-16 09:49:41 +05:30
Ashley Engelund (weedySeaDragon @ github)
d99707641b add "roledescription" to cSpell list of words (as in 'aria-roledescription') 2022-11-15 13:49:05 -08:00
Ashley Engelund (weedySeaDragon @ github)
0d9566dd71 diagrams: use a11y title,desc specific method (was renamed) 2022-11-15 13:48:35 -08:00
Ashley Engelund (weedySeaDragon @ github)
8d96518092 accessibility.js -> ts; + set aria-roledescription; add spec 2022-11-15 13:47:16 -08:00
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
Sidharth Vinod
3358406e68 fix: release-preview-publish.yml 2022-11-16 00:06:47 +05:30
Sidharth Vinod
d05fd25339 Fix #3799: Remove type from package.json 2022-11-15 23:59:17 +05:30
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
Knut Sveidqvist
3b79ee35e0 Merge pull request #3780 from mermaid-js/sidv/mergeMaster
chore: Merge master to develop
2022-11-15 12:47:32 +01:00
Sidharth Vinod
b202b539bf Merge pull request #3765 from spier/feature/check-links-in-docs
Add GHA that will check links + Fix broken links
2022-11-15 14:17:18 +05:30
Sidharth Vinod
e27966c15f chore: Add master to link checker 2022-11-15 14:16:41 +05:30
Sidharth Vinod
18c27c6f1d chore: Add docs to redirect.ts 2022-11-15 11:13:54 +05:30
Ashley Engelund (weedySeaDragon @ github)
345eaade22 stateDB classes must be a {} not [] 2022-11-14 11:39:58 -08:00
Sidharth Vinod
82f63b056f feat: Redirect old documentation links. 2022-11-15 01:06:04 +05:30
Ashley Engelund (weedySeaDragon @ github)
ccd55a0bde add stateDiagram-v2 to list of graphs with classDefs 2022-11-14 11:24:59 -08:00
Sidharth Vinod
846a03663c fix(docs): ClassDiagram table 2022-11-14 22:15:34 +05:30
Sidharth Vinod
a88a467d45 sync 2022-11-14 22:14:27 +05:30
Sidharth Vinod
beab2278d8 feat: Async mermaid docs 2022-11-14 22:06:26 +05:30
Per Brolin
51a84eeb90 Merge branch 'develop' of github.com:mermaid-js/mermaid into develop 2022-11-14 16:34:57 +01:00
Per Brolin
f36cf5b321 Merge branch 'master' of github.com:mermaid-js/mermaid 2022-11-14 13:02:03 +01:00
Sidharth Vinod
ad6eba452c Merge branch 'develop' into sidv/mergeMaster
* develop:
  fix(deps): update dependency rollup to v3
2022-11-14 16:44:57 +05:30
Sidharth Vinod
eae88c51d2 Cleanup 2022-11-14 16:42:08 +05:30
Sidharth Vinod
752cc3a527 Merge pull request #3674 from mermaid-js/renovate/rollup-3.x
fix(deps): update dependency rollup to v3
2022-11-14 16:41:09 +05:30
Sidharth Vinod
051b4271d3 Cleanup docs 2022-11-14 15:24:47 +05:30
Sidharth Vinod
4decaf0308 chore: Fix tsdoc 2022-11-14 15:17:13 +05:30
Sidharth Vinod
9144fa390f cleanup 2022-11-14 15:05:58 +05:30
Sidharth Vinod
c354d9e1e3 Merge remote-tracking branch 'origin/master' into sidv/mergeMaster
* origin/master: (76 commits)
  fix: `use-inline-specifiers-lockfile-format` to pnpm
  Hacky fix for pnpm issue
  chore: Cleanup pakage.json, fix jisonLint
  feat: Switch CDN
  Updated README-files
  Updated URL
  Updated release
  Increased package version to 9.2.2
  Added registerExternalDiagram for Mindmap
  fix: Remove registerDiagram export
  fix versions
  feat: Add config validator MVP
  Apply suggestions from code review
  fix: Import path in viewer.js
  Cleanup package.json
  Restore package and lock from master
  fix pnpm lock
  Fix pnpm-lock
  Fixing applitools batches
  Fix pnpm
  ...
2022-11-14 14:57:08 +05:30
Sidharth Vinod
77a326dedf Merge Master 2022-11-14 14:51:23 +05:30
Per Brolin
82ac667535 Service functions added 2022-11-14 10:03:24 +01:00
Sidharth Vinod
2d9bdedaf5 Merge branch 'develop' into sidv/mergeMaster
* develop:
  chore(deps): update all non-major dependencies
  fix(deps): update all non-major dependencies
  fix: `sourceLinkTemplate` in typedoc
  only call getClasses if the diagram renderer supports it
  fix typo
  merge fix: get classDefs only if diagram is in CLASSDEF_DIAGRAMS
  use lodash isEmpty instead of method defined in utils
  chore: Fix cspell
  fix: Type of DiagramStyleClassDef, general cleanup
  change spec descriptions to active voice (= shorter b/c 'should' isn't needed)
  functions and specs: removeExistingElements
  functions and specs: createUserstyles; minor changes
  functions and specs: createCssStyles, appendDivSvgG,cleanUpSvgCode, putIntoIFrame [for render]
  add MockedD3.ts
  const isSandboxed, isLooseSecurityLevel, fontFamily; a few more CONSTs
  more meaningful var names; move related lines together; const idSelector
  comment the main steps (prepare to break into functions that can be tested)
  render: define const iFrameId, enclosingDivID and _selector to use in function
  specs: encodeEntities, decodeEntities
  render: constants
2022-11-14 13:57:09 +05:30
renovate[bot]
04a99a7cd3 fix(deps): update dependency rollup to v3 2022-11-14 07:51:09 +00:00
Sidharth Vinod
0763590c24 Merge pull request #3791 from mermaid-js/renovate/all-minor-patch
chore(deps): update all non-major dependencies (minor)
2022-11-14 13:18:10 +05:30
Knut Sveidqvist
dfb1440ae0 Merge pull request #3684 from weedySeaDragon/chore/3648-mermaidAPI-render--dry-cleanup-specs
chore: clean up code in mermaidAPI render() and write specs/tests
2022-11-14 08:42:25 +01:00
renovate[bot]
a1e2df8466 chore(deps): update all non-major dependencies 2022-11-14 05:28:23 +00:00
renovate[bot]
20613beb8a fix(deps): update all non-major dependencies 2022-11-14 05:25:07 +00:00
Knut Sveidqvist
292cbd75a8 Merge pull request #3783 from mermaid-js/sidv/cleanupPackage.json
chore: Housekeeping
2022-11-11 09:21:43 +01:00
Sidharth Vinod
88d3fdfb8f fix: use-inline-specifiers-lockfile-format to pnpm 2022-11-11 13:29:59 +05:30
Sidharth Vinod
1f68ea4058 Hacky fix for pnpm issue 2022-11-11 02:41:03 +05:30
Sidharth Vinod
ab92b5c100 chore: Cleanup pakage.json, fix jisonLint 2022-11-11 01:54:29 +05:30
Alois Klink
195f3a5feb ci(lint-checker): lock down permissions
Lock down the GITHUB_TOKEN permissions.

lychee only needs `GITHUB_TOKEN` to read public
data without hitting rate-limits, so having read-only
access to contents should be fine.
2022-11-10 18:23:03 +00:00
Knut Sveidqvist
dcab2c552f Merge pull request #3777 from mermaid-js/sidv/fixCDN
Switch CDN to unpkg.com
2022-11-10 09:58:58 +01:00
Sidharth Vinod
a83f88bdf1 chore: Merge master to develop 2022-11-10 13:51:53 +05:30
Knut Sveidqvist
c781545a40 #3778 Adding a hexgon shape 2022-11-09 20:10:31 +01:00
Sidharth Vinod
791dbe01a2 fix: sourceLinkTemplate in typedoc 2022-11-09 23:48:26 +05:30
Alois Klink
fcd93794ce chore(docs): sync generated markdown docs
Sync generated markdown docs by running
`pnpm --filter mermaid run docs:build`
2022-11-09 17:12:36 +00:00
Sidharth Vinod
0af36f12b7 feat: Switch CDN 2022-11-09 22:38:21 +05:30
Per Brolin
dd5d99eacc Merge branch 'release/9.2.2' 2022-11-09 16:46:44 +01:00
Ashley Engelund (weedySeaDragon @ github)
750029f557 merge MERMAID/develop 2022-11-09 07:45:22 -08:00
Per Brolin
ccfaea8e3f Updated README-files 2022-11-09 16:34:31 +01:00
Per Brolin
0b9b2cfadc Updated URL 2022-11-09 16:26:53 +01:00
Per Brolin
526113517b Updated release 2022-11-09 16:20:28 +01:00
Per Brolin
fb8149b2ca Increased package version to 9.2.2 2022-11-09 16:02:49 +01:00
Sebastian Spier
7350b63e40 Remove unnecesary comment 2022-11-08 13:53:41 +01:00
Sebastian Spier
6543ece92c Fix display label/path for explaining where the docs are located 2022-11-08 13:53:18 +01:00
Sebastian Spier
62f3c4baa6 Revert "Running 'pnpm --filter mermaid run docs:build' as suggested by the previously failing 'lint' GHA"
This reverts commit 66c543cb8f.
2022-11-07 23:07:04 +01:00
Sebastian Spier
66c543cb8f Running 'pnpm --filter mermaid run docs:build' as suggested by the previously failing 'lint' GHA 2022-11-07 23:00:40 +01:00
Sebastian Spier
a19622c807 Revert content of /docs to what is on the develop branch 2022-11-07 22:48:44 +01:00
Sebastian Spier
013ff182c9 Run Prettier 2022-11-07 20:35:00 +01:00
Sebastian Spier
b5d335711f Fixing link to d3 time formatting 2022-11-07 20:23:24 +01:00
Sebastian Spier
5e41b68a3a Remove link to chrome web store app that doesn't exist any more 2022-11-07 17:46:26 +01:00
Sebastian Spier
3b901c4459 More consistent linking: Use the full filename README.md (in config/setup) 2022-11-07 17:00:54 +01:00
Sebastian Spier
f8234369c7 Don't check files that are generated during the build via 'pnpm docs:code' 2022-11-07 16:59:11 +01:00
Sidharth Vinod
0d8f09cec5 Merge pull request #3755 from mermaid-js/sidv/docsDev
Live edits for Docs
2022-11-07 21:22:25 +05:30
Sebastian Spier
23fe5ebddb [docs] To run the docs locally I needed to cd into packages/mermaid. 'docs:dev' is defined in packages/mermaid/package.json 2022-11-07 11:05:02 +01:00
Sebastian Spier
4a45112344 Replace links to '_sidebar.md' with '.vitepress/config.ts' 2022-11-07 10:43:46 +01:00
Sidharth Vinod
91bbab9e2d Lint 2022-11-07 14:30:20 +05:30
Sidharth Vinod
c6287b640d Merge remote-tracking branch 'origin/develop' into sidv/docsDev
* origin/develop:
  chore(deps): update all non-major dependencies
  chore(deps): update all non-major dependencies
  docs: Fix relative links to documentation files
  docs: Update references to default config in directives page
  Fixing applitools batches
  chore: Sync docs
  Fix link to CSS classes
2022-11-07 14:11:06 +05:30
Knut Sveidqvist
c5fe23c26f Merge pull request #3753 from mermaid-js/sidv/cspell
Fix CSpell
2022-11-07 09:40:23 +01:00
Sidharth Vinod
1304e8b00b chore: Move from bin to scripts. 2022-11-07 14:06:35 +05:30
renovate[bot]
603b537ee1 chore(deps): update all non-major dependencies 2022-11-07 07:48:40 +00:00
renovate[bot]
2a45d71efd chore(deps): update all non-major dependencies 2022-11-07 05:36:39 +00:00
Sebastian Spier
5d935c44e7 Add newline 2022-11-06 22:48:31 +01:00
Sebastian Spier
e653d656b3 Fix links that the link checker could not test (for various reasons) 2022-11-06 22:37:47 +01:00
Sebastian Spier
46fc13a5bc Add GHA that checks links (using lychee). Incl list of links to ignore. 2022-11-06 22:35:45 +01:00
Alois Klink
f3d8ada0ca Merge pull request #3760 from spier/patch-1
Fix link relative links to documentation files
2022-11-06 16:28:02 +00:00
Sebastian Spier
705d88360e docs: Fix relative links to documentation files
I noticed that the link to `Tutorials.md` was broken in this README.
While fixing this I found some other broken links in the same section
of the README, that I tried to fix as well.
(I suspect these files were moved at some point)
2022-11-06 16:21:23 +00:00
avijit1258
9e3601ae48 comments in states are skipped now 2022-11-06 01:50:29 -07:00
Sidharth Vinod
3aa2885692 Merge pull request #3738 from raptor0929/patch-1
docs: Update references to default config in directives page
2022-11-04 23:19:27 +05:30
flaura
c56854941e docs: Update references to default config in directives page 2022-11-04 12:54:29 -04:00
Knut Sveidqvist
357a928cce Fixing applitools batches 2022-11-04 13:05:46 +01:00
Per Brolin
1d9fefe7ac Added pie 2022-11-04 12:44:13 +01:00
Sidharth Vinod
d4cc366e86 chore: fix lint 2022-11-04 11:46:48 +05:30
Sidharth Vinod
3d7883f021 Merge pull request #3752 from hugovk/patch-1
Fix link to CSS classes
2022-11-04 11:46:04 +05:30
Sidharth Vinod
41f228c3ff chore: Sync docs 2022-11-04 11:45:20 +05:30
Sidharth Vinod
da447ae5d0 Merge remote-tracking branch 'origin/develop' into sidv/docsDev
* origin/develop: (24 commits)
  chore: fix cSpell word entry misspelling "mermiad" -> "mermaid" (#3751)
  chore: Remove Security from config
  Add Security Policy
  chore: cSpell
  Update contributors
  chore(docs): Update live editor links
  update user story link
  chore: lint
  feat(gantt): Add option 'tickInterval' for custom tick interval
  Convert attr to classed
  Convert attr to style
  Discussions are now available
  Make colors required
  make setup not required
  Update theme_proposal.yml
  Update syntaxt_proposal.yml
  Update diagram_proposal.yml
  Update bug_report.yml
  Delete question.md
  Create syntaxt_proposal.yml
  ...
2022-11-04 11:29:49 +05:30
Sidharth Vinod
f295424087 Merge remote-tracking branch 'origin/develop' into sidv/cspell
* origin/develop:
  chore: fix cSpell word entry misspelling "mermiad" -> "mermaid" (#3751)
2022-11-04 02:13:28 +05:30
Sidharth Vinod
daa85b4279 rename file 2022-11-04 02:09:14 +05:30
Sidharth Vinod
e7369acaea jq -> node 2022-11-04 02:05:50 +05:30
Sidharth Vinod
3ad17b79a6 CSpell format 2022-11-04 01:41:03 +05:30
Hugo van Kemenade
6879a15834 Fix link to CSS classes 2022-11-03 21:48:49 +02:00
Ashley Engelund (weedySeaDragon @ github)
607fe88d43 Merge remote-tracking branch 'MERMAID/develop' into chore/3648-mermaidAPI-render--dry-cleanup-specs
# Conflicts:
#	cSpell.json
2022-11-03 12:15:22 -07:00
Ashley Engelund
b63828f88d chore: fix cSpell word entry misspelling "mermiad" -> "mermaid" (#3751)
* fix misspelled "mermiad" -> 'mermaid' in cSpell.json

* correct misspelled word caught by cspell
2022-11-03 20:03:52 +01:00
Ashley Engelund (weedySeaDragon @ github)
794b642ff8 merge develop into branch. update cSpell.json; run pnpm install 2022-11-03 10:44:04 -07:00
Sidharth Vinod
4870d37027 chore: Remove Security from config 2022-11-03 11:17:24 +05:30
Sidharth Vinod
fb855bfcfa Merge branch 'pr/Andre601/2739' into develop
* pr/Andre601/2739:
  Add Security Policy
  chore: lint
  Discussions are now available
  Make colors required
  make setup not required
  Update theme_proposal.yml
  Update syntaxt_proposal.yml
  Update diagram_proposal.yml
  Update bug_report.yml
  Delete question.md
  Create syntaxt_proposal.yml
  Create theme_proposal.yml
  Create diagram_proposal.yml
  Switch to bug_report.yml
  Create config.yml
2022-11-03 11:15:35 +05:30
Sidharth Vinod
c46a3b09b1 Add Security Policy 2022-11-03 10:53:15 +05:30
Sidharth Vinod
549c2b8d04 Merge pull request #3678 from emersonbottero/develop
Improved New Documentation
2022-11-02 14:27:16 +05:30
Sidharth Vinod
05fd856d62 chore: cSpell 2022-11-02 13:47:42 +05:30
Ashley Engelund (weedySeaDragon @ github)
6d2441dff6 only call getClasses if the diagram renderer supports it 2022-11-01 12:08:59 -07:00
Ashley Engelund (weedySeaDragon @ github)
46ee4e426f fix typo 2022-11-01 10:19:17 -07:00
Ashley Engelund (weedySeaDragon @ github)
469d0f87be merge fix: get classDefs only if diagram is in CLASSDEF_DIAGRAMS 2022-11-01 10:12:48 -07:00
Ashley Engelund (weedySeaDragon @ github)
b20602672e use lodash isEmpty instead of method defined in utils 2022-11-01 10:12:08 -07:00
Ashley Engelund (weedySeaDragon @ github)
6563c0292a merge upstream/develop into branch 2022-11-01 09:53:41 -07:00
Sidharth Vinod
86f835cfc8 Merge branch 'develop' into pr/emersonbottero/3678
* develop:
  chore(docs): Update live editor links
  update user story link
  feat(gantt): Add option 'tickInterval' for custom tick interval
  Convert attr to classed
  Convert attr to style
2022-11-01 21:01:58 +05:30
Sidharth Vinod
4699ba3e71 Update contributors 2022-11-01 20:59:35 +05:30
Sidharth Vinod
7c07bc02af Merge pull request #3741 from 6footGeek/bug/3740_update_user_story_link_in_readme
update user story link for #3740
2022-11-01 19:08:56 +05:30
Sidharth Vinod
1a0d333e2c chore(docs): Update live editor links 2022-11-01 19:07:13 +05:30
Knut Sveidqvist
cd9fac78b8 Merge pull request #3722 from CalebUsadi/fix/convert_attr_to_style
Fix/convert attr to style in er graph
2022-11-01 13:55:27 +01:00
Knut Sveidqvist
4c779beda9 Merge pull request #3729 from DarkNami/feature/1598_add_tick_interval
feat(gantt): Add option 'tickInterval' for custom tick interval
2022-11-01 13:50:38 +01:00
Andy Barlow
114262d353 update user story link 2022-11-01 11:31:10 +00:00
Sidharth Vinod
015e22acf8 feat: Add live updates to docs. 2022-11-01 12:04:34 +05:30
Sidharth Vinod
70ec91d0db docs: Change yarn to pnpm 2022-11-01 10:34:45 +05:30
Sidharth Vinod
61b7033c65 fix: Lint 2022-10-31 22:18:57 +05:30
Sidharth Vinod
a9234785ab chore: Configure typedoc source links 2022-10-31 22:15:07 +05:30
Sidharth Vinod
b735c21a33 chore: Remove test branch 2022-10-31 22:08:04 +05:30
Sidharth Vinod
83fb0f446f Fix base 2022-10-31 22:02:47 +05:30
Sidharth Vinod
78565d16c1 Add pnpm 2022-10-31 21:54:57 +05:30
Sidharth Vinod
2c5a2072b8 Fix lint 2022-10-31 21:51:56 +05:30
Sidharth Vinod
56c2fe3eb1 Publish 2022-10-31 21:46:48 +05:30
Sidharth Vinod
f36e0ef941 chore: Add actions deploy 2022-10-31 21:44:09 +05:30
Sidharth Vinod
c72bdc83c8 chore: Cleanup lintStaged 2022-10-31 20:30:05 +05:30
Sidharth Vinod
3b7463e5ed Precommit Test 2022-10-31 20:27:43 +05:30
Sidharth Vinod
1e410de4cd Precommit Test 2022-10-31 19:54:30 +05:30
Sidharth Vinod
d08701e5c4 Precommit Test 2022-10-31 19:52:57 +05:30
Sidharth Vinod
359a570d77 Precommit Test 2022-10-31 19:51:41 +05:30
Sidharth Vinod
24198ed63e Merge remote-tracking branch 'origin/develop' into pr/emersonbottero/3678
* origin/develop:
  chore(deps): update all non-major dependencies
  chore(deps): update all non-major dependencies
  chore: Update bug report template
2022-10-31 19:43:53 +05:30
renovate[bot]
77782fdbc7 chore(deps): update all non-major dependencies 2022-10-31 12:56:18 +00:00
renovate[bot]
a15b228d3f chore(deps): update all non-major dependencies 2022-10-31 06:48:56 +00:00
Sidharth Vinod
450c308e4f Update packages/mermaid/.lintstagedrc.json
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-10-31 12:04:01 +05:30
Sidharth Vinod
d1e235a08b chore: Ignore packages/mermaid/src/docs/config/setup 2022-10-31 12:01:56 +05:30
Sidharth Vinod
85444dbee9 Merge branch 'develop' of https://github.com/emersonbottero/mermaid into pr/emersonbottero/3678
* 'develop' of https://github.com/emersonbottero/mermaid:
  Apply suggestions from code review
2022-10-31 11:57:58 +05:30
Sidharth Vinod
01ac770037 chore: Review comments 2022-10-31 11:57:50 +05:30
Sidharth Vinod
3675682674 Apply suggestions from code review
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-10-31 11:56:17 +05:30
Sidharth Vinod
a7c9fe77c5 Update packages/mermaid/src/docs.mts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-10-31 11:50:03 +05:30
Emerson Bottero
f87d1630d1 chore: fix most of aloisklink reviews 2022-10-30 21:22:38 -03:00
Sidharth Vinod
ec10316346 chore: lint 2022-10-30 00:07:12 +05:30
Sidharth Vinod
449dfe8b8e Merge remote-tracking branch 'origin/develop' into pr/Andre601/2739
* origin/develop: (1249 commits)
  docs(git): Regenerate
  docs(git): Add a quoted branch name example
  chore: Update bug report template
  fix(git): Support quoted branch names
  Ensure example code and rendered output are synced
  Change fill attribute to style.
  chore(deps): update all non-major dependencies
  chore(deps): pin dependencies
  fix typo
  Update sequenceDiagram.md
  style: fix eslint-plugin-tsdoc linting issues
  style: lint typescript with eslint-plugin-tsdoc
  ran linter
  Update packages/mermaid/src/dagre-wrapper/mermaid-graphlib.js
  Ran linter (npm run lint:fix)
  added curly rule to eslintrc
  fix: Add default arg to options
  Theme update from release 9.2
  testcode
  Delete dependabot.yml
  ...
2022-10-30 00:03:33 +05:30
Sidharth Vinod
4adf79451e Merge remote-tracking branch 'origin/master' into develop
* origin/master:
  chore: Update bug report template
2022-10-29 23:54:05 +05:30
Sidharth Vinod
fed32607de chore: Update docs build vitepress command 2022-10-29 01:14:11 +05:30
Sidharth Vinod
8f5fe38212 chore: format blockquote 2022-10-29 00:56:01 +05:30
Sidharth Vinod
f3cf6d638d chore: Add prettier to docs:code 2022-10-29 00:49:18 +05:30
Sidharth Vinod
e1d9d0b990 chore: Fix doc links 2022-10-29 00:46:25 +05:30
Sidharth Vinod
6e5adbf0ba Merge remote-tracking branch 'origin/develop' into pr/emersonbottero/3678
* origin/develop:
  fix: relative paths
  Update packages/mermaid/src/docs.mts
  docs: Fix docs path in Contributing.md
  docs: Add link to docs source
2022-10-29 00:46:10 +05:30
Sidharth Vinod
38fb926ea8 Merge pull request #3612 from mermaid-js/sidv/linkDocsSource
docs: Add link to docs source
2022-10-29 00:23:12 +05:30
Sidharth Vinod
61e20ce48a chore: update cspell.json 2022-10-29 00:20:54 +05:30
Sidharth Vinod
b0b4cccc96 fix: Team members 2022-10-29 00:16:59 +05:30
Sidharth Vinod
13e5c5ba72 chore: Fix vitepress build 2022-10-28 23:33:57 +05:30
ishuen
81d1dd7465 Remove extra arrow and adjust cross position 2022-10-28 17:01:57 +08:00
Sidharth Vinod
b7d24c8325 chore: Fix favicon 2022-10-28 14:28:57 +05:30
Sidharth Vinod
d7bf92b39f fix: Use AST to replace notes & warnings. 2022-10-28 14:13:24 +05:30
Sidharth Vinod
6b3892baf1 Merge remote-tracking branch 'origin/develop' into pr/emersonbottero/3678
* origin/develop:
  docs(git): Regenerate
  docs(git): Add a quoted branch name example
  fix(git): Support quoted branch names
  Ensure example code and rendered output are synced
  Fill inheritance arrow with background color
2022-10-28 13:02:52 +05:30
Sidharth Vinod
c1529bb7fc Merge pull request #3726 from gibson042/gh-3725-gitgraph-quoted-branch-names
fix(git): Support quoted branch names
2022-10-28 12:44:03 +05:30
Richard Gibson
033f88e8bb docs(git): Regenerate 2022-10-27 23:41:07 -04:00
Richard Gibson
6293a583a4 docs(git): Add a quoted branch name example 2022-10-27 23:35:25 -04:00
Emerson Bottero
ec5568b943 chore: more revision fixes 2022-10-27 19:58:39 -03:00
Sidharth Vinod
f1bfdd4506 Merge pull request #3721 from marcjansen/patch-1
Ensure example code and rendered output are synced
2022-10-27 23:25:11 +05:30
DarkNami
3166f689f9 feat(gantt): Add option 'tickInterval' for custom tick interval
See issue #1598
2022-10-27 16:47:42 +08:00
Ashish Jain
264edddc71 Merge pull request #3543 from vallsv/empty-aroow-for-inheritance
Fill inheritance arrow with background color
2022-10-26 23:13:38 +02:00
Richard Gibson
caf95dec86 fix(git): Support quoted branch names
Fixes #3725
2022-10-26 16:58:09 -04:00
Emerson Bottero
289ac52900 fix : CQ 2022-10-26 17:51:54 -03:00
Emerson Bottero
455839c0b9 fix: Merge conflicts 2022-10-26 16:51:22 -03:00
Emerson Bottero
47e1f611d8 fix: lint and spell errors 2022-10-26 16:24:06 -03:00
Knut Sveidqvist
fb9127ecc6 Merge pull request #3644 from weedySeaDragon/feat/1952-state--classDef-states
feat: [State diagram] Add classDefs and classes to states
2022-10-26 21:22:58 +02:00
Caleb Usadi
a59f49c04f Convert attr to classed 2022-10-26 00:17:20 -04:00
Caleb Usadi
58d692e6f5 Convert attr to style 2022-10-26 00:16:43 -04:00
Emerson Bottero
b62873a195 sync last changes 2022-10-25 17:54:07 -03:00
Marc Jansen
6eb2ce2706 Ensure example code and rendered output are synced 2022-10-25 21:14:13 +02:00
Ashley Engelund (weedySeaDragon @ github)
c413119064 merge MERMAID/develop into branch; fix ts/es lint errors 2022-10-25 08:38:57 -07:00
Ashley Engelund (weedySeaDragon @ github)
599d035daf merge MERMAID/develop into branch 2022-10-25 07:42:57 -07:00
Knut Sveidqvist
10ba3b612e Merge pull request #3719 from CalebUsadi/fix/3711_er_fill_attribute
Change fill attribute to style
2022-10-25 15:01:35 +02:00
Knut Sveidqvist
3dca7d10d5 Merge pull request #3668 from mermaid-js/3659_height_handling
#3659 Adding height when not using maxWidth
2022-10-25 14:48:50 +02:00
Knut Sveidqvist
84628134ed Merge pull request #3652 from uttk/bug/3651_git_graph_option
fix: Fix useMaxWidth option for git graph
2022-10-25 14:48:18 +02:00
Knut Sveidqvist
f4bb978a87 Merge pull request #3649 from DKurilo/feat/3247-statements-aliases
add statement aliases for ER diagram
2022-10-25 14:46:29 +02:00
Knut Sveidqvist
27a68819bc Merge pull request #3647 from DKurilo/feat/1414-notes-to-class-diagram
add the way to add notes to class diagram
2022-10-25 14:45:03 +02:00
Knut Sveidqvist
427eaebd79 Merge pull request #3636 from maiermic/bug/3263-border_attribute_does_not_work_in_a_certain_writing_style
fix: border attribute does not work in a certain writing style
2022-10-25 14:30:29 +02:00
Knut Sveidqvist
3603cc883c Merge pull request #3609 from jasmaa/feature/3593_pie_slice_ordering
Order pie chart slices clockwise by order of entries
2022-10-25 14:24:44 +02:00
Caleb Usadi
fc24373667 Change fill attribute to style. 2022-10-24 23:41:34 -04:00
Knut Sveidqvist
2e571a18bd Merge remote-tracking branch 'origin/develop' into develop 2022-10-24 10:38:45 +02:00
renovate[bot]
728d022f52 chore(deps): update all non-major dependencies 2022-10-24 07:36:58 +00:00
Knut Sveidqvist
fc829a4bde Merge branch 'release_9.2.0_buggfixes' into develop 2022-10-24 08:43:01 +02:00
renovate[bot]
663edabb14 chore(deps): pin dependencies 2022-10-24 04:32:21 +00:00
Sidharth Vinod
22587b9959 Merge pull request #3708 from aloisklink/style/use-eslint-plugin-tsdoc
Use `eslint-plugin-tsdoc` for TypeScript files instead of `eslint-plugin-jsdoc`
2022-10-23 18:16:42 +05:30
Alois Klink
b9f0fb9cd2 Merge pull request #3707 from imgss/patch-1
Update sequenceDiagram.md
2022-10-23 12:59:32 +01:00
shuaisguo
f788ab54f3 fix typo 2022-10-23 10:34:26 +08:00
IMGSS
a1c6d76a15 Update sequenceDiagram.md 2022-10-22 22:43:53 +08:00
Alois Klink
7e5689d0b9 style: fix eslint-plugin-tsdoc linting issues
Mostly, fixing these eslint-plugin-tsdoc style issues involved:
- Moving types from JSDoc to TypeScript types
- Making sure that all `@param paramName - description`
  had both a `-` and a description.

Occasionally, for some functions, if the JSDoc was completely
empty, I just deleted it, since there was no point in keeping it.
2022-10-22 13:30:50 +01:00
Emerson Bottero
563aff2d72 fix: gh pages workflow 2022-10-20 23:03:17 -03:00
Alois Klink
e6f19ff461 style: lint typescript with eslint-plugin-tsdoc 2022-10-20 20:23:28 +01:00
Knut Sveidqvist
f2279d48d8 Merge pull request #3698 from jeroenekkelkamp/chore/3697-eslint-curly
Chore/3697 eslint curly
2022-10-20 13:06:38 +02:00
Jeroen Ekkelkamp
52c5ae6d8e ran linter 2022-10-20 09:14:38 +02:00
Emerson Bottero
870cfdc44c docs: transform custom blocks, warning notes jison 2022-10-20 02:13:18 -03:00
Emerson Bottero
4b64775fde docs: small fixes 2022-10-20 00:13:46 -03:00
Emerson Bottero
4cd1e9a462 docs: contribute with vitepress 2022-10-20 00:06:46 -03:00
Jeroen Ekkelkamp
55d2c928ee Update packages/mermaid/src/dagre-wrapper/mermaid-graphlib.js
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
2022-10-19 21:00:40 +02:00
Jeroen Ekkelkamp
0c4edd332c Ran linter (npm run lint:fix) 2022-10-19 20:06:54 +02:00
Jeroen Ekkelkamp
3d140a7411 added curly rule to eslintrc 2022-10-19 20:04:45 +02:00
Sidharth Vinod
2d11192c3a Merge pull request #3688 from isinek/bug/3655_gantt_demo_diagrams_fail
fix: gantt demo diagrams (#3655)
2022-10-19 23:04:52 +05:30
Sidharth Vinod
3e76edcbac chore: Fix cspell 2022-10-19 22:55:19 +05:30
Sidharth Vinod
f4fa68031e Merge branch 'develop' into pr/weedySeaDragon/3684
* develop: (21 commits)
  Theme update from release 9.2
  testcode
  Delete dependabot.yml
  changed cspell config in eslint from warn to error
  Update .eslintrc.json
  fix cypress tests for erDiagram, add eslint-plugin-no-only-tests plugin because of this comment: https://github.com/mermaid-js/mermaid/pull/3647#issuecomment-1281163858
  chore: Add CORS to vite dev
  configured 3 more words in cspell.json
  removed eslint-ignore statements
  chore(deps): pin dependencies
  chore(deps): update all non-major dependencies (#3671)
  style(sequence): rename lineStarty to lineStartY
  style: fix @cspell/eslint warnings
  test(gantt): remove incorrect comment
  added words to cspell ignore words list, removed mywords.txt
  update: open graph image
  fix: prettier
  remove id attribute
  feat(issue#3675): added open graph meta tags
  updated eslint config and fixed cspell warnings
  ...
2022-10-19 22:48:57 +05:30
Sidharth Vinod
377b22e82b fix: Type of DiagramStyleClassDef, general cleanup 2022-10-19 22:31:37 +05:30
Knut Sveidqvist
4838d63455 Theme update from release 9.2 2022-10-19 14:37:48 +02:00
Knut Sveidqvist
904c011baf Merge remote-tracking branch 'origin/develop' into develop 2022-10-19 14:33:55 +02:00
Knut Sveidqvist
352dd5dcf7 testcode 2022-10-19 14:32:28 +02:00
Sidharth Vinod
c1f51175a1 Delete dependabot.yml 2022-10-19 00:21:52 +05:30
Sidharth Vinod
06b5c192b4 Merge pull request #3604 from devcer/feat/3601-cspell-configuration
Added and configured cspell plugin to eslint
2022-10-19 00:18:06 +05:30
devcer
6f19af2371 changed cspell config in eslint from warn to error 2022-10-18 23:38:30 +05:30
Santosh Viswanatham
c230ff04cb Update .eslintrc.json 2022-10-18 21:03:18 +05:30
Santosh Viswanatham
c71b6e31f7 Merge branch 'develop' into feat/3601-cspell-configuration 2022-10-18 21:02:38 +05:30
Sidharth Vinod
017fc483e7 Merge branch 'develop' of https://github.com/emersonbottero/mermaid into pr/emersonbottero/3678
* 'develop' of https://github.com/emersonbottero/mermaid:
  docs: fix layout problem
  docs: added warning and notes
  docs: added warning and notes
  docs: added warning and notes
  docs: small improvements
2022-10-18 12:29:03 +05:30
Sidharth Vinod
f2571e9930 fix: Live editor links 2022-10-18 12:28:48 +05:30
Sidharth Vinod
111354dd10 Merge pull request #3690 from DKurilo/test-it-only-rule
add eslint-plugin-no-only-tests plugin
2022-10-18 09:26:24 +05:30
Emerson Bottero
66ea491aff docs: fix layout problem 2022-10-18 00:26:36 -03:00
Emerson Bottero
e95eaddf8a docs: added warning and notes 2022-10-18 00:07:14 -03:00
Emerson Bottero
d296049d19 docs: added warning and notes 2022-10-18 00:05:27 -03:00
Emerson Bottero
c45bf055b6 docs: added warning and notes 2022-10-17 23:58:51 -03:00
Emerson Bottero
c8b377bf74 docs: small improvements 2022-10-17 19:32:47 -03:00
Dima Kurilo
20751a6496 fix cypress tests for erDiagram, add eslint-plugin-no-only-tests plugin because of this comment: https://github.com/mermaid-js/mermaid/pull/3647#issuecomment-1281163858 2022-10-17 13:20:17 -04:00
Sidharth Vinod
f6c167db84 Merge pull request #3679 from danangtomo/feat/3675_added_opengraph_meta
Added Open Graph meta tags
2022-10-17 22:15:35 +05:30
Dima Kurilo
75e11b1fde add basic render (cypress) test for classDiagram-v2 too 2022-10-17 12:33:23 -04:00
Dima Kurilo
cead1f36f4 add basic render (cypress test for notes 2022-10-17 12:13:22 -04:00
Dima Kurilo
3108e896b6 add renedering (cypress) tests 2022-10-17 12:03:51 -04:00
Dima Kurilo
d41efa413c add more docs 2022-10-17 09:58:04 -04:00
Dima Kurilo
5803d0abaf update docs 2022-10-17 09:46:10 -04:00
Ivan Sinek
53bc747e9d fix: gantt demo diagrams (#3655) 2022-10-17 14:42:48 +02:00
Sidharth Vinod
2fd94db686 chore: Add CORS to vite dev 2022-10-17 14:01:44 +05:30
devcer
8b64ad971a configured 3 more words in cspell.json 2022-10-17 09:41:59 +05:30
devcer
338e7e83cd removed eslint-ignore statements 2022-10-17 09:33:01 +05:30
devcer
fde3964b50 removed eslint-ignore statements 2022-10-17 09:31:58 +05:30
devcer
aad53f9e61 merged with master 2022-10-17 09:27:42 +05:30
renovate[bot]
17b72d565d chore(deps): pin dependencies 2022-10-17 03:12:28 +00:00
uttk
319f925bdd fix: Fixed git graph to use global setting if useMaxWidth option is not set 2022-10-17 03:07:10 +00:00
renovate[bot]
541de12690 chore(deps): update all non-major dependencies (#3671)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2022-10-16 22:58:11 +02:00
Ashley Engelund (weedySeaDragon @ github)
ea86ef3995 change spec descriptions to active voice (= shorter b/c 'should' isn't needed) 2022-10-16 11:14:57 -07:00
Ashley Engelund (weedySeaDragon @ github)
fcba29f774 functions and specs: removeExistingElements 2022-10-16 11:08:01 -07:00
Ashley Engelund (weedySeaDragon @ github)
166dca55f2 functions and specs: createUserstyles; minor changes 2022-10-16 09:39:31 -07:00
Alois Klink
aa43cfb5ac style(sequence): rename lineStarty to lineStartY
Fixes @cspell/eslint warnings.
2022-10-16 10:24:36 +01:00
Alois Klink
989d716c36 style: fix @cspell/eslint warnings
Ignores some names of contributors, and adjusts some capitilization
spacing to fix all cspell warnings.
2022-10-16 10:23:23 +01:00
Alois Klink
720849a55e test(gantt): remove incorrect comment
This comment seems to have been accidentally added 7 years ago
in 6f96b5dd14
2022-10-16 10:01:36 +01:00
Ashley Engelund (weedySeaDragon @ github)
a3b8c301e2 functions and specs: createCssStyles, appendDivSvgG,cleanUpSvgCode, putIntoIFrame [for render] 2022-10-15 19:15:59 -07:00
Ashley Engelund (weedySeaDragon @ github)
d106d3d1b1 add MockedD3.ts 2022-10-15 19:14:56 -07:00
Ashley Engelund (weedySeaDragon @ github)
a26673c59a const isSandboxed, isLooseSecurityLevel, fontFamily; a few more CONSTs 2022-10-15 13:58:24 -07:00
Ashley Engelund (weedySeaDragon @ github)
5aff154740 more meaningful var names; move related lines together; const idSelector 2022-10-15 13:43:40 -07:00
Ashley Engelund (weedySeaDragon @ github)
2e86031f00 comment the main steps (prepare to break into functions that can be tested) 2022-10-15 13:27:15 -07:00
Ashley Engelund (weedySeaDragon @ github)
978bf4e0ff render: define const iFrameId, enclosingDivID and _selector to use in function 2022-10-15 13:19:58 -07:00
Ashley Engelund (weedySeaDragon @ github)
8aaa7b1ba3 specs: encodeEntities, decodeEntities 2022-10-15 13:14:01 -07:00
Ashley Engelund (weedySeaDragon @ github)
d248952d9e render: constants 2022-10-15 11:11:54 -07:00
Santosh Viswanatham
1f642ca9b6 Merge branch 'develop' into feat/3601-cspell-configuration 2022-10-15 19:48:08 +05:30
devcer
478c387491 added words to cspell ignore words list, removed mywords.txt 2022-10-15 19:43:07 +05:30
Danang Estutomoaji
f532843665 update: open graph image 2022-10-15 17:13:36 +07:00
Danang Estutomoaji
9ba1f7c1f6 fix: prettier 2022-10-15 17:04:12 +07:00
Danang Estutomoaji
b78dc246ec remove id attribute 2022-10-15 11:56:50 +07:00
Danang Estutomoaji
9251176f5e feat(issue#3675): added open graph meta tags 2022-10-15 11:48:02 +07:00
Emerson Bottero
0da56a1249 docs: new Documentation 2022-10-15 00:50:57 -03:00
Emerson Bottero
cbcf7f8a11 docs: new Documentation 2022-10-15 00:50:11 -03:00
renovate[bot]
9ac3992fd2 chore(deps): update all non-major dependencies (minor) (#3632)
* chore(deps): update all non-major dependencies

* chore: add `auto-install-peers` to `.npmrc`

* chore: Update lockfile

* Update docs/index.html

Co-authored-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Update packages/mermaid/src/docs/index.html

Co-authored-by: Matthieu MOREL <matthieu.morel35@gmail.com>

* Define integrity, crossorigin and referrerpolicy

* Define integrity, crossorigin and referrerpolicy

* chore: format

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Sidharth Vinod <sidharthv96@gmail.com>
Co-authored-by: Matthieu MOREL <matthieu.morel35@gmail.com>
2022-10-14 13:18:19 +02:00
Sidharth Vinod
069951a748 fix: docs 2022-10-14 13:03:27 +05:30
Sidharth Vinod
c913fc8407 Merge pull request #3643 from Some-Dood/refactor-handle-error
feat: make `parseError` function more type-safe
2022-10-14 10:02:23 +05:30
Knut Sveidqvist
4be66554b3 #3659 Adding height when not using maxWidth 2022-10-13 14:26:05 +02:00
Sidharth Vinod
d62c2d1e22 fix: relative paths 2022-10-13 13:51:27 +05:30
Sidharth Vinod
30a3a9ee53 Merge branch 'sidv/linkDocsSource' of https://github.com/mermaid-js/mermaid into sidv/linkDocsSource
* 'sidv/linkDocsSource' of https://github.com/mermaid-js/mermaid:
  Update packages/mermaid/src/docs.mts
2022-10-13 13:49:27 +05:30
Sidharth Vinod
0d5664cc9b Merge branch 'develop' into sidv/linkDocsSource
* develop: (36 commits)
  chore(deps): update actions/setup-node action to v3
  Remove inconsistent and deprecated semicolons
  chore(deps): update actions/checkout action to v3
  docs: Fix initial install step
  docs: Update twitter link
  chore: renovate lint
  Update renovate.json
  chore: Bump node to v18
  chore: Set node v16
  chore: Add volta
  chore(deps): add renovate.json
  Contrbution steps updated
  refactor: use `posix.join()` instead of replacing `\`
  Link added for local setup
  contribution.md updated
  fix: Fix eslint warnings
  fix: docs path in windows
  docs: Add twitter
  docs: Add version to doc index.html
  Update packages/mermaid/src/docs/n00b-gettingStarted.md
  ...
2022-10-13 13:48:36 +05:30
Sidharth Vinod
d03fdfdbca Update packages/mermaid/src/docs.mts
Co-authored-by: Alois Klink <alois@aloisklink.com>
2022-10-13 13:48:00 +05:30
Sidharth Vinod
57b883c7dd Merge pull request #3605 from arpansaha13/sidv/fixWindowsPath
Fix windows paths for `docs:build`
2022-10-13 12:59:07 +05:30
Sidharth Vinod
af0f0ca526 Merge pull request #3657 from revolter/patch-1
Remove inconsistent and deprecated semicolons
2022-10-13 11:29:43 +05:30
Alois Klink
bc9ed8e1bd Merge pull request #3646 from mermaid-js/renovate/actions-setup-node-3.x
chore(deps): update actions/setup-node action to v3
2022-10-13 00:00:09 +01:00
renovate[bot]
673a2e8228 chore(deps): update actions/setup-node action to v3 2022-10-12 22:52:41 +00:00
Alois Klink
75c67ed948 Merge pull request #3645 from mermaid-js/renovate/actions-checkout-3.x
chore(deps): update actions/checkout action to v3
2022-10-12 23:51:51 +01:00
Iulian Onofrei
353895dceb Remove inconsistent and deprecated semicolons 2022-10-12 23:01:29 +03:00
uttk
627ddc0774 fix: Fix useMaxWidth option for git graph 2022-10-12 02:14:56 +00:00
Dima Kurilo
4fc3cc7aff add aliases '0+', '1+' and '1' 2022-10-11 21:57:00 -04:00
Dima Kurilo
3e1b235055 add tests 2022-10-11 19:37:05 -04:00
Dima Kurilo
44706bc32e add statement aliases for ER diagram 2022-10-11 19:02:43 -04:00
renovate[bot]
e5c85cbc64 chore(deps): update actions/checkout action to v3 2022-10-11 20:56:31 +00:00
Ashley Engelund (weedySeaDragon @ github)
589dd70356 common consts; add consts in stateRenderer-v2 (will esp. make theme usage easier) 2022-10-11 13:03:55 -07:00
Ashley Engelund (weedySeaDragon @ github)
85ba4549fb (minor) add "V2" to top level of v2 diagram spec 2022-10-11 13:02:49 -07:00
devcer
adf7702211 updated eslint config and fixed cspell warnings 2022-10-11 22:52:49 +05:30
Ashley Engelund (weedySeaDragon @ github)
ba71afcce5 diagram-v2: store results of stateDb.extract(), apply class to state; code cleanup 2022-10-11 10:19:28 -07:00
Ashley Engelund (weedySeaDragon @ github)
3c0727c744 diagram-v2 spec: added tests for labels, composite; fix typos, 2022-10-11 10:16:57 -07:00
Basti Ortiz
7391baae34 fix: ensure that ParseErrorFunction type alias is compile-time only 2022-10-12 01:14:09 +08:00
Basti Ortiz
4b31112bcb fix: apply new types to the Mermaid API 2022-10-12 01:07:17 +08:00
Basti Ortiz
17ff584d15 feat: account for the fact that an error may be a DetailedError 2022-10-12 01:06:31 +08:00
Ashley Engelund (weedySeaDragon @ github)
79f4eb2e32 stateDb: methods for classDef, (style) classes; update extract(); code cleanup + DRY 2022-10-11 09:53:45 -07:00
Basti Ortiz
e8cd3c0baf fix: use ParseErrorFunction alias for mocks 2022-10-12 00:53:10 +08:00
Basti Ortiz
15f31f9d95 feat: make parseError function more type-safe 2022-10-12 00:32:41 +08:00
Ashley Engelund (weedySeaDragon @ github)
370806365f parser: idStatement returns stmt: 'state'...; add classDef, class statements 2022-10-11 08:36:04 -07:00
Ashley Engelund (weedySeaDragon @ github)
15dd60ab85 state demo: add more diagrams, add explanatory text 2022-10-11 08:34:30 -07:00
Ashley Engelund (weedySeaDragon @ github)
d1f3b889d6 add cypress tests for classDefs and applying classes to states 2022-10-11 08:33:43 -07:00
Ashley Engelund (weedySeaDragon @ github)
7b7db4f60e (minor) API: removed unused flowRenderer import; add comment 2022-10-11 08:33:43 -07:00
Ashley Engelund (weedySeaDragon @ github)
965eae5f45 add spec for stateDB addStyleClass 2022-10-11 08:33:43 -07:00
Ashley Engelund (weedySeaDragon @ github)
278a19f87a state demo add classDefs to example with explanations; add some headers; update composite from docs 2022-10-11 08:33:43 -07:00
Ashley Engelund (weedySeaDragon @ github)
56f3fa6495 API: getClasses() with the diagram renderer (not flowchart renderer); add const 2022-10-11 08:33:43 -07:00
Dima Kurilo
f05f07e44f add the way to add notes to class diagram 2022-10-10 20:53:09 -04:00
Michael Maier
7e8631dd19 fix: vertex property props is overwritten instead of being merged with new value
Fixes #3263
2022-10-10 17:59:29 +02:00
jasmaa
98f4c2d3ae Update pie docs to reflect label order change 2022-10-09 22:20:59 -04:00
lemontreejs
2bb0cf17d1 refactor: use posix.join() instead of replacing \ 2022-10-09 21:03:57 +05:30
Sidharth Vinod
d3de78ffce Merge branch 'develop' into sidv/linkDocsSource
* develop:
  docs: Fix docs path in Contributing.md
2022-10-09 22:30:04 +08:00
Sidharth Vinod
8e93ffffc6 docs: Fix docs path in Contributing.md 2022-10-09 21:11:22 +08:00
Sidharth Vinod
c55add73f6 docs: Add link to docs source 2022-10-09 21:00:02 +08:00
jasmaa
053c966d5f Order pie chart slices clockwise by order of entries 2022-10-08 16:51:11 -04:00
Valentin Valls
1fa84a30c9 Fill inheritance arrow with background color 2022-10-08 19:05:27 +02:00
lemontreejs
622b441eb0 fix: docs path in windows 2022-10-08 20:06:57 +05:30
devcer
4d0da7fba0 Added and configured cspell plugin to eslint 2022-10-08 14:38:41 +05:30
Sidharth Vinod
6f05d4b05a fix: docs path in windows 2022-10-08 12:16:39 +08:00
Sidharth Vinod
ab5111e84f fix: Remove hard coded Path separator 2022-10-08 12:16:24 +08:00
Sidharth Vinod
563c51d431 Get base sha from PR 2022-10-03 14:49:35 +08:00
Sidharth Vinod
455c61b2cf Run doc lint only if files changed 2022-10-03 14:41:52 +08:00
Sidharth Vinod
0a547e524e Run doc lint only if files changed 2022-10-03 14:30:46 +08:00
Sidharth Vinod
9c5c85d34a Run doc lint only if files changed 2022-10-03 14:24:51 +08:00
Sidharth Vinod
8d6af3dfed split lint docs action 2022-10-03 14:21:54 +08:00
Sidharth Vinod
3bae25fe6b split lint docs action 2022-10-03 14:15:28 +08:00
Sidharth Vinod
1d8d677d81 fix: File location 2022-10-03 14:03:44 +08:00
Sidharth Vinod
75db08a60c fix(docs): Test auto commit 2022-10-03 12:05:48 +08:00
Sidharth Vinod
d367e832be fix(docs): Test auto commit 2022-10-03 12:00:59 +08:00
Sidharth Vinod
8d9800c727 fix(docs): Test auto commit 2022-10-03 11:57:19 +08:00
Sidharth Vinod
058f1c2edf chore: Update docs path 2022-10-03 11:55:33 +08:00
Sidharth Vinod
9425b8adc2 Merge remote-tracking branch 'upstream/develop' into sidv/autoBuildDocs
* upstream/develop: (81 commits)
  style(docs): fix prettier issues (extra newline)
  Corrected theme variables reference table layout
  Fix typos in README.md
  build: lint-staged docs in packages/mermaid/src/…
  chore(docs): run `pnpm run docs:build`
  build(docs): fix `pnpm run docs:{build,verify}`
  docs: replace `yarn` with `pnpm` in dev guide
  build: re-enable `prepare` script for husky setup
  build: update pre-commit rules to use `pnpm`
  Arrow tip aligned to edge of box
  updated pnpm-lock file
  ci(e2e): Skip pnpm cache if skipping cypress run
  ci(e2e): remove `headless` arg from cypress run
  build(dev): Fix dev server not showing mermaid.js
  Fixed sample test
  Adding example diagram as a template for a new diagram
  Removed test folder
  Returning the borders to the e2e tests
  Fix for tests
  Updated version
  ...
2022-10-03 11:51:14 +08:00
Sidharth Vinod
21caa3eb72 chore: Auto build docs if only src/docs is changed 2022-10-03 11:50:42 +08:00
Andre_601
fe9a1c59cb Discussions are now available 2022-09-15 01:39:57 +02:00
Andre_601
612a57bdf7 Make colors required 2022-09-15 01:28:59 +02:00
Andre_601
979a376855 make setup not required 2022-09-15 01:28:20 +02:00
Andre_601
13286f66fd Update theme_proposal.yml 2022-02-16 22:18:47 +01:00
Andre_601
9e0c5d1d14 Update syntaxt_proposal.yml 2022-02-16 22:17:54 +01:00
Andre_601
0f092acec3 Update diagram_proposal.yml 2022-02-16 22:16:13 +01:00
Andre_601
56c2f23393 Update bug_report.yml 2022-02-16 22:14:21 +01:00
Andre_601
33903bbf6d Delete question.md 2022-02-16 22:10:24 +01:00
Andre_601
96395c44e0 Create syntaxt_proposal.yml 2022-02-16 22:08:43 +01:00
Andre_601
036dc802dc Create theme_proposal.yml 2022-02-16 22:07:25 +01:00
Andre_601
15ac2f87a3 Create diagram_proposal.yml 2022-02-16 22:01:00 +01:00
Andre_601
8a5d9bbad3 Switch to bug_report.yml 2022-02-16 21:51:02 +01:00
Andre_601
2bcae96d0a Create config.yml 2022-02-16 21:35:33 +01:00
786 changed files with 52290 additions and 48157 deletions

20
.build/common.ts Normal file
View File

@@ -0,0 +1,20 @@
/**
* Shared common options for both ESBuild and Vite
*/
export const packageOptions = {
mermaid: {
name: 'mermaid',
packageName: 'mermaid',
file: 'mermaid.ts',
},
'mermaid-example-diagram': {
name: 'mermaid-example-diagram',
packageName: 'mermaid-example-diagram',
file: 'detector.ts',
},
'mermaid-zenuml': {
name: 'mermaid-zenuml',
packageName: 'mermaid-zenuml',
file: 'detector.ts',
},
} as const;

View File

@@ -1,8 +1,6 @@
// @ts-ignore No typings for jison
import jison from 'jison';
export const transformJison = (src: string): string => {
// @ts-ignore No typings for jison
const parser = new jison.Generator(src, {
moduleType: 'js',
'token-stack': true,

122
.build/jsonSchema.ts Normal file
View File

@@ -0,0 +1,122 @@
import { load, JSON_SCHEMA } from 'js-yaml';
import assert from 'node:assert';
import Ajv2019, { type JSONSchemaType } from 'ajv/dist/2019.js';
import type { MermaidConfig, BaseDiagramConfig } from '../packages/mermaid/src/config.type.js';
/**
* All of the keys in the mermaid config that have a mermaid diagram config.
*/
const MERMAID_CONFIG_DIAGRAM_KEYS = [
'flowchart',
'sequence',
'gantt',
'journey',
'class',
'state',
'er',
'pie',
'quadrantChart',
'requirement',
'mindmap',
'timeline',
'gitGraph',
'c4',
'sankey',
] as const;
/**
* Generate default values from the JSON Schema.
*
* AJV does not support nested default values yet (or default values with $ref),
* so we need to manually find them (this may be fixed in ajv v9).
*
* @param mermaidConfigSchema - The Mermaid JSON Schema to use.
* @returns The default mermaid config object.
*/
export function generateDefaults(mermaidConfigSchema: JSONSchemaType<MermaidConfig>) {
const ajv = new Ajv2019({
useDefaults: true,
allowUnionTypes: true,
strict: true,
});
ajv.addKeyword({
keyword: 'meta:enum', // used by jsonschema2md
errors: false,
});
ajv.addKeyword({
keyword: 'tsType', // used by json-schema-to-typescript
errors: false,
});
// ajv currently doesn't support nested default values, see https://github.com/ajv-validator/ajv/issues/1718
// (may be fixed in v9) so we need to manually use sub-schemas
const mermaidDefaultConfig = {};
assert.ok(mermaidConfigSchema.$defs);
const baseDiagramConfig = mermaidConfigSchema.$defs.BaseDiagramConfig;
for (const key of MERMAID_CONFIG_DIAGRAM_KEYS) {
const subSchemaRef = mermaidConfigSchema.properties[key].$ref;
const [root, defs, defName] = subSchemaRef.split('/');
assert.strictEqual(root, '#');
assert.strictEqual(defs, '$defs');
const subSchema = {
$schema: mermaidConfigSchema.$schema,
$defs: mermaidConfigSchema.$defs,
...mermaidConfigSchema.$defs[defName],
} as JSONSchemaType<BaseDiagramConfig>;
const validate = ajv.compile(subSchema);
mermaidDefaultConfig[key] = {};
for (const required of subSchema.required ?? []) {
if (subSchema.properties[required] === undefined && baseDiagramConfig.properties[required]) {
mermaidDefaultConfig[key][required] = baseDiagramConfig.properties[required].default;
}
}
if (!validate(mermaidDefaultConfig[key])) {
throw new Error(
`schema for subconfig ${key} does not have valid defaults! Errors were ${JSON.stringify(
validate.errors,
undefined,
2,
)}`,
);
}
}
const validate = ajv.compile(mermaidConfigSchema);
if (!validate(mermaidDefaultConfig)) {
throw new Error(
`Mermaid config JSON Schema does not have valid defaults! Errors were ${JSON.stringify(
validate.errors,
undefined,
2,
)}`,
);
}
return mermaidDefaultConfig;
}
export const loadSchema = (src: string, filename: string): JSONSchemaType<MermaidConfig> => {
const jsonSchema = load(src, {
filename,
// only allow JSON types in our YAML doc (will probably be default in YAML 1.3)
// e.g. `true` will be parsed a boolean `true`, `True` will be parsed as string `"True"`.
schema: JSON_SCHEMA,
}) as JSONSchemaType<MermaidConfig>;
return jsonSchema;
};
export const getDefaults = (schema: JSONSchemaType<MermaidConfig>) => {
return `export default ${JSON.stringify(generateDefaults(schema), undefined, 2)};`;
};
export const getSchema = (schema: JSONSchemaType<MermaidConfig>) => {
return `export default ${JSON.stringify(schema, undefined, 2)};`;
};

60
.esbuild/build.ts Normal file
View File

@@ -0,0 +1,60 @@
import { build } from 'esbuild';
import { mkdir, writeFile } from 'node:fs/promises';
import { MermaidBuildOptions, defaultOptions, getBuildConfig } from './util.js';
import { packageOptions } from '../.build/common.js';
const shouldVisualize = process.argv.includes('--visualize');
const buildPackage = async (entryName: keyof typeof packageOptions) => {
const commonOptions = { ...defaultOptions, entryName } as const;
const buildConfigs = [
// package.mjs
{ ...commonOptions },
// package.min.mjs
{
...commonOptions,
minify: true,
metafile: shouldVisualize,
},
// package.core.mjs
{ ...commonOptions, core: true },
];
if (entryName === 'mermaid') {
const iifeOptions: MermaidBuildOptions = { ...commonOptions, format: 'iife' };
buildConfigs.push(
// mermaid.js
{ ...iifeOptions },
// mermaid.min.js
{ ...iifeOptions, minify: true, metafile: shouldVisualize },
);
}
const results = await Promise.all(buildConfigs.map((option) => build(getBuildConfig(option))));
if (shouldVisualize) {
for (const { metafile } of results) {
if (!metafile) {
continue;
}
const fileName = Object.keys(metafile.outputs)
.filter((file) => !file.includes('chunks') && file.endsWith('js'))[0]
.replace('dist/', '');
// Upload metafile into https://esbuild.github.io/analyze/
await writeFile(`stats/${fileName}.meta.json`, JSON.stringify(metafile));
}
}
};
const handler = (e) => {
console.error(e);
process.exit(1);
};
const main = async () => {
await mkdir('stats').catch(() => {});
const packageNames = Object.keys(packageOptions) as (keyof typeof packageOptions)[];
await Promise.allSettled(packageNames.map((pkg) => buildPackage(pkg).catch(handler)));
};
void main();

15
.esbuild/jisonPlugin.ts Normal file
View File

@@ -0,0 +1,15 @@
import { readFile } from 'node:fs/promises';
import { transformJison } from '../.build/jisonTransformer.js';
import { Plugin } from 'esbuild';
export const jisonPlugin: Plugin = {
name: 'jison',
setup(build) {
build.onLoad({ filter: /\.jison$/ }, async (args) => {
// Load the file from the file system
const source = await readFile(args.path, 'utf8');
const contents = transformJison(source);
return { contents, warnings: [] };
});
},
};

View File

@@ -0,0 +1,35 @@
import type { JSONSchemaType } from 'ajv/dist/2019.js';
import type { MermaidConfig } from '../packages/mermaid/src/config.type.js';
import { readFile } from 'node:fs/promises';
import { getDefaults, getSchema, loadSchema } from '../.build/jsonSchema.js';
/**
* ESBuild plugin that handles JSON Schemas saved as a `.schema.yaml` file.
*
* Use `my-example.schema.yaml?only-defaults=true` to only load the default values.
*/
export const jsonSchemaPlugin = {
name: 'json-schema-plugin',
setup(build) {
let schema: JSONSchemaType<MermaidConfig> | undefined = undefined;
let content = '';
build.onLoad({ filter: /config\.schema\.yaml$/ }, async (args) => {
// Load the file from the file system
const source = await readFile(args.path, 'utf8');
const resolvedSchema: JSONSchemaType<MermaidConfig> =
content === source && schema ? schema : loadSchema(source, args.path);
if (content !== source) {
content = source;
schema = resolvedSchema;
}
const contents = args.suffix.includes('only-defaults')
? getDefaults(resolvedSchema)
: getSchema(resolvedSchema);
return { contents, warnings: [] };
});
},
};
export default jsonSchemaPlugin;

107
.esbuild/server.ts Normal file
View File

@@ -0,0 +1,107 @@
import express from 'express';
import type { NextFunction, Request, Response } from 'express';
import cors from 'cors';
import { getBuildConfig, defaultOptions } from './util.js';
import { context } from 'esbuild';
import chokidar from 'chokidar';
const mermaidCtx = await context(
getBuildConfig({ ...defaultOptions, minify: false, core: false, entryName: 'mermaid' }),
);
const mermaidIIFECtx = await context(
getBuildConfig({
...defaultOptions,
minify: false,
core: false,
entryName: 'mermaid',
format: 'iife',
}),
);
const externalCtx = await context(
getBuildConfig({
...defaultOptions,
minify: false,
core: false,
entryName: 'mermaid-example-diagram',
}),
);
const zenumlCtx = await context(
getBuildConfig({ ...defaultOptions, minify: false, core: false, entryName: 'mermaid-zenuml' }),
);
const contexts = [mermaidCtx, mermaidIIFECtx, externalCtx, zenumlCtx];
const rebuildAll = async () => {
console.time('Rebuild time');
await Promise.all(contexts.map((ctx) => ctx.rebuild()));
console.timeEnd('Rebuild time');
};
let clients: { id: number; response: Response }[] = [];
function eventsHandler(request: Request, response: Response, next: NextFunction) {
const headers = {
'Content-Type': 'text/event-stream',
Connection: 'keep-alive',
'Cache-Control': 'no-cache',
};
response.writeHead(200, headers);
const clientId = Date.now();
clients.push({
id: clientId,
response,
});
request.on('close', () => {
clients = clients.filter((client) => client.id !== clientId);
});
}
let timeoutId: NodeJS.Timeout | undefined = undefined;
/**
* Debounce file change events to avoid rebuilding multiple times.
*/
function handleFileChange() {
if (timeoutId !== undefined) {
clearTimeout(timeoutId);
}
timeoutId = setTimeout(async () => {
await rebuildAll();
sendEventsToAll();
timeoutId = undefined;
}, 100);
}
function sendEventsToAll() {
clients.forEach(({ response }) => response.write(`data: ${Date.now()}\n\n`));
}
async function createServer() {
handleFileChange();
const app = express();
chokidar
.watch('**/src/**/*.{js,ts,yaml,json}', {
ignoreInitial: true,
ignored: [/node_modules/, /dist/, /docs/, /coverage/],
})
.on('all', async (event, path) => {
// Ignore other events.
if (!['add', 'change'].includes(event)) {
return;
}
console.log(`${path} changed. Rebuilding...`);
handleFileChange();
});
app.use(cors());
app.get('/events', eventsHandler);
app.use(express.static('./packages/mermaid/dist'));
app.use(express.static('./packages/mermaid-zenuml/dist'));
app.use(express.static('./packages/mermaid-example-diagram/dist'));
app.use(express.static('demos'));
app.use(express.static('cypress/platform'));
app.listen(9000, () => {
console.log(`Listening on http://localhost:9000`);
});
}
createServer();

98
.esbuild/util.ts Normal file
View File

@@ -0,0 +1,98 @@
import { resolve } from 'path';
import { fileURLToPath } from 'url';
import type { BuildOptions } from 'esbuild';
import { readFileSync } from 'fs';
import jsonSchemaPlugin from './jsonSchemaPlugin.js';
import { packageOptions } from '../.build/common.js';
import { jisonPlugin } from './jisonPlugin.js';
const __dirname = fileURLToPath(new URL('.', import.meta.url));
export interface MermaidBuildOptions {
minify: boolean;
core: boolean;
metafile: boolean;
format: 'esm' | 'iife';
entryName: keyof typeof packageOptions;
}
export const defaultOptions: Omit<MermaidBuildOptions, 'entryName'> = {
minify: false,
metafile: false,
core: false,
format: 'esm',
} as const;
const buildOptions = (override: BuildOptions): BuildOptions => {
return {
bundle: true,
minify: true,
keepNames: true,
platform: 'browser',
tsconfig: 'tsconfig.json',
resolveExtensions: ['.ts', '.js', '.json', '.jison', '.yaml'],
external: ['require', 'fs', 'path'],
outdir: 'dist',
plugins: [jisonPlugin, jsonSchemaPlugin],
sourcemap: 'external',
...override,
};
};
const getFileName = (fileName: string, { core, format, minify }: MermaidBuildOptions) => {
if (core) {
fileName += '.core';
} else if (format === 'esm') {
fileName += '.esm';
}
if (minify) {
fileName += '.min';
}
return fileName;
};
export const getBuildConfig = (options: MermaidBuildOptions): BuildOptions => {
const { core, entryName, metafile, format, minify } = options;
const external: string[] = ['require', 'fs', 'path'];
const { name, file, packageName } = packageOptions[entryName];
const outFileName = getFileName(name, options);
let output: BuildOptions = buildOptions({
absWorkingDir: resolve(__dirname, `../packages/${packageName}`),
entryPoints: {
[outFileName]: `src/${file}`,
},
metafile,
minify,
logLevel: 'info',
chunkNames: `chunks/${outFileName}/[name]-[hash]`,
});
if (core) {
const { dependencies } = JSON.parse(
readFileSync(resolve(__dirname, `../packages/${packageName}/package.json`), 'utf-8'),
);
// Core build is used to generate file without bundled dependencies.
// This is used by downstream projects to bundle dependencies themselves.
// Ignore dependencies and any dependencies of dependencies
external.push(...Object.keys(dependencies));
output.external = external;
}
if (format === 'iife') {
output.format = 'iife';
output.splitting = false;
output.globalName = '__esbuild_esm_mermaid';
// Workaround for removing the .default access in esbuild IIFE.
// https://github.com/mermaid-js/mermaid/pull/4109#discussion_r1292317396
output.footer = {
js: 'globalThis.mermaid = globalThis.__esbuild_esm_mermaid.default;',
};
output.outExtension = { '.js': '.js' };
} else {
output.format = 'esm';
output.splitting = true;
output.outExtension = { '.js': '.mjs' };
}
return output;
};

View File

@@ -3,4 +3,6 @@ dist/**
docs/Setup.md
cypress.config.js
cypress/plugins/index.js
coverage
coverage
*.json
node_modules

164
.eslintrc.cjs Normal file
View File

@@ -0,0 +1,164 @@
module.exports = {
env: {
browser: true,
es6: true,
'jest/globals': true,
node: true,
},
root: true,
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaFeatures: {
experimentalObjectRestSpread: true,
jsx: true,
},
tsconfigRootDir: __dirname,
sourceType: 'module',
ecmaVersion: 2020,
allowAutomaticSingleRunInference: true,
project: ['./tsconfig.eslint.json', './packages/*/tsconfig.json'],
parser: '@typescript-eslint/parser',
},
extends: [
'eslint:recommended',
'plugin:@typescript-eslint/recommended',
'plugin:json/recommended',
'plugin:markdown/recommended',
'plugin:@cspell/recommended',
'prettier',
],
plugins: [
'@typescript-eslint',
'no-only-tests',
'html',
'jest',
'jsdoc',
'json',
'@cspell',
'lodash',
'unicorn',
],
ignorePatterns: [
// this file is automatically generated by `pnpm run --filter mermaid types:build-config`
'packages/mermaid/src/config.type.ts',
],
rules: {
curly: 'error',
'no-console': 'error',
'no-prototype-builtins': 'off',
'no-unused-vars': 'off',
'cypress/no-async-tests': 'off',
'@typescript-eslint/no-unused-vars': 'warn',
'@typescript-eslint/no-explicit-any': 'warn',
'@typescript-eslint/no-floating-promises': 'error',
'@typescript-eslint/no-misused-promises': 'error',
'@typescript-eslint/ban-ts-comment': [
'error',
{
'ts-expect-error': 'allow-with-description',
'ts-ignore': 'allow-with-description',
'ts-nocheck': 'allow-with-description',
'ts-check': 'allow-with-description',
minimumDescriptionLength: 10,
},
],
'json/*': ['error', 'allowComments'],
'@cspell/spellchecker': [
'error',
{
checkIdentifiers: false,
checkStrings: false,
checkStringTemplates: false,
},
],
'no-empty': [
'error',
{
allowEmptyCatch: true,
},
],
'no-only-tests/no-only-tests': 'error',
'lodash/import-scope': ['error', 'method'],
'unicorn/better-regex': 'error',
'unicorn/no-abusive-eslint-disable': 'error',
'unicorn/no-array-push-push': 'error',
'unicorn/no-for-loop': 'error',
'unicorn/no-instanceof-array': 'error',
'unicorn/no-typeof-undefined': 'error',
'unicorn/no-unnecessary-await': 'error',
'unicorn/no-unsafe-regex': 'warn',
'unicorn/no-useless-promise-resolve-reject': 'error',
'unicorn/prefer-array-find': 'error',
'unicorn/prefer-array-flat-map': 'error',
'unicorn/prefer-array-index-of': 'error',
'unicorn/prefer-array-some': 'error',
'unicorn/prefer-default-parameters': 'error',
'unicorn/prefer-includes': 'error',
'unicorn/prefer-negative-index': 'error',
'unicorn/prefer-object-from-entries': 'error',
'unicorn/prefer-string-starts-ends-with': 'error',
'unicorn/prefer-string-trim-start-end': 'error',
'unicorn/string-content': 'error',
'unicorn/prefer-spread': 'error',
'unicorn/no-lonely-if': 'error',
},
overrides: [
{
files: ['cypress/**', 'demos/**'],
rules: {
'no-console': 'off',
},
},
{
files: ['*.{js,jsx,mjs,cjs}'],
extends: ['plugin:jsdoc/recommended'],
rules: {
'jsdoc/check-indentation': 'off',
'jsdoc/check-alignment': 'off',
'jsdoc/check-line-alignment': 'off',
'jsdoc/multiline-blocks': 'off',
'jsdoc/newline-after-description': 'off',
'jsdoc/tag-lines': 'off',
'jsdoc/require-param-description': 'off',
'jsdoc/require-param-type': 'off',
'jsdoc/require-returns': 'off',
'jsdoc/require-returns-description': 'off',
},
},
{
files: ['*.{ts,tsx}'],
plugins: ['tsdoc'],
rules: {
'no-restricted-syntax': [
'error',
{
selector: 'TSEnumDeclaration',
message:
'Prefer using TypeScript union types over TypeScript enum, since TypeScript enums have a bunch of issues, see https://dev.to/dvddpl/whats-the-problem-with-typescript-enums-2okj',
},
],
'tsdoc/syntax': 'error',
},
},
{
files: ['*.spec.{ts,js}', 'cypress/**', 'demos/**', '**/docs/**'],
rules: {
'jsdoc/require-jsdoc': 'off',
'@typescript-eslint/no-unused-vars': 'off',
},
},
{
files: ['*.html', '*.md', '**/*.md/*'],
rules: {
'no-var': 'error',
'no-undef': 'off',
'@typescript-eslint/no-unused-vars': 'off',
'@typescript-eslint/no-floating-promises': 'off',
'@typescript-eslint/no-misused-promises': 'off',
},
parserOptions: {
project: null,
},
},
],
};

View File

@@ -1,76 +0,0 @@
{
"env": {
"browser": true,
"es6": true,
"jest/globals": true,
"node": true
},
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaFeatures": {
"experimentalObjectRestSpread": true,
"jsx": true
},
"sourceType": "module"
},
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:jsdoc/recommended",
"plugin:json/recommended",
"plugin:markdown/recommended",
"prettier"
],
"plugins": ["@typescript-eslint", "html", "jest", "jsdoc", "json"],
"rules": {
"no-console": "error",
"no-prototype-builtins": "off",
"no-unused-vars": "off",
"jsdoc/check-indentation": "off",
"jsdoc/check-alignment": "off",
"jsdoc/check-line-alignment": "off",
"jsdoc/multiline-blocks": "off",
"jsdoc/newline-after-description": "off",
"jsdoc/tag-lines": "off",
"jsdoc/require-param-description": "off",
"jsdoc/require-param-type": "off",
"jsdoc/require-returns": "off",
"jsdoc/require-returns-description": "off",
"cypress/no-async-tests": "off",
"@typescript-eslint/ban-ts-comment": [
"error",
{
"ts-expect-error": "allow-with-description",
"ts-ignore": "allow-with-description",
"ts-nocheck": "allow-with-description",
"ts-check": "allow-with-description",
"minimumDescriptionLength": 10
}
],
"json/*": ["error", "allowComments"],
"no-empty": ["error", { "allowEmptyCatch": true }]
},
"overrides": [
{
"files": ["cypress/**", "demos/**"],
"rules": {
"no-console": "off"
}
},
{
"files": ["*.spec.{ts,js}", "cypress/**", "demos/**", "**/docs/**"],
"rules": {
"jsdoc/require-jsdoc": "off",
"@typescript-eslint/no-unused-vars": "off"
}
},
{
"files": ["*.html", "*.md", "**/*.md/*"],
"rules": {
"no-var": "error",
"no-undef": "off",
"@typescript-eslint/no-unused-vars": "off"
}
}
]
}

4
.github/FUNDING.yml vendored
View File

@@ -1,6 +1,8 @@
# These are supported funding model platforms
github: [knsv]
github:
- knsv
- sidharthv96
#patreon: # Replace with a single Patreon username
#open_collective: # Replace with a single Open Collective username
#ko_fi: # Replace with a single Ko-fi username

View File

@@ -50,19 +50,20 @@ body:
attributes:
label: Setup
description: |-
Please fill out the below info.
Note that you only need to fill out one and not both sections.
Please fill out the info below.
Note that you only need to fill out the relevant section
value: |-
**Desktop**
- OS and Version: [Windows, Linux, Mac, ...]
- Mermaid version:
- Browser and Version: [Chrome, Edge, Firefox]
**Smartphone**
- Device: [Samsung, iPhone, ...]
- OS and Version: [Android, iOS, ...]
- Browser and Version: [Chrome, Safari, ...]
- type: textarea
attributes:
label: Suggested Solutions
description: >
If applicable, suggest solutions that could resolve the bug.
It would help maintainers/contributors to not waste time looking for the solution. Even pointing the line causing the bug would be great!
placeholder: |-
- Variable `parser` in file <filepath> is not initialised ...
- Add a new type for ...
- type: textarea
attributes:
label: Additional Context

View File

@@ -1,11 +1,8 @@
blank_issues_enabled: false
blank_issues_enabled: true
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: Security Vulnerability
url: https://github.com/mermaid-js/.github/blob/main/SECURITY.md
about: Report security issues confidentially.
- 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.

View File

@@ -3,6 +3,7 @@ description: Suggest a new Diagram Type to add to Mermaid.
labels:
- 'Status: Triage'
- 'Type: Enhancement'
- 'Type: New Diagram'
body:
- type: markdown
@@ -17,6 +18,14 @@ body:
- Use a clear and concise title
- Fill out the text fields with as much detail as possible.
- Never be shy to give us screenshots and/or code samples. It will help!
## Example issues
Refer to the discussions here to get an idea of how the diagram syntax is created.
- https://github.com/mermaid-js/mermaid/issues/4269
- https://github.com/mermaid-js/mermaid/issues/4282
- type: textarea
attributes:
label: Proposal
@@ -35,8 +44,17 @@ body:
description: If applicable, add screenshots to show possible examples of how the diagram may look like.
- type: textarea
attributes:
label: Code Sample
label: Syntax
description: |-
If applicable, add a code sample for how to implement this new diagram.
The text will automatically be rendered as JavaScript code.
render: javascript
If possible, include a syntax which could be used to write the diagram.
Try to add one or two examples of valid use-cases here.
- type: dropdown
id: implementation
attributes:
label: Implementation
description: |-
Would you like to implement this yourself, or is it a proposal for the community?
If there is no corresponding PR from your side after 30 days, the diagram will be open for everyone to implement.
options:
- I will try and implement it myself.
- This is a proposal which I'd love to see built into mermaid by the wonderful community.

17
.github/codecov.yaml vendored Normal file
View File

@@ -0,0 +1,17 @@
codecov:
branch: develop
comment:
layout: 'reach, diff, flags, files'
behavior: default
require_changes: false # if true: only post the comment if coverage changes
require_base: no # [yes :: must have a base report to post]
require_head: yes # [yes :: must have a head report to post]
coverage:
status:
project:
off
# Turing off for now as code coverage isn't stable and causes unnecessary build failures.
# default:
# threshold: 2%

View File

@@ -1,18 +0,0 @@
version: 2
updates:
- package-ecosystem: npm
open-pull-requests-limit: 10
directory: /
target-branch: develop
versioning-strategy: increase
schedule:
interval: weekly
day: monday
time: '07:00'
- package-ecosystem: github-actions
directory: /
target-branch: develop
schedule:
interval: weekly
day: monday
time: '07:00'

44
.github/lychee.toml vendored Normal file
View File

@@ -0,0 +1,44 @@
############################# Display #############################
# Verbose program output
# Accepts log level: "error", "warn", "info", "debug", "trace"
verbose = "debug"
# Don't show interactive progress bar while checking links.
no_progress = true
############################# Cache ###############################
# Enable link caching. This can be helpful to avoid checking the same links on
# multiple runs.
cache = true
# Discard all cached requests older than this duration.
max_cache_age = "1d"
############################# Requests ############################
# Comma-separated list of accepted status codes for valid links.
accept = [200, 429]
############################# Exclusions ##########################
# Exclude URLs and mail addresses from checking (supports regex).
exclude = [
# Network error: Forbidden
"https://codepen.io",
# Timeout error, maybe Twitter has anti-bot defenses against GitHub's CI servers?
"https://twitter.com/mermaidjs_",
# 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/"
]
# Exclude all private IPs from checking.
# Equivalent to setting `exclude_private`, `exclude_link_local`, and
# `exclude_loopback` to true.
exclude_all_private = true

View File

@@ -1,3 +1,4 @@
'Type: Bug / Error': 'bug/*'
'Type: Enhancement': 'feature/*'
'Type: Other': 'other/*'
'Type: Bug / Error': ['bug/*', fix/*]
'Type: Enhancement': ['feature/*', 'feat/*']
'Type: Other': ['other/*', 'chore/*', 'test/*', 'refactor/*']
'Area: Documentation': ['docs/*']

View File

@@ -13,5 +13,6 @@ 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)
- [ ] :computer: have added unit/e2e tests (if appropriate)
- [ ] :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.
- [ ] :bookmark: targeted `develop` branch

View File

@@ -1,14 +1,27 @@
name-template: '$NEXT_PATCH_VERSION'
tag-template: '$NEXT_PATCH_VERSION'
categories:
- title: '🚨 **Breaking Changes**'
labels:
- 'Breaking Change'
- title: '🚀 Features'
labels:
- 'Type: Enhancement'
- 'feature' # deprecated, new PRs shouldn't have this
- title: '🐛 Bug Fixes'
labels:
- 'Type: Bug / Error'
- 'fix' # deprecated, new PRs shouldn't have this
- title: '🧰 Maintenance'
label: 'Type: Other'
labels:
- 'Type: Other'
- 'chore' # deprecated, new PRs shouldn't have this
- title: '⚡️ Performance'
labels:
- 'Type: Performance'
- title: '📚 Documentation'
labels:
- 'Area: Documentation'
change-template: '- $TITLE (#$NUMBER) @$AUTHOR'
sort-by: title
sort-direction: ascending

37
.github/workflows/build-docs.yml vendored Normal file
View File

@@ -0,0 +1,37 @@
name: Build Vitepress docs
on:
push:
branches:
- master
- release/*
pull_request:
merge_group:
permissions:
contents: read
jobs:
build-docs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: pnpm/action-setup@v2
- name: Setup Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: 18
- name: Install Packages
run: pnpm install --frozen-lockfile
- name: Verify release verion
if: ${{ github.event_name == 'push' && (github.ref == 'refs/heads/master' || startsWith(github.ref, 'refs/heads/release')) }}
run: pnpm --filter mermaid run docs:verify-version
- name: Run Build
run: pnpm --filter mermaid run docs:build:vitepress

View File

@@ -2,6 +2,7 @@ name: Build
on:
push: {}
merge_group:
pull_request:
types:
- opened
@@ -12,7 +13,7 @@ permissions:
contents: read
jobs:
build:
build-mermaid:
runs-on: ubuntu-latest
strategy:
matrix:

View File

@@ -14,7 +14,7 @@ permissions:
contents: read
jobs:
check:
check-readme:
runs-on: ubuntu-latest
steps:
- name: Checkout repository

View File

@@ -1,15 +1,16 @@
on:
push: {}
push:
merge_group:
pull_request:
types:
- opened
- synchronize
- ready_for_review
name: Static analysis
name: Static analysis on Test files
jobs:
test:
check-tests:
runs-on: ubuntu-latest
name: check tests
if: github.repository_owner == 'mermaid-js'

View File

@@ -17,4 +17,4 @@ jobs:
- name: 'Checkout Repository'
uses: actions/checkout@v3
- name: 'Dependency Review'
uses: actions/dependency-review-action@v2
uses: actions/dependency-review-action@v3

View File

@@ -1,28 +0,0 @@
name: Documentation Checks
on:
push:
branches:
- develop
paths:
- 'packages/mermaid/src/docs/**/*'
pull_request:
branches:
- develop
paths:
- 'packages/mermaid/src/docs/**/*'
jobs:
spellcheck:
name: 'Docs: Spellcheck'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
name: Check out the code
- uses: actions/setup-node@v1
name: Setup node
with:
node-version: '16'
- run: npm install -g cspell
name: Install cSpell
- run: cspell --config ./cSpell.json "packages/mermaid/src/docs/**/*.md" --no-progress
name: Run cSpell

View File

@@ -19,7 +19,7 @@ env:
USE_APPLI: ${{ secrets.APPLITOOLS_API_KEY && 'true' || '' }}
jobs:
test:
e2e-applitools:
runs-on: ubuntu-latest
strategy:
matrix:
@@ -38,15 +38,8 @@ jobs:
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: ${{ matrix.node-version }}
- name: Install Packages
run: |
pnpm install --frozen-lockfile
env:
CYPRESS_CACHE_FOLDER: .cache/Cypress
- if: ${{ env.USE_APPLI }}
name: Notify applitools of new batch
# Copied from docs https://applitools.com/docs/topics/integrations/github-integration-ci-setup.html
@@ -54,19 +47,22 @@ jobs:
env:
# e.g. mermaid-js/mermaid/my-branch
APPLITOOLS_BRANCH: ${{ github.repository }}/${{ github.ref_name }}
APPLITOOLS_PARENT_BRANCH: ${{ github.inputs.parent_branch }}
APPLITOOLS_PARENT_BRANCH: ${{ github.event.inputs.parent_branch }}
APPLITOOLS_API_KEY: ${{ secrets.APPLITOOLS_API_KEY }}
APPLITOOLS_SERVER_URL: 'https://eyesapi.applitools.com'
- name: Run E2E Tests
run: pnpm run e2e
- name: Cypress run
uses: cypress-io/github-action@v4
id: cypress
with:
start: pnpm run dev
wait-on: 'http://localhost:9000'
env:
CYPRESS_CACHE_FOLDER: .cache/Cypress
# Mermaid applitools.config.js uses this to pick batch name.
APPLI_BRANCH: ${{ github.ref_name }}
APPLITOOLS_BATCH_ID: ${{ github.sha }}
# e.g. mermaid-js/mermaid/my-branch
APPLITOOLS_BRANCH: ${{ github.repository }}/${{ github.ref_name }}
APPLITOOLS_PARENT_BRANCH: ${{ github.inputs.parent_branch }}
APPLITOOLS_PARENT_BRANCH: ${{ github.event.inputs.parent_branch }}
APPLITOOLS_API_KEY: ${{ secrets.APPLITOOLS_API_KEY }}
APPLITOOLS_SERVER_URL: 'https://eyesapi.applitools.com'

View File

@@ -1,12 +1,15 @@
name: E2E
on: [push, pull_request]
on:
push:
pull_request:
merge_group:
permissions:
contents: read
jobs:
build:
e2e:
runs-on: ubuntu-latest
strategy:
fail-fast: false
@@ -21,22 +24,19 @@ jobs:
- name: Setup Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v3
# Need to skip setup if Cypress run is skipped, otherwise an error
# is thrown since the pnpm cache step fails
if: ${{ ( env.CYPRESS_RECORD_KEY != '' ) || ( matrix.containers == 1 ) }}
with:
cache: pnpm
node-version: ${{ matrix.node-version }}
# Install NPM dependencies, cache them correctly
# and run all Cypress tests
- name: Cypress run
uses: cypress-io/github-action@v4
uses: cypress-io/github-action@v6
id: cypress
# If CYPRESS_RECORD_KEY is set, run in parallel on all containers
# Otherwise (e.g. if running from fork), we run on a single container only
if: ${{ ( env.CYPRESS_RECORD_KEY != '' ) || ( matrix.containers == 1 ) }}
with:
start: pnpm run dev
start: pnpm run dev:coverage
wait-on: 'http://localhost:9000'
# Disable recording if we don't have an API key
# e.g. if this action was run from a fork
@@ -44,3 +44,27 @@ jobs:
parallel: ${{ secrets.CYPRESS_RECORD_KEY != '' }}
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
VITE_COVERAGE: true
CYPRESS_COVERAGE: true
CYPRESS_COMMIT: ${{ github.sha }}
- name: Check coverage files
run: |
ls -lh ./coverage
ls -lh ./coverage/cypress
- name: Upload Coverage to Codecov
uses: codecov/codecov-action@v3
with:
files: ./coverage/cypress/lcov.info
flags: e2e
name: mermaid-codecov
fail_ci_if_error: false
verbose: true
token: 6845cc80-77ee-4e17-85a1-026cd95e0766
- name: Upload Artifacts
uses: actions/upload-artifact@v3
if: ${{ failure() && steps.cypress.conclusion == 'failure' }}
with:
name: error-snapshots
path: cypress/snapshots/**/__diff_output__/*

49
.github/workflows/link-checker.yml vendored Normal file
View File

@@ -0,0 +1,49 @@
# This Link Checker is run on all documentation files once per week.
# references:
# - https://github.com/lycheeverse/lychee-action
# - https://github.com/lycheeverse/lychee
name: Link Checker
on:
push:
branches:
- develop
- master
pull_request:
branches:
- master
workflow_dispatch:
schedule:
# * is a special character in YAML so you have to quote this string
- cron: '30 8 * * *'
jobs:
link-checker:
runs-on: ubuntu-latest
permissions:
# lychee only uses the GITHUB_TOKEN to avoid rate-limiting
contents: read
steps:
- uses: actions/checkout@v3
- name: Restore lychee cache
uses: actions/cache@v3
with:
path: .lycheecache
key: cache-lychee-${{ github.sha }}
restore-keys: cache-lychee-
- name: Link Checker
uses: lycheeverse/lychee-action@v1.8.0
with:
args: >-
--config .github/lychee.toml
packages/mermaid/src/docs/**/*.md
README.md
README.zh-CN.md
fail: true
jobSummary: true
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}

View File

@@ -1,15 +1,17 @@
name: Lint
on:
push: {}
push:
merge_group:
pull_request:
types:
- opened
- synchronize
- ready_for_review
workflow_dispatch:
permissions:
contents: read
contents: write
jobs:
lint:
@@ -36,7 +38,62 @@ jobs:
CYPRESS_CACHE_FOLDER: .cache/Cypress
- name: Run Linting
run: pnpm run lint
shell: bash
run: |
if ! pnpm run lint; then
# print a nice error message on lint failure
ERROR_MESSAGE='Running `pnpm run lint` failed.'
ERROR_MESSAGE+=' Running `pnpm -w run lint:fix` may fix this issue. '
ERROR_MESSAGE+=" If this error doesn't occur on your local machine,"
ERROR_MESSAGE+=' make sure your packages are up-to-date by running `pnpm install`.'
ERROR_MESSAGE+=' You may also need to delete your prettier cache by running'
ERROR_MESSAGE+=' `rm ./node_modules/.cache/prettier/.prettier-cache`.'
echo "::error title=Lint failure::${ERROR_MESSAGE}"
# make sure to return an error exitcode so that GitHub actions shows a red-cross
exit 1
fi
- name: Verify `./src/config.type.ts` is in sync with `./src/schemas/config.schema.yaml`
shell: bash
run: |
if ! pnpm run --filter mermaid types:verify-config; then
ERROR_MESSAGE='Running `pnpm run --filter mermaid types:verify-config` failed.'
ERROR_MESSAGE+=' This should be fixed by running'
ERROR_MESSAGE+=' `pnpm run --filter mermaid types:build-config`'
ERROR_MESSAGE+=' on your local machine.'
echo "::error title=Lint failure::${ERROR_MESSAGE}"
# make sure to return an error exitcode so that GitHub actions shows a red-cross
exit 1
fi
- name: Verify no circular dependencies
working-directory: ./packages/mermaid
shell: bash
run: |
if ! pnpm run --filter mermaid checkCircle; then
ERROR_MESSAGE='Circular dependency detected.'
ERROR_MESSAGE+=' This should be fixed by removing the circular dependency.'
ERROR_MESSAGE+=' Run `pnpm run --filter mermaid checkCircle` on your local machine'
ERROR_MESSAGE+=' to see the circular dependency.'
echo "::error title=Lint failure::${ERROR_MESSAGE}"
# make sure to return an error exitcode so that GitHub actions shows a red-cross
exit 1
fi
- name: Verify Docs
id: verifyDocs
working-directory: ./packages/mermaid
continue-on-error: ${{ github.event_name == 'push' }}
run: pnpm run docs:verify
- name: Rebuild Docs
if: ${{ steps.verifyDocs.outcome == 'failure' && github.event_name == 'push' }}
working-directory: ./packages/mermaid
run: pnpm run docs:build
- name: Commit changes
uses: EndBug/add-and-commit@v9
if: ${{ steps.verifyDocs.outcome == 'failure' && github.event_name == 'push' }}
with:
message: 'Update docs'
add: 'docs/*'

View File

@@ -1,11 +1,15 @@
name: Validate PR Labeler Configuration
on:
push: {}
push:
paths:
- .github/workflows/pr-labeler-config-validator.yml
- .github/workflows/pr-labeler.yml
- .github/pr-labeler.yml
pull_request:
types:
- opened
- synchronize
- ready_for_review
paths:
- .github/workflows/pr-labeler-config-validator.yml
- .github/workflows/pr-labeler.yml
- .github/pr-labeler.yml
jobs:
pr-labeler:

View File

@@ -8,6 +8,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Label PR
uses: TimonVS/pr-labeler-action@v3
uses: TimonVS/pr-labeler-action@v4
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

59
.github/workflows/publish-docs.yml vendored Normal file
View File

@@ -0,0 +1,59 @@
name: Deploy Vitepress docs to Pages
on:
# Runs on pushes targeting the default branch
push:
branches:
- master
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow one concurrent deployment
concurrency:
group: 'pages'
cancel-in-progress: true
jobs:
# Build job
build-docs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: pnpm/action-setup@v2
- name: Setup Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: 18
- name: Install Packages
run: pnpm install --frozen-lockfile
- name: Setup Pages
uses: actions/configure-pages@v3
- name: Run Build
run: pnpm --filter mermaid run docs:build:vitepress
- name: Upload artifact
uses: actions/upload-pages-artifact@v1
with:
path: packages/mermaid/src/vitepress/.vitepress/dist
# Deployment job
deploy-docs:
environment:
name: github-pages
runs-on: ubuntu-latest
needs: build-docs
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2

View File

@@ -6,26 +6,34 @@ on:
- 'release/**'
jobs:
publish:
publish-preview:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: pnpm/action-setup@v2
- name: Setup Node.js
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: 18.x
- name: Install Yarn
run: npm i yarn --global
- name: Install Packages
run: |
pnpm install --frozen-lockfile
env:
CYPRESS_CACHE_FOLDER: .cache/Cypress
- name: Install Json
run: npm i json --global
- name: Install Packages
run: yarn install --frozen-lockfile
- name: Publish
working-directory: ./packages/mermaid
run: |
PREVIEW_VERSION=8
PREVIEW_VERSION=$(git log --oneline "origin/$GITHUB_REF_NAME" ^"origin/master" | wc -l)
VERSION=$(echo ${{github.ref}} | tail -c +20)-preview.$PREVIEW_VERSION
echo $VERSION
npm version --no-git-tag-version --allow-same-version $VERSION

View File

@@ -9,20 +9,23 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: fregante/setup-git-user@v1
- uses: fregante/setup-git-user@v2
- name: Setup Node.js
- uses: pnpm/action-setup@v2
# uses version from "packageManager" field in package.json
- name: Setup Node.js v18
uses: actions/setup-node@v3
with:
cache: pnpm
node-version: 18.x
- name: Install Yarn
run: npm i yarn --global
- name: Install Json
run: npm i json --global
- name: Install Packages
run: yarn install --frozen-lockfile
run: |
pnpm install --frozen-lockfile
npm i json --global
env:
CYPRESS_CACHE_FOLDER: .cache/Cypress
- name: Prepare release
run: |
@@ -31,7 +34,7 @@ jobs:
git checkout -t origin/release/$VERSION
npm version --no-git-tag-version --allow-same-version $VERSION
git add package.json
git commit -m "Bump version $VERSION"
git commit -nm "Bump version $VERSION"
git checkout -t origin/master
git merge -m "Release $VERSION" --no-ff release/$VERSION
git push --no-verify

View File

@@ -1,12 +1,12 @@
name: Unit Tests
on: [push, pull_request]
on: [push, pull_request, merge_group]
permissions:
contents: read
jobs:
build:
unit-test:
runs-on: ubuntu-latest
strategy:
matrix:
@@ -31,13 +31,22 @@ jobs:
- name: Run Unit Tests
run: |
pnpm run ci --coverage
pnpm test:coverage
- name: Upload Coverage to Coveralls
# it feels a bit weird to use @master, but that's what the docs use
# (coveralls also doesn't publish a @v1 we can use)
# https://github.com/marketplace/actions/coveralls-github-action
uses: coverallsapp/github-action@master
- name: Run ganttDb tests using California timezone
env:
# Makes sure that gantt db works even in a timezone that has daylight savings
# since some days have 25 hours instead of 24.
TZ: America/Los_Angeles
run: |
pnpm exec vitest run ./packages/mermaid/src/diagrams/gantt/ganttDb.spec.ts --coverage
- name: Upload Coverage to Codecov
uses: codecov/codecov-action@v3
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
flag-name: unit
files: ./coverage/vitest/lcov.info
flags: unit
name: mermaid-codecov
fail_ci_if_error: false
verbose: true
token: 6845cc80-77ee-4e17-85a1-026cd95e0766

View File

@@ -5,7 +5,7 @@ on:
workflow_dispatch:
jobs:
build:
update-browser-list:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

14
.gitignore vendored
View File

@@ -3,8 +3,10 @@
node_modules/
coverage/
.idea/
.pnpm-store/
dist
v8-compile-cache-0
yarn-error.log
.npmrc
@@ -32,6 +34,16 @@ cypress/snapshots/
.eslintcache
.tsbuildinfo
tsconfig.tsbuildinfo
knsv*.html
knsv*.html
local*.html
stats/
**/user-avatars/*
**/contributor-names.json
.pnpm-store
.nyc_output
demos/dev/**
!/demos/dev/example.html
!/demos/dev/reload.js

View File

@@ -1,6 +0,0 @@
{
"packages/mermaid/src/docs/**": ["pnpm run docs:build --git"],
"packages/mermaid/src/docs.mts": ["pnpm run docs:build --git"],
"*.{ts,js,json,html,md,mts}": ["eslint --fix", "prettier --write"],
"*.jison": ["pnpm run lint:jison"]
}

11
.lintstagedrc.mjs Normal file
View File

@@ -0,0 +1,11 @@
export default {
'!(docs/**/*)*.{ts,js,html,md,mts}': [
'eslint --cache --cache-strategy content --fix',
// don't cache prettier yet, since we use `prettier-plugin-jsdoc`,
// and prettier doesn't invalidate cache on plugin updates"
// https://prettier.io/docs/en/cli.html#--cache
'prettier --write',
],
'cSpell.json': ['ts-node-esm scripts/fixCSpell.ts'],
'**/*.jison': ['pnpm -w run lint:jison'],
};

2
.npmrc
View File

@@ -1,2 +1,2 @@
auto-install-peers=true
strict-peer-dependencies=false
strict-peer-dependencies=false

View File

@@ -1,6 +0,0 @@
version: 2
snapshot:
widths:
- 1280
discovery:
disable-cache: true

View File

@@ -3,4 +3,10 @@ cypress/platform/xss3.html
.cache
coverage
# Autogenerated by PNPM
pnpm-lock.yaml
pnpm-lock.yaml
stats
**/.vitepress/components.d.ts
**/.vitepress/cache
.nyc_output
# Autogenerated by `pnpm run --filter mermaid types:build-config`
packages/mermaid/src/config.type.ts

View File

@@ -1,15 +0,0 @@
{
"ecmaVersion": 6,
"libs": ["browser"],
"loadEagerly": [],
"dontLoad": ["node_modules/**"],
"plugins": {
"modules": {},
"es_modules": {},
"node": {},
"doc_comment": {
"fullDocs": true,
"strong": true
}
}
}

View File

@@ -1,35 +1,39 @@
import { build, InlineConfig } from 'vite';
import { build, InlineConfig, type PluginOption } from 'vite';
import { resolve } from 'path';
import { fileURLToPath } from 'url';
import jisonPlugin from './jisonPlugin.js';
import pkg from '../package.json' assert { type: 'json' };
import jsonSchemaPlugin from './jsonSchemaPlugin.js';
import typescript from '@rollup/plugin-typescript';
import { visualizer } from 'rollup-plugin-visualizer';
import type { TemplateType } from 'rollup-plugin-visualizer/dist/plugin/template-types.js';
import istanbul from 'vite-plugin-istanbul';
import { packageOptions } from '../.build/common.js';
const { dependencies } = pkg;
const visualize = process.argv.includes('--visualize');
const watch = process.argv.includes('--watch');
const mermaidOnly = process.argv.includes('--mermaid');
const coverage = process.env.VITE_COVERAGE === 'true';
const __dirname = fileURLToPath(new URL('.', import.meta.url));
const sourcemap = false;
type OutputOptions = Exclude<
Exclude<InlineConfig['build'], undefined>['rollupOptions'],
undefined
>['output'];
const packageOptions = {
mermaid: {
name: 'mermaid',
packageName: 'mermaid',
file: 'mermaid.ts',
},
'mermaid-mindmap': {
name: 'mermaid-mindmap',
packageName: 'mermaid-mindmap',
file: 'detector.ts',
},
// 'mermaid-example-diagram-detector': {
// name: 'mermaid-example-diagram-detector',
// packageName: 'mermaid-example-diagram',
// file: 'detector.ts',
// },
const visualizerOptions = (packageName: string, core = false): PluginOption[] => {
if (packageName !== 'mermaid' || !visualize) {
return [];
}
return ['network', 'treemap', 'sunburst'].map(
(chartType) =>
visualizer({
filename: `./stats/${chartType}${core ? '.core' : ''}.html`,
template: chartType as TemplateType,
gzipSize: true,
brotliSize: true,
}) as PluginOption,
);
};
interface BuildOptions {
@@ -40,39 +44,18 @@ interface BuildOptions {
}
export const getBuildConfig = ({ minify, core, watch, entryName }: BuildOptions): InlineConfig => {
const external = ['require', 'fs', 'path'];
const external: (string | RegExp)[] = ['require', 'fs', 'path'];
console.log(entryName, packageOptions[entryName]);
const { name, file, packageName } = packageOptions[entryName];
let output: OutputOptions = [
{
name,
format: 'esm',
sourcemap: true,
sourcemap,
entryFileNames: `${name}.esm${minify ? '.min' : ''}.mjs`,
},
{
name,
format: 'umd',
sourcemap: true,
entryFileNames: `${name}${minify ? '.min' : ''}.js`,
},
];
if (core) {
// Core build is used to generate file without bundled dependencies.
// This is used by downstream projects to bundle dependencies themselves.
external.push(...Object.keys(dependencies));
// This needs to be an array. Otherwise vite will build esm & umd with same name and overwrite esm with umd.
output = [
{
name,
format: 'esm',
sourcemap: true,
entryFileNames: `${name}.core.mjs`,
},
];
}
const config: InlineConfig = {
configFile: false,
build: {
@@ -91,18 +74,26 @@ export const getBuildConfig = ({ minify, core, watch, entryName }: BuildOptions)
},
},
resolve: {
extensions: ['.jison', '.js', '.ts', '.json'],
extensions: [],
},
plugins: [jisonPlugin()],
plugins: [
jisonPlugin(),
jsonSchemaPlugin(), // handles `.schema.yaml` files
// @ts-expect-error According to the type definitions, rollup plugins are incompatible with vite
typescript({ compilerOptions: { declaration: false } }),
istanbul({
exclude: ['node_modules', 'test/', '__mocks__'],
extension: ['.js', '.ts'],
requireEnv: true,
forceBuildInstrument: coverage,
}),
...visualizerOptions(packageName, core),
],
};
if (watch && config.build) {
config.build.watch = {
include: [
'packages/mermaid-mindmap/src/**',
'packages/mermaid/src/**',
// 'packages/mermaid-example-diagram/src/**',
],
include: ['packages/mermaid-example-diagram/src/**', 'packages/mermaid/src/**'],
};
}
@@ -110,29 +101,25 @@ export const getBuildConfig = ({ minify, core, watch, entryName }: BuildOptions)
};
const buildPackage = async (entryName: keyof typeof packageOptions) => {
return Promise.allSettled([
build(getBuildConfig({ minify: false, entryName })),
build(getBuildConfig({ minify: 'esbuild', entryName })),
build(getBuildConfig({ minify: false, core: true, entryName })),
]);
await build(getBuildConfig({ minify: false, entryName }));
};
const main = async () => {
const packageNames = Object.keys(packageOptions) as (keyof typeof packageOptions)[];
for (const pkg of packageNames) {
if (mermaidOnly && pkg !== 'mermaid') {
continue;
}
for (const pkg of packageNames.filter((pkg) => !mermaidOnly || pkg === 'mermaid')) {
await buildPackage(pkg);
}
};
if (watch) {
build(getBuildConfig({ minify: false, watch, core: true, entryName: 'mermaid' }));
build(getBuildConfig({ minify: false, watch, core: false, entryName: 'mermaid' }));
if (!mermaidOnly) {
build(getBuildConfig({ minify: false, watch, entryName: 'mermaid-mindmap' }));
// build(getBuildConfig({ minify: false, watch, entryName: 'mermaid-example-diagram' }));
build(getBuildConfig({ minify: false, watch, entryName: 'mermaid-example-diagram' }));
build(getBuildConfig({ minify: false, watch, entryName: 'mermaid-zenuml' }));
}
} else if (visualize) {
await build(getBuildConfig({ minify: false, core: true, entryName: 'mermaid' }));
await build(getBuildConfig({ minify: false, core: false, entryName: 'mermaid' }));
} else {
void main();
}

View File

@@ -1,10 +1,10 @@
import { transformJison } from './jisonTransformer.js';
import { transformJison } from '../.build/jisonTransformer.js';
const fileRegex = /\.(jison)$/;
export default function jison() {
return {
name: 'jison',
transform(src: string, id: string) {
if (fileRegex.test(id)) {
return {

28
.vite/jsonSchemaPlugin.ts Normal file
View File

@@ -0,0 +1,28 @@
import { PluginOption } from 'vite';
import { getDefaults, getSchema, loadSchema } from '../.build/jsonSchema.js';
/**
* Vite plugin that handles JSON Schemas saved as a `.schema.yaml` file.
*
* Use `my-example.schema.yaml?only-defaults=true` to only load the default values.
*/
export default function jsonSchemaPlugin(): PluginOption {
return {
name: 'json-schema-plugin',
transform(src: string, id: string) {
const idAsUrl = new URL(id, 'file:///');
if (!idAsUrl.pathname.endsWith('schema.yaml')) {
return;
}
const jsonSchema = loadSchema(src, idAsUrl.pathname);
return {
code: idAsUrl.searchParams.get('only-defaults')
? getDefaults(jsonSchema)
: getSchema(jsonSchema),
map: null, // no source map
};
},
};
}

View File

@@ -1,14 +1,6 @@
import express, { NextFunction, Request, Response } from 'express';
import express from 'express';
import cors from 'cors';
import { createServer as createViteServer } from 'vite';
// import { getBuildConfig } from './build';
const cors = (req: Request, res: Response, next: NextFunction) => {
res.header('Access-Control-Allow-Origin', '*');
res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE');
res.header('Access-Control-Allow-Headers', 'Content-Type');
next();
};
async function createServer() {
const app = express();
@@ -16,14 +8,15 @@ async function createServer() {
// Create Vite server in middleware mode
const vite = await createViteServer({
configFile: './vite.config.ts',
mode: 'production',
server: { middlewareMode: true },
appType: 'custom', // don't include Vite's default HTML handling middlewares
appType: 'custom', // don't include Vite's default HTML handling middleware
});
app.use(cors);
app.use(cors());
app.use(express.static('./packages/mermaid/dist'));
app.use(express.static('./packages/mermaid-zenuml/dist'));
app.use(express.static('./packages/mermaid-example-diagram/dist'));
app.use(express.static('./packages/mermaid-mindmap/dist'));
app.use(vite.middlewares);
app.use(express.static('demos'));
app.use(express.static('cypress/platform'));
@@ -33,5 +26,4 @@ async function createServer() {
});
}
// build(getBuildConfig({ minify: false, watch: true }));
createServer();

View File

@@ -1,6 +0,0 @@
{
"extends": "../tsconfig.json",
"compilerOptions": {
"module": "ES2022"
}
}

11
.vscode/launch.json vendored
View File

@@ -12,6 +12,17 @@
"args": ["run", "${relativeFile}"],
"smartStep": true,
"console": "integratedTerminal"
},
{
"name": "Docs generation",
"type": "node",
"request": "launch",
"args": ["scripts/docs.cli.mts"],
"runtimeArgs": ["--loader", "ts-node/esm"],
"cwd": "${workspaceRoot}/packages/mermaid",
"skipFiles": ["<node_internals>/**", "**/node_modules/**"],
"smartStep": true,
"internalConsoleOptions": "openOnSessionStart"
}
]
}

View File

@@ -1,6 +1,105 @@
# Change Log
# Changelog
// TODO: Populate changelog
## [10.0.0](https://github.com/mermaid-js/mermaid/releases/tag/v10.0.0)
### Mermaid is ESM only!
We've dropped CJS support. So, you will have to update your import scripts as follows.
```html
<script type="module">
import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.esm.min.mjs';
mermaid.initialize({ startOnLoad: true });
</script>
```
You can keep using v9 by adding the `@9` in the CDN URL.
```diff
- <script src="https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.js"></script>
+ <script src="https://cdn.jsdelivr.net/npm/mermaid@9/dist/mermaid.js"></script>
```
### mermaid.render is async and doesn't accept callbacks
```js
// < v10
mermaid.render('id', 'graph TD;\nA-->B', (svg, bindFunctions) => {
element.innerHTML = svg;
if (bindFunctions) {
bindFunctions(element);
}
});
// Shorter syntax
if (bindFunctions) {
bindFunctions(element);
}
// can be replaced with the `?.` shorthand
bindFunctions?.(element);
// >= v10 with async/await
const { svg, bindFunctions } = await mermaid.render('id', 'graph TD;\nA-->B');
element.innerHTML = svg;
bindFunctions?.(element);
// >= v10 with promise.then
mermaid.render('id', 'graph TD;A-->B').then(({ svg, bindFunctions }) => {
element.innerHTML = svg;
bindFunctions?.(element);
});
```
### mermaid.parse is async and ParseError is removed
```js
// < v10
mermaid.parse(text, parseError);
//>= v10
await mermaid.parse(text).catch(parseError);
// or
try {
await mermaid.parse(text);
} catch (err) {
parseError(err);
}
```
### Init deprecated and InitThrowsErrors removed
The config passed to `init` was not being used eariler.
It will now be used.
The `init` function is deprecated and will be removed in the next major release.
init currently works as a wrapper to `initialize` and `run`.
```js
// < v10
mermaid.init(config, selector, cb);
//>= v10
mermaid.initialize(config);
mermaid.run({
querySelector: selector,
postRenderCallback: cb,
suppressErrors: true,
});
```
```js
// < v10
mermaid.initThrowsErrors(config, selector, cb);
//>= v10
mermaid.initialize(config);
mermaid.run({
querySelector: selector,
postRenderCallback: cb,
suppressErrors: false,
});
```
// TODO: Populate changelog pre v10
- Config has a lot of changes
- globalReset resets to `defaultConfig` instead of current config. Use `reset` instead.

16
CITATION.cff Normal file
View File

@@ -0,0 +1,16 @@
cff-version: 1.2.0
title: 'Mermaid: Generate diagrams from markdown-like text'
message: >-
If you use this software, please cite it using the metadata from this file.
type: software
authors:
- family-names: Sveidqvist
given-names: Knut
- name: 'Contributors to Mermaid'
repository-code: 'https://github.com/mermaid-js/mermaid'
date-released: 2014-12-02
url: 'https://mermaid.js.org/'
abstract: >-
JavaScript based diagramming and charting tool that renders Markdown-inspired
text definitions to create and modify diagrams dynamically.
license: MIT

View File

@@ -1,14 +1,10 @@
# Contributing
So you want to help? That's great!
Please read in detail about how to contribute documentation and code on the [Mermaid documentation site.](https://mermaid-js.github.io/mermaid/#/development)
![Happy people jumping with excitement](https://media.giphy.com/media/BlVnrxJgTGsUw/giphy.gif)
---
Here are a few things to know to get you started on the right path.
Below link will help you making a copy of the repository in your local system.
https://docs.github.com/en/get-started/quickstart/fork-a-repo
# Mermaid contribution cheat-sheet
## Requirements
@@ -18,148 +14,63 @@ https://docs.github.com/en/get-started/quickstart/fork-a-repo
## 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
```
## Committing code
We make all changes via pull requests. As we have many pull requests from developers new to mermaid, the current approach is to have _knsv, Knut Sveidqvist_ as a main reviewer of changes and merging pull requests. More precisely like this:
- Large changes reviewed by knsv or other developer asked to review by knsv
- Smaller low-risk changes like dependencies, documentation, etc. can be merged by active collaborators
- Documentation (updates to the `src/docs` folder is also allowed via direct commits)
To commit code, create a branch, let it start with the type like feature or bug followed by the issue number for reference and some describing text.
One example:
`feature/945_state_diagrams`
Another:
`bug/123_nasty_bug_branch`
## Committing documentation
Less strict here, it is OK to commit directly in the `develop` branch if you are a collaborator.
The documentation is written in **Markdown**. 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).
### Documentation source files are in [`/packages/mermaid/src/docs`](packages/mermaid/src/docs)
The source files for the project documentation are located in the [`/packages/mermaid/src/docs`](packages/mermaid/src/docs) directory. This is where you should make changes.
The files under `/packages/mermaid/src/docs` are processed to generate the published documentation, and the resulting files are put into the `/docs` directory.
```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"]
## 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`_**
### The official documentation site
**[The mermaid documentation site](https://mermaid-js.github.io/mermaid/) is powered by [Docsify](https://docsify.js.org), a simple documentation site generator.**
If you want to preview the whole documentation site on your machine, you need to install `docsify-cli`:
```sh
$ npm i docsify-cli -g
```
If you are more familiar with Yarn, you can use the following command:
```sh
$ yarn global add docsify-cli
```
The above command will install `docsify-cli` globally.
If the installation is successful, the command `docsify` will be available in your `PATH`.
You can now run the following command to serve the documentation site:
```sh
$ docsify serve docs
```
Once the local HTTP server is listening, you can point your browser at http://localhost:3000.
## Branching
Going forward we will use a git flow inspired approach to branching. So development is done in develop, to do the development in the develop.
Once development is done we branch a release branch from develop for testing.
Once the release happens we merge the release branch to master and kill the release branch.
This means... **branch off your pull request from develop**
## Content of a pull request
A new feature has been born. Great! But without the steps below it might just ... fade away ...
### **Add unit tests for the parsing part**
This is important so that, if someone else does a change to the grammar that does not know about this great feature, gets notified early on when that change breaks the parser. Another important aspect is that without proper parsing tests refactoring is pretty much impossible.
### **Add e2e tests**
This tests the rendering and visual appearance of the diagram. 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, run `pnpm run dev` to start the dev server, after that start cypress by running `pnpm exec cypress open` in the mermaid folder.
The rendering tests are very straightforward to create. There is a function imgSnapshotTest. This function takes a diagram in text form, the mermaid options and 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 for review it if it differs.
This is what a rendering test looks like:
```javascript
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');
});
```
### **Add documentation for it**
Finally, if it is not in the documentation, no one will know about it and then **no one will use it**. Wouldn't that be sad? With all the effort that was put into the feature?
The source files for documentation are in `/packages/mermaid/src/docs` and are written in markdown. Just pick the right section and start typing. See the [Committing Documentation](#committing-documentation) section for more about how the documentation is generated.
#### Adding to or changing the documentation organization
If you want to add a new section or change the organization (structure), then you need to make sure to **change the side navigation** in `src/docs/_sidebar.md`.
When changes are committed and then released, they become part of the `master` branch and become part of the published documentation on https://mermaid-js.github.io/mermaid/
## 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)
![A superhero wishing you good luck](https://media.giphy.com/media/l49JHz7kJvl6MCj3G/giphy.gif)

126
README.md
View File

@@ -1,25 +1,37 @@
# mermaid
<p align="center">
<img src="https://raw.githubusercontent.com/mermaid-js/mermaid/develop/docs/public/favicon.svg" height="150">
</p>
<h1 align="center">
Mermaid
</h1>
<p align="center">
Generate diagrams from markdown-like text.
<p>
<p align="center">
<a href="https://www.npmjs.com/package/mermaid"><img src="https://img.shields.io/npm/v/mermaid?color=ff3670&label="></a>
<p>
[![Build CI Status](https://github.com/mermaid-js/mermaid/actions/workflows/build.yml/badge.svg)](https://github.com/mermaid-js/mermaid/actions/workflows/build.yml) [![NPM](https://img.shields.io/npm/v/mermaid)](https://www.npmjs.com/package/mermaid) [![Coverage Status](https://coveralls.io/repos/github/mermaid-js/mermaid/badge.svg?branch=master)](https://coveralls.io/github/mermaid-js/mermaid?branch=master) [![CDN Status](https://img.shields.io/jsdelivr/npm/hm/mermaid)](https://www.jsdelivr.com/package/npm/mermaid) [![NPM](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) [![Twitter Follow](https://img.shields.io/twitter/follow/mermaidjs_?style=social)](https://twitter.com/mermaidjs_)
<p align="center">
<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>
</p>
<p align="center">
<a href="./README.zh-CN.md">简体中文</a>
</p>
# Whoa, what's going on here?
<br>
<br>
We are transforming the Mermaid repository to a so called mono-repo. This is a part of the effort to decouple the diagrams from the core of mermaid. This will:
- Make it possible to select which diagrams to include on your site
- Open up for lazy loading
- Make it possible to add diagrams from outside of the Mermaid repository
- Separate the release flow between different diagrams and the Mermaid core
As such be aware of some changes..
# We use pnpm now
# The source code has moved
It is now located in the src folder for each respective package located as subfolders in packages.
English | [简体中文](./README.zh-CN.md)
[![NPM](https://img.shields.io/npm/v/mermaid)](https://www.npmjs.com/package/mermaid)
[![Build CI Status](https://github.com/mermaid-js/mermaid/actions/workflows/build.yml/badge.svg)](https://github.com/mermaid-js/mermaid/actions/workflows/build.yml)
[![npm minified gzipped bundle size](https://img.shields.io/bundlephobia/minzip/mermaid)](https://bundlephobia.com/package/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)
[![Twitter Follow](https://img.shields.io/badge/Social-mermaidjs__-blue?style=social&logo=twitter)](https://twitter.com/mermaidjs_)
<img src="./img/header.png" alt="" />
@@ -27,7 +39,7 @@ English | [简体中文](./README.zh-CN.md)
**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/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.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>
## About
@@ -43,14 +55,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/Tutorials.md) has video tutorials.
Use Mermaid with your favorite applications, check out the list of [Integrations and Usages of Mermaid](./docs/integrations.md).
[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.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](./docs/integrations.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](./docs/ecosystem/integrations.md).
For a more detailed introduction to Mermaid and some of its more basic uses, look to the [Beginner's Guide](./docs/n00b-overview.md), [Usage](./docs/usage.md) and [Tutorials](./docs/Tutorials.md).
🌐 [CDN](https://unpkg.com/mermaid/) | 📖 [Documentation](https://mermaidjs.github.io) | 🙌 [Contribution](https://github.com/mermaid-js/mermaid/blob/develop/CONTRIBUTING.md) | 📜 [Changelog](./docs/CHANGELOG.md)
For a more detailed introduction to Mermaid and some of its more basic uses, look to the [Beginner's Guide](./docs/community/n00b-overview.md), [Usage](./docs/config/usage.md) and [Tutorials](./docs/config/Tutorials.md).
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.
@@ -155,6 +165,13 @@ class Class10 {
int id
size()
}
namespace Namespace01 {
class Class11
class Class12 {
int id
size()
}
}
```
```mermaid
@@ -174,6 +191,13 @@ class Class10 {
int id
size()
}
namespace Namespace01 {
class Class11
class Class12 {
int id
size()
}
}
```
### 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>]
@@ -216,6 +240,44 @@ 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>]
```
gantt
title Git Issues - days since last update
dateFormat X
axisFormat %s
section Issue19062
71 : 0, 71
section Issue19401
36 : 0, 36
section Issue193
34 : 0, 34
section Issue7441
9 : 0, 9
section Issue1300
5 : 0, 5
```
```mermaid
gantt
title Git Issues - days since last update
dateFormat X
axisFormat %s
section Issue19062
71 : 0, 71
section Issue19401
36 : 0, 36
section Issue193
34 : 0, 34
section Issue7441
9 : 0, 9
section Issue1300
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>]
```
@@ -324,7 +386,7 @@ Update version number in `package.json`.
npm publish
```
The above command generates files into the `dist` folder and publishes them to npmjs.org.
The above command generates files into the `dist` folder and publishes them to <https://www.npmjs.com>.
## Related projects
@@ -340,7 +402,7 @@ Detailed information about how to contribute can be found in the [contribution g
## Security and safe diagrams
For public sites, it can be precarious to retrieve text from users on the internet, storing that content for presentation in a browser at a later stage. The reason is that the user content can contain embedded malicious scripts that will run when the data is presented. For Mermaid this is a risk, specially as mermaid diagrams contain many characters that are used in html which makes the standard sanitation unusable as it also breaks the diagrams. We still make an effort to sanitise the incoming code and keep refining the process but it is hard to guarantee that there are no loop holes.
For public sites, it can be precarious to retrieve text from users on the internet, storing that content for presentation in a browser at a later stage. The reason is that the user content can contain embedded malicious scripts that will run when the data is presented. For Mermaid this is a risk, specially as mermaid diagrams contain many characters that are used in html which makes the standard sanitation unusable as it also breaks the diagrams. We still make an effort to sanitize the incoming code and keep refining the process but it is hard to guarantee that there are no loop holes.
As an extra level of security for sites with external users we are happy to introduce a new security level in which the diagram is rendered in a sandboxed iframe preventing javascript in the code from being executed. This is a great step forward for better security.
@@ -348,13 +410,17 @@ _Unfortunately you can not have a cake and eat it at the same time which in this
## Reporting vulnerabilities
To report a vulnerability, please e-mail security@mermaid.live with a description of the issue, the steps you took to create the issue, affected versions, and if known, mitigations for the issue.
To report a vulnerability, please e-mail <security@mermaid.live> with a description of the issue, the steps you took to create the issue, affected versions, and if known, mitigations for the issue.
## Appreciation
A quick note from Knut Sveidqvist:
> _Many thanks to the [d3](https://d3js.org/) and [dagre-d3](https://github.com/cpettitt/dagre-d3) projects for providing the graphical layout and drawing libraries!_ >_Thanks also to the [js-sequence-diagram](https://bramp.github.io/js-sequence-diagrams) project for usage of the grammar for the sequence diagrams. Thanks to Jessica Peter for inspiration and starting point for gantt rendering._ >_Thank you to [Tyler Long](https://github.com/tylerlong) who has been a collaborator since April 2017._
> _Many thanks to the [d3](https://d3js.org/) and [dagre-d3](https://github.com/cpettitt/dagre-d3) projects for providing the graphical layout and drawing libraries!_
>
> _Thanks also to the [js-sequence-diagram](https://bramp.github.io/js-sequence-diagrams) project for usage of the grammar for the sequence diagrams. Thanks to Jessica Peter for inspiration and starting point for gantt rendering._
>
> _Thank you to [Tyler Long](https://github.com/tylerlong) who has been a collaborator since April 2017._
>
> _Thank you to the ever-growing list of [contributors](https://github.com/knsv/mermaid/graphs/contributors) that brought the project this far!_

View File

@@ -1,8 +1,37 @@
# mermaid
<p align="center">
<img src="https://raw.githubusercontent.com/mermaid-js/mermaid/develop/docs/public/favicon.svg" height="150">
</p>
<h1 align="center">
Mermaid
</h1>
<p align="center">
通过解析类 Markdown 的文本语法来实现图表的创建和动态修改。
<p>
<p align="center">
<a href="https://www.npmjs.com/package/mermaid"><img src="https://img.shields.io/npm/v/mermaid?color=ff3670&label="></a>
<p>
[![Build CI Status](https://github.com/mermaid-js/mermaid/actions/workflows/build.yml/badge.svg)](https://github.com/mermaid-js/mermaid/actions/workflows/build.yml) [![NPM](https://img.shields.io/npm/v/mermaid)](https://www.npmjs.com/package/mermaid) [![Coverage Status](https://coveralls.io/repos/github/mermaid-js/mermaid/badge.svg?branch=master)](https://coveralls.io/github/mermaid-js/mermaid?branch=master) [![CDN Status](https://img.shields.io/jsdelivr/npm/hm/mermaid)](https://www.jsdelivr.com/package/npm/mermaid) [![NPM](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) [![Twitter Follow](https://img.shields.io/twitter/follow/mermaidjs_?style=social)](https://twitter.com/mermaidjs_)
<p align="center">
<a href="https://mermaid.live/"><b>Live Editor!</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>
</p>
<p align="center">
<a href="./README.md">English</a>
</p>
[English](./README.md) | 简体中文
<br>
<br>
[![NPM](https://img.shields.io/npm/v/mermaid)](https://www.npmjs.com/package/mermaid)
[![Build CI Status](https://github.com/mermaid-js/mermaid/actions/workflows/build.yml/badge.svg)](https://github.com/mermaid-js/mermaid/actions/workflows/build.yml)
[![npm minified gzipped bundle size](https://img.shields.io/bundlephobia/minzip/mermaid)](https://bundlephobia.com/package/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)
[![Twitter Follow](https://img.shields.io/badge/Social-mermaidjs__-blue?style=social&logo=twitter)](https://twitter.com/mermaidjs_)
<img src="./img/header.png" alt="" />
@@ -10,7 +39,7 @@
**感谢所有参与进来提交 PR解答疑问的人们! 🙏**
<a href="https://mermaid-js.github.io/mermaid/landing/"><img src="https://github.com/mermaid-js/mermaid/blob/master/docs/img/book-banner-pre-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.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>
## 关于 Mermaid
@@ -24,11 +53,9 @@ Mermaid 是一个基于 Javascript 的图表绘制工具,通过解析类 Markd
Mermaid 通过允许用户创建便于修改的图表来解决这一难题,它也可以作为生产脚本(或其他代码)的一部分。<br/>
<br/>
Mermaid 甚至能让非程序员也能通过 [Mermaid Live Editor](https://mermaid.live/) 轻松创建详细的图表。<br/>
你可以访问 [教程](./docs/Tutorials.md) 来查看 Live Editor 的视频教程,也可以查看 [Mermaid 的集成和使用](./docs/integrations.md) 这个清单来检查你的文档工具是否已经集成了 Mermaid 支持。
你可以访问 [教程](./docs/config/Tutorials.md) 来查看 Live Editor 的视频教程,也可以查看 [Mermaid 的集成和使用](./docs/ecosystem/integrations.md) 这个清单来检查你的文档工具是否已经集成了 Mermaid 支持。
如果想要查看关于 Mermaid 更详细的介绍及基础使用方式,可以查看 [入门指引](./docs/n00b-overview.md), [用法](./docs/usage.md) 和 [教程](./docs/Tutorials.md).
🌐 [CDN](https://unpkg.com/mermaid/) | 📖 [文档](https://mermaidjs.github.io) | 🙌 [贡献](https://github.com/mermaid-js/mermaid/blob/develop/CONTRIBUTING.md) | 📜 [更新日志](./docs/CHANGELOG.md)
如果想要查看关于 Mermaid 更详细的介绍及基础使用方式,可以查看 [入门指引](./docs/community/n00b-overview.md), [用法](./docs/config/usage.md) 和 [教程](./docs/config/Tutorials.md).
<!-- </Main description> -->
@@ -39,7 +66,7 @@ Mermaid 甚至能让非程序员也能通过 [Mermaid Live Editor](https://merma
<table>
<!-- <Flowchart> -->
### 流程图 [<a href="https://mermaid-js.github.io/mermaid/#/flowchart">文档</a> - <a href="https://mermaidjs.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoiZ3JhcGggVERcbiAgICBBW0hhcmRdIC0tPnxUZXh0fCBCKFJvdW5kKVxuICAgIEIgLS0-IEN7RGVjaXNpb259XG4gICAgQyAtLT58T25lfCBEW1Jlc3VsdCAxXVxuICAgIEMgLS0-fFR3b3wgRVtSZXN1bHQgMl0iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
### 流程图 [<a href="https://mermaid-js.github.io/mermaid/#/flowchart">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiZ3JhcGggVERcbiAgICBBW0hhcmRdIC0tPnxUZXh0fCBCKFJvdW5kKVxuICAgIEIgLS0-IEN7RGVjaXNpb259XG4gICAgQyAtLT58T25lfCBEW1Jlc3VsdCAxXVxuICAgIEMgLS0-fFR3b3wgRVtSZXN1bHQgMl0iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
```
flowchart LR
@@ -57,7 +84,7 @@ C -->|One| D[Result 1]
C -->|Two| E[Result 2]
```
### 时序图 [<a href="https://mermaid-js.github.io/mermaid/#/sequenceDiagram">文档</a> - <a href="https://mermaidjs.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG5BbGljZS0-PkpvaG46IEhlbGxvIEpvaG4sIGhvdyBhcmUgeW91P1xubG9vcCBIZWFsdGhjaGVja1xuICAgIEpvaG4tPj5Kb2huOiBGaWdodCBhZ2FpbnN0IGh5cG9jaG9uZHJpYVxuZW5kXG5Ob3RlIHJpZ2h0IG9mIEpvaG46IFJhdGlvbmFsIHRob3VnaHRzIVxuSm9obi0tPj5BbGljZTogR3JlYXQhXG5Kb2huLT4-Qm9iOiBIb3cgYWJvdXQgeW91P1xuQm9iLS0-PkpvaG46IEpvbGx5IGdvb2QhIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
### 时序图 [<a href="https://mermaid-js.github.io/mermaid/#/sequenceDiagram">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG5BbGljZS0-PkpvaG46IEhlbGxvIEpvaG4sIGhvdyBhcmUgeW91P1xubG9vcCBIZWFsdGhjaGVja1xuICAgIEpvaG4tPj5Kb2huOiBGaWdodCBhZ2FpbnN0IGh5cG9jaG9uZHJpYVxuZW5kXG5Ob3RlIHJpZ2h0IG9mIEpvaG46IFJhdGlvbmFsIHRob3VnaHRzIVxuSm9obi0tPj5BbGljZTogR3JlYXQhXG5Kb2huLT4-Qm9iOiBIb3cgYWJvdXQgeW91P1xuQm9iLS0-PkpvaG46IEpvbGx5IGdvb2QhIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
```
sequenceDiagram
@@ -83,7 +110,7 @@ John->>Bob: How about you?
Bob-->>John: Jolly good!
```
### 甘特图 [<a href="https://mermaid-js.github.io/mermaid/#/gantt">文档</a> - <a href="https://mermaidjs.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoiZ2FudHRcbnNlY3Rpb24gU2VjdGlvblxuQ29tcGxldGVkIDpkb25lLCAgICBkZXMxLCAyMDE0LTAxLTA2LDIwMTQtMDEtMDhcbkFjdGl2ZSAgICAgICAgOmFjdGl2ZSwgIGRlczIsIDIwMTQtMDEtMDcsIDNkXG5QYXJhbGxlbCAxICAgOiAgICAgICAgIGRlczMsIGFmdGVyIGRlczEsIDFkXG5QYXJhbGxlbCAyICAgOiAgICAgICAgIGRlczQsIGFmdGVyIGRlczEsIDFkXG5QYXJhbGxlbCAzICAgOiAgICAgICAgIGRlczUsIGFmdGVyIGRlczMsIDFkXG5QYXJhbGxlbCA0ICAgOiAgICAgICAgIGRlczYsIGFmdGVyIGRlczQsIDFkIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
### 甘特图 [<a href="https://mermaid-js.github.io/mermaid/#/gantt">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoiZ2FudHRcbnNlY3Rpb24gU2VjdGlvblxuQ29tcGxldGVkIDpkb25lLCAgICBkZXMxLCAyMDE0LTAxLTA2LDIwMTQtMDEtMDhcbkFjdGl2ZSAgICAgICAgOmFjdGl2ZSwgIGRlczIsIDIwMTQtMDEtMDcsIDNkXG5QYXJhbGxlbCAxICAgOiAgICAgICAgIGRlczMsIGFmdGVyIGRlczEsIDFkXG5QYXJhbGxlbCAyICAgOiAgICAgICAgIGRlczQsIGFmdGVyIGRlczEsIDFkXG5QYXJhbGxlbCAzICAgOiAgICAgICAgIGRlczUsIGFmdGVyIGRlczMsIDFkXG5QYXJhbGxlbCA0ICAgOiAgICAgICAgIGRlczYsIGFmdGVyIGRlczQsIDFkIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
```
gantt
@@ -107,7 +134,7 @@ gantt
Parallel 4 : des6, after des4, 1d
```
### 类图 [<a href="https://mermaid-js.github.io/mermaid/#/classDiagram">文档</a> - <a href="https://mermaidjs.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoiY2xhc3NEaWFncmFtXG5DbGFzczAxIDx8LS0gQXZlcnlMb25nQ2xhc3MgOiBDb29sXG48PGludGVyZmFjZT4-IENsYXNzMDFcbkNsYXNzMDkgLS0-IEMyIDogV2hlcmUgYW0gaT9cbkNsYXNzMDkgLS0qIEMzXG5DbGFzczA5IC0tfD4gQ2xhc3MwN1xuQ2xhc3MwNyA6IGVxdWFscygpXG5DbGFzczA3IDogT2JqZWN0W10gZWxlbWVudERhdGFcbkNsYXNzMDEgOiBzaXplKClcbkNsYXNzMDEgOiBpbnQgY2hpbXBcbkNsYXNzMDEgOiBpbnQgZ29yaWxsYVxuY2xhc3MgQ2xhc3MxMCB7XG4gID4-c2VydmljZT4-XG4gIGludCBpZFxuICBzaXplKClcbn0iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
### 类图 [<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>]
```
classDiagram
@@ -147,7 +174,7 @@ class Class10 {
}
```
### 状态图 [[<a href="https://mermaid-js.github.io/mermaid/#/stateDiagram">docs</a> - <a href="https://mermaid.live/#/edit/eyJjb2RlIjoic3RhdGVEaWFncmFtLXYyXG4gICAgWypdIC0tPiBTdGlsbFxuICAgIFN0aWxsIC0tPiBbKl1cbiAgICBTdGlsbCAtLT4gTW92aW5nXG4gICAgTW92aW5nIC0tPiBTdGlsbFxuICAgIE1vdmluZyAtLT4gQ3Jhc2hcbiAgICBDcmFzaCAtLT4gWypdIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQiLCJ0aGVtZVZhcmlhYmxlcyI6eyJiYWNrZ3JvdW5kIjoid2hpdGUiLCJwcmltYXJ5Q29sb3IiOiIjRUNFQ0ZGIiwic2Vjb25kYXJ5Q29sb3IiOiIjZmZmZmRlIiwidGVydGlhcnlDb2xvciI6ImhzbCg4MCwgMTAwJSwgOTYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeUJvcmRlckNvbG9yIjoiaHNsKDI0MCwgNjAlLCA4Ni4yNzQ1MDk4MDM5JSkiLCJzZWNvbmRhcnlCb3JkZXJDb2xvciI6ImhzbCg2MCwgNjAlLCA4My41Mjk0MTE3NjQ3JSkiLCJ0ZXJ0aWFyeUJvcmRlckNvbG9yIjoiaHNsKDgwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInByaW1hcnlUZXh0Q29sb3IiOiIjMTMxMzAwIiwic2Vjb25kYXJ5VGV4dENvbG9yIjoiIzAwMDAyMSIsInRlcnRpYXJ5VGV4dENvbG9yIjoicmdiKDkuNTAwMDAwMDAwMSwgOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEpIiwibGluZUNvbG9yIjoiIzMzMzMzMyIsInRleHRDb2xvciI6IiMzMzMiLCJtYWluQmtnIjoiI0VDRUNGRiIsInNlY29uZEJrZyI6IiNmZmZmZGUiLCJib3JkZXIxIjoiIzkzNzBEQiIsImJvcmRlcjIiOiIjYWFhYTMzIiwiYXJyb3doZWFkQ29sb3IiOiIjMzMzMzMzIiwiZm9udEZhbWlseSI6IlwidHJlYnVjaGV0IG1zXCIsIHZlcmRhbmEsIGFyaWFsIiwiZm9udFNpemUiOiIxNnB4IiwibGFiZWxCYWNrZ3JvdW5kIjoiI2U4ZThlOCIsIm5vZGVCa2ciOiIjRUNFQ0ZGIiwibm9kZUJvcmRlciI6IiM5MzcwREIiLCJjbHVzdGVyQmtnIjoiI2ZmZmZkZSIsImNsdXN0ZXJCb3JkZXIiOiIjYWFhYTMzIiwiZGVmYXVsdExpbmtDb2xvciI6IiMzMzMzMzMiLCJ0aXRsZUNvbG9yIjoiIzMzMyIsImVkZ2VMYWJlbEJhY2tncm91bmQiOiIjZThlOGU4IiwiYWN0b3JCb3JkZXIiOiJoc2woMjU5LjYyNjE2ODIyNDMsIDU5Ljc3NjUzNjMxMjglLCA4Ny45MDE5NjA3ODQzJSkiLCJhY3RvckJrZyI6IiNFQ0VDRkYiLCJhY3RvclRleHRDb2xvciI6ImJsYWNrIiwiYWN0b3JMaW5lQ29sb3IiOiJncmV5Iiwic2lnbmFsQ29sb3IiOiIjMzMzIiwic2lnbmFsVGV4dENvbG9yIjoiIzMzMyIsImxhYmVsQm94QmtnQ29sb3IiOiIjRUNFQ0ZGIiwibGFiZWxCb3hCb3JkZXJDb2xvciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImxhYmVsVGV4dENvbG9yIjoiYmxhY2siLCJsb29wVGV4dENvbG9yIjoiYmxhY2siLCJub3RlQm9yZGVyQ29sb3IiOiIjYWFhYTMzIiwibm90ZUJrZ0NvbG9yIjoiI2ZmZjVhZCIsIm5vdGVUZXh0Q29sb3IiOiJibGFjayIsImFjdGl2YXRpb25Cb3JkZXJDb2xvciI6IiM2NjYiLCJhY3RpdmF0aW9uQmtnQ29sb3IiOiIjZjRmNGY0Iiwic2VxdWVuY2VOdW1iZXJDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yIjoicmdiYSgxMDIsIDEwMiwgMjU1LCAwLjQ5KSIsImFsdFNlY3Rpb25Ca2dDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yMiI6IiNmZmY0MDAiLCJ0YXNrQm9yZGVyQ29sb3IiOiIjNTM0ZmJjIiwidGFza0JrZ0NvbG9yIjoiIzhhOTBkZCIsInRhc2tUZXh0TGlnaHRDb2xvciI6IndoaXRlIiwidGFza1RleHRDb2xvciI6IndoaXRlIiwidGFza1RleHREYXJrQ29sb3IiOiJibGFjayIsInRhc2tUZXh0T3V0c2lkZUNvbG9yIjoiYmxhY2siLCJ0YXNrVGV4dENsaWNrYWJsZUNvbG9yIjoiIzAwMzE2MyIsImFjdGl2ZVRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJhY3RpdmVUYXNrQmtnQ29sb3IiOiIjYmZjN2ZmIiwiZ3JpZENvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCa2dDb2xvciI6ImxpZ2h0Z3JleSIsImRvbmVUYXNrQm9yZGVyQ29sb3IiOiJncmV5IiwiY3JpdEJvcmRlckNvbG9yIjoiI2ZmODg4OCIsImNyaXRCa2dDb2xvciI6InJlZCIsInRvZGF5TGluZUNvbG9yIjoicmVkIiwibGFiZWxDb2xvciI6ImJsYWNrIiwiZXJyb3JCa2dDb2xvciI6IiM1NTIyMjIiLCJlcnJvclRleHRDb2xvciI6IiM1NTIyMjIiLCJjbGFzc1RleHQiOiIjMTMxMzAwIiwiZmlsbFR5cGUwIjoiI0VDRUNGRiIsImZpbGxUeXBlMSI6IiNmZmZmZGUiLCJmaWxsVHlwZTIiOiJoc2woMzA0LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTMiOiJoc2woMTI0LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkiLCJmaWxsVHlwZTQiOiJoc2woMTc2LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTUiOiJoc2woLTQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNiI6ImhzbCg4LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTciOiJoc2woMTg4LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkifX0sInVwZGF0ZUVkaXRvciI6ZmFsc2V9">live editor</a>]
### 状态图 [[<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>]
```
stateDiagram-v2
@@ -169,7 +196,7 @@ Moving --> Crash
Crash --> [*]
```
### 饼图 [<a href="https://mermaid-js.github.io/mermaid/#/pie">文档</a> - <a href="https://mermaidjs.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoicGllXG5cIkRvZ3NcIiA6IDQyLjk2XG5cIkNhdHNcIiA6IDUwLjA1XG5cIlJhdHNcIiA6IDEwLjAxIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
### 饼图 [<a href="https://mermaid-js.github.io/mermaid/#/pie">文档</a> - <a href="https://mermaid.live/edit#base64:eyJjb2RlIjoicGllXG5cIkRvZ3NcIiA6IDQyLjk2XG5cIkNhdHNcIiA6IDUwLjA1XG5cIlJhdHNcIiA6IDEwLjAxIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">live editor</a>]
```
pie
@@ -185,9 +212,9 @@ pie
"Rats" : 15
```
### Git 图 [实验特性 - <a href="https://mermaidjs.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoiZ2l0R3JhcGg6XG5vcHRpb25zXG57XG4gICAgXCJub2RlU3BhY2luZ1wiOiAxNTAsXG4gICAgXCJub2RlUmFkaXVzXCI6IDEwXG59XG5lbmRcbmNvbW1pdFxuYnJhbmNoIG5ld2JyYW5jaFxuY2hlY2tvdXQgbmV3YnJhbmNoXG5jb21taXRcbmNvbW1pdFxuY2hlY2tvdXQgbWFzdGVyXG5jb21taXRcbmNvbW1pdFxubWVyZ2UgbmV3YnJhbmNoXG4iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCJ9fQ">live editor</a>]
### 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://mermaidjs.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic3RhdGVEaWFncmFtXG4gICAgWypdIC0tPiBTdGlsbFxuICAgIFN0aWxsIC0tPiBbKl1cbiAgICBTdGlsbCAtLT4gTW92aW5nXG4gICAgTW92aW5nIC0tPiBTdGlsbFxuICAgIE1vdmluZyAtLT4gQ3Jhc2hcbiAgICBDcmFzaCAtLT4gWypdIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQifX0">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>]
```
journey
@@ -295,7 +322,7 @@ Rel(SystemC, customerA, "Sends e-mails to")
npm publish
```
以上的命令会将文件打包到 `dist` 目录并发布至 npmjs.org.
以上的命令会将文件打包到 `dist` 目录并发布至 <https://www.npmjs.com>.
## 相关项目
@@ -325,7 +352,7 @@ _很不幸的是鱼与熊掌不可兼得在这个场景下它意味着在
来自 Knut Sveidqvist:
> _特别感谢 [d3](https://d3js.org/) 和 [dagre-d3](https://github.com/cpettitt/dagre-d3) 这两个优秀的项目,它们提供了图形布局和绘图工具库! _ >_同样感谢 [js-sequence-diagram](https://bramp.github.io/js-sequence-diagrams) 提供了时序图语法的使用。 感谢 Jessica Peter 提供了甘特图渲染的灵感。_ >_感谢 [Tyler Long](https://github.com/tylerlong) 从 2017 年四月开始成为了项目的合作者。_
> _特别感谢 [d3](https://d3js.org/) 和 [dagre-d3](https://github.com/cpettitt/dagre-d3) 这两个优秀的项目,它们提供了图形布局和绘图工具库_ > _同样感谢 [js-sequence-diagram](https://bramp.github.io/js-sequence-diagrams) 提供了时序图语法的使用。 感谢 Jessica Peter 提供了甘特图渲染的灵感。_ > _感谢 [Tyler Long](https://github.com/tylerlong) 从 2017 年四月开始成为了项目的合作者。_
>
> _感谢越来越多的 [贡献者们](https://github.com/knsv/mermaid/graphs/contributors)没有你们就没有这个项目的今天_

View File

@@ -1,5 +0,0 @@
# A collection of updates that change the behaviour
## Lazy loading and asynchronisity
- Invalid dates are rendered as syntax error instead of returning best guess or the current date

21
__mocks__/c4Renderer.js Normal file
View File

@@ -0,0 +1,21 @@
/**
* Mocked C4Context diagram renderer
*/
import { vi } from 'vitest';
export const drawPersonOrSystemArray = vi.fn();
export const drawBoundary = vi.fn();
export const setConf = vi.fn();
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
drawPersonOrSystemArray,
drawBoundary,
setConf,
draw,
};

View File

@@ -0,0 +1,16 @@
/**
* Mocked class diagram v2 renderer
*/
import { vi } from 'vitest';
export const setConf = vi.fn();
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
setConf,
draw,
};

View File

@@ -0,0 +1,13 @@
/**
* Mocked class diagram renderer
*/
import { vi } from 'vitest';
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
draw,
};

View File

@@ -1,67 +1,13 @@
// @ts-nocheck TODO: Fix TS
import { vi } from 'vitest';
const NewD3 = function () {
/**
*
*/
function returnThis() {
return this;
}
return {
append: function () {
return NewD3();
},
lower: returnThis,
attr: returnThis,
style: returnThis,
text: returnThis,
0: {
0: {
getBBox: function () {
return {
height: 10,
width: 20,
};
},
},
},
};
};
import { MockedD3 } from '../packages/mermaid/src/tests/MockedD3.js';
export const select = function () {
return new NewD3();
return new MockedD3();
};
export const selectAll = function () {
return new NewD3();
return new MockedD3();
};
export const curveBasis = 'basis';
export const curveLinear = 'linear';
export const curveCardinal = 'cardinal';
export const MockD3 = (name, parent) => {
const children = [];
const elem = {
get __children() {
return children;
},
get __name() {
return name;
},
get __parent() {
return parent;
},
};
elem.append = (name) => {
const mockElem = MockD3(name, elem);
children.push(mockElem);
return mockElem;
};
elem.lower = vi.fn(() => elem);
elem.attr = vi.fn(() => elem);
elem.text = vi.fn(() => elem);
elem.style = vi.fn(() => elem);
return elem;
};

16
__mocks__/erRenderer.js Normal file
View File

@@ -0,0 +1,16 @@
/**
* Mocked er diagram renderer
*/
import { vi } from 'vitest';
export const setConf = vi.fn();
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
setConf,
draw,
};

View File

@@ -0,0 +1,24 @@
/**
* Mocked flow (flowchart) diagram v2 renderer
*/
import { vi } from 'vitest';
export const setConf = vi.fn();
export const addVertices = vi.fn();
export const addEdges = vi.fn();
export const getClasses = vi.fn().mockImplementation(() => {
return {};
});
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
setConf,
addVertices,
addEdges,
getClasses,
draw,
};

View File

@@ -0,0 +1,16 @@
/**
* Mocked gantt diagram renderer
*/
import { vi } from 'vitest';
export const setConf = vi.fn();
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
setConf,
draw,
};

View File

@@ -0,0 +1,13 @@
/**
* Mocked git (graph) diagram renderer
*/
import { vi } from 'vitest';
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
draw,
};

View File

@@ -0,0 +1,15 @@
/**
* Mocked pie (picChart) diagram renderer
*/
import { vi } from 'vitest';
export const setConf = vi.fn();
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
setConf,
draw,
};

8
__mocks__/pieRenderer.ts Normal file
View File

@@ -0,0 +1,8 @@
/**
* Mocked pie (picChart) diagram renderer
*/
import { vi } from 'vitest';
const draw = vi.fn().mockImplementation(() => '');
export const renderer = { draw };

View File

@@ -0,0 +1,13 @@
/**
* Mocked requirement diagram renderer
*/
import { vi } from 'vitest';
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
draw,
};

View File

@@ -0,0 +1,13 @@
/**
* Mocked Sankey diagram renderer
*/
import { vi } from 'vitest';
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
draw,
};

View File

@@ -0,0 +1,23 @@
/**
* Mocked sequence diagram renderer
*/
import { vi } from 'vitest';
export const bounds = vi.fn();
export const drawActors = vi.fn();
export const drawActorsPopup = vi.fn();
export const setConf = vi.fn();
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
bounds,
drawActors,
drawActorsPopup,
setConf,
draw,
};

View File

@@ -0,0 +1,22 @@
/**
* Mocked state diagram v2 renderer
*/
import { vi } from 'vitest';
export const setConf = vi.fn();
export const getClasses = vi.fn().mockImplementation(() => {
return {};
});
export const stateDomId = vi.fn().mockImplementation(() => {
return 'mocked-stateDiagram-stateDomId';
});
export const draw = vi.fn().mockImplementation(() => {
return '';
});
export default {
setConf,
getClasses,
draw,
};

View File

@@ -2,50 +2,164 @@
"version": "0.2",
"language": "en",
"words": [
"customizability",
"Gantt",
"jison",
"knsv",
"Knut",
"mindmap",
"Mindmaps",
"mitigations",
"sandboxed",
"Sveidqvist",
"verdana",
"Visio"
],
"ignoreWords": [
"Adamiecki",
"acyclicer",
"adamiecki",
"alois",
"aloisklink",
"antiscript",
"antlr",
"appli",
"applitools",
"Asciidoctor",
"Astah",
"Bisheng",
"asciidoctor",
"ashish",
"ashishjain",
"astah",
"bbox",
"bilkent",
"bisheng",
"blrs",
"braintree",
"brkt",
"brolin",
"brotli",
"città",
"classdef",
"codedoc",
"Docsy",
"Doku",
"Gitea",
"Gitgraph",
"Grav",
"Inkdrop",
"Jaoude",
"colour",
"commitlint",
"cpettitt",
"customizability",
"cuzon",
"cytoscape",
"dagre",
"deepdwn",
"descr",
"docsify",
"docsy",
"doku",
"dompurify",
"edgechromium",
"elkjs",
"elle",
"faber",
"flatmap",
"foswiki",
"frontmatter",
"ftplugin",
"gantt",
"gitea",
"gitgraph",
"globby",
"graphlib",
"graphviz",
"grav",
"greywolf",
"gzipped",
"huynh",
"huynhicode",
"iife",
"inkdrop",
"jaoude",
"jgreywolf",
"jison",
"jiti",
"kaufmann",
"khroma",
"klemm",
"klink",
"knsv",
"knut",
"knutsveidqvist",
"laganeckas",
"linetype",
"lintstagedrc",
"logmsg",
"lucida",
"markdownish",
"matthieu",
"matthieumorel",
"mdast",
"mdbook",
"mermaidjs",
"mermerd",
"metafile",
"mindaugas",
"mindmap",
"mindmaps",
"mitigations",
"mkdocs",
"mmorel",
"mult",
"neurodiverse",
"nextra",
"nikolay",
"nirname",
"orlandoni",
"outdir",
"pathe",
"pbrolin",
"phpbb",
"Plantuml",
"Playfair's",
"Podlite",
"plantuml",
"playfair",
"pnpm",
"podlite",
"quence",
"radious",
"ranksep",
"rect",
"rects",
"reda",
"redmine",
"regexes",
"rehype",
"roledescription",
"rozhkov",
"sandboxed",
"sankey",
"setupgraphviewbox",
"shiki",
"sidharth",
"sidharthv",
"sphinxcontrib",
"Tuleap"
"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",
"yash",
"yokozuna",
"zenuml"
],
"patterns": [
{
"name": "Markdown links",
"pattern": "\\((.*)\\)",
"description": ""
},
{ "name": "Markdown links", "pattern": "\\((.*)\\)", "description": "" },
{
"name": "Markdown code blocks",
"pattern": "/^(\\s*`{3,}).*[\\s\\S]*?^\\1/gmx",
@@ -56,25 +170,14 @@
"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": "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": "Multi-line code blocks", "pattern": "/^\\s*```[\\s\\S]*?^\\s*```/gm" },
{
"name": "HTML Tags",
"pattern": "<[^>]*>",
@@ -91,5 +194,9 @@
"Multi-line code blocks",
"HTML Tags"
],
"ignorePaths": ["packages/mermaid/src/docs/CHANGELOG.md"]
"ignorePaths": [
"packages/mermaid/src/docs/CHANGELOG.md",
"packages/mermaid/src/docs/.vitepress/redirect.ts",
"packages/mermaid/src/docs/.vitepress/contributor-names.json"
]
}

View File

@@ -2,12 +2,14 @@
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;

View File

@@ -1,138 +0,0 @@
const utf8ToB64 = (str) => {
return window.btoa(unescape(encodeURIComponent(str)));
};
const batchId = 'mermid-batch' + new Date().getTime();
export const mermaidUrl = (graphStr, options, api) => {
const obj = {
code: graphStr,
mermaid: options,
};
const objStr = JSON.stringify(obj);
let url = 'http://localhost:9000/e2e.html?graph=' + utf8ToB64(objStr);
if (api) {
url = 'http://localhost:9000/xss.html?graph=' + graphStr;
}
if (options.listUrl) {
cy.log(options.listId, ' ', url);
}
return url;
};
export const imgSnapshotTest = (graphStr, _options, api = false, validation) => {
cy.log(_options);
const options = Object.assign(_options);
if (!options.fontFamily) {
options.fontFamily = 'courier';
}
if (!options.sequence) {
options.sequence = {};
}
if (!options.sequence || (options.sequence && !options.sequence.actorFontFamily)) {
options.sequence.actorFontFamily = 'courier';
}
if (options.sequence && !options.sequence.noteFontFamily) {
options.sequence.noteFontFamily = 'courier';
}
options.sequence.actorFontFamily = 'courier';
options.sequence.noteFontFamily = 'courier';
options.sequence.messageFontFamily = 'courier';
if (options.sequence && !options.sequence.actorFontFamily) {
options.sequence.actorFontFamily = 'courier';
}
if (!options.fontSize) {
options.fontSize = '16px';
}
const useAppli = Cypress.env('useAppli');
//const useAppli = false;
cy.log('Hello ' + useAppli ? 'Appli' : 'image-snapshot');
const name = (options.name || cy.state('runnable').fullTitle()).replace(/\s+/g, '-');
if (useAppli) {
cy.log('Opening eyes ' + Cypress.spec.name + ' --- ' + name);
cy.eyesOpen({
appName: 'Mermaid',
testName: name,
batchName: Cypress.spec.name,
batchId: batchId + Cypress.spec.name,
});
}
const url = mermaidUrl(graphStr, options, api);
cy.visit(url);
if (validation) cy.get('svg').should(validation);
cy.get('svg');
// Default name to test title
if (useAppli) {
cy.log('Check eyes' + Cypress.spec.name);
cy.eyesCheckWindow('Click!');
cy.log('Closing eyes: ' + Cypress.spec.name);
cy.eyesClose();
} else {
cy.matchImageSnapshot(name);
}
};
export const urlSnapshotTest = (url, _options, api = false, validation) => {
cy.log(_options);
const options = Object.assign(_options);
if (!options.fontFamily) {
options.fontFamily = 'courier';
}
if (!options.sequence) {
options.sequence = {};
}
if (!options.sequence || (options.sequence && !options.sequence.actorFontFamily)) {
options.sequence.actorFontFamily = 'courier';
}
if (options.sequence && !options.sequence.noteFontFamily) {
options.sequence.noteFontFamily = 'courier';
}
options.sequence.actorFontFamily = 'courier';
options.sequence.noteFontFamily = 'courier';
options.sequence.messageFontFamily = 'courier';
if (options.sequence && !options.sequence.actorFontFamily) {
options.sequence.actorFontFamily = 'courier';
}
if (!options.fontSize) {
options.fontSize = '16px';
}
const useAppli = Cypress.env('useAppli');
cy.log('Hello ' + useAppli ? 'Appli' : 'image-snapshot');
const name = (options.name || cy.state('runnable').fullTitle()).replace(/\s+/g, '-');
if (useAppli) {
cy.log('Opening eyes 2' + Cypress.spec.name);
cy.eyesOpen({
appName: 'Mermaid',
testName: name,
batchName: Cypress.spec.name,
batchId: batchId + Cypress.spec.name,
});
}
cy.visit(url);
if (validation) cy.get('svg').should(validation);
cy.get('body');
// Default name to test title
if (useAppli) {
cy.log('Check eyes 2' + Cypress.spec.name);
cy.eyesCheckWindow('Click!');
cy.log('Closing eyes 2' + Cypress.spec.name);
cy.eyesClose();
} else {
cy.matchImageSnapshot(name);
}
};
export const renderGraph = (graphStr, options, api) => {
const url = mermaidUrl(graphStr, options, api);
cy.visit(url);
};

132
cypress/helpers/util.ts Normal file
View File

@@ -0,0 +1,132 @@
/* eslint-disable @typescript-eslint/no-explicit-any */
import { Buffer } from 'buffer';
import type { MermaidConfig } from '../../packages/mermaid/src/config.type.js';
interface CypressConfig {
listUrl?: boolean;
listId?: string;
name?: string;
}
type CypressMermaidConfig = MermaidConfig & CypressConfig;
interface CodeObject {
code: string;
mermaid: CypressMermaidConfig;
}
const utf8ToB64 = (str: string): string => {
return Buffer.from(decodeURIComponent(encodeURIComponent(str))).toString('base64');
};
const batchId: string = 'mermaid-batch-' + Cypress.env('CYPRESS_COMMIT') || Date.now().toString();
export const mermaidUrl = (
graphStr: string,
options: CypressMermaidConfig,
api: boolean
): string => {
const codeObject: CodeObject = {
code: graphStr,
mermaid: options,
};
const objStr: string = JSON.stringify(codeObject);
let url = `http://localhost:9000/e2e.html?graph=${utf8ToB64(objStr)}`;
if (api) {
url = `http://localhost:9000/xss.html?graph=${graphStr}`;
}
if (options.listUrl) {
cy.log(options.listId, ' ', url);
}
return url;
};
export const imgSnapshotTest = (
graphStr: string,
_options: CypressMermaidConfig = {},
api = false,
validation?: any
): void => {
cy.log(JSON.stringify(_options));
const options: CypressMermaidConfig = Object.assign(_options);
if (!options.fontFamily) {
options.fontFamily = 'courier';
}
if (!options.sequence) {
options.sequence = {};
}
if (!options.sequence || (options.sequence && !options.sequence.actorFontFamily)) {
options.sequence.actorFontFamily = 'courier';
}
if (options.sequence && !options.sequence.noteFontFamily) {
options.sequence.noteFontFamily = 'courier';
}
options.sequence.actorFontFamily = 'courier';
options.sequence.noteFontFamily = 'courier';
options.sequence.messageFontFamily = 'courier';
if (options.sequence && !options.sequence.actorFontFamily) {
options.sequence.actorFontFamily = 'courier';
}
if (!options.fontSize) {
options.fontSize = 16;
}
const url: string = mermaidUrl(graphStr, options, api);
openURLAndVerifyRendering(url, options, validation);
};
export const urlSnapshotTest = (
url: string,
_options: CypressMermaidConfig,
_api = false,
validation?: any
): void => {
const options: CypressMermaidConfig = Object.assign(_options);
openURLAndVerifyRendering(url, options, validation);
};
export const renderGraph = (
graphStr: string,
options: CypressMermaidConfig = {},
api = false
): void => {
const url: string = mermaidUrl(graphStr, options, api);
openURLAndVerifyRendering(url, options);
};
export const openURLAndVerifyRendering = (
url: string,
options: CypressMermaidConfig,
validation?: any
): void => {
const useAppli: boolean = Cypress.env('useAppli');
const name: string = (options.name || cy.state('runnable').fullTitle()).replace(/\s+/g, '-');
if (useAppli) {
cy.log(`Opening eyes ${Cypress.spec.name} --- ${name}`);
cy.eyesOpen({
appName: 'Mermaid',
testName: name,
batchName: Cypress.spec.name,
batchId: batchId + Cypress.spec.name,
});
}
cy.visit(url);
cy.window().should('have.property', 'rendered', true);
cy.get('svg').should('be.visible');
if (validation) {
cy.get('svg').should(validation);
}
if (useAppli) {
cy.log(`Check eyes ${Cypress.spec.name}`);
cy.eyesCheckWindow('Click!');
cy.log(`Closing eyes ${Cypress.spec.name}`);
cy.eyesClose();
} else {
cy.matchImageSnapshot(name);
}
};

View File

@@ -1,4 +1,4 @@
import { renderGraph } from '../../helpers/util';
import { renderGraph } from '../../helpers/util.ts';
describe('Configuration', () => {
describe('arrowMarkerAbsolute', () => {
it('should handle default value false of arrowMarkerAbsolute', () => {

View File

@@ -1,13 +1,10 @@
import { urlSnapshotTest } from '../../helpers/util.ts';
describe('mermaid', () => {
describe('registerDiagram', () => {
it('should work on @mermaid-js/mermaid-mindmap and mermaid-example-diagram', () => {
const url = 'http://localhost:9000/external-diagrams-mindmap.html';
cy.visit(url);
cy.get('svg', {
// may be a bit slower than normal, since vite might need to re-compile mermaid/mermaid-mindmap/mermaid-example-diagram
timeout: 10000,
}).matchImageSnapshot();
it('should work on @mermaid-js/mermaid-example-diagram', () => {
const url = 'http://localhost:9000/external-diagrams-example-diagram.html';
urlSnapshotTest(url, {}, false, false);
});
});
});

View File

@@ -1,4 +1,4 @@
import { urlSnapshotTest } from '../../helpers/util';
import { urlSnapshotTest, openURLAndVerifyRendering } from '../../helpers/util.ts';
describe('CSS injections', () => {
it('should not allow CSS injections outside of the diagram', () => {
@@ -7,4 +7,17 @@ describe('CSS injections', () => {
flowchart: { htmlLabels: false },
});
});
it('should not allow adding styletags affecting the page', () => {
urlSnapshotTest('http://localhost:9000/ghsa3.html', {
logLevel: 1,
flowchart: { htmlLabels: false },
});
});
it('should not allow manipulating styletags using arrowheads', () => {
openURLAndVerifyRendering('http://localhost:9000/xss23-css.html', {
logLevel: 1,
arrowMarkerAbsolute: false,
flowchart: { htmlLabels: true },
});
});
});

View File

@@ -0,0 +1,11 @@
describe('IIFE', () => {
beforeEach(() => {
cy.visit('http://localhost:9000/iife.html');
});
it('should render when using mermaid.min.js', () => {
cy.window().should('have.property', 'rendered', true);
cy.get('svg').should('be.visible');
cy.get('#d2').should('contain', 'Hello');
});
});

View File

@@ -1,16 +0,0 @@
describe('Sequencediagram', () => {
it('should render a simple sequence diagrams', () => {
const url = 'http://localhost:9000/webpackUsage.html';
cy.visit(url);
cy.get('body').find('svg').should('have.length', 1);
});
it('should handle html escapings properly', () => {
const url = 'http://localhost:9000/webpackUsage.html?test-html-escaping=true';
cy.visit(url);
cy.get('body').find('svg').should('have.length', 1);
cy.get('g.label > foreignobject > div').should('not.contain.text', '<b>');
});
});

View File

@@ -1,4 +1,4 @@
import { mermaidUrl } from '../../helpers/util.js';
import { mermaidUrl } from '../../helpers/util.ts';
describe('XSS', () => {
it('should handle xss in tags', () => {
const str =

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest } from '../../helpers/util.js';
import { imgSnapshotTest } from '../../helpers/util.ts';
describe('Git Graph diagram', () => {
it('1: should render a simple gitgraph with commit on main branch', () => {
@@ -21,7 +21,7 @@ describe('Git Graph diagram', () => {
// // Call Open on eyes to initialize a test session
// cy.eyesOpen({
// appName: 'Demo App',
// testName: 'Ultrafast grid demo',
// testName: 'UltraFast grid demo',
// });
// // check the login page with fluent api, see more info here

View File

@@ -0,0 +1,122 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
describe('C4 diagram', () => {
it('should render a simple C4Context diagram', () => {
imgSnapshotTest(
`
C4Context
accTitle: C4 context demo
accDescr: Many large C4 diagrams
title System Context diagram for Internet Banking System
Enterprise_Boundary(b0, "BankBoundary0") {
Person(customerA, "Banking Customer A", "A customer of the bank, with personal bank accounts.")
System(SystemAA, "Internet Banking System", "Allows customers to view information about their bank accounts, and make payments.")
Enterprise_Boundary(b1, "BankBoundary") {
System_Ext(SystemC, "E-mail system", "The internal Microsoft Exchange e-mail system.")
}
}
BiRel(customerA, SystemAA, "Uses")
Rel(SystemAA, SystemC, "Sends e-mails", "SMTP")
Rel(SystemC, customerA, "Sends e-mails to")
UpdateElementStyle(customerA, $fontColor="red", $bgColor="grey", $borderColor="red")
UpdateRelStyle(customerA, SystemAA, $textColor="blue", $lineColor="blue", $offsetX="5")
UpdateRelStyle(SystemC, customerA, $textColor="red", $lineColor="red", $offsetX="-50", $offsetY="20")
`,
{}
);
cy.get('svg');
});
it('should render a simple C4Container diagram', () => {
imgSnapshotTest(
`
C4Container
title Container diagram for Internet Banking System
System_Ext(email_system, "E-Mail System", "The internal Microsoft Exchange system", $tags="v1.0")
Person(customer, Customer, "A customer of the bank, with personal bank accounts", $tags="v1.0")
Container_Boundary(c1, "Internet Banking") {
Container(spa, "Single-Page App", "JavaScript, Angular", "Provides all the Internet banking functionality to customers via their web browser")
}
Rel(customer, spa, "Uses", "HTTPS")
Rel(email_system, customer, "Sends e-mails to")
`,
{}
);
cy.get('svg');
});
it('should render a simple C4Component diagram', () => {
imgSnapshotTest(
`
C4Component
title Component diagram for Internet Banking System - API Application
Container(spa, "Single Page Application", "javascript and angular", "Provides all the internet banking functionality to customers via their web browser.")
Container_Boundary(api, "API Application") {
Component(sign, "Sign In Controller", "MVC Rest Controller", "Allows users to sign in to the internet banking system")
}
Rel_Back(spa, sign, "Uses", "JSON/HTTPS")
UpdateRelStyle(spa, sign, $offsetY="-40")
`,
{}
);
cy.get('svg');
});
it('should render a simple C4Dynamic diagram', () => {
imgSnapshotTest(
`
C4Dynamic
title Dynamic diagram for Internet Banking System - API Application
ContainerDb(c4, "Database", "Relational Database Schema", "Stores user registration information, hashed authentication credentials, access logs, etc.")
Container(c1, "Single-Page Application", "JavaScript and Angular", "Provides all of the Internet banking functionality to customers via their web browser.")
Container_Boundary(b, "API Application") {
Component(c3, "Security Component", "Spring Bean", "Provides functionality Related to signing in, changing passwords, etc.")
Component(c2, "Sign In Controller", "Spring MVC Rest Controller", "Allows users to sign in to the Internet Banking System.")
}
Rel(c1, c2, "Submits credentials to", "JSON/HTTPS")
Rel(c2, c3, "Calls isAuthenticated() on")
Rel(c3, c4, "select * from users where username = ?", "JDBC")
UpdateRelStyle(c1, c2, $textColor="red", $offsetY="-40")
UpdateRelStyle(c2, c3, $textColor="red", $offsetX="-40", $offsetY="60")
UpdateRelStyle(c3, c4, $textColor="red", $offsetY="-40", $offsetX="10")
`,
{}
);
cy.get('svg');
});
it('should render a simple C4Deployment diagram', () => {
imgSnapshotTest(
`
C4Deployment
title Deployment Diagram for Internet Banking System - Live
Deployment_Node(mob, "Customer's mobile device", "Apple IOS or Android"){
Container(mobile, "Mobile App", "Xamarin", "Provides a limited subset of the Internet Banking functionality to customers via their mobile device.")
}
Deployment_Node(plc, "Big Bank plc", "Big Bank plc data center"){
Deployment_Node(dn, "bigbank-api*** x8", "Ubuntu 16.04 LTS"){
Deployment_Node(apache, "Apache Tomcat", "Apache Tomcat 8.x"){
Container(api, "API Application", "Java and Spring MVC", "Provides Internet Banking functionality via a JSON/HTTPS API.")
}
}
}
Rel(mobile, api, "Makes API calls to", "json/HTTPS")
`,
{}
);
cy.get('svg');
});
});

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest } from '../../helpers/util';
import { imgSnapshotTest } from '../../helpers/util.ts';
describe('Class diagram V2', () => {
it('0: should render a simple class diagram', () => {
imgSnapshotTest(
@@ -13,7 +13,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('1: should render a simple class diagram', () => {
@@ -47,7 +46,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('2: should render a simple class diagrams with cardinality', () => {
@@ -76,7 +74,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('should render a simple class diagram with different visibilities', () => {
@@ -94,7 +91,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('should render multiple class diagrams', () => {
@@ -147,7 +143,6 @@ describe('Class diagram V2', () => {
],
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('4: should render a simple class diagram with comments', () => {
@@ -177,7 +172,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('5: should render a simple class diagram with abstract method', () => {
@@ -189,7 +183,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('6: should render a simple class diagram with static method', () => {
@@ -201,7 +194,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('7: should render a simple class diagram with Generic class', () => {
@@ -221,7 +213,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('8: should render a simple class diagram with Generic class and relations', () => {
@@ -242,7 +233,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('9: should render a simple class diagram with clickable link', () => {
@@ -264,7 +254,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('10: should render a simple class diagram with clickable callback', () => {
@@ -286,7 +275,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('11: should render a simple class diagram with return type on method', () => {
@@ -301,7 +289,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('12: should render a simple class diagram with generic types', () => {
@@ -317,7 +304,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('13: should render a simple class diagram with css classes applied', () => {
@@ -335,7 +321,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('14: should render a simple class diagram with css classes applied directly', () => {
@@ -351,7 +336,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('15: should render a simple class diagram with css classes applied two multiple classes', () => {
@@ -365,7 +349,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('16a: should render a simple class diagram with static field', () => {
@@ -378,7 +361,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('16b: should handle the direction statement with TB', () => {
@@ -403,7 +385,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('18: should handle the direction statement with LR', () => {
@@ -428,7 +409,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('17a: should handle the direction statement with BT', () => {
imgSnapshotTest(
@@ -452,7 +432,6 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('17b: should handle the direction statement with RL', () => {
imgSnapshotTest(
@@ -476,6 +455,111 @@ describe('Class diagram V2', () => {
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
cy.get('svg');
});
it('18: should render a simple class diagram with notes', () => {
imgSnapshotTest(
`
classDiagram-v2
note "I love this diagram!\nDo you love it?"
class Class10 {
int id
size()
}
note for Class10 "Cool class\nI said it's very cool class!"
`,
{ logLevel: 1, flowchart: { htmlLabels: false } }
);
});
it('1433: should render a simple class with a title', () => {
imgSnapshotTest(
`---
title: simple class diagram
---
classDiagram-v2
class Class10
`
);
});
it('should render a class with text label', () => {
imgSnapshotTest(
`classDiagram
class C1["Class 1 with text label"]
C1 --> C2`
);
});
it('should render two classes with text labels', () => {
imgSnapshotTest(
`classDiagram
class C1["Class 1 with text label"]
class C2["Class 2 with chars @?"]
C1 --> C2`
);
});
it('should render a class with a text label, members and annotation', () => {
imgSnapshotTest(
`classDiagram
class C1["Class 1 with text label"] {
&lt;&lt;interface&gt;&gt;
+member1
}
C1 --> C2`
);
});
it('should render multiple classes with same text labels', () => {
imgSnapshotTest(
`classDiagram
class C1["Class with text label"]
class C2["Class with text label"]
class C3["Class with text label"]
C1 --> C2
C3 ..> C2
`
);
});
it('should render classes with different text labels', () => {
imgSnapshotTest(
`classDiagram
class C1["OneWord"]
class C2["With, Comma"]
class C3["With (Brackets)"]
class C4["With [Brackets]"]
class C5["With {Brackets}"]
class C7["With 1 number"]
class C8["With . period..."]
class C9["With - dash"]
class C10["With _ underscore"]
class C11["With ' single quote"]
class C12["With ~!@#$%^&*()_+=-/?"]
class C13["With Città foreign language"]
`
);
});
it('should render classLabel if class has already been defined earlier', () => {
imgSnapshotTest(
`classDiagram
Animal <|-- Duck
class Duck["Duck with text label"]
`
);
});
it('should add classes namespaces', function () {
imgSnapshotTest(
`
classDiagram
namespace Namespace1 {
class C1
class C2
}
C1 --> C2
class C3
class C4
`
);
});
});

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util';
import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
describe('Class diagram', () => {
it('1: should render a simple class diagram', () => {
@@ -286,7 +286,7 @@ describe('Class diagram', () => {
cy.get('svg');
});
it('15: should render a simple class diagram with css classes applied two multiple classes', () => {
it('15: should render a simple class diagram with css classes applied to multiple classes', () => {
imgSnapshotTest(
`
classDiagram
@@ -407,4 +407,98 @@ describe('Class diagram', () => {
// // expect(svg).to.not.have.attr('style');
// });
// });
it('19: should render a simple class diagram with notes', () => {
imgSnapshotTest(
`
classDiagram
note "I love this diagram!\nDo you love it?"
class Class10 {
int id
size()
}
note for Class10 "Cool class\nI said it's very cool class!"
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render class diagram with newlines in title', () => {
imgSnapshotTest(`
classDiagram
Animal <|-- \`Du\nck\`
Animal : +int age
Animal : +String gender
Animal: +isMammal()
Animal: +mate()
class \`Du\nck\` {
+String beakColor
+String featherColor
+swim()
+quack()
}
`);
cy.get('svg');
});
it('should render class diagram with many newlines in title', () => {
imgSnapshotTest(`
classDiagram
class \`This\nTitle\nHas\nMany\nNewlines\` {
+String Also
-Stirng Many
#int Members
+And()
-Many()
#Methods()
}
`);
});
it('should render with newlines in title and an annotation', () => {
imgSnapshotTest(`
classDiagram
class \`This\nTitle\nHas\nMany\nNewlines\` {
+String Also
-Stirng Many
#int Members
+And()
-Many()
#Methods()
}
&lt;&lt;Interface&gt;&gt; \`This\nTitle\nHas\nMany\nNewlines\`
`);
});
it('should handle newline title in namespace', () => {
imgSnapshotTest(`
classDiagram
namespace testingNamespace {
class \`This\nTitle\nHas\nMany\nNewlines\` {
+String Also
-Stirng Many
#int Members
+And()
-Many()
#Methods()
}
}
`);
});
it('should handle newline in string label', () => {
imgSnapshotTest(`
classDiagram
class A["This has\na newline!"] {
+String boop
-Int beep
#double bop
}
class B["This title also has\na newline"]
B : +with(more)
B : -methods()
`);
});
});

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest } from '../../helpers/util.js';
import { imgSnapshotTest } from '../../helpers/util.ts';
describe('Configuration and directives - nodes should be light blue', () => {
it('No config - use default', () => {
@@ -14,7 +14,6 @@ describe('Configuration and directives - nodes should be light blue', () => {
`,
{}
);
cy.get('svg');
});
it('Settings from initialize - nodes should be green', () => {
imgSnapshotTest(
@@ -28,7 +27,6 @@ graph TD
end `,
{ theme: 'forest' }
);
cy.get('svg');
});
it('Settings from initialize overriding themeVariable - nodes should be red', () => {
imgSnapshotTest(
@@ -46,7 +44,6 @@ graph TD
`,
{ theme: 'base', themeVariables: { primaryColor: '#ff0000' }, logLevel: 0 }
);
cy.get('svg');
});
it('Settings from directive - nodes should be grey', () => {
imgSnapshotTest(
@@ -62,7 +59,24 @@ graph TD
`,
{}
);
cy.get('svg');
});
it('Settings from frontmatter - nodes should be grey', () => {
imgSnapshotTest(
`
---
config:
theme: neutral
---
graph TD
A(Start) --> B[/Another/]
A[/Another/] --> C[End]
subgraph section
B
C
end
`,
{}
);
});
it('Settings from directive overriding theme variable - nodes should be red', () => {
@@ -79,7 +93,6 @@ graph TD
`,
{}
);
cy.get('svg');
});
it('Settings from initialize and directive - nodes should be grey', () => {
imgSnapshotTest(
@@ -95,7 +108,6 @@ graph TD
`,
{ theme: 'forest' }
);
cy.get('svg');
});
it('Theme from initialize, directive overriding theme variable - nodes should be red', () => {
imgSnapshotTest(
@@ -111,8 +123,71 @@ graph TD
`,
{ theme: 'base' }
);
cy.get('svg');
});
it('Theme from initialize, frontmatter overriding theme variable - nodes should be red', () => {
imgSnapshotTest(
`
---
config:
theme: base
themeVariables:
primaryColor: '#ff0000'
---
graph TD
A(Start) --> B[/Another/]
A[/Another/] --> C[End]
subgraph section
B
C
end
`,
{ theme: 'forest' }
);
});
it('Theme from initialize, frontmatter overriding theme variable, directive overriding primaryColor - nodes should be red', () => {
imgSnapshotTest(
`
---
config:
theme: base
themeVariables:
primaryColor: '#00ff00'
---
%%{init: {'theme': 'base', 'themeVariables':{ 'primaryColor': '#ff0000'}}}%%
graph TD
A(Start) --> B[/Another/]
A[/Another/] --> C[End]
subgraph section
B
C
end
`,
{ theme: 'forest' }
);
});
it('should render if values are not quoted properly', () => {
// #ff0000 is not quoted properly, and will evaluate to null.
// This test ensures that the rendering still works.
imgSnapshotTest(
`---
config:
theme: base
themeVariables:
primaryColor: #ff0000
---
graph TD
A(Start) --> B[/Another/]
A[/Another/] --> C[End]
subgraph section
B
C
end
`,
{ theme: 'forest' }
);
});
it('Theme variable from initialize, theme from directive - nodes should be red', () => {
imgSnapshotTest(
`
@@ -127,13 +202,11 @@ graph TD
`,
{ themeVariables: { primaryColor: '#ff0000' } }
);
cy.get('svg');
});
describe('when rendering several diagrams', () => {
it('diagrams should not taint later diagrams', () => {
const url = 'http://localhost:9000/theme-directives.html';
cy.visit(url);
cy.get('svg');
cy.matchImageSnapshot('conf-and-directives.spec-when-rendering-several-diagrams-diagram-1');
});
});

View File

@@ -1,6 +1,6 @@
import { imgSnapshotTest } from '../../helpers/util';
import { imgSnapshotTest } from '../../helpers/util.ts';
describe('State diagram', () => {
describe('Current diagram', () => {
it('should render a state with states in it', () => {
imgSnapshotTest(
`

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest } from '../../helpers/util';
import { imgSnapshotTest } from '../../helpers/util.ts';
describe('Flowchart', () => {
it('34: testing the label width in percy', () => {

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util';
import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
describe('Entity Relationship Diagram', () => {
it('should render a simple ER diagram', () => {
@@ -10,7 +10,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render an ER diagram with a recursive relationship', () => {
@@ -23,7 +22,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render an ER diagram with multiple relationships between the same two entities', () => {
@@ -35,7 +33,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render a cyclical ER diagram', () => {
@@ -48,7 +45,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render a not-so-simple ER diagram', () => {
@@ -66,7 +62,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render multiple ER diagrams', () => {
@@ -85,7 +80,6 @@ describe('Entity Relationship Diagram', () => {
],
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render an ER diagram with blank or empty labels', () => {
@@ -98,7 +92,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render an ER diagrams when useMaxWidth is true (default)', () => {
@@ -151,7 +144,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ er: { useMaxWidth: false } }
);
cy.get('svg');
});
it('should render entities with and without attributes', () => {
@@ -164,10 +156,9 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it.only('should render entities with generic and array attributes', () => {
it('should render entities with generic and array attributes', () => {
renderGraph(
`
erDiagram
@@ -179,7 +170,19 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render entities with length in attributes type', () => {
renderGraph(
`
erDiagram
CLUSTER {
varchar(99) name
string(255) description
}
`,
{ logLevel: 1 }
);
});
it('should render entities and attributes with big and small entity names', () => {
@@ -195,6 +198,26 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
});
it('should render entities with attributes that begin with asterisk', () => {
imgSnapshotTest(
`
erDiagram
BOOK {
int *id
string name
varchar(99) summary
}
BOOK }o..o{ STORE : soldBy
STORE {
int *id
string name
varchar(50) address
}
`,
{ loglevel: 1 }
);
cy.get('svg');
});
@@ -214,7 +237,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render entities with comments', () => {
@@ -233,7 +255,6 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render entities with keys and comments', () => {
@@ -253,6 +274,35 @@ describe('Entity Relationship Diagram', () => {
`,
{ logLevel: 1 }
);
cy.get('svg');
});
it('should render entities with aliases', () => {
renderGraph(
`
erDiagram
T1 one or zero to one or more T2 : test
T2 one or many optionally to zero or one T3 : test
T3 zero or more to zero or many T4 : test
T4 many(0) to many(1) T5 : test
T5 many optionally to one T6 : test
T6 only one optionally to only one T1 : test
T4 0+ to 1+ T6 : test
T1 1 to 1 T3 : test
`,
{ logLevel: 1 }
);
});
it('1433: should render a simple ER diagram with a title', () => {
imgSnapshotTest(
`---
title: simple ER diagram
---
erDiagram
CUSTOMER ||--o{ ORDER : places
ORDER ||--|{ LINE-ITEM : contains
`,
{}
);
});
});

View File

@@ -0,0 +1,45 @@
import { imgSnapshotTest } from '../../helpers/util';
describe('Error Diagrams', () => {
beforeEach(() => {
cy.on('uncaught:exception', (err) => {
expect(err.message).to.include('Parse error');
// return false to prevent the error from
// failing this test
return false;
});
});
it('should render a simple ER diagram', () => {
imgSnapshotTest(
`
error
`,
{ logLevel: 1 }
);
});
it('should render error diagram for actual errors', () => {
imgSnapshotTest(
`
flowchart TD
A[Christmas] --|Get money| B(Go shopping)
`,
{ logLevel: 1 }
);
});
it('should render error for wrong ER diagram', () => {
imgSnapshotTest(
`
erDiagram
ATLAS-ORGANIZATION ||--|{ ATLAS-PROJECTS : "has many"
ATLAS-PROJECTS ||--|{ MONGODB-CLUSTERS : "has many"
ATLAS-PROJECTS ||--|{ ATLAS-TEAMS : "has many"
MONGODB-CLUSTERS ||..|{
ATLAS-TEAMS ||..|{
`,
{ logLevel: 1 }
);
});
});

View File

@@ -0,0 +1,846 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
describe.skip('Flowchart ELK', () => {
it('1-elk: should render a simple flowchart', () => {
imgSnapshotTest(
`flowchart-elk TD
A[Christmas] -->|Get money| B(Go shopping)
B --> C{Let me think}
C -->|One| D[Laptop]
C -->|Two| E[iPhone]
C -->|Three| F[fa:fa-car Car]
`,
{}
);
imgSnapshotTest(
`flowchart TD
A[Christmas] -->|Get money| B(Go shopping)
B --> C{Let me think}
C -->|One| D[Laptop]
C -->|Two| E[iPhone]
C -->|Three| F[fa:fa-car Car]
`,
{ flowchart: { defaultRenderer: 'elk' } }
);
});
it('2-elk: should render a simple flowchart with diagramPadding set to 0', () => {
imgSnapshotTest(
`flowchart-elk TD
A[Christmas] -->|Get money| B(Go shopping)
B --> C{Let me think}
%% this is a comment
C -->|One| D[Laptop]
C -->|Two| E[iPhone]
C -->|Three| F[fa:fa-car Car]
`,
{ flowchart: { diagramPadding: 0 } }
);
});
it('3-elk: a link with correct arrowhead to a subgraph', () => {
imgSnapshotTest(
`flowchart-elk TD
P1
P1 -->P1.5
subgraph P1.5
P2
P2.5(( A ))
P3
end
P2 --> P4
P3 --> P6
P1.5 --> P5
`,
{}
);
});
it('4-elk: Length of edges', () => {
imgSnapshotTest(
`flowchart-elk TD
L1 --- L2
L2 --- C
M1 ---> C
R1 .-> R2
R2 <.-> C
C -->|Label 1| E1
C <-- Label 2 ---> E2
C ----> E3
C <-...-> E4
C ======> E5
`,
{}
);
});
it('5-elk: should render escaped without html labels', () => {
imgSnapshotTest(
`flowchart-elk TD
a["<strong>Haiya</strong>"]---->b
`,
{ htmlLabels: false, flowchart: { htmlLabels: false } }
);
});
it('6-elk: should render non-escaped with html labels', () => {
imgSnapshotTest(
`flowchart-elk TD
a["<strong>Haiya</strong>"]===>b
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('7-elk: should render a flowchart when useMaxWidth is true (default)', () => {
renderGraph(
`flowchart-elk TD
A[Christmas] -->|Get money| B(Go shopping)
B --> C{Let me think}
C -->|One| D[Laptop]
C -->|Two| E[iPhone]
C -->|Three| F[fa:fa-car Car]
`,
{ flowchart: { useMaxWidth: true } }
);
cy.get('svg').should((svg) => {
expect(svg).to.have.attr('width', '100%');
// expect(svg).to.have.attr('height');
// use within because the absolute value can be slightly different depending on the environment ±5%
// const height = parseFloat(svg.attr('height'));
// expect(height).to.be.within(446 * 0.95, 446 * 1.05);
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(230 * 0.95, 230 * 1.05);
});
});
it('8-elk: should render a flowchart when useMaxWidth is false', () => {
renderGraph(
`flowchart-elk TD
A[Christmas] -->|Get money| B(Go shopping)
B --> C{Let me think}
C -->|One| D[Laptop]
C -->|Two| E[iPhone]
C -->|Three| F[fa:fa-car Car]
`,
{ flowchart: { 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(446 * 0.95, 446 * 1.05);
expect(width).to.be.within(230 * 0.95, 230 * 1.05);
expect(svg).to.not.have.attr('style');
});
});
it('V2 elk - 16: Render Stadium shape', () => {
imgSnapshotTest(
` flowchart-elk TD
A([stadium shape test])
A -->|Get money| B([Go shopping])
B --> C([Let me think...<br />Do I want something for work,<br />something to spend every free second with,<br />or something to get around?])
C -->|One| D([Laptop])
C -->|Two| E([iPhone])
C -->|Three| F([Car<br/>wroom wroom])
click A "index.html#link-clicked" "link test"
click B testClick "click test"
classDef someclass fill:#f96;
class A someclass;
class C someclass;
`,
{ flowchart: { htmlLabels: false }, fontFamily: 'courier' }
);
});
it('50-elk: handle nested subgraphs in reverse order', () => {
imgSnapshotTest(
`flowchart-elk LR
a -->b
subgraph A
B
end
subgraph B
b
end
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('51-elk: handle nested subgraphs in reverse order', () => {
imgSnapshotTest(
`flowchart-elk LR
a -->b
subgraph A
B
end
subgraph B
b
end
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('52-elk: handle nested subgraphs in several levels', () => {
imgSnapshotTest(
`flowchart-elk TB
b-->B
a-->c
subgraph O
A
end
subgraph B
c
end
subgraph A
a
b
B
end
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('53-elk: handle nested subgraphs with edges in and out', () => {
imgSnapshotTest(
`flowchart-elk TB
internet
nat
routeur
lb1
lb2
compute1
compute2
subgraph project
routeur
nat
subgraph subnet1
compute1
lb1
end
subgraph subnet2
compute2
lb2
end
end
internet --> routeur
routeur --> subnet1 & subnet2
subnet1 & subnet2 --> nat --> internet
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('54-elk: handle nested subgraphs with outgoing links', () => {
imgSnapshotTest(
`flowchart-elk TD
subgraph main
subgraph subcontainer
subcontainer-child
end
subcontainer-child--> subcontainer-sibling
end
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('55-elk: handle nested subgraphs with outgoing links 2', () => {
imgSnapshotTest(
`flowchart-elk TD
subgraph one[One]
subgraph sub_one[Sub One]
_sub_one
end
subgraph sub_two[Sub Two]
_sub_two
end
_one
end
%% here, either the first or the second one
sub_one --> sub_two
_one --> b
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('56-elk: handle nested subgraphs with outgoing links 3', () => {
imgSnapshotTest(
`flowchart-elk TB
subgraph container_Beta
process_C-->Process_D
end
subgraph container_Alpha
process_A-->process_B
process_A-->|messages|process_C
end
process_B-->|via_AWSBatch|container_Beta
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('57-elk: handle nested subgraphs with outgoing links 4', () => {
imgSnapshotTest(
`flowchart-elk LR
subgraph A
a -->b
end
subgraph B
b
end
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('57-elk: handle nested subgraphs with outgoing links 2', () => {
imgSnapshotTest(
`flowchart-elk TB
c1-->a2
subgraph one
a1-->a2
end
subgraph two
b1-->b2
end
subgraph three
c1-->c2
end
one --> two
three --> two
two --> c2
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('57.x: handle nested subgraphs with outgoing links 5', () => {
imgSnapshotTest(
`%% this does not produce the desired result
flowchart-elk TB
subgraph container_Beta
process_C-->Process_D
end
subgraph container_Alpha
process_A-->process_B
process_B-->|via_AWSBatch|container_Beta
process_A-->|messages|process_C
end
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('58-elk: handle styling with style expressions', () => {
imgSnapshotTest(
`
flowchart-elk LR
id1(Start)-->id2(Stop)
style id1 fill:#f9f,stroke:#333,stroke-width:4px
style id2 fill:#bbf,stroke:#f66,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('59-elk: handle styling of subgraphs and links', () => {
imgSnapshotTest(
`
flowchart-elk TD
A[Christmas] ==> D
A[Christmas] -->|Get money| B(Go shopping)
A[Christmas] ==> C
subgraph T ["Test"]
A
B
C
end
classDef Test fill:#F84E68,stroke:#333,color:white;
class A,T Test
classDef TestSub fill:green;
class T TestSub
linkStyle 0,1 color:orange, stroke: orange;
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('60-elk: handle styling for all node shapes - v2', () => {
imgSnapshotTest(
`
flowchart-elk LR
A[red text] -->|default style| B(blue text)
C([red text]) -->|default style| D[[blue text]]
E[(red text)] -->|default style| F((blue text))
G>red text] -->|default style| H{blue text}
I{{red text}} -->|default style| J[/blue text/]
K[\\ red text\\] -->|default style| L[/blue text\\]
M[\\ red text/] -->|default style| N[blue text];
O(((red text))) -->|default style| P(((blue text)));
linkStyle default color:Sienna;
style A stroke:#ff0000,fill:#ffcccc,color:#ff0000;
style B stroke:#0000ff,fill:#ccccff,color:#0000ff;
style C stroke:#ff0000,fill:#ffcccc,color:#ff0000;
style D stroke:#0000ff,fill:#ccccff,color:#0000ff;
style E stroke:#ff0000,fill:#ffcccc,color:#ff0000;
style F stroke:#0000ff,fill:#ccccff,color:#0000ff;
style G stroke:#ff0000,fill:#ffcccc,color:#ff0000;
style H stroke:#0000ff,fill:#ccccff,color:#0000ff;
style I stroke:#ff0000,fill:#ffcccc,color:#ff0000;
style J stroke:#0000ff,fill:#ccccff,color:#0000ff;
style K stroke:#ff0000,fill:#ffcccc,color:#ff0000;
style L stroke:#0000ff,fill:#ccccff,color:#0000ff;
style M stroke:#ff0000,fill:#ffcccc,color:#ff0000;
style N stroke:#0000ff,fill:#ccccff,color:#0000ff;
style O stroke:#ff0000,fill:#ffcccc,color:#ff0000;
style P stroke:#0000ff,fill:#ccccff,color:#0000ff;
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose', logLevel: 2 }
);
});
it('61-elk: fontawesome icons in edge labels', () => {
imgSnapshotTest(
`
flowchart-elk TD
C -->|fa:fa-car Car| F[fa:fa-car Car]
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('62-elk: should render styled subgraphs', () => {
imgSnapshotTest(
`
flowchart-elk TB
A
B
subgraph foo[Foo SubGraph]
C
D
end
subgraph bar[Bar SubGraph]
E
F
end
G
A-->B
B-->C
C-->D
B-->D
D-->E
E-->A
E-->F
F-->D
F-->G
B-->G
G-->D
style foo fill:#F99,stroke-width:2px,stroke:#F0F,color:darkred
style bar fill:#999,stroke-width:10px,stroke:#0F0,color:blue
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('63-elk: title on subgraphs should be themable', () => {
imgSnapshotTest(
`
%%{init:{"theme":"base", "themeVariables": {"primaryColor":"#411d4e", "titleColor":"white", "darkMode":true}}}%%
flowchart-elk LR
subgraph A
a --> b
end
subgraph B
i -->f
end
A --> B
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('65-elk: text-color from classes', () => {
imgSnapshotTest(
`
flowchart-elk LR
classDef dark fill:#000,stroke:#000,stroke-width:4px,color:#fff
Lorem --> Ipsum --> Dolor
class Lorem,Dolor dark
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('66-elk: More nested subgraph cases (TB)', () => {
imgSnapshotTest(
`
flowchart-elk TB
subgraph two
b1
end
subgraph three
c2
end
three --> two
two --> c2
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('67-elk: More nested subgraph cases (RL)', () => {
imgSnapshotTest(
`
flowchart-elk RL
subgraph two
b1
end
subgraph three
c2
end
three --> two
two --> c2
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('68-elk: More nested subgraph cases (BT)', () => {
imgSnapshotTest(
`
flowchart-elk BT
subgraph two
b1
end
subgraph three
c2
end
three --> two
two --> c2
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('69-elk: More nested subgraph cases (LR)', () => {
imgSnapshotTest(
`
flowchart-elk LR
subgraph two
b1
end
subgraph three
c2
end
three --> two
two --> c2
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('70-elk: Handle nested subgraph cases (TB) link out and link between subgraphs', () => {
imgSnapshotTest(
`
flowchart-elk TB
subgraph S1
sub1 -->sub2
end
subgraph S2
sub4
end
S1 --> S2
sub1 --> sub4
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('71-elk: Handle nested subgraph cases (RL) link out and link between subgraphs', () => {
imgSnapshotTest(
`
flowchart-elk RL
subgraph S1
sub1 -->sub2
end
subgraph S2
sub4
end
S1 --> S2
sub1 --> sub4
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('72-elk: Handle nested subgraph cases (BT) link out and link between subgraphs', () => {
imgSnapshotTest(
`
flowchart-elk BT
subgraph S1
sub1 -->sub2
end
subgraph S2
sub4
end
S1 --> S2
sub1 --> sub4
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('74-elk: Handle nested subgraph cases (RL) link out and link between subgraphs', () => {
imgSnapshotTest(
`
flowchart-elk RL
subgraph S1
sub1 -->sub2
end
subgraph S2
sub4
end
S1 --> S2
sub1 --> sub4
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('74-elk: Handle labels for multiple edges from and to the same couple of nodes', () => {
imgSnapshotTest(
`
flowchart-elk RL
subgraph one
a1 -- l1 --> a2
a1 -- l2 --> a2
end
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('76-elk: handle unicode encoded character with HTML labels true', () => {
imgSnapshotTest(
`flowchart-elk TB
a{{"Lorem 'ipsum' dolor 'sit' amet, 'consectetur' adipiscing 'elit'."}}
--> b{{"Lorem #quot;ipsum#quot; dolor #quot;sit#quot; amet,#quot;consectetur#quot; adipiscing #quot;elit#quot;."}}
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('2050-elk: handling of different rendering direction in subgraphs', () => {
imgSnapshotTest(
`
flowchart-elk 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: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('2388-elk: handling default in the node name', () => {
imgSnapshotTest(
`
flowchart-elk LR
default-index.js --> dot.template.js
index.js --> module-utl.js
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('2824-elk: Clipping of edges', () => {
imgSnapshotTest(
`
flowchart-elk TD
A --> B
A --> C
B --> C
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('1433-elk: should render a titled flowchart with titleTopMargin set to 0', () => {
imgSnapshotTest(
`---
title: Simple flowchart
---
flowchart-elk TD
A --> B
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('elk: should include classes on the edges', () => {
renderGraph(
`flowchart-elk TD
A --> B --> C --> D
`,
{}
);
cy.get('svg').should((svg) => {
const edges = svg.querySelectorAll('.edges > path');
edges.forEach((edge) => {
expect(edge).to.have.class('flowchart-link');
});
});
});
describe('Markdown strings flowchart-elk (#4220)', () => {
describe('html labels', () => {
it('With styling and classes', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart-elk LR
A:::someclass --> B["\`The **cat** in the hat\`"]:::someclass
id1(Start)-->id2(Stop)
style id1 fill:#f9f,stroke:#333,stroke-width:4px
style id2 fill:#bbf,stroke:#f66,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
classDef someclass fill:#f96
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('With formatting in a node', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart-elk LR
a{"\`The **cat** in the hat\`"} -- 1o --> b
a -- 2o --> c
a -- 3o --> d
g --2i--> a
d --1i--> a
h --3i -->a
b --> d(The dog in the hog)
c --> d
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('New line in node and formatted edge label', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart-elk LR
b("\`The dog in **the** hog.(1)
NL\`") --"\`1o **bold**\`"--> c
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('Wrapping long text with a new line', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart-elk LR
b(\`The dog in **the** hog.(1).. a a a a *very long text* about it
Word!
Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. \`) --> c
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('Sub graphs and markdown strings', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart-elk LR
subgraph "One"
a("\`The **cat**
in the hat\`") -- "1o" --> b{{"\`The **dog** in the hog\`"}}
end
subgraph "\`**Two**\`"
c("\`The **cat**
in the hat\`") -- "\`1o **ipa**\`" --> d("The dog in the hog")
end
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
});
describe('svg text labels', () => {
it('With styling and classes', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart-elk LR
A:::someclass --> B["\`The **cat** in the hat\`"]:::someclass
id1(Start)-->id2(Stop)
style id1 fill:#f9f,stroke:#333,stroke-width:4px
style id2 fill:#bbf,stroke:#f66,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
classDef someclass fill:#f96
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('With formatting in a node', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart-elk LR
a{"\`The **cat** in the hat\`"} -- 1o --> b
a -- 2o --> c
a -- 3o --> d
g --2i--> a
d --1i--> a
h --3i -->a
b --> d(The dog in the hog)
c --> d
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('New line in node and formatted edge label', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart-elk LR
b("\`The dog in **the** hog.(1)
NL\`") --"\`1o **bold**\`"--> c
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('Wrapping long text with a new line', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart-elk LR
b("\`The dog in **the** hog.(1).. a a a a *very long text* about it
Word!
Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. \`") --> c
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('Sub graphs and markdown strings', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart-elk LR
subgraph "One"
a("\`The **cat**
in the hat\`") -- "1o" --> b{{"\`The **dog** in the hog\`"}}
end
subgraph "\`**Two**\`"
c("\`The **cat**
in the hat\`") -- "\`1o **ipa**\`" --> d("The dog in the hog")
end
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
});
});
});

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util';
import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
describe('Flowchart v2', () => {
it('1: should render a simple flowchart', () => {
@@ -172,7 +172,7 @@ describe('Flowchart v2', () => {
);
});
it('52: handle nested subgraphs in several levels', () => {
it('52: handle nested subgraphs in several levels.', () => {
imgSnapshotTest(
`flowchart TB
b-->B
@@ -449,7 +449,7 @@ flowchart TD
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('65: text-color from classes', () => {
it('65-1: text-color from classes', () => {
imgSnapshotTest(
`
flowchart LR
@@ -460,6 +460,31 @@ flowchart TD
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('65-2: bold text from classes', () => {
imgSnapshotTest(
`
flowchart
classDef cat fill:#f9d5e5, stroke:#233d4d,stroke-width:2px, font-weight:bold;
CS(A long bold text to be viewed):::cat
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('65-3: bigger font from classes', () => {
imgSnapshotTest(
`
flowchart
Node1:::class1 --> Node2:::class2
Node1:::class1 --> Node3:::class2
Node3 --> Node4((I am a circle)):::larger
classDef class1 fill:lightblue
classDef class2 fill:pink
classDef larger font-size:30px,fill:yellow
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('66: More nested subgraph cases (TB)', () => {
imgSnapshotTest(
`
@@ -663,4 +688,190 @@ flowchart RL
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('1433: should render a titled flowchart with titleTopMargin set to 0', () => {
imgSnapshotTest(
`---
title: Simple flowchart
---
flowchart TD
A --> B
`,
{ flowchart: { titleTopMargin: 10 } }
);
});
it('3192: It should be possieble to render flowcharts with invisible edges', () => {
imgSnapshotTest(
`---
title: Simple flowchart with invisible edges
---
flowchart TD
A ~~~ B
`,
{ flowchart: { titleTopMargin: 10 } }
);
});
it('4023: Should render html labels with images and-or text correctly', () => {
imgSnapshotTest(
`flowchart TD
B[<img src='https://mermaid.js.org/mermaid-logo.svg'>]
B-->C[<img src="https://mermaid.js.org/mermaid-logo.svg"> more text <img src='https://mermaid.js.org/mermaid-logo.svg'>]
B-->D(<img src='https://mermaid.js.org/mermaid-logo.svg'> some text)
B-->E(plain)`,
{}
);
});
it('4439: Should render the graph even if some images are missing', () => {
imgSnapshotTest(
`flowchart TD
B[<img>]
B-->C[<img>]`,
{}
);
});
describe('Markdown strings flowchart (#4220)', () => {
describe('html labels', () => {
it('With styling and classes', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart LR
A:::someclass --> B["\`The **cat** in the hat\`"]:::someclass
id1(Start)-->id2(Stop)
style id1 fill:#f9f,stroke:#333,stroke-width:4px
style id2 fill:#bbf,stroke:#f66,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
classDef someclass fill:#f96
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('With formatting in a node', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart LR
a{"\`The **cat** in the hat\`"} -- 1o --> b
a -- 2o --> c
a -- 3o --> d
g --2i--> a
d --1i--> a
h --3i -->a
b --> d(The dog in the hog)
c --> d
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('New line in node and formatted edge label', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart LR
b("\`The dog in **the** hog.(1)
NL\`") --"\`1o **bold**\`"--> c
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('Wrapping long text with a new line', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart LR
b("\`The dog in **the** hog.(1).. a a a a *very long text* about it
Word!
Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. \`") --> c
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('Sub graphs and markdown strings', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": true}} }%%
flowchart LR
subgraph "One"
a("\`The **cat**
in the hat\`") -- "1o" --> b{{"\`The **dog** in the hog\`"}}
end
subgraph "\`**Two**\`"
c("\`The **cat**
in the hat\`") -- "\`1o **ipa**\`" --> d("The dog in the hog")
end
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
});
describe('svg text labels', () => {
it('With styling and classes', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart LR
A:::someclass --> B["\`The **cat** in the hat\`"]:::someclass
id1(Start)-->id2(Stop)
style id1 fill:#f9f,stroke:#333,stroke-width:4px
style id2 fill:#bbf,stroke:#f66,stroke-width:2px,color:#fff,stroke-dasharray: 5 5
classDef someclass fill:#f96
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('With formatting in a node', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart LR
a{"\`The **cat** in the hat\`"} -- 1o --> b
a -- 2o --> c
a -- 3o --> d
g --2i--> a
d --1i--> a
h --3i -->a
b --> d(The dog in the hog)
c --> d
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('New line in node and formatted edge label', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart LR
b("\`The dog in **the** hog.(1)
NL\`") --"\`1o **bold**\`"--> c
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('Wrapping long text with a new line', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart LR
b("\`The dog in **the** hog.(1).. a a a a *very long text* about it
Word!
Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. Another line with many, many words. \`") --> c
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
it('Sub graphs and markdown strings', () => {
imgSnapshotTest(
`%%{init: {"flowchart": {"htmlLabels": false}} }%%
flowchart LR
subgraph "One"
a("\`The **cat**
in the hat\`") -- "1o" --> b{{"\`The **dog** in the hog\`"}}
end
subgraph "\`**Two**\`"
c("\`The **cat**
in the hat\`") -- "\`1o **ipa**\`" --> d("The dog in the hog")
end
`,
{ flowchart: { titleTopMargin: 0 } }
);
});
});
});
});

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util';
import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
describe('Graph', () => {
it('1: should render a simple flowchart no htmlLabels', () => {
@@ -891,4 +891,27 @@ graph TD
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('66: apply class called default on node called default', () => {
imgSnapshotTest(
`
graph TD
classDef default fill:#a34,stroke:#000,stroke-width:4px,color:#fff
hello --> default
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
it('67: should be able to style default node independently', () => {
imgSnapshotTest(
`
flowchart TD
classDef default fill:#a34
hello --> default
style default stroke:#000,stroke-width:4px
`,
{ htmlLabels: true, flowchart: { htmlLabels: true }, securityLevel: 'loose' }
);
});
});

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util.js';
import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
describe('Gantt diagram', () => {
beforeEach(() => {
@@ -133,6 +133,24 @@ describe('Gantt diagram', () => {
);
});
it('should default to showing today marker', () => {
// This test only works if the environment thinks today is 1010-10-10
imgSnapshotTest(
`
gantt
title Show today marker (vertical line should be visible)
dateFormat YYYY-MM-DD
axisFormat %d
%% Should default to being on
%% todayMarker on
section Section1
Yesterday: 1010-10-09, 1d
Today: 1010-10-10, 1d
`,
{}
);
});
it('should hide today marker', () => {
imgSnapshotTest(
`
@@ -142,7 +160,8 @@ describe('Gantt diagram', () => {
axisFormat %d
todayMarker off
section Section1
Today: 1, -1h
Yesterday: 1010-10-09, 1d
Today: 1010-10-10, 1d
`,
{}
);
@@ -157,7 +176,8 @@ describe('Gantt diagram', () => {
axisFormat %d
todayMarker stroke-width:5px,stroke:#00f,opacity:0.5
section Section1
Today: 1, -1h
Yesterday: 1010-10-09, 1d
Today: 1010-10-10, 1d
`,
{}
);
@@ -310,35 +330,186 @@ describe('Gantt diagram', () => {
);
});
it('should render accessibility tags', function () {
const expectedTitle = 'Gantt Diagram';
const expectedAccDescription = 'Tasks for Q4';
renderGraph(
it('should render a gantt diagram with tick is 15 minutes', () => {
imgSnapshotTest(
`
gantt
accTitle: ${expectedTitle}
accDescr: ${expectedAccDescription}
dateFormat YYYY-MM-DD
section Section
A task :a1, 2014-01-01, 30d
title A Gantt Diagram
dateFormat YYYY-MM-DD
axisFormat %H:%M
tickInterval 15minute
excludes weekends
section Section
A task : a1, 2022-10-03, 6h
Another task : after a1, 6h
section Another
Task in sec : 2022-10-03, 3h
another task : 3h
`,
{}
);
cy.get('svg').should((svg) => {
const el = svg.get(0);
const children = Array.from(el.children);
});
const titleEl = children.find(function (node) {
return node.tagName === 'title';
});
const descriptionEl = children.find(function (node) {
return node.tagName === 'desc';
});
it('should render a gantt diagram with tick is 6 hours', () => {
imgSnapshotTest(
`
gantt
title A Gantt Diagram
dateFormat YYYY-MM-DD
axisFormat %d %H:%M
tickInterval 6hour
excludes weekends
expect(titleEl).to.exist;
expect(titleEl.textContent).to.equal(expectedTitle);
expect(descriptionEl).to.exist;
expect(descriptionEl.textContent).to.equal(expectedAccDescription);
});
section Section
A task : a1, 2022-10-03, 1d
Another task : after a1, 2d
section Another
Task in sec : 2022-10-04, 2d
another task : 2d
`,
{}
);
});
it('should render a gantt diagram with tick is 1 day', () => {
imgSnapshotTest(
`
gantt
title A Gantt Diagram
dateFormat YYYY-MM-DD
axisFormat %m-%d
tickInterval 1day
excludes weekends
section Section
A task : a1, 2022-10-01, 30d
Another task : after a1, 20d
section Another
Task in sec : 2022-10-20, 12d
another task : 24d
`,
{}
);
});
it('should render a gantt diagram with tick is 1 week', () => {
imgSnapshotTest(
`
gantt
title A Gantt Diagram
dateFormat YYYY-MM-DD
axisFormat %m-%d
tickInterval 1week
excludes weekends
section Section
A task : a1, 2022-10-01, 30d
Another task : after a1, 20d
section Another
Task in sec : 2022-10-20, 12d
another task : 24d
`,
{}
);
});
it('should render a gantt diagram with tick is 1 week, with the day starting on monday', () => {
imgSnapshotTest(
`
gantt
title A Gantt Diagram
dateFormat YYYY-MM-DD
axisFormat %m-%d
tickInterval 1week
weekday monday
excludes weekends
section Section
A task : a1, 2022-10-01, 30d
Another task : after a1, 20d
section Another
Task in sec : 2022-10-20, 12d
another task : 24d
`,
{}
);
});
it('should render a gantt diagram with tick is 1 month', () => {
imgSnapshotTest(
`
gantt
title A Gantt Diagram
dateFormat YYYY-MM-DD
axisFormat %m-%d
tickInterval 1month
excludes weekends
section Section
A task : a1, 2022-10-01, 30d
Another task : after a1, 20d
section Another
Task in sec : 2022-10-20, 12d
another task : 24d
`,
{}
);
});
it('should render a gantt diagram with tick is 1 day and topAxis is true', () => {
imgSnapshotTest(
`
gantt
title A Gantt Diagram
dateFormat YYYY-MM-DD
axisFormat %m-%d
tickInterval 1day
excludes weekends
section Section
A task : a1, 2022-10-01, 30d
Another task : after a1, 20d
section Another
Task in sec : 2022-10-20, 12d
another task : 24d
`,
{ gantt: { topAxis: true } }
);
});
it('should render when compact is true', () => {
imgSnapshotTest(
`
---
displayMode: compact
---
gantt
title GANTT compact
dateFormat HH:mm:ss
axisFormat %Hh%M
section DB Clean
Clean: 12:00:00, 10m
Clean: 12:30:00, 12m
Clean: 13:00:00, 8m
Clean: 13:30:00, 9m
Clean: 14:00:00, 13m
Clean: 14:30:00, 10m
Clean: 15:00:00, 11m
section Sessions
A: 12:00:00, 63m
B: 12:30:00, 12m
C: 13:05:00, 12m
D: 13:06:00, 33m
E: 13:15:00, 55m
F: 13:20:00, 12m
G: 13:32:00, 18m
H: 13:50:00, 20m
I: 14:10:00, 10m
`,
{}
);
});
});

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest } from '../../helpers/util.js';
import { imgSnapshotTest } from '../../helpers/util.ts';
describe('Git Graph diagram', () => {
it('1: should render a simple gitgraph with commit on main branch', () => {
@@ -322,4 +322,383 @@ describe('Git Graph diagram', () => {
{}
);
});
it('1433: should render a simple gitgraph with a title', () => {
imgSnapshotTest(
`---
title: simple gitGraph
---
gitGraph
commit id: "1-abcdefg"
`,
{}
);
});
it('15: should render a simple gitgraph with commit on main branch | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id: "1"
commit id: "2"
commit id: "3"
`,
{}
);
});
it('16: should render a simple gitgraph with commit on main branch with Id | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id: "One"
commit id: "Two"
commit id: "Three"
`,
{}
);
});
it('17: should render a simple gitgraph with different commitTypes on main branch | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id: "Normal Commit"
commit id: "Reverse Commit" type: REVERSE
commit id: "Hightlight Commit" type: HIGHLIGHT
`,
{}
);
});
it('18: should render a simple gitgraph with tags commitTypes on main branch | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id: "Normal Commit with tag" tag: "v1.0.0"
commit id: "Reverse Commit with tag" type: REVERSE tag: "RC_1"
commit id: "Hightlight Commit" type: HIGHLIGHT tag: "8.8.4"
`,
{}
);
});
it('19: should render a simple gitgraph with two branches | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id: "1"
commit id: "2"
branch develop
checkout develop
commit id: "3"
commit id: "4"
checkout main
commit id: "5"
commit id: "6"
`,
{}
);
});
it('20: should render a simple gitgraph with two branches and merge commit | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id: "1"
commit id: "2"
branch develop
checkout develop
commit id: "3"
commit id: "4"
checkout main
merge develop
commit id: "5"
commit id: "6"
`,
{}
);
});
it('21: should render a simple gitgraph with three branches and tagged merge commit | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id: "1"
commit id: "2"
branch nice_feature
checkout nice_feature
commit id: "3"
checkout main
commit id: "4"
checkout nice_feature
branch very_nice_feature
checkout very_nice_feature
commit id: "5"
checkout main
commit id: "6"
checkout nice_feature
commit id: "7"
checkout main
merge nice_feature id: "12345" tag: "my merge commit"
checkout very_nice_feature
commit id: "8"
checkout main
commit id: "9"
`,
{}
);
});
it('22: should render a simple gitgraph with more than 8 branchs & overriding variables | Vertical Branch', () => {
imgSnapshotTest(
`%%{init: { 'logLevel': 'debug', 'theme': 'default' , 'themeVariables': {
'gitBranchLabel0': '#ffffff',
'gitBranchLabel1': '#ffffff',
'gitBranchLabel2': '#ffffff',
'gitBranchLabel3': '#ffffff',
'gitBranchLabel4': '#ffffff',
'gitBranchLabel5': '#ffffff',
'gitBranchLabel6': '#ffffff',
'gitBranchLabel7': '#ffffff',
} } }%%
gitGraph TB:
checkout main
branch branch1
branch branch2
branch branch3
branch branch4
branch branch5
branch branch6
branch branch7
branch branch8
branch branch9
checkout branch1
commit id: "1"
`,
{}
);
});
it('23: should render a simple gitgraph with rotated labels | Vertical Branch', () => {
imgSnapshotTest(
`%%{init: { 'logLevel': 'debug', 'theme': 'default' , 'gitGraph': {
'rotateCommitLabel': true
} } }%%
gitGraph TB:
commit id: "75f7219e83b321cd3fdde7dcf83bc7c1000a6828"
commit id: "0db4784daf82736dec4569e0dc92980d328c1f2e"
commit id: "7067e9973f9eaa6cd4a4b723c506d1eab598e83e"
commit id: "66972321ad6c199013b5b31f03b3a86fa3f9817d"
`,
{}
);
});
it('24: should render a simple gitgraph with horizontal labels | Vertical Branch', () => {
imgSnapshotTest(
`%%{init: { 'logLevel': 'debug', 'theme': 'default' , 'gitGraph': {
'rotateCommitLabel': false
} } }%%
gitGraph TB:
commit id: "Alpha"
commit id: "Beta"
commit id: "Gamma"
commit id: "Delta"
`,
{}
);
});
it('25: should render a simple gitgraph with cherry pick commit | Vertical Branch', () => {
imgSnapshotTest(
`
gitGraph TB:
commit id: "ZERO"
branch develop
commit id:"A"
checkout main
commit id:"ONE"
checkout develop
commit id:"B"
checkout main
commit id:"TWO"
cherry-pick id:"A"
commit id:"THREE"
checkout develop
commit id:"C"
`,
{}
);
});
it('26: should render a gitgraph with cherry pick commit with custom tag | Vertical Branch', () => {
imgSnapshotTest(
`
gitGraph TB:
commit id: "ZERO"
branch develop
commit id:"A"
checkout main
commit id:"ONE"
checkout develop
commit id:"B"
checkout main
commit id:"TWO"
cherry-pick id:"A" tag: "snapshot"
commit id:"THREE"
checkout develop
commit id:"C"
`,
{}
);
});
it('27: should render a gitgraph with cherry pick commit with no tag | Vertical Branch', () => {
imgSnapshotTest(
`
gitGraph TB:
commit id: "ZERO"
branch develop
commit id:"A"
checkout main
commit id:"ONE"
checkout develop
commit id:"B"
checkout main
commit id:"TWO"
cherry-pick id:"A" tag: ""
commit id:"THREE"
checkout develop
commit id:"C"
`,
{}
);
});
it('28: should render a simple gitgraph with two cherry pick commit | Vertical Branch', () => {
imgSnapshotTest(
`
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
`,
{}
);
});
it('29: should render commits for more than 8 branches | Vertical Branch', () => {
imgSnapshotTest(
`
gitGraph TB:
checkout main
%% Make sure to manually set the ID of all commits, for consistent visual tests
commit id: "1-abcdefg"
checkout main
branch branch1
commit id: "2-abcdefg"
checkout main
merge branch1
branch branch2
commit id: "3-abcdefg"
checkout main
merge branch2
branch branch3
commit id: "4-abcdefg"
checkout main
merge branch3
branch branch4
commit id: "5-abcdefg"
checkout main
merge branch4
branch branch5
commit id: "6-abcdefg"
checkout main
merge branch5
branch branch6
commit id: "7-abcdefg"
checkout main
merge branch6
branch branch7
commit id: "8-abcdefg"
checkout main
merge branch7
branch branch8
commit id: "9-abcdefg"
checkout main
merge branch8
branch branch9
commit id: "10-abcdefg"
`,
{}
);
});
it('30: should render a simple gitgraph with three branches,custom merge commit id,tag,type | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id: "1"
commit id: "2"
branch nice_feature
checkout nice_feature
commit id: "3"
checkout main
commit id: "4"
checkout nice_feature
branch very_nice_feature
checkout very_nice_feature
commit id: "5"
checkout main
commit id: "6"
checkout nice_feature
commit id: "7"
checkout main
merge nice_feature id: "customID" tag: "customTag" type: REVERSE
checkout very_nice_feature
commit id: "8"
checkout main
commit id: "9"
`,
{}
);
});
it('31: should render a simple gitgraph with a title | Vertical Branch', () => {
imgSnapshotTest(
`---
title: simple gitGraph
---
gitGraph TB:
commit id: "1-abcdefg"
`,
{}
);
});
it('32: should render a simple gitgraph overlapping commits | Vertical Branch', () => {
imgSnapshotTest(
`gitGraph TB:
commit id:"s1"
commit id:"s2"
branch branch1
commit id:"s3"
commit id:"s4"
checkout main
commit id:"s5"
checkout branch1
commit id:"s6"
commit id:"s7"
merge main
`,
{}
);
});
it('33: should render a simple gitgraph overlapping commits', () => {
imgSnapshotTest(
`gitGraph
commit id:"s1"
commit id:"s2"
branch branch1
commit id:"s3"
commit id:"s4"
checkout main
commit id:"s5"
checkout branch1
commit id:"s6"
commit id:"s7"
merge main
`,
{}
);
});
});

View File

@@ -1,13 +0,0 @@
import { imgSnapshotTest } from '../../helpers/util.js';
describe('Sequencediagram', () => {
it('should render a simple info diagrams', () => {
imgSnapshotTest(
`
info
showInfo
`,
{}
);
});
});

View File

@@ -0,0 +1,11 @@
import { imgSnapshotTest } from '../../helpers/util.ts';
describe('info diagram', () => {
it('should handle an info definition', () => {
imgSnapshotTest(`info`);
});
it('should handle an info definition with showInfo', () => {
imgSnapshotTest(`info showInfo`);
});
});

View File

@@ -1,4 +1,4 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util.js';
import { imgSnapshotTest, renderGraph } from '../../helpers/util.ts';
describe('User journey diagram', () => {
it('Simple test', () => {

View File

@@ -1,75 +0,0 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util.js';
describe('Mindmap', () => {
it('square shape', () => {
imgSnapshotTest(
`
mindmap
root[
The root
]
`,
{}
);
cy.get('svg');
});
it('rounded rect shape', () => {
imgSnapshotTest(
`
mindmap
root((
The root
))
`,
{}
);
cy.get('svg');
});
it('circle shape', () => {
imgSnapshotTest(
`
mindmap
root(
The root
)
`,
{}
);
cy.get('svg');
});
it('default shape', () => {
imgSnapshotTest(
`
mindmap
The root
`,
{}
);
cy.get('svg');
});
it('adding children', () => {
imgSnapshotTest(
`
mindmap
The root
child1
child2
`,
{}
);
cy.get('svg');
});
it('adding grand children', () => {
imgSnapshotTest(
`
mindmap
The root
child1
child2
child3
`,
{}
);
cy.get('svg');
});
});

View File

@@ -1,115 +0,0 @@
import { imgSnapshotTest, renderGraph } from '../../helpers/util.js';
describe('Mindmaps', () => {
it('Only a root', () => {
imgSnapshotTest(
`mindmap
root
`,
{}
);
});
it('a root with a shape', () => {
imgSnapshotTest(
`mindmap
root[root]
`,
{}
);
});
it('a root with wrapping text and a shape', () => {
imgSnapshotTest(
`mindmap
root[A root with a long text that wraps to keep the node size in check]
`,
{}
);
});
it('a root with an icon', () => {
imgSnapshotTest(
`mindmap
root[root]
::icon(mdi mdi-fire)
`,
{}
);
});
it('Blang and cloud shape', () => {
imgSnapshotTest(
`mindmap
root))bang((
::icon(mdi mdi-fire)
a))Another bang((
::icon(mdi mdi-fire)
a)A cloud(
::icon(mdi mdi-fire)
`,
{}
);
});
it('Blang and cloud shape with icons', () => {
imgSnapshotTest(
`mindmap
root))bang((
a))Another bang((
a)A cloud(
`,
{}
);
});
it('braches', () => {
imgSnapshotTest(
`mindmap
root
child1
grandchild 1
grandchild 2
child2
grandchild 3
grandchild 4
child3
grandchild 5
grandchild 6
`,
{}
);
});
it('braches with shapes and labels', () => {
imgSnapshotTest(
`mindmap
root
child1((Circle))
grandchild 1
grandchild 2
child2(Round rectangle)
grandchild 3
grandchild 4
child3[Square]
grandchild 5
::icon(mdi mdi-fire)
gc6((grand<br/>child 6))
::icon(mdi mdi-fire)
`,
{}
);
});
it('text shouhld wrap with icon', () => {
imgSnapshotTest(
`mindmap
root
Child3(A node with an icon and with a long text that wraps to keep the node size in check)
`,
{}
);
});
/* The end */
});

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