@grnsft/if 0.4.0 → 0.5.0-beta.0
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/CONTRIBUTING.md +4 -5
- package/README.md +14 -33
- package/Refactor-migration-guide.md +5 -6
- package/build/builtins/coefficient/index.d.ts +1 -2
- package/build/builtins/coefficient/index.js +18 -4
- package/build/builtins/copy-param/index.d.ts +2 -0
- package/build/builtins/copy-param/index.js +68 -0
- package/build/builtins/csv-lookup/index.d.ts +1 -1
- package/build/builtins/csv-lookup/index.js +44 -37
- package/build/builtins/divide/index.d.ts +1 -1
- package/build/builtins/divide/index.js +22 -11
- package/build/builtins/exponent/index.d.ts +1 -2
- package/build/builtins/exponent/index.js +9 -23
- package/build/builtins/export-csv-raw.d.ts +4 -2
- package/build/builtins/export-csv-raw.js +7 -7
- package/build/builtins/export-csv.js +8 -11
- package/build/builtins/export-log.js +1 -1
- package/build/builtins/export-yaml.js +6 -6
- package/build/builtins/group-by.d.ts +1 -1
- package/build/builtins/group-by.js +5 -5
- package/build/builtins/index.d.ts +1 -0
- package/build/builtins/index.js +4 -2
- package/build/builtins/interpolation/index.d.ts +1 -1
- package/build/builtins/interpolation/index.js +10 -8
- package/build/builtins/mock-observations/helpers/common-generator.d.ts +2 -2
- package/build/builtins/mock-observations/helpers/common-generator.js +10 -13
- package/build/builtins/mock-observations/helpers/rand-int-generator.d.ts +2 -2
- package/build/builtins/mock-observations/helpers/rand-int-generator.js +14 -24
- package/build/builtins/mock-observations/index.d.ts +1 -2
- package/build/builtins/mock-observations/index.js +2 -4
- package/build/builtins/multiply/index.d.ts +1 -2
- package/build/builtins/multiply/index.js +10 -16
- package/build/builtins/regex/index.d.ts +1 -2
- package/build/builtins/regex/index.js +8 -12
- package/build/builtins/sci/index.d.ts +1 -2
- package/build/builtins/sci/index.js +23 -22
- package/build/builtins/sci-embodied/index.d.ts +1 -1
- package/build/builtins/sci-embodied/index.js +16 -17
- package/build/builtins/shell/index.d.ts +1 -2
- package/build/builtins/shell/index.js +4 -4
- package/build/builtins/subtract/index.d.ts +1 -2
- package/build/builtins/subtract/index.js +7 -23
- package/build/builtins/sum/index.d.ts +1 -2
- package/build/builtins/sum/index.js +14 -11
- package/build/builtins/time-sync.d.ts +1 -2
- package/build/builtins/time-sync.js +62 -67
- package/build/check.d.ts +2 -0
- package/build/check.js +85 -0
- package/build/config/config.d.ts +13 -1
- package/build/config/config.js +61 -1
- package/build/config/params.js +1 -6
- package/build/config/strings.d.ts +41 -5
- package/build/config/strings.js +46 -9
- package/build/diff.js +2 -2
- package/build/env.d.ts +2 -0
- package/build/env.js +38 -0
- package/build/lib/aggregate.js +1 -1
- package/build/lib/compute.js +1 -1
- package/build/lib/exhaust.js +4 -4
- package/build/lib/initialize.js +20 -24
- package/build/lib/load.js +4 -4
- package/build/types/compute.d.ts +1 -1
- package/build/types/compute.js +1 -1
- package/build/types/if-env.d.ts +8 -0
- package/build/types/if-env.js +3 -0
- package/build/types/interface.d.ts +1 -19
- package/build/types/interface.js +1 -1
- package/build/types/npm.d.ts +9 -0
- package/build/types/npm.js +3 -0
- package/build/types/process-args.d.ts +9 -0
- package/build/types/process-args.js +1 -1
- package/build/util/aggregation-helper.d.ts +1 -1
- package/build/util/aggregation-helper.js +5 -5
- package/build/util/args.d.ts +23 -1
- package/build/util/args.js +91 -14
- package/build/util/fs.d.ts +20 -0
- package/build/util/fs.js +94 -0
- package/build/util/helpers.d.ts +25 -5
- package/build/util/helpers.js +110 -15
- package/build/util/npm.d.ts +28 -0
- package/build/util/npm.js +152 -0
- package/build/util/plugin-storage.js +4 -4
- package/build/util/validations.js +4 -4
- package/jest.config.js +1 -1
- package/manifests/bugs/aggregation-error-wrong-metric.yml +73 -23
- package/manifests/bugs/azure-importer-ignoring-defaults.yml +6 -3
- package/manifests/bugs/azure-importer-incorrect-calculation.yml +6 -3
- package/manifests/bugs/initialize-error-no-config.yml +4 -5
- package/manifests/bugs/initialize-error-no-path.yml +9 -5
- package/manifests/bugs/input-error-missing-duration.yml +10 -6
- package/manifests/bugs/pipeline-error-naming-mismatch.yml +8 -4
- package/manifests/bugs/pipeline-error-uninitialized-plugin.yml +9 -5
- package/manifests/bugs/pipeline-ordering-error.yml +43 -34
- package/manifests/examples/copy.yaml +20 -0
- package/manifests/examples/generics.yml +48 -13
- package/manifests/examples/instance-metadata.yml +4 -4
- package/manifests/examples/mock-cpu-util-to-carbon.yml +8 -2
- package/manifests/examples/nesting.yml +82 -35
- package/manifests/examples/pipeline-teads-sci.yml +54 -18
- package/manifests/examples/pipeline-with-aggregate.yml +66 -24
- package/manifests/examples/pipeline-with-mocks.yml +65 -22
- package/manifests/examples/region-metadata.yml +26 -0
- package/manifests/examples/tdp-finder.yml +23 -0
- package/manifests/examples/zeros.yaml +130 -0
- package/manifests/features/{aggregate-failure-inalid-metrics.yml → aggregate-failure-invalid-metrics.yml} +9 -3
- package/manifests/features/aggregate-failure-missing-metric-in-inputs.yml +9 -3
- package/manifests/features/aggregate-horizontal.yml +8 -2
- package/manifests/features/aggregate-vertical.yml +8 -2
- package/manifests/features/aggregate.yml +8 -2
- package/manifests/integrations/{cloud-metadata-divide-boavizta.yml → cloud-metadata-divide.yml} +8 -9
- package/manifests/integrations/instance-metadata/failure-invalid-instance-type.yaml +33 -0
- package/manifests/integrations/instance-metadata/failure-invalid-provider.yaml +33 -0
- package/manifests/integrations/instance-metadata/failure-missing-queried-input.yml +33 -0
- package/manifests/integrations/instance-metadata/success.yml +33 -0
- package/manifests/integrations/mock-obs-group-by-cloud-meta.yml +8 -2
- package/manifests/integrations/mock-obs-time-sync.yml +50 -5
- package/manifests/plugins/{cloud-metadata → csv-lookup/cloud-metadata}/failure-invalid-instance-type.yaml +9 -3
- package/manifests/plugins/{cloud-metadata → csv-lookup/cloud-metadata}/failure-invalid-vendor.yaml +8 -2
- package/manifests/plugins/{cloud-metadata → csv-lookup/cloud-metadata}/failure-missing-cloud-vendor.yml +9 -3
- package/manifests/plugins/{cloud-metadata → csv-lookup/cloud-metadata}/success.yml +8 -2
- package/manifests/plugins/csv-lookup/{success.yml → region-metadata/success.yml} +1 -1
- package/manifests/plugins/csv-lookup/tdp-finder/failure-missing-input-param.yml +23 -0
- package/manifests/plugins/csv-lookup/tdp-finder/failure-unsupported-physical-processor.yml +24 -0
- package/manifests/plugins/csv-lookup/tdp-finder/success.yml +24 -0
- package/manifests/plugins/divide/failure-denominator-equal-zero.yml +8 -9
- package/manifests/plugins/divide/failure-invalid-config-denominator.yml +8 -9
- package/manifests/plugins/divide/failure-missing-numerator.yml +8 -9
- package/manifests/plugins/divide/success.yml +9 -10
- package/manifests/plugins/exponent/success.yml +26 -0
- package/manifests/plugins/interpolation/success.yml +24 -0
- package/manifests/plugins/sci/failure-missing-input-param.yml +2 -6
- package/manifests/plugins/sci/success.yml +0 -3
- package/manifests/plugins/subtract/success.yml +25 -0
- package/manifests/plugins/sum/success.yml +1 -1
- package/package.json +10 -4
- package/src/__mocks__/mock-manifest.yaml +72 -0
- package/src/builtins/README.md +1 -1
- package/src/builtins/coefficient/README.md +19 -1
- package/src/builtins/copy-param/README.md +104 -0
- package/src/builtins/csv-lookup/README.md +39 -1
- package/src/builtins/divide/README.md +29 -3
- package/src/builtins/exponent/README.md +21 -1
- package/src/builtins/interpolation/README.md +29 -1
- package/src/builtins/mock-observations/README.md +1 -1
- package/src/builtins/multiply/README.md +16 -1
- package/src/builtins/regex/README.md +32 -2
- package/src/builtins/sci/README.md +24 -1
- package/src/builtins/sci-embodied/README.md +15 -1
- package/src/builtins/shell/README.md +12 -1
- package/src/builtins/subtract/README.md +12 -1
- package/src/builtins/sum/README.md +28 -1
- package/src/config/env-template.yml +24 -0
- package/build/builtins/coefficient/types.d.ts +0 -5
- package/build/builtins/coefficient/types.js +0 -3
- package/build/builtins/exponent/types.d.ts +0 -5
- package/build/builtins/exponent/types.js +0 -3
- package/build/builtins/interpolation/types.d.ts +0 -5
- package/build/builtins/interpolation/types.js +0 -10
- package/build/builtins/mock-observations/types.d.ts +0 -13
- package/build/builtins/mock-observations/types.js +0 -3
- package/build/builtins/multiply/types.d.ts +0 -4
- package/build/builtins/multiply/types.js +0 -3
- package/build/builtins/subtract/types.d.ts +0 -4
- package/build/builtins/subtract/types.js +0 -3
- package/build/builtins/sum/types.d.ts +0 -4
- package/build/builtins/sum/types.js +0 -3
- package/build/types/common.d.ts +0 -4
- package/build/types/common.js +0 -3
- package/build/types/group-by.d.ts +0 -3
- package/build/types/group-by.js +0 -3
- package/build/types/helpers.d.ts +0 -4
- package/build/types/helpers.js +0 -3
- package/build/util/errors.d.ts +0 -6
- package/build/util/errors.js +0 -33
- package/manifests/examples/basic.yml +0 -28
- package/manifests/plugins/tdp-finder/failure-missing-input-param.yml +0 -18
- package/manifests/plugins/tdp-finder/failure-unsupported-physical-processor.yml +0 -19
- package/manifests/plugins/tdp-finder/success.yml +0 -19
- /package/manifests/plugins/csv-lookup/{failure-missing-column.yml → region-metadata/failure-missing-column.yml} +0 -0
- /package/manifests/plugins/csv-lookup/{failure-missing-output.yml → region-metadata/failure-missing-output.yml} +0 -0
- /package/manifests/plugins/csv-lookup/{success-renaming.yml → region-metadata/success-renaming.yml} +0 -0
package/build/lib/initialize.js
CHANGED
|
@@ -24,27 +24,23 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.initialize = void 0;
|
|
27
|
-
const
|
|
28
|
-
const
|
|
27
|
+
const path = __importStar(require("node:path"));
|
|
28
|
+
const utils_1 = require("@grnsft/if-core/utils");
|
|
29
29
|
const logger_1 = require("../util/logger");
|
|
30
30
|
const log_memoize_1 = require("../util/log-memoize");
|
|
31
31
|
const plugin_storage_1 = require("../util/plugin-storage");
|
|
32
32
|
const config_1 = require("../config");
|
|
33
|
-
const {
|
|
33
|
+
const { PluginInitializationError, MissingPluginMethodError, MissingPluginPathError, } = utils_1.ERRORS;
|
|
34
34
|
const { GITHUB_PATH, NATIVE_PLUGIN } = config_1.CONFIG;
|
|
35
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
|
*/
|
|
39
39
|
const importModuleFrom = async (path) => {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
catch (error) {
|
|
45
|
-
logger_1.logger.error(error);
|
|
46
|
-
throw new ModuleInitializationError(INVALID_MODULE_PATH(path));
|
|
47
|
-
}
|
|
40
|
+
const module = await Promise.resolve(`${path}`).then(s => __importStar(require(s))).catch(error => {
|
|
41
|
+
throw new PluginInitializationError(INVALID_MODULE_PATH(path, error));
|
|
42
|
+
});
|
|
43
|
+
return module;
|
|
48
44
|
};
|
|
49
45
|
/**
|
|
50
46
|
* Imports `module` from given `path`, then checks if it's `ModelPluginInterface` extension.
|
|
@@ -58,21 +54,21 @@ const importAndVerifyModule = async (method, path) => {
|
|
|
58
54
|
* Then checks if `path` is starting with github, then grabs the repository name.
|
|
59
55
|
* Imports module, then checks if it's a valid plugin.
|
|
60
56
|
*/
|
|
61
|
-
const handModule = (method,
|
|
62
|
-
console.debug(LOADING_PLUGIN_FROM_PATH(method,
|
|
63
|
-
if (
|
|
64
|
-
|
|
57
|
+
const handModule = (method, pluginPath) => {
|
|
58
|
+
console.debug(LOADING_PLUGIN_FROM_PATH(method, pluginPath));
|
|
59
|
+
if (pluginPath === 'builtin') {
|
|
60
|
+
pluginPath = path.normalize(`${__dirname}/../builtins`);
|
|
65
61
|
}
|
|
66
62
|
else {
|
|
67
|
-
if (
|
|
68
|
-
const parts =
|
|
69
|
-
|
|
63
|
+
if (pluginPath?.startsWith(GITHUB_PATH)) {
|
|
64
|
+
const parts = pluginPath.split('/');
|
|
65
|
+
pluginPath = parts[parts.length - 1];
|
|
70
66
|
}
|
|
71
|
-
if (!
|
|
72
|
-
(0, log_memoize_1.memoizedLog)(logger_1.logger.warn, NOT_NATIVE_PLUGIN(
|
|
67
|
+
if (!pluginPath.includes(NATIVE_PLUGIN)) {
|
|
68
|
+
(0, log_memoize_1.memoizedLog)(logger_1.logger.warn, NOT_NATIVE_PLUGIN(pluginPath));
|
|
73
69
|
}
|
|
74
70
|
}
|
|
75
|
-
return importAndVerifyModule(method,
|
|
71
|
+
return importAndVerifyModule(method, pluginPath);
|
|
76
72
|
};
|
|
77
73
|
/**
|
|
78
74
|
* Initializes plugin with global config.
|
|
@@ -81,10 +77,10 @@ const initPlugin = async (initPluginParams) => {
|
|
|
81
77
|
const { method, path, 'global-config': globalConfig } = initPluginParams;
|
|
82
78
|
console.debug(INITIALIZING_PLUGIN(method));
|
|
83
79
|
if (!method) {
|
|
84
|
-
throw new
|
|
80
|
+
throw new MissingPluginMethodError(MISSING_METHOD);
|
|
85
81
|
}
|
|
86
82
|
if (!path) {
|
|
87
|
-
throw new
|
|
83
|
+
throw new MissingPluginPathError(MISSING_PATH);
|
|
88
84
|
}
|
|
89
85
|
const plugin = await handModule(method, path);
|
|
90
86
|
return plugin(globalConfig);
|
|
@@ -102,4 +98,4 @@ const initialize = async (plugins) => {
|
|
|
102
98
|
return storage;
|
|
103
99
|
};
|
|
104
100
|
exports.initialize = initialize;
|
|
105
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
101
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5pdGlhbGl6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvaW5pdGlhbGl6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGdEQUFrQztBQUVsQyxpREFBNkM7QUFFN0MsMkNBQXNDO0FBQ3RDLHFEQUFnRDtBQUNoRCwyREFBcUQ7QUFFckQsc0NBQTBDO0FBTTFDLE1BQU0sRUFDSix5QkFBeUIsRUFDekIsd0JBQXdCLEVBQ3hCLHNCQUFzQixHQUN2QixHQUFHLGNBQU0sQ0FBQztBQUVYLE1BQU0sRUFBQyxXQUFXLEVBQUUsYUFBYSxFQUFDLEdBQUcsZUFBTSxDQUFDO0FBQzVDLE1BQU0sRUFDSixjQUFjLEVBQ2QsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixtQkFBbUIsRUFDbkIsd0JBQXdCLEVBQ3hCLG1CQUFtQixFQUNuQixvQkFBb0IsR0FDckIsR0FBRyxnQkFBTyxDQUFDO0FBRVo7O0dBRUc7QUFDSCxNQUFNLGdCQUFnQixHQUFHLEtBQUssRUFBRSxJQUFZLEVBQUUsRUFBRTtJQUM5QyxNQUFNLE1BQU0sR0FBRyxNQUFNLG1CQUFPLElBQUksd0NBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQzlDLE1BQU0sSUFBSSx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN4RSxDQUFDLENBQUMsQ0FBQztJQUVILE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLEVBQUUsTUFBYyxFQUFFLElBQVksRUFBRSxFQUFFO0lBQ25FLE1BQU0sWUFBWSxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFbEQsT0FBTyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDOUIsQ0FBQyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxHQUFHLENBQUMsTUFBYyxFQUFFLFVBQWtCLEVBQUUsRUFBRTtJQUN4RCxPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBRTVELElBQUksVUFBVSxLQUFLLFNBQVMsRUFBRTtRQUM1QixVQUFVLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLFNBQVMsY0FBYyxDQUFDLENBQUM7S0FDekQ7U0FBTTtRQUNMLElBQUksVUFBVSxFQUFFLFVBQVUsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUN2QyxNQUFNLEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3BDLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztTQUN0QztRQUVELElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQ3ZDLElBQUEseUJBQVcsRUFBQyxlQUFNLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7U0FDekQ7S0FDRjtJQUVELE9BQU8scUJBQXFCLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0FBQ25ELENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxVQUFVLEdBQUcsS0FBSyxFQUN0QixnQkFBK0IsRUFDTCxFQUFFO0lBQzVCLE1BQU0sRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUMsR0FBRyxnQkFBZ0IsQ0FBQztJQUV2RSxPQUFPLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFM0MsSUFBSSxDQUFDLE1BQU0sRUFBRTtRQUNYLE1BQU0sSUFBSSx3QkFBd0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztLQUNwRDtJQUVELElBQUksQ0FBQyxJQUFJLEVBQUU7UUFDVCxNQUFNLElBQUksc0JBQXNCLENBQUMsWUFBWSxDQUFDLENBQUM7S0FDaEQ7SUFFRCxNQUFNLE1BQU0sR0FBRyxNQUFNLFVBQVUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFFOUMsT0FBTyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDOUIsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSSxNQUFNLFVBQVUsR0FBRyxLQUFLLEVBQzdCLE9BQXNCLEVBQ1csRUFBRTtJQUNuQyxPQUFPLENBQUMsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFFcEMsTUFBTSxPQUFPLEdBQUcsSUFBQSw4QkFBYSxHQUFFLENBQUM7SUFFaEMsSUFBSSxLQUFLLEVBQUUsTUFBTSxVQUFVLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRTtRQUNuRCxNQUFNLE1BQU0sR0FBRyxNQUFNLFVBQVUsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUNyRCxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUNqQztJQUVELE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUMsQ0FBQztBQWJXLFFBQUEsVUFBVSxjQWFyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSAnbm9kZTpwYXRoJztcblxuaW1wb3J0IHtFUlJPUlN9IGZyb20gJ0Bncm5zZnQvaWYtY29yZS91dGlscyc7XG5cbmltcG9ydCB7bG9nZ2VyfSBmcm9tICcuLi91dGlsL2xvZ2dlcic7XG5pbXBvcnQge21lbW9pemVkTG9nfSBmcm9tICcuLi91dGlsL2xvZy1tZW1vaXplJztcbmltcG9ydCB7cGx1Z2luU3RvcmFnZX0gZnJvbSAnLi4vdXRpbC9wbHVnaW4tc3RvcmFnZSc7XG5cbmltcG9ydCB7Q09ORklHLCBTVFJJTkdTfSBmcm9tICcuLi9jb25maWcnO1xuXG5pbXBvcnQge1BsdWdpbkludGVyZmFjZX0gZnJvbSAnLi4vdHlwZXMvaW50ZXJmYWNlJztcbmltcG9ydCB7R2xvYmFsUGx1Z2lucywgUGx1Z2luT3B0aW9uc30gZnJvbSAnLi4vdHlwZXMvbWFuaWZlc3QnO1xuaW1wb3J0IHtQbHVnaW5TdG9yYWdlSW50ZXJmYWNlfSBmcm9tICcuLi90eXBlcy9wbHVnaW4tc3RvcmFnZSc7XG5cbmNvbnN0IHtcbiAgUGx1Z2luSW5pdGlhbGl6YXRpb25FcnJvcixcbiAgTWlzc2luZ1BsdWdpbk1ldGhvZEVycm9yLFxuICBNaXNzaW5nUGx1Z2luUGF0aEVycm9yLFxufSA9IEVSUk9SUztcblxuY29uc3Qge0dJVEhVQl9QQVRILCBOQVRJVkVfUExVR0lOfSA9IENPTkZJRztcbmNvbnN0IHtcbiAgTUlTU0lOR19NRVRIT0QsXG4gIE1JU1NJTkdfUEFUSCxcbiAgTk9UX05BVElWRV9QTFVHSU4sXG4gIElOVkFMSURfTU9EVUxFX1BBVEgsXG4gIExPQURJTkdfUExVR0lOX0ZST01fUEFUSCxcbiAgSU5JVElBTElaSU5HX1BMVUdJTixcbiAgSU5JVElBTElaSU5HX1BMVUdJTlMsXG59ID0gU1RSSU5HUztcblxuLyoqXG4gKiBJbXBvcnRzIG1vZHVsZSBieSBnaXZlbiBgcGF0aGAuXG4gKi9cbmNvbnN0IGltcG9ydE1vZHVsZUZyb20gPSBhc3luYyAocGF0aDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IG1vZHVsZSA9IGF3YWl0IGltcG9ydChwYXRoKS5jYXRjaChlcnJvciA9PiB7XG4gICAgdGhyb3cgbmV3IFBsdWdpbkluaXRpYWxpemF0aW9uRXJyb3IoSU5WQUxJRF9NT0RVTEVfUEFUSChwYXRoLCBlcnJvcikpO1xuICB9KTtcblxuICByZXR1cm4gbW9kdWxlO1xufTtcblxuLyoqXG4gKiBJbXBvcnRzIGBtb2R1bGVgIGZyb20gZ2l2ZW4gYHBhdGhgLCB0aGVuIGNoZWNrcyBpZiBpdCdzIGBNb2RlbFBsdWdpbkludGVyZmFjZWAgZXh0ZW5zaW9uLlxuICovXG5jb25zdCBpbXBvcnRBbmRWZXJpZnlNb2R1bGUgPSBhc3luYyAobWV0aG9kOiBzdHJpbmcsIHBhdGg6IHN0cmluZykgPT4ge1xuICBjb25zdCBwbHVnaW5Nb2R1bGUgPSBhd2FpdCBpbXBvcnRNb2R1bGVGcm9tKHBhdGgpO1xuXG4gIHJldHVybiBwbHVnaW5Nb2R1bGVbbWV0aG9kXTtcbn07XG5cbi8qKlxuICogQ2hlY2tzIGlmIHBsdWdpbiBpcyBtaXNzaW5nIHRoZW4gcmVqZWN0cyB3aXRoIGVycm9yLlxuICogVGhlbiBjaGVja3MgaWYgYHBhdGhgIGlzIHN0YXJ0aW5nIHdpdGggZ2l0aHViLCB0aGVuIGdyYWJzIHRoZSByZXBvc2l0b3J5IG5hbWUuXG4gKiBJbXBvcnRzIG1vZHVsZSwgdGhlbiBjaGVja3MgaWYgaXQncyBhIHZhbGlkIHBsdWdpbi5cbiAqL1xuY29uc3QgaGFuZE1vZHVsZSA9IChtZXRob2Q6IHN0cmluZywgcGx1Z2luUGF0aDogc3RyaW5nKSA9PiB7XG4gIGNvbnNvbGUuZGVidWcoTE9BRElOR19QTFVHSU5fRlJPTV9QQVRIKG1ldGhvZCwgcGx1Z2luUGF0aCkpO1xuXG4gIGlmIChwbHVnaW5QYXRoID09PSAnYnVpbHRpbicpIHtcbiAgICBwbHVnaW5QYXRoID0gcGF0aC5ub3JtYWxpemUoYCR7X19kaXJuYW1lfS8uLi9idWlsdGluc2ApO1xuICB9IGVsc2Uge1xuICAgIGlmIChwbHVnaW5QYXRoPy5zdGFydHNXaXRoKEdJVEhVQl9QQVRIKSkge1xuICAgICAgY29uc3QgcGFydHMgPSBwbHVnaW5QYXRoLnNwbGl0KCcvJyk7XG4gICAgICBwbHVnaW5QYXRoID0gcGFydHNbcGFydHMubGVuZ3RoIC0gMV07XG4gICAgfVxuXG4gICAgaWYgKCFwbHVnaW5QYXRoLmluY2x1ZGVzKE5BVElWRV9QTFVHSU4pKSB7XG4gICAgICBtZW1vaXplZExvZyhsb2dnZXIud2FybiwgTk9UX05BVElWRV9QTFVHSU4ocGx1Z2luUGF0aCkpO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBpbXBvcnRBbmRWZXJpZnlNb2R1bGUobWV0aG9kLCBwbHVnaW5QYXRoKTtcbn07XG5cbi8qKlxuICogSW5pdGlhbGl6ZXMgcGx1Z2luIHdpdGggZ2xvYmFsIGNvbmZpZy5cbiAqL1xuY29uc3QgaW5pdFBsdWdpbiA9IGFzeW5jIChcbiAgaW5pdFBsdWdpblBhcmFtczogUGx1Z2luT3B0aW9uc1xuKTogUHJvbWlzZTxQbHVnaW5JbnRlcmZhY2U+ID0+IHtcbiAgY29uc3Qge21ldGhvZCwgcGF0aCwgJ2dsb2JhbC1jb25maWcnOiBnbG9iYWxDb25maWd9ID0gaW5pdFBsdWdpblBhcmFtcztcblxuICBjb25zb2xlLmRlYnVnKElOSVRJQUxJWklOR19QTFVHSU4obWV0aG9kKSk7XG5cbiAgaWYgKCFtZXRob2QpIHtcbiAgICB0aHJvdyBuZXcgTWlzc2luZ1BsdWdpbk1ldGhvZEVycm9yKE1JU1NJTkdfTUVUSE9EKTtcbiAgfVxuXG4gIGlmICghcGF0aCkge1xuICAgIHRocm93IG5ldyBNaXNzaW5nUGx1Z2luUGF0aEVycm9yKE1JU1NJTkdfUEFUSCk7XG4gIH1cblxuICBjb25zdCBwbHVnaW4gPSBhd2FpdCBoYW5kTW9kdWxlKG1ldGhvZCwgcGF0aCk7XG5cbiAgcmV0dXJuIHBsdWdpbihnbG9iYWxDb25maWcpO1xufTtcblxuLyoqXG4gKiBSZWdpc3RlcnMgYWxsIHBsdWdpbnMgZnJvbSBgbWFuaWZlc3RgLmBpbml0aWFsaXplYCBwcm9wZXJ0eS5cbiAqL1xuZXhwb3J0IGNvbnN0IGluaXRpYWxpemUgPSBhc3luYyAoXG4gIHBsdWdpbnM6IEdsb2JhbFBsdWdpbnNcbik6IFByb21pc2U8UGx1Z2luU3RvcmFnZUludGVyZmFjZT4gPT4ge1xuICBjb25zb2xlLmRlYnVnKElOSVRJQUxJWklOR19QTFVHSU5TKTtcblxuICBjb25zdCBzdG9yYWdlID0gcGx1Z2luU3RvcmFnZSgpO1xuXG4gIGZvciBhd2FpdCAoY29uc3QgcGx1Z2luTmFtZSBvZiBPYmplY3Qua2V5cyhwbHVnaW5zKSkge1xuICAgIGNvbnN0IHBsdWdpbiA9IGF3YWl0IGluaXRQbHVnaW4ocGx1Z2luc1twbHVnaW5OYW1lXSk7XG4gICAgc3RvcmFnZS5zZXQocGx1Z2luTmFtZSwgcGx1Z2luKTtcbiAgfVxuXG4gIHJldHVybiBzdG9yYWdlO1xufTtcbiJdfQ==
|
package/build/lib/load.js
CHANGED
|
@@ -25,12 +25,12 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
exports.loadIfDiffFiles = exports.load = void 0;
|
|
27
27
|
const YAML = __importStar(require("js-yaml"));
|
|
28
|
-
const
|
|
28
|
+
const utils_1 = require("@grnsft/if-core/utils");
|
|
29
29
|
const yaml_1 = require("../util/yaml");
|
|
30
30
|
const json_1 = require("../util/json");
|
|
31
31
|
const config_1 = require("../config");
|
|
32
32
|
const config_2 = require("../config");
|
|
33
|
-
const {
|
|
33
|
+
const { CliSourceFileError } = utils_1.ERRORS;
|
|
34
34
|
const { INVALID_SOURCE, LOADING_MANIFEST } = config_2.STRINGS;
|
|
35
35
|
/**
|
|
36
36
|
* Parses manifest file as an object. Checks if parameter file is passed via CLI, then loads it too.
|
|
@@ -55,7 +55,7 @@ exports.load = load;
|
|
|
55
55
|
const loadIfDiffFiles = async (params) => {
|
|
56
56
|
const { sourcePath, targetPath, pipedSourceManifest } = params;
|
|
57
57
|
if (!sourcePath && !pipedSourceManifest) {
|
|
58
|
-
throw new
|
|
58
|
+
throw new CliSourceFileError(INVALID_SOURCE);
|
|
59
59
|
}
|
|
60
60
|
const loadFromSource = sourcePath && (await (0, yaml_1.openYamlFileAsObject)(sourcePath));
|
|
61
61
|
const loadFromSTDIN = pipedSourceManifest && (await YAML.load(pipedSourceManifest));
|
|
@@ -67,4 +67,4 @@ const loadIfDiffFiles = async (params) => {
|
|
|
67
67
|
};
|
|
68
68
|
};
|
|
69
69
|
exports.loadIfDiffFiles = loadIfDiffFiles;
|
|
70
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9saWIvbG9hZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhDQUFnQztBQUNoQyxpREFBNkM7QUFFN0MsdUNBQWtEO0FBQ2xELHVDQUE4QztBQUU5QyxzQ0FBcUM7QUFDckMsc0NBQWtDO0FBTWxDLE1BQU0sRUFBQyxrQkFBa0IsRUFBQyxHQUFHLGNBQU0sQ0FBQztBQUVwQyxNQUFNLEVBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFDLEdBQUcsZ0JBQU8sQ0FBQztBQUVuRDs7O0dBR0c7QUFDSSxNQUFNLElBQUksR0FBRyxLQUFLLEVBQUUsU0FBaUIsRUFBRSxTQUFrQixFQUFFLEVBQUU7SUFDbEUsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRWhDLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBQSwyQkFBb0IsRUFBTSxTQUFTLENBQUMsQ0FBQztJQUMvRCxNQUFNLGlCQUFpQixHQUNyQixTQUFTO1FBQ1QsQ0FBQyxNQUFNLElBQUEsdUJBQWdCLEVBQWEsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLDBCQUEwQjtJQUM3RSxNQUFNLFVBQVUsR0FDZCxpQkFBaUI7UUFDakIsbUJBQVUsQ0FBQyxDQUFDLGdFQUFnRTtJQUU5RSxPQUFPO1FBQ0wsV0FBVztRQUNYLFVBQVU7S0FDWCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBZlcsUUFBQSxJQUFJLFFBZWY7QUFFRjs7R0FFRztBQUNJLE1BQU0sZUFBZSxHQUFHLEtBQUssRUFBRSxNQUFzQixFQUFFLEVBQUU7SUFDOUQsTUFBTSxFQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsbUJBQW1CLEVBQUMsR0FBRyxNQUFNLENBQUM7SUFFN0QsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1FBQ3ZDLE1BQU0sSUFBSSxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsQ0FBQztLQUM5QztJQUVELE1BQU0sY0FBYyxHQUNsQixVQUFVLElBQUksQ0FBQyxNQUFNLElBQUEsMkJBQW9CLEVBQVcsVUFBVyxDQUFDLENBQUMsQ0FBQztJQUNwRSxNQUFNLGFBQWEsR0FDakIsbUJBQW1CLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsbUJBQW9CLENBQUMsQ0FBQyxDQUFDO0lBRWpFLE1BQU0saUJBQWlCLEdBQUcsY0FBYyxJQUFJLGFBQWEsQ0FBQztJQUMxRCxNQUFNLGlCQUFpQixHQUFHLE1BQU0sSUFBQSwyQkFBb0IsRUFBVyxVQUFVLENBQUMsQ0FBQztJQUUzRSxPQUFPO1FBQ0wsaUJBQWlCO1FBQ2pCLGlCQUFpQjtLQUNsQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBbkJXLFFBQUEsZUFBZSxtQkFtQjFCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgWUFNTCBmcm9tICdqcy15YW1sJztcbmltcG9ydCB7RVJST1JTfSBmcm9tICdAZ3Juc2Z0L2lmLWNvcmUvdXRpbHMnO1xuXG5pbXBvcnQge29wZW5ZYW1sRmlsZUFzT2JqZWN0fSBmcm9tICcuLi91dGlsL3lhbWwnO1xuaW1wb3J0IHtyZWFkQW5kUGFyc2VKc29ufSBmcm9tICcuLi91dGlsL2pzb24nO1xuXG5pbXBvcnQge1BBUkFNRVRFUlN9IGZyb20gJy4uL2NvbmZpZyc7XG5pbXBvcnQge1NUUklOR1N9IGZyb20gJy4uL2NvbmZpZyc7XG5cbmltcG9ydCB7UGFyYW1ldGVyc30gZnJvbSAnLi4vdHlwZXMvcGFyYW1ldGVycyc7XG5pbXBvcnQge0xvYWREaWZmUGFyYW1zfSBmcm9tICcuLi90eXBlcy91dGlsL2FyZ3MnO1xuaW1wb3J0IHtNYW5pZmVzdH0gZnJvbSAnLi4vdHlwZXMvbWFuaWZlc3QnO1xuXG5jb25zdCB7Q2xpU291cmNlRmlsZUVycm9yfSA9IEVSUk9SUztcblxuY29uc3Qge0lOVkFMSURfU09VUkNFLCBMT0FESU5HX01BTklGRVNUfSA9IFNUUklOR1M7XG5cbi8qKlxuICogUGFyc2VzIG1hbmlmZXN0IGZpbGUgYXMgYW4gb2JqZWN0LiBDaGVja3MgaWYgcGFyYW1ldGVyIGZpbGUgaXMgcGFzc2VkIHZpYSBDTEksIHRoZW4gbG9hZHMgaXQgdG9vLlxuICogUmV0dXJucyBjb250ZXh0LCB0cmVlIGFuZCBwYXJhbWV0ZXJzIChlaXRoZXIgdGhlIGRlZmF1bHQgb25lLCBvciBmcm9tIENMSSkuXG4gKi9cbmV4cG9ydCBjb25zdCBsb2FkID0gYXN5bmMgKGlucHV0UGF0aDogc3RyaW5nLCBwYXJhbVBhdGg/OiBzdHJpbmcpID0+IHtcbiAgY29uc29sZS5kZWJ1ZyhMT0FESU5HX01BTklGRVNUKTtcblxuICBjb25zdCByYXdNYW5pZmVzdCA9IGF3YWl0IG9wZW5ZYW1sRmlsZUFzT2JqZWN0PGFueT4oaW5wdXRQYXRoKTtcbiAgY29uc3QgcGFyYW1ldGVyc0Zyb21DbGkgPVxuICAgIHBhcmFtUGF0aCAmJlxuICAgIChhd2FpdCByZWFkQW5kUGFyc2VKc29uPFBhcmFtZXRlcnM+KHBhcmFtUGF0aCkpOyAvKiogQHRvZG8gdmFsaWRhdGUganNvbiAqL1xuICBjb25zdCBwYXJhbWV0ZXJzID1cbiAgICBwYXJhbWV0ZXJzRnJvbUNsaSB8fFxuICAgIFBBUkFNRVRFUlM7IC8qKiBAdG9kbyBQQVJBTUVURVJTIHNob3VsZCBiZSBzcGVjaWZpZWQgaW4gcGFyYW1ldGVyaXplIG9ubHkgKi9cblxuICByZXR1cm4ge1xuICAgIHJhd01hbmlmZXN0LFxuICAgIHBhcmFtZXRlcnMsXG4gIH07XG59O1xuXG4vKipcbiAqIExvYWRzIGZpbGVzIHRvIGNvbXBhcmUuIEFzIGEgc291cmNlIGZpbGUgY2hlY2tzIGlmIGRhdGEgaXMgcGlwZWQgYW5kIHRoZW4gZGVjaWRlcyB3aGljaCBvbmUgdG8gdGFrZS5cbiAqL1xuZXhwb3J0IGNvbnN0IGxvYWRJZkRpZmZGaWxlcyA9IGFzeW5jIChwYXJhbXM6IExvYWREaWZmUGFyYW1zKSA9PiB7XG4gIGNvbnN0IHtzb3VyY2VQYXRoLCB0YXJnZXRQYXRoLCBwaXBlZFNvdXJjZU1hbmlmZXN0fSA9IHBhcmFtcztcblxuICBpZiAoIXNvdXJjZVBhdGggJiYgIXBpcGVkU291cmNlTWFuaWZlc3QpIHtcbiAgICB0aHJvdyBuZXcgQ2xpU291cmNlRmlsZUVycm9yKElOVkFMSURfU09VUkNFKTtcbiAgfVxuXG4gIGNvbnN0IGxvYWRGcm9tU291cmNlID1cbiAgICBzb3VyY2VQYXRoICYmIChhd2FpdCBvcGVuWWFtbEZpbGVBc09iamVjdDxNYW5pZmVzdD4oc291cmNlUGF0aCEpKTtcbiAgY29uc3QgbG9hZEZyb21TVERJTiA9XG4gICAgcGlwZWRTb3VyY2VNYW5pZmVzdCAmJiAoYXdhaXQgWUFNTC5sb2FkKHBpcGVkU291cmNlTWFuaWZlc3QhKSk7XG5cbiAgY29uc3QgcmF3U291cmNlTWFuaWZlc3QgPSBsb2FkRnJvbVNvdXJjZSB8fCBsb2FkRnJvbVNURElOO1xuICBjb25zdCByYXdUYXJnZXRNYW5pZmVzdCA9IGF3YWl0IG9wZW5ZYW1sRmlsZUFzT2JqZWN0PE1hbmlmZXN0Pih0YXJnZXRQYXRoKTtcblxuICByZXR1cm4ge1xuICAgIHJhd1NvdXJjZU1hbmlmZXN0LFxuICAgIHJhd1RhcmdldE1hbmlmZXN0LFxuICB9O1xufTtcbiJdfQ==
|
package/build/types/compute.d.ts
CHANGED
package/build/types/compute.js
CHANGED
|
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9jb21wdXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BsdWdpblBhcmFtc30gZnJvbSAnQGdybnNmdC9pZi1jb3JlL3R5cGVzJztcblxuaW1wb3J0IHtDb250ZXh0fSBmcm9tICcuL21hbmlmZXN0JztcbmltcG9ydCB7UGx1Z2luU3RvcmFnZUludGVyZmFjZX0gZnJvbSAnLi9wbHVnaW4tc3RvcmFnZSc7XG5cbmV4cG9ydCB0eXBlIE5vZGVDb25maWcgPSB7XG4gIFtrZXk6IHN0cmluZ106IFJlY29yZDxzdHJpbmcsIGFueT47XG59O1xuXG5leHBvcnQgdHlwZSBQYXJhbXMgPSB7XG4gIHBsdWdpblN0b3JhZ2U6IFBsdWdpblN0b3JhZ2VJbnRlcmZhY2U7XG4gIGNvbnRleHQ6IENvbnRleHQ7XG4gIHBpcGVsaW5lPzogc3RyaW5nW107XG4gIGNvbmZpZz86IE5vZGVDb25maWc7XG4gIGRlZmF1bHRzPzogUGx1Z2luUGFyYW1zO1xufTtcblxuZXhwb3J0IHR5cGUgTm9kZSA9IHtcbiAgY2hpbGRyZW4/OiBhbnk7XG4gIHBpcGVsaW5lPzogc3RyaW5nW107XG4gIGNvbmZpZz86IE5vZGVDb25maWc7XG4gIGRlZmF1bHRzPzogUGx1Z2luUGFyYW1zO1xuICBpbnB1dHM/OiBQbHVnaW5QYXJhbXNbXTtcbiAgb3V0cHV0cz86IFBsdWdpblBhcmFtc1tdO1xufTtcblxuZXhwb3J0IHR5cGUgQ29tcHV0ZVBhcmFtcyA9IHtcbiAgY29udGV4dDogQ29udGV4dDtcbiAgcGx1Z2luU3RvcmFnZTogUGx1Z2luU3RvcmFnZUludGVyZmFjZTtcbn07XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWYtZW52LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2lmLWVudi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgRW52aXJvbm1lbnRPcHRpb25zID0ge1xuICBmb2xkZXJQYXRoOiBzdHJpbmc7XG4gIGluc3RhbGw6IGJvb2xlYW47XG4gIGN3ZDogYm9vbGVhbjtcbiAgZGVwZW5kZW5jaWVzOiB7W3BhdGg6IHN0cmluZ106IHN0cmluZ307XG59O1xuIl19
|
|
@@ -1,22 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export type PluginParams = Record<string, any>;
|
|
3
|
-
export type ConfigParams = Record<string, any>;
|
|
4
|
-
export type ExecutePlugin = {
|
|
5
|
-
execute: (inputs: PluginParams[], config?: Record<string, any>) => PluginParams[] | Promise<PluginParams[]>;
|
|
6
|
-
metadata: {
|
|
7
|
-
kind: string;
|
|
8
|
-
};
|
|
9
|
-
[key: string]: any;
|
|
10
|
-
};
|
|
11
|
-
export type GroupByPlugin = {
|
|
12
|
-
execute: (inputs: PluginParams[], config: GroupByConfig) => {
|
|
13
|
-
children: any;
|
|
14
|
-
};
|
|
15
|
-
metadata: {
|
|
16
|
-
kind: string;
|
|
17
|
-
};
|
|
18
|
-
[key: string]: any;
|
|
19
|
-
};
|
|
1
|
+
import { ExecutePlugin, GroupByPlugin } from '@grnsft/if-core/types';
|
|
20
2
|
export type PluginInterface = ExecutePlugin | GroupByPlugin;
|
|
21
3
|
export declare const isExecute: (plugin: PluginInterface) => plugin is ExecutePlugin;
|
|
22
4
|
export declare const isGroupBy: (plugin: PluginInterface) => plugin is GroupByPlugin;
|
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL2ludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFJTyxNQUFNLFNBQVMsR0FBRyxDQUFDLE1BQXVCLEVBQTJCLEVBQUUsQ0FDM0UsTUFBd0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQztBQUQzQyxRQUFBLFNBQVMsYUFDa0M7QUFFakQsTUFBTSxTQUFTLEdBQUcsQ0FBQyxNQUF1QixFQUEyQixFQUFFLENBQzNFLE1BQXdCLENBQUMsUUFBUSxDQUFDLElBQUksS0FBSyxTQUFTLENBQUM7QUFEM0MsUUFBQSxTQUFTLGFBQ2tDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFeGVjdXRlUGx1Z2luLCBHcm91cEJ5UGx1Z2lufSBmcm9tICdAZ3Juc2Z0L2lmLWNvcmUvdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBQbHVnaW5JbnRlcmZhY2UgPSBFeGVjdXRlUGx1Z2luIHwgR3JvdXBCeVBsdWdpbjtcblxuZXhwb3J0IGNvbnN0IGlzRXhlY3V0ZSA9IChwbHVnaW46IFBsdWdpbkludGVyZmFjZSk6IHBsdWdpbiBpcyBFeGVjdXRlUGx1Z2luID0+XG4gIChwbHVnaW4gYXMgRXhlY3V0ZVBsdWdpbikubWV0YWRhdGEua2luZCA9PT0gJ2V4ZWN1dGUnO1xuXG5leHBvcnQgY29uc3QgaXNHcm91cEJ5ID0gKHBsdWdpbjogUGx1Z2luSW50ZXJmYWNlKTogcGx1Z2luIGlzIEdyb3VwQnlQbHVnaW4gPT5cbiAgKHBsdWdpbiBhcyBHcm91cEJ5UGx1Z2luKS5tZXRhZGF0YS5raW5kID09PSAnZ3JvdXBieSc7XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL25wbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgUGF0aFdpdGhWZXJzaW9uID0ge1twYXRoOiBzdHJpbmddOiBzdHJpbmd9O1xuXG5leHBvcnQgdHlwZSBNYW5pZmVzdFBsdWdpbiA9IHtba2V5OiBzdHJpbmddOiB7cGF0aDogc3RyaW5nOyBtZXRob2Q6IHN0cmluZ319O1xuIl19
|
|
@@ -9,6 +9,15 @@ export interface IFDiffArgs {
|
|
|
9
9
|
source?: string;
|
|
10
10
|
target: string;
|
|
11
11
|
}
|
|
12
|
+
export interface IFEnvArgs {
|
|
13
|
+
manifest?: string;
|
|
14
|
+
install?: boolean;
|
|
15
|
+
cwd?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface IFCheckArgs {
|
|
18
|
+
manifest?: string;
|
|
19
|
+
directory?: string;
|
|
20
|
+
}
|
|
12
21
|
export interface Options {
|
|
13
22
|
outputPath?: string;
|
|
14
23
|
stdout?: boolean;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1hcmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3Byb2Nlc3MtYXJncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJRUFyZ3Mge1xuICBtYW5pZmVzdD86IHN0cmluZztcbiAgb3V0cHV0Pzogc3RyaW5nO1xuICAnb3ZlcnJpZGUtcGFyYW1zJz86IHN0cmluZztcbiAgc3Rkb3V0PzogYm9vbGVhbjtcbiAgZGVidWc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElGRGlmZkFyZ3Mge1xuICBzb3VyY2U/
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2Vzcy1hcmdzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3R5cGVzL3Byb2Nlc3MtYXJncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJRUFyZ3Mge1xuICBtYW5pZmVzdD86IHN0cmluZztcbiAgb3V0cHV0Pzogc3RyaW5nO1xuICAnb3ZlcnJpZGUtcGFyYW1zJz86IHN0cmluZztcbiAgc3Rkb3V0PzogYm9vbGVhbjtcbiAgZGVidWc/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElGRGlmZkFyZ3Mge1xuICBzb3VyY2U/OiBzdHJpbmc7XG4gIHRhcmdldDogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElGRW52QXJncyB7XG4gIG1hbmlmZXN0Pzogc3RyaW5nO1xuICBpbnN0YWxsPzogYm9vbGVhbjtcbiAgY3dkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRkNoZWNrQXJncyB7XG4gIG1hbmlmZXN0Pzogc3RyaW5nO1xuICBkaXJlY3Rvcnk/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3B0aW9ucyB7XG4gIG91dHB1dFBhdGg/OiBzdHJpbmc7XG4gIHN0ZG91dD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUHJvY2Vzc0FyZ3NPdXRwdXRzIHtcbiAgaW5wdXRQYXRoOiBzdHJpbmc7XG4gIG91dHB1dE9wdGlvbnM6IHtcbiAgICBvdXRwdXRQYXRoPzogc3RyaW5nO1xuICAgIHN0ZG91dD86IGJvb2xlYW47XG4gIH07XG4gIHBhcmFtUGF0aD86IHN0cmluZztcbiAgZGVidWc/OiBib29sZWFuO1xufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PluginParams } from '
|
|
1
|
+
import { PluginParams } from '@grnsft/if-core/types';
|
|
2
2
|
/**
|
|
3
3
|
* Aggregates child node level metrics. Validates if metric aggregation type is `none`, then rejects with error.
|
|
4
4
|
* Appends aggregation additional params to metrics. Otherwise iterates over inputs by aggregating per given `metrics`.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.aggregateInputsIntoOne = void 0;
|
|
4
|
-
const
|
|
4
|
+
const utils_1 = require("@grnsft/if-core/utils");
|
|
5
5
|
const parameterize_1 = require("../lib/parameterize");
|
|
6
6
|
const config_1 = require("../config");
|
|
7
|
-
const {
|
|
7
|
+
const { InvalidAggregationMethodError, MissingAggregationParamError } = utils_1.ERRORS;
|
|
8
8
|
const { INVALID_AGGREGATION_METHOD, METRIC_MISSING } = config_1.STRINGS;
|
|
9
9
|
const { AGGREGATION_ADDITIONAL_PARAMS } = config_1.CONFIG;
|
|
10
10
|
/**
|
|
@@ -15,7 +15,7 @@ const checkIfMetricsAreValid = (metrics) => {
|
|
|
15
15
|
metrics.forEach(metric => {
|
|
16
16
|
const method = parameterize_1.parameterize.getAggregationMethod(metric);
|
|
17
17
|
if (method === 'none') {
|
|
18
|
-
throw new
|
|
18
|
+
throw new InvalidAggregationMethodError(INVALID_AGGREGATION_METHOD(metric));
|
|
19
19
|
}
|
|
20
20
|
});
|
|
21
21
|
};
|
|
@@ -29,7 +29,7 @@ const aggregateInputsIntoOne = (inputs, metrics, isTemporal) => {
|
|
|
29
29
|
return inputs.reduce((acc, input, index) => {
|
|
30
30
|
for (const metric of extendedMetrics) {
|
|
31
31
|
if (!(metric in input)) {
|
|
32
|
-
throw new
|
|
32
|
+
throw new MissingAggregationParamError(METRIC_MISSING(metric, index));
|
|
33
33
|
}
|
|
34
34
|
/** Checks if metric is timestamp or duration, then adds to aggregated value. */
|
|
35
35
|
if (AGGREGATION_ADDITIONAL_PARAMS.includes(metric)) {
|
|
@@ -52,4 +52,4 @@ const aggregateInputsIntoOne = (inputs, metrics, isTemporal) => {
|
|
|
52
52
|
}, {});
|
|
53
53
|
};
|
|
54
54
|
exports.aggregateInputsIntoOne = aggregateInputsIntoOne;
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdncmVnYXRpb24taGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWwvYWdncmVnYXRpb24taGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGlEQUE2QztBQUc3QyxzREFBaUQ7QUFFakQsc0NBQTBDO0FBSTFDLE1BQU0sRUFBQyw2QkFBNkIsRUFBRSw0QkFBNEIsRUFBQyxHQUFHLGNBQU0sQ0FBQztBQUM3RSxNQUFNLEVBQUMsMEJBQTBCLEVBQUUsY0FBYyxFQUFDLEdBQUcsZ0JBQU8sQ0FBQztBQUM3RCxNQUFNLEVBQUMsNkJBQTZCLEVBQUMsR0FBRyxlQUFNLENBQUM7QUFFL0M7OztHQUdHO0FBQ0gsTUFBTSxzQkFBc0IsR0FBRyxDQUFDLE9BQWlCLEVBQUUsRUFBRTtJQUNuRCxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1FBQ3ZCLE1BQU0sTUFBTSxHQUFHLDJCQUFZLENBQUMsb0JBQW9CLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekQsSUFBSSxNQUFNLEtBQUssTUFBTSxFQUFFO1lBQ3JCLE1BQU0sSUFBSSw2QkFBNkIsQ0FDckMsMEJBQTBCLENBQUMsTUFBTSxDQUFDLENBQ25DLENBQUM7U0FDSDtJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBRUY7OztHQUdHO0FBQ0ksTUFBTSxzQkFBc0IsR0FBRyxDQUNwQyxNQUFzQixFQUN0QixPQUFpQixFQUNqQixVQUFvQixFQUNwQixFQUFFO0lBQ0Ysc0JBQXNCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDaEMsTUFBTSxlQUFlLEdBQUcsQ0FBQyxHQUFHLE9BQU8sRUFBRSxHQUFHLDZCQUE2QixDQUFDLENBQUM7SUFFdkUsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUN6QyxLQUFLLE1BQU0sTUFBTSxJQUFJLGVBQWUsRUFBRTtZQUNwQyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLEVBQUU7Z0JBQ3RCLE1BQU0sSUFBSSw0QkFBNEIsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDdkU7WUFFRCxnRkFBZ0Y7WUFDaEYsSUFBSSw2QkFBNkIsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ2xELElBQUksVUFBVSxFQUFFO29CQUNkLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQzdCO2FBQ0Y7aUJBQU07Z0JBQ0wsR0FBRyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQy9CLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBRXpDLHFDQUFxQztnQkFDckMsSUFBSSxLQUFLLEtBQUssTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7b0JBQy9CLElBQUksMkJBQVksQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxLQUFLLEVBQUU7d0JBQ3ZELEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDO3FCQUM5QjtpQkFDRjthQUNGO1NBQ0Y7UUFFRCxPQUFPLEdBQUcsQ0FBQztJQUNiLENBQUMsRUFBRSxFQUF1QixDQUFDLENBQUM7QUFDOUIsQ0FBQyxDQUFDO0FBbENXLFFBQUEsc0JBQXNCLDBCQWtDakMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0VSUk9SU30gZnJvbSAnQGdybnNmdC9pZi1jb3JlL3V0aWxzJztcbmltcG9ydCB7UGx1Z2luUGFyYW1zfSBmcm9tICdAZ3Juc2Z0L2lmLWNvcmUvdHlwZXMnO1xuXG5pbXBvcnQge3BhcmFtZXRlcml6ZX0gZnJvbSAnLi4vbGliL3BhcmFtZXRlcml6ZSc7XG5cbmltcG9ydCB7Q09ORklHLCBTVFJJTkdTfSBmcm9tICcuLi9jb25maWcnO1xuXG5pbXBvcnQge0FnZ3JlZ2F0aW9uUmVzdWx0fSBmcm9tICcuLi90eXBlcy9hZ2dyZWdhdGlvbic7XG5cbmNvbnN0IHtJbnZhbGlkQWdncmVnYXRpb25NZXRob2RFcnJvciwgTWlzc2luZ0FnZ3JlZ2F0aW9uUGFyYW1FcnJvcn0gPSBFUlJPUlM7XG5jb25zdCB7SU5WQUxJRF9BR0dSRUdBVElPTl9NRVRIT0QsIE1FVFJJQ19NSVNTSU5HfSA9IFNUUklOR1M7XG5jb25zdCB7QUdHUkVHQVRJT05fQURESVRJT05BTF9QQVJBTVN9ID0gQ09ORklHO1xuXG4vKipcbiAqIFZhbGlkYXRlcyBtZXRyaWNzIGFycmF5IGJlZm9yZSBhcHBseWluZyBhZ2dyZWdhdG9yLlxuICogSWYgYWdncmVnYXRpb24gbWV0aG9kIGlzIGBub25lYCwgdGhlbiB0aHJvd3MgZXJyb3IuXG4gKi9cbmNvbnN0IGNoZWNrSWZNZXRyaWNzQXJlVmFsaWQgPSAobWV0cmljczogc3RyaW5nW10pID0+IHtcbiAgbWV0cmljcy5mb3JFYWNoKG1ldHJpYyA9PiB7XG4gICAgY29uc3QgbWV0aG9kID0gcGFyYW1ldGVyaXplLmdldEFnZ3JlZ2F0aW9uTWV0aG9kKG1ldHJpYyk7XG5cbiAgICBpZiAobWV0aG9kID09PSAnbm9uZScpIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkQWdncmVnYXRpb25NZXRob2RFcnJvcihcbiAgICAgICAgSU5WQUxJRF9BR0dSRUdBVElPTl9NRVRIT0QobWV0cmljKVxuICAgICAgKTtcbiAgICB9XG4gIH0pO1xufTtcblxuLyoqXG4gKiBBZ2dyZWdhdGVzIGNoaWxkIG5vZGUgbGV2ZWwgbWV0cmljcy4gVmFsaWRhdGVzIGlmIG1ldHJpYyBhZ2dyZWdhdGlvbiB0eXBlIGlzIGBub25lYCwgdGhlbiByZWplY3RzIHdpdGggZXJyb3IuXG4gKiBBcHBlbmRzIGFnZ3JlZ2F0aW9uIGFkZGl0aW9uYWwgcGFyYW1zIHRvIG1ldHJpY3MuIE90aGVyd2lzZSBpdGVyYXRlcyBvdmVyIGlucHV0cyBieSBhZ2dyZWdhdGluZyBwZXIgZ2l2ZW4gYG1ldHJpY3NgLlxuICovXG5leHBvcnQgY29uc3QgYWdncmVnYXRlSW5wdXRzSW50b09uZSA9IChcbiAgaW5wdXRzOiBQbHVnaW5QYXJhbXNbXSxcbiAgbWV0cmljczogc3RyaW5nW10sXG4gIGlzVGVtcG9yYWw/OiBib29sZWFuXG4pID0+IHtcbiAgY2hlY2tJZk1ldHJpY3NBcmVWYWxpZChtZXRyaWNzKTtcbiAgY29uc3QgZXh0ZW5kZWRNZXRyaWNzID0gWy4uLm1ldHJpY3MsIC4uLkFHR1JFR0FUSU9OX0FERElUSU9OQUxfUEFSQU1TXTtcblxuICByZXR1cm4gaW5wdXRzLnJlZHVjZSgoYWNjLCBpbnB1dCwgaW5kZXgpID0+IHtcbiAgICBmb3IgKGNvbnN0IG1ldHJpYyBvZiBleHRlbmRlZE1ldHJpY3MpIHtcbiAgICAgIGlmICghKG1ldHJpYyBpbiBpbnB1dCkpIHtcbiAgICAgICAgdGhyb3cgbmV3IE1pc3NpbmdBZ2dyZWdhdGlvblBhcmFtRXJyb3IoTUVUUklDX01JU1NJTkcobWV0cmljLCBpbmRleCkpO1xuICAgICAgfVxuXG4gICAgICAvKiogQ2hlY2tzIGlmIG1ldHJpYyBpcyB0aW1lc3RhbXAgb3IgZHVyYXRpb24sIHRoZW4gYWRkcyB0byBhZ2dyZWdhdGVkIHZhbHVlLiAqL1xuICAgICAgaWYgKEFHR1JFR0FUSU9OX0FERElUSU9OQUxfUEFSQU1TLmluY2x1ZGVzKG1ldHJpYykpIHtcbiAgICAgICAgaWYgKGlzVGVtcG9yYWwpIHtcbiAgICAgICAgICBhY2NbbWV0cmljXSA9IGlucHV0W21ldHJpY107XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGFjY1ttZXRyaWNdID0gYWNjW21ldHJpY10gPz8gMDtcbiAgICAgICAgYWNjW21ldHJpY10gKz0gcGFyc2VGbG9hdChpbnB1dFttZXRyaWNdKTtcblxuICAgICAgICAvKiogQ2hlY2tzIGZvciB0aGUgbGFzdCBpdGVyYXRpb24uICovXG4gICAgICAgIGlmIChpbmRleCA9PT0gaW5wdXRzLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICBpZiAocGFyYW1ldGVyaXplLmdldEFnZ3JlZ2F0aW9uTWV0aG9kKG1ldHJpYykgPT09ICdhdmcnKSB7XG4gICAgICAgICAgICBhY2NbbWV0cmljXSAvPSBpbnB1dHMubGVuZ3RoO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBhY2M7XG4gIH0sIHt9IGFzIEFnZ3JlZ2F0aW9uUmVzdWx0KTtcbn07XG4iXX0=
|
package/build/util/args.d.ts
CHANGED
|
@@ -6,10 +6,32 @@ import { LoadDiffParams } from '../types/util/args';
|
|
|
6
6
|
* 3. If output params are missing, warns user about it.
|
|
7
7
|
* 3. Otherwise checks if `manifest` param is there, then processes with checking if it's a yaml file.
|
|
8
8
|
* If it is, then returns object containing full path.
|
|
9
|
-
* 4. If params are missing or invalid, then rejects with `
|
|
9
|
+
* 4. If params are missing or invalid, then rejects with `ParseCliParamsError`.
|
|
10
10
|
*/
|
|
11
11
|
export declare const parseIEProcessArgs: () => ProcessArgsOutputs;
|
|
12
12
|
/**
|
|
13
13
|
* Checks for `source` and `target` flags to be present.
|
|
14
14
|
*/
|
|
15
15
|
export declare const parseIfDiffArgs: () => LoadDiffParams;
|
|
16
|
+
/**
|
|
17
|
+
* Checks if the `manifest` command is provided and it is valid manifest file.
|
|
18
|
+
*/
|
|
19
|
+
export declare const parseIfEnvArgs: () => Promise<{
|
|
20
|
+
manifest: string;
|
|
21
|
+
install: boolean | undefined;
|
|
22
|
+
cwd: boolean | undefined;
|
|
23
|
+
} | {
|
|
24
|
+
install: boolean | undefined;
|
|
25
|
+
cwd: boolean | undefined;
|
|
26
|
+
manifest?: undefined;
|
|
27
|
+
}>;
|
|
28
|
+
/**
|
|
29
|
+
* Checks if either `manifest` or `directory` command is provided.
|
|
30
|
+
*/
|
|
31
|
+
export declare const parseIfCheckArgs: () => Promise<{
|
|
32
|
+
manifest: string;
|
|
33
|
+
directory?: undefined;
|
|
34
|
+
} | {
|
|
35
|
+
directory: string;
|
|
36
|
+
manifest?: undefined;
|
|
37
|
+
}>;
|
package/build/util/args.js
CHANGED
|
@@ -23,16 +23,17 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.parseIfDiffArgs = exports.parseIEProcessArgs = void 0;
|
|
26
|
+
exports.parseIfCheckArgs = exports.parseIfEnvArgs = 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
|
+
const utils_1 = require("@grnsft/if-core/utils");
|
|
29
30
|
const yaml_1 = require("./yaml");
|
|
30
|
-
const
|
|
31
|
+
const fs_1 = require("./fs");
|
|
31
32
|
const logger_1 = require("./logger");
|
|
32
33
|
const config_1 = require("../config");
|
|
33
|
-
const {
|
|
34
|
-
const { IE, IF_DIFF } = config_1.CONFIG;
|
|
35
|
-
const {
|
|
34
|
+
const { ParseCliParamsError, CliTargetFileError, CliSourceFileError, InvalidDirectoryError, MissingCliFlagsError, } = utils_1.ERRORS;
|
|
35
|
+
const { IE, IF_DIFF, IF_ENV, IF_CHECK } = config_1.CONFIG;
|
|
36
|
+
const { MANIFEST_IS_MISSING, MANIFEST_NOT_FOUND, NO_OUTPUT, SOURCE_IS_NOT_YAML, TARGET_IS_NOT_YAML, INVALID_TARGET, IF_CHECK_FLAGS_MISSING, DIRECTORY_NOT_FOUND, } = config_1.STRINGS;
|
|
36
37
|
/**
|
|
37
38
|
* Validates `ie` process arguments.
|
|
38
39
|
*/
|
|
@@ -42,7 +43,7 @@ const validateAndParseProcessArgs = () => {
|
|
|
42
43
|
}
|
|
43
44
|
catch (error) {
|
|
44
45
|
if (error instanceof Error) {
|
|
45
|
-
throw new
|
|
46
|
+
throw new ParseCliParamsError(error.message);
|
|
46
47
|
}
|
|
47
48
|
throw error;
|
|
48
49
|
}
|
|
@@ -63,7 +64,7 @@ const prependFullFilePath = (filePath) => {
|
|
|
63
64
|
* 3. If output params are missing, warns user about it.
|
|
64
65
|
* 3. Otherwise checks if `manifest` param is there, then processes with checking if it's a yaml file.
|
|
65
66
|
* If it is, then returns object containing full path.
|
|
66
|
-
* 4. If params are missing or invalid, then rejects with `
|
|
67
|
+
* 4. If params are missing or invalid, then rejects with `ParseCliParamsError`.
|
|
67
68
|
*/
|
|
68
69
|
const parseIEProcessArgs = () => {
|
|
69
70
|
const { manifest, output, 'override-params': overrideParams, stdout, debug, } = validateAndParseProcessArgs();
|
|
@@ -82,9 +83,9 @@ const parseIEProcessArgs = () => {
|
|
|
82
83
|
debug,
|
|
83
84
|
};
|
|
84
85
|
}
|
|
85
|
-
throw new
|
|
86
|
+
throw new CliSourceFileError(SOURCE_IS_NOT_YAML);
|
|
86
87
|
}
|
|
87
|
-
throw new
|
|
88
|
+
throw new CliSourceFileError(MANIFEST_IS_MISSING);
|
|
88
89
|
};
|
|
89
90
|
exports.parseIEProcessArgs = parseIEProcessArgs;
|
|
90
91
|
/** -- IF Diff -- */
|
|
@@ -97,7 +98,7 @@ const validateAndParseIfDiffArgs = () => {
|
|
|
97
98
|
}
|
|
98
99
|
catch (error) {
|
|
99
100
|
if (error instanceof Error) {
|
|
100
|
-
throw new
|
|
101
|
+
throw new ParseCliParamsError(error.message);
|
|
101
102
|
}
|
|
102
103
|
throw error;
|
|
103
104
|
}
|
|
@@ -109,7 +110,7 @@ const parseIfDiffArgs = () => {
|
|
|
109
110
|
const { source, target } = validateAndParseIfDiffArgs();
|
|
110
111
|
if (target) {
|
|
111
112
|
if (source && !(0, yaml_1.checkIfFileIsYaml)(source)) {
|
|
112
|
-
throw new
|
|
113
|
+
throw new CliSourceFileError(SOURCE_IS_NOT_YAML);
|
|
113
114
|
}
|
|
114
115
|
if ((0, yaml_1.checkIfFileIsYaml)(target)) {
|
|
115
116
|
const response = {
|
|
@@ -120,9 +121,85 @@ const parseIfDiffArgs = () => {
|
|
|
120
121
|
}
|
|
121
122
|
return response;
|
|
122
123
|
}
|
|
123
|
-
throw new
|
|
124
|
+
throw new CliTargetFileError(TARGET_IS_NOT_YAML);
|
|
124
125
|
}
|
|
125
|
-
throw new
|
|
126
|
+
throw new ParseCliParamsError(INVALID_TARGET);
|
|
126
127
|
};
|
|
127
128
|
exports.parseIfDiffArgs = parseIfDiffArgs;
|
|
128
|
-
|
|
129
|
+
/** -- IF Env -- */
|
|
130
|
+
/**
|
|
131
|
+
* Parses `if-env` process arguments.
|
|
132
|
+
*/
|
|
133
|
+
const validateAndParseIfEnvArgs = () => {
|
|
134
|
+
try {
|
|
135
|
+
return (0, ts_command_line_args_1.parse)(IF_ENV.ARGS, IF_ENV.HELP);
|
|
136
|
+
}
|
|
137
|
+
catch (error) {
|
|
138
|
+
if (error instanceof Error) {
|
|
139
|
+
throw new ParseCliParamsError(error.message);
|
|
140
|
+
}
|
|
141
|
+
throw error;
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
/**
|
|
145
|
+
* Checks if the `manifest` command is provided and it is valid manifest file.
|
|
146
|
+
*/
|
|
147
|
+
const parseIfEnvArgs = async () => {
|
|
148
|
+
const { manifest, install, cwd } = validateAndParseIfEnvArgs();
|
|
149
|
+
if (manifest) {
|
|
150
|
+
const response = prependFullFilePath(manifest);
|
|
151
|
+
const isManifestFileExists = await (0, fs_1.isFileExists)(response);
|
|
152
|
+
if (!isManifestFileExists) {
|
|
153
|
+
throw new ParseCliParamsError(MANIFEST_NOT_FOUND);
|
|
154
|
+
}
|
|
155
|
+
if ((0, yaml_1.checkIfFileIsYaml)(manifest)) {
|
|
156
|
+
return { manifest: response, install, cwd };
|
|
157
|
+
}
|
|
158
|
+
throw new CliSourceFileError(SOURCE_IS_NOT_YAML);
|
|
159
|
+
}
|
|
160
|
+
return { install, cwd };
|
|
161
|
+
};
|
|
162
|
+
exports.parseIfEnvArgs = parseIfEnvArgs;
|
|
163
|
+
/** -- IF Check -- */
|
|
164
|
+
/**
|
|
165
|
+
* Parses `if-check` process arguments.
|
|
166
|
+
*/
|
|
167
|
+
const validateAndParseIfCheckArgs = () => {
|
|
168
|
+
try {
|
|
169
|
+
return (0, ts_command_line_args_1.parse)(IF_CHECK.ARGS, IF_CHECK.HELP);
|
|
170
|
+
}
|
|
171
|
+
catch (error) {
|
|
172
|
+
if (error instanceof Error) {
|
|
173
|
+
throw new ParseCliParamsError(error.message);
|
|
174
|
+
}
|
|
175
|
+
throw error;
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
/**
|
|
179
|
+
* Checks if either `manifest` or `directory` command is provided.
|
|
180
|
+
*/
|
|
181
|
+
const parseIfCheckArgs = async () => {
|
|
182
|
+
const { manifest, directory } = validateAndParseIfCheckArgs();
|
|
183
|
+
if (manifest) {
|
|
184
|
+
const response = prependFullFilePath(manifest);
|
|
185
|
+
const isManifestFileExists = await (0, fs_1.isFileExists)(response);
|
|
186
|
+
if (!isManifestFileExists) {
|
|
187
|
+
throw new ParseCliParamsError(MANIFEST_NOT_FOUND);
|
|
188
|
+
}
|
|
189
|
+
if ((0, yaml_1.checkIfFileIsYaml)(manifest)) {
|
|
190
|
+
return { manifest };
|
|
191
|
+
}
|
|
192
|
+
throw new CliSourceFileError(SOURCE_IS_NOT_YAML);
|
|
193
|
+
}
|
|
194
|
+
else if (directory) {
|
|
195
|
+
const isDirExists = await (0, fs_1.isDirectoryExists)(directory);
|
|
196
|
+
if (!isDirExists) {
|
|
197
|
+
throw new InvalidDirectoryError(DIRECTORY_NOT_FOUND);
|
|
198
|
+
}
|
|
199
|
+
const response = prependFullFilePath(directory);
|
|
200
|
+
return { directory: response };
|
|
201
|
+
}
|
|
202
|
+
throw new MissingCliFlagsError(IF_CHECK_FLAGS_MISSING);
|
|
203
|
+
};
|
|
204
|
+
exports.parseIfCheckArgs = parseIfCheckArgs;
|
|
205
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL2FyZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwyQ0FBNkI7QUFFN0IsK0RBQTJDO0FBQzNDLGlEQUE2QztBQUU3QyxpQ0FBeUM7QUFFekMsNkJBQXFEO0FBRXJELHFDQUFnQztBQUVoQyxzQ0FBMEM7QUFXMUMsTUFBTSxFQUNKLG1CQUFtQixFQUNuQixrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLHFCQUFxQixFQUNyQixvQkFBb0IsR0FDckIsR0FBRyxjQUFNLENBQUM7QUFFWCxNQUFNLEVBQUMsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFDLEdBQUcsZUFBTSxDQUFDO0FBRS9DLE1BQU0sRUFDSixtQkFBbUIsRUFDbkIsa0JBQWtCLEVBQ2xCLFNBQVMsRUFDVCxrQkFBa0IsRUFDbEIsa0JBQWtCLEVBQ2xCLGNBQWMsRUFDZCxzQkFBc0IsRUFDdEIsbUJBQW1CLEdBQ3BCLEdBQUcsZ0JBQU8sQ0FBQztBQUVaOztHQUVHO0FBQ0gsTUFBTSwyQkFBMkIsR0FBRyxHQUFHLEVBQUU7SUFDdkMsSUFBSTtRQUNGLE9BQU8sSUFBQSw0QkFBSyxFQUFTLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQ3hDO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7WUFDMUIsTUFBTSxJQUFJLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUM5QztRQUVELE1BQU0sS0FBSyxDQUFDO0tBQ2I7QUFDSCxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxRQUFnQixFQUFFLEVBQUU7SUFDL0MsTUFBTSxrQkFBa0IsR0FBRyxPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7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QztLQUM5QjtJQUVELE1BQU0sSUFBSSxvQkFBb0IsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0FBQ3pELENBQUMsQ0FBQztBQTdCVyxRQUFBLGdCQUFnQixvQkE2QjNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcblxuaW1wb3J0IHtwYXJzZX0gZnJvbSAndHMtY29tbWFuZC1saW5lLWFyZ3MnO1xuaW1wb3J0IHtFUlJPUlN9IGZyb20gJ0Bncm5zZnQvaWYtY29yZS91dGlscyc7XG5cbmltcG9ydCB7Y2hlY2tJZkZpbGVJc1lhbWx9IGZyb20gJy4veWFtbCc7XG5cbmltcG9ydCB7aXNEaXJlY3RvcnlFeGlzdHMsIGlzRmlsZUV4aXN0c30gZnJvbSAnLi9mcyc7XG5cbmltcG9ydCB7bG9nZ2VyfSBmcm9tICcuL2xvZ2dlcic7XG5cbmltcG9ydCB7Q09ORklHLCBTVFJJTkdTfSBmcm9tICcuLi9jb25maWcnO1xuXG5pbXBvcnQge1xuICBJRkRpZmZBcmdzLFxuICBJRUFyZ3MsXG4gIFByb2Nlc3NBcmdzT3V0cHV0cyxcbiAgSUZFbnZBcmdzLFxuICBJRkNoZWNrQXJncyxcbn0gZnJvbSAnLi4vdHlwZXMvcHJvY2Vzcy1hcmdzJztcbmltcG9ydCB7TG9hZERpZmZQYXJhbXN9IGZyb20gJy4uL3R5cGVzL3V0aWwvYXJncyc7XG5cbmNvbnN0IHtcbiAgUGFyc2VDbGlQYXJhbXNFcnJvcixcbiAgQ2xpVGFyZ2V0RmlsZUVycm9yLFxuICBDbGlTb3VyY2VGaWxlRXJyb3IsXG4gIEludmFsaWREaXJlY3RvcnlFcnJvcixcbiAgTWlzc2luZ0NsaUZsYWdzRXJyb3IsXG59ID0gRVJST1JTO1xuXG5jb25zdCB7SUUsIElGX0RJRkYsIElGX0VOViwgSUZfQ0hFQ0t9ID0gQ09ORklHO1xuXG5jb25zdCB7XG4gIE1BTklGRVNUX0lTX01JU1NJTkcsXG4gIE1BTklGRVNUX05PVF9GT1VORCxcbiAgTk9fT1VUUFVULFxuICBTT1VSQ0VfSVNfTk9UX1lBTUwsXG4gIFRBUkdFVF9JU19OT1RfWUFNTCxcbiAgSU5WQUxJRF9UQVJHRVQsXG4gIElGX0NIRUNLX0ZMQUdTX01JU1NJTkcsXG4gIERJUkVDVE9SWV9OT1RfRk9VTkQsXG59ID0gU1RSSU5HUztcblxuLyoqXG4gKiBWYWxpZGF0ZXMgYGllYCBwcm9jZXNzIGFyZ3VtZW50cy5cbiAqL1xuY29uc3QgdmFsaWRhdGVBbmRQYXJzZVByb2Nlc3NBcmdzID0gKCkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBwYXJzZTxJRUFyZ3M+KElFLkFSR1MsIElFLkhFTFApO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VDbGlQYXJhbXNFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgICB9XG5cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuLyoqXG4gKiBQcmVwZW5kcyBwcm9jZXNzIHBhdGggdG8gZ2l2ZW4gYGZpbGVQYXRoYC5cbiAqL1xuY29uc3QgcHJlcGVuZEZ1bGxGaWxlUGF0aCA9IChmaWxlUGF0aDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHByb2Nlc3NSdW5uaW5nUGF0aCA9IHByb2Nlc3MuY3dkKCk7XG5cbiAgaWYgKHBhdGguaXNBYnNvbHV0ZShmaWxlUGF0aCkpIHtcbiAgICByZXR1cm4gZmlsZVBhdGg7XG4gIH1cblxuICByZXR1cm4gcGF0aC5ub3JtYWxpemUoYCR7cHJvY2Vzc1J1bm5pbmdQYXRofS8ke2ZpbGVQYXRofWApO1xufTtcblxuLyoqXG4gKiAxLiBQYXJzZXMgcHJvY2VzcyBhcmd1bWVudHMgbGlrZSBgbWFuaWZlc3RgLCBgb3V0cHV0YCwgYG92ZXJyaWRlLXBhcmFtc2AsIGBoZWxwYCBhbmQgYGRlYnVnYC5cbiAqIDIuIENoZWNrcyBpZiBgaGVscGAgcGFyYW0gaXMgcHJvdmlkZWQsIHRoZW4gbG9ncyBoZWxwIG1lc3NhZ2UgYW5kIGV4aXRzLlxuICogMy4gSWYgb3V0cHV0IHBhcmFtcyBhcmUgbWlzc2luZywgd2FybnMgdXNlciBhYm91dCBpdC5cbiAqIDMuIE90aGVyd2lzZSBjaGVja3MgaWYgYG1hbmlmZXN0YCBwYXJhbSBpcyB0aGVyZSwgdGhlbiBwcm9jZXNzZXMgd2l0aCBjaGVja2luZyBpZiBpdCdzIGEgeWFtbCBmaWxlLlxuICogICAgSWYgaXQgaXMsIHRoZW4gcmV0dXJucyBvYmplY3QgY29udGFpbmluZyBmdWxsIHBhdGguXG4gKiA0LiBJZiBwYXJhbXMgYXJlIG1pc3Npbmcgb3IgaW52YWxpZCwgdGhlbiByZWplY3RzIHdpdGggYFBhcnNlQ2xpUGFyYW1zRXJyb3JgLlxuICovXG5leHBvcnQgY29uc3QgcGFyc2VJRVByb2Nlc3NBcmdzID0gKCk6IFByb2Nlc3NBcmdzT3V0cHV0cyA9PiB7XG4gIGNvbnN0IHtcbiAgICBtYW5pZmVzdCxcbiAgICBvdXRwdXQsXG4gICAgJ292ZXJyaWRlLXBhcmFtcyc6IG92ZXJyaWRlUGFyYW1zLFxuICAgIHN0ZG91dCxcbiAgICBkZWJ1ZyxcbiAgfSA9IHZhbGlkYXRlQW5kUGFyc2VQcm9jZXNzQXJncygpO1xuXG4gIGlmICghb3V0cHV0ICYmICFzdGRvdXQpIHtcbiAgICBsb2dnZXIud2FybihOT19PVVRQVVQpO1xuICB9XG5cbiAgaWYgKG1hbmlmZXN0KSB7XG4gICAgaWYgKGNoZWNrSWZGaWxlSXNZYW1sKG1hbmlmZXN0KSkge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaW5wdXRQYXRoOiBwcmVwZW5kRnVsbEZpbGVQYXRoKG1hbmlmZXN0KSxcbiAgICAgICAgb3V0cHV0T3B0aW9uczoge1xuICAgICAgICAgIC4uLihvdXRwdXQgJiYge291dHB1dFBhdGg6IHByZXBlbmRGdWxsRmlsZVBhdGgob3V0cHV0KX0pLFxuICAgICAgICAgIC4uLihzdGRvdXQgJiYge3N0ZG91dH0pLFxuICAgICAgICB9LFxuICAgICAgICAuLi4ob3ZlcnJpZGVQYXJhbXMgJiYge3BhcmFtUGF0aDogb3ZlcnJpZGVQYXJhbXN9KSxcbiAgICAgICAgZGVidWcsXG4gICAgICB9O1xuICAgIH1cblxuICAgIHRocm93IG5ldyBDbGlTb3VyY2VGaWxlRXJyb3IoU09VUkNFX0lTX05PVF9ZQU1MKTtcbiAgfVxuXG4gIHRocm93IG5ldyBDbGlTb3VyY2VGaWxlRXJyb3IoTUFOSUZFU1RfSVNfTUlTU0lORyk7XG59O1xuXG4vKiogLS0gSUYgRGlmZiAtLSAqL1xuXG4vKipcbiAqIFBhcnNlcyBgaWYtZGlmZmAgcHJvY2VzcyBhcmd1bWVudHMuXG4gKi9cbmNvbnN0IHZhbGlkYXRlQW5kUGFyc2VJZkRpZmZBcmdzID0gKCkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBwYXJzZTxJRkRpZmZBcmdzPihJRl9ESUZGLkFSR1MsIElGX0RJRkYuSEVMUCk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBQYXJzZUNsaVBhcmFtc0Vycm9yKGVycm9yLm1lc3NhZ2UpO1xuICAgIH1cblxuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG4vKipcbiAqIENoZWNrcyBmb3IgYHNvdXJjZWAgYW5kIGB0YXJnZXRgIGZsYWdzIHRvIGJlIHByZXNlbnQuXG4gKi9cbmV4cG9ydCBjb25zdCBwYXJzZUlmRGlmZkFyZ3MgPSAoKSA9PiB7XG4gIGNvbnN0IHtzb3VyY2UsIHRhcmdldH0gPSB2YWxpZGF0ZUFuZFBhcnNlSWZEaWZmQXJncygpO1xuXG4gIGlmICh0YXJnZXQpIHtcbiAgICBpZiAoc291cmNlICYmICFjaGVja0lmRmlsZUlzWWFtbChzb3VyY2UpKSB7XG4gICAgICB0aHJvdyBuZXcgQ2xpU291cmNlRmlsZUVycm9yKFNPVVJDRV9JU19OT1RfWUFNTCk7XG4gICAgfVxuXG4gICAgaWYgKGNoZWNrSWZGaWxlSXNZYW1sKHRhcmdldCkpIHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlOiBMb2FkRGlmZlBhcmFtcyA9IHtcbiAgICAgICAgdGFyZ2V0UGF0aDogcHJlcGVuZEZ1bGxGaWxlUGF0aCh0YXJnZXQpLFxuICAgICAgfTtcblxuICAgICAgaWYgKHNvdXJjZSAmJiBjaGVja0lmRmlsZUlzWWFtbChzb3VyY2UpKSB7XG4gICAgICAgIHJlc3BvbnNlLnNvdXJjZVBhdGggPSBwcmVwZW5kRnVsbEZpbGVQYXRoKHNvdXJjZSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgQ2xpVGFyZ2V0RmlsZUVycm9yKFRBUkdFVF9JU19OT1RfWUFNTCk7XG4gIH1cblxuICB0aHJvdyBuZXcgUGFyc2VDbGlQYXJhbXNFcnJvcihJTlZBTElEX1RBUkdFVCk7XG59O1xuXG4vKiogLS0gSUYgRW52IC0tICovXG5cbi8qKlxuICogUGFyc2VzIGBpZi1lbnZgIHByb2Nlc3MgYXJndW1lbnRzLlxuICovXG5jb25zdCB2YWxpZGF0ZUFuZFBhcnNlSWZFbnZBcmdzID0gKCkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiBwYXJzZTxJRkVudkFyZ3M+KElGX0VOVi5BUkdTLCBJRl9FTlYuSEVMUCk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBQYXJzZUNsaVBhcmFtc0Vycm9yKGVycm9yLm1lc3NhZ2UpO1xuICAgIH1cblxuICAgIHRocm93IGVycm9yO1xuICB9XG59O1xuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgYG1hbmlmZXN0YCBjb21tYW5kIGlzIHByb3ZpZGVkIGFuZCBpdCBpcyB2YWxpZCBtYW5pZmVzdCBmaWxlLlxuICovXG5leHBvcnQgY29uc3QgcGFyc2VJZkVudkFyZ3MgPSBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHttYW5pZmVzdCwgaW5zdGFsbCwgY3dkfSA9IHZhbGlkYXRlQW5kUGFyc2VJZkVudkFyZ3MoKTtcblxuICBpZiAobWFuaWZlc3QpIHtcbiAgICBjb25zdCByZXNwb25zZSA9IHByZXBlbmRGdWxsRmlsZVBhdGgobWFuaWZlc3QpO1xuICAgIGNvbnN0IGlzTWFuaWZlc3RGaWxlRXhpc3RzID0gYXdhaXQgaXNGaWxlRXhpc3RzKHJlc3BvbnNlKTtcblxuICAgIGlmICghaXNNYW5pZmVzdEZpbGVFeGlzdHMpIHtcbiAgICAgIHRocm93IG5ldyBQYXJzZUNsaVBhcmFtc0Vycm9yKE1BTklGRVNUX05PVF9GT1VORCk7XG4gICAgfVxuXG4gICAgaWYgKGNoZWNrSWZGaWxlSXNZYW1sKG1hbmlmZXN0KSkge1xuICAgICAgcmV0dXJuIHttYW5pZmVzdDogcmVzcG9uc2UsIGluc3RhbGwsIGN3ZH07XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IENsaVNvdXJjZUZpbGVFcnJvcihTT1VSQ0VfSVNfTk9UX1lBTUwpO1xuICB9XG5cbiAgcmV0dXJuIHtpbnN0YWxsLCBjd2R9O1xufTtcblxuLyoqIC0tIElGIENoZWNrIC0tICovXG5cbi8qKlxuICogUGFyc2VzIGBpZi1jaGVja2AgcHJvY2VzcyBhcmd1bWVudHMuXG4gKi9cbmNvbnN0IHZhbGlkYXRlQW5kUGFyc2VJZkNoZWNrQXJncyA9ICgpID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gcGFyc2U8SUZDaGVja0FyZ3M+KElGX0NIRUNLLkFSR1MsIElGX0NIRUNLLkhFTFApO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VDbGlQYXJhbXNFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgICB9XG5cbiAgICB0aHJvdyBlcnJvcjtcbiAgfVxufTtcblxuLyoqXG4gKiBDaGVja3MgaWYgZWl0aGVyIGBtYW5pZmVzdGAgb3IgYGRpcmVjdG9yeWAgY29tbWFuZCBpcyBwcm92aWRlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IHBhcnNlSWZDaGVja0FyZ3MgPSBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHttYW5pZmVzdCwgZGlyZWN0b3J5fSA9IHZhbGlkYXRlQW5kUGFyc2VJZkNoZWNrQXJncygpO1xuXG4gIGlmIChtYW5pZmVzdCkge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gcHJlcGVuZEZ1bGxGaWxlUGF0aChtYW5pZmVzdCk7XG4gICAgY29uc3QgaXNNYW5pZmVzdEZpbGVFeGlzdHMgPSBhd2FpdCBpc0ZpbGVFeGlzdHMocmVzcG9uc2UpO1xuXG4gICAgaWYgKCFpc01hbmlmZXN0RmlsZUV4aXN0cykge1xuICAgICAgdGhyb3cgbmV3IFBhcnNlQ2xpUGFyYW1zRXJyb3IoTUFOSUZFU1RfTk9UX0ZPVU5EKTtcbiAgICB9XG5cbiAgICBpZiAoY2hlY2tJZkZpbGVJc1lhbWwobWFuaWZlc3QpKSB7XG4gICAgICByZXR1cm4ge21hbmlmZXN0fTtcbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgQ2xpU291cmNlRmlsZUVycm9yKFNPVVJDRV9JU19OT1RfWUFNTCk7XG4gIH0gZWxzZSBpZiAoZGlyZWN0b3J5KSB7XG4gICAgY29uc3QgaXNEaXJFeGlzdHMgPSBhd2FpdCBpc0RpcmVjdG9yeUV4aXN0cyhkaXJlY3RvcnkpO1xuXG4gICAgaWYgKCFpc0RpckV4aXN0cykge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWREaXJlY3RvcnlFcnJvcihESVJFQ1RPUllfTk9UX0ZPVU5EKTtcbiAgICB9XG5cbiAgICBjb25zdCByZXNwb25zZSA9IHByZXBlbmRGdWxsRmlsZVBhdGgoZGlyZWN0b3J5KTtcblxuICAgIHJldHVybiB7ZGlyZWN0b3J5OiByZXNwb25zZX07XG4gIH1cblxuICB0aHJvdyBuZXcgTWlzc2luZ0NsaUZsYWdzRXJyb3IoSUZfQ0hFQ0tfRkxBR1NfTUlTU0lORyk7XG59O1xuIl19
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if file exists with the given `filePath`.
|
|
3
|
+
*/
|
|
4
|
+
export declare const isFileExists: (filePath: string) => Promise<boolean>;
|
|
5
|
+
/**
|
|
6
|
+
* Checks if the directory exists with the given `filePath`.
|
|
7
|
+
*/
|
|
8
|
+
export declare const isDirectoryExists: (directoryPath: string) => Promise<boolean>;
|
|
9
|
+
/**
|
|
10
|
+
* Gets all files that have either .yml or .yaml extension in the given directory.
|
|
11
|
+
*/
|
|
12
|
+
export declare const getYamlFiles: (directory: string) => Promise<string[]>;
|
|
13
|
+
/**
|
|
14
|
+
* Gets fileName from the given path without an extension.
|
|
15
|
+
*/
|
|
16
|
+
export declare const getFileName: (filePath: string) => string;
|
|
17
|
+
/**
|
|
18
|
+
* Removes the given file if exists.
|
|
19
|
+
*/
|
|
20
|
+
export declare const removeFileIfExists: (filePath: string) => Promise<void>;
|