@skyux/data-manager 6.0.0-beta.4 → 6.0.0-beta.7

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.
@@ -145,4 +145,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
145
145
  type: Component,
146
146
  args: [{ selector: 'sky-data-manager-column-picker', providers: [SkyDataManagerService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-modal>\n <sky-modal-header>\n {{ 'skyux_data_manager_column_picker_title' | skyLibResources }}\n </sky-modal-header>\n <sky-modal-content class=\"sky-data-manager-column-picker-content\">\n <sky-data-manager>\n <sky-data-manager-toolbar> </sky-data-manager-toolbar>\n\n <sky-data-view [viewId]=\"viewConfig.id\">\n <sky-repeater expandMode=\"none\">\n <sky-repeater-item\n *ngFor=\"let column of displayedColumnData\"\n [selectable]=\"true\"\n [(isSelected)]=\"column.isSelected\"\n >\n <sky-repeater-item-title>\n {{ column.label }}\n </sky-repeater-item-title>\n <sky-repeater-item-content>\n {{ column.description }}\n </sky-repeater-item-content>\n </sky-repeater-item>\n </sky-repeater>\n </sky-data-view>\n </sky-data-manager>\n </sky-modal-content>\n <sky-modal-footer>\n <button\n sky-cmp-id=\"apply-changes\"\n class=\"sky-btn sky-btn-primary\"\n (click)=\"applyChanges()\"\n >\n {{ 'skyux_data_manager_apply_changes_button_title' | skyLibResources }}\n </button>\n <button\n sky-cmp-id=\"cancel\"\n class=\"sky-btn sky-btn-link\"\n (click)=\"cancelChanges()\"\n >\n {{ 'skyux_data_manager_cancel_button_title' | skyLibResources }}\n </button>\n </sky-modal-footer>\n</sky-modal>\n", styles: [".sky-data-manager-column-picker-content sky-repeater-item-content{margin-top:5px}\n"] }]
147
147
  }], ctorParameters: function () { return [{ type: i1.SkyDataManagerColumnPickerContext }, { type: i2.SkyDataManagerService }, { type: i3.SkyModalInstance }]; } });
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsR0FHVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDNUcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFHbkUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7Ozs7O0FBU3pGOztHQUVHO0FBUUgsTUFBTSxPQUFPLG1DQUFtQztJQWlDOUMsWUFDUyxPQUEwQyxFQUMxQyxrQkFBeUMsRUFDekMsUUFBMEI7UUFGMUIsWUFBTyxHQUFQLE9BQU8sQ0FBbUM7UUFDMUMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF1QjtRQUN6QyxhQUFRLEdBQVIsUUFBUSxDQUFrQjtRQWhCNUIsZUFBVSxHQUFzQjtZQUNyQyxFQUFFLEVBQUUsY0FBYztZQUNsQixJQUFJLEVBQUUsZUFBZTtZQUNyQixhQUFhLEVBQUUsSUFBSTtZQUNuQixnQkFBZ0IsRUFBRSxLQUFLO1lBQ3ZCLHlCQUF5QixFQUFFLElBQUk7WUFDL0IsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQzNDLGVBQWUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDMUMsQ0FBQztRQUVNLGVBQVUsR0FBRyxJQUFJLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3pDLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQU1wQyxDQUFDO0lBcENKLElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVELElBQVcsU0FBUyxDQUFDLEtBQTBCO1FBQzdDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUMzQyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQ3RELENBQUM7UUFFRixJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsRUFBRTtZQUMxQixJQUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE1BQU0sQ0FDeEQsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQ3hCLENBQUM7U0FDSDtJQUNILENBQUM7SUF1Qk0sUUFBUTtRQUNiLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUM7WUFDdEMsWUFBWSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUNoQyxpQkFBaUIsRUFBRSxFQUFFO1lBQ3JCLGdCQUFnQixFQUFFLElBQUksQ0FBQyxTQUFTO1NBQ2pDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRXRELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7UUFFN0MsSUFBSSxDQUFDLGtCQUFrQjthQUNwQixtQkFBbUIsQ0FBQyxjQUFjLENBQUM7YUFDbkMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7YUFDcEMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFDekIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVNLGFBQWEsQ0FBQyxPQUFpQjtRQUNwQyxJQUFJLGVBQWUsR0FBRyxPQUFPLENBQUM7UUFDOUIsTUFBTSxVQUFVLEdBQ2QsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUU3RCxJQUFJLFVBQVUsRUFBRTtZQUNkLGVBQWUsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ3hDLEtBQUssTUFBTSxRQUFRLElBQUksSUFBSSxFQUFFO29CQUMzQixJQUNFLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsUUFBUSxDQUFDO3dCQUNwRCxDQUFDLFFBQVEsS0FBSyxPQUFPLElBQUksUUFBUSxLQUFLLGFBQWEsQ0FBQyxFQUNwRDt3QkFDQSxNQUFNLFlBQVksR0FDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQzt3QkFDakQsSUFBSSxZQUFZLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTs0QkFDekQsT0FBTyxJQUFJLENBQUM7eUJBQ2I7cUJBQ0Y7aUJBQ0Y7Z0JBRUQsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxlQUFlLENBQUM7SUFDekIsQ0FBQztJQUVNLFNBQVM7UUFDZCxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTSxhQUFhO1FBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVNLFVBQVUsQ0FBQyxFQUFVO1FBQzFCLE9BQU8sQ0FDTCxJQUFJLENBQUMsT0FBTyxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUMxRSxDQUFDO0lBQ0osQ0FBQztJQUVNLFlBQVk7UUFDakIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQ2hCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FDdkUsQ0FBQztJQUNKLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQztRQUNwRCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLENBQUM7UUFDekQsSUFBSSxzQkFBc0IsR0FBYSxFQUFFLENBQUM7UUFDMUMsTUFBTSx1QkFBdUIsR0FBYSxFQUFFLENBQUM7UUFFN0MsS0FBSyxNQUFNLFlBQVksSUFBSSxnQkFBZ0IsRUFBRTtZQUMzQyxnRUFBZ0U7WUFDaEUsTUFBTSxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUMzRCxNQUFNLGVBQWUsR0FBVztnQkFDOUIsZUFBZSxFQUFFLFlBQVksQ0FBQyxlQUFlO2dCQUM3QyxFQUFFLEVBQUUsWUFBWSxDQUFDLEVBQUU7Z0JBQ25CLEtBQUssRUFBRSxZQUFZLENBQUMsS0FBSztnQkFDekIsV0FBVyxFQUFFLFlBQVksQ0FBQyxXQUFXO2dCQUNyQyxVQUFVLEVBQUUsUUFBUSxLQUFLLENBQUMsQ0FBQzthQUM1QixDQUFDO1lBRUYsa0dBQWtHO1lBQ2xHLHdFQUF3RTtZQUN4RSxJQUNFLElBQUksQ0FBQyxPQUFPLENBQUMsd0JBQXdCO2dCQUNyQyxzQ0FBc0MsQ0FBQyx3QkFBd0IsRUFDL0Q7Z0JBQ0EsSUFBSSxlQUFlLENBQUMsVUFBVSxFQUFFO29CQUM5QixzQkFBc0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxlQUFlLENBQUM7aUJBQ3BEO3FCQUFNO29CQUNMLHVCQUF1QixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztpQkFDL0M7YUFDRjtpQkFBTTtnQkFDTCxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7YUFDOUM7U0FDRjtRQUVELHlGQUF5RjtRQUN6RixxREFBcUQ7UUFDckQsSUFDRSxJQUFJLENBQUMsT0FBTyxDQUFDLHdCQUF3QjtZQUNyQyxzQ0FBc0MsQ0FBQyx3QkFBd0IsRUFDL0Q7WUFDQSx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUNyQyxDQUFDO1lBQ0Ysc0JBQXNCLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxDQUNwRCx1QkFBdUIsQ0FDeEIsQ0FBQztTQUNIO1FBRUQsT0FBTyxzQkFBc0IsQ0FBQztJQUNoQyxDQUFDOztnSUFoS1UsbUNBQW1DO29IQUFuQyxtQ0FBbUMseURBSG5DLENBQUMscUJBQXFCLENBQUMsMEJDakNwQyxxNUNBMkNBOzJGRFBhLG1DQUFtQztrQkFQL0MsU0FBUzsrQkFDRSxnQ0FBZ0MsYUFHL0IsQ0FBQyxxQkFBcUIsQ0FBQyxtQkFDakIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreU1vZGFsSW5zdGFuY2UgfSBmcm9tICdAc2t5dXgvbW9kYWxzJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9kYXRhLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlck9wdGlvbiB9IGZyb20gJy4uL21vZGVscy9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1vcHRpb24nO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3kgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXItc29ydC1zdHJhdGVneSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclN0YXRlIH0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtbWFuYWdlci1zdGF0ZSc7XG5pbXBvcnQgeyBTa3lEYXRhVmlld0NvbmZpZyB9IGZyb20gJy4uL21vZGVscy9kYXRhLXZpZXctY29uZmlnJztcblxuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0IH0gZnJvbSAnLi9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1jb250ZXh0JztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuaW50ZXJmYWNlIENvbHVtbiBleHRlbmRzIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyT3B0aW9uIHtcbiAgaXNTZWxlY3RlZDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWRhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbU2t5RGF0YU1hbmFnZXJTZXJ2aWNlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICBwdWJsaWMgZ2V0IGRhdGFTdGF0ZSgpOiBTa3lEYXRhTWFuYWdlclN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVN0YXRlO1xuICB9XG5cbiAgcHVibGljIHNldCBkYXRhU3RhdGUodmFsdWU6IFNreURhdGFNYW5hZ2VyU3RhdGUpIHtcbiAgICB0aGlzLl9kYXRhU3RhdGUgPSB2YWx1ZTtcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbkRhdGEgPSB0aGlzLnNlYXJjaENvbHVtbnMoXG4gICAgICB0aGlzLmNvbHVtbkRhdGEuZmlsdGVyKChjb2wpID0+ICFjb2wuYWx3YXlzRGlzcGxheWVkKVxuICAgICk7XG5cbiAgICBpZiAodmFsdWUub25seVNob3dTZWxlY3RlZCkge1xuICAgICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5EYXRhID0gdGhpcy5kaXNwbGF5ZWRDb2x1bW5EYXRhLmZpbHRlcihcbiAgICAgICAgKGNvbCkgPT4gY29sLmlzU2VsZWN0ZWRcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNvbHVtbkRhdGE6IENvbHVtbltdO1xuICBwdWJsaWMgZGlzcGxheWVkQ29sdW1uRGF0YTogQ29sdW1uW107XG4gIHB1YmxpYyB2aWV3Q29uZmlnOiBTa3lEYXRhVmlld0NvbmZpZyA9IHtcbiAgICBpZDogJ2NvbHVtblBpY2tlcicsXG4gICAgbmFtZTogJ0NvbHVtbiBQaWNrZXInLFxuICAgIHNlYXJjaEVuYWJsZWQ6IHRydWUsXG4gICAgc2VhcmNoRXhwYW5kTW9kZTogJ2ZpdCcsXG4gICAgbXVsdGlzZWxlY3RUb29sYmFyRW5hYmxlZDogdHJ1ZSxcbiAgICBvblNlbGVjdEFsbENsaWNrOiB0aGlzLnNlbGVjdEFsbC5iaW5kKHRoaXMpLFxuICAgIG9uQ2xlYXJBbGxDbGljazogdGhpcy5jbGVhckFsbC5iaW5kKHRoaXMpLFxuICB9O1xuXG4gIHByaXZhdGUgX2RhdGFTdGF0ZSA9IG5ldyBTa3lEYXRhTWFuYWdlclN0YXRlKHt9KTtcbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGNvbnRleHQ6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dCxcbiAgICBwdWJsaWMgZGF0YU1hbmFnZXJTZXJ2aWNlOiBTa3lEYXRhTWFuYWdlclNlcnZpY2UsXG4gICAgcHVibGljIGluc3RhbmNlOiBTa3lNb2RhbEluc3RhbmNlXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuaW5pdERhdGFNYW5hZ2VyKHtcbiAgICAgIGFjdGl2ZVZpZXdJZDogdGhpcy52aWV3Q29uZmlnLmlkLFxuICAgICAgZGF0YU1hbmFnZXJDb25maWc6IHt9LFxuICAgICAgZGVmYXVsdERhdGFTdGF0ZTogdGhpcy5kYXRhU3RhdGUsXG4gICAgfSk7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuaW5pdERhdGFWaWV3KHRoaXMudmlld0NvbmZpZyk7XG5cbiAgICB0aGlzLmNvbHVtbkRhdGEgPSB0aGlzLmZvcm1hdENvbHVtbk9wdGlvbnMoKTtcblxuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVN0YXRlVXBkYXRlcygnY29sdW1uUGlja2VyJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICAgIHRoaXMuZGF0YVN0YXRlID0gc3RhdGU7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoQ29sdW1ucyhjb2x1bW5zOiBDb2x1bW5bXSk6IENvbHVtbltdIHtcbiAgICBsZXQgc2VhcmNoZWRDb2x1bW5zID0gY29sdW1ucztcbiAgICBjb25zdCBzZWFyY2hUZXh0ID1cbiAgICAgIHRoaXMuZGF0YVN0YXRlICYmIHRoaXMuZGF0YVN0YXRlLnNlYXJjaFRleHQ/LnRvVXBwZXJDYXNlKCk7XG5cbiAgICBpZiAoc2VhcmNoVGV4dCkge1xuICAgICAgc2VhcmNoZWRDb2x1bW5zID0gY29sdW1ucy5maWx0ZXIoKGl0ZW0pID0+IHtcbiAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBpdGVtKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGl0ZW0sIHByb3BlcnR5KSAmJlxuICAgICAgICAgICAgKHByb3BlcnR5ID09PSAnbGFiZWwnIHx8IHByb3BlcnR5ID09PSAnZGVzY3JpcHRpb24nKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgcHJvcGVydHlUZXh0OiBzdHJpbmcgPVxuICAgICAgICAgICAgICBpdGVtW3Byb3BlcnR5XSAmJiBpdGVtW3Byb3BlcnR5XS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICAgICAgaWYgKHByb3BlcnR5VGV4dCAmJiBwcm9wZXJ0eVRleHQuaW5kZXhPZihzZWFyY2hUZXh0KSA+IC0xKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gc2VhcmNoZWRDb2x1bW5zO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbkRhdGEuZm9yRWFjaCgoY29sdW1uKSA9PiAoY29sdW1uLmlzU2VsZWN0ZWQgPSB0cnVlKSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJBbGwoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5EYXRhLmZvckVhY2goKGNvbHVtbikgPT4gKGNvbHVtbi5pc1NlbGVjdGVkID0gZmFsc2UpKTtcbiAgfVxuXG4gIHB1YmxpYyBjYW5jZWxDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuaW5zdGFuY2UuY2FuY2VsKCk7XG4gIH1cblxuICBwdWJsaWMgaXNTZWxlY3RlZChpZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuY29udGV4dC5kaXNwbGF5ZWRDb2x1bW5JZHMuZmluZEluZGV4KChjb2xJZCkgPT4gY29sSWQgPT09IGlkKSAhPT0gLTFcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGFwcGx5Q2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmluc3RhbmNlLnNhdmUoXG4gICAgICB0aGlzLmNvbHVtbkRhdGEuZmlsdGVyKChjb2wpID0+IGNvbC5pc1NlbGVjdGVkIHx8IGNvbC5hbHdheXNEaXNwbGF5ZWQpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0Q29sdW1uT3B0aW9ucygpOiBDb2x1bW5bXSB7XG4gICAgY29uc3QgYWxsQ29sdW1uT3B0aW9ucyA9IHRoaXMuY29udGV4dC5jb2x1bW5PcHRpb25zO1xuICAgIGNvbnN0IHZpc2libGVDb2x1bW5JZHMgPSB0aGlzLmNvbnRleHQuZGlzcGxheWVkQ29sdW1uSWRzO1xuICAgIGxldCBmb3JtYXR0ZWRDb2x1bW5PcHRpb25zOiBDb2x1bW5bXSA9IFtdO1xuICAgIGNvbnN0IHVuc2VsZWN0ZWRDb2x1bW5PcHRpb25zOiBDb2x1bW5bXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBjb2x1bW5PcHRpb24gb2YgYWxsQ29sdW1uT3B0aW9ucykge1xuICAgICAgLy8gZm9ybWF0IHRoZSBjb2x1bW4gd2l0aCB0aGUgcHJvcGVydGllcyB0aGUgY29sdW1uIHBpY2tlciBuZWVkc1xuICAgICAgY29uc3QgY29sSW5kZXggPSB2aXNpYmxlQ29sdW1uSWRzLmluZGV4T2YoY29sdW1uT3B0aW9uLmlkKTtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZENvbHVtbjogQ29sdW1uID0ge1xuICAgICAgICBhbHdheXNEaXNwbGF5ZWQ6IGNvbHVtbk9wdGlvbi5hbHdheXNEaXNwbGF5ZWQsXG4gICAgICAgIGlkOiBjb2x1bW5PcHRpb24uaWQsXG4gICAgICAgIGxhYmVsOiBjb2x1bW5PcHRpb24ubGFiZWwsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBjb2x1bW5PcHRpb24uZGVzY3JpcHRpb24sXG4gICAgICAgIGlzU2VsZWN0ZWQ6IGNvbEluZGV4ICE9PSAtMSxcbiAgICAgIH07XG5cbiAgICAgIC8vIGlmIGNvbHVtbiBwaWNrZXIgc29ydGluZyBpcyBjdXJyZW50bHkgZW5hYmxlZCBzb3J0IGNvbHVtbnMgYnkgb3JkZXIgZGlzcGxheWVkIHRoZW4gYWxwaGFiZXRpY2FsXG4gICAgICAvLyBlbHNlIGRpc3BsYXkgY29sdW1uIGluIG9yZGVyIHRoZXkgd2VyZSBzcGVjaWZpZWQgaW4gdGhlIGNvbHVtbk9wdGlvbnNcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5jb250ZXh0LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSA9PT1cbiAgICAgICAgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3kuU2VsZWN0ZWRUaGVuQWxwaGFiZXRpY2FsXG4gICAgICApIHtcbiAgICAgICAgaWYgKGZvcm1hdHRlZENvbHVtbi5pc1NlbGVjdGVkKSB7XG4gICAgICAgICAgZm9ybWF0dGVkQ29sdW1uT3B0aW9uc1tjb2xJbmRleF0gPSBmb3JtYXR0ZWRDb2x1bW47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdW5zZWxlY3RlZENvbHVtbk9wdGlvbnMucHVzaChmb3JtYXR0ZWRDb2x1bW4pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBmb3JtYXR0ZWRDb2x1bW5PcHRpb25zLnB1c2goZm9ybWF0dGVkQ29sdW1uKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBpZiBjb2x1bW4gcGlja2VyIHNvcnRpbmcgaXMgZW5hYmxlZCwgc29ydCB0aGUgY29sdW1ucyB0aGF0IGFyZSBub3QgY3VycmVudGx5IGRpc3BsYXllZFxuICAgIC8vIGFuZCBhZGQgdGhlbSBhZnRlciB0aGUgY3VycmVudGx5IGRpc3BsYXllZCBvcHRpb25zXG4gICAgaWYgKFxuICAgICAgdGhpcy5jb250ZXh0LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSA9PT1cbiAgICAgIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyU29ydFN0cmF0ZWd5LlNlbGVjdGVkVGhlbkFscGhhYmV0aWNhbFxuICAgICkge1xuICAgICAgdW5zZWxlY3RlZENvbHVtbk9wdGlvbnMuc29ydCgoY29sMSwgY29sMikgPT5cbiAgICAgICAgY29sMS5sYWJlbC5sb2NhbGVDb21wYXJlKGNvbDIubGFiZWwpXG4gICAgICApO1xuICAgICAgZm9ybWF0dGVkQ29sdW1uT3B0aW9ucyA9IGZvcm1hdHRlZENvbHVtbk9wdGlvbnMuY29uY2F0KFxuICAgICAgICB1bnNlbGVjdGVkQ29sdW1uT3B0aW9uc1xuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm9ybWF0dGVkQ29sdW1uT3B0aW9ucztcbiAgfVxufVxuIiwiPHNreS1tb2RhbD5cbiAgPHNreS1tb2RhbC1oZWFkZXI+XG4gICAge3sgJ3NreXV4X2RhdGFfbWFuYWdlcl9jb2x1bW5fcGlja2VyX3RpdGxlJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICA8L3NreS1tb2RhbC1oZWFkZXI+XG4gIDxza3ktbW9kYWwtY29udGVudCBjbGFzcz1cInNreS1kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1jb250ZW50XCI+XG4gICAgPHNreS1kYXRhLW1hbmFnZXI+XG4gICAgICA8c2t5LWRhdGEtbWFuYWdlci10b29sYmFyPiA8L3NreS1kYXRhLW1hbmFnZXItdG9vbGJhcj5cblxuICAgICAgPHNreS1kYXRhLXZpZXcgW3ZpZXdJZF09XCJ2aWV3Q29uZmlnLmlkXCI+XG4gICAgICAgIDxza3ktcmVwZWF0ZXIgZXhwYW5kTW9kZT1cIm5vbmVcIj5cbiAgICAgICAgICA8c2t5LXJlcGVhdGVyLWl0ZW1cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgZGlzcGxheWVkQ29sdW1uRGF0YVwiXG4gICAgICAgICAgICBbc2VsZWN0YWJsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgIFsoaXNTZWxlY3RlZCldPVwiY29sdW1uLmlzU2VsZWN0ZWRcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxza3ktcmVwZWF0ZXItaXRlbS10aXRsZT5cbiAgICAgICAgICAgICAge3sgY29sdW1uLmxhYmVsIH19XG4gICAgICAgICAgICA8L3NreS1yZXBlYXRlci1pdGVtLXRpdGxlPlxuICAgICAgICAgICAgPHNreS1yZXBlYXRlci1pdGVtLWNvbnRlbnQ+XG4gICAgICAgICAgICAgIHt7IGNvbHVtbi5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgPC9za3ktcmVwZWF0ZXItaXRlbS1jb250ZW50PlxuICAgICAgICAgIDwvc2t5LXJlcGVhdGVyLWl0ZW0+XG4gICAgICAgIDwvc2t5LXJlcGVhdGVyPlxuICAgICAgPC9za3ktZGF0YS12aWV3PlxuICAgIDwvc2t5LWRhdGEtbWFuYWdlcj5cbiAgPC9za3ktbW9kYWwtY29udGVudD5cbiAgPHNreS1tb2RhbC1mb290ZXI+XG4gICAgPGJ1dHRvblxuICAgICAgc2t5LWNtcC1pZD1cImFwcGx5LWNoYW5nZXNcIlxuICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tcHJpbWFyeVwiXG4gICAgICAoY2xpY2spPVwiYXBwbHlDaGFuZ2VzKClcIlxuICAgID5cbiAgICAgIHt7ICdza3l1eF9kYXRhX21hbmFnZXJfYXBwbHlfY2hhbmdlc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzIH19XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgc2t5LWNtcC1pZD1cImNhbmNlbFwiXG4gICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rXCJcbiAgICAgIChjbGljayk9XCJjYW5jZWxDaGFuZ2VzKClcIlxuICAgID5cbiAgICAgIHt7ICdza3l1eF9kYXRhX21hbmFnZXJfY2FuY2VsX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9za3ktbW9kYWwtZm9vdGVyPlxuPC9za3ktbW9kYWw+XG4iXX0=
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsR0FHVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEUsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDNUcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFHbkUsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7Ozs7O0FBU3pGOztHQUVHO0FBUUgsTUFBTSxPQUFPLG1DQUFtQztJQWlDOUMsWUFDUyxPQUEwQyxFQUMxQyxrQkFBeUMsRUFDekMsUUFBMEI7UUFGMUIsWUFBTyxHQUFQLE9BQU8sQ0FBbUM7UUFD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QSx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUNyQyxDQUFDO1lBQ0Ysc0JBQXNCLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxDQUNwRCx1QkFBdUIsQ0FDeEIsQ0FBQztTQUNIO1FBRUQsT0FBTyxzQkFBc0IsQ0FBQztJQUNoQyxDQUFDOztnSUFoS1UsbUNBQW1DO29IQUFuQyxtQ0FBbUMseURBSG5DLENBQUMscUJBQXFCLENBQUMsMEJDakNwQyxxNUNBMkNBOzJGRFBhLG1DQUFtQztrQkFQL0MsU0FBUzsrQkFDRSxnQ0FBZ0MsYUFHL0IsQ0FBQyxxQkFBcUIsQ0FBQyxtQkFDakIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNreU1vZGFsSW5zdGFuY2UgfSBmcm9tICdAc2t5dXgvbW9kYWxzJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9kYXRhLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlck9wdGlvbiB9IGZyb20gJy4uL21vZGVscy9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1vcHRpb24nO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3kgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXItc29ydC1zdHJhdGVneSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclN0YXRlIH0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtbWFuYWdlci1zdGF0ZSc7XG5pbXBvcnQgeyBTa3lEYXRhVmlld0NvbmZpZyB9IGZyb20gJy4uL21vZGVscy9kYXRhLXZpZXctY29uZmlnJztcblxuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0IH0gZnJvbSAnLi9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1jb250ZXh0JztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuaW50ZXJmYWNlIENvbHVtbiBleHRlbmRzIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyT3B0aW9uIHtcbiAgaXNTZWxlY3RlZDogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWRhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbU2t5RGF0YU1hbmFnZXJTZXJ2aWNlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICBwdWJsaWMgZ2V0IGRhdGFTdGF0ZSgpOiBTa3lEYXRhTWFuYWdlclN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVN0YXRlO1xuICB9XG5cbiAgcHVibGljIHNldCBkYXRhU3RhdGUodmFsdWU6IFNreURhdGFNYW5hZ2VyU3RhdGUpIHtcbiAgICB0aGlzLl9kYXRhU3RhdGUgPSB2YWx1ZTtcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbkRhdGEgPSB0aGlzLnNlYXJjaENvbHVtbnMoXG4gICAgICB0aGlzLmNvbHVtbkRhdGEuZmlsdGVyKChjb2wpID0+ICFjb2wuYWx3YXlzRGlzcGxheWVkKVxuICAgICk7XG5cbiAgICBpZiAodmFsdWUub25seVNob3dTZWxlY3RlZCkge1xuICAgICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5EYXRhID0gdGhpcy5kaXNwbGF5ZWRDb2x1bW5EYXRhLmZpbHRlcihcbiAgICAgICAgKGNvbCkgPT4gY29sLmlzU2VsZWN0ZWRcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNvbHVtbkRhdGE6IENvbHVtbltdO1xuICBwdWJsaWMgZGlzcGxheWVkQ29sdW1uRGF0YTogQ29sdW1uW107XG4gIHB1YmxpYyB2aWV3Q29uZmlnOiBTa3lEYXRhVmlld0NvbmZpZyA9IHtcbiAgICBpZDogJ2NvbHVtblBpY2tlcicsXG4gICAgbmFtZTogJ0NvbHVtbiBQaWNrZXInLFxuICAgIHNlYXJjaEVuYWJsZWQ6IHRydWUsXG4gICAgc2VhcmNoRXhwYW5kTW9kZTogJ2ZpdCcsXG4gICAgbXVsdGlzZWxlY3RUb29sYmFyRW5hYmxlZDogdHJ1ZSxcbiAgICBvblNlbGVjdEFsbENsaWNrOiB0aGlzLnNlbGVjdEFsbC5iaW5kKHRoaXMpLFxuICAgIG9uQ2xlYXJBbGxDbGljazogdGhpcy5jbGVhckFsbC5iaW5kKHRoaXMpLFxuICB9O1xuXG4gIHByaXZhdGUgX2RhdGFTdGF0ZSA9IG5ldyBTa3lEYXRhTWFuYWdlclN0YXRlKHt9KTtcbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGNvbnRleHQ6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dCxcbiAgICBwdWJsaWMgZGF0YU1hbmFnZXJTZXJ2aWNlOiBTa3lEYXRhTWFuYWdlclNlcnZpY2UsXG4gICAgcHVibGljIGluc3RhbmNlOiBTa3lNb2RhbEluc3RhbmNlXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuaW5pdERhdGFNYW5hZ2VyKHtcbiAgICAgIGFjdGl2ZVZpZXdJZDogdGhpcy52aWV3Q29uZmlnLmlkLFxuICAgICAgZGF0YU1hbmFnZXJDb25maWc6IHt9LFxuICAgICAgZGVmYXVsdERhdGFTdGF0ZTogdGhpcy5kYXRhU3RhdGUsXG4gICAgfSk7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuaW5pdERhdGFWaWV3KHRoaXMudmlld0NvbmZpZyk7XG5cbiAgICB0aGlzLmNvbHVtbkRhdGEgPSB0aGlzLmZvcm1hdENvbHVtbk9wdGlvbnMoKTtcblxuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVN0YXRlVXBkYXRlcygnY29sdW1uUGlja2VyJylcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXRlKSA9PiB7XG4gICAgICAgIHRoaXMuZGF0YVN0YXRlID0gc3RhdGU7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2VhcmNoQ29sdW1ucyhjb2x1bW5zOiBDb2x1bW5bXSk6IENvbHVtbltdIHtcbiAgICBsZXQgc2VhcmNoZWRDb2x1bW5zID0gY29sdW1ucztcbiAgICBjb25zdCBzZWFyY2hUZXh0ID1cbiAgICAgIHRoaXMuZGF0YVN0YXRlICYmIHRoaXMuZGF0YVN0YXRlLnNlYXJjaFRleHQ/LnRvVXBwZXJDYXNlKCk7XG5cbiAgICBpZiAoc2VhcmNoVGV4dCkge1xuICAgICAgc2VhcmNoZWRDb2x1bW5zID0gY29sdW1ucy5maWx0ZXIoKGl0ZW0pID0+IHtcbiAgICAgICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBpdGVtKSB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGl0ZW0sIHByb3BlcnR5KSAmJlxuICAgICAgICAgICAgKHByb3BlcnR5ID09PSAnbGFiZWwnIHx8IHByb3BlcnR5ID09PSAnZGVzY3JpcHRpb24nKVxuICAgICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgcHJvcGVydHlUZXh0OiBzdHJpbmcgPVxuICAgICAgICAgICAgICBpdGVtW3Byb3BlcnR5XSAmJiBpdGVtW3Byb3BlcnR5XS50b1VwcGVyQ2FzZSgpO1xuICAgICAgICAgICAgaWYgKHByb3BlcnR5VGV4dCAmJiBwcm9wZXJ0eVRleHQuaW5kZXhPZihzZWFyY2hUZXh0KSA+IC0xKSB7XG4gICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gc2VhcmNoZWRDb2x1bW5zO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEFsbCgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbkRhdGEuZm9yRWFjaCgoY29sdW1uKSA9PiAoY29sdW1uLmlzU2VsZWN0ZWQgPSB0cnVlKSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJBbGwoKTogdm9pZCB7XG4gICAgdGhpcy5kaXNwbGF5ZWRDb2x1bW5EYXRhLmZvckVhY2goKGNvbHVtbikgPT4gKGNvbHVtbi5pc1NlbGVjdGVkID0gZmFsc2UpKTtcbiAgfVxuXG4gIHB1YmxpYyBjYW5jZWxDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuaW5zdGFuY2UuY2FuY2VsKCk7XG4gIH1cblxuICBwdWJsaWMgaXNTZWxlY3RlZChpZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuY29udGV4dC5kaXNwbGF5ZWRDb2x1bW5JZHMuZmluZEluZGV4KChjb2xJZCkgPT4gY29sSWQgPT09IGlkKSAhPT0gLTFcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGFwcGx5Q2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLmluc3RhbmNlLnNhdmUoXG4gICAgICB0aGlzLmNvbHVtbkRhdGEuZmlsdGVyKChjb2wpID0+IGNvbC5pc1NlbGVjdGVkIHx8IGNvbC5hbHdheXNEaXNwbGF5ZWQpXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZm9ybWF0Q29sdW1uT3B0aW9ucygpOiBDb2x1bW5bXSB7XG4gICAgY29uc3QgYWxsQ29sdW1uT3B0aW9ucyA9IHRoaXMuY29udGV4dC5jb2x1bW5PcHRpb25zO1xuICAgIGNvbnN0IHZpc2libGVDb2x1bW5JZHMgPSB0aGlzLmNvbnRleHQuZGlzcGxheWVkQ29sdW1uSWRzO1xuICAgIGxldCBmb3JtYXR0ZWRDb2x1bW5PcHRpb25zOiBDb2x1bW5bXSA9IFtdO1xuICAgIGNvbnN0IHVuc2VsZWN0ZWRDb2x1bW5PcHRpb25zOiBDb2x1bW5bXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBjb2x1bW5PcHRpb24gb2YgYWxsQ29sdW1uT3B0aW9ucykge1xuICAgICAgLy8gZm9ybWF0IHRoZSBjb2x1bW4gd2l0aCB0aGUgcHJvcGVydGllcyB0aGUgY29sdW1uIHBpY2tlciBuZWVkc1xuICAgICAgY29uc3QgY29sSW5kZXggPSB2aXNpYmxlQ29sdW1uSWRzLmluZGV4T2YoY29sdW1uT3B0aW9uLmlkKTtcbiAgICAgIGNvbnN0IGZvcm1hdHRlZENvbHVtbjogQ29sdW1uID0ge1xuICAgICAgICBhbHdheXNEaXNwbGF5ZWQ6IGNvbHVtbk9wdGlvbi5hbHdheXNEaXNwbGF5ZWQsXG4gICAgICAgIGlkOiBjb2x1bW5PcHRpb24uaWQsXG4gICAgICAgIGxhYmVsOiBjb2x1bW5PcHRpb24ubGFiZWwsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBjb2x1bW5PcHRpb24uZGVzY3JpcHRpb24sXG4gICAgICAgIGlzU2VsZWN0ZWQ6IGNvbEluZGV4ICE9PSAtMSxcbiAgICAgIH07XG5cbiAgICAgIC8vIGlmIGNvbHVtbiBwaWNrZXIgc29ydGluZyBpcyBjdXJyZW50bHkgZW5hYmxlZCBzb3J0IGNvbHVtbnMgYnkgb3JkZXIgZGlzcGxheWVkIHRoZW4gYWxwaGFiZXRpY2FsXG4gICAgICAvLyBlbHNlIGRpc3BsYXkgY29sdW1uIGluIG9yZGVyIHRoZXkgd2VyZSBzcGVjaWZpZWQgaW4gdGhlIGNvbHVtbk9wdGlvbnNcbiAgICAgIGlmIChcbiAgICAgICAgdGhpcy5jb250ZXh0LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSA9PT1cbiAgICAgICAgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3kuU2VsZWN0ZWRUaGVuQWxwaGFiZXRpY2FsXG4gICAgICApIHtcbiAgICAgICAgaWYgKGZvcm1hdHRlZENvbHVtbi5pc1NlbGVjdGVkKSB7XG4gICAgICAgICAgZm9ybWF0dGVkQ29sdW1uT3B0aW9uc1tjb2xJbmRleF0gPSBmb3JtYXR0ZWRDb2x1bW47XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdW5zZWxlY3RlZENvbHVtbk9wdGlvbnMucHVzaChmb3JtYXR0ZWRDb2x1bW4pO1xuICAgICAgICB9XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBmb3JtYXR0ZWRDb2x1bW5PcHRpb25zLnB1c2goZm9ybWF0dGVkQ29sdW1uKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBpZiBjb2x1bW4gcGlja2VyIHNvcnRpbmcgaXMgZW5hYmxlZCwgc29ydCB0aGUgY29sdW1ucyB0aGF0IGFyZSBub3QgY3VycmVudGx5IGRpc3BsYXllZFxuICAgIC8vIGFuZCBhZGQgdGhlbSBhZnRlciB0aGUgY3VycmVudGx5IGRpc3BsYXllZCBvcHRpb25zXG4gICAgaWYgKFxuICAgICAgdGhpcy5jb250ZXh0LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSA9PT1cbiAgICAgIFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyU29ydFN0cmF0ZWd5LlNlbGVjdGVkVGhlbkFscGhhYmV0aWNhbFxuICAgICkge1xuICAgICAgdW5zZWxlY3RlZENvbHVtbk9wdGlvbnMuc29ydCgoY29sMSwgY29sMikgPT5cbiAgICAgICAgY29sMS5sYWJlbC5sb2NhbGVDb21wYXJlKGNvbDIubGFiZWwpXG4gICAgICApO1xuICAgICAgZm9ybWF0dGVkQ29sdW1uT3B0aW9ucyA9IGZvcm1hdHRlZENvbHVtbk9wdGlvbnMuY29uY2F0KFxuICAgICAgICB1bnNlbGVjdGVkQ29sdW1uT3B0aW9uc1xuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZm9ybWF0dGVkQ29sdW1uT3B0aW9ucztcbiAgfVxufVxuIiwiPHNreS1tb2RhbD5cbiAgPHNreS1tb2RhbC1oZWFkZXI+XG4gICAge3sgJ3NreXV4X2RhdGFfbWFuYWdlcl9jb2x1bW5fcGlja2VyX3RpdGxlJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICA8L3NreS1tb2RhbC1oZWFkZXI+XG4gIDxza3ktbW9kYWwtY29udGVudCBjbGFzcz1cInNreS1kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1jb250ZW50XCI+XG4gICAgPHNreS1kYXRhLW1hbmFnZXI+XG4gICAgICA8c2t5LWRhdGEtbWFuYWdlci10b29sYmFyPiA8L3NreS1kYXRhLW1hbmFnZXItdG9vbGJhcj5cblxuICAgICAgPHNreS1kYXRhLXZpZXcgW3ZpZXdJZF09XCJ2aWV3Q29uZmlnLmlkXCI+XG4gICAgICAgIDxza3ktcmVwZWF0ZXIgZXhwYW5kTW9kZT1cIm5vbmVcIj5cbiAgICAgICAgICA8c2t5LXJlcGVhdGVyLWl0ZW1cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgZGlzcGxheWVkQ29sdW1uRGF0YVwiXG4gICAgICAgICAgICBbc2VsZWN0YWJsZV09XCJ0cnVlXCJcbiAgICAgICAgICAgIFsoaXNTZWxlY3RlZCldPVwiY29sdW1uLmlzU2VsZWN0ZWRcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxza3ktcmVwZWF0ZXItaXRlbS10aXRsZT5cbiAgICAgICAgICAgICAge3sgY29sdW1uLmxhYmVsIH19XG4gICAgICAgICAgICA8L3NreS1yZXBlYXRlci1pdGVtLXRpdGxlPlxuICAgICAgICAgICAgPHNreS1yZXBlYXRlci1pdGVtLWNvbnRlbnQ+XG4gICAgICAgICAgICAgIHt7IGNvbHVtbi5kZXNjcmlwdGlvbiB9fVxuICAgICAgICAgICAgPC9za3ktcmVwZWF0ZXItaXRlbS1jb250ZW50PlxuICAgICAgICAgIDwvc2t5LXJlcGVhdGVyLWl0ZW0+XG4gICAgICAgIDwvc2t5LXJlcGVhdGVyPlxuICAgICAgPC9za3ktZGF0YS12aWV3PlxuICAgIDwvc2t5LWRhdGEtbWFuYWdlcj5cbiAgPC9za3ktbW9kYWwtY29udGVudD5cbiAgPHNreS1tb2RhbC1mb290ZXI+XG4gICAgPGJ1dHRvblxuICAgICAgc2t5LWNtcC1pZD1cImFwcGx5LWNoYW5nZXNcIlxuICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tcHJpbWFyeVwiXG4gICAgICAoY2xpY2spPVwiYXBwbHlDaGFuZ2VzKClcIlxuICAgID5cbiAgICAgIHt7ICdza3l1eF9kYXRhX21hbmFnZXJfYXBwbHlfY2hhbmdlc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzIH19XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgc2t5LWNtcC1pZD1cImNhbmNlbFwiXG4gICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rXCJcbiAgICAgIChjbGljayk9XCJjYW5jZWxDaGFuZ2VzKClcIlxuICAgID5cbiAgICAgIHt7ICdza3l1eF9kYXRhX21hbmFnZXJfY2FuY2VsX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9za3ktbW9kYWwtZm9vdGVyPlxuPC9za3ktbW9kYWw+XG4iXX0=
@@ -177,4 +177,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
177
177
  type: Component,
