FigmaMind MCP Server

by joao-loker
Verified
import fs from 'fs-extra'; import path from 'path'; import { processData } from '../src/processor/processor'; import logger from '../src/utils/logger'; // Diretórios de entrada e saída const inputDir = path.resolve(__dirname, '../examples/input'); const outputDir = path.resolve(__dirname, '../examples/output'); /** * Processa todos os arquivos JSON no diretório */ async function processDirectory(inputDirectory: string, outputDirectory: string): Promise<void> { try { // Garantir que os diretórios existam await fs.ensureDir(inputDirectory); await fs.ensureDir(outputDirectory); // Listar arquivos JSON no diretório de entrada const files = await fs.readdir(inputDirectory); const jsonFiles = files.filter(file => file.endsWith('.json')); console.log(`Encontrados ${jsonFiles.length} arquivos JSON para processar`); // Processar cada arquivo for (const file of jsonFiles) { const inputPath = path.join(inputDirectory, file); const outputPath = path.join(outputDirectory, `processed-${file}`); console.log(`Processando ${file}...`); // Ler o arquivo JSON const data = await fs.readJson(inputPath); // Processar os dados (simulando uma chave de arquivo) const fileKey = path.basename(file, '.json'); const result = await processData(data, fileKey); // Salvar o resultado await fs.writeJson(outputPath, result, { spaces: 2 }); console.log(`Resultado salvo em ${outputPath}`); } console.log('Processamento concluído com sucesso!'); } catch (error: any) { const errorObj = error instanceof Error ? error : new Error(String(error)); logger.error('Erro ao processar diretório:', errorObj); throw error; } } // Processar todos os arquivos JSON no diretório console.log(`Processando arquivos de ${inputDir} para ${outputDir}...`); processDirectory(inputDir, outputDir).catch(err => { console.error('Erro:', err.message); process.exit(1); }); export { processDirectory };