summary refs log tree commit diff
path: root/src/connections/GitHub
diff options
context:
space:
mode:
authorPuyodead1 <puyodead@proton.me>2022-12-24 16:24:58 -0500
committerPuyodead1 <puyodead@proton.me>2023-03-18 19:28:45 -0400
commit6d6944cfee4af656c6386c7a44efc6b99bdfd6ed (patch)
tree72ed39ba329e7cbd894ddcc0fabdcbdf636ef4a6 /src/connections/GitHub
parentFix connection update visibilty dying when given boolean (diff)
downloadserver-6d6944cfee4af656c6386c7a44efc6b99bdfd6ed.tar.xz
Add Twitch, error handling, revokation changes, etc
Diffstat (limited to 'src/connections/GitHub')
-rw-r--r--src/connections/GitHub/index.ts28
1 files changed, 24 insertions, 4 deletions
diff --git a/src/connections/GitHub/index.ts b/src/connections/GitHub/index.ts

index ab3f8e65..aa686b03 100644 --- a/src/connections/GitHub/index.ts +++ b/src/connections/GitHub/index.ts
@@ -1,4 +1,5 @@ import { + ApiError, Config, ConnectedAccount, ConnectedAccountCommonOAuthTokenResponse, @@ -70,12 +71,18 @@ export default class GitHubConnection extends Connection { Accept: "application/json", }, }) - .then((res) => res.json()) + .then((res) => { + if (!res.ok) { + throw new ApiError("Failed to exchange code", 0, 400); + } + + return res.json(); + }) .catch((e) => { console.error( - `Error exchanging token for ${this.id} connection: ${e}`, + `Error exchanging code for ${this.id} connection: ${e}`, ); - throw DiscordApiErrors.INVALID_OAUTH_TOKEN; + throw DiscordApiErrors.GENERAL_ERROR; }); } @@ -86,7 +93,20 @@ export default class GitHubConnection extends Connection { headers: { Authorization: `Bearer ${token}`, }, - }).then((res) => res.json()); + }) + .then((res) => { + if (!res.ok) { + throw new ApiError("Failed to fetch user", 0, 400); + } + + return res.json(); + }) + .catch((e) => { + console.error( + `Error fetching user for ${this.id} connection: ${e}`, + ); + throw DiscordApiErrors.GENERAL_ERROR; + }); } async handleCallback(