onclick="closeRoleDrawer()"
style="min-height: 42px;"
>
Cancel
{/* Instant Search and Scope Filters */}
{/* Search */}
{/* Scope dropdown */}
Showing {roles.length} roles
{/* Desktop Table View (≥ 768px) */}
| Role Identifier |
Scope |
Description |
Created |
Actions |
{roles.length === 0
? (
|
No roles found.
|
)
: (
roles.map((r) => {
const isGlobal = !r.app_id;
const isCoreAdmin = isGlobal && r.name === "admin";
return (
|
{r.name}
|
{isGlobal
? (
Global (Shared)
)
: (
{r.app_name || "App-Specific"}
)}
|
{r.description || "-"}
|
{new Date(r.created_at).toLocaleDateString()}
|
{!isCoreAdmin
? (
|