@elderbyte/ngx-starter 15.14.0 → 15.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -114,7 +114,7 @@ export class ElderTableActivationDirective {
114
114
  }
115
115
  hasItemFocus(item) {
116
116
  const row = this.getRowForItem(item);
117
- return row.hasFocus;
117
+ return row?.hasFocus;
118
118
  }
119
119
  nextCloseTo(active) {
120
120
  const next = this.nextRowItem();
@@ -272,4 +272,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
272
272
  }], activeItem: [{
273
273
  type: Input
274
274
  }] } });
275
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUtYWN0aXZhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtdmlldy90YWJsZS9hY3RpdmF0aW9uL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTSxNQUFNLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7OztBQVN6RSxNQUFNLE9BQU8sNkJBQTZCO0lBcUJ4Qzs7OztnRkFJNEU7SUFFNUUsWUFDbUIsVUFBK0I7UUFBL0IsZUFBVSxHQUFWLFVBQVUsQ0FBcUI7UUExQmxEOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRWhDLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQUksSUFBSSxDQUFDLENBQUM7UUFHcEQsc0JBQWlCLEdBQWdDLEVBQUUsQ0FBQztRQUVuRCxVQUFLLEdBQVEsRUFBRSxDQUFDO1FBRVIsVUFBSyxHQUFHLElBQUksZUFBZSxDQUE4QixFQUFFLENBQUMsQ0FBQztJQVc3RSxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLGVBQWU7UUFFcEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7UUFDcEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUM3QyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQ3hCLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQy9CLENBQUM7UUFFRixhQUFhLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ2hDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQ3pCLENBQUMsU0FBUyxDQUNULENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRTtZQUNmLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUNiLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUNoQyxDQUFDO1lBQ0YsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDL0IsQ0FBQyxDQUNGLENBQUM7UUFFRixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDaEQsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDekIsQ0FBQyxTQUFTLENBQ1QsQ0FBQyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLENBQUM7UUFDOUMsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDekIsOEVBQThFO0lBQ2hGLENBQUM7SUFFRDs7OztnRkFJNEU7SUFHckUsU0FBUyxDQUFDLEtBQW9CO1FBQ25DLElBQUksYUFBZ0IsQ0FBQztRQUNyQixJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssV0FBVyxFQUFFO1lBQzdCLGFBQWEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDcEM7YUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssU0FBUyxFQUFFO1lBQ2xDLGFBQWEsR0FBRyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7U0FDeEM7UUFFRCxJQUFJLGFBQWEsRUFBRTtZQUNqQixJQUFJLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDdEM7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQy9CLElBQUksTUFBTSxFQUFFO1lBQ1YsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE9BQU8sRUFBRTtnQkFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3BDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQzthQUN6QjtpQkFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssVUFBVSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssR0FBRyxFQUFFO2dCQUN4RCxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzlDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQzthQUN6QjtTQUNGO0lBQ0gsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUNXLGdCQUFnQjtRQUN6QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVELElBQ1csVUFBVSxDQUFDLElBQU87UUFDM0IsSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUM1QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUNoRDtJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsUUFBUSxDQUFDLElBQU87UUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUM7SUFDekIsQ0FBQztJQUVNLGdCQUFnQixDQUFDLElBQU87UUFDN0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxJQUFJLEdBQUcsRUFBRTtZQUNQLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLG1DQUFtQztTQUNqRDtJQUNILENBQUM7SUFFTSxZQUFZLENBQUMsSUFBTztRQUN6QixJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDbkIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDL0M7YUFBTTtZQUNMLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7SUFDSCxDQUFDO0lBRU0sWUFBWSxDQUFDLElBQU87UUFDekIsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxPQUFPLEdBQUcsQ0FBQyxRQUFRLENBQUM7SUFDdEIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxNQUFTO1FBQzFCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoQyxJQUFJLElBQUksS0FBSyxNQUFNLEVBQUU7WUFDbkIsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsb0JBQW9CLENBQUMsSUFBaUMsRUFBRSxVQUFhO1FBQzNFLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDeEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNqQixJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzFDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLG1CQUFtQixDQUFDLEdBQThCLEVBQUUsUUFBYTtRQUN2RSxJQUFJLEdBQUcsQ0FBQyxLQUFLLEVBQUU7WUFDYixJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxRQUFRLENBQUMsRUFBRTtnQkFDMUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUU7b0JBQ2xCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO29CQUNyQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDMUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUU7d0JBQ2pCLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztxQkFDbkI7aUJBQ0Y7YUFDRjtpQkFBTTtnQkFDTCxHQUFHLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQzthQUN2QjtTQUNGO2FBQU07WUFDTCxHQUFHLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztTQUN2QjtJQUNILENBQUM7SUFFTyxjQUFjLENBQ3BCLElBQWlDLEVBQ2pDLElBQVM7UUFFVCwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUNqQixHQUFHLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFHTyxhQUFhLENBQUMsSUFBTztRQUMzQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVPLHFCQUFxQjtRQUMzQixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRTtZQUNuRSxRQUFRLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2xDLEtBQUssTUFBTTtvQkFDVCxNQUFNO2dCQUNSLEtBQUssT0FBTztvQkFDVixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3JCLE1BQU07Z0JBQ1IsS0FBSyxNQUFNO29CQUNULElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDcEIsTUFBTTthQUNUO1NBQ0Y7SUFDSCxDQUFDO0lBRUQsSUFBWSxhQUFhO1FBQ3ZCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDM0IsQ0FBQztJQUVPLGFBQWE7UUFDbkIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNwQyxJQUFJLElBQUksRUFBRTtZQUNSLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDckI7SUFDSCxDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3hELElBQUksSUFBSSxFQUFFO2dCQUNSLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDckI7U0FDRjtJQUNILENBQUM7SUFFTyxlQUFlO1FBQ3JCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFDeEIsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzFDLElBQUksWUFBWSxHQUFHLENBQUMsRUFBRTtZQUNwQixFQUFFLFlBQVksQ0FBQztTQUNoQjthQUFNO1lBQ0wsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFO2dCQUMvQixZQUFZLEdBQUcsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7YUFDaEM7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRU8sV0FBVztRQUNqQixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3hCLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUUxQyxJQUFJLFlBQVksR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLEVBQUU7WUFDcEMsRUFBRSxZQUFZLENBQUM7U0FDaEI7YUFBTTtZQUNMLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksRUFBRTtnQkFDL0IsWUFBWSxHQUFHLENBQUMsQ0FBQzthQUNsQjtTQUNGO1FBQ0QsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTyxlQUFlO1FBQ3JCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDbkMsSUFBSSxVQUFVLEVBQUU7WUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDdkM7YUFBTTtZQUNMLE9BQU8sQ0FBQyxDQUFDLENBQUM7U0FDWDtJQUNILENBQUM7SUFFTyxjQUFjLENBQUMsS0FBYTtRQUNsQyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVPLGFBQWEsQ0FBQyxJQUFPO1FBQzNCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVPLFVBQVUsQ0FBQyxDQUFJLEVBQUUsQ0FBSTtRQUMzQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8sWUFBWSxDQUFDLENBQUksRUFBRSxRQUFhO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVPLEtBQUssQ0FBQyxJQUFPO1FBQ25CLElBQUksSUFBSSxFQUFFO1lBQ1IsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkQsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNwQzthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7OzBIQW5UVSw2QkFBNkI7OEdBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQ0FBbUM7b0JBQzdDLFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDOzBHQWdCUSxpQkFBaUI7c0JBRHZCLEtBQUs7dUJBQUMsc0JBQXNCO2dCQWlFdEIsU0FBUztzQkFEZixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFnQ3hCLGdCQUFnQjtzQkFEMUIsTUFBTTtnQkFVSSxVQUFVO3NCQURwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RWxkZXJUYWJsZVJvd0RpcmVjdGl2ZX0gZnJvbSAnLi4vZWxkZXItdGFibGUtcm93LmRpcmVjdGl2ZSc7XG5pbXBvcnQge3N3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7RWxkZXJUYWJsZUNvbXBvbmVudH0gZnJvbSAnLi4vZWxkZXItdGFibGUvZWxkZXItdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7RWxkZXJUYWJsZUFjdGl2YXRpb25PcHRpb25zfSBmcm9tICcuL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24tb3B0aW9ucyc7XG5pbXBvcnQge0VsZGVySXRlbUFjdGl2YXRvcn0gZnJvbSAnLi9lbGRlci1pdGVtLWFjdGl2YXRvcic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXRhYmxlW2VsZGVyVGFibGVBY3RpdmF0aW9uXScsXG4gIGV4cG9ydEFzOiAnZWxkZXJUYWJsZUFjdGl2YXRpb24nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyVGFibGVBY3RpdmF0aW9uRGlyZWN0aXZlPFQ+IGltcGxlbWVudHMgRWxkZXJJdGVtQWN0aXZhdG9yPFQ+LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlSXRlbSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFQ+KG51bGwpO1xuXG4gIEBJbnB1dCgnZWxkZXJUYWJsZUFjdGl2YXRpb24nKVxuICBwdWJsaWMgYWN0aXZhdGlvbk9wdGlvbnM6IEVsZGVyVGFibGVBY3RpdmF0aW9uT3B0aW9ucyA9IHt9O1xuXG4gIHByaXZhdGUgX2RhdGE6IFRbXSA9IFtdO1xuXG4gIHB1YmxpYyByZWFkb25seSByb3dzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxUPltdPihbXSk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGRlclRhYmxlOiBFbGRlclRhYmxlQ29tcG9uZW50XG4gICkge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICAgIGNvbnN0IHJvd3MkID0gdGhpcy5lbGRlclRhYmxlLnJvd3MkO1xuICAgIGNvbnN0IGRhdGEkID0gdGhpcy5lbGRlclRhYmxlLmRhdGFDb250ZXh0JC5waXBlKFxuICAgICAgc3dpdGNoTWFwKGRjID0+IGRjLmRhdGEpLFxuICAgICAgdGFwKGRhdGEgPT4gdGhpcy5fZGF0YSA9IGRhdGEpXG4gICAgKTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3Jvd3MkLCBkYXRhJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbcm93cywgZGF0YV0pID0+IHtcbiAgICAgICAgdGhpcy5yb3dzJC5uZXh0KFxuICAgICAgICAgIHRoaXMucm93RGF0YVVwZGF0ZWQocm93cywgZGF0YSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5oYW5kbGVBdXRvQWN0aXZhdGlvbnMoKTtcbiAgICAgIH1cbiAgICApO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5yb3dzJCwgdGhpcy5hY3RpdmVJdGVtJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbcm93cywgYWN0aXZlSXRlbV0pID0+IHtcbiAgICAgICAgdGhpcy51cGRhdGVSb3dzQWN0aXZhdGlvbihyb3dzLCBhY3RpdmVJdGVtKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICAvLyB0aGlzLmVsZGVyVGFibGUucm93cyQuZ2V0VmFsdWUoKS5mb3JFYWNoKHIgPT4gci5iaW5kVGFibGVBY3RpdmF0aW9uKG51bGwpKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi5cbiAgICogSG9zdCBMaXN0ZW5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGxldCBuZXdBY3RpdmVJdGVtOiBUO1xuICAgIGlmIChldmVudC5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XG4gICAgICBuZXdBY3RpdmVJdGVtID0gdGhpcy5uZXh0Um93SXRlbSgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnQXJyb3dVcCcpIHtcbiAgICAgIG5ld0FjdGl2ZUl0ZW0gPSB0aGlzLnByZXZpb3VzUm93SXRlbSgpO1xuICAgIH1cblxuICAgIGlmIChuZXdBY3RpdmVJdGVtKSB7XG4gICAgICB0aGlzLmZvY3VzQW5kQWN0aXZhdGUobmV3QWN0aXZlSXRlbSk7XG4gICAgfVxuXG4gICAgY29uc3QgYWN0aXZlID0gdGhpcy5hY3RpdmVJdGVtO1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgdGhpcy5lbGRlclRhYmxlLm9uSXRlbUNsaWNrKGFjdGl2ZSk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdTcGFjZWJhcicgfHwgZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgICAgdGhpcy5lbGRlclRhYmxlLnNlbGVjdGlvbk1vZGVsLnRvZ2dsZShhY3RpdmUpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBhY3RpdmVJdGVtQ2hhbmdlKCk6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUl0ZW0kO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmVJdGVtKCk6IFQge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUl0ZW0kLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFjdGl2ZUl0ZW0oaXRlbTogVCkge1xuICAgIGlmIChpdGVtICE9PSB0aGlzLmFjdGl2ZUl0ZW0pIHtcbiAgICAgIHRoaXMuYWN0aXZlSXRlbSQubmV4dChpdGVtKTtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdTZXQgYWN0aXZlIGl0ZW0gdG8gJywgaXRlbSk7XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGFjdGl2YXRlKGl0ZW06IFQpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUl0ZW0gPSBpdGVtO1xuICB9XG5cbiAgcHVibGljIGZvY3VzQW5kQWN0aXZhdGUoaXRlbTogVCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdyA9IHRoaXMuZ2V0Um93Rm9ySXRlbShpdGVtKTtcbiAgICBpZiAocm93KSB7XG4gICAgICByb3cuZm91Y3MoKTsgLy8gRm9jdXMgd2lsbCBhdXRvIGFjdGl2YXRlIHRoZSByb3dcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNJdGVtQWN0aXZlKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5hY3RpdmVJdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtRXF1YWxzKHRoaXMuYWN0aXZlSXRlbSwgaXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFzSXRlbUZvY3VzKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICBjb25zdCByb3cgPSB0aGlzLmdldFJvd0Zvckl0ZW0oaXRlbSk7XG4gICAgcmV0dXJuIHJvdy5oYXNGb2N1cztcbiAgfVxuXG4gIHB1YmxpYyBuZXh0Q2xvc2VUbyhhY3RpdmU6IFQpOiBUIHtcbiAgICBjb25zdCBuZXh0ID0gdGhpcy5uZXh0Um93SXRlbSgpO1xuICAgIGlmIChuZXh0ICE9PSBhY3RpdmUpIHtcbiAgICAgIHJldHVybiBuZXh0O1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5wcmV2aW91c1Jvd0l0ZW0oKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgdXBkYXRlUm93c0FjdGl2YXRpb24ocm93czogRWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxUPltdLCBhY3RpdmVJdGVtOiBUKTogdm9pZCB7XG4gICAgY29uc3QgYWN0aXZlSWQgPSB0aGlzLmdldElkKGFjdGl2ZUl0ZW0pO1xuICAgIHJvd3MuZm9yRWFjaChyb3cgPT4ge1xuICAgICAgdGhpcy51cGRhdGVSb3dBY3RpdmF0aW9uKHJvdywgYWN0aXZlSWQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVSb3dBY3RpdmF0aW9uKHJvdzogRWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxUPiwgYWN0aXZlSWQ6IGFueSk6IHZvaWQge1xuICAgIGlmIChyb3cubW9kZWwpIHtcbiAgICAgIGlmICh0aGlzLml0ZW1FcXVhbHNJZChyb3cubW9kZWwsIGFjdGl2ZUlkKSkge1xuICAgICAgICBpZiAoIXJvdy5hY3RpdmF0ZWQpIHtcbiAgICAgICAgICByb3cuYWN0aXZhdGVkID0gdHJ1ZTtcbiAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQWN0aXZhdGVkIHJvdzogJywgcm93KTtcbiAgICAgICAgICBpZiAoIXJvdy5oYXNGb2N1cykge1xuICAgICAgICAgICAgcm93LmJyaW5nVG9WaWV3KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByb3cuYWN0aXZhdGVkID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHJvdy5hY3RpdmF0ZWQgPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHJvd0RhdGFVcGRhdGVkKFxuICAgIHJvd3M6IEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8VD5bXSxcbiAgICBkYXRhOiBUW11cbiAgKTogRWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxUPltdIHtcbiAgICAvLyB0aGlzLmxvZ2dlci5kZWJ1ZygnRm91bmQgcm93czonLCByb3dzKTtcbiAgICByb3dzLmZvckVhY2gocm93ID0+IHtcbiAgICAgIHJvdy5iaW5kVGFibGVBY3RpdmF0aW9uKHRoaXMpO1xuICAgIH0pO1xuICAgIHJldHVybiByb3dzO1xuICB9XG5cblxuICBwcml2YXRlIGdldFJvd0Zvckl0ZW0oaXRlbTogVCk6IEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8VD4gfCBudWxsIHtcbiAgICBjb25zdCByb3dzID0gdGhpcy5yb3dzJC5nZXRWYWx1ZSgpO1xuICAgIHJldHVybiByb3dzLmZpbmQociA9PiByLm1vZGVsID09PSBpdGVtKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQXV0b0FjdGl2YXRpb25zKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5oYXNBY3RpdmVJdGVtIHx8IHRoaXMuYWN0aXZhdGlvbk9wdGlvbnMubW9kZSA9PT0gJ2Fsd2F5cycpIHtcbiAgICAgIHN3aXRjaCAodGhpcy5hY3RpdmF0aW9uT3B0aW9ucy5yb3cpIHtcbiAgICAgICAgY2FzZSAnbm9uZSc6XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2ZpcnN0JzpcbiAgICAgICAgICB0aGlzLmFjdGl2YXRlRmlyc3QoKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnbGFzdCc6XG4gICAgICAgICAgdGhpcy5hY3RpdmF0ZUxhc3QoKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldCBoYXNBY3RpdmVJdGVtKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIXRoaXMuYWN0aXZlSXRlbTtcbiAgfVxuXG4gIHByaXZhdGUgYWN0aXZhdGVGaXJzdCgpOiB2b2lkIHtcbiAgICBjb25zdCBpdGVtID0gdGhpcy5nZXRJdGVtQXRJbmRleCgwKTtcbiAgICBpZiAoaXRlbSkge1xuICAgICAgdGhpcy5hY3RpdmF0ZShpdGVtKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGFjdGl2YXRlTGFzdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZGF0YSkge1xuICAgICAgY29uc3QgaXRlbSA9IHRoaXMuZ2V0SXRlbUF0SW5kZXgodGhpcy5fZGF0YS5sZW5ndGggLSAxKTtcbiAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgIHRoaXMuYWN0aXZhdGUoaXRlbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBwcmV2aW91c1Jvd0l0ZW0oKTogVCB7XG4gICAgY29uc3Qgcm93cyA9IHRoaXMuX2RhdGE7XG4gICAgbGV0IGN1cnJlbnRJbmRleCA9IHRoaXMuZ2V0Q3VycmVudEluZGV4KCk7XG4gICAgaWYgKGN1cnJlbnRJbmRleCA+IDApIHtcbiAgICAgIC0tY3VycmVudEluZGV4O1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5hY3RpdmF0aW9uT3B0aW9ucy5sb29wKSB7XG4gICAgICAgIGN1cnJlbnRJbmRleCA9IHJvd3MubGVuZ3RoIC0gMTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuZ2V0SXRlbUF0SW5kZXgoY3VycmVudEluZGV4KTtcbiAgfVxuXG4gIHByaXZhdGUgbmV4dFJvd0l0ZW0oKTogVCB7XG4gICAgY29uc3Qgcm93cyA9IHRoaXMuX2RhdGE7XG4gICAgbGV0IGN1cnJlbnRJbmRleCA9IHRoaXMuZ2V0Q3VycmVudEluZGV4KCk7XG5cbiAgICBpZiAoY3VycmVudEluZGV4IDwgKHJvd3MubGVuZ3RoIC0gMSkpIHtcbiAgICAgICsrY3VycmVudEluZGV4O1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAodGhpcy5hY3RpdmF0aW9uT3B0aW9ucy5sb29wKSB7XG4gICAgICAgIGN1cnJlbnRJbmRleCA9IDA7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldEl0ZW1BdEluZGV4KGN1cnJlbnRJbmRleCk7XG4gIH1cblxuICBwcml2YXRlIGdldEN1cnJlbnRJbmRleCgpOiBudW1iZXIge1xuICAgIGNvbnN0IGFjdGl2ZUl0ZW0gPSB0aGlzLmFjdGl2ZUl0ZW07XG4gICAgaWYgKGFjdGl2ZUl0ZW0pIHtcbiAgICAgIHJldHVybiB0aGlzLmZpbmRJdGVtSW5kZXgoYWN0aXZlSXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiAtMTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEl0ZW1BdEluZGV4KGluZGV4OiBudW1iZXIpOiBUIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVtpbmRleF07XG4gIH1cblxuICBwcml2YXRlIGZpbmRJdGVtSW5kZXgoaXRlbTogVCk6IG51bWJlciB7XG4gICAgY29uc3QgbmVlZGxlSWQgPSB0aGlzLmdldElkKGl0ZW0pO1xuICAgIHJldHVybiB0aGlzLl9kYXRhLmZpbmRJbmRleChpdG0gPT4gdGhpcy5pdGVtRXF1YWxzSWQoaXRtLCBuZWVkbGVJZCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBpdGVtRXF1YWxzKGE6IFQsIGI6IFQpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJZChhKSA9PT0gdGhpcy5nZXRJZChiKTtcbiAgfVxuXG4gIHByaXZhdGUgaXRlbUVxdWFsc0lkKGE6IFQsIG5lZWRsZUlkOiBhbnkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXRJZChhKSA9PT0gbmVlZGxlSWQ7XG4gIH1cblxuICBwcml2YXRlIGdldElkKGl0ZW06IFQpOiBhbnkge1xuICAgIGlmIChpdGVtKSB7XG4gICAgICBjb25zdCBkYyA9IHRoaXMuZWxkZXJUYWJsZS5kYXRhQ29udGV4dCQuZ2V0VmFsdWUoKTtcbiAgICAgIHJldHVybiBkYz8uZGF0YVNvdXJjZT8uZ2V0SWQoaXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBpdGVtO1xuICAgIH1cbiAgfVxuXG59XG4iXX0=
275
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxkZXItdGFibGUtYWN0aXZhdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2RhdGEtdmlldy90YWJsZS9hY3RpdmF0aW9uL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTSxNQUFNLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUVuRCxPQUFPLEVBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7OztBQVN6RSxNQUFNLE9BQU8sNkJBQTZCO0lBcUJ4Qzs7OztnRkFJNEU7SUFFNUUsWUFDbUIsVUFBK0I7UUFBL0IsZUFBVSxHQUFWLFVBQVUsQ0FBcUI7UUExQmxEOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXhELGFBQVEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRWhDLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQUksSUFBSSxDQUFDLENBQUM7UUFHcEQsc0JBQWlCLEdBQWdDLEVBQUUsQ0FBQztRQUVuRCxVQUFLLEdBQVEsRUFBRSxDQUFDO1FBRVIsVUFBSyxHQUFHLElBQUksZUFBZSxDQUE4QixFQUFFLENBQUMsQ0FBQztJQVc3RSxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLGVBQWU7UUFFcEIsTUFBTSxLQUFL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QUFZLENBQUMsR0FBRyxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUVPLFVBQVUsQ0FBQyxDQUFJLEVBQUUsQ0FBSTtRQUMzQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRU8sWUFBWSxDQUFDLENBQUksRUFBRSxRQUFhO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVPLEtBQUssQ0FBQyxJQUFPO1FBQ25CLElBQUksSUFBSSxFQUFFO1lBQ1IsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkQsT0FBTyxFQUFFLEVBQUUsVUFBVSxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNwQzthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUM7OzBIQW5UVSw2QkFBNkI7OEdBQTdCLDZCQUE2QjsyRkFBN0IsNkJBQTZCO2tCQUp6QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQ0FBbUM7b0JBQzdDLFFBQVEsRUFBRSxzQkFBc0I7aUJBQ2pDOzBHQWdCUSxpQkFBaUI7c0JBRHZCLEtBQUs7dUJBQUMsc0JBQXNCO2dCQWlFdEIsU0FBUztzQkFEZixZQUFZO3VCQUFDLFNBQVMsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFnQ3hCLGdCQUFnQjtzQkFEMUIsTUFBTTtnQkFVSSxVQUFVO3NCQURwQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgRGlyZWN0aXZlLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksIE91dHB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RWxkZXJUYWJsZVJvd0RpcmVjdGl2ZX0gZnJvbSAnLi4vZWxkZXItdGFibGUtcm93LmRpcmVjdGl2ZSc7XG5pbXBvcnQge3N3aXRjaE1hcCwgdGFrZVVudGlsLCB0YXB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7RWxkZXJUYWJsZUNvbXBvbmVudH0gZnJvbSAnLi4vZWxkZXItdGFibGUvZWxkZXItdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7RWxkZXJUYWJsZUFjdGl2YXRpb25PcHRpb25zfSBmcm9tICcuL2VsZGVyLXRhYmxlLWFjdGl2YXRpb24tb3B0aW9ucyc7XG5pbXBvcnQge0VsZGVySXRlbUFjdGl2YXRvcn0gZnJvbSAnLi9lbGRlci1pdGVtLWFjdGl2YXRvcic7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ2VsZGVyLXRhYmxlW2VsZGVyVGFibGVBY3RpdmF0aW9uXScsXG4gIGV4cG9ydEFzOiAnZWxkZXJUYWJsZUFjdGl2YXRpb24nXG59KVxuZXhwb3J0IGNsYXNzIEVsZGVyVGFibGVBY3RpdmF0aW9uRGlyZWN0aXZlPFQ+IGltcGxlbWVudHMgRWxkZXJJdGVtQWN0aXZhdG9yPFQ+LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlSXRlbSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFQ+KG51bGwpO1xuXG4gIEBJbnB1dCgnZWxkZXJUYWJsZUFjdGl2YXRpb24nKVxuICBwdWJsaWMgYWN0aXZhdGlvbk9wdGlvbnM6IEVsZGVyVGFibGVBY3RpdmF0aW9uT3B0aW9ucyA9IHt9O1xuXG4gIHByaXZhdGUgX2RhdGE6IFRbXSA9IFtdO1xuXG4gIHB1YmxpYyByZWFkb25seSByb3dzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxkZXJUYWJsZVJvd0RpcmVjdGl2ZTxUPltdPihbXSk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGRlclRhYmxlOiBFbGRlclRhYmxlQ29tcG9uZW50XG4gICkge1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcblxuICAgIGNvbnN0IHJvd3MkID0gdGhpcy5lbGRlclRhYmxlLnJvd3MkO1xuICAgIGNvbnN0IGRhdGEkID0gdGhpcy5lbGRlclRhYmxlLmRhdGFDb250ZXh0JC5waXBlKFxuICAgICAgc3dpdGNoTWFwKGRjID0+IGRjLmRhdGEpLFxuICAgICAgdGFwKGRhdGEgPT4gdGhpcy5fZGF0YSA9IGRhdGEpXG4gICAgKTtcblxuICAgIGNvbWJpbmVMYXRlc3QoW3Jvd3MkLCBkYXRhJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbcm93cywgZGF0YV0pID0+IHtcbiAgICAgICAgdGhpcy5yb3dzJC5uZXh0KFxuICAgICAgICAgIHRoaXMucm93RGF0YVVwZGF0ZWQocm93cywgZGF0YSlcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5oYW5kbGVBdXRvQWN0aXZhdGlvbnMoKTtcbiAgICAgIH1cbiAgICApO1xuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5yb3dzJCwgdGhpcy5hY3RpdmVJdGVtJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbcm93cywgYWN0aXZlSXRlbV0pID0+IHtcbiAgICAgICAgdGhpcy51cGRhdGVSb3dzQWN0aXZhdGlvbihyb3dzLCBhY3RpdmVJdGVtKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgICAvLyB0aGlzLmVsZGVyVGFibGUucm93cyQuZ2V0VmFsdWUoKS5mb3JFYWNoKHIgPT4gci5iaW5kVGFibGVBY3RpdmF0aW9uKG51bGwpKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKi5cbiAgICogSG9zdCBMaXN0ZW5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duJywgWyckZXZlbnQnXSlcbiAgcHVibGljIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgIGxldCBuZXdBY3RpdmVJdGVtOiBUO1xuICAgIGlmIChldmVudC5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XG4gICAgICBuZXdBY3RpdmVJdGVtID0gdGhpcy5uZXh0Um93SXRlbSgpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnQXJyb3dVcCcpIHtcbiAgICAgIG5ld0FjdGl2ZUl0ZW0gPSB0aGlzLnByZXZpb3VzUm93SXRlbSgpO1xuICAgIH1cblxuICAgIGlmIChuZXdBY3RpdmVJdGVtKSB7XG4gICAgICB0aGlzLmZvY3VzQW5kQWN0aXZhdGUobmV3QWN0aXZlSXRlbSk7XG4gICAgfVxuXG4gICAgY29uc3QgYWN0aXZlID0gdGhpcy5hY3RpdmVJdGVtO1xuICAgIGlmIChhY3RpdmUpIHtcbiAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgdGhpcy5lbGRlclRhYmxlLm9uSXRlbUNsaWNrKGFjdGl2ZSk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdTcGFjZWJhcicgfHwgZXZlbnQua2V5ID09PSAnICcpIHtcbiAgICAgICAgdGhpcy5lbGRlclRhYmxlLnNlbGVjdGlvbk1vZGVsLnRvZ2dsZShhY3RpdmUpO1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBAT3V0cHV0KClcbiAgcHVibGljIGdldCBhY3RpdmVJdGVtQ2hhbmdlKCk6IE9ic2VydmFibGU8VD4ge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUl0ZW0kO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmVJdGVtKCk6IFQge1xuICAgIHJldHVybiB0aGlzLmFjdGl2ZUl0ZW0kLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGFjdGl2ZUl0ZW0oaXRlbTogVCkge1xuICAgIGlmIChpdGVtICE9PSB0aGlzLmFjdGl2ZUl0ZW0pIHtcbiAgICAgIHRoaXMuYWN0aXZlSXRlbSQubmV4dChpdGVtKTtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdTZXQgYWN0aXZlIGl0ZW0gdG8gJywgaXRlbSk7XG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGFjdGl2YXRlKGl0ZW06IFQpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGl2ZUl0ZW0gPSBpdGVtO1xuICB9XG5cbiAgcHVibGljIGZvY3VzQW5kQWN0aXZhdGUoaXRlbTogVCk6IHZvaWQge1xuICAgIGNvbnN0IHJvdyA9IHRoaXMuZ2V0Um93Rm9ySXRlbShpdGVtKTtcbiAgICBpZiAocm93KSB7XG4gICAgICByb3cuZm91Y3MoKTsgLy8gRm9jdXMgd2lsbCBhdXRvIGFjdGl2YXRlIHRoZSByb3dcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaXNJdGVtQWN0aXZlKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5hY3RpdmVJdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtRXF1YWxzKHRoaXMuYWN0aXZlSXRlbSwgaXRlbSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaGFzSXRlbUZvY3VzKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICBjb25zdCByb3cgPSB0aGlzLmdldFJvd0Zvckl0ZW0oaXRlbSk7XG4gICAgcmV0dXJuIHJvdz8uaGFzRm9jdXM7XG4gIH1cblxuICBwdWJsaWMgbmV4dENsb3NlVG8oYWN0aXZlOiBUKTogVCB7XG4gICAgY29uc3QgbmV4dCA9IHRoaXMubmV4dFJvd0l0ZW0oKTtcbiAgICBpZiAobmV4dCAhPT0gYWN0aXZlKSB7XG4gICAgICByZXR1cm4gbmV4dDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucHJldmlvdXNSb3dJdGVtKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHVwZGF0ZVJvd3NBY3RpdmF0aW9uKHJvd3M6IEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8VD5bXSwgYWN0aXZlSXRlbTogVCk6IHZvaWQge1xuICAgIGNvbnN0IGFjdGl2ZUlkID0gdGhpcy5nZXRJZChhY3RpdmVJdGVtKTtcbiAgICByb3dzLmZvckVhY2gocm93ID0+IHtcbiAgICAgIHRoaXMudXBkYXRlUm93QWN0aXZhdGlvbihyb3csIGFjdGl2ZUlkKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlUm93QWN0aXZhdGlvbihyb3c6IEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8VD4sIGFjdGl2ZUlkOiBhbnkpOiB2b2lkIHtcbiAgICBpZiAocm93Lm1vZGVsKSB7XG4gICAgICBpZiAodGhpcy5pdGVtRXF1YWxzSWQocm93Lm1vZGVsLCBhY3RpdmVJZCkpIHtcbiAgICAgICAgaWYgKCFyb3cuYWN0aXZhdGVkKSB7XG4gICAgICAgICAgcm93LmFjdGl2YXRlZCA9IHRydWU7XG4gICAgICAgICAgdGhpcy5sb2dnZXIuZGVidWcoJ0FjdGl2YXRlZCByb3c6ICcsIHJvdyk7XG4gICAgICAgICAgaWYgKCFyb3cuaGFzRm9jdXMpIHtcbiAgICAgICAgICAgIHJvdy5icmluZ1RvVmlldygpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcm93LmFjdGl2YXRlZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICByb3cuYWN0aXZhdGVkID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByb3dEYXRhVXBkYXRlZChcbiAgICByb3dzOiBFbGRlclRhYmxlUm93RGlyZWN0aXZlPFQ+W10sXG4gICAgZGF0YTogVFtdXG4gICk6IEVsZGVyVGFibGVSb3dEaXJlY3RpdmU8VD5bXSB7XG4gICAgLy8gdGhpcy5sb2dnZXIuZGVidWcoJ0ZvdW5kIHJvd3M6Jywgcm93cyk7XG4gICAgcm93cy5mb3JFYWNoKHJvdyA9PiB7XG4gICAgICByb3cuYmluZFRhYmxlQWN0aXZhdGlvbih0aGlzKTtcbiAgICB9KTtcbiAgICByZXR1cm4gcm93cztcbiAgfVxuXG5cbiAgcHJpdmF0ZSBnZXRSb3dGb3JJdGVtKGl0ZW06IFQpOiBFbGRlclRhYmxlUm93RGlyZWN0aXZlPFQ+IHwgbnVsbCB7XG4gICAgY29uc3Qgcm93cyA9IHRoaXMucm93cyQuZ2V0VmFsdWUoKTtcbiAgICByZXR1cm4gcm93cy5maW5kKHIgPT4gci5tb2RlbCA9PT0gaXRlbSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUF1dG9BY3RpdmF0aW9ucygpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaGFzQWN0aXZlSXRlbSB8fCB0aGlzLmFjdGl2YXRpb25PcHRpb25zLm1vZGUgPT09ICdhbHdheXMnKSB7XG4gICAgICBzd2l0Y2ggKHRoaXMuYWN0aXZhdGlvbk9wdGlvbnMucm93KSB7XG4gICAgICAgIGNhc2UgJ25vbmUnOlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdmaXJzdCc6XG4gICAgICAgICAgdGhpcy5hY3RpdmF0ZUZpcnN0KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgJ2xhc3QnOlxuICAgICAgICAgIHRoaXMuYWN0aXZhdGVMYXN0KCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXQgaGFzQWN0aXZlSXRlbSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmFjdGl2ZUl0ZW07XG4gIH1cblxuICBwcml2YXRlIGFjdGl2YXRlRmlyc3QoKTogdm9pZCB7XG4gICAgY29uc3QgaXRlbSA9IHRoaXMuZ2V0SXRlbUF0SW5kZXgoMCk7XG4gICAgaWYgKGl0ZW0pIHtcbiAgICAgIHRoaXMuYWN0aXZhdGUoaXRlbSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhY3RpdmF0ZUxhc3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2RhdGEpIHtcbiAgICAgIGNvbnN0IGl0ZW0gPSB0aGlzLmdldEl0ZW1BdEluZGV4KHRoaXMuX2RhdGEubGVuZ3RoIC0gMSk7XG4gICAgICBpZiAoaXRlbSkge1xuICAgICAgICB0aGlzLmFjdGl2YXRlKGl0ZW0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcHJldmlvdXNSb3dJdGVtKCk6IFQge1xuICAgIGNvbnN0IHJvd3MgPSB0aGlzLl9kYXRhO1xuICAgIGxldCBjdXJyZW50SW5kZXggPSB0aGlzLmdldEN1cnJlbnRJbmRleCgpO1xuICAgIGlmIChjdXJyZW50SW5kZXggPiAwKSB7XG4gICAgICAtLWN1cnJlbnRJbmRleDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuYWN0aXZhdGlvbk9wdGlvbnMubG9vcCkge1xuICAgICAgICBjdXJyZW50SW5kZXggPSByb3dzLmxlbmd0aCAtIDE7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmdldEl0ZW1BdEluZGV4KGN1cnJlbnRJbmRleCk7XG4gIH1cblxuICBwcml2YXRlIG5leHRSb3dJdGVtKCk6IFQge1xuICAgIGNvbnN0IHJvd3MgPSB0aGlzLl9kYXRhO1xuICAgIGxldCBjdXJyZW50SW5kZXggPSB0aGlzLmdldEN1cnJlbnRJbmRleCgpO1xuXG4gICAgaWYgKGN1cnJlbnRJbmRleCA8IChyb3dzLmxlbmd0aCAtIDEpKSB7XG4gICAgICArK2N1cnJlbnRJbmRleDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHRoaXMuYWN0aXZhdGlvbk9wdGlvbnMubG9vcCkge1xuICAgICAgICBjdXJyZW50SW5kZXggPSAwO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5nZXRJdGVtQXRJbmRleChjdXJyZW50SW5kZXgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRDdXJyZW50SW5kZXgoKTogbnVtYmVyIHtcbiAgICBjb25zdCBhY3RpdmVJdGVtID0gdGhpcy5hY3RpdmVJdGVtO1xuICAgIGlmIChhY3RpdmVJdGVtKSB7XG4gICAgICByZXR1cm4gdGhpcy5maW5kSXRlbUluZGV4KGFjdGl2ZUl0ZW0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gLTE7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtQXRJbmRleChpbmRleDogbnVtYmVyKTogVCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFbaW5kZXhdO1xuICB9XG5cbiAgcHJpdmF0ZSBmaW5kSXRlbUluZGV4KGl0ZW06IFQpOiBudW1iZXIge1xuICAgIGNvbnN0IG5lZWRsZUlkID0gdGhpcy5nZXRJZChpdGVtKTtcbiAgICByZXR1cm4gdGhpcy5fZGF0YS5maW5kSW5kZXgoaXRtID0+IHRoaXMuaXRlbUVxdWFsc0lkKGl0bSwgbmVlZGxlSWQpKTtcbiAgfVxuXG4gIHByaXZhdGUgaXRlbUVxdWFscyhhOiBULCBiOiBUKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SWQoYSkgPT09IHRoaXMuZ2V0SWQoYik7XG4gIH1cblxuICBwcml2YXRlIGl0ZW1FcXVhbHNJZChhOiBULCBuZWVkbGVJZDogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SWQoYSkgPT09IG5lZWRsZUlkO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJZChpdGVtOiBUKTogYW55IHtcbiAgICBpZiAoaXRlbSkge1xuICAgICAgY29uc3QgZGMgPSB0aGlzLmVsZGVyVGFibGUuZGF0YUNvbnRleHQkLmdldFZhbHVlKCk7XG4gICAgICByZXR1cm4gZGM/LmRhdGFTb3VyY2U/LmdldElkKGl0ZW0pO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gaXRlbTtcbiAgICB9XG4gIH1cblxufVxuIl19
@@ -97,7 +97,10 @@ export class DataViewIframeComponent {
97
97
  combineLatest([
98
98
  this._dataViewOptions$,
99
99
  iframeHost.iframeState$
100
- ]).pipe(takeUntil(this._destroy$), filter(([options, state]) => !!options && state.hasLoaded)).subscribe(([options, state]) => this.sendMessageToChild(this.buildDataViewInitMessage(options, this.initialSelection)));
100
+ ]).pipe(takeUntil(this._destroy$),
101
+ // Send message on load and viewReady state for backwards compatibility between host and child.
102
+ // Actually using only viewReady should be enough
103
+ filter(([options, state]) => !!options && (state.hasLoaded || state.isViewReady))).subscribe(([options, state]) => this.sendMessageToChild(this.buildDataViewInitMessage(options, this.initialSelection)));
101
104
  }
