diff options
Diffstat (limited to 'src/api/routes/connections/#connection_name')
-rw-r--r-- | src/api/routes/connections/#connection_name/authorize.ts | 4 | ||||
-rw-r--r-- | src/api/routes/connections/#connection_name/callback.ts | 81 |
2 files changed, 36 insertions, 49 deletions
diff --git a/src/api/routes/connections/#connection_name/authorize.ts b/src/api/routes/connections/#connection_name/authorize.ts index b43f46d7..c3a435cd 100644 --- a/src/api/routes/connections/#connection_name/authorize.ts +++ b/src/api/routes/connections/#connection_name/authorize.ts @@ -30,9 +30,7 @@ router.get("/", route({}), async (req: Request, res: Response) => { provider_id: { code: "BASE_TYPE_CHOICES", message: req.t("common:field.BASE_TYPE_CHOICES", { - types: Array.from(ConnectionStore.connections.keys()).join( - ", ", - ), + types: Array.from(ConnectionStore.connections.keys()).join(", "), }), }, }); diff --git a/src/api/routes/connections/#connection_name/callback.ts b/src/api/routes/connections/#connection_name/callback.ts index ee0db94a..f47c48f3 100644 --- a/src/api/routes/connections/#connection_name/callback.ts +++ b/src/api/routes/connections/#connection_name/callback.ts @@ -17,55 +17,44 @@ */ import { route } from "@spacebar/api"; -import { - ConnectionCallbackSchema, - ConnectionStore, - emitEvent, - FieldErrors, -} from "@spacebar/util"; +import { ConnectionCallbackSchema, ConnectionStore, emitEvent, FieldErrors } from "@spacebar/util"; import { Request, Response, Router } from "express"; const router = Router(); -router.post( - "/", - route({ requestBody: "ConnectionCallbackSchema" }), - async (req: Request, res: Response) => { - const { connection_name } = req.params; - const connection = ConnectionStore.connections.get(connection_name); - if (!connection) - throw FieldErrors({ - provider_id: { - code: "BASE_TYPE_CHOICES", - message: req.t("common:field.BASE_TYPE_CHOICES", { - types: Array.from( - ConnectionStore.connections.keys(), - ).join(", "), - }), - }, - }); - - if (!connection.settings.enabled) - throw FieldErrors({ - provider_id: { - message: "This connection has been disabled server-side.", - }, - }); - - const body = req.body as ConnectionCallbackSchema; - const userId = connection.getUserId(body.state); - const connectedAccnt = await connection.handleCallback(body); - - // whether we should emit a connections update event, only used when a connection doesnt already exist - if (connectedAccnt) - emitEvent({ - event: "USER_CONNECTIONS_UPDATE", - data: { ...connectedAccnt, token_data: undefined }, - user_id: userId, - }); - - res.sendStatus(204); - }, -); +router.post("/", route({ requestBody: "ConnectionCallbackSchema" }), async (req: Request, res: Response) => { + const { connection_name } = req.params; + const connection = ConnectionStore.connections.get(connection_name); + if (!connection) + throw FieldErrors({ + provider_id: { + code: "BASE_TYPE_CHOICES", + message: req.t("common:field.BASE_TYPE_CHOICES", { + types: Array.from(ConnectionStore.connections.keys()).join(", "), + }), + }, + }); + + if (!connection.settings.enabled) + throw FieldErrors({ + provider_id: { + message: "This connection has been disabled server-side.", + }, + }); + + const body = req.body as ConnectionCallbackSchema; + const userId = connection.getUserId(body.state); + const connectedAccnt = await connection.handleCallback(body); + + // whether we should emit a connections update event, only used when a connection doesnt already exist + if (connectedAccnt) + emitEvent({ + event: "USER_CONNECTIONS_UPDATE", + data: { ...connectedAccnt, token_data: undefined }, + user_id: userId, + }); + + res.sendStatus(204); +}); export default router; |