@grnsft/if 0.4.0-beta.0 → 0.4.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/builtins/coefficient/index.d.ts +3 -0
- package/build/builtins/coefficient/index.js +51 -0
- package/build/builtins/coefficient/types.d.ts +5 -0
- package/build/builtins/coefficient/types.js +3 -0
- package/build/builtins/csv-lookup/index.d.ts +2 -0
- package/build/builtins/csv-lookup/index.js +181 -0
- package/build/builtins/divide/index.d.ts +2 -0
- package/build/builtins/divide/index.js +67 -0
- package/build/builtins/exponent/index.d.ts +3 -0
- package/build/builtins/exponent/index.js +72 -0
- package/build/builtins/exponent/types.d.ts +5 -0
- package/build/builtins/exponent/types.js +3 -0
- package/build/builtins/export-csv-raw.js +4 -1
- package/build/builtins/export-csv.js +4 -1
- package/build/builtins/export-log.js +4 -2
- package/build/builtins/export-yaml.js +4 -1
- package/build/builtins/index.d.ts +13 -0
- package/build/builtins/index.js +28 -2
- package/build/builtins/interpolation/index.d.ts +2 -0
- package/build/builtins/interpolation/index.js +146 -0
- package/build/builtins/interpolation/types.d.ts +5 -0
- package/build/builtins/interpolation/types.js +10 -0
- package/build/builtins/mock-observations/helpers/common-generator.d.ts +3 -0
- package/build/builtins/mock-observations/helpers/common-generator.js +32 -0
- package/build/builtins/mock-observations/helpers/rand-int-generator.d.ts +3 -0
- package/build/builtins/mock-observations/helpers/rand-int-generator.js +58 -0
- package/build/builtins/mock-observations/index.d.ts +3 -0
- package/build/builtins/mock-observations/index.js +116 -0
- package/build/builtins/mock-observations/interfaces/index.d.ts +6 -0
- package/build/builtins/mock-observations/interfaces/index.js +3 -0
- package/build/builtins/mock-observations/types.d.ts +13 -0
- package/build/builtins/mock-observations/types.js +3 -0
- package/build/builtins/multiply/index.d.ts +3 -0
- package/build/builtins/multiply/index.js +63 -0
- package/build/builtins/multiply/types.d.ts +4 -0
- package/build/builtins/multiply/types.js +3 -0
- package/build/builtins/regex/index.d.ts +3 -0
- package/build/builtins/regex/index.js +78 -0
- package/build/builtins/sci/config.d.ts +1 -0
- package/build/builtins/sci/config.js +44 -0
- package/build/builtins/sci/index.d.ts +3 -0
- package/build/builtins/sci/index.js +69 -0
- package/build/builtins/sci-embodied/index.d.ts +2 -0
- package/build/builtins/sci-embodied/index.js +115 -0
- package/build/builtins/shell/index.d.ts +3 -0
- package/build/builtins/shell/index.js +58 -0
- package/build/builtins/subtract/index.d.ts +3 -0
- package/build/builtins/subtract/index.js +75 -0
- package/build/builtins/subtract/types.d.ts +4 -0
- package/build/builtins/subtract/types.js +3 -0
- package/build/builtins/sum/index.d.ts +3 -0
- package/build/builtins/sum/index.js +61 -0
- package/build/builtins/sum/types.d.ts +4 -0
- package/build/builtins/sum/types.js +3 -0
- package/build/config/config.d.ts +8 -2
- package/build/config/config.js +34 -1
- package/build/config/strings.d.ts +22 -0
- package/build/config/strings.js +23 -1
- package/build/diff.d.ts +2 -0
- package/build/diff.js +41 -0
- package/build/index.js +8 -4
- package/build/lib/aggregate.js +5 -1
- package/build/lib/compare.d.ts +10 -0
- package/build/lib/compare.js +56 -0
- package/build/lib/compute.js +9 -1
- package/build/lib/environment.js +9 -3
- package/build/lib/exhaust.js +3 -2
- package/build/lib/initialize.js +5 -2
- package/build/lib/load.d.ts +48 -0
- package/build/lib/load.js +51 -2
- package/build/lib/parameterize.js +8 -4
- package/build/types/common.d.ts +4 -0
- package/build/types/common.js +3 -0
- package/build/types/helpers.d.ts +4 -0
- package/build/types/helpers.js +3 -0
- package/build/types/interface.d.ts +2 -1
- package/build/types/interface.js +1 -1
- package/build/types/lib/compare.d.ts +7 -0
- package/build/types/lib/compare.js +3 -0
- package/build/types/process-args.d.ts +7 -1
- package/build/types/process-args.js +1 -1
- package/build/types/util/args.d.ts +4 -0
- package/build/types/util/args.js +3 -0
- package/build/util/args.d.ts +7 -2
- package/build/util/args.js +49 -11
- package/build/util/debug-logger.d.ts +4 -0
- package/build/util/debug-logger.js +117 -0
- package/build/util/errors.d.ts +1 -1
- package/build/util/errors.js +6 -1
- package/build/util/helpers.d.ts +23 -0
- package/build/util/helpers.js +116 -2
- package/build/util/log-memoize.d.ts +1 -1
- package/build/util/log-memoize.js +1 -1
- package/build/util/validations.d.ts +59 -51
- package/build/util/validations.js +49 -18
- package/package.json +1 -1
- package/.env +0 -5
- package/coverage/clover.xml +0 -1590
- package/coverage/coverage-final.json +0 -50
- package/coverage/lcov-report/base.css +0 -224
- package/coverage/lcov-report/block-navigation.js +0 -87
- package/coverage/lcov-report/builtins/coefficient/index.html +0 -116
- package/coverage/lcov-report/builtins/coefficient/index.ts.html +0 -295
- package/coverage/lcov-report/builtins/csv-lookup/index.html +0 -116
- package/coverage/lcov-report/builtins/csv-lookup/index.ts.html +0 -832
- package/coverage/lcov-report/builtins/divide/index.html +0 -116
- package/coverage/lcov-report/builtins/divide/index.ts.html +0 -361
- package/coverage/lcov-report/builtins/exponent/index.html +0 -116
- package/coverage/lcov-report/builtins/exponent/index.ts.html +0 -355
- package/coverage/lcov-report/builtins/export-csv-raw.ts.html +0 -553
- package/coverage/lcov-report/builtins/export-csv.ts.html +0 -433
- package/coverage/lcov-report/builtins/export-log.ts.html +0 -145
- package/coverage/lcov-report/builtins/export-yaml.ts.html +0 -184
- package/coverage/lcov-report/builtins/group-by.ts.html +0 -364
- package/coverage/lcov-report/builtins/index.html +0 -206
- package/coverage/lcov-report/builtins/index.ts.html +0 -130
- package/coverage/lcov-report/builtins/interpolation/index.html +0 -131
- package/coverage/lcov-report/builtins/interpolation/index.ts.html +0 -670
- package/coverage/lcov-report/builtins/interpolation/types.ts.html +0 -100
- package/coverage/lcov-report/builtins/mock-observations/helpers/common-generator.ts.html +0 -181
- package/coverage/lcov-report/builtins/mock-observations/helpers/index.html +0 -131
- package/coverage/lcov-report/builtins/mock-observations/helpers/rand-int-generator.ts.html +0 -295
- package/coverage/lcov-report/builtins/mock-observations/index.html +0 -116
- package/coverage/lcov-report/builtins/mock-observations/index.ts.html +0 -613
- package/coverage/lcov-report/builtins/multiply/index.html +0 -116
- package/coverage/lcov-report/builtins/multiply/index.ts.html +0 -337
- package/coverage/lcov-report/builtins/regex/index.html +0 -116
- package/coverage/lcov-report/builtins/regex/index.ts.html +0 -379
- package/coverage/lcov-report/builtins/sci/config.ts.html +0 -205
- package/coverage/lcov-report/builtins/sci/index.html +0 -116
- package/coverage/lcov-report/builtins/sci/index.ts.html +0 -331
- package/coverage/lcov-report/builtins/sci-embodied/index.html +0 -116
- package/coverage/lcov-report/builtins/sci-embodied/index.ts.html +0 -481
- package/coverage/lcov-report/builtins/shell/index.html +0 -116
- package/coverage/lcov-report/builtins/shell/index.ts.html +0 -283
- package/coverage/lcov-report/builtins/subtract/index.html +0 -116
- package/coverage/lcov-report/builtins/subtract/index.ts.html +0 -373
- package/coverage/lcov-report/builtins/sum/index.html +0 -116
- package/coverage/lcov-report/builtins/sum/index.ts.html +0 -340
- package/coverage/lcov-report/builtins/time-sync.ts.html +0 -1459
- package/coverage/lcov-report/config/config.ts.html +0 -334
- package/coverage/lcov-report/config/index.html +0 -161
- package/coverage/lcov-report/config/index.ts.html +0 -94
- package/coverage/lcov-report/config/params.ts.html +0 -697
- package/coverage/lcov-report/config/strings.ts.html +0 -415
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +0 -386
- package/coverage/lcov-report/lib/aggregate.ts.html +0 -331
- package/coverage/lcov-report/lib/compare.ts.html +0 -283
- package/coverage/lcov-report/lib/compute.ts.html +0 -391
- package/coverage/lcov-report/lib/environment.ts.html +0 -343
- package/coverage/lcov-report/lib/exhaust.ts.html +0 -283
- package/coverage/lcov-report/lib/index.html +0 -221
- package/coverage/lcov-report/lib/initialize.ts.html +0 -388
- package/coverage/lcov-report/lib/load.ts.html +0 -268
- package/coverage/lcov-report/lib/parameterize.ts.html +0 -283
- package/coverage/lcov-report/prettify.css +0 -1
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +0 -196
- package/coverage/lcov-report/types/aggregation.ts.html +0 -94
- package/coverage/lcov-report/types/index.html +0 -146
- package/coverage/lcov-report/types/interface.ts.html +0 -181
- package/coverage/lcov-report/types/parameters.ts.html +0 -106
- package/coverage/lcov-report/util/aggregation-helper.ts.html +0 -286
- package/coverage/lcov-report/util/args.ts.html +0 -508
- package/coverage/lcov-report/util/errors.ts.html +0 -232
- package/coverage/lcov-report/util/helpers.ts.html +0 -613
- package/coverage/lcov-report/util/index.html +0 -266
- package/coverage/lcov-report/util/json.ts.html +0 -115
- package/coverage/lcov-report/util/log-memoize.ts.html +0 -145
- package/coverage/lcov-report/util/logger.ts.html +0 -151
- package/coverage/lcov-report/util/os-checker.ts.html +0 -421
- package/coverage/lcov-report/util/plugin-storage.ts.html +0 -199
- package/coverage/lcov-report/util/validations.ts.html +0 -526
- package/coverage/lcov-report/util/yaml.ts.html +0 -193
- package/coverage/lcov.info +0 -2811
- package/src/__tests__/integration/manifest/sci-e.yaml +0 -23
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Sum = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const validations_1 = require("../../util/validations");
|
|
6
|
+
const errors_1 = require("../../util/errors");
|
|
7
|
+
const { InputValidationError, ConfigNotFoundError } = errors_1.ERRORS;
|
|
8
|
+
const Sum = (globalConfig) => {
|
|
9
|
+
const metadata = {
|
|
10
|
+
kind: 'execute',
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Calculate the sum of each input-paramters.
|
|
14
|
+
*/
|
|
15
|
+
const execute = (inputs) => {
|
|
16
|
+
const safeGlobalConfig = validateGlobalConfig();
|
|
17
|
+
const inputParameters = safeGlobalConfig['input-parameters'];
|
|
18
|
+
const outputParameter = safeGlobalConfig['output-parameter'];
|
|
19
|
+
return inputs.map(input => {
|
|
20
|
+
const safeInput = validateSingleInput(input, inputParameters);
|
|
21
|
+
return {
|
|
22
|
+
...input,
|
|
23
|
+
[outputParameter]: calculateSum(safeInput, inputParameters),
|
|
24
|
+
};
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Checks global config value are valid.
|
|
29
|
+
*/
|
|
30
|
+
const validateGlobalConfig = () => {
|
|
31
|
+
if (!globalConfig) {
|
|
32
|
+
throw new ConfigNotFoundError('Global config is not provided.');
|
|
33
|
+
}
|
|
34
|
+
const globalConfigSchema = zod_1.z.object({
|
|
35
|
+
'input-parameters': zod_1.z.array(zod_1.z.string()),
|
|
36
|
+
'output-parameter': zod_1.z.string().min(1),
|
|
37
|
+
});
|
|
38
|
+
return (0, validations_1.validate)(globalConfigSchema, globalConfig);
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Checks for required fields in input.
|
|
42
|
+
*/
|
|
43
|
+
const validateSingleInput = (input, inputParameters) => {
|
|
44
|
+
inputParameters.forEach(metricToSum => {
|
|
45
|
+
if (!input[metricToSum]) {
|
|
46
|
+
throw new InputValidationError(`${metricToSum} is missing from the input array.`);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
return input;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* Calculates the sum of the energy components.
|
|
53
|
+
*/
|
|
54
|
+
const calculateSum = (input, inputParameters) => inputParameters.reduce((accumulator, metricToSum) => accumulator + input[metricToSum], 0);
|
|
55
|
+
return {
|
|
56
|
+
metadata,
|
|
57
|
+
execute,
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
exports.Sum = Sum;
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYnVpbHRpbnMvc3VtL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZCQUFzQjtBQUl0Qix3REFBZ0Q7QUFDaEQsOENBQXlDO0FBSXpDLE1BQU0sRUFBQyxvQkFBb0IsRUFBRSxtQkFBbUIsRUFBQyxHQUFHLGVBQU0sQ0FBQztBQUVwRCxNQUFNLEdBQUcsR0FBRyxDQUFDLFlBQXVCLEVBQWlCLEVBQUU7SUFDNUQsTUFBTSxRQUFRLEdBQUc7UUFDZixJQUFJLEVBQUUsU0FBUztLQUNoQixDQUFDO0lBRUY7O09BRUc7SUFDSCxNQUFNLE9BQU8sR0FBRyxDQUFDLE1BQXNCLEVBQUUsRUFBRTtRQUN6QyxNQUFNLGdCQUFnQixHQUFHLG9CQUFvQixFQUFFLENBQUM7UUFDaEQsTUFBTSxlQUFlLEdBQUcsZ0JBQWdCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUM3RCxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRTdELE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN4QixNQUFNLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsZUFBZSxDQUFDLENBQUM7WUFFOUQsT0FBTztnQkFDTCxHQUFHLEtBQUs7Z0JBQ1IsQ0FBQyxlQUFlLENBQUMsRUFBRSxZQUFZLENBQUMsU0FBUyxFQUFFLGVBQWUsQ0FBQzthQUM1RCxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUM7SUFFRjs7T0FFRztJQUNILE1BQU0sb0JBQW9CLEdBQUcsR0FBRyxFQUFFO1FBQ2hDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDakIsTUFBTSxJQUFJLG1CQUFtQixDQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDakU7UUFFRCxNQUFNLGtCQUFrQixHQUFHLE9BQUMsQ0FBQyxNQUFNLENBQUM7WUFDbEMsa0JBQWtCLEVBQUUsT0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDdkMsa0JBQWtCLEVBQUUsT0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDdEMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFBLHNCQUFRLEVBQ2Isa0JBQWtCLEVBQ2xCLFlBQVksQ0FDYixDQUFDO0lBQ0osQ0FBQyxDQUFDO0lBRUY7O09BRUc7SUFDSCxNQUFNLG1CQUFtQixHQUFHLENBQzFCLEtBQW1CLEVBQ25CLGVBQXlCLEVBQ3pCLEVBQUU7UUFDRixlQUFlLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEVBQUU7Z0JBQ3ZCLE1BQU0sSUFBSSxvQkFBb0IsQ0FDNUIsR0FBRyxXQUFXLG1DQUFtQyxDQUNsRCxDQUFDO2FBQ0g7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQyxDQUFDO0lBRUY7O09BRUc7SUFDSCxNQUFNLFlBQVksR0FBRyxDQUFDLEtBQW1CLEVBQUUsZUFBeUIsRUFBRSxFQUFFLENBQ3RFLGVBQWUsQ0FBQyxNQUFNLENBQ3BCLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxFQUFFLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUMsRUFDOUQsQ0FBQyxDQUNGLENBQUM7SUFFSixPQUFPO1FBQ0wsUUFBUTtRQUNSLE9BQU87S0FDUixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBekVXLFFBQUEsR0FBRyxPQXlFZCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7en0gZnJvbSAnem9kJztcblxuaW1wb3J0IHtFeGVjdXRlUGx1Z2luLCBQbHVnaW5QYXJhbXN9IGZyb20gJy4uLy4uL3R5cGVzL2ludGVyZmFjZSc7XG5cbmltcG9ydCB7dmFsaWRhdGV9IGZyb20gJy4uLy4uL3V0aWwvdmFsaWRhdGlvbnMnO1xuaW1wb3J0IHtFUlJPUlN9IGZyb20gJy4uLy4uL3V0aWwvZXJyb3JzJztcblxuaW1wb3J0IHtTdW1Db25maWd9IGZyb20gJy4vdHlwZXMnO1xuXG5jb25zdCB7SW5wdXRWYWxpZGF0aW9uRXJyb3IsIENvbmZpZ05vdEZvdW5kRXJyb3J9ID0gRVJST1JTO1xuXG5leHBvcnQgY29uc3QgU3VtID0gKGdsb2JhbENvbmZpZzogU3VtQ29uZmlnKTogRXhlY3V0ZVBsdWdpbiA9PiB7XG4gIGNvbnN0IG1ldGFkYXRhID0ge1xuICAgIGtpbmQ6ICdleGVjdXRlJyxcbiAgfTtcblxuICAvKipcbiAgICogQ2FsY3VsYXRlIHRoZSBzdW0gb2YgZWFjaCBpbnB1dC1wYXJhbXRlcnMuXG4gICAqL1xuICBjb25zdCBleGVjdXRlID0gKGlucHV0czogUGx1Z2luUGFyYW1zW10pID0+IHtcbiAgICBjb25zdCBzYWZlR2xvYmFsQ29uZmlnID0gdmFsaWRhdGVHbG9iYWxDb25maWcoKTtcbiAgICBjb25zdCBpbnB1dFBhcmFtZXRlcnMgPSBzYWZlR2xvYmFsQ29uZmlnWydpbnB1dC1wYXJhbWV0ZXJzJ107XG4gICAgY29uc3Qgb3V0cHV0UGFyYW1ldGVyID0gc2FmZUdsb2JhbENvbmZpZ1snb3V0cHV0LXBhcmFtZXRlciddO1xuXG4gICAgcmV0dXJuIGlucHV0cy5tYXAoaW5wdXQgPT4ge1xuICAgICAgY29uc3Qgc2FmZUlucHV0ID0gdmFsaWRhdGVTaW5nbGVJbnB1dChpbnB1dCwgaW5wdXRQYXJhbWV0ZXJzKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgLi4uaW5wdXQsXG4gICAgICAgIFtvdXRwdXRQYXJhbWV0ZXJdOiBjYWxjdWxhdGVTdW0oc2FmZUlucHV0LCBpbnB1dFBhcmFtZXRlcnMpLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfTtcblxuICAvKipcbiAgICogQ2hlY2tzIGdsb2JhbCBjb25maWcgdmFsdWUgYXJlIHZhbGlkLlxuICAgKi9cbiAgY29uc3QgdmFsaWRhdGVHbG9iYWxDb25maWcgPSAoKSA9PiB7XG4gICAgaWYgKCFnbG9iYWxDb25maWcpIHtcbiAgICAgIHRocm93IG5ldyBDb25maWdOb3RGb3VuZEVycm9yKCdHbG9iYWwgY29uZmlnIGlzIG5vdCBwcm92aWRlZC4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBnbG9iYWxDb25maWdTY2hlbWEgPSB6Lm9iamVjdCh7XG4gICAgICAnaW5wdXQtcGFyYW1ldGVycyc6IHouYXJyYXkoei5zdHJpbmcoKSksXG4gICAgICAnb3V0cHV0LXBhcmFtZXRlcic6IHouc3RyaW5nKCkubWluKDEpLFxuICAgIH0pO1xuXG4gICAgcmV0dXJuIHZhbGlkYXRlPHouaW5mZXI8dHlwZW9mIGdsb2JhbENvbmZpZ1NjaGVtYT4+KFxuICAgICAgZ2xvYmFsQ29uZmlnU2NoZW1hLFxuICAgICAgZ2xvYmFsQ29uZmlnXG4gICAgKTtcbiAgfTtcblxuICAvKipcbiAgICogQ2hlY2tzIGZvciByZXF1aXJlZCBmaWVsZHMgaW4gaW5wdXQuXG4gICAqL1xuICBjb25zdCB2YWxpZGF0ZVNpbmdsZUlucHV0ID0gKFxuICAgIGlucHV0OiBQbHVnaW5QYXJhbXMsXG4gICAgaW5wdXRQYXJhbWV0ZXJzOiBzdHJpbmdbXVxuICApID0+IHtcbiAgICBpbnB1dFBhcmFtZXRlcnMuZm9yRWFjaChtZXRyaWNUb1N1bSA9PiB7XG4gICAgICBpZiAoIWlucHV0W21ldHJpY1RvU3VtXSkge1xuICAgICAgICB0aHJvdyBuZXcgSW5wdXRWYWxpZGF0aW9uRXJyb3IoXG4gICAgICAgICAgYCR7bWV0cmljVG9TdW19IGlzIG1pc3NpbmcgZnJvbSB0aGUgaW5wdXQgYXJyYXkuYFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGlucHV0O1xuICB9O1xuXG4gIC8qKlxuICAgKiBDYWxjdWxhdGVzIHRoZSBzdW0gb2YgdGhlIGVuZXJneSBjb21wb25lbnRzLlxuICAgKi9cbiAgY29uc3QgY2FsY3VsYXRlU3VtID0gKGlucHV0OiBQbHVnaW5QYXJhbXMsIGlucHV0UGFyYW1ldGVyczogc3RyaW5nW10pID0+XG4gICAgaW5wdXRQYXJhbWV0ZXJzLnJlZHVjZShcbiAgICAgIChhY2N1bXVsYXRvciwgbWV0cmljVG9TdW0pID0+IGFjY3VtdWxhdG9yICsgaW5wdXRbbWV0cmljVG9TdW1dLFxuICAgICAgMFxuICAgICk7XG5cbiAgcmV0dXJuIHtcbiAgICBtZXRhZGF0YSxcbiAgICBleGVjdXRlLFxuICB9O1xufTtcbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYnVpbHRpbnMvc3VtL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBTdW1Db25maWcgPSB7XG4gICdpbnB1dC1wYXJhbWV0ZXJzJzogc3RyaW5nW107XG4gICdvdXRwdXQtcGFyYW1ldGVyJzogc3RyaW5nO1xufTtcbiJdfQ==
|
package/build/config/config.d.ts
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { ArgumentConfig, ParseOptions } from 'ts-command-line-args';
|
|
2
|
-
import {
|
|
2
|
+
import { IFDiffArgs, IEArgs } from '../types/process-args';
|
|
3
3
|
export declare const CONFIG: {
|
|
4
4
|
IE: {
|
|
5
|
-
ARGS: ArgumentConfig<
|
|
5
|
+
ARGS: ArgumentConfig<IEArgs>;
|
|
6
6
|
HELP: ParseOptions<any>;
|
|
7
7
|
};
|
|
8
|
+
IF_DIFF: {
|
|
9
|
+
ARGS: ArgumentConfig<IFDiffArgs>;
|
|
10
|
+
HELP: ParseOptions<any>;
|
|
11
|
+
SUCCESS_MESSAGE: string;
|
|
12
|
+
FAILURE_MESSAGE: string;
|
|
13
|
+
};
|
|
8
14
|
GITHUB_PATH: string;
|
|
9
15
|
NATIVE_PLUGIN: string;
|
|
10
16
|
AGGREGATION_ADDITIONAL_PARAMS: string[];
|
package/build/config/config.js
CHANGED
|
@@ -36,6 +36,12 @@ exports.CONFIG = {
|
|
|
36
36
|
alias: 'h',
|
|
37
37
|
description: '[prints out the above help instruction]',
|
|
38
38
|
},
|
|
39
|
+
debug: {
|
|
40
|
+
type: Boolean,
|
|
41
|
+
optional: true,
|
|
42
|
+
alias: 'd',
|
|
43
|
+
description: '[prints out debug logs to the console]',
|
|
44
|
+
},
|
|
39
45
|
},
|
|
40
46
|
HELP: {
|
|
41
47
|
helpArg: 'help',
|
|
@@ -47,8 +53,35 @@ exports.CONFIG = {
|
|
|
47
53
|
],
|
|
48
54
|
},
|
|
49
55
|
},
|
|
56
|
+
IF_DIFF: {
|
|
57
|
+
ARGS: {
|
|
58
|
+
source: {
|
|
59
|
+
type: String,
|
|
60
|
+
optional: true,
|
|
61
|
+
alias: 's',
|
|
62
|
+
description: '[path to the source file]',
|
|
63
|
+
},
|
|
64
|
+
target: {
|
|
65
|
+
type: String,
|
|
66
|
+
optional: false,
|
|
67
|
+
alias: 't',
|
|
68
|
+
description: '[path to the target file',
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
HELP: {
|
|
72
|
+
helpArg: 'help',
|
|
73
|
+
headerContentSections: [
|
|
74
|
+
{ header: 'Impact Framework', content: 'IF-Diff Helpful keywords:' },
|
|
75
|
+
],
|
|
76
|
+
footerContentSections: [
|
|
77
|
+
{ header: 'Green Software Foundation', content: DISCLAIMER_MESSAGE },
|
|
78
|
+
],
|
|
79
|
+
},
|
|
80
|
+
SUCCESS_MESSAGE: 'Files match!',
|
|
81
|
+
FAILURE_MESSAGE: 'Files do not match!',
|
|
82
|
+
},
|
|
50
83
|
GITHUB_PATH: 'https://github.com',
|
|
51
84
|
NATIVE_PLUGIN: 'if-plugins',
|
|
52
85
|
AGGREGATION_ADDITIONAL_PARAMS: ['timestamp', 'duration'],
|
|
53
86
|
};
|
|
54
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
87
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsdUNBQWtDO0FBSWxDLE1BQU0sRUFBQyxrQkFBa0IsRUFBQyxHQUFHLGlCQUFPLENBQUM7QUFFeEIsUUFBQSxNQUFNLEdBQUc7SUFDcEIsRUFBRSxFQUFFO1FBQ0YsSUFBSSxFQUFFO1lBQ0osUUFBUSxFQUFFO2dCQUNSLElBQUksRUFBRSxNQUFNO2dCQUNaLFFBQVEsRUFBRSxJQUFJO2dCQUNkLEtBQUssRUFBRSxHQUFHO2dCQUNWLFdBQVcsRUFBRSwwQkFBMEI7YUFDeEM7WUFDRCxNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLE1BQU07Z0JBQ1osUUFBUSxFQUFFLElBQUk7Z0JBQ2QsS0FBSyxFQUFFLEdBQUc7Z0JBQ1YsV0FBVyxFQUFFLDJCQUEyQjthQUN6QztZQUNELGlCQUFpQixFQUFFO2dCQUNqQixJQUFJLEVBQUUsTUFBTTtnQkFDWixRQUFRLEVBQUUsSUFBSTtnQkFDZCxLQUFLLEVBQUUsR0FBRztnQkFDVixXQUFXLEVBQUUsd0RBQXdEO2FBQ3RFO1lBQ0QsTUFBTSxFQUFFO2dCQUNOLElBQUksRUFBRSxPQUFPO2dCQUNiLFFBQVEsRUFBRSxJQUFJO2dCQUNkLEtBQUssRUFBRSxHQUFHO2dCQUNWLFdBQVcsRUFBRSw2QkFBNkI7YUFDM0M7WUFDRCxJQUFJLEVBQUU7Z0JBQ0osSUFBSSxFQUFFLE9BQU87Z0JBQ2IsUUFBUSxFQUFFLElBQUk7Z0JBQ2QsS0FBSyxFQUFFLEdBQUc7Z0JBQ1YsV0FBVyxFQUFFLHlDQUF5QzthQUN2RDtZQUNELEtBQUssRUFBRTtnQkFDTCxJQUFJLEVBQUUsT0FBTztnQkFDYixRQUFRLEVBQUUsSUFBSTtnQkFDZCxLQUFLLEVBQUUsR0FBRztnQkFDVixXQUFXLEVBQUUsd0NBQXdDO2FBQ3REO1NBQ3dCO1FBQzNCLElBQUksRUFBRTtZQUNKLE9BQU8sRUFBRSxNQUFNO1lBQ2YscUJBQXFCLEVBQUU7Z0JBQ3JCLEVBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBQzthQUMzRDtZQUNELHFCQUFxQixFQUFFO2dCQUNyQixFQUFDLE1BQU0sRUFBRSwyQkFBMkIsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUM7YUFDbkU7U0FDbUI7S0FDdkI7SUFDRCxPQUFPLEVBQUU7UUFDUCxJQUFJLEVBQUU7WUFDSixNQUFNLEVBQUU7Z0JBQ04sSUFBSSxFQUFFLE1BQU07Z0JBQ1osUUFBUSxFQUFFLElBQUk7Z0JBQ2QsS0FBSyxFQUFFLEdBQUc7Z0JBQ1YsV0FBVyxFQUFFLDJCQUEyQjthQUN6QztZQUNELE1BQU0sRUFBRTtnQkFDTixJQUFJLEVBQUUsTUFBTTtnQkFDWixRQUFRLEVBQUUsS0FBSztnQkFDZixLQUFLLEVBQUUsR0FBRztnQkFDVixXQUFXLEVBQUUsMEJBQTBCO2FBQ3hDO1NBQzRCO1FBQy9CLElBQUksRUFBRTtZQUNKLE9BQU8sRUFBRSxNQUFNO1lBQ2YscUJBQXFCLEVBQUU7Z0JBQ3JCLEVBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSwyQkFBMkIsRUFBQzthQUNuRTtZQUNELHFCQUFxQixFQUFFO2dCQUNyQixFQUFDLE1BQU0sRUFBRSwyQkFBMkIsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUM7YUFDbkU7U0FDbUI7UUFDdEIsZUFBZSxFQUFFLGNBQWM7UUFDL0IsZUFBZSxFQUFFLHFCQUFxQjtLQUN2QztJQUNELFdBQVcsRUFBRSxvQkFBb0I7SUFDakMsYUFBYSxFQUFFLFlBQVk7SUFDM0IsNkJBQTZCLEVBQUUsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDO0NBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FyZ3VtZW50Q29uZmlnLCBQYXJzZU9wdGlvbnN9IGZyb20gJ3RzLWNvbW1hbmQtbGluZS1hcmdzJztcblxuaW1wb3J0IHtTVFJJTkdTfSBmcm9tICcuL3N0cmluZ3MnO1xuXG5pbXBvcnQge0lGRGlmZkFyZ3MsIElFQXJnc30gZnJvbSAnLi4vdHlwZXMvcHJvY2Vzcy1hcmdzJztcblxuY29uc3Qge0RJU0NMQUlNRVJfTUVTU0FHRX0gPSBTVFJJTkdTO1xuXG5leHBvcnQgY29uc3QgQ09ORklHID0ge1xuICBJRToge1xuICAgIEFSR1M6IHtcbiAgICAgIG1hbmlmZXN0OiB7XG4gICAgICAgIHR5cGU6IFN0cmluZyxcbiAgICAgICAgb3B0aW9uYWw6IHRydWUsXG4gICAgICAgIGFsaWFzOiAnbScsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnW3BhdGggdG8gdGhlIGlucHV0IGZpbGVdJyxcbiAgICAgIH0sXG4gICAgICBvdXRwdXQ6IHtcbiAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgYWxpYXM6ICdvJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdbcGF0aCB0byB0aGUgb3V0cHV0IGZpbGVdJyxcbiAgICAgIH0sXG4gICAgICAnb3ZlcnJpZGUtcGFyYW1zJzoge1xuICAgICAgICB0eXBlOiBTdHJpbmcsXG4gICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICBhbGlhczogJ3AnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1twYXRoIHRvIGEgcGFyYW1ldGVyIGZpbGUgdGhhdCBvdmVycmlkZXMgb3VyIGRlZmF1bHRzXScsXG4gICAgICB9LFxuICAgICAgc3Rkb3V0OiB7XG4gICAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICBhbGlhczogJ3MnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1twcmludHMgb3V0IHRvIHRoZSBjb25zb2xlXScsXG4gICAgICB9LFxuICAgICAgaGVscDoge1xuICAgICAgICB0eXBlOiBCb29sZWFuLFxuICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgYWxpYXM6ICdoJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdbcHJpbnRzIG91dCB0aGUgYWJvdmUgaGVscCBpbnN0cnVjdGlvbl0nLFxuICAgICAgfSxcbiAgICAgIGRlYnVnOiB7XG4gICAgICAgIHR5cGU6IEJvb2xlYW4sXG4gICAgICAgIG9wdGlvbmFsOiB0cnVlLFxuICAgICAgICBhbGlhczogJ2QnLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ1twcmludHMgb3V0IGRlYnVnIGxvZ3MgdG8gdGhlIGNvbnNvbGVdJyxcbiAgICAgIH0sXG4gICAgfSBhcyBBcmd1bWVudENvbmZpZzxJRUFyZ3M+LFxuICAgIEhFTFA6IHtcbiAgICAgIGhlbHBBcmc6ICdoZWxwJyxcbiAgICAgIGhlYWRlckNvbnRlbnRTZWN0aW9uczogW1xuICAgICAgICB7aGVhZGVyOiAnSW1wYWN0IEZyYW1ld29yaycsIGNvbnRlbnQ6ICdIZWxwZnVsIGtleXdvcmRzOid9LFxuICAgICAgXSxcbiAgICAgIGZvb3RlckNvbnRlbnRTZWN0aW9uczogW1xuICAgICAgICB7aGVhZGVyOiAnR3JlZW4gU29mdHdhcmUgRm91bmRhdGlvbicsIGNvbnRlbnQ6IERJU0NMQUlNRVJfTUVTU0FHRX0sXG4gICAgICBdLFxuICAgIH0gYXMgUGFyc2VPcHRpb25zPGFueT4sXG4gIH0sXG4gIElGX0RJRkY6IHtcbiAgICBBUkdTOiB7XG4gICAgICBzb3VyY2U6IHtcbiAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICBvcHRpb25hbDogdHJ1ZSxcbiAgICAgICAgYWxpYXM6ICdzJyxcbiAgICAgICAgZGVzY3JpcHRpb246ICdbcGF0aCB0byB0aGUgc291cmNlIGZpbGVdJyxcbiAgICAgIH0sXG4gICAgICB0YXJnZXQ6IHtcbiAgICAgICAgdHlwZTogU3RyaW5nLFxuICAgICAgICBvcHRpb25hbDogZmFsc2UsXG4gICAgICAgIGFsaWFzOiAndCcsXG4gICAgICAgIGRlc2NyaXB0aW9uOiAnW3BhdGggdG8gdGhlIHRhcmdldCBmaWxlJyxcbiAgICAgIH0sXG4gICAgfSBhcyBBcmd1bWVudENvbmZpZzxJRkRpZmZBcmdzPixcbiAgICBIRUxQOiB7XG4gICAgICBoZWxwQXJnOiAnaGVscCcsXG4gICAgICBoZWFkZXJDb250ZW50U2VjdGlvbnM6IFtcbiAgICAgICAge2hlYWRlcjogJ0ltcGFjdCBGcmFtZXdvcmsnLCBjb250ZW50OiAnSUYtRGlmZiBIZWxwZnVsIGtleXdvcmRzOid9LFxuICAgICAgXSxcbiAgICAgIGZvb3RlckNvbnRlbnRTZWN0aW9uczogW1xuICAgICAgICB7aGVhZGVyOiAnR3JlZW4gU29mdHdhcmUgRm91bmRhdGlvbicsIGNvbnRlbnQ6IERJU0NMQUlNRVJfTUVTU0FHRX0sXG4gICAgICBdLFxuICAgIH0gYXMgUGFyc2VPcHRpb25zPGFueT4sXG4gICAgU1VDQ0VTU19NRVNTQUdFOiAnRmlsZXMgbWF0Y2ghJyxcbiAgICBGQUlMVVJFX01FU1NBR0U6ICdGaWxlcyBkbyBub3QgbWF0Y2ghJyxcbiAgfSxcbiAgR0lUSFVCX1BBVEg6ICdodHRwczovL2dpdGh1Yi5jb20nLFxuICBOQVRJVkVfUExVR0lOOiAnaWYtcGx1Z2lucycsXG4gIEFHR1JFR0FUSU9OX0FERElUSU9OQUxfUEFSQU1TOiBbJ3RpbWVzdGFtcCcsICdkdXJhdGlvbiddLFxufTtcbiJdfQ==
|
|
@@ -25,4 +25,26 @@ export declare const STRINGS: {
|
|
|
25
25
|
UNKNOWN_PARAM: (name: string) => string;
|
|
26
26
|
NOT_INITALIZED_PLUGIN: (name: string) => string;
|
|
27
27
|
NO_OUTPUT: string;
|
|
28
|
+
SOURCE_IS_NOT_YAML: string;
|
|
29
|
+
TARGET_IS_NOT_YAML: string;
|
|
30
|
+
INVALID_TARGET: string;
|
|
31
|
+
INVALID_SOURCE: string;
|
|
32
|
+
STARTING_IF: string;
|
|
33
|
+
EXITING_IF: string;
|
|
34
|
+
LOADING_MANIFEST: string;
|
|
35
|
+
VALIDATING_MANIFEST: string;
|
|
36
|
+
CAPTURING_RUNTIME_ENVIRONMENT_DATA: string;
|
|
37
|
+
SYNCING_PARAMETERS: string;
|
|
38
|
+
CHECKING_AGGREGATION_METHOD: (unitName: string) => string;
|
|
39
|
+
INITIALIZING_PLUGINS: string;
|
|
40
|
+
INITIALIZING_PLUGIN: (pluginName: string) => string;
|
|
41
|
+
LOADING_PLUGIN_FROM_PATH: (pluginName: string, path: string) => string;
|
|
42
|
+
COMPUTING_PIPELINE_FOR_NODE: (nodeName: string) => string;
|
|
43
|
+
MERGING_DEFAULTS_WITH_INPUT_DATA: string;
|
|
44
|
+
AGGREGATING_OUTPUTS: string;
|
|
45
|
+
AGGREGATING_NODE: (nodeName: string) => string;
|
|
46
|
+
PREPARING_OUTPUT_DATA: string;
|
|
47
|
+
EXPORTING_TO_YAML_FILE: (savepath: string) => string;
|
|
48
|
+
EXPORTING_TO_CSV_FILE: (savepath: string) => string;
|
|
49
|
+
EXPORTING_RAW_CSV_FILE: (savepath: string) => string;
|
|
28
50
|
};
|
package/build/config/strings.js
CHANGED
|
@@ -38,5 +38,27 @@ You have not selected an output method. To see your output data, you can choose
|
|
|
38
38
|
--stdout: this will print your output data to the console
|
|
39
39
|
--output <savepath>: this will save your output data to the given filepath (do not provide file extension)
|
|
40
40
|
Note that for the '--output' option you also need to define the output type in your manifest file. See https://if.greensoftware.foundation/major-concepts/manifest-file#initialize`,
|
|
41
|
+
SOURCE_IS_NOT_YAML: 'Given source file is not in yaml format.',
|
|
42
|
+
TARGET_IS_NOT_YAML: 'Given target is not in yaml format.',
|
|
43
|
+
INVALID_TARGET: 'Target is invalid.',
|
|
44
|
+
INVALID_SOURCE: 'Source is invalid.',
|
|
45
|
+
STARTING_IF: 'Starting IF',
|
|
46
|
+
EXITING_IF: 'Exiting IF',
|
|
47
|
+
LOADING_MANIFEST: 'Loading manifest',
|
|
48
|
+
VALIDATING_MANIFEST: 'Validating manifest',
|
|
49
|
+
CAPTURING_RUNTIME_ENVIRONMENT_DATA: 'Capturing runtime environment data',
|
|
50
|
+
SYNCING_PARAMETERS: 'Syncing parameters',
|
|
51
|
+
CHECKING_AGGREGATION_METHOD: (unitName) => `Checking aggregation method for ${unitName}`,
|
|
52
|
+
INITIALIZING_PLUGINS: 'Initializing plugins',
|
|
53
|
+
INITIALIZING_PLUGIN: (pluginName) => `Initializing ${pluginName}`,
|
|
54
|
+
LOADING_PLUGIN_FROM_PATH: (pluginName, path) => `Loading ${pluginName} from ${path}`,
|
|
55
|
+
COMPUTING_PIPELINE_FOR_NODE: (nodeName) => `Computing pipeline for \`${nodeName}\``,
|
|
56
|
+
MERGING_DEFAULTS_WITH_INPUT_DATA: 'Merging defaults with input data',
|
|
57
|
+
AGGREGATING_OUTPUTS: 'Aggregating outputs',
|
|
58
|
+
AGGREGATING_NODE: (nodeName) => `Aggregating node ${nodeName}`,
|
|
59
|
+
PREPARING_OUTPUT_DATA: 'Preparing output data',
|
|
60
|
+
EXPORTING_TO_YAML_FILE: (savepath) => `Exporting to yaml file: ${savepath}`,
|
|
61
|
+
EXPORTING_TO_CSV_FILE: (savepath) => `Exporting to csv file: ${savepath}`,
|
|
62
|
+
EXPORTING_RAW_CSV_FILE: (savepath) => `Exporting raw csv file: ${savepath}`,
|
|
41
63
|
};
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvc3RyaW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFYSxRQUFBLE9BQU8sR0FBRztJQUNyQixnQkFBZ0IsRUFBRSwwQ0FBMEM7SUFDNUQsbUJBQW1CLEVBQUUsc0JBQXNCO0lBQzNDLGNBQWMsRUFBRSwwQ0FBMEM7SUFDMUQsWUFBWSxFQUFFLHdDQUF3QztJQUN0RCxrQkFBa0IsRUFDaEIscUVBQXFFO0lBQ3ZFLGdCQUFnQixFQUNkLHFKQUFxSjtJQUN2SixrQkFBa0IsRUFBRTs7OzsyTkFJcU07SUFDek4saUJBQWlCLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRSxDQUNsQzt1QkFDbUIsSUFBSSxzTEFBc0w7SUFDL00sZUFBZSxFQUFFLHdEQUF3RDtJQUN6RSxjQUFjLEVBQUU7O3VJQUVxSDtJQUNySSxtQkFBbUIsRUFBRSxDQUFDLElBQVksRUFBRSxFQUFFLENBQ3BDLHFCQUFxQixJQUFJLDRCQUE0QjtJQUN2RCwwQkFBMEIsRUFBRSxvQ0FBb0M7SUFDaEUsc0JBQXNCLEVBQ3BCLDZEQUE2RDtJQUMvRCxxQkFBcUIsRUFBRSxzQkFBc0I7SUFDN0MsZ0JBQWdCLEVBQUUsQ0FBQyxXQUFtQixFQUFFLEVBQUUsQ0FDeEMsdUJBQXVCLFdBQVcsRUFBRTtJQUN0Qyx5QkFBeUIsRUFBRSxDQUFDLEtBQWMsRUFBRSxHQUFZLEVBQUUsRUFBRSxDQUMxRCx1QkFDRSxLQUFLLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUNyRCxFQUFFO0lBQ0osMkJBQTJCLEVBQUUsaUNBQWlDO0lBQzlELDBCQUEwQixFQUFFLENBQUMsTUFBYyxFQUFFLEVBQUUsQ0FDN0MseUNBQXlDLE1BQU0sMEJBQTBCO0lBQzNFLGNBQWMsRUFBRSxDQUFDLE1BQWMsRUFBRSxLQUFhLEVBQUUsRUFBRSxDQUNoRCxzQkFBc0IsTUFBTSwyQkFBMkIsS0FBSyxJQUFJO0lBQ2xFLGdCQUFnQixFQUFFLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsSUFBSSxHQUFHO0lBQzVELGtCQUFrQixFQUFFLENBQUMsS0FBd0IsRUFBRSxFQUFFLENBQy9DLGdEQUFnRCxLQUFLLENBQUMsSUFBSSxHQUFHO0lBQy9ELHNCQUFzQixFQUFFLENBQUMsVUFBa0IsRUFBRSxFQUFFLENBQzdDLDJCQUEyQixVQUFVLEdBQUc7SUFDMUMsYUFBYSxFQUFFLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FDOUIsc0JBQXNCLElBQUksbUNBQW1DO0lBQy9ELHFCQUFxQixFQUFFLENBQUMsSUFBWSxFQUFFLEVBQUUsQ0FDdEMsMEJBQTBCLElBQUksY0FBYyxJQUFJLHNDQUFzQztJQUN4RixTQUFTLEVBQUU7Ozs7bUxBSXNLO0lBQ2pMLGtCQUFrQixFQUFFLDBDQUEwQztJQUM5RCxrQkFBa0IsRUFBRSxxQ0FBcUM7SUFDekQsY0FBYyxFQUFFLG9CQUFvQjtJQUNwQyxjQUFjLEVBQUUsb0JBQW9CO0lBQ3BDLFdBQVcsRUFBRSxhQUFhO0lBQzFCLFVBQVUsRUFBRSxZQUFZO0lBQ3hCLGdCQUFnQixFQUFFLGtCQUFrQjtJQUNwQyxtQkFBbUIsRUFBRSxxQkFBcUI7SUFDMUMsa0NBQWtDLEVBQUUsb0NBQW9DO0lBQ3hFLGtCQUFrQixFQUFFLG9CQUFvQjtJQUN4QywyQkFBMkIsRUFBRSxDQUFDLFFBQWdCLEVBQUUsRUFBRSxDQUNoRCxtQ0FBbUMsUUFBUSxFQUFFO0lBQy9DLG9CQUFvQixFQUFFLHNCQUFzQjtJQUM1QyxtQkFBbUIsRUFBRSxDQUFDLFVBQWtCLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixVQUFVLEVBQUU7SUFDekUsd0JBQXdCLEVBQUUsQ0FBQyxVQUFrQixFQUFFLElBQVksRUFBRSxFQUFFLENBQzdELFdBQVcsVUFBVSxTQUFTLElBQUksRUFBRTtJQUN0QywyQkFBMkIsRUFBRSxDQUFDLFFBQWdCLEVBQUUsRUFBRSxDQUNoRCw0QkFBNEIsUUFBUSxJQUFJO0lBQzFDLGdDQUFnQyxFQUFFLGtDQUFrQztJQUNwRSxtQkFBbUIsRUFBRSxxQkFBcUI7SUFDMUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFnQixFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsUUFBUSxFQUFFO0lBQ3RFLHFCQUFxQixFQUFFLHVCQUF1QjtJQUM5QyxzQkFBc0IsRUFBRSxDQUFDLFFBQWdCLEVBQUUsRUFBRSxDQUMzQywyQkFBMkIsUUFBUSxFQUFFO0lBQ3ZDLHFCQUFxQixFQUFFLENBQUMsUUFBZ0IsRUFBRSxFQUFFLENBQzFDLDBCQUEwQixRQUFRLEVBQUU7SUFDdEMsc0JBQXNCLEVBQUUsQ0FBQyxRQUFnQixFQUFFLEVBQUUsQ0FDM0MsMkJBQTJCLFFBQVEsRUFBRTtDQUN4QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNYW5pZmVzdFBhcmFtZXRlcn0gZnJvbSAnLi4vdHlwZXMvbWFuaWZlc3QnO1xuXG5leHBvcnQgY29uc3QgU1RSSU5HUyA9IHtcbiAgRklMRV9JU19OT1RfWUFNTDogJ1Byb3ZpZGVkIG1hbmlmZXN0IGlzIG5vdCBpbiB5YW1sIGZvcm1hdC4nLFxuICBNQU5JRkVTVF9JU19NSVNTSU5HOiAnTWFuaWZlc3QgaXMgbWlzc2luZy4nLFxuICBNSVNTSU5HX01FVEhPRDogXCJJbml0YWxpemF0aW9uIHBhcmFtICdtZXRob2QnIGlzIG1pc3NpbmcuXCIsXG4gIE1JU1NJTkdfUEFUSDogXCJJbml0YWxpemF0aW9uIHBhcmFtICdwYXRoJyBpcyBtaXNzaW5nLlwiLFxuICBVTlNVUFBPUlRFRF9QTFVHSU46XG4gICAgXCJQbHVnaW4gaW50ZXJmYWNlIGRvZXNuJ3QgaW1wbGVtZW50ICdleGVjdXRlJyBvciAnbWV0YWRhdGEnIG1ldGhvZHMuXCIsXG4gIE9WRVJSSURFX1dBUk5JTkc6XG4gICAgJ1xcbioqV0FSTklORyoqOiBZb3UgYXJlIG92ZXJyaWRpbmcgdGhlIElGIGRlZmF1bHQgcGFyYW1ldGVycyBmaWxlLiBQbGVhc2UgYmUgZXh0cmVtZWx5IGNhcmVmdWwgb2YgdW5pbnRlbmRlZCBzaWRlLWVmZmVjdHMgaW4geW91ciBwbHVnaW4gcGlwZWxpbmUhXFxuJyxcbiAgRElTQ0xBSU1FUl9NRVNTQUdFOiBgXG5JbmN1YmF0aW9uIFByb2plY3RcblxuVGhpcyBwcm9qZWN0IGlzIGFuIGluY3ViYXRpb24gcHJvamVjdCBiZWluZyBydW4gaW5zaWRlIHRoZSBHcmVlbiBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBhcyBzdWNoLCB3ZSBET07igJlUIHJlY29tbWVuZCB1c2luZyBpdCBpbiBhbnkgY3JpdGljYWwgdXNlIGNhc2UuIFxuSW5jdWJhdGlvbiBwcm9qZWN0cyBhcmUgZXhwZXJpbWVudGFsLCBvZmZlciBubyBzdXBwb3J0IGd1YXJhbnRlZSwgaGF2ZSBtaW5pbWFsIGdvdmVybmFuY2UgYW5kIHByb2Nlc3MsIGFuZCBtYXkgYmUgcmV0aXJlZCBhdCBhbnkgbW9tZW50LiBUaGlzIHByb2plY3QgbWF5IG9uZSBkYXkgZ3JhZHVhdGUsIGluIHdoaWNoIGNhc2UgdGhpcyBkaXNjbGFpbWVyIHdpbGwgYmUgcmVtb3ZlZC5gLFxuICBOT1RfTkFUSVZFX1BMVUdJTjogKHBhdGg6IHN0cmluZykgPT5cbiAgICBgXG5Zb3UgYXJlIHVzaW5nIHBsdWdpbiAke3BhdGh9IHdoaWNoIGlzIG5vdCBwYXJ0IG9mIHRoZSBJbXBhY3QgRnJhbWV3b3JrIHN0YW5kYXJkIGxpYnJhcnkuIFlvdSBzaG91bGQgZG8geW91ciBvd24gcmVzZWFyY2ggdG8gZW5zdXJlIHRoZSBwbHVnaW5zIGFyZSB1cCB0byBkYXRlIGFuZCBhY2N1cmF0ZS4gVGhleSBtYXkgbm90IGJlIGFjdGl2ZWx5IG1haW50YWluZWQuYCxcbiAgU09NRVRISU5HX1dST05HOiAnU29tZXRoaW5nIHdyb25nIHdpdGggY2xpIGFyZ3VtZW50cy4gUGxlYXNlIGNoZWNrIGRvY3MuJyxcbiAgSVNTVUVfVEVNUExBVEU6IGBcbkltcGFjdCBGcmFtZXdvcmsgaXMgYW4gYWxwaGEgcmVsZWFzZSBmcm9tIHRoZSBHcmVlbiBTb2Z0d2FyZSBGb3VuZGF0aW9uIGFuZCBpcyByZWxlYXNlZCB0byBjYXB0dXJlIGVhcmx5IGZlZWRiYWNrLiBJZiB5b3UnZCBsaWtlIHRvIG9mZmVyIHNvbWUgZmVlZGJhY2ssIHBsZWFzZSB1c2UgdGhpcyBpc3N1ZSB0ZW1wbGF0ZTogXG5odHRwczovL2dpdGh1Yi5jb20vR3JlZW4tU29mdHdhcmUtRm91bmRhdGlvbi9pZi9pc3N1ZXMvbmV3P2Fzc2lnbmVlcz0mbGFiZWxzPWZlZWRiYWNrJnByb2plY3RzPSZ0ZW1wbGF0ZT1mZWVkYmFjay5tZCZ0aXRsZT1GZWVkYmFjaystK2AsXG4gIElOVkFMSURfTU9EVUxFX1BBVEg6IChwYXRoOiBzdHJpbmcpID0+XG4gICAgYFByb3ZpZGVkIG1vZHVsZTogJyR7cGF0aH0nIGlzIGludmFsaWQgb3Igbm90IGZvdW5kLmAsXG4gIElOVkFMSURfVElNRV9OT1JNQUxJWkFUSU9OOiAnU3RhcnQgdGltZSBvciBlbmQgdGltZSBpcyBtaXNzaW5nLicsXG4gIFVORVhQRUNURURfVElNRV9DT05GSUc6XG4gICAgJ1VuZXhwZWN0ZWQgbm9kZS1sZXZlbCBjb25maWcgcHJvdmlkZWQgZm9yIHRpbWUtc3luYyBwbHVnaW4uJyxcbiAgSU5WQUxJRF9USU1FX0lOVEVSVkFMOiAnSW50ZXJ2YWwgaXMgbWlzc2luZy4nLFxuICBBVk9JRElOR19QQURESU5HOiAoZGVzY3JpcHRpb246IHN0cmluZykgPT5cbiAgICBgQXZvaWRpbmcgcGFkZGluZyBhdCAke2Rlc2NyaXB0aW9ufWAsXG4gIEFWT0lESU5HX1BBRERJTkdfQllfRURHRVM6IChzdGFydDogYm9vbGVhbiwgZW5kOiBib29sZWFuKSA9PlxuICAgIGBBdm9pZGluZyBwYWRkaW5nIGF0ICR7XG4gICAgICBzdGFydCAmJiBlbmQgPyAnc3RhcnQgYW5kIGVuZCcgOiBzdGFydCA/ICdzdGFydCcgOiAnZW5kJ1xuICAgIH1gLFxuICBJTlZBTElEX09CU0VSVkFUSU9OX09WRVJMQVA6ICdPYnNlcnZhdGlvbiB0aW1lc3RhbXBzIG92ZXJsYXAuJyxcbiAgSU5WQUxJRF9BR0dSRUdBVElPTl9NRVRIT0Q6IChtZXRyaWM6IHN0cmluZykgPT5cbiAgICBgQWdncmVnYXRpb24gaXMgbm90IHBvc3NpYmxlIGZvciBnaXZlbiAke21ldHJpY30gc2luY2UgbWV0aG9kIGlzICdub25lJy5gLFxuICBNRVRSSUNfTUlTU0lORzogKG1ldHJpYzogc3RyaW5nLCBpbmRleDogbnVtYmVyKSA9PlxuICAgIGBBZ2dyZWdhdGlvbiBtZXRyaWMgJHttZXRyaWN9IGlzIG5vdCBmb3VuZCBpbiBpbnB1dHNbJHtpbmRleH1dLmAsXG4gIElOVkFMSURfR1JPVVBfQlk6ICh0eXBlOiBzdHJpbmcpID0+IGBJbnZhbGlkIGdyb3VwICR7dHlwZX0uYCxcbiAgUkVKRUNUSU5HX09WRVJSSURFOiAocGFyYW06IE1hbmlmZXN0UGFyYW1ldGVyKSA9PlxuICAgIGBSZWplY3Rpbmcgb3ZlcnJpZGluZyBvZiBjYW5vbmljYWwgcGFyYW1ldGVyOiAke3BhcmFtLm5hbWV9LmAsXG4gIElOVkFMSURfRVhIQVVTVF9QTFVHSU46IChwbHVnaW5OYW1lOiBzdHJpbmcpID0+XG4gICAgYEludmFsaWQgZXhoYXVzdCBwbHVnaW46ICR7cGx1Z2luTmFtZX0uYCxcbiAgVU5LTk9XTl9QQVJBTTogKG5hbWU6IHN0cmluZykgPT5cbiAgICBgVW5rbm93biBwYXJhbWV0ZXI6ICR7bmFtZX0uIFVzaW5nICdzdW0nIGFnZ3JlZ2F0aW9uIG1ldGhvZC5gLFxuICBOT1RfSU5JVEFMSVpFRF9QTFVHSU46IChuYW1lOiBzdHJpbmcpID0+XG4gICAgYE5vdCBpbml0YWxpemVkIHBsdWdpbjogJHtuYW1lfS4gQ2hlY2sgaWYgJHtuYW1lfSBpcyBpbiAnbWFuaWZlc3QuaW5pdGFsaXplLnBsdWdpbnMnLmAsXG4gIE5PX09VVFBVVDogYFxuWW91IGhhdmUgbm90IHNlbGVjdGVkIGFuIG91dHB1dCBtZXRob2QuIFRvIHNlZSB5b3VyIG91dHB1dCBkYXRhLCB5b3UgY2FuIGNob29zZSBmcm9tOlxuLS1zdGRvdXQ6IHRoaXMgd2lsbCBwcmludCB5b3VyIG91dHB1dCBkYXRhIHRvIHRoZSBjb25zb2xlXG4tLW91dHB1dCA8c2F2ZXBhdGg+OiB0aGlzIHdpbGwgc2F2ZSB5b3VyIG91dHB1dCBkYXRhIHRvIHRoZSBnaXZlbiBmaWxlcGF0aCAoZG8gbm90IHByb3ZpZGUgZmlsZSBleHRlbnNpb24pXG5Ob3RlIHRoYXQgZm9yIHRoZSAnLS1vdXRwdXQnIG9wdGlvbiB5b3UgYWxzbyBuZWVkIHRvIGRlZmluZSB0aGUgb3V0cHV0IHR5cGUgaW4geW91ciBtYW5pZmVzdCBmaWxlLiBTZWUgaHR0cHM6Ly9pZi5ncmVlbnNvZnR3YXJlLmZvdW5kYXRpb24vbWFqb3ItY29uY2VwdHMvbWFuaWZlc3QtZmlsZSNpbml0aWFsaXplYCxcbiAgU09VUkNFX0lTX05PVF9ZQU1MOiAnR2l2ZW4gc291cmNlIGZpbGUgaXMgbm90IGluIHlhbWwgZm9ybWF0LicsXG4gIFRBUkdFVF9JU19OT1RfWUFNTDogJ0dpdmVuIHRhcmdldCBpcyBub3QgaW4geWFtbCBmb3JtYXQuJyxcbiAgSU5WQUxJRF9UQVJHRVQ6ICdUYXJnZXQgaXMgaW52YWxpZC4nLFxuICBJTlZBTElEX1NPVVJDRTogJ1NvdXJjZSBpcyBpbnZhbGlkLicsXG4gIFNUQVJUSU5HX0lGOiAnU3RhcnRpbmcgSUYnLFxuICBFWElUSU5HX0lGOiAnRXhpdGluZyBJRicsXG4gIExPQURJTkdfTUFOSUZFU1Q6ICdMb2FkaW5nIG1hbmlmZXN0JyxcbiAgVkFMSURBVElOR19NQU5JRkVTVDogJ1ZhbGlkYXRpbmcgbWFuaWZlc3QnLFxuICBDQVBUVVJJTkdfUlVOVElNRV9FTlZJUk9OTUVOVF9EQVRBOiAnQ2FwdHVyaW5nIHJ1bnRpbWUgZW52aXJvbm1lbnQgZGF0YScsXG4gIFNZTkNJTkdfUEFSQU1FVEVSUzogJ1N5bmNpbmcgcGFyYW1ldGVycycsXG4gIENIRUNLSU5HX0FHR1JFR0FUSU9OX01FVEhPRDogKHVuaXROYW1lOiBzdHJpbmcpID0+XG4gICAgYENoZWNraW5nIGFnZ3JlZ2F0aW9uIG1ldGhvZCBmb3IgJHt1bml0TmFtZX1gLFxuICBJTklUSUFMSVpJTkdfUExVR0lOUzogJ0luaXRpYWxpemluZyBwbHVnaW5zJyxcbiAgSU5JVElBTElaSU5HX1BMVUdJTjogKHBsdWdpbk5hbWU6IHN0cmluZykgPT4gYEluaXRpYWxpemluZyAke3BsdWdpbk5hbWV9YCxcbiAgTE9BRElOR19QTFVHSU5fRlJPTV9QQVRIOiAocGx1Z2luTmFtZTogc3RyaW5nLCBwYXRoOiBzdHJpbmcpID0+XG4gICAgYExvYWRpbmcgJHtwbHVnaW5OYW1lfSBmcm9tICR7cGF0aH1gLFxuICBDT01QVVRJTkdfUElQRUxJTkVfRk9SX05PREU6IChub2RlTmFtZTogc3RyaW5nKSA9PlxuICAgIGBDb21wdXRpbmcgcGlwZWxpbmUgZm9yIFxcYCR7bm9kZU5hbWV9XFxgYCxcbiAgTUVSR0lOR19ERUZBVUxUU19XSVRIX0lOUFVUX0RBVEE6ICdNZXJnaW5nIGRlZmF1bHRzIHdpdGggaW5wdXQgZGF0YScsXG4gIEFHR1JFR0FUSU5HX09VVFBVVFM6ICdBZ2dyZWdhdGluZyBvdXRwdXRzJyxcbiAgQUdHUkVHQVRJTkdfTk9ERTogKG5vZGVOYW1lOiBzdHJpbmcpID0+IGBBZ2dyZWdhdGluZyBub2RlICR7bm9kZU5hbWV9YCxcbiAgUFJFUEFSSU5HX09VVFBVVF9EQVRBOiAnUHJlcGFyaW5nIG91dHB1dCBkYXRhJyxcbiAgRVhQT1JUSU5HX1RPX1lBTUxfRklMRTogKHNhdmVwYXRoOiBzdHJpbmcpID0+XG4gICAgYEV4cG9ydGluZyB0byB5YW1sIGZpbGU6ICR7c2F2ZXBhdGh9YCxcbiAgRVhQT1JUSU5HX1RPX0NTVl9GSUxFOiAoc2F2ZXBhdGg6IHN0cmluZykgPT5cbiAgICBgRXhwb3J0aW5nIHRvIGNzdiBmaWxlOiAke3NhdmVwYXRofWAsXG4gIEVYUE9SVElOR19SQVdfQ1NWX0ZJTEU6IChzYXZlcGF0aDogc3RyaW5nKSA9PlxuICAgIGBFeHBvcnRpbmcgcmF3IGNzdiBmaWxlOiAke3NhdmVwYXRofWAsXG59O1xuIl19
|
package/build/diff.d.ts
ADDED
package/build/diff.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
"use strict";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
/* eslint-disable no-process-exit */
|
|
5
|
+
const load_1 = require("./lib/load");
|
|
6
|
+
const compare_1 = require("./lib/compare");
|
|
7
|
+
const args_1 = require("./util/args");
|
|
8
|
+
const helpers_1 = require("./util/helpers");
|
|
9
|
+
const validations_1 = require("./util/validations");
|
|
10
|
+
const config_1 = require("./config");
|
|
11
|
+
const logger_1 = require("./util/logger");
|
|
12
|
+
const { IF_DIFF } = config_1.CONFIG;
|
|
13
|
+
const { SUCCESS_MESSAGE, FAILURE_MESSAGE } = IF_DIFF;
|
|
14
|
+
const IfDiff = async () => {
|
|
15
|
+
const { sourcePath, targetPath } = (0, args_1.parseIfDiffArgs)();
|
|
16
|
+
const { rawSourceManifest, rawTargetManifest } = await (0, load_1.loadIfDiffFiles)({
|
|
17
|
+
targetPath,
|
|
18
|
+
sourcePath,
|
|
19
|
+
});
|
|
20
|
+
const [sourceManifest, targetManifest] = [
|
|
21
|
+
rawSourceManifest,
|
|
22
|
+
rawTargetManifest,
|
|
23
|
+
].map(validations_1.validateManifest);
|
|
24
|
+
const result = (0, compare_1.compare)(sourceManifest, targetManifest);
|
|
25
|
+
if (Object.keys(result).length) {
|
|
26
|
+
(0, helpers_1.formatNotMatchingLog)({
|
|
27
|
+
message: FAILURE_MESSAGE,
|
|
28
|
+
...result,
|
|
29
|
+
});
|
|
30
|
+
process.exit(1);
|
|
31
|
+
}
|
|
32
|
+
console.log(SUCCESS_MESSAGE);
|
|
33
|
+
process.exit(0);
|
|
34
|
+
};
|
|
35
|
+
IfDiff().catch(error => {
|
|
36
|
+
if (error instanceof Error) {
|
|
37
|
+
logger_1.logger.error(error);
|
|
38
|
+
process.exit(2);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlmZi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9kaWZmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLG9DQUFvQztBQUNwQyxxQ0FBMkM7QUFDM0MsMkNBQXNDO0FBRXRDLHNDQUE0QztBQUM1Qyw0Q0FBb0Q7QUFDcEQsb0RBQW9EO0FBRXBELHFDQUFnQztBQUNoQywwQ0FBcUM7QUFFckMsTUFBTSxFQUFDLE9BQU8sRUFBQyxHQUFHLGVBQU0sQ0FBQztBQUN6QixNQUFNLEVBQUMsZUFBZSxFQUFFLGVBQWUsRUFBQyxHQUFHLE9BQU8sQ0FBQztBQUVuRCxNQUFNLE1BQU0sR0FBRyxLQUFLLElBQUksRUFBRTtJQUN4QixNQUFNLEVBQUMsVUFBVSxFQUFFLFVBQVUsRUFBQyxHQUFHLElBQUEsc0JBQWUsR0FBRSxDQUFDO0lBRW5ELE1BQU0sRUFBQyxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBQyxHQUFHLE1BQU0sSUFBQSxzQkFBZSxFQUFDO1FBQ25FLFVBQVU7UUFDVixVQUFVO0tBQ1gsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsR0FBRztRQUN2QyxpQkFBaUI7UUFDakIsaUJBQWlCO0tBQ2xCLENBQUMsR0FBRyxDQUFDLDhCQUFnQixDQUFDLENBQUM7SUFDeEIsTUFBTSxNQUFNLEdBQUcsSUFBQSxpQkFBTyxFQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQztJQUV2RCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxFQUFFO1FBQzlCLElBQUEsOEJBQW9CLEVBQUM7WUFDbkIsT0FBTyxFQUFFLGVBQWU7WUFDeEIsR0FBRyxNQUFNO1NBQ1YsQ0FBQyxDQUFDO1FBRUgsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNqQjtJQUVELE9BQU8sQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDN0IsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsQixDQUFDLENBQUM7QUFFRixNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7SUFDckIsSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO1FBQzFCLGVBQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNqQjtBQUNILENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuLyogZXNsaW50LWRpc2FibGUgbm8tcHJvY2Vzcy1leGl0ICovXG5pbXBvcnQge2xvYWRJZkRpZmZGaWxlc30gZnJvbSAnLi9saWIvbG9hZCc7XG5pbXBvcnQge2NvbXBhcmV9IGZyb20gJy4vbGliL2NvbXBhcmUnO1xuXG5pbXBvcnQge3BhcnNlSWZEaWZmQXJnc30gZnJvbSAnLi91dGlsL2FyZ3MnO1xuaW1wb3J0IHtmb3JtYXROb3RNYXRjaGluZ0xvZ30gZnJvbSAnLi91dGlsL2hlbHBlcnMnO1xuaW1wb3J0IHt2YWxpZGF0ZU1hbmlmZXN0fSBmcm9tICcuL3V0aWwvdmFsaWRhdGlvbnMnO1xuXG5pbXBvcnQge0NPTkZJR30gZnJvbSAnLi9jb25maWcnO1xuaW1wb3J0IHtsb2dnZXJ9IGZyb20gJy4vdXRpbC9sb2dnZXInO1xuXG5jb25zdCB7SUZfRElGRn0gPSBDT05GSUc7XG5jb25zdCB7U1VDQ0VTU19NRVNTQUdFLCBGQUlMVVJFX01FU1NBR0V9ID0gSUZfRElGRjtcblxuY29uc3QgSWZEaWZmID0gYXN5bmMgKCkgPT4ge1xuICBjb25zdCB7c291cmNlUGF0aCwgdGFyZ2V0UGF0aH0gPSBwYXJzZUlmRGlmZkFyZ3MoKTtcblxuICBjb25zdCB7cmF3U291cmNlTWFuaWZlc3QsIHJhd1RhcmdldE1hbmlmZXN0fSA9IGF3YWl0IGxvYWRJZkRpZmZGaWxlcyh7XG4gICAgdGFyZ2V0UGF0aCxcbiAgICBzb3VyY2VQYXRoLFxuICB9KTtcbiAgY29uc3QgW3NvdXJjZU1hbmlmZXN0LCB0YXJnZXRNYW5pZmVzdF0gPSBbXG4gICAgcmF3U291cmNlTWFuaWZlc3QsXG4gICAgcmF3VGFyZ2V0TWFuaWZlc3QsXG4gIF0ubWFwKHZhbGlkYXRlTWFuaWZlc3QpO1xuICBjb25zdCByZXN1bHQgPSBjb21wYXJlKHNvdXJjZU1hbmlmZXN0LCB0YXJnZXRNYW5pZmVzdCk7XG5cbiAgaWYgKE9iamVjdC5rZXlzKHJlc3VsdCkubGVuZ3RoKSB7XG4gICAgZm9ybWF0Tm90TWF0Y2hpbmdMb2coe1xuICAgICAgbWVzc2FnZTogRkFJTFVSRV9NRVNTQUdFLFxuICAgICAgLi4ucmVzdWx0LFxuICAgIH0pO1xuXG4gICAgcHJvY2Vzcy5leGl0KDEpO1xuICB9XG5cbiAgY29uc29sZS5sb2coU1VDQ0VTU19NRVNTQUdFKTtcbiAgcHJvY2Vzcy5leGl0KDApO1xufTtcblxuSWZEaWZmKCkuY2F0Y2goZXJyb3IgPT4ge1xuICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvcikge1xuICAgIGxvZ2dlci5lcnJvcihlcnJvcik7XG4gICAgcHJvY2Vzcy5leGl0KDIpO1xuICB9XG59KTtcbiJdfQ==
|
package/build/index.js
CHANGED
|
@@ -8,16 +8,19 @@ const exhaust_1 = require("./lib/exhaust");
|
|
|
8
8
|
const initialize_1 = require("./lib/initialize");
|
|
9
9
|
const load_1 = require("./lib/load");
|
|
10
10
|
const parameterize_1 = require("./lib/parameterize");
|
|
11
|
+
const debug_logger_1 = require("./util/debug-logger");
|
|
11
12
|
const args_1 = require("./util/args");
|
|
12
13
|
const helpers_1 = require("./util/helpers");
|
|
13
14
|
const logger_1 = require("./util/logger");
|
|
14
15
|
const validations_1 = require("./util/validations");
|
|
15
16
|
const config_1 = require("./config");
|
|
16
|
-
const { DISCLAIMER_MESSAGE } = config_1.STRINGS;
|
|
17
|
+
const { DISCLAIMER_MESSAGE, EXITING_IF, STARTING_IF } = config_1.STRINGS;
|
|
17
18
|
const impactEngine = async () => {
|
|
18
|
-
const options = (0, args_1.
|
|
19
|
+
const options = (0, args_1.parseIEProcessArgs)();
|
|
20
|
+
const { inputPath, paramPath, outputOptions, debug } = options;
|
|
21
|
+
debug_logger_1.debugLogger.overrideConsoleMethods(!!debug);
|
|
19
22
|
logger_1.logger.info(DISCLAIMER_MESSAGE);
|
|
20
|
-
|
|
23
|
+
console.info(STARTING_IF);
|
|
21
24
|
const { rawManifest, parameters } = await (0, load_1.load)(inputPath, paramPath);
|
|
22
25
|
const envManifest = await (0, environment_1.injectEnvironment)(rawManifest);
|
|
23
26
|
try {
|
|
@@ -39,6 +42,7 @@ const impactEngine = async () => {
|
|
|
39
42
|
}
|
|
40
43
|
}
|
|
41
44
|
}
|
|
45
|
+
console.info(EXITING_IF);
|
|
42
46
|
};
|
|
43
47
|
impactEngine().catch(helpers_1.andHandle);
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsK0NBQTBDO0FBQzFDLDJDQUFzQztBQUN0QyxtREFBb0Q7QUFDcEQsMkNBQXNDO0FBQ3RDLGlEQUE0QztBQUM1QyxxQ0FBZ0M7QUFDaEMscURBQWdEO0FBRWhELHNEQUFnRDtBQUNoRCxzQ0FBK0M7QUFDL0MsNENBQXlDO0FBQ3pDLDBDQUFxQztBQUNyQyxvREFBb0Q7QUFFcEQscUNBQWlDO0FBRWpDLE1BQU0sRUFBQyxrQkFBa0IsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLEdBQUcsZ0JBQU8sQ0FBQztBQUU5RCxNQUFNLFlBQVksR0FBRyxLQUFLLElBQUksRUFBRTtJQUM5QixNQUFNLE9BQU8sR0FBRyxJQUFBLHlCQUFrQixHQUFFLENBQUM7SUFDckMsTUFBTSxFQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsYUFBYSxFQUFFLEtBQUssRUFBQyxHQUFHLE9BQU8sQ0FBQztJQUU3RCwwQkFBVyxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUU1QyxlQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDaEMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUUxQixNQUFNLEVBQUMsV0FBVyxFQUFFLFVBQVUsRUFBQyxHQUFHLE1BQU0sSUFBQSxXQUFJLEVBQUMsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ25FLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBQSwrQkFBaUIsRUFBQyxXQUFXLENBQUMsQ0FBQztJQUV6RCxJQUFJO1FBQ0YsTUFBTSxFQUFDLElBQUksRUFBRSxHQUFHLE9BQU8sRUFBQyxHQUFHLElBQUEsOEJBQWdCLEVBQUMsV0FBVyxDQUFDLENBQUM7UUFDekQsMkJBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztRQUNqRCxNQUFNLGFBQWEsR0FBRyxNQUFNLElBQUEsdUJBQVUsRUFBQyxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25FLE1BQU0sWUFBWSxHQUFHLE1BQU0sSUFBQSxpQkFBTyxFQUFDLElBQUksRUFBRSxFQUFDLE9BQU8sRUFBRSxhQUFhLEVBQUMsQ0FBQyxDQUFDO1FBQ25FLE1BQU0sY0FBYyxHQUFHLElBQUEscUJBQVMsRUFBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sSUFBQSxpQkFBTyxFQUFDLGNBQWMsRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDLENBQUM7S0FDdkQ7SUFBQyxPQUFPLEtBQUssRUFBRTtRQUNkLElBQUksS0FBSyxZQUFZLEtBQUssRUFBRTtZQUMxQixXQUFXLENBQUMsU0FBVSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7WUFDdkMsV0FBVyxDQUFDLFNBQVUsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2hELGVBQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDcEIsTUFBTSxFQUFDLElBQUksRUFBRSxHQUFHLE9BQU8sRUFBQyxHQUFHLFdBQVcsQ0FBQztZQUV2QyxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssY0FBYyxFQUFFO2dCQUNqQyxJQUFBLGlCQUFPLEVBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQzthQUN2QztTQUNGO0tBQ0Y7SUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQzNCLENBQUMsQ0FBQztBQUVGLFlBQVksRUFBRSxDQUFDLEtBQUssQ0FBQyxtQkFBUyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIjIS91c3IvYmluL2VudiBub2RlXG5pbXBvcnQge2FnZ3JlZ2F0ZX0gZnJvbSAnLi9saWIvYWdncmVnYXRlJztcbmltcG9ydCB7Y29tcHV0ZX0gZnJvbSAnLi9saWIvY29tcHV0ZSc7XG5pbXBvcnQge2luamVjdEVudmlyb25tZW50fSBmcm9tICcuL2xpYi9lbnZpcm9ubWVudCc7XG5pbXBvcnQge2V4aGF1c3R9IGZyb20gJy4vbGliL2V4aGF1c3QnO1xuaW1wb3J0IHtpbml0aWFsaXplfSBmcm9tICcuL2xpYi9pbml0aWFsaXplJztcbmltcG9ydCB7bG9hZH0gZnJvbSAnLi9saWIvbG9hZCc7XG5pbXBvcnQge3BhcmFtZXRlcml6ZX0gZnJvbSAnLi9saWIvcGFyYW1ldGVyaXplJztcblxuaW1wb3J0IHtkZWJ1Z0xvZ2dlcn0gZnJvbSAnLi91dGlsL2RlYnVnLWxvZ2dlcic7XG5pbXBvcnQge3BhcnNlSUVQcm9jZXNzQXJnc30gZnJvbSAnLi91dGlsL2FyZ3MnO1xuaW1wb3J0IHthbmRIYW5kbGV9IGZyb20gJy4vdXRpbC9oZWxwZXJzJztcbmltcG9ydCB7bG9nZ2VyfSBmcm9tICcuL3V0aWwvbG9nZ2VyJztcbmltcG9ydCB7dmFsaWRhdGVNYW5pZmVzdH0gZnJvbSAnLi91dGlsL3ZhbGlkYXRpb25zJztcblxuaW1wb3J0IHtTVFJJTkdTfSBmcm9tICcuL2NvbmZpZyc7XG5cbmNvbnN0IHtESVNDTEFJTUVSX01FU1NBR0UsIEVYSVRJTkdfSUYsIFNUQVJUSU5HX0lGfSA9IFNUUklOR1M7XG5cbmNvbnN0IGltcGFjdEVuZ2luZSA9IGFzeW5jICgpID0+IHtcbiAgY29uc3Qgb3B0aW9ucyA9IHBhcnNlSUVQcm9jZXNzQXJncygpO1xuICBjb25zdCB7aW5wdXRQYXRoLCBwYXJhbVBhdGgsIG91dHB1dE9wdGlvbnMsIGRlYnVnfSA9IG9wdGlvbnM7XG5cbiAgZGVidWdMb2dnZXIub3ZlcnJpZGVDb25zb2xlTWV0aG9kcyghIWRlYnVnKTtcblxuICBsb2dnZXIuaW5mbyhESVNDTEFJTUVSX01FU1NBR0UpO1xuICBjb25zb2xlLmluZm8oU1RBUlRJTkdfSUYpO1xuXG4gIGNvbnN0IHtyYXdNYW5pZmVzdCwgcGFyYW1ldGVyc30gPSBhd2FpdCBsb2FkKGlucHV0UGF0aCwgcGFyYW1QYXRoKTtcbiAgY29uc3QgZW52TWFuaWZlc3QgPSBhd2FpdCBpbmplY3RFbnZpcm9ubWVudChyYXdNYW5pZmVzdCk7XG5cbiAgdHJ5IHtcbiAgICBjb25zdCB7dHJlZSwgLi4uY29udGV4dH0gPSB2YWxpZGF0ZU1hbmlmZXN0KGVudk1hbmlmZXN0KTtcbiAgICBwYXJhbWV0ZXJpemUuY29tYmluZShjb250ZXh0LnBhcmFtcywgcGFyYW1ldGVycyk7XG4gICAgY29uc3QgcGx1Z2luU3RvcmFnZSA9IGF3YWl0IGluaXRpYWxpemUoY29udGV4dC5pbml0aWFsaXplLnBsdWdpbnMpO1xuICAgIGNvbnN0IGNvbXB1dGVkVHJlZSA9IGF3YWl0IGNvbXB1dGUodHJlZSwge2NvbnRleHQsIHBsdWdpblN0b3JhZ2V9KTtcbiAgICBjb25zdCBhZ2dyZWdhdGVkVHJlZSA9IGFnZ3JlZ2F0ZShjb21wdXRlZFRyZWUsIGNvbnRleHQuYWdncmVnYXRpb24pO1xuICAgIGF3YWl0IGV4aGF1c3QoYWdncmVnYXRlZFRyZWUsIGNvbnRleHQsIG91dHB1dE9wdGlvbnMpO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICBlbnZNYW5pZmVzdC5leGVjdXRpb24hLnN0YXR1cyA9ICdmYWlsJztcbiAgICAgIGVudk1hbmlmZXN0LmV4ZWN1dGlvbiEuZXJyb3IgPSBlcnJvci50b1N0cmluZygpO1xuICAgICAgbG9nZ2VyLmVycm9yKGVycm9yKTtcbiAgICAgIGNvbnN0IHt0cmVlLCAuLi5jb250ZXh0fSA9IGVudk1hbmlmZXN0O1xuXG4gICAgICBpZiAoZXJyb3IubmFtZSAhPT0gJ0V4aGF1c3RFcnJvcicpIHtcbiAgICAgICAgZXhoYXVzdCh0cmVlLCBjb250ZXh0LCBvdXRwdXRPcHRpb25zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgY29uc29sZS5pbmZvKEVYSVRJTkdfSUYpO1xufTtcblxuaW1wYWN0RW5naW5lKCkuY2F0Y2goYW5kSGFuZGxlKTtcbiJdfQ==
|
package/build/lib/aggregate.js
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.aggregate = void 0;
|
|
4
4
|
const aggregation_helper_1 = require("../util/aggregation-helper");
|
|
5
|
+
const strings_1 = require("../config/strings");
|
|
6
|
+
const { AGGREGATING_NODE, AGGREGATING_OUTPUTS } = strings_1.STRINGS;
|
|
5
7
|
/**
|
|
6
8
|
* Gets `i`th element from all children outputs and collects them in single array.
|
|
7
9
|
*/
|
|
@@ -41,6 +43,7 @@ const aggregateNode = (node, aggregationParams) => {
|
|
|
41
43
|
const type = aggregationParams.type;
|
|
42
44
|
if (node.children) {
|
|
43
45
|
for (const child in node.children) {
|
|
46
|
+
console.debug(AGGREGATING_NODE(child));
|
|
44
47
|
aggregateNode(node.children[child], aggregationParams);
|
|
45
48
|
}
|
|
46
49
|
}
|
|
@@ -62,6 +65,7 @@ const aggregateNode = (node, aggregationParams) => {
|
|
|
62
65
|
* Otherwise creates copy of the tree, then applies aggregation to it.
|
|
63
66
|
*/
|
|
64
67
|
const aggregate = (tree, aggregationParams) => {
|
|
68
|
+
console.debug(AGGREGATING_OUTPUTS);
|
|
65
69
|
if (!aggregationParams || !aggregationParams.type) {
|
|
66
70
|
return tree;
|
|
67
71
|
}
|
|
@@ -70,4 +74,4 @@ const aggregate = (tree, aggregationParams) => {
|
|
|
70
74
|
return copyOfTree;
|
|
71
75
|
};
|
|
72
76
|
exports.aggregate = aggregate;
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdncmVnYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9hZ2dyZWdhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUVBQWtFO0FBS2xFLCtDQUEwQztBQUUxQyxNQUFNLEVBQUMsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUMsR0FBRyxpQkFBTyxDQUFDO0FBRXhEOztHQUVHO0FBQ0gsTUFBTSwwQkFBMEIsR0FBRyxDQUFDLFFBQWEsRUFBRSxDQUFTLEVBQUUsRUFBRTtJQUM5RCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXZDLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1FBQy9CLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFFN0IsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkIsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLG1CQUFtQixHQUFHLENBQUMsSUFBUyxFQUFFLE9BQWlCLEVBQUUsRUFBRTtJQUMzRCxNQUFNLE9BQU8sR0FBbUIsRUFBRSxDQUFDO0lBQ25DLE1BQU0sTUFBTSxHQUFRLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWpELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNqRCxNQUFNLGlCQUFpQixHQUFHLDBCQUEwQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkUsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFBLDJDQUFzQixFQUFDLGlCQUFpQixFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO0tBQ3hFO0lBRUQsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyxDQUFDO0FBRUY7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sYUFBYSxHQUFHLENBQUMsSUFBUyxFQUFFLGlCQUF3QyxFQUFFLEVBQUU7SUFDNUUsTUFBTSxPQUFPLEdBQUcsaUJBQWtCLENBQUMsT0FBTyxDQUFDO0lBQzNDLE1BQU0sSUFBSSxHQUFHLGlCQUFrQixDQUFDLElBQUksQ0FBQztJQUVyQyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7UUFDakIsS0FBSyxNQUFNLEtBQUssSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pDLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUV2QyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO1NBQ3hEO0tBQ0Y7SUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtRQUNsQixJQUFJLElBQUksS0FBSyxZQUFZLElBQUksSUFBSSxLQUFLLE1BQU0sRUFBRTtZQUM1QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUEsMkNBQXNCLEVBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztTQUNqRTtLQUNGO1NBQU07UUFDTCxJQUFJLElBQUksS0FBSyxVQUFVLElBQUksSUFBSSxLQUFLLE1BQU0sRUFBRTtZQUMxQyxNQUFNLE9BQU8sR0FBRyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDbkQsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7WUFDdkIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFBLDJDQUFzQixFQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztTQUM1RDtLQUNGO0FBQ0gsQ0FBQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0ksTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFTLEVBQUUsaUJBQW9DLEVBQUUsRUFBRTtJQUMzRSxPQUFPLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7SUFFbkMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFO1FBQ2pELE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFFRCxNQUFNLFVBQVUsR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsYUFBYSxDQUFDLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBRTdDLE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMsQ0FBQztBQVhXLFFBQUEsU0FBUyxhQVdwQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7YWdncmVnYXRlSW5wdXRzSW50b09uZX0gZnJvbSAnLi4vdXRpbC9hZ2dyZWdhdGlvbi1oZWxwZXInO1xuXG5pbXBvcnQge1BsdWdpblBhcmFtc30gZnJvbSAnLi4vdHlwZXMvaW50ZXJmYWNlJztcbmltcG9ydCB7QWdncmVnYXRpb25QYXJhbXMsIEFnZ3JlZ2F0aW9uUGFyYW1zU3VyZX0gZnJvbSAnLi4vdHlwZXMvbWFuaWZlc3QnO1xuXG5pbXBvcnQge1NUUklOR1N9IGZyb20gJy4uL2NvbmZpZy9zdHJpbmdzJztcblxuY29uc3Qge0FHR1JFR0FUSU5HX05PREUsIEFHR1JFR0FUSU5HX09VVFBVVFN9ID0gU1RSSU5HUztcblxuLyoqXG4gKiBHZXRzIGBpYHRoIGVsZW1lbnQgZnJvbSBhbGwgY2hpbGRyZW4gb3V0cHV0cyBhbmQgY29sbGVjdHMgdGhlbSBpbiBzaW5nbGUgYXJyYXkuXG4gKi9cbmNvbnN0IGdldEl0aEVsZW1lbnRzRnJvbUNoaWxkcmVuID0gKGNoaWxkcmVuOiBhbnksIGk6IG51bWJlcikgPT4ge1xuICBjb25zdCB2YWx1ZXMgPSBPYmplY3QudmFsdWVzKGNoaWxkcmVuKTtcblxuICByZXR1cm4gdmFsdWVzLm1hcCgodmFsdWU6IGFueSkgPT4ge1xuICAgIGNvbnN0IG91dHB1dCA9IHZhbHVlLm91dHB1dHM7XG5cbiAgICByZXR1cm4gb3V0cHV0W2ldO1xuICB9KTtcbn07XG5cbi8qKlxuICogMS4gR2V0cyB0aGUgaSd0aCBlbGVtZW50IGZyb20gZWFjaCBjaGlsZHJlbnMgb3V0cHV0cyAodHJlYXRpbmcgY2hpbGRyZW4gYXMgcm93cyBhbmQgd2UgYXJlIGFmdGVyIGEgY29sdW1uIG9mIGRhdGEpLlxuICogMi4gTm93IHdlIGp1c3QgYWdncmVnYXRlIG92ZXIgdGhlIGBpdGhTbGljZU9mT3V0cHV0c2AgdGhlIHNhbWUgYXMgd2UgZGlkIGZvciB0aGUgbm9ybWFsIG91dHB1dHMuXG4gKi9cbmNvbnN0IHRlbXBvcmFsQWdncmVnYXRpb24gPSAobm9kZTogYW55LCBtZXRyaWNzOiBzdHJpbmdbXSkgPT4ge1xuICBjb25zdCBvdXRwdXRzOiBQbHVnaW5QYXJhbXNbXSA9IFtdO1xuICBjb25zdCB2YWx1ZXM6IGFueSA9IE9iamVjdC52YWx1ZXMobm9kZS5jaGlsZHJlbik7XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZXNbMF0ub3V0cHV0cy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGl0aFNsaWNlT2ZPdXRwdXRzID0gZ2V0SXRoRWxlbWVudHNGcm9tQ2hpbGRyZW4obm9kZS5jaGlsZHJlbiwgaSk7XG4gICAgb3V0cHV0cy5wdXNoKGFnZ3JlZ2F0ZUlucHV0c0ludG9PbmUoaXRoU2xpY2VPZk91dHB1dHMsIG1ldHJpY3MsIHRydWUpKTtcbiAgfVxuXG4gIHJldHVybiBvdXRwdXRzO1xufTtcblxuLyoqXG4gKiBOYXZpZ2F0ZXMgdGhlIHRyZWUgZGVwdGggZmlyc3QsIGJvdHRvbSB1cCxcbiAqICBsZWZ0IHRvIHJpZ2h0IGFnZ3JlZ2F0aW5nIHRoZSBjb21wb25lbnQgbm9kZXMgYW5kIHRoZW4gdGhlIGdyb3VwaW5nIG5vZGVzIHdpbGwgYmUgYWdncmVnYXRlZFxuICogIG9ubHkgd2hlbiBhbGwgdGhlaXIgY2hpbGQgbm9kZXMgaGF2ZSBiZWVuIGFnZ3JlZ2F0ZWQuXG4gKiAxLiBBZ2dyZWdhdGVzIGFsbCB0aGUgY2hpbGRyZW4uXG4gKiAyLiBBdCB0aGlzIHBvaW50IHlvdSBjYW4gYmUgcG9zaXRpdmUgYWxsIHlvdXIgY2hpbGRyZW4gaGF2ZSBiZWVuIGFnZ3JlZ2F0ZWQgYW5kIHNvIHlvdSBjYW4gbm93IHdvcmsgb24gYWdncmVnYXRpbmcgeW91cnNlbGYuXG4gKiAzLiBJdCdzIGNvbXBvbmVudCBub2RlLCDQsGdncmVnYXRlcyBqdXN0IHRoZSBvdXRwdXRzIG9mIFRISVMgY29tcG9uZW50IG5vZGUgKGhvcml6b250YWwvY29tcG9uZW50IGFnZ3JlZ2F0aW9uKS5cbiAqIDQuIEVsc2UgaXQncyBncm91cGluZyBub2RlLCBmaXJzdCBkb2VzIHRlbXBvcmFsIGFnZ3JlZ2F0aW9uLiBUaGlzIGFzc3VtZXMgZXZlcnl0aGluZyBpcyBvbiB0aGUgc2FtZSB0aW1lLWdyaWQuXG4gKiAgICBUaGUgb3V0cHV0cyBvZiB0aGUgZ3JvdXBpbmcgbm9kZSBhcmUgdGhlIGFnZ3JlZ2F0ZWQgdGltZSBidWNrZXRlZCBvdXRwdXRzIG9mIGl0J3MgY2hpbGRyZW4uXG4gKiA1LiBOb3cgYSBncm91cGluZyBub2RlIGhhcyBpdCdzIG93biBvdXRwdXRzLCBpdCBjYW4gaG9yaXpvdG5hbGx5IGFnZ3JlZ2F0ZSB0aGVtLlxuICovXG5jb25zdCBhZ2dyZWdhdGVOb2RlID0gKG5vZGU6IGFueSwgYWdncmVnYXRpb25QYXJhbXM6IEFnZ3JlZ2F0aW9uUGFyYW1zU3VyZSkgPT4ge1xuICBjb25zdCBtZXRyaWNzID0gYWdncmVnYXRpb25QYXJhbXMhLm1ldHJpY3M7XG4gIGNvbnN0IHR5cGUgPSBhZ2dyZWdhdGlvblBhcmFtcyEudHlwZTtcblxuICBpZiAobm9kZS5jaGlsZHJlbikge1xuICAgIGZvciAoY29uc3QgY2hpbGQgaW4gbm9kZS5jaGlsZHJlbikge1xuICAgICAgY29uc29sZS5kZWJ1ZyhBR0dSRUdBVElOR19OT0RFKGNoaWxkKSk7XG5cbiAgICAgIGFnZ3JlZ2F0ZU5vZGUobm9kZS5jaGlsZHJlbltjaGlsZF0sIGFnZ3JlZ2F0aW9uUGFyYW1zKTtcbiAgICB9XG4gIH1cblxuICBpZiAoIW5vZGUuY2hpbGRyZW4pIHtcbiAgICBpZiAodHlwZSA9PT0gJ2hvcml6b250YWwnIHx8IHR5cGUgPT09ICdib3RoJykge1xuICAgICAgbm9kZS5hZ2dyZWdhdGVkID0gYWdncmVnYXRlSW5wdXRzSW50b09uZShub2RlLm91dHB1dHMsIG1ldHJpY3MpO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBpZiAodHlwZSA9PT0gJ3ZlcnRpY2FsJyB8fCB0eXBlID09PSAnYm90aCcpIHtcbiAgICAgIGNvbnN0IG91dHB1dHMgPSB0ZW1wb3JhbEFnZ3JlZ2F0aW9uKG5vZGUsIG1ldHJpY3MpO1xuICAgICAgbm9kZS5vdXRwdXRzID0gb3V0cHV0cztcbiAgICAgIG5vZGUuYWdncmVnYXRlZCA9IGFnZ3JlZ2F0ZUlucHV0c0ludG9PbmUob3V0cHV0cywgbWV0cmljcyk7XG4gICAgfVxuICB9XG59O1xuXG4vKipcbiAqIElmIGFnZ3JlZ2F0aW9uIGlzIGRpc2FibGVkLCB0aGVuIHJldHVybnMgZ2l2ZW4gYHRyZWVgLlxuICogT3RoZXJ3aXNlIGNyZWF0ZXMgY29weSBvZiB0aGUgdHJlZSwgdGhlbiBhcHBsaWVzIGFnZ3JlZ2F0aW9uIHRvIGl0LlxuICovXG5leHBvcnQgY29uc3QgYWdncmVnYXRlID0gKHRyZWU6IGFueSwgYWdncmVnYXRpb25QYXJhbXM6IEFnZ3JlZ2F0aW9uUGFyYW1zKSA9PiB7XG4gIGNvbnNvbGUuZGVidWcoQUdHUkVHQVRJTkdfT1VUUFVUUyk7XG5cbiAgaWYgKCFhZ2dyZWdhdGlvblBhcmFtcyB8fCAhYWdncmVnYXRpb25QYXJhbXMudHlwZSkge1xuICAgIHJldHVybiB0cmVlO1xuICB9XG5cbiAgY29uc3QgY29weU9mVHJlZSA9IHN0cnVjdHVyZWRDbG9uZSh0cmVlKTtcbiAgYWdncmVnYXRlTm9kZShjb3B5T2ZUcmVlLCBhZ2dyZWdhdGlvblBhcmFtcyk7XG5cbiAgcmV0dXJuIGNvcHlPZlRyZWU7XG59O1xuIl19
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Difference } from '../types/lib/compare';
|
|
2
|
+
/**
|
|
3
|
+
* 1. If objects are not of the same type or are primitive types, compares directly.
|
|
4
|
+
* 2. Gets the keys from both objects.
|
|
5
|
+
* 3. If both are arrays, checks their elements.
|
|
6
|
+
* 4. Checks for keys present in both objects.
|
|
7
|
+
* If key is `execution`, omit unnecessary params.
|
|
8
|
+
* 5. If all keys are checked and no differences are found, return empty object.
|
|
9
|
+
*/
|
|
10
|
+
export declare const compare: (source: any, target: any, path?: string) => Difference;
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compare = void 0;
|
|
4
|
+
const helpers_1 = require("../util/helpers");
|
|
5
|
+
/**
|
|
6
|
+
* 1. If objects are not of the same type or are primitive types, compares directly.
|
|
7
|
+
* 2. Gets the keys from both objects.
|
|
8
|
+
* 3. If both are arrays, checks their elements.
|
|
9
|
+
* 4. Checks for keys present in both objects.
|
|
10
|
+
* If key is `execution`, omit unnecessary params.
|
|
11
|
+
* 5. If all keys are checked and no differences are found, return empty object.
|
|
12
|
+
*/
|
|
13
|
+
const compare = (source, target, path = '') => {
|
|
14
|
+
if ((0, helpers_1.oneIsPrimitive)(source, target)) {
|
|
15
|
+
return (0, helpers_1.checkIfEqual)(source, target)
|
|
16
|
+
? {}
|
|
17
|
+
: {
|
|
18
|
+
path,
|
|
19
|
+
source,
|
|
20
|
+
target,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
const keys1 = Object.keys(source);
|
|
24
|
+
const keys2 = Object.keys(target);
|
|
25
|
+
const allKeys = new Set([...keys1, ...keys2]);
|
|
26
|
+
if (path === '') {
|
|
27
|
+
allKeys.delete('name');
|
|
28
|
+
allKeys.delete('description');
|
|
29
|
+
allKeys.delete('tags');
|
|
30
|
+
}
|
|
31
|
+
if (path === 'initialize') {
|
|
32
|
+
allKeys.delete('outputs');
|
|
33
|
+
}
|
|
34
|
+
if (path === 'execution') {
|
|
35
|
+
const whitelist = ['status', 'error'];
|
|
36
|
+
allKeys.forEach(value => {
|
|
37
|
+
if (!whitelist.includes(value)) {
|
|
38
|
+
allKeys.delete(value);
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
if (Array.isArray(source) && Array.isArray(target)) {
|
|
43
|
+
source.forEach((_record, i) => {
|
|
44
|
+
(0, exports.compare)(source[i], target[i], path ? `${path}[${i}]` : `${i}`);
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
for (const key of allKeys) {
|
|
48
|
+
const result = (0, exports.compare)(source[key], target[key], path ? `${path}.${key}` : key);
|
|
49
|
+
if (Object.keys(result).length) {
|
|
50
|
+
return result;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return {};
|
|
54
|
+
};
|
|
55
|
+
exports.compare = compare;
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY29tcGFyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBNkQ7QUFJN0Q7Ozs7Ozs7R0FPRztBQUNJLE1BQU0sT0FBTyxHQUFHLENBQUMsTUFBVyxFQUFFLE1BQVcsRUFBRSxJQUFJLEdBQUcsRUFBRSxFQUFjLEVBQUU7SUFDekUsSUFBSSxJQUFBLHdCQUFjLEVBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxFQUFFO1FBQ2xDLE9BQU8sSUFBQSxzQkFBWSxFQUFDLE1BQU0sRUFBRSxNQUFNLENBQUM7WUFDakMsQ0FBQyxDQUFDLEVBQUU7WUFDSixDQUFDLENBQUM7Z0JBQ0UsSUFBSTtnQkFDSixNQUFNO2dCQUNOLE1BQU07YUFDUCxDQUFDO0tBQ1A7SUFFRCxNQUFNLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xDLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFbEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsQ0FBQyxHQUFHLEtBQUssRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFFOUMsSUFBSSxJQUFJLEtBQUssRUFBRSxFQUFFO1FBQ2YsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN2QixPQUFPLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzlCLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDeEI7SUFFRCxJQUFJLElBQUksS0FBSyxZQUFZLEVBQUU7UUFDekIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztLQUMzQjtJQUVELElBQUksSUFBSSxLQUFLLFdBQVcsRUFBRTtRQUN4QixNQUFNLFNBQVMsR0FBRyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUN0QyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUM5QixPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQ3ZCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7S0FDSjtJQUVELElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ2xELE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDNUIsSUFBQSxlQUFPLEVBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDakUsQ0FBQyxDQUFDLENBQUM7S0FDSjtJQUVELEtBQUssTUFBTSxHQUFHLElBQUksT0FBTyxFQUFFO1FBQ3pCLE1BQU0sTUFBTSxHQUFHLElBQUEsZUFBTyxFQUNwQixNQUFNLENBQUMsR0FBRyxDQUFDLEVBQ1gsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUNYLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FDOUIsQ0FBQztRQUVGLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEVBQUU7WUFDOUIsT0FBTyxNQUFNLENBQUM7U0FDZjtLQUNGO0lBRUQsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDLENBQUM7QUF0RFcsUUFBQSxPQUFPLFdBc0RsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Y2hlY2tJZkVxdWFsLCBvbmVJc1ByaW1pdGl2ZX0gZnJvbSAnLi4vdXRpbC9oZWxwZXJzJztcblxuaW1wb3J0IHtEaWZmZXJlbmNlfSBmcm9tICcuLi90eXBlcy9saWIvY29tcGFyZSc7XG5cbi8qKlxuICogMS4gSWYgb2JqZWN0cyBhcmUgbm90IG9mIHRoZSBzYW1lIHR5cGUgb3IgYXJlIHByaW1pdGl2ZSB0eXBlcywgY29tcGFyZXMgZGlyZWN0bHkuXG4gKiAyLiBHZXRzIHRoZSBrZXlzIGZyb20gYm90aCBvYmplY3RzLlxuICogMy4gSWYgYm90aCBhcmUgYXJyYXlzLCBjaGVja3MgdGhlaXIgZWxlbWVudHMuXG4gKiA0LiBDaGVja3MgZm9yIGtleXMgcHJlc2VudCBpbiBib3RoIG9iamVjdHMuXG4gKiAgICBJZiBrZXkgaXMgYGV4ZWN1dGlvbmAsIG9taXQgdW5uZWNlc3NhcnkgcGFyYW1zLlxuICogNS4gSWYgYWxsIGtleXMgYXJlIGNoZWNrZWQgYW5kIG5vIGRpZmZlcmVuY2VzIGFyZSBmb3VuZCwgcmV0dXJuIGVtcHR5IG9iamVjdC5cbiAqL1xuZXhwb3J0IGNvbnN0IGNvbXBhcmUgPSAoc291cmNlOiBhbnksIHRhcmdldDogYW55LCBwYXRoID0gJycpOiBEaWZmZXJlbmNlID0+IHtcbiAgaWYgKG9uZUlzUHJpbWl0aXZlKHNvdXJjZSwgdGFyZ2V0KSkge1xuICAgIHJldHVybiBjaGVja0lmRXF1YWwoc291cmNlLCB0YXJnZXQpXG4gICAgICA/IHt9XG4gICAgICA6IHtcbiAgICAgICAgICBwYXRoLFxuICAgICAgICAgIHNvdXJjZSxcbiAgICAgICAgICB0YXJnZXQsXG4gICAgICAgIH07XG4gIH1cblxuICBjb25zdCBrZXlzMSA9IE9iamVjdC5rZXlzKHNvdXJjZSk7XG4gIGNvbnN0IGtleXMyID0gT2JqZWN0LmtleXModGFyZ2V0KTtcblxuICBjb25zdCBhbGxLZXlzID0gbmV3IFNldChbLi4ua2V5czEsIC4uLmtleXMyXSk7XG5cbiAgaWYgKHBhdGggPT09ICcnKSB7XG4gICAgYWxsS2V5cy5kZWxldGUoJ25hbWUnKTtcbiAgICBhbGxLZXlzLmRlbGV0ZSgnZGVzY3JpcHRpb24nKTtcbiAgICBhbGxLZXlzLmRlbGV0ZSgndGFncycpO1xuICB9XG5cbiAgaWYgKHBhdGggPT09ICdpbml0aWFsaXplJykge1xuICAgIGFsbEtleXMuZGVsZXRlKCdvdXRwdXRzJyk7XG4gIH1cblxuICBpZiAocGF0aCA9PT0gJ2V4ZWN1dGlvbicpIHtcbiAgICBjb25zdCB3aGl0ZWxpc3QgPSBbJ3N0YXR1cycsICdlcnJvciddO1xuICAgIGFsbEtleXMuZm9yRWFjaCh2YWx1ZSA9PiB7XG4gICAgICBpZiAoIXdoaXRlbGlzdC5pbmNsdWRlcyh2YWx1ZSkpIHtcbiAgICAgICAgYWxsS2V5cy5kZWxldGUodmFsdWUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgaWYgKEFycmF5LmlzQXJyYXkoc291cmNlKSAmJiBBcnJheS5pc0FycmF5KHRhcmdldCkpIHtcbiAgICBzb3VyY2UuZm9yRWFjaCgoX3JlY29yZCwgaSkgPT4ge1xuICAgICAgY29tcGFyZShzb3VyY2VbaV0sIHRhcmdldFtpXSwgcGF0aCA/IGAke3BhdGh9WyR7aX1dYCA6IGAke2l9YCk7XG4gICAgfSk7XG4gIH1cblxuICBmb3IgKGNvbnN0IGtleSBvZiBhbGxLZXlzKSB7XG4gICAgY29uc3QgcmVzdWx0ID0gY29tcGFyZShcbiAgICAgIHNvdXJjZVtrZXldLFxuICAgICAgdGFyZ2V0W2tleV0sXG4gICAgICBwYXRoID8gYCR7cGF0aH0uJHtrZXl9YCA6IGtleVxuICAgICk7XG5cbiAgICBpZiAoT2JqZWN0LmtleXMocmVzdWx0KS5sZW5ndGgpIHtcbiAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHt9O1xufTtcbiJdfQ==
|
package/build/lib/compute.js
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.compute = void 0;
|
|
4
|
+
const debug_logger_1 = require("../util/debug-logger");
|
|
4
5
|
const helpers_1 = require("../util/helpers");
|
|
5
6
|
const interface_1 = require("../types/interface");
|
|
7
|
+
const strings_1 = require("../config/strings");
|
|
8
|
+
const { MERGING_DEFAULTS_WITH_INPUT_DATA, COMPUTING_PIPELINE_FOR_NODE } = strings_1.STRINGS;
|
|
6
9
|
/**
|
|
7
10
|
* Traverses all child nodes based on children grouping.
|
|
8
11
|
*/
|
|
@@ -21,6 +24,7 @@ const mergeDefaults = (inputs, defaults) => {
|
|
|
21
24
|
: inputs;
|
|
22
25
|
return response;
|
|
23
26
|
}
|
|
27
|
+
console.debug(MERGING_DEFAULTS_WITH_INPUT_DATA);
|
|
24
28
|
return defaults ? [defaults] : [];
|
|
25
29
|
};
|
|
26
30
|
/**
|
|
@@ -53,8 +57,11 @@ const computeNode = async (node, params) => {
|
|
|
53
57
|
const pluginName = pipelineCopy.shift();
|
|
54
58
|
const plugin = params.pluginStorage.get(pluginName);
|
|
55
59
|
const nodeConfig = config && config[pluginName];
|
|
60
|
+
console.debug(COMPUTING_PIPELINE_FOR_NODE(pluginName));
|
|
61
|
+
debug_logger_1.debugLogger.setExecutingPluginName(pluginName);
|
|
56
62
|
if ((0, interface_1.isExecute)(plugin)) {
|
|
57
63
|
inputStorage = await plugin.execute(inputStorage, nodeConfig);
|
|
64
|
+
debug_logger_1.debugLogger.setExecutingPluginName();
|
|
58
65
|
node.outputs = inputStorage;
|
|
59
66
|
}
|
|
60
67
|
if ((0, interface_1.isGroupBy)(plugin)) {
|
|
@@ -67,6 +74,7 @@ const computeNode = async (node, params) => {
|
|
|
67
74
|
defaults,
|
|
68
75
|
config,
|
|
69
76
|
});
|
|
77
|
+
debug_logger_1.debugLogger.setExecutingPluginName();
|
|
70
78
|
break;
|
|
71
79
|
}
|
|
72
80
|
}
|
|
@@ -80,4 +88,4 @@ const compute = async (tree, params) => {
|
|
|
80
88
|
return copyOfTree;
|
|
81
89
|
};
|
|
82
90
|
exports.compute = compute;
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
91
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvY29tcHV0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx1REFBaUQ7QUFDakQsNkNBQTZDO0FBRzdDLGtEQUFzRTtBQUd0RSwrQ0FBMEM7QUFFMUMsTUFBTSxFQUFDLGdDQUFnQyxFQUFFLDJCQUEyQixFQUFDLEdBQUcsaUJBQU8sQ0FBQztBQUVoRjs7R0FFRztBQUNILE1BQU0sUUFBUSxHQUFHLEtBQUssRUFBRSxRQUFhLEVBQUUsTUFBYyxFQUFFLEVBQUU7SUFDdkQsS0FBSyxNQUFNLEtBQUssSUFBSSxRQUFRLEVBQUU7UUFDNUIsTUFBTSxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0tBQzVDO0FBQ0gsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLGFBQWEsR0FBRyxDQUNwQixNQUFzQixFQUN0QixRQUFrQyxFQUNsQyxFQUFFO0lBQ0YsSUFBSSxNQUFNLEVBQUU7UUFDVixNQUFNLFFBQVEsR0FBRyxRQUFRO1lBQ3ZCLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBQSxzQkFBWSxFQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztZQUNwRCxDQUFDLENBQUMsTUFBTSxDQUFDO1FBRVgsT0FBTyxRQUFRLENBQUM7S0FDakI7SUFFRCxPQUFPLENBQUMsS0FBSyxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFFaEQsT0FBTyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUNwQyxDQUFDLENBQUM7QUFFRjs7Ozs7Ozs7OztHQVVHO0FBQ0gsTUFBTSxXQUFXLEdBQUcsS0FBSyxFQUFFLElBQVUsRUFBRSxNQUFjLEVBQWdCLEVBQUU7SUFDckUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQWEsQ0FBQztJQUNoRSxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDNUMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDO0lBRWxELElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtRQUNqQixPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQzdCLEdBQUcsTUFBTTtZQUNULFFBQVE7WUFDUixRQUFRO1lBQ1IsTUFBTTtTQUNQLENBQUMsQ0FBQztLQUNKO0lBRUQsSUFBSSxZQUFZLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQW1CLENBQUM7SUFDbEUsWUFBWSxHQUFHLGFBQWEsQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDckQsTUFBTSxZQUFZLEdBQUcsZUFBZSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRS9DLE9BQU8sWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7UUFDaEMsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBWSxDQUFDO1FBQ2xELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFaEQsT0FBTyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQ3ZELDBCQUFXLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFL0MsSUFBSSxJQUFBLHFCQUFTLEVBQUMsTUFBTSxDQUFDLEVBQUU7WUFDckIsWUFBWSxHQUFHLE1BQU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDOUQsMEJBQVcsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBRXJDLElBQUksQ0FBQyxPQUFPLEdBQUcsWUFBWSxDQUFDO1NBQzdCO1FBRUQsSUFBSSxJQUFBLHFCQUFTLEVBQUMsTUFBTSxDQUFDLEVBQUU7WUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxNQUFNLE1BQU0sQ0FBQyxPQUFPLENBQ2xDLFlBQVksRUFDWixVQUEyQixDQUM1QixDQUFDO1lBQ0YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO1lBQ25CLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztZQUVwQixNQUFNLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUM1QixHQUFHLE1BQU07Z0JBQ1QsUUFBUSxFQUFFLFlBQVk7Z0JBQ3RCLFFBQVE7Z0JBQ1IsTUFBTTthQUNQLENBQUMsQ0FBQztZQUVILDBCQUFXLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztZQUVyQyxNQUFNO1NBQ1A7S0FDRjtBQUNILENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0ksTUFBTSxPQUFPLEdBQUcsS0FBSyxFQUFFLElBQVMsRUFBRSxNQUFxQixFQUFFLEVBQUU7SUFDaEUsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXpDLE1BQU0sV0FBVyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUV0QyxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDLENBQUM7QUFOVyxRQUFBLE9BQU8sV0FNbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2RlYnVnTG9nZ2VyfSBmcm9tICcuLi91dGlsL2RlYnVnLWxvZ2dlcic7XG5pbXBvcnQge21lcmdlT2JqZWN0c30gZnJvbSAnLi4vdXRpbC9oZWxwZXJzJztcblxuaW1wb3J0IHtDb21wdXRlUGFyYW1zLCBOb2RlLCBQYXJhbXN9IGZyb20gJy4uL3R5cGVzL2NvbXB1dGUnO1xuaW1wb3J0IHtQbHVnaW5QYXJhbXMsIGlzRXhlY3V0ZSwgaXNHcm91cEJ5fSBmcm9tICcuLi90eXBlcy9pbnRlcmZhY2UnO1xuaW1wb3J0IHtHcm91cEJ5Q29uZmlnfSBmcm9tICcuLi90eXBlcy9ncm91cC1ieSc7XG5cbmltcG9ydCB7U1RSSU5HU30gZnJvbSAnLi4vY29uZmlnL3N0cmluZ3MnO1xuXG5jb25zdCB7TUVSR0lOR19ERUZBVUxUU19XSVRIX0lOUFVUX0RBVEEsIENPTVBVVElOR19QSVBFTElORV9GT1JfTk9ERX0gPSBTVFJJTkdTO1xuXG4vKipcbiAqIFRyYXZlcnNlcyBhbGwgY2hpbGQgbm9kZXMgYmFzZWQgb24gY2hpbGRyZW4gZ3JvdXBpbmcuXG4gKi9cbmNvbnN0IHRyYXZlcnNlID0gYXN5bmMgKGNoaWxkcmVuOiBhbnksIHBhcmFtczogUGFyYW1zKSA9PiB7XG4gIGZvciAoY29uc3QgY2hpbGQgaW4gY2hpbGRyZW4pIHtcbiAgICBhd2FpdCBjb21wdXRlTm9kZShjaGlsZHJlbltjaGlsZF0sIHBhcmFtcyk7XG4gIH1cbn07XG5cbi8qKlxuICogQXBwZW5kcyBgZGVmYXVsdGAgdmFsdWVzIHRvIGBpbnB1dHNgLlxuICovXG5jb25zdCBtZXJnZURlZmF1bHRzID0gKFxuICBpbnB1dHM6IFBsdWdpblBhcmFtc1tdLFxuICBkZWZhdWx0czogUGx1Z2luUGFyYW1zIHwgdW5kZWZpbmVkXG4pID0+IHtcbiAgaWYgKGlucHV0cykge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gZGVmYXVsdHNcbiAgICAgID8gaW5wdXRzLm1hcChpbnB1dCA9PiBtZXJnZU9iamVjdHMoZGVmYXVsdHMsIGlucHV0KSlcbiAgICAgIDogaW5wdXRzO1xuXG4gICAgcmV0dXJuIHJlc3BvbnNlO1xuICB9XG5cbiAgY29uc29sZS5kZWJ1ZyhNRVJHSU5HX0RFRkFVTFRTX1dJVEhfSU5QVVRfREFUQSk7XG5cbiAgcmV0dXJuIGRlZmF1bHRzID8gW2RlZmF1bHRzXSA6IFtdO1xufTtcblxuLyoqXG4gKiAxLiBJZiB0aGUgbm9kZSBoYXMgaXQncyBvd24gcGlwZWxpbmUsIGRlZmF1bHRzIG9yIGNvbmZpZyB0aGVuIHVzZSB0aGF0LFxuICogICAgb3RoZXJ3aXNlIHVzZSB3aGF0ZXZlciBoYXMgYmVlbiBwYXNzZWQgZG93biBmcm9tIGZ1cnRoZXIgdXAgdGhlIHRyZWUuXG4gKiAyLiBJZiBpdCdzIGEgZ3JvdXBpbmcgbm9kZSwgdGhlbiBmaXJzdCBvZiBhbGwgY29tcHV0ZXMgYWxsIGl0J3MgY2hpbGRyZW4uXG4gKiAgICBUaGlzIGlzIGRvaW5nIGEgZGVwdGggZmlyc3QgdHJhdmVyc2FsLlxuICogMy4gT3RoZXJ3aXNlIG1lcmdlcyB0aGUgZGVmYXVsdHMgaW50byB0aGUgaW5wdXRzLlxuICogNC4gR29lcyB0aHJvdWdoIHRoZSBwaXBlbGluZSBwbHVnaW5zLCBieSBjaGVja2luZyBpZiBpdCdzIGBleGVjdXRlYCBwbHVnaW4uIElmIHNvIHNldHMgb3V0cHV0cy5cbiAqICAgIElmIGlzIGEgYGdyb3VwYnlgIHBsdWdpbiwgaXQgd2lsbCByZXR1cm4gY2hpbGQgY29tcG9uZW50cyByYXRoZXIgdGhhbiBvdXRwdXRzLlxuICogNS4gU2luY2UgYWZ0ZXIgYGdyb3VwYnlgLCB0aGVyZSBhcmUgbmV3IGNoaWxkIGNvbXBvbmVudHMsIHRoZW4gY29tcHV0ZXMgdGhlbS5cbiAqICAgIE5vdGU6IGBwaXBlbGluZWAgbm93IGVxdWFscyB0aGUgcmVtYWluaW5nIHBsdS5naW5zIHRvIGFwcGx5IHRvIGVhY2ggY2hpbGRcbiAqL1xuY29uc3QgY29tcHV0ZU5vZGUgPSBhc3luYyAobm9kZTogTm9kZSwgcGFyYW1zOiBQYXJhbXMpOiBQcm9taXNlPGFueT4gPT4ge1xuICBjb25zdCBwaXBlbGluZSA9IChub2RlLnBpcGVsaW5lIHx8IHBhcmFtcy5waXBlbGluZSkgYXMgc3RyaW5nW107XG4gIGNvbnN0IGNvbmZpZyA9IG5vZGUuY29uZmlnIHx8IHBhcmFtcy5jb25maWc7XG4gIGNvbnN0IGRlZmF1bHRzID0gbm9kZS5kZWZhdWx0cyB8fCBwYXJhbXMuZGVmYXVsdHM7XG5cbiAgaWYgKG5vZGUuY2hpbGRyZW4pIHtcbiAgICByZXR1cm4gdHJhdmVyc2Uobm9kZS5jaGlsZHJlbiwge1xuICAgICAgLi4ucGFyYW1zLFxuICAgICAgcGlwZWxpbmUsXG4gICAgICBkZWZhdWx0cyxcbiAgICAgIGNvbmZpZyxcbiAgICB9KTtcbiAgfVxuXG4gIGxldCBpbnB1dFN0b3JhZ2UgPSBzdHJ1Y3R1cmVkQ2xvbmUobm9kZS5pbnB1dHMpIGFzIFBsdWdpblBhcmFtc1tdO1xuICBpbnB1dFN0b3JhZ2UgPSBtZXJnZURlZmF1bHRzKGlucHV0U3RvcmFnZSwgZGVmYXVsdHMpO1xuICBjb25zdCBwaXBlbGluZUNvcHkgPSBzdHJ1Y3R1cmVkQ2xvbmUocGlwZWxpbmUpO1xuXG4gIHdoaWxlIChwaXBlbGluZUNvcHkubGVuZ3RoICE9PSAwKSB7XG4gICAgY29uc3QgcGx1Z2luTmFtZSA9IHBpcGVsaW5lQ29weS5zaGlmdCgpIGFzIHN0cmluZztcbiAgICBjb25zdCBwbHVnaW4gPSBwYXJhbXMucGx1Z2luU3RvcmFnZS5nZXQocGx1Z2luTmFtZSk7XG4gICAgY29uc3Qgbm9kZUNvbmZpZyA9IGNvbmZpZyAmJiBjb25maWdbcGx1Z2luTmFtZV07XG5cbiAgICBjb25zb2xlLmRlYnVnKENPTVBVVElOR19QSVBFTElORV9GT1JfTk9ERShwbHVnaW5OYW1lKSk7XG4gICAgZGVidWdMb2dnZXIuc2V0RXhlY3V0aW5nUGx1Z2luTmFtZShwbHVnaW5OYW1lKTtcblxuICAgIGlmIChpc0V4ZWN1dGUocGx1Z2luKSkge1xuICAgICAgaW5wdXRTdG9yYWdlID0gYXdhaXQgcGx1Z2luLmV4ZWN1dGUoaW5wdXRTdG9yYWdlLCBub2RlQ29uZmlnKTtcbiAgICAgIGRlYnVnTG9nZ2VyLnNldEV4ZWN1dGluZ1BsdWdpbk5hbWUoKTtcblxuICAgICAgbm9kZS5vdXRwdXRzID0gaW5wdXRTdG9yYWdlO1xuICAgIH1cblxuICAgIGlmIChpc0dyb3VwQnkocGx1Z2luKSkge1xuICAgICAgbm9kZS5jaGlsZHJlbiA9IGF3YWl0IHBsdWdpbi5leGVjdXRlKFxuICAgICAgICBpbnB1dFN0b3JhZ2UsXG4gICAgICAgIG5vZGVDb25maWcgYXMgR3JvdXBCeUNvbmZpZ1xuICAgICAgKTtcbiAgICAgIGRlbGV0ZSBub2RlLmlucHV0cztcbiAgICAgIGRlbGV0ZSBub2RlLm91dHB1dHM7XG5cbiAgICAgIGF3YWl0IHRyYXZlcnNlKG5vZGUuY2hpbGRyZW4sIHtcbiAgICAgICAgLi4ucGFyYW1zLFxuICAgICAgICBwaXBlbGluZTogcGlwZWxpbmVDb3B5LFxuICAgICAgICBkZWZhdWx0cyxcbiAgICAgICAgY29uZmlnLFxuICAgICAgfSk7XG5cbiAgICAgIGRlYnVnTG9nZ2VyLnNldEV4ZWN1dGluZ1BsdWdpbk5hbWUoKTtcblxuICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgY29weSBvZiBleGlzdGluZyB0cmVlLCB0aGVuIGFwcGxpZXMgY29tcHV0aW5nIHN0cmF0ZWd5LlxuICovXG5leHBvcnQgY29uc3QgY29tcHV0ZSA9IGFzeW5jICh0cmVlOiBhbnksIHBhcmFtczogQ29tcHV0ZVBhcmFtcykgPT4ge1xuICBjb25zdCBjb3B5T2ZUcmVlID0gc3RydWN0dXJlZENsb25lKHRyZWUpO1xuXG4gIGF3YWl0IGNvbXB1dGVOb2RlKGNvcHlPZlRyZWUsIHBhcmFtcyk7XG5cbiAgcmV0dXJuIGNvcHlPZlRyZWU7XG59O1xuIl19
|