@liflig/cdk-vy 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/shared/types.d.ts
CHANGED
package/lib/shared/types.js
CHANGED
|
@@ -19,4 +19,4 @@ export var VyEnvironment;
|
|
|
19
19
|
*/
|
|
20
20
|
VyEnvironment["PROD"] = "prod";
|
|
21
21
|
})(VyEnvironment || (VyEnvironment = {}));
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2hhcmVkL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUg7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxhQWVYO0FBZkQsV0FBWSxhQUFhO0lBQ3ZCOztPQUVHO0lBQ0gsOEJBQWEsQ0FBQTtJQUViOztPQUVHO0lBQ0gsZ0NBQWUsQ0FBQTtJQUVmOztPQUVHO0lBQ0gsOEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFmVyxhQUFhLEtBQWIsYUFBYSxRQWV4QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2hhcmVkIHR5cGUgZGVmaW5pdGlvbnMgZm9yIFZ5IGN1c3RvbSByZXNvdXJjZXNcbiAqL1xuXG4vKipcbiAqIFRoZSBkaWZmZXJlbnQgVnkgZW52aXJvbm1lbnRzXG4gKi9cbmV4cG9ydCBlbnVtIFZ5RW52aXJvbm1lbnQge1xuICAvKipcbiAgICogRGV2ZWxvcG1lbnQgZW52aXJvbm1lbnRcbiAgICovXG4gIFRFU1QgPSBcInRlc3RcIixcblxuICAvKipcbiAgICogUHJvZHVjdGlvbi1saWtlIGVudmlyb25tZW50XG4gICAqL1xuICBTVEFHRSA9IFwic3RhZ2VcIixcblxuICAvKipcbiAgICogUHJvZHVjdGlvbiBlbnZpcm9ubWVudFxuICAgKi9cbiAgUFJPRCA9IFwicHJvZFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjb3BlIHtcbiAgbmFtZTogc3RyaW5nXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZVNlcnZlciB7XG4gIGlkZW50aWZpZXI6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgc2NvcGVzPzogU2NvcGVbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlU2VydmVyVXBkYXRlUmVxdWVzdCB7XG4gIGlkZW50aWZpZXI6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgc2NvcGVzPzogU2NvcGVbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcENsaWVudCB7XG4gIG5hbWU6IHN0cmluZ1xuICBzY29wZXM6IHN0cmluZ1tdXG4gIHR5cGU6IFwiZnJvbnRlbmRcIiB8IFwiYmFja2VuZFwiXG4gIGNhbGxiYWNrX3VybHM6IHN0cmluZ1tdXG4gIGxvZ291dF91cmxzOiBzdHJpbmdbXVxuICBnZW5lcmF0ZV9zZWNyZXQ/
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2hhcmVkL3R5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUg7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxhQWVYO0FBZkQsV0FBWSxhQUFhO0lBQ3ZCOztPQUVHO0lBQ0gsOEJBQWEsQ0FBQTtJQUViOztPQUVHO0lBQ0gsZ0NBQWUsQ0FBQTtJQUVmOztPQUVHO0lBQ0gsOEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFmVyxhQUFhLEtBQWIsYUFBYSxRQWV4QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogU2hhcmVkIHR5cGUgZGVmaW5pdGlvbnMgZm9yIFZ5IGN1c3RvbSByZXNvdXJjZXNcbiAqL1xuXG4vKipcbiAqIFRoZSBkaWZmZXJlbnQgVnkgZW52aXJvbm1lbnRzXG4gKi9cbmV4cG9ydCBlbnVtIFZ5RW52aXJvbm1lbnQge1xuICAvKipcbiAgICogRGV2ZWxvcG1lbnQgZW52aXJvbm1lbnRcbiAgICovXG4gIFRFU1QgPSBcInRlc3RcIixcblxuICAvKipcbiAgICogUHJvZHVjdGlvbi1saWtlIGVudmlyb25tZW50XG4gICAqL1xuICBTVEFHRSA9IFwic3RhZ2VcIixcblxuICAvKipcbiAgICogUHJvZHVjdGlvbiBlbnZpcm9ubWVudFxuICAgKi9cbiAgUFJPRCA9IFwicHJvZFwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjb3BlIHtcbiAgbmFtZTogc3RyaW5nXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXNvdXJjZVNlcnZlciB7XG4gIGlkZW50aWZpZXI6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgc2NvcGVzPzogU2NvcGVbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlU2VydmVyVXBkYXRlUmVxdWVzdCB7XG4gIGlkZW50aWZpZXI6IHN0cmluZ1xuICBuYW1lOiBzdHJpbmdcbiAgc2NvcGVzPzogU2NvcGVbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcENsaWVudCB7XG4gIG5hbWU6IHN0cmluZ1xuICBzY29wZXM6IHN0cmluZ1tdXG4gIHR5cGU6IFwiZnJvbnRlbmRcIiB8IFwiYmFja2VuZFwiXG4gIGNhbGxiYWNrX3VybHM6IHN0cmluZ1tdXG4gIGxvZ291dF91cmxzOiBzdHJpbmdbXVxuICBnZW5lcmF0ZV9zZWNyZXQ/OiBib29sZWFuXG4gIGNsaWVudF9pZD86IHN0cmluZ1xuICBjbGllbnRfc2VjcmV0Pzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwQ2xpZW50VXBkYXRlUmVxdWVzdCB7XG4gIG5hbWU6IHN0cmluZ1xuICBzY29wZXM6IHN0cmluZ1tdXG4gIGNhbGxiYWNrX3VybHM6IHN0cmluZ1tdXG4gIGxvZ291dF91cmxzOiBzdHJpbmdbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERlcGxveW1lbnRBY2NvdW50IHtcbiAgYWNjb3VudElkOiBzdHJpbmdcbiAgc2xhY2tDaGFubmVsOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZpcm9ubWVudEFjY291bnQge1xuICBhY2NvdW50SWQ6IHN0cmluZ1xuICBvd25lckFjY291bnRJZDogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXJ0aWZhY3RWZXJzaW9uIHtcbiAgdXJpOiBzdHJpbmdcbiAgc3RvcmU6IHN0cmluZ1xuICBwYXRoOiBzdHJpbmdcbiAgdmVyc2lvbjogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ29nbml0b0RldGFpbHMge1xuICAvKipcbiAgICogVGhlIFVSTCB3aGVyZSB1c2VycyBjYW4gYXV0aGVudGljYXRlXG4gICAqL1xuICBhdXRoVXJsOiBzdHJpbmdcblxuICAvKipcbiAgICogVGhlIFVSTCBmb3IgdGhlIC8ud2VsbC1rbm93bi9qd2tzLmpzb24gZW5kcG9pbnRcbiAgICovXG4gIGp3a3NVcmw6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgVVJMIGZvciB0aGUgLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIGVuZHBvaW50XG4gICAqL1xuICBvcGVuSWRVcmw6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgVVJJIGZvciB0aGUgaXNzdWVyXG4gICAqL1xuICBpc3N1ZXI6IHN0cmluZ1xuXG4gIC8qKlxuICAgKiBUaGUgVnkgQ29nbml0byBVc2VycG9vbCBJZFxuICAgKi9cbiAgdXNlclBvb2xJZDogc3RyaW5nXG59XG5cbi8qKlxuICogQ3VzdG9tIFJlc291cmNlIGV2ZW50IHR5cGVzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3VzdG9tUmVzb3VyY2VSZXF1ZXN0IHtcbiAgUmVxdWVzdFR5cGU6IFwiQ3JlYXRlXCIgfCBcIlVwZGF0ZVwiIHwgXCJEZWxldGVcIlxuICBSZXF1ZXN0SWQ6IHN0cmluZ1xuICBSZXNwb25zZVVSTDogc3RyaW5nXG4gIFJlc291cmNlVHlwZTogc3RyaW5nXG4gIExvZ2ljYWxSZXNvdXJjZUlkOiBzdHJpbmdcbiAgU3RhY2tJZDogc3RyaW5nXG4gIFBoeXNpY2FsUmVzb3VyY2VJZD86IHN0cmluZ1xuICBSZXNvdXJjZVByb3BlcnRpZXM6IFJlY29yZDxzdHJpbmcsIGFueT5cbiAgT2xkUmVzb3VyY2VQcm9wZXJ0aWVzPzogUmVjb3JkPHN0cmluZywgYW55PlxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbVJlc291cmNlUmVzcG9uc2Uge1xuICBTdGF0dXM6IFwiU1VDQ0VTU1wiIHwgXCJGQUlMRURcIlxuICBSZWFzb24/OiBzdHJpbmdcbiAgUGh5c2ljYWxSZXNvdXJjZUlkOiBzdHJpbmdcbiAgU3RhY2tJZDogc3RyaW5nXG4gIFJlcXVlc3RJZDogc3RyaW5nXG4gIExvZ2ljYWxSZXNvdXJjZUlkOiBzdHJpbmdcbiAgRGF0YT86IFJlY29yZDxzdHJpbmcsIGFueT5cbn1cbiJdfQ==
|
|
@@ -32,5 +32,5 @@ export declare class VyCognitoProvider extends Construct {
|
|
|
32
32
|
readonly appClientProvider: AppClientProvider;
|
|
33
33
|
readonly resourceServerProvider: ResourceServerProvider;
|
|
34
34
|
constructor(scope: Construct, id: string, props: VyCognitoProviderProps);
|
|
35
|
-
getCognitoDetailsForEnvironment(environment: VyEnvironment): CognitoDetails;
|
|
36
35
|
}
|
|
36
|
+
export declare function getCognitoDetailsForEnvironment(environment: VyEnvironment): CognitoDetails;
|
|
@@ -21,7 +21,7 @@ export class VyCognitoProvider extends Construct {
|
|
|
21
21
|
super(scope, id);
|
|
22
22
|
this.environment = props.environment;
|
|
23
23
|
this.cognitoBaseDomain = props.cognitoBaseDomain ?? "cognito.vydev.io";
|
|
24
|
-
this.details =
|
|
24
|
+
this.details = getCognitoDetailsForEnvironment(this.environment);
|
|
25
25
|
const appClientProvider = new LambdaProvider(this, "AppClientProvider", {
|
|
26
26
|
cognitoBaseDomain: this.cognitoBaseDomain,
|
|
27
27
|
runtime: lambda.Runtime.NODEJS_22_X,
|
|
@@ -46,13 +46,6 @@ export class VyCognitoProvider extends Construct {
|
|
|
46
46
|
serviceToken: resourceServerProvider.serviceToken,
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
|
-
getCognitoDetailsForEnvironment(environment) {
|
|
50
|
-
const config = envConfigs[environment];
|
|
51
|
-
if (!config) {
|
|
52
|
-
throw new Error(`Unknown environment: ${environment}. Valid values are: prod, stage, test`);
|
|
53
|
-
}
|
|
54
|
-
return config;
|
|
55
|
-
}
|
|
56
49
|
}
|
|
57
50
|
class LambdaProvider extends Construct {
|
|
58
51
|
/**
|
|
@@ -104,6 +97,13 @@ class LambdaProvider extends Construct {
|
|
|
104
97
|
this.serviceToken = provider.serviceToken;
|
|
105
98
|
}
|
|
106
99
|
}
|
|
100
|
+
export function getCognitoDetailsForEnvironment(environment) {
|
|
101
|
+
const config = envConfigs[environment];
|
|
102
|
+
if (!config) {
|
|
103
|
+
throw new Error(`Unknown environment: ${environment}. Valid values are: prod, stage, test`);
|
|
104
|
+
}
|
|
105
|
+
return config;
|
|
106
|
+
}
|
|
107
107
|
// Static config for each environment
|
|
108
108
|
const envConfigs = {
|
|
109
109
|
prod: {
|
|
@@ -111,18 +111,21 @@ const envConfigs = {
|
|
|
111
111
|
jwksUrl: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_e6o46c1oE/.well-known/jwks.json",
|
|
112
112
|
openIdUrl: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_e6o46c1oE/.well-known/openid-configuration",
|
|
113
113
|
issuer: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_e6o46c1oE",
|
|
114
|
+
userPoolId: "eu-west-1_e6o46c1oE",
|
|
114
115
|
},
|
|
115
116
|
stage: {
|
|
116
117
|
authUrl: "https://auth.stage.cognito.vydev.io",
|
|
117
118
|
jwksUrl: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_AUYQ679zW/.well-known/jwks.json",
|
|
118
119
|
openIdUrl: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_AUYQ679zW/.well-known/openid-configuration",
|
|
119
120
|
issuer: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_AUYQ679zW",
|
|
121
|
+
userPoolId: "eu-west-1_AUYQ679zW",
|
|
120
122
|
},
|
|
121
123
|
test: {
|
|
122
124
|
authUrl: "https://auth.test.cognito.vydev.io",
|
|
123
125
|
jwksUrl: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_Z53b9AbeT/.well-known/jwks.json",
|
|
124
126
|
openIdUrl: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_Z53b9AbeT/.well-known/openid-configuration",
|
|
125
127
|
issuer: "https://cognito-idp.eu-west-1.amazonaws.com/eu-west-1_Z53b9AbeT",
|
|
128
|
+
userPoolId: "eu-west-1_Z53b9AbeT",
|
|
126
129
|
},
|
|
127
130
|
};
|
|
128
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnktY29nbml0by1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy92eS1jb2duaXRvLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDM0MsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFBO0FBQzVCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDeEMsT0FBTyxLQUFLLEdBQUcsTUFBTSxhQUFhLENBQUE7QUFDbEMsT0FBTyxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQTtBQUMxQyxPQUFPLEtBQUssTUFBTSxNQUFNLHdCQUF3QixDQUFBO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUM5RCxPQUFPLEtBQUssSUFBSSxNQUFNLHNCQUFzQixDQUFBO0FBQzVDLE9BQU8sS0FBSyxFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUd0QyxNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQUM5QyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQUNqRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0FBK0IxQyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsU0FBUztJQUM5QixXQUFXLENBQWU7SUFDMUIsaUJBQWlCLENBQVE7SUFDekIsT0FBTyxDQUFnQjtJQUN2QixpQkFBaUIsQ0FBbUI7SUFDcEMsc0JBQXNCLENBQXdCO0lBRTlELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBNkI7UUFDckUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQTtRQUVoQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUE7UUFDcEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxpQkFBaUIsSUFBSSxrQkFBa0IsQ0FBQTtRQUN0RSxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUE7UUFFckUsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLEVBQUUsbUJBQW1CLEVBQUU7WUFDdEUsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUN6QyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXO1lBQ25DLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLEtBQUssRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsU0FBUyw2QkFBNkIsQ0FBQztZQUNqRSxZQUFZLEVBQUUsS0FBSyxDQUFDLGFBQWE7U0FDbEMsQ0FBQyxDQUFBO1FBRUYsSUFBSSxDQUFDLGlCQUFpQixHQUFHO1lBQ3ZCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixZQUFZLEVBQUUsaUJBQWlCLENBQUMsWUFBWTtZQUM1QyxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPO1NBQy9CLENBQUE7UUFFRCxNQUFNLHNCQUFzQixHQUFHLElBQUksY0FBYyxDQUMvQyxJQUFJLEVBQ0osd0JBQXdCLEVBQ3hCO1lBQ0UsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQjtZQUN6QyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFXO1lBQ25DLE9BQU8sRUFBRSxTQUFTO1lBQ2xCLEtBQUssRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsU0FBUyxrQ0FBa0MsQ0FBQztZQUN0RSxZQUFZLEVBQUUsS0FBSyxDQUFDLGFBQWE7U0FDbEMsQ0FDRixDQUFBO1FBRUQsSUFBSSxDQUFDLHNCQUFzQixHQUFHO1lBQzVCLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixZQUFZLEVBQUUsc0JBQXNCLENBQUMsWUFBWTtTQUNsRCxDQUFBO0lBQ0gsQ0FBQztJQUVELCtCQUErQixDQUFDLFdBQTBCO1FBQ3hELE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUV0QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksS0FBSyxDQUNiLHdCQUF3QixXQUFXLHVDQUF1QyxDQUMzRSxDQUFBO1FBQ0gsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFBO0lBQ2YsQ0FBQztDQUNGO0FBd0JELE1BQU0sY0FBZSxTQUFRLFNBQVM7SUFDcEM7O09BRUc7SUFDYSxjQUFjLENBQWU7SUFFN0M7O09BRUc7SUFDYSxnQkFBZ0IsQ0FBZTtJQUUvQzs7T0FFRztJQUNhLFlBQVksQ0FBUTtJQUVwQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTBCO1FBQ2xFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFFaEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQzlELFNBQVMsRUFBRSxLQUFLLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUTtTQUM3RCxDQUFDLENBQUE7UUFFRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRTtZQUNsRSxTQUFTLEVBQUUsS0FBSyxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVE7U0FDN0QsQ0FBQyxDQUFBO1FBRUYsTUFBTSxjQUFjLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQ2hFLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztZQUN0QixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1lBQ2xCLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztZQUNqRCxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsSUFBSSxHQUFHO1lBQ25DLFFBQVEsRUFBRSxJQUFJLENBQUMsY0FBYztZQUM3QixXQUFXLEVBQUU7Z0JBQ1gsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLGlCQUFpQjthQUM3QztZQUNELFFBQVEsRUFBRTtnQkFDUixNQUFNLEVBQUUsSUFBSTtnQkFDWixTQUFTLEVBQUUsSUFBSTtnQkFDZixNQUFNLEVBQUUsUUFBUTtnQkFDaEIsZUFBZSxFQUFFLENBQUMsU0FBUyxDQUFDO2FBQzdCO1NBQ0YsQ0FBQyxDQUFBO1FBRUYsY0FBYyxDQUFDLGVBQWUsQ0FDNUIsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO1lBQ3RCLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLEtBQUs7WUFDeEIsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7WUFDL0IsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsaURBQWlEO1NBQ3BFLENBQUMsQ0FDSCxDQUFBO1FBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxVQUFVLEVBQUU7WUFDakQsY0FBYztZQUNkLFFBQVEsRUFBRSxJQUFJLENBQUMsZ0JBQWdCO1NBQ2hDLENBQUMsQ0FBQTtRQUVGLElBQUksQ0FBQyxZQUFZLEdBQUcsUUFBUSxDQUFDLFlBQVksQ0FBQTtJQUMzQyxDQUFDO0NBQ0Y7QUFFRCxxQ0FBcUM7QUFDckMsTUFBTSxVQUFVLEdBQW1DO0lBQ2pELElBQUksRUFBRTtRQUNKLE9BQU8sRUFBRSwrQkFBK0I7UUFDeEMsT0FBTyxFQUNMLHVGQUF1RjtRQUN6RixTQUFTLEVBQ1Asa0dBQWtHO1FBQ3BHLE1BQU0sRUFBRSxpRUFBaUU7S0FDMUU7SUFDRCxLQUFLLEVBQUU7UUFDTCxPQUFPLEVBQUUscUNBQXFDO1FBQzlDLE9BQU8sRUFDTCx1RkFBdUY7UUFDekYsU0FBUyxFQUNQLGtHQUFrRztRQUNwRyxNQUFNLEVBQUUsaUVBQWlFO0tBQzFFO0lBQ0QsSUFBSSxFQUFFO1FBQ0osT0FBTyxFQUFFLG9DQUFvQztRQUM3QyxPQUFPLEVBQ0wsdUZBQXVGO1FBQ3pGLFNBQVMsRUFDUCxrR0FBa0c7UUFDcEcsTUFBTSxFQUFFLGlFQUFpRTtLQUMxRTtDQUNGLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVSZXF1aXJlIH0gZnJvbSBcIm5vZGU6bW9kdWxlXCJcbmltcG9ydCBwYXRoIGZyb20gXCJub2RlOnBhdGhcIlxuaW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gXCJub2RlOnVybFwiXG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCJcbmltcG9ydCAqIGFzIGlhbSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiXG5pbXBvcnQgKiBhcyBsYW1iZGEgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIlxuaW1wb3J0IHsgTm9kZWpzRnVuY3Rpb24gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanNcIlxuaW1wb3J0ICogYXMgbG9ncyBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWxvZ3NcIlxuaW1wb3J0ICogYXMgY3IgZnJvbSBcImF3cy1jZGstbGliL2N1c3RvbS1yZXNvdXJjZXNcIlxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIlxuaW1wb3J0IHR5cGUgeyBDb2duaXRvRGV0YWlscywgVnlFbnZpcm9ubWVudCB9IGZyb20gXCIuL3NoYXJlZC90eXBlc1wiXG5cbmNvbnN0IHJlcXVpcmUgPSBjcmVhdGVSZXF1aXJlKGltcG9ydC5tZXRhLnVybClcbmNvbnN0IF9fZmlsZW5hbWUgPSBmaWxlVVJMVG9QYXRoKGltcG9ydC5tZXRhLnVybClcbmNvbnN0IF9fZGlybmFtZSA9IHBhdGguZGlybmFtZShfX2ZpbGVuYW1lKVxuXG5leHBvcnQgaW50ZXJmYWNlIFZ5Q29nbml0b1Byb3ZpZGVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIFZ5IENvZ25pdG8gZW52aXJvbm1lbnQgdG8gY29ubmVjdCB0byAoZS5nLiwgVnlFbnZpcm9ubWVudC5QUk9ELCBWeUVudmlyb25tZW50LlNUQUdFLCBWeUVudmlyb25tZW50LlRFU1QpXG4gICAqL1xuICByZWFkb25seSBlbnZpcm9ubWVudDogVnlFbnZpcm9ubWVudFxuXG4gIC8qKlxuICAgKiBCYXNlIGRvbWFpbiBmb3IgQ29nbml0byBzZXJ2aWNlXG4gICAqIEBkZWZhdWx0ICdjb2duaXRvLnZ5ZGV2LmlvJ1xuICAgKi9cbiAgcmVhZG9ubHkgY29nbml0b0Jhc2VEb21haW4/OiBzdHJpbmdcblxuICAvKipcbiAgICogQGRlZmF1bHQgbG9ncy5SZXRlbnRpb25EYXlzLk9ORV9XRUVLXG4gICAqL1xuICByZWFkb25seSBsb2dzUmV0ZW50aW9uPzogbG9ncy5SZXRlbnRpb25EYXlzXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwQ2xpZW50UHJvdmlkZXIge1xuICBlbnZpcm9ubWVudDogVnlFbnZpcm9ubWVudFxuICBzZXJ2aWNlVG9rZW46IHN0cmluZ1xuICBhdXRoX3VybDogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb3VyY2VTZXJ2ZXJQcm92aWRlciB7XG4gIGVudmlyb25tZW50OiBWeUVudmlyb25tZW50XG4gIHNlcnZpY2VUb2tlbjogc3RyaW5nXG59XG5cbmV4cG9ydCBjbGFzcyBWeUNvZ25pdG9Qcm92aWRlciBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHB1YmxpYyByZWFkb25seSBlbnZpcm9ubWVudDogVnlFbnZpcm9ubWVudFxuICBwdWJsaWMgcmVhZG9ubHkgY29nbml0b0Jhc2VEb21haW46IHN0cmluZ1xuICBwdWJsaWMgcmVhZG9ubHkgZGV0YWlsczogQ29nbml0b0RldGFpbHNcbiAgcHVibGljIHJlYWRvbmx5IGFwcENsaWVudFByb3ZpZGVyOiBBcHBDbGllbnRQcm92aWRlclxuICBwdWJsaWMgcmVhZG9ubHkgcmVzb3VyY2VTZXJ2ZXJQcm92aWRlcjogUmVzb3VyY2VTZXJ2ZXJQcm92aWRlclxuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBWeUNvZ25pdG9Qcm92aWRlclByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKVxuXG4gICAgdGhpcy5lbnZpcm9ubWVudCA9IHByb3BzLmVudmlyb25tZW50XG4gICAgdGhpcy5jb2duaXRvQmFzZURvbWFpbiA9IHByb3BzLmNvZ25pdG9CYXNlRG9tYWluID8/IFwiY29nbml0by52eWRldi5pb1wiXG4gICAgdGhpcy5kZXRhaWxzID0gdGhpcy5nZXRDb2duaXRvRGV0YWlsc0ZvckVudmlyb25tZW50KHRoaXMuZW52aXJvbm1lbnQpXG5cbiAgICBjb25zdCBhcHBDbGllbnRQcm92aWRlciA9IG5ldyBMYW1iZGFQcm92aWRlcih0aGlzLCBcIkFwcENsaWVudFByb3ZpZGVyXCIsIHtcbiAgICAgIGNvZ25pdG9CYXNlRG9tYWluOiB0aGlzLmNvZ25pdG9CYXNlRG9tYWluLFxuICAgICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzIyX1gsXG4gICAgICBoYW5kbGVyOiBcImhhbmRsZXJcIixcbiAgICAgIGVudHJ5OiByZXF1aXJlLnJlc29sdmUoYCR7X19kaXJuYW1lfS9jb2duaXRvLWFwcC1jbGllbnQvaGFuZGxlcmApLFxuICAgICAgbG9nUmV0ZW50aW9uOiBwcm9wcy5sb2dzUmV0ZW50aW9uLFxuICAgIH0pXG5cbiAgICB0aGlzLmFwcENsaWVudFByb3ZpZGVyID0ge1xuICAgICAgZW52aXJvbm1lbnQ6IHRoaXMuZW52aXJvbm1lbnQsXG4gICAgICBzZXJ2aWNlVG9rZW46IGFwcENsaWVudFByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICAgIGF1dGhfdXJsOiB0aGlzLmRldGFpbHMuYXV0aFVybCxcbiAgICB9XG5cbiAgICBjb25zdCByZXNvdXJjZVNlcnZlclByb3ZpZGVyID0gbmV3IExhbWJkYVByb3ZpZGVyKFxuICAgICAgdGhpcyxcbiAgICAgIFwiUmVzb3VyY2VTZXJ2ZXJQcm92aWRlclwiLFxuICAgICAge1xuICAgICAgICBjb2duaXRvQmFzZURvbWFpbjogdGhpcy5jb2duaXRvQmFzZURvbWFpbixcbiAgICAgICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzIyX1gsXG4gICAgICAgIGhhbmRsZXI6IFwiaGFuZGxlclwiLFxuICAgICAgICBlbnRyeTogcmVxdWlyZS5yZXNvbHZlKGAke19fZGlybmFtZX0vY29nbml0by1yZXNvdXJjZS1zZXJ2ZXIvaGFuZGxlcmApLFxuICAgICAgICBsb2dSZXRlbnRpb246IHByb3BzLmxvZ3NSZXRlbnRpb24sXG4gICAgICB9LFxuICAgIClcblxuICAgIHRoaXMucmVzb3VyY2VTZXJ2ZXJQcm92aWRlciA9IHtcbiAgICAgIGVudmlyb25tZW50OiB0aGlzLmVudmlyb25tZW50LFxuICAgICAgc2VydmljZVRva2VuOiByZXNvdXJjZVNlcnZlclByb3ZpZGVyLnNlcnZpY2VUb2tlbixcbiAgICB9XG4gIH1cblxuICBnZXRDb2duaXRvRGV0YWlsc0ZvckVudmlyb25tZW50KGVudmlyb25tZW50OiBWeUVudmlyb25tZW50KTogQ29nbml0b0RldGFpbHMge1xuICAgIGNvbnN0IGNvbmZpZyA9IGVudkNvbmZpZ3NbZW52aXJvbm1lbnRdXG5cbiAgICBpZiAoIWNvbmZpZykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgVW5rbm93biBlbnZpcm9ubWVudDogJHtlbnZpcm9ubWVudH0uIFZhbGlkIHZhbHVlcyBhcmU6IHByb2QsIHN0YWdlLCB0ZXN0YCxcbiAgICAgIClcbiAgICB9XG5cbiAgICByZXR1cm4gY29uZmlnXG4gIH1cbn1cblxuaW50ZXJmYWNlIExhbWJkYVByb3ZpZGVyUHJvcHMge1xuICByZWFkb25seSBjb2duaXRvQmFzZURvbWFpbjogc3RyaW5nXG4gIHJlYWRvbmx5IHJ1bnRpbWU6IGxhbWJkYS5SdW50aW1lXG4gIHJlYWRvbmx5IGhhbmRsZXI6IHN0cmluZ1xuICByZWFkb25seSBlbnRyeTogc3RyaW5nXG5cbiAgLyoqXG4gICAqIEBkZWZhdWx0IGNkay5EdXJhdGlvbi5taW51dGVzKDIpXG4gICAqL1xuICByZWFkb25seSB0aW1lb3V0PzogY2RrLkR1cmF0aW9uXG5cbiAgLyoqXG4gICAqIEBkZWZhdWx0IDI1NlxuICAgKi9cbiAgcmVhZG9ubHkgbWVtb3J5U2l6ZT86IG51bWJlclxuXG4gIC8qKlxuICAgKiBAZGVmYXVsdCBsb2dzLlJldGVudGlvbkRheXMuT05FX1dFRUtcbiAgICovXG4gIHJlYWRvbmx5IGxvZ1JldGVudGlvbj86IGxvZ3MuUmV0ZW50aW9uRGF5c1xufVxuXG5jbGFzcyBMYW1iZGFQcm92aWRlciBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKiBUaGUgbG9nR3JvdXAgZm9yIHRoZSBldmVudCBoYW5kbGVyIGxhbWJkYVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGxhbWJkYUxvZ0dyb3VwOiBsb2dzLkxvZ0dyb3VwXG5cbiAgLyoqXG4gICAqIFRoZSBsb2dHcm91cCBmb3IgdGhlIGN1c3RvbSByZXNvdXJjZSBwcm92aWRlclxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3ZpZGVyTG9nR3JvdXA6IGxvZ3MuTG9nR3JvdXBcblxuICAvKipcbiAgICogVGhlIHNlcnZpY2UgdG9rZW4gZm9yIHRoZSBwcm92aWRlclxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNlcnZpY2VUb2tlbjogc3RyaW5nXG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IExhbWJkYVByb3ZpZGVyUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpXG5cbiAgICB0aGlzLmxhbWJkYUxvZ0dyb3VwID0gbmV3IGxvZ3MuTG9nR3JvdXAodGhpcywgXCJMYW1iZGFMb2dHcm91cFwiLCB7XG4gICAgICByZXRlbnRpb246IHByb3BzLmxvZ1JldGVudGlvbiA/PyBsb2dzLlJldGVudGlvbkRheXMuT05FX1dFRUssXG4gICAgfSlcblxuICAgIHRoaXMucHJvdmlkZXJMb2dHcm91cCA9IG5ldyBsb2dzLkxvZ0dyb3VwKHRoaXMsIFwiUHJvdmlkZXJMb2dHcm91cFwiLCB7XG4gICAgICByZXRlbnRpb246IHByb3BzLmxvZ1JldGVudGlvbiA/PyBsb2dzLlJldGVudGlvbkRheXMuT05FX1dFRUssXG4gICAgfSlcblxuICAgIGNvbnN0IG9uRXZlbnRIYW5kbGVyID0gbmV3IE5vZGVqc0Z1bmN0aW9uKHRoaXMsIFwiT25FdmVudEhhbmRsZXJcIiwge1xuICAgICAgcnVudGltZTogcHJvcHMucnVudGltZSxcbiAgICAgIGhhbmRsZXI6IHByb3BzLmhhbmRsZXIsXG4gICAgICBlbnRyeTogcHJvcHMuZW50cnksXG4gICAgICB0aW1lb3V0OiBwcm9wcy50aW1lb3V0ID8/IGNkay5EdXJhdGlvbi5taW51dGVzKDIpLFxuICAgICAgbWVtb3J5U2l6ZTogcHJvcHMubWVtb3J5U2l6ZSA/PyAyNTYsXG4gICAgICBsb2dHcm91cDogdGhpcy5sYW1iZGFMb2dHcm91cCxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIENPR05JVE9fQkFTRV9ET01BSU46IHByb3BzLmNvZ25pdG9CYXNlRG9tYWluLFxuICAgICAgfSxcbiAgICAgIGJ1bmRsaW5nOiB7XG4gICAgICAgIG1pbmlmeTogdHJ1ZSxcbiAgICAgICAgc291cmNlTWFwOiB0cnVlLFxuICAgICAgICB0YXJnZXQ6IFwiZXMyMDIwXCIsXG4gICAgICAgIGV4dGVybmFsTW9kdWxlczogW1wiYXdzLXNka1wiXSxcbiAgICAgIH0sXG4gICAgfSlcblxuICAgIG9uRXZlbnRIYW5kbGVyLmFkZFRvUm9sZVBvbGljeShcbiAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgZWZmZWN0OiBpYW0uRWZmZWN0LkFMTE9XLFxuICAgICAgICBhY3Rpb25zOiBbXCJleGVjdXRlLWFwaTpJbnZva2VcIl0sXG4gICAgICAgIHJlc291cmNlczogW1wiKlwiXSwgLy8gQ2FuIGJlIHNjb3BlZCBkb3duIGlmIEFQSSBHYXRld2F5IEFSTiBpcyBrbm93blxuICAgICAgfSksXG4gICAgKVxuXG4gICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgY3IuUHJvdmlkZXIodGhpcywgXCJQcm92aWRlclwiLCB7XG4gICAgICBvbkV2ZW50SGFuZGxlcixcbiAgICAgIGxvZ0dyb3VwOiB0aGlzLnByb3ZpZGVyTG9nR3JvdXAsXG4gICAgfSlcblxuICAgIHRoaXMuc2VydmljZVRva2VuID0gcHJvdmlkZXIuc2VydmljZVRva2VuXG4gIH1cbn1cblxuLy8gU3RhdGljIGNvbmZpZyBmb3IgZWFjaCBlbnZpcm9ubWVudFxuY29uc3QgZW52Q29uZmlnczogUmVjb3JkPHN0cmluZywgQ29nbml0b0RldGFpbHM+ID0ge1xuICBwcm9kOiB7XG4gICAgYXV0aFVybDogXCJodHRwczovL2F1dGguY29nbml0by52eWRldi5pb1wiLFxuICAgIGp3a3NVcmw6XG4gICAgICBcImh0dHBzOi8vY29nbml0by1pZHAuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vZXUtd2VzdC0xX2U2bzQ2YzFvRS8ud2VsbC1rbm93bi9qd2tzLmpzb25cIixcbiAgICBvcGVuSWRVcmw6XG4gICAgICBcImh0dHBzOi8vY29nbml0by1pZHAuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vZXUtd2VzdC0xX2U2bzQ2YzFvRS8ud2VsbC1rbm93bi9vcGVuaWQtY29uZmlndXJhdGlvblwiLFxuICAgIGlzc3VlcjogXCJodHRwczovL2NvZ25pdG8taWRwLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2V1LXdlc3QtMV9lNm80NmMxb0VcIixcbiAgfSxcbiAgc3RhZ2U6IHtcbiAgICBhdXRoVXJsOiBcImh0dHBzOi8vYXV0aC5zdGFnZS5jb2duaXRvLnZ5ZGV2LmlvXCIsXG4gICAgandrc1VybDpcbiAgICAgIFwiaHR0cHM6Ly9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ldS13ZXN0LTFfQVVZUTY3OXpXLy53ZWxsLWtub3duL2p3a3MuanNvblwiLFxuICAgIG9wZW5JZFVybDpcbiAgICAgIFwiaHR0cHM6Ly9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ldS13ZXN0LTFfQVVZUTY3OXpXLy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uXCIsXG4gICAgaXNzdWVyOiBcImh0dHBzOi8vY29nbml0by1pZHAuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vZXUtd2VzdC0xX0FVWVE2Nzl6V1wiLFxuICB9LFxuICB0ZXN0OiB7XG4gICAgYXV0aFVybDogXCJodHRwczovL2F1dGgudGVzdC5jb2duaXRvLnZ5ZGV2LmlvXCIsXG4gICAgandrc1VybDpcbiAgICAgIFwiaHR0cHM6Ly9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ldS13ZXN0LTFfWjUzYjlBYmVULy53ZWxsLWtub3duL2p3a3MuanNvblwiLFxuICAgIG9wZW5JZFVybDpcbiAgICAgIFwiaHR0cHM6Ly9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ldS13ZXN0LTFfWjUzYjlBYmVULy53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uXCIsXG4gICAgaXNzdWVyOiBcImh0dHBzOi8vY29nbml0by1pZHAuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vZXUtd2VzdC0xX1o1M2I5QWJlVFwiLFxuICB9LFxufVxuIl19
|
|
131
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidnktY29nbml0by1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy92eS1jb2duaXRvLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDM0MsT0FBTyxJQUFJLE1BQU0sV0FBVyxDQUFBO0FBQzVCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFDeEMsT0FBTyxLQUFLLEdBQUcsTUFBTSxhQUFhLENBQUE7QUFDbEMsT0FBTyxLQUFLLEdBQUcsTUFBTSxxQkFBcUIsQ0FBQTtBQUMxQyxPQUFPLEtBQUssTUFBTSxNQUFNLHdCQUF3QixDQUFBO0FBQ2hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQTtBQUM5RCxPQUFPLEtBQUssSUFBSSxNQUFNLHNCQUFzQixDQUFBO0FBQzVDLE9BQU8sS0FBSyxFQUFFLE1BQU0sOEJBQThCLENBQUE7QUFDbEQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUd0QyxNQUFNLE9BQU8sR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQUM5QyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtBQUNqRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFBO0FBK0IxQyxNQUFNLE9BQU8saUJBQWtCLFNBQVEsU0FBUztJQUM5QixXQUFXLENBQWU7SUFDMUIsaUJBQWlCLENBQVE7SUFDekIsT0FBTyxDQUFnQjtJQUN2QixpQkFBaUIsQ0FBbUI7SUFDcEMsc0JBQXNCLENBQXdCO0lBRTlELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBNkI7UUFDckUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FB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TCxPQUFPLEVBQUUscUNBQXFDO1FBQzlDLE9BQU8sRUFDTCx1RkFBdUY7UUFDekYsU0FBUyxFQUNQLGtHQUFrRztRQUNwRyxNQUFNLEVBQUUsaUVBQWlFO1FBQ3pFLFVBQVUsRUFBRSxxQkFBcUI7S0FDbEM7SUFDRCxJQUFJLEVBQUU7UUFDSixPQUFPLEVBQUUsb0NBQW9DO1FBQzdDLE9BQU8sRUFDTCx1RkFBdUY7UUFDekYsU0FBUyxFQUNQLGtHQUFrRztRQUNwRyxNQUFNLEVBQUUsaUVBQWlFO1FBQ3pFLFVBQVUsRUFBRSxxQkFBcUI7S0FDbEM7Q0FDRixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlUmVxdWlyZSB9IGZyb20gXCJub2RlOm1vZHVsZVwiXG5pbXBvcnQgcGF0aCBmcm9tIFwibm9kZTpwYXRoXCJcbmltcG9ydCB7IGZpbGVVUkxUb1BhdGggfSBmcm9tIFwibm9kZTp1cmxcIlxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiXG5pbXBvcnQgKiBhcyBpYW0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIlxuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCJcbmltcG9ydCB7IE5vZGVqc0Z1bmN0aW9uIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGEtbm9kZWpzXCJcbmltcG9ydCAqIGFzIGxvZ3MgZnJvbSBcImF3cy1jZGstbGliL2F3cy1sb2dzXCJcbmltcG9ydCAqIGFzIGNyIGZyb20gXCJhd3MtY2RrLWxpYi9jdXN0b20tcmVzb3VyY2VzXCJcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCJcbmltcG9ydCB0eXBlIHsgQ29nbml0b0RldGFpbHMsIFZ5RW52aXJvbm1lbnQgfSBmcm9tIFwiLi9zaGFyZWQvdHlwZXNcIlxuXG5jb25zdCByZXF1aXJlID0gY3JlYXRlUmVxdWlyZShpbXBvcnQubWV0YS51cmwpXG5jb25zdCBfX2ZpbGVuYW1lID0gZmlsZVVSTFRvUGF0aChpbXBvcnQubWV0YS51cmwpXG5jb25zdCBfX2Rpcm5hbWUgPSBwYXRoLmRpcm5hbWUoX19maWxlbmFtZSlcblxuZXhwb3J0IGludGVyZmFjZSBWeUNvZ25pdG9Qcm92aWRlclByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBWeSBDb2duaXRvIGVudmlyb25tZW50IHRvIGNvbm5lY3QgdG8gKGUuZy4sIFZ5RW52aXJvbm1lbnQuUFJPRCwgVnlFbnZpcm9ubWVudC5TVEFHRSwgVnlFbnZpcm9ubWVudC5URVNUKVxuICAgKi9cbiAgcmVhZG9ubHkgZW52aXJvbm1lbnQ6IFZ5RW52aXJvbm1lbnRcblxuICAvKipcbiAgICogQmFzZSBkb21haW4gZm9yIENvZ25pdG8gc2VydmljZVxuICAgKiBAZGVmYXVsdCAnY29nbml0by52eWRldi5pbydcbiAgICovXG4gIHJlYWRvbmx5IGNvZ25pdG9CYXNlRG9tYWluPzogc3RyaW5nXG5cbiAgLyoqXG4gICAqIEBkZWZhdWx0IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfV0VFS1xuICAgKi9cbiAgcmVhZG9ubHkgbG9nc1JldGVudGlvbj86IGxvZ3MuUmV0ZW50aW9uRGF5c1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcENsaWVudFByb3ZpZGVyIHtcbiAgZW52aXJvbm1lbnQ6IFZ5RW52aXJvbm1lbnRcbiAgc2VydmljZVRva2VuOiBzdHJpbmdcbiAgYXV0aF91cmw6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFJlc291cmNlU2VydmVyUHJvdmlkZXIge1xuICBlbnZpcm9ubWVudDogVnlFbnZpcm9ubWVudFxuICBzZXJ2aWNlVG9rZW46IHN0cmluZ1xufVxuXG5leHBvcnQgY2xhc3MgVnlDb2duaXRvUHJvdmlkZXIgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgZW52aXJvbm1lbnQ6IFZ5RW52aXJvbm1lbnRcbiAgcHVibGljIHJlYWRvbmx5IGNvZ25pdG9CYXNlRG9tYWluOiBzdHJpbmdcbiAgcHVibGljIHJlYWRvbmx5IGRldGFpbHM6IENvZ25pdG9EZXRhaWxzXG4gIHB1YmxpYyByZWFkb25seSBhcHBDbGllbnRQcm92aWRlcjogQXBwQ2xpZW50UHJvdmlkZXJcbiAgcHVibGljIHJlYWRvbmx5IHJlc291cmNlU2VydmVyUHJvdmlkZXI6IFJlc291cmNlU2VydmVyUHJvdmlkZXJcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVnlDb2duaXRvUHJvdmlkZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZClcblxuICAgIHRoaXMuZW52aXJvbm1lbnQgPSBwcm9wcy5lbnZpcm9ubWVudFxuICAgIHRoaXMuY29nbml0b0Jhc2VEb21haW4gPSBwcm9wcy5jb2duaXRvQmFzZURvbWFpbiA/PyBcImNvZ25pdG8udnlkZXYuaW9cIlxuICAgIHRoaXMuZGV0YWlscyA9IGdldENvZ25pdG9EZXRhaWxzRm9yRW52aXJvbm1lbnQodGhpcy5lbnZpcm9ubWVudClcblxuICAgIGNvbnN0IGFwcENsaWVudFByb3ZpZGVyID0gbmV3IExhbWJkYVByb3ZpZGVyKHRoaXMsIFwiQXBwQ2xpZW50UHJvdmlkZXJcIiwge1xuICAgICAgY29nbml0b0Jhc2VEb21haW46IHRoaXMuY29nbml0b0Jhc2VEb21haW4sXG4gICAgICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfMjJfWCxcbiAgICAgIGhhbmRsZXI6IFwiaGFuZGxlclwiLFxuICAgICAgZW50cnk6IHJlcXVpcmUucmVzb2x2ZShgJHtfX2Rpcm5hbWV9L2NvZ25pdG8tYXBwLWNsaWVudC9oYW5kbGVyYCksXG4gICAgICBsb2dSZXRlbnRpb246IHByb3BzLmxvZ3NSZXRlbnRpb24sXG4gICAgfSlcblxuICAgIHRoaXMuYXBwQ2xpZW50UHJvdmlkZXIgPSB7XG4gICAgICBlbnZpcm9ubWVudDogdGhpcy5lbnZpcm9ubWVudCxcbiAgICAgIHNlcnZpY2VUb2tlbjogYXBwQ2xpZW50UHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgICAgYXV0aF91cmw6IHRoaXMuZGV0YWlscy5hdXRoVXJsLFxuICAgIH1cblxuICAgIGNvbnN0IHJlc291cmNlU2VydmVyUHJvdmlkZXIgPSBuZXcgTGFtYmRhUHJvdmlkZXIoXG4gICAgICB0aGlzLFxuICAgICAgXCJSZXNvdXJjZVNlcnZlclByb3ZpZGVyXCIsXG4gICAgICB7XG4gICAgICAgIGNvZ25pdG9CYXNlRG9tYWluOiB0aGlzLmNvZ25pdG9CYXNlRG9tYWluLFxuICAgICAgICBydW50aW1lOiBsYW1iZGEuUnVudGltZS5OT0RFSlNfMjJfWCxcbiAgICAgICAgaGFuZGxlcjogXCJoYW5kbGVyXCIsXG4gICAgICAgIGVudHJ5OiByZXF1aXJlLnJlc29sdmUoYCR7X19kaXJuYW1lfS9jb2duaXRvLXJlc291cmNlLXNlcnZlci9oYW5kbGVyYCksXG4gICAgICAgIGxvZ1JldGVudGlvbjogcHJvcHMubG9nc1JldGVudGlvbixcbiAgICAgIH0sXG4gICAgKVxuXG4gICAgdGhpcy5yZXNvdXJjZVNlcnZlclByb3ZpZGVyID0ge1xuICAgICAgZW52aXJvbm1lbnQ6IHRoaXMuZW52aXJvbm1lbnQsXG4gICAgICBzZXJ2aWNlVG9rZW46IHJlc291cmNlU2VydmVyUHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgIH1cbiAgfVxufVxuXG5pbnRlcmZhY2UgTGFtYmRhUHJvdmlkZXJQcm9wcyB7XG4gIHJlYWRvbmx5IGNvZ25pdG9CYXNlRG9tYWluOiBzdHJpbmdcbiAgcmVhZG9ubHkgcnVudGltZTogbGFtYmRhLlJ1bnRpbWVcbiAgcmVhZG9ubHkgaGFuZGxlcjogc3RyaW5nXG4gIHJlYWRvbmx5IGVudHJ5OiBzdHJpbmdcblxuICAvKipcbiAgICogQGRlZmF1bHQgY2RrLkR1cmF0aW9uLm1pbnV0ZXMoMilcbiAgICovXG4gIHJlYWRvbmx5IHRpbWVvdXQ/OiBjZGsuRHVyYXRpb25cblxuICAvKipcbiAgICogQGRlZmF1bHQgMjU2XG4gICAqL1xuICByZWFkb25seSBtZW1vcnlTaXplPzogbnVtYmVyXG5cbiAgLyoqXG4gICAqIEBkZWZhdWx0IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfV0VFS1xuICAgKi9cbiAgcmVhZG9ubHkgbG9nUmV0ZW50aW9uPzogbG9ncy5SZXRlbnRpb25EYXlzXG59XG5cbmNsYXNzIExhbWJkYVByb3ZpZGVyIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIFRoZSBsb2dHcm91cCBmb3IgdGhlIGV2ZW50IGhhbmRsZXIgbGFtYmRhXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgbGFtYmRhTG9nR3JvdXA6IGxvZ3MuTG9nR3JvdXBcblxuICAvKipcbiAgICogVGhlIGxvZ0dyb3VwIGZvciB0aGUgY3VzdG9tIHJlc291cmNlIHByb3ZpZGVyXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvdmlkZXJMb2dHcm91cDogbG9ncy5Mb2dHcm91cFxuXG4gIC8qKlxuICAgKiBUaGUgc2VydmljZSB0b2tlbiBmb3IgdGhlIHByb3ZpZGVyXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmljZVRva2VuOiBzdHJpbmdcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTGFtYmRhUHJvdmlkZXJQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZClcblxuICAgIHRoaXMubGFtYmRhTG9nR3JvdXAgPSBuZXcgbG9ncy5Mb2dHcm91cCh0aGlzLCBcIkxhbWJkYUxvZ0dyb3VwXCIsIHtcbiAgICAgIHJldGVudGlvbjogcHJvcHMubG9nUmV0ZW50aW9uID8/IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfV0VFSyxcbiAgICB9KVxuXG4gICAgdGhpcy5wcm92aWRlckxvZ0dyb3VwID0gbmV3IGxvZ3MuTG9nR3JvdXAodGhpcywgXCJQcm92aWRlckxvZ0dyb3VwXCIsIHtcbiAgICAgIHJldGVudGlvbjogcHJvcHMubG9nUmV0ZW50aW9uID8/IGxvZ3MuUmV0ZW50aW9uRGF5cy5PTkVfV0VFSyxcbiAgICB9KVxuXG4gICAgY29uc3Qgb25FdmVudEhhbmRsZXIgPSBuZXcgTm9kZWpzRnVuY3Rpb24odGhpcywgXCJPbkV2ZW50SGFuZGxlclwiLCB7XG4gICAgICBydW50aW1lOiBwcm9wcy5ydW50aW1lLFxuICAgICAgaGFuZGxlcjogcHJvcHMuaGFuZGxlcixcbiAgICAgIGVudHJ5OiBwcm9wcy5lbnRyeSxcbiAgICAgIHRpbWVvdXQ6IHByb3BzLnRpbWVvdXQgPz8gY2RrLkR1cmF0aW9uLm1pbnV0ZXMoMiksXG4gICAgICBtZW1vcnlTaXplOiBwcm9wcy5tZW1vcnlTaXplID8/IDI1NixcbiAgICAgIGxvZ0dyb3VwOiB0aGlzLmxhbWJkYUxvZ0dyb3VwLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgQ09HTklUT19CQVNFX0RPTUFJTjogcHJvcHMuY29nbml0b0Jhc2VEb21haW4sXG4gICAgICB9LFxuICAgICAgYnVuZGxpbmc6IHtcbiAgICAgICAgbWluaWZ5OiB0cnVlLFxuICAgICAgICBzb3VyY2VNYXA6IHRydWUsXG4gICAgICAgIHRhcmdldDogXCJlczIwMjBcIixcbiAgICAgICAgZXh0ZXJuYWxNb2R1bGVzOiBbXCJhd3Mtc2RrXCJdLFxuICAgICAgfSxcbiAgICB9KVxuXG4gICAgb25FdmVudEhhbmRsZXIuYWRkVG9Sb2xlUG9saWN5KFxuICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICBlZmZlY3Q6IGlhbS5FZmZlY3QuQUxMT1csXG4gICAgICAgIGFjdGlvbnM6IFtcImV4ZWN1dGUtYXBpOkludm9rZVwiXSxcbiAgICAgICAgcmVzb3VyY2VzOiBbXCIqXCJdLCAvLyBDYW4gYmUgc2NvcGVkIGRvd24gaWYgQVBJIEdhdGV3YXkgQVJOIGlzIGtub3duXG4gICAgICB9KSxcbiAgICApXG5cbiAgICBjb25zdCBwcm92aWRlciA9IG5ldyBjci5Qcm92aWRlcih0aGlzLCBcIlByb3ZpZGVyXCIsIHtcbiAgICAgIG9uRXZlbnRIYW5kbGVyLFxuICAgICAgbG9nR3JvdXA6IHRoaXMucHJvdmlkZXJMb2dHcm91cCxcbiAgICB9KVxuXG4gICAgdGhpcy5zZXJ2aWNlVG9rZW4gPSBwcm92aWRlci5zZXJ2aWNlVG9rZW5cbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q29nbml0b0RldGFpbHNGb3JFbnZpcm9ubWVudChcbiAgZW52aXJvbm1lbnQ6IFZ5RW52aXJvbm1lbnQsXG4pOiBDb2duaXRvRGV0YWlscyB7XG4gIGNvbnN0IGNvbmZpZyA9IGVudkNvbmZpZ3NbZW52aXJvbm1lbnRdXG5cbiAgaWYgKCFjb25maWcpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgVW5rbm93biBlbnZpcm9ubWVudDogJHtlbnZpcm9ubWVudH0uIFZhbGlkIHZhbHVlcyBhcmU6IHByb2QsIHN0YWdlLCB0ZXN0YCxcbiAgICApXG4gIH1cblxuICByZXR1cm4gY29uZmlnXG59XG5cbi8vIFN0YXRpYyBjb25maWcgZm9yIGVhY2ggZW52aXJvbm1lbnRcbmNvbnN0IGVudkNvbmZpZ3M6IFJlY29yZDxzdHJpbmcsIENvZ25pdG9EZXRhaWxzPiA9IHtcbiAgcHJvZDoge1xuICAgIGF1dGhVcmw6IFwiaHR0cHM6Ly9hdXRoLmNvZ25pdG8udnlkZXYuaW9cIixcbiAgICBqd2tzVXJsOlxuICAgICAgXCJodHRwczovL2NvZ25pdG8taWRwLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2V1LXdlc3QtMV9lNm80NmMxb0UvLndlbGwta25vd24vandrcy5qc29uXCIsXG4gICAgb3BlbklkVXJsOlxuICAgICAgXCJodHRwczovL2NvZ25pdG8taWRwLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2V1LXdlc3QtMV9lNm80NmMxb0UvLndlbGwta25vd24vb3BlbmlkLWNvbmZpZ3VyYXRpb25cIixcbiAgICBpc3N1ZXI6IFwiaHR0cHM6Ly9jb2duaXRvLWlkcC5ldS13ZXN0LTEuYW1hem9uYXdzLmNvbS9ldS13ZXN0LTFfZTZvNDZjMW9FXCIsXG4gICAgdXNlclBvb2xJZDogXCJldS13ZXN0LTFfZTZvNDZjMW9FXCIsXG4gIH0sXG4gIHN0YWdlOiB7XG4gICAgYXV0aFVybDogXCJodHRwczovL2F1dGguc3RhZ2UuY29nbml0by52eWRldi5pb1wiLFxuICAgIGp3a3NVcmw6XG4gICAgICBcImh0dHBzOi8vY29nbml0by1pZHAuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vZXUtd2VzdC0xX0FVWVE2Nzl6Vy8ud2VsbC1rbm93bi9qd2tzLmpzb25cIixcbiAgICBvcGVuSWRVcmw6XG4gICAgICBcImh0dHBzOi8vY29nbml0by1pZHAuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vZXUtd2VzdC0xX0FVWVE2Nzl6Vy8ud2VsbC1rbm93bi9vcGVuaWQtY29uZmlndXJhdGlvblwiLFxuICAgIGlzc3VlcjogXCJodHRwczovL2NvZ25pdG8taWRwLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2V1LXdlc3QtMV9BVVlRNjc5eldcIixcbiAgICB1c2VyUG9vbElkOiBcImV1LXdlc3QtMV9BVVlRNjc5eldcIixcbiAgfSxcbiAgdGVzdDoge1xuICAgIGF1dGhVcmw6IFwiaHR0cHM6Ly9hdXRoLnRlc3QuY29nbml0by52eWRldi5pb1wiLFxuICAgIGp3a3NVcmw6XG4gICAgICBcImh0dHBzOi8vY29nbml0by1pZHAuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vZXUtd2VzdC0xX1o1M2I5QWJlVC8ud2VsbC1rbm93bi9qd2tzLmpzb25cIixcbiAgICBvcGVuSWRVcmw6XG4gICAgICBcImh0dHBzOi8vY29nbml0by1pZHAuZXUtd2VzdC0xLmFtYXpvbmF3cy5jb20vZXUtd2VzdC0xX1o1M2I5QWJlVC8ud2VsbC1rbm93bi9vcGVuaWQtY29uZmlndXJhdGlvblwiLFxuICAgIGlzc3VlcjogXCJodHRwczovL2NvZ25pdG8taWRwLmV1LXdlc3QtMS5hbWF6b25hd3MuY29tL2V1LXdlc3QtMV9aNTNiOUFiZVRcIixcbiAgICB1c2VyUG9vbElkOiBcImV1LXdlc3QtMV9aNTNiOUFiZVRcIixcbiAgfSxcbn1cbiJdfQ==
|