From 5d6e97331147322954296e6eb6d6143eeb1d91dd Mon Sep 17 00:00:00 2001 From: mifi Date: Sat, 7 Feb 2026 11:26:36 -0300 Subject: [PATCH] Updates to resolve build issues --- qr-api/src/routes/folders.ts | 2 +- qr-api/src/routes/projects.ts | 2 +- qr-api/src/routes/shorten.ts | 2 +- qr-api/src/routes/uploads.ts | 5 +++-- qr-web/.eslintrc.cjs | 1 + 5 files changed, 7 insertions(+), 5 deletions(-) diff --git a/qr-api/src/routes/folders.ts b/qr-api/src/routes/folders.ts index 200e286..027eeca 100644 --- a/qr-api/src/routes/folders.ts +++ b/qr-api/src/routes/folders.ts @@ -17,7 +17,7 @@ const createBodySchema = z.object({ const updateBodySchema = createBodySchema.partial(); const idParamSchema = z.object({ id: z.string().uuid() }); -export function foldersRouter(db: Database) { +export function foldersRouter(db: Database): ReturnType { const router = Router(); router.get('/', (_req: Request, res: Response) => { diff --git a/qr-api/src/routes/projects.ts b/qr-api/src/routes/projects.ts index 15a4b3e..d0b1216 100644 --- a/qr-api/src/routes/projects.ts +++ b/qr-api/src/routes/projects.ts @@ -23,7 +23,7 @@ const updateBodySchema = createBodySchema.partial(); const idParamSchema = z.object({ id: z.string().uuid() }); -export function projectsRouter(db: Database, baseUrl: string) { +export function projectsRouter(db: Database, baseUrl: string): ReturnType { const router = Router(); const toJson = (p: ReturnType) => p diff --git a/qr-api/src/routes/shorten.ts b/qr-api/src/routes/shorten.ts index 140392b..8348f5d 100644 --- a/qr-api/src/routes/shorten.ts +++ b/qr-api/src/routes/shorten.ts @@ -8,7 +8,7 @@ const bodySchema = z.object({ customSlug: z.string().optional(), }); -export function shortenRouter(env: Env) { +export function shortenRouter(env: Env): ReturnType { const router = Router(); router.post('/', async (req: Request, res: Response) => { diff --git a/qr-api/src/routes/uploads.ts b/qr-api/src/routes/uploads.ts index 9a5cc63..aa2719d 100644 --- a/qr-api/src/routes/uploads.ts +++ b/qr-api/src/routes/uploads.ts @@ -4,7 +4,7 @@ import fs from 'fs'; import type { Env } from '../env.js'; import { createMulter } from '../upload.js'; -export function uploadsRouter(env: Env, baseUrl: string) { +export function uploadsRouter(env: Env, baseUrl: string): ReturnType { const router = Router(); const upload = createMulter(env); @@ -18,7 +18,8 @@ export function uploadsRouter(env: Env, baseUrl: string) { }); router.get('/:filename', (req: Request, res: Response) => { - const filename = req.params.filename; + const raw = req.params.filename; + const filename = typeof raw === 'string' ? raw : raw?.[0]; if (!filename || filename.includes('..') || path.isAbsolute(filename)) { return res.status(400).json({ error: 'Invalid filename' }); } diff --git a/qr-web/.eslintrc.cjs b/qr-web/.eslintrc.cjs index 0102856..9d99704 100644 --- a/qr-web/.eslintrc.cjs +++ b/qr-web/.eslintrc.cjs @@ -2,6 +2,7 @@ module.exports = { root: true, extends: ['next/core-web-vitals', 'prettier'], + plugins: ['@typescript-eslint'], parserOptions: { ecmaVersion: 2022, sourceType: 'module' }, rules: { '@typescript-eslint/no-unused-vars': ['warn', { argsIgnorePattern: '^_' }],