@pujansrt/data-genie
Version:
High performant ETL engine written in TypeScript
16 lines (15 loc) • 977 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const transforming_reader_1 = require("../transformers/transforming-reader");
const field_transformers_1 = require("../transformers/field-transformers");
const job_1 = require("../core/job");
const json_reader_1 = require("../readers/json-reader");
const nd_json_writer_1 = require("../writers/nd-json-writer");
async function runExample() {
let readerConditionalTransform = new json_reader_1.JsonReader('input/simple-json-input.json');
readerConditionalTransform = new transforming_reader_1.TransformingReader(readerConditionalTransform)
.setCondition((record) => record.balance < 0)
.add(new field_transformers_1.SetCalculatedField('balance', '0.0').transform()); // Using SetCalculatedField for dynamic value
await job_1.Job.run(readerConditionalTransform, new nd_json_writer_1.NDJsonWriter('output/conditional-transform.ndjson'));
}
runExample().catch(console.error);