@ubertheme/base
Version:
UB PWA Base module handles the base components and functions for all PWA modules at Ubertheme.
35 lines (32 loc) • 1.02 kB
JavaScript
import cb from 'classnames';
/**
* Returns props necessary to render css classes
*
* @param {object} props
* @param {object} props.classes - cssModules classes objects
* @param {string} props.additionalClasses - Additional classes string
* @return {{ classNames: string }}
*/
export const useExtraCss = props => {
const {
classes,
additionalClasses
} = props;
// Additional CSS classes appending
let classNames = classes.root;
if (additionalClasses) {
const extraClasses = additionalClasses.split(' ');
for (let i = 0; i < extraClasses.length; i++) {
if (typeof classes[extraClasses[i]] != 'undefined') {
classNames = cb(classNames, { // append as cssModules class
[classes[extraClasses[i]]]: classes[extraClasses[i]]
});
} else { // append as css global class
classNames += ` ${extraClasses[i]}`
}
}
}
return {
classNames
};
};