@cran/vue.use
Version:
Cranberry Vue Use Utilities
32 lines (31 loc) • 851 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.bem = exports.bid = void 0;
function bid(b, e) {
return e ? `${b}__${e}` : b;
}
exports.bid = bid;
function bem(base) {
return function bem_m(m) {
const collector = { [base]: true, };
if (m) {
if ("string" === typeof m) {
collector[`${base}--${m}`] = true;
}
else if (m instanceof Array) {
for (const mod of m) {
Object.assign(collector, bem_m(mod));
}
}
else {
for (const mod in m) {
if (m[mod]) {
collector[`${base}--${mod}`] = true;
}
}
}
}
return collector;
};
}
exports.bem = bem;