UNPKG

kritsana135-hooray-server

Version:

for server

86 lines (81 loc) 2.5 kB
export const PERMISSION_KEY = { USER_CAN_LOGIN: 'USER_CAN_LOGIN', USER_IS_ADMIN: 'USER_IS_ADMIN', ADMIN_MANAGE_RESOURCE_USER: 'ADMIN_MANAGE_RESOURCE_USER', ADMIN_MANAGE_RESOURCE_PERMISSION: 'ADMIN_MANAGE_RESOURCE_PERMISSION', USER_MANAGE_ADMIN: 'USER_MANAGE_ADMIN', USER_MANAGE_ADMIN_PERMISSION: 'USER_MANAGE_ADMIN_PERMISSION', USER_MANAGE_ARTICLE: 'USER_MANAGE_ARTICLE', USER_MANAGE_CUSTOM_PAGE: 'USER_MANAGE_CUSTOM_PAGE', USER_MANAGE_BANNER: 'USER_MANAGE_BANNER', }; export const CODE = { YES: 'YES', NO: 'NO', READ: 'READ', WRITE: 'WRITE', }; export const DEFAULT_PERMISSION = [ { permissionName: PERMISSION_KEY.USER_CAN_LOGIN, description: 'User can login', defaultCode: CODE.YES, code: [CODE.YES, CODE.NO], }, { permissionName: PERMISSION_KEY.USER_IS_ADMIN, description: 'User is type admin, can use admin function', defaultCode: CODE.NO, code: [CODE.YES, CODE.NO], }, { permissionName: PERMISSION_KEY.ADMIN_MANAGE_RESOURCE_USER, description: 'Admin can manage user', defaultCode: CODE.NO, code: [CODE.NO, CODE.READ, CODE.WRITE], }, { permissionName: PERMISSION_KEY.ADMIN_MANAGE_RESOURCE_PERMISSION, description: 'Admin can manage user permission', defaultCode: CODE.NO, code: [CODE.NO, CODE.READ, CODE.WRITE], }, { permissionName: PERMISSION_KEY.USER_MANAGE_ADMIN, description: 'User can manage team member', defaultCode: CODE.NO, code: [CODE.NO, CODE.READ, CODE.WRITE], }, { permissionName: PERMISSION_KEY.USER_MANAGE_ADMIN_PERMISSION, description: 'User can manage user', defaultCode: CODE.NO, code: [CODE.NO, CODE.READ, CODE.WRITE], }, { permissionName: PERMISSION_KEY.USER_MANAGE_ARTICLE, description: 'User can manage article', defaultCode: CODE.NO, code: [CODE.NO, CODE.READ, CODE.WRITE], }, { permissionName: PERMISSION_KEY.USER_MANAGE_CUSTOM_PAGE, description: 'User can manage custom page', defaultCode: CODE.NO, code: [CODE.NO, CODE.READ, CODE.WRITE], }, { permissionName: PERMISSION_KEY.USER_MANAGE_BANNER, description: 'User can manage banner', defaultCode: CODE.NO, code: [CODE.NO, CODE.READ, CODE.WRITE], }, ]; const getPermission = () => { let permission = {}; DEFAULT_PERMISSION.forEach((element) => { permission = { ...permission, [element.permissionName]: element.permissionName }; }); return permission; }; export const PERMISSION = getPermission();