mirror of
https://github.com/labring/FastGPT.git
synced 2025-07-23 05:12:39 +00:00

* feat(member-group): Team (#2616) * feat: member-group schema define * feat(fe): create group * feat: add group edit modal * feat(fe): add avatar group component * feat: edit group fix: permission select menu style * feat: bio-mode support for select-member component * fix: avatar group key unique * feat: group manage * feat: divide member into group and clbs * feat: finish team permission * chore: adjust * fix: get clbs * perf: groups code * pref: member group for team (#2706) * chore: fe adjust fix: remove the member from groups when removing from team feat: change the groups avatar when updating the team's avatar * chore: DefaultGroupName as a constant string '' * fix: create default group when create team for root * feat: comment * feat: 4811 init * pref: member group for team (#2732) * chore: default group name * feat: get default group when get by tmbid * feat(fe): adjust * member ui * fix: delete group (#2736) * perf: init4811 * pref: member group (#2818) * fix: update clb per then refetch clb list * fix: calculate group permission * feat(fe): group tag * refactor(fe): team and group manage * feat: manage group member * feat: add group transfer owner modal * feat: group manage member * chore: adjust the file structure * pref: member group * chore: adjust fe style * fix: ts error * chore: fe adjust * chore: fe adjust * chore: adjust * chore: adjust the code * perf: i18n and schema name * pref: member-group (#2862) * feat: group list ordered by updateTime * fix: transfer ownership of group when deleting member * fix: i18n fix * feat: can not set member as admin/owner when user is not active * fix: GroupInfoModal hover input do not change color * fix(fe): searchinput do not scroll * perf: team group ui * doc * remove enum --------- Co-authored-by: Finley Ge <32237950+FinleyGe@users.noreply.github.com>
80 lines
2.1 KiB
TypeScript
80 lines
2.1 KiB
TypeScript
import { Permission } from './controller';
|
|
import { PermissionListType } from './type';
|
|
import { i18nT } from '../../../web/i18n/utils';
|
|
export enum AuthUserTypeEnum {
|
|
token = 'token',
|
|
root = 'root',
|
|
apikey = 'apikey',
|
|
outLink = 'outLink',
|
|
teamDomain = 'teamDomain'
|
|
}
|
|
|
|
export enum PermissionTypeEnum {
|
|
'private' = 'private',
|
|
'public' = 'public',
|
|
clbPrivate = 'clbPrivate',
|
|
publicRead = 'publicRead',
|
|
publicWrite = 'publicWrite'
|
|
}
|
|
export const PermissionTypeMap = {
|
|
[PermissionTypeEnum.private]: {
|
|
iconLight: 'support/permission/privateLight',
|
|
label: 'permission.Private'
|
|
},
|
|
[PermissionTypeEnum.public]: {
|
|
iconLight: 'support/permission/publicLight',
|
|
label: 'permission.Public'
|
|
},
|
|
[PermissionTypeEnum.publicRead]: {
|
|
iconLight: 'support/permission/publicLight',
|
|
label: i18nT('user:permission.team_read')
|
|
},
|
|
[PermissionTypeEnum.publicWrite]: {
|
|
iconLight: 'support/permission/publicLight',
|
|
label: i18nT('user:permission.team_write')
|
|
},
|
|
[PermissionTypeEnum.clbPrivate]: {
|
|
iconLight: 'support/permission/privateLight',
|
|
label: i18nT('user:permission.only_collaborators')
|
|
}
|
|
};
|
|
|
|
export enum PerResourceTypeEnum {
|
|
team = 'team',
|
|
app = 'app',
|
|
dataset = 'dataset'
|
|
}
|
|
|
|
/* new permission */
|
|
export enum PermissionKeyEnum {
|
|
read = 'read',
|
|
write = 'write',
|
|
manage = 'manage'
|
|
}
|
|
export const PermissionList: PermissionListType = {
|
|
[PermissionKeyEnum.read]: {
|
|
name: i18nT('common:permission.read'),
|
|
description: '',
|
|
value: 0b100,
|
|
checkBoxType: 'single'
|
|
},
|
|
[PermissionKeyEnum.write]: {
|
|
name: i18nT('common:permission.write'),
|
|
description: '',
|
|
value: 0b110,
|
|
checkBoxType: 'single'
|
|
},
|
|
[PermissionKeyEnum.manage]: {
|
|
name: i18nT('common:permission.manager'),
|
|
description: '',
|
|
value: 0b111,
|
|
checkBoxType: 'single'
|
|
}
|
|
};
|
|
|
|
export const NullPermission = 0;
|
|
export const OwnerPermissionVal = ~0 >>> 0;
|
|
export const ReadPermissionVal = PermissionList['read'].value;
|
|
export const WritePermissionVal = PermissionList['write'].value;
|
|
export const ManagePermissionVal = PermissionList['manage'].value;
|