ideaz-element
Version:
<p align="center"> <a href="" target="_blank" rel="noopener noreferrer"> <img src="./docs/public/logo.svg" alt="Ideaz Element" width="180" style="width: 180px;" /> </a> </p>
47 lines (46 loc) • 1.44 kB
JavaScript
import { inject as v, ref as p, computed as N, unref as V } from "vue";
const m = "z", y = "is-", c = (a, r, t, o, $) => {
let u = `${a}-${r}`;
return t && (u += `-${t}`), o && (u += `__${o}`), $ && (u += `--${$}`), u;
}, l = "namespaceContextKey", B = (a) => {
const r = a || v(l, p(m));
return N(() => V(r) || m);
}, g = (a, r) => {
const t = B(r);
return {
namespace: t,
b: (s = "") => c(t.value, a, s, "", ""),
e: (s) => s ? c(t.value, a, "", s, "") : "",
m: (s) => s ? c(t.value, a, "", "", s) : "",
be: (s, e) => s && e ? c(t.value, a, s, e, "") : "",
em: (s, e) => s && e ? c(t.value, a, "", s, e) : "",
bm: (s, e) => s && e ? c(t.value, a, s, "", e) : "",
bem: (s, e, n) => s && e && n ? c(t.value, a, s, e, n) : "",
is: (s, ...e) => {
const n = e.length >= 1 ? e[0] : !0;
return s && n ? `${y}${s}` : "";
},
// css
cssVar: (s) => {
const e = {};
for (const n in s)
s[n] && (e[`--${t.value}-${n}`] = s[n]);
return e;
},
cssVarName: (s) => `--${t.value}-${s}`,
cssVarBlock: (s) => {
const e = {};
for (const n in s)
s[n] && (e[`--${t.value}-${a}-${n}`] = s[n]);
return e;
},
cssVarBlockName: (s) => `--${t.value}-${a}-${s}`
};
};
export {
m as defaultNamespace,
l as namespaceContextKey,
B as useGetDerivedNamespace,
g as useNamespace
};
//# sourceMappingURL=useNamespace.mjs.map