@nitra/vite-boot
Version:
34 lines (28 loc) • 592 B
JavaScript
const allowedRoles = import.meta.env.VITE_HASURA_ROLE.split(',')
export let user = {}
/**
*
*/
export function unsetUser() {
user = {}
}
/**
*
* @param u
*/
export function setUser(u) {
user = u
user.login = u['https://hasura.io/jwt/claims']['x-hasura-user-id']
// Роль за умовчанням
const intersect = intersection(allowedRoles, u['https://hasura.io/jwt/claims']['x-hasura-allowed-roles'])
user.role = intersect[0]
}
/**
*
* @param a
* @param b
*/
function intersection(a, b) {
const setA = new Set(a)
return b.filter(value => setA.has(value))
}