diff --git a/src/store/modules/auth/actions.js b/src/store/modules/auth/actions.js index 73afa34..6c63847 100644 --- a/src/store/modules/auth/actions.js +++ b/src/store/modules/auth/actions.js @@ -2,26 +2,25 @@ import getAuth from '../../../scripts/axios-auth'; export default { async login(context, payload) { - try { - const response = await getAuth.post('accounts:signInWithPassword', { - email: payload.email, - password: payload.password, - returnSecureToken: true - }); - const responseData = response.data; - context.commit('setUser', { - token: responseData.idToken, - userId: responseData.localId, - tokenExpiration: responseData.expiresIn - }); - } catch (err) { - const error = new Error(err.message); - throw error; - } + return context.dispatch('auth', { + ...payload, + mode: 'login' + }); }, async signup(context, payload) { + return context.dispatch('auth', { + ...payload, + mode: 'signup' + }); + }, + async auth(context, payload) { + const mode = payload.mode; + let url = 'accounts:signInWithPassword'; + if (mode === 'signup') { + url = 'accounts:signUp'; + } try { - const response = await getAuth.post('accounts:signUp', { + const response = await getAuth.post(url, { email: payload.email, password: payload.password, returnSecureToken: true