@@ -32,15 +32,15 @@ import qualified Data.Text as T
3232
3333data GithubUser = GithubUser
3434 { githubUserId :: Int
35- , githubUserName :: Text
35+ , githubUserName :: Maybe Text
3636 , githubUserLogin :: Text
3737 , githubUserAvatarUrl :: Text
3838 }
3939
4040instance FromJSON GithubUser where
4141 parseJSON (Object o) =
4242 GithubUser <$> o .: " id"
43- <*> o .: " name"
43+ <*> o .:? " name"
4444 <*> o .: " login"
4545 <*> o .: " avatar_url"
4646
@@ -113,9 +113,12 @@ fetchGithubProfile manager token = do
113113toCreds :: GithubUser -> [GithubUserEmail ] -> AccessToken -> Creds m
114114toCreds user userMail token = Creds " github"
115115 (T. pack $ show $ githubUserId user)
116- [ (" name" , githubUserName user)
117- , (" email" , githubUserEmail $ head userMail)
118- , (" login" , githubUserLogin user)
119- , (" avatar_url" , githubUserAvatarUrl user)
120- , (" access_token" , decodeUtf8 $ accessToken token)
121- ]
116+ cExtra
117+ where
118+ cExtra = [ (" email" , githubUserEmail $ head userMail)
119+ , (" login" , githubUserLogin user)
120+ , (" avatar_url" , githubUserAvatarUrl user)
121+ , (" access_token" , decodeUtf8 $ accessToken token)
122+ ] ++ (maybeName $ githubUserName user)
123+ maybeName Nothing = []
124+ maybeName (Just name) = [(" name" , name)]
0 commit comments