Socket
Socket
Sign inDemoInstall

@aws-cdk/cfnspec

Package Overview
Dependencies
Maintainers
5
Versions
476
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aws-cdk/cfnspec - npm Package Compare versions

Comparing version 1.0.0 to 1.1.0

.nyc_output/03605884-d045-46d8-b97a-b5ebf4d9ec58.json

2

.nyc_output/processinfo/index.json

@@ -1,1 +0,1 @@

{"processes":{"b81eafe7-5085-47de-8c9b-192389fd7b9a":{"parent":null,"children":[]},"d7161cea-415d-4dc4-a7cc-06f2b0b45863":{"parent":null,"children":[]}},"files":{"/codebuild/output/src906081776/src/packages/@aws-cdk/cfnspec/lib/index.js":["b81eafe7-5085-47de-8c9b-192389fd7b9a","d7161cea-415d-4dc4-a7cc-06f2b0b45863"],"/codebuild/output/src906081776/src/packages/@aws-cdk/cfnspec/lib/schema/augmentation.js":["b81eafe7-5085-47de-8c9b-192389fd7b9a","d7161cea-415d-4dc4-a7cc-06f2b0b45863"],"/codebuild/output/src906081776/src/packages/@aws-cdk/cfnspec/lib/schema/base-types.js":["b81eafe7-5085-47de-8c9b-192389fd7b9a","d7161cea-415d-4dc4-a7cc-06f2b0b45863"],"/codebuild/output/src906081776/src/packages/@aws-cdk/cfnspec/lib/schema/index.js":["b81eafe7-5085-47de-8c9b-192389fd7b9a","d7161cea-415d-4dc4-a7cc-06f2b0b45863"],"/codebuild/output/src906081776/src/packages/@aws-cdk/cfnspec/lib/schema/property.js":["b81eafe7-5085-47de-8c9b-192389fd7b9a","d7161cea-415d-4dc4-a7cc-06f2b0b45863"],"/codebuild/output/src906081776/src/packages/@aws-cdk/cfnspec/lib/schema/resource-type.js":["b81eafe7-5085-47de-8c9b-192389fd7b9a","d7161cea-415d-4dc4-a7cc-06f2b0b45863"],"/codebuild/output/src906081776/src/packages/@aws-cdk/cfnspec/lib/schema/specification.js":["b81eafe7-5085-47de-8c9b-192389fd7b9a","d7161cea-415d-4dc4-a7cc-06f2b0b45863"]},"externalIds":{}}
{"processes":{"03605884-d045-46d8-b97a-b5ebf4d9ec58":{"parent":null,"children":[]},"28c61c2e-8c1a-4bcd-bddc-22a5da8bcf25":{"parent":null,"children":[]}},"files":{"/codebuild/output/src141194036/src/packages/@aws-cdk/cfnspec/lib/index.js":["03605884-d045-46d8-b97a-b5ebf4d9ec58","28c61c2e-8c1a-4bcd-bddc-22a5da8bcf25"],"/codebuild/output/src141194036/src/packages/@aws-cdk/cfnspec/lib/schema/augmentation.js":["03605884-d045-46d8-b97a-b5ebf4d9ec58","28c61c2e-8c1a-4bcd-bddc-22a5da8bcf25"],"/codebuild/output/src141194036/src/packages/@aws-cdk/cfnspec/lib/schema/base-types.js":["03605884-d045-46d8-b97a-b5ebf4d9ec58","28c61c2e-8c1a-4bcd-bddc-22a5da8bcf25"],"/codebuild/output/src141194036/src/packages/@aws-cdk/cfnspec/lib/schema/index.js":["03605884-d045-46d8-b97a-b5ebf4d9ec58","28c61c2e-8c1a-4bcd-bddc-22a5da8bcf25"],"/codebuild/output/src141194036/src/packages/@aws-cdk/cfnspec/lib/schema/property.js":["03605884-d045-46d8-b97a-b5ebf4d9ec58","28c61c2e-8c1a-4bcd-bddc-22a5da8bcf25"],"/codebuild/output/src141194036/src/packages/@aws-cdk/cfnspec/lib/schema/resource-type.js":["03605884-d045-46d8-b97a-b5ebf4d9ec58","28c61c2e-8c1a-4bcd-bddc-22a5da8bcf25"],"/codebuild/output/src141194036/src/packages/@aws-cdk/cfnspec/lib/schema/specification.js":["03605884-d045-46d8-b97a-b5ebf4d9ec58","28c61c2e-8c1a-4bcd-bddc-22a5da8bcf25"]},"externalIds":{}}

@@ -126,5 +126,5 @@ #!/usr/bin/env node

