@bcgov/nr-ngx-component-lib 0.0.83 → 0.0.85

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.
@@ -41,10 +41,10 @@ export declare abstract class PaginationBase<F> extends NrclBase implements Afte
41
41
  ngAfterViewInit(): void;
42
42
  onInitPageState(): void;
43
43
  clone(obj: any): any;
44
- onFilterChange(ev: F): void;
45
- onSortChange(ev: Sort): void;
46
- onPageSizeChange(ev: number): void;
47
- onPageNumberChange(ev: number): void;
44
+ onFilterChange(ev: F): Promise<void>;
45
+ onSortChange(ev: Sort): Promise<void>;
46
+ onPageSizeChange(ev: number): Promise<void>;
47
+ onPageNumberChange(ev: number): Promise<void>;
48
48
  onPageStateChanged(): Promise<void>;
49
49
  protected abstract refresh(): Promise<void>;
50
50
  abstract getInitialPageState(): InitialState<F>;
@@ -48,7 +48,7 @@ export class ScheduleComponent extends RowListBase {
48
48
  this.hover = true;
49
49
  this.pagination = true;
50
50
  this.heading = true;
51
- this.loadingMessage = 'Loading schedule.';
51
+ this.loadingMessage = 'Loading...';
52
52
  this._days = [];
53
53
  this._weeks = [];
54
54
  this._templates = [];
@@ -194,4 +194,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
194
194
  type: ContentChild,
195
195
  args: [ScheduleRowHeadingDirective]
196
196
  }] } });
