Compare commits

..

No commits in common. "14f5babea7308008fea06a305eeb75865f468968" and "592f7c0ae728d21dbd1c3acd8cc85e87ffdb14f8" have entirely different histories.

2 changed files with 35 additions and 39 deletions

View file

@ -146,7 +146,6 @@ export async function POST(request: Request) {
region, region,
city, city,
distinctId: id, distinctId: id,
createdAt,
}); });
} }

View file

@ -1,44 +1,41 @@
import { Prisma } from '@/generated/prisma/client'; import { Prisma } from '@/generated/prisma/client';
import prisma from '@/lib/prisma'; import prisma from '@/lib/prisma';
const FUNCTION_NAME = 'createSession';
export async function createSession(data: Prisma.SessionCreateInput) { export async function createSession(data: Prisma.SessionCreateInput) {
const { rawQuery } = prisma; const {
id,
websiteId,
browser,
os,
device,
screen,
language,
country,
region,
city,
distinctId,
} = data;
await rawQuery( try {
` return await prisma.client.session.create({
insert into session ( data: {
session_id, id,
website_id, websiteId,
browser, browser,
os, os,
device, device,
screen, screen,
language, language,
country, country,
region, region,
city, city,
distinct_id, distinctId,
created_at },
) });
values ( } catch (e: any) {
{{id}}, if (e.message.toLowerCase().includes('unique constraint')) {
{{websiteId}}, return null;
{{browser}}, }
{{os}}, throw e;
{{device}}, }
{{screen}},
{{language}},
{{country}},
{{region}},
{{city}},
{{distinctId}},
{{createdAt}}
)
on conflict (session_id) do nothing
`,
data,
FUNCTION_NAME,
);
} }