UNPKG

@altostra/core

Version:

Core library for shared types and logic

1 lines 1.16 kB
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isUserAccount=exports.isUserRole=exports.isUserRoleName=void 0;const type_validations_1=require("@altostra/type-validations"),EmailAddress_1=require("../../CustomTypes/EmailAddress"),ISODate_1=require("../../CustomTypes/ISODate"),NonEmptyString_1=require("../../CustomTypes/NonEmptyString"),Name_1=require("../Name"),Organization_1=require("../Organization"),AltostraAccountId_1=require("./AltostraAccountId"),AltostraRoleId_1=require("./AltostraRoleId");exports.isUserRoleName=(0,type_validations_1.enumOf)("Owner","Admin"),exports.isUserRole=(0,type_validations_1.objectOf)({roleId:AltostraRoleId_1.isAltostraRoleId,name:exports.isUserRoleName}),exports.isUserAccount=(0,type_validations_1.objectOf)({name:Name_1.isName,email:EmailAddress_1.isEmailAddress,image:(0,type_validations_1.maybe)(NonEmptyString_1.isNonEmptyString),lastLogin:ISODate_1.isISODate,authProvider:NonEmptyString_1.isNonEmptyString,organizationId:Organization_1.isOrganizationId,role:exports.isUserRole,userId:AltostraAccountId_1.isAltostraAccountId,membership:(0,type_validations_1.recordOf)(exports.isUserRole)});