21 lines
628 B
TypeScript
21 lines
628 B
TypeScript
import fp from 'fastify-plugin';
|
|
import fastifyStatic from '@fastify/static';
|
|
import { mkdirSync } from 'node:fs';
|
|
import { resolve } from 'node:path';
|
|
import { env } from '../config/env.js';
|
|
|
|
export default fp(async (app) => {
|
|
const uploadsRoot = resolve(env.UPLOADS_DIR);
|
|
mkdirSync(resolve(uploadsRoot, 'og'), { recursive: true });
|
|
mkdirSync(resolve(uploadsRoot, 'upload'), { recursive: true });
|
|
mkdirSync(resolve(uploadsRoot, 'avatar'), { recursive: true });
|
|
|
|
await app.register(fastifyStatic, {
|
|
root: uploadsRoot,
|
|
prefix: '/uploads/',
|
|
decorateReply: false,
|
|
index: false,
|
|
list: false,
|
|
});
|
|
});
|