@codedrifters/configulator 0.0.40 → 0.0.41
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.
|
@@ -27,6 +27,10 @@ export interface DeployWorkflowOptions {
|
|
|
27
27
|
* Options for the build workflow, if no build workflow is provided.
|
|
28
28
|
*/
|
|
29
29
|
readonly buildWorkflowOptions?: Partial<BuildWorkflowOptions>;
|
|
30
|
+
/**
|
|
31
|
+
* Projects that should complete deployment before this one starts.
|
|
32
|
+
*/
|
|
33
|
+
readonly deployAfterTargets?: Array<AwsDeploymentTarget>;
|
|
30
34
|
}
|
|
31
35
|
export declare class AwsDeployWorkflow extends Component {
|
|
32
36
|
project: AwsCdkTypeScriptApp;
|
|
@@ -57,6 +61,10 @@ export declare class AwsDeployWorkflow extends Component {
|
|
|
57
61
|
* Was this workflow created externally?
|
|
58
62
|
*/
|
|
59
63
|
externalWorkflow: boolean;
|
|
64
|
+
/**
|
|
65
|
+
* Projects that should complete deployment before this one starts.
|
|
66
|
+
*/
|
|
67
|
+
deployAfterTargets: Array<AwsDeploymentTarget>;
|
|
60
68
|
constructor(project: AwsCdkTypeScriptApp, options?: DeployWorkflowOptions);
|
|
61
69
|
setupNode: () => Array<JobStep>;
|
|
62
70
|
setupPnpm: () => Array<JobStep>;
|
|
@@ -139,6 +139,7 @@ class AwsDeployWorkflow extends projen_1.Component {
|
|
|
139
139
|
options.awsDeploymentTargets ??
|
|
140
140
|
aws_1.AwsDeploymentConfig.of(project)?.awsDeploymentTargets.filter((target) => target.awsStageType === this.awsStageType && target.ciDeployment) ??
|
|
141
141
|
[];
|
|
142
|
+
this.deployAfterTargets = options.deployAfterTargets ?? [];
|
|
142
143
|
/***************************************************************************
|
|
143
144
|
*
|
|
144
145
|
* Build Workflow Options
|
|
@@ -220,17 +221,26 @@ class AwsDeployWorkflow extends projen_1.Component {
|
|
|
220
221
|
* Add Deployments to workflow
|
|
221
222
|
*
|
|
222
223
|
**************************************************************************/
|
|
223
|
-
|
|
224
|
-
|
|
224
|
+
const buildJobName = (target) => {
|
|
225
|
+
return [
|
|
225
226
|
target.awsStageType,
|
|
226
227
|
target.awsEnvironmentType,
|
|
227
228
|
"deploy",
|
|
228
|
-
|
|
229
|
+
target.project.name,
|
|
229
230
|
target.account,
|
|
230
231
|
target.region,
|
|
231
232
|
].join("-");
|
|
233
|
+
};
|
|
234
|
+
this.awsDeploymentTargets.forEach((target) => {
|
|
235
|
+
const deployJobName = buildJobName(target);
|
|
232
236
|
this.buildWorkflow.addPostBuildJob(deployJobName, {
|
|
233
|
-
name: `Deploy ${target.awsStageType}/${target.awsEnvironmentType}/${target.account}/${target.region}`,
|
|
237
|
+
name: `Deploy ${this.project.name} ${target.awsStageType}/${target.awsEnvironmentType}/${target.account}/${target.region}`,
|
|
238
|
+
needs: [
|
|
239
|
+
"build",
|
|
240
|
+
...this.deployAfterTargets.map((p) => {
|
|
241
|
+
return buildJobName(p);
|
|
242
|
+
}),
|
|
243
|
+
],
|
|
234
244
|
runsOn: ["ubuntu-latest"],
|
|
235
245
|
permissions: {
|
|
236
246
|
contents: workflows_model_1.JobPermission.READ,
|
|
@@ -255,4 +265,4 @@ class AwsDeployWorkflow extends projen_1.Component {
|
|
|
255
265
|
}
|
|
256
266
|
}
|
|
257
267
|
exports.AwsDeployWorkflow = AwsDeployWorkflow;
|
|
258
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWRlcGxveS13b3JrZmxvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93b3JrZmxvd3MvYXdzLWRlcGxveS13b3JrZmxvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBbUM7QUFFbkMsNENBQXVFO0FBQ3ZFLDhDQUEyQztBQUMzQyx1RUFBMkU7QUFFM0UsZ0NBQTZDO0FBQzdDLHdFQU1zQztBQUN0QywwQ0FBOEM7QUFDOUMsb0NBQXdEO0FBQ3hELDBDQUFzQztBQUV6QixRQUFBLGdCQUFnQixHQUFHLGFBQWEsQ0FBQztBQTZCOUMsTUFBYSxpQkFBa0IsU0FBUSxrQkFBUztJQUN2QyxNQUFNLENBQUMsRUFBRSxDQUNkLE9BQTRCLEVBQzVCLGFBQTRCO1FBRTVCLE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBWSxFQUEwQixFQUFFLENBQ3pELENBQUMsWUFBWSxpQkFBaUIsSUFBSSxDQUFDLENBQUMsYUFBYSxLQUFLLGFBQWEsQ0FBQztRQUN0RSxPQUFPLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFrQ0QsWUFDUyxPQUE0QixFQUNuQyxVQUFpQyxFQUFFO1FBRW5DLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUhSLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBdkJyQzs7OztXQUlHO1FBQ0ksdUJBQWtCLEdBQXVCLDRDQUFvQixDQUFDLE9BQU8sQ0FBQztRQTBOdEUsY0FBUyxHQUFHLEdBQW1CLEVBQUU7WUFDdEMsT0FBTztnQkFDTDtvQkFDRSxJQUFJLEVBQUUsWUFBWTtvQkFDbEIsSUFBSSxFQUFFLHVCQUF1QjtvQkFDN0IsSUFBSSxFQUFFO3dCQUNKLENBQUMsY0FBYyxDQUFDLEVBQUUsa0JBQU8sQ0FBQyxjQUFjO3FCQUN6QztvQkFDRCxnRUFBZ0U7b0JBQ2hFLGNBQWMsRUFBRSxDQUFDO2lCQUNsQjthQUNGLENBQUM7UUFDSixDQUFDLENB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V0FBVyxFQUFFLGFBQWE7Z0JBQzFCLEtBQUssRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUNyQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUEyRUQsYUFBYTtRQUNYOztXQUVHO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxpQkFBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUM3RCxJQUFJLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDO2dCQUNuQyxJQUFJLEVBQUUsb0JBQW9CO2dCQUMxQixHQUFHLEVBQUUsY0FBYyx5QkFBaUIsRUFBRTthQUN2QyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3hCLENBQUM7Q0FDRjtBQXpVRCw4Q0F5VUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tIFwicHJvamVuXCI7XG5pbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwIH0gZnJvbSBcInByb2plbi9saWIvYXdzY2RrXCI7XG5pbXBvcnQgeyBCdWlsZFdvcmtmbG93LCBCdWlsZFdvcmtmbG93T3B0aW9ucyB9IGZyb20gXCJwcm9qZW4vbGliL2J1aWxkXCI7XG5pbXBvcnQgeyBHaXRIdWIgfSBmcm9tIFwicHJvamVuL2xpYi9naXRodWJcIjtcbmltcG9ydCB7IEpvYlBlcm1pc3Npb24sIEpvYlN0ZXAgfSBmcm9tIFwicHJvamVuL2xpYi9naXRodWIvd29ya2Zsb3dzLW1vZGVsXCI7XG5pbXBvcnQgeyBWYWx1ZU9mIH0gZnJvbSBcInR5cGUtZmVzdFwiO1xuaW1wb3J0IHsgQXdzRGVwbG95bWVudENvbmZpZyB9IGZyb20gXCIuLi9hd3NcIjtcbmltcG9ydCB7XG4gIEFXU19FTlZJUk9OTUVOVF9UWVBFLFxuICBBV1NfU1RBR0VfVFlQRSxcbiAgQXdzRGVwbG95bWVudFRhcmdldCxcbiAgQXdzRW52aXJvbm1lbnRUeXBlLFxuICBBd3NTdGFnZVR5cGUsXG59IGZyb20gXCIuLi9hd3MvYXdzLWRlcGxveW1lbnQtdGFyZ2V0XCI7XG5pbXBvcnQgeyBNb25vcmVwb1Byb2plY3QgfSBmcm9tIFwiLi4vcHJvamVjdHNcIjtcbmltcG9ydCB7IFJPT1RfQ0lfVEFTS19OQU1FLCBUdXJib1JlcG8gfSBmcm9tIFwiLi4vdHVyYm9cIjtcbmltcG9ydCB7IFZFUlNJT04gfSBmcm9tIFwiLi4vdmVyc2lvbnNcIjtcblxuZXhwb3J0IGNvbnN0IFBST0RfREVQTE9ZX05BTUUgPSBcInByb2QtZGVwbG95XCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVwbG95V29ya2Zsb3dPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoYXQgdHlwZSBvZiBkZXBsb3kgaXMgdGhpcyB3b3JrZmxvdyBmb3I/XG4gICAqXG4gICAqIEBkZWZhdWx0IEFXU19TVEFHRV9UWVBFLkRFVlxuICAgKi9cbiAgcmVhZG9ubHkgYXdzU3RhZ2VUeXBlPzogVmFsdWVPZjx0eXBlb2YgQVdTX1NUQUdFX1RZUEU+O1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbGx5IGZlZWQgYSBsaXN0IG9mIHRhcmdldHMgdG8gZGVwbG95IHRvLlxuICAgKlxuICAgKiBAZGVmYXVsdCBkaXNjb3ZlcnMgYWxsIHRhcmdldHMgdXNpbmcgc3RhZ2VUeXBlXG4gICAqL1xuICByZWFkb25seSBhd3NEZXBsb3ltZW50VGFyZ2V0cz86IEFycmF5PEF3c0RlcGxveW1lbnRUYXJnZXQ+O1xuXG4gIC8qKlxuICAgKiBFeGlzdGluZyB3b3JrZmxvdywgdXNlZnVsIGlmIHdlJ3JlIHRhY2tpbmcgZGVwbG95bWVudHMgb250byBhbiBleGlzdGluZ1xuICAgKiBidWlsZCB3b3JrZmxvd1xuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRXb3JrZmxvdz86IEJ1aWxkV29ya2Zsb3c7XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRoZSBidWlsZCB3b3JrZmxvdywgaWYgbm8gYnVpbGQgd29ya2Zsb3cgaXMgcHJvdmlkZWQuXG4gICAqL1xuICByZWFkb25seSBidWlsZFdvcmtmbG93T3B0aW9ucz86IFBhcnRpYWw8QnVpbGRXb3JrZmxvd09wdGlvbnM+O1xufVxuXG5leHBvcnQgY2xhc3MgQXdzRGVwbG95V29ya2Zsb3cgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwdWJsaWMgc3RhdGljIG9mKFxuICAgIHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsXG4gICAgYnVpbGRXb3JrZmxvdzogQnVpbGRXb3JrZmxvdyxcbiAgKTogQXdzRGVwbG95V29ya2Zsb3cgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGlzRGVmaW5lZCA9IChjOiBDb21wb25lbnQpOiBjIGlzIEF3c0RlcGxveVdvcmtmbG93ID0+XG4gICAgICBjIGluc3RhbmNlb2YgQXdzRGVwbG95V29ya2Zsb3cgJiYgYy5idWlsZFdvcmtmbG93ID09PSBidWlsZFdvcmtmbG93O1xuICAgIHJldHVybiBwcm9qZWN0LmNvbXBvbmVudHMuZmluZChpc0RlZmluZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByb290IHByb2plY3QgZm9yIHRoaXMgZGVwbG95IHdvcmtmbG93LiBNdXN0IGJlIGEgbW9ub3JlcG8gcHJvamVjdC5cbiAgICovXG4gIHByaXZhdGUgcm9vdFByb2plY3Q6IE1vbm9yZXBvUHJvamVjdDtcblxuICAvKipcbiAgICogV2hhdCB0eXBlIG9mIGRlcGxveSBpcyB0aGlzIHdvcmtmbG93IGZvcj9cbiAgICovXG4gIHB1YmxpYyBhd3NTdGFnZVR5cGU6IEF3c1N0YWdlVHlwZTtcblxuICAvKipcbiAgICogQVdTIGVudmlyb25tZW50IHR5cGUsIHN1Y2ggYXMgcHJpbWFyeSBvciBzZWNvbmRhcnkuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdwcmltYXJ5JyAodGhpcyBpcyB0aGUgb25seSB0eXBlIHN1cHBvcnRlZCBjdXJyZW50bHkpXG4gICAqL1xuICBwdWJsaWMgYXdzRW52aXJvbm1lbnRUeXBlOiBBd3NFbnZpcm9ubWVudFR5cGUgPSBBV1NfRU5WSVJPTk1FTlRfVFlQRS5QUklNQVJZO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiB0YXJnZXRzIHRvIGRlcGxveSB0by5cbiAgICovXG4gIHJlYWRvbmx5IGF3c0RlcGxveW1lbnRUYXJnZXRzOiBBcnJheTxBd3NEZXBsb3ltZW50VGFyZ2V0PjtcblxuICAvKipcbiAgICogSG9sZCB0aGUgZGVwbG95IHdvcmtmbG93IHNvIHdlIGNhbiBhZGQgdG8gaXQgaW4gcHJlU3ludGhcbiAgICovXG4gIHB1YmxpYyBidWlsZFdvcmtmbG93OiBCdWlsZFdvcmtmbG93O1xuXG4gIC8qKlxuICAgKiBXYXMgdGhpcyB3b3JrZmxvdyBjcmVhdGVkIGV4dGVybmFsbHk/XG4gICAqL1xuICBwdWJsaWMgZXh0ZXJuYWxXb3JrZmxvdzogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcHJvamVjdDogQXdzQ2RrVHlwZVNjcmlwdEFwcCxcbiAgICBvcHRpb25zOiBEZXBsb3lXb3JrZmxvd09wdGlvbnMgPSB7fSxcbiAgKSB7XG4gICAgc3VwZXIocHJvamVjdCk7XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBSb290IHByb2plY3QgY2hlY2tcbiAgICAgKlxuICAgICAqIERldGVjdCB0aGUgcm9vdCBwcm9qZWN0IGFuZCBlbnN1cmUgaXQncyBvZiB0eXBlIE1vbm9yZXBvUHJvamVjdC5cbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGlmICghKHByb2plY3Qucm9vdCBpbnN0YW5jZW9mIE1vbm9yZXBvUHJvamVjdCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgXCJBd3NEZXBsb3lXb3JrZmxvdyByZXF1aXJlcyB0aGUgcm9vdCBwcm9qZWN0IHRvIGJlIGEgTW9ub3JlcG9Qcm9qZWN0XCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMucm9vdFByb2plY3QgPSBwcm9qZWN0LnJvb3Q7XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBHaXRIdWIgQ2hlY2tcbiAgICAgKlxuICAgICAqIE1ha2Ugc3VyZSBnaXRodWIgY29uZmlnIGlzIGFjdGl2ZSBpbiB0aGUgcHJvamVjdC4gVGhpcyBpcyB0byBlbnN1cmUgYWxsXG4gICAgICogd29ya2Zsb3dzIHdpbGwgYmUgb3V0cHV0IHByb3Blcmx5IGR1cmluZyBzeW50aC5cbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGNvbnN0IGdpdGh1YiA9IEdpdEh1Yi5vZih0aGlzLnJvb3RQcm9qZWN0KTtcblxuICAgIGlmICghZ2l0aHViKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQXdzRGVwbG95V29ya2Zsb3cgcmVxdWlyZXMgYSBHaXRIdWIgY29tcG9uZW50IGluIHRoZSByb290IHByb2plY3RcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogVHVyYm9SZXBvIENoZWNrXG4gICAgICpcbiAgICAgKiBJZiB0dXJibyBpcyBlbmFibGVkLCB3ZSBtYXkgbmVlZCB0aGUgb3B0aW9ucyBsYXRlciBpbiB0aGlzIGZpbGUuXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBjb25zdCB0dXJibyA9IFR1cmJvUmVwby5vZih0aGlzLnJvb3RQcm9qZWN0KTtcbiAgICBjb25zdCBidWlsZFdvcmtmbG93T3B0aW9uczogUGFydGlhbDxCdWlsZFdvcmtmbG93T3B0aW9ucz4gPVxuICAgICAgdHVyYm8/LnJlbW90ZUNhY2hlT3B0aW9uc1xuICAgICAgICA/IFR1cmJvUmVwby5idWlsZFdvcmtmbG93T3B0aW9ucyh0dXJiby5yZW1vdGVDYWNoZU9wdGlvbnMpXG4gICAgICAgIDoge307XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBXb3JrZmxvdyBEZXBsb3kgVHlwZVxuICAgICAqXG4gICAgICogV2hhdCB0eXBlIG9mIGVudmlyb25tZW50cyBhcmUgd2UgZGVwbG95aW5nIGludG8/IFdlJ2xsIGRlZmF1bHQgdG8gZGV2IHRvXG4gICAgICogYmUgc2FmZS5cbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIHRoaXMuYXdzU3RhZ2VUeXBlID0gb3B0aW9ucy5hd3NTdGFnZVR5cGUgPz8gQVdTX1NUQUdFX1RZUEUuREVWO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogV29ya2Zsb3cgRGVwbG95IFRhcmdldHNcbiAgICAgKlxuICAgICAqIFVzZSBwcm92aWRlZCB0YXJnZXRzIG9yIGRpc2NvdmVyIHRoZW0gYmFzZWQgb24gdGhlIGRlcGxveSB0eXBlLiBPbmx5XG4gICAgICogaW5jbHVkZSB0YXJnZXRzIHRoYXQgYXJlIG1hcmtlZCBmb3IgQ0kvQ0QuXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICB0aGlzLmF3c0RlcGxveW1lbnRUYXJnZXRzID1cbiAgICAgIG9wdGlvbnMuYXdzRGVwbG95bWVudFRhcmdldHMgPz9cbiAgICAgIEF3c0RlcGxveW1lbnRDb25maWcub2YocHJvamVjdCk/LmF3c0RlcGxveW1lbnRUYXJnZXRzLmZpbHRlcihcbiAgICAgICAgKHRhcmdldCkgPT5cbiAgICAgICAgICB0YXJnZXQuYXdzU3RhZ2VUeXBlID09PSB0aGlzLmF3c1N0YWdlVHlwZSAmJiB0YXJnZXQuY2lEZXBsb3ltZW50LFxuICAgICAgKSA/P1xuICAgICAgW107XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBCdWlsZCBXb3JrZmxvdyBPcHRpb25zXG4gICAgICpcbiAgICAgKiBDYW4ndCB1c2UgdGhlIG9wdGlvbnMgaWYgYW4gZXhpc3Rpbmcgd29ya2Zsb3cgd2FzIHBhc3NlZCBpbi5cbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGlmIChvcHRpb25zLmJ1aWxkV29ya2Zsb3cgJiYgb3B0aW9ucy5idWlsZFdvcmtmbG93T3B0aW9ucykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkNhbm5vdCBwcm92aWRlIGJvdGggYnVpbGRXb3JrZmxvdyBhbmQgYnVpbGRXb3JrZmxvd09wdGlvbnNcIixcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5leHRlcm5hbFdvcmtmbG93ID0gISFvcHRpb25zLmJ1aWxkV29ya2Zsb3c7XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBCdWlsZCBXb3JrZmxvd1xuICAgICAqXG4gICAgICogQ3JlYXRlIGEgd29ya2Zsb3cgZWl0aGVyIGJhc2VkIG9uIGlucHV0IG9yIGZyb20gc2NyYXRjaC5cbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIHRoaXMuYnVpbGRXb3JrZmxvdyA9XG4gICAgICBvcHRpb25zLmJ1aWxkV29ya2Zsb3cgPz9cbiAgICAgIG5ldyBCdWlsZFdvcmtmbG93KHRoaXMucm9vdFByb2plY3QsIHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIE5hbWUgYmFzZWQgb24gcHJvamVjdCBhbmQgZW52aXJvbm1lbnQuXG4gICAgICAgICAqL1xuICAgICAgICBuYW1lOiBbXG4gICAgICAgICAgXCJkZXBsb3lcIixcbiAgICAgICAgICBwcm9qZWN0Lm5hbWUsXG4gICAgICAgICAgdGhpcy5hd3NTdGFnZVR5cGUsXG4gICAgICAgICAgdGhpcy5hd3NFbnZpcm9ubWVudFR5cGUsXG4gICAgICAgIF0uam9pbihcIi1cIiksXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFVzZSB0aGUgcm9vdCBwcm9qZWN0cyBidWlsZCB0YXNrLlxuICAgICAgICAgKi9cbiAgICAgICAgYnVpbGRUYXNrOiB0aGlzLnJvb3RQcm9qZWN0LmJ1aWxkVGFzayxcblxuICAgICAgICAvKipcbiAgICAgICAgICogVXNlIHB1c2ggdHJpZ2dlcnMgYmFzZWQgbiB0aGUgYnJhbmNoIGNvbmZpZyBmb3IgZWFjaCBlbnZpcm9ubWVudC5cbiAgICAgICAgICovXG4gICAgICAgIHdvcmtmbG93VHJpZ2dlcnM6IHtcbiAgICAgICAgICBwdXNoOiB7XG4gICAgICAgICAgICBicmFuY2hlczogW1xuICAgICAgICAgICAgICAuLi50aGlzLmF3c0RlcGxveW1lbnRUYXJnZXRzLmZsYXRNYXAoKHQpID0+XG4gICAgICAgICAgICAgICAgdC5icmFuY2hlcy5tYXAoKGIpID0+IGIuYnJhbmNoKSxcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB3b3JrZmxvd0Rpc3BhdGNoOiB7fSxcbiAgICAgICAgICAuLi5vcHRpb25zLmJ1aWxkV29ya2Zsb3dPcHRpb25zPy53b3JrZmxvd1RyaWdnZXJzLFxuICAgICAgICB9LFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBOZXZlciBhbGxvdyBtdXRhdGlvbnMgZm9yIGRlcGxveXMuIFRoaXMgc2hvdWxkIGhhdmUgYmVlbiBoYW5kbGVkXG4gICAgICAgICAqIGR1cmluZyBidWlsZC5cbiAgICAgICAgICovXG4gICAgICAgIG11dGFibGVCdWlsZDogZmFsc2UsXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIERvIHRoaXMgcHJlLW1lcmdlIG9mIHBlcm1pc3Npb25zIGFuZCBidWlsZCBzdGVwc1xuICAgICAgICAgKi9cbiAgICAgICAgLi4ub3B0aW9ucy5idWlsZFdvcmtmbG93T3B0aW9ucyxcblxuICAgICAgICAvKipcbiAgICAgICAgICogU29tZSBhZGRpdGlvbmFsIHBlcm1pc3Npb25zIG1heSBiZSByZXF1aXJlZCB3aGVuIHR1cmJvJ3MgaW52b2x2ZWQuXG4gICAgICAgICAqL1xuICAgICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICAgIC4uLm9wdGlvbnMuYnVpbGRXb3JrZmxvd09wdGlvbnM/LnBlcm1pc3Npb25zLFxuICAgICAgICAgIC4uLmJ1aWxkV29ya2Zsb3dPcHRpb25zPy5wZXJtaXNzaW9ucyxcbiAgICAgICAgfSxcblxuICAgICAgICAvKipcbiAgICAgICAgICogQXNzZW1ibGUgYWxsIHByZS1idWlsZCBzdGVwc1xuICAgICAgICAgKi9cbiAgICAgICAgcHJlQnVpbGRTdGVwczogW1xuICAgICAgICAgIC4uLnRoaXMuc2V0dXBQbnBtKCksXG4gICAgICAgICAgLi4udGhpcy5zZXR1cE5vZGUoKSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiBcIkluc3RhbGwgZGVwZW5kZW5jaWVzXCIsXG4gICAgICAgICAgICBydW46IFwicG5wbSBpIC0tbm8tZnJvemVuLWxvY2tmaWxlXCIsXG4gICAgICAgICAgfSxcbiAgICAgICAgICAuLi4ob3B0aW9ucy5idWlsZFdvcmtmbG93T3B0aW9ucz8ucHJlQnVpbGRTdGVwcyA/PyBbXSksXG4gICAgICAgICAgLi4uKGJ1aWxkV29ya2Zsb3dPcHRpb25zPy5wcmVCdWlsZFN0ZXBzID8/IFtdKSxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogQWRkIERlcGxveW1lbnRzIHRvIHdvcmtmbG93XG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICB0aGlzLmF3c0RlcGxveW1lbnRUYXJnZXRzLmZvckVhY2goKHRhcmdldCkgPT4ge1xuICAgICAgY29uc3QgZGVwbG95Sm9iTmFtZSA9IFtcbiAgICAgICAgdGFyZ2V0LmF3c1N0YWdlVHlwZSxcbiAgICAgICAgdGFyZ2V0LmF3c0Vudmlyb25tZW50VHlwZSxcbiAgICAgICAgXCJkZXBsb3lcIixcbiAgICAgICAgdGhpcy5wcm9qZWN0Lm5hbWUsXG4gICAgICAgIHRhcmdldC5hY2NvdW50LFxuICAgICAgICB0YXJnZXQucmVnaW9uLFxuICAgICAgXS5qb2luKFwiLVwiKTtcblxuICAgICAgdGhpcy5idWlsZFdvcmtmbG93LmFkZFBvc3RCdWlsZEpvYihkZXBsb3lKb2JOYW1lLCB7XG4gICAgICAgIG5hbWU6IGBEZXBsb3kgJHt0YXJnZXQuYXdzU3RhZ2VUeXBlfS8ke3RhcmdldC5hd3NFbnZpcm9ubWVudFR5cGV9LyR7dGFyZ2V0LmFjY291bnR9LyR7dGFyZ2V0LnJlZ2lvbn1gLFxuICAgICAgICBydW5zT246IFtcInVidW50dS1sYXRlc3RcIl0sXG4gICAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgICAgY29udGVudHM6IEpvYlBlcm1pc3Npb24uUkVBRCxcbiAgICAgICAgICBpZFRva2VuOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgICB9LFxuICAgICAgICBjb25jdXJyZW5jeTogZGVwbG95Sm9iTmFtZSxcbiAgICAgICAgc3RlcHM6IFsuLi50aGlzLmRlcGxveVN0ZXBzKHRhcmdldCldLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2V0dXBOb2RlID0gKCk6IEFycmF5PEpvYlN0ZXA+ID0+IHtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICBuYW1lOiBcIlNldHVwIE5vZGVcIixcbiAgICAgICAgdXNlczogXCJhY3Rpb25zL3NldHVwLW5vZGVAdjRcIixcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgIFtcIm5vZGUtdmVyc2lvblwiXTogVkVSU0lPTi5OT0RFX1dPUktGTE9XUyxcbiAgICAgICAgfSxcbiAgICAgICAgLy8gb2NjYXNpb25hbGx5IHRoaXMgc3RlcCBmYWlscyBkdWUgdG8gaW50ZXJuYWwgaXNzdWVzIGF0IGdpdGh1YlxuICAgICAgICB0aW1lb3V0TWludXRlczogMSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfTtcblxuICBwdWJsaWMgc2V0dXBQbnBtID0gKCk6IEFycmF5PEpvYlN0ZXA+ID0+IHtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICBuYW1lOiBcIlNldHVwIFBOUE1cIixcbiAgICAgICAgdXNlczogXCJwbnBtL2FjdGlvbi1zZXR1cEB2M1wiLFxuICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgdmVyc2lvbjogVkVSU0lPTi5QTlBNX1ZFUlNJT04sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF07XG4gIH07XG5cbiAgcHJpdmF0ZSBkZXBsb3lTdGVwcyA9ICh0YXJnZXQ6IEF3c0RlcGxveW1lbnRUYXJnZXQpOiBBcnJheTxKb2JTdGVwPiA9PiB7XG4gICAgY29uc3Qge1xuICAgICAgYXdzU3RhZ2VUeXBlLFxuICAgICAgYXdzRW52aXJvbm1lbnRUeXBlLFxuICAgICAgYWNjb3VudCxcbiAgICAgIHJlZ2lvbixcbiAgICAgIGNpRGVwbG95bWVudENvbmZpZyxcbiAgICAgIGF3c0RlcGxveW1lbnRDb25maWcsXG4gICAgfSA9IHRhcmdldDtcbiAgICBjb25zdCB7IHJvbGVBcm4sIHN0YWNrUGF0dGVybiB9ID0gY2lEZXBsb3ltZW50Q29uZmlnID8/IHt9O1xuICAgIGNvbnN0IHsgcm9vdENka091dCB9ID0gYXdzRGVwbG95bWVudENvbmZpZztcblxuICAgIHJldHVybiBbXG4gICAgICAuLi50aGlzLnNldHVwUG5wbSgpLFxuICAgICAgLi4udGhpcy5zZXR1cE5vZGUoKSxcblxuICAgICAgLyoqXG4gICAgICAgKiBJbnN0YWxsIENES1xuICAgICAgICovXG4gICAgICB7XG4gICAgICAgIG5hbWU6IFwiSW5zdGFsbCBDREtcIixcbiAgICAgICAgcnVuOiBcInBucG0gYWRkIGF3cy1jZGtcIixcbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogQ29uZmlndXJlIEFXUyBjcmVkcy5cbiAgICAgICAqL1xuICAgICAge1xuICAgICAgICBuYW1lOiBgQVdTIENyZWRzICR7YXdzU3RhZ2VUeXBlfS8ke2F3c0Vudmlyb25tZW50VHlwZX0vJHthY2NvdW50fS8ke3JlZ2lvbn1gLFxuICAgICAgICB1c2VzOiBcImF3cy1hY3Rpb25zL2NvbmZpZ3VyZS1hd3MtY3JlZGVudGlhbHNAdjRcIixcbiAgICAgICAgd2l0aDoge1xuICAgICAgICAgIFwicm9sZS10by1hc3N1bWVcIjogcm9sZUFybixcbiAgICAgICAgICBcImF3cy1yZWdpb25cIjogcmVnaW9uLFxuICAgICAgICAgIFwicm9sZS1kdXJhdGlvbi1zZWNvbmRzXCI6IDkwMCwgLy8gMTUgbWludXRlc1xuICAgICAgICB9LFxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBSdW4gQ0RLIERlcGxveVxuICAgICAgICovXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGBEZXBsb3kgJHthd3NTdGFnZVR5cGV9LyR7YXdzRW52aXJvbm1lbnRUeXBlfS8ke2FjY291bnR9LyR7cmVnaW9ufWAsXG4gICAgICAgIHJ1bjogYHBucG0gZGx4IGF3cy1jZGsgZGVwbG95IC0tbm8tcm9sbGJhY2sgLS1yZXF1aXJlLWFwcHJvdmFsPW5ldmVyIC0tYXBwPSR7cm9vdENka091dH0gXCIke3N0YWNrUGF0dGVybn1cImAsXG4gICAgICB9LFxuICAgIF07XG4gIH07XG5cbiAgcHJlU3ludGhlc2l6ZSgpOiB2b2lkIHtcbiAgICAvKipcbiAgICAgKiBFbnN1cmUgdHVyYm8gaXMgYWN0aXZlIHdoZW4gbmVlZGVkLlxuICAgICAqL1xuICAgIGlmICghdGhpcy5leHRlcm5hbFdvcmtmbG93ICYmIFR1cmJvUmVwby5vZih0aGlzLnJvb3RQcm9qZWN0KSkge1xuICAgICAgdGhpcy5idWlsZFdvcmtmbG93LmFkZFBvc3RCdWlsZFN0ZXBzKHtcbiAgICAgICAgbmFtZTogXCJCdWlsZCBTdWIgUHJvamVjdHNcIixcbiAgICAgICAgcnVuOiBgbnB4IHByb2plbiAke1JPT1RfQ0lfVEFTS19OQU1FfWAsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBzdXBlci5wcmVTeW50aGVzaXplKCk7XG4gIH1cbn1cbiJdfQ==
|
|
268
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWRlcGxveS13b3JrZmxvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy93b3JrZmxvd3MvYXdzLWRlcGxveS13b3JrZmxvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBbUM7QUFFbkMsNENBQXVFO0FBQ3ZFLDhDQUEyQztBQUMzQyx1RUFBMkU7QUFFM0UsZ0NBQTZDO0FBQzdDLHdFQU1zQztBQUN0QywwQ0FBOEM7QUFDOUMsb0NBQXdEO0FBQ3hELDBDQUFzQztBQUV6QixRQUFBLGdCQUFnQixHQUFHLGFBQWEsQ0FBQztBQWtDOUMsTUFBYSxpQkFBa0IsU0FBUSxrQkFBUztJQUN2QyxNQUFNLENBQUMsRUFBRSxDQUNkLE9BQTRCLEVBQzVCLGFBQTRCO1FBRTVCLE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBWSxFQUEwQixFQUFFLENBQ3pELENBQUMsWUFBWSxpQkFBaUIsSUFBSSxDQUFDLENBQUMsYUFBYSxLQUFLLGFBQWEsQ0FBQztRQUN0RSxPQUFPLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUF1Q0QsWUFDUyxPQUE0QixFQUNuQyxVQUFpQyxFQUFFO1FBRW5DLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUhSLFlBQU8sR0FBUCxPQUFPLENBQXFCO1FBNUJyQzs7OztXQUlHO1FBQ0ksdUJBQWtCLEdBQXVCLDRDQUFvQixDQUFDLE9BQU8sQ0FBQztRQTJPdEUsY0FBUyxHQUFHLEdBQW1CLEVBQUU7WUFDdEMsT0FBTztnQkFDTDtvQkFDRSxJQUFJLEVBQUUsWUFBWTtvQkFDbEIsSUFBSSxFQUFFLHVCQUF1QjtvQkFDN0IsSUFBSSxFQUFFO3dCQUNKLENBQUMsY0FBYyxDQUFDLEVBQUUsa0JBQU8sQ0FBQyxjQUFjO3FCQUN6QztvQkFDRCxnRUFBZ0U7b0JBQ2hFLGNBQWMsRUFBRSxDQUFDO2lCQUNsQjthQUNGLENBQUM7UUFDSixDQUFDLENB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QUMsa0JBQWtCLElBQUksTUFBTSxDQUFDLE9BQU8sSUFBSSxNQUFNLENBQUMsTUFBTSxFQUFFO2dCQUMxSCxLQUFLLEVBQUU7b0JBQ0wsT0FBTztvQkFDUCxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTt3QkFDbkMsT0FBTyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ3pCLENBQUMsQ0FBQztpQkFDSDtnQkFDRCxNQUFNLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBQ3pCLFdBQVcsRUFBRTtvQkFDWCxRQUFRLEVBQUUsK0JBQWEsQ0FBQyxJQUFJO29CQUM1QixPQUFPLEVBQUUsK0JBQWEsQ0FBQyxLQUFLO2lCQUM3QjtnQkFDRCxXQUFXLEVBQUUsYUFBYTtnQkFDMUIsS0FBSyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3JDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQTJFRCxhQUFhO1FBQ1g7O1dBRUc7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixJQUFJLGlCQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQzdELElBQUksQ0FBQyxhQUFhLENBQUMsaUJBQWlCLENBQUM7Z0JBQ25DLElBQUksRUFBRSxvQkFBb0I7Z0JBQzFCLEdBQUcsRUFBRSxjQUFjLHlCQUFpQixFQUFFO2FBQ3ZDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFFRCxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDeEIsQ0FBQztDQUNGO0FBMVZELDhDQTBWQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gXCJwcm9qZW5cIjtcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tIFwicHJvamVuL2xpYi9hd3NjZGtcIjtcbmltcG9ydCB7IEJ1aWxkV29ya2Zsb3csIEJ1aWxkV29ya2Zsb3dPcHRpb25zIH0gZnJvbSBcInByb2plbi9saWIvYnVpbGRcIjtcbmltcG9ydCB7IEdpdEh1YiB9IGZyb20gXCJwcm9qZW4vbGliL2dpdGh1YlwiO1xuaW1wb3J0IHsgSm9iUGVybWlzc2lvbiwgSm9iU3RlcCB9IGZyb20gXCJwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWxcIjtcbmltcG9ydCB7IFZhbHVlT2YgfSBmcm9tIFwidHlwZS1mZXN0XCI7XG5pbXBvcnQgeyBBd3NEZXBsb3ltZW50Q29uZmlnIH0gZnJvbSBcIi4uL2F3c1wiO1xuaW1wb3J0IHtcbiAgQVdTX0VOVklST05NRU5UX1RZUEUsXG4gIEFXU19TVEFHRV9UWVBFLFxuICBBd3NEZXBsb3ltZW50VGFyZ2V0LFxuICBBd3NFbnZpcm9ubWVudFR5cGUsXG4gIEF3c1N0YWdlVHlwZSxcbn0gZnJvbSBcIi4uL2F3cy9hd3MtZGVwbG95bWVudC10YXJnZXRcIjtcbmltcG9ydCB7IE1vbm9yZXBvUHJvamVjdCB9IGZyb20gXCIuLi9wcm9qZWN0c1wiO1xuaW1wb3J0IHsgUk9PVF9DSV9UQVNLX05BTUUsIFR1cmJvUmVwbyB9IGZyb20gXCIuLi90dXJib1wiO1xuaW1wb3J0IHsgVkVSU0lPTiB9IGZyb20gXCIuLi92ZXJzaW9uc1wiO1xuXG5leHBvcnQgY29uc3QgUFJPRF9ERVBMT1lfTkFNRSA9IFwicHJvZC1kZXBsb3lcIjtcblxuZXhwb3J0IGludGVyZmFjZSBEZXBsb3lXb3JrZmxvd09wdGlvbnMge1xuICAvKipcbiAgICogV2hhdCB0eXBlIG9mIGRlcGxveSBpcyB0aGlzIHdvcmtmbG93IGZvcj9cbiAgICpcbiAgICogQGRlZmF1bHQgQVdTX1NUQUdFX1RZUEUuREVWXG4gICAqL1xuICByZWFkb25seSBhd3NTdGFnZVR5cGU/OiBWYWx1ZU9mPHR5cGVvZiBBV1NfU1RBR0VfVFlQRT47XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsbHkgZmVlZCBhIGxpc3Qgb2YgdGFyZ2V0cyB0byBkZXBsb3kgdG8uXG4gICAqXG4gICAqIEBkZWZhdWx0IGRpc2NvdmVycyBhbGwgdGFyZ2V0cyB1c2luZyBzdGFnZVR5cGVcbiAgICovXG4gIHJlYWRvbmx5IGF3c0RlcGxveW1lbnRUYXJnZXRzPzogQXJyYXk8QXdzRGVwbG95bWVudFRhcmdldD47XG5cbiAgLyoqXG4gICAqIEV4aXN0aW5nIHdvcmtmbG93LCB1c2VmdWwgaWYgd2UncmUgdGFja2luZyBkZXBsb3ltZW50cyBvbnRvIGFuIGV4aXN0aW5nXG4gICAqIGJ1aWxkIHdvcmtmbG93XG4gICAqL1xuICByZWFkb25seSBidWlsZFdvcmtmbG93PzogQnVpbGRXb3JrZmxvdztcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIGJ1aWxkIHdvcmtmbG93LCBpZiBubyBidWlsZCB3b3JrZmxvdyBpcyBwcm92aWRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkV29ya2Zsb3dPcHRpb25zPzogUGFydGlhbDxCdWlsZFdvcmtmbG93T3B0aW9ucz47XG5cbiAgLyoqXG4gICAqIFByb2plY3RzIHRoYXQgc2hvdWxkIGNvbXBsZXRlIGRlcGxveW1lbnQgYmVmb3JlIHRoaXMgb25lIHN0YXJ0cy5cbiAgICovXG4gIHJlYWRvbmx5IGRlcGxveUFmdGVyVGFyZ2V0cz86IEFycmF5PEF3c0RlcGxveW1lbnRUYXJnZXQ+O1xufVxuXG5leHBvcnQgY2xhc3MgQXdzRGVwbG95V29ya2Zsb3cgZXh0ZW5kcyBDb21wb25lbnQge1xuICBwdWJsaWMgc3RhdGljIG9mKFxuICAgIHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsXG4gICAgYnVpbGRXb3JrZmxvdzogQnVpbGRXb3JrZmxvdyxcbiAgKTogQXdzRGVwbG95V29ya2Zsb3cgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IGlzRGVmaW5lZCA9IChjOiBDb21wb25lbnQpOiBjIGlzIEF3c0RlcGxveVdvcmtmbG93ID0+XG4gICAgICBjIGluc3RhbmNlb2YgQXdzRGVwbG95V29ya2Zsb3cgJiYgYy5idWlsZFdvcmtmbG93ID09PSBidWlsZFdvcmtmbG93O1xuICAgIHJldHVybiBwcm9qZWN0LmNvbXBvbmVudHMuZmluZChpc0RlZmluZWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSByb290IHByb2plY3QgZm9yIHRoaXMgZGVwbG95IHdvcmtmbG93LiBNdXN0IGJlIGEgbW9ub3JlcG8gcHJvamVjdC5cbiAgICovXG4gIHByaXZhdGUgcm9vdFByb2plY3Q6IE1vbm9yZXBvUHJvamVjdDtcblxuICAvKipcbiAgICogV2hhdCB0eXBlIG9mIGRlcGxveSBpcyB0aGlzIHdvcmtmbG93IGZvcj9cbiAgICovXG4gIHB1YmxpYyBhd3NTdGFnZVR5cGU6IEF3c1N0YWdlVHlwZTtcblxuICAvKipcbiAgICogQVdTIGVudmlyb25tZW50IHR5cGUsIHN1Y2ggYXMgcHJpbWFyeSBvciBzZWNvbmRhcnkuXG4gICAqXG4gICAqIEBkZWZhdWx0ICdwcmltYXJ5JyAodGhpcyBpcyB0aGUgb25seSB0eXBlIHN1cHBvcnRlZCBjdXJyZW50bHkpXG4gICAqL1xuICBwdWJsaWMgYXdzRW52aXJvbm1lbnRUeXBlOiBBd3NFbnZpcm9ubWVudFR5cGUgPSBBV1NfRU5WSVJPTk1FTlRfVFlQRS5QUklNQVJZO1xuXG4gIC8qKlxuICAgKiBUaGUgbGlzdCBvZiB0YXJnZXRzIHRvIGRlcGxveSB0by5cbiAgICovXG4gIHJlYWRvbmx5IGF3c0RlcGxveW1lbnRUYXJnZXRzOiBBcnJheTxBd3NEZXBsb3ltZW50VGFyZ2V0PjtcblxuICAvKipcbiAgICogSG9sZCB0aGUgZGVwbG95IHdvcmtmbG93IHNvIHdlIGNhbiBhZGQgdG8gaXQgaW4gcHJlU3ludGhcbiAgICovXG4gIHB1YmxpYyBidWlsZFdvcmtmbG93OiBCdWlsZFdvcmtmbG93O1xuXG4gIC8qKlxuICAgKiBXYXMgdGhpcyB3b3JrZmxvdyBjcmVhdGVkIGV4dGVybmFsbHk/XG4gICAqL1xuICBwdWJsaWMgZXh0ZXJuYWxXb3JrZmxvdzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUHJvamVjdHMgdGhhdCBzaG91bGQgY29tcGxldGUgZGVwbG95bWVudCBiZWZvcmUgdGhpcyBvbmUgc3RhcnRzLlxuICAgKi9cbiAgcHVibGljIGRlcGxveUFmdGVyVGFyZ2V0czogQXJyYXk8QXdzRGVwbG95bWVudFRhcmdldD47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsXG4gICAgb3B0aW9uczogRGVwbG95V29ya2Zsb3dPcHRpb25zID0ge30sXG4gICkge1xuICAgIHN1cGVyKHByb2plY3QpO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogUm9vdCBwcm9qZWN0IGNoZWNrXG4gICAgICpcbiAgICAgKiBEZXRlY3QgdGhlIHJvb3QgcHJvamVjdCBhbmQgZW5zdXJlIGl0J3Mgb2YgdHlwZSBNb25vcmVwb1Byb2plY3QuXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBpZiAoIShwcm9qZWN0LnJvb3QgaW5zdGFuY2VvZiBNb25vcmVwb1Byb2plY3QpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQXdzRGVwbG95V29ya2Zsb3cgcmVxdWlyZXMgdGhlIHJvb3QgcHJvamVjdCB0byBiZSBhIE1vbm9yZXBvUHJvamVjdFwiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLnJvb3RQcm9qZWN0ID0gcHJvamVjdC5yb290O1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogR2l0SHViIENoZWNrXG4gICAgICpcbiAgICAgKiBNYWtlIHN1cmUgZ2l0aHViIGNvbmZpZyBpcyBhY3RpdmUgaW4gdGhlIHByb2plY3QuIFRoaXMgaXMgdG8gZW5zdXJlIGFsbFxuICAgICAqIHdvcmtmbG93cyB3aWxsIGJlIG91dHB1dCBwcm9wZXJseSBkdXJpbmcgc3ludGguXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBjb25zdCBnaXRodWIgPSBHaXRIdWIub2YodGhpcy5yb290UHJvamVjdCk7XG5cbiAgICBpZiAoIWdpdGh1Yikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBcIkF3c0RlcGxveVdvcmtmbG93IHJlcXVpcmVzIGEgR2l0SHViIGNvbXBvbmVudCBpbiB0aGUgcm9vdCBwcm9qZWN0XCIsXG4gICAgICApO1xuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIFR1cmJvUmVwbyBDaGVja1xuICAgICAqXG4gICAgICogSWYgdHVyYm8gaXMgZW5hYmxlZCwgd2UgbWF5IG5lZWQgdGhlIG9wdGlvbnMgbGF0ZXIgaW4gdGhpcyBmaWxlLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3QgdHVyYm8gPSBUdXJib1JlcG8ub2YodGhpcy5yb290UHJvamVjdCk7XG4gICAgY29uc3QgYnVpbGRXb3JrZmxvd09wdGlvbnM6IFBhcnRpYWw8QnVpbGRXb3JrZmxvd09wdGlvbnM+ID1cbiAgICAgIHR1cmJvPy5yZW1vdGVDYWNoZU9wdGlvbnNcbiAgICAgICAgPyBUdXJib1JlcG8uYnVpbGRXb3JrZmxvd09wdGlvbnModHVyYm8ucmVtb3RlQ2FjaGVPcHRpb25zKVxuICAgICAgICA6IHt9O1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogV29ya2Zsb3cgRGVwbG95IFR5cGVcbiAgICAgKlxuICAgICAqIFdoYXQgdHlwZSBvZiBlbnZpcm9ubWVudHMgYXJlIHdlIGRlcGxveWluZyBpbnRvPyBXZSdsbCBkZWZhdWx0IHRvIGRldiB0b1xuICAgICAqIGJlIHNhZmUuXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICB0aGlzLmF3c1N0YWdlVHlwZSA9IG9wdGlvbnMuYXdzU3RhZ2VUeXBlID8/IEFXU19TVEFHRV9UWVBFLkRFVjtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIFdvcmtmbG93IERlcGxveSBUYXJnZXRzXG4gICAgICpcbiAgICAgKiBVc2UgcHJvdmlkZWQgdGFyZ2V0cyBvciBkaXNjb3ZlciB0aGVtIGJhc2VkIG9uIHRoZSBkZXBsb3kgdHlwZS4gT25seVxuICAgICAqIGluY2x1ZGUgdGFyZ2V0cyB0aGF0IGFyZSBtYXJrZWQgZm9yIENJL0NELlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgdGhpcy5hd3NEZXBsb3ltZW50VGFyZ2V0cyA9XG4gICAgICBvcHRpb25zLmF3c0RlcGxveW1lbnRUYXJnZXRzID8/XG4gICAgICBBd3NEZXBsb3ltZW50Q29uZmlnLm9mKHByb2plY3QpPy5hd3NEZXBsb3ltZW50VGFyZ2V0cy5maWx0ZXIoXG4gICAgICAgICh0YXJnZXQpID0+XG4gICAgICAgICAgdGFyZ2V0LmF3c1N0YWdlVHlwZSA9PT0gdGhpcy5hd3NTdGFnZVR5cGUgJiYgdGFyZ2V0LmNpRGVwbG95bWVudCxcbiAgICAgICkgPz9cbiAgICAgIFtdO1xuXG4gICAgdGhpcy5kZXBsb3lBZnRlclRhcmdldHMgPSBvcHRpb25zLmRlcGxveUFmdGVyVGFyZ2V0cyA/PyBbXTtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIEJ1aWxkIFdvcmtmbG93IE9wdGlvbnNcbiAgICAgKlxuICAgICAqIENhbid0IHVzZSB0aGUgb3B0aW9ucyBpZiBhbiBleGlzdGluZyB3b3JrZmxvdyB3YXMgcGFzc2VkIGluLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgaWYgKG9wdGlvbnMuYnVpbGRXb3JrZmxvdyAmJiBvcHRpb25zLmJ1aWxkV29ya2Zsb3dPcHRpb25zKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiQ2Fubm90IHByb3ZpZGUgYm90aCBidWlsZFdvcmtmbG93IGFuZCBidWlsZFdvcmtmbG93T3B0aW9uc1wiLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmV4dGVybmFsV29ya2Zsb3cgPSAhIW9wdGlvbnMuYnVpbGRXb3JrZmxvdztcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIEJ1aWxkIFdvcmtmbG93XG4gICAgICpcbiAgICAgKiBDcmVhdGUgYSB3b3JrZmxvdyBlaXRoZXIgYmFzZWQgb24gaW5wdXQgb3IgZnJvbSBzY3JhdGNoLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgdGhpcy5idWlsZFdvcmtmbG93ID1cbiAgICAgIG9wdGlvbnMuYnVpbGRXb3JrZmxvdyA/P1xuICAgICAgbmV3IEJ1aWxkV29ya2Zsb3codGhpcy5yb290UHJvamVjdCwge1xuICAgICAgICAvKipcbiAgICAgICAgICogTmFtZSBiYXNlZCBvbiBwcm9qZWN0IGFuZCBlbnZpcm9ubWVudC5cbiAgICAgICAgICovXG4gICAgICAgIG5hbWU6IFtcbiAgICAgICAgICBcImRlcGxveVwiLFxuICAgICAgICAgIHByb2plY3QubmFtZSxcbiAgICAgICAgICB0aGlzLmF3c1N0YWdlVHlwZSxcbiAgICAgICAgICB0aGlzLmF3c0Vudmlyb25tZW50VHlwZSxcbiAgICAgICAgXS5qb2luKFwiLVwiKSxcblxuICAgICAgICAvKipcbiAgICAgICAgICogVXNlIHRoZSByb290IHByb2plY3RzIGJ1aWxkIHRhc2suXG4gICAgICAgICAqL1xuICAgICAgICBidWlsZFRhc2s6IHRoaXMucm9vdFByb2plY3QuYnVpbGRUYXNrLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBVc2UgcHVzaCB0cmlnZ2VycyBiYXNlZCBuIHRoZSBicmFuY2ggY29uZmlnIGZvciBlYWNoIGVudmlyb25tZW50LlxuICAgICAgICAgKi9cbiAgICAgICAgd29ya2Zsb3dUcmlnZ2Vyczoge1xuICAgICAgICAgIHB1c2g6IHtcbiAgICAgICAgICAgIGJyYW5jaGVzOiBbXG4gICAgICAgICAgICAgIC4uLnRoaXMuYXdzRGVwbG95bWVudFRhcmdldHMuZmxhdE1hcCgodCkgPT5cbiAgICAgICAgICAgICAgICB0LmJyYW5jaGVzLm1hcCgoYikgPT4gYi5icmFuY2gpLFxuICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgXSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHdvcmtmbG93RGlzcGF0Y2g6IHt9LFxuICAgICAgICAgIC4uLm9wdGlvbnMuYnVpbGRXb3JrZmxvd09wdGlvbnM/LndvcmtmbG93VHJpZ2dlcnMsXG4gICAgICAgIH0sXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIE5ldmVyIGFsbG93IG11dGF0aW9ucyBmb3IgZGVwbG95cy4gVGhpcyBzaG91bGQgaGF2ZSBiZWVuIGhhbmRsZWRcbiAgICAgICAgICogZHVyaW5nIGJ1aWxkLlxuICAgICAgICAgKi9cbiAgICAgICAgbXV0YWJsZUJ1aWxkOiBmYWxzZSxcblxuICAgICAgICAvKipcbiAgICAgICAgICogRG8gdGhpcyBwcmUtbWVyZ2Ugb2YgcGVybWlzc2lvbnMgYW5kIGJ1aWxkIHN0ZXBzXG4gICAgICAgICAqL1xuICAgICAgICAuLi5vcHRpb25zLmJ1aWxkV29ya2Zsb3dPcHRpb25zLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBTb21lIGFkZGl0aW9uYWwgcGVybWlzc2lvbnMgbWF5IGJlIHJlcXVpcmVkIHdoZW4gdHVyYm8ncyBpbnZvbHZlZC5cbiAgICAgICAgICovXG4gICAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgICAgLi4ub3B0aW9ucy5idWlsZFdvcmtmbG93T3B0aW9ucz8ucGVybWlzc2lvbnMsXG4gICAgICAgICAgLi4uYnVpbGRXb3JrZmxvd09wdGlvbnM/LnBlcm1pc3Npb25zLFxuICAgICAgICB9LFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBBc3NlbWJsZSBhbGwgcHJlLWJ1aWxkIHN0ZXBzXG4gICAgICAgICAqL1xuICAgICAgICBwcmVCdWlsZFN0ZXBzOiBbXG4gICAgICAgICAgLi4udGhpcy5zZXR1cFBucG0oKSxcbiAgICAgICAgICAuLi50aGlzLnNldHVwTm9kZSgpLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIG5hbWU6IFwiSW5zdGFsbCBkZXBlbmRlbmNpZXNcIixcbiAgICAgICAgICAgIHJ1bjogXCJwbnBtIGkgLS1uby1mcm96ZW4tbG9ja2ZpbGVcIixcbiAgICAgICAgICB9LFxuICAgICAgICAgIC4uLihvcHRpb25zLmJ1aWxkV29ya2Zsb3dPcHRpb25zPy5wcmVCdWlsZFN0ZXBzID8/IFtdKSxcbiAgICAgICAgICAuLi4oYnVpbGRXb3JrZmxvd09wdGlvbnM/LnByZUJ1aWxkU3RlcHMgPz8gW10pLFxuICAgICAgICBdLFxuICAgICAgfSk7XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBBZGQgRGVwbG95bWVudHMgdG8gd29ya2Zsb3dcbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGNvbnN0IGJ1aWxkSm9iTmFtZSA9ICh0YXJnZXQ6IEF3c0RlcGxveW1lbnRUYXJnZXQpID0+IHtcbiAgICAgIHJldHVybiBbXG4gICAgICAgIHRhcmdldC5hd3NTdGFnZVR5cGUsXG4gICAgICAgIHRhcmdldC5hd3NFbnZpcm9ubWVudFR5cGUsXG4gICAgICAgIFwiZGVwbG95XCIsXG4gICAgICAgIHRhcmdldC5wcm9qZWN0Lm5hbWUsXG4gICAgICAgIHRhcmdldC5hY2NvdW50LFxuICAgICAgICB0YXJnZXQucmVnaW9uLFxuICAgICAgXS5qb2luKFwiLVwiKTtcbiAgICB9O1xuXG4gICAgdGhpcy5hd3NEZXBsb3ltZW50VGFyZ2V0cy5mb3JFYWNoKCh0YXJnZXQpID0+IHtcbiAgICAgIGNvbnN0IGRlcGxveUpvYk5hbWUgPSBidWlsZEpvYk5hbWUodGFyZ2V0KTtcblxuICAgICAgdGhpcy5idWlsZFdvcmtmbG93LmFkZFBvc3RCdWlsZEpvYihkZXBsb3lKb2JOYW1lLCB7XG4gICAgICAgIG5hbWU6IGBEZXBsb3kgJHt0aGlzLnByb2plY3QubmFtZX0gJHt0YXJnZXQuYXdzU3RhZ2VUeXBlfS8ke3RhcmdldC5hd3NFbnZpcm9ubWVudFR5cGV9LyR7dGFyZ2V0LmFjY291bnR9LyR7dGFyZ2V0LnJlZ2lvbn1gLFxuICAgICAgICBuZWVkczogW1xuICAgICAgICAgIFwiYnVpbGRcIixcbiAgICAgICAgICAuLi50aGlzLmRlcGxveUFmdGVyVGFyZ2V0cy5tYXAoKHApID0+IHtcbiAgICAgICAgICAgIHJldHVybiBidWlsZEpvYk5hbWUocCk7XG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICAgIHJ1bnNPbjogW1widWJ1bnR1LWxhdGVzdFwiXSxcbiAgICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICAgIGlkVG9rZW46IEpvYlBlcm1pc3Npb24uV1JJVEUsXG4gICAgICAgIH0sXG4gICAgICAgIGNvbmN1cnJlbmN5OiBkZXBsb3lKb2JOYW1lLFxuICAgICAgICBzdGVwczogWy4uLnRoaXMuZGVwbG95U3RlcHModGFyZ2V0KV0sXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBzZXR1cE5vZGUgPSAoKTogQXJyYXk8Sm9iU3RlcD4gPT4ge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6IFwiU2V0dXAgTm9kZVwiLFxuICAgICAgICB1c2VzOiBcImFjdGlvbnMvc2V0dXAtbm9kZUB2NFwiLFxuICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgW1wibm9kZS12ZXJzaW9uXCJdOiBWRVJTSU9OLk5PREVfV09SS0ZMT1dTLFxuICAgICAgICB9LFxuICAgICAgICAvLyBvY2Nhc2lvbmFsbHkgdGhpcyBzdGVwIGZhaWxzIGR1ZSB0byBpbnRlcm5hbCBpc3N1ZXMgYXQgZ2l0aHViXG4gICAgICAgIHRpbWVvdXRNaW51dGVzOiAxLFxuICAgICAgfSxcbiAgICBdO1xuICB9O1xuXG4gIHB1YmxpYyBzZXR1cFBucG0gPSAoKTogQXJyYXk8Sm9iU3RlcD4gPT4ge1xuICAgIHJldHVybiBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6IFwiU2V0dXAgUE5QTVwiLFxuICAgICAgICB1c2VzOiBcInBucG0vYWN0aW9uLXNldHVwQHYzXCIsXG4gICAgICAgIHdpdGg6IHtcbiAgICAgICAgICB2ZXJzaW9uOiBWRVJTSU9OLlBOUE1fVkVSU0lPTixcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfTtcblxuICBwcml2YXRlIGRlcGxveVN0ZXBzID0gKHRhcmdldDogQXdzRGVwbG95bWVudFRhcmdldCk6IEFycmF5PEpvYlN0ZXA+ID0+IHtcbiAgICBjb25zdCB7XG4gICAgICBhd3NTdGFnZVR5cGUsXG4gICAgICBhd3NFbnZpcm9ubWVudFR5cGUsXG4gICAgICBhY2NvdW50LFxuICAgICAgcmVnaW9uLFxuICAgICAgY2lEZXBsb3ltZW50Q29uZmlnLFxuICAgICAgYXdzRGVwbG95bWVudENvbmZpZyxcbiAgICB9ID0gdGFyZ2V0O1xuICAgIGNvbnN0IHsgcm9sZUFybiwgc3RhY2tQYXR0ZXJuIH0gPSBjaURlcGxveW1lbnRDb25maWcgPz8ge307XG4gICAgY29uc3QgeyByb290Q2RrT3V0IH0gPSBhd3NEZXBsb3ltZW50Q29uZmlnO1xuXG4gICAgcmV0dXJuIFtcbiAgICAgIC4uLnRoaXMuc2V0dXBQbnBtKCksXG4gICAgICAuLi50aGlzLnNldHVwTm9kZSgpLFxuXG4gICAgICAvKipcbiAgICAgICAqIEluc3RhbGwgQ0RLXG4gICAgICAgKi9cbiAgICAgIHtcbiAgICAgICAgbmFtZTogXCJJbnN0YWxsIENES1wiLFxuICAgICAgICBydW46IFwicG5wbSBhZGQgYXdzLWNka1wiLFxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBDb25maWd1cmUgQVdTIGNyZWRzLlxuICAgICAgICovXG4gICAgICB7XG4gICAgICAgIG5hbWU6IGBBV1MgQ3JlZHMgJHthd3NTdGFnZVR5cGV9LyR7YXdzRW52aXJvbm1lbnRUeXBlfS8ke2FjY291bnR9LyR7cmVnaW9ufWAsXG4gICAgICAgIHVzZXM6IFwiYXdzLWFjdGlvbnMvY29uZmlndXJlLWF3cy1jcmVkZW50aWFsc0B2NFwiLFxuICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgXCJyb2xlLXRvLWFzc3VtZVwiOiByb2xlQXJuLFxuICAgICAgICAgIFwiYXdzLXJlZ2lvblwiOiByZWdpb24sXG4gICAgICAgICAgXCJyb2xlLWR1cmF0aW9uLXNlY29uZHNcIjogOTAwLCAvLyAxNSBtaW51dGVzXG4gICAgICAgIH0sXG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIFJ1biBDREsgRGVwbG95XG4gICAgICAgKi9cbiAgICAgIHtcbiAgICAgICAgbmFtZTogYERlcGxveSAke2F3c1N0YWdlVHlwZX0vJHthd3NFbnZpcm9ubWVudFR5cGV9LyR7YWNjb3VudH0vJHtyZWdpb259YCxcbiAgICAgICAgcnVuOiBgcG5wbSBkbHggYXdzLWNkayBkZXBsb3kgLS1uby1yb2xsYmFjayAtLXJlcXVpcmUtYXBwcm92YWw9bmV2ZXIgLS1hcHA9JHtyb290Q2RrT3V0fSBcIiR7c3RhY2tQYXR0ZXJufVwiYCxcbiAgICAgIH0sXG4gICAgXTtcbiAgfTtcblxuICBwcmVTeW50aGVzaXplKCk6IHZvaWQge1xuICAgIC8qKlxuICAgICAqIEVuc3VyZSB0dXJibyBpcyBhY3RpdmUgd2hlbiBuZWVkZWQuXG4gICAgICovXG4gICAgaWYgKCF0aGlzLmV4dGVybmFsV29ya2Zsb3cgJiYgVHVyYm9SZXBvLm9mKHRoaXMucm9vdFByb2plY3QpKSB7XG4gICAgICB0aGlzLmJ1aWxkV29ya2Zsb3cuYWRkUG9zdEJ1aWxkU3RlcHMoe1xuICAgICAgICBuYW1lOiBcIkJ1aWxkIFN1YiBQcm9qZWN0c1wiLFxuICAgICAgICBydW46IGBucHggcHJvamVuICR7Uk9PVF9DSV9UQVNLX05BTUV9YCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHN1cGVyLnByZVN5bnRoZXNpemUoKTtcbiAgfVxufVxuIl19
|
package/package.json
CHANGED