getUser method

Future<User> getUser({
  1. required String user_id,
  2. String? tokenGithub,
})

Implementation

Future<scheme.User> getUser({
  required String user_id,
  String? tokenGithub,
}) async {
  GitHub gitHub = git_hub(
    tokenGithub: tokenGithub,
  );

  User user_data = await gitHub.users.getUser(user_id);

  Map jsonData = {
    "@type": "user",
    "id": user_data.id,
    "name": user_data.name,
    "username": user_data.login,
    "company": user_data.company,
    "bio": user_data.bio,
    "type": user_data.type?.toLowerCase(),
    "followers_count": user_data.followersCount,
    "following_count": user_data.followingCount,
    "location": user_data.location,
    "avatar_url": user_data.avatarUrl,
    "html_url": user_data.htmlUrl,
    "site_admin": user_data.siteAdmin,
    "blog": user_data.blog,
    "email": user_data.email,
    "hirable": user_data.hirable,
    "public_repos": user_data.publicReposCount,
    "public_gists": user_data.publicGistsCount,
    "create_date": user_data.createdAt?.millisecondsSinceEpoch,
    "update_date": user_data.updatedAt?.millisecondsSinceEpoch,
    "twitter_username": user_data.twitterUsername,
    "events_url": user_data.eventsUrl,
    "followers_url": user_data.followersUrl,
    "following_url": user_data.followingUrl,
    "gists_url": user_data.gistsUrl,
    "gravatar_id": user_data.gravatarId,
    "node_id": user_data.nodeId,
    "organizations_url": user_data.organizationsUrl,
    "received_events_url": user_data.receivedEventsUrl,
    "repos_url": user_data.reposUrl,
    "starred_at": user_data.starredAt,
    "starred_url": user_data.starredUrl,
    "subscriptions_url": user_data.subscriptionsUrl,
    "url": user_data.url,
  };

  return scheme.User(jsonData);
}