UNPKG

@brizy/ui

Version:
26 lines (25 loc) 1.15 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.classNames = void 0; const classnames_1 = __importDefault(require("classnames")); const constants_1 = require("./constants"); function parseClassNames(arg) { if (typeof arg === "string" && !arg.startsWith(constants_1.BRZ_PREFIX)) { return `${constants_1.BRZ_PREFIX}-${arg}`; } if (Array.isArray(arg)) { return arg.map(parseClassNames); } if (typeof arg === "object" && arg !== null) { return Object.entries(arg).reduce((acc, [key, value]) => { const prefixedKey = key.startsWith(constants_1.BRZ_PREFIX) ? key : `${constants_1.BRZ_PREFIX}-${key}`; return Object.assign(Object.assign({}, acc), { [prefixedKey]: value }); }, {}); } return arg; } const classNames = (...classNameWithoutPrefix) => (...classNameToPrefix) => (0, classnames_1.default)(classNameWithoutPrefix, classNameToPrefix.map(parseClassNames)); exports.classNames = classNames;