UNPKG

findstate-cli

Version:

A CLI for querying data optimized for Real Estate

30 lines (29 loc) 1.07 kB
import fs from "fs"; import { queryData } from "../../core/query-engine.js"; import { loadData } from "../../core/data-loader.js"; import { validateFileName } from "../../utils/validation-helpers.js"; export function exportCommand(queries, source = "mock", fileName = "results.json") { try { validateFileName(fileName); } catch (error) { console.error(error.message); process.exit(1); } const data = loadData(source); const parsedQueries = queries.map((query) => { const [field, operation, value] = query.split(":"); const parsedValue = isNaN(Number(value)) ? value : Number(value); return { field, operation, value: parsedValue }; }); const results = queryData(data, parsedQueries); try { fs.writeFileSync(fileName, JSON.stringify(results, null, 2)); console.info(`Results exported to ${fileName}`); } catch (error) { console.error("Error: Unable to write to the specified file."); console.error(error.message); process.exit(1); } }