import express from 'express'; import { PDFController, uploadMiddleware } from '../controllers/pdfController'; import { authenticateToken } from '../middleware/auth'; const router = express.Router(); /** * Rotas para manipulação de PDF * Todas as rotas requerem autenticação */ // Comprime PDFs router.post( '/compress', authenticateToken, uploadMiddleware.array('files', 10), PDFController.compress ); // Divide PDF router.post( '/split', authenticateToken, uploadMiddleware.array('files', 1), PDFController.split ); // Mescla PDFs router.post( '/merge', authenticateToken, uploadMiddleware.array('files', 50), PDFController.merge ); // Converte PDF para imagens router.post( '/pdf-to-images', authenticateToken, uploadMiddleware.array('files', 1), PDFController.pdfToImages ); // Converte imagens para PDF router.post( '/images-to-pdf', authenticateToken, uploadMiddleware.array('files', 100), PDFController.imagesToPDF ); // Realiza OCR em PDF router.post( '/ocr', authenticateToken, uploadMiddleware.array('files', 1), PDFController.performOCR ); // Obtém informações de um PDF router.post( '/info', authenticateToken, uploadMiddleware.array('files', 1), PDFController.getInfo ); // Obtém histórico de operações router.get( '/history', authenticateToken, PDFController.getHistory ); // Download de arquivo processado router.get( '/download/:operacaoId/:fileIndex', authenticateToken, PDFController.downloadFile ); export default router;