102
105
  buildDataViewInitMessage(options, initialSelection) {
103
106
  return DataViewMessage.initialSelection(new DataViewSelectionInit(options, initialSelection, this.idField));
@@ -124,4 +127,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
124
127
  }], dataViewOptions: [{
125
128
  type: Input
126
129
  }] } });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBR0wsUUFBUSxFQUNSLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUU1RSxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsZUFBZSxFQUFxQixxQkFBcUIsRUFBb0IsTUFBTSwyQkFBMkIsQ0FBQztBQUN2SCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0saURBQWlELENBQUM7Ozs7O0FBRXJGOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8sdUJBQXVCO0lBMEJsQzs7OztnRkFJNEU7SUFFNUUsWUFDc0IsdUJBQXFELEVBQ3JELGNBQW1DO1FBRG5DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7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M0MsSUFBSSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FDOUQsQ0FDRixDQUFBO0lBQ0gsQ0FBQztJQUVPLHdCQUF3QixDQUM5QixPQUE2QixFQUM3QixnQkFBdUI7UUFFdkIsT0FBTyxlQUFlLENBQUMsZ0JBQWdCLENBQ3JDLElBQUkscUJBQXFCLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FDbkUsQ0FBQztJQUNKLENBQUM7O29IQTNJVSx1QkFBdUI7d0dBQXZCLHVCQUF1QixzT0F1QnZCLG1CQUFtQixnRENyRGhDLDJQQU1BOzJGRHdCYSx1QkFBdUI7a0JBTm5DLFNBQVM7K0JBQ0Usd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNOzswQkFtQzVDLFFBQVE7OzBCQUNSLFFBQVE7NENBbkJKLE1BQU07c0JBRFosS0FBSztnQkFJQyxPQUFPO3NCQURiLEtBQUs7Z0JBSUMsZ0JBQWdCO3NCQUR0QixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLFNBQVM7dUJBQUMsbUJBQW1CO2dCQWtEbkIsZUFBZTtzQkFEekIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgT3B0aW9uYWwsIFNraXBTZWxmLFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0lmcmFtZUhvc3RDb21wb25lbnR9IGZyb20gJy4uLy4uL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudCc7XG5pbXBvcnQge1NlbGVjdGlvbk1vZGVsfSBmcm9tICcuLi8uLi8uLi8uLi9jb21tb24vc2VsZWN0aW9uL3NlbGVjdGlvbi1tb2RlbCc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpbHRlciwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0RhdGFWaWV3TWVzc2FnZSwgRGF0YVZpZXdTZWxlY3Rpb24sIERhdGFWaWV3U2VsZWN0aW9uSW5pdCwgVHlwZWRFdmVudE1lc3NhZ2V9IGZyb20gJy4uLy4uL3R5cGVkLWV2ZW50LW1lc3NhZ2UnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJ9IGZyb20gJy4uLy4uLy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zLXByb3ZpZGVyJztcbmltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnN9IGZyb20gJy4uLy4uLy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zJztcblxuLyoqXG4gKiBDb250YWluZXIgZm9yIGRpc3BsYXlpbmcgYSByZW1vdGUgZGF0YSB2aWV3IGluIGFuIGlmcmFtZS5cbiAqIFByb3ZpZGVzIGNhcGFiaWxpdGllcyB0byBjb21tdW5pY2F0ZSBiZXR3ZWVuIHJlbW90ZSBkYXRhIHZpZXcgKGNoaWxkKVxuICogYW5kIGlmcmFtZSBwYXJlbnQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VsZGVyLWRhdGEtdmlldy1pZnJhbWUnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2RhdGEtdmlldy1pZnJhbWUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdJZnJhbWVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFWaWV3T3B0aW9ucyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEVsZGVyRGF0YVZpZXdPcHRpb25zPihFbGRlckRhdGFWaWV3T3B0aW9ucy5kZWZhdWx0T3B0aW9ucygpKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNyY1VybDogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpZEZpZWxkOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGluaXRpYWxTZWxlY3Rpb246IGFueVtdO1xuXG4gIEBWaWV3Q2hpbGQoSWZyYW1lSG9zdENvbXBvbmVudClcbiAgcHVibGljIGlmcmFtZUhvc3Q6IElmcmFtZUhvc3RDb21wb25lbnQ7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBkYXRhVmlld09wdGlvbnNQcm92aWRlcjogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcixcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxhbnk+XG4gICkge1xuICAgIGlmIChkYXRhVmlld09wdGlvbnNQcm92aWRlcikge1xuICAgICAgZGF0YVZpZXdPcHRpb25zUHJvdmlkZXIub3B0aW9ucyQucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKVxuICAgICAgKS5zdWJzY3JpYmUob3B0aW9ucyA9PiB0aGlzLmRhdGFWaWV3T3B0aW9ucyA9IG9wdGlvbnMpXG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpZmUgQ3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAvLyBpZnJhbWUgaXMgb25seSBhdmFpbGFibGUgYWZ0ZXIgdmlldyBpbml0XG4gICAgdGhpcy5zZXR1cERhdGFWaWV3T3B0aW9uc0JyaWRnZSh0aGlzLmlmcmFtZUhvc3QpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuX2Rlc3Ryb3kkLm5leHQoKTtcbiAgICB0aGlzLl9kZXN0cm95JC5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBkYXRhVmlld09wdGlvbnMoKTogRWxkZXJEYXRhVmlld09wdGlvbnMge1xuICAgIHJldHVybiB0aGlzLl9kYXRhVmlld09wdGlvbnMkLmdldFZhbHVlKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRhdGFWaWV3T3B0aW9ucyhvcHRpb25zOiBFbGRlckRhdGFWaWV3T3B0aW9ucykge1xuICAgIGNvbnN0IG5ld09wdGlvbnMgPSB0aGlzLmRhdGFWaWV3T3B0aW9ucy53aXRoT3B0aW9ucyhvcHRpb25zKTtcbiAgICB0aGlzLl9kYXRhVmlld09wdGlvbnMkLm5leHQobmV3T3B0aW9ucyk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFWaWV3T3B0aW9ucyQoKTogT2JzZXJ2YWJsZTxFbGRlckRhdGFWaWV3T3B0aW9ucz4ge1xuICAgIHJldHVybiB0aGlzLl9kYXRhVmlld09wdGlvbnMkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIG9uTWVzc2FnZUZyb21DaGlsZChtZXNzYWdlOiBUeXBlZEV2ZW50TWVzc2FnZTxhbnksYW55Pik6IHZvaWQge1xuICAgIGlmIChEYXRhVmlld01lc3NhZ2UuaXNPZlR5cGUobWVzc2FnZSkpe1xuICAgICAgc3dpdGNoIChtZXNzYWdlLnR5cGUpIHtcbiAgICAgICAgY2FzZSAnU0VMRUNUSU9OX1NFTEVDVEVEJzpcbiAgICAgICAgICB0aGlzLmhhbmRsZVNlbGVjdGlvbk1lc3NhZ2UobWVzc2FnZS5kYXRhKTtcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIHB1YmxpYyBzZW5kTWVzc2FnZVRvQ2hpbGQobWVzc2FnZTogRGF0YVZpZXdNZXNzYWdlPGFueT4pIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZyhcIlNlbmRpbmcgbWVzc2FnZSB0byBpZnJhbWUgY2hpbGQ6XCIsIG1lc3NhZ2UpO1xuICAgIHRoaXMuaWZyYW1lSG9zdC5zZW5kTWVzc2FnZVRvQ2hpbGQobWVzc2FnZSlcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIE1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgaGFuZGxlU2VsZWN0aW9uTWVzc2FnZShkYXRhVmlld1NlbGVjdGlvbjogRGF0YVZpZXdTZWxlY3Rpb248YW55Pik6IHZvaWQge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvbk1vZGVsKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnJlcGxhY2VTZWxlY3Rpb24oZGF0YVZpZXdTZWxlY3Rpb24uc2VsZWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHNldHVwRGF0YVZpZXdPcHRpb25zQnJpZGdlKFxuICAgIGlmcmFtZUhvc3Q6IElmcmFtZUhvc3RDb21wb25lbnRcbiAgKSB7XG4gICAgY29tYmluZUxhdGVzdChbXG4gICAgICB0aGlzLl9kYXRhVmlld09wdGlvbnMkLFxuICAgICAgaWZyYW1lSG9zdC5pZnJhbWVTdGF0ZSRcbiAgICBdKS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIGZpbHRlcigoW29wdGlvbnMsIHN0YXRlXSkgPT4gISFvcHRpb25zICYmIHN0YXRlLmhhc0xvYWRlZClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIChbb3B0aW9ucywgc3RhdGVdKSA9PiB0aGlzLnNlbmRNZXNzYWdlVG9DaGlsZChcbiAgICAgICAgdGhpcy5idWlsZERhdGFWaWV3SW5pdE1lc3NhZ2Uob3B0aW9ucywgdGhpcy5pbml0aWFsU2VsZWN0aW9uKVxuICAgICAgKVxuICAgIClcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGREYXRhVmlld0luaXRNZXNzYWdlKFxuICAgIG9wdGlvbnM6IEVsZGVyRGF0YVZpZXdPcHRpb25zLFxuICAgIGluaXRpYWxTZWxlY3Rpb246IGFueVtdXG4gICk6IERhdGFWaWV3TWVzc2FnZTxEYXRhVmlld1NlbGVjdGlvbkluaXQ8YW55Pj4ge1xuICAgIHJldHVybiBEYXRhVmlld01lc3NhZ2UuaW5pdGlhbFNlbGVjdGlvbihcbiAgICAgIG5ldyBEYXRhVmlld1NlbGVjdGlvbkluaXQob3B0aW9ucywgaW5pdGlhbFNlbGVjdGlvbiwgdGhpcy5pZEZpZWxkKVxuICAgICk7XG4gIH1cblxuXG59XG4iLCI8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsXCI+XG4gIDxlbGRlci1pLWZyYW1lLWhvc3QgY2xhc3M9XCJmbGV4XCJcbiAgICAgICAgICAgICAgICAgICAgICBbaWZyYW1lUGFyYW1zXT1cIntzcmNVcmw6IHNyY1VybCwgaGlkZUFjdGlvbkJhcjogdHJ1ZX1cIlxuICAgICAgICAgICAgICAgICAgICAgIChtZXNzYWdlKT1cIm9uTWVzc2FnZUZyb21DaGlsZCgkZXZlbnQpXCI+XG4gIDwvZWxkZXItaS1mcmFtZS1ob3N0PlxuPC9kaXY+XG4iXX0=
