* feat: invitation link schema and apis * feat: add invitation link * feat: member status: active, leave, forbidden * fix: expires show hours and minutes * feat: invalid invitation link hint * fix: typo * chore: fix typo & i18n * fix * pref: fe * feat: add ttl index for 30-day-clean-up
42 lines
917 B
TypeScript
42 lines
917 B
TypeScript
export const TeamCollectionName = 'teams';
|
|
export const TeamMemberCollectionName = 'team_members';
|
|
export const TeamTagsCollectionName = 'team_tags';
|
|
|
|
export enum TeamMemberRoleEnum {
|
|
owner = 'owner'
|
|
}
|
|
|
|
export const TeamMemberRoleMap = {
|
|
[TeamMemberRoleEnum.owner]: {
|
|
value: TeamMemberRoleEnum.owner,
|
|
label: 'user.team.role.Owner'
|
|
}
|
|
};
|
|
|
|
export enum TeamMemberStatusEnum {
|
|
active = 'active',
|
|
leave = 'leave',
|
|
forbidden = 'forbidden'
|
|
}
|
|
|
|
export const TeamMemberStatusMap = {
|
|
[TeamMemberStatusEnum.active]: {
|
|
label: 'user.team.member.active',
|
|
color: 'green.600'
|
|
},
|
|
[TeamMemberStatusEnum.leave]: {
|
|
label: 'user.team.member.leave',
|
|
color: 'red.600'
|
|
},
|
|
[TeamMemberStatusEnum.forbidden]: {
|
|
label: 'user.team.member.forbidden',
|
|
color: 'red.600'
|
|
}
|
|
};
|
|
|
|
export const notLeaveStatus = {
|
|
$not: {
|
|
$in: [TeamMemberStatusEnum.leave, TeamMemberStatusEnum.forbidden]
|
|
}
|
|
};
|