ee6e5e22b1
* feat(eventBus): WIP event bus typescript wizardy * feat(eventBus): final eventbus setup with all the typescript foo * fix(workspaces): fix workspace core imports * test(workspaces): fix expected events name * test(workspaces): fix tests
14 lines
410 B
TypeScript
14 lines
410 B
TypeScript
import { WorkspaceAcl } from '@/modules/workspacesCore/domain/types'
|
|
|
|
export const isUserLastWorkspaceAdmin = (
|
|
workspaceRoles: WorkspaceAcl[],
|
|
userId: string
|
|
): boolean => {
|
|
const workspaceAdmins = workspaceRoles.filter(
|
|
({ role }) => role === 'workspace:admin'
|
|
)
|
|
const isUserAdmin = workspaceAdmins.some((role) => role.userId === userId)
|
|
|
|
return isUserAdmin && workspaceAdmins.length === 1
|
|
}
|