2023-11-19 13:15:37 +00:00
|
|
|
import type { Handle } from '@sveltejs/kit';
|
|
|
|
|
2024-02-10 13:26:41 +00:00
|
|
|
import { env } from '$env/dynamic/private';
|
|
|
|
|
2023-11-19 13:15:37 +00:00
|
|
|
import { auth } from '$lib/server/lucia';
|
2024-02-10 19:44:10 +00:00
|
|
|
import { LocalFileStore } from '$lib/server/storage/local';
|
2023-11-19 17:37:09 +00:00
|
|
|
import { DatabasePrisma } from '$lib/server/db/prisma';
|
2023-11-19 13:15:37 +00:00
|
|
|
|
2024-02-10 19:44:10 +00:00
|
|
|
const localFileStore = new LocalFileStore(env.FILE_BASE_PATH, env.FILE_EXTENSION);
|
2024-02-10 13:26:41 +00:00
|
|
|
const prismaClient = new DatabasePrisma(env.DATABASE_URL);
|
2023-11-19 13:15:37 +00:00
|
|
|
|
|
|
|
export const handle: Handle = async ({ event, resolve }) => {
|
2024-02-10 19:44:10 +00:00
|
|
|
event.locals = {
|
|
|
|
auth,
|
|
|
|
authReq: auth.handleRequest(event),
|
|
|
|
database: prismaClient,
|
|
|
|
writeStore: localFileStore,
|
|
|
|
readStore: localFileStore
|
|
|
|
};
|
2023-11-19 13:15:37 +00:00
|
|
|
|
|
|
|
return await resolve(event);
|
|
|
|
};
|