Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Socket
Sign inDemoInstall

@aws-cdk/custom-resources

Package Overview
Dependencies
Maintainers
5
Versions
248
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@aws-cdk/custom-resources - npm Package Compare versions

Comparing version 1.11.0 to 1.12.0

9

lib/aws-custom-resource-provider/index.js

@@ -51,6 +51,9 @@ "use strict";

if (call) {
const awsService = new AWS[call.service](call.apiVersion && { apiVersion: call.apiVersion });
const awsService = new AWS[call.service]({
apiVersion: call.apiVersion,
region: call.region,
});
try {
const response = await awsService[call.action](call.parameters && decodeBooleans(call.parameters)).promise();
flatData = flatten(response);
flatData = Object.assign({ apiVersion: awsService.config.apiVersion, region: awsService.config.region }, flatten(response));
data = call.outputPath

@@ -108,2 +111,2 @@ ? filterKeys(flatData, k => k.startsWith(call.outputPath))

exports.handler = handler;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDRCQUE0QjtBQUM1QiwrQkFBZ0M7QUFHaEM7Ozs7O0dBS0c7QUFDSCxTQUFTLE9BQU8sQ0FBQyxNQUFjO0lBQzdCLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsRUFBRSxFQUNGLEdBQUcsU0FBUyxRQUFRLENBQUMsS0FBVSxFQUFFLE9BQWlCLEVBQUU7UUFDbEQsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDbkMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQ1QsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUTtZQUM1QixDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMxQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FDdkQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUNWLENBQUM7QUFDSixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGNBQWMsQ0FBQyxNQUFjO0lBQ3BDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ2xELFFBQVEsQ0FBQyxFQUFFO1lBQ1QsS0FBSyxjQUFjO2dCQUNqQixPQUFPLElBQUksQ0FBQztZQUNkLEtBQUssZUFBZTtnQkFDbEIsT0FBTyxLQUFLLENBQUM7WUFDZjtnQkFDRSxPQUFPLENBQUMsQ0FBQztTQUNaO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLFVBQVUsQ0FBQyxNQUFjLEVBQUUsSUFBOEI7SUFDaEUsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztTQUMxQixNQUFNLENBQ0wsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDdEIsQ0FBQyxpQ0FBTSxHQUFHLEtBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQ2xCLENBQUMsQ0FBQyxHQUFHLEVBQ0wsRUFBRSxDQUNMLENBQUM7QUFDTixDQUFDO0FBRU0sS0FBSyxVQUFVLE9BQU8sQ0FBQyxLQUFrRCxFQUFFLE9BQTBCO0lBQzFHLElBQUk7UUFDRixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNuQyxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQixHQUFJLEdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV4RCxJQUFJLGtCQUFrQixHQUFJLEtBQWEsQ0FBQyxrQkFBa0IsQ0FBQztRQUMzRCxJQUFJLFFBQVEsR0FBOEIsRUFBRSxDQUFDO1FBQzdDLElBQUksSUFBSSxHQUE4QixFQUFFLENBQUM7UUFDekMsTUFBTSxJQUFJLEdBQTJCLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFFakYsSUFBSSxJQUFJLEVBQUU7WUFDUixNQUFNLFVBQVUsR0FBRyxJQUFLLEdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztZQUV0RyxJQUFJO2dCQUNGLE1BQU0sUUFBUSxHQUFHLE1BQU0sVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztnQkFDN0csUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDN0IsSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVO29CQUNwQixDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFVBQVcsQ0FBQyxDQUFDO29CQUMzRCxDQUFDLENBQUMsUUFBUSxDQUFDO2FBQ2Q7WUFBQyxPQUFPLENBQUMsRUFBRTtnQkFDVixJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixJQUFJLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDL0UsTUFBTSxDQUFDLENBQUM7aUJBQ1Q7YUFDRjtZQUVELGtCQUFrQixHQUFHLElBQUksQ0FBQyxzQkFBc0I7Z0JBQzlDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDO2dCQUN2QyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1NBQzdCO1FBRUQsTUFBTSxPQUFPLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLENBQUMsQ0FBQztLQUMxRDtJQUFDLE9BQU8sQ0FBQyxFQUFFO1FBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNmLE1BQU0sT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsT0FBTyxJQUFJLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDbkY7SUFFRCxTQUFTLE9BQU8sQ0FBQyxjQUFzQixFQUFFLE1BQWMsRUFBRSxrQkFBMEIsRUFBRSxJQUFTO1FBQzVGLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDbEMsTUFBTSxFQUFFLGNBQWM7WUFDdEIsTUFBTSxFQUFFLE1BQU07WUFDZCxrQkFBa0IsRUFBRSxrQkFBa0I7WUFDdEMsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLFNBQVMsRUFBRSxLQUFLLENBQUMsU0FBUztZQUMxQixpQkFBaUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1lBQzFDLE1BQU0sRUFBRSxLQUFLO1lBQ2IsSUFBSSxFQUFFLElBQUk7U0FDWCxDQUFDLENBQUM7UUFFSCxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsQ0FBQztRQUV4QyxNQUFNLFNBQVMsR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMxRCxNQUFNLGNBQWMsR0FBRztZQUNyQixRQUFRLEVBQUUsU0FBUyxDQUFDLFFBQVE7WUFDNUIsSUFBSSxFQUFFLFNBQVMsQ0FBQyxJQUFJO1lBQ3BCLE1BQU0sRUFBRSxLQUFLO1lBQ2IsT0FBTyxFQUFFLEVBQUUsY0FBYyxFQUFFLEVBQUUsRUFBRSxnQkFBZ0IsRUFBRSxZQUFZLENBQUMsTUFBTSxFQUFFO1NBQ3ZFLENBQUM7UUFFRixPQUFPLElBQUksT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3JDLElBQUk7Z0JBQ0YsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQ2xFLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUM1QixPQUFPLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO2dCQUM1QixPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDZjtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNYO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0FBQ0gsQ0FBQztBQXJFRCwwQkFxRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZTpuby1jb25zb2xlXG5pbXBvcnQgQVdTID0gcmVxdWlyZSgnYXdzLXNkaycpO1xuaW1wb3J0IHsgQXdzU2RrQ2FsbCB9IGZyb20gJy4uL2F3cy1jdXN0b20tcmVzb3VyY2UnO1xuXG4vKipcbiAqIEZsYXR0ZW5zIGEgbmVzdGVkIG9iamVjdFxuICpcbiAqIEBwYXJhbSBvYmplY3QgdGhlIG9iamVjdCB0byBiZSBmbGF0dGVuZWRcbiAqIEByZXR1cm5zIGEgZmxhdCBvYmplY3Qgd2l0aCBwYXRoIGFzIGtleXNcbiAqL1xuZnVuY3Rpb24gZmxhdHRlbihvYmplY3Q6IG9iamVjdCk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0ge1xuICByZXR1cm4gT2JqZWN0LmFzc2lnbihcbiAgICB7fSxcbiAgICAuLi5mdW5jdGlvbiBfZmxhdHRlbihjaGlsZDogYW55LCBwYXRoOiBzdHJpbmdbXSA9IFtdKTogYW55IHtcbiAgICAgIHJldHVybiBbXS5jb25jYXQoLi4uT2JqZWN0LmtleXMoY2hpbGQpXG4gICAgICAgIC5tYXAoa2V5ID0+XG4gICAgICAgICAgdHlwZW9mIGNoaWxkW2tleV0gPT09ICdvYmplY3QnXG4gICAgICAgICAgICA/IF9mbGF0dGVuKGNoaWxkW2tleV0sIHBhdGguY29uY2F0KFtrZXldKSlcbiAgICAgICAgICAgIDogKHsgW3BhdGguY29uY2F0KFtrZXldKS5qb2luKCcuJyldOiBjaGlsZFtrZXldIH0pXG4gICAgICApKTtcbiAgICB9KG9iamVjdClcbiAgKTtcbn1cblxuLyoqXG4gKiBEZWNvZGVzIGVuY29kZWQgdHJ1ZS9mYWxzZSB2YWx1ZXNcbiAqL1xuZnVuY3Rpb24gZGVjb2RlQm9vbGVhbnMob2JqZWN0OiBvYmplY3QpIHtcbiAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkob2JqZWN0KSwgKF9rLCB2KSA9PiB7XG4gICAgc3dpdGNoICh2KSB7XG4gICAgICBjYXNlICdUUlVFOkJPT0xFQU4nOlxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIGNhc2UgJ0ZBTFNFOkJPT0xFQU4nOlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdjtcbiAgICB9XG4gIH0pO1xufVxuXG4vKipcbiAqIEZpbHRlcnMgdGhlIGtleXMgb2YgYW4gb2JqZWN0LlxuICovXG5mdW5jdGlvbiBmaWx0ZXJLZXlzKG9iamVjdDogb2JqZWN0LCBwcmVkOiAoa2V5OiBzdHJpbmcpID0+IGJvb2xlYW4pIHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKG9iamVjdClcbiAgICAucmVkdWNlKFxuICAgICAgKGFjYywgW2ssIHZdKSA9PiBwcmVkKGspXG4gICAgICAgID8geyAuLi5hY2MsIFtrXTogdiB9XG4gICAgICAgIDogYWNjLFxuICAgICAgICB7fVxuICAgICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUV2ZW50LCBjb250ZXh0OiBBV1NMYW1iZGEuQ29udGV4dCkge1xuICB0cnkge1xuICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KGV2ZW50KSk7XG4gICAgY29uc29sZS5sb2coJ0FXUyBTREsgVkVSU0lPTjogJyArIChBV1MgYXMgYW55KS5WRVJTSU9OKTtcblxuICAgIGxldCBwaHlzaWNhbFJlc291cmNlSWQgPSAoZXZlbnQgYXMgYW55KS5QaHlzaWNhbFJlc291cmNlSWQ7XG4gICAgbGV0IGZsYXREYXRhOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gICAgbGV0IGRhdGE6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcbiAgICBjb25zdCBjYWxsOiBBd3NTZGtDYWxsIHwgdW5kZWZpbmVkID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzW2V2ZW50LlJlcXVlc3RUeXBlXTtcblxuICAgIGlmIChjYWxsKSB7XG4gICAgICBjb25zdCBhd3NTZXJ2aWNlID0gbmV3IChBV1MgYXMgYW55KVtjYWxsLnNlcnZpY2VdKGNhbGwuYXBpVmVyc2lvbiAmJiB7IGFwaVZlcnNpb246IGNhbGwuYXBpVmVyc2lvbiB9KTtcblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBhd3NTZXJ2aWNlW2NhbGwuYWN0aW9uXShjYWxsLnBhcmFtZXRlcnMgJiYgZGVjb2RlQm9vbGVhbnMoY2FsbC5wYXJhbWV0ZXJzKSkucHJvbWlzZSgpO1xuICAgICAgICBmbGF0RGF0YSA9IGZsYXR0ZW4ocmVzcG9uc2UpO1xuICAgICAgICBkYXRhID0gY2FsbC5vdXRwdXRQYXRoXG4gICAgICAgICAgPyBmaWx0ZXJLZXlzKGZsYXREYXRhLCBrID0+IGsuc3RhcnRzV2l0aChjYWxsLm91dHB1dFBhdGghKSlcbiAgICAgICAgICA6IGZsYXREYXRhO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBpZiAoIWNhbGwuY2F0Y2hFcnJvclBhdHRlcm4gfHwgIW5ldyBSZWdFeHAoY2FsbC5jYXRjaEVycm9yUGF0dGVybikudGVzdChlLmNvZGUpKSB7XG4gICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBwaHlzaWNhbFJlc291cmNlSWQgPSBjYWxsLnBoeXNpY2FsUmVzb3VyY2VJZFBhdGhcbiAgICAgICAgPyBmbGF0RGF0YVtjYWxsLnBoeXNpY2FsUmVzb3VyY2VJZFBhdGhdXG4gICAgICAgIDogY2FsbC5waHlzaWNhbFJlc291cmNlSWQ7XG4gICAgfVxuXG4gICAgYXdhaXQgcmVzcG9uZCgnU1VDQ0VTUycsICdPSycsIHBoeXNpY2FsUmVzb3VyY2VJZCwgZGF0YSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmxvZyhlKTtcbiAgICBhd2FpdCByZXNwb25kKCdGQUlMRUQnLCBlLm1lc3NhZ2UgfHwgJ0ludGVybmFsIEVycm9yJywgY29udGV4dC5sb2dTdHJlYW1OYW1lLCB7fSk7XG4gIH1cblxuICBmdW5jdGlvbiByZXNwb25kKHJlc3BvbnNlU3RhdHVzOiBzdHJpbmcsIHJlYXNvbjogc3RyaW5nLCBwaHlzaWNhbFJlc291cmNlSWQ6IHN0cmluZywgZGF0YTogYW55KSB7XG4gICAgY29uc3QgcmVzcG9uc2VCb2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgU3RhdHVzOiByZXNwb25zZVN0YXR1cyxcbiAgICAgIFJlYXNvbjogcmVhc29uLFxuICAgICAgUGh5c2ljYWxSZXNvdXJjZUlkOiBwaHlzaWNhbFJlc291cmNlSWQsXG4gICAgICBTdGFja0lkOiBldmVudC5TdGFja0lkLFxuICAgICAgUmVxdWVzdElkOiBldmVudC5SZXF1ZXN0SWQsXG4gICAgICBMb2dpY2FsUmVzb3VyY2VJZDogZXZlbnQuTG9naWNhbFJlc291cmNlSWQsXG4gICAgICBOb0VjaG86IGZhbHNlLFxuICAgICAgRGF0YTogZGF0YVxuICAgIH0pO1xuXG4gICAgY29uc29sZS5sb2coJ1Jlc3BvbmRpbmcnLCByZXNwb25zZUJvZHkpO1xuXG4gICAgY29uc3QgcGFyc2VkVXJsID0gcmVxdWlyZSgndXJsJykucGFyc2UoZXZlbnQuUmVzcG9uc2VVUkwpO1xuICAgIGNvbnN0IHJlcXVlc3RPcHRpb25zID0ge1xuICAgICAgaG9zdG5hbWU6IHBhcnNlZFVybC5ob3N0bmFtZSxcbiAgICAgIHBhdGg6IHBhcnNlZFVybC5wYXRoLFxuICAgICAgbWV0aG9kOiAnUFVUJyxcbiAgICAgIGhlYWRlcnM6IHsgJ2NvbnRlbnQtdHlwZSc6ICcnLCAnY29udGVudC1sZW5ndGgnOiByZXNwb25zZUJvZHkubGVuZ3RoIH1cbiAgICB9O1xuXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSByZXF1aXJlKCdodHRwcycpLnJlcXVlc3QocmVxdWVzdE9wdGlvbnMsIHJlc29sdmUpO1xuICAgICAgICByZXF1ZXN0Lm9uKCdlcnJvcicsIHJlamVjdCk7XG4gICAgICAgIHJlcXVlc3Qud3JpdGUocmVzcG9uc2VCb2R5KTtcbiAgICAgICAgcmVxdWVzdC5lbmQoKTtcbiAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgcmVqZWN0KGUpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLDRCQUE0QjtBQUM1QiwrQkFBZ0M7QUFHaEM7Ozs7O0dBS0c7QUFDSCxTQUFTLE9BQU8sQ0FBQyxNQUFjO0lBQzdCLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FDbEIsRUFBRSxFQUNGLEdBQUcsU0FBUyxRQUFRLENBQUMsS0FBVSxFQUFFLE9BQWlCLEVBQUU7UUFDbEQsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDbkMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQ1QsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUTtZQUM1QixDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMxQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FDdkQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUNWLENBQUM7QUFDSixDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGNBQWMsQ0FBQyxNQUFjO0lBQ3BDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ2xELFFBQVEsQ0FBQyxFQUFFO1lBQ1QsS0FBSyxjQUFjO2dCQUNqQixPQUFPLElBQUksQ0FBQztZQUNkLEtBQUssZUFBZTtnQkFDbEIsT0FBTyxLQUFLLENBQUM7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QUFDLFlBQVksQ0FBQyxDQUFDO2dCQUM1QixPQUFPLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDZjtZQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNWLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNYO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0FBQ0gsQ0FBQztBQTVFRCwwQkE0RUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZTpuby1jb25zb2xlXG5pbXBvcnQgQVdTID0gcmVxdWlyZSgnYXdzLXNkaycpO1xuaW1wb3J0IHsgQXdzU2RrQ2FsbCB9IGZyb20gJy4uL2F3cy1jdXN0b20tcmVzb3VyY2UnO1xuXG4vKipcbiAqIEZsYXR0ZW5zIGEgbmVzdGVkIG9iamVjdFxuICpcbiAqIEBwYXJhbSBvYmplY3QgdGhlIG9iamVjdCB0byBiZSBmbGF0dGVuZWRcbiAqIEByZXR1cm5zIGEgZmxhdCBvYmplY3Qgd2l0aCBwYXRoIGFzIGtleXNcbiAqL1xuZnVuY3Rpb24gZmxhdHRlbihvYmplY3Q6IG9iamVjdCk6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0ge1xuICByZXR1cm4gT2JqZWN0LmFzc2lnbihcbiAgICB7fSxcbiAgICAuLi5mdW5jdGlvbiBfZmxhdHRlbihjaGlsZDogYW55LCBwYXRoOiBzdHJpbmdbXSA9IFtdKTogYW55IHtcbiAgICAgIHJldHVybiBbXS5jb25jYXQoLi4uT2JqZWN0LmtleXMoY2hpbGQpXG4gICAgICAgIC5tYXAoa2V5ID0+XG4gICAgICAgICAgdHlwZW9mIGNoaWxkW2tleV0gPT09ICdvYmplY3QnXG4gICAgICAgICAgICA/IF9mbGF0dGVuKGNoaWxkW2tleV0sIHBhdGguY29uY2F0KFtrZXldKSlcbiAgICAgICAgICAgIDogKHsgW3BhdGguY29uY2F0KFtrZXldKS5qb2luKCcuJyldOiBjaGlsZFtrZXldIH0pXG4gICAgICApKTtcbiAgICB9KG9iamVjdClcbiAgKTtcbn1cblxuLyoqXG4gKiBEZWNvZGVzIGVuY29kZWQgdHJ1ZS9mYWxzZSB2YWx1ZXNcbiAqL1xuZnVuY3Rpb24gZGVjb2RlQm9vbGVhbnMob2JqZWN0OiBvYmplY3QpIHtcbiAgcmV0dXJuIEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkob2JqZWN0KSwgKF9rLCB2KSA9PiB7XG4gICAgc3dpdGNoICh2KSB7XG4gICAgICBjYXNlICdUUlVFOkJPT0xFQU4nOlxuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgIGNhc2UgJ0ZBTFNFOkJPT0xFQU4nOlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdjtcbiAgICB9XG4gIH0pO1xufVxuXG4vKipcbiAqIEZpbHRlcnMgdGhlIGtleXMgb2YgYW4gb2JqZWN0LlxuICovXG5mdW5jdGlvbiBmaWx0ZXJLZXlzKG9iamVjdDogb2JqZWN0LCBwcmVkOiAoa2V5OiBzdHJpbmcpID0+IGJvb2xlYW4pIHtcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKG9iamVjdClcbiAgICAucmVkdWNlKFxuICAgICAgKGFjYywgW2ssIHZdKSA9PiBwcmVkKGspXG4gICAgICAgID8geyAuLi5hY2MsIFtrXTogdiB9XG4gICAgICAgIDogYWNjLFxuICAgICAgICB7fVxuICAgICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUV2ZW50LCBjb250ZXh0OiBBV1NMYW1iZGEuQ29udGV4dCkge1xuICB0cnkge1xuICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KGV2ZW50KSk7XG4gICAgY29uc29sZS5sb2coJ0FXUyBTREsgVkVSU0lPTjogJyArIChBV1MgYXMgYW55KS5WRVJTSU9OKTtcblxuICAgIGxldCBwaHlzaWNhbFJlc291cmNlSWQgPSAoZXZlbnQgYXMgYW55KS5QaHlzaWNhbFJlc291cmNlSWQ7XG4gICAgbGV0IGZsYXREYXRhOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge307XG4gICAgbGV0IGRhdGE6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcbiAgICBjb25zdCBjYWxsOiBBd3NTZGtDYWxsIHwgdW5kZWZpbmVkID0gZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzW2V2ZW50LlJlcXVlc3RUeXBlXTtcblxuICAgIGlmIChjYWxsKSB7XG4gICAgICBjb25zdCBhd3NTZXJ2aWNlID0gbmV3IChBV1MgYXMgYW55KVtjYWxsLnNlcnZpY2VdKHtcbiAgICAgICAgYXBpVmVyc2lvbjogY2FsbC5hcGlWZXJzaW9uLFxuICAgICAgICByZWdpb246IGNhbGwucmVnaW9uLFxuICAgICAgfSk7XG5cbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgYXdzU2VydmljZVtjYWxsLmFjdGlvbl0oY2FsbC5wYXJhbWV0ZXJzICYmIGRlY29kZUJvb2xlYW5zKGNhbGwucGFyYW1ldGVycykpLnByb21pc2UoKTtcbiAgICAgICAgZmxhdERhdGEgPSB7XG4gICAgICAgICAgYXBpVmVyc2lvbjogYXdzU2VydmljZS5jb25maWcuYXBpVmVyc2lvbiwgLy8gRm9yIHRlc3QgcHVycG9zZXM6IGNoZWNrIGlmIGFwaVZlcnNpb24gd2FzIGNvcnJlY3RseSBwYXNzZWQuXG4gICAgICAgICAgcmVnaW9uOiBhd3NTZXJ2aWNlLmNvbmZpZy5yZWdpb24sIC8vIEZvciB0ZXN0IHB1cnBvc2VzOiBjaGVjayBpZiByZWdpb24gd2FzIGNvcnJlY3RseSBwYXNzZWQuXG4gICAgICAgICAgLi4uZmxhdHRlbihyZXNwb25zZSksXG4gICAgICAgIH07XG4gICAgICAgIGRhdGEgPSBjYWxsLm91dHB1dFBhdGhcbiAgICAgICAgICA/IGZpbHRlcktleXMoZmxhdERhdGEsIGsgPT4gay5zdGFydHNXaXRoKGNhbGwub3V0cHV0UGF0aCEpKVxuICAgICAgICAgIDogZmxhdERhdGE7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGlmICghY2FsbC5jYXRjaEVycm9yUGF0dGVybiB8fCAhbmV3IFJlZ0V4cChjYWxsLmNhdGNoRXJyb3JQYXR0ZXJuKS50ZXN0KGUuY29kZSkpIHtcbiAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZCA9IGNhbGwucGh5c2ljYWxSZXNvdXJjZUlkUGF0aFxuICAgICAgICA/IGZsYXREYXRhW2NhbGwucGh5c2ljYWxSZXNvdXJjZUlkUGF0aF1cbiAgICAgICAgOiBjYWxsLnBoeXNpY2FsUmVzb3VyY2VJZDtcbiAgICB9XG5cbiAgICBhd2FpdCByZXNwb25kKCdTVUNDRVNTJywgJ09LJywgcGh5c2ljYWxSZXNvdXJjZUlkLCBkYXRhKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGNvbnNvbGUubG9nKGUpO1xuICAgIGF3YWl0IHJlc3BvbmQoJ0ZBSUxFRCcsIGUubWVzc2FnZSB8fCAnSW50ZXJuYWwgRXJyb3InLCBjb250ZXh0LmxvZ1N0cmVhbU5hbWUsIHt9KTtcbiAgfVxuXG4gIGZ1bmN0aW9uIHJlc3BvbmQocmVzcG9uc2VTdGF0dXM6IHN0cmluZywgcmVhc29uOiBzdHJpbmcsIHBoeXNpY2FsUmVzb3VyY2VJZDogc3RyaW5nLCBkYXRhOiBhbnkpIHtcbiAgICBjb25zdCByZXNwb25zZUJvZHkgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICBTdGF0dXM6IHJlc3BvbnNlU3RhdHVzLFxuICAgICAgUmVhc29uOiByZWFzb24sXG4gICAgICBQaHlzaWNhbFJlc291cmNlSWQ6IHBoeXNpY2FsUmVzb3VyY2VJZCxcbiAgICAgIFN0YWNrSWQ6IGV2ZW50LlN0YWNrSWQsXG4gICAgICBSZXF1ZXN0SWQ6IGV2ZW50LlJlcXVlc3RJZCxcbiAgICAgIExvZ2ljYWxSZXNvdXJjZUlkOiBldmVudC5Mb2dpY2FsUmVzb3VyY2VJZCxcbiAgICAgIE5vRWNobzogZmFsc2UsXG4gICAgICBEYXRhOiBkYXRhXG4gICAgfSk7XG5cbiAgICBjb25zb2xlLmxvZygnUmVzcG9uZGluZycsIHJlc3BvbnNlQm9keSk7XG5cbiAgICBjb25zdCBwYXJzZWRVcmwgPSByZXF1aXJlKCd1cmwnKS5wYXJzZShldmVudC5SZXNwb25zZVVSTCk7XG4gICAgY29uc3QgcmVxdWVzdE9wdGlvbnMgPSB7XG4gICAgICBob3N0bmFtZTogcGFyc2VkVXJsLmhvc3RuYW1lLFxuICAgICAgcGF0aDogcGFyc2VkVXJsLnBhdGgsXG4gICAgICBtZXRob2Q6ICdQVVQnLFxuICAgICAgaGVhZGVyczogeyAnY29udGVudC10eXBlJzogJycsICdjb250ZW50LWxlbmd0aCc6IHJlc3BvbnNlQm9keS5sZW5ndGggfVxuICAgIH07XG5cbiAgICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVxdWVzdCA9IHJlcXVpcmUoJ2h0dHBzJykucmVxdWVzdChyZXF1ZXN0T3B0aW9ucywgcmVzb2x2ZSk7XG4gICAgICAgIHJlcXVlc3Qub24oJ2Vycm9yJywgcmVqZWN0KTtcbiAgICAgICAgcmVxdWVzdC53cml0ZShyZXNwb25zZUJvZHkpO1xuICAgICAgICByZXF1ZXN0LmVuZCgpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICByZWplY3QoZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==

@@ -36,3 +36,3 @@ import iam = require('@aws-cdk/aws-iam');

*
* @default no path
* @default - no path
*/

@@ -45,3 +45,3 @@ readonly physicalResourceIdPath?: string;

*
* @default no physical resource id
* @default - no physical resource id
*/

@@ -54,3 +54,3 @@ readonly physicalResourceId?: string;

*
* @default do not catch errors
* @default - do not catch errors
*/

@@ -62,6 +62,14 @@ readonly catchErrorPattern?: string;

* @see https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/locking-api-versions.html
* @default use latest available API version
* @default - use latest available API version
*/
readonly apiVersion?: string;
/**
* The region to send service requests to.
* **Note: Cross-region operations are generally considered an anti-pattern.**
* **Consider first deploying a stack in that region.**
*
* @default - the region where this custom resource is deployed
*/
readonly region?: string;
/**
* Restrict the data returned by the custom resource to a specific path in

@@ -116,3 +124,3 @@ * the API response. Use this to limit the data returned by the custom

*/
getData(dataPath: string): cdk.IResolvable;
getData(dataPath: string): cdk.Reference;
}

@@ -93,2 +93,2 @@ "use strict";

}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWN1c3RvbS1yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImF3cy1jdXN0b20tcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvRUFBcUY7QUFDckYsd0NBQXlDO0FBQ3pDLDhDQUErQztBQUMvQyxxQ0FBc0M7QUFDdEMsNkJBQThCO0FBQzlCLG9EQUFxRDtBQU9yRCxNQUFNLGNBQWMsR0FBbUIsUUFBUSxDQUFDO0FBMkdoRCxNQUFhLGlCQUFrQixTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBR2xELFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBNkI7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ3pELE1BQU0sSUFBSSxLQUFLLENBQUMsa0VBQWtFLENBQUMsQ0FBQztTQUNyRjtRQUVELEtBQUssTUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNuRCxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtnQkFDcEUsTUFBTSxJQUFJLEtBQUssQ0FBQyw0R0FBNEcsQ0FBQyxDQUFDO2FBQy9IO1NBQ0Y7UUFFRCxNQUFNLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQzlELElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSw4QkFBOEIsQ0FBQyxDQUFDO1lBQ2pGLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7WUFDbkMsT0FBTyxFQUFFLGVBQWU7WUFDeEIsSUFBSSxFQUFFLHNDQUFzQztZQUM1QyxhQUFhLEVBQUUsS0FBSztTQUNyQixDQUFDLENBQUM7UUFFSCxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixLQUFLLE1BQU0sU0FBUyxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDOUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUNyQztTQUNGO2FBQU0sRUFBRSx1Q0FBdUM7WUFDOUMsS0FBSyxNQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ25FLElBQUksSUFBSSxFQUFFO29CQUNSLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO3dCQUMvQyxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQzt3QkFDdkQsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDO3FCQUNqQixDQUFDLENBQUMsQ0FBQztpQkFDTDthQUNGO1NBQ0Y7UUFFRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDaEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLG1DQUFjLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUN6RCxZQUFZLEVBQUUsYUFBYTtZQUMzQixRQUFRLEVBQUUsMkNBQXNCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUNqRCxVQUFVLEVBQUU7Z0JBQ1YsTUFBTSxFQUFFLE1BQU0sSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDO2dCQUN4QyxNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsSUFBSSxjQUFjLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztnQkFDeEQsTUFBTSxFQUFFLEtBQUssQ0FBQyxRQUFRLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7YUFDekQ7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksT0FBTyxDQUFDLFFBQWdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNGO0FBN0RELDhDQTZEQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBUyxpQkFBaUIsQ0FBQyxPQUFlLEVBQUUsTUFBYztJQUN4RCxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsQ0FBQztJQUM5RSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkUsT0FBTyxHQUFHLFVBQVUsSUFBSSxTQUFTLEVBQUUsQ0FBQztBQUN0QyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGNBQWMsQ0FBQyxNQUFjO0lBQ3BDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ2xELFFBQVEsQ0FBQyxFQUFFO1lBQ1QsS0FBSyxJQUFJO2dCQUNQLE9BQU8sY0FBYyxDQUFDO1lBQ3hCLEtBQUssS0FBSztnQkFDUixPQUFPLGVBQWUsQ0FBQztZQUN6QjtnQkFDRSxPQUFPLENBQUMsQ0FBQztTQUNaO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9tUmVzb3VyY2UsIEN1c3RvbVJlc291cmNlUHJvdmlkZXIgfSBmcm9tICdAYXdzLWNkay9hd3MtY2xvdWRmb3JtYXRpb24nO1xuaW1wb3J0IGlhbSA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1pYW0nKTtcbmltcG9ydCBsYW1iZGEgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtbGFtYmRhJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY29yZScpO1xuaW1wb3J0IHBhdGggPSByZXF1aXJlKCdwYXRoJyk7XG5pbXBvcnQgbWV0YWRhdGEgPSByZXF1aXJlKCcuL3Nkay1hcGktbWV0YWRhdGEuanNvbicpO1xuXG4vKipcbiAqIEFXUyBTREsgc2VydmljZSBtZXRhZGF0YS5cbiAqL1xuZXhwb3J0IHR5cGUgQXdzU2RrTWV0YWRhdGEgPSB7W2tleTogc3RyaW5nXTogYW55fTtcblxuY29uc3QgYXdzU2RrTWV0YWRhdGE6IEF3c1Nka01ldGFkYXRhID0gbWV0YWRhdGE7XG5cbi8qKlxuICogQW4gQVdTIFNESyBjYWxsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF3c1Nka0NhbGwge1xuICAvKipcbiAgICogVGhlIHNlcnZpY2UgdG8gY2FsbFxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NKYXZhU2NyaXB0U0RLL2xhdGVzdC9pbmRleC5odG1sXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzZXJ2aWNlIGFjdGlvbiB0byBjYWxsXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0phdmFTY3JpcHRTREsvbGF0ZXN0L2luZGV4Lmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIHNlcnZpY2UgYWN0aW9uXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0phdmFTY3JpcHRTREsvbGF0ZXN0L2luZGV4Lmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlcnM/OiBhbnk7XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRvIHRoZSBkYXRhIGluIHRoZSBBUEkgY2FsbCByZXNwb25zZSB0byB1c2UgYXMgdGhlIHBoeXNpY2FsXG4gICAqIHJlc291cmNlIGlkLiBFaXRoZXIgYHBoeXNpY2FsUmVzb3VyY2VJZGAgb3IgYHBoeXNpY2FsUmVzb3VyY2VJZFBhdGhgXG4gICAqIG11c3QgYmUgc3BlY2lmaWVkIGZvciBvbkNyZWF0ZSBvciBvblVwZGF0ZSBjYWxscy5cbiAgICpcbiAgICogQGRlZmF1bHQgbm8gcGF0aFxuICAgKi9cbiAgcmVhZG9ubHkgcGh5c2ljYWxSZXNvdXJjZUlkUGF0aD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHBoeXNpY2FsIHJlc291cmNlIGlkIG9mIHRoZSBjdXN0b20gcmVzb3VyY2UgZm9yIHRoaXMgY2FsbC4gRWl0aGVyXG4gICAqIGBwaHlzaWNhbFJlc291cmNlSWRgIG9yIGBwaHlzaWNhbFJlc291cmNlSWRQYXRoYCBtdXN0IGJlIHNwZWNpZmllZCBmb3JcbiAgICogb25DcmVhdGUgb3Igb25VcGRhdGUgY2FsbHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIHBoeXNpY2FsIHJlc291cmNlIGlkXG4gICAqL1xuICByZWFkb25seSBwaHlzaWNhbFJlc291cmNlSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSByZWdleCBwYXR0ZXJuIHRvIHVzZSB0byBjYXRjaCBBUEkgZXJyb3JzLiBUaGUgYGNvZGVgIHByb3BlcnR5IG9mIHRoZVxuICAgKiBgRXJyb3JgIG9iamVjdCB3aWxsIGJlIHRlc3RlZCBhZ2FpbnN0IHRoaXMgcGF0dGVybi4gSWYgdGhlcmUgaXMgYSBtYXRjaCBhblxuICAgKiBlcnJvciB3aWxsIG5vdCBiZSB0aHJvd24uXG4gICAqXG4gICAqIEBkZWZhdWx0IGRvIG5vdCBjYXRjaCBlcnJvcnNcbiAgICovXG4gIHJlYWRvbmx5IGNhdGNoRXJyb3JQYXR0ZXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBUEkgdmVyc2lvbiB0byB1c2UgZm9yIHRoZSBzZXJ2aWNlXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3Nkay1mb3ItamF2YXNjcmlwdC92Mi9kZXZlbG9wZXItZ3VpZGUvbG9ja2luZy1hcGktdmVyc2lvbnMuaHRtbFxuICAgKiBAZGVmYXVsdCB1c2UgbGF0ZXN0IGF2YWlsYWJsZSBBUEkgdmVyc2lvblxuICAgKi9cbiAgcmVhZG9ubHkgYXBpVmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogUmVzdHJpY3QgdGhlIGRhdGEgcmV0dXJuZWQgYnkgdGhlIGN1c3RvbSByZXNvdXJjZSB0byBhIHNwZWNpZmljIHBhdGggaW5cbiAgICogdGhlIEFQSSByZXNwb25zZS4gVXNlIHRoaXMgdG8gbGltaXQgdGhlIGRhdGEgcmV0dXJuZWQgYnkgdGhlIGN1c3RvbVxuICAgKiByZXNvdXJjZSBpZiB3b3JraW5nIHdpdGggQVBJIGNhbGxzIHRoYXQgY291bGQgcG90ZW50aWFsbHkgcmVzdWx0IGluIGN1c3RvbVxuICAgKiByZXNwb25zZSBvYmplY3RzIGV4Y2VlZGluZyB0aGUgaGFyZCBsaW1pdCBvZiA0MDk2IGJ5dGVzLlxuICAgKlxuICAgKiBFeGFtcGxlIGZvciBFQ1MgLyB1cGRhdGVTZXJ2aWNlOiAnc2VydmljZS5kZXBsb3ltZW50Q29uZmlndXJhdGlvbi5tYXhpbXVtUGVyY2VudCdcbiAgICpcbiAgICogQGRlZmF1bHQgcmV0dXJuIGFsbCBkYXRhXG4gICAqL1xuICByZWFkb25seSBvdXRwdXRQYXRoPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF3c0N1c3RvbVJlc291cmNlUHJvcHMge1xuICAvKipcbiAgICogVGhlIEFXUyBTREsgY2FsbCB0byBtYWtlIHdoZW4gdGhlIHJlc291cmNlIGlzIGNyZWF0ZWQuXG4gICAqIEF0IGxlYXN0IG9uQ3JlYXRlLCBvblVwZGF0ZSBvciBvbkRlbGV0ZSBtdXN0IGJlIHNwZWNpZmllZC5cbiAgICpcbiAgICogQGRlZmF1bHQgdGhlIGNhbGwgd2hlbiB0aGUgcmVzb3VyY2UgaXMgdXBkYXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgb25DcmVhdGU/OiBBd3NTZGtDYWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgQVdTIFNESyBjYWxsIHRvIG1ha2Ugd2hlbiB0aGUgcmVzb3VyY2UgaXMgdXBkYXRlZFxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBjYWxsXG4gICAqL1xuICByZWFkb25seSBvblVwZGF0ZT86IEF3c1Nka0NhbGw7XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgU0RLIGNhbGwgdG8gbWFrZSB3aGVuIHRoZSByZXNvdXJjZSBpcyBkZWxldGVkXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGNhbGxcbiAgICovXG4gIHJlYWRvbmx5IG9uRGVsZXRlPzogQXdzU2RrQ2FsbDtcblxuICAvKipcbiAgICogVGhlIElBTSBwb2xpY3kgc3RhdGVtZW50cyB0byBhbGxvdyB0aGUgZGlmZmVyZW50IGNhbGxzLiBVc2Ugb25seSBpZlxuICAgKiByZXNvdXJjZSByZXN0cmljdGlvbiBpcyBuZWVkZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IGV4dHJhY3QgdGhlIHBlcm1pc3Npb25zIGZyb20gdGhlIGNhbGxzXG4gICAqL1xuICByZWFkb25seSBwb2xpY3lTdGF0ZW1lbnRzPzogaWFtLlBvbGljeVN0YXRlbWVudFtdO1xufVxuXG5leHBvcnQgY2xhc3MgQXdzQ3VzdG9tUmVzb3VyY2UgZXh0ZW5kcyBjZGsuQ29uc3RydWN0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBjdXN0b21SZXNvdXJjZTogQ3VzdG9tUmVzb3VyY2U7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNkay5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBBd3NDdXN0b21SZXNvdXJjZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIGlmICghcHJvcHMub25DcmVhdGUgJiYgIXByb3BzLm9uVXBkYXRlICYmICFwcm9wcy5vbkRlbGV0ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdCBsZWFzdCBgb25DcmVhdGVgLCBgb25VcGRhdGVgIG9yIGBvbkRlbGV0ZWAgbXVzdCBiZSBzcGVjaWZpZWQuJyk7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBjYWxsIG9mIFtwcm9wcy5vbkNyZWF0ZSwgcHJvcHMub25VcGRhdGVdKSB7XG4gICAgICBpZiAoY2FsbCAmJiAhY2FsbC5waHlzaWNhbFJlc291cmNlSWQgJiYgIWNhbGwucGh5c2ljYWxSZXNvdXJjZUlkUGF0aCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VpdGhlciBgcGh5c2ljYWxSZXNvdXJjZUlkYCBvciBgcGh5c2ljYWxSZXNvdXJjZUlkUGF0aGAgbXVzdCBiZSBzcGVjaWZpZWQgZm9yIG9uQ3JlYXRlIGFuZCBvblVwZGF0ZSBjYWxscy4nKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBwcm92aWRlciA9IG5ldyBsYW1iZGEuU2luZ2xldG9uRnVuY3Rpb24odGhpcywgJ1Byb3ZpZGVyJywge1xuICAgICAgY29kZTogbGFtYmRhLkNvZGUuZnJvbUFzc2V0KHBhdGguam9pbihfX2Rpcm5hbWUsICdhd3MtY3VzdG9tLXJlc291cmNlLXByb3ZpZGVyJykpLFxuICAgICAgcnVudGltZTogbGFtYmRhLlJ1bnRpbWUuTk9ERUpTXzEwX1gsXG4gICAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG4gICAgICB1dWlkOiAnNjc5ZjUzZmEtYzAwMi00MzBjLWIwZGEtNWI3OTgyYmQyMjg3JyxcbiAgICAgIGxhbWJkYVB1cnBvc2U6ICdBV1MnXG4gICAgfSk7XG5cbiAgICBpZiAocHJvcHMucG9saWN5U3RhdGVtZW50cykge1xuICAgICAgZm9yIChjb25zdCBzdGF0ZW1lbnQgb2YgcHJvcHMucG9saWN5U3RhdGVtZW50cykge1xuICAgICAgICBwcm92aWRlci5hZGRUb1JvbGVQb2xpY3koc3RhdGVtZW50KTtcbiAgICAgIH1cbiAgICB9IGVsc2UgeyAvLyBEZXJpdmUgc3RhdGVtZW50cyBmcm9tIEFXUyBTREsgY2FsbHNcbiAgICAgIGZvciAoY29uc3QgY2FsbCBvZiBbcHJvcHMub25DcmVhdGUsIHByb3BzLm9uVXBkYXRlLCBwcm9wcy5vbkRlbGV0ZV0pIHtcbiAgICAgICAgaWYgKGNhbGwpIHtcbiAgICAgICAgICBwcm92aWRlci5hZGRUb1JvbGVQb2xpY3kobmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgYWN0aW9uczogW2F3c1Nka1RvSWFtQWN0aW9uKGNhbGwuc2VydmljZSwgY2FsbC5hY3Rpb24pXSxcbiAgICAgICAgICAgIHJlc291cmNlczogWycqJ11cbiAgICAgICAgICB9KSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBjcmVhdGUgPSBwcm9wcy5vbkNyZWF0ZSB8fCBwcm9wcy5vblVwZGF0ZTtcbiAgICB0aGlzLmN1c3RvbVJlc291cmNlID0gbmV3IEN1c3RvbVJlc291cmNlKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIHJlc291cmNlVHlwZTogJ0N1c3RvbTo6QVdTJyxcbiAgICAgIHByb3ZpZGVyOiBDdXN0b21SZXNvdXJjZVByb3ZpZGVyLmxhbWJkYShwcm92aWRlciksXG4gICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgIGNyZWF0ZTogY3JlYXRlICYmIGVuY29kZUJvb2xlYW5zKGNyZWF0ZSksXG4gICAgICAgIHVwZGF0ZTogcHJvcHMub25VcGRhdGUgJiYgZW5jb2RlQm9vbGVhbnMocHJvcHMub25VcGRhdGUpLFxuICAgICAgICBkZWxldGU6IHByb3BzLm9uRGVsZXRlICYmIGVuY29kZUJvb2xlYW5zKHByb3BzLm9uRGVsZXRlKVxuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgcmVzcG9uc2UgZGF0YSBmb3IgdGhlIEFXUyBTREsgY2FsbC5cbiAgICpcbiAgICogRXhhbXBsZSBmb3IgUzMgLyBsaXN0QnVja2V0IDogJ0J1Y2tldHMuMC5OYW1lJ1xuICAgKlxuICAgKiBAcGFyYW0gZGF0YVBhdGggdGhlIHBhdGggdG8gdGhlIGRhdGFcbiAgICovXG4gIHB1YmxpYyBnZXREYXRhKGRhdGFQYXRoOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5jdXN0b21SZXNvdXJjZS5nZXRBdHQoZGF0YVBhdGgpO1xuICB9XG59XG5cbi8qKlxuICogVHJhbnNmb3JtIFNESyBzZXJ2aWNlL2FjdGlvbiB0byBJQU0gYWN0aW9uIHVzaW5nIG1ldGFkYXRhIGZyb20gYXdzLXNkayBtb2R1bGUuXG4gKiBFeGFtcGxlOiBDbG91ZFdhdGNoTG9ncyB3aXRoIHB1dFJldGVudGlvblBvbGljeSA9PiBsb2dzOlB1dFJldGVudGlvblBvbGljeVxuICpcbiAqIFRPRE86IGlzIHRoaXMgbWFwcGluZyBjb3JyZWN0IGZvciBhbGwgc2VydmljZXM/XG4gKi9cbmZ1bmN0aW9uIGF3c1Nka1RvSWFtQWN0aW9uKHNlcnZpY2U6IHN0cmluZywgYWN0aW9uOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBzcnYgPSBzZXJ2aWNlLnRvTG93ZXJDYXNlKCk7XG4gIGNvbnN0IGlhbVNlcnZpY2UgPSAoYXdzU2RrTWV0YWRhdGFbc3J2XSAmJiBhd3NTZGtNZXRhZGF0YVtzcnZdLnByZWZpeCkgfHwgc3J2O1xuICBjb25zdCBpYW1BY3Rpb24gPSBhY3Rpb24uY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyBhY3Rpb24uc2xpY2UoMSk7XG4gIHJldHVybiBgJHtpYW1TZXJ2aWNlfToke2lhbUFjdGlvbn1gO1xufVxuXG4vKipcbiAqIEVuY29kZXMgYm9vbGVhbnMgYXMgc3BlY2lhbCBzdHJpbmdzXG4gKi9cbmZ1bmN0aW9uIGVuY29kZUJvb2xlYW5zKG9iamVjdDogb2JqZWN0KSB7XG4gIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KG9iamVjdCksIChfaywgdikgPT4ge1xuICAgIHN3aXRjaCAodikge1xuICAgICAgY2FzZSB0cnVlOlxuICAgICAgICByZXR1cm4gJ1RSVUU6Qk9PTEVBTic7XG4gICAgICBjYXNlIGZhbHNlOlxuICAgICAgICByZXR1cm4gJ0ZBTFNFOkJPT0xFQU4nO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIHY7XG4gICAgfVxuICB9KTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXdzLWN1c3RvbS1yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImF3cy1jdXN0b20tcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxvRUFBcUY7QUFDckYsd0NBQXlDO0FBQ3pDLDhDQUErQztBQUMvQyxxQ0FBc0M7QUFDdEMsNkJBQThCO0FBQzlCLG9EQUFxRDtBQU9yRCxNQUFNLGNBQWMsR0FBbUIsUUFBUSxDQUFDO0FBb0hoRCxNQUFhLGlCQUFrQixTQUFRLEdBQUcsQ0FBQyxTQUFTO0lBR2xELFlBQVksS0FBb0IsRUFBRSxFQUFVLEVBQUUsS0FBNkI7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFO1lBQ3pELE1BQU0sSUFBSSxLQUFLLENBQUMsa0VBQWtFLENBQUMsQ0FBQztTQUNyRjtRQUVELEtBQUssTUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNuRCxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRTtnQkFDcEUsTUFBTSxJQUFJLEtBQUssQ0FBQyw0R0FBNEcsQ0FBQyxDQUFDO2FBQy9IO1NBQ0Y7UUFFRCxNQUFNLFFBQVEsR0FBRyxJQUFJLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQzlELElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSw4QkFBOEIsQ0FBQyxDQUFDO1lBQ2pGLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLFdBQVc7WUFDbkMsT0FBTyxFQUFFLGVBQWU7WUFDeEIsSUFBSSxFQUFFLHNDQUFzQztZQUM1QyxhQUFhLEVBQUUsS0FBSztTQUNyQixDQUFDLENBQUM7UUFFSCxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixLQUFLLE1BQU0sU0FBUyxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTtnQkFDOUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUNyQztTQUNGO2FBQU0sRUFBRSx1Q0FBdUM7WUFDOUMsS0FBSyxNQUFNLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsS0FBSyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLEVBQUU7Z0JBQ25FLElBQUksSUFBSSxFQUFFO29CQUNSLFFBQVEsQ0FBQyxlQUFlLENBQUMsSUFBSSxHQUFHLENBQUMsZUFBZSxDQUFDO3dCQUMvQyxPQUFPLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQzt3QkFDdkQsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDO3FCQUNqQixDQUFDLENBQUMsQ0FBQztpQkFDTDthQUNGO1NBQ0Y7UUFFRCxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsUUFBUSxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDaEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLG1DQUFjLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUN6RCxZQUFZLEVBQUUsYUFBYTtZQUMzQixRQUFRLEVBQUUsMkNBQXNCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQztZQUNqRCxVQUFVLEVBQUU7Z0JBQ1YsTUFBTSxFQUFFLE1BQU0sSUFBSSxjQUFjLENBQUMsTUFBTSxDQUFDO2dCQUN4QyxNQUFNLEVBQUUsS0FBSyxDQUFDLFFBQVEsSUFBSSxjQUFjLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQztnQkFDeEQsTUFBTSxFQUFFLEtBQUssQ0FBQyxRQUFRLElBQUksY0FBYyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7YUFDekQ7U0FDRixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksT0FBTyxDQUFDLFFBQWdCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNGO0FBN0RELDhDQTZEQztBQUVEOzs7OztHQUtHO0FBQ0gsU0FBUyxpQkFBaUIsQ0FBQyxPQUFlLEVBQUUsTUFBYztJQUN4RCxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbEMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsQ0FBQztJQUM5RSxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDbkUsT0FBTyxHQUFHLFVBQVUsSUFBSSxTQUFTLEVBQUUsQ0FBQztBQUN0QyxDQUFDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGNBQWMsQ0FBQyxNQUFjO0lBQ3BDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFO1FBQ2xELFFBQVEsQ0FBQyxFQUFFO1lBQ1QsS0FBSyxJQUFJO2dCQUNQLE9BQU8sY0FBYyxDQUFDO1lBQ3hCLEtBQUssS0FBSztnQkFDUixPQUFPLGVBQWUsQ0FBQztZQUN6QjtnQkFDRSxPQUFPLENBQUMsQ0FBQztTQUNaO0lBQ0gsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ3VzdG9tUmVzb3VyY2UsIEN1c3RvbVJlc291cmNlUHJvdmlkZXIgfSBmcm9tICdAYXdzLWNkay9hd3MtY2xvdWRmb3JtYXRpb24nO1xuaW1wb3J0IGlhbSA9IHJlcXVpcmUoJ0Bhd3MtY2RrL2F3cy1pYW0nKTtcbmltcG9ydCBsYW1iZGEgPSByZXF1aXJlKCdAYXdzLWNkay9hd3MtbGFtYmRhJyk7XG5pbXBvcnQgY2RrID0gcmVxdWlyZSgnQGF3cy1jZGsvY29yZScpO1xuaW1wb3J0IHBhdGggPSByZXF1aXJlKCdwYXRoJyk7XG5pbXBvcnQgbWV0YWRhdGEgPSByZXF1aXJlKCcuL3Nkay1hcGktbWV0YWRhdGEuanNvbicpO1xuXG4vKipcbiAqIEFXUyBTREsgc2VydmljZSBtZXRhZGF0YS5cbiAqL1xuZXhwb3J0IHR5cGUgQXdzU2RrTWV0YWRhdGEgPSB7W2tleTogc3RyaW5nXTogYW55fTtcblxuY29uc3QgYXdzU2RrTWV0YWRhdGE6IEF3c1Nka01ldGFkYXRhID0gbWV0YWRhdGE7XG5cbi8qKlxuICogQW4gQVdTIFNESyBjYWxsLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEF3c1Nka0NhbGwge1xuICAvKipcbiAgICogVGhlIHNlcnZpY2UgdG8gY2FsbFxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NKYXZhU2NyaXB0U0RLL2xhdGVzdC9pbmRleC5odG1sXG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBzZXJ2aWNlIGFjdGlvbiB0byBjYWxsXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0phdmFTY3JpcHRTREsvbGF0ZXN0L2luZGV4Lmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGFyYW1ldGVycyBmb3IgdGhlIHNlcnZpY2UgYWN0aW9uXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0phdmFTY3JpcHRTREsvbGF0ZXN0L2luZGV4Lmh0bWxcbiAgICovXG4gIHJlYWRvbmx5IHBhcmFtZXRlcnM/OiBhbnk7XG5cbiAgLyoqXG4gICAqIFRoZSBwYXRoIHRvIHRoZSBkYXRhIGluIHRoZSBBUEkgY2FsbCByZXNwb25zZSB0byB1c2UgYXMgdGhlIHBoeXNpY2FsXG4gICAqIHJlc291cmNlIGlkLiBFaXRoZXIgYHBoeXNpY2FsUmVzb3VyY2VJZGAgb3IgYHBoeXNpY2FsUmVzb3VyY2VJZFBhdGhgXG4gICAqIG11c3QgYmUgc3BlY2lmaWVkIGZvciBvbkNyZWF0ZSBvciBvblVwZGF0ZSBjYWxscy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBwYXRoXG4gICAqL1xuICByZWFkb25seSBwaHlzaWNhbFJlc291cmNlSWRQYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcGh5c2ljYWwgcmVzb3VyY2UgaWQgb2YgdGhlIGN1c3RvbSByZXNvdXJjZSBmb3IgdGhpcyBjYWxsLiBFaXRoZXJcbiAgICogYHBoeXNpY2FsUmVzb3VyY2VJZGAgb3IgYHBoeXNpY2FsUmVzb3VyY2VJZFBhdGhgIG11c3QgYmUgc3BlY2lmaWVkIGZvclxuICAgKiBvbkNyZWF0ZSBvciBvblVwZGF0ZSBjYWxscy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBwaHlzaWNhbCByZXNvdXJjZSBpZFxuICAgKi9cbiAgcmVhZG9ubHkgcGh5c2ljYWxSZXNvdXJjZUlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVnZXggcGF0dGVybiB0byB1c2UgdG8gY2F0Y2ggQVBJIGVycm9ycy4gVGhlIGBjb2RlYCBwcm9wZXJ0eSBvZiB0aGVcbiAgICogYEVycm9yYCBvYmplY3Qgd2lsbCBiZSB0ZXN0ZWQgYWdhaW5zdCB0aGlzIHBhdHRlcm4uIElmIHRoZXJlIGlzIGEgbWF0Y2ggYW5cbiAgICogZXJyb3Igd2lsbCBub3QgYmUgdGhyb3duLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGRvIG5vdCBjYXRjaCBlcnJvcnNcbiAgICovXG4gIHJlYWRvbmx5IGNhdGNoRXJyb3JQYXR0ZXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBUEkgdmVyc2lvbiB0byB1c2UgZm9yIHRoZSBzZXJ2aWNlXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL3Nkay1mb3ItamF2YXNjcmlwdC92Mi9kZXZlbG9wZXItZ3VpZGUvbG9ja2luZy1hcGktdmVyc2lvbnMuaHRtbFxuICAgKiBAZGVmYXVsdCAtIHVzZSBsYXRlc3QgYXZhaWxhYmxlIEFQSSB2ZXJzaW9uXG4gICAqL1xuICByZWFkb25seSBhcGlWZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcmVnaW9uIHRvIHNlbmQgc2VydmljZSByZXF1ZXN0cyB0by5cbiAgICogKipOb3RlOiBDcm9zcy1yZWdpb24gb3BlcmF0aW9ucyBhcmUgZ2VuZXJhbGx5IGNvbnNpZGVyZWQgYW4gYW50aS1wYXR0ZXJuLioqXG4gICAqICoqQ29uc2lkZXIgZmlyc3QgZGVwbG95aW5nIGEgc3RhY2sgaW4gdGhhdCByZWdpb24uKipcbiAgICpcbiAgICogQGRlZmF1bHQgLSB0aGUgcmVnaW9uIHdoZXJlIHRoaXMgY3VzdG9tIHJlc291cmNlIGlzIGRlcGxveWVkXG4gICAqL1xuICByZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJlc3RyaWN0IHRoZSBkYXRhIHJldHVybmVkIGJ5IHRoZSBjdXN0b20gcmVzb3VyY2UgdG8gYSBzcGVjaWZpYyBwYXRoIGluXG4gICAqIHRoZSBBUEkgcmVzcG9uc2UuIFVzZSB0aGlzIHRvIGxpbWl0IHRoZSBkYXRhIHJldHVybmVkIGJ5IHRoZSBjdXN0b21cbiAgICogcmVzb3VyY2UgaWYgd29ya2luZyB3aXRoIEFQSSBjYWxscyB0aGF0IGNvdWxkIHBvdGVudGlhbGx5IHJlc3VsdCBpbiBjdXN0b21cbiAgICogcmVzcG9uc2Ugb2JqZWN0cyBleGNlZWRpbmcgdGhlIGhhcmQgbGltaXQgb2YgNDA5NiBieXRlcy5cbiAgICpcbiAgICogRXhhbXBsZSBmb3IgRUNTIC8gdXBkYXRlU2VydmljZTogJ3NlcnZpY2UuZGVwbG95bWVudENvbmZpZ3VyYXRpb24ubWF4aW11bVBlcmNlbnQnXG4gICAqXG4gICAqIEBkZWZhdWx0IHJldHVybiBhbGwgZGF0YVxuICAgKi9cbiAgcmVhZG9ubHkgb3V0cHV0UGF0aD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBd3NDdXN0b21SZXNvdXJjZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBBV1MgU0RLIGNhbGwgdG8gbWFrZSB3aGVuIHRoZSByZXNvdXJjZSBpcyBjcmVhdGVkLlxuICAgKiBBdCBsZWFzdCBvbkNyZWF0ZSwgb25VcGRhdGUgb3Igb25EZWxldGUgbXVzdCBiZSBzcGVjaWZpZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IHRoZSBjYWxsIHdoZW4gdGhlIHJlc291cmNlIGlzIHVwZGF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IG9uQ3JlYXRlPzogQXdzU2RrQ2FsbDtcblxuICAvKipcbiAgICogVGhlIEFXUyBTREsgY2FsbCB0byBtYWtlIHdoZW4gdGhlIHJlc291cmNlIGlzIHVwZGF0ZWRcbiAgICpcbiAgICogQGRlZmF1bHQgbm8gY2FsbFxuICAgKi9cbiAgcmVhZG9ubHkgb25VcGRhdGU/OiBBd3NTZGtDYWxsO1xuXG4gIC8qKlxuICAgKiBUaGUgQVdTIFNESyBjYWxsIHRvIG1ha2Ugd2hlbiB0aGUgcmVzb3VyY2UgaXMgZGVsZXRlZFxuICAgKlxuICAgKiBAZGVmYXVsdCBubyBjYWxsXG4gICAqL1xuICByZWFkb25seSBvbkRlbGV0ZT86IEF3c1Nka0NhbGw7XG5cbiAgLyoqXG4gICAqIFRoZSBJQU0gcG9saWN5IHN0YXRlbWVudHMgdG8gYWxsb3cgdGhlIGRpZmZlcmVudCBjYWxscy4gVXNlIG9ubHkgaWZcbiAgICogcmVzb3VyY2UgcmVzdHJpY3Rpb24gaXMgbmVlZGVkLlxuICAgKlxuICAgKiBAZGVmYXVsdCBleHRyYWN0IHRoZSBwZXJtaXNzaW9ucyBmcm9tIHRoZSBjYWxsc1xuICAgKi9cbiAgcmVhZG9ubHkgcG9saWN5U3RhdGVtZW50cz86IGlhbS5Qb2xpY3lTdGF0ZW1lbnRbXTtcbn1cblxuZXhwb3J0IGNsYXNzIEF3c0N1c3RvbVJlc291cmNlIGV4dGVuZHMgY2RrLkNvbnN0cnVjdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY3VzdG9tUmVzb3VyY2U6IEN1c3RvbVJlc291cmNlO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBjZGsuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXdzQ3VzdG9tUmVzb3VyY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICBpZiAoIXByb3BzLm9uQ3JlYXRlICYmICFwcm9wcy5vblVwZGF0ZSAmJiAhcHJvcHMub25EZWxldGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignQXQgbGVhc3QgYG9uQ3JlYXRlYCwgYG9uVXBkYXRlYCBvciBgb25EZWxldGVgIG11c3QgYmUgc3BlY2lmaWVkLicpO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgY2FsbCBvZiBbcHJvcHMub25DcmVhdGUsIHByb3BzLm9uVXBkYXRlXSkge1xuICAgICAgaWYgKGNhbGwgJiYgIWNhbGwucGh5c2ljYWxSZXNvdXJjZUlkICYmICFjYWxsLnBoeXNpY2FsUmVzb3VyY2VJZFBhdGgpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdFaXRoZXIgYHBoeXNpY2FsUmVzb3VyY2VJZGAgb3IgYHBoeXNpY2FsUmVzb3VyY2VJZFBhdGhgIG11c3QgYmUgc3BlY2lmaWVkIGZvciBvbkNyZWF0ZSBhbmQgb25VcGRhdGUgY2FsbHMuJyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcHJvdmlkZXIgPSBuZXcgbGFtYmRhLlNpbmdsZXRvbkZ1bmN0aW9uKHRoaXMsICdQcm92aWRlcicsIHtcbiAgICAgIGNvZGU6IGxhbWJkYS5Db2RlLmZyb21Bc3NldChwYXRoLmpvaW4oX19kaXJuYW1lLCAnYXdzLWN1c3RvbS1yZXNvdXJjZS1wcm92aWRlcicpKSxcbiAgICAgIHJ1bnRpbWU6IGxhbWJkYS5SdW50aW1lLk5PREVKU18xMF9YLFxuICAgICAgaGFuZGxlcjogJ2luZGV4LmhhbmRsZXInLFxuICAgICAgdXVpZDogJzY3OWY1M2ZhLWMwMDItNDMwYy1iMGRhLTViNzk4MmJkMjI4NycsXG4gICAgICBsYW1iZGFQdXJwb3NlOiAnQVdTJ1xuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLnBvbGljeVN0YXRlbWVudHMpIHtcbiAgICAgIGZvciAoY29uc3Qgc3RhdGVtZW50IG9mIHByb3BzLnBvbGljeVN0YXRlbWVudHMpIHtcbiAgICAgICAgcHJvdmlkZXIuYWRkVG9Sb2xlUG9saWN5KHN0YXRlbWVudCk7XG4gICAgICB9XG4gICAgfSBlbHNlIHsgLy8gRGVyaXZlIHN0YXRlbWVudHMgZnJvbSBBV1MgU0RLIGNhbGxzXG4gICAgICBmb3IgKGNvbnN0IGNhbGwgb2YgW3Byb3BzLm9uQ3JlYXRlLCBwcm9wcy5vblVwZGF0ZSwgcHJvcHMub25EZWxldGVdKSB7XG4gICAgICAgIGlmIChjYWxsKSB7XG4gICAgICAgICAgcHJvdmlkZXIuYWRkVG9Sb2xlUG9saWN5KG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgIGFjdGlvbnM6IFthd3NTZGtUb0lhbUFjdGlvbihjYWxsLnNlcnZpY2UsIGNhbGwuYWN0aW9uKV0sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddXG4gICAgICAgICAgfSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgY3JlYXRlID0gcHJvcHMub25DcmVhdGUgfHwgcHJvcHMub25VcGRhdGU7XG4gICAgdGhpcy5jdXN0b21SZXNvdXJjZSA9IG5ldyBDdXN0b21SZXNvdXJjZSh0aGlzLCAnUmVzb3VyY2UnLCB7XG4gICAgICByZXNvdXJjZVR5cGU6ICdDdXN0b206OkFXUycsXG4gICAgICBwcm92aWRlcjogQ3VzdG9tUmVzb3VyY2VQcm92aWRlci5sYW1iZGEocHJvdmlkZXIpLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBjcmVhdGU6IGNyZWF0ZSAmJiBlbmNvZGVCb29sZWFucyhjcmVhdGUpLFxuICAgICAgICB1cGRhdGU6IHByb3BzLm9uVXBkYXRlICYmIGVuY29kZUJvb2xlYW5zKHByb3BzLm9uVXBkYXRlKSxcbiAgICAgICAgZGVsZXRlOiBwcm9wcy5vbkRlbGV0ZSAmJiBlbmNvZGVCb29sZWFucyhwcm9wcy5vbkRlbGV0ZSlcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHJlc3BvbnNlIGRhdGEgZm9yIHRoZSBBV1MgU0RLIGNhbGwuXG4gICAqXG4gICAqIEV4YW1wbGUgZm9yIFMzIC8gbGlzdEJ1Y2tldCA6ICdCdWNrZXRzLjAuTmFtZSdcbiAgICpcbiAgICogQHBhcmFtIGRhdGFQYXRoIHRoZSBwYXRoIHRvIHRoZSBkYXRhXG4gICAqL1xuICBwdWJsaWMgZ2V0RGF0YShkYXRhUGF0aDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuY3VzdG9tUmVzb3VyY2UuZ2V0QXR0KGRhdGFQYXRoKTtcbiAgfVxufVxuXG4vKipcbiAqIFRyYW5zZm9ybSBTREsgc2VydmljZS9hY3Rpb24gdG8gSUFNIGFjdGlvbiB1c2luZyBtZXRhZGF0YSBmcm9tIGF3cy1zZGsgbW9kdWxlLlxuICogRXhhbXBsZTogQ2xvdWRXYXRjaExvZ3Mgd2l0aCBwdXRSZXRlbnRpb25Qb2xpY3kgPT4gbG9nczpQdXRSZXRlbnRpb25Qb2xpY3lcbiAqXG4gKiBUT0RPOiBpcyB0aGlzIG1hcHBpbmcgY29ycmVjdCBmb3IgYWxsIHNlcnZpY2VzP1xuICovXG5mdW5jdGlvbiBhd3NTZGtUb0lhbUFjdGlvbihzZXJ2aWNlOiBzdHJpbmcsIGFjdGlvbjogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3Qgc3J2ID0gc2VydmljZS50b0xvd2VyQ2FzZSgpO1xuICBjb25zdCBpYW1TZXJ2aWNlID0gKGF3c1Nka01ldGFkYXRhW3Nydl0gJiYgYXdzU2RrTWV0YWRhdGFbc3J2XS5wcmVmaXgpIHx8IHNydjtcbiAgY29uc3QgaWFtQWN0aW9uID0gYWN0aW9uLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgYWN0aW9uLnNsaWNlKDEpO1xuICByZXR1cm4gYCR7aWFtU2VydmljZX06JHtpYW1BY3Rpb259YDtcbn1cblxuLyoqXG4gKiBFbmNvZGVzIGJvb2xlYW5zIGFzIHNwZWNpYWwgc3RyaW5nc1xuICovXG5mdW5jdGlvbiBlbmNvZGVCb29sZWFucyhvYmplY3Q6IG9iamVjdCkge1xuICByZXR1cm4gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShvYmplY3QpLCAoX2ssIHYpID0+IHtcbiAgICBzd2l0Y2ggKHYpIHtcbiAgICAgIGNhc2UgdHJ1ZTpcbiAgICAgICAgcmV0dXJuICdUUlVFOkJPT0xFQU4nO1xuICAgICAgY2FzZSBmYWxzZTpcbiAgICAgICAgcmV0dXJuICdGQUxTRTpCT09MRUFOJztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiB2O1xuICAgIH1cbiAgfSk7XG59XG4iXX0=
{
"name": "@aws-cdk/custom-resources",
"version": "1.11.0",
"version": "1.12.0",
"description": "Constructs for implementing CDK custom resources",

@@ -70,8 +70,8 @@ "main": "lib/index.js",

"devDependencies": {
"@aws-cdk/assert": "^1.11.0",
"@aws-cdk/aws-events": "^1.11.0",
"@aws-cdk/aws-ssm": "^1.11.0",
"@aws-cdk/assert": "^1.12.0",
"@aws-cdk/aws-events": "^1.12.0",
"@aws-cdk/aws-ssm": "^1.12.0",
"@types/aws-lambda": "^8.10.33",
"@types/sinon": "^7.5.0",
"aws-sdk": "^2.540.0",
"aws-sdk": "^2.543.0",
"aws-sdk-mock": "^4.5.0",

@@ -86,15 +86,15 @@ "cdk-build-tools": "file:../../../tools/cdk-build-tools",

"dependencies": {
"@aws-cdk/aws-cloudformation": "^1.11.0",
"@aws-cdk/aws-iam": "^1.11.0",
"@aws-cdk/aws-lambda": "^1.11.0",
"@aws-cdk/aws-sns": "^1.11.0",
"@aws-cdk/core": "^1.11.0"
"@aws-cdk/aws-cloudformation": "^1.12.0",
"@aws-cdk/aws-iam": "^1.12.0",
"@aws-cdk/aws-lambda": "^1.12.0",
"@aws-cdk/aws-sns": "^1.12.0",
"@aws-cdk/core": "^1.12.0"
},
"homepage": "https://github.com/aws/aws-cdk",
"peerDependencies": {
"@aws-cdk/aws-cloudformation": "^1.11.0",
"@aws-cdk/aws-iam": "^1.11.0",
"@aws-cdk/aws-lambda": "^1.11.0",
"@aws-cdk/aws-sns": "^1.11.0",
"@aws-cdk/core": "^1.11.0"
"@aws-cdk/aws-cloudformation": "^1.12.0",
"@aws-cdk/aws-iam": "^1.12.0",
"@aws-cdk/aws-lambda": "^1.12.0",
"@aws-cdk/aws-sns": "^1.12.0",
"@aws-cdk/core": "^1.12.0"
},

@@ -101,0 +101,0 @@ "engines": {

@@ -42,4 +42,4 @@ {

},
"DeletionPolicy": "Delete",
"UpdateReplacePolicy": "Delete"
"UpdateReplacePolicy": "Delete",
"DeletionPolicy": "Delete"
},

@@ -113,3 +113,3 @@ "AWS679f53fac002430cb0da5b7982bd2287ServiceRoleC1EA0FF2": {

"S3Bucket": {
"Ref": "AWS679f53fac002430cb0da5b7982bd2287CodeS3BucketF55839B6"
"Ref": "AssetParameters44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059S3Bucket2360388A"
},

@@ -127,3 +127,3 @@ "S3Key": {

{
"Ref": "AWS679f53fac002430cb0da5b7982bd2287CodeS3VersionKey3C45B02F"
"Ref": "AssetParameters44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059S3VersionKey012A5944"
}

@@ -141,3 +141,3 @@ ]

{
"Ref": "AWS679f53fac002430cb0da5b7982bd2287CodeS3VersionKey3C45B02F"
"Ref": "AssetParameters44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059S3VersionKey012A5944"
}

@@ -189,4 +189,4 @@ ]

],
"DeletionPolicy": "Delete",
"UpdateReplacePolicy": "Delete"
"UpdateReplacePolicy": "Delete",
"DeletionPolicy": "Delete"
},

