cdktn 0.25.0-pre.2 → 0.25.0-pre.21
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/.jsii +927 -107
- package/lib/annotations.js +4 -4
- package/lib/app.js +54 -5
- package/lib/aspect.js +3 -4
- package/lib/asset-hash.d.ts +75 -0
- package/lib/asset-hash.js +129 -0
- package/lib/assets.d.ts +168 -0
- package/lib/assets.js +128 -0
- package/lib/backends/azurerm-backend.js +4 -6
- package/lib/backends/cloud-backend.js +10 -10
- package/lib/backends/consul-backend.js +4 -6
- package/lib/backends/cos-backend.js +4 -6
- package/lib/backends/gcs-backend.js +4 -6
- package/lib/backends/http-backend.js +4 -6
- package/lib/backends/local-backend.js +38 -7
- package/lib/backends/oss-backend.js +4 -6
- package/lib/backends/pg-backend.js +4 -6
- package/lib/backends/remote-backend.js +8 -10
- package/lib/backends/s3-backend.js +4 -6
- package/lib/backends/swift-backend.js +4 -6
- package/lib/complex-computed-list.js +114 -65
- package/lib/errors.d.ts +6 -0
- package/lib/errors.js +24 -3
- package/lib/functions/provider-function.js +2 -4
- package/lib/functions/terraform-functions.generated.js +2 -4
- package/lib/ignore-strategy.d.ts +82 -0
- package/lib/ignore-strategy.js +29 -0
- package/lib/importable-resource.js +3 -4
- package/lib/index.d.ts +3 -0
- package/lib/index.js +27 -2
- package/lib/manifest.js +56 -14
- package/lib/private/fs.d.ts +74 -2
- package/lib/private/fs.js +129 -17
- package/lib/private/unique.js +35 -2
- package/lib/resource.js +3 -4
- package/lib/synthesize/synthesizer.js +43 -4
- package/lib/terraform-asset.d.ts +33 -2
- package/lib/terraform-asset.js +118 -34
- package/lib/terraform-backend.js +3 -4
- package/lib/terraform-count.js +3 -4
- package/lib/terraform-data-resource.js +12 -10
- package/lib/terraform-data-source.js +10 -4
- package/lib/terraform-dynamic-block.js +5 -2
- package/lib/terraform-dynamic-expression.js +4 -1
- package/lib/terraform-element.js +34 -6
- package/lib/terraform-ephemeral-resource.js +10 -4
- package/lib/terraform-functions.js +2 -4
- package/lib/terraform-hcl-module.js +3 -4
- package/lib/terraform-iterator.js +11 -12
- package/lib/terraform-local.js +3 -4
- package/lib/terraform-module-asset.js +45 -5
- package/lib/terraform-module.js +8 -4
- package/lib/terraform-operators.js +2 -4
- package/lib/terraform-output.js +7 -4
- package/lib/terraform-provider.js +5 -4
- package/lib/terraform-provisioner.js +2 -4
- package/lib/terraform-remote-state.js +5 -5
- package/lib/terraform-resource-targets.js +3 -7
- package/lib/terraform-resource.js +16 -5
- package/lib/terraform-stack.js +38 -38
- package/lib/terraform-variable.js +25 -22
- package/lib/testing/index.js +42 -8
- package/lib/testing/matchers.js +39 -6
- package/lib/tfExpression.js +25 -8
- package/lib/tokens/lazy.js +11 -7
- package/lib/tokens/private/dependency.js +2 -2
- package/lib/tokens/private/encoding.js +6 -1
- package/lib/tokens/private/intrinsic.js +6 -1
- package/lib/tokens/private/resolve.js +2 -5
- package/lib/tokens/private/token-map.js +4 -6
- package/lib/tokens/private/uniqueid.js +35 -2
- package/lib/tokens/resolvable.js +4 -6
- package/lib/tokens/string-fragments.js +6 -10
- package/lib/tokens/token.js +15 -18
- package/lib/upgrade-id-aspect.js +37 -6
- package/lib/validations/target-versions.js +39 -2
- package/lib/validations/validate-binary-version.js +39 -2
- package/lib/validations/validate-function-version-support.js +2 -1
- package/lib/validations/validate-provider-function-target-support.js +2 -1
- package/lib/validations/validate-provider-presence.js +10 -9
- package/lib/validations/validate-terraform-version.js +3 -1
- package/package.json +5 -5
- package/scripts/pack.mjs +57 -15
- package/lib/tsconfig.tsbuildinfo +0 -1
- package/tsconfig.json +0 -40
- package/tsconfig.test.json +0 -12
|
@@ -1,13 +1,49 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
2
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
39
|
exports.StackSynthesizer = void 0;
|
|
4
40
|
exports.invokeAspects = invokeAspects;
|
|
5
41
|
exports.addCustomSynthesis = addCustomSynthesis;
|
|
6
42
|
// Copyright (c) HashiCorp, Inc
|
|
7
43
|
// SPDX-License-Identifier: MPL-2.0
|
|
8
|
-
const path = require("path");
|
|
9
|
-
const fs = require("fs");
|
|
10
|
-
const safe_stable_stringify_1 = require("safe-stable-stringify");
|
|
44
|
+
const path = __importStar(require("path"));
|
|
45
|
+
const fs = __importStar(require("fs"));
|
|
46
|
+
const safe_stable_stringify_1 = __importDefault(require("safe-stable-stringify"));
|
|
11
47
|
const annotations_1 = require("../annotations");
|
|
12
48
|
const constructs_1 = require("constructs");
|
|
13
49
|
const aspect_1 = require("../aspect");
|
|
@@ -15,6 +51,9 @@ const validate_terraform_version_1 = require("../validations/validate-terraform-
|
|
|
15
51
|
const errors_1 = require("../errors");
|
|
16
52
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
17
53
|
class StackSynthesizer {
|
|
54
|
+
stack;
|
|
55
|
+
continueOnErrorAnnotations;
|
|
56
|
+
hclOutput;
|
|
18
57
|
/**
|
|
19
58
|
* @param stack the stack to synthesize
|
|
20
59
|
* @param continueOnErrorAnnotations if set to true, `synthesize()` will not throw an error
|
|
@@ -164,4 +203,4 @@ function addCustomSynthesis(construct, synthesis) {
|
|
|
164
203
|
function getCustomSynthesis(construct) {
|
|
165
204
|
return construct[CUSTOM_SYNTHESIS_SYM];
|
|
166
205
|
}
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ludGhlc2l6ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3ludGhlc2l6ZS9zeW50aGVzaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUErSUEsc0NBeUNDO0FBbUNELGdEQVFDO0FBbk9ELCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsNkJBQTZCO0FBQzdCLHlCQUF5QjtBQUN6QixpRUFBOEM7QUFHOUMsZ0RBQTBFO0FBQzFFLDJDQUF1RTtBQUN2RSxzQ0FBNkM7QUFFN0MsMEZBQXFGO0FBQ3JGLHNDQUFnRTtBQUVoRSwrQ0FBK0M7QUFDL0MsTUFBYSxnQkFBZ0I7SUFDM0I7Ozs7O09BS0c7SUFDSCxZQUNZLEtBQXFCLEVBQ3ZCLDZCQUE2QixLQUFLLEVBQ2xDLFlBQVksS0FBSztRQUZmLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3ZCLCtCQUEwQixHQUExQiwwQkFBMEIsQ0FBUTtRQUNsQyxjQUFTLEdBQVQsU0FBUyxDQUFRO0lBQ3hCLENBQUM7SUFFSixVQUFVLENBQUMsT0FBMEI7UUFDbkMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUUxQixJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQzVCLG1FQUFtRTtZQUNuRSwwREFBMEQ7WUFDMUQsbUVBQW1FO1lBQ25FLHFFQUFxRTtZQUNyRSwrQ0FBK0M7WUFDL0MsRUFBRTtZQUNGLHNEQUFzRDtZQUN0RCxvRUFBb0U7WUFDcEUsc0RBQXNEO1lBQ3RELHFFQUFxRTtZQUNyRSxzRUFBc0U7WUFDdEUscUVBQXFFO1lBQ3JFLHFFQUFxRTtZQUNyRSxvRUFBb0U7WUFDcEUsa0RBQWtEO1lBQ2xELElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDNUIsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO1lBQ2pDLHlFQUF5RTtZQUN6RSxzRUFBc0U7WUFD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QUMsSUFBSSxDQUFDLENBQUM7QUFDOUQsQ0FBQztBQUVELCtDQUErQztBQUMvQyxTQUFTLGlCQUFpQixDQUFDLFVBQTJCO0lBQ3BELE9BQU8sVUFBVSxDQUFDLEtBQUssS0FBSyx5Q0FBMkIsQ0FBQyxLQUFLLENBQUM7QUFDaEUsQ0FBQztBQUVELHFKQUFxSjtBQUNySixNQUFNLG9CQUFvQixHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQWVqRSwrQ0FBK0M7QUFDL0MsU0FBZ0Isa0JBQWtCLENBQ2hDLFNBQXFCLEVBQ3JCLFNBQTJCO0lBRTNCLE1BQU0sQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLG9CQUFvQixFQUFFO1FBQ3JELEtBQUssRUFBRSxTQUFTO1FBQ2hCLFVBQVUsRUFBRSxLQUFLO0tBQ2xCLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCwrQ0FBK0M7QUFDL0MsU0FBUyxrQkFBa0IsQ0FDekIsU0FBcUI7SUFFckIsT0FBUSxTQUFpQixDQUFDLG9CQUFvQixDQUFDLENBQUM7QUFDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgKiBhcyBmcyBmcm9tIFwiZnNcIjtcbmltcG9ydCBzdHJpbmdpZnkgZnJvbSBcInNhZmUtc3RhYmxlLXN0cmluZ2lmeVwiO1xuaW1wb3J0IHsgVGVycmFmb3JtU3RhY2sgfSBmcm9tIFwiLi4vdGVycmFmb3JtLXN0YWNrXCI7XG5pbXBvcnQgeyBJU3RhY2tTeW50aGVzaXplciwgSVN5bnRoZXNpc1Nlc3Npb24gfSBmcm9tIFwiLi90eXBlc1wiO1xuaW1wb3J0IHsgQW5ub3RhdGlvbk1ldGFkYXRhRW50cnlUeXBlLCBBbm5vdGF0aW9ucyB9IGZyb20gXCIuLi9hbm5vdGF0aW9uc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0T3JkZXIsIElDb25zdHJ1Y3QsIE1ldGFkYXRhRW50cnkgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgQXNwZWN0cywgSUFzcGVjdCB9IGZyb20gXCIuLi9hc3BlY3RcIjtcbmltcG9ydCB7IFN0YWNrQW5ub3RhdGlvbiB9IGZyb20gXCIuLi9tYW5pZmVzdFwiO1xuaW1wb3J0IHsgVmFsaWRhdGVUZXJyYWZvcm1WZXJzaW9uIH0gZnJvbSBcIi4uL3ZhbGlkYXRpb25zL3ZhbGlkYXRlLXRlcnJhZm9ybS12ZXJzaW9uXCI7XG5pbXBvcnQgeyBlbmNvdW50ZXJlZEFubm90YXRpb25XaXRoTGV2ZWxFcnJvciB9IGZyb20gXCIuLi9lcnJvcnNcIjtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmV4cG9ydCBjbGFzcyBTdGFja1N5bnRoZXNpemVyIGltcGxlbWVudHMgSVN0YWNrU3ludGhlc2l6ZXIge1xuICAvKipcbiAgICogQHBhcmFtIHN0YWNrIHRoZSBzdGFjayB0byBzeW50aGVzaXplXG4gICAqIEBwYXJhbSBjb250aW51ZU9uRXJyb3JBbm5vdGF0aW9ucyBpZiBzZXQgdG8gdHJ1ZSwgYHN5bnRoZXNpemUoKWAgd2lsbCBub3QgdGhyb3cgYW4gZXJyb3JcbiAgICogaWYgaXQgZW5jb3VudGVycyBhbiBlcnJvciBBbm5vdGF0aW9uLiBIb3dldmVyLCBpdCB3aWxsIHN0aWxsIGFkZCBhbGwgZXJyb3JzIHRvIHRoZSBtYW5pZmVzdFxuICAgKiBmaWxlLiBUaGUgY2RrdG4tY2xpIHVzZXMgdGhpcyBmbGFnIHRvIHByaW50IHRoZSBlcnJvcnMgaXRzZWxmLlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHN0YWNrOiBUZXJyYWZvcm1TdGFjayxcbiAgICBwcml2YXRlIGNvbnRpbnVlT25FcnJvckFubm90YXRpb25zID0gZmFsc2UsXG4gICAgcHJpdmF0ZSBoY2xPdXRwdXQgPSBmYWxzZSxcbiAgKSB7fVxuXG4gIHN5bnRoZXNpemUoc2Vzc2lvbjogSVN5bnRoZXNpc1Nlc3Npb24pIHtcbiAgICBpbnZva2VBc3BlY3RzKHRoaXMuc3RhY2spO1xuXG4gICAgaWYgKCFzZXNzaW9uLnN0YWNrc1ByZXBhcmVkKSB7XG4gICAgICAvLyBUaGlzIHNlc3Npb24gd2Fzbid0IGJ1aWx0IGJ5IEFwcC5zeW50aCgpICh3aGljaCBhbHJlYWR5IHByZXBhcmVkXG4gICAgICAvLyBldmVyeSBzdGFjayB1cCBmcm9udCkgLSBwcmVwYXJlIHRoaXMgc3RhY2sgb3Vyc2VsdmVzIHNvXG4gICAgICAvLyByZXNvbHZlLWRpc2NvdmVyZWQgcHJvdmlkZXItZmVhdHVyZSB1c2FnZSBhbmQgVGVycmFmb3JtLWZ1bmN0aW9uXG4gICAgICAvLyB1c2FnZSBhcmUgcmVkaXNjb3ZlcmVkIGZvciB0aGUgY3VycmVudCBwYXNzIGJlZm9yZSB2YWxpZGF0aW9ucyBydW5cbiAgICAgIC8vIGJlbG93LiBTZWUgSVN5bnRoZXNpc1Nlc3Npb24uc3RhY2tzUHJlcGFyZWQuXG4gICAgICAvL1xuICAgICAgLy8gVGVycmFmb3JtLWZ1bmN0aW9uIHVzYWdlIGlzIHJlY29yZGVkIHBlci1zdGFjayAoc2VlXG4gICAgICAvLyBgVGVycmFmb3JtU3RhY2suX3VzZWRGdW5jdGlvbnNgKSBhbmQgYHByZXBhcmVTdGFjaygpYCBjbGVhcnMgdGhpc1xuICAgICAgLy8gc3RhY2sncyBvd24gdXNhZ2Ugc2V0cyBpdHNlbGYsIGFzIHRoZSBmaXJzdCBzdGVwIG9mXG4gICAgICAvLyBgX3J1blByZXBhcmluZ1Jlc29sdmUoKWAsIGJlZm9yZSByZWRpc2NvdmVyaW5nIHRoZW0uIFdpdGhvdXQgdGhpcyxcbiAgICAgIC8vIGEgZnVuY3Rpb24gcmVuZGVyZWQgYnkgYW4gZWFybGllciBwYXNzIG92ZXIgdGhpcyBzYW1lIHN0YWNrIChlLmcuIGFcbiAgICAgIC8vIHByZXZpb3VzIGRpcmVjdCBjYWxsIHRvIHRoaXMgc2FtZSBzeW50aGVzaXplKCkpIHdvdWxkIGtlZXAgZmFpbGluZ1xuICAgICAgLy8gdGFyZ2V0LXZlcnNpb24gdmFsaWRhdGlvbiBpbiBhIGxhdGVyIHBhc3MgZXZlbiBhZnRlciB0aGF0IHVzYWdlIGlzXG4gICAgICAvLyBnb25lLCBicmVha2luZyB0aGUgcGVyLXN5bnRoZXNpcy1lcG9jaCBndWFyYW50ZWUgdGhhdCBBcHAuc3ludGgoKVxuICAgICAgLy8gYW5kIFRlc3Rpbmcuc3ludGgoKS9zeW50aEhjbCgpIGFscmVhZHkgcHJvdmlkZS5cbiAgICAgIHRoaXMuc3RhY2sucHJlcGFyZVN0YWNrKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuc3RhY2suaGFzUmVzb3VyY2VNb3ZlKCkpIHtcbiAgICAgIC8vIFRPRE8odGFyZ2V0LXZlcnNpb25zKTogdGhpcyBwcm9iZXMgdGhlIGxvY2FsbHkgaW5zdGFsbGVkIGJpbmFyeSBkdXJpbmdcbiAgICAgIC8vIHN5bnRoLiBNaWdyYXRlIHRvIFZhbGlkYXRlRmVhdHVyZVRhcmdldFN1cHBvcnQgKGRlY2xhcmVkIGNka3RmLmpzb25cbiAgICAgIC8vIHRhcmdldFZlcnNpb25zKSBhbmQgbGVhdmUgaW5zdGFsbGVkLWJpbmFyeSB2ZXJpZmljYXRpb24gdG8gdGhlIG9wdC1pblxuICAgICAgLy8gdmFsaWRhdGVJbnN0YWxsZWRCaW5hcnkgQ0xJIGJlaGF2aW9yLlxuICAgICAgdGhpcy5zdGFjay5ub2RlLmFkZFZhbGlkYXRpb24oXG4gICAgICAgIG5ldyBWYWxpZGF0ZVRlcnJhZm9ybVZlcnNpb24oXG4gICAgICAgICAgXCI+PTEuNVwiLFxuICAgICAgICAgIGBSZXNvdXJjZSBtb3ZlIGZ1bmN0aW9uYWxpdHkgaXMgb25seSBzdXBwb3J0ZWQgZm9yIFRlcnJhZm9ybSA+PTEuNS4gUGxlYXNlIHVwZ3JhZGUgeW91ciBUZXJyYWZvcm0gdmVyc2lvbi5gLFxuICAgICAgICApLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAoIXNlc3Npb24uc2tpcFZhbGlkYXRpb24pIHtcbiAgICAgIHRoaXMuc3RhY2sucnVuQWxsVmFsaWRhdGlvbnMoKTtcbiAgICB9XG5cbiAgICBjb25zdCBtYW5pZmVzdCA9IHNlc3Npb24ubWFuaWZlc3Q7XG4gICAgY29uc3Qgc3RhY2tNYW5pZmVzdCA9IG1hbmlmZXN0LmZvclN0YWNrKHRoaXMuc3RhY2spO1xuXG4gICAgY29uc3Qgd29ya2luZ0RpcmVjdG9yeSA9IHBhdGguam9pbihcbiAgICAgIHNlc3Npb24ub3V0ZGlyLFxuICAgICAgc3RhY2tNYW5pZmVzdC53b3JraW5nRGlyZWN0b3J5LFxuICAgICk7XG4gICAgaWYgKCFmcy5leGlzdHNTeW5jKHdvcmtpbmdEaXJlY3RvcnkpKSBmcy5ta2RpclN5bmMod29ya2luZ0RpcmVjdG9yeSk7XG5cbiAgICAvLyBjYWxsIGN1c3RvbSBzeW50aGVzaXMgb24gY2hpbGQgbm9kZXMgKGxlYWZzIGZpcnN0KVxuICAgIHRoaXMuc3RhY2subm9kZVxuICAgICAgLmZpbmRBbGwoQ29uc3RydWN0T3JkZXIuUE9TVE9SREVSKVxuICAgICAgLmZvckVhY2goKG5vZGUpID0+IGdldEN1c3RvbVN5bnRoZXNpcyhub2RlKT8ub25TeW50aGVzaXplKHNlc3Npb24pKTtcblxuICAgIC8vIGNvbGxlY3QgQW5ub3RhdGlvbnMgaW50byBNYW5pZmVzdFxuICAgIGNvbnN0IGFubm90YXRpb25zID0gdGhpcy5zdGFjay5ub2RlXG4gICAgICAuZmluZEFsbCgpXG4gICAgICAubWFwKChub2RlKSA9PiAoe1xuICAgICAgICBub2RlLFxuICAgICAgICBtZXRhZGF0YXM6IG5vZGUubm9kZS5tZXRhZGF0YS5maWx0ZXIoaXNBbm5vdGF0aW9uTWV0YWRhdGEpLFxuICAgICAgfSkpXG4gICAgICAubWFwPFN0YWNrQW5ub3RhdGlvbltdPigoeyBub2RlLCBtZXRhZGF0YXMgfSkgPT5cbiAgICAgICAgbWV0YWRhdGFzLm1hcCgobWV0YWRhdGEpID0+ICh7XG4gICAgICAgICAgY29uc3RydWN0UGF0aDogbm9kZS5ub2RlLnBhdGgsXG4gICAgICAgICAgbGV2ZWw6IG1ldGFkYXRhLnR5cGUgYXMgQW5ub3RhdGlvbk1ldGFkYXRhRW50cnlUeXBlLFxuICAgICAgICAgIG1lc3NhZ2U6IG1ldGFkYXRhLmRhdGEsXG4gICAgICAgICAgc3RhY2t0cmFjZTogbWV0YWRhdGEudHJhY2UsXG4gICAgICAgIH0pKSxcbiAgICAgIClcbiAgICAgIC5yZWR1Y2UoKGxpc3QsIG1ldGFkYXRhcykgPT4gWy4uLmxpc3QsIC4uLm1ldGFkYXRhc10sIFtdKTsgLy8gQXJyYXkuZmxhdCgpXG5cbiAgICAvLyBpdCBpcyByZWFkb25seSBidXQgdGhpcyBpcyB0aGUgcGxhY2Ugd2hlcmUgd2UgYXJlIGFsbG93ZWQgdG8gd3JpdGUgdG8gaXRcbiAgICAoc3RhY2tNYW5pZmVzdC5hbm5vdGF0aW9ucyBhcyBhbnkpID0gYW5ub3RhdGlvbnM7XG5cbiAgICAvLyBhYm9ydCBpZiBvbmUgb3IgbW9yZSBlcnJvciBhbm5vdGF0aW9ucyBoYXZlIGJlZW4gZW5jb3VudGVyZWRcbiAgICBpZiAoXG4gICAgICAhdGhpcy5jb250aW51ZU9uRXJyb3JBbm5vdGF0aW9ucyAmJlxuICAgICAgYW5ub3RhdGlvbnMuc29tZShpc0Vycm9yQW5ub3RhdGlvbilcbiAgICApIHtcbiAgICAgIHRocm93IGVuY291bnRlcmVkQW5ub3RhdGlvbldpdGhMZXZlbEVycm9yKFxuICAgICAgICBhbm5vdGF0aW9uc1xuICAgICAgICAgIC5maWx0ZXIoaXNFcnJvckFubm90YXRpb24pXG4gICAgICAgICAgLm1hcCgoYSkgPT4gYFske2EuY29uc3RydWN0UGF0aH1dICR7YS5tZXNzYWdlfWApXG4gICAgICAgICAgLmpvaW4oXCJcXG5cIiksXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmhjbE91dHB1dCkge1xuICAgICAgY29uc3QgaGNsID0gdGhpcy5zdGFjay50b0hjbFRlcnJhZm9ybSgpO1xuICAgICAgZnMud3JpdGVGaWxlU3luYyhcbiAgICAgICAgcGF0aC5qb2luKHNlc3Npb24ub3V0ZGlyLCBzdGFja01hbmlmZXN0LnN5bnRoZXNpemVkU3RhY2tQYXRoKSxcbiAgICAgICAgaGNsLmhjbCxcbiAgICAgICk7XG5cbiAgICAgIGZzLndyaXRlRmlsZVN5bmMoXG4gICAgICAgIHBhdGguam9pbihzZXNzaW9uLm91dGRpciwgc3RhY2tNYW5pZmVzdC5zdGFja01ldGFkYXRhUGF0aCEpLFxuICAgICAgICBzdHJpbmdpZnkoaGNsLm1ldGFkYXRhLCBudWxsLCAyKSBhcyBzdHJpbmcsXG4gICAgICApO1xuXG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QganNvblRmQ29uZmlnID0gdGhpcy5zdGFjay50b1RlcnJhZm9ybSgpO1xuXG4gICAgZnMud3JpdGVGaWxlU3luYyhcbiAgICAgIHBhdGguam9pbihzZXNzaW9uLm91dGRpciwgc3RhY2tNYW5pZmVzdC5zeW50aGVzaXplZFN0YWNrUGF0aCksXG4gICAgICBzdHJpbmdpZnkoanNvblRmQ29uZmlnLCBudWxsLCAyKSBhcyBzdHJpbmcsXG4gICAgKTtcbiAgfVxufVxuXG4vKipcbiAqIEludm9rZSBhc3BlY3RzIG9uIHRoZSBnaXZlbiBjb25zdHJ1Y3QgdHJlZS5cbiAqXG4gKiBvcmlnaW5hbGx5IGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvZGNhZTNlZWFkMGRiZjlhY2IxZWQ4MGJhOTViYjEwNGM2NGNiMWJkNy9wYWNrYWdlcy9AYXdzLWNkay9jb3JlL2xpYi9wcml2YXRlL3N5bnRoZXNpcy50cyNMOTktTDEzN1xuICovXG5leHBvcnQgZnVuY3Rpb24gaW52b2tlQXNwZWN0cyhyb290OiBJQ29uc3RydWN0KSB7XG4gIGNvbnN0IGludm9rZWRCeVBhdGg6IHsgW25vZGVQYXRoOiBzdHJpbmddOiBJQXNwZWN0W10gfSA9IHt9O1xuXG4gIGxldCBuZXN0ZWRBc3BlY3RXYXJuaW5nID0gZmFsc2U7XG4gIHJlY3Vyc2Uocm9vdCwgW10pO1xuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG4gIGZ1bmN0aW9uIHJlY3Vyc2UoY29uc3RydWN0OiBJQ29uc3RydWN0LCBpbmhlcml0ZWRBc3BlY3RzOiBJQXNwZWN0W10pIHtcbiAgICBjb25zdCBub2RlID0gY29uc3RydWN0Lm5vZGU7XG4gICAgY29uc3QgYXNwZWN0cyA9IEFzcGVjdHMub2YoY29uc3RydWN0KTtcbiAgICBjb25zdCBhbGxBc3BlY3RzSGVyZSA9IFsuLi4oaW5oZXJpdGVkQXNwZWN0cyA/PyBbXSksIC4uLmFzcGVjdHMuYWxsXTtcbiAgICBjb25zdCBub2RlQXNwZWN0c0NvdW50ID0gYXNwZWN0cy5hbGwubGVuZ3RoO1xuICAgIGZvciAoY29uc3QgYXNwZWN0IG9mIGFsbEFzcGVjdHNIZXJlKSB7XG4gICAgICBsZXQgaW52b2tlZCA9IGludm9rZWRCeVBhdGhbbm9kZS5wYXRoXTtcbiAgICAgIGlmICghaW52b2tlZCkge1xuICAgICAgICBpbnZva2VkID0gaW52b2tlZEJ5UGF0aFtub2RlLnBhdGhdID0gW107XG4gICAgICB9XG5cbiAgICAgIGlmIChpbnZva2VkLmluY2x1ZGVzKGFzcGVjdCkpIHtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGFzcGVjdC52aXNpdChjb25zdHJ1Y3QpO1xuXG4gICAgICAvLyBpZiBhbiBhc3BlY3Qgd2FzIGFkZGVkIHRvIHRoZSBub2RlIHdoaWxlIGludm9raW5nIGFub3RoZXIgYXNwZWN0IGl0IHdpbGwgbm90IGJlIGludm9rZWQsIGVtaXQgYSB3YXJuaW5nXG4gICAgICAvLyB0aGUgYG5lc3RlZEFzcGVjdFdhcm5pbmdgIGZsYWcgaXMgdXNlZCB0byBwcmV2ZW50IHRoZSB3YXJuaW5nIGZyb20gYmVpbmcgZW1pdHRlZCBmb3IgZXZlcnkgY2hpbGRcbiAgICAgIGlmICghbmVzdGVkQXNwZWN0V2FybmluZyAmJiBub2RlQXNwZWN0c0NvdW50ICE9PSBhc3BlY3RzLmFsbC5sZW5ndGgpIHtcbiAgICAgICAgQW5ub3RhdGlvbnMub2YoY29uc3RydWN0KS5hZGRXYXJuaW5nKFxuICAgICAgICAgIFwiV2UgZGV0ZWN0ZWQgYW4gQXNwZWN0IHdhcyBhZGRlZCB2aWEgYW5vdGhlciBBc3BlY3QsIGFuZCB3aWxsIG5vdCBiZSBhcHBsaWVkXCIsXG4gICAgICAgICk7XG4gICAgICAgIG5lc3RlZEFzcGVjdFdhcm5pbmcgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICAvLyBtYXJrIGFzIGludm9rZWQgZm9yIHRoaXMgbm9kZVxuICAgICAgaW52b2tlZC5wdXNoKGFzcGVjdCk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBjb25zdHJ1Y3Qubm9kZS5jaGlsZHJlbikge1xuICAgICAgcmVjdXJzZShjaGlsZCwgYWxsQXNwZWN0c0hlcmUpO1xuICAgIH1cbiAgfVxufVxuXG5jb25zdCBhbm5vdGF0aW9uTWV0YWRhdGFFbnRyeVR5cGVzID0gW1xuICBBbm5vdGF0aW9uTWV0YWRhdGFFbnRyeVR5cGUuSU5GTyxcbiAgQW5ub3RhdGlvbk1ldGFkYXRhRW50cnlUeXBlLldBUk4sXG4gIEFubm90YXRpb25NZXRhZGF0YUVudHJ5VHlwZS5FUlJPUixcbl0gYXMgc3RyaW5nW107XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5mdW5jdGlvbiBpc0Fubm90YXRpb25NZXRhZGF0YShtZXRhZGF0YTogTWV0YWRhdGFFbnRyeSk6IGJvb2xlYW4ge1xuICByZXR1cm4gYW5ub3RhdGlvbk1ldGFkYXRhRW50cnlUeXBlcy5pbmNsdWRlcyhtZXRhZGF0YS50eXBlKTtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmZ1bmN0aW9uIGlzRXJyb3JBbm5vdGF0aW9uKGFubm90YXRpb246IFN0YWNrQW5ub3RhdGlvbik6IGJvb2xlYW4ge1xuICByZXR1cm4gYW5ub3RhdGlvbi5sZXZlbCA9PT0gQW5ub3RhdGlvbk1ldGFkYXRhRW50cnlUeXBlLkVSUk9SO1xufVxuXG4vLyBvcmlnaW5hbGx5IGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2Jsb2IvZGNhZTNlZWFkMGRiZjlhY2IxZWQ4MGJhOTViYjEwNGM2NGNiMWJkNy9wYWNrYWdlcy8lNDBhd3MtY2RrL2NvcmUvbGliL3ByaXZhdGUvc3ludGhlc2lzLnRzI0w1MlxuY29uc3QgQ1VTVE9NX1NZTlRIRVNJU19TWU0gPSBTeW1ib2wuZm9yKFwiY2RrdGYvY3VzdG9tU3ludGhlc2lzXCIpO1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgY29uc3RydWN0cyB0aGF0IHdhbnQgdG8gZG8gc29tZXRoaW5nIGN1c3RvbSBkdXJpbmcgc3ludGhlc2lzXG4gKlxuICogVGhpcyBmZWF0dXJlIGlzIGludGVuZGVkIGZvciB1c2UgYnkgdGhlIENES1ROIG9ubHk7IDNyZCBwYXJ0eVxuICogbGlicmFyeSBhdXRob3JzIGFuZCBDREsgdXNlcnMgc2hvdWxkIG5vdCB1c2UgdGhpcyBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ3VzdG9tU3ludGhlc2lzIHtcbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIHRoZSBjb25zdHJ1Y3QgaXMgc3ludGhlc2l6ZWRcbiAgICovXG4gIG9uU3ludGhlc2l6ZShzZXNzaW9uOiBJU3ludGhlc2lzU2Vzc2lvbik6IHZvaWQ7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgZnVuY3Rpb24gYWRkQ3VzdG9tU3ludGhlc2lzKFxuICBjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QsXG4gIHN5bnRoZXNpczogSUN1c3RvbVN5bnRoZXNpcyxcbik6IHZvaWQge1xuICBPYmplY3QuZGVmaW5lUHJvcGVydHkoY29uc3RydWN0LCBDVVNUT01fU1lOVEhFU0lTX1NZTSwge1xuICAgIHZhbHVlOiBzeW50aGVzaXMsXG4gICAgZW51bWVyYWJsZTogZmFsc2UsXG4gIH0pO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gZ2V0Q3VzdG9tU3ludGhlc2lzKFxuICBjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QsXG4pOiBJQ3VzdG9tU3ludGhlc2lzIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIChjb25zdHJ1Y3QgYXMgYW55KVtDVVNUT01fU1lOVEhFU0lTX1NZTV07XG59XG4iXX0=
|
|
206
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ludGhlc2l6ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3ludGhlc2l6ZS9zeW50aGVzaXplci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUErSUEsc0NBeUNDO0FBbUNELGdEQVFDO0FBbk9ELCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsMkNBQTZCO0FBQzdCLHVDQUF5QjtBQUN6QixrRkFBOEM7QUFHOUMsZ0RBQTBFO0FBQzFFLDJDQUF1RTtBQUN2RSxzQ0FBNkM7QUFFN0MsMEZBQXFGO0FBQ3JGLHNDQUFnRTtBQUVoRSwrQ0FBK0M7QUFDL0MsTUFBYSxnQkFBZ0I7SUFRZjtJQUNGO0lBQ0E7SUFUVjs7Ozs7T0FLRztJQUNILFlBQ1ksS0FBcUIsRUFDdkIsNkJBQTZCLEtBQUssRUFDbEMsWUFBWSxLQUFLO1FBRmYsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDdkIsK0JBQTBCLEdBQTFCLDBCQUEwQixDQUFRO1FBQ2xDLGNBQVMsR0FBVCxTQUFTLENBQVE7SUFDeEIsQ0FBQztJQUVKLFVBQVUsQ0FBQyxPQUEwQjtRQUNuQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTFCLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDNUIsbUVBQW1FO1lBQ25FLDBEQUEwRDtZQUMxRCxtRUFBbUU7WUFDbkUscUVBQXFFO1lBQ3JFLCtDQUErQztZQUMvQyxFQUFFO1lBQ0Ysc0RBQXNEO1lBQ3RELG9FQUFvRTtZQUNwRSxzREFBc0Q7WUFDdEQscUVBQXFFO1lBQ3JFLHNFQUFzRTtZQUN0RSxxRUFBcUU7WUFDckUscUVBQXFFO1lBQ3JFLG9FQUFvRTtZQUNwRSxrREFBa0Q7WUFDbEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM1QixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFD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QUFDLFFBQXVCO0lBQ25ELE9BQU8sNEJBQTRCLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUM5RCxDQUFDO0FBRUQsK0NBQStDO0FBQy9DLFNBQVMsaUJBQWlCLENBQUMsVUFBMkI7SUFDcEQsT0FBTyxVQUFVLENBQUMsS0FBSyxLQUFLLHlDQUEyQixDQUFDLEtBQUssQ0FBQztBQUNoRSxDQUFDO0FBRUQscUpBQXFKO0FBQ3JKLE1BQU0sb0JBQW9CLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO0FBZWpFLCtDQUErQztBQUMvQyxTQUFnQixrQkFBa0IsQ0FDaEMsU0FBcUIsRUFDckIsU0FBMkI7SUFFM0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsb0JBQW9CLEVBQUU7UUFDckQsS0FBSyxFQUFFLFNBQVM7UUFDaEIsVUFBVSxFQUFFLEtBQUs7S0FDbEIsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELCtDQUErQztBQUMvQyxTQUFTLGtCQUFrQixDQUN6QixTQUFxQjtJQUVyQixPQUFRLFNBQWlCLENBQUMsb0JBQW9CLENBQUMsQ0FBQztBQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSBIYXNoaUNvcnAsIEluY1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbmltcG9ydCAqIGFzIHBhdGggZnJvbSBcInBhdGhcIjtcbmltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0IHN0cmluZ2lmeSBmcm9tIFwic2FmZS1zdGFibGUtc3RyaW5naWZ5XCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1TdGFjayB9IGZyb20gXCIuLi90ZXJyYWZvcm0tc3RhY2tcIjtcbmltcG9ydCB7IElTdGFja1N5bnRoZXNpemVyLCBJU3ludGhlc2lzU2Vzc2lvbiB9IGZyb20gXCIuL3R5cGVzXCI7XG5pbXBvcnQgeyBBbm5vdGF0aW9uTWV0YWRhdGFFbnRyeVR5cGUsIEFubm90YXRpb25zIH0gZnJvbSBcIi4uL2Fubm90YXRpb25zXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3RPcmRlciwgSUNvbnN0cnVjdCwgTWV0YWRhdGFFbnRyeSB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBBc3BlY3RzLCBJQXNwZWN0IH0gZnJvbSBcIi4uL2FzcGVjdFwiO1xuaW1wb3J0IHsgU3RhY2tBbm5vdGF0aW9uIH0gZnJvbSBcIi4uL21hbmlmZXN0XCI7XG5pbXBvcnQgeyBWYWxpZGF0ZVRlcnJhZm9ybVZlcnNpb24gfSBmcm9tIFwiLi4vdmFsaWRhdGlvbnMvdmFsaWRhdGUtdGVycmFmb3JtLXZlcnNpb25cIjtcbmltcG9ydCB7IGVuY291bnRlcmVkQW5ub3RhdGlvbldpdGhMZXZlbEVycm9yIH0gZnJvbSBcIi4uL2Vycm9yc1wiO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZXhwb3J0IGNsYXNzIFN0YWNrU3ludGhlc2l6ZXIgaW1wbGVtZW50cyBJU3RhY2tTeW50aGVzaXplciB7XG4gIC8qKlxuICAgKiBAcGFyYW0gc3RhY2sgdGhlIHN0YWNrIHRvIHN5bnRoZXNpemVcbiAgICogQHBhcmFtIGNvbnRpbnVlT25FcnJvckFubm90YXRpb25zIGlmIHNldCB0byB0cnVlLCBgc3ludGhlc2l6ZSgpYCB3aWxsIG5vdCB0aHJvdyBhbiBlcnJvclxuICAgKiBpZiBpdCBlbmNvdW50ZXJzIGFuIGVycm9yIEFubm90YXRpb24uIEhvd2V2ZXIsIGl0IHdpbGwgc3RpbGwgYWRkIGFsbCBlcnJvcnMgdG8gdGhlIG1hbmlmZXN0XG4gICAqIGZpbGUuIFRoZSBjZGt0bi1jbGkgdXNlcyB0aGlzIGZsYWcgdG8gcHJpbnQgdGhlIGVycm9ycyBpdHNlbGYuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgc3RhY2s6IFRlcnJhZm9ybVN0YWNrLFxuICAgIHByaXZhdGUgY29udGludWVPbkVycm9yQW5ub3RhdGlvbnMgPSBmYWxzZSxcbiAgICBwcml2YXRlIGhjbE91dHB1dCA9IGZhbHNlLFxuICApIHt9XG5cbiAgc3ludGhlc2l6ZShzZXNzaW9uOiBJU3ludGhlc2lzU2Vzc2lvbikge1xuICAgIGludm9rZUFzcGVjdHModGhpcy5zdGFjayk7XG5cbiAgICBpZiAoIXNlc3Npb24uc3RhY2tzUHJlcGFyZWQpIHtcbiAgICAgIC8vIFRoaXMgc2Vzc2lvbiB3YXNuJ3QgYnVpbHQgYnkgQXBwLnN5bnRoKCkgKHdoaWNoIGFscmVhZHkgcHJlcGFyZWRcbiAgICAgIC8vIGV2ZXJ5IHN0YWNrIHVwIGZyb250KSAtIHByZXBhcmUgdGhpcyBzdGFjayBvdXJzZWx2ZXMgc29cbiAgICAgIC8vIHJlc29sdmUtZGlzY292ZXJlZCBwcm92aWRlci1mZWF0dXJlIHVzYWdlIGFuZCBUZXJyYWZvcm0tZnVuY3Rpb25cbiAgICAgIC8vIHVzYWdlIGFyZSByZWRpc2NvdmVyZWQgZm9yIHRoZSBjdXJyZW50IHBhc3MgYmVmb3JlIHZhbGlkYXRpb25zIHJ1blxuICAgICAgLy8gYmVsb3cuIFNlZSBJU3ludGhlc2lzU2Vzc2lvbi5zdGFja3NQcmVwYXJlZC5cbiAgICAgIC8vXG4gICAgICAvLyBUZXJyYWZvcm0tZnVuY3Rpb24gdXNhZ2UgaXMgcmVjb3JkZWQgcGVyLXN0YWNrIChzZWVcbiAgICAgIC8vIGBUZXJyYWZvcm1TdGFjay5fdXNlZEZ1bmN0aW9uc2ApIGFuZCBgcHJlcGFyZVN0YWNrKClgIGNsZWFycyB0aGlzXG4gICAgICAvLyBzdGFjaydzIG93biB1c2FnZSBzZXRzIGl0c2VsZiwgYXMgdGhlIGZpcnN0IHN0ZXAgb2ZcbiAgICAgIC8vIGBfcnVuUHJlcGFyaW5nUmVzb2x2ZSgpYCwgYmVmb3JlIHJlZGlzY292ZXJpbmcgdGhlbS4gV2l0aG91dCB0aGlzLFxuICAgICAgLy8gYSBmdW5jdGlvbiByZW5kZXJlZCBieSBhbiBlYXJsaWVyIHBhc3Mgb3ZlciB0aGlzIHNhbWUgc3RhY2sgKGUuZy4gYVxuICAgICAgLy8gcHJldmlvdXMgZGlyZWN0IGNhbGwgdG8gdGhpcyBzYW1lIHN5bnRoZXNpemUoKSkgd291bGQga2VlcCBmYWlsaW5nXG4gICAgICAvLyB0YXJnZXQtdmVyc2lvbiB2YWxpZGF0aW9uIGluIGEgbGF0ZXIgcGFzcyBldmVuIGFmdGVyIHRoYXQgdXNhZ2UgaXNcbiAgICAgIC8vIGdvbmUsIGJyZWFraW5nIHRoZSBwZXItc3ludGhlc2lzLWVwb2NoIGd1YXJhbnRlZSB0aGF0IEFwcC5zeW50aCgpXG4gICAgICAvLyBhbmQgVGVzdGluZy5zeW50aCgpL3N5bnRoSGNsKCkgYWxyZWFkeSBwcm92aWRlLlxuICAgICAgdGhpcy5zdGFjay5wcmVwYXJlU3RhY2soKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5zdGFjay5oYXNSZXNvdXJjZU1vdmUoKSkge1xuICAgICAgLy8gVE9ETyh0YXJnZXQtdmVyc2lvbnMpOiB0aGlzIHByb2JlcyB0aGUgbG9jYWxseSBpbnN0YWxsZWQgYmluYXJ5IGR1cmluZ1xuICAgICAgLy8gc3ludGguIE1pZ3JhdGUgdG8gVmFsaWRhdGVGZWF0dXJlVGFyZ2V0U3VwcG9ydCAoZGVjbGFyZWQgY2RrdGYuanNvblxuICAgICAgLy8gdGFyZ2V0VmVyc2lvbnMpIGFuZCBsZWF2ZSBpbnN0YWxsZWQtYmluYXJ5IHZlcmlmaWNhdGlvbiB0byB0aGUgb3B0LWluXG4gICAgICAvLyB2YWxpZGF0ZUluc3RhbGxlZEJpbmFyeSBDTEkgYmVoYXZpb3IuXG4gICAgICB0aGlzLnN0YWNrLm5vZGUuYWRkVmFsaWRhdGlvbihcbiAgICAgICAgbmV3IFZhbGlkYXRlVGVycmFmb3JtVmVyc2lvbihcbiAgICAgICAgICBcIj49MS41XCIsXG4gICAgICAgICAgYFJlc291cmNlIG1vdmUgZnVuY3Rpb25hbGl0eSBpcyBvbmx5IHN1cHBvcnRlZCBmb3IgVGVycmFmb3JtID49MS41LiBQbGVhc2UgdXBncmFkZSB5b3VyIFRlcnJhZm9ybSB2ZXJzaW9uLmAsXG4gICAgICAgICksXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmICghc2Vzc2lvbi5za2lwVmFsaWRhdGlvbikge1xuICAgICAgdGhpcy5zdGFjay5ydW5BbGxWYWxpZGF0aW9ucygpO1xuICAgIH1cblxuICAgIGNvbnN0IG1hbmlmZXN0ID0gc2Vzc2lvbi5tYW5pZmVzdDtcbiAgICBjb25zdCBzdGFja01hbmlmZXN0ID0gbWFuaWZlc3QuZm9yU3RhY2sodGhpcy5zdGFjayk7XG5cbiAgICBjb25zdCB3b3JraW5nRGlyZWN0b3J5ID0gcGF0aC5qb2luKFxuICAgICAgc2Vzc2lvbi5vdXRkaXIsXG4gICAgICBzdGFja01hbmlmZXN0LndvcmtpbmdEaXJlY3RvcnksXG4gICAgKTtcbiAgICBpZiAoIWZzLmV4aXN0c1N5bmMod29ya2luZ0RpcmVjdG9yeSkpIGZzLm1rZGlyU3luYyh3b3JraW5nRGlyZWN0b3J5KTtcblxuICAgIC8vIGNhbGwgY3VzdG9tIHN5bnRoZXNpcyBvbiBjaGlsZCBub2RlcyAobGVhZnMgZmlyc3QpXG4gICAgdGhpcy5zdGFjay5ub2RlXG4gICAgICAuZmluZEFsbChDb25zdHJ1Y3RPcmRlci5QT1NUT1JERVIpXG4gICAgICAuZm9yRWFjaCgobm9kZSkgPT4gZ2V0Q3VzdG9tU3ludGhlc2lzKG5vZGUpPy5vblN5bnRoZXNpemUoc2Vzc2lvbikpO1xuXG4gICAgLy8gY29sbGVjdCBBbm5vdGF0aW9ucyBpbnRvIE1hbmlmZXN0XG4gICAgY29uc3QgYW5ub3RhdGlvbnMgPSB0aGlzLnN0YWNrLm5vZGVcbiAgICAgIC5maW5kQWxsKClcbiAgICAgIC5tYXAoKG5vZGUpID0+ICh7XG4gICAgICAgIG5vZGUsXG4gICAgICAgIG1ldGFkYXRhczogbm9kZS5ub2RlLm1ldGFkYXRhLmZpbHRlcihpc0Fubm90YXRpb25NZXRhZGF0YSksXG4gICAgICB9KSlcbiAgICAgIC5tYXA8U3RhY2tBbm5vdGF0aW9uW10+KCh7IG5vZGUsIG1ldGFkYXRhcyB9KSA9PlxuICAgICAgICBtZXRhZGF0YXMubWFwKChtZXRhZGF0YSkgPT4gKHtcbiAgICAgICAgICBjb25zdHJ1Y3RQYXRoOiBub2RlLm5vZGUucGF0aCxcbiAgICAgICAgICBsZXZlbDogbWV0YWRhdGEudHlwZSBhcyBBbm5vdGF0aW9uTWV0YWRhdGFFbnRyeVR5cGUsXG4gICAgICAgICAgbWVzc2FnZTogbWV0YWRhdGEuZGF0YSxcbiAgICAgICAgICBzdGFja3RyYWNlOiBtZXRhZGF0YS50cmFjZSxcbiAgICAgICAgfSkpLFxuICAgICAgKVxuICAgICAgLnJlZHVjZSgobGlzdCwgbWV0YWRhdGFzKSA9PiBbLi4ubGlzdCwgLi4ubWV0YWRhdGFzXSwgW10pOyAvLyBBcnJheS5mbGF0KClcblxuICAgIC8vIGl0IGlzIHJlYWRvbmx5IGJ1dCB0aGlzIGlzIHRoZSBwbGFjZSB3aGVyZSB3ZSBhcmUgYWxsb3dlZCB0byB3cml0ZSB0byBpdFxuICAgIChzdGFja01hbmlmZXN0LmFubm90YXRpb25zIGFzIGFueSkgPSBhbm5vdGF0aW9ucztcblxuICAgIC8vIGFib3J0IGlmIG9uZSBvciBtb3JlIGVycm9yIGFubm90YXRpb25zIGhhdmUgYmVlbiBlbmNvdW50ZXJlZFxuICAgIGlmIChcbiAgICAgICF0aGlzLmNvbnRpbnVlT25FcnJvckFubm90YXRpb25zICYmXG4gICAgICBhbm5vdGF0aW9ucy5zb21lKGlzRXJyb3JBbm5vdGF0aW9uKVxuICAgICkge1xuICAgICAgdGhyb3cgZW5jb3VudGVyZWRBbm5vdGF0aW9uV2l0aExldmVsRXJyb3IoXG4gICAgICAgIGFubm90YXRpb25zXG4gICAgICAgICAgLmZpbHRlcihpc0Vycm9yQW5ub3RhdGlvbilcbiAgICAgICAgICAubWFwKChhKSA9PiBgWyR7YS5jb25zdHJ1Y3RQYXRofV0gJHthLm1lc3NhZ2V9YClcbiAgICAgICAgICAuam9pbihcIlxcblwiKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaGNsT3V0cHV0KSB7XG4gICAgICBjb25zdCBoY2wgPSB0aGlzLnN0YWNrLnRvSGNsVGVycmFmb3JtKCk7XG4gICAgICBmcy53cml0ZUZpbGVTeW5jKFxuICAgICAgICBwYXRoLmpvaW4oc2Vzc2lvbi5vdXRkaXIsIHN0YWNrTWFuaWZlc3Quc3ludGhlc2l6ZWRTdGFja1BhdGgpLFxuICAgICAgICBoY2wuaGNsLFxuICAgICAgKTtcblxuICAgICAgZnMud3JpdGVGaWxlU3luYyhcbiAgICAgICAgcGF0aC5qb2luKHNlc3Npb24ub3V0ZGlyLCBzdGFja01hbmlmZXN0LnN0YWNrTWV0YWRhdGFQYXRoISksXG4gICAgICAgIHN0cmluZ2lmeShoY2wubWV0YWRhdGEsIG51bGwsIDIpIGFzIHN0cmluZyxcbiAgICAgICk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBqc29uVGZDb25maWcgPSB0aGlzLnN0YWNrLnRvVGVycmFmb3JtKCk7XG5cbiAgICBmcy53cml0ZUZpbGVTeW5jKFxuICAgICAgcGF0aC5qb2luKHNlc3Npb24ub3V0ZGlyLCBzdGFja01hbmlmZXN0LnN5bnRoZXNpemVkU3RhY2tQYXRoKSxcbiAgICAgIHN0cmluZ2lmeShqc29uVGZDb25maWcsIG51bGwsIDIpIGFzIHN0cmluZyxcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogSW52b2tlIGFzcGVjdHMgb24gdGhlIGdpdmVuIGNvbnN0cnVjdCB0cmVlLlxuICpcbiAqIG9yaWdpbmFsbHkgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi9kY2FlM2VlYWQwZGJmOWFjYjFlZDgwYmE5NWJiMTA0YzY0Y2IxYmQ3L3BhY2thZ2VzL0Bhd3MtY2RrL2NvcmUvbGliL3ByaXZhdGUvc3ludGhlc2lzLnRzI0w5OS1MMTM3XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbnZva2VBc3BlY3RzKHJvb3Q6IElDb25zdHJ1Y3QpIHtcbiAgY29uc3QgaW52b2tlZEJ5UGF0aDogeyBbbm9kZVBhdGg6IHN0cmluZ106IElBc3BlY3RbXSB9ID0ge307XG5cbiAgbGV0IG5lc3RlZEFzcGVjdFdhcm5pbmcgPSBmYWxzZTtcbiAgcmVjdXJzZShyb290LCBbXSk7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbiAgZnVuY3Rpb24gcmVjdXJzZShjb25zdHJ1Y3Q6IElDb25zdHJ1Y3QsIGluaGVyaXRlZEFzcGVjdHM6IElBc3BlY3RbXSkge1xuICAgIGNvbnN0IG5vZGUgPSBjb25zdHJ1Y3Qubm9kZTtcbiAgICBjb25zdCBhc3BlY3RzID0gQXNwZWN0cy5vZihjb25zdHJ1Y3QpO1xuICAgIGNvbnN0IGFsbEFzcGVjdHNIZXJlID0gWy4uLihpbmhlcml0ZWRBc3BlY3RzID8/IFtdKSwgLi4uYXNwZWN0cy5hbGxdO1xuICAgIGNvbnN0IG5vZGVBc3BlY3RzQ291bnQgPSBhc3BlY3RzLmFsbC5sZW5ndGg7XG4gICAgZm9yIChjb25zdCBhc3BlY3Qgb2YgYWxsQXNwZWN0c0hlcmUpIHtcbiAgICAgIGxldCBpbnZva2VkID0gaW52b2tlZEJ5UGF0aFtub2RlLnBhdGhdO1xuICAgICAgaWYgKCFpbnZva2VkKSB7XG4gICAgICAgIGludm9rZWQgPSBpbnZva2VkQnlQYXRoW25vZGUucGF0aF0gPSBbXTtcbiAgICAgIH1cblxuICAgICAgaWYgKGludm9rZWQuaW5jbHVkZXMoYXNwZWN0KSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgYXNwZWN0LnZpc2l0KGNvbnN0cnVjdCk7XG5cbiAgICAgIC8vIGlmIGFuIGFzcGVjdCB3YXMgYWRkZWQgdG8gdGhlIG5vZGUgd2hpbGUgaW52b2tpbmcgYW5vdGhlciBhc3BlY3QgaXQgd2lsbCBub3QgYmUgaW52b2tlZCwgZW1pdCBhIHdhcm5pbmdcbiAgICAgIC8vIHRoZSBgbmVzdGVkQXNwZWN0V2FybmluZ2AgZmxhZyBpcyB1c2VkIHRvIHByZXZlbnQgdGhlIHdhcm5pbmcgZnJvbSBiZWluZyBlbWl0dGVkIGZvciBldmVyeSBjaGlsZFxuICAgICAgaWYgKCFuZXN0ZWRBc3BlY3RXYXJuaW5nICYmIG5vZGVBc3BlY3RzQ291bnQgIT09IGFzcGVjdHMuYWxsLmxlbmd0aCkge1xuICAgICAgICBBbm5vdGF0aW9ucy5vZihjb25zdHJ1Y3QpLmFkZFdhcm5pbmcoXG4gICAgICAgICAgXCJXZSBkZXRlY3RlZCBhbiBBc3BlY3Qgd2FzIGFkZGVkIHZpYSBhbm90aGVyIEFzcGVjdCwgYW5kIHdpbGwgbm90IGJlIGFwcGxpZWRcIixcbiAgICAgICAgKTtcbiAgICAgICAgbmVzdGVkQXNwZWN0V2FybmluZyA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIC8vIG1hcmsgYXMgaW52b2tlZCBmb3IgdGhpcyBub2RlXG4gICAgICBpbnZva2VkLnB1c2goYXNwZWN0KTtcbiAgICB9XG5cbiAgICBmb3IgKGNvbnN0IGNoaWxkIG9mIGNvbnN0cnVjdC5ub2RlLmNoaWxkcmVuKSB7XG4gICAgICByZWN1cnNlKGNoaWxkLCBhbGxBc3BlY3RzSGVyZSk7XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGFubm90YXRpb25NZXRhZGF0YUVudHJ5VHlwZXMgPSBbXG4gIEFubm90YXRpb25NZXRhZGF0YUVudHJ5VHlwZS5JTkZPLFxuICBBbm5vdGF0aW9uTWV0YWRhdGFFbnRyeVR5cGUuV0FSTixcbiAgQW5ub3RhdGlvbk1ldGFkYXRhRW50cnlUeXBlLkVSUk9SLFxuXSBhcyBzdHJpbmdbXTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmZ1bmN0aW9uIGlzQW5ub3RhdGlvbk1ldGFkYXRhKG1ldGFkYXRhOiBNZXRhZGF0YUVudHJ5KTogYm9vbGVhbiB7XG4gIHJldHVybiBhbm5vdGF0aW9uTWV0YWRhdGFFbnRyeVR5cGVzLmluY2x1ZGVzKG1ldGFkYXRhLnR5cGUpO1xufVxuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZnVuY3Rpb24gaXNFcnJvckFubm90YXRpb24oYW5ub3RhdGlvbjogU3RhY2tBbm5vdGF0aW9uKTogYm9vbGVhbiB7XG4gIHJldHVybiBhbm5vdGF0aW9uLmxldmVsID09PSBBbm5vdGF0aW9uTWV0YWRhdGFFbnRyeVR5cGUuRVJST1I7XG59XG5cbi8vIG9yaWdpbmFsbHkgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvYmxvYi9kY2FlM2VlYWQwZGJmOWFjYjFlZDgwYmE5NWJiMTA0YzY0Y2IxYmQ3L3BhY2thZ2VzLyU0MGF3cy1jZGsvY29yZS9saWIvcHJpdmF0ZS9zeW50aGVzaXMudHMjTDUyXG5jb25zdCBDVVNUT01fU1lOVEhFU0lTX1NZTSA9IFN5bWJvbC5mb3IoXCJjZGt0Zi9jdXN0b21TeW50aGVzaXNcIik7XG5cbi8qKlxuICogSW50ZXJmYWNlIGZvciBjb25zdHJ1Y3RzIHRoYXQgd2FudCB0byBkbyBzb21ldGhpbmcgY3VzdG9tIGR1cmluZyBzeW50aGVzaXNcbiAqXG4gKiBUaGlzIGZlYXR1cmUgaXMgaW50ZW5kZWQgZm9yIHVzZSBieSB0aGUgQ0RLVE4gb25seTsgM3JkIHBhcnR5XG4gKiBsaWJyYXJ5IGF1dGhvcnMgYW5kIENESyB1c2VycyBzaG91bGQgbm90IHVzZSB0aGlzIGZ1bmN0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElDdXN0b21TeW50aGVzaXMge1xuICAvKipcbiAgICogQ2FsbGVkIHdoZW4gdGhlIGNvbnN0cnVjdCBpcyBzeW50aGVzaXplZFxuICAgKi9cbiAgb25TeW50aGVzaXplKHNlc3Npb246IElTeW50aGVzaXNTZXNzaW9uKTogdm9pZDtcbn1cblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmV4cG9ydCBmdW5jdGlvbiBhZGRDdXN0b21TeW50aGVzaXMoXG4gIGNvbnN0cnVjdDogSUNvbnN0cnVjdCxcbiAgc3ludGhlc2lzOiBJQ3VzdG9tU3ludGhlc2lzLFxuKTogdm9pZCB7XG4gIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShjb25zdHJ1Y3QsIENVU1RPTV9TWU5USEVTSVNfU1lNLCB7XG4gICAgdmFsdWU6IHN5bnRoZXNpcyxcbiAgICBlbnVtZXJhYmxlOiBmYWxzZSxcbiAgfSk7XG59XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5mdW5jdGlvbiBnZXRDdXN0b21TeW50aGVzaXMoXG4gIGNvbnN0cnVjdDogSUNvbnN0cnVjdCxcbik6IElDdXN0b21TeW50aGVzaXMgfCB1bmRlZmluZWQge1xuICByZXR1cm4gKGNvbnN0cnVjdCBhcyBhbnkpW0NVU1RPTV9TWU5USEVTSVNfU1lNXTtcbn1cbiJdfQ==
|
package/lib/terraform-asset.d.ts
CHANGED
|
@@ -1,18 +1,32 @@
|
|
|
1
1
|
import { Construct } from "constructs";
|
|
2
|
+
import { AssetHashType, IAsset } from "./assets";
|
|
2
3
|
export interface TerraformAssetConfig {
|
|
3
4
|
readonly path: string;
|
|
4
5
|
readonly type?: AssetType;
|
|
5
6
|
readonly assetHash?: string;
|
|
7
|
+
/**
|
|
8
|
+
* How the `assetHash` is derived.
|
|
9
|
+
*
|
|
10
|
+
* `SOURCE` (the default) hashes the source path. `CUSTOM` uses the
|
|
11
|
+
* `assetHash` value verbatim and requires it to be set. `OUTPUT` is not
|
|
12
|
+
* supported yet — there is no bundling step to produce an output to hash —
|
|
13
|
+
* and throws if requested.
|
|
14
|
+
*
|
|
15
|
+
* If `assetHash` is set, this must be `undefined` or `AssetHashType.CUSTOM`.
|
|
16
|
+
*
|
|
17
|
+
* @default AssetHashType.SOURCE
|
|
18
|
+
*/
|
|
19
|
+
readonly assetHashType?: AssetHashType;
|
|
6
20
|
}
|
|
7
21
|
export declare enum AssetType {
|
|
8
22
|
FILE = 0,
|
|
9
23
|
DIRECTORY = 1,
|
|
10
24
|
ARCHIVE = 2
|
|
11
25
|
}
|
|
12
|
-
export declare class TerraformAsset extends Construct {
|
|
26
|
+
export declare class TerraformAsset extends Construct implements IAsset {
|
|
13
27
|
private stack;
|
|
14
28
|
private sourcePath;
|
|
15
|
-
assetHash: string;
|
|
29
|
+
readonly assetHash: string;
|
|
16
30
|
type: AssetType;
|
|
17
31
|
/**
|
|
18
32
|
* A Terraform Asset takes a file or directory outside of the CDK Terrain context and moves it into it.
|
|
@@ -22,7 +36,24 @@ export declare class TerraformAsset extends Construct {
|
|
|
22
36
|
* @param config
|
|
23
37
|
*/
|
|
24
38
|
constructor(scope: Construct, id: string, config: TerraformAssetConfig);
|
|
39
|
+
/**
|
|
40
|
+
* Resolve the asset hash from `assetHash` and `assetHashType`.
|
|
41
|
+
*
|
|
42
|
+
* Honors the same contract `AssetOptions` documents: an explicit
|
|
43
|
+
* `assetHash` means the type is `CUSTOM`, `CUSTOM` requires a hash, and
|
|
44
|
+
* `OUTPUT` is rejected because there is no bundling step to hash yet.
|
|
45
|
+
* `SOURCE` (the default) hashes the source path as before.
|
|
46
|
+
* @param id - construct id, for error messages
|
|
47
|
+
* @param config - the asset configuration
|
|
48
|
+
*/
|
|
49
|
+
private resolveAssetHash;
|
|
25
50
|
private get namedFolder();
|
|
51
|
+
/**
|
|
52
|
+
* How this asset is written to disk. The layout (directory vs single file)
|
|
53
|
+
* and the artifact name are derived from this rather than from `type`
|
|
54
|
+
* directly, so the two never disagree.
|
|
55
|
+
*/
|
|
56
|
+
private get packaging();
|
|
26
57
|
/**
|
|
27
58
|
* The path relative to the root of the terraform directory in posix format
|
|
28
59
|
* Use this property to reference the asset
|
package/lib/terraform-asset.js
CHANGED
|
@@ -1,13 +1,46 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
3
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
36
|
exports.TerraformAsset = exports.AssetType = void 0;
|
|
5
37
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
38
|
// Copyright (c) HashiCorp, Inc
|
|
7
39
|
// SPDX-License-Identifier: MPL-2.0
|
|
8
40
|
const constructs_1 = require("constructs");
|
|
9
|
-
const fs = require("fs");
|
|
10
|
-
const path = require("path");
|
|
41
|
+
const fs = __importStar(require("fs"));
|
|
42
|
+
const path = __importStar(require("path"));
|
|
43
|
+
const assets_1 = require("./assets");
|
|
11
44
|
const fs_1 = require("./private/fs");
|
|
12
45
|
const features_1 = require("./features");
|
|
13
46
|
const synthesizer_1 = require("./synthesize/synthesizer");
|
|
@@ -19,10 +52,30 @@ var AssetType;
|
|
|
19
52
|
AssetType[AssetType["DIRECTORY"] = 1] = "DIRECTORY";
|
|
20
53
|
AssetType[AssetType["ARCHIVE"] = 2] = "ARCHIVE";
|
|
21
54
|
})(AssetType || (exports.AssetType = AssetType = {}));
|
|
22
|
-
|
|
55
|
+
// Base name for a packaged (non-directory, non-verbatim-file) artifact. The
|
|
56
|
+
// packaging's `extension` is appended, so a zip stays `archive.zip` and a
|
|
57
|
+
// future `tar.bz2` packaging would be `archive.tar.bz2` with no change here.
|
|
58
|
+
const ARCHIVE_BASENAME = "archive";
|
|
23
59
|
const ASSETS_DIRECTORY = "assets";
|
|
60
|
+
/**
|
|
61
|
+
* How each `AssetType` is actually written to disk at synthesis time.
|
|
62
|
+
* Internal wiring only: swapping this map's values is how a future format
|
|
63
|
+
* would be added, without any change to the public `AssetType` surface.
|
|
64
|
+
*/
|
|
65
|
+
const PACKAGING_BY_TYPE = {
|
|
66
|
+
[AssetType.FILE]: assets_1.AssetPackaging.FILE,
|
|
67
|
+
[AssetType.DIRECTORY]: assets_1.AssetPackaging.DIRECTORY,
|
|
68
|
+
[AssetType.ARCHIVE]: assets_1.AssetPackaging.ZIP,
|
|
69
|
+
};
|
|
24
70
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
25
71
|
class TerraformAsset extends constructs_1.Construct {
|
|
72
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdktn.TerraformAsset", version: "0.25.0-pre.21" };
|
|
73
|
+
stack;
|
|
74
|
+
sourcePath;
|
|
75
|
+
// hash value of the asset that can be passed to consuming constructs (e.g. to not recreate a lambda function in case the underlying files did not change)
|
|
76
|
+
assetHash;
|
|
77
|
+
// file type of the asset, either AssetType.FILE, AssetType.DIRECTORY, AssetType.ARCHIVE
|
|
78
|
+
type;
|
|
26
79
|
/**
|
|
27
80
|
* A Terraform Asset takes a file or directory outside of the CDK Terrain context and moves it into it.
|
|
28
81
|
* Assets copy referenced files into the stacks context for further usage in other resources.
|
|
@@ -51,12 +104,7 @@ class TerraformAsset extends constructs_1.Construct {
|
|
|
51
104
|
const stat = fs.statSync(this.sourcePath);
|
|
52
105
|
const inferredType = stat.isFile() ? AssetType.FILE : AssetType.DIRECTORY;
|
|
53
106
|
this.type = config.type ?? inferredType;
|
|
54
|
-
this.assetHash =
|
|
55
|
-
config.assetHash ||
|
|
56
|
-
(0, fs_1.hashPath)(this.sourcePath, {
|
|
57
|
-
canonical: !!this.node.tryGetContext(features_1.CANONICAL_ASSET_HASHES),
|
|
58
|
-
archive: this.type === AssetType.ARCHIVE,
|
|
59
|
-
});
|
|
107
|
+
this.assetHash = this.resolveAssetHash(id, config);
|
|
60
108
|
if (stat.isFile() && this.type !== AssetType.FILE) {
|
|
61
109
|
throw (0, errors_1.assetExpectsDirectory)(id, config.path);
|
|
62
110
|
}
|
|
@@ -67,9 +115,56 @@ class TerraformAsset extends constructs_1.Construct {
|
|
|
67
115
|
onSynthesize: this._onSynthesize.bind(this),
|
|
68
116
|
});
|
|
69
117
|
}
|
|
118
|
+
/**
|
|
119
|
+
* Resolve the asset hash from `assetHash` and `assetHashType`.
|
|
120
|
+
*
|
|
121
|
+
* Honors the same contract `AssetOptions` documents: an explicit
|
|
122
|
+
* `assetHash` means the type is `CUSTOM`, `CUSTOM` requires a hash, and
|
|
123
|
+
* `OUTPUT` is rejected because there is no bundling step to hash yet.
|
|
124
|
+
* `SOURCE` (the default) hashes the source path as before.
|
|
125
|
+
* @param id - construct id, for error messages
|
|
126
|
+
* @param config - the asset configuration
|
|
127
|
+
*/
|
|
128
|
+
resolveAssetHash(id, config) {
|
|
129
|
+
const { assetHash, assetHashType } = config;
|
|
130
|
+
if (assetHash !== undefined) {
|
|
131
|
+
if (assetHashType !== undefined &&
|
|
132
|
+
assetHashType !== assets_1.AssetHashType.CUSTOM) {
|
|
133
|
+
throw (0, errors_1.assetHashConflictingHashType)(id);
|
|
134
|
+
}
|
|
135
|
+
return assetHash;
|
|
136
|
+
}
|
|
137
|
+
switch (assetHashType) {
|
|
138
|
+
case assets_1.AssetHashType.CUSTOM:
|
|
139
|
+
throw (0, errors_1.assetHashTypeCustomRequiresHash)(id);
|
|
140
|
+
case assets_1.AssetHashType.OUTPUT:
|
|
141
|
+
throw (0, errors_1.assetHashTypeOutputNotSupported)(id);
|
|
142
|
+
case assets_1.AssetHashType.SOURCE:
|
|
143
|
+
case undefined:
|
|
144
|
+
return (0, fs_1.hashPath)(this.sourcePath, {
|
|
145
|
+
canonical: !!this.node.tryGetContext(features_1.CANONICAL_ASSET_HASHES),
|
|
146
|
+
archive: this.type === AssetType.ARCHIVE,
|
|
147
|
+
});
|
|
148
|
+
default:
|
|
149
|
+
// Out-of-range value from a non-TypeScript caller.
|
|
150
|
+
throw (0, errors_1.assetHashTypeUnknown)(id, assetHashType);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
70
153
|
get namedFolder() {
|
|
71
154
|
return path.posix.join(ASSETS_DIRECTORY, this.stack.getLogicalId(this.node));
|
|
72
155
|
}
|
|
156
|
+
/**
|
|
157
|
+
* How this asset is written to disk. The layout (directory vs single file)
|
|
158
|
+
* and the artifact name are derived from this rather than from `type`
|
|
159
|
+
* directly, so the two never disagree.
|
|
160
|
+
*/
|
|
161
|
+
get packaging() {
|
|
162
|
+
const packaging = PACKAGING_BY_TYPE[this.type];
|
|
163
|
+
if (!packaging) {
|
|
164
|
+
throw (0, errors_1.assetTypeNotImplemented)();
|
|
165
|
+
}
|
|
166
|
+
return packaging;
|
|
167
|
+
}
|
|
73
168
|
/**
|
|
74
169
|
* The path relative to the root of the terraform directory in posix format
|
|
75
170
|
* Use this property to reference the asset
|
|
@@ -77,18 +172,20 @@ class TerraformAsset extends constructs_1.Construct {
|
|
|
77
172
|
get path() {
|
|
78
173
|
return path.posix.join(this.namedFolder, // readable name
|
|
79
174
|
this.assetHash, // hash depending on content so that path changes if content changes
|
|
80
|
-
|
|
175
|
+
// A directory-producing packaging has no file segment; anything else
|
|
176
|
+
// contributes its artifact name.
|
|
177
|
+
this.packaging.producesDirectory ? "" : this.fileName);
|
|
81
178
|
}
|
|
82
179
|
/**
|
|
83
180
|
* Name of the asset
|
|
84
181
|
*/
|
|
85
182
|
get fileName() {
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
183
|
+
const { extension } = this.packaging;
|
|
184
|
+
// Repackaged artifacts (extension set) get a stable base + extension;
|
|
185
|
+
// verbatim copies keep the source name.
|
|
186
|
+
return extension
|
|
187
|
+
? `${ARCHIVE_BASENAME}${extension}`
|
|
188
|
+
: path.basename(this.sourcePath);
|
|
92
189
|
}
|
|
93
190
|
_onSynthesize(session) {
|
|
94
191
|
const stackManifest = session.manifest.forStack(this.stack);
|
|
@@ -99,28 +196,15 @@ class TerraformAsset extends constructs_1.Construct {
|
|
|
99
196
|
fs.rmSync(previousVersionsFolder, { recursive: true });
|
|
100
197
|
}
|
|
101
198
|
const targetPath = path.join(basePath, this.path);
|
|
102
|
-
|
|
199
|
+
const packaging = this.packaging;
|
|
200
|
+
if (packaging.producesDirectory) {
|
|
103
201
|
fs.mkdirSync(targetPath, { recursive: true });
|
|
104
202
|
}
|
|
105
203
|
else {
|
|
106
204
|
fs.mkdirSync(path.dirname(targetPath), { recursive: true });
|
|
107
205
|
}
|
|
108
|
-
|
|
109
|
-
case AssetType.FILE:
|
|
110
|
-
fs.copyFileSync(this.sourcePath, targetPath);
|
|
111
|
-
break;
|
|
112
|
-
case AssetType.DIRECTORY:
|
|
113
|
-
(0, fs_1.copySync)(this.sourcePath, targetPath);
|
|
114
|
-
break;
|
|
115
|
-
case AssetType.ARCHIVE:
|
|
116
|
-
(0, fs_1.archiveSync)(this.sourcePath, targetPath);
|
|
117
|
-
break;
|
|
118
|
-
default:
|
|
119
|
-
throw (0, errors_1.assetTypeNotImplemented)();
|
|
120
|
-
}
|
|
206
|
+
packaging.pack({ source: this.sourcePath, target: targetPath });
|
|
121
207
|
}
|
|
122
208
|
}
|
|
123
209
|
exports.TerraformAsset = TerraformAsset;
|
|
124
|
-
_a = JSII_RTTI_SYMBOL_1;
|
|
125
|
-
TerraformAsset[_a] = { fqn: "cdktn.TerraformAsset", version: "0.25.0-pre.2" };
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVycmFmb3JtLWFzc2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RlcnJhZm9ybS1hc3NldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsMkNBQXVDO0FBQ3ZDLHlCQUF5QjtBQUN6Qiw2QkFBNkI7QUFDN0IscUNBS3NCO0FBQ3RCLHlDQUFvRDtBQUVwRCwwREFBOEQ7QUFDOUQsdURBQW1EO0FBQ25ELHFDQUlrQjtBQVdsQixJQUFZLFNBSVg7QUFKRCxXQUFZLFNBQVM7SUFDbkIseUNBQUksQ0FBQTtJQUNKLG1EQUFTLENBQUE7SUFDVCwrQ0FBTyxDQUFBO0FBQ1QsQ0FBQyxFQUpXLFNBQVMseUJBQVQsU0FBUyxRQUlwQjtBQUVELE1BQU0sWUFBWSxHQUFHLGFBQWEsQ0FBQztBQUNuQyxNQUFNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQztBQUVsQywrQ0FBK0M7QUFDL0MsTUFBYSxjQUFlLFNBQVEsc0JBQVM7SUFRM0M7Ozs7OztPQU1HO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxNQUE0QjtRQUNwRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxLQUFLLEdBQUcsZ0NBQWMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFckMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxVQUFVLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztRQUNoQyxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sYUFBYSxHQUNqQixLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUM7Z0JBQ3pDLElBQUEscUJBQWdCLEVBQUMsWUFBWSxDQUFDLENBQUM7WUFDakMsSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDbEIsMEhBQTBIO2dC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QUFVLEVBQUUsVUFBVSxDQUFDLENBQUM7Z0JBQ3RDLE1BQU07WUFFUixLQUFLLFNBQVMsQ0FBQyxPQUFPO2dCQUNwQixJQUFBLGdCQUFXLEVBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztnQkFDekMsTUFBTTtZQUNSO2dCQUNFLE1BQU0sSUFBQSxnQ0FBdUIsR0FBRSxDQUFDO1FBQ3BDLENBQUM7SUFDSCxDQUFDOztBQWpJSCx3Q0FrSUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCAqIGFzIGZzIGZyb20gXCJmc1wiO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IHtcbiAgY29weVN5bmMsXG4gIGFyY2hpdmVTeW5jLFxuICBoYXNoUGF0aCxcbiAgZmluZEZpbGVBYm92ZUN3ZCxcbn0gZnJvbSBcIi4vcHJpdmF0ZS9mc1wiO1xuaW1wb3J0IHsgQ0FOT05JQ0FMX0FTU0VUX0hBU0hFUyB9IGZyb20gXCIuL2ZlYXR1cmVzXCI7XG5pbXBvcnQgeyBJU3ludGhlc2lzU2Vzc2lvbiB9IGZyb20gXCIuL3N5bnRoZXNpemVcIjtcbmltcG9ydCB7IGFkZEN1c3RvbVN5bnRoZXNpcyB9IGZyb20gXCIuL3N5bnRoZXNpemUvc3ludGhlc2l6ZXJcIjtcbmltcG9ydCB7IFRlcnJhZm9ybVN0YWNrIH0gZnJvbSBcIi4vdGVycmFmb3JtLXN0YWNrXCI7XG5pbXBvcnQge1xuICBhc3NldEV4cGVjdHNEaXJlY3RvcnksXG4gIGFzc2V0T3V0T2ZTY29wZU9mQ0RLVEZKc29uLFxuICBhc3NldFR5cGVOb3RJbXBsZW1lbnRlZCxcbn0gZnJvbSBcIi4vZXJyb3JzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVycmFmb3JtQXNzZXRDb25maWcge1xuICAvLyBwYXRoIHRvIHRoZSBmaWxlIG9yIGZvbGRlciBjb25maWd1cmVkLiBJZiByZWxhdGl2ZSwgdGhlIHBhdGggaXMgcmVzb2x2ZWQgZnJvbSB0aGUgbG9jYXRpb24gb2YgY2RrdGYuanNvblxuICByZWFkb25seSBwYXRoOiBzdHJpbmc7XG4gIC8vIGZpbGUgdHlwZSBvZiB0aGUgYXNzZXQsIGVpdGhlciBBc3NldFR5cGUuRklMRSwgQXNzZXRUeXBlLkRJUkVDVE9SWSwgQXNzZXRUeXBlLkFSQ0hJVkVcbiAgcmVhZG9ubHkgdHlwZT86IEFzc2V0VHlwZTtcbiAgLy8gaGFzaCB2YWx1ZSBvZiB0aGUgYXNzZXQsIGlmIHBhc3NlZCB3aWxsIGJlIHVzZWQgYXMgcmV0dXJuZWQgYXNzZXRIYXNoXG4gIHJlYWRvbmx5IGFzc2V0SGFzaD86IHN0cmluZztcbn1cblxuZXhwb3J0IGVudW0gQXNzZXRUeXBlIHtcbiAgRklMRSxcbiAgRElSRUNUT1JZLFxuICBBUkNISVZFLFxufVxuXG5jb25zdCBBUkNISVZFX05BTUUgPSBcImFyY2hpdmUuemlwXCI7XG5jb25zdCBBU1NFVFNfRElSRUNUT1JZID0gXCJhc3NldHNcIjtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGpzZG9jL3JlcXVpcmUtanNkb2NcbmV4cG9ydCBjbGFzcyBUZXJyYWZvcm1Bc3NldCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHByaXZhdGUgc3RhY2s6IFRlcnJhZm9ybVN0YWNrO1xuICBwcml2YXRlIHNvdXJjZVBhdGg6IHN0cmluZztcbiAgLy8gaGFzaCB2YWx1ZSBvZiB0aGUgYXNzZXQgdGhhdCBjYW4gYmUgcGFzc2VkIHRvIGNvbnN1bWluZyBjb25zdHJ1Y3RzIChlLmcuIHRvIG5vdCByZWNyZWF0ZSBhIGxhbWJkYSBmdW5jdGlvbiBpbiBjYXNlIHRoZSB1bmRlcmx5aW5nIGZpbGVzIGRpZCBub3QgY2hhbmdlKVxuICBwdWJsaWMgYXNzZXRIYXNoOiBzdHJpbmc7XG4gIC8vIGZpbGUgdHlwZSBvZiB0aGUgYXNzZXQsIGVpdGhlciBBc3NldFR5cGUuRklMRSwgQXNzZXRUeXBlLkRJUkVDVE9SWSwgQXNzZXRUeXBlLkFSQ0hJVkVcbiAgcHVibGljIHR5cGU6IEFzc2V0VHlwZTtcblxuICAvKipcbiAgICogQSBUZXJyYWZvcm0gQXNzZXQgdGFrZXMgYSBmaWxlIG9yIGRpcmVjdG9yeSBvdXRzaWRlIG9mIHRoZSBDREsgVGVycmFpbiBjb250ZXh0IGFuZCBtb3ZlcyBpdCBpbnRvIGl0LlxuICAgKiBBc3NldHMgY29weSByZWZlcmVuY2VkIGZpbGVzIGludG8gdGhlIHN0YWNrcyBjb250ZXh0IGZvciBmdXJ0aGVyIHVzYWdlIGluIG90aGVyIHJlc291cmNlcy5cbiAgICogQHBhcmFtIHNjb3BlXG4gICAqIEBwYXJhbSBpZFxuICAgKiBAcGFyYW0gY29uZmlnXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBjb25maWc6IFRlcnJhZm9ybUFzc2V0Q29uZmlnKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMuc3RhY2sgPSBUZXJyYWZvcm1TdGFjay5vZih0aGlzKTtcblxuICAgIGlmIChwYXRoLmlzQWJzb2x1dGUoY29uZmlnLnBhdGgpKSB7XG4gICAgICB0aGlzLnNvdXJjZVBhdGggPSBjb25maWcucGF0aDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgY2RrdGZKc29uUGF0aCA9XG4gICAgICAgIHNjb3BlLm5vZGUudHJ5R2V0Q29udGV4dChcImNka3RmSnNvblBhdGhcIikgPz9cbiAgICAgICAgZmluZEZpbGVBYm92ZUN3ZChcImNka3RmLmpzb25cIik7XG4gICAgICBpZiAoY2RrdGZKc29uUGF0aCkge1xuICAgICAgICAvLyBSZWxhdGl2ZSBwYXRocyBhcmUgYWx3YXlzIGNvbnNpZGVyZWQgdG8gYmUgcmVsYXRpdmUgdG8gY2RrdGYuanNvbiwgYnV0IG9wZXJhdGlvbnMgYXJlIHBlcmZvcm1lZCByZWxhdGl2ZSB0byBwcm9jZXNzLmN3ZFxuICAgICAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBwYXRoLnJlc29sdmUoXG4gICAgICAgICAgcGF0aC5kaXJuYW1lKGNka3RmSnNvblBhdGgpLFxuICAgICAgICAgIGNvbmZpZy5wYXRoLFxuICAgICAgICApO1xuICAgICAgICB0aGlzLnNvdXJjZVBhdGggPSBwYXRoLnJlbGF0aXZlKHByb2Nlc3MuY3dkKCksIGFic29sdXRlUGF0aCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBhc3NldE91dE9mU2NvcGVPZkNES1RGSnNvbihpZCwgY29uZmlnLnBhdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHN0YXQgPSBmcy5zdGF0U3luYyh0aGlzLnNvdXJjZVBhdGgpO1xuICAgIGNvbnN0IGluZmVycmVkVHlwZSA9IHN0YXQuaXNGaWxlKCkgPyBBc3NldFR5cGUuRklMRSA6IEFzc2V0VHlwZS5ESVJFQ1RPUlk7XG4gICAgdGhpcy50eXBlID0gY29uZmlnLnR5cGUgPz8gaW5mZXJyZWRUeXBlO1xuICAgIHRoaXMuYXNzZXRIYXNoID1cbiAgICAgIGNvbmZpZy5hc3NldEhhc2ggfHxcbiAgICAgIGhhc2hQYXRoKHRoaXMuc291cmNlUGF0aCwge1xuICAgICAgICBjYW5vbmljYWw6ICEhdGhpcy5ub2RlLnRyeUdldENvbnRleHQoQ0FOT05JQ0FMX0FTU0VUX0hBU0hFUyksXG4gICAgICAgIGFyY2hpdmU6IHRoaXMudHlwZSA9PT0gQXNzZXRUeXBlLkFSQ0hJVkUsXG4gICAgICB9KTtcblxuICAgIGlmIChzdGF0LmlzRmlsZSgpICYmIHRoaXMudHlwZSAhPT0gQXNzZXRUeXBlLkZJTEUpIHtcbiAgICAgIHRocm93IGFzc2V0RXhwZWN0c0RpcmVjdG9yeShpZCwgY29uZmlnLnBhdGgpO1xuICAgIH1cblxuICAgIGlmICghc3RhdC5pc0ZpbGUoKSAmJiB0aGlzLnR5cGUgPT09IEFzc2V0VHlwZS5GSUxFKSB7XG4gICAgICB0aHJvdyBhc3NldEV4cGVjdHNEaXJlY3RvcnkoaWQsIGNvbmZpZy5wYXRoKTtcbiAgICB9XG5cbiAgICBhZGRDdXN0b21TeW50aGVzaXModGhpcywge1xuICAgICAgb25TeW50aGVzaXplOiB0aGlzLl9vblN5bnRoZXNpemUuYmluZCh0aGlzKSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0IG5hbWVkRm9sZGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHBhdGgucG9zaXguam9pbihcbiAgICAgIEFTU0VUU19ESVJFQ1RPUlksXG4gICAgICB0aGlzLnN0YWNrLmdldExvZ2ljYWxJZCh0aGlzLm5vZGUpLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHBhdGggcmVsYXRpdmUgdG8gdGhlIHJvb3Qgb2YgdGhlIHRlcnJhZm9ybSBkaXJlY3RvcnkgaW4gcG9zaXggZm9ybWF0XG4gICAqIFVzZSB0aGlzIHByb3BlcnR5IHRvIHJlZmVyZW5jZSB0aGUgYXNzZXRcbiAgICovXG4gIHB1YmxpYyBnZXQgcGF0aCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBwYXRoLnBvc2l4LmpvaW4oXG4gICAgICB0aGlzLm5hbWVkRm9sZGVyLCAvLyByZWFkYWJsZSBuYW1lXG4gICAgICB0aGlzLmFzc2V0SGFzaCwgLy8gaGFzaCBkZXBlbmRpbmcgb24gY29udGVudCBzbyB0aGF0IHBhdGggY2hhbmdlcyBpZiBjb250ZW50IGNoYW5nZXNcbiAgICAgIHRoaXMudHlwZSA9PT0gQXNzZXRUeXBlLkRJUkVDVE9SWSA/IFwiXCIgOiB0aGlzLmZpbGVOYW1lLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgYXNzZXRcbiAgICovXG4gIHB1YmxpYyBnZXQgZmlsZU5hbWUoKTogc3RyaW5nIHtcbiAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgY2FzZSBBc3NldFR5cGUuQVJDSElWRTpcbiAgICAgICAgcmV0dXJuIEFSQ0hJVkVfTkFNRTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBwYXRoLmJhc2VuYW1lKHRoaXMuc291cmNlUGF0aCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBfb25TeW50aGVzaXplKHNlc3Npb246IElTeW50aGVzaXNTZXNzaW9uKSB7XG4gICAgY29uc3Qgc3RhY2tNYW5pZmVzdCA9IHNlc3Npb24ubWFuaWZlc3QuZm9yU3RhY2sodGhpcy5zdGFjayk7XG4gICAgY29uc3QgYmFzZVBhdGggPSBwYXRoLmpvaW4oXG4gICAgICBzZXNzaW9uLm1hbmlmZXN0Lm91dGRpcixcbiAgICAgIHN0YWNrTWFuaWZlc3Quc3ludGhlc2l6ZWRTdGFja1BhdGgsXG4gICAgICBcIi4uXCIsXG4gICAgKTtcblxuICAgIC8vIENsZWFudXAgZXhpc3RpbmcgYXNzZXRzXG4gICAgY29uc3QgcHJldmlvdXNWZXJzaW9uc0ZvbGRlciA9IHBhdGguam9pbihiYXNlUGF0aCwgdGhpcy5uYW1lZEZvbGRlcik7XG4gICAgaWYgKGZzLmV4aXN0c1N5bmMocHJldmlvdXNWZXJzaW9uc0ZvbGRlcikpIHtcbiAgICAgIGZzLnJtU3luYyhwcmV2aW91c1ZlcnNpb25zRm9sZGVyLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICBjb25zdCB0YXJnZXRQYXRoID0gcGF0aC5qb2luKGJhc2VQYXRoLCB0aGlzLnBhdGgpO1xuXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gQXNzZXRUeXBlLkRJUkVDVE9SWSkge1xuICAgICAgZnMubWtkaXJTeW5jKHRhcmdldFBhdGgsIHsgcmVjdXJzaXZlOiB0cnVlIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBmcy5ta2RpclN5bmMocGF0aC5kaXJuYW1lKHRhcmdldFBhdGgpLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgY2FzZSBBc3NldFR5cGUuRklMRTpcbiAgICAgICAgZnMuY29weUZpbGVTeW5jKHRoaXMuc291cmNlUGF0aCwgdGFyZ2V0UGF0aCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEFzc2V0VHlwZS5ESVJFQ1RPUlk6XG4gICAgICAgIGNvcHlTeW5jKHRoaXMuc291cmNlUGF0aCwgdGFyZ2V0UGF0aCk7XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBjYXNlIEFzc2V0VHlwZS5BUkNISVZFOlxuICAgICAgICBhcmNoaXZlU3luYyh0aGlzLnNvdXJjZVBhdGgsIHRhcmdldFBhdGgpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IGFzc2V0VHlwZU5vdEltcGxlbWVudGVkKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
210
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVycmFmb3JtLWFzc2V0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RlcnJhZm9ybS1hc3NldC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQywyQ0FBdUM7QUFDdkMsdUNBQXlCO0FBQ3pCLDJDQUE2QjtBQUM3QixxQ0FLa0I7QUFDbEIscUNBQTBEO0FBQzFELHlDQUFvRDtBQUVwRCwwREFBOEQ7QUFDOUQsdURBQW1EO0FBQ25ELHFDQVFrQjtBQXdCbEIsSUFBWSxTQUlYO0FBSkQsV0FBWSxTQUFTO0lBQ25CLHlDQUFJLENBQUE7SUFDSixtREFBUyxDQUFBO0lBQ1QsK0NBQU8sQ0FBQTtBQUNULENBQUMsRUFKVyxTQUFTLHlCQUFULFNBQVMsUUFJcEI7QUFFRCw0RUFBNEU7QUFDNUUsMEVBQTBFO0FBQzFFLDZFQUE2RTtBQUM3RSxNQUFNLGdCQUFnQixHQUFHLFNBQVMsQ0FBQztBQUNuQyxNQUFNLGdCQUFnQixHQUFHLFFBQVEsQ0FBQztBQUVsQzs7OztHQUlHO0FBQ0gsTUFBTSxpQkFBaUIsR0FBdUM7SUFDNUQsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsdUJBQWMsQ0FBQyxJQUFJO0lBQ3JDLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFLHVCQUFjLENBQUMsU0FBUztJQUMvQyxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSx1QkFBYyxDQUFDLEdBQUc7Q0FDeEMsQ0FBQztBQUVGLCtDQUErQztBQUMvQyxNQUFhLGNBQWUsU0FBUSxzQkFBUzs7SUFDbkMsS0FBSyxDQUFpQjtJQUN0QixVQUFVLENBQVM7SUFDM0IsMEpBQTBKO0lBQzFJLFNBQVMsQ0FBUztJQUNsQyx3RkFBd0Y7SUFDakYsSUFBSSxDQUFZO0lBRXZCOzs7Ozs7T0FNRztJQUNILFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVB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O1lBQ2hDLEVBQUUsQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDaEQsQ0FBQzthQUFNLENBQUM7WUFDTixFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUM5RCxDQUFDO1FBRUQsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7O0FBdEtILHdDQXVLQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgSGFzaGlDb3JwLCBJbmNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBNUEwtMi4wXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzXCI7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gXCJwYXRoXCI7XG5pbXBvcnQge1xuICBBc3NldFBhY2thZ2luZyxcbiAgQXNzZXRIYXNoVHlwZSxcbiAgSUFzc2V0LFxuICBJQXNzZXRQYWNrYWdpbmcsXG59IGZyb20gXCIuL2Fzc2V0c1wiO1xuaW1wb3J0IHsgaGFzaFBhdGgsIGZpbmRGaWxlQWJvdmVDd2QgfSBmcm9tIFwiLi9wcml2YXRlL2ZzXCI7XG5pbXBvcnQgeyBDQU5PTklDQUxfQVNTRVRfSEFTSEVTIH0gZnJvbSBcIi4vZmVhdHVyZXNcIjtcbmltcG9ydCB7IElTeW50aGVzaXNTZXNzaW9uIH0gZnJvbSBcIi4vc3ludGhlc2l6ZVwiO1xuaW1wb3J0IHsgYWRkQ3VzdG9tU3ludGhlc2lzIH0gZnJvbSBcIi4vc3ludGhlc2l6ZS9zeW50aGVzaXplclwiO1xuaW1wb3J0IHsgVGVycmFmb3JtU3RhY2sgfSBmcm9tIFwiLi90ZXJyYWZvcm0tc3RhY2tcIjtcbmltcG9ydCB7XG4gIGFzc2V0RXhwZWN0c0RpcmVjdG9yeSxcbiAgYXNzZXRPdXRPZlNjb3BlT2ZDREtURkpzb24sXG4gIGFzc2V0VHlwZU5vdEltcGxlbWVudGVkLFxuICBhc3NldEhhc2hUeXBlT3V0cHV0Tm90U3VwcG9ydGVkLFxuICBhc3NldEhhc2hUeXBlQ3VzdG9tUmVxdWlyZXNIYXNoLFxuICBhc3NldEhhc2hDb25mbGljdGluZ0hhc2hUeXBlLFxuICBhc3NldEhhc2hUeXBlVW5rbm93bixcbn0gZnJvbSBcIi4vZXJyb3JzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGVycmFmb3JtQXNzZXRDb25maWcge1xuICAvLyBwYXRoIHRvIHRoZSBmaWxlIG9yIGZvbGRlciBjb25maWd1cmVkLiBJZiByZWxhdGl2ZSwgdGhlIHBhdGggaXMgcmVzb2x2ZWQgZnJvbSB0aGUgbG9jYXRpb24gb2YgY2RrdGYuanNvblxuICByZWFkb25seSBwYXRoOiBzdHJpbmc7XG4gIC8vIGZpbGUgdHlwZSBvZiB0aGUgYXNzZXQsIGVpdGhlciBBc3NldFR5cGUuRklMRSwgQXNzZXRUeXBlLkRJUkVDVE9SWSwgQXNzZXRUeXBlLkFSQ0hJVkVcbiAgcmVhZG9ubHkgdHlwZT86IEFzc2V0VHlwZTtcbiAgLy8gaGFzaCB2YWx1ZSBvZiB0aGUgYXNzZXQsIGlmIHBhc3NlZCB3aWxsIGJlIHVzZWQgYXMgcmV0dXJuZWQgYXNzZXRIYXNoXG4gIHJlYWRvbmx5IGFzc2V0SGFzaD86IHN0cmluZztcbiAgLyoqXG4gICAqIEhvdyB0aGUgYGFzc2V0SGFzaGAgaXMgZGVyaXZlZC5cbiAgICpcbiAgICogYFNPVVJDRWAgKHRoZSBkZWZhdWx0KSBoYXNoZXMgdGhlIHNvdXJjZSBwYXRoLiBgQ1VTVE9NYCB1c2VzIHRoZVxuICAgKiBgYXNzZXRIYXNoYCB2YWx1ZSB2ZXJiYXRpbSBhbmQgcmVxdWlyZXMgaXQgdG8gYmUgc2V0LiBgT1VUUFVUYCBpcyBub3RcbiAgICogc3VwcG9ydGVkIHlldCDigJQgdGhlcmUgaXMgbm8gYnVuZGxpbmcgc3RlcCB0byBwcm9kdWNlIGFuIG91dHB1dCB0byBoYXNoIOKAlFxuICAgKiBhbmQgdGhyb3dzIGlmIHJlcXVlc3RlZC5cbiAgICpcbiAgICogSWYgYGFzc2V0SGFzaGAgaXMgc2V0LCB0aGlzIG11c3QgYmUgYHVuZGVmaW5lZGAgb3IgYEFzc2V0SGFzaFR5cGUuQ1VTVE9NYC5cbiAgICpcbiAgICogQGRlZmF1bHQgQXNzZXRIYXNoVHlwZS5TT1VSQ0VcbiAgICovXG4gIHJlYWRvbmx5IGFzc2V0SGFzaFR5cGU/OiBBc3NldEhhc2hUeXBlO1xufVxuXG5leHBvcnQgZW51bSBBc3NldFR5cGUge1xuICBGSUxFLFxuICBESVJFQ1RPUlksXG4gIEFSQ0hJVkUsXG59XG5cbi8vIEJhc2UgbmFtZSBmb3IgYSBwYWNrYWdlZCAobm9uLWRpcmVjdG9yeSwgbm9uLXZlcmJhdGltLWZpbGUpIGFydGlmYWN0LiBUaGVcbi8vIHBhY2thZ2luZydzIGBleHRlbnNpb25gIGlzIGFwcGVuZGVkLCBzbyBhIHppcCBzdGF5cyBgYXJjaGl2ZS56aXBgIGFuZCBhXG4vLyBmdXR1cmUgYHRhci5iejJgIHBhY2thZ2luZyB3b3VsZCBiZSBgYXJjaGl2ZS50YXIuYnoyYCB3aXRoIG5vIGNoYW5nZSBoZXJlLlxuY29uc3QgQVJDSElWRV9CQVNFTkFNRSA9IFwiYXJjaGl2ZVwiO1xuY29uc3QgQVNTRVRTX0RJUkVDVE9SWSA9IFwiYXNzZXRzXCI7XG5cbi8qKlxuICogSG93IGVhY2ggYEFzc2V0VHlwZWAgaXMgYWN0dWFsbHkgd3JpdHRlbiB0byBkaXNrIGF0IHN5bnRoZXNpcyB0aW1lLlxuICogSW50ZXJuYWwgd2lyaW5nIG9ubHk6IHN3YXBwaW5nIHRoaXMgbWFwJ3MgdmFsdWVzIGlzIGhvdyBhIGZ1dHVyZSBmb3JtYXRcbiAqIHdvdWxkIGJlIGFkZGVkLCB3aXRob3V0IGFueSBjaGFuZ2UgdG8gdGhlIHB1YmxpYyBgQXNzZXRUeXBlYCBzdXJmYWNlLlxuICovXG5jb25zdCBQQUNLQUdJTkdfQllfVFlQRTogUmVjb3JkPEFzc2V0VHlwZSwgSUFzc2V0UGFja2FnaW5nPiA9IHtcbiAgW0Fzc2V0VHlwZS5GSUxFXTogQXNzZXRQYWNrYWdpbmcuRklMRSxcbiAgW0Fzc2V0VHlwZS5ESVJFQ1RPUlldOiBBc3NldFBhY2thZ2luZy5ESVJFQ1RPUlksXG4gIFtBc3NldFR5cGUuQVJDSElWRV06IEFzc2V0UGFja2FnaW5nLlpJUCxcbn07XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBqc2RvYy9yZXF1aXJlLWpzZG9jXG5leHBvcnQgY2xhc3MgVGVycmFmb3JtQXNzZXQgZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJQXNzZXQge1xuICBwcml2YXRlIHN0YWNrOiBUZXJyYWZvcm1TdGFjaztcbiAgcHJpdmF0ZSBzb3VyY2VQYXRoOiBzdHJpbmc7XG4gIC8vIGhhc2ggdmFsdWUgb2YgdGhlIGFzc2V0IHRoYXQgY2FuIGJlIHBhc3NlZCB0byBjb25zdW1pbmcgY29uc3RydWN0cyAoZS5nLiB0byBub3QgcmVjcmVhdGUgYSBsYW1iZGEgZnVuY3Rpb24gaW4gY2FzZSB0aGUgdW5kZXJseWluZyBmaWxlcyBkaWQgbm90IGNoYW5nZSlcbiAgcHVibGljIHJlYWRvbmx5IGFzc2V0SGFzaDogc3RyaW5nO1xuICAvLyBmaWxlIHR5cGUgb2YgdGhlIGFzc2V0LCBlaXRoZXIgQXNzZXRUeXBlLkZJTEUsIEFzc2V0VHlwZS5ESVJFQ1RPUlksIEFzc2V0VHlwZS5BUkNISVZFXG4gIHB1YmxpYyB0eXBlOiBBc3NldFR5cGU7XG5cbiAgLyoqXG4gICAqIEEgVGVycmFmb3JtIEFzc2V0IHRha2VzIGEgZmlsZSBvciBkaXJlY3Rvcnkgb3V0c2lkZSBvZiB0aGUgQ0RLIFRlcnJhaW4gY29udGV4dCBhbmQgbW92ZXMgaXQgaW50byBpdC5cbiAgICogQXNzZXRzIGNvcHkgcmVmZXJlbmNlZCBmaWxlcyBpbnRvIHRoZSBzdGFja3MgY29udGV4dCBmb3IgZnVydGhlciB1c2FnZSBpbiBvdGhlciByZXNvdXJjZXMuXG4gICAqIEBwYXJhbSBzY29wZVxuICAgKiBAcGFyYW0gaWRcbiAgICogQHBhcmFtIGNvbmZpZ1xuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgY29uZmlnOiBUZXJyYWZvcm1Bc3NldENvbmZpZykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLnN0YWNrID0gVGVycmFmb3JtU3RhY2sub2YodGhpcyk7XG5cbiAgICBpZiAocGF0aC5pc0Fic29sdXRlKGNvbmZpZy5wYXRoKSkge1xuICAgICAgdGhpcy5zb3VyY2VQYXRoID0gY29uZmlnLnBhdGg7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGNka3RmSnNvblBhdGggPVxuICAgICAgICBzY29wZS5ub2RlLnRyeUdldENvbnRleHQoXCJjZGt0Zkpzb25QYXRoXCIpID8/XG4gICAgICAgIGZpbmRGaWxlQWJvdmVDd2QoXCJjZGt0Zi5qc29uXCIpO1xuICAgICAgaWYgKGNka3RmSnNvblBhdGgpIHtcbiAgICAgICAgLy8gUmVsYXRpdmUgcGF0aHMgYXJlIGFsd2F5cyBjb25zaWRlcmVkIHRvIGJlIHJlbGF0aXZlIHRvIGNka3RmLmpzb24sIGJ1dCBvcGVyYXRpb25zIGFyZSBwZXJmb3JtZWQgcmVsYXRpdmUgdG8gcHJvY2Vzcy5jd2RcbiAgICAgICAgY29uc3QgYWJzb2x1dGVQYXRoID0gcGF0aC5yZXNvbHZlKFxuICAgICAgICAgIHBhdGguZGlybmFtZShjZGt0Zkpzb25QYXRoKSxcbiAgICAgICAgICBjb25maWcucGF0aCxcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5zb3VyY2VQYXRoID0gcGF0aC5yZWxhdGl2ZShwcm9jZXNzLmN3ZCgpLCBhYnNvbHV0ZVBhdGgpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgYXNzZXRPdXRPZlNjb3BlT2ZDREtURkpzb24oaWQsIGNvbmZpZy5wYXRoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBzdGF0ID0gZnMuc3RhdFN5bmModGhpcy5zb3VyY2VQYXRoKTtcbiAgICBjb25zdCBpbmZlcnJlZFR5cGUgPSBzdGF0LmlzRmlsZSgpID8gQXNzZXRUeXBlLkZJTEUgOiBBc3NldFR5cGUuRElSRUNUT1JZO1xuICAgIHRoaXMudHlwZSA9IGNvbmZpZy50eXBlID8/IGluZmVycmVkVHlwZTtcbiAgICB0aGlzLmFzc2V0SGFzaCA9IHRoaXMucmVzb2x2ZUFzc2V0SGFzaChpZCwgY29uZmlnKTtcblxuICAgIGlmIChzdGF0LmlzRmlsZSgpICYmIHRoaXMudHlwZSAhPT0gQXNzZXRUeXBlLkZJTEUpIHtcbiAgICAgIHRocm93IGFzc2V0RXhwZWN0c0RpcmVjdG9yeShpZCwgY29uZmlnLnBhdGgpO1xuICAgIH1cblxuICAgIGlmICghc3RhdC5pc0ZpbGUoKSAmJiB0aGlzLnR5cGUgPT09IEFzc2V0VHlwZS5GSUxFKSB7XG4gICAgICB0aHJvdyBhc3NldEV4cGVjdHNEaXJlY3RvcnkoaWQsIGNvbmZpZy5wYXRoKTtcbiAgICB9XG5cbiAgICBhZGRDdXN0b21TeW50aGVzaXModGhpcywge1xuICAgICAgb25TeW50aGVzaXplOiB0aGlzLl9vblN5bnRoZXNpemUuYmluZCh0aGlzKSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNvbHZlIHRoZSBhc3NldCBoYXNoIGZyb20gYGFzc2V0SGFzaGAgYW5kIGBhc3NldEhhc2hUeXBlYC5cbiAgICpcbiAgICogSG9ub3JzIHRoZSBzYW1lIGNvbnRyYWN0IGBBc3NldE9wdGlvbnNgIGRvY3VtZW50czogYW4gZXhwbGljaXRcbiAgICogYGFzc2V0SGFzaGAgbWVhbnMgdGhlIHR5cGUgaXMgYENVU1RPTWAsIGBDVVNUT01gIHJlcXVpcmVzIGEgaGFzaCwgYW5kXG4gICAqIGBPVVRQVVRgIGlzIHJlamVjdGVkIGJlY2F1c2UgdGhlcmUgaXMgbm8gYnVuZGxpbmcgc3RlcCB0byBoYXNoIHlldC5cbiAgICogYFNPVVJDRWAgKHRoZSBkZWZhdWx0KSBoYXNoZXMgdGhlIHNvdXJjZSBwYXRoIGFzIGJlZm9yZS5cbiAgICogQHBhcmFtIGlkIC0gY29uc3RydWN0IGlkLCBmb3IgZXJyb3IgbWVzc2FnZXNcbiAgICogQHBhcmFtIGNvbmZpZyAtIHRoZSBhc3NldCBjb25maWd1cmF0aW9uXG4gICAqL1xuICBwcml2YXRlIHJlc29sdmVBc3NldEhhc2goaWQ6IHN0cmluZywgY29uZmlnOiBUZXJyYWZvcm1Bc3NldENvbmZpZyk6IHN0cmluZyB7XG4gICAgY29uc3QgeyBhc3NldEhhc2gsIGFzc2V0SGFzaFR5cGUgfSA9IGNvbmZpZztcblxuICAgIGlmIChhc3NldEhhc2ggIT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKFxuICAgICAgICBhc3NldEhhc2hUeXBlICE9PSB1bmRlZmluZWQgJiZcbiAgICAgICAgYXNzZXRIYXNoVHlwZSAhPT0gQXNzZXRIYXNoVHlwZS5DVVNUT01cbiAgICAgICkge1xuICAgICAgICB0aHJvdyBhc3NldEhhc2hDb25mbGljdGluZ0hhc2hUeXBlKGlkKTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBhc3NldEhhc2g7XG4gICAgfVxuXG4gICAgc3dpdGNoIChhc3NldEhhc2hUeXBlKSB7XG4gICAgICBjYXNlIEFzc2V0SGFzaFR5cGUuQ1VTVE9NOlxuICAgICAgICB0aHJvdyBhc3NldEhhc2hUeXBlQ3VzdG9tUmVxdWlyZXNIYXNoKGlkKTtcbiAgICAgIGNhc2UgQXNzZXRIYXNoVHlwZS5PVVRQVVQ6XG4gICAgICAgIHRocm93IGFzc2V0SGFzaFR5cGVPdXRwdXROb3RTdXBwb3J0ZWQoaWQpO1xuICAgICAgY2FzZSBBc3NldEhhc2hUeXBlLlNPVVJDRTpcbiAgICAgIGNhc2UgdW5kZWZpbmVkOlxuICAgICAgICByZXR1cm4gaGFzaFBhdGgodGhpcy5zb3VyY2VQYXRoLCB7XG4gICAgICAgICAgY2Fub25pY2FsOiAhIXRoaXMubm9kZS50cnlHZXRDb250ZXh0KENBTk9OSUNBTF9BU1NFVF9IQVNIRVMpLFxuICAgICAgICAgIGFyY2hpdmU6IHRoaXMudHlwZSA9PT0gQXNzZXRUeXBlLkFSQ0hJVkUsXG4gICAgICAgIH0pO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgLy8gT3V0LW9mLXJhbmdlIHZhbHVlIGZyb20gYSBub24tVHlwZVNjcmlwdCBjYWxsZXIuXG4gICAgICAgIHRocm93IGFzc2V0SGFzaFR5cGVVbmtub3duKGlkLCBhc3NldEhhc2hUeXBlKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldCBuYW1lZEZvbGRlcigpOiBzdHJpbmcge1xuICAgIHJldHVybiBwYXRoLnBvc2l4LmpvaW4oXG4gICAgICBBU1NFVFNfRElSRUNUT1JZLFxuICAgICAgdGhpcy5zdGFjay5nZXRMb2dpY2FsSWQodGhpcy5ub2RlKSxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIEhvdyB0aGlzIGFzc2V0IGlzIHdyaXR0ZW4gdG8gZGlzay4gVGhlIGxheW91dCAoZGlyZWN0b3J5IHZzIHNpbmdsZSBmaWxlKVxuICAgKiBhbmQgdGhlIGFydGlmYWN0IG5hbWUgYXJlIGRlcml2ZWQgZnJvbSB0aGlzIHJhdGhlciB0aGFuIGZyb20gYHR5cGVgXG4gICAqIGRpcmVjdGx5LCBzbyB0aGUgdHdvIG5ldmVyIGRpc2FncmVlLlxuICAgKi9cbiAgcHJpdmF0ZSBnZXQgcGFja2FnaW5nKCk6IElBc3NldFBhY2thZ2luZyB7XG4gICAgY29uc3QgcGFja2FnaW5nID0gUEFDS0FHSU5HX0JZX1RZUEVbdGhpcy50eXBlXTtcbiAgICBpZiAoIXBhY2thZ2luZykge1xuICAgICAgdGhyb3cgYXNzZXRUeXBlTm90SW1wbGVtZW50ZWQoKTtcbiAgICB9XG4gICAgcmV0dXJuIHBhY2thZ2luZztcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgcm9vdCBvZiB0aGUgdGVycmFmb3JtIGRpcmVjdG9yeSBpbiBwb3NpeCBmb3JtYXRcbiAgICogVXNlIHRoaXMgcHJvcGVydHkgdG8gcmVmZXJlbmNlIHRoZSBhc3NldFxuICAgKi9cbiAgcHVibGljIGdldCBwYXRoKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHBhdGgucG9zaXguam9pbihcbiAgICAgIHRoaXMubmFtZWRGb2xkZXIsIC8vIHJlYWRhYmxlIG5hbWVcbiAgICAgIHRoaXMuYXNzZXRIYXNoLCAvLyBoYXNoIGRlcGVuZGluZyBvbiBjb250ZW50IHNvIHRoYXQgcGF0aCBjaGFuZ2VzIGlmIGNvbnRlbnQgY2hhbmdlc1xuICAgICAgLy8gQSBkaXJlY3RvcnktcHJvZHVjaW5nIHBhY2thZ2luZyBoYXMgbm8gZmlsZSBzZWdtZW50OyBhbnl0aGluZyBlbHNlXG4gICAgICAvLyBjb250cmlidXRlcyBpdHMgYXJ0aWZhY3QgbmFtZS5cbiAgICAgIHRoaXMucGFja2FnaW5nLnByb2R1Y2VzRGlyZWN0b3J5ID8gXCJcIiA6IHRoaXMuZmlsZU5hbWUsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBhc3NldFxuICAgKi9cbiAgcHVibGljIGdldCBmaWxlTmFtZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHsgZXh0ZW5zaW9uIH0gPSB0aGlzLnBhY2thZ2luZztcbiAgICAvLyBSZXBhY2thZ2VkIGFydGlmYWN0cyAoZXh0ZW5zaW9uIHNldCkgZ2V0IGEgc3RhYmxlIGJhc2UgKyBleHRlbnNpb247XG4gICAgLy8gdmVyYmF0aW0gY29waWVzIGtlZXAgdGhlIHNvdXJjZSBuYW1lLlxuICAgIHJldHVybiBleHRlbnNpb25cbiAgICAgID8gYCR7QVJDSElWRV9CQVNFTkFNRX0ke2V4dGVuc2lvbn1gXG4gICAgICA6IHBhdGguYmFzZW5hbWUodGhpcy5zb3VyY2VQYXRoKTtcbiAgfVxuXG4gIHByaXZhdGUgX29uU3ludGhlc2l6ZShzZXNzaW9uOiBJU3ludGhlc2lzU2Vzc2lvbikge1xuICAgIGNvbnN0IHN0YWNrTWFuaWZlc3QgPSBzZXNzaW9uLm1hbmlmZXN0LmZvclN0YWNrKHRoaXMuc3RhY2spO1xuICAgIGNvbnN0IGJhc2VQYXRoID0gcGF0aC5qb2luKFxuICAgICAgc2Vzc2lvbi5tYW5pZmVzdC5vdXRkaXIsXG4gICAgICBzdGFja01hbmlmZXN0LnN5bnRoZXNpemVkU3RhY2tQYXRoLFxuICAgICAgXCIuLlwiLFxuICAgICk7XG5cbiAgICAvLyBDbGVhbnVwIGV4aXN0aW5nIGFzc2V0c1xuICAgIGNvbnN0IHByZXZpb3VzVmVyc2lvbnNGb2xkZXIgPSBwYXRoLmpvaW4oYmFzZVBhdGgsIHRoaXMubmFtZWRGb2xkZXIpO1xuICAgIGlmIChmcy5leGlzdHNTeW5jKHByZXZpb3VzVmVyc2lvbnNGb2xkZXIpKSB7XG4gICAgICBmcy5ybVN5bmMocHJldmlvdXNWZXJzaW9uc0ZvbGRlciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgdGFyZ2V0UGF0aCA9IHBhdGguam9pbihiYXNlUGF0aCwgdGhpcy5wYXRoKTtcbiAgICBjb25zdCBwYWNrYWdpbmcgPSB0aGlzLnBhY2thZ2luZztcblxuICAgIGlmIChwYWNrYWdpbmcucHJvZHVjZXNEaXJlY3RvcnkpIHtcbiAgICAgIGZzLm1rZGlyU3luYyh0YXJnZXRQYXRoLCB7IHJlY3Vyc2l2ZTogdHJ1ZSB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgZnMubWtkaXJTeW5jKHBhdGguZGlybmFtZSh0YXJnZXRQYXRoKSwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgfVxuXG4gICAgcGFja2FnaW5nLnBhY2soeyBzb3VyY2U6IHRoaXMuc291cmNlUGF0aCwgdGFyZ2V0OiB0YXJnZXRQYXRoIH0pO1xuICB9XG59XG4iXX0=
|
package/lib/terraform-backend.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a;
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.TerraformBackend = void 0;
|
|
5
4
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
@@ -8,6 +7,8 @@ const util_1 = require("./util");
|
|
|
8
7
|
const BACKEND_SYMBOL = Symbol.for("cdktf/TerraformBackend");
|
|
9
8
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
10
9
|
class TerraformBackend extends terraform_element_1.TerraformElement {
|
|
10
|
+
name;
|
|
11
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdktn.TerraformBackend", version: "0.25.0-pre.21" };
|
|
11
12
|
constructor(scope, id, name) {
|
|
12
13
|
super(scope, id);
|
|
13
14
|
this.name = name;
|
|
@@ -54,6 +55,4 @@ class TerraformBackend extends terraform_element_1.TerraformElement {
|
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
57
|
exports.TerraformBackend = TerraformBackend;
|
|
57
|
-
|
|
58
|
-
TerraformBackend[_a] = { fqn: "cdktn.TerraformBackend", version: "0.25.0-pre.2" };
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVycmFmb3JtLWJhY2tlbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdGVycmFmb3JtLWJhY2tlbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFJQSwyREFBdUQ7QUFDdkQsaUNBQW1DO0FBRW5DLE1BQU0sY0FBYyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUMsQ0FBQztBQUU1RCwrQ0FBK0M7QUFDL0MsTUFBc0IsZ0JBQWlCLFNBQVEsb0NBQWdCO0lBQzdELFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNTLElBQVk7UUFFL0IsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUZFLFNBQUksR0FBSixJQUFJLENBQVE7UUFHL0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBTTtRQUM1QixPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxJQUFJLGNBQWMsSUFBSSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELHNDQUFzQztJQUM1QixvQkFBb0I7UUFDNUIsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRVMsdUJBQXVCO1FBQy9CLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQVdNLGNBQWM7UUFDbkIsT0FBTztZQUNMLFNBQVMsRUFBRTtnQkFDVCxPQUFPLEVBQUU7b0JBQ1AsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBQSxnQkFBUyxFQUNwQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsRUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FDbEI7aUJBQ0Y7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2hCLE9BQU87WUFDTCxTQUFTLEVBQUU7Z0JBQ1QsT0FBTyxFQUFFO29CQUNQLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUEsZ0JBQVMsRUFDcEIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQzNCLElBQUksQ0FBQyxZQUFZLENBQ2xCO2lCQUNGO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPO1lBQ0wsT0FBTyxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2xCLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQztnQkFDM0MsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUU7Z0JBQzVELENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDUixDQUFDO0lBQ0osQ0FBQzs7QUFwRUgsNENBcUVDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSBIYXNoaUNvcnAsIEluY1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1SZW1vdGVTdGF0ZSB9IGZyb20gXCIuL3RlcnJhZm9ybS1yZW1vdGUtc3RhdGVcIjtcbmltcG9ydCB7IFRlcnJhZm9ybUVsZW1lbnQgfSBmcm9tIFwiLi90ZXJyYWZvcm0tZWxlbWVudFwiO1xuaW1wb3J0IHsgZGVlcE1lcmdlIH0gZnJvbSBcIi4vdXRpbFwiO1xuXG5jb25zdCBCQUNLRU5EX1NZTUJPTCA9IFN5bWJvbC5mb3IoXCJjZGt0Zi9UZXJyYWZvcm1CYWNrZW5kXCIpO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRlcnJhZm9ybUJhY2tlbmQgZXh0ZW5kcyBUZXJyYWZvcm1FbGVtZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBuYW1lOiBzdHJpbmcsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIEJBQ0tFTkRfU1lNQk9MLCB7IHZhbHVlOiB0cnVlIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBpc0JhY2tlbmQoeDogYW55KTogeCBpcyBUZXJyYWZvcm1CYWNrZW5kIHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YgeCA9PT0gXCJvYmplY3RcIiAmJiBCQUNLRU5EX1NZTUJPTCBpbiB4O1xuICB9XG5cbiAgLy8ganNpaSBjYW4ndCBoYW5kbGUgYWJzdHJhY3QgY2xhc3Nlcz9cbiAgcHJvdGVjdGVkIHN5bnRoZXNpemVBdHRyaWJ1dGVzKCk6IHsgW25hbWU6IHN0cmluZ106IGFueSB9IHtcbiAgICByZXR1cm4ge307XG4gIH1cblxuICBwcm90ZWN0ZWQgc3ludGhlc2l6ZUhjbEF0dHJpYnV0ZXMoKTogeyBbbmFtZTogc3RyaW5nXTogYW55IH0ge1xuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgVGVycmFmb3JtUmVtb3RlU3RhdGUgcmVzb3VyY2UgdGhhdCBhY2Nlc3NlcyB0aGlzIGJhY2tlbmQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0UmVtb3RlU3RhdGVEYXRhU291cmNlKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgbmFtZTogc3RyaW5nLFxuICAgIGZyb21TdGFjazogc3RyaW5nLFxuICApOiBUZXJyYWZvcm1SZW1vdGVTdGF0ZTtcblxuICBwdWJsaWMgdG9IY2xUZXJyYWZvcm0oKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgdGVycmFmb3JtOiB7XG4gICAgICAgIGJhY2tlbmQ6IHtcbiAgICAgICAgICBbdGhpcy5uYW1lXTogZGVlcE1lcmdlKFxuICAgICAgICAgICAgdGhpcy5zeW50aGVzaXplSGNsQXR0cmlidXRlcygpLFxuICAgICAgICAgICAgdGhpcy5yYXdPdmVycmlkZXMsXG4gICAgICAgICAgKSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIHRoaXMgcmVzb3VyY2UgdG8gdGhlIHRlcnJhZm9ybSBKU09OIG91dHB1dC5cbiAgICovXG4gIHB1YmxpYyB0b1RlcnJhZm9ybSgpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICB0ZXJyYWZvcm06IHtcbiAgICAgICAgYmFja2VuZDoge1xuICAgICAgICAgIFt0aGlzLm5hbWVdOiBkZWVwTWVyZ2UoXG4gICAgICAgICAgICB0aGlzLnN5bnRoZXNpemVBdHRyaWJ1dGVzKCksXG4gICAgICAgICAgICB0aGlzLnJhd092ZXJyaWRlcyxcbiAgICAgICAgICApLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHRvTWV0YWRhdGEoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgYmFja2VuZDogdGhpcy5uYW1lLFxuICAgICAgLi4uKE9iamVjdC5rZXlzKHRoaXMucmF3T3ZlcnJpZGVzKS5sZW5ndGggPiAwXG4gICAgICAgID8geyBvdmVycmlkZXM6IHsgYmFja2VuZDogT2JqZWN0LmtleXModGhpcy5yYXdPdmVycmlkZXMpIH0gfVxuICAgICAgICA6IHt9KSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVycmFmb3JtLWJhY2tlbmQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdGVycmFmb3JtLWJhY2tlbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUlBLDJEQUF1RDtBQUN2RCxpQ0FBbUM7QUFFbkMsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0FBRTVELCtDQUErQztBQUMvQyxNQUFzQixnQkFBaUIsU0FBUSxvQ0FBZ0I7SUFJeEM7O0lBSHJCLFlBQ0UsS0FBZ0IsRUFDaEIsRUFBVSxFQUNTLElBQVk7UUFFL0IsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUZFLFNBQUksR0FBSixJQUFJLENBQVE7UUFHL0IsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDL0QsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBTTtRQUM1QixPQUFPLENBQUMsS0FBSyxJQUFJLElBQUksT0FBTyxDQUFDLEtBQUssUUFBUSxJQUFJLGNBQWMsSUFBSSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVELHNDQUFzQztJQUM1QixvQkFBb0I7UUFDNUIsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRVMsdUJBQXVCO1FBQy9CLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQVdNLGNBQWM7UUFDbkIsT0FBTztZQUNMLFNBQVMsRUFBRTtnQkFDVCxPQUFPLEVBQUU7b0JBQ1AsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBQSxnQkFBUyxFQUNwQixJQUFJLENBQUMsdUJBQXVCLEVBQUUsRUFDOUIsSUFBSSxDQUFDLFlBQVksQ0FDbEI7aUJBQ0Y7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2hCLE9BQU87WUFDTCxTQUFTLEVBQUU7Z0JBQ1QsT0FBTyxFQUFFO29CQUNQLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUEsZ0JBQVMsRUFDcEIsSUFBSSxDQUFDLG9CQUFvQixFQUFFLEVBQzNCLElBQUksQ0FBQyxZQUFZLENBQ2xCO2lCQUNGO2FBQ0Y7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVNLFVBQVU7UUFDZixPQUFPO1lBQ0wsT0FBTyxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2xCLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQztnQkFDM0MsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLEVBQUU7Z0JBQzVELENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDUixDQUFDO0lBQ0osQ0FBQzs7QUFwRUgsNENBcUVDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSBIYXNoaUNvcnAsIEluY1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBUZXJyYWZvcm1SZW1vdGVTdGF0ZSB9IGZyb20gXCIuL3RlcnJhZm9ybS1yZW1vdGUtc3RhdGVcIjtcbmltcG9ydCB7IFRlcnJhZm9ybUVsZW1lbnQgfSBmcm9tIFwiLi90ZXJyYWZvcm0tZWxlbWVudFwiO1xuaW1wb3J0IHsgZGVlcE1lcmdlIH0gZnJvbSBcIi4vdXRpbFwiO1xuXG5jb25zdCBCQUNLRU5EX1NZTUJPTCA9IFN5bWJvbC5mb3IoXCJjZGt0Zi9UZXJyYWZvcm1CYWNrZW5kXCIpO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUganNkb2MvcmVxdWlyZS1qc2RvY1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRlcnJhZm9ybUJhY2tlbmQgZXh0ZW5kcyBUZXJyYWZvcm1FbGVtZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IENvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBuYW1lOiBzdHJpbmcsXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIEJBQ0tFTkRfU1lNQk9MLCB7IHZhbHVlOiB0cnVlIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXRpYyBpc0JhY2tlbmQoeDogYW55KTogeCBpcyBUZXJyYWZvcm1CYWNrZW5kIHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YgeCA9PT0gXCJvYmplY3RcIiAmJiBCQUNLRU5EX1NZTUJPTCBpbiB4O1xuICB9XG5cbiAgLy8ganNpaSBjYW4ndCBoYW5kbGUgYWJzdHJhY3QgY2xhc3Nlcz9cbiAgcHJvdGVjdGVkIHN5bnRoZXNpemVBdHRyaWJ1dGVzKCk6IHsgW25hbWU6IHN0cmluZ106IGFueSB9IHtcbiAgICByZXR1cm4ge307XG4gIH1cblxuICBwcm90ZWN0ZWQgc3ludGhlc2l6ZUhjbEF0dHJpYnV0ZXMoKTogeyBbbmFtZTogc3RyaW5nXTogYW55IH0ge1xuICAgIHJldHVybiB7fTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgVGVycmFmb3JtUmVtb3RlU3RhdGUgcmVzb3VyY2UgdGhhdCBhY2Nlc3NlcyB0aGlzIGJhY2tlbmQuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgZ2V0UmVtb3RlU3RhdGVEYXRhU291cmNlKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgbmFtZTogc3RyaW5nLFxuICAgIGZyb21TdGFjazogc3RyaW5nLFxuICApOiBUZXJyYWZvcm1SZW1vdGVTdGF0ZTtcblxuICBwdWJsaWMgdG9IY2xUZXJyYWZvcm0oKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgdGVycmFmb3JtOiB7XG4gICAgICAgIGJhY2tlbmQ6IHtcbiAgICAgICAgICBbdGhpcy5uYW1lXTogZGVlcE1lcmdlKFxuICAgICAgICAgICAgdGhpcy5zeW50aGVzaXplSGNsQXR0cmlidXRlcygpLFxuICAgICAgICAgICAgdGhpcy5yYXdPdmVycmlkZXMsXG4gICAgICAgICAgKSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIHRoaXMgcmVzb3VyY2UgdG8gdGhlIHRlcnJhZm9ybSBKU09OIG91dHB1dC5cbiAgICovXG4gIHB1YmxpYyB0b1RlcnJhZm9ybSgpOiBhbnkge1xuICAgIHJldHVybiB7XG4gICAgICB0ZXJyYWZvcm06IHtcbiAgICAgICAgYmFja2VuZDoge1xuICAgICAgICAgIFt0aGlzLm5hbWVdOiBkZWVwTWVyZ2UoXG4gICAgICAgICAgICB0aGlzLnN5bnRoZXNpemVBdHRyaWJ1dGVzKCksXG4gICAgICAgICAgICB0aGlzLnJhd092ZXJyaWRlcyxcbiAgICAgICAgICApLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIHRvTWV0YWRhdGEoKTogYW55IHtcbiAgICByZXR1cm4ge1xuICAgICAgYmFja2VuZDogdGhpcy5uYW1lLFxuICAgICAgLi4uKE9iamVjdC5rZXlzKHRoaXMucmF3T3ZlcnJpZGVzKS5sZW5ndGggPiAwXG4gICAgICAgID8geyBvdmVycmlkZXM6IHsgYmFja2VuZDogT2JqZWN0LmtleXModGhpcy5yYXdPdmVycmlkZXMpIH0gfVxuICAgICAgICA6IHt9KSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
package/lib/terraform-count.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a;
|
|
3
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
3
|
exports.TerraformCount = void 0;
|
|
5
4
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
@@ -12,6 +11,8 @@ const COUNT_SYMBOL = Symbol.for("cdktf/TerraformCount");
|
|
|
12
11
|
* Iterator for the Terraform count property
|
|
13
12
|
*/
|
|
14
13
|
class TerraformCount {
|
|
14
|
+
count;
|
|
15
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "cdktn.TerraformCount", version: "0.25.0-pre.21" };
|
|
15
16
|
static of(count) {
|
|
16
17
|
return new TerraformCount(count);
|
|
17
18
|
}
|
|
@@ -33,6 +34,4 @@ class TerraformCount {
|
|
|
33
34
|
}
|
|
34
35
|
}
|
|
35
36
|
exports.TerraformCount = TerraformCount;
|
|
36
|
-
|
|
37
|
-
TerraformCount[_a] = { fqn: "cdktn.TerraformCount", version: "0.25.0-pre.2" };
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVycmFmb3JtLWNvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RlcnJhZm9ybS1jb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLCtCQUErQjtBQUMvQixtQ0FBbUM7QUFDbkMsaURBQXFDO0FBQ3JDLHFDQUFpQztBQUNqQyxNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFFeEQ7O0dBRUc7QUFDSCxNQUFhLGNBQWM7SUFDekIsTUFBTSxDQUFDLEVBQUUsQ0FBQyxLQUFhO1FBQ3JCLE9BQU8sSUFBSSxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUNNLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFNO1FBQ25DLE9BQU8sQ0FBQyxLQUFLLElBQUksSUFBSSxPQUFPLENBQUMsS0FBSyxRQUFRLElBQUksWUFBWSxJQUFJLENBQUMsQ0FBQztJQUNsRSxDQUFDO0lBRUQsWUFBcUMsS0FBYTtRQUFiLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDaEQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU8sY0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFBLGtCQUFHLEVBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU0sV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVNLFFBQVE7UUFDYixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQzs7QUF0Qkgsd0NBdUJDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSBIYXNoaUNvcnAsIEluY1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1QTC0yLjBcbmltcG9ydCB7IHJlZiB9IGZyb20gXCIuL3RmRXhwcmVzc2lvblwiO1xuaW1wb3J0IHsgVG9rZW4gfSBmcm9tIFwiLi90b2tlbnNcIjtcbmNvbnN0IENPVU5UX1NZTUJPTCA9IFN5bWJvbC5mb3IoXCJjZGt0Zi9UZXJyYWZvcm1Db3VudFwiKTtcblxuLyoqXG4gKiBJdGVyYXRvciBmb3IgdGhlIFRlcnJhZm9ybSBjb3VudCBwcm9wZXJ0eVxuICovXG5leHBvcnQgY2xhc3MgVGVycmFmb3JtQ291bnQge1xuICBzdGF0aWMgb2YoY291bnQ6IG51bWJlcik6IFRlcnJhZm9ybUNvdW50IHtcbiAgICByZXR1cm4gbmV3IFRlcnJhZm9ybUNvdW50KGNvdW50KTtcbiAgfVxuICBwdWJsaWMgc3RhdGljIGlzVGVycmFmb3JtQ291bnQoeDogYW55KTogeCBpcyBUZXJyYWZvcm1Db3VudCB7XG4gICAgcmV0dXJuIHggIT09IG51bGwgJiYgdHlwZW9mIHggPT09IFwib2JqZWN0XCIgJiYgQ09VTlRfU1lNQk9MIGluIHg7XG4gIH1cblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY291bnQ6IG51bWJlcikge1xuICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0aGlzLCBDT1VOVF9TWU1CT0wsIHsgdmFsdWU6IHRydWUgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGluZGV4KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIFRva2VuLmFzTnVtYmVyKHJlZihcImNvdW50LmluZGV4XCIpKTtcbiAgfVxuXG4gIHB1YmxpYyB0b1RlcnJhZm9ybSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmNvdW50O1xuICB9XG5cbiAgcHVibGljIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY291bnQudG9TdHJpbmcoKTtcbiAgfVxufVxuIl19
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVycmFmb3JtLWNvdW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3RlcnJhZm9ybS1jb3VudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsK0JBQStCO0FBQy9CLG1DQUFtQztBQUNuQyxpREFBcUM7QUFDckMscUNBQWlDO0FBQ2pDLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUMsc0JBQXNCLENBQUMsQ0FBQztBQUV4RDs7R0FFRztBQUNILE1BQWEsY0FBYztJQVFZOztJQVByQyxNQUFNLENBQUMsRUFBRSxDQUFDLEtBQWE7UUFDckIsT0FBTyxJQUFJLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQ00sTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQU07UUFDbkMsT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxZQUFZLElBQUksQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxZQUFxQyxLQUFhO1FBQWIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNoRCxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxjQUFLLENBQUMsUUFBUSxDQUFDLElBQUEsa0JBQUcsRUFBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFTSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBRU0sUUFBUTtRQUNiLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMvQixDQUFDOztBQXRCSCx3Q0F1QkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgKGMpIEhhc2hpQ29ycCwgSW5jXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTVBMLTIuMFxuaW1wb3J0IHsgcmVmIH0gZnJvbSBcIi4vdGZFeHByZXNzaW9uXCI7XG5pbXBvcnQgeyBUb2tlbiB9IGZyb20gXCIuL3Rva2Vuc1wiO1xuY29uc3QgQ09VTlRfU1lNQk9MID0gU3ltYm9sLmZvcihcImNka3RmL1RlcnJhZm9ybUNvdW50XCIpO1xuXG4vKipcbiAqIEl0ZXJhdG9yIGZvciB0aGUgVGVycmFmb3JtIGNvdW50IHByb3BlcnR5XG4gKi9cbmV4cG9ydCBjbGFzcyBUZXJyYWZvcm1Db3VudCB7XG4gIHN0YXRpYyBvZihjb3VudDogbnVtYmVyKTogVGVycmFmb3JtQ291bnQge1xuICAgIHJldHVybiBuZXcgVGVycmFmb3JtQ291bnQoY291bnQpO1xuICB9XG4gIHB1YmxpYyBzdGF0aWMgaXNUZXJyYWZvcm1Db3VudCh4OiBhbnkpOiB4IGlzIFRlcnJhZm9ybUNvdW50IHtcbiAgICByZXR1cm4geCAhPT0gbnVsbCAmJiB0eXBlb2YgeCA9PT0gXCJvYmplY3RcIiAmJiBDT1VOVF9TWU1CT0wgaW4geDtcbiAgfVxuXG4gIHByaXZhdGUgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBjb3VudDogbnVtYmVyKSB7XG4gICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRoaXMsIENPVU5UX1NZTUJPTCwgeyB2YWx1ZTogdHJ1ZSB9KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaW5kZXgoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gVG9rZW4uYXNOdW1iZXIocmVmKFwiY291bnQuaW5kZXhcIikpO1xuICB9XG5cbiAgcHVibGljIHRvVGVycmFmb3JtKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY291bnQ7XG4gIH1cblxuICBwdWJsaWMgdG9TdHJpbmcoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb3VudC50b1N0cmluZygpO1xuICB9XG59XG4iXX0=
|