@fe6/water-pro
Version:
An enterprise-class UI design language and Vue-based implementation
42 lines (33 loc) • 1.22 kB
JavaScript
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
import { isArray, isString, isObject } from './util';
function classNames() {
var classes = [];
for (var i = 0; i < arguments.length; i++) {
var value = i < 0 || arguments.length <= i ? undefined : arguments[i];
if (!value) {
continue;
}
if (isString(value)) {
classes.push(value);
} else if (isArray(value)) {
for (var _i = 0; _i < value.length; _i++) {
var inner = classNames(value[_i]);
if (inner) {
classes.push(inner);
}
}
} else if (isObject(value)) {
for (var name in value) {
if (value[name]) {
classes.push(name);
}
}
}
}
return classes.join(' ');
}
export default classNames;
export function getClassName(prefixCls, size) {
var _classNames;
return classNames(prefixCls, (_classNames = {}, _defineProperty(_classNames, "".concat(prefixCls, "-sm"), size === 'small'), _defineProperty(_classNames, "".concat(prefixCls, "-lg"), size === 'large'), _classNames));
}