mirror of
https://github.com/wassname/talk.git
synced 2026-07-31 12:50:48 +08:00
Avoiding refetch from Community
This commit is contained in:
@@ -3,6 +3,28 @@ import {mapLeaves} from 'coral-framework/utils';
|
||||
|
||||
export default {
|
||||
mutations: {
|
||||
SetUserRole: ({variables: {id: userId, role}}) => ({
|
||||
updateQueries: {
|
||||
TalkAdmin_Community: (prev) => {
|
||||
|
||||
const updated = update(prev, {
|
||||
users: {
|
||||
nodes: {
|
||||
$apply: (nodes) => nodes.map((node) => {
|
||||
if (node.id === userId) {
|
||||
node.role = role;
|
||||
}
|
||||
|
||||
return node;
|
||||
})
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
return updated;
|
||||
}
|
||||
}
|
||||
}),
|
||||
BanUser: ({variables: {input: {id: userId}}}) => ({
|
||||
updateQueries: {
|
||||
TalkAdmin_Community: (prev) => {
|
||||
|
||||
@@ -36,7 +36,6 @@ class PeopleContainer extends React.Component {
|
||||
|
||||
setUserRole = async (id, role) => {
|
||||
await this.props.setUserRole(id, role);
|
||||
await this.fetchUsers();
|
||||
}
|
||||
|
||||
loadMore = () => {
|
||||
|
||||
Reference in New Issue
Block a user