aws-cdk 2.11.0 → 2.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HostedZoneContextProviderPlugin = void 0;
4
4
  const cxapi = require("@aws-cdk/cx-api");
5
- const api_1 = require("../api");
5
+ const credentials_1 = require("../api/aws-auth/credentials");
6
6
  const logging_1 = require("../logging");
7
7
  class HostedZoneContextProviderPlugin {
8
8
  constructor(aws) {
@@ -17,7 +17,7 @@ class HostedZoneContextProviderPlugin {
17
17
  const domainName = args.domainName;
18
18
  logging_1.debug(`Reading hosted zone ${account}:${region}:${domainName}`);
19
19
  const options = { assumeRoleArn: args.lookupRoleArn };
20
- const r53 = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(account, region), api_1.Mode.ForReading, options)).sdk.route53();
20
+ const r53 = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(account, region), credentials_1.Mode.ForReading, options)).sdk.route53();
21
21
  const response = await r53.listHostedZonesByName({ DNSName: domainName }).promise();
22
22
  if (!response.HostedZones) {
23
23
  throw new Error(`Hosted Zone not found in account ${account}, region ${region}: ${domainName}`);
@@ -65,4 +65,4 @@ class HostedZoneContextProviderPlugin {
65
65
  }
66
66
  }
67
67
  exports.HostedZoneContextProviderPlugin = HostedZoneContextProviderPlugin;
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLXpvbmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaG9zdGVkLXpvbmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlDQUF5QztBQUN6QyxnQ0FBMkM7QUFDM0Msd0NBQW1DO0FBR25DLE1BQWEsK0JBQStCO0lBRTFDLFlBQTZCLEdBQWdCO1FBQWhCLFFBQUcsR0FBSCxHQUFHLENBQWE7SUFDN0MsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBcUM7UUFDekQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM3QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyxnRUFBZ0UsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUN6RjtRQUNELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbkMsZUFBSyxDQUFDLHVCQUF1QixPQUFPLElBQUksTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDaEUsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RELE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsRUFBRSxVQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2xJLE1BQU0sUUFBUSxHQUFHLE1BQU0sR0FBRyxDQUFDLHFCQUFxQixDQUFDLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7UUFDcEYsSUFB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SUFDcEIsQ0FBQztJQUVPLGlCQUFpQixDQUFDLEtBQTRDO1FBQ3BFLE9BQVEsS0FBeUMsQ0FBQyxVQUFVLEtBQUssU0FBUyxDQUFDO0lBQzdFLENBQUM7Q0FDRjtBQWpFRCwwRUFpRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjeHNjaGVtYSBmcm9tICdAYXdzLWNkay9jbG91ZC1hc3NlbWJseS1zY2hlbWEnO1xuaW1wb3J0ICogYXMgY3hhcGkgZnJvbSAnQGF3cy1jZGsvY3gtYXBpJztcbmltcG9ydCB7IE1vZGUsIFNka1Byb3ZpZGVyIH0gZnJvbSAnLi4vYXBpJztcbmltcG9ydCB7IGRlYnVnIH0gZnJvbSAnLi4vbG9nZ2luZyc7XG5pbXBvcnQgeyBDb250ZXh0UHJvdmlkZXJQbHVnaW4gfSBmcm9tICcuL3Byb3ZpZGVyJztcblxuZXhwb3J0IGNsYXNzIEhvc3RlZFpvbmVDb250ZXh0UHJvdmlkZXJQbHVnaW4gaW1wbGVtZW50cyBDb250ZXh0UHJvdmlkZXJQbHVnaW4ge1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYXdzOiBTZGtQcm92aWRlcikge1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFZhbHVlKGFyZ3M6IGN4c2NoZW1hLkhvc3RlZFpvbmVDb250ZXh0UXVlcnkpOiBQcm9taXNlPG9iamVjdD4ge1xuICAgIGNvbnN0IGFjY291bnQgPSBhcmdzLmFjY291bnQ7XG4gICAgY29uc3QgcmVnaW9uID0gYXJncy5yZWdpb247XG4gICAgaWYgKCF0aGlzLmlzSG9zdGVkWm9uZVF1ZXJ5KGFyZ3MpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEhvc3RlZFpvbmVQcm92aWRlciByZXF1aXJlcyBkb21haW5OYW1lIHByb3BlcnR5IHRvIGJlIHNldCBpbiAke2FyZ3N9YCk7XG4gICAgfVxuICAgIGNvbnN0IGRvbWFpbk5hbWUgPSBhcmdzLmRvbWFpbk5hbWU7XG4gICAgZGVidWcoYFJlYWRpbmcgaG9zdGVkIHpvbmUgJHthY2NvdW50fToke3JlZ2lvbn06JHtkb21haW5OYW1lfWApO1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7IGFzc3VtZVJvbGVBcm46IGFyZ3MubG9va3VwUm9sZUFybiB9O1xuICAgIGNvbnN0IHI1MyA9IChhd2FpdCB0aGlzLmF3cy5mb3JFbnZpcm9ubWVudChjeGFwaS5FbnZpcm9ubWVudFV0aWxzLm1ha2UoYWNjb3VudCwgcmVnaW9uKSwgTW9kZS5Gb3JSZWFkaW5nLCBvcHRpb25zKSkuc2RrLnJvdXRlNTMoKTtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHI1My5saXN0SG9zdGVkWm9uZXNCeU5hbWUoeyBETlNOYW1lOiBkb21haW5OYW1lIH0pLnByb21pc2UoKTtcbiAgICBpZiAoIXJlc3BvbnNlLkhvc3RlZFpvbmVzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEhvc3RlZCBab25lIG5vdCBmb3VuZCBpbiBhY2NvdW50ICR7YWNjb3VudH0sIHJlZ2lvbiAke3JlZ2lvbn06ICR7ZG9tYWluTmFtZX1gKTtcbiAgICB9XG4gICAgY29uc3QgY2FuZGlkYXRlWm9uZXMgPSBhd2FpdCB0aGlzLmZpbHRlclpvbmVzKHI1MywgcmVzcG9uc2UuSG9zdGVkWm9uZXMsIGFyZ3MpO1xuICAgIGlmIChjYW5kaWRhdGVab25lcy5sZW5ndGggIT09IDEpIHtcbiAgICAgIGNvbnN0IGZpbHRlUHJvcHMgPSBgZG5zOiR7ZG9tYWluTmFtZX0sIHByaXZhdGVab25lOiR7YXJncy5wcml2YXRlWm9uZX0sIHZwY0lkOiR7YXJncy52cGNJZH1gO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBGb3VuZCB6b25lczogJHtKU09OLnN0cmluZ2lmeShjYW5kaWRhdGVab25lcyl9IGZvciAke2ZpbHRlUHJvcHN9LCBidXQgd2FudGVkIGV4YWN0bHkgMSB6b25lYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIElkOiBjYW5kaWRhdGVab25lc1swXS5JZCxcbiAgICAgIE5hbWU6IGNhbmRpZGF0ZVpvbmVzWzBdLk5hbWUsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZmlsdGVyWm9uZXMoXG4gICAgcjUzOiBBV1MuUm91dGU1Mywgem9uZXM6IEFXUy5Sb3V0ZTUzLkhvc3RlZFpvbmVbXSxcbiAgICBwcm9wczogY3hzY2hlbWEuSG9zdGVkWm9uZUNvbnRleHRRdWVyeSk6IFByb21pc2U8QVdTLlJvdXRlNTMuSG9zdGVkWm9uZVtdPiB7XG5cbiAgICBsZXQgY2FuZGlkYXRlczogQVdTLlJvdXRlNTMuSG9zdGVkWm9uZVtdID0gW107XG4gICAgY29uc3QgZG9tYWluTmFtZSA9IHByb3BzLmRvbWFpbk5hbWUuZW5kc1dpdGgoJy4nKSA/IHByb3BzLmRvbWFpbk5hbWUgOiBgJHtwcm9wcy5kb21haW5OYW1lfS5gO1xuICAgIGRlYnVnKGBGb3VuZCB0aGUgZm9sbG93aW5nIHpvbmVzICR7SlNPTi5zdHJpbmdpZnkoem9uZXMpfWApO1xuICAgIGNhbmRpZGF0ZXMgPSB6b25lcy5maWx0ZXIoIHpvbmUgPT4gem9uZS5OYW1lID09PSBkb21haW5OYW1lKTtcbiAgICBkZWJ1ZyhgRm91bmQgdGhlIGZvbGxvd2luZyBtYXRjaGVkIG5hbWUgem9uZXMgJHtKU09OLnN0cmluZ2lmeShjYW5kaWRhdGVzKX1gKTtcbiAgICBpZiAocHJvcHMucHJpdmF0ZVpvbmUpIHtcbiAgICAgIGNhbmRpZGF0ZXMgPSBjYW5kaWRhdGVzLmZpbHRlcih6b25lID0+IHpvbmUuQ29uZmlnICYmIHpvbmUuQ29uZmlnLlByaXZhdGVab25lKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY2FuZGlkYXRlcyA9IGNhbmRpZGF0ZXMuZmlsdGVyKHpvbmUgPT4gIXpvbmUuQ29uZmlnIHx8ICF6b25lLkNvbmZpZy5Qcml2YXRlWm9uZSk7XG4gICAgfVxuICAgIGlmIChwcm9wcy52cGNJZCkge1xuICAgICAgY29uc3QgdnBjWm9uZXM6IEFXUy5Sb3V0ZTUzLkhvc3RlZFpvbmVbXSA9IFtdO1xuICAgICAgZm9yIChjb25zdCB6b25lIG9mIGNhbmRpZGF0ZXMpIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IGF3YWl0IHI1My5nZXRIb3N0ZWRab25lKHsgSWQ6IHpvbmUuIElkIH0pLnByb21pc2UoKTtcbiAgICAgICAgaWYgKCFkYXRhLlZQQ3MpIHtcbiAgICAgICAgICBkZWJ1ZyhgRXhwZWN0ZWQgVlBDIGZvciBwcml2YXRlIHpvbmUgYnV0IG5vIFZQQyBmb3VuZCAke3pvbmUuSWR9YCk7XG4gICAgICAgICAgY29udGludWU7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGRhdGEuVlBDcy5tYXAodnBjID0+IHZwYy5WUENJZCkuaW5jbHVkZXMocHJvcHMudnBjSWQpKSB7XG4gICAgICAgICAgdnBjWm9uZXMucHVzaCh6b25lKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHZwY1pvbmVzO1xuICAgIH1cbiAgICByZXR1cm4gY2FuZGlkYXRlcztcbiAgfVxuXG4gIHByaXZhdGUgaXNIb3N0ZWRab25lUXVlcnkocHJvcHM6IGN4c2NoZW1hLkhvc3RlZFpvbmVDb250ZXh0UXVlcnkgfCBhbnkpOiBwcm9wcyBpcyBjeHNjaGVtYS5Ib3N0ZWRab25lQ29udGV4dFF1ZXJ5IHtcbiAgICByZXR1cm4gKHByb3BzIGFzIGN4c2NoZW1hLkhvc3RlZFpvbmVDb250ZXh0UXVlcnkpLmRvbWFpbk5hbWUgIT09IHVuZGVmaW5lZDtcbiAgfVxufVxuIl19
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9zdGVkLXpvbmVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiaG9zdGVkLXpvbmVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlDQUF5QztBQUN6Qyw2REFBbUQ7QUFFbkQsd0NBQW1DO0FBR25DLE1BQWEsK0JBQStCO0lBRTFDLFlBQTZCLEdBQWdCO1FBQWhCLFFBQUcsR0FBSCxHQUFHLENBQWE7SUFDN0MsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBcUM7UUFDekQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUM3QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyxnRUFBZ0UsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUN6RjtRQUNELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbkMsZUFBSyxDQUFDLHVCQUF1QixPQUFPLElBQUksTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDaEUsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RELE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsRUFBRSxrQkFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNsSSxNQUFNLFFBQVEsR0FBRyxNQUFNLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3BGLElB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O0lBQ3BCLENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUE0QztRQUNwRSxPQUFRLEtBQXlDLENBQUMsVUFBVSxLQUFLLFNBQVMsQ0FBQztJQUM3RSxDQUFDO0NBQ0Y7QUFqRUQsMEVBaUVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3hzY2hlbWEgZnJvbSAnQGF3cy1jZGsvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCAqIGFzIGN4YXBpIGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgeyBNb2RlIH0gZnJvbSAnLi4vYXBpL2F3cy1hdXRoL2NyZWRlbnRpYWxzJztcbmltcG9ydCB7IFNka1Byb3ZpZGVyIH0gZnJvbSAnLi4vYXBpL2F3cy1hdXRoL3Nkay1wcm92aWRlcic7XG5pbXBvcnQgeyBkZWJ1ZyB9IGZyb20gJy4uL2xvZ2dpbmcnO1xuaW1wb3J0IHsgQ29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9wcm92aWRlcic7XG5cbmV4cG9ydCBjbGFzcyBIb3N0ZWRab25lQ29udGV4dFByb3ZpZGVyUGx1Z2luIGltcGxlbWVudHMgQ29udGV4dFByb3ZpZGVyUGx1Z2luIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGF3czogU2RrUHJvdmlkZXIpIHtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRWYWx1ZShhcmdzOiBjeHNjaGVtYS5Ib3N0ZWRab25lQ29udGV4dFF1ZXJ5KTogUHJvbWlzZTxvYmplY3Q+IHtcbiAgICBjb25zdCBhY2NvdW50ID0gYXJncy5hY2NvdW50O1xuICAgIGNvbnN0IHJlZ2lvbiA9IGFyZ3MucmVnaW9uO1xuICAgIGlmICghdGhpcy5pc0hvc3RlZFpvbmVRdWVyeShhcmdzKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBIb3N0ZWRab25lUHJvdmlkZXIgcmVxdWlyZXMgZG9tYWluTmFtZSBwcm9wZXJ0eSB0byBiZSBzZXQgaW4gJHthcmdzfWApO1xuICAgIH1cbiAgICBjb25zdCBkb21haW5OYW1lID0gYXJncy5kb21haW5OYW1lO1xuICAgIGRlYnVnKGBSZWFkaW5nIGhvc3RlZCB6b25lICR7YWNjb3VudH06JHtyZWdpb259OiR7ZG9tYWluTmFtZX1gKTtcbiAgICBjb25zdCBvcHRpb25zID0geyBhc3N1bWVSb2xlQXJuOiBhcmdzLmxvb2t1cFJvbGVBcm4gfTtcbiAgICBjb25zdCByNTMgPSAoYXdhaXQgdGhpcy5hd3MuZm9yRW52aXJvbm1lbnQoY3hhcGkuRW52aXJvbm1lbnRVdGlscy5tYWtlKGFjY291bnQsIHJlZ2lvbiksIE1vZGUuRm9yUmVhZGluZywgb3B0aW9ucykpLnNkay5yb3V0ZTUzKCk7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCByNTMubGlzdEhvc3RlZFpvbmVzQnlOYW1lKHsgRE5TTmFtZTogZG9tYWluTmFtZSB9KS5wcm9taXNlKCk7XG4gICAgaWYgKCFyZXNwb25zZS5Ib3N0ZWRab25lcykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBIb3N0ZWQgWm9uZSBub3QgZm91bmQgaW4gYWNjb3VudCAke2FjY291bnR9LCByZWdpb24gJHtyZWdpb259OiAke2RvbWFpbk5hbWV9YCk7XG4gICAgfVxuICAgIGNvbnN0IGNhbmRpZGF0ZVpvbmVzID0gYXdhaXQgdGhpcy5maWx0ZXJab25lcyhyNTMsIHJlc3BvbnNlLkhvc3RlZFpvbmVzLCBhcmdzKTtcbiAgICBpZiAoY2FuZGlkYXRlWm9uZXMubGVuZ3RoICE9PSAxKSB7XG4gICAgICBjb25zdCBmaWx0ZVByb3BzID0gYGRuczoke2RvbWFpbk5hbWV9LCBwcml2YXRlWm9uZToke2FyZ3MucHJpdmF0ZVpvbmV9LCB2cGNJZDoke2FyZ3MudnBjSWR9YDtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRm91bmQgem9uZXM6ICR7SlNPTi5zdHJpbmdpZnkoY2FuZGlkYXRlWm9uZXMpfSBmb3IgJHtmaWx0ZVByb3BzfSwgYnV0IHdhbnRlZCBleGFjdGx5IDEgem9uZWApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBJZDogY2FuZGlkYXRlWm9uZXNbMF0uSWQsXG4gICAgICBOYW1lOiBjYW5kaWRhdGVab25lc1swXS5OYW1lLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGZpbHRlclpvbmVzKFxuICAgIHI1MzogQVdTLlJvdXRlNTMsIHpvbmVzOiBBV1MuUm91dGU1My5Ib3N0ZWRab25lW10sXG4gICAgcHJvcHM6IGN4c2NoZW1hLkhvc3RlZFpvbmVDb250ZXh0UXVlcnkpOiBQcm9taXNlPEFXUy5Sb3V0ZTUzLkhvc3RlZFpvbmVbXT4ge1xuXG4gICAgbGV0IGNhbmRpZGF0ZXM6IEFXUy5Sb3V0ZTUzLkhvc3RlZFpvbmVbXSA9IFtdO1xuICAgIGNvbnN0IGRvbWFpbk5hbWUgPSBwcm9wcy5kb21haW5OYW1lLmVuZHNXaXRoKCcuJykgPyBwcm9wcy5kb21haW5OYW1lIDogYCR7cHJvcHMuZG9tYWluTmFtZX0uYDtcbiAgICBkZWJ1ZyhgRm91bmQgdGhlIGZvbGxvd2luZyB6b25lcyAke0pTT04uc3RyaW5naWZ5KHpvbmVzKX1gKTtcbiAgICBjYW5kaWRhdGVzID0gem9uZXMuZmlsdGVyKCB6b25lID0+IHpvbmUuTmFtZSA9PT0gZG9tYWluTmFtZSk7XG4gICAgZGVidWcoYEZvdW5kIHRoZSBmb2xsb3dpbmcgbWF0Y2hlZCBuYW1lIHpvbmVzICR7SlNPTi5zdHJpbmdpZnkoY2FuZGlkYXRlcyl9YCk7XG4gICAgaWYgKHByb3BzLnByaXZhdGVab25lKSB7XG4gICAgICBjYW5kaWRhdGVzID0gY2FuZGlkYXRlcy5maWx0ZXIoem9uZSA9PiB6b25lLkNvbmZpZyAmJiB6b25lLkNvbmZpZy5Qcml2YXRlWm9uZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNhbmRpZGF0ZXMgPSBjYW5kaWRhdGVzLmZpbHRlcih6b25lID0+ICF6b25lLkNvbmZpZyB8fCAhem9uZS5Db25maWcuUHJpdmF0ZVpvbmUpO1xuICAgIH1cbiAgICBpZiAocHJvcHMudnBjSWQpIHtcbiAgICAgIGNvbnN0IHZwY1pvbmVzOiBBV1MuUm91dGU1My5Ib3N0ZWRab25lW10gPSBbXTtcbiAgICAgIGZvciAoY29uc3Qgem9uZSBvZiBjYW5kaWRhdGVzKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCByNTMuZ2V0SG9zdGVkWm9uZSh7IElkOiB6b25lLiBJZCB9KS5wcm9taXNlKCk7XG4gICAgICAgIGlmICghZGF0YS5WUENzKSB7XG4gICAgICAgICAgZGVidWcoYEV4cGVjdGVkIFZQQyBmb3IgcHJpdmF0ZSB6b25lIGJ1dCBubyBWUEMgZm91bmQgJHt6b25lLklkfWApO1xuICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICB9XG4gICAgICAgIGlmIChkYXRhLlZQQ3MubWFwKHZwYyA9PiB2cGMuVlBDSWQpLmluY2x1ZGVzKHByb3BzLnZwY0lkKSkge1xuICAgICAgICAgIHZwY1pvbmVzLnB1c2goem9uZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiB2cGNab25lcztcbiAgICB9XG4gICAgcmV0dXJuIGNhbmRpZGF0ZXM7XG4gIH1cblxuICBwcml2YXRlIGlzSG9zdGVkWm9uZVF1ZXJ5KHByb3BzOiBjeHNjaGVtYS5Ib3N0ZWRab25lQ29udGV4dFF1ZXJ5IHwgYW55KTogcHJvcHMgaXMgY3hzY2hlbWEuSG9zdGVkWm9uZUNvbnRleHRRdWVyeSB7XG4gICAgcmV0dXJuIChwcm9wcyBhcyBjeHNjaGVtYS5Ib3N0ZWRab25lQ29udGV4dFF1ZXJ5KS5kb21haW5OYW1lICE9PSB1bmRlZmluZWQ7XG4gIH1cbn1cbiJdfQ==
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.registerContextProviderFactory = exports.registerPluginContextProvider = exports.registerContextProvider = exports.provideContextValues = void 0;
4
4
  const cxschema = require("@aws-cdk/cloud-assembly-schema");
5
5
  const cxapi = require("@aws-cdk/cx-api");
6
- const cloudformation_deployments_1 = require("../api/cloudformation-deployments");
6
+ const placeholders_1 = require("../api/util/placeholders");
7
7
  const logging_1 = require("../logging");
8
8
  const settings_1 = require("../settings");
9
9
  const ami_1 = require("./ami");
