mirror of
https://github.com/mermaid-js/mermaid.git
synced 2025-01-28 07:03:17 +08:00
#1726 Handling think lines
This commit is contained in:
parent
cc1560d3e3
commit
7404e436d2
@ -24,29 +24,35 @@
|
|||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="mermaid" style="width: 50%; height: 400px;">
|
<div class="mermaid" style="width: 50%; height: 400px;">
|
||||||
graph TD
|
graph TD
|
||||||
|
A[Christmas] ==> D
|
||||||
A[Christmas] -->|Get money| B(Go shopping)
|
A[Christmas] -->|Get money| B(Go shopping)
|
||||||
|
A[Christmas] ==> C
|
||||||
subgraph T ["Test"]
|
subgraph T ["Test"]
|
||||||
A
|
A
|
||||||
B
|
B
|
||||||
|
C
|
||||||
end
|
end
|
||||||
classDef Test fill:#F84E68,stroke:#333,color:white;
|
classDef Test fill:#F84E68,stroke:#333,color:white;
|
||||||
class A,T Test
|
class A,T Test
|
||||||
classDef TestSub fill:green;
|
classDef TestSub fill:green;
|
||||||
class T TestSub
|
class T TestSub
|
||||||
linkStyle 0 color:orange, stroke: orange;
|
linkStyle 0,1 color:orange, stroke: orange;
|
||||||
</div>
|
</div>
|
||||||
<div class="mermaid" style="width: 50%; height: 400px;">
|
<div class="mermaid" style="width: 50%; height: 400px;">
|
||||||
flowchart TD
|
flowchart TD
|
||||||
|
A[Christmas] ==> D
|
||||||
A[Christmas] -->|Get money| B(Go shopping)
|
A[Christmas] -->|Get money| B(Go shopping)
|
||||||
|
A[Christmas] ==> C
|
||||||
subgraph T ["Test"]
|
subgraph T ["Test"]
|
||||||
A
|
A
|
||||||
B
|
B
|
||||||
|
C
|
||||||
end
|
end
|
||||||
classDef Test fill:#F84E68,stroke:#333,color:white;
|
classDef Test fill:#F84E68,stroke:#333,color:white;
|
||||||
class A,T Test
|
class A,T Test
|
||||||
classDef TestSub fill:green;
|
classDef TestSub fill:green;
|
||||||
class T TestSub
|
class T TestSub
|
||||||
linkStyle 0 color:orange, stroke: orange;
|
linkStyle 0,1 color:orange, stroke: orange;
|
||||||
</div>
|
</div>
|
||||||
<div class="mermaid2" style="width: 50%; height: 20%;">
|
<div class="mermaid2" style="width: 50%; height: 20%;">
|
||||||
flowchart TB
|
flowchart TB
|
||||||
|
@ -193,7 +193,7 @@ export const addEdges = function(edges, g) {
|
|||||||
var linkNameStart = 'LS-' + edge.start;
|
var linkNameStart = 'LS-' + edge.start;
|
||||||
var linkNameEnd = 'LE-' + edge.end;
|
var linkNameEnd = 'LE-' + edge.end;
|
||||||
|
|
||||||
const edgeData = {};
|
const edgeData = { style: '', labelStyle: '' };
|
||||||
edgeData.minlen = edge.length || 1;
|
edgeData.minlen = edge.length || 1;
|
||||||
//edgeData.id = 'id' + cnt;
|
//edgeData.id = 'id' + cnt;
|
||||||
|
|
||||||
@ -227,45 +227,40 @@ export const addEdges = function(edges, g) {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// logger.info('apa', edgeData, edge);
|
|
||||||
// edgeData.arrowTypeStart = edge.arrowTypeStart;
|
|
||||||
// edgeData.arrowTypeStart = edge.arrowTypeStart;
|
|
||||||
// edgeData.arrowType = edgeData.arrowTypeEnd;
|
|
||||||
// logger.info('apa', edgeData, edge);
|
|
||||||
|
|
||||||
let style = '';
|
let style = '';
|
||||||
let labelStyle = '';
|
let labelStyle = '';
|
||||||
|
|
||||||
|
switch (edge.stroke) {
|
||||||
|
case 'normal':
|
||||||
|
style = 'fill:none;';
|
||||||
|
if (typeof defaultStyle !== 'undefined') {
|
||||||
|
style = defaultStyle;
|
||||||
|
}
|
||||||
|
if (typeof defaultLabelStyle !== 'undefined') {
|
||||||
|
labelStyle = defaultLabelStyle;
|
||||||
|
}
|
||||||
|
edgeData.thickness = 'normal';
|
||||||
|
edgeData.pattern = 'solid';
|
||||||
|
break;
|
||||||
|
case 'dotted':
|
||||||
|
edgeData.thickness = 'normal';
|
||||||
|
edgeData.pattern = 'dotted';
|
||||||
|
edgeData.style = 'fill:none;stroke-width:2px;stroke-dasharray:3;';
|
||||||
|
break;
|
||||||
|
case 'thick':
|
||||||
|
edgeData.thickness = 'thick';
|
||||||
|
edgeData.pattern = 'solid';
|
||||||
|
edgeData.style = 'stroke-width: 3.5px;fill:none;';
|
||||||
|
break;
|
||||||
|
}
|
||||||
if (typeof edge.style !== 'undefined') {
|
if (typeof edge.style !== 'undefined') {
|
||||||
const styles = getStylesFromArray(edge.style);
|
const styles = getStylesFromArray(edge.style);
|
||||||
style = styles.style;
|
style = styles.style;
|
||||||
labelStyle = styles.labelStyle;
|
labelStyle = styles.labelStyle;
|
||||||
} else {
|
|
||||||
switch (edge.stroke) {
|
|
||||||
case 'normal':
|
|
||||||
style = 'fill:none';
|
|
||||||
if (typeof defaultStyle !== 'undefined') {
|
|
||||||
style = defaultStyle;
|
|
||||||
}
|
|
||||||
if (typeof defaultLabelStyle !== 'undefined') {
|
|
||||||
labelStyle = defaultLabelStyle;
|
|
||||||
}
|
|
||||||
edgeData.thickness = 'normal';
|
|
||||||
edgeData.pattern = 'solid';
|
|
||||||
break;
|
|
||||||
case 'dotted':
|
|
||||||
edgeData.thickness = 'normal';
|
|
||||||
edgeData.pattern = 'dotted';
|
|
||||||
break;
|
|
||||||
case 'thick':
|
|
||||||
edgeData.thickness = 'thick';
|
|
||||||
edgeData.pattern = 'solid';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
edgeData.style = style;
|
edgeData.style = edgeData.style += style;
|
||||||
edgeData.labelStyle = labelStyle;
|
edgeData.labelStyle = edgeData.labelStyle += labelStyle;
|
||||||
|
|
||||||
if (typeof edge.interpolate !== 'undefined') {
|
if (typeof edge.interpolate !== 'undefined') {
|
||||||
edgeData.curve = interpolateToCurve(edge.interpolate, curveLinear);
|
edgeData.curve = interpolateToCurve(edge.interpolate, curveLinear);
|
||||||
@ -282,21 +277,21 @@ export const addEdges = function(edges, g) {
|
|||||||
} else {
|
} else {
|
||||||
edgeData.arrowheadStyle = 'fill: #333';
|
edgeData.arrowheadStyle = 'fill: #333';
|
||||||
edgeData.labelpos = 'c';
|
edgeData.labelpos = 'c';
|
||||||
|
|
||||||
if (getConfig().flowchart.htmlLabels && false) { // eslint-disable-line
|
|
||||||
edgeData.labelType = 'html';
|
|
||||||
edgeData.label = `<span id="L-${linkId}" class="edgeLabel L-${linkNameStart}' L-${linkNameEnd}">${edge.text}</span>`;
|
|
||||||
} else {
|
|
||||||
edgeData.labelType = 'text';
|
|
||||||
edgeData.label = edge.text.replace(common.lineBreakRegex, '\n');
|
|
||||||
|
|
||||||
if (typeof edge.style === 'undefined') {
|
|
||||||
edgeData.style = edgeData.style || 'stroke: #333; stroke-width: 1.5px;fill:none';
|
|
||||||
}
|
|
||||||
|
|
||||||
edgeData.labelStyle = edgeData.labelStyle.replace('color:', 'fill:');
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
// if (getConfig().flowchart.htmlLabels && false) {
|
||||||
|
// // eslint-disable-line
|
||||||
|
// edgeData.labelType = 'html';
|
||||||
|
// edgeData.label = `<span id="L-${linkId}" class="edgeLabel L-${linkNameStart}' L-${linkNameEnd}">${edge.text}</span>`;
|
||||||
|
// } else {
|
||||||
|
edgeData.labelType = 'text';
|
||||||
|
edgeData.label = edge.text.replace(common.lineBreakRegex, '\n');
|
||||||
|
|
||||||
|
if (typeof edge.style === 'undefined') {
|
||||||
|
edgeData.style = edgeData.style || 'stroke: #333; stroke-width: 1.5px;fill:none;';
|
||||||
|
}
|
||||||
|
|
||||||
|
edgeData.labelStyle = edgeData.labelStyle.replace('color:', 'fill:');
|
||||||
|
// }
|
||||||
|
|
||||||
edgeData.id = linkId;
|
edgeData.id = linkId;
|
||||||
edgeData.classes = 'flowchart-link ' + linkNameStart + ' ' + linkNameEnd;
|
edgeData.classes = 'flowchart-link ' + linkNameStart + ' ' + linkNameEnd;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user