cdk-common 2.0.322 → 2.0.324

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.
@@ -27,7 +27,6 @@ class HaveOutputAssertion extends assertion_1.JestFriendlyAssertion {
27
27
  return 'output with ' + descriptionPartsArray.join(', ');
28
28
  }
29
29
  assertUsing(inspector) {
30
- var _a;
31
30
  if (!('Outputs' in inspector.value)) {
32
31
  return false;
33
32
  }
@@ -36,7 +35,7 @@ class HaveOutputAssertion extends assertion_1.JestFriendlyAssertion {
36
35
  if (this.outputName && name !== this.outputName) {
37
36
  mismatchedFields.push('name');
38
37
  }
39
- if (this.exportName && JSON.stringify(this.exportName) !== JSON.stringify((_a = props.Export) === null || _a === void 0 ? void 0 : _a.Name)) {
38
+ if (this.exportName && JSON.stringify(this.exportName) !== JSON.stringify(props.Export?.Name)) {
40
39
  mismatchedFields.push('export name');
41
40
  }
42
41
  if (this.outputValue && JSON.stringify(this.outputValue) !== JSON.stringify(props.Value)) {
@@ -75,4 +74,4 @@ function indent(n, s) {
75
74
  const prefix = ' '.repeat(n);
76
75
  return prefix + s.replace(/\n/g, '\n' + prefix);
77
76
  }
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGF2ZS1vdXRwdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJoYXZlLW91dHB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0Q0FBcUQ7QUFHckQsTUFBTSxtQkFBb0IsU0FBUSxpQ0FBcUM7SUFHckUsWUFBNkIsVUFBbUIsRUFBbUIsVUFBZ0IsRUFBVSxXQUFpQjtRQUM1RyxLQUFLLEVBQUUsQ0FBQztRQURtQixlQUFVLEdBQVYsVUFBVSxDQUFTO1FBQW1CLGVBQVUsR0FBVixVQUFVLENBQU07UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBTTtRQUY3RixjQUFTLEdBQXdCLEVBQUUsQ0FBQztRQUluRCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FBQyw2REFBNkQsQ0FBQyxDQUFDO1NBQ2hGO0lBQ0gsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixNQUFNLHFCQUFxQixHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7UUFFbEQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO1NBQ3pEO1FBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM5RTtRQUNELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekU7UUFFRCxPQUFPLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7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ZGx5QXNzZXJ0aW9uIH0gZnJvbSAnLi4vYXNzZXJ0aW9uJztcbmltcG9ydCB7IFN0YWNrSW5zcGVjdG9yIH0gZnJvbSAnLi4vaW5zcGVjdG9yJztcblxuY2xhc3MgSGF2ZU91dHB1dEFzc2VydGlvbiBleHRlbmRzIEplc3RGcmllbmRseUFzc2VydGlvbjxTdGFja0luc3BlY3Rvcj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGluc3BlY3RlZDogSW5zcGVjdGlvbkZhaWx1cmVbXSA9IFtdO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgb3V0cHV0TmFtZT86IHN0cmluZywgcHJpdmF0ZSByZWFkb25seSBleHBvcnROYW1lPzogYW55LCBwcml2YXRlIG91dHB1dFZhbHVlPzogYW55KSB7XG4gICAgc3VwZXIoKTtcbiAgICBpZiAoIXRoaXMub3V0cHV0TmFtZSAmJiAhdGhpcy5leHBvcnROYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0F0IGxlYXN0IG9uZSBvZiBbb3V0cHV0TmFtZSwgZXhwb3J0TmFtZV0gc2hvdWxkIGJlIHByb3ZpZGVkJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBkZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRlc2NyaXB0aW9uUGFydHNBcnJheSA9IG5ldyBBcnJheTxzdHJpbmc+KCk7XG5cbiAgICBpZiAodGhpcy5vdXRwdXROYW1lKSB7XG4gICAgICBkZXNjcmlwdGlvblBhcnRzQXJyYXkucHVzaChgbmFtZSAnJHt0aGlzLm91dHB1dE5hbWV9J2ApO1xuICAgIH1cbiAgICBpZiAodGhpcy5leHBvcnROYW1lKSB7XG4gICAgICBkZXNjcmlwdGlvblBhcnRzQXJyYXkucHVzaChgZXhwb3J0IG5hbWUgJHtKU09OLnN0cmluZ2lmeSh0aGlzLmV4cG9ydE5hbWUpfWApO1xuICAgIH1cbiAgICBpZiAodGhpcy5vdXRwdXRWYWx1ZSkge1xuICAgICAgZGVzY3JpcHRpb25QYXJ0c0FycmF5LnB1c2goYHZhbHVlICR7SlNPTi5zdHJpbmdpZnkodGhpcy5vdXRwdXRWYWx1ZSl9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuICdvdXRwdXQgd2l0aCAnICsgZGVzY3JpcHRpb25QYXJ0c0FycmF5LmpvaW4oJywgJyk7XG4gIH1cblxuICBwdWJsaWMgYXNzZXJ0VXNpbmcoaW5zcGVjdG9yOiBTdGFja0luc3BlY3Rvcik6IGJvb2xlYW4ge1xuICAgIGlmICghKCdPdXRwdXRzJyBpbiBpbnNwZWN0b3IudmFsdWUpKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBbbmFtZSwgcHJvcHNdIG9mIE9iamVjdC5lbnRyaWVzKGluc3BlY3Rvci52YWx1ZS5PdXRwdXRzIGFzIFJlY29yZDxzdHJpbmcsIGFueT4pKSB7XG4gICAgICBjb25zdCBtaXNtYXRjaGVkRmllbGRzID0gbmV3IEFycmF5PHN0cmluZz4oKTtcblxuICAgICAgaWYgKHRoaXMub3V0cHV0TmFtZSAmJiBuYW1lICE9PSB0aGlzLm91dHB1dE5hbWUpIHtcbiAgICAgICAgbWlzbWF0Y2hlZEZpZWxkcy5wdXNoKCduYW1lJyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmV4cG9ydE5hbWUgJiYgSlNPTi5zdHJpbmdpZnkodGhpcy5leHBvcnROYW1lKSAhPT0gSlNPTi5zdHJpbmdpZnkocHJvcHMuRXhwb3J0Py5OYW1lKSkge1xuICAgICAgICBtaXNtYXRjaGVkRmllbGRzLnB1c2goJ2V4cG9ydCBuYW1lJyk7XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLm91dHB1dFZhbHVlICYmIEpTT04uc3RyaW5naWZ5KHRoaXMub3V0cHV0VmFsdWUpICE9PSBKU09OLnN0cmluZ2lmeShwcm9wcy5WYWx1ZSkpIHtcbiAgICAgICAgbWlzbWF0Y2hlZEZpZWxkcy5wdXNoKCd2YWx1ZScpO1xuICAgICAgfVxuXG4gICAgICBpZiAobWlzbWF0Y2hlZEZpZWxkcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuaW5zcGVjdGVkLnB1c2goe1xuICAgICAgICBvdXRwdXQ6IHsgW25hbWVdOiBwcm9wcyB9LFxuICAgICAgICBmYWlsdXJlUmVhc29uOiBgbWlzbWF0Y2hlZCAke21pc21hdGNoZWRGaWVsZHMuam9pbignLCAnKX1gLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdlbmVyYXRlRXJyb3JNZXNzYWdlKCkge1xuICAgIGNvbnN0IGxpbmVzID0gbmV3IEFycmF5PHN0cmluZz4oKTtcblxuICAgIGxpbmVzLnB1c2goYE5vbmUgb2YgJHt0aGlzLmluc3BlY3RlZC5sZW5ndGh9IG91dHB1dHMgbWF0Y2hlcyAke3RoaXMuZGVzY3JpcHRpb259LmApO1xuXG4gICAgZm9yIChjb25zdCBpbnNwZWN0ZWQgb2YgdGhpcy5pbnNwZWN0ZWQpIHtcbiAgICAgIGxpbmVzLnB1c2goYC0gJHtpbnNwZWN0ZWQuZmFpbHVyZVJlYXNvbn0gaW46YCk7XG4gICAgICBsaW5lcy5wdXNoKGluZGVudCg0LCBKU09OLnN0cmluZ2lmeShpbnNwZWN0ZWQub3V0cHV0LCBudWxsLCAyKSkpO1xuICAgIH1cblxuICAgIHJldHVybiBsaW5lcy5qb2luKCdcXG4nKTtcbiAgfVxufVxuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgaGF2ZU91dHB1dCBmdW5jdGlvbiBwcm9wZXJ0aWVzXG4gKiBOT1RFIHRoYXQgYXQgbGVhc3Qgb25lIG9mIFtvdXRwdXROYW1lLCBleHBvcnROYW1lXSBzaG91bGQgYmUgcHJvdmlkZWRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBIYXZlT3V0cHV0UHJvcGVydGllcyB7XG4gIC8qKlxuICAgKiBMb2dpY2FsIElEIG9mIHRoZSBvdXRwdXRcbiAgICogQGRlZmF1bHQgLSB0aGUgbG9naWNhbCBJRCBvZiB0aGUgb3V0cHV0IHdpbGwgbm90IGJlIGNoZWNrZWRcbiAgICovXG4gIG91dHB1dE5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFeHBvcnQgbmFtZSBvZiB0aGUgb3V0cHV0LCB3aGVuIGl0J3MgZXhwb3J0ZWQgZm9yIGNyb3NzLXN0YWNrIHJlZmVyZW5jaW5nXG4gICAqIEBkZWZhdWx0IC0gdGhlIGV4cG9ydCBuYW1lIGlzIG5vdCByZXF1aXJlZCBhbmQgd2lsbCBub3QgYmUgY2hlY2tlZFxuICAgKi9cbiAgZXhwb3J0TmFtZT86IGFueTtcbiAgLyoqXG4gICAqIFZhbHVlIG9mIHRoZSBvdXRwdXQ7XG4gICAqIEBkZWZhdWx0IC0gdGhlIHZhbHVlIHdpbGwgbm90IGJlIGNoZWNrZWRcbiAgICovXG4gIG91dHB1dFZhbHVlPzogYW55O1xufVxuXG5pbnRlcmZhY2UgSW5zcGVjdGlvbkZhaWx1cmUge1xuICBvdXRwdXQ6IGFueTtcbiAgZmFpbHVyZVJlYXNvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIEFuIGFzc2VydGlvbiAgdG8gY2hlY2sgd2hldGhlciBPdXRwdXQgd2l0aCBwYXJ0aWN1bGFyIHByb3BlcnRpZXMgaXMgcHJlc2VudCBpbiBhIHN0YWNrXG4gKiBAcGFyYW0gcHJvcHMgIHByb3BlcnRpZXMgb2YgdGhlIE91dHB1dCB0aGF0IGlzIGJlaW5nIGFzc2VydGVkIGFnYWluc3QuXG4gKiAgICAgICAgICAgICAgIENoZWNrIGBgSGF2ZU91dHB1dFByb3BlcnRpZXNgYCBpbnRlcmZhY2UgdG8gZ2V0IGZ1bGwgbGlzdCBvZiBhdmFpbGFibGUgcGFyYW1ldGVyc1xuICovXG5leHBvcnQgZnVuY3Rpb24gaGF2ZU91dHB1dChwcm9wczogSGF2ZU91dHB1dFByb3BlcnRpZXMpOiBKZXN0RnJpZW5kbHlBc3NlcnRpb248U3RhY2tJbnNwZWN0b3I+IHtcbiAgcmV0dXJuIG5ldyBIYXZlT3V0cHV0QXNzZXJ0aW9uKHByb3BzLm91dHB1dE5hbWUsIHByb3BzLmV4cG9ydE5hbWUsIHByb3BzLm91dHB1dFZhbHVlKTtcbn1cblxuZnVuY3Rpb24gaW5kZW50KG46IG51bWJlciwgczogc3RyaW5nKSB7XG4gIGNvbnN0IHByZWZpeCA9ICcgJy5yZXBlYXQobik7XG4gIHJldHVybiBwcmVmaXggKyBzLnJlcGxhY2UoL1xcbi9nLCAnXFxuJyArIHByZWZpeCk7XG59XG4iXX0=
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGF2ZS1vdXRwdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJoYXZlLW91dHB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw0Q0FBcUQ7QUFHckQsTUFBTSxtQkFBb0IsU0FBUSxpQ0FBcUM7SUFHckUsWUFBNkIsVUFBbUIsRUFBbUIsVUFBZ0IsRUFBVSxXQUFpQjtRQUM1RyxLQUFLLEVBQUUsQ0FBQztRQURtQixlQUFVLEdBQVYsVUFBVSxDQUFTO1FBQW1CLGVBQVUsR0FBVixVQUFVLENBQU07UUFBVSxnQkFBVyxHQUFYLFdBQVcsQ0FBTTtRQUY3RixjQUFTLEdBQXdCLEVBQUUsQ0FBQztRQUluRCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDeEMsTUFBTSxJQUFJLEtBQUssQ0FBQyw2REFBNkQsQ0FBQyxDQUFDO1NBQ2hGO0lBQ0gsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixNQUFNLHFCQUFxQixHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7UUFFbEQsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO1NBQ3pEO1FBQ0QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLHFCQUFxQixDQUFDLElBQUksQ0FBQyxlQUFlLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUM5RTtRQUNELElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNwQixxQkFBcUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekU7UUFFRCxPQUFPLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDM0QsQ0FBQztJQUVNLFdBQVcsQ0FBQyxTQUF5QjtRQUMxQyxJQUFJLENBQUMsQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ25DLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCxLQUFLLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLE9BQThCLENBQUMsRUFBRTtZQUMxRixNQUFNLGdCQUFnQixHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7WUFFN0MsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLElBQUksS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUMvQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDL0I7WUFFRCxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxFQUFFO2dCQUM3RixnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7YUFDdEM7WUFFRCxJQUFJLElBQUksQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ3hGLGdCQUFnQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUNoQztZQUVELElBQUksZ0JBQWdCLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtnQkFDakMsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUVELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDO2dCQUNsQixNQUFNLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRTtnQkFDekIsYUFBYSxFQUFFLGNBQWMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2FBQzNELENBQUMsQ0FBQztTQUNKO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU0sb0JBQW9CO1FBQ3pCLE1BQU0sS0FBSyxHQUFHLElBQUksS0FBSyxFQUFVLENBQUM7UUFFbEMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxvQkFBb0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUM7UUFFcEYsS0FBSyxNQUFNLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO1lBQ3RDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxTQUFTLENBQUMsYUFBYSxNQUFNLENBQUMsQ0FBQztZQUMvQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEU7UUFFRCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUIsQ0FBQztDQUNGO0FBNkJEOzs7O0dBSUc7QUFDSCxTQUFnQixVQUFVLENBQUMsS0FBMkI7SUFDcEQsT0FBTyxJQUFJLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDeEYsQ0FBQztBQUZELGdDQUVDO0FBRUQsU0FBUyxNQUFNLENBQUMsQ0FBUyxFQUFFLENBQVM7SUFDbEMsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM3QixPQUFPLE1BQU0sR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLEdBQUcsTUFBTSxDQUFDLENBQUM7QUFDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEplc3RGcmllbmRseUFzc2VydGlvbiB9IGZyb20gJy4uL2Fzc2VydGlvbic7XG5pbXBvcnQgeyBTdGFja0luc3BlY3RvciB9IGZyb20gJy4uL2luc3BlY3Rvcic7XG5cbmNsYXNzIEhhdmVPdXRwdXRBc3NlcnRpb24gZXh0ZW5kcyBKZXN0RnJpZW5kbHlBc3NlcnRpb248U3RhY2tJbnNwZWN0b3I+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBpbnNwZWN0ZWQ6IEluc3BlY3Rpb25GYWlsdXJlW10gPSBbXTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IG91dHB1dE5hbWU/OiBzdHJpbmcsIHByaXZhdGUgcmVhZG9ubHkgZXhwb3J0TmFtZT86IGFueSwgcHJpdmF0ZSBvdXRwdXRWYWx1ZT86IGFueSkge1xuICAgIHN1cGVyKCk7XG4gICAgaWYgKCF0aGlzLm91dHB1dE5hbWUgJiYgIXRoaXMuZXhwb3J0TmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdBdCBsZWFzdCBvbmUgb2YgW291dHB1dE5hbWUsIGV4cG9ydE5hbWVdIHNob3VsZCBiZSBwcm92aWRlZCcpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVzY3JpcHRpb24oKTogc3RyaW5nIHtcbiAgICBjb25zdCBkZXNjcmlwdGlvblBhcnRzQXJyYXkgPSBuZXcgQXJyYXk8c3RyaW5nPigpO1xuXG4gICAgaWYgKHRoaXMub3V0cHV0TmFtZSkge1xuICAgICAgZGVzY3JpcHRpb25QYXJ0c0FycmF5LnB1c2goYG5hbWUgJyR7dGhpcy5vdXRwdXROYW1lfSdgKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuZXhwb3J0TmFtZSkge1xuICAgICAgZGVzY3JpcHRpb25QYXJ0c0FycmF5LnB1c2goYGV4cG9ydCBuYW1lICR7SlNPTi5zdHJpbmdpZnkodGhpcy5leHBvcnROYW1lKX1gKTtcbiAgICB9XG4gICAgaWYgKHRoaXMub3V0cHV0VmFsdWUpIHtcbiAgICAgIGRlc2NyaXB0aW9uUGFydHNBcnJheS5wdXNoKGB2YWx1ZSAke0pTT04uc3RyaW5naWZ5KHRoaXMub3V0cHV0VmFsdWUpfWApO1xuICAgIH1cblxuICAgIHJldHVybiAnb3V0cHV0IHdpdGggJyArIGRlc2NyaXB0aW9uUGFydHNBcnJheS5qb2luKCcsICcpO1xuICB9XG5cbiAgcHVibGljIGFzc2VydFVzaW5nKGluc3BlY3RvcjogU3RhY2tJbnNwZWN0b3IpOiBib29sZWFuIHtcbiAgICBpZiAoISgnT3V0cHV0cycgaW4gaW5zcGVjdG9yLnZhbHVlKSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgW25hbWUsIHByb3BzXSBvZiBPYmplY3QuZW50cmllcyhpbnNwZWN0b3IudmFsdWUuT3V0cHV0cyBhcyBSZWNvcmQ8c3RyaW5nLCBhbnk+KSkge1xuICAgICAgY29uc3QgbWlzbWF0Y2hlZEZpZWxkcyA9IG5ldyBBcnJheTxzdHJpbmc+KCk7XG5cbiAgICAgIGlmICh0aGlzLm91dHB1dE5hbWUgJiYgbmFtZSAhPT0gdGhpcy5vdXRwdXROYW1lKSB7XG4gICAgICAgIG1pc21hdGNoZWRGaWVsZHMucHVzaCgnbmFtZScpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5leHBvcnROYW1lICYmIEpTT04uc3RyaW5naWZ5KHRoaXMuZXhwb3J0TmFtZSkgIT09IEpTT04uc3RyaW5naWZ5KHByb3BzLkV4cG9ydD8uTmFtZSkpIHtcbiAgICAgICAgbWlzbWF0Y2hlZEZpZWxkcy5wdXNoKCdleHBvcnQgbmFtZScpO1xuICAgICAgfVxuXG4gICAgICBpZiAodGhpcy5vdXRwdXRWYWx1ZSAmJiBKU09OLnN0cmluZ2lmeSh0aGlzLm91dHB1dFZhbHVlKSAhPT0gSlNPTi5zdHJpbmdpZnkocHJvcHMuVmFsdWUpKSB7XG4gICAgICAgIG1pc21hdGNoZWRGaWVsZHMucHVzaCgndmFsdWUnKTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1pc21hdGNoZWRGaWVsZHMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmluc3BlY3RlZC5wdXNoKHtcbiAgICAgICAgb3V0cHV0OiB7IFtuYW1lXTogcHJvcHMgfSxcbiAgICAgICAgZmFpbHVyZVJlYXNvbjogYG1pc21hdGNoZWQgJHttaXNtYXRjaGVkRmllbGRzLmpvaW4oJywgJyl9YCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZW5lcmF0ZUVycm9yTWVzc2FnZSgpIHtcbiAgICBjb25zdCBsaW5lcyA9IG5ldyBBcnJheTxzdHJpbmc+KCk7XG5cbiAgICBsaW5lcy5wdXNoKGBOb25lIG9mICR7dGhpcy5pbnNwZWN0ZWQubGVuZ3RofSBvdXRwdXRzIG1hdGNoZXMgJHt0aGlzLmRlc2NyaXB0aW9ufS5gKTtcblxuICAgIGZvciAoY29uc3QgaW5zcGVjdGVkIG9mIHRoaXMuaW5zcGVjdGVkKSB7XG4gICAgICBsaW5lcy5wdXNoKGAtICR7aW5zcGVjdGVkLmZhaWx1cmVSZWFzb259IGluOmApO1xuICAgICAgbGluZXMucHVzaChpbmRlbnQoNCwgSlNPTi5zdHJpbmdpZnkoaW5zcGVjdGVkLm91dHB1dCwgbnVsbCwgMikpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGluZXMuam9pbignXFxuJyk7XG4gIH1cbn1cblxuLyoqXG4gKiBJbnRlcmZhY2UgZm9yIGhhdmVPdXRwdXQgZnVuY3Rpb24gcHJvcGVydGllc1xuICogTk9URSB0aGF0IGF0IGxlYXN0IG9uZSBvZiBbb3V0cHV0TmFtZSwgZXhwb3J0TmFtZV0gc2hvdWxkIGJlIHByb3ZpZGVkXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSGF2ZU91dHB1dFByb3BlcnRpZXMge1xuICAvKipcbiAgICogTG9naWNhbCBJRCBvZiB0aGUgb3V0cHV0XG4gICAqIEBkZWZhdWx0IC0gdGhlIGxvZ2ljYWwgSUQgb2YgdGhlIG91dHB1dCB3aWxsIG5vdCBiZSBjaGVja2VkXG4gICAqL1xuICBvdXRwdXROYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogRXhwb3J0IG5hbWUgb2YgdGhlIG91dHB1dCwgd2hlbiBpdCdzIGV4cG9ydGVkIGZvciBjcm9zcy1zdGFjayByZWZlcmVuY2luZ1xuICAgKiBAZGVmYXVsdCAtIHRoZSBleHBvcnQgbmFtZSBpcyBub3QgcmVxdWlyZWQgYW5kIHdpbGwgbm90IGJlIGNoZWNrZWRcbiAgICovXG4gIGV4cG9ydE5hbWU/OiBhbnk7XG4gIC8qKlxuICAgKiBWYWx1ZSBvZiB0aGUgb3V0cHV0O1xuICAgKiBAZGVmYXVsdCAtIHRoZSB2YWx1ZSB3aWxsIG5vdCBiZSBjaGVja2VkXG4gICAqL1xuICBvdXRwdXRWYWx1ZT86IGFueTtcbn1cblxuaW50ZXJmYWNlIEluc3BlY3Rpb25GYWlsdXJlIHtcbiAgb3V0cHV0OiBhbnk7XG4gIGZhaWx1cmVSZWFzb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBBbiBhc3NlcnRpb24gIHRvIGNoZWNrIHdoZXRoZXIgT3V0cHV0IHdpdGggcGFydGljdWxhciBwcm9wZXJ0aWVzIGlzIHByZXNlbnQgaW4gYSBzdGFja1xuICogQHBhcmFtIHByb3BzICBwcm9wZXJ0aWVzIG9mIHRoZSBPdXRwdXQgdGhhdCBpcyBiZWluZyBhc3NlcnRlZCBhZ2FpbnN0LlxuICogICAgICAgICAgICAgICBDaGVjayBgYEhhdmVPdXRwdXRQcm9wZXJ0aWVzYGAgaW50ZXJmYWNlIHRvIGdldCBmdWxsIGxpc3Qgb2YgYXZhaWxhYmxlIHBhcmFtZXRlcnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhdmVPdXRwdXQocHJvcHM6IEhhdmVPdXRwdXRQcm9wZXJ0aWVzKTogSmVzdEZyaWVuZGx5QXNzZXJ0aW9uPFN0YWNrSW5zcGVjdG9yPiB7XG4gIHJldHVybiBuZXcgSGF2ZU91dHB1dEFzc2VydGlvbihwcm9wcy5vdXRwdXROYW1lLCBwcm9wcy5leHBvcnROYW1lLCBwcm9wcy5vdXRwdXRWYWx1ZSk7XG59XG5cbmZ1bmN0aW9uIGluZGVudChuOiBudW1iZXIsIHM6IHN0cmluZykge1xuICBjb25zdCBwcmVmaXggPSAnICcucmVwZWF0KG4pO1xuICByZXR1cm4gcHJlZml4ICsgcy5yZXBsYWNlKC9cXG4vZywgJ1xcbicgKyBwcmVmaXgpO1xufVxuIl19
@@ -43,14 +43,13 @@ class HaveResourceAssertion extends assertion_1.JestFriendlyAssertion {
43
43
  properties === undefined ? have_resource_matchers_1.anything() :
44
44
  allowValueExtension ? have_resource_matchers_1.deepObjectLike(properties) :
45
45
  have_resource_matchers_1.objectLike(properties);
46
- this.part = part !== null && part !== void 0 ? part : ResourcePart.Properties;
46
+ this.part = part ?? ResourcePart.Properties;
47
47
  }
48
48
  assertUsing(inspector) {
49
- var _a;
50
49
  for (const logicalId of Object.keys(inspector.value.Resources || {})) {
51
50
  const resource = inspector.value.Resources[logicalId];
52
51
  if (resource.Type === this.resourceType) {
53
- const propsToCheck = this.part === ResourcePart.Properties ? ((_a = resource.Properties) !== null && _a !== void 0 ? _a : {}) : resource;
52
+ const propsToCheck = this.part === ResourcePart.Properties ? (resource.Properties ?? {}) : resource;
54
53
  // Pass inspection object as 2nd argument, initialize failure with default string,
55
54
  // to maintain backwards compatibility with old predicate API.
56
55
  const inspection = { resource, failureReason: 'Object did not match predicate' };
@@ -128,4 +127,4 @@ function isSuperObject(superObj, pattern, errors = [], allowValueExtension = fal
128
127
  return ret;
129
128
  }
130
129
  exports.isSuperObject = isSuperObject;
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGF2ZS1yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhhdmUtcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNENBQWdFO0FBRWhFLHFFQUF1RjtBQUV2Rjs7Ozs7OztHQU9HO0FBQ1UsUUFBQSxNQUFNLEdBQUcsWUFBWSxDQUFDO0FBRW5DOzs7Ozs7Ozs7O0dBVUc7QUFDSCxTQUFnQixZQUFZLENBQzFCLFlBQW9CLEVBQ3BCLFVBQWdCLEVBQ2hCLFVBQXlCLEVBQ3pCLHNCQUErQixLQUFLO0lBQ3BDLE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0FBQzlGLENBQUM7QUFORCxvQ0FNQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQzlCLFlBQW9CLEVBQ3BCLFVBQWdCLEVBQ2hCLFVBQXlCO0lBQ3pCLE9BQU8sWUFBWSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ2xFLENBQUM7QUFMRCw0Q0FLQztBQUlELE1BQWEscUJBQXNCLFNBQVEsaUNBQXFDO0lBSzlFLFlBQ21CLFlBQW9CLEVBQ3JDLFVBQWdCLEVBQ2hCLElBQW1CLEVBQ25CLHNCQUErQixLQUFLO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBSlMsaUJBQVksR0FBWixZQUFZLENBQVE7UUFMdEIsY0FBUyxHQUF3QixFQUFFLENBQUM7UUFXbkQsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2xELFVBQVUsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLGlDQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsdUNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO29CQUNoRCxtQ0FBVSxDQUFDLFVB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WXZCO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLFVBQVUsQ0FBQyxDQUFNO0lBQ3hCLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLG1CQUFtQixDQUFDO0FBQzFELENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxTQUFnQixhQUFhLENBQUMsUUFBYSxFQUFFLE9BQVksRUFBRSxTQUFtQixFQUFFLEVBQUUsc0JBQStCLEtBQUs7SUFDcEgsTUFBTSxPQUFPLEdBQUcsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLHVDQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1DQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFcEYsTUFBTSxVQUFVLEdBQXNCLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDaEYsTUFBTSxHQUFHLEdBQUcsOEJBQUssQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ2pELElBQUksQ0FBQyxHQUFHLEVBQUU7UUFDUixNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztLQUN2QztJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQVRELHNDQVNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXNzZXJ0aW9uLCBKZXN0RnJpZW5kbHlBc3NlcnRpb24gfSBmcm9tICcuLi9hc3NlcnRpb24nO1xuaW1wb3J0IHsgU3RhY2tJbnNwZWN0b3IgfSBmcm9tICcuLi9pbnNwZWN0b3InO1xuaW1wb3J0IHsgYW55dGhpbmcsIGRlZXBPYmplY3RMaWtlLCBtYXRjaCwgb2JqZWN0TGlrZSB9IGZyb20gJy4vaGF2ZS1yZXNvdXJjZS1tYXRjaGVycyc7XG5cbi8qKlxuICogTWFnaWMgdmFsdWUgdG8gc2lnbmlmeSB0aGF0IGEgY2VydGFpbiBrZXkgc2hvdWxkIGJlIGFic2VudCBmcm9tIHRoZSBwcm9wZXJ0eSBiYWcuXG4gKlxuICogVGhlIHByb3BlcnR5IGlzIGVpdGhlciBub3QgcHJlc2VudCBvciBzZXQgdG8gYHVuZGVmaW5lZC5cbiAqXG4gKiBOT1RFOiBgQUJTRU5UYCBvbmx5IHdvcmtzIHdpdGggdGhlIGBoYXZlUmVzb3VyY2UoKWAgYW5kIGBoYXZlUmVzb3VyY2VMaWtlKClgXG4gKiBhc3NlcnRpb25zLlxuICovXG5leHBvcnQgY29uc3QgQUJTRU5UID0gJ3t7QUJTRU5UfX0nO1xuXG4vKipcbiAqIEFuIGFzc2VydGlvbiB0byBjaGVjayB3aGV0aGVyIGEgcmVzb3VyY2Ugb2YgYSBnaXZlbiB0eXBlIGFuZCB3aXRoIHRoZSBnaXZlbiBwcm9wZXJ0aWVzIGV4aXN0cywgZGlzcmVnYXJkaW5nIHByb3BlcnRpZXNcbiAqXG4gKiBAcGFyYW0gcmVzb3VyY2VUeXBlIHRoZSB0eXBlIG9mIHRoZSByZXNvdXJjZSB0aGF0IGlzIGV4cGVjdGVkIHRvIGJlIHByZXNlbnQuXG4gKiBAcGFyYW0gcHJvcGVydGllcyAgIHRoZSBwcm9wZXJ0aWVzIHRoYXQgdGhlIHJlc291cmNlIGlzIGV4cGVjdGVkIHRvIGhhdmUuIEEgZnVuY3Rpb24gbWF5IGJlIHByb3ZpZGVkLCBpbiB3aGljaCBjYXNlXG4gKiAgICAgICAgICAgICAgICAgICAgIGl0IHdpbGwgYmUgY2FsbGVkIHdpdGggdGhlIHByb3BlcnRpZXMgb2YgY2FuZGlkYXRlIHJlc291cmNlcyBhbmQgYW4gYGBJbnNwZWN0aW9uRmFpbHVyZWBgXG4gKiAgICAgICAgICAgICAgICAgICAgIGluc3RhbmNlIG9uIHdoaWNoIGVycm9ycyBzaG91bGQgYmUgYXBwZW5kZWQsIGFuZCBzaG91bGQgcmV0dXJuIGEgdHJ1dGh5IHZhbHVlIHRvIGRlbm90ZSBhIG1hdGNoLlxuICogQHBhcmFtIGNvbXBhcmlzb24gICB0aGUgZW50aXR5IHRoYXQgaXMgYmVpbmcgYXNzZXJ0ZWQgYWdhaW5zdC5cbiAqIEBwYXJhbSBhbGxvd1ZhbHVlRXh0ZW5zaW9uIGlmIHByb3BlcnRpZXMgaXMgYW4gb2JqZWN0LCB0ZWxscyB3aGV0aGVyIHZhbHVlcyBtdXN0IG1hdGNoIGV4YWN0bHksIG9yIGlmIHRoZXkgYXJlXG4gKiAgICAgICAgICAgICAgICAgICAgIGFsbG93ZWQgdG8gYmUgc3VwZXJzZXRzIG9mIHRoZSByZWZlcmVuY2UgdmFsdWVzLiBNZWFuaW5nbGVzcyBpZiBwcm9wZXJ0aWVzIGlzIGEgZnVuY3Rpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXZlUmVzb3VyY2UoXG4gIHJlc291cmNlVHlwZTogc3RyaW5nLFxuICBwcm9wZXJ0aWVzPzogYW55LFxuICBjb21wYXJpc29uPzogUmVzb3VyY2VQYXJ0LFxuICBhbGxvd1ZhbHVlRXh0ZW5zaW9uOiBib29sZWFuID0gZmFsc2UpOiBBc3NlcnRpb248U3RhY2tJbnNwZWN0b3I+IHtcbiAgcmV0dXJuIG5ldyBIYXZlUmVzb3VyY2VBc3NlcnRpb24ocmVzb3VyY2VUeXBlLCBwcm9wZXJ0aWVzLCBjb21wYXJpc29uLCBhbGxvd1ZhbHVlRXh0ZW5zaW9uKTtcbn1cblxuLyoqXG4gKiBTdWdhciBmb3IgY2FsbGluZyBgYGhhdmVSZXNvdXJjZWBgIHdpdGggYGBhbGxvd1ZhbHVlRXh0ZW5zaW9uYGAgc2V0IHRvIGBgdHJ1ZWBgLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaGF2ZVJlc291cmNlTGlrZShcbiAgcmVzb3VyY2VUeXBlOiBzdHJpbmcsXG4gIHByb3BlcnRpZXM/OiBhbnksXG4gIGNvbXBhcmlzb24/OiBSZXNvdXJjZVBhcnQpIHtcbiAgcmV0dXJuIGhhdmVSZXNvdXJjZShyZXNvdXJjZVR5cGUsIHByb3BlcnRpZXMsIGNvbXBhcmlzb24sIHRydWUpO1xufVxuXG5leHBvcnQgdHlwZSBQcm9wZXJ0eU1hdGNoZXIgPSAocHJvcHM6IGFueSwgaW5zcGVjdGlvbjogSW5zcGVjdGlvbkZhaWx1cmUpID0+IGJvb2xlYW47XG5cbmV4cG9ydCBjbGFzcyBIYXZlUmVzb3VyY2VBc3NlcnRpb24gZXh0ZW5kcyBKZXN0RnJpZW5kbHlBc3NlcnRpb248U3RhY2tJbnNwZWN0b3I+IHtcbiAgcHJpdmF0ZSByZWFkb25seSBpbnNwZWN0ZWQ6IEluc3BlY3Rpb25GYWlsdXJlW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBwYXJ0OiBSZXNvdXJjZVBhcnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgbWF0Y2hlcjogYW55O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzb3VyY2VUeXBlOiBzdHJpbmcsXG4gICAgcHJvcGVydGllcz86IGFueSxcbiAgICBwYXJ0PzogUmVzb3VyY2VQYXJ0LFxuICAgIGFsbG93VmFsdWVFeHRlbnNpb246IGJvb2xlYW4gPSBmYWxzZSkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLm1hdGNoZXIgPSBpc0NhbGxhYmxlKHByb3BlcnRpZXMpID8gcHJvcGVydGllcyA6XG4gICAgICBwcm9wZXJ0aWVzID09PSB1bmRlZmluZWQgPyBhbnl0aGluZygpIDpcbiAgICAgICAgYWxsb3dWYWx1ZUV4dGVuc2lvbiA/IGRlZXBPYmplY3RMaWtlKHByb3BlcnRpZXMpIDpcbiAgICAgICAgICBvYmplY3RMaWtlKHByb3BlcnRpZXMpO1xuICAgIHRoaXMucGFydCA9IHBhcnQgPz8gUmVzb3VyY2VQYXJ0LlByb3BlcnRpZXM7XG4gIH1cblxuICBwdWJsaWMgYXNzZXJ0VXNpbmcoaW5zcGVjdG9yOiBTdGFja0luc3BlY3Rvcik6IGJvb2xlYW4ge1xuICAgIGZvciAoY29uc3QgbG9naWNhbElkIG9mIE9iamVjdC5rZXlzKGluc3BlY3Rvci52YWx1ZS5SZXNvdXJjZXMgfHwge30pKSB7XG4gICAgICBjb25zdCByZXNvdXJjZSA9IGluc3BlY3Rvci52YWx1ZS5SZXNvdXJjZXNbbG9naWNhbElkXTtcbiAgICAgIGlmIChyZXNvdXJjZS5UeXBlID09PSB0aGlzLnJlc291cmNlVHlwZSkge1xuICAgICAgICBjb25zdCBwcm9wc1RvQ2hlY2sgPSB0aGlzLnBhcnQgPT09IFJlc291cmNlUGFydC5Qcm9wZXJ0aWVzID8gKHJlc291cmNlLlByb3BlcnRpZXMgPz8ge30pIDogcmVzb3VyY2U7XG5cbiAgICAgICAgLy8gUGFzcyBpbnNwZWN0aW9uIG9iamVjdCBhcyAybmQgYXJndW1lbnQsIGluaXRpYWxpemUgZmFpbHVyZSB3aXRoIGRlZmF1bHQgc3RyaW5nLFxuICAgICAgICAvLyB0byBtYWludGFpbiBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIG9sZCBwcmVkaWNhdGUgQVBJLlxuICAgICAgICBjb25zdCBpbnNwZWN0aW9uID0geyByZXNvdXJjZSwgZmFpbHVyZVJlYXNvbjogJ09iamVjdCBkaWQgbm90IG1hdGNoIHByZWRpY2F0ZScgfTtcblxuICAgICAgICBpZiAobWF0Y2gocHJvcHNUb0NoZWNrLCB0aGlzLm1hdGNoZXIsIGluc3BlY3Rpb24pKSB7XG4gICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmluc3BlY3RlZC5wdXNoKGluc3BlY3Rpb24pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBnZW5lcmF0ZUVycm9yTWVzc2FnZSgpIHtcbiAgICBjb25zdCBsaW5lczogc3RyaW5nW10gPSBbXTtcbiAgICBsaW5lcy5wdXNoKGBOb25lIG9mICR7dGhpcy5pbnNwZWN0ZWQubGVuZ3RofSByZXNvdXJjZXMgbWF0Y2hlcyAke3RoaXMuZGVzY3JpcHRpb259LmApO1xuXG4gICAgZm9yIChjb25zdCBpbnNwZWN0ZWQgb2YgdGhpcy5pbnNwZWN0ZWQpIHtcbiAgICAgIGxpbmVzLnB1c2goYC0gJHtpbnNwZWN0ZWQuZmFpbHVyZVJlYXNvbn0gaW46YCk7XG4gICAgICBsaW5lcy5wdXNoKGluZGVudCg0LCBKU09OLnN0cmluZ2lmeShpbnNwZWN0ZWQucmVzb3VyY2UsIG51bGwsIDIpKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxpbmVzLmpvaW4oJ1xcbicpO1xuICB9XG5cbiAgcHVibGljIGFzc2VydE9yVGhyb3coaW5zcGVjdG9yOiBTdGFja0luc3BlY3Rvcikge1xuICAgIGlmICghdGhpcy5hc3NlcnRVc2luZyhpbnNwZWN0b3IpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IodGhpcy5nZW5lcmF0ZUVycm9yTWVzc2FnZSgpKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRlc2NyaXB0aW9uKCk6IHN0cmluZyB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cbiAgICByZXR1cm4gYHJlc291cmNlICcke3RoaXMucmVzb3VyY2VUeXBlfScgd2l0aCAke0pTT04uc3RyaW5naWZ5KHRoaXMubWF0Y2hlciwgdW5kZWZpbmVkLCAyKX1gO1xuICB9XG59XG5cbmZ1bmN0aW9uIGluZGVudChuOiBudW1iZXIsIHM6IHN0cmluZykge1xuICBjb25zdCBwcmVmaXggPSAnICcucmVwZWF0KG4pO1xuICByZXR1cm4gcHJlZml4ICsgcy5yZXBsYWNlKC9cXG4vZywgJ1xcbicgKyBwcmVmaXgpO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEluc3BlY3Rpb25GYWlsdXJlIHtcbiAgcmVzb3VyY2U6IGFueTtcbiAgZmFpbHVyZVJlYXNvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIFdoYXQgcGFydCBvZiB0aGUgcmVzb3VyY2UgdG8gY29tcGFyZVxuICovXG5leHBvcnQgZW51bSBSZXNvdXJjZVBhcnQge1xuICAvKipcbiAgICogT25seSBjb21wYXJlIHRoZSByZXNvdXJjZSdzIHByb3BlcnRpZXNcbiAgICovXG4gIFByb3BlcnRpZXMsXG5cbiAgLyoqXG4gICAqIENoZWNrIHRoZSBlbnRpcmUgQ2xvdWRGb3JtYXRpb24gY29uZmlnXG4gICAqXG4gICAqIChpbmNsdWRpbmcgVXBkYXRlQ29uZmlnLCBEZXBlbmRzT24sIGV0Yy4pXG4gICAqL1xuICBDb21wbGV0ZURlZmluaXRpb25cbn1cblxuLyoqXG4gKiBXaGV0aGVyIGEgdmFsdWUgaXMgYSBjYWxsYWJsZVxuICovXG5mdW5jdGlvbiBpc0NhbGxhYmxlKHg6IGFueSk6IHggaXMgKCguLi5hcmdzOiBhbnlbXSkgPT4gYW55KSB7XG4gIHJldHVybiB4ICYmIHt9LnRvU3RyaW5nLmNhbGwoeCkgPT09ICdbb2JqZWN0IEZ1bmN0aW9uXSc7XG59XG5cbi8qKlxuICogUmV0dXJuIHdoZXRoZXIgYHN1cGVyT2JqYCBpcyBhIHN1cGVyLW9iamVjdCBvZiBgb2JqYC5cbiAqXG4gKiBBIHN1cGVyLW9iamVjdCBoYXMgdGhlIHNhbWUgb3IgbW9yZSBwcm9wZXJ0eSB2YWx1ZXMsIHJlY3Vyc2luZyBpbnRvIHN1YiBwcm9wZXJ0aWVzIGlmIGBgYWxsb3dWYWx1ZUV4dGVuc2lvbmBgIGlzIHRydWUuXG4gKlxuICogQXQgYW55IHBvaW50IGluIHRoZSBvYmplY3QsIGEgdmFsdWUgbWF5IGJlIHJlcGxhY2VkIHdpdGggYSBmdW5jdGlvbiB3aGljaCB3aWxsIGJlIHVzZWQgdG8gY2hlY2sgdGhhdCBwYXJ0aWN1bGFyIGZpZWxkLlxuICogVGhlIHR5cGUgb2YgYSBtYXRjaGVyIGZ1bmN0aW9uIGlzIGV4cGVjdGVkIHRvIGJlIG9mIHR5cGUgUHJvcGVydHlNYXRjaGVyLlxuICpcbiAqIEBkZXByZWNhdGVkIC0gVXNlIGBvYmplY3RMaWtlYCBvciBhIGxpdGVyYWwgb2JqZWN0IGluc3RlYWQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1N1cGVyT2JqZWN0KHN1cGVyT2JqOiBhbnksIHBhdHRlcm46IGFueSwgZXJyb3JzOiBzdHJpbmdbXSA9IFtdLCBhbGxvd1ZhbHVlRXh0ZW5zaW9uOiBib29sZWFuID0gZmFsc2UpOiBib29sZWFuIHtcbiAgY29uc3QgbWF0Y2hlciA9IGFsbG93VmFsdWVFeHRlbnNpb24gPyBkZWVwT2JqZWN0TGlrZShwYXR0ZXJuKSA6IG9iamVjdExpa2UocGF0dGVybik7XG5cbiAgY29uc3QgaW5zcGVjdGlvbjogSW5zcGVjdGlvbkZhaWx1cmUgPSB7IHJlc291cmNlOiBzdXBlck9iaiwgZmFpbHVyZVJlYXNvbjogJycgfTtcbiAgY29uc3QgcmV0ID0gbWF0Y2goc3VwZXJPYmosIG1hdGNoZXIsIGluc3BlY3Rpb24pO1xuICBpZiAoIXJldCkge1xuICAgIGVycm9ycy5wdXNoKGluc3BlY3Rpb24uZmFpbHVyZVJlYXNvbik7XG4gIH1cbiAgcmV0dXJuIHJldDtcbn1cbiJdfQ==
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGF2ZS1yZXNvdXJjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImhhdmUtcmVzb3VyY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNENBQWdFO0FBRWhFLHFFQUF1RjtBQUV2Rjs7Ozs7OztHQU9HO0FBQ1UsUUFBQSxNQUFNLEdBQUcsWUFBWSxDQUFDO0FBRW5DOzs7Ozs7Ozs7O0dBVUc7QUFDSCxTQUFnQixZQUFZLENBQzFCLFlBQW9CLEVBQ3BCLFVBQWdCLEVBQ2hCLFVBQXlCLEVBQ3pCLHNCQUErQixLQUFLO0lBQ3BDLE9BQU8sSUFBSSxxQkFBcUIsQ0FBQyxZQUFZLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0FBQzlGLENBQUM7QUFORCxvQ0FNQztBQUVEOztHQUVHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQzlCLFlBQW9CLEVBQ3BCLFVBQWdCLEVBQ2hCLFVBQXlCO0lBQ3pCLE9BQU8sWUFBWSxDQUFDLFlBQVksRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBQ2xFLENBQUM7QUFMRCw0Q0FLQztBQUlELE1BQWEscUJBQXNCLFNBQVEsaUNBQXFDO0lBSzlFLFlBQ21CLFlBQW9CLEVBQ3JDLFVBQWdCLEVBQ2hCLElBQW1CLEVBQ25CLHNCQUErQixLQUFLO1FBQ3BDLEtBQUssRUFBRSxDQUFDO1FBSlMsaUJBQVksR0FBWixZQUFZLENBQVE7UUFMdEIsY0FBUyxHQUF3QixFQUFFLENBQUM7UUFXbkQsSUFBSSxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1lBQ2xELFVBQVUsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLGlDQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUNyQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsdUNBQWMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO29CQUNoRCxtQ0FBVSxDQUFDLFVB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QVMsVUFBVSxDQUFDLENBQU07SUFDeEIsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssbUJBQW1CLENBQUM7QUFDMUQsQ0FBQztBQUVEOzs7Ozs7Ozs7R0FTRztBQUNILFNBQWdCLGFBQWEsQ0FBQyxRQUFhLEVBQUUsT0FBWSxFQUFFLFNBQW1CLEVBQUUsRUFBRSxzQkFBK0IsS0FBSztJQUNwSCxNQUFNLE9BQU8sR0FBRyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsdUNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsbUNBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUVwRixNQUFNLFVBQVUsR0FBc0IsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUNoRixNQUFNLEdBQUcsR0FBRyw4QkFBSyxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDakQsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNSLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ3ZDO0lBQ0QsT0FBTyxHQUFHLENBQUM7QUFDYixDQUFDO0FBVEQsc0NBU0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3NlcnRpb24sIEplc3RGcmllbmRseUFzc2VydGlvbiB9IGZyb20gJy4uL2Fzc2VydGlvbic7XG5pbXBvcnQgeyBTdGFja0luc3BlY3RvciB9IGZyb20gJy4uL2luc3BlY3Rvcic7XG5pbXBvcnQgeyBhbnl0aGluZywgZGVlcE9iamVjdExpa2UsIG1hdGNoLCBvYmplY3RMaWtlIH0gZnJvbSAnLi9oYXZlLXJlc291cmNlLW1hdGNoZXJzJztcblxuLyoqXG4gKiBNYWdpYyB2YWx1ZSB0byBzaWduaWZ5IHRoYXQgYSBjZXJ0YWluIGtleSBzaG91bGQgYmUgYWJzZW50IGZyb20gdGhlIHByb3BlcnR5IGJhZy5cbiAqXG4gKiBUaGUgcHJvcGVydHkgaXMgZWl0aGVyIG5vdCBwcmVzZW50IG9yIHNldCB0byBgdW5kZWZpbmVkLlxuICpcbiAqIE5PVEU6IGBBQlNFTlRgIG9ubHkgd29ya3Mgd2l0aCB0aGUgYGhhdmVSZXNvdXJjZSgpYCBhbmQgYGhhdmVSZXNvdXJjZUxpa2UoKWBcbiAqIGFzc2VydGlvbnMuXG4gKi9cbmV4cG9ydCBjb25zdCBBQlNFTlQgPSAne3tBQlNFTlR9fSc7XG5cbi8qKlxuICogQW4gYXNzZXJ0aW9uIHRvIGNoZWNrIHdoZXRoZXIgYSByZXNvdXJjZSBvZiBhIGdpdmVuIHR5cGUgYW5kIHdpdGggdGhlIGdpdmVuIHByb3BlcnRpZXMgZXhpc3RzLCBkaXNyZWdhcmRpbmcgcHJvcGVydGllc1xuICpcbiAqIEBwYXJhbSByZXNvdXJjZVR5cGUgdGhlIHR5cGUgb2YgdGhlIHJlc291cmNlIHRoYXQgaXMgZXhwZWN0ZWQgdG8gYmUgcHJlc2VudC5cbiAqIEBwYXJhbSBwcm9wZXJ0aWVzICAgdGhlIHByb3BlcnRpZXMgdGhhdCB0aGUgcmVzb3VyY2UgaXMgZXhwZWN0ZWQgdG8gaGF2ZS4gQSBmdW5jdGlvbiBtYXkgYmUgcHJvdmlkZWQsIGluIHdoaWNoIGNhc2VcbiAqICAgICAgICAgICAgICAgICAgICAgaXQgd2lsbCBiZSBjYWxsZWQgd2l0aCB0aGUgcHJvcGVydGllcyBvZiBjYW5kaWRhdGUgcmVzb3VyY2VzIGFuZCBhbiBgYEluc3BlY3Rpb25GYWlsdXJlYGBcbiAqICAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2Ugb24gd2hpY2ggZXJyb3JzIHNob3VsZCBiZSBhcHBlbmRlZCwgYW5kIHNob3VsZCByZXR1cm4gYSB0cnV0aHkgdmFsdWUgdG8gZGVub3RlIGEgbWF0Y2guXG4gKiBAcGFyYW0gY29tcGFyaXNvbiAgIHRoZSBlbnRpdHkgdGhhdCBpcyBiZWluZyBhc3NlcnRlZCBhZ2FpbnN0LlxuICogQHBhcmFtIGFsbG93VmFsdWVFeHRlbnNpb24gaWYgcHJvcGVydGllcyBpcyBhbiBvYmplY3QsIHRlbGxzIHdoZXRoZXIgdmFsdWVzIG11c3QgbWF0Y2ggZXhhY3RseSwgb3IgaWYgdGhleSBhcmVcbiAqICAgICAgICAgICAgICAgICAgICAgYWxsb3dlZCB0byBiZSBzdXBlcnNldHMgb2YgdGhlIHJlZmVyZW5jZSB2YWx1ZXMuIE1lYW5pbmdsZXNzIGlmIHByb3BlcnRpZXMgaXMgYSBmdW5jdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGhhdmVSZXNvdXJjZShcbiAgcmVzb3VyY2VUeXBlOiBzdHJpbmcsXG4gIHByb3BlcnRpZXM/OiBhbnksXG4gIGNvbXBhcmlzb24/OiBSZXNvdXJjZVBhcnQsXG4gIGFsbG93VmFsdWVFeHRlbnNpb246IGJvb2xlYW4gPSBmYWxzZSk6IEFzc2VydGlvbjxTdGFja0luc3BlY3Rvcj4ge1xuICByZXR1cm4gbmV3IEhhdmVSZXNvdXJjZUFzc2VydGlvbihyZXNvdXJjZVR5cGUsIHByb3BlcnRpZXMsIGNvbXBhcmlzb24sIGFsbG93VmFsdWVFeHRlbnNpb24pO1xufVxuXG4vKipcbiAqIFN1Z2FyIGZvciBjYWxsaW5nIGBgaGF2ZVJlc291cmNlYGAgd2l0aCBgYGFsbG93VmFsdWVFeHRlbnNpb25gYCBzZXQgdG8gYGB0cnVlYGAuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBoYXZlUmVzb3VyY2VMaWtlKFxuICByZXNvdXJjZVR5cGU6IHN0cmluZyxcbiAgcHJvcGVydGllcz86IGFueSxcbiAgY29tcGFyaXNvbj86IFJlc291cmNlUGFydCkge1xuICByZXR1cm4gaGF2ZVJlc291cmNlKHJlc291cmNlVHlwZSwgcHJvcGVydGllcywgY29tcGFyaXNvbiwgdHJ1ZSk7XG59XG5cbmV4cG9ydCB0eXBlIFByb3BlcnR5TWF0Y2hlciA9IChwcm9wczogYW55LCBpbnNwZWN0aW9uOiBJbnNwZWN0aW9uRmFpbHVyZSkgPT4gYm9vbGVhbjtcblxuZXhwb3J0IGNsYXNzIEhhdmVSZXNvdXJjZUFzc2VydGlvbiBleHRlbmRzIEplc3RGcmllbmRseUFzc2VydGlvbjxTdGFja0luc3BlY3Rvcj4ge1xuICBwcml2YXRlIHJlYWRvbmx5IGluc3BlY3RlZDogSW5zcGVjdGlvbkZhaWx1cmVbXSA9IFtdO1xuICBwcml2YXRlIHJlYWRvbmx5IHBhcnQ6IFJlc291cmNlUGFydDtcbiAgcHJpdmF0ZSByZWFkb25seSBtYXRjaGVyOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXNvdXJjZVR5cGU6IHN0cmluZyxcbiAgICBwcm9wZXJ0aWVzPzogYW55LFxuICAgIHBhcnQ/OiBSZXNvdXJjZVBhcnQsXG4gICAgYWxsb3dWYWx1ZUV4dGVuc2lvbjogYm9vbGVhbiA9IGZhbHNlKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMubWF0Y2hlciA9IGlzQ2FsbGFibGUocHJvcGVydGllcykgPyBwcm9wZXJ0aWVzIDpcbiAgICAgIHByb3BlcnRpZXMgPT09IHVuZGVmaW5lZCA/IGFueXRoaW5nKCkgOlxuICAgICAgICBhbGxvd1ZhbHVlRXh0ZW5zaW9uID8gZGVlcE9iamVjdExpa2UocHJvcGVydGllcykgOlxuICAgICAgICAgIG9iamVjdExpa2UocHJvcGVydGllcyk7XG4gICAgdGhpcy5wYXJ0ID0gcGFydCA/PyBSZXNvdXJjZVBhcnQuUHJvcGVydGllcztcbiAgfVxuXG4gIHB1YmxpYyBhc3NlcnRVc2luZyhpbnNwZWN0b3I6IFN0YWNrSW5zcGVjdG9yKTogYm9vbGVhbiB7XG4gICAgZm9yIChjb25zdCBsb2dpY2FsSWQgb2YgT2JqZWN0LmtleXMoaW5zcGVjdG9yLnZhbHVlLlJlc291cmNlcyB8fCB7fSkpIHtcbiAgICAgIGNvbnN0IHJlc291cmNlID0gaW5zcGVjdG9yLnZhbHVlLlJlc291cmNlc1tsb2dpY2FsSWRdO1xuICAgICAgaWYgKHJlc291cmNlLlR5cGUgPT09IHRoaXMucmVzb3VyY2VUeXBlKSB7XG4gICAgICAgIGNvbnN0IHByb3BzVG9DaGVjayA9IHRoaXMucGFydCA9PT0gUmVzb3VyY2VQYXJ0LlByb3BlcnRpZXMgPyAocmVzb3VyY2UuUHJvcGVydGllcyA/PyB7fSkgOiByZXNvdXJjZTtcblxuICAgICAgICAvLyBQYXNzIGluc3BlY3Rpb24gb2JqZWN0IGFzIDJuZCBhcmd1bWVudCwgaW5pdGlhbGl6ZSBmYWlsdXJlIHdpdGggZGVmYXVsdCBzdHJpbmcsXG4gICAgICAgIC8vIHRvIG1haW50YWluIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggb2xkIHByZWRpY2F0ZSBBUEkuXG4gICAgICAgIGNvbnN0IGluc3BlY3Rpb24gPSB7IHJlc291cmNlLCBmYWlsdXJlUmVhc29uOiAnT2JqZWN0IGRpZCBub3QgbWF0Y2ggcHJlZGljYXRlJyB9O1xuXG4gICAgICAgIGlmIChtYXRjaChwcm9wc1RvQ2hlY2ssIHRoaXMubWF0Y2hlciwgaW5zcGVjdGlvbikpIHtcbiAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaW5zcGVjdGVkLnB1c2goaW5zcGVjdGlvbik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGdlbmVyYXRlRXJyb3JNZXNzYWdlKCkge1xuICAgIGNvbnN0IGxpbmVzOiBzdHJpbmdbXSA9IFtdO1xuICAgIGxpbmVzLnB1c2goYE5vbmUgb2YgJHt0aGlzLmluc3BlY3RlZC5sZW5ndGh9IHJlc291cmNlcyBtYXRjaGVzICR7dGhpcy5kZXNjcmlwdGlvbn0uYCk7XG5cbiAgICBmb3IgKGNvbnN0IGluc3BlY3RlZCBvZiB0aGlzLmluc3BlY3RlZCkge1xuICAgICAgbGluZXMucHVzaChgLSAke2luc3BlY3RlZC5mYWlsdXJlUmVhc29ufSBpbjpgKTtcbiAgICAgIGxpbmVzLnB1c2goaW5kZW50KDQsIEpTT04uc3RyaW5naWZ5KGluc3BlY3RlZC5yZXNvdXJjZSwgbnVsbCwgMikpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbGluZXMuam9pbignXFxuJyk7XG4gIH1cblxuICBwdWJsaWMgYXNzZXJ0T3JUaHJvdyhpbnNwZWN0b3I6IFN0YWNrSW5zcGVjdG9yKSB7XG4gICAgaWYgKCF0aGlzLmFzc2VydFVzaW5nKGluc3BlY3RvcikpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcih0aGlzLmdlbmVyYXRlRXJyb3JNZXNzYWdlKCkpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGVzY3JpcHRpb24oKTogc3RyaW5nIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxlblxuICAgIHJldHVybiBgcmVzb3VyY2UgJyR7dGhpcy5yZXNvdXJjZVR5cGV9JyB3aXRoICR7SlNPTi5zdHJpbmdpZnkodGhpcy5tYXRjaGVyLCB1bmRlZmluZWQsIDIpfWA7XG4gIH1cbn1cblxuZnVuY3Rpb24gaW5kZW50KG46IG51bWJlciwgczogc3RyaW5nKSB7XG4gIGNvbnN0IHByZWZpeCA9ICcgJy5yZXBlYXQobik7XG4gIHJldHVybiBwcmVmaXggKyBzLnJlcGxhY2UoL1xcbi9nLCAnXFxuJyArIHByZWZpeCk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSW5zcGVjdGlvbkZhaWx1cmUge1xuICByZXNvdXJjZTogYW55O1xuICBmYWlsdXJlUmVhc29uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogV2hhdCBwYXJ0IG9mIHRoZSByZXNvdXJjZSB0byBjb21wYXJlXG4gKi9cbmV4cG9ydCBlbnVtIFJlc291cmNlUGFydCB7XG4gIC8qKlxuICAgKiBPbmx5IGNvbXBhcmUgdGhlIHJlc291cmNlJ3MgcHJvcGVydGllc1xuICAgKi9cbiAgUHJvcGVydGllcyxcblxuICAvKipcbiAgICogQ2hlY2sgdGhlIGVudGlyZSBDbG91ZEZvcm1hdGlvbiBjb25maWdcbiAgICpcbiAgICogKGluY2x1ZGluZyBVcGRhdGVDb25maWcsIERlcGVuZHNPbiwgZXRjLilcbiAgICovXG4gIENvbXBsZXRlRGVmaW5pdGlvblxufVxuXG4vKipcbiAqIFdoZXRoZXIgYSB2YWx1ZSBpcyBhIGNhbGxhYmxlXG4gKi9cbmZ1bmN0aW9uIGlzQ2FsbGFibGUoeDogYW55KTogeCBpcyAoKC4uLmFyZ3M6IGFueVtdKSA9PiBhbnkpIHtcbiAgcmV0dXJuIHggJiYge30udG9TdHJpbmcuY2FsbCh4KSA9PT0gJ1tvYmplY3QgRnVuY3Rpb25dJztcbn1cblxuLyoqXG4gKiBSZXR1cm4gd2hldGhlciBgc3VwZXJPYmpgIGlzIGEgc3VwZXItb2JqZWN0IG9mIGBvYmpgLlxuICpcbiAqIEEgc3VwZXItb2JqZWN0IGhhcyB0aGUgc2FtZSBvciBtb3JlIHByb3BlcnR5IHZhbHVlcywgcmVjdXJzaW5nIGludG8gc3ViIHByb3BlcnRpZXMgaWYgYGBhbGxvd1ZhbHVlRXh0ZW5zaW9uYGAgaXMgdHJ1ZS5cbiAqXG4gKiBBdCBhbnkgcG9pbnQgaW4gdGhlIG9iamVjdCwgYSB2YWx1ZSBtYXkgYmUgcmVwbGFjZWQgd2l0aCBhIGZ1bmN0aW9uIHdoaWNoIHdpbGwgYmUgdXNlZCB0byBjaGVjayB0aGF0IHBhcnRpY3VsYXIgZmllbGQuXG4gKiBUaGUgdHlwZSBvZiBhIG1hdGNoZXIgZnVuY3Rpb24gaXMgZXhwZWN0ZWQgdG8gYmUgb2YgdHlwZSBQcm9wZXJ0eU1hdGNoZXIuXG4gKlxuICogQGRlcHJlY2F0ZWQgLSBVc2UgYG9iamVjdExpa2VgIG9yIGEgbGl0ZXJhbCBvYmplY3QgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU3VwZXJPYmplY3Qoc3VwZXJPYmo6IGFueSwgcGF0dGVybjogYW55LCBlcnJvcnM6IHN0cmluZ1tdID0gW10sIGFsbG93VmFsdWVFeHRlbnNpb246IGJvb2xlYW4gPSBmYWxzZSk6IGJvb2xlYW4ge1xuICBjb25zdCBtYXRjaGVyID0gYWxsb3dWYWx1ZUV4dGVuc2lvbiA/IGRlZXBPYmplY3RMaWtlKHBhdHRlcm4pIDogb2JqZWN0TGlrZShwYXR0ZXJuKTtcblxuICBjb25zdCBpbnNwZWN0aW9uOiBJbnNwZWN0aW9uRmFpbHVyZSA9IHsgcmVzb3VyY2U6IHN1cGVyT2JqLCBmYWlsdXJlUmVhc29uOiAnJyB9O1xuICBjb25zdCByZXQgPSBtYXRjaChzdXBlck9iaiwgbWF0Y2hlciwgaW5zcGVjdGlvbik7XG4gIGlmICghcmV0KSB7XG4gICAgZXJyb3JzLnB1c2goaW5zcGVjdGlvbi5mYWlsdXJlUmVhc29uKTtcbiAgfVxuICByZXR1cm4gcmV0O1xufVxuIl19
@@ -20,7 +20,7 @@ function canonicalizeTemplate(template) {
20
20
  const stringSubstitutions = new Array();
21
21
  const paramRe = /^AssetParameters([a-zA-Z0-9]{64})(S3Bucket|S3VersionKey|ArtifactHash)([a-zA-Z0-9]{8})$/;
22
22
  const assetsSeen = new Set();
23
- for (const paramName of Object.keys((template === null || template === void 0 ? void 0 : template.Parameters) || {})) {
23
+ for (const paramName of Object.keys(template?.Parameters || {})) {
24
24
  const m = paramRe.exec(paramName);
25
25
  if (!m) {
26
26
  continue;
@@ -67,4 +67,4 @@ function canonicalizeTemplate(template) {
67
67
  }
68
68
  }
69
69
  exports.canonicalizeTemplate = canonicalizeTemplate;
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fub25pY2FsaXplLWFzc2V0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNhbm9uaWNhbGl6ZS1hc3NldHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7Ozs7Ozs7OztHQVNHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsUUFBYTtJQUNoRCw0REFBNEQ7SUFDNUQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQzNCLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0tBQzNDO0lBRUQsNkJBQTZCO0lBQzdCLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxLQUFLLEVBQW9CLENBQUM7SUFDMUQsTUFBTSxPQUFPLEdBQUcsd0ZBQXdGLENBQUM7SUFFekcsTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUNyQyxLQUFLLE1BQU0sU0FBUyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsVUFBVSxLQUFJLEVBQUUsQ0FBQyxFQUFFO1FBQy9ELE1BQU0sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLENBQUMsRUFBRTtZQUFFLFNBQVM7U0FBRTtRQUNyQixJQUFJLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFBRSxTQUFTO1NBQUU7UUFFdkMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyQixNQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDO1FBRTNCLDJCQUEyQjtRQUMzQixtQkFBbUIsQ0FBQyxJQUFJLENBQUM7WUFDdkIsSUFBSSxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQUMsc0RBQXNELENBQUM7WUFDeEYsUUFBUSxFQUFFLElBQUk7U0FDZixDQUFDLENBQUM7UUFDSCxpQ0FBaUM7UUFDakMsbUJBQW1CLENBQUMsSUFBSSxDQUFDO1lBQ3ZCLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDckIsUUFBUSxFQUFFLE1BQU07U0FDakIsQ0FBQyxDQUFDO0tBQ0o7SUFFRCxzQkFBc0I7SUFDdEIsT0FBTyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFNUIsU0FBUyxVQUFVLENBQUMsSUFBUztRQUMzQixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQzdCO1FBRUQsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLElBQUksSUFBSSxLQUFLLElBQUksRUFBRTtZQUM3QyxNQUFNLEdBQUcsR0FBUSxFQUFFLENBQUM7WUFDcEIsS0FBSyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3pDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDbkM7WUFDRCxPQUFPLEdBQUcsQ0FBQztTQUNaO1FBRUQsSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDNUIsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDeEI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxTQUFTLFNBQVMsQ0FBQyxDQUFTO1FBQzFCLEtBQUssTUFBTSxDQUFDLEVBQUUsRUFBRSxXQUFXLENBQUMsSUFBSSxtQkFBbUIsRUFBRTtZQUNuRCxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxFQUFFLEVBQUUsV0FBVyxDQUFDLENBQUM7U0FDaEM7UUFDRCxPQUFPLENBQUMsQ0FBQztJQUNYLENBQUM7QUFDSCxDQUFDO0FBNURELG9EQTREQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmVkdWNlIHRlbXBsYXRlIHRvIGEgbm9ybWFsIGZvcm0gd2hlcmUgYXNzZXQgcmVmZXJlbmNlcyBoYXZlIGJlZW4gbm9ybWFsaXplZFxuICpcbiAqIFRoaXMgbWFrZXMgaXQgcG9zc2libGUgdG8gY29tcGFyZSB0ZW1wbGF0ZXMgaWYgYWxsIHRoYXQncyBkaWZmZXJlbnQgYmV0d2VlblxuICogdGhlbSBpcyB0aGUgaGFzaGVzIG9mIHRoZSBhc3NldCB2YWx1ZXMuXG4gKlxuICogQ3VycmVudGx5IG9ubHkgaGFuZGxlcyBwYXJhbWV0ZXJpemVkIGFzc2V0cywgYnV0IGNhbiAoYW5kIHNob3VsZClcbiAqIGJlIGFkYXB0ZWQgdG8gaGFuZGxlIGNvbnZlbnRpb24tbW9kZSBhc3NldHMgYXMgd2VsbCB3aGVuIHdlIHN0YXJ0IHVzaW5nXG4gKiBtb3JlIG9mIHRob3NlLlxuICovXG5leHBvcnQgZnVuY3Rpb24gY2Fub25pY2FsaXplVGVtcGxhdGUodGVtcGxhdGU6IGFueSk6IGFueSB7XG4gIC8vIEZvciB0aGUgd2VpcmQgY2FzZSB3aGVyZSB3ZSBoYXZlIGFuIGFycmF5IG9mIHRlbXBsYXRlcy4uLlxuICBpZiAoQXJyYXkuaXNBcnJheSh0ZW1wbGF0ZSkpIHtcbiAgICByZXR1cm4gdGVtcGxhdGUubWFwKGNhbm9uaWNhbGl6ZVRlbXBsYXRlKTtcbiAgfVxuXG4gIC8vIEZpbmQgYXNzZXRzIHZpYSBwYXJhbWV0ZXJzXG4gIGNvbnN0IHN0cmluZ1N1YnN0aXR1dGlvbnMgPSBuZXcgQXJyYXk8W1JlZ0V4cCwgc3RyaW5nXT4oKTtcbiAgY29uc3QgcGFyYW1SZSA9IC9eQXNzZXRQYXJhbWV0ZXJzKFthLXpBLVowLTldezY0fSkoUzNCdWNrZXR8UzNWZXJzaW9uS2V5fEFydGlmYWN0SGFzaCkoW2EtekEtWjAtOV17OH0pJC87XG5cbiAgY29uc3QgYXNzZXRzU2VlbiA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICBmb3IgKGNvbnN0IHBhcmFtTmFtZSBvZiBPYmplY3Qua2V5cyh0ZW1wbGF0ZT8uUGFyYW1ldGVycyB8fCB7fSkpIHtcbiAgICBjb25zdCBtID0gcGFyYW1SZS5leGVjKHBhcmFtTmFtZSk7XG4gICAgaWYgKCFtKSB7IGNvbnRpbnVlOyB9XG4gICAgaWYgKGFzc2V0c1NlZW4uaGFzKG1bMV0pKSB7IGNvbnRpbnVlOyB9XG5cbiAgICBhc3NldHNTZWVuLmFkZChtWzFdKTtcbiAgICBjb25zdCBpeCA9IGFzc2V0c1NlZW4uc2l6ZTtcblxuICAgIC8vIEZ1bGwgcGFyYW1ldGVyIHJlZmVyZW5jZVxuICAgIHN0cmluZ1N1YnN0aXR1dGlvbnMucHVzaChbXG4gICAgICBuZXcgUmVnRXhwKGBBc3NldFBhcmFtZXRlcnMke21bMV19KFMzQnVja2V0fFMzVmVyc2lvbktleXxBcnRpZmFjdEhhc2gpKFthLXpBLVowLTldezh9KWApLFxuICAgICAgYEFzc2V0JHtpeH0kMWAsXG4gICAgXSk7XG4gICAgLy8gU3Vic3RyaW5nIGFzc2V0IGhhc2ggcmVmZXJlbmNlXG4gICAgc3RyaW5nU3Vic3RpdHV0aW9ucy5wdXNoKFtcbiAgICAgIG5ldyBSZWdFeHAoYCR7bVsxXX1gKSxcbiAgICAgIGBBc3NldCR7aXh9SGFzaGAsXG4gICAgXSk7XG4gIH1cblxuICAvLyBTdWJzdGl0dXRlIHRoZW0gb3V0XG4gIHJldHVybiBzdWJzdGl0dXRlKHRlbXBsYXRlKTtcblxuICBmdW5jdGlvbiBzdWJzdGl0dXRlKHdoYXQ6IGFueSk6IGFueSB7XG4gICAgaWYgKEFycmF5LmlzQXJyYXkod2hhdCkpIHtcbiAgICAgIHJldHVybiB3aGF0Lm1hcChzdWJzdGl0dXRlKTtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHdoYXQgPT09ICdvYmplY3QnICYmIHdoYXQgIT09IG51bGwpIHtcbiAgICAgIGNvbnN0IHJldDogYW55ID0ge307XG4gICAgICBmb3IgKGNvbnN0IFtrLCB2XSBvZiBPYmplY3QuZW50cmllcyh3aGF0KSkge1xuICAgICAgICByZXRbc3RyaW5nU3ViKGspXSA9IHN1YnN0aXR1dGUodik7XG4gICAgICB9XG4gICAgICByZXR1cm4gcmV0O1xuICAgIH1cblxuICAgIGlmICh0eXBlb2Ygd2hhdCA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHJldHVybiBzdHJpbmdTdWIod2hhdCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHdoYXQ7XG4gIH1cblxuICBmdW5jdGlvbiBzdHJpbmdTdWIoeDogc3RyaW5nKSB7XG4gICAgZm9yIChjb25zdCBbcmUsIHJlcGxhY2VtZW50XSBvZiBzdHJpbmdTdWJzdGl0dXRpb25zKSB7XG4gICAgICB4ID0geC5yZXBsYWNlKHJlLCByZXBsYWNlbWVudCk7XG4gICAgfVxuICAgIHJldHVybiB4O1xuICB9XG59XG4iXX0=
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fub25pY2FsaXplLWFzc2V0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNhbm9uaWNhbGl6ZS1hc3NldHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUE7Ozs7Ozs7OztHQVNHO0FBQ0gsU0FBZ0Isb0JBQW9CLENBQUMsUUFBYTtJQUNoRCw0REFBNEQ7SUFDNUQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO1FBQzNCLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO0tBQzNDO0lBRUQsNkJBQTZCO0lBQzdCLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxLQUFLLEVBQW9CLENBQUM7SUFDMUQsTUFBTSxPQUFPLEdBQUcsd0ZBQXdGLENBQUM7SUFFekcsTUFBTSxVQUFVLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUNyQyxLQUFLLE1BQU0sU0FBUyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUMsRUFBRTtRQUMvRCxNQUFNLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxDQUFDLEVBQUU7WUFBRSxTQUFTO1NBQUU7UUFDckIsSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQUUsU0FBUztTQUFFO1FBRXZDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckIsTUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQztRQUUzQiwyQkFBMkI7UUFDM0IsbUJBQW1CLENBQUMsSUFBSSxDQUFDO1lBQ3ZCLElBQUksTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxDQUFDLHNEQUFzRCxDQUFDO1lBQ3hGLFFBQVEsRUFBRSxJQUFJO1NBQ2YsQ0FBQyxDQUFDO1FBQ0gsaUNBQWlDO1FBQ2pDLG1CQUFtQixDQUFDLElBQUksQ0FBQztZQUN2QixJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3JCLFFBQVEsRUFBRSxNQUFNO1NBQ2pCLENBQUMsQ0FBQztLQUNKO0lBRUQsc0JBQXNCO0lBQ3RCLE9BQU8sVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBRTVCLFNBQVMsVUFBVSxDQUFDLElBQVM7UUFDM0IsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUM3QjtRQUVELElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxJQUFJLElBQUksS0FBSyxJQUFJLEVBQUU7WUFDN0MsTUFBTSxHQUFHLEdBQVEsRUFBRSxDQUFDO1lBQ3BCLEtBQUssTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUN6QyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ25DO1lBQ0QsT0FBTyxHQUFHLENBQUM7U0FDWjtRQUVELElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxFQUFFO1lBQzVCLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3hCO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsU0FBUyxTQUFTLENBQUMsQ0FBUztRQUMxQixLQUFLLE1BQU0sQ0FBQyxFQUFFLEVBQUUsV0FBVyxDQUFDLElBQUksbUJBQW1CLEVBQUU7WUFDbkQsQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQ2hDO1FBQ0QsT0FBTyxDQUFDLENBQUM7SUFDWCxDQUFDO0FBQ0gsQ0FBQztBQTVERCxvREE0REMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJlZHVjZSB0ZW1wbGF0ZSB0byBhIG5vcm1hbCBmb3JtIHdoZXJlIGFzc2V0IHJlZmVyZW5jZXMgaGF2ZSBiZWVuIG5vcm1hbGl6ZWRcbiAqXG4gKiBUaGlzIG1ha2VzIGl0IHBvc3NpYmxlIHRvIGNvbXBhcmUgdGVtcGxhdGVzIGlmIGFsbCB0aGF0J3MgZGlmZmVyZW50IGJldHdlZW5cbiAqIHRoZW0gaXMgdGhlIGhhc2hlcyBvZiB0aGUgYXNzZXQgdmFsdWVzLlxuICpcbiAqIEN1cnJlbnRseSBvbmx5IGhhbmRsZXMgcGFyYW1ldGVyaXplZCBhc3NldHMsIGJ1dCBjYW4gKGFuZCBzaG91bGQpXG4gKiBiZSBhZGFwdGVkIHRvIGhhbmRsZSBjb252ZW50aW9uLW1vZGUgYXNzZXRzIGFzIHdlbGwgd2hlbiB3ZSBzdGFydCB1c2luZ1xuICogbW9yZSBvZiB0aG9zZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNhbm9uaWNhbGl6ZVRlbXBsYXRlKHRlbXBsYXRlOiBhbnkpOiBhbnkge1xuICAvLyBGb3IgdGhlIHdlaXJkIGNhc2Ugd2hlcmUgd2UgaGF2ZSBhbiBhcnJheSBvZiB0ZW1wbGF0ZXMuLi5cbiAgaWYgKEFycmF5LmlzQXJyYXkodGVtcGxhdGUpKSB7XG4gICAgcmV0dXJuIHRlbXBsYXRlLm1hcChjYW5vbmljYWxpemVUZW1wbGF0ZSk7XG4gIH1cblxuICAvLyBGaW5kIGFzc2V0cyB2aWEgcGFyYW1ldGVyc1xuICBjb25zdCBzdHJpbmdTdWJzdGl0dXRpb25zID0gbmV3IEFycmF5PFtSZWdFeHAsIHN0cmluZ10+KCk7XG4gIGNvbnN0IHBhcmFtUmUgPSAvXkFzc2V0UGFyYW1ldGVycyhbYS16QS1aMC05XXs2NH0pKFMzQnVja2V0fFMzVmVyc2lvbktleXxBcnRpZmFjdEhhc2gpKFthLXpBLVowLTldezh9KSQvO1xuXG4gIGNvbnN0IGFzc2V0c1NlZW4gPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgZm9yIChjb25zdCBwYXJhbU5hbWUgb2YgT2JqZWN0LmtleXModGVtcGxhdGU/LlBhcmFtZXRlcnMgfHwge30pKSB7XG4gICAgY29uc3QgbSA9IHBhcmFtUmUuZXhlYyhwYXJhbU5hbWUpO1xuICAgIGlmICghbSkgeyBjb250aW51ZTsgfVxuICAgIGlmIChhc3NldHNTZWVuLmhhcyhtWzFdKSkgeyBjb250aW51ZTsgfVxuXG4gICAgYXNzZXRzU2Vlbi5hZGQobVsxXSk7XG4gICAgY29uc3QgaXggPSBhc3NldHNTZWVuLnNpemU7XG5cbiAgICAvLyBGdWxsIHBhcmFtZXRlciByZWZlcmVuY2VcbiAgICBzdHJpbmdTdWJzdGl0dXRpb25zLnB1c2goW1xuICAgICAgbmV3IFJlZ0V4cChgQXNzZXRQYXJhbWV0ZXJzJHttWzFdfShTM0J1Y2tldHxTM1ZlcnNpb25LZXl8QXJ0aWZhY3RIYXNoKShbYS16QS1aMC05XXs4fSlgKSxcbiAgICAgIGBBc3NldCR7aXh9JDFgLFxuICAgIF0pO1xuICAgIC8vIFN1YnN0cmluZyBhc3NldCBoYXNoIHJlZmVyZW5jZVxuICAgIHN0cmluZ1N1YnN0aXR1dGlvbnMucHVzaChbXG4gICAgICBuZXcgUmVnRXhwKGAke21bMV19YCksXG4gICAgICBgQXNzZXQke2l4fUhhc2hgLFxuICAgIF0pO1xuICB9XG5cbiAgLy8gU3Vic3RpdHV0ZSB0aGVtIG91dFxuICByZXR1cm4gc3Vic3RpdHV0ZSh0ZW1wbGF0ZSk7XG5cbiAgZnVuY3Rpb24gc3Vic3RpdHV0ZSh3aGF0OiBhbnkpOiBhbnkge1xuICAgIGlmIChBcnJheS5pc0FycmF5KHdoYXQpKSB7XG4gICAgICByZXR1cm4gd2hhdC5tYXAoc3Vic3RpdHV0ZSk7XG4gICAgfVxuXG4gICAgaWYgKHR5cGVvZiB3aGF0ID09PSAnb2JqZWN0JyAmJiB3aGF0ICE9PSBudWxsKSB7XG4gICAgICBjb25zdCByZXQ6IGFueSA9IHt9O1xuICAgICAgZm9yIChjb25zdCBbaywgdl0gb2YgT2JqZWN0LmVudHJpZXMod2hhdCkpIHtcbiAgICAgICAgcmV0W3N0cmluZ1N1YihrKV0gPSBzdWJzdGl0dXRlKHYpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHJldDtcbiAgICB9XG5cbiAgICBpZiAodHlwZW9mIHdoYXQgPT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gc3RyaW5nU3ViKHdoYXQpO1xuICAgIH1cblxuICAgIHJldHVybiB3aGF0O1xuICB9XG5cbiAgZnVuY3Rpb24gc3RyaW5nU3ViKHg6IHN0cmluZykge1xuICAgIGZvciAoY29uc3QgW3JlLCByZXBsYWNlbWVudF0gb2Ygc3RyaW5nU3Vic3RpdHV0aW9ucykge1xuICAgICAgeCA9IHgucmVwbGFjZShyZSwgcmVwbGFjZW1lbnQpO1xuICAgIH1cbiAgICByZXR1cm4geDtcbiAgfVxufVxuIl19
@@ -73,21 +73,20 @@ function synthesizeApp(stack, options) {
73
73
  });
74
74
  }
75
75
  function stripNewStyleSynthCfnElements(stackArtifact) {
76
- var _a, _b, _c, _d;
77
76
  const synthesizedTemplate = stackArtifact.template;
78
77
  // if new-style synthesis is not explicitly set, remove the extra generated Rule and Parameter from the synthesized template,
79
78
  // to avoid changing many tests that rely on the template being exactly what it is
80
- (_a = synthesizedTemplate === null || synthesizedTemplate === void 0 ? void 0 : synthesizedTemplate.Rules) === null || _a === void 0 ? true : delete _a.CheckBootstrapVersion;
81
- if (Object.keys((_b = synthesizedTemplate === null || synthesizedTemplate === void 0 ? void 0 : synthesizedTemplate.Rules) !== null && _b !== void 0 ? _b : {}).length === 0) {
82
- synthesizedTemplate === null || synthesizedTemplate === void 0 ? true : delete synthesizedTemplate.Rules;
79
+ delete synthesizedTemplate?.Rules?.CheckBootstrapVersion;
80
+ if (Object.keys(synthesizedTemplate?.Rules ?? {}).length === 0) {
81
+ delete synthesizedTemplate?.Rules;
83
82
  }
84
- (_c = synthesizedTemplate === null || synthesizedTemplate === void 0 ? void 0 : synthesizedTemplate.Parameters) === null || _c === void 0 ? true : delete _c.BootstrapVersion;
85
- if (Object.keys((_d = synthesizedTemplate === null || synthesizedTemplate === void 0 ? void 0 : synthesizedTemplate.Parameters) !== null && _d !== void 0 ? _d : {}).length === 0) {
86
- synthesizedTemplate === null || synthesizedTemplate === void 0 ? true : delete synthesizedTemplate.Parameters;
83
+ delete synthesizedTemplate?.Parameters?.BootstrapVersion;
84
+ if (Object.keys(synthesizedTemplate?.Parameters ?? {}).length === 0) {
85
+ delete synthesizedTemplate?.Parameters;
87
86
  }
88
87
  return stackArtifact;
89
88
  }
90
89
  function isStackArtifact(x) {
91
90
  return 'template' in x;
92
91
  }
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ludGgtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzeW50aC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLG9DQUFvQztBQUdwQyxNQUFhLFVBQVU7SUFDckI7O09BRUc7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQWlCLEVBQUUsVUFBc0MsRUFBRztRQUNuRixrR0FBa0c7UUFDbEcsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUMvQyxPQUFPLDZCQUE2QixDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBaUIsRUFBRSxVQUFzQyxFQUFHO1FBQ3pGLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekQsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDMUIsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDO1NBQ3ZCO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFpQixFQUFFLE9BQXNCO1FBQzVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUU7WUFDdEIsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNoRSxJQUFJLE9BQU8sQ0FBQyxhQUFhLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBRSxRQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNwRixPQUFPLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ2hDO2FBQ0Y7U0FDRjtRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMscUJBQXFCLENBQUMsS0FBaUIsRUFBRSxVQUFzQyxFQUFHO1FBQzlGLGtHQUFrRztRQUNsRyxNQUFNLFFBQVEsR0FBRyxhQUFhLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRS9DLHVGQUF1RjtRQUN2RixJQUFJLEtBQUssQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDekc7UUFFRCxPQUFPLDZCQUE2QixDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNwRixDQUFDO0NBQ0Y7QUF4REQsZ0NBd0RDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGFBQWEsQ0FBQyxLQUFpQixFQUFFLE9BQW1DO0lBQzNFLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7S0FDN0U7SUFFRCxxSUFBcUk7SUFDckksTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBRW5CLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNoQixLQUFLO1FBQ0wsR0FBRyxPQUFPO0tBQ1gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQVMsNkJBQTZCLENBQUMsYUFBZ0Q7O0lBQ3JGLE1BQU0sbUJBQW1CLEdBQUcsYUFBYSxDQUFDLFFBQVEsQ0FBQztJQUVuRCw2SEFBNkg7SUFDN0gsa0ZBQWtGO0lBQ2xGLE1BQU8sbUJBQW1CLGFBQW5CLG1CQUFtQix1QkFBbkIsbUJBQW1CLENBQUUsS0FBSywrQ0FBRSxxQkFBcUIsQ0FBQztJQUN6RCxJQUFJLE1BQU0sQ0FBQyxJQUFJLE9BQUMsbUJBQW1CLGFBQW5CLG1CQUFtQix1QkFBbkIsbUJBQW1CLENBQUUsS0FBSyxtQ0FBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ3ZELG1CQUFtQixhQUFuQixtQkFBbUIsNEJBQW5CLG1CQUFtQixDQUFFLEtBQUssQ0FBQztLQUNuQztJQUNELE1BQU8sbUJBQW1CLGFBQW5CLG1CQUFtQix1QkFBbkIsbUJBQW1CLENBQUUsVUFBVSwrQ0FBRSxnQkFBZ0IsQ0FBQztJQUN6RCxJQUFJLE1BQU0sQ0FBQyxJQUFJLE9BQUMsbUJBQW1CLGFBQW5CLG1CQUFtQix1QkFBbkIsbUJBQW1CLENBQUUsVUFBVSxtQ0FBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQzVELG1CQUFtQixhQUFuQixtQkFBbUIsNEJBQW5CLG1CQUFtQixDQUFFLFVBQVUsQ0FBQztLQUN4QztJQUVELE9BQU8sYUFBYSxDQUFDO0FBQ3ZCLENBQUM7QUFTRCxTQUFTLGVBQWUsQ0FBQyxDQUFTO0lBQ2hDLE9BQU8sVUFBVSxJQUFJLENBQUMsQ0FBQztBQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgZnMgZnJvbSAnZnMnO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCAqIGFzIGNvcmUgZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgY3hhcGkgZnJvbSAnYXdzLWNkay1saWIvY3gtYXBpJztcblxuZXhwb3J0IGNsYXNzIFN5bnRoVXRpbHMge1xuICAvKipcbiAgICogUmV0dXJucyB0aGUgY2xvdWQgYXNzZW1ibHkgdGVtcGxhdGUgYXJ0aWZhY3QgZm9yIGEgc3RhY2suXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHN5bnRoZXNpemUoc3RhY2s6IGNvcmUuU3RhY2ssIG9wdGlvbnM6IGNvcmUuU3RhZ2VTeW50aGVzaXNPcHRpb25zID0geyB9KTogY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0IHtcbiAgICAvLyBhbHdheXMgc3ludGhlc2l6ZSBhZ2FpbnN0IHRoZSByb290IChiZSBpdCBhbiBBcHAgb3Igd2hhdGV2ZXIpIHNvIGFsbCBhcnRpZmFjdHMgd2lsbCBiZSBpbmNsdWRlZFxuICAgIGNvbnN0IGFzc2VtYmx5ID0gc3ludGhlc2l6ZUFwcChzdGFjaywgb3B0aW9ucyk7XG4gICAgcmV0dXJuIHN0cmlwTmV3U3R5bGVTeW50aENmbkVsZW1lbnRzKGFzc2VtYmx5LmdldFN0YWNrQXJ0aWZhY3Qoc3RhY2suYXJ0aWZhY3RJZCkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFN5bnRoZXNpemVzIHRoZSBzdGFjayBhbmQgcmV0dXJucyB0aGUgcmVzdWx0aW5nIENsb3VkRm9ybWF0aW9uIHRlbXBsYXRlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB0b0Nsb3VkRm9ybWF0aW9uKHN0YWNrOiBjb3JlLlN0YWNrLCBvcHRpb25zOiBjb3JlLlN0YWdlU3ludGhlc2lzT3B0aW9ucyA9IHsgfSk6IGFueSB7XG4gICAgY29uc3Qgc3ludGggPSB0aGlzLl9zeW50aGVzaXplV2l0aE5lc3RlZChzdGFjaywgb3B0aW9ucyk7XG4gICAgaWYgKGlzU3RhY2tBcnRpZmFjdChzeW50aCkpIHtcbiAgICAgIHJldHVybiBzeW50aC50ZW1wbGF0ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHN5bnRoO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBAcmV0dXJucyBSZXR1cm5zIGEgc3Vic2V0IG9mIHRoZSBzeW50aGVzaXplZCBDbG91ZEZvcm1hdGlvbiB0ZW1wbGF0ZSAob25seSBzcGVjaWZpYyByZXNvdXJjZSB0eXBlcykuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHN1YnNldChzdGFjazogY29yZS5TdGFjaywgb3B0aW9uczogU3Vic2V0T3B0aW9ucyk6IGFueSB7XG4gICAgY29uc3QgdGVtcGxhdGUgPSB0aGlzLnRvQ2xvdWRGb3JtYXRpb24oc3RhY2spO1xuICAgIGlmICh0ZW1wbGF0ZS5SZXNvdXJjZXMpIHtcbiAgICAgIGZvciAoY29uc3QgW2tleSwgcmVzb3VyY2VdIG9mIE9iamVjdC5lbnRyaWVzKHRlbXBsYXRlLlJlc291cmNlcykpIHtcbiAgICAgICAgaWYgKG9wdGlvbnMucmVzb3VyY2VUeXBlcyAmJiAhb3B0aW9ucy5yZXNvdXJjZVR5cGVzLmluY2x1ZGVzKChyZXNvdXJjZSBhcyBhbnkpLlR5cGUpKSB7XG4gICAgICAgICAgZGVsZXRlIHRlbXBsYXRlLlJlc291cmNlc1trZXldO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRlbXBsYXRlO1xuICB9XG5cbiAgLyoqXG4gICAqIFN5bnRoZXNpemVzIHRoZSBzdGFjayBhbmQgcmV0dXJucyBhIGBDbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3RgIHdoaWNoIGNhbiBiZSBpbnNwZWN0ZWQuXG4gICAqIFN1cHBvcnRzIG5lc3RlZCBzdGFja3MgYXMgd2VsbCBhcyBub3JtYWwgc3RhY2tzLlxuICAgKlxuICAgKiBAcmV0dXJuIENsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdCBmb3Igbm9ybWFsIHN0YWNrcyBvciB0aGUgYWN0dWFsIHRlbXBsYXRlIGZvciBuZXN0ZWQgc3RhY2tzXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBfc3ludGhlc2l6ZVdpdGhOZXN0ZWQoc3RhY2s6IGNvcmUuU3RhY2ssIG9wdGlvbnM6IGNvcmUuU3RhZ2VTeW50aGVzaXNPcHRpb25zID0geyB9KTogY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0IHwgb2JqZWN0IHtcbiAgICAvLyBhbHdheXMgc3ludGhlc2l6ZSBhZ2FpbnN0IHRoZSByb290IChiZSBpdCBhbiBBcHAgb3Igd2hhdGV2ZXIpIHNvIGFsbCBhcnRpZmFjdHMgd2lsbCBiZSBpbmNsdWRlZFxuICAgIGNvbnN0IGFzc2VtYmx5ID0gc3ludGhlc2l6ZUFwcChzdGFjaywgb3B0aW9ucyk7XG5cbiAgICAvLyBpZiB0aGlzIGlzIGEgbmVzdGVkIHN0YWNrIChpdCBoYXMgYSBwYXJlbnQpLCB0aGVuIGp1c3QgcmVhZCB0aGUgdGVtcGxhdGUgYXMgYSBzdHJpbmdcbiAgICBpZiAoc3RhY2submVzdGVkU3RhY2tQYXJlbnQpIHtcbiAgICAgIHJldHVybiBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYXRoLmpvaW4oYXNzZW1ibHkuZGlyZWN0b3J5LCBzdGFjay50ZW1wbGF0ZUZpbGUpKS50b1N0cmluZygndXRmLTgnKSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0cmlwTmV3U3R5bGVTeW50aENmbkVsZW1lbnRzKGFzc2VtYmx5LmdldFN0YWNrQXJ0aWZhY3Qoc3RhY2suYXJ0aWZhY3RJZCkpO1xuICB9XG59XG5cbi8qKlxuICogU3ludGhlc2l6ZXMgdGhlIGFwcCBpbiB3aGljaCBhIHN0YWNrIHJlc2lkZXMgYW5kIHJldHVybnMgdGhlIGNsb3VkIGFzc2VtYmx5IG9iamVjdC5cbiAqL1xuZnVuY3Rpb24gc3ludGhlc2l6ZUFwcChzdGFjazogY29yZS5TdGFjaywgb3B0aW9uczogY29yZS5TdGFnZVN5bnRoZXNpc09wdGlvbnMpOiBjeGFwaS5DbG91ZEFzc2VtYmx5IHtcbiAgY29uc3Qgcm9vdCA9IHN0YWNrLm5vZGUucm9vdDtcbiAgaWYgKCFjb3JlLlN0YWdlLmlzU3RhZ2Uocm9vdCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VuZXhwZWN0ZWQ6IGFsbCBzdGFja3MgbXVzdCBiZSBwYXJ0IG9mIGEgU3RhZ2Ugb3IgYW4gQXBwJyk7XG4gIH1cblxuICAvLyB0byBzdXBwb3J0IGluY3JlbWVudGFsIGFzc2VydGlvbnMgKGkuZS4gXCJleHBlY3Qoc3RhY2spLnRvTm90Q29udGFpblNvbWV0aGluZygpOyBkb1NvbWV0aGluZygpOyBleHBlY3Qoc3RhY2spLnRvQ29udGFpblNvbXRoaW5nKClcIilcbiAgY29uc3QgZm9yY2UgPSB0cnVlO1xuXG4gIHJldHVybiByb290LnN5bnRoKHtcbiAgICBmb3JjZSxcbiAgICAuLi5vcHRpb25zLFxuICB9KTtcbn1cblxuZnVuY3Rpb24gc3RyaXBOZXdTdHlsZVN5bnRoQ2ZuRWxlbWVudHMoc3RhY2tBcnRpZmFjdDogY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0KTogY3hhcGkuQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0IHtcbiAgY29uc3Qgc3ludGhlc2l6ZWRUZW1wbGF0ZSA9IHN0YWNrQXJ0aWZhY3QudGVtcGxhdGU7XG5cbiAgLy8gaWYgbmV3LXN0eWxlIHN5bnRoZXNpcyBpcyBub3QgZXhwbGljaXRseSBzZXQsIHJlbW92ZSB0aGUgZXh0cmEgZ2VuZXJhdGVkIFJ1bGUgYW5kIFBhcmFtZXRlciBmcm9tIHRoZSBzeW50aGVzaXplZCB0ZW1wbGF0ZSxcbiAgLy8gdG8gYXZvaWQgY2hhbmdpbmcgbWFueSB0ZXN0cyB0aGF0IHJlbHkgb24gdGhlIHRlbXBsYXRlIGJlaW5nIGV4YWN0bHkgd2hhdCBpdCBpc1xuICBkZWxldGUgc3ludGhlc2l6ZWRUZW1wbGF0ZT8uUnVsZXM/LkNoZWNrQm9vdHN0cmFwVmVyc2lvbjtcbiAgaWYgKE9iamVjdC5rZXlzKHN5bnRoZXNpemVkVGVtcGxhdGU/LlJ1bGVzID8/IHt9KS5sZW5ndGggPT09IDApIHtcbiAgICBkZWxldGUgc3ludGhlc2l6ZWRUZW1wbGF0ZT8uUnVsZXM7XG4gIH1cbiAgZGVsZXRlIHN5bnRoZXNpemVkVGVtcGxhdGU/LlBhcmFtZXRlcnM/LkJvb3RzdHJhcFZlcnNpb247XG4gIGlmIChPYmplY3Qua2V5cyhzeW50aGVzaXplZFRlbXBsYXRlPy5QYXJhbWV0ZXJzID8/IHt9KS5sZW5ndGggPT09IDApIHtcbiAgICBkZWxldGUgc3ludGhlc2l6ZWRUZW1wbGF0ZT8uUGFyYW1ldGVycztcbiAgfVxuXG4gIHJldHVybiBzdGFja0FydGlmYWN0O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN1YnNldE9wdGlvbnMge1xuICAvKipcbiAgICogTWF0Y2ggYWxsIHJlc291cmNlcyBvZiB0aGUgZ2l2ZW4gdHlwZVxuICAgKi9cbiAgcmVzb3VyY2VUeXBlcz86IHN0cmluZ1tdO1xufVxuXG5mdW5jdGlvbiBpc1N0YWNrQXJ0aWZhY3QoeDogb2JqZWN0KTogeCBpcyBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3Qge1xuICByZXR1cm4gJ3RlbXBsYXRlJyBpbiB4O1xufSJdfQ==
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ludGgtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJzeW50aC11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSx5QkFBeUI7QUFDekIsNkJBQTZCO0FBQzdCLG9DQUFvQztBQUdwQyxNQUFhLFVBQVU7SUFDckI7O09BRUc7SUFDSSxNQUFNLENBQUMsVUFBVSxDQUFDLEtBQWlCLEVBQUUsVUFBc0MsRUFBRztRQUNuRixrR0FBa0c7UUFDbEcsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUMvQyxPQUFPLDZCQUE2QixDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNwRixDQUFDO0lBRUQ7O09BRUc7SUFDSSxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBaUIsRUFBRSxVQUFzQyxFQUFHO1FBQ3pGLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekQsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDMUIsT0FBTyxLQUFLLENBQUMsUUFBUSxDQUFDO1NBQ3ZCO2FBQU07WUFDTCxPQUFPLEtBQUssQ0FBQztTQUNkO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFpQixFQUFFLE9BQXNCO1FBQzVELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QyxJQUFJLFFBQVEsQ0FBQyxTQUFTLEVBQUU7WUFDdEIsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNoRSxJQUFJLE9BQU8sQ0FBQyxhQUFhLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBRSxRQUFnQixDQUFDLElBQUksQ0FBQyxFQUFFO29CQUNwRixPQUFPLFFBQVEsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUM7aUJBQ2hDO2FBQ0Y7U0FDRjtRQUVELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxNQUFNLENBQUMscUJBQXFCLENBQUMsS0FBaUIsRUFBRSxVQUFzQyxFQUFHO1FBQzlGLGtHQUFrRztRQUNsRyxNQUFNLFFBQVEsR0FBRyxhQUFhLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRS9DLHVGQUF1RjtRQUN2RixJQUFJLEtBQUssQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDekc7UUFFRCxPQUFPLDZCQUE2QixDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztJQUNwRixDQUFDO0NBQ0Y7QUF4REQsZ0NBd0RDO0FBRUQ7O0dBRUc7QUFDSCxTQUFTLGFBQWEsQ0FBQyxLQUFpQixFQUFFLE9BQW1DO0lBQzNFLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzdCLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUM3QixNQUFNLElBQUksS0FBSyxDQUFDLDBEQUEwRCxDQUFDLENBQUM7S0FDN0U7SUFFRCxxSUFBcUk7SUFDckksTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDO0lBRW5CLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztRQUNoQixLQUFLO1FBQ0wsR0FBRyxPQUFPO0tBQ1gsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELFNBQVMsNkJBQTZCLENBQUMsYUFBZ0Q7SUFDckYsTUFBTSxtQkFBbUIsR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDO0lBRW5ELDZIQUE2SDtJQUM3SCxrRkFBa0Y7SUFDbEYsT0FBTyxtQkFBbUIsRUFBRSxLQUFLLEVBQUUscUJBQXFCLENBQUM7SUFDekQsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLEtBQUssSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQzlELE9BQU8sbUJBQW1CLEVBQUUsS0FBSyxDQUFDO0tBQ25DO0lBQ0QsT0FBTyxtQkFBbUIsRUFBRSxVQUFVLEVBQUUsZ0JBQWdCLENBQUM7SUFDekQsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLFVBQVUsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ25FLE9BQU8sbUJBQW1CLEVBQUUsVUFBVSxDQUFDO0tBQ3hDO0lBRUQsT0FBTyxhQUFhLENBQUM7QUFDdkIsQ0FBQztBQVNELFNBQVMsZUFBZSxDQUFDLENBQVM7SUFDaEMsT0FBTyxVQUFVLElBQUksQ0FBQyxDQUFDO0FBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgY29yZSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgKiBhcyBjeGFwaSBmcm9tICdhd3MtY2RrLWxpYi9jeC1hcGknO1xuXG5leHBvcnQgY2xhc3MgU3ludGhVdGlscyB7XG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBjbG91ZCBhc3NlbWJseSB0ZW1wbGF0ZSBhcnRpZmFjdCBmb3IgYSBzdGFjay5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgc3ludGhlc2l6ZShzdGFjazogY29yZS5TdGFjaywgb3B0aW9uczogY29yZS5TdGFnZVN5bnRoZXNpc09wdGlvbnMgPSB7IH0pOiBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3Qge1xuICAgIC8vIGFsd2F5cyBzeW50aGVzaXplIGFnYWluc3QgdGhlIHJvb3QgKGJlIGl0IGFuIEFwcCBvciB3aGF0ZXZlcikgc28gYWxsIGFydGlmYWN0cyB3aWxsIGJlIGluY2x1ZGVkXG4gICAgY29uc3QgYXNzZW1ibHkgPSBzeW50aGVzaXplQXBwKHN0YWNrLCBvcHRpb25zKTtcbiAgICByZXR1cm4gc3RyaXBOZXdTdHlsZVN5bnRoQ2ZuRWxlbWVudHMoYXNzZW1ibHkuZ2V0U3RhY2tBcnRpZmFjdChzdGFjay5hcnRpZmFjdElkKSk7XG4gIH1cblxuICAvKipcbiAgICogU3ludGhlc2l6ZXMgdGhlIHN0YWNrIGFuZCByZXR1cm5zIHRoZSByZXN1bHRpbmcgQ2xvdWRGb3JtYXRpb24gdGVtcGxhdGUuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHRvQ2xvdWRGb3JtYXRpb24oc3RhY2s6IGNvcmUuU3RhY2ssIG9wdGlvbnM6IGNvcmUuU3RhZ2VTeW50aGVzaXNPcHRpb25zID0geyB9KTogYW55IHtcbiAgICBjb25zdCBzeW50aCA9IHRoaXMuX3N5bnRoZXNpemVXaXRoTmVzdGVkKHN0YWNrLCBvcHRpb25zKTtcbiAgICBpZiAoaXNTdGFja0FydGlmYWN0KHN5bnRoKSkge1xuICAgICAgcmV0dXJuIHN5bnRoLnRlbXBsYXRlO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gc3ludGg7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIFJldHVybnMgYSBzdWJzZXQgb2YgdGhlIHN5bnRoZXNpemVkIENsb3VkRm9ybWF0aW9uIHRlbXBsYXRlIChvbmx5IHNwZWNpZmljIHJlc291cmNlIHR5cGVzKS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgc3Vic2V0KHN0YWNrOiBjb3JlLlN0YWNrLCBvcHRpb25zOiBTdWJzZXRPcHRpb25zKTogYW55IHtcbiAgICBjb25zdCB0ZW1wbGF0ZSA9IHRoaXMudG9DbG91ZEZvcm1hdGlvbihzdGFjayk7XG4gICAgaWYgKHRlbXBsYXRlLlJlc291cmNlcykge1xuICAgICAgZm9yIChjb25zdCBba2V5LCByZXNvdXJjZV0gb2YgT2JqZWN0LmVudHJpZXModGVtcGxhdGUuUmVzb3VyY2VzKSkge1xuICAgICAgICBpZiAob3B0aW9ucy5yZXNvdXJjZVR5cGVzICYmICFvcHRpb25zLnJlc291cmNlVHlwZXMuaW5jbHVkZXMoKHJlc291cmNlIGFzIGFueSkuVHlwZSkpIHtcbiAgICAgICAgICBkZWxldGUgdGVtcGxhdGUuUmVzb3VyY2VzW2tleV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGVtcGxhdGU7XG4gIH1cblxuICAvKipcbiAgICogU3ludGhlc2l6ZXMgdGhlIHN0YWNrIGFuZCByZXR1cm5zIGEgYENsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdGAgd2hpY2ggY2FuIGJlIGluc3BlY3RlZC5cbiAgICogU3VwcG9ydHMgbmVzdGVkIHN0YWNrcyBhcyB3ZWxsIGFzIG5vcm1hbCBzdGFja3MuXG4gICAqXG4gICAqIEByZXR1cm4gQ2xvdWRGb3JtYXRpb25TdGFja0FydGlmYWN0IGZvciBub3JtYWwgc3RhY2tzIG9yIHRoZSBhY3R1YWwgdGVtcGxhdGUgZm9yIG5lc3RlZCBzdGFja3NcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIF9zeW50aGVzaXplV2l0aE5lc3RlZChzdGFjazogY29yZS5TdGFjaywgb3B0aW9uczogY29yZS5TdGFnZVN5bnRoZXNpc09wdGlvbnMgPSB7IH0pOiBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3QgfCBvYmplY3Qge1xuICAgIC8vIGFsd2F5cyBzeW50aGVzaXplIGFnYWluc3QgdGhlIHJvb3QgKGJlIGl0IGFuIEFwcCBvciB3aGF0ZXZlcikgc28gYWxsIGFydGlmYWN0cyB3aWxsIGJlIGluY2x1ZGVkXG4gICAgY29uc3QgYXNzZW1ibHkgPSBzeW50aGVzaXplQXBwKHN0YWNrLCBvcHRpb25zKTtcblxuICAgIC8vIGlmIHRoaXMgaXMgYSBuZXN0ZWQgc3RhY2sgKGl0IGhhcyBhIHBhcmVudCksIHRoZW4ganVzdCByZWFkIHRoZSB0ZW1wbGF0ZSBhcyBhIHN0cmluZ1xuICAgIGlmIChzdGFjay5uZXN0ZWRTdGFja1BhcmVudCkge1xuICAgICAgcmV0dXJuIEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihhc3NlbWJseS5kaXJlY3RvcnksIHN0YWNrLnRlbXBsYXRlRmlsZSkpLnRvU3RyaW5nKCd1dGYtOCcpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RyaXBOZXdTdHlsZVN5bnRoQ2ZuRWxlbWVudHMoYXNzZW1ibHkuZ2V0U3RhY2tBcnRpZmFjdChzdGFjay5hcnRpZmFjdElkKSk7XG4gIH1cbn1cblxuLyoqXG4gKiBTeW50aGVzaXplcyB0aGUgYXBwIGluIHdoaWNoIGEgc3RhY2sgcmVzaWRlcyBhbmQgcmV0dXJucyB0aGUgY2xvdWQgYXNzZW1ibHkgb2JqZWN0LlxuICovXG5mdW5jdGlvbiBzeW50aGVzaXplQXBwKHN0YWNrOiBjb3JlLlN0YWNrLCBvcHRpb25zOiBjb3JlLlN0YWdlU3ludGhlc2lzT3B0aW9ucyk6IGN4YXBpLkNsb3VkQXNzZW1ibHkge1xuICBjb25zdCByb290ID0gc3RhY2subm9kZS5yb290O1xuICBpZiAoIWNvcmUuU3RhZ2UuaXNTdGFnZShyb290KSkge1xuICAgIHRocm93IG5ldyBFcnJvcigndW5leHBlY3RlZDogYWxsIHN0YWNrcyBtdXN0IGJlIHBhcnQgb2YgYSBTdGFnZSBvciBhbiBBcHAnKTtcbiAgfVxuXG4gIC8vIHRvIHN1cHBvcnQgaW5jcmVtZW50YWwgYXNzZXJ0aW9ucyAoaS5lLiBcImV4cGVjdChzdGFjaykudG9Ob3RDb250YWluU29tZXRoaW5nKCk7IGRvU29tZXRoaW5nKCk7IGV4cGVjdChzdGFjaykudG9Db250YWluU29tdGhpbmcoKVwiKVxuICBjb25zdCBmb3JjZSA9IHRydWU7XG5cbiAgcmV0dXJuIHJvb3Quc3ludGgoe1xuICAgIGZvcmNlLFxuICAgIC4uLm9wdGlvbnMsXG4gIH0pO1xufVxuXG5mdW5jdGlvbiBzdHJpcE5ld1N0eWxlU3ludGhDZm5FbGVtZW50cyhzdGFja0FydGlmYWN0OiBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3QpOiBjeGFwaS5DbG91ZEZvcm1hdGlvblN0YWNrQXJ0aWZhY3Qge1xuICBjb25zdCBzeW50aGVzaXplZFRlbXBsYXRlID0gc3RhY2tBcnRpZmFjdC50ZW1wbGF0ZTtcblxuICAvLyBpZiBuZXctc3R5bGUgc3ludGhlc2lzIGlzIG5vdCBleHBsaWNpdGx5IHNldCwgcmVtb3ZlIHRoZSBleHRyYSBnZW5lcmF0ZWQgUnVsZSBhbmQgUGFyYW1ldGVyIGZyb20gdGhlIHN5bnRoZXNpemVkIHRlbXBsYXRlLFxuICAvLyB0byBhdm9pZCBjaGFuZ2luZyBtYW55IHRlc3RzIHRoYXQgcmVseSBvbiB0aGUgdGVtcGxhdGUgYmVpbmcgZXhhY3RseSB3aGF0IGl0IGlzXG4gIGRlbGV0ZSBzeW50aGVzaXplZFRlbXBsYXRlPy5SdWxlcz8uQ2hlY2tCb290c3RyYXBWZXJzaW9uO1xuICBpZiAoT2JqZWN0LmtleXMoc3ludGhlc2l6ZWRUZW1wbGF0ZT8uUnVsZXMgPz8ge30pLmxlbmd0aCA9PT0gMCkge1xuICAgIGRlbGV0ZSBzeW50aGVzaXplZFRlbXBsYXRlPy5SdWxlcztcbiAgfVxuICBkZWxldGUgc3ludGhlc2l6ZWRUZW1wbGF0ZT8uUGFyYW1ldGVycz8uQm9vdHN0cmFwVmVyc2lvbjtcbiAgaWYgKE9iamVjdC5rZXlzKHN5bnRoZXNpemVkVGVtcGxhdGU/LlBhcmFtZXRlcnMgPz8ge30pLmxlbmd0aCA9PT0gMCkge1xuICAgIGRlbGV0ZSBzeW50aGVzaXplZFRlbXBsYXRlPy5QYXJhbWV0ZXJzO1xuICB9XG5cbiAgcmV0dXJuIHN0YWNrQXJ0aWZhY3Q7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3Vic2V0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBNYXRjaCBhbGwgcmVzb3VyY2VzIG9mIHRoZSBnaXZlbiB0eXBlXG4gICAqL1xuICByZXNvdXJjZVR5cGVzPzogc3RyaW5nW107XG59XG5cbmZ1bmN0aW9uIGlzU3RhY2tBcnRpZmFjdCh4OiBvYmplY3QpOiB4IGlzIGN4YXBpLkNsb3VkRm9ybWF0aW9uU3RhY2tBcnRpZmFjdCB7XG4gIHJldHVybiAndGVtcGxhdGUnIGluIHg7XG59Il19
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-cdk/assert",
3
- "version": "2.50.0",
3
+ "version": "2.51.1",
4
4
  "description": "An assertion library for use with CDK Apps",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -34,21 +34,21 @@
34
34
  },
35
35
  "license": "Apache-2.0",
36
36
  "devDependencies": {
37
- "@aws-cdk/assert-internal": "2.50.0",
38
- "@aws-cdk/cdk-build-tools": "2.50.0",
39
- "@aws-cdk/pkglint": "2.50.0",
37
+ "@aws-cdk/assert-internal": "2.51.1",
38
+ "@aws-cdk/cdk-build-tools": "2.51.1",
39
+ "@aws-cdk/pkglint": "2.51.1",
40
40
  "@types/jest": "^27.5.2",
41
- "aws-cdk-lib": "2.50.0",
42
- "aws-cdk-migration": "2.50.0",
41
+ "aws-cdk-lib": "2.51.1",
42
+ "aws-cdk-migration": "2.51.1",
43
43
  "constructs": "^10.0.0",
44
44
  "jest": "^27.3.1",
45
45
  "ts-jest": "^27.1.5"
46
46
  },
47
47
  "dependencies": {
48
- "@aws-cdk/cloudformation-diff": "2.50.0"
48
+ "@aws-cdk/cloudformation-diff": "2.51.1"
49
49
  },
50
50
  "peerDependencies": {
51
- "aws-cdk-lib": "^2.50.0",
51
+ "aws-cdk-lib": "^2.51.1",
52
52
  "constructs": "^10.0.0",
53
53
  "jest": ">=26.6.3"
54
54
  },
@@ -1,3 +1,306 @@
1
+ # CloudFormation Resource Specification v97.0.0
2
+
3
+ ## New Resource Types
4
+
5
+ * AWS::Organizations::Account
6
+ * AWS::Organizations::Policy
7
+ * AWS::ResourceExplorer2::DefaultViewAssociation
8
+ * AWS::ResourceExplorer2::Index
9
+ * AWS::ResourceExplorer2::View
10
+ * AWS::SES::VdmAttributes
11
+ * AWS::Scheduler::Schedule
12
+ * AWS::Scheduler::ScheduleGroup
13
+ * AWS::XRay::ResourcePolicy
14
+
15
+ ## Attribute Changes
16
+
17
+ * AWS::ApiGatewayV2::Authorizer AuthorizerId (__added__)
18
+ * AWS::ElasticBeanstalk::Environment Documentation (__changed__)
19
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html
20
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html
21
+
22
+ ## Property Changes
23
+
24
+ * AWS::ApiGatewayV2::Authorizer IdentitySource.DuplicatesAllowed (__added__)
25
+ * AWS::AppStream::DirectoryConfig CertificateBasedAuthProperties (__added__)
26
+ * AWS::Batch::ComputeEnvironment EksConfiguration (__added__)
27
+ * AWS::CloudTrail::EventDataStore KmsKeyId (__added__)
28
+ * AWS::EC2::LocalGatewayRoute NetworkInterfaceId (__added__)
29
+ * AWS::EC2::LocalGatewayRoute LocalGatewayVirtualInterfaceGroupId.Required (__changed__)
30
+ * Old: true
31
+ * New: false
32
+ * AWS::EC2::LocalGatewayRoute LocalGatewayVirtualInterfaceGroupId.UpdateType (__changed__)
33
+ * Old: Immutable
34
+ * New: Mutable
35
+ * AWS::ElasticBeanstalk::Environment ApplicationName.Documentation (__changed__)
36
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-applicationname
37
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-applicationname
38
+ * AWS::ElasticBeanstalk::Environment CNAMEPrefix.Documentation (__changed__)
39
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-cnameprefix
40
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-cnameprefix
41
+ * AWS::ElasticBeanstalk::Environment Description.Documentation (__changed__)
42
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-description
43
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-description
44
+ * AWS::ElasticBeanstalk::Environment EnvironmentName.Documentation (__changed__)
45
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-name
46
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-environmentname
47
+ * AWS::ElasticBeanstalk::Environment OperationsRole.Documentation (__changed__)
48
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-operations-role
49
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-operationsrole
50
+ * AWS::ElasticBeanstalk::Environment OptionSettings.Documentation (__changed__)
51
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-optionsettings
52
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-optionsettings
53
+ * AWS::ElasticBeanstalk::Environment PlatformArn.Documentation (__changed__)
54
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-platformarn
55
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-platformarn
56
+ * AWS::ElasticBeanstalk::Environment SolutionStackName.Documentation (__changed__)
57
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-solutionstackname
58
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-solutionstackname
59
+ * AWS::ElasticBeanstalk::Environment Tags.Documentation (__changed__)
60
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-elasticbeanstalk-environment-tags
61
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-tags
62
+ * AWS::ElasticBeanstalk::Environment TemplateName.Documentation (__changed__)
63
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-templatename
64
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-templatename
65
+ * AWS::ElasticBeanstalk::Environment Tier.Documentation (__changed__)
66
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-tier
67
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-tier
68
+ * AWS::ElasticBeanstalk::Environment Tier.UpdateType (__changed__)
69
+ * Old: Conditional
70
+ * New: Mutable
71
+ * AWS::ElasticBeanstalk::Environment VersionLabel.Documentation (__changed__)
72
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment.html#cfn-beanstalk-environment-versionlabel
73
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticbeanstalk-environment.html#cfn-elasticbeanstalk-environment-versionlabel
74
+ * AWS::Events::EventBus Tags.UpdateType (__changed__)
75
+ * Old: Immutable
76
+ * New: Mutable
77
+ * AWS::MemoryDB::Cluster DataTiering (__added__)
78
+ * AWS::RDS::DBInstance StorageThroughput (__added__)
79
+ * AWS::RDS::DBInstance DBSnapshotIdentifier.UpdateType (__changed__)
80
+ * Old: Immutable
81
+ * New: Mutable
82
+ * AWS::RDS::DBInstance PubliclyAccessible.UpdateType (__changed__)
83
+ * Old: Immutable
84
+ * New: Mutable
85
+ * AWS::SES::ConfigurationSet VdmOptions (__added__)
86
+ * AWS::SageMaker::FeatureGroup FeatureDefinitions.UpdateType (__changed__)
87
+ * Old: Immutable
88
+ * New: Mutable
89
+
90
+ ## Property Type Changes
91
+
92
+ * AWS::AppStream::DirectoryConfig.CertificateBasedAuthProperties (__added__)
93
+ * AWS::Batch::ComputeEnvironment.EksConfiguration (__added__)
94
+ * AWS::EC2::LaunchTemplate.NetworkBandwidthGbps (__added__)
95
+ * AWS::EKS::Cluster.ControlPlanePlacement (__added__)
96
+ * AWS::MediaPackage::PackagingConfiguration.EncryptionContractConfiguration (__added__)
97
+ * AWS::NetworkFirewall::FirewallPolicy.StatefulRuleGroupOverride (__added__)
98
+ * AWS::SES::ConfigurationSet.DashboardOptions (__added__)
99
+ * AWS::SES::ConfigurationSet.GuardianOptions (__added__)
100
+ * AWS::SES::ConfigurationSet.VdmOptions (__added__)
101
+ * AWS::ApiGatewayV2::Authorizer.JWTConfiguration Audience.DuplicatesAllowed (__added__)
102
+ * AWS::Batch::ComputeEnvironment.Ec2ConfigurationObject ImageKubernetesVersion (__added__)
103
+ * AWS::EC2::LaunchTemplate.InstanceRequirements AllowedInstanceTypes (__added__)
104
+ * AWS::EC2::LaunchTemplate.InstanceRequirements NetworkBandwidthGbps (__added__)
105
+ * AWS::EC2::LaunchTemplate.Placement GroupId (__added__)
106
+ * AWS::EKS::Cluster.OutpostConfig ControlPlanePlacement (__added__)
107
+ * AWS::ElasticBeanstalk::Environment.OptionSetting Namespace.Documentation (__changed__)
108
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-namespace
109
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-environment-optionsetting.html#cfn-elasticbeanstalk-environment-optionsetting-namespace
110
+ * AWS::ElasticBeanstalk::Environment.OptionSetting OptionName.Documentation (__changed__)
111
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-optionname
112
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-environment-optionsetting.html#cfn-elasticbeanstalk-environment-optionsetting-optionname
113
+ * AWS::ElasticBeanstalk::Environment.OptionSetting ResourceName.Documentation (__changed__)
114
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-elasticbeanstalk-environment-optionsetting-resourcename
115
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-environment-optionsetting.html#cfn-elasticbeanstalk-environment-optionsetting-resourcename
116
+ * AWS::ElasticBeanstalk::Environment.OptionSetting Value.Documentation (__changed__)
117
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-option-settings.html#cfn-beanstalk-optionsettings-value
118
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-environment-optionsetting.html#cfn-elasticbeanstalk-environment-optionsetting-value
119
+ * AWS::ElasticBeanstalk::Environment.Tier Name.Documentation (__changed__)
120
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-name
121
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-environment-tier.html#cfn-elasticbeanstalk-environment-tier-name
122
+ * AWS::ElasticBeanstalk::Environment.Tier Type.Documentation (__changed__)
123
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-type
124
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-environment-tier.html#cfn-elasticbeanstalk-environment-tier-type
125
+ * AWS::ElasticBeanstalk::Environment.Tier Version.Documentation (__changed__)
126
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-beanstalk-environment-tier.html#cfn-beanstalk-env-tier-version
127
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticbeanstalk-environment-tier.html#cfn-elasticbeanstalk-environment-tier-version
128
+ * AWS::MediaPackage::OriginEndpoint.HlsPackage IncludeDvbSubtitles (__added__)
129
+ * AWS::MediaPackage::PackagingConfiguration.HlsPackage IncludeDvbSubtitles (__added__)
130
+ * AWS::MediaPackage::PackagingConfiguration.SpekeKeyProvider EncryptionContractConfiguration (__added__)
131
+ * AWS::NetworkFirewall::FirewallPolicy.StatefulRuleGroupReference Override (__added__)
132
+ * AWS::SageMaker::FeatureGroup.FeatureDefinition FeatureName.UpdateType (__changed__)
133
+ * Old: Immutable
134
+ * New: Mutable
135
+ * AWS::SageMaker::FeatureGroup.FeatureDefinition FeatureType.UpdateType (__changed__)
136
+ * Old: Immutable
137
+ * New: Mutable
138
+
139
+ ## Unapplied changes
140
+
141
+ * AWS::AppFlow is at 94.0.0
142
+
143
+ # CloudFormation Resource Specification v96.0.0
144
+
145
+ ## New Resource Types
146
+
147
+ * AWS::AppRunner::VpcIngressConnection
148
+ * AWS::SupportApp::SlackWorkspaceConfiguration
149
+
150
+ ## Attribute Changes
151
+
152
+ * AWS::ApiGatewayV2::Deployment DeploymentId (__added__)
153
+ * AWS::AutoScaling::ScheduledAction Documentation (__changed__)
154
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html
155
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html
156
+ * AWS::AutoScaling::ScheduledAction ScheduledActionName (__added__)
157
+ * AWS::EC2::Volume Documentation (__changed__)
158
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html
159
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html
160
+ * AWS::EC2::Volume VolumeId (__added__)
161
+ * AWS::RDS::DBCluster DBClusterArn (__added__)
162
+ * AWS::RDS::DBClusterParameterGroup DBClusterParameterGroupName (__deleted__)
163
+ * AWS::RDS::DBInstance DBInstanceArn (__added__)
164
+ * AWS::RDS::DBInstance DbiResourceId (__added__)
165
+ * AWS::RDS::DBParameterGroup DBParameterGroupName (__deleted__)
166
+ * AWS::RDS::OptionGroup OptionGroupName (__deleted__)
167
+
168
+ ## Property Changes
169
+
170
+ * AWS::AutoScaling::ScheduledAction AutoScalingGroupName.Documentation (__changed__)
171
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-asgname
172
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html#cfn-autoscaling-scheduledaction-autoscalinggroupname
173
+ * AWS::AutoScaling::ScheduledAction DesiredCapacity.Documentation (__changed__)
174
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-desiredcapacity
175
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html#cfn-autoscaling-scheduledaction-desiredcapacity
176
+ * AWS::AutoScaling::ScheduledAction EndTime.Documentation (__changed__)
177
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-endtime
178
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html#cfn-autoscaling-scheduledaction-endtime
179
+ * AWS::AutoScaling::ScheduledAction MaxSize.Documentation (__changed__)
180
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-maxsize
181
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html#cfn-autoscaling-scheduledaction-maxsize
182
+ * AWS::AutoScaling::ScheduledAction MinSize.Documentation (__changed__)
183
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-minsize
184
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html#cfn-autoscaling-scheduledaction-minsize
185
+ * AWS::AutoScaling::ScheduledAction Recurrence.Documentation (__changed__)
186
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-recurrence
187
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html#cfn-autoscaling-scheduledaction-recurrence
188
+ * AWS::AutoScaling::ScheduledAction StartTime.Documentation (__changed__)
189
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-starttime
190
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html#cfn-autoscaling-scheduledaction-starttime
191
+ * AWS::AutoScaling::ScheduledAction TimeZone.Documentation (__changed__)
192
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-as-scheduledaction.html#cfn-as-scheduledaction-timezone
193
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-autoscaling-scheduledaction.html#cfn-autoscaling-scheduledaction-timezone
194
+ * AWS::Batch::JobDefinition EksProperties (__added__)
195
+ * AWS::EC2::EIP TransferAddress (__added__)
196
+ * AWS::EC2::Volume AutoEnableIO.Documentation (__changed__)
197
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-autoenableio
198
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-autoenableio
199
+ * AWS::EC2::Volume AvailabilityZone.Documentation (__changed__)
200
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-availabilityzone
201
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-availabilityzone
202
+ * AWS::EC2::Volume AvailabilityZone.UpdateType (__changed__)
203
+ * Old: Mutable
204
+ * New: Immutable
205
+ * AWS::EC2::Volume Encrypted.Documentation (__changed__)
206
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-encrypted
207
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-encrypted
208
+ * AWS::EC2::Volume Encrypted.UpdateType (__changed__)
209
+ * Old: Mutable
210
+ * New: Immutable
211
+ * AWS::EC2::Volume Iops.Documentation (__changed__)
212
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-iops
213
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-iops
214
+ * AWS::EC2::Volume KmsKeyId.Documentation (__changed__)
215
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-kmskeyid
216
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-kmskeyid
217
+ * AWS::EC2::Volume KmsKeyId.UpdateType (__changed__)
218
+ * Old: Mutable
219
+ * New: Immutable
220
+ * AWS::EC2::Volume MultiAttachEnabled.Documentation (__changed__)
221
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-multiattachenabled
222
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-multiattachenabled
223
+ * AWS::EC2::Volume OutpostArn.Documentation (__changed__)
224
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-outpostarn
225
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-outpostarn
226
+ * AWS::EC2::Volume Size.Documentation (__changed__)
227
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-size
228
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-size
229
+ * AWS::EC2::Volume SnapshotId.Documentation (__changed__)
230
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-snapshotid
231
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-snapshotid
232
+ * AWS::EC2::Volume SnapshotId.UpdateType (__changed__)
233
+ * Old: Mutable
234
+ * New: Immutable
235
+ * AWS::EC2::Volume Tags.Documentation (__changed__)
236
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-tags
237
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-tags
238
+ * AWS::EC2::Volume Throughput.Documentation (__changed__)
239
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-throughput
240
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-throughput
241
+ * AWS::EC2::Volume VolumeType.Documentation (__changed__)
242
+ * Old: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-ebs-volume.html#cfn-ec2-ebs-volume-volumetype
243
+ * New: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-volumetype
244
+ * AWS::RDS::DBClusterParameterGroup DBClusterParameterGroupName (__added__)
245
+ * AWS::RDS::DBInstance ReplicaMode (__added__)
246
+ * AWS::RDS::DBInstance SourceDBInstanceIdentifier.UpdateType (__changed__)
247
+ * Old: Immutable
248
+ * New: Mutable
249
+ * AWS::RDS::DBParameterGroup DBParameterGroupName (__added__)
250
+ * AWS::RDS::OptionGroup OptionGroupName (__added__)
251
+
252
+ ## Property Type Changes
253
+
254
+ * AWS::AppRunner::Service.IngressConfiguration (__added__)
255
+ * AWS::Batch::JobDefinition.EksContainer (__added__)
256
+ * AWS::Batch::JobDefinition.EksContainerEnvironmentVariable (__added__)
257
+ * AWS::Batch::JobDefinition.EksContainerVolumeMount (__added__)
258
+ * AWS::Batch::JobDefinition.EksProperties (__added__)
259
+ * AWS::Batch::JobDefinition.EksVolume (__added__)
260
+ * AWS::Batch::JobDefinition.EmptyDir (__added__)
261
+ * AWS::Batch::JobDefinition.HostPath (__added__)
262
+ * AWS::Batch::JobDefinition.PodProperties (__added__)
263
+ * AWS::Batch::JobDefinition.Resources (__added__)
264
+ * AWS::Batch::JobDefinition.SecurityContext (__added__)
265
+ * AWS::EC2::EC2Fleet.NetworkBandwidthGbpsRequest (__added__)
266
+ * AWS::EC2::SpotFleet.NetworkBandwidthGbpsRequest (__added__)
267
+ * AWS::IoT::TopicRule.RepublishActionHeaders (__added__)
268
+ * AWS::IoT::TopicRule.UserProperty (__added__)
269
+ * AWS::RUM::AppMonitor.MetricDefinition (__added__)
270
+ * AWS::RUM::AppMonitor.MetricDestination (__added__)
271
+ * AWS::AppRunner::Service.NetworkConfiguration IngressConfiguration (__added__)
272
+ * AWS::AppRunner::Service.NetworkConfiguration EgressConfiguration.Required (__changed__)
273
+ * Old: true
274
+ * New: false
275
+ * AWS::EC2::EC2Fleet.FleetLaunchTemplateSpecificationRequest Version.Required (__changed__)
276
+ * Old: false
277
+ * New: true
278
+ * AWS::EC2::EC2Fleet.InstanceRequirementsRequest AllowedInstanceTypes (__added__)
279
+ * AWS::EC2::EC2Fleet.InstanceRequirementsRequest NetworkBandwidthGbps (__added__)
280
+ * AWS::EC2::SpotFleet.InstanceRequirementsRequest AllowedInstanceTypes (__added__)
281
+ * AWS::EC2::SpotFleet.InstanceRequirementsRequest NetworkBandwidthGbps (__added__)
282
+ * AWS::EC2::SpotFleet.SpotFleetRequestConfigData TagSpecifications (__added__)
283
+ * AWS::IoT::TopicRule.RepublishAction Headers (__added__)
284
+ * AWS::QuickSight::DataSource.DataSourceCredentials SecretArn (__added__)
285
+ * AWS::RDS::DBCluster.ScalingConfiguration TimeoutAction (__added__)
286
+ * AWS::RUM::AppMonitor.AppMonitorConfiguration MetricDestinations (__added__)
287
+ * AWS::Rekognition::StreamProcessor.Point X.PrimitiveType (__changed__)
288
+ * Old: Double
289
+ * New: Integer
290
+ * AWS::Rekognition::StreamProcessor.Point X.UpdateType (__changed__)
291
+ * Old: Immutable
292
+ * New: Mutable
293
+ * AWS::Rekognition::StreamProcessor.Point Y.PrimitiveType (__changed__)
294
+ * Old: Double
295
+ * New: Integer
296
+ * AWS::Rekognition::StreamProcessor.Point Y.UpdateType (__changed__)
297
+ * Old: Immutable
298
+ * New: Mutable
299
+
300
+ ## Unapplied changes
301
+
302
+ * AWS::AppFlow is at 94.0.0
303
+
1
304
  # CloudFormation Resource Specification v94.0.0
2
305
 
3
306
  ## New Resource Types