Files
Business-credit-asistant/resources/js/store/auth/actions.js
2026-06-29 13:00:18 +06:00

106 lines
2.8 KiB
JavaScript
Vendored

import axiosClient from '@/config/axios'
import { removeToken, isApiSuccess, setToken, setRefreshToken, getRefreshToken } from '@/helper'
export const login = ({ commit }, formData) => {
return axiosClient
.post('login', formData)
.then(response => {
if (isApiSuccess(response)) {
commit('SET_USER', response.data.user)
commit('SET_AUTHENTICATED', false)
}
return Promise.resolve(response)
}).catch(exception => {
commit('SET_USER', {})
commit('SET_AUTHENTICATED', false)
console.log('Login Action Exception', exception);
})
}
export const verifyOTP = ({ commit }, formData) => {
return axiosClient.post('verifysms', formData)
.then(response => {
if (isApiSuccess(response)) {
commit('SET_AUTHENTICATED', true)
setToken(response.data.access_token)
setRefreshToken(response.data.refresh_token)
}
return Promise.resolve(response)
}).catch(exception => {
console.log('verifyOTP Action Exception', exception);
})
}
export const authenticateWithRefreshToken = ({ commit }) => {
return axiosClient.post('refreshtoken', { refresh_token: getRefreshToken() })
.then(response => {
if (isApiSuccess(response)) {
commit('SET_AUTHENTICATED', true)
setToken(response.data.access_token)
setRefreshToken(response.data.refresh_token)
}
return Promise.resolve(response)
}).catch(exception => {
console.log('authenticateWithRefreshToken Action Exception', exception);
})
}
export const resendOTP = ({ commit }, formData) => {
return axiosClient.post('resendotp', formData)
.then(response => {
return Promise.resolve(response)
}).catch(exception => {
console.log('Login Action Exception', exception);
})
}
export const authUser = ({ commit }) => {
return axiosClient.get('get-authinfo')
.then(response => {
commit('SET_AUTHENTICATED', true)
commit('SET_USER', response.data.user)
commit('SET_PERMISSIONS', response.data.permissions)
return Promise.resolve(response)
}).catch(exception => {
console.log('Get Auth User Action Exception', exception);
})
}
export const logout = ({ commit }) => {
commit('SET_USER', {})
commit('SET_AUTHENTICATED', false)
removeToken()
}
export const setLoader = ({ commit }, status) => {
commit('SET_LOADER', status)
}
export const loadPermissions = ({ commit }) => {
return axiosClient
.get('getpermission')
.then(response => {
commit('SET_PERMISSIONS', response.data.permissions)
return Promise.resolve(response)
}).catch(exception => {
console.log('Permissions API Exception', exception);
})
}
export const isModalShow = ({ commit }, status) => {
commit('SHOW_MODAL', status)
}
export const userFormData = ({ commit }, value) => {
commit('SET_USER_FORM_DATA', value)
}