@codedrifters/configulator 0.0.85 → 0.0.86
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.
|
@@ -13,6 +13,9 @@ import { TurboRepoOptions } from "../turbo/turbo-repo";
|
|
|
13
13
|
* linting, testing, and other project-wide settings.
|
|
14
14
|
*
|
|
15
15
|
******************************************************************************/
|
|
16
|
+
export interface IDependencyResolver {
|
|
17
|
+
resolveDepsAndWritePackageJson(): boolean;
|
|
18
|
+
}
|
|
16
19
|
/**
|
|
17
20
|
* Configuration options for the monorepo.
|
|
18
21
|
*/
|
|
@@ -78,5 +81,20 @@ export declare class MonorepoProject extends TypeScriptAppProject {
|
|
|
78
81
|
* official CodeDrifters configs.
|
|
79
82
|
*/
|
|
80
83
|
readonly upgradeConfigulatorTask?: UpgradeDependencies;
|
|
84
|
+
/**
|
|
85
|
+
* List of functions to call after dependencies have been installed.
|
|
86
|
+
*/
|
|
87
|
+
private postInstallDependencies;
|
|
81
88
|
constructor(userOptions: MonorepoProjectOptions);
|
|
89
|
+
/**
|
|
90
|
+
* Allows a sub project to request installation of dependency at the Monorepo root
|
|
91
|
+
* They must provide a function that is executed after dependencies have been installed
|
|
92
|
+
* If this function returns true, the install command is run for a second time after all sub project requests have run.
|
|
93
|
+
* This is used to resolve dependency versions from `*` to a concrete version constraint.
|
|
94
|
+
*/
|
|
95
|
+
requestInstallDependencies(resolver: IDependencyResolver): void;
|
|
96
|
+
/**
|
|
97
|
+
* Hooks into the install dependencies cycle
|
|
98
|
+
*/
|
|
99
|
+
postSynthesize(): void;
|
|
82
100
|
}
|
|
@@ -107,9 +107,15 @@ class MonorepoProject extends typescript_1.TypeScriptAppProject {
|
|
|
107
107
|
*/
|
|
108
108
|
release: false,
|
|
109
109
|
/**
|
|
110
|
-
*
|
|
110
|
+
* Uppgrade dependencies automatically unless otherwise instructed.
|
|
111
111
|
*/
|
|
112
|
-
depsUpgrade:
|
|
112
|
+
depsUpgrade: true,
|
|
113
|
+
depsUpgradeOptions: {
|
|
114
|
+
workflowOptions: {
|
|
115
|
+
schedule: javascript_1.UpgradeDependenciesSchedule.WEEKLY,
|
|
116
|
+
},
|
|
117
|
+
cooldown: 1,
|
|
118
|
+
},
|
|
113
119
|
/**
|
|
114
120
|
* Disable tsconfig.dev.json in the root since we aren't going to be
|
|
115
121
|
* developing any code here. It's just a task runner and configuration
|
|
@@ -137,6 +143,9 @@ class MonorepoProject extends typescript_1.TypeScriptAppProject {
|
|
|
137
143
|
* Include self as a devDep
|
|
138
144
|
*/
|
|
139
145
|
devDeps: ["@codedrifters/configulator", "@codedrifters/utils"],
|
|
146
|
+
/**
|
|
147
|
+
* PNPM options for the monorepo.
|
|
148
|
+
*/
|
|
140
149
|
pnpmOptions: {
|
|
141
150
|
pnpmWorkspaceOptions: {
|
|
142
151
|
defaultCatalog: {
|
|
@@ -192,6 +201,10 @@ class MonorepoProject extends typescript_1.TypeScriptAppProject {
|
|
|
192
201
|
**************************************************************************/
|
|
193
202
|
const options = (0, ts_deepmerge_1.merge)(defaultOptions, userOptions, requiredOptions);
|
|
194
203
|
super({ ...options });
|
|
204
|
+
/**
|
|
205
|
+
* List of functions to call after dependencies have been installed.
|
|
206
|
+
*/
|
|
207
|
+
this.postInstallDependencies = new Array();
|
|
195
208
|
/***************************************************************************
|
|
196
209
|
*
|
|
197
210
|
* PUBLIC PROPS
|
|
@@ -271,7 +284,38 @@ class MonorepoProject extends typescript_1.TypeScriptAppProject {
|
|
|
271
284
|
},
|
|
272
285
|
}, options.upgradeConfigulatorTaskOptions ?? {}));
|
|
273
286
|
}
|
|
287
|
+
/**
|
|
288
|
+
* Update all packages after the root of the monorepo's updated.
|
|
289
|
+
* Run the default task after the upgrade to ensure all packages are
|
|
290
|
+
* updated. In particular make sure the pnpm-workspace file was not
|
|
291
|
+
* tampered with during the upgrade.
|
|
292
|
+
*/
|
|
293
|
+
this.tasks.tryFind("post-upgrade")?.exec("pnpm upgrade -r");
|
|
294
|
+
this.tasks.tryFind("post-upgrade")?.spawn(this.defaultTask);
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* Allows a sub project to request installation of dependency at the Monorepo root
|
|
298
|
+
* They must provide a function that is executed after dependencies have been installed
|
|
299
|
+
* If this function returns true, the install command is run for a second time after all sub project requests have run.
|
|
300
|
+
* This is used to resolve dependency versions from `*` to a concrete version constraint.
|
|
301
|
+
*/
|
|
302
|
+
requestInstallDependencies(resolver) {
|
|
303
|
+
this.postInstallDependencies.push(resolver.resolveDepsAndWritePackageJson);
|
|
304
|
+
}
|
|
305
|
+
/**
|
|
306
|
+
* Hooks into the install dependencies cycle
|
|
307
|
+
*/
|
|
308
|
+
postSynthesize() {
|
|
309
|
+
if (this.postInstallDependencies.length) {
|
|
310
|
+
const nodePkg = this.package;
|
|
311
|
+
nodePkg.installDependencies();
|
|
312
|
+
const completedRequests = this.postInstallDependencies.map((request) => request());
|
|
313
|
+
if (completedRequests.some(Boolean)) {
|
|
314
|
+
nodePkg.installDependencies();
|
|
315
|
+
}
|
|
316
|
+
this.postInstallDependencies = [];
|
|
317
|
+
}
|
|
274
318
|
}
|
|
275
319
|
}
|
|
276
320
|
exports.MonorepoProject = MonorepoProject;
|
|
277
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ub3JlcG8tcHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9qZWN0cy9tb25vcmVwby1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHNEQUsrQjtBQUMvQixzREFHK0I7QUFDL0IsK0NBQXFDO0FBQ3JDLDJEQUE2RTtBQUM3RSxvREFBa0U7QUFDbEUsb0RBSTZCO0FBQzdCLDBDQUFzQztBQUN0Qyw2Q0FBZ0Q7QUFpRmhELE1BQWEsZUFBZ0IsU0FBUSxpQ0FBb0I7SUFhdkQsWUFBWSxXQUFtQztRQUM3Qzs7Ozs7O29GQU00RTtRQUU1RSxNQUFNLG9CQUFvQixHQUFrQyxXQUFXO2FBQ3BFLFlBQVksRUFBRSxrQkFBa0I7WUFDakMsQ0FBQyxDQUFDLHNCQUFTLENBQUMsb0JBQW9CLENBQzVCLFdBQVcsQ0FBQyxZQUFZLENBQUMsa0JBQWtCLENBQzVDO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUVQOzs7Ozs7b0ZBTTRFO1FBRTVFLE1BQU0sY0FBYyxHQUdoQjtZQUNGOztlQUVHO1lBQ0gsVUFBVSxFQUFFLElBQUk7WUFFaEI7O2VBRUc7WUFDSCxhQUFhLEVBQUUsVUFBVTtZQUV6Qjs7ZUFFRztZQUNILFFBQVEsRUFBRSxJQUFJO1lBRWQ7O2VBRUc7WUFDSCxRQUFRLEVBQUUsS0FBSztZQUVmOzs7ZUFHRztZQUNILGFBQWEsRUFBRTtnQkFDYixPQUFPLEVBQUUsS0FBSztnQkFFZDs7OzttQkFJRztnQkFDSCxzQkFBc0IsRUFBRTtvQkFDdEIsb0JBQW9CLEVBQUU7d0JBQ3BCOzs7Ozs7Ozs7Ozs7OzsyQkFjRzt3QkFDSCxLQUFLLEVBQUU7NEJBQ0wsTUFBTTs0QkFDTixLQUFLOzRCQUNMLE1BQU07NEJBQ04sT0FBTzs0QkFDUCxVQUFVOzRCQUNWLE1BQU07NEJBQ04sTUFBTTs0QkFDTixPQUFPOzRCQUNQLElBQUk7NEJBQ0osT0FBTzs0QkFDUCxRQUFRO3lCQUNUO3FCQUNGO2lCQUNG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QUM3QyxDQUNGLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBOVVELDBDQThVQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1aWxkV29ya2Zsb3dPcHRpb25zIH0gZnJvbSBcInByb2plbi9saWIvYnVpbGRcIjtcbmltcG9ydCB7XG4gIE5vZGVQYWNrYWdlTWFuYWdlcixcbiAgVXBncmFkZURlcGVuZGVuY2llcyxcbiAgVXBncmFkZURlcGVuZGVuY2llc09wdGlvbnMsXG4gIFVwZ3JhZGVEZXBlbmRlbmNpZXNTY2hlZHVsZSxcbn0gZnJvbSBcInByb2plbi9saWIvamF2YXNjcmlwdFwiO1xuaW1wb3J0IHtcbiAgVHlwZVNjcmlwdEFwcFByb2plY3QsXG4gIFR5cGVTY3JpcHRQcm9qZWN0T3B0aW9ucyxcbn0gZnJvbSBcInByb2plbi9saWIvdHlwZXNjcmlwdFwiO1xuaW1wb3J0IHsgbWVyZ2UgfSBmcm9tIFwidHMtZGVlcG1lcmdlXCI7XG5pbXBvcnQgeyBQbnBtV29ya3NwYWNlLCBQbnBtV29ya3NwYWNlT3B0aW9ucyB9IGZyb20gXCIuLi9wbnBtL3BucG0td29ya3NwYWNlXCI7XG5pbXBvcnQgeyBSZXNldFRhc2ssIFJlc2V0VGFza09wdGlvbnMgfSBmcm9tIFwiLi4vdGFza3MvcmVzZXQtdGFza1wiO1xuaW1wb3J0IHtcbiAgUk9PVF9DSV9UQVNLX05BTUUsXG4gIFR1cmJvUmVwbyxcbiAgVHVyYm9SZXBvT3B0aW9ucyxcbn0gZnJvbSBcIi4uL3R1cmJvL3R1cmJvLXJlcG9cIjtcbmltcG9ydCB7IFZFUlNJT04gfSBmcm9tIFwiLi4vdmVyc2lvbnNcIjtcbmltcG9ydCB7IFZTQ29kZUNvbmZpZyB9IGZyb20gXCIuLi92c2NvZGUvdnNjb2RlXCI7XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gKlxuICogTW9ub3JlcG8gUm9vdCBQcm9qZWN0XG4gKlxuICogVGhpcyBwcm9qZWN0IHNob3VsZCBiZSB1c2VkIGFzIHRoZSBiYXNlIHByb2plY3QgZm9yIG90aGVyIHByb2plY3RzIGluIGFcbiAqIG1vbm9yZXBvLiBUaGUgTW9ub3JlcG8gcm9vdCBwcm9qZWN0IGdlbmVyYWxseSB3b24ndCBjb250YWluIGFueSBjb2RlLCBidXQgaXRcbiAqIHdpbGwgY29udGFpbiBjb25maWd1cmF0aW9uIGZvciB0aGUgbW9ub3JlcG8sIHN1Y2ggYXMgcGFja2FnZSBtYW5hZ2VtZW50LFxuICogbGludGluZywgdGVzdGluZywgYW5kIG90aGVyIHByb2plY3Qtd2lkZSBzZXR0aW5ncy5cbiAqXG4gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIG1vbm9yZXBvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1vbm9yZXBvUHJvamVjdE9wdGlvbnMgZXh0ZW5kcyBPbWl0PFxuICBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMsXG4gIFwiZGVmYXVsdFJlbGVhc2VCcmFuY2hcIlxuPiB7XG4gIC8qKlxuICAgKiBUdXJuIG9uIFR1cmJvcmVwbyBzdXBwb3J0LlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICB0dXJibz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnNhbCBvcHRpb25zIGZvciB0dXJib3JlcG8gY29uZmlnXG4gICAqL1xuICB0dXJib09wdGlvbnM/OiBUdXJib1JlcG9PcHRpb25zO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgdGhlIHJlc2V0IHRhc2sgdGhhdCBkZWxldGVzIGFsbCBidWlsZCBhcnRpZmFjdHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlc2V0VGFzaz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRoZSByZXNldCB0YXNrLlxuICAgKi9cbiAgcmVzZXRUYXNrT3B0aW9ucz86IFJlc2V0VGFza09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFBOUE0gb3B0aW9ucyBmb3IgdGhlIG1vbm9yZXBvLlxuICAgKi9cbiAgcG5wbU9wdGlvbnM/OiB7XG4gICAgLyoqXG4gICAgICogVGhlIHZlcnNpb24gb2YgUE5QTSB0byB1c2UgaW4gdGhlIG1vbm9yZXBvLlxuICAgICAqIEBkZWZhdWx0IFZFUlNJT04uUE5QTV9WRVJTSU9OXG4gICAgICogQHNlZSB7QGxpbmsgc3JjL3ZlcnNpb25zLnRzfVxuICAgICAqL1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBPcHRpb25hbCBwbnBtIG9wdGlvbnMgZm9yIHRoZSBtb25vcmVwbyB3b3Jrc3BhY2UgZmlsZS5cbiAgICAgKi9cbiAgICBwbnBtV29ya3NwYWNlT3B0aW9ucz86IFBucG1Xb3Jrc3BhY2VPcHRpb25zO1xuICB9O1xuXG4gIC8qKlxuICAgKiBUdXJuIG9uIHRoZSB1cGdyYWRlIGNvbmZpZ3VyYXRvciB0YXNrIHRoYXQgd2lsbCBhdHRlbXB0IHRvIHVwZ3JhZGUgdGhlXG4gICAqIEBjb2RlZHJpZnRlcnMvY29uZmlndWxhdG9yIHBhY2thZ2UgdmVyc2lvbiBuaWdodGx5LiBUaGlzIGtlZXBzIHRoZVxuICAgKiBwcm9qZWN0IHVwLXRvLWRhdGUgd2l0aCB0aGUgbGF0ZXN0IG9mZmljaWFsIENvZGVEcmlmdGVycyBjb25maWdzLi5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdXBncmFkZUNvbmZpZ3VsYXRvclRhc2s/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgdXBncmFkZSBjb25maWd1cmF0b3IgdGFzay5cbiAgICpcbiAgICogQGRlZmF1bHQ6IGRhaWx5IHNjaGVkdWxlXG4gICAqL1xuICByZWFkb25seSB1cGdyYWRlQ29uZmlndWxhdG9yVGFza09wdGlvbnM/OiBVcGdyYWRlRGVwZW5kZW5jaWVzT3B0aW9ucztcbn1cblxuaW50ZXJmYWNlIEFwcGxpZWRPcHRpb25zXG4gIGV4dGVuZHMgVHlwZVNjcmlwdFByb2plY3RPcHRpb25zLCBNb25vcmVwb1Byb2plY3RPcHRpb25zIHt9XG5cbmV4cG9ydCBjbGFzcyBNb25vcmVwb1Byb2plY3QgZXh0ZW5kcyBUeXBlU2NyaXB0QXBwUHJvamVjdCB7XG4gIC8qKlxuICAgKiBWZXJzaW9uIG9mIFBOUE0gd2hpY2ggdGhlIHdob2xlIG1vbm9yZXBvIHNob3VsZCB1c2UuXG4gICAqL1xuICByZWFkb25seSBwbnBtVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCB0YXNrIHRoYXQgd2lsbCBhdHRlbXB0IHRvIHVwZ3JhZGUgdGhlIEBjb2RlZHJpZnRlcnMvY29uZmlndWxhdG9yXG4gICAqIHBhY2thZ2UgdmVyc2lvbiBuaWdodGx5LiBUaGlzIGtlZXBzIHRoZSBwcm9qZWN0IHVwLXRvLWRhdGUgd2l0aCB0aGUgbGF0ZXN0XG4gICAqIG9mZmljaWFsIENvZGVEcmlmdGVycyBjb25maWdzLlxuICAgKi9cbiAgcmVhZG9ubHkgdXBncmFkZUNvbmZpZ3VsYXRvclRhc2s/OiBVcGdyYWRlRGVwZW5kZW5jaWVzO1xuXG4gIGNvbnN0cnVjdG9yKHVzZXJPcHRpb25zOiBNb25vcmVwb1Byb2plY3RPcHRpb25zKSB7XG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogQlVJTEQgV09SS0ZMT1cgT1BUSU9OU1xuICAgICAqXG4gICAgICogZGlzY292ZXIgc29tZSB0dXJibyBvcHRpb25zIGZvciBidWlsZCB3b3JrZmxvdywgaWYgbmVlZGVkLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3QgYnVpbGRXb3JrZmxvd09wdGlvbnM6IFBhcnRpYWw8QnVpbGRXb3JrZmxvd09wdGlvbnM+ID0gdXNlck9wdGlvbnNcbiAgICAgIC50dXJib09wdGlvbnM/LnJlbW90ZUNhY2hlT3B0aW9uc1xuICAgICAgPyBUdXJib1JlcG8uYnVpbGRXb3JrZmxvd09wdGlvbnMoXG4gICAgICAgICAgdXNlck9wdGlvbnMudHVyYm9PcHRpb25zLnJlbW90ZUNhY2hlT3B0aW9ucyxcbiAgICAgICAgKVxuICAgICAgOiB7fTtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIERFRkFVTFQgT1BUSU9OU1xuICAgICAqXG4gICAgICogVGhlc2UgYXJlIHRoZSBkZWZhdWx0IG9wdGlvbnMgdW5sZXNzIHlvdSBvdmVycmlkZSB3aXRoIG9wdGlvbiBpbnB1dHMuXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBjb25zdCBkZWZhdWx0T3B0aW9uczogT21pdDxcbiAgICAgIE1vbm9yZXBvUHJvamVjdE9wdGlvbnMsXG4gICAgICBcIm5hbWVcIiB8IFwiZGVmYXVsdFJlbGVhc2VCcmFuY2hcIlxuICAgID4gPSB7XG4gICAgICAvKipcbiAgICAgICAqIFVzZSB0eXBlc2NyaXB0IGJhc2VkIGNvbmZpZyBmaWxlLlxuICAgICAgICovXG4gICAgICBwcm9qZW5yY1RzOiB0cnVlLFxuXG4gICAgICAvKipcbiAgICAgICAqIFByb2plbiB2ZXJzaW9uIHNob3VsZCBiZSBwaW5uZWQgdG8gdGhlIGxvY2FsIHNwZWNpZmllZCB2ZXJzaW9uLlxuICAgICAgICovXG4gICAgICBwcm9qZW5WZXJzaW9uOiBcImNhdGFsb2c6XCIsXG5cbiAgICAgIC8qKlxuICAgICAgICogVXNlIFByZXR0aWVyIGZvciBjb2RlIGZvcm1hdHRpbmcuXG4gICAgICAgKi9cbiAgICAgIHByZXR0aWVyOiB0cnVlLFxuXG4gICAgICAvKipcbiAgICAgICAqIE5vdCBsaWNlbnNlZCBieSBkZWZhdWx0LlxuICAgICAgICovXG4gICAgICBsaWNlbnNlZDogZmFsc2UsXG5cbiAgICAgIC8qKlxuICAgICAgICogR2l0SHViIG9wdGlvbnMgZm9yIHRoZSBtb25vcmVwby5cbiAgICAgICAqIERvbid0IGVuYWJsZSBtZXJnaWZ5IGJ5IGRlZmF1bHQuXG4gICAgICAgKi9cbiAgICAgIGdpdGh1Yk9wdGlvbnM6IHtcbiAgICAgICAgbWVyZ2lmeTogZmFsc2UsXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIENvbmZpZ3VyZSBwdWxsIHJlcXVlc3QgbGludGluZyB0byB2YWxpZGF0ZSBQUiB0aXRsZXMgZm9sbG93IENvbnZlbnRpb25hbCBDb21taXRzLlxuICAgICAgICAgKiBCeSBkZWZhdWx0LCBhbGwgY29udmVudGlvbmFsIGNvbW1pdCB0eXBlcyBhcmUgYWxsb3dlZCwgcHJvdmlkaW5nIGZsZXhpYmlsaXR5XG4gICAgICAgICAqIGZvciBkaWZmZXJlbnQgdHlwZXMgb2YgY2hhbmdlcyAoZmVhdHVyZXMsIGZpeGVzLCBkb2N1bWVudGF0aW9uLCByZWZhY3RvcmluZywgZXRjLikuXG4gICAgICAgICAqL1xuICAgICAgICBwdWxsUmVxdWVzdExpbnRPcHRpb25zOiB7XG4gICAgICAgICAgc2VtYW50aWNUaXRsZU9wdGlvbnM6IHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQWxsb3dlZCBjb252ZW50aW9uYWwgY29tbWl0IHR5cGVzIGZvciBQUiB0aXRsZXMuXG4gICAgICAgICAgICAgKiBUaGlzIGluY2x1ZGVzIGFsbCBzdGFuZGFyZCB0eXBlcyBmcm9tIHRoZSBDb252ZW50aW9uYWwgQ29tbWl0cyBzcGVjaWZpY2F0aW9uOlxuICAgICAgICAgICAgICogLSBmZWF0OiBOZXcgZmVhdHVyZXNcbiAgICAgICAgICAgICAqIC0gZml4OiBCdWcgZml4ZXNcbiAgICAgICAgICAgICAqIC0gZG9jczogRG9jdW1lbnRhdGlvbiBjaGFuZ2VzXG4gICAgICAgICAgICAgKiAtIHN0eWxlOiBDb2RlIHN0eWxlIGNoYW5nZXMgKGZvcm1hdHRpbmcsIGV0Yy4pXG4gICAgICAgICAgICAgKiAtIHJlZmFjdG9yOiBDb2RlIHJlZmFjdG9yaW5nXG4gICAgICAgICAgICAgKiAtIHBlcmY6IFBlcmZvcm1hbmNlIGltcHJvdmVtZW50c1xuICAgICAgICAgICAgICogLSB0ZXN0OiBUZXN0IGFkZGl0aW9ucyBvciBjaGFuZ2VzXG4gICAgICAgICAgICAgKiAtIGJ1aWxkOiBCdWlsZCBzeXN0ZW0gY2hhbmdlc1xuICAgICAgICAgICAgICogLSBjaTogQ0kgY29uZmlndXJhdGlvbiBjaGFuZ2VzXG4gICAgICAgICAgICAgKiAtIGNob3JlOiBNYWludGVuYW5jZSB0YXNrc1xuICAgICAgICAgICAgICogLSByZXZlcnQ6IFJldmVydCBjb21taXRzXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHR5cGVzOiBbXG4gICAgICAgICAgICAgIFwiZmVhdFwiLFxuICAgICAgICAgICAgICBcImZpeFwiLFxuICAgICAgICAgICAgICBcImRvY3NcIixcbiAgICAgICAgICAgICAgXCJzdHlsZVwiLFxuICAgICAgICAgICAgICBcInJlZmFjdG9yXCIsXG4gICAgICAgICAgICAgIFwicGVyZlwiLFxuICAgICAgICAgICAgICBcInRlc3RcIixcbiAgICAgICAgICAgICAgXCJidWlsZFwiLFxuICAgICAgICAgICAgICBcImNpXCIsXG4gICAgICAgICAgICAgIFwiY2hvcmVcIixcbiAgICAgICAgICAgICAgXCJyZXZlcnRcIixcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogRGVmYXVsdCBQTlBNIHZlcnNpb24gdG8gdXNlIGluIHRoZSBtb25vcmVwby5cbiAgICAgICAqL1xuICAgICAgcG5wbVZlcnNpb246IFZFUlNJT04uUE5QTV9WRVJTSU9OLFxuXG4gICAgICAvKipcbiAgICAgICAqIFdlIGRvbid0IHdhbnQgc2FtcGxlIGNvZGUgZ2VuZXJhdGVkIGZvciB0aGUgcm9vdCBwcm9qZWN0LlxuICAgICAgICovXG4gICAgICBzYW1wbGVDb2RlOiBmYWxzZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBKZXN0IGlzIG5vdCByZXF1aXJlZCBpbiB0aGUgcm9vdCBwcm9qZWN0LlxuICAgICAgICovXG4gICAgICBqZXN0OiBmYWxzZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBEb24ndCByZWxlYXNlIHRoZSByb290IHByb2plY3QuXG4gICAgICAgKi9cbiAgICAgIHJlbGVhc2U6IGZhbHNlLFxuXG4gICAgICAvKipcbiAgICAgICAqIERvbid0IHVwZ3JhZGUgZGVwZW5kZW5jaWVzIGF1dG9tYXRpY2FsbHkuXG4gICAgICAgKi9cbiAgICAgIGRlcHNVcGdyYWRlOiBmYWxzZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBEaXNhYmxlIHRzY29uZmlnLmRldi5qc29uIGluIHRoZSByb290IHNpbmNlIHdlIGFyZW4ndCBnb2luZyB0byBiZVxuICAgICAgICogZGV2ZWxvcGluZyBhbnkgY29kZSBoZXJlLiBJdCdzIGp1c3QgYSB0YXNrIHJ1bm5lciBhbmQgY29uZmlndXJhdGlvblxuICAgICAgICogdG9vbCBmb3Igc3ViLXByb2plY3RzLlxuICAgICAgICovXG4gICAgICBkaXNhYmxlVHNjb25maWdEZXY6IHRydWUsXG5cbiAgICAgIC8qKlxuICAgICAgICogS2lsbCB0aGUgc3JjZGlyIGluIHRoZSByb290IHNpbmNlIHdlIGFyZW4ndCB1c2luZyBvbmUuXG4gICAgICAgKi9cbiAgICAgIHRzY29uZmlnOiB7XG4gICAgICAgIGNvbXBpbGVyT3B0aW9uczoge1xuICAgICAgICAgIHJvb3REaXI6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgZXhjbHVkZTogW1wibm9kZV9tb2R1bGVzXCJdLFxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBFbmFibGUgdHVyYm9yZXBvIGJ5IGRlZmF1bHQuXG4gICAgICAgKi9cbiAgICAgIHR1cmJvOiB0cnVlLFxuXG4gICAgICAvKipcbiAgICAgICAqIEVuYWJsZSByZXNldCB0YXNrIGJ5IGRlZmF1bHQuXG4gICAgICAgKi9cbiAgICAgIHJlc2V0VGFzazogdHJ1ZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBJbmNsdWRlIHNlbGYgYXMgYSBkZXZEZXBcbiAgICAgICAqL1xuICAgICAgZGV2RGVwczogW1wiQGNvZGVkcmlmdGVycy9jb25maWd1bGF0b3JcIiwgXCJAY29kZWRyaWZ0ZXJzL3V0aWxzXCJdLFxuXG4gICAgICBwbnBtT3B0aW9uczoge1xuICAgICAgICBwbnBtV29ya3NwYWNlT3B0aW9uczoge1xuICAgICAgICAgIGRlZmF1bHRDYXRhbG9nOiB7XG4gICAgICAgICAgICBbXCJhd3MtY2RrXCJdOiBWRVJTSU9OLkFXU19DREtfQ0xJX1ZFUlNJT04sXG4gICAgICAgICAgICBbXCJhd3MtY2RrLWxpYlwiXTogVkVSU0lPTi5BV1NfQ0RLX0xJQl9WRVJTSU9OLFxuICAgICAgICAgICAgW1wicHJvamVuXCJdOiBWRVJTSU9OLlBST0pFTl9WRVJTSU9OLFxuICAgICAgICAgICAgW1wiY29uc3RydWN0c1wiXTogVkVSU0lPTi5BV1NfQ09OU1RSVUNUU19WRVJTSU9OLFxuICAgICAgICAgICAgW1widHVyYm9cIl06IFZFUlNJT04uVFVSQk9fVkVSU0lPTixcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogUkVRVUlSRUQgT1BUSU9OU1xuICAgICAqXG4gICAgICogVGhlc2Ugb3B0aW9ucyBjYW5ub3QgYmUgY2hhbmdlZCBieSB0aGUgdXNlci5cbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGNvbnN0IHJlcXVpcmVkT3B0aW9uczogT21pdDxUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMsIFwibmFtZVwiPiA9IHtcbiAgICAgIC8qKlxuICAgICAgICogVGhpcyBpcyByZXF1aXJlZCBiZWNhdXNlIGl0J3Mgc3RhbmRhcmQgcHJhY3RpY2UgYW5kIGFsc28gdG8gc2ltcGxpZnlcbiAgICAgICAqIHNvbWUgd29ya2Zsb3cgZGVzaWduLlxuICAgICAgICovXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogXCJtYWluXCIsXG5cbiAgICAgIC8qKlxuICAgICAgICogVXNlIFBOUE0gaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCAoWWFybikuIE11Y2ggb2YgdGhlIGVjb3N5c3RlbSBkZXBlbmRzXG4gICAgICAgKiBvbiBQTlBNIGFuZCBtYWtpbmcgbW9ub3JlcG9zIFBOUE0gb25seSBzaW1wbGlmaWVzIG1hbnkgY29uZmlndXJhdGlvbnMuXG4gICAgICAgKi9cbiAgICAgIHBhY2thZ2VNYW5hZ2VyOiBOb2RlUGFja2FnZU1hbmFnZXIuUE5QTSxcblxuICAgICAgLyoqXG4gICAgICAgKiBTb21lIGFkZGl0aW9uYWwgcHJlLWJ1aWxkIHN0ZXBzIGlmIHdlJ3JlIHVzaW5nIHR1cmJvJ3MgcmVtb3RlIGNhY2hlLlxuICAgICAgICovXG4gICAgICBidWlsZFdvcmtmbG93T3B0aW9uczoge1xuICAgICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICAgIC4uLmJ1aWxkV29ya2Zsb3dPcHRpb25zPy5wZXJtaXNzaW9ucyxcbiAgICAgICAgICAuLi51c2VyT3B0aW9ucy5idWlsZFdvcmtmbG93T3B0aW9ucz8ucGVybWlzc2lvbnMsXG4gICAgICAgIH0sXG4gICAgICAgIHByZUJ1aWxkU3RlcHM6IFtcbiAgICAgICAgICAuLi4oYnVpbGRXb3JrZmxvd09wdGlvbnM/LnByZUJ1aWxkU3RlcHMgPz8gW10pLFxuICAgICAgICAgIC4uLih1c2VyT3B0aW9ucy5idWlsZFdvcmtmbG93T3B0aW9ucz8ucHJlQnVpbGRTdGVwcyA/PyBbXSksXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBDT05TVFJVQ1RPUlxuICAgICAqXG4gICAgICogQ29tYmluZXMgZGVmYXVsdCBvcHRpb25zIHdpdGggdXNlciBwcm92aWRlZCBvcHRpb25zIGFuZCByZXF1aXJlZCBvcHRpb25zLlxuICAgICAqIFN0b3JlIHRoZSBvcHRpb25zIGluIGEgY29uc3Qgc28gd2UgY2FuIHVzZSB0aGVtIGFmdGVyIHN1cGVyKCksIGZhcnRoZXJcbiAgICAgKiBpbnRvIHRoZSBjb25zdHJ1Y3RvciBmb3IgYWRkaXRpb25hbCBjb25maWd1cmF0aW9uLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3Qgb3B0aW9uczogQXBwbGllZE9wdGlvbnMgPSBtZXJnZShcbiAgICAgIGRlZmF1bHRPcHRpb25zLFxuICAgICAgdXNlck9wdGlvbnMsXG4gICAgICByZXF1aXJlZE9wdGlvbnMsXG4gICAgKTtcblxuICAgIHN1cGVyKHsgLi4ub3B0aW9ucyB9KTtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIFBVQkxJQyBQUk9QU1xuICAgICAqXG4gICAgICogU29tZSBwcm9wcyBhcmUgaGlkZGVuIGJ5IFByb2plbiBhbmQgd2UgbmVlZCB0byBleHBvc2UgdGhlbSBmb3IgdGhlXG4gICAgICogbW9ub3JlcG8gdG8gd29yayBwcm9wZXJseS4gVGhpcyBpcyB3aGVyZSB3ZSBzdG9yZSB0aGVtLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgdGhpcy5wbnBtVmVyc2lvbiA9IG9wdGlvbnMucG5wbVZlcnNpb24hO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogQ1VTVE9NIENPTkZJR1NcbiAgICAgKlxuICAgICAqIFdlIGFkZCBzb21lIGFkZGl0aW9uYWwgY29uZmlndXJhdGlvbnMgdG8gdGhlIG1vbm9yZXBvIHJvb3QgcHJvamVjdCBiZWxvd1xuICAgICAqIHN1Y2ggYXMgVHVyYm9yZXBvLCBWUyBDb2RlIGNvbmZpZywgYW5kIHRoZSBQTlBNIHdvcmtzcGFjZSBmaWxlLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIFZTQ29kZSBjb25maWd1cmF0aW9uXG4gICAgICovXG4gICAgbmV3IFZTQ29kZUNvbmZpZyh0aGlzKTtcblxuICAgIC8qKlxuICAgICAqIEFkZCB3b3Jrc3BhY2UgZGVmaW5pdGlvbiB0byBQTlBNIHJvb3RcbiAgICAgKi9cbiAgICBuZXcgUG5wbVdvcmtzcGFjZSh0aGlzLCBvcHRpb25zLnBucG1PcHRpb25zPy5wbnBtV29ya3NwYWNlT3B0aW9ucyk7XG5cbiAgICAvKipcbiAgICAgKiBUdXJuIG9uIHR1cmJvcmVwbyBzdXBwb3J0IGlmIHJlcXVlc3RlZC5cbiAgICAgKi9cbiAgICBpZiAob3B0aW9ucy50dXJibykge1xuICAgICAgbmV3IFR1cmJvUmVwbyh0aGlzLCBvcHRpb25zLnR1cmJvT3B0aW9ucyk7XG5cbiAgICAgIHRoaXMuYnVpbGRXb3JrZmxvdz8uYWRkUG9zdEJ1aWxkU3RlcHMoe1xuICAgICAgICBuYW1lOiBcIkJ1aWxkIFN1YiBQcm9qZWN0c1wiLFxuICAgICAgICBydW46IGBucHggcHJvamVuICR7Uk9PVF9DSV9UQVNLX05BTUV9YCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCByZXNldCB0YXNrIGlmIGVuYWJsZWQuXG4gICAgICovXG4gICAgaWYgKG9wdGlvbnMucmVzZXRUYXNrICE9PSBmYWxzZSkge1xuICAgICAgY29uc3QgZGVmYXVsdFJlc2V0VGFza09wdGlvbnM6IFJlc2V0VGFza09wdGlvbnMgPSB7XG4gICAgICAgIHBhdGhzVG9SZW1vdmU6IFtcIm5vZGVfbW9kdWxlc1wiLCBcIi50dXJib1wiLCBcImRpc3RcIiwgXCJsaWJcIl0sXG4gICAgICB9O1xuICAgICAgY29uc3QgdXNlclJlc2V0VGFza09wdGlvbnMgPSBvcHRpb25zLnJlc2V0VGFza09wdGlvbnMgPz8ge307XG4gICAgICBjb25zdCByZXNldFRhc2tPcHRpb25zOiBSZXNldFRhc2tPcHRpb25zID0gbWVyZ2UoXG4gICAgICAgIGRlZmF1bHRSZXNldFRhc2tPcHRpb25zLFxuICAgICAgICB7XG4gICAgICAgICAgLi4udXNlclJlc2V0VGFza09wdGlvbnMsXG4gICAgICAgICAgcGF0aHNUb1JlbW92ZTogW1xuICAgICAgICAgICAgLi4uKGRlZmF1bHRSZXNldFRhc2tPcHRpb25zLnBhdGhzVG9SZW1vdmUgPz8gW10pLFxuICAgICAgICAgICAgLi4uKHVzZXJSZXNldFRhc2tPcHRpb25zLnBhdGhzVG9SZW1vdmUgPz8gW10pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgICAgbmV3IFJlc2V0VGFzayh0aGlzLCByZXNldFRhc2tPcHRpb25zKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTcGVjaWZ5IHBhY2thZ2UgbWFuYWdlclxuICAgICAqL1xuICAgIC8vIGNvbnN0IHBucG1WZXJzaW9uID0gb3B0aW9ucy5wbnBtVmVyc2lvbiA/PyBWRVJTSU9OLlBOUE1fVkVSU0lPTjtcbiAgICB0aGlzLnBhY2thZ2UuZmlsZS5hZGRPdmVycmlkZShcbiAgICAgIFwicGFja2FnZU1hbmFnZXJcIixcbiAgICAgIGBwbnBtQCR7b3B0aW9ucy5wbnBtVmVyc2lvbn1gLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiBBZGQgc29tZSBzaWxseSB0aGluZ3MgdG8gdGhlIGdpdGlnbm9yZS5cbiAgICAgKi9cbiAgICB0aGlzLmdpdGlnbm9yZT8uYWRkUGF0dGVybnMoXCIuRFNfU3RvcmVcIik7XG5cbiAgICAvKipcbiAgICAgKiBVc2UgY2F0YWxvZyB2ZXJzaW9uIGZvciBjb25zdHJ1Y3RzIHZlcnNpb25cbiAgICAgKi9cbiAgICB0aGlzLmFkZERldkRlcHMoXCJjb25zdHJ1Y3RzQGNhdGFsb2c6XCIpO1xuXG4gICAgLyoqXG4gICAgICogQWRkIGEgdGFzayBvbiB0aGUgbW9ub3JlcG8ncyByb290IHByb2plY3QgdGhhdCB3aWxsIGF0dGVtcHQgdG8gdXBncmFkZVxuICAgICAqIHRoZSBAY29kZWRyaWZ0ZXJzL2NvbmZpZ3VsYXRvciBwYWNrYWdlIHZlcnNpb24gbmlnaHRseS4gVGhpcyBrZWVwcyB0aGVcbiAgICAgKiBwcm9qZWN0IHVwLXRvLWRhdGUgd2l0aCB0aGUgbGF0ZXN0IG9mZmljaWFsIENvZGVEcmlmdGVycyBjb25maWdzLi5cbiAgICAgKi9cbiAgICBpZiAob3B0aW9ucy51cGdyYWRlQ29uZmlndWxhdG9yVGFzayAhPT0gZmFsc2UpIHtcbiAgICAgIHRoaXMudXBncmFkZUNvbmZpZ3VsYXRvclRhc2sgPSBuZXcgVXBncmFkZURlcGVuZGVuY2llcyhcbiAgICAgICAgdGhpcyxcbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAge1xuICAgICAgICAgICAgaW5jbHVkZTogW1wiQGNvZGVkcmlmdGVycy9jb25maWd1bGF0b3JcIiwgXCJAY29kZWRyaWZ0ZXJzL3V0aWxzXCJdLFxuICAgICAgICAgICAgdGFza05hbWU6IGB1cGdyYWRlLWNvZGVkcmlmdGVycy1jb25maWd1bGF0b3JgLFxuICAgICAgICAgICAgd29ya2Zsb3dPcHRpb25zOiB7XG4gICAgICAgICAgICAgIHNjaGVkdWxlOiBVcGdyYWRlRGVwZW5kZW5jaWVzU2NoZWR1bGUuREFJTFksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgb3B0aW9ucy51cGdyYWRlQ29uZmlndWxhdG9yVGFza09wdGlvbnMgPz8ge30sXG4gICAgICAgICksXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
321
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ub3JlcG8tcHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm9qZWN0cy9tb25vcmVwby1wcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHNEQUsrQjtBQUMvQixzREFHK0I7QUFDL0IsK0NBQXFDO0FBQ3JDLDJEQUE2RTtBQUM3RSxvREFBa0U7QUFDbEUsb0RBSTZCO0FBQzdCLDBDQUFzQztBQUN0Qyw2Q0FBZ0Q7QUFxRmhELE1BQWEsZUFBZ0IsU0FBUSxpQ0FBb0I7SUFrQnZELFlBQVksV0FBbUM7UUFDN0M7Ozs7OztvRkFNNEU7UUFFNUUsTUFBTSxvQkFBb0IsR0FBa0MsV0FBVzthQUNwRSxZQUFZLEVBQUUsa0JBQWtCO1lBQ2pDLENBQUMsQ0FBQyxzQkFBUyxDQUFDLG9CQUFvQixDQUM1QixXQUFXLENBQUMsWUFBWSxDQUFDLGtCQUFrQixDQUM1QztZQUNILENBQUMsQ0FBQyxFQUFFLENBQUM7UUFFUDs7Ozs7O29GQU00RTtRQUU1RSxNQUFNLGNBQWMsR0FHaEI7WUFDRjs7ZUFFRztZQUNILFVBQVUsRUFBRSxJQUFJO1lBRWhCOztlQUVHO1lBQ0gsYUFBYSxFQUFFLFVBQVU7WUFFekI7O2VBRUc7WUFDSCxRQUFRLEVBQUUsSUFBSTtZQUVkOztlQUVHO1lBQ0gsUUFBUSxFQUFFLEtBQUs7WUFFZjs7O2VBR0c7WUFDSCxhQUFhLEVBQUU7Z0JBQ2IsT0FBTyxFQUFFLEtBQUs7Z0JBRWQ7Ozs7bUJBSUc7Z0JBQ0gsc0JBQXNCLEVBQUU7b0JBQ3RCLG9CQUFvQixFQUFFO3dCQUNwQjs7Ozs7Ozs7Ozs7Ozs7MkJBY0c7d0JBQ0gsS0FBSyxFQUFFOzRCQUNMLE1BQU07NEJBQ04sS0FBSzs0QkFDTCxNQUFNOzRCQUNOLE9BQU87NEJBQ1AsVUFBVTs0QkFDVixNQUFNOzRCQUNOLE1BQU07NEJBQ04sT0FBTzs0QkFDUCxJQUFJOzRCQUNKLE9BQU87NEJBQ1AsUUFBUTt5QkFDVDtxQkFDRjtpQkFDRjthQUNGO1lBRUQ7O2VBRUc7WUFDSCxXQUFXLEVBQUUsa0JBQU8sQ0FBQyxZQUFZO1lBRWpDOztlQUVHO1lBQ0gsVUFBVSxFQUFFLEtBQUs7WUFFakI7O2VBRUc7WUFDSCxJQUFJLEVBQUUsS0FBSztZQUVYOztlQUVHO1lBQ0gsT0FBTyxFQUFFLEtBQUs7WUFFZDs7ZUFFRztZQUNILFdBQVcsRUFBRSxJQUFJO1lBQ2pCLGtCQUFrQixFQUFFO2dCQUNsQixlQUFlLEVBQUU7b0JBQ2YsUUFBUSxFQUFFLHdDQUEyQixDQUFDLE1BQU07aUJBQzdDO2dCQUNELFFBQVEsRUFBRSxDQUFDO2FBQ1o7WUFFRDs7OztlQUlHO1lBQ0gsa0JBQWtCLEVBQUUsSUFBSTtZQUV4Qjs7ZUFFRztZQUNILFFBQVEsRUFBRTtnQkFDUixlQUFlLEVBQUU7b0JBQ2YsT0FBTyxFQUFFLFNBQVM7aUJBQ25CO2dCQUNELE9BQU8sRUFBRSxDQUFDLGNBQWMsQ0FBQzthQUMxQjtZQUVEOztlQUVHO1lBQ0gsS0FBSyxFQUFFLElBQUk7WUFFWDs7ZUFFRztZQUNILFNBQVMsRUFBRSxJQUFJO1lBRWY7O2VBRUc7WUFDSCxPQUFPLEVBQUUsQ0FBQyw0QkFBNEIsRUFBRSxxQkFBcUIsQ0FBQztZQUU5RDs7ZUFFRztZQUNILFdBQVcsRUFBRTtnQkFDWCxvQkFBb0IsRUFBRTtvQkFDcEIsY0FBYyxFQUFFO3dCQUNkLENBQUMsU0FBUyxDQUFDLEVBQUUsa0JBQU8sQ0FBQyxtQkFBbUI7d0JBQ3hDLENBQUMsYUFBYSxDQUFDLEVBQUUsa0JBQU8sQ0FBQyxtQkFBbUI7d0JBQzVDLENBQUMsUUFBUSxDQUFDLEVBQUUsa0JBQU8sQ0FBQyxjQUFjO3dCQUNsQyxDQUFDLFlBQVksQ0FBQyxFQUFFLGtCQUFPLENBQUMsc0JBQXNCO3dCQUM5QyxDQUFDLE9BQU8sQ0FBQyxFQUFFLGtCQUFPLENBQUMsYUFBYTtxQkFDakM7aUJBQ0Y7YUFDRjtTQUNGLENBQUM7UUFFRjs7Ozs7O29GQU00RTtRQUU1RSxNQUFNLGVBQWUsR0FBMkM7WUFDOUQ7OztlQUdHO1lBQ0gsb0JBQW9CLEVBQUUsTUFBTTtZQUU1Qjs7O2VBR0c7WUFDSCxjQUFjLEVBQUUsK0JBQWtCLENBQUMsSUFBSTtZQUV2Qzs7ZUFFRztZQUNILG9CQUFvQixFQUFFO2dCQUNwQixXQUFXLEVBQUU7b0JBQ1gsR0FBRyxvQkFBb0IsRUFBRSxXQUFXO29CQUNwQyxHQUFHLFdBQVcsQ0FBQyxvQkFBb0IsRUFBRSxXQUFXO2lCQUNqRDtnQkFDRCxhQUFhLEVBQUU7b0JBQ2IsR0FBRyxDQUFDLG9CQUFvQixFQUFFLGFBQWEsSUFBSSxFQUFFLENBQUM7b0JBQzlDLEdBQUcsQ0FBQyxXQUFXLENBQUMsb0JBQW9CLEVBQUUsYUFBYSxJQUFJLEVBQUUsQ0FBQztpQkFDM0Q7YUFDRjtTQUNGLENBQUM7UUFFRjs7Ozs7Ozs7b0ZBUTRFO1FBRTVFLE1BQU0sT0FBTyxHQUFtQixJQUFBLG9CQUFLLEVBQ25DLGNBQWMsRUFDZCxXQUFXLEVBQ1gsZUFBZSxDQUNoQixDQUFDO1FBRUYsS0FBSyxDQUFDLEVBQUUsR0FBRyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBdE94Qjs7V0FFRztRQUNLLDRCQUF1QixHQUFHLElBQUksS0FBSyxFQUFpQixDQUFDO1FBcU8zRDs7Ozs7OztvRkFPNEU7UUFFNUUsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBWSxDQUFDO1FBRXhDOzs7Ozs7O29GQU80RTtRQUU1RTs7V0FFRztRQUNILElBQUkscUJBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV2Qjs7V0FFRztRQUNILElBQUksOEJBQWEsQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxvQkFBb0IsQ0FBQyxDQUFDO1FBRW5FOztXQUVHO1FBQ0gsSUFBSSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbEIsSUFBSSxzQkFBUyxDQUFDLElBQUksRUFBRSxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7WUFFMUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQztnQkFDcEMsSUFBSSxFQUFFLG9CQUFvQjtnQkFDMUIsR0FBRyxFQUFFLGNBQWMsOEJBQWlCLEVBQUU7YUFDdkMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVEOztXQUVHO1FBQ0gsSUFBSSxPQUFPLENBQUMsU0FBUyxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQ2hDLE1BQU0sdUJBQXVCLEdBQXFCO2dCQUNoRCxhQUFhLEVBQUUsQ0FBQyxjQUFjLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUM7YUFDekQsQ0FBQztZQUNGLE1BQU0sb0JBQW9CLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixJQUFJLEVBQUUsQ0FBQztZQUM1RCxNQUFNLGdCQUFnQixHQUFxQixJQUFBLG9CQUFLLEVBQzlDLHVCQUF1QixFQUN2QjtnQkFDRSxHQUFHLG9CQUFvQjtnQkFDdkIsYUFBYSxFQUFFO29CQUNiLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDO29CQUNoRCxHQUFHLENBQUMsb0JBQW9CLENBQUMsYUFBYSxJQUFJLEVBQUUsQ0FBQztpQkFDOUM7YUFDRixDQUNGLENBQUM7WUFDRixJQUFJLHNCQUFTLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDeEMsQ0FBQztRQUVEOztXQUVHO1FBQ0gsbUVBQW1FO1FBQ25FLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FDM0IsZ0JBQWdCLEVBQ2hCLFFBQVEsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUM5QixDQUFDO1FBRUY7O1dBRUc7UUFDSCxJQUFJLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUV6Qzs7V0FFRztRQUNILElBQUksQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUV2Qzs7OztXQUlHO1FBQ0gsSUFBSSxPQUFPLENBQUMsdUJBQXVCLEtBQUssS0FBSyxFQUFFLENBQUM7WUFDOUMsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksZ0NBQW1CLENBQ3BELElBQUksRUFDSixJQUFBLG9CQUFLLEVBQ0g7Z0JBQ0UsT0FBTyxFQUFFLENBQUMsNEJBQTRCLEVBQUUscUJBQXFCLENBQUM7Z0JBQzlELFFBQVEsRUFBRSxtQ0FBbUM7Z0JBQzdDLGVBQWUsRUFBRTtvQkFDZixRQUFRLEVBQUUsd0NBQTJCLENBQUMsS0FBSztpQkFDNUM7YUFDRixFQUNELE9BQU8sQ0FBQyw4QkFBOEIsSUFBSSxFQUFFLENBQzdDLENBQ0YsQ0FBQztRQUNKLENBQUM7UUFFRDs7Ozs7V0FLRztRQUNILElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBWSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksMEJBQTBCLENBQUMsUUFBNkI7UUFDN0QsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUM3RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxjQUFjO1FBQ25CLElBQUksSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3hDLE1BQU0sT0FBTyxHQUFRLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDbEMsT0FBTyxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFFOUIsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDckUsT0FBTyxFQUFFLENBQ1YsQ0FBQztZQUNGLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7Z0JBQ3BDLE9BQU8sQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1lBQ2hDLENBQUM7WUFFRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsRUFBRSxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDO0NBQ0Y7QUFsWUQsMENBa1lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQnVpbGRXb3JrZmxvd09wdGlvbnMgfSBmcm9tIFwicHJvamVuL2xpYi9idWlsZFwiO1xuaW1wb3J0IHtcbiAgTm9kZVBhY2thZ2VNYW5hZ2VyLFxuICBVcGdyYWRlRGVwZW5kZW5jaWVzLFxuICBVcGdyYWRlRGVwZW5kZW5jaWVzT3B0aW9ucyxcbiAgVXBncmFkZURlcGVuZGVuY2llc1NjaGVkdWxlLFxufSBmcm9tIFwicHJvamVuL2xpYi9qYXZhc2NyaXB0XCI7XG5pbXBvcnQge1xuICBUeXBlU2NyaXB0QXBwUHJvamVjdCxcbiAgVHlwZVNjcmlwdFByb2plY3RPcHRpb25zLFxufSBmcm9tIFwicHJvamVuL2xpYi90eXBlc2NyaXB0XCI7XG5pbXBvcnQgeyBtZXJnZSB9IGZyb20gXCJ0cy1kZWVwbWVyZ2VcIjtcbmltcG9ydCB7IFBucG1Xb3Jrc3BhY2UsIFBucG1Xb3Jrc3BhY2VPcHRpb25zIH0gZnJvbSBcIi4uL3BucG0vcG5wbS13b3Jrc3BhY2VcIjtcbmltcG9ydCB7IFJlc2V0VGFzaywgUmVzZXRUYXNrT3B0aW9ucyB9IGZyb20gXCIuLi90YXNrcy9yZXNldC10YXNrXCI7XG5pbXBvcnQge1xuICBST09UX0NJX1RBU0tfTkFNRSxcbiAgVHVyYm9SZXBvLFxuICBUdXJib1JlcG9PcHRpb25zLFxufSBmcm9tIFwiLi4vdHVyYm8vdHVyYm8tcmVwb1wiO1xuaW1wb3J0IHsgVkVSU0lPTiB9IGZyb20gXCIuLi92ZXJzaW9uc1wiO1xuaW1wb3J0IHsgVlNDb2RlQ29uZmlnIH0gZnJvbSBcIi4uL3ZzY29kZS92c2NvZGVcIjtcblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAqXG4gKiBNb25vcmVwbyBSb290IFByb2plY3RcbiAqXG4gKiBUaGlzIHByb2plY3Qgc2hvdWxkIGJlIHVzZWQgYXMgdGhlIGJhc2UgcHJvamVjdCBmb3Igb3RoZXIgcHJvamVjdHMgaW4gYVxuICogbW9ub3JlcG8uIFRoZSBNb25vcmVwbyByb290IHByb2plY3QgZ2VuZXJhbGx5IHdvbid0IGNvbnRhaW4gYW55IGNvZGUsIGJ1dCBpdFxuICogd2lsbCBjb250YWluIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBtb25vcmVwbywgc3VjaCBhcyBwYWNrYWdlIG1hbmFnZW1lbnQsXG4gKiBsaW50aW5nLCB0ZXN0aW5nLCBhbmQgb3RoZXIgcHJvamVjdC13aWRlIHNldHRpbmdzLlxuICpcbiAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbmV4cG9ydCBpbnRlcmZhY2UgSURlcGVuZGVuY3lSZXNvbHZlciB7XG4gIHJlc29sdmVEZXBzQW5kV3JpdGVQYWNrYWdlSnNvbigpOiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIG1vbm9yZXBvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1vbm9yZXBvUHJvamVjdE9wdGlvbnMgZXh0ZW5kcyBPbWl0PFxuICBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMsXG4gIFwiZGVmYXVsdFJlbGVhc2VCcmFuY2hcIlxuPiB7XG4gIC8qKlxuICAgKiBUdXJuIG9uIFR1cmJvcmVwbyBzdXBwb3J0LlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICB0dXJibz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnNhbCBvcHRpb25zIGZvciB0dXJib3JlcG8gY29uZmlnXG4gICAqL1xuICB0dXJib09wdGlvbnM/OiBUdXJib1JlcG9PcHRpb25zO1xuXG4gIC8qKlxuICAgKiBFbmFibGUgdGhlIHJlc2V0IHRhc2sgdGhhdCBkZWxldGVzIGFsbCBidWlsZCBhcnRpZmFjdHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlc2V0VGFzaz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRoZSByZXNldCB0YXNrLlxuICAgKi9cbiAgcmVzZXRUYXNrT3B0aW9ucz86IFJlc2V0VGFza09wdGlvbnM7XG5cbiAgLyoqXG4gICAqIFBOUE0gb3B0aW9ucyBmb3IgdGhlIG1vbm9yZXBvLlxuICAgKi9cbiAgcG5wbU9wdGlvbnM/OiB7XG4gICAgLyoqXG4gICAgICogVGhlIHZlcnNpb24gb2YgUE5QTSB0byB1c2UgaW4gdGhlIG1vbm9yZXBvLlxuICAgICAqIEBkZWZhdWx0IFZFUlNJT04uUE5QTV9WRVJTSU9OXG4gICAgICogQHNlZSB7QGxpbmsgc3JjL3ZlcnNpb25zLnRzfVxuICAgICAqL1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBPcHRpb25hbCBwbnBtIG9wdGlvbnMgZm9yIHRoZSBtb25vcmVwbyB3b3Jrc3BhY2UgZmlsZS5cbiAgICAgKi9cbiAgICBwbnBtV29ya3NwYWNlT3B0aW9ucz86IFBucG1Xb3Jrc3BhY2VPcHRpb25zO1xuICB9O1xuXG4gIC8qKlxuICAgKiBUdXJuIG9uIHRoZSB1cGdyYWRlIGNvbmZpZ3VyYXRvciB0YXNrIHRoYXQgd2lsbCBhdHRlbXB0IHRvIHVwZ3JhZGUgdGhlXG4gICAqIEBjb2RlZHJpZnRlcnMvY29uZmlndWxhdG9yIHBhY2thZ2UgdmVyc2lvbiBuaWdodGx5LiBUaGlzIGtlZXBzIHRoZVxuICAgKiBwcm9qZWN0IHVwLXRvLWRhdGUgd2l0aCB0aGUgbGF0ZXN0IG9mZmljaWFsIENvZGVEcmlmdGVycyBjb25maWdzLi5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdXBncmFkZUNvbmZpZ3VsYXRvclRhc2s/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgdXBncmFkZSBjb25maWd1cmF0b3IgdGFzay5cbiAgICpcbiAgICogQGRlZmF1bHQ6IGRhaWx5IHNjaGVkdWxlXG4gICAqL1xuICByZWFkb25seSB1cGdyYWRlQ29uZmlndWxhdG9yVGFza09wdGlvbnM/OiBVcGdyYWRlRGVwZW5kZW5jaWVzT3B0aW9ucztcbn1cblxuaW50ZXJmYWNlIEFwcGxpZWRPcHRpb25zXG4gIGV4dGVuZHMgVHlwZVNjcmlwdFByb2plY3RPcHRpb25zLCBNb25vcmVwb1Byb2plY3RPcHRpb25zIHt9XG5cbmV4cG9ydCBjbGFzcyBNb25vcmVwb1Byb2plY3QgZXh0ZW5kcyBUeXBlU2NyaXB0QXBwUHJvamVjdCB7XG4gIC8qKlxuICAgKiBWZXJzaW9uIG9mIFBOUE0gd2hpY2ggdGhlIHdob2xlIG1vbm9yZXBvIHNob3VsZCB1c2UuXG4gICAqL1xuICByZWFkb25seSBwbnBtVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCB0YXNrIHRoYXQgd2lsbCBhdHRlbXB0IHRvIHVwZ3JhZGUgdGhlIEBjb2RlZHJpZnRlcnMvY29uZmlndWxhdG9yXG4gICAqIHBhY2thZ2UgdmVyc2lvbiBuaWdodGx5LiBUaGlzIGtlZXBzIHRoZSBwcm9qZWN0IHVwLXRvLWRhdGUgd2l0aCB0aGUgbGF0ZXN0XG4gICAqIG9mZmljaWFsIENvZGVEcmlmdGVycyBjb25maWdzLlxuICAgKi9cbiAgcmVhZG9ubHkgdXBncmFkZUNvbmZpZ3VsYXRvclRhc2s/OiBVcGdyYWRlRGVwZW5kZW5jaWVzO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIGZ1bmN0aW9ucyB0byBjYWxsIGFmdGVyIGRlcGVuZGVuY2llcyBoYXZlIGJlZW4gaW5zdGFsbGVkLlxuICAgKi9cbiAgcHJpdmF0ZSBwb3N0SW5zdGFsbERlcGVuZGVuY2llcyA9IG5ldyBBcnJheTwoKSA9PiBib29sZWFuPigpO1xuXG4gIGNvbnN0cnVjdG9yKHVzZXJPcHRpb25zOiBNb25vcmVwb1Byb2plY3RPcHRpb25zKSB7XG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogQlVJTEQgV09SS0ZMT1cgT1BUSU9OU1xuICAgICAqXG4gICAgICogZGlzY292ZXIgc29tZSB0dXJibyBvcHRpb25zIGZvciBidWlsZCB3b3JrZmxvdywgaWYgbmVlZGVkLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3QgYnVpbGRXb3JrZmxvd09wdGlvbnM6IFBhcnRpYWw8QnVpbGRXb3JrZmxvd09wdGlvbnM+ID0gdXNlck9wdGlvbnNcbiAgICAgIC50dXJib09wdGlvbnM/LnJlbW90ZUNhY2hlT3B0aW9uc1xuICAgICAgPyBUdXJib1JlcG8uYnVpbGRXb3JrZmxvd09wdGlvbnMoXG4gICAgICAgICAgdXNlck9wdGlvbnMudHVyYm9PcHRpb25zLnJlbW90ZUNhY2hlT3B0aW9ucyxcbiAgICAgICAgKVxuICAgICAgOiB7fTtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIERFRkFVTFQgT1BUSU9OU1xuICAgICAqXG4gICAgICogVGhlc2UgYXJlIHRoZSBkZWZhdWx0IG9wdGlvbnMgdW5sZXNzIHlvdSBvdmVycmlkZSB3aXRoIG9wdGlvbiBpbnB1dHMuXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBjb25zdCBkZWZhdWx0T3B0aW9uczogT21pdDxcbiAgICAgIE1vbm9yZXBvUHJvamVjdE9wdGlvbnMsXG4gICAgICBcIm5hbWVcIiB8IFwiZGVmYXVsdFJlbGVhc2VCcmFuY2hcIlxuICAgID4gPSB7XG4gICAgICAvKipcbiAgICAgICAqIFVzZSB0eXBlc2NyaXB0IGJhc2VkIGNvbmZpZyBmaWxlLlxuICAgICAgICovXG4gICAgICBwcm9qZW5yY1RzOiB0cnVlLFxuXG4gICAgICAvKipcbiAgICAgICAqIFByb2plbiB2ZXJzaW9uIHNob3VsZCBiZSBwaW5uZWQgdG8gdGhlIGxvY2FsIHNwZWNpZmllZCB2ZXJzaW9uLlxuICAgICAgICovXG4gICAgICBwcm9qZW5WZXJzaW9uOiBcImNhdGFsb2c6XCIsXG5cbiAgICAgIC8qKlxuICAgICAgICogVXNlIFByZXR0aWVyIGZvciBjb2RlIGZvcm1hdHRpbmcuXG4gICAgICAgKi9cbiAgICAgIHByZXR0aWVyOiB0cnVlLFxuXG4gICAgICAvKipcbiAgICAgICAqIE5vdCBsaWNlbnNlZCBieSBkZWZhdWx0LlxuICAgICAgICovXG4gICAgICBsaWNlbnNlZDogZmFsc2UsXG5cbiAgICAgIC8qKlxuICAgICAgICogR2l0SHViIG9wdGlvbnMgZm9yIHRoZSBtb25vcmVwby5cbiAgICAgICAqIERvbid0IGVuYWJsZSBtZXJnaWZ5IGJ5IGRlZmF1bHQuXG4gICAgICAgKi9cbiAgICAgIGdpdGh1Yk9wdGlvbnM6IHtcbiAgICAgICAgbWVyZ2lmeTogZmFsc2UsXG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIENvbmZpZ3VyZSBwdWxsIHJlcXVlc3QgbGludGluZyB0byB2YWxpZGF0ZSBQUiB0aXRsZXMgZm9sbG93IENvbnZlbnRpb25hbCBDb21taXRzLlxuICAgICAgICAgKiBCeSBkZWZhdWx0LCBhbGwgY29udmVudGlvbmFsIGNvbW1pdCB0eXBlcyBhcmUgYWxsb3dlZCwgcHJvdmlkaW5nIGZsZXhpYmlsaXR5XG4gICAgICAgICAqIGZvciBkaWZmZXJlbnQgdHlwZXMgb2YgY2hhbmdlcyAoZmVhdHVyZXMsIGZpeGVzLCBkb2N1bWVudGF0aW9uLCByZWZhY3RvcmluZywgZXRjLikuXG4gICAgICAgICAqL1xuICAgICAgICBwdWxsUmVxdWVzdExpbnRPcHRpb25zOiB7XG4gICAgICAgICAgc2VtYW50aWNUaXRsZU9wdGlvbnM6IHtcbiAgICAgICAgICAgIC8qKlxuICAgICAgICAgICAgICogQWxsb3dlZCBjb252ZW50aW9uYWwgY29tbWl0IHR5cGVzIGZvciBQUiB0aXRsZXMuXG4gICAgICAgICAgICAgKiBUaGlzIGluY2x1ZGVzIGFsbCBzdGFuZGFyZCB0eXBlcyBmcm9tIHRoZSBDb252ZW50aW9uYWwgQ29tbWl0cyBzcGVjaWZpY2F0aW9uOlxuICAgICAgICAgICAgICogLSBmZWF0OiBOZXcgZmVhdHVyZXNcbiAgICAgICAgICAgICAqIC0gZml4OiBCdWcgZml4ZXNcbiAgICAgICAgICAgICAqIC0gZG9jczogRG9jdW1lbnRhdGlvbiBjaGFuZ2VzXG4gICAgICAgICAgICAgKiAtIHN0eWxlOiBDb2RlIHN0eWxlIGNoYW5nZXMgKGZvcm1hdHRpbmcsIGV0Yy4pXG4gICAgICAgICAgICAgKiAtIHJlZmFjdG9yOiBDb2RlIHJlZmFjdG9yaW5nXG4gICAgICAgICAgICAgKiAtIHBlcmY6IFBlcmZvcm1hbmNlIGltcHJvdmVtZW50c1xuICAgICAgICAgICAgICogLSB0ZXN0OiBUZXN0IGFkZGl0aW9ucyBvciBjaGFuZ2VzXG4gICAgICAgICAgICAgKiAtIGJ1aWxkOiBCdWlsZCBzeXN0ZW0gY2hhbmdlc1xuICAgICAgICAgICAgICogLSBjaTogQ0kgY29uZmlndXJhdGlvbiBjaGFuZ2VzXG4gICAgICAgICAgICAgKiAtIGNob3JlOiBNYWludGVuYW5jZSB0YXNrc1xuICAgICAgICAgICAgICogLSByZXZlcnQ6IFJldmVydCBjb21taXRzXG4gICAgICAgICAgICAgKi9cbiAgICAgICAgICAgIHR5cGVzOiBbXG4gICAgICAgICAgICAgIFwiZmVhdFwiLFxuICAgICAgICAgICAgICBcImZpeFwiLFxuICAgICAgICAgICAgICBcImRvY3NcIixcbiAgICAgICAgICAgICAgXCJzdHlsZVwiLFxuICAgICAgICAgICAgICBcInJlZmFjdG9yXCIsXG4gICAgICAgICAgICAgIFwicGVyZlwiLFxuICAgICAgICAgICAgICBcInRlc3RcIixcbiAgICAgICAgICAgICAgXCJidWlsZFwiLFxuICAgICAgICAgICAgICBcImNpXCIsXG4gICAgICAgICAgICAgIFwiY2hvcmVcIixcbiAgICAgICAgICAgICAgXCJyZXZlcnRcIixcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogRGVmYXVsdCBQTlBNIHZlcnNpb24gdG8gdXNlIGluIHRoZSBtb25vcmVwby5cbiAgICAgICAqL1xuICAgICAgcG5wbVZlcnNpb246IFZFUlNJT04uUE5QTV9WRVJTSU9OLFxuXG4gICAgICAvKipcbiAgICAgICAqIFdlIGRvbid0IHdhbnQgc2FtcGxlIGNvZGUgZ2VuZXJhdGVkIGZvciB0aGUgcm9vdCBwcm9qZWN0LlxuICAgICAgICovXG4gICAgICBzYW1wbGVDb2RlOiBmYWxzZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBKZXN0IGlzIG5vdCByZXF1aXJlZCBpbiB0aGUgcm9vdCBwcm9qZWN0LlxuICAgICAgICovXG4gICAgICBqZXN0OiBmYWxzZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBEb24ndCByZWxlYXNlIHRoZSByb290IHByb2plY3QuXG4gICAgICAgKi9cbiAgICAgIHJlbGVhc2U6IGZhbHNlLFxuXG4gICAgICAvKipcbiAgICAgICAqIFVwcGdyYWRlIGRlcGVuZGVuY2llcyBhdXRvbWF0aWNhbGx5IHVubGVzcyBvdGhlcndpc2UgaW5zdHJ1Y3RlZC5cbiAgICAgICAqL1xuICAgICAgZGVwc1VwZ3JhZGU6IHRydWUsXG4gICAgICBkZXBzVXBncmFkZU9wdGlvbnM6IHtcbiAgICAgICAgd29ya2Zsb3dPcHRpb25zOiB7XG4gICAgICAgICAgc2NoZWR1bGU6IFVwZ3JhZGVEZXBlbmRlbmNpZXNTY2hlZHVsZS5XRUVLTFksXG4gICAgICAgIH0sXG4gICAgICAgIGNvb2xkb3duOiAxLFxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBEaXNhYmxlIHRzY29uZmlnLmRldi5qc29uIGluIHRoZSByb290IHNpbmNlIHdlIGFyZW4ndCBnb2luZyB0byBiZVxuICAgICAgICogZGV2ZWxvcGluZyBhbnkgY29kZSBoZXJlLiBJdCdzIGp1c3QgYSB0YXNrIHJ1bm5lciBhbmQgY29uZmlndXJhdGlvblxuICAgICAgICogdG9vbCBmb3Igc3ViLXByb2plY3RzLlxuICAgICAgICovXG4gICAgICBkaXNhYmxlVHNjb25maWdEZXY6IHRydWUsXG5cbiAgICAgIC8qKlxuICAgICAgICogS2lsbCB0aGUgc3JjZGlyIGluIHRoZSByb290IHNpbmNlIHdlIGFyZW4ndCB1c2luZyBvbmUuXG4gICAgICAgKi9cbiAgICAgIHRzY29uZmlnOiB7XG4gICAgICAgIGNvbXBpbGVyT3B0aW9uczoge1xuICAgICAgICAgIHJvb3REaXI6IHVuZGVmaW5lZCxcbiAgICAgICAgfSxcbiAgICAgICAgZXhjbHVkZTogW1wibm9kZV9tb2R1bGVzXCJdLFxuICAgICAgfSxcblxuICAgICAgLyoqXG4gICAgICAgKiBFbmFibGUgdHVyYm9yZXBvIGJ5IGRlZmF1bHQuXG4gICAgICAgKi9cbiAgICAgIHR1cmJvOiB0cnVlLFxuXG4gICAgICAvKipcbiAgICAgICAqIEVuYWJsZSByZXNldCB0YXNrIGJ5IGRlZmF1bHQuXG4gICAgICAgKi9cbiAgICAgIHJlc2V0VGFzazogdHJ1ZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBJbmNsdWRlIHNlbGYgYXMgYSBkZXZEZXBcbiAgICAgICAqL1xuICAgICAgZGV2RGVwczogW1wiQGNvZGVkcmlmdGVycy9jb25maWd1bGF0b3JcIiwgXCJAY29kZWRyaWZ0ZXJzL3V0aWxzXCJdLFxuXG4gICAgICAvKipcbiAgICAgICAqIFBOUE0gb3B0aW9ucyBmb3IgdGhlIG1vbm9yZXBvLlxuICAgICAgICovXG4gICAgICBwbnBtT3B0aW9uczoge1xuICAgICAgICBwbnBtV29ya3NwYWNlT3B0aW9uczoge1xuICAgICAgICAgIGRlZmF1bHRDYXRhbG9nOiB7XG4gICAgICAgICAgICBbXCJhd3MtY2RrXCJdOiBWRVJTSU9OLkFXU19DREtfQ0xJX1ZFUlNJT04sXG4gICAgICAgICAgICBbXCJhd3MtY2RrLWxpYlwiXTogVkVSU0lPTi5BV1NfQ0RLX0xJQl9WRVJTSU9OLFxuICAgICAgICAgICAgW1wicHJvamVuXCJdOiBWRVJTSU9OLlBST0pFTl9WRVJTSU9OLFxuICAgICAgICAgICAgW1wiY29uc3RydWN0c1wiXTogVkVSU0lPTi5BV1NfQ09OU1RSVUNUU19WRVJTSU9OLFxuICAgICAgICAgICAgW1widHVyYm9cIl06IFZFUlNJT04uVFVSQk9fVkVSU0lPTixcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogUkVRVUlSRUQgT1BUSU9OU1xuICAgICAqXG4gICAgICogVGhlc2Ugb3B0aW9ucyBjYW5ub3QgYmUgY2hhbmdlZCBieSB0aGUgdXNlci5cbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGNvbnN0IHJlcXVpcmVkT3B0aW9uczogT21pdDxUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMsIFwibmFtZVwiPiA9IHtcbiAgICAgIC8qKlxuICAgICAgICogVGhpcyBpcyByZXF1aXJlZCBiZWNhdXNlIGl0J3Mgc3RhbmRhcmQgcHJhY3RpY2UgYW5kIGFsc28gdG8gc2ltcGxpZnlcbiAgICAgICAqIHNvbWUgd29ya2Zsb3cgZGVzaWduLlxuICAgICAgICovXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogXCJtYWluXCIsXG5cbiAgICAgIC8qKlxuICAgICAgICogVXNlIFBOUE0gaW5zdGVhZCBvZiB0aGUgZGVmYXVsdCAoWWFybikuIE11Y2ggb2YgdGhlIGVjb3N5c3RlbSBkZXBlbmRzXG4gICAgICAgKiBvbiBQTlBNIGFuZCBtYWtpbmcgbW9ub3JlcG9zIFBOUE0gb25seSBzaW1wbGlmaWVzIG1hbnkgY29uZmlndXJhdGlvbnMuXG4gICAgICAgKi9cbiAgICAgIHBhY2thZ2VNYW5hZ2VyOiBOb2RlUGFja2FnZU1hbmFnZXIuUE5QTSxcblxuICAgICAgLyoqXG4gICAgICAgKiBTb21lIGFkZGl0aW9uYWwgcHJlLWJ1aWxkIHN0ZXBzIGlmIHdlJ3JlIHVzaW5nIHR1cmJvJ3MgcmVtb3RlIGNhY2hlLlxuICAgICAgICovXG4gICAgICBidWlsZFdvcmtmbG93T3B0aW9uczoge1xuICAgICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICAgIC4uLmJ1aWxkV29ya2Zsb3dPcHRpb25zPy5wZXJtaXNzaW9ucyxcbiAgICAgICAgICAuLi51c2VyT3B0aW9ucy5idWlsZFdvcmtmbG93T3B0aW9ucz8ucGVybWlzc2lvbnMsXG4gICAgICAgIH0sXG4gICAgICAgIHByZUJ1aWxkU3RlcHM6IFtcbiAgICAgICAgICAuLi4oYnVpbGRXb3JrZmxvd09wdGlvbnM/LnByZUJ1aWxkU3RlcHMgPz8gW10pLFxuICAgICAgICAgIC4uLih1c2VyT3B0aW9ucy5idWlsZFdvcmtmbG93T3B0aW9ucz8ucHJlQnVpbGRTdGVwcyA/PyBbXSksXG4gICAgICAgIF0sXG4gICAgICB9LFxuICAgIH07XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBDT05TVFJVQ1RPUlxuICAgICAqXG4gICAgICogQ29tYmluZXMgZGVmYXVsdCBvcHRpb25zIHdpdGggdXNlciBwcm92aWRlZCBvcHRpb25zIGFuZCByZXF1aXJlZCBvcHRpb25zLlxuICAgICAqIFN0b3JlIHRoZSBvcHRpb25zIGluIGEgY29uc3Qgc28gd2UgY2FuIHVzZSB0aGVtIGFmdGVyIHN1cGVyKCksIGZhcnRoZXJcbiAgICAgKiBpbnRvIHRoZSBjb25zdHJ1Y3RvciBmb3IgYWRkaXRpb25hbCBjb25maWd1cmF0aW9uLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3Qgb3B0aW9uczogQXBwbGllZE9wdGlvbnMgPSBtZXJnZShcbiAgICAgIGRlZmF1bHRPcHRpb25zLFxuICAgICAgdXNlck9wdGlvbnMsXG4gICAgICByZXF1aXJlZE9wdGlvbnMsXG4gICAgKTtcblxuICAgIHN1cGVyKHsgLi4ub3B0aW9ucyB9KTtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKlxuICAgICAqIFBVQkxJQyBQUk9QU1xuICAgICAqXG4gICAgICogU29tZSBwcm9wcyBhcmUgaGlkZGVuIGJ5IFByb2plbiBhbmQgd2UgbmVlZCB0byBleHBvc2UgdGhlbSBmb3IgdGhlXG4gICAgICogbW9ub3JlcG8gdG8gd29yayBwcm9wZXJseS4gVGhpcyBpcyB3aGVyZSB3ZSBzdG9yZSB0aGVtLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgdGhpcy5wbnBtVmVyc2lvbiA9IG9wdGlvbnMucG5wbVZlcnNpb24hO1xuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogQ1VTVE9NIENPTkZJR1NcbiAgICAgKlxuICAgICAqIFdlIGFkZCBzb21lIGFkZGl0aW9uYWwgY29uZmlndXJhdGlvbnMgdG8gdGhlIG1vbm9yZXBvIHJvb3QgcHJvamVjdCBiZWxvd1xuICAgICAqIHN1Y2ggYXMgVHVyYm9yZXBvLCBWUyBDb2RlIGNvbmZpZywgYW5kIHRoZSBQTlBNIHdvcmtzcGFjZSBmaWxlLlxuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgLyoqXG4gICAgICogQWRkIFZTQ29kZSBjb25maWd1cmF0aW9uXG4gICAgICovXG4gICAgbmV3IFZTQ29kZUNvbmZpZyh0aGlzKTtcblxuICAgIC8qKlxuICAgICAqIEFkZCB3b3Jrc3BhY2UgZGVmaW5pdGlvbiB0byBQTlBNIHJvb3RcbiAgICAgKi9cbiAgICBuZXcgUG5wbVdvcmtzcGFjZSh0aGlzLCBvcHRpb25zLnBucG1PcHRpb25zPy5wbnBtV29ya3NwYWNlT3B0aW9ucyk7XG5cbiAgICAvKipcbiAgICAgKiBUdXJuIG9uIHR1cmJvcmVwbyBzdXBwb3J0IGlmIHJlcXVlc3RlZC5cbiAgICAgKi9cbiAgICBpZiAob3B0aW9ucy50dXJibykge1xuICAgICAgbmV3IFR1cmJvUmVwbyh0aGlzLCBvcHRpb25zLnR1cmJvT3B0aW9ucyk7XG5cbiAgICAgIHRoaXMuYnVpbGRXb3JrZmxvdz8uYWRkUG9zdEJ1aWxkU3RlcHMoe1xuICAgICAgICBuYW1lOiBcIkJ1aWxkIFN1YiBQcm9qZWN0c1wiLFxuICAgICAgICBydW46IGBucHggcHJvamVuICR7Uk9PVF9DSV9UQVNLX05BTUV9YCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCByZXNldCB0YXNrIGlmIGVuYWJsZWQuXG4gICAgICovXG4gICAgaWYgKG9wdGlvbnMucmVzZXRUYXNrICE9PSBmYWxzZSkge1xuICAgICAgY29uc3QgZGVmYXVsdFJlc2V0VGFza09wdGlvbnM6IFJlc2V0VGFza09wdGlvbnMgPSB7XG4gICAgICAgIHBhdGhzVG9SZW1vdmU6IFtcIm5vZGVfbW9kdWxlc1wiLCBcIi50dXJib1wiLCBcImRpc3RcIiwgXCJsaWJcIl0sXG4gICAgICB9O1xuICAgICAgY29uc3QgdXNlclJlc2V0VGFza09wdGlvbnMgPSBvcHRpb25zLnJlc2V0VGFza09wdGlvbnMgPz8ge307XG4gICAgICBjb25zdCByZXNldFRhc2tPcHRpb25zOiBSZXNldFRhc2tPcHRpb25zID0gbWVyZ2UoXG4gICAgICAgIGRlZmF1bHRSZXNldFRhc2tPcHRpb25zLFxuICAgICAgICB7XG4gICAgICAgICAgLi4udXNlclJlc2V0VGFza09wdGlvbnMsXG4gICAgICAgICAgcGF0aHNUb1JlbW92ZTogW1xuICAgICAgICAgICAgLi4uKGRlZmF1bHRSZXNldFRhc2tPcHRpb25zLnBhdGhzVG9SZW1vdmUgPz8gW10pLFxuICAgICAgICAgICAgLi4uKHVzZXJSZXNldFRhc2tPcHRpb25zLnBhdGhzVG9SZW1vdmUgPz8gW10pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgICAgbmV3IFJlc2V0VGFzayh0aGlzLCByZXNldFRhc2tPcHRpb25zKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTcGVjaWZ5IHBhY2thZ2UgbWFuYWdlclxuICAgICAqL1xuICAgIC8vIGNvbnN0IHBucG1WZXJzaW9uID0gb3B0aW9ucy5wbnBtVmVyc2lvbiA/PyBWRVJTSU9OLlBOUE1fVkVSU0lPTjtcbiAgICB0aGlzLnBhY2thZ2UuZmlsZS5hZGRPdmVycmlkZShcbiAgICAgIFwicGFja2FnZU1hbmFnZXJcIixcbiAgICAgIGBwbnBtQCR7b3B0aW9ucy5wbnBtVmVyc2lvbn1gLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKiBBZGQgc29tZSBzaWxseSB0aGluZ3MgdG8gdGhlIGdpdGlnbm9yZS5cbiAgICAgKi9cbiAgICB0aGlzLmdpdGlnbm9yZT8uYWRkUGF0dGVybnMoXCIuRFNfU3RvcmVcIik7XG5cbiAgICAvKipcbiAgICAgKiBVc2UgY2F0YWxvZyB2ZXJzaW9uIGZvciBjb25zdHJ1Y3RzIHZlcnNpb25cbiAgICAgKi9cbiAgICB0aGlzLmFkZERldkRlcHMoXCJjb25zdHJ1Y3RzQGNhdGFsb2c6XCIpO1xuXG4gICAgLyoqXG4gICAgICogQWRkIGEgdGFzayBvbiB0aGUgbW9ub3JlcG8ncyByb290IHByb2plY3QgdGhhdCB3aWxsIGF0dGVtcHQgdG8gdXBncmFkZVxuICAgICAqIHRoZSBAY29kZWRyaWZ0ZXJzL2NvbmZpZ3VsYXRvciBwYWNrYWdlIHZlcnNpb24gbmlnaHRseS4gVGhpcyBrZWVwcyB0aGVcbiAgICAgKiBwcm9qZWN0IHVwLXRvLWRhdGUgd2l0aCB0aGUgbGF0ZXN0IG9mZmljaWFsIENvZGVEcmlmdGVycyBjb25maWdzLi5cbiAgICAgKi9cbiAgICBpZiAob3B0aW9ucy51cGdyYWRlQ29uZmlndWxhdG9yVGFzayAhPT0gZmFsc2UpIHtcbiAgICAgIHRoaXMudXBncmFkZUNvbmZpZ3VsYXRvclRhc2sgPSBuZXcgVXBncmFkZURlcGVuZGVuY2llcyhcbiAgICAgICAgdGhpcyxcbiAgICAgICAgbWVyZ2UoXG4gICAgICAgICAge1xuICAgICAgICAgICAgaW5jbHVkZTogW1wiQGNvZGVkcmlmdGVycy9jb25maWd1bGF0b3JcIiwgXCJAY29kZWRyaWZ0ZXJzL3V0aWxzXCJdLFxuICAgICAgICAgICAgdGFza05hbWU6IGB1cGdyYWRlLWNvZGVkcmlmdGVycy1jb25maWd1bGF0b3JgLFxuICAgICAgICAgICAgd29ya2Zsb3dPcHRpb25zOiB7XG4gICAgICAgICAgICAgIHNjaGVkdWxlOiBVcGdyYWRlRGVwZW5kZW5jaWVzU2NoZWR1bGUuREFJTFksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgb3B0aW9ucy51cGdyYWRlQ29uZmlndWxhdG9yVGFza09wdGlvbnMgPz8ge30sXG4gICAgICAgICksXG4gICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSBhbGwgcGFja2FnZXMgYWZ0ZXIgdGhlIHJvb3Qgb2YgdGhlIG1vbm9yZXBvJ3MgdXBkYXRlZC5cbiAgICAgKiBSdW4gdGhlIGRlZmF1bHQgdGFzayBhZnRlciB0aGUgdXBncmFkZSB0byBlbnN1cmUgYWxsIHBhY2thZ2VzIGFyZVxuICAgICAqIHVwZGF0ZWQuIEluIHBhcnRpY3VsYXIgbWFrZSBzdXJlIHRoZSBwbnBtLXdvcmtzcGFjZSBmaWxlIHdhcyBub3RcbiAgICAgKiB0YW1wZXJlZCB3aXRoIGR1cmluZyB0aGUgdXBncmFkZS5cbiAgICAgKi9cbiAgICB0aGlzLnRhc2tzLnRyeUZpbmQoXCJwb3N0LXVwZ3JhZGVcIik/LmV4ZWMoXCJwbnBtIHVwZ3JhZGUgLXJcIik7XG4gICAgdGhpcy50YXNrcy50cnlGaW5kKFwicG9zdC11cGdyYWRlXCIpPy5zcGF3bih0aGlzLmRlZmF1bHRUYXNrISk7XG4gIH1cblxuICAvKipcbiAgICogQWxsb3dzIGEgc3ViIHByb2plY3QgdG8gcmVxdWVzdCBpbnN0YWxsYXRpb24gb2YgZGVwZW5kZW5jeSBhdCB0aGUgTW9ub3JlcG8gcm9vdFxuICAgKiBUaGV5IG11c3QgcHJvdmlkZSBhIGZ1bmN0aW9uIHRoYXQgaXMgZXhlY3V0ZWQgYWZ0ZXIgZGVwZW5kZW5jaWVzIGhhdmUgYmVlbiBpbnN0YWxsZWRcbiAgICogSWYgdGhpcyBmdW5jdGlvbiByZXR1cm5zIHRydWUsIHRoZSBpbnN0YWxsIGNvbW1hbmQgaXMgcnVuIGZvciBhIHNlY29uZCB0aW1lIGFmdGVyIGFsbCBzdWIgcHJvamVjdCByZXF1ZXN0cyBoYXZlIHJ1bi5cbiAgICogVGhpcyBpcyB1c2VkIHRvIHJlc29sdmUgZGVwZW5kZW5jeSB2ZXJzaW9ucyBmcm9tIGAqYCB0byBhIGNvbmNyZXRlIHZlcnNpb24gY29uc3RyYWludC5cbiAgICovXG4gIHB1YmxpYyByZXF1ZXN0SW5zdGFsbERlcGVuZGVuY2llcyhyZXNvbHZlcjogSURlcGVuZGVuY3lSZXNvbHZlcikge1xuICAgIHRoaXMucG9zdEluc3RhbGxEZXBlbmRlbmNpZXMucHVzaChyZXNvbHZlci5yZXNvbHZlRGVwc0FuZFdyaXRlUGFja2FnZUpzb24pO1xuICB9XG5cbiAgLyoqXG4gICAqIEhvb2tzIGludG8gdGhlIGluc3RhbGwgZGVwZW5kZW5jaWVzIGN5Y2xlXG4gICAqL1xuICBwdWJsaWMgcG9zdFN5bnRoZXNpemUoKSB7XG4gICAgaWYgKHRoaXMucG9zdEluc3RhbGxEZXBlbmRlbmNpZXMubGVuZ3RoKSB7XG4gICAgICBjb25zdCBub2RlUGtnOiBhbnkgPSB0aGlzLnBhY2thZ2U7XG4gICAgICBub2RlUGtnLmluc3RhbGxEZXBlbmRlbmNpZXMoKTtcblxuICAgICAgY29uc3QgY29tcGxldGVkUmVxdWVzdHMgPSB0aGlzLnBvc3RJbnN0YWxsRGVwZW5kZW5jaWVzLm1hcCgocmVxdWVzdCkgPT5cbiAgICAgICAgcmVxdWVzdCgpLFxuICAgICAgKTtcbiAgICAgIGlmIChjb21wbGV0ZWRSZXF1ZXN0cy5zb21lKEJvb2xlYW4pKSB7XG4gICAgICAgIG5vZGVQa2cuaW5zdGFsbERlcGVuZGVuY2llcygpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnBvc3RJbnN0YWxsRGVwZW5kZW5jaWVzID0gW107XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
@@ -85,7 +85,9 @@ class TypeScriptProject extends projen_1.typescript.TypeScriptProject {
|
|
|
85
85
|
* project as default catalog dependencies since we want to let the
|
|
86
86
|
* catalog manage those dependencies.
|
|
87
87
|
*/
|
|
88
|
+
depsUpgrade: true,
|
|
88
89
|
depsUpgradeOptions: {
|
|
90
|
+
workflow: false,
|
|
89
91
|
exclude: Object.keys(pnpmWorkspace?.defaultCatalog || {}),
|
|
90
92
|
...(userOptions.parent && userOptions.parent instanceof monorepo_project_1.MonorepoProject
|
|
91
93
|
? {
|
|
@@ -175,7 +177,23 @@ class TypeScriptProject extends projen_1.typescript.TypeScriptProject {
|
|
|
175
177
|
});
|
|
176
178
|
new reset_task_1.ResetTask(this, resetTaskOptions);
|
|
177
179
|
}
|
|
180
|
+
/**
|
|
181
|
+
*
|
|
182
|
+
*/
|
|
183
|
+
if (options.parent && options.parent instanceof monorepo_project_1.MonorepoProject) {
|
|
184
|
+
// Install dependencies via the parent project
|
|
185
|
+
/* @ts-ignore access private method */
|
|
186
|
+
const originalResolve = this.package.resolveDepsAndWritePackageJson;
|
|
187
|
+
/* @ts-ignore access private method */
|
|
188
|
+
this.package.installDependencies = () => {
|
|
189
|
+
options.parent.requestInstallDependencies({
|
|
190
|
+
resolveDepsAndWritePackageJson: () => originalResolve.apply(this.package),
|
|
191
|
+
});
|
|
192
|
+
};
|
|
193
|
+
/* @ts-ignore access private method */
|
|
194
|
+
this.package.resolveDepsAndWritePackageJson = () => { };
|
|
195
|
+
}
|
|
178
196
|
}
|
|
179
197
|
}
|
|
180
198
|
exports.TypeScriptProject = TypeScriptProject;
|
|
181
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdC1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2plY3RzL3R5cGVzY3JpcHQtcHJvamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBb0M7QUFDcEMsc0RBSStCO0FBQy9CLGdEQUFvRDtBQUNwRCwrQ0FBcUM7QUFDckMseURBQXFEO0FBQ3JELGtDQUF3QztBQUN4QyxvREFBa0U7QUFDbEUsb0NBQXFDO0FBQ3JDLDBDQUFzQztBQXNCdEMsTUFBYSxpQkFBa0IsU0FBUSxtQkFBVSxDQUFDLGlCQUFpQjtJQUNqRSxZQUFZLFdBQXFDO1FBQy9DOzs7O1dBSUc7UUFDSCxNQUFNLFdBQVcsR0FDZixXQUFXLENBQUMsTUFBTSxJQUFJLFdBQVcsQ0FBQyxNQUFNLFlBQVksa0NBQWU7WUFDakUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsV0FBVztZQUNoQyxDQUFDLENBQUMsa0JBQU8sQ0FBQyxZQUFZLENBQUM7UUFFM0I7O1dBRUc7UUFDSCxNQUFNLGFBQWEsR0FDakIsV0FBVyxDQUFDLE1BQU0sSUFBSSxXQUFXLENBQUMsTUFBTSxZQUFZLGtDQUFlO1lBQ2pFLENBQUMsQ0FBQyxvQkFBYSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsTUFBeUIsQ0FBQztZQUN6RCxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWhCOzs7O2tGQUkwRTtRQUUxRSxNQUFNLGNBQWMsR0FFaEI7WUFDRjs7ZUFFRztZQUNILG9CQUFvQixFQUFFLE1BQU07WUFFNUI7O2VBRUc7WUFDSCxTQUFTLEVBQUUsSUFBSTtZQUVmOztlQUVHO1lBQ0gsY0FBYyxFQUFFLCtCQUFrQixDQUFDLElBQUk7WUFDdkMsV0FBVyxFQUFFLFdBQVc7WUFDeEIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxPQUFPLEtBQUssU0FBUyxJQUFJLEtBQUs7WUFDcEQsY0FBYyxFQUFFLGNBQWM7WUFDOUIsT0FBTyxFQUFFLEtBQUs7WUFF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QUFxQjtnQkFDaEQsYUFBYSxFQUFFO29CQUNiLGNBQWM7b0JBQ2QsTUFBTTtvQkFDTixLQUFLO29CQUNMLFVBQVU7b0JBQ1YsY0FBYztvQkFDZCxRQUFRO29CQUNSLHNCQUFzQjtvQkFDdEIsSUFBSSxDQUFDLGtCQUFrQjtpQkFDeEI7YUFDRixDQUFDO1lBQ0YsTUFBTSxvQkFBb0IsR0FBRyxPQUFPLENBQUMsZ0JBQWdCLElBQUksRUFBRSxDQUFDO1lBQzVELE1BQU0sZ0JBQWdCLEdBQXFCLElBQUEsb0JBQUssRUFDOUMsdUJBQXVCLEVBQ3ZCO2dCQUNFLEdBQUcsb0JBQW9CO2dCQUN2QixhQUFhLEVBQUU7b0JBQ2IsR0FBRyxDQUFDLHVCQUF1QixDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUM7b0JBQ2hELEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDO2lCQUM5QzthQUNGLENBQ0YsQ0FBQztZQUNGLElBQUksc0JBQVMsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN4QyxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBdk1ELDhDQXVNQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGVzY3JpcHQgfSBmcm9tIFwicHJvamVuXCI7XG5pbXBvcnQge1xuICBOb2RlUGFja2FnZU1hbmFnZXIsXG4gIFRyYW5zZm9ybSxcbiAgVXBncmFkZURlcGVuZGVuY2llc1NjaGVkdWxlLFxufSBmcm9tIFwicHJvamVuL2xpYi9qYXZhc2NyaXB0XCI7XG5pbXBvcnQgeyBSZWxlYXNlVHJpZ2dlciB9IGZyb20gXCJwcm9qZW4vbGliL3JlbGVhc2VcIjtcbmltcG9ydCB7IG1lcmdlIH0gZnJvbSBcInRzLWRlZXBtZXJnZVwiO1xuaW1wb3J0IHsgTW9ub3JlcG9Qcm9qZWN0IH0gZnJvbSBcIi4vbW9ub3JlcG8tcHJvamVjdFwiO1xuaW1wb3J0IHsgUG5wbVdvcmtzcGFjZSB9IGZyb20gXCIuLi9wbnBtXCI7XG5pbXBvcnQgeyBSZXNldFRhc2ssIFJlc2V0VGFza09wdGlvbnMgfSBmcm9tIFwiLi4vdGFza3MvcmVzZXQtdGFza1wiO1xuaW1wb3J0IHsgVHVyYm9SZXBvIH0gZnJvbSBcIi4uL3R1cmJvXCI7XG5pbXBvcnQgeyBWRVJTSU9OIH0gZnJvbSBcIi4uL3ZlcnNpb25zXCI7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBUeXBlU2NyaXB0UHJvamVjdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMgZXh0ZW5kcyBPbWl0PFxuICB0eXBlc2NyaXB0LlR5cGVTY3JpcHRQcm9qZWN0T3B0aW9ucyxcbiAgXCJkZWZhdWx0UmVsZWFzZUJyYW5jaFwiXG4+IHtcbiAgLyoqXG4gICAqIEVuYWJsZSB0aGUgcmVzZXQgdGFzayB0aGF0IGRlbGV0ZXMgYWxsIGJ1aWxkIGFydGlmYWN0cy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVzZXRUYXNrPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIHJlc2V0IHRhc2suXG4gICAqL1xuICByZWFkb25seSByZXNldFRhc2tPcHRpb25zPzogUmVzZXRUYXNrT3B0aW9ucztcbn1cblxuZXhwb3J0IGNsYXNzIFR5cGVTY3JpcHRQcm9qZWN0IGV4dGVuZHMgdHlwZXNjcmlwdC5UeXBlU2NyaXB0UHJvamVjdCB7XG4gIGNvbnN0cnVjdG9yKHVzZXJPcHRpb25zOiBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMpIHtcbiAgICAvKipcbiAgICAgKiBEZWZhdWx0IFBOUE0gdmVyc2lvbiB0byB1c2UuIFRoaXMgd2lsbCBlaXRoZXIgY29tZSBmcm9tIHRoZSBNb25vUmVwb1xuICAgICAqIHJvb3Qgb3IgZnJvbSB0aGUgZGVmYXVsdCBzcGVjaWZpZWQgaW4gY29uZmlndWxhdG9yLiBJZiB0aGUgdXNlciBwYXNzZXNcbiAgICAgKiBpbiBhIGRpZmZlcmVudCBwbnBtVmVyc2lvbiBpdCB3aWxsIGFsc28gb3ZlcnJpZGUgdGhpcy5cbiAgICAgKi9cbiAgICBjb25zdCBwbnBtVmVyc2lvbiA9XG4gICAgICB1c2VyT3B0aW9ucy5wYXJlbnQgJiYgdXNlck9wdGlvbnMucGFyZW50IGluc3RhbmNlb2YgTW9ub3JlcG9Qcm9qZWN0XG4gICAgICAgID8gdXNlck9wdGlvbnMucGFyZW50LnBucG1WZXJzaW9uXG4gICAgICAgIDogVkVSU0lPTi5QTlBNX1ZFUlNJT047XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHBucG0gd29ya3NwYWNlIGZyb20gdGhlIHBhcmVudCBwcm9qZWN0LlxuICAgICAqL1xuICAgIGNvbnN0IHBucG1Xb3Jrc3BhY2UgPVxuICAgICAgdXNlck9wdGlvbnMucGFyZW50ICYmIHVzZXJPcHRpb25zLnBhcmVudCBpbnN0YW5jZW9mIE1vbm9yZXBvUHJvamVjdFxuICAgICAgICA/IFBucG1Xb3Jrc3BhY2Uub2YodXNlck9wdGlvbnMucGFyZW50IGFzIE1vbm9yZXBvUHJvamVjdClcbiAgICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogRGVmYXVsdCBPcHRpb25zXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3QgZGVmYXVsdE9wdGlvbnM6IE9taXQ8VHlwZVNjcmlwdFByb2plY3RPcHRpb25zLCBcIm5hbWVcIj4gJiB7XG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogc3RyaW5nO1xuICAgIH0gPSB7XG4gICAgICAvKipcbiAgICAgICAqIFRoaXMgaXMgYSBzdGFuZGFyZCwgc28gZG9uJ3QgcmVxdWlyZSBpdCB0byBwYXNzZWQgaW4gZXZlcnl3aGVyZS5cbiAgICAgICAqL1xuICAgICAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6IFwibWFpblwiLFxuXG4gICAgICAvKipcbiAgICAgICAqIEVuYWJsZSByZXNldCB0YXNrIGJ5IGRlZmF1bHQuXG4gICAgICAgKi9cbiAgICAgIHJlc2V0VGFzazogdHJ1ZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBQYWNrYWdpbmcgb3B0aW9uc1xuICAgICAgICovXG4gICAgICBwYWNrYWdlTWFuYWdlcjogTm9kZVBhY2thZ2VNYW5hZ2VyLlBOUE0sXG4gICAgICBwbnBtVmVyc2lvbjogcG5wbVZlcnNpb24sXG4gICAgICBsaWNlbnNlZDogdXNlck9wdGlvbnMubGljZW5zZSAhPT0gdW5kZWZpbmVkIHx8IGZhbHNlLFxuICAgICAgY29weXJpZ2h0T3duZXI6IFwiQ29kZURyaWZ0ZXJzXCIsXG4gICAgICByZWxlYXNlOiBmYWxzZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBEb24ndCBhZGQgc2FtcGxlIGNvZGUuXG4gICAgICAgKi9cbiAgICAgIHNhbXBsZUNvZGU6IGZhbHNlLFxuXG4gICAgICAvKipcbiAgICAgICAqIE1ha2Ugc3VyZSBqZXN0IGNvbmZpZyBpcyBzdG9yZWQgb3V0c2lkZSBvZiBwYWNrYWdlLmpzb25cbiAgICAgICAqL1xuICAgICAgamVzdE9wdGlvbnM6IHtcbiAgICAgICAgY29uZmlnRmlsZVBhdGg6IFwiamVzdC5jb25maWcuanNvblwiLFxuICAgICAgICBqZXN0Q29uZmlnOiB7XG4gICAgICAgICAgcm9vdHM6IFtgPHJvb3REaXI+L3NyY2BdLFxuICAgICAgICAgIHRyYW5zZm9ybToge1xuICAgICAgICAgICAgW1wiXi4rXFxcXC5bdF1zeD8kXCJdOiBuZXcgVHJhbnNmb3JtKFwiQHN3Yy9qZXN0XCIpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgbW9kdWxlRmlsZUV4dGVuc2lvbnM6IFtcImpzXCIsIFwidHNcIl0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb24gcHJldHRpZXIgZm9ybWF0dGluZ1xuICAgICAgICovXG4gICAgICBwcmV0dGllcjogdHJ1ZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBTV0MgZm9yIGZhc3RlciB0ZXN0aW5nXG4gICAgICAgKi9cbiAgICAgIGRldkRlcHM6IFtcIkBzd2MvamVzdFwiLCBcIkBzd2MvY29yZVwiXSxcblxuICAgICAgLyoqXG4gICAgICAgKiBEb24ndCBwYWNrYWdlIHRlc3QgZmlsZXMuXG4gICAgICAgKi9cbiAgICAgIG5wbUlnbm9yZU9wdGlvbnM6IHtcbiAgICAgICAgaWdub3JlUGF0dGVybnM6IFtcIiouc3BlYy4qXCIsIFwiKi50ZXN0LipcIl0sXG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIE9wdGlvbnMgZm9yIHRoZSBhdXRvbWF0ZWQgZGVwZW5kZW5jeSB1cGdyYWRlIHRhc2sgLyB3b3JrZmxvd1xuICAgICAgICogQXV0b21hdGljYWxseSBleGNsdWRlIGFueSBwYWNrYWdlcyB0aGF0IGFyZSBtYW5hZ2VkIGJ5IHRoZSByb290XG4gICAgICAgKiBwcm9qZWN0IGFzIGRlZmF1bHQgY2F0YWxvZyBkZXBlbmRlbmNpZXMgc2luY2Ugd2Ugd2FudCB0byBsZXQgdGhlXG4gICAgICAgKiBjYXRhbG9nIG1hbmFnZSB0aG9zZSBkZXBlbmRlbmNpZXMuXG4gICAgICAgKi9cbiAgICAgIGRlcHNVcGdyYWRlT3B0aW9uczoge1xuICAgICAgICBleGNsdWRlOiBPYmplY3Qua2V5cyhwbnBtV29ya3NwYWNlPy5kZWZhdWx0Q2F0YWxvZyB8fCB7fSksXG4gICAgICAgIC4uLih1c2VyT3B0aW9ucy5wYXJlbnQgJiYgdXNlck9wdGlvbnMucGFyZW50IGluc3RhbmNlb2YgTW9ub3JlcG9Qcm9qZWN0XG4gICAgICAgICAgPyB7XG4gICAgICAgICAgICAgIHdvcmtmbG93T3B0aW9uczoge1xuICAgICAgICAgICAgICAgIHNjaGVkdWxlOiBVcGdyYWRlRGVwZW5kZW5jaWVzU2NoZWR1bGUuV0VFS0xZLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBjb29sZG93bjogMSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICA6IHt9KSxcbiAgICAgIH0sXG5cbiAgICAgIC8qKlxuICAgICAgICogT25seSByZWxlYXNlIHdoZW4gdGhlIHBhY2thZ2UgZm9sZGVyIHNvdXJjY2UgY29udGVudCBjaGFuZ2VzXG4gICAgICAgKi9cbiAgICAgIHJlbGVhc2VUcmlnZ2VyOiBSZWxlYXNlVHJpZ2dlci5jb250aW51b3VzKHtcbiAgICAgICAgcGF0aHM6IFtgJHt1c2VyT3B0aW9ucy5vdXRkaXJ9L3NyYy8qKmBdLFxuICAgICAgfSksXG4gICAgfTtcblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICpcbiAgICAgKiBNZXJnZSBkZWZhdWx0cyBpbnRvIHVzZXIgb3B0aW9uc1xuICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIGNvbnN0IG9wdGlvbnM6IFR5cGVTY3JpcHRQcm9qZWN0T3B0aW9ucyAmXG4gICAgICB0eXBlc2NyaXB0LlR5cGVTY3JpcHRQcm9qZWN0T3B0aW9ucyA9IG1lcmdlKGRlZmF1bHRPcHRpb25zLCB1c2VyT3B0aW9ucyk7XG5cbiAgICBzdXBlcihvcHRpb25zKTtcblxuICAgIC8qKlxuICAgICAqIFJlbW92ZSBqZXN0IHNpbmNlIHdlJ3ZlIHN3YXBwZWQgaW4gQHN3Yy9qZXN0IGluc3RlYWQgb2YgdHMtamVzdC5cbiAgICAgKi9cbiAgICB0aGlzLmRlcHMucmVtb3ZlRGVwZW5kZW5jeShcInRzLWplc3RcIik7XG5cbiAgICAvKipcbiAgICAgKiBTcGVjaWZ5IHBhY2thZ2UgbWFuYWdlclxuICAgICAqL1xuICAgIHRoaXMucGFja2FnZS5maWxlLmFkZE92ZXJyaWRlKFxuICAgICAgXCJwYWNrYWdlTWFuYWdlclwiLFxuICAgICAgYHBucG1AJHtvcHRpb25zLnBucG1WZXJzaW9ufWAsXG4gICAgKTtcblxuICAgIC8qKlxuICAgICAqXG4gICAgICogRGlzYWJsZSB0aGlzIHJ1bGUgZm9yIGFsbCB0ZXN0IGZpbGVzLlxuICAgICAqXG4gICAgICogVW5sZXNzIHdlIHR1cm4gdGhpcyBvZmYsIEVTTGludCB3aWxsIHN1Z2dlc3QgdGhhdCBhbnl0aGluZyBmb3VuZCBpbiBhIHRlc3RcbiAgICAgKiBuZWVkcyB0byBiZSBhIGRlcCBpbnN0ZWFkIG9mIGEgZGV2RGVwLiBQcm9qZW4gYWN0dWFsbHkgYWxyZWFkeSB0dXJucyBvZmZcbiAgICAgKiB0aGUgcnVsZSBmb3IgZmlsZXMgaW4gdGhlIHRlc3RzLyogZm9sZGVyIGJ1dCBzaW5jZSB3ZSBjb21tb25seSBwdXQgdGVzdHNcbiAgICAgKiBuZXh0IHRvIHRoZSBjb2RlIGl0J3MgdGVzdGluZywgd2UgbmVlZCB0byBkbyB0aGlzIG91cnNlbHZlcy5cbiAgICAgKlxuICAgICAqL1xuICAgIHRoaXMuZXNsaW50Py5hZGRPdmVycmlkZSh7XG4gICAgICBmaWxlczogW1wiKiovKi50ZXN0LipcIiwgXCIqKi8qLnNwZWMuKlwiXSxcbiAgICAgIHJ1bGVzOiB7XG4gICAgICAgIFwiaW1wb3J0L25vLWV4dHJhbmVvdXMtZGVwZW5kZW5jaWVzXCI6IFwib2ZmXCIsXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgLyoqXG4gICAgICogU29tZSBzdGFuZGFyZCBpZ25vcmVzIGZvciBhbGwgcHJvamVjdHMuXG4gICAgICovXG4gICAgdGhpcy5naXRpZ25vcmU/LmFkZFBhdHRlcm5zKFwiLkRTX1N0b3JlXCIpO1xuICAgIHRoaXMubnBtaWdub3JlPy5hZGRQYXR0ZXJucyhcIiouc3BlYy4qXCIsIFwiKi50ZXN0LipcIiwgXCJfX2ZpeHR1cmVzX19cIik7XG5cbiAgICAvKipcbiAgICAgKiBJZiB0dXJibyBpcyBhY3RpdmUgaW4gdGhlIHBhcmVudCBwcm9qZWN0LCBjb25maWd1cmUgaXQgaGVyZS5cbiAgICAgKi9cbiAgICBjb25zdCB0dXJib0FjdGl2ZSA9XG4gICAgICB1c2VyT3B0aW9ucy5wYXJlbnQgJiYgVHVyYm9SZXBvLm9mKHVzZXJPcHRpb25zLnBhcmVudCkgIT09IHVuZGVmaW5lZDtcbiAgICBpZiAodHVyYm9BY3RpdmUpIHtcbiAgICAgIGNvbnN0IHR1cmJvID0gbmV3IFR1cmJvUmVwbyh0aGlzKTtcbiAgICAgIHR1cmJvLmNvbXBpbGVUYXNrPy5vdXRwdXRzLnB1c2goXCJkaXN0LyoqXCIpO1xuICAgICAgdHVyYm8uY29tcGlsZVRhc2s/Lm91dHB1dHMucHVzaChcImxpYi8qKlwiKTtcbiAgICAgIC8vdHVyYm8udGVzdFRhc2s/LmlucHV0cy5wdXNoKFwic3JjLyoqXCIpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEFkZCByZXNldCB0YXNrIGlmIGVuYWJsZWQuXG4gICAgICovXG4gICAgaWYgKG9wdGlvbnMucmVzZXRUYXNrICE9PSBmYWxzZSkge1xuICAgICAgY29uc3QgZGVmYXVsdFJlc2V0VGFza09wdGlvbnM6IFJlc2V0VGFza09wdGlvbnMgPSB7XG4gICAgICAgIHBhdGhzVG9SZW1vdmU6IFtcbiAgICAgICAgICBcIm5vZGVfbW9kdWxlc1wiLFxuICAgICAgICAgIFwiZGlzdFwiLFxuICAgICAgICAgIFwibGliXCIsXG4gICAgICAgICAgXCJjb3ZlcmFnZVwiLFxuICAgICAgICAgIFwidGVzdC1yZXBvcnRzXCIsXG4gICAgICAgICAgXCIudHVyYm9cIixcbiAgICAgICAgICBcInRzY29uZmlnLnRzYnVpbGRpbmZvXCIsXG4gICAgICAgICAgdGhpcy5hcnRpZmFjdHNEaXJlY3RvcnksXG4gICAgICAgIF0sXG4gICAgICB9O1xuICAgICAgY29uc3QgdXNlclJlc2V0VGFza09wdGlvbnMgPSBvcHRpb25zLnJlc2V0VGFza09wdGlvbnMgPz8ge307XG4gICAgICBjb25zdCByZXNldFRhc2tPcHRpb25zOiBSZXNldFRhc2tPcHRpb25zID0gbWVyZ2UoXG4gICAgICAgIGRlZmF1bHRSZXNldFRhc2tPcHRpb25zLFxuICAgICAgICB7XG4gICAgICAgICAgLi4udXNlclJlc2V0VGFza09wdGlvbnMsXG4gICAgICAgICAgcGF0aHNUb1JlbW92ZTogW1xuICAgICAgICAgICAgLi4uKGRlZmF1bHRSZXNldFRhc2tPcHRpb25zLnBhdGhzVG9SZW1vdmUgPz8gW10pLFxuICAgICAgICAgICAgLi4uKHVzZXJSZXNldFRhc2tPcHRpb25zLnBhdGhzVG9SZW1vdmUgPz8gW10pLFxuICAgICAgICAgIF0sXG4gICAgICAgIH0sXG4gICAgICApO1xuICAgICAgbmV3IFJlc2V0VGFzayh0aGlzLCByZXNldFRhc2tPcHRpb25zKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
199
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXNjcmlwdC1wcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb2plY3RzL3R5cGVzY3JpcHQtcHJvamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBb0M7QUFDcEMsc0RBSStCO0FBQy9CLGdEQUFvRDtBQUNwRCwrQ0FBcUM7QUFDckMseURBQXFEO0FBQ3JELGtDQUF3QztBQUN4QyxvREFBa0U7QUFDbEUsb0NBQXFDO0FBQ3JDLDBDQUFzQztBQXNCdEMsTUFBYSxpQkFBa0IsU0FBUSxtQkFBVSxDQUFDLGlCQUFpQjtJQUNqRSxZQUFZLFdBQXFDO1FBQy9DOzs7O1dBSUc7UUFDSCxNQUFNLFdBQVcsR0FDZixXQUFXLENBQUMsTUFBTSxJQUFJLFdBQVcsQ0FBQyxNQUFNLFlBQVksa0NBQWU7WUFDakUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsV0FBVztZQUNoQyxDQUFDLENBQUMsa0JBQU8sQ0FBQyxZQUFZLENBQUM7UUFFM0I7O1dBRUc7UUFDSCxNQUFNLGFBQWEsR0FDakIsV0FBVyxDQUFDLE1BQU0sSUFBSSxXQUFXLENBQUMsTUFBTSxZQUFZLGtDQUFlO1lBQ2pFLENBQUMsQ0FBQyxvQkFBYSxDQUFDLEVBQUUsQ0FBQyxXQUFXLENBQUMsTUFBeUIsQ0FBQztZQUN6RCxDQUFDLENBQUMsU0FBUyxDQUFDO1FBRWhCOzs7O2tGQUkwRTtRQUUxRSxNQUFNLGNBQWMsR0FFaEI7WUFDRjs7ZUFFRztZQUNILG9CQUFvQixFQUFFLE1BQU07WUFFNUI7O2VBRUc7WUFDSCxTQUFTLEVBQUUsSUFBSTtZQUVmOztlQUVHO1lBQ0gsY0FBYyxFQUFFLCtCQUFrQixDQUFDLElBQUk7WUFDdkMsV0FBVyxFQUFFLFdBQVc7WUFDeEIsUUFBUSxFQUFFLFdBQVcsQ0FBQyxPQUFPLEtBQUssU0FBUyxJQUFJLEtBQUs7WUFDcEQsY0FBYyxFQUFFLGNBQWM7WUFDOUIsT0FBTyxFQUFFLEtBQUs7WUFF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TyxDQUFDLDhCQUE4QixHQUFHLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztRQUN6RCxDQUFDO0lBQ0gsQ0FBQztDQUNGO0FBNU5ELDhDQTROQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGVzY3JpcHQgfSBmcm9tIFwicHJvamVuXCI7XG5pbXBvcnQge1xuICBOb2RlUGFja2FnZU1hbmFnZXIsXG4gIFRyYW5zZm9ybSxcbiAgVXBncmFkZURlcGVuZGVuY2llc1NjaGVkdWxlLFxufSBmcm9tIFwicHJvamVuL2xpYi9qYXZhc2NyaXB0XCI7XG5pbXBvcnQgeyBSZWxlYXNlVHJpZ2dlciB9IGZyb20gXCJwcm9qZW4vbGliL3JlbGVhc2VcIjtcbmltcG9ydCB7IG1lcmdlIH0gZnJvbSBcInRzLWRlZXBtZXJnZVwiO1xuaW1wb3J0IHsgTW9ub3JlcG9Qcm9qZWN0IH0gZnJvbSBcIi4vbW9ub3JlcG8tcHJvamVjdFwiO1xuaW1wb3J0IHsgUG5wbVdvcmtzcGFjZSB9IGZyb20gXCIuLi9wbnBtXCI7XG5pbXBvcnQgeyBSZXNldFRhc2ssIFJlc2V0VGFza09wdGlvbnMgfSBmcm9tIFwiLi4vdGFza3MvcmVzZXQtdGFza1wiO1xuaW1wb3J0IHsgVHVyYm9SZXBvIH0gZnJvbSBcIi4uL3R1cmJvXCI7XG5pbXBvcnQgeyBWRVJTSU9OIH0gZnJvbSBcIi4uL3ZlcnNpb25zXCI7XG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBvcHRpb25zIGZvciBUeXBlU2NyaXB0UHJvamVjdC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMgZXh0ZW5kcyBPbWl0PFxuICB0eXBlc2NyaXB0LlR5cGVTY3JpcHRQcm9qZWN0T3B0aW9ucyxcbiAgXCJkZWZhdWx0UmVsZWFzZUJyYW5jaFwiXG4+IHtcbiAgLyoqXG4gICAqIEVuYWJsZSB0aGUgcmVzZXQgdGFzayB0aGF0IGRlbGV0ZXMgYWxsIGJ1aWxkIGFydGlmYWN0cy5cbiAgICpcbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVzZXRUYXNrPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3B0aW9ucyBmb3IgdGhlIHJlc2V0IHRhc2suXG4gICAqL1xuICByZWFkb25seSByZXNldFRhc2tPcHRpb25zPzogUmVzZXRUYXNrT3B0aW9ucztcbn1cblxuZXhwb3J0IGNsYXNzIFR5cGVTY3JpcHRQcm9qZWN0IGV4dGVuZHMgdHlwZXNjcmlwdC5UeXBlU2NyaXB0UHJvamVjdCB7XG4gIGNvbnN0cnVjdG9yKHVzZXJPcHRpb25zOiBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMpIHtcbiAgICAvKipcbiAgICAgKiBEZWZhdWx0IFBOUE0gdmVyc2lvbiB0byB1c2UuIFRoaXMgd2lsbCBlaXRoZXIgY29tZSBmcm9tIHRoZSBNb25vUmVwb1xuICAgICAqIHJvb3Qgb3IgZnJvbSB0aGUgZGVmYXVsdCBzcGVjaWZpZWQgaW4gY29uZmlndWxhdG9yLiBJZiB0aGUgdXNlciBwYXNzZXNcbiAgICAgKiBpbiBhIGRpZmZlcmVudCBwbnBtVmVyc2lvbiBpdCB3aWxsIGFsc28gb3ZlcnJpZGUgdGhpcy5cbiAgICAgKi9cbiAgICBjb25zdCBwbnBtVmVyc2lvbiA9XG4gICAgICB1c2VyT3B0aW9ucy5wYXJlbnQgJiYgdXNlck9wdGlvbnMucGFyZW50IGluc3RhbmNlb2YgTW9ub3JlcG9Qcm9qZWN0XG4gICAgICAgID8gdXNlck9wdGlvbnMucGFyZW50LnBucG1WZXJzaW9uXG4gICAgICAgIDogVkVSU0lPTi5QTlBNX1ZFUlNJT047XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHBucG0gd29ya3NwYWNlIGZyb20gdGhlIHBhcmVudCBwcm9qZWN0LlxuICAgICAqL1xuICAgIGNvbnN0IHBucG1Xb3Jrc3BhY2UgPVxuICAgICAgdXNlck9wdGlvbnMucGFyZW50ICYmIHVzZXJPcHRpb25zLnBhcmVudCBpbnN0YW5jZW9mIE1vbm9yZXBvUHJvamVjdFxuICAgICAgICA/IFBucG1Xb3Jrc3BhY2Uub2YodXNlck9wdGlvbnMucGFyZW50IGFzIE1vbm9yZXBvUHJvamVjdClcbiAgICAgICAgOiB1bmRlZmluZWQ7XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogRGVmYXVsdCBPcHRpb25zXG4gICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3QgZGVmYXVsdE9wdGlvbnM6IE9taXQ8VHlwZVNjcmlwdFByb2plY3RPcHRpb25zLCBcIm5hbWVcIj4gJiB7XG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogc3RyaW5nO1xuICAgIH0gPSB7XG4gICAgICAvKipcbiAgICAgICAqIFRoaXMgaXMgYSBzdGFuZGFyZCwgc28gZG9uJ3QgcmVxdWlyZSBpdCB0byBwYXNzZWQgaW4gZXZlcnl3aGVyZS5cbiAgICAgICAqL1xuICAgICAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6IFwibWFpblwiLFxuXG4gICAgICAvKipcbiAgICAgICAqIEVuYWJsZSByZXNldCB0YXNrIGJ5IGRlZmF1bHQuXG4gICAgICAgKi9cbiAgICAgIHJlc2V0VGFzazogdHJ1ZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBQYWNrYWdpbmcgb3B0aW9uc1xuICAgICAgICovXG4gICAgICBwYWNrYWdlTWFuYWdlcjogTm9kZVBhY2thZ2VNYW5hZ2VyLlBOUE0sXG4gICAgICBwbnBtVmVyc2lvbjogcG5wbVZlcnNpb24sXG4gICAgICBsaWNlbnNlZDogdXNlck9wdGlvbnMubGljZW5zZSAhPT0gdW5kZWZpbmVkIHx8IGZhbHNlLFxuICAgICAgY29weXJpZ2h0T3duZXI6IFwiQ29kZURyaWZ0ZXJzXCIsXG4gICAgICByZWxlYXNlOiBmYWxzZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBEb24ndCBhZGQgc2FtcGxlIGNvZGUuXG4gICAgICAgKi9cbiAgICAgIHNhbXBsZUNvZGU6IGZhbHNlLFxuXG4gICAgICAvKipcbiAgICAgICAqIE1ha2Ugc3VyZSBqZXN0IGNvbmZpZyBpcyBzdG9yZWQgb3V0c2lkZSBvZiBwYWNrYWdlLmpzb25cbiAgICAgICAqL1xuICAgICAgamVzdE9wdGlvbnM6IHtcbiAgICAgICAgY29uZmlnRmlsZVBhdGg6IFwiamVzdC5jb25maWcuanNvblwiLFxuICAgICAgICBqZXN0Q29uZmlnOiB7XG4gICAgICAgICAgcm9vdHM6IFtgPHJvb3REaXI+L3NyY2BdLFxuICAgICAgICAgIHRyYW5zZm9ybToge1xuICAgICAgICAgICAgW1wiXi4rXFxcXC5bdF1zeD8kXCJdOiBuZXcgVHJhbnNmb3JtKFwiQHN3Yy9qZXN0XCIpLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgbW9kdWxlRmlsZUV4dGVuc2lvbnM6IFtcImpzXCIsIFwidHNcIl0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIFR1cm4gb24gcHJldHRpZXIgZm9ybWF0dGluZ1xuICAgICAgICovXG4gICAgICBwcmV0dGllcjogdHJ1ZSxcblxuICAgICAgLyoqXG4gICAgICAgKiBTV0MgZm9yIGZhc3RlciB0ZXN0aW5nXG4gICAgICAgKi9cbiAgICAgIGRldkRlcHM6IFtcIkBzd2MvamVzdFwiLCBcIkBzd2MvY29yZVwiXSxcblxuICAgICAgLyoqXG4gICAgICAgKiBEb24ndCBwYWNrYWdlIHRlc3QgZmlsZXMuXG4gICAgICAgKi9cbiAgICAgIG5wbUlnbm9yZU9wdGlvbnM6IHtcbiAgICAgICAgaWdub3JlUGF0dGVybnM6IFtcIiouc3BlYy4qXCIsIFwiKi50ZXN0LipcIl0sXG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIE9wdGlvbnMgZm9yIHRoZSBhdXRvbWF0ZWQgZGVwZW5kZW5jeSB1cGdyYWRlIHRhc2sgLyB3b3JrZmxvd1xuICAgICAgICogQXV0b21hdGljYWxseSBleGNsdWRlIGFueSBwYWNrYWdlcyB0aGF0IGFyZSBtYW5hZ2VkIGJ5IHRoZSByb290XG4gICAgICAgKiBwcm9qZWN0IGFzIGRlZmF1bHQgY2F0YWxvZyBkZXBlbmRlbmNpZXMgc2luY2Ugd2Ugd2FudCB0byBsZXQgdGhlXG4gICAgICAgKiBjYXRhbG9nIG1hbmFnZSB0aG9zZSBkZXBlbmRlbmNpZXMuXG4gICAgICAgKi9cbiAgICAgIGRlcHNVcGdyYWRlOiB0cnVlLFxuICAgICAgZGVwc1VwZ3JhZGVPcHRpb25zOiB7XG4gICAgICAgIHdvcmtmbG93OiBmYWxzZSxcbiAgICAgICAgZXhjbHVkZTogT2JqZWN0LmtleXMocG5wbVdvcmtzcGFjZT8uZGVmYXVsdENhdGFsb2cgfHwge30pLFxuICAgICAgICAuLi4odXNlck9wdGlvbnMucGFyZW50ICYmIHVzZXJPcHRpb25zLnBhcmVudCBpbnN0YW5jZW9mIE1vbm9yZXBvUHJvamVjdFxuICAgICAgICAgID8ge1xuICAgICAgICAgICAgICB3b3JrZmxvd09wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBzY2hlZHVsZTogVXBncmFkZURlcGVuZGVuY2llc1NjaGVkdWxlLldFRUtMWSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgY29vbGRvd246IDEsXG4gICAgICAgICAgICB9XG4gICAgICAgICAgOiB7fSksXG4gICAgICB9LFxuXG4gICAgICAvKipcbiAgICAgICAqIE9ubHkgcmVsZWFzZSB3aGVuIHRoZSBwYWNrYWdlIGZvbGRlciBzb3VyY2NlIGNvbnRlbnQgY2hhbmdlc1xuICAgICAgICovXG4gICAgICByZWxlYXNlVHJpZ2dlcjogUmVsZWFzZVRyaWdnZXIuY29udGludW91cyh7XG4gICAgICAgIHBhdGhzOiBbYCR7dXNlck9wdGlvbnMub3V0ZGlyfS9zcmMvKipgXSxcbiAgICAgIH0pLFxuICAgIH07XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqXG4gICAgICogTWVyZ2UgZGVmYXVsdHMgaW50byB1c2VyIG9wdGlvbnNcbiAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBjb25zdCBvcHRpb25zOiBUeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMgJlxuICAgICAgdHlwZXNjcmlwdC5UeXBlU2NyaXB0UHJvamVjdE9wdGlvbnMgPSBtZXJnZShkZWZhdWx0T3B0aW9ucywgdXNlck9wdGlvbnMpO1xuXG4gICAgc3VwZXIob3B0aW9ucyk7XG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmUgamVzdCBzaW5jZSB3ZSd2ZSBzd2FwcGVkIGluIEBzd2MvamVzdCBpbnN0ZWFkIG9mIHRzLWplc3QuXG4gICAgICovXG4gICAgdGhpcy5kZXBzLnJlbW92ZURlcGVuZGVuY3koXCJ0cy1qZXN0XCIpO1xuXG4gICAgLyoqXG4gICAgICogU3BlY2lmeSBwYWNrYWdlIG1hbmFnZXJcbiAgICAgKi9cbiAgICB0aGlzLnBhY2thZ2UuZmlsZS5hZGRPdmVycmlkZShcbiAgICAgIFwicGFja2FnZU1hbmFnZXJcIixcbiAgICAgIGBwbnBtQCR7b3B0aW9ucy5wbnBtVmVyc2lvbn1gLFxuICAgICk7XG5cbiAgICAvKipcbiAgICAgKlxuICAgICAqIERpc2FibGUgdGhpcyBydWxlIGZvciBhbGwgdGVzdCBmaWxlcy5cbiAgICAgKlxuICAgICAqIFVubGVzcyB3ZSB0dXJuIHRoaXMgb2ZmLCBFU0xpbnQgd2lsbCBzdWdnZXN0IHRoYXQgYW55dGhpbmcgZm91bmQgaW4gYSB0ZXN0XG4gICAgICogbmVlZHMgdG8gYmUgYSBkZXAgaW5zdGVhZCBvZiBhIGRldkRlcC4gUHJvamVuIGFjdHVhbGx5IGFscmVhZHkgdHVybnMgb2ZmXG4gICAgICogdGhlIHJ1bGUgZm9yIGZpbGVzIGluIHRoZSB0ZXN0cy8qIGZvbGRlciBidXQgc2luY2Ugd2UgY29tbW9ubHkgcHV0IHRlc3RzXG4gICAgICogbmV4dCB0byB0aGUgY29kZSBpdCdzIHRlc3RpbmcsIHdlIG5lZWQgdG8gZG8gdGhpcyBvdXJzZWx2ZXMuXG4gICAgICpcbiAgICAgKi9cbiAgICB0aGlzLmVzbGludD8uYWRkT3ZlcnJpZGUoe1xuICAgICAgZmlsZXM6IFtcIioqLyoudGVzdC4qXCIsIFwiKiovKi5zcGVjLipcIl0sXG4gICAgICBydWxlczoge1xuICAgICAgICBcImltcG9ydC9uby1leHRyYW5lb3VzLWRlcGVuZGVuY2llc1wiOiBcIm9mZlwiLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8qKlxuICAgICAqIFNvbWUgc3RhbmRhcmQgaWdub3JlcyBmb3IgYWxsIHByb2plY3RzLlxuICAgICAqL1xuICAgIHRoaXMuZ2l0aWdub3JlPy5hZGRQYXR0ZXJucyhcIi5EU19TdG9yZVwiKTtcbiAgICB0aGlzLm5wbWlnbm9yZT8uYWRkUGF0dGVybnMoXCIqLnNwZWMuKlwiLCBcIioudGVzdC4qXCIsIFwiX19maXh0dXJlc19fXCIpO1xuXG4gICAgLyoqXG4gICAgICogSWYgdHVyYm8gaXMgYWN0aXZlIGluIHRoZSBwYXJlbnQgcHJvamVjdCwgY29uZmlndXJlIGl0IGhlcmUuXG4gICAgICovXG4gICAgY29uc3QgdHVyYm9BY3RpdmUgPVxuICAgICAgdXNlck9wdGlvbnMucGFyZW50ICYmIFR1cmJvUmVwby5vZih1c2VyT3B0aW9ucy5wYXJlbnQpICE9PSB1bmRlZmluZWQ7XG4gICAgaWYgKHR1cmJvQWN0aXZlKSB7XG4gICAgICBjb25zdCB0dXJibyA9IG5ldyBUdXJib1JlcG8odGhpcyk7XG4gICAgICB0dXJiby5jb21waWxlVGFzaz8ub3V0cHV0cy5wdXNoKFwiZGlzdC8qKlwiKTtcbiAgICAgIHR1cmJvLmNvbXBpbGVUYXNrPy5vdXRwdXRzLnB1c2goXCJsaWIvKipcIik7XG4gICAgICAvL3R1cmJvLnRlc3RUYXNrPy5pbnB1dHMucHVzaChcInNyYy8qKlwiKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBZGQgcmVzZXQgdGFzayBpZiBlbmFibGVkLlxuICAgICAqL1xuICAgIGlmIChvcHRpb25zLnJlc2V0VGFzayAhPT0gZmFsc2UpIHtcbiAgICAgIGNvbnN0IGRlZmF1bHRSZXNldFRhc2tPcHRpb25zOiBSZXNldFRhc2tPcHRpb25zID0ge1xuICAgICAgICBwYXRoc1RvUmVtb3ZlOiBbXG4gICAgICAgICAgXCJub2RlX21vZHVsZXNcIixcbiAgICAgICAgICBcImRpc3RcIixcbiAgICAgICAgICBcImxpYlwiLFxuICAgICAgICAgIFwiY292ZXJhZ2VcIixcbiAgICAgICAgICBcInRlc3QtcmVwb3J0c1wiLFxuICAgICAgICAgIFwiLnR1cmJvXCIsXG4gICAgICAgICAgXCJ0c2NvbmZpZy50c2J1aWxkaW5mb1wiLFxuICAgICAgICAgIHRoaXMuYXJ0aWZhY3RzRGlyZWN0b3J5LFxuICAgICAgICBdLFxuICAgICAgfTtcbiAgICAgIGNvbnN0IHVzZXJSZXNldFRhc2tPcHRpb25zID0gb3B0aW9ucy5yZXNldFRhc2tPcHRpb25zID8/IHt9O1xuICAgICAgY29uc3QgcmVzZXRUYXNrT3B0aW9uczogUmVzZXRUYXNrT3B0aW9ucyA9IG1lcmdlKFxuICAgICAgICBkZWZhdWx0UmVzZXRUYXNrT3B0aW9ucyxcbiAgICAgICAge1xuICAgICAgICAgIC4uLnVzZXJSZXNldFRhc2tPcHRpb25zLFxuICAgICAgICAgIHBhdGhzVG9SZW1vdmU6IFtcbiAgICAgICAgICAgIC4uLihkZWZhdWx0UmVzZXRUYXNrT3B0aW9ucy5wYXRoc1RvUmVtb3ZlID8/IFtdKSxcbiAgICAgICAgICAgIC4uLih1c2VyUmVzZXRUYXNrT3B0aW9ucy5wYXRoc1RvUmVtb3ZlID8/IFtdKSxcbiAgICAgICAgICBdLFxuICAgICAgICB9LFxuICAgICAgKTtcbiAgICAgIG5ldyBSZXNldFRhc2sodGhpcywgcmVzZXRUYXNrT3B0aW9ucyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICpcbiAgICAgKi9cblxuICAgIGlmIChvcHRpb25zLnBhcmVudCAmJiBvcHRpb25zLnBhcmVudCBpbnN0YW5jZW9mIE1vbm9yZXBvUHJvamVjdCkge1xuICAgICAgLy8gSW5zdGFsbCBkZXBlbmRlbmNpZXMgdmlhIHRoZSBwYXJlbnQgcHJvamVjdFxuICAgICAgLyogQHRzLWlnbm9yZSBhY2Nlc3MgcHJpdmF0ZSBtZXRob2QgKi9cbiAgICAgIGNvbnN0IG9yaWdpbmFsUmVzb2x2ZSA9IHRoaXMucGFja2FnZS5yZXNvbHZlRGVwc0FuZFdyaXRlUGFja2FnZUpzb247XG4gICAgICAvKiBAdHMtaWdub3JlIGFjY2VzcyBwcml2YXRlIG1ldGhvZCAqL1xuICAgICAgdGhpcy5wYWNrYWdlLmluc3RhbGxEZXBlbmRlbmNpZXMgPSAoKSA9PiB7XG4gICAgICAgIChvcHRpb25zLnBhcmVudCBhcyBNb25vcmVwb1Byb2plY3QpLnJlcXVlc3RJbnN0YWxsRGVwZW5kZW5jaWVzKHtcbiAgICAgICAgICByZXNvbHZlRGVwc0FuZFdyaXRlUGFja2FnZUpzb246ICgpID0+XG4gICAgICAgICAgICBvcmlnaW5hbFJlc29sdmUuYXBwbHkodGhpcy5wYWNrYWdlKSxcbiAgICAgICAgfSk7XG4gICAgICB9O1xuICAgICAgLyogQHRzLWlnbm9yZSBhY2Nlc3MgcHJpdmF0ZSBtZXRob2QgKi9cbiAgICAgIHRoaXMucGFja2FnZS5yZXNvbHZlRGVwc0FuZFdyaXRlUGFja2FnZUpzb24gPSAoKSA9PiB7fTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
package/lib/versions.d.ts
CHANGED
|
@@ -4,17 +4,17 @@ export declare const VERSION: {
|
|
|
4
4
|
*
|
|
5
5
|
* CLI and lib are versioned separately, so this is the CLI version.
|
|
6
6
|
*/
|
|
7
|
-
readonly AWS_CDK_CLI_VERSION: "2.
|
|
7
|
+
readonly AWS_CDK_CLI_VERSION: "2.1104.0";
|
|
8
8
|
/**
|
|
9
9
|
* CDK Version to use for construct projects.
|
|
10
10
|
*
|
|
11
11
|
* CLI and lib are versioned separately, so this is the lib version.
|
|
12
12
|
*/
|
|
13
|
-
readonly AWS_CDK_LIB_VERSION: "2.
|
|
13
|
+
readonly AWS_CDK_LIB_VERSION: "2.237.1";
|
|
14
14
|
/**
|
|
15
15
|
* Version of the AWS Constructs library to use.
|
|
16
16
|
*/
|
|
17
|
-
readonly AWS_CONSTRUCTS_VERSION: "10.4.
|
|
17
|
+
readonly AWS_CONSTRUCTS_VERSION: "10.4.5";
|
|
18
18
|
/**
|
|
19
19
|
* Version of Node.js to use in CI workflows at github actions.
|
|
20
20
|
*/
|
|
@@ -22,13 +22,13 @@ export declare const VERSION: {
|
|
|
22
22
|
/**
|
|
23
23
|
* Version of PNPM to use in workflows at github actions.
|
|
24
24
|
*/
|
|
25
|
-
readonly PNPM_VERSION: "10.28.
|
|
25
|
+
readonly PNPM_VERSION: "10.28.2";
|
|
26
26
|
/**
|
|
27
27
|
* Version of Projen to use.
|
|
28
28
|
*/
|
|
29
|
-
readonly PROJEN_VERSION: "0.99.
|
|
29
|
+
readonly PROJEN_VERSION: "0.99.9";
|
|
30
30
|
/**
|
|
31
31
|
* What version of the turborepo library should we use?
|
|
32
32
|
*/
|
|
33
|
-
readonly TURBO_VERSION: "2.
|
|
33
|
+
readonly TURBO_VERSION: "2.8.2";
|
|
34
34
|
};
|
package/lib/versions.js
CHANGED
|
@@ -7,17 +7,17 @@ exports.VERSION = {
|
|
|
7
7
|
*
|
|
8
8
|
* CLI and lib are versioned separately, so this is the CLI version.
|
|
9
9
|
*/
|
|
10
|
-
AWS_CDK_CLI_VERSION: "2.
|
|
10
|
+
AWS_CDK_CLI_VERSION: "2.1104.0",
|
|
11
11
|
/**
|
|
12
12
|
* CDK Version to use for construct projects.
|
|
13
13
|
*
|
|
14
14
|
* CLI and lib are versioned separately, so this is the lib version.
|
|
15
15
|
*/
|
|
16
|
-
AWS_CDK_LIB_VERSION: "2.
|
|
16
|
+
AWS_CDK_LIB_VERSION: "2.237.1",
|
|
17
17
|
/**
|
|
18
18
|
* Version of the AWS Constructs library to use.
|
|
19
19
|
*/
|
|
20
|
-
AWS_CONSTRUCTS_VERSION: "10.4.
|
|
20
|
+
AWS_CONSTRUCTS_VERSION: "10.4.5",
|
|
21
21
|
/**
|
|
22
22
|
* Version of Node.js to use in CI workflows at github actions.
|
|
23
23
|
*/
|
|
@@ -25,14 +25,14 @@ exports.VERSION = {
|
|
|
25
25
|
/**
|
|
26
26
|
* Version of PNPM to use in workflows at github actions.
|
|
27
27
|
*/
|
|
28
|
-
PNPM_VERSION: "10.28.
|
|
28
|
+
PNPM_VERSION: "10.28.2",
|
|
29
29
|
/**
|
|
30
30
|
* Version of Projen to use.
|
|
31
31
|
*/
|
|
32
|
-
PROJEN_VERSION: "0.99.
|
|
32
|
+
PROJEN_VERSION: "0.99.9",
|
|
33
33
|
/**
|
|
34
34
|
* What version of the turborepo library should we use?
|
|
35
35
|
*/
|
|
36
|
-
TURBO_VERSION: "2.
|
|
36
|
+
TURBO_VERSION: "2.8.2",
|
|
37
37
|
};
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdmVyc2lvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxPQUFPLEdBQUc7SUFDckI7Ozs7T0FJRztJQUNILG1CQUFtQixFQUFFLFVBQVU7SUFFL0I7Ozs7T0FJRztJQUNILG1CQUFtQixFQUFFLFNBQVM7SUFFOUI7O09BRUc7SUFDSCxzQkFBc0IsRUFBRSxRQUFRO0lBRWhDOztPQUVHO0lBQ0gsY0FBYyxFQUFFLElBQUk7SUFFcEI7O09BRUc7SUFDSCxZQUFZLEVBQUUsU0FBUztJQUV2Qjs7T0FFRztJQUNILGNBQWMsRUFBRSxRQUFRO0lBRXhCOztPQUVHO0lBQ0gsYUFBYSxFQUFFLE9BQU87Q0FDZCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFZFUlNJT04gPSB7XG4gIC8qKlxuICAgKiBDREsgQ0xJIGZvciB3b3JrZmxvd3MgYW5kIGNvbW1hbmQgbGluZSBvcGVyYXRpb25zLlxuICAgKlxuICAgKiBDTEkgYW5kIGxpYiBhcmUgdmVyc2lvbmVkIHNlcGFyYXRlbHksIHNvIHRoaXMgaXMgdGhlIENMSSB2ZXJzaW9uLlxuICAgKi9cbiAgQVdTX0NES19DTElfVkVSU0lPTjogXCIyLjExMDQuMFwiLFxuXG4gIC8qKlxuICAgKiBDREsgVmVyc2lvbiB0byB1c2UgZm9yIGNvbnN0cnVjdCBwcm9qZWN0cy5cbiAgICpcbiAgICogQ0xJIGFuZCBsaWIgYXJlIHZlcnNpb25lZCBzZXBhcmF0ZWx5LCBzbyB0aGlzIGlzIHRoZSBsaWIgdmVyc2lvbi5cbiAgICovXG4gIEFXU19DREtfTElCX1ZFUlNJT046IFwiMi4yMzcuMVwiLFxuXG4gIC8qKlxuICAgKiBWZXJzaW9uIG9mIHRoZSBBV1MgQ29uc3RydWN0cyBsaWJyYXJ5IHRvIHVzZS5cbiAgICovXG4gIEFXU19DT05TVFJVQ1RTX1ZFUlNJT046IFwiMTAuNC41XCIsXG5cbiAgLyoqXG4gICAqIFZlcnNpb24gb2YgTm9kZS5qcyB0byB1c2UgaW4gQ0kgd29ya2Zsb3dzIGF0IGdpdGh1YiBhY3Rpb25zLlxuICAgKi9cbiAgTk9ERV9XT1JLRkxPV1M6IFwiMjRcIixcblxuICAvKipcbiAgICogVmVyc2lvbiBvZiBQTlBNIHRvIHVzZSBpbiB3b3JrZmxvd3MgYXQgZ2l0aHViIGFjdGlvbnMuXG4gICAqL1xuICBQTlBNX1ZFUlNJT046IFwiMTAuMjguMlwiLFxuXG4gIC8qKlxuICAgKiBWZXJzaW9uIG9mIFByb2plbiB0byB1c2UuXG4gICAqL1xuICBQUk9KRU5fVkVSU0lPTjogXCIwLjk5LjlcIixcblxuICAvKipcbiAgICogV2hhdCB2ZXJzaW9uIG9mIHRoZSB0dXJib3JlcG8gbGlicmFyeSBzaG91bGQgd2UgdXNlP1xuICAgKi9cbiAgVFVSQk9fVkVSU0lPTjogXCIyLjguMlwiLFxufSBhcyBjb25zdDtcbiJdfQ==
|
package/package.json
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"@typescript-eslint/eslint-plugin": "^8",
|
|
18
18
|
"@typescript-eslint/parser": "^8",
|
|
19
19
|
"commit-and-tag-version": "^12",
|
|
20
|
-
"constructs": "10.4.
|
|
20
|
+
"constructs": "10.4.5",
|
|
21
21
|
"eslint": "^9",
|
|
22
22
|
"eslint-config-prettier": "^10.1.8",
|
|
23
23
|
"eslint-import-resolver-typescript": "^4.4.4",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
"jest": "^30.2.0",
|
|
27
27
|
"jest-junit": "^16",
|
|
28
28
|
"prettier": "^3.7.4",
|
|
29
|
-
"projen": "0.99.
|
|
29
|
+
"projen": "0.99.9",
|
|
30
30
|
"typescript": "^5.9.3"
|
|
31
31
|
},
|
|
32
32
|
"peerDependencies": {
|
|
33
|
-
"constructs": "10.4.
|
|
34
|
-
"projen": "0.99.
|
|
33
|
+
"constructs": "10.4.5",
|
|
34
|
+
"projen": "0.99.9"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@jsii/spec": "^1.121.0",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
},
|
|
42
42
|
"main": "lib/index.js",
|
|
43
43
|
"license": "MIT",
|
|
44
|
-
"version": "0.0.
|
|
44
|
+
"version": "0.0.86",
|
|
45
45
|
"types": "lib/index.d.ts",
|
|
46
46
|
"//": "~~ Generated by projen. To modify, edit .projenrc.js and run \"npx projen\".",
|
|
47
47
|
"scripts": {
|
|
@@ -52,12 +52,14 @@
|
|
|
52
52
|
"eslint": "npx projen eslint",
|
|
53
53
|
"package": "npx projen package",
|
|
54
54
|
"post-compile": "npx projen post-compile",
|
|
55
|
+
"post-upgrade": "npx projen post-upgrade",
|
|
55
56
|
"pre-compile": "npx projen pre-compile",
|
|
56
57
|
"release": "npx projen release",
|
|
57
58
|
"reset": "npx projen reset",
|
|
58
59
|
"test": "npx projen test",
|
|
59
60
|
"test:watch": "npx projen test:watch",
|
|
60
61
|
"unbump": "npx projen unbump",
|
|
62
|
+
"upgrade": "npx projen upgrade",
|
|
61
63
|
"watch": "npx projen watch",
|
|
62
64
|
"projen": "npx projen"
|
|
63
65
|
}
|