From 44f7863f89a5ccba42194d8fa706bd1cf6cdd368 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Claus-Peter=20H=C3=BCbner?= Date: Tue, 3 Jan 2023 00:09:15 +0100 Subject: [PATCH] rework PR comment --- federation/src/server/context.ts | 51 -------------------------------- 1 file changed, 51 deletions(-) delete mode 100644 federation/src/server/context.ts diff --git a/federation/src/server/context.ts b/federation/src/server/context.ts deleted file mode 100644 index 8ba590dd3..000000000 --- a/federation/src/server/context.ts +++ /dev/null @@ -1,51 +0,0 @@ -import { Role } from '@/auth/Role' -import { User as dbUser } from '@entity/User' -import { Transaction as dbTransaction } from '@entity/Transaction' -import Decimal from 'decimal.js-light' -import { ExpressContext } from 'apollo-server-express' - -export interface Context { - token: string | null - setHeaders: { key: string; value: string }[] - role?: Role - user?: dbUser - clientTimezoneOffset?: number - // hack to use less DB calls for Balance Resolver - lastTransaction?: dbTransaction - transactionCount?: number - linkCount?: number - sumHoldAvailableAmount?: Decimal -} - -const context = (args: ExpressContext): Context => { - const authorization = args.req.headers.authorization - const clientTimezoneOffset = args.req.headers.clienttimezoneoffset - const context: Context = { - token: null, - setHeaders: [], - } - if (authorization) { - context.token = authorization.replace(/^Bearer /, '') - } - if (clientTimezoneOffset && typeof clientTimezoneOffset === 'string') { - context.clientTimezoneOffset = Number(clientTimezoneOffset) - } - return context -} - -export const getUser = (context: Context): dbUser => { - if (context.user) return context.user - throw new Error('No user given in context!') -} - -export const getClientTimezoneOffset = (context: Context): number => { - if ( - (context.clientTimezoneOffset || context.clientTimezoneOffset === 0) && - Math.abs(context.clientTimezoneOffset) <= 27 * 60 - ) { - return context.clientTimezoneOffset - } - throw new Error('No valid client time zone offset in context!') -} - -export default context