@@ -39,7 +39,7 @@ async function provideContextValues(missingValues, context, sdk) {
39
39
  const resolvedEnvironment = environment
40
40
  ? await sdk.resolveEnvironment(environment)
41
41
  : { account: '?', region: '?', name: '?' };
42
- const arns = await cloudformation_deployments_1.replaceEnvPlaceholders({
42
+ const arns = await placeholders_1.replaceEnvPlaceholders({
43
43
  lookupRoleArn: missingContext.props.lookupRoleArn,
44
44
  }, resolvedEnvironment, sdk);
45
45
  value = await provider.getValue({ ...missingContext.props, lookupRoleArn: arns.lookupRoleArn });
@@ -93,4 +93,4 @@ const availableContextProviders = {
93
93
  [cxschema.ContextProvider.LOAD_BALANCER_LISTENER_PROVIDER]: (s) => new load_balancers_1.LoadBalancerListenerContextProviderPlugin(s),
94
94
  [cxschema.ContextProvider.KEY_PROVIDER]: (s) => new keys_1.KeyContextProviderPlugin(s),
95
95
  };
96
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFBMkQ7QUFDM0QseUNBQXlDO0FBRXpDLGtGQUEyRTtBQUMzRSx3Q0FBbUM7QUFDbkMsMENBQTZEO0FBQzdELCtCQUFpRDtBQUNqRCw2REFBK0Q7QUFDL0QsK0ZBQStGO0FBQy9GLGlEQUFpRTtBQUNqRSxpQ0FBa0Q7QUFDbEQscURBQWdIO0FBRWhILHVEQUF1RTtBQUN2RSxxREFBNEQ7QUFDNUQsaUNBQXlEO0FBS3pELE1BQU0sc0JBQXNCLEdBQUcsUUFBUSxDQUFDO0FBRXhDOztHQUVHO0FBQ0ksS0FBSyxVQUFVLG9CQUFvQixDQUN4QyxhQUF3QyxFQUN4QyxPQUFnQixFQUNoQixHQUFnQjtJQUVoQixLQUFLLE1BQU0sY0FBYyxJQUFJLGFBQWEsRUFBRTtRQUMxQyxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsR0FBRyxDQUFDO1FBRS9CLE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLGVBQWUsQ0FBQyxNQUFNO1lBQzlFLENBQUMsQ0FBQyxHQUFHLHNCQUFzQixJQUFLLGNBQWMsQ0FBQyxLQUFxQyxDQUFDLFVBQVUsRUFBRTtZQUNqRyxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQztRQUU1QixNQUFNLE9BQU8sR0FBRyx5QkFBeUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osbUNBQW1DO1lBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsdUNBQXVDLGNBQWMsQ0FBQyxRQUFRLHVGQUF1RixDQUFDLENBQUM7U0FDeEs7UUFFRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFOUIsSUFBSSxLQUFLLENBQUM7UUFDVixJQUFJO1lBQ0YsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxPQUFP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RSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsMkNBQTJDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSw0RUFBc0MsQ0FBQyxDQUFDLENBQUM7SUFDNUgsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLHVCQUF1QixDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksb0RBQWtDLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGtEQUFpQyxDQUFDLENBQUMsQ0FBQztJQUNsRyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsK0JBQStCLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSwwREFBeUMsQ0FBQyxDQUFDLENBQUM7SUFDbkgsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLCtCQUF3QixDQUFDLENBQUMsQ0FBQztDQUNoRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3hzY2hlbWEgZnJvbSAnQGF3cy1jZGsvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCAqIGFzIGN4YXBpIGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgeyBTZGtQcm92aWRlciB9IGZyb20gJy4uL2FwaSc7XG5pbXBvcnQgeyByZXBsYWNlRW52UGxhY2Vob2xkZXJzIH0gZnJvbSAnLi4vYXBpL2Nsb3VkZm9ybWF0aW9uLWRlcGxveW1lbnRzJztcbmltcG9ydCB7IGRlYnVnIH0gZnJvbSAnLi4vbG9nZ2luZyc7XG5pbXBvcnQgeyBDb250ZXh0LCBUUkFOU0lFTlRfQ09OVEVYVF9LRVkgfSBmcm9tICcuLi9zZXR0aW5ncyc7XG5pbXBvcnQgeyBBbWlDb250ZXh0UHJvdmlkZXJQbHVnaW4gfSBmcm9tICcuL2FtaSc7XG5pbXBvcnQgeyBBWkNvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vYXZhaWxhYmlsaXR5LXpvbmVzJztcbmltcG9ydCB7IEVuZHBvaW50U2VydmljZUFaQ29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9lbmRwb2ludC1zZXJ2aWNlLWF2YWlsYWJpbGl0eS16b25lcyc7XG5pbXBvcnQgeyBIb3N0ZWRab25lQ29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9ob3N0ZWQtem9uZXMnO1xuaW1wb3J0IHsgS2V5Q29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9rZXlzJztcbmltcG9ydCB7IExvYWRCYWxhbmNlckNvbnRleHRQcm92aWRlclBsdWdpbiwgTG9hZEJhbGFuY2VyTGlzdGVuZXJDb250ZXh0UHJvdmlkZXJQbHVnaW4gfSBmcm9tICcuL2xvYWQtYmFsYW5jZXJzJztcbmltcG9ydCB7IENvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vcHJvdmlkZXInO1xuaW1wb3J0IHsgU2VjdXJpdHlHcm91cENvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vc2VjdXJpdHktZ3JvdXBzJztcbmltcG9ydCB7IFNTTUNvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vc3NtLXBhcmFtZXRlcnMnO1xuaW1wb3J0IHsgVnBjTmV0d29ya0NvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vdnBjcyc7XG5cbmV4cG9ydCB0eXBlIENvbnRleHRQcm92aWRlckZhY3RvcnkgPSAoKHNkazogU2RrUHJvdmlkZXIpID0+IENvbnRleHRQcm92aWRlclBsdWdpbik7XG5leHBvcnQgdHlwZSBQcm92aWRlck1hcCA9IHtbbmFtZTogc3RyaW5nXTogQ29udGV4dFByb3ZpZGVyRmFjdG9yeX07XG5cbmNvbnN0IFBMVUdJTl9QUk9WSURFUl9QUkVGSVggPSAncGx1Z2luJztcblxuLyoqXG4gKiBJdGVyYXRlIG92ZXIgdGhlIGxpc3Qgb2YgbWlzc2luZyBjb250ZXh0IHZhbHVlcyBhbmQgaW52b2tlIHRoZSBhcHByb3ByaWF0ZSBwcm92aWRlcnMgZnJvbSB0aGUgbWFwIHRvIHJldHJpZXZlIHRoZW1cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByb3ZpZGVDb250ZXh0VmFsdWVzKFxuICBtaXNzaW5nVmFsdWVzOiBjeHNjaGVtYS5NaXNzaW5nQ29udGV4dFtdLFxuICBjb250ZXh0OiBDb250ZXh0LFxuICBzZGs6IFNka1Byb3ZpZGVyKSB7XG5cbiAgZm9yIChjb25zdCBtaXNzaW5nQ29udGV4dCBvZiBtaXNzaW5nVmFsdWVzKSB7XG4gICAgY29uc3Qga2V5ID0gbWlzc2luZ0NvbnRleHQua2V5O1xuXG4gICAgY29uc3QgcHJvdmlkZXJOYW1lID0gbWlzc2luZ0NvbnRleHQucHJvdmlkZXIgPT09IGN4c2NoZW1hLkNvbnRleHRQcm92aWRlci5QTFVHSU5cbiAgICAgID8gYCR7UExVR0lOX1BST1ZJREVSX1BSRUZJWH06JHsobWlzc2luZ0NvbnRleHQucHJvcHMgYXMgY3hzY2hlbWEuUGx1Z2luQ29udGV4dFF1ZXJ5KS5wbHVnaW5OYW1lfWBcbiAgICAgIDogbWlzc2luZ0NvbnRleHQucHJvdmlkZXI7XG5cbiAgICBjb25zdCBmYWN0b3J5ID0gYXZhaWxhYmxlQ29udGV4dFByb3ZpZGVyc1twcm92aWRlck5hbWVdO1xuICAgIGlmICghZmFjdG9yeSkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5yZWNvZ25pemVkIGNvbnRleHQgcHJvdmlkZXIgbmFtZTogJHttaXNzaW5nQ29udGV4dC5wcm92aWRlcn0uIFlvdSBtaWdodCBuZWVkIHRvIHVwZGF0ZSB0aGUgdG9vbGtpdCB0byBtYXRjaCB0aGUgdmVyc2lvbiBvZiB0aGUgY29uc3RydWN0IGxpYnJhcnkuYCk7XG4gICAgfVxuXG4gICAgY29uc3QgcHJvdmlkZXIgPSBmYWN0b3J5KHNkayk7XG5cbiAgICBsZXQgdmFsdWU7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGVudmlyb25tZW50ID0gbWlzc2luZ0NvbnRleHQucHJvcHMuYWNjb3VudCAmJiBtaXNzaW5nQ29udGV4dC5wcm9wcy5yZWdpb25cbiAgICAgICAgPyBjeGFwaS5FbnZpcm9ubWVudFV0aWxzLm1ha2UobWlzc2luZ0NvbnRleHQucHJvcHMuYWNjb3VudCwgbWlzc2luZ0NvbnRleHQucHJvcHMucmVnaW9uKVxuICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgICAgY29uc3QgcmVzb2x2ZWRFbnZpcm9ubWVudDogY3hhcGkuRW52aXJvbm1lbnQgPSBlbnZpcm9ubWVudFxuICAgICAgICA/IGF3YWl0IHNkay5yZXNvbHZlRW52aXJvbm1lbnQoZW52aXJvbm1lbnQpXG4gICAgICAgIDogeyBhY2NvdW50OiAnPycsIHJlZ2lvbjogJz8nLCBuYW1lOiAnPycgfTtcblxuICAgICAgY29uc3QgYXJucyA9IGF3YWl0IHJlcGxhY2VFbnZQbGFjZWhvbGRlcnMoe1xuICAgICAgICBsb29rdXBSb2xlQXJuOiBtaXNzaW5nQ29udGV4dC5wcm9wcy5sb29rdXBSb2xlQXJuLFxuICAgICAgfSwgcmVzb2x2ZWRFbnZpcm9ubWVudCwgc2RrKTtcblxuICAgICAgdmFsdWUgPSBhd2FpdCBwcm92aWRlci5nZXRWYWx1ZSh7IC4uLm1pc3NpbmdDb250ZXh0LnByb3BzLCBsb29rdXBSb2xlQXJuOiBhcm5zLmxvb2t1cFJvbGVBcm4gfSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgLy8gU2V0IGEgc3BlY2lhbGx5IGZvcm1hdHRlZCBwcm92aWRlciB2YWx1ZSB3aGljaCB3aWxsIGJlIGludGVycHJldGVkXG4gICAgICAvLyBhcyBhIGxvb2t1cCBmYWlsdXJlIGluIHRoZSB0b29sa2l0LlxuICAgICAgdmFsdWUgPSB7IFtjeGFwaS5QUk9WSURFUl9FUlJPUl9LRVldOiBlLm1lc3NhZ2UsIFtUUkFOU0lFTlRfQ09OVEVYVF9LRVldOiB0cnVlIH07XG4gICAgfVxuICAgIGNvbnRleHQuc2V0KGtleSwgdmFsdWUpO1xuICAgIGRlYnVnKGBTZXR0aW5nIFwiJHtrZXl9XCIgY29udGV4dCB0byAke0pTT04uc3RyaW5naWZ5KHZhbHVlKX1gKTtcbiAgfVxufVxuXG4vKipcbiAqIFJlZ2lzdGVyIGEgY29udGV4dCBwcm92aWRlclxuICpcbiAqIEEgY29udGV4dCBwcm92aWRlciBjYW5ub3QgcmV1c2UgdGhlIFNES3MgYXV0aGVudGljYXRpb24gbWVjaGFuaXNtcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyQ29udGV4dFByb3ZpZGVyKG5hbWU6IHN0cmluZywgcHJvdmlkZXI6IENvbnRleHRQcm92aWRlclBsdWdpbikge1xuICBhdmFpbGFibGVDb250ZXh0UHJvdmlkZXJzW25hbWVdID0gKCkgPT4gcHJvdmlkZXI7XG59XG5cbi8qKlxuICogUmVnaXN0ZXIgYSBwbHVnaW4gY29udGV4dCBwcm92aWRlclxuICpcbiAqIEEgcGx1Z2luIHByb3ZpZGVyIGNhbm5vdCByZXVzZSB0aGUgU0RLcyBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJQbHVnaW5Db250ZXh0UHJvdmlkZXIobmFtZTogc3RyaW5nLCBwcm92aWRlcjogQ29udGV4dFByb3ZpZGVyUGx1Z2luKSB7XG4gIHJlZ2lzdGVyQ29udGV4dFByb3ZpZGVyKGAke1BMVUdJTl9QUk9WSURFUl9QUkVGSVh9OiR7bmFtZX1gLCBwcm92aWRlcik7XG59XG5cbi8qKlxuICogUmVnaXN0ZXIgYSBjb250ZXh0IHByb3ZpZGVyIGZhY3RvcnlcbiAqXG4gKiBBIGNvbnRleHQgcHJvdmlkZXIgZmFjdG9yeSB0YWtlcyBhbiBTZGtQcm92aWRlciBhbmQgcmV0dXJucyB0aGUgY29udGV4dCBwcm92aWRlciBwbHVnaW4uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckNvbnRleHRQcm92aWRlckZhY3RvcnkobmFtZTogc3RyaW5nLCBwcm92aWRlcjogQ29udGV4dFByb3ZpZGVyRmFjdG9yeSkge1xuICBhdmFpbGFibGVDb250ZXh0UHJvdmlkZXJzW25hbWVdID0gcHJvdmlkZXI7XG59XG5cbmNvbnN0IGF2YWlsYWJsZUNvbnRleHRQcm92aWRlcnM6IFByb3ZpZGVyTWFwID0ge1xuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkFWQUlMQUJJTElUWV9aT05FX1BST1ZJREVSXTogKHMpID0+IG5ldyBBWkNvbnRleHRQcm92aWRlclBsdWdpbihzKSxcbiAgW2N4c2NoZW1hLkNvbnRleHRQcm92aWRlci5TU01fUEFSQU1FVEVSX1BST1ZJREVSXTogKHMpID0+IG5ldyBTU01Db250ZXh0UHJvdmlkZXJQbHVnaW4ocyksXG4gIFtjeHNjaGVtYS5Db250ZXh0UHJvdmlkZXIuSE9TVEVEX1pPTkVfUFJPVklERVJdOiAocykgPT4gbmV3IEhvc3RlZFpvbmVDb250ZXh0UHJvdmlkZXJQbHVnaW4ocyksXG4gIFtjeHNjaGVtYS5Db250ZXh0UHJvdmlkZXIuVlBDX1BST1ZJREVSXTogKHMpID0+IG5ldyBWcGNOZXR3b3JrQ29udGV4dFByb3ZpZGVyUGx1Z2luKHMpLFxuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkFNSV9QUk9WSURFUl06IChzKSA9PiBuZXcgQW1pQ29udGV4dFByb3ZpZGVyUGx1Z2luKHMpLFxuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkVORFBPSU5UX1NFUlZJQ0VfQVZBSUxBQklMSVRZX1pPTkVfUFJPVklERVJdOiAocykgPT4gbmV3IEVuZHBvaW50U2VydmljZUFaQ29udGV4dFByb3ZpZGVyUGx1Z2luKHMpLFxuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLlNFQ1VSSVRZX0dST1VQX1BST1ZJREVSXTogKHMpID0+IG5ldyBTZWN1cml0eUdyb3VwQ29udGV4dFByb3ZpZGVyUGx1Z2luKHMpLFxuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkxPQURfQkFMQU5DRVJfUFJPVklERVJdOiAocykgPT4gbmV3IExvYWRCYWxhbmNlckNvbnRleHRQcm92aWRlclBsdWdpbihzKSxcbiAgW2N4c2NoZW1hLkNvbnRleHRQcm92aWRlci5MT0FEX0JBTEFOQ0VSX0xJU1RFTkVSX1BST1ZJREVSXTogKHMpID0+IG5ldyBMb2FkQmFsYW5jZXJMaXN0ZW5lckNvbnRleHRQcm92aWRlclBsdWdpbihzKSxcbiAgW2N4c2NoZW1hLkNvbnRleHRQcm92aWRlci5LRVlfUFJPVklERVJdOiAocykgPT4gbmV3IEtleUNvbnRleHRQcm92aWRlclBsdWdpbihzKSxcbn07XG4iXX0=
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwyREFBMkQ7QUFDM0QseUNBQXlDO0FBRXpDLDJEQUFrRTtBQUNsRSx3Q0FBbUM7QUFDbkMsMENBQTZEO0FBQzdELCtCQUFpRDtBQUNqRCw2REFBK0Q7QUFDL0QsK0ZBQStGO0FBQy9GLGlEQUFpRTtBQUNqRSxpQ0FBa0Q7QUFDbEQscURBQWdIO0FBRWhILHVEQUF1RTtBQUN2RSxxREFBNEQ7QUFDNUQsaUNBQXlEO0FBS3pELE1BQU0sc0JBQXNCLEdBQUcsUUFBUSxDQUFDO0FBRXhDOztHQUVHO0FBQ0ksS0FBSyxVQUFVLG9CQUFvQixDQUN4QyxhQUF3QyxFQUN4QyxPQUFnQixFQUNoQixHQUFnQjtJQUVoQixLQUFLLE1BQU0sY0FBYyxJQUFJLGFBQWEsRUFBRTtRQUMxQyxNQUFNLEdBQUcsR0FBRyxjQUFjLENBQUMsR0FBRyxDQUFDO1FBRS9CLE1BQU0sWUFBWSxHQUFHLGNBQWMsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLGVBQWUsQ0FBQyxNQUFNO1lBQzlFLENBQUMsQ0FBQyxHQUFHLHNCQUFzQixJQUFLLGNBQWMsQ0FBQyxLQUFxQyxDQUFDLFVBQVUsRUFBRTtZQUNqRyxDQUFDLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQztRQUU1QixNQUFNLE9BQU8sR0FBRyx5QkFBeUIsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osbUNBQW1DO1lBQ25DLE1BQU0sSUFBSSxLQUFLLENBQUMsdUNBQXVDLGNBQWMsQ0FBQyxRQUFRLHVGQUF1RixDQUFDLENBQUM7U0FDeEs7UUFFRCxNQUFNLFFBQVEsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFOUIsSUFBSSxLQUFLLENBQUM7UUFDVixJQUFJO1lBQ0YsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFDLEtBQUssQ0FBQyxPQUFP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RSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsMkNBQTJDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSw0RUFBc0MsQ0FBQyxDQUFDLENBQUM7SUFDNUgsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLHVCQUF1QixDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksb0RBQWtDLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLGtEQUFpQyxDQUFDLENBQUMsQ0FBQztJQUNsRyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsK0JBQStCLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSwwREFBeUMsQ0FBQyxDQUFDLENBQUM7SUFDbkgsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLCtCQUF3QixDQUFDLENBQUMsQ0FBQztDQUNoRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3hzY2hlbWEgZnJvbSAnQGF3cy1jZGsvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCAqIGFzIGN4YXBpIGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgeyBTZGtQcm92aWRlciB9IGZyb20gJy4uL2FwaSc7XG5pbXBvcnQgeyByZXBsYWNlRW52UGxhY2Vob2xkZXJzIH0gZnJvbSAnLi4vYXBpL3V0aWwvcGxhY2Vob2xkZXJzJztcbmltcG9ydCB7IGRlYnVnIH0gZnJvbSAnLi4vbG9nZ2luZyc7XG5pbXBvcnQgeyBDb250ZXh0LCBUUkFOU0lFTlRfQ09OVEVYVF9LRVkgfSBmcm9tICcuLi9zZXR0aW5ncyc7XG5pbXBvcnQgeyBBbWlDb250ZXh0UHJvdmlkZXJQbHVnaW4gfSBmcm9tICcuL2FtaSc7XG5pbXBvcnQgeyBBWkNvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vYXZhaWxhYmlsaXR5LXpvbmVzJztcbmltcG9ydCB7IEVuZHBvaW50U2VydmljZUFaQ29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9lbmRwb2ludC1zZXJ2aWNlLWF2YWlsYWJpbGl0eS16b25lcyc7XG5pbXBvcnQgeyBIb3N0ZWRab25lQ29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9ob3N0ZWQtem9uZXMnO1xuaW1wb3J0IHsgS2V5Q29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9rZXlzJztcbmltcG9ydCB7IExvYWRCYWxhbmNlckNvbnRleHRQcm92aWRlclBsdWdpbiwgTG9hZEJhbGFuY2VyTGlzdGVuZXJDb250ZXh0UHJvdmlkZXJQbHVnaW4gfSBmcm9tICcuL2xvYWQtYmFsYW5jZXJzJztcbmltcG9ydCB7IENvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vcHJvdmlkZXInO1xuaW1wb3J0IHsgU2VjdXJpdHlHcm91cENvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vc2VjdXJpdHktZ3JvdXBzJztcbmltcG9ydCB7IFNTTUNvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vc3NtLXBhcmFtZXRlcnMnO1xuaW1wb3J0IHsgVnBjTmV0d29ya0NvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vdnBjcyc7XG5cbmV4cG9ydCB0eXBlIENvbnRleHRQcm92aWRlckZhY3RvcnkgPSAoKHNkazogU2RrUHJvdmlkZXIpID0+IENvbnRleHRQcm92aWRlclBsdWdpbik7XG5leHBvcnQgdHlwZSBQcm92aWRlck1hcCA9IHtbbmFtZTogc3RyaW5nXTogQ29udGV4dFByb3ZpZGVyRmFjdG9yeX07XG5cbmNvbnN0IFBMVUdJTl9QUk9WSURFUl9QUkVGSVggPSAncGx1Z2luJztcblxuLyoqXG4gKiBJdGVyYXRlIG92ZXIgdGhlIGxpc3Qgb2YgbWlzc2luZyBjb250ZXh0IHZhbHVlcyBhbmQgaW52b2tlIHRoZSBhcHByb3ByaWF0ZSBwcm92aWRlcnMgZnJvbSB0aGUgbWFwIHRvIHJldHJpZXZlIHRoZW1cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHByb3ZpZGVDb250ZXh0VmFsdWVzKFxuICBtaXNzaW5nVmFsdWVzOiBjeHNjaGVtYS5NaXNzaW5nQ29udGV4dFtdLFxuICBjb250ZXh0OiBDb250ZXh0LFxuICBzZGs6IFNka1Byb3ZpZGVyKSB7XG5cbiAgZm9yIChjb25zdCBtaXNzaW5nQ29udGV4dCBvZiBtaXNzaW5nVmFsdWVzKSB7XG4gICAgY29uc3Qga2V5ID0gbWlzc2luZ0NvbnRleHQua2V5O1xuXG4gICAgY29uc3QgcHJvdmlkZXJOYW1lID0gbWlzc2luZ0NvbnRleHQucHJvdmlkZXIgPT09IGN4c2NoZW1hLkNvbnRleHRQcm92aWRlci5QTFVHSU5cbiAgICAgID8gYCR7UExVR0lOX1BST1ZJREVSX1BSRUZJWH06JHsobWlzc2luZ0NvbnRleHQucHJvcHMgYXMgY3hzY2hlbWEuUGx1Z2luQ29udGV4dFF1ZXJ5KS5wbHVnaW5OYW1lfWBcbiAgICAgIDogbWlzc2luZ0NvbnRleHQucHJvdmlkZXI7XG5cbiAgICBjb25zdCBmYWN0b3J5ID0gYXZhaWxhYmxlQ29udGV4dFByb3ZpZGVyc1twcm92aWRlck5hbWVdO1xuICAgIGlmICghZmFjdG9yeSkge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgICAgIHRocm93IG5ldyBFcnJvcihgVW5yZWNvZ25pemVkIGNvbnRleHQgcHJvdmlkZXIgbmFtZTogJHttaXNzaW5nQ29udGV4dC5wcm92aWRlcn0uIFlvdSBtaWdodCBuZWVkIHRvIHVwZGF0ZSB0aGUgdG9vbGtpdCB0byBtYXRjaCB0aGUgdmVyc2lvbiBvZiB0aGUgY29uc3RydWN0IGxpYnJhcnkuYCk7XG4gICAgfVxuXG4gICAgY29uc3QgcHJvdmlkZXIgPSBmYWN0b3J5KHNkayk7XG5cbiAgICBsZXQgdmFsdWU7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGVudmlyb25tZW50ID0gbWlzc2luZ0NvbnRleHQucHJvcHMuYWNjb3VudCAmJiBtaXNzaW5nQ29udGV4dC5wcm9wcy5yZWdpb25cbiAgICAgICAgPyBjeGFwaS5FbnZpcm9ubWVudFV0aWxzLm1ha2UobWlzc2luZ0NvbnRleHQucHJvcHMuYWNjb3VudCwgbWlzc2luZ0NvbnRleHQucHJvcHMucmVnaW9uKVxuICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgICAgY29uc3QgcmVzb2x2ZWRFbnZpcm9ubWVudDogY3hhcGkuRW52aXJvbm1lbnQgPSBlbnZpcm9ubWVudFxuICAgICAgICA/IGF3YWl0IHNkay5yZXNvbHZlRW52aXJvbm1lbnQoZW52aXJvbm1lbnQpXG4gICAgICAgIDogeyBhY2NvdW50OiAnPycsIHJlZ2lvbjogJz8nLCBuYW1lOiAnPycgfTtcblxuICAgICAgY29uc3QgYXJucyA9IGF3YWl0IHJlcGxhY2VFbnZQbGFjZWhvbGRlcnMoe1xuICAgICAgICBsb29rdXBSb2xlQXJuOiBtaXNzaW5nQ29udGV4dC5wcm9wcy5sb29rdXBSb2xlQXJuLFxuICAgICAgfSwgcmVzb2x2ZWRFbnZpcm9ubWVudCwgc2RrKTtcblxuICAgICAgdmFsdWUgPSBhd2FpdCBwcm92aWRlci5nZXRWYWx1ZSh7IC4uLm1pc3NpbmdDb250ZXh0LnByb3BzLCBsb29rdXBSb2xlQXJuOiBhcm5zLmxvb2t1cFJvbGVBcm4gfSk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgLy8gU2V0IGEgc3BlY2lhbGx5IGZvcm1hdHRlZCBwcm92aWRlciB2YWx1ZSB3aGljaCB3aWxsIGJlIGludGVycHJldGVkXG4gICAgICAvLyBhcyBhIGxvb2t1cCBmYWlsdXJlIGluIHRoZSB0b29sa2l0LlxuICAgICAgdmFsdWUgPSB7IFtjeGFwaS5QUk9WSURFUl9FUlJPUl9LRVldOiBlLm1lc3NhZ2UsIFtUUkFOU0lFTlRfQ09OVEVYVF9LRVldOiB0cnVlIH07XG4gICAgfVxuICAgIGNvbnRleHQuc2V0KGtleSwgdmFsdWUpO1xuICAgIGRlYnVnKGBTZXR0aW5nIFwiJHtrZXl9XCIgY29udGV4dCB0byAke0pTT04uc3RyaW5naWZ5KHZhbHVlKX1gKTtcbiAgfVxufVxuXG4vKipcbiAqIFJlZ2lzdGVyIGEgY29udGV4dCBwcm92aWRlclxuICpcbiAqIEEgY29udGV4dCBwcm92aWRlciBjYW5ub3QgcmV1c2UgdGhlIFNES3MgYXV0aGVudGljYXRpb24gbWVjaGFuaXNtcy5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyQ29udGV4dFByb3ZpZGVyKG5hbWU6IHN0cmluZywgcHJvdmlkZXI6IENvbnRleHRQcm92aWRlclBsdWdpbikge1xuICBhdmFpbGFibGVDb250ZXh0UHJvdmlkZXJzW25hbWVdID0gKCkgPT4gcHJvdmlkZXI7XG59XG5cbi8qKlxuICogUmVnaXN0ZXIgYSBwbHVnaW4gY29udGV4dCBwcm92aWRlclxuICpcbiAqIEEgcGx1Z2luIHByb3ZpZGVyIGNhbm5vdCByZXVzZSB0aGUgU0RLcyBhdXRoZW50aWNhdGlvbiBtZWNoYW5pc21zLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJQbHVnaW5Db250ZXh0UHJvdmlkZXIobmFtZTogc3RyaW5nLCBwcm92aWRlcjogQ29udGV4dFByb3ZpZGVyUGx1Z2luKSB7XG4gIHJlZ2lzdGVyQ29udGV4dFByb3ZpZGVyKGAke1BMVUdJTl9QUk9WSURFUl9QUkVGSVh9OiR7bmFtZX1gLCBwcm92aWRlcik7XG59XG5cbi8qKlxuICogUmVnaXN0ZXIgYSBjb250ZXh0IHByb3ZpZGVyIGZhY3RvcnlcbiAqXG4gKiBBIGNvbnRleHQgcHJvdmlkZXIgZmFjdG9yeSB0YWtlcyBhbiBTZGtQcm92aWRlciBhbmQgcmV0dXJucyB0aGUgY29udGV4dCBwcm92aWRlciBwbHVnaW4uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWdpc3RlckNvbnRleHRQcm92aWRlckZhY3RvcnkobmFtZTogc3RyaW5nLCBwcm92aWRlcjogQ29udGV4dFByb3ZpZGVyRmFjdG9yeSkge1xuICBhdmFpbGFibGVDb250ZXh0UHJvdmlkZXJzW25hbWVdID0gcHJvdmlkZXI7XG59XG5cbmNvbnN0IGF2YWlsYWJsZUNvbnRleHRQcm92aWRlcnM6IFByb3ZpZGVyTWFwID0ge1xuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkFWQUlMQUJJTElUWV9aT05FX1BST1ZJREVSXTogKHMpID0+IG5ldyBBWkNvbnRleHRQcm92aWRlclBsdWdpbihzKSxcbiAgW2N4c2NoZW1hLkNvbnRleHRQcm92aWRlci5TU01fUEFSQU1FVEVSX1BST1ZJREVSXTogKHMpID0+IG5ldyBTU01Db250ZXh0UHJvdmlkZXJQbHVnaW4ocyksXG4gIFtjeHNjaGVtYS5Db250ZXh0UHJvdmlkZXIuSE9TVEVEX1pPTkVfUFJPVklERVJdOiAocykgPT4gbmV3IEhvc3RlZFpvbmVDb250ZXh0UHJvdmlkZXJQbHVnaW4ocyksXG4gIFtjeHNjaGVtYS5Db250ZXh0UHJvdmlkZXIuVlBDX1BST1ZJREVSXTogKHMpID0+IG5ldyBWcGNOZXR3b3JrQ29udGV4dFByb3ZpZGVyUGx1Z2luKHMpLFxuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkFNSV9QUk9WSURFUl06IChzKSA9PiBuZXcgQW1pQ29udGV4dFByb3ZpZGVyUGx1Z2luKHMpLFxuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkVORFBPSU5UX1NFUlZJQ0VfQVZBSUxBQklMSVRZX1pPTkVfUFJPVklERVJdOiAocykgPT4gbmV3IEVuZHBvaW50U2VydmljZUFaQ29udGV4dFByb3ZpZGVyUGx1Z2luKHMpLFxuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLlNFQ1VSSVRZX0dST1VQX1BST1ZJREVSXTogKHMpID0+IG5ldyBTZWN1cml0eUdyb3VwQ29udGV4dFByb3ZpZGVyUGx1Z2luKHMpLFxuICBbY3hzY2hlbWEuQ29udGV4dFByb3ZpZGVyLkxPQURfQkFMQU5DRVJfUFJPVklERVJdOiAocykgPT4gbmV3IExvYWRCYWxhbmNlckNvbnRleHRQcm92aWRlclBsdWdpbihzKSxcbiAgW2N4c2NoZW1hLkNvbnRleHRQcm92aWRlci5MT0FEX0JBTEFOQ0VSX0xJU1RFTkVSX1BST1ZJREVSXTogKHMpID0+IG5ldyBMb2FkQmFsYW5jZXJMaXN0ZW5lckNvbnRleHRQcm92aWRlclBsdWdpbihzKSxcbiAgW2N4c2NoZW1hLkNvbnRleHRQcm92aWRlci5LRVlfUFJPVklERVJdOiAocykgPT4gbmV3IEtleUNvbnRleHRQcm92aWRlclBsdWdpbihzKSxcbn07XG4iXX0=
@@ -1,6 +1,6 @@
1
1
  import * as cxschema from '@aws-cdk/cloud-assembly-schema';
2
2
  import * as cxapi from '@aws-cdk/cx-api';
3
- import { SdkProvider } from '../api';
3
+ import { SdkProvider } from '../api/aws-auth/sdk-provider';
4
4
  import { ContextProviderPlugin } from './provider';
5
5
  export declare class KeyContextProviderPlugin implements ContextProviderPlugin {
6
6
  private readonly aws;
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.KeyContextProviderPlugin = void 0;
4
4
  const cxapi = require("@aws-cdk/cx-api");
5
- const api_1 = require("../api");
5
+ const credentials_1 = require("../api/aws-auth/credentials");
6
6
  const logging_1 = require("../logging");
7
7
  class KeyContextProviderPlugin {
8
8
  constructor(aws) {
@@ -12,7 +12,7 @@ class KeyContextProviderPlugin {
12
12
  const account = args.account;
13
13
  const region = args.region;
14
14
  const options = { assumeRoleArn: args.lookupRoleArn };
15
- const kms = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(account, region), api_1.Mode.ForReading, options)).sdk.kms();
15
+ const kms = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(account, region), credentials_1.Mode.ForReading, options)).sdk.kms();
16
16
  const aliasListEntry = await this.findKey(kms, args);
17
17
  return this.readKeyProps(aliasListEntry, args);
18
18
  }
@@ -45,4 +45,4 @@ class KeyContextProviderPlugin {
45
45
  }
46
46
  }
47
47
  exports.KeyContextProviderPlugin = KeyContextProviderPlugin;
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EseUNBQXlDO0FBR3pDLGdDQUEyQztBQUMzQyx3Q0FBbUM7QUFHbkMsTUFBYSx3QkFBd0I7SUFFbkMsWUFBNkIsR0FBZ0I7UUFBaEIsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUM3QyxDQUFDO0lBRU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUE4QjtRQUNsRCxNQUFNLE9BQU8sR0FBVyxJQUFJLENBQUMsT0FBUSxDQUFDO1FBQ3RDLE1BQU0sTUFBTSxHQUFXLElBQUksQ0FBQyxNQUFPLENBQUM7UUFFcEMsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RELE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsRUFBRSxVQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRTlILE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFckQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFZLEVBQUUsSUFBOEI7UUFFaEUsZUFBSyxDQUFDLG1CQUFtQixJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1FBRXhELElBQUksUUFBa0UsQ0FBQztRQUN2RSxJQUFJLFVBQThCLENBQUM7UUFDbkMsR0FBRztZQUNELFFBQVEsR0FBRyxNQUFNLEdBQUcsQ0FBQyxXQUFXLENBQUM7Z0JBQy9CLE1BQU0sRUFBRSxVQUFVO2FBQ25CLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUViLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDO1lBQ3ZDLEtBQUssTUFBTSxLQUFLLElBQUksT0FBTyxFQUFFO2dCQUMzQixJQUFJLEtBQUssQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDckMsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7YUFDRjtZQUVELFVBQVUsR0FBRyxRQUFRLENBQUMsVUFBVSxDQUFDO1NBQ2xDLFFBQVEsUUFBUSxDQUFDLFNBQVMsRUFBRTtRQUU3QixNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxLQUE2QixFQUFFLElBQThCO1FBQ3RGLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFO1lBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsMkNBQTJDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1NBQzlFO1FBRUQsZUFBSyxDQUFDLGFBQWEsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFFeEMsT0FBTztZQUNMLEtBQUssRUFBRSxLQUFLLENBQUMsV0FBVztTQUN6QixDQUFDO0lBQ0osQ0FBQztDQUVGO0FBckRELDREQXFEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGN4c2NoZW1hIGZyb20gJ0Bhd3MtY2RrL2Nsb3VkLWFzc2VtYmx5LXNjaGVtYSc7XG5pbXBvcnQgKiBhcyBjeGFwaSBmcm9tICdAYXdzLWNkay9jeC1hcGknO1xuaW1wb3J0ICogYXMgQVdTIGZyb20gJ2F3cy1zZGsnO1xuaW1wb3J0IHsgUHJvbWlzZVJlc3VsdCB9IGZyb20gJ2F3cy1zZGsvbGliL3JlcXVlc3QnO1xuaW1wb3J0IHsgTW9kZSwgU2RrUHJvdmlkZXIgfSBmcm9tICcuLi9hcGknO1xuaW1wb3J0IHsgZGVidWcgfSBmcm9tICcuLi9sb2dnaW5nJztcbmltcG9ydCB7IENvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vcHJvdmlkZXInO1xuXG5leHBvcnQgY2xhc3MgS2V5Q29udGV4dFByb3ZpZGVyUGx1Z2luIGltcGxlbWVudHMgQ29udGV4dFByb3ZpZGVyUGx1Z2luIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGF3czogU2RrUHJvdmlkZXIpIHtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRWYWx1ZShhcmdzOiBjeHNjaGVtYS5LZXlDb250ZXh0UXVlcnkpIHtcbiAgICBjb25zdCBhY2NvdW50OiBzdHJpbmcgPSBhcmdzLmFjY291bnQhO1xuICAgIGNvbnN0IHJlZ2lvbjogc3RyaW5nID0gYXJncy5yZWdpb24hO1xuXG4gICAgY29uc3Qgb3B0aW9ucyA9IHsgYXNzdW1lUm9sZUFybjogYXJncy5sb29rdXBSb2xlQXJuIH07XG4gICAgY29uc3Qga21zID0gKGF3YWl0IHRoaXMuYXdzLmZvckVudmlyb25tZW50KGN4YXBpLkVudmlyb25tZW50VXRpbHMubWFrZShhY2NvdW50LCByZWdpb24pLCBNb2RlLkZvclJlYWRpbmcsIG9wdGlvbnMpKS5zZGsua21zKCk7XG5cbiAgICBjb25zdCBhbGlhc0xpc3RFbnRyeSA9IGF3YWl0IHRoaXMuZmluZEtleShrbXMsIGFyZ3MpO1xuXG4gICAgcmV0dXJuIHRoaXMucmVhZEtleVByb3BzKGFsaWFzTGlzdEVudHJ5LCBhcmdzKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgZmluZEtleShrbXM6IEFXUy5LTVMsIGFyZ3M6IGN4c2NoZW1hLktleUNvbnRleHRRdWVyeSk6IFByb21pc2U8QVdTLktNUy5BbGlhc0xpc3RFbnRyeT4ge1xuXG4gICAgZGVidWcoYExpc3Rpbmcga2V5cyBpbiAke2FyZ3MuYWNjb3VudH06JHthcmdzLnJlZ2lvbn1gKTtcblxuICAgIGxldCByZXNwb25zZTogUHJvbWlzZVJlc3VsdDxBV1MuS01TLkxpc3RBbGlhc2VzUmVzcG9uc2UsIEFXUy5BV1NFcnJvcj47XG4gICAgbGV0IG5leHRNYXJrZXI6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICBkbyB7XG4gICAgICByZXNwb25zZSA9IGF3YWl0IGttcy5saXN0QWxpYXNlcyh7XG4gICAgICAgIE1hcmtlcjogbmV4dE1hcmtlcixcbiAgICAgIH0pLnByb21pc2UoKTtcblxuICAgICAgY29uc3QgYWxpYXNlcyA9IHJlc3BvbnNlLkFsaWFzZXMgfHwgW107XG4gICAgICBmb3IgKGNvbnN0IGFsaWFzIG9mIGFsaWFzZXMpIHtcbiAgICAgICAgaWYgKGFsaWFzLkFsaWFzTmFtZSA9PSBhcmdzLmFsaWFzTmFtZSkge1xuICAgICAgICAgIHJldHVybiBhbGlhcztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBuZXh0TWFya2VyID0gcmVzcG9uc2UuTmV4dE1hcmtlcjtcbiAgICB9IHdoaWxlIChyZXNwb25zZS5UcnVuY2F0ZWQpO1xuXG4gICAgdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgZmluZCBhbnkga2V5IHdpdGggYWxpYXMgbmFtZWQgJHthcmdzLmFsaWFzTmFtZX1gKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcmVhZEtleVByb3BzKGFsaWFzOiBBV1MuS01TLkFsaWFzTGlzdEVudHJ5LCBhcmdzOiBjeHNjaGVtYS5LZXlDb250ZXh0UXVlcnkpOiBQcm9taXNlPGN4YXBpLktleUNvbnRleHRSZXNwb25zZT4ge1xuICAgIGlmICghYWxpYXMuVGFyZ2V0S2V5SWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ291bGQgbm90IGZpbmQgYW55IGtleSB3aXRoIGFsaWFzIG5hbWVkICR7YXJncy5hbGlhc05hbWV9YCk7XG4gICAgfVxuXG4gICAgZGVidWcoYEtleSBmb3VuZCAke2FsaWFzLlRhcmdldEtleUlkfWApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGtleUlkOiBhbGlhcy5UYXJnZXRLZXlJZCxcbiAgICB9O1xuICB9XG5cbn1cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImtleXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EseUNBQXlDO0FBR3pDLDZEQUFtRDtBQUVuRCx3Q0FBbUM7QUFHbkMsTUFBYSx3QkFBd0I7SUFFbkMsWUFBNkIsR0FBZ0I7UUFBaEIsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUM3QyxDQUFDO0lBRU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUE4QjtRQUNsRCxNQUFNLE9BQU8sR0FBVyxJQUFJLENBQUMsT0FBUSxDQUFDO1FBQ3RDLE1BQU0sTUFBTSxHQUFXLElBQUksQ0FBQyxNQUFPLENBQUM7UUFFcEMsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RELE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsRUFBRSxrQkFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUU5SCxNQUFNLGNBQWMsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXJELE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVPLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBWSxFQUFFLElBQThCO1FBRWhFLGVBQUssQ0FBQyxtQkFBbUIsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUV4RCxJQUFJLFFBQWtFLENBQUM7UUFDdkUsSUFBSSxVQUE4QixDQUFDO1FBQ25DLEdBQUc7WUFDRCxRQUFRLEdBQUcsTUFBTSxHQUFHLENBQUMsV0FBVyxDQUFDO2dCQUMvQixNQUFNLEVBQUUsVUFBVTthQUNuQixDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFYixNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsT0FBTyxJQUFJLEVBQUUsQ0FBQztZQUN2QyxLQUFLLE1BQU0sS0FBSyxJQUFJLE9BQU8sRUFBRTtnQkFDM0IsSUFBSSxLQUFLLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7b0JBQ3JDLE9BQU8sS0FBSyxDQUFDO2lCQUNkO2FBQ0Y7WUFFRCxVQUFVLEdBQUcsUUFBUSxDQUFDLFVBQVUsQ0FBQztTQUNsQyxRQUFRLFFBQVEsQ0FBQyxTQUFTLEVBQUU7UUFFN0IsTUFBTSxJQUFJLEtBQUssQ0FBQywyQ0FBMkMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVPLEtBQUssQ0FBQyxZQUFZLENBQUMsS0FBNkIsRUFBRSxJQUE4QjtRQUN0RixJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRTtZQUN0QixNQUFNLElBQUksS0FBSyxDQUFDLDJDQUEyQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQztTQUM5RTtRQUVELGVBQUssQ0FBQyxhQUFhLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO1FBRXhDLE9BQU87WUFDTCxLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVc7U0FDekIsQ0FBQztJQUNKLENBQUM7Q0FFRjtBQXJERCw0REFxREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjeHNjaGVtYSBmcm9tICdAYXdzLWNkay9jbG91ZC1hc3NlbWJseS1zY2hlbWEnO1xuaW1wb3J0ICogYXMgY3hhcGkgZnJvbSAnQGF3cy1jZGsvY3gtYXBpJztcbmltcG9ydCAqIGFzIEFXUyBmcm9tICdhd3Mtc2RrJztcbmltcG9ydCB7IFByb21pc2VSZXN1bHQgfSBmcm9tICdhd3Mtc2RrL2xpYi9yZXF1ZXN0JztcbmltcG9ydCB7IE1vZGUgfSBmcm9tICcuLi9hcGkvYXdzLWF1dGgvY3JlZGVudGlhbHMnO1xuaW1wb3J0IHsgU2RrUHJvdmlkZXIgfSBmcm9tICcuLi9hcGkvYXdzLWF1dGgvc2RrLXByb3ZpZGVyJztcbmltcG9ydCB7IGRlYnVnIH0gZnJvbSAnLi4vbG9nZ2luZyc7XG5pbXBvcnQgeyBDb250ZXh0UHJvdmlkZXJQbHVnaW4gfSBmcm9tICcuL3Byb3ZpZGVyJztcblxuZXhwb3J0IGNsYXNzIEtleUNvbnRleHRQcm92aWRlclBsdWdpbiBpbXBsZW1lbnRzIENvbnRleHRQcm92aWRlclBsdWdpbiB7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBhd3M6IFNka1Byb3ZpZGVyKSB7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0VmFsdWUoYXJnczogY3hzY2hlbWEuS2V5Q29udGV4dFF1ZXJ5KSB7XG4gICAgY29uc3QgYWNjb3VudDogc3RyaW5nID0gYXJncy5hY2NvdW50ITtcbiAgICBjb25zdCByZWdpb246IHN0cmluZyA9IGFyZ3MucmVnaW9uITtcblxuICAgIGNvbnN0IG9wdGlvbnMgPSB7IGFzc3VtZVJvbGVBcm46IGFyZ3MubG9va3VwUm9sZUFybiB9O1xuICAgIGNvbnN0IGttcyA9IChhd2FpdCB0aGlzLmF3cy5mb3JFbnZpcm9ubWVudChjeGFwaS5FbnZpcm9ubWVudFV0aWxzLm1ha2UoYWNjb3VudCwgcmVnaW9uKSwgTW9kZS5Gb3JSZWFkaW5nLCBvcHRpb25zKSkuc2RrLmttcygpO1xuXG4gICAgY29uc3QgYWxpYXNMaXN0RW50cnkgPSBhd2FpdCB0aGlzLmZpbmRLZXkoa21zLCBhcmdzKTtcblxuICAgIHJldHVybiB0aGlzLnJlYWRLZXlQcm9wcyhhbGlhc0xpc3RFbnRyeSwgYXJncyk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGZpbmRLZXkoa21zOiBBV1MuS01TLCBhcmdzOiBjeHNjaGVtYS5LZXlDb250ZXh0UXVlcnkpOiBQcm9taXNlPEFXUy5LTVMuQWxpYXNMaXN0RW50cnk+IHtcblxuICAgIGRlYnVnKGBMaXN0aW5nIGtleXMgaW4gJHthcmdzLmFjY291bnR9OiR7YXJncy5yZWdpb259YCk7XG5cbiAgICBsZXQgcmVzcG9uc2U6IFByb21pc2VSZXN1bHQ8QVdTLktNUy5MaXN0QWxpYXNlc1Jlc3BvbnNlLCBBV1MuQVdTRXJyb3I+O1xuICAgIGxldCBuZXh0TWFya2VyOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgZG8ge1xuICAgICAgcmVzcG9uc2UgPSBhd2FpdCBrbXMubGlzdEFsaWFzZXMoe1xuICAgICAgICBNYXJrZXI6IG5leHRNYXJrZXIsXG4gICAgICB9KS5wcm9taXNlKCk7XG5cbiAgICAgIGNvbnN0IGFsaWFzZXMgPSByZXNwb25zZS5BbGlhc2VzIHx8IFtdO1xuICAgICAgZm9yIChjb25zdCBhbGlhcyBvZiBhbGlhc2VzKSB7XG4gICAgICAgIGlmIChhbGlhcy5BbGlhc05hbWUgPT0gYXJncy5hbGlhc05hbWUpIHtcbiAgICAgICAgICByZXR1cm4gYWxpYXM7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbmV4dE1hcmtlciA9IHJlc3BvbnNlLk5leHRNYXJrZXI7XG4gICAgfSB3aGlsZSAocmVzcG9uc2UuVHJ1bmNhdGVkKTtcblxuICAgIHRocm93IG5ldyBFcnJvcihgQ291bGQgbm90IGZpbmQgYW55IGtleSB3aXRoIGFsaWFzIG5hbWVkICR7YXJncy5hbGlhc05hbWV9YCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHJlYWRLZXlQcm9wcyhhbGlhczogQVdTLktNUy5BbGlhc0xpc3RFbnRyeSwgYXJnczogY3hzY2hlbWEuS2V5Q29udGV4dFF1ZXJ5KTogUHJvbWlzZTxjeGFwaS5LZXlDb250ZXh0UmVzcG9uc2U+IHtcbiAgICBpZiAoIWFsaWFzLlRhcmdldEtleUlkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENvdWxkIG5vdCBmaW5kIGFueSBrZXkgd2l0aCBhbGlhcyBuYW1lZCAke2FyZ3MuYWxpYXNOYW1lfWApO1xuICAgIH1cblxuICAgIGRlYnVnKGBLZXkgZm91bmQgJHthbGlhcy5UYXJnZXRLZXlJZH1gKTtcblxuICAgIHJldHVybiB7XG4gICAgICBrZXlJZDogYWxpYXMuVGFyZ2V0S2V5SWQsXG4gICAgfTtcbiAgfVxuXG59XG4iXX0=
@@ -1,7 +1,7 @@
1
1
  import * as cxschema from '@aws-cdk/cloud-assembly-schema';
2
2
  import * as cxapi from '@aws-cdk/cx-api';
3
3
  import * as AWS from 'aws-sdk';
4
- import { SdkProvider } from '../api';
4
+ import { SdkProvider } from '../api/aws-auth/sdk-provider';
5
5
  import { ContextProviderPlugin } from './provider';
6
6
  /**
7
7
  * Provides load balancer context information.
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.describeListenersByLoadBalancerArn = exports.tagsMatch = exports.describeTags = exports.describeLoadBalancers = exports.LoadBalancerListenerContextProviderPlugin = exports.LoadBalancerContextProviderPlugin = void 0;
4
4
  const cxapi = require("@aws-cdk/cx-api");
5
- const api_1 = require("../api");
5
+ const credentials_1 = require("../api/aws-auth/credentials");
6
6
  /**
7
7
  * Provides load balancer context information.
8
8
  */
@@ -13,7 +13,7 @@ class LoadBalancerContextProviderPlugin {
13
13
  async getValue(query) {
14
14
  var _a;
15
15
  const options = { assumeRoleArn: query.lookupRoleArn };
16
- const elbv2 = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(query.account, query.region), api_1.Mode.ForReading, options)).sdk.elbv2();
16
+ const elbv2 = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(query.account, query.region), credentials_1.Mode.ForReading, options)).sdk.elbv2();
17
17
  if (!query.loadBalancerArn && !query.loadBalancerTags) {
18
18
  throw new Error('The load balancer lookup query must specify either `loadBalancerArn` or `loadBalancerTags`');
19
19
  }
