UNPKG

@ozen-ui/kit

Version:

React component library

32 lines (31 loc) 976 B
import { __assign } from "tslib"; import { classnames } from '@bem-react/classnames'; import { isEmpty } from '../../utils/object'; var generateGridModCn = function (cn, key, mod) { var _a; var res; if (typeof mod === 'string' || typeof mod === 'number') { res = (_a = {}, _a[key] = mod, _a); } if (typeof mod === 'object') { res = Object.keys(mod).reduce(function (acc, current) { var _a; return (__assign(__assign({}, acc), (_a = {}, _a["".concat(key, "_").concat(current)] = mod[current], _a))); }, {}); } return cn(res); }; export var useGenerateGridModsCn = function (cn, mods) { if (!mods && isEmpty(mods)) { return ''; } return Object.keys(mods).reduce(function (acc, current) { var mod = mods[current]; if (mod) { return classnames(acc, generateGridModCn(cn, current, mod)); } return acc; }, ''); };