@aws-cdk/toolkit-lib 0.1.2 → 0.1.3

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.
@@ -65,3 +65,12 @@ export interface Duration {
65
65
  */
66
66
  readonly duration: number;
67
67
  }
68
+ /**
69
+ * Generic payload of error IoMessages that pass on an instance of `Error`
70
+ */
71
+ export interface ErrorPayload {
72
+ /**
73
+ * The error that occurred
74
+ */
75
+ readonly error: Error;
76
+ }
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3VjY2Vzc2Z1bERlcGxveVN0YWNrUmVzdWx0IGFzIF9TdWNjZXNzZnVsRGVwbG95U3RhY2tSZXN1bHQgfSBmcm9tICcuLi9hcGkvYXdzLWNkayc7XG5cbi8qKlxuICogQXNzZW1ibHkgZGF0YSByZXR1cm5lZCBpbiB0aGUgcGF5bG9hZCBvZiBhbiBJTyBNZXNzYWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFzc2VtYmx5RGF0YSB7XG4gIC8qKlxuICAgKiBUaGUgcGF0aCB0byB0aGUgYXNzZW1ibHkgZGlyZWN0b3J5XG4gICAqL1xuICByZWFkb25seSBhc3NlbWJseURpcmVjdG9yeTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIHN0YWNrcyBhY3Rpb25lZCBvblxuICAgKi9cbiAgcmVhZG9ubHkgc3RhY2tzQ291bnQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHN0YWNrIElEc1xuICAgKi9cbiAgcmVhZG9ubHkgc3RhY2tJZHM6IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEEgc3VjY2Vzc2Z1bCBkZXBsb3kgc3RhY2sgcmVzdWx0LiBJbnRlbnRpb25hbGx5IGV4cG9zZWQgaW4gdG9vbGtpdC1saWIgc28gZG9jdW1lbnRhdGlvblxuICogY2FuIGJlIGdlbmVyYXRlZCBmcm9tIHRoaXMgaW50ZXJmYWNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1Y2Nlc3NmdWxEZXBsb3lTdGFja1Jlc3VsdCBleHRlbmRzIF9TdWNjZXNzZnVsRGVwbG95U3RhY2tSZXN1bHQge1xufVxuXG4vKipcbiAqIFN0YWNrIGRhdGEgcmV0dXJuZWQgaW4gdGhlIHBheWxvYWQgb2YgYW4gSU8gTWVzc2FnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFja0RhdGEge1xuICAvKipcbiAgICogVGhlIHN0YWNrIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHN0YWNrTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhY2sgSURcbiAgICovXG4gIHJlYWRvbmx5IGhpZXJhcmNoaWNhbElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGFjayB0ZW1wbGF0ZVxuICAgKi9cbiAgcmVhZG9ubHkgdGVtcGxhdGU6IGFueTtcblxuICAvKipcbiAgICogVGhlIHN0YWNrIHRlbXBsYXRlIGNvbnZlcnRlZCB0byBKU09OIGZvcm1hdFxuICAgKi9cbiAgcmVhZG9ubHkgc3RyaW5naWZpZWRKc29uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGFjayB0ZW1wbGF0ZSBjb252ZXJ0ZWQgdG8gWUFNTCBmb3JtYXRcbiAgICovXG4gIHJlYWRvbmx5IHN0cmluZ2lmaWVkWWFtbDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFN0YWNrIGRhdGEgcmV0dXJuZWQgaW4gdGhlIHBheWxvYWQgb2YgYW4gSU8gTWVzc2FnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFja0FuZEFzc2VtYmx5RGF0YSBleHRlbmRzIEFzc2VtYmx5RGF0YSB7XG4gIC8qKlxuICAgKiBTdGFjayBEYXRhXG4gICAqL1xuICByZWFkb25seSBzdGFjazogU3RhY2tEYXRhO1xufVxuXG4vKipcbiAqIER1cmF0aW9uIGluZm9ybWF0aW9uIHJldHVybmVkIGluIHRoZSBwYXlsb2FkIG9mIGFuIElPIE1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHVyYXRpb24ge1xuICAvKipcbiAgICogVGhlIGR1cmF0aW9uIG9mIHRoZSBhY3Rpb24uXG4gICAqL1xuICByZWFkb25seSBkdXJhdGlvbjogbnVtYmVyO1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ0eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU3VjY2Vzc2Z1bERlcGxveVN0YWNrUmVzdWx0IGFzIF9TdWNjZXNzZnVsRGVwbG95U3RhY2tSZXN1bHQgfSBmcm9tICcuLi9hcGkvYXdzLWNkayc7XG5cbi8qKlxuICogQXNzZW1ibHkgZGF0YSByZXR1cm5lZCBpbiB0aGUgcGF5bG9hZCBvZiBhbiBJTyBNZXNzYWdlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFzc2VtYmx5RGF0YSB7XG4gIC8qKlxuICAgKiBUaGUgcGF0aCB0byB0aGUgYXNzZW1ibHkgZGlyZWN0b3J5XG4gICAqL1xuICByZWFkb25seSBhc3NlbWJseURpcmVjdG9yeTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbnVtYmVyIG9mIHN0YWNrcyBhY3Rpb25lZCBvblxuICAgKi9cbiAgcmVhZG9ubHkgc3RhY2tzQ291bnQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHN0YWNrIElEc1xuICAgKi9cbiAgcmVhZG9ubHkgc3RhY2tJZHM6IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIEEgc3VjY2Vzc2Z1bCBkZXBsb3kgc3RhY2sgcmVzdWx0LiBJbnRlbnRpb25hbGx5IGV4cG9zZWQgaW4gdG9vbGtpdC1saWIgc28gZG9jdW1lbnRhdGlvblxuICogY2FuIGJlIGdlbmVyYXRlZCBmcm9tIHRoaXMgaW50ZXJmYWNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN1Y2Nlc3NmdWxEZXBsb3lTdGFja1Jlc3VsdCBleHRlbmRzIF9TdWNjZXNzZnVsRGVwbG95U3RhY2tSZXN1bHQge1xufVxuXG4vKipcbiAqIFN0YWNrIGRhdGEgcmV0dXJuZWQgaW4gdGhlIHBheWxvYWQgb2YgYW4gSU8gTWVzc2FnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFja0RhdGEge1xuICAvKipcbiAgICogVGhlIHN0YWNrIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHN0YWNrTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhY2sgSURcbiAgICovXG4gIHJlYWRvbmx5IGhpZXJhcmNoaWNhbElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGFjayB0ZW1wbGF0ZVxuICAgKi9cbiAgcmVhZG9ubHkgdGVtcGxhdGU6IGFueTtcblxuICAvKipcbiAgICogVGhlIHN0YWNrIHRlbXBsYXRlIGNvbnZlcnRlZCB0byBKU09OIGZvcm1hdFxuICAgKi9cbiAgcmVhZG9ubHkgc3RyaW5naWZpZWRKc29uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGFjayB0ZW1wbGF0ZSBjb252ZXJ0ZWQgdG8gWUFNTCBmb3JtYXRcbiAgICovXG4gIHJlYWRvbmx5IHN0cmluZ2lmaWVkWWFtbDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFN0YWNrIGRhdGEgcmV0dXJuZWQgaW4gdGhlIHBheWxvYWQgb2YgYW4gSU8gTWVzc2FnZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFja0FuZEFzc2VtYmx5RGF0YSBleHRlbmRzIEFzc2VtYmx5RGF0YSB7XG4gIC8qKlxuICAgKiBTdGFjayBEYXRhXG4gICAqL1xuICByZWFkb25seSBzdGFjazogU3RhY2tEYXRhO1xufVxuXG4vKipcbiAqIER1cmF0aW9uIGluZm9ybWF0aW9uIHJldHVybmVkIGluIHRoZSBwYXlsb2FkIG9mIGFuIElPIE1lc3NhZ2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRHVyYXRpb24ge1xuICAvKipcbiAgICogVGhlIGR1cmF0aW9uIG9mIHRoZSBhY3Rpb24uXG4gICAqL1xuICByZWFkb25seSBkdXJhdGlvbjogbnVtYmVyO1xufVxuXG4vKipcbiAqIEdlbmVyaWMgcGF5bG9hZCBvZiBlcnJvciBJb01lc3NhZ2VzIHRoYXQgcGFzcyBvbiBhbiBpbnN0YW5jZSBvZiBgRXJyb3JgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXJyb3JQYXlsb2FkIHtcbiAgLyoqXG4gICAqIFRoZSBlcnJvciB0aGF0IG9jY3VycmVkXG4gICAqL1xuICByZWFkb25seSBlcnJvcjogRXJyb3I7XG59XG4iXX0=
package/package.json CHANGED
@@ -34,6 +34,7 @@
34
34
  },
