Files
now-deployment/node_modules/now/dist/util/get-user.ts
2019-10-17 12:36:15 +09:00

25 lines
519 B
TypeScript

import Client from './client';
import { User } from '../types';
import { APIError, InvalidToken, MissingUser } from './errors-ts';
export default async function getUser(client: Client) {
let user;
try {
({ user } = await client.fetch<{ user: User }>('/www/user', {
useCurrentTeam: false
}));
} catch (error) {
if (error instanceof APIError && error.status === 403) {
throw new InvalidToken();
}
throw error;
}
if (!user) {
throw new MissingUser();
}
return user;
}