178
178
  args: [{ selector: 'sky-data-manager-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"sky-data-manager-toolbar\">\n <sky-toolbar>\n <sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-primary-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.filterButtonEnabled\">\n <sky-filter-button\n [showButtonText]=\"activeView?.showFilterButtonText\"\n (filterButtonClick)=\"filterButtonClicked()\"\n >\n </sky-filter-button>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.sortEnabled\">\n <sky-sort [showButtonText]=\"activeView?.showSortButtonText\">\n <sky-sort-item\n *ngFor=\"let item of dataManagerConfig?.sortOptions\"\n [active]=\"activeSortOptionId && activeSortOptionId === item.id\"\n (itemSelect)=\"sortSelected(item)\"\n >\n {{ item.label }}\n </sky-sort-item>\n </sky-sort>\n </sky-toolbar-item>\n\n <sky-toolbar-item *ngIf=\"activeView?.columnPickerEnabled\">\n <button\n class=\"sky-btn sky-btn-default sky-col-picker-btn\"\n type=\"button\"\n [attr.aria-label]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n [attr.title]=\"\n 'skyux_data_manager_columns_button_title' | skyLibResources\n \"\n (click)=\"openColumnPicker()\"\n >\n <sky-icon icon=\"columns\"></sky-icon>\n <span class=\"sky-column-selector-action-btn-text\">\n {{ 'skyux_data_manager_columns_button_title' | skyLibResources }}\n </span>\n </button>\n </sky-toolbar-item>\n\n <ng-content select=\"sky-data-manager-toolbar-left-item\"></ng-content>\n\n <sky-toolbar-item *ngIf=\"activeView?.searchEnabled\">\n <sky-search\n [expandMode]=\"activeView?.searchExpandMode\"\n [placeholderText]=\"activeView?.searchPlaceholderText\"\n [searchText]=\"dataState?.searchText\"\n (searchApply)=\"searchApplied($event)\"\n >\n </sky-search>\n </sky-toolbar-item>\n\n <sky-toolbar-view-actions>\n <ng-content select=\"sky-data-manager-toolbar-right-item\"></ng-content>\n <sky-radio-group\n *ngIf=\"activeView && views && views.length > 1\"\n [ariaLabel]=\"'data view switcher'\"\n class=\"sky-switch-icon-group\"\n >\n <sky-radio\n *ngFor=\"let view of views\"\n [attr.name]=\"view.name\"\n [attr.aria-label]=\"view.name\"\n [icon]=\"view.icon\"\n [value]=\"view.id\"\n [label]=\"view.name\"\n [(ngModel)]=\"activeView.id\"\n (change)=\"onViewChange(view.id)\"\n >\n </sky-radio>\n </sky-radio-group>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n <ng-content select=\"sky-data-manager-toolbar-section\"></ng-content>\n </sky-toolbar>\n\n <sky-toolbar\n *ngIf=\"activeView?.multiselectToolbarEnabled\"\n class=\"sky-data-manager-multiselect-toolbar\"\n >\n <sky-toolbar-section>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-select-all-btn\"\n type=\"button\"\n (click)=\"selectAll()\"\n >\n {{ 'skyux_data_manager_select_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <button\n class=\"sky-btn sky-btn-link sky-data-manager-clear-all-btn\"\n type=\"button\"\n (click)=\"clearAll()\"\n >\n {{ 'skyux_data_manager_clear_all_button_title' | skyLibResources }}\n </button>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <sky-checkbox\n [checked]=\"onlyShowSelected\"\n (change)=\"onOnlyShowSelected($event)\"\n >\n <sky-checkbox-label>\n {{\n 'skyux_data_manager_show_selected_option_title' | skyLibResources\n }}\n </sky-checkbox-label>\n </sky-checkbox>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n </sky-toolbar>\n</div>\n", styles: [":host .sky-col-picker-btn .sky-column-selector-action-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-sm) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-col-picker-btn .sky-column-selector-action-btn-text{display:none}@media (min-width: 768px){:host .sky-col-picker-btn .sky-column-selector-action-btn-text{display:inline}}:host-context(.sky-responsive-container-sm) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-md) .sky-col-picker-btn .sky-column-selector-action-btn-text,:host-context(.sky-responsive-container-lg) .sky-col-picker-btn .sky-column-selector-action-btn-text{display:inline}\n"] }]