@@ -48,7 +48,7 @@ class LoadBalancerListenerContextProviderPlugin {
48
48
  }
49
49
  async getValue(query) {
50
50
  const options = { assumeRoleArn: query.lookupRoleArn };
51
- const elbv2 = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(query.account, query.region), api_1.Mode.ForReading, options)).sdk.elbv2();
51
+ const elbv2 = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(query.account, query.region), credentials_1.Mode.ForReading, options)).sdk.elbv2();
52
52
  if (!query.listenerArn && !query.loadBalancerArn && !query.loadBalancerTags) {
53
53
  throw new Error('The load balancer listener query must specify at least one of: `listenerArn`, `loadBalancerArn` or `loadBalancerTags`');
54
54
  }
@@ -261,4 +261,4 @@ function indexLoadBalancersByArn(loadBalancers) {
261
261
  }
262
262
  return loadBalancersByArn;
263
263
  }
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1iYWxhbmNlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJsb2FkLWJhbGFuY2Vycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBeUM7QUFFekMsZ0NBQTJDO0FBRzNDOztHQUVHO0FBQ0gsTUFBYSxpQ0FBaUM7SUFDNUMsWUFBNkIsR0FBZ0I7UUFBaEIsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUM3QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUF3Qzs7UUFDckQsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZELE1BQU0sS0FBSyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFVBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQUM7UUFFOUksSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUU7WUFDckQsTUFBTSxJQUFJLEtBQUssQ0FBQyw0RkFBNEYsQ0FBQyxDQUFDO1NBQy9HO1FBRUQsTUFBTSxhQUFhLEdBQUcsTUFBTSxpQkFBaUIsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFFNUQsSUFBSSxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLG9DQUFvQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM5RTtRQUVELElBQUksYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsSUFBSSxDQUFD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QUFFLENBQUM7SUFFdEUsS0FBSyxNQUFNLFlBQVksSUFBSSxhQUFhLEVBQUU7UUFDeEMsa0JBQWtCLENBQUMsWUFBWSxDQUFDLGVBQWdCLENBQUMsR0FBRyxZQUFZLENBQUM7S0FDbEU7SUFFRCxPQUFPLGtCQUFrQixDQUFDO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjeHNjaGVtYSBmcm9tICdAYXdzLWNkay9jbG91ZC1hc3NlbWJseS1zY2hlbWEnO1xuaW1wb3J0ICogYXMgY3hhcGkgZnJvbSAnQGF3cy1jZGsvY3gtYXBpJztcbmltcG9ydCAqIGFzIEFXUyBmcm9tICdhd3Mtc2RrJztcbmltcG9ydCB7IE1vZGUsIFNka1Byb3ZpZGVyIH0gZnJvbSAnLi4vYXBpJztcbmltcG9ydCB7IENvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vcHJvdmlkZXInO1xuXG4vKipcbiAqIFByb3ZpZGVzIGxvYWQgYmFsYW5jZXIgY29udGV4dCBpbmZvcm1hdGlvbi5cbiAqL1xuZXhwb3J0IGNsYXNzIExvYWRCYWxhbmNlckNvbnRleHRQcm92aWRlclBsdWdpbiBpbXBsZW1lbnRzIENvbnRleHRQcm92aWRlclBsdWdpbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYXdzOiBTZGtQcm92aWRlcikge1xuICB9XG5cbiAgYXN5bmMgZ2V0VmFsdWUocXVlcnk6IGN4c2NoZW1hLkxvYWRCYWxhbmNlckNvbnRleHRRdWVyeSk6IFByb21pc2U8Y3hhcGkuTG9hZEJhbGFuY2VyQ29udGV4dFJlc3BvbnNlPiB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHsgYXNzdW1lUm9sZUFybjogcXVlcnkubG9va3VwUm9sZUFybiB9O1xuICAgIGNvbnN0IGVsYnYyID0gKGF3YWl0IHRoaXMuYXdzLmZvckVudmlyb25tZW50KGN4YXBpLkVudmlyb25tZW50VXRpbHMubWFrZShxdWVyeS5hY2NvdW50LCBxdWVyeS5yZWdpb24pLCBNb2RlLkZvclJlYWRpbmcsIG9wdGlvbnMpKS5zZGsuZWxidjIoKTtcblxuICAgIGlmICghcXVlcnkubG9hZEJhbGFuY2VyQXJuICYmICFxdWVyeS5sb2FkQmFsYW5jZXJUYWdzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBsb2FkIGJhbGFuY2VyIGxvb2t1cCBxdWVyeSBtdXN0IHNwZWNpZnkgZWl0aGVyIGBsb2FkQmFsYW5jZXJBcm5gIG9yIGBsb2FkQmFsYW5jZXJUYWdzYCcpO1xuICAgIH1cblxuICAgIGNvbnN0IGxvYWRCYWxhbmNlcnMgPSBhd2FpdCBmaW5kTG9hZEJhbGFuY2VycyhlbGJ2MiwgcXVlcnkpO1xuXG4gICAgaWYgKGxvYWRCYWxhbmNlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGxvYWQgYmFsYW5jZXJzIGZvdW5kIG1hdGNoaW5nICR7SlNPTi5zdHJpbmdpZnkocXVlcnkpfWApO1xuICAgIH1cblxuICAgIGlmIChsb2FkQmFsYW5jZXJzLmxlbmd0aCA+IDEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTXVsdGlwbGUgbG9hZCBiYWxhbmNlcnMgZm91bmQgbWF0Y2hpbmcgJHtKU09OLnN0cmluZ2lmeShxdWVyeSl9IC0gcGxlYXNlIHByb3ZpZGUgbW9yZSBzcGVjaWZpYyBjcml0ZXJpYWApO1xuICAgIH1cblxuICAgIGNvbnN0IGxvYWRCYWxhbmNlciA9IGxvYWRCYWxhbmNlcnNbMF07XG5cbiAgICBjb25zdCBpcEFkZHJlc3NUeXBlID0gbG9hZEJhbGFuY2VyLklwQWRkcmVzc1R5cGUgPT09ICdpcHY0J1xuICAgICAgPyBjeGFwaS5Mb2FkQmFsYW5jZXJJcEFkZHJlc3NUeXBlLklQVjRcbiAgICAgIDogY3hhcGkuTG9hZEJhbGFuY2VySXBBZGRyZXNzVHlwZS5EVUFMX1NUQUNLO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxvYWRCYWxhbmNlckFybjogbG9hZEJhbGFuY2VyLkxvYWRCYWxhbmNlckFybiEsXG4gICAgICBsb2FkQmFsYW5jZXJDYW5vbmljYWxIb3N0ZWRab25lSWQ6IGxvYWRCYWxhbmNlci5DYW5vbmljYWxIb3N0ZWRab25lSWQhLFxuICAgICAgbG9hZEJhbGFuY2VyRG5zTmFtZTogbG9hZEJhbGFuY2VyLkROU05hbWUhLFxuICAgICAgdnBjSWQ6IGxvYWRCYWxhbmNlci5WcGNJZCEsXG4gICAgICBzZWN1cml0eUdyb3VwSWRzOiBsb2FkQmFsYW5jZXIuU2VjdXJpdHlHcm91cHMgPz8gW10sXG4gICAgICBpcEFkZHJlc3NUeXBlOiBpcEFkZHJlc3NUeXBlLFxuICAgIH07XG4gIH1cbn1cblxuLy8gRGVjcmVhc2VzIGxpbmUgbGVuZ3RoXG50eXBlIExvYWRCYWxhbmNlckxpc3RlbmVyUXVlcnkgPSBjeHNjaGVtYS5Mb2FkQmFsYW5jZXJMaXN0ZW5lckNvbnRleHRRdWVyeTtcbnR5cGUgTG9hZEJhbGFuY2VyTGlzdGVuZXJSZXNwb25zZSA9IGN4YXBpLkxvYWRCYWxhbmNlckxpc3RlbmVyQ29udGV4dFJlc3BvbnNlO1xuXG4vKipcbiAqIFByb3ZpZGVzIGxvYWQgYmFsYW5jZXIgbGlzdGVuZXIgY29udGV4dCBpbmZvcm1hdGlvblxuICovXG5leHBvcnQgY2xhc3MgTG9hZEJhbGFuY2VyTGlzdGVuZXJDb250ZXh0UHJvdmlkZXJQbHVnaW4gaW1wbGVtZW50cyBDb250ZXh0UHJvdmlkZXJQbHVnaW4ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGF3czogU2RrUHJvdmlkZXIpIHtcbiAgfVxuXG4gIGFzeW5jIGdldFZhbHVlKHF1ZXJ5OiBMb2FkQmFsYW5jZXJMaXN0ZW5lclF1ZXJ5KTogUHJvbWlzZTxMb2FkQmFsYW5jZXJMaXN0ZW5lclJlc3BvbnNlPiB7XG4gICAgY29uc3Qgb3B0aW9ucyA9IHsgYXNzdW1lUm9sZUFybjogcXVlcnkubG9va3VwUm9sZUFybiB9O1xuICAgIGNvbnN0IGVsYnYyID0gKGF3YWl0IHRoaXMuYXdzLmZvckVudmlyb25tZW50KGN4YXBpLkVudmlyb25tZW50VXRpbHMubWFrZShxdWVyeS5hY2NvdW50LCBxdWVyeS5yZWdpb24pLCBNb2RlLkZvclJlYWRpbmcsIG9wdGlvbnMpKS5zZGsuZWxidjIoKTtcblxuICAgIGlmICghcXVlcnkubGlzdGVuZXJBcm4gJiYgIXF1ZXJ5LmxvYWRCYWxhbmNlckFybiAmJiAhcXVlcnkubG9hZEJhbGFuY2VyVGFncykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgbG9hZCBiYWxhbmNlciBsaXN0ZW5lciBxdWVyeSBtdXN0IHNwZWNpZnkgYXQgbGVhc3Qgb25lIG9mOiBgbGlzdGVuZXJBcm5gLCBgbG9hZEJhbGFuY2VyQXJuYCBvciBgbG9hZEJhbGFuY2VyVGFnc2AnKTtcbiAgICB9XG5cbiAgICByZXR1cm4gcXVlcnkubGlzdGVuZXJBcm4gPyB0aGlzLmdldExpc3RlbmVyQnlBcm4oZWxidjIsIHF1ZXJ5KSA6IHRoaXMuZ2V0TGlzdGVuZXJCeUZpbHRlcmluZ0xvYWRCYWxhbmNlcnMoZWxidjIsIHF1ZXJ5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb29rIHVwIGEgbGlzdGVuZXIgYnkgcXVlcnlpbmcgbGlzdGVuZXJzIGZvciBxdWVyeSdzIGxpc3RlbmVyIGFybiBhbmQgdGhlblxuICAgKiByZXNvbHZlIGl0cyBsb2FkIGJhbGFuY2VyIGZvciB0aGUgc2VjdXJpdHkgZ3JvdXAgaW5mb3JtYXRpb24uXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGdldExpc3RlbmVyQnlBcm4oZWxidjI6IEFXUy5FTEJ2MiwgcXVlcnk6IExvYWRCYWxhbmNlckxpc3RlbmVyUXVlcnkpIHtcbiAgICBjb25zdCBsaXN0ZW5lckFybiA9IHF1ZXJ5Lmxpc3RlbmVyQXJuITtcbiAgICBjb25zdCBsaXN0ZW5lclJlc3VsdHMgPSBhd2FpdCBlbGJ2Mi5kZXNjcmliZUxpc3RlbmVycyh7IExpc3RlbmVyQXJuczogW2xpc3RlbmVyQXJuXSB9KS5wcm9taXNlKCk7XG4gICAgY29uc3QgbGlzdGVuZXJzID0gKGxpc3RlbmVyUmVzdWx0cy5MaXN0ZW5lcnMgPz8gW10pO1xuXG4gICAgaWYgKGxpc3RlbmVycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbG9hZCBiYWxhbmNlciBsaXN0ZW5lcnMgZm91bmQgbWF0Y2hpbmcgYXJuICR7bGlzdGVuZXJBcm59YCk7XG4gICAgfVxuXG4gICAgY29uc3QgbGlzdGVuZXIgPSBsaXN0ZW5lcnNbMF07XG5cbiAgICBjb25zdCBsb2FkQmFsYW5jZXJzID0gYXdhaXQgZmluZExvYWRCYWxhbmNlcnMoZWxidjIsIHtcbiAgICAgIC4uLnF1ZXJ5LFxuICAgICAgbG9hZEJhbGFuY2VyQXJuOiBsaXN0ZW5lci5Mb2FkQmFsYW5jZXJBcm4hLFxuICAgIH0pO1xuXG4gICAgaWYgKGxvYWRCYWxhbmNlcnMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIGFzc29jaWF0ZWQgbG9hZCBiYWxhbmNlciBmb3VuZCBmb3IgbGlzdGVuZXIgYXJuICR7bGlzdGVuZXJBcm59YCk7XG4gICAgfVxuXG4gICAgY29uc3QgbG9hZEJhbGFuY2VyID0gbG9hZEJhbGFuY2Vyc1swXTtcblxuICAgIHJldHVybiB7XG4gICAgICBsaXN0ZW5lckFybjogbGlzdGVuZXIuTGlzdGVuZXJBcm4hLFxuICAgICAgbGlzdGVuZXJQb3J0OiBsaXN0ZW5lci5Qb3J0ISxcbiAgICAgIHNlY3VyaXR5R3JvdXBJZHM6IGxvYWRCYWxhbmNlci5TZWN1cml0eUdyb3VwcyA/PyBbXSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIExvb2sgdXAgYSBsaXN0ZW5lciBieSBzdGFydGluZyBmcm9tIGxvYWQgYmFsYW5jZXJzLCBmaWx0ZXJpbmcgb3V0XG4gICAqIHVubWF0Y2hpbmcgbG9hZCBiYWxhbmNlcnMsIGFuZCB0aGVuIGJ5IHF1ZXJ5aW5nIHRoZSBsaXN0ZW5lcnMgb2YgZWFjaCBsb2FkXG4gICAqIGJhbGFuY2VyIGFuZCBmaWx0ZXJpbmcgb3V0IHVubWF0Y2hpbmcgbGlzdGVuZXJzLlxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBnZXRMaXN0ZW5lckJ5RmlsdGVyaW5nTG9hZEJhbGFuY2VycyhlbGJ2MjogQVdTLkVMQnYyLCBhcmdzOiBMb2FkQmFsYW5jZXJMaXN0ZW5lclF1ZXJ5KSB7XG4gICAgLy8gRmluZCBtYXRjaGluZyBsb2FkIGJhbGFuY2Vyc1xuICAgIGNvbnN0IGxvYWRCYWxhbmNlcnMgPSBhd2FpdCBmaW5kTG9hZEJhbGFuY2VycyhlbGJ2MiwgYXJncyk7XG5cbiAgICBpZiAobG9hZEJhbGFuY2Vycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gYXNzb2NpYXRlZCBsb2FkIGJhbGFuY2VycyBmb3VuZCBmb3IgbG9hZCBiYWxhbmNlciBsaXN0ZW5lciBxdWVyeSAke0pTT04uc3RyaW5naWZ5KGFyZ3MpfWApO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmZpbmRNYXRjaGluZ0xpc3RlbmVyKGVsYnYyLCBsb2FkQmFsYW5jZXJzLCBhcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kcyB0aGUgbWF0Y2hpbmcgbGlzdGVuZXIgZnJvbSB0aGUgbGlzdCBvZiBsb2FkIGJhbGFuY2Vycy4gVGhpcyB3aWxsXG4gICAqIGVycm9yIHVubGVzcyB0aGVyZSBpcyBleGFjdGx5IG9uZSBtYXRjaCBzbyB0aGF0IHRoZSB1c2VyIGlzIHByb21wdGVkIHRvXG4gICAqIHByb3ZpZGUgbW9yZSBzcGVjaWZpYyBjcml0ZXJpYSByYXRoZXIgdGhhbiB1cyBwcm92aWRpbmcgYSBub25kZXRlcm1pbmlzdGljXG4gICAqIHJlc3VsdC5cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZmluZE1hdGNoaW5nTGlzdGVuZXIoZWxidjI6IEFXUy5FTEJ2MiwgbG9hZEJhbGFuY2VyczogQVdTLkVMQnYyLkxvYWRCYWxhbmNlcnMsIHF1ZXJ5OiBMb2FkQmFsYW5jZXJMaXN0ZW5lclF1ZXJ5KSB7XG4gICAgY29uc3QgbG9hZEJhbGFuY2Vyc0J5QXJuID0gaW5kZXhMb2FkQmFsYW5jZXJzQnlBcm4obG9hZEJhbGFuY2Vycyk7XG4gICAgY29uc3QgbG9hZEJhbGFuY2VyQXJucyA9IE9iamVjdC5rZXlzKGxvYWRCYWxhbmNlcnNCeUFybik7XG5cbiAgICBjb25zdCBtYXRjaGVzID0gQXJyYXk8Y3hhcGkuTG9hZEJhbGFuY2VyTGlzdGVuZXJDb250ZXh0UmVzcG9uc2U+KCk7XG5cbiAgICBmb3IgYXdhaXQgKGNvbnN0IGxpc3RlbmVyIG9mIGRlc2NyaWJlTGlzdGVuZXJzQnlMb2FkQmFsYW5jZXJBcm4oZWxidjIsIGxvYWRCYWxhbmNlckFybnMpKSB7XG4gICAgICBjb25zdCBsb2FkQmFsYW5jZXIgPSBsb2FkQmFsYW5jZXJzQnlBcm5bbGlzdGVuZXIuTG9hZEJhbGFuY2VyQXJuIV07XG4gICAgICBpZiAobGlzdGVuZXJNYXRjaGVzUXVlcnlGaWx0ZXIobGlzdGVuZXIsIHF1ZXJ5KSAmJiBsb2FkQmFsYW5jZXIpIHtcbiAgICAgICAgbWF0Y2hlcy5wdXNoKHtcbiAgICAgICAgICBsaXN0ZW5lckFybjogbGlzdGVuZXIuTGlzdGVuZXJBcm4hLFxuICAgICAgICAgIGxpc3RlbmVyUG9ydDogbGlzdGVuZXIuUG9ydCEsXG4gICAgICAgICAgc2VjdXJpdHlHcm91cElkczogbG9hZEJhbGFuY2VyLlNlY3VyaXR5R3JvdXBzID8/IFtdLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAobWF0Y2hlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbG9hZCBiYWxhbmNlciBsaXN0ZW5lcnMgZm91bmQgbWF0Y2hpbmcgJHtKU09OLnN0cmluZ2lmeShxdWVyeSl9YCk7XG4gICAgfVxuXG4gICAgaWYgKG1hdGNoZXMubGVuZ3RoID4gMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNdWx0aXBsZSBsb2FkIGJhbGFuY2VyIGxpc3RlbmVycyBmb3VuZCBtYXRjaGluZyAke0pTT04uc3RyaW5naWZ5KHF1ZXJ5KX0gLSBwbGVhc2UgcHJvdmlkZSBtb3JlIHNwZWNpZmljIGNyaXRlcmlhYCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hdGNoZXNbMF07XG4gIH1cbn1cblxuLyoqXG4gKiBGaW5kIGxvYWQgYmFsYW5jZXJzIGJ5IHRoZSBnaXZlbiBmaWx0ZXIgYXJncy5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gZmluZExvYWRCYWxhbmNlcnMoZWxidjI6IEFXUy5FTEJ2MiwgYXJnczogY3hzY2hlbWEuTG9hZEJhbGFuY2VyRmlsdGVyKSB7XG4gIC8vIExpc3QgbG9hZCBiYWxhbmNlcnNcbiAgbGV0IGxvYWRCYWxhbmNlcnMgPSBhd2FpdCBkZXNjcmliZUxvYWRCYWxhbmNlcnMoZWxidjIsIHtcbiAgICBMb2FkQmFsYW5jZXJBcm5zOiBhcmdzLmxvYWRCYWxhbmNlckFybiA/IFthcmdzLmxvYWRCYWxhbmNlckFybl0gOiB1bmRlZmluZWQsXG4gIH0pO1xuXG4gIC8vIEZpbHRlciBieSBsb2FkIGJhbGFuY2VyIHR5cGVcbiAgbG9hZEJhbGFuY2VycyA9IGxvYWRCYWxhbmNlcnMuZmlsdGVyKGxiID0+IGxiLlR5cGUgPT09IGFyZ3MubG9hZEJhbGFuY2VyVHlwZSk7XG5cbiAgLy8gRmlsdGVyIGJ5IGxvYWQgYmFsYW5jZXIgdGFnc1xuICBpZiAoYXJncy5sb2FkQmFsYW5jZXJUYWdzKSB7XG4gICAgbG9hZEJhbGFuY2VycyA9IGF3YWl0IGZpbHRlckxvYWRCYWxhbmNlcnNCeVRhZ3MoZWxidjIsIGxvYWRCYWxhbmNlcnMsIGFyZ3MubG9hZEJhbGFuY2VyVGFncyk7XG4gIH1cblxuICByZXR1cm4gbG9hZEJhbGFuY2Vycztcbn1cblxuLyoqXG4gKiBIZWxwZXIgdG8gcGFnaW5hdGUgb3ZlciBkZXNjcmliZUxvYWRCYWxhbmNlcnNcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZGVzY3JpYmVMb2FkQmFsYW5jZXJzKGVsYnYyOiBBV1MuRUxCdjIsIHJlcXVlc3Q6IEFXUy5FTEJ2Mi5EZXNjcmliZUxvYWRCYWxhbmNlcnNJbnB1dCkge1xuICBjb25zdCBsb2FkQmFsYW5jZXJzID0gQXJyYXk8QVdTLkVMQnYyLkxvYWRCYWxhbmNlcj4oKTtcbiAgbGV0IHBhZ2U6IEFXUy5FTEJ2Mi5EZXNjcmliZUxvYWRCYWxhbmNlcnNPdXRwdXQgfCB1bmRlZmluZWQ7XG4gIGRvIHtcbiAgICBwYWdlID0gYXdhaXQgZWxidjIuZGVzY3JpYmVMb2FkQmFsYW5jZXJzKHtcbiAgICAgIC4uLnJlcXVlc3QsXG4gICAgICBNYXJrZXI6IHBhZ2U/Lk5leHRNYXJrZXIsXG4gICAgfSkucHJvbWlzZSgpO1xuXG4gICAgbG9hZEJhbGFuY2Vycy5wdXNoKC4uLkFycmF5LmZyb20ocGFnZS5Mb2FkQmFsYW5jZXJzID8/IFtdKSk7XG4gIH0gd2hpbGUgKHBhZ2UuTmV4dE1hcmtlcik7XG5cbiAgcmV0dXJuIGxvYWRCYWxhbmNlcnM7XG59XG5cbi8qKlxuICogRGVzY3JpYmVzIHRoZSB0YWdzIG9mIGVhY2ggbG9hZCBiYWxhbmNlciBhbmQgcmV0dXJucyB0aGUgbG9hZCBiYWxhbmNlcnMgdGhhdFxuICogbWF0Y2ggdGhlIGdpdmVuIHRhZ3MuXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGZpbHRlckxvYWRCYWxhbmNlcnNCeVRhZ3MoZWxidjI6IEFXUy5FTEJ2MiwgbG9hZEJhbGFuY2VyczogQVdTLkVMQnYyLkxvYWRCYWxhbmNlcnMsIGxvYWRCYWxhbmNlclRhZ3M6IGN4c2NoZW1hLlRhZ1tdKSB7XG4gIGNvbnN0IGxvYWRCYWxhbmNlcnNCeUFybiA9IGluZGV4TG9hZEJhbGFuY2Vyc0J5QXJuKGxvYWRCYWxhbmNlcnMpO1xuICBjb25zdCBsb2FkQmFsYW5jZXJBcm5zID0gT2JqZWN0LmtleXMobG9hZEJhbGFuY2Vyc0J5QXJuKTtcbiAgY29uc3QgbWF0Y2hpbmdMb2FkQmFsYW5jZXJzID0gQXJyYXk8QVdTLkVMQnYyLkxvYWRCYWxhbmNlcj4oKTtcblxuICAvLyBDb25zdW1lIHRoZSBpdGVtcyBvZiBhc3luYyBnZW5lcmF0b3IuXG4gIGZvciBhd2FpdCAoY29uc3QgdGFncyBvZiBkZXNjcmliZVRhZ3MoZWxidjIsIGxvYWRCYWxhbmNlckFybnMpKSB7XG4gICAgaWYgKHRhZ3NNYXRjaCh0YWdzLCBsb2FkQmFsYW5jZXJUYWdzKSAmJiBsb2FkQmFsYW5jZXJzQnlBcm5bdGFncy5SZXNvdXJjZUFybiFdKSB7XG4gICAgICBtYXRjaGluZ0xvYWRCYWxhbmNlcnMucHVzaChsb2FkQmFsYW5jZXJzQnlBcm5bdGFncy5SZXNvdXJjZUFybiFdKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gbWF0Y2hpbmdMb2FkQmFsYW5jZXJzO1xufVxuXG4vKipcbiAqIEdlbmVyYXRvciBmdW5jdGlvbiB0aGF0IHlpZWxkcyBgVGFnRGVzY3JpcHRpb25zYC4gVGhlIEFQSSBkb2Vzbid0IHN1cHBvcnRcbiAqIHBhZ2luYXRpb24sIHNvIHRoaXMgZ2VuZXJhdG9yIGJyZWFrcyB0aGUgcmVzb3VyY2UgbGlzdCBpbnRvIGNodW5rcyBhbmQgaXNzdWVzXG4gKiB0aGUgYXBwcm9wcmlhdGUgcmVxdWVzdHMsIHlpZWxkaW5nIGVhY2ggdGFnIGRlc2NyaXB0aW9uIGFzIGl0IHJlY2VpdmVzIGl0LlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogZGVzY3JpYmVUYWdzKGVsYnYyOiBBV1MuRUxCdjIsIHJlc291cmNlQXJuczogc3RyaW5nW10pIHtcbiAgLy8gTWF4IG9mIDIwIHJlc291cmNlIGFybnMgcGVyIHJlcXVlc3QuXG4gIGNvbnN0IGNodW5rU2l6ZSA9IDIwO1xuICBmb3IgKGxldCBpID0gMDsgaSA8IHJlc291cmNlQXJucy5sZW5ndGg7IGkgKz0gY2h1bmtTaXplKSB7XG4gICAgY29uc3QgY2h1bmsgPSByZXNvdXJjZUFybnMuc2xpY2UoaSwgTWF0aC5taW4oaSArIGNodW5rU2l6ZSwgcmVzb3VyY2VBcm5zLmxlbmd0aCkpO1xuICAgIGNvbnN0IGNodW5rVGFncyA9IGF3YWl0IGVsYnYyLmRlc2NyaWJlVGFncyh7XG4gICAgICBSZXNvdXJjZUFybnM6IGNodW5rLFxuICAgIH0pLnByb21pc2UoKTtcblxuICAgIGZvciAoY29uc3QgdGFnIG9mIGNodW5rVGFncy5UYWdEZXNjcmlwdGlvbnMgPz8gW10pIHtcbiAgICAgIHlpZWxkIHRhZztcbiAgICB9XG4gIH1cbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIGlmIHRoZSBnaXZlbiBUYWdEZXNjcmlwdGlvbiBtYXRjaGVzIHRoZSByZXF1aXJlZCB0YWdzLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0YWdzTWF0Y2godGFnRGVzY3JpcHRpb246IEFXUy5FTEJ2Mi5UYWdEZXNjcmlwdGlvbiwgcmVxdWlyZWRUYWdzOiBjeHNjaGVtYS5UYWdbXSkge1xuICBjb25zdCB0YWdzQnlOYW1lOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmcgfCB1bmRlZmluZWQ+ID0ge307XG4gIGZvciAoY29uc3QgdGFnIG9mIHRhZ0Rlc2NyaXB0aW9uLlRhZ3MgPz8gW10pIHtcbiAgICB0YWdzQnlOYW1lW3RhZy5LZXkhXSA9IHRhZy5WYWx1ZTtcbiAgfVxuXG4gIGZvciAoY29uc3QgdGFnIG9mIHJlcXVpcmVkVGFncykge1xuICAgIGlmICh0YWdzQnlOYW1lW3RhZy5rZXldICE9PSB0YWcudmFsdWUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdHJ1ZTtcbn1cblxuLyoqXG4gKiBBc3luYyBnZW5lcmF0b3IgdGhhdCBwcm9kdWNlcyBsaXN0ZW5lciBkZXNjcmlwdGlvbnMgYnkgdHJhdmVyc2luZyB0aGVcbiAqIHBhZ2luYXRpb24uIEJlY2F1c2UgZGVzY3JpYmVMaXN0ZW5lcnMgb25seSBsZXRzIHlvdSBzZWFyY2ggYnkgb25lIGxvYWRcbiAqIGJhbGFuY2VyIGFybiBhdCBhIHRpbWUsIHdlIHJlcXVlc3QgdGhlbSBpbmRpdmlkdWFsbHkgYW5kIHlpZWxkIHRoZSBsaXN0ZW5lcnNcbiAqIGFzIHRoZXkgY29tZSBpbi5cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGRlc2NyaWJlTGlzdGVuZXJzQnlMb2FkQmFsYW5jZXJBcm4oZWxidjI6IEFXUy5FTEJ2MiwgbG9hZEJhbGFuY2VyQXJuczogc3RyaW5nW10pIHtcbiAgZm9yIChjb25zdCBsb2FkQmFsYW5jZXJBcm4gb2YgbG9hZEJhbGFuY2VyQXJucykge1xuICAgIGxldCBwYWdlOiBBV1MuRUxCdjIuRGVzY3JpYmVMaXN0ZW5lcnNPdXRwdXQgfCB1bmRlZmluZWQ7XG4gICAgZG8ge1xuICAgICAgcGFnZSA9IGF3YWl0IGVsYnYyLmRlc2NyaWJlTGlzdGVuZXJzKHtcbiAgICAgICAgTG9hZEJhbGFuY2VyQXJuOiBsb2FkQmFsYW5jZXJBcm4sXG4gICAgICAgIE1hcmtlcjogcGFnZT8uTmV4dE1hcmtlcixcbiAgICAgIH0pLnByb21pc2UoKTtcblxuICAgICAgZm9yIChjb25zdCBsaXN0ZW5lciBvZiBwYWdlLkxpc3RlbmVycyA/PyBbXSkge1xuICAgICAgICB5aWVsZCBsaXN0ZW5lcjtcbiAgICAgIH1cbiAgICB9IHdoaWxlIChwYWdlLk5leHRNYXJrZXIpO1xuICB9XG59XG5cbi8qKlxuICogRGV0ZXJtaW5lcyBpZiBhIGxpc3RlbmVyIG1hdGNoZXMgdGhlIHF1ZXJ5IGZpbHRlcnMuXG4gKi9cbmZ1bmN0aW9uIGxpc3RlbmVyTWF0Y2hlc1F1ZXJ5RmlsdGVyKGxpc3RlbmVyOiBBV1MuRUxCdjIuTGlzdGVuZXIsIGFyZ3M6IGN4c2NoZW1hLkxvYWRCYWxhbmNlckxpc3RlbmVyQ29udGV4dFF1ZXJ5KTogYm9vbGVhbiB7XG4gIGlmIChhcmdzLmxpc3RlbmVyUG9ydCAmJiBsaXN0ZW5lci5Qb3J0ICE9PSBhcmdzLmxpc3RlbmVyUG9ydCkge1xuICAgIC8vIE5vIG1hdGNoLlxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlmIChhcmdzLmxpc3RlbmVyUHJvdG9jb2wgJiYgbGlzdGVuZXIuUHJvdG9jb2wgIT09IGFyZ3MubGlzdGVuZXJQcm90b2NvbCkge1xuICAgIC8vIE5vIG1hdGNoLlxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIFJldHVybnMgYSByZWNvcmQgb2YgbG9hZCBiYWxhbmNlcnMgaW5kZXhlZCBieSB0aGVpciBhcm5zXG4gKi9cbmZ1bmN0aW9uIGluZGV4TG9hZEJhbGFuY2Vyc0J5QXJuKGxvYWRCYWxhbmNlcnM6IEFXUy5FTEJ2Mi5Mb2FkQmFsYW5jZXJbXSk6IFJlY29yZDxzdHJpbmcsIEFXUy5FTEJ2Mi5Mb2FkQmFsYW5jZXI+IHtcbiAgY29uc3QgbG9hZEJhbGFuY2Vyc0J5QXJuOiBSZWNvcmQ8c3RyaW5nLCBBV1MuRUxCdjIuTG9hZEJhbGFuY2VyPiA9IHt9O1xuXG4gIGZvciAoY29uc3QgbG9hZEJhbGFuY2VyIG9mIGxvYWRCYWxhbmNlcnMpIHtcbiAgICBsb2FkQmFsYW5jZXJzQnlBcm5bbG9hZEJhbGFuY2VyLkxvYWRCYWxhbmNlckFybiFdID0gbG9hZEJhbGFuY2VyO1xuICB9XG5cbiAgcmV0dXJuIGxvYWRCYWxhbmNlcnNCeUFybjtcbn1cbiJdfQ==
264
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1iYWxhbmNlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJsb2FkLWJhbGFuY2Vycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBeUM7QUFFekMsNkRBQW1EO0FBSW5EOztHQUVHO0FBQ0gsTUFBYSxpQ0FBaUM7SUFDNUMsWUFBNkIsR0FBZ0I7UUFBaEIsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUM3QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxLQUF3Qzs7UUFDckQsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsS0FBSyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3ZELE1BQU0sS0FBSyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLGtCQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRTlJLElBQUksQ0FBQyxLQUFLLENBQUMsZUFBZSxJQUFJLENBQUMsS0FBSyxDQUFDLGdCQUFnQixFQUFFO1lBQ3JELE1BQU0sSUFBSSxLQUFLLENBQUMsNEZBQTRGLENBQUMsQ0FBQztTQUMvRztRQUVELE1BQU0sYUFBYSxHQUFHLE1BQU0saUJBQWlCLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTVELElBQUksYUFBYSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDOUIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDOUU7UUFFRCxJQUFJLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLElBQUksQ0FB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LEVBQUUsQ0FBQztJQUV0RSxLQUFLLE1BQU0sWUFBWSxJQUFJLGFBQWEsRUFBRTtRQUN4QyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsZUFBZ0IsQ0FBQyxHQUFHLFlBQVksQ0FBQztLQUNsRTtJQUVELE9BQU8sa0JBQWtCLENBQUM7QUFDNUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGN4c2NoZW1hIGZyb20gJ0Bhd3MtY2RrL2Nsb3VkLWFzc2VtYmx5LXNjaGVtYSc7XG5pbXBvcnQgKiBhcyBjeGFwaSBmcm9tICdAYXdzLWNkay9jeC1hcGknO1xuaW1wb3J0ICogYXMgQVdTIGZyb20gJ2F3cy1zZGsnO1xuaW1wb3J0IHsgTW9kZSB9IGZyb20gJy4uL2FwaS9hd3MtYXV0aC9jcmVkZW50aWFscyc7XG5pbXBvcnQgeyBTZGtQcm92aWRlciB9IGZyb20gJy4uL2FwaS9hd3MtYXV0aC9zZGstcHJvdmlkZXInO1xuaW1wb3J0IHsgQ29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9wcm92aWRlcic7XG5cbi8qKlxuICogUHJvdmlkZXMgbG9hZCBiYWxhbmNlciBjb250ZXh0IGluZm9ybWF0aW9uLlxuICovXG5leHBvcnQgY2xhc3MgTG9hZEJhbGFuY2VyQ29udGV4dFByb3ZpZGVyUGx1Z2luIGltcGxlbWVudHMgQ29udGV4dFByb3ZpZGVyUGx1Z2luIHtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBhd3M6IFNka1Byb3ZpZGVyKSB7XG4gIH1cblxuICBhc3luYyBnZXRWYWx1ZShxdWVyeTogY3hzY2hlbWEuTG9hZEJhbGFuY2VyQ29udGV4dFF1ZXJ5KTogUHJvbWlzZTxjeGFwaS5Mb2FkQmFsYW5jZXJDb250ZXh0UmVzcG9uc2U+IHtcbiAgICBjb25zdCBvcHRpb25zID0geyBhc3N1bWVSb2xlQXJuOiBxdWVyeS5sb29rdXBSb2xlQXJuIH07XG4gICAgY29uc3QgZWxidjIgPSAoYXdhaXQgdGhpcy5hd3MuZm9yRW52aXJvbm1lbnQoY3hhcGkuRW52aXJvbm1lbnRVdGlscy5tYWtlKHF1ZXJ5LmFjY291bnQsIHF1ZXJ5LnJlZ2lvbiksIE1vZGUuRm9yUmVhZGluZywgb3B0aW9ucykpLnNkay5lbGJ2MigpO1xuXG4gICAgaWYgKCFxdWVyeS5sb2FkQmFsYW5jZXJBcm4gJiYgIXF1ZXJ5LmxvYWRCYWxhbmNlclRhZ3MpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGhlIGxvYWQgYmFsYW5jZXIgbG9va3VwIHF1ZXJ5IG11c3Qgc3BlY2lmeSBlaXRoZXIgYGxvYWRCYWxhbmNlckFybmAgb3IgYGxvYWRCYWxhbmNlclRhZ3NgJyk7XG4gICAgfVxuXG4gICAgY29uc3QgbG9hZEJhbGFuY2VycyA9IGF3YWl0IGZpbmRMb2FkQmFsYW5jZXJzKGVsYnYyLCBxdWVyeSk7XG5cbiAgICBpZiAobG9hZEJhbGFuY2Vycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gbG9hZCBiYWxhbmNlcnMgZm91bmQgbWF0Y2hpbmcgJHtKU09OLnN0cmluZ2lmeShxdWVyeSl9YCk7XG4gICAgfVxuXG4gICAgaWYgKGxvYWRCYWxhbmNlcnMubGVuZ3RoID4gMSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBNdWx0aXBsZSBsb2FkIGJhbGFuY2VycyBmb3VuZCBtYXRjaGluZyAke0pTT04uc3RyaW5naWZ5KHF1ZXJ5KX0gLSBwbGVhc2UgcHJvdmlkZSBtb3JlIHNwZWNpZmljIGNyaXRlcmlhYCk7XG4gICAgfVxuXG4gICAgY29uc3QgbG9hZEJhbGFuY2VyID0gbG9hZEJhbGFuY2Vyc1swXTtcblxuICAgIGNvbnN0IGlwQWRkcmVzc1R5cGUgPSBsb2FkQmFsYW5jZXIuSXBBZGRyZXNzVHlwZSA9PT0gJ2lwdjQnXG4gICAgICA/IGN4YXBpLkxvYWRCYWxhbmNlcklwQWRkcmVzc1R5cGUuSVBWNFxuICAgICAgOiBjeGFwaS5Mb2FkQmFsYW5jZXJJcEFkZHJlc3NUeXBlLkRVQUxfU1RBQ0s7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbG9hZEJhbGFuY2VyQXJuOiBsb2FkQmFsYW5jZXIuTG9hZEJhbGFuY2VyQXJuISxcbiAgICAgIGxvYWRCYWxhbmNlckNhbm9uaWNhbEhvc3RlZFpvbmVJZDogbG9hZEJhbGFuY2VyLkNhbm9uaWNhbEhvc3RlZFpvbmVJZCEsXG4gICAgICBsb2FkQmFsYW5jZXJEbnNOYW1lOiBsb2FkQmFsYW5jZXIuRE5TTmFtZSEsXG4gICAgICB2cGNJZDogbG9hZEJhbGFuY2VyLlZwY0lkISxcbiAgICAgIHNlY3VyaXR5R3JvdXBJZHM6IGxvYWRCYWxhbmNlci5TZWN1cml0eUdyb3VwcyA/PyBbXSxcbiAgICAgIGlwQWRkcmVzc1R5cGU6IGlwQWRkcmVzc1R5cGUsXG4gICAgfTtcbiAgfVxufVxuXG4vLyBEZWNyZWFzZXMgbGluZSBsZW5ndGhcbnR5cGUgTG9hZEJhbGFuY2VyTGlzdGVuZXJRdWVyeSA9IGN4c2NoZW1hLkxvYWRCYWxhbmNlckxpc3RlbmVyQ29udGV4dFF1ZXJ5O1xudHlwZSBMb2FkQmFsYW5jZXJMaXN0ZW5lclJlc3BvbnNlID0gY3hhcGkuTG9hZEJhbGFuY2VyTGlzdGVuZXJDb250ZXh0UmVzcG9uc2U7XG5cbi8qKlxuICogUHJvdmlkZXMgbG9hZCBiYWxhbmNlciBsaXN0ZW5lciBjb250ZXh0IGluZm9ybWF0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2FkQmFsYW5jZXJMaXN0ZW5lckNvbnRleHRQcm92aWRlclBsdWdpbiBpbXBsZW1lbnRzIENvbnRleHRQcm92aWRlclBsdWdpbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYXdzOiBTZGtQcm92aWRlcikge1xuICB9XG5cbiAgYXN5bmMgZ2V0VmFsdWUocXVlcnk6IExvYWRCYWxhbmNlckxpc3RlbmVyUXVlcnkpOiBQcm9taXNlPExvYWRCYWxhbmNlckxpc3RlbmVyUmVzcG9uc2U+IHtcbiAgICBjb25zdCBvcHRpb25zID0geyBhc3N1bWVSb2xlQXJuOiBxdWVyeS5sb29rdXBSb2xlQXJuIH07XG4gICAgY29uc3QgZWxidjIgPSAoYXdhaXQgdGhpcy5hd3MuZm9yRW52aXJvbm1lbnQoY3hhcGkuRW52aXJvbm1lbnRVdGlscy5tYWtlKHF1ZXJ5LmFjY291bnQsIHF1ZXJ5LnJlZ2lvbiksIE1vZGUuRm9yUmVhZGluZywgb3B0aW9ucykpLnNkay5lbGJ2MigpO1xuXG4gICAgaWYgKCFxdWVyeS5saXN0ZW5lckFybiAmJiAhcXVlcnkubG9hZEJhbGFuY2VyQXJuICYmICFxdWVyeS5sb2FkQmFsYW5jZXJUYWdzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBsb2FkIGJhbGFuY2VyIGxpc3RlbmVyIHF1ZXJ5IG11c3Qgc3BlY2lmeSBhdCBsZWFzdCBvbmUgb2Y6IGBsaXN0ZW5lckFybmAsIGBsb2FkQmFsYW5jZXJBcm5gIG9yIGBsb2FkQmFsYW5jZXJUYWdzYCcpO1xuICAgIH1cblxuICAgIHJldHVybiBxdWVyeS5saXN0ZW5lckFybiA/IHRoaXMuZ2V0TGlzdGVuZXJCeUFybihlbGJ2MiwgcXVlcnkpIDogdGhpcy5nZXRMaXN0ZW5lckJ5RmlsdGVyaW5nTG9hZEJhbGFuY2VycyhlbGJ2MiwgcXVlcnkpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvb2sgdXAgYSBsaXN0ZW5lciBieSBxdWVyeWluZyBsaXN0ZW5lcnMgZm9yIHF1ZXJ5J3MgbGlzdGVuZXIgYXJuIGFuZCB0aGVuXG4gICAqIHJlc29sdmUgaXRzIGxvYWQgYmFsYW5jZXIgZm9yIHRoZSBzZWN1cml0eSBncm91cCBpbmZvcm1hdGlvbi5cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZ2V0TGlzdGVuZXJCeUFybihlbGJ2MjogQVdTLkVMQnYyLCBxdWVyeTogTG9hZEJhbGFuY2VyTGlzdGVuZXJRdWVyeSkge1xuICAgIGNvbnN0IGxpc3RlbmVyQXJuID0gcXVlcnkubGlzdGVuZXJBcm4hO1xuICAgIGNvbnN0IGxpc3RlbmVyUmVzdWx0cyA9IGF3YWl0IGVsYnYyLmRlc2NyaWJlTGlzdGVuZXJzKHsgTGlzdGVuZXJBcm5zOiBbbGlzdGVuZXJBcm5dIH0pLnByb21pc2UoKTtcbiAgICBjb25zdCBsaXN0ZW5lcnMgPSAobGlzdGVuZXJSZXN1bHRzLkxpc3RlbmVycyA/PyBbXSk7XG5cbiAgICBpZiAobGlzdGVuZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBsb2FkIGJhbGFuY2VyIGxpc3RlbmVycyBmb3VuZCBtYXRjaGluZyBhcm4gJHtsaXN0ZW5lckFybn1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBsaXN0ZW5lciA9IGxpc3RlbmVyc1swXTtcblxuICAgIGNvbnN0IGxvYWRCYWxhbmNlcnMgPSBhd2FpdCBmaW5kTG9hZEJhbGFuY2VycyhlbGJ2Miwge1xuICAgICAgLi4ucXVlcnksXG4gICAgICBsb2FkQmFsYW5jZXJBcm46IGxpc3RlbmVyLkxvYWRCYWxhbmNlckFybiEsXG4gICAgfSk7XG5cbiAgICBpZiAobG9hZEJhbGFuY2Vycy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gYXNzb2NpYXRlZCBsb2FkIGJhbGFuY2VyIGZvdW5kIGZvciBsaXN0ZW5lciBhcm4gJHtsaXN0ZW5lckFybn1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBsb2FkQmFsYW5jZXIgPSBsb2FkQmFsYW5jZXJzWzBdO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGxpc3RlbmVyQXJuOiBsaXN0ZW5lci5MaXN0ZW5lckFybiEsXG4gICAgICBsaXN0ZW5lclBvcnQ6IGxpc3RlbmVyLlBvcnQhLFxuICAgICAgc2VjdXJpdHlHcm91cElkczogbG9hZEJhbGFuY2VyLlNlY3VyaXR5R3JvdXBzID8/IFtdLFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogTG9vayB1cCBhIGxpc3RlbmVyIGJ5IHN0YXJ0aW5nIGZyb20gbG9hZCBiYWxhbmNlcnMsIGZpbHRlcmluZyBvdXRcbiAgICogdW5tYXRjaGluZyBsb2FkIGJhbGFuY2VycywgYW5kIHRoZW4gYnkgcXVlcnlpbmcgdGhlIGxpc3RlbmVycyBvZiBlYWNoIGxvYWRcbiAgICogYmFsYW5jZXIgYW5kIGZpbHRlcmluZyBvdXQgdW5tYXRjaGluZyBsaXN0ZW5lcnMuXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGdldExpc3RlbmVyQnlGaWx0ZXJpbmdMb2FkQmFsYW5jZXJzKGVsYnYyOiBBV1MuRUxCdjIsIGFyZ3M6IExvYWRCYWxhbmNlckxpc3RlbmVyUXVlcnkpIHtcbiAgICAvLyBGaW5kIG1hdGNoaW5nIGxvYWQgYmFsYW5jZXJzXG4gICAgY29uc3QgbG9hZEJhbGFuY2VycyA9IGF3YWl0IGZpbmRMb2FkQmFsYW5jZXJzKGVsYnYyLCBhcmdzKTtcblxuICAgIGlmIChsb2FkQmFsYW5jZXJzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBhc3NvY2lhdGVkIGxvYWQgYmFsYW5jZXJzIGZvdW5kIGZvciBsb2FkIGJhbGFuY2VyIGxpc3RlbmVyIHF1ZXJ5ICR7SlNPTi5zdHJpbmdpZnkoYXJncyl9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZmluZE1hdGNoaW5nTGlzdGVuZXIoZWxidjIsIGxvYWRCYWxhbmNlcnMsIGFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmRzIHRoZSBtYXRjaGluZyBsaXN0ZW5lciBmcm9tIHRoZSBsaXN0IG9mIGxvYWQgYmFsYW5jZXJzLiBUaGlzIHdpbGxcbiAgICogZXJyb3IgdW5sZXNzIHRoZXJlIGlzIGV4YWN0bHkgb25lIG1hdGNoIHNvIHRoYXQgdGhlIHVzZXIgaXMgcHJvbXB0ZWQgdG9cbiAgICogcHJvdmlkZSBtb3JlIHNwZWNpZmljIGNyaXRlcmlhIHJhdGhlciB0aGFuIHVzIHByb3ZpZGluZyBhIG5vbmRldGVybWluaXN0aWNcbiAgICogcmVzdWx0LlxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBmaW5kTWF0Y2hpbmdMaXN0ZW5lcihlbGJ2MjogQVdTLkVMQnYyLCBsb2FkQmFsYW5jZXJzOiBBV1MuRUxCdjIuTG9hZEJhbGFuY2VycywgcXVlcnk6IExvYWRCYWxhbmNlckxpc3RlbmVyUXVlcnkpIHtcbiAgICBjb25zdCBsb2FkQmFsYW5jZXJzQnlBcm4gPSBpbmRleExvYWRCYWxhbmNlcnNCeUFybihsb2FkQmFsYW5jZXJzKTtcbiAgICBjb25zdCBsb2FkQmFsYW5jZXJBcm5zID0gT2JqZWN0LmtleXMobG9hZEJhbGFuY2Vyc0J5QXJuKTtcblxuICAgIGNvbnN0IG1hdGNoZXMgPSBBcnJheTxjeGFwaS5Mb2FkQmFsYW5jZXJMaXN0ZW5lckNvbnRleHRSZXNwb25zZT4oKTtcblxuICAgIGZvciBhd2FpdCAoY29uc3QgbGlzdGVuZXIgb2YgZGVzY3JpYmVMaXN0ZW5lcnNCeUxvYWRCYWxhbmNlckFybihlbGJ2MiwgbG9hZEJhbGFuY2VyQXJucykpIHtcbiAgICAgIGNvbnN0IGxvYWRCYWxhbmNlciA9IGxvYWRCYWxhbmNlcnNCeUFybltsaXN0ZW5lci5Mb2FkQmFsYW5jZXJBcm4hXTtcbiAgICAgIGlmIChsaXN0ZW5lck1hdGNoZXNRdWVyeUZpbHRlcihsaXN0ZW5lciwgcXVlcnkpICYmIGxvYWRCYWxhbmNlcikge1xuICAgICAgICBtYXRjaGVzLnB1c2goe1xuICAgICAgICAgIGxpc3RlbmVyQXJuOiBsaXN0ZW5lci5MaXN0ZW5lckFybiEsXG4gICAgICAgICAgbGlzdGVuZXJQb3J0OiBsaXN0ZW5lci5Qb3J0ISxcbiAgICAgICAgICBzZWN1cml0eUdyb3VwSWRzOiBsb2FkQmFsYW5jZXIuU2VjdXJpdHlHcm91cHMgPz8gW10sXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChtYXRjaGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBObyBsb2FkIGJhbGFuY2VyIGxpc3RlbmVycyBmb3VuZCBtYXRjaGluZyAke0pTT04uc3RyaW5naWZ5KHF1ZXJ5KX1gKTtcbiAgICB9XG5cbiAgICBpZiAobWF0Y2hlcy5sZW5ndGggPiAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE11bHRpcGxlIGxvYWQgYmFsYW5jZXIgbGlzdGVuZXJzIGZvdW5kIG1hdGNoaW5nICR7SlNPTi5zdHJpbmdpZnkocXVlcnkpfSAtIHBsZWFzZSBwcm92aWRlIG1vcmUgc3BlY2lmaWMgY3JpdGVyaWFgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbWF0Y2hlc1swXTtcbiAgfVxufVxuXG4vKipcbiAqIEZpbmQgbG9hZCBiYWxhbmNlcnMgYnkgdGhlIGdpdmVuIGZpbHRlciBhcmdzLlxuICovXG5hc3luYyBmdW5jdGlvbiBmaW5kTG9hZEJhbGFuY2VycyhlbGJ2MjogQVdTLkVMQnYyLCBhcmdzOiBjeHNjaGVtYS5Mb2FkQmFsYW5jZXJGaWx0ZXIpIHtcbiAgLy8gTGlzdCBsb2FkIGJhbGFuY2Vyc1xuICBsZXQgbG9hZEJhbGFuY2VycyA9IGF3YWl0IGRlc2NyaWJlTG9hZEJhbGFuY2VycyhlbGJ2Miwge1xuICAgIExvYWRCYWxhbmNlckFybnM6IGFyZ3MubG9hZEJhbGFuY2VyQXJuID8gW2FyZ3MubG9hZEJhbGFuY2VyQXJuXSA6IHVuZGVmaW5lZCxcbiAgfSk7XG5cbiAgLy8gRmlsdGVyIGJ5IGxvYWQgYmFsYW5jZXIgdHlwZVxuICBsb2FkQmFsYW5jZXJzID0gbG9hZEJhbGFuY2Vycy5maWx0ZXIobGIgPT4gbGIuVHlwZSA9PT0gYXJncy5sb2FkQmFsYW5jZXJUeXBlKTtcblxuICAvLyBGaWx0ZXIgYnkgbG9hZCBiYWxhbmNlciB0YWdzXG4gIGlmIChhcmdzLmxvYWRCYWxhbmNlclRhZ3MpIHtcbiAgICBsb2FkQmFsYW5jZXJzID0gYXdhaXQgZmlsdGVyTG9hZEJhbGFuY2Vyc0J5VGFncyhlbGJ2MiwgbG9hZEJhbGFuY2VycywgYXJncy5sb2FkQmFsYW5jZXJUYWdzKTtcbiAgfVxuXG4gIHJldHVybiBsb2FkQmFsYW5jZXJzO1xufVxuXG4vKipcbiAqIEhlbHBlciB0byBwYWdpbmF0ZSBvdmVyIGRlc2NyaWJlTG9hZEJhbGFuY2Vyc1xuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkZXNjcmliZUxvYWRCYWxhbmNlcnMoZWxidjI6IEFXUy5FTEJ2MiwgcmVxdWVzdDogQVdTLkVMQnYyLkRlc2NyaWJlTG9hZEJhbGFuY2Vyc0lucHV0KSB7XG4gIGNvbnN0IGxvYWRCYWxhbmNlcnMgPSBBcnJheTxBV1MuRUxCdjIuTG9hZEJhbGFuY2VyPigpO1xuICBsZXQgcGFnZTogQVdTLkVMQnYyLkRlc2NyaWJlTG9hZEJhbGFuY2Vyc091dHB1dCB8IHVuZGVmaW5lZDtcbiAgZG8ge1xuICAgIHBhZ2UgPSBhd2FpdCBlbGJ2Mi5kZXNjcmliZUxvYWRCYWxhbmNlcnMoe1xuICAgICAgLi4ucmVxdWVzdCxcbiAgICAgIE1hcmtlcjogcGFnZT8uTmV4dE1hcmtlcixcbiAgICB9KS5wcm9taXNlKCk7XG5cbiAgICBsb2FkQmFsYW5jZXJzLnB1c2goLi4uQXJyYXkuZnJvbShwYWdlLkxvYWRCYWxhbmNlcnMgPz8gW10pKTtcbiAgfSB3aGlsZSAocGFnZS5OZXh0TWFya2VyKTtcblxuICByZXR1cm4gbG9hZEJhbGFuY2Vycztcbn1cblxuLyoqXG4gKiBEZXNjcmliZXMgdGhlIHRhZ3Mgb2YgZWFjaCBsb2FkIGJhbGFuY2VyIGFuZCByZXR1cm5zIHRoZSBsb2FkIGJhbGFuY2VycyB0aGF0XG4gKiBtYXRjaCB0aGUgZ2l2ZW4gdGFncy5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gZmlsdGVyTG9hZEJhbGFuY2Vyc0J5VGFncyhlbGJ2MjogQVdTLkVMQnYyLCBsb2FkQmFsYW5jZXJzOiBBV1MuRUxCdjIuTG9hZEJhbGFuY2VycywgbG9hZEJhbGFuY2VyVGFnczogY3hzY2hlbWEuVGFnW10pIHtcbiAgY29uc3QgbG9hZEJhbGFuY2Vyc0J5QXJuID0gaW5kZXhMb2FkQmFsYW5jZXJzQnlBcm4obG9hZEJhbGFuY2Vycyk7XG4gIGNvbnN0IGxvYWRCYWxhbmNlckFybnMgPSBPYmplY3Qua2V5cyhsb2FkQmFsYW5jZXJzQnlBcm4pO1xuICBjb25zdCBtYXRjaGluZ0xvYWRCYWxhbmNlcnMgPSBBcnJheTxBV1MuRUxCdjIuTG9hZEJhbGFuY2VyPigpO1xuXG4gIC8vIENvbnN1bWUgdGhlIGl0ZW1zIG9mIGFzeW5jIGdlbmVyYXRvci5cbiAgZm9yIGF3YWl0IChjb25zdCB0YWdzIG9mIGRlc2NyaWJlVGFncyhlbGJ2MiwgbG9hZEJhbGFuY2VyQXJucykpIHtcbiAgICBpZiAodGFnc01hdGNoKHRhZ3MsIGxvYWRCYWxhbmNlclRhZ3MpICYmIGxvYWRCYWxhbmNlcnNCeUFyblt0YWdzLlJlc291cmNlQXJuIV0pIHtcbiAgICAgIG1hdGNoaW5nTG9hZEJhbGFuY2Vycy5wdXNoKGxvYWRCYWxhbmNlcnNCeUFyblt0YWdzLlJlc291cmNlQXJuIV0pO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiBtYXRjaGluZ0xvYWRCYWxhbmNlcnM7XG59XG5cbi8qKlxuICogR2VuZXJhdG9yIGZ1bmN0aW9uIHRoYXQgeWllbGRzIGBUYWdEZXNjcmlwdGlvbnNgLiBUaGUgQVBJIGRvZXNuJ3Qgc3VwcG9ydFxuICogcGFnaW5hdGlvbiwgc28gdGhpcyBnZW5lcmF0b3IgYnJlYWtzIHRoZSByZXNvdXJjZSBsaXN0IGludG8gY2h1bmtzIGFuZCBpc3N1ZXNcbiAqIHRoZSBhcHByb3ByaWF0ZSByZXF1ZXN0cywgeWllbGRpbmcgZWFjaCB0YWcgZGVzY3JpcHRpb24gYXMgaXQgcmVjZWl2ZXMgaXQuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uKiBkZXNjcmliZVRhZ3MoZWxidjI6IEFXUy5FTEJ2MiwgcmVzb3VyY2VBcm5zOiBzdHJpbmdbXSkge1xuICAvLyBNYXggb2YgMjAgcmVzb3VyY2UgYXJucyBwZXIgcmVxdWVzdC5cbiAgY29uc3QgY2h1bmtTaXplID0gMjA7XG4gIGZvciAobGV0IGkgPSAwOyBpIDwgcmVzb3VyY2VBcm5zLmxlbmd0aDsgaSArPSBjaHVua1NpemUpIHtcbiAgICBjb25zdCBjaHVuayA9IHJlc291cmNlQXJucy5zbGljZShpLCBNYXRoLm1pbihpICsgY2h1bmtTaXplLCByZXNvdXJjZUFybnMubGVuZ3RoKSk7XG4gICAgY29uc3QgY2h1bmtUYWdzID0gYXdhaXQgZWxidjIuZGVzY3JpYmVUYWdzKHtcbiAgICAgIFJlc291cmNlQXJuczogY2h1bmssXG4gICAgfSkucHJvbWlzZSgpO1xuXG4gICAgZm9yIChjb25zdCB0YWcgb2YgY2h1bmtUYWdzLlRhZ0Rlc2NyaXB0aW9ucyA/PyBbXSkge1xuICAgICAgeWllbGQgdGFnO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIERldGVybWluZXMgaWYgdGhlIGdpdmVuIFRhZ0Rlc2NyaXB0aW9uIG1hdGNoZXMgdGhlIHJlcXVpcmVkIHRhZ3MuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhZ3NNYXRjaCh0YWdEZXNjcmlwdGlvbjogQVdTLkVMQnYyLlRhZ0Rlc2NyaXB0aW9uLCByZXF1aXJlZFRhZ3M6IGN4c2NoZW1hLlRhZ1tdKSB7XG4gIGNvbnN0IHRhZ3NCeU5hbWU6IFJlY29yZDxzdHJpbmcsIHN0cmluZyB8IHVuZGVmaW5lZD4gPSB7fTtcbiAgZm9yIChjb25zdCB0YWcgb2YgdGFnRGVzY3JpcHRpb24uVGFncyA/PyBbXSkge1xuICAgIHRhZ3NCeU5hbWVbdGFnLktleSFdID0gdGFnLlZhbHVlO1xuICB9XG5cbiAgZm9yIChjb25zdCB0YWcgb2YgcmVxdWlyZWRUYWdzKSB7XG4gICAgaWYgKHRhZ3NCeU5hbWVbdGFnLmtleV0gIT09IHRhZy52YWx1ZSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHJldHVybiB0cnVlO1xufVxuXG4vKipcbiAqIEFzeW5jIGdlbmVyYXRvciB0aGF0IHByb2R1Y2VzIGxpc3RlbmVyIGRlc2NyaXB0aW9ucyBieSB0cmF2ZXJzaW5nIHRoZVxuICogcGFnaW5hdGlvbi4gQmVjYXVzZSBkZXNjcmliZUxpc3RlbmVycyBvbmx5IGxldHMgeW91IHNlYXJjaCBieSBvbmUgbG9hZFxuICogYmFsYW5jZXIgYXJuIGF0IGEgdGltZSwgd2UgcmVxdWVzdCB0aGVtIGluZGl2aWR1YWxseSBhbmQgeWllbGQgdGhlIGxpc3RlbmVyc1xuICogYXMgdGhleSBjb21lIGluLlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiogZGVzY3JpYmVMaXN0ZW5lcnNCeUxvYWRCYWxhbmNlckFybihlbGJ2MjogQVdTLkVMQnYyLCBsb2FkQmFsYW5jZXJBcm5zOiBzdHJpbmdbXSkge1xuICBmb3IgKGNvbnN0IGxvYWRCYWxhbmNlckFybiBvZiBsb2FkQmFsYW5jZXJBcm5zKSB7XG4gICAgbGV0IHBhZ2U6IEFXUy5FTEJ2Mi5EZXNjcmliZUxpc3RlbmVyc091dHB1dCB8IHVuZGVmaW5lZDtcbiAgICBkbyB7XG4gICAgICBwYWdlID0gYXdhaXQgZWxidjIuZGVzY3JpYmVMaXN0ZW5lcnMoe1xuICAgICAgICBMb2FkQmFsYW5jZXJBcm46IGxvYWRCYWxhbmNlckFybixcbiAgICAgICAgTWFya2VyOiBwYWdlPy5OZXh0TWFya2VyLFxuICAgICAgfSkucHJvbWlzZSgpO1xuXG4gICAgICBmb3IgKGNvbnN0IGxpc3RlbmVyIG9mIHBhZ2UuTGlzdGVuZXJzID8/IFtdKSB7XG4gICAgICAgIHlpZWxkIGxpc3RlbmVyO1xuICAgICAgfVxuICAgIH0gd2hpbGUgKHBhZ2UuTmV4dE1hcmtlcik7XG4gIH1cbn1cblxuLyoqXG4gKiBEZXRlcm1pbmVzIGlmIGEgbGlzdGVuZXIgbWF0Y2hlcyB0aGUgcXVlcnkgZmlsdGVycy5cbiAqL1xuZnVuY3Rpb24gbGlzdGVuZXJNYXRjaGVzUXVlcnlGaWx0ZXIobGlzdGVuZXI6IEFXUy5FTEJ2Mi5MaXN0ZW5lciwgYXJnczogY3hzY2hlbWEuTG9hZEJhbGFuY2VyTGlzdGVuZXJDb250ZXh0UXVlcnkpOiBib29sZWFuIHtcbiAgaWYgKGFyZ3MubGlzdGVuZXJQb3J0ICYmIGxpc3RlbmVyLlBvcnQgIT09IGFyZ3MubGlzdGVuZXJQb3J0KSB7XG4gICAgLy8gTm8gbWF0Y2guXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgaWYgKGFyZ3MubGlzdGVuZXJQcm90b2NvbCAmJiBsaXN0ZW5lci5Qcm90b2NvbCAhPT0gYXJncy5saXN0ZW5lclByb3RvY29sKSB7XG4gICAgLy8gTm8gbWF0Y2guXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcmV0dXJuIHRydWU7XG59XG5cbi8qKlxuICogUmV0dXJucyBhIHJlY29yZCBvZiBsb2FkIGJhbGFuY2VycyBpbmRleGVkIGJ5IHRoZWlyIGFybnNcbiAqL1xuZnVuY3Rpb24gaW5kZXhMb2FkQmFsYW5jZXJzQnlBcm4obG9hZEJhbGFuY2VyczogQVdTLkVMQnYyLkxvYWRCYWxhbmNlcltdKTogUmVjb3JkPHN0cmluZywgQVdTLkVMQnYyLkxvYWRCYWxhbmNlcj4ge1xuICBjb25zdCBsb2FkQmFsYW5jZXJzQnlBcm46IFJlY29yZDxzdHJpbmcsIEFXUy5FTEJ2Mi5Mb2FkQmFsYW5jZXI+ID0ge307XG5cbiAgZm9yIChjb25zdCBsb2FkQmFsYW5jZXIgb2YgbG9hZEJhbGFuY2Vycykge1xuICAgIGxvYWRCYWxhbmNlcnNCeUFybltsb2FkQmFsYW5jZXIuTG9hZEJhbGFuY2VyQXJuIV0gPSBsb2FkQmFsYW5jZXI7XG4gIH1cblxuICByZXR1cm4gbG9hZEJhbGFuY2Vyc0J5QXJuO1xufVxuIl19
@@ -1,7 +1,7 @@
1
1
  import * as cxschema from '@aws-cdk/cloud-assembly-schema';