197
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFvRCxNQUFNLGVBQWUsQ0FBQztBQUU5SixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFHNUIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7O0FBSzdELE1BQU0sT0FBTywyQkFBMkI7SUFDcEMsWUFDVyxRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUNuQyxDQUFDOytHQUhNLDJCQUEyQjttR0FBM0IsMkJBQTJCOzs0RkFBM0IsMkJBQTJCO2tCQUh2QyxTQUFTO21CQUFFO29CQUNSLFFBQVEsRUFBRSwwQkFBMEI7aUJBQ3ZDOztBQU9ELG1GQUFtRjtBQUtuRixNQUFNLE9BQU8scUJBQXFCO0lBRzlCLFlBQ1csUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDbkMsQ0FBQzsrR0FMTSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBRTtvQkFDUixRQUFRLEVBQUUsb0JBQW9CO2lCQUNqQztnRkFFZ0MsSUFBSTtzQkFBaEMsS0FBSzt1QkFBRSxrQkFBa0I7O0FBMEQ5QixtRkFBbUY7QUFVbkYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQTJCO0lBUmxFOztR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SztzQkFBYixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFFa0MsYUFBYTtzQkFBcEQsZUFBZTt1QkFBQyxxQkFBcUI7Z0JBQ0ssY0FBYztzQkFBeEQsWUFBWTt1QkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZCwgQ29udGVudENoaWxkcmVuLCBEaXJlY3RpdmUsIElucHV0LCBudW1iZXJBdHRyaWJ1dGUsIE9uQ2hhbmdlcywgUXVlcnlMaXN0LCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0TWVudVBhbmVsIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJbml0aWFsU3RhdGUsIFBhZ2luYXRpb25TdGF0ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi5iYXNlJztcbmltcG9ydCB7IFJvd0xpc3RCYXNlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9yb3ctbGlzdC5iYXNlJztcblxuQERpcmVjdGl2ZSgge1xuICAgIHNlbGVjdG9yOiAnW25yY2xTY2hlZHVsZVJvd0hlYWRpbmddJ1xufSApXG5leHBvcnQgY2xhc3MgU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlIHtcbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+XG4gICAgKXt9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBEaXJlY3RpdmUoIHtcbiAgICBzZWxlY3RvcjogJ1tucmNsU2NoZWR1bGVJdGVtXSdcbn0gKVxuZXhwb3J0IGNsYXNzIFNjaGVkdWxlSXRlbURpcmVjdGl2ZSB7XG4gICAgQElucHV0KCAnbnJjbFNjaGVkdWxlSXRlbScgKSBuYW1lPzogc3RyaW5nXG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+XG4gICAgKXt9XG59XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbmV4cG9ydCB0eXBlIFNjaGVkdWxlUm93SXRlbSA9IHtcbiAgICBpZDogc3RyaW5nLFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBpY29ucz86ICgpID0+IHN0cmluZ1tdLFxuICAgIHRvb2x0aXA/OiAoKSA9PiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+LFxuICAgIHRyYXZlbD86IGJvb2xlYW4sXG59XG5cbmV4cG9ydCB0eXBlIFNjaGVkdWxlUm93ID0ge1xuICAgIGlkPzogc3RyaW5nLFxuICAgIG1ldGFkYXRhPzogYW55LFxuICAgIGhlYWRpbmc6IGFueSxcbiAgICBpdGVtczogUHJvbWlzZTxTY2hlZHVsZVJvd0l0ZW1bXT4sXG4gICAgcm93Q2xhc3M/OiBzdHJpbmcsXG59XG5cbmV4cG9ydCB0eXBlIFNjaGVkdWxlID0gU2NoZWR1bGVSb3dbXVxuXG50eXBlIERheSA9IHtcbiAgICBkYXlOYW1lOiBzdHJpbmcsXG4gICAgbW9udGhEYXk6IG51bWJlcixcbiAgICBkYXRlOiBzdHJpbmcsXG4gICAgaXNXZWVrZW5kOiBib29sZWFuLFxuICAgIGlzVG9kYXk6IGJvb2xlYW4sXG4gICAgaXNGaXJzdDogYm9vbGVhbixcbiAgICBpc0hpZ2hsaWdodDogYm9vbGVhbixcbn1cblxudHlwZSBXZWVrID0ge1xuICAgIHN0YXJ0OiBzdHJpbmcsXG4gICAgZW5kOiBzdHJpbmcsXG4gICAgc3BhbjogbnVtYmVyXG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbmV4cG9ydCB0eXBlIEZldGNoU2NoZWR1bGVSb3dQYXJhbWV0ZXJzID0ge1xuICAgIHJlc291cmNlSWQ6IHN0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVkdWxlUHJvdmlkZXIge1xuICAgIHN0YXJ0bG9hZFNjaGVkdWxlPyggaW5uZXI6ICgpID0+IFByb21pc2U8YW55PiApOiBQcm9taXNlPGFueT5cbiAgICBmZXRjaFNjaGVkdWxlKCk6IE9ic2VydmFibGU8YW55PlxuICAgIHBhcnNlU2NoZWR1bGUoIHJlczogYW55ICk6IFNjaGVkdWxlXG4gICAgcGFyc2VUb3RhbFJvd0NvdW50PyhyZXM6IGFueSk6IG51bWJlciBcbiAgICBnZXRJbml0aWFsUGFnZVN0YXRlKCk6IEluaXRpYWxTdGF0ZTx7fT5cbiAgICBjb21wbGV0ZWRMb2FkU2NoZWR1bGU/KCBpbm5lcjogKCkgPT4gdm9pZCApOiBhbnlcbn1cblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuQENvbXBvbmVudCgge1xuICAgIHNlbGVjdG9yOiAnbnJjbC1zY2hlZHVsZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3NjaGVkdWxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJy4vc2NoZWR1bGUuY29tcG9uZW50LnNjc3MnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1tzdHlsZS4tLW5yY2wtc2NoZWR1bGUtZGF5LWNvdW50XSc6ICd0aGlzLmRheUNvdW50J1xuICAgIH1cbn0gKVxuZXhwb3J0IGNsYXNzIFNjaGVkdWxlQ29tcG9uZW50IGV4dGVuZHMgUm93TGlzdEJhc2U8e30sU2NoZWR1bGVSb3c+IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgICBASW5wdXQoKSBwcm92aWRlcj86IFNjaGVkdWxlUHJvdmlkZXJcbiAgICBASW5wdXQoKSBzdGFydERhdGU/OiBzdHJpbmdcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSApIHdlZWtTdGFydCA9IDBcbiAgICBASW5wdXQoIHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSApIGRheUNvdW50PzogbnVtYmVyXG4gICAgQElucHV0KCkgbWVudT86IE1hdE1lbnVQYW5lbFxuICAgIEBJbnB1dCgpIGhvdmVyID0gdHJ1ZVxuICAgIEBJbnB1dCgpIHBhZ2luYXRpb24gPSB0cnVlXG4gICAgQElucHV0KCkgaGVhZGluZyA9IHRydWVcbiAgICBASW5wdXQoKSBoaWdobGlnaHREYXRlPzogc3RyaW5nXG4gICAgQElucHV0KCkgbG9hZGluZ01lc3NhZ2UgPSAnTG9hZGluZyBzY2hlZHVsZS4nXG5cbiAgICBAQ29udGVudENoaWxkcmVuKFNjaGVkdWxlSXRlbURpcmVjdGl2ZSkgaXRlbVRlbXBsYXRlcyE6IFF1ZXJ5TGlzdDxTY2hlZHVsZUl0ZW1EaXJlY3RpdmU+XG4gICAgQENvbnRlbnRDaGlsZChTY2hlZHVsZVJvd0hlYWRpbmdEaXJlY3RpdmUpIGhlYWRlclRlbXBsYXRlITogU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlXG5cbiAgICBwcm90ZWN0ZWQgX2RheXM6IERheVtdID0gW11cbiAgICBwcm90ZWN0ZWQgX3dlZWtzOiBXZWVrW10gPSBbXVxuICAgIHByb3RlY3RlZCBfdGVtcGxhdGVzOiBUZW1wbGF0ZVJlZjxhbnk+W11bXSA9IFtdXG5cbiAgICBuZ09uQ2hhbmdlcyggY2hhbmdlczogU2ltcGxlQ2hhbmdlcyApOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5yZWZyZXNoUm93TGlzdCgpXG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnU2NoZWR1bGVDb21wb25lbnQubmdBZnRlclZpZXdJbml0JylcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KClcbiAgICB9XG5cbiAgICBsb2FkUm93TGlzdCgpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICAvLyBpZiAoICF0aGlzLnByb3ZpZGVyPy5zdGFydGxvYWRTY2hlZHVsZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuc3RhcnRsb2FkU2NoZWR1bGUgbm90IHNldCcgKVxuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5zdGFydGxvYWRTY2hlZHVsZSApIHJldHVybiBzdXBlci5sb2FkUm93TGlzdCgpXG4gICAgIFxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5zdGFydGxvYWRTY2hlZHVsZSggKCkgPT4geyByZXR1cm4gc3VwZXIubG9hZFJvd0xpc3QoKSB9IClcbiAgICB9XG5cbiAgICBmZXRjaFJvd0xpc3RQYWdlKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGlmICggIXRoaXMucHJvdmlkZXI/LmZldGNoU2NoZWR1bGUgKSB0aHJvdyBFcnJvciggJ1NjaGVkdWxlQ29tcG9uZW50LnByb3ZpZGVyLmZldGNoU2NoZWR1bGUgbm90IHNldCcgKVxuXG4gICAgICAgIHJldHVybiB0aGlzLnByb3ZpZGVyLmZldGNoU2NoZWR1bGUoKVxuICAgIH1cblxuICAgIHBhcnNlUm93cyggcmVzOiBhbnkgKTogU2NoZWR1bGVSb3dbXSB7XG4gICAgICAgIGlmICggIXRoaXMucHJvdmlkZXI/LnBhcnNlU2NoZWR1bGUgKSB0aHJvdyBFcnJvciggJ1NjaGVkdWxlQ29tcG9uZW50LnByb3ZpZGVyLnBhcnNlU2NoZWR1bGUgbm90IHNldCcgKVxuXG4gICAgICAgIGxldCByb3dzID0gdGhpcy5wcm92aWRlci5wYXJzZVNjaGVkdWxlKCByZXMgKVxuICAgICAgICByZXR1cm4gdGhpcy5tYWtlUm93cyggcm93cyApXG4gICAgfVxuXG4gICAgcGFyc2VUb3RhbFJvd0NvdW50KHJlczogYW55KTogbnVtYmVyIHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8ucGFyc2VUb3RhbFJvd0NvdW50ICkgcmV0dXJuIHN1cGVyLnBhcnNlVG90YWxSb3dDb3VudCggcmVzIClcblxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5wYXJzZVRvdGFsUm93Q291bnQoIHJlcyApXG4gICAgfVxuXG4gICAgZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpOiBJbml0aWFsU3RhdGU8e30+IHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8uZ2V0SW5pdGlhbFBhZ2VTdGF0ZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuZ2V0SW5pdGlhbFBhZ2VTdGF0ZSBub3Qgc2V0JyApXG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvdmlkZXIuZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpXG4gICAgfVxuXG4gICAgY29tcGxldGVkUm93TGlzdFBhZ2UoKTogUGFnaW5hdGlvblN0YXRlPHt9PiB7XG4gICAgICAgIC8vIGlmICggIXRoaXMucHJvdmlkZXI/LmNvbXBsZXRlZExvYWRTY2hlZHVsZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuY29tcGxldGVkUm93TGlzdFBhZ2Ugbm90IHNldCcgKVxuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5jb21wbGV0ZWRMb2FkU2NoZWR1bGUgKSByZXR1cm4gc3VwZXIuY29tcGxldGVkUm93TGlzdFBhZ2UoKSBhcyBhbnlcblxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5jb21wbGV0ZWRMb2FkU2NoZWR1bGUoICgpID0+IHsgcmV0dXJuIHN1cGVyLmNvbXBsZXRlZFJvd0xpc3RQYWdlKCkgfSApXG4gICAgfVxuXG4gICAgb25TYW1lUGFnZUZpbHRlckNoYW5nZSggZXY6IHt9ICk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbHRlciA9IGV2XG4gICAgICAgIHRoaXMucmVmcmVzaFJvd0xpc3QoKVxuICAgIH1cblxuICAgIG1ha2VSb3dzKCBzY2hlZHVsZTogU2NoZWR1bGUgKTogU2NoZWR1bGUge1xuICAgICAgICBsZXQgc3RhcnQgPSBtb21lbnQoIHRoaXMuc3RhcnREYXRlIClcbiAgICAgICAgbGV0IHRvZGF5ID0gbW9tZW50KClcblxuICAgICAgICB0aGlzLl93ZWVrcyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9ICkucmVkdWNlPFdlZWtbXT4oICggYSwgeCwgaSApID0+IHtcbiAgICAgICAgICAgIGxldCBtID0gc3RhcnQuY2xvbmUoKS5hZGQoIGksICdkYXknIClcbiAgICAgICAgICAgIGxldCBkYXRlID0gbS5mb3JtYXQoICdNTU0gRCcgKVxuICAgICAgICAgICAgbGV0IGRheSA9IG0uZGF5KClcblxuICAgICAgICAgICAgaWYgKCBhLmxlbmd0aCA9PSAwICkgcmV0dXJuIGEuY29uY2F0KCB7XG4gICAgICAgICAgICAgICAgc3RhcnQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgZW5kOiBkYXRlLFxuICAgICAgICAgICAgICAgIHNwYW46IDFcbiAgICAgICAgICAgIH0gKVxuXG4gICAgICAgICAgICBsZXQgcHJldiA9IGFbIGEubGVuZ3RoIC0gMSBdXG5cbiAgICAgICAgICAgIGlmICggZGF5ID09IHRoaXMud2Vla1N0YXJ0ICkgcmV0dXJuIGEuY29uY2F0KCB7XG4gICAgICAgICAgICAgICAgc3RhcnQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgZW5kOiBkYXRlLFxuICAgICAgICAgICAgICAgIHNwYW46IDFcbiAgICAgICAgICAgIH0gKVxuXG4gICAgICAgICAgICBwcmV2LmVuZCA9IGRhdGVcbiAgICAgICAgICAgIHByZXYuc3BhbiArPSAxXG4gICAgICAgICAgICByZXR1cm4gYVxuICAgICAgICB9LCBbXSApXG5cbiAgICAgICAgdGhpcy5fZGF5cyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9ICkubWFwKCAoIHgsIGkgKSA9PiB7XG4gICAgICAgICAgICBsZXQgZCA9IHN0YXJ0LmNsb25lKCkuYWRkKCBpLCAnZGF5JyApXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGRheU5hbWU6IGQuZm9ybWF0KCAnZGRkJyApLFxuICAgICAgICAgICAgICAgIG1vbnRoRGF5OiBkLmRhdGUoKSxcbiAgICAgICAgICAgICAgICBkYXRlOiBkLmZvcm1hdCggJ1ktTU0tREQnICksXG4gICAgICAgICAgICAgICAgaXNGaXJzdDogZC5kYXRlKCkgPT0gMSxcbiAgICAgICAgICAgICAgICBpc1dlZWtlbmQ6IGQuZGF5KCkgPT0gMCB8fCBkLmRheSgpID09IDYsXG4gICAgICAgICAgICAgICAgaXNUb2RheTogZC5pc1NhbWUoIHRvZGF5LCAnZGF5JyApLFxuICAgICAgICAgICAgICAgIGlzSGlnaGxpZ2h0OiBkLmlzU2FtZSggdGhpcy5oaWdobGlnaHREYXRlLCAnZGF5JyApXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gKVxuXG4gICAgICAgIHRoaXMuX3RlbXBsYXRlcyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiBzY2hlZHVsZS5sZW5ndGggfSApXG5cbiAgICAgICAgcmV0dXJuIHNjaGVkdWxlLm1hcCggKCByb3csIGkgKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl90ZW1wbGF0ZXNbIGkgXSA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9IClcblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBpZDogcm93LmlkID8/IFN0cmluZyggaSApLFxuICAgICAgICAgICAgICAgIHJvd0NsYXNzOiByb3cucm93Q2xhc3MsXG4gICAgICAgICAgICAgICAgbWV0YWRhdGE6IHJvdy5tZXRhZGF0YSxcbiAgICAgICAgICAgICAgICBoZWFkaW5nOiByb3cuaGVhZGluZyxcbiAgICAgICAgICAgICAgICBpdGVtczogcm93Lml0ZW1zXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKCByb3dJdGVtcyA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHRoaXMuZGF5Q291bnQhIH0gKS5tYXAoICggeCwgaiApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgcm93SXRlbSA9IHJvd0l0ZW1zWyBqIF1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICggcm93SXRlbSA9PSBudWxsICkgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogU3RyaW5nKCBqICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnZW1wdHknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl90ZW1wbGF0ZXNbIGkgXVsgaiBdID0gdGhpcy5pdGVtVGVtcGxhdGVzPy5maW5kKCBpID0+IGkubmFtZSA9PSByb3dJdGVtPy5uYW1lICApPy50ZW1wbGF0ZSFcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByb3dJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICB9IClcbiAgICAgICAgICAgICAgICAgICAgfSApXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gKSB8fCBbXVxuICAgIH1cbn1cbiIsIkBpZiAoIHJvd3M/Lmxlbmd0aCA+IDAgKSB7XG4gICAgPGRpdiBjbGFzcz1cInNjaGVkdWxlXCJcbiAgICAgICAgW2NsYXNzLmhlYWRpbmddPVwiaGVhZGluZ1wiXG4gICAgPlxuICAgICAgICBAaWYgKCBoZWFkaW5nICkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVwcGVyLWxlZnRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgd2Vla3NcIj5cbiAgICAgICAgICAgIEBmb3IgKCB3ZWVrIG9mIF93ZWVrczsgdHJhY2sgJGluZGV4ICkge1xuICAgICAgICAgICAgICAgIEBpZiAoIHdlZWsuc3BhbiA9PSAxICkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2Vla1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgd2Vlay5zdGFydCB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2Vla1wiIFtzdHlsZS5ncmlkLWNvbHVtbl09XCInc3BhbiAnICsgd2Vlay5zcGFuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyB3ZWVrLnN0YXJ0IH19IC0ge3sgd2Vlay5lbmQgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGRheXNcIj4gICAgXG4gICAgICAgICAgICBAZm9yICggZGF5IG9mIF9kYXlzOyB0cmFjayAkaW5kZXggKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRheVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy53ZWVrZW5kXT1cImRheS5pc1dlZWtlbmRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MudG9kYXldPVwiZGF5LmlzVG9kYXlcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZmlyc3RdPVwiZGF5LmlzRmlyc3RcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuaGlnaGxpZ2h0XT1cImRheS5pc0hpZ2hsaWdodFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5LW5hbWVcIj57eyBkYXkuZGF5TmFtZSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZVwiPnt7IGRheS5tb250aERheSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICBAZm9yICggcm93IG9mIHJvd3MgfCBwYWdpbmF0ZTogcGFnaW5hdGVTdGF0ZSggJ25yY2wtc2NoZWR1bGUnICk7IHRyYWNrIHJvdy5pZDsgbGV0IHJvd0luZGV4ID0gJGluZGV4ICkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBpdGVtc1wiIFtjbGFzc109XCJyb3cucm93Q2xhc3NcIj5cbiAgICAgICAgICAgICAgICBAaWYgKCBoZWFkaW5nICkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3V0ZXIgaGVhZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlubmVyIGhlYWRpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWFkZXJUZW1wbGF0ZT8udGVtcGxhdGVcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiB7IGhlYWRpbmc6IHJvdy5oZWFkaW5nLCBtZXRhZGF0YTogcm93Lm1ldGFkYXRhIH0gfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgICBcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaWYgKCByb3cuaXRlbXMgfCBhc3luYzsgYXMgcm93SXRlbXMgKSB7XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKCBpdGVtIG9mIHJvd0l0ZW1zOyB0cmFjayBpdGVtLmlkOyBsZXQgY29sSW5kZXggPSAkaW5kZXggKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3V0ZXIgaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLm1lbnUtb3Blbl09XCJpdGVtTWVudS5tZW51T3BlblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmhpZ2hsaWdodF09XCJfZGF5c1sgY29sSW5kZXggXS5pc0hpZ2hsaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmhvdmVyXT1cImhvdmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5uZXIgaXRlbVwiICNpdGVtTWVudT1cIm1hdE1lbnVUcmlnZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidpdGVtLScgKyBpdGVtLm5hbWVcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0UmlwcGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRSaXBwbGVEaXNhYmxlZF09XCIhaG92ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRNZW51VHJpZ2dlckRhdGFdPVwieyAkaW1wbGljaXQ6IHsgaGVhZGluZzogcm93LmhlYWRpbmcsIG1ldGFkYXRhOiByb3cubWV0YWRhdGEsIGl0ZW06IGl0ZW0gfSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25yY2xUb29sdGlwXT1cIml0ZW0/LnRvb2x0aXA/LigpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnJjbFRvb2x0aXBDbGFzcz1cInNjaGVkdWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25yY2xUb29sdGlwQ29udGV4dF09XCJ7ICRpbXBsaWNpdDogeyBoZWFkaW5nOiByb3cuaGVhZGluZywgbWV0YWRhdGE6IHJvdy5tZXRhZGF0YSwgaXRlbTogaXRlbSB9IH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudHJhdmVsXT1cIml0ZW0/LnRyYXZlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiX3RlbXBsYXRlc1sgcm93SW5kZXggXVsgY29sSW5kZXggXSB8fCBlbXB0eVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbGV0IGljb25zID0gaXRlbT8uaWNvbnM/LigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKCBpY29ucyAmJiBpY29ucy5sZW5ndGggPiAwICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb25zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoIGljb24gb2YgaWNvbnM7IHRyYWNrIGljb24gKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxucmNsLWljb24gc21hbGw+e3sgaWNvbiB9fTwvbnJjbC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgQGZvciAoIGRheSBvZiBfZGF5czsgdHJhY2sgZGF5ICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIml0ZW0gaXRlbS1sb2FkaW5nXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxufVxuXG5AaWYgKCByb3dzPy5sZW5ndGggPiAwICYmIHBhZ2luYXRpb24gKSB7XG4gICAgPG5yY2wtZ2FwLz5cbn1cblxuQGlmICggcGFnaW5hdGlvbiApIHtcbiAgICBAaWYgKCBpc0ZpcnN0TG9hZCApIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImxvYWRpbmctcm93c1wiPnt7IGxvYWRpbmdNZXNzYWdlIH19PC9kaXY+XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgPG5yY2wtcm93LWxpc3QtcGFnaW5hdGlvblxuICAgICAgICAgICAgcGFnaW5hdGlvbklkPVwibnJjbC1zY2hlZHVsZVwiXG4gICAgICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgICAgICAgICAgW3BhZ2VOdW1iZXJdPVwicGFnZU51bWJlclwiXG4gICAgICAgICAgICBbcm93Q291bnRdPVwidG90YWxSb3dDb3VudFwiXG4gICAgICAgICAgICAocGFnZU51bWJlckNoYW5nZSk9XCJvblBhZ2VOdW1iZXJDaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgID48L25yY2wtcm93LWxpc3QtcGFnaW5hdGlvbj5cbiAgICB9XG59XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHk+XG48L25nLXRlbXBsYXRlPlxuIl19
197
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZWR1bGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2NvbXBvbmVudHMvc2NoZWR1bGUvc2NoZWR1bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFvRCxNQUFNLGVBQWUsQ0FBQztBQUU5SixPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFHNUIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOzs7Ozs7Ozs7O0FBSzdELE1BQU0sT0FBTywyQkFBMkI7SUFDcEMsWUFDVyxRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUNuQyxDQUFDOytHQUhNLDJCQUEyQjttR0FBM0IsMkJBQTJCOzs0RkFBM0IsMkJBQTJCO2tCQUh2QyxTQUFTO21CQUFFO29CQUNSLFFBQVEsRUFBRSwwQkFBMEI7aUJBQ3ZDOztBQU9ELG1GQUFtRjtBQUtuRixNQUFNLE9BQU8scUJBQXFCO0lBRzlCLFlBQ1csUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFDbkMsQ0FBQzsrR0FMTSxxQkFBcUI7bUdBQXJCLHFCQUFxQjs7NEZBQXJCLHFCQUFxQjtrQkFIakMsU0FBUzttQkFBRTtvQkFDUixRQUFRLEVBQUUsb0JBQW9CO2lCQUNqQztnRkFFZ0MsSUFBSTtzQkFBaEMsS0FBSzt1QkFBRSxrQkFBa0I7O0FBMEQ5QixtRkFBbUY7QUFVbkYsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQTJCO0lBUmxFOztR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c0JBQWIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBRWtDLGFBQWE7c0JBQXBELGVBQWU7dUJBQUMscUJBQXFCO2dCQUNLLGNBQWM7c0JBQXhELFlBQVk7dUJBQUMsMkJBQTJCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIENvbnRlbnRDaGlsZHJlbiwgRGlyZWN0aXZlLCBJbnB1dCwgbnVtYmVyQXR0cmlidXRlLCBPbkNoYW5nZXMsIFF1ZXJ5TGlzdCwgU2ltcGxlQ2hhbmdlcywgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdE1lbnVQYW5lbCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW5pdGlhbFN0YXRlLCBQYWdpbmF0aW9uU3RhdGUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3BhZ2luYXRpb24uYmFzZSc7XG5pbXBvcnQgeyBSb3dMaXN0QmFzZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvcm93LWxpc3QuYmFzZSc7XG5cbkBEaXJlY3RpdmUoIHtcbiAgICBzZWxlY3RvcjogJ1tucmNsU2NoZWR1bGVSb3dIZWFkaW5nXSdcbn0gKVxuZXhwb3J0IGNsYXNzIFNjaGVkdWxlUm93SGVhZGluZ0RpcmVjdGl2ZSB7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PlxuICAgICl7fVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5ARGlyZWN0aXZlKCB7XG4gICAgc2VsZWN0b3I6ICdbbnJjbFNjaGVkdWxlSXRlbV0nXG59IClcbmV4cG9ydCBjbGFzcyBTY2hlZHVsZUl0ZW1EaXJlY3RpdmUge1xuICAgIEBJbnB1dCggJ25yY2xTY2hlZHVsZUl0ZW0nICkgbmFtZT86IHN0cmluZ1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PlxuICAgICl7fVxufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5leHBvcnQgdHlwZSBTY2hlZHVsZVJvd0l0ZW0gPSB7XG4gICAgaWQ6IHN0cmluZyxcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgaWNvbnM/OiAoKSA9PiBzdHJpbmdbXSxcbiAgICB0b29sdGlwPzogKCkgPT4gc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PixcbiAgICB0cmF2ZWw/OiBib29sZWFuLFxufVxuXG5leHBvcnQgdHlwZSBTY2hlZHVsZVJvdyA9IHtcbiAgICBpZD86IHN0cmluZyxcbiAgICBtZXRhZGF0YT86IGFueSxcbiAgICBoZWFkaW5nOiBhbnksXG4gICAgaXRlbXM6IFByb21pc2U8U2NoZWR1bGVSb3dJdGVtW10+LFxuICAgIHJvd0NsYXNzPzogc3RyaW5nLFxufVxuXG5leHBvcnQgdHlwZSBTY2hlZHVsZSA9IFNjaGVkdWxlUm93W11cblxudHlwZSBEYXkgPSB7XG4gICAgZGF5TmFtZTogc3RyaW5nLFxuICAgIG1vbnRoRGF5OiBudW1iZXIsXG4gICAgZGF0ZTogc3RyaW5nLFxuICAgIGlzV2Vla2VuZDogYm9vbGVhbixcbiAgICBpc1RvZGF5OiBib29sZWFuLFxuICAgIGlzRmlyc3Q6IGJvb2xlYW4sXG4gICAgaXNIaWdobGlnaHQ6IGJvb2xlYW4sXG59XG5cbnR5cGUgV2VlayA9IHtcbiAgICBzdGFydDogc3RyaW5nLFxuICAgIGVuZDogc3RyaW5nLFxuICAgIHNwYW46IG51bWJlclxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5leHBvcnQgdHlwZSBGZXRjaFNjaGVkdWxlUm93UGFyYW1ldGVycyA9IHtcbiAgICByZXNvdXJjZUlkOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTY2hlZHVsZVByb3ZpZGVyIHtcbiAgICBzdGFydGxvYWRTY2hlZHVsZT8oIGlubmVyOiAoKSA9PiBQcm9taXNlPGFueT4gKTogUHJvbWlzZTxhbnk+XG4gICAgZmV0Y2hTY2hlZHVsZSgpOiBPYnNlcnZhYmxlPGFueT5cbiAgICBwYXJzZVNjaGVkdWxlKCByZXM6IGFueSApOiBTY2hlZHVsZVxuICAgIHBhcnNlVG90YWxSb3dDb3VudD8ocmVzOiBhbnkpOiBudW1iZXIgXG4gICAgZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpOiBJbml0aWFsU3RhdGU8e30+XG4gICAgY29tcGxldGVkTG9hZFNjaGVkdWxlPyggaW5uZXI6ICgpID0+IHZvaWQgKTogYW55XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBDb21wb25lbnQoIHtcbiAgICBzZWxlY3RvcjogJ25yY2wtc2NoZWR1bGUnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zY2hlZHVsZS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL3NjaGVkdWxlLmNvbXBvbmVudC5zY3NzJyxcbiAgICBob3N0OiB7XG4gICAgICAgICdbc3R5bGUuLS1ucmNsLXNjaGVkdWxlLWRheS1jb3VudF0nOiAndGhpcy5kYXlDb3VudCdcbiAgICB9XG59IClcbmV4cG9ydCBjbGFzcyBTY2hlZHVsZUNvbXBvbmVudCBleHRlbmRzIFJvd0xpc3RCYXNlPHt9LFNjaGVkdWxlUm93PiBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KCkgcHJvdmlkZXI/OiBTY2hlZHVsZVByb3ZpZGVyXG4gICAgQElucHV0KCkgc3RhcnREYXRlPzogc3RyaW5nXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0gKSB3ZWVrU3RhcnQgPSAwXG4gICAgQElucHV0KCB7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0gKSBkYXlDb3VudD86IG51bWJlclxuICAgIEBJbnB1dCgpIG1lbnU/OiBNYXRNZW51UGFuZWxcbiAgICBASW5wdXQoKSBob3ZlciA9IHRydWVcbiAgICBASW5wdXQoKSBwYWdpbmF0aW9uID0gdHJ1ZVxuICAgIEBJbnB1dCgpIGhlYWRpbmcgPSB0cnVlXG4gICAgQElucHV0KCkgaGlnaGxpZ2h0RGF0ZT86IHN0cmluZ1xuICAgIEBJbnB1dCgpIGxvYWRpbmdNZXNzYWdlID0gJ0xvYWRpbmcuLi4nXG5cbiAgICBAQ29udGVudENoaWxkcmVuKFNjaGVkdWxlSXRlbURpcmVjdGl2ZSkgaXRlbVRlbXBsYXRlcyE6IFF1ZXJ5TGlzdDxTY2hlZHVsZUl0ZW1EaXJlY3RpdmU+XG4gICAgQENvbnRlbnRDaGlsZChTY2hlZHVsZVJvd0hlYWRpbmdEaXJlY3RpdmUpIGhlYWRlclRlbXBsYXRlITogU2NoZWR1bGVSb3dIZWFkaW5nRGlyZWN0aXZlXG5cbiAgICBwcm90ZWN0ZWQgX2RheXM6IERheVtdID0gW11cbiAgICBwcm90ZWN0ZWQgX3dlZWtzOiBXZWVrW10gPSBbXVxuICAgIHByb3RlY3RlZCBfdGVtcGxhdGVzOiBUZW1wbGF0ZVJlZjxhbnk+W11bXSA9IFtdXG5cbiAgICBuZ09uQ2hhbmdlcyggY2hhbmdlczogU2ltcGxlQ2hhbmdlcyApOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5yZWZyZXNoUm93TGlzdCgpXG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnU2NoZWR1bGVDb21wb25lbnQubmdBZnRlclZpZXdJbml0JylcbiAgICAgICAgc3VwZXIubmdBZnRlclZpZXdJbml0KClcbiAgICB9XG5cbiAgICBsb2FkUm93TGlzdCgpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICAvLyBpZiAoICF0aGlzLnByb3ZpZGVyPy5zdGFydGxvYWRTY2hlZHVsZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuc3RhcnRsb2FkU2NoZWR1bGUgbm90IHNldCcgKVxuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5zdGFydGxvYWRTY2hlZHVsZSApIHJldHVybiBzdXBlci5sb2FkUm93TGlzdCgpXG4gICAgIFxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5zdGFydGxvYWRTY2hlZHVsZSggKCkgPT4geyByZXR1cm4gc3VwZXIubG9hZFJvd0xpc3QoKSB9IClcbiAgICB9XG5cbiAgICBmZXRjaFJvd0xpc3RQYWdlKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgICAgIGlmICggIXRoaXMucHJvdmlkZXI/LmZldGNoU2NoZWR1bGUgKSB0aHJvdyBFcnJvciggJ1NjaGVkdWxlQ29tcG9uZW50LnByb3ZpZGVyLmZldGNoU2NoZWR1bGUgbm90IHNldCcgKVxuXG4gICAgICAgIHJldHVybiB0aGlzLnByb3ZpZGVyLmZldGNoU2NoZWR1bGUoKVxuICAgIH1cblxuICAgIHBhcnNlUm93cyggcmVzOiBhbnkgKTogU2NoZWR1bGVSb3dbXSB7XG4gICAgICAgIGlmICggIXRoaXMucHJvdmlkZXI/LnBhcnNlU2NoZWR1bGUgKSB0aHJvdyBFcnJvciggJ1NjaGVkdWxlQ29tcG9uZW50LnByb3ZpZGVyLnBhcnNlU2NoZWR1bGUgbm90IHNldCcgKVxuXG4gICAgICAgIGxldCByb3dzID0gdGhpcy5wcm92aWRlci5wYXJzZVNjaGVkdWxlKCByZXMgKVxuICAgICAgICByZXR1cm4gdGhpcy5tYWtlUm93cyggcm93cyApXG4gICAgfVxuXG4gICAgcGFyc2VUb3RhbFJvd0NvdW50KHJlczogYW55KTogbnVtYmVyIHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8ucGFyc2VUb3RhbFJvd0NvdW50ICkgcmV0dXJuIHN1cGVyLnBhcnNlVG90YWxSb3dDb3VudCggcmVzIClcblxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5wYXJzZVRvdGFsUm93Q291bnQoIHJlcyApXG4gICAgfVxuXG4gICAgZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpOiBJbml0aWFsU3RhdGU8e30+IHtcbiAgICAgICAgaWYgKCAhdGhpcy5wcm92aWRlcj8uZ2V0SW5pdGlhbFBhZ2VTdGF0ZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuZ2V0SW5pdGlhbFBhZ2VTdGF0ZSBub3Qgc2V0JyApXG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJvdmlkZXIuZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpXG4gICAgfVxuXG4gICAgY29tcGxldGVkUm93TGlzdFBhZ2UoKTogUGFnaW5hdGlvblN0YXRlPHt9PiB7XG4gICAgICAgIC8vIGlmICggIXRoaXMucHJvdmlkZXI/LmNvbXBsZXRlZExvYWRTY2hlZHVsZSApIHRocm93IEVycm9yKCAnU2NoZWR1bGVDb21wb25lbnQucHJvdmlkZXIuY29tcGxldGVkUm93TGlzdFBhZ2Ugbm90IHNldCcgKVxuICAgICAgICBpZiAoICF0aGlzLnByb3ZpZGVyPy5jb21wbGV0ZWRMb2FkU2NoZWR1bGUgKSByZXR1cm4gc3VwZXIuY29tcGxldGVkUm93TGlzdFBhZ2UoKSBhcyBhbnlcblxuICAgICAgICByZXR1cm4gdGhpcy5wcm92aWRlci5jb21wbGV0ZWRMb2FkU2NoZWR1bGUoICgpID0+IHsgcmV0dXJuIHN1cGVyLmNvbXBsZXRlZFJvd0xpc3RQYWdlKCkgfSApXG4gICAgfVxuXG4gICAgb25TYW1lUGFnZUZpbHRlckNoYW5nZSggZXY6IHt9ICk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbHRlciA9IGV2XG4gICAgICAgIHRoaXMucmVmcmVzaFJvd0xpc3QoKVxuICAgIH1cblxuICAgIG1ha2VSb3dzKCBzY2hlZHVsZTogU2NoZWR1bGUgKTogU2NoZWR1bGUge1xuICAgICAgICBsZXQgc3RhcnQgPSBtb21lbnQoIHRoaXMuc3RhcnREYXRlIClcbiAgICAgICAgbGV0IHRvZGF5ID0gbW9tZW50KClcblxuICAgICAgICB0aGlzLl93ZWVrcyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9ICkucmVkdWNlPFdlZWtbXT4oICggYSwgeCwgaSApID0+IHtcbiAgICAgICAgICAgIGxldCBtID0gc3RhcnQuY2xvbmUoKS5hZGQoIGksICdkYXknIClcbiAgICAgICAgICAgIGxldCBkYXRlID0gbS5mb3JtYXQoICdNTU0gRCcgKVxuICAgICAgICAgICAgbGV0IGRheSA9IG0uZGF5KClcblxuICAgICAgICAgICAgaWYgKCBhLmxlbmd0aCA9PSAwICkgcmV0dXJuIGEuY29uY2F0KCB7XG4gICAgICAgICAgICAgICAgc3RhcnQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgZW5kOiBkYXRlLFxuICAgICAgICAgICAgICAgIHNwYW46IDFcbiAgICAgICAgICAgIH0gKVxuXG4gICAgICAgICAgICBsZXQgcHJldiA9IGFbIGEubGVuZ3RoIC0gMSBdXG5cbiAgICAgICAgICAgIGlmICggZGF5ID09IHRoaXMud2Vla1N0YXJ0ICkgcmV0dXJuIGEuY29uY2F0KCB7XG4gICAgICAgICAgICAgICAgc3RhcnQ6IGRhdGUsXG4gICAgICAgICAgICAgICAgZW5kOiBkYXRlLFxuICAgICAgICAgICAgICAgIHNwYW46IDFcbiAgICAgICAgICAgIH0gKVxuXG4gICAgICAgICAgICBwcmV2LmVuZCA9IGRhdGVcbiAgICAgICAgICAgIHByZXYuc3BhbiArPSAxXG4gICAgICAgICAgICByZXR1cm4gYVxuICAgICAgICB9LCBbXSApXG5cbiAgICAgICAgdGhpcy5fZGF5cyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9ICkubWFwKCAoIHgsIGkgKSA9PiB7XG4gICAgICAgICAgICBsZXQgZCA9IHN0YXJ0LmNsb25lKCkuYWRkKCBpLCAnZGF5JyApXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIGRheU5hbWU6IGQuZm9ybWF0KCAnZGRkJyApLFxuICAgICAgICAgICAgICAgIG1vbnRoRGF5OiBkLmRhdGUoKSxcbiAgICAgICAgICAgICAgICBkYXRlOiBkLmZvcm1hdCggJ1ktTU0tREQnICksXG4gICAgICAgICAgICAgICAgaXNGaXJzdDogZC5kYXRlKCkgPT0gMSxcbiAgICAgICAgICAgICAgICBpc1dlZWtlbmQ6IGQuZGF5KCkgPT0gMCB8fCBkLmRheSgpID09IDYsXG4gICAgICAgICAgICAgICAgaXNUb2RheTogZC5pc1NhbWUoIHRvZGF5LCAnZGF5JyApLFxuICAgICAgICAgICAgICAgIGlzSGlnaGxpZ2h0OiBkLmlzU2FtZSggdGhpcy5oaWdobGlnaHREYXRlLCAnZGF5JyApXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gKVxuXG4gICAgICAgIHRoaXMuX3RlbXBsYXRlcyA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiBzY2hlZHVsZS5sZW5ndGggfSApXG5cbiAgICAgICAgcmV0dXJuIHNjaGVkdWxlLm1hcCggKCByb3csIGkgKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl90ZW1wbGF0ZXNbIGkgXSA9IEFycmF5LmZyb20oIHsgbGVuZ3RoOiB0aGlzLmRheUNvdW50ISB9IClcblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBpZDogcm93LmlkID8/IFN0cmluZyggaSApLFxuICAgICAgICAgICAgICAgIHJvd0NsYXNzOiByb3cucm93Q2xhc3MsXG4gICAgICAgICAgICAgICAgbWV0YWRhdGE6IHJvdy5tZXRhZGF0YSxcbiAgICAgICAgICAgICAgICBoZWFkaW5nOiByb3cuaGVhZGluZyxcbiAgICAgICAgICAgICAgICBpdGVtczogcm93Lml0ZW1zXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKCByb3dJdGVtcyA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQXJyYXkuZnJvbSggeyBsZW5ndGg6IHRoaXMuZGF5Q291bnQhIH0gKS5tYXAoICggeCwgaiApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgcm93SXRlbSA9IHJvd0l0ZW1zWyBqIF1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICggcm93SXRlbSA9PSBudWxsICkgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZDogU3RyaW5nKCBqICksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuYW1lOiAnZW1wdHknXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl90ZW1wbGF0ZXNbIGkgXVsgaiBdID0gdGhpcy5pdGVtVGVtcGxhdGVzPy5maW5kKCBpID0+IGkubmFtZSA9PSByb3dJdGVtPy5uYW1lICApPy50ZW1wbGF0ZSFcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByb3dJdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICB9IClcbiAgICAgICAgICAgICAgICAgICAgfSApXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gKSB8fCBbXVxuICAgIH1cbn1cbiIsIkBpZiAoIHJvd3M/Lmxlbmd0aCA+IDAgKSB7XG4gICAgPGRpdiBjbGFzcz1cInNjaGVkdWxlXCJcbiAgICAgICAgW2NsYXNzLmhlYWRpbmddPVwiaGVhZGluZ1wiXG4gICAgPlxuICAgICAgICBAaWYgKCBoZWFkaW5nICkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVwcGVyLWxlZnRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuXG4gICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgd2Vla3NcIj5cbiAgICAgICAgICAgIEBmb3IgKCB3ZWVrIG9mIF93ZWVrczsgdHJhY2sgJGluZGV4ICkge1xuICAgICAgICAgICAgICAgIEBpZiAoIHdlZWsuc3BhbiA9PSAxICkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2Vla1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgd2Vlay5zdGFydCB9fVxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2Vla1wiIFtzdHlsZS5ncmlkLWNvbHVtbl09XCInc3BhbiAnICsgd2Vlay5zcGFuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyB3ZWVrLnN0YXJ0IH19IC0ge3sgd2Vlay5lbmQgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwicm93IGRheXNcIj4gICAgXG4gICAgICAgICAgICBAZm9yICggZGF5IG9mIF9kYXlzOyB0cmFjayAkaW5kZXggKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImRheVwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy53ZWVrZW5kXT1cImRheS5pc1dlZWtlbmRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MudG9kYXldPVwiZGF5LmlzVG9kYXlcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuZmlyc3RdPVwiZGF5LmlzRmlyc3RcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuaGlnaGxpZ2h0XT1cImRheS5pc0hpZ2hsaWdodFwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF5LW5hbWVcIj57eyBkYXkuZGF5TmFtZSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZGF0ZVwiPnt7IGRheS5tb250aERheSB9fTwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICBAZm9yICggcm93IG9mIHJvd3MgfCBwYWdpbmF0ZTogcGFnaW5hdGVTdGF0ZSggJ25yY2wtc2NoZWR1bGUnICk7IHRyYWNrIHJvdy5pZDsgbGV0IHJvd0luZGV4ID0gJGluZGV4ICkge1xuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJvdyBpdGVtc1wiIFtjbGFzc109XCJyb3cucm93Q2xhc3NcIj5cbiAgICAgICAgICAgICAgICBAaWYgKCBoZWFkaW5nICkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3V0ZXIgaGVhZGluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlubmVyIGhlYWRpbmdcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWFkZXJUZW1wbGF0ZT8udGVtcGxhdGVcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiB7IGhlYWRpbmc6IHJvdy5oZWFkaW5nLCBtZXRhZGF0YTogcm93Lm1ldGFkYXRhIH0gfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PiAgICBcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAaWYgKCByb3cuaXRlbXMgfCBhc3luYzsgYXMgcm93SXRlbXMgKSB7XG4gICAgICAgICAgICAgICAgICAgIEBmb3IgKCBpdGVtIG9mIHJvd0l0ZW1zOyB0cmFjayBpdGVtLmlkOyBsZXQgY29sSW5kZXggPSAkaW5kZXggKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3V0ZXIgaXRlbVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLm1lbnUtb3Blbl09XCJpdGVtTWVudS5tZW51T3BlblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmhpZ2hsaWdodF09XCJfZGF5c1sgY29sSW5kZXggXS5pc0hpZ2hsaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmhvdmVyXT1cImhvdmVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5uZXIgaXRlbVwiICNpdGVtTWVudT1cIm1hdE1lbnVUcmlnZ2VyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidpdGVtLScgKyBpdGVtLm5hbWVcIiBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF0UmlwcGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRSaXBwbGVEaXNhYmxlZF09XCIhaG92ZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFttYXRNZW51VHJpZ2dlckRhdGFdPVwieyAkaW1wbGljaXQ6IHsgaGVhZGluZzogcm93LmhlYWRpbmcsIG1ldGFkYXRhOiByb3cubWV0YWRhdGEsIGl0ZW06IGl0ZW0gfSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25yY2xUb29sdGlwXT1cIml0ZW0/LnRvb2x0aXA/LigpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnJjbFRvb2x0aXBDbGFzcz1cInNjaGVkdWxlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25yY2xUb29sdGlwQ29udGV4dF09XCJ7ICRpbXBsaWNpdDogeyBoZWFkaW5nOiByb3cuaGVhZGluZywgbWV0YWRhdGE6IHJvdy5tZXRhZGF0YSwgaXRlbTogaXRlbSB9IH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MudHJhdmVsXT1cIml0ZW0/LnRyYXZlbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiX3RlbXBsYXRlc1sgcm93SW5kZXggXVsgY29sSW5kZXggXSB8fCBlbXB0eVwiIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbGV0IGljb25zID0gaXRlbT8uaWNvbnM/LigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgKCBpY29ucyAmJiBpY29ucy5sZW5ndGggPiAwICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImljb25zXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoIGljb24gb2YgaWNvbnM7IHRyYWNrIGljb24gKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxucmNsLWljb24gc21hbGw+e3sgaWNvbiB9fTwvbnJjbC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgQGZvciAoIGRheSBvZiBfZGF5czsgdHJhY2sgZGF5ICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIml0ZW0gaXRlbS1sb2FkaW5nXCI+PC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxufVxuXG5AaWYgKCByb3dzPy5sZW5ndGggPiAwICYmIHBhZ2luYXRpb24gKSB7XG4gICAgPG5yY2wtZ2FwLz5cbn1cblxuQGlmICggcGFnaW5hdGlvbiApIHtcbiAgICBAaWYgKCBpc0ZpcnN0TG9hZCApIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImxvYWRpbmctcm93c1wiPnt7IGxvYWRpbmdNZXNzYWdlIH19PC9kaXY+XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgPG5yY2wtcm93LWxpc3QtcGFnaW5hdGlvblxuICAgICAgICAgICAgcGFnaW5hdGlvbklkPVwibnJjbC1zY2hlZHVsZVwiXG4gICAgICAgICAgICBbcGFnZVNpemVdPVwicGFnZVNpemVcIlxuICAgICAgICAgICAgW3BhZ2VOdW1iZXJdPVwicGFnZU51bWJlclwiXG4gICAgICAgICAgICBbcm93Q291bnRdPVwidG90YWxSb3dDb3VudFwiXG4gICAgICAgICAgICAocGFnZU51bWJlckNoYW5nZSk9XCJvblBhZ2VOdW1iZXJDaGFuZ2UoICRldmVudCApXCJcbiAgICAgICAgICAgIChwYWdlU2l6ZUNoYW5nZSk9XCJvblBhZ2VTaXplQ2hhbmdlKCAkZXZlbnQgKVwiXG4gICAgICAgID48L25yY2wtcm93LWxpc3QtcGFnaW5hdGlvbj5cbiAgICB9XG59XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHk+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -47,32 +47,32 @@ export class PaginationBase extends NrclBase {
47
47
  // console.log('onFilterChange',ev)
48
48
  this.filter = ev;
49
49
  this._pageConfig.pageNumber = 1;
50
- this.onPageStateChanged();
50
+ return this.onPageStateChanged();
51
51
  }