type: "git",
url: "https://github.com/awslabs/aws-cdk.git"
url: "https://github.com/aws/aws-cdk.git"
},
homepage: "https://github.com/awslabs/aws-cdk",
homepage: "https://github.com/aws/aws-cdk",
scripts: {

@@ -226,3 +226,3 @@ build: "cdk-build",

'',
'This module is part of the [AWS Cloud Development Kit](https://github.com/awslabs/aws-cdk) project.',
'This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.',
'',

@@ -265,2 +265,2 @@ '```ts',

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW1pc3NpbmctbGlicmFyaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY3JlYXRlLW1pc3NpbmctbGlicmFyaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUE7OztHQUdHOztBQUVILCtDQUFnRDtBQUNoRCwrQkFBZ0M7QUFDaEMsNkJBQThCO0FBQzlCLGtDQUFtQztBQUVuQyxvQkFBb0I7QUFDcEIsNEJBQTRCO0FBQzVCLDJDQUEyQztBQUUzQyxLQUFLLFVBQVUsSUFBSTtJQUNqQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLFVBQVUsRUFBRTtRQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxJQUFJLDREQUE0RCxDQUFDLENBQUM7S0FDeEg7SUFFRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFFbkQsNkNBQTZDO0lBQzdDLEtBQUssTUFBTSxTQUFTLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFO1FBQzVDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEtBQUssaUJBQWlCLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTlHLE1BQU0sVUFBVSxHQUFHLEdBQUcsWUFBWSxJQUFJLGNBQWMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUNoRyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVoRCxNQUFNLGlCQUFpQixHQUFH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RCxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUU7SUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEIsQ0FBQyxDQUFDLENBQUM7QUFFSCxLQUFLLFVBQVUsSUFBSSxDQUFDLE9BQWU7SUFDakMsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFO1FBQzdDLEtBQUssRUFBRSxDQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFFO1FBQ3pDLEtBQUssRUFBRSxJQUFJO0tBQ1osQ0FBQyxDQUFDO0lBQ0gsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUM5QixLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ3hCLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRTtnQkFDZCxPQUFPLEVBQUUsRUFBRSxDQUFDO2FBQ2I7aUJBQU07Z0JBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUN2RDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuXG4vKipcbiAqIGF1dG9tYXRpY2FsbHkgY3JlYXRlcyBhIG1vZHVsZSBmb3IgYW55IENsb3VkRm9ybWF0aW9uIG5hbWVzcGFjZXMgdGhhdCBkbyBub3RcbiAqIGhhdmUgYW4gQVdTIGNvbnN0cnVjdCBsaWJyYXJ5LlxuICovXG5cbmltcG9ydCBjaGlsZF9wcm9jZXNzID0gcmVxdWlyZSgnY2hpbGRfcHJvY2VzcycpO1xuaW1wb3J0IGZzID0gcmVxdWlyZSgnZnMtZXh0cmEnKTtcbmltcG9ydCBwYXRoID0gcmVxdWlyZSgncGF0aCcpO1xuaW1wb3J0IGNmbnNwZWMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuLy8gZG9uJ3QgYmUgYSBwcnVkZTpcbi8vIHRzbGludDpkaXNhYmxlOm5vLWNvbnNvbGVcbi8vIHRzbGludDpkaXNhYmxlOm9iamVjdC1saXRlcmFsLWtleS1xdW90ZXNcblxuYXN5bmMgZnVuY3Rpb24gbWFpbigpIHtcbiAgY29uc3Qgcm9vdCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLicsICcuLicpO1xuICBpZiAocGF0aC5iYXNlbmFtZShyb290KSAhPT0gJ0Bhd3MtY2RrJykge1xuICAgIHRocm93IG5ldyBFcnJvcihgU29tZXRoaW5nIHdlbnQgd3JvbmcuIFdlIGV4cGVjdGVkICR7cm9vdH0gdG8gYmUgdGhlIFwicGFja2FnZXMvQGF3cy1jZGtcIiBkaXJlY3RvcnkuIERpZCB5b3UgbW92ZSBtZT9gKTtcbiAgfVxuXG4gIGNvbnN0IHZlcnNpb24gPSByZXF1aXJlKCcuLi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uO1xuXG4gIC8vIGl0ZXJhdGUgb3ZlciBhbGwgY2xvdWRmb3JtYXRpb24gbmFtZXNwYWNlc1xuICBmb3IgKGNvbnN0IG5hbWVzcGFjZSBvZiBjZm5zcGVjLm5hbWVzcGFjZXMoKSkge1xuICAgIGNvbnN0IFttb2R1bGVGYW1pbHksIG1vZHVsZUJhc2VOYW1lXSA9IChuYW1lc3BhY2UgPT09ICdBV1M6OlNlcnZlcmxlc3MnID8gJ0FXUzo6U0FNJyA6IG5hbWVzcGFjZSkuc3BsaXQoJzo6Jyk7XG5cbiAgICBjb25zdCBtb2R1bGVOYW1lID0gYCR7bW9kdWxlRmFtaWx5fS0ke21vZHVsZUJhc2VOYW1lLnJlcGxhY2UoL1ZcXGQrJC8sICcnKX1gLnRvTG9jYWxlTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgcGFja2FnZVBhdGggPSBwYXRoLmpvaW4ocm9vdCwgbW9kdWxlTmFtZSk7XG5cbiAgICBjb25zdCBsb3djYXNlTW9kdWxlTmFtZSA9IG1vZHVsZUJhc2VOYW1lLnRvTG9jYWxlTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgcGFja2FnZU5hbWUgPSBgQGF3cy1jZGsvJHttb2R1bGVOYW1lfWA7XG5cbiAgICAvLyB3ZSBhbHJlYWR5IGhhdmUgYSBtb2R1bGUgZm9yIHRoaXMgbmFtZXNhcGNlLCBtb3ZlIG9uLlxuICAgIGlmIChhd2FpdCBmcy5wYXRoRXhpc3RzKHBhY2thZ2VQYXRoKSkge1xuICAgICAgY29uc3QgcGFja2FnZUpzb25QYXRoID0gcGF0aC5qb2luKHBhY2thZ2VQYXRoLCAncGFja2FnZS5qc29uJyk7XG4gICAgICBjb25zdCBwYWNrYWdlSnNvbiA9IHJlcXVpcmUocGFja2FnZUpzb25QYXRoKTtcbiAgICAgIGxldCBzY29wZXM6IHN0cmluZyB8IHN0cmluZ1tdID0gcGFja2FnZUpzb25bJ2Nkay1idWlsZCddLmNsb3VkZm9ybWF0aW9uO1xuICAgICAgaWYgKHR5cGVvZiBzY29wZXMgPT09ICdzdHJpbmcnKSB7IHNjb3BlcyA9IFtzY29wZXNdOyB9XG4gICAgICBpZiAoc2NvcGVzLmluZGV4T2YobmFtZXNwYWNlKSAhPT0gLTEpIHtcbiAgICAgICAgLy8gVjItc3R5bGUgbW9kdWxlIGlzIGFscmVhZHkgbW9kZWxlZCBpbiB0aGUgcm9vdCBwYWNrYWdlLCBub3RoaW5nIHRvIGJlIGRvbmUhXG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfSBlbHNlIGlmIChhd2FpdCBmcy5wYXRoRXhpc3RzKHBhdGguam9pbihyb290LCBgJHttb2R1bGVGYW1pbHl9LSR7bW9kdWxlQmFzZU5hbWV9YC50b0xvY2FsZUxvd2VyQ2FzZSgpKSkpIHtcbiAgICAgICAgLy8gVjItc3R5bGUgcGFja2FnZSBhbHJlYWR5IGhhcyBpdCdzIG93biBwYWNrYWdlIChsZWdhY3kgYmVoYXZpb3IpLCBub3RoaW5nIHRvIGJlIGRvbmUhXG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gVjItc3R5bGUgcGFja2FnZSBuZWVkcyB0byBiZSBhZGRlZCB0byBpdCdzIFwiVjFcIiBwYWNrYWdlLi4uIEdldCBkb3duIHRvIGJ1c2luZXNzIVxuICAgICAgICBjb25zb2xlLmVycm9yKGBBZGRpbmcgJHtuYW1lc3BhY2V9IHRvICR7cGFja2FnZU5hbWV9YCk7XG4gICAgICAgIHNjb3Blcy5wdXNoKG5hbWVzcGFjZSk7XG4gICAgICAgIHBhY2thZ2VKc29uWydjZGstYnVpbGQnXS5jbG91ZGZvcm1hdGlvbiA9IHNjb3BlcztcbiAgICAgICAgYXdhaXQgZnMud3JpdGVKc29uKHBhY2thZ2VKc29uUGF0aCwgcGFja2FnZUpzb24sIHsgZW5jb2Rpbmc6ICd1dGYtOCcsIHNwYWNlczogMiB9KTtcbiAgICAgICAgY29uc3QgaW5kZXhUc1BhdGggPSBwYXRoLmpvaW4ocGFja2FnZVBhdGgsICdsaWInLCAnaW5kZXgudHMnKTtcbiAgICAgICAgY29uc3QgaW5kZXhUcyA9IFtcbiAgICAgICAgICAoYXdhaXQgZnMucmVhZEZpbGUoaW5kZXhUc1BhdGgsIHsgZW5jb2Rpbmc6ICd1dGY4JyB9KSkudHJpbVJpZ2h0KCksXG4gICAgICAgICAgYC8vICR7bmFtZXNwYWNlfSBDbG91ZEZvcm1hdGlvbiBSZXNvdXJjZXM6YCxcbiAgICAgICAgICBgZXhwb3J0ICogZnJvbSAnLi8ke2xvd2Nhc2VNb2R1bGVOYW1lfS5nZW5lcmF0ZWQnO2BcbiAgICAgICAgXS5qb2luKCdcXG4nKTtcbiAgICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKGluZGV4VHNQYXRoLCBpbmRleFRzLCB7IGVuY29kaW5nOiAndXRmOCcgfSk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRvdG5ldCBuYW1lc1xuICAgIGNvbnN0IGRvdG5ldFBhY2thZ2UgPSBgQW1hem9uLkNESy4ke21vZHVsZUZhbWlseX0uJHttb2R1bGVCYXNlTmFtZX1gO1xuXG4gICAgLy8gamF2YSBuYW1lc1xuICAgIGNvbnN0IGphdmFHcm91cElkID0gJ3NvZnR3YXJlLmFtYXpvbi5hd3NjZGsnO1xuICAgIGNvbnN0IGphdmFQYWNrYWdlID0gbW9kdWxlRmFtaWx5ID09PSAnQVdTJ1xuICAgICAgPyBgc2VydmljZXMuJHtsb3djYXNlTW9kdWxlTmFtZX1gXG4gICAgICA6IGAke21vZHVsZUZhbWlseS50b0xvY2FsZUxvd2VyQ2FzZSgpfS4ke2xvd2Nhc2VNb2R1bGVOYW1lfWA7XG4gICAgY29uc3QgamF2YUFydGlmYWN0SWQgPSBtb2R1bGVGYW1pbHkgPT09ICdBV1MnXG4gICAgICA/IGxvd2Nhc2VNb2R1bGVOYW1lXG4gICAgICA6IGAke21vZHVsZUZhbWlseS50b0xvY2FsZUxvd2VyQ2FzZSgpfS0ke2xvd2Nhc2VNb2R1bGVOYW1lfWA7XG5cbiAgICAvLyBweXRob24gbmFtZXNcbiAgICBjb25zdCBweXRob25EaXN0U3ViTmFtZSA9IG1vZHVsZUZhbWlseSA9PT0gJ0FXUydcbiAgICAgID8gbG93Y2FzZU1vZHVsZU5hbWVcbiAgICAgIDogYCR7bW9kdWxlRmFtaWx5LnRvTG9jYWxlTG93ZXJDYXNlKCl9LiR7bG93Y2FzZU1vZHVsZU5hbWV9YDtcbiAgICBjb25zdCBweXRob25EaXN0TmFtZSA9IGBhd3MtY2RrLiR7cHl0aG9uRGlzdFN1Yk5hbWV9YDtcbiAgICBjb25zdCBweXRob25Nb2R1bGVOYW1lID0gcHl0aG9uRGlzdE5hbWUucmVwbGFjZSgvLS9nLCBcIl9cIik7XG5cbiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZShyZWxhdGl2ZVBhdGg6IHN0cmluZywgY29udGVudHM6IHN0cmluZ1tdIHwgc3RyaW5nIHwgb2JqZWN0KSB7XG4gICAgICBjb25zdCBmdWxsUGF0aCA9IHBhdGguam9pbihwYWNrYWdlUGF0aCwgcmVsYXRpdmVQYXRoKTtcbiAgICAgIGNvbnN0IGRpciA9IHBhdGguZGlybmFtZShmdWxsUGF0aCk7XG4gICAgICBhd2FpdCBmcy5ta2RpcnAoZGlyKTtcblxuICAgICAgbGV0IGRhdGE7XG4gICAgICBpZiAodHlwZW9mIGNvbnRlbnRzID09PSAnc3RyaW5nJykge1xuICAgICAgICBkYXRhID0gY29udGVudHMudHJpbUxlZnQoKTsgLy8gdHJpbSBmaXJzdCBuZXdsaW5lXG4gICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoY29udGVudHMpKSB7XG4gICAgICAgIGRhdGEgPSBjb250ZW50cy5qb2luKCdcXG4nKTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGNvbnRlbnRzID09PSAnb2JqZWN0Jykge1xuICAgICAgICBkYXRhID0gSlNPTi5zdHJpbmdpZnkoY29udGVudHMsIHVuZGVmaW5lZCwgMik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdHlwZSBvZiBjb250ZW50czogJyArIGNvbnRlbnRzKTtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKGZ1bGxQYXRoLCBkYXRhICsgJ1xcbicpO1xuICAgIH1cblxuICAgIGNvbnNvbGUubG9nKGBnZW5lcmF0aW5nIG1vZHVsZSBmb3IgJHtwYWNrYWdlTmFtZX0uLi5gKTtcblxuICAgIGF3YWl0IHdyaXRlKCdwYWNrYWdlLmpzb24nLCB7XG4gICAgICBuYW1lOiBwYWNrYWdlTmFtZSxcbiAgICAgIHZlcnNpb24sXG4gICAgICBkZXNjcmlwdGlvbjogYFRoZSBDREsgQ29uc3RydWN0IExpYnJhcnkgZm9yICR7bmFtZXNwYWNlfWAsXG4gICAgICBtYWluOiAnbGliL2luZGV4LmpzJyxcbiAgICAgIHR5cGVzOiAnbGliL2luZGV4LmQudHMnLFxuICAgICAganNpaToge1xuICAgICAgICBvdXRkaXI6ICdkaXN0JyxcbiAgICAgICAgdGFyZ2V0czoge1xuICAgICAgICAgIGRvdG5ldDoge1xuICAgICAgICAgICAgbmFtZXNwYWNlOiBkb3RuZXRQYWNrYWdlLFxuICAgICAgICAgICAgcGFja2FnZUlkOiBkb3RuZXRQYWNrYWdlLFxuICAgICAgICAgICAgc2lnbkFzc2VtYmx5OiB0cnVlLFxuICAgICAgICAgICAgYXNzZW1ibHlPcmlnaW5hdG9yS2V5RmlsZTogXCIuLi8uLi9rZXkuc25rXCJcbiAgICAgICAgICB9LFxuICAgICAgICAgIGphdmE6IHtcbiAgICAgICAgICAgIHBhY2thZ2U6IGAke2phdmFHcm91cElkfS4ke2phdmFQYWNrYWdlfWAsXG4gICAgICAgICAgICBtYXZlbjoge1xuICAgICAgICAgICAgICBncm91cElkOiBqYXZhR3JvdXBJZCxcbiAgICAgICAgICAgICAgYXJ0aWZhY3RJZDogamF2YUFydGlmYWN0SWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIHB5dGhvbjoge1xuICAgICAgICAgICAgZGlzdE5hbWU6IHB5dGhvbkRpc3ROYW1lLFxuICAgICAgICAgICAgbW9kdWxlOiBweXRob25Nb2R1bGVOYW1lXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcmVwb3NpdG9yeToge1xuICAgICAgICB0eXBlOiBcImdpdFwiLFxuICAgICAgICB1cmw6IFwiaHR0cHM6Ly9naXRodWIuY29tL2F3c2xhYnMvYXdzLWNkay5naXRcIlxuICAgICAgfSxcbiAgICAgIGhvbWVwYWdlOiBcImh0dHBzOi8vZ2l0aHViLmNvbS9hd3NsYWJzL2F3cy1jZGtcIixcbiAgICAgIHNjcmlwdHM6IHtcbiAgICAgICAgYnVpbGQ6IFwiY2RrLWJ1aWxkXCIsXG4gICAgICAgIGludGVnOiBcImNkay1pbnRlZ1wiLFxuICAgICAgICBsaW50OiBcImNkay1saW50XCIsXG4gICAgICAgIHBhY2thZ2U6IFwiY2RrLXBhY2thZ2VcIixcbiAgICAgICAgYXdzbGludDogXCJjZGstYXdzbGludFwiLFxuICAgICAgICBwa2dsaW50OiBcInBrZ2xpbnQgLWZcIixcbiAgICAgICAgdGVzdDogXCJjZGstdGVzdFwiLFxuICAgICAgICB3YXRjaDogXCJjZGstd2F0Y2hcIixcbiAgICAgICAgY2ZuMnRzOiBcImNmbjJ0c1wiXG4gICAgICB9LFxuICAgICAgJ2Nkay1idWlsZCc6IHtcbiAgICAgICAgY2xvdWRmb3JtYXRpb246IG5hbWVzcGFjZVxuICAgICAgfSxcbiAgICAgIGtleXdvcmRzOiBbXG4gICAgICAgIFwiYXdzXCIsXG4gICAgICAgIFwiY2RrXCIsXG4gICAgICAgIFwiY29uc3RydWN0c1wiLFxuICAgICAgICBuYW1lc3BhY2UsXG4gICAgICAgIG1vZHVsZU5hbWVcbiAgICAgIF0sXG4gICAgICBhdXRob3I6IHtcbiAgICAgICAgbmFtZTogXCJBbWF6b24gV2ViIFNlcnZpY2VzXCIsXG4gICAgICAgIHVybDogXCJodHRwczovL2F3cy5hbWF6b24uY29tXCIsXG4gICAgICAgIG9yZ2FuaXphdGlvbjogdHJ1ZVxuICAgICAgfSxcbiAgICAgIGxpY2Vuc2U6IFwiQXBhY2hlLTIuMFwiLFxuICAgICAgZGV2RGVwZW5kZW5jaWVzOiB7XG4gICAgICAgIFwiQGF3cy1jZGsvYXNzZXJ0XCI6IGBeJHt2ZXJzaW9ufWAsXG4gICAgICAgIFwiY2RrLWJ1aWxkLXRvb2xzXCI6IGBeJHt2ZXJzaW9ufWAsXG4gICAgICAgIFwiY2ZuMnRzXCI6IGBeJHt2ZXJzaW9ufWAsXG4gICAgICAgIFwicGtnbGludFwiOiBgXiR7dmVyc2lvbn1gLFxuICAgICAgfSxcbiAgICAgIGRlcGVuZGVuY2llczoge1xuICAgICAgICBcIkBhd3MtY2RrL2NvcmVcIjogYF4ke3ZlcnNpb259YCxcbiAgICAgIH0sXG4gICAgICBwZWVyRGVwZW5kZW5jaWVzOiB7XG4gICAgICAgIFwiQGF3cy1jZGsvY29yZVwiOiBgXiR7dmVyc2lvbn1gLFxuICAgICAgfSxcbiAgICAgIGVuZ2luZXM6IHtcbiAgICAgICAgbm9kZTogJz49IDguMTAuMCdcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGF3YWl0IHdyaXRlKCcuZ2l0aWdub3JlJywgW1xuICAgICAgJyouZC50cycsXG4gICAgICAnKi5nZW5lcmF0ZWQudHMnLFxuICAgICAgJyouanMnLFxuICAgICAgJyouanMubWFwJyxcbiAgICAgICcqLnNuaycsXG4gICAgICAnLmpzaWknLFxuICAgICAgJy5MQVNUX0JVSUxEJyxcbiAgICAgICcuTEFTVF9QQUNLQUdFJyxcbiAgICAgICcubnljcmMnLFxuICAgICAgJy5ueWNfb3V0cHV0JyxcbiAgICAgICdjb3ZlcmFnZScsXG4gICAgICAnZGlzdCcsXG4gICAgICAndHNjb25maWcuanNvbicsXG4gICAgICAndHNsaW50Lmpzb24nLFxuICAgIF0pO1xuXG4gICAgYXdhaXQgd3JpdGUoJy5ucG1pZ25vcmUnLCBbXG4gICAgICAnIyBUaGUgYmFzaWNzJyxcbiAgICAgICcqLnRzJyxcbiAgICAgICcqLnRneicsXG4gICAgICAnKi5zbmsnLFxuICAgICAgJyEqLmQudHMnLFxuICAgICAgJyEqLmpzJyxcbiAgICAgICcnLFxuICAgICAgJyMgQ292ZXJhZ2UnLFxuICAgICAgJ2NvdmVyYWdlJyxcbiAgICAgICcubnljX291dHB1dCcsXG4gICAgICAnLm55Y3JjJyxcbiAgICAgICcnLFxuICAgICAgJyMgQnVpbGQgZ2VhcicsXG4gICAgICAnZGlzdCcsXG4gICAgICAnLkxBU1RfQlVJTEQnLFxuICAgICAgJy5MQVNUX1BBQ0tBR0UnLFxuICAgICAgJy5qc2lpJyxcbiAgICBdKTtcblxuICAgIGF3YWl0IHdyaXRlKCdsaWIvaW5kZXgudHMnLCBbXG4gICAgICBgLy8gJHtuYW1lc3BhY2V9IENsb3VkRm9ybWF0aW9uIFJlc291cmNlczpgLFxuICAgICAgYGV4cG9ydCAqIGZyb20gJy4vJHtsb3djYXNlTW9kdWxlTmFtZX0uZ2VuZXJhdGVkJztgXG4gICAgXSk7XG5cbiAgICBhd2FpdCB3cml0ZShgdGVzdC90ZXN0LiR7bG93Y2FzZU1vZHVsZU5hbWV9LnRzYCwgW1xuICAgICAgXCJpbXBvcnQgeyBUZXN0LCB0ZXN0Q2FzZSB9IGZyb20gJ25vZGV1bml0JztcIixcbiAgICAgIFwiaW1wb3J0IHt9IGZyb20gJy4uL2xpYic7XCIsXG4gICAgICBcIlwiLFxuICAgICAgXCJleHBvcnQgPSB0ZXN0Q2FzZSh7XCIsXG4gICAgICBcIiAgICBub3RUZXN0ZWQodGVzdDogVGVzdCkge1wiLFxuICAgICAgXCIgICAgICAgIHRlc3Qub2sodHJ1ZSwgJ05vIHRlc3RzIGFyZSBzcGVjaWZpZWQgZm9yIHRoaXMgcGFja2FnZS4nKTtcIixcbiAgICAgIFwiICAgICAgICB0ZXN0LmRvbmUoKTtcIixcbiAgICAgIFwiICAgIH1cIixcbiAgICAgIFwifSk7XCIsXG4gICAgXSk7XG5cbiAgICBhd2FpdCB3cml0ZSgnUkVBRE1FLm1kJywgW1xuICAgICAgYCMjICR7bmFtZXNwYWNlfSBDb25zdHJ1Y3QgTGlicmFyeWAsXG4gICAgICAnJyxcbiAgICAgICdUaGlzIG1vZHVsZSBpcyBwYXJ0IG9mIHRoZSBbQVdTIENsb3VkIERldmVsb3BtZW50IEtpdF0oaHR0cHM6Ly9naXRodWIuY29tL2F3c2xhYnMvYXdzLWNkaykgcHJvamVjdC4nLFxuICAgICAgJycsXG4gICAgICAnYGBgdHMnLFxuICAgICAgYGltcG9ydCAke2xvd2Nhc2VNb2R1bGVOYW1lfSA9IHJlcXVpcmUoJyR7cGFja2FnZU5hbWV9Jyk7YCxcbiAgICAgICdgYGAnLFxuICAgIF0pO1xuXG4gICAgY29uc3QgdGVtcGxhdGVEaXIgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAndGVtcGxhdGUnKTtcbiAgICBmb3IgKGNvbnN0IGZpbGUgb2YgYXdhaXQgZnMucmVhZGRpcih0ZW1wbGF0ZURpcikpIHtcbiAgICAgIGF3YWl0IGZzLmNvcHkocGF0aC5qb2luKHRlbXBsYXRlRGlyLCBmaWxlKSwgcGF0aC5qb2luKHBhY2thZ2VQYXRoLCBmaWxlKSk7XG4gICAgfVxuXG4gICAgLy8gYm9vdHN0cmFwIGFuZCBidWlsZCB0aGUgcGFja2FnZSBhbmQgYWxsIGRlcHMgdG8gZW5zdXJlIGludGVncml0eVxuICAgIGNvbnN0IGxlcm5hID0gcGF0aC5qb2luKHBhdGguZGlybmFtZShyZXF1aXJlLnJlc29sdmUoJ2xlcm5hL3BhY2thZ2UuanNvbicpKSwgJ2NsaS5qcycpO1xuICAgIGF3YWl0IGV4ZWMoYCR7bGVybmF9IGJvb3RzdHJhcGApO1xuICAgIGF3YWl0IGV4ZWMoYCR7bGVybmF9IHJ1biAtLWluY2x1ZGUtZmlsdGVyZWQtZGVwZW5kZW5jaWVzIC0tcHJvZ3Jlc3MgcGtnbGludCAtLXNjb3BlICR7cGFja2FnZU5hbWV9YCk7XG4gICAgYXdhaXQgZXhlYyhgJHtsZXJuYX0gcnVuIC0taW5jbHVkZS1maWx0ZXJlZC1kZXBlbmRlbmNpZXMgLS1wcm9ncmVzcyBidWlsZCAtLXNjb3BlICR7cGFja2FnZU5hbWV9YCk7XG4gIH1cbn1cblxubWFpbigpLmNhdGNoKGUgPT4ge1xuICBjb25zb2xlLmVycm9yKGUpO1xuICBwcm9jZXNzLmV4aXQoMSk7XG59KTtcblxuYXN5bmMgZnVuY3Rpb24gZXhlYyhjb21tYW5kOiBzdHJpbmcpIHtcbiAgY29uc3QgY2hpbGQgPSBjaGlsZF9wcm9jZXNzLnNwYXduKGNvbW1hbmQsIFtdLCB7XG4gICAgc3RkaW86IFsgJ2lnbm9yZScsICdpbmhlcml0JywgJ2luaGVyaXQnIF0sXG4gICAgc2hlbGw6IHRydWVcbiAgfSk7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgob2ssIGZhaWwpID0+IHtcbiAgICBjaGlsZC5vbmNlKCdlcnJvcicsIGUgPT4gZmFpbChlKSk7XG4gICAgY2hpbGQub25jZSgnZXhpdCcsIGNvZGUgPT4ge1xuICAgICAgaWYgKGNvZGUgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIG9rKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFpbChuZXcgRXJyb3IoJ25vbi16ZXJvIGV4aXQgY29kZTogJyArIGNvZGUpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW1pc3NpbmctbGlicmFyaWVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiY3JlYXRlLW1pc3NpbmctbGlicmFyaWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBRUE7OztHQUdHOztBQUVILCtDQUFnRDtBQUNoRCwrQkFBZ0M7QUFDaEMsNkJBQThCO0FBQzlCLGtDQUFtQztBQUVuQyxvQkFBb0I7QUFDcEIsNEJBQTRCO0FBQzVCLDJDQUEyQztBQUUzQyxLQUFLLFVBQVUsSUFBSTtJQUNqQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUMsSUFBSSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLFVBQVUsRUFBRTtRQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxJQUFJLDREQUE0RCxDQUFDLENBQUM7S0FDeEg7SUFFRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFFbkQsNkNBQTZDO0lBQzdDLEtBQUssTUFBTSxTQUFTLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFO1FBQzVDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsY0FBYyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEtBQUssaUJBQWlCLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTlHLE1BQU0sVUFBVSxHQUFHLEdBQUcsWUFBWSxJQUFJLGNBQWMsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUNoRyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsQ0FBQztRQUVoRCxNQUFNLGlCQUFpQixHQUFH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RCxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUU7SUFDZixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ2pCLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFDbEIsQ0FBQyxDQUFDLENBQUM7QUFFSCxLQUFLLFVBQVUsSUFBSSxDQUFDLE9BQWU7SUFDakMsTUFBTSxLQUFLLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsRUFBRSxFQUFFO1FBQzdDLEtBQUssRUFBRSxDQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxDQUFFO1FBQ3pDLEtBQUssRUFBRSxJQUFJO0tBQ1osQ0FBQyxDQUFDO0lBQ0gsT0FBTyxJQUFJLE9BQU8sQ0FBQyxDQUFDLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUM5QixLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ2xDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO1lBQ3hCLElBQUksSUFBSSxLQUFLLENBQUMsRUFBRTtnQkFDZCxPQUFPLEVBQUUsRUFBRSxDQUFDO2FBQ2I7aUJBQU07Z0JBQ0wsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUN2RDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuXG4vKipcbiAqIGF1dG9tYXRpY2FsbHkgY3JlYXRlcyBhIG1vZHVsZSBmb3IgYW55IENsb3VkRm9ybWF0aW9uIG5hbWVzcGFjZXMgdGhhdCBkbyBub3RcbiAqIGhhdmUgYW4gQVdTIGNvbnN0cnVjdCBsaWJyYXJ5LlxuICovXG5cbmltcG9ydCBjaGlsZF9wcm9jZXNzID0gcmVxdWlyZSgnY2hpbGRfcHJvY2VzcycpO1xuaW1wb3J0IGZzID0gcmVxdWlyZSgnZnMtZXh0cmEnKTtcbmltcG9ydCBwYXRoID0gcmVxdWlyZSgncGF0aCcpO1xuaW1wb3J0IGNmbnNwZWMgPSByZXF1aXJlKCcuLi9saWInKTtcblxuLy8gZG9uJ3QgYmUgYSBwcnVkZTpcbi8vIHRzbGludDpkaXNhYmxlOm5vLWNvbnNvbGVcbi8vIHRzbGludDpkaXNhYmxlOm9iamVjdC1saXRlcmFsLWtleS1xdW90ZXNcblxuYXN5bmMgZnVuY3Rpb24gbWFpbigpIHtcbiAgY29uc3Qgcm9vdCA9IHBhdGguam9pbihfX2Rpcm5hbWUsICcuLicsICcuLicpO1xuICBpZiAocGF0aC5iYXNlbmFtZShyb290KSAhPT0gJ0Bhd3MtY2RrJykge1xuICAgIHRocm93IG5ldyBFcnJvcihgU29tZXRoaW5nIHdlbnQgd3JvbmcuIFdlIGV4cGVjdGVkICR7cm9vdH0gdG8gYmUgdGhlIFwicGFja2FnZXMvQGF3cy1jZGtcIiBkaXJlY3RvcnkuIERpZCB5b3UgbW92ZSBtZT9gKTtcbiAgfVxuXG4gIGNvbnN0IHZlcnNpb24gPSByZXF1aXJlKCcuLi9wYWNrYWdlLmpzb24nKS52ZXJzaW9uO1xuXG4gIC8vIGl0ZXJhdGUgb3ZlciBhbGwgY2xvdWRmb3JtYXRpb24gbmFtZXNwYWNlc1xuICBmb3IgKGNvbnN0IG5hbWVzcGFjZSBvZiBjZm5zcGVjLm5hbWVzcGFjZXMoKSkge1xuICAgIGNvbnN0IFttb2R1bGVGYW1pbHksIG1vZHVsZUJhc2VOYW1lXSA9IChuYW1lc3BhY2UgPT09ICdBV1M6OlNlcnZlcmxlc3MnID8gJ0FXUzo6U0FNJyA6IG5hbWVzcGFjZSkuc3BsaXQoJzo6Jyk7XG5cbiAgICBjb25zdCBtb2R1bGVOYW1lID0gYCR7bW9kdWxlRmFtaWx5fS0ke21vZHVsZUJhc2VOYW1lLnJlcGxhY2UoL1ZcXGQrJC8sICcnKX1gLnRvTG9jYWxlTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgcGFja2FnZVBhdGggPSBwYXRoLmpvaW4ocm9vdCwgbW9kdWxlTmFtZSk7XG5cbiAgICBjb25zdCBsb3djYXNlTW9kdWxlTmFtZSA9IG1vZHVsZUJhc2VOYW1lLnRvTG9jYWxlTG93ZXJDYXNlKCk7XG4gICAgY29uc3QgcGFja2FnZU5hbWUgPSBgQGF3cy1jZGsvJHttb2R1bGVOYW1lfWA7XG5cbiAgICAvLyB3ZSBhbHJlYWR5IGhhdmUgYSBtb2R1bGUgZm9yIHRoaXMgbmFtZXNhcGNlLCBtb3ZlIG9uLlxuICAgIGlmIChhd2FpdCBmcy5wYXRoRXhpc3RzKHBhY2thZ2VQYXRoKSkge1xuICAgICAgY29uc3QgcGFja2FnZUpzb25QYXRoID0gcGF0aC5qb2luKHBhY2thZ2VQYXRoLCAncGFja2FnZS5qc29uJyk7XG4gICAgICBjb25zdCBwYWNrYWdlSnNvbiA9IHJlcXVpcmUocGFja2FnZUpzb25QYXRoKTtcbiAgICAgIGxldCBzY29wZXM6IHN0cmluZyB8IHN0cmluZ1tdID0gcGFja2FnZUpzb25bJ2Nkay1idWlsZCddLmNsb3VkZm9ybWF0aW9uO1xuICAgICAgaWYgKHR5cGVvZiBzY29wZXMgPT09ICdzdHJpbmcnKSB7IHNjb3BlcyA9IFtzY29wZXNdOyB9XG4gICAgICBpZiAoc2NvcGVzLmluZGV4T2YobmFtZXNwYWNlKSAhPT0gLTEpIHtcbiAgICAgICAgLy8gVjItc3R5bGUgbW9kdWxlIGlzIGFscmVhZHkgbW9kZWxlZCBpbiB0aGUgcm9vdCBwYWNrYWdlLCBub3RoaW5nIHRvIGJlIGRvbmUhXG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfSBlbHNlIGlmIChhd2FpdCBmcy5wYXRoRXhpc3RzKHBhdGguam9pbihyb290LCBgJHttb2R1bGVGYW1pbHl9LSR7bW9kdWxlQmFzZU5hbWV9YC50b0xvY2FsZUxvd2VyQ2FzZSgpKSkpIHtcbiAgICAgICAgLy8gVjItc3R5bGUgcGFja2FnZSBhbHJlYWR5IGhhcyBpdCdzIG93biBwYWNrYWdlIChsZWdhY3kgYmVoYXZpb3IpLCBub3RoaW5nIHRvIGJlIGRvbmUhXG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgLy8gVjItc3R5bGUgcGFja2FnZSBuZWVkcyB0byBiZSBhZGRlZCB0byBpdCdzIFwiVjFcIiBwYWNrYWdlLi4uIEdldCBkb3duIHRvIGJ1c2luZXNzIVxuICAgICAgICBjb25zb2xlLmVycm9yKGBBZGRpbmcgJHtuYW1lc3BhY2V9IHRvICR7cGFja2FnZU5hbWV9YCk7XG4gICAgICAgIHNjb3Blcy5wdXNoKG5hbWVzcGFjZSk7XG4gICAgICAgIHBhY2thZ2VKc29uWydjZGstYnVpbGQnXS5jbG91ZGZvcm1hdGlvbiA9IHNjb3BlcztcbiAgICAgICAgYXdhaXQgZnMud3JpdGVKc29uKHBhY2thZ2VKc29uUGF0aCwgcGFja2FnZUpzb24sIHsgZW5jb2Rpbmc6ICd1dGYtOCcsIHNwYWNlczogMiB9KTtcbiAgICAgICAgY29uc3QgaW5kZXhUc1BhdGggPSBwYXRoLmpvaW4ocGFja2FnZVBhdGgsICdsaWInLCAnaW5kZXgudHMnKTtcbiAgICAgICAgY29uc3QgaW5kZXhUcyA9IFtcbiAgICAgICAgICAoYXdhaXQgZnMucmVhZEZpbGUoaW5kZXhUc1BhdGgsIHsgZW5jb2Rpbmc6ICd1dGY4JyB9KSkudHJpbVJpZ2h0KCksXG4gICAgICAgICAgYC8vICR7bmFtZXNwYWNlfSBDbG91ZEZvcm1hdGlvbiBSZXNvdXJjZXM6YCxcbiAgICAgICAgICBgZXhwb3J0ICogZnJvbSAnLi8ke2xvd2Nhc2VNb2R1bGVOYW1lfS5nZW5lcmF0ZWQnO2BcbiAgICAgICAgXS5qb2luKCdcXG4nKTtcbiAgICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKGluZGV4VHNQYXRoLCBpbmRleFRzLCB7IGVuY29kaW5nOiAndXRmOCcgfSk7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGRvdG5ldCBuYW1lc1xuICAgIGNvbnN0IGRvdG5ldFBhY2thZ2UgPSBgQW1hem9uLkNESy4ke21vZHVsZUZhbWlseX0uJHttb2R1bGVCYXNlTmFtZX1gO1xuXG4gICAgLy8gamF2YSBuYW1lc1xuICAgIGNvbnN0IGphdmFHcm91cElkID0gJ3NvZnR3YXJlLmFtYXpvbi5hd3NjZGsnO1xuICAgIGNvbnN0IGphdmFQYWNrYWdlID0gbW9kdWxlRmFtaWx5ID09PSAnQVdTJ1xuICAgICAgPyBgc2VydmljZXMuJHtsb3djYXNlTW9kdWxlTmFtZX1gXG4gICAgICA6IGAke21vZHVsZUZhbWlseS50b0xvY2FsZUxvd2VyQ2FzZSgpfS4ke2xvd2Nhc2VNb2R1bGVOYW1lfWA7XG4gICAgY29uc3QgamF2YUFydGlmYWN0SWQgPSBtb2R1bGVGYW1pbHkgPT09ICdBV1MnXG4gICAgICA/IGxvd2Nhc2VNb2R1bGVOYW1lXG4gICAgICA6IGAke21vZHVsZUZhbWlseS50b0xvY2FsZUxvd2VyQ2FzZSgpfS0ke2xvd2Nhc2VNb2R1bGVOYW1lfWA7XG5cbiAgICAvLyBweXRob24gbmFtZXNcbiAgICBjb25zdCBweXRob25EaXN0U3ViTmFtZSA9IG1vZHVsZUZhbWlseSA9PT0gJ0FXUydcbiAgICAgID8gbG93Y2FzZU1vZHVsZU5hbWVcbiAgICAgIDogYCR7bW9kdWxlRmFtaWx5LnRvTG9jYWxlTG93ZXJDYXNlKCl9LiR7bG93Y2FzZU1vZHVsZU5hbWV9YDtcbiAgICBjb25zdCBweXRob25EaXN0TmFtZSA9IGBhd3MtY2RrLiR7cHl0aG9uRGlzdFN1Yk5hbWV9YDtcbiAgICBjb25zdCBweXRob25Nb2R1bGVOYW1lID0gcHl0aG9uRGlzdE5hbWUucmVwbGFjZSgvLS9nLCBcIl9cIik7XG5cbiAgICBhc3luYyBmdW5jdGlvbiB3cml0ZShyZWxhdGl2ZVBhdGg6IHN0cmluZywgY29udGVudHM6IHN0cmluZ1tdIHwgc3RyaW5nIHwgb2JqZWN0KSB7XG4gICAgICBjb25zdCBmdWxsUGF0aCA9IHBhdGguam9pbihwYWNrYWdlUGF0aCwgcmVsYXRpdmVQYXRoKTtcbiAgICAgIGNvbnN0IGRpciA9IHBhdGguZGlybmFtZShmdWxsUGF0aCk7XG4gICAgICBhd2FpdCBmcy5ta2RpcnAoZGlyKTtcblxuICAgICAgbGV0IGRhdGE7XG4gICAgICBpZiAodHlwZW9mIGNvbnRlbnRzID09PSAnc3RyaW5nJykge1xuICAgICAgICBkYXRhID0gY29udGVudHMudHJpbUxlZnQoKTsgLy8gdHJpbSBmaXJzdCBuZXdsaW5lXG4gICAgICB9IGVsc2UgaWYgKEFycmF5LmlzQXJyYXkoY29udGVudHMpKSB7XG4gICAgICAgIGRhdGEgPSBjb250ZW50cy5qb2luKCdcXG4nKTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIGNvbnRlbnRzID09PSAnb2JqZWN0Jykge1xuICAgICAgICBkYXRhID0gSlNPTi5zdHJpbmdpZnkoY29udGVudHMsIHVuZGVmaW5lZCwgMik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdHlwZSBvZiBjb250ZW50czogJyArIGNvbnRlbnRzKTtcbiAgICAgIH1cblxuICAgICAgYXdhaXQgZnMud3JpdGVGaWxlKGZ1bGxQYXRoLCBkYXRhICsgJ1xcbicpO1xuICAgIH1cblxuICAgIGNvbnNvbGUubG9nKGBnZW5lcmF0aW5nIG1vZHVsZSBmb3IgJHtwYWNrYWdlTmFtZX0uLi5gKTtcblxuICAgIGF3YWl0IHdyaXRlKCdwYWNrYWdlLmpzb24nLCB7XG4gICAgICBuYW1lOiBwYWNrYWdlTmFtZSxcbiAgICAgIHZlcnNpb24sXG4gICAgICBkZXNjcmlwdGlvbjogYFRoZSBDREsgQ29uc3RydWN0IExpYnJhcnkgZm9yICR7bmFtZXNwYWNlfWAsXG4gICAgICBtYWluOiAnbGliL2luZGV4LmpzJyxcbiAgICAgIHR5cGVzOiAnbGliL2luZGV4LmQudHMnLFxuICAgICAganNpaToge1xuICAgICAgICBvdXRkaXI6ICdkaXN0JyxcbiAgICAgICAgdGFyZ2V0czoge1xuICAgICAgICAgIGRvdG5ldDoge1xuICAgICAgICAgICAgbmFtZXNwYWNlOiBkb3RuZXRQYWNrYWdlLFxuICAgICAgICAgICAgcGFja2FnZUlkOiBkb3RuZXRQYWNrYWdlLFxuICAgICAgICAgICAgc2lnbkFzc2VtYmx5OiB0cnVlLFxuICAgICAgICAgICAgYXNzZW1ibHlPcmlnaW5hdG9yS2V5RmlsZTogXCIuLi8uLi9rZXkuc25rXCJcbiAgICAgICAgICB9LFxuICAgICAgICAgIGphdmE6IHtcbiAgICAgICAgICAgIHBhY2thZ2U6IGAke2phdmFHcm91cElkfS4ke2phdmFQYWNrYWdlfWAsXG4gICAgICAgICAgICBtYXZlbjoge1xuICAgICAgICAgICAgICBncm91cElkOiBqYXZhR3JvdXBJZCxcbiAgICAgICAgICAgICAgYXJ0aWZhY3RJZDogamF2YUFydGlmYWN0SWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIHB5dGhvbjoge1xuICAgICAgICAgICAgZGlzdE5hbWU6IHB5dGhvbkRpc3ROYW1lLFxuICAgICAgICAgICAgbW9kdWxlOiBweXRob25Nb2R1bGVOYW1lXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgcmVwb3NpdG9yeToge1xuICAgICAgICB0eXBlOiBcImdpdFwiLFxuICAgICAgICB1cmw6IFwiaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrLmdpdFwiXG4gICAgICB9LFxuICAgICAgaG9tZXBhZ2U6IFwiaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrXCIsXG4gICAgICBzY3JpcHRzOiB7XG4gICAgICAgIGJ1aWxkOiBcImNkay1idWlsZFwiLFxuICAgICAgICBpbnRlZzogXCJjZGstaW50ZWdcIixcbiAgICAgICAgbGludDogXCJjZGstbGludFwiLFxuICAgICAgICBwYWNrYWdlOiBcImNkay1wYWNrYWdlXCIsXG4gICAgICAgIGF3c2xpbnQ6IFwiY2RrLWF3c2xpbnRcIixcbiAgICAgICAgcGtnbGludDogXCJwa2dsaW50IC1mXCIsXG4gICAgICAgIHRlc3Q6IFwiY2RrLXRlc3RcIixcbiAgICAgICAgd2F0Y2g6IFwiY2RrLXdhdGNoXCIsXG4gICAgICAgIGNmbjJ0czogXCJjZm4ydHNcIlxuICAgICAgfSxcbiAgICAgICdjZGstYnVpbGQnOiB7XG4gICAgICAgIGNsb3VkZm9ybWF0aW9uOiBuYW1lc3BhY2VcbiAgICAgIH0sXG4gICAgICBrZXl3b3JkczogW1xuICAgICAgICBcImF3c1wiLFxuICAgICAgICBcImNka1wiLFxuICAgICAgICBcImNvbnN0cnVjdHNcIixcbiAgICAgICAgbmFtZXNwYWNlLFxuICAgICAgICBtb2R1bGVOYW1lXG4gICAgICBdLFxuICAgICAgYXV0aG9yOiB7XG4gICAgICAgIG5hbWU6IFwiQW1hem9uIFdlYiBTZXJ2aWNlc1wiLFxuICAgICAgICB1cmw6IFwiaHR0cHM6Ly9hd3MuYW1hem9uLmNvbVwiLFxuICAgICAgICBvcmdhbml6YXRpb246IHRydWVcbiAgICAgIH0sXG4gICAgICBsaWNlbnNlOiBcIkFwYWNoZS0yLjBcIixcbiAgICAgIGRldkRlcGVuZGVuY2llczoge1xuICAgICAgICBcIkBhd3MtY2RrL2Fzc2VydFwiOiBgXiR7dmVyc2lvbn1gLFxuICAgICAgICBcImNkay1idWlsZC10b29sc1wiOiBgXiR7dmVyc2lvbn1gLFxuICAgICAgICBcImNmbjJ0c1wiOiBgXiR7dmVyc2lvbn1gLFxuICAgICAgICBcInBrZ2xpbnRcIjogYF4ke3ZlcnNpb259YCxcbiAgICAgIH0sXG4gICAgICBkZXBlbmRlbmNpZXM6IHtcbiAgICAgICAgXCJAYXdzLWNkay9jb3JlXCI6IGBeJHt2ZXJzaW9ufWAsXG4gICAgICB9LFxuICAgICAgcGVlckRlcGVuZGVuY2llczoge1xuICAgICAgICBcIkBhd3MtY2RrL2NvcmVcIjogYF4ke3ZlcnNpb259YCxcbiAgICAgIH0sXG4gICAgICBlbmdpbmVzOiB7XG4gICAgICAgIG5vZGU6ICc+PSA4LjEwLjAnXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBhd2FpdCB3cml0ZSgnLmdpdGlnbm9yZScsIFtcbiAgICAgICcqLmQudHMnLFxuICAgICAgJyouZ2VuZXJhdGVkLnRzJyxcbiAgICAgICcqLmpzJyxcbiAgICAgICcqLmpzLm1hcCcsXG4gICAgICAnKi5zbmsnLFxuICAgICAgJy5qc2lpJyxcbiAgICAgICcuTEFTVF9CVUlMRCcsXG4gICAgICAnLkxBU1RfUEFDS0FHRScsXG4gICAgICAnLm55Y3JjJyxcbiAgICAgICcubnljX291dHB1dCcsXG4gICAgICAnY292ZXJhZ2UnLFxuICAgICAgJ2Rpc3QnLFxuICAgICAgJ3RzY29uZmlnLmpzb24nLFxuICAgICAgJ3RzbGludC5qc29uJyxcbiAgICBdKTtcblxuICAgIGF3YWl0IHdyaXRlKCcubnBtaWdub3JlJywgW1xuICAgICAgJyMgVGhlIGJhc2ljcycsXG4gICAgICAnKi50cycsXG4gICAgICAnKi50Z3onLFxuICAgICAgJyouc25rJyxcbiAgICAgICchKi5kLnRzJyxcbiAgICAgICchKi5qcycsXG4gICAgICAnJyxcbiAgICAgICcjIENvdmVyYWdlJyxcbiAgICAgICdjb3ZlcmFnZScsXG4gICAgICAnLm55Y19vdXRwdXQnLFxuICAgICAgJy5ueWNyYycsXG4gICAgICAnJyxcbiAgICAgICcjIEJ1aWxkIGdlYXInLFxuICAgICAgJ2Rpc3QnLFxuICAgICAgJy5MQVNUX0JVSUxEJyxcbiAgICAgICcuTEFTVF9QQUNLQUdFJyxcbiAgICAgICcuanNpaScsXG4gICAgXSk7XG5cbiAgICBhd2FpdCB3cml0ZSgnbGliL2luZGV4LnRzJywgW1xuICAgICAgYC8vICR7bmFtZXNwYWNlfSBDbG91ZEZvcm1hdGlvbiBSZXNvdXJjZXM6YCxcbiAgICAgIGBleHBvcnQgKiBmcm9tICcuLyR7bG93Y2FzZU1vZHVsZU5hbWV9LmdlbmVyYXRlZCc7YFxuICAgIF0pO1xuXG4gICAgYXdhaXQgd3JpdGUoYHRlc3QvdGVzdC4ke2xvd2Nhc2VNb2R1bGVOYW1lfS50c2AsIFtcbiAgICAgIFwiaW1wb3J0IHsgVGVzdCwgdGVzdENhc2UgfSBmcm9tICdub2RldW5pdCc7XCIsXG4gICAgICBcImltcG9ydCB7fSBmcm9tICcuLi9saWInO1wiLFxuICAgICAgXCJcIixcbiAgICAgIFwiZXhwb3J0ID0gdGVzdENhc2Uoe1wiLFxuICAgICAgXCIgICAgbm90VGVzdGVkKHRlc3Q6IFRlc3QpIHtcIixcbiAgICAgIFwiICAgICAgICB0ZXN0Lm9rKHRydWUsICdObyB0ZXN0cyBhcmUgc3BlY2lmaWVkIGZvciB0aGlzIHBhY2thZ2UuJyk7XCIsXG4gICAgICBcIiAgICAgICAgdGVzdC5kb25lKCk7XCIsXG4gICAgICBcIiAgICB9XCIsXG4gICAgICBcIn0pO1wiLFxuICAgIF0pO1xuXG4gICAgYXdhaXQgd3JpdGUoJ1JFQURNRS5tZCcsIFtcbiAgICAgIGAjIyAke25hbWVzcGFjZX0gQ29uc3RydWN0IExpYnJhcnlgLFxuICAgICAgJycsXG4gICAgICAnVGhpcyBtb2R1bGUgaXMgcGFydCBvZiB0aGUgW0FXUyBDbG91ZCBEZXZlbG9wbWVudCBLaXRdKGh0dHBzOi8vZ2l0aHViLmNvbS9hd3MvYXdzLWNkaykgcHJvamVjdC4nLFxuICAgICAgJycsXG4gICAgICAnYGBgdHMnLFxuICAgICAgYGltcG9ydCAke2xvd2Nhc2VNb2R1bGVOYW1lfSA9IHJlcXVpcmUoJyR7cGFja2FnZU5hbWV9Jyk7YCxcbiAgICAgICdgYGAnLFxuICAgIF0pO1xuXG4gICAgY29uc3QgdGVtcGxhdGVEaXIgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAndGVtcGxhdGUnKTtcbiAgICBmb3IgKGNvbnN0IGZpbGUgb2YgYXdhaXQgZnMucmVhZGRpcih0ZW1wbGF0ZURpcikpIHtcbiAgICAgIGF3YWl0IGZzLmNvcHkocGF0aC5qb2luKHRlbXBsYXRlRGlyLCBmaWxlKSwgcGF0aC5qb2luKHBhY2thZ2VQYXRoLCBmaWxlKSk7XG4gICAgfVxuXG4gICAgLy8gYm9vdHN0cmFwIGFuZCBidWlsZCB0aGUgcGFja2FnZSBhbmQgYWxsIGRlcHMgdG8gZW5zdXJlIGludGVncml0eVxuICAgIGNvbnN0IGxlcm5hID0gcGF0aC5qb2luKHBhdGguZGlybmFtZShyZXF1aXJlLnJlc29sdmUoJ2xlcm5hL3BhY2thZ2UuanNvbicpKSwgJ2NsaS5qcycpO1xuICAgIGF3YWl0IGV4ZWMoYCR7bGVybmF9IGJvb3RzdHJhcGApO1xuICAgIGF3YWl0IGV4ZWMoYCR7bGVybmF9IHJ1biAtLWluY2x1ZGUtZmlsdGVyZWQtZGVwZW5kZW5jaWVzIC0tcHJvZ3Jlc3MgcGtnbGludCAtLXNjb3BlICR7cGFja2FnZU5hbWV9YCk7XG4gICAgYXdhaXQgZXhlYyhgJHtsZXJuYX0gcnVuIC0taW5jbHVkZS1maWx0ZXJlZC1kZXBlbmRlbmNpZXMgLS1wcm9ncmVzcyBidWlsZCAtLXNjb3BlICR7cGFja2FnZU5hbWV9YCk7XG4gIH1cbn1cblxubWFpbigpLmNhdGNoKGUgPT4ge1xuICBjb25zb2xlLmVycm9yKGUpO1xuICBwcm9jZXNzLmV4aXQoMSk7XG59KTtcblxuYXN5bmMgZnVuY3Rpb24gZXhlYyhjb21tYW5kOiBzdHJpbmcpIHtcbiAgY29uc3QgY2hpbGQgPSBjaGlsZF9wcm9jZXNzLnNwYXduKGNvbW1hbmQsIFtdLCB7XG4gICAgc3RkaW86IFsgJ2lnbm9yZScsICdpbmhlcml0JywgJ2luaGVyaXQnIF0sXG4gICAgc2hlbGw6IHRydWVcbiAgfSk7XG4gIHJldHVybiBuZXcgUHJvbWlzZSgob2ssIGZhaWwpID0+IHtcbiAgICBjaGlsZC5vbmNlKCdlcnJvcicsIGUgPT4gZmFpbChlKSk7XG4gICAgY2hpbGQub25jZSgnZXhpdCcsIGNvZGUgPT4ge1xuICAgICAgaWYgKGNvZGUgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIG9rKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gZmFpbChuZXcgRXJyb3IoJ25vbi16ZXJvIGV4aXQgY29kZTogJyArIGNvZGUpKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSk7XG59XG4iXX0=
{
"name": "@aws-cdk/cfnspec",
"description": "The CloudFormation resource specification used by @aws-cdk packages",
"version": "1.0.0",
"version": "1.1.0",
"scripts": {

@@ -27,7 +27,7 @@ "update": "cdk-build && /bin/bash build-tools/update.sh",

"@types/md5": "^2.1.33",
"cdk-build-tools": "^1.0.0",
"cdk-build-tools": "file:../../../tools/cdk-build-tools",
"fast-json-patch": "^2.1.0",
"fs-extra": "^8.0.1",
"json-diff": "^0.5.4",
"pkglint": "^1.0.0",
"pkglint": "file:../../../tools/pkglint",
"sort-json": "^2.0.0"

@@ -39,3 +39,3 @@ },

"repository": {
"url": "https://github.com/awslabs/aws-cdk.git",
"url": "https://github.com/aws/aws-cdk.git",
"type": "git"

@@ -53,3 +53,3 @@ },

],
"homepage": "https://github.com/awslabs/aws-cdk"
"homepage": "https://github.com/aws/aws-cdk"
}

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc