@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
package/build/lib/environment.js
CHANGED
|
@@ -4,7 +4,9 @@ exports.injectEnvironment = void 0;
|
|
|
4
4
|
const luxon_1 = require("luxon");
|
|
5
5
|
const helpers_1 = require("../util/helpers");
|
|
6
6
|
const os_checker_1 = require("../util/os-checker");
|
|
7
|
+
const strings_1 = require("../config/strings");
|
|
7
8
|
const packageJson = require('../../package.json');
|
|
9
|
+
const { CAPTURING_RUNTIME_ENVIRONMENT_DATA } = strings_1.STRINGS;
|
|
8
10
|
/**
|
|
9
11
|
* 1. Gets the high-resolution real time when the application starts.
|
|
10
12
|
* 2. Converts the high-resolution time to milliseconds.
|
|
@@ -39,13 +41,17 @@ const flattenDependencies = (dependencies) => dependencies.map(dependency => {
|
|
|
39
41
|
const listDependencies = async () => {
|
|
40
42
|
const { stdout } = await (0, helpers_1.execPromise)('npm list --json');
|
|
41
43
|
const npmListResponse = JSON.parse(stdout);
|
|
42
|
-
|
|
43
|
-
|
|
44
|
+
if (npmListResponse.dependencies) {
|
|
45
|
+
const dependencies = Object.entries(npmListResponse.dependencies);
|
|
46
|
+
return flattenDependencies(dependencies);
|
|
47
|
+
}
|
|
48
|
+
return [];
|
|
44
49
|
};
|
|
45
50
|
/**
|
|
46
51
|
* Injects execution information (command, environment) to existing manifest.
|
|
47
52
|
*/
|
|
48
53
|
const injectEnvironment = async (manifest) => {
|
|
54
|
+
console.debug(CAPTURING_RUNTIME_ENVIRONMENT_DATA);
|
|
49
55
|
const dependencies = await listDependencies();
|
|
50
56
|
const info = await (0, os_checker_1.osInfo)();
|
|
51
57
|
const dateTime = `${getProcessStartingTimestamp()} (UTC)`;
|
|
@@ -66,4 +72,4 @@ const injectEnvironment = async (manifest) => {
|
|
|
66
72
|
};
|
|
67
73
|
};
|
|
68
74
|
exports.injectEnvironment = injectEnvironment;
|
|
69
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
75
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbGliL2Vudmlyb25tZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGlDQUErQjtBQUUvQiw2Q0FBNEM7QUFJNUMsbURBQTBDO0FBRTFDLCtDQUEwQztBQUUxQyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztBQUVsRCxNQUFNLEVBQUMsa0NBQWtDLEVBQUMsR0FBRyxpQkFBTyxDQUFDO0FBRXJEOzs7OztHQUtHO0FBQ0gsTUFBTSwyQkFBMkIsR0FBRyxHQUFHLEVBQUU7SUFDdkMsTUFBTSxTQUFTLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBRW5DLE1BQU0sQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6RCxNQUFNLFlBQVksR0FBRyxPQUFPLEdBQUcsSUFBSSxHQUFHLFdBQVcsR0FBRyxHQUFHLENBQUM7SUFFeEQsTUFBTSxlQUFlLEdBQUcsZ0JBQVEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUV6QyxNQUFNLHdCQUF3QixHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUM7UUFDckQsWUFBWSxFQUFFLFlBQVk7S0FDM0IsQ0FBQyxDQUFDO0lBRUgsT0FBTyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztBQUNyRCxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxZQUEyQyxFQUFFLEVBQUUsQ0FDMUUsWUFBWSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsRUFBRTtJQUM1QixNQUFNLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxHQUFHLFVBQVUsQ0FBQztJQUM5QyxNQUFNLEVBQUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUMsR0FBRyxXQUFXLENBQUM7SUFDcEQsTUFBTSxZQUFZLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNwRSxNQUFNLFlBQVksR0FDaEIsUUFBUSxJQUFJLFFBQVEsQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNqRSxNQUFNLGVBQWUsR0FBRyxHQUFHLFdBQVcsSUFBSSxPQUFPLEdBQy9DLFlBQVksSUFBSSxZQUNsQixFQUFFLENBQUM7SUFFSCxPQUFPLGVBQWUsQ0FBQztBQUN6QixDQUFDLENBQUMsQ0FBQztBQUVMOzs7R0FHRztBQUNILE1BQU0sZ0JBQWdCLEdBQUcsS0FBSyxJQUFJLEVBQUU7SUFDbEMsTUFBTSxFQUFDLE1BQU0sRUFBQyxHQUFHLE1BQU0sSUFBQSxxQkFBVyxFQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDdEQsTUFBTSxlQUFlLEdBQW9CLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFNUQsSUFBSSxlQUFlLENBQUMsWUFBWSxFQUFFO1FBQ2hDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRWxFLE9BQU8sbUJBQW1CLENBQUMsWUFBWSxDQUFDLENBQUM7S0FDMUM7SUFFRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0ksTUFBTSxpQkFBaUIsR0FBRyxLQUFLLEVBQ3BDLFFBQWtCLEVBQ0MsRUFBRTtJQUNyQixPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7SUFFbEQsTUFBTSxZQUFZLEdBQUcsTUFBTSxnQkFBZ0IsRUFBRSxDQUFDO0lBQzlDLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBQSxtQkFBTSxHQUFFLENBQUM7SUFDNUIsTUFBTSxRQUFRLEdBQUcsR0FBRywyQkFBMkIsRUFBRSxRQUFRLENBQUM7SUFFMUQsT0FBTztRQUNMLEdBQUcsUUFBUTtRQUNYLFNBQVMsRUFBRTtZQUNULE1BQU0sRUFBRSxTQUFTO1lBQ2pCLE9BQU8sRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDL0IsV0FBVyxFQUFFO2dCQUNYLFlBQVksRUFBRSxXQUFXLENBQUMsT0FBTztnQkFDakMsRUFBRSxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUNYLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDO2dCQUNoQyxjQUFjLEVBQUUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJO2dCQUNyQyxXQUFXLEVBQUUsUUFBUTtnQkFDckIsWUFBWTthQUNiO1NBQ0Y7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBeEJXLFFBQUEsaUJBQWlCLHFCQXdCNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RhdGVUaW1lfSBmcm9tICdsdXhvbic7XG5cbmltcG9ydCB7ZXhlY1Byb21pc2V9IGZyb20gJy4uL3V0aWwvaGVscGVycyc7XG5cbmltcG9ydCB7TWFuaWZlc3R9IGZyb20gJy4uL3R5cGVzL21hbmlmZXN0JztcbmltcG9ydCB7TnBtTGlzdFJlc3BvbnNlLCBQYWNrYWdlRGVwZW5kZW5jeX0gZnJvbSAnLi4vdHlwZXMvZW52aXJvbm1lbnQnO1xuaW1wb3J0IHtvc0luZm99IGZyb20gJy4uL3V0aWwvb3MtY2hlY2tlcic7XG5cbmltcG9ydCB7U1RSSU5HU30gZnJvbSAnLi4vY29uZmlnL3N0cmluZ3MnO1xuXG5jb25zdCBwYWNrYWdlSnNvbiA9IHJlcXVpcmUoJy4uLy4uL3BhY2thZ2UuanNvbicpO1xuXG5jb25zdCB7Q0FQVFVSSU5HX1JVTlRJTUVfRU5WSVJPTk1FTlRfREFUQX0gPSBTVFJJTkdTO1xuXG4vKipcbiAqIDEuIEdldHMgdGhlIGhpZ2gtcmVzb2x1dGlvbiByZWFsIHRpbWUgd2hlbiB0aGUgYXBwbGljYXRpb24gc3RhcnRzLlxuICogMi4gQ29udmVydHMgdGhlIGhpZ2gtcmVzb2x1dGlvbiB0aW1lIHRvIG1pbGxpc2Vjb25kcy5cbiAqIDMuIEdldHMgdGhlIGN1cnJlbnQgRGF0ZVRpbWUuXG4gKiA0LiBTdWJ0cmFjdHMgdGhlIG1pbGxpc2Vjb25kcyBmcm9tIHRoZSBjdXJyZW50IERhdGVUaW1lLlxuICovXG5jb25zdCBnZXRQcm9jZXNzU3RhcnRpbmdUaW1lc3RhbXAgPSAoKSA9PiB7XG4gIGNvbnN0IHN0YXJ0VGltZSA9IHByb2Nlc3MuaHJ0aW1lKCk7XG5cbiAgY29uc3QgW3NlY29uZHMsIG5hbm9zZWNvbmRzXSA9IHByb2Nlc3MuaHJ0aW1lKHN0YXJ0VGltZSk7XG4gIGNvbnN0IG1pbGxpc2Vjb25kcyA9IHNlY29uZHMgKiAxMDAwICsgbmFub3NlY29uZHMgLyAxZTY7XG5cbiAgY29uc3QgY3VycmVudERhdGVUaW1lID0gRGF0ZVRpbWUubG9jYWwoKTtcblxuICBjb25zdCBhcHBsaWNhdGlvblN0YXJ0RGF0ZVRpbWUgPSBjdXJyZW50RGF0ZVRpbWUubWludXMoe1xuICAgIG1pbGxpc2Vjb25kczogbWlsbGlzZWNvbmRzLFxuICB9KTtcblxuICByZXR1cm4gYXBwbGljYXRpb25TdGFydERhdGVUaW1lLnRvVVRDKCkudG9TdHJpbmcoKTtcbn07XG5cbi8qKlxuICogR29lcyB0aHJvdWdoIHRoZSBkZXBlbmRlbmNpZXMsIGNvbnZlcnRzIHRoZW0gaW50byBvbmVsaW5lci5cbiAqL1xuY29uc3QgZmxhdHRlbkRlcGVuZGVuY2llcyA9IChkZXBlbmRlbmNpZXM6IFtzdHJpbmcsIFBhY2thZ2VEZXBlbmRlbmN5XVtdKSA9PlxuICBkZXBlbmRlbmNpZXMubWFwKGRlcGVuZGVuY3kgPT4ge1xuICAgIGNvbnN0IFtwYWNrYWdlTmFtZSwgdmVyc2lvbkluZm9dID0gZGVwZW5kZW5jeTtcbiAgICBjb25zdCB7dmVyc2lvbiwgZXh0cmFuZW91cywgcmVzb2x2ZWR9ID0gdmVyc2lvbkluZm87XG4gICAgY29uc3QgaWZFeHRyYW5lb3VzID0gZXh0cmFuZW91cyA/IGAgZXh0cmFuZW91cyAtPiAke3Jlc29sdmVkfWAgOiAnJztcbiAgICBjb25zdCBpZkZyb21HaXRodWIgPVxuICAgICAgcmVzb2x2ZWQgJiYgcmVzb2x2ZWQuc3RhcnRzV2l0aCgnZ2l0JykgPyBgICgke3Jlc29sdmVkfSlgIDogJyc7XG4gICAgY29uc3QgZm9ybWF0dGVkU3RyaW5nID0gYCR7cGFja2FnZU5hbWV9QCR7dmVyc2lvbn0ke1xuICAgICAgaWZFeHRyYW5lb3VzIHx8IGlmRnJvbUdpdGh1YlxuICAgIH1gO1xuXG4gICAgcmV0dXJuIGZvcm1hdHRlZFN0cmluZztcbiAgfSk7XG5cbi8qKlxuICogMS4gUnVucyBgbnBtIGxpc3QgLS1qc29uYC5cbiAqIDIuIFBhcnNlcyBqc29uIGRhdGEgYW5kIGNvbnZlcnRzIHRvIGxpc3QuXG4gKi9cbmNvbnN0IGxpc3REZXBlbmRlbmNpZXMgPSBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHtzdGRvdXR9ID0gYXdhaXQgZXhlY1Byb21pc2UoJ25wbSBsaXN0IC0tanNvbicpO1xuICBjb25zdCBucG1MaXN0UmVzcG9uc2U6IE5wbUxpc3RSZXNwb25zZSA9IEpTT04ucGFyc2Uoc3Rkb3V0KTtcblxuICBpZiAobnBtTGlzdFJlc3BvbnNlLmRlcGVuZGVuY2llcykge1xuICAgIGNvbnN0IGRlcGVuZGVuY2llcyA9IE9iamVjdC5lbnRyaWVzKG5wbUxpc3RSZXNwb25zZS5kZXBlbmRlbmNpZXMpO1xuXG4gICAgcmV0dXJuIGZsYXR0ZW5EZXBlbmRlbmNpZXMoZGVwZW5kZW5jaWVzKTtcbiAgfVxuXG4gIHJldHVybiBbXTtcbn07XG5cbi8qKlxuICogSW5qZWN0cyBleGVjdXRpb24gaW5mb3JtYXRpb24gKGNvbW1hbmQsIGVudmlyb25tZW50KSB0byBleGlzdGluZyBtYW5pZmVzdC5cbiAqL1xuZXhwb3J0IGNvbnN0IGluamVjdEVudmlyb25tZW50ID0gYXN5bmMgKFxuICBtYW5pZmVzdDogTWFuaWZlc3Rcbik6IFByb21pc2U8TWFuaWZlc3Q+ID0+IHtcbiAgY29uc29sZS5kZWJ1ZyhDQVBUVVJJTkdfUlVOVElNRV9FTlZJUk9OTUVOVF9EQVRBKTtcblxuICBjb25zdCBkZXBlbmRlbmNpZXMgPSBhd2FpdCBsaXN0RGVwZW5kZW5jaWVzKCk7XG4gIGNvbnN0IGluZm8gPSBhd2FpdCBvc0luZm8oKTtcbiAgY29uc3QgZGF0ZVRpbWUgPSBgJHtnZXRQcm9jZXNzU3RhcnRpbmdUaW1lc3RhbXAoKX0gKFVUQylgO1xuXG4gIHJldHVybiB7XG4gICAgLi4ubWFuaWZlc3QsXG4gICAgZXhlY3V0aW9uOiB7XG4gICAgICBzdGF0dXM6ICdzdWNjZXNzJyxcbiAgICAgIGNvbW1hbmQ6IHByb2Nlc3MuYXJndi5qb2luKCcgJyksXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICAnaWYtdmVyc2lvbic6IHBhY2thZ2VKc29uLnZlcnNpb24sXG4gICAgICAgIG9zOiBpbmZvLm9zLFxuICAgICAgICAnb3MtdmVyc2lvbic6IGluZm9bJ29zLXZlcnNpb24nXSxcbiAgICAgICAgJ25vZGUtdmVyc2lvbic6IHByb2Nlc3MudmVyc2lvbnMubm9kZSxcbiAgICAgICAgJ2RhdGUtdGltZSc6IGRhdGVUaW1lLFxuICAgICAgICBkZXBlbmRlbmNpZXMsXG4gICAgICB9LFxuICAgIH0sXG4gIH07XG59O1xuIl19
|
package/build/lib/exhaust.js
CHANGED
|
@@ -11,7 +11,7 @@ const export_yaml_1 = require("../builtins/export-yaml");
|
|
|
11
11
|
const errors_1 = require("../util/errors");
|
|
12
12
|
const config_1 = require("../config");
|
|
13
13
|
const { ExhaustError } = errors_1.ERRORS;
|
|
14
|
-
const { INVALID_EXHAUST_PLUGIN } = config_1.STRINGS;
|
|
14
|
+
const { INVALID_EXHAUST_PLUGIN, PREPARING_OUTPUT_DATA } = config_1.STRINGS;
|
|
15
15
|
/**
|
|
16
16
|
* Initialize exhaust plugins based on the provided config
|
|
17
17
|
*/
|
|
@@ -36,6 +36,7 @@ const initializeExhaustPlugin = (name) => {
|
|
|
36
36
|
* Grabs output plugins from context, executes every.
|
|
37
37
|
*/
|
|
38
38
|
const exhaust = async (tree, context, outputOptions) => {
|
|
39
|
+
console.debug(PREPARING_OUTPUT_DATA);
|
|
39
40
|
const outputPlugins = context.initialize.outputs;
|
|
40
41
|
if (outputOptions.stdout) {
|
|
41
42
|
(0, export_log_1.ExportLog)().execute(tree, context);
|
|
@@ -49,4 +50,4 @@ const exhaust = async (tree, context, outputOptions) => {
|
|
|
49
50
|
}
|
|
50
51
|
};
|
|
51
52
|
exports.exhaust = exhaust;
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhoYXVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvZXhoYXVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTs7R0FFRztBQUNILHVEQUFpRDtBQUNqRCwrREFBd0Q7QUFDeEQsdURBQWlEO0FBQ2pELHlEQUFtRDtBQUVuRCwyQ0FBc0M7QUFFdEMsc0NBQWtDO0FBTWxDLE1BQU0sRUFBQyxZQUFZLEVBQUMsR0FBRyxlQUFNLENBQUM7QUFDOUIsTUFBTSxFQUFDLHNCQUFzQixFQUFFLHFCQUFxQixFQUFDLEdBQUcsZ0JBQU8sQ0FBQztBQUVoRTs7R0FFRztBQUNILE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxPQUFpQixFQUFFLEVBQUUsQ0FDckQsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBRXZDOztHQUVHO0FBQ0gsTUFBTSx1QkFBdUIsR0FBRyxDQUFDLElBQVksRUFBMEIsRUFBRTtJQUN2RSxRQUFRLElBQUksRUFBRTtRQUNaLEtBQUssTUFBTTtZQUNULE9BQU8sSUFBQSx3QkFBVSxHQUFFLENBQUM7UUFDdEIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxJQUFBLHNCQUFTLEdBQUUsQ0FBQztRQUNyQixLQUFLLFNBQVM7WUFDWixPQUFPLElBQUEsNkJBQVksR0FBRSxDQUFDO1FBQ3hCO1lBQ0UsTUFBTSxJQUFJLFlBQVksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0tBQ3hEO0FBQ0gsQ0FBQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0ksTUFBTSxPQUFPLEdBQUcsS0FBSyxFQUMxQixJQUFTLEVBQ1QsT0FBZ0IsRUFDaEIsYUFBc0IsRUFDdEIsRUFBRTtJQUNGLE9BQU8sQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUVyQyxNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQztJQUVqRCxJQUFJLGFBQWEsQ0FBQyxNQUFNLEVBQUU7UUFDeEIsSUFBQSxzQkFBUyxHQUFFLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsQ0FBQztLQUNwQztJQUVELElBQUksQ0FBQyxhQUFhLEVBQUU7UUFDbEIsT0FBTztLQUNSO0lBRUQsTUFBTSxjQUFjLEdBQUcsd0JBQXdCLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFL0QsSUFBSSxLQUFLLEVBQUUsTUFBTSxNQUFNLElBQUksY0FBYyxFQUFFO1FBQ3pDLE1BQU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztLQUMvRDtBQUNILENBQUMsQ0FBQztBQXRCVyxRQUFBLE9BQU8sV0FzQmxCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAdG9kbyBUaGlzIGlzIHRlbXBvcmFyeSBzb2x1dGlvbiwgd2lsbCBiZSByZWZhY3RvcmVkIHRvIHN1cHBvcnQgZHluYW1pYyBwbHVnaW5zLlxuICovXG5pbXBvcnQge0V4cG9ydENTVn0gZnJvbSAnLi4vYnVpbHRpbnMvZXhwb3J0LWNzdic7XG5pbXBvcnQge0V4cG9ydENTVlJhd30gZnJvbSAnLi4vYnVpbHRpbnMvZXhwb3J0LWNzdi1yYXcnO1xuaW1wb3J0IHtFeHBvcnRMb2d9IGZyb20gJy4uL2J1aWx0aW5zL2V4cG9ydC1sb2cnO1xuaW1wb3J0IHtFeHBvcnRZYW1sfSBmcm9tICcuLi9idWlsdGlucy9leHBvcnQteWFtbCc7XG5cbmltcG9ydCB7RVJST1JTfSBmcm9tICcuLi91dGlsL2Vycm9ycyc7XG5cbmltcG9ydCB7U1RSSU5HU30gZnJvbSAnLi4vY29uZmlnJztcblxuaW1wb3J0IHtFeGhhdXN0UGx1Z2luSW50ZXJmYWNlfSBmcm9tICcuLi90eXBlcy9leGhhdXN0LXBsdWdpbi1pbnRlcmZhY2UnO1xuaW1wb3J0IHtDb250ZXh0fSBmcm9tICcuLi90eXBlcy9tYW5pZmVzdCc7XG5pbXBvcnQge09wdGlvbnN9IGZyb20gJy4uL3R5cGVzL3Byb2Nlc3MtYXJncyc7XG5cbmNvbnN0IHtFeGhhdXN0RXJyb3J9ID0gRVJST1JTO1xuY29uc3Qge0lOVkFMSURfRVhIQVVTVF9QTFVHSU4sIFBSRVBBUklOR19PVVRQVVRfREFUQX0gPSBTVFJJTkdTO1xuXG4vKipcbiAqIEluaXRpYWxpemUgZXhoYXVzdCBwbHVnaW5zIGJhc2VkIG9uIHRoZSBwcm92aWRlZCBjb25maWdcbiAqL1xuY29uc3QgaW5pdGlhbGl6ZUV4aGF1c3RQbHVnaW5zID0gKHBsdWdpbnM6IHN0cmluZ1tdKSA9PlxuICBwbHVnaW5zLm1hcChpbml0aWFsaXplRXhoYXVzdFBsdWdpbik7XG5cbi8qKlxuICogRmFjdG9yeSBtZXRob2QgZm9yIGV4aGF1c3QgcGx1Z2lucy5cbiAqL1xuY29uc3QgaW5pdGlhbGl6ZUV4aGF1c3RQbHVnaW4gPSAobmFtZTogc3RyaW5nKTogRXhoYXVzdFBsdWdpbkludGVyZmFjZSA9PiB7XG4gIHN3aXRjaCAobmFtZSkge1xuICAgIGNhc2UgJ3lhbWwnOlxuICAgICAgcmV0dXJuIEV4cG9ydFlhbWwoKTtcbiAgICBjYXNlICdjc3YnOlxuICAgICAgcmV0dXJuIEV4cG9ydENTVigpO1xuICAgIGNhc2UgJ2Nzdi1yYXcnOlxuICAgICAgcmV0dXJuIEV4cG9ydENTVlJhdygpO1xuICAgIGRlZmF1bHQ6XG4gICAgICB0aHJvdyBuZXcgRXhoYXVzdEVycm9yKElOVkFMSURfRVhIQVVTVF9QTFVHSU4obmFtZSkpO1xuICB9XG59O1xuXG4vKipcbiAqIE91dHB1dCBtYW5hZ2VyIC0gRXhoYXVzdC5cbiAqIEdyYWJzIG91dHB1dCBwbHVnaW5zIGZyb20gY29udGV4dCwgZXhlY3V0ZXMgZXZlcnkuXG4gKi9cbmV4cG9ydCBjb25zdCBleGhhdXN0ID0gYXN5bmMgKFxuICB0cmVlOiBhbnksXG4gIGNvbnRleHQ6IENvbnRleHQsXG4gIG91dHB1dE9wdGlvbnM6IE9wdGlvbnNcbikgPT4ge1xuICBjb25zb2xlLmRlYnVnKFBSRVBBUklOR19PVVRQVVRfREFUQSk7XG5cbiAgY29uc3Qgb3V0cHV0UGx1Z2lucyA9IGNvbnRleHQuaW5pdGlhbGl6ZS5vdXRwdXRzO1xuXG4gIGlmIChvdXRwdXRPcHRpb25zLnN0ZG91dCkge1xuICAgIEV4cG9ydExvZygpLmV4ZWN1dGUodHJlZSwgY29udGV4dCk7XG4gIH1cblxuICBpZiAoIW91dHB1dFBsdWdpbnMpIHtcbiAgICByZXR1cm47XG4gIH1cblxuICBjb25zdCBleGhhdXN0UGx1Z2lucyA9IGluaXRpYWxpemVFeGhhdXN0UGx1Z2lucyhvdXRwdXRQbHVnaW5zKTtcblxuICBmb3IgYXdhaXQgKGNvbnN0IHBsdWdpbiBvZiBleGhhdXN0UGx1Z2lucykge1xuICAgIGF3YWl0IHBsdWdpbi5leGVjdXRlKHRyZWUsIGNvbnRleHQsIG91dHB1dE9wdGlvbnMub3V0cHV0UGF0aCk7XG4gIH1cbn07XG4iXX0=
|
package/build/lib/initialize.js
CHANGED
|
@@ -32,7 +32,7 @@ const plugin_storage_1 = require("../util/plugin-storage");
|
|
|
32
32
|
const config_1 = require("../config");
|
|
33
33
|
const { ModuleInitializationError, PluginCredentialError } = errors_1.ERRORS;
|
|
34
34
|
const { GITHUB_PATH, NATIVE_PLUGIN } = config_1.CONFIG;
|
|
35
|
-
const { MISSING_METHOD, MISSING_PATH, NOT_NATIVE_PLUGIN, INVALID_MODULE_PATH } = config_1.STRINGS;
|
|
35
|
+
const { MISSING_METHOD, MISSING_PATH, NOT_NATIVE_PLUGIN, INVALID_MODULE_PATH, LOADING_PLUGIN_FROM_PATH, INITIALIZING_PLUGIN, INITIALIZING_PLUGINS, } = config_1.STRINGS;
|
|
36
36
|
/**
|
|
37
37
|
* Imports module by given `path`.
|
|
38
38
|
*/
|
|
@@ -59,6 +59,7 @@ const importAndVerifyModule = async (method, path) => {
|
|
|
59
59
|
* Imports module, then checks if it's a valid plugin.
|
|
60
60
|
*/
|
|
61
61
|
const handModule = (method, path) => {
|
|
62
|
+
console.debug(LOADING_PLUGIN_FROM_PATH(method, path));
|
|
62
63
|
if (path === 'builtin') {
|
|
63
64
|
path = pathLib.normalize(`${__dirname}/../builtins`);
|
|
64
65
|
}
|
|
@@ -78,6 +79,7 @@ const handModule = (method, path) => {
|
|
|
78
79
|
*/
|
|
79
80
|
const initPlugin = async (initPluginParams) => {
|
|
80
81
|
const { method, path, 'global-config': globalConfig } = initPluginParams;
|
|
82
|
+
console.debug(INITIALIZING_PLUGIN(method));
|
|
81
83
|
if (!method) {
|
|
82
84
|
throw new PluginCredentialError(MISSING_METHOD);
|
|
83
85
|
}
|
|
@@ -91,6 +93,7 @@ const initPlugin = async (initPluginParams) => {
|
|
|
91
93
|
* Registers all plugins from `manifest`.`initialize` property.
|
|
92
94
|
*/
|
|
93
95
|
const initialize = async (plugins) => {
|
|
96
|
+
console.debug(INITIALIZING_PLUGINS);
|
|
94
97
|
const storage = (0, plugin_storage_1.pluginStorage)();
|
|
95
98
|
for await (const pluginName of Object.keys(plugins)) {
|
|
96
99
|
const plugin = await initPlugin(plugins[pluginName]);
|
|
@@ -99,4 +102,4 @@ const initialize = async (plugins) => {
|
|
|
99
102
|
return storage;
|
|
100
103
|
};
|
|
101
104
|
exports.initialize = initialize;
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbGl6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvaW5pdGlhbGl6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdDQUFpQztBQUVqQywyQ0FBc0M7QUFDdEMsMkNBQXNDO0FBQ3RDLHFEQUFnRDtBQUNoRCwyREFBcUQ7QUFFckQsc0NBQTBDO0FBTTFDLE1BQU0sRUFBQyx5QkFBeUIsRUFBRSxxQkFBcUIsRUFBQyxHQUFHLGVBQU0sQ0FBQztBQUVsRSxNQUFNLEVBQUMsV0FBVyxFQUFFLGFBQWEsRUFBQyxHQUFHLGVBQU0sQ0FBQztBQUM1QyxNQUFNLEVBQ0osY0FBYyxFQUNkLFlBQVksRUFDWixpQkFBaUIsRUFDakIsbUJBQW1CLEVBQ25CLHdCQUF3QixFQUN4QixtQkFBbUIsRUFDbkIsb0JBQW9CLEdBQ3JCLEdBQUcsZ0JBQU8sQ0FBQztBQUVaOztHQUVHO0FBQ0gsTUFBTSxnQkFBZ0IsR0FBRyxLQUFLLEVBQUUsSUFBWSxFQUFFLEVBQUU7SUFDOUMsSUFBSTtRQUNGLE1BQU0sTUFBTSxHQUFHLHlCQUFhLElBQUksdUNBQUMsQ0FBQztRQUVsQyxPQUFPLE1BQU0sQ0FBQztLQUNmO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxlQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3BCLE1BQU0sSUFBSSx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0tBQ2hFO0FBQ0gsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLHFCQUFxQixHQUFHLEtBQUssRUFBRSxNQUFjLEVBQUUsSUFBWSxFQUFFLEVBQUU7SUFDbkUsTUFBTSxZQUFZLEdBQUcsTUFBTSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUVsRCxPQUFPLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUM5QixDQUFDLENBQUM7QUFFRjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLEdBQUcsQ0FBQyxNQUFjLEVBQUUsSUFBWSxFQUFFLEVBQUU7SUFDbEQsT0FBTyxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUV0RCxJQUFJLElBQUksS0FBSyxTQUFTLEVBQUU7UUFDdEIsSUFBSSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxTQUFTLGNBQWMsQ0FBQyxDQUFDO0tBQ3REO1NBQU07UUFDTCxJQUFJLElBQUksRUFBRSxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUU7WUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM5QixJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDaEM7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNqQyxJQUFBLHlCQUFXLEVBQUMsZUFBTSxDQUFDLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQ25EO0tBQ0Y7SUFFRCxPQUFPLHFCQUFxQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztBQUM3QyxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sVUFBVSxHQUFHLEtBQUssRUFDdEIsZ0JBQStCLEVBQ0wsRUFBRTtJQUM1QixNQUFNLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFDLEdBQUcsZ0JBQWdCLENBQUM7SUFFdkUsT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBRTNDLElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDWCxNQUFNLElBQUkscUJBQXFCLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDakQ7SUFFRCxJQUFJLENBQUMsSUFBSSxFQUFFO1FBQ1QsTUFBTSxJQUFJLHFCQUFxQixDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQy9DO0lBRUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxVQUFVLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBRTlDLE9BQU8sTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQzlCLENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0ksTUFBTSxVQUFVLEdBQUcsS0FBSyxFQUM3QixPQUFzQixFQUNXLEVBQUU7SUFDbkMsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0lBRXBDLE1BQU0sT0FBTyxHQUFHLElBQUEsOEJBQWEsR0FBRSxDQUFDO0lBRWhDLElBQUksS0FBSyxFQUFFLE1BQU0sVUFBVSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUU7UUFDbkQsTUFBTSxNQUFNLEdBQUcsTUFBTSxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFDckQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDakM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNqQixDQUFDLENBQUM7QUFiVyxRQUFBLFVBQVUsY0FhckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgcGF0aExpYiA9IHJlcXVpcmUoJ3BhdGgnKTtcblxuaW1wb3J0IHtFUlJPUlN9IGZyb20gJy4uL3V0aWwvZXJyb3JzJztcbmltcG9ydCB7bG9nZ2VyfSBmcm9tICcuLi91dGlsL2xvZ2dlcic7XG5pbXBvcnQge21lbW9pemVkTG9nfSBmcm9tICcuLi91dGlsL2xvZy1tZW1vaXplJztcbmltcG9ydCB7cGx1Z2luU3RvcmFnZX0gZnJvbSAnLi4vdXRpbC9wbHVnaW4tc3RvcmFnZSc7XG5cbmltcG9ydCB7Q09ORklHLCBTVFJJTkdTfSBmcm9tICcuLi9jb25maWcnO1xuXG5pbXBvcnQge1BsdWdpbkludGVyZmFjZX0gZnJvbSAnLi4vdHlwZXMvaW50ZXJmYWNlJztcbmltcG9ydCB7R2xvYmFsUGx1Z2lucywgUGx1Z2luT3B0aW9uc30gZnJvbSAnLi4vdHlwZXMvbWFuaWZlc3QnO1xuaW1wb3J0IHtQbHVnaW5TdG9yYWdlSW50ZXJmYWNlfSBmcm9tICcuLi90eXBlcy9wbHVnaW4tc3RvcmFnZSc7XG5cbmNvbnN0IHtNb2R1bGVJbml0aWFsaXphdGlvbkVycm9yLCBQbHVnaW5DcmVkZW50aWFsRXJyb3J9ID0gRVJST1JTO1xuXG5jb25zdCB7R0lUSFVCX1BBVEgsIE5BVElWRV9QTFVHSU59ID0gQ09ORklHO1xuY29uc3Qge1xuICBNSVNTSU5HX01FVEhPRCxcbiAgTUlTU0lOR19QQVRILFxuICBOT1RfTkFUSVZFX1BMVUdJTixcbiAgSU5WQUxJRF9NT0RVTEVfUEFUSCxcbiAgTE9BRElOR19QTFVHSU5fRlJPTV9QQVRILFxuICBJTklUSUFMSVpJTkdfUExVR0lOLFxuICBJTklUSUFMSVpJTkdfUExVR0lOUyxcbn0gPSBTVFJJTkdTO1xuXG4vKipcbiAqIEltcG9ydHMgbW9kdWxlIGJ5IGdpdmVuIGBwYXRoYC5cbiAqL1xuY29uc3QgaW1wb3J0TW9kdWxlRnJvbSA9IGFzeW5jIChwYXRoOiBzdHJpbmcpID0+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBtb2R1bGUgPSBhd2FpdCBpbXBvcnQocGF0aCk7XG5cbiAgICByZXR1cm4gbW9kdWxlO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGxvZ2dlci5lcnJvcihlcnJvcik7XG4gICAgdGhyb3cgbmV3IE1vZHVsZUluaXRpYWxpemF0aW9uRXJyb3IoSU5WQUxJRF9NT0RVTEVfUEFUSChwYXRoKSk7XG4gIH1cbn07XG5cbi8qKlxuICogSW1wb3J0cyBgbW9kdWxlYCBmcm9tIGdpdmVuIGBwYXRoYCwgdGhlbiBjaGVja3MgaWYgaXQncyBgTW9kZWxQbHVnaW5JbnRlcmZhY2VgIGV4dGVuc2lvbi5cbiAqL1xuY29uc3QgaW1wb3J0QW5kVmVyaWZ5TW9kdWxlID0gYXN5bmMgKG1ldGhvZDogc3RyaW5nLCBwYXRoOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgcGx1Z2luTW9kdWxlID0gYXdhaXQgaW1wb3J0TW9kdWxlRnJvbShwYXRoKTtcblxuICByZXR1cm4gcGx1Z2luTW9kdWxlW21ldGhvZF07XG59O1xuXG4vKipcbiAqIENoZWNrcyBpZiBwbHVnaW4gaXMgbWlzc2luZyB0aGVuIHJlamVjdHMgd2l0aCBlcnJvci5cbiAqIFRoZW4gY2hlY2tzIGlmIGBwYXRoYCBpcyBzdGFydGluZyB3aXRoIGdpdGh1YiwgdGhlbiBncmFicyB0aGUgcmVwb3NpdG9yeSBuYW1lLlxuICogSW1wb3J0cyBtb2R1bGUsIHRoZW4gY2hlY2tzIGlmIGl0J3MgYSB2YWxpZCBwbHVnaW4uXG4gKi9cbmNvbnN0IGhhbmRNb2R1bGUgPSAobWV0aG9kOiBzdHJpbmcsIHBhdGg6IHN0cmluZykgPT4ge1xuICBjb25zb2xlLmRlYnVnKExPQURJTkdfUExVR0lOX0ZST01fUEFUSChtZXRob2QsIHBhdGgpKTtcblxuICBpZiAocGF0aCA9PT0gJ2J1aWx0aW4nKSB7XG4gICAgcGF0aCA9IHBhdGhMaWIubm9ybWFsaXplKGAke19fZGlybmFtZX0vLi4vYnVpbHRpbnNgKTtcbiAgfSBlbHNlIHtcbiAgICBpZiAocGF0aD8uc3RhcnRzV2l0aChHSVRIVUJfUEFUSCkpIHtcbiAgICAgIGNvbnN0IHBhcnRzID0gcGF0aC5zcGxpdCgnLycpO1xuICAgICAgcGF0aCA9IHBhcnRzW3BhcnRzLmxlbmd0aCAtIDFdO1xuICAgIH1cblxuICAgIGlmICghcGF0aC5pbmNsdWRlcyhOQVRJVkVfUExVR0lOKSkge1xuICAgICAgbWVtb2l6ZWRMb2cobG9nZ2VyLndhcm4sIE5PVF9OQVRJVkVfUExVR0lOKHBhdGgpKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gaW1wb3J0QW5kVmVyaWZ5TW9kdWxlKG1ldGhvZCwgcGF0aCk7XG59O1xuXG4vKipcbiAqIEluaXRpYWxpemVzIHBsdWdpbiB3aXRoIGdsb2JhbCBjb25maWcuXG4gKi9cbmNvbnN0IGluaXRQbHVnaW4gPSBhc3luYyAoXG4gIGluaXRQbHVnaW5QYXJhbXM6IFBsdWdpbk9wdGlvbnNcbik6IFByb21pc2U8UGx1Z2luSW50ZXJmYWNlPiA9PiB7XG4gIGNvbnN0IHttZXRob2QsIHBhdGgsICdnbG9iYWwtY29uZmlnJzogZ2xvYmFsQ29uZmlnfSA9IGluaXRQbHVnaW5QYXJhbXM7XG5cbiAgY29uc29sZS5kZWJ1ZyhJTklUSUFMSVpJTkdfUExVR0lOKG1ldGhvZCkpO1xuXG4gIGlmICghbWV0aG9kKSB7XG4gICAgdGhyb3cgbmV3IFBsdWdpbkNyZWRlbnRpYWxFcnJvcihNSVNTSU5HX01FVEhPRCk7XG4gIH1cblxuICBpZiAoIXBhdGgpIHtcbiAgICB0aHJvdyBuZXcgUGx1Z2luQ3JlZGVudGlhbEVycm9yKE1JU1NJTkdfUEFUSCk7XG4gIH1cblxuICBjb25zdCBwbHVnaW4gPSBhd2FpdCBoYW5kTW9kdWxlKG1ldGhvZCwgcGF0aCk7XG5cbiAgcmV0dXJuIHBsdWdpbihnbG9iYWxDb25maWcpO1xufTtcblxuLyoqXG4gKiBSZWdpc3RlcnMgYWxsIHBsdWdpbnMgZnJvbSBgbWFuaWZlc3RgLmBpbml0aWFsaXplYCBwcm9wZXJ0eS5cbiAqL1xuZXhwb3J0IGNvbnN0IGluaXRpYWxpemUgPSBhc3luYyAoXG4gIHBsdWdpbnM6IEdsb2JhbFBsdWdpbnNcbik6IFByb21pc2U8UGx1Z2luU3RvcmFnZUludGVyZmFjZT4gPT4ge1xuICBjb25zb2xlLmRlYnVnKElOSVRJQUxJWklOR19QTFVHSU5TKTtcblxuICBjb25zdCBzdG9yYWdlID0gcGx1Z2luU3RvcmFnZSgpO1xuXG4gIGZvciBhd2FpdCAoY29uc3QgcGx1Z2luTmFtZSBvZiBPYmplY3Qua2V5cyhwbHVnaW5zKSkge1xuICAgIGNvbnN0IHBsdWdpbiA9IGF3YWl0IGluaXRQbHVnaW4ocGx1Z2luc1twbHVnaW5OYW1lXSk7XG4gICAgc3RvcmFnZS5zZXQocGx1Z2luTmFtZSwgcGx1Z2luKTtcbiAgfVxuXG4gIHJldHVybiBzdG9yYWdlO1xufTtcbiJdfQ==
|
package/build/lib/load.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Parameters } from '../types/parameters';
|
|
2
|
+
import { LoadDiffParams } from '../types/util/args';
|
|
2
3
|
/**
|
|
3
4
|
* Parses manifest file as an object. Checks if parameter file is passed via CLI, then loads it too.
|
|
4
5
|
* Returns context, tree and parameters (either the default one, or from CLI).
|
|
@@ -7,3 +8,50 @@ export declare const load: (inputPath: string, paramPath?: string) => Promise<{
|
|
|
7
8
|
rawManifest: any;
|
|
8
9
|
parameters: Parameters;
|
|
9
10
|
}>;
|
|
11
|
+
/**
|
|
12
|
+
* Loads files to compare. As a source file checks if data is piped and then decides which one to take.
|
|
13
|
+
*/
|
|
14
|
+
export declare const loadIfDiffFiles: (params: LoadDiffParams) => Promise<{
|
|
15
|
+
rawSourceManifest: unknown;
|
|
16
|
+
rawTargetManifest: {
|
|
17
|
+
name: string;
|
|
18
|
+
initialize: {
|
|
19
|
+
plugins: Record<string, {
|
|
20
|
+
path: string;
|
|
21
|
+
method: string;
|
|
22
|
+
'global-config'?: Record<string, any> | undefined;
|
|
23
|
+
}>;
|
|
24
|
+
outputs?: string[] | undefined;
|
|
25
|
+
};
|
|
26
|
+
tree: Record<string, any>;
|
|
27
|
+
description?: string | null | undefined;
|
|
28
|
+
tags?: {
|
|
29
|
+
kind?: string | null | undefined;
|
|
30
|
+
complexity?: string | null | undefined;
|
|
31
|
+
category?: string | null | undefined;
|
|
32
|
+
} | null | undefined;
|
|
33
|
+
aggregation?: {
|
|
34
|
+
type: "horizontal" | "vertical" | "both";
|
|
35
|
+
metrics: string[];
|
|
36
|
+
} | null | undefined;
|
|
37
|
+
params?: {
|
|
38
|
+
name: string;
|
|
39
|
+
description: string;
|
|
40
|
+
aggregation: "sum" | "none" | "avg";
|
|
41
|
+
unit: string;
|
|
42
|
+
}[] | null | undefined;
|
|
43
|
+
execution?: {
|
|
44
|
+
status: string;
|
|
45
|
+
command?: string | undefined;
|
|
46
|
+
environment?: {
|
|
47
|
+
'if-version': string;
|
|
48
|
+
os: string;
|
|
49
|
+
'os-version': string;
|
|
50
|
+
'node-version': string;
|
|
51
|
+
'date-time': string;
|
|
52
|
+
dependencies: string[];
|
|
53
|
+
} | undefined;
|
|
54
|
+
error?: string | undefined;
|
|
55
|
+
} | undefined;
|
|
56
|
+
};
|
|
57
|
+
}>;
|
package/build/lib/load.js
CHANGED
|
@@ -1,14 +1,44 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.load = void 0;
|
|
26
|
+
exports.loadIfDiffFiles = exports.load = void 0;
|
|
27
|
+
const YAML = __importStar(require("js-yaml"));
|
|
28
|
+
const errors_1 = require("../util/errors");
|
|
4
29
|
const yaml_1 = require("../util/yaml");
|
|
5
30
|
const json_1 = require("../util/json");
|
|
31
|
+
const helpers_1 = require("../util/helpers");
|
|
6
32
|
const config_1 = require("../config");
|
|
33
|
+
const config_2 = require("../config");
|
|
34
|
+
const { CliInputError } = errors_1.ERRORS;
|
|
35
|
+
const { INVALID_SOURCE, LOADING_MANIFEST } = config_2.STRINGS;
|
|
7
36
|
/**
|
|
8
37
|
* Parses manifest file as an object. Checks if parameter file is passed via CLI, then loads it too.
|
|
9
38
|
* Returns context, tree and parameters (either the default one, or from CLI).
|
|
10
39
|
*/
|
|
11
40
|
const load = async (inputPath, paramPath) => {
|
|
41
|
+
console.debug(LOADING_MANIFEST);
|
|
12
42
|
const rawManifest = await (0, yaml_1.openYamlFileAsObject)(inputPath);
|
|
13
43
|
const parametersFromCli = paramPath &&
|
|
14
44
|
(await (0, json_1.readAndParseJson)(paramPath)); /** @todo validate json */
|
|
@@ -20,4 +50,23 @@ const load = async (inputPath, paramPath) => {
|
|
|
20
50
|
};
|
|
21
51
|
};
|
|
22
52
|
exports.load = load;
|
|
23
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Loads files to compare. As a source file checks if data is piped and then decides which one to take.
|
|
55
|
+
*/
|
|
56
|
+
const loadIfDiffFiles = async (params) => {
|
|
57
|
+
const { sourcePath, targetPath } = params;
|
|
58
|
+
const pipedSourceManifest = await (0, helpers_1.parseManifestFromStdin)();
|
|
59
|
+
if (!sourcePath && !pipedSourceManifest) {
|
|
60
|
+
throw new CliInputError(INVALID_SOURCE);
|
|
61
|
+
}
|
|
62
|
+
const loadFromSource = sourcePath && (await (0, yaml_1.openYamlFileAsObject)(sourcePath));
|
|
63
|
+
const loadFromSTDIN = pipedSourceManifest && (await YAML.load(pipedSourceManifest));
|
|
64
|
+
const rawSourceManifest = loadFromSource || loadFromSTDIN;
|
|
65
|
+
const rawTargetManifest = await (0, yaml_1.openYamlFileAsObject)(targetPath);
|
|
66
|
+
return {
|
|
67
|
+
rawSourceManifest,
|
|
68
|
+
rawTargetManifest,
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
exports.loadIfDiffFiles = loadIfDiffFiles;
|
|
72
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvbG9hZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhDQUFnQztBQUVoQywyQ0FBc0M7QUFDdEMsdUNBQWtEO0FBQ2xELHVDQUE4QztBQUM5Qyw2Q0FBdUQ7QUFFdkQsc0NBQXFDO0FBQ3JDLHNDQUFrQztBQU1sQyxNQUFNLEVBQUMsYUFBYSxFQUFDLEdBQUcsZUFBTSxDQUFDO0FBRS9CLE1BQU0sRUFBQyxjQUFjLEVBQUUsZ0JBQWdCLEVBQUMsR0FBRyxnQkFBTyxDQUFDO0FBRW5EOzs7R0FHRztBQUNJLE1BQU0sSUFBSSxHQUFHLEtBQUssRUFBRSxTQUFpQixFQUFFLFNBQWtCLEVBQUUsRUFBRTtJQUNsRSxPQUFPLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFFaEMsTUFBTSxXQUFXLEdBQUcsTUFBTSxJQUFBLDJCQUFvQixFQUFNLFNBQVMsQ0FBQyxDQUFDO0lBQy9ELE1BQU0saUJBQWlCLEdBQ3JCLFNBQVM7UUFDVCxDQUFDLE1BQU0sSUFBQSx1QkFBZ0IsRUFBYSxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsMEJBQTBCO0lBQzdFLE1BQU0sVUFBVSxHQUNkLGlCQUFpQjtRQUNqQixtQkFBVSxDQUFDLENBQUMsZ0VBQWdFO0lBRTlFLE9BQU87UUFDTCxXQUFXO1FBQ1gsVUFBVTtLQUNYLENBQUM7QUFDSixDQUFDLENBQUM7QUFmVyxRQUFBLElBQUksUUFlZjtBQUVGOztHQUVHO0FBQ0ksTUFBTSxlQUFlLEdBQUcsS0FBSyxFQUFFLE1BQXNCLEVBQUUsRUFBRTtJQUM5RCxNQUFNLEVBQUMsVUFBVSxFQUFFLFVBQVUsRUFBQyxHQUFHLE1BQU0sQ0FBQztJQUN4QyxNQUFNLG1CQUFtQixHQUFHLE1BQU0sSUFBQSxnQ0FBc0IsR0FBRSxDQUFDO0lBRTNELElBQUksQ0FBQyxVQUFVLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtRQUN2QyxNQUFNLElBQUksYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0tBQ3pDO0lBRUQsTUFBTSxjQUFjLEdBQ2xCLFVBQVUsSUFBSSxDQUFDLE1BQU0sSUFBQSwyQkFBb0IsRUFBVyxVQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sYUFBYSxHQUNqQixtQkFBbUIsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBb0IsQ0FBQyxDQUFDLENBQUM7SUFFakUsTUFBTSxpQkFBaUIsR0FBRyxjQUFjLElBQUksYUFBYSxDQUFDO0lBQzFELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxJQUFBLDJCQUFvQixFQUFXLFVBQVUsQ0FBQyxDQUFDO0lBRTNFLE9BQU87UUFDTCxpQkFBaUI7UUFDakIsaUJBQWlCO0tBQ2xCLENBQUM7QUFDSixDQUFDLENBQUM7QUFwQlcsUUFBQSxlQUFlLG1CQW9CMUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBZQU1MIGZyb20gJ2pzLXlhbWwnO1xuXG5pbXBvcnQge0VSUk9SU30gZnJvbSAnLi4vdXRpbC9lcnJvcnMnO1xuaW1wb3J0IHtvcGVuWWFtbEZpbGVBc09iamVjdH0gZnJvbSAnLi4vdXRpbC95YW1sJztcbmltcG9ydCB7cmVhZEFuZFBhcnNlSnNvbn0gZnJvbSAnLi4vdXRpbC9qc29uJztcbmltcG9ydCB7cGFyc2VNYW5pZmVzdEZyb21TdGRpbn0gZnJvbSAnLi4vdXRpbC9oZWxwZXJzJztcblxuaW1wb3J0IHtQQVJBTUVURVJTfSBmcm9tICcuLi9jb25maWcnO1xuaW1wb3J0IHtTVFJJTkdTfSBmcm9tICcuLi9jb25maWcnO1xuXG5pbXBvcnQge1BhcmFtZXRlcnN9IGZyb20gJy4uL3R5cGVzL3BhcmFtZXRlcnMnO1xuaW1wb3J0IHtMb2FkRGlmZlBhcmFtc30gZnJvbSAnLi4vdHlwZXMvdXRpbC9hcmdzJztcbmltcG9ydCB7TWFuaWZlc3R9IGZyb20gJy4uL3R5cGVzL21hbmlmZXN0JztcblxuY29uc3Qge0NsaUlucHV0RXJyb3J9ID0gRVJST1JTO1xuXG5jb25zdCB7SU5WQUxJRF9TT1VSQ0UsIExPQURJTkdfTUFOSUZFU1R9ID0gU1RSSU5HUztcblxuLyoqXG4gKiBQYXJzZXMgbWFuaWZlc3QgZmlsZSBhcyBhbiBvYmplY3QuIENoZWNrcyBpZiBwYXJhbWV0ZXIgZmlsZSBpcyBwYXNzZWQgdmlhIENMSSwgdGhlbiBsb2FkcyBpdCB0b28uXG4gKiBSZXR1cm5zIGNvbnRleHQsIHRyZWUgYW5kIHBhcmFtZXRlcnMgKGVpdGhlciB0aGUgZGVmYXVsdCBvbmUsIG9yIGZyb20gQ0xJKS5cbiAqL1xuZXhwb3J0IGNvbnN0IGxvYWQgPSBhc3luYyAoaW5wdXRQYXRoOiBzdHJpbmcsIHBhcmFtUGF0aD86IHN0cmluZykgPT4ge1xuICBjb25zb2xlLmRlYnVnKExPQURJTkdfTUFOSUZFU1QpO1xuXG4gIGNvbnN0IHJhd01hbmlmZXN0ID0gYXdhaXQgb3BlbllhbWxGaWxlQXNPYmplY3Q8YW55PihpbnB1dFBhdGgpO1xuICBjb25zdCBwYXJhbWV0ZXJzRnJvbUNsaSA9XG4gICAgcGFyYW1QYXRoICYmXG4gICAgKGF3YWl0IHJlYWRBbmRQYXJzZUpzb248UGFyYW1ldGVycz4ocGFyYW1QYXRoKSk7IC8qKiBAdG9kbyB2YWxpZGF0ZSBqc29uICovXG4gIGNvbnN0IHBhcmFtZXRlcnMgPVxuICAgIHBhcmFtZXRlcnNGcm9tQ2xpIHx8XG4gICAgUEFSQU1FVEVSUzsgLyoqIEB0b2RvIFBBUkFNRVRFUlMgc2hvdWxkIGJlIHNwZWNpZmllZCBpbiBwYXJhbWV0ZXJpemUgb25seSAqL1xuXG4gIHJldHVybiB7XG4gICAgcmF3TWFuaWZlc3QsXG4gICAgcGFyYW1ldGVycyxcbiAgfTtcbn07XG5cbi8qKlxuICogTG9hZHMgZmlsZXMgdG8gY29tcGFyZS4gQXMgYSBzb3VyY2UgZmlsZSBjaGVja3MgaWYgZGF0YSBpcyBwaXBlZCBhbmQgdGhlbiBkZWNpZGVzIHdoaWNoIG9uZSB0byB0YWtlLlxuICovXG5leHBvcnQgY29uc3QgbG9hZElmRGlmZkZpbGVzID0gYXN5bmMgKHBhcmFtczogTG9hZERpZmZQYXJhbXMpID0+IHtcbiAgY29uc3Qge3NvdXJjZVBhdGgsIHRhcmdldFBhdGh9ID0gcGFyYW1zO1xuICBjb25zdCBwaXBlZFNvdXJjZU1hbmlmZXN0ID0gYXdhaXQgcGFyc2VNYW5pZmVzdEZyb21TdGRpbigpO1xuXG4gIGlmICghc291cmNlUGF0aCAmJiAhcGlwZWRTb3VyY2VNYW5pZmVzdCkge1xuICAgIHRocm93IG5ldyBDbGlJbnB1dEVycm9yKElOVkFMSURfU09VUkNFKTtcbiAgfVxuXG4gIGNvbnN0IGxvYWRGcm9tU291cmNlID1cbiAgICBzb3VyY2VQYXRoICYmIChhd2FpdCBvcGVuWWFtbEZpbGVBc09iamVjdDxNYW5pZmVzdD4oc291cmNlUGF0aCEpKTtcbiAgY29uc3QgbG9hZEZyb21TVERJTiA9XG4gICAgcGlwZWRTb3VyY2VNYW5pZmVzdCAmJiAoYXdhaXQgWUFNTC5sb2FkKHBpcGVkU291cmNlTWFuaWZlc3QhKSk7XG5cbiAgY29uc3QgcmF3U291cmNlTWFuaWZlc3QgPSBsb2FkRnJvbVNvdXJjZSB8fCBsb2FkRnJvbVNURElOO1xuICBjb25zdCByYXdUYXJnZXRNYW5pZmVzdCA9IGF3YWl0IG9wZW5ZYW1sRmlsZUFzT2JqZWN0PE1hbmlmZXN0Pih0YXJnZXRQYXRoKTtcblxuICByZXR1cm4ge1xuICAgIHJhd1NvdXJjZU1hbmlmZXN0LFxuICAgIHJhd1RhcmdldE1hbmlmZXN0LFxuICB9O1xufTtcbiJdfQ==
|
|
@@ -3,17 +3,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.parameterize = void 0;
|
|
4
4
|
const logger_1 = require("../util/logger");
|
|
5
5
|
const log_memoize_1 = require("../util/log-memoize");
|
|
6
|
+
const debug_logger_1 = require("../util/debug-logger");
|
|
6
7
|
const config_1 = require("../config");
|
|
7
|
-
const { REJECTING_OVERRIDE, UNKNOWN_PARAM } = config_1.STRINGS;
|
|
8
|
+
const { REJECTING_OVERRIDE, UNKNOWN_PARAM, SYNCING_PARAMETERS, CHECKING_AGGREGATION_METHOD, } = config_1.STRINGS;
|
|
8
9
|
/**
|
|
9
10
|
* Parameters manager. Provides get aggregation method and combine functionality.
|
|
10
11
|
*/
|
|
11
|
-
const
|
|
12
|
+
const Parameterize = () => {
|
|
12
13
|
let parametersStorage = config_1.PARAMETERS;
|
|
13
14
|
/**
|
|
14
15
|
* Returns aggregation method for given `unitName`. If doesn't exist then returns value `sum`.
|
|
15
16
|
*/
|
|
16
17
|
const getAggregationMethod = (unitName) => {
|
|
18
|
+
debug_logger_1.debugLogger.setExecutingPluginName();
|
|
19
|
+
(0, log_memoize_1.memoizedLog)(console.debug, CHECKING_AGGREGATION_METHOD(unitName));
|
|
17
20
|
if (`${unitName}` in parametersStorage) {
|
|
18
21
|
return parametersStorage[unitName].aggregation;
|
|
19
22
|
}
|
|
@@ -26,6 +29,7 @@ const Parametrize = () => {
|
|
|
26
29
|
* Otherwise appends context based parameters to defaults.
|
|
27
30
|
*/
|
|
28
31
|
const combine = (contextParameters, parameters) => {
|
|
32
|
+
console.debug(SYNCING_PARAMETERS);
|
|
29
33
|
if (contextParameters) {
|
|
30
34
|
contextParameters.forEach(param => {
|
|
31
35
|
if (`${param.name}` in parameters) {
|
|
@@ -47,5 +51,5 @@ const Parametrize = () => {
|
|
|
47
51
|
getAggregationMethod,
|
|
48
52
|
};
|
|
49
53
|
};
|
|
50
|
-
exports.parameterize =
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
exports.parameterize = Parameterize();
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYW1ldGVyaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xpYi9wYXJhbWV0ZXJpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsMkNBQXNDO0FBQ3RDLHFEQUFnRDtBQUNoRCx1REFBaUQ7QUFFakQsc0NBQThDO0FBSzlDLE1BQU0sRUFDSixrQkFBa0IsRUFDbEIsYUFBYSxFQUNiLGtCQUFrQixFQUNsQiwyQkFBMkIsR0FDNUIsR0FBRyxnQkFBTyxDQUFDO0FBRVo7O0dBRUc7QUFDSCxNQUFNLFlBQVksR0FBRyxHQUFHLEVBQUU7SUFDeEIsSUFBSSxpQkFBaUIsR0FBRyxtQkFBVSxDQUFDO0lBRW5DOztPQUVHO0lBQ0gsTUFBTSxvQkFBb0IsR0FBRyxDQUFDLFFBQWdCLEVBQUUsRUFBRTtRQUNoRCwwQkFBVyxDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDckMsSUFBQSx5QkFBVyxFQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsMkJBQTJCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUVsRSxJQUFJLEdBQUcsUUFBUSxFQUFFLElBQUksaUJBQWlCLEVBQUU7WUFDdEMsT0FBTyxpQkFBaUIsQ0FBQyxRQUFtQyxDQUFDLENBQUMsV0FBVyxDQUFDO1NBQzNFO1FBRUQsSUFBQSx5QkFBVyxFQUFDLGVBQU0sQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFFbEQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDLENBQUM7SUFFRjs7OztPQUlHO0lBQ0gsTUFBTSxPQUFPLEdBQUcsQ0FDZCxpQkFBeUQsRUFDekQsVUFBc0IsRUFDdEIsRUFBRTtRQUNGLE9BQU8sQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVsQyxJQUFJLGlCQUFpQixFQUFFO1lBQ3JCLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDaEMsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxVQUFVLEVBQUU7b0JBQ2pDLGVBQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztvQkFFdkMsT0FBTztpQkFDUjtnQkFFRCxNQUFNLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFDLEdBQUcsS0FBSyxDQUFDO2dCQUVyRCxVQUFVLENBQUMsSUFBSSxDQUFDLEdBQUc7b0JBQ2pCLFdBQVc7b0JBQ1gsSUFBSTtvQkFDSixXQUFXO2lCQUNaLENBQUM7WUFDSixDQUFDLENBQUMsQ0FBQztTQUNKO1FBRUQsaUJBQWlCLEdBQUcsVUFBVSxDQUFDO0lBQ2pDLENBQUMsQ0FBQztJQUVGLE9BQU87UUFDTCxPQUFPO1FBQ1Asb0JBQW9CO0tBQ3JCLENBQUM7QUFDSixDQUFDLENBQUM7QUFFVyxRQUFBLFlBQVksR0FBRyxZQUFZLEVBQUUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7bG9nZ2VyfSBmcm9tICcuLi91dGlsL2xvZ2dlcic7XG5pbXBvcnQge21lbW9pemVkTG9nfSBmcm9tICcuLi91dGlsL2xvZy1tZW1vaXplJztcbmltcG9ydCB7ZGVidWdMb2dnZXJ9IGZyb20gJy4uL3V0aWwvZGVidWctbG9nZ2VyJztcblxuaW1wb3J0IHtTVFJJTkdTLCBQQVJBTUVURVJTfSBmcm9tICcuLi9jb25maWcnO1xuXG5pbXBvcnQge01hbmlmZXN0UGFyYW1ldGVyfSBmcm9tICcuLi90eXBlcy9tYW5pZmVzdCc7XG5pbXBvcnQge1BhcmFtZXRlcnN9IGZyb20gJy4uL3R5cGVzL3BhcmFtZXRlcnMnO1xuXG5jb25zdCB7XG4gIFJFSkVDVElOR19PVkVSUklERSxcbiAgVU5LTk9XTl9QQVJBTSxcbiAgU1lOQ0lOR19QQVJBTUVURVJTLFxuICBDSEVDS0lOR19BR0dSRUdBVElPTl9NRVRIT0QsXG59ID0gU1RSSU5HUztcblxuLyoqXG4gKiBQYXJhbWV0ZXJzIG1hbmFnZXIuIFByb3ZpZGVzIGdldCBhZ2dyZWdhdGlvbiBtZXRob2QgYW5kIGNvbWJpbmUgZnVuY3Rpb25hbGl0eS5cbiAqL1xuY29uc3QgUGFyYW1ldGVyaXplID0gKCkgPT4ge1xuICBsZXQgcGFyYW1ldGVyc1N0b3JhZ2UgPSBQQVJBTUVURVJTO1xuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFnZ3JlZ2F0aW9uIG1ldGhvZCBmb3IgZ2l2ZW4gYHVuaXROYW1lYC4gSWYgZG9lc24ndCBleGlzdCB0aGVuIHJldHVybnMgdmFsdWUgYHN1bWAuXG4gICAqL1xuICBjb25zdCBnZXRBZ2dyZWdhdGlvbk1ldGhvZCA9ICh1bml0TmFtZTogc3RyaW5nKSA9PiB7XG4gICAgZGVidWdMb2dnZXIuc2V0RXhlY3V0aW5nUGx1Z2luTmFtZSgpO1xuICAgIG1lbW9pemVkTG9nKGNvbnNvbGUuZGVidWcsIENIRUNLSU5HX0FHR1JFR0FUSU9OX01FVEhPRCh1bml0TmFtZSkpO1xuXG4gICAgaWYgKGAke3VuaXROYW1lfWAgaW4gcGFyYW1ldGVyc1N0b3JhZ2UpIHtcbiAgICAgIHJldHVybiBwYXJhbWV0ZXJzU3RvcmFnZVt1bml0TmFtZSBhcyBrZXlvZiB0eXBlb2YgUEFSQU1FVEVSU10uYWdncmVnYXRpb247XG4gICAgfVxuXG4gICAgbWVtb2l6ZWRMb2cobG9nZ2VyLndhcm4sIFVOS05PV05fUEFSQU0odW5pdE5hbWUpKTtcblxuICAgIHJldHVybiAnc3VtJztcbiAgfTtcblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGFkZGl0aW9uYWwgcGFyYW1ldGVycyBhcmUgcHJvdmlkZWQgaW4gY29udGV4dC5cbiAgICogSWYgc28sIHRoZW4gY2hlY2tzIGlmIHRoZXkgYXJlIGNvaW5jaWRlbnQgd2l0aCBkZWZhdWx0IG9uZXMgYW5kIGV4aXRzIHdpdGggd2FybmluZyBtZXNzYWdlLlxuICAgKiBPdGhlcndpc2UgYXBwZW5kcyBjb250ZXh0IGJhc2VkIHBhcmFtZXRlcnMgdG8gZGVmYXVsdHMuXG4gICAqL1xuICBjb25zdCBjb21iaW5lID0gKFxuICAgIGNvbnRleHRQYXJhbWV0ZXJzOiBNYW5pZmVzdFBhcmFtZXRlcltdIHwgbnVsbCB8IHVuZGVmaW5lZCxcbiAgICBwYXJhbWV0ZXJzOiBQYXJhbWV0ZXJzXG4gICkgPT4ge1xuICAgIGNvbnNvbGUuZGVidWcoU1lOQ0lOR19QQVJBTUVURVJTKTtcblxuICAgIGlmIChjb250ZXh0UGFyYW1ldGVycykge1xuICAgICAgY29udGV4dFBhcmFtZXRlcnMuZm9yRWFjaChwYXJhbSA9PiB7XG4gICAgICAgIGlmIChgJHtwYXJhbS5uYW1lfWAgaW4gcGFyYW1ldGVycykge1xuICAgICAgICAgIGxvZ2dlci53YXJuKFJFSkVDVElOR19PVkVSUklERShwYXJhbSkpO1xuXG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qge2Rlc2NyaXB0aW9uLCB1bml0LCBhZ2dyZWdhdGlvbiwgbmFtZX0gPSBwYXJhbTtcblxuICAgICAgICBwYXJhbWV0ZXJzW25hbWVdID0ge1xuICAgICAgICAgIGRlc2NyaXB0aW9uLFxuICAgICAgICAgIHVuaXQsXG4gICAgICAgICAgYWdncmVnYXRpb24sXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBwYXJhbWV0ZXJzU3RvcmFnZSA9IHBhcmFtZXRlcnM7XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICBjb21iaW5lLFxuICAgIGdldEFnZ3JlZ2F0aW9uTWV0aG9kLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHBhcmFtZXRlcml6ZSA9IFBhcmFtZXRlcml6ZSgpO1xuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2NvbW1vbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgS2V5VmFsdWVQYWlyID0ge1xuICBba2V5OiBzdHJpbmddOiBhbnk7XG59O1xuXG5leHBvcnQgdHlwZSBDb25maWdQYXJhbXMgPSBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9oZWxwZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgdHlwZSBFcnJvckZvcm1hdFBhcmFtcyA9IHtcbiAgc2NvcGU/OiBzdHJpbmc7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn07XG4iXX0=
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { GroupByConfig } from './group-by';
|
|
2
2
|
export type PluginParams = Record<string, any>;
|
|
3
|
+
export type ConfigParams = Record<string, any>;
|
|
3
4
|
export type ExecutePlugin = {
|
|
4
|
-
execute: (inputs: PluginParams[], config?: Record<string, any>) => PluginParams[]
|
|
5
|
+
execute: (inputs: PluginParams[], config?: Record<string, any>) => PluginParams[] | Promise<PluginParams[]>;
|
|
5
6
|
metadata: {
|
|
6
7
|
kind: string;
|
|
7
8
|
};
|
package/build/types/interface.js
CHANGED
|
@@ -5,4 +5,4 @@ const isExecute = (plugin) => plugin.metadata.kind === 'execute';
|
|
|
5
5
|
exports.isExecute = isExecute;
|
|
6
6
|
const isGroupBy = (plugin) => plugin.metadata.kind === 'groupby';
|
|
7
7
|
exports.isGroupBy = isGroupBy;
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2ludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUEyQk8sTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUF1QixFQUEyQixFQUFFLENBQzNFLE1BQXdCLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUM7QUFEM0MsUUFBQSxTQUFTLGFBQ2tDO0FBRWpELE1BQU0sU0FBUyxHQUFHLENBQUMsTUFBdUIsRUFBMkIsRUFBRSxDQUMzRSxNQUF3QixDQUFDLFFBQVEsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDO0FBRDNDLFFBQUEsU0FBUyxhQUNrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7R3JvdXBCeUNvbmZpZ30gZnJvbSAnLi9ncm91cC1ieSc7XG5cbmV4cG9ydCB0eXBlIFBsdWdpblBhcmFtcyA9IFJlY29yZDxzdHJpbmcsIGFueT47XG5cbmV4cG9ydCB0eXBlIENvbmZpZ1BhcmFtcyA9IFJlY29yZDxzdHJpbmcsIGFueT47XG5cbmV4cG9ydCB0eXBlIEV4ZWN1dGVQbHVnaW4gPSB7XG4gIGV4ZWN1dGU6IChcbiAgICBpbnB1dHM6IFBsdWdpblBhcmFtc1tdLFxuICAgIGNvbmZpZz86IFJlY29yZDxzdHJpbmcsIGFueT5cbiAgKSA9PiBQbHVnaW5QYXJhbXNbXSB8IFByb21pc2U8UGx1Z2luUGFyYW1zW10+O1xuICBtZXRhZGF0YToge1xuICAgIGtpbmQ6IHN0cmluZztcbiAgfTtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufTtcblxuZXhwb3J0IHR5cGUgR3JvdXBCeVBsdWdpbiA9IHtcbiAgZXhlY3V0ZTogKGlucHV0czogUGx1Z2luUGFyYW1zW10sIGNvbmZpZzogR3JvdXBCeUNvbmZpZykgPT4ge2NoaWxkcmVuOiBhbnl9O1xuICBtZXRhZGF0YToge1xuICAgIGtpbmQ6IHN0cmluZztcbiAgfTtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufTtcblxuZXhwb3J0IHR5cGUgUGx1Z2luSW50ZXJmYWNlID0gRXhlY3V0ZVBsdWdpbiB8IEdyb3VwQnlQbHVnaW47XG5cbmV4cG9ydCBjb25zdCBpc0V4ZWN1dGUgPSAocGx1Z2luOiBQbHVnaW5JbnRlcmZhY2UpOiBwbHVnaW4gaXMgRXhlY3V0ZVBsdWdpbiA9PlxuICAocGx1Z2luIGFzIEV4ZWN1dGVQbHVnaW4pLm1ldGFkYXRhLmtpbmQgPT09ICdleGVjdXRlJztcblxuZXhwb3J0IGNvbnN0IGlzR3JvdXBCeSA9IChwbHVnaW46IFBsdWdpbkludGVyZmFjZSk6IHBsdWdpbiBpcyBHcm91cEJ5UGx1Z2luID0+XG4gIChwbHVnaW4gYXMgR3JvdXBCeVBsdWdpbikubWV0YWRhdGEua2luZCA9PT0gJ2dyb3VwYnknO1xuIl19
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy9saWIvY29tcGFyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgRGlmZmVyZW5jZSA9IHtcbiAgcGF0aD86IHN0cmluZztcbiAgc291cmNlPzogYW55O1xuICB0YXJnZXQ/OiBhbnk7XG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn07XG4iXX0=
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
export interface
|
|
1
|
+
export interface IEArgs {
|
|
2
2
|
manifest?: string;
|
|
3
3
|
output?: string;
|
|
4
4
|
'override-params'?: string;
|
|
5
5
|
stdout?: boolean;
|
|
6
|
+
debug?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface IFDiffArgs {
|
|
9
|
+
source?: string;
|
|
10
|
+
target: string;
|
|
6
11
|
}
|
|
7
12
|
export interface Options {
|
|
8
13
|
outputPath?: string;
|
|
@@ -15,4 +20,5 @@ export interface ProcessArgsOutputs {
|
|
|
15
20
|
stdout?: boolean;
|
|
16
21
|
};
|
|
17
22
|
paramPath?: string;
|
|
23
|
+
debug?: boolean;
|
|
18
24
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1hcmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3Byb2Nlc3MtYXJncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJRUFyZ3Mge1xuICBtYW5pZmVzdD86IHN0cmluZztcbiAgb3V0cHV0Pzogc3RyaW5nO1xuICAnb3ZlcnJpZGUtcGFyYW1zJz86IHN0cmluZztcbiAgc3Rkb3V0PzogYm9vbGVhbjtcbiAgZGVidWc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElGRGlmZkFyZ3Mge1xuICBzb3VyY2U/OiBzdHJpbmc7XG4gIHRhcmdldDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE9wdGlvbnMge1xuICBvdXRwdXRQYXRoPzogc3RyaW5nO1xuICBzdGRvdXQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFByb2Nlc3NBcmdzT3V0cHV0cyB7XG4gIGlucHV0UGF0aDogc3RyaW5nO1xuICBvdXRwdXRPcHRpb25zOiB7XG4gICAgb3V0cHV0UGF0aD86IHN0cmluZztcbiAgICBzdGRvdXQ/OiBib29sZWFuO1xuICB9O1xuICBwYXJhbVBhdGg/OiBzdHJpbmc7XG4gIGRlYnVnPzogYm9vbGVhbjtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eXBlcy91dGlsL2FyZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIExvYWREaWZmUGFyYW1zID0ge1xuICBzb3VyY2VQYXRoPzogc3RyaW5nO1xuICB0YXJnZXRQYXRoOiBzdHJpbmc7XG59O1xuIl19
|
package/build/util/args.d.ts
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import { ProcessArgsOutputs } from '../types/process-args';
|
|
2
|
+
import { LoadDiffParams } from '../types/util/args';
|
|
2
3
|
/**
|
|
3
|
-
* 1. Parses process arguments like `manifest`, `output`, `override-params` and `
|
|
4
|
+
* 1. Parses process arguments like `manifest`, `output`, `override-params`, `help` and `debug`.
|
|
4
5
|
* 2. Checks if `help` param is provided, then logs help message and exits.
|
|
5
6
|
* 3. If output params are missing, warns user about it.
|
|
6
7
|
* 3. Otherwise checks if `manifest` param is there, then processes with checking if it's a yaml file.
|
|
7
8
|
* If it is, then returns object containing full path.
|
|
8
9
|
* 4. If params are missing or invalid, then rejects with `CliInputError`.
|
|
9
10
|
*/
|
|
10
|
-
export declare const
|
|
11
|
+
export declare const parseIEProcessArgs: () => ProcessArgsOutputs;
|
|
12
|
+
/**
|
|
13
|
+
* Checks for `source` and `target` flags to be present.
|
|
14
|
+
*/
|
|
15
|
+
export declare const parseIfDiffArgs: () => LoadDiffParams;
|
package/build/util/args.js
CHANGED
|
@@ -23,7 +23,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.
|
|
26
|
+
exports.parseIfDiffArgs = exports.parseIEProcessArgs = void 0;
|
|
27
27
|
const path = __importStar(require("path"));
|
|
28
28
|
const ts_command_line_args_1 = require("ts-command-line-args");
|
|
29
29
|
const yaml_1 = require("./yaml");
|
|
@@ -31,15 +31,14 @@ const errors_1 = require("./errors");
|
|
|
31
31
|
const logger_1 = require("./logger");
|
|
32
32
|
const config_1 = require("../config");
|
|
33
33
|
const { CliInputError } = errors_1.ERRORS;
|
|
34
|
-
const { IE } = config_1.CONFIG;
|
|
35
|
-
const {
|
|
36
|
-
const { FILE_IS_NOT_YAML, MANIFEST_IS_MISSING, NO_OUTPUT } = config_1.STRINGS;
|
|
34
|
+
const { IE, IF_DIFF } = config_1.CONFIG;
|
|
35
|
+
const { FILE_IS_NOT_YAML, MANIFEST_IS_MISSING, NO_OUTPUT, SOURCE_IS_NOT_YAML, TARGET_IS_NOT_YAML, INVALID_TARGET, } = config_1.STRINGS;
|
|
37
36
|
/**
|
|
38
|
-
* Validates process arguments
|
|
37
|
+
* Validates `ie` process arguments.
|
|
39
38
|
*/
|
|
40
39
|
const validateAndParseProcessArgs = () => {
|
|
41
40
|
try {
|
|
42
|
-
return (0, ts_command_line_args_1.parse)(ARGS, HELP);
|
|
41
|
+
return (0, ts_command_line_args_1.parse)(IE.ARGS, IE.HELP);
|
|
43
42
|
}
|
|
44
43
|
catch (error) {
|
|
45
44
|
if (error instanceof Error) {
|
|
@@ -59,15 +58,15 @@ const prependFullFilePath = (filePath) => {
|
|
|
59
58
|
return path.normalize(`${processRunningPath}/${filePath}`);
|
|
60
59
|
};
|
|
61
60
|
/**
|
|
62
|
-
* 1. Parses process arguments like `manifest`, `output`, `override-params` and `
|
|
61
|
+
* 1. Parses process arguments like `manifest`, `output`, `override-params`, `help` and `debug`.
|
|
63
62
|
* 2. Checks if `help` param is provided, then logs help message and exits.
|
|
64
63
|
* 3. If output params are missing, warns user about it.
|
|
65
64
|
* 3. Otherwise checks if `manifest` param is there, then processes with checking if it's a yaml file.
|
|
66
65
|
* If it is, then returns object containing full path.
|
|
67
66
|
* 4. If params are missing or invalid, then rejects with `CliInputError`.
|
|
68
67
|
*/
|
|
69
|
-
const
|
|
70
|
-
const { manifest, output, 'override-params': overrideParams, stdout, } = validateAndParseProcessArgs();
|
|
68
|
+
const parseIEProcessArgs = () => {
|
|
69
|
+
const { manifest, output, 'override-params': overrideParams, stdout, debug, } = validateAndParseProcessArgs();
|
|
71
70
|
if (!output && !stdout) {
|
|
72
71
|
logger_1.logger.warn(NO_OUTPUT);
|
|
73
72
|
}
|
|
@@ -80,11 +79,50 @@ const parseArgs = () => {
|
|
|
80
79
|
...(stdout && { stdout }),
|
|
81
80
|
},
|
|
82
81
|
...(overrideParams && { paramPath: overrideParams }),
|
|
82
|
+
debug,
|
|
83
83
|
};
|
|
84
84
|
}
|
|
85
85
|
throw new CliInputError(FILE_IS_NOT_YAML);
|
|
86
86
|
}
|
|
87
87
|
throw new CliInputError(MANIFEST_IS_MISSING);
|
|
88
88
|
};
|
|
89
|
-
exports.
|
|
90
|
-
|
|
89
|
+
exports.parseIEProcessArgs = parseIEProcessArgs;
|
|
90
|
+
/** -- IF Diff -- */
|
|
91
|
+
/**
|
|
92
|
+
* Parses `if-diff` process arguments.
|
|
93
|
+
*/
|
|
94
|
+
const validateAndParseIfDiffArgs = () => {
|
|
95
|
+
try {
|
|
96
|
+
return (0, ts_command_line_args_1.parse)(IF_DIFF.ARGS, IF_DIFF.HELP);
|
|
97
|
+
}
|
|
98
|
+
catch (error) {
|
|
99
|
+
if (error instanceof Error) {
|
|
100
|
+
throw new CliInputError(error.message);
|
|
101
|
+
}
|
|
102
|
+
throw error;
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
/**
|
|
106
|
+
* Checks for `source` and `target` flags to be present.
|
|
107
|
+
*/
|
|
108
|
+
const parseIfDiffArgs = () => {
|
|
109
|
+
const { source, target } = validateAndParseIfDiffArgs();
|
|
110
|
+
if (target) {
|
|
111
|
+
if (source && !(0, yaml_1.checkIfFileIsYaml)(source)) {
|
|
112
|
+
throw new CliInputError(SOURCE_IS_NOT_YAML);
|
|
113
|
+
}
|
|
114
|
+
if ((0, yaml_1.checkIfFileIsYaml)(target)) {
|
|
115
|
+
const response = {
|
|
116
|
+
targetPath: prependFullFilePath(target),
|
|
117
|
+
};
|
|
118
|
+
if (source && (0, yaml_1.checkIfFileIsYaml)(source)) {
|
|
119
|
+
response.sourcePath = prependFullFilePath(source);
|
|
120
|
+
}
|
|
121
|
+
return response;
|
|
122
|
+
}
|
|
123
|
+
throw new CliInputError(TARGET_IS_NOT_YAML);
|
|
124
|
+
}
|
|
125
|
+
throw new CliInputError(INVALID_TARGET);
|
|
126
|
+
};
|
|
127
|
+
exports.parseIfDiffArgs = parseIfDiffArgs;
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL2FyZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBNkI7QUFDN0IsK0RBQTJDO0FBRTNDLGlDQUF5QztBQUN6QyxxQ0FBZ0M7QUFDaEMscUNBQWdDO0FBRWhDLHNDQUEwQztBQUsxQyxNQUFNLEVBQUMsYUFBYSxFQUFDLEdBQUcsZUFBTSxDQUFDO0FBRS9CLE1BQU0sRUFBQyxFQUFFLEVBQUUsT0FBTyxFQUFDLEdBQUcsZUFBTSxDQUFDO0FBRTdCLE1BQU0sRUFDSixnQkFBZ0IsRUFDaEIsbUJBQW1CLEVBQ25CLFNBQVMsRUFDVCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGNBQWMsR0FDZixHQUFHLGdCQUFPLENBQUM7QUFFWjs7R0FFRztBQUNILE1BQU0sMkJBQTJCLEdBQUcsR0FBRyxFQUFFO0lBQ3ZDLElBQUk7UUFDRixPQUFPLElBQUEsNEJBQUssRUFBUyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUN4QztJQUFDLE9BQU8sS0FBSyxFQUFFO1FBQ2QsSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO1lBQzFCLE1BQU0sSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3hDO1FBRUQsTUFBTSxLQUFLLENBQUM7S0FDYjtBQUNILENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxtQkFBbUIsR0FBRyxDQUFDLFFBQWdCLEVBQUUsRUFBRTtJQUMvQyxNQUFNLGtCQUFrQixHQUFHLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUV6QyxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDN0IsT0FBTyxRQUFRLENBQUM7S0FDakI7SUFFRCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxrQkFBa0IsSUFBSSxRQUFRLEVBQUUsQ0FBQyxDQUFDO0FBQzdELENBQUMsQ0FBQztBQUVGOzs7Ozs7O0dBT0c7QUFDSSxNQUFNLGtCQUFrQixHQUFHLEdBQXVCLEVBQUU7SUFDekQsTUFBTSxFQUNKLFFBQVEsRUFDUixNQUFNLEVBQ04saUJBQWlCLEVBQUUsY0FBYyxFQUNqQyxNQUFNLEVBQ04sS0FBSyxHQUNOLEdBQUcsMkJBQTJCLEVBQUUsQ0FBQztJQUVsQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxFQUFFO1FBQ3RCLGVBQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7S0FDeEI7SUFFRCxJQUFJLFFBQVEsRUFBRTtRQUNaLElBQUksSUFBQSx3QkFBaUIsRUFBQyxRQUFRLENBQUMsRUFBRTtZQUMvQixPQUFPO2dCQUNMLFNBQVMsRUFBRSxtQkFBbUIsQ0FBQyxRQUFRLENBQUM7Z0JBQ3hDLGFBQWEsRUFBRTtvQkFDYixHQUFHLENBQUMsTUFBTSxJQUFJLEVBQUMsVUFBVSxFQUFFLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFDLENBQUM7b0JBQ3hELEdBQUcsQ0FBQyxNQUFNLElBQUksRUFBQyxNQUFNLEVBQUMsQ0FBQztpQkFDeEI7Z0JBQ0QsR0FBRyxDQUFDLGNBQWMsSUFBSSxFQUFDLFNBQVMsRUFBRSxjQUFjLEVBQUMsQ0FBQztnQkFDbEQsS0FBSzthQUNOLENBQUM7U0FDSDtRQUVELE1BQU0sSUFBSSxhQUFhLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztLQUMzQztJQUVELE1BQU0sSUFBSSxhQUFhLENBQUMsbUJBQW1CLENBQUMsQ0FBQztBQUMvQyxDQUFDLENBQUM7QUE5QlcsUUFBQSxrQkFBa0Isc0JBOEI3QjtBQUVGLG9CQUFvQjtBQUVwQjs7R0FFRztBQUNILE1BQU0sMEJBQTBCLEdBQUcsR0FBRyxFQUFFO0lBQ3RDLElBQUk7UUFDRixPQUFPLElBQUEsNEJBQUssRUFBYSxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztLQUN0RDtJQUFDLE9BQU8sS0FBSyxFQUFFO1FBQ2QsSUFBSSxLQUFLLFlBQVksS0FBSyxFQUFFO1lBQzFCLE1BQU0sSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3hDO1FBRUQsTUFBTSxLQUFLLENBQUM7S0FDYjtBQUNILENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0ksTUFBTSxlQUFlLEdBQUcsR0FBRyxFQUFFO0lBQ2xDLE1BQU0sRUFBQyxNQUFNLEVBQUUsTUFBTSxFQUFDLEdBQUcsMEJBQTBCLEVBQUUsQ0FBQztJQUV0RCxJQUFJLE1BQU0sRUFBRTtRQUNWLElBQUksTUFBTSxJQUFJLENBQUMsSUFBQSx3QkFBaUIsRUFBQyxNQUFNLENBQUMsRUFBRTtZQUN4QyxNQUFNLElBQUksYUFBYSxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDN0M7UUFFRCxJQUFJLElBQUEsd0JBQWlCLEVBQUMsTUFBTSxDQUFDLEVBQUU7WUFDN0IsTUFBTSxRQUFRLEdBQW1CO2dCQUMvQixVQUFVLEVBQUUsbUJBQW1CLENBQUMsTUFBTSxDQUFDO2FBQ3hDLENBQUM7WUFFRixJQUFJLE1BQU0sSUFBSSxJQUFBLHdCQUFpQixFQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUN2QyxRQUFRLENBQUMsVUFBVSxHQUFHLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ25EO1lBRUQsT0FBTyxRQUFRLENBQUM7U0FDakI7UUFFRCxNQUFNLElBQUksYUFBYSxDQUFDLGtCQUFrQixDQUFDLENBQUM7S0FDN0M7SUFFRCxNQUFNLElBQUksYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0FBQzFDLENBQUMsQ0FBQztBQXhCVyxRQUFBLGVBQWUsbUJBd0IxQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQge3BhcnNlfSBmcm9tICd0cy1jb21tYW5kLWxpbmUtYXJncyc7XG5cbmltcG9ydCB7Y2hlY2tJZkZpbGVJc1lhbWx9IGZyb20gJy4veWFtbCc7XG5pbXBvcnQge0VSUk9SU30gZnJvbSAnLi9lcnJvcnMnO1xuaW1wb3J0IHtsb2dnZXJ9IGZyb20gJy4vbG9nZ2VyJztcblxuaW1wb3J0IHtDT05GSUcsIFNUUklOR1N9IGZyb20gJy4uL2NvbmZpZyc7XG5cbmltcG9ydCB7SUZEaWZmQXJncywgSUVBcmdzLCBQcm9jZXNzQXJnc091dHB1dHN9IGZyb20gJy4uL3R5cGVzL3Byb2Nlc3MtYXJncyc7XG5pbXBvcnQge0xvYWREaWZmUGFyYW1zfSBmcm9tICcuLi90eXBlcy91dGlsL2FyZ3MnO1xuXG5jb25zdCB7Q2xpSW5wdXRFcnJvcn0gPSBFUlJPUlM7XG5cbmNvbnN0IHtJRSwgSUZfRElGRn0gPSBDT05GSUc7XG5cbmNvbnN0IHtcbiAgRklMRV9JU19OT1RfWUFNTCxcbiAgTUFOSUZFU1RfSVNfTUlTU0lORyxcbiAgTk9fT1VUUFVULFxuICBTT1VSQ0VfSVNfTk9UX1lBTUwsXG4gIFRBUkdFVF9JU19OT1RfWUFNTCxcbiAgSU5WQUxJRF9UQVJHRVQsXG59ID0gU1RSSU5HUztcblxuLyoqXG4gKiBWYWxpZGF0ZXMgYGllYCBwcm9jZXNzIGFyZ3VtZW50cy5cbiAqL1xuY29uc3QgdmFsaWRhdGVBbmRQYXJzZVByb2Nlc3NBcmdzID0gKCkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBwYXJzZTxJRUFyZ3M+KElFLkFSR1MsIElFLkhFTFApO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgQ2xpSW5wdXRFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgICB9XG5cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuLyoqXG4gKiBQcmVwZW5kcyBwcm9jZXNzIHBhdGggdG8gZ2l2ZW4gYGZpbGVQYXRoYC5cbiAqL1xuY29uc3QgcHJlcGVuZEZ1bGxGaWxlUGF0aCA9IChmaWxlUGF0aDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHByb2Nlc3NSdW5uaW5nUGF0aCA9IHByb2Nlc3MuY3dkKCk7XG5cbiAgaWYgKHBhdGguaXNBYnNvbHV0ZShmaWxlUGF0aCkpIHtcbiAgICByZXR1cm4gZmlsZVBhdGg7XG4gIH1cblxuICByZXR1cm4gcGF0aC5ub3JtYWxpemUoYCR7cHJvY2Vzc1J1bm5pbmdQYXRofS8ke2ZpbGVQYXRofWApO1xufTtcblxuLyoqXG4gKiAxLiBQYXJzZXMgcHJvY2VzcyBhcmd1bWVudHMgbGlrZSBgbWFuaWZlc3RgLCBgb3V0cHV0YCwgYG92ZXJyaWRlLXBhcmFtc2AsIGBoZWxwYCBhbmQgYGRlYnVnYC5cbiAqIDIuIENoZWNrcyBpZiBgaGVscGAgcGFyYW0gaXMgcHJvdmlkZWQsIHRoZW4gbG9ncyBoZWxwIG1lc3NhZ2UgYW5kIGV4aXRzLlxuICogMy4gSWYgb3V0cHV0IHBhcmFtcyBhcmUgbWlzc2luZywgd2FybnMgdXNlciBhYm91dCBpdC5cbiAqIDMuIE90aGVyd2lzZSBjaGVja3MgaWYgYG1hbmlmZXN0YCBwYXJhbSBpcyB0aGVyZSwgdGhlbiBwcm9jZXNzZXMgd2l0aCBjaGVja2luZyBpZiBpdCdzIGEgeWFtbCBmaWxlLlxuICogICAgSWYgaXQgaXMsIHRoZW4gcmV0dXJucyBvYmplY3QgY29udGFpbmluZyBmdWxsIHBhdGguXG4gKiA0LiBJZiBwYXJhbXMgYXJlIG1pc3Npbmcgb3IgaW52YWxpZCwgdGhlbiByZWplY3RzIHdpdGggYENsaUlucHV0RXJyb3JgLlxuICovXG5leHBvcnQgY29uc3QgcGFyc2VJRVByb2Nlc3NBcmdzID0gKCk6IFByb2Nlc3NBcmdzT3V0cHV0cyA9PiB7XG4gIGNvbnN0IHtcbiAgICBtYW5pZmVzdCxcbiAgICBvdXRwdXQsXG4gICAgJ292ZXJyaWRlLXBhcmFtcyc6IG92ZXJyaWRlUGFyYW1zLFxuICAgIHN0ZG91dCxcbiAgICBkZWJ1ZyxcbiAgfSA9IHZhbGlkYXRlQW5kUGFyc2VQcm9jZXNzQXJncygpO1xuXG4gIGlmICghb3V0cHV0ICYmICFzdGRvdXQpIHtcbiAgICBsb2dnZXIud2FybihOT19PVVRQVVQpO1xuICB9XG5cbiAgaWYgKG1hbmlmZXN0KSB7XG4gICAgaWYgKGNoZWNrSWZGaWxlSXNZYW1sKG1hbmlmZXN0KSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaW5wdXRQYXRoOiBwcmVwZW5kRnVsbEZpbGVQYXRoKG1hbmlmZXN0KSxcbiAgICAgICAgb3V0cHV0T3B0aW9uczoge1xuICAgICAgICAgIC4uLihvdXRwdXQgJiYge291dHB1dFBhdGg6IHByZXBlbmRGdWxsRmlsZVBhdGgob3V0cHV0KX0pLFxuICAgICAgICAgIC4uLihzdGRvdXQgJiYge3N0ZG91dH0pLFxuICAgICAgICB9LFxuICAgICAgICAuLi4ob3ZlcnJpZGVQYXJhbXMgJiYge3BhcmFtUGF0aDogb3ZlcnJpZGVQYXJhbXN9KSxcbiAgICAgICAgZGVidWcsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHRocm93IG5ldyBDbGlJbnB1dEVycm9yKEZJTEVfSVNfTk9UX1lBTUwpO1xuICB9XG5cbiAgdGhyb3cgbmV3IENsaUlucHV0RXJyb3IoTUFOSUZFU1RfSVNfTUlTU0lORyk7XG59O1xuXG4vKiogLS0gSUYgRGlmZiAtLSAqL1xuXG4vKipcbiAqIFBhcnNlcyBgaWYtZGlmZmAgcHJvY2VzcyBhcmd1bWVudHMuXG4gKi9cbmNvbnN0IHZhbGlkYXRlQW5kUGFyc2VJZkRpZmZBcmdzID0gKCkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBwYXJzZTxJRkRpZmZBcmdzPihJRl9ESUZGLkFSR1MsIElGX0RJRkYuSEVMUCk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBDbGlJbnB1dEVycm9yKGVycm9yLm1lc3NhZ2UpO1xuICAgIH1cblxuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG4vKipcbiAqIENoZWNrcyBmb3IgYHNvdXJjZWAgYW5kIGB0YXJnZXRgIGZsYWdzIHRvIGJlIHByZXNlbnQuXG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZUlmRGlmZkFyZ3MgPSAoKSA9PiB7XG4gIGNvbnN0IHtzb3VyY2UsIHRhcmdldH0gPSB2YWxpZGF0ZUFuZFBhcnNlSWZEaWZmQXJncygpO1xuXG4gIGlmICh0YXJnZXQpIHtcbiAgICBpZiAoc291cmNlICYmICFjaGVja0lmRmlsZUlzWWFtbChzb3VyY2UpKSB7XG4gICAgICB0aHJvdyBuZXcgQ2xpSW5wdXRFcnJvcihTT1VSQ0VfSVNfTk9UX1lBTUwpO1xuICAgIH1cblxuICAgIGlmIChjaGVja0lmRmlsZUlzWWFtbCh0YXJnZXQpKSB7XG4gICAgICBjb25zdCByZXNwb25zZTogTG9hZERpZmZQYXJhbXMgPSB7XG4gICAgICAgIHRhcmdldFBhdGg6IHByZXBlbmRGdWxsRmlsZVBhdGgodGFyZ2V0KSxcbiAgICAgIH07XG5cbiAgICAgIGlmIChzb3VyY2UgJiYgY2hlY2tJZkZpbGVJc1lhbWwoc291cmNlKSkge1xuICAgICAgICByZXNwb25zZS5zb3VyY2VQYXRoID0gcHJlcGVuZEZ1bGxGaWxlUGF0aChzb3VyY2UpO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IENsaUlucHV0RXJyb3IoVEFSR0VUX0lTX05PVF9ZQU1MKTtcbiAgfVxuXG4gIHRocm93IG5ldyBDbGlJbnB1dEVycm9yKElOVkFMSURfVEFSR0VUKTtcbn07XG4iXX0=
|