2
2
  import * as cxapi from '@aws-cdk/cx-api';
3
3
  import * as AWS from 'aws-sdk';
4
- import { SdkProvider } from '../api';
4
+ import { SdkProvider } from '../api/aws-auth/sdk-provider';
5
5
  import { ContextProviderPlugin } from './provider';
6
6
  export declare class SecurityGroupContextProviderPlugin implements ContextProviderPlugin {
7
7
  private readonly aws;
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.hasAllTrafficEgress = exports.SecurityGroupContextProviderPlugin = void 0;
4
4
  const cxapi = require("@aws-cdk/cx-api");
5
- const api_1 = require("../api");
5
+ const credentials_1 = require("../api/aws-auth/credentials");
6
6
  class SecurityGroupContextProviderPlugin {
7
7
  constructor(aws) {
8
8
  this.aws = aws;
@@ -18,7 +18,7 @@ class SecurityGroupContextProviderPlugin {
18
18
  throw new Error('\'securityGroupId\' or \'securityGroupName\' must be specified to look up a security group');
19
19
  }
20
20
  const options = { assumeRoleArn: args.lookupRoleArn };
21
- const ec2 = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(account, region), api_1.Mode.ForReading, options)).sdk.ec2();
21
+ const ec2 = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(account, region), credentials_1.Mode.ForReading, options)).sdk.ec2();
22
22
  const filters = [];
