jobsys-newbie
Version:
Enhanced component based on ant-design-vue
29 lines (28 loc) • 1.25 kB
JavaScript
//#region directives/auth.js
var e = [], t = { beforeMount(t, n) {
let { value: r } = n, { arg: i } = n;
if (!r) return;
(typeof r == "string" || r instanceof String) && (r = [r]);
let [a, o] = r;
o ||= e, (typeof a == "string" || a instanceof String) && (a = [a]), i === void 0 || i === "all" ? a.every((e) => o.includes(e)) || (t.style.display = "none") : i === "any" ? a.some((e) => o.includes(e)) || (t.style.display = "none") : i === "none" && a.some((e) => o.includes(e)) && (t.style.display = "none");
} };
function n(t) {
e = t;
}
function r(t, n) {
if (!t) return !0;
(typeof t == "string" || t instanceof String) && (t = [t]);
let [r, i] = t;
if (i ||= e, (typeof r == "string" || r instanceof String) && (r = [r]), n === void 0 || n === "all") {
if (!r.every((e) => i.includes(e))) return !1;
} else if (n === "any") {
if (!r.some((e) => i.includes(e))) return !1;
} else if (n === "none" && r.some((e) => i.includes(e))) return !1;
return !0;
}
var i = { install(e, i) {
e.directive("auth", t), e.config.globalProperties.$auth = r, e.provide("auth", r), i && i.defaultPermissions && n(i.defaultPermissions);
} };
//#endregion
export { i as auth, n as setDefaultPermissions };
//# sourceMappingURL=directives.js.map