yanzhen-design-vue
Version:
48 lines (47 loc) • 1.29 kB
JavaScript
import "../../../_utils/index.mjs";
import { User, userTypes } from "../constants/user.mjs";
import { Contacts } from "../constants/contacts.mjs";
import { ListMode } from "../constants/list-mode.mjs";
import { createContactsDefaultRef } from "./createContactsDefaultRef.mjs";
import { $enum } from "ts-enum-util";
import { handleUndefined } from "../../../_utils/enum-utils.mjs";
const userEnum = $enum(User);
function getUserLabel(user) {
return $enum.mapValue(user).with({
[]: "内部",
[]: "外部",
[]: "群组",
[]: "角色",
[]: "Unspecified"
});
}
function getUserListMode(user) {
return $enum.mapValue(user).with({
[]: ListMode.TREE,
[]: ListMode.LIST,
[]: ListMode.TREE,
[]: ListMode.TREE,
[]: "Unspecified"
});
}
const getUserTypesMaps = () => {
return userTypes.map((k) => {
return {
value: k,
label: getUserLabel(k)
};
});
};
function getUserDefaultRefs() {
return userTypes.reduce((prev, key) => {
prev[key] = createContactsDefaultRef(Contacts.USER, key);
return prev;
}, {});
}
export {
getUserDefaultRefs,
getUserLabel,
getUserListMode,
getUserTypesMaps,
userEnum
};