Kairo-Jinkendo/frontend/src/hooks/useCapabilities.js
Lars 0e7184a59e
All checks were successful
Deploy Development / deploy (push) Successful in 43s
Test Suite / pytest-backend (push) Successful in 29s
Test Suite / lint-backend (push) Successful in 2s
Test Suite / compose-smoke (push) Has been skipped
Test Suite / k6 /api/health Baseline (push) Successful in 18s
Test Suite / playwright-smoke (push) Successful in 12s
AP0.6: Kairo Workspace UX mit Frontend Widget/View Registry und Vitest.
2026-07-05 06:41:23 +02:00

21 lines
588 B
JavaScript

import { useMemo } from 'react'
import { useSession } from '../context/SessionContext.jsx'
export function useCapabilities() {
const { context, entitlements } = useSession()
const capabilities = useMemo(() => {
const fromContext = context?.capabilities || []
const fromEntitlements = entitlements?.capabilities || []
const merged = new Set([...fromContext, ...fromEntitlements])
return merged
}, [context, entitlements])
const hasCapability = (key) => {
if (!key) return true
return capabilities.has(key)
}
return { capabilities, hasCapability }
}