rw-xsm-handlers
Version:
realworld example unified state handlers for XSM
34 lines (26 loc) • 733 B
JavaScript
import agent from './agent';
import xsm from 'xsm';
const {set} = xsm;
let currentUser;
let loadingUser;
let updatingUser;
export function pullUser() {
loadingUser = true;
return agent.Auth.current()
.then(({ user }) => { currentUser = user;
set('currentUser', currentUser);
})
.finally(() => { loadingUser = false; })
}
export function updateUser(newUser) {
updatingUser = true;
return agent.Auth.save(newUser)
.then(({ user }) => { currentUser = user;
set('currentUser', currentUser);
})
.finally(() => { updatingUser = false; })
}
export function forgetUser() {
currentUser = undefined;
set('currentUser', currentUser);
}