summaryrefslogtreecommitdiff
path: root/api/db/_addUser.ts
blob: 776391ae8a6c542ca10f95940b65713465b29ec6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import type User from '../types/User';

import { sql } from '@vercel/postgres';
import { USERS } from './_tables';

export default async function addUser(user: User) {
  const query = `
    INSERT INTO ${USERS.name} (
      ${USERS.fields.id},
      ${USERS.fields.displayName}
    ) VALUES (
      '${user.id}',
      '${user.displayName}'
    );
  `;

  try {
    await sql.query(query);
  } catch (err) {
    throw new Error(`Failed to insert user into database: ${JSON.stringify(user)}. Query was ${query.replace(/\s+/g, ' ')}. ${err}`);
  }
}