179
179
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyDataManagerService }, { type: i2.SkyModalService }, { type: i3.SkyDataManagerColumnPickerService }]; } });
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci10b29sYmFyL2RhdGEtbWFuYWdlci10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItdG9vbGJhci9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFxQixlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDckgsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDckgsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPaEU7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyw4QkFBOEI7SUFvRHpDLFlBQ1UsY0FBaUMsRUFDakMsa0JBQXlDLEVBQ3pDLFlBQTZCLEVBQzdCLG1CQUFzRDtRQUh0RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFD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QyxTQUFTLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUNoRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7OzJIQW5NVSw4QkFBOEI7K0dBQTlCLDhCQUE4QixnRUNsQzNDLG9uSUFzSEE7MkZEcEZhLDhCQUE4QjtrQkFOMUMsU0FBUzsrQkFDRSwwQkFBMEIsbUJBR25CLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5Q2hlY2tib3hDaGFuZ2UgfSBmcm9tICdAc2t5dXgvZm9ybXMnO1xuaW1wb3J0IHsgU2t5TW9kYWxDbG9zZUFyZ3MsIFNreU1vZGFsU2VydmljZSB9IGZyb20gJ0Bza3l1eC9tb2RhbHMnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dCB9IGZyb20gJy4uL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLWNvbnRleHQnO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCB9IGZyb20gJy4uL2RhdGEtbWFuYWdlci1maWx0ZXItY29udGV4dCc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9kYXRhLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlck9wdGlvbiB9IGZyb20gJy4uL21vZGVscy9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1vcHRpb24nO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLWNvbmZpZyc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNvcnRPcHRpb24gfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLXNvcnQtb3B0aW9uJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU3RhdGUgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLXN0YXRlJztcbmltcG9ydCB7IFNreURhdGFWaWV3Q29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtdmlldy1jb25maWcnO1xuXG4vKipcbiAqIFJlbmRlcnMgYSBgc2t5LXRvb2xiYXJgIHdpdGggdGhlIGNvbnRlbnRzIHNwZWNpZmllZCBieSB0aGUgYWN0aXZlIHZpZXcncyBgU2t5RGF0YVZpZXdDb25maWdgXG4gKiBhbmQgdGhlIGBTa3lEYXRhTWFuYWdlclRvb2xiYXJMZWZ0SXRlbXNDb21wb25lbnRgLCBgU2t5RGF0YU1hbmFnZXJUb29sYmFyUmlnaHRJdGVtc0NvbXBvbmVudGAsXG4gKiBhbmQgYFNreURhdGFNYW5hZ2VyVG9vbGJhclNlY3Rpb25Db21wb25lbnRgIHdyYXBwZXJzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0YU1hbmFnZXJUb29sYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICBwdWJsaWMgZ2V0IGFjdGl2ZVNvcnRPcHRpb25JZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGFjdGl2ZVNvcnRPcHRpb24gPSB0aGlzLmRhdGFTdGF0ZSAmJiB0aGlzLmRhdGFTdGF0ZS5hY3RpdmVTb3J0T3B0aW9uO1xuICAgIHJldHVybiBhY3RpdmVTb3J0T3B0aW9uICYmIGFjdGl2ZVNvcnRPcHRpb24uaWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGl2ZVZpZXcoKTogU2t5RGF0YVZpZXdDb25maWcge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVWaWV3O1xuICB9XG5cbiAgcHVibGljIHNldCBhY3RpdmVWaWV3KHZhbHVlOiBTa3lEYXRhVmlld0NvbmZpZykge1xuICAgIHRoaXMuX2FjdGl2ZVZpZXcgPSB2YWx1ZTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhTWFuYWdlckNvbmZpZygpOiBTa3lEYXRhTWFuYWdlckNvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFNYW5hZ2VyQ29uZmlnO1xuICB9XG5cbiAgcHVibGljIHNldCBkYXRhTWFuYWdlckNvbmZpZyh2YWx1ZTogU2t5RGF0YU1hbmFnZXJDb25maWcpIHtcbiAgICB0aGlzLl9kYXRhTWFuYWdlckNvbmZpZyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFTdGF0ZSgpOiBTa3lEYXRhTWFuYWdlclN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVN0YXRlO1xuICB9XG5cbiAgcHVibGljIHNldCBkYXRhU3RhdGUodmFsdWU6IFNreURhdGFNYW5hZ2VyU3RhdGUpIHtcbiAgICB0aGlzLl9kYXRhU3RhdGUgPSB2YWx1ZTtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodmFsdWUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpZXdzKCk6IFNreURhdGFWaWV3Q29uZmlnW10ge1xuICAgIHJldHVybiB0aGlzLl92aWV3cztcbiAgfVxuXG4gIHB1YmxpYyBzZXQgdmlld3ModmFsdWU6IFNreURhdGFWaWV3Q29uZmlnW10pIHtcbiAgICB0aGlzLl92aWV3cyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgb25seVNob3dTZWxlY3RlZDogYm9vbGVhbjtcblxuICAvLyB0aGUgc291cmNlIHRvIHByb3ZpZGUgZm9yIGRhdGEgc3RhdGUgY2hhbmdlc1xuICBwcml2YXRlIF9zb3VyY2UgPSAndG9vbGJhcic7XG4gIHByaXZhdGUgX2FjdGl2ZVZpZXc6IFNreURhdGFWaWV3Q29uZmlnO1xuICBwcml2YXRlIF9kYXRhTWFuYWdlckNvbmZpZzogU2t5RGF0YU1hbmFnZXJDb25maWc7XG4gIHByaXZhdGUgX2RhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZTtcbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgX3ZpZXdzOiBTa3lEYXRhVmlld0NvbmZpZ1tdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBkYXRhTWFuYWdlclNlcnZpY2U6IFNreURhdGFNYW5hZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIG1vZGFsU2VydmljZTogU2t5TW9kYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29sdW1uUGlja2VyU2VydmljZTogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2VcbiAgICAgIC5nZXRBY3RpdmVWaWV3SWRVcGRhdGVzKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGFjdGl2ZVZpZXdJZCkgPT4ge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAoYWN0aXZlVmlld0lkKSB7XG4gICAgICAgICAgdGhpcy5hY3RpdmVWaWV3ID0gdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuZ2V0Vmlld0J5SWQoYWN0aXZlVmlld0lkKTtcbiAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVZpZXdzVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCh2aWV3cykgPT4ge1xuICAgICAgICB0aGlzLnZpZXdzID0gdmlld3M7XG4gICAgICB9KTtcblxuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVN0YXRlVXBkYXRlcyh0aGlzLl9zb3VyY2UpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChkYXRhU3RhdGUpID0+IHtcbiAgICAgICAgdGhpcy5fZGF0YVN0YXRlID0gZGF0YVN0YXRlO1xuICAgICAgICB0aGlzLm9ubHlTaG93U2VsZWN0ZWQgPSBkYXRhU3RhdGUub25seVNob3dTZWxlY3RlZDtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2VcbiAgICAgIC5nZXREYXRhTWFuYWdlckNvbmZpZ1VwZGF0ZXMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoY29uZmlnKSA9PiB7XG4gICAgICAgIHRoaXMuZGF0YU1hbmFnZXJDb25maWcgPSBjb25maWc7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc29ydFNlbGVjdGVkKHNvcnRPcHRpb246IFNreURhdGFNYW5hZ2VyU29ydE9wdGlvbik6IHZvaWQge1xuICAgIHRoaXMuZGF0YVN0YXRlLmFjdGl2ZVNvcnRPcHRpb24gPSBzb3J0T3B0aW9uO1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZURhdGFTdGF0ZSh0aGlzLmRhdGFTdGF0ZSwgdGhpcy5fc291cmNlKTtcbiAgfVxuXG4gIHB1YmxpYyBvblZpZXdDaGFuZ2Uodmlld0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVBY3RpdmVWaWV3SWQodmlld0lkKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hBcHBsaWVkKHRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZGF0YVN0YXRlLnNlYXJjaFRleHQgPSB0ZXh0O1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZURhdGFTdGF0ZSh0aGlzLmRhdGFTdGF0ZSwgdGhpcy5fc291cmNlKTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXJCdXR0b25DbGlja2VkKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRleHQgPSBuZXcgU2t5RGF0YU1hbmFnZXJGaWx0ZXJNb2RhbENvbnRleHQoKTtcbiAgICBjb25zdCBmaWx0ZXJNb2RhbCA9XG4gICAgICB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnICYmIHRoaXMuZGF0YU1hbmFnZXJDb25maWcuZmlsdGVyTW9kYWxDb21wb25lbnQ7XG5cbiAgICBjb250ZXh0LmZpbHRlckRhdGEgPSB0aGlzLmRhdGFTdGF0ZSAmJiB0aGlzLmRhdGFTdGF0ZS5maWx0ZXJEYXRhO1xuXG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0ge1xuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogU2t5RGF0YU1hbmFnZXJGaWx0ZXJNb2RhbENvbnRleHQsIHVzZVZhbHVlOiBjb250ZXh0IH0sXG4gICAgICBdLFxuICAgIH07XG5cbiAgICBpZiAoZmlsdGVyTW9kYWwpIHtcbiAgICAgIGNvbnN0IG1vZGFsSW5zdGFuY2UgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKGZpbHRlck1vZGFsLCBvcHRpb25zKTtcblxuICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZWQuc3Vic2NyaWJlKChyZXN1bHQ6IFNreU1vZGFsQ2xvc2VBcmdzKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgICB0aGlzLmRhdGFTdGF0ZS5maWx0ZXJEYXRhID0gcmVzdWx0LmRhdGE7XG4gICAgICAgICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3BlbkNvbHVtblBpY2tlcigpOiB2b2lkIHtcbiAgICBjb25zdCBjb2x1bW5PcHRpb25zID0gdGhpcy5hY3RpdmVWaWV3ICYmIHRoaXMuYWN0aXZlVmlldy5jb2x1bW5PcHRpb25zO1xuICAgIGNvbnN0IHZpZXdTdGF0ZSA9IHRoaXMuZGF0YVN0YXRlLmdldFZpZXdTdGF0ZUJ5SWQodGhpcy5hY3RpdmVWaWV3LmlkKTtcbiAgICBjb25zdCBjb250ZXh0ID0gbmV3IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dChcbiAgICAgIGNvbHVtbk9wdGlvbnMsXG4gICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzXG4gICAgKTtcblxuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcuY29sdW1uUGlja2VyU29ydFN0cmF0ZWd5KSB7XG4gICAgICBjb250ZXh0LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSA9XG4gICAgICAgIHRoaXMuYWN0aXZlVmlldy5jb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3k7XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0ge1xuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0LCB1c2VWYWx1ZTogY29udGV4dCB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgY29uc3QgbW9kYWxJbnN0YW5jZSA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oXG4gICAgICB0aGlzLmNvbHVtblBpY2tlclNlcnZpY2UuZ2V0Q29tcG9uZW50VHlwZSgpLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG5cbiAgICBtb2RhbEluc3RhbmNlLmNsb3NlZC5zdWJzY3JpYmUoKHJlc3VsdDogU2t5TW9kYWxDbG9zZUFyZ3MpID0+IHtcbiAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgY29uc3QgZGlzcGxheWVkQ29sdW1uSWRzID0gcmVzdWx0LmRhdGEubWFwKFxuICAgICAgICAgIChjb2w6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyT3B0aW9uKSA9PiBjb2wuaWRcbiAgICAgICAgKTtcblxuICAgICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzID0gZGlzcGxheWVkQ29sdW1uSWRzO1xuICAgICAgICB0aGlzLmRhdGFTdGF0ZSA9IHRoaXMuZGF0YVN0YXRlLmFkZE9yVXBkYXRlVmlldyhcbiAgICAgICAgICB0aGlzLmFjdGl2ZVZpZXcuaWQsXG4gICAgICAgICAgdmlld1N0YXRlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldy5vblNlbGVjdEFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25TZWxlY3RBbGxDbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uT25seVNob3dTZWxlY3RlZChldmVudDogU2t5Q2hlY2tib3hDaGFuZ2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTdGF0ZS5vbmx5U2hvd1NlbGVjdGVkID0gZXZlbnQuY2hlY2tlZDtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodGhpcy5kYXRhU3RhdGUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXJcIj5cbiAgPHNreS10b29sYmFyPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRhdGEtbWFuYWdlci10b29sYmFyLXByaW1hcnktaXRlbVwiPjwvbmctY29udGVudD5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5maWx0ZXJCdXR0b25FbmFibGVkXCI+XG4gICAgICAgIDxza3ktZmlsdGVyLWJ1dHRvblxuICAgICAgICAgIFtzaG93QnV0dG9uVGV4dF09XCJhY3RpdmVWaWV3Py5zaG93RmlsdGVyQnV0dG9uVGV4dFwiXG4gICAgICAgICAgKGZpbHRlckJ1dHRvbkNsaWNrKT1cImZpbHRlckJ1dHRvbkNsaWNrZWQoKVwiXG4gICAgICAgID5cbiAgICAgICAgPC9za3ktZmlsdGVyLWJ1dHRvbj5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5zb3J0RW5hYmxlZFwiPlxuICAgICAgICA8c2t5LXNvcnQgW3Nob3dCdXR0b25UZXh0XT1cImFjdGl2ZVZpZXc/LnNob3dTb3J0QnV0dG9uVGV4dFwiPlxuICAgICAgICAgIDxza3ktc29ydC1pdGVtXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhTWFuYWdlckNvbmZpZz8uc29ydE9wdGlvbnNcIlxuICAgICAgICAgICAgW2FjdGl2ZV09XCJhY3RpdmVTb3J0T3B0aW9uSWQgJiYgYWN0aXZlU29ydE9wdGlvbklkID09PSBpdGVtLmlkXCJcbiAgICAgICAgICAgIChpdGVtU2VsZWN0KT1cInNvcnRTZWxlY3RlZChpdGVtKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICAgIDwvc2t5LXNvcnQtaXRlbT5cbiAgICAgICAgPC9za3ktc29ydD5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5jb2x1bW5QaWNrZXJFbmFibGVkXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1kZWZhdWx0IHNreS1jb2wtcGlja2VyLWJ0blwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJcbiAgICAgICAgICAgICdza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgICAgICAgXCJcbiAgICAgICAgICBbYXR0ci50aXRsZV09XCJcbiAgICAgICAgICAgICdza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgICAgICAgXCJcbiAgICAgICAgICAoY2xpY2spPVwib3BlbkNvbHVtblBpY2tlcigpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktaWNvbiBpY29uPVwiY29sdW1uc1wiPjwvc2t5LWljb24+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJza3ktY29sdW1uLXNlbGVjdG9yLWFjdGlvbi1idG4tdGV4dFwiPlxuICAgICAgICAgICAge3sgJ3NreXV4X2RhdGFfbWFuYWdlcl9jb2x1bW5zX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9za3ktdG9vbGJhci1pdGVtPlxuXG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItbGVmdC1pdGVtXCI+PC9uZy1jb250ZW50PlxuXG4gICAgICA8c2t5LXRvb2xiYXItaXRlbSAqbmdJZj1cImFjdGl2ZVZpZXc/LnNlYXJjaEVuYWJsZWRcIj5cbiAgICAgICAgPHNreS1zZWFyY2hcbiAgICAgICAgICBbZXhwYW5kTW9kZV09XCJhY3RpdmVWaWV3Py5zZWFyY2hFeHBhbmRNb2RlXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJUZXh0XT1cImFjdGl2ZVZpZXc/LnNlYXJjaFBsYWNlaG9sZGVyVGV4dFwiXG4gICAgICAgICAgW3NlYXJjaFRleHRdPVwiZGF0YVN0YXRlPy5zZWFyY2hUZXh0XCJcbiAgICAgICAgICAoc2VhcmNoQXBwbHkpPVwic2VhcmNoQXBwbGllZCgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICA8L3NreS1zZWFyY2g+XG4gICAgICA8L3NreS10b29sYmFyLWl0ZW0+XG5cbiAgICAgIDxza3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNreS1kYXRhLW1hbmFnZXItdG9vbGJhci1yaWdodC1pdGVtXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8c2t5LXJhZGlvLWdyb3VwXG4gICAgICAgICAgKm5nSWY9XCJhY3RpdmVWaWV3ICYmIHZpZXdzICYmIHZpZXdzLmxlbmd0aCA+IDFcIlxuICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ2RhdGEgdmlldyBzd2l0Y2hlcidcIlxuICAgICAgICAgIGNsYXNzPVwic2t5LXN3aXRjaC1pY29uLWdyb3VwXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktcmFkaW9cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCB2aWV3IG9mIHZpZXdzXCJcbiAgICAgICAgICAgIFthdHRyLm5hbWVdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFtpY29uXT1cInZpZXcuaWNvblwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmlldy5pZFwiXG4gICAgICAgICAgICBbbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYWN0aXZlVmlldy5pZFwiXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmlld0NoYW5nZSh2aWV3LmlkKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvc2t5LXJhZGlvPlxuICAgICAgICA8L3NreS1yYWRpby1ncm91cD5cbiAgICAgIDwvc2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgIDwvc2t5LXRvb2xiYXItc2VjdGlvbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItc2VjdGlvblwiPjwvbmctY29udGVudD5cbiAgPC9za3ktdG9vbGJhcj5cblxuICA8c2t5LXRvb2xiYXJcbiAgICAqbmdJZj1cImFjdGl2ZVZpZXc/Lm11bHRpc2VsZWN0VG9vbGJhckVuYWJsZWRcIlxuICAgIGNsYXNzPVwic2t5LWRhdGEtbWFuYWdlci1tdWx0aXNlbGVjdC10b29sYmFyXCJcbiAgPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuICAgICAgPHNreS10b29sYmFyLWl0ZW0+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rIHNreS1kYXRhLW1hbmFnZXItc2VsZWN0LWFsbC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RBbGwoKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyAnc2t5dXhfZGF0YV9tYW5hZ2VyX3NlbGVjdF9hbGxfYnV0dG9uX3RpdGxlJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cbiAgICAgIDxza3ktdG9vbGJhci1pdGVtPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tbGluayBza3ktZGF0YS1tYW5hZ2VyLWNsZWFyLWFsbC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJjbGVhckFsbCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICdza3l1eF9kYXRhX21hbmFnZXJfY2xlYXJfYWxsX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L3NreS10b29sYmFyLWl0ZW0+XG4gICAgICA8c2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgICAgICA8c2t5LWNoZWNrYm94XG4gICAgICAgICAgW2NoZWNrZWRdPVwib25seVNob3dTZWxlY3RlZFwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJvbk9ubHlTaG93U2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c2t5LWNoZWNrYm94LWxhYmVsPlxuICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgJ3NreXV4X2RhdGFfbWFuYWdlcl9zaG93X3NlbGVjdGVkX29wdGlvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXNcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPC9za3ktY2hlY2tib3gtbGFiZWw+XG4gICAgICAgIDwvc2t5LWNoZWNrYm94PlxuICAgICAgPC9za3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgPC9za3ktdG9vbGJhci1zZWN0aW9uPlxuICA8L3NreS10b29sYmFyPlxuPC9kaXY+XG4iXX0=
180
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci10b29sYmFyL2RhdGEtbWFuYWdlci10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXItdG9vbGJhci9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFxQixlQUFlLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDckgsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDckgsT0FBTyxFQUFFLGdDQUFnQyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFPaEU7Ozs7R0FJRztBQU9ILE1BQU0sT0FBTyw4QkFBOEI7SUFvRHpDLFlBQ1UsY0FBaUMsRUFDakMsa0JBQXlDLEVBQ3pDLFlBQTZCLEVBQzdCLG1CQUFzRDtRQUh0RCxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFD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QyxTQUFTLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQztRQUNoRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hFLENBQUM7OzJIQW5NVSw4QkFBOEI7K0dBQTlCLDhCQUE4QixnRUNsQzNDLG9uSUFzSEE7MkZEcEZhLDhCQUE4QjtrQkFOMUMsU0FBUzsrQkFDRSwwQkFBMEIsbUJBR25CLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5Q2hlY2tib3hDaGFuZ2UgfSBmcm9tICdAc2t5dXgvZm9ybXMnO1xuaW1wb3J0IHsgU2t5TW9kYWxDbG9zZUFyZ3MsIFNreU1vZGFsU2VydmljZSB9IGZyb20gJ0Bza3l1eC9tb2RhbHMnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dCB9IGZyb20gJy4uL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyL2RhdGEtbWFuYWdlci1jb2x1bW4tcGlja2VyLWNvbnRleHQnO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIvZGF0YS1tYW5hZ2VyLWNvbHVtbi1waWNrZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckZpbHRlck1vZGFsQ29udGV4dCB9IGZyb20gJy4uL2RhdGEtbWFuYWdlci1maWx0ZXItY29udGV4dCc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuLi9kYXRhLW1hbmFnZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlckNvbHVtblBpY2tlck9wdGlvbiB9IGZyb20gJy4uL21vZGVscy9kYXRhLW1hbmFnZXItY29sdW1uLXBpY2tlci1vcHRpb24nO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLWNvbmZpZyc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNvcnRPcHRpb24gfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLXNvcnQtb3B0aW9uJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU3RhdGUgfSBmcm9tICcuLi9tb2RlbHMvZGF0YS1tYW5hZ2VyLXN0YXRlJztcbmltcG9ydCB7IFNreURhdGFWaWV3Q29uZmlnIH0gZnJvbSAnLi4vbW9kZWxzL2RhdGEtdmlldy1jb25maWcnO1xuXG4vKipcbiAqIFJlbmRlcnMgYSBgc2t5LXRvb2xiYXJgIHdpdGggdGhlIGNvbnRlbnRzIHNwZWNpZmllZCBieSB0aGUgYWN0aXZlIHZpZXcncyBgU2t5RGF0YVZpZXdDb25maWdgXG4gKiBhbmQgdGhlIGBTa3lEYXRhTWFuYWdlclRvb2xiYXJMZWZ0SXRlbXNDb21wb25lbnRgLCBgU2t5RGF0YU1hbmFnZXJUb29sYmFyUmlnaHRJdGVtc0NvbXBvbmVudGAsXG4gKiBhbmQgYFNreURhdGFNYW5hZ2VyVG9vbGJhclNlY3Rpb25Db21wb25lbnRgIHdyYXBwZXJzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS1tYW5hZ2VyLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kYXRhLW1hbmFnZXItdG9vbGJhci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5RGF0YU1hbmFnZXJUb29sYmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICBwdWJsaWMgZ2V0IGFjdGl2ZVNvcnRPcHRpb25JZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGFjdGl2ZVNvcnRPcHRpb24gPSB0aGlzLmRhdGFTdGF0ZSAmJiB0aGlzLmRhdGFTdGF0ZS5hY3RpdmVTb3J0T3B0aW9uO1xuICAgIHJldHVybiBhY3RpdmVTb3J0T3B0aW9uICYmIGFjdGl2ZVNvcnRPcHRpb24uaWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGFjdGl2ZVZpZXcoKTogU2t5RGF0YVZpZXdDb25maWcge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVWaWV3O1xuICB9XG5cbiAgcHVibGljIHNldCBhY3RpdmVWaWV3KHZhbHVlOiBTa3lEYXRhVmlld0NvbmZpZykge1xuICAgIHRoaXMuX2FjdGl2ZVZpZXcgPSB2YWx1ZTtcbiAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGdldCBkYXRhTWFuYWdlckNvbmZpZygpOiBTa3lEYXRhTWFuYWdlckNvbmZpZyB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFNYW5hZ2VyQ29uZmlnO1xuICB9XG5cbiAgcHVibGljIHNldCBkYXRhTWFuYWdlckNvbmZpZyh2YWx1ZTogU2t5RGF0YU1hbmFnZXJDb25maWcpIHtcbiAgICB0aGlzLl9kYXRhTWFuYWdlckNvbmZpZyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRhdGFTdGF0ZSgpOiBTa3lEYXRhTWFuYWdlclN0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0YVN0YXRlO1xuICB9XG5cbiAgcHVibGljIHNldCBkYXRhU3RhdGUodmFsdWU6IFNreURhdGFNYW5hZ2VyU3RhdGUpIHtcbiAgICB0aGlzLl9kYXRhU3RhdGUgPSB2YWx1ZTtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodmFsdWUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHZpZXdzKCk6IFNreURhdGFWaWV3Q29uZmlnW10ge1xuICAgIHJldHVybiB0aGlzLl92aWV3cztcbiAgfVxuXG4gIHB1YmxpYyBzZXQgdmlld3ModmFsdWU6IFNreURhdGFWaWV3Q29uZmlnW10pIHtcbiAgICB0aGlzLl92aWV3cyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwdWJsaWMgb25seVNob3dTZWxlY3RlZDogYm9vbGVhbjtcblxuICAvLyB0aGUgc291cmNlIHRvIHByb3ZpZGUgZm9yIGRhdGEgc3RhdGUgY2hhbmdlc1xuICBwcml2YXRlIF9zb3VyY2UgPSAndG9vbGJhcic7XG4gIHByaXZhdGUgX2FjdGl2ZVZpZXc6IFNreURhdGFWaWV3Q29uZmlnO1xuICBwcml2YXRlIF9kYXRhTWFuYWdlckNvbmZpZzogU2t5RGF0YU1hbmFnZXJDb25maWc7XG4gIHByaXZhdGUgX2RhdGFTdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZTtcbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgX3ZpZXdzOiBTa3lEYXRhVmlld0NvbmZpZ1tdID0gW107XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBkYXRhTWFuYWdlclNlcnZpY2U6IFNreURhdGFNYW5hZ2VyU2VydmljZSxcbiAgICBwcml2YXRlIG1vZGFsU2VydmljZTogU2t5TW9kYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29sdW1uUGlja2VyU2VydmljZTogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJTZXJ2aWNlXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2VcbiAgICAgIC5nZXRBY3RpdmVWaWV3SWRVcGRhdGVzKClcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgIC5zdWJzY3JpYmUoKGFjdGl2ZVZpZXdJZCkgPT4ge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAoYWN0aXZlVmlld0lkKSB7XG4gICAgICAgICAgdGhpcy5hY3RpdmVWaWV3ID0gdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UuZ2V0Vmlld0J5SWQoYWN0aXZlVmlld0lkKTtcbiAgICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yLm1hcmtGb3JDaGVjaygpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVZpZXdzVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCh2aWV3cykgPT4ge1xuICAgICAgICB0aGlzLnZpZXdzID0gdmlld3M7XG4gICAgICB9KTtcblxuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVN0YXRlVXBkYXRlcyh0aGlzLl9zb3VyY2UpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChkYXRhU3RhdGUpID0+IHtcbiAgICAgICAgdGhpcy5fZGF0YVN0YXRlID0gZGF0YVN0YXRlO1xuICAgICAgICB0aGlzLm9ubHlTaG93U2VsZWN0ZWQgPSBkYXRhU3RhdGUub25seVNob3dTZWxlY3RlZDtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2VcbiAgICAgIC5nZXREYXRhTWFuYWdlckNvbmZpZ1VwZGF0ZXMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgLnN1YnNjcmliZSgoY29uZmlnKSA9PiB7XG4gICAgICAgIHRoaXMuZGF0YU1hbmFnZXJDb25maWcgPSBjb25maWc7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc29ydFNlbGVjdGVkKHNvcnRPcHRpb246IFNreURhdGFNYW5hZ2VyU29ydE9wdGlvbik6IHZvaWQge1xuICAgIHRoaXMuZGF0YVN0YXRlLmFjdGl2ZVNvcnRPcHRpb24gPSBzb3J0T3B0aW9uO1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZURhdGFTdGF0ZSh0aGlzLmRhdGFTdGF0ZSwgdGhpcy5fc291cmNlKTtcbiAgfVxuXG4gIHB1YmxpYyBvblZpZXdDaGFuZ2Uodmlld0lkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVBY3RpdmVWaWV3SWQodmlld0lkKTtcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2hBcHBsaWVkKHRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuZGF0YVN0YXRlLnNlYXJjaFRleHQgPSB0ZXh0O1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlLnVwZGF0ZURhdGFTdGF0ZSh0aGlzLmRhdGFTdGF0ZSwgdGhpcy5fc291cmNlKTtcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXJCdXR0b25DbGlja2VkKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRleHQgPSBuZXcgU2t5RGF0YU1hbmFnZXJGaWx0ZXJNb2RhbENvbnRleHQoKTtcbiAgICBjb25zdCBmaWx0ZXJNb2RhbCA9XG4gICAgICB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnICYmIHRoaXMuZGF0YU1hbmFnZXJDb25maWcuZmlsdGVyTW9kYWxDb21wb25lbnQ7XG5cbiAgICBjb250ZXh0LmZpbHRlckRhdGEgPSB0aGlzLmRhdGFTdGF0ZSAmJiB0aGlzLmRhdGFTdGF0ZS5maWx0ZXJEYXRhO1xuXG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0ge1xuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogU2t5RGF0YU1hbmFnZXJGaWx0ZXJNb2RhbENvbnRleHQsIHVzZVZhbHVlOiBjb250ZXh0IH0sXG4gICAgICBdLFxuICAgIH07XG5cbiAgICBpZiAoZmlsdGVyTW9kYWwpIHtcbiAgICAgIGNvbnN0IG1vZGFsSW5zdGFuY2UgPSB0aGlzLm1vZGFsU2VydmljZS5vcGVuKGZpbHRlck1vZGFsLCBvcHRpb25zKTtcblxuICAgICAgbW9kYWxJbnN0YW5jZS5jbG9zZWQuc3Vic2NyaWJlKChyZXN1bHQ6IFNreU1vZGFsQ2xvc2VBcmdzKSA9PiB7XG4gICAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgICB0aGlzLmRhdGFTdGF0ZS5maWx0ZXJEYXRhID0gcmVzdWx0LmRhdGE7XG4gICAgICAgICAgdGhpcy5kYXRhTWFuYWdlclNlcnZpY2UudXBkYXRlRGF0YVN0YXRlKHRoaXMuZGF0YVN0YXRlLCB0aGlzLl9zb3VyY2UpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb3BlbkNvbHVtblBpY2tlcigpOiB2b2lkIHtcbiAgICBjb25zdCBjb2x1bW5PcHRpb25zID0gdGhpcy5hY3RpdmVWaWV3ICYmIHRoaXMuYWN0aXZlVmlldy5jb2x1bW5PcHRpb25zO1xuICAgIGNvbnN0IHZpZXdTdGF0ZSA9IHRoaXMuZGF0YVN0YXRlLmdldFZpZXdTdGF0ZUJ5SWQodGhpcy5hY3RpdmVWaWV3LmlkKTtcbiAgICBjb25zdCBjb250ZXh0ID0gbmV3IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyQ29udGV4dChcbiAgICAgIGNvbHVtbk9wdGlvbnMsXG4gICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzXG4gICAgKTtcblxuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcuY29sdW1uUGlja2VyU29ydFN0cmF0ZWd5KSB7XG4gICAgICBjb250ZXh0LmNvbHVtblBpY2tlclNvcnRTdHJhdGVneSA9XG4gICAgICAgIHRoaXMuYWN0aXZlVmlldy5jb2x1bW5QaWNrZXJTb3J0U3RyYXRlZ3k7XG4gICAgfVxuXG4gICAgY29uc3Qgb3B0aW9uczogYW55ID0ge1xuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHsgcHJvdmlkZTogU2t5RGF0YU1hbmFnZXJDb2x1bW5QaWNrZXJDb250ZXh0LCB1c2VWYWx1ZTogY29udGV4dCB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgY29uc3QgbW9kYWxJbnN0YW5jZSA9IHRoaXMubW9kYWxTZXJ2aWNlLm9wZW4oXG4gICAgICB0aGlzLmNvbHVtblBpY2tlclNlcnZpY2UuZ2V0Q29tcG9uZW50VHlwZSgpLFxuICAgICAgb3B0aW9uc1xuICAgICk7XG5cbiAgICBtb2RhbEluc3RhbmNlLmNsb3NlZC5zdWJzY3JpYmUoKHJlc3VsdDogU2t5TW9kYWxDbG9zZUFyZ3MpID0+IHtcbiAgICAgIGlmIChyZXN1bHQucmVhc29uID09PSAnc2F2ZScpIHtcbiAgICAgICAgY29uc3QgZGlzcGxheWVkQ29sdW1uSWRzID0gcmVzdWx0LmRhdGEubWFwKFxuICAgICAgICAgIChjb2w6IFNreURhdGFNYW5hZ2VyQ29sdW1uUGlja2VyT3B0aW9uKSA9PiBjb2wuaWRcbiAgICAgICAgKTtcblxuICAgICAgICB2aWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzID0gZGlzcGxheWVkQ29sdW1uSWRzO1xuICAgICAgICB0aGlzLmRhdGFTdGF0ZSA9IHRoaXMuZGF0YVN0YXRlLmFkZE9yVXBkYXRlVmlldyhcbiAgICAgICAgICB0aGlzLmFjdGl2ZVZpZXcuaWQsXG4gICAgICAgICAgdmlld1N0YXRlXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMuYWN0aXZlVmlldy5vblNlbGVjdEFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25TZWxlY3RBbGxDbGljaygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjbGVhckFsbCgpOiB2b2lkIHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKSB7XG4gICAgICB0aGlzLmFjdGl2ZVZpZXcub25DbGVhckFsbENsaWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uT25seVNob3dTZWxlY3RlZChldmVudDogU2t5Q2hlY2tib3hDaGFuZ2UpOiB2b2lkIHtcbiAgICB0aGlzLmRhdGFTdGF0ZS5vbmx5U2hvd1NlbGVjdGVkID0gZXZlbnQuY2hlY2tlZDtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS51cGRhdGVEYXRhU3RhdGUodGhpcy5kYXRhU3RhdGUsIHRoaXMuX3NvdXJjZSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXJcIj5cbiAgPHNreS10b29sYmFyPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwic2t5LWRhdGEtbWFuYWdlci10b29sYmFyLXByaW1hcnktaXRlbVwiPjwvbmctY29udGVudD5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5maWx0ZXJCdXR0b25FbmFibGVkXCI+XG4gICAgICAgIDxza3ktZmlsdGVyLWJ1dHRvblxuICAgICAgICAgIFtzaG93QnV0dG9uVGV4dF09XCJhY3RpdmVWaWV3Py5zaG93RmlsdGVyQnV0dG9uVGV4dFwiXG4gICAgICAgICAgKGZpbHRlckJ1dHRvbkNsaWNrKT1cImZpbHRlckJ1dHRvbkNsaWNrZWQoKVwiXG4gICAgICAgID5cbiAgICAgICAgPC9za3ktZmlsdGVyLWJ1dHRvbj5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5zb3J0RW5hYmxlZFwiPlxuICAgICAgICA8c2t5LXNvcnQgW3Nob3dCdXR0b25UZXh0XT1cImFjdGl2ZVZpZXc/LnNob3dTb3J0QnV0dG9uVGV4dFwiPlxuICAgICAgICAgIDxza3ktc29ydC1pdGVtXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBkYXRhTWFuYWdlckNvbmZpZz8uc29ydE9wdGlvbnNcIlxuICAgICAgICAgICAgW2FjdGl2ZV09XCJhY3RpdmVTb3J0T3B0aW9uSWQgJiYgYWN0aXZlU29ydE9wdGlvbklkID09PSBpdGVtLmlkXCJcbiAgICAgICAgICAgIChpdGVtU2VsZWN0KT1cInNvcnRTZWxlY3RlZChpdGVtKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAge3sgaXRlbS5sYWJlbCB9fVxuICAgICAgICAgIDwvc2t5LXNvcnQtaXRlbT5cbiAgICAgICAgPC9za3ktc29ydD5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cblxuICAgICAgPHNreS10b29sYmFyLWl0ZW0gKm5nSWY9XCJhY3RpdmVWaWV3Py5jb2x1bW5QaWNrZXJFbmFibGVkXCI+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1kZWZhdWx0IHNreS1jb2wtcGlja2VyLWJ0blwiXG4gICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCJcbiAgICAgICAgICAgICdza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgICAgICAgXCJcbiAgICAgICAgICBbYXR0ci50aXRsZV09XCJcbiAgICAgICAgICAgICdza3l1eF9kYXRhX21hbmFnZXJfY29sdW1uc19idXR0b25fdGl0bGUnIHwgc2t5TGliUmVzb3VyY2VzXG4gICAgICAgICAgXCJcbiAgICAgICAgICAoY2xpY2spPVwib3BlbkNvbHVtblBpY2tlcigpXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktaWNvbiBpY29uPVwiY29sdW1uc1wiPjwvc2t5LWljb24+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJza3ktY29sdW1uLXNlbGVjdG9yLWFjdGlvbi1idG4tdGV4dFwiPlxuICAgICAgICAgICAge3sgJ3NreXV4X2RhdGFfbWFuYWdlcl9jb2x1bW5zX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9za3ktdG9vbGJhci1pdGVtPlxuXG4gICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItbGVmdC1pdGVtXCI+PC9uZy1jb250ZW50PlxuXG4gICAgICA8c2t5LXRvb2xiYXItaXRlbSAqbmdJZj1cImFjdGl2ZVZpZXc/LnNlYXJjaEVuYWJsZWRcIj5cbiAgICAgICAgPHNreS1zZWFyY2hcbiAgICAgICAgICBbZXhwYW5kTW9kZV09XCJhY3RpdmVWaWV3Py5zZWFyY2hFeHBhbmRNb2RlXCJcbiAgICAgICAgICBbcGxhY2Vob2xkZXJUZXh0XT1cImFjdGl2ZVZpZXc/LnNlYXJjaFBsYWNlaG9sZGVyVGV4dFwiXG4gICAgICAgICAgW3NlYXJjaFRleHRdPVwiZGF0YVN0YXRlPy5zZWFyY2hUZXh0XCJcbiAgICAgICAgICAoc2VhcmNoQXBwbHkpPVwic2VhcmNoQXBwbGllZCgkZXZlbnQpXCJcbiAgICAgICAgPlxuICAgICAgICA8L3NreS1zZWFyY2g+XG4gICAgICA8L3NreS10b29sYmFyLWl0ZW0+XG5cbiAgICAgIDxza3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cInNreS1kYXRhLW1hbmFnZXItdG9vbGJhci1yaWdodC1pdGVtXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8c2t5LXJhZGlvLWdyb3VwXG4gICAgICAgICAgKm5nSWY9XCJhY3RpdmVWaWV3ICYmIHZpZXdzICYmIHZpZXdzLmxlbmd0aCA+IDFcIlxuICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ2RhdGEgdmlldyBzd2l0Y2hlcidcIlxuICAgICAgICAgIGNsYXNzPVwic2t5LXN3aXRjaC1pY29uLWdyb3VwXCJcbiAgICAgICAgPlxuICAgICAgICAgIDxza3ktcmFkaW9cbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCB2aWV3IG9mIHZpZXdzXCJcbiAgICAgICAgICAgIFthdHRyLm5hbWVdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFtpY29uXT1cInZpZXcuaWNvblwiXG4gICAgICAgICAgICBbdmFsdWVdPVwidmlldy5pZFwiXG4gICAgICAgICAgICBbbGFiZWxdPVwidmlldy5uYW1lXCJcbiAgICAgICAgICAgIFsobmdNb2RlbCldPVwiYWN0aXZlVmlldy5pZFwiXG4gICAgICAgICAgICAoY2hhbmdlKT1cIm9uVmlld0NoYW5nZSh2aWV3LmlkKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDwvc2t5LXJhZGlvPlxuICAgICAgICA8L3NreS1yYWRpby1ncm91cD5cbiAgICAgIDwvc2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgIDwvc2t5LXRvb2xiYXItc2VjdGlvbj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJza3ktZGF0YS1tYW5hZ2VyLXRvb2xiYXItc2VjdGlvblwiPjwvbmctY29udGVudD5cbiAgPC9za3ktdG9vbGJhcj5cblxuICA8c2t5LXRvb2xiYXJcbiAgICAqbmdJZj1cImFjdGl2ZVZpZXc/Lm11bHRpc2VsZWN0VG9vbGJhckVuYWJsZWRcIlxuICAgIGNsYXNzPVwic2t5LWRhdGEtbWFuYWdlci1tdWx0aXNlbGVjdC10b29sYmFyXCJcbiAgPlxuICAgIDxza3ktdG9vbGJhci1zZWN0aW9uPlxuICAgICAgPHNreS10b29sYmFyLWl0ZW0+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rIHNreS1kYXRhLW1hbmFnZXItc2VsZWN0LWFsbC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RBbGwoKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyAnc2t5dXhfZGF0YV9tYW5hZ2VyX3NlbGVjdF9hbGxfYnV0dG9uX3RpdGxlJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cbiAgICAgIDxza3ktdG9vbGJhci1pdGVtPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tbGluayBza3ktZGF0YS1tYW5hZ2VyLWNsZWFyLWFsbC1idG5cIlxuICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgIChjbGljayk9XCJjbGVhckFsbCgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICdza3l1eF9kYXRhX21hbmFnZXJfY2xlYXJfYWxsX2J1dHRvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L3NreS10b29sYmFyLWl0ZW0+XG4gICAgICA8c2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgICAgICA8c2t5LWNoZWNrYm94XG4gICAgICAgICAgW2NoZWNrZWRdPVwib25seVNob3dTZWxlY3RlZFwiXG4gICAgICAgICAgKGNoYW5nZSk9XCJvbk9ubHlTaG93U2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICA8c2t5LWNoZWNrYm94LWxhYmVsPlxuICAgICAgICAgICAge3tcbiAgICAgICAgICAgICAgJ3NreXV4X2RhdGFfbWFuYWdlcl9zaG93X3NlbGVjdGVkX29wdGlvbl90aXRsZScgfCBza3lMaWJSZXNvdXJjZXNcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPC9za3ktY2hlY2tib3gtbGFiZWw+XG4gICAgICAgIDwvc2t5LWNoZWNrYm94PlxuICAgICAgPC9za3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gICAgPC9za3ktdG9vbGJhci1zZWN0aW9uPlxuICA8L3NreS10b29sYmFyPlxuPC9kaXY+XG4iXX0=
@@ -77,4 +77,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
77
77
  type: Component,
