Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | /** * Permission — conditionally renders children based on user permissions. */ import {type ReactNode} from 'react'; import {usePermission} from '../../hooks/usePermission.js'; interface IPermissionProps { permission?: string | boolean | null; fallback?: ReactNode; children: ReactNode; } export function Permission({permission, fallback = null, children}: IPermissionProps) { const allowed = usePermission(permission); return allowed ? <>{children}</> : <>{fallback}</>; } |