@@ -232,18 +232,18 @@ "DummyParameter53662B67": {

},
"DeletionPolicy": "Delete",
"UpdateReplacePolicy": "Delete"
"UpdateReplacePolicy": "Delete",
"DeletionPolicy": "Delete"
}
},
"Parameters": {
"AWS679f53fac002430cb0da5b7982bd2287CodeS3BucketF55839B6": {
"AssetParameters44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059S3Bucket2360388A": {
"Type": "String",
"Description": "S3 bucket for asset \"aws-cdk-sdk-js/AWS679f53fac002430cb0da5b7982bd2287/Code\""
"Description": "S3 bucket for asset \"44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059\""
},
"AWS679f53fac002430cb0da5b7982bd2287CodeS3VersionKey3C45B02F": {
"AssetParameters44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059S3VersionKey012A5944": {
"Type": "String",
"Description": "S3 key for asset version \"aws-cdk-sdk-js/AWS679f53fac002430cb0da5b7982bd2287/Code\""
"Description": "S3 key for asset version \"44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059\""
},
"AWS679f53fac002430cb0da5b7982bd2287CodeArtifactHash49FACC2E": {
"AssetParameters44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059ArtifactHashE1243C2C": {
"Type": "String",
"Description": "Artifact hash for asset \"aws-cdk-sdk-js/AWS679f53fac002430cb0da5b7982bd2287/Code\""
"Description": "Artifact hash for asset \"44223b510152d51e381791e0347041da535987f7d6f1703b343f9c06f6075059\""
}

@@ -277,2 +277,2 @@ },

}
}
}