78
78
  args: [{ selector: 'sky-data-manager', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n *ngIf=\"isInitialized\"\n class=\"sky-data-manager\"\n [skyBackToTop]=\"backToTopOptions\"\n [skyBackToTopMessageStream]=\"backToTopController\"\n [skyViewkeeper]=\"currentViewkeeperClasses\"\n #dataManager\n>\n <ng-content></ng-content>\n</div>\n" }]
79
79
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyDataManagerService }]; } });
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1Qix1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBRS9EOztHQUVHO0FBTUgsTUFBTSxPQUFPLHVCQUF1QjtJQXVDbEMsWUFDVSxlQUFrQyxFQUNsQyxrQkFBeUM7UUFEekMsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBQ2xDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBdUI7UUFmNUMsd0JBQW1CLEdBQUcsSUFBSSxPQUFPLEVBQXVCLENBQUM7UUFFekQscUJBQWdCLEdBQUc7WUFDeEIsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQztRQUVNLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBR3ZCLHlCQUFvQixHQUFtQyxFQUFFLENBQUM7UUFDMUQsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBQzlCLGFBQVEsR0FBRyxzQkFBc0IsQ0FBQztJQUt2QyxDQUFDO0lBekNKLElBQVcsd0JBQXdCO1FBQ2pDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQ3pELElBQUksVUFBVSxHQUFHLGtCQUFrQixDQUFDO1FBRXBDLElBQUksSUFBSSxDQUFDLHlCQUF5QixFQUFFO1lBQ2xDLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7U0FDeEU7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyx3QkFBd0IsQ0FBQyxLQUFlO1FBQ2pELElBQUksQ0FBQyx5QkFBeUIsR0FBRyxLQUFLLENBQUM7UUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBVyxhQUFhLENBQUMsS0FBYztRQUNyQyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFvQk0sUUFBUTtRQUNiLElBQUksQ0FBQyxrQkFBa0I7YUFDcEIsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFaEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQjthQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNyQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsT0FBTyxDQUFDO1lBQ3BDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUFDO1FBRUwsSUFBSSxDQUFDLGtCQUFrQjthQUNwQixzQkFBc0IsRUFBRTthQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRTtZQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztZQUNqQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDO2dCQUM1QixJQUFJLEVBQUUsdUJBQXVCLENBQUMsU0FBUzthQUN4QyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsd0JBQXdCO2dCQUMzQixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7O29IQXpFVSx1QkFBdUI7d0dBQXZCLHVCQUF1Qix3REN0QnBDLHVRQVVBOzJGRFlhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxrQkFBa0IsbUJBRVgsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lCYWNrVG9Ub3BNZXNzYWdlLCBTa3lCYWNrVG9Ub3BNZXNzYWdlVHlwZSB9IGZyb20gJ0Bza3l1eC9sYXlvdXQnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4vZGF0YS1tYW5hZ2VyLnNlcnZpY2UnO1xuXG4vKipcbiAqIFRoZSB0b3AtbGV2ZWwgZGF0YSBtYW5hZ2VyIGNvbXBvbmVudC4gUHJvdmlkZSBgU2t5RGF0YU1hbmFnZXJTZXJ2aWNlYCBhdCB0aGlzIGxldmVsLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZGF0YS1tYW5hZ2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbWFuYWdlci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEYXRhTWFuYWdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0IHtcbiAgcHVibGljIGdldCBjdXJyZW50Vmlld2tlZXBlckNsYXNzZXMoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGRhdGFNYW5hZ2VyQ2xhc3NlcyA9IFsnLnNreS1kYXRhLW1hbmFnZXItdG9vbGJhciddO1xuICAgIGxldCBhbGxDbGFzc2VzID0gZGF0YU1hbmFnZXJDbGFzc2VzO1xuXG4gICAgaWYgKHRoaXMuX2N1cnJlbnRWaWV3a2VlcGVyQ2xhc3Nlcykge1xuICAgICAgYWxsQ2xhc3NlcyA9IGRhdGFNYW5hZ2VyQ2xhc3Nlcy5jb25jYXQodGhpcy5fY3VycmVudFZpZXdrZWVwZXJDbGFzc2VzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYWxsQ2xhc3NlcztcbiAgfVxuXG4gIHB1YmxpYyBzZXQgY3VycmVudFZpZXdrZWVwZXJDbGFzc2VzKHZhbHVlOiBzdHJpbmdbXSkge1xuICAgIHRoaXMuX2N1cnJlbnRWaWV3a2VlcGVyQ2xhc3NlcyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0luaXRpYWxpemVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc0luaXRpYWxpemVkO1xuICB9XG5cbiAgcHVibGljIHNldCBpc0luaXRpYWxpemVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNJbml0aWFsaXplZCA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGJhY2tUb1RvcENvbnRyb2xsZXIgPSBuZXcgU3ViamVjdDxTa3lCYWNrVG9Ub3BNZXNzYWdlPigpO1xuXG4gIHB1YmxpYyBiYWNrVG9Ub3BPcHRpb25zID0ge1xuICAgIGJ1dHRvbkhpZGRlbjogdHJ1ZSxcbiAgfTtcblxuICBwcml2YXRlIF9pc0luaXRpYWxpemVkID0gZmFsc2U7XG4gIHByaXZhdGUgX2N1cnJlbnRWaWV3a2VlcGVyQ2xhc3Nlczogc3RyaW5nW107XG4gIHByaXZhdGUgYWN0aXZlVmlld0lkOiBzdHJpbmc7XG4gIHByaXZhdGUgYWxsVmlld2tlZXBlckNsYXNzZXM6IHsgW3ZpZXdJZDogc3RyaW5nXTogc3RyaW5nW10gfSA9IHt9O1xuICBwcml2YXRlIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdCgpO1xuICBwcml2YXRlIHNvdXJjZUlkID0gJ2RhdGFNYW5hZ2VyQ29tcG9uZW50JztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBkYXRhTWFuYWdlclNlcnZpY2U6IFNreURhdGFNYW5hZ2VyU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVN0YXRlVXBkYXRlcyh0aGlzLnNvdXJjZUlkKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+ICh0aGlzLmlzSW5pdGlhbGl6ZWQgPSB0cnVlKSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS52aWV3a2VlcGVyQ2xhc3Nlc1xuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChjbGFzc2VzKSA9PiB7XG4gICAgICAgIHRoaXMuYWxsVmlld2tlZXBlckNsYXNzZXMgPSBjbGFzc2VzO1xuICAgICAgICB0aGlzLmN1cnJlbnRWaWV3a2VlcGVyQ2xhc3NlcyA9IGNsYXNzZXNbdGhpcy5hY3RpdmVWaWV3SWRdO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZVxuICAgICAgLmdldEFjdGl2ZVZpZXdJZFVwZGF0ZXMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChhY3RpdmVWaWV3SWQpID0+IHtcbiAgICAgICAgdGhpcy5hY3RpdmVWaWV3SWQgPSBhY3RpdmVWaWV3SWQ7XG4gICAgICAgIHRoaXMuYmFja1RvVG9wQ29udHJvbGxlci5uZXh0KHtcbiAgICAgICAgICB0eXBlOiBTa3lCYWNrVG9Ub3BNZXNzYWdlVHlwZS5CYWNrVG9Ub3AsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmN1cnJlbnRWaWV3a2VlcGVyQ2xhc3NlcyA9XG4gICAgICAgICAgdGhpcy5hbGxWaWV3a2VlcGVyQ2xhc3Nlc1t0aGlzLmFjdGl2ZVZpZXdJZF07XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwiaXNJbml0aWFsaXplZFwiXG4gIGNsYXNzPVwic2t5LWRhdGEtbWFuYWdlclwiXG4gIFtza3lCYWNrVG9Ub3BdPVwiYmFja1RvVG9wT3B0aW9uc1wiXG4gIFtza3lCYWNrVG9Ub3BNZXNzYWdlU3RyZWFtXT1cImJhY2tUb1RvcENvbnRyb2xsZXJcIlxuICBbc2t5Vmlld2tlZXBlcl09XCJjdXJyZW50Vmlld2tlZXBlckNsYXNzZXNcIlxuICAjZGF0YU1hbmFnZXJcbj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
80
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLW1hbmFnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtbWFuYWdlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEdBR1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF1Qix1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7O0FBRS9EOztHQUVHO0FBTUgsTUFBTSxPQUFPLHVCQUF1QjtJQXVDbEMsWUFDVSxlQUFrQyxFQUNsQyxrQkFBeUM7UUFEekMsb0JBQWUsR0FBZixlQUFlLENBQW1CO1FBQ2xDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBdUI7UUFmNUMsd0JBQW1CLEdBQUcsSUFBSSxPQUFPLEVBQXVCLENBQUM7UUFFekQscUJBQWdCLEdBQUc7WUFDeEIsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQztRQUVNLG1CQUFjLEdBQUcsS0FBSyxDQUFDO1FBR3ZCLHlCQUFvQixHQUFtQyxFQUFFLENBQUM7UUFDMUQsa0JBQWEsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBQ3BDLGFBQVEsR0FBRyxzQkFBc0IsQ0FBQztJQUt2QyxDQUFDO0lBekNKLElBQVcsd0JBQXdCO1FBQ2pDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQ3pELElBQUksVUFBVSxHQUFHLGtCQUFrQixDQUFDO1FBRXBDLElBQUksSUFBSSxDQUFDLHlCQUF5QixFQUFFO1lBQ2xDLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLHlCQUF5QixDQUFDLENBQUM7U0FDeEU7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBRUQsSUFBVyx3QkFBd0IsQ0FBQyxLQUFlO1FBQ2pELElBQUksQ0FBQyx5QkFBeUIsR0FBRyxLQUFLLENBQUM7UUFDdkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBVyxhQUFhO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBVyxhQUFhLENBQUMsS0FBYztRQUNyQyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFvQk0sUUFBUTtRQUNiLElBQUksQ0FBQyxrQkFBa0I7YUFDcEIsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQzthQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUM7UUFFaEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQjthQUN0QyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNyQixJQUFJLENBQUMsb0JBQW9CLEdBQUcsT0FBTyxDQUFDO1lBQ3BDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUFDO1FBRUwsSUFBSSxDQUFDLGtCQUFrQjthQUNwQixzQkFBc0IsRUFBRTthQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzthQUNuQyxTQUFTLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRTtZQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLFlBQVksQ0FBQztZQUNqQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDO2dCQUM1QixJQUFJLEVBQUUsdUJBQXVCLENBQUMsU0FBUzthQUN4QyxDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsd0JBQXdCO2dCQUMzQixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7O29IQXpFVSx1QkFBdUI7d0dBQXZCLHVCQUF1Qix3REN0QnBDLHVRQVVBOzJGRFlhLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxrQkFBa0IsbUJBRVgsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lCYWNrVG9Ub3BNZXNzYWdlLCBTa3lCYWNrVG9Ub3BNZXNzYWdlVHlwZSB9IGZyb20gJ0Bza3l1eC9sYXlvdXQnO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU2VydmljZSB9IGZyb20gJy4vZGF0YS1tYW5hZ2VyLnNlcnZpY2UnO1xuXG4vKipcbiAqIFRoZSB0b3AtbGV2ZWwgZGF0YSBtYW5hZ2VyIGNvbXBvbmVudC4gUHJvdmlkZSBgU2t5RGF0YU1hbmFnZXJTZXJ2aWNlYCBhdCB0aGlzIGxldmVsLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktZGF0YS1tYW5hZ2VyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RhdGEtbWFuYWdlci5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lEYXRhTWFuYWdlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25Jbml0IHtcbiAgcHVibGljIGdldCBjdXJyZW50Vmlld2tlZXBlckNsYXNzZXMoKTogc3RyaW5nW10ge1xuICAgIGNvbnN0IGRhdGFNYW5hZ2VyQ2xhc3NlcyA9IFsnLnNreS1kYXRhLW1hbmFnZXItdG9vbGJhciddO1xuICAgIGxldCBhbGxDbGFzc2VzID0gZGF0YU1hbmFnZXJDbGFzc2VzO1xuXG4gICAgaWYgKHRoaXMuX2N1cnJlbnRWaWV3a2VlcGVyQ2xhc3Nlcykge1xuICAgICAgYWxsQ2xhc3NlcyA9IGRhdGFNYW5hZ2VyQ2xhc3Nlcy5jb25jYXQodGhpcy5fY3VycmVudFZpZXdrZWVwZXJDbGFzc2VzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYWxsQ2xhc3NlcztcbiAgfVxuXG4gIHB1YmxpYyBzZXQgY3VycmVudFZpZXdrZWVwZXJDbGFzc2VzKHZhbHVlOiBzdHJpbmdbXSkge1xuICAgIHRoaXMuX2N1cnJlbnRWaWV3a2VlcGVyQ2xhc3NlcyA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGdldCBpc0luaXRpYWxpemVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc0luaXRpYWxpemVkO1xuICB9XG5cbiAgcHVibGljIHNldCBpc0luaXRpYWxpemVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNJbml0aWFsaXplZCA9IHZhbHVlO1xuICAgIHRoaXMuY2hhbmdlRGV0ZWN0aW9uLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHVibGljIGJhY2tUb1RvcENvbnRyb2xsZXIgPSBuZXcgU3ViamVjdDxTa3lCYWNrVG9Ub3BNZXNzYWdlPigpO1xuXG4gIHB1YmxpYyBiYWNrVG9Ub3BPcHRpb25zID0ge1xuICAgIGJ1dHRvbkhpZGRlbjogdHJ1ZSxcbiAgfTtcblxuICBwcml2YXRlIF9pc0luaXRpYWxpemVkID0gZmFsc2U7XG4gIHByaXZhdGUgX2N1cnJlbnRWaWV3a2VlcGVyQ2xhc3Nlczogc3RyaW5nW107XG4gIHByaXZhdGUgYWN0aXZlVmlld0lkOiBzdHJpbmc7XG4gIHByaXZhdGUgYWxsVmlld2tlZXBlckNsYXNzZXM6IHsgW3ZpZXdJZDogc3RyaW5nXTogc3RyaW5nW10gfSA9IHt9O1xuICBwcml2YXRlIG5nVW5zdWJzY3JpYmUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICBwcml2YXRlIHNvdXJjZUlkID0gJ2RhdGFNYW5hZ2VyQ29tcG9uZW50JztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBkYXRhTWFuYWdlclNlcnZpY2U6IFNreURhdGFNYW5hZ2VyU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0RGF0YVN0YXRlVXBkYXRlcyh0aGlzLnNvdXJjZUlkKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+ICh0aGlzLmlzSW5pdGlhbGl6ZWQgPSB0cnVlKSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZS52aWV3a2VlcGVyQ2xhc3Nlc1xuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChjbGFzc2VzKSA9PiB7XG4gICAgICAgIHRoaXMuYWxsVmlld2tlZXBlckNsYXNzZXMgPSBjbGFzc2VzO1xuICAgICAgICB0aGlzLmN1cnJlbnRWaWV3a2VlcGVyQ2xhc3NlcyA9IGNsYXNzZXNbdGhpcy5hY3RpdmVWaWV3SWRdO1xuICAgICAgfSk7XG5cbiAgICB0aGlzLmRhdGFNYW5hZ2VyU2VydmljZVxuICAgICAgLmdldEFjdGl2ZVZpZXdJZFVwZGF0ZXMoKVxuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChhY3RpdmVWaWV3SWQpID0+IHtcbiAgICAgICAgdGhpcy5hY3RpdmVWaWV3SWQgPSBhY3RpdmVWaWV3SWQ7XG4gICAgICAgIHRoaXMuYmFja1RvVG9wQ29udHJvbGxlci5uZXh0KHtcbiAgICAgICAgICB0eXBlOiBTa3lCYWNrVG9Ub3BNZXNzYWdlVHlwZS5CYWNrVG9Ub3AsXG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLmN1cnJlbnRWaWV3a2VlcGVyQ2xhc3NlcyA9XG4gICAgICAgICAgdGhpcy5hbGxWaWV3a2VlcGVyQ2xhc3Nlc1t0aGlzLmFjdGl2ZVZpZXdJZF07XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUubmV4dCgpO1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG59XG4iLCI8ZGl2XG4gICpuZ0lmPVwiaXNJbml0aWFsaXplZFwiXG4gIGNsYXNzPVwic2t5LWRhdGEtbWFuYWdlclwiXG4gIFtza3lCYWNrVG9Ub3BdPVwiYmFja1RvVG9wT3B0aW9uc1wiXG4gIFtza3lCYWNrVG9Ub3BNZXNzYWdlU3RyZWFtXT1cImJhY2tUb1RvcENvbnRyb2xsZXJcIlxuICBbc2t5Vmlld2tlZXBlcl09XCJjdXJyZW50Vmlld2tlZXBlckNsYXNzZXNcIlxuICAjZGF0YU1hbmFnZXJcbj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
@@ -274,4 +274,4 @@ SkyDataManagerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0"
274
274
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImport: i0, type: SkyDataManagerService, decorators: [{
275
275
  type: Injectable
276
276
  }], ctorParameters: function () { return [{ type: i1.SkyUIConfigService }]; } });
