@zohodesk/hooks
Version:
Unified Component Library - Hooks
21 lines (19 loc) • 570 B
JavaScript
export default function getRemainingWidth(_ref) {
let {
totalWidth,
getChildWidth,
dataLength,
minimumLeftVisible,
minimumRightVisible
} = _ref;
let remainingWidth = totalWidth;
function updateRemainingWidth(limit, getIndex) {
for (let i = 0; i < limit; i++) {
let currentChildWidth = getChildWidth(getIndex(i));
remainingWidth = remainingWidth - currentChildWidth;
}
}
updateRemainingWidth(minimumLeftVisible, i => i);
updateRemainingWidth(minimumRightVisible, i => dataLength - 1 - i);
return remainingWidth;
}