lazy-widgets
Version:
Typescript retained mode GUI for the HTML canvas API
20 lines • 904 B
JavaScript
import { resolveContainerChildConstraints } from './resolveContainerChildConstraints.js';
/**
* Reusable function for resolving container dimensions given layout
* constraints, padding, alignment and a child widget.
*
* @category Helper
*/
export function resolveContainerDimensions(minWidth, maxWidth, minHeight, maxHeight, padding, alignment, child) {
const hPadding = padding.left + padding.right;
const vPadding = padding.top + padding.bottom;
// Resolve child's dimensions
child.resolveDimensions(...resolveContainerChildConstraints(minWidth, maxWidth, minHeight, maxHeight, hPadding, vPadding, alignment));
const [childWidth, childHeight] = child.idealDimensions;
// Resolve own dimensions
return [
Math.max(minWidth, childWidth + hPadding),
Math.max(minHeight, childHeight + vPadding)
];
}
//# sourceMappingURL=resolveContainerDimensions.js.map