52
52
  onSortChange(ev) {
53
53
  // console.log('onSortChange',ev)
54
54
  if (this._pageConfig.sortActive == ev.active)
55
55
  if (this._pageConfig.sortDirection == ev.direction)
56
- return;
56
+ return Promise.resolve();
57
57
  this._pageConfig.sortActive = ev.active;
58
58
  this._pageConfig.sortDirection = ev.direction;
59
59
  this._pageConfig.pageNumber = 1;
60
- this.onPageStateChanged();
60
+ return this.onPageStateChanged();
61
61
  }
62
62
  onPageSizeChange(ev) {
63
63
  // console.log('onPageSizeChange',ev)
64
64
  if (this._pageConfig.pageSize == ev)
65
- return;
65
+ return Promise.resolve();
66
66
  this._pageConfig.pageSize = ev;
67
67
  this._pageConfig.pageNumber = 1;
68
- this.onPageStateChanged();
68
+ return this.onPageStateChanged();
69
69
  }
70
70
  onPageNumberChange(ev) {
71
71
  // console.log('onPageNumberChange',ev)
72
72
  if (this._pageConfig.pageNumber == ev)
73
73
  return;
74
74
  this._pageConfig.pageNumber = ev;
75
- this.onPageStateChanged();
75
+ return this.onPageStateChanged();
76
76
  }