35
35
  "devDependencies": {
36
36
  "@aws-cdk/cdk-build-tools": "^0.0.0",
37
+ "@aws-cdk/tmp-toolkit-helpers": "^0.0.0",
37
38
  "@cdklabs/eslint-plugin": "^1.3.2",
38
39
  "@smithy/types": "^4.1.0",
39
40
  "@stylistic/eslint-plugin": "^3.1.0",
@@ -43,7 +44,7 @@
43
44
  "@types/split2": "^4.2.3",
44
45
  "@typescript-eslint/eslint-plugin": "^8",
45
46
  "@typescript-eslint/parser": "^8",
46
- "aws-cdk": "^2.1001.0",
47
+ "aws-cdk": "^2.1002.0",
47
48
  "aws-cdk-lib": "^2.180.0",
48
49
  "aws-sdk-client-mock": "^4.1.0",
49
50
  "commit-and-tag-version": "^12",
@@ -66,31 +67,31 @@
66
67
  "typescript": "5.6"
67
68
  },
68
69
  "dependencies": {
69
- "@aws-cdk/cloud-assembly-schema": "^40.5.0",
70
+ "@aws-cdk/cloud-assembly-schema": "^40.7.0",
70
71
  "@aws-cdk/cloudformation-diff": "^2.179.0",
71
72
  "@aws-cdk/cx-api": "^2.180.0",
72
73
  "@aws-cdk/region-info": "^2.180.0",
73
- "@aws-sdk/client-appsync": "3.741",
74
- "@aws-sdk/client-cloudcontrol": "3.741",
75
- "@aws-sdk/client-cloudformation": "3.741",
76
- "@aws-sdk/client-cloudwatch-logs": "3.741",
77
- "@aws-sdk/client-codebuild": "3.741",
78
- "@aws-sdk/client-ec2": "3.741",
79
- "@aws-sdk/client-ecr": "3.741",
80
- "@aws-sdk/client-ecs": "3.741",
81
- "@aws-sdk/client-elastic-load-balancing-v2": "3.741",
82
- "@aws-sdk/client-iam": "3.741",
83
- "@aws-sdk/client-kms": "3.741",
84
- "@aws-sdk/client-lambda": "3.741",
85
- "@aws-sdk/client-route-53": "3.741",
86
- "@aws-sdk/client-s3": "3.741",
87
- "@aws-sdk/client-secrets-manager": "3.741",
88
- "@aws-sdk/client-sfn": "3.741",
89
- "@aws-sdk/client-ssm": "3.741",
90
- "@aws-sdk/client-sts": "3.741",
91
- "@aws-sdk/credential-providers": "3.741",
92
- "@aws-sdk/ec2-metadata-service": "3.741",
93
- "@aws-sdk/lib-storage": "3.741",
74
+ "@aws-sdk/client-appsync": "^3",
75
+ "@aws-sdk/client-cloudcontrol": "^3",
76
+ "@aws-sdk/client-cloudformation": "^3",
77
+ "@aws-sdk/client-cloudwatch-logs": "^3",
78
+ "@aws-sdk/client-codebuild": "^3",
79
+ "@aws-sdk/client-ec2": "^3",
80
+ "@aws-sdk/client-ecr": "^3",
81
+ "@aws-sdk/client-ecs": "^3",
82
+ "@aws-sdk/client-elastic-load-balancing-v2": "^3",
83
+ "@aws-sdk/client-iam": "^3",
84
+ "@aws-sdk/client-kms": "^3",
85
+ "@aws-sdk/client-lambda": "^3",
86
+ "@aws-sdk/client-route-53": "^3",
87
+ "@aws-sdk/client-s3": "^3",
88
+ "@aws-sdk/client-secrets-manager": "^3",
89
+ "@aws-sdk/client-sfn": "^3",
90
+ "@aws-sdk/client-ssm": "^3",
91
+ "@aws-sdk/client-sts": "^3",
92
+ "@aws-sdk/credential-providers": "^3",
93
+ "@aws-sdk/ec2-metadata-service": "^3",
94
+ "@aws-sdk/lib-storage": "^3",
94
95
  "@jsii/check-node": "^1.108.0",
95
96
  "@smithy/middleware-endpoint": "^4.0.6",
96
97
  "@smithy/node-http-handler": "^4.0.3",
@@ -101,7 +102,7 @@
101
102
  "@smithy/util-waiter": "^4.0.2",
102
103
  "archiver": "^7.0.1",
103
104
  "camelcase": "^6",
104
- "cdk-assets": "^3.0.0-rc.145",
105
+ "cdk-assets": "^3.0.0",
105
106
  "cdk-from-cfn": "^0.191.0",
106
107
  "chalk": "^4",
107
108
  "chokidar": "^3",
@@ -135,7 +136,7 @@
135
136
  "publishConfig": {
136
137
  "access": "public"
137
138
  },
138
- "version": "0.1.2",
139
+ "version": "0.1.3",
139
140
  "types": "lib/index.d.ts",
140
141
  "exports": {
141
142
  ".": {
@@ -1,44 +0,0 @@
1
- /**
2
- * Represents a general toolkit error in the AWS CDK Toolkit.
3
- */
4
- export declare class ToolkitError extends Error {
5
- /**
6
- * Determines if a given error is an instance of ToolkitError.
7
- */
8
- static isToolkitError(x: any): x is ToolkitError;
9
- /**
10
- * Determines if a given error is an instance of AuthenticationError.
11
- */
12
- static isAuthenticationError(x: any): x is AuthenticationError;
13
- /**
14
- * Determines if a given error is an instance of AssemblyError.
15
- */
16
- static isAssemblyError(x: any): x is AssemblyError;
17
- /**
18
- * Determines if a given error is an instance of AssemblyError.
19
- */
20
- static isContextProviderError(x: any): x is ContextProviderError;
21
- /**
22
- * The type of the error, defaults to "toolkit".
23
- */
24
- readonly type: string;
25
- constructor(message: string, type?: string);
26
- }
27
- /**
28
- * Represents an authentication-specific error in the AWS CDK Toolkit.
29
- */
30
- export declare class AuthenticationError extends ToolkitError {
31
- constructor(message: string);
32
- }
33
- /**
34
- * Represents an authentication-specific error in the AWS CDK Toolkit.
35
- */
36
- export declare class AssemblyError extends ToolkitError {
37
- constructor(message: string);
38
- }
39
- /**
40
- * Represents an error originating from a Context Provider
41
- */
42
- export declare class ContextProviderError extends ToolkitError {
43
- constructor(message: string);
44
- }
package/lib/api/errors.js DELETED
@@ -1,82 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ContextProviderError = exports.AssemblyError = exports.AuthenticationError = exports.ToolkitError = void 0;
4
- const TOOLKIT_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit.ToolkitError');
5
- const AUTHENTICATION_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit.AuthenticationError');
6
- const ASSEMBLY_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit.AssemblyError');
7
- const CONTEXT_PROVIDER_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit.ContextProviderError');
8
- /**
9
- * Represents a general toolkit error in the AWS CDK Toolkit.
10
- */
11
- class ToolkitError extends Error {
12
- /**
13
- * Determines if a given error is an instance of ToolkitError.
14
- */
15
- static isToolkitError(x) {
16
- return x !== null && typeof (x) === 'object' && TOOLKIT_ERROR_SYMBOL in x;
17
- }
18
- /**
19
- * Determines if a given error is an instance of AuthenticationError.
20
- */
21
- static isAuthenticationError(x) {
22
- return this.isToolkitError(x) && AUTHENTICATION_ERROR_SYMBOL in x;
23
- }
24
- /**
25
- * Determines if a given error is an instance of AssemblyError.
26
- */
27
- static isAssemblyError(x) {
28
- return this.isToolkitError(x) && ASSEMBLY_ERROR_SYMBOL in x;
29
- }
30
- /**
31
- * Determines if a given error is an instance of AssemblyError.
32
- */
33
- static isContextProviderError(x) {
34
- return this.isToolkitError(x) && CONTEXT_PROVIDER_ERROR_SYMBOL in x;
35
- }
36
- /**
37
- * The type of the error, defaults to "toolkit".
38
- */
39
- type;
40
- constructor(message, type = 'toolkit') {
41
- super(message);
42
- Object.setPrototypeOf(this, ToolkitError.prototype);
43
- Object.defineProperty(this, TOOLKIT_ERROR_SYMBOL, { value: true });
44
- this.name = new.target.name;
45
- this.type = type;
46
- }
47
- }
48
- exports.ToolkitError = ToolkitError;
49
- /**
50
- * Represents an authentication-specific error in the AWS CDK Toolkit.
51
- */
52
- class AuthenticationError extends ToolkitError {
53
- constructor(message) {
54
- super(message, 'authentication');
55
- Object.setPrototypeOf(this, AuthenticationError.prototype);
56
- Object.defineProperty(this, AUTHENTICATION_ERROR_SYMBOL, { value: true });
57
- }
58
- }
59
- exports.AuthenticationError = AuthenticationError;
60
- /**
61
- * Represents an authentication-specific error in the AWS CDK Toolkit.
62
- */
63
- class AssemblyError extends ToolkitError {
64
- constructor(message) {
65
- super(message, 'assembly');
66
- Object.setPrototypeOf(this, AssemblyError.prototype);
67
- Object.defineProperty(this, ASSEMBLY_ERROR_SYMBOL, { value: true });
68
- }
69
- }
70
- exports.AssemblyError = AssemblyError;
71
- /**
72
- * Represents an error originating from a Context Provider
73
- */
74
- class ContextProviderError extends ToolkitError {
75
- constructor(message) {
76
- super(message, 'context-provider');
77
- Object.setPrototypeOf(this, ContextProviderError.prototype);
78
- Object.defineProperty(this, CONTEXT_PROVIDER_ERROR_SYMBOL, { value: true });
79
- }
80
- }
81
- exports.ContextProviderError = ContextProviderError;
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO0FBQ3pFLE1BQU0sMkJBQTJCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0FBQ3ZGLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0FBQzNFLE1BQU0sNkJBQTZCLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0FBRTFGOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsS0FBSztJQUNyQzs7T0FFRztJQUNJLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBTTtRQUNqQyxPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLFFBQVEsSUFBSSxvQkFBb0IsSUFBSSxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQU07UUFDeEMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLDJCQUEyQixJQUFJLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsZUFBZSxDQUFDLENBQU07UUFDbEMsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLHFCQUFxQixJQUFJLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBTTtRQUN6QyxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksNkJBQTZCLElBQUksQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRDs7T0FFRztJQUNhLElBQUksQ0FBUztJQUU3QixZQUFZLE9BQWUsRUFBRSxPQUFlLFNBQVM7UUFDbkQsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2YsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3BELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLG9CQUFvQixFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztRQUM1QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUF6Q0Qsb0NBeUNDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLG1CQUFvQixTQUFRLFlBQVk7SUFDbkQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUNqQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSwyQkFBMkIsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzVFLENBQUM7Q0FDRjtBQU5ELGtEQU1DO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGFBQWMsU0FBUSxZQUFZO0lBQzdDLFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNyRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7Q0FDRjtBQU5ELHNDQU1DO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLFlBQVk7SUFDcEQsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxPQUFPLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUNuQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxvQkFBb0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1RCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSw2QkFBNkIsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7Q0FDRjtBQU5ELG9EQU1DIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgVE9PTEtJVF9FUlJPUl9TWU1CT0wgPSBTeW1ib2wuZm9yKCdAYXdzLWNkay90b29sa2l0LlRvb2xraXRFcnJvcicpO1xuY29uc3QgQVVUSEVOVElDQVRJT05fRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC5BdXRoZW50aWNhdGlvbkVycm9yJyk7XG5jb25zdCBBU1NFTUJMWV9FUlJPUl9TWU1CT0wgPSBTeW1ib2wuZm9yKCdAYXdzLWNkay90b29sa2l0LkFzc2VtYmx5RXJyb3InKTtcbmNvbnN0IENPTlRFWFRfUFJPVklERVJfRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC5Db250ZXh0UHJvdmlkZXJFcnJvcicpO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBnZW5lcmFsIHRvb2xraXQgZXJyb3IgaW4gdGhlIEFXUyBDREsgVG9vbGtpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvb2xraXRFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgYSBnaXZlbiBlcnJvciBpcyBhbiBpbnN0YW5jZSBvZiBUb29sa2l0RXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzVG9vbGtpdEVycm9yKHg6IGFueSk6IHggaXMgVG9vbGtpdEVycm9yIHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YoeCkgPT09ICdvYmplY3QnICYmIFRPT0xLSVRfRVJST1JfU1lNQk9MIGluIHg7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBhIGdpdmVuIGVycm9yIGlzIGFuIGluc3RhbmNlIG9mIEF1dGhlbnRpY2F0aW9uRXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzQXV0aGVudGljYXRpb25FcnJvcih4OiBhbnkpOiB4IGlzIEF1dGhlbnRpY2F0aW9uRXJyb3Ige1xuICAgIHJldHVybiB0aGlzLmlzVG9vbGtpdEVycm9yKHgpICYmIEFVVEhFTlRJQ0FUSU9OX0VSUk9SX1NZTUJPTCBpbiB4O1xuICB9XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgYSBnaXZlbiBlcnJvciBpcyBhbiBpbnN0YW5jZSBvZiBBc3NlbWJseUVycm9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBpc0Fzc2VtYmx5RXJyb3IoeDogYW55KTogeCBpcyBBc3NlbWJseUVycm9yIHtcbiAgICByZXR1cm4gdGhpcy5pc1Rvb2xraXRFcnJvcih4KSAmJiBBU1NFTUJMWV9FUlJPUl9TWU1CT0wgaW4geDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIGEgZ2l2ZW4gZXJyb3IgaXMgYW4gaW5zdGFuY2Ugb2YgQXNzZW1ibHlFcnJvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaXNDb250ZXh0UHJvdmlkZXJFcnJvcih4OiBhbnkpOiB4IGlzIENvbnRleHRQcm92aWRlckVycm9yIHtcbiAgICByZXR1cm4gdGhpcy5pc1Rvb2xraXRFcnJvcih4KSAmJiBDT05URVhUX1BST1ZJREVSX0VSUk9SX1NZTUJPTCBpbiB4O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBlcnJvciwgZGVmYXVsdHMgdG8gXCJ0b29sa2l0XCIuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKG1lc3NhZ2U6IHN0cmluZywgdHlwZTogc3RyaW5nID0gJ3Rvb2xraXQnKSB7XG4gICAgc3VwZXIobWVzc2FnZSk7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsIFRvb2xraXRFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBUT09MS0lUX0VSUk9SX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgICB0aGlzLm5hbWUgPSBuZXcudGFyZ2V0Lm5hbWU7XG4gICAgdGhpcy50eXBlID0gdHlwZTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gYXV0aGVudGljYXRpb24tc3BlY2lmaWMgZXJyb3IgaW4gdGhlIEFXUyBDREsgVG9vbGtpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uRXJyb3IgZXh0ZW5kcyBUb29sa2l0RXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlLCAnYXV0aGVudGljYXRpb24nKTtcbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcywgQXV0aGVudGljYXRpb25FcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBBVVRIRU5USUNBVElPTl9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIGF1dGhlbnRpY2F0aW9uLXNwZWNpZmljIGVycm9yIGluIHRoZSBBV1MgQ0RLIFRvb2xraXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBBc3NlbWJseUVycm9yIGV4dGVuZHMgVG9vbGtpdEVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIobWVzc2FnZSwgJ2Fzc2VtYmx5Jyk7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsIEFzc2VtYmx5RXJyb3IucHJvdG90eXBlKTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgQVNTRU1CTFlfRVJST1JfU1lNQk9MLCB7IHZhbHVlOiB0cnVlIH0pO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBlcnJvciBvcmlnaW5hdGluZyBmcm9tIGEgQ29udGV4dCBQcm92aWRlclxuICovXG5leHBvcnQgY2xhc3MgQ29udGV4dFByb3ZpZGVyRXJyb3IgZXh0ZW5kcyBUb29sa2l0RXJyb3Ige1xuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcpIHtcbiAgICBzdXBlcihtZXNzYWdlLCAnY29udGV4dC1wcm92aWRlcicpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBDb250ZXh0UHJvdmlkZXJFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBDT05URVhUX1BST1ZJREVSX0VSUk9SX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgfVxufVxuIl19