import ORM, { DatabaseKind } from '../../utilities/ORM' import * as Service from '../../services/entities/Folder' import Model from '../../models/Folder' export default async (req, res) => { const orm = new ORM({ kind: process.env.DATABASE_DIALECT as DatabaseKind, url: process.env.DATABASE_URL, }) const repository = orm.getRepository(Model) const methodHandlers = { 'GET': Service.getMultiple(repository), } const { [req.method as keyof typeof methodHandlers]: handler = null } = methodHandlers if (handler === null) { res.statusCode = 415 res.json({ message: 'Method not allowed.' }) return } try { const { status, data, } = await handler(req.query) res.statusCode = status res.json(data) } catch (err) { console.error(err) const { status, data, } = err res.statusCode = status if (data && status !== 204) { res.json(data) return } res.end() } }