@cran/vue.use
Version:
Cranberry Vue Use Utilities
27 lines (26 loc) • 714 B
JavaScript
export function bid(b, e) {
return e ? `${b}__${e}` : b;
}
export 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;
};
}