Function: default()¶
default(
props):string|number|bigint|boolean|Iterable\<ReactNode,any,any> |Promise\<AwaitedReactNode> |Element|null|undefined
Defined in: src/auth/RequirePermission.tsx:68
Require Permission
Route protection component that ensures user has required permission level. Implements defense-in-depth security pattern:
Security Strategy: - Patient users: Always 404 for admin routes (hide existence) - Staff users: 404 for admin routes by default, redirect if specified - Backend: Always validates permissions (never trust frontend alone)
Parameters¶
props¶
RequirePermissionProps
Component props
Returns¶
string | number | bigint | boolean | Iterable\<ReactNode, any, any> | Promise\<AwaitedReactNode> | Element | null | undefined
Protected content, redirect, or 404 based on permissions
Examples¶
// Require admin access, show 404 to patients, redirect staff
<RequirePermission level="admin">
<PatientAdminPage />
</RequirePermission>
// Require staff access, redirect anyone without access
<RequirePermission level="staff" fallback="redirect">
<ClinicalDashboard />
</RequirePermission>