fix(auth): add name to JWT payload, fix phone-user session restore
JWT payload was missing 'name' field — phone-invited users showed empty name after app restart (session restore from JWT). Also added phone fallback in Flutter _decodeUserFromJwt. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
4b2b3dca0c
commit
da6bfbf896
|
|
@ -114,8 +114,9 @@ class AuthNotifier extends StateNotifier<AuthState> {
|
|||
) as Map<String, dynamic>;
|
||||
return AuthUser(
|
||||
id: payload['sub'] as String,
|
||||
email: payload['email'] as String? ?? '',
|
||||
name: payload['name'] as String? ?? payload['email'] as String? ?? '',
|
||||
email: payload['email'] as String?,
|
||||
phone: payload['phone'] as String?,
|
||||
name: payload['name'] as String? ?? payload['email'] as String? ?? payload['phone'] as String? ?? '',
|
||||
roles: (payload['roles'] as List?)?.cast<String>() ?? [],
|
||||
tenantId: payload['tenantId'] as String?,
|
||||
);
|
||||
|
|
|
|||
|
|
@ -714,6 +714,7 @@ export class AuthService {
|
|||
sub: user.id,
|
||||
email: user.email,
|
||||
phone: user.phone,
|
||||
name: user.name,
|
||||
tenantId: user.tenantId,
|
||||
roles: user.roles,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ export interface JwtPayload {
|
|||
sub: string;
|
||||
email?: string;
|
||||
phone?: string;
|
||||
name?: string;
|
||||
tenantId: string;
|
||||
roles: string[];
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue