import { Router } from 'express';
import { uploadImage } from '../controllers/upload.controller.js';
import verifyFirebaseToken from '../middlewares/verifyFirebaseToken.js';
import tenantAccess from '../middlewares/tenantAccess.js';
import methodNotAllowed from '../middlewares/methodNotAllowed.js';
import { imageUpload } from '../middlewares/upload.js';

// Generic image upload to S3 for any signed-in person in an organization (multipart `file`:
// JPG, PNG, WebP or SVG up to 5 MB). Screens save the returned key on their own record.
const router = Router();

router.post('/images', verifyFirebaseToken, tenantAccess(), imageUpload, uploadImage);
router.all('/images', methodNotAllowed('POST'));

export default router;
