UNPKG

@pujansrt/data-genie

Version:

High performant ETL engine written in TypeScript

16 lines (15 loc) 977 B
"use strict"; 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);