130
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvZGF0YS12aWV3L2RhdGEtdmlldy1pZnJhbWUvZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxLQUFLLEVBR0wsUUFBUSxFQUNSLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsbUJBQW1CLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUU1RSxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDekUsT0FBTyxFQUFDLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUMsZUFBZSxFQUFxQixxQkFBcUIsRUFBb0IsTUFBTSwyQkFBMkIsQ0FBQztBQUN2SCxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFbkQsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0saURBQWlELENBQUM7Ozs7O0FBRXJGOzs7O0dBSUc7QUFPSCxNQUFNLE9BQU8sdUJBQXVCO0lBMEJsQzs7OztnRkFJNEU7SUFFNUUsWUFDc0IsdUJBQXFELEVBQ3JELGNBQW1DO1FBRG5DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7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LE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUMzQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUM5RCxDQUNGLENBQUE7SUFDSCxDQUFDO0lBRU8sd0JBQXdCLENBQzlCLE9BQTZCLEVBQzdCLGdCQUF1QjtRQUV2QixPQUFPLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FDckMsSUFBSSxxQkFBcUIsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUNuRSxDQUFDO0lBQ0osQ0FBQzs7b0hBN0lVLHVCQUF1Qjt3R0FBdkIsdUJBQXVCLHNPQXVCdkIsbUJBQW1CLGdEQ3JEaEMsMlBBTUE7MkZEd0JhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDRSx3QkFBd0IsbUJBR2pCLHVCQUF1QixDQUFDLE1BQU07OzBCQW1DNUMsUUFBUTs7MEJBQ1IsUUFBUTs0Q0FuQkosTUFBTTtzQkFEWixLQUFLO2dCQUlDLE9BQU87c0JBRGIsS0FBSztnQkFJQyxnQkFBZ0I7c0JBRHRCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBa0RuQixlQUFlO3NCQUR6QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPcHRpb25hbCwgU2tpcFNlbGYsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7SWZyYW1lSG9zdENvbXBvbmVudH0gZnJvbSAnLi4vLi4vaWZyYW1lLWhvc3QvaWZyYW1lLWhvc3QuY29tcG9uZW50JztcbmltcG9ydCB7U2VsZWN0aW9uTW9kZWx9IGZyb20gJy4uLy4uLy4uLy4uL2NvbW1vbi9zZWxlY3Rpb24vc2VsZWN0aW9uLW1vZGVsJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7ZmlsdGVyLCB0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RGF0YVZpZXdNZXNzYWdlLCBEYXRhVmlld1NlbGVjdGlvbiwgRGF0YVZpZXdTZWxlY3Rpb25Jbml0LCBUeXBlZEV2ZW50TWVzc2FnZX0gZnJvbSAnLi4vLi4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcn0gZnJvbSAnLi4vLi4vLi4vZGF0YS12aWV3L2Jhc2UvZWxkZXItZGF0YS12aWV3LW9wdGlvbnMtcHJvdmlkZXInO1xuaW1wb3J0IHtFbGRlckRhdGFWaWV3T3B0aW9uc30gZnJvbSAnLi4vLi4vLi4vZGF0YS12aWV3L2Jhc2UvZWxkZXItZGF0YS12aWV3LW9wdGlvbnMnO1xuXG4vKipcbiAqIENvbnRhaW5lciBmb3IgZGlzcGxheWluZyBhIHJlbW90ZSBkYXRhIHZpZXcgaW4gYW4gaWZyYW1lLlxuICogUHJvdmlkZXMgY2FwYWJpbGl0aWVzIHRvIGNvbW11bmljYXRlIGJldHdlZW4gcmVtb3RlIGRhdGEgdmlldyAoY2hpbGQpXG4gKiBhbmQgaWZyYW1lIHBhcmVudC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWxkZXItZGF0YS12aWV3LWlmcmFtZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXZpZXctaWZyYW1lLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS12aWV3LWlmcmFtZS5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBEYXRhVmlld0lmcmFtZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBBZnRlclZpZXdJbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGF0YVZpZXdPcHRpb25zJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8RWxkZXJEYXRhVmlld09wdGlvbnM+KEVsZGVyRGF0YVZpZXdPcHRpb25zLmRlZmF1bHRPcHRpb25zKCkpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgc3JjVXJsOiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlkRmllbGQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBwdWJsaWMgaW5pdGlhbFNlbGVjdGlvbjogYW55W107XG5cbiAgQFZpZXdDaGlsZChJZnJhbWVIb3N0Q29tcG9uZW50KVxuICBwdWJsaWMgaWZyYW1lSG9zdDogSWZyYW1lSG9zdENvbXBvbmVudDtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIGRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyOiBFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgc2VsZWN0aW9uTW9kZWw6IFNlbGVjdGlvbk1vZGVsPGFueT5cbiAgKSB7XG4gICAgaWYgKGRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyKSB7XG4gICAgICBkYXRhVmlld09wdGlvbnNQcm92aWRlci5vcHRpb25zJC5waXBlKFxuICAgICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpXG4gICAgICApLnN1YnNjcmliZShvcHRpb25zID0+IHRoaXMuZGF0YVZpZXdPcHRpb25zID0gb3B0aW9ucylcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIC8vIGlmcmFtZSBpcyBvbmx5IGF2YWlsYWJsZSBhZnRlciB2aWV3IGluaXRcbiAgICB0aGlzLnNldHVwRGF0YVZpZXdPcHRpb25zQnJpZGdlKHRoaXMuaWZyYW1lSG9zdCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZ2V0IGRhdGFWaWV3T3B0aW9ucygpOiBFbGRlckRhdGFWaWV3T3B0aW9ucyB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGF0YVZpZXdPcHRpb25zKG9wdGlvbnM6IEVsZGVyRGF0YVZpZXdPcHRpb25zKSB7XG4gICAgY29uc3QgbmV3T3B0aW9ucyA9IHRoaXMuZGF0YVZpZXdPcHRpb25zLndpdGhPcHRpb25zKG9wdGlvbnMpO1xuICAgIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQubmV4dChuZXdPcHRpb25zKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGF0YVZpZXdPcHRpb25zJCgpOiBPYnNlcnZhYmxlPEVsZGVyRGF0YVZpZXdPcHRpb25zPiB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25NZXNzYWdlRnJvbUNoaWxkKG1lc3NhZ2U6IFR5cGVkRXZlbnRNZXNzYWdlPGFueSxhbnk+KTogdm9pZCB7XG4gICAgaWYgKERhdGFWaWV3TWVzc2FnZS5pc09mVHlwZShtZXNzYWdlKSl7XG4gICAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgICBjYXNlICdTRUxFQ1RJT05fU0VMRUNURUQnOlxuICAgICAgICAgIHRoaXMuaGFuZGxlU2VsZWN0aW9uTWVzc2FnZShtZXNzYWdlLmRhdGEpO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgcHVibGljIHNlbmRNZXNzYWdlVG9DaGlsZChtZXNzYWdlOiBEYXRhVmlld01lc3NhZ2U8YW55Pikge1xuICAgIHRoaXMubG9nLmRlYnVnKFwiU2VuZGluZyBtZXNzYWdlIHRvIGlmcmFtZSBjaGlsZDpcIiwgbWVzc2FnZSk7XG4gICAgdGhpcy5pZnJhbWVIb3N0LnNlbmRNZXNzYWdlVG9DaGlsZChtZXNzYWdlKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgTWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBoYW5kbGVTZWxlY3Rpb25NZXNzYWdlKGRhdGFWaWV3U2VsZWN0aW9uOiBEYXRhVmlld1NlbGVjdGlvbjxhbnk+KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0aW9uTW9kZWwpIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwucmVwbGFjZVNlbGVjdGlvbihkYXRhVmlld1NlbGVjdGlvbi5zZWxlY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0dXBEYXRhVmlld09wdGlvbnNCcmlkZ2UoXG4gICAgaWZyYW1lSG9zdDogSWZyYW1lSG9zdENvbXBvbmVudFxuICApIHtcbiAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuX2RhdGFWaWV3T3B0aW9ucyQsXG4gICAgICBpZnJhbWVIb3N0LmlmcmFtZVN0YXRlJFxuICAgIF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpLFxuICAgICAgLy8gU2VuZCBtZXNzYWdlIG9uIGxvYWQgYW5kIHZpZXdSZWFkeSBzdGF0ZSBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgYmV0d2VlbiBob3N0IGFuZCBjaGlsZC5cbiAgICAgIC8vIEFjdHVhbGx5IHVzaW5nIG9ubHkgdmlld1JlYWR5IHNob3VsZCBiZSBlbm91Z2hcbiAgICAgIGZpbHRlcigoW29wdGlvbnMsIHN0YXRlXSkgPT4gISFvcHRpb25zICYmIChzdGF0ZS5oYXNMb2FkZWQgfHwgc3RhdGUuaXNWaWV3UmVhZHkpKVxuICAgICkuc3Vic2NyaWJlKFxuICAgICAgKFtvcHRpb25zLCBzdGF0ZV0pID0+IHRoaXMuc2VuZE1lc3NhZ2VUb0NoaWxkKFxuICAgICAgICB0aGlzLmJ1aWxkRGF0YVZpZXdJbml0TWVzc2FnZShvcHRpb25zLCB0aGlzLmluaXRpYWxTZWxlY3Rpb24pXG4gICAgICApXG4gICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBidWlsZERhdGFWaWV3SW5pdE1lc3NhZ2UoXG4gICAgb3B0aW9uczogRWxkZXJEYXRhVmlld09wdGlvbnMsXG4gICAgaW5pdGlhbFNlbGVjdGlvbjogYW55W11cbiAgKTogRGF0YVZpZXdNZXNzYWdlPERhdGFWaWV3U2VsZWN0aW9uSW5pdDxhbnk+PiB7XG4gICAgcmV0dXJuIERhdGFWaWV3TWVzc2FnZS5pbml0aWFsU2VsZWN0aW9uKFxuICAgICAgbmV3IERhdGFWaWV3U2VsZWN0aW9uSW5pdChvcHRpb25zLCBpbml0aWFsU2VsZWN0aW9uLCB0aGlzLmlkRmllbGQpXG4gICAgKTtcbiAgfVxuXG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJsYXlvdXQtY29sIGZ1bGxcIj5cbiAgPGVsZGVyLWktZnJhbWUtaG9zdCBjbGFzcz1cImZsZXhcIlxuICAgICAgICAgICAgICAgICAgICAgIFtpZnJhbWVQYXJhbXNdPVwie3NyY1VybDogc3JjVXJsLCBoaWRlQWN0aW9uQmFyOiB0cnVlfVwiXG4gICAgICAgICAgICAgICAgICAgICAgKG1lc3NhZ2UpPVwib25NZXNzYWdlRnJvbUNoaWxkKCRldmVudClcIj5cbiAgPC9lbGRlci1pLWZyYW1lLWhvc3Q+XG48L2Rpdj5cbiJdfQ==
@@ -53,8 +53,8 @@ export class DataViewIframeAdapterDirective {
53
53
  * @param event message from parent window
54
54
  */
55
55
  onWindowsMessage(event) {
56
- this.log.debug('Received message event from parent:', event);
57
- if (event) {
56
+ this.log.trace('Received message event from parent:', event);
57
+ if (event && event.data) {
58
58
  if (DataViewMessage.isOfType(event.data)) {
59
59
  this.log.debug('Received data view message from parent:', event);
60
60
  this.handleMessageFromParent(event.data);
@@ -68,6 +68,8 @@ export class DataViewIframeAdapterDirective {
68
68
  * *
69
69
  **************************************************************************/
70
70
  ngOnInit() {
71
+ // indicating iframe host that we are ready (e.g. ready to receive messages)
72
+ this.iframeService.postViewReadyEventMessage();
71
73
  }
72
74
  ngOnDestroy() {
73
75
  this._destroy$.next();
@@ -133,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
133
135
  type: HostListener,
134
136
  args: ['window:message', ['$event']]
135
137
  }] } });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9kYXRhLXZpZXcvZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksR0FHYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekUsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSx3QkFBd0IsQ0FBQztBQUVqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBRW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCO0lBQ3ZDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFjSCxNQUFNLE9BQU8sOEJBQThCO0lBWXpDOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixhQUE0QixFQUM1QixjQUFtQyxFQUNuQyx1QkFBcUQ7UUFGckQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsbUJBQWMsR0FBZCxjQUFjLENBQXFCO1FBQ25DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7UUFuQnhFOzs7O29GQUk0RTtR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QUN0QztLQUNGOzJGQUVVLDhCQUE4QjtrQkFiMUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsOEJBQThCO29CQUN4QyxTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGNBQWM7NEJBQ3ZCLFVBQVUsRUFBRSxvQkFBb0I7eUJBQ2pDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSw0QkFBNEI7NEJBQ3JDLFVBQVUsRUFBRSx5QkFBeUI7eUJBQ3RDO3FCQUNGO2lCQUNGOzRLQTRDUSxnQkFBZ0I7c0JBRHRCLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIEhvc3RMaXN0ZW5lcixcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtTZWxlY3Rpb25Nb2RlbH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3NlbGVjdGlvbi9zZWxlY3Rpb24tbW9kZWwnO1xuaW1wb3J0IHtTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7dGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0RhdGFWaWV3TWVzc2FnZSwgRGF0YVZpZXdTZWxlY3Rpb24sIERhdGFWaWV3U2VsZWN0aW9uSW5pdH0gZnJvbSAnLi4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5pbXBvcnQge0lmcmFtZVNlcnZpY2V9IGZyb20gJy4uL2lmcmFtZS5zZXJ2aWNlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtFbGRlckRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyfSBmcm9tICcuLi8uLi9kYXRhLXZpZXcvYmFzZS9lbGRlci1kYXRhLXZpZXctb3B0aW9ucy1wcm92aWRlcic7XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVTZWxlY3Rpb25Nb2RlbCgpOiBTZWxlY3Rpb25Nb2RlbDxhbnk+IHtcbiAgcmV0dXJuIG5ldyBTZWxlY3Rpb25Nb2RlbDxhbnk+KCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEYXRhT3B0aW9uc1Byb3ZpZGVyKCk6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIge1xuICByZXR1cm4gbmV3IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIoKTtcbn1cblxuLyoqXG4gKiBBbiBhZGFwdGVyIGJyaWRnaW5nIGNvbW11bmljYXRpb24gYmV0d2VlblxuICogYSBkYXRhIHZpZXcgZGlzcGxheWVkIGluIGFuIGlmcmFtZSBhbmQgaXRzIHBhcmVudC5cbiAqXG4gKiBGb3IgZXhhbXBsZSBwcm9wYWdhdGVzIHNlbGVjdGlvbiBtb2RlbCBjaGFuZ2VzXG4gKiB0byB0aGUgaWZyYW1lIHBhcmVudC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2VsZGVyRGF0YVZpZXdJZnJhbWVBZGFwdGVyXScsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IFNlbGVjdGlvbk1vZGVsLFxuICAgICAgdXNlRmFjdG9yeTogY3JlYXRlU2VsZWN0aW9uTW9kZWxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXIsXG4gICAgICB1c2VGYWN0b3J5OiBjcmVhdGVEYXRhT3B0aW9uc1Byb3ZpZGVyXG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIERhdGFWaWV3SWZyYW1lQWRhcHRlckRpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaWZyYW1lU2VydmljZTogSWZyYW1lU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlbGVjdGlvbk1vZGVsOiBTZWxlY3Rpb25Nb2RlbDxhbnk+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0YVZpZXdPcHRpb25zUHJvdmlkZXI6IEVsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJcbiAgKSB7XG4gICAgc2VsZWN0aW9uTW9kZWwuc2VsZWN0aW9uLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5fZGVzdHJveSQpXG4gICAgKS5zdWJzY3JpYmUoXG4gICAgICBzZWxlY3Rpb24gPT4gdGhpcy5wcm9wYWdhdGVTZWxlY3Rpb25Ub1BhcmVudChzZWxlY3Rpb24pXG4gICAgKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIExpc3RlbmVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIExpc3RlbnMgZm9yIG1lc3NhZ2VzIGZyb20gcGFyZW50IHdpbmRvdy5cbiAgICogTWFrZXMgaXQgcG9zc2libGUgdG8gcmVhY3QgdXBvbiBtZXNzYWdlcyBmcm9tIGlmcmFtZSBwYXJlbnQuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudCBtZXNzYWdlIGZyb20gcGFyZW50IHdpbmRvd1xuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignd2luZG93Om1lc3NhZ2UnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25XaW5kb3dzTWVzc2FnZShldmVudDogTWVzc2FnZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgdGhpcy5sb2cuZGVidWcoJ1JlY2VpdmVkIG1lc3NhZ2UgZXZlbnQgZnJvbSBwYXJlbnQ6JywgZXZlbnQpO1xuICAgIGlmIChldmVudCkge1xuICAgICAgaWYgKERhdGFWaWV3TWVzc2FnZS5pc09mVHlwZShldmVudC5kYXRhKSkge1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZygnUmVjZWl2ZWQgZGF0YSB2aWV3IG1lc3NhZ2UgZnJvbSBwYXJlbnQ6JywgZXZlbnQpO1xuICAgICAgICB0aGlzLmhhbmRsZU1lc3NhZ2VGcm9tUGFyZW50KGV2ZW50LmRhdGEpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlIEN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9kZXN0cm95JC5uZXh0KCk7XG4gICAgdGhpcy5fZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIE1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgaGFuZGxlTWVzc2FnZUZyb21QYXJlbnQobWVzc2FnZTogRGF0YVZpZXdNZXNzYWdlPGFueSwgYW55Pik6IHZvaWQge1xuICAgIHN3aXRjaCAobWVzc2FnZS50eXBlKSB7XG4gICAgICBjYXNlICdTRUxFQ1RJT05fSU5JVCc6XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZURhdGFWaWV3KG1lc3NhZ2UuZGF0YSlcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplRGF0YVZpZXcoaW5pdDogRGF0YVZpZXdTZWxlY3Rpb25Jbml0PGFueT4pOiB2b2lkIHtcblxuICAgIC8vIHVwZGF0aW5nIG9wdGlvbnMgb2YgY2hpbGQgZGF0YSB2aWV3IGdpdmVuIGJ5IGlmcmFtZSBwYXJlbnRcbiAgICB0aGlzLmRhdGFWaWV3T3B0aW9uc1Byb3ZpZGVyLnVwZGF0ZU9wdGlvbnMoXG4gICAgICBvcHRpb25zID0+IG9wdGlvbnMud2l0aE9wdGlvbnMoaW5pdC5vcHRpb25zKVxuICAgIClcblxuICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwua2V5R2V0dGVyRm4gPSAoZW50aXR5KSA9PiBlbnRpdHlbaW5pdC5pZEZpZWxkXTtcbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLmlzTXVsdGlwbGVTZWxlY3Rpb24gPSBpbml0Lm9wdGlvbnMuc2VsZWN0aW9uTXVsdGlFbmFibGVkO1xuICAgIGlmIChpbml0LmluaXRpYWxTZWxlY3Rpb24pIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZWwucmVwbGFjZVNlbGVjdGlvbihpbml0LmluaXRpYWxTZWxlY3Rpb24pO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcHJvcGFnYXRlU2VsZWN0aW9uVG9QYXJlbnQoc2VsZWN0aW9uOiBhbnlbXSk6IHZvaWQge1xuICAgIHRoaXMubG9nLmRlYnVnKCdQcm9wYWdhdGluZyBzZWxlY3Rpb24gdG8gaWZyYW1lIHBhcmVudDonLCBzZWxlY3Rpb24pO1xuXG4gICAgY29uc3QgbWVzc2FnZSA9IHRoaXMuYnVpbGRTZWxlY3Rpb25NZXNzYWdlKHNlbGVjdGlvbik7XG4gICAgdGhpcy5pZnJhbWVTZXJ2aWNlLnBvc3REYXRhTWVzc2FnZShtZXNzYWdlKTtcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRTZWxlY3Rpb25NZXNzYWdlKHNlbGVjdGlvbjogYW55W10pOiBEYXRhVmlld01lc3NhZ2U8YW55PiB7XG4gICAgcmV0dXJuIERhdGFWaWV3TWVzc2FnZS5zZWxlY3Rpb24obmV3IERhdGFWaWV3U2VsZWN0aW9uKHNlbGVjdGlvbikpO1xuICB9XG5cbn1cbiJdfQ==
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9kYXRhLXZpZXcvZGF0YS12aWV3LWlmcmFtZS1hZGFwdGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksR0FHYixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDekUsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUM3QixPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBRSxpQkFBaUIsRUFBd0IsTUFBTSx3QkFBd0IsQ0FBQztBQUVqRyxPQUFPLEVBQUMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFDLDRCQUE0QixFQUFDLE1BQU0sdURBQXVELENBQUM7Ozs7O0FBRW5HLE1BQU0sVUFBVSxvQkFBb0I7SUFDbEMsT0FBTyxJQUFJLGNBQWMsRUFBTyxDQUFDO0FBQ25DLENBQUM7QUFFRCxNQUFNLFVBQVUseUJBQXlCO0lBQ3ZDLE9BQU8sSUFBSSw0QkFBNEIsRUFBRSxDQUFDO0FBQzVDLENBQUM7QUFFRDs7Ozs7O0dBTUc7QUFjSCxNQUFNLE9BQU8sOEJBQThCO0lBWXpDOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixhQUE0QixFQUM1QixjQUFtQyxFQUNuQyx1QkFBcUQ7UUFGckQsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsbUJBQWMsR0FBZCxjQUFjLENBQXFCO1FBQ25DLDRCQUF1QixHQUF2Qix1QkFBdUIsQ0FBOEI7UUFuQnhFOzs7O29GQUk0RTtRQUUzRCxRQUFHLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXJELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBYS9DLGNBQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUMzQixTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUMxQixDQUFDLFNBQVMsQ0FDVCxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQywwQkFBMEIsQ0FBQyxTQUFTLENBQUMsQ0FDeEQsQ0FBQTtJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUU7Ozs7O09BS0c7SUFFSSxnQkFBZ0IsQ0FBQyxLQUFtQjtRQUN6QyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxxQ0FBcUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM3RCxJQUFJLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxFQUFFO1lBQ3ZCLElBQUksZUFBZSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ3hDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLHlDQUF5QyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNqRSxJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQzFDO1NBQ0Y7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsUUFBUTtRQUNiLDRFQUE0RTtRQUM1RSxJQUFJLENBQUMsYUFBYSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDakQsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUsdUJBQXVCLENBQUMsT0FBa0M7UUFDaEUsUUFBUSxPQUFPLENBQUMsSUFBSSxFQUFFO1lBQ3BCLEtBQUssZ0JBQWdCO2dCQUNuQixJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUNyQyxNQUFNO1NBQ1Q7SUFDSCxDQUFDO0lBRU8sa0JBQWtCLENBQUMsSUFBZ0M7UUFFekQsNkRBQTZEO1FBQzdELElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhLENBQ3hDLE9BQU8sQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQzdDLENBQUE7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsR0FBRyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRSxJQUFJLENBQUMsY0FBYyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUM7UUFDN0UsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDekIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztTQUM3RDtJQUNILENBQUM7SUFFTywwQkFBMEIsQ0FBQyxTQUFnQjtRQUNqRCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyx5Q0FBeUMsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUVyRSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVPLHFCQUFxQixDQUFDLFNBQWdCO1FBQzVDLE9BQU8sZUFBZSxDQUFDLFNBQVMsQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDckUsQ0FBQzs7MkhBM0dVLDhCQUE4QjsrR0FBOUIsOEJBQThCLDhIQVg5QjtRQUNUO1lBQ0UsT0FBTyxFQUFFLGNBQWM7WUFDdkIsVUFBVSxFQUFFLG9CQUFvQjtTQUNqQztRQUNEO1lBQ0UsT0FBTyxFQUFFLDRCQUE0QjtZQUNyQyxVQUFVLEVBQUUseUJBQXlCO1NBQ3RDO0tBQ0Y7MkZBRVUsOEJBQThCO2tCQWIxQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw4QkFBOEI7b0JBQ3hDLFNBQVMsRUFBRTt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsY0FBYzs0QkFDdkIsVUFBVSxFQUFFLG9CQUFvQjt5QkFDakM7d0JBQ0Q7NEJBQ0UsT0FBTyxFQUFFLDRCQUE0Qjs0QkFDckMsVUFBVSxFQUFFLHlCQUF5Qjt5QkFDdEM7cUJBQ0Y7aUJBQ0Y7NEtBNENRLGdCQUFnQjtzQkFEdEIsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIERpcmVjdGl2ZSxcbiAgSG9zdExpc3RlbmVyLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1NlbGVjdGlvbk1vZGVsfSBmcm9tICcuLi8uLi8uLi9jb21tb24vc2VsZWN0aW9uL3NlbGVjdGlvbi1tb2RlbCc7XG5pbXBvcnQge1N1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHt0YWtlVW50aWx9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7RGF0YVZpZXdNZXNzYWdlLCBEYXRhVmlld1NlbGVjdGlvbiwgRGF0YVZpZXdTZWxlY3Rpb25Jbml0fSBmcm9tICcuLi90eXBlZC1ldmVudC1tZXNzYWdlJztcbmltcG9ydCB7SWZyYW1lU2VydmljZX0gZnJvbSAnLi4vaWZyYW1lLnNlcnZpY2UnO1xuaW1wb3J0IHtMb2dnZXJGYWN0b3J5fSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcic7XG5pbXBvcnQge0VsZGVyRGF0YVZpZXdPcHRpb25zUHJvdmlkZXJ9IGZyb20gJy4uLy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zLXByb3ZpZGVyJztcblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNlbGVjdGlvbk1vZGVsKCk6IFNlbGVjdGlvbk1vZGVsPGFueT4ge1xuICByZXR1cm4gbmV3IFNlbGVjdGlvbk1vZGVsPGFueT4oKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZURhdGFPcHRpb25zUHJvdmlkZXIoKTogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlciB7XG4gIHJldHVybiBuZXcgRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcigpO1xufVxuXG4vKipcbiAqIEFuIGFkYXB0ZXIgYnJpZGdpbmcgY29tbXVuaWNhdGlvbiBiZXR3ZWVuXG4gKiBhIGRhdGEgdmlldyBkaXNwbGF5ZWQgaW4gYW4gaWZyYW1lIGFuZCBpdHMgcGFyZW50LlxuICpcbiAqIEZvciBleGFtcGxlIHByb3BhZ2F0ZXMgc2VsZWN0aW9uIG1vZGVsIGNoYW5nZXNcbiAqIHRvIHRoZSBpZnJhbWUgcGFyZW50LlxuICovXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZWxkZXJEYXRhVmlld0lmcmFtZUFkYXB0ZXJdJyxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogU2VsZWN0aW9uTW9kZWwsXG4gICAgICB1c2VGYWN0b3J5OiBjcmVhdGVTZWxlY3Rpb25Nb2RlbFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlcixcbiAgICAgIHVzZUZhY3Rvcnk6IGNyZWF0ZURhdGFPcHRpb25zUHJvdmlkZXJcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdJZnJhbWVBZGFwdGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBGaWVsZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBpZnJhbWVTZXJ2aWNlOiBJZnJhbWVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2VsZWN0aW9uTW9kZWw6IFNlbGVjdGlvbk1vZGVsPGFueT4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBkYXRhVmlld09wdGlvbnNQcm92aWRlcjogRWxkZXJEYXRhVmlld09wdGlvbnNQcm92aWRlclxuICApIHtcbiAgICBzZWxlY3Rpb25Nb2RlbC5zZWxlY3Rpb24ucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JClcbiAgICApLnN1YnNjcmliZShcbiAgICAgIHNlbGVjdGlvbiA9PiB0aGlzLnByb3BhZ2F0ZVNlbGVjdGlvblRvUGFyZW50KHNlbGVjdGlvbilcbiAgICApXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlzdGVuZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogTGlzdGVucyBmb3IgbWVzc2FnZXMgZnJvbSBwYXJlbnQgd2luZG93LlxuICAgKiBNYWtlcyBpdCBwb3NzaWJsZSB0byByZWFjdCB1cG9uIG1lc3NhZ2VzIGZyb20gaWZyYW1lIHBhcmVudC5cbiAgICpcbiAgICogQHBhcmFtIGV2ZW50IG1lc3NhZ2UgZnJvbSBwYXJlbnQgd2luZG93XG4gICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bWVzc2FnZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd3NNZXNzYWdlKGV2ZW50OiBNZXNzYWdlRXZlbnQpOiBib29sZWFuIHtcbiAgICB0aGlzLmxvZy50cmFjZSgnUmVjZWl2ZWQgbWVzc2FnZSBldmVudCBmcm9tIHBhcmVudDonLCBldmVudCk7XG4gICAgaWYgKGV2ZW50ICYmIGV2ZW50LmRhdGEpIHtcbiAgICAgIGlmIChEYXRhVmlld01lc3NhZ2UuaXNPZlR5cGUoZXZlbnQuZGF0YSkpIHtcbiAgICAgICAgdGhpcy5sb2cuZGVidWcoJ1JlY2VpdmVkIGRhdGEgdmlldyBtZXNzYWdlIGZyb20gcGFyZW50OicsIGV2ZW50KTtcbiAgICAgICAgdGhpcy5oYW5kbGVNZXNzYWdlRnJvbVBhcmVudChldmVudC5kYXRhKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZSBDeWNsZSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gaW5kaWNhdGluZyBpZnJhbWUgaG9zdCB0aGF0IHdlIGFyZSByZWFkeSAoZS5nLiByZWFkeSB0byByZWNlaXZlIG1lc3NhZ2VzKVxuICAgIHRoaXMuaWZyYW1lU2VydmljZS5wb3N0Vmlld1JlYWR5RXZlbnRNZXNzYWdlKCk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuX2Rlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBNZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZU1lc3NhZ2VGcm9tUGFyZW50KG1lc3NhZ2U6IERhdGFWaWV3TWVzc2FnZTxhbnksIGFueT4pOiB2b2lkIHtcbiAgICBzd2l0Y2ggKG1lc3NhZ2UudHlwZSkge1xuICAgICAgY2FzZSAnU0VMRUNUSU9OX0lOSVQnOlxuICAgICAgICB0aGlzLmluaXRpYWxpemVEYXRhVmlldyhtZXNzYWdlLmRhdGEpXG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaW5pdGlhbGl6ZURhdGFWaWV3KGluaXQ6IERhdGFWaWV3U2VsZWN0aW9uSW5pdDxhbnk+KTogdm9pZCB7XG5cbiAgICAvLyB1cGRhdGluZyBvcHRpb25zIG9mIGNoaWxkIGRhdGEgdmlldyBnaXZlbiBieSBpZnJhbWUgcGFyZW50XG4gICAgdGhpcy5kYXRhVmlld09wdGlvbnNQcm92aWRlci51cGRhdGVPcHRpb25zKFxuICAgICAgb3B0aW9ucyA9PiBvcHRpb25zLndpdGhPcHRpb25zKGluaXQub3B0aW9ucylcbiAgICApXG5cbiAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLmtleUdldHRlckZuID0gKGVudGl0eSkgPT4gZW50aXR5W2luaXQuaWRGaWVsZF07XG4gICAgdGhpcy5zZWxlY3Rpb25Nb2RlbC5pc011bHRpcGxlU2VsZWN0aW9uID0gaW5pdC5vcHRpb25zLnNlbGVjdGlvbk11bHRpRW5hYmxlZDtcbiAgICBpZiAoaW5pdC5pbml0aWFsU2VsZWN0aW9uKSB7XG4gICAgICB0aGlzLnNlbGVjdGlvbk1vZGVsLnJlcGxhY2VTZWxlY3Rpb24oaW5pdC5pbml0aWFsU2VsZWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHByb3BhZ2F0ZVNlbGVjdGlvblRvUGFyZW50KHNlbGVjdGlvbjogYW55W10pOiB2b2lkIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnUHJvcGFnYXRpbmcgc2VsZWN0aW9uIHRvIGlmcmFtZSBwYXJlbnQ6Jywgc2VsZWN0aW9uKTtcblxuICAgIGNvbnN0IG1lc3NhZ2UgPSB0aGlzLmJ1aWxkU2VsZWN0aW9uTWVzc2FnZShzZWxlY3Rpb24pO1xuICAgIHRoaXMuaWZyYW1lU2VydmljZS5wb3N0RGF0YU1lc3NhZ2UobWVzc2FnZSk7XG4gIH1cblxuICBwcml2YXRlIGJ1aWxkU2VsZWN0aW9uTWVzc2FnZShzZWxlY3Rpb246IGFueVtdKTogRGF0YVZpZXdNZXNzYWdlPGFueT4ge1xuICAgIHJldHVybiBEYXRhVmlld01lc3NhZ2Uuc2VsZWN0aW9uKG5ldyBEYXRhVmlld1NlbGVjdGlvbihzZWxlY3Rpb24pKTtcbiAgfVxuXG59XG4iXX0=
@@ -2,6 +2,7 @@ import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, Input,
2
2
  import { LoggerFactory } from '@elderbyte/ts-logger';
3
3
  import { BehaviorSubject } from 'rxjs';
4
4
  import { TypedEventMessage } from '../typed-event-message';
5
+ import { IframeMessages } from '../iframe-messages';
5
6
  import * as i0 from "@angular/core";
6
7
  import * as i1 from "@angular/common";
7
8
  import * as i2 from "@angular/material/icon";
@@ -18,7 +19,10 @@ export class IFrameState {
18
19
  return this.type === 'LOADING';
19
20
  }
20
21
  get hasLoaded() {
21
- return this.type == 'LOADED';
22
+ return this.type === 'LOADED';
23
+ }
24
+ get isViewReady() {
25
+ return this.type === 'VIEW_READY';
22
26
  }
23
27
  get hasError() {
24
28
  return this.type === 'ERROR';
@@ -54,10 +58,11 @@ export class IframeHostComponent {
54
58
  * @param event message from child window
55
59
  */
56
60
  onWindowMessage(event) {
57
- this.log.debug('Received message from child:', event);
58
- if (event) {
59
- if (TypedEventMessage.isOfType(event.data))
61
+ if (event && event.data) {
62
+ if (TypedEventMessage.isOfType(event.data)) {
63
+ this.log.debug('Received message from child:', event.data);
60
64
  this.handleMessageFromChild(event.data);
65
+ }
61
66
  }
62
67
  return true;
63
68
  }
@@ -102,9 +107,12 @@ export class IframeHostComponent {
102
107
  **************************************************************************/
103
108
  handleMessageFromChild(message) {
104
109
  this.message.next(message);
105
- if (message.type === 'CLOSE') {
110
+ if (message.type === IframeMessages.CLOSE) {
106
111
  this.close.emit(message.data);
107
112
  }
113
+ if (message.type === IframeMessages.VIEW_READY_EVENT) {
114
+ this.iframeState$.next(new IFrameState('VIEW_READY'));
115
+ }
108
116
  }
109
117
  }
110
118
  IframeHostComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: IframeHostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
@@ -125,4 +133,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
125
133
  }], iframeParams: [{
126
134
  type: Input
127
135
  }] } });
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLWhvc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pZnJhbWVzL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9pZnJhbWUtaG9zdC9pZnJhbWUtaG9zdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0ksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7Ozs7Ozs7O0FBSXpELE1BQU0sT0FBTyxXQUFXO0lBRXRCLFlBQ2tCLElBQXFCLEVBQ3JCLFVBQXlCLElBQUk7UUFEN0IsU0FBSSxHQUFKLElBQUksQ0FBaUI7UUFDckIsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7SUFFL0MsQ0FBQztJQUVELElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFBO0lBQ2hDLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxJQUFJLFFBQVEsQ0FBQTtJQUM5QixDQUFDO0lBRUQsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxPQUFPLENBQUM7SUFDL0IsQ0FB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LGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQXlCL0IsWUFBWTtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUeXBlZEV2ZW50TWVzc2FnZX0gZnJvbSAnLi4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5cbmV4cG9ydCB0eXBlIElGcmFtZVN0YXRlVHlwZSA9ICdMT0FESU5HJyB8ICdMT0FERUQnIHwgJ0VSUk9SJztcblxuZXhwb3J0IGNsYXNzIElGcmFtZVN0YXRlIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgdHlwZTogSUZyYW1lU3RhdGVUeXBlLFxuICAgIHB1YmxpYyByZWFkb25seSBtZXNzYWdlOiBzdHJpbmcgfCBudWxsID0gbnVsbFxuICApIHtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdMT0FESU5HJ1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNMb2FkZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PSAnTE9BREVEJ1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnRVJST1InO1xuICB9XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRnJhbWVQYXJhbXMge1xuXG4gIC8qKlxuICAgKiBTb3VyY2UgVVJMIG9mIGlmcmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IHNyY1VybDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaWR0aCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgd2lkdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEhlaWdodCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaGVpZ2h0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgYm90dG9tIGFjdGlvbiBiYXJcbiAgICogaXMgaGlkZGVuLlxuICAgKi9cbiAgcmVhZG9ubHkgaGlkZUFjdGlvbkJhcj86IGJvb2xlYW47XG5cbn1cblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1pLWZyYW1lLWhvc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vaWZyYW1lLWhvc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pZnJhbWUtaG9zdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBJZnJhbWVIb3N0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGlmcmFtZVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVBhcmFtcz4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSBpZnJhbWVTdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVN0YXRlPihuZXcgSUZyYW1lU3RhdGUoJ0xPQURJTkcnKSk7XG5cbiAgQFZpZXdDaGlsZCgnaWZyYW1lJylcbiAgcHVibGljIGlmcmFtZTogRWxlbWVudFJlZjtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG1lc3NhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFR5cGVkRXZlbnRNZXNzYWdlPGFueSwgYW55Pj4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaXN0ZW5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBMaXN0ZW5zIGZvciBtZXNzYWdlcyBmcm9tIHdpbmRvdy5cbiAgICogTWFrZXMgaXQgcG9zc2libGUgdG8gcmVhY3QgdXBvbiBtZXNzYWdlcyBmcm9tIGlmcmFtZSBjaGlsZCB3aW5kb3cuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudCBtZXNzYWdlIGZyb20gY2hpbGQgd2luZG93XG4gICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bWVzc2FnZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd01lc3NhZ2UoZXZlbnQ6IE1lc3NhZ2VFdmVudCk6IGJvb2xlYW4ge1xuICAgIHRoaXMubG9nLmRlYnVnKCdSZWNlaXZlZCBtZXNzYWdlIGZyb20gY2hpbGQ6JywgZXZlbnQpO1xuICAgIGlmIChldmVudCkge1xuICAgICAgaWYgKFR5cGVkRXZlbnRNZXNzYWdlLmlzT2ZUeXBlKGV2ZW50LmRhdGEpKVxuICAgICAgdGhpcy5oYW5kbGVNZXNzYWdlRnJvbUNoaWxkKGV2ZW50LmRhdGEpO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaWZlY3ljbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHsgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgaWZyYW1lUGFyYW1zKHBhcmFtczogSUZyYW1lUGFyYW1zKSB7XG4gICAgdGhpcy5pZnJhbWVQYXJhbXMkLm5leHQocGFyYW1zKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBvbklmcmFtZUxvYWRFdmVudChldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnRmluaXNoZWQgbG9hZGluZyBpZnJhbWUnLCBldmVudCk7XG4gICAgdGhpcy5pZnJhbWVTdGF0ZSQubmV4dChuZXcgSUZyYW1lU3RhdGUoJ0xPQURFRCcpKTtcbiAgfVxuXG4gIHB1YmxpYyBvbklmcmFtZUVycm9yRXZlbnQoZXJyOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmxvZy53YXJuKCdGYWlsZWQgdG8gbG9hZCBpZnJhbWUnLCBlcnIpO1xuICAgIHRoaXMuaWZyYW1lU3RhdGUkLm5leHQobmV3IElGcmFtZVN0YXRlKCdFUlJPUicsIGVyciArICcnKSk7XG4gIH1cblxuICBwdWJsaWMgc2VuZE1lc3NhZ2VUb0NoaWxkKG1zZzogVHlwZWRFdmVudE1lc3NhZ2U8YW55LGFueT4pOiB2b2lkIHtcbiAgICB0aGlzLmxvZy5kZWJ1ZygnU2VuZGluZyBtZXNzYWdlIHRvIGlmcmFtZSBjaGlsZDonLCBtc2cpO1xuICAgIHRoaXMuaWZyYW1lLm5hdGl2ZUVsZW1lbnQuY29udGVudFdpbmRvdy5wb3N0TWVzc2FnZShtc2csIFwiKlwiKTtcbiAgfVxuXG4gIHB1YmxpYyBkb0Nsb3NlKGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlLmVtaXQoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcml2YXRlIG1ldGhvZHMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByaXZhdGUgaGFuZGxlTWVzc2FnZUZyb21DaGlsZChtZXNzYWdlOiBUeXBlZEV2ZW50TWVzc2FnZTxhbnksIGFueT4pOiB2b2lkIHtcbiAgICB0aGlzLm1lc3NhZ2UubmV4dChtZXNzYWdlKTtcblxuICAgIGlmIChtZXNzYWdlLnR5cGUgPT09ICdDTE9TRScpIHtcbiAgICAgIHRoaXMuY2xvc2UuZW1pdChtZXNzYWdlLmRhdGEpO1xuICAgIH1cbiAgfVxuXG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwie3N0YXRlOiBpZnJhbWVTdGF0ZSQgfCBhc3luYywgcGFyYW1zOiBpZnJhbWVQYXJhbXMkIHwgYXN5bmN9IGFzIGN0eFwiPlxuXG4gICAgPGRpdiBjbGFzcz1cImxheW91dC1jb2wgZnVsbFwiPlxuXG4gICAgICAgIDwhLS0gSW4gQ2FzZSBvZiBFcnJvciAtLT5cbiAgICAgICAgPGRpdiAqbmdJZj1cImN0eC5zdGF0ZS5oYXNFcnJvclwiXG4gICAgICAgICAgICAgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWNlbnRlci1jZW50ZXIgZmxleFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxzcGFuPkZhaWxlZCB0byBsb2FkIElmcmFtZToge3tjdHguc3RhdGUubWVzc2FnZX19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8IS0tIElGcmFtZSAtLT5cbiAgICAgICAgPGlmcmFtZSAjaWZyYW1lXG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhY3R4LnN0YXRlLmhhc0Vycm9yXCJcbiAgICAgICAgICAgICAgICAobG9hZCk9XCJvbklmcmFtZUxvYWRFdmVudCgkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAoZXJyb3IpPVwib25JZnJhbWVFcnJvckV2ZW50KCRldmVudClcIlxuICAgICAgICAgICAgICAgIFtzcmNdPVwiY3R4LnBhcmFtcy5zcmNVcmwgfCBlbGRlclNhZmVVcmxcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiaWZyYW1lIGZsZXhcIlxuICAgICAgICAgICAgICAgIGFsbG93PVwiY2xpcGJvYXJkICo7Y2xpcGJvYXJkLXJlYWQgKjtjbGlwYm9hcmQtd3JpdGUgKjtcIlxuICAgICAgICA+PC9pZnJhbWU+XG5cbiAgICAgICAgPCEtLSBCb3R0b20gVG9vbGJhciAtLT5cbiAgICAgIDxtYXQtdG9vbGJhciAqbmdJZj1cIiFjdHgucGFyYW1zLmhpZGVBY3Rpb25CYXJcIiBlbGRlclRoZW1lIGNsYXNzPVwibGF5b3V0LXJvdyBwbGFjZS1iZXR3ZWVuLWNlbnRlciBmbGV4LW5vbmUgZWxkZXItZGVuc2UtdG9vbGJhclwiPlxuXG4gICAgICAgIDxhIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZG9DbG9zZSgkZXZlbnQpXCIgY2xhc3M9XCJlbGRlci1pY29uLWJ1dHRvbi1zbVwiPlxuICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgIDwvYT5cblxuICAgICAgICA8YSBtYXQtaWNvbi1idXR0b24gY2xhc3M9XCJlbGRlci1pY29uLWJ1dHRvbi1zbVwiXG4gICAgICAgICAgIFtocmVmXT1cImN0eC5wYXJhbXMuc3JjVXJsIHwgZWxkZXJTYWZlVXJsXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XG4gICAgICAgICAgPG1hdC1pY29uPm9wZW5faW5fbmV3PC9tYXQtaWNvbj5cbiAgICAgICAgPC9hPlxuICAgICAgPC9tYXQtdG9vbGJhcj5cbiAgPC9kaXY+XG5cbjwvbmctY29udGFpbmVyPlxuXG5cblxuIl19
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLWhvc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pZnJhbWVzL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy9pZnJhbWUtaG9zdC9pZnJhbWUtaG9zdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsdUJBQXVCLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDM0ksT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDckMsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7OztBQUlsRCxNQUFNLE9BQU8sV0FBVztJQUV0QixZQUNrQixJQUFxQixFQUNyQixVQUF5QixJQUFJO1FBRDdCLFNBQUksR0FBSixJQUFJLENBQWlCO1FBQ3JCLFlBQU8sR0FBUCxPQUFPLENBQXNCO0lBRS9DLENBQUM7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsSUFBVyxTQUFTO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxRQUFRLENBQUE7SUFDL0IsQ0FBQztJQUVELElBQVcsV0FBVztRQUNwQixP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Q0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7U0FDdkQ7SUFDSCxDQUFDOztnSEFsSFUsbUJBQW1CO29HQUFuQixtQkFBbUIsNlRDbEVoQyxnMENBdUNBOzJGRDJCYSxtQkFBbUI7a0JBTi9CLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU07MEVBZ0J4QyxNQUFNO3NCQURaLFNBQVM7dUJBQUMsUUFBUTtnQkFJWixPQUFPO3NCQURiLE1BQU07Z0JBSUEsS0FBSztzQkFEWCxNQUFNO2dCQXdCQSxlQUFlO3NCQURyQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQTJCL0IsWUFBWTtzQkFEdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtUeXBlZEV2ZW50TWVzc2FnZX0gZnJvbSAnLi4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5pbXBvcnQge0lmcmFtZU1lc3NhZ2VzfSBmcm9tICcuLi9pZnJhbWUtbWVzc2FnZXMnO1xuXG5leHBvcnQgdHlwZSBJRnJhbWVTdGF0ZVR5cGUgPSAnTE9BRElORycgfCAnTE9BREVEJyB8ICdWSUVXX1JFQURZJyB8ICdFUlJPUic7XG5cbmV4cG9ydCBjbGFzcyBJRnJhbWVTdGF0ZSB7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJlYWRvbmx5IHR5cGU6IElGcmFtZVN0YXRlVHlwZSxcbiAgICBwdWJsaWMgcmVhZG9ubHkgbWVzc2FnZTogc3RyaW5nIHwgbnVsbCA9IG51bGxcbiAgKSB7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzTG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnTE9BRElORydcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzTG9hZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdMT0FERUQnXG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzVmlld1JlYWR5KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09ICdWSUVXX1JFQURZJ1xuICB9XG5cbiAgcHVibGljIGdldCBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSAnRVJST1InO1xuICB9XG5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRnJhbWVQYXJhbXMge1xuXG4gIC8qKlxuICAgKiBTb3VyY2UgVVJMIG9mIGlmcmFtZS5cbiAgICovXG4gIHJlYWRvbmx5IHNyY1VybDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaWR0aCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgd2lkdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEhlaWdodCBvZiB0aGUgaWZyYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgaGVpZ2h0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlLCB0aGUgYm90dG9tIGFjdGlvbiBiYXJcbiAgICogaXMgaGlkZGVuLlxuICAgKi9cbiAgcmVhZG9ubHkgaGlkZUFjdGlvbkJhcj86IGJvb2xlYW47XG5cbn1cblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbGRlci1pLWZyYW1lLWhvc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vaWZyYW1lLWhvc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pZnJhbWUtaG9zdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBJZnJhbWVIb3N0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZyA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGlmcmFtZVBhcmFtcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVBhcmFtcz4obnVsbCk7XG4gIHB1YmxpYyByZWFkb25seSBpZnJhbWVTdGF0ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PElGcmFtZVN0YXRlPihuZXcgSUZyYW1lU3RhdGUoJ0xPQURJTkcnKSk7XG5cbiAgQFZpZXdDaGlsZCgnaWZyYW1lJylcbiAgcHVibGljIGlmcmFtZTogRWxlbWVudFJlZjtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIG1lc3NhZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFR5cGVkRXZlbnRNZXNzYWdlPGFueSwgYW55Pj4oKTtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIGNsb3NlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBMaXN0ZW5lcnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBMaXN0ZW5zIGZvciBtZXNzYWdlcyBmcm9tIHdpbmRvdy5cbiAgICogTWFrZXMgaXQgcG9zc2libGUgdG8gcmVhY3QgdXBvbiBtZXNzYWdlcyBmcm9tIGlmcmFtZSBjaGlsZCB3aW5kb3cuXG4gICAqXG4gICAqIEBwYXJhbSBldmVudCBtZXNzYWdlIGZyb20gY2hpbGQgd2luZG93XG4gICAqL1xuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bWVzc2FnZScsIFsnJGV2ZW50J10pXG4gIHB1YmxpYyBvbldpbmRvd01lc3NhZ2UoZXZlbnQ6IE1lc3NhZ2VFdmVudCk6IGJvb2xlYW4ge1xuICAgIGlmIChldmVudCAmJiBldmVudC5kYXRhKSB7XG4gICAgICBpZiAoVHlwZWRFdmVudE1lc3NhZ2UuaXNPZlR5cGUoZXZlbnQuZGF0YSkpe1xuICAgICAgICB0aGlzLmxvZy5kZWJ1ZygnUmVjZWl2ZWQgbWVzc2FnZSBmcm9tIGNoaWxkOicsIGV2ZW50LmRhdGEpO1xuICAgICAgICB0aGlzLmhhbmRsZU1lc3NhZ2VGcm9tQ2hpbGQoZXZlbnQuZGF0YSk7XG4gICAgICB9XG5cbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogTGlmZWN5Y2xlICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7IH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGlmcmFtZVBhcmFtcyhwYXJhbXM6IElGcmFtZVBhcmFtcykge1xuICAgIHRoaXMuaWZyYW1lUGFyYW1zJC5uZXh0KHBhcmFtcyk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgb25JZnJhbWVMb2FkRXZlbnQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5sb2cuZGVidWcoJ0ZpbmlzaGVkIGxvYWRpbmcgaWZyYW1lJywgZXZlbnQpO1xuICAgIHRoaXMuaWZyYW1lU3RhdGUkLm5leHQobmV3IElGcmFtZVN0YXRlKCdMT0FERUQnKSk7XG4gIH1cblxuICBwdWJsaWMgb25JZnJhbWVFcnJvckV2ZW50KGVycjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5sb2cud2FybignRmFpbGVkIHRvIGxvYWQgaWZyYW1lJywgZXJyKTtcbiAgICB0aGlzLmlmcmFtZVN0YXRlJC5uZXh0KG5ldyBJRnJhbWVTdGF0ZSgnRVJST1InLCBlcnIgKyAnJykpO1xuICB9XG5cbiAgcHVibGljIHNlbmRNZXNzYWdlVG9DaGlsZChtc2c6IFR5cGVkRXZlbnRNZXNzYWdlPGFueSxhbnk+KTogdm9pZCB7XG4gICAgdGhpcy5sb2cuZGVidWcoJ1NlbmRpbmcgbWVzc2FnZSB0byBpZnJhbWUgY2hpbGQ6JywgbXNnKTtcbiAgICB0aGlzLmlmcmFtZS5uYXRpdmVFbGVtZW50LmNvbnRlbnRXaW5kb3cucG9zdE1lc3NhZ2UobXNnLCBcIipcIik7XG4gIH1cblxuICBwdWJsaWMgZG9DbG9zZShldmVudD86IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZS5lbWl0KCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZU1lc3NhZ2VGcm9tQ2hpbGQobWVzc2FnZTogVHlwZWRFdmVudE1lc3NhZ2U8YW55LCBhbnk+KTogdm9pZCB7XG4gICAgdGhpcy5tZXNzYWdlLm5leHQobWVzc2FnZSk7XG5cbiAgICBpZiAobWVzc2FnZS50eXBlID09PSBJZnJhbWVNZXNzYWdlcy5DTE9TRSkge1xuICAgICAgdGhpcy5jbG9zZS5lbWl0KG1lc3NhZ2UuZGF0YSk7XG4gICAgfVxuXG4gICAgaWYgKG1lc3NhZ2UudHlwZSA9PT0gSWZyYW1lTWVzc2FnZXMuVklFV19SRUFEWV9FVkVOVCkge1xuICAgICAgdGhpcy5pZnJhbWVTdGF0ZSQubmV4dChuZXcgSUZyYW1lU3RhdGUoJ1ZJRVdfUkVBRFknKSk7XG4gICAgfVxuICB9XG5cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJ7c3RhdGU6IGlmcmFtZVN0YXRlJCB8IGFzeW5jLCBwYXJhbXM6IGlmcmFtZVBhcmFtcyQgfCBhc3luY30gYXMgY3R4XCI+XG5cbiAgICA8ZGl2IGNsYXNzPVwibGF5b3V0LWNvbCBmdWxsXCI+XG5cbiAgICAgICAgPCEtLSBJbiBDYXNlIG9mIEVycm9yIC0tPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiY3R4LnN0YXRlLmhhc0Vycm9yXCJcbiAgICAgICAgICAgICBjbGFzcz1cImxheW91dC1yb3cgcGxhY2UtY2VudGVyLWNlbnRlciBmbGV4XCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4+RmFpbGVkIHRvIGxvYWQgSWZyYW1lOiB7e2N0eC5zdGF0ZS5tZXNzYWdlfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuXG4gICAgICAgIDwhLS0gSUZyYW1lIC0tPlxuICAgICAgICA8aWZyYW1lICNpZnJhbWVcbiAgICAgICAgICAgICAgICAqbmdJZj1cIiFjdHguc3RhdGUuaGFzRXJyb3JcIlxuICAgICAgICAgICAgICAgIChsb2FkKT1cIm9uSWZyYW1lTG9hZEV2ZW50KCRldmVudClcIlxuICAgICAgICAgICAgICAgIChlcnJvcik9XCJvbklmcmFtZUVycm9yRXZlbnQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgW3NyY109XCJjdHgucGFyYW1zLnNyY1VybCB8IGVsZGVyU2FmZVVybFwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJpZnJhbWUgZmxleFwiXG4gICAgICAgICAgICAgICAgYWxsb3c9XCJjbGlwYm9hcmQgKjtjbGlwYm9hcmQtcmVhZCAqO2NsaXBib2FyZC13cml0ZSAqO1wiXG4gICAgICAgID48L2lmcmFtZT5cblxuICAgICAgICA8IS0tIEJvdHRvbSBUb29sYmFyIC0tPlxuICAgICAgPG1hdC10b29sYmFyICpuZ0lmPVwiIWN0eC5wYXJhbXMuaGlkZUFjdGlvbkJhclwiIGVsZGVyVGhlbWUgY2xhc3M9XCJsYXlvdXQtcm93IHBsYWNlLWJldHdlZW4tY2VudGVyIGZsZXgtbm9uZSBlbGRlci1kZW5zZS10b29sYmFyXCI+XG5cbiAgICAgICAgPGEgbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJkb0Nsb3NlKCRldmVudClcIiBjbGFzcz1cImVsZGVyLWljb24tYnV0dG9uLXNtXCI+XG4gICAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cbiAgICAgICAgPC9hPlxuXG4gICAgICAgIDxhIG1hdC1pY29uLWJ1dHRvbiBjbGFzcz1cImVsZGVyLWljb24tYnV0dG9uLXNtXCJcbiAgICAgICAgICAgW2hyZWZdPVwiY3R4LnBhcmFtcy5zcmNVcmwgfCBlbGRlclNhZmVVcmxcIiB0YXJnZXQ9XCJfYmxhbmtcIj5cbiAgICAgICAgICA8bWF0LWljb24+b3Blbl9pbl9uZXc8L21hdC1pY29uPlxuICAgICAgICA8L2E+XG4gICAgICA8L21hdC10b29sYmFyPlxuICA8L2Rpdj5cblxuPC9uZy1jb250YWluZXI+XG5cblxuXG4iXX0=
@@ -0,0 +1,5 @@
1
+ export class IframeMessages {
2
+ }
3
+ IframeMessages.CLOSE = 'CLOSE';
4
+ IframeMessages.VIEW_READY_EVENT = 'VIEW_READY_EVENT';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLW1lc3NhZ2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tcG9uZW50cy9pZnJhbWVzL2lmcmFtZS1tZXNzYWdlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxNQUFNLE9BQU8sY0FBYzs7QUFFRixvQkFBSyxHQUFHLE9BQU8sQ0FBQztBQUVoQiwrQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IGNsYXNzIElmcmFtZU1lc3NhZ2VzIHtcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENMT1NFID0gJ0NMT1NFJztcblxuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFZJRVdfUkVBRFlfRVZFTlQgPSAnVklFV19SRUFEWV9FVkVOVCc7XG5cblxufVxuIl19
@@ -1,6 +1,7 @@
1
1
  import { Injectable } from '@angular/core';
2
2
  import { IframeDialogComponent } from './iframe-dialog/iframe-dialog.component';
3
3
  import { TypedEventMessage } from './typed-event-message';
4
+ import { IframeMessages } from './iframe-messages';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/material/dialog";
6
7
  export class IframeService {
@@ -31,7 +32,10 @@ export class IframeService {
31
32
  }).afterClosed();
32
33
  }
33
34
  postCloseMessage(data) {
34
- IframeService.postToParent(new TypedEventMessage('CLOSE', data));
35
+ IframeService.postToParent(new TypedEventMessage(IframeMessages.CLOSE, data));
36
+ }
37
+ postViewReadyEventMessage(data) {
38
+ IframeService.postToParent(new TypedEventMessage(IframeMessages.VIEW_READY_EVENT, data));
35
39
  }
36
40
  postDataMessage(message) {
37
41
  IframeService.postToParent(message);
@@ -45,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
45
49
  providedIn: 'root'
46
50
  }]
47
51
  }], ctorParameters: function () { return [{ type: i1.MatDialog }]; } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvaWZyYW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUd6QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUU5RSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQzs7O0FBS3hELE1BQU0sT0FBTyxhQUFhO0lBU3RCOzs7O2dGQUk0RTtJQUU1RSxZQUNTLE1BQWlCO1FBQWpCLFdBQU0sR0FBTixNQUFNLENBQVc7SUFDdEIsQ0FBQztJQWZFLE1BQU0sQ0FBQyxZQUFZLENBQU8sT0FBZ0M7UUFDN0QsTUFBTSxDQUFDLFdBQVcsQ0FDaEIsT0FBTyxFQUNQLEdBQUcsQ0FDSixDQUFDLENBQUUscUJBQXFCO0lBQzdCLENBQUM7SUFZRDs7OztnRkFJNEU7SUFFckUsZ0JBQWdCLENBQUksTUFBb0I7UUFDM0MsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBeUMscUJBQXFCLEVBQUU7WUFDbkYsVUFBVSxFQUFFLG1CQUFtQjtZQUMvQixRQUFRLEVBQUUsT0FBTztZQUNqQixTQUFTLEVBQUUsT0FBTztZQUNsQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUssSUFBSSxNQUFNO1lBQzdCLE1BQU0sRUFBRSxNQUFNLENBQUMsTUFBTSxJQUFJLE1BQU07WUFDL0IsSUFBSSxFQUFFLE1BQU07U0FDZixDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVNLGdCQUFnQixDQUFJLElBQVE7UUFDL0IsYUFBYSxDQUFDLFlBQVksQ0FBQyxJQUFJLGlCQUFpQixDQUM5QyxPQUFPLEVBQ1AsSUFBSSxDQUNMLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTSxlQUFlLENBQU8sT0FBZ0M7UUFDekQsYUFBYSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4QyxDQUFDOzswR0E3Q1EsYUFBYTs4R0FBYixhQUFhLGNBRlYsTUFBTTsyRkFFVCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtNYXREaWFsb2d9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQge0lmcmFtZURpYWxvZ0NvbXBvbmVudH0gZnJvbSAnLi9pZnJhbWUtZGlhbG9nL2lmcmFtZS1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7SUZyYW1lUGFyYW1zfSBmcm9tICcuL2lmcmFtZS1ob3N0L2lmcmFtZS1ob3N0LmNvbXBvbmVudCc7XG5pbXBvcnQge1R5cGVkRXZlbnRNZXNzYWdlfSBmcm9tICcuL3R5cGVkLWV2ZW50LW1lc3NhZ2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIElmcmFtZVNlcnZpY2Uge1xuXG4gICAgcHVibGljIHN0YXRpYyBwb3N0VG9QYXJlbnQ8VCwgRD4obWVzc2FnZTogVHlwZWRFdmVudE1lc3NhZ2U8VCwgRD4pOiB2b2lkIHtcbiAgICAgICAgcGFyZW50LnBvc3RNZXNzYWdlKFxuICAgICAgICAgIG1lc3NhZ2UsXG4gICAgICAgICAgJyonXG4gICAgICAgICk7ICAvLyAgYCpgIG9uIGFueSBkb21haW5cbiAgICB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICBwdWJsaWMgZGlhbG9nOiBNYXREaWFsb2dcbiAgICApIHsgfVxuXG4gICAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAgIHB1YmxpYyBvcGVuSWZyYW1lRGlhbG9nPFI+KHBhcmFtczogSUZyYW1lUGFyYW1zKTogT2JzZXJ2YWJsZTxSPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpYWxvZy5vcGVuPElmcmFtZURpYWxvZ0NvbXBvbmVudCwgSUZyYW1lUGFyYW1zLCBSPihJZnJhbWVEaWFsb2dDb21wb25lbnQsIHtcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6ICduby1wYWRkaW5nLWRpYWxvZycsXG4gICAgICAgICAgICBtYXhXaWR0aDogJzEwMHZ3JyxcbiAgICAgICAgICAgIG1heEhlaWdodDogJzEwMHZoJyxcbiAgICAgICAgICAgIHdpZHRoOiBwYXJhbXMud2lkdGggfHwgJzkwdncnLFxuICAgICAgICAgICAgaGVpZ2h0OiBwYXJhbXMuaGVpZ2h0IHx8ICc5MHZoJyxcbiAgICAgICAgICAgIGRhdGE6IHBhcmFtc1xuICAgICAgICB9KS5hZnRlckNsb3NlZCgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBwb3N0Q2xvc2VNZXNzYWdlPFQ+KGRhdGE/OiBUKTogdm9pZCB7XG4gICAgICAgIElmcmFtZVNlcnZpY2UucG9zdFRvUGFyZW50KG5ldyBUeXBlZEV2ZW50TWVzc2FnZTxzdHJpbmcsIFQ+KFxuICAgICAgICAgICdDTE9TRScsXG4gICAgICAgICAgZGF0YVxuICAgICAgICApKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcG9zdERhdGFNZXNzYWdlPFQsIEQ+KG1lc3NhZ2U6IFR5cGVkRXZlbnRNZXNzYWdlPFQsIEQ+KTogdm9pZCB7XG4gICAgICAgIElmcmFtZVNlcnZpY2UucG9zdFRvUGFyZW50KG1lc3NhZ2UpO1xuICAgIH1cblxuXG59XG4iXX0=
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZyYW1lLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lbGRlcmJ5dGUvbmd4LXN0YXJ0ZXIvc3JjL2xpYi9jb21wb25lbnRzL2lmcmFtZXMvaWZyYW1lLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUd6QyxPQUFPLEVBQUMscUJBQXFCLEVBQUMsTUFBTSx5Q0FBeUMsQ0FBQztBQUU5RSxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sbUJBQW1CLENBQUM7OztBQUtqRCxNQUFNLE9BQU8sYUFBYTtJQVN0Qjs7OztnRkFJNEU7SUFFNUUsWUFDUyxNQUFpQjtRQUFqQixXQUFNLEdBQU4sTUFBTSxDQUFXO0lBQ3RCLENBQUM7SUFmRSxNQUFNLENBQUMsWUFBWSxDQUFPLE9BQWdDO1FBQzdELE1BQU0sQ0FBQyxXQUFXLENBQ2hCLE9BQU8sRUFDUCxHQUFHLENBQ0osQ0FBQyxDQUFFLHFCQUFxQjtJQUM3QixDQUFDO0lBWUQ7Ozs7Z0ZBSTRFO0lBRXJFLGdCQUFnQixDQUFJLE1BQW9CO1FBQzNDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQXlDLHFCQUFxQixFQUFFO1lBQ25GLFVBQVUsRUFBRSxtQkFBbUI7WUFDL0IsUUFBUSxFQUFFLE9BQU87WUFDakIsU0FBUyxFQUFFLE9BQU87WUFDbEIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLElBQUksTUFBTTtZQUM3QixNQUFNLEVBQUUsTUFBTSxDQUFDLE1BQU0sSUFBSSxNQUFNO1lBQy9CLElBQUksRUFBRSxNQUFNO1NBQ2YsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBSSxJQUFRO1FBQy9CLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxpQkFBaUIsQ0FDOUMsY0FBYyxDQUFDLEtBQUssRUFDcEIsSUFBSSxDQUNMLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFSSx5QkFBeUIsQ0FBSSxJQUFRO1FBQzFDLGFBQWEsQ0FBQyxZQUFZLENBQUMsSUFBSSxpQkFBaUIsQ0FDOUMsY0FBYyxDQUFDLGdCQUFnQixFQUMvQixJQUFJLENBQ0wsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVRLGVBQWUsQ0FBTyxPQUFnQztRQUN6RCxhQUFhLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7OzBHQXBEUSxhQUFhOzhHQUFiLGFBQWEsY0FGVixNQUFNOzJGQUVULGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge01hdERpYWxvZ30gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7SWZyYW1lRGlhbG9nQ29tcG9uZW50fSBmcm9tICcuL2lmcmFtZS1kaWFsb2cvaWZyYW1lLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHtJRnJhbWVQYXJhbXN9IGZyb20gJy4vaWZyYW1lLWhvc3QvaWZyYW1lLWhvc3QuY29tcG9uZW50JztcbmltcG9ydCB7VHlwZWRFdmVudE1lc3NhZ2V9IGZyb20gJy4vdHlwZWQtZXZlbnQtbWVzc2FnZSc7XG5pbXBvcnQge0lmcmFtZU1lc3NhZ2VzfSBmcm9tICcuL2lmcmFtZS1tZXNzYWdlcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgSWZyYW1lU2VydmljZSB7XG5cbiAgICBwdWJsaWMgc3RhdGljIHBvc3RUb1BhcmVudDxULCBEPihtZXNzYWdlOiBUeXBlZEV2ZW50TWVzc2FnZTxULCBEPik6IHZvaWQge1xuICAgICAgICBwYXJlbnQucG9zdE1lc3NhZ2UoXG4gICAgICAgICAgbWVzc2FnZSxcbiAgICAgICAgICAnKidcbiAgICAgICAgKTsgIC8vICBgKmAgb24gYW55IGRvbWFpblxuICAgIH1cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgIHB1YmxpYyBkaWFsb2c6IE1hdERpYWxvZ1xuICAgICkgeyB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIFB1YmxpYyBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgcHVibGljIG9wZW5JZnJhbWVEaWFsb2c8Uj4ocGFyYW1zOiBJRnJhbWVQYXJhbXMpOiBPYnNlcnZhYmxlPFI+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlhbG9nLm9wZW48SWZyYW1lRGlhbG9nQ29tcG9uZW50LCBJRnJhbWVQYXJhbXMsIFI+KElmcmFtZURpYWxvZ0NvbXBvbmVudCwge1xuICAgICAgICAgICAgcGFuZWxDbGFzczogJ25vLXBhZGRpbmctZGlhbG9nJyxcbiAgICAgICAgICAgIG1heFdpZHRoOiAnMTAwdncnLFxuICAgICAgICAgICAgbWF4SGVpZ2h0OiAnMTAwdmgnLFxuICAgICAgICAgICAgd2lkdGg6IHBhcmFtcy53aWR0aCB8fCAnOTB2dycsXG4gICAgICAgICAgICBoZWlnaHQ6IHBhcmFtcy5oZWlnaHQgfHwgJzkwdmgnLFxuICAgICAgICAgICAgZGF0YTogcGFyYW1zXG4gICAgICAgIH0pLmFmdGVyQ2xvc2VkKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHBvc3RDbG9zZU1lc3NhZ2U8VD4oZGF0YT86IFQpOiB2b2lkIHtcbiAgICAgICAgSWZyYW1lU2VydmljZS5wb3N0VG9QYXJlbnQobmV3IFR5cGVkRXZlbnRNZXNzYWdlPHN0cmluZywgVD4oXG4gICAgICAgICAgSWZyYW1lTWVzc2FnZXMuQ0xPU0UsXG4gICAgICAgICAgZGF0YVxuICAgICAgICApKTtcbiAgICB9XG5cbiAgcHVibGljIHBvc3RWaWV3UmVhZHlFdmVudE1lc3NhZ2U8VD4oZGF0YT86IFQpOiB2b2lkIHtcbiAgICBJZnJhbWVTZXJ2aWNlLnBvc3RUb1BhcmVudChuZXcgVHlwZWRFdmVudE1lc3NhZ2U8c3RyaW5nLCBUPihcbiAgICAgIElmcmFtZU1lc3NhZ2VzLlZJRVdfUkVBRFlfRVZFTlQsXG4gICAgICBkYXRhXG4gICAgKSk7XG4gIH1cblxuICAgIHB1YmxpYyBwb3N0RGF0YU1lc3NhZ2U8VCwgRD4obWVzc2FnZTogVHlwZWRFdmVudE1lc3NhZ2U8VCwgRD4pOiB2b2lkIHtcbiAgICAgICAgSWZyYW1lU2VydmljZS5wb3N0VG9QYXJlbnQobWVzc2FnZSk7XG4gICAgfVxuXG5cbn1cbiJdfQ==
@@ -5,8 +5,7 @@ export class TypedEventMessage {
5
5
  }
