Skip to content

Instantly share code, notes, and snippets.

@RyanCCollins
Created October 12, 2016 01:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save RyanCCollins/15777347d4fc2c0e2f359a62f17b03ad to your computer and use it in GitHub Desktop.
Save RyanCCollins/15777347d4fc2c0e2f359a62f17b03ad to your computer and use it in GitHub Desktop.
App Actions
export const authenticateUser = (user) => ({
type: types.AUTHENTICATE_USER,
user,
});
export const invalidateUser = () => ({
type: types.INVALIDATE_USER,
});
export const logoutUser = () => (dispatch) => {
localStorage.setItem('user', null);
dispatch(
invalidateUser()
);
};
export const setPersistentUser = (user) => (dispatch) => {
localStorage.setItem('user', JSON.stringify(user));
dispatch(
authenticateUser(user)
);
};
export const loadPersistedUser = () => (dispatch) => {
const user = localStorage.getItem('user');
if (user) {
const parsedUser = JSON.parse(user);
dispatch(
authenticateUser(parsedUser)
);
} else {
dispatch(
invalidateUser()
);
}
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment