@mavogel/awscdk-rootmail 0.0.201 → 0.0.203

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.
Files changed (71) hide show
  1. package/.jsii +8 -8
  2. package/lib/rootmail.js +1 -1
  3. package/lib/ses-receive.js +1 -1
  4. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-types/models/models_0.d.ts +404 -404
  5. package/node_modules/@aws-sdk/client-cloudwatch-logs/dist-types/ts3.4/models/models_0.d.ts +408 -404
  6. package/node_modules/@aws-sdk/client-cloudwatch-logs/package.json +7 -7
  7. package/node_modules/@aws-sdk/client-route-53/dist-types/models/models_0.d.ts +225 -225
  8. package/node_modules/@aws-sdk/client-route-53/dist-types/ts3.4/models/models_0.d.ts +225 -225
  9. package/node_modules/@aws-sdk/client-route-53/package.json +7 -7
  10. package/node_modules/@aws-sdk/client-s3/dist-types/models/models_0.d.ts +777 -777
  11. package/node_modules/@aws-sdk/client-s3/dist-types/models/models_1.d.ts +279 -279
  12. package/node_modules/@aws-sdk/client-s3/dist-types/ts3.4/models/models_0.d.ts +792 -780
  13. package/node_modules/@aws-sdk/client-s3/dist-types/ts3.4/models/models_1.d.ts +279 -279
  14. package/node_modules/@aws-sdk/client-s3/package.json +11 -11
  15. package/node_modules/@aws-sdk/client-ses/dist-types/models/models_0.d.ts +195 -195
  16. package/node_modules/@aws-sdk/client-ses/dist-types/ts3.4/models/models_0.d.ts +197 -195
  17. package/node_modules/@aws-sdk/client-ses/package.json +7 -7
  18. package/node_modules/@aws-sdk/client-ssm/dist-types/models/models_0.d.ts +702 -702
  19. package/node_modules/@aws-sdk/client-ssm/dist-types/models/models_1.d.ts +868 -868
  20. package/node_modules/@aws-sdk/client-ssm/dist-types/models/models_2.d.ts +191 -191
  21. package/node_modules/@aws-sdk/client-ssm/dist-types/ts3.4/models/models_0.d.ts +706 -702
  22. package/node_modules/@aws-sdk/client-ssm/dist-types/ts3.4/models/models_1.d.ts +880 -880
  23. package/node_modules/@aws-sdk/client-ssm/dist-types/ts3.4/models/models_2.d.ts +199 -197
  24. package/node_modules/@aws-sdk/client-ssm/package.json +7 -7
  25. package/node_modules/@aws-sdk/client-sso/dist-types/models/models_0.d.ts +18 -18
  26. package/node_modules/@aws-sdk/client-sso/dist-types/ts3.4/models/models_0.d.ts +18 -18
  27. package/node_modules/@aws-sdk/client-sso/package.json +4 -4
  28. package/node_modules/@aws-sdk/client-sso-oidc/dist-types/models/models_0.d.ts +74 -74
  29. package/node_modules/@aws-sdk/client-sso-oidc/dist-types/ts3.4/models/models_0.d.ts +74 -74
  30. package/node_modules/@aws-sdk/client-sso-oidc/package.json +6 -6
  31. package/node_modules/@aws-sdk/client-sts/dist-types/models/models_0.d.ts +56 -56
  32. package/node_modules/@aws-sdk/client-sts/dist-types/ts3.4/models/models_0.d.ts +56 -56
  33. package/node_modules/@aws-sdk/client-sts/package.json +6 -6
  34. package/node_modules/@aws-sdk/core/package.json +3 -3
  35. package/node_modules/@aws-sdk/credential-provider-env/package.json +3 -3
  36. package/node_modules/@aws-sdk/credential-provider-http/package.json +3 -3
  37. package/node_modules/@aws-sdk/credential-provider-ini/package.json +11 -11
  38. package/node_modules/@aws-sdk/credential-provider-node/package.json +10 -10
  39. package/node_modules/@aws-sdk/credential-provider-process/package.json +4 -4
  40. package/node_modules/@aws-sdk/credential-provider-sso/package.json +6 -6
  41. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +6 -6
  42. package/node_modules/@aws-sdk/middleware-flexible-checksums/package.json +2 -2
  43. package/node_modules/@aws-sdk/middleware-sdk-s3/package.json +3 -3
  44. package/node_modules/@aws-sdk/middleware-user-agent/package.json +2 -2
  45. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +3 -3
  46. package/node_modules/@aws-sdk/token-providers/package.json +4 -4
  47. package/node_modules/@aws-sdk/util-user-agent-node/package.json +2 -2
  48. package/node_modules/cdk-nag/.jsii +47 -54
  49. package/node_modules/cdk-nag/RULES.md +3 -5
  50. package/node_modules/cdk-nag/lib/ignore-suppression-conditions.js +5 -5
  51. package/node_modules/cdk-nag/lib/nag-logger.js +2 -2
  52. package/node_modules/cdk-nag/lib/nag-pack.js +1 -1
  53. package/node_modules/cdk-nag/lib/nag-rules.js +1 -1
  54. package/node_modules/cdk-nag/lib/nag-suppressions.js +1 -1
  55. package/node_modules/cdk-nag/lib/packs/aws-solutions.js +2 -19
  56. package/node_modules/cdk-nag/lib/packs/hipaa-security.js +1 -1
  57. package/node_modules/cdk-nag/lib/packs/nist-800-53-r4.js +1 -1
  58. package/node_modules/cdk-nag/lib/packs/nist-800-53-r5.js +1 -1
  59. package/node_modules/cdk-nag/lib/packs/pci-dss-321.js +1 -1
  60. package/node_modules/cdk-nag/lib/rules/codebuild/index.d.ts +0 -1
  61. package/node_modules/cdk-nag/lib/rules/codebuild/index.js +1 -3
  62. package/node_modules/cdk-nag/lib/rules/index.d.ts +0 -1
  63. package/node_modules/cdk-nag/lib/rules/index.js +1 -2
  64. package/node_modules/cdk-nag/package.json +1 -1
  65. package/package.json +8 -8
  66. package/node_modules/cdk-nag/lib/rules/athena/AthenaWorkgroupEncryptedQueryResults.d.ts +0 -6
  67. package/node_modules/cdk-nag/lib/rules/athena/AthenaWorkgroupEncryptedQueryResults.js +0 -36
  68. package/node_modules/cdk-nag/lib/rules/athena/index.d.ts +0 -1
  69. package/node_modules/cdk-nag/lib/rules/athena/index.js +0 -9
  70. package/node_modules/cdk-nag/lib/rules/codebuild/CodeBuildProjectPrivilegedModeDisabled.d.ts +0 -6
  71. package/node_modules/cdk-nag/lib/rules/codebuild/CodeBuildProjectPrivilegedModeDisabled.js +0 -28
@@ -1,36 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /*
4
- Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
5
- SPDX-License-Identifier: Apache-2.0
6
- */
7
- const path_1 = require("path");
8
- const aws_cdk_lib_1 = require("aws-cdk-lib");
9
- const aws_athena_1 = require("aws-cdk-lib/aws-athena");
10
- const nag_rules_1 = require("../../nag-rules");
11
- /**
12
- * Athena workgroups encrypt query results
13
- * @param node the CfnResource to check
14
- */
15
- exports.default = Object.defineProperty((node) => {
16
- if (node instanceof aws_athena_1.CfnWorkGroup) {
17
- const workGroupConfiguration = aws_cdk_lib_1.Stack.of(node).resolve(node.workGroupConfiguration);
18
- const enforceWorkGroupConfiguration = nag_rules_1.NagRules.resolveIfPrimitive(node, workGroupConfiguration?.enforceWorkGroupConfiguration);
19
- if (!enforceWorkGroupConfiguration) {
20
- return nag_rules_1.NagRuleCompliance.NON_COMPLIANT;
21
- }
22
- const resultConfiguration = aws_cdk_lib_1.Stack.of(node).resolve(workGroupConfiguration.resultConfiguration);
23
- if (resultConfiguration === undefined) {
24
- return nag_rules_1.NagRuleCompliance.NON_COMPLIANT;
25
- }
26
- const encryptionConfiguration = aws_cdk_lib_1.Stack.of(node).resolve(resultConfiguration.encryptionConfiguration);
27
- if (encryptionConfiguration === undefined) {
28
- return nag_rules_1.NagRuleCompliance.NON_COMPLIANT;
29
- }
30
- return nag_rules_1.NagRuleCompliance.COMPLIANT;
31
- }
32
- else {
33
- return nag_rules_1.NagRuleCompliance.NOT_APPLICABLE;
34
- }
35
- }, 'name', { value: path_1.parse(__filename).name });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXRoZW5hV29ya2dyb3VwRW5jcnlwdGVkUXVlcnlSZXN1bHRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3J1bGVzL2F0aGVuYS9BdGhlbmFXb3JrZ3JvdXBFbmNyeXB0ZWRRdWVyeVJlc3VsdHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQTs7O0VBR0U7QUFDRiwrQkFBNkI7QUFDN0IsNkNBQWlEO0FBQ2pELHVEQUFzRDtBQUN0RCwrQ0FBOEQ7QUFFOUQ7OztHQUdHO0FBQ0gsa0JBQWUsTUFBTSxDQUFDLGNBQWMsQ0FDbEMsQ0FBQyxJQUFpQixFQUFxQixFQUFFO0lBQ3ZDLElBQUksSUFBSSxZQUFZLHlCQUFZLEVBQUU7UUFDaEMsTUFBTSxzQkFBc0IsR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQ25ELElBQUksQ0FBQyxzQkFBc0IsQ0FDNUIsQ0FBQztRQUNGLE1BQU0sNkJBQTZCLEdBQUcsb0JBQVEsQ0FBQyxrQkFBa0IsQ0FDL0QsSUFBSSxFQUNKLHNCQUFzQixFQUFFLDZCQUE2QixDQUN0RCxDQUFDO1FBQ0YsSUFBSSxDQUFDLDZCQUE2QixFQUFFO1lBQ2xDLE9BQU8sNkJBQWlCLENBQUMsYUFBYSxDQUFDO1NBQ3hDO1FBQ0QsTUFBTSxtQkFBbUIsR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQ2hELHNCQUFzQixDQUFDLG1CQUFtQixDQUMzQyxDQUFDO1FBQ0YsSUFBSSxtQkFBbUIsS0FBSyxTQUFTLEVBQUU7WUFDckMsT0FBTyw2QkFBaUIsQ0FBQyxhQUFhLENBQUM7U0FDeEM7UUFDRCxNQUFNLHVCQUF1QixHQUFHLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FDcEQsbUJBQW1CLENBQUMsdUJBQXVCLENBQzVDLENBQUM7UUFDRixJQUFJLHVCQUF1QixLQUFLLFNBQVMsRUFBRTtZQUN6QyxPQUFPLDZCQUFpQixDQUFDLGFBQWEsQ0FBQztTQUN4QztRQUNELE9BQU8sNkJBQWlCLENBQUMsU0FBUyxDQUFDO0tBQ3BDO1NBQU07UUFDTCxPQUFPLDZCQUFpQixDQUFDLGNBQWMsQ0FBQztLQUN6QztBQUNILENBQUMsRUFDRCxNQUFNLEVBQ04sRUFBRSxLQUFLLEVBQUUsWUFBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUNsQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiovXG5pbXBvcnQgeyBwYXJzZSB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQ2ZuUmVzb3VyY2UsIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQ2ZuV29ya0dyb3VwIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWF0aGVuYSc7XG5pbXBvcnQgeyBOYWdSdWxlQ29tcGxpYW5jZSwgTmFnUnVsZXMgfSBmcm9tICcuLi8uLi9uYWctcnVsZXMnO1xuXG4vKipcbiAqIEF0aGVuYSB3b3JrZ3JvdXBzIGVuY3J5cHQgcXVlcnkgcmVzdWx0c1xuICogQHBhcmFtIG5vZGUgdGhlIENmblJlc291cmNlIHRvIGNoZWNrXG4gKi9cbmV4cG9ydCBkZWZhdWx0IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShcbiAgKG5vZGU6IENmblJlc291cmNlKTogTmFnUnVsZUNvbXBsaWFuY2UgPT4ge1xuICAgIGlmIChub2RlIGluc3RhbmNlb2YgQ2ZuV29ya0dyb3VwKSB7XG4gICAgICBjb25zdCB3b3JrR3JvdXBDb25maWd1cmF0aW9uID0gU3RhY2sub2Yobm9kZSkucmVzb2x2ZShcbiAgICAgICAgbm9kZS53b3JrR3JvdXBDb25maWd1cmF0aW9uXG4gICAgICApO1xuICAgICAgY29uc3QgZW5mb3JjZVdvcmtHcm91cENvbmZpZ3VyYXRpb24gPSBOYWdSdWxlcy5yZXNvbHZlSWZQcmltaXRpdmUoXG4gICAgICAgIG5vZGUsXG4gICAgICAgIHdvcmtHcm91cENvbmZpZ3VyYXRpb24/LmVuZm9yY2VXb3JrR3JvdXBDb25maWd1cmF0aW9uXG4gICAgICApO1xuICAgICAgaWYgKCFlbmZvcmNlV29ya0dyb3VwQ29uZmlndXJhdGlvbikge1xuICAgICAgICByZXR1cm4gTmFnUnVsZUNvbXBsaWFuY2UuTk9OX0NPTVBMSUFOVDtcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlc3VsdENvbmZpZ3VyYXRpb24gPSBTdGFjay5vZihub2RlKS5yZXNvbHZlKFxuICAgICAgICB3b3JrR3JvdXBDb25maWd1cmF0aW9uLnJlc3VsdENvbmZpZ3VyYXRpb25cbiAgICAgICk7XG4gICAgICBpZiAocmVzdWx0Q29uZmlndXJhdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBOYWdSdWxlQ29tcGxpYW5jZS5OT05fQ09NUExJQU5UO1xuICAgICAgfVxuICAgICAgY29uc3QgZW5jcnlwdGlvbkNvbmZpZ3VyYXRpb24gPSBTdGFjay5vZihub2RlKS5yZXNvbHZlKFxuICAgICAgICByZXN1bHRDb25maWd1cmF0aW9uLmVuY3J5cHRpb25Db25maWd1cmF0aW9uXG4gICAgICApO1xuICAgICAgaWYgKGVuY3J5cHRpb25Db25maWd1cmF0aW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIE5hZ1J1bGVDb21wbGlhbmNlLk5PTl9DT01QTElBTlQ7XG4gICAgICB9XG4gICAgICByZXR1cm4gTmFnUnVsZUNvbXBsaWFuY2UuQ09NUExJQU5UO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gTmFnUnVsZUNvbXBsaWFuY2UuTk9UX0FQUExJQ0FCTEU7XG4gICAgfVxuICB9LFxuICAnbmFtZScsXG4gIHsgdmFsdWU6IHBhcnNlKF9fZmlsZW5hbWUpLm5hbWUgfVxuKTtcbiJdfQ==
@@ -1 +0,0 @@
1
- export { default as AthenaWorkgroupEncryptedQueryResults } from './AthenaWorkgroupEncryptedQueryResults';
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /*
4
- Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
5
- SPDX-License-Identifier: Apache-2.0
6
- */
7
- var AthenaWorkgroupEncryptedQueryResults_1 = require("./AthenaWorkgroupEncryptedQueryResults");
8
- Object.defineProperty(exports, "AthenaWorkgroupEncryptedQueryResults", { enumerable: true, get: function () { return AthenaWorkgroupEncryptedQueryResults_1.default; } });
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVsZXMvYXRoZW5hL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7OztFQUdFO0FBQ0YsK0ZBQXlHO0FBQWhHLDRKQUFBLE9BQU8sT0FBd0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuKi9cbmV4cG9ydCB7IGRlZmF1bHQgYXMgQXRoZW5hV29ya2dyb3VwRW5jcnlwdGVkUXVlcnlSZXN1bHRzIH0gZnJvbSAnLi9BdGhlbmFXb3JrZ3JvdXBFbmNyeXB0ZWRRdWVyeVJlc3VsdHMnO1xuIl19
@@ -1,6 +0,0 @@
1
- declare const _default: any;
2
- /**
3
- * Codebuild projects have privileged mode disabled
4
- * @param node the CfnResource to check
5
- */
6
- export default _default;
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /*
4
- Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
5
- SPDX-License-Identifier: Apache-2.0
6
- */
7
- const path_1 = require("path");
8
- const aws_cdk_lib_1 = require("aws-cdk-lib");
9
- const aws_codebuild_1 = require("aws-cdk-lib/aws-codebuild");
10
- const nag_rules_1 = require("../../nag-rules");
11
- /**
12
- * Codebuild projects have privileged mode disabled
13
- * @param node the CfnResource to check
14
- */
15
- exports.default = Object.defineProperty((node) => {
16
- if (node instanceof aws_codebuild_1.CfnProject) {
17
- const environment = aws_cdk_lib_1.Stack.of(node).resolve(node.environment);
18
- const privilegedMode = nag_rules_1.NagRules.resolveIfPrimitive(node, environment.privilegedMode);
19
- if (privilegedMode != undefined && privilegedMode) {
20
- return nag_rules_1.NagRuleCompliance.NON_COMPLIANT;
21
- }
22
- return nag_rules_1.NagRuleCompliance.COMPLIANT;
23
- }
24
- else {
25
- return nag_rules_1.NagRuleCompliance.NOT_APPLICABLE;
26
- }
27
- }, 'name', { value: path_1.parse(__filename).name });
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29kZUJ1aWxkUHJvamVjdFByaXZpbGVnZWRNb2RlRGlzYWJsZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcnVsZXMvY29kZWJ1aWxkL0NvZGVCdWlsZFByb2plY3RQcml2aWxlZ2VkTW9kZURpc2FibGVkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUE7OztFQUdFO0FBQ0YsK0JBQTZCO0FBQzdCLDZDQUFpRDtBQUNqRCw2REFBdUQ7QUFDdkQsK0NBQThEO0FBRTlEOzs7R0FHRztBQUNILGtCQUFlLE1BQU0sQ0FBQyxjQUFjLENBQ2xDLENBQUMsSUFBaUIsRUFBcUIsRUFBRTtJQUN2QyxJQUFJLElBQUksWUFBWSwwQkFBVSxFQUFFO1FBQzlCLE1BQU0sV0FBVyxHQUFHLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDN0QsTUFBTSxjQUFjLEdBQUcsb0JBQVEsQ0FBQyxrQkFBa0IsQ0FDaEQsSUFBSSxFQUNKLFdBQVcsQ0FBQyxjQUFjLENBQzNCLENBQUM7UUFDRixJQUFJLGNBQWMsSUFBSSxTQUFTLElBQUksY0FBYyxFQUFFO1lBQ2pELE9BQU8sNkJBQWlCLENBQUMsYUFBYSxDQUFDO1NBQ3hDO1FBQ0QsT0FBTyw2QkFBaUIsQ0FBQyxTQUFTLENBQUM7S0FDcEM7U0FBTTtRQUNMLE9BQU8sNkJBQWlCLENBQUMsY0FBYyxDQUFDO0tBQ3pDO0FBQ0gsQ0FBQyxFQUNELE1BQU0sRUFDTixFQUFFLEtBQUssRUFBRSxZQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuKi9cbmltcG9ydCB7IHBhcnNlIH0gZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBDZm5SZXNvdXJjZSwgU3RhY2sgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDZm5Qcm9qZWN0IH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNvZGVidWlsZCc7XG5pbXBvcnQgeyBOYWdSdWxlQ29tcGxpYW5jZSwgTmFnUnVsZXMgfSBmcm9tICcuLi8uLi9uYWctcnVsZXMnO1xuXG4vKipcbiAqIENvZGVidWlsZCBwcm9qZWN0cyBoYXZlIHByaXZpbGVnZWQgbW9kZSBkaXNhYmxlZFxuICogQHBhcmFtIG5vZGUgdGhlIENmblJlc291cmNlIHRvIGNoZWNrXG4gKi9cbmV4cG9ydCBkZWZhdWx0IE9iamVjdC5kZWZpbmVQcm9wZXJ0eShcbiAgKG5vZGU6IENmblJlc291cmNlKTogTmFnUnVsZUNvbXBsaWFuY2UgPT4ge1xuICAgIGlmIChub2RlIGluc3RhbmNlb2YgQ2ZuUHJvamVjdCkge1xuICAgICAgY29uc3QgZW52aXJvbm1lbnQgPSBTdGFjay5vZihub2RlKS5yZXNvbHZlKG5vZGUuZW52aXJvbm1lbnQpO1xuICAgICAgY29uc3QgcHJpdmlsZWdlZE1vZGUgPSBOYWdSdWxlcy5yZXNvbHZlSWZQcmltaXRpdmUoXG4gICAgICAgIG5vZGUsXG4gICAgICAgIGVudmlyb25tZW50LnByaXZpbGVnZWRNb2RlXG4gICAgICApO1xuICAgICAgaWYgKHByaXZpbGVnZWRNb2RlICE9IHVuZGVmaW5lZCAmJiBwcml2aWxlZ2VkTW9kZSkge1xuICAgICAgICByZXR1cm4gTmFnUnVsZUNvbXBsaWFuY2UuTk9OX0NPTVBMSUFOVDtcbiAgICAgIH1cbiAgICAgIHJldHVybiBOYWdSdWxlQ29tcGxpYW5jZS5DT01QTElBTlQ7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBOYWdSdWxlQ29tcGxpYW5jZS5OT1RfQVBQTElDQUJMRTtcbiAgICB9XG4gIH0sXG4gICduYW1lJyxcbiAgeyB2YWx1ZTogcGFyc2UoX19maWxlbmFtZSkubmFtZSB9XG4pO1xuIl19