77
77
  onPageStateChanged() {
78
78
  // console.log('onPageStateChanged')
@@ -139,4 +139,4 @@ export class PaginationBase extends NrclBase {
139
139
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: PaginationBase, decorators: [{
140
140
  type: Directive
141
141
  }] });
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQXlCdkMsTUFBTSxPQUFnQixjQUFrQixTQUFRLFFBQVE7SUFEeEQ7O1FBRUkscUJBQWdCLEdBQUcsTUFBTSxDQUFFLGdCQUFnQixDQUFFLENBQUE7UUFDN0Msc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7UUFFckMsbUJBQWMsR0FBVyxDQUFDLENBQUE7UUFHNUIsZ0JBQVcsR0FBcUI7WUFDcEMsUUFBUSxFQUFRLENBQUM7WUFDakIsVUFBVSxFQUFNLENBQUM7WUFDakIsVUFBVSxFQUFNLEVBQUU7WUFDbEIsYUFBYSxFQUFHLEtBQUs7U0FDeEIsQ0FBQTtLQW1KSjtJQTFKRyxJQUFJLGFBQWEsS0FBYSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUEsQ0FBQyxDQUFDO0lBUTFELElBQUksUUFBUSxLQUEwQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFBLENBQUMsQ0FBQztJQUN4RSxJQUFJLFVBQVUsS0FBd0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUM7SUFDMUUsSUFBSSxVQUFVLEtBQXdCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUEsQ0FBQyxDQUFDO0lBQzFFLElBQUksYUFBYSxLQUFxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMs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RSxJQUFJLENBQUMsU0FBVSxDQUFFLENBQUE7UUFDakUsSUFBSyxDQUFDLEtBQUs7WUFBRyxPQUFNO1FBRXBCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBRSxLQUFLLENBQUUsQ0FBQTtJQUM5QixDQUFDO0lBRUQsYUFBYSxDQUFFLEVBQVU7UUFDckIsT0FBTztZQUNILEVBQUU7WUFDRixZQUFZLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO1lBQ3ZDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7WUFDeEMsVUFBVSxFQUFFLElBQUksQ0FBQyxjQUFjO1NBQ2xDLENBQUE7SUFDTCxDQUFDO0lBRUQsb0JBQW9CLENBQUUsS0FBYztRQUNoQyxPQUFPO1lBQ0gsS0FBSztZQUNMLFVBQVUsRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVU7WUFDdkMsWUFBWSxFQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUTtZQUN4QyxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVU7WUFDM0IsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQ3BDLENBQUE7SUFDTCxDQUFDOytHQTlKaUIsY0FBYzttR0FBZCxjQUFjOzs0RkFBZCxjQUFjO2tCQURuQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IFNvcnQsIFNvcnREaXJlY3Rpb24gfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydFwiO1xuaW1wb3J0IHsgUGFnZVN0YXRlU2VydmljZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9wYWdlLXN0YXRlLnNlcnZpY2VcIjtcbmltcG9ydCB7IE5yY2xCYXNlIH0gZnJvbSBcIi4vbnJjbC5iYXNlXCI7XG5cbmV4cG9ydCB0eXBlIFBhZ2luYXRpb25Db25maWcgPSB7ICAgIFxuICAgIHBhZ2VTaXplOiBudW1iZXJcbiAgICBwYWdlTnVtYmVyOiBudW1iZXJcbiAgICBzb3J0QWN0aXZlOiBzdHJpbmcgXG4gICAgc29ydERpcmVjdGlvbjogU29ydERpcmVjdGlvblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2luZ0luZm9SZXF1ZXN0IHtcbiAgICBxdWVyeT86IHN0cmluZztcbiAgICBwYWdlTnVtYmVyOiBudW1iZXI7XG4gICAgcGFnZVJvd0NvdW50OiBudW1iZXI7XG4gICAgc29ydENvbHVtbj86IHN0cmluZztcbiAgICBzb3J0RGlyZWN0aW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBQYWdpbmF0aW9uU3RhdGU8Rj4gPSB7IFxuICAgIHBhZ2VDb25maWc6IFBhZ2luYXRpb25Db25maWcsIFxuICAgIGZpbHRlcjogRiwgXG59XG5cbmV4cG9ydCB0eXBlIEluaXRpYWxTdGF0ZTxGPiA9IFBhZ2luYXRpb25TdGF0ZTxGPiAmIHsgaW5zdGFuY2U/OiBzdHJpbmcgfVxuXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQYWdpbmF0aW9uQmFzZTxGPiBleHRlbmRzIE5yY2xCYXNlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgcGFnZVN0YXRlU2VydmljZSA9IGluamVjdCggUGFnZVN0YXRlU2VydmljZSApXG4gICAgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoIENoYW5nZURldGVjdG9yUmVmIClcblxuICAgIHByb3RlY3RlZCBfdG90YWxSb3dDb3VudDogbnVtYmVyID0gMFxuICAgIGdldCB0b3RhbFJvd0NvdW50KCk6IG51bWJlciB7IHJldHVybiB0aGlzLl90b3RhbFJvd0NvdW50IH1cblxuICAgIHByaXZhdGUgX3BhZ2VDb25maWc6IFBhZ2luYXRpb25Db25maWcgPSB7XG4gICAgICAgIHBhZ2VTaXplOiAgICAgICAwLFxuICAgICAgICBwYWdlTnVtYmVyOiAgICAgMSxcbiAgICAgICAgc29ydEFjdGl2ZTogICAgICcnLFxuICAgICAgICBzb3J0RGlyZWN0aW9uOiAgJ2FzYydcbiAgICB9XG4gICAgZ2V0IHBhZ2VTaXplKCk6IG51bWJlciAgICAgICAgICAgICAgeyByZXR1cm4gdGhpcy5fcGFnZUNvbmZpZy5wYWdlU2l6ZSB9XG4gICAgZ2V0IHBhZ2VOdW1iZXIoKTogbnVtYmVyICAgICAgICAgICAgeyByZXR1cm4gdGhpcy5fcGFnZUNvbmZpZy5wYWdlTnVtYmVyIH1cbiAgICBnZXQgc29ydEFjdGl2ZSgpOiBzdHJpbmcgICAgICAgICAgICB7IHJldHVybiB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgfVxuICAgIGdldCBzb3J0RGlyZWN0aW9uKCk6IFNvcnREaXJlY3Rpb24gIHsgcmV0dXJuIHRoaXMuX3BhZ2VDb25maWcuc29ydERpcmVjdGlvbiB9XG5cbiAgICBwcml2YXRlIF9maWx0ZXI/OiBGXG4gICAgZ2V0IGZpbHRlcigpOiBGIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZpbHRlciBhcyBGXG4gICAgfVxuICAgIHByb3RlY3RlZCBzZXQgZmlsdGVyKCBmOiBGICkge1xuICAgICAgICB0aGlzLl9maWx0ZXIgPSB0aGlzLmNsb25lKCBmIClcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgX2luc3RhbmNlPzogc3RyaW5nXG4gICAgZ2V0IGluc3RhbmNlKCk6IHN0cmluZ3x1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5zdGFuY2VcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdQYWdpbmF0aW9uQmFzZS5uZ0FmdGVyVmlld0luaXQnKVxuICAgICAgICB0aGlzLm9uSW5pdFBhZ2VTdGF0ZSgpXG4gICAgfVxuXG4gICAgb25Jbml0UGFnZVN0YXRlKCkge1xuICAgICAgICBsZXQgaW5pdCA9IHRoaXMuZ2V0SW5pdGlhbFBhZ2VTdGF0ZSgpXG4gICAgICAgIHRoaXMuX2luc3RhbmNlID0gaW5pdC5pbnN0YW5jZVxuXG4gICAgICAgIGxldCBzYXZlZCA9IHRoaXMucmV0cmlldmVTdGF0ZSgpXG5cbiAgICAgICAgdGhpcy5zZXRDdXJyZW50UGFnZVN0YXRlKCBzYXZlZCB8fCBpbml0IClcbiAgICAgICAgdGhpcy5vblBhZ2VTdGF0ZUNoYW5nZWQoKVxuICAgIH1cblxuICAgIGNsb25lKCBvYmo6IGFueSApIHtcbiAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoIEpTT04uc3RyaW5naWZ5KCBvYmogKSApIFxuICAgIH1cblxuICAgIG9uRmlsdGVyQ2hhbmdlKCBldjogRiApIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ29uRmlsdGVyQ2hhbmdlJyxldilcbiAgICAgICAgdGhpcy5maWx0ZXIgPSBldiBcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5wYWdlTnVtYmVyID0gMVxuXG4gICAgICAgIHRoaXMub25QYWdlU3RhdGVDaGFuZ2VkKClcbiAgICB9XG5cbiAgICBvblNvcnRDaGFuZ2UoIGV2OiBTb3J0ICkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnb25Tb3J0Q2hhbmdlJyxldilcbiAgICAgICAgaWYgKCB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgPT0gZXYuYWN0aXZlICkgXG4gICAgICAgICAgICBpZiAoIHRoaXMuX3BhZ2VDb25maWcuc29ydERpcmVjdGlvbiA9PSBldi5kaXJlY3Rpb24gKSBcbiAgICAgICAgICAgICAgICByZXR1cm5cblxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgPSBldi5hY3RpdmVcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uID0gZXYuZGlyZWN0aW9uXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9IDFcblxuICAgICAgICB0aGlzLm9uUGFnZVN0YXRlQ2hhbmdlZCgpXG4gICAgfVxuXG4gICAgb25QYWdlU2l6ZUNoYW5nZSggZXY6IG51bWJlciApIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ29uUGFnZVNpemVDaGFuZ2UnLGV2KVxuICAgICAgICBpZiAoIHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUgPT0gZXYgKSByZXR1cm5cblxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VTaXplID0gZXYgXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9IDFcblxuICAgICAgICB0aGlzLm9uUGFnZVN0YXRlQ2hhbmdlZCgpXG4gICAgfVxuXG4gICAgb25QYWdlTnVtYmVyQ2hhbmdlKCBldjogbnVtYmVyICkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnb25QYWdlTnVtYmVyQ2hhbmdlJyxldilcbiAgICAgICAgaWYgKCB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIgPT0gZXYgKSByZXR1cm5cblxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIgPSBldlxuXG4gICAgICAgIHRoaXMub25QYWdlU3RhdGVDaGFuZ2VkKClcbiAgICB9XG5cbiAgICBvblBhZ2VTdGF0ZUNoYW5nZWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdvblBhZ2VTdGF0ZUNoYW5nZWQnKVxuICAgICAgICByZXR1cm4gdGhpcy5yZWZyZXNoKClcbiAgICAgICAgICAgIC50aGVuKCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHN0YXRlID0gdGhpcy5nZXRDdXJyZW50UGFnZVN0YXRlKClcbiAgICAgICAgICAgICAgICB0aGlzLnBlcnNpc3RTdGF0ZSggc3RhdGUgKVxuICAgICAgICAgICAgfSApXG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHJlZnJlc2goKTogUHJvbWlzZTx2b2lkPiBcblxuICAgIGFic3RyYWN0IGdldEluaXRpYWxQYWdlU3RhdGUoKTogSW5pdGlhbFN0YXRlPEY+XG5cbiAgICBnZXRDdXJyZW50UGFnZVN0YXRlKCk6IFBhZ2luYXRpb25TdGF0ZTxGPiB7XG4gICAgICAgIGxldCBzdGF0ZSA9IHtcbiAgICAgICAgICAgIGZpbHRlcjogdGhpcy5maWx0ZXIsXG4gICAgICAgICAgICBwYWdlQ29uZmlnOiB7XG4gICAgICAgICAgICAgICAgcGFnZVNpemU6IHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUsXG4gICAgICAgICAgICAgICAgcGFnZU51bWJlcjogdGhpcy5fcGFnZUNvbmZpZy5wYWdlTnVtYmVyLFxuICAgICAgICAgICAgICAgIHNvcnRBY3RpdmU6IHRoaXMuX3BhZ2VDb25maWcuc29ydEFjdGl2ZSxcbiAgICAgICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiB0aGlzLl9wYWdlQ29uZmlnLnNvcnREaXJlY3Rpb24sXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gY29uc29sZS5sb2coJ2dldEN1cnJlbnRQYWdlU3RhdGUnLHN0YXRlKVxuICAgICAgICByZXR1cm4gc3RhdGVcbiAgICB9XG5cbiAgICBzZXRDdXJyZW50UGFnZVN0YXRlKCBzdGF0ZTogUGFnaW5hdGlvblN0YXRlPEY+ICkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnc2V0Q3VycmVudFBhZ2VTdGF0ZScsc3RhdGUpXG4gICAgICAgIHRoaXMuZmlsdGVyID0gc3RhdGUuZmlsdGVyXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUgPSBzdGF0ZS5wYWdlQ29uZmlnLnBhZ2VTaXplXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9IHN0YXRlLnBhZ2VDb25maWcucGFnZU51bWJlclxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgPSBzdGF0ZS5wYWdlQ29uZmlnLnNvcnRBY3RpdmVcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uID0gc3RhdGUucGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uXG4gICAgfVxuXG4gICAgcGVyc2lzdFN0YXRlKCBzdGF0ZTogUGFnaW5hdGlvblN0YXRlPEY+ICkge1xuICAgICAgICBpZiAoICF0aGlzLl9pbnN0YW5jZSApIHJldHVyblxuXG4gICAgICAgIHRoaXMucGFnZVN0YXRlU2VydmljZS5zZXRQYWdlU3RhdGUoIHRoaXMuX2luc3RhbmNlISwgSlNPTi5zdHJpbmdpZnkoIHN0YXRlICkgKVxuICAgIH1cblxuICAgIHJldHJpZXZlU3RhdGUoKTogUGFnaW5hdGlvblN0YXRlPEY+fHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICggIXRoaXMuX2luc3RhbmNlICkgcmV0dXJuXG4gICAgICAgIFxuICAgICAgICBsZXQgc3RhdGUgPSB0aGlzLnBhZ2VTdGF0ZVNlcnZpY2UuZ2V0UGFnZVN0YXRlKCB0aGlzLl9pbnN0YW5jZSEgKVxuICAgICAgICBpZiAoICFzdGF0ZSApIHJldHVyblxuXG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKCBzdGF0ZSApXG4gICAgfVxuXG4gICAgcGFnaW5hdGVTdGF0ZSggaWQ6IHN0cmluZyApIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgaXRlbXNQZXJQYWdlOiB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VTaXplLFxuICAgICAgICAgICAgY3VycmVudFBhZ2U6IHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlcixcbiAgICAgICAgICAgIHRvdGFsSXRlbXM6IHRoaXMuX3RvdGFsUm93Q291bnRcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFBhZ2luZ0luZm9SZXF1ZXN0KCBxdWVyeT86IHN0cmluZyApOiBQYWdpbmdJbmZvUmVxdWVzdCB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBxdWVyeSxcbiAgICAgICAgICAgIHBhZ2VOdW1iZXI6IHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlcixcbiAgICAgICAgICAgIHBhZ2VSb3dDb3VudDogIHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUsXG4gICAgICAgICAgICBzb3J0Q29sdW1uOiB0aGlzLnNvcnRBY3RpdmUsXG4gICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiB0aGlzLnNvcnREaXJlY3Rpb25cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbnItbmd4LWNvbXBvbmVudC1saWIvc3JjL2RpcmVjdGl2ZXMvcGFnaW5hdGlvbi5iYXNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFDOztBQXlCdkMsTUFBTSxPQUFnQixjQUFrQixTQUFRLFFBQVE7SUFEeEQ7O1FBRUkscUJBQWdCLEdBQUcsTUFBTSxDQUFFLGdCQUFnQixDQUFFLENBQUE7UUFDN0Msc0JBQWlCLEdBQUcsTUFBTSxDQUFFLGlCQUFpQixDQUFFLENBQUE7UUFFckMsbUJBQWMsR0FBVyxDQUFDLENBQUE7UUFHNUIsZ0JBQVcsR0FBcUI7WUFDcEMsUUFBUSxFQUFRLENBQUM7WUFDakIsVUFBVSxFQUFNLENBQUM7WUFDakIsVUFBVSxFQUFNLEVBQUU7WUFDbEIsYUFBYSxFQUFHLEtBQUs7U0FDeEIsQ0FBQTtLQW1KSjtJQTFKRyxJQUFJLGFBQWEsS0FBYSxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUEsQ0FBQyxDQUFDO0lBUTFELElBQUksUUFBUSxLQUEwQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFBLENBQUMsQ0FBQztJQUN4RSxJQUFJLFVBQVUsS0FBd0IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQSxDQUFDLENBQUM7SUFDMUUsSUFBSSxVQUFVLEtBQXdCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUEsQ0FBQyxDQUFDO0lBQzFFLElBQUksYUFBYSxLQUFxQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMs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Q0FBQyxTQUFTO1lBQUcsT0FBTTtRQUU3QixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsWUFBWSxDQUFFLElBQUksQ0FBQyxTQUFVLENBQUUsQ0FBQTtRQUNqRSxJQUFLLENBQUMsS0FBSztZQUFHLE9BQU07UUFFcEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFFLEtBQUssQ0FBRSxDQUFBO0lBQzlCLENBQUM7SUFFRCxhQUFhLENBQUUsRUFBVTtRQUNyQixPQUFPO1lBQ0gsRUFBRTtZQUNGLFlBQVksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVE7WUFDdkMsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVTtZQUN4QyxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWM7U0FDbEMsQ0FBQTtJQUNMLENBQUM7SUFFRCxvQkFBb0IsQ0FBRSxLQUFjO1FBQ2hDLE9BQU87WUFDSCxLQUFLO1lBQ0wsVUFBVSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsVUFBVTtZQUN2QyxZQUFZLEVBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRO1lBQ3hDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDcEMsQ0FBQTtJQUNMLENBQUM7K0dBOUppQixjQUFjO21HQUFkLGNBQWM7OzRGQUFkLGNBQWM7a0JBRG5DLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBpbmplY3QgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgU29ydCwgU29ydERpcmVjdGlvbiB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zb3J0XCI7XG5pbXBvcnQgeyBQYWdlU3RhdGVTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL3BhZ2Utc3RhdGUuc2VydmljZVwiO1xuaW1wb3J0IHsgTnJjbEJhc2UgfSBmcm9tIFwiLi9ucmNsLmJhc2VcIjtcblxuZXhwb3J0IHR5cGUgUGFnaW5hdGlvbkNvbmZpZyA9IHsgICAgXG4gICAgcGFnZVNpemU6IG51bWJlclxuICAgIHBhZ2VOdW1iZXI6IG51bWJlclxuICAgIHNvcnRBY3RpdmU6IHN0cmluZyBcbiAgICBzb3J0RGlyZWN0aW9uOiBTb3J0RGlyZWN0aW9uXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGFnaW5nSW5mb1JlcXVlc3Qge1xuICAgIHF1ZXJ5Pzogc3RyaW5nO1xuICAgIHBhZ2VOdW1iZXI6IG51bWJlcjtcbiAgICBwYWdlUm93Q291bnQ6IG51bWJlcjtcbiAgICBzb3J0Q29sdW1uPzogc3RyaW5nO1xuICAgIHNvcnREaXJlY3Rpb24/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFBhZ2luYXRpb25TdGF0ZTxGPiA9IHsgXG4gICAgcGFnZUNvbmZpZzogUGFnaW5hdGlvbkNvbmZpZywgXG4gICAgZmlsdGVyOiBGLCBcbn1cblxuZXhwb3J0IHR5cGUgSW5pdGlhbFN0YXRlPEY+ID0gUGFnaW5hdGlvblN0YXRlPEY+ICYgeyBpbnN0YW5jZT86IHN0cmluZyB9XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBhZ2luYXRpb25CYXNlPEY+IGV4dGVuZHMgTnJjbEJhc2UgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcbiAgICBwYWdlU3RhdGVTZXJ2aWNlID0gaW5qZWN0KCBQYWdlU3RhdGVTZXJ2aWNlIClcbiAgICBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdCggQ2hhbmdlRGV0ZWN0b3JSZWYgKVxuXG4gICAgcHJvdGVjdGVkIF90b3RhbFJvd0NvdW50OiBudW1iZXIgPSAwXG4gICAgZ2V0IHRvdGFsUm93Q291bnQoKTogbnVtYmVyIHsgcmV0dXJuIHRoaXMuX3RvdGFsUm93Q291bnQgfVxuXG4gICAgcHJpdmF0ZSBfcGFnZUNvbmZpZzogUGFnaW5hdGlvbkNvbmZpZyA9IHtcbiAgICAgICAgcGFnZVNpemU6ICAgICAgIDAsXG4gICAgICAgIHBhZ2VOdW1iZXI6ICAgICAxLFxuICAgICAgICBzb3J0QWN0aXZlOiAgICAgJycsXG4gICAgICAgIHNvcnREaXJlY3Rpb246ICAnYXNjJ1xuICAgIH1cbiAgICBnZXQgcGFnZVNpemUoKTogbnVtYmVyICAgICAgICAgICAgICB7IHJldHVybiB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VTaXplIH1cbiAgICBnZXQgcGFnZU51bWJlcigpOiBudW1iZXIgICAgICAgICAgICB7IHJldHVybiB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIgfVxuICAgIGdldCBzb3J0QWN0aXZlKCk6IHN0cmluZyAgICAgICAgICAgIHsgcmV0dXJuIHRoaXMuX3BhZ2VDb25maWcuc29ydEFjdGl2ZSB9XG4gICAgZ2V0IHNvcnREaXJlY3Rpb24oKTogU29ydERpcmVjdGlvbiAgeyByZXR1cm4gdGhpcy5fcGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uIH1cblxuICAgIHByaXZhdGUgX2ZpbHRlcj86IEZcbiAgICBnZXQgZmlsdGVyKCk6IEYge1xuICAgICAgICByZXR1cm4gdGhpcy5fZmlsdGVyIGFzIEZcbiAgICB9XG4gICAgcHJvdGVjdGVkIHNldCBmaWx0ZXIoIGY6IEYgKSB7XG4gICAgICAgIHRoaXMuX2ZpbHRlciA9IHRoaXMuY2xvbmUoIGYgKVxuICAgIH1cblxuICAgIHByb3RlY3RlZCBfaW5zdGFuY2U/OiBzdHJpbmdcbiAgICBnZXQgaW5zdGFuY2UoKTogc3RyaW5nfHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbnN0YW5jZVxuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gY29uc29sZS5sb2coJ1BhZ2luYXRpb25CYXNlLm5nQWZ0ZXJWaWV3SW5pdCcpXG4gICAgICAgIHRoaXMub25Jbml0UGFnZVN0YXRlKClcbiAgICB9XG5cbiAgICBvbkluaXRQYWdlU3RhdGUoKSB7XG4gICAgICAgIGxldCBpbml0ID0gdGhpcy5nZXRJbml0aWFsUGFnZVN0YXRlKClcbiAgICAgICAgdGhpcy5faW5zdGFuY2UgPSBpbml0Lmluc3RhbmNlXG5cbiAgICAgICAgbGV0IHNhdmVkID0gdGhpcy5yZXRyaWV2ZVN0YXRlKClcblxuICAgICAgICB0aGlzLnNldEN1cnJlbnRQYWdlU3RhdGUoIHNhdmVkIHx8IGluaXQgKVxuICAgICAgICB0aGlzLm9uUGFnZVN0YXRlQ2hhbmdlZCgpXG4gICAgfVxuXG4gICAgY2xvbmUoIG9iajogYW55ICkge1xuICAgICAgICByZXR1cm4gSlNPTi5wYXJzZSggSlNPTi5zdHJpbmdpZnkoIG9iaiApICkgXG4gICAgfVxuXG4gICAgb25GaWx0ZXJDaGFuZ2UoIGV2OiBGICk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnb25GaWx0ZXJDaGFuZ2UnLGV2KVxuICAgICAgICB0aGlzLmZpbHRlciA9IGV2IFxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIgPSAxXG5cbiAgICAgICAgcmV0dXJuIHRoaXMub25QYWdlU3RhdGVDaGFuZ2VkKClcbiAgICB9XG5cbiAgICBvblNvcnRDaGFuZ2UoIGV2OiBTb3J0ICk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnb25Tb3J0Q2hhbmdlJyxldilcbiAgICAgICAgaWYgKCB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgPT0gZXYuYWN0aXZlICkgXG4gICAgICAgICAgICBpZiAoIHRoaXMuX3BhZ2VDb25maWcuc29ydERpcmVjdGlvbiA9PSBldi5kaXJlY3Rpb24gKSBcbiAgICAgICAgICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcblxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgPSBldi5hY3RpdmVcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uID0gZXYuZGlyZWN0aW9uXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9IDFcblxuICAgICAgICByZXR1cm4gdGhpcy5vblBhZ2VTdGF0ZUNoYW5nZWQoKVxuICAgIH1cblxuICAgIG9uUGFnZVNpemVDaGFuZ2UoIGV2OiBudW1iZXIgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdvblBhZ2VTaXplQ2hhbmdlJyxldilcbiAgICAgICAgaWYgKCB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VTaXplID09IGV2ICkgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpXG5cbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5wYWdlU2l6ZSA9IGV2IFxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VOdW1iZXIgPSAxXG5cbiAgICAgICAgcmV0dXJuIHRoaXMub25QYWdlU3RhdGVDaGFuZ2VkKClcbiAgICB9XG5cbiAgICBvblBhZ2VOdW1iZXJDaGFuZ2UoIGV2OiBudW1iZXIgKSB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdvblBhZ2VOdW1iZXJDaGFuZ2UnLGV2KVxuICAgICAgICBpZiAoIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9PSBldiApIHJldHVyblxuXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9IGV2XG5cbiAgICAgICAgcmV0dXJuIHRoaXMub25QYWdlU3RhdGVDaGFuZ2VkKClcbiAgICB9XG5cbiAgICBvblBhZ2VTdGF0ZUNoYW5nZWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIC8vIGNvbnNvbGUubG9nKCdvblBhZ2VTdGF0ZUNoYW5nZWQnKVxuICAgICAgICByZXR1cm4gdGhpcy5yZWZyZXNoKClcbiAgICAgICAgICAgIC50aGVuKCAoKSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHN0YXRlID0gdGhpcy5nZXRDdXJyZW50UGFnZVN0YXRlKClcbiAgICAgICAgICAgICAgICB0aGlzLnBlcnNpc3RTdGF0ZSggc3RhdGUgKVxuICAgICAgICAgICAgfSApXG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHJlZnJlc2goKTogUHJvbWlzZTx2b2lkPiBcblxuICAgIGFic3RyYWN0IGdldEluaXRpYWxQYWdlU3RhdGUoKTogSW5pdGlhbFN0YXRlPEY+XG5cbiAgICBnZXRDdXJyZW50UGFnZVN0YXRlKCk6IFBhZ2luYXRpb25TdGF0ZTxGPiB7XG4gICAgICAgIGxldCBzdGF0ZSA9IHtcbiAgICAgICAgICAgIGZpbHRlcjogdGhpcy5maWx0ZXIsXG4gICAgICAgICAgICBwYWdlQ29uZmlnOiB7XG4gICAgICAgICAgICAgICAgcGFnZVNpemU6IHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUsXG4gICAgICAgICAgICAgICAgcGFnZU51bWJlcjogdGhpcy5fcGFnZUNvbmZpZy5wYWdlTnVtYmVyLFxuICAgICAgICAgICAgICAgIHNvcnRBY3RpdmU6IHRoaXMuX3BhZ2VDb25maWcuc29ydEFjdGl2ZSxcbiAgICAgICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiB0aGlzLl9wYWdlQ29uZmlnLnNvcnREaXJlY3Rpb24sXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gY29uc29sZS5sb2coJ2dldEN1cnJlbnRQYWdlU3RhdGUnLHN0YXRlKVxuICAgICAgICByZXR1cm4gc3RhdGVcbiAgICB9XG5cbiAgICBzZXRDdXJyZW50UGFnZVN0YXRlKCBzdGF0ZTogUGFnaW5hdGlvblN0YXRlPEY+ICkge1xuICAgICAgICAvLyBjb25zb2xlLmxvZygnc2V0Q3VycmVudFBhZ2VTdGF0ZScsc3RhdGUpXG4gICAgICAgIHRoaXMuZmlsdGVyID0gc3RhdGUuZmlsdGVyXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUgPSBzdGF0ZS5wYWdlQ29uZmlnLnBhZ2VTaXplXG4gICAgICAgIHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlciA9IHN0YXRlLnBhZ2VDb25maWcucGFnZU51bWJlclxuICAgICAgICB0aGlzLl9wYWdlQ29uZmlnLnNvcnRBY3RpdmUgPSBzdGF0ZS5wYWdlQ29uZmlnLnNvcnRBY3RpdmVcbiAgICAgICAgdGhpcy5fcGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uID0gc3RhdGUucGFnZUNvbmZpZy5zb3J0RGlyZWN0aW9uXG4gICAgfVxuXG4gICAgcGVyc2lzdFN0YXRlKCBzdGF0ZTogUGFnaW5hdGlvblN0YXRlPEY+ICkge1xuICAgICAgICBpZiAoICF0aGlzLl9pbnN0YW5jZSApIHJldHVyblxuXG4gICAgICAgIHRoaXMucGFnZVN0YXRlU2VydmljZS5zZXRQYWdlU3RhdGUoIHRoaXMuX2luc3RhbmNlISwgSlNPTi5zdHJpbmdpZnkoIHN0YXRlICkgKVxuICAgIH1cblxuICAgIHJldHJpZXZlU3RhdGUoKTogUGFnaW5hdGlvblN0YXRlPEY+fHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICggIXRoaXMuX2luc3RhbmNlICkgcmV0dXJuXG4gICAgICAgIFxuICAgICAgICBsZXQgc3RhdGUgPSB0aGlzLnBhZ2VTdGF0ZVNlcnZpY2UuZ2V0UGFnZVN0YXRlKCB0aGlzLl9pbnN0YW5jZSEgKVxuICAgICAgICBpZiAoICFzdGF0ZSApIHJldHVyblxuXG4gICAgICAgIHJldHVybiBKU09OLnBhcnNlKCBzdGF0ZSApXG4gICAgfVxuXG4gICAgcGFnaW5hdGVTdGF0ZSggaWQ6IHN0cmluZyApIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGlkLFxuICAgICAgICAgICAgaXRlbXNQZXJQYWdlOiB0aGlzLl9wYWdlQ29uZmlnLnBhZ2VTaXplLFxuICAgICAgICAgICAgY3VycmVudFBhZ2U6IHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlcixcbiAgICAgICAgICAgIHRvdGFsSXRlbXM6IHRoaXMuX3RvdGFsUm93Q291bnRcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldFBhZ2luZ0luZm9SZXF1ZXN0KCBxdWVyeT86IHN0cmluZyApOiBQYWdpbmdJbmZvUmVxdWVzdCB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBxdWVyeSxcbiAgICAgICAgICAgIHBhZ2VOdW1iZXI6IHRoaXMuX3BhZ2VDb25maWcucGFnZU51bWJlcixcbiAgICAgICAgICAgIHBhZ2VSb3dDb3VudDogIHRoaXMuX3BhZ2VDb25maWcucGFnZVNpemUsXG4gICAgICAgICAgICBzb3J0Q29sdW1uOiB0aGlzLnNvcnRBY3RpdmUsXG4gICAgICAgICAgICBzb3J0RGlyZWN0aW9uOiB0aGlzLnNvcnREaXJlY3Rpb25cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -1394,32 +1394,32 @@ class PaginationBase extends NrclBase {
1394
1394
  // console.log('onFilterChange',ev)
1395
1395
  this.filter = ev;
1396
1396
  this._pageConfig.pageNumber = 1;
1397
- this.onPageStateChanged();
1397
+ return this.onPageStateChanged();
1398
1398
  }
