mirror of
https://github.com/mermaid-js/mermaid.git
synced 2025-08-15 06:19:24 +02:00
fix: refactored documentation, test cases and sequenceDiagram.jison file
on-behalf-of: @Mermaid-Chart <hello@mermaidchart.com>
This commit is contained in:
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
# Interface: ParseOptions
|
# Interface: ParseOptions
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:84](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L84)
|
Defined in: [packages/mermaid/src/types.ts:89](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L89)
|
||||||
|
|
||||||
## Properties
|
## Properties
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@ Defined in: [packages/mermaid/src/types.ts:84](https://github.com/mermaid-js/mer
|
|||||||
|
|
||||||
> `optional` **suppressErrors**: `boolean`
|
> `optional` **suppressErrors**: `boolean`
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:89](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L89)
|
Defined in: [packages/mermaid/src/types.ts:94](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L94)
|
||||||
|
|
||||||
If `true`, parse will return `false` instead of throwing error when the diagram is invalid.
|
If `true`, parse will return `false` instead of throwing error when the diagram is invalid.
|
||||||
The `parseError` function will not be called.
|
The `parseError` function will not be called.
|
||||||
|
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
# Interface: ParseResult
|
# Interface: ParseResult
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:92](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L92)
|
Defined in: [packages/mermaid/src/types.ts:97](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L97)
|
||||||
|
|
||||||
## Properties
|
## Properties
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@ Defined in: [packages/mermaid/src/types.ts:92](https://github.com/mermaid-js/mer
|
|||||||
|
|
||||||
> **config**: [`MermaidConfig`](MermaidConfig.md)
|
> **config**: [`MermaidConfig`](MermaidConfig.md)
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:100](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L100)
|
Defined in: [packages/mermaid/src/types.ts:105](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L105)
|
||||||
|
|
||||||
The config passed as YAML frontmatter or directives
|
The config passed as YAML frontmatter or directives
|
||||||
|
|
||||||
@@ -28,6 +28,6 @@ The config passed as YAML frontmatter or directives
|
|||||||
|
|
||||||
> **diagramType**: `string`
|
> **diagramType**: `string`
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:96](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L96)
|
Defined in: [packages/mermaid/src/types.ts:101](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L101)
|
||||||
|
|
||||||
The diagram type, e.g. 'flowchart', 'sequence', etc.
|
The diagram type, e.g. 'flowchart', 'sequence', etc.
|
||||||
|
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
# Interface: RenderResult
|
# Interface: RenderResult
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:110](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L110)
|
Defined in: [packages/mermaid/src/types.ts:115](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L115)
|
||||||
|
|
||||||
## Properties
|
## Properties
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@ Defined in: [packages/mermaid/src/types.ts:110](https://github.com/mermaid-js/me
|
|||||||
|
|
||||||
> `optional` **bindFunctions**: (`element`) => `void`
|
> `optional` **bindFunctions**: (`element`) => `void`
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:128](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L128)
|
Defined in: [packages/mermaid/src/types.ts:133](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L133)
|
||||||
|
|
||||||
Bind function to be called after the svg has been inserted into the DOM.
|
Bind function to be called after the svg has been inserted into the DOM.
|
||||||
This is necessary for adding event listeners to the elements in the svg.
|
This is necessary for adding event listeners to the elements in the svg.
|
||||||
@@ -45,7 +45,7 @@ bindFunctions?.(div); // To call bindFunctions only if it's present.
|
|||||||
|
|
||||||
> **diagramType**: `string`
|
> **diagramType**: `string`
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:118](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L118)
|
Defined in: [packages/mermaid/src/types.ts:123](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L123)
|
||||||
|
|
||||||
The diagram type, e.g. 'flowchart', 'sequence', etc.
|
The diagram type, e.g. 'flowchart', 'sequence', etc.
|
||||||
|
|
||||||
@@ -55,6 +55,6 @@ The diagram type, e.g. 'flowchart', 'sequence', etc.
|
|||||||
|
|
||||||
> **svg**: `string`
|
> **svg**: `string`
|
||||||
|
|
||||||
Defined in: [packages/mermaid/src/types.ts:114](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L114)
|
Defined in: [packages/mermaid/src/types.ts:119](https://github.com/mermaid-js/mermaid/blob/master/packages/mermaid/src/types.ts#L119)
|
||||||
|
|
||||||
The svg code for the rendered graph.
|
The svg code for the rendered graph.
|
||||||
|
@@ -94,22 +94,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Response to boundary
|
Bob->>Alice: Response to boundary
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid-example
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "boundary" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Request from boundary
|
|
||||||
Bob->>Alice: Response to boundary
|
|
||||||
```
|
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "boundary" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Request from boundary
|
|
||||||
Bob->>Alice: Response to boundary
|
|
||||||
```
|
|
||||||
|
|
||||||
### Control
|
### Control
|
||||||
|
|
||||||
If you want to use the control symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the control symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -130,22 +114,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Control response
|
Bob->>Alice: Control response
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid-example
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "control" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Control request
|
|
||||||
Bob->>Alice: Control response
|
|
||||||
```
|
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "control" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Control request
|
|
||||||
Bob->>Alice: Control response
|
|
||||||
```
|
|
||||||
|
|
||||||
### Entity
|
### Entity
|
||||||
|
|
||||||
If you want to use the entity symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the entity symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -166,22 +134,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Entity response
|
Bob->>Alice: Entity response
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid-example
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "entity" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Entity request
|
|
||||||
Bob->>Alice: Entity response
|
|
||||||
```
|
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "entity" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Entity request
|
|
||||||
Bob->>Alice: Entity response
|
|
||||||
```
|
|
||||||
|
|
||||||
### Database
|
### Database
|
||||||
|
|
||||||
If you want to use the database symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the database symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -202,22 +154,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: DB result
|
Bob->>Alice: DB result
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid-example
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "database" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: DB query
|
|
||||||
Bob->>Alice: DB result
|
|
||||||
```
|
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "database" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: DB query
|
|
||||||
Bob->>Alice: DB result
|
|
||||||
```
|
|
||||||
|
|
||||||
### Collections
|
### Collections
|
||||||
|
|
||||||
If you want to use the collections symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the collections symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -238,22 +174,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Collections response
|
Bob->>Alice: Collections response
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid-example
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "collections" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Collections request
|
|
||||||
Bob->>Alice: Collections response
|
|
||||||
```
|
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "collections" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Collections request
|
|
||||||
Bob->>Alice: Collections response
|
|
||||||
```
|
|
||||||
|
|
||||||
### Queue
|
### Queue
|
||||||
|
|
||||||
If you want to use the queue symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the queue symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -274,22 +194,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Queue response
|
Bob->>Alice: Queue response
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid-example
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "queue" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Queue message
|
|
||||||
Bob->>Alice: Queue response
|
|
||||||
```
|
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "queue" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Queue message
|
|
||||||
Bob->>Alice: Queue response
|
|
||||||
```
|
|
||||||
|
|
||||||
### Aliases
|
### Aliases
|
||||||
|
|
||||||
The actor can have a convenient identifier and a descriptive label.
|
The actor can have a convenient identifier and a descriptive label.
|
||||||
|
@@ -235,7 +235,7 @@ participant_statement
|
|||||||
| 'participant_actor' actor 'AS' restOfLine 'NEWLINE' {$2.draw='actor'; $2.type='addParticipant';$2.description=yy.parseMessage($4); $$=$2;}
|
| 'participant_actor' actor 'AS' restOfLine 'NEWLINE' {$2.draw='actor'; $2.type='addParticipant';$2.description=yy.parseMessage($4); $$=$2;}
|
||||||
| 'participant_actor' actor 'NEWLINE' {$2.draw='actor'; $2.type='addParticipant'; $$=$2;}
|
| 'participant_actor' actor 'NEWLINE' {$2.draw='actor'; $2.type='addParticipant'; $$=$2;}
|
||||||
| 'destroy' actor 'NEWLINE' {$2.type='destroyParticipant'; $$=$2;}
|
| 'destroy' actor 'NEWLINE' {$2.type='destroyParticipant'; $$=$2;}
|
||||||
| 'participant' actor_with_config 'NEWLINE' { $2.draw = 'participant'; $2.type = 'addParticipant'; $$ = $2;}
|
| 'participant' actor_with_config 'NEWLINE' {$2.draw='participant'; $2.type='addParticipant'; $$=$2;}
|
||||||
|
|
||||||
;
|
;
|
||||||
|
|
||||||
|
@@ -2038,13 +2038,17 @@ Bob->>Alice:Got it!
|
|||||||
expect(messages[0].from).toBe('Alice');
|
expect(messages[0].from).toBe('Alice');
|
||||||
expect(messages[0].to).toBe('Bob');
|
expect(messages[0].to).toBe('Bob');
|
||||||
});
|
});
|
||||||
describe('when newly parsing messages ', () => {
|
describe('when parsing extended participant syntax ', () => {
|
||||||
it('should parse a message', async () => {
|
it('should parse a message', async () => {
|
||||||
const actor1 = 'database';
|
const actor1 = 'database';
|
||||||
const diagram = await Diagram.fromText(`
|
const diagram = await Diagram.fromText(`
|
||||||
sequenceDiagram
|
sequenceDiagram
|
||||||
participant Alice@{ "type" : "database" }
|
participant Alice@{ "type" : "database" }
|
||||||
participant Bob@{ "type" : "database" }
|
participant Bob@{ "type" : "database" }
|
||||||
|
participant Carl@{ type: "database" }
|
||||||
|
participant David@{ "type" : 'database' }
|
||||||
|
participant Eve@{ type: 'database' }
|
||||||
|
participant Favela@{ "type" : "database" }
|
||||||
Bob->>+Alice: Hi Alice
|
Bob->>+Alice: Hi Alice
|
||||||
Alice->>+Bob: Hi Bob
|
Alice->>+Bob: Hi Bob
|
||||||
`);
|
`);
|
||||||
|
@@ -58,14 +58,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Response to boundary
|
Bob->>Alice: Response to boundary
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "boundary" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Request from boundary
|
|
||||||
Bob->>Alice: Response to boundary
|
|
||||||
```
|
|
||||||
|
|
||||||
### Control
|
### Control
|
||||||
|
|
||||||
If you want to use the control symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the control symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -78,14 +70,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Control response
|
Bob->>Alice: Control response
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "control" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Control request
|
|
||||||
Bob->>Alice: Control response
|
|
||||||
```
|
|
||||||
|
|
||||||
### Entity
|
### Entity
|
||||||
|
|
||||||
If you want to use the entity symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the entity symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -98,14 +82,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Entity response
|
Bob->>Alice: Entity response
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "entity" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Entity request
|
|
||||||
Bob->>Alice: Entity response
|
|
||||||
```
|
|
||||||
|
|
||||||
### Database
|
### Database
|
||||||
|
|
||||||
If you want to use the database symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the database symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -118,14 +94,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: DB result
|
Bob->>Alice: DB result
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "database" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: DB query
|
|
||||||
Bob->>Alice: DB result
|
|
||||||
```
|
|
||||||
|
|
||||||
### Collections
|
### Collections
|
||||||
|
|
||||||
If you want to use the collections symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the collections symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -138,14 +106,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Collections response
|
Bob->>Alice: Collections response
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "collections" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Collections request
|
|
||||||
Bob->>Alice: Collections response
|
|
||||||
```
|
|
||||||
|
|
||||||
### Queue
|
### Queue
|
||||||
|
|
||||||
If you want to use the queue symbol for a participant, use the JSON configuration syntax as shown below.
|
If you want to use the queue symbol for a participant, use the JSON configuration syntax as shown below.
|
||||||
@@ -158,14 +118,6 @@ sequenceDiagram
|
|||||||
Bob->>Alice: Queue response
|
Bob->>Alice: Queue response
|
||||||
```
|
```
|
||||||
|
|
||||||
```mermaid
|
|
||||||
sequenceDiagram
|
|
||||||
participant Alice@{ "type" : "queue" }
|
|
||||||
participant Bob
|
|
||||||
Alice->>Bob: Queue message
|
|
||||||
Bob->>Alice: Queue response
|
|
||||||
```
|
|
||||||
|
|
||||||
### Aliases
|
### Aliases
|
||||||
|
|
||||||
The actor can have a convenient identifier and a descriptive label.
|
The actor can have a convenient identifier and a descriptive label.
|
||||||
|
Reference in New Issue
Block a user