Change getSubGraphTitleMargins to accept config object as parameter

This commit is contained in:
Matheus B 2023-11-20 20:40:30 -03:00
parent ad6c76116d
commit c0a43f5d5a
4 changed files with 11 additions and 8 deletions

View File

@ -64,7 +64,7 @@ const rect = (parent, node) => {
.attr('width', width)
.attr('height', node.height + padding);
const { subGraphTitleTopMargin } = getSubGraphTitleMargins();
const { subGraphTitleTopMargin } = getSubGraphTitleMargins(getConfig());
if (useHtmlLabels) {
label.attr(
'transform',
@ -181,7 +181,7 @@ const roundedWithTitle = (parent, node) => {
.attr('width', width + padding)
.attr('height', node.height + padding - bbox.height - 3);
const { subGraphTitleTopMargin } = getSubGraphTitleMargins();
const { subGraphTitleTopMargin } = getSubGraphTitleMargins(getConfig());
// Center the label
label.attr(
'transform',

View File

@ -14,8 +14,7 @@ import { insertCluster, clear as clearClusters } from './clusters.js';
import { insertEdgeLabel, positionEdgeLabel, insertEdge, clear as clearEdges } from './edges.js';
import { log } from '../logger.js';
import { getSubGraphTitleMargins } from '../utils/getSubGraphTitleMargins.js';
const { subGraphTitleTotalMargin } = getSubGraphTitleMargins();
import { getConfig } from '../diagram-api/diagramAPI.js';
const recursiveRender = async (_elem, graph, diagramtype, id, parentCluster) => {
log.info('Graph in recursive render: XXX', graphlibJson.write(graph), parentCluster);
@ -104,6 +103,7 @@ const recursiveRender = async (_elem, graph, diagramtype, id, parentCluster) =>
log.info('Graph after layout:', graphlibJson.write(graph));
// Move the nodes to the correct place
let diff = 0;
const { subGraphTitleTotalMargin } = getSubGraphTitleMargins(getConfig());
sortNodesByHierarchy(graph).forEach(function (v) {
const node = graph.node(v);
log.info('Position ' + v + ': ' + JSON.stringify(graph.node(v)));

View File

@ -609,7 +609,7 @@ describe('getSubGraphTitleMargins', () => {
};
configApi.setSiteConfig(config_0);
expect(getSubGraphTitleMargins()).toEqual({
expect(getSubGraphTitleMargins(config_0)).toEqual({
subGraphTitleTopMargin: 10,
subGraphTitleBottomMargin: 5,
subGraphTitleTotalMargin: 15,

View File

@ -1,11 +1,14 @@
import { getConfig } from '../diagram-api/diagramAPI.js';
import { FlowchartDiagramConfig } from '../config.type.js';
export const getSubGraphTitleMargins = (): {
export const getSubGraphTitleMargins = ({
flowchart,
}: {
flowchart: FlowchartDiagramConfig;
}): {
subGraphTitleTopMargin: number;
subGraphTitleBottomMargin: number;
subGraphTitleTotalMargin: number;
} => {
const { flowchart } = getConfig();
const subGraphTitleTopMargin = flowchart?.subGraphTitleMargin?.top ?? 0;
const subGraphTitleBottomMargin = flowchart?.subGraphTitleMargin?.bottom ?? 0;
const subGraphTitleTotalMargin = subGraphTitleTopMargin + subGraphTitleBottomMargin;