User.fromJson constructor

User.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory User.fromJson(Map<String, dynamic> json) {
  final jsonCopy = Map<String, dynamic>.from(json);

  final standardFields = [
    'id',
    'email',
    'name',
    'image',
    'createdAt',
    'updatedAt',
    'emailVerified',
    'twoFactorEnabled',
    'username',
    'displayUsername',
    'isAnonymous',
    'phoneNumber',
    'phoneNumberVerified',
    'role',
    'banned',
    'banReason',
    'banExpires',
  ];
  final customProps = Map<String, dynamic>.fromEntries(
    jsonCopy.entries.where((entry) => !standardFields.contains(entry.key)),
  );

  jsonCopy['customProperties'] = customProps;

  return _$UserFromJson(jsonCopy);
}