vcc-ui
Version:
A React library for building user interfaces at Volvo Cars
30 lines (29 loc) • 798 B
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.buildTypeScale = void 0;
var _merge = require("../utils/merge");
/**
Makes all sub-style variants inherit from the
'standard' styling for that type scale.
*/
const buildTypeScale = typeScale => {
return Object.keys(typeScale).reduce((accumTypeScale, typeScaleKey) => {
const {
standard,
...subStyles
} = typeScale[typeScaleKey];
return {
...accumTypeScale,
[typeScaleKey]: {
standard: standard,
...Object.keys(subStyles).reduce((accumVariants, subStyleKey) => ({
...accumVariants,
[subStyleKey]: (0, _merge.merge)(standard, subStyles[subStyleKey])
}), {})
}
};
}, {});
};
exports.buildTypeScale = buildTypeScale;
;