/home/ivoiecob/email.hirewise-va.com/modules/AdminPanelWebclient/vue/src/store/user.js
import _ from 'lodash'
import UserModel from 'src/classes/user'
import enums from 'src/enums'
export default {
namespaced: true,
state: {
userRole: null,
userPublicId: null,
},
mutations: {
setUserData(state, userData) {
const user = new UserModel(null, userData, userData)
if (!_.isEmpty(user)) {
state.userRole = user.role
state.userPublicId = user.publicId
}
},
resetUserData(state) {
state.userRole = null
state.userPublicId = null
},
},
actions: {
parseAppData({ commit }, appData) {
commit('setUserData', appData.User)
},
resetAppData({ commit }) {
commit('resetUserData')
},
},
getters: {
isUserSuperAdmin(state) {
const UserRoles = enums.getUserRoles()
return state.userRole === UserRoles.SuperAdmin
},
isUserAnonymous(state) {
const UserRoles = enums.getUserRoles()
return state.userRole === UserRoles.Anonymous
},
isUserTenantAdmin(state) {
const UserRoles = enums.getUserRoles()
return state.userRole === UserRoles.TenantAdmin
},
isUserSuperAdminOrTenantAdmin(state) {
const UserRoles = enums.getUserRoles()
return state.userRole === UserRoles.SuperAdmin || state.userRole === UserRoles.TenantAdmin
},
getUserRole(state) {
return state.userRole
},
getUserPublicId(state) {
return state.userPublicId
},
},
}