mirror of
https://github.com/mermaid-js/mermaid.git
synced 2025-12-03 19:17:00 +01:00
fix: breaking edge labels
on-behalf-of: @Mermaid-Chart <hello@mermaidchart.com>
This commit is contained in:
@@ -1,13 +1,12 @@
|
|||||||
import { select } from 'd3';
|
import { select } from 'd3';
|
||||||
import { getConfig } from '../../diagram-api/diagramAPI.js';
|
import { getConfig } from '../../diagram-api/diagramAPI.js';
|
||||||
import common, {
|
import common, {
|
||||||
evaluate,
|
|
||||||
hasKatex,
|
hasKatex,
|
||||||
renderKatexSanitized,
|
renderKatexSanitized,
|
||||||
sanitizeText,
|
sanitizeText,
|
||||||
} from '../../diagrams/common/common.js';
|
} from '../../diagrams/common/common.js';
|
||||||
import { log } from '../../logger.js';
|
import { log } from '../../logger.js';
|
||||||
import { decodeEntities } from '../../utils.js';
|
import { decodeEntities, shouldUseHtmlLabels } from '../../utils.js';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param dom
|
* @param dom
|
||||||
@@ -63,8 +62,7 @@ const createLabel = async (_vertexText, style, isTitle, isNode) => {
|
|||||||
if (typeof vertexText === 'object') {
|
if (typeof vertexText === 'object') {
|
||||||
vertexText = vertexText[0];
|
vertexText = vertexText[0];
|
||||||
}
|
}
|
||||||
|
if (shouldUseHtmlLabels()) {
|
||||||
if (evaluate(getConfig().flowchart.htmlLabels)) {
|
|
||||||
// TODO: addHtmlLabel accepts a labelStyle. Do we possibly have that?
|
// TODO: addHtmlLabel accepts a labelStyle. Do we possibly have that?
|
||||||
vertexText = vertexText.replace(/\\n|\n/g, '<br />');
|
vertexText = vertexText.replace(/\\n|\n/g, '<br />');
|
||||||
log.info('vertexText' + vertexText);
|
log.info('vertexText' + vertexText);
|
||||||
|
|||||||
@@ -1,8 +1,7 @@
|
|||||||
import { getConfig } from '../../diagram-api/diagramAPI.js';
|
import { getConfig } from '../../diagram-api/diagramAPI.js';
|
||||||
import { evaluate } from '../../diagrams/common/common.js';
|
|
||||||
import { log } from '../../logger.js';
|
import { log } from '../../logger.js';
|
||||||
import { createText } from '../createText.js';
|
import { createText } from '../createText.js';
|
||||||
import utils from '../../utils.js';
|
import utils, { shouldUseHtmlLabels } from '../../utils.js';
|
||||||
import {
|
import {
|
||||||
getLineFunctionsWithOffset,
|
getLineFunctionsWithOffset,
|
||||||
markerOffsets,
|
markerOffsets,
|
||||||
@@ -45,16 +44,20 @@ export const getLabelStyles = (styleArray) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const insertEdgeLabel = async (elem, edge) => {
|
export const insertEdgeLabel = async (elem, edge) => {
|
||||||
let useHtmlLabels = evaluate(getConfig().flowchart.htmlLabels);
|
const useHtmlLabels = shouldUseHtmlLabels();
|
||||||
|
|
||||||
const { labelStyles } = styles2String(edge);
|
const { labelStyles } = styles2String(edge);
|
||||||
edge.labelStyle = labelStyles;
|
edge.labelStyle = labelStyles;
|
||||||
const labelElement = await createText(elem, edge.label, {
|
const labelElement =
|
||||||
|
edge.labelType === 'markdown' && useHtmlLabels
|
||||||
|
? await createText(elem, edge.label, {
|
||||||
style: edge.labelStyle,
|
style: edge.labelStyle,
|
||||||
useHtmlLabels,
|
useHtmlLabels,
|
||||||
addSvgBackground: true,
|
addSvgBackground: true,
|
||||||
isNode: false,
|
isNode: false,
|
||||||
});
|
})
|
||||||
|
: await createLabel(edge.label, getLabelStyles(edge.labelStyle), false, false);
|
||||||
|
|
||||||
log.info('abc82', edge, edge.labelType);
|
log.info('abc82', edge, edge.labelType);
|
||||||
|
|
||||||
// Create outer g, edgeLabel, this will be positioned after graph layout
|
// Create outer g, edgeLabel, this will be positioned after graph layout
|
||||||
|
|||||||
Reference in New Issue
Block a user