@aws-cdk/toolkit-lib 1.30.0 → 1.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +2 -2
- package/lib/actions/bootstrap/index.js +35 -2
- package/lib/actions/diff/private/helpers.js +36 -3
- package/lib/api/aws-auth/account-cache.js +36 -3
- package/lib/api/aws-auth/sdk-provider.js +36 -3
- package/lib/api/aws-auth/sdk.d.ts +2 -1
- package/lib/api/aws-auth/sdk.js +2 -1
- package/lib/api/aws-auth/user-agent.js +35 -2
- package/lib/api/aws-auth/util.js +35 -2
- package/lib/api/bootstrap/bootstrap-environment.js +35 -2
- package/lib/api/bootstrap/deploy-bootstrap.js +37 -4
- package/lib/api/cloud-assembly/context-store.js +36 -3
- package/lib/api/cloud-assembly/environment.js +37 -4
- package/lib/api/cloud-assembly/private/context-aware-source.js +35 -2
- package/lib/api/cloud-assembly/private/exec.js +35 -2
- package/lib/api/cloud-assembly/private/prepare-source.js +39 -6
- package/lib/api/cloud-assembly/source-builder.js +37 -4
- package/lib/api/cloud-assembly/stack-assembly.js +8 -4
- package/lib/api/cloudformation/logical-id-map.js +35 -2
- package/lib/api/cloudformation/nested-stack-helpers.js +36 -3
- package/lib/api/cloudformation/template-body-parameter.js +42 -6
- package/lib/api/deployments/asset-manifest-builder.js +35 -2
- package/lib/api/deployments/assets.js +42 -6
- package/lib/api/deployments/cfn-api.d.ts +4 -2
- package/lib/api/deployments/cfn-api.js +47 -6
- package/lib/api/deployments/deploy-stack.js +8 -5
- package/lib/api/deployments/deployments.js +40 -4
- package/lib/api/diagnosing/format-utils.d.ts +29 -0
- package/lib/api/diagnosing/format-utils.js +141 -1
- package/lib/api/diagnosing/investigate-custom-resource.d.ts +17 -0
- package/lib/api/diagnosing/investigate-custom-resource.js +247 -0
- package/lib/api/diagnosing/investigate-ecs-service.d.ts +20 -0
- package/lib/api/diagnosing/investigate-ecs-service.js +242 -0
- package/lib/api/diagnosing/resource-identifiers.d.ts +39 -0
- package/lib/api/diagnosing/resource-identifiers.js +90 -0
- package/lib/api/diagnosing/resource-investigation.d.ts +2 -30
- package/lib/api/diagnosing/resource-investigation.js +9 -289
- package/lib/api/diff/diff-formatter.js +11 -8
- package/lib/api/drift/drift-formatter.js +20 -17
- package/lib/api/garbage-collection/garbage-collector.js +7 -4
- package/lib/api/garbage-collection/progress-printer.js +7 -4
- package/lib/api/hotswap/hotswap-deployments.js +46 -10
- package/lib/api/hotswap/hotswap-template-cache.js +36 -3
- package/lib/api/io/private/io-default-messages.js +35 -2
- package/lib/api/io/private/message-maker.d.ts +4 -0
- package/lib/api/io/private/message-maker.js +3 -1
- package/lib/api/io/private/messages.d.ts +2 -0
- package/lib/api/io/private/messages.js +43 -2
- package/lib/api/io/private/span.js +35 -2
- package/lib/api/logs-monitor/logs-monitor.js +40 -4
- package/lib/api/network-detector/network-detector.js +37 -4
- package/lib/api/notices/cached-data-source.js +35 -2
- package/lib/api/notices/filter.js +35 -2
- package/lib/api/notices/notices.js +35 -2
- package/lib/api/notices/web-data-source.js +35 -2
- package/lib/api/refactoring/digest.js +35 -2
- package/lib/api/refactoring/stack-definitions.js +40 -4
- package/lib/api/resource-import/importer.js +58 -15
- package/lib/api/resource-import/migrator.js +42 -6
- package/lib/api/rwlock.js +35 -2
- package/lib/api/settings.js +38 -5
- package/lib/api/source-tracing/private/stack-source-tracing.js +38 -5
- package/lib/api/stack-events/resource-errors.d.ts +12 -0
- package/lib/api/stack-events/resource-errors.js +2 -1
- package/lib/api/stack-events/stack-activity-monitor.js +35 -2
- package/lib/api/stack-events/stack-progress-monitor.js +35 -2
- package/lib/api/toolkit-info.js +7 -4
- package/lib/api/tree.js +36 -3
- package/lib/api/validate/validate-formatting.js +53 -17
- package/lib/api/work-graph/build-destroy-work-graph.js +35 -2
- package/lib/api/work-graph/work-graph-builder.js +35 -2
- package/lib/context-providers/index.js +35 -2
- package/lib/private/activity-printer/current.js +52 -16
- package/lib/private/activity-printer/history.js +50 -14
- package/lib/private/tools.js +38 -1
- package/lib/toolkit/non-interactive-io-host.js +11 -8
- package/lib/toolkit/private/collect-annotation-report.js +35 -2
- package/lib/toolkit/private/validation-report.js +36 -3
- package/lib/toolkit/toolkit-error.d.ts +20 -0
- package/lib/toolkit/toolkit-error.js +30 -2
- package/lib/toolkit/toolkit.d.ts +8 -0
- package/lib/toolkit/toolkit.js +81 -35
- package/lib/util/content-hash.js +35 -2
- package/lib/util/directories.js +38 -5
- package/lib/util/guess-language.js +36 -3
- package/lib/util/package-info.js +35 -2
- package/lib/util/serialize.js +36 -3
- package/lib/util/version-range.js +35 -2
- package/lib/util/yaml-cfn.js +36 -3
- package/package.json +2 -2
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.DeploymentErrorCodes = exports.NoResultsFoundError = exports.ContextProviderError = exports.DeploymentError = exports.AssemblyError = exports.AuthenticationError = exports.ToolkitError = void 0;
|
|
3
|
+
exports.DeploymentErrorCodes = exports.NoResultsFoundError = exports.ContextProviderError = exports.DeploymentError = exports.AssemblyError = exports.AbortError = exports.AuthenticationError = exports.ToolkitError = void 0;
|
|
4
4
|
const TOOLKIT_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit-lib.ToolkitError');
|
|
5
5
|
const AUTHENTICATION_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit-lib.AuthenticationError');
|
|
6
|
+
const ABORT_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit-lib.AbortError');
|
|
6
7
|
const DEPLOYMENT_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit-lib.DeploymentError');
|
|
7
8
|
const ASSEMBLY_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit-lib.AssemblyError');
|
|
8
9
|
const CONTEXT_PROVIDER_ERROR_SYMBOL = Symbol.for('@aws-cdk/toolkit-lib.ContextProviderError');
|
|
@@ -23,6 +24,12 @@ class ToolkitError extends Error {
|
|
|
23
24
|
static isAuthenticationError(x) {
|
|
24
25
|
return ToolkitError.isToolkitError(x) && AUTHENTICATION_ERROR_SYMBOL in x;
|
|
25
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* Determines if a given error is an instance of AbortError.
|
|
29
|
+
*/
|
|
30
|
+
static isAbortError(x) {
|
|
31
|
+
return ToolkitError.isToolkitError(x) && ABORT_ERROR_SYMBOL in x;
|
|
32
|
+
}
|
|
26
33
|
/**
|
|
27
34
|
* Determines if a given error is an instance of DeploymentError.
|
|
28
35
|
*/
|
|
@@ -85,6 +92,27 @@ class AuthenticationError extends ToolkitError {
|
|
|
85
92
|
}
|
|
86
93
|
}
|
|
87
94
|
exports.AuthenticationError = AuthenticationError;
|
|
95
|
+
/**
|
|
96
|
+
* Represents an abort of an operation because the user declined a confirmation.
|
|
97
|
+
*
|
|
98
|
+
* This is not a failure of the toolkit: the user was asked a question and chose
|
|
99
|
+
* not to proceed. It carries a per-action error code (for example
|
|
100
|
+
* `DeployAborted`) so the reason stays specific, while `isAbortError` lets
|
|
101
|
+
* consumers detect a user-initiated abort without matching on messages. The
|
|
102
|
+
* default message, `Operation cancelled`, is a sensible generic for any action.
|
|
103
|
+
*/
|
|
104
|
+
class AbortError extends ToolkitError {
|
|
105
|
+
/**
|
|
106
|
+
* Denotes the source of the error as user.
|
|
107
|
+
*/
|
|
108
|
+
source = 'user';
|
|
109
|
+
constructor(errorCode, message = 'Operation cancelled') {
|
|
110
|
+
super(errorCode, message, 'abort');
|
|
111
|
+
Object.setPrototypeOf(this, AbortError.prototype);
|
|
112
|
+
Object.defineProperty(this, ABORT_ERROR_SYMBOL, { value: true });
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
exports.AbortError = AbortError;
|
|
88
116
|
/**
|
|
89
117
|
* Represents an error causes by cloud assembly synthesis
|
|
90
118
|
*
|
|
@@ -193,4 +221,4 @@ class DeploymentErrorCodes {
|
|
|
193
221
|
static PRIVATE_RESOURCE_ERROR = 'PrivateResourceError';
|
|
194
222
|
}
|
|
195
223
|
exports.DeploymentErrorCodes = DeploymentErrorCodes;
|
|
196
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGtpdC1lcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRvb2xraXQtZXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7QUFDN0UsTUFBTSwyQkFBMkIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7QUFDM0YsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7QUFDbkYsTUFBTSxxQkFBcUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7QUFDL0UsTUFBTSw2QkFBNkIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7QUFDOUYsTUFBTSw2QkFBNkIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7QUFFN0Y7O0dBRUc7QUFDSCxNQUFhLFlBQWEsU0FBUSxLQUFLO0lBQ3JDOztPQUVHO0lBQ0ksTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFNO1FBQ2pDLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxPQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxJQUFJLG9CQUFvQixJQUFJLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBTTtRQUN4QyxPQUFPLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksMkJBQTJCLElBQUksQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFNO1FBQ3BDLE9BQU8sWUFBWSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSx1QkFBdUIsSUFBSSxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVEOztP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R0FBRyxNQUFNLENBQUM7SUFFaEMsWUFBWSxTQUFpQixFQUFFLE9BQWUsRUFBRSxLQUFlO1FBQzdELEtBQUssQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3JELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzVELE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLDZCQUE2QixFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDOUUsQ0FBQztDQUNGO0FBekJELG9EQXlCQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxvQkFBb0I7SUFDM0QsWUFBWSxPQUFlO1FBQ3pCLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNqQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSw2QkFBNkIsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7Q0FDRjtBQU5ELGtEQU1DO0FBRUQsTUFBc0Isb0JBQW9CO0lBQ2pDLE1BQU0sQ0FBVSw0QkFBNEIsR0FBRyxrQkFBa0IsQ0FBQztJQUNsRSxNQUFNLENBQVUsYUFBYSxHQUFHLGNBQWMsQ0FBQztJQUMvQyxNQUFNLENBQVUsc0JBQXNCLEdBQUcsc0JBQXNCLENBQUM7O0FBSHpFLG9EQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgKiBhcyBjeGFwaSBmcm9tICdAYXdzLWNkay9jbG91ZC1hc3NlbWJseS1hcGknO1xuXG5jb25zdCBUT09MS0lUX0VSUk9SX1NZTUJPTCA9IFN5bWJvbC5mb3IoJ0Bhd3MtY2RrL3Rvb2xraXQtbGliLlRvb2xraXRFcnJvcicpO1xuY29uc3QgQVVUSEVOVElDQVRJT05fRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC1saWIuQXV0aGVudGljYXRpb25FcnJvcicpO1xuY29uc3QgREVQTE9ZTUVOVF9FUlJPUl9TWU1CT0wgPSBTeW1ib2wuZm9yKCdAYXdzLWNkay90b29sa2l0LWxpYi5EZXBsb3ltZW50RXJyb3InKTtcbmNvbnN0IEFTU0VNQkxZX0VSUk9SX1NZTUJPTCA9IFN5bWJvbC5mb3IoJ0Bhd3MtY2RrL3Rvb2xraXQtbGliLkFzc2VtYmx5RXJyb3InKTtcbmNvbnN0IENPTlRFWFRfUFJPVklERVJfRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC1saWIuQ29udGV4dFByb3ZpZGVyRXJyb3InKTtcbmNvbnN0IE5PX1JFU1VMVFNfRk9VTkRfRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC1saWIuTm9SZXN1bHRzRm91bmRFcnJvcicpO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBnZW5lcmFsIHRvb2xraXQgZXJyb3IgaW4gdGhlIEFXUyBDREsgVG9vbGtpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvb2xraXRFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgYSBnaXZlbiBlcnJvciBpcyBhbiBpbnN0YW5jZSBvZiBUb29sa2l0RXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzVG9vbGtpdEVycm9yKHg6IGFueSk6IHggaXMgVG9vbGtpdEVycm9yIHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YoeCkgPT09ICdvYmplY3QnICYmIFRPT0xLSVRfRVJST1JfU1lNQk9MIGluIHg7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBhIGdpdmVuIGVycm9yIGlzIGFuIGluc3RhbmNlIG9mIEF1dGhlbnRpY2F0aW9uRXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzQXV0aGVudGljYXRpb25FcnJvcih4OiBhbnkpOiB4IGlzIEF1dGhlbnRpY2F0aW9uRXJyb3Ige1xuICAgIHJldHVybiBUb29sa2l0RXJyb3IuaXNUb29sa2l0RXJyb3IoeCkgJiYgQVVUSEVOVElDQVRJT05fRVJST1JfU1lNQk9MIGluIHg7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBhIGdpdmVuIGVycm9yIGlzIGFuIGluc3RhbmNlIG9mIERlcGxveW1lbnRFcnJvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaXNEZXBsb3ltZW50RXJyb3IoeDogYW55KTogeCBpcyBEZXBsb3ltZW50RXJyb3Ige1xuICAgIHJldHVybiBUb29sa2l0RXJyb3IuaXNUb29sa2l0RXJyb3IoeCkgJiYgREVQTE9ZTUVOVF9FUlJPUl9TWU1CT0wgaW4geDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIGEgZ2l2ZW4gZXJyb3IgaXMgYW4gaW5zdGFuY2Ugb2YgQXNzZW1ibHlFcnJvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaXNBc3NlbWJseUVycm9yKHg6IGFueSk6IHggaXMgQXNzZW1ibHlFcnJvciB7XG4gICAgcmV0dXJuIFRvb2xraXRFcnJvci5pc1Rvb2xraXRFcnJvcih4KSAmJiBBU1NFTUJMWV9FUlJPUl9TWU1CT0wgaW4geDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIGEgZ2l2ZW4gZXJyb3IgaXMgYW4gaW5zdGFuY2Ugb2YgQ29udGV4dFByb3ZpZGVyRXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzQ29udGV4dFByb3ZpZGVyRXJyb3IoeDogYW55KTogeCBpcyBDb250ZXh0UHJvdmlkZXJFcnJvciB7XG4gICAgcmV0dXJuIFRvb2xraXRFcnJvci5pc1Rvb2xraXRFcnJvcih4KSAmJiBDT05URVhUX1BST1ZJREVSX0VSUk9SX1NZTUJPTCBpbiB4O1xuICB9XG5cbiAgLyoqXG4gICAqIEEgVG9vbGtpdEVycm9yIHdpdGggYW4gb3JpZ2luYWwgZXJyb3IgYXMgY2F1c2VcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgd2l0aENhdXNlKGVycm9yQ29kZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duKTogVG9vbGtpdEVycm9yIHtcbiAgICByZXR1cm4gbmV3IFRvb2xraXRFcnJvcihlcnJvckNvZGUsIG1lc3NhZ2UsICd0b29sa2l0JywgZXJyb3IpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBlcnJvciwgZGVmYXVsdHMgdG8gXCJ0b29sa2l0XCIuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZW5vdGVzIHRoZSBzb3VyY2Ugb2YgdGhlIGVycm9yIGFzIHRoZSB0b29sa2l0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNvdXJjZTogJ3Rvb2xraXQnIHwgJ3VzZXInO1xuXG4gIC8qKlxuICAgKiBUaGUgc3BlY2lmaWMgb3JpZ2luYWwgY2F1c2Ugb2YgdGhlIGVycm9yLCBpZiBhdmFpbGFibGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjYXVzZT86IHVua25vd247XG5cbiAgY29uc3RydWN0b3IoZXJyb3JDb2RlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZywgdHlwZTogc3RyaW5nID0gJ3Rvb2xraXQnLCBjYXVzZT86IHVua25vd24pIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSBlcnJvckNvZGU7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsIFRvb2xraXRFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBUT09MS0lUX0VSUk9SX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuc291cmNlID0gJ3Rvb2xraXQnO1xuICAgIHRoaXMuY2F1c2UgPSBjYXVzZTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gYXV0aGVudGljYXRpb24tc3BlY2lmaWMgZXJyb3IgaW4gdGhlIEFXUyBDREsgVG9vbGtpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uRXJyb3IgZXh0ZW5kcyBUb29sa2l0RXJyb3Ige1xuICAvKipcbiAgICogRGVub3RlcyB0aGUgc291cmNlIG9mIHRoZSBlcnJvciBhcyB1c2VyLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNvdXJjZSA9ICd1c2VyJztcblxuICBjb25zdHJ1Y3RvcihlcnJvckNvZGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoZXJyb3JDb2RlLCBtZXNzYWdlLCAnYXV0aGVudGljYXRpb24nKTtcbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcywgQXV0aGVudGljYXRpb25FcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBBVVRIRU5USUNBVElPTl9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIGVycm9yIGNhdXNlcyBieSBjbG91ZCBhc3NlbWJseSBzeW50aGVzaXNcbiAqXG4gKiBUaGlzIGluY2x1ZGVzIGVycm9ycyB0aHJvd24gZHVyaW5nIGFwcCBleGVjdXRpb24sIGFzIHdlbGwgYXMgZmFpbGluZyBhbm5vdGF0aW9ucy5cbiAqL1xuZXhwb3J0IGNsYXNzIEFzc2VtYmx5RXJyb3IgZXh0ZW5kcyBUb29sa2l0RXJyb3Ige1xuICAvKipcbiAgICogQW4gQXNzZW1ibHlFcnJvciB3aXRoIGFuIG9yaWdpbmFsIGVycm9yIGFzIGNhdXNlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGhDYXVzZShtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duKTogQXNzZW1ibHlFcnJvciB7XG4gICAgcmV0dXJuIG5ldyBBc3NlbWJseUVycm9yKG1lc3NhZ2UsIHVuZGVmaW5lZCwgZXJyb3IpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFuIEFzc2VtYmx5RXJyb3Igd2l0aCBhIGxpc3Qgb2Ygc3RhY2tzIGFzIGNhdXNlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGhTdGFja3MobWVzc2FnZTogc3RyaW5nLCBzdGFja3M/OiBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3RbXSk6IEFzc2VtYmx5RXJyb3Ige1xuICAgIHJldHVybiBuZXcgQXNzZW1ibHlFcnJvcihtZXNzYWdlLCBzdGFja3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbm90ZXMgdGhlIHNvdXJjZSBvZiB0aGUgZXJyb3IgYXMgdXNlci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzb3VyY2UgPSAndXNlcic7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGFja3MgdGhhdCBjYXVzZWQgdGhlIGVycm9yLCBpZiBhdmFpbGFibGVcbiAgICpcbiAgICogVGhlIGBtZXNzYWdlc2AgcHJvcGVydHkgb2YgZWFjaCBgY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0YCB3aWxsIGNvbnRhaW4gdGhlIHJlc3BlY3RpdmUgZXJyb3JzLlxuICAgKiBBYnNlbmNlIGluZGljYXRlcyBzeW50aGVzaXMgZGlkbid0IGZ1bGx5IGNvbXBsZXRlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHN0YWNrcz86IGN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdFtdO1xuXG4gIHByaXZhdGUgX3N5bnRoRXJyb3JDb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHN0YWNrcz86IGN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdFtdLCBjYXVzZT86IHVua25vd24pIHtcbiAgICBzdXBlcignQXNzZW1ibHlFcnJvcicsIG1lc3NhZ2UsICdhc3NlbWJseScsIGNhdXNlKTtcbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcywgQXNzZW1ibHlFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBBU1NFTUJMWV9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gICAgdGhpcy5zdGFja3MgPSBzdGFja3M7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHN5bnRoZXNpcyBlcnJvciBjb2RlXG4gICAqL1xuICBwdWJsaWMgZ2V0IHN5bnRoRXJyb3JDb2RlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3N5bnRoRXJyb3JDb2RlO1xuICB9XG5cbiAgcHVibGljIGF0dGFjaFN5bnRoZXNpc0Vycm9yQ29kZShzeW50aGVzaXNFcnJvckNvZGU6IHN0cmluZykge1xuICAgIHRoaXMuX3N5bnRoRXJyb3JDb2RlID0gc3ludGhlc2lzRXJyb3JDb2RlO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGRlcGxveW1lbnQtcmVsYXRlZCBlcnJvciBpbiB0aGUgQVdTIENESyBUb29sa2l0LlxuICovXG5leHBvcnQgY2xhc3MgRGVwbG95bWVudEVycm9yIGV4dGVuZHMgVG9vbGtpdEVycm9yIHtcbiAgLyoqXG4gICAqIERlbm90ZXMgdGhlIHNvdXJjZSBvZiB0aGUgZXJyb3IgYXMgdXNlci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzb3VyY2UgPSAndXNlcic7XG5cbiAgcHVibGljIHJlYWRvbmx5IGRlcGxveW1lbnRFcnJvckNvZGU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIGRlcGxveW1lbnRFcnJvckNvZGU6IHN0cmluZykge1xuICAgIHN1cGVyKCdEZXBsb3ltZW50RXJyb3InLCBtZXNzYWdlLCAnZGVwbG95bWVudCcpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBEZXBsb3ltZW50RXJyb3IucHJvdG90eXBlKTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgREVQTE9ZTUVOVF9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gICAgdGhpcy5kZXBsb3ltZW50RXJyb3JDb2RlID0gZGVwbG95bWVudEVycm9yQ29kZTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gZXJyb3Igb3JpZ2luYXRpbmcgZnJvbSBhIENvbnRleHQgUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGNsYXNzIENvbnRleHRQcm92aWRlckVycm9yIGV4dGVuZHMgVG9vbGtpdEVycm9yIHtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgYSBnaXZlbiBlcnJvciBpcyBhbiBpbnN0YW5jZSBvZiBOb1Jlc3VsdHNGb3VuZEVycm9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBpc05vUmVzdWx0c0ZvdW5kRXJyb3IoeDogYW55KTogeCBpcyBOb1Jlc3VsdHNGb3VuZEVycm9yIHtcbiAgICByZXR1cm4gVG9vbGtpdEVycm9yLmlzQ29udGV4dFByb3ZpZGVyRXJyb3IoeCkgJiYgTk9fUkVTVUxUU19GT1VORF9FUlJPUl9TWU1CT0wgaW4geDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIENvbnRleHRQcm92aWRlckVycm9yIHdpdGggYW4gb3JpZ2luYWwgZXJyb3IgYXMgY2F1c2VcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgd2l0aENhdXNlKGVycm9yQ29kZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duKTogQ29udGV4dFByb3ZpZGVyRXJyb3Ige1xuICAgIHJldHVybiBuZXcgQ29udGV4dFByb3ZpZGVyRXJyb3IoZXJyb3JDb2RlLCBtZXNzYWdlLCBlcnJvcik7XG4gIH1cblxuICAvKipcbiAgICogRGVub3RlcyB0aGUgc291cmNlIG9mIHRoZSBlcnJvciBhcyB1c2VyLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNvdXJjZSA9ICd1c2VyJztcblxuICBjb25zdHJ1Y3RvcihlcnJvckNvZGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nLCBjYXVzZT86IHVua25vd24pIHtcbiAgICBzdXBlcihlcnJvckNvZGUsIG1lc3NhZ2UsICdjb250ZXh0LXByb3ZpZGVyJywgY2F1c2UpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBDb250ZXh0UHJvdmlkZXJFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBDT05URVhUX1BST1ZJREVSX0VSUk9SX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgfVxufVxuXG4vKipcbiAqIEEgc3BlY2lmaWMgY29udGV4dCBwcm92aWRlciBsb29rdXAgZmFpbHVyZSBpbmRpY2F0aW5nIG5vIHJlc3VsdHMgd2hlcmUgZm91bmQgZm9yIGEgY29udGV4dCBxdWVyeVxuICovXG5leHBvcnQgY2xhc3MgTm9SZXN1bHRzRm91bmRFcnJvciBleHRlbmRzIENvbnRleHRQcm92aWRlckVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoJ05vUmVzdWx0c0ZvdW5kJywgbWVzc2FnZSk7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsIE5vUmVzdWx0c0ZvdW5kRXJyb3IucHJvdG90eXBlKTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgTk9fUkVTVUxUU19GT1VORF9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERlcGxveW1lbnRFcnJvckNvZGVzIHtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTVEFDS19ESVNBUFBFQVJFRF9FUlJPUl9DT0RFID0gJ1N0YWNrRGlzYXBwZWFyZWQnO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFVOS05PV05fRVJST1IgPSAnVW5rbm93bkVycm9yJztcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQUklWQVRFX1JFU09VUkNFX0VSUk9SID0gJ1ByaXZhdGVSZXNvdXJjZUVycm9yJztcbn1cblxuIl19
|
|
224
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9vbGtpdC1lcnJvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRvb2xraXQtZXJyb3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsTUFBTSxvQkFBb0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7QUFDN0UsTUFBTSwyQkFBMkIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7QUFDM0YsTUFBTSxrQkFBa0IsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7QUFDekUsTUFBTSx1QkFBdUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7QUFDbkYsTUFBTSxxQkFBcUIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7QUFDL0UsTUFBTSw2QkFBNkIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDJDQUEyQyxDQUFDLENBQUM7QUFDOUYsTUFBTSw2QkFBNkIsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLDBDQUEwQyxDQUFDLENBQUM7QUFFN0Y7O0dBRUc7QUFDSCxNQUFhLFlBQWEsU0FBUSxLQUFLO0lBQ3JDOztPQUVHO0lBQ0ksTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFNO1FBQ2pDLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxPQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssUUFBUSxJQUFJLG9CQUFvQixJQUFJLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBTTtRQUN4QyxPQUFPLFlBQVksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksMkJBQTJCLElBQUksQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBTTtRQUMvQixPQUFPLFlBQVksQ0FBQyxjQUFjLENB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Q0FBQztRQUNqQyxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMzRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSw2QkFBNkIsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlFLENBQUM7Q0FDRjtBQU5ELGtEQU1DO0FBRUQsTUFBc0Isb0JBQW9CO0lBQ2pDLE1BQU0sQ0FBVSw0QkFBNEIsR0FBRyxrQkFBa0IsQ0FBQztJQUNsRSxNQUFNLENBQVUsYUFBYSxHQUFHLGNBQWMsQ0FBQztJQUMvQyxNQUFNLENBQVUsc0JBQXNCLEdBQUcsc0JBQXNCLENBQUM7O0FBSHpFLG9EQUlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgKiBhcyBjeGFwaSBmcm9tICdAYXdzLWNkay9jbG91ZC1hc3NlbWJseS1hcGknO1xuXG5jb25zdCBUT09MS0lUX0VSUk9SX1NZTUJPTCA9IFN5bWJvbC5mb3IoJ0Bhd3MtY2RrL3Rvb2xraXQtbGliLlRvb2xraXRFcnJvcicpO1xuY29uc3QgQVVUSEVOVElDQVRJT05fRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC1saWIuQXV0aGVudGljYXRpb25FcnJvcicpO1xuY29uc3QgQUJPUlRfRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC1saWIuQWJvcnRFcnJvcicpO1xuY29uc3QgREVQTE9ZTUVOVF9FUlJPUl9TWU1CT0wgPSBTeW1ib2wuZm9yKCdAYXdzLWNkay90b29sa2l0LWxpYi5EZXBsb3ltZW50RXJyb3InKTtcbmNvbnN0IEFTU0VNQkxZX0VSUk9SX1NZTUJPTCA9IFN5bWJvbC5mb3IoJ0Bhd3MtY2RrL3Rvb2xraXQtbGliLkFzc2VtYmx5RXJyb3InKTtcbmNvbnN0IENPTlRFWFRfUFJPVklERVJfRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC1saWIuQ29udGV4dFByb3ZpZGVyRXJyb3InKTtcbmNvbnN0IE5PX1JFU1VMVFNfRk9VTkRfRVJST1JfU1lNQk9MID0gU3ltYm9sLmZvcignQGF3cy1jZGsvdG9vbGtpdC1saWIuTm9SZXN1bHRzRm91bmRFcnJvcicpO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBnZW5lcmFsIHRvb2xraXQgZXJyb3IgaW4gdGhlIEFXUyBDREsgVG9vbGtpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvb2xraXRFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgYSBnaXZlbiBlcnJvciBpcyBhbiBpbnN0YW5jZSBvZiBUb29sa2l0RXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzVG9vbGtpdEVycm9yKHg6IGFueSk6IHggaXMgVG9vbGtpdEVycm9yIHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YoeCkgPT09ICdvYmplY3QnICYmIFRPT0xLSVRfRVJST1JfU1lNQk9MIGluIHg7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBhIGdpdmVuIGVycm9yIGlzIGFuIGluc3RhbmNlIG9mIEF1dGhlbnRpY2F0aW9uRXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzQXV0aGVudGljYXRpb25FcnJvcih4OiBhbnkpOiB4IGlzIEF1dGhlbnRpY2F0aW9uRXJyb3Ige1xuICAgIHJldHVybiBUb29sa2l0RXJyb3IuaXNUb29sa2l0RXJyb3IoeCkgJiYgQVVUSEVOVElDQVRJT05fRVJST1JfU1lNQk9MIGluIHg7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBhIGdpdmVuIGVycm9yIGlzIGFuIGluc3RhbmNlIG9mIEFib3J0RXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzQWJvcnRFcnJvcih4OiBhbnkpOiB4IGlzIEFib3J0RXJyb3Ige1xuICAgIHJldHVybiBUb29sa2l0RXJyb3IuaXNUb29sa2l0RXJyb3IoeCkgJiYgQUJPUlRfRVJST1JfU1lNQk9MIGluIHg7XG4gIH1cblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiBhIGdpdmVuIGVycm9yIGlzIGFuIGluc3RhbmNlIG9mIERlcGxveW1lbnRFcnJvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaXNEZXBsb3ltZW50RXJyb3IoeDogYW55KTogeCBpcyBEZXBsb3ltZW50RXJyb3Ige1xuICAgIHJldHVybiBUb29sa2l0RXJyb3IuaXNUb29sa2l0RXJyb3IoeCkgJiYgREVQTE9ZTUVOVF9FUlJPUl9TWU1CT0wgaW4geDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIGEgZ2l2ZW4gZXJyb3IgaXMgYW4gaW5zdGFuY2Ugb2YgQXNzZW1ibHlFcnJvci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaXNBc3NlbWJseUVycm9yKHg6IGFueSk6IHggaXMgQXNzZW1ibHlFcnJvciB7XG4gICAgcmV0dXJuIFRvb2xraXRFcnJvci5pc1Rvb2xraXRFcnJvcih4KSAmJiBBU1NFTUJMWV9FUlJPUl9TWU1CT0wgaW4geDtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIGEgZ2l2ZW4gZXJyb3IgaXMgYW4gaW5zdGFuY2Ugb2YgQ29udGV4dFByb3ZpZGVyRXJyb3IuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGlzQ29udGV4dFByb3ZpZGVyRXJyb3IoeDogYW55KTogeCBpcyBDb250ZXh0UHJvdmlkZXJFcnJvciB7XG4gICAgcmV0dXJuIFRvb2xraXRFcnJvci5pc1Rvb2xraXRFcnJvcih4KSAmJiBDT05URVhUX1BST1ZJREVSX0VSUk9SX1NZTUJPTCBpbiB4O1xuICB9XG5cbiAgLyoqXG4gICAqIEEgVG9vbGtpdEVycm9yIHdpdGggYW4gb3JpZ2luYWwgZXJyb3IgYXMgY2F1c2VcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgd2l0aENhdXNlKGVycm9yQ29kZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duKTogVG9vbGtpdEVycm9yIHtcbiAgICByZXR1cm4gbmV3IFRvb2xraXRFcnJvcihlcnJvckNvZGUsIG1lc3NhZ2UsICd0b29sa2l0JywgZXJyb3IpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBlcnJvciwgZGVmYXVsdHMgdG8gXCJ0b29sa2l0XCIuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZW5vdGVzIHRoZSBzb3VyY2Ugb2YgdGhlIGVycm9yIGFzIHRoZSB0b29sa2l0LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNvdXJjZTogJ3Rvb2xraXQnIHwgJ3VzZXInO1xuXG4gIC8qKlxuICAgKiBUaGUgc3BlY2lmaWMgb3JpZ2luYWwgY2F1c2Ugb2YgdGhlIGVycm9yLCBpZiBhdmFpbGFibGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBjYXVzZT86IHVua25vd247XG5cbiAgY29uc3RydWN0b3IoZXJyb3JDb2RlOiBzdHJpbmcsIG1lc3NhZ2U6IHN0cmluZywgdHlwZTogc3RyaW5nID0gJ3Rvb2xraXQnLCBjYXVzZT86IHVua25vd24pIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICB0aGlzLm5hbWUgPSBlcnJvckNvZGU7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsIFRvb2xraXRFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBUT09MS0lUX0VSUk9SX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgICB0aGlzLnR5cGUgPSB0eXBlO1xuICAgIHRoaXMuc291cmNlID0gJ3Rvb2xraXQnO1xuICAgIHRoaXMuY2F1c2UgPSBjYXVzZTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gYXV0aGVudGljYXRpb24tc3BlY2lmaWMgZXJyb3IgaW4gdGhlIEFXUyBDREsgVG9vbGtpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uRXJyb3IgZXh0ZW5kcyBUb29sa2l0RXJyb3Ige1xuICAvKipcbiAgICogRGVub3RlcyB0aGUgc291cmNlIG9mIHRoZSBlcnJvciBhcyB1c2VyLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNvdXJjZSA9ICd1c2VyJztcblxuICBjb25zdHJ1Y3RvcihlcnJvckNvZGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoZXJyb3JDb2RlLCBtZXNzYWdlLCAnYXV0aGVudGljYXRpb24nKTtcbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcywgQXV0aGVudGljYXRpb25FcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBBVVRIRU5USUNBVElPTl9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIGFib3J0IG9mIGFuIG9wZXJhdGlvbiBiZWNhdXNlIHRoZSB1c2VyIGRlY2xpbmVkIGEgY29uZmlybWF0aW9uLlxuICpcbiAqIFRoaXMgaXMgbm90IGEgZmFpbHVyZSBvZiB0aGUgdG9vbGtpdDogdGhlIHVzZXIgd2FzIGFza2VkIGEgcXVlc3Rpb24gYW5kIGNob3NlXG4gKiBub3QgdG8gcHJvY2VlZC4gSXQgY2FycmllcyBhIHBlci1hY3Rpb24gZXJyb3IgY29kZSAoZm9yIGV4YW1wbGVcbiAqIGBEZXBsb3lBYm9ydGVkYCkgc28gdGhlIHJlYXNvbiBzdGF5cyBzcGVjaWZpYywgd2hpbGUgYGlzQWJvcnRFcnJvcmAgbGV0c1xuICogY29uc3VtZXJzIGRldGVjdCBhIHVzZXItaW5pdGlhdGVkIGFib3J0IHdpdGhvdXQgbWF0Y2hpbmcgb24gbWVzc2FnZXMuIFRoZVxuICogZGVmYXVsdCBtZXNzYWdlLCBgT3BlcmF0aW9uIGNhbmNlbGxlZGAsIGlzIGEgc2Vuc2libGUgZ2VuZXJpYyBmb3IgYW55IGFjdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIEFib3J0RXJyb3IgZXh0ZW5kcyBUb29sa2l0RXJyb3Ige1xuICAvKipcbiAgICogRGVub3RlcyB0aGUgc291cmNlIG9mIHRoZSBlcnJvciBhcyB1c2VyLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNvdXJjZSA9ICd1c2VyJztcblxuICBjb25zdHJ1Y3RvcihlcnJvckNvZGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nID0gJ09wZXJhdGlvbiBjYW5jZWxsZWQnKSB7XG4gICAgc3VwZXIoZXJyb3JDb2RlLCBtZXNzYWdlLCAnYWJvcnQnKTtcbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcywgQWJvcnRFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBBQk9SVF9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIGVycm9yIGNhdXNlcyBieSBjbG91ZCBhc3NlbWJseSBzeW50aGVzaXNcbiAqXG4gKiBUaGlzIGluY2x1ZGVzIGVycm9ycyB0aHJvd24gZHVyaW5nIGFwcCBleGVjdXRpb24sIGFzIHdlbGwgYXMgZmFpbGluZyBhbm5vdGF0aW9ucy5cbiAqL1xuZXhwb3J0IGNsYXNzIEFzc2VtYmx5RXJyb3IgZXh0ZW5kcyBUb29sa2l0RXJyb3Ige1xuICAvKipcbiAgICogQW4gQXNzZW1ibHlFcnJvciB3aXRoIGFuIG9yaWdpbmFsIGVycm9yIGFzIGNhdXNlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGhDYXVzZShtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duKTogQXNzZW1ibHlFcnJvciB7XG4gICAgcmV0dXJuIG5ldyBBc3NlbWJseUVycm9yKG1lc3NhZ2UsIHVuZGVmaW5lZCwgZXJyb3IpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFuIEFzc2VtYmx5RXJyb3Igd2l0aCBhIGxpc3Qgb2Ygc3RhY2tzIGFzIGNhdXNlXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGhTdGFja3MobWVzc2FnZTogc3RyaW5nLCBzdGFja3M/OiBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3RbXSk6IEFzc2VtYmx5RXJyb3Ige1xuICAgIHJldHVybiBuZXcgQXNzZW1ibHlFcnJvcihtZXNzYWdlLCBzdGFja3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbm90ZXMgdGhlIHNvdXJjZSBvZiB0aGUgZXJyb3IgYXMgdXNlci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzb3VyY2UgPSAndXNlcic7XG5cbiAgLyoqXG4gICAqIFRoZSBzdGFja3MgdGhhdCBjYXVzZWQgdGhlIGVycm9yLCBpZiBhdmFpbGFibGVcbiAgICpcbiAgICogVGhlIGBtZXNzYWdlc2AgcHJvcGVydHkgb2YgZWFjaCBgY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0YCB3aWxsIGNvbnRhaW4gdGhlIHJlc3BlY3RpdmUgZXJyb3JzLlxuICAgKiBBYnNlbmNlIGluZGljYXRlcyBzeW50aGVzaXMgZGlkbid0IGZ1bGx5IGNvbXBsZXRlLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHN0YWNrcz86IGN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdFtdO1xuXG4gIHByaXZhdGUgX3N5bnRoRXJyb3JDb2RlOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIHN0YWNrcz86IGN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdFtdLCBjYXVzZT86IHVua25vd24pIHtcbiAgICBzdXBlcignQXNzZW1ibHlFcnJvcicsIG1lc3NhZ2UsICdhc3NlbWJseScsIGNhdXNlKTtcbiAgICBPYmplY3Quc2V0UHJvdG90eXBlT2YodGhpcywgQXNzZW1ibHlFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBBU1NFTUJMWV9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gICAgdGhpcy5zdGFja3MgPSBzdGFja3M7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHN5bnRoZXNpcyBlcnJvciBjb2RlXG4gICAqL1xuICBwdWJsaWMgZ2V0IHN5bnRoRXJyb3JDb2RlKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX3N5bnRoRXJyb3JDb2RlO1xuICB9XG5cbiAgcHVibGljIGF0dGFjaFN5bnRoZXNpc0Vycm9yQ29kZShzeW50aGVzaXNFcnJvckNvZGU6IHN0cmluZykge1xuICAgIHRoaXMuX3N5bnRoRXJyb3JDb2RlID0gc3ludGhlc2lzRXJyb3JDb2RlO1xuICB9XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGRlcGxveW1lbnQtcmVsYXRlZCBlcnJvciBpbiB0aGUgQVdTIENESyBUb29sa2l0LlxuICovXG5leHBvcnQgY2xhc3MgRGVwbG95bWVudEVycm9yIGV4dGVuZHMgVG9vbGtpdEVycm9yIHtcbiAgLyoqXG4gICAqIERlbm90ZXMgdGhlIHNvdXJjZSBvZiB0aGUgZXJyb3IgYXMgdXNlci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBzb3VyY2UgPSAndXNlcic7XG5cbiAgcHVibGljIHJlYWRvbmx5IGRlcGxveW1lbnRFcnJvckNvZGU6IHN0cmluZztcblxuICBjb25zdHJ1Y3RvcihtZXNzYWdlOiBzdHJpbmcsIGRlcGxveW1lbnRFcnJvckNvZGU6IHN0cmluZykge1xuICAgIHN1cGVyKCdEZXBsb3ltZW50RXJyb3InLCBtZXNzYWdlLCAnZGVwbG95bWVudCcpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBEZXBsb3ltZW50RXJyb3IucHJvdG90eXBlKTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgREVQTE9ZTUVOVF9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gICAgdGhpcy5kZXBsb3ltZW50RXJyb3JDb2RlID0gZGVwbG95bWVudEVycm9yQ29kZTtcbiAgfVxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYW4gZXJyb3Igb3JpZ2luYXRpbmcgZnJvbSBhIENvbnRleHQgUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGNsYXNzIENvbnRleHRQcm92aWRlckVycm9yIGV4dGVuZHMgVG9vbGtpdEVycm9yIHtcbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgYSBnaXZlbiBlcnJvciBpcyBhbiBpbnN0YW5jZSBvZiBOb1Jlc3VsdHNGb3VuZEVycm9yLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBpc05vUmVzdWx0c0ZvdW5kRXJyb3IoeDogYW55KTogeCBpcyBOb1Jlc3VsdHNGb3VuZEVycm9yIHtcbiAgICByZXR1cm4gVG9vbGtpdEVycm9yLmlzQ29udGV4dFByb3ZpZGVyRXJyb3IoeCkgJiYgTk9fUkVTVUxUU19GT1VORF9FUlJPUl9TWU1CT0wgaW4geDtcbiAgfVxuXG4gIC8qKlxuICAgKiBBIENvbnRleHRQcm92aWRlckVycm9yIHdpdGggYW4gb3JpZ2luYWwgZXJyb3IgYXMgY2F1c2VcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgd2l0aENhdXNlKGVycm9yQ29kZTogc3RyaW5nLCBtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duKTogQ29udGV4dFByb3ZpZGVyRXJyb3Ige1xuICAgIHJldHVybiBuZXcgQ29udGV4dFByb3ZpZGVyRXJyb3IoZXJyb3JDb2RlLCBtZXNzYWdlLCBlcnJvcik7XG4gIH1cblxuICAvKipcbiAgICogRGVub3RlcyB0aGUgc291cmNlIG9mIHRoZSBlcnJvciBhcyB1c2VyLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHNvdXJjZSA9ICd1c2VyJztcblxuICBjb25zdHJ1Y3RvcihlcnJvckNvZGU6IHN0cmluZywgbWVzc2FnZTogc3RyaW5nLCBjYXVzZT86IHVua25vd24pIHtcbiAgICBzdXBlcihlcnJvckNvZGUsIG1lc3NhZ2UsICdjb250ZXh0LXByb3ZpZGVyJywgY2F1c2UpO1xuICAgIE9iamVjdC5zZXRQcm90b3R5cGVPZih0aGlzLCBDb250ZXh0UHJvdmlkZXJFcnJvci5wcm90b3R5cGUpO1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBDT05URVhUX1BST1ZJREVSX0VSUk9SX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgfVxufVxuXG4vKipcbiAqIEEgc3BlY2lmaWMgY29udGV4dCBwcm92aWRlciBsb29rdXAgZmFpbHVyZSBpbmRpY2F0aW5nIG5vIHJlc3VsdHMgd2hlcmUgZm91bmQgZm9yIGEgY29udGV4dCBxdWVyeVxuICovXG5leHBvcnQgY2xhc3MgTm9SZXN1bHRzRm91bmRFcnJvciBleHRlbmRzIENvbnRleHRQcm92aWRlckVycm9yIHtcbiAgY29uc3RydWN0b3IobWVzc2FnZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoJ05vUmVzdWx0c0ZvdW5kJywgbWVzc2FnZSk7XG4gICAgT2JqZWN0LnNldFByb3RvdHlwZU9mKHRoaXMsIE5vUmVzdWx0c0ZvdW5kRXJyb3IucHJvdG90eXBlKTtcbiAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGhpcywgTk9fUkVTVUxUU19GT1VORF9FUlJPUl9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERlcGxveW1lbnRFcnJvckNvZGVzIHtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTVEFDS19ESVNBUFBFQVJFRF9FUlJPUl9DT0RFID0gJ1N0YWNrRGlzYXBwZWFyZWQnO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFVOS05PV05fRVJST1IgPSAnVW5rbm93bkVycm9yJztcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBQUklWQVRFX1JFU09VUkNFX0VSUk9SID0gJ1ByaXZhdGVSZXNvdXJjZUVycm9yJztcbn1cblxuIl19
|
package/lib/toolkit/toolkit.d.ts
CHANGED
|
@@ -202,6 +202,14 @@ export declare class Toolkit extends CloudAssemblySourceBuilder {
|
|
|
202
202
|
* Destroys the selected Stacks.
|
|
203
203
|
*/
|
|
204
204
|
destroy(cx: ICloudAssemblySource, options?: DestroyOptions): Promise<DestroyResult>;
|
|
205
|
+
/**
|
|
206
|
+
* Synthesize and destroy, labelling the work with an explicit action.
|
|
207
|
+
*
|
|
208
|
+
* Kept private: the CLI reaches it (via a `// @ts-ignore`) to keep the
|
|
209
|
+
* "deployed" wording when a destroy runs as part of a deploy (rollback
|
|
210
|
+
* cleanup). Not part of the public API.
|
|
211
|
+
*/
|
|
212
|
+
private _destroyWithAction;
|
|
205
213
|
/**
|
|
206
214
|
* Helper to allow destroy being called as part of the deploy action.
|
|
207
215
|
*/
|