1399
1399
  onSortChange(ev) {
1400
1400
  // console.log('onSortChange',ev)
1401
1401
  if (this._pageConfig.sortActive == ev.active)
1402
1402
  if (this._pageConfig.sortDirection == ev.direction)
1403
- return;
1403
+ return Promise.resolve();
1404
1404
  this._pageConfig.sortActive = ev.active;
1405
1405
  this._pageConfig.sortDirection = ev.direction;
1406
1406
  this._pageConfig.pageNumber = 1;
1407
- this.onPageStateChanged();
1407
+ return this.onPageStateChanged();
1408
1408
  }
1409
1409
  onPageSizeChange(ev) {
1410
1410
  // console.log('onPageSizeChange',ev)
1411
1411
  if (this._pageConfig.pageSize == ev)
1412
- return;
1412
+ return Promise.resolve();
1413
1413
  this._pageConfig.pageSize = ev;
1414
1414
  this._pageConfig.pageNumber = 1;
1415
- this.onPageStateChanged();
1415
+ return this.onPageStateChanged();
1416
1416
  }
1417
1417
  onPageNumberChange(ev) {
1418
1418
  // console.log('onPageNumberChange',ev)
1419
1419
  if (this._pageConfig.pageNumber == ev)
1420
1420
  return;
1421
1421
  this._pageConfig.pageNumber = ev;
1422
- this.onPageStateChanged();
1422
+ return this.onPageStateChanged();
1423
1423
  }
1424
1424
  onPageStateChanged() {
1425
1425
  // console.log('onPageStateChanged')
@@ -2587,7 +2587,7 @@ class ScheduleComponent extends RowListBase {
2587
2587
  this.hover = true;
2588
2588
  this.pagination = true;
2589
2589
  this.heading = true;
2590
- this.loadingMessage = 'Loading schedule.';
2590
+ this.loadingMessage = 'Loading...';
2591
2591
  this._days = [];
2592
2592
  this._weeks = [];
2593
2593
  this._templates = [];