MCPcopy
hub / github.com/chartjs/Chart.js / buildLayoutBoxes

Function buildLayoutBoxes

src/core/core.layouts.js:85–103  ·  view source on GitHub ↗
(boxes)

Source from the content-addressed store, hash-verified

83}
84
85function buildLayoutBoxes(boxes) {
86 const layoutBoxes = wrapBoxes(boxes);
87 const fullSize = sortByWeight(layoutBoxes.filter(wrap => wrap.box.fullSize), true);
88 const left = sortByWeight(filterByPosition(layoutBoxes, 'left'), true);
89 const right = sortByWeight(filterByPosition(layoutBoxes, 'right'));
90 const top = sortByWeight(filterByPosition(layoutBoxes, 'top'), true);
91 const bottom = sortByWeight(filterByPosition(layoutBoxes, 'bottom'));
92 const centerHorizontal = filterDynamicPositionByAxis(layoutBoxes, 'x');
93 const centerVertical = filterDynamicPositionByAxis(layoutBoxes, 'y');
94
95 return {
96 fullSize,
97 leftAndTop: left.concat(top),
98 rightAndBottom: right.concat(centerVertical).concat(bottom).concat(centerHorizontal),
99 chartArea: filterByPosition(layoutBoxes, 'chartArea'),
100 vertical: left.concat(right).concat(centerVertical),
101 horizontal: top.concat(bottom).concat(centerHorizontal)
102 };
103}
104
105function getCombinedMax(maxPadding, chartArea, a, b) {
106 return Math.max(maxPadding[a], chartArea[a]) + Math.max(maxPadding[b], chartArea[b]);

Callers 1

updateFunction · 0.85

Calls 4

wrapBoxesFunction · 0.85
sortByWeightFunction · 0.85
filterByPositionFunction · 0.85

Tested by

no test coverage detected