@grnsft/if 1.0.2 → 1.1.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/.dockerignore +10 -0
- package/CONTAINER.md +148 -0
- package/Dockerfile +73 -0
- package/HELM_CHART.md +96 -0
- package/README.md +56 -0
- package/bin/docker-entrypoint.sh +15 -0
- package/build/common/types/manifest.d.ts +1 -0
- package/build/common/types/manifest.js +1 -1
- package/build/common/util/debug-logger.js +4 -18
- package/build/common/util/storage.d.ts +9 -0
- package/build/common/util/storage.js +24 -0
- package/build/if-api/config/config.d.ts +9 -0
- package/build/if-api/config/config.js +58 -0
- package/build/if-api/config/index.d.ts +2 -0
- package/build/if-api/config/index.js +8 -0
- package/build/if-api/config/strings.d.ts +16 -0
- package/build/if-api/config/strings.js +20 -0
- package/build/if-api/index.d.ts +2 -0
- package/build/if-api/index.js +268 -0
- package/build/if-api/types/process-args.d.ts +18 -0
- package/build/if-api/types/process-args.js +3 -0
- package/build/if-api/util/args.d.ts +5 -0
- package/build/if-api/util/args.js +42 -0
- package/build/if-metadata-check/config/config.d.ts +5 -0
- package/build/if-metadata-check/config/config.js +26 -0
- package/build/if-metadata-check/config/strings.d.ts +5 -0
- package/build/if-metadata-check/config/strings.js +9 -0
- package/build/if-metadata-check/index.d.ts +2 -0
- package/build/if-metadata-check/index.js +30 -0
- package/build/if-metadata-check/types/plugin.d.ts +7 -0
- package/build/if-metadata-check/types/plugin.js +3 -0
- package/build/if-metadata-check/types/process-args.d.ts +5 -0
- package/build/if-metadata-check/types/process-args.js +3 -0
- package/build/if-metadata-check/util/args.d.ts +57 -0
- package/build/if-metadata-check/util/args.js +29 -0
- package/build/if-metadata-check/util/metadata-checker.d.ts +44 -0
- package/build/if-metadata-check/util/metadata-checker.js +99 -0
- package/build/if-run/index.js +1 -1
- package/build/if-run/lib/aggregate.d.ts +2 -2
- package/build/if-run/lib/aggregate.js +5 -19
- package/build/if-run/lib/compute.d.ts +1 -1
- package/build/if-run/lib/compute.js +10 -9
- package/build/if-run/lib/environment.d.ts +5 -1
- package/build/if-run/lib/environment.js +21 -16
- package/build/if-run/lib/initialize.d.ts +12 -0
- package/build/if-run/lib/initialize.js +37 -3
- package/build/if-run/lib/regroup.d.ts +3 -2
- package/build/if-run/lib/regroup.js +13 -9
- package/build/if-run/types/compute.d.ts +1 -1
- package/build/if-run/types/compute.js +1 -1
- package/helm-chart/.helmignore +23 -0
- package/helm-chart/Chart.yaml +24 -0
- package/helm-chart/templates/NOTES.txt +22 -0
- package/helm-chart/templates/_helpers.tpl +62 -0
- package/helm-chart/templates/additionalPlugins.yaml +13 -0
- package/helm-chart/templates/deployment.yaml +144 -0
- package/helm-chart/templates/disabledPlugins.yaml +11 -0
- package/helm-chart/templates/env-configmap.yaml +10 -0
- package/helm-chart/templates/env-secret.yaml +10 -0
- package/helm-chart/templates/hpa.yaml +32 -0
- package/helm-chart/templates/ingress.yaml +43 -0
- package/helm-chart/templates/npmrc.yaml +11 -0
- package/helm-chart/templates/service.yaml +24 -0
- package/helm-chart/templates/serviceaccount.yaml +13 -0
- package/helm-chart/templates/tests/test-connection.yaml +15 -0
- package/helm-chart/values.yaml +175 -0
- package/manifests/examples/bugs/aggregation-error-wrong-metric.yml +173 -0
- package/manifests/examples/bugs/input-error-missing-duration.yml +25 -0
- package/manifests/examples/bugs/mock-observations-failure-duration-is-zero.yml +33 -0
- package/manifests/examples/bugs/pipeline-error-naming-mismatch.yml +32 -0
- package/manifests/examples/bugs/pipeline-error-uninitialized-plugin.yml +33 -0
- package/manifests/examples/bugs/pipeline-ordering-error.yml +91 -0
- package/manifests/examples/builtins/divide/success-denominator-equal-zero.yml +36 -0
- package/manifests/examples/builtins/mock-observations/failure-invalid-config-cpu-range.yml +0 -1
- package/manifests/examples/builtins/mock-observations/failure-invalid-memory-utilization-range.yml +0 -1
- package/manifests/examples/builtins/mock-observations/failure-missing-timestamp-from-param.yml +0 -1
- package/manifests/examples/builtins/mock-observations/success.yml +0 -1
- package/manifests/examples/builtins/sci/failure-invalid-config-value.yml +0 -1
- package/manifests/examples/builtins/sci/failure-missing-input-param.yml +0 -1
- package/manifests/examples/builtins/sci/success.yml +0 -1
- package/manifests/examples/builtins/sci-embodied/failure-invalid-default-emission-value.yml +22 -0
- package/manifests/examples/builtins/time-sync/failure-missing-config.yml +0 -2
- package/manifests/examples/builtins/time-sync/success.yml +0 -2
- package/manifests/examples/features/aggregate-failure-invalid-metrics.yml +50 -0
- package/manifests/examples/features/aggregate-failure-missing-metric-in-inputs.yml +50 -0
- package/manifests/examples/features/aggregate-horizontal.yml +58 -0
- package/manifests/examples/features/aggregate-vertical.yml +58 -0
- package/manifests/examples/features/aggregate.yml +58 -0
- package/manifests/examples/pipelines/cloud-metadata-divide.yml +36 -0
- package/manifests/examples/pipelines/pipeline-with-mocks.yml +0 -1
- package/manifests/examples/pipelines/scenario-5.yml +0 -1
- package/manifests/outputs/bugs/mock-observations-failure-duration-is-zero.yaml +0 -1
- package/manifests/outputs/builtins/mock-observations/failure-invalid-config-cpu-range.yaml +0 -1
- package/manifests/outputs/builtins/mock-observations/failure-invalid-memory-utilization-range.yaml +0 -1
- package/manifests/outputs/builtins/mock-observations/failure-missing-timestamp-from-param.yaml +0 -1
- package/manifests/outputs/builtins/sci/failure-invalid-config-value.yaml +0 -1
- package/manifests/outputs/builtins/sci/failure-missing-input-param.yaml +0 -1
- package/manifests/outputs/builtins/time-sync/failure-missing-config.yaml +0 -2
- package/manifests/outputs/features/regroup/success.yaml +72 -0
- package/manifests/outputs/pipelines/pipeline-with-aggregate.yaml +1291 -0
- package/manifests/outputs/pipelines/scenario-3.yaml +126 -0
- package/openapi.yaml +424 -0
- package/package.json +8 -3
- package/with-plugins/Dockerfile +59 -0
- package/manifests/outputs/builtins/interpolation/interpolation.yaml +0 -81
- package/manifests/outputs/features/failure-invalid-regroup.yaml +0 -87
- package/manifests/outputs/features/failure-missing-cloud-instance-type.yaml +0 -86
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { IFPlugin } from '../types/plugin';
|
|
2
|
+
/**
|
|
3
|
+
* Extracts a set of parameter values from the configurations of the provided plugins.
|
|
4
|
+
*
|
|
5
|
+
* @param plugins - An array of plugins, each containing configuration data.
|
|
6
|
+
* @param parameters - Additional parameter keys to extract from the plugin configurations.
|
|
7
|
+
* @returns A set of parameter values extracted from the plugin configurations.
|
|
8
|
+
*/
|
|
9
|
+
export declare const getParameters: (plugins: IFPlugin[], parameters: string[]) => Set<string>;
|
|
10
|
+
/**
|
|
11
|
+
* Extracts a set of parameters that have defined metadata from the provided plugins.
|
|
12
|
+
*
|
|
13
|
+
* @param plugins - An array of plugins, each containing metadata information.
|
|
14
|
+
* @returns A set of parameter names that have associated metadata.
|
|
15
|
+
*/
|
|
16
|
+
export declare const getParametersWithMetadata: (plugins: IFPlugin[]) => Set<string>;
|
|
17
|
+
/**
|
|
18
|
+
* Extracts parameters with metadata from a single plugin.
|
|
19
|
+
*
|
|
20
|
+
* @param plugin - A plugin object containing metadata information.
|
|
21
|
+
* @returns An array of parameter names that have associated metadata, including inputs and outputs.
|
|
22
|
+
*/
|
|
23
|
+
export declare const extractParametersWithMetadata: (plugin: IFPlugin) => string[];
|
|
24
|
+
/**
|
|
25
|
+
* Extracts parameter values from a plugin's configuration based on specified keys.
|
|
26
|
+
*
|
|
27
|
+
* @param config - The configuration object of a plugin.
|
|
28
|
+
* @param keys - An array of keys to look for in the configuration object.
|
|
29
|
+
* @returns An array of parameter values corresponding to the specified keys.
|
|
30
|
+
*/
|
|
31
|
+
export declare const extractParameters: (config: Record<string, any> | undefined, keys: string[]) => any[];
|
|
32
|
+
/**
|
|
33
|
+
* Calculates the coverage of metadata for a given set of parameters.
|
|
34
|
+
*
|
|
35
|
+
* @param parameterSet - A set of all parameters extracted from plugin configurations.
|
|
36
|
+
* @param parameterWithMetadataSet - A set of parameters that have associated metadata.
|
|
37
|
+
* @returns An object containing:
|
|
38
|
+
* - `percentage`: The percentage of parameters with metadata coverage.
|
|
39
|
+
* - `missingParameters`: An array of parameters that lack metadata coverage.
|
|
40
|
+
*/
|
|
41
|
+
export declare const calculateMetadataCoverage: (parameterSet: Set<string>, parameterWithMetadataSet: Set<string>) => {
|
|
42
|
+
percentage: number;
|
|
43
|
+
missingParameters: string[];
|
|
44
|
+
};
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.calculateMetadataCoverage = exports.extractParameters = exports.extractParametersWithMetadata = exports.getParametersWithMetadata = exports.getParameters = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Extracts a set of parameter values from the configurations of the provided plugins.
|
|
6
|
+
*
|
|
7
|
+
* @param plugins - An array of plugins, each containing configuration data.
|
|
8
|
+
* @param parameters - Additional parameter keys to extract from the plugin configurations.
|
|
9
|
+
* @returns A set of parameter values extracted from the plugin configurations.
|
|
10
|
+
*/
|
|
11
|
+
const getParameters = (plugins, parameters) => {
|
|
12
|
+
return new Set(plugins.flatMap(plugin => (0, exports.extractParameters)(plugin.config, [
|
|
13
|
+
'input-parameter',
|
|
14
|
+
'output-parameter',
|
|
15
|
+
'input-parameters',
|
|
16
|
+
'output',
|
|
17
|
+
...parameters,
|
|
18
|
+
])));
|
|
19
|
+
};
|
|
20
|
+
exports.getParameters = getParameters;
|
|
21
|
+
/**
|
|
22
|
+
* Extracts a set of parameters that have defined metadata from the provided plugins.
|
|
23
|
+
*
|
|
24
|
+
* @param plugins - An array of plugins, each containing metadata information.
|
|
25
|
+
* @returns A set of parameter names that have associated metadata.
|
|
26
|
+
*/
|
|
27
|
+
const getParametersWithMetadata = (plugins) => {
|
|
28
|
+
return new Set(plugins.flatMap(plugin => (0, exports.extractParametersWithMetadata)(plugin)));
|
|
29
|
+
};
|
|
30
|
+
exports.getParametersWithMetadata = getParametersWithMetadata;
|
|
31
|
+
/**
|
|
32
|
+
* Extracts parameters with metadata from a single plugin.
|
|
33
|
+
*
|
|
34
|
+
* @param plugin - A plugin object containing metadata information.
|
|
35
|
+
* @returns An array of parameter names that have associated metadata, including inputs and outputs.
|
|
36
|
+
*/
|
|
37
|
+
const extractParametersWithMetadata = (plugin) => {
|
|
38
|
+
if (!plugin['parameter-metadata'])
|
|
39
|
+
return [];
|
|
40
|
+
const { inputs, outputs } = plugin['parameter-metadata'];
|
|
41
|
+
return [
|
|
42
|
+
...(inputs ? Object.keys(inputs) : []),
|
|
43
|
+
...(outputs ? Object.keys(outputs) : []),
|
|
44
|
+
];
|
|
45
|
+
};
|
|
46
|
+
exports.extractParametersWithMetadata = extractParametersWithMetadata;
|
|
47
|
+
/**
|
|
48
|
+
* Extracts parameter values from a plugin's configuration based on specified keys.
|
|
49
|
+
*
|
|
50
|
+
* @param config - The configuration object of a plugin.
|
|
51
|
+
* @param keys - An array of keys to look for in the configuration object.
|
|
52
|
+
* @returns An array of parameter values corresponding to the specified keys.
|
|
53
|
+
*/
|
|
54
|
+
const extractParameters = (config, keys) => {
|
|
55
|
+
if (!config)
|
|
56
|
+
return [];
|
|
57
|
+
return keys.flatMap(key => {
|
|
58
|
+
if (key in config && isStringOrStringArray(config[key])) {
|
|
59
|
+
return config[key];
|
|
60
|
+
}
|
|
61
|
+
return [];
|
|
62
|
+
});
|
|
63
|
+
};
|
|
64
|
+
exports.extractParameters = extractParameters;
|
|
65
|
+
/**
|
|
66
|
+
* Calculates the coverage of metadata for a given set of parameters.
|
|
67
|
+
*
|
|
68
|
+
* @param parameterSet - A set of all parameters extracted from plugin configurations.
|
|
69
|
+
* @param parameterWithMetadataSet - A set of parameters that have associated metadata.
|
|
70
|
+
* @returns An object containing:
|
|
71
|
+
* - `percentage`: The percentage of parameters with metadata coverage.
|
|
72
|
+
* - `missingParameters`: An array of parameters that lack metadata coverage.
|
|
73
|
+
*/
|
|
74
|
+
const calculateMetadataCoverage = (parameterSet, parameterWithMetadataSet) => {
|
|
75
|
+
const totalParameters = parameterSet.size;
|
|
76
|
+
const parametersWithMetadata = [...parameterSet].filter(param => parameterWithMetadataSet.has(param)).length;
|
|
77
|
+
const percentage = totalParameters === 0
|
|
78
|
+
? 100
|
|
79
|
+
: (parametersWithMetadata / totalParameters) * 100;
|
|
80
|
+
const missingParameters = [...parameterSet].filter(parameter => !parameterWithMetadataSet.has(parameter));
|
|
81
|
+
return { percentage, missingParameters };
|
|
82
|
+
};
|
|
83
|
+
exports.calculateMetadataCoverage = calculateMetadataCoverage;
|
|
84
|
+
/**
|
|
85
|
+
* Checks if the given parameter is a string or an array of strings.
|
|
86
|
+
*
|
|
87
|
+
* @param parameter - The parameter to validate.
|
|
88
|
+
* @returns `true` if the parameter is a string or an array of strings, otherwise `false`.
|
|
89
|
+
*/
|
|
90
|
+
const isStringOrStringArray = (parameter) => {
|
|
91
|
+
if (typeof parameter === 'string') {
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
if (Array.isArray(parameter)) {
|
|
95
|
+
return parameter.every(item => typeof item === 'string');
|
|
96
|
+
}
|
|
97
|
+
return false;
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWV0YWRhdGEtY2hlY2tlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pZi1tZXRhZGF0YS1jaGVjay91dGlsL21ldGFkYXRhLWNoZWNrZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUE7Ozs7OztHQU1HO0FBQ0ksTUFBTSxhQUFhLEdBQUcsQ0FBQyxPQUFtQixFQUFFLFVBQW9CLEVBQUUsRUFBRTtJQUN6RSxPQUFPLElBQUksR0FBRyxDQUNaLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FDdkIsSUFBQSx5QkFBaUIsRUFBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQy9CLGlCQUFpQjtRQUNqQixrQkFBa0I7UUFDbEIsa0JBQWtCO1FBQ2xCLFFBQVE7UUFDUixHQUFHLFVBQVU7S0FDZCxDQUFDLENBQ0gsQ0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBWlcsUUFBQSxhQUFhLGlCQVl4QjtBQUVGOzs7OztHQUtHO0FBQ0ksTUFBTSx5QkFBeUIsR0FBRyxDQUFDLE9BQW1CLEVBQUUsRUFBRTtJQUMvRCxPQUFPLElBQUksR0FBRyxDQUNaLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFBLHFDQUE2QixFQUFDLE1BQU0sQ0FBQyxDQUFDLENBQ2pFLENBQUM7QUFDSixDQUFDLENBQUM7QUFKVyxRQUFBLHlCQUF5Qiw2QkFJcEM7QUFFRjs7Ozs7R0FLRztBQUNJLE1BQU0sNkJBQTZCLEdBQUcsQ0FBQyxNQUFnQixFQUFFLEVBQUU7SUFDaEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQztRQUFFLE9BQU8sRUFBRSxDQUFDO0lBQzdDLE1BQU0sRUFBQyxNQUFNLEVBQUUsT0FBTyxFQUFDLEdBQUcsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDdkQsT0FBTztRQUNMLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUN0QyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDekMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQVBXLFFBQUEsNkJBQTZCLGlDQU94QztBQUVGOzs7Ozs7R0FNRztBQUNJLE1BQU0saUJBQWlCLEdBQUcsQ0FDL0IsTUFBdUMsRUFDdkMsSUFBYyxFQUNkLEVBQUU7SUFDRixJQUFJLENBQUMsTUFBTTtRQUFFLE9BQU8sRUFBRSxDQUFDO0lBQ3ZCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtRQUN4QixJQUFJLEdBQUcsSUFBSSxNQUFNLElBQUkscUJBQXFCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDdkQsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDcEI7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDO0FBWFcsUUFBQSxpQkFBaUIscUJBVzVCO0FBRUY7Ozs7Ozs7O0dBUUc7QUFDSSxNQUFNLHlCQUF5QixHQUFHLENBQ3ZDLFlBQXlCLEVBQ3pCLHdCQUFxQyxFQUNyQyxFQUFFO0lBQ0YsTUFBTSxlQUFlLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztJQUMxQyxNQUFNLHNCQUFzQixHQUFHLENBQUMsR0FBRyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FDOUQsd0JBQXdCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUNwQyxDQUFDLE1BQU0sQ0FBQztJQUNULE1BQU0sVUFBVSxHQUNkLGVBQWUsS0FBSyxDQUFDO1FBQ25CLENBQUMsQ0FBQyxHQUFHO1FBQ0wsQ0FBQyxDQUFDLENBQUMsc0JBQXNCLEdBQUcsZUFBZSxDQUFDLEdBQUcsR0FBRyxDQUFDO0lBRXZELE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxHQUFHLFlBQVksQ0FBQyxDQUFDLE1BQU0sQ0FDaEQsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FDdEQsQ0FBQztJQUVGLE9BQU8sRUFBQyxVQUFVLEVBQUUsaUJBQWlCLEVBQUMsQ0FBQztBQUN6QyxDQUFDLENBQUM7QUFsQlcsUUFBQSx5QkFBeUIsNkJBa0JwQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLFNBQWtCLEVBQVcsRUFBRTtJQUM1RCxJQUFJLE9BQU8sU0FBUyxLQUFLLFFBQVEsRUFBRTtRQUNqQyxPQUFPLElBQUksQ0FBQztLQUNiO0lBQ0QsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1FBQzVCLE9BQU8sU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDO0tBQzFEO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0lGUGx1Z2lufSBmcm9tICcuLi90eXBlcy9wbHVnaW4nO1xuXG4vKipcbiAqIEV4dHJhY3RzIGEgc2V0IG9mIHBhcmFtZXRlciB2YWx1ZXMgZnJvbSB0aGUgY29uZmlndXJhdGlvbnMgb2YgdGhlIHByb3ZpZGVkIHBsdWdpbnMuXG4gKlxuICogQHBhcmFtIHBsdWdpbnMgLSBBbiBhcnJheSBvZiBwbHVnaW5zLCBlYWNoIGNvbnRhaW5pbmcgY29uZmlndXJhdGlvbiBkYXRhLlxuICogQHBhcmFtIHBhcmFtZXRlcnMgLSBBZGRpdGlvbmFsIHBhcmFtZXRlciBrZXlzIHRvIGV4dHJhY3QgZnJvbSB0aGUgcGx1Z2luIGNvbmZpZ3VyYXRpb25zLlxuICogQHJldHVybnMgQSBzZXQgb2YgcGFyYW1ldGVyIHZhbHVlcyBleHRyYWN0ZWQgZnJvbSB0aGUgcGx1Z2luIGNvbmZpZ3VyYXRpb25zLlxuICovXG5leHBvcnQgY29uc3QgZ2V0UGFyYW1ldGVycyA9IChwbHVnaW5zOiBJRlBsdWdpbltdLCBwYXJhbWV0ZXJzOiBzdHJpbmdbXSkgPT4ge1xuICByZXR1cm4gbmV3IFNldDxzdHJpbmc+KFxuICAgIHBsdWdpbnMuZmxhdE1hcChwbHVnaW4gPT5cbiAgICAgIGV4dHJhY3RQYXJhbWV0ZXJzKHBsdWdpbi5jb25maWcsIFtcbiAgICAgICAgJ2lucHV0LXBhcmFtZXRlcicsXG4gICAgICAgICdvdXRwdXQtcGFyYW1ldGVyJyxcbiAgICAgICAgJ2lucHV0LXBhcmFtZXRlcnMnLFxuICAgICAgICAnb3V0cHV0JyxcbiAgICAgICAgLi4ucGFyYW1ldGVycyxcbiAgICAgIF0pXG4gICAgKVxuICApO1xufTtcblxuLyoqXG4gKiBFeHRyYWN0cyBhIHNldCBvZiBwYXJhbWV0ZXJzIHRoYXQgaGF2ZSBkZWZpbmVkIG1ldGFkYXRhIGZyb20gdGhlIHByb3ZpZGVkIHBsdWdpbnMuXG4gKlxuICogQHBhcmFtIHBsdWdpbnMgLSBBbiBhcnJheSBvZiBwbHVnaW5zLCBlYWNoIGNvbnRhaW5pbmcgbWV0YWRhdGEgaW5mb3JtYXRpb24uXG4gKiBAcmV0dXJucyBBIHNldCBvZiBwYXJhbWV0ZXIgbmFtZXMgdGhhdCBoYXZlIGFzc29jaWF0ZWQgbWV0YWRhdGEuXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRQYXJhbWV0ZXJzV2l0aE1ldGFkYXRhID0gKHBsdWdpbnM6IElGUGx1Z2luW10pID0+IHtcbiAgcmV0dXJuIG5ldyBTZXQ8c3RyaW5nPihcbiAgICBwbHVnaW5zLmZsYXRNYXAocGx1Z2luID0+IGV4dHJhY3RQYXJhbWV0ZXJzV2l0aE1ldGFkYXRhKHBsdWdpbikpXG4gICk7XG59O1xuXG4vKipcbiAqIEV4dHJhY3RzIHBhcmFtZXRlcnMgd2l0aCBtZXRhZGF0YSBmcm9tIGEgc2luZ2xlIHBsdWdpbi5cbiAqXG4gKiBAcGFyYW0gcGx1Z2luIC0gQSBwbHVnaW4gb2JqZWN0IGNvbnRhaW5pbmcgbWV0YWRhdGEgaW5mb3JtYXRpb24uXG4gKiBAcmV0dXJucyBBbiBhcnJheSBvZiBwYXJhbWV0ZXIgbmFtZXMgdGhhdCBoYXZlIGFzc29jaWF0ZWQgbWV0YWRhdGEsIGluY2x1ZGluZyBpbnB1dHMgYW5kIG91dHB1dHMuXG4gKi9cbmV4cG9ydCBjb25zdCBleHRyYWN0UGFyYW1ldGVyc1dpdGhNZXRhZGF0YSA9IChwbHVnaW46IElGUGx1Z2luKSA9PiB7XG4gIGlmICghcGx1Z2luWydwYXJhbWV0ZXItbWV0YWRhdGEnXSkgcmV0dXJuIFtdO1xuICBjb25zdCB7aW5wdXRzLCBvdXRwdXRzfSA9IHBsdWdpblsncGFyYW1ldGVyLW1ldGFkYXRhJ107XG4gIHJldHVybiBbXG4gICAgLi4uKGlucHV0cyA/IE9iamVjdC5rZXlzKGlucHV0cykgOiBbXSksXG4gICAgLi4uKG91dHB1dHMgPyBPYmplY3Qua2V5cyhvdXRwdXRzKSA6IFtdKSxcbiAgXTtcbn07XG5cbi8qKlxuICogRXh0cmFjdHMgcGFyYW1ldGVyIHZhbHVlcyBmcm9tIGEgcGx1Z2luJ3MgY29uZmlndXJhdGlvbiBiYXNlZCBvbiBzcGVjaWZpZWQga2V5cy5cbiAqXG4gKiBAcGFyYW0gY29uZmlnIC0gVGhlIGNvbmZpZ3VyYXRpb24gb2JqZWN0IG9mIGEgcGx1Z2luLlxuICogQHBhcmFtIGtleXMgLSBBbiBhcnJheSBvZiBrZXlzIHRvIGxvb2sgZm9yIGluIHRoZSBjb25maWd1cmF0aW9uIG9iamVjdC5cbiAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHBhcmFtZXRlciB2YWx1ZXMgY29ycmVzcG9uZGluZyB0byB0aGUgc3BlY2lmaWVkIGtleXMuXG4gKi9cbmV4cG9ydCBjb25zdCBleHRyYWN0UGFyYW1ldGVycyA9IChcbiAgY29uZmlnOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkLFxuICBrZXlzOiBzdHJpbmdbXVxuKSA9PiB7XG4gIGlmICghY29uZmlnKSByZXR1cm4gW107XG4gIHJldHVybiBrZXlzLmZsYXRNYXAoa2V5ID0+IHtcbiAgICBpZiAoa2V5IGluIGNvbmZpZyAmJiBpc1N0cmluZ09yU3RyaW5nQXJyYXkoY29uZmlnW2tleV0pKSB7XG4gICAgICByZXR1cm4gY29uZmlnW2tleV07XG4gICAgfVxuICAgIHJldHVybiBbXTtcbiAgfSk7XG59O1xuXG4vKipcbiAqIENhbGN1bGF0ZXMgdGhlIGNvdmVyYWdlIG9mIG1ldGFkYXRhIGZvciBhIGdpdmVuIHNldCBvZiBwYXJhbWV0ZXJzLlxuICpcbiAqIEBwYXJhbSBwYXJhbWV0ZXJTZXQgLSBBIHNldCBvZiBhbGwgcGFyYW1ldGVycyBleHRyYWN0ZWQgZnJvbSBwbHVnaW4gY29uZmlndXJhdGlvbnMuXG4gKiBAcGFyYW0gcGFyYW1ldGVyV2l0aE1ldGFkYXRhU2V0IC0gQSBzZXQgb2YgcGFyYW1ldGVycyB0aGF0IGhhdmUgYXNzb2NpYXRlZCBtZXRhZGF0YS5cbiAqIEByZXR1cm5zIEFuIG9iamVjdCBjb250YWluaW5nOlxuICogICAtIGBwZXJjZW50YWdlYDogVGhlIHBlcmNlbnRhZ2Ugb2YgcGFyYW1ldGVycyB3aXRoIG1ldGFkYXRhIGNvdmVyYWdlLlxuICogICAtIGBtaXNzaW5nUGFyYW1ldGVyc2A6IEFuIGFycmF5IG9mIHBhcmFtZXRlcnMgdGhhdCBsYWNrIG1ldGFkYXRhIGNvdmVyYWdlLlxuICovXG5leHBvcnQgY29uc3QgY2FsY3VsYXRlTWV0YWRhdGFDb3ZlcmFnZSA9IChcbiAgcGFyYW1ldGVyU2V0OiBTZXQ8c3RyaW5nPixcbiAgcGFyYW1ldGVyV2l0aE1ldGFkYXRhU2V0OiBTZXQ8c3RyaW5nPlxuKSA9PiB7XG4gIGNvbnN0IHRvdGFsUGFyYW1ldGVycyA9IHBhcmFtZXRlclNldC5zaXplO1xuICBjb25zdCBwYXJhbWV0ZXJzV2l0aE1ldGFkYXRhID0gWy4uLnBhcmFtZXRlclNldF0uZmlsdGVyKHBhcmFtID0+XG4gICAgcGFyYW1ldGVyV2l0aE1ldGFkYXRhU2V0LmhhcyhwYXJhbSlcbiAgKS5sZW5ndGg7XG4gIGNvbnN0IHBlcmNlbnRhZ2UgPVxuICAgIHRvdGFsUGFyYW1ldGVycyA9PT0gMFxuICAgICAgPyAxMDBcbiAgICAgIDogKHBhcmFtZXRlcnNXaXRoTWV0YWRhdGEgLyB0b3RhbFBhcmFtZXRlcnMpICogMTAwO1xuXG4gIGNvbnN0IG1pc3NpbmdQYXJhbWV0ZXJzID0gWy4uLnBhcmFtZXRlclNldF0uZmlsdGVyKFxuICAgIHBhcmFtZXRlciA9PiAhcGFyYW1ldGVyV2l0aE1ldGFkYXRhU2V0LmhhcyhwYXJhbWV0ZXIpXG4gICk7XG5cbiAgcmV0dXJuIHtwZXJjZW50YWdlLCBtaXNzaW5nUGFyYW1ldGVyc307XG59O1xuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgZ2l2ZW4gcGFyYW1ldGVyIGlzIGEgc3RyaW5nIG9yIGFuIGFycmF5IG9mIHN0cmluZ3MuXG4gKlxuICogQHBhcmFtIHBhcmFtZXRlciAtIFRoZSBwYXJhbWV0ZXIgdG8gdmFsaWRhdGUuXG4gKiBAcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHBhcmFtZXRlciBpcyBhIHN0cmluZyBvciBhbiBhcnJheSBvZiBzdHJpbmdzLCBvdGhlcndpc2UgYGZhbHNlYC5cbiAqL1xuY29uc3QgaXNTdHJpbmdPclN0cmluZ0FycmF5ID0gKHBhcmFtZXRlcjogdW5rbm93bik6IGJvb2xlYW4gPT4ge1xuICBpZiAodHlwZW9mIHBhcmFtZXRlciA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuICBpZiAoQXJyYXkuaXNBcnJheShwYXJhbWV0ZXIpKSB7XG4gICAgcmV0dXJuIHBhcmFtZXRlci5ldmVyeShpdGVtID0+IHR5cGVvZiBpdGVtID09PSAnc3RyaW5nJyk7XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufTtcbiJdfQ==
|
package/build/if-run/index.js
CHANGED
|
@@ -55,4 +55,4 @@ const impactEngine = async () => {
|
|
|
55
55
|
console.info(EXITING_IF);
|
|
56
56
|
};
|
|
57
57
|
impactEngine().catch(helpers_1.andHandle);
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaWYtcnVuL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDZDQUEyRDtBQUMzRCw0REFBNEQ7QUFDNUQsOERBQXdEO0FBQ3hELGtEQUE2QztBQUM3Qyw2Q0FBd0M7QUFFeEMsK0NBQTBDO0FBQzFDLG1EQUFvRDtBQUNwRCxpREFBNEM7QUFDNUMsMkNBQXNDO0FBQ3RDLDJDQUFzQztBQUN0QywyQ0FBc0M7QUFFdEMsc0NBQWtEO0FBQ2xELDRDQUF5QztBQUV6QyxxQ0FBaUM7QUFFakMsTUFBTSxFQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUMsR0FBRyxnQkFBTyxDQUFDO0FBQzFDLE1BQU0sRUFBQyxrQkFBa0IsRUFBQyxHQUFHLGdCQUFjLENBQUM7QUFFNUMsTUFBTSxZQUFZLEdBQUcsS0FBSyxJQUFJLEVBQUU7SUFDOUIsTUFBTSxPQUFPLEdBQUcsSUFBQSw0QkFBcUIsR0FBRSxDQUFDO0lBQ3hDLE1BQU0sRUFDSixTQUFTLEVBQ1QsYUFBYSxFQUNiLEtBQUssRUFDTCxPQUFPLEVBQ1AsT0FBTyxFQUNQLE9BQU8sRUFBRSxXQUFXLEVBQ3BCLE1BQU0sR0FDUCxHQUFHLE9BQU8sQ0FBQztJQUVaLDBCQUFXLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBRTVDLGVBQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNoQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBRTFCLE1BQU0sRUFBQyxXQUFXLEVBQUMsR0FBRyxNQUFNLElBQUEsV0FBSSxFQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLE1BQU0sV0FBVyxHQUFHLE1BQU0sSUFBQSwrQkFBaUIsRUFBQyxXQUFXLENBQUMsQ0FBQztJQUV6RCxJQUFJO1FBQ0YsTUFBTSxFQUFDLElBQUksRUFBRSxHQUFHLE9BQU8sRUFBQyxHQUFHLElBQUEsOEJBQWdCLEVBQUMsV0FBVyxDQUFDLENBQUM7UUFDekQsTUFBTSxhQUFhLEdBQUcsTUFBTSxJQUFBLHVCQUFVLEVBQUMsT0FBTyxDQUFDLENBQUM7UUFDaEQsTUFBTSxZQUFZLEdBQUcsTUFBTSxJQUFBLGlCQUFPLEVBQUMsSUFBSSxFQUFFO1lBQ3ZDLE9BQU87WUFDUCxhQUFhO1lBQ2IsT0FBTztZQUNQLE9BQU87WUFDUCxPQUFPLEVBQUUsV0FBVztZQUNwQixNQUFNO1NBQ1AsQ0FBQyxDQUFDO1FBRUgsTUFBTSxjQUFjLEdBQUcsSUFBQSxxQkFBUyxFQUFDLFlBQVksRUFBRSxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDcEUsV0FBVyxDQUFDLFNBQVMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsSUFBQSxpQkFBTyxHQUFFLENBQUMsQ0FBQztRQUV2RCxNQUFNLElBQUEsaUJBQU8sRUFBQyxjQUFjLEVBQUUsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0tBQ3ZEO0lBQUMsT0FBTyxLQUFLLEVBQUU7UUFDZCxJQUFJLEtBQUssWUFBWSxLQUFLLEVBQUU7WUFDMUIsNEZBQTRGO1lBQzVGLFdBQVcsQ0FBQyxTQUFVLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztZQUN2QyxXQUFXLENBQUMsU0FBVSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDaEQsZUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQixNQUFNLEVBQUMsSUFBSSxFQUFFLEdBQUcsT0FBTyxFQUFDLEdBQUcsV0FBVyxDQUFDO1lBRXZDLElBQUksS0FBSyxDQUFDLElBQUksS0FBSyxjQUFjLEVBQUU7Z0JBQ2pDLElBQUEsaUJBQU8sRUFBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO2FBQ3ZDO1NBQ0Y7S0FDRjtJQUNELE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7QUFDM0IsQ0FBQyxDQUFDO0FBRUYsWUFBWSxFQUFFLENBQUMsS0FBSyxDQUFDLG1CQUFTLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbmltcG9ydCB7U1RSSU5HUyBhcyBDT01NT05fU1RSSU5HU30gZnJvbSAnLi4vY29tbW9uL2NvbmZpZyc7XG5pbXBvcnQge3ZhbGlkYXRlTWFuaWZlc3R9IGZyb20gJy4uL2NvbW1vbi91dGlsL3ZhbGlkYXRpb25zJztcbmltcG9ydCB7ZGVidWdMb2dnZXJ9IGZyb20gJy4uL2NvbW1vbi91dGlsL2RlYnVnLWxvZ2dlcic7XG5pbXBvcnQge2xvZ2dlcn0gZnJvbSAnLi4vY29tbW9uL3V0aWwvbG9nZ2VyJztcbmltcG9ydCB7bG9hZH0gZnJvbSAnLi4vY29tbW9uL2xpYi9sb2FkJztcblxuaW1wb3J0IHthZ2dyZWdhdGV9IGZyb20gJy4vbGliL2FnZ3JlZ2F0ZSc7XG5pbXBvcnQge2luamVjdEVudmlyb25tZW50fSBmcm9tICcuL2xpYi9lbnZpcm9ubWVudCc7XG5pbXBvcnQge2luaXRpYWxpemV9IGZyb20gJy4vbGliL2luaXRpYWxpemUnO1xuaW1wb3J0IHtjb21wdXRlfSBmcm9tICcuL2xpYi9jb21wdXRlJztcbmltcG9ydCB7ZXhoYXVzdH0gZnJvbSAnLi9saWIvZXhoYXVzdCc7XG5pbXBvcnQge2V4cGxhaW59IGZyb20gJy4vbGliL2V4cGxhaW4nO1xuXG5pbXBvcnQge3BhcnNlSWZSdW5Qcm9jZXNzQXJnc30gZnJvbSAnLi91dGlsL2FyZ3MnO1xuaW1wb3J0IHthbmRIYW5kbGV9IGZyb20gJy4vdXRpbC9oZWxwZXJzJztcblxuaW1wb3J0IHtTVFJJTkdTfSBmcm9tICcuL2NvbmZpZyc7XG5cbmNvbnN0IHtFWElUSU5HX0lGLCBTVEFSVElOR19JRn0gPSBTVFJJTkdTO1xuY29uc3Qge0RJU0NMQUlNRVJfTUVTU0FHRX0gPSBDT01NT05fU1RSSU5HUztcblxuY29uc3QgaW1wYWN0RW5naW5lID0gYXN5bmMgKCkgPT4ge1xuICBjb25zdCBvcHRpb25zID0gcGFyc2VJZlJ1blByb2Nlc3NBcmdzKCk7XG4gIGNvbnN0IHtcbiAgICBpbnB1dFBhdGgsXG4gICAgb3V0cHV0T3B0aW9ucyxcbiAgICBkZWJ1ZyxcbiAgICBvYnNlcnZlLFxuICAgIHJlZ3JvdXAsXG4gICAgY29tcHV0ZTogY29tcHV0ZUZsYWcsXG4gICAgYXBwZW5kLFxuICB9ID0gb3B0aW9ucztcblxuICBkZWJ1Z0xvZ2dlci5vdmVycmlkZUNvbnNvbGVNZXRob2RzKCEhZGVidWcpO1xuXG4gIGxvZ2dlci5pbmZvKERJU0NMQUlNRVJfTUVTU0FHRSk7XG4gIGNvbnNvbGUuaW5mbyhTVEFSVElOR19JRik7XG5cbiAgY29uc3Qge3Jhd01hbmlmZXN0fSA9IGF3YWl0IGxvYWQoaW5wdXRQYXRoKTtcbiAgY29uc3QgZW52TWFuaWZlc3QgPSBhd2FpdCBpbmplY3RFbnZpcm9ubWVudChyYXdNYW5pZmVzdCk7XG5cbiAgdHJ5IHtcbiAgICBjb25zdCB7dHJlZSwgLi4uY29udGV4dH0gPSB2YWxpZGF0ZU1hbmlmZXN0KGVudk1hbmlmZXN0KTtcbiAgICBjb25zdCBwbHVnaW5TdG9yYWdlID0gYXdhaXQgaW5pdGlhbGl6ZShjb250ZXh0KTtcbiAgICBjb25zdCBjb21wdXRlZFRyZWUgPSBhd2FpdCBjb21wdXRlKHRyZWUsIHtcbiAgICAgIGNvbnRleHQsXG4gICAgICBwbHVnaW5TdG9yYWdlLFxuICAgICAgb2JzZXJ2ZSxcbiAgICAgIHJlZ3JvdXAsXG4gICAgICBjb21wdXRlOiBjb21wdXRlRmxhZyxcbiAgICAgIGFwcGVuZCxcbiAgICB9KTtcblxuICAgIGNvbnN0IGFnZ3JlZ2F0ZWRUcmVlID0gYWdncmVnYXRlKGNvbXB1dGVkVHJlZSwgY29udGV4dC5hZ2dyZWdhdGlvbik7XG4gICAgZW52TWFuaWZlc3QuZXhwbGFpbmVyICYmIChjb250ZXh0LmV4cGxhaW4gPSBleHBsYWluKCkpO1xuXG4gICAgYXdhaXQgZXhoYXVzdChhZ2dyZWdhdGVkVHJlZSwgY29udGV4dCwgb3V0cHV0T3B0aW9ucyk7XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcbiAgICAgIC8qKiBFeGVjdXRpb24gYmxvY2sgZXhpc3RzIGJlY2F1c2UgbWFuaWZlc3QgaXMgYWxyZWFkeSBwcm9jZXNzZWQuIFNldCdzIHN0YXR1cyB0byBgZmFpbGAuICovXG4gICAgICBlbnZNYW5pZmVzdC5leGVjdXRpb24hLnN0YXR1cyA9ICdmYWlsJztcbiAgICAgIGVudk1hbmlmZXN0LmV4ZWN1dGlvbiEuZXJyb3IgPSBlcnJvci50b1N0cmluZygpO1xuICAgICAgbG9nZ2VyLmVycm9yKGVycm9yKTtcbiAgICAgIGNvbnN0IHt0cmVlLCAuLi5jb250ZXh0fSA9IGVudk1hbmlmZXN0O1xuXG4gICAgICBpZiAoZXJyb3IubmFtZSAhPT0gJ0V4aGF1c3RFcnJvcicpIHtcbiAgICAgICAgZXhoYXVzdCh0cmVlLCBjb250ZXh0LCBvdXRwdXRPcHRpb25zKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgY29uc29sZS5pbmZvKEVYSVRJTkdfSUYpO1xufTtcblxuaW1wYWN0RW5naW5lKCkuY2F0Y2goYW5kSGFuZGxlKTtcbiJdfQ==
|
|
@@ -7,8 +7,8 @@ export declare const aggregate: (tree: any, aggregationParams: AggregationParams
|
|
|
7
7
|
/**
|
|
8
8
|
* Gets or stores aggregation metrics.
|
|
9
9
|
*/
|
|
10
|
-
export declare const storeAggregationMetrics: (aggregationMetrics?: AggregationMetricsWithMethod) =>
|
|
10
|
+
export declare const storeAggregationMetrics: (aggregationMetrics?: AggregationMetricsWithMethod) => any;
|
|
11
11
|
/**
|
|
12
12
|
* Returns aggregation method for given `metric`.
|
|
13
13
|
*/
|
|
14
|
-
export declare const getAggregationInfoFor: (metric: string) =>
|
|
14
|
+
export declare const getAggregationInfoFor: (metric: string) => any;
|
|
@@ -4,6 +4,7 @@ exports.getAggregationInfoFor = exports.storeAggregationMetrics = exports.aggreg
|
|
|
4
4
|
const consts_1 = require("@grnsft/if-core/consts");
|
|
5
5
|
const debug_logger_1 = require("../../common/util/debug-logger");
|
|
6
6
|
const logger_1 = require("../../common/util/logger");
|
|
7
|
+
const storage_1 = require("../../common/util/storage");
|
|
7
8
|
const aggregation_helper_1 = require("../util/aggregation-helper");
|
|
8
9
|
const log_memoize_1 = require("../util/log-memoize");
|
|
9
10
|
const strings_1 = require("../config/strings");
|
|
@@ -85,29 +86,14 @@ exports.aggregate = aggregate;
|
|
|
85
86
|
*/
|
|
86
87
|
const storeAggregationMetrics = (aggregationMetrics) => {
|
|
87
88
|
if (aggregationMetrics) {
|
|
88
|
-
|
|
89
|
-
...
|
|
89
|
+
(0, storage_1.getStorage)().metrics = {
|
|
90
|
+
...(0, storage_1.getStorage)().metrics,
|
|
90
91
|
...aggregationMetrics,
|
|
91
92
|
};
|
|
92
93
|
}
|
|
93
|
-
return
|
|
94
|
+
return (0, storage_1.getStorage)().metrics;
|
|
94
95
|
};
|
|
95
96
|
exports.storeAggregationMetrics = storeAggregationMetrics;
|
|
96
|
-
/**
|
|
97
|
-
* Creates an encapsulated object to retrieve the metrics.
|
|
98
|
-
*/
|
|
99
|
-
const metricManager = (() => {
|
|
100
|
-
let metric;
|
|
101
|
-
const manager = {
|
|
102
|
-
get metrics() {
|
|
103
|
-
return metric;
|
|
104
|
-
},
|
|
105
|
-
set metrics(value) {
|
|
106
|
-
metric = value;
|
|
107
|
-
},
|
|
108
|
-
};
|
|
109
|
-
return manager;
|
|
110
|
-
})();
|
|
111
97
|
/**
|
|
112
98
|
* Returns aggregation method for given `metric`.
|
|
113
99
|
*/
|
|
@@ -127,4 +113,4 @@ const getAggregationInfoFor = (metric) => {
|
|
|
127
113
|
};
|
|
128
114
|
};
|
|
129
115
|
exports.getAggregationInfoFor = getAggregationInfoFor;
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdncmVnYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2lmLXJ1bi9saWIvYWdncmVnYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUEyRDtBQUczRCxpRUFBMkQ7QUFDM0QscURBQWdEO0FBT2hELG1FQUFtRTtBQUNuRSxxREFBZ0Q7QUFFaEQsK0NBQTBDO0FBRTFDLE1BQU0sRUFDSixnQkFBZ0IsRUFDaEIsbUJBQW1CLEVBQ25CLGFBQWEsRUFDYiwyQkFBMkIsR0FDNUIsR0FBRyxpQkFBTyxDQUFDO0FBRVo7O0dBRUc7QUFDSCxNQUFNLDBCQUEwQixHQUFHLENBQUMsUUFBYSxFQUFFLENBQVMsRUFBRSxFQUFFO0lBQzlELE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFdkMsT0FBTyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUU7UUFDL0IsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUU3QixPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuQixDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQztBQUVGOzs7R0FHRztBQUNILE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxJQUFTLEVBQUUsT0FBaUIsRUFBRSxFQUFFO0lBQzNELE1BQU0sT0FBTyxHQUFtQixFQUFFLENBQUM7SUFDbkMsTUFBTSxNQUFNLEdBQVEsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFakQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ2pELE1BQU0saUJBQWlCLEdBQUcsMEJBQTBCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENB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QUMsRUFBRSxDQUFDO0FBRUw7O0dBRUc7QUFDSSxNQUFNLHFCQUFxQixHQUFHLENBQUMsTUFBYyxFQUFFLEVBQUU7SUFDdEQsMEJBQVcsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO0lBQ3JDLElBQUEseUJBQVcsRUFBQyxPQUFPLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ2pDLElBQUEseUJBQVcsRUFBQyxPQUFPLENBQUMsS0FBSyxFQUFFLDJCQUEyQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDaEUsTUFBTSx5QkFBeUIsR0FBRyxJQUFBLCtCQUF1QixHQUFFLENBQUM7SUFFNUQsSUFDRSx5QkFBeUI7UUFDekIsTUFBTSxDQUFDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFDdkQ7UUFDQSxPQUFPLHlCQUF5QixDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBQzFDO0lBRUQsSUFBQSx5QkFBVyxFQUFDLGVBQU0sQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFFaEQsT0FBTztRQUNMLElBQUksRUFBRSw0QkFBbUIsQ0FBQyxDQUFDLENBQUM7UUFDNUIsU0FBUyxFQUFFLDRCQUFtQixDQUFDLENBQUMsQ0FBQztLQUNsQyxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBbkJXLFFBQUEscUJBQXFCLHlCQW1CaEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FHR1JFR0FUSU9OX01FVEhPRFN9IGZyb20gJ0Bncm5zZnQvaWYtY29yZS9jb25zdHMnO1xuaW1wb3J0IHtQbHVnaW5QYXJhbXN9IGZyb20gJ0Bncm5zZnQvaWYtY29yZS90eXBlcyc7XG5cbmltcG9ydCB7ZGVidWdMb2dnZXJ9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlsL2RlYnVnLWxvZ2dlcic7XG5pbXBvcnQge2xvZ2dlcn0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWwvbG9nZ2VyJztcbmltcG9ydCB7XG4gIEFnZ3JlZ2F0aW9uUGFyYW1zLFxuICBBZ2dyZWdhdGlvblBhcmFtc1N1cmUsXG4gIEFnZ3JlZ2F0aW9uTWV0cmljc1dpdGhNZXRob2QsXG59IGZyb20gJy4uLy4uL2NvbW1vbi90eXBlcy9tYW5pZmVzdCc7XG5cbmltcG9ydCB7YWdncmVnYXRlT3V0cHV0c0ludG9PbmV9IGZyb20gJy4uL3V0aWwvYWdncmVnYXRpb24taGVscGVyJztcbmltcG9ydCB7bWVtb2l6ZWRMb2d9IGZyb20gJy4uL3V0aWwvbG9nLW1lbW9pemUnO1xuXG5pbXBvcnQge1NUUklOR1N9IGZyb20gJy4uL2NvbmZpZy9zdHJpbmdzJztcblxuY29uc3Qge1xuICBBR0dSRUdBVElOR19OT0RFLFxuICBBR0dSRUdBVElOR19PVVRQVVRTLFxuICBVTktOT1dOX1BBUkFNLFxuICBDSEVDS0lOR19BR0dSRUdBVElPTl9NRVRIT0QsXG59ID0gU1RSSU5HUztcblxuLyoqXG4gKiBHZXRzIGBpYHRoIGVsZW1lbnQgZnJvbSBhbGwgY2hpbGRyZW4gb3V0cHV0cyBhbmQgY29sbGVjdHMgdGhlbSBpbiBzaW5nbGUgYXJyYXkuXG4gKi9cbmNvbnN0IGdldEl0aEVsZW1lbnRzRnJvbUNoaWxkcmVuID0gKGNoaWxkcmVuOiBhbnksIGk6IG51bWJlcikgPT4ge1xuICBjb25zdCB2YWx1ZXMgPSBPYmplY3QudmFsdWVzKGNoaWxkcmVuKTtcblxuICByZXR1cm4gdmFsdWVzLm1hcCgodmFsdWU6IGFueSkgPT4ge1xuICAgIGNvbnN0IG91dHB1dCA9IHZhbHVlLm91dHB1dHM7XG5cbiAgICByZXR1cm4gb3V0cHV0W2ldO1xuICB9KTtcbn07XG5cbi8qKlxuICogMS4gR2V0cyB0aGUgaSd0aCBlbGVtZW50IGZyb20gZWFjaCBjaGlsZHJlbnMgb3V0cHV0cyAodHJlYXRpbmcgY2hpbGRyZW4gYXMgcm93cyBhbmQgd2UgYXJlIGFmdGVyIGEgY29sdW1uIG9mIGRhdGEpLlxuICogMi4gTm93IHdlIGp1c3QgYWdncmVnYXRlIG92ZXIgdGhlIGBpdGhTbGljZU9mT3V0cHV0c2AgdGhlIHNhbWUgYXMgd2UgZGlkIGZvciB0aGUgbm9ybWFsIG91dHB1dHMuXG4gKi9cbmNvbnN0IHRlbXBvcmFsQWdncmVnYXRpb24gPSAobm9kZTogYW55LCBtZXRyaWNzOiBzdHJpbmdbXSkgPT4ge1xuICBjb25zdCBvdXRwdXRzOiBQbHVnaW5QYXJhbXNbXSA9IFtdO1xuICBjb25zdCB2YWx1ZXM6IGFueSA9IE9iamVjdC52YWx1ZXMobm9kZS5jaGlsZHJlbik7XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZXNbMF0ub3V0cHV0cy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGl0aFNsaWNlT2ZPdXRwdXRzID0gZ2V0SXRoRWxlbWVudHNGcm9tQ2hpbGRyZW4obm9kZS5jaGlsZHJlbiwgaSk7XG4gICAgb3V0cHV0cy5wdXNoKGFnZ3JlZ2F0ZU91dHB1dHNJbnRvT25lKGl0aFNsaWNlT2ZPdXRwdXRzLCBtZXRyaWNzLCB0cnVlKSk7XG4gIH1cblxuICByZXR1cm4gb3V0cHV0cztcbn07XG5cbi8qKlxuICogTmF2aWdhdGVzIHRoZSB0cmVlIGRlcHRoIGZpcnN0LCBib3R0b20gdXAsXG4gKiAgbGVmdCB0byByaWdodCBhZ2dyZWdhdGluZyB0aGUgY29tcG9uZW50IG5vZGVzIGFuZCB0aGVuIHRoZSBncm91cGluZyBub2RlcyB3aWxsIGJlIGFnZ3JlZ2F0ZWRcbiAqICBvbmx5IHdoZW4gYWxsIHRoZWlyIGNoaWxkIG5vZGVzIGhhdmUgYmVlbiBhZ2dyZWdhdGVkLlxuICogMS4gQWdncmVnYXRlcyBhbGwgdGhlIGNoaWxkcmVuLlxuICogMi4gQXQgdGhpcyBwb2ludCB5b3UgY2FuIGJlIHBvc2l0aXZlIGFsbCB5b3VyIGNoaWxkcmVuIGhhdmUgYmVlbiBhZ2dyZWdhdGVkIGFuZCBzbyB5b3UgY2FuIG5vdyB3b3JrIG9uIGFnZ3JlZ2F0aW5nIHlvdXJzZWxmLlxuICogMy4gSXQncyBjb21wb25lbnQgbm9kZSwg0LBnZ3JlZ2F0ZXMganVzdCB0aGUgb3V0cHV0cyBvZiBUSElTIGNvbXBvbmVudCBub2RlIChob3Jpem9udGFsL2NvbXBvbmVudCBhZ2dyZWdhdGlvbikuXG4gKiA0LiBFbHNlIGl0J3MgZ3JvdXBpbmcgbm9kZSwgZmlyc3QgZG9lcyB0ZW1wb3JhbCBhZ2dyZWdhdGlvbi4gVGhpcyBhc3N1bWVzIGV2ZXJ5dGhpbmcgaXMgb24gdGhlIHNhbWUgdGltZS1ncmlkLlxuICogICAgVGhlIG91dHB1dHMgb2YgdGhlIGdyb3VwaW5nIG5vZGUgYXJlIHRoZSBhZ2dyZWdhdGVkIHRpbWUgYnVja2V0ZWQgb3V0cHV0cyBvZiBpdCdzIGNoaWxkcmVuLlxuICogNS4gTm93IGEgZ3JvdXBpbmcgbm9kZSBoYXMgaXQncyBvd24gb3V0cHV0cywgaXQgY2FuIGhvcml6b3RuYWxseSBhZ2dyZWdhdGUgdGhlbS5cbiAqL1xuY29uc3QgYWdncmVnYXRlTm9kZSA9IChub2RlOiBhbnksIGFnZ3JlZ2F0aW9uUGFyYW1zOiBBZ2dyZWdhdGlvblBhcmFtc1N1cmUpID0+IHtcbiAgY29uc3QgbWV0cmljcyA9IGFnZ3JlZ2F0aW9uUGFyYW1zIS5tZXRyaWNzO1xuICBjb25zdCB0eXBlID0gYWdncmVnYXRpb25QYXJhbXMhLnR5cGU7XG5cbiAgaWYgKG5vZGUuY2hpbGRyZW4pIHtcbiAgICBmb3IgKGNvbnN0IGNoaWxkIGluIG5vZGUuY2hpbGRyZW4pIHtcbiAgICAgIGNvbnNvbGUuZGVidWcoQUdHUkVHQVRJTkdfTk9ERShjaGlsZCkpO1xuXG4gICAgICBhZ2dyZWdhdGVOb2RlKG5vZGUuY2hpbGRyZW5bY2hpbGRdLCBhZ2dyZWdhdGlvblBhcmFtcyk7XG4gICAgfVxuICB9XG5cbiAgaWYgKCFub2RlLmNoaWxkcmVuKSB7XG4gICAgLyoqIGB0aW1lYCBhZ2dyZWdhdGlvbiBpcyB0aGUgbmV3IG5hbWUgb2YgYGhvcml6b250YWxgLiAqL1xuICAgIGlmICh0eXBlID09PSAnaG9yaXpvbnRhbCcgfHwgdHlwZSA9PT0gJ3RpbWUnIHx8IHR5cGUgPT09ICdib3RoJykge1xuICAgICAgbm9kZS5hZ2dyZWdhdGVkID0gYWdncmVnYXRlT3V0cHV0c0ludG9PbmUobm9kZS5vdXRwdXRzLCBtZXRyaWNzKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgLyoqIGBjb21wb25lbnRgIGFnZ3JlZ2F0aW9uIGlzIHRoZSBuZXcgbmFtZSBvZiBgdmVydGljYWxgLiAqL1xuICAgIGlmICh0eXBlID09PSAndmVydGljYWwnIHx8IHR5cGUgPT09ICdjb21wb25lbnQnIHx8IHR5cGUgPT09ICdib3RoJykge1xuICAgICAgY29uc3Qgb3V0cHV0cyA9IHRlbXBvcmFsQWdncmVnYXRpb24obm9kZSwgbWV0cmljcyk7XG4gICAgICBub2RlLm91dHB1dHMgPSBvdXRwdXRzO1xuICAgICAgbm9kZS5hZ2dyZWdhdGVkID0gYWdncmVnYXRlT3V0cHV0c0ludG9PbmUob3V0cHV0cywgbWV0cmljcyk7XG4gICAgfVxuICB9XG59O1xuXG4vKipcbiAqIElmIGFnZ3JlZ2F0aW9uIGlzIGRpc2FibGVkLCB0aGVuIHJldHVybnMgZ2l2ZW4gYHRyZWVgLlxuICogT3RoZXJ3aXNlIGNyZWF0ZXMgY29weSBvZiB0aGUgdHJlZSwgdGhlbiBhcHBsaWVzIGFnZ3JlZ2F0aW9uIHRvIGl0LlxuICovXG5leHBvcnQgY29uc3QgYWdncmVnYXRlID0gKHRyZWU6IGFueSwgYWdncmVnYXRpb25QYXJhbXM6IEFnZ3JlZ2F0aW9uUGFyYW1zKSA9PiB7XG4gIGNvbnNvbGUuZGVidWcoQUdHUkVHQVRJTkdfT1VUUFVUUyk7XG5cbiAgaWYgKCFhZ2dyZWdhdGlvblBhcmFtcyB8fCAhYWdncmVnYXRpb25QYXJhbXMudHlwZSkge1xuICAgIHJldHVybiB0cmVlO1xuICB9XG5cbiAgY29uc3QgY29weU9mVHJlZSA9IHN0cnVjdHVyZWRDbG9uZSh0cmVlKTtcbiAgYWdncmVnYXRlTm9kZShjb3B5T2ZUcmVlLCBhZ2dyZWdhdGlvblBhcmFtcyk7XG5cbiAgcmV0dXJuIGNvcHlPZlRyZWU7XG59O1xuXG4vKipcbiAqIEdldHMgb3Igc3RvcmVzIGFnZ3JlZ2F0aW9uIG1ldHJpY3MuXG4gKi9cbmV4cG9ydCBjb25zdCBzdG9yZUFnZ3JlZ2F0aW9uTWV0cmljcyA9IChcbiAgYWdncmVnYXRpb25NZXRyaWNzPzogQWdncmVnYXRpb25NZXRyaWNzV2l0aE1ldGhvZFxuKSA9PiB7XG4gIGlmIChhZ2dyZWdhdGlvbk1ldHJpY3MpIHtcbiAgICBtZXRyaWNNYW5hZ2VyLm1ldHJpY3MgPSB7XG4gICAgICAuLi5tZXRyaWNNYW5hZ2VyLm1ldHJpY3MsXG4gICAgICAuLi5hZ2dyZWdhdGlvbk1ldHJpY3MsXG4gICAgfTtcbiAgfVxuXG4gIHJldHVybiBtZXRyaWNNYW5hZ2VyLm1ldHJpY3M7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgYW4gZW5jYXBzdWxhdGVkIG9iamVjdCB0byByZXRyaWV2ZSB0aGUgbWV0cmljcy5cbiAqL1xuY29uc3QgbWV0cmljTWFuYWdlciA9ICgoKSA9PiB7XG4gIGxldCBtZXRyaWM6IEFnZ3JlZ2F0aW9uTWV0cmljc1dpdGhNZXRob2Q7XG5cbiAgY29uc3QgbWFuYWdlciA9IHtcbiAgICBnZXQgbWV0cmljcygpIHtcbiAgICAgIHJldHVybiBtZXRyaWM7XG4gICAgfSxcbiAgICBzZXQgbWV0cmljcyh2YWx1ZTogQWdncmVnYXRpb25NZXRyaWNzV2l0aE1ldGhvZCkge1xuICAgICAgbWV0cmljID0gdmFsdWU7XG4gICAgfSxcbiAgfTtcblxuICByZXR1cm4gbWFuYWdlcjtcbn0pKCk7XG5cbi8qKlxuICogUmV0dXJucyBhZ2dyZWdhdGlvbiBtZXRob2QgZm9yIGdpdmVuIGBtZXRyaWNgLlxuICovXG5leHBvcnQgY29uc3QgZ2V0QWdncmVnYXRpb25JbmZvRm9yID0gKG1ldHJpYzogc3RyaW5nKSA9PiB7XG4gIGRlYnVnTG9nZ2VyLnNldEV4ZWN1dGluZ1BsdWdpbk5hbWUoKTtcbiAgbWVtb2l6ZWRMb2coY29uc29sZS5kZWJ1ZywgJ1xcbicpO1xuICBtZW1vaXplZExvZyhjb25zb2xlLmRlYnVnLCBDSEVDS0lOR19BR0dSRUdBVElPTl9NRVRIT0QobWV0cmljKSk7XG4gIGNvbnN0IGFnZ3JlZ2F0aW9uTWV0cmljc1N0b3JhZ2UgPSBzdG9yZUFnZ3JlZ2F0aW9uTWV0cmljcygpO1xuXG4gIGlmIChcbiAgICBhZ2dyZWdhdGlvbk1ldHJpY3NTdG9yYWdlICYmXG4gICAgT2JqZWN0LmtleXMoYWdncmVnYXRpb25NZXRyaWNzU3RvcmFnZSkuaW5jbHVkZXMobWV0cmljKVxuICApIHtcbiAgICByZXR1cm4gYWdncmVnYXRpb25NZXRyaWNzU3RvcmFnZVttZXRyaWNdO1xuICB9XG5cbiAgbWVtb2l6ZWRMb2cobG9nZ2VyLndhcm4sIFVOS05PV05fUEFSQU0obWV0cmljKSk7XG5cbiAgcmV0dXJuIHtcbiAgICB0aW1lOiBBR0dSRUdBVElPTl9NRVRIT0RTWzNdLFxuICAgIGNvbXBvbmVudDogQUdHUkVHQVRJT05fTUVUSE9EU1szXSxcbiAgfTtcbn07XG4iXX0=
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWdncmVnYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2lmLXJ1bi9saWIvYWdncmVnYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1EQUEyRDtBQUczRCxpRUFBMkQ7QUFDM0QscURBQWdEO0FBQ2hELHVEQUFxRDtBQU9yRCxtRUFBbUU7QUFDbkUscURBQWdEO0FBRWhELCtDQUEwQztBQUUxQyxNQUFNLEVBQ0osZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixhQUFhLEVBQ2IsMkJBQTJCLEdBQzVCLEdBQUcsaUJBQU8sQ0FBQztBQUVaOztHQUVHO0FBQ0gsTUFBTSwwQkFBMEIsR0FBRyxDQUFDLFFBQWEsRUFBRSxDQUFTLEVBQUUsRUFBRTtJQUM5RCxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRXZDLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQVUsRUFBRSxFQUFFO1FBQy9CLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFFN0IsT0FBTyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkIsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRjs7O0dBR0c7QUFDSCxNQUFNLG1CQUFtQixHQUFHLENBQUMsSUFBUyxFQUFFLE9BQWlCLEVBQUUsRUFBRTtJQUMzRCxNQUFNLE9BQU8sR0FBbUIsRUFBRSxDQUFDO0lBQ25DLE1BQU0sTUFBTSxHQUFRLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRWpELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUNqRCxNQUFNLGlCQUFpQixHQUFHLDBCQUEwQixDQUFDLElBQUksQ0FBQyxRQUFR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QUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNoRSxNQUFNLHlCQUF5QixHQUFHLElBQUEsK0JBQXVCLEdBQUUsQ0FBQztJQUU1RCxJQUNFLHlCQUF5QjtRQUN6QixNQUFNLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUN2RDtRQUNBLE9BQU8seUJBQXlCLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDMUM7SUFFRCxJQUFBLHlCQUFXLEVBQUMsZUFBTSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUVoRCxPQUFPO1FBQ0wsSUFBSSxFQUFFLDRCQUFtQixDQUFDLENBQUMsQ0FBQztRQUM1QixTQUFTLEVBQUUsNEJBQW1CLENBQUMsQ0FBQyxDQUFDO0tBQ2xDLENBQUM7QUFDSixDQUFDLENBQUM7QUFuQlcsUUFBQSxxQkFBcUIseUJBbUJoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QUdHUkVHQVRJT05fTUVUSE9EU30gZnJvbSAnQGdybnNmdC9pZi1jb3JlL2NvbnN0cyc7XG5pbXBvcnQge1BsdWdpblBhcmFtc30gZnJvbSAnQGdybnNmdC9pZi1jb3JlL3R5cGVzJztcblxuaW1wb3J0IHtkZWJ1Z0xvZ2dlcn0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWwvZGVidWctbG9nZ2VyJztcbmltcG9ydCB7bG9nZ2VyfSBmcm9tICcuLi8uLi9jb21tb24vdXRpbC9sb2dnZXInO1xuaW1wb3J0IHtnZXRTdG9yYWdlfSBmcm9tICcuLi8uLi9jb21tb24vdXRpbC9zdG9yYWdlJztcbmltcG9ydCB7XG4gIEFnZ3JlZ2F0aW9uUGFyYW1zLFxuICBBZ2dyZWdhdGlvblBhcmFtc1N1cmUsXG4gIEFnZ3JlZ2F0aW9uTWV0cmljc1dpdGhNZXRob2QsXG59IGZyb20gJy4uLy4uL2NvbW1vbi90eXBlcy9tYW5pZmVzdCc7XG5cbmltcG9ydCB7YWdncmVnYXRlT3V0cHV0c0ludG9PbmV9IGZyb20gJy4uL3V0aWwvYWdncmVnYXRpb24taGVscGVyJztcbmltcG9ydCB7bWVtb2l6ZWRMb2d9IGZyb20gJy4uL3V0aWwvbG9nLW1lbW9pemUnO1xuXG5pbXBvcnQge1NUUklOR1N9IGZyb20gJy4uL2NvbmZpZy9zdHJpbmdzJztcblxuY29uc3Qge1xuICBBR0dSRUdBVElOR19OT0RFLFxuICBBR0dSRUdBVElOR19PVVRQVVRTLFxuICBVTktOT1dOX1BBUkFNLFxuICBDSEVDS0lOR19BR0dSRUdBVElPTl9NRVRIT0QsXG59ID0gU1RSSU5HUztcblxuLyoqXG4gKiBHZXRzIGBpYHRoIGVsZW1lbnQgZnJvbSBhbGwgY2hpbGRyZW4gb3V0cHV0cyBhbmQgY29sbGVjdHMgdGhlbSBpbiBzaW5nbGUgYXJyYXkuXG4gKi9cbmNvbnN0IGdldEl0aEVsZW1lbnRzRnJvbUNoaWxkcmVuID0gKGNoaWxkcmVuOiBhbnksIGk6IG51bWJlcikgPT4ge1xuICBjb25zdCB2YWx1ZXMgPSBPYmplY3QudmFsdWVzKGNoaWxkcmVuKTtcblxuICByZXR1cm4gdmFsdWVzLm1hcCgodmFsdWU6IGFueSkgPT4ge1xuICAgIGNvbnN0IG91dHB1dCA9IHZhbHVlLm91dHB1dHM7XG5cbiAgICByZXR1cm4gb3V0cHV0W2ldO1xuICB9KTtcbn07XG5cbi8qKlxuICogMS4gR2V0cyB0aGUgaSd0aCBlbGVtZW50IGZyb20gZWFjaCBjaGlsZHJlbnMgb3V0cHV0cyAodHJlYXRpbmcgY2hpbGRyZW4gYXMgcm93cyBhbmQgd2UgYXJlIGFmdGVyIGEgY29sdW1uIG9mIGRhdGEpLlxuICogMi4gTm93IHdlIGp1c3QgYWdncmVnYXRlIG92ZXIgdGhlIGBpdGhTbGljZU9mT3V0cHV0c2AgdGhlIHNhbWUgYXMgd2UgZGlkIGZvciB0aGUgbm9ybWFsIG91dHB1dHMuXG4gKi9cbmNvbnN0IHRlbXBvcmFsQWdncmVnYXRpb24gPSAobm9kZTogYW55LCBtZXRyaWNzOiBzdHJpbmdbXSkgPT4ge1xuICBjb25zdCBvdXRwdXRzOiBQbHVnaW5QYXJhbXNbXSA9IFtdO1xuICBjb25zdCB2YWx1ZXM6IGFueSA9IE9iamVjdC52YWx1ZXMobm9kZS5jaGlsZHJlbik7XG5cbiAgZm9yIChsZXQgaSA9IDA7IGkgPCB2YWx1ZXNbMF0ub3V0cHV0cy5sZW5ndGg7IGkrKykge1xuICAgIGNvbnN0IGl0aFNsaWNlT2ZPdXRwdXRzID0gZ2V0SXRoRWxlbWVudHNGcm9tQ2hpbGRyZW4obm9kZS5jaGlsZHJlbiwgaSk7XG4gICAgb3V0cHV0cy5wdXNoKGFnZ3JlZ2F0ZU91dHB1dHNJbnRvT25lKGl0aFNsaWNlT2ZPdXRwdXRzLCBtZXRyaWNzLCB0cnVlKSk7XG4gIH1cblxuICByZXR1cm4gb3V0cHV0cztcbn07XG5cbi8qKlxuICogTmF2aWdhdGVzIHRoZSB0cmVlIGRlcHRoIGZpcnN0LCBib3R0b20gdXAsXG4gKiAgbGVmdCB0byByaWdodCBhZ2dyZWdhdGluZyB0aGUgY29tcG9uZW50IG5vZGVzIGFuZCB0aGVuIHRoZSBncm91cGluZyBub2RlcyB3aWxsIGJlIGFnZ3JlZ2F0ZWRcbiAqICBvbmx5IHdoZW4gYWxsIHRoZWlyIGNoaWxkIG5vZGVzIGhhdmUgYmVlbiBhZ2dyZWdhdGVkLlxuICogMS4gQWdncmVnYXRlcyBhbGwgdGhlIGNoaWxkcmVuLlxuICogMi4gQXQgdGhpcyBwb2ludCB5b3UgY2FuIGJlIHBvc2l0aXZlIGFsbCB5b3VyIGNoaWxkcmVuIGhhdmUgYmVlbiBhZ2dyZWdhdGVkIGFuZCBzbyB5b3UgY2FuIG5vdyB3b3JrIG9uIGFnZ3JlZ2F0aW5nIHlvdXJzZWxmLlxuICogMy4gSXQncyBjb21wb25lbnQgbm9kZSwg0LBnZ3JlZ2F0ZXMganVzdCB0aGUgb3V0cHV0cyBvZiBUSElTIGNvbXBvbmVudCBub2RlIChob3Jpem9udGFsL2NvbXBvbmVudCBhZ2dyZWdhdGlvbikuXG4gKiA0LiBFbHNlIGl0J3MgZ3JvdXBpbmcgbm9kZSwgZmlyc3QgZG9lcyB0ZW1wb3JhbCBhZ2dyZWdhdGlvbi4gVGhpcyBhc3N1bWVzIGV2ZXJ5dGhpbmcgaXMgb24gdGhlIHNhbWUgdGltZS1ncmlkLlxuICogICAgVGhlIG91dHB1dHMgb2YgdGhlIGdyb3VwaW5nIG5vZGUgYXJlIHRoZSBhZ2dyZWdhdGVkIHRpbWUgYnVja2V0ZWQgb3V0cHV0cyBvZiBpdCdzIGNoaWxkcmVuLlxuICogNS4gTm93IGEgZ3JvdXBpbmcgbm9kZSBoYXMgaXQncyBvd24gb3V0cHV0cywgaXQgY2FuIGhvcml6b3RuYWxseSBhZ2dyZWdhdGUgdGhlbS5cbiAqL1xuY29uc3QgYWdncmVnYXRlTm9kZSA9IChub2RlOiBhbnksIGFnZ3JlZ2F0aW9uUGFyYW1zOiBBZ2dyZWdhdGlvblBhcmFtc1N1cmUpID0+IHtcbiAgY29uc3QgbWV0cmljcyA9IGFnZ3JlZ2F0aW9uUGFyYW1zIS5tZXRyaWNzO1xuICBjb25zdCB0eXBlID0gYWdncmVnYXRpb25QYXJhbXMhLnR5cGU7XG5cbiAgaWYgKG5vZGUuY2hpbGRyZW4pIHtcbiAgICBmb3IgKGNvbnN0IGNoaWxkIGluIG5vZGUuY2hpbGRyZW4pIHtcbiAgICAgIGNvbnNvbGUuZGVidWcoQUdHUkVHQVRJTkdfTk9ERShjaGlsZCkpO1xuXG4gICAgICBhZ2dyZWdhdGVOb2RlKG5vZGUuY2hpbGRyZW5bY2hpbGRdLCBhZ2dyZWdhdGlvblBhcmFtcyk7XG4gICAgfVxuICB9XG5cbiAgaWYgKCFub2RlLmNoaWxkcmVuKSB7XG4gICAgLyoqIGB0aW1lYCBhZ2dyZWdhdGlvbiBpcyB0aGUgbmV3IG5hbWUgb2YgYGhvcml6b250YWxgLiAqL1xuICAgIGlmICh0eXBlID09PSAnaG9yaXpvbnRhbCcgfHwgdHlwZSA9PT0gJ3RpbWUnIHx8IHR5cGUgPT09ICdib3RoJykge1xuICAgICAgbm9kZS5hZ2dyZWdhdGVkID0gYWdncmVnYXRlT3V0cHV0c0ludG9PbmUobm9kZS5vdXRwdXRzLCBtZXRyaWNzKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgLyoqIGBjb21wb25lbnRgIGFnZ3JlZ2F0aW9uIGlzIHRoZSBuZXcgbmFtZSBvZiBgdmVydGljYWxgLiAqL1xuICAgIGlmICh0eXBlID09PSAndmVydGljYWwnIHx8IHR5cGUgPT09ICdjb21wb25lbnQnIHx8IHR5cGUgPT09ICdib3RoJykge1xuICAgICAgY29uc3Qgb3V0cHV0cyA9IHRlbXBvcmFsQWdncmVnYXRpb24obm9kZSwgbWV0cmljcyk7XG4gICAgICBub2RlLm91dHB1dHMgPSBvdXRwdXRzO1xuICAgICAgbm9kZS5hZ2dyZWdhdGVkID0gYWdncmVnYXRlT3V0cHV0c0ludG9PbmUob3V0cHV0cywgbWV0cmljcyk7XG4gICAgfVxuICB9XG59O1xuXG4vKipcbiAqIElmIGFnZ3JlZ2F0aW9uIGlzIGRpc2FibGVkLCB0aGVuIHJldHVybnMgZ2l2ZW4gYHRyZWVgLlxuICogT3RoZXJ3aXNlIGNyZWF0ZXMgY29weSBvZiB0aGUgdHJlZSwgdGhlbiBhcHBsaWVzIGFnZ3JlZ2F0aW9uIHRvIGl0LlxuICovXG5leHBvcnQgY29uc3QgYWdncmVnYXRlID0gKHRyZWU6IGFueSwgYWdncmVnYXRpb25QYXJhbXM6IEFnZ3JlZ2F0aW9uUGFyYW1zKSA9PiB7XG4gIGNvbnNvbGUuZGVidWcoQUdHUkVHQVRJTkdfT1VUUFVUUyk7XG5cbiAgaWYgKCFhZ2dyZWdhdGlvblBhcmFtcyB8fCAhYWdncmVnYXRpb25QYXJhbXMudHlwZSkge1xuICAgIHJldHVybiB0cmVlO1xuICB9XG5cbiAgY29uc3QgY29weU9mVHJlZSA9IHN0cnVjdHVyZWRDbG9uZSh0cmVlKTtcbiAgYWdncmVnYXRlTm9kZShjb3B5T2ZUcmVlLCBhZ2dyZWdhdGlvblBhcmFtcyk7XG5cbiAgcmV0dXJuIGNvcHlPZlRyZWU7XG59O1xuXG4vKipcbiAqIEdldHMgb3Igc3RvcmVzIGFnZ3JlZ2F0aW9uIG1ldHJpY3MuXG4gKi9cbmV4cG9ydCBjb25zdCBzdG9yZUFnZ3JlZ2F0aW9uTWV0cmljcyA9IChcbiAgYWdncmVnYXRpb25NZXRyaWNzPzogQWdncmVnYXRpb25NZXRyaWNzV2l0aE1ldGhvZFxuKSA9PiB7XG4gIGlmIChhZ2dyZWdhdGlvbk1ldHJpY3MpIHtcbiAgICBnZXRTdG9yYWdlKCkubWV0cmljcyA9IHtcbiAgICAgIC4uLmdldFN0b3JhZ2UoKS5tZXRyaWNzLFxuICAgICAgLi4uYWdncmVnYXRpb25NZXRyaWNzLFxuICAgIH07XG4gIH1cblxuICByZXR1cm4gZ2V0U3RvcmFnZSgpLm1ldHJpY3M7XG59O1xuXG4vKipcbiAqIFJldHVybnMgYWdncmVnYXRpb24gbWV0aG9kIGZvciBnaXZlbiBgbWV0cmljYC5cbiAqL1xuZXhwb3J0IGNvbnN0IGdldEFnZ3JlZ2F0aW9uSW5mb0ZvciA9IChtZXRyaWM6IHN0cmluZykgPT4ge1xuICBkZWJ1Z0xvZ2dlci5zZXRFeGVjdXRpbmdQbHVnaW5OYW1lKCk7XG4gIG1lbW9pemVkTG9nKGNvbnNvbGUuZGVidWcsICdcXG4nKTtcbiAgbWVtb2l6ZWRMb2coY29uc29sZS5kZWJ1ZywgQ0hFQ0tJTkdfQUdHUkVHQVRJT05fTUVUSE9EKG1ldHJpYykpO1xuICBjb25zdCBhZ2dyZWdhdGlvbk1ldHJpY3NTdG9yYWdlID0gc3RvcmVBZ2dyZWdhdGlvbk1ldHJpY3MoKTtcblxuICBpZiAoXG4gICAgYWdncmVnYXRpb25NZXRyaWNzU3RvcmFnZSAmJlxuICAgIE9iamVjdC5rZXlzKGFnZ3JlZ2F0aW9uTWV0cmljc1N0b3JhZ2UpLmluY2x1ZGVzKG1ldHJpYylcbiAgKSB7XG4gICAgcmV0dXJuIGFnZ3JlZ2F0aW9uTWV0cmljc1N0b3JhZ2VbbWV0cmljXTtcbiAgfVxuXG4gIG1lbW9pemVkTG9nKGxvZ2dlci53YXJuLCBVTktOT1dOX1BBUkFNKG1ldHJpYykpO1xuXG4gIHJldHVybiB7XG4gICAgdGltZTogQUdHUkVHQVRJT05fTUVUSE9EU1szXSxcbiAgICBjb21wb25lbnQ6IEFHR1JFR0FUSU9OX01FVEhPRFNbM10sXG4gIH07XG59O1xuIl19
|
|
@@ -8,15 +8,13 @@ const logger_1 = require("../../common/util/logger");
|
|
|
8
8
|
const helpers_1 = require("../util/helpers");
|
|
9
9
|
const strings_1 = require("../config/strings");
|
|
10
10
|
const { MERGING_DEFAULTS_WITH_INPUT_DATA, EMPTY_PIPELINE, CONFIG_WARN, COMPUTING_PIPELINE_FOR_NODE, COMPUTING_COMPONENT_PIPELINE, REGROUPING, OBSERVING, SKIPPING_REGROUP, } = strings_1.STRINGS;
|
|
11
|
-
const childNames = new Set();
|
|
12
11
|
/**
|
|
13
12
|
* Traverses all child nodes based on children grouping.
|
|
14
13
|
*/
|
|
15
|
-
const traverse = async (children, params) => {
|
|
14
|
+
const traverse = async (children, childNames, params) => {
|
|
16
15
|
for (const child in children) {
|
|
17
16
|
console.debug(COMPUTING_COMPONENT_PIPELINE(child));
|
|
18
|
-
|
|
19
|
-
await computeNode(children[child], params);
|
|
17
|
+
await computeNode(children[child], [...childNames, child], params);
|
|
20
18
|
}
|
|
21
19
|
};
|
|
22
20
|
/**
|
|
@@ -58,15 +56,18 @@ const warnIfConfigProvided = (node) => {
|
|
|
58
56
|
* 7. Compute plugins are used to do desired computations and appending the result to outputs
|
|
59
57
|
* (isolated execution can be achived by passing `--compute` flag to CLI command).
|
|
60
58
|
*/
|
|
61
|
-
const computeNode = async (node, params) => {
|
|
59
|
+
const computeNode = async (node, childNames, params) => {
|
|
62
60
|
const pipeline = node.pipeline || params.pipeline;
|
|
63
61
|
const config = node.config || params.config;
|
|
64
62
|
const defaults = node.defaults || params.defaults;
|
|
65
63
|
const noFlags = !params.observe && !params.regroup && !params.compute;
|
|
66
64
|
debug_logger_1.debugLogger.setExecutingPluginName();
|
|
67
65
|
warnIfConfigProvided(node);
|
|
66
|
+
if (node.pipeline) {
|
|
67
|
+
childNames = [];
|
|
68
|
+
}
|
|
68
69
|
if (node.children) {
|
|
69
|
-
return traverse(node.children, {
|
|
70
|
+
return traverse(node.children, childNames, {
|
|
70
71
|
...params,
|
|
71
72
|
pipeline,
|
|
72
73
|
defaults,
|
|
@@ -124,7 +125,7 @@ const computeNode = async (node, params) => {
|
|
|
124
125
|
delete node.outputs;
|
|
125
126
|
debug_logger_1.debugLogger.setExecutingPluginName();
|
|
126
127
|
console.debug(REGROUPING);
|
|
127
|
-
return traverse(node.children, {
|
|
128
|
+
return traverse(node.children, childNames, {
|
|
128
129
|
...params,
|
|
129
130
|
pipeline: {
|
|
130
131
|
...pipelineCopy,
|
|
@@ -179,8 +180,8 @@ const computeNode = async (node, params) => {
|
|
|
179
180
|
*/
|
|
180
181
|
const compute = async (tree, params) => {
|
|
181
182
|
const copyOfTree = structuredClone(tree);
|
|
182
|
-
await computeNode(copyOfTree, params);
|
|
183
|
+
await computeNode(copyOfTree, [], params);
|
|
183
184
|
return copyOfTree;
|
|
184
185
|
};
|
|
185
186
|
exports.compute = compute;
|
|
186
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pZi1ydW4vbGliL2NvbXB1dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsdUNBQStDO0FBQy9DLHVDQUF5QztBQUV6QyxpRUFBMkQ7QUFDM0QscURBQWdEO0FBRWhELDZDQUE2QztBQUU3QywrQ0FBMEM7QUFJMUMsTUFBTSxFQUNKLGdDQUFnQyxFQUNoQyxjQUFjLEVBQ2QsV0FBVyxFQUNYLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsVUFBVSxFQUNWLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsR0FBRyxpQkFBTyxDQUFDO0FBRVosTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztBQUVyQzs7R0FFRztBQUNILE1BQU0sUUFBUSxHQUFHLEtBQUssRUFBRSxRQUFhLEVBQUUsTUFBcUIsRUFBRSxFQUFFO0lBQzlELEtBQUssTUFBTSxLQUFLLElBQUksUUFBUSxFQUFFO1FBQzVCLE9BQU8sQ0FBQyxLQUFLLENBQUMsNEJBQTRCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNuRCxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3RCLE1BQU0sV0FBVyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztLQUM1QztBQUNILENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsTUFBTSxhQUFhLEdBQUcsQ0FDcEIsTUFBc0IsRUFDdEIsUUFBa0MsRUFDbEMsRUFBRTtJQUNGLElBQUksTUFBTSxFQUFFO1FBQ1YsT0FBTyxRQUFRO1lBQ2IsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFBLHNCQUFZLEVBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3BELENBQUMsQ0FBQyxNQUFNLENBQUM7S0FDWjtJQUVELE9BQU8sQ0FBQyxLQUFLLENB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QztZQUVoRTs7ZUFFRztZQUNILElBQUksb0JBQW9CLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxhQUFhLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDakUsYUFBYSxHQUFHLGFBQWEsQ0FBQyxhQUFhLEVBQUUsUUFBUSxDQUFDLENBQUM7YUFDeEQ7WUFFRCwwQkFBVyxDQUFDLHNCQUFzQixFQUFFLENBQUM7WUFFckMsSUFBSSxDQUFDLE9BQU8sR0FBRyxhQUFhLENBQUM7WUFFN0IsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtnQkFDNUIsSUFBQSx3QkFBYyxFQUFDO29CQUNiLFVBQVU7b0JBQ1YsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRO2lCQUMxQixDQUFDLENBQUM7YUFDSjtTQUNGO1FBRUQsSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFO1lBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsZUFBZSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQzNEO0tBQ0Y7SUFFRCxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ3RCLENBQUMsQ0FBQztBQUVGOztHQUVHO0FBQ0ksTUFBTSxPQUFPLEdBQUcsS0FBSyxFQUFFLElBQVMsRUFBRSxNQUFxQixFQUFFLEVBQUU7SUFDaEUsTUFBTSxVQUFVLEdBQUcsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXpDLE1BQU0sV0FBVyxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUV0QyxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDLENBQUM7QUFOVyxRQUFBLE9BQU8sV0FNbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1BsdWdpblBhcmFtc30gZnJvbSAnQGdybnNmdC9pZi1jb3JlL3R5cGVzJztcblxuaW1wb3J0IHtpc1JlZ3JvdXBlZCwgUmVncm91cH0gZnJvbSAnLi9yZWdyb3VwJztcbmltcG9ydCB7YWRkRXhwbGFpbkRhdGF9IGZyb20gJy4vZXhwbGFpbic7XG5cbmltcG9ydCB7ZGVidWdMb2dnZXJ9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlsL2RlYnVnLWxvZ2dlcic7XG5pbXBvcnQge2xvZ2dlcn0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWwvbG9nZ2VyJztcblxuaW1wb3J0IHttZXJnZU9iamVjdHN9IGZyb20gJy4uL3V0aWwvaGVscGVycyc7XG5cbmltcG9ydCB7U1RSSU5HU30gZnJvbSAnLi4vY29uZmlnL3N0cmluZ3MnO1xuXG5pbXBvcnQge0NvbXB1dGVQYXJhbXMsIE5vZGUsIFBoYXNlZFBpcGVsaW5lfSBmcm9tICcuLi90eXBlcy9jb21wdXRlJztcblxuY29uc3Qge1xuICBNRVJHSU5HX0RFRkFVTFRTX1dJVEhfSU5QVVRfREFUQSxcbiAgRU1QVFlfUElQRUxJTkUsXG4gIENPTkZJR19XQVJOLFxuICBDT01QVVRJTkdfUElQRUxJTkVfRk9SX05PREUsXG4gIENPTVBVVElOR19DT01QT05FTlRfUElQRUxJTkUsXG4gIFJFR1JPVVBJTkcsXG4gIE9CU0VSVklORyxcbiAgU0tJUFBJTkdfUkVHUk9VUCxcbn0gPSBTVFJJTkdTO1xuXG5jb25zdCBjaGlsZE5hbWVzID0gbmV3IFNldDxzdHJpbmc+KCk7XG5cbi8qKlxuICogVHJhdmVyc2VzIGFsbCBjaGlsZCBub2RlcyBiYXNlZCBvbiBjaGlsZHJlbiBncm91cGluZy5cbiAqL1xuY29uc3QgdHJhdmVyc2UgPSBhc3luYyAoY2hpbGRyZW46IGFueSwgcGFyYW1zOiBDb21wdXRlUGFyYW1zKSA9PiB7XG4gIGZvciAoY29uc3QgY2hpbGQgaW4gY2hpbGRyZW4pIHtcbiAgICBjb25zb2xlLmRlYnVnKENPTVBVVElOR19DT01QT05FTlRfUElQRUxJTkUoY2hpbGQpKTtcbiAgICBjaGlsZE5hbWVzLmFkZChjaGlsZCk7XG4gICAgYXdhaXQgY29tcHV0ZU5vZGUoY2hpbGRyZW5bY2hpbGRdLCBwYXJhbXMpO1xuICB9XG59O1xuXG4vKipcbiAqIEFwcGVuZHMgYGRlZmF1bHRgIHZhbHVlcyB0byBgaW5wdXRzYC5cbiAqL1xuY29uc3QgbWVyZ2VEZWZhdWx0cyA9IChcbiAgaW5wdXRzOiBQbHVnaW5QYXJhbXNbXSxcbiAgZGVmYXVsdHM6IFBsdWdpblBhcmFtcyB8IHVuZGVmaW5lZFxuKSA9PiB7XG4gIGlmIChpbnB1dHMpIHtcbiAgICByZXR1cm4gZGVmYXVsdHNcbiAgICAgID8gaW5wdXRzLm1hcChpbnB1dCA9PiBtZXJnZU9iamVjdHMoZGVmYXVsdHMsIGlucHV0KSlcbiAgICAgIDogaW5wdXRzO1xuICB9XG5cbiAgY29uc29sZS5kZWJ1ZyhNRVJHSU5HX0RFRkFVTFRTX1dJVEhfSU5QVVRfREFUQSwgJ1xcbicpO1xuXG4gIHJldHVybiBkZWZhdWx0cyA/IFtkZWZhdWx0c10gOiBbXTtcbn07XG5cbi8qKlxuICogV2FybnMgaWYgdGhlIGBjb25maWdgIGlzIHByb3ZpZGVkIGluIHRoZSBtYW5pZmVzdC5cbiAqL1xuY29uc3Qgd2FybklmQ29uZmlnUHJvdmlkZWQgPSAobm9kZTogYW55KSA9PiB7XG4gIGlmICgnY29uZmlnJyBpbiBub2RlKSB7XG4gICAgY29uc3QgcGx1Z2lucyA9IE9iamVjdC5rZXlzKG5vZGUuY29uZmlnIHx8IHt9KTtcbiAgICBjb25zdCBqb2luZWRQbHVnaW5zID0gcGx1Z2lucy5qb2luKCcsICcpO1xuICAgIGNvbnN0IGlzTW9yZSA9IHBsdWdpbnMubGVuZ3RoID4gMTtcblxuICAgIGxvZ2dlci53YXJuKENPTkZJR19XQVJOKGpvaW5lZFBsdWdpbnMsIGlzTW9yZSkpO1xuICB9XG59O1xuXG4vKipcbiAqIDEuIElmIHRoZSBub2RlIGhhcyBpdCdzIG93biBwaXBlbGluZSwgZGVmYXVsdHMgb3IgY29uZmlnIHRoZW4gdXNlIHRoYXQsXG4gKiAgICBvdGhlcndpc2UgdXNlIHdoYXRldmVyIGhhcyBiZWVuIHBhc3NlZCBkb3duIGZyb20gZnVydGhlciB1cCB0aGUgdHJlZS5cbiAqIDIuIElmIGl0J3MgYSBncm91cGluZyBub2RlLCB0aGVuIGZpcnN0IG9mIGFsbCBjb21wdXRlcyBhbGwgaXQncyBjaGlsZHJlbi5cbiAqICAgIFRoaXMgaXMgZG9pbmcgYSBkZXB0aCBmaXJzdCB0cmF2ZXJzYWwuXG4gKiAzLiBPdGhlcndpc2UgbWVyZ2VzIHRoZSBkZWZhdWx0cyBpbnRvIHRoZSBpbnB1dHMuXG4gKiA0LiBJdGVyYXRlcyBvdmVyIHBpcGVsaW5lIHBoYXNlcyAob2JzZXJ2ZSwgcmVncm91cCwgY29tcHV0ZSkuXG4gKiA1LiBPYnNlcnZlIHBsdWdpbnMgYXJlIHVzZWQgdG8gaW5zZXJ0IGlucHV0IHZhbHVlc1xuICogICAgKGlzb2xhdGVkIGV4ZWN1dGlvbiBjYW4gYmUgYWNoaXZlZCBieSBwYXNzaW5nIGAtLW9ic2VydmVgIGZsYWcgdG8gQ0xJIGNvbW1hbmQpLlxuICogNi4gUmVncm91cCBwbHVnaW4gaXMgdXNlZCB0byBncm91cCBleGlzdGluZyBpbnB1dHMgYnkgY3JpdGVyaWFcbiAqICAgIChpc29sYXRlZCBleGVjdXRpb24gY2FuIGJlIGFjaGl2ZWQgYnkgcGFzc2luZyBgLS1yZWdyb3VwYCBmbGFnIHRvIENMSSBjb21tYW5kKS5cbiAqICAgIFNpbmNlIGl0IGNyZWF0ZXMgbmV3IGNoaWxkcmVuIGZvciBub2RlLCBleGlzdGluZyBpbnB1dHMgYW5kIG91dHB1dHMgYXJlIGRyb3BwZWQgYW5kIHJlY3Vyc2l2ZSB0cmF2ZXJzYWwgaXMgY2FsbGVkXG4gKiAgICBmb3IgbmV3Ym9yZCBjaGlsZCBjb21wb25lbnQuXG4gKiA3LiBDb21wdXRlIHBsdWdpbnMgYXJlIHVzZWQgdG8gZG8gZGVzaXJlZCBjb21wdXRhdGlvbnMgYW5kIGFwcGVuZGluZyB0aGUgcmVzdWx0IHRvIG91dHB1dHNcbiAqICAgIChpc29sYXRlZCBleGVjdXRpb24gY2FuIGJlIGFjaGl2ZWQgYnkgcGFzc2luZyBgLS1jb21wdXRlYCBmbGFnIHRvIENMSSBjb21tYW5kKS5cbiAqL1xuY29uc3QgY29tcHV0ZU5vZGUgPSBhc3luYyAobm9kZTogTm9kZSwgcGFyYW1zOiBDb21wdXRlUGFyYW1zKTogUHJvbWlzZTxhbnk+ID0+IHtcbiAgY29uc3QgcGlwZWxpbmUgPSBub2RlLnBpcGVsaW5lIHx8IChwYXJhbXMucGlwZWxpbmUgYXMgUGhhc2VkUGlwZWxpbmUpO1xuICBjb25zdCBjb25maWcgPSBub2RlLmNvbmZpZyB8fCBwYXJhbXMuY29uZmlnO1xuICBjb25zdCBkZWZhdWx0cyA9IG5vZGUuZGVmYXVsdHMgfHwgcGFyYW1zLmRlZmF1bHRzO1xuICBjb25zdCBub0ZsYWdzID0gIXBhcmFtcy5vYnNlcnZlICYmICFwYXJhbXMucmVncm91cCAmJiAhcGFyYW1zLmNvbXB1dGU7XG5cbiAgZGVidWdMb2dnZXIuc2V0RXhlY3V0aW5nUGx1Z2luTmFtZSgpO1xuICB3YXJuSWZDb25maWdQcm92aWRlZChub2RlKTtcblxuICBpZiAobm9kZS5jaGlsZHJlbikge1xuICAgIHJldHVybiB0cmF2ZXJzZShub2RlLmNoaWxkcmVuLCB7XG4gICAgICAuLi5wYXJhbXMsXG4gICAgICBwaXBlbGluZSxcbiAgICAgIGRlZmF1bHRzLFxuICAgICAgY29uZmlnLFxuICAgIH0pO1xuICB9XG5cbiAgbGV0IG91dHB1dFN0b3JhZ2UgPSAoc3RydWN0dXJlZENsb25lKG5vZGUuaW5wdXRzKSBhcyBQbHVnaW5QYXJhbXNbXSkgfHwgW107XG4gIGNvbnN0IHBpcGVsaW5lQ29weSA9IHN0cnVjdHVyZWRDbG9uZShwaXBlbGluZSkgfHwge307XG5cbiAgLyoqIENoZWNrcyBpZiBwaXBlbGluZSBpcyBub3QgYW4gYXJyYXkgb3IgZW1wdHkgb2JqZWN0LiAqL1xuICBpZiAoXG4gICAgQXJyYXkuaXNBcnJheShwaXBlbGluZUNvcHkpIHx8XG4gICAgKHR5cGVvZiBwaXBlbGluZUNvcHkgPT09ICdvYmplY3QnICYmXG4gICAgICBwaXBlbGluZUNvcHkgIT09IG51bGwgJiZcbiAgICAgIE9iamVjdC5rZXlzKHBpcGVsaW5lQ29weSkubGVuZ3RoID09PSAwKVxuICApIHtcbiAgICBsb2dnZXIud2FybihFTVBUWV9QSVBFTElORSk7XG4gIH1cblxuICAvKipcbiAgICogSWYgaXRlcmF0aW9uIGlzIG9uIG9ic2VydmUgcGlwZWxpbmUsIHRoZW4gZXhlY3V0ZXMgb2JzZXJ2ZSBwbHVnaW5zIGFuZCBzZXRzIHRoZSBpbnB1dHMgdmFsdWUuXG4gICAqL1xuICBpZiAoKG5vRmxhZ3MgfHwgcGFyYW1zLm9ic2VydmUpICYmIHBpcGVsaW5lQ29weS5vYnNlcnZlKSB7XG4gICAgd2hpbGUgKHBpcGVsaW5lQ29weS5vYnNlcnZlLmxlbmd0aCAhPT0gMCkge1xuICAgICAgY29uc3QgcGx1Z2luTmFtZSA9IHBpcGVsaW5lQ29weS5vYnNlcnZlLnNoaWZ0KCkgYXMgc3RyaW5nO1xuICAgICAgY29uc29sZS5kZWJ1ZyhPQlNFUlZJTkcocGx1Z2luTmFtZSkpO1xuICAgICAgZGVidWdMb2dnZXIuc2V0RXhlY3V0aW5nUGx1Z2luTmFtZShwbHVnaW5OYW1lKTtcblxuICAgICAgY29uc3QgcGx1Z2luID0gcGFyYW1zLnBsdWdpblN0b3JhZ2UuZ2V0KHBsdWdpbk5hbWUpO1xuICAgICAgY29uc3Qgbm9kZUNvbmZpZyA9IGNvbmZpZyAmJiBjb25maWdbcGx1Z2luTmFtZV07XG5cbiAgICAgIG91dHB1dFN0b3JhZ2UgPSBhd2FpdCBwbHVnaW4uZXhlY3V0ZShvdXRwdXRTdG9yYWdlLCBub2RlQ29uZmlnKTtcbiAgICAgIG5vZGUuaW5wdXRzID0gb3V0cHV0U3RvcmFnZTtcblxuICAgICAgaWYgKHBhcmFtcy5jb250ZXh0LmV4cGxhaW5lcikge1xuICAgICAgICBhZGRFeHBsYWluRGF0YSh7XG4gICAgICAgICAgcGx1Z2luTmFtZSxcbiAgICAgICAgICBtZXRhZGF0YTogcGx1Z2luLm1ldGFkYXRhLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNZXJnZXMgZGVmYXVsdHMgd2l0aCBpbnB1dHMgYWZ0ZXIgb2JzZXJ2aW5nLlxuICAgICAqIERlZmF1bHRzIGFyZSBuZWVkZWQgdG8gYmUgbWVyZ2VkIGFmdGVyIG9ic2VydmluZyBiZWNhdXNlIG9ic2VydmluZyBjYW4gY2hhbmdlIHRoZSBpbnB1dHMuXG4gICAgICovXG4gICAgbm9kZS5pbnB1dHMgPSBtZXJnZURlZmF1bHRzKG91dHB1dFN0b3JhZ2UsIGRlZmF1bHRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBvYnNlcnZlIGlzIG5vdCByZXF1ZXN0ZWQsIHRoZW4gbWVyZ2UgZGVmYXVsdHMgd2l0aCBpbnB1dHMuXG4gICAqL1xuICBpZiAoIXBhcmFtcy5vYnNlcnZlICYmIG91dHB1dFN0b3JhZ2UubGVuZ3RoID4gMCkge1xuICAgIG91dHB1dFN0b3JhZ2UgPSBtZXJnZURlZmF1bHRzKG91dHB1dFN0b3JhZ2UsIGRlZmF1bHRzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiByZWdyb3VwIGlzIHJlcXVlc3RlZCwgZXhlY3V0ZSByZWdyb3VwIHN0cmF0ZWd5LCBkZWxldGUgY2hpbGQncyBpbnB1dHMsIG91dHB1dHMgYW5kIGVtcHR5IHJlZ3JvdXAgYXJyYXkuXG4gICAqL1xuICBpZiAoKG5vRmxhZ3MgfHwgcGFyYW1zLnJlZ3JvdXApICYmIHBpcGVsaW5lQ29weS5yZWdyb3VwKSB7XG4gICAgY29uc3Qgb3JpZ2luYWxPdXRwdXRzID0gcGFyYW1zLmFwcGVuZCA/IG5vZGUub3V0cHV0cyB8fCBbXSA6IFtdO1xuXG4gICAgaWYgKCFpc1JlZ3JvdXBlZChwaXBlbGluZUNvcHkucmVncm91cCwgb3V0cHV0U3RvcmFnZSwgY2hpbGROYW1lcykpIHtcbiAgICAgIG5vZGUuY2hpbGRyZW4gPSBSZWdyb3VwKFxuICAgICAgICBvdXRwdXRTdG9yYWdlLFxuICAgICAgICBvcmlnaW5hbE91dHB1dHMsXG4gICAgICAgIHBpcGVsaW5lQ29weS5yZWdyb3VwXG4gICAgICApO1xuXG4gICAgICBkZWxldGUgbm9kZS5pbnB1dHM7XG4gICAgICBkZWxldGUgbm9kZS5vdXRwdXRzO1xuXG4gICAgICBkZWJ1Z0xvZ2dlci5zZXRFeGVjdXRpbmdQbHVnaW5OYW1lKCk7XG4gICAgICBjb25zb2xlLmRlYnVnKFJFR1JPVVBJTkcpO1xuXG4gICAgICByZXR1cm4gdHJhdmVyc2Uobm9kZS5jaGlsZHJlbiwge1xuICAgICAgICAuLi5wYXJhbXMsXG4gICAgICAgIHBpcGVsaW5lOiB7XG4gICAgICAgICAgLi4ucGlwZWxpbmVDb3B5LFxuICAgICAgICAgIHJlZ3JvdXA6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgZGVmYXVsdHMsXG4gICAgICAgIGNvbmZpZyxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zb2xlLmRlYnVnKFNLSVBQSU5HX1JFR1JPVVApO1xuICAgIH1cbiAgfVxuXG4gIGNvbnNvbGUuZGVidWcoJ1xcbicpO1xuXG4gIC8qKlxuICAgKiBJZiBpdGVyYXRpb24gaXMgb24gY29tcHV0ZSBwbHVnaW4sIHRoZW4gZXhlY3V0ZXMgY29tcHV0ZSBwbHVnaW5zIGFuZCBzZXRzIHRoZSBvdXRwdXRzIHZhbHVlLlxuICAgKi9cbiAgaWYgKChub0ZsYWdzIHx8IHBhcmFtcy5jb21wdXRlKSAmJiBwaXBlbGluZUNvcHkuY29tcHV0ZSkge1xuICAgIGNvbnN0IG9yaWdpbmFsT3V0cHV0cyA9IHBhcmFtcy5hcHBlbmQgPyBub2RlLm91dHB1dHMgfHwgW10gOiBbXTtcblxuICAgIHdoaWxlIChwaXBlbGluZUNvcHkuY29tcHV0ZS5sZW5ndGggIT09IDApIHtcbiAgICAgIGNvbnN0IHBsdWdpbk5hbWUgPSBwaXBlbGluZUNvcHkuY29tcHV0ZS5zaGlmdCgpIGFzIHN0cmluZztcbiAgICAgIGNvbnN0IHBsdWdpbiA9IHBhcmFtcy5wbHVnaW5TdG9yYWdlLmdldChwbHVnaW5OYW1lKTtcbiAgICAgIGNvbnN0IG5vZGVDb25maWcgPSBjb25maWcgJiYgY29uZmlnW3BsdWdpbk5hbWVdO1xuXG4gICAgICBjb25zb2xlLmRlYnVnKENPTVBVVElOR19QSVBFTElORV9GT1JfTk9ERShwbHVnaW5OYW1lKSk7XG4gICAgICBkZWJ1Z0xvZ2dlci5zZXRFeGVjdXRpbmdQbHVnaW5OYW1lKHBsdWdpbk5hbWUpO1xuXG4gICAgICAvKiogS2VlcCBwcmV2aW91cyBzdGF0ZSB0byBjaGVjayBhZnRlciBjb21wdXRhdGlvbi4gKi9cbiAgICAgIGNvbnN0IHByZXZpb3VzT3V0cHV0c1N0YXRlID0gb3V0cHV0U3RvcmFnZTtcblxuICAgICAgb3V0cHV0U3RvcmFnZSA9IGF3YWl0IHBsdWdpbi5leGVjdXRlKG91dHB1dFN0b3JhZ2UsIG5vZGVDb25maWcpO1xuXG4gICAgICAvKipcbiAgICAgICAqIElmIHRoZXJlIGFyZSBubyBwcmV2aW91cyBpbnB1dHMvb3V0cHV0cyAoY29tcHV0ZSBwaGFzZSBpbml0YWxpemVzIHZhbHVlcyksIHRoZW4gbWVyZ2UgZGVmYXVsdHMgd2l0aCBvdXRwdXRzIHBvc3RmYWN0dW0uXG4gICAgICAgKi9cbiAgICAgIGlmIChwcmV2aW91c091dHB1dHNTdGF0ZS5sZW5ndGggPT09IDAgJiYgb3V0cHV0U3RvcmFnZS5sZW5ndGggPiAwKSB7XG4gICAgICAgIG91dHB1dFN0b3JhZ2UgPSBtZXJnZURlZmF1bHRzKG91dHB1dFN0b3JhZ2UsIGRlZmF1bHRzKTtcbiAgICAgIH1cblxuICAgICAgZGVidWdMb2dnZXIuc2V0RXhlY3V0aW5nUGx1Z2luTmFtZSgpO1xuXG4gICAgICBub2RlLm91dHB1dHMgPSBvdXRwdXRTdG9yYWdlO1xuXG4gICAgICBpZiAocGFyYW1zLmNvbnRleHQuZXhwbGFpbmVyKSB7XG4gICAgICAgIGFkZEV4cGxhaW5EYXRhKHtcbiAgICAgICAgICBwbHVnaW5OYW1lLFxuICAgICAgICAgIG1ldGFkYXRhOiBwbHVnaW4ubWV0YWRhdGEsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChwYXJhbXMuYXBwZW5kKSB7XG4gICAgICBub2RlLm91dHB1dHMgPSBvcmlnaW5hbE91dHB1dHMuY29uY2F0KG5vZGUub3V0cHV0cyB8fCBbXSk7XG4gICAgfVxuICB9XG5cbiAgY29uc29sZS5kZWJ1ZygnXFxuJyk7XG59O1xuXG4vKipcbiAqIENyZWF0ZXMgY29weSBvZiBleGlzdGluZyB0cmVlLCB0aGVuIGFwcGxpZXMgY29tcHV0aW5nIHN0cmF0ZWd5LlxuICovXG5leHBvcnQgY29uc3QgY29tcHV0ZSA9IGFzeW5jICh0cmVlOiBhbnksIHBhcmFtczogQ29tcHV0ZVBhcmFtcykgPT4ge1xuICBjb25zdCBjb3B5T2ZUcmVlID0gc3RydWN0dXJlZENsb25lKHRyZWUpO1xuXG4gIGF3YWl0IGNvbXB1dGVOb2RlKGNvcHlPZlRyZWUsIHBhcmFtcyk7XG5cbiAgcmV0dXJuIGNvcHlPZlRyZWU7XG59O1xuIl19
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcHV0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pZi1ydW4vbGliL2NvbXB1dGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsdUNBQStDO0FBQy9DLHVDQUF5QztBQUV6QyxpRUFBMkQ7QUFDM0QscURBQWdEO0FBRWhELDZDQUE2QztBQUU3QywrQ0FBMEM7QUFJMUMsTUFBTSxFQUNKLGdDQUFnQyxFQUNoQyxjQUFjLEVBQ2QsV0FBVyxFQUNYLDJCQUEyQixFQUMzQiw0QkFBNEIsRUFDNUIsVUFBVSxFQUNWLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsR0FBRyxpQkFBTyxDQUFDO0FBRVo7O0dBRUc7QUFDSCxNQUFNLFFBQVEsR0FBRyxLQUFLLEVBQ3BCLFFBQThCLEVBQzlCLFVBQTZCLEVBQzdCLE1BQXFCLEVBQ04sRUFBRTtJQUNqQixLQUFLLE1BQU0sS0FBSyxJQUFJLFFBQVEsRUFBRTtRQUM1QixPQUFPLENBQUMsS0FBSyxDQUFDLDRCQUE0QixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDbkQsTUFBTSxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsR0FBRyxVQUFVLEVBQUUsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7S0FDcEU7QUFDSCxDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sYUFBYSxHQUFHLENBQ3BCLE1BQXNCLEVBQ3RCLFFBQWtDLEVBQ2xCLEVBQUU7SUFDbEIsSUFBSSxNQUFNLEVBQUU7UUFDVixPQUFPLFFBQVE7WUFDYixDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUEsc0JBQVksRUFBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFDcEQsQ0FBQyxDQUFDLE1BQU0sQ0FBQztLQUNaO0lBRUQsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0MsRUFBRSxJQUFJLENBQUMsQ0FBQztJ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M0MsYUFBYSxHQUFHLE1BQU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFFaEU7O2VBRUc7WUFDSCxJQUFJLG9CQUFvQixDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ2pFLGFBQWEsR0FBRyxhQUFhLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO2FBQ3hEO1lBRUQsMEJBQVcsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1lBRXJDLElBQUksQ0FBQyxPQUFPLEdBQUcsYUFBYSxDQUFDO1lBRTdCLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7Z0JBQzVCLElBQUEsd0JBQWMsRUFBQztvQkFDYixVQUFVO29CQUNWLFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUTtpQkFDMUIsQ0FBQyxDQUFDO2FBQ0o7U0FDRjtRQUVELElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRTtZQUNqQixJQUFJLENBQUMsT0FBTyxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQztTQUMzRDtLQUNGO0lBRUQsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUN0QixDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNJLE1BQU0sT0FBTyxHQUFHLEtBQUssRUFBRSxJQUFTLEVBQUUsTUFBcUIsRUFBRSxFQUFFO0lBQ2hFLE1BQU0sVUFBVSxHQUFHLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV6QyxNQUFNLFdBQVcsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBRTFDLE9BQU8sVUFBVSxDQUFDO0FBQ3BCLENBQUMsQ0FBQztBQU5XLFFBQUEsT0FBTyxXQU1sQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UGx1Z2luUGFyYW1zfSBmcm9tICdAZ3Juc2Z0L2lmLWNvcmUvdHlwZXMnO1xuXG5pbXBvcnQge2lzUmVncm91cGVkLCBSZWdyb3VwfSBmcm9tICcuL3JlZ3JvdXAnO1xuaW1wb3J0IHthZGRFeHBsYWluRGF0YX0gZnJvbSAnLi9leHBsYWluJztcblxuaW1wb3J0IHtkZWJ1Z0xvZ2dlcn0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWwvZGVidWctbG9nZ2VyJztcbmltcG9ydCB7bG9nZ2VyfSBmcm9tICcuLi8uLi9jb21tb24vdXRpbC9sb2dnZXInO1xuXG5pbXBvcnQge21lcmdlT2JqZWN0c30gZnJvbSAnLi4vdXRpbC9oZWxwZXJzJztcblxuaW1wb3J0IHtTVFJJTkdTfSBmcm9tICcuLi9jb25maWcvc3RyaW5ncyc7XG5cbmltcG9ydCB0eXBlIHtDb21wdXRlUGFyYW1zLCBOb2RlfSBmcm9tICcuLi90eXBlcy9jb21wdXRlJztcblxuY29uc3Qge1xuICBNRVJHSU5HX0RFRkFVTFRTX1dJVEhfSU5QVVRfREFUQSxcbiAgRU1QVFlfUElQRUxJTkUsXG4gIENPTkZJR19XQVJOLFxuICBDT01QVVRJTkdfUElQRUxJTkVfRk9SX05PREUsXG4gIENPTVBVVElOR19DT01QT05FTlRfUElQRUxJTkUsXG4gIFJFR1JPVVBJTkcsXG4gIE9CU0VSVklORyxcbiAgU0tJUFBJTkdfUkVHUk9VUCxcbn0gPSBTVFJJTkdTO1xuXG4vKipcbiAqIFRyYXZlcnNlcyBhbGwgY2hpbGQgbm9kZXMgYmFzZWQgb24gY2hpbGRyZW4gZ3JvdXBpbmcuXG4gKi9cbmNvbnN0IHRyYXZlcnNlID0gYXN5bmMgKFxuICBjaGlsZHJlbjogUmVjb3JkPHN0cmluZywgTm9kZT4sXG4gIGNoaWxkTmFtZXM6IHJlYWRvbmx5IHN0cmluZ1tdLFxuICBwYXJhbXM6IENvbXB1dGVQYXJhbXNcbik6IFByb21pc2U8dm9pZD4gPT4ge1xuICBmb3IgKGNvbnN0IGNoaWxkIGluIGNoaWxkcmVuKSB7XG4gICAgY29uc29sZS5kZWJ1ZyhDT01QVVRJTkdfQ09NUE9ORU5UX1BJUEVMSU5FKGNoaWxkKSk7XG4gICAgYXdhaXQgY29tcHV0ZU5vZGUoY2hpbGRyZW5bY2hpbGRdLCBbLi4uY2hpbGROYW1lcywgY2hpbGRdLCBwYXJhbXMpO1xuICB9XG59O1xuXG4vKipcbiAqIEFwcGVuZHMgYGRlZmF1bHRgIHZhbHVlcyB0byBgaW5wdXRzYC5cbiAqL1xuY29uc3QgbWVyZ2VEZWZhdWx0cyA9IChcbiAgaW5wdXRzOiBQbHVnaW5QYXJhbXNbXSxcbiAgZGVmYXVsdHM6IFBsdWdpblBhcmFtcyB8IHVuZGVmaW5lZFxuKTogUGx1Z2luUGFyYW1zW10gPT4ge1xuICBpZiAoaW5wdXRzKSB7XG4gICAgcmV0dXJuIGRlZmF1bHRzXG4gICAgICA/IGlucHV0cy5tYXAoaW5wdXQgPT4gbWVyZ2VPYmplY3RzKGRlZmF1bHRzLCBpbnB1dCkpXG4gICAgICA6IGlucHV0cztcbiAgfVxuXG4gIGNvbnNvbGUuZGVidWcoTUVSR0lOR19ERUZBVUxUU19XSVRIX0lOUFVUX0RBVEEsICdcXG4nKTtcblxuICByZXR1cm4gZGVmYXVsdHMgPyBbZGVmYXVsdHNdIDogW107XG59O1xuXG4vKipcbiAqIFdhcm5zIGlmIHRoZSBgY29uZmlnYCBpcyBwcm92aWRlZCBpbiB0aGUgbWFuaWZlc3QuXG4gKi9cbmNvbnN0IHdhcm5JZkNvbmZpZ1Byb3ZpZGVkID0gKG5vZGU6IE5vZGUpOiB2b2lkID0+IHtcbiAgaWYgKCdjb25maWcnIGluIG5vZGUpIHtcbiAgICBjb25zdCBwbHVnaW5zID0gT2JqZWN0LmtleXMobm9kZS5jb25maWcgfHwge30pO1xuICAgIGNvbnN0IGpvaW5lZFBsdWdpbnMgPSBwbHVnaW5zLmpvaW4oJywgJyk7XG4gICAgY29uc3QgaXNNb3JlID0gcGx1Z2lucy5sZW5ndGggPiAxO1xuXG4gICAgbG9nZ2VyLndhcm4oQ09ORklHX1dBUk4oam9pbmVkUGx1Z2lucywgaXNNb3JlKSk7XG4gIH1cbn07XG5cbi8qKlxuICogMS4gSWYgdGhlIG5vZGUgaGFzIGl0J3Mgb3duIHBpcGVsaW5lLCBkZWZhdWx0cyBvciBjb25maWcgdGhlbiB1c2UgdGhhdCxcbiAqICAgIG90aGVyd2lzZSB1c2Ugd2hhdGV2ZXIgaGFzIGJlZW4gcGFzc2VkIGRvd24gZnJvbSBmdXJ0aGVyIHVwIHRoZSB0cmVlLlxuICogMi4gSWYgaXQncyBhIGdyb3VwaW5nIG5vZGUsIHRoZW4gZmlyc3Qgb2YgYWxsIGNvbXB1dGVzIGFsbCBpdCdzIGNoaWxkcmVuLlxuICogICAgVGhpcyBpcyBkb2luZyBhIGRlcHRoIGZpcnN0IHRyYXZlcnNhbC5cbiAqIDMuIE90aGVyd2lzZSBtZXJnZXMgdGhlIGRlZmF1bHRzIGludG8gdGhlIGlucHV0cy5cbiAqIDQuIEl0ZXJhdGVzIG92ZXIgcGlwZWxpbmUgcGhhc2VzIChvYnNlcnZlLCByZWdyb3VwLCBjb21wdXRlKS5cbiAqIDUuIE9ic2VydmUgcGx1Z2lucyBhcmUgdXNlZCB0byBpbnNlcnQgaW5wdXQgdmFsdWVzXG4gKiAgICAoaXNvbGF0ZWQgZXhlY3V0aW9uIGNhbiBiZSBhY2hpdmVkIGJ5IHBhc3NpbmcgYC0tb2JzZXJ2ZWAgZmxhZyB0byBDTEkgY29tbWFuZCkuXG4gKiA2LiBSZWdyb3VwIHBsdWdpbiBpcyB1c2VkIHRvIGdyb3VwIGV4aXN0aW5nIGlucHV0cyBieSBjcml0ZXJpYVxuICogICAgKGlzb2xhdGVkIGV4ZWN1dGlvbiBjYW4gYmUgYWNoaXZlZCBieSBwYXNzaW5nIGAtLXJlZ3JvdXBgIGZsYWcgdG8gQ0xJIGNvbW1hbmQpLlxuICogICAgU2luY2UgaXQgY3JlYXRlcyBuZXcgY2hpbGRyZW4gZm9yIG5vZGUsIGV4aXN0aW5nIGlucHV0cyBhbmQgb3V0cHV0cyBhcmUgZHJvcHBlZCBhbmQgcmVjdXJzaXZlIHRyYXZlcnNhbCBpcyBjYWxsZWRcbiAqICAgIGZvciBuZXdib3JkIGNoaWxkIGNvbXBvbmVudC5cbiAqIDcuIENvbXB1dGUgcGx1Z2lucyBhcmUgdXNlZCB0byBkbyBkZXNpcmVkIGNvbXB1dGF0aW9ucyBhbmQgYXBwZW5kaW5nIHRoZSByZXN1bHQgdG8gb3V0cHV0c1xuICogICAgKGlzb2xhdGVkIGV4ZWN1dGlvbiBjYW4gYmUgYWNoaXZlZCBieSBwYXNzaW5nIGAtLWNvbXB1dGVgIGZsYWcgdG8gQ0xJIGNvbW1hbmQpLlxuICovXG5jb25zdCBjb21wdXRlTm9kZSA9IGFzeW5jIChcbiAgbm9kZTogTm9kZSxcbiAgY2hpbGROYW1lczogcmVhZG9ubHkgc3RyaW5nW10sXG4gIHBhcmFtczogQ29tcHV0ZVBhcmFtc1xuKTogUHJvbWlzZTx2b2lkPiA9PiB7XG4gIGNvbnN0IHBpcGVsaW5lID0gbm9kZS5waXBlbGluZSB8fCBwYXJhbXMucGlwZWxpbmU7XG4gIGNvbnN0IGNvbmZpZyA9IG5vZGUuY29uZmlnIHx8IHBhcmFtcy5jb25maWc7XG4gIGNvbnN0IGRlZmF1bHRzID0gbm9kZS5kZWZhdWx0cyB8fCBwYXJhbXMuZGVmYXVsdHM7XG4gIGNvbnN0IG5vRmxhZ3MgPSAhcGFyYW1zLm9ic2VydmUgJiYgIXBhcmFtcy5yZWdyb3VwICYmICFwYXJhbXMuY29tcHV0ZTtcblxuICBkZWJ1Z0xvZ2dlci5zZXRFeGVjdXRpbmdQbHVnaW5OYW1lKCk7XG4gIHdhcm5JZkNvbmZpZ1Byb3ZpZGVkKG5vZGUpO1xuXG4gIGlmIChub2RlLnBpcGVsaW5lKSB7XG4gICAgY2hpbGROYW1lcyA9IFtdO1xuICB9XG5cbiAgaWYgKG5vZGUuY2hpbGRyZW4pIHtcbiAgICByZXR1cm4gdHJhdmVyc2Uobm9kZS5jaGlsZHJlbiwgY2hpbGROYW1lcywge1xuICAgICAgLi4ucGFyYW1zLFxuICAgICAgcGlwZWxpbmUsXG4gICAgICBkZWZhdWx0cyxcbiAgICAgIGNvbmZpZyxcbiAgICB9KTtcbiAgfVxuXG4gIGxldCBvdXRwdXRTdG9yYWdlID0gc3RydWN0dXJlZENsb25lKG5vZGUuaW5wdXRzKSB8fCBbXTtcbiAgY29uc3QgcGlwZWxpbmVDb3B5ID0gc3RydWN0dXJlZENsb25lKHBpcGVsaW5lKSB8fCB7fTtcblxuICAvKiogQ2hlY2tzIGlmIHBpcGVsaW5lIGlzIG5vdCBhbiBhcnJheSBvciBlbXB0eSBvYmplY3QuICovXG4gIGlmIChcbiAgICBBcnJheS5pc0FycmF5KHBpcGVsaW5lQ29weSkgfHxcbiAgICAodHlwZW9mIHBpcGVsaW5lQ29weSA9PT0gJ29iamVjdCcgJiZcbiAgICAgIHBpcGVsaW5lQ29weSAhPT0gbnVsbCAmJlxuICAgICAgT2JqZWN0LmtleXMocGlwZWxpbmVDb3B5KS5sZW5ndGggPT09IDApXG4gICkge1xuICAgIGxvZ2dlci53YXJuKEVNUFRZX1BJUEVMSU5FKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiBpdGVyYXRpb24gaXMgb24gb2JzZXJ2ZSBwaXBlbGluZSwgdGhlbiBleGVjdXRlcyBvYnNlcnZlIHBsdWdpbnMgYW5kIHNldHMgdGhlIGlucHV0cyB2YWx1ZS5cbiAgICovXG4gIGlmICgobm9GbGFncyB8fCBwYXJhbXMub2JzZXJ2ZSkgJiYgcGlwZWxpbmVDb3B5Lm9ic2VydmUpIHtcbiAgICB3aGlsZSAocGlwZWxpbmVDb3B5Lm9ic2VydmUubGVuZ3RoICE9PSAwKSB7XG4gICAgICBjb25zdCBwbHVnaW5OYW1lID0gcGlwZWxpbmVDb3B5Lm9ic2VydmUuc2hpZnQoKSBhcyBzdHJpbmc7XG4gICAgICBjb25zb2xlLmRlYnVnKE9CU0VSVklORyhwbHVnaW5OYW1lKSk7XG4gICAgICBkZWJ1Z0xvZ2dlci5zZXRFeGVjdXRpbmdQbHVnaW5OYW1lKHBsdWdpbk5hbWUpO1xuXG4gICAgICBjb25zdCBwbHVnaW4gPSBwYXJhbXMucGx1Z2luU3RvcmFnZS5nZXQocGx1Z2luTmFtZSk7XG4gICAgICBjb25zdCBub2RlQ29uZmlnID0gY29uZmlnICYmIGNvbmZpZ1twbHVnaW5OYW1lXTtcblxuICAgICAgb3V0cHV0U3RvcmFnZSA9IGF3YWl0IHBsdWdpbi5leGVjdXRlKG91dHB1dFN0b3JhZ2UsIG5vZGVDb25maWcpO1xuICAgICAgbm9kZS5pbnB1dHMgPSBvdXRwdXRTdG9yYWdlO1xuXG4gICAgICBpZiAocGFyYW1zLmNvbnRleHQuZXhwbGFpbmVyKSB7XG4gICAgICAgIGFkZEV4cGxhaW5EYXRhKHtcbiAgICAgICAgICBwbHVnaW5OYW1lLFxuICAgICAgICAgIG1ldGFkYXRhOiBwbHVnaW4ubWV0YWRhdGEsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1lcmdlcyBkZWZhdWx0cyB3aXRoIGlucHV0cyBhZnRlciBvYnNlcnZpbmcuXG4gICAgICogRGVmYXVsdHMgYXJlIG5lZWRlZCB0byBiZSBtZXJnZWQgYWZ0ZXIgb2JzZXJ2aW5nIGJlY2F1c2Ugb2JzZXJ2aW5nIGNhbiBjaGFuZ2UgdGhlIGlucHV0cy5cbiAgICAgKi9cbiAgICBub2RlLmlucHV0cyA9IG1lcmdlRGVmYXVsdHMob3V0cHV0U3RvcmFnZSwgZGVmYXVsdHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIG9ic2VydmUgaXMgbm90IHJlcXVlc3RlZCwgdGhlbiBtZXJnZSBkZWZhdWx0cyB3aXRoIGlucHV0cy5cbiAgICovXG4gIGlmICghcGFyYW1zLm9ic2VydmUgJiYgb3V0cHV0U3RvcmFnZS5sZW5ndGggPiAwKSB7XG4gICAgb3V0cHV0U3RvcmFnZSA9IG1lcmdlRGVmYXVsdHMob3V0cHV0U3RvcmFnZSwgZGVmYXVsdHMpO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHJlZ3JvdXAgaXMgcmVxdWVzdGVkLCBleGVjdXRlIHJlZ3JvdXAgc3RyYXRlZ3ksIGRlbGV0ZSBjaGlsZCdzIGlucHV0cywgb3V0cHV0cyBhbmQgZW1wdHkgcmVncm91cCBhcnJheS5cbiAgICovXG4gIGlmICgobm9GbGFncyB8fCBwYXJhbXMucmVncm91cCkgJiYgcGlwZWxpbmVDb3B5LnJlZ3JvdXApIHtcbiAgICBjb25zdCBvcmlnaW5hbE91dHB1dHMgPSBwYXJhbXMuYXBwZW5kID8gbm9kZS5vdXRwdXRzIHx8IFtdIDogW107XG5cbiAgICBpZiAoIWlzUmVncm91cGVkKHBpcGVsaW5lQ29weS5yZWdyb3VwLCBvdXRwdXRTdG9yYWdlLCBjaGlsZE5hbWVzKSkge1xuICAgICAgbm9kZS5jaGlsZHJlbiA9IFJlZ3JvdXAoXG4gICAgICAgIG91dHB1dFN0b3JhZ2UsXG4gICAgICAgIG9yaWdpbmFsT3V0cHV0cyxcbiAgICAgICAgcGlwZWxpbmVDb3B5LnJlZ3JvdXBcbiAgICAgICk7XG5cbiAgICAgIGRlbGV0ZSBub2RlLmlucHV0cztcbiAgICAgIGRlbGV0ZSBub2RlLm91dHB1dHM7XG5cbiAgICAgIGRlYnVnTG9nZ2VyLnNldEV4ZWN1dGluZ1BsdWdpbk5hbWUoKTtcbiAgICAgIGNvbnNvbGUuZGVidWcoUkVHUk9VUElORyk7XG5cbiAgICAgIHJldHVybiB0cmF2ZXJzZShub2RlLmNoaWxkcmVuLCBjaGlsZE5hbWVzLCB7XG4gICAgICAgIC4uLnBhcmFtcyxcbiAgICAgICAgcGlwZWxpbmU6IHtcbiAgICAgICAgICAuLi5waXBlbGluZUNvcHksXG4gICAgICAgICAgcmVncm91cDogdW5kZWZpbmVkLFxuICAgICAgICB9LFxuICAgICAgICBkZWZhdWx0cyxcbiAgICAgICAgY29uZmlnLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnNvbGUuZGVidWcoU0tJUFBJTkdfUkVHUk9VUCk7XG4gICAgfVxuICB9XG5cbiAgY29uc29sZS5kZWJ1ZygnXFxuJyk7XG5cbiAgLyoqXG4gICAqIElmIGl0ZXJhdGlvbiBpcyBvbiBjb21wdXRlIHBsdWdpbiwgdGhlbiBleGVjdXRlcyBjb21wdXRlIHBsdWdpbnMgYW5kIHNldHMgdGhlIG91dHB1dHMgdmFsdWUuXG4gICAqL1xuICBpZiAoKG5vRmxhZ3MgfHwgcGFyYW1zLmNvbXB1dGUpICYmIHBpcGVsaW5lQ29weS5jb21wdXRlKSB7XG4gICAgY29uc3Qgb3JpZ2luYWxPdXRwdXRzID0gcGFyYW1zLmFwcGVuZCA/IG5vZGUub3V0cHV0cyB8fCBbXSA6IFtdO1xuXG4gICAgd2hpbGUgKHBpcGVsaW5lQ29weS5jb21wdXRlLmxlbmd0aCAhPT0gMCkge1xuICAgICAgY29uc3QgcGx1Z2luTmFtZSA9IHBpcGVsaW5lQ29weS5jb21wdXRlLnNoaWZ0KCkgYXMgc3RyaW5nO1xuICAgICAgY29uc3QgcGx1Z2luID0gcGFyYW1zLnBsdWdpblN0b3JhZ2UuZ2V0KHBsdWdpbk5hbWUpO1xuICAgICAgY29uc3Qgbm9kZUNvbmZpZyA9IGNvbmZpZyAmJiBjb25maWdbcGx1Z2luTmFtZV07XG5cbiAgICAgIGNvbnNvbGUuZGVidWcoQ09NUFVUSU5HX1BJUEVMSU5FX0ZPUl9OT0RFKHBsdWdpbk5hbWUpKTtcbiAgICAgIGRlYnVnTG9nZ2VyLnNldEV4ZWN1dGluZ1BsdWdpbk5hbWUocGx1Z2luTmFtZSk7XG5cbiAgICAgIC8qKiBLZWVwIHByZXZpb3VzIHN0YXRlIHRvIGNoZWNrIGFmdGVyIGNvbXB1dGF0aW9uLiAqL1xuICAgICAgY29uc3QgcHJldmlvdXNPdXRwdXRzU3RhdGUgPSBvdXRwdXRTdG9yYWdlO1xuXG4gICAgICBvdXRwdXRTdG9yYWdlID0gYXdhaXQgcGx1Z2luLmV4ZWN1dGUob3V0cHV0U3RvcmFnZSwgbm9kZUNvbmZpZyk7XG5cbiAgICAgIC8qKlxuICAgICAgICogSWYgdGhlcmUgYXJlIG5vIHByZXZpb3VzIGlucHV0cy9vdXRwdXRzIChjb21wdXRlIHBoYXNlIGluaXRhbGl6ZXMgdmFsdWVzKSwgdGhlbiBtZXJnZSBkZWZhdWx0cyB3aXRoIG91dHB1dHMgcG9zdGZhY3R1bS5cbiAgICAgICAqL1xuICAgICAgaWYgKHByZXZpb3VzT3V0cHV0c1N0YXRlLmxlbmd0aCA9PT0gMCAmJiBvdXRwdXRTdG9yYWdlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgb3V0cHV0U3RvcmFnZSA9IG1lcmdlRGVmYXVsdHMob3V0cHV0U3RvcmFnZSwgZGVmYXVsdHMpO1xuICAgICAgfVxuXG4gICAgICBkZWJ1Z0xvZ2dlci5zZXRFeGVjdXRpbmdQbHVnaW5OYW1lKCk7XG5cbiAgICAgIG5vZGUub3V0cHV0cyA9IG91dHB1dFN0b3JhZ2U7XG5cbiAgICAgIGlmIChwYXJhbXMuY29udGV4dC5leHBsYWluZXIpIHtcbiAgICAgICAgYWRkRXhwbGFpbkRhdGEoe1xuICAgICAgICAgIHBsdWdpbk5hbWUsXG4gICAgICAgICAgbWV0YWRhdGE6IHBsdWdpbi5tZXRhZGF0YSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKHBhcmFtcy5hcHBlbmQpIHtcbiAgICAgIG5vZGUub3V0cHV0cyA9IG9yaWdpbmFsT3V0cHV0cy5jb25jYXQobm9kZS5vdXRwdXRzIHx8IFtdKTtcbiAgICB9XG4gIH1cblxuICBjb25zb2xlLmRlYnVnKCdcXG4nKTtcbn07XG5cbi8qKlxuICogQ3JlYXRlcyBjb3B5IG9mIGV4aXN0aW5nIHRyZWUsIHRoZW4gYXBwbGllcyBjb21wdXRpbmcgc3RyYXRlZ3kuXG4gKi9cbmV4cG9ydCBjb25zdCBjb21wdXRlID0gYXN5bmMgKHRyZWU6IGFueSwgcGFyYW1zOiBDb21wdXRlUGFyYW1zKSA9PiB7XG4gIGNvbnN0IGNvcHlPZlRyZWUgPSBzdHJ1Y3R1cmVkQ2xvbmUodHJlZSk7XG5cbiAgYXdhaXQgY29tcHV0ZU5vZGUoY29weU9mVHJlZSwgW10sIHBhcmFtcyk7XG5cbiAgcmV0dXJuIGNvcHlPZlRyZWU7XG59O1xuIl19
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
import { Manifest } from '../../common/types/manifest';
|
|
1
|
+
import type { Execution, Manifest } from '../../common/types/manifest';
|
|
2
|
+
/**
|
|
3
|
+
* Get execution information (command, environment).
|
|
4
|
+
*/
|
|
5
|
+
export declare const getExecution: () => Promise<Execution>;
|
|
2
6
|
/**
|
|
3
7
|
* Injects execution information (command, environment) to existing manifest.
|
|
4
8
|
*/
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.injectEnvironment = void 0;
|
|
3
|
+
exports.injectEnvironment = exports.getExecution = void 0;
|
|
4
4
|
const os_checker_1 = require("../util/os-checker");
|
|
5
5
|
const helpers_1 = require("../../common/util/helpers");
|
|
6
6
|
const strings_1 = require("../config/strings");
|
|
@@ -44,28 +44,33 @@ const listDependencies = async () => {
|
|
|
44
44
|
return [];
|
|
45
45
|
};
|
|
46
46
|
/**
|
|
47
|
-
*
|
|
47
|
+
* Get execution information (command, environment).
|
|
48
48
|
*/
|
|
49
|
-
const
|
|
49
|
+
const getExecution = async () => {
|
|
50
50
|
console.debug(CAPTURING_RUNTIME_ENVIRONMENT_DATA);
|
|
51
51
|
const dependencies = await listDependencies();
|
|
52
52
|
const info = await (0, os_checker_1.osInfo)();
|
|
53
53
|
const dateTime = `${getProcessStartingTimestamp()} (UTC)`;
|
|
54
54
|
return {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
'date-time': dateTime,
|
|
65
|
-
dependencies,
|
|
66
|
-
},
|
|
55
|
+
status: 'success',
|
|
56
|
+
command: process.argv.join(' '),
|
|
57
|
+
environment: {
|
|
58
|
+
'if-version': packageJson.version,
|
|
59
|
+
os: info.os,
|
|
60
|
+
'os-version': info['os-version'],
|
|
61
|
+
'node-version': process.versions.node,
|
|
62
|
+
'date-time': dateTime,
|
|
63
|
+
dependencies,
|
|
67
64
|
},
|
|
68
65
|
};
|
|
69
66
|
};
|
|
67
|
+
exports.getExecution = getExecution;
|
|
68
|
+
/**
|
|
69
|
+
* Injects execution information (command, environment) to existing manifest.
|
|
70
|
+
*/
|
|
71
|
+
const injectEnvironment = async (manifest) => ({
|
|
72
|
+
...manifest,
|
|
73
|
+
execution: await (0, exports.getExecution)(),
|
|
74
|
+
});
|
|
70
75
|
exports.injectEnvironment = injectEnvironment;
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaWYtcnVuL2xpYi9lbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBMEM7QUFDMUMsdURBQXNEO0FBR3RELCtDQUEwQztBQUcxQyxNQUFNLFdBQVcsR0FBRyxPQUFPLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQUVyRCxNQUFNLEVBQUMsa0NBQWtDLEVBQUMsR0FBRyxpQkFBTyxDQUFDO0FBRXJEOzs7OztHQUtHO0FBQ0gsTUFBTSwyQkFBMkIsR0FBRyxHQUFHLEVBQUU7SUFDdkMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2pDLE1BQU0sWUFBWSxHQUFHLE9BQU8sR0FBRyxJQUFJLENBQUM7SUFFcEMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO0lBRW5DLE1BQU0sd0JBQXdCLEdBQUcsZUFBZSxHQUFHLFlBQVksQ0FBQztJQUVoRSxPQUFPLElBQUksSUFBSSxDQUFDLHdCQUF3QixDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDMUQsQ0FBQyxDQUFDO0FBRUY7O0dBRUc7QUFDSCxNQUFNLG1CQUFtQixHQUFHLENBQUMsWUFBMkMsRUFBRSxFQUFFLENBQzFFLFlBQVksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEVBQUU7SUFDNUIsTUFBTSxDQUFDLFdBQVcsRUFBRSxXQUFXLENBQUMsR0FBRyxVQUFVLENBQUM7SUFDOUMsTUFBTSxFQUFDLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFDLEdBQUcsV0FBVyxDQUFDO0lBQ3BELE1BQU0sWUFBWSxHQUFHLFVBQVUsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDcEUsTUFBTSxZQUFZLEdBQ2hCLFFBQVEsSUFBSSxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDakUsTUFBTSxlQUFlLEdBQUcsR0FBRyxXQUFXLElBQUksT0FBTyxHQUMvQyxZQUFZLElBQUksWUFDbEIsRUFBRSxDQUFDO0lBRUgsT0FBTyxlQUFlLENBQUM7QUFDekIsQ0FBQyxDQUFDLENBQUM7QUFFTDs7O0dBR0c7QUFDSCxNQUFNLGdCQUFnQixHQUFHLEtBQUssSUFBSSxFQUFFO0lBQ2xDLE1BQU0sRUFBQyxNQUFNLEVBQUMsR0FBRyxNQUFNLElBQUEscUJBQVcsRUFBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQ2pFLE1BQU0sZUFBZSxHQUFvQixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRTVELElBQUksZUFBZSxDQUFDLFlBQVksRUFBRTtRQUNoQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUVsRSxPQUFPLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxDQUFDO0tBQzFDO0lBRUQsT0FBTyxFQUFFLENBQUM7QUFDWixDQUFDLENBQUM7QUFFRjs7R0FFRztBQUNJLE1BQU0sWUFBWSxHQUFHLEtBQUssSUFBd0IsRUFBRTtJQUN6RCxPQUFPLENBQUMsS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7SUFFbEQsTUFBTSxZQUFZLEdBQUcsTUFBTSxnQkFBZ0IsRUFBRSxDQUFDO0lBQzlDLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBQSxtQkFBTSxHQUFFLENBQUM7SUFDNUIsTUFBTSxRQUFRLEdBQUcsR0FBRywyQkFBMkIsRUFBRSxRQUFRLENBQUM7SUFFMUQsT0FBTztRQUNMLE1BQU0sRUFBRSxTQUFTO1FBQ2pCLE9BQU8sRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7UUFDL0IsV0FBVyxFQUFFO1lBQ1gsWUFBWSxFQUFFLFdBQVcsQ0FBQyxPQUFPO1lBQ2pDLEVBQUUsRUFBRSxJQUFJLENBQUMsRUFBRTtZQUNYLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDO1lBQ2hDLGNBQWMsRUFBRSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUk7WUFDckMsV0FBVyxFQUFFLFFBQVE7WUFDckIsWUFBWTtTQUNiO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQW5CVyxRQUFBLFlBQVksZ0JBbUJ2QjtBQUVGOztHQUVHO0FBQ0ksTUFBTSxpQkFBaUIsR0FBRyxLQUFLLEVBQ3BDLFFBQWtCLEVBQ0MsRUFBRSxDQUFDLENBQUM7SUFDdkIsR0FBRyxRQUFRO0lBQ1gsU0FBUyxFQUFFLE1BQU0sSUFBQSxvQkFBWSxHQUFFO0NBQ2hDLENBQUMsQ0FBQztBQUxVLFFBQUEsaUJBQWlCLHFCQUszQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7b3NJbmZvfSBmcm9tICcuLi91dGlsL29zLWNoZWNrZXInO1xuaW1wb3J0IHtleGVjUHJvbWlzZX0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWwvaGVscGVycyc7XG5pbXBvcnQgdHlwZSB7RXhlY3V0aW9uLCBNYW5pZmVzdH0gZnJvbSAnLi4vLi4vY29tbW9uL3R5cGVzL21hbmlmZXN0JztcblxuaW1wb3J0IHtTVFJJTkdTfSBmcm9tICcuLi9jb25maWcvc3RyaW5ncyc7XG5pbXBvcnQge05wbUxpc3RSZXNwb25zZSwgUGFja2FnZURlcGVuZGVuY3l9IGZyb20gJy4uL3R5cGVzL2Vudmlyb25tZW50JztcblxuY29uc3QgcGFja2FnZUpzb24gPSByZXF1aXJlKCcuLi8uLi8uLi9wYWNrYWdlLmpzb24nKTtcblxuY29uc3Qge0NBUFRVUklOR19SVU5USU1FX0VOVklST05NRU5UX0RBVEF9ID0gU1RSSU5HUztcblxuLyoqXG4gKiAxLiBHZXRzIHRoZSBwcm9jZXNzIHVwdGltZSAodGhlIG51bWJlciBvZiBzZWNvbmRzIHRoZSBjdXJyZW50IE5vZGUuanMgcHJvY2VzcyBoYXMgYmVlbiBydW5uaW5nKS5cbiAqIDIuIENvbnZlcnRzIHRoZSB1cHRpbWUgdG8gbWlsbGlzZWNvbmRzLlxuICogMy4gR2V0cyB0aGUgY3VycmVudCBEYXRlVGltZS5cbiAqIDQuIFN1YnRyYWN0cyB0aGUgbWlsbGlzZWNvbmRzIGZyb20gdGhlIGN1cnJlbnQgRGF0ZVRpbWUuXG4gKi9cbmNvbnN0IGdldFByb2Nlc3NTdGFydGluZ1RpbWVzdGFtcCA9ICgpID0+IHtcbiAgY29uc3Qgc2Vjb25kcyA9IHByb2Nlc3MudXB0aW1lKCk7XG4gIGNvbnN0IG1pbGxpc2Vjb25kcyA9IHNlY29uZHMgKiAxMDAwO1xuXG4gIGNvbnN0IGN1cnJlbnREYXRlVGltZSA9IERhdGUubm93KCk7XG5cbiAgY29uc3QgYXBwbGljYXRpb25TdGFydERhdGVUaW1lID0gY3VycmVudERhdGVUaW1lIC0gbWlsbGlzZWNvbmRzO1xuXG4gIHJldHVybiBuZXcgRGF0ZShhcHBsaWNhdGlvblN0YXJ0RGF0ZVRpbWUpLnRvSVNPU3RyaW5nKCk7XG59O1xuXG4vKipcbiAqIEdvZXMgdGhyb3VnaCB0aGUgZGVwZW5kZW5jaWVzLCBjb252ZXJ0cyB0aGVtIGludG8gb25lbGluZXIuXG4gKi9cbmNvbnN0IGZsYXR0ZW5EZXBlbmRlbmNpZXMgPSAoZGVwZW5kZW5jaWVzOiBbc3RyaW5nLCBQYWNrYWdlRGVwZW5kZW5jeV1bXSkgPT5cbiAgZGVwZW5kZW5jaWVzLm1hcChkZXBlbmRlbmN5ID0+IHtcbiAgICBjb25zdCBbcGFja2FnZU5hbWUsIHZlcnNpb25JbmZvXSA9IGRlcGVuZGVuY3k7XG4gICAgY29uc3Qge3ZlcnNpb24sIGV4dHJhbmVvdXMsIHJlc29sdmVkfSA9IHZlcnNpb25JbmZvO1xuICAgIGNvbnN0IGlmRXh0cmFuZW91cyA9IGV4dHJhbmVvdXMgPyBgIGV4dHJhbmVvdXMgLT4gJHtyZXNvbHZlZH1gIDogJyc7XG4gICAgY29uc3QgaWZGcm9tR2l0aHViID1cbiAgICAgIHJlc29sdmVkICYmIHJlc29sdmVkLnN0YXJ0c1dpdGgoJ2dpdCcpID8gYCAoJHtyZXNvbHZlZH0pYCA6ICcnO1xuICAgIGNvbnN0IGZvcm1hdHRlZFN0cmluZyA9IGAke3BhY2thZ2VOYW1lfUAke3ZlcnNpb259JHtcbiAgICAgIGlmRXh0cmFuZW91cyB8fCBpZkZyb21HaXRodWJcbiAgICB9YDtcblxuICAgIHJldHVybiBmb3JtYXR0ZWRTdHJpbmc7XG4gIH0pO1xuXG4vKipcbiAqIDEuIFJ1bnMgYG5wbSBsaXN0IC0tanNvbiAtLW9taXQ9ZGV2YC5cbiAqIDIuIFBhcnNlcyBqc29uIGRhdGEgYW5kIGNvbnZlcnRzIHRvIGxpc3QuXG4gKi9cbmNvbnN0IGxpc3REZXBlbmRlbmNpZXMgPSBhc3luYyAoKSA9PiB7XG4gIGNvbnN0IHtzdGRvdXR9ID0gYXdhaXQgZXhlY1Byb21pc2UoJ25wbSBsaXN0IC0tanNvbiAtLW9taXQ9ZGV2Jyk7XG4gIGNvbnN0IG5wbUxpc3RSZXNwb25zZTogTnBtTGlzdFJlc3BvbnNlID0gSlNPTi5wYXJzZShzdGRvdXQpO1xuXG4gIGlmIChucG1MaXN0UmVzcG9uc2UuZGVwZW5kZW5jaWVzKSB7XG4gICAgY29uc3QgZGVwZW5kZW5jaWVzID0gT2JqZWN0LmVudHJpZXMobnBtTGlzdFJlc3BvbnNlLmRlcGVuZGVuY2llcyk7XG5cbiAgICByZXR1cm4gZmxhdHRlbkRlcGVuZGVuY2llcyhkZXBlbmRlbmNpZXMpO1xuICB9XG5cbiAgcmV0dXJuIFtdO1xufTtcblxuLyoqXG4gKiBHZXQgZXhlY3V0aW9uIGluZm9ybWF0aW9uIChjb21tYW5kLCBlbnZpcm9ubWVudCkuXG4gKi9cbmV4cG9ydCBjb25zdCBnZXRFeGVjdXRpb24gPSBhc3luYyAoKTogUHJvbWlzZTxFeGVjdXRpb24+ID0+IHtcbiAgY29uc29sZS5kZWJ1ZyhDQVBUVVJJTkdfUlVOVElNRV9FTlZJUk9OTUVOVF9EQVRBKTtcblxuICBjb25zdCBkZXBlbmRlbmNpZXMgPSBhd2FpdCBsaXN0RGVwZW5kZW5jaWVzKCk7XG4gIGNvbnN0IGluZm8gPSBhd2FpdCBvc0luZm8oKTtcbiAgY29uc3QgZGF0ZVRpbWUgPSBgJHtnZXRQcm9jZXNzU3RhcnRpbmdUaW1lc3RhbXAoKX0gKFVUQylgO1xuXG4gIHJldHVybiB7XG4gICAgc3RhdHVzOiAnc3VjY2VzcycsXG4gICAgY29tbWFuZDogcHJvY2Vzcy5hcmd2LmpvaW4oJyAnKSxcbiAgICBlbnZpcm9ubWVudDoge1xuICAgICAgJ2lmLXZlcnNpb24nOiBwYWNrYWdlSnNvbi52ZXJzaW9uLFxuICAgICAgb3M6IGluZm8ub3MsXG4gICAgICAnb3MtdmVyc2lvbic6IGluZm9bJ29zLXZlcnNpb24nXSxcbiAgICAgICdub2RlLXZlcnNpb24nOiBwcm9jZXNzLnZlcnNpb25zLm5vZGUsXG4gICAgICAnZGF0ZS10aW1lJzogZGF0ZVRpbWUsXG4gICAgICBkZXBlbmRlbmNpZXMsXG4gICAgfSxcbiAgfTtcbn07XG5cbi8qKlxuICogSW5qZWN0cyBleGVjdXRpb24gaW5mb3JtYXRpb24gKGNvbW1hbmQsIGVudmlyb25tZW50KSB0byBleGlzdGluZyBtYW5pZmVzdC5cbiAqL1xuZXhwb3J0IGNvbnN0IGluamVjdEVudmlyb25tZW50ID0gYXN5bmMgKFxuICBtYW5pZmVzdDogTWFuaWZlc3Rcbik6IFByb21pc2U8TWFuaWZlc3Q+ID0+ICh7XG4gIC4uLm1hbmlmZXN0LFxuICBleGVjdXRpb246IGF3YWl0IGdldEV4ZWN1dGlvbigpLFxufSk7XG4iXX0=
|
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
import { Context } from '../../common/types/manifest';
|
|
2
2
|
import { PluginStorageInterface } from '../types/plugin-storage';
|
|
3
|
+
/**
|
|
4
|
+
* Set whether to output warnings for external plugins.
|
|
5
|
+
* @param enable true if warnings for external plugins should be output
|
|
6
|
+
*/
|
|
7
|
+
export declare const setExternalPluginWarning: (enable: boolean) => void;
|
|
8
|
+
/**
|
|
9
|
+
* Set plugins to be disabled.
|
|
10
|
+
* Each element is specified in the format `plugin-path:method-name`.
|
|
11
|
+
* Built-in plugins are specified as `builtin:method-name`.
|
|
12
|
+
* @param pluginsToBeDisabled List of plugins to be disabled
|
|
13
|
+
*/
|
|
14
|
+
export declare const setDisabledPlugins: (pluginsToBeDisabled: Set<string>) => void;
|
|
3
15
|
/**
|
|
4
16
|
* Registers all plugins from `manifest`.`initialize` property.
|
|
5
17
|
* 1. Initalizes plugin storage.
|