in frontend/src/routes/admin/people/role/member/member.tsx [34:84]
export function RoleMembers() {
const { t } = useTranslation();
const match = useMatch('admin/people/role/:roleId');
const roleId = match?.params.roleId as string;
const { users } = useSpaceUsers();
const { members, getRoleMembers, loading } = useRoleMember(roleId);
const [visible, setVisible] = useState(false);
const [confirmLoading, setConfirmLoading] = useState(false);
const userInfo = useContext(UserInfoContext);
const [form] = useForm();
const isAllUser = members?.name.includes('All Users');
const { confirm } = Modal;
const filteredUsers = users?.filter(user => {
const data = members.members.map(item => item.email);
if (data.includes(user.email)) {
return false;
}
return true;
});
const columns: ColumnsType<any> = [
{
title: t`members`,
key: 'name',
dataIndex: 'name',
},
{
title: t`Mail`,
dataIndex: 'email',
key: 'email',
},
];
if (!isAllUser) {
columns.push({
title: t`operation`,
key: 'actions',
render: (record: any) => {
const forbiddenEditRole =
members.name === 'All Users_1' ||
(members.name === 'Administrators_1' && members?.members.length <= 1) ||
userInfo?.name === record.name;
return (
<FlatBtn disabled={forbiddenEditRole} onClick={() => handleDelete(record)}>
{t`remove`}
</FlatBtn>
);
},
});
}