truemark-cdk-lib 1.2.4-alpha.21 → 1.2.4-alpha.23
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/aws-cdk/lib/extended-app.d.ts +11 -0
- package/aws-cdk/lib/extended-app.js +17 -5
- package/aws-cdk/lib/extended-stack.js +7 -5
- package/aws-cdk/lib/standard-tags.d.ts +6 -0
- package/aws-cdk/lib/standard-tags.js +30 -7
- package/{test/aws-cdk → aws-cdk/lib}/standard-tags.test.d.ts +0 -0
- package/aws-cdk/lib/standard-tags.test.js +9 -0
- package/{test/aws-cloudwatch → aws-cloudwatch/lib}/estimated-charges-alarm.test.d.ts +0 -0
- package/{test/aws-cloudwatch → aws-cloudwatch/lib}/estimated-charges-alarm.test.js +4 -4
- package/{test/aws-codepipeline → aws-codepipeline/lib}/cdk-pipeline.test.d.ts +0 -0
- package/{test/aws-codepipeline → aws-codepipeline/lib}/cdk-pipeline.test.js +4 -4
- package/{test/aws-codepipeline → aws-codepipeline/lib}/extended-stack.test.d.ts +0 -0
- package/{test/aws-codepipeline → aws-codepipeline/lib}/extended-stack.test.js +4 -4
- package/{test/aws-dynamodb → aws-dynamodb/lib}/batch-write-item.test.d.ts +0 -0
- package/{test/aws-dynamodb → aws-dynamodb/lib}/batch-write-item.test.js +3 -3
- package/{test/aws-dynamodb → aws-dynamodb/lib}/extended-table.test.d.ts +0 -0
- package/aws-dynamodb/lib/extended-table.test.js +32 -0
- package/{test/aws-dynamodb → aws-dynamodb/lib}/put-item.test.d.ts +0 -0
- package/{test/aws-dynamodb → aws-dynamodb/lib}/put-item.test.js +3 -3
- package/{test/aws-lambda → aws-lambda/lib}/extended-function.test.d.ts +0 -0
- package/aws-lambda/lib/extended-function.test.js +20 -0
- package/{test/aws-lambda → aws-lambda/lib}/extended-go-function.test.d.ts +0 -0
- package/{test/aws-lambda → aws-lambda/lib}/extended-go-function.test.js +4 -4
- package/{test/aws-lambda → aws-lambda/lib}/extended-nodejs-function.test.d.ts +0 -0
- package/aws-lambda/lib/extended-nodejs-function.test.js +20 -0
- package/{test/aws-lambda → aws-lambda/lib}/extended-python-function.test.d.ts +0 -0
- package/aws-lambda/lib/extended-python-function.test.js +17 -0
- package/{test/aws-lambda → aws-lambda/lib}/standard-python-function.test.d.ts +0 -0
- package/{test/aws-lambda → aws-lambda/lib}/standard-python-function.test.js +2 -2
- package/{test/aws-monitoring → aws-monitoring/lib}/alarm-facade.test.d.ts +0 -0
- package/{test/aws-monitoring → aws-monitoring/lib}/alarm-facade.test.js +9 -9
- package/{test/aws-route53 → aws-route53/lib}/domain-name.test.d.ts +0 -0
- package/{test/aws-route53 → aws-route53/lib}/domain-name.test.js +8 -8
- package/{test/aws-route53 → aws-route53/lib}/extended-record-target.test.d.ts +0 -0
- package/aws-route53/lib/extended-record-target.test.js +52 -0
- package/{test/aws-sqs → aws-sqs/lib}/standard-queue.test.d.ts +0 -0
- package/aws-sqs/lib/standard-queue.test.js +16 -0
- package/{test/aws-ssm → aws-ssm/lib}/parameter-store.test.d.ts +0 -0
- package/{test/aws-ssm → aws-ssm/lib}/parameter-store.test.js +4 -4
- package/{test/aws-website → aws-website/lib}/website.test.d.ts +0 -0
- package/aws-website/lib/website.test.js +60 -0
- package/{test/helpers → helpers/lib}/string-helper.test.d.ts +0 -0
- package/{test/helpers → helpers/lib}/string-helper.test.js +2 -2
- package/jest.config.js +1 -1
- package/package.json +2 -2
- package/{test/test-helper.d.ts → test-helper.d.ts} +5 -4
- package/test-helper.js +45 -0
- package/test/aws-cdk/standard-tags.test.js +0 -9
- package/test/aws-dynamodb/extended-table.test.js +0 -32
- package/test/aws-lambda/extended-function.test.js +0 -20
- package/test/aws-lambda/extended-nodejs-function.test.js +0 -20
- package/test/aws-lambda/extended-python-function.test.js +0 -17
- package/test/aws-route53/extended-record-target.test.js +0 -52
- package/test/aws-sqs/standard-queue.test.js +0 -16
- package/test/aws-website/website.test.js +0 -60
- package/test/test-helper.js +0 -42
|
@@ -4,7 +4,18 @@ import { StandardTagsProps } from "./standard-tags";
|
|
|
4
4
|
* Properties for ExtendedApp.
|
|
5
5
|
*/
|
|
6
6
|
export interface ExtendedAppProps extends AppProps {
|
|
7
|
+
/**
|
|
8
|
+
* Standard tags to apply to all stacks.
|
|
9
|
+
*/
|
|
7
10
|
readonly standardTags?: StandardTagsProps;
|
|
11
|
+
/**
|
|
12
|
+
* Skips account lookup and uses this account.
|
|
13
|
+
*/
|
|
14
|
+
readonly account?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Skips region lookup and uses this region.
|
|
17
|
+
*/
|
|
18
|
+
readonly region?: string;
|
|
8
19
|
}
|
|
9
20
|
/**
|
|
10
21
|
* Adds functionality to the base App class to support standard tags
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ExtendedApp = void 0;
|
|
4
4
|
const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
5
|
+
const standard_tags_1 = require("./standard-tags");
|
|
5
6
|
/**
|
|
6
7
|
* Adds functionality to the base App class to support standard tags
|
|
7
8
|
* and access to the account and region being used to execute the
|
|
@@ -9,19 +10,30 @@ const aws_cdk_lib_1 = require("aws-cdk-lib");
|
|
|
9
10
|
*/
|
|
10
11
|
class ExtendedApp extends aws_cdk_lib_1.App {
|
|
11
12
|
constructor(props) {
|
|
12
|
-
|
|
13
|
-
|
|
13
|
+
var _a;
|
|
14
|
+
super({
|
|
15
|
+
...props,
|
|
16
|
+
context: {
|
|
17
|
+
...props === null || props === void 0 ? void 0 : props.context,
|
|
18
|
+
// Add standardTags to the context to be used by ExtendedStack
|
|
19
|
+
standardTags: props === null || props === void 0 ? void 0 : props.standardTags
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
// Use the provided account or do a lookup
|
|
23
|
+
const account = (props === null || props === void 0 ? void 0 : props.account) || process.env.CDK_DEFAULT_ACCOUNT || process.env.AWS_ACCOUNT_ID;
|
|
14
24
|
if (account === undefined) {
|
|
15
25
|
throw new Error("Unable to identify default account");
|
|
16
26
|
}
|
|
17
27
|
this.account = account;
|
|
18
|
-
|
|
28
|
+
// Use the provided region or do a lookup
|
|
29
|
+
const region = (props === null || props === void 0 ? void 0 : props.region) || process.env.CDK_DEFAULT_REGION || process.env.AWS_DEFAULT_REGION;
|
|
19
30
|
if (region === undefined) {
|
|
20
31
|
throw new Error("Unable to identify default region");
|
|
21
32
|
}
|
|
22
33
|
this.region = region;
|
|
23
|
-
|
|
34
|
+
// Add automation component tags to AutomationComponent children
|
|
35
|
+
aws_cdk_lib_1.Aspects.of(this).add(new standard_tags_1.AutomationComponentAspect((_a = props === null || props === void 0 ? void 0 : props.standardTags) === null || _a === void 0 ? void 0 : _a.suppressTagging));
|
|
24
36
|
}
|
|
25
37
|
}
|
|
26
38
|
exports.ExtendedApp = ExtendedApp;
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtYXBwLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiZXh0ZW5kZWQtYXBwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZDQUFtRDtBQUNuRCxtREFBNkU7QUF1QjdFOzs7O0dBSUc7QUFDSCxNQUFhLFdBQVksU0FBUSxpQkFBRztJQUtsQyxZQUFZLEtBQXdCOztRQUNsQyxLQUFLLENBQUM7WUFDSixHQUFHLEtBQUs7WUFDUixPQUFPLEVBQUU7Z0JBQ1AsR0FBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsT0FBTztnQkFDakIsOERBQThEO2dCQUM5RCxZQUFZLEVBQUcsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFlBQVk7YUFDbkM7U0FDRixDQUFDLENBQUM7UUFFSCwwQ0FBMEM7UUFDMUMsTUFBTSxPQUFPLEdBQUcsQ0FBQSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsT0FBTyxLQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CLElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUM7UUFDaEcsSUFBSSxPQUFPLEtBQUssU0FBUyxFQUFFO1lBQ3pCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztTQUN2RDtRQUNELElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBRXZCLHlDQUF5QztRQUN6QyxNQUFNLE1BQU0sR0FBRyxDQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxNQUFNLEtBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDO1FBQ2pHLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLG1DQUFtQyxDQUFDLENBQUM7U0FDdEQ7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUVyQixnRUFBZ0U7UUFDaEUscUJBQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUkseUNBQXlCLE9BQUMsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFlBQVksMENBQUUsZUFBZSxDQUFDLENBQUMsQ0FBQztJQUM1RixDQUFDO0NBQ0Y7QUFoQ0Qsa0NBZ0NDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBcHAsIEFwcFByb3BzLCBBc3BlY3RzfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7QXV0b21hdGlvbkNvbXBvbmVudEFzcGVjdCwgU3RhbmRhcmRUYWdzUHJvcHN9IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBFeHRlbmRlZEFwcC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHRlbmRlZEFwcFByb3BzIGV4dGVuZHMgQXBwUHJvcHMge1xuXG4gIC8qKlxuICAgKiBTdGFuZGFyZCB0YWdzIHRvIGFwcGx5IHRvIGFsbCBzdGFja3MuXG4gICAqL1xuICByZWFkb25seSBzdGFuZGFyZFRhZ3M/OiBTdGFuZGFyZFRhZ3NQcm9wcztcblxuICAvKipcbiAgICogU2tpcHMgYWNjb3VudCBsb29rdXAgYW5kIHVzZXMgdGhpcyBhY2NvdW50LlxuICAgKi9cbiAgcmVhZG9ubHkgYWNjb3VudD86IHN0cmluZztcblxuICAvKipcbiAgICogU2tpcHMgcmVnaW9uIGxvb2t1cCBhbmQgdXNlcyB0aGlzIHJlZ2lvbi5cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBBZGRzIGZ1bmN0aW9uYWxpdHkgdG8gdGhlIGJhc2UgQXBwIGNsYXNzIHRvIHN1cHBvcnQgc3RhbmRhcmQgdGFnc1xuICogYW5kIGFjY2VzcyB0byB0aGUgYWNjb3VudCBhbmQgcmVnaW9uIGJlaW5nIHVzZWQgdG8gZXhlY3V0ZSB0aGVcbiAqIENESyBwcm9jZXNzLlxuICovXG5leHBvcnQgY2xhc3MgRXh0ZW5kZWRBcHAgZXh0ZW5kcyBBcHAge1xuXG4gIHJlYWRvbmx5IGFjY291bnQ6IHN0cmluZztcbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJvcHM/OiBFeHRlbmRlZEFwcFByb3BzKSB7XG4gICAgc3VwZXIoe1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBjb250ZXh0OiB7XG4gICAgICAgIC4uLnByb3BzPy5jb250ZXh0LFxuICAgICAgICAvLyBBZGQgc3RhbmRhcmRUYWdzIHRvIHRoZSBjb250ZXh0IHRvIGJlIHVzZWQgYnkgRXh0ZW5kZWRTdGFja1xuICAgICAgICBzdGFuZGFyZFRhZ3M6ICBwcm9wcz8uc3RhbmRhcmRUYWdzXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICAvLyBVc2UgdGhlIHByb3ZpZGVkIGFjY291bnQgb3IgZG8gYSBsb29rdXBcbiAgICBjb25zdCBhY2NvdW50ID0gcHJvcHM/LmFjY291bnQgfHwgcHJvY2Vzcy5lbnYuQ0RLX0RFRkFVTFRfQUNDT1VOVCB8fCBwcm9jZXNzLmVudi5BV1NfQUNDT1VOVF9JRDtcbiAgICBpZiAoYWNjb3VudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbmFibGUgdG8gaWRlbnRpZnkgZGVmYXVsdCBhY2NvdW50XCIpO1xuICAgIH1cbiAgICB0aGlzLmFjY291bnQgPSBhY2NvdW50O1xuXG4gICAgLy8gVXNlIHRoZSBwcm92aWRlZCByZWdpb24gb3IgZG8gYSBsb29rdXBcbiAgICBjb25zdCByZWdpb24gPSBwcm9wcz8ucmVnaW9uIHx8IHByb2Nlc3MuZW52LkNES19ERUZBVUxUX1JFR0lPTiB8fCBwcm9jZXNzLmVudi5BV1NfREVGQVVMVF9SRUdJT047XG4gICAgaWYgKHJlZ2lvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJVbmFibGUgdG8gaWRlbnRpZnkgZGVmYXVsdCByZWdpb25cIik7XG4gICAgfVxuICAgIHRoaXMucmVnaW9uID0gcmVnaW9uO1xuXG4gICAgLy8gQWRkIGF1dG9tYXRpb24gY29tcG9uZW50IHRhZ3MgdG8gQXV0b21hdGlvbkNvbXBvbmVudCBjaGlsZHJlblxuICAgIEFzcGVjdHMub2YodGhpcykuYWRkKG5ldyBBdXRvbWF0aW9uQ29tcG9uZW50QXNwZWN0KHByb3BzPy5zdGFuZGFyZFRhZ3M/LnN1cHByZXNzVGFnZ2luZykpO1xuICB9XG59XG5cbiJdfQ==
|
|
@@ -42,12 +42,14 @@ class ExtendedStack extends aws_cdk_lib_1.Stack {
|
|
|
42
42
|
const standardTagsProps = standard_tags_1.StandardTags.merge(this.node.tryGetContext("standardTags"), props === null || props === void 0 ? void 0 : props.standardTags);
|
|
43
43
|
const standardTags = new standard_tags_1.StandardTags(this, standardTagsProps);
|
|
44
44
|
// Add automation component tags to this stack
|
|
45
|
-
standardTags.
|
|
45
|
+
standardTags.addAutomationComponentTags({
|
|
46
46
|
...standard_tags_1.InternalAutomationComponentTags,
|
|
47
|
-
|
|
47
|
+
propagate: false
|
|
48
48
|
});
|
|
49
|
-
// Add automation component tags to AutomationComponent children
|
|
50
|
-
aws_cdk_lib_1.Aspects.of(this).
|
|
49
|
+
// Add automation component tags to AutomationComponent children, but don't add the aspect if it's already been added
|
|
50
|
+
if (!aws_cdk_lib_1.Aspects.of(this).all.reduce((a, v) => a || v instanceof standard_tags_1.AutomationComponentAspect)) {
|
|
51
|
+
aws_cdk_lib_1.Aspects.of(this).add(new standard_tags_1.AutomationComponentAspect(standardTagsProps.suppressTagging));
|
|
52
|
+
}
|
|
51
53
|
}
|
|
52
54
|
/**
|
|
53
55
|
* Helper method to exports a parameter as an SSM Parameter.
|
|
@@ -71,4 +73,4 @@ class ExtendedStack extends aws_cdk_lib_1.Stack {
|
|
|
71
73
|
}
|
|
72
74
|
}
|
|
73
75
|
exports.ExtendedStack = ExtendedStack;
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJleHRlbmRlZC1zdGFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBbUY7QUFDbkYsMkNBQW9FO0FBR3BFLHlFQUltQztBQUNuQyxtREFLeUI7QUE2RnpCOztHQUVHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsbUJBQUs7SUFNdEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUEwQjs7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEIsTUFBTSxTQUFTLFNBQUcsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLDBDQUFFLFNBQVMsQ0FBQztRQUU1QyxJQUFJLENBQUMsc0JBQXNCLEdBQUc7WUFDNUIsTUFBTSxRQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxzQkFBc0IsbUNBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsV0FBVztZQUM3RyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLHdCQUFjLENBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRWxHLFVBQUksS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLHNCQUFzQixtQ0FBSSxJQUFJLEVBQUU7WUFDekMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLG1EQUF1QixDQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRTtnQkFDN0UsbUJBQW1CLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLG1CQUFtQixtQ0FBSSxJQUFJLENBQUMsU0FBUztnQkFDakUsb0JBQW9CLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLG9CQUFvQixtQ0FBSSxLQUFLO2dCQUMxRCxlQUFlLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGVBQWUsbUNBQUksS0FBSztnQkFDaEQsc0JBQXNCLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLHNCQUFzQixtQ0FBSSxLQUFLO2dCQUM5RCxtQkFBbUIsUUFBRSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsNEJBQTRCLG1DQUFJLHdEQUE0QixDQUFDLGdCQUFnQjthQUMxRyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSw0Q0FBZ0IsQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFO2dCQUMvRCxxQkFBcUIsRUFBRTtvQkFDckIsU0FBUyxFQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxlQUFlO29CQUNqQyxNQUFNLEVBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFlBQVk7aUJBQzVCO2dCQUNELG9CQUFvQixFQUFFO29CQUNwQixjQUFjLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLG1CQUFtQixtQ0FBSSxJQUFJO29CQUNsRCxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVM7aUJBQ2hDO2dCQUNELGdCQUFnQixFQUFFLGdCQUFnQjthQUNuQyxDQUFDLENBQUM7U0FDSjtRQUVELHNCQUFzQjtRQUN0QixNQUFNLGlCQUFpQixHQUFHLDRCQUFZLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxZQUFZLENBQUMsQ0FBQztRQUMzRyxNQUFNLFlBQVksR0FBRyxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFFL0QsOENBQThDO1FBQzlDLFlBQVksQ0FBQyxpQkFBaUIsQ0FBQztZQUM3QixHQUFHLCtDQUErQjtZQUNsQyxvQkFBb0IsRUFBRSxDQUFDLDRCQUE0QixDQUFDO1NBQ3JELENBQUMsQ0FBQztRQUVILGdFQUFnRTtRQUNoRSxxQkFBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSx5Q0FBeUIsQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO0lBQ3pGLENBQUM7SUFHRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUN6QyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUN6QyxPQUFPLElBQUksdUJBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQy9CLEtBQUs7U0FDTixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUEzRUQsc0NBMkVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3BlY3RzLCBDZm5PdXRwdXQsIER1cmF0aW9uLCBTdGFjaywgU3RhY2tQcm9wcywgU3RhZ2V9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtQYXJhbWV0ZXJTdG9yZSwgUGFyYW1ldGVyU3RvcmVPcHRpb25zfSBmcm9tIFwiLi4vLi4vYXdzLXNzbVwiO1xuaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1N0cmluZ1BhcmFtZXRlcn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zc21cIjtcbmltcG9ydCB7XG4gIERhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2UsXG4gIERlZmF1bHREYXNoYm9hcmRGYWN0b3J5LFxuICBNb25pdG9yaW5nRmFjYWRlXG59IGZyb20gXCJjZGstbW9uaXRvcmluZy1jb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBBdXRvbWF0aW9uQ29tcG9uZW50QXNwZWN0LFxuICBJbnRlcm5hbEF1dG9tYXRpb25Db21wb25lbnRUYWdzLFxuICBTdGFuZGFyZFRhZ3MsXG4gIFN0YW5kYXJkVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBFeHRTdGFjay5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHRlbmRlZFN0YWNrT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFByZWZpeCB0byBiZSB1c2VkIGJ5IHBhcmFtZXRlciBleHBvcnRzIHRvIGJlIHN0b3JlZCBpbiB0aGVcbiAgICogU3lzdGVtcyBNYW5hZ2VyIFBhcmFtZXRlciBTdG9yZS5cbiAgICpcbiAgICogQGRlZmF1bHQgJHtzdGFnZU5hbWV9LyR7c3RhY2tJZH0vRXhwb3J0cy9cbiAgICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlckV4cG9ydHNQcmVmaXg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZsYWcgdG8gZGV0ZXJtaW5lIGlmIGEgZGVmYXVsdCBNb25pdG9yaW5nRmFjYWRlIGFuZFxuICAgKiBEZWZhdWx0RGFzaGJvYXJkRmFjdG9yeSBzaG91bGQgYmUgY3JlYXRlZCBpbiB0aGlzIHN0YWNrLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjcmVhdGVNb25pdG9yaW5nRmFjYWRlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUHJlZml4IGFkZGVkIHRvIGVhY2ggZGFzaGJvYXJkIG5hbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IHN0YWNrTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZGFzaGJvYXJkTmFtZVByZWZpeD86IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0byBkZXRlcm1pbmUgaWYgdGhlIGRlZmF1bHQgZGFzaGJvYXJkIHNob3VsZCBiZSBjcmVhdGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlRGFzaGJvYXJkPzogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBGbGFnIHRvIGRldGVybWluZSBpZiB0aGUgc3VtbWFyeSBkYXNoYm9hcmQgc2hvdWxkIGJlIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBjcmVhdGVTdW1tYXJ5RGFzaGJvYXJkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRmxhZyB0byBkZXRlcm1pbmUgaWYgdGhlIGFsYXJtIGRhc2hib2FyZCBzaG91bGQgYmUgY3JldGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlQWxhcm1EYXNoYm9hcmQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBSZW5kZXJpbmcgcHJlZmVyZW5jZSB0byBkYXNoYm9hcmRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBEYXNoYm9hcmRSZW5kZXJpbmdQcmVmZXJlbmNlLklOVEVSQUNUSVZFX09OTFlcbiAgICovXG4gIHJlYWRvbmx5IGRhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2U/OiBEYXNoYm9hcmRSZW5kZXJpbmdQcmVmZXJlbmNlO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IG5hbWVzcGFjZSBmb3IgbWV0cmljcy5cbiAgICovXG4gIHJlYWRvbmx5IG1ldHJpY05hbWVzcGFjZT86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmYXVsdCBtZXRyaWMgcGVyaW9kXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNQZXJpb2Q/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogUHJlZml4IGZvciBnZW5lcmF0ZWQgYWxhcm1zLlxuICAgKlxuICAgKiBAZGVmYXVsdCBzdGFja05hbWVcbiAgICovXG4gIHJlYWRvbmx5IGFsYXJtTmFtZVByZWZpeD86IHN0cmluZztcblxuICAvKipcbiAgICogRW5hYmxlcyBhbGFybSBhY3Rpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBhbGFybUFjdGlvbnNFbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2V0cyBzdGFuZGFyZCB0YWdzIGZvciB0aGlzIFN0YWNrLlxuICAgKi9cbiAgcmVhZG9ubHkgc3RhbmRhcmRUYWdzPzogU3RhbmRhcmRUYWdzUHJvcHM7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgRXh0U3RhY2suXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZW5kZWRTdGFja1Byb3BzIGV4dGVuZHMgRXh0ZW5kZWRTdGFja09wdGlvbnMsIFN0YWNrUHJvcHMge31cblxuLyoqXG4gKiBFeHRlbmRlZCB2ZXJzaW9uIG9mIFN0YWNrIHByb3ZpZGluZyBmdW5jdGlvbmFsaXR5IGZvciBwYXJhbWV0ZXIgZXhwb3J0cyBhbmQgbW9uaXRvcmluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEV4dGVuZGVkU3RhY2sgZXh0ZW5kcyBTdGFjayB7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHBhcmFtZXRlckV4cG9ydHM6IFBhcmFtZXRlclN0b3JlO1xuICByZWFkb25seSBwYXJhbWV0ZXJFeHBvcnRPcHRpb25zOiBQYXJhbWV0ZXJTdG9yZU9wdGlvbnM7XG4gIHJlYWRvbmx5IG1vbml0b3JpbmdGYWNhZGU/OiBNb25pdG9yaW5nRmFjYWRlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogRXh0ZW5kZWRTdGFja1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG5cbiAgICBjb25zdCBzdGFnZU5hbWUgPSBTdGFnZS5vZih0aGlzKT8uc3RhZ2VOYW1lO1xuXG4gICAgdGhpcy5wYXJhbWV0ZXJFeHBvcnRPcHRpb25zID0ge1xuICAgICAgcHJlZml4OiBwcm9wcz8ucGFyYW1ldGVyRXhwb3J0c1ByZWZpeCA/PyAoc3RhZ2VOYW1lID09PSB1bmRlZmluZWQgPyBcIlwiIDogYC8ke3N0YWdlTmFtZX1gKSArIGAvJHtpZH0vRXhwb3J0cy9gLFxuICAgICAgcmVnaW9uOiB0aGlzLnJlZ2lvblxuICAgIH07XG4gICAgdGhpcy5wYXJhbWV0ZXJFeHBvcnRzID0gbmV3IFBhcmFtZXRlclN0b3JlKHRoaXMsIFwiUGFyYW1ldGVyRXhwb3J0c1wiLCB0aGlzLnBhcmFtZXRlckV4cG9ydE9wdGlvbnMpO1xuXG4gICAgaWYgKHByb3BzPy5jcmVhdGVNb25pdG9yaW5nRmFjYWRlID8/IHRydWUpIHtcbiAgICAgIGNvbnN0IGRhc2hib2FyZEZhY3RvcnkgPSBuZXcgRGVmYXVsdERhc2hib2FyZEZhY3RvcnkodGhpcywgXCJEYXNoYm9hcmRGYWN0b3J5XCIsIHtcbiAgICAgICAgZGFzaGJvYXJkTmFtZVByZWZpeDogcHJvcHM/LmRhc2hib2FyZE5hbWVQcmVmaXggPz8gdGhpcy5zdGFja05hbWUsXG4gICAgICAgIGNyZWF0ZUFsYXJtRGFzaGJvYXJkOiBwcm9wcz8uY3JlYXRlQWxhcm1EYXNoYm9hcmQgPz8gZmFsc2UsXG4gICAgICAgIGNyZWF0ZURhc2hib2FyZDogcHJvcHM/LmNyZWF0ZURhc2hib2FyZCA/PyBmYWxzZSxcbiAgICAgICAgY3JlYXRlU3VtbWFyeURhc2hib2FyZDogcHJvcHM/LmNyZWF0ZVN1bW1hcnlEYXNoYm9hcmQgPz8gZmFsc2UsXG4gICAgICAgIHJlbmRlcmluZ1ByZWZlcmVuY2U6IHByb3BzPy5kYXNoYm9hcmRSZW5kZXJpbmdQcmVmZXJlbmNlID8/IERhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2UuSU5URVJBQ1RJVkVfT05MWVxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMubW9uaXRvcmluZ0ZhY2FkZSA9IG5ldyBNb25pdG9yaW5nRmFjYWRlKHRoaXMsIFwiTW9uaXRvcmluZ1wiLCB7XG4gICAgICAgIG1ldHJpY0ZhY3RvcnlEZWZhdWx0czoge1xuICAgICAgICAgIG5hbWVzcGFjZTogcHJvcHM/Lm1ldHJpY05hbWVzcGFjZSxcbiAgICAgICAgICBwZXJpb2Q6IHByb3BzPy5tZXRyaWNQZXJpb2RcbiAgICAgICAgfSxcbiAgICAgICAgYWxhcm1GYWN0b3J5RGVmYXVsdHM6IHtcbiAgICAgICAgICBhY3Rpb25zRW5hYmxlZDogcHJvcHM/LmFsYXJtQWN0aW9uc0VuYWJsZWQgPz8gdHJ1ZSxcbiAgICAgICAgICBhbGFybU5hbWVQcmVmaXg6IHRoaXMuc3RhY2tOYW1lXG4gICAgICAgIH0sXG4gICAgICAgIGRhc2hib2FyZEZhY3Rvcnk6IGRhc2hib2FyZEZhY3RvcnlcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIFNldHVwIHN0YW5kYXJkIHRhZ3NcbiAgICBjb25zdCBzdGFuZGFyZFRhZ3NQcm9wcyA9IFN0YW5kYXJkVGFncy5tZXJnZSh0aGlzLm5vZGUudHJ5R2V0Q29udGV4dChcInN0YW5kYXJkVGFnc1wiKSwgcHJvcHM/LnN0YW5kYXJkVGFncyk7XG4gICAgY29uc3Qgc3RhbmRhcmRUYWdzID0gbmV3IFN0YW5kYXJkVGFncyh0aGlzLCBzdGFuZGFyZFRhZ3NQcm9wcyk7XG5cbiAgICAvLyBBZGQgYXV0b21hdGlvbiBjb21wb25lbnQgdGFncyB0byB0aGlzIHN0YWNrXG4gICAgc3RhbmRhcmRUYWdzLmFkZEF1dG9tYXRpb25UYWdzKHtcbiAgICAgIC4uLkludGVybmFsQXV0b21hdGlvbkNvbXBvbmVudFRhZ3MsXG4gICAgICBpbmNsdWRlUmVzb3VyY2VUeXBlczogW1wiQVdTOjpDbG91ZEZvcm1hdGlvbjo6U3RhY2tcIl1cbiAgICB9KTtcblxuICAgIC8vIEFkZCBhdXRvbWF0aW9uIGNvbXBvbmVudCB0YWdzIHRvIEF1dG9tYXRpb25Db21wb25lbnQgY2hpbGRyZW5cbiAgICBBc3BlY3RzLm9mKHRoaXMpLmFkZChuZXcgQXV0b21hdGlvbkNvbXBvbmVudEFzcGVjdChzdGFuZGFyZFRhZ3NQcm9wcy5zdXBwcmVzc1RhZ2dpbmcpKTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIEhlbHBlciBtZXRob2QgdG8gZXhwb3J0cyBhIHBhcmFtZXRlciBhcyBhbiBTU00gUGFyYW1ldGVyLlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSB0aGUgcGFyYW1ldGVyIG5hbWVcbiAgICogQHBhcmFtIHZhbHVlIHRoZSBwYXJhbWV0ZXIgdmFsdWVcbiAgICovXG4gIGV4cG9ydFBhcmFtZXRlcihuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBTdHJpbmdQYXJhbWV0ZXIge1xuICAgIHJldHVybiB0aGlzLnBhcmFtZXRlckV4cG9ydHMud3JpdGUobmFtZSwgdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhlbHBlciBtZXRob2QgdG8gb3V0cHV0IGEgcGFyYW1ldGVyIGFzIGEgQ2ZuT3V0cHV0LlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSB0aGUgcGFyYW1ldGVyIG5hbWVcbiAgICogQHBhcmFtIHZhbHVlIHRoZSBwYXJhbWV0ZXIgdmFsdWVcbiAgICovXG4gIG91dHB1dFBhcmFtZXRlcihuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBDZm5PdXRwdXQge1xuICAgIHJldHVybiBuZXcgQ2ZuT3V0cHV0KHRoaXMsIG5hbWUsIHtcbiAgICAgIHZhbHVlXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
76
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtc3RhY2suanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJleHRlbmRlZC1zdGFjay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBbUY7QUFDbkYsMkNBQW9FO0FBR3BFLHlFQUltQztBQUNuQyxtREFLeUI7QUE2RnpCOztHQUVHO0FBQ0gsTUFBYSxhQUFjLFNBQVEsbUJBQUs7SUFNdEMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUEwQjs7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFeEIsTUFBTSxTQUFTLFNBQUcsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLDBDQUFFLFNBQVMsQ0FBQztRQUU1QyxJQUFJLENBQUMsc0JBQXNCLEdBQUc7WUFDNUIsTUFBTSxRQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxzQkFBc0IsbUNBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksU0FBUyxFQUFFLENBQUMsR0FBRyxJQUFJLEVBQUUsV0FBVztZQUM3RyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07U0FDcEIsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLHdCQUFjLENBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRWxHLFVBQUksS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLHNCQUFzQixtQ0FBSSxJQUFJLEVBQUU7WUFDekMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLG1EQUF1QixDQUFDLElBQUksRUFBRSxrQkFBa0IsRUFBRTtnQkFDN0UsbUJBQW1CLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLG1CQUFtQixtQ0FBSSxJQUFJLENBQUMsU0FBUztnQkFDakUsb0JBQW9CLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLG9CQUFvQixtQ0FBSSxLQUFLO2dCQUMxRCxlQUFlLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGVBQWUsbUNBQUksS0FBSztnQkFDaEQsc0JBQXNCLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLHNCQUFzQixtQ0FBSSxLQUFLO2dCQUM5RCxtQkFBbUIsUUFBRSxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsNEJBQTRCLG1DQUFJLHdEQUE0QixDQUFDLGdCQUFnQjthQUMxRyxDQUFDLENBQUM7WUFFSCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSw0Q0FBZ0IsQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFO2dCQUMvRCxxQkFBcUIsRUFBRTtvQkFDckIsU0FBUyxFQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxlQUFlO29CQUNqQyxNQUFNLEVBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFlBQVk7aUJBQzVCO2dCQUNELG9CQUFvQixFQUFFO29CQUNwQixjQUFjLFFBQUUsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLG1CQUFtQixtQ0FBSSxJQUFJO29CQUNsRCxlQUFlLEVBQUUsSUFBSSxDQUFDLFNBQVM7aUJBQ2hDO2dCQUNELGdCQUFnQixFQUFFLGdCQUFnQjthQUNuQyxDQUFDLENBQUM7U0FDSjtRQUVELHNCQUFzQjtRQUN0QixNQUFNLGlCQUFpQixHQUFHLDRCQUFZLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxZQUFZLENBQUMsQ0FBQztRQUMzRyxNQUFNLFlBQVksR0FBRyxJQUFJLDRCQUFZLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFFL0QsOENBQThDO1FBQzlDLFlBQVksQ0FBQywwQkFBMEIsQ0FBQztZQUN0QyxHQUFHLCtDQUErQjtZQUNsQyxTQUFTLEVBQUUsS0FBSztTQUNqQixDQUFDLENBQUM7UUFFSCxxSEFBcUg7UUFDckgsSUFBSSxDQUFDLHFCQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLHlDQUF5QixDQUFDLEVBQUU7WUFDdkYscUJBQU8sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUkseUNBQXlCLENBQUMsaUJBQWlCLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQztTQUN4RjtJQUNILENBQUM7SUFHRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUN6QyxPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxJQUFZLEVBQUUsS0FBYTtRQUN6QyxPQUFPLElBQUksdUJBQVMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQy9CLEtBQUs7U0FDTixDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUE3RUQsc0NBNkVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBc3BlY3RzLCBDZm5PdXRwdXQsIER1cmF0aW9uLCBTdGFjaywgU3RhY2tQcm9wcywgU3RhZ2V9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtQYXJhbWV0ZXJTdG9yZSwgUGFyYW1ldGVyU3RvcmVPcHRpb25zfSBmcm9tIFwiLi4vLi4vYXdzLXNzbVwiO1xuaW1wb3J0IHtDb25zdHJ1Y3R9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1N0cmluZ1BhcmFtZXRlcn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1zc21cIjtcbmltcG9ydCB7XG4gIERhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2UsXG4gIERlZmF1bHREYXNoYm9hcmRGYWN0b3J5LFxuICBNb25pdG9yaW5nRmFjYWRlXG59IGZyb20gXCJjZGstbW9uaXRvcmluZy1jb25zdHJ1Y3RzXCI7XG5pbXBvcnQge1xuICBBdXRvbWF0aW9uQ29tcG9uZW50QXNwZWN0LFxuICBJbnRlcm5hbEF1dG9tYXRpb25Db21wb25lbnRUYWdzLFxuICBTdGFuZGFyZFRhZ3MsXG4gIFN0YW5kYXJkVGFnc1Byb3BzXG59IGZyb20gXCIuL3N0YW5kYXJkLXRhZ3NcIjtcblxuLyoqXG4gKiBPcHRpb25zIGZvciBFeHRTdGFjay5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHRlbmRlZFN0YWNrT3B0aW9ucyB7XG5cbiAgLyoqXG4gICAqIFByZWZpeCB0byBiZSB1c2VkIGJ5IHBhcmFtZXRlciBleHBvcnRzIHRvIGJlIHN0b3JlZCBpbiB0aGVcbiAgICogU3lzdGVtcyBNYW5hZ2VyIFBhcmFtZXRlciBTdG9yZS5cbiAgICpcbiAgICogQGRlZmF1bHQgJHtzdGFnZU5hbWV9LyR7c3RhY2tJZH0vRXhwb3J0cy9cbiAgICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlckV4cG9ydHNQcmVmaXg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZsYWcgdG8gZGV0ZXJtaW5lIGlmIGEgZGVmYXVsdCBNb25pdG9yaW5nRmFjYWRlIGFuZFxuICAgKiBEZWZhdWx0RGFzaGJvYXJkRmFjdG9yeSBzaG91bGQgYmUgY3JlYXRlZCBpbiB0aGlzIHN0YWNrLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjcmVhdGVNb25pdG9yaW5nRmFjYWRlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUHJlZml4IGFkZGVkIHRvIGVhY2ggZGFzaGJvYXJkIG5hbWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IHN0YWNrTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZGFzaGJvYXJkTmFtZVByZWZpeD86IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0byBkZXRlcm1pbmUgaWYgdGhlIGRlZmF1bHQgZGFzaGJvYXJkIHNob3VsZCBiZSBjcmVhdGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlRGFzaGJvYXJkPzogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBGbGFnIHRvIGRldGVybWluZSBpZiB0aGUgc3VtbWFyeSBkYXNoYm9hcmQgc2hvdWxkIGJlIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICByZWFkb25seSBjcmVhdGVTdW1tYXJ5RGFzaGJvYXJkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRmxhZyB0byBkZXRlcm1pbmUgaWYgdGhlIGFsYXJtIGRhc2hib2FyZCBzaG91bGQgYmUgY3JldGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcmVhZG9ubHkgY3JlYXRlQWxhcm1EYXNoYm9hcmQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBSZW5kZXJpbmcgcHJlZmVyZW5jZSB0byBkYXNoYm9hcmRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBEYXNoYm9hcmRSZW5kZXJpbmdQcmVmZXJlbmNlLklOVEVSQUNUSVZFX09OTFlcbiAgICovXG4gIHJlYWRvbmx5IGRhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2U/OiBEYXNoYm9hcmRSZW5kZXJpbmdQcmVmZXJlbmNlO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IG5hbWVzcGFjZSBmb3IgbWV0cmljcy5cbiAgICovXG4gIHJlYWRvbmx5IG1ldHJpY05hbWVzcGFjZT86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmYXVsdCBtZXRyaWMgcGVyaW9kXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNQZXJpb2Q/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogUHJlZml4IGZvciBnZW5lcmF0ZWQgYWxhcm1zLlxuICAgKlxuICAgKiBAZGVmYXVsdCBzdGFja05hbWVcbiAgICovXG4gIHJlYWRvbmx5IGFsYXJtTmFtZVByZWZpeD86IHN0cmluZztcblxuICAvKipcbiAgICogRW5hYmxlcyBhbGFybSBhY3Rpb25zLlxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBhbGFybUFjdGlvbnNFbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2V0cyBzdGFuZGFyZCB0YWdzIGZvciB0aGlzIFN0YWNrLlxuICAgKi9cbiAgcmVhZG9ubHkgc3RhbmRhcmRUYWdzPzogU3RhbmRhcmRUYWdzUHJvcHM7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgRXh0U3RhY2suXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXh0ZW5kZWRTdGFja1Byb3BzIGV4dGVuZHMgRXh0ZW5kZWRTdGFja09wdGlvbnMsIFN0YWNrUHJvcHMge31cblxuLyoqXG4gKiBFeHRlbmRlZCB2ZXJzaW9uIG9mIFN0YWNrIHByb3ZpZGluZyBmdW5jdGlvbmFsaXR5IGZvciBwYXJhbWV0ZXIgZXhwb3J0cyBhbmQgbW9uaXRvcmluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEV4dGVuZGVkU3RhY2sgZXh0ZW5kcyBTdGFjayB7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHBhcmFtZXRlckV4cG9ydHM6IFBhcmFtZXRlclN0b3JlO1xuICByZWFkb25seSBwYXJhbWV0ZXJFeHBvcnRPcHRpb25zOiBQYXJhbWV0ZXJTdG9yZU9wdGlvbnM7XG4gIHJlYWRvbmx5IG1vbml0b3JpbmdGYWNhZGU/OiBNb25pdG9yaW5nRmFjYWRlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogRXh0ZW5kZWRTdGFja1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBwcm9wcyk7XG5cbiAgICBjb25zdCBzdGFnZU5hbWUgPSBTdGFnZS5vZih0aGlzKT8uc3RhZ2VOYW1lO1xuXG4gICAgdGhpcy5wYXJhbWV0ZXJFeHBvcnRPcHRpb25zID0ge1xuICAgICAgcHJlZml4OiBwcm9wcz8ucGFyYW1ldGVyRXhwb3J0c1ByZWZpeCA/PyAoc3RhZ2VOYW1lID09PSB1bmRlZmluZWQgPyBcIlwiIDogYC8ke3N0YWdlTmFtZX1gKSArIGAvJHtpZH0vRXhwb3J0cy9gLFxuICAgICAgcmVnaW9uOiB0aGlzLnJlZ2lvblxuICAgIH07XG4gICAgdGhpcy5wYXJhbWV0ZXJFeHBvcnRzID0gbmV3IFBhcmFtZXRlclN0b3JlKHRoaXMsIFwiUGFyYW1ldGVyRXhwb3J0c1wiLCB0aGlzLnBhcmFtZXRlckV4cG9ydE9wdGlvbnMpO1xuXG4gICAgaWYgKHByb3BzPy5jcmVhdGVNb25pdG9yaW5nRmFjYWRlID8/IHRydWUpIHtcbiAgICAgIGNvbnN0IGRhc2hib2FyZEZhY3RvcnkgPSBuZXcgRGVmYXVsdERhc2hib2FyZEZhY3RvcnkodGhpcywgXCJEYXNoYm9hcmRGYWN0b3J5XCIsIHtcbiAgICAgICAgZGFzaGJvYXJkTmFtZVByZWZpeDogcHJvcHM/LmRhc2hib2FyZE5hbWVQcmVmaXggPz8gdGhpcy5zdGFja05hbWUsXG4gICAgICAgIGNyZWF0ZUFsYXJtRGFzaGJvYXJkOiBwcm9wcz8uY3JlYXRlQWxhcm1EYXNoYm9hcmQgPz8gZmFsc2UsXG4gICAgICAgIGNyZWF0ZURhc2hib2FyZDogcHJvcHM/LmNyZWF0ZURhc2hib2FyZCA/PyBmYWxzZSxcbiAgICAgICAgY3JlYXRlU3VtbWFyeURhc2hib2FyZDogcHJvcHM/LmNyZWF0ZVN1bW1hcnlEYXNoYm9hcmQgPz8gZmFsc2UsXG4gICAgICAgIHJlbmRlcmluZ1ByZWZlcmVuY2U6IHByb3BzPy5kYXNoYm9hcmRSZW5kZXJpbmdQcmVmZXJlbmNlID8/IERhc2hib2FyZFJlbmRlcmluZ1ByZWZlcmVuY2UuSU5URVJBQ1RJVkVfT05MWVxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMubW9uaXRvcmluZ0ZhY2FkZSA9IG5ldyBNb25pdG9yaW5nRmFjYWRlKHRoaXMsIFwiTW9uaXRvcmluZ1wiLCB7XG4gICAgICAgIG1ldHJpY0ZhY3RvcnlEZWZhdWx0czoge1xuICAgICAgICAgIG5hbWVzcGFjZTogcHJvcHM/Lm1ldHJpY05hbWVzcGFjZSxcbiAgICAgICAgICBwZXJpb2Q6IHByb3BzPy5tZXRyaWNQZXJpb2RcbiAgICAgICAgfSxcbiAgICAgICAgYWxhcm1GYWN0b3J5RGVmYXVsdHM6IHtcbiAgICAgICAgICBhY3Rpb25zRW5hYmxlZDogcHJvcHM/LmFsYXJtQWN0aW9uc0VuYWJsZWQgPz8gdHJ1ZSxcbiAgICAgICAgICBhbGFybU5hbWVQcmVmaXg6IHRoaXMuc3RhY2tOYW1lXG4gICAgICAgIH0sXG4gICAgICAgIGRhc2hib2FyZEZhY3Rvcnk6IGRhc2hib2FyZEZhY3RvcnlcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIFNldHVwIHN0YW5kYXJkIHRhZ3NcbiAgICBjb25zdCBzdGFuZGFyZFRhZ3NQcm9wcyA9IFN0YW5kYXJkVGFncy5tZXJnZSh0aGlzLm5vZGUudHJ5R2V0Q29udGV4dChcInN0YW5kYXJkVGFnc1wiKSwgcHJvcHM/LnN0YW5kYXJkVGFncyk7XG4gICAgY29uc3Qgc3RhbmRhcmRUYWdzID0gbmV3IFN0YW5kYXJkVGFncyh0aGlzLCBzdGFuZGFyZFRhZ3NQcm9wcyk7XG5cbiAgICAvLyBBZGQgYXV0b21hdGlvbiBjb21wb25lbnQgdGFncyB0byB0aGlzIHN0YWNrXG4gICAgc3RhbmRhcmRUYWdzLmFkZEF1dG9tYXRpb25Db21wb25lbnRUYWdzKHtcbiAgICAgIC4uLkludGVybmFsQXV0b21hdGlvbkNvbXBvbmVudFRhZ3MsXG4gICAgICBwcm9wYWdhdGU6IGZhbHNlXG4gICAgfSk7XG5cbiAgICAvLyBBZGQgYXV0b21hdGlvbiBjb21wb25lbnQgdGFncyB0byBBdXRvbWF0aW9uQ29tcG9uZW50IGNoaWxkcmVuLCBidXQgZG9uJ3QgYWRkIHRoZSBhc3BlY3QgaWYgaXQncyBhbHJlYWR5IGJlZW4gYWRkZWRcbiAgICBpZiAoIUFzcGVjdHMub2YodGhpcykuYWxsLnJlZHVjZSgoYSwgdikgPT4gYSB8fCB2IGluc3RhbmNlb2YgQXV0b21hdGlvbkNvbXBvbmVudEFzcGVjdCkpIHtcbiAgICAgIEFzcGVjdHMub2YodGhpcykuYWRkKG5ldyBBdXRvbWF0aW9uQ29tcG9uZW50QXNwZWN0KHN0YW5kYXJkVGFnc1Byb3BzLnN1cHByZXNzVGFnZ2luZykpO1xuICAgIH1cbiAgfVxuXG5cbiAgLyoqXG4gICAqIEhlbHBlciBtZXRob2QgdG8gZXhwb3J0cyBhIHBhcmFtZXRlciBhcyBhbiBTU00gUGFyYW1ldGVyLlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSB0aGUgcGFyYW1ldGVyIG5hbWVcbiAgICogQHBhcmFtIHZhbHVlIHRoZSBwYXJhbWV0ZXIgdmFsdWVcbiAgICovXG4gIGV4cG9ydFBhcmFtZXRlcihuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBTdHJpbmdQYXJhbWV0ZXIge1xuICAgIHJldHVybiB0aGlzLnBhcmFtZXRlckV4cG9ydHMud3JpdGUobmFtZSwgdmFsdWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEhlbHBlciBtZXRob2QgdG8gb3V0cHV0IGEgcGFyYW1ldGVyIGFzIGEgQ2ZuT3V0cHV0LlxuICAgKlxuICAgKiBAcGFyYW0gbmFtZSB0aGUgcGFyYW1ldGVyIG5hbWVcbiAgICogQHBhcmFtIHZhbHVlIHRoZSBwYXJhbWV0ZXIgdmFsdWVcbiAgICovXG4gIG91dHB1dFBhcmFtZXRlcihuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBDZm5PdXRwdXQge1xuICAgIHJldHVybiBuZXcgQ2ZuT3V0cHV0KHRoaXMsIG5hbWUsIHtcbiAgICAgIHZhbHVlXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -18,6 +18,12 @@ export interface AutomationComponentTagsProps extends TagProps {
|
|
|
18
18
|
* The vendor of the component.
|
|
19
19
|
*/
|
|
20
20
|
readonly vendor?: string;
|
|
21
|
+
/**
|
|
22
|
+
* Determines if tags are propagated to children. Default is true.
|
|
23
|
+
*
|
|
24
|
+
* @default - true
|
|
25
|
+
*/
|
|
26
|
+
readonly propagate?: boolean;
|
|
21
27
|
}
|
|
22
28
|
/**
|
|
23
29
|
* Properties for automation tags.
|
|
@@ -76,21 +76,44 @@ class StandardTags {
|
|
|
76
76
|
* @param props optional properties for the tags
|
|
77
77
|
*/
|
|
78
78
|
addAutomationComponentTags(props) {
|
|
79
|
+
var _a, _b, _c, _d;
|
|
79
80
|
if (props && !this.suppressed) {
|
|
80
81
|
if (props.id === "{{TMCDK}}") {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
if ((_a = props.propagate) !== null && _a !== void 0 ? _a : true) {
|
|
83
|
+
this.tags.add("automation:component-id", this.scope.constructor.name, props);
|
|
84
|
+
this.tags.add("automation:component-url", "https://github.com/truemark/cdk", props);
|
|
85
|
+
this.tags.add("automation:component-vendor", "TrueMark", props);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
new aws_cdk_lib_1.Tag("automation:component-id", this.scope.constructor.name).visit(this.scope);
|
|
89
|
+
new aws_cdk_lib_1.Tag("automation:component-url", "https://github.com/truemark/cdk").visit(this.scope);
|
|
90
|
+
new aws_cdk_lib_1.Tag("automation:component-vendor", "TrueMark").visit(this.scope);
|
|
91
|
+
}
|
|
84
92
|
}
|
|
85
93
|
else {
|
|
86
94
|
if (props.id) {
|
|
87
|
-
|
|
95
|
+
if ((_b = props.propagate) !== null && _b !== void 0 ? _b : true) {
|
|
96
|
+
this.tags.add("automation:component-id", props.id, props);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
new aws_cdk_lib_1.Tag("automation:component-id", props.id).visit(this.scope);
|
|
100
|
+
}
|
|
88
101
|
}
|
|
89
102
|
if (props.url) {
|
|
90
|
-
|
|
103
|
+
if ((_c = props.propagate) !== null && _c !== void 0 ? _c : true) {
|
|
104
|
+
this.tags.add("automation:component-url", props.url, props);
|
|
105
|
+
}
|
|
106
|
+
else {
|
|
107
|
+
new aws_cdk_lib_1.Tag("automation:component-url", props.url).visit(this.scope);
|
|
108
|
+
}
|
|
91
109
|
}
|
|
92
110
|
if (props.vendor) {
|
|
93
|
-
|
|
111
|
+
if ((_d = props.propagate) !== null && _d !== void 0 ? _d : true) {
|
|
112
|
+
this.tags.add("automation:component-vendor", props.vendor, props);
|
|
113
|
+
}
|
|
114
|
+
else {
|
|
115
|
+
new aws_cdk_lib_1.Tag("automation:component-vendor", props.vendor).visit(this.scope);
|
|
116
|
+
}
|
|
94
117
|
}
|
|
95
118
|
}
|
|
96
119
|
}
|
|
@@ -258,4 +281,4 @@ class AutomationComponentAspect {
|
|
|
258
281
|
}
|
|
259
282
|
}
|
|
260
283
|
exports.AutomationComponentAspect = AutomationComponentAspect;
|
|
261
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtdGFncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInN0YW5kYXJkLXRhZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQTJEO0FBZ0czRDs7R0FFRztBQUNILElBQVksa0JBeUJYO0FBekJELFdBQVksa0JBQWtCO0lBQzVCOzs7T0FHRztJQUNILDREQUFzQyxDQUFBO0lBRXRDOzs7O09BSUc7SUFDSCwrQ0FBeUIsQ0FBQTtJQUV6Qjs7OztPQUlHO0lBQ0gsK0NBQXlCLENBQUE7SUFFekI7O09BRUc7SUFDSCx1Q0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBekJXLGtCQUFrQixHQUFsQiwwQkFBa0IsS0FBbEIsMEJBQWtCLFFBeUI3QjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxlQWlCWDtBQWpCRCxXQUFZLGVBQWU7SUFFekI7O09BRUc7SUFDSCw4QkFBVyxDQUFBO0lBRVg7O09BRUc7SUFDSCw4QkFBVyxDQUFBO0lBRVg7OztPQUdHO0lBQ0gsOEJBQVcsQ0FBQTtBQUNiLENBQUMsRUFqQlcsZUFBZSxHQUFmLHVCQUFlLEtBQWYsdUJBQWUsUUFpQjFCO0FBa0dEOztHQUVHO0FBQ0gsTUFBYSxZQUFZO0lBaUJ2Qjs7Ozs7T0FLRztJQUNILFlBQVksS0FBZ0IsRUFBRSxLQUF5Qjs7UUFDckQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxTQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxlQUFlLG1DQUFJLEtBQUssQ0FBQztRQUVsRCxJQUFJLENBQUMsMEJBQTBCLENBQUMsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLHVCQUF1QixDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtB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LElBQWdCO1FBQ3BCLElBQUkscUJBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25ELElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxFQUFFLHVCQUF1QixFQUFFLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUE7U0FDbEY7SUFDSCxDQUFDO0NBQ0Y7QUFiRCw4REFhQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29uc3RydWN0LCBJQ29uc3RydWN0fSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHtJQXNwZWN0LCBTdGFjaywgVGFnUHJvcHMsIFRhZ3N9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGF1dG9tYXRpb24gY29tcG9uZW50IHRhZ3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b21hdGlvbkNvbXBvbmVudFRhZ3NQcm9wcyBleHRlbmRzIFRhZ1Byb3BzIHtcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBjb21wb25lbnQuIERlZmF1bHQgaXMgc2NvcGUuY29uc3RydWN0b3IubmFtZS5cbiAgICpcbiAgICogQGRlZmF1bHQgc2NvcGUuY29uc3RydWN0b3IubmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIFVSTCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgdXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmVuZG9yIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICByZWFkb25seSB2ZW5kb3I/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYXV0b21hdGlvbiB0YWdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9tYXRpb25UYWdzUHJvcHMgZXh0ZW5kcyBUYWdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgc3RhY2suIElmIG9uZSBpZiBub3QgcHJvdmlkZWQsIHRoZSBuYW1lIG9mIHRoZSBzdGFjayBpcyB1c2VkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFN0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIFVSTCB0byB3aGVyZSB0aGUgYXV0b21hdGlvbiBpcyBzdG9yZWQgb3IgcHVibGlzaGVkLiBUaGlzIGZpZWxkIGlzIHJlcXVpcmVkXG4gICAqIHdoZW4gYXBwbHlpbmcgYXV0b21hdGlvbiB0YWdzLlxuICAgKi9cbiAgcmVhZG9ubHkgdXJsPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNvc3QgY2VudGVyIHRhZ3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29zdENlbnRlclRhZ3NQcm9wcyBleHRlbmRzIFRhZ1Byb3BzIHtcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgYnVzaW5lc3MgdW5pdCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGJ1c2luZXNzVW5pdE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIGJ1c2luZXNzIHVuaXQgcmVzcG9uc2libGUgZm9yIHRoZSBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqIElmIG5vdCBzZXQsIHRoZSB0YWcgaXMgbm90IGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBidXNpbmVzc1VuaXRJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgcHJvamVjdCByZXNwb25zaWJsZSBmb3IgY3JlYXRpbmcgdGhlIGNvc3RzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIHByb2plY3QgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5nIHRoZSBjb3N0cy5cbiAgICogSWYgbm90IHNldCwgdGhlIHRhZyBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZW52aXJvbm1lbnQgaW5jdXJyaW5nIHRoZSBjb3N0cy4gRXhhbXBsZSBcInN0YWdlXCIgb3IgXCJwcm9kXCJcbiAgICogSWYgbm90IHNldCwgdGhlIHRhZyBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBjb250YWN0IHJlc3BvbnNpYmxlIGZvciBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqIElmIG5vdCBzZXQsIHRoZSB0YWcgaXMgbm90IGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogRW1haWwgb2YgdGhlIGNvbnRhY3QgcmVzcG9uc2libGUgZm9yIHRoZSBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqIElmIG5vdCBzZXQsIHRoZSB0YWcgaXMgbm90IGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0RW1haWw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBob25lIG51bWJlciBvZiB0aGUgY29udGFjdCByZXNwb25zaWJsZSBmb3IgY29zdHMgYXNzb2NpYXRlZCB3aXRoIHRoZSB0YWdnZWQgcmVzb3VyY2VzLlxuICAgKiBJZiBub3Qgc2V0LCB0aGUgdGFnIGlzIG5vdCBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFjdFBob25lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEhvbGRzIHZhbHVlcyB0aGF0IG1heSBiZSBhcHBsaWVkIHRvIHRoZSBkYXRhLWNsYXNzaWZpY2F0aW9uIHNlY3VyaXR5IHRhZy5cbiAqL1xuZXhwb3J0IGVudW0gRGF0YUNsYXNzaWZpY2F0aW9uIHtcbiAgLyoqXG4gICAqIFVzZWQgd2hlbiBkYXRhIG1heSBub3QgbGVhdmUgdGhlIGdlb2dyYXBoaWMgcmVnaW9uIGluIHdoaWNoIGl0IGlzIHN0b3JlZC5cbiAgICogVGhpcyBpcyB1c3VhbGx5IHJlbGF0ZWQgdG8gZ292ZXJubWVudCByZXN0cmljdGlvbnMgYXBwbGllZCB0byB0aGUgZGF0YS5cbiAgICovXG4gIEV4cG9ydFJlc3RyaWN0ZWQgPSBcImV4cG9ydC1yZXN0cmljdGVkXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiB1bmF1dGhvcml6ZWQgZGlzY2xvc3VyZSwgYWx0ZXJhdGlvbiBvciBkZXN0cnVjdGlvbiBvZiBkYXRhIHdvdWxkXG4gICAqIHJlc3VsdCBpbiBhIHNpZ25pZmljYW50IHJpc2sgdG8gdGhlIG9yZ2FuaXphdGlvbi4gVGhpcyBpbmNsdWRlcyBQSUksIFBISVxuICAgKiBhbmQgUENJIGRhdGEuXG4gICAqL1xuICBSZXN0cmljdGVkID0gXCJyZXN0cmljdGVkXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiB1bmF1dGhvcml6ZWQgZGlzY2xvc3VyZSwgYWx0ZXJhdGlvbiBvciBkZXN0cnVjdGlvbiBvZiB0aGUgZGF0YSB3b3VsZFxuICAgKiByZXN1bHQgaW4gbW9kZXJhdGUgcmlzay4gVGhpcyBpbmNsdWRlcyBhbGwgZGF0YSB0aGF0IGlzIG5vdCBpbiBvbmUgb2YgdGhlIG90aGVyXG4gICAqIGNsYXNzaWZpY2F0aW9ucy5cbiAgICovXG4gIENvbnRyb2xsZWQgPSBcImNvbnRyb2xsZWRcIixcblxuICAvKipcbiAgICogVXNlZCB3aGVuIGhhbmRsZWQgb3Igc3RvcmVkIGRhdGEgcmVhZGlseSBhdmFpbGFibGUgdG8gdGhlIHB1YmxpYy5cbiAgICovXG4gIFB1YmxpYyA9IFwicHVibGljXCJcbn1cblxuLyoqXG4gKiBIb2xkcyB2YWx1ZXMgdGhhdCBtYXkgYmUgYXBwbGllZCB0byB0aGUgZGF0YS1zZW5zaXRpdml0eSBzZWN1cml0eSB0YWcuXG4gKi9cbmV4cG9ydCBlbnVtIERhdGFTZW5zaXRpdml0eSB7XG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiByZXNvdXJjZXMgYXJlIGluIFBDSSBzY29wZS5cbiAgICovXG4gIFBDSSA9IFwicGNpXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiByZXNvdXJjZXMgaGFuZGxlIG9yIHN0b3JlIHBlcnNvbmFsbHkgaWRlbnRpZmlhYmxlIGluZm9ybWF0aW9uLlxuICAgKi9cbiAgUElJID0gXCJwaWlcIixcblxuICAvKipcbiAgICogVXNlZCB3aGVuIHJlc291cmNlcyBoYW5kbGUgb3Igc3RvcmUgcGVyc29uYWwgaGVhbHRoIGluZm9ybWF0aW9uIGFuZCBhcmVcbiAgICogc3ViamVjdCB0byBISVBQQSBydWxlcy5cbiAgICovXG4gIFBISSA9IFwicGhpXCJcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBzZWN1cml0eSB0YWdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5VGFnc1Byb3BzIGV4dGVuZHMgVGFnUHJvcHMge1xuXG4gIC8qKlxuICAgKiBEYXRhIGNsYXNzaWZpY2F0aW9uIHZhbHVlLiBTZWUgdGhlIFRydWVNYXJrIEFXUyB0YWdnaW5nIHN0cmF0ZWd5IGRvY3VtZW50YXRpb24uXG4gICAqL1xuICByZWFkb25seSBkYXRhQ2xhc3NpZmljYXRpb246IERhdGFDbGFzc2lmaWNhdGlvbjtcblxuICAvKipcbiAgICogRGF0YSBzZW5zaXRpdml0eS4gU2VlIHRoZSBUcnVlTWFyayBBV1MgdGFnZ2luZyBzdHJhdGVneSBkb2N1bWVudGF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVNlbnNpdGl2aXR5PzogRGF0YVNlbnNpdGl2aXR5O1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHRlYW0gdGFncy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZWFtVGFnc1Byb3BzIGV4dGVuZHMgVGFnUHJvcHMge1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSB0ZWFtLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGlmIGRpZmZlcmVudCB0aGFuIHRoZSB0ZWFtIG5hbWUuXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgdGVhbSBsZWFkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFjdE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVtYWlsIG9mIHRoZSB0ZWFtIGxlYWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0RW1haWw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBob25lIG51bWJlciBmb3IgdGhlIHRlYW0gbGVhZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhY3RQaG9uZT86IHN0cmluZztcblxuICAvKipcbiAgICogQnVzaW5lc3MgdW5pdCB0aGUgdGVhbSBiZWxvbmdzIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgYnVzaW5lc3NVbml0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXBhcnRtZW50IHRoZSB0ZWFtIGJlbG9uZ3MgdG8uXG4gICAqL1xuICByZWFkb25seSBkZXBhcnRtZW50Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnRhaW5zIHN0YW5kYXJkIHRhZ2dpbmcgcHJvcGVydGllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFuZGFyZFRhZ3NQcm9wcyB7XG5cbiAgLyoqXG4gICAqIEF1dG9tYXRpb24gY29tcG9uZW50IHRhZ3MuXG4gICAqL1xuICByZWFkb25seSBhdXRvbWF0aW9uQ29tcG9uZW50VGFncz86IEF1dG9tYXRpb25Db21wb25lbnRUYWdzUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF1dG9tYXRpb24gdGFncyB0byBhcHBseSB0byBjcmVhdGVkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGF1dG9tYXRpb25UYWdzPzogQXV0b21hdGlvblRhZ3NQcm9wcztcblxuICAvKipcbiAgICogQ29zdCBjZW50ZXIgdGFncyB0byBhcHBseSB0byBjcmVhdGVkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGNvc3RDZW50ZXJUYWdzPzogQ29zdENlbnRlclRhZ3NQcm9wcztcblxuICAvKipcbiAgICogU2VjdXJpdHkgdGFncyB0byBhcHBseSB0byBjcmVhdGVkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IHNlY3VyaXR5VGFncz86IFNlY3VyaXR5VGFnc1Byb3BzO1xuXG4gIC8qKlxuICAgKiBUZWFtIHRhZ3MgdG8gYXBwbHkgdG8gY3JlYXRlZCByZXNvdXJjZXMuXG4gICAqL1xuICByZWFkb25seSB0ZWFtVGFncz86IFRlYW1UYWdzUHJvcHM7XG5cbiAgLyoqXG4gICAqIFNldHRpbmcgdGhpcyB0byB0cnVlIHdpbGwgc3VwcHJlc3MgdGhlIGNyZWF0aW9uIG9mIHRhZ3MgdGhpcyByZXNvdXJjZSBjcmVhdGVzLlxuICAgKiBEZWZhdWx0IHZhbHVlIGlzIGZhbHNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGZhbHNlXG4gICAqL1xuICByZWFkb25seSBzdXBwcmVzc1RhZ2dpbmc/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGNvbnZlbmllbmNlIG1ldGhvZHMgdG8gdGFnIHJlc291cmNlcyBmb2xsb3dpbmcgVHJ1ZU1hcmsncyB0YWdnaW5nIHN0cmF0ZWd5LlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRUYWdzIHtcblxuICAvKipcbiAgICogVGhlIHNjb3BlIGJlaW5nIHRhZ2dlZC5cbiAgICovXG4gIHJlYWRvbmx5IHNjb3BlOiBDb25zdHJ1Y3Q7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWdzLlxuICAgKi9cbiAgcmVhZG9ubHkgdGFnczogVGFncztcblxuICAvKipcbiAgICogSWYgdGFncyB3ZXJlIHN1cHByZXNzZWQuXG4gICAqL1xuICByZWFkb25seSBzdXBwcmVzc2VkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IFN0YW5kYXJkVGFncyBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIHRoZSBzY29wZSB0byB0YWdcbiAgICogQHBhcmFtIHByb3BzIHRoZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBwcm9wcz86IFN0YW5kYXJkVGFnc1Byb3BzKSB7XG4gICAgdGhpcy5zY29wZSA9IHNjb3BlO1xuICAgIHRoaXMudGFncyA9IFRhZ3Mub2Yoc2NvcGUpO1xuICAgIHRoaXMuc3VwcHJlc3NlZCA9IHByb3BzPy5zdXBwcmVzc1RhZ2dpbmcgPz8gZmFsc2U7XG5cbiAgICB0aGlzLmFkZEF1dG9tYXRpb25Db21wb25lbnRUYWdzKHByb3BzPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncyk7XG4gICAgdGhpcy5hZGRBdXRvbWF0aW9uVGFncyhwcm9wcz8uYXV0b21hdGlvblRhZ3MpO1xuICAgIHRoaXMuYWRkQ29zdENlbnRlclRhZ3MocHJvcHM/LmNvc3RDZW50ZXJUYWdzKTtcbiAgICB0aGlzLmFkZFNlY3VyaXR5VGFncyhwcm9wcz8uc2VjdXJpdHlUYWdzKTtcbiAgICB0aGlzLmFkZFRlYW1UYWdzKHByb3BzPy50ZWFtVGFncyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhdXRvbWF0aW9uIGNvbXBvbmVudCB0YWdzLiBUaGVzZSBhcmUgbWVhbnQgdG8gYmUgdXNlZCBpbiBpbmRpdmlkdWFsIGNvbnN0cnVjdHMgdG8gaWRlbnRpZnlcbiAgICogd2hhdCByZXNvdXJjZXMgd2VyZSBzdG9vZCB1cCBieSBzcGVjaWZpYyBjb25zdHJ1Y3RzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgb3B0aW9uYWwgcHJvcGVydGllcyBmb3IgdGhlIHRhZ3NcbiAgICovXG4gIGFkZEF1dG9tYXRpb25Db21wb25lbnRUYWdzKHByb3BzPzogQXV0b21hdGlvbkNvbXBvbmVudFRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFncyB7XG4gICAgaWYgKHByb3BzICYmICF0aGlzLnN1cHByZXNzZWQpIHtcbiAgICAgIGlmIChwcm9wcy5pZCA9PT0gXCJ7e1RNQ0RLfX1cIikge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjpjb21wb25lbnQtaWRcIiwgdGhpcy5zY29wZS5jb25zdHJ1Y3Rvci5uYW1lLCBwcm9wcyk7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC11cmxcIiwgXCJodHRwczovL2dpdGh1Yi5jb20vdHJ1ZW1hcmsvY2RrXCIsIHByb3BzKTtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LXZlbmRvclwiLCBcIlRydWVNYXJrXCIsIHByb3BzKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmIChwcm9wcy5pZCkge1xuICAgICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC1pZFwiLCBwcm9wcy5pZCwgcHJvcHMpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wcy51cmwpIHtcbiAgICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjpjb21wb25lbnQtdXJsXCIsIHByb3BzLnVybCwgcHJvcHMpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wcy52ZW5kb3IpIHtcbiAgICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjpjb21wb25lbnQtdmVuZG9yXCIsIHByb3BzLnZlbmRvciwgcHJvcHMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYXV0b21hdGlvbiB0YWdzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgcHJvcGVydGllcyBmb3IgdGhlIHRhZ3NcbiAgICovXG4gIGFkZEF1dG9tYXRpb25UYWdzKHByb3BzPzogQXV0b21hdGlvblRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFncyB7XG4gICAgaWYgKCF0aGlzLnN1cHByZXNzZWQpIHtcbiAgICAgIGxldCBpZDogc3RyaW5nIHwgdW5kZWZpbmVkID0gcHJvcHM/LmlkXG4gICAgICBpZiAoIWlkKSB7XG4gICAgICAgIGlkID0gU3RhY2sub2YodGhpcy5zY29wZSkuc3RhY2tOYW1lXG4gICAgICB9XG4gICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjppZFwiLCBpZCwgcHJvcHMpO1xuICAgICAgaWYgKHByb3BzPy51cmwpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246dXJsXCIsIHByb3BzLnVybCwgcHJvcHMpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGNvc3QgY2VudGVyIHRhZ3MuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBwcm9wZXJ0aWVzIGZvciB0aGUgdGFnc1xuICAgKi9cbiAgYWRkQ29zdENlbnRlclRhZ3MocHJvcHM/OiBDb3N0Q2VudGVyVGFnc1Byb3BzKTogU3RhbmRhcmRUYWdzIHtcbiAgICBpZiAocHJvcHMgJiYgIXRoaXMuc3VwcHJlc3NlZCkge1xuICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmJ1c2luZXNzLXVuaXQtbmFtZVwiLCBwcm9wcy5idXNpbmVzc1VuaXROYW1lLCBwcm9wcyk7XG4gICAgICBpZiAocHJvcHMuYnVzaW5lc3NVbml0SWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmJ1c2luZXNzLXVuaXQtaWRcIiwgcHJvcHMuYnVzaW5lc3NVbml0SWQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpwcm9qZWN0LW5hbWVcIiwgcHJvcHMucHJvamVjdE5hbWUsIHByb3BzKTtcbiAgICAgIGlmIChwcm9wcy5wcm9qZWN0SWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOnByb2plY3QtaWRcIiwgcHJvcHMucHJvamVjdElkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuZW52aXJvbm1lbnQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmVudmlyb25tZW50XCIsIHByb3BzLmVudmlyb25tZW50LCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdE5hbWUpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmNvbnRhY3QtbmFtZVwiLCBwcm9wcy5jb250YWN0TmFtZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmNvbnRhY3RFbWFpbCkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6Y29udGFjdC1lbWFpbFwiLCBwcm9wcy5jb250YWN0RW1haWwsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5jb250YWN0UGhvbmUpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmNvbnRhY3QtcGhvbmVcIiwgcHJvcHMuY29udGFjdFBob25lLCBwcm9wcyk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgc2VjdXJpdHkgdGFncy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIHByb3BlcnRpZXMgZm9yIHNlY3VyaXR5IHRhZ3NcbiAgICovXG4gIGFkZFNlY3VyaXR5VGFncyhwcm9wcz86IFNlY3VyaXR5VGFnc1Byb3BzKTogU3RhbmRhcmRUYWdzIHtcbiAgICBpZiAocHJvcHMgJiYgIXRoaXMuc3VwcHJlc3NlZCkge1xuICAgICAgdGhpcy50YWdzLmFkZChcInNlY3VyaXR5OmRhdGEtY2xhc3NpZmljYXRpb25cIiwgcHJvcHMuZGF0YUNsYXNzaWZpY2F0aW9uLCBwcm9wcyk7XG4gICAgICBpZiAocHJvcHMuZGF0YVNlbnNpdGl2aXR5KSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJzZWN1cml0eTpkYXRhLXNlbnNpdGl2aXR5XCIsIHByb3BzLmRhdGFTZW5zaXRpdml0eSwgcHJvcHMpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIHRlYW0gdGFncy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIHByb3BlcnRpZXMgZm9yIHRlYW0gdGFnc1xuICAgKi9cbiAgYWRkVGVhbVRhZ3MocHJvcHM/OiBUZWFtVGFnc1Byb3BzKTogU3RhbmRhcmRUYWdzIHtcbiAgICBpZiAocHJvcHMgJiYgIXRoaXMuc3VwcHJlc3NlZCkge1xuICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06bmFtZVwiLCBwcm9wcy5uYW1lLCBwcm9wcyk7XG4gICAgICBpZiAocHJvcHMuaWQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06aWRcIiwgcHJvcHMuaWQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5jb250YWN0TmFtZSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwidGVhbTpjb250YWN0LW5hbWVcIiwgcHJvcHMuY29udGFjdE5hbWUsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5jb250YWN0RW1haWwpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06Y29udGFjdC1lbWFpbFwiLCBwcm9wcy5jb250YWN0RW1haWwsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5jb250YWN0UGhvbmUpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06Y29udGFjdC1ob25lXCIsIHByb3BzLmNvbnRhY3RQaG9uZSwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmJ1c2luZXNzVW5pdCkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwidGVhbTpidXNpbmVzcy11bml0XCIsIHByb3BzLmJ1c2luZXNzVW5pdCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmRlcGFydG1lbnQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06ZGVwYXJ0bWVudFwiLCBwcm9wcy5kZXBhcnRtZW50LCBwcm9wcyk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgc3RhdGljIG1lcmdlKGZyb20/OiBTdGFuZGFyZFRhZ3NQcm9wcywgdG8/OiBTdGFuZGFyZFRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFnc1Byb3BzIHtcbiAgICBsZXQgYXV0b21hdGlvbkNvbXBvbmVudFRhZ3M6IEF1dG9tYXRpb25Db21wb25lbnRUYWdzUHJvcHMgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKGZyb20/LmF1dG9tYXRpb25Db21wb25lbnRUYWdzIHx8IHRvPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncykge1xuICAgICAgYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MgPSB7XG4gICAgICAgIGlkOiB0bz8uYXV0b21hdGlvbkNvbXBvbmVudFRhZ3M/LmlkID8/IGZyb20/LmF1dG9tYXRpb25Db21wb25lbnRUYWdzPy5pZCA/PyBcIlwiLFxuICAgICAgICAuLi5mcm9tPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncyxcbiAgICAgICAgLi4udG8/LmF1dG9tYXRpb25Db21wb25lbnRUYWdzXG4gICAgICB9XG4gICAgfVxuXG4gICAgbGV0IGF1dG9tYXRpb25UYWdzOiBBdXRvbWF0aW9uVGFnc1Byb3BzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChmcm9tPy5hdXRvbWF0aW9uVGFncyB8fCB0bz8uYXV0b21hdGlvblRhZ3MpIHtcbiAgICAgIGF1dG9tYXRpb25UYWdzID0ge1xuICAgICAgICBpZDogdG8/LmF1dG9tYXRpb25UYWdzPy5pZCA/PyBmcm9tPy5hdXRvbWF0aW9uVGFncz8uaWQgPz8gXCJcIixcbiAgICAgICAgLi4uZnJvbT8uYXV0b21hdGlvblRhZ3MsXG4gICAgICAgIC4uLnRvPy5hdXRvbWF0aW9uVGFnc1xuICAgICAgfVxuICAgIH1cbiAgICBsZXQgY29zdENlbnRlclRhZ3M6IENvc3RDZW50ZXJUYWdzUHJvcHMgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKGZyb20/LmNvc3RDZW50ZXJUYWdzIHx8IHRvPy5jb3N0Q2VudGVyVGFncykge1xuICAgICAgY29zdENlbnRlclRhZ3MgPSB7XG4gICAgICAgIGJ1c2luZXNzVW5pdE5hbWU6IHRvPy5jb3N0Q2VudGVyVGFncz8uYnVzaW5lc3NVbml0TmFtZSA/PyBmcm9tPy5jb3N0Q2VudGVyVGFncz8uYnVzaW5lc3NVbml0TmFtZSA/PyBcIlwiLFxuICAgICAgICBwcm9qZWN0TmFtZTogdG8/LmNvc3RDZW50ZXJUYWdzPy5wcm9qZWN0TmFtZSA/PyBmcm9tPy5jb3N0Q2VudGVyVGFncz8ucHJvamVjdE5hbWUgPz8gXCJcIixcbiAgICAgICAgLi4uZnJvbT8uY29zdENlbnRlclRhZ3MsXG4gICAgICAgIC4uLnRvPy5jb3N0Q2VudGVyVGFnc1xuICAgICAgfVxuICAgIH1cbiAgICBsZXQgc2VjdXJpdHlUYWdzOiBTZWN1cml0eVRhZ3NQcm9wcyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAoZnJvbT8uc2VjdXJpdHlUYWdzIHx8IHRvPy5zZWN1cml0eVRhZ3MpIHtcbiAgICAgIHNlY3VyaXR5VGFncyA9IHtcbiAgICAgICAgZGF0YUNsYXNzaWZpY2F0aW9uOiB0bz8uc2VjdXJpdHlUYWdzPy5kYXRhQ2xhc3NpZmljYXRpb24gPz8gZnJvbT8uc2VjdXJpdHlUYWdzPy5kYXRhQ2xhc3NpZmljYXRpb24gPz8gRGF0YUNsYXNzaWZpY2F0aW9uLkNvbnRyb2xsZWQsXG4gICAgICAgIC4uLmZyb20/LnNlY3VyaXR5VGFncyxcbiAgICAgICAgLi4udG8/LnNlY3VyaXR5VGFnc1xuICAgICAgfVxuICAgIH1cbiAgICBsZXQgdGVhbVRhZ3M6IFRlYW1UYWdzUHJvcHMgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKGZyb20/LnRlYW1UYWdzIHx8IHRvPy50ZWFtVGFncykge1xuICAgICAgdGVhbVRhZ3MgPSB7XG4gICAgICAgIG5hbWU6IHRvPy50ZWFtVGFncz8ubmFtZSA/PyBmcm9tPy50ZWFtVGFncz8ubmFtZSA/PyBcIlwiLFxuICAgICAgICAuLi5mcm9tPy50ZWFtVGFncyxcbiAgICAgICAgLi4udG8/LnRlYW1UYWdzXG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICBhdXRvbWF0aW9uQ29tcG9uZW50VGFncyxcbiAgICAgIGF1dG9tYXRpb25UYWdzLFxuICAgICAgY29zdENlbnRlclRhZ3MsXG4gICAgICBzZWN1cml0eVRhZ3MsXG4gICAgICB0ZWFtVGFnc1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIElBdXRvbWF0aW9uQ29tcG9uZW50IHtcblxuICByZWFkb25seSBhdXRvbWF0aW9uQ29tcG9uZW50VGFncz86IEF1dG9tYXRpb25Db21wb25lbnRUYWdzUHJvcHM7XG5cbn1cblxuZXhwb3J0IGNvbnN0IEludGVybmFsQXV0b21hdGlvbkNvbXBvbmVudFRhZ3M6IEF1dG9tYXRpb25Db21wb25lbnRUYWdzUHJvcHMgPSB7XG4gIGlkOiBcInt7VE1DREt9fVwiXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0F1dG9tYXRpb25Db21wb25lbnQobzogYW55KTogbyBpcyBJQXV0b21hdGlvbkNvbXBvbmVudCB7XG4gIHJldHVybiBcImF1dG9tYXRpb25Db21wb25lbnRUYWdzXCIgaW4gbztcbn1cblxuZXhwb3J0IGNsYXNzIEF1dG9tYXRpb25Db21wb25lbnRBc3BlY3QgaW1wbGVtZW50cyBJQXNwZWN0IHtcblxuICByZWFkb25seSBzdXBwcmVzc2VkOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHN1cHByZXNzVGFnZ2luZz86IGJvb2xlYW4pIHtcbiAgICB0aGlzLnN1cHByZXNzZWQgPSBzdXBwcmVzc1RhZ2dpbmcgPz8gZmFsc2U7XG4gIH1cblxuICB2aXNpdChub2RlOiBJQ29uc3RydWN0KTogdm9pZCB7XG4gICAgaWYgKGlzQXV0b21hdGlvbkNvbXBvbmVudChub2RlKSAmJiAhdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBuZXcgU3RhbmRhcmRUYWdzKG5vZGUsIHsgYXV0b21hdGlvbkNvbXBvbmVudFRhZ3M6IG5vZGUuYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MgfSlcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
284
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtdGFncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInN0YW5kYXJkLXRhZ3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQWdFO0FBdUdoRTs7R0FFRztBQUNILElBQVksa0JBeUJYO0FBekJELFdBQVksa0JBQWtCO0lBQzVCOzs7T0FHRztJQUNILDREQUFzQyxDQUFBO0lBRXRDOzs7O09BSUc7SUFDSCwrQ0FBeUIsQ0FBQTtJQUV6Qjs7OztPQUlHO0lBQ0gsK0NBQXlCLENBQUE7SUFFekI7O09BRUc7SUFDSCx1Q0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBekJXLGtCQUFrQixHQUFsQiwwQkFBa0IsS0FBbEIsMEJBQWtCLFFBeUI3QjtBQUVEOztHQUVHO0FBQ0gsSUFBWSxlQWlCWDtBQWpCRCxXQUFZLGVBQWU7SUFFekI7O09BRUc7SUFDSCw4QkFBVyxDQUFBO0lBRVg7O09BRUc7SUFDSCw4QkFBVyxDQUFBO0lBRVg7OztPQUdHO0lBQ0gsOEJBQVcsQ0FBQTtBQUNiLENBQUMsRUFqQlcsZUFBZSxHQUFmLHVCQUFlLEtBQWYsdUJBQWUsUUFpQjFCO0FBa0dEOztHQUVHO0FBQ0gsTUFBYSxZQUFZO0lBaUJ2Qjs7Ozs7T0FLRztJQUNILFlBQVksS0FBZ0IsRUFBRSxLQUF5Qjs7UUFDckQsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLElBQUksR0FBRyxrQkFBSSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxTQUFHLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxlQUFlLG1DQUFJLEtBQUssQ0FBQztRQUVsRCxJQUFJLENBQUMsMEJBQTBCLENBQUMsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLHVCQUF1QixDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtB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QVksQ0FBQyxJQUFJLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxJQUFJLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFBO1NBQ2xGO0lBQ0gsQ0FBQztDQUNGO0FBYkQsOERBYUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbnN0cnVjdCwgSUNvbnN0cnVjdH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7SUFzcGVjdCwgU3RhY2ssIFRhZywgVGFnUHJvcHMsIFRhZ3N9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGF1dG9tYXRpb24gY29tcG9uZW50IHRhZ3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0b21hdGlvbkNvbXBvbmVudFRhZ3NQcm9wcyBleHRlbmRzIFRhZ1Byb3BzIHtcblxuICAvKipcbiAgICogVGhlIElEIG9mIHRoZSBjb21wb25lbnQuIERlZmF1bHQgaXMgc2NvcGUuY29uc3RydWN0b3IubmFtZS5cbiAgICpcbiAgICogQGRlZmF1bHQgc2NvcGUuY29uc3RydWN0b3IubmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIFVSTCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgdXJsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdmVuZG9yIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICByZWFkb25seSB2ZW5kb3I/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGFncyBhcmUgcHJvcGFnYXRlZCB0byBjaGlsZHJlbi4gRGVmYXVsdCBpcyB0cnVlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHByb3BhZ2F0ZT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgYXV0b21hdGlvbiB0YWdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF1dG9tYXRpb25UYWdzUHJvcHMgZXh0ZW5kcyBUYWdQcm9wcyB7XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgc3RhY2suIElmIG9uZSBpZiBub3QgcHJvdmlkZWQsIHRoZSBuYW1lIG9mIHRoZSBzdGFjayBpcyB1c2VkLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIFN0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIFVSTCB0byB3aGVyZSB0aGUgYXV0b21hdGlvbiBpcyBzdG9yZWQgb3IgcHVibGlzaGVkLiBUaGlzIGZpZWxkIGlzIHJlcXVpcmVkXG4gICAqIHdoZW4gYXBwbHlpbmcgYXV0b21hdGlvbiB0YWdzLlxuICAgKi9cbiAgcmVhZG9ubHkgdXJsPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIGNvc3QgY2VudGVyIHRhZ3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29zdENlbnRlclRhZ3NQcm9wcyBleHRlbmRzIFRhZ1Byb3BzIHtcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgYnVzaW5lc3MgdW5pdCByZXNwb25zaWJsZSBmb3IgdGhlIGNvc3RzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGFnZ2VkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGJ1c2luZXNzVW5pdE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIGJ1c2luZXNzIHVuaXQgcmVzcG9uc2libGUgZm9yIHRoZSBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqIElmIG5vdCBzZXQsIHRoZSB0YWcgaXMgbm90IGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBidXNpbmVzc1VuaXRJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgcHJvamVjdCByZXNwb25zaWJsZSBmb3IgY3JlYXRpbmcgdGhlIGNvc3RzLlxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIHByb2plY3QgcmVzcG9uc2libGUgZm9yIGNyZWF0aW5nIHRoZSBjb3N0cy5cbiAgICogSWYgbm90IHNldCwgdGhlIHRhZyBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgZW52aXJvbm1lbnQgaW5jdXJyaW5nIHRoZSBjb3N0cy4gRXhhbXBsZSBcInN0YWdlXCIgb3IgXCJwcm9kXCJcbiAgICogSWYgbm90IHNldCwgdGhlIHRhZyBpcyBub3QgY3JlYXRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBjb250YWN0IHJlc3BvbnNpYmxlIGZvciBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqIElmIG5vdCBzZXQsIHRoZSB0YWcgaXMgbm90IGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogRW1haWwgb2YgdGhlIGNvbnRhY3QgcmVzcG9uc2libGUgZm9yIHRoZSBjb3N0cyBhc3NvY2lhdGVkIHdpdGggdGhlIHRhZ2dlZCByZXNvdXJjZXMuXG4gICAqIElmIG5vdCBzZXQsIHRoZSB0YWcgaXMgbm90IGNyZWF0ZWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0RW1haWw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBob25lIG51bWJlciBvZiB0aGUgY29udGFjdCByZXNwb25zaWJsZSBmb3IgY29zdHMgYXNzb2NpYXRlZCB3aXRoIHRoZSB0YWdnZWQgcmVzb3VyY2VzLlxuICAgKiBJZiBub3Qgc2V0LCB0aGUgdGFnIGlzIG5vdCBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFjdFBob25lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEhvbGRzIHZhbHVlcyB0aGF0IG1heSBiZSBhcHBsaWVkIHRvIHRoZSBkYXRhLWNsYXNzaWZpY2F0aW9uIHNlY3VyaXR5IHRhZy5cbiAqL1xuZXhwb3J0IGVudW0gRGF0YUNsYXNzaWZpY2F0aW9uIHtcbiAgLyoqXG4gICAqIFVzZWQgd2hlbiBkYXRhIG1heSBub3QgbGVhdmUgdGhlIGdlb2dyYXBoaWMgcmVnaW9uIGluIHdoaWNoIGl0IGlzIHN0b3JlZC5cbiAgICogVGhpcyBpcyB1c3VhbGx5IHJlbGF0ZWQgdG8gZ292ZXJubWVudCByZXN0cmljdGlvbnMgYXBwbGllZCB0byB0aGUgZGF0YS5cbiAgICovXG4gIEV4cG9ydFJlc3RyaWN0ZWQgPSBcImV4cG9ydC1yZXN0cmljdGVkXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiB1bmF1dGhvcml6ZWQgZGlzY2xvc3VyZSwgYWx0ZXJhdGlvbiBvciBkZXN0cnVjdGlvbiBvZiBkYXRhIHdvdWxkXG4gICAqIHJlc3VsdCBpbiBhIHNpZ25pZmljYW50IHJpc2sgdG8gdGhlIG9yZ2FuaXphdGlvbi4gVGhpcyBpbmNsdWRlcyBQSUksIFBISVxuICAgKiBhbmQgUENJIGRhdGEuXG4gICAqL1xuICBSZXN0cmljdGVkID0gXCJyZXN0cmljdGVkXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiB1bmF1dGhvcml6ZWQgZGlzY2xvc3VyZSwgYWx0ZXJhdGlvbiBvciBkZXN0cnVjdGlvbiBvZiB0aGUgZGF0YSB3b3VsZFxuICAgKiByZXN1bHQgaW4gbW9kZXJhdGUgcmlzay4gVGhpcyBpbmNsdWRlcyBhbGwgZGF0YSB0aGF0IGlzIG5vdCBpbiBvbmUgb2YgdGhlIG90aGVyXG4gICAqIGNsYXNzaWZpY2F0aW9ucy5cbiAgICovXG4gIENvbnRyb2xsZWQgPSBcImNvbnRyb2xsZWRcIixcblxuICAvKipcbiAgICogVXNlZCB3aGVuIGhhbmRsZWQgb3Igc3RvcmVkIGRhdGEgcmVhZGlseSBhdmFpbGFibGUgdG8gdGhlIHB1YmxpYy5cbiAgICovXG4gIFB1YmxpYyA9IFwicHVibGljXCJcbn1cblxuLyoqXG4gKiBIb2xkcyB2YWx1ZXMgdGhhdCBtYXkgYmUgYXBwbGllZCB0byB0aGUgZGF0YS1zZW5zaXRpdml0eSBzZWN1cml0eSB0YWcuXG4gKi9cbmV4cG9ydCBlbnVtIERhdGFTZW5zaXRpdml0eSB7XG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiByZXNvdXJjZXMgYXJlIGluIFBDSSBzY29wZS5cbiAgICovXG4gIFBDSSA9IFwicGNpXCIsXG5cbiAgLyoqXG4gICAqIFVzZWQgd2hlbiByZXNvdXJjZXMgaGFuZGxlIG9yIHN0b3JlIHBlcnNvbmFsbHkgaWRlbnRpZmlhYmxlIGluZm9ybWF0aW9uLlxuICAgKi9cbiAgUElJID0gXCJwaWlcIixcblxuICAvKipcbiAgICogVXNlZCB3aGVuIHJlc291cmNlcyBoYW5kbGUgb3Igc3RvcmUgcGVyc29uYWwgaGVhbHRoIGluZm9ybWF0aW9uIGFuZCBhcmVcbiAgICogc3ViamVjdCB0byBISVBQQSBydWxlcy5cbiAgICovXG4gIFBISSA9IFwicGhpXCJcbn1cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciBzZWN1cml0eSB0YWdzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlY3VyaXR5VGFnc1Byb3BzIGV4dGVuZHMgVGFnUHJvcHMge1xuXG4gIC8qKlxuICAgKiBEYXRhIGNsYXNzaWZpY2F0aW9uIHZhbHVlLiBTZWUgdGhlIFRydWVNYXJrIEFXUyB0YWdnaW5nIHN0cmF0ZWd5IGRvY3VtZW50YXRpb24uXG4gICAqL1xuICByZWFkb25seSBkYXRhQ2xhc3NpZmljYXRpb246IERhdGFDbGFzc2lmaWNhdGlvbjtcblxuICAvKipcbiAgICogRGF0YSBzZW5zaXRpdml0eS4gU2VlIHRoZSBUcnVlTWFyayBBV1MgdGFnZ2luZyBzdHJhdGVneSBkb2N1bWVudGF0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVNlbnNpdGl2aXR5PzogRGF0YVNlbnNpdGl2aXR5O1xufVxuXG4vKipcbiAqIFByb3BlcnRpZXMgZm9yIHRlYW0gdGFncy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZWFtVGFnc1Byb3BzIGV4dGVuZHMgVGFnUHJvcHMge1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSB0ZWFtLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGlmIGRpZmZlcmVudCB0aGFuIHRoZSB0ZWFtIG5hbWUuXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgdGVhbSBsZWFkLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFjdE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVtYWlsIG9mIHRoZSB0ZWFtIGxlYWQuXG4gICAqL1xuICByZWFkb25seSBjb250YWN0RW1haWw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBob25lIG51bWJlciBmb3IgdGhlIHRlYW0gbGVhZC5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhY3RQaG9uZT86IHN0cmluZztcblxuICAvKipcbiAgICogQnVzaW5lc3MgdW5pdCB0aGUgdGVhbSBiZWxvbmdzIHRvLlxuICAgKi9cbiAgcmVhZG9ubHkgYnVzaW5lc3NVbml0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXBhcnRtZW50IHRoZSB0ZWFtIGJlbG9uZ3MgdG8uXG4gICAqL1xuICByZWFkb25seSBkZXBhcnRtZW50Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnRhaW5zIHN0YW5kYXJkIHRhZ2dpbmcgcHJvcGVydGllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFuZGFyZFRhZ3NQcm9wcyB7XG5cbiAgLyoqXG4gICAqIEF1dG9tYXRpb24gY29tcG9uZW50IHRhZ3MuXG4gICAqL1xuICByZWFkb25seSBhdXRvbWF0aW9uQ29tcG9uZW50VGFncz86IEF1dG9tYXRpb25Db21wb25lbnRUYWdzUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF1dG9tYXRpb24gdGFncyB0byBhcHBseSB0byBjcmVhdGVkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGF1dG9tYXRpb25UYWdzPzogQXV0b21hdGlvblRhZ3NQcm9wcztcblxuICAvKipcbiAgICogQ29zdCBjZW50ZXIgdGFncyB0byBhcHBseSB0byBjcmVhdGVkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IGNvc3RDZW50ZXJUYWdzPzogQ29zdENlbnRlclRhZ3NQcm9wcztcblxuICAvKipcbiAgICogU2VjdXJpdHkgdGFncyB0byBhcHBseSB0byBjcmVhdGVkIHJlc291cmNlcy5cbiAgICovXG4gIHJlYWRvbmx5IHNlY3VyaXR5VGFncz86IFNlY3VyaXR5VGFnc1Byb3BzO1xuXG4gIC8qKlxuICAgKiBUZWFtIHRhZ3MgdG8gYXBwbHkgdG8gY3JlYXRlZCByZXNvdXJjZXMuXG4gICAqL1xuICByZWFkb25seSB0ZWFtVGFncz86IFRlYW1UYWdzUHJvcHM7XG5cbiAgLyoqXG4gICAqIFNldHRpbmcgdGhpcyB0byB0cnVlIHdpbGwgc3VwcHJlc3MgdGhlIGNyZWF0aW9uIG9mIHRhZ3MgdGhpcyByZXNvdXJjZSBjcmVhdGVzLlxuICAgKiBEZWZhdWx0IHZhbHVlIGlzIGZhbHNlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGZhbHNlXG4gICAqL1xuICByZWFkb25seSBzdXBwcmVzc1RhZ2dpbmc/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFByb3ZpZGVzIGNvbnZlbmllbmNlIG1ldGhvZHMgdG8gdGFnIHJlc291cmNlcyBmb2xsb3dpbmcgVHJ1ZU1hcmsncyB0YWdnaW5nIHN0cmF0ZWd5LlxuICovXG5leHBvcnQgY2xhc3MgU3RhbmRhcmRUYWdzIHtcblxuICAvKipcbiAgICogVGhlIHNjb3BlIGJlaW5nIHRhZ2dlZC5cbiAgICovXG4gIHJlYWRvbmx5IHNjb3BlOiBDb25zdHJ1Y3Q7XG5cbiAgLyoqXG4gICAqIFRoZSB0YWdzLlxuICAgKi9cbiAgcmVhZG9ubHkgdGFnczogVGFncztcblxuICAvKipcbiAgICogSWYgdGFncyB3ZXJlIHN1cHByZXNzZWQuXG4gICAqL1xuICByZWFkb25seSBzdXBwcmVzc2VkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IFN0YW5kYXJkVGFncyBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIHRoZSBzY29wZSB0byB0YWdcbiAgICogQHBhcmFtIHByb3BzIHRoZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBwcm9wcz86IFN0YW5kYXJkVGFnc1Byb3BzKSB7XG4gICAgdGhpcy5zY29wZSA9IHNjb3BlO1xuICAgIHRoaXMudGFncyA9IFRhZ3Mub2Yoc2NvcGUpO1xuICAgIHRoaXMuc3VwcHJlc3NlZCA9IHByb3BzPy5zdXBwcmVzc1RhZ2dpbmcgPz8gZmFsc2U7XG5cbiAgICB0aGlzLmFkZEF1dG9tYXRpb25Db21wb25lbnRUYWdzKHByb3BzPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncyk7XG4gICAgdGhpcy5hZGRBdXRvbWF0aW9uVGFncyhwcm9wcz8uYXV0b21hdGlvblRhZ3MpO1xuICAgIHRoaXMuYWRkQ29zdENlbnRlclRhZ3MocHJvcHM/LmNvc3RDZW50ZXJUYWdzKTtcbiAgICB0aGlzLmFkZFNlY3VyaXR5VGFncyhwcm9wcz8uc2VjdXJpdHlUYWdzKTtcbiAgICB0aGlzLmFkZFRlYW1UYWdzKHByb3BzPy50ZWFtVGFncyk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhdXRvbWF0aW9uIGNvbXBvbmVudCB0YWdzLiBUaGVzZSBhcmUgbWVhbnQgdG8gYmUgdXNlZCBpbiBpbmRpdmlkdWFsIGNvbnN0cnVjdHMgdG8gaWRlbnRpZnlcbiAgICogd2hhdCByZXNvdXJjZXMgd2VyZSBzdG9vZCB1cCBieSBzcGVjaWZpYyBjb25zdHJ1Y3RzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgb3B0aW9uYWwgcHJvcGVydGllcyBmb3IgdGhlIHRhZ3NcbiAgICovXG4gIGFkZEF1dG9tYXRpb25Db21wb25lbnRUYWdzKHByb3BzPzogQXV0b21hdGlvbkNvbXBvbmVudFRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFncyB7XG4gICAgaWYgKHByb3BzICYmICF0aGlzLnN1cHByZXNzZWQpIHtcbiAgICAgIGlmIChwcm9wcy5pZCA9PT0gXCJ7e1RNQ0RLfX1cIikge1xuICAgICAgICBpZiAocHJvcHMucHJvcGFnYXRlID8/IHRydWUpIHtcbiAgICAgICAgICB0aGlzLnRhZ3MuYWRkKFwiYXV0b21hdGlvbjpjb21wb25lbnQtaWRcIiwgdGhpcy5zY29wZS5jb25zdHJ1Y3Rvci5uYW1lLCBwcm9wcyk7XG4gICAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LXVybFwiLCBcImh0dHBzOi8vZ2l0aHViLmNvbS90cnVlbWFyay9jZGtcIiwgcHJvcHMpO1xuICAgICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC12ZW5kb3JcIiwgXCJUcnVlTWFya1wiLCBwcm9wcyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbmV3IFRhZyhcImF1dG9tYXRpb246Y29tcG9uZW50LWlkXCIsIHRoaXMuc2NvcGUuY29uc3RydWN0b3IubmFtZSkudmlzaXQodGhpcy5zY29wZSk7XG4gICAgICAgICAgbmV3IFRhZyhcImF1dG9tYXRpb246Y29tcG9uZW50LXVybFwiLCBcImh0dHBzOi8vZ2l0aHViLmNvbS90cnVlbWFyay9jZGtcIikudmlzaXQodGhpcy5zY29wZSk7XG4gICAgICAgICAgbmV3IFRhZyhcImF1dG9tYXRpb246Y29tcG9uZW50LXZlbmRvclwiLCBcIlRydWVNYXJrXCIpLnZpc2l0KHRoaXMuc2NvcGUpO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpZiAocHJvcHMuaWQpIHtcbiAgICAgICAgICBpZiAocHJvcHMucHJvcGFnYXRlID8/IHRydWUpIHtcbiAgICAgICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC1pZFwiLCBwcm9wcy5pZCwgcHJvcHMpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgIG5ldyBUYWcoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC1pZFwiLCBwcm9wcy5pZCkudmlzaXQodGhpcy5zY29wZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChwcm9wcy51cmwpIHtcbiAgICAgICAgICBpZiAocHJvcHMucHJvcGFnYXRlID8/IHRydWUpIHtcbiAgICAgICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC11cmxcIiwgcHJvcHMudXJsLCBwcm9wcyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG5ldyBUYWcoXCJhdXRvbWF0aW9uOmNvbXBvbmVudC11cmxcIiwgcHJvcHMudXJsKS52aXNpdCh0aGlzLnNjb3BlKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHByb3BzLnZlbmRvcikge1xuICAgICAgICAgIGlmIChwcm9wcy5wcm9wYWdhdGUgPz8gdHJ1ZSkge1xuICAgICAgICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246Y29tcG9uZW50LXZlbmRvclwiLCBwcm9wcy52ZW5kb3IsIHByb3BzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV3IFRhZyhcImF1dG9tYXRpb246Y29tcG9uZW50LXZlbmRvclwiLCBwcm9wcy52ZW5kb3IpLnZpc2l0KHRoaXMuc2NvcGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGF1dG9tYXRpb24gdGFncy5cbiAgICpcbiAgICogQHBhcmFtIHByb3BzIHByb3BlcnRpZXMgZm9yIHRoZSB0YWdzXG4gICAqL1xuICBhZGRBdXRvbWF0aW9uVGFncyhwcm9wcz86IEF1dG9tYXRpb25UYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3Mge1xuICAgIGlmICghdGhpcy5zdXBwcmVzc2VkKSB7XG4gICAgICBsZXQgaWQ6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHByb3BzPy5pZFxuICAgICAgaWYgKCFpZCkge1xuICAgICAgICBpZCA9IFN0YWNrLm9mKHRoaXMuc2NvcGUpLnN0YWNrTmFtZVxuICAgICAgfVxuICAgICAgdGhpcy50YWdzLmFkZChcImF1dG9tYXRpb246aWRcIiwgaWQsIHByb3BzKTtcbiAgICAgIGlmIChwcm9wcz8udXJsKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJhdXRvbWF0aW9uOnVybFwiLCBwcm9wcy51cmwsIHByb3BzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBjb3N0IGNlbnRlciB0YWdzLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvcHMgcHJvcGVydGllcyBmb3IgdGhlIHRhZ3NcbiAgICovXG4gIGFkZENvc3RDZW50ZXJUYWdzKHByb3BzPzogQ29zdENlbnRlclRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFncyB7XG4gICAgaWYgKHByb3BzICYmICF0aGlzLnN1cHByZXNzZWQpIHtcbiAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpidXNpbmVzcy11bml0LW5hbWVcIiwgcHJvcHMuYnVzaW5lc3NVbml0TmFtZSwgcHJvcHMpO1xuICAgICAgaWYgKHByb3BzLmJ1c2luZXNzVW5pdElkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpidXNpbmVzcy11bml0LWlkXCIsIHByb3BzLmJ1c2luZXNzVW5pdElkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICB0aGlzLnRhZ3MuYWRkKFwiY29zdC1jZW50ZXI6cHJvamVjdC1uYW1lXCIsIHByb3BzLnByb2plY3ROYW1lLCBwcm9wcyk7XG4gICAgICBpZiAocHJvcHMucHJvamVjdElkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpwcm9qZWN0LWlkXCIsIHByb3BzLnByb2plY3RJZCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmVudmlyb25tZW50KSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjplbnZpcm9ubWVudFwiLCBwcm9wcy5lbnZpcm9ubWVudCwgcHJvcHMpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmNvbnRhY3ROYW1lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpjb250YWN0LW5hbWVcIiwgcHJvcHMuY29udGFjdE5hbWUsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5jb250YWN0RW1haWwpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcImNvc3QtY2VudGVyOmNvbnRhY3QtZW1haWxcIiwgcHJvcHMuY29udGFjdEVtYWlsLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdFBob25lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJjb3N0LWNlbnRlcjpjb250YWN0LXBob25lXCIsIHByb3BzLmNvbnRhY3RQaG9uZSwgcHJvcHMpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIHNlY3VyaXR5IHRhZ3MuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBwcm9wZXJ0aWVzIGZvciBzZWN1cml0eSB0YWdzXG4gICAqL1xuICBhZGRTZWN1cml0eVRhZ3MocHJvcHM/OiBTZWN1cml0eVRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFncyB7XG4gICAgaWYgKHByb3BzICYmICF0aGlzLnN1cHByZXNzZWQpIHtcbiAgICAgIHRoaXMudGFncy5hZGQoXCJzZWN1cml0eTpkYXRhLWNsYXNzaWZpY2F0aW9uXCIsIHByb3BzLmRhdGFDbGFzc2lmaWNhdGlvbiwgcHJvcHMpO1xuICAgICAgaWYgKHByb3BzLmRhdGFTZW5zaXRpdml0eSkge1xuICAgICAgICB0aGlzLnRhZ3MuYWRkKFwic2VjdXJpdHk6ZGF0YS1zZW5zaXRpdml0eVwiLCBwcm9wcy5kYXRhU2Vuc2l0aXZpdHksIHByb3BzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyB0ZWFtIHRhZ3MuXG4gICAqXG4gICAqIEBwYXJhbSBwcm9wcyBwcm9wZXJ0aWVzIGZvciB0ZWFtIHRhZ3NcbiAgICovXG4gIGFkZFRlYW1UYWdzKHByb3BzPzogVGVhbVRhZ3NQcm9wcyk6IFN0YW5kYXJkVGFncyB7XG4gICAgaWYgKHByb3BzICYmICF0aGlzLnN1cHByZXNzZWQpIHtcbiAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOm5hbWVcIiwgcHJvcHMubmFtZSwgcHJvcHMpO1xuICAgICAgaWYgKHByb3BzLmlkKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmlkXCIsIHByb3BzLmlkLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdE5hbWUpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06Y29udGFjdC1uYW1lXCIsIHByb3BzLmNvbnRhY3ROYW1lLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdEVtYWlsKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmNvbnRhY3QtZW1haWxcIiwgcHJvcHMuY29udGFjdEVtYWlsLCBwcm9wcyk7XG4gICAgICB9XG4gICAgICBpZiAocHJvcHMuY29udGFjdFBob25lKSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmNvbnRhY3QtaG9uZVwiLCBwcm9wcy5jb250YWN0UGhvbmUsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5idXNpbmVzc1VuaXQpIHtcbiAgICAgICAgdGhpcy50YWdzLmFkZChcInRlYW06YnVzaW5lc3MtdW5pdFwiLCBwcm9wcy5idXNpbmVzc1VuaXQsIHByb3BzKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5kZXBhcnRtZW50KSB7XG4gICAgICAgIHRoaXMudGFncy5hZGQoXCJ0ZWFtOmRlcGFydG1lbnRcIiwgcHJvcHMuZGVwYXJ0bWVudCwgcHJvcHMpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHN0YXRpYyBtZXJnZShmcm9tPzogU3RhbmRhcmRUYWdzUHJvcHMsIHRvPzogU3RhbmRhcmRUYWdzUHJvcHMpOiBTdGFuZGFyZFRhZ3NQcm9wcyB7XG4gICAgbGV0IGF1dG9tYXRpb25Db21wb25lbnRUYWdzOiBBdXRvbWF0aW9uQ29tcG9uZW50VGFnc1Byb3BzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChmcm9tPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncyB8fCB0bz8uYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MpIHtcbiAgICAgIGF1dG9tYXRpb25Db21wb25lbnRUYWdzID0ge1xuICAgICAgICBpZDogdG8/LmF1dG9tYXRpb25Db21wb25lbnRUYWdzPy5pZCA/PyBmcm9tPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFncz8uaWQgPz8gXCJcIixcbiAgICAgICAgLi4uZnJvbT8uYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MsXG4gICAgICAgIC4uLnRvPy5hdXRvbWF0aW9uQ29tcG9uZW50VGFnc1xuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBhdXRvbWF0aW9uVGFnczogQXV0b21hdGlvblRhZ3NQcm9wcyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAoZnJvbT8uYXV0b21hdGlvblRhZ3MgfHwgdG8/LmF1dG9tYXRpb25UYWdzKSB7XG4gICAgICBhdXRvbWF0aW9uVGFncyA9IHtcbiAgICAgICAgaWQ6IHRvPy5hdXRvbWF0aW9uVGFncz8uaWQgPz8gZnJvbT8uYXV0b21hdGlvblRhZ3M/LmlkID8/IFwiXCIsXG4gICAgICAgIC4uLmZyb20/LmF1dG9tYXRpb25UYWdzLFxuICAgICAgICAuLi50bz8uYXV0b21hdGlvblRhZ3NcbiAgICAgIH1cbiAgICB9XG4gICAgbGV0IGNvc3RDZW50ZXJUYWdzOiBDb3N0Q2VudGVyVGFnc1Byb3BzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChmcm9tPy5jb3N0Q2VudGVyVGFncyB8fCB0bz8uY29zdENlbnRlclRhZ3MpIHtcbiAgICAgIGNvc3RDZW50ZXJUYWdzID0ge1xuICAgICAgICBidXNpbmVzc1VuaXROYW1lOiB0bz8uY29zdENlbnRlclRhZ3M/LmJ1c2luZXNzVW5pdE5hbWUgPz8gZnJvbT8uY29zdENlbnRlclRhZ3M/LmJ1c2luZXNzVW5pdE5hbWUgPz8gXCJcIixcbiAgICAgICAgcHJvamVjdE5hbWU6IHRvPy5jb3N0Q2VudGVyVGFncz8ucHJvamVjdE5hbWUgPz8gZnJvbT8uY29zdENlbnRlclRhZ3M/LnByb2plY3ROYW1lID8/IFwiXCIsXG4gICAgICAgIC4uLmZyb20/LmNvc3RDZW50ZXJUYWdzLFxuICAgICAgICAuLi50bz8uY29zdENlbnRlclRhZ3NcbiAgICAgIH1cbiAgICB9XG4gICAgbGV0IHNlY3VyaXR5VGFnczogU2VjdXJpdHlUYWdzUHJvcHMgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKGZyb20/LnNlY3VyaXR5VGFncyB8fCB0bz8uc2VjdXJpdHlUYWdzKSB7XG4gICAgICBzZWN1cml0eVRhZ3MgPSB7XG4gICAgICAgIGRhdGFDbGFzc2lmaWNhdGlvbjogdG8/LnNlY3VyaXR5VGFncz8uZGF0YUNsYXNzaWZpY2F0aW9uID8/IGZyb20/LnNlY3VyaXR5VGFncz8uZGF0YUNsYXNzaWZpY2F0aW9uID8/IERhdGFDbGFzc2lmaWNhdGlvbi5Db250cm9sbGVkLFxuICAgICAgICAuLi5mcm9tPy5zZWN1cml0eVRhZ3MsXG4gICAgICAgIC4uLnRvPy5zZWN1cml0eVRhZ3NcbiAgICAgIH1cbiAgICB9XG4gICAgbGV0IHRlYW1UYWdzOiBUZWFtVGFnc1Byb3BzIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGlmIChmcm9tPy50ZWFtVGFncyB8fCB0bz8udGVhbVRhZ3MpIHtcbiAgICAgIHRlYW1UYWdzID0ge1xuICAgICAgICBuYW1lOiB0bz8udGVhbVRhZ3M/Lm5hbWUgPz8gZnJvbT8udGVhbVRhZ3M/Lm5hbWUgPz8gXCJcIixcbiAgICAgICAgLi4uZnJvbT8udGVhbVRhZ3MsXG4gICAgICAgIC4uLnRvPy50ZWFtVGFnc1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgYXV0b21hdGlvbkNvbXBvbmVudFRhZ3MsXG4gICAgICBhdXRvbWF0aW9uVGFncyxcbiAgICAgIGNvc3RDZW50ZXJUYWdzLFxuICAgICAgc2VjdXJpdHlUYWdzLFxuICAgICAgdGVhbVRhZ3NcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQXV0b21hdGlvbkNvbXBvbmVudCB7XG5cbiAgcmVhZG9ubHkgYXV0b21hdGlvbkNvbXBvbmVudFRhZ3M/OiBBdXRvbWF0aW9uQ29tcG9uZW50VGFnc1Byb3BzO1xuXG59XG5cbmV4cG9ydCBjb25zdCBJbnRlcm5hbEF1dG9tYXRpb25Db21wb25lbnRUYWdzOiBBdXRvbWF0aW9uQ29tcG9uZW50VGFnc1Byb3BzID0ge1xuICBpZDogXCJ7e1RNQ0RLfX1cIlxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBdXRvbWF0aW9uQ29tcG9uZW50KG86IGFueSk6IG8gaXMgSUF1dG9tYXRpb25Db21wb25lbnQge1xuICByZXR1cm4gXCJhdXRvbWF0aW9uQ29tcG9uZW50VGFnc1wiIGluIG87XG59XG5cbmV4cG9ydCBjbGFzcyBBdXRvbWF0aW9uQ29tcG9uZW50QXNwZWN0IGltcGxlbWVudHMgSUFzcGVjdCB7XG5cbiAgcmVhZG9ubHkgc3VwcHJlc3NlZDogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcihzdXBwcmVzc1RhZ2dpbmc/OiBib29sZWFuKSB7XG4gICAgdGhpcy5zdXBwcmVzc2VkID0gc3VwcHJlc3NUYWdnaW5nID8/IGZhbHNlO1xuICB9XG5cbiAgdmlzaXQobm9kZTogSUNvbnN0cnVjdCk6IHZvaWQge1xuICAgIGlmIChpc0F1dG9tYXRpb25Db21wb25lbnQobm9kZSkgJiYgIXRoaXMuc3VwcHJlc3NlZCkge1xuICAgICAgbmV3IFN0YW5kYXJkVGFncyhub2RlLCB7IGF1dG9tYXRpb25Db21wb25lbnRUYWdzOiBub2RlLmF1dG9tYXRpb25Db21wb25lbnRUYWdzIH0pXG4gICAgfVxuICB9XG59XG4iXX0=
|
|
File without changes
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const test_helper_1 = require("../../test-helper");
|
|
4
|
+
const index_1 = require("../index");
|
|
5
|
+
test("Test StandardTags", () => {
|
|
6
|
+
const stack = test_helper_1.TestHelper.stack();
|
|
7
|
+
const standardTags = new index_1.StandardTags(stack);
|
|
8
|
+
});
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhbmRhcmQtdGFncy50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic3RhbmRhcmQtdGFncy50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbURBQTZDO0FBQzdDLG9DQUFzQztBQUV0QyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxFQUFFO0lBQzdCLE1BQU0sS0FBSyxHQUFHLHdCQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakMsTUFBTSxZQUFZLEdBQUcsSUFBSSxvQkFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQy9DLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUZXN0SGVscGVyfSBmcm9tIFwiLi4vLi4vdGVzdC1oZWxwZXJcIjtcbmltcG9ydCB7U3RhbmRhcmRUYWdzfSBmcm9tIFwiLi4vaW5kZXhcIjtcblxudGVzdChcIlRlc3QgU3RhbmRhcmRUYWdzXCIsICgpID0+IHtcbiAgY29uc3Qgc3RhY2sgPSBUZXN0SGVscGVyLnN0YWNrKCk7XG4gIGNvbnN0IHN0YW5kYXJkVGFncyA9IG5ldyBTdGFuZGFyZFRhZ3Moc3RhY2spO1xufSk7XG4iXX0=
|
|
File without changes
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_helper_1 = require("
|
|
4
|
-
const
|
|
3
|
+
const test_helper_1 = require("../../test-helper");
|
|
4
|
+
const index_1 = require("../index");
|
|
5
5
|
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
6
6
|
test("Create EstimatedChargesAlarm", () => {
|
|
7
7
|
const stack = test_helper_1.TestHelper.stack();
|
|
8
|
-
new
|
|
8
|
+
new index_1.EstimatedChargesAlarm(stack, "EstimatedChargesAlarm", {
|
|
9
9
|
maxMonthly: 10
|
|
10
10
|
});
|
|
11
11
|
const template = assertions_1.Template.fromStack(stack);
|
|
@@ -25,4 +25,4 @@ test("Create EstimatedChargesAlarm", () => {
|
|
|
25
25
|
});
|
|
26
26
|
// TODO I (Erik) cannot figure out how to assert in the test the threshold was actually set to 10. If you figure it out, let me know.
|
|
27
27
|
});
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXN0aW1hdGVkLWNoYXJnZXMtYWxhcm0udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImVzdGltYXRlZC1jaGFyZ2VzLWFsYXJtLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtREFBMkQ7QUFDM0Qsb0NBQStDO0FBQy9DLHVEQUFnRDtBQUVoRCxJQUFJLENBQUMsOEJBQThCLEVBQUUsR0FBRyxFQUFFO0lBQ3hDLE1BQU0sS0FBSyxHQUFHLHdCQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakMsSUFBSSw2QkFBcUIsQ0FBQyxLQUFLLEVBQUUsdUJBQXVCLEVBQUU7UUFDeEQsVUFBVSxFQUFFLEVBQUU7S0FDZixDQUFDLENBQUM7SUFDSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxRQUFRLENBQUMsZUFBZSxDQUFDLDBCQUFZLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0QsUUFBUSxDQUFDLHFCQUFxQixDQUFDLDBCQUFZLENBQUMsZ0JBQWdCLEVBQUU7UUFDNUQsa0JBQWtCLEVBQUUsc0JBQXNCO1FBQzFDLFNBQVMsRUFBRSxTQUFTO1FBQ3BCLFVBQVUsRUFBRSxrQkFBa0I7UUFDOUIsU0FBUyxFQUFFLGFBQWE7UUFDeEIsaUJBQWlCLEVBQUUsQ0FBQztRQUNwQixVQUFVLEVBQUU7WUFDVjtnQkFDRSxJQUFJLEVBQUUsVUFBVTtnQkFDaEIsS0FBSyxFQUFFLEtBQUs7YUFDYjtTQUNGO0tBQ0YsQ0FBQyxDQUFDO0lBQ0gscUlBQXFJO0FBQ3ZJLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtSZXNvdXJjZVR5cGUsIFRlc3RIZWxwZXJ9IGZyb20gXCIuLi8uLi90ZXN0LWhlbHBlclwiO1xuaW1wb3J0IHtFc3RpbWF0ZWRDaGFyZ2VzQWxhcm19IGZyb20gXCIuLi9pbmRleFwiO1xuaW1wb3J0IHtUZW1wbGF0ZX0gZnJvbSBcImF3cy1jZGstbGliL2Fzc2VydGlvbnNcIjtcblxudGVzdChcIkNyZWF0ZSBFc3RpbWF0ZWRDaGFyZ2VzQWxhcm1cIiwgKCkgPT4ge1xuICBjb25zdCBzdGFjayA9IFRlc3RIZWxwZXIuc3RhY2soKTtcbiAgbmV3IEVzdGltYXRlZENoYXJnZXNBbGFybShzdGFjaywgXCJFc3RpbWF0ZWRDaGFyZ2VzQWxhcm1cIiwge1xuICAgIG1heE1vbnRobHk6IDEwXG4gIH0pO1xuICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG4gIHRlbXBsYXRlLnJlc291cmNlQ291bnRJcyhSZXNvdXJjZVR5cGUuQ0xPVURXQVRDSF9BTEFSTSwgMSk7XG4gIHRlbXBsYXRlLmhhc1Jlc291cmNlUHJvcGVydGllcyhSZXNvdXJjZVR5cGUuQ0xPVURXQVRDSF9BTEFSTSwge1xuICAgIENvbXBhcmlzb25PcGVyYXRvcjogXCJHcmVhdGVyVGhhblRocmVzaG9sZFwiLFxuICAgIFN0YXRpc3RpYzogXCJNYXhpbXVtXCIsXG4gICAgTWV0cmljTmFtZTogXCJFc3RpbWF0ZWRDaGFyZ2VzXCIsXG4gICAgTmFtZXNwYWNlOiBcIkFXUy9CaWxsaW5nXCIsXG4gICAgRXZhbHVhdGlvblBlcmlvZHM6IDEsXG4gICAgRGltZW5zaW9uczogW1xuICAgICAge1xuICAgICAgICBOYW1lOiBcIkN1cnJlbmN5XCIsXG4gICAgICAgIFZhbHVlOiBcIlVTRFwiXG4gICAgICB9XG4gICAgXVxuICB9KTtcbiAgLy8gVE9ETyBJIChFcmlrKSBjYW5ub3QgZmlndXJlIG91dCBob3cgdG8gYXNzZXJ0IGluIHRoZSB0ZXN0IHRoZSB0aHJlc2hvbGQgd2FzIGFjdHVhbGx5IHNldCB0byAxMC4gSWYgeW91IGZpZ3VyZSBpdCBvdXQsIGxldCBtZSBrbm93LlxufSk7XG4iXX0=
|
|
File without changes
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_helper_1 = require("
|
|
4
|
-
const
|
|
3
|
+
const test_helper_1 = require("../../test-helper");
|
|
4
|
+
const index_1 = require("../index");
|
|
5
5
|
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
6
6
|
test("Test CdkPipeline", () => {
|
|
7
7
|
const stack = test_helper_1.TestHelper.stack();
|
|
8
|
-
new
|
|
8
|
+
new index_1.CdkPipeline(stack, "Test", {
|
|
9
9
|
keyArn: "arn:aws:kms:us-east-2:000000000000:key/00000000-0000-0000-0000-000000000000",
|
|
10
10
|
connectionArn: "arn:aws:codestar-connections:us-east-2:000000000000:connection/00000000-0000-0000-0000-000000000000",
|
|
11
11
|
repository: "SomeOwner/SomeRepo",
|
|
@@ -14,4 +14,4 @@ test("Test CdkPipeline", () => {
|
|
|
14
14
|
const template = assertions_1.Template.fromStack(stack);
|
|
15
15
|
template.resourceCountIs(test_helper_1.ResourceType.CODEPIPELINE, 1);
|
|
16
16
|
});
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2RrLXBpcGVsaW5lLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJjZGstcGlwZWxpbmUudGVzdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLG1EQUEyRDtBQUMzRCxvQ0FBcUM7QUFDckMsdURBQWdEO0FBRWhELElBQUksQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLEVBQUU7SUFDNUIsTUFBTSxLQUFLLEdBQUcsd0JBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqQyxJQUFJLG1CQUFXLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRTtRQUM3QixNQUFNLEVBQUUsNkVBQTZFO1FBQ3JGLGFBQWEsRUFBRSxxR0FBcUc7UUFDcEgsVUFBVSxFQUFFLG9CQUFvQjtRQUNoQyxNQUFNLEVBQUUsWUFBWTtLQUNyQixDQUFDLENBQUM7SUFDSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxRQUFRLENBQUMsZUFBZSxDQUFDLDBCQUFZLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ3pELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtSZXNvdXJjZVR5cGUsIFRlc3RIZWxwZXJ9IGZyb20gXCIuLi8uLi90ZXN0LWhlbHBlclwiO1xuaW1wb3J0IHtDZGtQaXBlbGluZX0gZnJvbSBcIi4uL2luZGV4XCI7XG5pbXBvcnQge1RlbXBsYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXNzZXJ0aW9uc1wiO1xuXG50ZXN0KFwiVGVzdCBDZGtQaXBlbGluZVwiLCAoKSA9PiB7XG4gIGNvbnN0IHN0YWNrID0gVGVzdEhlbHBlci5zdGFjaygpO1xuICBuZXcgQ2RrUGlwZWxpbmUoc3RhY2ssIFwiVGVzdFwiLCB7XG4gICAga2V5QXJuOiBcImFybjphd3M6a21zOnVzLWVhc3QtMjowMDAwMDAwMDAwMDA6a2V5LzAwMDAwMDAwLTAwMDAtMDAwMC0wMDAwLTAwMDAwMDAwMDAwMFwiLFxuICAgIGNvbm5lY3Rpb25Bcm46IFwiYXJuOmF3czpjb2Rlc3Rhci1jb25uZWN0aW9uczp1cy1lYXN0LTI6MDAwMDAwMDAwMDAwOmNvbm5lY3Rpb24vMDAwMDAwMDAtMDAwMC0wMDAwLTAwMDAtMDAwMDAwMDAwMDAwXCIsXG4gICAgcmVwb3NpdG9yeTogXCJTb21lT3duZXIvU29tZVJlcG9cIixcbiAgICBicmFuY2g6IFwiU29tZUJyYW5jaFwiXG4gIH0pO1xuICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG4gIHRlbXBsYXRlLnJlc291cmNlQ291bnRJcyhSZXNvdXJjZVR5cGUuQ09ERVBJUEVMSU5FLCAxKTtcbn0pO1xuIl19
|
|
File without changes
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_helper_1 = require("
|
|
3
|
+
const test_helper_1 = require("../../test-helper");
|
|
4
4
|
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
5
|
-
const
|
|
5
|
+
const index_1 = require("../index");
|
|
6
6
|
test("Test ExportedStack", () => {
|
|
7
7
|
const stage = test_helper_1.TestHelper.stage();
|
|
8
|
-
const stack = new
|
|
8
|
+
const stack = new index_1.ExtendedStack(stage, "TestStack");
|
|
9
9
|
stack.exportParameter("TestParameter", "TestValue");
|
|
10
10
|
stack.outputParameter("TestParameter", "TestValue");
|
|
11
11
|
const template = assertions_1.Template.fromStack(stack);
|
|
@@ -18,4 +18,4 @@ test("Test ExportedStack", () => {
|
|
|
18
18
|
Value: "TestValue"
|
|
19
19
|
});
|
|
20
20
|
});
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtc3RhY2sudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImV4dGVuZGVkLXN0YWNrLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtREFBMkQ7QUFDM0QsdURBQWdEO0FBQ2hELG9DQUF1QztBQUV2QyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFO0lBQzlCLE1BQU0sS0FBSyxHQUFHLHdCQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakMsTUFBTSxLQUFLLEdBQUcsSUFBSSxxQkFBYSxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNwRCxLQUFLLENBQUMsZUFBZSxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNwRCxLQUFLLENBQUMsZUFBZSxDQUFDLGVBQWUsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNwRCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxRQUFRLENBQUMscUJBQXFCLENBQUMsMEJBQVksQ0FBQyxhQUFhLEVBQUU7UUFDekQsSUFBSSxFQUFFLFFBQVE7UUFDZCxLQUFLLEVBQUUsV0FBVztRQUNsQixJQUFJLEVBQUUsNENBQTRDO0tBQ25ELENBQUMsQ0FBQztJQUNILFFBQVEsQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFO1FBQ2xDLEtBQUssRUFBRSxXQUFXO0tBQ25CLENBQUMsQ0FBQTtBQUNKLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtSZXNvdXJjZVR5cGUsIFRlc3RIZWxwZXJ9IGZyb20gXCIuLi8uLi90ZXN0LWhlbHBlclwiO1xuaW1wb3J0IHtUZW1wbGF0ZX0gZnJvbSBcImF3cy1jZGstbGliL2Fzc2VydGlvbnNcIjtcbmltcG9ydCB7RXh0ZW5kZWRTdGFja30gZnJvbSBcIi4uL2luZGV4XCI7XG5cbnRlc3QoXCJUZXN0IEV4cG9ydGVkU3RhY2tcIiwgKCkgPT4ge1xuICBjb25zdCBzdGFnZSA9IFRlc3RIZWxwZXIuc3RhZ2UoKTtcbiAgY29uc3Qgc3RhY2sgPSBuZXcgRXh0ZW5kZWRTdGFjayhzdGFnZSwgXCJUZXN0U3RhY2tcIik7XG4gIHN0YWNrLmV4cG9ydFBhcmFtZXRlcihcIlRlc3RQYXJhbWV0ZXJcIiwgXCJUZXN0VmFsdWVcIik7XG4gIHN0YWNrLm91dHB1dFBhcmFtZXRlcihcIlRlc3RQYXJhbWV0ZXJcIiwgXCJUZXN0VmFsdWVcIik7XG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcbiAgdGVtcGxhdGUuaGFzUmVzb3VyY2VQcm9wZXJ0aWVzKFJlc291cmNlVHlwZS5TU01fUEFSQU1FVEVSLCB7XG4gICAgVHlwZTogXCJTdHJpbmdcIixcbiAgICBWYWx1ZTogXCJUZXN0VmFsdWVcIixcbiAgICBOYW1lOiBcIi9UZXN0U3RhZ2UvVGVzdFN0YWNrL0V4cG9ydHMvVGVzdFBhcmFtZXRlclwiXG4gIH0pO1xuICB0ZW1wbGF0ZS5oYXNPdXRwdXQoXCJUZXN0UGFyYW1ldGVyXCIsIHtcbiAgICBWYWx1ZTogXCJUZXN0VmFsdWVcIlxuICB9KVxufSk7XG4iXX0=
|
|
File without changes
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_helper_1 = require("
|
|
4
|
-
const batch_write_item_1 = require("
|
|
3
|
+
const test_helper_1 = require("../../test-helper");
|
|
4
|
+
const batch_write_item_1 = require("./batch-write-item");
|
|
5
5
|
const util_dynamodb_1 = require("@aws-sdk/util-dynamodb");
|
|
6
6
|
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
7
7
|
test("BatchWriteItem Test", () => {
|
|
@@ -39,4 +39,4 @@ test("BatchWriteItem Test", () => {
|
|
|
39
39
|
const template = assertions_1.Template.fromStack(stack);
|
|
40
40
|
template.hasResourceProperties("Custom::AWS", {});
|
|
41
41
|
});
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmF0Y2gtd3JpdGUtaXRlbS50ZXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiYmF0Y2gtd3JpdGUtaXRlbS50ZXN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsbURBQTZDO0FBQzdDLHlEQUFrRDtBQUNsRCwwREFBZ0Q7QUFDaEQsdURBQWdEO0FBRWhELElBQUksQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLEVBQUU7SUFDL0IsTUFBTSxLQUFLLEdBQUcsd0JBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqQyxJQUFJLGlDQUFjLENBQUMsS0FBSyxFQUFFLHVCQUF1QixFQUFFO1FBQ2pELEtBQUssRUFBRTtZQUNMLFlBQVksRUFBRTtnQkFDWixlQUFlLEVBQUU7b0JBQ2Y7d0JBQ0UsVUFBVSxFQUFFOzRCQUNWLElBQUksRUFBRSx3QkFBUSxDQUFDLEVBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsZUFBZSxFQUFDLENBQUM7eUJBQ3ZEO3FCQUNGO29CQUNEO3dCQUNFLGFBQWEsRUFBRTs0QkFDYixHQUFHLEVBQUUsd0JBQVEsQ0FBQyxFQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBQyxDQUFDO3lCQUN4QztxQkFDRjtpQkFDRjtnQkFDRCxlQUFlLEVBQUU7b0JBQ2Y7d0JBQ0UsVUFBVSxFQUFFOzRCQUNWLElBQUksRUFBRSx3QkFBUSxDQUFDLEVBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsZUFBZSxFQUFDLENBQUM7eUJBQ3ZEO3FCQUNGO29CQUNEO3dCQUNFLGFBQWEsRUFBRTs0QkFDYixHQUFHLEVBQUUsd0JBQVEsQ0FBQyxFQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLE9BQU8sRUFBQyxDQUFDO3lCQUN4QztxQkFDRjtpQkFDRjthQUNGO1NBQ0Y7S0FDRixDQUFDLENBQUM7SUFDSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxRQUFRLENBQUMscUJBQXFCLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ3BELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUZXN0SGVscGVyfSBmcm9tIFwiLi4vLi4vdGVzdC1oZWxwZXJcIjtcbmltcG9ydCB7QmF0Y2hXcml0ZUl0ZW19IGZyb20gXCIuL2JhdGNoLXdyaXRlLWl0ZW1cIjtcbmltcG9ydCB7bWFyc2hhbGx9IGZyb20gXCJAYXdzLXNkay91dGlsLWR5bmFtb2RiXCI7XG5pbXBvcnQge1RlbXBsYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXNzZXJ0aW9uc1wiO1xuXG50ZXN0KFwiQmF0Y2hXcml0ZUl0ZW0gVGVzdFwiLCAoKSA9PiB7XG4gIGNvbnN0IHN0YWNrID0gVGVzdEhlbHBlci5zdGFjaygpO1xuICBuZXcgQmF0Y2hXcml0ZUl0ZW0oc3RhY2ssIFwiRXhhbXBsZUJhdGNoV3JpdGVJdGVtXCIsIHtcbiAgICBpdGVtczoge1xuICAgICAgUmVxdWVzdEl0ZW1zOiB7XG4gICAgICAgIFwiRXhhbXBsZVRhYmxlMVwiOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgUHV0UmVxdWVzdDoge1xuICAgICAgICAgICAgICBJdGVtOiBtYXJzaGFsbCh7UGs6IFwiU29tZXRoaW5nXCIsIFNrOiBcIlNvbWV0aGluZ0Vsc2VcIn0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBEZWxldGVSZXF1ZXN0OiB7XG4gICAgICAgICAgICAgIEtleTogbWFyc2hhbGwoe1BrOiBcIk1vb1wiLCBTazogXCIgT2lua1wifSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIF0sXG4gICAgICAgIFwiRXhhbXBsZVRhYmxlMlwiOiBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgUHV0UmVxdWVzdDoge1xuICAgICAgICAgICAgICBJdGVtOiBtYXJzaGFsbCh7UGs6IFwiU29tZXRoaW5nXCIsIFNrOiBcIlNvbWV0aGluZ0Vsc2VcIn0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBEZWxldGVSZXF1ZXN0OiB7XG4gICAgICAgICAgICAgIEtleTogbWFyc2hhbGwoe1BrOiBcIk1vb1wiLCBTazogXCIgT2lua1wifSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIF1cbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG4gIHRlbXBsYXRlLmhhc1Jlc291cmNlUHJvcGVydGllcyhcIkN1c3RvbTo6QVdTXCIsIHt9KTtcbn0pO1xuIl19
|
|
File without changes
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const index_1 = require("../index");
|
|
4
|
+
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
5
|
+
const aws_dynamodb_1 = require("aws-cdk-lib/aws-dynamodb");
|
|
6
|
+
const test_helper_1 = require("../../test-helper");
|
|
7
|
+
test('Create Table', () => {
|
|
8
|
+
const stack = test_helper_1.TestHelper.stack();
|
|
9
|
+
const table = new index_1.ExtendedTable(stack, "TestTable", {
|
|
10
|
+
partitionKey: {
|
|
11
|
+
name: "Pk", type: aws_dynamodb_1.AttributeType.STRING
|
|
12
|
+
},
|
|
13
|
+
sortKey: {
|
|
14
|
+
name: "Sk", type: aws_dynamodb_1.AttributeType.STRING
|
|
15
|
+
},
|
|
16
|
+
billingMode: aws_dynamodb_1.BillingMode.PAY_PER_REQUEST
|
|
17
|
+
});
|
|
18
|
+
table.addGlobalSecondaryIndex({
|
|
19
|
+
indexName: "TestIndex",
|
|
20
|
+
partitionKey: {
|
|
21
|
+
name: "Pk",
|
|
22
|
+
type: aws_dynamodb_1.AttributeType.STRING
|
|
23
|
+
},
|
|
24
|
+
sortKey: {
|
|
25
|
+
name: "Gsi", type: aws_dynamodb_1.AttributeType.STRING
|
|
26
|
+
},
|
|
27
|
+
});
|
|
28
|
+
const template = assertions_1.Template.fromStack(stack);
|
|
29
|
+
template.resourceCountIs(test_helper_1.ResourceType.DYNAMODB_TABLE, 1);
|
|
30
|
+
template.resourceCountIs(test_helper_1.ResourceType.CLOUDWATCH_ALARM, 3); // three alarms are generated by default
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtdGFibGUudGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImV4dGVuZGVkLXRhYmxlLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvQ0FBdUM7QUFDdkMsdURBQWdEO0FBQ2hELDJEQUFvRTtBQUNwRSxtREFBMkQ7QUFFM0QsSUFBSSxDQUFDLGNBQWMsRUFBRSxHQUFHLEVBQUU7SUFDeEIsTUFBTSxLQUFLLEdBQUcsd0JBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqQyxNQUFNLEtBQUssR0FBRyxJQUFJLHFCQUFhLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRTtRQUNsRCxZQUFZLEVBQUU7WUFDWixJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSw0QkFBYSxDQUFDLE1BQU07U0FDdkM7UUFDRCxPQUFPLEVBQUU7WUFDUCxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSw0QkFBYSxDQUFDLE1BQU07U0FDdkM7UUFDRCxXQUFXLEVBQUUsMEJBQVcsQ0FBQyxlQUFlO0tBQ3pDLENBQUMsQ0FBQztJQUNILEtBQUssQ0FBQyx1QkFBdUIsQ0FBQztRQUM1QixTQUFTLEVBQUUsV0FBVztRQUN0QixZQUFZLEVBQUU7WUFDWixJQUFJLEVBQUUsSUFBSTtZQUNWLElBQUksRUFBRSw0QkFBYSxDQUFDLE1BQU07U0FDM0I7UUFDRCxPQUFPLEVBQUU7WUFDUCxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSw0QkFBYSxDQUFDLE1BQU07U0FDeEM7S0FDRixDQUFDLENBQUM7SUFDSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxRQUFRLENBQUMsZUFBZSxDQUFDLDBCQUFZLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3pELFFBQVEsQ0FBQyxlQUFlLENBQUMsMEJBQVksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLHdDQUF3QztBQUN0RyxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RXh0ZW5kZWRUYWJsZX0gZnJvbSBcIi4uL2luZGV4XCI7XG5pbXBvcnQge1RlbXBsYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXNzZXJ0aW9uc1wiO1xuaW1wb3J0IHtBdHRyaWJ1dGVUeXBlLCBCaWxsaW5nTW9kZX0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1keW5hbW9kYlwiO1xuaW1wb3J0IHtSZXNvdXJjZVR5cGUsIFRlc3RIZWxwZXJ9IGZyb20gXCIuLi8uLi90ZXN0LWhlbHBlclwiO1xuXG50ZXN0KCdDcmVhdGUgVGFibGUnLCAoKSA9PiB7XG4gIGNvbnN0IHN0YWNrID0gVGVzdEhlbHBlci5zdGFjaygpO1xuICBjb25zdCB0YWJsZSA9IG5ldyBFeHRlbmRlZFRhYmxlKHN0YWNrLCBcIlRlc3RUYWJsZVwiLCB7XG4gICAgcGFydGl0aW9uS2V5OiB7XG4gICAgICBuYW1lOiBcIlBrXCIsIHR5cGU6IEF0dHJpYnV0ZVR5cGUuU1RSSU5HXG4gICAgfSxcbiAgICBzb3J0S2V5OiB7XG4gICAgICBuYW1lOiBcIlNrXCIsIHR5cGU6IEF0dHJpYnV0ZVR5cGUuU1RSSU5HXG4gICAgfSxcbiAgICBiaWxsaW5nTW9kZTogQmlsbGluZ01vZGUuUEFZX1BFUl9SRVFVRVNUXG4gIH0pO1xuICB0YWJsZS5hZGRHbG9iYWxTZWNvbmRhcnlJbmRleCh7XG4gICAgaW5kZXhOYW1lOiBcIlRlc3RJbmRleFwiLFxuICAgIHBhcnRpdGlvbktleToge1xuICAgICAgbmFtZTogXCJQa1wiLFxuICAgICAgdHlwZTogQXR0cmlidXRlVHlwZS5TVFJJTkdcbiAgICB9LFxuICAgIHNvcnRLZXk6IHtcbiAgICAgIG5hbWU6IFwiR3NpXCIsIHR5cGU6IEF0dHJpYnV0ZVR5cGUuU1RSSU5HXG4gICAgfSxcbiAgfSk7XG4gIGNvbnN0IHRlbXBsYXRlID0gVGVtcGxhdGUuZnJvbVN0YWNrKHN0YWNrKTtcbiAgdGVtcGxhdGUucmVzb3VyY2VDb3VudElzKFJlc291cmNlVHlwZS5EWU5BTU9EQl9UQUJMRSwgMSk7XG4gIHRlbXBsYXRlLnJlc291cmNlQ291bnRJcyhSZXNvdXJjZVR5cGUuQ0xPVURXQVRDSF9BTEFSTSwgMyk7IC8vIHRocmVlIGFsYXJtcyBhcmUgZ2VuZXJhdGVkIGJ5IGRlZmF1bHRcbn0pO1xuIl19
|
|
File without changes
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const test_helper_1 = require("
|
|
3
|
+
const test_helper_1 = require("../../test-helper");
|
|
4
4
|
const util_dynamodb_1 = require("@aws-sdk/util-dynamodb");
|
|
5
|
-
const put_item_1 = require("
|
|
5
|
+
const put_item_1 = require("./put-item");
|
|
6
6
|
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
7
7
|
test("Test PutItem", () => {
|
|
8
8
|
const stack = test_helper_1.TestHelper.stack();
|
|
@@ -26,4 +26,4 @@ test("Test PutItem", () => {
|
|
|
26
26
|
const template = assertions_1.Template.fromStack(stack);
|
|
27
27
|
template.hasResourceProperties("Custom::AWS", {});
|
|
28
28
|
});
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHV0LWl0ZW0udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInB1dC1pdGVtLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtREFBNkM7QUFFN0MsMERBQWdEO0FBQ2hELHlDQUFtQztBQUNuQyx1REFBZ0Q7QUFFaEQsSUFBSSxDQUFDLGNBQWMsRUFBRSxHQUFHLEVBQUU7SUFDeEIsTUFBTSxLQUFLLEdBQUcsd0JBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqQyxNQUFNLElBQUksR0FBRyx3QkFBUSxDQUFDO1FBQ3BCLEVBQUUsRUFBRSxZQUFZO1FBQ2hCLEVBQUUsRUFBRSxZQUFZO1FBQ2hCLFVBQVUsRUFBRSxLQUFLO1FBQ2pCLE9BQU8sRUFBRTtZQUNQLEVBQUUsRUFBRSxRQUFRO1lBQ1osV0FBVyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDdkIsT0FBTyxFQUFFO2dCQUNQLElBQUksRUFBRSxhQUFhO2dCQUNuQixLQUFLLEVBQUUsaUJBQWlCO2FBQ3pCO1NBQ0Y7S0FDRixDQUFDLENBQUM7SUFDSCxJQUFJLGtCQUFPLENBQUMsS0FBSyxFQUFFLFlBQVksRUFBRTtRQUMvQixTQUFTLEVBQUUsY0FBYztRQUN6QixJQUFJO0tBQ0wsQ0FBQyxDQUFDO0lBQ0gsTUFBTSxRQUFRLEdBQUcscUJBQVEsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0MsUUFBUSxDQUFDLHFCQUFxQixDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUMsQ0FBQztBQUNwRCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VGVzdEhlbHBlcn0gZnJvbSBcIi4uLy4uL3Rlc3QtaGVscGVyXCI7XG5cbmltcG9ydCB7bWFyc2hhbGx9IGZyb20gXCJAYXdzLXNkay91dGlsLWR5bmFtb2RiXCI7XG5pbXBvcnQge1B1dEl0ZW19IGZyb20gXCIuL3B1dC1pdGVtXCI7XG5pbXBvcnQge1RlbXBsYXRlfSBmcm9tIFwiYXdzLWNkay1saWIvYXNzZXJ0aW9uc1wiO1xuXG50ZXN0KFwiVGVzdCBQdXRJdGVtXCIsICgpID0+IHtcbiAgY29uc3Qgc3RhY2sgPSBUZXN0SGVscGVyLnN0YWNrKCk7XG4gIGNvbnN0IGl0ZW0gPSBtYXJzaGFsbCh7XG4gICAgUGs6IFwiT3JnI3NlY3VyZVwiLFxuICAgIFNrOiBcIk9yZ0RldGFpbHNcIixcbiAgICBFbnRpdHlUeXBlOiBcIk9yZ1wiLFxuICAgIERldGFpbHM6IHtcbiAgICAgIGlkOiBcInNlY3VyZVwiLFxuICAgICAgY3JlYXRlZERhdGU6IERhdGUubm93KCksXG4gICAgICBjb250YWN0OiB7XG4gICAgICAgIG5hbWU6IFwiQm9iIEV4YW1wbGVcIixcbiAgICAgICAgZW1haWw6IFwiYm9iQGV4YW1wbGUuY29tXCJcbiAgICAgIH1cbiAgICB9XG4gIH0pO1xuICBuZXcgUHV0SXRlbShzdGFjaywgXCJFeGFtcGxlUHV0XCIsIHtcbiAgICB0YWJsZU5hbWU6IFwiRXhhbXBsZVRhYmxlXCIsXG4gICAgaXRlbVxuICB9KTtcbiAgY29uc3QgdGVtcGxhdGUgPSBUZW1wbGF0ZS5mcm9tU3RhY2soc3RhY2spO1xuICB0ZW1wbGF0ZS5oYXNSZXNvdXJjZVByb3BlcnRpZXMoXCJDdXN0b206OkFXU1wiLCB7fSk7XG59KTtcbiJdfQ==
|
|
File without changes
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const test_helper_1 = require("../../test-helper");
|
|
4
|
+
const assertions_1 = require("aws-cdk-lib/assertions");
|
|
5
|
+
const index_1 = require("../index");
|
|
6
|
+
const aws_lambda_1 = require("aws-cdk-lib/aws-lambda");
|
|
7
|
+
test("Test Function", () => {
|
|
8
|
+
const stack = test_helper_1.TestHelper.stack();
|
|
9
|
+
new index_1.ExtendedFunction(stack, "TestFunction", {
|
|
10
|
+
runtime: aws_lambda_1.Runtime.PYTHON_3_9,
|
|
11
|
+
code: aws_lambda_1.Code.fromAsset(test_helper_1.TestHelper.resolveTestFiles("python-lambda")),
|
|
12
|
+
handler: "handler"
|
|
13
|
+
});
|
|
14
|
+
const template = assertions_1.Template.fromStack(stack);
|
|
15
|
+
template.hasResourceProperties(test_helper_1.ResourceType.LAMBDA_FUNCTION, {
|
|
16
|
+
Runtime: "python3.9"
|
|
17
|
+
});
|
|
18
|
+
template.resourceCountIs(test_helper_1.ResourceType.CLOUDWATCH_ALARM, 3);
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWQtZnVuY3Rpb24udGVzdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImV4dGVuZGVkLWZ1bmN0aW9uLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtREFBMkQ7QUFDM0QsdURBQWdEO0FBQ2hELG9DQUEwQztBQUMxQyx1REFBcUQ7QUFFckQsSUFBSSxDQUFDLGVBQWUsRUFBRSxHQUFHLEVBQUU7SUFDekIsTUFBTSxLQUFLLEdBQUcsd0JBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNqQyxJQUFJLHdCQUFnQixDQUFDLEtBQUssRUFBRSxjQUFjLEVBQUU7UUFDMUMsT0FBTyxFQUFFLG9CQUFPLENBQUMsVUFBVTtRQUMzQixJQUFJLEVBQUUsaUJBQUksQ0FBQyxTQUFTLENBQUMsd0JBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNsRSxPQUFPLEVBQUUsU0FBUztLQUNuQixDQUFDLENBQUM7SUFDSCxNQUFNLFFBQVEsR0FBRyxxQkFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQyxRQUFRLENBQUMscUJBQXFCLENBQUMsMEJBQVksQ0FBQyxlQUFlLEVBQUU7UUFDM0QsT0FBTyxFQUFFLFdBQVc7S0FDckIsQ0FBQyxDQUFDO0lBQ0gsUUFBUSxDQUFDLGVBQWUsQ0FBQywwQkFBWSxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQzdELENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtSZXNvdXJjZVR5cGUsIFRlc3RIZWxwZXJ9IGZyb20gXCIuLi8uLi90ZXN0LWhlbHBlclwiO1xuaW1wb3J0IHtUZW1wbGF0ZX0gZnJvbSBcImF3cy1jZGstbGliL2Fzc2VydGlvbnNcIjtcbmltcG9ydCB7RXh0ZW5kZWRGdW5jdGlvbn0gZnJvbSBcIi4uL2luZGV4XCI7XG5pbXBvcnQge0NvZGUsIFJ1bnRpbWV9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCI7XG5cbnRlc3QoXCJUZXN0IEZ1bmN0aW9uXCIsICgpID0+IHtcbiAgY29uc3Qgc3RhY2sgPSBUZXN0SGVscGVyLnN0YWNrKCk7XG4gIG5ldyBFeHRlbmRlZEZ1bmN0aW9uKHN0YWNrLCBcIlRlc3RGdW5jdGlvblwiLCB7XG4gICAgcnVudGltZTogUnVudGltZS5QWVRIT05fM185LFxuICAgIGNvZGU6IENvZGUuZnJvbUFzc2V0KFRlc3RIZWxwZXIucmVzb2x2ZVRlc3RGaWxlcyhcInB5dGhvbi1sYW1iZGFcIikpLFxuICAgIGhhbmRsZXI6IFwiaGFuZGxlclwiXG4gIH0pO1xuICBjb25zdCB0ZW1wbGF0ZSA9IFRlbXBsYXRlLmZyb21TdGFjayhzdGFjayk7XG4gIHRlbXBsYXRlLmhhc1Jlc291cmNlUHJvcGVydGllcyhSZXNvdXJjZVR5cGUuTEFNQkRBX0ZVTkNUSU9OLCB7XG4gICAgUnVudGltZTogXCJweXRob24zLjlcIlxuICB9KTtcbiAgdGVtcGxhdGUucmVzb3VyY2VDb3VudElzKFJlc291cmNlVHlwZS5DTE9VRFdBVENIX0FMQVJNLCAzKTtcbn0pO1xuIl19
|
|
File without changes
|