1
0
mirror of https://github.com/mgerb/classic-wow-forums synced 2026-01-11 09:32:51 +00:00

client - use mobx as state container

This commit is contained in:
2018-01-09 20:24:09 -06:00
parent 8a39f687a8
commit 2d6ff0875f
13 changed files with 100 additions and 42 deletions

View File

@@ -1,27 +1,16 @@
import axios from '../axios/axios';
import { UserModel } from '../model';
const storeUser = (user: UserModel): void => {
localStorage.setItem('user', JSON.stringify(user));
}
const getUser = (): UserModel => {
const u = localStorage.getItem('user');
return u ? JSON.parse(u) : null;
}
import userStore from '../stores/user-store';
// fetch user and store in local storage
const authorize = async (code: string): Promise<void> => {
try {
const res = await axios.post('/api/battlenet/authorize', { code });
UserService.storeUser(res.data.data);
userStore.setUser(res.data.data);
} catch (e) {
console.error(e);
}
}
};
export const UserService = {
storeUser,
getUser,
authorize,
}
};