23
23
  if (args.vpcId) {
24
24
  filters.push({
@@ -70,4 +70,4 @@ function hasAllTrafficEgress(securityGroup) {
70
70
  return hasAllTrafficCidrV4 && hasAllTrafficCidrV6;
71
71
  }
72
72
  exports.hasAllTrafficEgress = hasAllTrafficEgress;
73
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHktZ3JvdXBzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2VjdXJpdHktZ3JvdXBzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlDQUF5QztBQUV6QyxnQ0FBMkM7QUFHM0MsTUFBYSxrQ0FBa0M7SUFDN0MsWUFBNkIsR0FBZ0I7UUFBaEIsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUM3QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUF3Qzs7UUFDckQsTUFBTSxPQUFPLEdBQVcsSUFBSSxDQUFDLE9BQVEsQ0FBQztRQUN0QyxNQUFNLE1BQU0sR0FBVyxJQUFJLENBQUMsTUFBTyxDQUFDO1FBRXBDLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDbEQsTUFBTSxJQUFJLEtBQUssQ0FBQywwR0FBMEcsQ0FBQyxDQUFDO1NBQzdIO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDcEQsTUFBTSxJQUFJLEtBQUssQ0FBQyw0RkFBNEYsQ0FBQyxDQUFDO1NBQy9HO1FBRUQsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RELE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsRUFBRSxVQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBRTlILE1BQU0sT0FBTyxHQUF1QixFQUFFLENBQUM7UUFDdkMsSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2QsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDWCxJQUFJLEVBQUUsUUFBUTtnQkFDZCxNQUFNLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO2FBQ3JCLENBQUMsQ0FBQztTQUNKO1FBQ0QsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDMUIsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDWCxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDO2FBQ2pDLENBQUMsQ0FBQztTQUNKO1FBRUQsTUFBTSxRQUFRLEdBQUcsTUFBTSxHQUFHLENBQUMsc0JBQXNCLENBQUM7WUFDaEQsUUFBUSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ25FLE9BQU8sRUFBRSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTO1NBQ2xELENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUViLE1BQU0sY0FBYyxTQUFHLFFBQVEsQ0FBQyxjQUFjLG1DQUFJLEVBQUUsQ0FBQztRQUNyRCxJQUFJLGNBQWMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQy9CLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzlFO1FBRUQsSUFBSSxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLGdEQUFnRCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUN6RjtRQUVELE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxjQUFjLENBQUM7UUFFdkMsT0FBTztZQUNMLGVBQWUsRUFBRSxhQUFhLENBQUMsT0FBUTtZQUN2QyxnQkFBZ0IsRUFBRSxtQkFBbUIsQ0FBQyxhQUFhLENBQUM7U0FDckQsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXRERCxnRkFzREM7QUFFRDs7R0FFRztBQUNILFNBQWdCLG1CQUFtQixDQUFDLGFBQW9DOztJQUN0RSxJQUFJLG1CQUFtQixHQUFHLEtBQUssQ0FBQztJQUNoQyxJQUFJLG1CQUFtQixHQUFHLEtBQUssQ0FBQztJQUVoQyxLQUFLLE1BQU0sWUFBWSxVQUFJLGFBQWEsQ0FBQyxtQkFBbUIsbUNBQUksRUFBRSxFQUFFO1FBQ2xFLE1BQU0sY0FBYyxHQUFHLFlBQVksQ0FBQyxVQUFVLEtBQUssSUFBSSxDQUFDO1FBRXhELElBQUksY0FBYyxXQUFJLFlBQVksQ0FBQyxRQUFRLDBDQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLEtBQUssV0FBVyxFQUFDLEVBQUU7WUFDaEYsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO1NBQzVCO1FBRUQsSUFBSSxjQUFjLFdBQUksWUFBWSxDQUFDLFVBQVUsMENBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsS0FBSyxNQUFNLEVBQUMsRUFBRTtZQUMvRSxtQkFBbUIsR0FBRyxJQUFJLENBQUM7U0FDNUI7S0FDRjtJQUVELE9BQU8sbUJBQW1CLElBQUksbUJBQW1CLENBQUM7QUFDcEQsQ0FBQztBQWpCRCxrREFpQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjeHNjaGVtYSBmcm9tICdAYXdzLWNkay9jbG91ZC1hc3NlbWJseS1zY2hlbWEnO1xuaW1wb3J0ICogYXMgY3hhcGkgZnJvbSAnQGF3cy1jZGsvY3gtYXBpJztcbmltcG9ydCAqIGFzIEFXUyBmcm9tICdhd3Mtc2RrJztcbmltcG9ydCB7IE1vZGUsIFNka1Byb3ZpZGVyIH0gZnJvbSAnLi4vYXBpJztcbmltcG9ydCB7IENvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vcHJvdmlkZXInO1xuXG5leHBvcnQgY2xhc3MgU2VjdXJpdHlHcm91cENvbnRleHRQcm92aWRlclBsdWdpbiBpbXBsZW1lbnRzIENvbnRleHRQcm92aWRlclBsdWdpbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYXdzOiBTZGtQcm92aWRlcikge1xuICB9XG5cbiAgYXN5bmMgZ2V0VmFsdWUoYXJnczogY3hzY2hlbWEuU2VjdXJpdHlHcm91cENvbnRleHRRdWVyeSk6IFByb21pc2U8Y3hhcGkuU2VjdXJpdHlHcm91cENvbnRleHRSZXNwb25zZT4ge1xuICAgIGNvbnN0IGFjY291bnQ6IHN0cmluZyA9IGFyZ3MuYWNjb3VudCE7XG4gICAgY29uc3QgcmVnaW9uOiBzdHJpbmcgPSBhcmdzLnJlZ2lvbiE7XG5cbiAgICBpZiAoYXJncy5zZWN1cml0eUdyb3VwSWQgJiYgYXJncy5zZWN1cml0eUdyb3VwTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdcXCdzZWN1cml0eUdyb3VwSWRcXCcgYW5kIFxcJ3NlY3VyaXR5R3JvdXBOYW1lXFwnIGNhbiBub3QgYmUgc3BlY2lmaWVkIGJvdGggd2hlbiBsb29raW5nIHVwIGEgc2VjdXJpdHkgZ3JvdXAnKTtcbiAgICB9XG5cbiAgICBpZiAoIWFyZ3Muc2VjdXJpdHlHcm91cElkICYmwqAhYXJncy5zZWN1cml0eUdyb3VwTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdcXCdzZWN1cml0eUdyb3VwSWRcXCcgb3IgXFwnc2VjdXJpdHlHcm91cE5hbWVcXCcgbXVzdCBiZSBzcGVjaWZpZWQgdG8gbG9vayB1cCBhIHNlY3VyaXR5IGdyb3VwJyk7XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9ucyA9IHsgYXNzdW1lUm9sZUFybjogYXJncy5sb29rdXBSb2xlQXJuIH07XG4gICAgY29uc3QgZWMyID0gKGF3YWl0IHRoaXMuYXdzLmZvckVudmlyb25tZW50KGN4YXBpLkVudmlyb25tZW50VXRpbHMubWFrZShhY2NvdW50LCByZWdpb24pLCBNb2RlLkZvclJlYWRpbmcsIG9wdGlvbnMpKS5zZGsuZWMyKCk7XG5cbiAgICBjb25zdCBmaWx0ZXJzOiBBV1MuRUMyLkZpbHRlckxpc3QgPSBbXTtcbiAgICBpZiAoYXJncy52cGNJZCkge1xuICAgICAgZmlsdGVycy5wdXNoKHtcbiAgICAgICAgTmFtZTogJ3ZwYy1pZCcsXG4gICAgICAgIFZhbHVlczogW2FyZ3MudnBjSWRdLFxuICAgICAgfSk7XG4gICAgfVxuICAgIGlmIChhcmdzLnNlY3VyaXR5R3JvdXBOYW1lKSB7XG4gICAgICBmaWx0ZXJzLnB1c2goe1xuICAgICAgICBOYW1lOiAnZ3JvdXAtbmFtZScsXG4gICAgICAgIFZhbHVlczogW2FyZ3Muc2VjdXJpdHlHcm91cE5hbWVdLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBlYzIuZGVzY3JpYmVTZWN1cml0eUdyb3Vwcyh7XG4gICAgICBHcm91cElkczogYXJncy5zZWN1cml0eUdyb3VwSWQgPyBbYXJncy5zZWN1cml0eUdyb3VwSWRdIDogdW5kZWZpbmVkLFxuICAgICAgRmlsdGVyczogZmlsdGVycy5sZW5ndGggPiAwID8gZmlsdGVycyA6IHVuZGVmaW5lZCxcbiAgICB9KS5wcm9taXNlKCk7XG5cbiAgICBjb25zdCBzZWN1cml0eUdyb3VwcyA9IHJlc3BvbnNlLlNlY3VyaXR5R3JvdXBzID8/IFtdO1xuICAgIGlmIChzZWN1cml0eUdyb3Vwcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gc2VjdXJpdHkgZ3JvdXBzIGZvdW5kIG1hdGNoaW5nICR7SlNPTi5zdHJpbmdpZnkoYXJncyl9YCk7XG4gICAgfVxuXG4gICAgaWYgKHNlY3VyaXR5R3JvdXBzLmxlbmd0aCA+IDEpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTW9yZSB0aGFuIG9uZSBzZWN1cml0eSBncm91cHMgZm91bmQgbWF0Y2hpbmcgJHtKU09OLnN0cmluZ2lmeShhcmdzKX1gKTtcbiAgICB9XG5cbiAgICBjb25zdCBbc2VjdXJpdHlHcm91cF0gPSBzZWN1cml0eUdyb3VwcztcblxuICAgIHJldHVybiB7XG4gICAgICBzZWN1cml0eUdyb3VwSWQ6IHNlY3VyaXR5R3JvdXAuR3JvdXBJZCEsXG4gICAgICBhbGxvd0FsbE91dGJvdW5kOiBoYXNBbGxUcmFmZmljRWdyZXNzKHNlY3VyaXR5R3JvdXApLFxuICAgIH07XG4gIH1cbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhc0FsbFRyYWZmaWNFZ3Jlc3Moc2VjdXJpdHlHcm91cDogQVdTLkVDMi5TZWN1cml0eUdyb3VwKSB7XG4gIGxldCBoYXNBbGxUcmFmZmljQ2lkclY0ID0gZmFsc2U7XG4gIGxldCBoYXNBbGxUcmFmZmljQ2lkclY2ID0gZmFsc2U7XG5cbiAgZm9yIChjb25zdCBpcFBlcm1pc3Npb24gb2Ygc2VjdXJpdHlHcm91cC5JcFBlcm1pc3Npb25zRWdyZXNzID8/IFtdKSB7XG4gICAgY29uc3QgaXNBbGxQcm90b2NvbHMgPSBpcFBlcm1pc3Npb24uSXBQcm90b2NvbCA9PT0gJy0xJztcblxuICAgIGlmIChpc0FsbFByb3RvY29scyAmJiBpcFBlcm1pc3Npb24uSXBSYW5nZXM/LnNvbWUobSA9PiBtLkNpZHJJcCA9PT0gJzAuMC4wLjAvMCcpKSB7XG4gICAgICBoYXNBbGxUcmFmZmljQ2lkclY0ID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoaXNBbGxQcm90b2NvbHMgJiYgaXBQZXJtaXNzaW9uLklwdjZSYW5nZXM/LnNvbWUobSA9PiBtLkNpZHJJcHY2ID09PSAnOjovMCcpKSB7XG4gICAgICBoYXNBbGxUcmFmZmljQ2lkclY2ID0gdHJ1ZTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gaGFzQWxsVHJhZmZpY0NpZHJWNCAmJiBoYXNBbGxUcmFmZmljQ2lkclY2O1xufVxuIl19
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdXJpdHktZ3JvdXBzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsic2VjdXJpdHktZ3JvdXBzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHlDQUF5QztBQUV6Qyw2REFBbUQ7QUFJbkQsTUFBYSxrQ0FBa0M7SUFDN0MsWUFBNkIsR0FBZ0I7UUFBaEIsUUFBRyxHQUFILEdBQUcsQ0FBYTtJQUM3QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUF3Qzs7UUFDckQsTUFBTSxPQUFPLEdBQVcsSUFBSSxDQUFDLE9BQVEsQ0FBQztRQUN0QyxNQUFNLE1BQU0sR0FBVyxJQUFJLENBQUMsTUFBTyxDQUFDO1FBRXBDLElBQUksSUFBSSxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDbEQsTUFBTSxJQUFJLEtBQUssQ0FBQywwR0FBMEcsQ0FBQyxDQUFDO1NBQzdIO1FBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDcEQsTUFBTSxJQUFJLEtBQUssQ0FBQyw0RkFBNEYsQ0FBQyxDQUFDO1NBQy9HO1FBRUQsTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RELE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsRUFBRSxrQkFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUU5SCxNQUFNLE9BQU8sR0FBdUIsRUFBRSxDQUFDO1FBQ3ZDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ1gsSUFBSSxFQUFFLFFBQVE7Z0JBQ2QsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUNyQixDQUFDLENBQUM7U0FDSjtRQUNELElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQzFCLE9BQU8sQ0FBQyxJQUFJLENBQUM7Z0JBQ1gsSUFBSSxFQUFFLFlBQVk7Z0JBQ2xCLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQzthQUNqQyxDQUFDLENBQUM7U0FDSjtRQUVELE1BQU0sUUFBUSxHQUFHLE1BQU0sR0FBRyxDQUFDLHNCQUFzQixDQUFDO1lBQ2hELFFBQVEsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNuRSxPQUFPLEVBQUUsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUztTQUNsRCxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7UUFFYixNQUFNLGNBQWMsU0FBRyxRQUFRLENBQUMsY0FBYyxtQ0FBSSxFQUFFLENBQUM7UUFDckQsSUFBSSxjQUFjLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM5RTtRQUVELElBQUksY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQyxnREFBZ0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekY7UUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLEdBQUcsY0FBYyxDQUFDO1FBRXZDLE9BQU87WUFDTCxlQUFlLEVBQUUsYUFBYSxDQUFDLE9BQVE7WUFDdkMsZ0JBQWdCLEVBQUUsbUJBQW1CLENBQUMsYUFBYSxDQUFDO1NBQ3JELENBQUM7SUFDSixDQUFDO0NBQ0Y7QUF0REQsZ0ZBc0RDO0FBRUQ7O0dBRUc7QUFDSCxTQUFnQixtQkFBbUIsQ0FBQyxhQUFvQzs7SUFDdEUsSUFBSSxtQkFBbUIsR0FBRyxLQUFLLENBQUM7SUFDaEMsSUFBSSxtQkFBbUIsR0FBRyxLQUFLLENBQUM7SUFFaEMsS0FBSyxNQUFNLFlBQVksVUFBSSxhQUFhLENBQUMsbUJBQW1CLG1DQUFJLEVBQUUsRUFBRTtRQUNsRSxNQUFNLGNBQWMsR0FBRyxZQUFZLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQztRQUV4RCxJQUFJLGNBQWMsV0FBSSxZQUFZLENBQUMsUUFBUSwwQ0FBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxLQUFLLFdBQVcsRUFBQyxFQUFFO1lBQ2hGLG1CQUFtQixHQUFHLElBQUksQ0FBQztTQUM1QjtRQUVELElBQUksY0FBYyxXQUFJLFlBQVksQ0FBQyxVQUFVLDBDQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssTUFBTSxFQUFDLEVBQUU7WUFDL0UsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO1NBQzVCO0tBQ0Y7SUFFRCxPQUFPLG1CQUFtQixJQUFJLG1CQUFtQixDQUFDO0FBQ3BELENBQUM7QUFqQkQsa0RBaUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3hzY2hlbWEgZnJvbSAnQGF3cy1jZGsvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCAqIGFzIGN4YXBpIGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgKiBhcyBBV1MgZnJvbSAnYXdzLXNkayc7XG5pbXBvcnQgeyBNb2RlIH0gZnJvbSAnLi4vYXBpL2F3cy1hdXRoL2NyZWRlbnRpYWxzJztcbmltcG9ydCB7IFNka1Byb3ZpZGVyIH0gZnJvbSAnLi4vYXBpL2F3cy1hdXRoL3Nkay1wcm92aWRlcic7XG5pbXBvcnQgeyBDb250ZXh0UHJvdmlkZXJQbHVnaW4gfSBmcm9tICcuL3Byb3ZpZGVyJztcblxuZXhwb3J0IGNsYXNzIFNlY3VyaXR5R3JvdXBDb250ZXh0UHJvdmlkZXJQbHVnaW4gaW1wbGVtZW50cyBDb250ZXh0UHJvdmlkZXJQbHVnaW4ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGF3czogU2RrUHJvdmlkZXIpIHtcbiAgfVxuXG4gIGFzeW5jIGdldFZhbHVlKGFyZ3M6IGN4c2NoZW1hLlNlY3VyaXR5R3JvdXBDb250ZXh0UXVlcnkpOiBQcm9taXNlPGN4YXBpLlNlY3VyaXR5R3JvdXBDb250ZXh0UmVzcG9uc2U+IHtcbiAgICBjb25zdCBhY2NvdW50OiBzdHJpbmcgPSBhcmdzLmFjY291bnQhO1xuICAgIGNvbnN0IHJlZ2lvbjogc3RyaW5nID0gYXJncy5yZWdpb24hO1xuXG4gICAgaWYgKGFyZ3Muc2VjdXJpdHlHcm91cElkICYmIGFyZ3Muc2VjdXJpdHlHcm91cE5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignXFwnc2VjdXJpdHlHcm91cElkXFwnIGFuZCBcXCdzZWN1cml0eUdyb3VwTmFtZVxcJyBjYW4gbm90IGJlIHNwZWNpZmllZCBib3RoIHdoZW4gbG9va2luZyB1cCBhIHNlY3VyaXR5IGdyb3VwJyk7XG4gICAgfVxuXG4gICAgaWYgKCFhcmdzLnNlY3VyaXR5R3JvdXBJZCAmJsKgIWFyZ3Muc2VjdXJpdHlHcm91cE5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignXFwnc2VjdXJpdHlHcm91cElkXFwnIG9yIFxcJ3NlY3VyaXR5R3JvdXBOYW1lXFwnIG11c3QgYmUgc3BlY2lmaWVkIHRvIGxvb2sgdXAgYSBzZWN1cml0eSBncm91cCcpO1xuICAgIH1cblxuICAgIGNvbnN0IG9wdGlvbnMgPSB7IGFzc3VtZVJvbGVBcm46IGFyZ3MubG9va3VwUm9sZUFybiB9O1xuICAgIGNvbnN0IGVjMiA9IChhd2FpdCB0aGlzLmF3cy5mb3JFbnZpcm9ubWVudChjeGFwaS5FbnZpcm9ubWVudFV0aWxzLm1ha2UoYWNjb3VudCwgcmVnaW9uKSwgTW9kZS5Gb3JSZWFkaW5nLCBvcHRpb25zKSkuc2RrLmVjMigpO1xuXG4gICAgY29uc3QgZmlsdGVyczogQVdTLkVDMi5GaWx0ZXJMaXN0ID0gW107XG4gICAgaWYgKGFyZ3MudnBjSWQpIHtcbiAgICAgIGZpbHRlcnMucHVzaCh7XG4gICAgICAgIE5hbWU6ICd2cGMtaWQnLFxuICAgICAgICBWYWx1ZXM6IFthcmdzLnZwY0lkXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICBpZiAoYXJncy5zZWN1cml0eUdyb3VwTmFtZSkge1xuICAgICAgZmlsdGVycy5wdXNoKHtcbiAgICAgICAgTmFtZTogJ2dyb3VwLW5hbWUnLFxuICAgICAgICBWYWx1ZXM6IFthcmdzLnNlY3VyaXR5R3JvdXBOYW1lXSxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZWMyLmRlc2NyaWJlU2VjdXJpdHlHcm91cHMoe1xuICAgICAgR3JvdXBJZHM6IGFyZ3Muc2VjdXJpdHlHcm91cElkID8gW2FyZ3Muc2VjdXJpdHlHcm91cElkXSA6IHVuZGVmaW5lZCxcbiAgICAgIEZpbHRlcnM6IGZpbHRlcnMubGVuZ3RoID4gMCA/IGZpbHRlcnMgOiB1bmRlZmluZWQsXG4gICAgfSkucHJvbWlzZSgpO1xuXG4gICAgY29uc3Qgc2VjdXJpdHlHcm91cHMgPSByZXNwb25zZS5TZWN1cml0eUdyb3VwcyA/PyBbXTtcbiAgICBpZiAoc2VjdXJpdHlHcm91cHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE5vIHNlY3VyaXR5IGdyb3VwcyBmb3VuZCBtYXRjaGluZyAke0pTT04uc3RyaW5naWZ5KGFyZ3MpfWApO1xuICAgIH1cblxuICAgIGlmIChzZWN1cml0eUdyb3Vwcy5sZW5ndGggPiAxKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE1vcmUgdGhhbiBvbmUgc2VjdXJpdHkgZ3JvdXBzIGZvdW5kIG1hdGNoaW5nICR7SlNPTi5zdHJpbmdpZnkoYXJncyl9YCk7XG4gICAgfVxuXG4gICAgY29uc3QgW3NlY3VyaXR5R3JvdXBdID0gc2VjdXJpdHlHcm91cHM7XG5cbiAgICByZXR1cm4ge1xuICAgICAgc2VjdXJpdHlHcm91cElkOiBzZWN1cml0eUdyb3VwLkdyb3VwSWQhLFxuICAgICAgYWxsb3dBbGxPdXRib3VuZDogaGFzQWxsVHJhZmZpY0VncmVzcyhzZWN1cml0eUdyb3VwKSxcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXNBbGxUcmFmZmljRWdyZXNzKHNlY3VyaXR5R3JvdXA6IEFXUy5FQzIuU2VjdXJpdHlHcm91cCkge1xuICBsZXQgaGFzQWxsVHJhZmZpY0NpZHJWNCA9IGZhbHNlO1xuICBsZXQgaGFzQWxsVHJhZmZpY0NpZHJWNiA9IGZhbHNlO1xuXG4gIGZvciAoY29uc3QgaXBQZXJtaXNzaW9uIG9mIHNlY3VyaXR5R3JvdXAuSXBQZXJtaXNzaW9uc0VncmVzcyA/PyBbXSkge1xuICAgIGNvbnN0IGlzQWxsUHJvdG9jb2xzID0gaXBQZXJtaXNzaW9uLklwUHJvdG9jb2wgPT09ICctMSc7XG5cbiAgICBpZiAoaXNBbGxQcm90b2NvbHMgJiYgaXBQZXJtaXNzaW9uLklwUmFuZ2VzPy5zb21lKG0gPT4gbS5DaWRySXAgPT09ICcwLjAuMC4wLzAnKSkge1xuICAgICAgaGFzQWxsVHJhZmZpY0NpZHJWNCA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKGlzQWxsUHJvdG9jb2xzICYmIGlwUGVybWlzc2lvbi5JcHY2UmFuZ2VzPy5zb21lKG0gPT4gbS5DaWRySXB2NiA9PT0gJzo6LzAnKSkge1xuICAgICAgaGFzQWxsVHJhZmZpY0NpZHJWNiA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGhhc0FsbFRyYWZmaWNDaWRyVjQgJiYgaGFzQWxsVHJhZmZpY0NpZHJWNjtcbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import * as cxschema from '@aws-cdk/cloud-assembly-schema';
2
- import { SdkProvider } from '../api';
2
+ import { SdkProvider } from '../api/aws-auth/sdk-provider';
3
3
  import { ContextProviderPlugin } from './provider';
4
4
  /**
5
5
  * Plugin to read arbitrary SSM parameter names
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SSMContextProviderPlugin = void 0;
4
4
  const cxapi = require("@aws-cdk/cx-api");
5
- const api_1 = require("../api");
5
+ const credentials_1 = require("../api/aws-auth/credentials");
6
6
  const logging_1 = require("../logging");
7
7
  /**
8
8
  * Plugin to read arbitrary SSM parameter names
@@ -38,7 +38,7 @@ class SSMContextProviderPlugin {
38
38
  */
39
39
  async getSsmParameterValue(account, region, parameterName, lookupRoleArn) {
40
40
  const options = { assumeRoleArn: lookupRoleArn };
41
- const ssm = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(account, region), api_1.Mode.ForReading, options)).sdk.ssm();
41
+ const ssm = (await this.aws.forEnvironment(cxapi.EnvironmentUtils.make(account, region), credentials_1.Mode.ForReading, options)).sdk.ssm();
42
42
  try {
43
43
  return await ssm.getParameter({ Name: parameterName }).promise();
44
44
  }
@@ -51,4 +51,4 @@ class SSMContextProviderPlugin {
51
51
  }
52
52
  }
53
53
  exports.SSMContextProviderPlugin = SSMContextProviderPlugin;
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NtLXBhcmFtZXRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzc20tcGFyYW1ldGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBeUM7QUFFekMsZ0NBQTJDO0FBQzNDLHdDQUFtQztBQUduQzs7R0FFRztBQUNILE1BQWEsd0JBQXdCO0lBQ25DLFlBQTZCLEdBQWdCO1FBQWhCLFFBQUcsR0FBSCxHQUFHLENBQWE7SUFDN0MsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBdUM7UUFDM0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMzQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsRUFBRTtZQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLHNFQUFzRSxDQUFDLENBQUM7U0FDekY7UUFDRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3pDLGVBQUssQ0FBQyx5QkFBeUIsT0FBTyxJQUFJLE1BQU0sSUFBSSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBRXJFLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNyRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDakUsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsT0FBTyxZQUFZLE1BQU0sS0FBSyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1NBQzFHO1FBQ0QsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNLLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxPQUFlLEVBQUUsTUFBYyxFQUFFLGFBQXFCLEVBQUUsYUFBc0I7UUFFL0csTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLENBQUM7UUFDakQsTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFLFVBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDOUgsSUFBSTtZQUNGLE9BQU8sTUFBTSxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDbEU7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxtQkFBbUIsRUFBRTtnQkFDbEMsT0FBTyxFQUFFLENBQUM7YUFDWDtZQUNELE1BQU0sQ0FBQyxDQUFDO1NBQ1Q7SUFDSCxDQUFDO0NBQ0Y7QUE1Q0QsNERBNENDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY3hzY2hlbWEgZnJvbSAnQGF3cy1jZGsvY2xvdWQtYXNzZW1ibHktc2NoZW1hJztcbmltcG9ydCAqIGFzIGN4YXBpIGZyb20gJ0Bhd3MtY2RrL2N4LWFwaSc7XG5pbXBvcnQgKiBhcyBBV1MgZnJvbSAnYXdzLXNkayc7XG5pbXBvcnQgeyBNb2RlLCBTZGtQcm92aWRlciB9IGZyb20gJy4uL2FwaSc7XG5pbXBvcnQgeyBkZWJ1ZyB9IGZyb20gJy4uL2xvZ2dpbmcnO1xuaW1wb3J0IHsgQ29udGV4dFByb3ZpZGVyUGx1Z2luIH0gZnJvbSAnLi9wcm92aWRlcic7XG5cbi8qKlxuICogUGx1Z2luIHRvIHJlYWQgYXJiaXRyYXJ5IFNTTSBwYXJhbWV0ZXIgbmFtZXNcbiAqL1xuZXhwb3J0IGNsYXNzIFNTTUNvbnRleHRQcm92aWRlclBsdWdpbiBpbXBsZW1lbnRzIENvbnRleHRQcm92aWRlclBsdWdpbiB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgYXdzOiBTZGtQcm92aWRlcikge1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFZhbHVlKGFyZ3M6IGN4c2NoZW1hLlNTTVBhcmFtZXRlckNvbnRleHRRdWVyeSkge1xuICAgIGNvbnN0IHJlZ2lvbiA9IGFyZ3MucmVnaW9uO1xuICAgIGNvbnN0IGFjY291bnQgPSBhcmdzLmFjY291bnQ7XG4gICAgaWYgKCEoJ3BhcmFtZXRlck5hbWUnIGluIGFyZ3MpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3BhcmFtZXRlck5hbWUgbXVzdCBiZSBwcm92aWRlZCBpbiBwcm9wcyBmb3IgU1NNQ29udGV4dFByb3ZpZGVyUGx1Z2luJyk7XG4gICAgfVxuICAgIGNvbnN0IHBhcmFtZXRlck5hbWUgPSBhcmdzLnBhcmFtZXRlck5hbWU7XG4gICAgZGVidWcoYFJlYWRpbmcgU1NNIHBhcmFtZXRlciAke2FjY291bnR9OiR7cmVnaW9ufToke3BhcmFtZXRlck5hbWV9YCk7XG5cbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMuZ2V0U3NtUGFyYW1ldGVyVmFsdWUoYWNjb3VudCwgcmVnaW9uLCBwYXJhbWV0ZXJOYW1lLCBhcmdzLmxvb2t1cFJvbGVBcm4pO1xuICAgIGlmICghcmVzcG9uc2UuUGFyYW1ldGVyIHx8IHJlc3BvbnNlLlBhcmFtZXRlci5WYWx1ZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFNTTSBwYXJhbWV0ZXIgbm90IGF2YWlsYWJsZSBpbiBhY2NvdW50ICR7YWNjb3VudH0sIHJlZ2lvbiAke3JlZ2lvbn06ICR7cGFyYW1ldGVyTmFtZX1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3BvbnNlLlBhcmFtZXRlci5WYWx1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiBhbiBTU00gUGFyYW1ldGVyLCB3aGlsZSBub3QgdGhyb3dpbiBpZiB0aGUgcGFyYW1ldGVyIGRvZXMgbm90IGV4aXN0LlxuICAgKiBAcGFyYW0gYWNjb3VudCAgICAgICB0aGUgYWNjb3VudCBpbiB3aGljaCB0aGUgU1NNIFBhcmFtZXRlciBpcyBleHBlY3RlZCB0byBiZS5cbiAgICogQHBhcmFtIHJlZ2lvbiAgICAgICAgdGhlIHJlZ2lvbiBpbiB3aGljaCB0aGUgU1NNIFBhcmFtZXRlciBpcyBleHBlY3RlZCB0byBiZS5cbiAgICogQHBhcmFtIHBhcmFtZXRlck5hbWUgdGhlIG5hbWUgb2YgdGhlIFNTTSBQYXJhbWV0ZXJcbiAgICogQHBhcmFtIGxvb2t1cFJvbGVBcm4gdGhlIEFSTiBvZiB0aGUgbG9va3VwIHJvbGUuXG4gICAqXG4gICAqIEByZXR1cm5zIHRoZSByZXN1bHQgb2YgdGhlIGBgR2V0UGFyYW1ldGVyYGAgb3BlcmF0aW9uLlxuICAgKlxuICAgKiBAdGhyb3dzIEVycm9yIGlmIGEgc2VydmljZSBlcnJvciAob3RoZXIgdGhhbiBgYFBhcmFtZXRlck5vdEZvdW5kYGApIG9jY3Vycy5cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZ2V0U3NtUGFyYW1ldGVyVmFsdWUoYWNjb3VudDogc3RyaW5nLCByZWdpb246IHN0cmluZywgcGFyYW1ldGVyTmFtZTogc3RyaW5nLCBsb29rdXBSb2xlQXJuPzogc3RyaW5nKVxuICAgIDogUHJvbWlzZTxBV1MuU1NNLkdldFBhcmFtZXRlclJlc3VsdD4ge1xuICAgIGNvbnN0IG9wdGlvbnMgPSB7IGFzc3VtZVJvbGVBcm46IGxvb2t1cFJvbGVBcm4gfTtcbiAgICBjb25zdCBzc20gPSAoYXdhaXQgdGhpcy5hd3MuZm9yRW52aXJvbm1lbnQoY3hhcGkuRW52aXJvbm1lbnRVdGlscy5tYWtlKGFjY291bnQsIHJlZ2lvbiksIE1vZGUuRm9yUmVhZGluZywgb3B0aW9ucykpLnNkay5zc20oKTtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IHNzbS5nZXRQYXJhbWV0ZXIoeyBOYW1lOiBwYXJhbWV0ZXJOYW1lIH0pLnByb21pc2UoKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZS5jb2RlID09PSAnUGFyYW1ldGVyTm90Rm91bmQnKSB7XG4gICAgICAgIHJldHVybiB7fTtcbiAgICAgIH1cbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG59XG4iXX0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3NtLXBhcmFtZXRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzc20tcGFyYW1ldGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSx5Q0FBeUM7QUFFekMsNkRBQW1EO0FBRW5ELHdDQUFtQztBQUduQzs7R0FFRztBQUNILE1BQWEsd0JBQXdCO0lBQ25DLFlBQTZCLEdBQWdCO1FBQWhCLFFBQUcsR0FBSCxHQUFHLENBQWE7SUFDN0MsQ0FBQztJQUVNLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBdUM7UUFDM0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUMzQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzdCLElBQUksQ0FBQyxDQUFDLGVBQWUsSUFBSSxJQUFJLENBQUMsRUFBRTtZQUM5QixNQUFNLElBQUksS0FBSyxDQUFDLHNFQUFzRSxDQUFDLENBQUM7U0FDekY7UUFDRCxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBQ3pDLGVBQUssQ0FBQyx5QkFBeUIsT0FBTyxJQUFJLE1BQU0sSUFBSSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBRXJFLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNyRyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDakUsTUFBTSxJQUFJLEtBQUssQ0FBQywwQ0FBMEMsT0FBTyxZQUFZLE1BQU0sS0FBSyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1NBQzFHO1FBQ0QsT0FBTyxRQUFRLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNLLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxPQUFlLEVBQUUsTUFBYyxFQUFFLGFBQXFCLEVBQUUsYUFBc0I7UUFFL0csTUFBTSxPQUFPLEdBQUcsRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLENBQUM7UUFDakQsTUFBTSxHQUFHLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxFQUFFLGtCQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQzlILElBQUk7WUFDRixPQUFPLE1BQU0sR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQ2xFO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDVixJQUFJLENBQUMsQ0FBQyxJQUFJLEtBQUssbUJBQW1CLEVBQUU7Z0JBQ2xDLE9BQU8sRUFBRSxDQUFDO2FBQ1g7WUFDRCxNQUFNLENBQUMsQ0FBQztTQUNUO0lBQ0gsQ0FBQztDQUNGO0FBNUNELDREQTRDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGN4c2NoZW1hIGZyb20gJ0Bhd3MtY2RrL2Nsb3VkLWFzc2VtYmx5LXNjaGVtYSc7XG5pbXBvcnQgKiBhcyBjeGFwaSBmcm9tICdAYXdzLWNkay9jeC1hcGknO1xuaW1wb3J0ICogYXMgQVdTIGZyb20gJ2F3cy1zZGsnO1xuaW1wb3J0IHsgTW9kZSB9IGZyb20gJy4uL2FwaS9hd3MtYXV0aC9jcmVkZW50aWFscyc7XG5pbXBvcnQgeyBTZGtQcm92aWRlciB9IGZyb20gJy4uL2FwaS9hd3MtYXV0aC9zZGstcHJvdmlkZXInO1xuaW1wb3J0IHsgZGVidWcgfSBmcm9tICcuLi9sb2dnaW5nJztcbmltcG9ydCB7IENvbnRleHRQcm92aWRlclBsdWdpbiB9IGZyb20gJy4vcHJvdmlkZXInO1xuXG4vKipcbiAqIFBsdWdpbiB0byByZWFkIGFyYml0cmFyeSBTU00gcGFyYW1ldGVyIG5hbWVzXG4gKi9cbmV4cG9ydCBjbGFzcyBTU01Db250ZXh0UHJvdmlkZXJQbHVnaW4gaW1wbGVtZW50cyBDb250ZXh0UHJvdmlkZXJQbHVnaW4ge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGF3czogU2RrUHJvdmlkZXIpIHtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRWYWx1ZShhcmdzOiBjeHNjaGVtYS5TU01QYXJhbWV0ZXJDb250ZXh0UXVlcnkpIHtcbiAgICBjb25zdCByZWdpb24gPSBhcmdzLnJlZ2lvbjtcbiAgICBjb25zdCBhY2NvdW50ID0gYXJncy5hY2NvdW50O1xuICAgIGlmICghKCdwYXJhbWV0ZXJOYW1lJyBpbiBhcmdzKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdwYXJhbWV0ZXJOYW1lIG11c3QgYmUgcHJvdmlkZWQgaW4gcHJvcHMgZm9yIFNTTUNvbnRleHRQcm92aWRlclBsdWdpbicpO1xuICAgIH1cbiAgICBjb25zdCBwYXJhbWV0ZXJOYW1lID0gYXJncy5wYXJhbWV0ZXJOYW1lO1xuICAgIGRlYnVnKGBSZWFkaW5nIFNTTSBwYXJhbWV0ZXIgJHthY2NvdW50fToke3JlZ2lvbn06JHtwYXJhbWV0ZXJOYW1lfWApO1xuXG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLmdldFNzbVBhcmFtZXRlclZhbHVlKGFjY291bnQsIHJlZ2lvbiwgcGFyYW1ldGVyTmFtZSwgYXJncy5sb29rdXBSb2xlQXJuKTtcbiAgICBpZiAoIXJlc3BvbnNlLlBhcmFtZXRlciB8fCByZXNwb25zZS5QYXJhbWV0ZXIuVmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBTU00gcGFyYW1ldGVyIG5vdCBhdmFpbGFibGUgaW4gYWNjb3VudCAke2FjY291bnR9LCByZWdpb24gJHtyZWdpb259OiAke3BhcmFtZXRlck5hbWV9YCk7XG4gICAgfVxuICAgIHJldHVybiByZXNwb25zZS5QYXJhbWV0ZXIuVmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgYW4gU1NNIFBhcmFtZXRlciwgd2hpbGUgbm90IHRocm93aW4gaWYgdGhlIHBhcmFtZXRlciBkb2VzIG5vdCBleGlzdC5cbiAgICogQHBhcmFtIGFjY291bnQgICAgICAgdGhlIGFjY291bnQgaW4gd2hpY2ggdGhlIFNTTSBQYXJhbWV0ZXIgaXMgZXhwZWN0ZWQgdG8gYmUuXG4gICAqIEBwYXJhbSByZWdpb24gICAgICAgIHRoZSByZWdpb24gaW4gd2hpY2ggdGhlIFNTTSBQYXJhbWV0ZXIgaXMgZXhwZWN0ZWQgdG8gYmUuXG4gICAqIEBwYXJhbSBwYXJhbWV0ZXJOYW1lIHRoZSBuYW1lIG9mIHRoZSBTU00gUGFyYW1ldGVyXG4gICAqIEBwYXJhbSBsb29rdXBSb2xlQXJuIHRoZSBBUk4gb2YgdGhlIGxvb2t1cCByb2xlLlxuICAgKlxuICAgKiBAcmV0dXJucyB0aGUgcmVzdWx0IG9mIHRoZSBgYEdldFBhcmFtZXRlcmBgIG9wZXJhdGlvbi5cbiAgICpcbiAgICogQHRocm93cyBFcnJvciBpZiBhIHNlcnZpY2UgZXJyb3IgKG90aGVyIHRoYW4gYGBQYXJhbWV0ZXJOb3RGb3VuZGBgKSBvY2N1cnMuXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGdldFNzbVBhcmFtZXRlclZhbHVlKGFjY291bnQ6IHN0cmluZywgcmVnaW9uOiBzdHJpbmcsIHBhcmFtZXRlck5hbWU6IHN0cmluZywgbG9va3VwUm9sZUFybj86IHN0cmluZylcbiAgICA6IFByb21pc2U8QVdTLlNTTS5HZXRQYXJhbWV0ZXJSZXN1bHQ+IHtcbiAgICBjb25zdCBvcHRpb25zID0geyBhc3N1bWVSb2xlQXJuOiBsb29rdXBSb2xlQXJuIH07XG4gICAgY29uc3Qgc3NtID0gKGF3YWl0IHRoaXMuYXdzLmZvckVudmlyb25tZW50KGN4YXBpLkVudmlyb25tZW50VXRpbHMubWFrZShhY2NvdW50LCByZWdpb24pLCBNb2RlLkZvclJlYWRpbmcsIG9wdGlvbnMpKS5zZGsuc3NtKCk7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiBhd2FpdCBzc20uZ2V0UGFyYW1ldGVyKHsgTmFtZTogcGFyYW1ldGVyTmFtZSB9KS5wcm9taXNlKCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgaWYgKGUuY29kZSA9PT0gJ1BhcmFtZXRlck5vdEZvdW5kJykge1xuICAgICAgICByZXR1cm4ge307XG4gICAgICB9XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -1,6 +1,6 @@
1
1
  import * as cxschema from '@aws-cdk/cloud-assembly-schema';
2
2
  import * as cxapi from '@aws-cdk/cx-api';
3
- import { SdkProvider } from '../api';
3
+ import { SdkProvider } from '../api/aws-auth/sdk-provider';
4
4
  import { ContextProviderPlugin } from './provider';
5
5
  export declare class VpcNetworkContextProviderPlugin implements ContextProviderPlugin {
6
6
  private readonly aws;