@cqse/commons 1.0.0-beta.6 → 1.0.0-beta.7
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/lib/CollectorConfig.d.ts +0 -27
- package/lib/CollectorConfig.d.ts.map +1 -1
- package/lib/CollectorConfig.js +0 -15
- package/lib/CollectorConfig.js.map +1 -1
- package/lib/ConfigParser.d.ts +0 -132
- package/lib/ConfigParser.d.ts.map +1 -1
- package/lib/ConfigParser.js +0 -120
- package/lib/ConfigParser.js.map +1 -1
- package/lib/ConfigWithOverwrites.d.ts +0 -23
- package/lib/ConfigWithOverwrites.d.ts.map +1 -1
- package/lib/ConfigWithOverwrites.js +0 -24
- package/lib/ConfigWithOverwrites.js.map +1 -1
- package/lib/Contract.d.ts +0 -31
- package/lib/Contract.d.ts.map +1 -1
- package/lib/Contract.js +0 -29
- package/lib/Contract.js.map +1 -1
- package/lib/Exceptions.d.ts +0 -15
- package/lib/Exceptions.d.ts.map +1 -1
- package/lib/Exceptions.js +0 -15
- package/lib/Exceptions.js.map +1 -1
- package/lib/Strings.d.ts +0 -8
- package/lib/Strings.d.ts.map +1 -1
- package/lib/Strings.js +0 -8
- package/lib/Strings.js.map +1 -1
- package/lib/Validation.d.ts +0 -3
- package/lib/Validation.d.ts.map +1 -1
- package/lib/Validation.js +0 -7
- package/lib/Validation.js.map +1 -1
- package/lib/index.d.ts +0 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +0 -1
- package/lib/index.js.map +1 -1
- package/package.json +2 -2
package/lib/CollectorConfig.d.ts
CHANGED
|
@@ -8,10 +8,6 @@ export type PredefinableOptions = {
|
|
|
8
8
|
artifactoryAccessToken?: string;
|
|
9
9
|
artifactoryPathSuffix?: string;
|
|
10
10
|
};
|
|
11
|
-
/**
|
|
12
|
-
* Options that cannot be reconfigured during runtime.
|
|
13
|
-
* These settings are fixed after initial configuration.
|
|
14
|
-
*/
|
|
15
11
|
export type StaticCollectorOptions = PredefinableOptions & {
|
|
16
12
|
port: number;
|
|
17
13
|
dumpFolder: string;
|
|
@@ -24,13 +20,6 @@ export type StaticCollectorOptions = PredefinableOptions & {
|
|
|
24
20
|
teamscaleUser?: string;
|
|
25
21
|
teamscaleAccessToken?: string;
|
|
26
22
|
};
|
|
27
|
-
/**
|
|
28
|
-
* Options that can be modified during runtime.
|
|
29
|
-
* These settings control various aspects of the collector's behavior.
|
|
30
|
-
*
|
|
31
|
-
* See the other code in the present file for a list of all available
|
|
32
|
-
* options and their descriptions and default values.
|
|
33
|
-
*/
|
|
34
23
|
export type ReconfigurableCollectorOptions = PredefinableOptions & {
|
|
35
24
|
teamscaleProject?: string;
|
|
36
25
|
teamscalePartition?: string;
|
|
@@ -38,24 +27,8 @@ export type ReconfigurableCollectorOptions = PredefinableOptions & {
|
|
|
38
27
|
teamscaleMessage?: string;
|
|
39
28
|
dumpToFolder?: string;
|
|
40
29
|
};
|
|
41
|
-
/**
|
|
42
|
-
* Complete collection of collector configuration options.
|
|
43
|
-
* Combines both fixed and reconfigurable options into a single type.
|
|
44
|
-
*/
|
|
45
30
|
export type CollectorOptions = StaticCollectorOptions & ReconfigurableCollectorOptions;
|
|
46
|
-
/**
|
|
47
|
-
* Build the collector parameters that can be overwritten by instrumented apps.
|
|
48
|
-
*/
|
|
49
31
|
export declare function buildPredefinableParameters(): ConfigurationParameters;
|
|
50
|
-
/**
|
|
51
|
-
* Builds and returns the configuration parameters for the collector.
|
|
52
|
-
* This includes all available command line arguments and their default values.
|
|
53
|
-
*
|
|
54
|
-
* @returns {ConfigurationParameters} Configuration parameters instance with all defined options
|
|
55
|
-
*/
|
|
56
32
|
export declare function buildStaticCollectorParameters(): ConfigurationParameters;
|
|
57
|
-
/**
|
|
58
|
-
* Builds and returns the during run-time reconfigurable configuration parameters for the collector.
|
|
59
|
-
*/
|
|
60
33
|
export declare function buildReconfigurableCollectorParameters(): ConfigurationParameters;
|
|
61
34
|
//# sourceMappingURL=CollectorConfig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CollectorConfig.d.ts","sourceRoot":"","sources":["../src/CollectorConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,uBAAuB,EACvB,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"CollectorConfig.d.ts","sourceRoot":"","sources":["../src/CollectorConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAEN,uBAAuB,EACvB,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,mBAAmB,GAAG;IACjC,iBAAiB,EAAE,OAAO,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAC/B,CAAA;AAMD,MAAM,MAAM,sBAAsB,GAAG,mBAAmB,GAAG;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AASF,MAAM,MAAM,8BAA8B,GAAG,mBAAmB,GAAG;IAClE,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAMF,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,8BAA8B,CAAC;AA8CvF,wBAAgB,2BAA2B,IAAI,uBAAuB,CA6DrE;AAQD,wBAAgB,8BAA8B,IAAI,uBAAuB,CAkDxE;AAKD,wBAAgB,sCAAsC,IAAI,uBAAuB,CAoBhF"}
|
package/lib/CollectorConfig.js
CHANGED
|
@@ -33,9 +33,6 @@ const CONFIG_GROUP_LOGGING = {
|
|
|
33
33
|
order: 5,
|
|
34
34
|
title: 'Logging Behavior'
|
|
35
35
|
};
|
|
36
|
-
/**
|
|
37
|
-
* Build the collector parameters that can be overwritten by instrumented apps.
|
|
38
|
-
*/
|
|
39
36
|
function buildPredefinableParameters() {
|
|
40
37
|
const parameters = new ConfigParser_1.ConfigurationParameters();
|
|
41
38
|
function add(shortParameter, longParameter, type, options) {
|
|
@@ -51,7 +48,6 @@ function buildPredefinableParameters() {
|
|
|
51
48
|
default: 120,
|
|
52
49
|
group: CONFIG_GROUP_COVERAGE_DUMP
|
|
53
50
|
});
|
|
54
|
-
// Artifactory upload
|
|
55
51
|
add(undefined, '--artifactory-server-url', 'string', {
|
|
56
52
|
help: 'Upload the coverage to the given Artifactory server URL. The URL may include a subpath on the artifactory server, e.g. https://artifactory.acme.com/my-repo/my/subpath',
|
|
57
53
|
group: CONFIG_GROUP_ARTIFACTORY_UPLOAD
|
|
@@ -72,7 +68,6 @@ function buildPredefinableParameters() {
|
|
|
72
68
|
help: '(optional): The path within the storage location between the default path and the uploaded artifact.',
|
|
73
69
|
group: CONFIG_GROUP_ARTIFACTORY_UPLOAD
|
|
74
70
|
});
|
|
75
|
-
// Upload to Teamscale
|
|
76
71
|
add(undefined, '--teamscale-project', 'string', {
|
|
77
72
|
help: 'The project ID to upload coverage to.',
|
|
78
73
|
group: CONFIG_GROUP_TEAMSCALE_UPLOAD
|
|
@@ -92,12 +87,6 @@ function buildPredefinableParameters() {
|
|
|
92
87
|
});
|
|
93
88
|
return parameters;
|
|
94
89
|
}
|
|
95
|
-
/**
|
|
96
|
-
* Builds and returns the configuration parameters for the collector.
|
|
97
|
-
* This includes all available command line arguments and their default values.
|
|
98
|
-
*
|
|
99
|
-
* @returns {ConfigurationParameters} Configuration parameters instance with all defined options
|
|
100
|
-
*/
|
|
101
90
|
function buildStaticCollectorParameters() {
|
|
102
91
|
const parameters = buildPredefinableParameters();
|
|
103
92
|
function add(shortParameter, longParameter, type, options) {
|
|
@@ -145,9 +134,6 @@ function buildStaticCollectorParameters() {
|
|
|
145
134
|
});
|
|
146
135
|
return parameters;
|
|
147
136
|
}
|
|
148
|
-
/**
|
|
149
|
-
* Builds and returns the during run-time reconfigurable configuration parameters for the collector.
|
|
150
|
-
*/
|
|
151
137
|
function buildReconfigurableCollectorParameters() {
|
|
152
138
|
const parameters = buildPredefinableParameters();
|
|
153
139
|
function addShort(shortParameter, longParameter, type, options) {
|
|
@@ -156,7 +142,6 @@ function buildReconfigurableCollectorParameters() {
|
|
|
156
142
|
function add(longArgument, type, options) {
|
|
157
143
|
addShort(undefined, longArgument, type, options);
|
|
158
144
|
}
|
|
159
|
-
// Coverage dumping
|
|
160
145
|
add('--dump-to-folder', 'string', {
|
|
161
146
|
help: 'Coverage should be dumped to a folder on the server that the collector is running on.\n' +
|
|
162
147
|
'Specifies the name of the subfolder within the collector\'s dump folder (--dump-folder of the collector) where coverage files should be placed.',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CollectorConfig.js","sourceRoot":"","sources":["../src/CollectorConfig.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"CollectorConfig.js","sourceRoot":"","sources":["../src/CollectorConfig.ts"],"names":[],"mappings":"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"}
|
package/lib/ConfigParser.d.ts
CHANGED
|
@@ -1,193 +1,61 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Configuration parser module that handles command-line arguments, environment variables,
|
|
3
|
-
* and configuration files for TypeScript/JavaScript applications.
|
|
4
|
-
*
|
|
5
|
-
* @module ConfigParser
|
|
6
|
-
*/
|
|
7
|
-
/** Supported parameter types for configuration options */
|
|
8
1
|
export type ConfigParameterType = 'string' | 'int' | 'bool' | 'string[]';
|
|
9
|
-
/** Possible value types for configuration parameters */
|
|
10
2
|
export type ConfigValueType = string | number | boolean | string[];
|
|
11
|
-
/** Record of parameter names to their values */
|
|
12
3
|
export type Options = Record<string, ConfigValueType>;
|
|
13
|
-
/** Options for printing the version and help information */
|
|
14
4
|
export type VersionAndHelpOptions = {
|
|
15
5
|
version: boolean;
|
|
16
6
|
help: boolean;
|
|
17
7
|
};
|
|
18
|
-
/** Result of parsing the configuration containing options and unnamed arguments */
|
|
19
8
|
export type ConfigParsingResult = {
|
|
20
9
|
options: Options;
|
|
21
10
|
unnamedArguments: string[];
|
|
22
11
|
};
|
|
23
|
-
/** Describes the application that is going to be configured and run. */
|
|
24
12
|
export type AppInfos = {
|
|
25
13
|
name: string;
|
|
26
14
|
version: string;
|
|
27
15
|
about: string;
|
|
28
16
|
};
|
|
29
|
-
/** Defines a group of configuration parameters. */
|
|
30
17
|
export type ParameterGroup = {
|
|
31
|
-
/** Number used as the primary criterion for ordering */
|
|
32
18
|
order: number;
|
|
33
|
-
/** Title of the group */
|
|
34
19
|
title: string;
|
|
35
|
-
/** Hints on the intended use of the parameters */
|
|
36
20
|
hints?: string;
|
|
37
21
|
};
|
|
38
|
-
/** Parameter group for --version and --help */
|
|
39
22
|
export declare const CONFIG_GROUP_APP: ParameterGroup;
|
|
40
|
-
/** Describes a configuration parameter with its properties */
|
|
41
23
|
export type ParameterDescriptor = {
|
|
42
|
-
/** Internal identifier for the parameter */
|
|
43
24
|
parameterId: string;
|
|
44
|
-
/** Short form of the parameter (e.g., -p) */
|
|
45
25
|
shortParameter?: string;
|
|
46
|
-
/** Long form of the parameter (e.g., --port) */
|
|
47
26
|
longParameter: string;
|
|
48
|
-
/** Environment variable name for this parameter */
|
|
49
27
|
environmentVariableName: string;
|
|
50
|
-
/** Disable overwriting the parameter value via an environment variable? */
|
|
51
28
|
disableEnvironmentVariableOverride?: boolean;
|
|
52
|
-
/** Parameter's data type */
|
|
53
29
|
type: ConfigParameterType;
|
|
54
|
-
/** Default value if parameter is not specified */
|
|
55
30
|
default?: ConfigValueType;
|
|
56
|
-
/** Help text describing the parameter */
|
|
57
31
|
help: string;
|
|
58
|
-
/**
|
|
59
|
-
* Is it an internal parameter, not to be visible in the command line by default?
|
|
60
|
-
* An example is a parameter that is configured via a different mechanism but still
|
|
61
|
-
* shall be present in the configuration mechanism at hand.
|
|
62
|
-
*/
|
|
63
32
|
internal: boolean;
|
|
64
|
-
/** Parameter group it belongs to. */
|
|
65
33
|
group?: ParameterGroup;
|
|
66
34
|
};
|
|
67
|
-
/**
|
|
68
|
-
* See `ParameterDescriptor`.
|
|
69
|
-
*/
|
|
70
35
|
export type ParameterDefinitionOptions = Partial<ParameterDescriptor>;
|
|
71
|
-
/**
|
|
72
|
-
* Converts a parameter name (with dashes) to a camelCase parameter ID.
|
|
73
|
-
*
|
|
74
|
-
* @param parameterName - The parameter name to convert (e.g., --my-param)
|
|
75
|
-
* @returns The camelCase parameter ID (e.g., myParam)
|
|
76
|
-
*/
|
|
77
36
|
export declare function parameterNameToParameterId(parameterName: string): string;
|
|
78
|
-
/**
|
|
79
|
-
* Converts a long parameter name to an environment variable name.
|
|
80
|
-
*
|
|
81
|
-
* @param longParameter - The long parameter name (e.g., --my-param)
|
|
82
|
-
* @returns The environment variable name (e.g., MY_PARAM)
|
|
83
|
-
*/
|
|
84
37
|
export declare function longParameterToEnvironmentVariableName(longParameter: string): string;
|
|
85
|
-
/**
|
|
86
|
-
* Manages configuration parameters and their properties.
|
|
87
|
-
* Provides functionality to add, describe, and parse parameters.
|
|
88
|
-
*/
|
|
89
38
|
export declare class ConfigurationParameters {
|
|
90
39
|
private readonly parameters;
|
|
91
40
|
private readonly shortToLongParameterMap;
|
|
92
41
|
private readonly sequentialParameters;
|
|
93
42
|
private readonly argumentChecks;
|
|
94
43
|
constructor();
|
|
95
|
-
/**
|
|
96
|
-
* Adds a new parameter to the configuration.
|
|
97
|
-
*
|
|
98
|
-
* @param shortParameter - Optional short form of the parameter (e.g., -p)
|
|
99
|
-
* @param longParameter - Long form of the parameter (e.g., --port)
|
|
100
|
-
* @param type - Parameter's data type
|
|
101
|
-
* @param options - Additional parameter options including a help text and default value
|
|
102
|
-
*/
|
|
103
44
|
addParameter(shortParameter: string | undefined, longParameter: string, type: ConfigParameterType, options?: ParameterDefinitionOptions): void;
|
|
104
|
-
/**
|
|
105
|
-
* Adds a new argument check function to the list of checks.
|
|
106
|
-
*
|
|
107
|
-
* @param check - A function that takes an options object as input and returns a string containing an
|
|
108
|
-
* error message if a validation fails, or undefined if the validation passes.
|
|
109
|
-
*/
|
|
110
45
|
addArgumentCheck(check: (options: Record<string, unknown>) => string | undefined): void;
|
|
111
|
-
/**
|
|
112
|
-
* Makes the given parameter mandatory.
|
|
113
|
-
*/
|
|
114
46
|
addRequiredArgumentFor(parameterId: string): void;
|
|
115
|
-
/**
|
|
116
|
-
* Describes a parameter with its complete set of properties.
|
|
117
|
-
*
|
|
118
|
-
* @param parameterId - Internal identifier for the parameter
|
|
119
|
-
* @param descriptor - Complete parameter descriptor
|
|
120
|
-
* @throws Error if short parameter is invalid or already mapped
|
|
121
|
-
*/
|
|
122
47
|
describeParameter(parameterId: string, descriptor: ParameterDescriptor): void;
|
|
123
|
-
/**
|
|
124
|
-
* Looks up a parameter descriptor by its ID.
|
|
125
|
-
*
|
|
126
|
-
* @param parameterId - Parameter identifier to look up
|
|
127
|
-
* @returns Parameter descriptor if found, undefined otherwise
|
|
128
|
-
*/
|
|
129
48
|
lookupParameter(parameterId: string): ParameterDescriptor | undefined;
|
|
130
|
-
/**
|
|
131
|
-
* Returns all registered parameter descriptors.
|
|
132
|
-
*
|
|
133
|
-
* @returns Array of all parameter descriptors
|
|
134
|
-
*/
|
|
135
49
|
getParameters(): ParameterDescriptor[];
|
|
136
|
-
/**
|
|
137
|
-
* Retrieves the collection of functions used for argument validation.
|
|
138
|
-
*/
|
|
139
50
|
getArgumentChecks(): Array<(options: Record<string, unknown>) => string | undefined>;
|
|
140
|
-
/**
|
|
141
|
-
* Returns an array of parameter IDs that are configured as sequential parameters.
|
|
142
|
-
* That is, parameters that are given without a name but where their mapping
|
|
143
|
-
* to concrete parameters is defined by their position in the command line.
|
|
144
|
-
*/
|
|
145
51
|
getSequentialParameters(): string[];
|
|
146
|
-
/**
|
|
147
|
-
* @returns A new configuration object with the same parameters as this one.
|
|
148
|
-
*/
|
|
149
52
|
clone(): ConfigurationParameters;
|
|
150
|
-
/**
|
|
151
|
-
* Adds all parameters and checks from the given configuration to this one.
|
|
152
|
-
*/
|
|
153
53
|
addAllOf(toAdd: ConfigurationParameters): void;
|
|
154
54
|
}
|
|
155
|
-
/**
|
|
156
|
-
* Parses command line arguments according to parameter definitions.
|
|
157
|
-
*
|
|
158
|
-
* @param args - Array of command line arguments to parse
|
|
159
|
-
* @param parameters - Configuration parameters defining valid options
|
|
160
|
-
* @returns Parsed options object with parameter values
|
|
161
|
-
* @throws Error if parameter values are invalid or missing
|
|
162
|
-
*/
|
|
163
55
|
export declare function parseArguments<OptionsType extends Record<string, unknown>>(args: string[], parameters: ConfigurationParameters): Partial<OptionsType>;
|
|
164
|
-
/**
|
|
165
|
-
* Parses a configuration file content into options and unnamed arguments.
|
|
166
|
-
*
|
|
167
|
-
* @param fileContent - Content of the configuration file to parse
|
|
168
|
-
* @param parameters - Configuration parameters defining valid options
|
|
169
|
-
* @returns Object containing parsed options and unnamed arguments
|
|
170
|
-
* @throws Error if the configuration file contains invalid parameters or values
|
|
171
|
-
*/
|
|
172
56
|
export declare function parseConfigFile(fileContent: string, parameters: ConfigurationParameters): ConfigParsingResult;
|
|
173
|
-
/**
|
|
174
|
-
* Prints help information for all registered parameters.
|
|
175
|
-
*
|
|
176
|
-
* @param parameters - Configuration parameters to display help for
|
|
177
|
-
* @param aboutText - Optional descriptive text to display before parameter help
|
|
178
|
-
* @param printParamterId - Print the ID of the parameter instead of the command line parameter names?
|
|
179
|
-
*/
|
|
180
57
|
export declare function printHelp(parameters: ConfigurationParameters, aboutText?: string, printParamterId?: boolean): void;
|
|
181
|
-
/**
|
|
182
|
-
* Runs the config parameter checks for the given options.
|
|
183
|
-
*/
|
|
184
58
|
export declare function checkArguments(configParameters: ConfigurationParameters, options: Options, errorReceiver?: (error: string) => void): boolean;
|
|
185
|
-
/**
|
|
186
|
-
* Parses the command-line arguments.
|
|
187
|
-
*/
|
|
188
59
|
export declare function processCommandLine<O>(parameters: ConfigurationParameters, appInfos: AppInfos, args?: string[], beforeCheckCallback?: (options: O) => void): O;
|
|
189
|
-
/**
|
|
190
|
-
* Creates a new configuration object by merging two configuration objects.
|
|
191
|
-
*/
|
|
192
60
|
export declare function parameterUnion(parameters1: ConfigurationParameters, parameters2: ConfigurationParameters): ConfigurationParameters;
|
|
193
61
|
//# sourceMappingURL=ConfigParser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigParser.d.ts","sourceRoot":"","sources":["../src/ConfigParser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ConfigParser.d.ts","sourceRoot":"","sources":["../src/ConfigParser.ts"],"names":[],"mappings":"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"}
|
package/lib/ConfigParser.js
CHANGED
|
@@ -1,10 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Configuration parser module that handles command-line arguments, environment variables,
|
|
4
|
-
* and configuration files for TypeScript/JavaScript applications.
|
|
5
|
-
*
|
|
6
|
-
* @module ConfigParser
|
|
7
|
-
*/
|
|
8
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
9
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
10
4
|
};
|
|
@@ -20,7 +14,6 @@ exports.processCommandLine = processCommandLine;
|
|
|
20
14
|
exports.parameterUnion = parameterUnion;
|
|
21
15
|
const node_process_1 = __importDefault(require("node:process"));
|
|
22
16
|
const Exceptions_1 = require("./Exceptions");
|
|
23
|
-
/** Parameter group for --version and --help */
|
|
24
17
|
exports.CONFIG_GROUP_APP = {
|
|
25
18
|
order: 999,
|
|
26
19
|
title: 'Application'
|
|
@@ -39,30 +32,14 @@ function expectedArgumentCount(parameterDescriptor) {
|
|
|
39
32
|
throw new Exceptions_1.InvalidConfigurationException(`Unsupported parameter type "${parameterDescriptor.type}" for parameter "${parameterDescriptor.longParameter}".`);
|
|
40
33
|
}
|
|
41
34
|
}
|
|
42
|
-
/**
|
|
43
|
-
* Converts a parameter name (with dashes) to a camelCase parameter ID.
|
|
44
|
-
*
|
|
45
|
-
* @param parameterName - The parameter name to convert (e.g., --my-param)
|
|
46
|
-
* @returns The camelCase parameter ID (e.g., myParam)
|
|
47
|
-
*/
|
|
48
35
|
function parameterNameToParameterId(parameterName) {
|
|
49
36
|
const withoutLeadingDashes = parameterName.replace(/^-+/, '');
|
|
50
37
|
return withoutLeadingDashes.replace(/-([a-z])/g, (_, char) => char.toUpperCase());
|
|
51
38
|
}
|
|
52
|
-
/**
|
|
53
|
-
* Converts a long parameter name to an environment variable name.
|
|
54
|
-
*
|
|
55
|
-
* @param longParameter - The long parameter name (e.g., --my-param)
|
|
56
|
-
* @returns The environment variable name (e.g., MY_PARAM)
|
|
57
|
-
*/
|
|
58
39
|
function longParameterToEnvironmentVariableName(longParameter) {
|
|
59
40
|
const withoutLeadingDashes = longParameter.replace(/^--/, '');
|
|
60
41
|
return withoutLeadingDashes.toUpperCase().replace(/-/g, '_');
|
|
61
42
|
}
|
|
62
|
-
/**
|
|
63
|
-
* Manages configuration parameters and their properties.
|
|
64
|
-
* Provides functionality to add, describe, and parse parameters.
|
|
65
|
-
*/
|
|
66
43
|
class ConfigurationParameters {
|
|
67
44
|
constructor() {
|
|
68
45
|
this.parameters = new Map();
|
|
@@ -70,14 +47,6 @@ class ConfigurationParameters {
|
|
|
70
47
|
this.sequentialParameters = [];
|
|
71
48
|
this.argumentChecks = [];
|
|
72
49
|
}
|
|
73
|
-
/**
|
|
74
|
-
* Adds a new parameter to the configuration.
|
|
75
|
-
*
|
|
76
|
-
* @param shortParameter - Optional short form of the parameter (e.g., -p)
|
|
77
|
-
* @param longParameter - Long form of the parameter (e.g., --port)
|
|
78
|
-
* @param type - Parameter's data type
|
|
79
|
-
* @param options - Additional parameter options including a help text and default value
|
|
80
|
-
*/
|
|
81
50
|
addParameter(shortParameter, longParameter, type, options = {}) {
|
|
82
51
|
var _a, _b;
|
|
83
52
|
const parameterId = parameterNameToParameterId(longParameter);
|
|
@@ -89,18 +58,9 @@ class ConfigurationParameters {
|
|
|
89
58
|
group: options.group,
|
|
90
59
|
environmentVariableName });
|
|
91
60
|
}
|
|
92
|
-
/**
|
|
93
|
-
* Adds a new argument check function to the list of checks.
|
|
94
|
-
*
|
|
95
|
-
* @param check - A function that takes an options object as input and returns a string containing an
|
|
96
|
-
* error message if a validation fails, or undefined if the validation passes.
|
|
97
|
-
*/
|
|
98
61
|
addArgumentCheck(check) {
|
|
99
62
|
this.argumentChecks.push(check);
|
|
100
63
|
}
|
|
101
|
-
/**
|
|
102
|
-
* Makes the given parameter mandatory.
|
|
103
|
-
*/
|
|
104
64
|
addRequiredArgumentFor(parameterId) {
|
|
105
65
|
const parameter = this.lookupParameter(parameterId);
|
|
106
66
|
if (parameter === undefined) {
|
|
@@ -118,16 +78,8 @@ class ConfigurationParameters {
|
|
|
118
78
|
return undefined;
|
|
119
79
|
});
|
|
120
80
|
}
|
|
121
|
-
/**
|
|
122
|
-
* Describes a parameter with its complete set of properties.
|
|
123
|
-
*
|
|
124
|
-
* @param parameterId - Internal identifier for the parameter
|
|
125
|
-
* @param descriptor - Complete parameter descriptor
|
|
126
|
-
* @throws Error if short parameter is invalid or already mapped
|
|
127
|
-
*/
|
|
128
81
|
describeParameter(parameterId, descriptor) {
|
|
129
82
|
this.parameters.set(parameterId, descriptor);
|
|
130
|
-
// Store a mapping for short parameters to their expanded (long) counterpart.
|
|
131
83
|
if (descriptor.shortParameter) {
|
|
132
84
|
const shortParameterId = descriptor.shortParameter.replace(/^-/, '').trim().toLowerCase();
|
|
133
85
|
if (shortParameterId.length < 1 || shortParameterId.length > 3) {
|
|
@@ -139,17 +91,10 @@ class ConfigurationParameters {
|
|
|
139
91
|
}
|
|
140
92
|
this.shortToLongParameterMap.set(shortParameterId, descriptor.parameterId);
|
|
141
93
|
}
|
|
142
|
-
// Maybe it describes a sequential parameter.
|
|
143
94
|
if (!descriptor.longParameter.startsWith('--')) {
|
|
144
95
|
this.sequentialParameters.push(parameterId);
|
|
145
96
|
}
|
|
146
97
|
}
|
|
147
|
-
/**
|
|
148
|
-
* Looks up a parameter descriptor by its ID.
|
|
149
|
-
*
|
|
150
|
-
* @param parameterId - Parameter identifier to look up
|
|
151
|
-
* @returns Parameter descriptor if found, undefined otherwise
|
|
152
|
-
*/
|
|
153
98
|
lookupParameter(parameterId) {
|
|
154
99
|
let result = this.parameters.get(parameterId);
|
|
155
100
|
if (result === undefined) {
|
|
@@ -160,31 +105,15 @@ class ConfigurationParameters {
|
|
|
160
105
|
}
|
|
161
106
|
return result;
|
|
162
107
|
}
|
|
163
|
-
/**
|
|
164
|
-
* Returns all registered parameter descriptors.
|
|
165
|
-
*
|
|
166
|
-
* @returns Array of all parameter descriptors
|
|
167
|
-
*/
|
|
168
108
|
getParameters() {
|
|
169
109
|
return Array.from(this.parameters.values());
|
|
170
110
|
}
|
|
171
|
-
/**
|
|
172
|
-
* Retrieves the collection of functions used for argument validation.
|
|
173
|
-
*/
|
|
174
111
|
getArgumentChecks() {
|
|
175
112
|
return this.argumentChecks;
|
|
176
113
|
}
|
|
177
|
-
/**
|
|
178
|
-
* Returns an array of parameter IDs that are configured as sequential parameters.
|
|
179
|
-
* That is, parameters that are given without a name but where their mapping
|
|
180
|
-
* to concrete parameters is defined by their position in the command line.
|
|
181
|
-
*/
|
|
182
114
|
getSequentialParameters() {
|
|
183
115
|
return this.sequentialParameters;
|
|
184
116
|
}
|
|
185
|
-
/**
|
|
186
|
-
* @returns A new configuration object with the same parameters as this one.
|
|
187
|
-
*/
|
|
188
117
|
clone() {
|
|
189
118
|
const clone = new ConfigurationParameters();
|
|
190
119
|
for (const parameter of this.parameters.values()) {
|
|
@@ -195,9 +124,6 @@ class ConfigurationParameters {
|
|
|
195
124
|
}
|
|
196
125
|
return clone;
|
|
197
126
|
}
|
|
198
|
-
/**
|
|
199
|
-
* Adds all parameters and checks from the given configuration to this one.
|
|
200
|
-
*/
|
|
201
127
|
addAllOf(toAdd) {
|
|
202
128
|
for (const parameter of toAdd.getParameters()) {
|
|
203
129
|
this.describeParameter(parameter.parameterId, parameter);
|
|
@@ -208,14 +134,6 @@ class ConfigurationParameters {
|
|
|
208
134
|
}
|
|
209
135
|
}
|
|
210
136
|
exports.ConfigurationParameters = ConfigurationParameters;
|
|
211
|
-
/**
|
|
212
|
-
* Parses command line arguments according to parameter definitions.
|
|
213
|
-
*
|
|
214
|
-
* @param args - Array of command line arguments to parse
|
|
215
|
-
* @param parameters - Configuration parameters defining valid options
|
|
216
|
-
* @returns Parsed options object with parameter values
|
|
217
|
-
* @throws Error if parameter values are invalid or missing
|
|
218
|
-
*/
|
|
219
137
|
function parseArguments(args, parameters) {
|
|
220
138
|
const result = {};
|
|
221
139
|
let activeParameter;
|
|
@@ -234,8 +152,6 @@ function parseArguments(args, parameters) {
|
|
|
234
152
|
}
|
|
235
153
|
else if (activeParameter.type === 'string[]') {
|
|
236
154
|
const targetList = result[activeParameter.parameterId];
|
|
237
|
-
// A list argument can be either provided by separating a string with commas
|
|
238
|
-
// or by pasing multiple string arguments (separated by space) in a sequence.
|
|
239
155
|
const argumentsNormalizedAsList = parseStringListArgument(activeArguments.join(","));
|
|
240
156
|
if (isDefinedStringList(targetList)) {
|
|
241
157
|
result[activeParameter.parameterId] = targetList.concat(argumentsNormalizedAsList);
|
|
@@ -275,8 +191,6 @@ function parseArguments(args, parameters) {
|
|
|
275
191
|
}
|
|
276
192
|
}
|
|
277
193
|
finishParameter();
|
|
278
|
-
// Set default values for parameters for which we did not receive an argument.
|
|
279
|
-
// Or read the value from an ENVIRONMENT_VARIABLE.
|
|
280
194
|
for (const parameter of parameters.getParameters()) {
|
|
281
195
|
if (result[parameter.parameterId] === undefined) {
|
|
282
196
|
result[parameter.parameterId] = parameter.default;
|
|
@@ -338,14 +252,6 @@ function parseWithProperType(value, parameterDescriptor) {
|
|
|
338
252
|
function isDefinedStringList(option) {
|
|
339
253
|
return Array.isArray(option) && option.every(item => typeof item === 'string');
|
|
340
254
|
}
|
|
341
|
-
/**
|
|
342
|
-
* Parses a configuration file content into options and unnamed arguments.
|
|
343
|
-
*
|
|
344
|
-
* @param fileContent - Content of the configuration file to parse
|
|
345
|
-
* @param parameters - Configuration parameters defining valid options
|
|
346
|
-
* @returns Object containing parsed options and unnamed arguments
|
|
347
|
-
* @throws Error if the configuration file contains invalid parameters or values
|
|
348
|
-
*/
|
|
349
255
|
function parseConfigFile(fileContent, parameters) {
|
|
350
256
|
const options = {};
|
|
351
257
|
const unnamedArguments = [];
|
|
@@ -381,13 +287,6 @@ function parseConfigFile(fileContent, parameters) {
|
|
|
381
287
|
}
|
|
382
288
|
return { options, unnamedArguments };
|
|
383
289
|
}
|
|
384
|
-
/**
|
|
385
|
-
* Prints help information for all registered parameters.
|
|
386
|
-
*
|
|
387
|
-
* @param parameters - Configuration parameters to display help for
|
|
388
|
-
* @param aboutText - Optional descriptive text to display before parameter help
|
|
389
|
-
* @param printParamterId - Print the ID of the parameter instead of the command line parameter names?
|
|
390
|
-
*/
|
|
391
290
|
function printHelp(parameters, aboutText, printParamterId = false) {
|
|
392
291
|
const lines = [];
|
|
393
292
|
if (aboutText) {
|
|
@@ -410,9 +309,6 @@ function printHelp(parameters, aboutText, printParamterId = false) {
|
|
|
410
309
|
}
|
|
411
310
|
for (const descriptor of group.parameters) {
|
|
412
311
|
if (descriptor.internal) {
|
|
413
|
-
// Do not print internal parameters.
|
|
414
|
-
// Note that getting them via the command line would still not be a problem;
|
|
415
|
-
// typically, it would only define a new default value.
|
|
416
312
|
continue;
|
|
417
313
|
}
|
|
418
314
|
function getArgumentPlaceholder() {
|
|
@@ -451,10 +347,6 @@ function printHelp(parameters, aboutText, printParamterId = false) {
|
|
|
451
347
|
lines.push('');
|
|
452
348
|
console.log(lines.join('\n'));
|
|
453
349
|
}
|
|
454
|
-
/**
|
|
455
|
-
* Add breaks after words (replace space by newline) in case a sentence gets longer
|
|
456
|
-
* on one line than the specified `maxLineLength`.
|
|
457
|
-
*/
|
|
458
350
|
function restrictLineLengthTo(text, maxLineLength) {
|
|
459
351
|
text = text.replace(/\n/g, ' ');
|
|
460
352
|
const words = text.split(' ');
|
|
@@ -486,7 +378,6 @@ function groupAndSortParameterDescriptors(parameters) {
|
|
|
486
378
|
const parametersByGroup = new Map();
|
|
487
379
|
const groupOrders = new Map();
|
|
488
380
|
const groupHints = new Map();
|
|
489
|
-
// Group parameters and collect group orders
|
|
490
381
|
for (const parameter of parameters.getParameters()) {
|
|
491
382
|
const groupTitle = (_a = parameter.group) === null || _a === void 0 ? void 0 : _a.title;
|
|
492
383
|
if (parameter.group) {
|
|
@@ -499,7 +390,6 @@ function groupAndSortParameterDescriptors(parameters) {
|
|
|
499
390
|
groupParameters.push(parameter);
|
|
500
391
|
parametersByGroup.set(groupTitle, groupParameters);
|
|
501
392
|
}
|
|
502
|
-
// Convert to array and sort by group order
|
|
503
393
|
return Array.from(parametersByGroup.entries())
|
|
504
394
|
.sort(([groupTitle1], [groupTitle2]) => {
|
|
505
395
|
var _a, _b;
|
|
@@ -513,9 +403,6 @@ function groupAndSortParameterDescriptors(parameters) {
|
|
|
513
403
|
parameters: parameters.sort((a, b) => a.longParameter.localeCompare(b.longParameter))
|
|
514
404
|
}));
|
|
515
405
|
}
|
|
516
|
-
/**
|
|
517
|
-
* Runs the config parameter checks for the given options.
|
|
518
|
-
*/
|
|
519
406
|
function checkArguments(configParameters, options, errorReceiver) {
|
|
520
407
|
let argumentsValid = true;
|
|
521
408
|
if (!errorReceiver) {
|
|
@@ -532,11 +419,7 @@ function checkArguments(configParameters, options, errorReceiver) {
|
|
|
532
419
|
}
|
|
533
420
|
return argumentsValid;
|
|
534
421
|
}
|
|
535
|
-
/**
|
|
536
|
-
* Parses the command-line arguments.
|
|
537
|
-
*/
|
|
538
422
|
function processCommandLine(parameters, appInfos, args, beforeCheckCallback) {
|
|
539
|
-
// Fall back to the NodeJS process's arguments if no arguments are given.
|
|
540
423
|
args = args !== null && args !== void 0 ? args : node_process_1.default.argv.slice(2);
|
|
541
424
|
const configParameters = parameters.clone();
|
|
542
425
|
configParameters.addParameter('-h', '--help', 'bool', {
|
|
@@ -565,9 +448,6 @@ function processCommandLine(parameters, appInfos, args, beforeCheckCallback) {
|
|
|
565
448
|
}
|
|
566
449
|
return options;
|
|
567
450
|
}
|
|
568
|
-
/**
|
|
569
|
-
* Creates a new configuration object by merging two configuration objects.
|
|
570
|
-
*/
|
|
571
451
|
function parameterUnion(parameters1, parameters2) {
|
|
572
452
|
const result = parameters1.clone();
|
|
573
453
|
result.addAllOf(parameters2);
|
package/lib/ConfigParser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigParser.js","sourceRoot":"","sources":["../src/ConfigParser.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ConfigParser.js","sourceRoot":"","sources":["../src/ConfigParser.ts"],"names":[],"mappings":";;;;;;AAiHA,gEAGC;AAQD,wFAGC;AAqLD,wCAgFC;AAyDD,0CAmCC;AASD,8BAsEC;AA0ED,wCAiBC;AAKD,gDAmCC;AAKD,wCAIC;AAprBD,gEAAmC;AACnC,6CAA6D;AAwChD,QAAA,gBAAgB,GAAmB;IAC/C,KAAK,EAAE,GAAG;IACV,KAAK,EAAE,aAAa;CACpB,CAAC;AA4CF,SAAS,qBAAqB,CAAC,mBAAwC;IACtE,IAAI,mBAAmB,CAAC,IAAI,KAAK,KAAK,IAAI,mBAAmB,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACjF,OAAO,CAAC,CAAC;IACV,CAAC;SAAM,IAAI,mBAAmB,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAChD,OAAO,CAAC,CAAC;IACV,CAAC;SAAM,IAAI,mBAAmB,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACpD,OAAO,MAAM,CAAC,iBAAiB,CAAC;IACjC,CAAC;SAAM,CAAC;QACP,MAAM,IAAI,0CAA6B,CAAC,+BAA+B,mBAAmB,CAAC,IAAI,oBAAoB,mBAAmB,CAAC,aAAa,IAAI,CAAC,CAAC;IAC3J,CAAC;AACF,CAAC;AAQD,SAAgB,0BAA0B,CAAC,aAAqB;IAC/D,MAAM,oBAAoB,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9D,OAAO,oBAAoB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;AAC3F,CAAC;AAQD,SAAgB,sCAAsC,CAAC,aAAqB;IAC3E,MAAM,oBAAoB,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC9D,OAAO,oBAAoB,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AAC9D,CAAC;AAMD,MAAa,uBAAuB;IAUnC;QACC,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,uBAAuB,GAAG,IAAI,GAAG,EAAE,CAAC;QACzC,IAAI,CAAC,oBAAoB,GAAG,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;IAC1B,CAAC;IAUM,YAAY,CAAC,cAAkC,EAAE,aAAqB,EAAE,IAAyB,EACnG,UAAsC,EAAE;;QAC5C,MAAM,WAAW,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAC;QAC9D,MAAM,uBAAuB,GAAG,sCAAsC,CAAC,aAAa,CAAC,CAAC;QACtF,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc;YACrF,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,EAAE;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,MAAA,OAAO,CAAC,QAAQ,mCAAI,KAAK;YACnC,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,uBAAuB,EAAE,CAAC,CAAC;IAC7B,CAAC;IAQM,gBAAgB,CAAC,KAA+D;QACtF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAKM,sBAAsB,CAAC,WAAmB;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACpD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,0CAA6B,CAAC,sBAAsB,WAAW,IAAI,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACrC,MAAM,IAAI,0CAA6B,CAAC,cAAc,WAAW,yCAAyC,CAAC,CAAC;QAC7G,CAAC;QAED,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,eAAwC,EAAE,EAAE;YACrE,MAAM,QAAQ,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;YAC9C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC5B,OAAO,4CAA4C,SAAS,CAAC,aAAa,KAAK;oBAC9E,4BAA4B,SAAS,CAAC,IAAI,EAAE,CAAC;YAC/C,CAAC;YACD,OAAO,SAAS,CAAC;QAClB,CAAC,CAAC,CAAC;IACJ,CAAC;IASM,iBAAiB,CAAC,WAAmB,EAAE,UAA+B;QAC5E,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAG7C,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YAC/B,MAAM,gBAAgB,GAAG,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC1F,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChE,MAAM,IAAI,0CAA6B,CAAC,oBAAoB,gBAAgB,eAAe,CAAC,CAAC;YAC9F,CAAC;YACD,MAAM,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;YAC1E,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,WAAW,EAAE,CAAC;gBACtE,MAAM,IAAI,0CAA6B,CAAC,oBAAoB,gBAAgB,qCAAqC,eAAe,IAAI,CAAC,CAAC;YACvI,CAAC;YACD,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QAC5E,CAAC;QAGD,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC;IAQM,eAAe,CAAC,WAAmB;QACzC,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QAC9C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACtE,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;gBACnC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;YAC/C,CAAC;QACF,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;IAOM,aAAa;QACnB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7C,CAAC;IAKM,iBAAiB;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC5B,CAAC;IAOM,uBAAuB;QAC7B,OAAO,IAAI,CAAC,oBAAoB,CAAC;IAClC,CAAC;IAKM,KAAK;QACX,MAAM,KAAK,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAC5C,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC;YAClD,KAAK,CAAC,iBAAiB,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC3D,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACzC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAKM,QAAQ,CAAC,KAA8B;QAC7C,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC;YAC/C,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QAC1D,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,iBAAiB,EAAE,EAAE,CAAC;YAC/C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;CACD;AArKD,0DAqKC;AAUD,SAAgB,cAAc,CAC7B,IAAc,EAAE,UAAmC;IAEnD,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,IAAI,eAAgD,CAAC;IACrD,IAAI,eAAe,GAAa,EAAE,CAAC;IACnC,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAE1B,SAAS,eAAe;QACvB,IAAI,CAAC,eAAe,EAAE,CAAC;YACtB,OAAO;QACR,CAAC;QAED,IAAI,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,iBAAiB,GAAG,CAAC,EAAE,CAAC;YAC3E,MAAM,IAAI,0CAA6B,CAAC,gCAAgC,eAAe,CAAC,aAAa,IAAI,CAAC,CAAC;QAC5G,CAAC;QAED,IAAI,eAAe,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACrC,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;YAC3C,eAAe,GAAG,SAAS,CAAC;QAC7B,CAAC;aAAM,IAAI,eAAe,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAChD,MAAM,UAAU,GAAG,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAGvD,MAAM,yBAAyB,GAAG,uBAAuB,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YACrF,IAAI,mBAAmB,CAAC,UAAU,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACpF,CAAC;iBAAM,CAAC;gBACP,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,yBAAyB,CAAC;YACjE,CAAC;QACF,CAAC;aAAM,CAAC;YACP,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,MAAM,IAAI,0CAA6B,CAAC,gCAAgC,eAAe,CAAC,aAAa,mCAAmC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;YACpK,CAAC;YACD,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,mBAAmB,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;QAChG,CAAC;QAED,eAAe,GAAG,SAAS,CAAC;QAC5B,eAAe,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,IAAI,EAAE,CAAC;QAC7B,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,eAAe,EAAE,CAAC;YAElB,MAAM,WAAW,GAAG,0BAA0B,CAAC,QAAQ,CAAC,CAAC;YACzD,eAAe,GAAG,UAAU,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;YAC1D,IAAI,CAAC,eAAe,EAAE,CAAC;gBACtB,MAAM,IAAI,0CAA6B,CAAC,oCAAoC,QAAQ,EAAE,CAAC,CAAC;YACzF,CAAC;YAED,iBAAiB,GAAG,qBAAqB,CAAC,eAAe,CAAC,CAAC;QAC5D,CAAC;aAAM,CAAC;YACP,IAAI,CAAC,eAAe,EAAE,CAAC;gBACtB,MAAM,IAAI,0CAA6B,CAAC,yDAAyD,QAAQ,uFAAuF,CAAC,CAAC;YACnM,CAAC;YACD,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,iBAAiB,EAAE,CAAC;QACrB,CAAC;QAED,IAAI,iBAAiB,KAAK,CAAC,EAAE,CAAC;YAC7B,eAAe,EAAE,CAAC;QACnB,CAAC;IACF,CAAC;IAED,eAAe,EAAE,CAAA;IAIjB,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,aAAa,EAAE,EAAE,CAAC;QACpD,IAAI,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,SAAS,EAAE,CAAC;YACjD,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAClD,MAAM,gBAAgB,GAAG,sBAAO,CAAC,GAAG,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;YACxE,IAAI,gBAAgB,IAAI,CAAC,SAAS,CAAC,kCAAkC,EAAE,CAAC;gBACvE,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,mBAAmB,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;YAClF,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,MAA8B,CAAC;AACvC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IAClC,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACnB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC/C,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,CAAC;SAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAyB;IACzD,IAAI,CAAC,KAAK,EAAE,CAAC;QACZ,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa,EAAE,mBAAwC;IACnF,IAAI,mBAAmB,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACxC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,0CAA6B,CAAC,gCAAgC,mBAAmB,CAAC,aAAa,gCAAgC,KAAK,IAAI,CAAC,CAAC;QACrJ,CAAC;QACD,OAAO,WAAW,CAAC;IACpB,CAAC;SAAM,IAAI,mBAAmB,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACvC,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC;QACb,CAAC;aAAM,IAAI,UAAU,KAAK,OAAO,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;YACzD,OAAO,KAAK,CAAC;QACd,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,0CAA6B,CAAC,gCAAgC,mBAAmB,CAAC,aAAa,+BAA+B,KAAK,IAAI,CAAC,CAAC;QACpJ,CAAC;IACF,CAAC;SAAM,IAAI,mBAAmB,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClD,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;SAAM,IAAI,mBAAmB,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACpD,OAAO,uBAAuB,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;SAAM,CAAC;QACP,MAAM,IAAI,0CAA6B,CAAC,+BAA+B,mBAAmB,CAAC,IAAI,oBAAoB,mBAAmB,CAAC,aAAa,IAAI,CAAC,CAAC;IAC3J,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAe;IAC3C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC;AAChF,CAAC;AAUD,SAAgB,eAAe,CAAC,WAAmB,EAAE,UAAmC;IACvF,MAAM,OAAO,GAAyD,EAAE,CAAC;IACzE,MAAM,gBAAgB,GAAa,EAAE,CAAC;IAEtC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAChC,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7D,SAAS;QACV,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,uBAAuB,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnF,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACnC,SAAS;QACV,CAAC;QAED,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,0BAA0B,CAAC,GAAG,CAAC,CAAC;QACpD,MAAM,mBAAmB,GAAG,UAAU,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACpE,IAAI,mBAAmB,EAAE,CAAC;YACzB,IAAI,mBAAmB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,mBAAmB,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC1F,MAAM,YAAY,GAAG,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;gBACrE,IAAI,mBAAmB,CAAC,YAAY,CAAC,EAAE,CAAC;oBACvC,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAClE,CAAC;qBAAM,CAAC;oBACP,MAAM,IAAI,0CAA6B,CAAC,gCAAgC,mBAAmB,CAAC,aAAa,uCAAuC,KAAK,IAAI,CAAC,CAAC;gBAC5J,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,OAAO,CAAC,WAAW,CAAC,GAAG,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAAC;YACxE,CAAC;QACF,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,0CAA6B,CAAC,oCAAoC,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACF,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;AACtC,CAAC;AASD,SAAgB,SAAS,CAAC,UAAmC,EAAE,SAAkB,EAAE,eAAe,GAAG,KAAK;IACzG,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,SAAS,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtB,CAAC;IAED,MAAM,OAAO,GAAG,gCAAgC,CAAC,UAAU,CAAC,CAAC;IAE7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACtB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;YACtD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACf,CAAC;QAED,KAAK,MAAM,UAAU,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YAC3C,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAIzB,SAAS;YACV,CAAC;YAED,SAAS,sBAAsB;gBAC9B,MAAM,kBAAkB,GAAG,UAAU,CAAC,uBAAuB,CAAC;gBAC9D,IAAI,UAAU,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAChC,OAAO,EAAE,CAAC;gBACX,CAAC;qBAAM,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC3C,OAAO,IAAI,kBAAkB,SAAS,kBAAkB,EAAE,CAAA;gBAC3D,CAAC;qBAAM,CAAC;oBACP,OAAO,IAAI,kBAAkB,EAAE,CAAC;gBACjC,CAAC;YACF,CAAC;YAED,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,IAAI,eAAe,EAAE,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,cAAc,UAAU,CAAC,WAAW,MAAM,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACP,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;oBAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,cAAc,GAAG,sBAAsB,EAAE,EAAE,CAAC,CAAC;gBACzE,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,aAAa,GAAG,sBAAsB,EAAE,EAAE,CAAC,CAAC;YACxE,CAAC;YAED,MAAM,IAAI,GAAG,qBAAqB,CAAC,oBAAoB,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YAC9E,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;YAEvF,KAAK,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACtC,IAAI,IAAI,EAAE,CAAC;gBACV,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;YACzB,CAAC;YACD,IAAI,YAAY,EAAE,CAAC;gBAClB,KAAK,CAAC,IAAI,CAAC,KAAK,YAAY,EAAE,CAAC,CAAC;YACjC,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/B,CAAC;AAMD,SAAS,oBAAoB,CAAC,IAAY,EAAE,aAAqB;IAChE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,aAAa,EAAE,CAAC;YAC1D,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACxB,WAAW,GAAG,EAAE,CAAC;QAClB,CAAC;QACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,WAAW,IAAI,GAAG,CAAC;QACpB,CAAC;QACD,WAAW,IAAI,IAAI,CAAC;IACrB,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAwB;IACtD,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACpC,CAAC;AAID,SAAS,gCAAgC,CAAC,UAAmC;;IAC5E,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAA6C,CAAC;IAC/E,MAAM,WAAW,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC1D,MAAM,UAAU,GAAG,IAAI,GAAG,EAA8B,CAAC;IAGzD,KAAK,MAAM,SAAS,IAAI,UAAU,CAAC,aAAa,EAAE,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAA,SAAS,CAAC,KAAK,0CAAE,KAAK,CAAC;QAC1C,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACrB,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,MAAA,SAAS,CAAC,KAAK,0CAAE,KAAK,EAAE,CAAC;YAC5B,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,MAAA,SAAS,CAAC,KAAK,0CAAE,KAAK,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,eAAe,GAAG,iBAAiB,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAChE,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChC,iBAAiB,CAAC,GAAG,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IACpD,CAAC;IAGD,OAAO,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;SAC5C,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE;;QACtC,MAAM,MAAM,GAAG,MAAA,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,mCAAI,MAAM,CAAC,SAAS,CAAC;QAChE,MAAM,MAAM,GAAG,MAAA,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,mCAAI,MAAM,CAAC,SAAS,CAAC;QAChE,OAAO,MAAM,GAAG,MAAM,CAAC;IACxB,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QACnC,UAAU;QACV,SAAS,EAAE,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;QACrC,UAAU,EAAE,UAAU,CAAC,IAAI,CAC1B,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;KAC1D,CAAC,CAAC,CAAC;AACN,CAAC;AAKD,SAAgB,cAAc,CAAC,gBAAyC,EAAE,OAAgB,EAChF,aAAuC;IAChD,IAAI,cAAc,GAAG,IAAI,CAAC;IAC1B,IAAI,CAAC,aAAa,EAAE,CAAC;QACpB,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE;YACjC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,CAAC;IACH,CAAC;IAED,KAAK,MAAM,aAAa,IAAI,gBAAgB,CAAC,iBAAiB,EAAE,EAAE,CAAC;QAClE,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;QAC1C,IAAI,UAAU,EAAE,CAAC;YAChB,aAAa,CAAC,yBAAyB,GAAG,UAAU,CAAC,CAAC;YACtD,cAAc,GAAG,KAAK,CAAC;QACxB,CAAC;IACF,CAAC;IACD,OAAO,cAAc,CAAC;AACvB,CAAC;AAKD,SAAgB,kBAAkB,CAAI,UAAmC,EAAE,QAAkB,EAAE,IAAe,EACnG,mBAA0C;IAEpD,IAAI,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,sBAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAErC,MAAM,gBAAgB,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;IAC5C,gBAAgB,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE;QACrD,IAAI,EAAE,kCAAkC;QACxC,KAAK,EAAE,wBAAgB,EAAE,kCAAkC,EAAE,IAAI;KACjE,CAAC,CAAC;IACH,gBAAgB,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE;QACxD,IAAI,EAAE,mCAAmC;QACzC,KAAK,EAAE,wBAAgB,EAAE,kCAAkC,EAAE,IAAI;KACjE,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,EAAE,gBAAgB,CAA0B,CAAC;IAChF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,sBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,SAAS,CAAC,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC5C,sBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,IAAI,mBAAmB,EAAE,CAAC;QACzB,mBAAmB,CAAC,OAAY,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,OAAO,CAAC,EAAE,CAAC;QAChD,OAAO,CAAC,KAAK,CAAC,+GAA+G,CAAC,CAAC;QAC/H,sBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,OAAY,CAAC;AACrB,CAAC;AAKD,SAAgB,cAAc,CAAC,WAAoC,EAAE,WAAoC;IACxG,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,EAAE,CAAC;IACnC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC;AACf,CAAC"}
|
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
import { ConfigurationParameters, ConfigValueType, Options } from './ConfigParser';
|
|
2
|
-
/**
|
|
3
|
-
* Configuration with a possibility to overwrite configuration values for this app run,
|
|
4
|
-
* delegating to the base configuration if no overwrite was performed.
|
|
5
|
-
* For type-safe access, use `makeConfigProxy` to create a proxy object.
|
|
6
|
-
*/
|
|
7
2
|
export declare class ConfigurationWithOverwrites<BaseConfigType extends Options> {
|
|
8
3
|
private readonly baseConfiguration;
|
|
9
4
|
private readonly redefinableParameters;
|
|
@@ -11,32 +6,14 @@ export declare class ConfigurationWithOverwrites<BaseConfigType extends Options>
|
|
|
11
6
|
private overwrites;
|
|
12
7
|
private hash?;
|
|
13
8
|
constructor(allParameters: ConfigurationParameters, redefinableParameters: ConfigurationParameters, baseConfiguration: Record<string, ConfigValueType>, overwrites?: Record<string, ConfigValueType>);
|
|
14
|
-
/**
|
|
15
|
-
* Retrieves the value of a configuration parameter based on the provided parameter ID.
|
|
16
|
-
*/
|
|
17
9
|
get(parameterId: string): ConfigValueType;
|
|
18
|
-
/**
|
|
19
|
-
* Sets the specified parameter with a given value in the `overwrites` map.
|
|
20
|
-
*/
|
|
21
10
|
set(parameterId: string, value: ConfigValueType): void;
|
|
22
|
-
/**
|
|
23
|
-
* Updates or removes a configuration-overwrite for the given parameter.
|
|
24
|
-
*/
|
|
25
11
|
overwriteConfig(parameter: string, value: ConfigValueType | undefined): void;
|
|
26
12
|
private castConfigArgument;
|
|
27
13
|
private assertParameterExists;
|
|
28
14
|
private getParameter;
|
|
29
|
-
/**
|
|
30
|
-
* Computes a hash for the given (possibly overwritten) configuration.
|
|
31
|
-
*/
|
|
32
15
|
getHash(): string;
|
|
33
|
-
/**
|
|
34
|
-
* Copies the given configuration along with the overrides.
|
|
35
|
-
*/
|
|
36
16
|
copy(): ConfigurationWithOverwrites<BaseConfigType>;
|
|
37
17
|
}
|
|
38
|
-
/**
|
|
39
|
-
* Creates a proxy object to retrieve and set config options via the attributes in the `BaseConfigType` interface.
|
|
40
|
-
*/
|
|
41
18
|
export declare function makeConfigProxy<BaseConfigType extends Options>(configuration: ConfigurationWithOverwrites<BaseConfigType>): BaseConfigType;
|
|
42
19
|
//# sourceMappingURL=ConfigWithOverwrites.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigWithOverwrites.d.ts","sourceRoot":"","sources":["../src/ConfigWithOverwrites.ts"],"names":[],"mappings":"AACA,OAAO,EACN,uBAAuB,EACvB,eAAe,EACf,OAAO,EAGP,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"ConfigWithOverwrites.d.ts","sourceRoot":"","sources":["../src/ConfigWithOverwrites.ts"],"names":[],"mappings":"AACA,OAAO,EACN,uBAAuB,EACvB,eAAe,EACf,OAAO,EAGP,MAAM,gBAAgB,CAAC;AAQxB,qBAAa,2BAA2B,CAAC,cAAc,SAAS,OAAO;IAEtE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkC;IAEpE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA0B;IAEhE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA0B;IAExD,OAAO,CAAC,UAAU,CAAkC;IAEpD,OAAO,CAAC,IAAI,CAAC,CAAS;gBAEV,aAAa,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,uBAAuB,EAC/F,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC;IAW5F,GAAG,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe;IAQzC,GAAG,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,IAAI;IAYtD,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI;IAWnF,OAAO,CAAC,kBAAkB;IAyC1B,OAAO,CAAC,qBAAqB;IAM7B,OAAO,CAAC,YAAY;IAWb,OAAO,IAAI,MAAM;IAoBjB,IAAI,IAAI,2BAA2B,CAAC,cAAc,CAAC;CAM1D;AAKD,wBAAgB,eAAe,CAAC,cAAc,SAAS,OAAO,EAC7D,aAAa,EAAE,2BAA2B,CAAC,cAAc,CAAC,GAAG,cAAc,CAU3E"}
|
|
@@ -5,11 +5,6 @@ exports.makeConfigProxy = makeConfigProxy;
|
|
|
5
5
|
const Contract_1 = require("./Contract");
|
|
6
6
|
const ConfigParser_1 = require("./ConfigParser");
|
|
7
7
|
const node_crypto_1 = require("node:crypto");
|
|
8
|
-
/**
|
|
9
|
-
* Configuration with a possibility to overwrite configuration values for this app run,
|
|
10
|
-
* delegating to the base configuration if no overwrite was performed.
|
|
11
|
-
* For type-safe access, use `makeConfigProxy` to create a proxy object.
|
|
12
|
-
*/
|
|
13
8
|
class ConfigurationWithOverwrites {
|
|
14
9
|
constructor(allParameters, redefinableParameters, baseConfiguration, overwrites) {
|
|
15
10
|
this.baseConfiguration = Contract_1.Contract.requireDefined(baseConfiguration);
|
|
@@ -18,17 +13,11 @@ class ConfigurationWithOverwrites {
|
|
|
18
13
|
this.overwrites = overwrites !== null && overwrites !== void 0 ? overwrites : {};
|
|
19
14
|
this.hash = undefined;
|
|
20
15
|
}
|
|
21
|
-
/**
|
|
22
|
-
* Retrieves the value of a configuration parameter based on the provided parameter ID.
|
|
23
|
-
*/
|
|
24
16
|
get(parameterId) {
|
|
25
17
|
var _a;
|
|
26
18
|
this.assertParameterExists(parameterId);
|
|
27
19
|
return (_a = this.overwrites[parameterId]) !== null && _a !== void 0 ? _a : this.baseConfiguration[parameterId];
|
|
28
20
|
}
|
|
29
|
-
/**
|
|
30
|
-
* Sets the specified parameter with a given value in the `overwrites` map.
|
|
31
|
-
*/
|
|
32
21
|
set(parameterId, value) {
|
|
33
22
|
if (this.redefinableParameters.lookupParameter(parameterId) === undefined) {
|
|
34
23
|
throw new Error(`Unknown configuration parameter: ${parameterId}`);
|
|
@@ -36,9 +25,6 @@ class ConfigurationWithOverwrites {
|
|
|
36
25
|
this.overwriteConfig(parameterId, value);
|
|
37
26
|
this.hash = undefined;
|
|
38
27
|
}
|
|
39
|
-
/**
|
|
40
|
-
* Updates or removes a configuration-overwrite for the given parameter.
|
|
41
|
-
*/
|
|
42
28
|
overwriteConfig(parameter, value) {
|
|
43
29
|
const parameterId = (0, ConfigParser_1.parameterNameToParameterId)(parameter);
|
|
44
30
|
this.assertParameterExists(parameterId);
|
|
@@ -86,7 +72,6 @@ class ConfigurationWithOverwrites {
|
|
|
86
72
|
}
|
|
87
73
|
}
|
|
88
74
|
else {
|
|
89
|
-
// string type
|
|
90
75
|
return String(value);
|
|
91
76
|
}
|
|
92
77
|
throw new Error(`Cannot cast value of type ${typeof value} to ${type}`);
|
|
@@ -103,9 +88,6 @@ class ConfigurationWithOverwrites {
|
|
|
103
88
|
}
|
|
104
89
|
return parameter;
|
|
105
90
|
}
|
|
106
|
-
/**
|
|
107
|
-
* Computes a hash for the given (possibly overwritten) configuration.
|
|
108
|
-
*/
|
|
109
91
|
getHash() {
|
|
110
92
|
if (this.hash === undefined) {
|
|
111
93
|
const hash = (0, node_crypto_1.createHash)('sha256');
|
|
@@ -121,18 +103,12 @@ class ConfigurationWithOverwrites {
|
|
|
121
103
|
}
|
|
122
104
|
return this.hash;
|
|
123
105
|
}
|
|
124
|
-
/**
|
|
125
|
-
* Copies the given configuration along with the overrides.
|
|
126
|
-
*/
|
|
127
106
|
copy() {
|
|
128
107
|
const overwritesCopy = JSON.parse(JSON.stringify(this.overwrites));
|
|
129
108
|
return new ConfigurationWithOverwrites(this.allParameters, this.redefinableParameters, this.baseConfiguration, overwritesCopy);
|
|
130
109
|
}
|
|
131
110
|
}
|
|
132
111
|
exports.ConfigurationWithOverwrites = ConfigurationWithOverwrites;
|
|
133
|
-
/**
|
|
134
|
-
* Creates a proxy object to retrieve and set config options via the attributes in the `BaseConfigType` interface.
|
|
135
|
-
*/
|
|
136
112
|
function makeConfigProxy(configuration) {
|
|
137
113
|
return new Proxy(configuration, {
|
|
138
114
|
get(_, property) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigWithOverwrites.js","sourceRoot":"","sources":["../src/ConfigWithOverwrites.ts"],"names":[],"mappings":";;;AA+JA,0CAWC;AA1KD,yCAAsC;AACtC,iDAMwB;AACxB,6CAAyC;
|
|
1
|
+
{"version":3,"file":"ConfigWithOverwrites.js","sourceRoot":"","sources":["../src/ConfigWithOverwrites.ts"],"names":[],"mappings":"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"}
|
package/lib/Contract.d.ts
CHANGED
|
@@ -1,39 +1,8 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Nullable type.
|
|
3
|
-
*/
|
|
4
1
|
export type Nullable<Type> = Type | null;
|
|
5
|
-
/**
|
|
6
|
-
* Methods to express and check code contracts.
|
|
7
|
-
*/
|
|
8
2
|
export declare class Contract {
|
|
9
|
-
/**
|
|
10
|
-
* The given predicate `condition` has to be satisfied.
|
|
11
|
-
*
|
|
12
|
-
* @param condition Condition predicate (boolean value)
|
|
13
|
-
* @param message Message describing the condition.
|
|
14
|
-
*/
|
|
15
3
|
static require(condition: boolean, message?: string): void;
|
|
16
|
-
/**
|
|
17
|
-
* Require that the given argument `obj` is defined.
|
|
18
|
-
*
|
|
19
|
-
* @param obj The object that has to be defined.
|
|
20
|
-
* @param message The message describing this requirement.
|
|
21
|
-
*/
|
|
22
4
|
static requireDefined<E>(obj: Nullable<E>, message?: string): E;
|
|
23
|
-
/**
|
|
24
|
-
* Require that the given string is not empty.
|
|
25
|
-
*
|
|
26
|
-
* @param text The string to check.
|
|
27
|
-
* @param message The message that describes the requirement.
|
|
28
|
-
*/
|
|
29
5
|
static requireNonEmpty(text: string, message?: string): string;
|
|
30
|
-
/**
|
|
31
|
-
* Require that the string adheres to a particular pattern.
|
|
32
|
-
*
|
|
33
|
-
* @param text The string to check.
|
|
34
|
-
* @param regexp The regular expression to satisfy.
|
|
35
|
-
* @param message The message describing the requirement.
|
|
36
|
-
*/
|
|
37
6
|
static requireStringPattern(text: string, regexp: string | RegExp, message?: string): string;
|
|
38
7
|
}
|
|
39
8
|
//# sourceMappingURL=Contract.d.ts.map
|
package/lib/Contract.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Contract.d.ts","sourceRoot":"","sources":["../src/Contract.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Contract.d.ts","sourceRoot":"","sources":["../src/Contract.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,QAAQ,CAAC,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC;AAKzC,qBAAa,QAAQ;WAON,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI;WAYnD,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,CAAC;WA2BxD,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;WAgBvD,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;CAUnG"}
|
package/lib/Contract.js
CHANGED
|
@@ -2,27 +2,12 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Contract = void 0;
|
|
4
4
|
const Exceptions_1 = require("./Exceptions");
|
|
5
|
-
/**
|
|
6
|
-
* Methods to express and check code contracts.
|
|
7
|
-
*/
|
|
8
5
|
class Contract {
|
|
9
|
-
/**
|
|
10
|
-
* The given predicate `condition` has to be satisfied.
|
|
11
|
-
*
|
|
12
|
-
* @param condition Condition predicate (boolean value)
|
|
13
|
-
* @param message Message describing the condition.
|
|
14
|
-
*/
|
|
15
6
|
static require(condition, message) {
|
|
16
7
|
if (!condition) {
|
|
17
8
|
throw new Exceptions_1.IllegalArgumentException(message);
|
|
18
9
|
}
|
|
19
10
|
}
|
|
20
|
-
/**
|
|
21
|
-
* Require that the given argument `obj` is defined.
|
|
22
|
-
*
|
|
23
|
-
* @param obj The object that has to be defined.
|
|
24
|
-
* @param message The message describing this requirement.
|
|
25
|
-
*/
|
|
26
11
|
static requireDefined(obj, message) {
|
|
27
12
|
if (obj) {
|
|
28
13
|
return obj;
|
|
@@ -31,7 +16,6 @@ class Contract {
|
|
|
31
16
|
return obj;
|
|
32
17
|
}
|
|
33
18
|
if (typeof obj === 'string' || obj instanceof String) {
|
|
34
|
-
// Deal with the case `obj === ""`
|
|
35
19
|
return obj;
|
|
36
20
|
}
|
|
37
21
|
if (message) {
|
|
@@ -41,12 +25,6 @@ class Contract {
|
|
|
41
25
|
throw new Exceptions_1.IllegalArgumentException('Reference must be defined.');
|
|
42
26
|
}
|
|
43
27
|
}
|
|
44
|
-
/**
|
|
45
|
-
* Require that the given string is not empty.
|
|
46
|
-
*
|
|
47
|
-
* @param text The string to check.
|
|
48
|
-
* @param message The message that describes the requirement.
|
|
49
|
-
*/
|
|
50
28
|
static requireNonEmpty(text, message) {
|
|
51
29
|
this.requireDefined(text);
|
|
52
30
|
if (text.length === 0) {
|
|
@@ -54,13 +32,6 @@ class Contract {
|
|
|
54
32
|
}
|
|
55
33
|
return text;
|
|
56
34
|
}
|
|
57
|
-
/**
|
|
58
|
-
* Require that the string adheres to a particular pattern.
|
|
59
|
-
*
|
|
60
|
-
* @param text The string to check.
|
|
61
|
-
* @param regexp The regular expression to satisfy.
|
|
62
|
-
* @param message The message describing the requirement.
|
|
63
|
-
*/
|
|
64
35
|
static requireStringPattern(text, regexp, message) {
|
|
65
36
|
this.requireDefined(text);
|
|
66
37
|
this.requireDefined(regexp);
|
package/lib/Contract.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Contract.js","sourceRoot":"","sources":["../src/Contract.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;
|
|
1
|
+
{"version":3,"file":"Contract.js","sourceRoot":"","sources":["../src/Contract.ts"],"names":[],"mappings":";;;AAAA,6CAAwD;AAUxD,MAAa,QAAQ;IAOb,MAAM,CAAC,OAAO,CAAC,SAAkB,EAAE,OAAgB;QACzD,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,MAAM,IAAI,qCAAwB,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;IACF,CAAC;IAQM,MAAM,CAAC,cAAc,CAAI,GAAgB,EAAE,OAAgB;QACjE,IAAI,GAAG,EAAE,CAAC;YACT,OAAO,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,OAAO,GAAG,KAAK,SAAS,EAAE,CAAC;YACzD,OAAO,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,YAAY,MAAM,EAAE,CAAC;YAEtD,OAAO,GAAG,CAAC;QACZ,CAAC;QAED,IAAI,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,qCAAwB,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACP,MAAM,IAAI,qCAAwB,CAAC,4BAA4B,CAAC,CAAC;QAClE,CAAC;IACF,CAAC;IAQM,MAAM,CAAC,eAAe,CAAC,IAAY,EAAE,OAAgB;QAC3D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,qCAAwB,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IASM,MAAM,CAAC,oBAAoB,CAAC,IAAY,EAAE,MAAuB,EAAE,OAAgB;QACzF,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAE5B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,qCAAwB,CAAC,OAAO,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;CACD;AAxED,4BAwEC"}
|
package/lib/Exceptions.d.ts
CHANGED
|
@@ -1,27 +1,12 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Excepting signaling that there is functionality that is supposed
|
|
3
|
-
* to be implemented in case the exception is thrown.
|
|
4
|
-
*
|
|
5
|
-
* This is helpful for writing prototypes and not yet handling all possible cases.
|
|
6
|
-
*/
|
|
7
1
|
export declare class ImplementMeException extends Error {
|
|
8
2
|
private readonly _implementMeFor?;
|
|
9
3
|
constructor(implementMeFor?: string);
|
|
10
4
|
get message(): string;
|
|
11
5
|
}
|
|
12
|
-
/**
|
|
13
|
-
* Exception signaling that the application is in an invalid state.
|
|
14
|
-
*/
|
|
15
6
|
export declare class IllegalStateException extends Error {
|
|
16
7
|
}
|
|
17
|
-
/**
|
|
18
|
-
* Exception signaling that an invalid argument has been passed for a parameter.
|
|
19
|
-
*/
|
|
20
8
|
export declare class IllegalArgumentException extends Error {
|
|
21
9
|
}
|
|
22
|
-
/**
|
|
23
|
-
* Exception signaling that a component is mis-configured.
|
|
24
|
-
*/
|
|
25
10
|
export declare class InvalidConfigurationException extends Error {
|
|
26
11
|
}
|
|
27
12
|
//# sourceMappingURL=Exceptions.d.ts.map
|
package/lib/Exceptions.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Exceptions.d.ts","sourceRoot":"","sources":["../src/Exceptions.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Exceptions.d.ts","sourceRoot":"","sources":["../src/Exceptions.ts"],"names":[],"mappings":"AAMA,qBAAa,oBAAqB,SAAQ,KAAK;IAC9C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAS;gBAE9B,cAAc,CAAC,EAAE,MAAM;IAKnC,IAAI,OAAO,IAAI,MAAM,CAMpB;CACD;AAKD,qBAAa,qBAAsB,SAAQ,KAAK;CAAG;AAKnD,qBAAa,wBAAyB,SAAQ,KAAK;CAAG;AAKtD,qBAAa,6BAA8B,SAAQ,KAAK;CAAG"}
|
package/lib/Exceptions.js
CHANGED
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.InvalidConfigurationException = exports.IllegalArgumentException = exports.IllegalStateException = exports.ImplementMeException = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* Excepting signaling that there is functionality that is supposed
|
|
6
|
-
* to be implemented in case the exception is thrown.
|
|
7
|
-
*
|
|
8
|
-
* This is helpful for writing prototypes and not yet handling all possible cases.
|
|
9
|
-
*/
|
|
10
4
|
class ImplementMeException extends Error {
|
|
11
5
|
constructor(implementMeFor) {
|
|
12
6
|
super('Implement me!');
|
|
@@ -22,21 +16,12 @@ class ImplementMeException extends Error {
|
|
|
22
16
|
}
|
|
23
17
|
}
|
|
24
18
|
exports.ImplementMeException = ImplementMeException;
|
|
25
|
-
/**
|
|
26
|
-
* Exception signaling that the application is in an invalid state.
|
|
27
|
-
*/
|
|
28
19
|
class IllegalStateException extends Error {
|
|
29
20
|
}
|
|
30
21
|
exports.IllegalStateException = IllegalStateException;
|
|
31
|
-
/**
|
|
32
|
-
* Exception signaling that an invalid argument has been passed for a parameter.
|
|
33
|
-
*/
|
|
34
22
|
class IllegalArgumentException extends Error {
|
|
35
23
|
}
|
|
36
24
|
exports.IllegalArgumentException = IllegalArgumentException;
|
|
37
|
-
/**
|
|
38
|
-
* Exception signaling that a component is mis-configured.
|
|
39
|
-
*/
|
|
40
25
|
class InvalidConfigurationException extends Error {
|
|
41
26
|
}
|
|
42
27
|
exports.InvalidConfigurationException = InvalidConfigurationException;
|
package/lib/Exceptions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Exceptions.js","sourceRoot":"","sources":["../src/Exceptions.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"Exceptions.js","sourceRoot":"","sources":["../src/Exceptions.ts"],"names":[],"mappings":";;;AAMA,MAAa,oBAAqB,SAAQ,KAAK;IAG9C,YAAY,cAAuB;QAClC,KAAK,CAAC,eAAe,CAAC,CAAC;QACvB,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;IACvC,CAAC;IAED,IAAI,OAAO;QACV,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1B,OAAO,qBAAqB,IAAI,CAAC,eAAe,EAAE,CAAC;QACpD,CAAC;aAAM,CAAC;YACP,OAAO,eAAe,CAAC;QACxB,CAAC;IACF,CAAC;CACD;AAfD,oDAeC;AAKD,MAAa,qBAAsB,SAAQ,KAAK;CAAG;AAAnD,sDAAmD;AAKnD,MAAa,wBAAyB,SAAQ,KAAK;CAAG;AAAtD,4DAAsD;AAKtD,MAAa,6BAA8B,SAAQ,KAAK;CAAG;AAA3D,sEAA2D"}
|
package/lib/Strings.d.ts
CHANGED
|
@@ -1,10 +1,2 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Remove the given prefix, if present, from the given string.
|
|
3
|
-
*
|
|
4
|
-
* @param prefix - The prefix to remove.
|
|
5
|
-
* @param removeFrom - The string to remove the prefix from.
|
|
6
|
-
*
|
|
7
|
-
* @returns a new string where the prefix is removed.
|
|
8
|
-
*/
|
|
9
1
|
export declare function removePrefix(prefix: string, removeFrom: string): string;
|
|
10
2
|
//# sourceMappingURL=Strings.d.ts.map
|
package/lib/Strings.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Strings.d.ts","sourceRoot":"","sources":["../src/Strings.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Strings.d.ts","sourceRoot":"","sources":["../src/Strings.ts"],"names":[],"mappings":"AAQA,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAKvE"}
|
package/lib/Strings.js
CHANGED
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.removePrefix = removePrefix;
|
|
4
|
-
/**
|
|
5
|
-
* Remove the given prefix, if present, from the given string.
|
|
6
|
-
*
|
|
7
|
-
* @param prefix - The prefix to remove.
|
|
8
|
-
* @param removeFrom - The string to remove the prefix from.
|
|
9
|
-
*
|
|
10
|
-
* @returns a new string where the prefix is removed.
|
|
11
|
-
*/
|
|
12
4
|
function removePrefix(prefix, removeFrom) {
|
|
13
5
|
if (removeFrom.startsWith(prefix)) {
|
|
14
6
|
return removeFrom.substring(prefix.length);
|
package/lib/Strings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Strings.js","sourceRoot":"","sources":["../src/Strings.ts"],"names":[],"mappings":";;AAQA,oCAKC;
|
|
1
|
+
{"version":3,"file":"Strings.js","sourceRoot":"","sources":["../src/Strings.ts"],"names":[],"mappings":";;AAQA,oCAKC;AALD,SAAgB,YAAY,CAAC,MAAc,EAAE,UAAkB;IAC9D,IAAI,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACnC,OAAO,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,UAAU,CAAC;AACnB,CAAC"}
|
package/lib/Validation.d.ts
CHANGED
package/lib/Validation.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validation.d.ts","sourceRoot":"","sources":["../src/Validation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Validation.d.ts","sourceRoot":"","sources":["../src/Validation.ts"],"names":[],"mappings":"AAGA,wBAAgB,iBAAiB,CAAC,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAoB3D"}
|
package/lib/Validation.js
CHANGED
|
@@ -1,22 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.isValidCommitInfo = isValidCommitInfo;
|
|
4
|
-
/**
|
|
5
|
-
* Checks if the given string describes a commit in a valid fashion.
|
|
6
|
-
*/
|
|
7
4
|
function isValidCommitInfo(commit) {
|
|
8
5
|
if (typeof commit === 'string') {
|
|
9
6
|
if (/^[a-zA-Z0-9_-]+:([0-9]+|HEAD|head)$/.test(commit)) {
|
|
10
|
-
// Branch name with a timestamp
|
|
11
7
|
return true;
|
|
12
8
|
}
|
|
13
9
|
if (/^[0-9]+$/.test(commit)) {
|
|
14
|
-
// Timestamps must always be combined with a branch name;
|
|
15
|
-
// Git hashes consisting of only digits are very very unlikely.
|
|
16
10
|
return false;
|
|
17
11
|
}
|
|
18
12
|
if (/^[a-zA-Z0-9]{7,40}$/.test(commit)) {
|
|
19
|
-
// A Git commit hash
|
|
20
13
|
return true;
|
|
21
14
|
}
|
|
22
15
|
}
|
package/lib/Validation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Validation.js","sourceRoot":"","sources":["../src/Validation.ts"],"names":[],"mappings":";;AAGA,8CAoBC;
|
|
1
|
+
{"version":3,"file":"Validation.js","sourceRoot":"","sources":["../src/Validation.ts"],"names":[],"mappings":";;AAGA,8CAoBC;AApBD,SAAgB,iBAAiB,CAAC,MAAgB;IACjD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,IAAI,qCAAqC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAExD,OAAO,IAAI,CAAC;QACb,CAAC;QAED,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAG7B,OAAO,KAAK,CAAC;QACd,CAAC;QAED,IAAI,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAExC,OAAO,IAAI,CAAA;QACZ,CAAC;IACF,CAAC;IAED,OAAO,KAAK,CAAC;AACd,CAAC"}
|
package/lib/index.d.ts
CHANGED
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -14,7 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
/** Exports of this Node package / module */
|
|
18
17
|
__exportStar(require("./Contract"), exports);
|
|
19
18
|
__exportStar(require("./Exceptions"), exports);
|
|
20
19
|
__exportStar(require("./Strings"), exports);
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,6CAA2B;AAC3B,+CAA6B;AAC7B,4CAA0B;AAC1B,iDAA+B;AAC/B,yDAAuC;AACvC,oDAAkC;AAClC,+CAA6B"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cqse/commons",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.7",
|
|
4
4
|
"description": "A collection of generic functionality for TypeScript projects.",
|
|
5
5
|
"author": "CQSE GmbH",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -16,6 +16,6 @@
|
|
|
16
16
|
"scripts": {
|
|
17
17
|
"build": "tsc",
|
|
18
18
|
"clean": "rimraf lib tsconfig.tsbuildinfo",
|
|
19
|
-
"test": "
|
|
19
|
+
"test": "node --import tsx --test test/**/*.test.ts"
|
|
20
20
|
}
|
|
21
21
|
}
|