6
6
  // type predicate to check weather an object is a DataViewMessage type
7
7
  static isOfType(obj) {
8
- return obj.type !== undefined
9
- && obj.data !== undefined;
8
+ return obj.type !== undefined;
10
9
  }
11
10
  }
12
11
  export class DataViewSelectionInit {
@@ -21,6 +20,8 @@ export class DataViewSelection {
21
20
  this.selection = selection;
22
21
  }
23
22
  }
23
+ export const DataViewMessageTypeValues = ["SELECTION_INIT", "SELECTION_SELECTED"];
24
+ export const isDataViewMessageType = (x) => DataViewMessageTypeValues.includes(x);
24
25
  export class DataViewMessage extends TypedEventMessage {
25
26
  constructor(type, data) {
26
27
  super(type, data);
@@ -35,8 +36,7 @@ export class DataViewMessage extends TypedEventMessage {
35
36
  }
36
37
  // type predicate to check weather an object is a DataViewMessage type
37
38
  static isOfType(obj) {
38
- return obj.type !== undefined
39
- && obj.data !== undefined;
39
+ return isDataViewMessageType(obj?.type);
40
40
  }
41
41
  }
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtZXZlbnQtbWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy90eXBlZC1ldmVudC1tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxpQkFBaUI7SUFRNUIsWUFDUyxJQUFPLEVBQ1AsSUFBUTtRQURSLFNBQUksR0FBSixJQUFJLENBQUc7UUFDUCxTQUFJLEdBQUosSUFBSSxDQUFJO0lBQ2QsQ0FBQztJQVRKLHNFQUFzRTtJQUMvRCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQVE7UUFDN0IsT0FBUSxHQUE0QixDQUFDLElBQUksS0FBSyxTQUFTO2VBQ2pELEdBQTRCLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQTtJQUN2RCxDQUFDO0NBT0Y7QUFFRCxNQUFNLE9BQU8scUJBQXFCO0lBRWhDLFlBQ1MsT0FBNkIsRUFDN0IsbUJBQXdCLEVBQUUsRUFDMUIsVUFBa0IsSUFBSTtRQUZ0QixZQUFPLEdBQVAsT0FBTyxDQUFzQjtRQUM3QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQVU7UUFDMUIsWUFBTyxHQUFQLE9BQU8sQ0FBZTtJQUUvQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQ1MsU0FBYztRQUFkLGNBQVMsR0FBVCxTQUFTLENBQUs7SUFFdkIsQ0FBQztDQUNGO0FBSUQsTUFBTSxPQUFPLGVBQXdFLFNBQVEsaUJBQXlDO0lBc0JwSSxZQUNTLElBQXlCLEVBQ3pCLElBQU87UUFFZCxLQUFLLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBSFgsU0FBSSxHQUFKLElBQUksQ0FBcUI7UUFDekIsU0FBSSxHQUFKLElBQUksQ0FBRztJQUdoQixDQUFDO0lBekJNLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBSSxJQUE4QjtRQUM5RCxPQUFPLElBQUksZUFBZSxDQUN4QixnQkFBZ0IsRUFDaEIsSUFBSSxDQUNMLENBQUE7SUFDSCxDQUFDO0lBRU0sTUFBTSxDQUFDLFNBQVMsQ0FBSSxTQUErQjtRQUN4RCxPQUFPLElBQUksZUFBZSxDQUN4QixvQkFBb0IsRUFDcEIsU0FBUyxDQUNWLENBQUE7SUFDSCxDQUFDO0lBRUQsc0VBQXNFO0lBQy9ELE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBUTtRQUM3QixPQUFRLEdBQTRCLENBQUMsSUFBSSxLQUFLLFNBQVM7ZUFDakQsR0FBNEIsQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFBO0lBQ3ZELENBQUM7Q0FTRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnN9IGZyb20gJy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zJztcblxuZXhwb3J0IGNsYXNzIFR5cGVkRXZlbnRNZXNzYWdlPFQsIEQ+IHtcblxuICAvLyB0eXBlIHByZWRpY2F0ZSB0byBjaGVjayB3ZWF0aGVyIGFuIG9iamVjdCBpcyBhIERhdGFWaWV3TWVzc2FnZSB0eXBlXG4gIHB1YmxpYyBzdGF0aWMgaXNPZlR5cGUob2JqOiBhbnkpOiBvYmogaXMgVHlwZWRFdmVudE1lc3NhZ2U8YW55LGFueT4ge1xuICAgIHJldHVybiAob2JqIGFzIERhdGFWaWV3TWVzc2FnZTxhbnk+KS50eXBlICE9PSB1bmRlZmluZWRcbiAgICAgICYmIChvYmogYXMgRGF0YVZpZXdNZXNzYWdlPGFueT4pLmRhdGEgIT09IHVuZGVmaW5lZFxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHR5cGU6IFQsXG4gICAgcHVibGljIGRhdGE/OiBEXG4gICkge31cblxufVxuXG5leHBvcnQgY2xhc3MgRGF0YVZpZXdTZWxlY3Rpb25Jbml0PFQ+IHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgb3B0aW9uczogRWxkZXJEYXRhVmlld09wdGlvbnMsXG4gICAgcHVibGljIGluaXRpYWxTZWxlY3Rpb246IFRbXSA9IFtdLFxuICAgIHB1YmxpYyBpZEZpZWxkOiBzdHJpbmcgPSAnaWQnXG4gICkge1xuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBEYXRhVmlld1NlbGVjdGlvbjxUPiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBzZWxlY3Rpb246IFRbXVxuICApIHtcbiAgfVxufVxuXG5leHBvcnQgdHlwZSBEYXRhVmlld01lc3NhZ2VUeXBlID0gJ1NFTEVDVElPTl9JTklUJyB8ICdTRUxFQ1RJT05fU0VMRUNURUQnXG5cbmV4cG9ydCBjbGFzcyBEYXRhVmlld01lc3NhZ2U8VCwgRCA9IERhdGFWaWV3U2VsZWN0aW9uSW5pdDxUPiB8IERhdGFWaWV3U2VsZWN0aW9uPFQ+PiBleHRlbmRzIFR5cGVkRXZlbnRNZXNzYWdlPERhdGFWaWV3TWVzc2FnZVR5cGUsIEQ+IHtcblxuICBwdWJsaWMgc3RhdGljIGluaXRpYWxTZWxlY3Rpb248RD4oaW5pdDogRGF0YVZpZXdTZWxlY3Rpb25Jbml0PEQ+KTogRGF0YVZpZXdNZXNzYWdlPEQ+IHtcbiAgICByZXR1cm4gbmV3IERhdGFWaWV3TWVzc2FnZShcbiAgICAgICdTRUxFQ1RJT05fSU5JVCcsXG4gICAgICBpbml0XG4gICAgKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBzZWxlY3Rpb248RD4oc2VsZWN0aW9uOiBEYXRhVmlld1NlbGVjdGlvbjxEPik6IERhdGFWaWV3TWVzc2FnZTxEPiB7XG4gICAgcmV0dXJuIG5ldyBEYXRhVmlld01lc3NhZ2UoXG4gICAgICAnU0VMRUNUSU9OX1NFTEVDVEVEJyxcbiAgICAgIHNlbGVjdGlvblxuICAgIClcbiAgfVxuXG4gIC8vIHR5cGUgcHJlZGljYXRlIHRvIGNoZWNrIHdlYXRoZXIgYW4gb2JqZWN0IGlzIGEgRGF0YVZpZXdNZXNzYWdlIHR5cGVcbiAgcHVibGljIHN0YXRpYyBpc09mVHlwZShvYmo6IGFueSk6IG9iaiBpcyBEYXRhVmlld01lc3NhZ2U8YW55LGFueT4ge1xuICAgIHJldHVybiAob2JqIGFzIERhdGFWaWV3TWVzc2FnZTxhbnk+KS50eXBlICE9PSB1bmRlZmluZWRcbiAgICAgICYmIChvYmogYXMgRGF0YVZpZXdNZXNzYWdlPGFueT4pLmRhdGEgIT09IHVuZGVmaW5lZFxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHR5cGU6IERhdGFWaWV3TWVzc2FnZVR5cGUsXG4gICAgcHVibGljIGRhdGE6IERcbiAgKSB7XG4gICAgc3VwZXIodHlwZSwgZGF0YSk7XG4gIH1cblxufVxuIl19
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZWQtZXZlbnQtbWVzc2FnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbXBvbmVudHMvaWZyYW1lcy90eXBlZC1ldmVudC1tZXNzYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxpQkFBaUI7SUFPNUIsWUFDUyxJQUFPLEVBQ1AsSUFBUTtRQURSLFNBQUksR0FBSixJQUFJLENBQUc7UUFDUCxTQUFJLEdBQUosSUFBSSxDQUFJO0lBQ2QsQ0FBQztJQVJKLHNFQUFzRTtJQUMvRCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQVE7UUFDN0IsT0FBUSxHQUFtQyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUE7SUFDaEUsQ0FBQztDQU9GO0FBRUQsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQyxZQUNTLE9BQTZCLEVBQzdCLG1CQUF3QixFQUFFLEVBQzFCLFVBQWtCLElBQUk7UUFGdEIsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7UUFDN0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFVO1FBQzFCLFlBQU8sR0FBUCxPQUFPLENBQWU7SUFFL0IsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLGlCQUFpQjtJQUM1QixZQUNTLFNBQWM7UUFBZCxjQUFTLEdBQVQsU0FBUyxDQUFLO0lBRXZCLENBQUM7Q0FDRjtBQUVELE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLENBQUMsZ0JBQWdCLEVBQUUsb0JBQW9CLENBQVUsQ0FBQztBQUUzRixNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLENBQU0sRUFBNEIsRUFBRSxDQUFDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUVqSCxNQUFNLE9BQU8sZUFBd0UsU0FBUSxpQkFBeUM7SUFxQnBJLFlBQ1MsSUFBeUIsRUFDekIsSUFBTztRQUVkLEtBQUssQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFIWCxTQUFJLEdBQUosSUFBSSxDQUFxQjtRQUN6QixTQUFJLEdBQUosSUFBSSxDQUFHO0lBR2hCLENBQUM7SUF4Qk0sTUFBTSxDQUFDLGdCQUFnQixDQUFJLElBQThCO1FBQzlELE9BQU8sSUFBSSxlQUFlLENBQ3hCLGdCQUFnQixFQUNoQixJQUFJLENBQ0wsQ0FBQTtJQUNILENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFJLFNBQStCO1FBQ3hELE9BQU8sSUFBSSxlQUFlLENBQ3hCLG9CQUFvQixFQUNwQixTQUFTLENBQ1YsQ0FBQTtJQUNILENBQUM7SUFFRCxzRUFBc0U7SUFDL0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFRO1FBQzdCLE9BQU8scUJBQXFCLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7Q0FTRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RWxkZXJEYXRhVmlld09wdGlvbnN9IGZyb20gJy4uL2RhdGEtdmlldy9iYXNlL2VsZGVyLWRhdGEtdmlldy1vcHRpb25zJztcblxuZXhwb3J0IGNsYXNzIFR5cGVkRXZlbnRNZXNzYWdlPFQsIEQ+IHtcblxuICAvLyB0eXBlIHByZWRpY2F0ZSB0byBjaGVjayB3ZWF0aGVyIGFuIG9iamVjdCBpcyBhIERhdGFWaWV3TWVzc2FnZSB0eXBlXG4gIHB1YmxpYyBzdGF0aWMgaXNPZlR5cGUob2JqOiBhbnkpOiBvYmogaXMgVHlwZWRFdmVudE1lc3NhZ2U8YW55LGFueT4ge1xuICAgIHJldHVybiAob2JqIGFzIFR5cGVkRXZlbnRNZXNzYWdlPGFueSwgYW55PikudHlwZSAhPT0gdW5kZWZpbmVkXG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgdHlwZTogVCxcbiAgICBwdWJsaWMgZGF0YT86IERcbiAgKSB7fVxuXG59XG5cbmV4cG9ydCBjbGFzcyBEYXRhVmlld1NlbGVjdGlvbkluaXQ8VD4ge1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBvcHRpb25zOiBFbGRlckRhdGFWaWV3T3B0aW9ucyxcbiAgICBwdWJsaWMgaW5pdGlhbFNlbGVjdGlvbjogVFtdID0gW10sXG4gICAgcHVibGljIGlkRmllbGQ6IHN0cmluZyA9ICdpZCdcbiAgKSB7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIERhdGFWaWV3U2VsZWN0aW9uPFQ+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHNlbGVjdGlvbjogVFtdXG4gICkge1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBEYXRhVmlld01lc3NhZ2VUeXBlVmFsdWVzID0gW1wiU0VMRUNUSU9OX0lOSVRcIiwgXCJTRUxFQ1RJT05fU0VMRUNURURcIl0gYXMgY29uc3Q7XG5leHBvcnQgdHlwZSBEYXRhVmlld01lc3NhZ2VUeXBlID0gKHR5cGVvZiBEYXRhVmlld01lc3NhZ2VUeXBlVmFsdWVzKVtudW1iZXJdO1xuZXhwb3J0IGNvbnN0IGlzRGF0YVZpZXdNZXNzYWdlVHlwZSA9ICh4OiBhbnkpOiB4IGlzIERhdGFWaWV3TWVzc2FnZVR5cGUgPT4gRGF0YVZpZXdNZXNzYWdlVHlwZVZhbHVlcy5pbmNsdWRlcyh4KTtcblxuZXhwb3J0IGNsYXNzIERhdGFWaWV3TWVzc2FnZTxULCBEID0gRGF0YVZpZXdTZWxlY3Rpb25Jbml0PFQ+IHwgRGF0YVZpZXdTZWxlY3Rpb248VD4+IGV4dGVuZHMgVHlwZWRFdmVudE1lc3NhZ2U8RGF0YVZpZXdNZXNzYWdlVHlwZSwgRD4ge1xuXG4gIHB1YmxpYyBzdGF0aWMgaW5pdGlhbFNlbGVjdGlvbjxEPihpbml0OiBEYXRhVmlld1NlbGVjdGlvbkluaXQ8RD4pOiBEYXRhVmlld01lc3NhZ2U8RD4ge1xuICAgIHJldHVybiBuZXcgRGF0YVZpZXdNZXNzYWdlKFxuICAgICAgJ1NFTEVDVElPTl9JTklUJyxcbiAgICAgIGluaXRcbiAgICApXG4gIH1cblxuICBwdWJsaWMgc3RhdGljIHNlbGVjdGlvbjxEPihzZWxlY3Rpb246IERhdGFWaWV3U2VsZWN0aW9uPEQ+KTogRGF0YVZpZXdNZXNzYWdlPEQ+IHtcbiAgICByZXR1cm4gbmV3IERhdGFWaWV3TWVzc2FnZShcbiAgICAgICdTRUxFQ1RJT05fU0VMRUNURUQnLFxuICAgICAgc2VsZWN0aW9uXG4gICAgKVxuICB9XG5cbiAgLy8gdHlwZSBwcmVkaWNhdGUgdG8gY2hlY2sgd2VhdGhlciBhbiBvYmplY3QgaXMgYSBEYXRhVmlld01lc3NhZ2UgdHlwZVxuICBwdWJsaWMgc3RhdGljIGlzT2ZUeXBlKG9iajogYW55KTogb2JqIGlzIERhdGFWaWV3TWVzc2FnZTxhbnksYW55PiB7XG4gICAgcmV0dXJuIGlzRGF0YVZpZXdNZXNzYWdlVHlwZShvYmo/LnR5cGUpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHR5cGU6IERhdGFWaWV3TWVzc2FnZVR5cGUsXG4gICAgcHVibGljIGRhdGE6IERcbiAgKSB7XG4gICAgc3VwZXIodHlwZSwgZGF0YSk7XG4gIH1cblxufVxuIl19