mirror of
https://github.com/mermaid-js/mermaid.git
synced 2025-09-19 15:30:03 +02:00
Lean-right and question
This commit is contained in:
@@ -8,13 +8,29 @@ import { insertPolygonShape } from './insertPolygonShape.js';
|
||||
export const lean_right = async (parent: SVGAElement, node: Node): Promise<SVGAElement> => {
|
||||
const { labelStyles, nodeStyles } = styles2String(node);
|
||||
node.labelStyle = labelStyles;
|
||||
const { shapeSvg, bbox } = await labelHelper(parent, node, getNodeClasses(node));
|
||||
const nodePadding = node.padding ?? 0;
|
||||
const labelPaddingX = node.look === 'neo' ? nodePadding * 3 : nodePadding;
|
||||
const labelPaddingY = node.look === 'neo' ? nodePadding * 1.5 : nodePadding;
|
||||
|
||||
const w = Math.max(bbox.width + labelPaddingY, node?.width ?? 0);
|
||||
const h = Math.max(bbox.height + labelPaddingX, node?.height ?? 0);
|
||||
if (node.width || node.height) {
|
||||
node.width = node?.width ?? 0;
|
||||
if (node.width < 50) {
|
||||
node.width = 50;
|
||||
}
|
||||
|
||||
node.height = node?.height ?? 0;
|
||||
if (node.height < 50) {
|
||||
node.height = 50;
|
||||
}
|
||||
const _dx = (3 * node.height) / 6;
|
||||
node.height = node.height - labelPaddingY;
|
||||
node.width = node.width - 2 * _dx;
|
||||
}
|
||||
|
||||
const { shapeSvg, bbox } = await labelHelper(parent, node, getNodeClasses(node));
|
||||
|
||||
const h = Math.max(bbox.height, node?.height ?? 0) + labelPaddingY;
|
||||
const w = Math.max(bbox.width, node?.width ?? 0);
|
||||
|
||||
const points = [
|
||||
{ x: (-3 * h) / 6, y: 0 },
|
||||
{ x: w, y: 0 },
|
||||
|
@@ -19,10 +19,22 @@ export const createDecisionBoxPathD = (x: number, y: number, size: number): stri
|
||||
export const question = async (parent: SVGAElement, node: Node): Promise<SVGAElement> => {
|
||||
const { labelStyles, nodeStyles } = styles2String(node);
|
||||
node.labelStyle = labelStyles;
|
||||
const { shapeSvg, bbox } = await labelHelper(parent, node, getNodeClasses(node));
|
||||
const padding = node.padding ?? 0;
|
||||
if (node.width || node.height) {
|
||||
node.width = (node?.width ?? 0) - padding * 8;
|
||||
if (node.width < 50) {
|
||||
node.width = 50;
|
||||
}
|
||||
|
||||
const w = bbox.width + node.padding;
|
||||
const h = bbox.height + node.padding;
|
||||
node.height = (node?.height ?? 0) - padding * 8;
|
||||
if (node.height < 50) {
|
||||
node.height = 50;
|
||||
}
|
||||
}
|
||||
|
||||
const { shapeSvg, bbox } = await labelHelper(parent, node, getNodeClasses(node));
|
||||
const w = (Math.max(bbox.width, node?.width ?? 0) + padding * 8) / 2;
|
||||
const h = w;
|
||||
const s = w + h;
|
||||
|
||||
const points = [
|
||||
|
Reference in New Issue
Block a user