277
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0YS1tYW5hZ2VyL3NyYy9saWIvbW9kdWxlcy9kYXRhLW1hbmFnZXIvZGF0YS1tYW5hZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFakQsT0FBTyxFQUFFLGVBQWUsRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNFLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsTUFBTSxFQUNOLEdBQUcsRUFDSCxJQUFJLEVBQ0osU0FBUyxHQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFJeEIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFJL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUU1RDs7Ozs7OztHQU9HO0FBRUgsTUFBTSxPQUFPLHFCQUFxQjtJQW1CaEMsWUFBb0IsZUFBbUM7UUFBbkMsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBbEJoRCxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FFM0MsRUFBRSxDQUFDLENBQUM7UUFFVSxpQkFBWSxHQUFHLElBQUksYUFBYSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBRTVDLHNCQUFpQixHQUNoQyxJQUFJLGVBQWUsQ0FBdUIsU0FBUyxDQUFDLENBQUM7UUFFdEMsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFzQixFQUFFLENBQUMsQ0FBQztRQUVyRCxvQkFBZSxHQUM5QixJQUFJLGFBQWEsQ0FBNEIsQ0FBQyxDQUFDLENBQUM7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Q2pDLDBCQUEwQjtZQUMxQixJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsUUFBUSxDQUFDLEVBQUU7Z0JBQ25FLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUMvRDtTQUNGO1FBRUQsT0FBTyx1QkFBdUIsQ0FBQztJQUNqQyxDQUFDO0lBRU8seUJBQXlCLENBQy9CLFVBQW9CO1FBRXBCLE9BQU8sQ0FDTCxNQUEyQixFQUMzQixNQUEyQixFQUNsQixFQUFFO1lBQ1gsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztZQUMxRSxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQzFFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzNFLENBQUMsQ0FBQztJQUNKLENBQUM7O2tIQWpWVSxxQkFBcUI7c0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lVSUNvbmZpZ1NlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbHRlcixcbiAgbWFwLFxuICB0YWtlLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb25maWcgfSBmcm9tICcuL21vZGVscy9kYXRhLW1hbmFnZXItY29uZmlnJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VySW5pdEFyZ3MgfSBmcm9tICcuL21vZGVscy9kYXRhLW1hbmFnZXItaW5pdC1hcmdzJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU3RhdGUgfSBmcm9tICcuL21vZGVscy9kYXRhLW1hbmFnZXItc3RhdGUnO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJTdGF0ZUNoYW5nZSB9IGZyb20gJy4vbW9kZWxzL2RhdGEtbWFuYWdlci1zdGF0ZS1jaGFuZ2UnO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJTdGF0ZU9wdGlvbnMgfSBmcm9tICcuL21vZGVscy9kYXRhLW1hbmFnZXItc3RhdGUtb3B0aW9ucyc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclN0YXRlVXBkYXRlRmlsdGVyQXJncyB9IGZyb20gJy4vbW9kZWxzL2RhdGEtbWFuYWdlci1zdGF0ZS11cGRhdGUtZmlsdGVyLWFyZ3MnO1xuaW1wb3J0IHsgU2t5RGF0YVZpZXdDb25maWcgfSBmcm9tICcuL21vZGVscy9kYXRhLXZpZXctY29uZmlnJztcbmltcG9ydCB7IFNreURhdGFWaWV3U3RhdGUgfSBmcm9tICcuL21vZGVscy9kYXRhLXZpZXctc3RhdGUnO1xuXG4vKipcbiAqIFRoZSBkYXRhIG1hbmFnZXIgc2VydmljZSBwcm92aWRlcyB3YXlzIGZvciBkYXRhIHZpZXdzLCB0b29sYmFyIGl0ZW1zLCBhbmQgbW9yZSB0byBzdGF5IHVwIHRvIGRhdGVcbiAqIHdpdGggdGhlIGFjdGl2ZSB2aWV3IElELCBkYXRhIG1hbmFnZXIgY29uZmlnLCByZWdpc3RlcmVkIHZpZXdzIGFuZCB0aGVpciBjb25maWdzLCBhbmQgZGF0YSBzdGF0ZS5cbiAqIFRoZXJlIGFyZSBtZXRob2RzIHRvIGdldCBjdXJyZW50IHZhbHVlcywgdXBkYXRlIHZhbHVlcywgYW5kIGdldCBzdWJzY3JpcHRpb25zIHRvIHRoZSBjaGFuZ2luZyB2YWx1ZXMuPGJyLz4gPGJyLz5cbiAqIFByb3ZpZGUgdGhpcyBzZXJ2aWNlIGF0IHRoZSBjb21wb25lbnQgbGV2ZWwgZm9yIGVhY2ggaW5zdGFuY2Ugb2YgYSBkYXRhIG1hbmFnZXIuIERvIG5vdFxuICogcHJvdmlkZSBpdCBhdCB0aGUgbW9kdWxlIGxldmVsIG9yIGluIGBhcHAtZXh0cmFzYC4gVGhpcyBhbGxvd3MgbXVsdGlwbGUgZGF0YVxuICogbWFuYWdlcnMgdG8gYmUgdXNlZCBhbmQgc2VsZi1jb250YWluZWQuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwdWJsaWMgdmlld2tlZXBlckNsYXNzZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHtcbiAgICBbdmlld0lkOiBzdHJpbmddOiBzdHJpbmdbXTtcbiAgfT4oe30pO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZlVmlld0lkID0gbmV3IFJlcGxheVN1YmplY3Q8c3RyaW5nPigxKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRhdGFNYW5hZ2VyQ29uZmlnID1cbiAgICBuZXcgQmVoYXZpb3JTdWJqZWN0PFNreURhdGFNYW5hZ2VyQ29uZmlnPih1bmRlZmluZWQpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdmlld3MgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNreURhdGFWaWV3Q29uZmlnW10+KFtdKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRhdGFTdGF0ZUNoYW5nZSA9XG4gICAgbmV3IFJlcGxheVN1YmplY3Q8U2t5RGF0YU1hbmFnZXJTdGF0ZUNoYW5nZT4oMSk7XG5cbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG4gIHByaXZhdGUgaW5pdFNvdXJjZSA9ICdkYXRhTWFuYWdlclNlcnZpY2VJbml0JztcbiAgcHJpdmF0ZSBpc0luaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1aUNvbmZpZ1NlcnZpY2U6IFNreVVJQ29uZmlnU2VydmljZSkge31cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVWaWV3SWQuY29tcGxldGUoKTtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnLmNvbXBsZXRlKCk7XG4gICAgdGhpcy52aWV3cy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuZGF0YVN0YXRlQ2hhbmdlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBkYXRhIG1hbmFnZXIgd2l0aCB0aGUgZ2l2ZW4gc2V0dGluZ3MgYW5kIHNldHMgYGlzSW5pdGlhbGl6ZWRgIHRvIGB0cnVlYC5cbiAgICogVGhpcyBtdXN0IGJlIGNhbGxlZCBmb3IgdGhlIGRhdGEgbWFuYWdlciB0byByZW5kZXIuXG4gICAqIEBwYXJhbSBhcmdzIFRoZSBpbml0aWFsIGFjdGl2ZSB2aWV3IElELCBkYXRhIG1hbmFnZXIgY29uZmlnLCBhbmQgc3RhdGUgdG8gdXNlIGZvciB0aGUgZGF0YSBtYW5hZ2VyLlxuICAgKiBJZiBhIHNldHRpbmdzIGtleSBpcyBwcm92aWRlZCwgaXQgY2hlY2tzIGZvciBhIHNhdmVkIGRhdGEgc3RhdGUgaW4gdGhlIFNLWSBVSSBjb25maWcgc2VydmljZSBiZWZvcmUgdXNpbmcgdGhlIGRlZmF1bHQgZGF0YSBzdGF0ZVxuICAgKiBhbmQgc2F2ZXMgYW55IHN0YXRlIGNoYW5nZXMgdG8gdGhlIHNlcnZpY2UuXG4gICAqL1xuICBwdWJsaWMgaW5pdERhdGFNYW5hZ2VyKGFyZ3M6IFNreURhdGFNYW5hZ2VySW5pdEFyZ3MpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0luaXRpYWxpemVkKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1RoaXMgZGF0YSBtYW5hZ2VyIGluc3RhbmNlIGhhcyBhbHJlYWR5IGJlZW4gaW5pdGlhbGl6ZWQuJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVmYXVsdERhdGFTdGF0ZSA9IGFyZ3MuZGVmYXVsdERhdGFTdGF0ZTtcbiAgICBjb25zdCBzZXR0aW5nc0tleSA9IGFyZ3Muc2V0dGluZ3NLZXk7XG5cbiAgICB0aGlzLnVwZGF0ZUFjdGl2ZVZpZXdJZChhcmdzLmFjdGl2ZVZpZXdJZCk7XG4gICAgdGhpcy51cGRhdGVEYXRhTWFuYWdlckNvbmZpZyhhcmdzLmRhdGFNYW5hZ2VyQ29uZmlnKTtcblxuICAgIGlmIChzZXR0aW5nc0tleSkge1xuICAgICAgdGhpcy51aUNvbmZpZ1NlcnZpY2VcbiAgICAgICAgLmdldENvbmZpZyhzZXR0aW5nc0tleSwgZGVmYXVsdERhdGFTdGF0ZS5nZXRTdGF0ZU9wdGlvbnMoKSlcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZSgoY29uZmlnOiBTa3lEYXRhTWFuYWdlclN0YXRlT3B0aW9ucykgPT4ge1xuICAgICAgICAgIHRoaXMudXBkYXRlRGF0YVN0YXRlKFxuICAgICAgICAgICAgbmV3IFNreURhdGFNYW5hZ2VyU3RhdGUoY29uZmlnKSxcbiAgICAgICAgICAgIHRoaXMuaW5pdFNvdXJjZVxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVwZGF0ZURhdGFTdGF0ZShkZWZhdWx0RGF0YVN0YXRlLCB0aGlzLmluaXRTb3VyY2UpO1xuICAgIH1cblxuICAgIGlmIChzZXR0aW5nc0tleSkge1xuICAgICAgdGhpcy5nZXREYXRhU3RhdGVVcGRhdGVzKHRoaXMuaW5pdFNvdXJjZSlcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKChzdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSkgPT4ge1xuICAgICAgICAgIHRoaXMudWlDb25maWdTZXJ2aWNlXG4gICAgICAgICAgICAuc2V0Q29uZmlnKHNldHRpbmdzS2V5LCBzdGF0ZS5nZXRTdGF0ZU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgICAgICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgICAgIChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ0NvdWxkIG5vdCBzYXZlIGRhdGEgbWFuYWdlciBzZXR0aW5ncy4nKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oZXJyKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIGEgdmlldyB3aXRoaW4gdGhlIGRhdGEgbWFuYWdlci4gVGhpcyBtdXN0IGJlIGNhbGxlZCBmb3IgZWFjaCB2aWV3IGZvciB0aGUgdmlld3MgdG8gYXBwZWFyIHdpdGhpbiB0aGUgZGF0YSBtYW5hZ2VyLlxuICAgKiBAcGFyYW0gdmlld0NvbmZpZyBUaGUgU2t5RGF0YVZpZXdDb25maWcgc2V0dGluZ3MgZm9yIHRoZSB2aWV3IGJlaW5nIHJlZ2lzdGVyZWQuXG4gICAqL1xuICBwdWJsaWMgaW5pdERhdGFWaWV3KHZpZXdDb25maWc6IFNreURhdGFWaWV3Q29uZmlnKTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudFZpZXdzOiBTa3lEYXRhVmlld0NvbmZpZ1tdID0gdGhpcy52aWV3cy52YWx1ZTtcblxuICAgIGlmICh0aGlzLmdldFZpZXdCeUlkKHZpZXdDb25maWcuaWQpKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBBIGRhdGEgbWFuYWdlciB2aWV3IHdpdGggdGhlIGlkICR7dmlld0NvbmZpZy5pZH0gaGFzIGFscmVhZHkgYmVlbiBpbml0aWFsaXplZC5gXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGN1cnJlbnRWaWV3cy5wdXNoKHZpZXdDb25maWcpO1xuICAgIHRoaXMudmlld3MubmV4dChjdXJyZW50Vmlld3MpO1xuXG4gICAgLy8gV2hlbiB0aGUgaW5pdGlhbCBhY3RpdmVWaWV3SWQgaXMgc2V0IHRoZXJlIGFyZSBubyB2aWV3cyByZWdpc3RlcmVkLiBXZSBoYXZlIHRvIHJlLWVtaXRcbiAgICAvLyB0aGUgYWN0aXZlSWQgc28gdGhlIG5ld2x5IHJlZ2lzdGVyZWQgdmlldyBpcyBub3RpZmllZCB0aGF0IGl0IGlzIGFjdGl2ZS5cbiAgICB0aGlzLmFjdGl2ZVZpZXdJZC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoaWQpID0+IHtcbiAgICAgIHRoaXMuYWN0aXZlVmlld0lkLm5leHQoaWQpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhU3RhdGVDaGFuZ2VcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChjaGFuZ2UpID0+IHtcbiAgICAgICAgY29uc3QgZGF0YVN0YXRlID0gY2hhbmdlLmRhdGFTdGF0ZTtcbiAgICAgICAgY29uc3QgY3VycmVudFZpZXdTdGF0ZSA9IGRhdGFTdGF0ZS5nZXRWaWV3U3RhdGVCeUlkKHZpZXdDb25maWcuaWQpO1xuXG4gICAgICAgIGlmICghY3VycmVudFZpZXdTdGF0ZSkge1xuICAgICAgICAgIGNvbnN0IG5ld1ZpZXdTdGF0ZSA9IG5ldyBTa3lEYXRhVmlld1N0YXRlKHsgdmlld0lkOiB2aWV3Q29uZmlnLmlkIH0pO1xuXG4gICAgICAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHZpZXcgc3RhdGUncyBhdmFpbGFibGUgY29sdW1ucyBtYXRjaCB3aXRoIHRoZSB2aWV3IGNvbmZpZy4gQWxzbyxcbiAgICAgICAgICAvLyBhZGQgY29sdW1ucyB0byB0aGUgYGRpc3BsYXllZENvbHVtbklkc2AgYXMgbG9uZyBhcyB0aGV5IGFyZSBub3QgYGluaXRpYWxIaWRlYFxuICAgICAgICAgIGlmICh2aWV3Q29uZmlnLmNvbHVtbk9wdGlvbnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbHVtbklkcyA9IHZpZXdDb25maWcuY29sdW1uT3B0aW9ucy5tYXAoKGNvbHVtbk9wdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbk9wdGlvbnMuaWQ7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IGRpc3BsYXllZENvbHVtbklkcyA9IHZpZXdDb25maWcuY29sdW1uT3B0aW9uc1xuICAgICAgICAgICAgICAuZmlsdGVyKChjb2x1bW5PcHRpb24pID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gIWNvbHVtbk9wdGlvbi5pbml0aWFsSGlkZTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLm1hcCgoY29sdW1uT3B0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbk9wdGlvbi5pZDtcbiAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIG5ld1ZpZXdTdGF0ZS5jb2x1bW5JZHMgPSBjb2x1bW5JZHM7XG4gICAgICAgICAgICBuZXdWaWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzID0gZGlzcGxheWVkQ29sdW1uSWRzO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCBuZXdEYXRhU3RhdGUgPSBkYXRhU3RhdGUuYWRkT3JVcGRhdGVWaWV3KFxuICAgICAgICAgICAgdmlld0NvbmZpZy5pZCxcbiAgICAgICAgICAgIG5ld1ZpZXdTdGF0ZVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICB0aGlzLnVwZGF0ZURhdGFTdGF0ZShuZXdEYXRhU3RhdGUsIHRoaXMuaW5pdFNvdXJjZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgY3VycmVudEF2YWlsYWJsZUNvbHVtbklkcyA9IHZpZXdDb25maWcuY29sdW1uT3B0aW9ucz8ubWFwKFxuICAgICAgICAgICAgKGNvbHVtbk9wdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbk9wdGlvbnMuaWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcblxuICAgICAgICAgIC8vIEVuc3VyZSB0aGF0IHRoZSB2aWV3IHN0YXRlJ3MgYXZhaWxhYmxlIGNvbHVtbnMgbWF0Y2ggd2l0aCB0aGUgdmlldyBjb25maWcuIEFsc28sXG4gICAgICAgICAgLy8gYWRkIG5ldyBjb2x1bW5zIHRvIHRoZSBgZGlzcGxheWVkQ29sdW1uSWRzYCBhcyBsb25nIGFzIHRoZXkgYXJlIG5vdCBgaW5pdGlhbEhpZGVgLlxuICAgICAgICAgIC8vIFdlIG9ubHkgYWRkIGNvbHVtbnMgdG8gYGRpc3BsYXllZENvbHVtbnNJZHNgIGlmIHdlIGhhZCBwcmV2aW91c2x5IHRyYWNrZWRcbiAgICAgICAgICAvLyBgY29sdW1uSWRzYCB0byBhdm9pZCBicmVha2luZyBjaGFuZ2VzLlxuICAgICAgICAgIGlmIChjdXJyZW50Vmlld1N0YXRlLmNvbHVtbklkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBsZXQgbmV3Q29sdW1uSWRzID0gY3VycmVudEF2YWlsYWJsZUNvbHVtbklkcy5maWx0ZXIoXG4gICAgICAgICAgICAgIChpZCkgPT4gY3VycmVudFZpZXdTdGF0ZS5jb2x1bW5JZHMuaW5kZXhPZihpZCkgPCAwXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbmV3Q29sdW1uSWRzID0gbmV3Q29sdW1uSWRzLmZpbHRlcigoY29sdW1uSWQpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIHZpZXdDb25maWcuY29sdW1uT3B0aW9ucy5maW5kKFxuICAgICAgICAgICAgICAgIChjb2x1bW5PcHRpb24pID0+XG4gICAgICAgICAgICAgICAgICBjb2x1bW5PcHRpb24uaWQgPT09IGNvbHVtbklkICYmICFjb2x1bW5PcHRpb24uaW5pdGlhbEhpZGVcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAvLyBBZGQgdGhlIGNvbHVtbiBJRHMgdGhhdCBub3cgZXhpc3QgdG8gdGhlIGRhdGEgbWFuYWdlciBzdGF0ZSBib3RoIGFzIGF2YWlsYWJsZVxuICAgICAgICAgICAgLy8gYW5kIGFzIHNob3duLlxuICAgICAgICAgICAgY3VycmVudFZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMgPVxuICAgICAgICAgICAgICBjdXJyZW50Vmlld1N0YXRlLmRpc3BsYXllZENvbHVtbklkcy5jb25jYXQobmV3Q29sdW1uSWRzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gQWRkIHRoZSBjb2x1bW4gSURzIHRoYXQgbm93IGV4aXN0IHRvIHRoZSBkYXRhIG1hbmFnZXIgc3RhdGUgYm90aCBhcyBhdmFpbGFibGVcbiAgICAgICAgICAvLyBhbmQgYXMgc2hvd24uXG4gICAgICAgICAgY3VycmVudFZpZXdTdGF0ZS5jb2x1bW5JZHMgPSBjdXJyZW50QXZhaWxhYmxlQ29sdW1uSWRzO1xuXG4gICAgICAgICAgY29uc3QgbmV3RGF0YVN0YXRlID0gZGF0YVN0YXRlLmFkZE9yVXBkYXRlVmlldyhcbiAgICAgICAgICAgIHZpZXdDb25maWcuaWQsXG4gICAgICAgICAgICBjdXJyZW50Vmlld1N0YXRlXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIHRoaXMudXBkYXRlRGF0YVN0YXRlKG5ld0RhdGFTdGF0ZSwgdGhpcy5pbml0U291cmNlKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gb2JzZXJ2YWJsZSBvZiBkYXRhIHN0YXRlIGNoYW5nZXMgdGhhdCB2aWV3cyBhbmQgb3RoZXIgZGF0YSBtYW5hZ2VyIGVudGl0aWVzIGNhbiBzdWJzY3JpYmUgdG8uXG4gICAqIEl0IGV4Y2x1ZGVzIHVwZGF0ZXMgb3JpZ2luYXRpbmcgZnJvbSB0aGUgcHJvdmlkZWQgc291cmNlLiBUaGlzIGFsbG93cyBzdWJzY3JpYmVycyB0byBvbmx5IHJlc3BvbmQgdG9cbiAgICogY2hhbmdlcyB0aGV5IGRpZCBub3QgY3JlYXRlIGFuZCBoZWxwcyBwcmV2ZW50IGluZmluaXRlIGxvb3BzIG9mIHVwZGF0ZXMgYW5kIHJlc3BvbnNlcy5cbiAgICogQHBhcmFtIHNvdXJjZUlkIFRoZSBJRCBvZiB0aGUgZW50aXR5IHN1YnNjcmliaW5nIHRvIGRhdGEgc3RhdGUgdXBkYXRlcy4gVGhpcyBjYW4gYmUgYW55IHZhbHVlIHlvdSBjaG9vc2VcbiAgICogYnV0IHNob3VsZCBiZSB1bmlxdWUgd2l0aGluIHRoZSBkYXRhIG1hbmFnZXIgaW5zdGFuY2UgYW5kIHNob3VsZCBhbHNvIGJlIHVzZWQgd2hlbiB0aGF0IGVudGl0eSB1cGRhdGVzIHRoZSBzdGF0ZS5cbiAgICovXG4gIHB1YmxpYyBnZXREYXRhU3RhdGVVcGRhdGVzKFxuICAgIHNvdXJjZUlkOiBzdHJpbmcsXG4gICAgdXBkYXRlRmlsdGVyPzogU2t5RGF0YU1hbmFnZXJTdGF0ZVVwZGF0ZUZpbHRlckFyZ3NcbiAgKTogT2JzZXJ2YWJsZTxTa3lEYXRhTWFuYWdlclN0YXRlPiB7XG4gICAgLy8gZmlsdGVyIG91dCBldmVudHMgZnJvbSB0aGUgcHJvdmlkZWQgc291cmNlIGFuZCBlbWl0IGp1c3QgdGhlIGRhdGFTdGF0ZVxuICAgIGlmICh1cGRhdGVGaWx0ZXIpIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTdGF0ZUNoYW5nZS5waXBlKFxuICAgICAgICBmaWx0ZXIoKHN0YXRlQ2hhbmdlKSA9PiBzb3VyY2VJZCAhPT0gc3RhdGVDaGFuZ2Uuc291cmNlKSxcbiAgICAgICAgbWFwKChzdGF0ZUNoYW5nZSkgPT4gc3RhdGVDaGFuZ2UuZGF0YVN0YXRlKSxcbiAgICAgICAgdXBkYXRlRmlsdGVyLmNvbXBhcmF0b3JcbiAgICAgICAgICA/IGRpc3RpbmN0VW50aWxDaGFuZ2VkKHVwZGF0ZUZpbHRlci5jb21wYXJhdG9yKVxuICAgICAgICAgIDogZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgIHRoaXMuZ2V0RGVmYXVsdFN0YXRlQ29tcGFyYXRvcih1cGRhdGVGaWx0ZXIucHJvcGVydGllcylcbiAgICAgICAgICAgIClcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTdGF0ZUNoYW5nZS5waXBlKFxuICAgICAgICBmaWx0ZXIoKHN0YXRlQ2hhbmdlKSA9PiBzb3VyY2VJZCAhPT0gc3RhdGVDaGFuZ2Uuc291cmNlKSxcbiAgICAgICAgbWFwKChzdGF0ZUNoYW5nZSkgPT4gc3RhdGVDaGFuZ2UuZGF0YVN0YXRlKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgZGF0YSBzdGF0ZSBhbmQgZW1pdHMgYSBuZXcgdmFsdWUgdG8gZW50aXRpZXMgc3Vic2NyaWJlZCB0byBkYXRhIHN0YXRlIGNoYW5nZXMuXG4gICAqIEBwYXJhbSBzdGF0ZSBUaGUgbmV3IGBTa3lEYXRhTWFuYWdlclN0YXRlYCB2YWx1ZS5cbiAgICogQHBhcmFtIHNvdXJjZUlkIFRoZSBJRCBvZiB0aGUgZW50aXR5IHVwZGF0aW5nIHRoZSBzdGF0ZS4gVGhpcyBjYW4gYmUgYW55IHZhbHVlIHlvdSBjaG9vc2UsXG4gICAqIGJ1dCBzaG91bGQgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZGF0YSBtYW5hZ2VyIGluc3RhbmNlIGFuZCBzaG91bGQgYWxzbyBiZSB1c2VkIHdoZW4gdGhhdCBlbnRpdHlcbiAgICogc3Vic2NyaWJlcyB0byBzdGF0ZSBjaGFuZ2VzIGZyb20gYGdldERhdGFTdGF0ZVVwZGF0ZXNgLlxuICAgKi9cbiAgcHVibGljIHVwZGF0ZURhdGFTdGF0ZShzdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSwgc291cmNlSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1N0YXRlID0gbmV3IFNreURhdGFNYW5hZ2VyU3RhdGUoc3RhdGUuZ2V0U3RhdGVPcHRpb25zKCkpO1xuICAgIGNvbnN0IG5ld1N0YXRlQ2hhbmdlID0gbmV3IFNreURhdGFNYW5hZ2VyU3RhdGVDaGFuZ2UobmV3U3RhdGUsIHNvdXJjZUlkKTtcblxuICAgIHRoaXMuZGF0YVN0YXRlQ2hhbmdlLm5leHQobmV3U3RhdGVDaGFuZ2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgYFNreURhdGFNYW5hZ2VyQ29uZmlnYC5cbiAgICovXG4gIHB1YmxpYyBnZXRDdXJyZW50RGF0YU1hbmFnZXJDb25maWcoKTogU2t5RGF0YU1hbmFnZXJDb25maWcge1xuICAgIHJldHVybiB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gb2JzZXJ2YWJsZSBvZiBkYXRhIG1hbmFnZXIgY29uZmlnIGNoYW5nZXMgdGhhdCB2aWV3cyBhbmQgb3RoZXIgZGF0YSBtYW5hZ2VyIGVudGl0aWVzIGNhbiBzdWJzY3JpYmUgdG8uXG4gICAqL1xuICBwdWJsaWMgZ2V0RGF0YU1hbmFnZXJDb25maWdVcGRhdGVzKCk6IE9ic2VydmFibGU8U2t5RGF0YU1hbmFnZXJDb25maWc+IHtcbiAgICByZXR1cm4gdGhpcy5kYXRhTWFuYWdlckNvbmZpZztcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBkYXRhIG1hbmFnZXIgY29uZmlnIGFuZCBlbWl0cyBhIG5ldyB2YWx1ZSB0byBlbnRpdGllcyBzdWJzY3JpYmVkIHRvIGRhdGEgY29uZmlnIGNoYW5nZXMuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgbmV3IGBTa3lEYXRhTWFuYWdlckNvbmZpZ2AgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlRGF0YU1hbmFnZXJDb25maWcodmFsdWU6IFNreURhdGFNYW5hZ2VyQ29uZmlnKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlckNvbmZpZy5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIG9ic2VydmFibGUgb2YgZGF0YSB2aWV3IGNvbmZpZyBjaGFuZ2VzIHRoYXQgdmlld3MgYW5kIG90aGVyIGRhdGEgbWFuYWdlciBlbnRpdGllcyBjYW4gc3Vic2NyaWJlIHRvLlxuICAgKi9cbiAgcHVibGljIGdldERhdGFWaWV3c1VwZGF0ZXMoKTogT2JzZXJ2YWJsZTxTa3lEYXRhVmlld0NvbmZpZ1tdPiB7XG4gICAgcmV0dXJuIHRoaXMudmlld3M7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhbiBvYnNlcnZhYmxlIG9mIHRoZSBhY3RpdmUgdmlldyBJRCB0aGF0IHZpZXdzIGFuZCBvdGhlciBkYXRhIG1hbmFnZXIgZW50aXRpZXMgY2FuIHN1YnNjcmliZSB0by5cbiAgICovXG4gIHB1YmxpYyBnZXRBY3RpdmVWaWV3SWRVcGRhdGVzKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlVmlld0lkO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGFjdGl2ZSB2aWV3IElELiBUaGUgZGF0YSBtYW5hZ2VyIGNoYW5nZXMgdGhlIGRpc3BsYXllZCB2aWV3LlxuICAgKiBAcGFyYW0gaWQgVGhlIG5ldyBhY3RpdmUgdmlldyBJRC5cbiAgICovXG4gIHB1YmxpYyB1cGRhdGVBY3RpdmVWaWV3SWQoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlVmlld0lkLm5leHQoaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGBTa3lEYXRhVmlld0NvbmZpZ2AgZm9yIHRoZSBnaXZlbiB2aWV3IElELlxuICAgKiBAcGFyYW0gdmlld0lkIFRoZSBJRCBvZiB0aGUgdmlldyBjb25maWcgdG8gZ2V0LlxuICAgKi9cbiAgcHVibGljIGdldFZpZXdCeUlkKHZpZXdJZDogc3RyaW5nKTogU2t5RGF0YVZpZXdDb25maWcge1xuICAgIGNvbnN0IGN1cnJlbnRWaWV3czogU2t5RGF0YVZpZXdDb25maWdbXSA9IHRoaXMudmlld3MudmFsdWU7XG4gICAgY29uc3Qgdmlld0NvbmZpZzogU2t5RGF0YVZpZXdDb25maWcgPSBjdXJyZW50Vmlld3MuZmluZChcbiAgICAgICh2aWV3KSA9PiB2aWV3LmlkID09PSB2aWV3SWRcbiAgICApO1xuXG4gICAgcmV0dXJuIHZpZXdDb25maWc7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgZ2l2ZW4gdmlldyBjb25maWcuIFRoZSByZWdpc3RlcmVkIHZpZXcgd2l0aCB0aGUgc2FtZSBJRCBpcyB1cGRhdGVkIHRvIHRoZVxuICAgKiBwcm92aWRlZCBjb25maWcsIHNvIGluY2x1ZGUgYWxsIHByb3BlcnRpZXMgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZXkgY2hhbmdlZC4gSWYgdGhlXG4gICAqIHZpZXcgd2FzIG5vdCBpbml0aWFsaXplZCBhbHJlYWR5LCBubyB1cGRhdGUgaGFwcGVucy5cbiAgICogQHBhcmFtIHZpZXcgVGhlIG5ldyBgU2t5RGF0YVZpZXdDb25maWdgIGNvbnRhaW5pbmcgYWxsIHByb3BlcnRpZXMuXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlVmlld0NvbmZpZyh2aWV3OiBTa3lEYXRhVmlld0NvbmZpZyk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRWaWV3czogU2t5RGF0YVZpZXdDb25maWdbXSA9IHRoaXMudmlld3MudmFsdWU7XG4gICAgY29uc3QgZXhpc3RpbmdWaWV3SW5kZXggPSBjdXJyZW50Vmlld3MuZmluZEluZGV4KFxuICAgICAgKGN1cnJlbnRWaWV3KSA9PiBjdXJyZW50Vmlldy5pZCA9PT0gdmlldy5pZFxuICAgICk7XG5cbiAgICBpZiAoZXhpc3RpbmdWaWV3SW5kZXggPT09IC0xKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdBIHZpZXcgd2l0aCB0aGUgaWQge2lkfSBkb2VzIG5vdCBleGlzdC4nLCB2aWV3LmlkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3VycmVudFZpZXdzW2V4aXN0aW5nVmlld0luZGV4XSA9IHZpZXc7XG4gICAgICB0aGlzLnZpZXdzLm5leHQoY3VycmVudFZpZXdzKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc2V0Vmlld2tlZXBlckNsYXNzZXModmlld0lkOiBzdHJpbmcsIGNsYXNzZXM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgY29uc3Qgdmlld2tlZXBlckNsYXNzZXMgPSB0aGlzLnZpZXdrZWVwZXJDbGFzc2VzLnZhbHVlO1xuICAgIHZpZXdrZWVwZXJDbGFzc2VzW3ZpZXdJZF0gPSBjbGFzc2VzO1xuXG4gICAgdGhpcy52aWV3a2VlcGVyQ2xhc3Nlcy5uZXh0KHZpZXdrZWVwZXJDbGFzc2VzKTtcbiAgfVxuXG4gIHByaXZhdGUgZmlsdGVyRGF0YVN0YXRlUHJvcGVydGllcyhcbiAgICBzdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSxcbiAgICBwcm9wZXJ0aWVzOiBzdHJpbmdbXVxuICApOiBTa3lEYXRhTWFuYWdlclN0YXRlT3B0aW9ucyB7XG4gICAgY29uc3Qgc3RhdGVQcm9wZXJ0aWVzID0gc3RhdGUuZ2V0U3RhdGVPcHRpb25zKCkgYXMgeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbiAgICBjb25zdCBmaWx0ZXJlZFN0YXRlUHJvcGVydGllczogYW55ID0ge307XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBwcm9wZXJ0aWVzKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzdGF0ZVByb3BlcnRpZXMsIHByb3BlcnR5KSkge1xuICAgICAgICBmaWx0ZXJlZFN0YXRlUHJvcGVydGllc1twcm9wZXJ0eV0gPSBzdGF0ZVByb3BlcnRpZXNbcHJvcGVydHldO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmaWx0ZXJlZFN0YXRlUHJvcGVydGllcztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RGVmYXVsdFN0YXRlQ29tcGFyYXRvcihcbiAgICBwcm9wZXJ0aWVzOiBzdHJpbmdbXVxuICApOiAoc3RhdGUxOiBTa3lEYXRhTWFuYWdlclN0YXRlLCBzdGF0ZTI6IFNreURhdGFNYW5hZ2VyU3RhdGUpID0+IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICBzdGF0ZTE6IFNreURhdGFNYW5hZ2VyU3RhdGUsXG4gICAgICBzdGF0ZTI6IFNreURhdGFNYW5hZ2VyU3RhdGVcbiAgICApOiBib29sZWFuID0+IHtcbiAgICAgIGNvbnN0IGZpbHRlcmVkU3RhdGUxID0gdGhpcy5maWx0ZXJEYXRhU3RhdGVQcm9wZXJ0aWVzKHN0YXRlMSwgcHJvcGVydGllcyk7XG4gICAgICBjb25zdCBmaWx0ZXJlZFN0YXRlMiA9IHRoaXMuZmlsdGVyRGF0YVN0YXRlUHJvcGVydGllcyhzdGF0ZTIsIHByb3BlcnRpZXMpO1xuICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGZpbHRlcmVkU3RhdGUxKSA9PT0gSlNPTi5zdHJpbmdpZnkoZmlsdGVyZWRTdGF0ZTIpO1xuICAgIH07XG4gIH1cbn1cbiJdfQ==
277
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1tYW5hZ2VyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0YS1tYW5hZ2VyL3NyYy9saWIvbW9kdWxlcy9kYXRhLW1hbmFnZXIvZGF0YS1tYW5hZ2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUN0RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFakQsT0FBTyxFQUFFLGVBQWUsRUFBYyxhQUFhLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNFLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsTUFBTSxFQUNOLEdBQUcsRUFDSCxJQUFJLEVBQ0osU0FBUyxHQUNWLE1BQU0sZ0JBQWdCLENBQUM7QUFJeEIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFJL0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7OztBQUU1RDs7Ozs7OztHQU9HO0FBRUgsTUFBTSxPQUFPLHFCQUFxQjtJQW1CaEMsWUFBb0IsZUFBbUM7UUFBbkMsb0JBQWUsR0FBZixlQUFlLENBQW9CO1FBbEJoRCxzQkFBaUIsR0FBRyxJQUFJLGVBQWUsQ0FFM0MsRUFBRSxDQUFDLENBQUM7UUFFVSxpQkFBWSxHQUFHLElBQUksYUFBYSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBRTVDLHNCQUFpQixHQUNoQyxJQUFJLGVBQWUsQ0FBdUIsU0FBUyxDQUFDLENBQUM7UUFFdEMsVUFBSyxHQUFHLElBQUksZUFBZSxDQUFzQixFQUFFLENBQUMsQ0FBQztRQUVyRCxvQkFBZSxHQUM5QixJQUFJLGFBQWEsQ0FBNEIsQ0FBQyxDQUFDLENBQUM7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Q2pDLDBCQUEwQjtZQUMxQixJQUFJLE1BQU0sQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsUUFBUSxDQUFDLEVBQUU7Z0JBQ25FLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxHQUFHLGVBQWUsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUMvRDtTQUNGO1FBRUQsT0FBTyx1QkFBdUIsQ0FBQztJQUNqQyxDQUFDO0lBRU8seUJBQXlCLENBQy9CLFVBQW9CO1FBRXBCLE9BQU8sQ0FDTCxNQUEyQixFQUMzQixNQUEyQixFQUNsQixFQUFFO1lBQ1gsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxVQUFVLENBQUMsQ0FBQztZQUMxRSxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMseUJBQXlCLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQzFFLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzNFLENBQUMsQ0FBQztJQUNKLENBQUM7O2tIQWpWVSxxQkFBcUI7c0hBQXJCLHFCQUFxQjsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lVSUNvbmZpZ1NlcnZpY2UgfSBmcm9tICdAc2t5dXgvY29yZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZpbHRlcixcbiAgbWFwLFxuICB0YWtlLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJDb25maWcgfSBmcm9tICcuL21vZGVscy9kYXRhLW1hbmFnZXItY29uZmlnJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VySW5pdEFyZ3MgfSBmcm9tICcuL21vZGVscy9kYXRhLW1hbmFnZXItaW5pdC1hcmdzJztcbmltcG9ydCB7IFNreURhdGFNYW5hZ2VyU3RhdGUgfSBmcm9tICcuL21vZGVscy9kYXRhLW1hbmFnZXItc3RhdGUnO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJTdGF0ZUNoYW5nZSB9IGZyb20gJy4vbW9kZWxzL2RhdGEtbWFuYWdlci1zdGF0ZS1jaGFuZ2UnO1xuaW1wb3J0IHsgU2t5RGF0YU1hbmFnZXJTdGF0ZU9wdGlvbnMgfSBmcm9tICcuL21vZGVscy9kYXRhLW1hbmFnZXItc3RhdGUtb3B0aW9ucyc7XG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclN0YXRlVXBkYXRlRmlsdGVyQXJncyB9IGZyb20gJy4vbW9kZWxzL2RhdGEtbWFuYWdlci1zdGF0ZS11cGRhdGUtZmlsdGVyLWFyZ3MnO1xuaW1wb3J0IHsgU2t5RGF0YVZpZXdDb25maWcgfSBmcm9tICcuL21vZGVscy9kYXRhLXZpZXctY29uZmlnJztcbmltcG9ydCB7IFNreURhdGFWaWV3U3RhdGUgfSBmcm9tICcuL21vZGVscy9kYXRhLXZpZXctc3RhdGUnO1xuXG4vKipcbiAqIFRoZSBkYXRhIG1hbmFnZXIgc2VydmljZSBwcm92aWRlcyB3YXlzIGZvciBkYXRhIHZpZXdzLCB0b29sYmFyIGl0ZW1zLCBhbmQgbW9yZSB0byBzdGF5IHVwIHRvIGRhdGVcbiAqIHdpdGggdGhlIGFjdGl2ZSB2aWV3IElELCBkYXRhIG1hbmFnZXIgY29uZmlnLCByZWdpc3RlcmVkIHZpZXdzIGFuZCB0aGVpciBjb25maWdzLCBhbmQgZGF0YSBzdGF0ZS5cbiAqIFRoZXJlIGFyZSBtZXRob2RzIHRvIGdldCBjdXJyZW50IHZhbHVlcywgdXBkYXRlIHZhbHVlcywgYW5kIGdldCBzdWJzY3JpcHRpb25zIHRvIHRoZSBjaGFuZ2luZyB2YWx1ZXMuPGJyLz4gPGJyLz5cbiAqIFByb3ZpZGUgdGhpcyBzZXJ2aWNlIGF0IHRoZSBjb21wb25lbnQgbGV2ZWwgZm9yIGVhY2ggaW5zdGFuY2Ugb2YgYSBkYXRhIG1hbmFnZXIuIERvIG5vdFxuICogcHJvdmlkZSBpdCBhdCB0aGUgbW9kdWxlIGxldmVsIG9yIGluIGBhcHAtZXh0cmFzYC4gVGhpcyBhbGxvd3MgbXVsdGlwbGUgZGF0YVxuICogbWFuYWdlcnMgdG8gYmUgdXNlZCBhbmQgc2VsZi1jb250YWluZWQuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwdWJsaWMgdmlld2tlZXBlckNsYXNzZXMgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHtcbiAgICBbdmlld0lkOiBzdHJpbmddOiBzdHJpbmdbXTtcbiAgfT4oe30pO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZlVmlld0lkID0gbmV3IFJlcGxheVN1YmplY3Q8c3RyaW5nPigxKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRhdGFNYW5hZ2VyQ29uZmlnID1cbiAgICBuZXcgQmVoYXZpb3JTdWJqZWN0PFNreURhdGFNYW5hZ2VyQ29uZmlnPih1bmRlZmluZWQpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgdmlld3MgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNreURhdGFWaWV3Q29uZmlnW10+KFtdKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGRhdGFTdGF0ZUNoYW5nZSA9XG4gICAgbmV3IFJlcGxheVN1YmplY3Q8U2t5RGF0YU1hbmFnZXJTdGF0ZUNoYW5nZT4oMSk7XG5cbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gIHByaXZhdGUgaW5pdFNvdXJjZSA9ICdkYXRhTWFuYWdlclNlcnZpY2VJbml0JztcbiAgcHJpdmF0ZSBpc0luaXRpYWxpemVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1aUNvbmZpZ1NlcnZpY2U6IFNreVVJQ29uZmlnU2VydmljZSkge31cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5hY3RpdmVWaWV3SWQuY29tcGxldGUoKTtcbiAgICB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnLmNvbXBsZXRlKCk7XG4gICAgdGhpcy52aWV3cy5jb21wbGV0ZSgpO1xuICAgIHRoaXMuZGF0YVN0YXRlQ2hhbmdlLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5fbmdVbnN1YnNjcmliZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIHRoZSBkYXRhIG1hbmFnZXIgd2l0aCB0aGUgZ2l2ZW4gc2V0dGluZ3MgYW5kIHNldHMgYGlzSW5pdGlhbGl6ZWRgIHRvIGB0cnVlYC5cbiAgICogVGhpcyBtdXN0IGJlIGNhbGxlZCBmb3IgdGhlIGRhdGEgbWFuYWdlciB0byByZW5kZXIuXG4gICAqIEBwYXJhbSBhcmdzIFRoZSBpbml0aWFsIGFjdGl2ZSB2aWV3IElELCBkYXRhIG1hbmFnZXIgY29uZmlnLCBhbmQgc3RhdGUgdG8gdXNlIGZvciB0aGUgZGF0YSBtYW5hZ2VyLlxuICAgKiBJZiBhIHNldHRpbmdzIGtleSBpcyBwcm92aWRlZCwgaXQgY2hlY2tzIGZvciBhIHNhdmVkIGRhdGEgc3RhdGUgaW4gdGhlIFNLWSBVSSBjb25maWcgc2VydmljZSBiZWZvcmUgdXNpbmcgdGhlIGRlZmF1bHQgZGF0YSBzdGF0ZVxuICAgKiBhbmQgc2F2ZXMgYW55IHN0YXRlIGNoYW5nZXMgdG8gdGhlIHNlcnZpY2UuXG4gICAqL1xuICBwdWJsaWMgaW5pdERhdGFNYW5hZ2VyKGFyZ3M6IFNreURhdGFNYW5hZ2VySW5pdEFyZ3MpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5pc0luaXRpYWxpemVkKSB7XG4gICAgICBjb25zb2xlLndhcm4oJ1RoaXMgZGF0YSBtYW5hZ2VyIGluc3RhbmNlIGhhcyBhbHJlYWR5IGJlZW4gaW5pdGlhbGl6ZWQuJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgY29uc3QgZGVmYXVsdERhdGFTdGF0ZSA9IGFyZ3MuZGVmYXVsdERhdGFTdGF0ZTtcbiAgICBjb25zdCBzZXR0aW5nc0tleSA9IGFyZ3Muc2V0dGluZ3NLZXk7XG5cbiAgICB0aGlzLnVwZGF0ZUFjdGl2ZVZpZXdJZChhcmdzLmFjdGl2ZVZpZXdJZCk7XG4gICAgdGhpcy51cGRhdGVEYXRhTWFuYWdlckNvbmZpZyhhcmdzLmRhdGFNYW5hZ2VyQ29uZmlnKTtcblxuICAgIGlmIChzZXR0aW5nc0tleSkge1xuICAgICAgdGhpcy51aUNvbmZpZ1NlcnZpY2VcbiAgICAgICAgLmdldENvbmZpZyhzZXR0aW5nc0tleSwgZGVmYXVsdERhdGFTdGF0ZS5nZXRTdGF0ZU9wdGlvbnMoKSlcbiAgICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgICAgLnN1YnNjcmliZSgoY29uZmlnOiBTa3lEYXRhTWFuYWdlclN0YXRlT3B0aW9ucykgPT4ge1xuICAgICAgICAgIHRoaXMudXBkYXRlRGF0YVN0YXRlKFxuICAgICAgICAgICAgbmV3IFNreURhdGFNYW5hZ2VyU3RhdGUoY29uZmlnKSxcbiAgICAgICAgICAgIHRoaXMuaW5pdFNvdXJjZVxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVwZGF0ZURhdGFTdGF0ZShkZWZhdWx0RGF0YVN0YXRlLCB0aGlzLmluaXRTb3VyY2UpO1xuICAgIH1cblxuICAgIGlmIChzZXR0aW5nc0tleSkge1xuICAgICAgdGhpcy5nZXREYXRhU3RhdGVVcGRhdGVzKHRoaXMuaW5pdFNvdXJjZSlcbiAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX25nVW5zdWJzY3JpYmUpKVxuICAgICAgICAuc3Vic2NyaWJlKChzdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSkgPT4ge1xuICAgICAgICAgIHRoaXMudWlDb25maWdTZXJ2aWNlXG4gICAgICAgICAgICAuc2V0Q29uZmlnKHNldHRpbmdzS2V5LCBzdGF0ZS5nZXRTdGF0ZU9wdGlvbnMoKSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9uZ1Vuc3Vic2NyaWJlKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgICAgICAgICAgICAgKCkgPT4ge30sXG4gICAgICAgICAgICAgIChlcnIpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oJ0NvdWxkIG5vdCBzYXZlIGRhdGEgbWFuYWdlciBzZXR0aW5ncy4nKTtcbiAgICAgICAgICAgICAgICBjb25zb2xlLndhcm4oZXJyKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemVzIGEgdmlldyB3aXRoaW4gdGhlIGRhdGEgbWFuYWdlci4gVGhpcyBtdXN0IGJlIGNhbGxlZCBmb3IgZWFjaCB2aWV3IGZvciB0aGUgdmlld3MgdG8gYXBwZWFyIHdpdGhpbiB0aGUgZGF0YSBtYW5hZ2VyLlxuICAgKiBAcGFyYW0gdmlld0NvbmZpZyBUaGUgU2t5RGF0YVZpZXdDb25maWcgc2V0dGluZ3MgZm9yIHRoZSB2aWV3IGJlaW5nIHJlZ2lzdGVyZWQuXG4gICAqL1xuICBwdWJsaWMgaW5pdERhdGFWaWV3KHZpZXdDb25maWc6IFNreURhdGFWaWV3Q29uZmlnKTogdm9pZCB7XG4gICAgY29uc3QgY3VycmVudFZpZXdzOiBTa3lEYXRhVmlld0NvbmZpZ1tdID0gdGhpcy52aWV3cy52YWx1ZTtcblxuICAgIGlmICh0aGlzLmdldFZpZXdCeUlkKHZpZXdDb25maWcuaWQpKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgIGBBIGRhdGEgbWFuYWdlciB2aWV3IHdpdGggdGhlIGlkICR7dmlld0NvbmZpZy5pZH0gaGFzIGFscmVhZHkgYmVlbiBpbml0aWFsaXplZC5gXG4gICAgICApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGN1cnJlbnRWaWV3cy5wdXNoKHZpZXdDb25maWcpO1xuICAgIHRoaXMudmlld3MubmV4dChjdXJyZW50Vmlld3MpO1xuXG4gICAgLy8gV2hlbiB0aGUgaW5pdGlhbCBhY3RpdmVWaWV3SWQgaXMgc2V0IHRoZXJlIGFyZSBubyB2aWV3cyByZWdpc3RlcmVkLiBXZSBoYXZlIHRvIHJlLWVtaXRcbiAgICAvLyB0aGUgYWN0aXZlSWQgc28gdGhlIG5ld2x5IHJlZ2lzdGVyZWQgdmlldyBpcyBub3RpZmllZCB0aGF0IGl0IGlzIGFjdGl2ZS5cbiAgICB0aGlzLmFjdGl2ZVZpZXdJZC5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoaWQpID0+IHtcbiAgICAgIHRoaXMuYWN0aXZlVmlld0lkLm5leHQoaWQpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5kYXRhU3RhdGVDaGFuZ2VcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKChjaGFuZ2UpID0+IHtcbiAgICAgICAgY29uc3QgZGF0YVN0YXRlID0gY2hhbmdlLmRhdGFTdGF0ZTtcbiAgICAgICAgY29uc3QgY3VycmVudFZpZXdTdGF0ZSA9IGRhdGFTdGF0ZS5nZXRWaWV3U3RhdGVCeUlkKHZpZXdDb25maWcuaWQpO1xuXG4gICAgICAgIGlmICghY3VycmVudFZpZXdTdGF0ZSkge1xuICAgICAgICAgIGNvbnN0IG5ld1ZpZXdTdGF0ZSA9IG5ldyBTa3lEYXRhVmlld1N0YXRlKHsgdmlld0lkOiB2aWV3Q29uZmlnLmlkIH0pO1xuXG4gICAgICAgICAgLy8gRW5zdXJlIHRoYXQgdGhlIHZpZXcgc3RhdGUncyBhdmFpbGFibGUgY29sdW1ucyBtYXRjaCB3aXRoIHRoZSB2aWV3IGNvbmZpZy4gQWxzbyxcbiAgICAgICAgICAvLyBhZGQgY29sdW1ucyB0byB0aGUgYGRpc3BsYXllZENvbHVtbklkc2AgYXMgbG9uZyBhcyB0aGV5IGFyZSBub3QgYGluaXRpYWxIaWRlYFxuICAgICAgICAgIGlmICh2aWV3Q29uZmlnLmNvbHVtbk9wdGlvbnMpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbHVtbklkcyA9IHZpZXdDb25maWcuY29sdW1uT3B0aW9ucy5tYXAoKGNvbHVtbk9wdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbk9wdGlvbnMuaWQ7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGNvbnN0IGRpc3BsYXllZENvbHVtbklkcyA9IHZpZXdDb25maWcuY29sdW1uT3B0aW9uc1xuICAgICAgICAgICAgICAuZmlsdGVyKChjb2x1bW5PcHRpb24pID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gIWNvbHVtbk9wdGlvbi5pbml0aWFsSGlkZTtcbiAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgLm1hcCgoY29sdW1uT3B0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbk9wdGlvbi5pZDtcbiAgICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIG5ld1ZpZXdTdGF0ZS5jb2x1bW5JZHMgPSBjb2x1bW5JZHM7XG4gICAgICAgICAgICBuZXdWaWV3U3RhdGUuZGlzcGxheWVkQ29sdW1uSWRzID0gZGlzcGxheWVkQ29sdW1uSWRzO1xuICAgICAgICAgIH1cbiAgICAgICAgICBjb25zdCBuZXdEYXRhU3RhdGUgPSBkYXRhU3RhdGUuYWRkT3JVcGRhdGVWaWV3KFxuICAgICAgICAgICAgdmlld0NvbmZpZy5pZCxcbiAgICAgICAgICAgIG5ld1ZpZXdTdGF0ZVxuICAgICAgICAgICk7XG5cbiAgICAgICAgICB0aGlzLnVwZGF0ZURhdGFTdGF0ZShuZXdEYXRhU3RhdGUsIHRoaXMuaW5pdFNvdXJjZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgY3VycmVudEF2YWlsYWJsZUNvbHVtbklkcyA9IHZpZXdDb25maWcuY29sdW1uT3B0aW9ucz8ubWFwKFxuICAgICAgICAgICAgKGNvbHVtbk9wdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbk9wdGlvbnMuaWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgKTtcblxuICAgICAgICAgIC8vIEVuc3VyZSB0aGF0IHRoZSB2aWV3IHN0YXRlJ3MgYXZhaWxhYmxlIGNvbHVtbnMgbWF0Y2ggd2l0aCB0aGUgdmlldyBjb25maWcuIEFsc28sXG4gICAgICAgICAgLy8gYWRkIG5ldyBjb2x1bW5zIHRvIHRoZSBgZGlzcGxheWVkQ29sdW1uSWRzYCBhcyBsb25nIGFzIHRoZXkgYXJlIG5vdCBgaW5pdGlhbEhpZGVgLlxuICAgICAgICAgIC8vIFdlIG9ubHkgYWRkIGNvbHVtbnMgdG8gYGRpc3BsYXllZENvbHVtbnNJZHNgIGlmIHdlIGhhZCBwcmV2aW91c2x5IHRyYWNrZWRcbiAgICAgICAgICAvLyBgY29sdW1uSWRzYCB0byBhdm9pZCBicmVha2luZyBjaGFuZ2VzLlxuICAgICAgICAgIGlmIChjdXJyZW50Vmlld1N0YXRlLmNvbHVtbklkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBsZXQgbmV3Q29sdW1uSWRzID0gY3VycmVudEF2YWlsYWJsZUNvbHVtbklkcy5maWx0ZXIoXG4gICAgICAgICAgICAgIChpZCkgPT4gY3VycmVudFZpZXdTdGF0ZS5jb2x1bW5JZHMuaW5kZXhPZihpZCkgPCAwXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgbmV3Q29sdW1uSWRzID0gbmV3Q29sdW1uSWRzLmZpbHRlcigoY29sdW1uSWQpID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIHZpZXdDb25maWcuY29sdW1uT3B0aW9ucy5maW5kKFxuICAgICAgICAgICAgICAgIChjb2x1bW5PcHRpb24pID0+XG4gICAgICAgICAgICAgICAgICBjb2x1bW5PcHRpb24uaWQgPT09IGNvbHVtbklkICYmICFjb2x1bW5PcHRpb24uaW5pdGlhbEhpZGVcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAvLyBBZGQgdGhlIGNvbHVtbiBJRHMgdGhhdCBub3cgZXhpc3QgdG8gdGhlIGRhdGEgbWFuYWdlciBzdGF0ZSBib3RoIGFzIGF2YWlsYWJsZVxuICAgICAgICAgICAgLy8gYW5kIGFzIHNob3duLlxuICAgICAgICAgICAgY3VycmVudFZpZXdTdGF0ZS5kaXNwbGF5ZWRDb2x1bW5JZHMgPVxuICAgICAgICAgICAgICBjdXJyZW50Vmlld1N0YXRlLmRpc3BsYXllZENvbHVtbklkcy5jb25jYXQobmV3Q29sdW1uSWRzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLy8gQWRkIHRoZSBjb2x1bW4gSURzIHRoYXQgbm93IGV4aXN0IHRvIHRoZSBkYXRhIG1hbmFnZXIgc3RhdGUgYm90aCBhcyBhdmFpbGFibGVcbiAgICAgICAgICAvLyBhbmQgYXMgc2hvd24uXG4gICAgICAgICAgY3VycmVudFZpZXdTdGF0ZS5jb2x1bW5JZHMgPSBjdXJyZW50QXZhaWxhYmxlQ29sdW1uSWRzO1xuXG4gICAgICAgICAgY29uc3QgbmV3RGF0YVN0YXRlID0gZGF0YVN0YXRlLmFkZE9yVXBkYXRlVmlldyhcbiAgICAgICAgICAgIHZpZXdDb25maWcuaWQsXG4gICAgICAgICAgICBjdXJyZW50Vmlld1N0YXRlXG4gICAgICAgICAgKTtcblxuICAgICAgICAgIHRoaXMudXBkYXRlRGF0YVN0YXRlKG5ld0RhdGFTdGF0ZSwgdGhpcy5pbml0U291cmNlKTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICAgIC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gb2JzZXJ2YWJsZSBvZiBkYXRhIHN0YXRlIGNoYW5nZXMgdGhhdCB2aWV3cyBhbmQgb3RoZXIgZGF0YSBtYW5hZ2VyIGVudGl0aWVzIGNhbiBzdWJzY3JpYmUgdG8uXG4gICAqIEl0IGV4Y2x1ZGVzIHVwZGF0ZXMgb3JpZ2luYXRpbmcgZnJvbSB0aGUgcHJvdmlkZWQgc291cmNlLiBUaGlzIGFsbG93cyBzdWJzY3JpYmVycyB0byBvbmx5IHJlc3BvbmQgdG9cbiAgICogY2hhbmdlcyB0aGV5IGRpZCBub3QgY3JlYXRlIGFuZCBoZWxwcyBwcmV2ZW50IGluZmluaXRlIGxvb3BzIG9mIHVwZGF0ZXMgYW5kIHJlc3BvbnNlcy5cbiAgICogQHBhcmFtIHNvdXJjZUlkIFRoZSBJRCBvZiB0aGUgZW50aXR5IHN1YnNjcmliaW5nIHRvIGRhdGEgc3RhdGUgdXBkYXRlcy4gVGhpcyBjYW4gYmUgYW55IHZhbHVlIHlvdSBjaG9vc2VcbiAgICogYnV0IHNob3VsZCBiZSB1bmlxdWUgd2l0aGluIHRoZSBkYXRhIG1hbmFnZXIgaW5zdGFuY2UgYW5kIHNob3VsZCBhbHNvIGJlIHVzZWQgd2hlbiB0aGF0IGVudGl0eSB1cGRhdGVzIHRoZSBzdGF0ZS5cbiAgICovXG4gIHB1YmxpYyBnZXREYXRhU3RhdGVVcGRhdGVzKFxuICAgIHNvdXJjZUlkOiBzdHJpbmcsXG4gICAgdXBkYXRlRmlsdGVyPzogU2t5RGF0YU1hbmFnZXJTdGF0ZVVwZGF0ZUZpbHRlckFyZ3NcbiAgKTogT2JzZXJ2YWJsZTxTa3lEYXRhTWFuYWdlclN0YXRlPiB7XG4gICAgLy8gZmlsdGVyIG91dCBldmVudHMgZnJvbSB0aGUgcHJvdmlkZWQgc291cmNlIGFuZCBlbWl0IGp1c3QgdGhlIGRhdGFTdGF0ZVxuICAgIGlmICh1cGRhdGVGaWx0ZXIpIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTdGF0ZUNoYW5nZS5waXBlKFxuICAgICAgICBmaWx0ZXIoKHN0YXRlQ2hhbmdlKSA9PiBzb3VyY2VJZCAhPT0gc3RhdGVDaGFuZ2Uuc291cmNlKSxcbiAgICAgICAgbWFwKChzdGF0ZUNoYW5nZSkgPT4gc3RhdGVDaGFuZ2UuZGF0YVN0YXRlKSxcbiAgICAgICAgdXBkYXRlRmlsdGVyLmNvbXBhcmF0b3JcbiAgICAgICAgICA/IGRpc3RpbmN0VW50aWxDaGFuZ2VkKHVwZGF0ZUZpbHRlci5jb21wYXJhdG9yKVxuICAgICAgICAgIDogZGlzdGluY3RVbnRpbENoYW5nZWQoXG4gICAgICAgICAgICAgIHRoaXMuZ2V0RGVmYXVsdFN0YXRlQ29tcGFyYXRvcih1cGRhdGVGaWx0ZXIucHJvcGVydGllcylcbiAgICAgICAgICAgIClcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0aGlzLmRhdGFTdGF0ZUNoYW5nZS5waXBlKFxuICAgICAgICBmaWx0ZXIoKHN0YXRlQ2hhbmdlKSA9PiBzb3VyY2VJZCAhPT0gc3RhdGVDaGFuZ2Uuc291cmNlKSxcbiAgICAgICAgbWFwKChzdGF0ZUNoYW5nZSkgPT4gc3RhdGVDaGFuZ2UuZGF0YVN0YXRlKVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgZGF0YSBzdGF0ZSBhbmQgZW1pdHMgYSBuZXcgdmFsdWUgdG8gZW50aXRpZXMgc3Vic2NyaWJlZCB0byBkYXRhIHN0YXRlIGNoYW5nZXMuXG4gICAqIEBwYXJhbSBzdGF0ZSBUaGUgbmV3IGBTa3lEYXRhTWFuYWdlclN0YXRlYCB2YWx1ZS5cbiAgICogQHBhcmFtIHNvdXJjZUlkIFRoZSBJRCBvZiB0aGUgZW50aXR5IHVwZGF0aW5nIHRoZSBzdGF0ZS4gVGhpcyBjYW4gYmUgYW55IHZhbHVlIHlvdSBjaG9vc2UsXG4gICAqIGJ1dCBzaG91bGQgYmUgdW5pcXVlIHdpdGhpbiB0aGUgZGF0YSBtYW5hZ2VyIGluc3RhbmNlIGFuZCBzaG91bGQgYWxzbyBiZSB1c2VkIHdoZW4gdGhhdCBlbnRpdHlcbiAgICogc3Vic2NyaWJlcyB0byBzdGF0ZSBjaGFuZ2VzIGZyb20gYGdldERhdGFTdGF0ZVVwZGF0ZXNgLlxuICAgKi9cbiAgcHVibGljIHVwZGF0ZURhdGFTdGF0ZShzdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSwgc291cmNlSWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGNvbnN0IG5ld1N0YXRlID0gbmV3IFNreURhdGFNYW5hZ2VyU3RhdGUoc3RhdGUuZ2V0U3RhdGVPcHRpb25zKCkpO1xuICAgIGNvbnN0IG5ld1N0YXRlQ2hhbmdlID0gbmV3IFNreURhdGFNYW5hZ2VyU3RhdGVDaGFuZ2UobmV3U3RhdGUsIHNvdXJjZUlkKTtcblxuICAgIHRoaXMuZGF0YVN0YXRlQ2hhbmdlLm5leHQobmV3U3RhdGVDaGFuZ2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGN1cnJlbnQgYFNreURhdGFNYW5hZ2VyQ29uZmlnYC5cbiAgICovXG4gIHB1YmxpYyBnZXRDdXJyZW50RGF0YU1hbmFnZXJDb25maWcoKTogU2t5RGF0YU1hbmFnZXJDb25maWcge1xuICAgIHJldHVybiB0aGlzLmRhdGFNYW5hZ2VyQ29uZmlnLnZhbHVlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gb2JzZXJ2YWJsZSBvZiBkYXRhIG1hbmFnZXIgY29uZmlnIGNoYW5nZXMgdGhhdCB2aWV3cyBhbmQgb3RoZXIgZGF0YSBtYW5hZ2VyIGVudGl0aWVzIGNhbiBzdWJzY3JpYmUgdG8uXG4gICAqL1xuICBwdWJsaWMgZ2V0RGF0YU1hbmFnZXJDb25maWdVcGRhdGVzKCk6IE9ic2VydmFibGU8U2t5RGF0YU1hbmFnZXJDb25maWc+IHtcbiAgICByZXR1cm4gdGhpcy5kYXRhTWFuYWdlckNvbmZpZztcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGVzIHRoZSBkYXRhIG1hbmFnZXIgY29uZmlnIGFuZCBlbWl0cyBhIG5ldyB2YWx1ZSB0byBlbnRpdGllcyBzdWJzY3JpYmVkIHRvIGRhdGEgY29uZmlnIGNoYW5nZXMuXG4gICAqIEBwYXJhbSB2YWx1ZSBUaGUgbmV3IGBTa3lEYXRhTWFuYWdlckNvbmZpZ2AgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlRGF0YU1hbmFnZXJDb25maWcodmFsdWU6IFNreURhdGFNYW5hZ2VyQ29uZmlnKTogdm9pZCB7XG4gICAgdGhpcy5kYXRhTWFuYWdlckNvbmZpZy5uZXh0KHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGFuIG9ic2VydmFibGUgb2YgZGF0YSB2aWV3IGNvbmZpZyBjaGFuZ2VzIHRoYXQgdmlld3MgYW5kIG90aGVyIGRhdGEgbWFuYWdlciBlbnRpdGllcyBjYW4gc3Vic2NyaWJlIHRvLlxuICAgKi9cbiAgcHVibGljIGdldERhdGFWaWV3c1VwZGF0ZXMoKTogT2JzZXJ2YWJsZTxTa3lEYXRhVmlld0NvbmZpZ1tdPiB7XG4gICAgcmV0dXJuIHRoaXMudmlld3M7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhbiBvYnNlcnZhYmxlIG9mIHRoZSBhY3RpdmUgdmlldyBJRCB0aGF0IHZpZXdzIGFuZCBvdGhlciBkYXRhIG1hbmFnZXIgZW50aXRpZXMgY2FuIHN1YnNjcmliZSB0by5cbiAgICovXG4gIHB1YmxpYyBnZXRBY3RpdmVWaWV3SWRVcGRhdGVzKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuYWN0aXZlVmlld0lkO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgdGhlIGFjdGl2ZSB2aWV3IElELiBUaGUgZGF0YSBtYW5hZ2VyIGNoYW5nZXMgdGhlIGRpc3BsYXllZCB2aWV3LlxuICAgKiBAcGFyYW0gaWQgVGhlIG5ldyBhY3RpdmUgdmlldyBJRC5cbiAgICovXG4gIHB1YmxpYyB1cGRhdGVBY3RpdmVWaWV3SWQoaWQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuYWN0aXZlVmlld0lkLm5leHQoaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGBTa3lEYXRhVmlld0NvbmZpZ2AgZm9yIHRoZSBnaXZlbiB2aWV3IElELlxuICAgKiBAcGFyYW0gdmlld0lkIFRoZSBJRCBvZiB0aGUgdmlldyBjb25maWcgdG8gZ2V0LlxuICAgKi9cbiAgcHVibGljIGdldFZpZXdCeUlkKHZpZXdJZDogc3RyaW5nKTogU2t5RGF0YVZpZXdDb25maWcge1xuICAgIGNvbnN0IGN1cnJlbnRWaWV3czogU2t5RGF0YVZpZXdDb25maWdbXSA9IHRoaXMudmlld3MudmFsdWU7XG4gICAgY29uc3Qgdmlld0NvbmZpZzogU2t5RGF0YVZpZXdDb25maWcgPSBjdXJyZW50Vmlld3MuZmluZChcbiAgICAgICh2aWV3KSA9PiB2aWV3LmlkID09PSB2aWV3SWRcbiAgICApO1xuXG4gICAgcmV0dXJuIHZpZXdDb25maWc7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgZ2l2ZW4gdmlldyBjb25maWcuIFRoZSByZWdpc3RlcmVkIHZpZXcgd2l0aCB0aGUgc2FtZSBJRCBpcyB1cGRhdGVkIHRvIHRoZVxuICAgKiBwcm92aWRlZCBjb25maWcsIHNvIGluY2x1ZGUgYWxsIHByb3BlcnRpZXMgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZXkgY2hhbmdlZC4gSWYgdGhlXG4gICAqIHZpZXcgd2FzIG5vdCBpbml0aWFsaXplZCBhbHJlYWR5LCBubyB1cGRhdGUgaGFwcGVucy5cbiAgICogQHBhcmFtIHZpZXcgVGhlIG5ldyBgU2t5RGF0YVZpZXdDb25maWdgIGNvbnRhaW5pbmcgYWxsIHByb3BlcnRpZXMuXG4gICAqL1xuICBwdWJsaWMgdXBkYXRlVmlld0NvbmZpZyh2aWV3OiBTa3lEYXRhVmlld0NvbmZpZyk6IHZvaWQge1xuICAgIGNvbnN0IGN1cnJlbnRWaWV3czogU2t5RGF0YVZpZXdDb25maWdbXSA9IHRoaXMudmlld3MudmFsdWU7XG4gICAgY29uc3QgZXhpc3RpbmdWaWV3SW5kZXggPSBjdXJyZW50Vmlld3MuZmluZEluZGV4KFxuICAgICAgKGN1cnJlbnRWaWV3KSA9PiBjdXJyZW50Vmlldy5pZCA9PT0gdmlldy5pZFxuICAgICk7XG5cbiAgICBpZiAoZXhpc3RpbmdWaWV3SW5kZXggPT09IC0xKSB7XG4gICAgICBjb25zb2xlLmVycm9yKCdBIHZpZXcgd2l0aCB0aGUgaWQge2lkfSBkb2VzIG5vdCBleGlzdC4nLCB2aWV3LmlkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY3VycmVudFZpZXdzW2V4aXN0aW5nVmlld0luZGV4XSA9IHZpZXc7XG4gICAgICB0aGlzLnZpZXdzLm5leHQoY3VycmVudFZpZXdzKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc2V0Vmlld2tlZXBlckNsYXNzZXModmlld0lkOiBzdHJpbmcsIGNsYXNzZXM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgY29uc3Qgdmlld2tlZXBlckNsYXNzZXMgPSB0aGlzLnZpZXdrZWVwZXJDbGFzc2VzLnZhbHVlO1xuICAgIHZpZXdrZWVwZXJDbGFzc2VzW3ZpZXdJZF0gPSBjbGFzc2VzO1xuXG4gICAgdGhpcy52aWV3a2VlcGVyQ2xhc3Nlcy5uZXh0KHZpZXdrZWVwZXJDbGFzc2VzKTtcbiAgfVxuXG4gIHByaXZhdGUgZmlsdGVyRGF0YVN0YXRlUHJvcGVydGllcyhcbiAgICBzdGF0ZTogU2t5RGF0YU1hbmFnZXJTdGF0ZSxcbiAgICBwcm9wZXJ0aWVzOiBzdHJpbmdbXVxuICApOiBTa3lEYXRhTWFuYWdlclN0YXRlT3B0aW9ucyB7XG4gICAgY29uc3Qgc3RhdGVQcm9wZXJ0aWVzID0gc3RhdGUuZ2V0U3RhdGVPcHRpb25zKCkgYXMgeyBba2V5OiBzdHJpbmddOiBhbnkgfTtcbiAgICBjb25zdCBmaWx0ZXJlZFN0YXRlUHJvcGVydGllczogYW55ID0ge307XG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBvZiBwcm9wZXJ0aWVzKSB7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzdGF0ZVByb3BlcnRpZXMsIHByb3BlcnR5KSkge1xuICAgICAgICBmaWx0ZXJlZFN0YXRlUHJvcGVydGllc1twcm9wZXJ0eV0gPSBzdGF0ZVByb3BlcnRpZXNbcHJvcGVydHldO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBmaWx0ZXJlZFN0YXRlUHJvcGVydGllcztcbiAgfVxuXG4gIHByaXZhdGUgZ2V0RGVmYXVsdFN0YXRlQ29tcGFyYXRvcihcbiAgICBwcm9wZXJ0aWVzOiBzdHJpbmdbXVxuICApOiAoc3RhdGUxOiBTa3lEYXRhTWFuYWdlclN0YXRlLCBzdGF0ZTI6IFNreURhdGFNYW5hZ2VyU3RhdGUpID0+IGJvb2xlYW4ge1xuICAgIHJldHVybiAoXG4gICAgICBzdGF0ZTE6IFNreURhdGFNYW5hZ2VyU3RhdGUsXG4gICAgICBzdGF0ZTI6IFNreURhdGFNYW5hZ2VyU3RhdGVcbiAgICApOiBib29sZWFuID0+IHtcbiAgICAgIGNvbnN0IGZpbHRlcmVkU3RhdGUxID0gdGhpcy5maWx0ZXJEYXRhU3RhdGVQcm9wZXJ0aWVzKHN0YXRlMSwgcHJvcGVydGllcyk7XG4gICAgICBjb25zdCBmaWx0ZXJlZFN0YXRlMiA9IHRoaXMuZmlsdGVyRGF0YVN0YXRlUHJvcGVydGllcyhzdGF0ZTIsIHByb3BlcnRpZXMpO1xuICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGZpbHRlcmVkU3RhdGUxKSA9PT0gSlNPTi5zdHJpbmdpZnkoZmlsdGVyZWRTdGF0ZTIpO1xuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -45,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.2", ngImpor
45
45
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyDataManagerService }]; }, propDecorators: { viewId: [{
46
46
  type: Input
47
47
  }] } });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBRS9EOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8sb0JBQW9CO0lBcUIvQixZQUNVLGNBQWlDLEVBQ2pDLGtCQUF5QztRQUR6QyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF1QjtRQUw1QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUtwQyxDQUFDO0lBZkosSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBVyxRQUFRLENBQUMsS0FBYztRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFVTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGtCQUFrQjthQUNwQixzQkFBc0IsRUFBRTthQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUNwQyxTQUFTLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRTtZQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLEtBQUssWUFBWSxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7O2lIQXRDVSxvQkFBb0I7cUdBQXBCLG9CQUFvQixtRkN4QmpDLG1GQUdBOzJGRHFCYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsZUFBZSxtQkFFUix1QkFBdUIsQ0FBQyxNQUFNOzRJQVN4QyxNQUFNO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuL2RhdGEtbWFuYWdlci5zZXJ2aWNlJztcblxuLyoqXG4gKiBBIGRhdGEgdmlldyBpcyByZW5kZXJlZCB3aXRoaW4gYSBkYXRhIG1hbmFnZXIgY29tcG9uZW50LlxuICogSXQgY2FuIHN1YnNjcmliZSB0byBkYXRhIHN0YXRlIGNoYW5nZXMgZnJvbSBgU2t5RGF0YU1hbmFnZXJTZXJ2aWNlYCBhbmQgYXBwbHkgdGhlIGZpbHRlcnMsXG4gKiBzZWFyY2ggdGV4dCwgYW5kIG1vcmUgdG8gdGhlIGRhdGEgaXQgZGlzcGxheXMuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1kYXRhLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreURhdGFWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICAvKipcbiAgICogVGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSB2aWV3LiBTZWUgdGhlIGBTa3lEYXRhVmlld0NvbmZpZ2AgaW50ZXJmYWNlLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHZpZXdJZDogc3RyaW5nO1xuXG4gIHB1YmxpYyBnZXQgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzQWN0aXZlO1xuICB9XG5cbiAgcHVibGljIHNldCBpc0FjdGl2ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2lzQWN0aXZlID0gdmFsdWU7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBfaXNBY3RpdmUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBkYXRhTWFuYWdlclNlcnZpY2U6IFNreURhdGFNYW5hZ2VyU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0QWN0aXZlVmlld0lkVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChhY3RpdmVWaWV3SWQpID0+IHtcbiAgICAgICAgdGhpcy5pc0FjdGl2ZSA9IHRoaXMudmlld0lkID09PSBhY3RpdmVWaWV3SWQ7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJpc0FjdGl2ZVwiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRhLW1hbmFnZXIvc3JjL2xpYi9tb2R1bGVzL2RhdGEtbWFuYWdlci9kYXRhLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGEtbWFuYWdlci9zcmMvbGliL21vZHVsZXMvZGF0YS1tYW5hZ2VyL2RhdGEtdmlldy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsS0FBSyxHQUdOLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTNDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7O0FBRS9EOzs7O0dBSUc7QUFNSCxNQUFNLE9BQU8sb0JBQW9CO0lBcUIvQixZQUNVLGNBQWlDLEVBQ2pDLGtCQUF5QztRQUR6QyxtQkFBYyxHQUFkLGNBQWMsQ0FBbUI7UUFDakMsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUF1QjtRQUw1QyxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQUsxQyxDQUFDO0lBZkosSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsSUFBVyxRQUFRLENBQUMsS0FBYztRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztRQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFVTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGtCQUFrQjthQUNwQixzQkFBc0IsRUFBRTthQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzthQUNwQyxTQUFTLENBQUMsQ0FBQyxZQUFZLEVBQUUsRUFBRTtZQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxNQUFNLEtBQUssWUFBWSxDQUFDO1FBQy9DLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7O2lIQXRDVSxvQkFBb0I7cUdBQXBCLG9CQUFvQixtRkN4QmpDLG1GQUdBOzJGRHFCYSxvQkFBb0I7a0JBTGhDLFNBQVM7K0JBQ0UsZUFBZSxtQkFFUix1QkFBdUIsQ0FBQyxNQUFNOzRJQVN4QyxNQUFNO3NCQURaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBTa3lEYXRhTWFuYWdlclNlcnZpY2UgfSBmcm9tICcuL2RhdGEtbWFuYWdlci5zZXJ2aWNlJztcblxuLyoqXG4gKiBBIGRhdGEgdmlldyBpcyByZW5kZXJlZCB3aXRoaW4gYSBkYXRhIG1hbmFnZXIgY29tcG9uZW50LlxuICogSXQgY2FuIHN1YnNjcmliZSB0byBkYXRhIHN0YXRlIGNoYW5nZXMgZnJvbSBgU2t5RGF0YU1hbmFnZXJTZXJ2aWNlYCBhbmQgYXBwbHkgdGhlIGZpbHRlcnMsXG4gKiBzZWFyY2ggdGV4dCwgYW5kIG1vcmUgdG8gdGhlIGRhdGEgaXQgZGlzcGxheXMuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1kYXRhLXZpZXcnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGF0YS12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreURhdGFWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQge1xuICAvKipcbiAgICogVGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSB2aWV3LiBTZWUgdGhlIGBTa3lEYXRhVmlld0NvbmZpZ2AgaW50ZXJmYWNlLlxuICAgKiBAcmVxdWlyZWRcbiAgICovXG5cbiAgQElucHV0KClcbiAgcHVibGljIHZpZXdJZDogc3RyaW5nO1xuXG4gIHB1YmxpYyBnZXQgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2lzQWN0aXZlO1xuICB9XG5cbiAgcHVibGljIHNldCBpc0FjdGl2ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX2lzQWN0aXZlID0gdmFsdWU7XG4gICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHB1YmxpYyBfaXNBY3RpdmUgPSBmYWxzZTtcbiAgcHJpdmF0ZSBfbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBkYXRhTWFuYWdlclNlcnZpY2U6IFNreURhdGFNYW5hZ2VyU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGF0YU1hbmFnZXJTZXJ2aWNlXG4gICAgICAuZ2V0QWN0aXZlVmlld0lkVXBkYXRlcygpXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fbmdVbnN1YnNjcmliZSkpXG4gICAgICAuc3Vic2NyaWJlKChhY3RpdmVWaWV3SWQpID0+IHtcbiAgICAgICAgdGhpcy5pc0FjdGl2ZSA9IHRoaXMudmlld0lkID09PSBhY3RpdmVWaWV3SWQ7XG4gICAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLl9uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJpc0FjdGl2ZVwiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==