feat: refactor role system to is_admin flag, add Badge component, fix native dialogs
- Separate admin identity from role: viewer|model + is_admin boolean flag - DB migration 0001_is_admin: adds column, migrates former admin role users - Update ACL helpers, auth session, GraphQL types and all resolvers - Admin layout guard and header links check is_admin instead of role - Admin users table: show Admin badge next to name, remove admin from role select - Admin user edit page: is_admin checkbox toggle - Install shadcn Badge component; use in admin users table - Fix duplicate photo keys in adminGetUser resolver - Replace confirm() in /me recordings with Dialog component Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -62,6 +62,7 @@ const ME_QUERY = gql`
|
||||
description
|
||||
tags
|
||||
role
|
||||
is_admin
|
||||
avatar
|
||||
banner
|
||||
email_verified
|
||||
@@ -1022,6 +1023,7 @@ const ADMIN_LIST_USERS_QUERY = gql`
|
||||
artist_name
|
||||
slug
|
||||
role
|
||||
is_admin
|
||||
avatar
|
||||
email_verified
|
||||
date_created
|
||||
@@ -1052,6 +1054,7 @@ const ADMIN_UPDATE_USER_MUTATION = gql`
|
||||
mutation AdminUpdateUser(
|
||||
$userId: String!
|
||||
$role: String
|
||||
$isAdmin: Boolean
|
||||
$firstName: String
|
||||
$lastName: String
|
||||
$artistName: String
|
||||
@@ -1061,6 +1064,7 @@ const ADMIN_UPDATE_USER_MUTATION = gql`
|
||||
adminUpdateUser(
|
||||
userId: $userId
|
||||
role: $role
|
||||
isAdmin: $isAdmin
|
||||
firstName: $firstName
|
||||
lastName: $lastName
|
||||
artistName: $artistName
|
||||
@@ -1073,6 +1077,7 @@ const ADMIN_UPDATE_USER_MUTATION = gql`
|
||||
last_name
|
||||
artist_name
|
||||
role
|
||||
is_admin
|
||||
avatar
|
||||
banner
|
||||
date_created
|
||||
@@ -1083,6 +1088,7 @@ const ADMIN_UPDATE_USER_MUTATION = gql`
|
||||
export async function adminUpdateUser(input: {
|
||||
userId: string;
|
||||
role?: string;
|
||||
isAdmin?: boolean;
|
||||
firstName?: string;
|
||||
lastName?: string;
|
||||
artistName?: string;
|
||||
@@ -1128,6 +1134,7 @@ const ADMIN_GET_USER_QUERY = gql`
|
||||
artist_name
|
||||
slug
|
||||
role
|
||||
is_admin
|
||||
avatar
|
||||
banner
|
||||
description
|
||||
|
||||
Reference in New Issue
Block a user