Files
gremiumhub/legalconsenthub/stores/useUserStore.ts

28 lines
748 B
TypeScript

import type { Organization } from '~~/types/keycloak'
export const useUserStore = defineStore('User', () => {
const { user } = useUserSession()
const _selectedOrganization = ref<Organization | null>(null)
const selectedOrganization = computed<Organization | null>({
get: () => {
if (_selectedOrganization.value) {
return _selectedOrganization.value
}
if (!user.value?.organizations || user.value.organizations.length === 0) {
return null
}
return user.value.organizations[0]
},
set: (value: Organization | null) => {
_selectedOrganization.value = value
}
})
return {
user: user.value,
organizations: user.value?.organizations,
selectedOrganization
}
})