import {areArraysEqual} from '/common/arrays.js';
function parseNumber(value) {
const num = parseInt(value.toString());
if (isNaN(num)) return 0;
return num;
}
registerLayout('test', class {
static get inputProperties() {
return [
'--edges-inline-start-expected',
'--edges-inline-end-expected',
'--edges-block-start-expected',
'--edges-block-end-expected',
];
}
async intrinsicSizes() {}
async layout(children, edges, constraints, styleMap) {
const actual = this.constructor.inputProperties.map(
prop => parseNumber(styleMap.get(prop))
);
const expected = [
edges.inlineStart,
edges.inlineEnd,
edges.blockStart,
edges.blockEnd,
];
if (!areArraysEqual(expected, actual)) {
return {autoBlockSize: 0, childFragments: []};
}
return {autoBlockSize: 100, childFragment: []};
}
});