nested_json_to_csv
Version:
49 lines (48 loc) • 1.94 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.FileSystemService = exports.Csv = exports.ParserFactory = void 0;
const Csv_1 = require("../models/Csv");
Object.defineProperty(exports, "Csv", { enumerable: true, get: function () { return Csv_1.Csv; } });
const ParserFactory_1 = require("../providers/factories/ParserFactory");
Object.defineProperty(exports, "ParserFactory", { enumerable: true, get: function () { return ParserFactory_1.ParserFactory; } });
const FileSystemService_1 = require("../providers/services/FileSystemService");
Object.defineProperty(exports, "FileSystemService", { enumerable: true, get: function () { return FileSystemService_1.FileSystemService; } });
// async function main() {
// const jsonFile = {
// "1": { person: { name: "fuad", id: "1443" }, price: 123 },
// "2": { person: { name: "test", id: "51542" } },
// };
// console.log(jsonFile);
// const parserFactory: IFactory = new ParserFactory();
// const options: ParserOptions = {
// hasId: true,
// single: false,
// setDefaultValues: true,
// };
// const jsonParser: IParser = parserFactory.make(
// "jsonParser",
// jsonFile,
// options
// );
// const csv: Csv = jsonParser.parse(["person.id", "person.name", "price"]);
// const csvData: string = csv.make();
// console.log(csvData);
// const fileSystemService: FileSystemService = new FileSystemService(
// "data.csv",
// "./Data"
// );
// await fileSystemService.write(csvData);
// const csvParser: IParser = parserFactory.make("csvParser", csv);
// const json = csvParser.parse();
// console.log(json);
// const newJsonParser = parserFactory.make("jsonParser", json, options);
// const newCsv: Csv = newJsonParser.parse([
// "person.id",
// "person.name",
// "price",
// ]);
// console.log(newCsv.make());
// }
// main().then(() => {
// console.log("done");
// });