@@ -10,3 +10,4 @@ import { Test } from 'nodeunit';

'restrict output path'(test: Test): Promise<void>;
'can specify apiVersion and region'(test: Test): Promise<void>;
};
export = _default;

@@ -211,3 +211,27 @@ "use strict";

},
async 'can specify apiVersion and region'(test) {
const publishFake = sinon.fake.resolves({});
AWS.mock('SNS', 'publish', publishFake);
const event = Object.assign(Object.assign({}, eventCommon), { RequestType: 'Create', ResourceProperties: {
ServiceToken: 'token',
Create: {
service: 'SNS',
action: 'publish',
parameters: {
Message: 'message',
TopicArn: 'topic'
},
apiVersion: '2010-03-31',
region: 'eu-west-1',
physicalResourceId: 'id',
}
} });
const request = createRequest(body => body.Status === 'SUCCESS' &&
body.Data.apiVersion === '2010-03-31' &&
body.Data.region === 'eu-west-1');
await aws_custom_resource_provider_1.handler(event, {});
test.equal(request.isDone(), true);
test.done();
},
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5hd3MtY3VzdG9tLXJlc291cmNlLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5hd3MtY3VzdG9tLXJlc291cmNlLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxvQ0FBcUM7QUFDckMsNkJBQThCO0FBRTlCLCtCQUFnQztBQUVoQyxzRkFBOEQ7QUFFOUQsTUFBTSxXQUFXLEdBQUc7SUFDbEIsWUFBWSxFQUFFLE9BQU87SUFDckIsV0FBVyxFQUFFLG1CQUFtQjtJQUNoQyxPQUFPLEVBQUUsU0FBUztJQUNsQixTQUFTLEVBQUUsV0FBVztJQUN0QixpQkFBaUIsRUFBRSxtQkFBbUI7SUFDdEMsWUFBWSxFQUFFLGFBQWE7Q0FDNUIsQ0FBQztBQUVGLFNBQVMsYUFBYSxDQUFDLGFBQWdGO0lBQ3JHLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO1NBQzdCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsYUFBYSxDQUFDO1NBQ3ZCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNoQixDQUFDO0FBRUQsaUJBQVM7SUFDUCxVQUFVLENBQUMsUUFBYTtRQUN0QixHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsUUFBUSxFQUFFLENBQUM7SUFDYixDQUFDO0lBRUQsS0FBSyxDQUFDLDZDQUE2QyxDQUFDLElBQVU7UUFDNUQsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDMUMsUUFBUSxFQUFFO2dCQUNSO29CQUNFLEdBQUcsRUFBRSxXQUFXO29CQUNoQixJQUFJLEVBQUUsZ0JBQWdCO2lCQUN2QjtnQkFDRDtvQkFDRSxHQUFHLEVBQUUsWUFBWTtvQkFDakIsSUFBSSxFQUFFLGlCQUFpQjtpQkFDeEI7YUFDRjtTQUMwQixDQUFDLENBQUM7UUFFL0IsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsYUFB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QVcsRUFBRSxRQUFRLEVBQ3JCLGtCQUFrQixFQUFFO2dCQUNsQixZQUFZLEVBQUUsT0FBTztnQkFDckIsTUFBTSxFQUFFO29CQUNOLE9BQU8sRUFBRSxJQUFJO29CQUNiLE1BQU0sRUFBRSxhQUFhO29CQUNyQixVQUFVLEVBQUU7d0JBQ1YsTUFBTSxFQUFFLFdBQVc7cUJBQ3BCO29CQUNELGtCQUFrQixFQUFFLElBQUk7b0JBQ3hCLFVBQVUsRUFBRSxZQUFZO2lCQUNYO2FBQ2hCLEdBQ0YsQ0FBQztRQUVGLE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUNuQyxJQUFJLENBQUMsTUFBTSxLQUFLLFNBQVM7WUFDekIsSUFBSSxDQUFDLGtCQUFrQixLQUFLLElBQUk7WUFDaEMsSUFBSSxDQUFDLElBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLFdBQVc7WUFDNUMsSUFBSSxDQUFDLElBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLFNBQVMsQ0FDM0MsQ0FBQztRQUVGLE1BQU0sc0NBQU8sQ0FBQyxLQUFLLEVBQUUsRUFBdUIsQ0FBQyxDQUFDO1FBRTlDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRW5DLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNkLENBQUM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFNESyA9IHJlcXVpcmUoJ2F3cy1zZGsnKTtcbmltcG9ydCBBV1MgPSByZXF1aXJlKCdhd3Mtc2RrLW1vY2snKTtcbmltcG9ydCBub2NrID0gcmVxdWlyZSgnbm9jaycpO1xuaW1wb3J0IHsgVGVzdCB9IGZyb20gJ25vZGV1bml0JztcbmltcG9ydCBzaW5vbiA9IHJlcXVpcmUoJ3Npbm9uJyk7XG5pbXBvcnQgeyBBd3NTZGtDYWxsIH0gZnJvbSAnLi4vbGliJztcbmltcG9ydCB7IGhhbmRsZXIgfSBmcm9tICcuLi9saWIvYXdzLWN1c3RvbS1yZXNvdXJjZS1wcm92aWRlcic7XG5cbmNvbnN0IGV2ZW50Q29tbW9uID0ge1xuICBTZXJ2aWNlVG9rZW46ICd0b2tlbicsXG4gIFJlc3BvbnNlVVJMOiAnaHR0cHM6Ly9sb2NhbGhvc3QnLFxuICBTdGFja0lkOiAnc3RhY2tJZCcsXG4gIFJlcXVlc3RJZDogJ3JlcXVlc3RJZCcsXG4gIExvZ2ljYWxSZXNvdXJjZUlkOiAnbG9naWNhbFJlc291cmNlSWQnLFxuICBSZXNvdXJjZVR5cGU6ICdDdXN0b206OkFXUycsXG59O1xuXG5mdW5jdGlvbiBjcmVhdGVSZXF1ZXN0KGJvZHlQcmVkaWNhdGU6IChib2R5OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVJlc3BvbnNlKSA9PiBib29sZWFuKSB7XG4gIHJldHVybiBub2NrKCdodHRwczovL2xvY2FsaG9zdCcpXG4gICAgLnB1dCgnLycsIGJvZHlQcmVkaWNhdGUpXG4gICAgLnJlcGx5KDIwMCk7XG59XG5cbmV4cG9ydCA9IHtcbiAgJ3RlYXJEb3duJyhjYWxsYmFjazogYW55KSB7XG4gICAgQVdTLnJlc3RvcmUoKTtcbiAgICBub2NrLmNsZWFuQWxsKCk7XG4gICAgY2FsbGJhY2soKTtcbiAgfSxcblxuICBhc3luYyAnY3JlYXRlIGV2ZW50IHdpdGggcGh5c2ljYWwgcmVzb3VyY2UgaWQgcGF0aCcodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IGxpc3RPYmplY3RzRmFrZSA9IHNpbm9uLmZha2UucmVzb2x2ZXMoe1xuICAgICAgQ29udGVudHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIEtleTogJ2ZpcnN0LWtleScsXG4gICAgICAgICAgRVRhZzogJ2ZpcnN0LWtleS1ldGFnJ1xuICAgICAgICB9LFxuICAgICAgICB7XG4gICAgICAgICAgS2V5OiAnc2Vjb25kLWtleScsXG4gICAgICAgICAgRVRhZzogJ3NlY29uZC1rZXktZXRhZycsXG4gICAgICAgIH1cbiAgICAgIF1cbiAgICB9IGFzIFNESy5TMy5MaXN0T2JqZWN0c091dHB1dCk7XG5cbiAgICBBV1MubW9jaygnUzMnLCAnbGlzdE9iamVjdHMnLCBsaXN0T2JqZWN0c0Zha2UpO1xuXG4gICAgY29uc3QgZXZlbnQ6IEFXU0xhbWJkYS5DbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlQ3JlYXRlRXZlbnQgPSB7XG4gICAgICAuLi5ldmVudENvbW1vbixcbiAgICAgIFJlcXVlc3RUeXBlOiAnQ3JlYXRlJyxcbiAgICAgIFJlc291cmNlUHJvcGVydGllczoge1xuICAgICAgICBTZXJ2aWNlVG9rZW46ICd0b2tlbicsXG4gICAgICAgIENyZWF0ZToge1xuICAgICAgICAgIHNlcnZpY2U6ICdTMycsXG4gICAgICAgICAgYWN0aW9uOiAnbGlzdE9iamVjdHMnLFxuICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgIEJ1Y2tldDogJ215LWJ1Y2tldCdcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZFBhdGg6ICdDb250ZW50cy4xLkVUYWcnXG4gICAgICAgIH0gYXMgQXdzU2RrQ2FsbFxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChib2R5ID0+XG4gICAgICBib2R5LlN0YXR1cyA9PT0gJ1NVQ0NFU1MnICYmXG4gICAgICBib2R5LlBoeXNpY2FsUmVzb3VyY2VJZCA9PT0gJ3NlY29uZC1rZXktZXRhZycgJiZcbiAgICAgIGJvZHkuRGF0YSFbJ0NvbnRlbnRzLjAuS2V5J10gPT09ICdmaXJzdC1rZXknXG4gICAgKTtcblxuICAgIGF3YWl0IGhhbmRsZXIoZXZlbnQsIHt9IGFzIEFXU0xhbWJkYS5Db250ZXh0KTtcblxuICAgIHNpbm9uLmFzc2VydC5jYWxsZWRXaXRoKGxpc3RPYmplY3RzRmFrZSwge1xuICAgICAgQnVja2V0OiAnbXktYnVja2V0J1xuICAgIH0pO1xuXG4gICAgdGVzdC5lcXVhbChyZXF1ZXN0LmlzRG9uZSgpLCB0cnVlKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gIGFzeW5jICd1cGRhdGUgZXZlbnQgd2l0aCBwaHlzaWNhbCByZXNvdXJjZSBpZCcodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IHB1Ymxpc2ggPSBzaW5vbi5mYWtlLnJlc29sdmVzKHt9KTtcblxuICAgIEFXUy5tb2NrKCdTTlMnLCAncHVibGlzaCcsIHB1Ymxpc2gpO1xuXG4gICAgY29uc3QgZXZlbnQ6IEFXU0xhbWJkYS5DbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlVXBkYXRlRXZlbnQgPSB7XG4gICAgICAuLi5ldmVudENvbW1vbixcbiAgICAgIFJlcXVlc3RUeXBlOiAnVXBkYXRlJyxcbiAgICAgIFBoeXNpY2FsUmVzb3VyY2VJZDogJ3BoeXNpY2FsUmVzb3VyY2VJZCcsXG4gICAgICBPbGRSZXNvdXJjZVByb3BlcnRpZXM6IHt9LFxuICAgICAgUmVzb3VyY2VQcm9wZXJ0aWVzOiB7XG4gICAgICAgIFNlcnZpY2VUb2tlbjogJ3Rva2VuJyxcbiAgICAgICAgVXBkYXRlOiB7XG4gICAgICAgICAgc2VydmljZTogJ1NOUycsXG4gICAgICAgICAgYWN0aW9uOiAncHVibGlzaCcsXG4gICAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgICAgTWVzc2FnZTogJ2hlbGxvJyxcbiAgICAgICAgICAgIFRvcGljQXJuOiAndG9waWNhcm4nXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQ6ICd0b3BpY2FybidcbiAgICAgICAgfSBhcyBBd3NTZGtDYWxsXG4gICAgICB9XG4gICAgfTtcblxuICAgIGNvbnN0IHJlcXVlc3QgPSBjcmVhdGVSZXF1ZXN0KGJvZHkgPT5cbiAgICAgIGJvZHkuU3RhdHVzID09PSAnU1VDQ0VTUycgJiZcbiAgICAgIGJvZHkuUGh5c2ljYWxSZXNvdXJjZUlkID09PSAndG9waWNhcm4nXG4gICAgKTtcblxuICAgIGF3YWl0IGhhbmRsZXIoZXZlbnQsIHt9IGFzIEFXU0xhbWJkYS5Db250ZXh0KTtcblxuICAgIHRlc3QuZXF1YWwocmVxdWVzdC5pc0RvbmUoKSwgdHJ1ZSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICBhc3luYyAnZGVsZXRlIGV2ZW50Jyh0ZXN0OiBUZXN0KSB7XG4gICAgY29uc3QgbGlzdE9iamVjdHNGYWtlID0gc2lub24uZmFrZS5yZXNvbHZlcyh7fSk7XG5cbiAgICBBV1MubW9jaygnUzMnLCAnbGlzdE9iamVjdHMnLCBsaXN0T2JqZWN0c0Zha2UpO1xuXG4gICAgY29uc3QgZXZlbnQ6IEFXU0xhbWJkYS5DbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlRGVsZXRlRXZlbnQgPSB7XG4gICAgICAuLi5ldmVudENvbW1vbixcbiAgICAgIFJlcXVlc3RUeXBlOiAnRGVsZXRlJyxcbiAgICAgIFBoeXNpY2FsUmVzb3VyY2VJZDogJ3BoeXNpY2FsUmVzb3VyY2VJZCcsXG4gICAgICBSZXNvdXJjZVByb3BlcnRpZXM6IHtcbiAgICAgICAgU2VydmljZVRva2VuOiAndG9rZW4nLFxuICAgICAgICBDcmVhdGU6IHtcbiAgICAgICAgICBzZXJ2aWNlOiAnUzMnLFxuICAgICAgICAgIGFjdGlvbjogJ2xpc3RPYmplY3RzJyxcbiAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICBCdWNrZXQ6ICdteS1idWNrZXQnXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwaHlzaWNhbFJlc291cmNlSWRQYXRoOiAnQ29udGVudHMuMS5FVGFnJ1xuICAgICAgICB9IGFzIEF3c1Nka0NhbGxcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoYm9keSA9PlxuICAgICAgYm9keS5TdGF0dXMgPT09ICdTVUNDRVNTJyAmJlxuICAgICAgYm9keS5QaHlzaWNhbFJlc291cmNlSWQgPT09ICdwaHlzaWNhbFJlc291cmNlSWQnICYmXG4gICAgICBPYmplY3Qua2V5cyhib2R5LkRhdGEhKS5sZW5ndGggPT09IDBcbiAgICApO1xuXG4gICAgYXdhaXQgaGFuZGxlcihldmVudCwge30gYXMgQVdTTGFtYmRhLkNvbnRleHQpO1xuXG4gICAgc2lub24uYXNzZXJ0Lm5vdENhbGxlZChsaXN0T2JqZWN0c0Zha2UpO1xuXG4gICAgdGVzdC5lcXVhbChyZXF1ZXN0LmlzRG9uZSgpLCB0cnVlKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gIGFzeW5jICdjYXRjaCBlcnJvcnMnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBlcnJvcjogTm9kZUpTLkVycm5vRXhjZXB0aW9uID0gbmV3IEVycm9yKCk7XG4gICAgZXJyb3IuY29kZSA9ICdOb1N1Y2hCdWNrZXQnO1xuICAgIGNvbnN0IGxpc3RPYmplY3RzRmFrZSA9IHNpbm9uLmZha2UucmVqZWN0cyhlcnJvcik7XG5cbiAgICBBV1MubW9jaygnUzMnLCAnbGlzdE9iamVjdHMnLCBsaXN0T2JqZWN0c0Zha2UpO1xuXG4gICAgY29uc3QgZXZlbnQ6IEFXU0xhbWJkYS5DbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlQ3JlYXRlRXZlbnQgPSB7XG4gICAgICAuLi5ldmVudENvbW1vbixcbiAgICAgIFJlcXVlc3RUeXBlOiAnQ3JlYXRlJyxcbiAgICAgIFJlc291cmNlUHJvcGVydGllczoge1xuICAgICAgICBTZXJ2aWNlVG9rZW46ICd0b2tlbicsXG4gICAgICAgIENyZWF0ZToge1xuICAgICAgICAgIHNlcnZpY2U6ICdTMycsXG4gICAgICAgICAgYWN0aW9uOiAnbGlzdE9iamVjdHMnLFxuICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgIEJ1Y2tldDogJ215LWJ1Y2tldCdcbiAgICAgICAgICB9LFxuICAgICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogJ3BoeXNpY2FsUmVzb3VyY2VJZCcsXG4gICAgICAgICAgY2F0Y2hFcnJvclBhdHRlcm46ICdOb1N1Y2hCdWNrZXQnXG4gICAgICAgIH0gYXMgQXdzU2RrQ2FsbFxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChib2R5ID0+XG4gICAgICBib2R5LlN0YXR1cyA9PT0gJ1NVQ0NFU1MnICYmXG4gICAgICBib2R5LlBoeXNpY2FsUmVzb3VyY2VJZCA9PT0gJ3BoeXNpY2FsUmVzb3VyY2VJZCcgJiZcbiAgICAgIE9iamVjdC5rZXlzKGJvZHkuRGF0YSEpLmxlbmd0aCA9PT0gMFxuICAgICk7XG5cbiAgICBhd2FpdCBoYW5kbGVyKGV2ZW50LCB7fSBhcyBBV1NMYW1iZGEuQ29udGV4dCk7XG5cbiAgICB0ZXN0LmVxdWFsKHJlcXVlc3QuaXNEb25lKCksIHRydWUpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgYXN5bmMgJ2RlY29kZXMgYm9vbGVhbnMnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBwdXRJdGVtRmFrZSA9IHNpbm9uLmZha2UucmVzb2x2ZXMoe30pO1xuXG4gICAgQVdTLm1vY2soJ0R5bmFtb0RCJywgJ3B1dEl0ZW0nLCBwdXRJdGVtRmFrZSk7XG5cbiAgICBjb25zdCBldmVudDogQVdTTGFtYmRhLkNsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VDcmVhdGVFdmVudCA9IHtcbiAgICAgIC4uLmV2ZW50Q29tbW9uLFxuICAgICAgUmVxdWVzdFR5cGU6ICdDcmVhdGUnLFxuICAgICAgUmVzb3VyY2VQcm9wZXJ0aWVzOiB7XG4gICAgICAgIFNlcnZpY2VUb2tlbjogJ3Rva2VuJyxcbiAgICAgICAgQ3JlYXRlOiB7XG4gICAgICAgICAgc2VydmljZTogJ0R5bmFtb0RCJyxcbiAgICAgICAgICBhY3Rpb246ICdwdXRJdGVtJyxcbiAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICBUYWJsZU5hbWU6ICd0YWJsZScsXG4gICAgICAgICAgICBJdGVtOiB7XG4gICAgICAgICAgICAgIFRydWU6IHtcbiAgICAgICAgICAgICAgICBCT09MOiAnVFJVRTpCT09MRUFOJ1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBUcnVlU3RyaW5nOiB7XG4gICAgICAgICAgICAgICAgUzogJ3RydWUnXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIEZhbHNlOiB7XG4gICAgICAgICAgICAgICAgQk9PTDogJ0ZBTFNFOkJPT0xFQU4nXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIEZhbHNlU3RyaW5nOiB7XG4gICAgICAgICAgICAgICAgUzogJ2ZhbHNlJ1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiAncHV0LWl0ZW0nXG4gICAgICAgIH0gYXMgQXdzU2RrQ2FsbFxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChib2R5ID0+XG4gICAgICBib2R5LlN0YXR1cyA9PT0gJ1NVQ0NFU1MnXG4gICAgKTtcblxuICAgIGF3YWl0IGhhbmRsZXIoZXZlbnQsIHt9IGFzIEFXU0xhbWJkYS5Db250ZXh0KTtcblxuICAgIHNpbm9uLmFzc2VydC5jYWxsZWRXaXRoKHB1dEl0ZW1GYWtlLCB7XG4gICAgICBUYWJsZU5hbWU6ICd0YWJsZScsXG4gICAgICBJdGVtOiB7XG4gICAgICAgIFRydWU6IHtcbiAgICAgICAgICBCT09MOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIFRydWVTdHJpbmc6IHtcbiAgICAgICAgICBTOiAndHJ1ZSdcbiAgICAgICAgfSxcbiAgICAgICAgRmFsc2U6IHtcbiAgICAgICAgICBCT09MOiBmYWxzZVxuICAgICAgICB9LFxuICAgICAgICBGYWxzZVN0cmluZzoge1xuICAgICAgICAgIFM6ICdmYWxzZSdcbiAgICAgICAgfSxcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRlc3QuZXF1YWwocmVxdWVzdC5pc0RvbmUoKSwgdHJ1ZSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICBhc3luYyAncmVzdHJpY3Qgb3V0cHV0IHBhdGgnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBsaXN0T2JqZWN0c0Zha2UgPSBzaW5vbi5mYWtlLnJlc29sdmVzKHtcbiAgICAgIENvbnRlbnRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBLZXk6ICdmaXJzdC1rZXknLFxuICAgICAgICAgIEVUYWc6ICdmaXJzdC1rZXktZXRhZydcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIEtleTogJ3NlY29uZC1rZXknLFxuICAgICAgICAgIEVUYWc6ICdzZWNvbmQta2V5LWV0YWcnLFxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSBhcyBTREsuUzMuTGlzdE9iamVjdHNPdXRwdXQpO1xuXG4gICAgQVdTLm1vY2soJ1MzJywgJ2xpc3RPYmplY3RzJywgbGlzdE9iamVjdHNGYWtlKTtcblxuICAgIGNvbnN0IGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUNyZWF0ZUV2ZW50ID0ge1xuICAgICAgLi4uZXZlbnRDb21tb24sXG4gICAgICBSZXF1ZXN0VHlwZTogJ0NyZWF0ZScsXG4gICAgICBSZXNvdXJjZVByb3BlcnRpZXM6IHtcbiAgICAgICAgU2VydmljZVRva2VuOiAndG9rZW4nLFxuICAgICAgICBDcmVhdGU6IHtcbiAgICAgICAgICBzZXJ2aWNlOiAnUzMnLFxuICAgICAgICAgIGFjdGlvbjogJ2xpc3RPYmplY3RzJyxcbiAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICBCdWNrZXQ6ICdteS1idWNrZXQnXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQ6ICdpZCcsXG4gICAgICAgICAgb3V0cHV0UGF0aDogJ0NvbnRlbnRzLjAnXG4gICAgICAgIH0gYXMgQXdzU2RrQ2FsbFxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChib2R5ID0+XG4gICAgICBib2R5LlN0YXR1cyA9PT0gJ1NVQ0NFU1MnICYmXG4gICAgICBib2R5LlBoeXNpY2FsUmVzb3VyY2VJZCA9PT0gJ2lkJyAmJlxuICAgICAgYm9keS5EYXRhIVsnQ29udGVudHMuMC5LZXknXSA9PT0gJ2ZpcnN0LWtleScgJiZcbiAgICAgIGJvZHkuRGF0YSFbJ0NvbnRlbnRzLjEuS2V5J10gPT09IHVuZGVmaW5lZFxuICAgICk7XG5cbiAgICBhd2FpdCBoYW5kbGVyKGV2ZW50LCB7fSBhcyBBV1NMYW1iZGEuQ29udGV4dCk7XG5cbiAgICB0ZXN0LmVxdWFsKHJlcXVlc3QuaXNEb25lKCksIHRydWUpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG59O1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC5hd3MtY3VzdG9tLXJlc291cmNlLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsidGVzdC5hd3MtY3VzdG9tLXJlc291cmNlLXByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxvQ0FBcUM7QUFDckMsNkJBQThCO0FBRTlCLCtCQUFnQztBQUVoQyxzRkFBOEQ7QUFFOUQsTUFBTSxXQUFXLEdBQUc7SUFDbEIsWUFBWSxFQUFFLE9BQU87SUFDckIsV0FBVyxFQUFFLG1CQUFtQjtJQUNoQyxPQUFPLEVBQUUsU0FBUztJQUNsQixTQUFTLEVBQUUsV0FBVztJQUN0QixpQkFBaUIsRUFBRSxtQkFBbUI7SUFDdEMsWUFBWSxFQUFFLGFBQWE7Q0FDNUIsQ0FBQztBQUVGLFNBQVMsYUFBYSxDQUFDLGFBQWdGO0lBQ3JHLE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDO1NBQzdCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsYUFBYSxDQUFDO1NBQ3ZCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUNoQixDQUFDO0FBRUQsaUJBQVM7SUFDUCxVQUFVLENBQUMsUUFBYTtRQUN0QixHQUFHLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDZCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDaEIsUUFBUSxFQUFFLENBQUM7SUFDYixDQUFDO0lBRUQsS0FBSyxDQUFDLDZDQUE2QyxDQUFDLElBQVU7UUFDNUQsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDMUMsUUFBUSxFQUFFO2dCQUNSO29CQUNFLEdBQUcsRUFBRSxXQUFXO29CQUNoQixJQUFJLEVBQUUsZ0JBQWdCO2lCQUN2QjtnQkFDRDtvQkFDRSxHQUFHLEVBQUUsWUFBWTtvQkFDakIsSUFBSSxFQUFFLGlCQUFpQjtpQkFDeEI7YUFDRjtTQUMwQixDQUFDLENBQUM7UUFFL0IsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsYUFB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QkFDakIsVUFBVSxFQUFFO3dCQUNWLE9BQU8sRUFBRSxTQUFTO3dCQUNsQixRQUFRLEVBQUUsT0FBTztxQkFDbEI7b0JBQ0QsVUFBVSxFQUFFLFlBQVk7b0JBQ3hCLE1BQU0sRUFBRSxXQUFXO29CQUNuQixrQkFBa0IsRUFBRSxJQUFJO2lCQUNYO2FBQ2hCLEdBQ0YsQ0FBQztRQUVGLE1BQU0sT0FBTyxHQUFHLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUNuQyxJQUFJLENBQUMsTUFBTSxLQUFLLFNBQVM7WUFDekIsSUFBSSxDQUFDLElBQUssQ0FBQyxVQUFVLEtBQUssWUFBWTtZQUN0QyxJQUFJLENBQUMsSUFBSyxDQUFDLE1BQU0sS0FBSyxXQUFXLENBQ2xDLENBQUM7UUFFRixNQUFNLHNDQUFPLENBQUMsS0FBSyxFQUFFLEVBQXVCLENBQUMsQ0FBQztRQUU5QyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUVuQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDZCxDQUFDO0NBQ0YsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTREsgPSByZXF1aXJlKCdhd3Mtc2RrJyk7XG5pbXBvcnQgQVdTID0gcmVxdWlyZSgnYXdzLXNkay1tb2NrJyk7XG5pbXBvcnQgbm9jayA9IHJlcXVpcmUoJ25vY2snKTtcbmltcG9ydCB7IFRlc3QgfSBmcm9tICdub2RldW5pdCc7XG5pbXBvcnQgc2lub24gPSByZXF1aXJlKCdzaW5vbicpO1xuaW1wb3J0IHsgQXdzU2RrQ2FsbCB9IGZyb20gJy4uL2xpYic7XG5pbXBvcnQgeyBoYW5kbGVyIH0gZnJvbSAnLi4vbGliL2F3cy1jdXN0b20tcmVzb3VyY2UtcHJvdmlkZXInO1xuXG5jb25zdCBldmVudENvbW1vbiA9IHtcbiAgU2VydmljZVRva2VuOiAndG9rZW4nLFxuICBSZXNwb25zZVVSTDogJ2h0dHBzOi8vbG9jYWxob3N0JyxcbiAgU3RhY2tJZDogJ3N0YWNrSWQnLFxuICBSZXF1ZXN0SWQ6ICdyZXF1ZXN0SWQnLFxuICBMb2dpY2FsUmVzb3VyY2VJZDogJ2xvZ2ljYWxSZXNvdXJjZUlkJyxcbiAgUmVzb3VyY2VUeXBlOiAnQ3VzdG9tOjpBV1MnLFxufTtcblxuZnVuY3Rpb24gY3JlYXRlUmVxdWVzdChib2R5UHJlZGljYXRlOiAoYm9keTogQVdTTGFtYmRhLkNsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VSZXNwb25zZSkgPT4gYm9vbGVhbikge1xuICByZXR1cm4gbm9jaygnaHR0cHM6Ly9sb2NhbGhvc3QnKVxuICAgIC5wdXQoJy8nLCBib2R5UHJlZGljYXRlKVxuICAgIC5yZXBseSgyMDApO1xufVxuXG5leHBvcnQgPSB7XG4gICd0ZWFyRG93bicoY2FsbGJhY2s6IGFueSkge1xuICAgIEFXUy5yZXN0b3JlKCk7XG4gICAgbm9jay5jbGVhbkFsbCgpO1xuICAgIGNhbGxiYWNrKCk7XG4gIH0sXG5cbiAgYXN5bmMgJ2NyZWF0ZSBldmVudCB3aXRoIHBoeXNpY2FsIHJlc291cmNlIGlkIHBhdGgnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBsaXN0T2JqZWN0c0Zha2UgPSBzaW5vbi5mYWtlLnJlc29sdmVzKHtcbiAgICAgIENvbnRlbnRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBLZXk6ICdmaXJzdC1rZXknLFxuICAgICAgICAgIEVUYWc6ICdmaXJzdC1rZXktZXRhZydcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgIEtleTogJ3NlY29uZC1rZXknLFxuICAgICAgICAgIEVUYWc6ICdzZWNvbmQta2V5LWV0YWcnLFxuICAgICAgICB9XG4gICAgICBdXG4gICAgfSBhcyBTREsuUzMuTGlzdE9iamVjdHNPdXRwdXQpO1xuXG4gICAgQVdTLm1vY2soJ1MzJywgJ2xpc3RPYmplY3RzJywgbGlzdE9iamVjdHNGYWtlKTtcblxuICAgIGNvbnN0IGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUNyZWF0ZUV2ZW50ID0ge1xuICAgICAgLi4uZXZlbnRDb21tb24sXG4gICAgICBSZXF1ZXN0VHlwZTogJ0NyZWF0ZScsXG4gICAgICBSZXNvdXJjZVByb3BlcnRpZXM6IHtcbiAgICAgICAgU2VydmljZVRva2VuOiAndG9rZW4nLFxuICAgICAgICBDcmVhdGU6IHtcbiAgICAgICAgICBzZXJ2aWNlOiAnUzMnLFxuICAgICAgICAgIGFjdGlvbjogJ2xpc3RPYmplY3RzJyxcbiAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICBCdWNrZXQ6ICdteS1idWNrZXQnXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwaHlzaWNhbFJlc291cmNlSWRQYXRoOiAnQ29udGVudHMuMS5FVGFnJ1xuICAgICAgICB9IGFzIEF3c1Nka0NhbGxcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoYm9keSA9PlxuICAgICAgYm9keS5TdGF0dXMgPT09ICdTVUNDRVNTJyAmJlxuICAgICAgYm9keS5QaHlzaWNhbFJlc291cmNlSWQgPT09ICdzZWNvbmQta2V5LWV0YWcnICYmXG4gICAgICBib2R5LkRhdGEhWydDb250ZW50cy4wLktleSddID09PSAnZmlyc3Qta2V5J1xuICAgICk7XG5cbiAgICBhd2FpdCBoYW5kbGVyKGV2ZW50LCB7fSBhcyBBV1NMYW1iZGEuQ29udGV4dCk7XG5cbiAgICBzaW5vbi5hc3NlcnQuY2FsbGVkV2l0aChsaXN0T2JqZWN0c0Zha2UsIHtcbiAgICAgIEJ1Y2tldDogJ215LWJ1Y2tldCdcbiAgICB9KTtcblxuICAgIHRlc3QuZXF1YWwocmVxdWVzdC5pc0RvbmUoKSwgdHJ1ZSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICBhc3luYyAndXBkYXRlIGV2ZW50IHdpdGggcGh5c2ljYWwgcmVzb3VyY2UgaWQnKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBwdWJsaXNoID0gc2lub24uZmFrZS5yZXNvbHZlcyh7fSk7XG5cbiAgICBBV1MubW9jaygnU05TJywgJ3B1Ymxpc2gnLCBwdWJsaXNoKTtcblxuICAgIGNvbnN0IGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZVVwZGF0ZUV2ZW50ID0ge1xuICAgICAgLi4uZXZlbnRDb21tb24sXG4gICAgICBSZXF1ZXN0VHlwZTogJ1VwZGF0ZScsXG4gICAgICBQaHlzaWNhbFJlc291cmNlSWQ6ICdwaHlzaWNhbFJlc291cmNlSWQnLFxuICAgICAgT2xkUmVzb3VyY2VQcm9wZXJ0aWVzOiB7fSxcbiAgICAgIFJlc291cmNlUHJvcGVydGllczoge1xuICAgICAgICBTZXJ2aWNlVG9rZW46ICd0b2tlbicsXG4gICAgICAgIFVwZGF0ZToge1xuICAgICAgICAgIHNlcnZpY2U6ICdTTlMnLFxuICAgICAgICAgIGFjdGlvbjogJ3B1Ymxpc2gnLFxuICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgIE1lc3NhZ2U6ICdoZWxsbycsXG4gICAgICAgICAgICBUb3BpY0FybjogJ3RvcGljYXJuJ1xuICAgICAgICAgIH0sXG4gICAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiAndG9waWNhcm4nXG4gICAgICAgIH0gYXMgQXdzU2RrQ2FsbFxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChib2R5ID0+XG4gICAgICBib2R5LlN0YXR1cyA9PT0gJ1NVQ0NFU1MnICYmXG4gICAgICBib2R5LlBoeXNpY2FsUmVzb3VyY2VJZCA9PT0gJ3RvcGljYXJuJ1xuICAgICk7XG5cbiAgICBhd2FpdCBoYW5kbGVyKGV2ZW50LCB7fSBhcyBBV1NMYW1iZGEuQ29udGV4dCk7XG5cbiAgICB0ZXN0LmVxdWFsKHJlcXVlc3QuaXNEb25lKCksIHRydWUpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgYXN5bmMgJ2RlbGV0ZSBldmVudCcodGVzdDogVGVzdCkge1xuICAgIGNvbnN0IGxpc3RPYmplY3RzRmFrZSA9IHNpbm9uLmZha2UucmVzb2x2ZXMoe30pO1xuXG4gICAgQVdTLm1vY2soJ1MzJywgJ2xpc3RPYmplY3RzJywgbGlzdE9iamVjdHNGYWtlKTtcblxuICAgIGNvbnN0IGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZURlbGV0ZUV2ZW50ID0ge1xuICAgICAgLi4uZXZlbnRDb21tb24sXG4gICAgICBSZXF1ZXN0VHlwZTogJ0RlbGV0ZScsXG4gICAgICBQaHlzaWNhbFJlc291cmNlSWQ6ICdwaHlzaWNhbFJlc291cmNlSWQnLFxuICAgICAgUmVzb3VyY2VQcm9wZXJ0aWVzOiB7XG4gICAgICAgIFNlcnZpY2VUb2tlbjogJ3Rva2VuJyxcbiAgICAgICAgQ3JlYXRlOiB7XG4gICAgICAgICAgc2VydmljZTogJ1MzJyxcbiAgICAgICAgICBhY3Rpb246ICdsaXN0T2JqZWN0cycsXG4gICAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgICAgQnVja2V0OiAnbXktYnVja2V0J1xuICAgICAgICAgIH0sXG4gICAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkUGF0aDogJ0NvbnRlbnRzLjEuRVRhZydcbiAgICAgICAgfSBhcyBBd3NTZGtDYWxsXG4gICAgICB9XG4gICAgfTtcblxuICAgIGNvbnN0IHJlcXVlc3QgPSBjcmVhdGVSZXF1ZXN0KGJvZHkgPT5cbiAgICAgIGJvZHkuU3RhdHVzID09PSAnU1VDQ0VTUycgJiZcbiAgICAgIGJvZHkuUGh5c2ljYWxSZXNvdXJjZUlkID09PSAncGh5c2ljYWxSZXNvdXJjZUlkJyAmJlxuICAgICAgT2JqZWN0LmtleXMoYm9keS5EYXRhISkubGVuZ3RoID09PSAwXG4gICAgKTtcblxuICAgIGF3YWl0IGhhbmRsZXIoZXZlbnQsIHt9IGFzIEFXU0xhbWJkYS5Db250ZXh0KTtcblxuICAgIHNpbm9uLmFzc2VydC5ub3RDYWxsZWQobGlzdE9iamVjdHNGYWtlKTtcblxuICAgIHRlc3QuZXF1YWwocmVxdWVzdC5pc0RvbmUoKSwgdHJ1ZSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcblxuICBhc3luYyAnY2F0Y2ggZXJyb3JzJyh0ZXN0OiBUZXN0KSB7XG4gICAgY29uc3QgZXJyb3I6IE5vZGVKUy5FcnJub0V4Y2VwdGlvbiA9IG5ldyBFcnJvcigpO1xuICAgIGVycm9yLmNvZGUgPSAnTm9TdWNoQnVja2V0JztcbiAgICBjb25zdCBsaXN0T2JqZWN0c0Zha2UgPSBzaW5vbi5mYWtlLnJlamVjdHMoZXJyb3IpO1xuXG4gICAgQVdTLm1vY2soJ1MzJywgJ2xpc3RPYmplY3RzJywgbGlzdE9iamVjdHNGYWtlKTtcblxuICAgIGNvbnN0IGV2ZW50OiBBV1NMYW1iZGEuQ2xvdWRGb3JtYXRpb25DdXN0b21SZXNvdXJjZUNyZWF0ZUV2ZW50ID0ge1xuICAgICAgLi4uZXZlbnRDb21tb24sXG4gICAgICBSZXF1ZXN0VHlwZTogJ0NyZWF0ZScsXG4gICAgICBSZXNvdXJjZVByb3BlcnRpZXM6IHtcbiAgICAgICAgU2VydmljZVRva2VuOiAndG9rZW4nLFxuICAgICAgICBDcmVhdGU6IHtcbiAgICAgICAgICBzZXJ2aWNlOiAnUzMnLFxuICAgICAgICAgIGFjdGlvbjogJ2xpc3RPYmplY3RzJyxcbiAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICBCdWNrZXQ6ICdteS1idWNrZXQnXG4gICAgICAgICAgfSxcbiAgICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQ6ICdwaHlzaWNhbFJlc291cmNlSWQnLFxuICAgICAgICAgIGNhdGNoRXJyb3JQYXR0ZXJuOiAnTm9TdWNoQnVja2V0J1xuICAgICAgICB9IGFzIEF3c1Nka0NhbGxcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoYm9keSA9PlxuICAgICAgYm9keS5TdGF0dXMgPT09ICdTVUNDRVNTJyAmJlxuICAgICAgYm9keS5QaHlzaWNhbFJlc291cmNlSWQgPT09ICdwaHlzaWNhbFJlc291cmNlSWQnICYmXG4gICAgICBPYmplY3Qua2V5cyhib2R5LkRhdGEhKS5sZW5ndGggPT09IDBcbiAgICApO1xuXG4gICAgYXdhaXQgaGFuZGxlcihldmVudCwge30gYXMgQVdTTGFtYmRhLkNvbnRleHQpO1xuXG4gICAgdGVzdC5lcXVhbChyZXF1ZXN0LmlzRG9uZSgpLCB0cnVlKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gIGFzeW5jICdkZWNvZGVzIGJvb2xlYW5zJyh0ZXN0OiBUZXN0KSB7XG4gICAgY29uc3QgcHV0SXRlbUZha2UgPSBzaW5vbi5mYWtlLnJlc29sdmVzKHt9KTtcblxuICAgIEFXUy5tb2NrKCdEeW5hbW9EQicsICdwdXRJdGVtJywgcHV0SXRlbUZha2UpO1xuXG4gICAgY29uc3QgZXZlbnQ6IEFXU0xhbWJkYS5DbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlQ3JlYXRlRXZlbnQgPSB7XG4gICAgICAuLi5ldmVudENvbW1vbixcbiAgICAgIFJlcXVlc3RUeXBlOiAnQ3JlYXRlJyxcbiAgICAgIFJlc291cmNlUHJvcGVydGllczoge1xuICAgICAgICBTZXJ2aWNlVG9rZW46ICd0b2tlbicsXG4gICAgICAgIENyZWF0ZToge1xuICAgICAgICAgIHNlcnZpY2U6ICdEeW5hbW9EQicsXG4gICAgICAgICAgYWN0aW9uOiAncHV0SXRlbScsXG4gICAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgICAgVGFibGVOYW1lOiAndGFibGUnLFxuICAgICAgICAgICAgSXRlbToge1xuICAgICAgICAgICAgICBUcnVlOiB7XG4gICAgICAgICAgICAgICAgQk9PTDogJ1RSVUU6Qk9PTEVBTidcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgVHJ1ZVN0cmluZzoge1xuICAgICAgICAgICAgICAgIFM6ICd0cnVlJ1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBGYWxzZToge1xuICAgICAgICAgICAgICAgIEJPT0w6ICdGQUxTRTpCT09MRUFOJ1xuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICBGYWxzZVN0cmluZzoge1xuICAgICAgICAgICAgICAgIFM6ICdmYWxzZSdcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9LFxuICAgICAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogJ3B1dC1pdGVtJ1xuICAgICAgICB9IGFzIEF3c1Nka0NhbGxcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoYm9keSA9PlxuICAgICAgYm9keS5TdGF0dXMgPT09ICdTVUNDRVNTJ1xuICAgICk7XG5cbiAgICBhd2FpdCBoYW5kbGVyKGV2ZW50LCB7fSBhcyBBV1NMYW1iZGEuQ29udGV4dCk7XG5cbiAgICBzaW5vbi5hc3NlcnQuY2FsbGVkV2l0aChwdXRJdGVtRmFrZSwge1xuICAgICAgVGFibGVOYW1lOiAndGFibGUnLFxuICAgICAgSXRlbToge1xuICAgICAgICBUcnVlOiB7XG4gICAgICAgICAgQk9PTDogdHJ1ZVxuICAgICAgICB9LFxuICAgICAgICBUcnVlU3RyaW5nOiB7XG4gICAgICAgICAgUzogJ3RydWUnXG4gICAgICAgIH0sXG4gICAgICAgIEZhbHNlOiB7XG4gICAgICAgICAgQk9PTDogZmFsc2VcbiAgICAgICAgfSxcbiAgICAgICAgRmFsc2VTdHJpbmc6IHtcbiAgICAgICAgICBTOiAnZmFsc2UnXG4gICAgICAgIH0sXG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0ZXN0LmVxdWFsKHJlcXVlc3QuaXNEb25lKCksIHRydWUpO1xuXG4gICAgdGVzdC5kb25lKCk7XG4gIH0sXG5cbiAgYXN5bmMgJ3Jlc3RyaWN0IG91dHB1dCBwYXRoJyh0ZXN0OiBUZXN0KSB7XG4gICAgY29uc3QgbGlzdE9iamVjdHNGYWtlID0gc2lub24uZmFrZS5yZXNvbHZlcyh7XG4gICAgICBDb250ZW50czogW1xuICAgICAgICB7XG4gICAgICAgICAgS2V5OiAnZmlyc3Qta2V5JyxcbiAgICAgICAgICBFVGFnOiAnZmlyc3Qta2V5LWV0YWcnXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBLZXk6ICdzZWNvbmQta2V5JyxcbiAgICAgICAgICBFVGFnOiAnc2Vjb25kLWtleS1ldGFnJyxcbiAgICAgICAgfVxuICAgICAgXVxuICAgIH0gYXMgU0RLLlMzLkxpc3RPYmplY3RzT3V0cHV0KTtcblxuICAgIEFXUy5tb2NrKCdTMycsICdsaXN0T2JqZWN0cycsIGxpc3RPYmplY3RzRmFrZSk7XG5cbiAgICBjb25zdCBldmVudDogQVdTTGFtYmRhLkNsb3VkRm9ybWF0aW9uQ3VzdG9tUmVzb3VyY2VDcmVhdGVFdmVudCA9IHtcbiAgICAgIC4uLmV2ZW50Q29tbW9uLFxuICAgICAgUmVxdWVzdFR5cGU6ICdDcmVhdGUnLFxuICAgICAgUmVzb3VyY2VQcm9wZXJ0aWVzOiB7XG4gICAgICAgIFNlcnZpY2VUb2tlbjogJ3Rva2VuJyxcbiAgICAgICAgQ3JlYXRlOiB7XG4gICAgICAgICAgc2VydmljZTogJ1MzJyxcbiAgICAgICAgICBhY3Rpb246ICdsaXN0T2JqZWN0cycsXG4gICAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgICAgQnVja2V0OiAnbXktYnVja2V0J1xuICAgICAgICAgIH0sXG4gICAgICAgICAgcGh5c2ljYWxSZXNvdXJjZUlkOiAnaWQnLFxuICAgICAgICAgIG91dHB1dFBhdGg6ICdDb250ZW50cy4wJ1xuICAgICAgICB9IGFzIEF3c1Nka0NhbGxcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgY29uc3QgcmVxdWVzdCA9IGNyZWF0ZVJlcXVlc3QoYm9keSA9PlxuICAgICAgYm9keS5TdGF0dXMgPT09ICdTVUNDRVNTJyAmJlxuICAgICAgYm9keS5QaHlzaWNhbFJlc291cmNlSWQgPT09ICdpZCcgJiZcbiAgICAgIGJvZHkuRGF0YSFbJ0NvbnRlbnRzLjAuS2V5J10gPT09ICdmaXJzdC1rZXknICYmXG4gICAgICBib2R5LkRhdGEhWydDb250ZW50cy4xLktleSddID09PSB1bmRlZmluZWRcbiAgICApO1xuXG4gICAgYXdhaXQgaGFuZGxlcihldmVudCwge30gYXMgQVdTTGFtYmRhLkNvbnRleHQpO1xuXG4gICAgdGVzdC5lcXVhbChyZXF1ZXN0LmlzRG9uZSgpLCB0cnVlKTtcblxuICAgIHRlc3QuZG9uZSgpO1xuICB9LFxuXG4gIGFzeW5jICdjYW4gc3BlY2lmeSBhcGlWZXJzaW9uIGFuZCByZWdpb24nKHRlc3Q6IFRlc3QpIHtcbiAgICBjb25zdCBwdWJsaXNoRmFrZSA9IHNpbm9uLmZha2UucmVzb2x2ZXMoe30pO1xuXG4gICAgQVdTLm1vY2soJ1NOUycsICdwdWJsaXNoJywgcHVibGlzaEZha2UpO1xuXG4gICAgY29uc3QgZXZlbnQ6IEFXU0xhbWJkYS5DbG91ZEZvcm1hdGlvbkN1c3RvbVJlc291cmNlQ3JlYXRlRXZlbnQgPSB7XG4gICAgICAuLi5ldmVudENvbW1vbixcbiAgICAgIFJlcXVlc3RUeXBlOiAnQ3JlYXRlJyxcbiAgICAgIFJlc291cmNlUHJvcGVydGllczoge1xuICAgICAgICBTZXJ2aWNlVG9rZW46ICd0b2tlbicsXG4gICAgICAgIENyZWF0ZToge1xuICAgICAgICAgIHNlcnZpY2U6ICdTTlMnLFxuICAgICAgICAgIGFjdGlvbjogJ3B1Ymxpc2gnLFxuICAgICAgICAgIHBhcmFtZXRlcnM6IHtcbiAgICAgICAgICAgIE1lc3NhZ2U6ICdtZXNzYWdlJyxcbiAgICAgICAgICAgIFRvcGljQXJuOiAndG9waWMnXG4gICAgICAgICAgfSxcbiAgICAgICAgICBhcGlWZXJzaW9uOiAnMjAxMC0wMy0zMScsXG4gICAgICAgICAgcmVnaW9uOiAnZXUtd2VzdC0xJyxcbiAgICAgICAgICBwaHlzaWNhbFJlc291cmNlSWQ6ICdpZCcsXG4gICAgICAgIH0gYXMgQXdzU2RrQ2FsbFxuICAgICAgfVxuICAgIH07XG5cbiAgICBjb25zdCByZXF1ZXN0ID0gY3JlYXRlUmVxdWVzdChib2R5ID0+XG4gICAgICBib2R5LlN0YXR1cyA9PT0gJ1NVQ0NFU1MnICYmXG4gICAgICBib2R5LkRhdGEhLmFwaVZlcnNpb24gPT09ICcyMDEwLTAzLTMxJyAmJlxuICAgICAgYm9keS5EYXRhIS5yZWdpb24gPT09ICdldS13ZXN0LTEnXG4gICAgKTtcblxuICAgIGF3YWl0IGhhbmRsZXIoZXZlbnQsIHt9IGFzIEFXU0xhbWJkYS5Db250ZXh0KTtcblxuICAgIHRlc3QuZXF1YWwocmVxdWVzdC5pc0RvbmUoKSwgdHJ1ZSk7XG5cbiAgICB0ZXN0LmRvbmUoKTtcbiAgfSxcbn07XG4iXX0=

@@ -23,3 +23,3 @@ {

"strictNullChecks": true,
"strictPropertyInitialization": false,
"strictPropertyInitialization": true,
"stripInternal": true,

@@ -26,0 +26,0 @@ "target": "ES2017",

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